From 3d0988f46fea15bcd5352c281b0461a45183469e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Tue, 9 Jul 2013 12:42:17 +0200 Subject: [PATCH] videomixer: Fix handling of buffers without a duration We'll have to pop buffer from collectpads and store it internally only to get the timestamp of the next buffer. If we continue to keep it in collectpads, no new buffer to calculate the end time will ever arrive. https://bugzilla.gnome.org/show_bug.cgi?id=703743 --- gst/videomixer/videomixer2.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gst/videomixer/videomixer2.c b/gst/videomixer/videomixer2.c index 3fd07e443a..464dc48c85 100644 --- a/gst/videomixer/videomixer2.c +++ b/gst/videomixer/videomixer2.c @@ -699,6 +699,8 @@ gst_videomixer2_fill_queues (GstVideoMixer2 * mix, if (end_time == -1) { mixcol->queued = buf; + buf = gst_collect_pads_pop (mix->collect, &mixcol->collect); + gst_buffer_unref (buf); need_more_data = TRUE; continue; }