Reimar Döffinger
14b8607065
Add support for hard-coded MDCT-related ff_sine_windows tables.
...
Originally committed as revision 21108 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 13:28:04 +00:00
Loren Merritt
b1159ad928
refactor and optimize scalarproduct
...
29-105% faster apply_filter, 6-90% faster ape decoding on core2
(Any x86 other than core2 probably gets much less, since this is mostly due to ssse3 cachesplit avoidance and I haven't written the full gamut of other cachesplit modes.)
9-123% faster ape decoding on G4.
Originally committed as revision 20739 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-05 15:09:10 +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
Loren Merritt
e17ccf60fe
huffyuv: add some const qualifiers
...
Originally committed as revision 20290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 20:47:25 +00:00
Loren Merritt
2f77923d72
simd add_hfyu_left_prediction
...
2.2x faster than C on conroe, 3.6x on penryn.
4-6% faster huffyuv decoding if using left or plane mode and yuv
Originally committed as revision 20287 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 20:10:10 +00:00
Justin Ruggles
fde82ca7e4
Move autocorrelation function from flacenc.c to lpc.c. Also rename the
...
corresponding dsputil functions and remove their dependency on the FLAC
encoder.
Fixes Issue1486.
Originally committed as revision 20266 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-17 21:00:39 +00:00
Alexander Strange
2d4bbdecee
Huffyuv: Add missing const to src pointers in dsputil functions.
...
Originally committed as revision 20259 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-16 23:04:41 +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
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
Nathan Caldwell
73c6f59830
Move HuffYUV left prediction to dsputil.
...
Patch by Nathan Caldwell, saintdev gmail
Originally committed as revision 20179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-06 16:06:15 +00:00
Måns Rullgård
952e872198
Drop unused args from vector_fmul_add_add, simpify code, and rename
...
The src3 and step arguments to vector_fmul_add_add() are always zero
and one, respectively. This removes these arguments from the function,
simplifies the code accordingly, and renames the function to better
match the new operation.
Originally committed as revision 20061 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-27 16:51:54 +00:00
Måns Rullgård
53b572118e
Add some dsputil functions useful for AAC decoder
...
Originally committed as revision 19955 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-22 00:48:41 +00:00
Måns Rullgård
94274b82f6
Allow arch-specific mdct code to request interleaving of cos/sin tables
...
Originally committed as revision 19939 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-21 02:56:06 +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
Måns Rullgård
68336ea8d4
10l: fix ff_fft_init_arm() prototype
...
Originally committed as revision 19865 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-15 23:14:55 +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
Vitor Sessak
6776061b04
Add two more sizes to ff_sine_windows[] and also pad it with NULLs so
...
that FF_ELEMS(ff_sine_windows[x]) == 1 << x.
Fix issue 1384.
Originally committed as revision 19862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-15 16:18:16 +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
c55e5b5fee
ff_sine_windows table contains only constant data, too.
...
Originally committed as revision 19785 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-06 08:56:10 +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
Måns Rullgård
e78516c6d8
One declaration of mm_flags is enough
...
Originally committed as revision 19740 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-29 16:55:55 +00:00
Måns Rullgård
4e36a5b46f
Move declarations of some mmx functions to dsputil_mmx.h
...
Originally committed as revision 19739 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-29 16:55:50 +00:00
Måns Rullgård
5b1b014761
Move DECLARE_ALIGNED_8 definition next to DECLARE_ALIGNED_16
...
Originally committed as revision 19738 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-29 16:55:46 +00:00
Måns Rullgård
c4d6d318cf
Make DECLARE_ALIGNED_8 align to 8 bytes, never to 16
...
The DECLARE_ALIGNED_8 macro is defined to align to 16 bytes instead
the 8 suggested by the name on some CPUs. None of the uses of this
macro ever need 16-byte alignment, cases which once did having been
changed to always specify 16 bytes explicitly.
Originally committed as revision 19737 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-28 23:39:02 +00:00
Vitor Sessak
50e23ae9d3
Mark parameter src of vector_clipf() as const
...
Originally committed as revision 19729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-27 15:38:59 +00:00
Vitor Sessak
0a68cd876e
SSE optimized vector_clipf(). 10% faster TwinVQ decoding.
...
Originally committed as revision 19728 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-27 14:49:36 +00:00
Jason Garrett-Glaser
4f717c69ed
idct_dc for VC-1/WMV3 decoder; ~11% faster decoding overall.
...
Includes mmx2 asm for the various functions.
Note that the actual idct still does not have an x86 SIMD implemtation.
For wmv3 files using regular idct, the decoder just falls back to simple_idct,
since simple_idct_dc doesn't exist (yet).
Originally committed as revision 19204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-16 09:00:55 +00:00
Siarhei Siamashka
7d485f165f
Support for getting (i)MDCT output multiplied by a constant scaling factor.
...
Scaling (i)MDCT output has no runtime overhead and can be used to improve
performance of audio codecs. All the changes are only needed in
'ff_mdct_init' function and slow down initialization a bit.
Originally committed as revision 18855 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-16 14:17:08 +00:00
Ramiro Polla
13bd2044d3
mlp: Simplify adressing of state and coeffs arrays for both filters by making
...
the arrays sequential.
Originally committed as revision 18841 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-15 15:34:22 +00:00
Ramiro Polla
bf4f19dc65
mlpdec: Move MLP's filter_channel() to dsputils.
...
Originally committed as revision 18721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-30 12:30:05 +00:00
David Conrad
3992526b3c
Split VC1 loop filter into separate functions for h/v and size
...
Originally committed as revision 18521 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:22:17 +00:00
David Conrad
0e58865d6e
Move VC1 loop filter to DSPContext
...
Originally committed as revision 18520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:20:22 +00:00
David Conrad
8013da7364
VC1: add and use avg_no_rnd chroma MC functions
...
Originally committed as revision 18518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:56:10 +00:00
David Conrad
c374691b28
Rename put_no_rnd_h264_chroma* to reflect its usage in VC1 only
...
Originally committed as revision 18517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:55:39 +00:00
David Conrad
6cecd63005
VC1: Do qpel when needed for both MVs in a B frame
...
Originally committed as revision 18511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 19:26:33 +00:00
Alex Converse
184fcc60b7
Mark src constant in copy_block*().
...
Originally committed as revision 18506 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 04:07:35 +00:00
Roman Shaposhnik
3899eb2f65
Making the arrays accomodate an extra intra 8x8 cmp function
...
Originally committed as revision 17446 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-19 00:28:08 +00:00
Aurelien Jacobs
26f3ae828b
move vp6_filter_diag4() to a new vp6dsp.c file and use it throught dsputil
...
Originally committed as revision 17111 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-09 23:37:31 +00:00
Loren Merritt
3daa434a40
ff_add_hfyu_median_prediction_mmx2
...
overall ffvhuff decoding speedup: 28% on core2, 25% on k8.
Originally committed as revision 17059 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-08 17:45:30 +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
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
Diego Biurrun
6a5d31ac25
Fix build: Add intreadwrite.h and bswap.h #includes where necessary.
...
Originally committed as revision 16556 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 22:19:48 +00:00
Benjamin Larsson
336c2ca585
Add size that is needed for the wmapro codec
...
Originally committed as revision 16533 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 10:40:05 +00:00
Diego Biurrun
79cb09b2f7
consistency cosmetics: Rename POWERPC identifiers to PPC.
...
Originally committed as revision 16359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-27 11:33:26 +00:00
Michael Niedermayer
6a1846eb4a
Document new idct requirements.
...
Originally committed as revision 16237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 09:34:18 +00:00
Jason Garrett-Glaser
712ca84c21
Move filter_luma_intra into dsputil for later addition of asm.
...
Originally committed as revision 16228 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-19 00:44:51 +00:00
Michael Niedermayer
ac22385931
H.264 idct functions that include the chroma, inter luma and intra16 luma loops
...
thus avoiding the calling overhead.
New functions are not yet used.
Originally committed as revision 16206 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-18 02:36:48 +00:00
Måns Rullgård
a2fc0f6a6d
ARM: replace "armv4l" with "arm"
...
Originally committed as revision 16179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 00:54:54 +00:00
Loren Merritt
5fecfb7d58
clear_block mmx
...
Originally committed as revision 16045 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-10 21:35:17 +00:00
Kostya Shishkov
11c0f9eca1
enable RV40 decoder
...
Originally committed as revision 15968 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-01 06:40:36 +00:00
Kostya Shishkov
2d8a081511
RV40 MC functions
...
Originally committed as revision 15967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-01 06:36:22 +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
Diego Pettenò
be449fca79
Convert asm keyword into __asm__.
...
Neither the asm() nor the __asm__() keyword is part of the C99
standard, but while GCC accepts the former in C89 syntax, it is not
accepted in C99 unless GNU extensions are turned on (with -fasm). The
latter form is accepted in any syntax as an extension (without
requiring further command-line options).
Sun Studio C99 compiler also does not accept asm() while accepting
__asm__(), albeit reporting warnings that it's not valid C99 syntax.
Originally committed as revision 15627 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-16 13:34:09 +00:00
David Conrad
9971331dfb
Move VP3 loop filter to DSPContext
...
Originally committed as revision 15551 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 10:26:17 +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
Måns Rullgård
f1424cfd6d
ARM: set STRIDE_ALIGN and DECLARE_ALIGNED_8 to 16 for NEON
...
Originally committed as revision 14961 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-25 01:59:06 +00:00
Loren Merritt
7fadc32de4
document some dsp alignments
...
Originally committed as revision 14935 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 04:03:02 +00:00
Loren Merritt
2272e04aa7
document some dsp alignments
...
Originally committed as revision 14771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-15 00:14:07 +00:00
Robert Swain
69fc4da360
Add declarations for the sine tables used in wma.c (half window sizes: 128,
...
256, 512, 1024 and 2048) to mdct.c. Make them accessible via dsputil.h. Make
wma.c use these shared tables.
Originally committed as revision 14758 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-14 14:40:16 +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
ac2e556456
simd downmix
...
13% faster ac3 if downmixing
Originally committed as revision 14742 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 23:33:48 +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
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
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
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
8a37920c9e
r14205 broke vorbis float_to_int on ppc
...
Originally committed as revision 14466 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-29 14:17:13 +00:00
Michael Niedermayer
4f20b45fbe
Fix h264_loop_filter_strength_mmx2() so it works with PAFF.
...
fixed at least:
CVFI1_Sony_D.jsv
CVFI1_SVA_C.264
MR6_BT_B.h264
Originally committed as revision 14310 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-19 21:53:54 +00:00
Loren Merritt
5eb0f2a425
float_to_int16_interleave: change src to an array of pointers instead of assuming it's contiguous.
...
this has no immediate effect, but will allow it to be used in more codecs.
Originally committed as revision 14252 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-16 00:50:12 +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
Loren Merritt
f27e1d645e
simplify vorbis windowing
...
Originally committed as revision 14205 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 14:56:01 +00:00
Kostya Shishkov
bb68f8a2b6
Monkey's Audio decoder vector functions work on input with length
...
a multiple of 16. Reflect that fact in the documentation for them.
Originally committed as revision 14148 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-10 06:15:13 +00:00
Michael Niedermayer
560fa9bf51
Fix x86-64
...
Originally committed as revision 14103 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-07 21:04:29 +00:00
Kostya Shishkov
88c0536a42
Add several vector functions used by Monkey's Audio decoder to dsputil
...
Originally committed as revision 14081 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-06 06:06:55 +00:00
Alexander Strange
f67a10cd0c
Define mm_flags/support to be 0 on architectures where they don't exist.
...
Make sure we don't try to set them if that's the case.
This lets dct-test and fft-test build with --disable-mmx on x86, but not yet on ARM.
Originally committed as revision 13957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-24 23:51:17 +00:00
Robert Swain
9146e4d61c
Add generic ff_sine_window_init function and implement in codecs appropriately
...
Originally committed as revision 13888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-22 15:12:27 +00:00
Alexander Strange
0e956ba277
Add a new IDCT permutation, used in xvid_sse2 and possibly future similar IDCTs.
...
Originally committed as revision 12842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-16 01:34:55 +00:00
Diego Biurrun
2cab640129
typo fixes
...
Originally committed as revision 12428 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-12 23:58:46 +00:00
Diego Biurrun
7ce6892373
misc spelling fixes
...
Originally committed as revision 12410 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-10 18:42:09 +00:00
Aurelien Jacobs
cbcd6c8ca9
move EDGE_WIDTH definition allong with draw_edges where it belongs
...
Originally committed as revision 12322 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-05 00:38:14 +00:00
Aurelien Jacobs
288a44fb7a
move ff_emulated_edge_mc() to dsputil
...
Originally committed as revision 12318 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-04 23:10:47 +00:00
Aurelien Jacobs
49c35f16fc
Fix compilation on powerpc.
...
DECLARE_ALIGNED_8 is not defined at that point, but this code is powerpc
only, so it's really equivalent to DECLARE_ALIGNED(16...
Originally committed as revision 12313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-04 18:35:12 +00:00
Aurelien Jacobs
4c79b95c32
move ff_init_scantable() into dsputil
...
Originally committed as revision 12311 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-04 10:26:56 +00:00
Aurelien Jacobs
5a6a9e78ab
move draw_edges() into dsputil
...
Originally committed as revision 12309 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-04 00:07:41 +00:00
Reimar Döffinger
78d3d94f14
__asm __volatile -> asm volatile, improves code consistency and works
...
(as far as that is possible) with the Sun C compiler.
Originally committed as revision 12188 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-24 14:46:22 +00:00
Loren Merritt
4a9ca0a279
simd and unroll png_filter_row
...
cycles per 1000 pixels on core2:
left: 9211->5170
top: 9283->2138
avg: 12215->7611
paeth: 64024->17360
overall rgb png decoding speed: +45%
overall greyscale png decoding speed: +6%
Originally committed as revision 12164 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-21 07:10:46 +00:00
Måns Rullgård
5c319d3334
clean up definition of DECLARE_ALIGNED_8 and STRIDE_ALIGN
...
Originally committed as revision 12126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-16 19:18:30 +00:00
Michael Niedermayer
96711ecff9
const src for bswap
...
Originally committed as revision 11732 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-01 13:49:15 +00:00
Robert Swain
3ed546fe52
Add variable alpha and size of half window for Kaiser-Bessel Derived window
...
generation. Hard code Bessel I0 approximation iterations to 50.
See thread for discussion:
[FFmpeg-devel] [PATCH] Move Kaiser-Bessel Derived window to mdct.c
Started on the 2008/01/10
Originally committed as revision 11520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-13 11:02:08 +00:00
Robert Swain
4eb7a735cb
Make the Kaiser-Bessel window generator a common function
...
Patch by Robert Swain, robert d swain a gmail d com
Originally committed as revision 11514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-12 11:11:19 +00:00
Diego Biurrun
9fbd14acb8
Fix typo in macro name: WARPER8_16_SQ --> WRAPPER8_16_SQ.
...
Originally committed as revision 11296 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-21 12:38:41 +00:00
Kostya Shishkov
d2e45f33a4
Switch VC-1 decoder to output decoded residual immediately.
...
Originally committed as revision 11188 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-08 10:41:18 +00:00
Diego Biurrun
8a43317e66
cosmetics: Fix spacial --> spatial typo in function names.
...
Originally committed as revision 10993 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-10 12:24:02 +00:00
Michael Niedermayer
9abc7e0fdc
intrax8 decoder patch by "someone"
...
Originally committed as revision 10971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-09 21:37:48 +00:00
Diego Biurrun
5b21bdabe4
Add FFMPEG_ prefix to all multiple inclusion guards.
...
Originally committed as revision 10765 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-17 09:37:46 +00:00
Luca Barbato
89523beea4
Sanitize altivec code so it can be built with runtime check properly
...
Originally committed as revision 10640 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-02 11:39:32 +00:00
Loren Merritt
6810b93a81
sse2 version of compute_autocorr().
...
4x faster than c (somehow, even though doubles only allow 2x simd).
overal flac encoding: 15-50% faster on core2, 4-11% on k8, 3-13% on p4.
Originally committed as revision 10621 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-29 22:31:18 +00:00
Panagiotis Issaris
9846cbdb13
cosmetics: typos
...
Originally committed as revision 10602 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-27 11:29:21 +00:00
Diego Biurrun
8b505fc689
VIS-specific code should be enabled conditional to HAVE_VIS, not ARCH_SPARC.
...
Originally committed as revision 10559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-23 21:59:09 +00:00
Diego Biurrun
a41f4eacd6
Do not wrongly mark Apple gcc workarounds as being specific to Darwin.
...
Originally committed as revision 10239 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 22:06:40 +00:00
Michael Niedermayer
d593e32983
use 16bit IDWT (a SIMD implementation of it should be >2x faster then with
...
the old 32bit code)
disable mmx/sse2 optimizations as they need a rewrite now
Originally committed as revision 10218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-25 03:00:51 +00:00
Diego Biurrun
9d16f87ffd
Rename CONFIG_DARWIN to SYS_DARWIN, it is not configurable (in FFmpeg).
...
Originally committed as revision 10190 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-22 22:46:39 +00:00
Roman Shaposhnik
905694d96e
* renaming (ST|LD)(16|32|64) -> AV_(R|W)N(16|32|64)
...
Originally committed as revision 10023 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-09 17:01:15 +00:00
Ivan Kalvachev
0ac9a875d4
revert commit 9603
...
Originally committed as revision 9605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-11 23:21:13 +00:00
Ivan Kalvachev
ddeaf723c5
Integrate reference mpeg IDCT into dsputil.
...
Originally committed as revision 9603 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-11 22:05:43 +00:00
Måns Rullgård
a00177a952
make arguments to ssd_int8_vs_int16() const
...
Originally committed as revision 9548 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-08 23:15:00 +00:00
Måns Rullgård
a1bee08046
move dsputil_init_foo() out from #ifdef
...
Originally committed as revision 9330 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-16 10:44:46 +00:00
Diego Biurrun
755bfeabcc
misc spelling fixes
...
Originally committed as revision 9289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 09:29:25 +00:00
Alex Beregszaszi
43c7c7c7cf
use DECLARE_ALIGNED from mem.h (which is included through common.h)
...
Originally committed as revision 9015 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-13 14:01:15 +00:00
Loren Merritt
1edbfe1994
factor sum_abs_dctelem out of dct_sad, and simd it.
...
sum_abs_dctelem_* alone:
core2: c=186 mmx2=39 sse2=21 ssse3=13 (cycles)
k8: c=163 mmx2=33 sse2=31
p4: c=370 mmx2=60 sse2=60
dct_sad including sum_abs_dctelem_*:
core2: c=405 mmx2=258 sse2=240 ssse3=232
k8: c=624 mmx2=394 sse2=392
p4: c=849 mmx2=556 sse2=556
Originally committed as revision 9001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-12 02:41:25 +00:00
Diego Biurrun
2029f312e8
Remove redundant #inclusion of common.h, avcodec.h already #includes it.
...
Originally committed as revision 8967 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-10 09:00:44 +00:00
Luca Barbato
30f1505380
Typos in comments
...
Originally committed as revision 8561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-30 20:56:32 +00:00
Loren Merritt
5900637219
mmx 16-bit ssd. 2.3x faster svq1 encoding.
...
Originally committed as revision 8559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-30 19:15:31 +00:00
Panagiotis Issaris
9dd6c80453
Add the const specifier as needed to reduce the number of warnings.
...
Originally committed as revision 7764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-30 10:31:34 +00:00
Guillaume Poirier
5a5c770d5a
Add SSSE3 (Core2 aka Conroe/Merom/Woodcrester new instructions) detection
...
Originally committed as revision 7332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-18 22:43:09 +00:00
Michael Niedermayer
6dc7d5da70
ff_check_alignment to warn the user about a missaligned stack
...
Originally committed as revision 7249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-07 18:33:00 +00:00
Panagiotis Issaris
f1862127f5
Added entry for H.264 DCT to the DSP context.
...
Originally committed as revision 7247 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-07 16:09:33 +00:00
Panagiotis Issaris
ea9f5d6f76
Add comment denoting group of H.264 functions
...
Originally committed as revision 7227 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-05 21:57:31 +00:00
Reimar Döffinger
cf1e119bb2
Move BE_*/LE_*/ST*/LD* macros to a common place. Some further
...
optimization/cleanup would be desirable (e.g. LE_* and LD*
should be the same on x86).
Originally committed as revision 7218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-03 16:35:30 +00:00
Brian Foley
49cef7443a
Move copy_block* functions to dsp dsputil.h
...
Patch by Brian Foley % bfoley A compsoc P nuigalway P ie %
Original thread:
Date: Nov 26, 2006 6:44 PM
Subject: Re: [Ffmpeg-devel] [PATCH] put_mpeg4_qpel16_h_lowpass altivec, take 2
Originally committed as revision 7172 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-26 18:25:07 +00:00
Kostya Shishkov
61f5b14a8e
Correct rounding values in overlap filtering
...
Originally committed as revision 7171 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-26 04:57:31 +00:00
Måns Rullgård
486497e07b
revert bad checkin
...
Originally committed as revision 7044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-14 03:18:09 +00:00
Måns Rullgård
be6ed6fff4
move some CFLAGS settings away from config.* writing section
...
Originally committed as revision 7043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-14 03:12:29 +00:00
Måns Rullgård
1d50395746
rename squareTbl -> ff_squareTbl
...
Originally committed as revision 6995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 21:48:04 +00:00
Måns Rullgård
55fde95e3b
rename cropTbl -> ff_cropTbl
...
Originally committed as revision 6992 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 20:08:09 +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
2833fc4646
approximate qpel functions: sacrifice some quality for some decoding speed. enabled on B-frames with -lavdopts fast.
...
Originally committed as revision 6412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-01 21:25:17 +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
Michael Benjamin
5ca030fed4
ADI Blackfin optimizations
...
patch by Michael Benjamin, neuroptik gmail com
Originally committed as revision 6282 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-16 22:26:09 +00:00
Kostya Shishkov
6243da0d50
Drop put_vc1_qpel_pixels_tab as they won't be needed anymore.
...
Originally committed as revision 6152 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-02 04:58:51 +00:00
Kostya Shishkov
e34350a376
New function for chroma MC (will be used in VC-1)
...
Originally committed as revision 6150 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-02 04:52:00 +00:00
Luca Barbato
9814587500
Align the input buffer in ffplay, introduce a public macro for aligned declarations
...
Update the avcodec_decode_audio and the float_to_int16 descriptions accordingly
Originally committed as revision 6147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-31 19:14:00 +00:00
Kostya Shishkov
74691b7bcb
New qpel MC functions conforming to VC-1 standard.
...
Existing DSPUtil functions cause chroma artifacts on some files.
Originally committed as revision 6139 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-31 04:44:54 +00:00
Loren Merritt
3e20143ee7
mmx implementation of deblocking strength decision.
...
2-3% faster h264.
Originally committed as revision 6113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-28 09:33:01 +00:00
Loren Merritt
069720565c
vorbis simd tweaks
...
Originally committed as revision 5983 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-11 18:19:37 +00:00
Loren Merritt
eb4825b5d4
sse and 3dnow implementations of float->int conversion and mdct windowing.
...
15% faster vorbis.
Originally committed as revision 5975 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-10 19:06:25 +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
Loren Merritt
2dac4acfc0
sse & sse2 implementations of vorbis channel coupling.
...
9% faster vorbis (on a K8).
Originally committed as revision 5898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-08-03 03:18:47 +00:00
Kostya Shishkov
64db55aedb
New functions in DSPContext for VC-1 decoding
...
Originally committed as revision 5862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-30 03:45:02 +00:00
Michael Niedermayer
b482e2d12f
CAVS decoder by (Stefan Gehrer stefan.gehrer gmx.de)
...
Originally committed as revision 5590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-03 00:16:45 +00:00
Zuxy Meng
392f6da897
Remove unused and unsupported Cyrix's "Extended MMX",
...
Add SSE3 support.
Patch by Zuxy Meng < zuxy POIS meng AH gmail POIS com >
Original thread:
04/26/06 13:13:
[Ffmpeg-devel] [PATCH] Bug fix, SSE3 support in i386/cputest.c and dsputil.h
Originally committed as revision 5326 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-28 07:46:13 +00:00
Loren Merritt
703c8195a8
mmx implementation of 3-point GMC. (5x faster than C)
...
Originally committed as revision 5265 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-04 09:23:45 +00:00
Michael Niedermayer
54009d4295
remove mpegvideo.c img resample dependancy
...
Originally committed as revision 5258 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-31 20:43:37 +00:00