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
b5ab9b59e0
Fix build with --disable-mdct
...
Originally committed as revision 21764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-11 23:40:45 +00:00
Reimar Döffinger
1ffc6e8327
Add ff_init_ff_cos_tabs function and use it in rdft.c to ensure that the
...
necessary ff_cos_tabs tables are initialized.
Fixes issue 1507 (QDM2 broken since r20237 without hardcoded tables).
Originally committed as revision 20464 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-05 18:29:06 +00:00
Reimar Döffinger
223217746c
Pad ff_cos_tabs and ff_sin_tabs so that index n points to the table for n bits.
...
While this "wastes" up to 2x32 bytes it makes the code slightly simpler and
less confusing.
Originally committed as revision 20449 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-04 17:30:23 +00:00
Reimar Döffinger
4ee726b670
Move/add COSTABLE/SINTABLE macros to dsputil to add extern definitions
...
for ff_cos_* and ff_sin_* without introducing too much code duplication.
Originally committed as revision 20243 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-15 17:55:51 +00:00
Reimar Döffinger
16aec74761
Use hardcoded instead of runtime-calculated ff_cos_* tables if
...
--enable-hardcoded-tables was used.
Due to the size, the code for the tables is generated at compile time.
Originally committed as revision 20232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-14 21:41:24 +00:00
Reimar Döffinger
5bd1fc6fbd
fft_dispatch array should be const
...
Originally committed as revision 20223 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-13 10:30:10 +00:00
Måns Rullgård
f486321395
Move per-arch fft init bits into the corresponding subdirs
...
Originally committed as revision 19864 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-15 21:14:14 +00:00
Måns Rullgård
9ecc414195
ARM: 10l: fix large FFTs
...
Originally committed as revision 19846 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-14 21:37:41 +00:00
Måns Rullgård
edc0f5dcba
ARM: NEON optimised MDCT
...
Originally committed as revision 19819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-11 02:24:22 +00:00
Måns Rullgård
46c32e2654
Prepare for optimised forward MDCT implementations
...
This adds a function pointer for forward MDCT to FFTContext and
initialises it with the existing C function. ff_calc_mdct() is
changed to an inline function calling the selected version as
done for other fft/mdct functions.
Originally committed as revision 19818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-11 02:24:19 +00:00
Måns Rullgård
648d792042
ARM: NEON optimised FFT and MDCT
...
Vorbis and AC3 ~3x faster.
Parts by Naotoshi Nojiri, naonoj gmail
Originally committed as revision 19806 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-10 08:50:03 +00:00
Reimar Döffinger
faca56191c
The ff_cos_tabs table itself is constant, too, so mark it as such.
...
Originally committed as revision 19784 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-06 08:53:14 +00:00
David Conrad
170e6b14f7
Remove long unused ALTIVEC_USE_REFERENCE_C_CODE ifdef; all other references
...
to it were removed in r6606
Originally committed as revision 17997 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-16 03:56:42 +00:00
Diego Biurrun
e10252483e
Only enable SSE/3DNOW optimizations when they have been enabled at compilation.
...
Fixes shared build with SSE/3DNOW disabled but MMX and yasm enabled.
Originally committed as revision 17451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 00:54:59 +00:00
Diego Biurrun
b3183ad034
prettyprinting whitespace cosmetics
...
Originally committed as revision 17443 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 00:06:17 +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
Alex Converse
6860254044
Add the rdft family of transforms (fft/ifft of an all real sequence) to dsputil.
...
Originally committed as revision 16864 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-30 20:15:48 +00:00
Alex Converse
eea325645c
Mark ff_fft_end av_cold.
...
Originally committed as revision 16851 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-29 17:08:51 +00:00
Alex Converse
3c4ea6d5ab
Mark ff_fft_init with av_cold.
...
Originally committed as revision 16722 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-22 19:48:10 +00:00
Alex Converse
8f05c995fd
Clean up FFT related comments.
...
Originally committed as revision 16721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-22 19:46:23 +00:00
Diego Biurrun
406792e7b0
cosmetics: Remove pointless period after copyright statement non-sentences.
...
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Aurelien Jacobs
b250f9c66d
Change semantic of CONFIG_*, HAVE_* and ARCH_*.
...
They are now always defined to either 0 or 1.
Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 23:44:16 +00:00
Dominik Mierzejewski
82d1605fe7
Remove duplicated MM_* macros for CPU capabilities from dsputil.h.
...
Add missing one for FF_MM_ALTIVEC to avcodec.h.
Rename all the occurences of MM_* to the corresponding FF_MM_*.
Originally committed as revision 15770 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-03 18:08:00 +00:00
Loren Merritt
d46ac5bfde
mdct wrapper function to match fft
...
Originally committed as revision 14703 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 00:38:30 +00:00
Loren Merritt
46803f4f67
optimize imdct_half:
...
remove tmp buffer.
skip fft reinterleave pass, leaving data in a format more convenient for simd.
merge post-rotate with post-reorder.
Originally committed as revision 14700 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 00:33:34 +00:00
Loren Merritt
49c0dd754c
indent
...
Originally committed as revision 14699 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 00:27:21 +00:00
Loren Merritt
5d0ddd1a9f
split-radix FFT
...
c is 1.9x faster than previous c (on various x86 cpus), sse is 1.6x faster than previous sse.
Originally committed as revision 14698 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 00:26:58 +00:00
Loren Merritt
b9fa32082c
exploit mdct symmetry
...
2% faster vorbis on conroe, k8. 7% on celeron.
Originally committed as revision 14207 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 15:03:58 +00:00
Måns Rullgård
4f54a3b8b4
indentation
...
Originally committed as revision 12478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-17 19:22:31 +00:00
Måns Rullgård
844ea46aeb
clean up FFT SIMD selection
...
Originally committed as revision 12477 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-17 19:22:28 +00:00
Diego Biurrun
b78e7197a8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
...
and fix GPL/LGPL version mismatches.
Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Loren Merritt
ebbafcb454
sse implementation of imdct.
...
patch mostly by Zuxy Meng (zuxy dot meng at gmail dot com)
Originally committed as revision 6311 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-21 16:37:39 +00:00
Loren Merritt
652c59b967
use ff_fft_calc_3dn2 instead of sse on a K8.
...
1.5% faster vorbis.
Originally committed as revision 6024 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-19 02:42:20 +00:00
Loren Merritt
1e4ecf26f5
ff_fft_calc_3dn/3dn2/sse: convert intrinsics to inline asm.
...
2.5% faster fft, 0.5% faster vorbis.
Originally committed as revision 6023 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-18 23:53:49 +00:00
Loren Merritt
60ae06e77e
r5954 broke fft on cpus with 3dnow but without mm3dnow.h
...
Originally committed as revision 5974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-10 18:49:47 +00:00
Loren Merritt
bcfa3e58ee
3dnow2 implementation of imdct.
...
6% faster vorbis and wma.
Originally committed as revision 5954 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-08 04:01:04 +00:00
Benjamin Larsson
7943355485
ff_fft_init now double checks that the system has mm3dnow.h before
...
checking if the cpu can do 3dnow at all. This bug caused amd cpu's
without sse to not have a working fft function. Ie no wma, cook or
vorbis decoder.
Originally committed as revision 5570 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 02:05:35 +00:00
Zuxy Meng
82eb4b0f1b
3DNow! & Extended 3DNow! versions of FFT
...
Patch by Zuxy Meng, zuxy <<dot>> meng >>at<< gmail <<dot>> com
Minor non-functional diff-related fixes by me.
Originally committed as revision 5125 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-08 04:13:55 +00:00
Diego Biurrun
5509bffa88
Update licensing information: The FSF changed postal address.
...
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +00:00
Diego Biurrun
bb270c0896
COSMETICS: tabs --> spaces, some prettyprinting
...
Originally committed as revision 4764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 01:10:11 +00:00
Diego Biurrun
115329f160
COSMETICS: Remove all trailing whitespace.
...
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +00:00
Gildas Bazin
68951ecf0c
fft_*() renamed into ff_fft_*() patch by (Gildas Bazin <gbazin at altern dot org>)
...
Originally committed as revision 2882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-13 21:43:24 +00:00
Michael Niedermayer
983e3246b7
per file doxy
...
Originally committed as revision 1634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-03-06 11:32:04 +00:00
Michael Niedermayer
db40a39aba
AltiVec perf (take 2), plus a couple AltiVec functions by (Romain Dolbeau <dolbeau at irisa dot fr>)
...
Originally committed as revision 1464 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-16 21:54:55 +00:00
Romain Dolbeau
e629ab68a7
altivec jumbo patch by (Romain Dolbeau <dolbeaur at club-internet dot fr>)
...
Originally committed as revision 1448 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-11 20:51:03 +00:00
Fabrice Bellard
8d268a7d4c
fft altivec by Romain Dolbeau - simplified patch, test it on PPC with fft-test and wma decoding
...
Originally committed as revision 1417 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 18:15:48 +00:00
Fabrice Bellard
bbbb6d6fc3
enabled SSE fft on x86
...
Originally committed as revision 1413 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 17:45:24 +00:00
Fabrice Bellard
bb6f569072
new generic FFT/MDCT code for audio codecs
...
Originally committed as revision 1088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2002-10-28 00:34:08 +00:00