diff --git a/gst/vaapidecode/gstvaapidecode.c b/gst/vaapidecode/gstvaapidecode.c index 9600858a3a..762e0ce65b 100644 --- a/gst/vaapidecode/gstvaapidecode.c +++ b/gst/vaapidecode/gstvaapidecode.c @@ -105,11 +105,20 @@ gst_vaapidecode_task_cb(gpointer data) return; buffer = NULL; - ret = gst_pad_alloc_buffer(decode->srcpad, 0, 0, GST_PAD_CAPS(decode->srcpad), &buffer); + ret = gst_pad_alloc_buffer( + decode->srcpad, + 0, 0, + GST_PAD_CAPS(decode->srcpad), + &buffer + ); if (ret != GST_FLOW_OK || !buffer) goto error_create_buffer; GST_BUFFER_TIMESTAMP(buffer) = GST_VAAPI_SURFACE_PROXY_TIMESTAMP(proxy); + gst_vaapi_video_buffer_set_surface_proxy( + GST_VAAPI_VIDEO_BUFFER(buffer), + proxy + ); ret = gst_pad_push(decode->srcpad, buffer); if (ret != GST_FLOW_OK)