diff options
author | tommi <tommi@chromium.org> | 2015-12-11 19:43:50 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-12-12 03:45:00 +0000 |
commit | 30b55651cf9500b1ed8917e4d040513559ad3e83 (patch) | |
tree | 20a2398c7edc4504cbdfbe7ca90394d9e7b08a9d /content/public/renderer | |
parent | 0dee20c6ca4156722669bcfd837462eb5e0fbee5 (diff) | |
download | chromium_src-30b55651cf9500b1ed8917e4d040513559ad3e83.zip chromium_src-30b55651cf9500b1ed8917e4d040513559ad3e83.tar.gz chromium_src-30b55651cf9500b1ed8917e4d040513559ad3e83.tar.bz2 |
Add support for unmixed audio from remote WebRTC remote tracks.
To begin with WebAudio will have support for this with more areas to come (e.g. MediaStreamRecording)
BUG=121673
Review URL: https://codereview.chromium.org/1514143003
Cr-Commit-Position: refs/heads/master@{#364885}
Diffstat (limited to 'content/public/renderer')
-rw-r--r-- | content/public/renderer/media_stream_audio_sink.cc | 38 |
1 files changed, 7 insertions, 31 deletions
diff --git a/content/public/renderer/media_stream_audio_sink.cc b/content/public/renderer/media_stream_audio_sink.cc index 507bef0..a6e01a9 100644 --- a/content/public/renderer/media_stream_audio_sink.cc +++ b/content/public/renderer/media_stream_audio_sink.cc @@ -5,8 +5,7 @@ #include "content/public/renderer/media_stream_audio_sink.h" #include "base/logging.h" -#include "content/renderer/media/media_stream_track.h" -#include "content/renderer/media/webrtc_local_audio_track.h" +#include "content/renderer/media/media_stream_audio_track.h" #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h" @@ -16,44 +15,21 @@ void MediaStreamAudioSink::AddToAudioTrack( MediaStreamAudioSink* sink, const blink::WebMediaStreamTrack& track) { DCHECK(track.source().type() == blink::WebMediaStreamSource::TypeAudio); - MediaStreamTrack* native_track = MediaStreamTrack::GetTrack(track); - // TODO(xians): Support remote audio track. - if (!native_track->is_local_track()) { - LOG(ERROR) << "Can't add the sink to a remote audio track"; - return; - } - - WebRtcLocalAudioTrack* audio_track = - static_cast<WebRtcLocalAudioTrack*>(native_track); - audio_track->AddSink(sink); + MediaStreamAudioTrack* native_track = MediaStreamAudioTrack::GetTrack(track); + native_track->AddSink(sink); } void MediaStreamAudioSink::RemoveFromAudioTrack( MediaStreamAudioSink* sink, const blink::WebMediaStreamTrack& track) { - MediaStreamTrack* native_track = MediaStreamTrack::GetTrack(track); - // TODO(xians): Support remote audio track. - if (!native_track->is_local_track()) { - LOG(ERROR) << "Can't remove the sink from a remote audio track"; - return; - } - - WebRtcLocalAudioTrack* audio_track = - static_cast<WebRtcLocalAudioTrack*>(native_track); - audio_track->RemoveSink(sink); + MediaStreamAudioTrack* native_track = MediaStreamAudioTrack::GetTrack(track); + native_track->RemoveSink(sink); } media::AudioParameters MediaStreamAudioSink::GetFormatFromAudioTrack( const blink::WebMediaStreamTrack& track) { - MediaStreamTrack* native_track = MediaStreamTrack::GetTrack(track); - if (!native_track->is_local_track()) { - LOG(ERROR) << "Can't get format from a remote audio track"; - return media::AudioParameters(); - } - - WebRtcLocalAudioTrack* audio_track = - static_cast<WebRtcLocalAudioTrack*>(native_track); - return audio_track->GetOutputFormat(); + MediaStreamAudioTrack* native_track = MediaStreamAudioTrack::GetTrack(track); + return native_track->GetOutputFormat(); } } // namespace content |