Index: content/renderer/media/audio_input_device.cc |
diff --git a/content/renderer/media/audio_input_device.cc b/content/renderer/media/audio_input_device.cc |
index ce0da67909c755374acfe4540bdaad9ddc862211..80a84150f4f2f3f944e87c1c89b1066e545dce3f 100644 |
--- a/content/renderer/media/audio_input_device.cc |
+++ b/content/renderer/media/audio_input_device.cc |
@@ -13,6 +13,8 @@ |
#include "content/renderer/render_thread_impl.h" |
#include "media/audio/audio_util.h" |
+static const char kDefaultDeviceUId[] = "default"; |
scherkus (not reviewing)
2011/11/16 01:20:40
I don't see this used and it's also confusing with
no longer working on chromium
2011/11/16 17:45:48
Sorry, wrong code by mistake.
|
+ |
AudioInputDevice::AudioInputDevice(size_t buffer_size, |
int channels, |
double sample_rate, |
@@ -126,8 +128,10 @@ void AudioInputDevice::InitializeOnIOThread() { |
// otherwise it will send a AudioInputHostMsg_StartDevice msg to the browser |
// and create the stream when getting a OnDeviceReady() callback. |
if (!session_id_) { |
+ // Pass an empty string to indicate using default device. |
+ std::string default_device_uid = ""; |
Send(new AudioInputHostMsg_CreateStream(stream_id_, audio_parameters_, |
- true)); |
+ true, default_device_uid)); |
} else { |
Send(new AudioInputHostMsg_StartDevice(stream_id_, session_id_)); |
pending_device_ready_ = true; |
@@ -246,27 +250,28 @@ void AudioInputDevice::OnStateChanged(AudioStreamState state) { |
} |
} |
-void AudioInputDevice::OnDeviceReady(int index) { |
+void AudioInputDevice::OnDeviceReady(const std::string& device_uid) { |
DCHECK(MessageLoop::current() == ChildProcess::current()->io_message_loop()); |
- VLOG(1) << "OnDeviceReady (index=" << index << ")"; |
+ VLOG(1) << "OnDeviceReady (device_uid=" << device_uid << ")"; |
// Takes care of the case when Stop() is called before OnDeviceReady(). |
if (!pending_device_ready_) |
return; |
- // -1 means no device has been started. |
- if (index == -1) { |
+ // If AudioInputDeviceManager returns an empty string, it means no device |
+ // is ready for start. |
+ if (device_uid.empty()) { |
filter_->RemoveDelegate(stream_id_); |
stream_id_ = 0; |
} else { |
Send(new AudioInputHostMsg_CreateStream( |
- stream_id_, audio_parameters_, true)); |
+ stream_id_, audio_parameters_, true, device_uid)); |
} |
pending_device_ready_ = false; |
// Notify the client that the device has been started. |
if (event_handler_) |
- event_handler_->OnDeviceStarted(index); |
+ event_handler_->OnDeviceStarted(device_uid); |
} |
void AudioInputDevice::Send(IPC::Message* message) { |