GStreamer custom plugin use in Android

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

GStreamer custom plugin use in Android

Akon
Hi there,

First of all my delight for GStreamer. Great project!

I developed a GStreamer 1.0 plugin which works fine in Windows/Linux and some other systems. Now I want to cover Android. Currently, the plugin is not integrated into GStreamer in sense that it is not built with GStreamer/Cerbero, but it is built separately using GStreamer official binaries (devel) resulting *.so or *.a file.

How can I use the plugin in an Android app? I don't consider direct inclusion of the plugin sources into the app, but through prebuilt static/shared lib.

I think a way when my plugin will be used as a separate lib (shared or static) will not work, due to there will be e.g. two glib instances (one from GStreamer (there all libs are static) and one from the plugin), so g_malloc()/g_free() will fail (there will be two heaps).

At the moment I'm considering integration of my plugin to gstreamer-android.so prebuilt lib (see GStreamer Tutorials for Android)  that is generated by GStreamer's ndk-built scripts. How can I do it with?

Thanks in advance.
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer custom plugin use in Android

Akon
I injected my custom plugin into gstreamer_android.so by customizing gstreamer-1.0.mk and mentioning my plugin in GSTREAMER_PLUGINS and it's dependencies in TARGET_LDFLAGS in app's Android.mk.

But more preferred way is to keep gstreamer_android.so's build scripts untouched? Is this possible?
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer custom plugin use in Android

Akon
Did someone get run Android tutorials (e.g. android-tutorial-2) on Android ARM emulator?

They run successfully on a real device (x86) and x86 emulator in my case.