mirror of
https://github.com/ittiam-systems/libhevc.git
synced 2026-10-07 11:01:34 +07:00
Added check for invalid log2_max_transform_block_size in SPS am: b5cae8181e
am: 4b6511b432
Change-Id: I5a7abc547f46a5f84f4778f9787a07285a798bdc
This commit is contained in:
commit
c6bda6e3d2
1 changed files with 9 additions and 0 deletions
|
|
@ -1191,6 +1191,7 @@ IHEVCD_ERROR_T ihevcd_parse_sps(codec_t *ps_codec)
|
|||
sps_t *ps_sps;
|
||||
profile_tier_lvl_info_t s_ptl;
|
||||
bitstrm_t *ps_bitstrm = &ps_codec->s_parse.s_bitstrm;
|
||||
WORD32 ctb_log2_size_y = 0;
|
||||
|
||||
|
||||
BITS_PARSE("video_parameter_set_id", value, ps_bitstrm, 4);
|
||||
|
|
@ -1323,6 +1324,8 @@ IHEVCD_ERROR_T ihevcd_parse_sps(codec_t *ps_codec)
|
|||
UEV_PARSE("log2_diff_max_min_coding_block_size", value, ps_bitstrm);
|
||||
ps_sps->i1_log2_diff_max_min_coding_block_size = value;
|
||||
|
||||
ctb_log2_size_y = ps_sps->i1_log2_min_coding_block_size + ps_sps->i1_log2_diff_max_min_coding_block_size;
|
||||
|
||||
UEV_PARSE("log2_min_transform_block_size_minus2", value, ps_bitstrm);
|
||||
ps_sps->i1_log2_min_transform_block_size = value + 2;
|
||||
|
||||
|
|
@ -1332,6 +1335,12 @@ IHEVCD_ERROR_T ihevcd_parse_sps(codec_t *ps_codec)
|
|||
ps_sps->i1_log2_max_transform_block_size = ps_sps->i1_log2_min_transform_block_size +
|
||||
ps_sps->i1_log2_diff_max_min_transform_block_size;
|
||||
|
||||
if ((ps_sps->i1_log2_max_transform_block_size < 0) ||
|
||||
(ps_sps->i1_log2_max_transform_block_size > MIN(ctb_log2_size_y, 5)))
|
||||
{
|
||||
return IHEVCD_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
ps_sps->i1_log2_ctb_size = ps_sps->i1_log2_min_coding_block_size +
|
||||
ps_sps->i1_log2_diff_max_min_coding_block_size;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue