James Almer
209f50e16b
avcodec/synth_filter: split off remaining code from dcadec files
...
Signed-off-by: James Almer <jamrial@gmail.com>
2016-01-25 14:57:38 -03:00
Hendrik Leppkes
d03da3e240
Merge commit '2008f76054906e9ff6bf744800af0e5a5bfe61be'
...
* commit '2008f76054906e9ff6bf744800af0e5a5bfe61be':
dca: remove unused decode_hf function and quant_d tables
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 13:17:48 +01:00
Hendrik Leppkes
e23c3a13e3
Merge commit '90b1b9350c0a97c4065ae9054b83e57f48a0de1f'
...
* commit '90b1b9350c0a97c4065ae9054b83e57f48a0de1f':
arm: add ff_int32_to_float_fmul_array8_neon
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 11:21:36 +01:00
Hendrik Leppkes
e754c8e8ca
Merge commit 'e2710e790c09e49e86baa58c6063af0097cc8cb0'
...
* commit 'e2710e790c09e49e86baa58c6063af0097cc8cb0':
arm: add a cpu flag for the VFPv2 vector mode
Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-02 11:01:29 +01:00
Alexandra Hájková
2008f76054
dca: remove unused decode_hf function and quant_d tables
...
They were superseded with their integer equivalents. Rename integer
decode_hf to decode_hf.
2015-12-24 13:58:18 +01:00
Janne Grunau
90b1b9350c
arm: add ff_int32_to_float_fmul_array8_neon
...
Quite a bit faster than int32_to_float_fmul_array8_c calling
ff_int32_to_float_fmul_scalar_neon through FmtConvertContext.
Number of cycles per int32_to_float_fmul_array8 call while decoding
padded.dts on exynos5422:
before after change
cortex-a7: 1270 951 -25%
cortex-a15: 434 285 -34%
checkasm --bench cycle counts: cortex-a15 cortex-a7
int32_to_float_fmul_array8_c: 1730.4 4384.5
int32_to_float_fmul_array8_neon_c: 571.5 1694.3
int32_to_float_fmul_array8_neon: 374.0 1448.8
Interesting are the differences between
int32_to_float_fmul_array8_neon_c and int32_to_float_fmul_array8_neon.
The former is current behaviour of calling
ff_int32_to_float_fmul_scalar_neon repeatedly from the c function,
The raw numbers differ since checkasm uses different lengths than the
dca decoder.
2015-12-14 16:45:02 +01:00
Janne Grunau
e2710e790c
arm: add a cpu flag for the VFPv2 vector mode
...
The vector mode was deprecated in ARMv7-A/VFPv3 and various cpu
implementations do not support it in hardware. Vector mode code will
depending the OS either be emulated in software or result in an illegal
instruction on cpus which does not support it. This was not really
problem in practice since NEON implementations of the same functions are
preferred. It will however become a problem for checkasm which tests
every cpu flag separately.
Since this is a cpu feature newer cpu do not support anymore the
behaviour of this flag differs from the other flags. It can be only
activated by runtime cpu feature selection.
2015-12-14 16:42:35 +01:00
Christophe Gisquet
f827a17005
blockdsp: reindent after parameter removal
...
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-03 23:34:56 +02:00
Christophe Gisquet
562ba4a827
blockdsp: remove high bitdepth parameter
...
It is only (mis-)used to set the dsp fucntions clear_block(s). But
these functions always work on 16bits-wide elements, which make
the parameter useless and actually harmful, as it causes all content
on more than 8-bits to not use accelerated functions.
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-02 04:38:40 +02:00
Michael Niedermayer
94d68a41fa
Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'
...
* commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615':
lavc: AV-prefix all codec flags
Conflicts:
doc/examples/muxing.c
ffmpeg.c
ffmpeg_opt.c
ffplay.c
libavcodec/aacdec.c
libavcodec/aacenc.c
libavcodec/ac3dec.c
libavcodec/ac3enc_float.c
libavcodec/atrac1.c
libavcodec/atrac3.c
libavcodec/atrac3plusdec.c
libavcodec/dcadec.c
libavcodec/ffv1enc.c
libavcodec/h264.c
libavcodec/h264_loopfilter.c
libavcodec/h264_mb.c
libavcodec/imc.c
libavcodec/libmp3lame.c
libavcodec/libtheoraenc.c
libavcodec/libtwolame.c
libavcodec/libvpxenc.c
libavcodec/libxavs.c
libavcodec/libxvid.c
libavcodec/mpeg12dec.c
libavcodec/mpeg12enc.c
libavcodec/mpegaudiodec_template.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/mpegvideo_motion.c
libavcodec/nellymoserdec.c
libavcodec/nellymoserenc.c
libavcodec/nvenc.c
libavcodec/on2avc.c
libavcodec/options_table.h
libavcodec/opus_celt.c
libavcodec/pngenc.c
libavcodec/ra288.c
libavcodec/ratecontrol.c
libavcodec/twinvq.c
libavcodec/vc1_block.c
libavcodec/vc1_loopfilter.c
libavcodec/vc1_mc.c
libavcodec/vc1dec.c
libavcodec/vorbisdec.c
libavcodec/vp3.c
libavcodec/wma.c
libavcodec/wmaprodec.c
libavcodec/x86/hpeldsp_init.c
libavcodec/x86/me_cmp_init.c
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27 22:10:35 +02:00
Janne Grunau
9ed6f9a17c
arm: use a local label instead of the function symbol in ff_prefetch_arm
...
Avoids a relocation which might end out of range for thumb2.
Reported-By: Ludovic Fauvet <etix@videolan.org>
Bug-Id: https://bugs.webkit.org/show_bug.cgi?id=137022
CC: libav-stable@libav.org
2015-07-20 23:10:29 +02:00
Michael Niedermayer
c0894e6288
Merge commit '256ef19844892c6cf8e0386e3287bae970ec6320'
...
* commit '256ef19844892c6cf8e0386e3287bae970ec6320':
h264: arm: use intra pred8x8 functions only for chroma_format_idc <= 1
Conflicts:
libavcodec/arm/h264pred_init_arm.c
See: 565cabf5c8
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-18 02:13:22 +02:00
Janne Grunau
256ef19844
h264: arm: use intra pred8x8 functions only for chroma_format_idc <= 1
2015-07-18 00:28:49 +02:00
Michael Niedermayer
c7c33ab721
Merge commit 'f5ee23004d1177ca6dd99b92cb4ff4b94b2eae09'
...
* commit 'f5ee23004d1177ca6dd99b92cb4ff4b94b2eae09':
configure: Factor out g722dsp module
Conflicts:
configure
libavcodec/arm/Makefile
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-17 23:04:47 +02:00
Michael Niedermayer
115a9b5091
Merge commit 'd42191c78befc1983f23b1899b2dda513b72f1ed'
...
* commit 'd42191c78befc1983f23b1899b2dda513b72f1ed':
configure: Factor out vp8dsp module
Conflicts:
configure
libavcodec/Makefile
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-17 22:45:34 +02:00
Michael Niedermayer
fd29dd432c
Merge commit '5cb4bdb2a03c3643f8f1e7d21d7094e61e0a4418'
...
* commit '5cb4bdb2a03c3643f8f1e7d21d7094e61e0a4418':
configure: Factor out rv34dsp module
Conflicts:
libavcodec/Makefile
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-17 22:21:36 +02:00
Michael Niedermayer
948a15195c
Merge commit 'b075869bc1e1aadea0a8dc819ebfb758adb9e3d0'
...
* commit 'b075869bc1e1aadea0a8dc819ebfb758adb9e3d0':
configure: Factor out flacdsp module
Conflicts:
configure
libavcodec/Makefile
libavcodec/arm/Makefile
Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-17 21:42:14 +02:00
Vittorio Giovara
f5ee23004d
configure: Factor out g722dsp module
2015-07-17 18:46:24 +01:00
Vittorio Giovara
d42191c78b
configure: Factor out vp8dsp module
2015-07-17 18:46:24 +01:00
Vittorio Giovara
5cb4bdb2a0
configure: Factor out rv34dsp module
2015-07-17 18:46:24 +01:00
Vittorio Giovara
b075869bc1
configure: Factor out flacdsp module
2015-07-17 18:46:23 +01:00
Carl Eugen Hoyos
e609cfd697
lavc/flac: Fix encoding and decoding with high lpc.
...
Based on an analysis by trac user lvqcl.
Fixes ticket #4421 , reported by Chase Walker.
2015-05-17 02:08:58 +02:00
Michael Niedermayer
47aee6f047
avcodec/arm/flacdsp_init_arm: Put CONFIG_FLAC_DECODER first in if()
...
This is more consistent
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-26 15:41:27 +01:00
James Almer
d5addf1555
hevcdsp: fix compilation for arm and aarch64
...
Also add av_cold to ff_hevcdsp_init_arm.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-12 20:01:01 +01:00
Michael Niedermayer
7fce8c752d
Merge commit '71f1ad37d858b810b71a4af1c25771beaa50b27b'
...
* commit '71f1ad37d858b810b71a4af1c25771beaa50b27b':
lavc: do not compile fmtconvert unconditionally
Conflicts:
configure
libavcodec/ppc/Makefile
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-01 00:06:42 +01:00
Michael Niedermayer
5c17377e28
Merge commit 'd74a8cb7e42f703be5796eeb485f06af710ae8ca'
...
* commit 'd74a8cb7e42f703be5796eeb485f06af710ae8ca':
fmtconvert: drop unused functions
Conflicts:
libavcodec/arm/fmtconvert_vfp_armv6.S
libavcodec/x86/fmtconvert.asm
libavcodec/x86/fmtconvert_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-28 23:58:29 +01:00
Anton Khirnov
71f1ad37d8
lavc: do not compile fmtconvert unconditionally
...
Only ac3dec and dcadec use it.
2015-02-28 21:51:24 +01:00
Anton Khirnov
d74a8cb7e4
fmtconvert: drop unused functions
2015-02-28 21:51:24 +01:00
Seppo Tomperi
63ca0fe828
avcodec/hevcdsp: ARM NEON optimized qpel functions
...
uses comma as macro parameter separator
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-25 18:39:51 +01:00
Michael Niedermayer
390c57781f
avcodec/arm/hevcdsp_idct_neon: drop ".code 32"
...
gas-preprocessor and armasm fail otherwise
Tested-by: Timotius Margo
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-25 02:30:35 +01:00
Seppo Tomperi
e40e446efd
hevcdsp: HEVC deblocking ARM NEON register clobber fix
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-16 13:27:41 +01:00
Michael Niedermayer
e86f754b1c
Merge commit '702458538d4e52809bcef460d39baabf061b16b5'
...
* commit '702458538d4e52809bcef460d39baabf061b16b5':
g722: Add ARM NEON implementation for g722_apply_qmf()
Conflicts:
libavcodec/arm/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-16 02:16:29 +01:00
Peter Meerwald
702458538d
g722: Add ARM NEON implementation for g722_apply_qmf()
...
Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-15 22:47:21 +02:00
Michael Niedermayer
cab6302534
avcodec/arm/videodsp_armv5te: Fix linking failure with "g++ -shared -D__STDC_CONSTANT_MACROS -o test.so ... libavcodec.a"
...
Tested-by: Andreas Haupt
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-12 16:35:29 +01:00
Seppo Tomperi
03cecf45c1
hevcdsp: ARM NEON optimized transforms
...
cherry picked from commit b153f55935969c794de4640f8d34e01c58e027ae
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-08 23:29:35 +01:00
Seppo Tomperi
0c494114cc
hevcdsp: ARM NEON optimized deblocking filter
...
cherry picked from commit 1b9ee47d2f43b0a029a9468233626102eb1473b8
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-05 22:01:52 +01:00
Carl Eugen Hoyos
f9f9ae1b77
lavc/arm: Use the neon vertical chroma loop filter also for H.264 4:2:2.
2015-01-31 10:05:24 +01:00
Michael Niedermayer
cb416a7d79
Merge commit '4c81613df499ba81d64ea102b38d0c6686cc304c'
...
* commit '4c81613df499ba81d64ea102b38d0c6686cc304c':
arm: mlpdsp: handle pic offset calculation in a macro
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-10 00:51:26 +01:00
Michael Niedermayer
824932dc47
Merge commit '581c7f0e12b1fa39f73d683e54d6ecda0772c5a9'
...
* commit '581c7f0e12b1fa39f73d683e54d6ecda0772c5a9':
arm: make ff_mlp_filter_channel_arm and ff_mlp_rematrix_channel_arm position independent
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-10 00:39:00 +01:00
Janne Grunau
4c81613df4
arm: mlpdsp: handle pic offset calculation in a macro
...
Makes the code easier to read since it hides different offset
calculations for arm and thumb mode.
2014-12-09 22:00:08 +01:00
Janne Grunau
581c7f0e12
arm: make ff_mlp_filter_channel_arm and ff_mlp_rematrix_channel_arm position independent
...
No significant difference in used cpu cycles on a cortex-a9.
2014-12-09 22:00:08 +01:00
Michael Niedermayer
16e65419ed
Merge commit 'f963f80399deb1a2b44c1bac3af7123e8a0c9e46'
...
* commit 'f963f80399deb1a2b44c1bac3af7123e8a0c9e46':
arm: Use .data.rel.ro for const data with relocations
Conflicts:
configure
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-09 11:58:13 +01:00
Martin Storsjö
f963f80399
arm: Use .data.rel.ro for const data with relocations
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-12-09 11:43:25 +02:00
Michael Niedermayer
5054d2a92b
Merge commit 'b280c6202b28b371a8d96850194fd69d7ad5dcc0'
...
* commit 'b280c6202b28b371a8d96850194fd69d7ad5dcc0':
arm: fft_vfp: Unify the behaviour in ff_fft_calc_vfp between arm/thumb
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-08 12:42:47 +01:00
Michael Niedermayer
8554a10992
Merge commit 'ae81576414f2d2083d3118fb4abe1ebc5a7a4c54'
...
* commit 'ae81576414f2d2083d3118fb4abe1ebc5a7a4c54':
arm: fft_vfp: Add a missing "endconst" when building in thumb mode
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-12-08 12:31:33 +01:00
Martin Storsjö
b280c6202b
arm: fft_vfp: Unify the behaviour in ff_fft_calc_vfp between arm/thumb
...
Don't include the function pointer table in the code segment
in arm mode.
This shouldn't have any significant performance effect. It does
end up as a few more instructions than before, for ARM, but
only at the entry to this function, not within the fft functions
themselves.
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-12-08 12:29:53 +02:00
Martin Storsjö
ae81576414
arm: fft_vfp: Add a missing "endconst" when building in thumb mode
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-12-08 12:29:49 +02:00
Michael Niedermayer
ea41e6d637
Merge commit '9c12c6ff9539e926df0b2a2299e915ae71872600'
...
* commit '9c12c6ff9539e926df0b2a2299e915ae71872600':
motion_est: convert stride to ptrdiff_t
Conflicts:
libavcodec/me_cmp.c
libavcodec/ppc/me_cmp.c
libavcodec/x86/me_cmp_init.c
See: 9c669672c7
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-11-24 12:13:00 +01:00
Vittorio Giovara
9c12c6ff95
motion_est: convert stride to ptrdiff_t
...
CC: libav-stable@libav.org
Bug-Id: CID 700556 / CID 700557 / CID 700558
2014-11-24 01:30:10 +00:00
James Almer
3cec54b7d7
x86/flacdsp: add SSE2 and AVX decorrelate functions
...
Two to four times faster depending on instruction set, block size and channel count.
2014-11-13 13:47:55 -03:00