summaryrefslogtreecommitdiff
path: root/gst-libs
diff options
context:
space:
mode:
authorStefan Sauer <ensonic@users.sf.net>2017-11-01 15:18:08 +0100
committerStefan Sauer <ensonic@users.sf.net>2017-11-01 15:19:15 +0100
commit859cc0a662cf3d45fd1f753f6271f1d1fd5d5110 (patch)
treedb97a9595eee179929c074e5f0c02d49d5ee210b /gst-libs
parentcd2dca627507f2b81a1348ad96eb59e3fecc548f (diff)
downloadgstreamer-plugins-bad-859cc0a662cf3d45fd1f753f6271f1d1fd5d5110.tar.gz
aggregator: add more comments
Diffstat (limited to 'gst-libs')
-rw-r--r--gst-libs/gst/base/gstaggregator.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gst-libs/gst/base/gstaggregator.c b/gst-libs/gst/base/gstaggregator.c
index fdffa37cd..b757cff74 100644
--- a/gst-libs/gst/base/gstaggregator.c
+++ b/gst-libs/gst/base/gstaggregator.c
@@ -286,6 +286,8 @@ struct _GstAggregatorPrivate
/* Our state is >= PAUSED */
gboolean running; /* protected by src_lock */
+ /* seqnum from seek or segment,
+ * to be applied to synthetic segment/eos events */
gint seqnum;
gboolean send_stream_start; /* protected by srcpad stream lock */
gboolean send_segment;
@@ -561,6 +563,8 @@ gst_aggregator_push_mandatory_events (GstAggregator * self)
segment = gst_event_new_segment (&self->segment);
if (!self->priv->seqnum)
+ /* This code-path is in preparation to be able to run without a source
+ * connected. Then we won't have a seq-num from a segment event. */
self->priv->seqnum = gst_event_get_seqnum (segment);
else
gst_event_set_seqnum (segment, self->priv->seqnum);
@@ -1103,6 +1107,8 @@ gst_aggregator_aggregate_func (GstAggregator * self)
gst_aggregator_iterate_sinkpads (self, gst_aggregator_do_events_and_queries,
NULL);
+ /* Ensure we have buffers ready (either in clipped_buffer or at the head of
+ * the queue */
if (!gst_aggregator_wait_and_check (self, &timeout))
continue;