Index: media/blink/webmediaplayer_impl.cc |
diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_impl.cc |
index 0b6354a9f296e6f22c4cd2ec20ff7793d48f53c0..3b373485a2ae011fd57fcf8bdd8e060aa1357bb7 100644 |
--- a/media/blink/webmediaplayer_impl.cc |
+++ b/media/blink/webmediaplayer_impl.cc |
@@ -577,6 +577,22 @@ bool WebMediaPlayerImpl::hasAudio() const { |
return pipeline_metadata_.has_audio; |
} |
+void WebMediaPlayerImpl::enabledAudioTracksChanged( |
+ const blink::WebVector<blink::WebMediaPlayer::TrackId>& enabledTrackIds) { |
+ DCHECK(main_task_runner_->BelongsToCurrentThread()); |
+ CHECK(demuxer_.get()); |
+ |
+ // TODO(servolk): Implement disabling/enabling audio streams. |
+} |
+ |
+void WebMediaPlayerImpl::selectedVideoTrackChanged( |
+ blink::WebMediaPlayer::TrackId* selectedTrackId) { |
+ DCHECK(main_task_runner_->BelongsToCurrentThread()); |
+ CHECK(demuxer_.get()); |
+ |
+ // TODO(servolk): Implement disabling/enabling video stream. |
+} |
+ |
blink::WebSize WebMediaPlayerImpl::naturalSize() const { |
DCHECK(main_task_runner_->BelongsToCurrentThread()); |
@@ -841,6 +857,7 @@ void WebMediaPlayerImpl::OnFFmpegMediaTracksUpdated( |
DCHECK(!chunk_demuxer_); |
// Report the media track information to blink. |
+ std::vector<blink::WebMediaPlayer::TrackId> blinkTrackIds; |
for (const auto& track : tracks->tracks()) { |
if (track->type() == MediaTrack::Audio) { |
auto track_id = client_->addAudioTrack( |
@@ -849,7 +866,7 @@ void WebMediaPlayerImpl::OnFFmpegMediaTracksUpdated( |
blink::WebString::fromUTF8(track->label()), |
blink::WebString::fromUTF8(track->language()), |
/*enabled*/ true); |
- (void)track_id; |
+ blinkTrackIds.push_back(track_id); |
} else if (track->type() == MediaTrack::Video) { |
auto track_id = client_->addVideoTrack( |
blink::WebString::fromUTF8(track->id()), |
@@ -857,12 +874,14 @@ void WebMediaPlayerImpl::OnFFmpegMediaTracksUpdated( |
blink::WebString::fromUTF8(track->label()), |
blink::WebString::fromUTF8(track->language()), |
/*selected*/ true); |
- (void)track_id; |
+ blinkTrackIds.push_back(track_id); |
} else { |
// Text tracks are not supported through this code path yet. |
NOTREACHED(); |
} |
} |
+ |
+ demuxer_->OnTrackIdsAssigned(*tracks.get(), blinkTrackIds); |
} |
void WebMediaPlayerImpl::SetCdm(const CdmAttachedCB& cdm_attached_cb, |