FFmpeg encoding speed testing and analysis

I decided to do some testing with FFmpeg in seeing the time, filesize and bitrate differences when choosing different presets and crf plus some upscaling.

Test computer: Ryzen 7 1700 8 cores 16 threads @ 3.7 GHz. 16GB DDR4 @ 2600 MHz. Samsung 860 EVO 500GB SSD.

Source file: 00:03:00 of 1280 x 720 25fps sports footage. 111 MB file size at a bitrate of 5,002 kbps.

Encoding tests

The aim was to test out which of the encoding presets and crf factor gave the smaller file to time ratio. In general a slower encode means smaller file size and quicker means little compress. Each case can have its use scenarios. Read about FFmpeg presets and crf here.

The ultrafast preset seemed to play up for me, not sure if it was the small input file being the culprit. But the finding for ultrafast seem defunct. The faster presets also seemed to add size onto the input file aswell as more bitrate. Odd.

 

FFmpeg encoding speeds

If you want to reduce the file size but keep good quality and not have it take forever: Slow 22.

If you have time up your sleeve and want a good solid compress: Veryslow 21.

If you want a quick encode just to knock some size out of the file: Fast 23.

Upscaling

5,000 kbps will be okay at 1080p not so much 1440p but i still ran the FFmpeg upscale on the 720p source file:

FFmpeg encoding upscalingTo the human eye this didn’t really make a difference between having the 720p source in full-screen or the 1080p fullscreen.

Screenshots

Using FFmpeg’s screenshot ability these are the images from the upscaling and encoding outputs:

source
source
FFmpeg encode ultrafast 21
FFmpeg encode ultrafast 21
FFmpeg encode veryfast 21
FFmpeg encode veryfast 21
FFmpeg encode slow 21
FFmpeg encode slow 21
FFmpeg encode slower 21
FFmpeg encode slower 21
FFmpeg encode veryslow 21
FFmpeg encode veryslow 21
FFmpeg encode veryslow 22
FFmpeg encode veryslow 22
FFmpeg encode slower 22
FFmpeg encode slower 22
FFmpeg encode slow 22
FFmpeg encode slow 22
FFmpeg encode fast 22
FFmpeg encode fast 22
FFmpeg encode veryfast 22
FFmpeg encode veryfast 22
FFmpeg encode ultrafast 22
FFmpeg encode ultrafast 22
FFmpeg encode slow 20
FFmpeg encode slow 20
FFmpeg encode slow 23
FFmpeg encode slow 23
FFmpeg encode fast 20
FFmpeg encode fast 20
FFmpeg encode fast 23
FFmpeg encode fast 23
FFmpeg encode veryfast 23
FFmpeg encode veryfast 23
FFmpeg encode fast 21 1080p
FFmpeg encode fast 21 1080p
FFmpeg encode slow 21 1080p
FFmpeg encode slow 21 1080p
FFmpeg encode slow 21 1440p
FFmpeg encode slow 21 1440p
FFmpeg encode fast 21 1440p
FFmpeg encode fast 21 1440p