From: Sebastian Dröge Date: Fri, 18 Nov 2011 17:59:43 +0000 (-0800) Subject: omxvideoenc: First set ports to flushing before waiting for the srcpad streaming... X-Git-Tag: 1.0.0~241 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=be4e1e184e839051a29e4f4a5171dc8e0baeed9d;p=platform%2Fupstream%2Fgst-omx.git omxvideoenc: First set ports to flushing before waiting for the srcpad streaming thread to finish --- diff --git a/omx/gstomxvideoenc.c b/omx/gstomxvideoenc.c index 89ee30d..34ec8d9 100644 --- a/omx/gstomxvideoenc.c +++ b/omx/gstomxvideoenc.c @@ -996,6 +996,11 @@ gst_omx_video_enc_stop (GstBaseVideoEncoder * encoder) self = GST_OMX_VIDEO_ENC (encoder); + GST_DEBUG_OBJECT (self, "Stopping encoder"); + + gst_omx_port_set_flushing (self->in_port, TRUE); + gst_omx_port_set_flushing (self->out_port, TRUE); + gst_pad_stop_task (GST_BASE_VIDEO_CODEC_SRC_PAD (encoder)); if (gst_omx_component_get_state (self->component, 0) > OMX_StateIdle) @@ -1010,9 +1015,6 @@ gst_omx_video_enc_stop (GstBaseVideoEncoder * encoder) g_cond_broadcast (self->drain_cond); g_mutex_unlock (self->drain_lock); - gst_omx_port_set_flushing (self->in_port, TRUE); - gst_omx_port_set_flushing (self->out_port, TRUE); - gst_omx_component_get_state (self->component, 5 * GST_SECOND); return TRUE;