Commit graph

83 commits

Author SHA1 Message Date
Harish Mahendrakar
5745d5d1a2 Decoder: Fix in MB count in MBAff error handling
am: 43e0aa2210

Change-Id: I7e3f3ba1dacffb592fa08475652696be887be2ab
2017-01-09 16:06:12 +00:00
Ray Essick
5e6147a424 Merge "Decoder: Fixed allocation of ps_dec->ps_nbr_mb_row" into mnc-dr-dev 2017-01-06 17:50:41 +00:00
Harish Mahendrakar
89850806d1 Decoder: Fixed cur_mb_info initialization in error cases
am: 902c15251f

Change-Id: I53e87b68254973492dac02a48a1b179a9eb4fc93
2017-01-06 17:41:01 +00:00
Harish Mahendrakar
8dfaf7cf1b Decoder: Fix in error concealment in the case of Mbaff clips
am: 3ebff7dc62

Change-Id: I53964cef3c617f22fee7a2db27dac09323db2daf
2017-01-06 17:41:00 +00:00
Harish Mahendrakar
7f2a8c6fa8 Decoder: Fix in the case of error in the first MB in frame.
am: 56b5563f3e

Change-Id: I600140bafcda9d4d9792db53d2a20cc13d90bfe1
2017-01-06 17:40:59 +00:00
Harish Mahendrakar
3e29786590 Decoder: Fix in returning incomplete frame error
am: d1896deaf1

Change-Id: I81b68c6f7b30c3ba048967cd64426b204b8ee895
2017-01-06 17:40:58 +00:00
Harish Mahendrakar
a13436200c Decoder: Fix initialization of ps_next_dpb during reference list creation
am: 54cbe1b29b

Change-Id: I20cc2843ab762c35b8c6a35745d0a674f3f6ef8b
2017-01-06 17:40:57 +00:00
Harish Mahendrakar
43e0aa2210 Decoder: Fix in MB count in MBAff error handling
Number of MBs to be marked as skip should be even for MBAff
error streams

Bug: 33450635
Change-Id: I6af59632e4b2d2882881fe8c52472164ea088f7a
2016-12-28 15:05:36 -08:00
Harish Mahendrakar
9b095de571 Decoder: Fixed allocation of ps_dec->ps_nbr_mb_row
This needs an additional row of data to hold top row
Issue is seen only for MBAff error cases which start with a field
at lower resolutions

Bug: 33139050
2016-12-28 13:04:00 -08:00
Harish Mahendrakar
902c15251f Decoder: Fixed cur_mb_info initialization in error cases
When number of MBs decoded in the current frame is zero and an error is
detected, MB info was unnecessarily decremented in multi-core case.

Bug: 33351708
Bug: 33298089
Bug: 33250932
Change-Id: I150c48c6fb382736f1de855ba5384c12bf84710d
2016-12-28 12:36:35 -08:00
Harish Mahendrakar
3ebff7dc62 Decoder: Fix in error concealment in the case of Mbaff clips
In case of MBAff clips, if error is detected after parsing odd MB,
then treat that odd MB also as error. All MBAff processing is done
as an MB-Pair.

Bug: 33298089
2016-12-28 12:36:15 -08:00
Harish Mahendrakar
56b5563f3e Decoder: Fix in the case of error in the first MB in frame.
In case of error in first MB in a frame, ps_dec->i4_submb_ofst
was decremented to result in negative offsets.

Bug: 33351708
2016-12-28 12:35:44 -08:00
Harish Mahendrakar
d1896deaf1 Decoder: Fix in returning incomplete frame error
In case a slice start code is found and picture decode is not complete
and a non slice NAL is encountered, then mark the current pic as incomplete

Bug: 33250932
Bug: 33139050

Change-Id: I9db4446338b307310805dba90c60c8cbdeee0739
2016-12-28 12:35:25 -08:00
Harish Mahendrakar
54cbe1b29b Decoder: Fix initialization of ps_next_dpb during reference list creation
ps_dpb_mgr->ps_dpb_ht_head is a linked list with
ps_dpb_mgr->u1_num_lt_ref_bufs number of valid buffers.
So ps_next_dbp has to be initialized to ps_dpb_mgr->ps_dpb_ht_head
for each u1_lt_index loop iteration

Bug: 33387820
Change-Id: I2dfd962bad5640a829afc123adbd0709e563e621
2016-12-28 12:33:39 -08:00
Harish Mahendrakar
637cb7f434 Decoder: Fix in checking for valid profile flags
am: d7eee555dc

Change-Id: I73b07d5ce0b248387d5f4b492caf63f02d372881
2016-12-08 00:16:31 +00:00
Harish Mahendrakar
d7eee555dc Decoder: Fix in checking for valid profile flags
Apart from Baseline, main and high profile, only extended profile
is supported provided, constraint_set0_flag or constraint_set1_flag are set to 1

Bug: 31999646
Change-Id: I3b62069efc49e222a7126fba0805fa9124aac8f2
2016-12-06 14:19:39 -08:00
Harish Mahendrakar
fab0729908 Decoder: Fixes in handling errors in Mbaff clips.
am: 6676aeb419

Change-Id: If83edf15d904c166661b3ab6065c5230269231dd
2016-10-18 23:36:38 +00:00
Harish Mahendrakar
5d794693d5 Decoder: Ignore few dpb errors
am: 026745ef04

Change-Id: Ibd9e7f2c7936fcd1f8bea8a84b99eb9780947feb
2016-10-18 23:36:27 +00:00
Marco Nelissen
23d5bc6405 Merge "Decoder: Fixes in handling errors in Mbaff clips." into mnc-dev 2016-10-18 23:33:12 +00:00
TreeHugger Robot
b4a6d2037b Merge "Decoder: Ignore few dpb errors" into mnc-dev 2016-10-18 23:25:25 +00:00
Harish Mahendrakar
6676aeb419 Decoder: Fixes in handling errors in Mbaff clips.
Fixes mb_x, mb_y and first_mb_in_slice for Mbaff error streams

Bug: 30481714

Change-Id: Ie99f3b57e48a620a4bc7aee88031955a2e1b6753
2016-10-18 12:19:18 -07:00
Harish Mahendrakar
026745ef04 Decoder: Ignore few dpb errors
Ignore dpb errors, where decoder fails to release a non-existing picture
from reference lists. This is needed to decode streams where few pictures
are missing.

Change-Id: I8ece68cb1fa22473029e16158cd86ce7a197027a
2016-10-18 12:19:06 -07:00
Harish Mahendrakar
02f663b3c2 Decoder: Fixes for handling errors in multi-slice MB Aff streams
am: bc71ad2d43

Change-Id: Ibcbdbb3c4473b3199abff8d47444e59416589695
2016-09-22 18:19:55 +00:00
Harish Mahendrakar
bc71ad2d43 Decoder: Fixes for handling errors in multi-slice MB Aff streams
Initialize default reference buffer for erroneous interlaced clips
Pick slice_type from decode thread slice structure
Call start_of_pic only once

Bug: 30822755
Change-Id: I553c646446d99a626d62351aa1b385355191cdc3
2016-09-22 08:29:34 -07: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
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
Ray Essick
daefcde2ed DO NOT MERGE ANYWHERE: Remove several memset() calls which overwrote buffers initialized
in buf_mgr_init().  Affects 6.0 only.
2016-06-23 22:07:15 +00:00
Harish Mahendrakar
c73e000665 Merge \"Decoder: Initialize first_pb_nal_in_pic for error slices\" into mnc-dev
am: b9d7cba8bf

Change-Id: I62f9c45eea70968942198b20f47c158dede39d8d
2016-06-21 18:53:18 +00:00
Robert Shih
b9d7cba8bf Merge "Decoder: Initialize first_pb_nal_in_pic for error slices" into mnc-dev 2016-06-21 18:47:11 +00:00
Harish Mahendrakar
48b182db5d Decoder: Do not conceal slices with invalid SPS/PPS
am: 3a419eac8d

Change-Id: I09e962ab090f890a149cb967f2b04fd95a7d76d7
2016-06-21 17:35:49 +00:00
Harish Mahendrakar
7a54468cf8 Decoder: Initialize first_pb_nal_in_pic for error slices
first_pb_nal_in_pic was uninitialized for error clips

Bug: 29023649

Change-Id: Ie4e0a94059c5f675bf619e31534846e2c2ca58ae
2016-06-16 17:28:19 -07:00
Harish Mahendrakar
3a419eac8d Decoder: Do not conceal slices with invalid SPS/PPS
Bug: 28835995
2016-06-14 13:43:54 -07:00
Harish Mahendrakar
d75185f90e Merge \"Decoder: Fix slice number increment for error clips\" into mnc-dev
am: 2e88a2aa67

Change-Id: I791c029e3b39202db3f49f13fbb511904b5e8fef
2016-06-10 21:31:13 +00:00
Marco Nelissen
2e88a2aa67 Merge "Decoder: Fix slice number increment for error clips" into mnc-dev 2016-06-10 21:21:44 +00:00
Harish Mahendrakar
5e4f64c074 Decoder: Fix slice number increment for error clips
Bug: 28673410
2016-06-09 08:31:55 -07:00
Harish Mahendrakar
2c9d67ffaf Fix slice params for interlaced video
Bug: 28165661
Change-Id: I912a86bd78ebf0617fd2bc6eb2b5a61afc17bf53
2016-05-25 20:06:08 +00:00
Harish Mahendrakar
cdfd7573ec Fix slice params for interlaced video
Bug: 28165661
Change-Id: I912a86bd78ebf0617fd2bc6eb2b5a61afc17bf53
2016-05-25 02:25:00 +00:00
Harish Mahendrakar
4e5762ce4b Decoder: Set u1_long_term_reference_flag to 0 for error concealment
am: eacafb943c

* commit 'eacafb943c':
  Decoder: Set u1_long_term_reference_flag to 0 for error concealment

Change-Id: I8836bf700a7b77deff062d9d1737b903583ad6b2
2016-05-24 00:28:43 +00:00
Harish Mahendrakar
eacafb943c Decoder: Set u1_long_term_reference_flag to 0 for error concealment
For MBs which are in error, set u1_long_term_reference_flag to zero.
This ensures latest frame is used for concealment

Bug: 28470138
Change-Id: I58eab5bc1da277823f3dbb4103ba50867f8935dc
2016-05-23 21:26:38 +00:00
Harish Mahendrakar
129a6006b4 Decoder: Initialize slice parameters before concealing error MBs
am: 33db7a0f4e

* commit '33db7a0f4e':
  Decoder: Initialize slice parameters before concealing error MBs

Change-Id: I91b5e507d6871e523add85ed774c5de2b85fcf18
2016-05-23 18:34:43 +00:00
Harish Mahendrakar
33db7a0f4e Decoder: Initialize slice parameters before concealing error MBs
Also memset ps_dec_op structure to zero.
For error input, this ensures dimensions are initialized to zero

Bug: 28165661
Change-Id: I66eb2ddc5e02e74b7ff04da5f749443920f37141
2016-05-20 15:27:35 -07:00
Harish Mahendrakar
af63f6f357 Merge "Decoder: Fix for handling invalid intra mode" into mnc-dev
am: 37579218eb

* commit '37579218eb':
  Decoder: Fix for handling invalid intra mode

Change-Id: Ia41f2b0c19b83d3508044487469176894ba898d4
2016-05-13 22:31:11 +00:00
Marco Nelissen
37579218eb Merge "Decoder: Fix for handling invalid intra mode" into mnc-dev 2016-05-13 22:20:17 +00:00
Harish Mahendrakar
370bd8625d Decoder: Memset few structures to zero to handle error clips
Bug: 27907656
Change-Id: I671d135dd5c324c39b4ede990b7225d52ba882cd
2016-05-11 09:20:48 -07:00
Harish Mahendrakar
43a1cf620f DO NOT MERGE. AVC decoder: init structures
Memset few structures to zero to handle error clips

Bug: 27907656
Change-Id: I517841fc8b6d674f7e4e3ebaf60dd2e42f1152ae
2016-05-11 08:18:59 -07:00
Harish Mahendrakar
f38d14c5d9 Decoder: Fix for handling invalid intra mode
Bug: 28165659
Change-Id: I2291a287c27291695f4f3d6e753b6bbd7dfd9e42
2016-05-10 10:35:27 -07:00
Harish Mahendrakar
0c20244073 Decoder: Fix stack underflow in CAVLC 4x4 parse functions
am: ef3da4e699

* commit 'ef3da4e699':
  Decoder: Fix stack underflow in CAVLC 4x4 parse functions
2016-02-23 02:25:42 +00:00
Harish Mahendrakar
1284f0c297 Ensure ih264d_start_of_pic() is not repeated in ih264d_mark_err_slice_skip()
am: c7a1cf4e0b

* commit 'c7a1cf4e0b':
  Ensure ih264d_start_of_pic() is not repeated in ih264d_mark_err_slice_skip()
2016-02-23 02:25:36 +00:00