@@ -2730,9 +2730,14 @@ static int FUNC(picture_header) (CodedBitstreamContext *ctx, RWContext *rw,
0, FFMIN(6, ctb_log2_size_y) - min_cb_log2_size_y);
ue(ph_max_mtt_hierarchy_depth_intra_slice_luma,
0, 2 * (ctb_log2_size_y - min_cb_log2_size_y));
+ min_qt_log2_size_intra_y =
+ current->ph_log2_diff_min_qt_min_cb_intra_slice_luma +
+ min_cb_log2_size_y;
if (current->ph_max_mtt_hierarchy_depth_intra_slice_luma != 0) {
ue(ph_log2_diff_max_bt_min_qt_intra_slice_luma,
- 0, ctb_log2_size_y - min_qt_log2_size_intra_y);
+ 0, (sps->sps_qtbtt_dual_tree_intra_flag ?
+ FFMIN(6, ctb_log2_size_y) :
+ ctb_log2_size_y) - min_qt_log2_size_intra_y);
ue(ph_log2_diff_max_tt_min_qt_intra_slice_luma,
0, FFMIN(6, ctb_log2_size_y) - min_qt_log2_size_intra_y);
} else {
And fix the allowed range for ph_log2_diff_max_bt_min_qt_intra_slice_luma while at it. Signed-off-by: James Almer <jamrial@gmail.com> --- libavcodec/cbs_h266_syntax_template.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)