Video frame notification in Android application

VLC for Android and Chrome OS specific usage questions
gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Video frame notification in Android application

Postby gregoiregentil » 02 Jul 2013 16:09

Hello,

I would like to get a notification when a new frame has been decoded and is rendered by the Android application. Is there anything in libvlcjni.c that knows about frame? Or perhaps there is a callback possible with the surface about rendering? Any advice would be appreciated. Many thanks in advance.

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: Video frame notification in Android application

Postby Jean-Baptiste Kempf » 02 Jul 2013 16:22

You could do that in the video output module code.
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 03 Jul 2013 06:12

Thank you Jean-Baptiste. But I'm not sure to understand. Can you be more precise? Do you mean in libvlcjni.c or below?

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: Video frame notification in Android application

Postby Jean-Baptiste Kempf » 03 Jul 2013 16:27

below :)
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 05 Jul 2013 02:24

To achieve my goal, as a proof of concept, I have modified one of the video filters. It works on my x86 PC and it cross-compiles fine for Android. In libvlcjni.c, I have then tried to add in "libvlc_media_t *new_media(...)":
libvlc_media_add_option(p_md, ":video-filter=sharpen"); and all combinations you could ever imagine with "-" ":" "v" "video" "filter". But the filter is never applied.

Question: How can I apply a video filter from libvlcjni.c?

edwardw
Big Cone-huna
Big Cone-huna
Posts: 2346
Joined: 24 Jun 2012 23:36
VLC version: 3.0.0-git

Re: Video frame notification in Android application

Postby edwardw » 05 Jul 2013 03:18

Sharpen filter is disabled in the Android build...

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 05 Jul 2013 05:40

Well, if I introduce a typo in sharpen.c, the build stops ;-)

edwardw
Big Cone-huna
Big Cone-huna
Posts: 2346
Joined: 24 Jun 2012 23:36
VLC version: 3.0.0-git

Re: Video frame notification in Android application

Postby edwardw » 05 Jul 2013 19:06

So?

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 06 Jul 2013 01:01

It's like you just give me small pieces of advice... I'm thinking that if something compiles, it's integrated into the binaries. Your answer seems to imply that it's not. But, then I have carefully inspected configure and there is no video_filter option. I'm confused? Can you please elaborate?

edwardw
Big Cone-huna
Big Cone-huna
Posts: 2346
Joined: 24 Jun 2012 23:36
VLC version: 3.0.0-git

Re: Video frame notification in Android application

Postby edwardw » 06 Jul 2013 03:38

The shapen plugin is not statically linked into libvlcjni.so, hence it does not exist in the final build and cannot be used (see find_modules.sh)

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 06 Jul 2013 05:04

I have removed "sharpen" from find_modules.sh blacklist.

I have applied that patch: http://comments.gmane.org/gmane.comp.vi ... evel/81357

I have added libvlc_set_video_filters_string(mp, "video-filter", "sharpen"); to libvlcjni.c

Nevertheless, a specific string in sharpen.c doesn't show up in libvlcjni.so though libsharpen_plugin.a is in the list provided by find_modules.sh

The application doesn't crash but the filter is certainly not called.

Any idea what I'm missing?

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 06 Jul 2013 05:10

Correction: I have added libvlc_set_video_filter(mp, "sharpen", 1); to libvlcjni.c. I think that I'm not that far. I just need to force the plugin to be present in libvlcjni.so. How can I achieve that?

edwardw
Big Cone-huna
Big Cone-huna
Posts: 2346
Joined: 24 Jun 2012 23:36
VLC version: 3.0.0-git

Re: Video frame notification in Android application

Postby edwardw » 07 Jul 2013 02:42

Check the logs.

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 08 Jul 2013 08:40

I might be further than I was expecting and hoping! I saw two problems:
- first, sharpen module is not integrated into libvlcjni.so when it's compiled through Eclipse. When I run ./compile.sh, it is integrated. I have the same Android.mk in both cases and they are using the same compilation folder... Below is the log of the compilation through Eclipse when the sharpen module is NOT integrated.
- secondly, even when the sharpen module is in libvlcjni.so on the device, the filter is not called despite the 'libvlc_set_video_filter(mp, "sharpen", 1)' mentioned above.
Any idea?

Code: Select all

SharedLibrary : libvlcjni.so Using built-in specs. COLLECT_GCC=/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ COLLECT_LTO_WRAPPER=/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../libexec/gcc/arm-linux-androideabi/4.6/lto-wrapper Target: arm-linux-androideabi Configured with: /s/ndk-toolchain/src/build/../gcc/gcc-4.6/configure --prefix=/tmp/ndk-andrewhsieh/build/toolchain/prefix --target=arm-linux-androideabi --host=x86_64-linux-gnu --build=x86_64-linux-gnu --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --with-gmp=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-mpfr=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-mpc=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-cloog=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-ppl=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --disable-ppl-version-check --disable-cloog-version-check --enable-cloog-backend=isl --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --disable-libssp --enable-threads --disable-nls --disable-libmudflap --disable-libgomp --disable-libstdc__-v3 --disable-sjlj-exceptions --disable-shared --disable-tls --disable-libitm --with-float=soft --with-fpu=vfp --with-arch=armv5te --enable-target-optspace --enable-initfini-array --disable-nls --prefix=/tmp/ndk-andrewhsieh/build/toolchain/prefix --with-sysroot=/tmp/ndk-andrewhsieh/build/toolchain/prefix/sysroot --with-binutils-version=2.21 --with-mpfr-version=3.1.1 --with-mpc-version=1.0.1 --with-gmp-version=5.0.5 --with-gcc-version=4.6 --with-gdb-version=7.3.x --with-gxx-include-dir=/tmp/ndk-andrewhsieh/build/toolchain/prefix/include/c++/4.6 --with-bugurl=http://source.android.com/source/report-bugs.html --disable-bootstrap --disable-libquadmath --enable-plugins --enable-libgomp --enable-gold --enable-graphite=yes --with-cloog-version=0.17.0 --with-ppl-version=1.0 --with-arch=armv5te --program-transform-name='s&^&arm-linux-androideabi-&' --enable-gold=default Thread model: posix gcc version 4.6 20120106 (prerelease) (GCC) COMPILER_PATH=/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../libexec/gcc/arm-linux-androideabi/4.6/:/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../libexec/gcc/:/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ LIBRARY_PATH=/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/:/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/:/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/lib/:/opt/google/android/ndk-r8e/platforms/android-9/arch-arm/usr/lib/ COLLECT_GCC_OPTIONS='-shared' '-L/opt/google/android/ndk-r8e/platforms/android-9/arch-arm/usr/lib' '-v' '-L../res-src/vlc/contrib/arm-linux-androideabi/lib' '-o' '/work/ai.private/aiVLC/obj/local/armeabi/libvlcjni.so' '-march=armv5te' '-mfloat-abi=soft' '-mfpu=vfp' /opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../libexec/gcc/arm-linux-androideabi/4.6/collect2 --sysroot=/opt/google/android/ndk-r8e/platforms/android-9/arch-arm --eh-frame-hdr -shared -dynamic-linker /system/bin/linker -X -m armelf_linux_eabi -Bsymbolic -z noexecstack -z relro -z now -o /work/ai.private/aiVLC/obj/local/armeabi/libvlcjni.so /opt/google/android/ndk-r8e/platforms/android-9/arch-arm/usr/lib/crtbegin_so.o -L/opt/google/android/ndk-r8e/platforms/android-9/arch-arm/usr/lib -L../res-src/vlc/contrib/arm-linux-androideabi/lib -L/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6 -L/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc -L/opt/google/android/ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/lib -L/opt/google/android/ndk-r8e/platforms/android-9/arch-arm/usr/lib -soname libvlcjni.so /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/libvlcjni.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/aout.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/thumbnailer.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/pthread-condattr.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/pthread-rwlocks.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/pthread-once.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/eventfd.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/sem.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/pipe2.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcpcpy.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcpncpy.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcscasecmp.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcscat.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcschr.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcscmp.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcscoll.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcscpy.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcscspn.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsdup.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcslcat.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcslcpy.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcslen.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsncasecmp.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsncat.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsncmp.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsncpy.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsnlen.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcspbrk.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsrchr.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsspn.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsstr.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcstok.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcswidth.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wcsxfrm.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wmemchr.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wmemcmp.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wmemcpy.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wmemmove.o /work/ai.private/aiVLC/obj/local/armeabi/objs/vlcjni/wchar/wmemset.o -lgcc --no-undefined -z noexecstack -z relro -z now ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_transcode_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_display_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_raop_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_bridge_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_langfromtelx_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_setid_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_gather_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_duplicate_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_mosaic_bridge_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_smem_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_description_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_standard_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_rtp_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_delay_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_record_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_es_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_autodel_plugin.a ../res-src/vlc/android/modules/stream_out/.libs/libstream_out_dummy_plugin.a ../res-src/vlc/android/modules/misc/.libs/libgnutls_plugin.a ../res-src/vlc/android/modules/misc/.libs/libxml_plugin.a ../res-src/vlc/android/modules/misc/.libs/libvod_rtsp_plugin.a ../res-src/vlc/android/modules/control/.libs/libdummy_plugin.a ../res-src/vlc/android/modules/meta_engine/.libs/libfolder_plugin.a ../res-src/vlc/android/modules/meta_engine/.libs/libtaglib_plugin.a ../res-src/vlc/android/modules/audio_mixer/.libs/libinteger_mixer_plugin.a ../res-src/vlc/android/modules/audio_mixer/.libs/libfloat32_mixer_plugin.a ../res-src/vlc/android/modules/access_output/.libs/libaccess_output_file_plugin.a ../res-src/vlc/android/modules/access_output/.libs/libaccess_output_udp_plugin.a ../res-src/vlc/android/modules/access_output/.libs/libaccess_output_http_plugin.a ../res-src/vlc/android/modules/access_output/.libs/libaccess_output_dummy_plugin.a ../res-src/vlc/android/modules/access_output/.libs/libaccess_output_livehttp_plugin.a ../res-src/vlc/android/modules/text_renderer/.libs/libfreetype_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/libgrey_yuv_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/libi422_i420_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/libyuy2_i420_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/libi420_yuy2_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/libyuy2_i422_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/libi420_rgb_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/librv32_plugin.a ../res-src/vlc/android/modules/video_chroma/.libs/libi422_yuy2_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libgradfun_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libcolorthres_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libswscale_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libadjust_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libpostproc_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/liblogo_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libtransform_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libscale_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libinvert_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libantiflicker_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libgaussianblur_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libblend_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libhqdn3d_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libcanvas_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libsepia_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libyuvp_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libwave_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/librotate_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libchain_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libcroppadd_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libextract_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libmarq_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libsubsdelay_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libdeinterlace_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libsharpen_plugin.a ../res-src/vlc/android/modules/video_filter/.libs/libanaglyph_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libheadphone_channel_mixer_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/liba52tofloat32_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libaudio_format_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libkaraoke_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libmono_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libscaletempo_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libstereo_widen_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libchorus_flanger_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libgain_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libnormvol_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libtrivial_channel_mixer_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libaudio_endian_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libsimple_channel_mixer_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libdolby_surround_decoder_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libugly_resampler_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libremap_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libspatializer_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libparam_eq_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libequalizer_plugin.a ../res-src/vlc/android/modules/audio_filter/.libs/libcompressor_plugin.a ../res-src/vlc/android/modules/codec/.libs/libsubsdec_plugin.a ../res-src/vlc/android/modules/codec/.libs/libcvdsub_plugin.a ../res-src/vlc/android/modules/codec/.libs/libopus_plugin.a ../res-src/vlc/android/modules/codec/.libs/liblpcm_plugin.a ../res-src/vlc/android/modules/codec/.libs/libstl_plugin.a ../res-src/vlc/android/modules/codec/.libs/libmediacodec_plugin.a ../res-src/vlc/android/modules/codec/.libs/libflac_plugin.a ../res-src/vlc/android/modules/codec/.libs/libavcodec_plugin.a ../res-src/vlc/android/modules/codec/.libs/liblibmpeg2_plugin.a ../res-src/vlc/android/modules/codec/.libs/libcdg_plugin.a ../res-src/vlc/android/modules/codec/.libs/libadpcm_plugin.a ../res-src/vlc/android/modules/codec/.libs/libspeex_plugin.a ../res-src/vlc/android/modules/codec/.libs/libcc_plugin.a ../res-src/vlc/android/modules/codec/.libs/libpng_plugin.a ../res-src/vlc/android/modules/codec/.libs/libdts_plugin.a ../res-src/vlc/android/modules/codec/.libs/libuleaddvaudio_plugin.a ../res-src/vlc/android/modules/codec/.libs/libtelx_plugin.a ../res-src/vlc/android/modules/codec/.libs/libaraw_plugin.a ../res-src/vlc/android/modules/codec/.libs/liblibass_plugin.a ../res-src/vlc/android/modules/codec/.libs/libaes3_plugin.a ../res-src/vlc/android/modules/codec/.libs/libiomx_plugin.a ../res-src/vlc/android/modules/codec/.libs/libdvbsub_plugin.a ../res-src/vlc/android/modules/codec/.libs/librawvideo_plugin.a ../res-src/vlc/android/modules/codec/.libs/libspudec_plugin.a ../res-src/vlc/android/modules/codec/.libs/libsvcdsub_plugin.a ../res-src/vlc/android/modules/codec/.libs/libtheora_plugin.a ../res-src/vlc/android/modules/codec/.libs/libsubsusf_plugin.a ../res-src/vlc/android/modules/codec/.libs/libmpeg_audio_plugin.a ../res-src/vlc/android/modules/codec/.libs/liba52_plugin.a ../res-src/vlc/android/modules/demux/.libs/librawaud_plugin.a ../res-src/vlc/android/modules/demux/.libs/libdemux_cdg_plugin.a ../res-src/vlc/android/modules/demux/.libs/libsubtitle_plugin.a ../res-src/vlc/android/modules/demux/.libs/libnsv_plugin.a ../res-src/vlc/android/modules/demux/.libs/libdemux_stl_plugin.a ../res-src/vlc/android/modules/demux/.libs/libts_plugin.a ../res-src/vlc/android/modules/demux/.libs/libty_plugin.a ../res-src/vlc/android/modules/demux/.libs/libmpgv_plugin.a ../res-src/vlc/android/modules/demux/.libs/libplaylist_plugin.a ../res-src/vlc/android/modules/demux/.libs/librawdv_plugin.a ../res-src/vlc/android/modules/demux/.libs/libes_plugin.a ../res-src/vlc/android/modules/demux/.libs/libasf_plugin.a ../res-src/vlc/android/modules/demux/.libs/libvobsub_plugin.a ../res-src/vlc/android/modules/demux/.libs/libps_plugin.a ../res-src/vlc/android/modules/demux/.libs/libnuv_plugin.a ../res-src/vlc/android/modules/demux/.libs/libaiff_plugin.a ../res-src/vlc/android/modules/demux/.libs/libflacsys_plugin.a ../res-src/vlc/android/modules/demux/.libs/libxa_plugin.a ../res-src/vlc/android/modules/demux/.libs/libtta_plugin.a ../res-src/vlc/android/modules/demux/.libs/libmjpeg_plugin.a ../res-src/vlc/android/modules/demux/.libs/libogg_plugin.a ../res-src/vlc/android/modules/demux/.libs/libmkv_plugin.a ../res-src/vlc/android/modules/demux/.libs/libmp4_plugin.a ../res-src/vlc/android/modules/demux/.libs/libimage_plugin.a ../res-src/vlc/android/modules/demux/.libs/libavi_plugin.a ../res-src/vlc/android/modules/demux/.libs/libdirac_plugin.a ../res-src/vlc/android/modules/demux/.libs/libdemuxdump_plugin.a ../res-src/vlc/android/modules/demux/.libs/libvoc_plugin.a ../res-src/vlc/android/modules/demux/.libs/libpva_plugin.a ../res-src/vlc/android/modules/demux/.libs/librawvid_plugin.a ../res-src/vlc/android/modules/demux/.libs/libau_plugin.a ../res-src/vlc/android/modules/demux/.libs/libwav_plugin.a ../res-src/vlc/android/modules/demux/.libs/libh264_plugin.a ../res-src/vlc/android/modules/demux/.libs/libvc1_plugin.a ../res-src/vlc/android/modules/demux/.libs/liblive555_plugin.a ../res-src/vlc/android/modules/demux/.libs/libnsc_plugin.a ../res-src/vlc/android/modules/demux/.libs/libavformat_plugin.a ../res-src/vlc/android/modules/stream_filter/.libs/libdash_plugin.a ../res-src/vlc/android/modules/stream_filter/.libs/libsmooth_plugin.a ../res-src/vlc/android/modules/stream_filter/.libs/librecord_plugin.a ../res-src/vlc/android/modules/stream_filter/.libs/libdecomp_plugin.a ../res-src/vlc/android/modules/stream_filter/.libs/libhttplive_plugin.a ../res-src/vlc/android/modules/video_output/.libs/libvmem_plugin.a ../res-src/vlc/android/modules/video_output/.libs/libandroid_surface_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_ps_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_mp4_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_ts_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_wav_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_ogg_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_asf_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_dummy_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_avi_plugin.a ../res-src/vlc/android/modules/mux/.libs/libmux_mpjpeg_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_copy_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_mlp_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_mpeg4video_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_vc1_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_dirac_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_mpegvideo_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_flac_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_mpeg4audio_plugin.a ../res-src/vlc/android/modules/packetizer/.libs/libpacketizer_h264_plugin.a ../res-src/vlc/android/modules/audio_output/.libs/libamem_plugin.a ../res-src/vlc/android/modules/audio_output/.libs/libafile_plugin.a ../res-src/vlc/android/modules/audio_output/.libs/libopensles_android_plugin.a ../res-src/vlc/android/modules/audio_output/.libs/libandroid_audiotrack_plugin.a ../res-src/vlc/android/modules/arm_neon/.libs/libvolume_neon_plugin.a ../res-src/vlc/android/modules/arm_neon/.libs/libaudio_format_neon_plugin.a ../res-src/vlc/android/modules/arm_neon/.libs/libsimple_channel_mixer_neon_plugin.a ../res-src/vlc/android/modules/arm_neon/.libs/libyuv_rgb_neon_plugin.a ../res-src/vlc/android/modules/arm_neon/.libs/libchroma_yuv_neon_plugin.a ../res-src/vlc/android/modules/access/rtp/.libs/librtp_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_vdr_plugin.a ../res-src/vlc/android/modules/access/.libs/libsdp_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_tcp_plugin.a ../res-src/vlc/android/modules/access/.libs/libzip_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_avio_plugin.a ../res-src/vlc/android/modules/access/.libs/libstream_filter_rar_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_rar_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_udp_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_attachment_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_ftp_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_mms_plugin.a ../res-src/vlc/android/modules/access/.libs/libshm_plugin.a ../res-src/vlc/android/modules/access/.libs/libfilesystem_plugin.a ../res-src/vlc/android/modules/access/.libs/libaccess_http_plugin.a ../res-src/vlc/android/lib/.libs/libvlc.a ../res-src/vlc/android/src/.libs/libvlccore.a ../res-src/vlc/android/compat/.libs/libcompat.a -ldl -lz -llog -ldvbpsi -lebml -lmatroska -ltag -logg -lFLAC -ltheora -lmpeg2 -la52 -lavformat -lavcodec -lswscale -lavutil -lpostproc -lgsm -lopenjpeg -lliveMedia -lUsageEnvironment -lBasicUsageEnvironment -lgroupsock -lspeex -lspeexdsp -lxml2 -lpng -lgnutls -lgcrypt -lgpg-error -lfreetype -liconv -lass -lfribidi -lopus /opt/google/android/ndk-r8e/sources/cxx-stl/gnu-libstdc++/4.6/libs/armeabi-v7a/libgnustl_static.a -lm -lstdc++ -lm -lc -lgcc -lc -ldl -lgcc /opt/google/android/ndk-r8e/platforms/android-9/arch-arm/usr/lib/crtend_so.o Install : libvlcjni.so => libs/armeabi/libvlcjni.so

edwardw
Big Cone-huna
Big Cone-huna
Posts: 2346
Joined: 24 Jun 2012 23:36
VLC version: 3.0.0-git

Re: Video frame notification in Android application

Postby edwardw » 08 Jul 2013 18:45

Either the libvlc_set_video_filter patch has become outdated, or you can check the runtime debug log of VLC for Android.

gregoiregentil
Blank Cone
Blank Cone
Posts: 27
Joined: 30 Jan 2013 07:48

Re: Video frame notification in Android application

Postby gregoiregentil » 09 Jul 2013 07:31

Patch is working. I was doing bad things....


Return to “VLC for Android and Chrome OS”

Who is online

Users browsing this forum: No registered users and 25 guests