summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-15 11:46:34 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-15 11:46:34 +0100
commite1f94660f73bdb20fa601b3619cc7f7ac8e90fb0 (patch)
tree42efa07315f51cd4f76e5e5797db55f1aa99c9d2
parent35a13a2cead12656d60c16ecc93d279c4889cda2 (diff)
downloadgst-omx-e1f94660f73bdb20fa601b3619cc7f7ac8e90fb0.tar.gz
omx: Stop output port task after draining
-rw-r--r--omx/gstomxaudioenc.c1
-rw-r--r--omx/gstomxvideodec.c1
-rw-r--r--omx/gstomxvideoenc.c1
3 files changed, 3 insertions, 0 deletions
diff --git a/omx/gstomxaudioenc.c b/omx/gstomxaudioenc.c
index 1a2344b..c3b7152 100644
--- a/omx/gstomxaudioenc.c
+++ b/omx/gstomxaudioenc.c
@@ -507,6 +507,7 @@ eos:
self->draining = FALSE;
g_cond_broadcast (&self->drain_cond);
flow_ret = GST_FLOW_OK;
+ gst_pad_pause_task (GST_AUDIO_ENCODER_SRC_PAD (self));
} else {
GST_DEBUG_OBJECT (self, "Component signalled EOS");
flow_ret = GST_FLOW_EOS;
diff --git a/omx/gstomxvideodec.c b/omx/gstomxvideodec.c
index 89ef59b..6e8d139 100644
--- a/omx/gstomxvideodec.c
+++ b/omx/gstomxvideodec.c
@@ -1634,6 +1634,7 @@ eos:
self->draining = FALSE;
g_cond_broadcast (&self->drain_cond);
flow_ret = GST_FLOW_OK;
+ gst_pad_pause_task (GST_VIDEO_DECODER_SRC_PAD (self));
} else {
GST_DEBUG_OBJECT (self, "Component signalled EOS");
flow_ret = GST_FLOW_EOS;
diff --git a/omx/gstomxvideoenc.c b/omx/gstomxvideoenc.c
index 22efecd..82f2fad 100644
--- a/omx/gstomxvideoenc.c
+++ b/omx/gstomxvideoenc.c
@@ -901,6 +901,7 @@ eos:
self->draining = FALSE;
g_cond_broadcast (&self->drain_cond);
flow_ret = GST_FLOW_OK;
+ gst_pad_pause_task (GST_VIDEO_ENCODER_SRC_PAD (self));
} else {
GST_DEBUG_OBJECT (self, "Component signalled EOS");
flow_ret = GST_FLOW_EOS;