mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-30 05:31:15 +00:00
androidmedia: Don't consider input buffer queueing failures as an error during flushing
This commit is contained in:
parent
71c0e0e19f
commit
880f3d8a18
3 changed files with 18 additions and 3 deletions
|
@ -1134,8 +1134,13 @@ gst_amc_audio_dec_handle_frame (GstAudioDecoder * decoder, GstBuffer * inbuf)
|
||||||
idx, buffer_info.size, buffer_info.presentation_time_us,
|
idx, buffer_info.size, buffer_info.presentation_time_us,
|
||||||
buffer_info.flags);
|
buffer_info.flags);
|
||||||
if (!gst_amc_codec_queue_input_buffer (self->codec, idx, &buffer_info,
|
if (!gst_amc_codec_queue_input_buffer (self->codec, idx, &buffer_info,
|
||||||
&err))
|
&err)) {
|
||||||
|
if (self->flushing) {
|
||||||
|
g_clear_error (&err);
|
||||||
|
goto flushing;
|
||||||
|
}
|
||||||
goto queue_error;
|
goto queue_error;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
gst_buffer_unmap (inbuf, &minfo);
|
gst_buffer_unmap (inbuf, &minfo);
|
||||||
gst_buffer_unref (inbuf);
|
gst_buffer_unref (inbuf);
|
||||||
|
|
|
@ -1243,8 +1243,13 @@ gst_amc_video_dec_handle_frame (GstVideoDecoder * decoder,
|
||||||
idx, buffer_info.size, buffer_info.presentation_time_us,
|
idx, buffer_info.size, buffer_info.presentation_time_us,
|
||||||
buffer_info.flags);
|
buffer_info.flags);
|
||||||
if (!gst_amc_codec_queue_input_buffer (self->codec, idx, &buffer_info,
|
if (!gst_amc_codec_queue_input_buffer (self->codec, idx, &buffer_info,
|
||||||
&err))
|
&err)) {
|
||||||
|
if (self->flushing) {
|
||||||
|
g_clear_error (&err);
|
||||||
|
goto flushing;
|
||||||
|
}
|
||||||
goto queue_error;
|
goto queue_error;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
gst_buffer_unmap (frame->input_buffer, &minfo);
|
gst_buffer_unmap (frame->input_buffer, &minfo);
|
||||||
|
|
|
@ -1524,8 +1524,13 @@ again:
|
||||||
"Queueing buffer %d: size %d time %" G_GINT64_FORMAT " flags 0x%08x",
|
"Queueing buffer %d: size %d time %" G_GINT64_FORMAT " flags 0x%08x",
|
||||||
idx, buffer_info.size, buffer_info.presentation_time_us,
|
idx, buffer_info.size, buffer_info.presentation_time_us,
|
||||||
buffer_info.flags);
|
buffer_info.flags);
|
||||||
if (!gst_amc_codec_queue_input_buffer (self->codec, idx, &buffer_info, &err))
|
if (!gst_amc_codec_queue_input_buffer (self->codec, idx, &buffer_info, &err)) {
|
||||||
|
if (self->flushing) {
|
||||||
|
g_clear_error (&err);
|
||||||
|
goto flushing;
|
||||||
|
}
|
||||||
goto queue_error;
|
goto queue_error;
|
||||||
|
}
|
||||||
|
|
||||||
gst_video_codec_frame_unref (frame);
|
gst_video_codec_frame_unref (frame);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue