-
crogers@google.com authored
https://bugs.webkit.org/show_bug.cgi?id=104188 Reviewed by Kentaro Hara. Source/WebCore: The Web Audio layout tests have relied on an undocumented way (in the specification) to render audio faster than realtime using an OfflineAudioContext. We want to expose a proper OfflineAudioContext object and constructor instead of piggybacking off of the normal AudioContext. * CMakeLists.txt: * DerivedSources.make: * DerivedSources.pri: * GNUmakefile.list.am: * Modules/webaudio/AudioContext.cpp: (WebCore::AudioContext::isSampleRateRangeGood): * Modules/webaudio/AudioContext.h: (AudioContext): * Modules/webaudio/DOMWindowWebAudio.idl: * Modules/webaudio/OfflineAudioContext.cpp: Added. (WebCore): (WebCore::OfflineAudioContext::create): (WebCore::OfflineAudioContext::OfflineAudioContext): (WebCore::OfflineAudioContext::~OfflineAudioContext): * Modules/webaudio/OfflineAudioContext.h: Added. (WebCore): (OfflineAudioContext): * Modules/webaudio/OfflineAudioContext.idl: Added. * WebCore.gypi: * WebCore.xcodeproj/project.pbxproj: * bindings/generic/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::webkitOfflineAudioContextEnabled): * bindings/js/JSAudioContextCustom.cpp: (WebCore::JSAudioContextConstructor::constructJSAudioContext): * bindings/v8/custom/V8AudioContextCustom.cpp: (WebCore::V8AudioContext::constructorCallbackCustom): LayoutTests: Switch Web Audio layout tests to use OfflineAudioContext constructor. * inspector-protocol/nmi-webaudio.html: * inspector-protocol/resources/audio-context.html: * webaudio/audiobuffersource-loop-comprehensive.html: * webaudio/audiobuffersource-loop-points.html: * webaudio/audiobuffersource-multi-channels.html: * webaudio/audiobuffersource-playbackState.html: * webaudio/audiobuffersource-playbackrate.html: * webaudio/audiobuffersource-start.html: * webaudio/audiobuffersource.html: * webaudio/audiochannelmerger-stereo.html: * webaudio/audiochannelsplitter.html: * webaudio/audionode-connect-order.html: * webaudio/audionode-expected.txt: * webaudio/audioparam-connect-audioratesignal.html: * webaudio/audioparam-summingjunction.html: * webaudio/automatic-pull-node.html: * webaudio/biquad-allpass.html: * webaudio/biquad-bandpass.html: * webaudio/biquad-highpass.html: * webaudio/biquad-highshelf.html: * webaudio/biquad-lowpass.html: * webaudio/biquad-lowshelf.html: * webaudio/biquad-notch.html: * webaudio/biquad-peaking.html: * webaudio/convolution-mono-mono.html: * webaudio/delaynode-max-default-delay.html: * webaudio/delaynode-max-nondefault-delay.html: * webaudio/delaynode-maxdelay.html: * webaudio/delaynode-maxdelaylimit.html: * webaudio/delaynode-scheduling.html: * webaudio/delaynode.html: * webaudio/distance-exponential.html: * webaudio/distance-inverse.html: * webaudio/distance-linear.html: * webaudio/gain.html: * webaudio/javascriptaudionode-zero-input-channels.html: * webaudio/javascriptaudionode.html: * webaudio/mediaelementaudiosourcenode-gc.html: * webaudio/mixing.html: * webaudio/note-grain-on-play.html: * webaudio/note-grain-on-timing.html: * webaudio/oscillator-basic.html: * webaudio/panner-equalpower-stereo.html: * webaudio/panner-equalpower.html: * webaudio/realtimeanalyser-fft-sizing.html: * webaudio/resources/audio-codec-test.js: (runDecodingTest): * webaudio/resources/audioparam-testing.js: (createAudioGraphAndTest): * webaudio/resources/javascriptaudionode-testing.js: (runJSNodeTest): * webaudio/sample-accurate-scheduling.html: * webaudio/stereo2mono-down-mixing.html: * webaudio/up-mixing-mono-51.html: * webaudio/up-mixing-mono-stereo.html: * webaudio/up-mixing-stereo-51.html: * webaudio/waveshaper.html: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137516 268f45cc-cd09-0410-ab3c-d52691b4dbfc
24fec26d