[M120 Migration][MM][WebRTC] Base implementation for webrtc video hole stream
[platform/framework/web/chromium-efl.git] / media / mojo / clients / mojo_renderer.h
index aa08217..5bf3a50 100644 (file)
@@ -62,6 +62,10 @@ class MojoRenderer : public Renderer, public mojom::RendererClient {
 #if defined(TIZEN_MULTIMEDIA)
   void Seek(base::TimeDelta time, base::OnceClosure seek_cb) override;
   void Suspend() override;
+  void EnableLowLatencyMode() override;
+  void SetHardwareResource(mojom::HardwareResourceConfig config,
+                           SetHardwareResourceCB cb) override;
+  void RequestVideoDecodedBuffer(RequestVideoDecodedBufferCB cb) override;
   void ToggleFullscreenMode(bool is_fullscreen,
                             ToggledFullscreenCB cb) override;
 #endif
@@ -72,17 +76,23 @@ class MojoRenderer : public Renderer, public mojom::RendererClient {
   RendererType GetRendererType() override;
 
 #if defined(TIZEN_VIDEO_HOLE)
+  void SetPlayerVideoAbove(int32_t other_id) override;
+  void UseSubsurfaceController() override;
   void SetVideoHole(bool is_video_hole) override;
-  void SetMediaGeometry(const gfx::RectF& rect) override;
+  void SetMediaGeometry(const gfx::RectF& rect,
+                        VideoRotation rotation) override;
 #endif
 
 #if BUILDFLAG(IS_TIZEN_TV)
+  void GetVideoId(GetVideoIdCB cb) override;
   void SetContentMimeType(const std::string& mime_type) override;
   void SetParentalRatingResult(bool is_pass) override;
   void SetActiveTextTrack(int id, bool is_in_band) override;
   void SetActiveAudioTrack(int index) override;
   void SetActiveVideoTrack(int index) override;
   void SetPreferTextLanguage(const std::string& lang) override;
+  void GetStartDate(StartDateCB cb) override;
+  void DestroyPlayerSync(base::OnceClosure cb) override;
 #endif
 
  private:
@@ -138,6 +148,10 @@ class MojoRenderer : public Renderer, public mojom::RendererClient {
   void OnSeekCompleted();
 #endif
 
+#if BUILDFLAG(IS_TIZEN_TV)
+  void OnPlayerDestroyed();
+#endif
+
   void CancelPendingCallbacks();
 
   // |task_runner| on which all methods are invoked, except for GetMediaTime(),
@@ -189,6 +203,10 @@ class MojoRenderer : public Renderer, public mojom::RendererClient {
   base::OnceClosure seek_cb_;
 #endif
 
+#if BUILDFLAG(IS_TIZEN_TV)
+  base::OnceClosure player_destroy_cb_;
+#endif
+
   float volume_ = 1.0f;
 
   // Lock used to serialize access for |time_interpolator_|.