first decoding, temp
This commit is contained in:
parent
042fb7d5eb
commit
7a6ebef935
4 changed files with 246 additions and 11 deletions
24
index.html
24
index.html
|
@ -21,14 +21,28 @@
|
|||
var src = new Uint8Array(buffer);
|
||||
var ptr = Module._malloc(buffer.byteLength);
|
||||
var arr = new Uint8Array(Module.HEAPU8.buffer, ptr, buffer.byteLength);
|
||||
var ctx = new AudioContext();
|
||||
var time = 0;
|
||||
arr.set(src, 0);
|
||||
|
||||
var stream = new Module.MadStream();
|
||||
var frame = new Module.MadFrame();
|
||||
var decoder = new Module.Decoder();
|
||||
decoder.addFragment(ptr, buffer.byteLength);
|
||||
|
||||
stream.setBuffer(ptr, buffer.byteLength);
|
||||
frame.decode(stream);
|
||||
debugger;
|
||||
while (decoder.hasMore()) {
|
||||
var audio = decoder.decode(1);
|
||||
if (audio === undefined) {
|
||||
if (decoder.hasMore() === false) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
var source = ctx.createBufferSource();
|
||||
source.buffer = audio;
|
||||
source.connect(ctx.destination);
|
||||
source.start(time);
|
||||
time += audio.duration;
|
||||
}
|
||||
|
||||
decoder.delete();
|
||||
}
|
||||
reader.readAsArrayBuffer(file);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue