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

Unified Diff: content/common/gpu/media/android_deferred_rendering_backing_strategy.h

Issue 1639963002: AndroidVideoDecodeAccelerator can now render to a SurfaceView (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase only Created 4 years, 11 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: content/common/gpu/media/android_deferred_rendering_backing_strategy.h
diff --git a/content/common/gpu/media/android_deferred_rendering_backing_strategy.h b/content/common/gpu/media/android_deferred_rendering_backing_strategy.h
index 6fc1873cf5a2de07e0544efe20b32a2ce333a870..4b8bd6d19e2845fd16e23b346b9aa63d992024fe 100644
--- a/content/common/gpu/media/android_deferred_rendering_backing_strategy.h
+++ b/content/common/gpu/media/android_deferred_rendering_backing_strategy.h
@@ -33,15 +33,16 @@ class AVDASharedState;
class CONTENT_EXPORT AndroidDeferredRenderingBackingStrategy
: public AndroidVideoDecodeAccelerator::BackingStrategy {
public:
- AndroidDeferredRenderingBackingStrategy();
+ explicit AndroidDeferredRenderingBackingStrategy(
+ AVDAStateProvider* state_provider);
~AndroidDeferredRenderingBackingStrategy() override;
// AndroidVideoDecodeAccelerator::BackingStrategy
- void Initialize(AVDAStateProvider*) override;
+ gfx::ScopedJavaSurface Initialize(int surface_view_id) override;
void Cleanup(bool have_context,
const AndroidVideoDecodeAccelerator::OutputBufferMap&) override;
+ scoped_refptr<gfx::SurfaceTexture> GetSurfaceTexture() const override;
uint32_t GetTextureTarget() const override;
- scoped_refptr<gfx::SurfaceTexture> CreateSurfaceTexture() override;
void UseCodecBufferForPictureBuffer(int32_t codec_buffer_index,
const media::PictureBuffer&) override;
void AssignOnePictureBuffer(const media::PictureBuffer&) override;
@@ -51,6 +52,7 @@ class CONTENT_EXPORT AndroidDeferredRenderingBackingStrategy
media::VideoCodecBridge*,
const AndroidVideoDecodeAccelerator::OutputBufferMap&) override;
void OnFrameAvailable() override;
+ bool ArePicturesOverlayable() override;
private:
// Release any codec buffer that is associated with the given picture buffer
@@ -69,6 +71,8 @@ class CONTENT_EXPORT AndroidDeferredRenderingBackingStrategy
AVDAStateProvider* state_provider_;
+ // The SurfaceTexture to render to. Non-null after Initialize() if
+ // we're not rendering to a SurfaceView.
scoped_refptr<gfx::SurfaceTexture> surface_texture_;
media::VideoCodecBridge* media_codec_;

Powered by Google App Engine
This is Rietveld 408576698