<div dir="ltr">Hi Sameer:<div>thanks for your kindly explanation.</div><div><br><div>when you talks about "<span style="font-size:14px"> </span><span style="font-size:14px">integrate with Android at stagefright level</span>", do you mean to run android media service on Jolla?</div><div>where are your codes?</div><div><br></div><div>do you run the full android media service on Jolla, or extract the part for MediaCodec and Camera only?</div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-02-26 8:19 GMT+08:00 Mohammed Sameer <span dir="ltr"><<a href="mailto:msameer@foolab.org" target="_blank">msameer@foolab.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Wed, Feb 25, 2015 at 04:52:35PM +0800, Aihua Zhao wrote:<br>
>  Hi Experts:<br>
<br>
Hi,<br>
<span class=""><br>
>  I'm trying to use android omx binary codec in some way, and noticed the<br>
>  implementation from Ubuntu and Jolla.<br>
>  Ubuntu<br>
</span>>  touch: [1]<a href="https://launchpad.net/distros/ubuntu/+source/gst-plugins-bad1" target="_blank">https://launchpad.net/distros/ubuntu/+source/gst-plugins-bad1</a><br>
>  .0<br>
>  Jolla: [2]<a href="https://github.com/sailfishos/gst-omx" target="_blank">https://github.com/sailfishos/gst-omx</a><br>
<br>
I created the implementation for Jolla.<br>
Just note that this implementation is for GStreamer 0.10<br>
<br>
Currently Jolla is migrating to GStreamer 1.x with a new homegrown<br>
modules that integrate with Android at stagefright level for media decoding<br>
and encoding and at camera service level for camera access.<br>
<br>
The code is open and I can point you at it if you are interested. It's still<br>
in development but the results are promising.<br>
<br>
Just note that even though the code is meant to be generic, it's meant to be<br>
built per device against the specific version of Android used by Sailfish OS.<br>
<span class=""><br>
>  from my understanding, Jolla uses omx binary directly<br>
>  by android_dlopen(); while Ubuntu touch uses the codec from android<br>
>  media codec service. both are in gstreamer world.<br>
<br>
</span>True for Jolla, we load android OMX libraries via libhybris and enable Android<br>
native buffers. The code is heavily patched for only this use-case.<br>
<br>
I had plans to forward port the needed changes to GStreamer 1.x and push them<br>
to upstream gst-omx after discussing it with slomo but I unfortunately got busy.<br>
<span class=""><br>
>  I wonder one possible implementation away from gstreamer:<br>
>  the Android MediaCodec API is also convenient to use. on non-android<br>
>  Linux, is it possible to load omx binary by hybris, then simply wrapped<br>
>  it into MediaCodec interface?<br>
<br>
</span>This is going to be a huge task, Each OMX codec has its own set of quirks.<br>
I also noticed that if you deviate much from the "Android behavior" then<br>
the binary you are using can at best case error out and at worst case crash on you.<br>
<span class=""><br>
>  you may say that is what android does; however, I think the<br>
>  implementation in Android is over-complex and depends on android<br>
>  toolkit.<br>
<br>
</span>It's just tailored to Android :-)<br>
<br>
Cheers,<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
GPG-Key: 0xA3FD0DF7 - 9F73 032E EAC9 F7AD 951F  280E CB66 8E29 A3FD 0DF7<br>
Debian User and Developer.<br>
Homepage: <a href="http://www.foolab.org" target="_blank">www.foolab.org</a><br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<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>
</div></div></blockquote></div><br></div>