[OE-core] RFC: gstreamer 1.0 recipes

Carlos Rafael Giani dv at pseudoterminal.org
Sun Apr 7 23:38:52 UTC 2013


Hello all,

to start working with GStreamer 1.0 on several embedded platforms, I 
decided to adapt the existing GStreamer recipes from danny for 1.0. Out 
of this I created a layer, which is hosted at 
https://github.com/dv1/meta-gstreamer1.0 .

I write this RFC, because I figure that GStreamer 1.0 support is already 
on TODO lists of several people, and will eventually end up in OE-Core, 
just like GStreamer 0.10 did. For this reason, I also didn't add it to 
the layer index.

I built the packages for several platforms (cubox, beagleboard, imx6), 
and they worked well. Since 1.0 has been designed to be able to coexist 
with 0.10 in the same rootfs, I changed the naming convention for the 
packages: they all start with "gstreamer1.0-" .

I also tried to reuse the existing patches. I was able to reuse three. 
Several others are no longer necessary. Four are unclear to me, so I did 
not port them:
* gstreamer: check_fix.patch (I could not reproduce the documented 
problem), and gstregistrybin.c/.h (why are these present?)
* gst-plugins-base: configure.ac-fix-subparse-plugin.patch (not sure 
what this is trying to fix, and this line does not exist in 1.0), and 
gst-plugins-base-tremor.patch (again, works well without it)

gst-ffmpeg was replaced by gst-libav upstream. So was gst-openmax 
(gst-omx is its successor). gst-omx has special support for the 
Raspberry Pi and its custom OpenMax IL implementation. The recipe is 
designed in a way that allows for setting the target to something like 
"rpi", and the recipe then sets the PACKAGE_ARCH automatically to 
MACHINE_ARCH. However, I wasn't able to test it on an RPi yet, since I 
do not have one. I will get access to one in a few days.

I am also considering some kind of autodetection for when yasm and 
liborc are available (for example, because meta-oe was added to 
bblayers.conf), and then switches on Orc and enables yasm in gst-libav. 
Or better yet, if libav is available as a recipe, it lets gst-libav use 
it instead of its internal copy. These autodetections would improve 
performance significantly.

Thoughts?

cheers,
Carlos
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20130408/01e5556c/attachment-0002.html>


More information about the Openembedded-core mailing list