| Index: media/renderers/video_renderer_impl.h
|
| diff --git a/media/renderers/video_renderer_impl.h b/media/renderers/video_renderer_impl.h
|
| index 33938dc0cc926d567381a866c793f0754aaaccb3..7eb9814204eb61b1bd2c04c8d02c1a1ac87e7c4f 100644
|
| --- a/media/renderers/video_renderer_impl.h
|
| +++ b/media/renderers/video_renderer_impl.h
|
| @@ -21,6 +21,7 @@
|
| #include "media/base/video_decoder.h"
|
| #include "media/base/video_frame.h"
|
| #include "media/base/video_renderer.h"
|
| +#include "media/base/video_renderer_sink.h"
|
| #include "media/filters/decoder_stream.h"
|
|
|
| namespace base {
|
| @@ -36,6 +37,7 @@ namespace media {
|
| // ready for rendering.
|
| class MEDIA_EXPORT VideoRendererImpl
|
| : public VideoRenderer,
|
| + public NON_EXPORTED_BASE(VideoRendererSink::RenderCallback),
|
| public base::PlatformThread::Delegate {
|
| public:
|
| // |decoders| contains the VideoDecoders to use when initializing.
|
| @@ -47,6 +49,7 @@ class MEDIA_EXPORT VideoRendererImpl
|
| // Setting |drop_frames_| to true causes the renderer to drop expired frames.
|
| VideoRendererImpl(
|
| const scoped_refptr<base::SingleThreadTaskRunner>& task_runner,
|
| + VideoRendererSink* sink,
|
| ScopedVector<VideoDecoder> decoders,
|
| bool drop_frames,
|
| const scoped_refptr<MediaLog>& media_log);
|
| @@ -58,7 +61,6 @@ class MEDIA_EXPORT VideoRendererImpl
|
| const SetDecryptorReadyCB& set_decryptor_ready_cb,
|
| const StatisticsCB& statistics_cb,
|
| const BufferingStateCB& buffering_state_cb,
|
| - const PaintCB& paint_cb,
|
| const base::Closure& ended_cb,
|
| const PipelineStatusCB& error_cb,
|
| const WallClockTimeCB& wall_clock_time_cb,
|
| @@ -72,6 +74,11 @@ class MEDIA_EXPORT VideoRendererImpl
|
|
|
| void SetTickClockForTesting(scoped_ptr<base::TickClock> tick_clock);
|
|
|
| + // VideoRendererSink::RenderCallback implementation.
|
| + scoped_refptr<VideoFrame> Render(base::TimeTicks deadline_min,
|
| + base::TimeTicks deadline_max) override;
|
| + void OnFrameDropped() override;
|
| +
|
| private:
|
| // Creates a dedicated |thread_| for video rendering.
|
| void CreateVideoThread();
|
| @@ -118,6 +125,8 @@ class MEDIA_EXPORT VideoRendererImpl
|
|
|
| scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
|
|
|
| + VideoRendererSink* const sink_;
|
| +
|
| // Used for accessing data members.
|
| base::Lock lock_;
|
|
|
|
|