summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2012-01-25 12:03:31 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2012-01-25 12:04:24 +0100
commit7e5aeba02f27ac495a8624514e7346a4e7ffe598 (patch)
tree6684ec789c360d38026e111cba0852e9b4dea530
parent1a592199e9b2bf466284604d5119b4fca5826cc0 (diff)
decodebin2: Fix merge error
-rw-r--r--gst/playback/gstdecodebin2.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/gst/playback/gstdecodebin2.c b/gst/playback/gstdecodebin2.c
index 9d2ad08de..89884ddd7 100644
--- a/gst/playback/gstdecodebin2.c
+++ b/gst/playback/gstdecodebin2.c
@@ -2316,12 +2316,13 @@ pad_event_cb (GstPad * pad, GstPadProbeInfo * info, gpointer data)
}
static void
-demuxer_pad_blocked_cb (GstPad * pad, gboolean blocked, GstDecodeChain * chain)
+demuxer_pad_blocked_cb (GstPad * pad, GstPadProbeInfo * info,
+ GstDecodeChain * chain)
{
GstDecodeBin *dbin;
dbin = chain->dbin;
- if (!blocked)
+ if (info->type == GST_PAD_PROBE_TYPE_IDLE)
gst_decode_chain_prune (dbin->decode_chain);
}
@@ -2355,8 +2356,9 @@ pad_added_cb (GstElement * element, GstPad * pad, GstDecodeChain * chain)
if (!gst_pad_is_blocked (child_chain->pad)) {
GST_DEBUG_OBJECT (pad, "blocking next group's pad %p", pad);
- gst_pad_set_blocked_async (child_chain->pad, TRUE,
- (GstPadBlockCallback) demuxer_pad_blocked_cb, chain);
+ gst_pad_add_probe (child_chain->pad,
+ GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM,
+ (GstPadProbeCallback) demuxer_pad_blocked_cb, chain, NULL);
}
}
}
@@ -2951,8 +2953,8 @@ unblock_demuxer_pads (GstDecodeChain * chain)
GST_DEBUG_OBJECT (chain->dbin, "Unblocking demuxer pad for chain %p", chain);
if (gst_pad_is_blocked (chain->pad))
- gst_pad_set_blocked_async (chain->pad, FALSE,
- (GstPadBlockCallback) demuxer_pad_blocked_cb, chain);
+ gst_pad_add_probe (chain->pad, GST_PAD_PROBE_TYPE_IDLE,
+ (GstPadProbeCallback) demuxer_pad_blocked_cb, chain, NULL);
if (chain->active_group) {
for (l = chain->active_group->children; l; l = l->next) {
GstDecodeChain *child_chain = l->data;