mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-26 18:20:44 +00:00
GStreamer multimedia framework
a79c7f9fa6
VA drivers may have a faster means to transfer user buffers to GPU buffers than using memcpy(). In particular, on Intel Gen graphics, we can use pwrite(). This provides for faster upload of bitstream and can help higher bitrates. vaapi_create_buffer() helper function was also updated to allow for un-mapped buffers and pre-initialized data for buffers. |
||
---|---|---|
debian.upstream | ||
docs | ||
gst | ||
gst-libs | ||
pkgconfig | ||
tests | ||
.gitignore | ||
AUTHORS | ||
autogen.sh | ||
configure.ac | ||
COPYING.LIB | ||
Makefile.am | ||
NEWS | ||
README |
gstreamer-vaapi VA-API support to GStreamer Copyright (C) 2010-2011 Splitted-Desktop Systems Copyright (C) 2011-2012 Intel Corporation Copyright (C) 2011 Collabora Ltd. License ------- gstreamer-vaapi helper libraries and plugin elements are available under the terms of the GNU Lesser General Public License v2.1+ Overview -------- gstreamer-vaapi consists in a collection of VA-API based plugins for GStreamer and helper libraries. * `vaapidecode' is used to decode MPEG-2, MPEG-4, H.264, VC-1, WMV3 videos to video/x-vaapi-surfaces surfaces, depending on the underlying HW capabilities. * `vaapiupload' is used to convert from video/x-raw-yuv pixels to video/x-vaapi-surface surfaces. * `vaapidownload' is used to convert from video-x-vaapi-surface surfaces to video/x-raw-yuv pixels. * `vaapisink' is used to display video/x-vaapi-surface surfaces to screen. Features -------- * VA-API support from 0.29 to 0.31 * OpenGL rendering through VA/GLX or GLX texture-from-pixmap + FBO * Support for major HW video decoding solutions on Linux (AMD, Intel, NVIDIA) Requirements ------------ Software requirements * libgstreamer0.10-dev >= 0.10.35.1 or with GstBaseSink::query() * libgstreamer-plugins-base0.10-dev >= 0.10.35 * libgstreamer-plugins-bad0.10-dev >= 0.10.22.1 or with GstVideoContext, GstSurfaceBuffer * libva-dev >= 1.0.3 (VA/GLX) * libavcodec-dev >= 0.6 or with <libavcodec/vaapi.h> Hardware requirements * AMD platforms with UVD2 (XvBA supported) * Intel Eaglelake (G45) * Intel Ironlake (HD Graphics) * Intel Poulsbo (US15W) * NVIDIA platforms with PureVideo (VDPAU supported) Usage ----- * Play an H.264 video with an MP4 container in fullscreen mode $ gst-launch-0.10 -v filesrc location=/path/to/video.mp4 ! \ qtdemux ! vaapidecode ! vaapisink fullscreen=true Caveats ------- * No ad-hoc parser, vaapidecoder currently relies on FFmpeg