From e747ad486734a9fae1904488bae014df3216e58c Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Fri, 7 May 2010 13:30:07 +0200 Subject: [PATCH] GESTimelinePipeline: Limit encodebin buffering to 1 buffer We don't need to queue more than that since we only need thread decoupling and the various streams going into encodebin are guaranteed to come from different streaming threads (since they're separate gnlcomposition). --- ges/ges-timeline-pipeline.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ges/ges-timeline-pipeline.c b/ges/ges-timeline-pipeline.c index eb7b002f75..020fc75419 100644 --- a/ges/ges-timeline-pipeline.c +++ b/ges/ges-timeline-pipeline.c @@ -89,6 +89,11 @@ ges_timeline_pipeline_init (GESTimelinePipeline * self) self->playsink = gst_element_factory_make ("playsink", "internal-sinks"); self->encodebin = gst_element_factory_make ("encodebin", "internal-encodebin"); + /* Limit encodebin buffering to 1 buffer since we know the various + * stream fed to it are decoupled already */ + g_object_set (self->encodebin, "queue-buffers-max", 1, + "queue-bytes-max", 0, "queue-time-max", 0, + NULL); if (G_UNLIKELY (self->playsink == NULL)) GST_ERROR_OBJECT (self, "Can't create playsink instance !");