h26xparse: Prevent assert hitting when discarding NAL unit

If using NAL aligment and only dropping part of the AU, the size
argument given to gst_base_parse_finish_frame was wrong and this assert
in gst_base_parse_finish_frame hit
'gst_adapter_available (parse->priv->adapter) >= size' failed

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8976>
This commit is contained in:
Stefan Andersson 2025-05-26 16:55:43 +02:00 committed by GStreamer Marge Bot
parent 28fafc5488
commit 9aa1b969cd
3 changed files with 3 additions and 3 deletions

View File

@ -1336,7 +1336,7 @@ gst_h264_parse_handle_frame_packetized (GstBaseParse * parse,
/* should not be happening for nice AVC */
GST_WARNING_OBJECT (parse, "skipping leftover AVC data %d", left);
frame->flags |= GST_BASE_PARSE_FRAME_FLAG_DROP;
ret = gst_base_parse_finish_frame (parse, frame, map.size);
ret = gst_base_parse_finish_frame (parse, frame, left);
}
}

View File

@ -1132,7 +1132,7 @@ gst_h265_parse_handle_frame_packetized (GstBaseParse * parse,
/* should not be happening for nice HEVC */
GST_WARNING_OBJECT (parse, "skipping leftover HEVC data %d", left);
frame->flags |= GST_BASE_PARSE_FRAME_FLAG_DROP;
ret = gst_base_parse_finish_frame (parse, frame, map.size);
ret = gst_base_parse_finish_frame (parse, frame, left);
}
}

View File

@ -1069,7 +1069,7 @@ gst_h266_parse_handle_frame_packetized (GstBaseParse * parse,
/* should not be happening for nice VVC */
GST_WARNING_OBJECT (parse, "skipping leftover VVC data %d", left);
frame->flags |= GST_BASE_PARSE_FRAME_FLAG_DROP;
ret = gst_base_parse_finish_frame (parse, frame, map.size);
ret = gst_base_parse_finish_frame (parse, frame, left);
}
}