diff options
author | Harish Mahendrakar <harish.mahendrakar@ittiam.com> | 2019-09-27 14:30:47 -0700 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2019-09-27 14:30:47 -0700 |
commit | 12ef0d291be9fd4b7c26fc46d0e8e725041aaf9b (patch) | |
tree | c39e2ef6b81655ce017c73f315e80020c2b8446c /decoder | |
parent | c7bf85f8ae51e3a4e9ec0278d5ba8705d1be7bfe (diff) | |
parent | a9fc115a233140b969013b6662b8a0fdf20aa6d6 (diff) | |
download | libhevc-12ef0d291be9fd4b7c26fc46d0e8e725041aaf9b.tar.gz |
Check change in CTB size when decoding multiple SPS with same id am: 70940fbabd
am: a9fc115a23
Change-Id: I5b9cbfb2e9c11d1b66c22cc52aef64f9e263ad62
Diffstat (limited to 'decoder')
-rw-r--r-- | decoder/ihevcd_parse_headers.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/decoder/ihevcd_parse_headers.c b/decoder/ihevcd_parse_headers.c index 2d1f567..e16a9e6 100644 --- a/decoder/ihevcd_parse_headers.c +++ b/decoder/ihevcd_parse_headers.c @@ -1675,6 +1675,19 @@ IHEVCD_ERROR_T ihevcd_parse_sps(codec_t *ps_codec) { return IHEVCD_INVALID_PARAMETER; } + /* Check if CTB size is different in case of multiple SPS with same ID */ + { + sps_t *ps_sps_old = (ps_codec->s_parse.ps_sps_base + sps_id); + if(ps_sps_old->i1_sps_valid && ps_sps_old->i1_log2_ctb_size != ctb_log2_size_y) + { + if(0 == ps_codec->i4_first_pic_done) + { + return IHEVCD_INVALID_PARAMETER; + } + ps_codec->i4_reset_flag = 1; + return (IHEVCD_ERROR_T)IVD_RES_CHANGED; + } + } ps_sps->i1_log2_ctb_size = ctb_log2_size_y; UEV_PARSE("log2_min_transform_block_size_minus2", value, ps_bitstrm); |