OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_WEBMEDIAPLAYER_MS_H_ | 5 #ifndef CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_MS_H_ |
6 #define CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_MS_H_ | 6 #define CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_MS_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 public NON_EXPORTED_BASE(base::SupportsWeakPtr<WebMediaPlayerMS>) { | 67 public NON_EXPORTED_BASE(base::SupportsWeakPtr<WebMediaPlayerMS>) { |
68 public: | 68 public: |
69 // Construct a WebMediaPlayerMS with reference to the client, and | 69 // Construct a WebMediaPlayerMS with reference to the client, and |
70 // a MediaStreamClient which provides MediaStreamVideoRenderer. | 70 // a MediaStreamClient which provides MediaStreamVideoRenderer. |
71 WebMediaPlayerMS( | 71 WebMediaPlayerMS( |
72 blink::WebFrame* frame, | 72 blink::WebFrame* frame, |
73 blink::WebMediaPlayerClient* client, | 73 blink::WebMediaPlayerClient* client, |
74 base::WeakPtr<media::WebMediaPlayerDelegate> delegate, | 74 base::WeakPtr<media::WebMediaPlayerDelegate> delegate, |
75 media::MediaLog* media_log, | 75 media::MediaLog* media_log, |
76 std::unique_ptr<MediaStreamRendererFactory> factory, | 76 std::unique_ptr<MediaStreamRendererFactory> factory, |
77 const scoped_refptr<base::SingleThreadTaskRunner>& compositor_task_runner, | 77 scoped_refptr<base::SingleThreadTaskRunner> io_task_runner_, |
78 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner, | 78 scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner, |
79 const scoped_refptr<base::TaskRunner>& worker_task_runner, | 79 scoped_refptr<base::SingleThreadTaskRunner> media_task_runner, |
| 80 scoped_refptr<base::TaskRunner> worker_task_runner, |
80 media::GpuVideoAcceleratorFactories* gpu_factories, | 81 media::GpuVideoAcceleratorFactories* gpu_factories, |
81 const blink::WebString& sink_id, | 82 const blink::WebString& sink_id, |
82 const blink::WebSecurityOrigin& security_origin); | 83 const blink::WebSecurityOrigin& security_origin); |
83 | 84 |
84 ~WebMediaPlayerMS() override; | 85 ~WebMediaPlayerMS() override; |
85 | 86 |
86 void load(LoadType load_type, | 87 void load(LoadType load_type, |
87 const blink::WebMediaPlayerSource& source, | 88 const blink::WebMediaPlayerSource& source, |
88 CORSMode cors_mode) override; | 89 CORSMode cors_mode) override; |
89 | 90 |
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
206 scoped_refptr<MediaStreamAudioRenderer> audio_renderer_; // Weak | 207 scoped_refptr<MediaStreamAudioRenderer> audio_renderer_; // Weak |
207 media::SkCanvasVideoRenderer video_renderer_; | 208 media::SkCanvasVideoRenderer video_renderer_; |
208 | 209 |
209 bool paused_; | 210 bool paused_; |
210 media::VideoRotation video_rotation_; | 211 media::VideoRotation video_rotation_; |
211 | 212 |
212 scoped_refptr<media::MediaLog> media_log_; | 213 scoped_refptr<media::MediaLog> media_log_; |
213 | 214 |
214 std::unique_ptr<MediaStreamRendererFactory> renderer_factory_; | 215 std::unique_ptr<MediaStreamRendererFactory> renderer_factory_; |
215 | 216 |
| 217 const scoped_refptr<base::SingleThreadTaskRunner> io_task_runner_; |
| 218 const scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_; |
216 const scoped_refptr<base::SingleThreadTaskRunner> media_task_runner_; | 219 const scoped_refptr<base::SingleThreadTaskRunner> media_task_runner_; |
217 const scoped_refptr<base::TaskRunner> worker_task_runner_; | 220 const scoped_refptr<base::TaskRunner> worker_task_runner_; |
218 media::GpuVideoAcceleratorFactories* gpu_factories_; | 221 media::GpuVideoAcceleratorFactories* gpu_factories_; |
219 | 222 |
220 // Used for DCHECKs to ensure methods calls executed in the correct thread. | 223 // Used for DCHECKs to ensure methods calls executed in the correct thread. |
221 base::ThreadChecker thread_checker_; | 224 base::ThreadChecker thread_checker_; |
222 | 225 |
223 // WebMediaPlayerMS owns |compositor_| and destroys it on | 226 scoped_refptr<WebMediaPlayerMSCompositor> compositor_; |
224 // |compositor_task_runner_|. | |
225 std::unique_ptr<WebMediaPlayerMSCompositor> compositor_; | |
226 | |
227 const scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_; | |
228 | 227 |
229 const std::string initial_audio_output_device_id_; | 228 const std::string initial_audio_output_device_id_; |
230 const url::Origin initial_security_origin_; | 229 const url::Origin initial_security_origin_; |
231 | 230 |
232 // The last volume received by setVolume() and the last volume multiplier from | 231 // The last volume received by setVolume() and the last volume multiplier from |
233 // OnVolumeMultiplierUpdate(). The multiplier is typical 1.0, but may be less | 232 // OnVolumeMultiplierUpdate(). The multiplier is typical 1.0, but may be less |
234 // if the WebMediaPlayerDelegate has requested a volume reduction (ducking) | 233 // if the WebMediaPlayerDelegate has requested a volume reduction (ducking) |
235 // for a transient sound. Playout volume is derived by volume * multiplier. | 234 // for a transient sound. Playout volume is derived by volume * multiplier. |
236 double volume_; | 235 double volume_; |
237 double volume_multiplier_; | 236 double volume_multiplier_; |
238 | 237 |
239 // True if playback should be started upon the next call to OnShown(). Only | 238 // True if playback should be started upon the next call to OnShown(). Only |
240 // used on Android. | 239 // used on Android. |
241 bool should_play_upon_shown_; | 240 bool should_play_upon_shown_; |
242 | 241 |
243 DISALLOW_COPY_AND_ASSIGN(WebMediaPlayerMS); | 242 DISALLOW_COPY_AND_ASSIGN(WebMediaPlayerMS); |
244 }; | 243 }; |
245 | 244 |
246 } // namespace content | 245 } // namespace content |
247 | 246 |
248 #endif // CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_MS_H_ | 247 #endif // CONTENT_RENDERER_MEDIA_WEBMEDIAPLAYER_MS_H_ |
OLD | NEW |