OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_PLAYER_RENDERER_CLIENT_H_ | 5 #ifndef CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_PLAYER_RENDERER_CLIENT_H_ |
6 #define CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_PLAYER_RENDERER_CLIENT_H_ | 6 #define CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_PLAYER_RENDERER_CLIENT_H_ |
7 | 7 |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
9 #include "base/macros.h" | 9 #include "base/macros.h" |
10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 | 70 |
71 // Called on |compositor_task_runner_| whenever |stream_texture_wrapper_| has | 71 // Called on |compositor_task_runner_| whenever |stream_texture_wrapper_| has |
72 // a new frame. | 72 // a new frame. |
73 void OnFrameAvailable(); | 73 void OnFrameAvailable(); |
74 | 74 |
75 private: | 75 private: |
76 void InitializeRemoteRenderer( | 76 void InitializeRemoteRenderer( |
77 media::DemuxerStreamProvider* demuxer_stream_provider); | 77 media::DemuxerStreamProvider* demuxer_stream_provider); |
78 void CompleteInitialization(media::PipelineStatus status); | 78 void CompleteInitialization(media::PipelineStatus status); |
79 | 79 |
| 80 void OnScopedSurfaceRequested(const base::UnguessableToken& request_token); |
| 81 |
80 // Used to forward calls to the MediaPlayerRenderer living in the Browser. | 82 // Used to forward calls to the MediaPlayerRenderer living in the Browser. |
81 std::unique_ptr<media::MojoRenderer> mojo_renderer_; | 83 std::unique_ptr<media::MojoRenderer> mojo_renderer_; |
82 | 84 |
83 // Owns the StreamTexture whose surface is used by MediaPlayerRenderer. | 85 // Owns the StreamTexture whose surface is used by MediaPlayerRenderer. |
84 // Provides the VideoFrames to |sink_|. | 86 // Provides the VideoFrames to |sink_|. |
85 media::ScopedStreamTextureWrapper stream_texture_wrapper_; | 87 media::ScopedStreamTextureWrapper stream_texture_wrapper_; |
86 | 88 |
87 media::RendererClient* client_; | 89 media::RendererClient* client_; |
88 | 90 |
89 media::VideoRendererSink* sink_; | 91 media::VideoRendererSink* sink_; |
90 | 92 |
91 scoped_refptr<base::SingleThreadTaskRunner> media_task_runner_; | 93 scoped_refptr<base::SingleThreadTaskRunner> media_task_runner_; |
92 | 94 |
93 // Used by |stream_texture_wrapper_| to signal OnFrameAvailable() and to send | 95 // Used by |stream_texture_wrapper_| to signal OnFrameAvailable() and to send |
94 // VideoFrames to |sink_| on the right thread. | 96 // VideoFrames to |sink_| on the right thread. |
95 scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_; | 97 scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_; |
96 | 98 |
97 media::PipelineStatusCB init_cb_; | 99 media::PipelineStatusCB init_cb_; |
98 | 100 |
99 // NOTE: Weak pointers must be invalidated before all other member variables. | 101 // NOTE: Weak pointers must be invalidated before all other member variables. |
100 base::WeakPtrFactory<MediaPlayerRendererClient> weak_factory_; | 102 base::WeakPtrFactory<MediaPlayerRendererClient> weak_factory_; |
101 | 103 |
102 DISALLOW_COPY_AND_ASSIGN(MediaPlayerRendererClient); | 104 DISALLOW_COPY_AND_ASSIGN(MediaPlayerRendererClient); |
103 }; | 105 }; |
104 | 106 |
105 } // namespace content | 107 } // namespace content |
106 | 108 |
107 #endif // CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_PLAYER_RENDERER_CLIENT_H_ | 109 #endif // CONTENT_RENDERER_MEDIA_ANDROID_MEDIA_PLAYER_RENDERER_CLIENT_H_ |
OLD | NEW |