mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-06-30 20:00:41 +00:00
videorate: Update the base time on segment updates
Dropping it to 0 makes videorate push buffers from timestamp 0 again. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/767>
This commit is contained in:
parent
a55dafe341
commit
75b4809ebc
|
@ -836,9 +836,6 @@ gst_video_rate_sink_event (GstBaseTransform * trans, GstEvent * event)
|
||||||
gst_video_rate_swap_prev (videorate, NULL, 0);
|
gst_video_rate_swap_prev (videorate, NULL, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
videorate->base_ts = 0;
|
|
||||||
videorate->out_frame_count = 0;
|
|
||||||
videorate->next_ts = GST_CLOCK_TIME_NONE;
|
|
||||||
|
|
||||||
/* We just want to update the accumulated stream_time */
|
/* We just want to update the accumulated stream_time */
|
||||||
|
|
||||||
|
@ -848,6 +845,15 @@ gst_video_rate_sink_event (GstBaseTransform * trans, GstEvent * event)
|
||||||
segment.stop = (gint64) (segment.stop / videorate->rate);
|
segment.stop = (gint64) (segment.stop / videorate->rate);
|
||||||
segment.time = (gint64) (segment.time / videorate->rate);
|
segment.time = (gint64) (segment.time / videorate->rate);
|
||||||
|
|
||||||
|
videorate->base_ts = gst_segment_position_from_running_time (&segment,
|
||||||
|
GST_FORMAT_TIME,
|
||||||
|
gst_segment_to_running_time (&videorate->segment, GST_FORMAT_TIME,
|
||||||
|
videorate->base_ts));
|
||||||
|
videorate->next_ts = gst_segment_position_from_running_time (&segment,
|
||||||
|
GST_FORMAT_TIME,
|
||||||
|
gst_segment_to_running_time (&videorate->segment, GST_FORMAT_TIME,
|
||||||
|
videorate->next_ts));
|
||||||
|
|
||||||
gst_segment_copy_into (&segment, &videorate->segment);
|
gst_segment_copy_into (&segment, &videorate->segment);
|
||||||
GST_DEBUG_OBJECT (videorate, "updated segment: %" GST_SEGMENT_FORMAT,
|
GST_DEBUG_OBJECT (videorate, "updated segment: %" GST_SEGMENT_FORMAT,
|
||||||
&videorate->segment);
|
&videorate->segment);
|
||||||
|
|
Loading…
Reference in a new issue