plugins: cope with new GstVaapiVideoMeta API.
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>
Sat, 5 Jan 2013 16:55:47 +0000 (17:55 +0100)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Sat, 5 Jan 2013 17:02:31 +0000 (18:02 +0100)
commita00ae0918a00cd6b8b187e7120f60e738b47ccfb
tree54d1881bb6d0401fc108ca129b7a3ea1e7769ec1
parentd6bbc652b4c12a98dc5411145134150cab5be6d1
plugins: cope with new GstVaapiVideoMeta API.

Update plugin elements with the new GstVaapiVideoMeta API.

This also fixes support for subpictures/overlay because GstVideoDecoder
generates a sub-buffer from the GstVaapiVideoBuffer. So, that sub-buffer
is marked as read-only. However, when comes in the textoverlay element
for example, it checks whether the input buffer is writable. Since that
buffer read-only, then a new GstBuffer is created. Since gst_buffer_copy()
does not preserve the parent field, the generated buffer in textoverlay
is not exploitable because we lost all VA specific information.

Now, with GstVaapiVideoMeta information attached to a standard GstBuffer,
all information are preserved through gst_buffer_copy() since the latter
does copy metadata (qdata in this case).
gst/vaapi/gstvaapidecode.c
gst/vaapi/gstvaapidownload.c
gst/vaapi/gstvaapipluginbuffer.c
gst/vaapi/gstvaapipluginbuffer.h
gst/vaapi/gstvaapipostproc.c
gst/vaapi/gstvaapisink.c
gst/vaapi/gstvaapiupload.c
gst/vaapi/gstvaapiuploader.c