[Bug 790696] Seek in matroska file (H.264) ends up in cluster with no key-frame.

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Nov 22 12:33:07 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=790696

Mats Lindestam <mats.lindestam at axis.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mats.lindestam at axis.com
 Attachment #364183|none                        |needs-work
             status|                            |

--- Comment #2 from Mats Lindestam <mats.lindestam at axis.com> ---
Created attachment 364183
  --> https://bugzilla.gnome.org/attachment.cgi?id=364183&action=edit
Patch used in our local code. This was also aimed for upstreams code.

We are using gst-plugins-good version 1.10.4.

I have added the patch that was intended for the upstream code, but it is
identical to the patch that we are using in our code. Apart from:

         GST_DEBUG_OBJECT (demux, "undershot target");
-        /* ok if close enough */
-        if (GST_CLOCK_DIFF (cluster_time, time) < 5 * GST_SECOND) {
-          GST_DEBUG_OBJECT (demux, "target close enough");
-          prev_cluster_time = cluster_time;
-          prev_cluster_offset = cluster_offset;
-          break;
+        if (has_keyframe) {
+          /* ok if close enough */
+          if (GST_CLOCK_DIFF (cluster_time, time) < 5 * GST_SECOND) {
+            GST_DEBUG_OBJECT (demux, "target close enough");
+            prev_cluster_time = cluster_time;
+            prev_cluster_offset = cluster_offset;
+            prev_has_keyframe = has_keyframe;
+            break;
+          }

I hope that is ok. The patch used for our are actually two separate patches. I
can add them if that is something that you think is something you can use.

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