summaryrefslogtreecommitdiff
path: root/libavcodec/vp3dsp.h
Commit message (Collapse)AuthorAge
* vp4: prevent unaligned memory access in loop filterPeter Ross2019-10-30
| | | | | | | | | | | | VP4 applies a loop filter during motion compensation, causing the block offset will often by unaligned. This produces a bus error on some platforms, namely ARMv7 NEON. This patch adds a unaligned version of the loop filter function pointer to VP3DSPContext. Reported-by: Mike Melanson <mike@multimedia.cx> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/vp3dsp: add 10 coefficient version of the VP3 IDCTPeter Ross2019-01-26
| | | | | | This version of the IDCT is used by the VP6 decoder. Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/vp3dsp: add 12 pixel loop filter functionsPeter Ross2019-01-26
| | | | Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/vp3dsp: move vp3 init loop filter function to vp3dspPeter Ross2019-01-26
| | | | | | This is also used by the VP6 decoder. Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/mips: [loongson] optimize theora decoding in vp3dsp.gxw2018-12-27
| | | | | | | | | | | | | | Optimize theora decoding with msa in functions: 1. ff_vp3_idct_add_msa 2. ff_vp3_idct_put_msa 3. ff_vp3_idct_dc_add_msa 4. ff_vp3_v_loop_filter_msa 5. ff_vp3_h_loop_filter_msa 6. ff_put_no_rnd_pixels_l2_msa Theora decoding speed improved about 36%(from 22fps to 30fps, Tested on loongson 2K1000). Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Merge commit '6892df9294d93322d43255ada299507465bc93c8'Clément Bœsch2017-03-19
|\ | | | | | | | | | | | | * commit '6892df9294d93322d43255ada299507465bc93c8': vp3: Change type of stride parameters to ptrdiff_t Merged-by: Clément Bœsch <u@pkh.me>
| * vp3: Change type of stride parameters to ptrdiff_tDiego Biurrun2016-08-26
| | | | | | | | | | | | | | This avoids SIMD-optimized functions having to sign-extend their stride argument manually to be able to do pointer arithmetic. Also adjust parameter names to be "stride" everywhere.
* | Merge commit '880e2aa23645ed9871c66ee1cbd00f93c72d2d73'Michael Niedermayer2014-06-02
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '880e2aa23645ed9871c66ee1cbd00f93c72d2d73': Remove all Blackfin architecture optimizations Conflicts: libavcodec/bfin/dsputil.S libavcodec/bfin/dsputil_init.c libavcodec/bfin/fdct_bfin.S libavcodec/bfin/hpel_pixels_no_rnd.S libavcodec/bfin/hpeldsp_init.c libavcodec/bfin/idct_bfin.S libavcodec/bfin/mathops.h libavcodec/bfin/pixels.S libavcodec/bfin/pixels.h libavcodec/bfin/vp3dsp.S libavcodec/bfin/vp3dsp_init.c libavutil/bfin/asm.h libavutil/bfin/attributes.h libswscale/bfin/internal_bfin.S libswscale/bfin/swscale_bfin.c libswscale/bfin/yuv2rgb_bfin.c libswscale/swscale_internal.h libswscale/version.h If someone wants to maintain blackfin support in FFmpeg, please contact ffmpeg-devel@ffmpeg.org Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Remove all Blackfin architecture optimizationsDiego Biurrun2014-06-02
| | | | | | | | | | | | Blackfin is a painful platform to work with, no test machines are available and the range of multimedia applications is dubious. Thus it only represents a maintenance burden.
| * vp3: Use full transpose for all IDCTsRonald S. Bultje2013-04-15
| | | | | | | | | | | | | | | | | | | | | | This way, the special IDCT permutations are no longer needed. This is similar to how H264 does it, and removes the dsputil dependency imposed by the scantable code. Also remove the unused type == 0 cases from the plain C version of the idct. Signed-off-by: Martin Storsjö <martin@martin.st>
* | vp3/x86: use full transpose for all IDCTs.Ronald S. Bultje2013-03-12
| | | | | | | | | | | | | | | | This way, the special IDCT permutations are no longer needed. Bfin code is disabled until someone updates it. This is similar to how H264 does it, and removes the dsputil dependency imposed by the scantable code. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '098eed95bc1a6b2c8ac97f126f62bb74699670cf'Michael Niedermayer2013-01-29
|\| | | | | | | | | | | | | | | | | | | * commit '098eed95bc1a6b2c8ac97f126f62bb74699670cf': mdec: merge mdec_common_init() into decode_init(). eatgv: use fixed-width types where appropriate. x86: Simplify some arch conditionals bfin: Separate VP3 initialization code Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * bfin: Separate VP3 initialization codeDiego Biurrun2013-01-28
| |
* | Merge commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f'Michael Niedermayer2013-01-23
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f': Drop DCTELEM typedef Conflicts: libavcodec/alpha/dsputil_alpha.h libavcodec/alpha/motion_est_alpha.c libavcodec/arm/dsputil_init_armv6.c libavcodec/bfin/dsputil_bfin.h libavcodec/bfin/pixels_bfin.S libavcodec/cavs.c libavcodec/cavsdec.c libavcodec/dct-test.c libavcodec/dnxhdenc.c libavcodec/dsputil.c libavcodec/dsputil.h libavcodec/dsputil_template.c libavcodec/eamad.c libavcodec/h264_cavlc.c libavcodec/h264idct_template.c libavcodec/mpeg12.c libavcodec/mpegvideo.c libavcodec/mpegvideo.h libavcodec/mpegvideo_enc.c libavcodec/ppc/dsputil_altivec.c libavcodec/proresdsp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Drop DCTELEM typedefDiego Biurrun2013-01-22
| | | | | | | | | | | | It does not help as an abstraction and adds dsputil dependencies. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-01-22
|\| | | | | | | | | | | | | | | * qatar/master: proresdec: support mixed interlaced/non-interlaced content vp3/5: move put_no_rnd_pixels_l2 from dsputil to VP3DSPContext. Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vp3/5: move put_no_rnd_pixels_l2 from dsputil to VP3DSPContext.Ronald S. Bultje2013-01-21
| | | | | | | | | | The function is only used in VP3 and VP5, so no need to have it in DSPContext.
* | Merge commit 'aeaf268e52fc11c1f64914a319e0edddf1346d6a'Michael Niedermayer2013-01-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit 'aeaf268e52fc11c1f64914a319e0edddf1346d6a': vp3: integrate clear_blocks with idct of previous block. mpegvideo: fix loop condition in draw_line() dvdsubdec: parse the size from the extradata Conflicts: libavcodec/dvdsubdec.c libavcodec/mpegvideo.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vp3: integrate clear_blocks with idct of previous block.Ronald S. Bultje2013-01-19
| | | | | | | | | | | | | | | | | | This is identical to what e.g. vp8 does, and prevents the function call overhead (plus dependency on dsputil for this particular function). Arm asm updated by Janne Grunau <janne-libav@jannau.net>. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-07-18
|/ | | | | | | | | | | | | | | | | | | * qatar/master: ppc: fix build with altivec disabled vp3: move idct and loop filter pointers to new vp3dsp context build: add CONFIG_VP3DSP, reduce repetition in OBJS lists tscc2: do not add/subtract 128 bias during DCT tscc2: fix typo in DCT configure: clarify external library section of help output configure: mark libfdk-aac as nonfree configure: cosmetics: drop some unnecessary backslashes os_support: K&R formatting cosmetics Conflicts: configure libavcodec/vp3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* vp3: move idct and loop filter pointers to new vp3dsp contextMans Rullgard2012-07-18
This moves all VP3-specific function pointers from dsputil to a new vp3dsp context. There is no reason to ever use the VP3 IDCT where an MPEG2 IDCT is expected or vice versa. Signed-off-by: Mans Rullgard <mans@mansr.com>