Android (x86) hardware decoding.

Gus Grubba gus at grubba.com
Fri May 5 00:20:29 UTC 2017


Thank you, that gave some starting point but eventually I got lost again. Once over the libdrm hurdle, I bumped into another dependency of gstreamer-vaapi: libudev. When trying to get systemd built, I run into more errors:

configure.ac:703: error: possibly undefined macro: AM_PATH_LIBGCRYPT

I’m getting to a point where I wonder if all this is worth the effort. Android. Talk about a hostile development environment…

My current pipeline is:

rtspsrc -> rtph264depay -> h264parse -> avdec_h264 -> qtquick2videosink

Where qtquick2videosink is my own, hacked together QtQuick sink. I just want to replace the decoder with something that is hardware accelerated. The pipeline above cannot handle a 720P stream.

Thanks!

g

P.S. I also noticed there is now a QtQuick sink within GStreamer (https://cgit.freedesktop.org/gstreamer/qt-gstreamer/ <https://cgit.freedesktop.org/gstreamer/qt-gstreamer/>) When and if I get the above resolved, I will see about replacing my Qt hack.


> On May 4, 2017, at 6:05 AM, marcin at saepia.net wrote:
> 
> I have spent fair amount of time on building GStreamer on Android for many weird setups and although none of them dealt with exactly that issue maybe I can help. 
> 
> It seems that android ships with its own version of libdrm that does not rely on libpciaccess, so the whole point would have been to re-use one that ships with the OS:
> 
> https://android.googlesource.com/platform/external/libdrm/+/f6a1130dffae8de9ddd0c379066daf1df27fc8af <https://android.googlesource.com/platform/external/libdrm/+/f6a1130dffae8de9ddd0c379066daf1df27fc8af>
> 
> 
> Please PM me if you want to proceed.
> 
> m.
> 
> 2017-05-04 10:30 GMT+02:00 Gus Grubba <gus at grubba.com <mailto:gus at grubba.com>>:
> I’m working on a project that has been using GStreamer successfully for quite a while. The project is based on QtQuick and runs on everything Qt supports. I’m now faced with a custom x86 version of Android device (an RC Radio with an integrated Android tablet) and I can’t seem to get h264 decoding properly. This is the same code running elsewhere. I’m investigating the use of hardware (h264) decoding and found a few options where vaapi seems to be the most logical one.
> 
> QtQuick application
> Android x86 running on a Baytrail platform (4-core Intel(R) Atom(TM) CPU  Z3735F @ 1.33GHz)
> GStreamer handling an RTSP video only (no audio) stream and a custom QtQuick sink.
> (https://github.com/mavlink/qgroundcontrol/tree/master/src/VideoStreaming <https://github.com/mavlink/qgroundcontrol/tree/master/src/VideoStreaming>)
> 
> I have no problems building the entire GStreamer package using cerbero. What I can’t figure out is how to integrate gstreamer-vaapi. I created the recipe and then realized it depends on libva, which in turn depends on libdrm, which in turn depends on libpciaccess at which point, it can’t get any further.
> 
> Question:
> 
> Can this be done? Has someone done it before? Is there a better alternative?
> 
> Thanks in advance,
> 
> g
> 
> 
> _______________________________________________
> gstreamer-android mailing list
> gstreamer-android at lists.freedesktop.org <mailto:gstreamer-android at lists.freedesktop.org>
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-android <https://lists.freedesktop.org/mailman/listinfo/gstreamer-android>
> 
> 
> _______________________________________________
> gstreamer-android mailing list
> gstreamer-android at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-android

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-android/attachments/20170504/5cfd2f9b/attachment.html>


More information about the gstreamer-android mailing list