blob: 847807f6ed5792d5aca79675002a421659ac732b (
plain)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
var baseurl = "https://y.1bpm.net/csTest";
function csound_ready(Csound) {
$("#loading").hide();
window.Csound = Csound;
}
function handleMessage(message) {
var msgbox = $("#csmessages");
msgbox.val(msgbox.val() + message + "\n");
}
async function make_instance() {
if (!window.csound) {
window.csound = await Csound({useWorker: false, useSAB: false});
}
window.csound.on("message", handleMessage);
return Promise.resolve();
}
async function copyUrlToLocal(url, name) {
const response = await fetch(url);
const bufferSrc = await response.arrayBuffer();
const buffer = new Uint8Array(bufferSrc);
await csound.fs.writeFile(name, buffer);
return Promise.resolve();
}
async function load_files(bug) {
await copyUrlToLocal(baseurl + "/vibe.csd", "vibe.csd");
await copyUrlToLocal(baseurl + "/input.mp3", "input.mp3");
return Promise.resolve();
}
async function play() {
$("#bug_status").text("Loading resources");
await make_instance();
await load_files();
await csound.compileCsd("vibe.csd");
await csound.setOption("-odac");
await csound.setOption("-b2048");
await csound.setOption("-m0");
await csound.setOption("-d");
await csound.setOption("--ksmps=128");
await csound.start();
return Promise.resolve();
}
$(function(){
$("#bug_play").click(async function() {
await play();
});
});
|