Multiqueue: don't allow dropping SEGMENT_DONE events
[platform/upstream/gstreamer.git] / plugins / elements / gstmultiqueue.h
index 98e4bc1..524fcf9 100644 (file)
@@ -42,6 +42,9 @@ G_BEGIN_DECLS
 typedef struct _GstMultiQueue GstMultiQueue;
 typedef struct _GstMultiQueueClass GstMultiQueueClass;
 
+typedef struct _GstMultiQueuePad GstMultiQueuePad;
+typedef struct _GstMultiQueuePadClass GstMultiQueuePadClass;
+
 /**
  * GstMultiQueue:
  *
@@ -52,6 +55,7 @@ struct _GstMultiQueue {
 
   gboolean sync_by_running_time;
   gboolean use_interleave;
+  GstClockTime min_interleave_time;
 
   /* number of queues */
   guint        nbqueues;
@@ -62,9 +66,9 @@ struct _GstMultiQueue {
 
   GstDataQueueSize  max_size, extra_size;
   gboolean use_buffering;
-  gint low_percent, high_percent;
+  gint low_watermark, high_watermark;
   gboolean buffering;
-  gint percent;
+  gint buffering_percent;
 
   guint    counter;    /* incoming object counter, use atomic accesses */
   guint32  highid;     /* contains highest id of last outputted object */
@@ -76,7 +80,7 @@ struct _GstMultiQueue {
 
   gint numwaiting;     /* number of not-linked pads waiting */
 
-  gboolean percent_changed;
+  gboolean buffering_percent_changed;
   GMutex buffering_post_lock; /* assures only one posted at a time */
 
   GstClockTime interleave;     /* Input interleave */