| Index: media/blink/webmediaplayer_impl.cc
|
| diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_impl.cc
|
| index 9b79fba4fd291c277d2ed1c4d46d00f39f321be3..af8d74c1a027f7a5f14a07eb8dc33f0d41529a15 100644
|
| --- a/media/blink/webmediaplayer_impl.cc
|
| +++ b/media/blink/webmediaplayer_impl.cc
|
| @@ -177,7 +177,7 @@ WebMediaPlayerImpl::WebMediaPlayerImpl(
|
| WebMediaPlayerDelegate* delegate,
|
| std::unique_ptr<RendererFactory> renderer_factory,
|
| linked_ptr<UrlIndex> url_index,
|
| - const WebMediaPlayerParams& params)
|
| + std::unique_ptr<WebMediaPlayerParams> params)
|
| : frame_(frame),
|
| delegate_state_(DelegateState::GONE),
|
| delegate_has_audio_(false),
|
| @@ -186,9 +186,9 @@ WebMediaPlayerImpl::WebMediaPlayerImpl(
|
| highest_ready_state_(WebMediaPlayer::kReadyStateHaveNothing),
|
| preload_(MultibufferDataSource::AUTO),
|
| main_task_runner_(frame->LoadingTaskRunner()),
|
| - media_task_runner_(params.media_task_runner()),
|
| - worker_task_runner_(params.worker_task_runner()),
|
| - media_log_(params.media_log()),
|
| + media_task_runner_(params->media_task_runner()),
|
| + worker_task_runner_(params->worker_task_runner()),
|
| + media_log_(params->take_media_log()),
|
| pipeline_controller_(
|
| base::MakeUnique<PipelineImpl>(media_task_runner_, media_log_.get()),
|
| base::Bind(&WebMediaPlayerImpl::CreateRenderer,
|
| @@ -213,40 +213,40 @@ WebMediaPlayerImpl::WebMediaPlayerImpl(
|
| encrypted_client_(encrypted_client),
|
| delegate_(delegate),
|
| delegate_id_(0),
|
| - defer_load_cb_(params.defer_load_cb()),
|
| - context_3d_cb_(params.context_3d_cb()),
|
| - adjust_allocated_memory_cb_(params.adjust_allocated_memory_cb()),
|
| + defer_load_cb_(params->defer_load_cb()),
|
| + context_3d_cb_(params->context_3d_cb()),
|
| + adjust_allocated_memory_cb_(params->adjust_allocated_memory_cb()),
|
| last_reported_memory_usage_(0),
|
| supports_save_(true),
|
| chunk_demuxer_(NULL),
|
| url_index_(url_index),
|
| // Threaded compositing isn't enabled universally yet.
|
| - compositor_task_runner_(params.compositor_task_runner()
|
| - ? params.compositor_task_runner()
|
| + compositor_task_runner_(params->compositor_task_runner()
|
| + ? params->compositor_task_runner()
|
| : base::ThreadTaskRunnerHandle::Get()),
|
| compositor_(new VideoFrameCompositor(compositor_task_runner_)),
|
| #if defined(OS_ANDROID) // WMPI_CAST
|
| - cast_impl_(this, client_, params.context_3d_cb()),
|
| + cast_impl_(this, client_, params->context_3d_cb()),
|
| #endif
|
| volume_(1.0),
|
| volume_multiplier_(1.0),
|
| renderer_factory_(std::move(renderer_factory)),
|
| - surface_manager_(params.surface_manager()),
|
| + surface_manager_(params->surface_manager()),
|
| overlay_surface_id_(SurfaceManager::kNoSurfaceID),
|
| suppress_destruction_errors_(false),
|
| - suspend_enabled_(params.allow_suspend()),
|
| + suspend_enabled_(params->allow_suspend()),
|
| use_fallback_path_(false),
|
| is_encrypted_(false),
|
| preroll_attempt_pending_(false),
|
| - observer_(params.media_observer()),
|
| + observer_(params->media_observer()),
|
| max_keyframe_distance_to_disable_background_video_(
|
| - params.max_keyframe_distance_to_disable_background_video()),
|
| + params->max_keyframe_distance_to_disable_background_video()),
|
| max_keyframe_distance_to_disable_background_video_mse_(
|
| - params.max_keyframe_distance_to_disable_background_video_mse()),
|
| + params->max_keyframe_distance_to_disable_background_video_mse()),
|
| enable_instant_source_buffer_gc_(
|
| - params.enable_instant_source_buffer_gc()),
|
| + params->enable_instant_source_buffer_gc()),
|
| embedded_media_experience_enabled_(
|
| - params.embedded_media_experience_enabled()) {
|
| + params->embedded_media_experience_enabled()) {
|
| DVLOG(1) << __func__;
|
| DCHECK(!adjust_allocated_memory_cb_.is_null());
|
| DCHECK(renderer_factory_);
|
| @@ -267,13 +267,13 @@ WebMediaPlayerImpl::WebMediaPlayerImpl(
|
| media_log_->AddEvent(
|
| media_log_->CreateEvent(MediaLogEvent::WEBMEDIAPLAYER_CREATED));
|
|
|
| - if (params.initial_cdm())
|
| - SetCdm(params.initial_cdm());
|
| + if (params->initial_cdm())
|
| + SetCdm(params->initial_cdm());
|
|
|
| // TODO(xhwang): When we use an external Renderer, many methods won't work,
|
| // e.g. GetCurrentFrameFromCompositor(). See http://crbug.com/434861
|
| - audio_source_provider_ =
|
| - new WebAudioSourceProviderImpl(params.audio_renderer_sink(), media_log_);
|
| + audio_source_provider_ = new WebAudioSourceProviderImpl(
|
| + params->audio_renderer_sink(), media_log_.get());
|
|
|
| if (observer_)
|
| observer_->SetClient(this);
|
| @@ -400,7 +400,7 @@ void WebMediaPlayerImpl::DoLoad(LoadType load_type,
|
| DCHECK(main_task_runner_->BelongsToCurrentThread());
|
|
|
| GURL gurl(url);
|
| - ReportMetrics(load_type, gurl, frame_->GetSecurityOrigin(), media_log_);
|
| + ReportMetrics(load_type, gurl, frame_->GetSecurityOrigin(), media_log_.get());
|
|
|
| // Set subresource URL for crash reporting.
|
| base::debug::SetCrashKeyValue("subresource_url", gurl.spec());
|
| @@ -669,8 +669,8 @@ void WebMediaPlayerImpl::EnabledAudioTracksChanged(
|
| logstr << track_id << " ";
|
| enabledMediaTrackIds.push_back(track_id);
|
| }
|
| - MEDIA_LOG(INFO, media_log_) << "Enabled audio tracks: [" << logstr.str()
|
| - << "]";
|
| + MEDIA_LOG(INFO, media_log_.get())
|
| + << "Enabled audio tracks: [" << logstr.str() << "]";
|
| pipeline_controller_.OnEnabledAudioTracksChanged(enabledMediaTrackIds);
|
| }
|
|
|
| @@ -681,8 +681,9 @@ void WebMediaPlayerImpl::SelectedVideoTrackChanged(
|
| base::Optional<MediaTrack::Id> selected_video_track_id;
|
| if (selectedTrackId && !video_track_disabled_)
|
| selected_video_track_id = MediaTrack::Id(selectedTrackId->Utf8().data());
|
| - MEDIA_LOG(INFO, media_log_) << "Selected video track: ["
|
| - << selected_video_track_id.value_or("") << "]";
|
| + MEDIA_LOG(INFO, media_log_.get())
|
| + << "Selected video track: [" << selected_video_track_id.value_or("")
|
| + << "]";
|
| pipeline_controller_.OnSelectedVideoTrackChanged(selected_video_track_id);
|
| }
|
|
|
| @@ -1186,8 +1187,7 @@ void WebMediaPlayerImpl::OnPipelineResumed() {
|
|
|
| void WebMediaPlayerImpl::OnDemuxerOpened() {
|
| DCHECK(main_task_runner_->BelongsToCurrentThread());
|
| - client_->MediaSourceOpened(
|
| - new WebMediaSourceImpl(chunk_demuxer_, media_log_));
|
| + client_->MediaSourceOpened(new WebMediaSourceImpl(chunk_demuxer_));
|
| }
|
|
|
| void WebMediaPlayerImpl::OnMemoryPressure(
|
| @@ -1228,7 +1228,7 @@ void WebMediaPlayerImpl::OnError(PipelineStatus status) {
|
| if (suppress_destruction_errors_)
|
| return;
|
|
|
| - ReportPipelineError(load_type_, status, media_log_);
|
| + ReportPipelineError(load_type_, status, media_log_.get());
|
| media_log_->AddEvent(media_log_->CreatePipelineErrorEvent(status));
|
|
|
| if (ready_state_ == WebMediaPlayer::kReadyStateHaveNothing) {
|
| @@ -1755,9 +1755,9 @@ void WebMediaPlayerImpl::StartPipeline() {
|
| BindToCurrentLoop(base::Bind(
|
| &WebMediaPlayerImpl::OnFFmpegMediaTracksUpdated, AsWeakPtr()));
|
|
|
| - demuxer_.reset(new FFmpegDemuxer(media_task_runner_, data_source_.get(),
|
| - encrypted_media_init_data_cb,
|
| - media_tracks_updated_cb, media_log_));
|
| + demuxer_.reset(new FFmpegDemuxer(
|
| + media_task_runner_, data_source_.get(), encrypted_media_init_data_cb,
|
| + media_tracks_updated_cb, media_log_.get()));
|
| #else
|
| OnError(PipelineStatus::DEMUXER_ERROR_COULD_NOT_OPEN);
|
| return;
|
| @@ -1769,7 +1769,7 @@ void WebMediaPlayerImpl::StartPipeline() {
|
| chunk_demuxer_ = new ChunkDemuxer(
|
| BindToCurrentLoop(
|
| base::Bind(&WebMediaPlayerImpl::OnDemuxerOpened, AsWeakPtr())),
|
| - encrypted_media_init_data_cb, media_log_);
|
| + encrypted_media_init_data_cb, media_log_.get());
|
| demuxer_.reset(chunk_demuxer_);
|
|
|
| if (base::FeatureList::IsEnabled(kMemoryPressureBasedSourceBufferGC)) {
|
| @@ -2168,7 +2168,7 @@ void WebMediaPlayerImpl::CreateWatchTimeReporter() {
|
| watch_time_reporter_.reset(
|
| new WatchTimeReporter(HasAudio(), HasVideo(), !!chunk_demuxer_,
|
| is_encrypted_, embedded_media_experience_enabled_,
|
| - media_log_, pipeline_metadata_.natural_size,
|
| + media_log_.get(), pipeline_metadata_.natural_size,
|
| base::Bind(&GetCurrentTimeInternal, this)));
|
| watch_time_reporter_->OnVolumeChange(volume_);
|
| if (delegate_->IsFrameHidden())
|
|
|