Error linking "libav" plugin on Android

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Error linking "libav" plugin on Android

ivan-perez

Hi there!

I have tried the examples on the Android tutorial - all of them worked fine. Because of my application requirements, now I need to add the libav plugin. As far as I've read, this plugin will allow me to convert a H264 video into raw and then reproduce it in a Android media player component.

So this is the variable where I declare what plugins I need on my Android.mk file:

GSTREAMER_PLUGINS := $(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_CODECS) $(GSTREAMER_PLUGINS_SYS) x264 libav

The target architecture is armv7. No matter if I compile only that plugin or if it is among others, the linker always fail. This is the error I get:

C:/Users/User/AppData/Local/Android/sdk/ndk-bundle/build//../toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin\ld.gold.exe: error: conditional branch to PLT in THUMB-2 not supported yet.
libswresample/arm/audio_convert_neon.S:137: error: unexpected opcode while processing relocation R_ARM_THM_JUMP19
clang.exe: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [buildsharedlibrary_armeabi-v7a] Error 1

I'm using the latest NDK version available. I've also tried to disable the gold linker and use the old NDK linker (bfd) and I get a very similar error:

C:/Users/User/AndroidStudioProjects/gstreamer-android/armv7/lib/libswresample.a(audio_convert_neon.o): In function `swri_oldapi_conv_fltp_to_s16_nch_neon':
/home/slomo/Projects/gstreamer/cerbero/build/sources/android_universal/armv7/gst-libav-1.0-static-1.10/gst-libs/ext/libav/libswresample/arm/audio_convert_neon.S:137:(.text+0x186): relocation truncated to fit: R_ARM_THM_JUMP19 against symbol `swri_oldapi_conv_fltp_to_s16_2ch_neon' defined in .text section in C:/Users/Ivan.Perez/AndroidStudioProjects/gstreamer-android/armv7/lib/libswresample.a(audio_convert_neon.o)
clang.exe: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [buildsharedlibrary_armeabi-v7a] Error 1

Is there anything I can do in order to build my application with that plugin?

Thank you very much.

Kind regards