summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2017-10-11Add README.fedorastripped2Wim Taymans2-0/+5
2017-10-10Fix distWim Taymans1-1/+1
2017-10-10Fix size of structWim Taymans1-0/+1
2017-10-10Remove TNSWim Taymans19-2090/+8
2017-10-09Strip minimal decoder and encoderWim Taymans141-53406/+54
2017-08-18Adjust the fix for infinite loops with a drained ADTS streamMartin Storsjo1-1/+3
This should have less risk of causing other issues.
2017-08-18Enhance TNS tuning for 8 kHz audio sampling rateMartin Storsjo1-1/+1
This tuning has been suggested by Fraunhofer, fixing overflows in encoding certain sequences.
2017-08-15Always feed more input data when possible for ADTSMartin Storsjo1-3/+1
This fixes cases where an ADTS header could set numberOfRawDataBlocks to a number larger than 1, which would lead to transportDec_FillData not feeding any more data, even though the input buffer was depleted. Fixes: 3014/clusterfuzz-testcase-5425740193464320 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-08-15Check that pSettings is initializedMartin Storsjo1-0/+4
Fixes: 2872/clusterfuzz-testcminimized-4529959869612032 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-08-03Check for heightLayer out of rangeMartin Storsjo1-0/+12
Alternatively, the bits read in CProgramConfig_ReadHeightExt could be checked right there instead. Fixes: 2802/clusterfuzz-testcase-minimized-6752357788418048 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-08-03Make sure at least one bit exists before reading further in FDKreadBitMartin Storsjo1-1/+5
Fixes: 2709/clusterfuzz-testcase-minimized-6160249369133056 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-08-03Check that all channel mapping entries used are validMartin Storsjo1-0/+3
If channel numbers are changed on the fly (in invalid bitstreams), we can end up with a channel mapping with fewer channels mapped than we actually try to output. Ideally, this condition should probably be checked somewhere closer to where it enters such a state, not when using the channel mapping though. Fixes: 2808/clusterfuzz-testcase-minimized-4694952892170240 Fixes: 2275/clusterfuzz-testcase-minimized-6205444085252096 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-06-22Re-fix "Stack-buffer-overflow in FDKmemset"Martin Storsjo1-0/+4
This probably doesn't fix the root cause, but at least fixes the issues found in this particular fuzzed sample. Compared to the previous fix in 39e13c1acbca94f562f9776e1555ced50dd0dfcd, this doesn't break HE-AACv2 encoding, by allowing the case with usb==no_channels. Fixes: 1973/clusterfuzz-testcase-minimized-6319232084082688 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-06-22Revert "Fix "Stack-buffer-overflow in FDKmemset""Martin Storsjo1-4/+0
This reverts commit 39e13c1acbca94f562f9776e1555ced50dd0dfcd. This turned out to break HE-AACv2 encoding. Will look for a better fix for the issue found by the fuzzed sample. This fixes issue #69.
2017-06-12Check that the SBR decoder has been properly initializedMartin Storsjo1-0/+4
This probably doesn't fix the root cause, but at least fixes the issues found in this particular fuzzed sample. Fixes: 1994/clusterfuzz-testcase-minimized-6368089497141248 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-06-12Fix "Stack-buffer-overflow in FDKmemset"Martin Storsjo1-0/+4
This probably doesn't fix the root cause, but at least fixes the issues found in this particular fuzzed sample. Fixes: 1973/clusterfuzz-testcase-minimized-6319232084082688 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-06-12Make sure to end all CRC regions in the right orderMartin Storsjo1-1/+16
This fixes assert failures, when a (corrupt/fuzzed) bitstream doesn't trigger starting/ending CRCs properly (or when decoding is aborted halfway when an error is encountered). Skipping ending a CRC region doesn't trigger an assert failure, but when a later CRC region is started and ended, an assert fails when the end doesn't match the expected CRC region. Fixes: 1928/clusterfuzz-testcase-minimized-6480505958563840 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-06-12Don't try to read a negative number of bitsMartin Storsjo1-1/+1
Fixes: 1919/clusterfuzz-testcase-minimized-5021082513833984 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-06-12Avoid infinite loops in block decodingMartin Storsjo1-0/+3
Fixes: 1921/clusterfuzz-testcase-minimized-5480510065213440 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
2017-04-26Try to properly handle the case when the bitstream reader runs out of bits ↵Martin Storsjo1-1/+15
to read
2017-04-23Add checks to avoid overreading supplied buffers and fix issue #61.Robert Kausch2-20/+45
2017-03-14Saturate additions in spectralChangeMartin Storsjo1-2/+2
This fixes a crash.
2017-03-14Merge remote-tracking branch 'aosp/master'Martin Storsjo4-78/+42
2017-02-23Merge "Fix not properly handled NULL-pointer access before check in aac lib"Treehugger Robot2-19/+10
2017-02-23Fix not properly handled NULL-pointer access before check in aac libliuchao2-19/+10
1) Fixes some potential NULL-pointer access in case input pointer is passed NULL 2) Modified some for lazy init Test: mm -j 8 Change-Id: I7fca97e1d9f70d8e8c1533b519181af35a5468f7
2017-02-21Merge "Linux compilation fix"Treehugger Robot1-0/+4
2017-02-21Linux compilation fixJakub Pawlowski1-0/+4
Test: manual Change-Id: Ie374e47b93e8fa3a44c731cb73f7e151d265c74c
2017-01-20Merge "Change build config of aac from Android.mk to Android.bp"Treehugger Robot2-59/+32
2017-01-19Change build config of aac from Android.mk to Android.bpPavlin Radoslavov2-59/+32
* In an effort to modernize build configurations to the new Soong system, we need to upgrade existing Android.mk files to Android.bp * This file is done by using the following steps: 1. Manually removing all *_sources from Android.mk, because of the unusual make logic they use 2. Running the auto-conversion tool: androidmk Android.mk > Android.bp 3. Editing the result Android.bp: 3.1. Writing the "srcs" list 3.2. Removing the escaping around -Wno-#warnings in cflags, because those are not needed anymore 3.3. Renamed local_include_dirs to export_include_dirs to facilititate the inclusion of header files. It appears users of libFraunhoferAAC are using header files from all include directories, hence the renaming. Test: Code compilation ("mm" in external/aac, and "make" in top-directory) Bug: b/32958753 b/34454142 Change-Id: Ie89f73722908e8734f4b88f1407952311ec064af
2017-01-11Update the changelog for the upcoming 0.1.5 releaseMartin Storsjo1-0/+8
2017-01-04Merge remote-tracking branch 'aosp/master'Martin Storsjo0-0/+0
2016-10-28Merge remote-tracking branch 'aosp/master'Martin Storsjo2-9/+9
2016-10-28Merge "Remove redundant register storage class specifiers"Martin Storsjo2-9/+9
am: ed91226cec Change-Id: Ieb0f6090190d7cd2d21599f9b1e6ce950608313d
2016-10-28Merge "Remove redundant register storage class specifiers"Treehugger Robot2-9/+9
2016-10-18Remove redundant register storage class specifiersMartin Storsjo2-9/+9
Clang warns about this being deprecated, when building without specifying -std=c++98. This doesn't give any measurable encoding speed impact on ARM or AArch64, on neither GCC nor Clang. Change-Id: I63a0bbd1dccb97547522da188ee585d4d8127c29
2016-10-18Don't force C++98 mode any longerMartin Storsjo1-1/+1
The code builds fine in C++11 mode now.
2016-10-18Merge remote-tracking branch 'aosp/master'Martin Storsjo4-30/+28
2016-10-18Merge "Add casts to avoid errors due to narrowing"Martin Storsjo4-30/+28
am: 4556cb9cb8 Change-Id: I4cb4a7dace03c7c09403588da05ea8df0f35077e
2016-10-18Merge "Add casts to avoid errors due to narrowing"Treehugger Robot4-30/+28
2016-10-17Add casts to avoid errors due to narrowingMartin Storsjo4-30/+28
This fixes building in C++11 mode, which normally errors out on narrowing hex literals to signed long. This is similar to what was done in git commit ef30836651 (change id I64d19a8a8059c5a96386b1eaac297fd2469515f8), completing the fix for that category of issues. Change-Id: I1907bc947d43bf44910fb2b34bf2b31c0e53aa53
2016-09-24Add new files to "make dist"Martin Storsjo1-1/+5
2016-09-11Fix building with MSVC for ARMMartin Storsjo2-2/+4
cmnintrin.h only existed for Windows CE, and doesn't seem to actually be necessary for building this.
2016-09-11Detect MSVC x64Martin Storsjo1-1/+1
2016-09-11Windows MSVC Makefileopcodevoid3-0/+1160
2016-09-10Merge remote-tracking branch 'aosp/master'Martin Storsjo1-1/+1
2016-09-10Add aarch64 assembly optimization (ARMv8a 64 bits)Lexyan5-0/+249
The fixmuldiv functions don't need inline assembly to be fast in this architecture; the compiler (both clang and GCC) figure out to use the optimal instructions for this (which is 2 instruction sequence), and when letting the compiler emit the instructions instead of using inline assembly, the compiler is able to interleave those instructions with other instructions, improving scheduling, making it even faster than when using inline assembly. Overall, this gives about 50% speedup.
2016-09-09Merge "Avoid a warning about extra parentheses" am: f935254cc9 am: 899335d310Jean-Michel Trivi1-1/+1
am: 79c3cd8b1a Change-Id: Ia7a3b896268f11c5c2003c36aa38724910b08db0
2016-09-09Merge "Avoid a warning about extra parentheses" am: f935254cc9Jean-Michel Trivi1-1/+1
am: 899335d310 Change-Id: Iff4192d216e3ebeed98bf37d76b892be391ffa02
2016-09-09Merge "Avoid a warning about extra parentheses"Jean-Michel Trivi1-1/+1
am: f935254cc9 Change-Id: I838bc99ee6450cdf300663f3a1c356e5cacf517f
2016-09-09Merge "Avoid a warning about extra parentheses"Jean-Michel Trivi1-1/+1