Daniel Kang
9bfa5363da
H.264: Add x86 assembly for 10-bit H.264 qpel functions.
...
Mainly ported from 8-bit H.264 qpel.
Some code ported from x264. LGPL ok by author.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.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
Ramiro Polla
153ca56b38
xmm_clobbers: list xmm registers first in clobber list
...
suncc does not like the leading commas inside the macro, but it has no problem
with trailing commas.
Originally committed as revision 25615 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ramiro Polla
51d592dbcb
h264dsp: add xmm registers to clobber list
...
Originally committed as revision 25604 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ramiro Polla
ac19f4a3e8
indent
...
Originally committed as revision 25598 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ramiro Polla
cae05859e1
h264dsp: merge some more asm blocks
...
Originally committed as revision 25597 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ramiro Polla
b32c9ca9a3
h264dsp: merge some asm blocks
...
Some code was initializing some xmm registers in one asm block and using them
in the following block, assuming they wouldn't be changed in between blocks.
Originally committed as revision 25568 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ronald S. Bultje
14bc1f2485
Split h264dsp_mmx.c (which was #included in dsputil_mmx.c) in h264_qpel_mmx.c,
...
still #included in dsputil_mmx.c and is part of DSPContext, and h264dsp_mmx.c,
which represents H264DSPContext and is now compiled on its own.
Originally committed as revision 25018 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ronald S. Bultje
de1c253bab
Split intra prediction initialization (i.e. assigning of function pointers)
...
into its own file, it doesn't belong in h264dsp_mmx.c (much less so in
dsputil_mmx.c).
Originally committed as revision 24990 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ronald S. Bultje
d0eb5a1174
Move H264 chroma MC from inline asm to yasm. This fixes VP3/5/6 and VC-1
...
fate failures on Win64.
Originally committed as revision 24989 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Ronald S. Bultje
7e7c4b6008
Put ff_ prefix on non-static {put_signed,put,add}_pixels_clamped_mmx()
...
functions.
Originally committed as revision 24987 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Måns Rullgård
c0ec9918b0
Remove global mm_flags variable
...
Originally committed as revision 24909 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Jason Garrett-Glaser
4a384de5b8
Split h264dsp and h264pred in configure.
...
Many H.264 derivatives, like RV40 and VP8, use the H.264 prediction functions
but not the weight/loopfilter functions.
This should reduce the size of builds with one of these derivatives but without
H.264 decoding itself.
Originally committed as revision 24741 to svn://svn.ffmpeg.org/ffmpeg/trunk
14 years ago
Eli Friedman
c12d6955e2
H.264: SSE2/SSSE3 weighted prediction asm
...
Patch by Eli Friedman <eli.friedman at gmail dot com>
Originally committed as revision 24702 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Jason Garrett-Glaser
17dc7c7a60
Fix h264/vp8 intra pred on Athlon XP
...
Whose idea was it to have a CPU that didn't SIGILL on an invalid instruction?
Originally committed as revision 23927 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Jason Garrett-Glaser
29e719377f
Add missing mm_support call toff_h264_pred_init_x86.
...
I'm not sure if this is supposed to be here, but it can't hurt.
Originally committed as revision 23885 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Jason Garrett-Glaser
bc14f04b2f
MMXEXT version of vp8 4x4 vertical pred
...
Originally committed as revision 23876 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Jason Garrett-Glaser
fb9927ad7d
Add mmx/mmxext/ssse3 4x4 TM intra pred functions for vp8
...
Originally committed as revision 23875 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Jason Garrett-Glaser
270a85d259
Fix some intra pred MMX functions that used MMXEXT instructions
...
Also add predict_4x4_dc MMXEXT function for vp8/h264.
Originally committed as revision 23873 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Baptiste Coudurier
50f70541d3
Change MMXEXT to MMX2, MMXEXT is deprecated
...
Originally committed as revision 23865 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Måns Rullgård
1f65b67c46
Fix x86 build with h264dsp disabled
...
Originally committed as revision 23844 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Carl Eugen Hoyos
96da2a6967
Cosmetics: Fix indentation.
...
Originally committed as revision 23785 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Jason Garrett-Glaser
4af8cdfc3f
16x16 and 8x8c x86 SIMD intra pred functions for VP8 and H.264
...
Originally committed as revision 23783 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Reimar Döffinger
1c71b5c89a
Replace more "m" constraints with MANGLE to fix compilation issues
...
with x86_32 gcc 4.4.4 and -fPIC.
Originally committed as revision 23082 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Reimar Döffinger
27eecec359
Convert two "m" constraints to MANGLE to fix compilation with some compilers.
...
Originally committed as revision 22760 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Måns Rullgård
84dc2d8afa
Remove DECLARE_ALIGNED_{8,16} macros
...
These macros are redundant. All uses are replaced with the generic
DECLARE_ALIGNED macro instead.
Originally committed as revision 22233 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Loren Merritt
900479bb74
optimize h264_loop_filter_strength_mmx2
...
244->160 cycles on core2
Originally committed as revision 21462 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Måns Rullgård
c67278098d
Move array specifiers outside DECLARE_ALIGNED() invocations
...
Originally committed as revision 21377 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
1f630b9717
Use two separate memory arguments since 8+() is invalid gas syntax
...
Originally committed as revision 21360 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
b4c2ada528
Attempt to fix asm compilation failure.
...
Only tested on gcc 4 & x86_64.
Originally committed as revision 21355 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
David Conrad
c4f2b6dce3
Use constant offsets for memory operands since gcc is unable to
...
This fixes gcc failing to fit 6 memory locations into 7 registers on x86-32
Originally committed as revision 21337 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
9ac4548ff7
Fix h264_loop_filter_strength_mmx2() so it works with b frames.
...
Originally committed as revision 21327 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
ebddd2e253
Remove -2 -> -1 remapping, its not needed anymore as we must remap all
...
references per LUT anyway.
Originally committed as revision 21323 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Ramiro Polla
74a841af8b
Replace more uses of __attribute__((aligned)) by DECLARE_ALIGNED.
...
Originally committed as revision 19089 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Alexander Strange
2b9969a945
H264: Fix out of bounds reads in SSSE3 MC
...
Reading above src[-2] isn't safe, so move loads and palignr ahead
3 pixels to load starting at the first pixel actually used.
Fixes issue941.
Originally committed as revision 18999 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
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
16 years ago
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
16 years ago
Baptiste Coudurier
353f87b8d4
fix typo in h264dsp_mmx (no effect currently as the function is not used), approved by Dark Shikari on IRC
...
Originally committed as revision 17046 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
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
16 years ago
Mathieu Velten
21ff7689da
Use H264 MMX chroma functions to accelerate RV40 decoding.
...
Patch by Mathieu Velten (matmaul A gmail)
Originally committed as revision 16419 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Jason Garrett-Glaser
37fed10087
Add x264 SSE2 iDCT functions to H.264 decoder.
...
Originally committed as revision 16409 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
Diego Biurrun
a6493a8fbd
Rename libavcodec/i386/ --> libavcodec/x86/.
...
It contains optimizations that are not specific to i386 and
libavutil uses this naming scheme already.
Originally committed as revision 16270 to svn://svn.ffmpeg.org/ffmpeg/trunk
16 years ago
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
16 years ago
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
16 years ago
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
17 years ago
Ramiro Polla
40d0e665d0
Do not misuse long as the size of a register in x86.
...
typedef x86_reg as the appropriate size and use it instead.
Originally committed as revision 13081 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago
Loren Merritt
ce53144bac
h264 chroma mc ssse3
...
width8: 180->92, width4: 78->63 cycles (core2)
Originally committed as revision 12661 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago
Loren Merritt
ec199cc94c
asm argument that might be in memory needs a size
...
Originally committed as revision 11890 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago
Loren Merritt
1d67b037f7
sse2 h264 motion compensation. not new code, just separate out the cases that didn't need ssse3.
...
Originally committed as revision 11877 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago
Loren Merritt
20d565be6d
put loop counter in a register if possible. makes some of the qpel functions 3% faster.
...
Originally committed as revision 11876 to svn://svn.ffmpeg.org/ffmpeg/trunk
17 years ago