[vlc-commits] Enable zero-copy support for gstreamer video decoders

Vikram Fugro git at videolan.org
Fri Feb 5 16:20:47 CET 2016


vlc | branch: master | Vikram Fugro <vikram.fugro at gmail.com> | Thu Feb  4 10:35:07 2016 +0530| [aa1ec5c910b6420b4e99100b10549593d8ad260a] | committer: Jean-Baptiste Kempf

Enable zero-copy support for gstreamer video decoders

Implements the interface to provide the VLC pictures
from vout mapped to GstBuffers, along with per video
plane stride/offsets info, to the upstream gstreamer
video decoder. If the stride/offsets info of the vlc
pictures (created by vout) matches the video decoder's
expectations, the decoder will directly decode into
the vout allocated pictures, enabling zero-copy. Else
it will continue to use it's own bufferpool

Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=aa1ec5c910b6420b4e99100b10549593d8ad260a
---

 modules/codec/Makefile.am                          |    5 +-
 modules/codec/gstreamer/gstdecode.c                |  492 ++++++++++----------
 .../codec/gstreamer/gstvlcpictureplaneallocator.c  |  320 +++++++++++++
 .../codec/gstreamer/gstvlcpictureplaneallocator.h  |   91 ++++
 modules/codec/gstreamer/gstvlcvideopool.c          |  239 ++++++++++
 modules/codec/gstreamer/gstvlcvideopool.h          |   68 +++
 modules/codec/gstreamer/gstvlcvideosink.c          |  326 +++++++++++++
 modules/codec/gstreamer/gstvlcvideosink.h          |   84 ++++
 8 files changed, 1375 insertions(+), 250 deletions(-)

Diff:   http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=aa1ec5c910b6420b4e99100b10549593d8ad260a


More information about the vlc-commits mailing list