summaryrefslogtreecommitdiffstats
path: root/libavfilter/x86
Commit message (Collapse)AuthorAgeFilesLines
* Change license of yadif from GPL to LGPLRobert Krüger2014-01-144-36/+36
| | | | | Signed-off-by: Robert Krüger <krueger@lesspain.de> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Revert "Revert "vf_yadif: move x86 init code to x86/yadif.c""Robert Krüger2014-01-142-0/+100
| | | | | | | This reverts commit 975110a85ef8e794fdc041455ff41b0ad30bc01e. Signed-off-by: Robert Krüger <krueger@lesspain.de> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Revert "vf_yadif: move x86 init code to x86/yadif.c"Michael Niedermayer2013-12-012-100/+0
| | | | | | | | | | | | | | | This reverts commit a87b17f3283aada762820f1b797eeb7a2dff6c61. This reduces the amount of non LGPL code, making a relicensing to LGPL easier Conflicts: libavfilter/vf_yadif.c libavfilter/x86/yadif.c libavfilter/x86/yadif_template.c libavfilter/yadif.h Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Revert "Merge commit 'ed1a11ed52bbd1f15bb9b0416d69b7924bee3191'"Clément Bœsch2013-11-011-14/+17
| | | | | | | | | | | | This reverts commit fc5fe4804fd2ee9a29de502e9431b12d027c0c89, reversing changes made to ffe33500983983946048def3a6047920d97d957b. The factoring is broken; it's not calling the ssse3 code anymore, and calling the mmx2 code with bad alignment. It also broke some FATE instances. Conflicts: libavfilter/x86/vf_gradfun_init.c
* avfilter/x86/vf_gradfun_init: fix some consts & related warningsMichael Niedermayer2013-11-011-1/+1
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit 'ed1a11ed52bbd1f15bb9b0416d69b7924bee3191'Michael Niedermayer2013-11-011-17/+14
|\ | | | | | | | | | | | | | | | | | | * commit 'ed1a11ed52bbd1f15bb9b0416d69b7924bee3191': gradfun: x86: Factor out common code for some gradfun_filter_line() variants Conflicts: libavfilter/x86/vf_gradfun_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * gradfun: x86: Factor out common code for some gradfun_filter_line() variantsDiego Biurrun2013-10-311-16/+13
| |
* | Merge commit 'ee80cf741a44115758e62399b7bde08d33161151'Michael Niedermayer2013-11-012-23/+41
|\ \ | |/ | | | | | | | | | | | | | | | | * commit 'ee80cf741a44115758e62399b7bde08d33161151': avfilter: x86: K&R formatting cosmetics Conflicts: libavfilter/x86/vf_gradfun_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avfilter: x86: K&R formatting cosmeticsDiego Biurrun2013-10-312-23/+42
| |
* | avfilter/x86/vf_gradfun_init: fix const and related warningsMichael Niedermayer2013-10-241-4/+5
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '0e730494160d973400aed8d2addd1f58a0ec883e'Michael Niedermayer2013-10-244-218/+207
|\ \ | |/ | | | | | | | | | | | | | | | | * commit '0e730494160d973400aed8d2addd1f58a0ec883e': avfilter: x86: Port gradfun filter optimizations to yasm Conflicts: libavfilter/x86/vf_gradfun_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avfilter: x86: Port gradfun filter optimizations to yasmDaniel Kang2013-10-234-218/+207
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | Merge commit 'f6633c55a3c0e93a5b2bab6aa0692fb608f2a38d'Michael Niedermayer2013-10-231-1/+1
|\ \ | |/ | | | | | | | | | | * commit 'f6633c55a3c0e93a5b2bab6aa0692fb608f2a38d': avfilter: Fix typo in Loren's email address Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avfilter: Fix typo in Loren's email addressDiego Biurrun2013-10-231-1/+1
| |
* | avfilter/x86/vf_pullup: try to fix build on x64Paul B Mahol2013-09-171-3/+3
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avfilter: port pullup filter from libmpcodecsPaul B Mahol2013-09-173-0/+221
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-07-181-5/+5
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Consistently use "cpu_flags" as variable/parameter name for CPU flags Conflicts: libavcodec/x86/dsputil_init.c libavcodec/x86/h264dsp_init.c libavcodec/x86/hpeldsp_init.c libavcodec/x86/motion_est.c libavcodec/x86/mpegvideo.c libavcodec/x86/proresdsp_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Consistently use "cpu_flags" as variable/parameter name for CPU flagsDiego Biurrun2013-07-181-5/+5
| |
| * yadif: restore speed of the C filtering codeJames Darnley2013-05-141-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Always use the special filter for the first and last 3 columns (only). Changes made in 64ed397 slowed the filter to just under 3/4 of what it was. This commit restores the speed while maintaining identical output. For reference, on my Athlon64: 1733222 decicycles in old 2358563 decicycles in new 1727558 decicycles in this Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | lavfi: add spp filter.Clément Bœsch2013-06-142-0/+234
| |
* | Merge commit '6e9f8d6a7d7392a236df19fef6f4eba41f18167e'Michael Niedermayer2013-05-091-1/+0
|\ \ | |/ | | | | | | | | | | * commit '6e9f8d6a7d7392a236df19fef6f4eba41f18167e': x86: vf_yadif: Remove stray dsputil_mmx #include Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: vf_yadif: Remove stray dsputil_mmx #includeDiego Biurrun2013-05-081-1/+0
| |
* | Merge commit '093804a93cc5da3f95f98265a5df116912443cec'Michael Niedermayer2013-05-051-1/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | * commit '093804a93cc5da3f95f98265a5df116912443cec': avfilter: Add av_cold attributes to init/uninit functions Conflicts: libavfilter/af_ashowinfo.c libavfilter/af_volume.c libavfilter/src_movie.c libavfilter/vf_lut.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avfilter: Add av_cold attributes to init/uninit functionsDiego Biurrun2013-05-041-1/+2
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-04-232-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | * qatar/master: x86: Move some conditional code around to avoid unused variable warnings Conflicts: libavcodec/x86/dsputil_mmx.c libavfilter/x86/vf_yadif_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: Move some conditional code around to avoid unused variable warningsDiego Biurrun2013-04-222-2/+2
| |
| * lavfi/gradfun: remove rounding to match C and SSE code.Clément Bœsch2013-03-281-2/+2
| | | | | | | | | | | | There is no noticable benefit for such precision. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * lavfi/gradfun: fix dithering in MMX code.Clément Bœsch2013-03-281-2/+29
| | | | | | | | | | | | Current dithering only uses the first 4 instead of the whole 8 random values. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * lavfi/gradfun: fix rounding in MMX code.Clément Bœsch2013-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current code divides before increasing precision. Also reduce upper bound for strength from 255 to 64. This will prevent an overflow in the SSSE3 and MMX filter_line code: delta is expressed as an u16 being shifted by 2 to the left. If it overflows, having a strength not above 64 will make sure that m is set to 0 (making the m*m*delta >> 14 expression void). A value above 64 should not make any sense unless gradfun is used as a blur filter. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * hqdn3d: Fix out of array read in LOWPASSLoren Merritt2013-03-131-1/+1
| | | | | | | | | | CC:libav-stable@libav.org Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | yadif: remove an 'm' from the LOAD macro definitionJames Darnley2013-03-163-41/+41
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | yadif: remove repeated check on widthJames Darnley2013-03-163-6/+0
| | | | | | | | | | | | The filter already checks that width (and height) are greater than 3. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | yadif: cosmetic indentation from previous commitsJames Darnley2013-03-161-6/+6
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | yadif: x86 assembly for 9 to 14-bit samplesJames Darnley2013-03-163-2/+305
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These smaller samples do not need to be unpacked to double words allowing the code to process more pixels every iteration (still 2 in MMX but 6 in SSE2). It also avoids emulating the missing double word instructions on older instruction sets. Like with the previous code for 16-bit samples this has been tested on an Athlon64 and a Core2Quad. Athlon64: 1809275 decicycles in C, 32718 runs, 50 skips 911675 decicycles in mmx, 32727 runs, 41 skips, 2.0x faster 495284 decicycles in sse2, 32747 runs, 21 skips, 3.7x faster Core2Quad: 921363 decicycles in C, 32756 runs, 12 skips 486537 decicycles in mmx, 32764 runs, 4 skips, 1.9x faster 293296 decicycles in sse2, 32759 runs, 9 skips, 3.1x faster 284910 decicycles in ssse3, 32759 runs, 9 skips, 3.2x faster Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | yadif: x86 assembly for 16-bit samplesJames Darnley2013-03-163-1/+378
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a fairly dumb copy of the assembly for 8-bit samples but it works and produces identical output to the C version. The options have been tested on an Athlon64 and a Core2Quad. Athlon64: 1810385 decicycles in C, 32726 runs, 42 skips 1080744 decicycles in mmx, 32744 runs, 24 skips, 1.7x faster 818315 decicycles in sse2, 32735 runs, 33 skips, 2.2x faster Core2Quad: 924025 decicycles in C, 32750 runs, 18 skips 623995 decicycles in mmx, 32767 runs, 1 skips, 1.5x faster 406223 decicycles in sse2, 32764 runs, 4 skips, 2.3x faster 387842 decicycles in ssse3, 32767 runs, 1 skips, 2.4x faster 307726 decicycles in sse4, 32763 runs, 5 skips, 3.0x faster Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | yadif: restore speed of the C filtering codeJames Darnley2013-03-131-9/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Always use the special filter for the first and last 3 columns (only). Changes made in 64ed397 slowed the filter to just under 3/4 of what it was. This commit restores the speed while maintaining identical output. For reference, on my Athlon64: 1733222 decicycles in old 2358563 decicycles in new 1727558 decicycles in this Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '64ed397635ef2666b0ca0c8d8c60a8bc44581d82'Michael Niedermayer2013-02-161-3/+9
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * commit '64ed397635ef2666b0ca0c8d8c60a8bc44581d82': vf_yadif: fix out-of line reads Conflicts: libavfilter/vf_yadif.c tests/ref/fate/filter-yadif-mode0 tests/ref/fate/filter-yadif-mode1 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vf_yadif: fix out-of line readsAnton Khirnov2013-02-151-3/+9
| | | | | | | | Some changes in the border pixels, visually indistinguishable.
* | Merge commit '238614de679a71970c20d7c3fee08a322967ec40'Michael Niedermayer2013-02-061-6/+6
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * commit '238614de679a71970c20d7c3fee08a322967ec40': cdgraphics: do not rely on get_buffer() initializing the frame. svq1: replace struct svq1_frame_size with an array. vf_yadif: silence a warning. Conflicts: libavcodec/svq1dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vf_yadif: silence a warning.Anton Khirnov2013-02-061-6/+6
| | | | | | | | | | | | | | clang says: libavfilter/vf_yadif.c:192:28: warning: incompatible pointer types assigning to 'void (*)(uint8_t *, uint8_t *, uint8_t *, uint8_t *, int, int, int, int, int)' from 'void (uint16_t *, uint16_t *, uint16_t *, uint16_t *, int, int, int, int, int)'
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-02-055-4/+4
|\ \ | |/ | | | | | | | | | | * qatar/master: avfilter: x86: consistent filenames for filter optimizations Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * avfilter: x86: consistent filenames for filter optimizationsDiego Biurrun2013-02-045-4/+4
| |
* | avfilter/x86/vf_hqdn3d_init: fix author attribution & project nameMichael Niedermayer2013-02-021-4/+6
| | | | | | | | | | | | Reference: 7a1944b907179212e7073b821fdc60e27d536e4a Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-02-022-0/+40
|\ \ | |/ | | | | | | | | | | * qatar/master: vf_hqdn3d: x86: Add proper arch optimization initialization Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vf_hqdn3d: x86: Add proper arch optimization initializationDiego Biurrun2013-02-012-0/+40
| |
* | Merge commit 'a1c525f7eb0783d31ba7a653865b6cbd3dc880de'Michael Niedermayer2013-01-141-22/+34
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'a1c525f7eb0783d31ba7a653865b6cbd3dc880de': pcx: return meaningful error codes. tmv: return meaningful error codes. msrle: return meaningful error codes. cscd: return meaningful error codes. yadif: x86: fix build for compilers without aligned stack lavc: introduce the convenience function init_get_bits8 lavc: check for overflow in init_get_bits Conflicts: libavcodec/cscd.c libavcodec/pcx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * yadif: x86: fix build for compilers without aligned stackDaniel Kang2013-01-141-22/+34
| | | | | | | | | | | | | | Manually load registers to avoid using 8 registers on x86_32 with compilers that do not align the stack (e.g. MSVC). Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | Merge commit 'f7bf72a4a1146a7583577c9bdc066767e1ba3c6a'Michael Niedermayer2013-01-104-303/+264
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'f7bf72a4a1146a7583577c9bdc066767e1ba3c6a': idcinvideo: correctly set AVFrame defaults yadif: Port inline assembly to yasm au: remove unnecessary casts au: return AVERROR codes instead of -1 Conflicts: libavcodec/idcinvideo.c libavfilter/x86/yadif_template.c libavformat/au.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * yadif: Port inline assembly to yasmDaniel Kang2013-01-094-302/+264
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | lavfi/gradfun: remove rounding to match C and SSE code.Clément Bœsch2012-12-191-2/+2
| | | | | | | | There is no noticable benefit for such precision.
OpenPOWER on IntegriCloud