| Index: content/renderer/media/media_stream_audio_track.cc
|
| diff --git a/content/renderer/media/media_stream_audio_track.cc b/content/renderer/media/media_stream_audio_track.cc
|
| index 278ab05bb107369cdd23614565470e40846a3518..8477e9c11ce289eed34d3e19dc14d7fdd83b6012 100644
|
| --- a/content/renderer/media/media_stream_audio_track.cc
|
| +++ b/content/renderer/media/media_stream_audio_track.cc
|
| @@ -12,13 +12,19 @@ namespace content {
|
|
|
| MediaStreamAudioTrack::MediaStreamAudioTrack(bool is_local_track)
|
| : MediaStreamTrack(is_local_track) {
|
| + DVLOG(1) << "MediaStreamAudioTrack::MediaStreamAudioTrack(is a "
|
| + << (is_local_track ? "local" : "remote") << " track)";
|
| }
|
|
|
| MediaStreamAudioTrack::~MediaStreamAudioTrack() {
|
| + DCHECK(main_render_thread_checker_.CalledOnValidThread());
|
| + DVLOG(1) << "MediaStreamAudioTrack::~MediaStreamAudioTrack()";
|
| + DCHECK(stop_callbacks_.empty())
|
| + << "BUG: Subclass must ensure WillStopTrack() is called.";
|
| }
|
|
|
| // static
|
| -MediaStreamAudioTrack* MediaStreamAudioTrack::GetTrack(
|
| +MediaStreamAudioTrack* MediaStreamAudioTrack::From(
|
| const blink::WebMediaStreamTrack& track) {
|
| if (track.isNull() ||
|
| track.source().type() != blink::WebMediaStreamSource::TypeAudio) {
|
| @@ -27,6 +33,23 @@ MediaStreamAudioTrack* MediaStreamAudioTrack::GetTrack(
|
| return static_cast<MediaStreamAudioTrack*>(track.extraData());
|
| }
|
|
|
| +void MediaStreamAudioTrack::AddStopObserver(
|
| + const base::Closure& stop_callback) {
|
| + DCHECK(main_render_thread_checker_.CalledOnValidThread());
|
| + DCHECK(!stop_callback.is_null());
|
| + DVLOG(1) << "MediaStreamAudioTrack::AddStopObserver()";
|
| + stop_callbacks_.push_back(stop_callback);
|
| +}
|
| +
|
| +void MediaStreamAudioTrack::WillStopTrack() {
|
| + DCHECK(main_render_thread_checker_.CalledOnValidThread());
|
| + DVLOG(1) << "MediaStreamAudioTrack::WillStopTrack()";
|
| + std::vector<base::Closure> callbacks_to_run;
|
| + callbacks_to_run.swap(stop_callbacks_);
|
| + for (const base::Closure& callback : callbacks_to_run)
|
| + callback.Run();
|
| +}
|
| +
|
| webrtc::AudioTrackInterface* MediaStreamAudioTrack::GetAudioAdapter() {
|
| NOTREACHED();
|
| return nullptr;
|
|
|