summaryrefslogtreecommitdiffstats
path: root/gst/liveadder
diff options
context:
space:
mode:
authorOlivier Crete <olivier.crete@collabora.co.uk>2008-05-14 23:49:10 +0000
committerEdward Hervey <bilboed@bilboed.com>2009-02-17 19:29:05 +0100
commit75edc07516b78309dc10f6419411f5db1b7f17a9 (patch)
tree644d718208d17b5de08070f7024f1d9b34a36c09 /gst/liveadder
parent5f37d95613bc6dc22d0ee5417804d75e9bc3fbf0 (diff)
downloadgst-plugins-bad-75edc07516b78309dc10f6419411f5db1b7f17a9.tar.gz
gst-plugins-bad-75edc07516b78309dc10f6419411f5db1b7f17a9.tar.bz2
gst-plugins-bad-75edc07516b78309dc10f6419411f5db1b7f17a9.zip
[MOVED FROM GST-P-FARSIGHT] Push out buffer if we're not playing while there is no clock
20080514234910-3e2dc-1096eb7dc3fada19afc81dcd536d9edc821d0da9.gz
Diffstat (limited to 'gst/liveadder')
-rw-r--r--gst/liveadder/liveadder.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gst/liveadder/liveadder.c b/gst/liveadder/liveadder.c
index 3ad1e192..59203769 100644
--- a/gst/liveadder/liveadder.c
+++ b/gst/liveadder/liveadder.c
@@ -1083,7 +1083,10 @@ gst_live_adder_loop (gpointer data)
/* If we have no clock, then we can't do anything.. error */
if (!clock) {
- goto no_clock;
+ if (adder->playing)
+ goto no_clock;
+ else
+ goto push_buffer;
}
GST_DEBUG_OBJECT (adder, "sync to timestamp %" GST_TIME_FORMAT,
@@ -1122,6 +1125,8 @@ gst_live_adder_loop (gpointer data)
if (ret != GST_CLOCK_OK && ret != GST_CLOCK_EARLY)
goto clock_error;
+ push_buffer:
+
buffer = g_queue_pop_head (adder->buffers);
if (!buffer)