summaryrefslogtreecommitdiff
path: root/libavcodec/dcadsp.c
Commit message (Collapse)AuthorAge
* Merge commit '87ec849fe9acba075c843e67bcd01f256f481a18'Michael Niedermayer2014-02-28
|\ | | | | | | | | | | | | | | | | | | | | * commit '87ec849fe9acba075c843e67bcd01f256f481a18': dcadec: remove scaling in lfe_interpolation_fir Conflicts: libavcodec/dcadec.c libavcodec/dcadsp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dcadec: remove scaling in lfe_interpolation_firChristophe Gisquet2014-02-28
| | | | | | | | | | | | | | The scaling factor is constant so it is faster to scale the FIR coefficients in the tables during compilation. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
| * dcadsp: split lfe_dir casesChristophe Gisquet2014-02-07
| | | | | | | | | | | | | | | | | | The x86 runs short on registers because numerous elements are not static. In addition, splitting them allows more optimized code, at least for x86. Arm asm changes by Janne Grunau. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | dcadsp: scan coefficients linearly instead.Christophe Gisquet2014-02-15
| | | | | | | | | | | | This change is inspired by x86 asm, where this frees a register. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | dcadsp: split lfe_dir casesChristophe Gisquet2014-02-08
| | | | | | | | | | | | | | The x86 runs short on registers because numerous elements are not static. In addition, splitting them allows more optimized code, at least for x86. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '5b59a9fc6152169599561f04b4f66370edda5c9c'Michael Niedermayer2014-02-08
|\| | | | | | | | | | | | | * commit '5b59a9fc6152169599561f04b4f66370edda5c9c': x86: dcadsp: implement int8x8_fmul_int32 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: dcadsp: implement int8x8_fmul_int32Christophe Gisquet2014-02-07
| | | | | | | | | | | | | | | | | | | | | | For the callable function (as opposed to the inline one): C SSE SSE2 SSE4 Win32: 47 42 29 26 Win64: 30 33 25 23 The SSE version is neither compiled nor set for ARCH_X86_64, as the inlinable function takes over. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
| * dcadsp: add int8x8_fmul_int32 to dsp contextChristophe Gisquet2014-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It is currently declared as a macro who is set to inlinable functions, among which a Neon and a default C implementations. Add a DSP parameter to each inline function, unused except by the default C implementation which calls a function from the DSP context. On an Arrandale CPU, gain for an inlined SSE2 function vs. a call: - Win32: 29 to 26 cycles - Win64: 25 to 23 cycles Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | dcadsp: add int8x8_fmul_int32 to DSP contextChristophe Gisquet2014-02-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It is currently declared as a macro who is set to inlinable functions, among which a Neon and a default C implementations. Add a DSP parameter to each inline function, unused except by the default C implementation which calls a function from the DSP context. On an Arrandale CPU, gain for an inlined SSE2 function vs. a call: - Win32: 29 to 26 cycles - Win64: 25 to 23 cycles Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '800ffab48a7844dd5dc0a33b8f6b8e5ed718cf2e'Michael Niedermayer2013-07-22
|\| | | | | | | | | | | | | * commit '800ffab48a7844dd5dc0a33b8f6b8e5ed718cf2e': dcadsp: Add a new method, qmf_32_subbands Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dcadsp: Add a new method, qmf_32_subbandsBen Avison2013-07-22
| | | | | | | | | | | | | | This does most of the work formerly carried out by the static function qmf_32_subbands() in dcadec.c. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '6fee1b90ce3bf4fbdfde7016e0890057c9000487'Michael Niedermayer2013-05-05
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '6fee1b90ce3bf4fbdfde7016e0890057c9000487': avcodec: Add av_cold attributes to init functions missing them Conflicts: libavcodec/aacpsy.c libavcodec/atrac3.c libavcodec/dvdsubdec.c libavcodec/ffv1.c libavcodec/ffv1enc.c libavcodec/h261enc.c libavcodec/h264_parser.c libavcodec/h264dsp.c libavcodec/h264pred.c libavcodec/libschroedingerenc.c libavcodec/libxvid_rc.c libavcodec/mpeg12.c libavcodec/mpeg12enc.c libavcodec/proresdsp.c libavcodec/rangecoder.c libavcodec/videodsp.c libavcodec/x86/proresdsp_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avcodec: Add av_cold attributes to init functions missing themDiego Biurrun2013-05-04
| |
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * Remove unneeded add bias from 3 functions.Justin Ruggles2011-01-31
| | | | | | | | | | | | | | | | DSPContext.vector_fmul_window() DCADSPContext.lfe_fir() SynthFilterContext.synth_filter_float() Signed-off-by: Mans Rullgard <mans@mansr.com>
* | Remove unneeded add bias from 3 functions.Justin Ruggles2011-02-02
|/ | | | | | | | | DSPContext.vector_fmul_window() DCADSPContext.lfe_fir() SynthFilterContext.synth_filter_float() Signed-off-by: Mans Rullgard <mans@mansr.com> (cherry picked from commit 80ba1ddb58b5923b9f36a6acd542affc4ca722eb)
* DCA: ARM/NEON optimised lfe_firMåns Rullgård2010-04-12
| | | | Originally committed as revision 22863 to svn://svn.ffmpeg.org/ffmpeg/trunk
* DCA: break out lfe_interpolation_fir() inner loops to a functionMåns Rullgård2010-04-12
This enables SIMD optimisations of this function. Originally committed as revision 22861 to svn://svn.ffmpeg.org/ffmpeg/trunk