@pinkpixel/haku 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +147 -2
- package/dist/LICENSE +202 -0
- package/dist/cli.mjs +134 -0
- package/dist/fonts/Figtree-Regular.ttf +0 -0
- package/dist/fonts/Figtree-SemiBold.ttf +0 -0
- package/dist/fonts/OFL.txt +93 -0
- package/dist/mcp-DDuNECfs.mjs +71 -0
- package/dist/node-CVxAljK8.mjs +24 -0
- package/dist/samples/ambience/rain_roof.ogg +0 -0
- package/dist/samples/ambience/rain_window.ogg +0 -0
- package/dist/samples/drums/brush_v0_r1.ogg +0 -0
- package/dist/samples/drums/brush_v0_r2.ogg +0 -0
- package/dist/samples/drums/brush_v1_r1.ogg +0 -0
- package/dist/samples/drums/brush_v1_r2.ogg +0 -0
- package/dist/samples/drums/brushhat_v0_r1.ogg +0 -0
- package/dist/samples/drums/brushhat_v0_r2.ogg +0 -0
- package/dist/samples/drums/brushhat_v1_r1.ogg +0 -0
- package/dist/samples/drums/brushhat_v1_r2.ogg +0 -0
- package/dist/samples/drums/hat_v0_r1.ogg +0 -0
- package/dist/samples/drums/hat_v0_r2.ogg +0 -0
- package/dist/samples/drums/hat_v1_r1.ogg +0 -0
- package/dist/samples/drums/hat_v1_r2.ogg +0 -0
- package/dist/samples/drums/kick_v0_r1.ogg +0 -0
- package/dist/samples/drums/kick_v0_r2.ogg +0 -0
- package/dist/samples/drums/kick_v1_r1.ogg +0 -0
- package/dist/samples/drums/kick_v1_r2.ogg +0 -0
- package/dist/samples/drums/openhat_v0_r1.ogg +0 -0
- package/dist/samples/drums/openhat_v0_r2.ogg +0 -0
- package/dist/samples/drums/openhat_v1_r1.ogg +0 -0
- package/dist/samples/drums/openhat_v1_r2.ogg +0 -0
- package/dist/samples/drums/ride_v0_r1.ogg +0 -0
- package/dist/samples/drums/ride_v0_r2.ogg +0 -0
- package/dist/samples/drums/ride_v1_r1.ogg +0 -0
- package/dist/samples/drums/ride_v1_r2.ogg +0 -0
- package/dist/samples/drums/rim_v0_r1.ogg +0 -0
- package/dist/samples/drums/rim_v0_r2.ogg +0 -0
- package/dist/samples/drums/rim_v1_r1.ogg +0 -0
- package/dist/samples/drums/rim_v1_r2.ogg +0 -0
- package/dist/samples/drums/snare_v0_r1.ogg +0 -0
- package/dist/samples/drums/snare_v0_r2.ogg +0 -0
- package/dist/samples/drums/snare_v1_r1.ogg +0 -0
- package/dist/samples/drums/snare_v1_r2.ogg +0 -0
- package/dist/samples/drums/tom_v0_r1.ogg +0 -0
- package/dist/samples/drums/tom_v0_r2.ogg +0 -0
- package/dist/samples/drums/tom_v1_r1.ogg +0 -0
- package/dist/samples/drums/tom_v1_r2.ogg +0 -0
- package/dist/samples/glock/v0_103.ogg +0 -0
- package/dist/samples/glock/v0_108.ogg +0 -0
- package/dist/samples/glock/v0_79.ogg +0 -0
- package/dist/samples/glock/v0_84.ogg +0 -0
- package/dist/samples/glock/v0_91.ogg +0 -0
- package/dist/samples/glock/v0_96.ogg +0 -0
- package/dist/samples/harp/v0_101.ogg +0 -0
- package/dist/samples/harp/v0_28.ogg +0 -0
- package/dist/samples/harp/v0_31.ogg +0 -0
- package/dist/samples/harp/v0_35.ogg +0 -0
- package/dist/samples/harp/v0_38.ogg +0 -0
- package/dist/samples/harp/v0_41.ogg +0 -0
- package/dist/samples/harp/v0_45.ogg +0 -0
- package/dist/samples/harp/v0_48.ogg +0 -0
- package/dist/samples/harp/v0_52.ogg +0 -0
- package/dist/samples/harp/v0_55.ogg +0 -0
- package/dist/samples/harp/v0_59.ogg +0 -0
- package/dist/samples/harp/v0_62.ogg +0 -0
- package/dist/samples/harp/v0_65.ogg +0 -0
- package/dist/samples/harp/v0_69.ogg +0 -0
- package/dist/samples/harp/v0_72.ogg +0 -0
- package/dist/samples/harp/v0_76.ogg +0 -0
- package/dist/samples/harp/v0_79.ogg +0 -0
- package/dist/samples/harp/v0_83.ogg +0 -0
- package/dist/samples/harp/v0_86.ogg +0 -0
- package/dist/samples/harp/v0_89.ogg +0 -0
- package/dist/samples/harp/v0_93.ogg +0 -0
- package/dist/samples/harp/v0_95.ogg +0 -0
- package/dist/samples/harp/v0_98.ogg +0 -0
- package/dist/samples/manifest.json +368 -0
- package/dist/samples/marimba/v0_41.ogg +0 -0
- package/dist/samples/marimba/v0_48.ogg +0 -0
- package/dist/samples/marimba/v0_55.ogg +0 -0
- package/dist/samples/marimba/v0_59.ogg +0 -0
- package/dist/samples/marimba/v0_65.ogg +0 -0
- package/dist/samples/marimba/v0_72.ogg +0 -0
- package/dist/samples/marimba/v0_79.ogg +0 -0
- package/dist/samples/marimba/v0_83.ogg +0 -0
- package/dist/samples/marimba/v0_89.ogg +0 -0
- package/dist/samples/marimba/v0_96.ogg +0 -0
- package/dist/samples/piano/v0_29.ogg +0 -0
- package/dist/samples/piano/v0_33.ogg +0 -0
- package/dist/samples/piano/v0_37.ogg +0 -0
- package/dist/samples/piano/v0_41.ogg +0 -0
- package/dist/samples/piano/v0_45.ogg +0 -0
- package/dist/samples/piano/v0_49.ogg +0 -0
- package/dist/samples/piano/v0_53.ogg +0 -0
- package/dist/samples/piano/v0_57.ogg +0 -0
- package/dist/samples/piano/v0_61.ogg +0 -0
- package/dist/samples/piano/v0_65.ogg +0 -0
- package/dist/samples/piano/v0_69.ogg +0 -0
- package/dist/samples/piano/v0_73.ogg +0 -0
- package/dist/samples/piano/v0_77.ogg +0 -0
- package/dist/samples/piano/v0_81.ogg +0 -0
- package/dist/samples/piano/v0_85.ogg +0 -0
- package/dist/samples/piano/v0_89.ogg +0 -0
- package/dist/samples/piano/v0_93.ogg +0 -0
- package/dist/samples/piano/v0_97.ogg +0 -0
- package/dist/samples/piano/v1_29.ogg +0 -0
- package/dist/samples/piano/v1_33.ogg +0 -0
- package/dist/samples/piano/v1_37.ogg +0 -0
- package/dist/samples/piano/v1_41.ogg +0 -0
- package/dist/samples/piano/v1_45.ogg +0 -0
- package/dist/samples/piano/v1_49.ogg +0 -0
- package/dist/samples/piano/v1_53.ogg +0 -0
- package/dist/samples/piano/v1_57.ogg +0 -0
- package/dist/samples/piano/v1_61.ogg +0 -0
- package/dist/samples/piano/v1_65.ogg +0 -0
- package/dist/samples/piano/v1_69.ogg +0 -0
- package/dist/samples/piano/v1_73.ogg +0 -0
- package/dist/samples/piano/v1_77.ogg +0 -0
- package/dist/samples/piano/v1_81.ogg +0 -0
- package/dist/samples/piano/v1_85.ogg +0 -0
- package/dist/samples/piano/v1_89.ogg +0 -0
- package/dist/samples/piano/v1_93.ogg +0 -0
- package/dist/samples/piano/v1_97.ogg +0 -0
- package/dist/samples/wurli/v0_33.ogg +0 -0
- package/dist/samples/wurli/v0_40.ogg +0 -0
- package/dist/samples/wurli/v0_45.ogg +0 -0
- package/dist/samples/wurli/v0_51.ogg +0 -0
- package/dist/samples/wurli/v0_56.ogg +0 -0
- package/dist/samples/wurli/v0_61.ogg +0 -0
- package/dist/samples/wurli/v0_66.ogg +0 -0
- package/dist/samples/wurli/v0_71.ogg +0 -0
- package/dist/samples/wurli/v0_73.ogg +0 -0
- package/dist/samples/wurli/v0_79.ogg +0 -0
- package/dist/samples/wurli/v0_85.ogg +0 -0
- package/dist/samples/wurli/v0_92.ogg +0 -0
- package/dist/samples/wurli/v1_33.ogg +0 -0
- package/dist/samples/wurli/v1_36.ogg +0 -0
- package/dist/samples/wurli/v1_41.ogg +0 -0
- package/dist/samples/wurli/v1_47.ogg +0 -0
- package/dist/samples/wurli/v1_52.ogg +0 -0
- package/dist/samples/wurli/v1_56.ogg +0 -0
- package/dist/samples/wurli/v1_61.ogg +0 -0
- package/dist/samples/wurli/v1_68.ogg +0 -0
- package/dist/samples/wurli/v1_73.ogg +0 -0
- package/dist/samples/wurli/v1_79.ogg +0 -0
- package/dist/samples/wurli/v1_85.ogg +0 -0
- package/dist/samples/wurli/v1_92.ogg +0 -0
- package/dist/src-D5fW7AC1.mjs +2313 -0
- package/dist/src-JrRbTOJC.mjs +701 -0
- package/dist/version-DoZ2etXG.mjs +1742 -0
- package/package.json +59 -3
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import * as nwa from "node-web-audio-api";
|
|
4
|
+
// ../../packages/audio/src/node.ts
|
|
5
|
+
/** Puts the Web Audio classes Tone needs on globalThis. Leaves out AudioContext on purpose. */
|
|
6
|
+
function setupNodeAudio() {
|
|
7
|
+
const g = globalThis;
|
|
8
|
+
for (const [k, v] of Object.entries(nwa)) if (k !== "AudioContext" && !(k in g)) g[k] = v;
|
|
9
|
+
g.window ??= globalThis;
|
|
10
|
+
g.TONE_SILENCE_LOGGING = true;
|
|
11
|
+
}
|
|
12
|
+
async function readManifest(dir) {
|
|
13
|
+
return JSON.parse(await readFile(join(dir, "manifest.json"), "utf8"));
|
|
14
|
+
}
|
|
15
|
+
/** Decodes sample files from a directory. Node's fetch can't read file:// URLs, so this reads them directly. */
|
|
16
|
+
function nodeDecoder(dir) {
|
|
17
|
+
const ctx = new nwa.OfflineAudioContext(2, 1, 44100);
|
|
18
|
+
return async (path) => {
|
|
19
|
+
const bytes = await readFile(join(dir, path));
|
|
20
|
+
const ab = bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
|
|
21
|
+
return await ctx.decodeAudioData(ab);
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export { nodeDecoder, readManifest, setupNodeAudio };
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,368 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"instruments": {
|
|
4
|
+
"piano": {
|
|
5
|
+
"credit": {
|
|
6
|
+
"name": "Upright Piano (VSCO 2 CE)",
|
|
7
|
+
"author": "Simon Dalzell of Ivy Audio, via Versilian Studios",
|
|
8
|
+
"license": "CC0-1.0",
|
|
9
|
+
"url": "https://github.com/sgossner/VSCO-2-CE"
|
|
10
|
+
},
|
|
11
|
+
"release": 1.2,
|
|
12
|
+
"layers": [
|
|
13
|
+
{
|
|
14
|
+
"maxVelocity": 0.55,
|
|
15
|
+
"zones": {
|
|
16
|
+
"29": "piano/v0_29.ogg",
|
|
17
|
+
"33": "piano/v0_33.ogg",
|
|
18
|
+
"37": "piano/v0_37.ogg",
|
|
19
|
+
"41": "piano/v0_41.ogg",
|
|
20
|
+
"45": "piano/v0_45.ogg",
|
|
21
|
+
"49": "piano/v0_49.ogg",
|
|
22
|
+
"53": "piano/v0_53.ogg",
|
|
23
|
+
"57": "piano/v0_57.ogg",
|
|
24
|
+
"61": "piano/v0_61.ogg",
|
|
25
|
+
"65": "piano/v0_65.ogg",
|
|
26
|
+
"69": "piano/v0_69.ogg",
|
|
27
|
+
"73": "piano/v0_73.ogg",
|
|
28
|
+
"77": "piano/v0_77.ogg",
|
|
29
|
+
"81": "piano/v0_81.ogg",
|
|
30
|
+
"85": "piano/v0_85.ogg",
|
|
31
|
+
"89": "piano/v0_89.ogg",
|
|
32
|
+
"93": "piano/v0_93.ogg",
|
|
33
|
+
"97": "piano/v0_97.ogg"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"maxVelocity": 1,
|
|
38
|
+
"zones": {
|
|
39
|
+
"29": "piano/v1_29.ogg",
|
|
40
|
+
"33": "piano/v1_33.ogg",
|
|
41
|
+
"37": "piano/v1_37.ogg",
|
|
42
|
+
"41": "piano/v1_41.ogg",
|
|
43
|
+
"45": "piano/v1_45.ogg",
|
|
44
|
+
"49": "piano/v1_49.ogg",
|
|
45
|
+
"53": "piano/v1_53.ogg",
|
|
46
|
+
"57": "piano/v1_57.ogg",
|
|
47
|
+
"61": "piano/v1_61.ogg",
|
|
48
|
+
"65": "piano/v1_65.ogg",
|
|
49
|
+
"69": "piano/v1_69.ogg",
|
|
50
|
+
"73": "piano/v1_73.ogg",
|
|
51
|
+
"77": "piano/v1_77.ogg",
|
|
52
|
+
"81": "piano/v1_81.ogg",
|
|
53
|
+
"85": "piano/v1_85.ogg",
|
|
54
|
+
"89": "piano/v1_89.ogg",
|
|
55
|
+
"93": "piano/v1_93.ogg",
|
|
56
|
+
"97": "piano/v1_97.ogg"
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
"wurli": {
|
|
62
|
+
"credit": {
|
|
63
|
+
"name": "Wurlitzer EP200",
|
|
64
|
+
"author": "Greg Sullivan, sfz mapping by kinwie",
|
|
65
|
+
"license": "CC-BY-3.0",
|
|
66
|
+
"url": "https://github.com/sfzinstruments/GregSullivan.E-Pianos"
|
|
67
|
+
},
|
|
68
|
+
"release": 0.6,
|
|
69
|
+
"layers": [
|
|
70
|
+
{
|
|
71
|
+
"maxVelocity": 0.6,
|
|
72
|
+
"zones": {
|
|
73
|
+
"33": "wurli/v0_33.ogg",
|
|
74
|
+
"40": "wurli/v0_40.ogg",
|
|
75
|
+
"45": "wurli/v0_45.ogg",
|
|
76
|
+
"51": "wurli/v0_51.ogg",
|
|
77
|
+
"56": "wurli/v0_56.ogg",
|
|
78
|
+
"61": "wurli/v0_61.ogg",
|
|
79
|
+
"66": "wurli/v0_66.ogg",
|
|
80
|
+
"71": "wurli/v0_71.ogg",
|
|
81
|
+
"73": "wurli/v0_73.ogg",
|
|
82
|
+
"79": "wurli/v0_79.ogg",
|
|
83
|
+
"85": "wurli/v0_85.ogg",
|
|
84
|
+
"92": "wurli/v0_92.ogg"
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"maxVelocity": 1,
|
|
89
|
+
"zones": {
|
|
90
|
+
"33": "wurli/v1_33.ogg",
|
|
91
|
+
"36": "wurli/v1_36.ogg",
|
|
92
|
+
"41": "wurli/v1_41.ogg",
|
|
93
|
+
"47": "wurli/v1_47.ogg",
|
|
94
|
+
"52": "wurli/v1_52.ogg",
|
|
95
|
+
"56": "wurli/v1_56.ogg",
|
|
96
|
+
"61": "wurli/v1_61.ogg",
|
|
97
|
+
"68": "wurli/v1_68.ogg",
|
|
98
|
+
"73": "wurli/v1_73.ogg",
|
|
99
|
+
"79": "wurli/v1_79.ogg",
|
|
100
|
+
"85": "wurli/v1_85.ogg",
|
|
101
|
+
"92": "wurli/v1_92.ogg"
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
]
|
|
105
|
+
},
|
|
106
|
+
"glock": {
|
|
107
|
+
"credit": {
|
|
108
|
+
"name": "Glockenspiel (VSCO 2 CE)",
|
|
109
|
+
"author": "Versilian Studios",
|
|
110
|
+
"license": "CC0-1.0",
|
|
111
|
+
"url": "https://github.com/sgossner/VSCO-2-CE"
|
|
112
|
+
},
|
|
113
|
+
"release": 1.5,
|
|
114
|
+
"layers": [
|
|
115
|
+
{
|
|
116
|
+
"maxVelocity": 1,
|
|
117
|
+
"zones": {
|
|
118
|
+
"79": "glock/v0_79.ogg",
|
|
119
|
+
"84": "glock/v0_84.ogg",
|
|
120
|
+
"91": "glock/v0_91.ogg",
|
|
121
|
+
"96": "glock/v0_96.ogg",
|
|
122
|
+
"103": "glock/v0_103.ogg",
|
|
123
|
+
"108": "glock/v0_108.ogg"
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
"marimba": {
|
|
129
|
+
"credit": {
|
|
130
|
+
"name": "Marimba (VSCO 2 CE)",
|
|
131
|
+
"author": "Versilian Studios",
|
|
132
|
+
"license": "CC0-1.0",
|
|
133
|
+
"url": "https://github.com/sgossner/VSCO-2-CE"
|
|
134
|
+
},
|
|
135
|
+
"release": 0.8,
|
|
136
|
+
"layers": [
|
|
137
|
+
{
|
|
138
|
+
"maxVelocity": 1,
|
|
139
|
+
"zones": {
|
|
140
|
+
"41": "marimba/v0_41.ogg",
|
|
141
|
+
"48": "marimba/v0_48.ogg",
|
|
142
|
+
"55": "marimba/v0_55.ogg",
|
|
143
|
+
"59": "marimba/v0_59.ogg",
|
|
144
|
+
"65": "marimba/v0_65.ogg",
|
|
145
|
+
"72": "marimba/v0_72.ogg",
|
|
146
|
+
"79": "marimba/v0_79.ogg",
|
|
147
|
+
"83": "marimba/v0_83.ogg",
|
|
148
|
+
"89": "marimba/v0_89.ogg",
|
|
149
|
+
"96": "marimba/v0_96.ogg"
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
]
|
|
153
|
+
},
|
|
154
|
+
"harp": {
|
|
155
|
+
"credit": {
|
|
156
|
+
"name": "Harp (VSCO 2 CE)",
|
|
157
|
+
"author": "Versilian Studios",
|
|
158
|
+
"license": "CC0-1.0",
|
|
159
|
+
"url": "https://github.com/sgossner/VSCO-2-CE"
|
|
160
|
+
},
|
|
161
|
+
"release": 1.5,
|
|
162
|
+
"layers": [
|
|
163
|
+
{
|
|
164
|
+
"maxVelocity": 1,
|
|
165
|
+
"zones": {
|
|
166
|
+
"28": "harp/v0_28.ogg",
|
|
167
|
+
"31": "harp/v0_31.ogg",
|
|
168
|
+
"35": "harp/v0_35.ogg",
|
|
169
|
+
"38": "harp/v0_38.ogg",
|
|
170
|
+
"41": "harp/v0_41.ogg",
|
|
171
|
+
"45": "harp/v0_45.ogg",
|
|
172
|
+
"48": "harp/v0_48.ogg",
|
|
173
|
+
"52": "harp/v0_52.ogg",
|
|
174
|
+
"55": "harp/v0_55.ogg",
|
|
175
|
+
"59": "harp/v0_59.ogg",
|
|
176
|
+
"62": "harp/v0_62.ogg",
|
|
177
|
+
"65": "harp/v0_65.ogg",
|
|
178
|
+
"69": "harp/v0_69.ogg",
|
|
179
|
+
"72": "harp/v0_72.ogg",
|
|
180
|
+
"76": "harp/v0_76.ogg",
|
|
181
|
+
"79": "harp/v0_79.ogg",
|
|
182
|
+
"83": "harp/v0_83.ogg",
|
|
183
|
+
"86": "harp/v0_86.ogg",
|
|
184
|
+
"89": "harp/v0_89.ogg",
|
|
185
|
+
"93": "harp/v0_93.ogg",
|
|
186
|
+
"95": "harp/v0_95.ogg",
|
|
187
|
+
"98": "harp/v0_98.ogg",
|
|
188
|
+
"101": "harp/v0_101.ogg"
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
]
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
"drums": {
|
|
195
|
+
"credit": {
|
|
196
|
+
"name": "Big Rusty Drums",
|
|
197
|
+
"author": "Karoryfer Samples",
|
|
198
|
+
"license": "CC0-1.0",
|
|
199
|
+
"url": "https://github.com/sfzinstruments/karoryfer.big-rusty-drums"
|
|
200
|
+
},
|
|
201
|
+
"pieces": {
|
|
202
|
+
"kick": [
|
|
203
|
+
{
|
|
204
|
+
"maxVelocity": 0.6,
|
|
205
|
+
"files": [
|
|
206
|
+
"drums/kick_v0_r1.ogg",
|
|
207
|
+
"drums/kick_v0_r2.ogg"
|
|
208
|
+
]
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"maxVelocity": 1,
|
|
212
|
+
"files": [
|
|
213
|
+
"drums/kick_v1_r1.ogg",
|
|
214
|
+
"drums/kick_v1_r2.ogg"
|
|
215
|
+
]
|
|
216
|
+
}
|
|
217
|
+
],
|
|
218
|
+
"snare": [
|
|
219
|
+
{
|
|
220
|
+
"maxVelocity": 0.6,
|
|
221
|
+
"files": [
|
|
222
|
+
"drums/snare_v0_r1.ogg",
|
|
223
|
+
"drums/snare_v0_r2.ogg"
|
|
224
|
+
]
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"maxVelocity": 1,
|
|
228
|
+
"files": [
|
|
229
|
+
"drums/snare_v1_r1.ogg",
|
|
230
|
+
"drums/snare_v1_r2.ogg"
|
|
231
|
+
]
|
|
232
|
+
}
|
|
233
|
+
],
|
|
234
|
+
"brush": [
|
|
235
|
+
{
|
|
236
|
+
"maxVelocity": 0.6,
|
|
237
|
+
"files": [
|
|
238
|
+
"drums/brush_v0_r1.ogg",
|
|
239
|
+
"drums/brush_v0_r2.ogg"
|
|
240
|
+
]
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"maxVelocity": 1,
|
|
244
|
+
"files": [
|
|
245
|
+
"drums/brush_v1_r1.ogg",
|
|
246
|
+
"drums/brush_v1_r2.ogg"
|
|
247
|
+
]
|
|
248
|
+
}
|
|
249
|
+
],
|
|
250
|
+
"rim": [
|
|
251
|
+
{
|
|
252
|
+
"maxVelocity": 0.6,
|
|
253
|
+
"files": [
|
|
254
|
+
"drums/rim_v0_r1.ogg",
|
|
255
|
+
"drums/rim_v0_r2.ogg"
|
|
256
|
+
]
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
"maxVelocity": 1,
|
|
260
|
+
"files": [
|
|
261
|
+
"drums/rim_v1_r1.ogg",
|
|
262
|
+
"drums/rim_v1_r2.ogg"
|
|
263
|
+
]
|
|
264
|
+
}
|
|
265
|
+
],
|
|
266
|
+
"hat": [
|
|
267
|
+
{
|
|
268
|
+
"maxVelocity": 0.6,
|
|
269
|
+
"files": [
|
|
270
|
+
"drums/hat_v0_r1.ogg",
|
|
271
|
+
"drums/hat_v0_r2.ogg"
|
|
272
|
+
]
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
"maxVelocity": 1,
|
|
276
|
+
"files": [
|
|
277
|
+
"drums/hat_v1_r1.ogg",
|
|
278
|
+
"drums/hat_v1_r2.ogg"
|
|
279
|
+
]
|
|
280
|
+
}
|
|
281
|
+
],
|
|
282
|
+
"brushhat": [
|
|
283
|
+
{
|
|
284
|
+
"maxVelocity": 0.6,
|
|
285
|
+
"files": [
|
|
286
|
+
"drums/brushhat_v0_r1.ogg",
|
|
287
|
+
"drums/brushhat_v0_r2.ogg"
|
|
288
|
+
]
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
"maxVelocity": 1,
|
|
292
|
+
"files": [
|
|
293
|
+
"drums/brushhat_v1_r1.ogg",
|
|
294
|
+
"drums/brushhat_v1_r2.ogg"
|
|
295
|
+
]
|
|
296
|
+
}
|
|
297
|
+
],
|
|
298
|
+
"openhat": [
|
|
299
|
+
{
|
|
300
|
+
"maxVelocity": 0.6,
|
|
301
|
+
"files": [
|
|
302
|
+
"drums/openhat_v0_r1.ogg",
|
|
303
|
+
"drums/openhat_v0_r2.ogg"
|
|
304
|
+
]
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"maxVelocity": 1,
|
|
308
|
+
"files": [
|
|
309
|
+
"drums/openhat_v1_r1.ogg",
|
|
310
|
+
"drums/openhat_v1_r2.ogg"
|
|
311
|
+
]
|
|
312
|
+
}
|
|
313
|
+
],
|
|
314
|
+
"ride": [
|
|
315
|
+
{
|
|
316
|
+
"maxVelocity": 0.6,
|
|
317
|
+
"files": [
|
|
318
|
+
"drums/ride_v0_r1.ogg",
|
|
319
|
+
"drums/ride_v0_r2.ogg"
|
|
320
|
+
]
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
"maxVelocity": 1,
|
|
324
|
+
"files": [
|
|
325
|
+
"drums/ride_v1_r1.ogg",
|
|
326
|
+
"drums/ride_v1_r2.ogg"
|
|
327
|
+
]
|
|
328
|
+
}
|
|
329
|
+
],
|
|
330
|
+
"tom": [
|
|
331
|
+
{
|
|
332
|
+
"maxVelocity": 0.6,
|
|
333
|
+
"files": [
|
|
334
|
+
"drums/tom_v0_r1.ogg",
|
|
335
|
+
"drums/tom_v0_r2.ogg"
|
|
336
|
+
]
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
"maxVelocity": 1,
|
|
340
|
+
"files": [
|
|
341
|
+
"drums/tom_v1_r1.ogg",
|
|
342
|
+
"drums/tom_v1_r2.ogg"
|
|
343
|
+
]
|
|
344
|
+
}
|
|
345
|
+
]
|
|
346
|
+
}
|
|
347
|
+
},
|
|
348
|
+
"ambience": {
|
|
349
|
+
"rain_roof": {
|
|
350
|
+
"file": "ambience/rain_roof.ogg",
|
|
351
|
+
"credit": {
|
|
352
|
+
"name": "Soft rain on roof window",
|
|
353
|
+
"author": "Metadex",
|
|
354
|
+
"license": "CC0-1.0",
|
|
355
|
+
"url": "https://freesound.org/people/Metadex/sounds/235827/"
|
|
356
|
+
}
|
|
357
|
+
},
|
|
358
|
+
"rain_window": {
|
|
359
|
+
"file": "ambience/rain_window.ogg",
|
|
360
|
+
"credit": {
|
|
361
|
+
"name": "January rain on a window",
|
|
362
|
+
"author": "mmorgaine",
|
|
363
|
+
"license": "CC0-1.0",
|
|
364
|
+
"url": "https://freesound.org/people/mmorgaine/sounds/333510/"
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|