Announcing gst-vmeta: GStreamer 1.0 plugins for Marvell's vMeta hardware video decoder

Carlos Rafael Giani dv at pseudoterminal.org
Thu Aug 8 03:57:04 PDT 2013


vMeta is a hardware video decoding engine made by Marvell. It is 
included in Marvell's Armada SoCs. Some devices that use this SoC are 
the SolidRun CuBox, the One Laptop Per Child platforms, and Google's 
Chromecast.

Marvell released plugins, but only for 0.10 . Also, these plugins did 
not make use of the base classes. Two good reasons for coming up with 
new plugins :)

The code can be found here: https://github.com/dv1/gst-vmeta . It is 
written from scratch, and so far has been tested on the CuBox (by me) 
and on OLPC (by John Nettleton, thanks!).

Currently, there is a decoder and a modified xvsink element. (The latter 
will be rewritten soon.) Encoder elements will come later. I consider 
the decoder to be in a "release candidate" state, that is, it has worked 
perfectly for all videos I have tested it with so far, so the only thing 
missing is more testing to label it stable.

It makes use of a custom allocator and buffer pool to be able to push 
decoded frames downstream directly, without having to use memcpy() . 
These frames are stored in DMA buffers. A downstream sink can then look 
at the incoming buffer metadata, determine if it is a DMA buffer, and if 
so, read from it directly, again without copying anything. This is 
similar to how the VDPAU and the xvimagesink pools work.

Suggestions, comments, bugreports, etc. are welcome.

cheers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130808/e97d6a78/attachment.html>


More information about the gstreamer-devel mailing list