Commit graph

61 commits

Author SHA1 Message Date
Harish Mahendrakar
d89d151c2a 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
am: f38e192634

Change-Id: Ia0f241a57ec28cf5335ff66a7e1d8758a1b0f09c
2017-01-09 17:42: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
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
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
cbf620e01c Decoder: Simplified error checks on display stride
Change-Id: Ifd926cf664dbeeb146d427f37a89ccc3c3e52cf5
2016-06-21 05:50:53 +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
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
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
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
Harish Mahendrakar
c7a1cf4e0b Ensure ih264d_start_of_pic() is not repeated in ih264d_mark_err_slice_skip()
In case of error in handling MMCO commpands/reference list creation,
ih264d_start_of_pic() was called again in ih264d_mark_err_slice_skip() resulting in
leaking a picture or an MV buffer in buffer manager.

To fix this, ensure prev_slice_err is set to 1 only if u4_pic_buf_got is zero, before
calling ih264d_mark_err_slice_skip() at the end of picture decode.
This will ensure ih264d_start_of_pic() is not repeated

Bug: 25818142

Change-Id: I7d5a9179533581eec663bc6a19a2901e7cce6af3
2016-02-22 14:27:52 -08:00
Dan Willemsen
1c01bc10a9 Remove __DATE__/__TIME__ from Android builds
This removes unnecessary changes from build to build.

Bug: 24204119
Change-Id: I25258314fe56ea186d38d756fb5fb04aa689a812
(cherry picked from commit f197ccb756)
2015-10-30 21:54:53 +00:00
Dan Willemsen
f197ccb756 Remove __DATE__/__TIME__ from Android builds
This removes unnecessary changes from build to build.

Bug: 24204119
Change-Id: I25258314fe56ea186d38d756fb5fb04aa689a812
2015-10-27 17:52:13 -07:00
Harish Mahendrakar
7ba9f34a49 Decoder: Memset 8 extra bytes at the end of internal bitstream buffer
Decoder may read 8 extra bytes at the end of this buffer, though it will never be used
Setting it to zero will ensure unitialized reads are avoided

Change-Id: I724239861cb9fa64f3a70cb5450e094cb3afa20c
2015-10-16 20:12:42 +00:00
Harish Mahendrakar
e027a11e31 Decoder: Exit gracefully in case of allocation failure
Skip error concealment when allocation fails for decoder buffers

Change-Id: I785f31cad5dca52c8c67cba78cdd330b7b4539e1
2015-10-16 19:29:43 +00:00
Harish Mahendrakar
f377e8cb05 Decoder: Memset 8 extra bytes at the end of internal bitstream buffer
Decoder may read 8 extra bytes at the end of this buffer, though it will never be used
Setting it to zero will ensure unitialized reads are avoided

Change-Id: I724239861cb9fa64f3a70cb5450e094cb3afa20c
2015-10-09 15:49:32 +00:00
Harish Mahendrakar
3d9f217e4e Decoder: Exit gracefully in case of allocation failure
Skip error concealment when allocation fails for decoder buffers

Change-Id: I785f31cad5dca52c8c67cba78cdd330b7b4539e1
2015-10-09 01:02:36 +00:00
Harish Mahendrakar
59348127de Decoder: Fixed an issue in handling flush
Fixed a NULL pointer reference, when flush is called before
decoding any pictures.

This was seen in following CTS test,
android.media.cts.DecoderTest#testCodecResetsH264WithSurface

Fixed code formatting issues in ih264d_set_flush_mode
Updated the testbench to call flush before decoding starts

Bug: 24405410

Change-Id: Ib04e0b15573b2482c9d5b43c8bc7dd30d8f8efdd
2015-09-25 22:24:55 +00:00
Harish Mahendrakar
251b007ecc Decoder: Reduced memory requirements
Memory allocations are now done based on contents of SPS
API changed to move allocations inside the library

Also changed strlen to strnlen

Bug: 24221026

Change-Id: I9130457f564cddb4da7ec6399cc9fe88ee871217
2015-09-23 18:35:27 +00:00
Harish Mahendrakar
39f8ae0a35 Decoder: Fixed an issue in handling flush
Fixed a NULL pointer reference, when flush is called before
decoding any pictures.

This was seen in following CTS test,
android.media.cts.DecoderTest#testCodecResetsH264WithSurface

Fixed code formatting issues in ih264d_set_flush_mode
Updated the testbench to call flush before decoding starts

Change-Id: Ib04e0b15573b2482c9d5b43c8bc7dd30d8f8efdd
2015-09-02 16:51:43 +05:30
Harish Mahendrakar
34b3e479f4 Decoder: Reduced memory requirements
Memory allocations are now done based on contents of SPS
API changed to move allocations inside the library

Also changed strlen to strnlen

Change-Id: I9130457f564cddb4da7ec6399cc9fe88ee871217
2015-08-04 17:50:14 +05:30
Hamsalekha S
e789d1d2e2 Decoder: Fixed issues shown by Valgrind
The slice header structure has now been initialized to 0
Fixed bug in closing of threads in the case of error.

Bug: 22860270

Change-Id: I777e0b73ad2f083c72be179984f5c1cb00ededb6
2015-07-31 18:52:32 +00:00
Hamsalekha S
90bd045476 Decoder: Fixed issues shown by Valgrind
The slice header structure has now been initialized to 0
Fixed bug in closing of threads in the case of error.

Change-Id: I777e0b73ad2f083c72be179984f5c1cb00ededb6
2015-07-29 16:15:30 +05:30