Diego Biurrun
512f3ffe9b
dsputil: Split off HuffYUV encoding bits into their own context
...
Also shorten HuffYUV context member names to avoid clutter.
11 years ago
Diego Biurrun
0d439fbede
dsputil: Split off HuffYUV decoding bits into their own context
...
Also shorten HuffYUV context member names to avoid clutter.
11 years ago
James Almer
5863207086
x86/dsputilenc: use HADDD in ff_sse16_sse2
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
888dcd8675
h264_picture: Remove pointless dsputil.h #include
11 years ago
Diego Biurrun
f1df0a4c08
on2avc: Remove pointless dsputil.h #include
11 years ago
James Almer
e64e079ece
x86/dsputilenc: implement SSE2 version of diff_pixels
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
a0c5cd3475
avcodec/x86/dsputilenc: set the count of SSE registers correctly for get_pixels
...
Found-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
d35000c2dc
avcodec/g723_1: fix writing into input frame data and warning
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
86ae0da60c
x86: hpeldsp: propagate changes across codecs
...
Some codecs still use mmx versions, so have them use the versions
with newer instruction sets.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
b0d0e29ffb
avcodec/sgirledec: fix () in RBG323_TO_BGR8() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9f50d3b944
avcodec/rv34: Fix () in GET_PTS_DIFF() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
a45e6b7bc5
avcodec/psymodel: Fix () in AAC_CUTOFF() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
e5dc7439e3
avcodec/proresenc_anatoliy: Fix () in macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
a3950a90f6
Revert "x86: dsputilenc: convert ff_sse{8, 16}_mmx() to yasm"
...
This reverts commit ad733089b0
.
breaks with --disable-yasm
revert requested by: Christophe Gisquet <christophe.gisquet@gmail.com>
11 years ago
Michael Niedermayer
9babf13764
avcodec/msvideo1enc: Fix () in MKRGB555() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
eb718f4c53
avcodec/opus: Fix () in ROUND_MULL() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
d62a4707f9
avcodec/opus_celt: Fix () in CELT_PVQ_V macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
c163f5e601
avcodec/pngdec: fix () in OP_* macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Timothy Gu
ad733089b0
x86: dsputilenc: convert ff_sse{8, 16}_mmx() to yasm
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Clément Bœsch
657c603263
avcodec/webvttenc: do not use EOVERFLOW.
...
According to doc/errno.txt EOVERFLOW is not available everywhere. The
use of -1 is consistent with avcodec/srtenc.c.
11 years ago
Michael Niedermayer
cf7ff0146c
avcodec/mss4: Fix () in MKVAL() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
6e720c5c81
avcodec/mss34dsp: fix () in SOP* macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
fa160af08b
avcodec/mlpdec: fix () in MSB_MASK() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
f276bf303c
avcodec/ivi_dsp: add some missing () to macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
70f671c39e
avcodec/hevc: fix () in macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
0f45e643cc
avcodec/h264_slice: fix macro ()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
af62b42736
avcodec/h264: fix () in macros
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
97e6b5ee3a
avcodec/golomb-test: fix () in EXTEND() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
fa915d4193
avcodec/aac: fix () in IS_CODEBOOK_UNSIGNED macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Aman Gupta
4372fb7a57
avcodec/webvttenc: add webvtt encoder
...
Based off the srt encoder. The following features are unimplemented:
- fonts, colors, sizes
- alignment and positioning
The rest works well. For example, use ffmpeg to convert subtitles into the .vtt format:
ffmpeg -i input.srt output.vtt
Signed-off-by: Aman Gupta <ffmpeg@tmm1.net>
Signed-off-by: Clément Bœsch <u@pkh.me>
11 years ago
James Almer
d94e255dd1
x86/dsputilenc: make the SUM_ABS_DCTELEM macro more readable
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
46e3883519
avcodec/opusdec: check alignment, misalignment could lead to crashes with avx
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
61eea421b2
x86/dsputilenc: port sum_abs_dctelem functions to yasm
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
ddeb58b90c
avcodec/asvenc: dont use a negative global_quality
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9a7d332b92
avcodec/aacenc: dont use global quality if its negative
...
Some applications used a negative value as default for "not set"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
81aa0f4604
x86: hpeldsp: implement SSSE3 version of _xy2
...
Loading pb_1 rather than pw_8192 was benchmarked to be more efficient.
Loading of the 2 yields no advantage. Loading of one saves ~11 cycles.
decicycles count:
put8: 3223(mmx) -> 2387
avg8: 2863(mmxext) -> 2125
put16: 4356(sse2) -> 3553
avg16: 4481(sse2) -> 3513
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
9722a6a3f3
x86: hpeldsp: implement SSE2 put_pixels16_xy2
...
This is obviously equivalent to the avg version, without the avg.
3223(mmx) -> 2006(sse2)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
f0aca50e0b
x86: hpeldsp: implement SSE2 versions
...
Those are mostly used in codecs older than H.264, eg MPEG-2.
put16 versions:
mmx mmx2 sse2
x2: 1888 1185 552
y2: 1778 1092 510
avg16 xy2: 3509(mmx2) -> 2169(sse2)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
7538ad2248
x86/hevc_deblock: improve chroma functions register allocation
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
584327f22f
x86/dsputil: fix argument declaration in vector_clipf
...
Should fix fate failures in msvc x86_64
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
518cbf9b4a
x86/dsputil: fix VECTOR_CLIP_INT32 macro
...
The inline loop was incrementing and using the value of %%i
the wrong way.
Disassembly of ff_vector_clip_int32_sse2 before and after
this patch:
movdqa (%rdx),%xmm0 | movdqa (%rdx),%xmm0
movdqa 0x10(%rdx),%xmm1 | movdqa 0x10(%rdx),%xmm1
movdqa 0x20(%rdx),%xmm2 | movdqa 0x20(%rdx),%xmm2
movdqa 0x30(%rdx),%xmm3 | movdqa 0x30(%rdx),%xmm3
[...] |
movdqa %xmm0,(%rcx) | movdqa %xmm0,(%rcx)
movdqa %xmm1,0x10(%rcx) | movdqa %xmm1,0x10(%rcx)
movdqa %xmm2,0x20(%rcx) | movdqa %xmm2,0x20(%rcx)
movdqa %xmm3,0x30(%rcx) | movdqa %xmm3,0x30(%rcx)
movdqa (%rdx),%xmm0 | movdqa 0x40(%rdx),%xmm0
movdqa 0x20(%rdx),%xmm1 | movdqa 0x50(%rdx),%xmm1
movdqa 0x40(%rdx),%xmm2 | movdqa 0x60(%rdx),%xmm2
movdqa 0x60(%rdx),%xmm3 | movdqa 0x70(%rdx),%xmm3
[...] |
movdqa %xmm0,(%rcx) | movdqa %xmm0,0x40(%rcx)
movdqa %xmm1,0x20(%rcx) | movdqa %xmm1,0x50(%rcx)
movdqa %xmm2,0x40(%rcx) | movdqa %xmm2,0x60(%rcx)
movdqa %xmm3,0x60(%rcx) | movdqa %xmm3,0x70(%rcx)
add $0x80,%rdx | add $0x80,%rdx
add $0x80,%rcx | add $0x80,%rcx
Other versions were unaffected.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
6b88f22e89
avcodec/dcadec: dont use hex float, msvc doesnt support it
...
Found-by: nevcairiel
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9ccb5455ca
avcodec/dcadec: use a constant instead of assuming every compiler can optimize pow(2,-15)
...
Idea-by: nevcairiel and wm4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
6da06ef6bb
avcodec/dcadec: make dca_dmix_code() 650% faster
...
This effectively replaces the ldexpf() function call by a multiplication
with a constant.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
4e4dbb9983
dcadec: fix xxch_dmix_coeff and xxch_dmix_sf after merge
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vittorio Giovara
21f68c2489
avcodec: bump version after rotation api
...
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
11 years ago
Niels Möller
6b7b8585d7
dca: Convert dca_dmixtable to integers
...
Also include zero in the table, eliminating a special case in the
decoder.
Signed-off-by: Niels Möller <nisse@southpole.se>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
James Almer
6a4832caae
x86/diracdsp: mark all functions as yasm
...
No inline asm dirac code remains in the tree, so replace every relevant check.
This also moves all the dirac functions from dsputil_mmx.c to diracdsp_mmx.c
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
1d36defe94
x86/dsputil: port ff_vector_clipf_sse to yasm
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
c081ca851c
x86: hpeldsp: avg_pixels_xy2 for mmx2&3dnow
...
This is a port of the inline assembly of the mmx version to use the
pavg(us|)b instruction.
8 16
mmx 1498 4355
mmx2 1242 3509
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago