Index: content/renderer/media/webmediaplayer_ms.h |
diff --git a/content/renderer/media/webmediaplayer_ms.h b/content/renderer/media/webmediaplayer_ms.h |
index 8fc8a04e7dbe3057a64d3448c379f19055c8d785..6c50a409fbbf551b68cbcc69a3f56f3bc0bf6675 100644 |
--- a/content/renderer/media/webmediaplayer_ms.h |
+++ b/content/renderer/media/webmediaplayer_ms.h |
@@ -14,6 +14,7 @@ |
#include "base/synchronization/lock.h" |
#include "base/threading/thread_checker.h" |
#include "content/common/content_export.h" |
+#include "content/renderer/media/media_stream.h" |
#include "media/blink/webmediaplayer_delegate.h" |
#include "media/blink/webmediaplayer_util.h" |
#include "media/renderers/gpu_video_accelerator_factories.h" |
@@ -62,7 +63,8 @@ class WebMediaPlayerMSCompositor; |
// blink::WebMediaPlayerClient |
// WebKit client of this media player object. |
class CONTENT_EXPORT WebMediaPlayerMS |
- : public NON_EXPORTED_BASE(blink::WebMediaPlayer), |
+ : public NON_EXPORTED_BASE(MediaStreamObserver), |
+ public NON_EXPORTED_BASE(blink::WebMediaPlayer), |
public NON_EXPORTED_BASE(media::WebMediaPlayerDelegate::Observer), |
public NON_EXPORTED_BASE(base::SupportsWeakPtr<WebMediaPlayerMS>) { |
public: |
@@ -177,6 +179,10 @@ class CONTENT_EXPORT WebMediaPlayerMS |
bool flip_y, |
bool premultiply_alpha) override; |
+ // MediaStreamObserver implementation |
+ void TrackAdded(const blink::WebMediaStreamTrack& track) override; |
+ void TrackRemoved(const blink::WebMediaStreamTrack& track) override; |
+ |
private: |
friend class WebMediaPlayerMSTest; |
@@ -199,6 +205,9 @@ class CONTENT_EXPORT WebMediaPlayerMS |
// Getter method to |client_|. |
blink::WebMediaPlayerClient* get_client() { return client_; } |
+ // To be run when tracks are added or removed. |
+ void Reload(); |
+ |
blink::WebLocalFrame* const frame_; |
blink::WebMediaPlayer::NetworkState network_state_; |
@@ -264,6 +273,7 @@ class CONTENT_EXPORT WebMediaPlayerMS |
// True if playback should be started upon the next call to OnShown(). Only |
// used on Android. |
bool should_play_upon_shown_; |
+ blink::WebMediaStream web_stream_; |
DISALLOW_COPY_AND_ASSIGN(WebMediaPlayerMS); |
}; |