![[OC] Open benchmark (140k tests) of energy, quality and complexity across video codecs](https://preview.redd.it/64f9fand8vth1.png?width=140&height=79&auto=webp&s=dcddb2a7cd18486bcc669a897ccbec8a3fb46681)
[OC] Open benchmark (140k tests) of energy, quality and complexity across video codecs
One surprising result: On CPU with ffmpeg, decoding with VVC consumed on average 10x more energy than h264, h265, vp9 and av1 on the same videos / same machines!
To get there, I ran 4 months of video encoding/decoding tests on 7 different machines.
The result is a fully open dataset with 140k+ encode/decode runs with measurements for time, power (real wattmeter + RAPL), CPU/RAM usage, temperature, bitrate, metrics and ffprobe.
Setup:
- 10 encoders (libx264, h264_vaapi, h264_nvenc, libx265, hevc_nvenc, vvc, libaom-av1, libsvtav1, libvpx-vp9, av1_nvenc)
- 5 decoders (CPU only)
- 30 videos from JVET CTC x 4 resolutions (SD/HD/FHD/UHD4K)
- 24 quality points per encoder
- 3 efforts per encoder (fast/medium/slow)
- 5 quality metrics (PSNR/SSIM/VIF/VMAF/LPIPS_ALEX)
- 4 complexity metrics (SI/TI)
The data was collected with mendevi.
Here is an example of how to use the dataset to visualise the energy required to decode a video stream on a CPU, depending on the codec.
https://reddit.com/link/1wz5lu3/video/t8etai3b8vth1/player
Here is another example comparing the bitrate and distortion performance of AV1 versus H.264, regardless of the duration.
Which analysis would you like to see?
If you’d like to explore the dataset yourself, a lightweight JSON version is available here, while the full 50 GB SQLite dataset can be downloaded via torrent here.