MinQtLog2SizeIntraC is usually (eq. (51) from VVCv3) defined as sps_log2_diff_min_qt_min_cb_intra_slice_chroma + MinCbLog2SizeY
However, in the case ph_log2_diff_min_qt_min_cb_intra_slice_chroma is present, it is instead (eq. (83) from VVCv3) defined as ph_log2_diff_min_qt_min_cb_intra_slice_chroma + MinCbLog2SizeY When ph_log2_diff_max_bt_min_qt_intra_slice_chroma and ph_log2_diff_max_tt_min_qt_intra_slice_chroma are present, so is ph_log2_diff_min_qt_min_cb_intra_slice_chroma, and so we should use the second definition of MinQtLog2SizeIntraC, rather than the first, when calculating the bounds for these syntax elements. Signed-off-by: Frank Plowman <p...@frankplowman.com> --- libavcodec/cbs_h266_syntax_template.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c index 6b2d6534ef..83d945ec74 100644 --- a/libavcodec/cbs_h266_syntax_template.c +++ b/libavcodec/cbs_h266_syntax_template.c @@ -2811,7 +2811,7 @@ static int FUNC(picture_header) (CodedBitstreamContext *ctx, RWContext *rw, 0, 2 * (ctb_log2_size_y - min_cb_log2_size_y)); if (sps->sps_max_mtt_hierarchy_depth_intra_slice_chroma != 0) { unsigned int min_qt_log2_size_intra_c = - sps->sps_log2_diff_min_qt_min_cb_intra_slice_chroma + + current->ph_log2_diff_min_qt_min_cb_intra_slice_chroma + min_cb_log2_size_y; ue(ph_log2_diff_max_bt_min_qt_intra_slice_chroma, 0, FFMIN(6, ctb_log2_size_y) - min_qt_log2_size_intra_c); -- 2.47.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".