| Index: media/base/pipeline.cc
|
| diff --git a/media/base/pipeline.cc b/media/base/pipeline.cc
|
| index fd8b902d7f3808bb296fae869dde8e0aefee8303..c67e72c7c0b3643020c2fbc43ffe2612ea5cad48 100644
|
| --- a/media/base/pipeline.cc
|
| +++ b/media/base/pipeline.cc
|
| @@ -291,14 +291,14 @@ Pipeline::State Pipeline::GetNextState() const {
|
| return kInitDemuxer;
|
|
|
| case kInitDemuxer:
|
| - if (demuxer_->GetStream(DemuxerStream::AUDIO))
|
| + if (demuxer_->GetStream(DemuxerStream::AUDIO).get())
|
| return kInitAudioRenderer;
|
| - if (demuxer_->GetStream(DemuxerStream::VIDEO))
|
| + if (demuxer_->GetStream(DemuxerStream::VIDEO).get())
|
| return kInitVideoRenderer;
|
| return kInitPrerolling;
|
|
|
| case kInitAudioRenderer:
|
| - if (demuxer_->GetStream(DemuxerStream::VIDEO))
|
| + if (demuxer_->GetStream(DemuxerStream::VIDEO).get())
|
| return kInitVideoRenderer;
|
| return kInitPrerolling;
|
|
|
| @@ -478,10 +478,10 @@ void Pipeline::StateTransitionTask(PipelineStatus status) {
|
| // otherwise people with muted/disabled sound cards will make our
|
| // default controls look as if every video doesn't contain an audio
|
| // track.
|
| - has_audio_ = audio_renderer_ != NULL && !audio_disabled_;
|
| - has_video_ = video_renderer_ != NULL;
|
| + has_audio_ = audio_renderer_.get() != NULL && !audio_disabled_;
|
| + has_video_ = video_renderer_.get() != NULL;
|
| }
|
| - if (!audio_renderer_ && !video_renderer_) {
|
| + if (!audio_renderer_.get() && !video_renderer_.get()) {
|
| done_cb.Run(PIPELINE_ERROR_COULD_NOT_RENDER);
|
| return;
|
| }
|
| @@ -531,12 +531,12 @@ void Pipeline::DoInitialPreroll(const PipelineStatusCB& done_cb) {
|
| base::TimeDelta seek_timestamp = demuxer_->GetStartTime();
|
|
|
| // Preroll renderers.
|
| - if (audio_renderer_) {
|
| + if (audio_renderer_.get()) {
|
| bound_fns.Push(base::Bind(
|
| &AudioRenderer::Preroll, audio_renderer_, seek_timestamp));
|
| }
|
|
|
| - if (video_renderer_) {
|
| + if (video_renderer_.get()) {
|
| bound_fns.Push(base::Bind(
|
| &VideoRenderer::Preroll, video_renderer_, seek_timestamp));
|
| }
|
| @@ -552,15 +552,15 @@ void Pipeline::DoSeek(
|
| SerialRunner::Queue bound_fns;
|
|
|
| // Pause.
|
| - if (audio_renderer_)
|
| + if (audio_renderer_.get())
|
| bound_fns.Push(base::Bind(&AudioRenderer::Pause, audio_renderer_));
|
| - if (video_renderer_)
|
| + if (video_renderer_.get())
|
| bound_fns.Push(base::Bind(&VideoRenderer::Pause, video_renderer_));
|
|
|
| // Flush.
|
| - if (audio_renderer_)
|
| + if (audio_renderer_.get())
|
| bound_fns.Push(base::Bind(&AudioRenderer::Flush, audio_renderer_));
|
| - if (video_renderer_)
|
| + if (video_renderer_.get())
|
| bound_fns.Push(base::Bind(&VideoRenderer::Flush, video_renderer_));
|
|
|
| // Seek demuxer.
|
| @@ -568,12 +568,12 @@ void Pipeline::DoSeek(
|
| &Demuxer::Seek, demuxer_, seek_timestamp));
|
|
|
| // Preroll renderers.
|
| - if (audio_renderer_) {
|
| + if (audio_renderer_.get()) {
|
| bound_fns.Push(base::Bind(
|
| &AudioRenderer::Preroll, audio_renderer_, seek_timestamp));
|
| }
|
|
|
| - if (video_renderer_) {
|
| + if (video_renderer_.get()) {
|
| bound_fns.Push(base::Bind(
|
| &VideoRenderer::Preroll, video_renderer_, seek_timestamp));
|
| }
|
| @@ -589,10 +589,10 @@ void Pipeline::DoPlay(const PipelineStatusCB& done_cb) {
|
| PlaybackRateChangedTask(GetPlaybackRate());
|
| VolumeChangedTask(GetVolume());
|
|
|
| - if (audio_renderer_)
|
| + if (audio_renderer_.get())
|
| bound_fns.Push(base::Bind(&AudioRenderer::Play, audio_renderer_));
|
|
|
| - if (video_renderer_)
|
| + if (video_renderer_.get())
|
| bound_fns.Push(base::Bind(&VideoRenderer::Play, video_renderer_));
|
|
|
| pending_callbacks_ = SerialRunner::Run(bound_fns, done_cb);
|
| @@ -603,13 +603,13 @@ void Pipeline::DoStop(const PipelineStatusCB& done_cb) {
|
| DCHECK(!pending_callbacks_.get());
|
| SerialRunner::Queue bound_fns;
|
|
|
| - if (demuxer_)
|
| + if (demuxer_.get())
|
| bound_fns.Push(base::Bind(&Demuxer::Stop, demuxer_));
|
|
|
| - if (audio_renderer_)
|
| + if (audio_renderer_.get())
|
| bound_fns.Push(base::Bind(&AudioRenderer::Stop, audio_renderer_));
|
|
|
| - if (video_renderer_)
|
| + if (video_renderer_.get())
|
| bound_fns.Push(base::Bind(&VideoRenderer::Stop, video_renderer_));
|
|
|
| pending_callbacks_ = SerialRunner::Run(bound_fns, done_cb);
|
| @@ -753,11 +753,11 @@ void Pipeline::PlaybackRateChangedTask(float playback_rate) {
|
| clock_->SetPlaybackRate(playback_rate);
|
| }
|
|
|
| - if (demuxer_)
|
| + if (demuxer_.get())
|
| demuxer_->SetPlaybackRate(playback_rate);
|
| - if (audio_renderer_)
|
| + if (audio_renderer_.get())
|
| audio_renderer_->SetPlaybackRate(playback_rate_);
|
| - if (video_renderer_)
|
| + if (video_renderer_.get())
|
| video_renderer_->SetPlaybackRate(playback_rate_);
|
| }
|
|
|
| @@ -768,7 +768,7 @@ void Pipeline::VolumeChangedTask(float volume) {
|
| if (state_ != kStarting && state_ != kStarted)
|
| return;
|
|
|
| - if (audio_renderer_)
|
| + if (audio_renderer_.get())
|
| audio_renderer_->SetVolume(volume);
|
| }
|
|
|
| @@ -840,10 +840,10 @@ void Pipeline::DoVideoRendererEnded() {
|
| void Pipeline::RunEndedCallbackIfNeeded() {
|
| DCHECK(message_loop_->BelongsToCurrentThread());
|
|
|
| - if (audio_renderer_ && !audio_ended_ && !audio_disabled_)
|
| + if (audio_renderer_.get() && !audio_ended_ && !audio_disabled_)
|
| return;
|
|
|
| - if (video_renderer_ && !video_ended_)
|
| + if (video_renderer_.get() && !video_ended_)
|
| return;
|
|
|
| {
|
| @@ -938,7 +938,7 @@ void Pipeline::OnAudioUnderflow() {
|
| if (state_ != kStarted)
|
| return;
|
|
|
| - if (audio_renderer_)
|
| + if (audio_renderer_.get())
|
| audio_renderer_->ResumeAfterUnderflow(true);
|
| }
|
|
|
|
|