diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2019-09-28 23:06:29 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2019-09-28 23:06:29 +0000 |
commit | 71838b0ddbe0199cdb6f2df829051fc8ec1f4442 (patch) | |
tree | 63abe7be6e2cf9ccfd3d723b0bfe7fe858000991 | |
parent | d7150577d492f25fe5266658b9dfab29baa80fb7 (diff) | |
parent | 75d1ac1026539f82a299ef6cea2b59150098ddbb (diff) | |
download | libhevc-android10-qpr1-d-release.tar.gz |
Snap for 5907400 from 75d1ac1026539f82a299ef6cea2b59150098ddbb to qt-qpr1-releaseandroid-10.0.0_r29android-10.0.0_r28android-10.0.0_r27android-10.0.0_r26android-10.0.0_r25android-10.0.0_r24android-10.0.0_r23android-10.0.0_r22android-10.0.0_r21android-10.0.0_r20android-10.0.0_r19android-10.0.0_r18android-10.0.0_r16android-10.0.0_r15android10-qpr1-releaseandroid10-qpr1-d-releaseandroid10-qpr1-c-s1-releaseandroid10-qpr1-c-releaseandroid10-qpr1-b-s1-releaseandroid10-qpr1-b-release
Change-Id: I5d7370353d36fd4d3a0dc772674a26a00c4ae20d
-rw-r--r-- | decoder/ihevcd_parse_headers.c | 13 | ||||
-rw-r--r-- | decoder/ihevcd_parse_slice_header.c | 2 |
2 files changed, 14 insertions, 1 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); diff --git a/decoder/ihevcd_parse_slice_header.c b/decoder/ihevcd_parse_slice_header.c index ba2c5e8..c161fc4 100644 --- a/decoder/ihevcd_parse_slice_header.c +++ b/decoder/ihevcd_parse_slice_header.c @@ -318,7 +318,7 @@ IHEVCD_ERROR_T ihevcd_parse_slice_header(codec_t *ps_codec, } ps_slice_hdr = ps_codec->s_parse.ps_slice_hdr_base + (ps_codec->s_parse.i4_cur_slice_idx & (MAX_SLICE_HDR_CNT - 1)); - + memset(ps_slice_hdr, 0, sizeof(*ps_slice_hdr)); if((ps_pps->i1_dependent_slice_enabled_flag) && (!first_slice_in_pic_flag)) |