summaryrefslogtreecommitdiff
path: root/libavcodec/aaccoder.c
Commit message (Collapse)AuthorAge
* libavcodec: Make use of av_clip functionsPeter Meerwald2015-02-21
| | | | | Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* aacenc: Fix target bitrate for twoloop quantiser searchClaudio Freire2013-05-14
| | | | | | | This fixes a case where multichannel bitrate isn't accurately targetted by psy model alone, never achieving the target bitrate. Signed-off-by: Martin Storsjö <martin@martin.st>
* avcodec: Drop some silly commented-out av_log() invocationsDiego Biurrun2012-10-01
|
* aacenc: Fix issues with huge values of bit_rate.Reimar Döffinger2012-04-17
| | | | | | | | | | Do not pointlessly call ff_alloc_packet multiple times, and fix an infinite loop by clamping the maximum number of bits to target in the algorithm that does not use lambda. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* Replace memset(0) by zero initializations.Diego Biurrun2012-03-28
| | | | Also remove one pointless zero initialization in rangecoder.c.
* aacenc: Move Q^3/4 calculation to it's own tableNathan Caldwell2012-01-23
| | | | | | This should be moved to tablegen at some point. Signed-off-by: Alex Converse <alex.converse@gmail.com>
* aacenc: cosmetics, replace 'rd' with 'bits' in codebook_trellis_rate to make ↵Nathan Caldwell2012-01-23
| | | | | | it more clear what is being calculated. Signed-off-by: Alex Converse <alex.converse@gmail.com>
* Add libavutil/mathematics.h #includes for INFINITYMans Rullgard2011-11-22
| | | | | | This fixes build errors in some environments. Signed-off-by: Mans Rullgard <mans@mansr.com>
* psymodel: Add channels and channel groups to the psymodel.Nathan Caldwell2011-06-29
|
* aacenc: Fix codebook trellising for zeroed bands.Alex Converse2011-06-27
| | | | | Choose band type (codebook) zero, count its bits, and mark the other states as unnavigable.
* Remove unused variablesMans Rullgard2011-06-02
|
* aac: workaround for compilation on cygwinReinhard Tartler2011-05-11
| | | | | | | | | On cygwin, math.h needs to be included before float.h because of a bug in the system headers. Including libavutil/libm.h first works around this issue. Longer discussion of the topic: http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/128582
* Define POW_SF2_ZERO in aac.h and use for ff_aac_pow2sf_tabp[] offsets insteadAlex Converse2011-04-27
| | | | of hardcoding 200 everywhere.
* aac: add headers needed for log2f()Michael Niedermayer2011-04-26
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* aacenc: reduce the number of loop index variablesYoung Han Lee2011-04-04
| | | | Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* aacenc: indentationYoung Han Lee2011-03-24
|
* aacenc: fix the side calculation in search_for_msYoung Han Lee2011-03-24
|
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* aacenc: cosmetics, indentation, and comment clarificationNathan Caldwell2011-03-16
| | | | | Correct bad indentation in aaccoder Clarify and correct comments in 3GPP psymodel, other cosmetics.
* aaccoder: Change FFMAX for allzero flag to OR bit operationYoung Han Lee2011-03-16
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* aacenc: TLS: Save maximum values for each swb in a table.Alex Converse2010-07-24
| | | | | | This gives an almost 20% speedup. Originally committed as revision 24484 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 10l: Remove some commented out code that slipped in.Alex Converse2010-07-24
| | | | Originally committed as revision 24483 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: TLS: Try to preserve some energy in each non-zero band.Alex Converse2010-07-24
| | | | | | | Reduce scalefactors in non-zero bands that underflow by twice as much as those in bands that just fail to hit psy targets. Originally committed as revision 24482 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Prevent premature termination of the two loop search.Alex Converse2010-07-24
| | | | Originally committed as revision 24476 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Favor log2f() and sqrtf() over log2() and sqrt().Alex Converse2010-07-24
| | | | Originally committed as revision 24473 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Factorize some scalefactor utilities.Alex Converse2010-07-23
| | | | Originally committed as revision 24472 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Convert if () abort() to assert().Alex Converse2010-07-19
| | | | Originally committed as revision 24336 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cosmetics: WhitespaceAlex Converse2010-07-19
| | | | Originally committed as revision 24333 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 10l: Add a missing const.Alex Converse2010-07-16
| | | | Originally committed as revision 24274 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Template quantize_and_encode_band_cost().Alex Converse2010-07-16
| | | | Originally committed as revision 24273 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Fill in the estimated codebook for the final computed scalefactor in ↵Alex Converse2010-06-28
| | | | | | the TLS. Originally committed as revision 23869 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Remove an unnecessary division from the TLS.Alex Converse2010-05-28
| | | | Originally committed as revision 23368 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cosmetics: whitespaceAlex Converse2010-05-28
| | | | Originally committed as revision 23367 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Remove unnecessary variables and scopes in the TLS.Alex Converse2010-05-28
| | | | Originally committed as revision 23366 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix declaration after statementAlex Converse2010-05-25
| | | | Originally committed as revision 23331 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Split find_max_val() from find_min_book() to eliminate duplicate ↵Alex Converse2010-05-25
| | | | | | searches. Originally committed as revision 23322 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove useless costly inf checks from the trellis scalefactor search.Alex Converse2010-05-25
| | | | Originally committed as revision 23319 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Trellis over scalefactors using an estimated codebook rather than ↵Alex Converse2010-05-25
| | | | | | | | every codebook. The minimal codebook to encode the band without clipping is used (as is done in the TLS). Originally committed as revision 23318 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Only trellis over a column of 61 scalefactors (reduced from 256).Alex Converse2010-05-25
| | | | | | This still provides plenty of dynamic range, makes every move legal, and greatly reduces the search space. Originally committed as revision 23317 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Factor out find_min_book so it can be used by multiple coefficient ↵Alex Converse2010-05-25
| | | | | | coders. Originally committed as revision 23316 to svn://svn.ffmpeg.org/ffmpeg/trunk
* fmaxf -> FFMAX to fix pre-C99 systemsAlex Converse2010-05-14
| | | | Originally committed as revision 23138 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Add a rate only trellis for codebook selection for the TLS.Alex Converse2010-05-14
| | | | Originally committed as revision 23136 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Use exact values when quantizing, not fuzzy values.Alex Converse2010-05-14
| | | | | | This requires us to code small escapes; we can't avoid it. Originally committed as revision 23135 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Use an estimated codebook for the TLS (two loop search).Alex Converse2010-05-14
| | | | Originally committed as revision 23134 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 10l: store the result of clipping added in r23035Alex Converse2010-05-06
| | | | Originally committed as revision 23037 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make the faac inspired quantizer search make sense for a slightly narrower ↵Alex Converse2010-05-06
| | | | | | definition of "make sense." Originally committed as revision 23035 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove explicit filename from Doxygen @file commands.Diego Biurrun2010-04-20
| | | | | | | | Passing an explicit filename to this command is only necessary if the documentation in the @file block refers to a file different from the one the block resides in. Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Merge quantize_band_cost() with quantize_and_encode_band().Alex Converse2010-03-24
| | | | | | If these two functions aren't matched results may be unexpected. Originally committed as revision 22655 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Use preprocessor constants for trellis states and stages.Alex Converse2009-09-21
| | | | Originally committed as revision 19948 to svn://svn.ffmpeg.org/ffmpeg/trunk
* aacenc: Split paths in the scalefactor selection trellis into a 2-D array.Alex Converse2009-09-21
| | | | Originally committed as revision 19947 to svn://svn.ffmpeg.org/ffmpeg/trunk