Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(893)

Side by Side Diff: content/renderer/media/webmediaplayer_ms.h

Issue 2529263004: Move passing of WebRTC rendering frames to IO thread (Closed)
Patch Set: ncarter@ comment. Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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_
OLDNEW
« no previous file with comments | « content/renderer/media/media_stream_video_renderer_sink_unittest.cc ('k') | content/renderer/media/webmediaplayer_ms.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698