Index: content/renderer/media/webmediaplayer_ms.h |
diff --git a/content/renderer/media/webmediaplayer_ms.h b/content/renderer/media/webmediaplayer_ms.h |
index ba92086059b4a0febb21298d2fe64109e2172b5f..f5fc6d691c9b739063f48470eeeb04d40b7685a1 100644 |
--- a/content/renderer/media/webmediaplayer_ms.h |
+++ b/content/renderer/media/webmediaplayer_ms.h |
@@ -160,9 +160,14 @@ class CONTENT_EXPORT WebMediaPlayerMS |
private: |
friend class WebMediaPlayerMSTest; |
- // The callback for MediaStreamVideoRenderer to signal a new frame is |
- // available. |
- void OnFrameAvailable(const scoped_refptr<media::VideoFrame>& frame); |
+ // Inner class used for transfering frames on compositor thread to |
+ // |compositor_|. |
+ class FrameDelivererOnCompositor; |
+ |
+ void OnFirstFrameReceived(media::VideoRotation video_rotation, |
+ bool is_opaque); |
+ void OnOpacityChanged(bool is_opaque); |
+ |
// Need repaint due to state change. |
void RepaintInternal(); |
@@ -193,6 +198,8 @@ class CONTENT_EXPORT WebMediaPlayerMS |
const base::WeakPtr<media::WebMediaPlayerDelegate> delegate_; |
int delegate_id_; |
+ std::unique_ptr<FrameDelivererOnCompositor> frame_deliverer_; |
+ |
scoped_refptr<MediaStreamVideoRenderer> video_frame_provider_; // Weak |
std::unique_ptr<cc_blink::WebLayerImpl> video_weblayer_; |
@@ -200,10 +207,7 @@ class CONTENT_EXPORT WebMediaPlayerMS |
scoped_refptr<MediaStreamAudioRenderer> audio_renderer_; // Weak |
media::SkCanvasVideoRenderer video_renderer_; |
- bool last_frame_opaque_; |
bool paused_; |
- bool render_frame_suspended_; |
- bool received_first_frame_; |
media::VideoRotation video_rotation_; |
scoped_refptr<media::MediaLog> media_log_; |