Navigation Menu

Skip to content

Commit

Permalink
Add test to check that AudioBuffers can be reused between AudioBuffer…
Browse files Browse the repository at this point in the history
…SourceNodes
  • Loading branch information
ferjm committed Oct 11, 2018
1 parent 091ad49 commit 52d898d
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 0 deletions.
10 changes: 10 additions & 0 deletions tests/wpt/metadata/MANIFEST.json
Expand Up @@ -404385,6 +404385,12 @@
{}
]
],
"webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html": [
[
"/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html",
{}
]
],
"webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer.html": [
[
"/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer.html",
Expand Down Expand Up @@ -663014,6 +663020,10 @@
"612a91cf4ef60f6f1d441d27e2ab86f32b94f0fd",
"testharness"
],
"webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html": [
"dabe323cbe2226d32c63576199eda61c1aecb168",
"testharness"
],
"webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer.html": [
"a2c4581c4e80069f227fe29078bc3eb6409c8b4e",
"testharness"
Expand Down
@@ -0,0 +1,36 @@
<!doctype html>
<meta charset="utf-8">
<title>AudioBuffer can be reused between AudioBufferSourceNodes</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
function render_audio_context() {
let sampleRate = 44100;
let context = new OfflineAudioContext(
2, sampleRate * 0.1, sampleRate);
let buf = context.createBuffer(1, 0.1 * sampleRate, context.sampleRate);
let data = buf.getChannelData(0);
data[0] = 0.5;
data[1] = 0.25;
let b1 = context.createBufferSource();
b1.buffer = buf;
b1.start();
let b2 = context.createBufferSource();
b2.buffer = buf;
b2.start();
let merger = context.createChannelMerger(2);
b1.connect(merger, 0, 0);
b2.connect(merger, 0, 1);
merger.connect(context.destination);
return context.startRendering();
}
promise_test(function() {
return render_audio_context()
.then(function(buffer) {
assert_equals(buffer.getChannelData(0)[0], 0.5);
assert_equals(buffer.getChannelData(1)[0], 0.5);
assert_equals(buffer.getChannelData(0)[1], 0.25);
assert_equals(buffer.getChannelData(1)[1], 0.25);
});
}, "AudioBuffer can be reused between AudioBufferSourceNodes");
</script>

0 comments on commit 52d898d

Please sign in to comment.