| Index: content/renderer/media/user_media_client_impl.cc
|
| diff --git a/content/renderer/media/user_media_client_impl.cc b/content/renderer/media/user_media_client_impl.cc
|
| index 100cb5368675761e28b8168000a964df5c0f47ee..cb5d7bea7d4721eac62b9bff3df0c7986ece2f9f 100644
|
| --- a/content/renderer/media/user_media_client_impl.cc
|
| +++ b/content/renderer/media/user_media_client_impl.cc
|
| @@ -31,6 +31,7 @@
|
| #include "content/renderer/media/webrtc_logging.h"
|
| #include "content/renderer/media/webrtc_uma_histograms.h"
|
| #include "content/renderer/render_thread_impl.h"
|
| +#include "media/audio/audio_device_description.h"
|
| #include "media/capture/video_capture_types.h"
|
| #include "third_party/WebKit/public/platform/WebMediaConstraints.h"
|
| #include "third_party/WebKit/public/platform/WebMediaDeviceInfo.h"
|
| @@ -85,7 +86,7 @@ bool PickDeviceId(const blink::WebMediaConstraints& constraints,
|
| const MediaDeviceInfoArray& device_infos,
|
| std::string* device_id) {
|
| DCHECK(!constraints.IsNull());
|
| - DCHECK(device_id->empty());
|
| + DCHECK(media::AudioDeviceDescription::IsDefaultDevice(*device_id));
|
|
|
| if (constraints.Basic().device_id.Exact().size() > 1) {
|
| LOG(ERROR) << "Only one required device ID is supported";
|
| @@ -398,6 +399,12 @@ void UserMediaClientImpl::MaybeProcessNextRequestInfo() {
|
| current_request_info_->request().AudioConstraints(),
|
| ¤t_request_info_->stream_controls()->audio,
|
| &request_audio_input_devices);
|
| + // Explicitly initialize the requested device ID to the default.
|
| + if (IsDeviceSource(
|
| + current_request_info_->stream_controls()->audio.stream_source)) {
|
| + current_request_info_->stream_controls()->audio.device_id =
|
| + std::string(media::AudioDeviceDescription::kDefaultDeviceId);
|
| + }
|
| CopyHotwordAndLocalEchoToStreamControls(
|
| current_request_info_->request().AudioConstraints(),
|
| current_request_info_->stream_controls());
|
|
|