haikuwebkit/LayoutTests/webaudio/audiocontext-baselatency.html

25 lines
731 B
HTML
Raw Permalink Normal View History

baseLatency attribute is missing on AudioContext interface https://bugs.webkit.org/show_bug.cgi?id=215277 Reviewed by Eric Carlson. LayoutTests/imported/w3c: Rebaseline WPT test now that more checks are passing. * web-platform-tests/webaudio/idlharness.https.window-expected.txt: Source/WebCore: baseLatency attribute is missing on AudioContext interface: - https://www.w3.org/TR/webaudio/#dom-audiocontext-baselatency Test: webaudio/audiocontext-baselatency.html * Modules/webaudio/AudioContext.cpp: (WebCore::AudioContext::baseLatency): (WebCore::AudioContext::destination): * Modules/webaudio/AudioContext.h: * Modules/webaudio/AudioContext.idl: * Modules/webaudio/DefaultAudioDestinationNode.cpp: (WebCore::DefaultAudioDestinationNode::framesPerBuffer const): * Modules/webaudio/DefaultAudioDestinationNode.h: * platform/audio/AudioDestination.h: * platform/audio/cocoa/AudioDestinationCocoa.cpp: (WebCore::AudioDestinationCocoa::framesPerBuffer const): * platform/audio/cocoa/AudioDestinationCocoa.h: * platform/audio/gstreamer/AudioDestinationGStreamer.cpp: (WebCore::AudioDestinationGStreamer::framesPerBuffer const): * platform/audio/gstreamer/AudioDestinationGStreamer.h: Source/WebKit: * GPUProcess/media/RemoteAudioDestinationManager.cpp: (WebKit::RemoteAudioDestination::framesPerBuffer const): (WebKit::RemoteAudioDestinationManager::createAudioDestination): * GPUProcess/media/RemoteAudioDestinationManager.h: * GPUProcess/media/RemoteAudioDestinationManager.messages.in: * WebProcess/GPU/media/RemoteAudioDestinationProxy.cpp: (WebKit::RemoteAudioDestinationProxy::RemoteAudioDestinationProxy): * WebProcess/GPU/media/RemoteAudioDestinationProxy.h: LayoutTests: Add layout test coverage. * webaudio/audiocontext-baselatency-expected.txt: Added. * webaudio/audiocontext-baselatency.html: Added. Canonical link: https://commits.webkit.org/228071@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@265393 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-08-07 22:14:46 +00:00
<!DOCTYPE html>
<html>
<body>
<script src="../resources/js-test.js"></script>
<script>
description("Basic testing for AudioContext.baseLatency.");
const renderQuantum = 128.;
function testSampleRate(_expectedSampleRate) {
expectedSampleRate = _expectedSampleRate;
context = new AudioContext({ sampleRate: expectedSampleRate });
shouldBe("context.sampleRate", "expectedSampleRate");
// Check that the baseLatency makes sense with either single or double buffering.
shouldBeTrue("context.baseLatency == (renderQuantum / expectedSampleRate) || context.baseLatency == (2 * (renderQuantum / expectedSampleRate))");
}
testSampleRate(44100);
testSampleRate(64000);
testSampleRate(96000);
</script>
</body>
</html>