The update in I slice is required for P/B slices in the same
frame for accessing neighbor pus.
Bug: 62851602
Bug: 63522067
Test: re-run PoC from b/62851602
Change-Id: Ie5e43f1cd5649b2745b6527654bc24d8c7d42932
This allows them to be built with clang's internal assembler.
Also, pass -I flags to the assembler explicitly and stop disabling
clang.
Bug: 68320413
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
Change-Id: I67dfd0d1b44217af6cf159f4d8810b3c2173702b
The parameter slice address is parsed only slices that are not
first slice in the pic and the value cannot be zero.
Bug: 64380202
Test: ran PoC on master
Change-Id: Ic21c40cf67c916806113d2425790a27cb658b5d2
For an sps with unsupported resolution, consume the bytes.
Otherwise application will feed the same sps again
and again.
Bug: 65718319
Test: ran POC before/after
Change-Id: I7b2d35b8f31d830f9495682b86b6924bdd2f95d0
Merged-In: Ic81990030f7e6afd8cf3ebd387c5be7443b148b9
Merged-In: I02295e813f37a963d7f6216bb8a7e86648485681
Bug: 64552185
Bug: 65034175
Move the decision to signal missing ctbs as skipped ctbs of
previous slice to the end of current slice hdr parsing to
ensure no error in slice hdr parsing.
Change-Id: Ia33b4be31dad6225b04e7b20b9000059c87941c4
(cherry picked from commit 74f35f191022c06863dacd33a3651a33be3ef08d)
Without this extra allocation, if a nal fills entire bits
buffer, there will be out of bound memory read access.
Bug: 65719872
Test: ran poc before/after on ASAN of master
Change-Id: I9f4fca0739db84db023b1252c1365bfd13355541
Merged-In: I1c36821505bdc4fe6c23f30a02ab2fb0fb657946
For clips with tiles and dimensions >= 4096,
CTB size of 16 can result in tile position > 255.
This is not supported by the decoder
Bug: 37930177
Test: ran poc w/o crashing
Change-Id: I2f223a124c4ea9bfd98343343fd010d80a5dd8bd
In case of error clips, some PUs are marked as skip.
Ensure such PUs stay within the picture
Bug: 37615911
Test: ran POC included with the bug.
Change-Id: Ie0aeccc752cf556f9dea84de61c15a7906e1060b
Bug: 37469795
In pic_init, pic_present was set in the beggining. If pic_present
was set, process and buffer managment were done. For an error
stream, a crash occured when pic_init returned with error after setting
pic_present.
Change-Id: Iea42e6ad2bc5a74517188fa5e4cc434bb96d46c7
Out of bound reads in the following variables are fixed
scaling_mat_offset in ihevcd_iquant_itrans_recon_ctb()
ai1_offset_y, ai1_offset_cb and ai1_offset_cr in ihevcd_sao_shift_ctb()
These values were read but not used
Bug: 34819017
Change-Id: Ic00e713b2c61d6793e1e097f852f0d1b3f913712
Bug: 34896431
The arrays in hrd are of size MAX_CPB_CNT. If cpb cnt is more
than MAX_CPB_CNT, more data is parsed and the subsequent buffer
is corrupted.
Change-Id: I74c01b8c7142b67a358eb5e36b160a7fbf2b69e4
If previous slice is not completed, update the current slice
ctb_x and ctb_y so that while filling the previous slice,
the parse slice code can break properly.
Bug: 32322258
Test: boot, ran POC supplied with bug
Change-Id: Ie9090694514a018268851560a3f056194ff6fc91
When checking mv bufs for releasing from reference, unallocated
mv bufs were also checked. This issue was fixed by restricting
the loop count to allocated number of mv bufs.
Bug: 34896906
Bug: 34819017
Change-Id: If832f590b301f414d4cd5206414efc61a70c17cb
The error returned by ref_list function was not handled by the
caller parse_slice_header.
Bug: 34672748
Change-Id: I55f6cb0e651746e77f7ff3375115894ec3964203