Chromium Code Reviews| Index: media/audio/audio_util.cc |
| diff --git a/media/audio/audio_util.cc b/media/audio/audio_util.cc |
| index 6085c831d3c5dc7e6f06a85b28255d6006468222..8cd69dfcb074b310d67764cb6efea9f978ccf11a 100644 |
| --- a/media/audio/audio_util.cc |
| +++ b/media/audio/audio_util.cc |
| @@ -132,9 +132,8 @@ int GetAudioHardwareSampleRate() { |
| // Hardware sample-rate on Windows can be configured, so we must query. |
| // TODO(henrika): improve possibility to specify an audio endpoint. |
| - // Use the default device (same as for Wave) for now to be compatible |
| - // or possibly remove the ERole argument completely until it is in use. |
| - return WASAPIAudioOutputStream::HardwareSampleRate(eConsole); |
| + // Use the default device (same as for Wave) for now to be compatible. |
| + return WASAPIAudioOutputStream::HardwareSampleRate(); |
| #elif defined(OS_ANDROID) |
| return 16000; |
| #else |
| @@ -176,8 +175,12 @@ size_t GetAudioHardwareBufferSize() { |
| #if defined(OS_MACOSX) |
| return 128; |
| #elif defined(OS_WIN) |
| + // TODO(henrika): resolve conflict with GetUserBufferSize(). |
| + // If the user tries to set a buffer size using GetUserBufferSize() it will |
| + // most likely fail since only the native/perfect buffer size is allowed. |
| + |
| // Buffer size to use when a proper size can't be determined from the system. |
| - static const int kFallbackBufferSize = 2048; |
| + static const int kFallbackBufferSize = 4096; |
|
DaleCurtis
2013/02/02 00:19:51
I just changed this to 2048 in https://codereview.
henrika (OOO until Aug 14)
2013/02/04 08:25:38
Cool. I will of course not mess that up. Now using
|
| if (!CoreAudioUtil::IsSupported()) { |
| // Fall back to Windows Wave implementation on Windows XP or lower |
| @@ -193,42 +196,10 @@ size_t GetAudioHardwareBufferSize() { |
| return 256; |
| } |
| - // TODO(henrika): remove when the --enable-webaudio-input flag is no longer |
| - // utilized. |
| - if (cmd_line->HasSwitch(switches::kEnableWebAudioInput)) { |
| - AudioParameters params; |
| - HRESULT hr = CoreAudioUtil::GetPreferredAudioParameters(eRender, eConsole, |
| - ¶ms); |
| - return FAILED(hr) ? kFallbackBufferSize : params.frames_per_buffer(); |
| - } |
| - |
| - // This call must be done on a COM thread configured as MTA. |
| - // TODO(tommi): http://code.google.com/p/chromium/issues/detail?id=103835. |
| - int mixing_sample_rate = |
| - WASAPIAudioOutputStream::HardwareSampleRate(eConsole); |
| - |
| - // Windows will return a sample rate of 0 when no audio output is available |
| - // (i.e. via RemoteDesktop with remote audio disabled), but we should never |
| - // return a buffer size of zero. |
| - if (mixing_sample_rate == 0) |
| - return kFallbackBufferSize; |
| - |
| - // Use different buffer sizes depening on the sample rate . The existing |
| - // WASAPI implementation is tuned to provide the most stable callback |
| - // sequence using these combinations. |
| - if (mixing_sample_rate % 11025 == 0) |
| - // Use buffer size of ~10.15873 ms. |
| - return (112 * (mixing_sample_rate / 11025)); |
| - |
| - if (mixing_sample_rate % 8000 == 0) |
| - // Use buffer size of 10ms. |
| - return (80 * (mixing_sample_rate / 8000)); |
| - |
| - // Ensure we always return a buffer size which is somewhat appropriate. |
| - LOG(ERROR) << "Unknown sample rate " << mixing_sample_rate << " detected."; |
| - if (mixing_sample_rate > limits::kMinSampleRate) |
| - return (mixing_sample_rate / 100); |
| - return kFallbackBufferSize; |
| + AudioParameters params; |
| + HRESULT hr = CoreAudioUtil::GetPreferredAudioParameters(eRender, eConsole, |
| + ¶ms); |
| + return FAILED(hr) ? kFallbackBufferSize : params.frames_per_buffer(); |
| #else |
| return 2048; |
| #endif |