Commit Graph

58 Commits

Author SHA1 Message Date
Reimar Döffinger 459fe331e9 ac3dec: avoid pointless alloc and indirection for input_buffer
Since we now always allocate it, it can simply be made part of the context
instead.
2011-09-06 12:43:16 -04:00
Anton Khirnov 9b83919f44 ac3dec: add a drc_scale private option
Deprecate corresponding AVCodecContext option.

This is the first test of decoder private options.
2011-07-10 17:07:12 +02:00
Reinhard Tartler 21a19b7912 doxygen: Prefer member groups over grouping into modules
Before this, almost all module groups have been used for grouping functions
and fields in structures semantically. This causes them to not appear
properly in the file documentation and needlessly clutters up the "Modules"
index.

Additionally, this commit streamlines some spelling and appearances.
2011-07-02 13:52:29 +02:00
Reimar Döffinger 86961eeabf ac3dec: fix doxy-style for comment ("///>" should be "///<" instead).
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-13 20:43:52 +02:00
Justin Ruggles 7f3a7b5c40 ac3enc: add channel coupling support
Channel coupling is an optional AC-3 feature that increases quality by
combining high frequency information from multiple channels into a
single channel. The per-channel high frequency information is sent with
less accuracy in both the frequency and time domains. This allows more
bits to be used for lower frequencies while preserving enough
information to reconstruct the high frequencies.
2011-05-24 07:52:31 +02:00
Vitor Sessak 9d35fa520e Add AVX FFT implementation.
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-04-26 18:25:24 +02:00
Mans Rullgard 6d9f52b2cd ac3: move ff_ac3_bit_alloc_calc_bap to ac3dsp
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-29 19:31:45 +01:00
Justin Ruggles be18738801 Get audio_service_type for AC-3 based on bitstream mode in the AC-3 parser
and decoder, and vice-versa for the AC-3 encoder.
2011-03-25 16:59:00 -04:00
Mans Rullgard 2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Justin Ruggles b35743ffb4 ac3: define AC3_MAX_CPL_BANDS and use it in ac3dec.h 2011-03-04 16:48:09 -05:00
Justin Ruggles c73d99e672 Separate format conversion DSP functions from DSPContext.
This will be beneficial for use with the audio conversion API without
requiring it to depend on all of dsputil.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-02 02:44:53 +00:00
Justin Ruggles 9d06d7bce3 Remove the add bias hack for the C version of DSPContext.float_to_int16_*(). 2011-01-28 00:07:35 +00:00
Justin Ruggles 47ae6e795b define AC3_CRITICAL_BANDS and use it in the AC-3 encoder and decoder.
Originally committed as revision 25967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-14 14:51:40 +00:00
Justin Ruggles 7066cc8f2b cosmetics: use better (and shared) macro names for some constant values
Originally committed as revision 25950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-14 14:50:34 +00:00
Diego Biurrun ba87f0801d Remove explicit filename from Doxygen @file commands.
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
2010-04-20 14:45:34 +00:00
Carl Eugen Hoyos ca6e7708b4 Add spectral extension to the E-AC-3 decoder.
Original patch by Justin, updated and resubmitted by
Christophe Gisquet, christophe D gisquet A gmail

Originally committed as revision 22734 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 22:09:14 +00:00
Måns Rullgård 3da1180409 Move some prototypes from dsputil.c to reasonable header files
Originally committed as revision 22260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:36:45 +00:00
Måns Rullgård 1429224b04 Move FFT parts from dsputil.h to fft.h
Originally committed as revision 22235 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 14:34:46 +00:00
Måns Rullgård 84dc2d8afa Remove DECLARE_ALIGNED_{8,16} macros
These macros are redundant.  All uses are replaced with the generic
DECLARE_ALIGNED macro instead.

Originally committed as revision 22233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 14:24:59 +00:00
Måns Rullgård c67278098d Move array specifiers outside DECLARE_ALIGNED() invocations
Originally committed as revision 21377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 03:25:11 +00:00
Måns Rullgård 01b2214758 Merge FFTContext and MDCTContext
Originally committed as revision 19931 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-20 17:30:20 +00:00
Justin Ruggles bb5b99a789 cosmetics: move fixed_coeffs into the aligned arrays comment group
Originally committed as revision 19590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-05 02:37:49 +00:00
Justin Ruggles 3f93716809 Modify decode_band_structure() so that the actual band structure is only
used within the function.  This removes the need to have the coupling band
structure stored in the AC3DecodeContext.

Originally committed as revision 19585 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-05 01:13:42 +00:00
Justin Ruggles 603139022d Use coupling band sizes instead of coupling band structure when
calculating coupling transform coefficients.

Originally committed as revision 19584 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-05 01:00:41 +00:00
Diego Biurrun 477ffff218 The internal header libavutil/internal.h should not be used outside libavutil.
Originally committed as revision 19157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-11 20:18:29 +00:00
Justin Ruggles 396b73c7f7 ac3dec: Remove unneeded context variable, num_cpl_subbands. It is also
not needed for spectral extension or enhanced coupling since it is
redundant information, so I am removing it from decode_band_structure()
as well.

Originally committed as revision 18751 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-06 01:47:34 +00:00
Justin Ruggles bfeca7beb6 Add channel layout support to the AC-3 decoder and AC-3 parser.
Originally committed as revision 18622 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-19 15:05:32 +00:00
Stefano Sabatini 9106a698e7 Rename bitstream.h to get_bits.h.
Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 16:20:26 +00:00
Diego Biurrun 30f68128ab Add missing #includes to fix 'make checkheaders'.
Originally committed as revision 17398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-17 21:43:57 +00:00
Diego Biurrun bad5537e2c Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Justin Ruggles e202cc2580 revert r15812 (E-AC-3 Spectral Extension) pending further review
Originally committed as revision 15818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 22:38:38 +00:00
Justin Ruggles 0cc51734b2 add support for spectral extension
Originally committed as revision 15812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:18:13 +00:00
Stefano Sabatini 987903826b Globally rename the header inclusion guard names.
Consistently apply this rule: the guard name is obtained from the
filename by stripping the leading "lib", converting '/' and '.'  to
'_' and uppercasing the resulting name. Guard names in the root
directory have to be prefixed by "FFMPEG_".

Originally committed as revision 15120 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 07:39:47 +00:00
Justin Ruggles 260e09305b remove unneeded variable, dither_all
Originally committed as revision 15011 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-28 23:04:15 +00:00
Justin Ruggles 8649e9332c add definitions and documentation for shared functions for E-AC-3 decoding
Originally committed as revision 14991 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 01:47:03 +00:00
Justin Ruggles 0ffea2439b copy default coupling band structure from table to decoding context (used for E-AC-3)
Originally committed as revision 14990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 01:40:46 +00:00
Justin Ruggles c5b930e674 1000l to me. committed to wrong repo. revert last commit.
Originally committed as revision 14953 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 22:57:25 +00:00
Justin Ruggles e23e4de3ae cosmetics: rename some functions from *get_* to *decode_*
Originally committed as revision 14952 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 22:55:08 +00:00
Justin Ruggles 46dd2738ae remove some unneeded header includes
Originally committed as revision 14819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-17 19:56:28 +00:00
Justin Ruggles ec0350c983 use LFG instead of Mersenne Twister for AC-3 PRNG
Originally committed as revision 14815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-17 17:41:48 +00:00
Loren Merritt 911e21a306 simd int->float
20% faster ac3 if downmixing, 15% if not

Originally committed as revision 14743 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 23:35:40 +00:00
Loren Merritt 557ac0c448 optimize ac3_downmix.
1.3x faster 5.1->stereo, 1.9x faster 5.1->mono.

Originally committed as revision 14719 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 23:45:46 +00:00
Loren Merritt 72745cff20 use float_to_int16_interleave in ac3
Originally committed as revision 14706 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 03:01:17 +00:00
Loren Merritt 916d5d6c32 use imdct_half in ac3
Originally committed as revision 14705 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 01:30:24 +00:00
Loren Merritt 0a570e826d remove mdct tmp buffer
Originally committed as revision 14702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 00:36:36 +00:00
Justin Ruggles 14b7062829 cosmetics: make all references to AC-3 capitalized and hyphenated
Originally committed as revision 14523 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 16:42:32 +00:00
Justin Ruggles 1db9da5238 cosmetics: vertical alignment
Originally committed as revision 14516 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 02:16:51 +00:00
Justin Ruggles a52d8c6b32 use MAX_BLOCKS for array size instead of 6
Originally committed as revision 14515 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 02:16:21 +00:00
Justin Ruggles a42c895207 rearrange dimensions of pre_mantissa array
Originally committed as revision 14514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 02:11:46 +00:00
Justin Ruggles bddadace8d add fields needed for E-AC-3 decoding to decode context
Originally committed as revision 13714 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-08 21:08:53 +00:00