Commit graph

390 commits

Author SHA1 Message Date
Hamsalekha S
16388ca052 Decoder: Detect change of mbaff flag in SPS am: d524ba0310
am: c30baf4986

Change-Id: I11dc25d1094e2f7e7e716496e20f5cd4b9f14636
2017-10-31 18:04:46 +00:00
Hamsalekha S
8d32a711ac Decoder: Increased allocation and added checks in sei parsing.
am: f2b70d3537

Change-Id: I4536d51baa6dd0ea8cf679ee591f20f2afd34b07
2017-10-31 18:02:16 +00:00
Hamsalekha S
c30baf4986 Decoder: Detect change of mbaff flag in SPS
am: d524ba0310

Change-Id: I818230d7fb1763b54d4920f9000663ec72286b6d
2017-10-31 18:02:16 +00:00
Hamsalekha S
d524ba0310 Decoder: Detect change of mbaff flag in SPS
Change in Mbaff flag needs re-initialization of NMB group
and other variables in decoder context.

Bug: 64380237
Test: ran poc on ASAN before/after
Change-Id: I0fc65e4dfc3cc2c15528ec52da1782ecec61feab
2017-10-30 14:19:41 -07:00
Hamsalekha S
f2b70d3537 Decoder: Increased allocation and added checks in sei parsing.
This prevents heap overflow while parsing sei_message.

Bug: 63122634
Test: ran PoC on unpatched/patched
Change-Id: I61c1ff4ac053a060be8c24da4671db985cac628c
2017-10-17 15:03:19 -07:00
Ritu Baldwa
458c4a866c Merge "DO NOT MERGE Decoder: Modified setting of error code in set flush api." into mnc-dev am: 6a09a35355 -s ours
am: b288f51729  -s ours

Change-Id: I673972e25b586ceb6f7c162ef1385dbb47fa3c29
2017-10-03 23:03:19 +00:00
Ritu Baldwa
b288f51729 Merge "DO NOT MERGE Decoder: Modified setting of error code in set flush api." into mnc-dev
am: 6a09a35355  -s ours

Change-Id: I01c0bfe70914107bee7763ec1beec9bd7abbf175
2017-10-03 23:00:59 +00:00
TreeHugger Robot
6a09a35355 Merge "DO NOT MERGE Decoder: Modified setting of error code in set flush api." into mnc-dev 2017-10-03 22:51:37 +00:00
Ritu Baldwa
1541dcc79c DO NOT MERGE Decoder: Modified setting of error code in set flush api.
Fixed incorrect use of ps_dec->pv_dec_out to set error code.

Bug: 66372937
Test: at vendor
Merged-In: Ib04e0b15573b2482c9d5b43c8bc7dd30d8f8efdd
Change-Id: I7b66ee010089399c050a75d6d67feb03da0b8b3e
2017-10-03 14:57:06 -07:00
Hamsalekha S
8ec4061310 Merge "Decoder: Fixed hang in the case of dangling field" into mnc-dev am: 2f1ca945b1
am: 1b1e6d3ec9

Change-Id: I816a115c239a41b0008eb599fc6ff43b925f15f2
2017-10-03 17:37:11 +00:00
Hamsalekha S
1b1e6d3ec9 Merge "Decoder: Fixed hang in the case of dangling field" into mnc-dev
am: 2f1ca945b1

Change-Id: I203d518ad9dc60ea41dfdc88c1903b47398246ba
2017-10-03 17:34:44 +00:00
TreeHugger Robot
2f1ca945b1 Merge "Decoder: Fixed hang in the case of dangling field" into mnc-dev 2017-10-03 17:29:09 +00:00
Ritu Baldwa
a838b2f7f8 DO NOT MERGE Decoder: Increased memory allocation. am: ed7a63fbcc -s ours
am: 848428bb84

Change-Id: I9a1f2786dd95521f72ada206b3b6919bee35defd
2017-10-03 02:15:41 +00:00
Ritu Baldwa
848428bb84 DO NOT MERGE Decoder: Increased memory allocation.
am: ed7a63fbcc  -s ours

Change-Id: If11a724e3eeffc4183106f6e4c1ae6b45b0e8ac7
2017-10-03 02:13:56 +00:00
Ritu Baldwa
ed7a63fbcc DO NOT MERGE Decoder: Increased memory allocation.
ps_dec->u1_recon_mb_grp is twice the width in case of mbaff,
increasing relevant allocations accordingly.

Increased allocation of intra-prediction buffer to
include padding.

Bug: 64964675
Test: POC from bug report
Change-Id: Ic4a6151bb12ac1122c228220b9150b2a372aae21
2017-09-29 11:49:50 -07:00
Hamsalekha S
252628cffb Decoder: Fixed hang in the case of dangling field
The u1_top_bottom_decoded  flag in the decoder context has been fixed
to be updated correctly in the case of dangling field

Bug: 63315932
Test: ran POC after patching
Change-Id: I8db4ebeb94fba735ba45f365c37e52a202ea84cd
2017-09-29 10:25:21 -07:00
Marco Nelissen
becbdb15b7 Merge "Decoder: Updated error check while parsing num_ref_idx_lx_active." into mnc-dev am: 224824ba17
am: 628056c0ed

Change-Id: Ib38092d5b1e0e04dca25b174894aa9a6de3628f6
2017-09-13 06:01:02 +00:00
Marco Nelissen
628056c0ed Merge "Decoder: Updated error check while parsing num_ref_idx_lx_active." into mnc-dev
am: 224824ba17

Change-Id: Id5366922a8312c3fc99f5dc42c64e4bfdf11795b
2017-09-13 05:51:32 +00:00
Marco Nelissen
224824ba17 Merge "Decoder: Updated error check while parsing num_ref_idx_lx_active." into mnc-dev 2017-09-13 05:00:15 +00:00
Hamsalekha S
0af8672874 Merge "Decoder: Corrected variable datatypes in ih264d_get_implicit_weights." into mnc-dev am: a2d8a1444d
am: 8659d0e563

Change-Id: Ie14a49a77f382a90a36209094f155c66a841623d
2017-09-12 00:16:50 +00:00
Hamsalekha S
8659d0e563 Merge "Decoder: Corrected variable datatypes in ih264d_get_implicit_weights." into mnc-dev
am: a2d8a1444d

Change-Id: I50d88e962f2435189cbb4720d8254729eb47829f
2017-09-12 00:14:49 +00:00
TreeHugger Robot
a2d8a1444d Merge "Decoder: Corrected variable datatypes in ih264d_get_implicit_weights." into mnc-dev 2017-09-12 00:11:33 +00:00
Ray Essick
da8110e0e4 Merge "DO NOT MERGE: Decoder: Conceal picture only if valid picture buffer is obtained." into mnc-dev am: dc9396971d -s ours
am: 24cb0c18e5  -s ours

Change-Id: Ifb9d86e3b6f6170ade98c727ddb7890920812774
2017-09-11 22:25:41 +00:00
Harish Mahendrakar
0514a1ebfb Added an out of bound check on u4_num_bufs in input argument am: aa11ab9fdb
am: 50ec420228

Change-Id: I3966029e13dc01e9e49b6a9a8476e50165f74df4
2017-09-11 22:24:40 +00:00
Ray Essick
24cb0c18e5 Merge "DO NOT MERGE: Decoder: Conceal picture only if valid picture buffer is obtained." into mnc-dev
am: dc9396971d  -s ours

Change-Id: I100c5d289d7d145ead4ba6b741299691d97ee14a
2017-09-11 22:23:08 +00:00
Hamsalekha S
7f78e3aa9a Decoder: Conceal picture only if valid picture buffer is obtained.
am: 5df744afde

Change-Id: I7c650c1ec6891b937770560e8de95f95f8725be2
2017-09-11 22:22:40 +00:00
Harish Mahendrakar
50ec420228 Added an out of bound check on u4_num_bufs in input argument
am: aa11ab9fdb

Change-Id: I7dd6739821da87a96072dae422416e8037332a4f
2017-09-11 22:22:40 +00:00
Ray Essick
dc9396971d Merge "DO NOT MERGE: Decoder: Conceal picture only if valid picture buffer is obtained." into mnc-dev 2017-09-11 22:17:06 +00:00
Hamsalekha S
208c74d62a Decoder: Updated error check while parsing num_ref_idx_lx_active.
Added an error check on the lower limit of u1_num_ref_idx_lx_active,
while parsing slice header. The minimum possible value is 1.

Bug: 64836894

Change-Id: I57056851fc135ed00f7a10af5c81eb560e9e12de
2017-09-11 20:16:47 +00:00
Hamsalekha S
3eb692de91 Decoder: Corrected variable datatypes in ih264d_get_implicit_weights.
The difference between two 32 signed numbers was getting assigned
to 16 bits, leading to a divide by zero arithmetic execption.
Modified variable names to match their datatypes.

Bug: 65122447

Change-Id: I45ade1945f10b4d7660bd09fb564e60fd29d40dc
2017-09-08 13:21:14 -07:00
Ray Essick
45aa4ac86d DO NOT MERGE: Decoder: Conceal picture only if valid picture buffer is obtained.
If all the slices in the current pic were invalid, then
the decoder would not have received a valid picture buffer
in the current call. In such cases there is no need to conceal or
deblock the picture.

Bug: 62896384
Test: run ASAN-enabled PoC before/after the patch
Change-Id: Ia7d979a78ae3f4fb443a1759c8e6cf8780565ad8
Merged-In: I3cf6e871592826f93b0dcd2b06fff80677bc8338
2017-09-06 23:46:21 +00:00
Hamsalekha S
5df744afde Decoder: Conceal picture only if valid picture buffer is obtained.
If all the slices in the current pic were invalid, then
the decoder would not have received a valid picture buffer
in the current call. In such cases there is no need to conceal or
deblock the picture.

Bug: 62896384
Test: run ASAN-enabled PoC before/after the patch
Change-Id: I3cf6e871592826f93b0dcd2b06fff80677bc8338
2017-08-18 20:45:17 +00:00
Harish Mahendrakar
aa11ab9fdb Added an out of bound check on u4_num_bufs in input argument
ps_dec_ip->s_out_buffer.u4_num_bufs was missing out of bound checks

Bug: 62688399
Change-Id: Ic5e5c002d29fcb18064550d5a5f9289bb68b448e
2017-08-10 10:15:16 -07:00
Hamsalekha S
bf8b7083e9 Decoder: Fixed allocation of pv_map_ref_idx_to_poc_buf.
am: a925a6b539

Change-Id: I0026b1c090325b96b15a48a6049393ee7de40bc3
2017-07-15 00:35:31 +00:00
Hamsalekha S
a925a6b539 Decoder: Fixed allocation of pv_map_ref_idx_to_poc_buf.
Increased allocation to include reference list1 also by
default. In the case of error, we could get B_SLICES
even in BASE_PROFILE. The initialization in the
dec_slice_struct_t slice structure has also been
modified accordingly.

Test: run poc with and without this patch
Bug: 38496660
Change-Id: I3451d79bbcd9f0d7a80981a9897f877b7f0812bd
2017-07-13 17:49:14 +00:00
Hamsalekha S
136293c373 Decoder: Fixed overflow in refernce list creation. am: cbcd2846fa
am: a54dcc6338

Change-Id: I7801ee5f19e1760ea5958b98ea83c541d8f02401
2017-07-10 18:54:22 +00:00
Hamsalekha S
a54dcc6338 Decoder: Fixed overflow in refernce list creation.
am: cbcd2846fa

Change-Id: Ic4d5c775bfeb8950f07145c9441130ea295bdfa5
2017-07-10 18:49:51 +00:00
Hamsalekha S
cbcd2846fa Decoder: Fixed overflow in refernce list creation.
Since the maximum value of long term index is 255,
the loop control variable needs to be 32 bit.

Bug: 38448381
Test: ran POC before/after applying fix
Change-Id: Iae3ecff38d4a922bde10fde33f1cfcafd2ea2680
2017-07-07 10:34:44 -07:00
Hamsalekha S
f178731344 Initialize DPB structures to valid values. am: b8d362561e
am: 278ed70003

Change-Id: I01402b5deac0c52e598891d80902a7a47905fe96
2017-06-26 21:56:05 +00:00
Hamsalekha S
278ed70003 Initialize DPB structures to valid values.
am: b8d362561e

Change-Id: I6025560875e3234a3cc99d316e1ccd46109ef269
2017-06-26 21:40:11 +00:00
Hamsalekha S
b8d362561e Initialize DPB structures to valid values.
When the first frame is a B frame, the colocated picture
will now point to the current frame.

Test: run poc with and without this patch
Bug: 38115076
Change-Id: I48a8f128740551d6a9252931dafcf8c629ecad0d
2017-06-20 20:34:06 +00:00
Hamsalekha S
9a6312ec9f Added error check for output buffer size. am: 3f6c941de5
am: f0d2caa214

Change-Id: I6c5c4e82cde6e25d6548cf75a2c708dd1c037579
2017-06-19 20:08:19 +00:00
Hamsalekha S
f0d2caa214 Added error check for output buffer size.
am: 3f6c941de5

Change-Id: I5b06314d7b3d0fb699160ba1326ecb31aedf3082
2017-06-19 20:02:48 +00:00
Hamsalekha S
3f6c941de5 Added error check for output buffer size.
The output buffer size given by the application, needs to be checked
in every process call. This is required in the case of resolution
change.

Bug: 36006815
Test: avcdec -i poc.bin
Change-Id: I16a92cdad23eb7b1e12c1a67c1b2599204f29249
2017-06-16 17:41:23 -07:00
Ray Essick
5cf7f81ca3 Merge "Fixed hang in the case of multiple sps id." into mnc-dev am: 16b019a620
am: 5ecccccbd7

Change-Id: I703c38dd57bcae4d743f7b63aca28538f617cb70
2017-06-07 00:00:04 +00:00
Ray Essick
5ecccccbd7 Merge "Fixed hang in the case of multiple sps id." into mnc-dev
am: 16b019a620

Change-Id: Id1c0b6150c192718b69db226a373532f723843a7
2017-06-06 23:58:05 +00:00
Ray Essick
16b019a620 Merge "Fixed hang in the case of multiple sps id." into mnc-dev 2017-06-06 23:48:10 +00:00
Hamsalekha S
ccbbaa640c Merge "Decoder: Fix in the case of MMCO 6" into mnc-dev am: 6b3d20c032
am: 4bbbcfe76d

Change-Id: Ibfdeb1e6635693f1b9519e0a9959de18d06a85d0
2017-06-06 22:59:59 +00:00
Hamsalekha S
4bbbcfe76d Merge "Decoder: Fix in the case of MMCO 6" into mnc-dev
am: 6b3d20c032

Change-Id: I7cc789a4b548e19077559799096e927d44ffdbb0
2017-06-06 22:58:00 +00:00
TreeHugger Robot
6b3d20c032 Merge "Decoder: Fix in the case of MMCO 6" into mnc-dev 2017-06-06 22:54:33 +00:00