[Bug 734659] qtdemux: Does not properly update base time for non-flushing seeks

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Sep 2 08:48:23 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=734659
  GStreamer | gst-plugins-good | git

Thiago Sousa Santos <thiagossantos> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #283388|none                        |reviewed
             status|                            |

--- Comment #26 from Thiago Sousa Santos <thiagossantos at gmail.com> 2014-09-02 15:48:18 UTC ---
Review of attachment 283388:
 --> (https://bugzilla.gnome.org/review?bug=734659&attachment=283388)

::: gst/isomp4/qtdemux.c
@@ +3483,3 @@
+  stream->segment.base =
+      gst_segment_to_running_time (&stream->segment, GST_FORMAT_TIME,
+      stream->segment.position);

Using the stream position here can cause small de-sync of the streams as the
base for one will be different from the other streams because their positions
don't match.

Unless I'm missing something, we should use the largest of the positions of all
streams and use the same base for all stream segments.

@@ +3494,3 @@
+      ", base %" GST_TIME_FORMAT, seg_idx, GST_TIME_ARGS (start),
+      GST_TIME_ARGS (stop), GST_TIME_ARGS (time),
+      GST_TIME_ARGS (stream->segment.base));

There is a GST_FORMAT_SEGMENT that could simplify this statement.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list