mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-18 20:25:25 +00:00
amcvideodec: advance the ready counter ourselves when render=FALSE
When not rendering the video frame, e.g. when freeing an unreleased sync frame, we will not receive a frame listener callback. Reduces the amount of 'on_frame_available miss detected' messages when dropping frames. https://bugzilla.gnome.org/show_bug.cgi?id=761014
This commit is contained in:
parent
0d3cd82749
commit
3c29dcaddb
1 changed files with 8 additions and 2 deletions
|
@ -914,11 +914,17 @@ _gl_sync_release_buffer (struct gl_sync *sync, gboolean render)
|
|||
"frames for frame %u", sync, diff, sync->gl_frame_no);
|
||||
}
|
||||
|
||||
GST_TRACE ("gl_sync %p release_output_buffer idx %u frame %u", sync,
|
||||
sync->buffer_idx, sync->gl_frame_no);
|
||||
GST_TRACE ("gl_sync %p release_output_buffer idx %u frame %u render %s",
|
||||
sync, sync->buffer_idx, sync->gl_frame_no, render ? "TRUE" : "FALSE");
|
||||
|
||||
/* Release the frame into the surface */
|
||||
sync->sink->gl_released_frame_count++;
|
||||
if (!render) {
|
||||
/* Advance the ready counter ourselves if we aren't going to render
|
||||
* and therefore receive a listener callback */
|
||||
sync->sink->gl_ready_frame_count++;
|
||||
}
|
||||
|
||||
if (!gst_amc_codec_release_output_buffer (sync->sink->codec,
|
||||
sync->buffer_idx, render, &error)) {
|
||||
GST_ERROR_OBJECT (sync->sink,
|
||||
|
|
Loading…
Reference in a new issue