History log of /external/aac/libAACdec/src/aacdecoder_lib.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6792cf6361ff339e336287affb0bfe54bf6957a9 21-May-2014 Jean-Michel Trivi <jmtrivi@google.com> AAC-Decoder: SBR delay for gapless

Revise decoder output delay determination. The output delay consisted of
concealment and limiter delay. SBR delay was not covered but must be
considered for gapless playback delay compensation.

Bug 9428126

Change-Id: I67483712c284de9b5378694f9db7acbed2547dd7
/external/aac/libAACdec/src/aacdecoder_lib.cpp
8e087bf394c5ceddcdb8b1d029795aff3026eea0 21-May-2014 Jean-Michel Trivi <jmtrivi@google.com> AAC-Decoder: DRC metadata in stream info

Provide relevant DRC metadata information via API needed for DRC
presentation mode wrapper.

Bug 9428126

Change-Id: I827cd6bdfd2a8799c21935ae32af23739c90a9b6
/external/aac/libAACdec/src/aacdecoder_lib.cpp
af967fcc55656a0d3c2a05982713f1ca43c1252b 21-May-2014 Jean-Michel Trivi <jmtrivi@google.com> AAC Decoder: flush/seek improvements

Improve flushing and seeking.
Add field to the API stream info structure signaling the additional output
delay for flushing and delay compensation.

Bug 9428126

Change-Id: I808412905563ea3de50a2e77a9b5dfee829cd2ed
/external/aac/libAACdec/src/aacdecoder_lib.cpp
603f48ab99ce76f552f4f6f85d06b8c5b94c698e 31-Dec-2013 Jean-Michel Trivi <jmtrivi@google.com> AAC Decoder: introduce time domain limiter

Introduce time domain limiter. The module is per default enabled for all
AAC-LC and HE-AAC v1/2 streams. For all ER-AAC-LD and ER-AAC-ELD streams
the limiter is disabled per default. The feature can be en- or disabled
via dynamic API parameter. Note that the limiter introduces an additional
output delay which depends on the module parameters and the streams
sampling rate.

Bug 9428126

Change-Id: I299a072340b33e2c324facbd347a72c8de3d380e
/external/aac/libAACdec/src/aacdecoder_lib.cpp
47c680c62246594107da0a8995c953dfb8040bce 28-Dec-2013 Jean-Michel Trivi <jmtrivi@google.com> AAC Decoder: support 6.1/7.1 decoded as 5.1

- Add 6.1 and 7.1 channel support including downmixer. Per default the
decoder creates a 5.1 channel output for all streams with more than six
encoded channels.
Modified file(s):
libPCMutils/include/pcmutils_lib.h
libPCMutils/src/pcmutils_lib.cpp
libAACdec/include/aacdecoder_lib.h
libAACdec/src/aac_rom.h
libAACdec/src/aacdecoder.cpp
libAACdec/src/aac_ram.cpp
libAACdec/src/aacdec_drc.cpp
libAACdec/src/aacdecoder_lib.cpp
libAACdec/src/aac_rom.cpp
libAACdec/src/aacdecoder.h
libSBRdec/include/sbrdecoder.h
libSBRdec/src/sbrdec_drc.h
libSBRdec/src/sbrdecoder.cpp
libSBRdec/src/sbr_ram.cpp
libSBRdec/src/sbr_ram.h
libMpegTPDec/include/tp_data.h
libMpegTPDec/include/tpdec_lib.h
libMpegTPDec/src/version
libMpegTPDec/src/tpdec_asc.cpp
libMpegTPEnc/include/tp_data.h
libMpegTPEnc/src/version
libSYS/include/FDK_audio.h
libSYS/src/genericStds.cpp

- Fix error concealment modules fade-out/in mechanism.
Modified file(s):
libAACdec/src/conceal.cpp

Bug 9428126

Change-Id: I3230bd2072314b730911cd7ec1740e290cb1d254
/external/aac/libAACdec/src/aacdecoder_lib.cpp
206a397c708738c08edc0229881018edcb8ea793 28-Aug-2013 Jean-Michel Trivi <jmtrivi@google.com> Decoder parse ASC

* AAC-Decoder

- Add support for explicit backward compatible signaling via ASC extension.

Bug 9428126

Change-Id: I0cb8226da07e3684bbb7eb95d10b6040973aa0f6
/external/aac/libAACdec/src/aacdecoder_lib.cpp
5016eb7f6582fbb2d72d79be782325a12df08864 28-Aug-2013 Jean-Michel Trivi <jmtrivi@google.com> Decoder stability, sanity checks improvements

* AAC-Decoder

- Improved PCE handling for saver (re-)configuration and metadata processing.
Modified file(s):
libAACdec/src/aacdecoder.cpp
libAACdec/src/aacdecoder_lib.cpp

- Transport layer changes (config found) -> to be evaluated.
Modified file(s):
libMpegTPDec/include/tpdec_lib.h
libMpegTPDec/src/tpdec_latm.h
libMpegTPDec/src/version
libMpegTPDec/src/tpdec_asc.cpp
libMpegTPDec/src/tpdec_lib.cpp
libMpegTPDec/src/tpdec_adts.cpp
libMpegTPDec/src/tpdec_latm.cpp
libSYS/include/FDK_audio.h
libSYS/src/genericStds.cpp

- Enable concealment state machine to skip states if the corresponding
parameter is set to zero.
Modified file(s):
libAACdec/src/conceal.cpp

- Add some more sanity checks to avoid segmentation faults especially when
setting dynamic API params.
Modified file(s):
libAACdec/src/aacdecoder_lib.cpp

- Fix to do a fail-safe initialization of IMDCT for all channels even with
corrupt streams.
Modified file(s):
libAACdec/src/aacdecoder.cpp

- HCR decoder fix (remove warnings).
Modified file(s):
libAACdec/src/block.cpp

- Fix border calculation in SBR decoder's LPP transposer patch determination.
Modified file(s):
libSBRdec/src/env_dec.cpp
libSBRdec/src/sbrdecoder.cpp
libSBRdec/src/lpp_tran.cpp

Bug 9428126

Change-Id: Ib415b702b88a7ec8e9a55789d79cafb39296d26b
/external/aac/libAACdec/src/aacdecoder_lib.cpp
b9774f90651be61065ae40171fc321f6ced60e49 28-Aug-2013 Jean-Michel Trivi <jmtrivi@google.com> Decode dynamic range control improvements

* AAC-Decoder

- Only set the program reference level if it has changed compared to the
previous value. This allows setting it on a frame-by-frame basis without
limitations.
Modified file(s):
libAACdec/src/aacdec_drc.cpp
libAACdec/src/aacdec_drc.h

- Add expiry counter for the program reference level.
Modified file(s):
libAACdec/src/aacdec_drc.cpp
libAACdec/src/aacdec_drc_types.h

- Disable scaling of light compression gain values when heavy compression
mode is enabled to have the full light compression as fallback if no heavy
values are available.
Modified file(s):
libAACdec/src/aacdec_drc.cpp
libAACdec/src/aacdecoder_lib.cpp
libAACdec/src/aacdec_drc_types.h

- Change initialization and channel disabling to improve start-up behavior in
SBR decoder.
Modified file(s):
libSBRdec/src/sbrdecoder.cpp
libSBRdec/src/sbrdec_drc.cpp

Bug 9428126

Change-Id: Ie1d3949c53910506da2547d32fe3bf6ee7606eb4
/external/aac/libAACdec/src/aacdecoder_lib.cpp
2ddc922da87bb675b8ab8c305566436e806df0d9 28-Aug-2013 Jean-Michel Trivi <jmtrivi@google.com> Decode parametric stereo even with invalid channel config

AAC decoder: Allow decoding of Parametric Stereo (AOT 29) bitstreams
with invalid channel config 2.

Bug 9428126

Change-Id: I1e8b801dfc0e6b1706421342d4985512e83f0dbe
/external/aac/libAACdec/src/aacdecoder_lib.cpp
3a0a695565d1d360f9a82173469c8ef858bc08a0 28-Aug-2013 Jean-Michel Trivi <jmtrivi@google.com> FDK update for downsampled SBR

Add missing support for downsampled SBR in libFDK

Bug 9428126

Change-Id: Idb732f8d31a115d36dd4b22916599db7fab98cae
/external/aac/libAACdec/src/aacdecoder_lib.cpp
4f0d97057c5c640b25518358886f8c47da9fc052 09-Aug-2013 Jean-Michel Trivi <jmtrivi@google.com> Disclaimer update, lib version increment

- Update disclaimer in all source files.
- Increment library version in each FDK sub-module.

Bug 9428126

Change-Id: I490b96d4ee472246b01483202b0bb4f1e9c2a5d7
/external/aac/libAACdec/src/aacdecoder_lib.cpp
6ab36997af5d5acda4f21d33031f4e45c85f96b7 02-Oct-2012 Jean-Michel Trivi <jmtrivi@google.com> Bug 7170947 Update AAC codec

From Fraunhofer:
* AAC Decoder

- Stick to the written MPEG standard instead of the MPEG reference software
in terms of reference level normalization. Always set the program reference
level equal to the target level. This disables level normalization using a
default level for streams without embedded metadata.
Modified file(s):
libAACdec\src\aacdec_drc.cpp

- Fix downmix channel assignment when using a WAV output channel ordering.
Modified file(s):
libPCMutils\src\pcmutils_lib.cpp

- Retain signal accuracy and prevent LSB alteration when no level correction
needs to be done.
Modified file(s):
libAACdec\src\aacdec_drc.h
libAACdec\src\aacdec_drc.cpp
libSBRdec\src\sbrdecoder.cpp
libSBRdec\src\sbr_dec.cpp
libSBRdec\src\sbrdec_drc.cpp

- Align metadata processing with reference implementation.
Modified file(s):
libAACdec\src\aacdec_drc.h
libAACdec\src\aacdecoder.cpp

* AAC-Encoder

- Prevent potential overflow in energy calculation after TNS processing.
Modified file(s):
libAACenc\src\band_nrg.cpp

- Added saturation for number of relevant lines which are used in pe
calculation.
Modified file(s):
libAACenc\src\line_pe.cpp

- Removed obsolete files.
Deleded file(s):
libAACenc\src\tns_param.h
libAACenc\src\tns_param.cpp

* FDK-Library

- Added x86 Count Leading Zeros intrinsic.
Modified file(s):
libFDK\include\clz.h
Added file(s):
libFDK\include\x86\clz_x86.h

- Fixed compilation for MIPS GCC-4.4 and higher.
Modified file(s):
libFDK\include\mips\cplx_mul.h
libFDK\include\mips\fixmul_mips.h

Change-Id: I4be65f07f88d412224c7fddc3f054e8f451176cc
/external/aac/libAACdec/src/aacdecoder_lib.cpp
381d69840ad3af2259f0b7ef49236f9ee9c76b76 09-Sep-2012 Jean-Michel Trivi <jmtrivi@google.com> Bug fixes in AAC decoder, AAC encoder, FDK library

Latest code drop from Fraunhofer:

* AAC-Decoder

- Expanded AAC-LD/ELD decoder TNS max band tables to avoid wrong data
access for sampling rates <22kHz and >48kHz.
Modified file(s):
libAACdec\src\aacdec_tns.cpp
libAACdec\src\aac_rom.h
libAACdec\src\aac_rom.cpp

- Fixed ELD synthesis QMF filterbank scaling for downsampled SBR.
Modified file(s):
libFDK\src\qmf.cpp

* AAC-Encoder

- Fixed bit rate limiting for lower limit as introduced in the Delivery 2012-05-11.
Modified file(s):
libAACenc\include\aacenc_lib.h
libAACenc\src\aacenc.h
libAACenc\src\aacenc.cpp
libSBRenc\src\sbr_rom.h
libSBRenc\src\sbr_rom.cpp

- Allow negative prediction gain as meaning that there is no coding gain.
Make use of scaleValueSaturate in gauss window calculation.
Modified file(s):
libAACenc\src\aacenc_tns.cpp

- Added energy saturation to prevent overflow in short blocks.
Modified file(s):
libAACenc\src\grp_data.cpp

- Perform scalefactor adaption in case quantized lines are out of valid range.
Modified file(s):
libAACenc\src\quantize.cpp

- Interrupt quantization loop when no spectral data is available.
Adjustments in bitreservoir adaption.
Modified file(s):
libAACenc\src\qc_main.cpp

- Indroduced dynamic scaling in none missing harmonic energy lowering compensation.
Modified file(s):
libSBRenc\src\env_est.cpp

* FDK-Library

- Fixed saturation for negative values in scaleValueSaturate.
Modified file(s):
libFDK\include\scale.h

Change-Id: If830ea65caef6b5554281e4b7a77a8b2e08825ce
/external/aac/libAACdec/src/aacdecoder_lib.cpp
2228e360595641dd906bf1773307f43d304f5b2e 11-Jul-2012 The Android Open Source Project <initial-contribution@android.com> Snapshot 2bda038c163298531d47394bc2c09e1409c5d0db

Change-Id: If584e579464f28b97d50e51fc76ba654a5536c54
/external/aac/libAACdec/src/aacdecoder_lib.cpp