Mirjana Vulin
8d2eb5fe58
mips: optimization for float aac decoder (sbr module)
...
Signed-off-by: Mirjana Vulin <mvulin@mips.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Diego Biurrun
218aefce44
dsputil: Move LOCAL_ALIGNED macros to libavutil
12 years ago
Ronald S. Bultje
42d3246948
floatdsp: move vector_fmul_reverse from dsputil to avfloatdsp.
...
Now, nellymoserenc and aacenc no longer depends on dsputil. Independent
of this patch, wmaprodec also does not depend on dsputil, so I removed
it from there also.
12 years ago
Ronald S. Bultje
55aa03b9f8
floatdsp: move vector_fmul_add from dsputil to avfloatdsp.
12 years ago
Christophe Gisquet
9a16359c38
AAC SBR: use AVFloatDSPContext's vector_fmul
...
Around 5% speedup on the code block using 'vector_fmul_add's.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years ago
Christophe Gisquet
e32bea8eb4
aac: avoid a memcpy in sbr_qmf_analysis
...
Swapping buffer indices allows saving one memcpy that accounts for 1% of the
runtime, according to oprofile.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 years ago
Justin Ruggles
3d3cf6745e
aacdec: use float planar sample format for output
12 years ago
Michael Niedermayer
cf5f4c5169
aacsbr: check sample_rate before using it, fix division by 0
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
a15adabdd3
aacsbr: fix integer overflow
...
Fixes CID603186
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Diego Biurrun
8f4c414df6
Improve wording and spelling of av_log_missing_feature messages.
12 years ago
Michael Niedermayer
248b1ff26b
Fix various uses of av_log_missing_feature()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
c2340831b8
aacsbr: change order of operation to prevent out of array read
...
Fixes CID732250
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Mans Rullgard
d0f34c96b1
aacsbr: remove unused variables
13 years ago
Michael Niedermayer
0e3cec9f7d
aacsbr: optimize sine level addition
...
Based-on commit by Måns Rullgård <mans@mansr.com>
original: 1424 decicycles in phi, 1024 runs, 0 skips
mans code: 1104 decicycles in phi, 1024 runs, 0 skips
this change: 734 decicycles in phi, 1024 runs, 0 skips
mans code: 1 file changed, 20 insertions(+), 10 deletions(-)
this change: 1 file changed, 10 insertions(+), 6 deletions(-)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Alex Converse
9fb7e14635
aacdec: More robust output configuration.
...
Save the old output configuration (if it has been used
successfully) when trying a new configuration. If the new configuration
fails to decode, restore the last successful configuration.
13 years ago
Reimar Döffinger
1ac606bae6
aacsbr: silence message for SBR extension "padding".
...
Some files contain a few additional, all-0 bits.
Check for that case and don't print incorrect "not supported"
message.
Fixes trac issue #836 .
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
13 years ago
Alex Converse
b00307ecd0
aacsbr: Add a debug check to sbr_mapping.
...
There have been multiple bugs caused by inconsistencies here.
Based on an idea from Michael Niedermayer.
CC: libav-stable@libav.org
13 years ago
Alex Converse
0cb93dacee
aac: Reset some state variables when turning SBR off
...
This makes sure the reset flag gets set when SBR gets turned back on
and sets control variables for unguided mode back to their defaults.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Ronald S. Bultje
6e2821160b
Revert "AAC SBR: group some writes."
...
This reverts commit ba36f14e5d
. It
broke decoding on x86-32 on some systems.
13 years ago
Christophe Gisquet
ba36f14e5d
AAC SBR: group some writes.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Christophe Gisquet
cc412b7104
aacsbr: use a swap index for the Y matrix rather than copy buffers.
...
Signed-off-by: Alex Converse <alex.converse@gmail.com>
13 years ago
Mans Rullgard
8996ed2b73
aacsbr: align some arrays
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Mans Rullgard
aac46e088d
aacsbr: move some simdable loops to function pointers
...
This prepares for assembly optimisations by moving the most
time-consuming loops to functions called through pointers
in a new context.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Alex Converse
17ce52912f
aacsbr: prevent out of bounds memcpy().
...
Fixes Libav Bug 195.
This doesn't make the code handle sample rate or upsample/downsample
change properly but this is still a good sanity check.
Based on change by Michael Niedermayer.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
13 years ago
Michael Niedermayer
944f5b2779
aacsbr: Fix memory corruption.
...
Fixes Ticket760 and Ticket761
Bug Found by: Diana Elena Muscalu
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
ad51833a1a
aacsbr: prevent multiple ff_aac_sbr_ctx_init()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
abe0dbea2e
aacsbr: add a assert0 to check for a inconsistency that
...
occurd during debug. I dont know if this can happen normally but if so
it would be quite bad.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Justin Ruggles
9aa8193a23
Add floating-point sample format support to the ac3, eac3, dca, aac, and vorbis
...
decoders.
Based on patches by clsid2 in ffdshow-tryout.
14 years ago
Michael Niedermayer
30fe971934
aac: add headers needed for log2f()
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
14 years ago
Michael Niedermayer
3d462373f8
aac: add math.h needed for log2f()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Mans Rullgard
26f548bb59
fft: remove inline wrappers for function pointers
...
This removes the rather pointless wrappers (one not even inline)
for calling the fft_calc and related function pointers.
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Alex Converse
4a7d992437
aac: remove dead SBR input scaling
...
It has been unused since 9d06d7bce3
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 916dee9f45
)
14 years ago
Alex Converse
916dee9f45
aac: remove dead SBR input scaling
...
It has been unused since 9d06d7bce3
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Justin Ruggles
733dbe7d18
Remove the add bias hack for the C version of DSPContext.float_to_int16_*().
...
(cherry picked from commit 9d06d7bce3
)
14 years ago
Justin Ruggles
9d06d7bce3
Remove the add bias hack for the C version of DSPContext.float_to_int16_*().
14 years ago
Alex Converse
afa4248e4e
aacsbr: Eliminate double precision arithmetic.
...
Originally committed as revision 24227 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
fd6eb4a06c
Move Parametric Stereo related ps* files to aacps*.
...
Originally committed as revision 23720 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
cf3b4d9a78
aacsbr: Make dk signed. There is no point in it being unsigned.
...
Originally committed as revision 23671 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
bd9e0e2905
10l: aacsbr: Fix f_master[2] calculation when k2diff == -1.
...
Originally committed as revision 23660 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
a20639017b
Add HE-AAC v2 support to the AAC decoder.
...
Originally committed as revision 23647 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
bc330b5f15
Cosmetics: Fold constants and re-indent after last commit.
...
Originally committed as revision 23520 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
712209d567
Base downsampled SBR synthesis filterbank on a single IMDCT.
...
Based on Han-Wen Hsu, et al. "Fast Complex Quadrature Mirror Filterbanks for
MPEG-4 HE-AAC"
Originally committed as revision 23519 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
388c795531
10l: Fix types and now unused variables after last commit.
...
Originally committed as revision 23517 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
932963b8e2
Rewrite the SBR decoder QMF analysis filter on top of the IMDCT instead of the RDFT.
...
This is based on a procedure to implement the filterbank on the DCT-IV described in
Hsu, H.W. et al. "A Complex Quadrature Mirror Filterbanks for MPEG-4 HE-AAC"
http://sites.google.com/site/wenchiehlee1020/Papers/ComplexFB_AES_121paper144.pdf
Originally committed as revision 23516 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
dd8871a63b
aacdec: Rename avccontext to avctx.
...
Originally committed as revision 23488 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
17d5959998
10l: The SBR refactor requires the use of 2 independent output X buffers.
...
Originally committed as revision 23014 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
2d23fecd5d
Enforce time border monotonicity.
...
Thanks to Chromium.
Originally committed as revision 23000 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
a91d82b5cc
Move the SBR patch count check to prevent overwrites.
...
Thanks to Chromium.
Originally committed as revision 22999 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alex Converse
10678e5c72
Increase size of patch_borders[].
...
6 patches means there can be 7 borders. Found by Chromium.
Originally committed as revision 22998 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago