1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
var bufferSize = 4096; // 65536 / 2;
var sampleRate = 44100;
var latency = 1000 * bufferSize / sampleRate;
var audioletReady = false;
var samples = [
'KickDrum0001.wav',
'Clap.wav',
'Closed Hihat0001.wav',
'Open Hihat0001.wav',
'SnareDrum0001.wav',
'Clav.wav',
'Mid Tom0001.wav',
'Rimshot.wav',
];
var dev = audioLib.AudioDevice(function(buffer, ch){
var l = buffer.length / ch,
smpl, i, n;
for (n=0; n<l; n++){
osc.generate();
smpl = osc.getMix()
for (i=0; i<ch; i++){
buffer[n*ch + i] = smpl;
}
}
}, 2),
osc = new audioLib.Oscillator(dev.sampleRate);
window.onmousemove = function(e){
var freq = e.clientY / window.innerHeight * 880,
pw = e.clientX / window.innerWidth;
osc.frequency = freq;
osc.pulseWidth = pw;
};
|