Commit graph

90 commits

Author SHA1 Message Date
Harish Mahendrakar
b1bbfa5320 Decoder: Fixed initialization of first_slice_in_pic am: 0b23c81c3d am: 16fa990ce1 am: ab79eb3973 am: a37d120eb2 am: c011eeade7 am: 94e17dc822 am: 9117d918dd
am: f837a7796b

Change-Id: Ic4d24cc5d546abf49a2cef788226ff3a3ab92720
2017-02-14 17:18:39 +00:00
Harish Mahendrakar
20c2cfbc12 Decoder: Moved end of pic processing to end of decode call am: 494561291a am: ba7f9e2aed am: 26bb8b98ee am: 89fa016b5f am: df2fa01c9e am: 7944003371 am: fd5c8e352a
am: 9432beb534

Change-Id: Icd9bf9c1786a5758cf8ec4f6a5b4b6a96daef1dd
2017-02-14 17:16:16 +00:00
Harish Mahendrakar
94e17dc822 Decoder: Fixed initialization of first_slice_in_pic am: 0b23c81c3d am: 16fa990ce1 am: ab79eb3973 am: a37d120eb2
am: c011eeade7

Change-Id: I3f850497c864277c2b2524fab07d14a249e48afc
2017-02-14 17:11:38 +00:00
Harish Mahendrakar
7944003371 Decoder: Moved end of pic processing to end of decode call am: 494561291a am: ba7f9e2aed am: 26bb8b98ee am: 89fa016b5f
am: df2fa01c9e

Change-Id: Ifc329cbccad01c70ff1fea0d483cb155b15b3cc1
2017-02-14 17:08:45 +00:00
Harish Mahendrakar
16fa990ce1 Decoder: Fixed initialization of first_slice_in_pic
am: 0b23c81c3d

Change-Id: I55e49ca9616a151456342bad7673d0986098b448
2017-02-14 17:03:06 +00:00
Harish Mahendrakar
ba7f9e2aed Decoder: Moved end of pic processing to end of decode call
am: 494561291a

Change-Id: Id3867f5dd0788f12f6827ed311a309d1fa58c535
2017-02-14 17:00:16 +00:00
Harish Mahendrakar
0b23c81c3d Decoder: Fixed initialization of first_slice_in_pic
To handle some errors, first_slice_in_pic was being set to 2.
This is now cleaned up and first_slice_in_pic is set to 1 only once per pic.
This will ensure picture level initializations are done only once even in case
of error clips

Bug: 33717589
Bug: 33551775
Bug: 33716442
Bug: 33677995

Change-Id: If341436b3cbaa724017eedddd88c2e6fac36d8ba
2017-02-14 16:59:09 +00:00
Harish Mahendrakar
494561291a Decoder: Moved end of pic processing to end of decode call
ih264d_end_of_pic() was called after parsing slice of a new picture.
This is now being done at the end of decode of the current picture.
decode_gaps_in_frame_num which needs frame_num of new slice is now
done after decoding frame_num in new slice.

This helps in handling errors in picaff streams with gaps in frames

Bug: 33588051
Bug: 33641588
Bug: 34097231
Change-Id: I1a26e611aaa2c19e2043e05a210849bd21b22220
2017-02-14 16:58:07 +00:00
Harish Mahendrakar
1f0ab0b089 DO NOT MERGE: Decoder: Fixes an out of bound write in bitstream buffer
[this is for mnc-dev only, not any other mnc-*-dev flavors;
there is a different patch for mnc-dr-dev, nyc-* and going forward]

After emulation prevention, data is written as an int,
so at least 3 additional bytes should be available.
And since bitstream functions read 8 bytes ahead, 8 extra bytes
should be available in the bitstream buffer.

Bug: 33934721
Test: Ittiam testing, POC in the bug no longer fails
Change-Id: I444ec6f85d01b0bade9f827e15c4b476779d6c69
2017-02-13 14:44:11 -08:00
Harish Mahendrakar
d24b4a2fca Decoder: Fixes an out of bound write in bitstream buffer am: 33ef7de9dd am: 0aab4958fb am: 9f72b6eca1 am: 73a3e320d8 am: 89377f2acf am: 9801d7e8d5
am: 109509aeb0

Change-Id: I5d0e3112f87665bc116966c963b2b60bbdc586d7
2017-02-13 18:59:47 +00:00
Harish Mahendrakar
89377f2acf Decoder: Fixes an out of bound write in bitstream buffer am: 33ef7de9dd am: 0aab4958fb am: 9f72b6eca1
am: 73a3e320d8

Change-Id: Id06cfbad9824a7921e4eb082417f14aa842bcfab
2017-02-13 18:52:16 +00:00
Harish Mahendrakar
33ef7de9dd Decoder: Fixes an out of bound write in bitstream buffer
[for mnc-dr-dev and later;  mnc-dev gets a different patch]

After emulation prevention, data is written as an int,
so at least 3 additional bytes should be available.
And since bitstream functions read 8 bytes ahead, 8 extra bytes
should be available in the bitstream buffer.

Bug: 33934721

Change-Id: I444ec6f85d01b0bade9f827e15c4b476779d6c69
2017-01-19 09:17:00 -08:00
Marco Nelissen
d5424f66e3 Merge "DO NOT MERGE Decoder: Increase memory allocation for weights & offsets for interlaced clips" into mnc-dev 2017-01-18 18:42:47 +00:00
Harish Mahendrakar
4b2c277d9c Decoder: Increase memory allocation for weights & offsets for interlaced clips am: bee9b9a54b am: bfc735cf17 am: 87c2d690fa am: 826159785f am: 3f1af4a90c am: 1806c2e12b
am: e4acdfb8c3

Change-Id: I6fb6416d7960ba01036fc1098993b198b6fb1350
2017-01-18 17:19:47 +00:00
Harish Mahendrakar
3f1af4a90c Decoder: Increase memory allocation for weights & offsets for interlaced clips am: bee9b9a54b am: bfc735cf17 am: 87c2d690fa
am: 826159785f

Change-Id: Iba990d241d8eb893356b748812342bab4ffecae2
2017-01-18 16:59:45 +00:00
Harish Mahendrakar
bfc735cf17 Decoder: Increase memory allocation for weights & offsets for interlaced clips
am: bee9b9a54b

Change-Id: I8c0bd3d77b87e6fb3f982ef70854b8ec73298636
2017-01-18 16:41:13 +00:00
Marco Nelissen
696b6f666c Merge "Decoder: Increase memory allocation for weights & offsets for interlaced clips" into mnc-dr-dev 2017-01-18 16:27:26 +00:00
Harish Mahendrakar
3101a6aa5a Decoder: Fixed DoS in header decode when no PPS is present am: 2cd2f7a335 am: cec6503a20 am: 031a3fdbba am: 5a44d81d8c am: 60566cca95 am: e951e02347 am: a89050b3f2
am: b0dd5208aa

Change-Id: I34ade8ad8531dfb9daa741371cb5359cf1a51152
2017-01-18 00:43:15 +00:00
Harish Mahendrakar
e951e02347 Decoder: Fixed DoS in header decode when no PPS is present am: 2cd2f7a335 am: cec6503a20 am: 031a3fdbba am: 5a44d81d8c
am: 60566cca95

Change-Id: If921d86c80aa9ece6dd429d0e8a34edf02e97926
2017-01-18 00:36:15 +00:00
Harish Mahendrakar
cec6503a20 Decoder: Fixed DoS in header decode when no PPS is present
am: 2cd2f7a335

Change-Id: If8a7c11ef215a84a350cd0a734bca9c69b91f1c6
2017-01-18 00:26:14 +00:00
TreeHugger Robot
e74ab7dba4 Merge "Decoder: Fixed DoS in header decode when no PPS is present" into mnc-dev 2017-01-18 00:23:33 +00:00
Harish Mahendrakar
bee9b9a54b Decoder: Increase memory allocation for weights & offsets for interlaced clips
Bug: 33816782
Change-Id: I65a5376f46902139f9fc49a2fff54b53b518d703
2017-01-17 15:25:56 -08:00
Harish Mahendrakar
2cd2f7a335 Decoder: Fixed DoS in header decode when no PPS is present
When the input does not contain PPS and decoder is in header decode
mode, decoder was entering an infinite loop.

Bug: 33621215
(cherry picked from commit 33e1b190d6db09bd72a9f0f51acef4b14eabd6ff)
2017-01-17 15:25:13 -08:00
Harish Mahendrakar
74f03b639e DO NOT MERGE Decoder: Increase memory allocation for weights & offsets for interlaced clips
Bug: 33816782
Change-Id: I10f8b2a7691aeb55365901c166e765ab22ec6106
2017-01-17 23:25:11 +00:00
Harish Mahendrakar
6887e085d7 Decoder: Fixed number of MB calculation for interlaced error streams am: e1cf7ea8ae am: 4e7779e0ef am: ba9af1da5d am: aa51017b8f am: 06b61cfbe1 am: f273d0f53b am: 2396631fe9
am: 523e19f292

Change-Id: If3acb58877f94f30eae6af1225532fae2e133579
2017-01-17 20:50:28 +00:00
Harish Mahendrakar
f273d0f53b Decoder: Fixed number of MB calculation for interlaced error streams am: e1cf7ea8ae am: 4e7779e0ef am: ba9af1da5d am: aa51017b8f
am: 06b61cfbe1

Change-Id: I7c8748afaefdddbc170ab55c1da7fa7fe7ae0d16
2017-01-17 20:44:57 +00:00
Harish Mahendrakar
4e7779e0ef Decoder: Fixed number of MB calculation for interlaced error streams
am: e1cf7ea8ae

Change-Id: If723b1da6adf7a816c095f327023853bcaccd0c5
2017-01-17 20:34:28 +00:00
Marco Nelissen
c4f317b873 Merge "Decoder: Fixed number of MB calculation for interlaced error streams" into mnc-dev 2017-01-17 20:27:24 +00:00
Harish Mahendrakar
4300da4d0e Call ih264d_deblock_display only for valid process calls am: 318368435f am: 2c71fb1941 am: d2977b77e3 am: d66e74cdbf am: 40ebdfd0fb am: cdb1b16a45 am: f9627fe750
am: ee30608e37

Change-Id: Idf70ab86588118496148cb32213ddc5856eec6fc
2017-01-09 17:37:49 +00:00
Harish Mahendrakar
cdb1b16a45 Call ih264d_deblock_display only for valid process calls am: 318368435f am: 2c71fb1941 am: d2977b77e3 am: d66e74cdbf
am: 40ebdfd0fb

Change-Id: I363759fc9520fd49f2b365d42e578e10d858db04
2017-01-09 17:22:48 +00:00
Harish Mahendrakar
2c71fb1941 Call ih264d_deblock_display only for valid process calls
am: 318368435f

Change-Id: I210dfb1eaf04b3ddceffa041c43e25e52023090d
2017-01-09 17:03:46 +00:00
Harish Mahendrakar
e1cf7ea8ae Decoder: Fixed number of MB calculation for interlaced error streams
At the end of picture processing, if the current pic is partially
decoded, number of MBs to be processed was wrongly calculated for
interlaced cases.

Bug: 33129467
Change-Id: Ia81186c60d346f02663607f2dc14166781db6a69
2016-12-28 15:07:09 -08:00
Harish Mahendrakar
318368435f Call ih264d_deblock_display only for valid process calls
ih264d_deblock_display() should be called only if current
decoder call has got a picture buffer during start of pic

Bug: 33751193
Change-Id: I3bf2fdbb910bf7240484dae48b85d72833830d56
2016-12-28 15:03:10 -08:00
Harish Mahendrakar
b258b1bd56 Decoder: Ignore dangling fields during flush
am: 4b6344b281

Change-Id: I8017e81b6d14cb507f297c54a95748455d6b5484
2016-10-25 19:20:19 +00:00
Harish Mahendrakar
4b6344b281 Decoder: Ignore dangling fields during flush
If decoder has decoded one field and is waiting for next field,
and flush is called, then ignore the current decoded field.

This is needed to ensure seek works in case of flush between field
decode calls

Bug: 32391809
Test: Tested manually by decoding clip in the above bug in Photos app

Change-Id: I72bb0385c216ebe262b346a56d3bc8fb97f90a7b
2016-10-25 11:47:19 +05:30
Harish Mahendrakar
a2723f8647 Fix in the case of invalid SPS PPS am: c2e8ffe451 am: ff7ccdab0c am: 956ab4c476 am: 5c1f3eb993
am: 8b610a8350

Change-Id: I586ffd87cbb76040e18eed79b8b776dcd1567e5c
2016-09-21 20:49:00 +00:00
Harish Mahendrakar
86c5eddcf6 Fix in the case of invalid SPS PPS am: c2e8ffe451 am: ff7ccdab0c am: 956ab4c476 am: 5c1f3eb993
am: 8b610a8350

Change-Id: I610cbaeccbf36d7209264e46faa34b8c4d5df17e
2016-09-21 20:49:00 +00:00
Harish Mahendrakar
ff7ccdab0c Fix in the case of invalid SPS PPS
am: c2e8ffe451

Change-Id: Iaf266c5ff2187ba980737b699884e3ebebe87bd0
2016-09-21 20:38:58 +00:00
Harish Mahendrakar
c2e8ffe451 Fix in the case of invalid SPS PPS
Bug: 31092462
Change-Id: I0e2ab5a1088717bbf36f6b0cf859b5a6e0f59c5d
2016-09-21 09:50:06 -07:00
Harish Mahendrakar
b424a5e101 Fixed error concealment when no MBs are decoded in the current pic am: b926905ee2 am: ff54ee6115 am: 9fca73a55e am: 19080458ba
am: 9836aa04a9

Change-Id: I7a2f3551c304c180df9e05b06de9de7bef0b9436
2016-07-14 01:37:54 +00:00
Harish Mahendrakar
7419a0e039 Fixed error concealment when no MBs are decoded in the current pic am: b926905ee2 am: ff54ee6115 am: 9fca73a55e am: 19080458ba
am: 9836aa04a9

Change-Id: Iccfd85fcf60aa708c08fdebe0dc1d4bd27141181
2016-07-14 01:37:53 +00:00
Harish Mahendrakar
ff54ee6115 Fixed error concealment when no MBs are decoded in the current pic
am: b926905ee2

Change-Id: I8a0a6fc068b543a4431b085c9335301e89ef2e14
2016-07-14 01:22:44 +00:00
Harish Mahendrakar
b926905ee2 Fixed error concealment when no MBs are decoded in the current pic
Bug: 29493002
Change-Id: I3fae547ddb0616b4e6579580985232bd3d65881e
2016-07-13 17:32:27 -07:00
Hangyu Kuang
b4a03ec634 Merge "DO NOT MERGE Decoder: Added support for exporting VUI params" into nyc-mr1-dev 2016-07-11 22:28:53 +00:00
Harish Mahendrakar
ba93b7fedb DO NOT MERGE Decoder: Added support for exporting VUI params
Bug: 27442922

Change-Id: I4bc3a9fb31ffea1e9e8ae32e5ed49fcc12fbdf42
2016-07-11 22:21:03 +00:00
Harish Mahendrakar
8b078e826e Decoder: Added support for exporting VUI params am: d5953ced23
am: a1fa8e86e8

Change-Id: I1363116738bb33b3c9a999ba7159f4c80d9eef89
2016-06-23 16:01:53 +00:00
Harish Mahendrakar
a1fa8e86e8 Decoder: Added support for exporting VUI params
am: d5953ced23

Change-Id: I01485a055330902830f64850c1ddfa2ce4b8ce25
2016-06-23 15:58:05 +00:00
Harish Mahendrakar
d5953ced23 Decoder: Added support for exporting VUI params
Bug: 27442922

Change-Id: I4bc3a9fb31ffea1e9e8ae32e5ed49fcc12fbdf42
2016-06-22 04:10:00 +00:00
Ray Essick
1cb4c241b9 Merge \\"Decoder: Simplified error checks on display stride\\" am: e8463cdf28
am: fb5a6f6fcc

Change-Id: I19f6dbf1268ad302a4c2fc5b8dd2f6f30948f2db
2016-06-21 21:25:06 +00:00
Harish Mahendrakar
fb5a6f6fcc Merge \"Decoder: Simplified error checks on display stride\"
am: e8463cdf28

Change-Id: Ie404c25afb8461451b738a174431c2cd6d6c03be
2016-06-21 21:22:17 +00:00