[FFmpeg-devel] [PATCH v2] swscale/output: Altivec-optimize float yuv2plane1

Lauri Kasanen cand at gmx.com
Mon Dec 24 19:39:18 EET 2018


On Sun, 16 Dec 2018 11:06:53 +0200
Lauri Kasanen <cand at gmx.com> wrote:

> This function wouldn't benefit from VSX instructions, so I put it
> under altivec.
> 
> ./ffmpeg_g -f rawvideo -pix_fmt rgb24 -s hd1080 -i /dev/zero -pix_fmt grayf32le \
> -f null -vframes 100 -v error -nostats -
> 
> 3743 UNITS in planar1,   65495 runs,     41 skips
> 
> -cpuflags 0
> 
> 23511 UNITS in planar1,   65530 runs,      6 skips
> 
> grayf32be
> 
> 4647 UNITS in planar1,   65449 runs,     87 skips
> 
> -cpuflags 0
> 
> 28608 UNITS in planar1,   65530 runs,      6 skips
> 
> The native speedup is 6.28133, and the bswapping one 6.15623.
> Fate passes, each format tested with an image to video conversion.
> 
> Signed-off-by: Lauri Kasanen <cand at gmx.com>
> ---
> 
> Tested on POWER8 LE. Testing on earlier ppc and/or BE appreciated.
> 
> v2: Added #undef vzero, that define broke the build on older gcc. Thanks Michael

Ping. And of course it's not gcc version dependant, but rather it was
the BE ifdef; it was too early in the morning.

- Lauri


More information about the ffmpeg-devel mailing list