GNOME Bugzilla – Bug 734936
Add libhybris loader support for OpenMAX IL on Android
Last modified: 2018-05-07 15:44:08 UTC
Created attachment 283641 [details] [review] proposed libhybris loader patch libhybris is a library used by Ubuntu touch, SailfishOS (Jolla phone and friends) and probably others to load Android bionic libraries inside glibc based systems. This allows reusing Android adaptation. Attaching a patch which adds a new "loader" keyword to gstomx.conf allowing gst-omx to use libhybris for loading OpenMAX IL cores built for Android. Here is the MPEG4 video decoder part of gstomx.conf using the hybris loader (as an example): [omxmpeg4videodec] type-name=GstOMXMPEG4VideoDec core-name=/system/lib/libmm-omxcore.so component-name=OMX.qcom.video.decoder.mpeg4 rank=256 in-port-index=0 out-port-index=1 loader=hybris hacks=no-empty-eos-buffer;no-disable-outport sink-template-caps=video/mpeg,mpegversion=(int)4,systemstream=(boolean)false,width=(int) [1,MAX],height=(int) [1,MAX]
Review of attachment 283641 [details] [review]: Looks generally good but the core loading will not do what you would expect if you use the same core with the hybris loader and without in the config file. Maybe it shouldn't be a runtime configuration at all and just a compile time configuration?
My original approach was to have a compile time setting that will disable the glib based loader and enable hybris loader. I thought it'd be a good idea to make it runtime so one could mix bionic omx cores and non-bionic ones. I however don't have a real preference towards either. I can do it so that --enable-hybris would make it the only omx loader.
Sounds simpler for me. If anybody needs something else we can still change that later and try to find a better solution for the above mentioned inconsistency.
Comment on attachment 283641 [details] [review] proposed libhybris loader patch As per comment 2 and 3, just need to remove "gboolean use_hybris" and its usage.
There does not seem to be any progress happening on this anymore, so let's close it for now. Feel free to reopen if someone wants to work on this again