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

Unified Diff: content/public/android/java/src/org/chromium/content/browser/ContentViewClient.java

Issue 132233042: Enable the embedded L1/EME support in WebView. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed boliu's comments and rebased. Created 6 years, 10 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/public/android/java/src/org/chromium/content/browser/ContentViewClient.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/ContentViewClient.java b/content/public/android/java/src/org/chromium/content/browser/ContentViewClient.java
index f8706510de374eca83a599ea0c1f8aa41b010a6e..a68490bdeba7ee78747460c78b4f09071dc888ab 100644
--- a/content/public/android/java/src/org/chromium/content/browser/ContentViewClient.java
+++ b/content/public/android/java/src/org/chromium/content/browser/ContentViewClient.java
@@ -161,10 +161,55 @@ public class ContentViewClient {
}
}
- public void onExternalVideoSurfaceRequested(int playerId) {
+ // Please contact ycheo@chromium.org (or wonsik@) if you have any questions on the following.
Ted C 2014/02/11 18:05:47 Not something for this change, but I'd like to see
ycheo (away) 2014/02/14 07:41:04 Done.
+ // The expected behavior of the media player on the video hole punching is as follows.
+ // 1) If it requests the surface, it will call onRequestExternalVideoSurface().
+ // When the resolution of the video is changed, it'll call onRequestExternalVideoSurface().
+ // 2) Whenever the size or the position of the video element is changed, it'll notify through
+ // onExternalVideoSurfacePositionChanged().
+ // 3) Whenever the page to contain the video element is scrolled or zoomed,
Ted C 2014/02/11 18:05:47 "the page [that] contain[s]"
ycheo (away) 2014/02/14 07:41:04 Done.
+ // onExternalVideoSurfaceRenderCoordinatesChanged() will be called.
+ // 4) Usually steps 1) ~ 3) are repeated during the playback.
+ // 5) If the player want not to use the surface any more, it'll call
Ted C 2014/02/11 18:05:47 If the player [no longer needs] the surface anymor
ycheo (away) 2014/02/14 07:41:04 Done.
+ // onReleaseExternalVideoSurface().
+ //
+ // After onRequestExternalVideoSurface() is called, when the surface is created and visible,
+ // calling ContentViewCore.attachExternalVideoSurface() is expected to associate the surface
+ // with the player.
+ // Before onReleaseExternalVideoSurface() is finished or when the surface is invisible,
+ // calling ContentViewCore.detachExternalVideoSurface() is expected to release the association.
+
+ /**
+ * Called when a media player wants to request an external video surface.
+ * This method is used only for the video hole punching.
+ * @param playerId The ID of the media player.
+ */
+ public void onRequestExternalVideoSurface(int playerId) {
+ }
+
+ /**
+ * Called when a media player wants to release an external video surface.
+ * This method is used only for the video hole punching.
+ * @param playerId The ID of the media player.
+ */
+ public void onReleaseExternalVideoSurface(int playerId) {
}
- public void onGeometryChanged(int playerId, RectF rect) {
+ /**
+ * Called when the position of the video element which uses the external
+ * video surface is changed.
+ * This method is used only for the video hole punching.
+ * @param playerId The ID of the media player.
+ * @param rect The boundary rectangle of the video element.
+ */
+ public void onExternalVideoSurfacePositionChanged(int playerId, RectF rect) {
+ }
+
+ /**
+ * Called when RenderCoordinates are updated.
+ * This method is used only for the video hole punching.
+ */
+ public void onExternalVideoSurfaceRenderCoordinatesChanged() {
}
public ContentVideoViewClient getContentVideoViewClient() {

Powered by Google App Engine
This is Rietveld 408576698