diff options
author | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2013-04-16 19:09:30 +0200 |
---|---|---|
committer | Gwenole Beauchesne <gwenole.beauchesne@intel.com> | 2013-04-16 19:11:02 +0200 |
commit | 2ac474b207e0848367661fc4769f72da50779d92 (patch) | |
tree | 6b00dc91728362d64b2ba3a14ecda9b1d19790a1 /gst-libs/gst/vaapi/gstvaapidecoder.c | |
parent | 87e5717f667774e15bd1bd170974ece634e4f63c (diff) | |
download | gst-vaapi-2ac474b207e0848367661fc4769f72da50779d92.tar.gz |
decoder: export presentation timestamp for raw decoding mode.
Fix regression from 0.4-branch whereby GstVaapiSurfaceProxy no longer
held any information about the expected presentation timestamp, frame
duration or additional flags like interlaced or top-field-first.
Diffstat (limited to 'gst-libs/gst/vaapi/gstvaapidecoder.c')
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapidecoder.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapidecoder.c b/gst-libs/gst/vaapi/gstvaapidecoder.c index e7468d03..1d3eb108 100644 --- a/gst-libs/gst/vaapi/gstvaapidecoder.c +++ b/gst-libs/gst/vaapi/gstvaapidecoder.c @@ -701,7 +701,10 @@ gst_vaapi_decoder_get_surface(GstVaapiDecoder *decoder, frame = pop_frame(decoder); while (frame) { if (!GST_VIDEO_CODEC_FRAME_IS_DECODE_ONLY(frame)) { - *out_proxy_ptr = gst_vaapi_surface_proxy_ref(frame->user_data); + GstVaapiSurfaceProxy * const proxy = frame->user_data; + proxy->timestamp = frame->pts; + proxy->duration = frame->duration; + *out_proxy_ptr = proxy; gst_video_codec_frame_unref(frame); return GST_VAAPI_DECODER_STATUS_SUCCESS; } |