mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-27 10:40:34 +00:00
basesrc: Only set DTS to segment.start on the first buffer if subclass did not provide PTS
Otherwise we're going to set a rather arbitrary DTS of segment.start (usually 0) for live sources, which confuses synchronization if the source started capturing at a later time. And it's especially wrong for raw media, for which we should not set any DTS at all. https://bugzilla.gnome.org/show_bug.cgi?id=747731
This commit is contained in:
parent
6409420474
commit
7d3d4503a1
1 changed files with 1 additions and 1 deletions
|
@ -2244,7 +2244,7 @@ gst_base_src_do_sync (GstBaseSrc * basesrc, GstBuffer * buffer)
|
|||
if (!GST_CLOCK_TIME_IS_VALID (dts)) {
|
||||
if (do_timestamp) {
|
||||
dts = running_time;
|
||||
} else {
|
||||
} else if (!GST_CLOCK_TIME_IS_VALID (pts)) {
|
||||
if (GST_CLOCK_TIME_IS_VALID (basesrc->segment.start)) {
|
||||
dts = basesrc->segment.start;
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue