mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-25 07:26:29 +00:00
Release output buffers a bit earlier
This commit is contained in:
parent
4c3617f7f0
commit
9a034f2beb
2 changed files with 6 additions and 6 deletions
|
@ -594,6 +594,9 @@ retry:
|
||||||
gst_audio_decoder_finish_frame (GST_AUDIO_DECODER (self), outbuf, -1);
|
gst_audio_decoder_finish_frame (GST_AUDIO_DECODER (self), outbuf, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!gst_amc_codec_release_output_buffer (self->codec, idx))
|
||||||
|
goto failed_release;
|
||||||
|
|
||||||
if (is_eos || flow_ret == GST_FLOW_UNEXPECTED) {
|
if (is_eos || flow_ret == GST_FLOW_UNEXPECTED) {
|
||||||
GST_AUDIO_DECODER_STREAM_UNLOCK (self);
|
GST_AUDIO_DECODER_STREAM_UNLOCK (self);
|
||||||
g_mutex_lock (self->drain_lock);
|
g_mutex_lock (self->drain_lock);
|
||||||
|
@ -611,9 +614,6 @@ retry:
|
||||||
GST_DEBUG_OBJECT (self, "Finished frame: %s", gst_flow_get_name (flow_ret));
|
GST_DEBUG_OBJECT (self, "Finished frame: %s", gst_flow_get_name (flow_ret));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!gst_amc_codec_release_output_buffer (self->codec, idx))
|
|
||||||
goto failed_release;
|
|
||||||
|
|
||||||
self->downstream_flow_ret = flow_ret;
|
self->downstream_flow_ret = flow_ret;
|
||||||
|
|
||||||
if (flow_ret != GST_FLOW_OK)
|
if (flow_ret != GST_FLOW_OK)
|
||||||
|
|
|
@ -1008,6 +1008,9 @@ retry:
|
||||||
flow_ret = gst_video_decoder_drop_frame (GST_VIDEO_DECODER (self), frame);
|
flow_ret = gst_video_decoder_drop_frame (GST_VIDEO_DECODER (self), frame);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!gst_amc_codec_release_output_buffer (self->codec, idx))
|
||||||
|
goto failed_release;
|
||||||
|
|
||||||
if (is_eos || flow_ret == GST_FLOW_UNEXPECTED) {
|
if (is_eos || flow_ret == GST_FLOW_UNEXPECTED) {
|
||||||
GST_VIDEO_DECODER_STREAM_UNLOCK (self);
|
GST_VIDEO_DECODER_STREAM_UNLOCK (self);
|
||||||
g_mutex_lock (self->drain_lock);
|
g_mutex_lock (self->drain_lock);
|
||||||
|
@ -1025,9 +1028,6 @@ retry:
|
||||||
GST_DEBUG_OBJECT (self, "Finished frame: %s", gst_flow_get_name (flow_ret));
|
GST_DEBUG_OBJECT (self, "Finished frame: %s", gst_flow_get_name (flow_ret));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!gst_amc_codec_release_output_buffer (self->codec, idx))
|
|
||||||
goto failed_release;
|
|
||||||
|
|
||||||
self->downstream_flow_ret = flow_ret;
|
self->downstream_flow_ret = flow_ret;
|
||||||
|
|
||||||
if (flow_ret != GST_FLOW_OK)
|
if (flow_ret != GST_FLOW_OK)
|
||||||
|
|
Loading…
Reference in a new issue