diff options
author | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-11 03:07:19 +0000 |
---|---|---|
committer | sergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-11 03:07:19 +0000 |
commit | 9ade381f46175dead00a1cc9ffc3328230e8c982 (patch) | |
tree | 64c6caf04643408b2e25bce192f03c9b7b93eaa2 /media/audio/win/audio_manager_win.cc | |
parent | adc19c0eeac9f3caaae4e35bd64e79e6b6e72a0f (diff) | |
download | chromium_src-9ade381f46175dead00a1cc9ffc3328230e8c982.zip chromium_src-9ade381f46175dead00a1cc9ffc3328230e8c982.tar.gz chromium_src-9ade381f46175dead00a1cc9ffc3328230e8c982.tar.bz2 |
Simplified AudioOutputStream interface.
1. Removed packet_size parameter from Open().
2. Removed OnClose() from the callback. Now the callback is guaranteed to be called only between Start() and Stop().
3. Added samples_per_packet in the AudioParameters struct.
BUG=39825
TEST=Unittests
Review URL: http://codereview.chromium.org/4661001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65766 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/audio/win/audio_manager_win.cc')
-rw-r--r-- | media/audio/win/audio_manager_win.cc | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/media/audio/win/audio_manager_win.cc b/media/audio/win/audio_manager_win.cc index 3d5c137..a2fbd92 100644 --- a/media/audio/win/audio_manager_win.cc +++ b/media/audio/win/audio_manager_win.cc @@ -23,7 +23,6 @@ namespace { const int kWinMaxChannels = 8; const int kWinMaxInputChannels = 2; -const int kMaxSamplesPerPacket = media::Limits::kMaxSampleRate; // We use 3 buffers for recording audio so that if a recording callback takes // some time to return we won't lose audio. More buffers while recording are // ok because they don't introduce any delay in recording, unlike in playback @@ -51,7 +50,7 @@ AudioOutputStream* AudioManagerWin::MakeAudioOutputStream( return NULL; if (params.format == AudioParameters::AUDIO_MOCK) { - return FakeAudioOutputStream::MakeFakeStream(); + return FakeAudioOutputStream::MakeFakeStream(params); } else if (params.format == AudioParameters::AUDIO_PCM_LINEAR) { return new PCMWaveOutAudioOutputStream(this, params, 3, WAVE_MAPPER); } else if (params.format == AudioParameters::AUDIO_PCM_LOW_LATENCY) { @@ -63,16 +62,15 @@ AudioOutputStream* AudioManagerWin::MakeAudioOutputStream( // Factory for the implementations of AudioInputStream. AudioInputStream* AudioManagerWin::MakeAudioInputStream( - AudioParameters params, int samples_per_packet) { - if (!params.IsValid() || (params.channels > kWinMaxInputChannels) || - (samples_per_packet > kMaxSamplesPerPacket) || (samples_per_packet < 0)) + AudioParameters params) { + if (!params.IsValid() || (params.channels > kWinMaxInputChannels)) return NULL; if (params.format == AudioParameters::AUDIO_MOCK) { - return FakeAudioInputStream::MakeFakeStream(params, samples_per_packet); + return FakeAudioInputStream::MakeFakeStream(params); } else if (params.format == AudioParameters::AUDIO_PCM_LINEAR) { return new PCMWaveInAudioInputStream(this, params, kNumInputBuffers, - samples_per_packet, WAVE_MAPPER); + WAVE_MAPPER); } return NULL; } |