summaryrefslogtreecommitdiff
path: root/libavcodec/dsputil.c
Commit message (Collapse)AuthorAge
...
* Revert "dsputil: make {add/put/put_signed}_pixels_clamped() non-static."Mans Rullgard2012-08-27
| | | | | | | | | This reverts commit 484a337cd7cd8bb180c4a1bd3321881f1c874a92. These functions were used in f8bed30 "VC1: merge idct8x8, coeff adjustments and put_pixels" which was reverted in 18b6a69. Signed-off-by: Mans Rullgard <mans@mansr.com>
* celp_math: Replace duplicate ff_dot_productf() by ff_scalarproduct_c()Diego Biurrun2012-08-27
|
* eamad/eatgq/eatqi: call special EA IDCT directlyMans Rullgard2012-07-29
| | | | | | | | | | | | These decoders use a special non-MPEG2 IDCT. Call it directly instead of going through dsputil. There is never any reason to use a regular IDCT with these decoders or to use the EA IDCT with other codecs. This also fixes the bizarre situation of eamad and eatqi decoding incorrectly if eatgq is disabled. Signed-off-by: Mans Rullgard <mans@mansr.com>
* 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>
* float_dsp: Move vector_fmac_scalar() from libavcodec to libavutilJustin Ruggles2012-06-18
|
* Add a float DSP framework to libavutilJustin Ruggles2012-06-08
| | | | Move vector_fmul() from DSPContext to AVFloatDSPContext.
* dsputil: fix invalid array indexingMans Rullgard2012-04-26
| | | | | | | Indexing outside an array is invalid and causes errors with gcc 4.8. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: remove unused functionsMans Rullgard2012-04-21
| | | | | | These functions were left unused by the lowres removal. Signed-off-by: Mans Rullgard <mans@mansr.com>
* Remove lowres video decodingMans Rullgard2012-04-21
| | | | | | | This feature is complex, of questionable utility, and slows down normal decoding. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ppc: drop unused function dct_quantize_altivec()Diego Biurrun2012-04-18
| | | | This also allows dropping some PPC-specific ugliness from dsputil.[ch].
* dsputil: remove shift parameter from scalarproduct_int16Christophe GISQUET2012-03-07
| | | | | | | | | There is only one caller, which does not need the shifting. Other use cases are situations where different roundings would be needed. The x86 and neon versions are modified accordingly. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* Don't use ff_cropTbl[] for IDCT.Ronald S. Bultje2012-03-06
| | | | | | | | Results of IDCT can by far outreach the range of ff_cropTbl[], leading to overreads and potentially crashes. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* vorbis: Add ff_ prefix to nonstatic symbolsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* libavcodec: Add ff_ prefix to j_rev_dct*Martin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* dsputil: Add ff_ prefix to inv_zigzag_direct16Martin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* libavcodec: Prefix fdct_ifast, fdct_ifast248Martin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* dsputil: Add ff_ prefix to the dsputil*_init* functionsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Remove Sun medialib glue code.Diego Biurrun2012-02-08
| | | | | It is obscure, most likely unused and not bit-exact compared to libavcodec due to a different IDCT transform algorithm.
* dsputil: remove debug message in dsputil_init().Justin Ruggles2012-02-03
| | | | | AVCodecContext.bits_per_raw_sample is used for audio too, and values other than 8, 9, and 10 are valid.
* png: move DSP functions to their own DSP context.Ronald S. Bultje2012-01-29
|
* doxygen: misc consistency, spelling and wording fixesDiego Biurrun2011-12-12
|
* twinvq: add SSE/AVX optimized sum/difference stereo interleavingJustin Ruggles2011-11-11
|
* prores: extract idct into its own dspcontext and merge with put_pixels.Ronald S. Bultje2011-10-11
|
* dsputil: add vector_fmac_scalar()Mans Rullgard2011-09-28
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Move RV3/4-specific DSP functions into their own contextKostya Shishkov2011-08-11
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* dsputil: move a bink-only function to binkdspMans Rullgard2011-07-27
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: remove some unused functionsMans Rullgard2011-07-27
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* bink: make IDCT take 32-bit inputKostya Shishkov2011-07-27
| | | | | | | | | | | Since IDCT transforming 32-bit input to 8-bit output is unusual and unpractical for most codecs, move Bink IDCT into separate context. Get rid of an additional permutation table while at it since SIMD support for Bink IDCT is unlikely to be implemented in foreseeable future. Quantisation tables also have to change type to signed for proper dequantisation of DCT coefficients. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: template get_pixels() for different bit depthsMans Rullgard2011-07-21
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: create 16/32-bit dctcoef versions of some functionsMans Rullgard2011-07-21
| | | | | | | | | | High bitdepth H.264 needs 32-bit transform coefficients, whereas dnxhd does not. This creates a conflict with the templated functions operating on DCTELEM data. This patch adds a field allowing the caller to choose the element size in dsputil_init() and adds the required functions. Signed-off-by: Mans Rullgard <mans@mansr.com>
* jfdctint: add 10-bit versionMans Rullgard2011-07-21
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: allow 9/10-bit functions for non-h264 codecsMans Rullgard2011-07-21
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: Remove extra blank line at end.Alex Converse2011-07-20
|
* dsputil: Replace a LONG_MAX check with HAVE_FAST_64BIT.Alex Converse2011-07-20
|
* simple_idct: add 10-bit versionMans Rullgard2011-07-20
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Remove h264_lowres_idct_put/add functionsMans Rullgard2011-07-20
| | | | | | | | Use of these has been broken ever since the h264 idct was changed to always use transposed inputs. Furthermore, they were only ever used if some *other* non-default idct was requested. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: fix ff_check_alignment()Mans Rullgard2011-07-19
| | | | | | | | | The change to LOCAL_ALIGNED means the declared object must be an array and the subsequent test should not use the & operator. Noticed by Uoti Urpala. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: restore mistakenly removed hunk of disabled codeDiego Biurrun2011-07-18
| | | | This particular part serves to document the optimized code variant.
* dsputil: remove disabled codeDiego Biurrun2011-07-18
|
* Use LOCAL_ALIGNED in ff_check_alignment()Mans Rullgard2011-07-16
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* ac3enc: add int32_t array clipping function to DSPUtil, including x86 versions.Justin Ruggles2011-07-01
|
* Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 ↵Oskar Arvidsson2011-05-10
| | | | | | | | | | | | | | | | | decoder. This patch lets e.g. dsputil_init chose dsp functions with respect to the bit depth to decode. The naming scheme of bit depth dependent functions is <base name>_<bit depth>[_<prefix>] (i.e. the old clear_blocks_c is now named clear_blocks_8_c). Note: Some of the functions for high bit depth is not dependent on the bit depth, but only on the pixel size. This leaves some room for optimizing binary size. Preparatory patch for high bit depth h264 decoding support. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* Move some functions in dsputil.c into a new file dsputil_template.c.Oskar Arvidsson2011-05-10
| | | | | | | The functions moved are used when decoding h264. Preparatory patch for high bit depth h264 decoding support. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* Remove some disabled printf debug cruft.Diego Biurrun2011-04-29
|
* Eliminate pointless '#if 1' statements without matching '#else'.Diego Biurrun2011-04-26
|
* Replace more FFmpeg references by Libav.Diego Biurrun2011-04-17
|
* Convert some undefined 1<<31 shifts into 1U<<31.Alex Converse2011-04-11
| | | | | | | | | | | According to ISO 9899:1999 S 6.5.7/4: The result of E1 << E2 is E1 left-shifted E2 bit positions; vacated bits are filled with zeros. If E1 has an unsigned type, the value of the result is E1× 2^E2, reduced modulo one more than the maximum value representable in the result type. If E1 has a signed type and nonnegative value, and E1× 2^E2 is representable in the result type, then that is the resulting value; otherwise, the behavior is undefined.
* dsputil: allow to skip drawing of top/bottom edges.Alexander Strange2011-03-26
|
* Add apply_window_int16() to DSPContext with x86-optimized versions and use itJustin Ruggles2011-03-22
| | | | in the ac3_fixed encoder.
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>