Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(319)

Unified Diff: media/base/multi_channel_resampler.h

Issue 14189035: Reduce jitter from uneven SincResampler buffer size requests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Comments. Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/base/fake_audio_render_callback.cc ('k') | media/base/multi_channel_resampler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/base/multi_channel_resampler.h
diff --git a/media/base/multi_channel_resampler.h b/media/base/multi_channel_resampler.h
index 549ddea817f9c6c52455f4ddaca467b9f681de77..88b7ceb54a6e8052f734204083192e355ab1e430 100644
--- a/media/base/multi_channel_resampler.h
+++ b/media/base/multi_channel_resampler.h
@@ -27,13 +27,16 @@ class MEDIA_EXPORT MultiChannelResampler {
// Constructs a MultiChannelResampler with the specified |read_cb|, which is
// used to acquire audio data for resampling. |io_sample_rate_ratio| is the
- // ratio of input / output sample rates.
- MultiChannelResampler(int channels, double io_sample_rate_ratio,
+ // ratio of input / output sample rates. |request_frames| is the size in
+ // frames of the AudioBus to be filled by |read_cb|.
+ MultiChannelResampler(int channels,
+ double io_sample_rate_ratio,
+ size_t request_frames,
const ReadCB& read_cb);
virtual ~MultiChannelResampler();
// Resamples |frames| of data from |read_cb_| into AudioBus.
- void Resample(AudioBus* audio_bus, int frames);
+ void Resample(int frames, AudioBus* audio_bus);
// Flush all buffered data and reset internal indices. Not thread safe, do
// not call while Resample() is in progress.
@@ -47,7 +50,7 @@ class MEDIA_EXPORT MultiChannelResampler {
private:
// SincResampler::ReadCB implementation. ProvideInput() will be called for
// each channel (in channel order) as SincResampler needs more data.
- void ProvideInput(int channel, float* destination, int frames);
+ void ProvideInput(int channel, int frames, float* destination);
// Sanity check to ensure that ProvideInput() retrieves the same number of
// frames for every channel.
« no previous file with comments | « media/base/fake_audio_render_callback.cc ('k') | media/base/multi_channel_resampler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698