ffmpeg/libswscale
Lauri Kasanen 8607e29fa3 swscale/ppc: VSX-optimize yuv2rgb_full_X
./ffmpeg -f lavfi -i yuvtestsrc=duration=1:size=1200x1440 \
                -s 1200x720 -f null -vframes 100 -pix_fmt $i -nostats \
                -cpuflags 0 -v error -

32-bit mul, power8 only.

~6.4x speedup:

rgb24
 214278 UNITS in yuv2packedX,   16384 runs,      0 skips
  33249 UNITS in yuv2packedX,   16384 runs,      0 skips
bgr24
 214616 UNITS in yuv2packedX,   16384 runs,      0 skips
  33233 UNITS in yuv2packedX,   16384 runs,      0 skips
rgba
 214517 UNITS in yuv2packedX,   16384 runs,      0 skips
  33271 UNITS in yuv2packedX,   16384 runs,      0 skips
bgra
 214973 UNITS in yuv2packedX,   16384 runs,      0 skips
  33397 UNITS in yuv2packedX,   16384 runs,      0 skips
argb
 214613 UNITS in yuv2packedX,   16384 runs,      0 skips
  33310 UNITS in yuv2packedX,   16384 runs,      0 skips
bgra
 214637 UNITS in yuv2packedX,   16384 runs,      0 skips
  33330 UNITS in yuv2packedX,   16384 runs,      0 skips
2019-04-07 09:20:34 +03:00
..
aarch64
arm arm: swscale: Only compile the rgb2yuv asm if .dn aliases are supported 2018-03-31 21:54:56 +03:00
ppc swscale/ppc: VSX-optimize yuv2rgb_full_X 2019-04-07 09:20:34 +03:00
tests Merge commit '0fd0d4fd0a518e30ff23972828ad7cf7f35cfb9d' 2017-10-30 12:34:40 -03:00
x86 swscale/x86/rgb2rgb.asm : add Ivo Van Poorten name to the top of the file 2018-10-18 21:43:19 +02:00
alphablend.c
bayer_template.c
gamma.c
hscale_fast_bilinear.c
hscale.c
input.c swscale : add support for YUVA444P12 and YUVA422P12 2018-11-24 16:24:47 +01:00
libswscale.v
log2_tab.c
Makefile Merge commit '92db5083077a8b0f8e1050507671b456fd155125' 2017-05-04 19:59:30 -03:00
options.c
output.c swscale: Remove duplicated code 2019-03-27 09:00:06 +02:00
rgb2rgb_template.c lsws/rgb2rgb_template: Do not compile unneeded shuffle functions on big-endian. 2018-06-10 03:22:59 +02:00
rgb2rgb.c swscale/rgb : move shuffle func shuffle_bytes_1230, shuffle_bytes_3012, shuffle_bytes_3210 in order to add SIMD 2018-03-24 20:22:02 +01:00
rgb2rgb.h swscale/rgb2rgb : cosmetic, move shuffle_bytes func declaration 2018-03-24 20:22:17 +01:00
slice.c lsws/slice: Move a misplaced const. 2017-03-08 00:33:21 +01:00
swscale_internal.h swscale/ppc: Move VSX-using code to its own file 2018-12-04 02:59:07 +01:00
swscale_unscaled.c swscale/swscale_unscaled: Fix chroma slice height 2019-03-28 22:47:32 +01:00
swscale.c swscale/swscale : small cosmetic 2018-08-22 11:36:15 +02:00
swscale.h
swscaleres.rc
utils.c swscale : add support for YUVA444P12 and YUVA422P12 2018-11-24 16:24:47 +01:00
version.h Bump minor version for master after 4.1 branchpoint 2018-11-02 00:53:07 +01:00
vscale.c
yuv2rgb.c swscale/yuv2rgb: Return a more specific error code from ff_yuv2rgb_c_init_tables() 2019-01-01 21:11:47 +01:00