Chromium Code Reviews| Index: content/renderer/media/rtc_peer_connection_handler.cc |
| diff --git a/content/renderer/media/rtc_peer_connection_handler.cc b/content/renderer/media/rtc_peer_connection_handler.cc |
| index 08f71c064b371d3c20beba4ae47d339b8d7c67a9..306c6c7ac35ae92690335372dc4f2cbf2ed5c62e 100644 |
| --- a/content/renderer/media/rtc_peer_connection_handler.cc |
| +++ b/content/renderer/media/rtc_peer_connection_handler.cc |
| @@ -15,6 +15,7 @@ |
| #include "base/strings/utf_string_conversions.h" |
| #include "content/public/common/content_switches.h" |
| #include "content/renderer/media/media_stream_dependency_factory.h" |
| +#include "content/renderer/media/media_stream_source_extra_data.h" |
| #include "content/renderer/media/peer_connection_tracker.h" |
| #include "content/renderer/media/remote_media_stream_impl.h" |
| #include "content/renderer/media/rtc_data_channel_handler.h" |
| @@ -549,13 +550,16 @@ bool RTCPeerConnectionHandler::addStream( |
| this, stream, PeerConnectionTracker::SOURCE_LOCAL); |
| // A media stream is connected to a peer connection, enable the |
| - // peer connection mode for the capturer. |
| - WebRtcAudioDeviceImpl* audio_device = |
| - dependency_factory_->GetWebRtcAudioDevice(); |
| - if (audio_device) { |
| - WebRtcAudioCapturer* capturer = audio_device->GetDefaultCapturer(); |
| - if (capturer) |
| - capturer->EnablePeerConnectionMode(); |
| + // peer connection mode for the sources. |
| + blink::WebVector<blink::WebMediaStreamTrack> audio_tracks; |
| + stream.audioTracks(audio_tracks); |
| + for (size_t i = 0; i < audio_tracks.size(); ++i) { |
| + const blink::WebMediaStreamSource& source = audio_tracks[i].source(); |
| + MediaStreamSourceExtraData* extra_data = |
| + static_cast<MediaStreamSourceExtraData*>(source.extraData()); |
| + DCHECK_EQ(source.type(), blink::WebMediaStreamSource::TypeAudio); |
|
perkj_chrome
2014/01/12 21:53:06
no need for dcheck
no longer working on chromium
2014/01/13 16:59:59
Done.
|
| + if (extra_data->GetAudioCapturer()) |
| + extra_data->GetAudioCapturer()->EnablePeerConnectionMode(); |
|
perkj_chrome
2014/01/12 21:53:06
Is EnablePeerConnectionMode() needed?
no longer working on chromium
2014/01/13 16:59:59
Yes. the capturer might be setup for WebAudio, in
|
| } |
| return AddStream(stream, &constraints); |