summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'android-6.0.1_r22' of ↵staging/cm-13.0+r22Steve Kondik2016-03-104-4/+34
|\ | | | | | | | | | | https://android.googlesource.com/platform/external/libavc into cm-13.0 Android 6.0.1 release 22
| * Return error when there are more mmco params than allocated sizeNaveen Kumar Ponnusamy2016-01-154-4/+34
| |\ | | | | | | | | | | | | | | | | | | am: 943323f1d9 * commit '943323f1d9d3dd5c2634deb26cbe72343ca6b3db': Return error when there are more mmco params than allocated size
| | * Return error when there are more mmco params than allocated sizeNaveen Kumar Ponnusamy2016-01-134-4/+34
| | | | | | | | | | | | | | | | | | Bug: 25818142 Change-Id: I5c1b23985eeca5192b42703c627ca3d060e4e13d
| * | Decoder Update mb count after mb map is set.Harish Mahendrakar2016-01-072-11/+6
| |\| | | | | | | | | | | | | | | | | | | am: 4a524d3a8a * commit '4a524d3a8ae9aa20c36430008e6bd429443f8f1d': Decoder Update mb count after mb map is set.
| | * Decoder Update mb count after mb map is set.Harish Mahendrakar2016-01-072-11/+6
| | | | | | | | | | | | | | | | | | Bug: 25928803 Change-Id: Iccc58a7dd1c5c6ea656dfca332cfb8dddba4de37
| * | Remove __DATE__/__TIME__ from Android buildsDan Willemsen2015-10-302-0/+14
| | | | | | | | | | | | | | | | | | | | | This removes unnecessary changes from build to build. Bug: 24204119 Change-Id: I25258314fe56ea186d38d756fb5fb04aa689a812 (cherry picked from commit f197ccb7562bac6f5bae40c9cb9dbb46a77baeb5)
* | | Merge tag 'android-6.0.1_r17' into HEADJessica Wagantall2016-03-072-11/+6
|\ \ \ | | | | | | | | | | | | | | | | Android 6.0.1 release 17 Ticket: CYNGNOS-1854
| * | | Decoder Update mb count after mb map is set.Harish Mahendrakar2016-01-222-11/+6
| | | | | | | | | | | | | | | | | | | | | | | | Bug: 25928803 Change-Id: Iccc58a7dd1c5c6ea656dfca332cfb8dddba4de37
* | | | Merge tag 'android-6.0.1_r3' of ↵Steve Kondik2015-12-078-7/+165
|\| | | | | | | | | | | | | | | | | | | | | | | https://android.googlesource.com/platform/external/libavc into HEAD Android 6.0.1 release 3
| * | | Remove __DATE__/__TIME__ from Android buildsDan Willemsen2015-11-032-0/+14
| |/ / | | | | | | | | | | | | | | | | | | This removes unnecessary changes from build to build. Bug: 24204119 Change-Id: I25258314fe56ea186d38d756fb5fb04aa689a812 (cherry picked from commit f197ccb7562bac6f5bae40c9cb9dbb46a77baeb5)
| * | Reconcile branch with master after mass cherrypicksMarco Nelissen2015-10-161-4/+0
| | | | | | | | | | | | Change-Id: Ib017480389cb9f5204e5437716653016da348dba
| * | Decoder: Memset 8 extra bytes at the end of internal bitstream bufferHarish Mahendrakar2015-10-161-0/+5
| | | | | | | | | | | | | | | | | | | | | 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
| * | Decoder: Once all the MBs in a picture are decoded ignore remaining bytesHarish Mahendrakar2015-10-162-4/+0
| | | | | | | | | | | | | | | | | | | | | Once all the MBs are decoded, simply break from decode loops and do not signal an error This will handle cases where there may be extra bytes at the end of picture data Change-Id: I6d8ec918df5375f135e60f85b9a56ab2a5313a64
| * | Decoder: Exit gracefully in case of allocation failureHarish Mahendrakar2015-10-161-0/+3
| | | | | | | | | | | | | | | | | | Skip error concealment when allocation fails for decoder buffers Change-Id: I785f31cad5dca52c8c67cba78cdd330b7b4539e1
| * | Decoder: Added a check for unsupported resolutionsHarish Mahendrakar2015-10-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | Decoder now returns an error for resolutions greater than 3840x2176 Bug: 24542936 Change-Id: I38be0e4c5cf2a980bfd4c781f3b49171f73b5ccb
| * | Encoder added support for VUI paramsHamsalekha S2015-10-095-6/+145
| | | | | | | | | | | | | | | | | | | | | SPS will now include vui params Removed a trailing space in ih264e_api.c Change-Id: I67a57741689206e571e9a83f7e3360149f87e06a
| * | Moved check for level after check for resolution change.Hamsalekha S2015-10-091-0/+4
| | | | | | | | | | | | | | | | | | This is required for DRC tests in CTS . Change-Id: Icd0fe10d97c6ee55f8358682a578bddb58590de4
| * | Fix a typo in gai4_ih264_max_luma_pic_sizeMartin Storsjo2015-10-091-1/+1
| | |
| * | Decoder: Fixed an issue in handling flushHarish Mahendrakar2015-09-252-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | Decoder: Fixed an out of bound read in intra pred buffersHarish Mahendrakar2015-09-251-3/+20
| | | | | | | | | | | | | | | | | | Bug: 23453762 Change-Id: I129e5a2ac8b9a28f3c894ebca0aef7063ca5934e (cherry picked from commit 040ec939c61f7dffb76c977b775b1bc1e82f2bde)
* | | Decoder: Once all the MBs in a picture are decoded ignore remaining bytesHarish Mahendrakar2015-11-072-4/+0
| | | | | | | | | | | | | | | | | | | | | Once all the MBs are decoded, simply break from decode loops and do not signal an error This will handle cases where there may be extra bytes at the end of picture data Change-Id: I6d8ec918df5375f135e60f85b9a56ab2a5313a64
* | | Decoder: Exit gracefully in case of allocation failureHarish Mahendrakar2015-11-071-0/+3
| | | | | | | | | | | | | | | | | | Skip error concealment when allocation fails for decoder buffers Change-Id: I785f31cad5dca52c8c67cba78cdd330b7b4539e1
* | | Decoder: Added a check for unsupported resolutionsHarish Mahendrakar2015-11-071-0/+6
| | | | | | | | | | | | | | | | | | Decoder now returns an error for resolutions greater than 3840x2176 Change-Id: I38be0e4c5cf2a980bfd4c781f3b49171f73b5ccb
* | | Decoder: Fixed an issue in handling flushHarish Mahendrakar2015-09-262-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Decoder: Fixed an out of bound read in intra pred buffersHarish Mahendrakar2015-09-251-3/+20
| | | | | | | | | | | | | | | | | | Bug: 23453762 Change-Id: I129e5a2ac8b9a28f3c894ebca0aef7063ca5934e (cherry picked from commit 040ec939c61f7dffb76c977b775b1bc1e82f2bde)
* | | merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-09-240-0/+0
|\ \ \ | |/ / |/| |
| * | merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-09-220-0/+0
| |\ \ | | |/ | |/|
| | * Encoder: Fixed an issue in handling FPS greater than 60Harish Mahendrakar2015-08-031-2/+10
| | | | | | | | | | | | | | | | | | | | | FPS > 60 was resulting in an integer overflow, so using float now. Bug: 22504214 Change-Id: I4626ba6a43167c00c42dd6440df37bd1eb1f151a
| | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-08-010-0/+0
| | |\
| | | * merge in mnc-dr-release history after reset to mnc-dr-devThe Android Automerger2015-07-060-0/+0
| | | |\
| | | | * merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-170-0/+0
| | | | |\
| | | | | * merge in mnc-release history after reset to mnc-devThe Android Automerger2015-06-040-0/+0
| | | | | |\
| | | | | | * merge in mnc-release history after reset to mnc-devThe Android Automerger2015-05-060-0/+0
| | | | | | |\
| | | | | | | * Fixed few issues seen in CTS testsHarish Mahendrakar2015-05-0510-98/+94
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added support for encoding non-multiple of 16 dimensions Added support for encoding dimensions smaller than 64x64 Aligned coeff data to 4 byte boundary Bug: 20554276 Change-Id: I111093950f94698296d8499a2845cfe2db6c557b
* | | | | | | | Decoder: Reduced memory requirementsHarish Mahendrakar2015-09-2320-3012/+1558
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | | Return error in SPS/PPS parsing when extra bytes are read from inputHarish Mahendrakar2015-09-181-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: 24157524 Change-Id: I4b319ef8e23e1ba5f84f52b92f40ba7fb1429101
* | | | | | | Merge "Encoder: Fixed an issue in handling FPS greater than 60" into mnc-devRonghua Wu2015-08-031-2/+10
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | |
| * | | | | | Encoder: Fixed an issue in handling FPS greater than 60Harish Mahendrakar2015-08-031-2/+10
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FPS > 60 was resulting in an integer overflow, so using float now. Bug: 22504214 Change-Id: I4626ba6a43167c00c42dd6440df37bd1eb1f151a
* | | | | | Support for level greater than level at init in DecoderHamsalekha S2015-07-314-12/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added support to check num_ref_frames in SPS and num_reorder_frames in VUI before returning error for level Bug: 22860270 Change-Id: I392bab419385ca239836d200f9f2b064915a8a46
* | | | | | Decoder: Fixed issues shown by ValgrindHamsalekha S2015-07-312-20/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | Don't use side effects in the macro PUT_BITS_SEV parametersMartin Storsjo2015-07-311-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If ENTROPY_TRACE is defined, the value parameter gets evaluated twice. Since this parameter includes ++, the pointer gets incremented twice. This fixes encoding with trace enabled. Bug: 22860270 Change-Id: I3d71ac33d007301e488d264a33c7b5c4d4ff2b56
* | | | | | Made gops closedHarinarayanan K K2015-07-313-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now no picture in a gop will depend on any picture in the previous gop All calls to force an IDR are respected as soon as possible Bug: 22860270 Change-Id: Id2bcd5687c3fb786336a01894c1b9228d67a87a6
* | | | | | Always do recon of 4x4 intra blocksMartin Storsjo2015-07-311-21/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even if this 4x4 block isn't at the bottom or right border, the other 4x4 intra blocks within the same macroblock may use it for intra prediction. This fixes intra coded macroblocks in b-frames. Bug: 22860270 Change-Id: Ifdf48c1b2bbf232e785d6d5b8244aacba1ad3dd6
* | | | | | Validate the u4_entropy_coding_mode fieldMartin Storsjo2015-07-312-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, if this field wasn't set, the invalid coding mode could lead to crashes later. Bug: 22860270 Change-Id: If8dd2f8d5f2fbdd6bb76772344f959df23159167
* | | | | | Fixed issue in cost computation for BIPRED MEHarinarayanan K K2015-07-311-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BIPRED ME was discarding the halfpel motion vector components in cost computation. That is fixed now. Bug: 22860270 Change-Id: If6c77096d701a258920b14134ff120fd1540f254
* | | | | | Cabac optimizationsDoney Alex2015-07-313-75/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimized cabac functions for writing bypass bins. Removed unused return from cabac flush function. Removed the macro REV_NBITS. Bug: 22860270 Change-Id: Iece82797f2f45a35281817a2b77a7c7fe4e02bd1
* | | | | | Use INT_MAX as i4_max_sad in ih264e_evaluate_bipredMartin Storsjo2015-07-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The stored i4_mb_distortion that was used as i4_max_sad previously might come from a different coding mode - even if pf_ime_compute_sad_16x16 returns early when i4_mb_distortion is larger than ps_mb_ctxt_bi->i4_mb_distortion, the calculated i4_mb_cost can still end up smaller than ps_mb_ctxt_bi->i4_mb_cost. Therefore, set i4_max_sad to INT_MAX to avoid the early exit in pf_ime_compute_sad_16x16 here, since it can't be used reliably (and returning early can end up choosing a suboptimal mode). This makes sure that the encoded output is identical when the SIMD optimized routines are disabled, when using B-frames. Bug: 22860270 Change-Id: I9b8d524f88020e557541700133c7a0b48fe6a3b8
* | | | | | Make sure that apv_bufs[0] and u4_is_last always are setMartin Storsjo2015-07-312-2/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When encoding in header mode, the s_inp_buf struct that was written to ps_video_encode_op->s_ive_op.s_inp_buf was completely uninitialized. In ih264e_input_queue_update, make sure to initialize u4_is_last when skipping frames. Bug: 22860270 Change-Id: I87e677acd00baf4f732ca7d35ee192e7f1f73994
* | | | | | avcenc: Initialize avg_timeMartin Storsjo2015-07-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes valgrind warnings when encoding with b-frames. Bug: 22860270 Change-Id: I922314e5e6fd09db3ba60e60863e2611309886d5
* | | | | | Check the width/height and adjust level used for RCMartin Storsjo2015-07-311-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since 6cb6772805, the actual level used is MAX(u4_max_level, ih264e_get_min_level()), which means that it isn't a fatal error to set u4_max_level to a too low level (if the caller doesn't know or care). Despite this, the actual value set by the caller was still used for initializing the RC. This allows the caller to not have to set u4_max_level (currently every caller has to duplicate a table or code snippet for determining the right level for each resolution). The caller still can set it to a higher value if he wants to explicitly use a higher level than what is necessary. This makes sure that the output is identical even if u4_max_level is set too low. Bug: 22860270 Change-Id: Icdc6c0652a97568d1eafc050226357a9d643d809