[Bug 675132] tsdemux: implement proper seeking with binary search and keyframe detection

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue May 27 01:02:32 PDT 2014


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

Edward Hervey <bilboed> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #276600|none                        |needs-work
             status|                            |

--- Comment #38 from Edward Hervey <bilboed at bilboed.com> 2014-05-27 08:02:27 UTC ---
Review of attachment 276600:
 --> (https://bugzilla.gnome.org/review?bug=675132&attachment=276600)

::: gst/mpegtsdemux/tsdemux.c
@@ +75,3 @@
     GST_TIME_ARGS((a).position), GST_TIME_ARGS((a).duration)

+#define GST_FLOW_REWINDING GST_FLOW_CUSTOM_ERROR

That custom flow return is only stored in one place, and the only place it's
being read in is ... to convert it back to a GST_FLOW_OK ?

Is it really needed ?

@@ +849,3 @@
+    stream->needs_keyframe = TRUE;
+
+    stream->seeked_pts = 0;

It would be safer to use GST_CLOCK_TIME_NONE as default/unset values instead of
0.

@@ +2137,3 @@
   }

+  if ((stream->seeked_pts && GST_CLOCK_TIME_IS_VALID (stream->seeked_pts)

All of this would be simpler if the default value was GST_CLOCK_TIME_NONE :)

@@ +2213,3 @@
+   * and didn't want the data to be queued
+   */
+  if (res == GST_FLOW_REWINDING)

Only place where the custom GstFlowReturn seems to be used...

-- 
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