use android binary omx codec

Mohammed Sameer msameer at foolab.org
Mon Mar 2 03:17:48 PST 2015


On Mon, Mar 02, 2015 at 09:50:01AM +0800, Aihua Zhao wrote:
>  thanks, some questions.
>  "media service is needed only because OMXClient tries to use it."
>  1. where is the service running now? in android container, or in native
>  host?

MediaPlayerService is running natively, OFC we can strip it down and just run the
omx part of it or find another way. I have not investigated that part yet.

>  2. you mean the full media service (player service, MediaCodec service)
>  is running now, but only a small part to load omx lib are used. right?

yes.

>  3. in your gst-omx, there is some change in hardwareAPI.h

Because you are looking at the wrong branch. master contains a minimal omx implementation
that is enough to load android OMX cores. It's not been tested much though.

The branch you need to check is "droidmedia" branch which contains the code that
uses droidmedia. master was just an experiment by me in my free time to explore
a bit. droidmedia is the future and it will be merged to master once it's mature enough
and it is maturing fast ;-)

>  struct UseAndroidNativeBufferParams {
>  // ....
>  OMX_BUFFERHEADERTYPE **bufferHeader;
>  const struct ANativeWindowBuffer *nativeBuffer;
>  };
>  in Android code, there used to be "const sp<ANativeWindowBuffer>&
>  nativeBuffer;".
>  I confuse how it works, could your explain?

You cannot have sp<ANativeWindowBuffer> in C. It's also just a strong pointer so
I got rid of the sp part. A bit dangerous but it works ;)

Cheers,

-- 
GPG-Key: 0xA3FD0DF7 - 9F73 032E EAC9 F7AD 951F  280E CB66 8E29 A3FD 0DF7
Debian User and Developer.
Homepage: www.foolab.org


More information about the gstreamer-devel mailing list