diff --git a/omx/gstomxaudioenc.c b/omx/gstomxaudioenc.c index 2a8a090556..538902cab7 100644 --- a/omx/gstomxaudioenc.c +++ b/omx/gstomxaudioenc.c @@ -514,6 +514,8 @@ eos: flow_ret = GST_FLOW_EOS; } g_mutex_unlock (&self->drain_lock); + + GST_AUDIO_ENCODER_STREAM_LOCK (self); self->downstream_flow_ret = flow_ret; /* Here we fallback and pause the task for the EOS case */ diff --git a/omx/gstomxvideodec.c b/omx/gstomxvideodec.c index 5378f607fb..74a71d4155 100644 --- a/omx/gstomxvideodec.c +++ b/omx/gstomxvideodec.c @@ -2156,6 +2156,8 @@ eos: flow_ret = GST_FLOW_EOS; } g_mutex_unlock (&self->drain_lock); + + GST_VIDEO_DECODER_STREAM_LOCK (self); self->downstream_flow_ret = flow_ret; /* Here we fallback and pause the task for the EOS case */ diff --git a/omx/gstomxvideoenc.c b/omx/gstomxvideoenc.c index 4506992ed9..a399c07dea 100644 --- a/omx/gstomxvideoenc.c +++ b/omx/gstomxvideoenc.c @@ -908,6 +908,8 @@ eos: flow_ret = GST_FLOW_EOS; } g_mutex_unlock (&self->drain_lock); + + GST_VIDEO_ENCODER_STREAM_LOCK (self); self->downstream_flow_ret = flow_ret; /* Here we fallback and pause the task for the EOS case */