[Bug 658241] mpeg2dec: post QoS messages when dropping a frame due to QoS

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Sep 7 03:53:33 PDT 2011


https://bugzilla.gnome.org/show_bug.cgi?id=658241
  GStreamer | gst-plugins-ugly | unspecified

Sebastian Dröge <slomo> changed:

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

--- Comment #8 from Sebastian Dröge <slomo at circular-chaos.org> 2011-09-07 10:53:30 UTC ---
Review of attachment 195690:
 --> (https://bugzilla.gnome.org/review?bug=658241&attachment=195690)

::: gst-libs/gst/video/video.c
@@ +2367,3 @@
+  qt->diff = diff;
+  qt->timestamp = timestamp;
+  qt->earliest_time = qt->timestamp + qt->diff;

timestamp can be GST_CLOCK_TIME_NONE

The formula should be:

   if (diff > 0)
      et = ts + 2 * diff + frame_duration;
   else
      et = ts + diff

::: gst-libs/gst/video/video.h
@@ +444,3 @@
+  guint64 dropped;
+  GMutex *lock; /* protects the above */
+  GstElement *element;

Padding

@@ +445,3 @@
+  GMutex *lock; /* protects the above */
+  GstElement *element;
+} GstQoSTracker;

GstVideoQOSTracker because it's video specific

@@ +585,3 @@
+void           gst_video_qos_reset           (GstQoSTracker * qt);
+void           gst_video_qos_update          (GstQoSTracker * qt, GstEvent*
event);
+gboolean       gst_video_qos_process_frame   (GstQoSTracker * qt, GstSegment
*segment,

Make the segment const

@@ +587,3 @@
+gboolean       gst_video_qos_process_frame   (GstQoSTracker * qt, GstSegment
*segment,
+                                             GstClockTime timestamp,
GstClockTime duration);
+void           gst_video_qos_destroy         (GstQoSTracker * qt);

_clear() because it doesn't free the struct. Also name all functions like the
struct, e.g. gst_video_qos_tracker_init()

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