Hardware decoding on android using GStreamer

yusuf.husainy yusuf.husainy at gmail.com
Tue Jul 2 09:51:49 PDT 2013

Hello all,

I analysed further and found that if I use the ffdec_h264 element instead of
the amcviddec-omxgoogleh264parse element, then the following pipeline works:
data->pipeline = gst_parse_launch("filesrc
location=/storage/sdcard0/Movies/c48000.mp4 ! qtdemux ! queue ! h264parse !
ffdec_h264 ! eglglessink sync=0", &error);

However, if iuse this, it fails:
data->pipeline = gst_parse_launch("filesrc
location=/storage/sdcard0/Movies/c48000.mp4 ! qtdemux ! queue ! h264parse !
amcviddec-omxgoogleh264decoder ! eglglessink sync=0", &error);

Now, the log I get is:http://pastebin.com/9kpCiEwL
This is the log the logcat shows in eclipse.

It does not link the elements because it is not negotiated,  this is what I
understand from the log file. 

How can I know the exact caps needed by amcviddec-omxgoogleh264decoder
element so that this would work?

Also, in this case, the .mp4 file is a 1920x1080 at 60fps and has
video/x-h264 (avc) type.

the element amcviddec-omxgoogleh264decoder shows the type as video/avc in
the /etc/media-codecs.xml file

It seems the h264parse would have the h264/avc type, but is this because
amcviddec-omxgoogleh264decoder has video/avc and the file has video/x-h264?
I mean is this some nomenclature kind of issue, because the h264 in the file
is avc format, however the caps show video/x-h264, so the sink caps of
amcviddec-omxgoogleh264decoder shou;d be negotiated and the pipeline should

I don't completely understand what I should do to make
amcviddec-omxgoogleh264decoder work in my gstreamer pipeline.

Also, I have Android 4.1.2 and am using API-16.

I would appreciate any body who has worked on 
amcviddec-omxgoogleh264decoder before or who has any kind of idea.

Yusuf Husainy.

View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Hardware-decoding-on-android-using-GStreamer-tp4660630p4660866.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.

More information about the gstreamer-devel mailing list