vlc | branch: master | Adrien Maglo <[email protected]> | Fri Nov 8 13:36:27 2013 +0100| [902056ed64a0e0150dd96f553e82381c2363846d] | committer: Adrien Maglo
EGL: add the OpenGL ES 2.0 support for android > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=902056ed64a0e0150dd96f553e82381c2363846d --- modules/video_output/Modules.am | 7 +++++++ modules/video_output/egl.c | 9 +++++++++ modules/video_output/gl.c | 10 +++++----- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/modules/video_output/Modules.am b/modules/video_output/Modules.am index 3ac8af7..89304f9 100644 --- a/modules/video_output/Modules.am +++ b/modules/video_output/Modules.am @@ -182,12 +182,19 @@ endif ### Android ### +libegl_android_plugin_la_SOURCES = egl.c +libegl_android_plugin_la_CFLAGS = $(AM_CFLAGS) $(EGL_CFLAGS) -DUSE_PLATFORM_ANDROID=1 +libegl_android_plugin_la_LIBADD = $(EGL_LIBS) + libandroid_native_window_plugin_la_SOURCES = android/nativewindow.c libandroid_native_window_plugin_la_CFLAGS = $(AM_CFLAGS) libandroid_native_window_plugin_la_LIBADD = -ldl if HAVE_ANDROID vout_LTLIBRARIES += libandroid_native_window_plugin.la +if HAVE_EGL +vout_LTLIBRARIES += libegl_android_plugin.la +endif endif ### Coloured ASCII art ### diff --git a/modules/video_output/egl.c b/modules/video_output/egl.c index 58cbece..6d46c6f 100644 --- a/modules/video_output/egl.c +++ b/modules/video_output/egl.c @@ -209,6 +209,15 @@ static int Open (vlc_object_t *obj, const struct gl_api *api) window.native = wnd->handle.hwnd; # endif +#elif defined (USE_PLATFORM_ANDROID) + if (wnd->type != VOUT_WINDOW_TYPE_ANDROID_NATIVE) + goto error; + +# if USE_DEFAULT_PLATFORM + sys->display = eglGetDisplay(EGL_DEFAULT_DISPLAY); + window.native = wnd->handle.anativewindow; +# endif + #endif if (sys->display == EGL_NO_DISPLAY) diff --git a/modules/video_output/gl.c b/modules/video_output/gl.c index 7217eed..9034612 100644 --- a/modules/video_output/gl.c +++ b/modules/video_output/gl.c @@ -105,14 +105,14 @@ static vout_window_t *MakeWindow (vout_display_t *vd) }; vout_window_t *wnd; -#ifdef _WIN32 +#if defined(_WIN32) cfg.type = VOUT_WINDOW_TYPE_HWND; - wnd = vout_display_NewWindow (vd, &cfg); - if (wnd != NULL) - return wnd; +#elif defined(__ANDROID__) + cfg.type = VOUT_WINDOW_TYPE_ANDROID_NATIVE; +#else + cfg.type = VOUT_WINDOW_TYPE_XID; #endif - cfg.type = VOUT_WINDOW_TYPE_XID; wnd = vout_display_NewWindow (vd, &cfg); if (wnd != NULL) return wnd; _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
