Commit Graph

99 Commits

Author SHA1 Message Date
Robert Swain
158b39126d Support ADTS AAC files in the ffaac decoder (limited to streams containing one
raw_data_block() per ADTS frame)

Patch by Alex Converse ( alex converse gmail com) based on a patch by Robert
Swain ( robert swain gmail com )

Originally committed as revision 16485 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 22:09:21 +00:00
Carl Eugen Hoyos
6735e2c810 Revert r16375: It broke aac decoding.
Originally committed as revision 16376 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-28 20:08:39 +00:00
Carl Eugen Hoyos
69b38d4dc3 Reduce number of warnings when compiling with icc by two.
Originally committed as revision 16375 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-28 19:48:43 +00:00
Robert Swain
897c1703d0 AAC: Reindent after last commit
Originally committed as revision 16251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-21 05:32:55 +00:00
Alex Converse
aab5413323 AAC: Fix AAC prediction when used in conjunction with the CPE
Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 16250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-21 05:28:14 +00:00
Alex Converse
99665a21f4 AAC: Don't write an illegal sampling_index in a PCE to the MPEG4AudioConfig
member

Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 16249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-21 05:08:32 +00:00
Måns Rullgård
8153f14444 AAC: move scratch array to context to ensure 16-byte alignment
Originally committed as revision 16043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-10 00:50:59 +00:00
Alex Converse
4a904903dc AAC: Use a sign LUT rather than 1-2*get_bits1()
Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 16041 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-09 17:14:42 +00:00
Alex Converse
c0893c3abb AAC: Unroll code within decode_spectrum_and_dequant(). Gives 12% net speed gain.
Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 16040 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-09 17:08:40 +00:00
Alex Converse
8821210575 AAC: Remove unnecessary fabsf()
Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 16039 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-09 11:35:08 +00:00
Stefano Sabatini
dbbec0c2f2 Make av_log_missing_feature an internal function, and change its name
to ff_log_missing_feature.

Originally committed as revision 16037 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-08 21:21:38 +00:00
Robert Swain
8f5aaa6d2f AAC: Cosmetics after last commit
Originally committed as revision 15920 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-24 00:14:33 +00:00
Alex Converse
7633a0415d AAC: Frequency domain prediction and hence Main profile support
Patch by Alex Converse ( alex converse gmail com )

Originally committed as revision 15919 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-24 00:13:50 +00:00
Alex Converse
d0ee50216d Fix perceptual noise shaping scaling including an oversight of the offset for
the EIGHT_SHORT window type. Fixes issue 664.

Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15776 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-05 13:59:42 +00:00
Aurelien Jacobs
37d3e0667a uses FF_ARRAY_ELEMS() where appropriate
Originally committed as revision 15662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-21 21:40:24 +00:00
Alex Converse
fbdae895f2 Rename variables to clarify the channel coupling element and corresponding
target channel element.

Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15575 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-06 16:22:11 +00:00
Alex Converse
88de95c2f9 Corrections to channel coupling code to attain conformance for appropriate
streams.

Slightly reworked from a patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15573 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-06 16:12:30 +00:00
Robert Swain
341b28c0d2 Zero 'idx' for each iteration of the coupling gain loop and as it is only used
within this loop, we can move its declaration there too. This fixes bitstream
desync when decoding streams containing CCEs.

Based on a patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15364 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-18 16:02:51 +00:00
Robert Swain
f80a8ca5cb Cosmetics: missing brackets
Originally committed as revision 15363 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-18 15:48:37 +00:00
Alex Converse
c8947a5612 Cast the return value of get_bits() to signed integer such that the subtraction
is conducted as a signed calculation.

Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-18 15:35:08 +00:00
Alex Converse
aac0eda407 Validate pulse position and error out if an invalid position is encountered.
Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-16 15:59:43 +00:00
Robert Swain
70735a3f9e Reindent after last commit
Originally committed as revision 15315 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-13 20:52:57 +00:00
Alex Converse
5143684891 Apply pulses to unscaled coefficients rather than scaled.
Slight reworking of a patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-13 20:51:36 +00:00
Robert Swain
408992bae2 Operands of '+' are not necessarily evaluated in order so r15311 was pointless.
Splitting the assignment onto two lines should resolve the order issue.

Originally committed as revision 15313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-13 20:22:31 +00:00
Alex Converse
19645d742e Correct order of parsing for pulse scalefactor band and offset to match the
specification.

Patch by Alex Converse (alex converse gmail com)

Originally committed as revision 15311 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-13 18:47:43 +00:00
Robert Swain
35445d29f5 Reindent after last commit
Originally committed as revision 15304 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-12 14:33:35 +00:00
Alex Converse
5167364777 Only read some of TNS bitstream data in the case that the TNS filter order is
non-zero as per the specification.

Patch by Alex Converse (alex converse gmail com)
Fixes another issue pertaining to issue632

Originally committed as revision 15303 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-12 14:32:49 +00:00
Robert Swain
febcbd65fa Correct pulse amplitude application - a negative or 0 coefficient implies the
pulse is subtracted, else it is added. Also avoid a divide by 0.

Based on a patch by Alex Converse (alex converse gmail com)
Fixes part of issue632

Originally committed as revision 15294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-11 01:22:34 +00:00
Vitor Sessak
1775c7fac6 Multiply table by -1. This avoid doing this calculation (that was introduced
in my last commit) in real time.

Originally committed as revision 15195 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-04 15:04:08 +00:00
Vitor Sessak
1be0fc2909 Avoid duplicating compute_lpc_coefs() function in both the RA288 and AAC decoders.
Originally committed as revision 15193 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-04 11:03:14 +00:00
Robert Swain
93b63b1a67 Fix typo in element type
Originally committed as revision 15037 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-29 20:19:23 +00:00
Robert Swain
f4fae46e67 Remove unnecessary portion of a condition. This fixes issue607 and avoids
another unintended bug where channel coupling could have been run on an SCE.

Originally committed as revision 15036 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-29 20:18:34 +00:00
Robert Swain
b0f5852a13 Use ff_imdct_half() and vector_fmul_window() for IMDCT and windowing. Reduce
buffer sizes accordingly. This produces a ~10% overall decoding perfomance
improvement.

Originally committed as revision 14908 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-22 18:21:22 +00:00
Robert Swain
db38c38624 Whitespace cosmetics after the last commit
Originally committed as revision 14907 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-22 18:19:18 +00:00
Robert Swain
f49905588a Separate code in imdct_and_windowing() into distinct IMDCT, windowing and
buffer update sections

Originally committed as revision 14906 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-22 18:18:50 +00:00
Robert Swain
65b20b2485 Reindent after last commit
Originally committed as revision 14882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-21 12:13:22 +00:00
Robert Swain
fbd91d7cad Work around GCC variable may be used uninitialised warning
Originally committed as revision 14881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-21 12:12:03 +00:00
Robert Swain
1098e8d236 Remove unused variable
Originally committed as revision 14880 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-21 11:29:28 +00:00
Robert Swain
4b0044b750 Reindent
Originally committed as revision 14877 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-21 10:23:55 +00:00
Andreas Öman
f339908843 The comment about channel order for AAC 5.1 audio was not correct, fix it.
Originally committed as revision 14875 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-21 07:57:51 +00:00
Robert Swain
7d8f3de4a8 Last hunk of the AAC decoder code to be OKed and build system and documentation
alterations as appropriate

Originally committed as revision 14873 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-21 07:21:26 +00:00
Robert Swain
1dece0d2cd More OKed AAC decoder code hunks
Originally committed as revision 14829 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-18 21:36:58 +00:00
Robert Swain
9ffd5c1cee More OKed AAC decoder hunks
Originally committed as revision 14774 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-15 08:01:31 +00:00
Robert Swain
848a5815ce Synchronise AAC decoder code with that from SoC
Originally committed as revision 14772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-15 00:19:14 +00:00
Robert Swain
62a57fae59 More OKed sections of AAC decoder code
Originally committed as revision 14770 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-15 00:05:09 +00:00
Robert Swain
9edae4ad81 Synchronise code with AAC decoder in SoC
Originally committed as revision 14695 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-11 11:22:48 +00:00
Robert Swain
9cc04edff9 More OKed hunks of the AAC decoder from SoC
Originally committed as revision 14694 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-11 11:16:06 +00:00
Robert Swain
cc0591dab0 Sync already committed code with that in SoC and commit more OKed hunks of code
Originally committed as revision 14674 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-09 10:46:27 +00:00
Robert Swain
71e9a1b8dd OKed sections of code from the SoC AAC decoder
Originally committed as revision 14626 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 19:32:01 +00:00