summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: ae5b3a8)
raw | patch | inline | side by side (parent: ae5b3a8)
author | Alessandro Decina <alessandro.decina@collabora.co.uk> | |
Fri, 6 May 2011 06:40:26 +0000 (08:40 +0200) | ||
committer | Nikhil Devshatwar <a0132237@ti.com> | |
Wed, 15 May 2013 11:20:50 +0000 (16:50 +0530) |
This is needed by live sources to unblock buffer_alloc going from PLAYING to
PAUSED.
Currently basesrc assumes that ::create can always be unblocked. When going from
PLAYING to PAUSED it can happen that a live source is blocked in a buffer_alloc
call and so we need a way to unblock it.
PAUSED.
Currently basesrc assumes that ::create can always be unblocked. When going from
PLAYING to PAUSED it can happen that a live source is blocked in a buffer_alloc
call and so we need a way to unblock it.
gst/gstevent.c | patch | blob | history | |
gst/gstevent.h | patch | blob | history |
diff --git a/gst/gstevent.c b/gst/gstevent.c
index 50218d23a5cb6afe75dee8e1a17c44c38141dab4..41f356d0aa261d516ada8cb0c0ec13be591f8d7f 100644 (file)
--- a/gst/gstevent.c
+++ b/gst/gstevent.c
{GST_EVENT_UNKNOWN, "unknown", 0},
{GST_EVENT_FLUSH_START, "flush-start", 0},
{GST_EVENT_FLUSH_STOP, "flush-stop", 0},
+ {GST_EVENT_LIVE_FLUSH, "live-flush", 0},
{GST_EVENT_EOS, "eos", 0},
{GST_EVENT_NEWSEGMENT, "newsegment", 0},
{GST_EVENT_TAG, "tag", 0},
return gst_event_new (GST_EVENT_FLUSH_STOP);
}
+
+GstEvent *
+gst_event_new_live_flush (void)
+{
+ return gst_event_new (GST_EVENT_LIVE_FLUSH);
+}
+
/**
* gst_event_new_eos:
*
diff --git a/gst/gstevent.h b/gst/gstevent.h
index 744cfb2548cb25e9908e28089bfc400dec091736..bbe28b924724a90478a3617d816535017a50cb82 100644 (file)
--- a/gst/gstevent.h
+++ b/gst/gstevent.h
/* bidirectional events */
GST_EVENT_FLUSH_START = GST_EVENT_MAKE_TYPE (1, FLAG(BOTH)),
GST_EVENT_FLUSH_STOP = GST_EVENT_MAKE_TYPE (2, FLAG(BOTH) | FLAG(SERIALIZED)),
+ GST_EVENT_LIVE_FLUSH = GST_EVENT_MAKE_TYPE (3, FLAG(BOTH)),
/* downstream serialized events */
GST_EVENT_EOS = GST_EVENT_MAKE_TYPE (5, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
GST_EVENT_NEWSEGMENT = GST_EVENT_MAKE_TYPE (6, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
/* flush events */
GstEvent * gst_event_new_flush_start (void) G_GNUC_MALLOC;
GstEvent * gst_event_new_flush_stop (void) G_GNUC_MALLOC;
+GstEvent * gst_event_new_live_flush (void) G_GNUC_MALLOC;
/* EOS event */
GstEvent * gst_event_new_eos (void) G_GNUC_MALLOC;