projects
/
platform
/
upstream
/
gstreamer.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
532659d
)
decodebin: Do not block on sticky and oob events
author
Matej Knopp
<matej.knopp@gmail.com>
Mon, 16 Apr 2012 11:43:41 +0000
(13:43 +0200)
committer
Sebastian Dröge
<sebastian.droege@collabora.co.uk>
Mon, 16 Apr 2012 11:49:07 +0000
(13:49 +0200)
gst/playback/gstdecodebin2.c
patch
|
blob
|
history
diff --git
a/gst/playback/gstdecodebin2.c
b/gst/playback/gstdecodebin2.c
index
b2cb4ee
..
b2d271e
100644
(file)
--- a/
gst/playback/gstdecodebin2.c
+++ b/
gst/playback/gstdecodebin2.c
@@
-3752,6
+3752,14
@@
source_pad_blocked_cb (GstPad * pad, GstPadProbeInfo * info, gpointer user_data)
GstDecodeChain *chain;
GstDecodeBin *dbin;
+ if ((GST_PAD_PROBE_INFO_TYPE (info) & GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM) &&
+ (GST_EVENT_IS_STICKY (GST_PAD_PROBE_INFO_EVENT (info))
+ || !GST_EVENT_IS_SERIALIZED (GST_PAD_PROBE_INFO_EVENT (info)))) {
+ /* do not block on sticky or out of band events otherwise the allocation query
+ from demuxer might block the loop thread */
+ return GST_PAD_PROBE_PASS;
+ }
+
chain = dpad->chain;
dbin = chain->dbin;