Zhou Xiaoyong
5b74ebe937
avcodec/mips: version 1 of vc1dsp optimizations for loongson mmi
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
8 years ago
Diego Biurrun
e4a94d8b36
h264chroma: Change type of stride parameters to ptrdiff_t
...
This avoids SIMD-optimized functions having to sign-extend their
stride argument manually to be able to do pointer arithmetic.
8 years ago
Diego Biurrun
2ec9fa5ec6
idct: Change type of array stride parameters to ptrdiff_t
...
ptrdiff_t is the correct type for array strides and similar.
8 years ago
Diego Biurrun
29c2d06d67
cosmetics: Drop empty comment lines
9 years ago
Michael Niedermayer
e3f7142306
avcodec/vc1dsp: add () to protect the arguments of the op* macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Ben Avison
adf8227cf4
vc-1: Add platform-specific start code search routine to VC1DSPContext.
...
Initialise VC1DSPContext for parser as well as for decoder.
Note, the VC-1 code doesn't actually use the function pointer yet.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Diego Biurrun
58e65e44f4
vc1dsp: Add wrappers for {avg|put}_vc1_mspel_mc00_c
...
This avoids invoking the wrapped functions with too many arguments.
11 years ago
Diego Biurrun
368f50359e
dsputil: Split off quarterpel bits into their own context
11 years ago
Ben Avison
9d8ecdd8ca
vc-1: Add platform-specific start code search routine to VC1DSPContext.
...
Initialise VC1DSPContext for parser as well as for decoder.
Note, the VC-1 code doesn't actually use the function pointer yet.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
319235c67c
vc1dsp: introduce cases for 8x8 and 16x16
...
This allows further unrolling the DSP implementation where possible.
x86 and ARM DSP modified by simply moving the multiple calls from vc1dec
to the DSP code. Decoding improvements should only occurs because of the
compiler actually able to unroll more.
Decoding time: ~8.80s -> 8.64s (ie around 2%)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
3dc6272bed
Remove a number of unnecessary dsputil.h #includes
11 years ago
Janne Grunau
71617884a2
aarch64: h264 chroma motion compensation NEON optimizations
...
Since RV40 and VC-1 use almost the same algorithm so optimizations for
those two decoders are easy to do and included.
11 years ago
Michael Niedermayer
6d98959c8a
vc1: Add avg_no_rnd_vc1_chroma_mc4_c()
...
Needed for proper interlaced support.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years ago
Luca Barbato
c798a6fedc
vc1: Factorize out chroma MC
11 years ago
Luca Barbato
a1f5164814
vc1dsp: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
11 years ago
Mason Carter
832e190632
vc1: arm: Add NEON assembly
...
For:
ff_vc1_inv_trans_{8,4}x{8,4}_{dc_,}neon
ff_put_pixels8x8_neon
ff_put_vc1_mspel_mc{0,1,2,3}{0,1,2,3}_neon (except for 00)
Based on ARM assembly code in libavcodec/arm by Rob Clark and Mans
Rullgard.
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years ago
Diego Biurrun
67e6a9f558
cosmetics: Place arch initialization calls in alphabetical order
12 years ago
Diego Biurrun
38282149b6
ppc: More consistent arch initialization
12 years ago
Michael Niedermayer
dd6e291e40
vc1dsp: add avg_no_rnd_vc1_chroma_mc4_c()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
019b378d90
vc1: fix int/ptrdiff_t mismatches
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Luca Barbato
a8b6015823
dsputil: convert remaining functions to use ptrdiff_t strides
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
12 years ago
Diego Biurrun
79dad2a932
dsputil: Separate h264chroma
12 years ago
Diego Biurrun
88bd7fdc82
Drop DCTELEM typedef
...
It does not help as an abstraction and adds dsputil dependencies.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years ago
Michael Niedermayer
075eaf8d6a
vc1dsp: fix the warning fix, make it work with --disable-asm
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
fceeac9847
vc1dsp: fix pointer type warnings
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Janne Grunau
7e522859fc
x86: vc1: call ff_vc1dsp_init_x86() under if (ARCH_X86)
12 years ago
Martin Storsjö
1d9c2dc89a
Don't include common.h from avutil.h
...
Signed-off-by: Martin Storsjö <martin@martin.st>
13 years ago
Michael Niedermayer
2278a3e5f7
vc1dsp: use av_assert2
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
bc92214e27
vc1dsp: mark put/avg_vc1_mspel_mc() always_inline
...
This ensures that these functions are inlined into the per-position
entry points, allowing constant propagation as needed for proper
optimisation.
18% faster VC1 decoding on Cortex-A9.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Ronald S. Bultje
c23acbaed4
Don't use ff_cropTbl[] for IDCT.
...
Results of IDCT can by far outreach the range of ff_cropTbl[], leading
to overreads and potentially crashes.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
13 years ago
Michael Niedermayer
32f0c65828
vc1: fix out of array reads in vc1_inv_trans_4x4_c()
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
80c702efeb
vc1: fix out of array reads in vc1_inv_trans_4x8_c()
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
af796ba4b8
vc1: fix out of array reads in vc1_inv_trans_8x4_c()
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
373211d828
Remove extraneous semicolons
...
These semicolons cause invalid empty top-level declarations.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Mashiat Sarker Shakkhar
cad16562c8
vc1dec: interlaced stream decoding support 3/3
...
Cosmetics: break some lines and reformat TODOs
Signed-off-by: Anton Khirnov <anton@khirnov.net>
13 years ago
Alberto Delmás
45ecda8554
Windows Media Image decoder (WMVP/WVP2)
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
14 years ago
Ronald S. Bultje
7d2e03afc8
vc1: make overlap filter for I-frames bit-exact.
14 years ago
Ronald S. Bultje
18b6a69ce9
Revert "VC1: merge idct8x8, coeff adjustments and put_pixels."
...
This reverts commit f8bed30d8b
. The reason
for this is that the overlap filter, which runs after IDCT, should run
on unclamped values, and thus IDCT and put_pixels() cannot be merged if
we want to attempt to be bitexact.
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Ronald S. Bultje
6a786b15c3
VC1: merge idct8x8, coeff adjustments and put_pixels.
...
Merging these functions allows merging some loops, which makes the
results (particularly after SIMD optimizations) much faster.
(cherry picked from commit f8bed30d8b
)
14 years ago
Ronald S. Bultje
f8bed30d8b
VC1: merge idct8x8, coeff adjustments and put_pixels.
...
Merging these functions allows merging some loops, which makes the
results (particularly after SIMD optimizations) much faster.
14 years ago
Ronald S. Bultje
9a1ced321b
dsputil: move VC1-specific stuff into VC1DSPContext.
...
(cherry picked from commit 12802ec060
)
14 years ago
Ronald S. Bultje
2739dc5d85
VC1: transpose IDCT 8x8 coeffs while reading.
...
(cherry picked from commit 1da6ea3954
)
14 years ago
Ronald S. Bultje
12802ec060
dsputil: move VC1-specific stuff into VC1DSPContext.
14 years ago
Ronald S. Bultje
1da6ea3954
VC1: transpose IDCT 8x8 coeffs while reading.
14 years ago
Måns Rullgård
3d1b1caa6b
Remove duplicate definitions of fullpel MC functions
...
This removes duplicated definitions of 8x8 and 16x16 fullpel MC
functions with various names reducing dsputil.o by 8k on x86_64.
Originally committed as revision 24933 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Måns Rullgård
8fbd4f51a8
Improve some uses of ff_cropTbl with constant offset
...
Originally committed as revision 23728 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
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
15 years ago
Måns Rullgård
4f602a0415
Move some VC1 dsp prototypes to dsputil.h; they are defined in dsputil.c
...
Also fix function definitions to match prototypes (missing const).
Originally committed as revision 22263 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Zuxy Meng
0752cd39d2
More av_cold for infrequently called functions.
...
Originally committed as revision 21179 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago