Chromium Code Reviews| Index: content/browser/renderer_host/media/audio_input_renderer_host.cc |
| diff --git a/content/browser/renderer_host/media/audio_input_renderer_host.cc b/content/browser/renderer_host/media/audio_input_renderer_host.cc |
| index ca5d0683d209a56a187430639fc1a85b811f2fd4..8529064649f53b7e48e6e001cbcfb4148dd7bab7 100644 |
| --- a/content/browser/renderer_host/media/audio_input_renderer_host.cc |
| +++ b/content/browser/renderer_host/media/audio_input_renderer_host.cc |
| @@ -182,9 +182,20 @@ void AudioInputRendererHost::DoHandleError( |
| media::AudioInputController* controller, |
| media::AudioInputController::ErrorCode error_code) { |
| DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| + // Log all errors even it is ignored later. |
| MediaStreamManager::SendMessageToNativeLog( |
| base::StringPrintf("AudioInputController error: %d", error_code)); |
| + // This is a fix for crbug.com/357501. The error can be triggered when closing |
| + // the lid on Macs, which causes more problems than it fixes. |
| + // Also, in crbug.com/357569, the goal is to remove usage of the error since |
| + // it was added to solve a crash on Windows that no longer can be reproduced. |
| + if (error_code == media::AudioInputController::NO_DATA_ERROR) { |
| + DVLOG(1) << "AudioInputRendererHost@" << this << "::DoHandleError: " |
| + << "NO_DATA_ERROR ignored."; |
| + return; |
| + } |
| + |
| AudioEntry* entry = LookupByController(controller); |
| if (!entry) |
| return; |
| @@ -237,6 +248,7 @@ void AudioInputRendererHost::OnCreateStream( |
| } |
| // Check if we have the permission to open the device and which device to use. |
| + std::string device_name; |
|
tommi (sloooow) - chröme
2014/04/10 09:07:22
nit: Use the AudioDeviceName type instead?
jiayl
2014/04/10 16:46:34
Done.
|
| std::string device_id = media::AudioManagerBase::kDefaultDeviceId; |
| if (audio_params.format() != media::AudioParameters::AUDIO_FAKE) { |
| const StreamDeviceInfo* info = media_stream_manager_-> |
| @@ -249,6 +261,7 @@ void AudioInputRendererHost::OnCreateStream( |
| } |
| device_id = info->device.id; |
| + device_name = info->device.name; |
| } |
| // Create a new AudioEntry structure. |
| @@ -321,7 +334,8 @@ void AudioInputRendererHost::OnCreateStream( |
| audio_entries_.insert(std::make_pair(stream_id, entry.release())); |
| MediaStreamManager::SendMessageToNativeLog( |
| - "Audio input stream created successfully."); |
| + "Audio input stream created successfully. Device name: " + device_name + |
| + ", device id: " + device_id); |
|
tommi (sloooow) - chröme
2014/04/10 09:07:22
Afaik we have actually stayed away from writing th
jiayl
2014/04/10 16:46:34
Good point. Removed device_id.
|
| audio_log_->OnCreated(stream_id, audio_params, device_id); |
| } |