Commit Graph

29 Commits

Author SHA1 Message Date
Muhammad Faiz
c8305079da avcodec/rdft: reorder calculation
old:
 165188 decicycles in  rdft,   65536 runs,      0 skips
 165865 decicycles in irdft,   65536 runs,      0 skips
new:
 142487 decicycles in  rdft,   65536 runs,      0 skips
 141498 decicycles in irdft,   65536 runs,      0 skips

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2017-07-26 06:13:05 +07:00
Muhammad Faiz
0780ad9c68 avcodec/rdft: remove sintable
It is redundant with costable. The first half of sintable is
identical with the second half of costable. The second half
of sintable is negative value of the first half of sintable.

The computation is changed to handle sign of sin values, in
C code and ARM assembly code.

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2017-07-11 13:22:02 +07:00
Michael Niedermayer
c93602ae5b avcodec/rdft: Use more specific error codes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-06-05 04:05:57 +02:00
Michael Niedermayer
73aeb27cfe Merge commit '096a1d5b46391f65dfd0bee6292e9962f53bd7c8'
* commit '096a1d5b46391f65dfd0bee6292e9962f53bd7c8':
  rdft: Move some variables into a separate block

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-05 19:16:15 +02:00
Diego Biurrun
096a1d5b46 rdft: Move some variables into a separate block
This avoids an unused variable warning with hardcoded tables.
2014-09-05 13:55:03 +02:00
Michael Niedermayer
04fa818779 Merge commit '088f38a4f9f54bb923405c67c9e72d96d90aa284'
* commit '088f38a4f9f54bb923405c67c9e72d96d90aa284':
  avcodec: Drop unnecessary ff_ name prefixes from static functions

Conflicts:
	libavcodec/ass.c
	libavcodec/h264_parser.c
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-01 18:16:32 +02:00
Diego Biurrun
088f38a4f9 avcodec: Drop unnecessary ff_ name prefixes from static functions 2013-04-30 16:02:02 +02:00
Michael Niedermayer
d4a50a2100 Merge remote-tracking branch 'newdev/master'
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-21 03:33:28 +01:00
Mans Rullgard
0aded9484d Move dct and rdft definitions to separate files
This leaves fft.h with only the core FFT and MDCT definitions
thus making it more managable.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-20 17:15:33 +00:00
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>
2011-03-19 19:49:18 +00: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
Diego Elio Pettenò
97c5b0fa95 Make ff_sin_tabs constant to rdft.c
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
(cherry picked from commit d625a32d6b)
2011-01-26 03:43:32 +01:00
Diego Elio Pettenò
d625a32d6b Make ff_sin_tabs constant to rdft.c
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-25 21:48:03 +01: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
Måns Rullgård
a8bb9ea532 ARM: NEON optimised RDFT
Originally committed as revision 22641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-23 03:35:02 +00:00
Måns Rullgård
1366f05978 rdft: reorder functions to avoid static prototype
Originally committed as revision 22610 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-20 21:27:06 +00:00
Måns Rullgård
2881c83127 Call rdft by function pointer
Call the RDFT by a function pointer like other FFT related transforms.
This makes instruction set optimized versions possible.

Based on patch by Alex Converse.

Originally committed as revision 22609 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-20 21:27:03 +00:00
Måns Rullgård
2ed6f39944 Replace many includes of libavutil/common.h with what is actually needed
This reduces the number of false dependencies on header files and
speeds up compilation.

Originally committed as revision 22407 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 17:39:19 +00:00
Måns Rullgård
41ea18fb0d Give RDFT types more meaningful names
Originally committed as revision 22290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-07 21:47:44 +00:00
Måns Rullgård
da0ac0ee64 Make some functions static
These functions are not used outside their respective files, and they
lack a prototype in a header.

Originally committed as revision 22259 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:36:41 +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
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
75df2edbb9 Add support for hardcoded ff_sin_* tables.
Originally committed as revision 20244 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-15 18:04:55 +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
aafd659518 Do not initialize ff_cos_* tables again in rdft_init, they are already
initialized by ff_fft_init and using different code can result in slightly
different values, in addition it crashes when the tables are hardcoded.
On amd64 this slightly changes qdm2 output.

Originally committed as revision 20237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-15 11:50:32 +00:00
Reimar Döffinger
f470fff323 The pointers in ff_sin_tabs themselves are constant, so mark them accordingly.
Originally committed as revision 19783 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-06 08:50:20 +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