Commit graph

3493 commits

Author SHA1 Message Date
Harish Mahendrakar
afd2eeb402 encoder: Update dimension check for semi-planar input
For YUV 420 semi-planar input, second plane's width was
wrongly being checked to be equal to half of first plane's width.
Corrected this condition now to check that both these widths are
same.

Bug: 242103647
Test: avcenc -c enc.cfg

Change-Id: I3c06f6e40823ddbf00df0435bfbd1cd314c982e3
2022-08-10 22:47:10 +00:00
Treehugger Robot
d249d3642d Merge "Decoder: MVC decoding support added" 2022-08-08 14:53:05 +00:00
Ashwin Natesan
779bbfdb00 Decoder: MVC decoding support added
Added support for decoding 'Multiview High' profile, corresponding to
profile_idc of 118 in 'Rec. ITU-T H.264 (08/2021)'.

Bug: 232169767
Test: atest CtsMediaV2TestCases

Change-Id: I63256344a8a205e74f2bcebe555f5ba6cc3163d0
2022-08-06 05:51:31 +00:00
Ray Essick
c4f2671a16 Merge "Set correct defaults for video signal flags in VUI" 2022-07-28 22:05:03 +00:00
Ray Essick
0948bc7fe3 Merge "Fix setting IVE_CMD_CTL_SET_VUI_PARAMS with IVE_ENC_MODE_HEADER mode" 2022-07-28 21:12:06 +00:00
Martin Storsjo
8362f0939b Set correct defaults for video signal flags in VUI
When u1_video_signal_type_present_flag and
u1_colour_description_present_flag were set, we did write all
fields relating to video signal and color description into
the VUI, even if all those fields were uninitialized (left
at the default cleared zero, which for most fields are
invalid/reserved value zero).

Instead have these flags default to zero, making it clear
that the VUI doesn't (yet) contain correctly set values
for those fields.

Bug: 240470605
Change-Id: I86628cff190c8a40e9c6fd12d3fc8e06419ece7c
2022-07-28 00:31:09 +03:00
Martin Storsjo
a3eaf9ccfc Fix setting IVE_CMD_CTL_SET_VUI_PARAMS with IVE_ENC_MODE_HEADER mode
The ih264e_vui_ip_t struct doesn't contain any input timestamps,
and the IVE_CMD_CTL_SET_VUI_PARAMS command didn't set these fields
at all (leaving them at their default initialized state 0,0).

At the start of ih264e_encode, pending configurations are
applied if their timestamp matches the timestamp of the frame
to be encoded, or applied unconditionally if the timestamps are
equal to -1.

Thus, the parameters set with IVE_CMD_CTL_SET_VUI_PARAMS
previously only got applied if encoding a frame with the specific
timestamp 0, but now they get applied unconditionally on the
next encoded frame.

Bug: 240466320
Change-Id: I12c50251d8485e3f171ac5c87132ddfbc80377d6
2022-07-27 23:57:57 +03:00
Treehugger Robot
4be0806e4e Merge "avc_dec_fuzzer: Zero initialize input and output structures to API calls" 2022-07-21 21:42:05 +00:00
Harish Mahendrakar
4ab2109685 avc_dec_fuzzer: Zero initialize input and output structures to API calls
Input and output structures to decoder's functions are now zero
initialized. This way any new additional members in these structures
will be initialized correctly.

Bug: oss-fuzz:49322
Bug: 175179303
Test: avc_dec_fuzzer with memory sanitizer
Change-Id: Ic89625aaaededdef107c34bf8bdc793824b96f85
2022-07-21 19:56:14 +00:00
Harish Mahendrakar
2a238075dc Decoder: In case of no free buffers, release all buffers
When decoding erroneous streams, decoder may run out of all buffers
used to hold reference pictures and MV data. In such cases, ignore
all frames till the next IDR frame and then release all buffers while
decoding the IDR frame.

Bug: 236102268
Test: multiple seek on the clip in bug

Change-Id: I14d107a5fdaf5c8d2133e59f48c2b947a5fee5ff
2022-07-20 04:29:15 +00:00
Ray Essick
aeb7fa461e Merge "Decoder: add support for QP and block_type map export in library" 2022-07-18 23:35:32 +00:00
Ray Essick
12813f245c Export header files
So that consumers don't need to use raw paths via include_dirs
Sort export_include_dirs: [] lists

Bug: 201944383
Test: build

Merged-In: Id6789b54da4d8ec1be6c7a60d8ba2e757d5d8801
Change-Id: Id6789b54da4d8ec1be6c7a60d8ba2e757d5d8801
(cherry picked from commit 7faf1311eb)
2022-07-05 13:34:21 -07:00
Ray Essick
5fcca088bd Recast FWD_QUANT to avoid -1 / unsigned confusion
Bug: 173082061
Test: compilation
Change-Id: I28f0f87ad39719d40747b83119f4c019054812db
2022-06-22 21:21:25 -07:00
Xin Li
a45e305b24 Merge Android 12 QPR 3
Bug: 236045730
Merged-In: I1e7784d4d48325ed0b7ff5f902630d0824aced23
Change-Id: I3fd06bf45a010b793469f52f7b868539f4675dca
2022-06-14 16:48:08 -07:00
Shivaansh Agrawal
0033e0fe5e Decoder: add support for QP and block_type map export in library
Bug: 175179303

Test: avcdec -c dec.cfg
Test: atest CtsMediaV2TestCases:CodecDecoderTest
Test: atest VtsHalMediaC2V1_0TargetVideoDecTest

Change-Id: I68f3a85aae1f4bca2c3e1eaad69d8eb7f23481b8
2022-05-17 09:55:20 +05:30
Xin Li
0ccf8ac1c1 [automerger skipped] Merge Android 12 QPR3 ab/8391262 am: aa4f882208 -s ours
am skip reason: Merged-In I8e4f1f4c57fae1510835733173c505326f39e28f with SHA-1 f5513f5722 is already in history

Original change: 17545184

Change-Id: I1e7784d4d48325ed0b7ff5f902630d0824aced23
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-03 07:11:48 +00:00
Xin Li
aa4f882208 Merge Android 12 QPR3 ab/8391262
Bug: 226662282
Merged-In: I8e4f1f4c57fae1510835733173c505326f39e28f
Change-Id: Ie5766e7c1506152070639040b82a9d2ca66766c1
2022-04-01 20:32:27 +00:00
Neelkamal Semwal
f5513f5722 [automerge] encoder: Fix out of bound access of prediction buffer 2p: 27fbb43bd6
Original change: 17354043

Bug: 204704614
Change-Id: I8e4f1f4c57fae1510835733173c505326f39e28f
Merged-In: I72b5cb8b63351efb60b65ecbb5e7a8c8bc1fcd94
2022-03-23 17:36:10 +00:00
Neelkamal Semwal
27fbb43bd6 encoder: Fix out of bound access of prediction buffer
While calculating the residual for inter 4x4 MB, the intrinsic
instruction reads extra 4-bytes from the prediction buffer

Test: POC in the bug description

Bug: 204704614

Change-Id: I72b5cb8b63351efb60b65ecbb5e7a8c8bc1fcd94
(cherry picked from commit c79d0f5092)
Merged-In: I72b5cb8b63351efb60b65ecbb5e7a8c8bc1fcd94
2022-03-23 17:35:47 +00:00
Rakesh Kumar
a577008bc2 Encoder: Rename INSERT_EPB am: 672f2bfab3 am: 9a308447a4
Original change: 1652027

Change-Id: I38c6d0e69ad2a04ab533cac629c407f6b7d30cc3
2022-02-28 07:29:15 +00:00
Rakesh Kumar
9a308447a4 Encoder: Rename INSERT_EPB am: 672f2bfab3
Original change: 1652027

Change-Id: Ic7ac53398242eebacdeabc2fc013ba83a9b6771b
2022-02-28 07:00:58 +00:00
Rakesh Kumar
672f2bfab3 Encoder: Rename INSERT_EPB
INSERT_EPB doesn't insert emulation prevention byte and instead
is used to check if an emulation prevention byte is to be inserted.
Renaming INSERT_EPB to SHOULD_INSERT_EPB.

Bug: 180962392
Test: build library

Change-Id: I9ac8d8ca6b2d29d5bccab68404f02883acf5d361
2022-02-28 04:57:49 +00:00
Treehugger Robot
03c1887ff3 Merge "Decoder: add support for KEEP_THREADS_ACTIVE" am: a3721a6a8c am: 9cc479ac3e
Original change: 1741273

Change-Id: I6ccb63fcbc9d99a09c393a07d0ad0f05897c08d0
2022-02-23 19:46:06 +00:00
Treehugger Robot
9cc479ac3e Merge "Decoder: add support for KEEP_THREADS_ACTIVE" am: a3721a6a8c
Original change: 1741273

Change-Id: Ia199cc93e234673b8a507800f9303d08cf303b08
2022-02-23 19:19:56 +00:00
Treehugger Robot
a3721a6a8c Merge "Decoder: add support for KEEP_THREADS_ACTIVE" 2022-02-23 18:52:13 +00:00
Xin Li
a66fcd399f [automerger skipped] Empty merge of sc-v2-dev-plus-aosp-without-vendor@8084891 am: 705b9bb11f -s ours
am skip reason: Merged-In Id67d06dd5fc1645fa93b35dfb8a5747fcc0e7b51 with SHA-1 91e3d65f9f is already in history

Original change: 16843518

Change-Id: Id592a30a2b01bb78d308a8d2c6927d5e89db1d2d
2022-02-11 20:34:09 +00:00
Xin Li
705b9bb11f Empty merge of sc-v2-dev-plus-aosp-without-vendor@8084891
Bug: 214455710
Merged-In: Id67d06dd5fc1645fa93b35dfb8a5747fcc0e7b51
Change-Id: I6aec73b2a79b1ceb7b885e33f0d6ce89f0e1fb13
2022-02-11 06:14:52 +00:00
Harish Mahendrakar
07bf39e161 Fix fuzzer build failure in oss-fuzz for honggfuzz engine am: b668003b84 am: 5a128ad647 am: 4427fc84b2
Original change: 1977749

Change-Id: I5731925274e72894772fa0c1a167a3a62fd3bebb
2022-02-10 01:55:28 +00:00
Harish Mahendrakar
4427fc84b2 Fix fuzzer build failure in oss-fuzz for honggfuzz engine am: b668003b84 am: 5a128ad647
Original change: 1977749

Change-Id: I38e0717a4eddbc9023e6173f1a2c6587defae06e
2022-02-10 01:38:57 +00:00
Harish Mahendrakar
5a128ad647 Fix fuzzer build failure in oss-fuzz for honggfuzz engine am: b668003b84
Original change: 1977749

Change-Id: Ie71fad4394b29e791f5d0bf49d40b5f11d855665
2022-02-10 01:28:18 +00:00
Harish Mahendrakar
b668003b84 Fix fuzzer build failure in oss-fuzz for honggfuzz engine
Test: check with oss-fuzz for honggfuzz engine
Change-Id: I25d03d62c1d66954f397101cf96c5bad1ab4429a
2022-02-09 11:00:32 -08:00
Manisha Jajoo
d1e64cc366 Decoder: add support for KEEP_THREADS_ACTIVE
Current design of AVC Decoder creates new threads
to process each frame. This CL adds support to reuse
the threads across frames.

Test: avcdec -c dec.cfg
Bug: 191124963

Change-Id: I087699c4c7ce6aa59a1d8b078ae196a50dcf889c
2022-02-09 17:59:29 +05:30
Treehugger Robot
b7e0393c57 Merge "Builds: Modular cmake scripts added" am: 6ff3e24351 am: d64adb0b31 am: 77bbe0c3bd
Original change: 1936184

Change-Id: I5ef9c0d8cbeb51d1fb7f398ba1319154d7c81746
2022-02-09 06:57:02 +00:00
Treehugger Robot
77bbe0c3bd Merge "Builds: Modular cmake scripts added" am: 6ff3e24351 am: d64adb0b31
Original change: 1936184

Change-Id: I35c2e67c9e54d4242be279f886a44d05305020cc
2022-02-09 06:38:46 +00:00
Treehugger Robot
d64adb0b31 Merge "Builds: Modular cmake scripts added" am: 6ff3e24351
Original change: 1936184

Change-Id: I232c8c2e58b54a27c2f8eecfe875fc085c019653
2022-02-09 06:22:06 +00:00
Treehugger Robot
6ff3e24351 Merge "Builds: Modular cmake scripts added" 2022-02-09 06:02:27 +00:00
Xin Li
ef3a4dc3c4 Merge SQ1A.220205.002 am: 2191ac2b82 am: de432a4550 am: dfbc2e06f9
Original change: 1975453

Change-Id: I8d0318504d9dd25a864d1fbf23ea8b36f03994d1
2022-02-08 20:15:27 +00:00
Xin Li
dfbc2e06f9 Merge SQ1A.220205.002 am: 2191ac2b82 am: de432a4550
Original change: 1975453

Change-Id: If93ded0f35c5b56945438470ad5ac8ecf91ca53f
2022-02-08 19:44:39 +00:00
Xin Li
de432a4550 Merge SQ1A.220205.002 am: 2191ac2b82
Original change: 1975453

Change-Id: Ie1516e5abacf1daa531382afe5bd4c35d80f91ee
2022-02-08 19:12:23 +00:00
Xin Li
2191ac2b82 Merge SQ1A.220205.002
Bug: 213904741
Merged-In: I8569e9369e4ab6f6c69c81b937f111c299b7a134
Change-Id: If5e4ac031bbea6d69b3a588566de5f759333c6e6
2022-02-07 23:17:26 -08:00
Ashwin Natesan
ca68f61641 Builds: Modular cmake scripts added
Cmake scripts are now modular. Separate scripts now handle
build specifications for each target and dependency.

Toolchain files have been added for armv7, armv8 builds.

Bug: 213579857
Test: Builds using cmake
Test: Builds in OSS-fuzz

Change-Id: Iac62b443c0a0de09a2ce6553a660db2c3d5dc846
2022-02-02 11:14:55 +05:30
Ray Essick
d1c5ed3a4e Pruning departed users from OWNERS am: 91e3d65f9f am: 2a6f822a2d am: 5caee2cb26
Original change: 1946308

Change-Id: I7134e12c20724a7183b1a7de4a0e2a64984f21cc
2022-01-12 09:19:20 +00:00
Ray Essick
5caee2cb26 Pruning departed users from OWNERS am: 91e3d65f9f am: 2a6f822a2d
Original change: 1946308

Change-Id: If6b4f658a029bb949e9df1903fa47c7032fc4eac
2022-01-12 09:01:49 +00:00
Ray Essick
2a6f822a2d Pruning departed users from OWNERS am: 91e3d65f9f
Original change: 1946308

Change-Id: I748909e5488dfa2deab11baa3ba0a89d27319a49
2022-01-12 08:44:08 +00:00
Ray Essick
91e3d65f9f Pruning departed users from OWNERS
Bug: 206221953
Test: n
Change-Id: Id67d06dd5fc1645fa93b35dfb8a5747fcc0e7b51
2022-01-11 20:01:15 -08:00
Android Build Coastguard Worker
a95fbdd1f0 Merge cherrypicks of [16407185] into sc-qpr1-release.
Change-Id: Id593145a3e8c45d8b588c7e9b74428ccc49934a7
2021-12-15 00:05:22 +00:00
Harish Mahendrakar
23247c8142 Move slice increments after completing header parsing
Slice increments are now done after completing header parse.
Earlier this was done before validating mmco related parameters
and calculating poc. In case there were errors that were detected
at this stage, slice increments were incorrect.

Bug: 199536974
Bug: 199733300
Bug: 205702093
Bug: oss-fuzz#38387
Bug: oss-fuzz#38482
Bug: oss-fuzz#40851
Test: ossfuzz generated poc in bug

Change-Id: I8569e9369e4ab6f6c69c81b937f111c299b7a134
(cherry picked from commit cd0385dc07)
(cherry picked from commit dc110841d6)
Merged-In:I8569e9369e4ab6f6c69c81b937f111c299b7a134
2021-12-15 00:01:15 +00:00
Xin Li
61b638848e [automerger skipped] Merge Android 12 QPR1 am: 58baa890fb -s ours am: baaad6e229 -s ours am: f673c4b2ce -s ours
am skip reason: Merged-In I404ee8c2afe5ca547526c29b0aa6e079db15bc1d with SHA-1 18ec440913 is already in history

Original change: 1921894

Change-Id: Ia34372ae6d1a18f08044effa45ff51b5888d5b80
2021-12-14 21:50:54 +00:00
Xin Li
f673c4b2ce [automerger skipped] Merge Android 12 QPR1 am: 58baa890fb -s ours am: baaad6e229 -s ours
am skip reason: Merged-In I404ee8c2afe5ca547526c29b0aa6e079db15bc1d with SHA-1 18ec440913 is already in history

Original change: 1921894

Change-Id: I8e4226bee38d695473e7013803d4b40ea2a802cd
2021-12-14 21:24:00 +00:00
Xin Li
baaad6e229 [automerger skipped] Merge Android 12 QPR1 am: 58baa890fb -s ours
am skip reason: Merged-In I404ee8c2afe5ca547526c29b0aa6e079db15bc1d with SHA-1 18ec440913 is already in history

Original change: 1921894

Change-Id: I169baf2d6821eec1aee47ffded65742c5d807471
2021-12-14 21:00:09 +00:00