| Index: media/filters/video_renderer_base.h
|
| diff --git a/media/filters/video_renderer_base.h b/media/filters/video_renderer_base.h
|
| index 7b0165398f91b4c688b4f167d93c5a9c02e83441..94e073022126d5bdb6309c48a6085016f997aeed 100644
|
| --- a/media/filters/video_renderer_base.h
|
| +++ b/media/filters/video_renderer_base.h
|
| @@ -8,6 +8,7 @@
|
| #include <deque>
|
|
|
| #include "base/memory/ref_counted.h"
|
| +#include "base/memory/scoped_vector.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "base/synchronization/condition_variable.h"
|
| #include "base/synchronization/lock.h"
|
| @@ -43,6 +44,8 @@ class MEDIA_EXPORT VideoRendererBase
|
| // Maximum duration of the last frame.
|
| static base::TimeDelta kMaxLastFrameDuration();
|
|
|
| + // |decoders| contains the VideoDecoders to use when initializing.
|
| + //
|
| // |paint_cb| is executed on the video frame timing thread whenever a new
|
| // frame is available for painting.
|
| //
|
| @@ -55,6 +58,7 @@ class MEDIA_EXPORT VideoRendererBase
|
| //
|
| // Setting |drop_frames_| to true causes the renderer to drop expired frames.
|
| VideoRendererBase(const scoped_refptr<base::MessageLoopProxy>& message_loop,
|
| + ScopedVector<VideoDecoder> decoders,
|
| const SetDecryptorReadyCB& set_decryptor_ready_cb,
|
| const PaintCB& paint_cb,
|
| const SetOpaqueCB& set_opaque_cb,
|
| @@ -63,7 +67,6 @@ class MEDIA_EXPORT VideoRendererBase
|
|
|
| // VideoRenderer implementation.
|
| virtual void Initialize(const scoped_refptr<DemuxerStream>& stream,
|
| - const VideoDecoderList& decoders,
|
| const PipelineStatusCB& init_cb,
|
| const StatisticsCB& statistics_cb,
|
| const TimeCB& max_time_cb,
|
| @@ -129,12 +132,17 @@ class MEDIA_EXPORT VideoRendererBase
|
| // A read is scheduled to replace the frame.
|
| void DropNextReadyFrame_Locked();
|
|
|
| + void ResetDecoder();
|
| + void StopDecoder(const base::Closure& callback);
|
| +
|
| void TransitionToPrerolled_Locked();
|
|
|
| scoped_refptr<base::MessageLoopProxy> message_loop_;
|
| base::WeakPtrFactory<VideoRendererBase> weak_factory_;
|
| base::WeakPtr<VideoRendererBase> weak_this_;
|
|
|
| + scoped_ptr<VideoDecoderSelector> decoder_selector_;
|
| +
|
| // Used for accessing data members.
|
| base::Lock lock_;
|
|
|
|
|