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

Unified Diff: media/mojo/clients/mojo_renderer_impl.h

Issue 2075303002: [DO NOT COMMIT] Initial MediaPlayerRenderer plumbing and basic features (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months 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 side-by-side diff with in-line comments
Download patch
Index: media/mojo/clients/mojo_renderer_impl.h
diff --git a/media/mojo/clients/mojo_renderer_impl.h b/media/mojo/clients/mojo_renderer_impl.h
index 9b60afe5b494cfaf46542be3f3de43818b836637..ffd477d3d55e13c4d6b610c0ac5aefbd505f4a6b 100644
--- a/media/mojo/clients/mojo_renderer_impl.h
+++ b/media/mojo/clients/mojo_renderer_impl.h
@@ -9,8 +9,10 @@
#include "base/macros.h"
#include "media/base/renderer.h"
+#include "media/base/surface_manager.h"
#include "media/mojo/interfaces/renderer.mojom.h"
#include "mojo/public/cpp/bindings/binding.h"
+#include "url/gurl.h"
namespace base {
class SingleThreadTaskRunner;
@@ -55,6 +57,11 @@ class MojoRendererImpl : public Renderer, public mojom::RendererClient {
bool HasAudio() override;
bool HasVideo() override;
+#if defined(OS_ANDROID)
+ void SetUrl(const GURL& url);
+ void SetRequestSurfaceCB(const RequestSurfaceCB& request_surface_cb);
+#endif
+
private:
// mojom::RendererClient implementation, dispatched on the
// |task_runner_|.
@@ -64,12 +71,16 @@ class MojoRendererImpl : public Renderer, public mojom::RendererClient {
void OnError() override;
void OnVideoNaturalSizeChange(const gfx::Size& size) override;
void OnVideoOpacityChange(bool opaque) override;
+ void OnDurationChange(int64_t duration_usec) override;
// Binds |remote_renderer_| to the mojo message pipe. Can be called multiple
// times. If an error occurs during connection, OnConnectionError will be
// called asynchronously.
void BindRemoteRendererIfNeeded();
+ void InitializeRenderer();
+ void OnSurfaceCreated(int surface_id);
+
// Callback for connection error on |remote_renderer_|.
void OnConnectionError();
@@ -114,6 +125,12 @@ class MojoRendererImpl : public Renderer, public mojom::RendererClient {
mutable base::Lock lock_;
base::TimeDelta time_;
+#if defined(OS_ANDROID)
+ GURL url_;
+ RequestSurfaceCB request_surface_cb_;
+ int surface_id_;
+#endif
+
DISALLOW_COPY_AND_ASSIGN(MojoRendererImpl);
};

Powered by Google App Engine
This is Rietveld 408576698