Previous tests presented here showed that a Windows version of FFmpeg compiled by Zeranoe was about four times slower than a version compiled by a colleague who works in an OTT organization. Since then, Miguel Perez contacted the FFmpeg organization and Zeranoe, who researched the issue, recompiled, and created a new download that resolves the problem.
To test the new version, I encoded two files on this computer and averaged the results.
Here they are with encoding strings below.
So, the updated Zeranoe code was actually about 18% faster than the AOM encoder, and that doesn’t count the time and of converting your source input files to YUV. Every version of FFmpeg that I’ve used on Windows came from Zeranoe – it’s great that they were able to resolve this problem within two days of learning of it.
Here are the encoding strings:
Contents
FFmpeg:
ffmpeg -y -i football_10.mp4 -c:v libaom-av1 -strict -2 -b:v 1890K -g 60 -keyint_min 60 -sc_threshold 0 -row-mt 1 -tile-columns 1 -tile-rows 0 -threads 16 -cpu-used 8 -pass 1 -f matroska NUL &
ffmpeg -y -i football_10.mp4 -c:v libaom-av1 -strict -2 -b:v 1890K -maxrate 3780K -bufsize 3780k -g 60 -keyint_min 60 -sc_threshold 0 -row-mt 1 -tile-columns 1 -an -tile-rows 0 -threads 16 -cpu-used 3 -pass 2 football_ffmpeg_Zeranoe.mkv
aomenc
aomenc.exe football_10.y4m --width=1920 --height=1080 --fps=30000/1000 --passes=2 --lag-in-frames=25 --end-usage=vbr --target-bitrate=1890 --threads=16 --cpu-used=3 --kf-min-dist=60 --kf-max-dist=60 -o football_aomenc.webm
x265
ffmpeg -y -i Football_10.mp4 -c:v libx265 -threads 16 -preset veryslow -tune ssim -x265-params bitrate=1890:keyint=60:min-keyint=60:scenecut=0:open-gop=0:pass=1 -f mp4 NUL &
ffmpeg -y -i Football_10.mp4 -c:v libx265 -threads 16 -preset veryslow -tune ssim -x265-params bitrate=1890:vbv-maxrate=3780:vbv-bufsize=3780:keyint=60:min-keyint=60:scenecut=0:open-gop=0:pass=2 Football_x265_ssim_4.mp4
x264
ffmpeg -y -i Football_10.mp4 -c:v libx264 -threads 16 -b:v 1890K -preset veryslow -g 60 -keyint_min 60 -sc_threshold 0 -tune ssim -pass 1 -f mp4 NUL &
ffmpeg -i Football_10.mp4 -c:v libx264 -threads 16 -b:v 1890K -maxrate 3780K -bufsize 3780k -preset veryslow -g 60 -keyint_min 60 -sc_threshold 0 -tune ssim -pass 2 Football_x264_ssim_4.mp4
The article itself will consider 16 different videos in five genres (animations, games, sports, movies, other) and two additional AV1 codecs, Aurora from Visionular and SVT-AV1 from Intel. It probably will appear in the September time frame.
Could you maybe test SVT-AV1 against aomenc and ffmpeg’s LibAOM too?
Ffmpeg can also be compiled with SVT-AV1 if you prefer that.
Also if possible try to use Av1an to target a specific VMAF (e.g. 93) while encoding so that you can see the file size difference afterwards while maintaining the exact same quality. Av1an supports all Av1 encoders, VPx and x265/4
Don’t have so much CPU power for myself to test that, maybe it would be interesting for all 🙂
Felix – Thanks for your note. I’m testing SVT-AV1 in the article I’m writing.I’m not aware of Av1an – I’ll have a look, but it won’t be soon, just cranking on other stuff.
Thanks again for the note and take care.
Jan