Chromium Code Reviews
DescriptionAs titled! AudioOutputResampler is a single stream output resampler which uses
the existing AudioOutputDispatcherImpl to handle the heavy lifting. It intercepts
the AudioSourceCallback provided during OpenStream() and replaces it with a
call to itself.
An AudioFifo object is used to ensure we interface with the renderer and
downstream components using the same buffer size they were configured with.
A MultiChannelResampler object interfaces with a provided callback method
which pulls data from the AudioFifo if available and otherwise retrieves more
data from the client (using the buffer size the client expects).
The pending bytes value is scaled according to the input / output sample rate
and bits per channel values. Outstanding data is tracked between OnMoreData()
calls in order to provide the client with an accurate delay estimate.
Feature is behind the "--enable-audio-output-resampler" for a/b testing. Will be
removed from behind the flag after tuning and functionality can be verified by
the Pepper Flash team.
BUG=147572
TEST=PepperFlash + 192kHz->44kHz, 48kHz->44kHz, 44kHz->96kHz. Manual
testing by various parties.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=155968
Patch Set 1 : First draft! #
Total comments: 31
Patch Set 2 : Comments & Flags! #Patch Set 3 : Unittests! Bugs! #
Total comments: 29
Patch Set 4 : Comments. #
Total comments: 14
Patch Set 5 : Comments! #Patch Set 6 : Rebase. #
Messages
Total messages: 26 (0 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||