vaapivp9dec
vaapivp9dec decodes from VP9 bitstreams to surfaces suitable for the vaapisink or vaapipostproc elements using the installed VA-API back-end.
In the case of OpenGL based elements, the buffers have the GstVideoGLTextureUploadMeta meta, which efficiently copies the content of the VA-API surface into a GL texture.
Also it can deliver normal video buffers that can be rendered or processed by other elements, but the performance would be rather bad.
Example launch line
gst-launch-1.0 filesrc location=./sample.vp9.webm ! ivfparse ! vaapivp9dec ! vaapisink
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──GstVideoDecoder ╰──vaapivp9dec
Factory details
Authors: – Gwenole Beauchesne
Classification: – Codec/Decoder/Video/Hardware
Rank – none
Plugin – vaapi
Package – gstreamer-vaapi
Pad Templates
src
video/x-raw(memory:VASurface):
format: { ENCODED, NV12, YV12, I420, YUY2, UYVY, Y444, GRAY8, P010_10LE, P012_LE, VUYA, Y210, Y410, Y212_LE, Y412_LE, ARGB, xRGB, RGBA, RGBx, ABGR, xBGR, BGRA, BGRx, RGB16, RGB, BGR10A2_LE }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
video/x-raw(meta:GstVideoGLTextureUploadMeta):
format: { RGBA, BGRA }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
video/x-raw:
format: { ENCODED, NV12, YV12, I420, YUY2, UYVY, Y444, GRAY8, P010_10LE, P012_LE, VUYA, Y210, Y410, Y212_LE, Y412_LE, ARGB, xRGB, RGBA, RGBx, ABGR, xBGR, BGRA, BGRx, RGB16, RGB, BGR10A2_LE }
width: [ 1, 2147483647 ]
height: [ 1, 2147483647 ]
framerate: [ 0/1, 2147483647/1 ]
The results of the search are