[vlc-commits] native_window: add setBuffersGeometry

Thomas Guillem git at videolan.org
Sat Nov 15 12:27:21 CET 2014


vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Fri Nov 14 17:09:52 2014 +0100| [749c8a916015a14dcb24291223c4bafdb6bf51dd] | committer: Jean-Baptiste Kempf

native_window: add setBuffersGeometry

Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=749c8a916015a14dcb24291223c4bafdb6bf51dd
---

 modules/video_output/android/utils.c |    6 +++++-
 modules/video_output/android/utils.h |    2 ++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/modules/video_output/android/utils.c b/modules/video_output/android/utils.c
index ed3b905..8d39f3b 100644
--- a/modules/video_output/android/utils.c
+++ b/modules/video_output/android/utils.c
@@ -36,14 +36,18 @@ void *LoadNativeWindowAPI(native_window_api_t *native)
         (ptr_ANativeWindow_lock)(dlsym(p_library, "ANativeWindow_lock"));
     native->unlockAndPost =
         (ptr_ANativeWindow_unlockAndPost)(dlsym(p_library, "ANativeWindow_unlockAndPost"));
+    native->setBuffersGeometry =
+        (ptr_ANativeWindow_setBuffersGeometry)(dlsym(p_library, "ANativeWindow_setBuffersGeometry"));
 
-    if (native->winFromSurface && native->winRelease && native->winLock && native->unlockAndPost)
+    if (native->winFromSurface && native->winRelease && native->winLock
+        && native->unlockAndPost && native->setBuffersGeometry)
         return p_library;
 
     native->winFromSurface = NULL;
     native->winRelease = NULL;
     native->winLock = NULL;
     native->unlockAndPost = NULL;
+    native->setBuffersGeometry = NULL;
 
     dlclose(p_library);
     return NULL;
diff --git a/modules/video_output/android/utils.h b/modules/video_output/android/utils.h
index e78c688..b0df281 100644
--- a/modules/video_output/android/utils.h
+++ b/modules/video_output/android/utils.h
@@ -35,6 +35,7 @@ typedef ANativeWindow* (*ptr_ANativeWindow_fromSurface)(JNIEnv*, jobject);
 typedef void (*ptr_ANativeWindow_release)(ANativeWindow*);
 typedef int32_t (*ptr_ANativeWindow_lock)(ANativeWindow*, ANativeWindow_Buffer*, ARect*);
 typedef void (*ptr_ANativeWindow_unlockAndPost)(ANativeWindow*);
+typedef int32_t (*ptr_ANativeWindow_setBuffersGeometry)(ANativeWindow*, int32_t, int32_t, int32_t);
 
 typedef struct
 {
@@ -42,6 +43,7 @@ typedef struct
     ptr_ANativeWindow_release winRelease;
     ptr_ANativeWindow_lock winLock;
     ptr_ANativeWindow_unlockAndPost unlockAndPost;
+    ptr_ANativeWindow_setBuffersGeometry setBuffersGeometry;
 } native_window_api_t;
 
 /* Fill the structure passed as parameter and return a library handle



More information about the vlc-commits mailing list