Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1172)

Unified Diff: media/filters/renderer_impl.cc

Issue 523283002: media: Introduce DemuxerStreamProvider interface. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/filters/renderer_impl.cc
diff --git a/media/filters/renderer_impl.cc b/media/filters/renderer_impl.cc
index d2db66d1139dbb7ad16bd3763f80957cbb34d01a..35abe8d676e68deb1087e4114fc7c25d16e13299 100644
--- a/media/filters/renderer_impl.cc
+++ b/media/filters/renderer_impl.cc
@@ -11,7 +11,7 @@
#include "base/location.h"
#include "base/single_thread_task_runner.h"
#include "media/base/audio_renderer.h"
-#include "media/base/demuxer.h"
+#include "media/base/demuxer_stream_provider.h"
#include "media/base/time_delta_interpolator.h"
#include "media/base/time_source.h"
#include "media/base/video_renderer.h"
@@ -20,12 +20,12 @@ namespace media {
RendererImpl::RendererImpl(
const scoped_refptr<base::SingleThreadTaskRunner>& task_runner,
- Demuxer* demuxer,
+ DemuxerStreamProvider* demuxer_stream_provider,
scoped_ptr<AudioRenderer> audio_renderer,
scoped_ptr<VideoRenderer> video_renderer)
: state_(STATE_UNINITIALIZED),
task_runner_(task_runner),
- demuxer_(demuxer),
+ demuxer_stream_provider_(demuxer_stream_provider),
audio_renderer_(audio_renderer.Pass()),
video_renderer_(video_renderer.Pass()),
time_source_(NULL),
@@ -67,8 +67,8 @@ void RendererImpl::Initialize(const PipelineStatusCB& init_cb,
DCHECK(!error_cb.is_null());
DCHECK(!buffering_state_cb.is_null());
DCHECK(!get_duration_cb.is_null());
- DCHECK(demuxer_->GetStream(DemuxerStream::AUDIO) ||
- demuxer_->GetStream(DemuxerStream::VIDEO));
+ DCHECK(demuxer_stream_provider_->GetStream(DemuxerStream::AUDIO) ||
+ demuxer_stream_provider_->GetStream(DemuxerStream::VIDEO));
statistics_cb_ = statistics_cb;
ended_cb_ = ended_cb;
@@ -196,14 +196,14 @@ void RendererImpl::InitializeAudioRenderer() {
PipelineStatusCB done_cb =
base::Bind(&RendererImpl::OnAudioRendererInitializeDone, weak_this_);
- if (!demuxer_->GetStream(DemuxerStream::AUDIO)) {
+ if (!demuxer_stream_provider_->GetStream(DemuxerStream::AUDIO)) {
audio_renderer_.reset();
task_runner_->PostTask(FROM_HERE, base::Bind(done_cb, PIPELINE_OK));
return;
}
audio_renderer_->Initialize(
- demuxer_->GetStream(DemuxerStream::AUDIO),
+ demuxer_stream_provider_->GetStream(DemuxerStream::AUDIO),
done_cb,
base::Bind(&RendererImpl::OnUpdateStatistics, weak_this_),
base::Bind(&RendererImpl::OnAudioTimeUpdate, weak_this_),
@@ -241,19 +241,21 @@ void RendererImpl::InitializeVideoRenderer() {
PipelineStatusCB done_cb =
base::Bind(&RendererImpl::OnVideoRendererInitializeDone, weak_this_);
- if (!demuxer_->GetStream(DemuxerStream::VIDEO)) {
+ if (!demuxer_stream_provider_->GetStream(DemuxerStream::VIDEO)) {
video_renderer_.reset();
task_runner_->PostTask(FROM_HERE, base::Bind(done_cb, PIPELINE_OK));
return;
}
video_renderer_->Initialize(
- demuxer_->GetStream(DemuxerStream::VIDEO),
- demuxer_->GetLiveness() == Demuxer::LIVENESS_LIVE,
+ demuxer_stream_provider_->GetStream(DemuxerStream::VIDEO),
+ demuxer_stream_provider_->GetLiveness() ==
+ DemuxerStreamProvider::LIVENESS_LIVE,
done_cb,
base::Bind(&RendererImpl::OnUpdateStatistics, weak_this_),
base::Bind(&RendererImpl::OnVideoTimeUpdate, weak_this_),
- base::Bind(&RendererImpl::OnBufferingStateChanged, weak_this_,
+ base::Bind(&RendererImpl::OnBufferingStateChanged,
+ weak_this_,
&video_buffering_state_),
base::Bind(&RendererImpl::OnVideoRendererEnded, weak_this_),
base::Bind(&RendererImpl::OnError, weak_this_),

Powered by Google App Engine
This is Rietveld 408576698