[FFmpeg-cvslog] avcodec/cbs_h266: fix use of uninitialized value

James Almer git at videolan.org
Fri Jul 7 17:56:46 EEST 2023


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Thu Jul  6 12:04:50 2023 -0300| [0f008a0ffa5c1a863e4c78c640135a3693ff1d9c] | committer: James Almer

avcodec/cbs_h266: fix use of uninitialized value

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 at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0f008a0ffa5c1a863e4c78c640135a3693ff1d9c
---

 libavcodec/cbs_h266_syntax_template.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/libavcodec/cbs_h266_syntax_template.c b/libavcodec/cbs_h266_syntax_template.c
index b984a12d8f..a39efe588e 100644
--- a/libavcodec/cbs_h266_syntax_template.c
+++ b/libavcodec/cbs_h266_syntax_template.c
@@ -2731,8 +2731,13 @@ static int FUNC(picture_header) (CodedBitstreamContext *ctx, RWContext *rw,
             ue(ph_max_mtt_hierarchy_depth_intra_slice_luma,
                0, 2 * (ctb_log2_size_y - min_cb_log2_size_y));
             if (current->ph_max_mtt_hierarchy_depth_intra_slice_luma != 0) {
+                min_qt_log2_size_intra_y =
+                    current->ph_log2_diff_min_qt_min_cb_intra_slice_luma +
+                    min_cb_log2_size_y;
                 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 {



More information about the ffmpeg-cvslog mailing list