<div dir="rtl"><div dir="ltr"><div dir="ltr">I tried to split x264 from my gstreamer_android.so like this:</div><div dir="ltr">Android.mk :</div><div dir="ltr"><br></div><div dir="ltr">LOCAL_PATH := $(call my-dir)</div><div dir="ltr">APP_PLATFORM := android-19</div><div dir="ltr"><br></div><div dir="ltr"><br></div><div dir="ltr">include $(CLEAR_VARS)</div><div dir="ltr">ifndef GSTREAMER_ROOT</div><div dir="ltr">ifndef GSTREAMER_SDK_ROOT_ANDROID</div><div dir="ltr">$(error GSTREAMER_SDK_ROOT_ANDROID is not defined!)</div><div dir="ltr">endif</div><div dir="ltr">GSTREAMER_ROOT        := $(GSTREAMER_SDK_ROOT_ANDROID)</div><div dir="ltr">endif</div><div dir="ltr">GSTREAMER_ANDROID_MODULE_NAME := gstreamer_android</div><div dir="ltr">LOCAL_MODULE    := gsthelper</div><div dir="ltr">LOCAL_SRC_FILES := gsthelper.c</div><div dir="ltr">LOCAL_SHARED_LIBRARIES := gstreamer_android</div><div dir="ltr">LOCAL_C_INCLUDES := $(LOCAL_PATH)/../..</div><div dir="ltr">LOCAL_LDLIBS := -landroid</div><div dir="ltr">include $(BUILD_STATIC_LIBRARY)</div><div dir="ltr"><br></div><div dir="ltr"># main gstreamer lib</div><div dir="ltr"><br></div><div dir="ltr">GSTREAMER_NDK_BUILD_PATH  := $(GSTREAMER_ROOT)/share/gst-android/ndk-build/</div><div dir="ltr">include $(GSTREAMER_NDK_BUILD_PATH)/<a href="http://plugins.mk">plugins.mk</a></div><div dir="ltr">GSTREAMER_PLUGINS_CODECS_TRIMMED := isomp4 jpeg opus videoparsersbad jpegformat androidmedia libav  avi asf ogg theora vorbis mpeg2dec mad faad mulaw id3demux apetag vpx matroska </div><div dir="ltr">GSTREAMER_PLUGINS_NET_TRIMMED := tcp rtsp rtp rtpmanager soup udp sdp</div><div dir="ltr">GSTREAMER_PLUGINS         := $(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_PLAYBACK) \</div><div dir="ltr"><span class="" style="white-space:pre">        </span>$(GSTREAMER_PLUGINS_CODECS_TRIMMED) $(GSTREAMER_PLUGINS_NET_TRIMMED) opensles opengl videobox gio</div><div dir="ltr">G_IO_MODULES              := gnutls</div><div dir="ltr">GSTREAMER_EXTRA_DEPS      := glib-2.0 gstreamer-net-1.0 gstreamer-rtsp-server-1.0 gstreamer-video-1.0 gio-2.0</div><div dir="ltr">include $(GSTREAMER_NDK_BUILD_PATH)/<a href="http://gstreamer-1.0.mk">gstreamer-1.0.mk</a></div><div dir="ltr"><br></div><div dir="ltr"># gstreamer x264 lib</div><div dir="ltr"><br></div><div dir="ltr">include $(CLEAR_VARS)</div><div dir="ltr">GSTREAMER_ANDROID_MODULE_NAME := gstreamer_x264</div><div dir="ltr">GSTREAMER_PLUGINS         := x264</div><div dir="ltr">include $(GSTREAMER_NDK_BUILD_PATH)/<a href="http://gstreamer-1.0.mk">gstreamer-1.0.mk</a></div><div dir="ltr"><br></div><div dir="ltr"><br></div><div dir="ltr">but I am getting this error when I build:</div><div dir="ltr"><br></div><div dir="ltr">[armeabi-v7a] Prebuilt       : libgstreamer_android.so <= gst-build-armeabi-v7a/</div><div dir="ltr">cp: cannot stat ‘gst-build-armeabi-v7a/libgstreamer_android.so’: No such file or directory</div><div dir="ltr">make[1]: *** [obj/local/armeabi-v7a/libgstreamer_android.so] Error 1</div><div dir="ltr">make[1]: Leaving directory `/home/builder/test1/test1Lib'</div><div dir="ltr">make: *** [build] Error 2</div><div dir="ltr"><br></div><div dir="ltr">What is wrong with my Android.mk file ? </div><div dir="ltr">What is the proper way to split gstreamer dependencies to one main lib ( gstreamer_android.so ) and another gstx264 lib ( gstreamer_x264.so ) ?</div><div dir="ltr"><br></div><div dir="ltr">Thanks</div><div dir="ltr">Jacob</div></div></div><div class="gmail_extra"><br><div class="gmail_quote"><div dir="ltr">2014-11-05 14:50 GMT+02:00 Sebastian Dröge <span dir="ltr"><<a href="mailto:sebastian@centricular.com" target="_blank">sebastian@centricular.com</a>></span>:</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Mi, 2014-11-05 at 13:53 +0200, Jacob S wrote:<br>
> I am trying to load libgstx264.so using gst_plugin_load_file.<br>
><br>
> I copied libx264.so and libgstx264.so to the same directory where my<br>
> process is located.<br>
><br>
> when I call gst_plugin_load_file("./libgstx264.so", &error); I get this<br>
> error:<br>
> Could not load libgstx264 file: Opening module failed: Cannot load library:<br>
> soinfo_link_image(linker.cpp:1673): could not load library<br>
> "libgstpbutils-1.0.so.0" needed by "libgstx264.so"; caused by<br>
> load_library(linker.cpp:771): library "libgstpbutils-1.0.so.0" not found<br>
><br>
> Isnt libgstpbutils-1.0.so.0" supposed to be loaded already by the app ? how<br>
> do I load it manually ?<br>
><br>
> what am I doing wrong here ?<br>
<br>
</span>Your shared objects will required the shared GStreamer libraries to<br>
work. Ideally you would statically compile x264 into the x264 GStreamer<br>
plugin, and then link it to your libgstreamer_android.so. This has to be<br>
done manually though.<br>
<br>
Alternatively you could pull in all the needed .so files from the<br>
runtime binary release, but that's a lot of code duplication and<br>
increased binary size then.<br>
<div class="HOEnZb"><div class="h5"><br>
--<br>
Sebastian Dröge, Centricular Ltd · <a href="http://www.centricular.com" target="_blank">http://www.centricular.com</a><br>
</div></div><br>_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
<br></blockquote></div><br></div>