|
3 JUN 2017 FFMPEG/AVCONV BENCHMARKS
OLDER FFMPEG/AVCONV BENCHMARKS
21 Nov 2012
26 Dec 2011
8 Oct 2011
OVERVIEW
These are run times of ffmpeg.exe
as downloaded from Zeranoe (static builds; FFmpeg.org)
and avconv.exe
as downloaded from
builds.libav.org/windows (libav.org).
If you are not aware of why there are now two different web sites (ffmpeg.org and libav.org)
and two different converters (ffmpeg.exe and avconv.exe),
see the FFmpeg section of my useful utilities page.
DETAILS
- I used just one source video this time--a 23-second, high-def (720p) video (.mts file) directly from a Panasonic Lumix camera. I'm figuring that the encoding is the dominant part of the conversion time.
- Run times are wall-clock time.
- I'm running Windows 10 Pro 64-bit.
- My CPU is a core i5-670 (3.47 GHz) with 2 cores and 2 threads per core, so it can take advantage of up to 4 threads, but in my experience, multitasking on a core i5 is effective for only two threads or less. Beyond that, there is little payoff (see the discussion in the -nt option on my k2pdfopt command-line options page).
RESULTS
- Detailed results are in the table below.
- For windows builds, FFmpeg has left avconv in the dust. The FFmpeg windows builds are more up to date, have more download options (e.g. an all-in-one statically-compiled exe), are compiled with a more modern version of GCC, have efficient encoders for every major format, and are faster than (or at least equivalent to) the avconv windows builds in every single case where both of them have encoders. The avconv.exe VP8 and VP9 conversions, in particular, are astonishingly slow.
VERSIONS
The nightly-builds for ffmpeg continue not to incorporate the release version number, which
is frustrating. This nightly build was downloaded when version 3.3.1 was the stable release. The avconv.exe is a pre-release of v13.
CONVERSIONS
I converted a 23-second .mts (h264-encoded) video from my Panasonic camera to these formats using these command lines:
Encoder | Command line |
(All encoders) |
-i myfile.mts -threads <n> -s 640x360 -b:v 1250k -b:a 56k -ar 22050 -qmax 63 |
x264 (.mp4) |
-vcodec libx264 -i_qfactor 0.71 -qcomp 0.6 -qmin 10 -qdiff 4 -trellis 0 out.mp4 |
x265 (hevc) |
-vcodec libx265 -i_qfactor 0.71 -qcomp 0.6 -qmin 10 -qdiff 4 -trellis 0 out.avi |
vp8 (.webm) |
-vcodec libvpx -acodec libvorbis outfile.webm |
vp9 (.webm) |
-vcodec libvpx-vp9 -acodec libvorbis outfile.webm |
theora (.ogv) |
-vcodec libtheora -acodec libvorbis outfile.ogv |
Run Times from June 2, 2017 Downloads
Command |
From |
Type |
Version |
gcc ver |
Encoder |
Encoder Version |
-threads 1 |
-threads 2 |
-threads 3 |
-threads 4 |
ffmpeg.exe |
zeranoe |
win64 static |
N-86330-gbd1179e |
7.1.0 |
x264 (.mp4) |
Lavc57.96.101 |
20.7 s |
12.8 s |
12.1 s |
11.2 s |
avconv.exe |
libav.org |
win64 w/DLLs |
13_dev0-1047 |
4.8.3 |
x264 (.mp4) |
Lavc58.2.0 |
20.6 s |
13.5 s |
11.9 s |
11.2 s |
ffmpeg.exe |
zeranoe |
win64 static |
N-86330-gbd1179e |
7.1.0 |
x265 (hevc) |
Lavc57.96.101 |
44.0 s |
32.7 s |
29.3 s |
29.3 s |
avconv.exe |
libav.org |
win64 w/DLLs |
13_dev0-1047 |
4.8.3 |
x265 (hevc) |
Lavc58.2.0 |
(no encoder) |
ffmpeg.exe |
zeranoe |
win64 static |
N-86330-gbd1179e |
7.1.0 |
vp8 (.webm) |
Lavc57.96.101 |
46.8 s |
27.3 s |
24.5 s |
21.4 s |
avconv.exe |
libav.org |
win64 w/DLLs |
13_dev0-1047 |
4.8.3 |
vp8 (.webm) |
Lavc58.2.0 |
218 s |
128 s |
135 s |
113 s |
ffmpeg.exe |
zeranoe |
win64 static |
N-86330-gbd1179e |
7.1.0 |
vp9 (.webm) |
Lavc57.96.101 |
142 s |
83.8 s |
83.5 s |
83.9 s |
avconv.exe |
libav.org |
win64 w/DLLs |
13_dev0-1047 |
4.8.3 |
vp9 (.webm) |
Lavc58.2.0 |
1307 s |
1326 s |
1296 s |
1290 s |
ffmpeg.exe |
zeranoe |
win64 static |
N-86330-gbd1179e |
7.1.0 |
theora (.ogv) |
Lavc57.96.101 |
12.0 s |
11.9 s |
12.2 s |
12.1 s |
avconv.exe |
libav.org |
win64 w/DLLs |
13_dev0-1047 |
4.8.3 |
theora (.ogv) |
Lavc58.2.0 |
(no encoder) |
| |
|