| Index: third_party/WebKit/LayoutTests/webaudio/audiobuffersource-loop-grain-no-duration.html
|
| diff --git a/third_party/WebKit/LayoutTests/webaudio/audiobuffersource-loop-grain-no-duration.html b/third_party/WebKit/LayoutTests/webaudio/audiobuffersource-loop-grain-no-duration.html
|
| deleted file mode 100644
|
| index 2cde4dcee508326e9e112b33412376b4370430a2..0000000000000000000000000000000000000000
|
| --- a/third_party/WebKit/LayoutTests/webaudio/audiobuffersource-loop-grain-no-duration.html
|
| +++ /dev/null
|
| @@ -1,116 +0,0 @@
|
| -<!DOCTYPE html>
|
| -<html>
|
| -
|
| -<head>
|
| - <title>Test AudioBufferSourceNode looping without explicit duration</title>
|
| - <script src="../resources/js-test.js"></script>
|
| - <script src="resources/compatibility.js"></script>
|
| - <script src="resources/audit-util.js"></script>
|
| - <script src="resources/audio-testing.js"></script>
|
| -</head>
|
| -
|
| -<body>
|
| - <script>
|
| - description("Test AudioBufferSourceNode looping without explicit duration");
|
| - window.jsTestIsAsync = true;
|
| -
|
| - // Reasonably low sample rate for the optimum test speed.
|
| - var sampleRate = 4096;
|
| -
|
| - var audit = Audit.createTaskRunner();
|
| -
|
| - // Task: create a short linear ramp and enable looping. The test will
|
| - // verify that the ramp was looped the appropriate number of times.
|
| - audit.defineTask('loop-count', function (done) {
|
| - // How many loops of the source we want to render. Any whole number
|
| - // greater than 1 will work.
|
| - var loopCount = 4;
|
| - var sourceFrames = 8;
|
| - var renderFrames = sourceFrames * loopCount;
|
| -
|
| - var context = new OfflineAudioContext(1, renderFrames, sampleRate);
|
| - var source = context.createBufferSource();
|
| - var linearRampBuffer = createLinearRampBuffer(context, sourceFrames);
|
| -
|
| - source.buffer = linearRampBuffer;
|
| - source.connect(context.destination);
|
| -
|
| - // Enable looping and start the source with an offset, but without a
|
| - // duration. In this case, the source should loop "forever".
|
| - // See crbug.com/457009.
|
| - source.loop = true;
|
| - source.start(0, 0);
|
| -
|
| - context.startRendering().then(function (renderedBuffer) {
|
| - var badIndex = -1;
|
| - var success = true;
|
| -
|
| - var actual = renderedBuffer.getChannelData(0);
|
| - var linearRamp = linearRampBuffer.getChannelData(0);
|
| -
|
| - // Manually create a |loopCount| copies of linear ramps.
|
| - var expected = new Float32Array(linearRamp.length * loopCount);
|
| - for (var i = 0; i < loopCount; i++)
|
| - expected.set(linearRamp, linearRamp.length * i);
|
| -
|
| - // The actual output should match the created loop.
|
| - Should('The output of actual and expected loops', actual)
|
| - .beEqualToArray(expected);
|
| - }).then(done);
|
| - });
|
| -
|
| - // Task: Test that looping an AudioBufferSource works correctly if the
|
| - // source is started and the buffer is assigned later, but before the source
|
| - // would start.
|
| - audit.defineTask('delayed-start', function (done) {
|
| - var renderDuration = 2;
|
| - var context = new OfflineAudioContext(2, sampleRate * renderDuration, sampleRate);
|
| - var linearRampBuffer = createLinearRampBuffer(context, 128);
|
| -
|
| - var normal = context.createBufferSource();
|
| - var delayed = context.createBufferSource();
|
| - var merger = context.createChannelMerger(2);
|
| -
|
| - // Connect the normally started source to the left channel, and the
|
| - // delayed to the right channel.
|
| - normal.connect(merger, 0, 0);
|
| - delayed.connect(merger, 0, 1);
|
| - merger.connect(context.destination);
|
| -
|
| - normal.buffer = linearRampBuffer;
|
| - normal.loop = true;
|
| - delayed.loop = true;
|
| -
|
| - normal.start(1, 0);
|
| - delayed.start(1, 0);
|
| -
|
| - // Assign the buffer to the delayed source node at 0.5 second.
|
| - context.suspend(0.5).then(function () {
|
| - delayed.buffer = linearRampBuffer;
|
| - context.resume();
|
| - });
|
| -
|
| - context.startRendering().then(function (buffer) {
|
| - // The left and right channel must match regardless of the timing
|
| - // of buffer assignment.
|
| - Should('The content of the left and right channel',
|
| - buffer.getChannelData(0)).beEqualToArray(buffer.getChannelData(1));
|
| - }).then(done);
|
| - });
|
| -
|
| - audit.defineTask('finish', function (done) {
|
| - finishJSTest();
|
| - done();
|
| - });
|
| -
|
| - audit.runTasks(
|
| - 'loop-count',
|
| - 'delayed-start',
|
| - 'finish'
|
| - );
|
| -
|
| - successfullyParsed = true;
|
| - </script>
|
| -</body>
|
| -
|
| -</html>
|
|
|