summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html')
-rw-r--r--testing/web-platform/tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html36
1 files changed, 36 insertions, 0 deletions
diff --git a/testing/web-platform/tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html b/testing/web-platform/tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html
new file mode 100644
index 0000000000..dabe323cbe
--- /dev/null
+++ b/testing/web-platform/tests/webaudio/the-audio-api/the-audiobuffer-interface/audiobuffer-reuse.html
@@ -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>