summaryrefslogtreecommitdiff
path: root/libavcodec/ac3enc.c
Commit message (Collapse)AuthorAge
* Remove commented-out debug #define cruftDiego Biurrun2013-05-16
|
* avcodec: Add av_cold attributes to init functions missing themDiego Biurrun2013-05-04
|
* lavc: remove disabled FF_API_OLD_ENCODE_AUDIO cruftAnton Khirnov2013-03-09
|
* dsputil: Move LOCAL_ALIGNED macros to libavutilDiego Biurrun2013-02-08
|
* miscellaneous typo fixesDiego Biurrun2012-12-21
|
* Include libavutil/channel_layout.h instead of libavutil/audioconvert.hJustin Ruggles2012-11-11
| | | | Also reorder some other #include when applicable.
* Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-07
|
* Add a float DSP framework to libavutilJustin Ruggles2012-06-08
| | | | Move vector_fmul() from DSPContext to AVFloatDSPContext.
* avutil: Add av_get_default_channel_layout()Justin Ruggles2012-04-05
| | | | Also, use the new function in the AC-3 encoder.
* ac3enc: update to AVCodec.encode2()Justin Ruggles2012-03-20
| | | | Update FATE references due to encoder delay.
* (e)ac3enc: select a default bit rate based on the channel layoutJustin Ruggles2012-02-29
|
* ac3enc: choose the closest bit rate to the one requested instead of failingJustin Ruggles2012-02-29
|
* dsputil: Add ff_ prefix to the dsputil*_init* functionsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Drop unnecessary av_uninit attributes from some variable declarations.Diego Biurrun2012-02-13
| | | | Recent versions of gcc (4.4+) no longer give false positive warnings.
* Make channel layout masks unsignedMans Rullgard2011-11-25
| | | | | | | | | | It makes more sense for a bit mask to use an unsigned type. The change should be source and binary compatible on all supported systems, hence micro version bump. Fixes a few invalid shifts. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ac3enc: doxygen update.Justin Ruggles2011-11-02
| | | | | | Add some parameters to existing function documentation. Remove some unneeded documentation. Convert some static function documentation to non-doxygen style.
* ac3enc: Add channel coupling support for the fixed-point AC-3 encoder.Justin Ruggles2011-09-05
| | | | Update FATE references accordingly.
* ac3enc: add macros for option names to make them more understandable.Justin Ruggles2011-08-11
|
* ac3enc: fix 'channel_coupling' option to actually allow 'auto'.Justin Ruggles2011-08-11
| | | | Use 'auto' as the default value.
* ac3enc: allow new coupling coordinates to be sent independently for eachJustin Ruggles2011-08-09
| | | | channel.
* ac3enc: separate exponent bit counting from exponent grouping.Justin Ruggles2011-08-09
| | | | | | Move bit counting to the bit allocation function. Move exponent grouping to after bit allocation. This will allow for adjustment of bandwidth parameters during bit allocation without having to do exponent grouping multiple times.
* cosmetics: reindentJustin Ruggles2011-07-27
|
* eac3enc: support writing of basic mixing and info metadataJustin Ruggles2011-07-27
|
* eac3enc: use different numbers of blocks per frame to allow higher bitratesJustin Ruggles2011-07-21
|
* eac3enc: use frame exponent strategy when applicable.Justin Ruggles2011-07-19
| | | | | | | This checks if the set of selected exponent strategies for all blocks in a channel are in the frame exponent strategy table, and if so, writes the table index instead of each strategy. This saves up to 7 bits per channel per frame, so the overall effect on quality is small.
* ac3enc: merge AC3MDCTContext with AC3EncodeContext.Justin Ruggles2011-07-13
| | | | | | Since both the fixed-point and floating-point encoders use the FFTContext, this no longer needs to be in a separate context. Also, when a short-transform context is added, the same MDCT window will be used.
* ac3enc: prefer passing AC3EncodeContext rather than AVCodecContextJustin Ruggles2011-07-13
|
* ac3enc: fix memleakJustin Ruggles2011-07-13
|
* cosmetics: remove outdated comment that is no longer trueJustin Ruggles2011-06-28
|
* ac3enc: move ff_ac3_encode_frame() to ac3enc_template.cJustin Ruggles2011-06-27
| | | | | This avoids using function pointers for quite a few small functions, most of which just call DSP functions.
* ac3enc: Remove bit allocation fallbacks.Justin Ruggles2011-06-27
| | | | | | They introduce too much complexity for very little benefit. The result is that encoding will be more likely to fail at extremely low bitrates where quality would be awful anyway.
* ac3enc: remove unneeded local variable in asym_quant()Justin Ruggles2011-06-22
|
* ac3enc: remove a branch in asym_quant() by doing 2 shiftsJustin Ruggles2011-06-22
|
* ac3enc: avoid masking output in asym_quant() by using signed values forJustin Ruggles2011-06-22
| | | | quantized mantissas.
* ac3enc: fix allocation of floating point samples.Justin Ruggles2011-06-13
| | | | sizeof(SampleType) is different for fixed and float encoders.
* ac3enc: remove empty ac3_float function that is never calledJustin Ruggles2011-06-13
|
* ac3enc: split templated float vs. fixed functions into a separate file.Justin Ruggles2011-06-13
| | | | | Function pointers are used for templated functions instead of needlessly duplicating many functions.
* ac3enc: dynamically allocate AC3EncodeContext fields windowed_samples and mdctJustin Ruggles2011-06-13
| | | | | This will allow the same struct to be used for both the fixed and float ac3 encoders.
* ac3enc: use function pointer to choose between AC-3 and E-AC-3 header outputJustin Ruggles2011-06-13
| | | | functions.
* ac3enc: Fix linking of AC-3 encoder without the E-AC-3 encoder.Diego Biurrun2011-06-08
| | | | | The AC-3 encoder unconditionally references some symbols from the E-AC-3 encoder; make those references conditional to fix linking.
* Move E-AC-3 encoder functions to a separate eac3enc.c file.Justin Ruggles2011-06-07
|
* ac3enc: remove convenience macro, #define DEBUGJustin Ruggles2011-06-07
|
* ac3enc: remove unused #defineJustin Ruggles2011-06-07
|
* ac3enc: extract all exponents for the frame at onceJustin Ruggles2011-06-04
|
* ac3enc: fix LOCAL_ALIGNED usage in count_mantissa_bits()Mans Rullgard2011-05-28
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* ac3enc: modify mantissa bit counting to keep bap counts for all values of bapJustin Ruggles2011-05-28
| | | | | | instead of just 0 to 4. This does all the actual bit counting as a final step.
* ac3enc: split mantissa bit counting into a separate function.Justin Ruggles2011-05-28
| | | | No speed difference. This is to allow for more flexible bit counting.
* ac3enc: store per-block/channel bap pointers by reference block in a 2D arrayJustin Ruggles2011-05-28
| | | | | | | rather than in the AC3Block struct. This will make it easier to access the bap values without having to chase the reference block pointers each time.
* ac3enc: use LOCAL_ALIGNED macroMans Rullgard2011-05-28
| | | | | | | | | Aligned local variables must use the LOCAL_ALIGNED macro to ensure correct alignment on all systems. The unusual size argument to memset is required since the implementation of LOCAL_ALIGNED may use a pointer to an array. Signed-off-by: Mans Rullgard <mans@mansr.com>
* cosmetics: indentation and alignment after previous commitJustin Ruggles2011-05-27
|