| Index: media/mojo/clients/mojo_renderer_impl.h
|
| diff --git a/media/mojo/clients/mojo_renderer_impl.h b/media/mojo/clients/mojo_renderer_impl.h
|
| index 9b60afe5b494cfaf46542be3f3de43818b836637..a3a286d5d3c6772c75ee81e2468843ace77dd374 100644
|
| --- a/media/mojo/clients/mojo_renderer_impl.h
|
| +++ b/media/mojo/clients/mojo_renderer_impl.h
|
| @@ -19,6 +19,7 @@ class SingleThreadTaskRunner;
|
| namespace media {
|
|
|
| class DemuxerStreamProvider;
|
| +class MojoDemuxerStreamImpl;
|
| class VideoOverlayFactory;
|
| class VideoRendererSink;
|
|
|
| @@ -88,13 +89,17 @@ class MojoRendererImpl : public Renderer, public mojom::RendererClient {
|
| // Rendering of a new overlay is only needed when video natural size changes.
|
| VideoRendererSink* video_renderer_sink_;
|
|
|
| - // Provider of audio/video DemuxerStreams. Must be valid throughout the
|
| - // lifetime of |this|.
|
| - DemuxerStreamProvider* demuxer_stream_provider_;
|
| -
|
| // Client of |this| renderer passed in Initialize.
|
| media::RendererClient* client_;
|
|
|
| + // Mojo demuxer streams.
|
| + // Owned by MojoRendererImpl instead of remote mojom::Renderer
|
| + // becuase these demuxer streams need to be destroyed as soon as |this| is
|
| + // destroyed. The local demuxer streams returned by DemuxerStreamProvider
|
| + // cannot be used after |this| is destroyed.
|
| + std::unique_ptr<MojoDemuxerStreamImpl> audio_stream_;
|
| + std::unique_ptr<MojoDemuxerStreamImpl> video_stream_;
|
| +
|
| // This class is constructed on one thread and used exclusively on another
|
| // thread. This member is used to safely pass the RendererPtr from one thread
|
| // to another. It is set in the constructor and is consumed in Initialize().
|
|
|