mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 06:54:49 +00:00
vdpau: small fixes
init create GstVdpDevice on GST_STATE_CHANGE_READY_TO_PAUSED instead of on GST_STATE_CHANGE_NULL_TO READY add back incrementing of frame_nr
This commit is contained in:
parent
a94f5fe520
commit
f16aa7271e
1 changed files with 3 additions and 2 deletions
|
@ -68,6 +68,7 @@ gst_vdp_decoder_push_video_buffer (GstVdpDecoder * dec,
|
||||||
GST_BUFFER_TIMESTAMP (buffer) =
|
GST_BUFFER_TIMESTAMP (buffer) =
|
||||||
gst_util_uint64_scale_int (GST_SECOND * dec->frame_nr,
|
gst_util_uint64_scale_int (GST_SECOND * dec->frame_nr,
|
||||||
dec->framerate_denominator, dec->framerate_numerator);
|
dec->framerate_denominator, dec->framerate_numerator);
|
||||||
|
dec->frame_nr++;
|
||||||
}
|
}
|
||||||
gst_buffer_set_caps (GST_BUFFER (buffer), GST_PAD_CAPS (dec->src));
|
gst_buffer_set_caps (GST_BUFFER (buffer), GST_PAD_CAPS (dec->src));
|
||||||
|
|
||||||
|
@ -82,10 +83,10 @@ gst_vdp_decoder_change_state (GstElement * element, GstStateChange transition)
|
||||||
dec = GST_VDP_DECODER (element);
|
dec = GST_VDP_DECODER (element);
|
||||||
|
|
||||||
switch (transition) {
|
switch (transition) {
|
||||||
case GST_STATE_CHANGE_NULL_TO_READY:
|
case GST_STATE_CHANGE_READY_TO_PAUSED:
|
||||||
dec->device = gst_vdp_get_device (dec->display_name);
|
dec->device = gst_vdp_get_device (dec->display_name);
|
||||||
break;
|
break;
|
||||||
case GST_STATE_CHANGE_READY_TO_NULL:
|
case GST_STATE_CHANGE_PAUSED_TO_READY:
|
||||||
g_object_unref (dec->device);
|
g_object_unref (dec->device);
|
||||||
dec->device = NULL;
|
dec->device = NULL;
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in a new issue