Mendevi 1.3.5¶
Measures of Encoding and Decoding of Videos.¶
Useful links: Binary Installers | Source Repository | Online Documentation |
Description¶
This Python module performs energy consumption and video metrics measurements for both video encoding and decoding workflows. It includes comprehensive ready-to-use datasets, available as exhaustive SQL databases and lightweight JSON representations, as well as pretrained predictive models for energy and quality estimation. The framework provides advanced visualization tools for generating complex matplotlib figures, executable from a single command-line interface.
It manages the following parameters:
It supports the
libx264,libopenh264,libx265,libvpx-vp9,libaom-av1,libsvtav1,librav1eandvvccpu encoders.It supports the
h264_nvenc,hevc_nvenc,av1_nvencand*_vaapigpu encoders.Distortions are measured using the
lpips,psnr,ssim,vifandvmafmetrics.Complexity are measured using the
rms_sobel,rms_time_diff,spatial_dctandtemporal_dctmetrics.Encoding efforts are
fast,mediumandslow.It takes care about the colorspaces (
range,transferandprimaries).Iterate over different
effort,encoder,mode,quality,threads,fps,resolutionandpix_fmt.Energy measurements are catched with
RAPLand an external wattmeter ongrid'5000.Get the
cpu,gpu,ramandtemperatureactivity.Get a full environment context, including hardware and software version.
It support the mode (constant bitrate)
cbrand (constant quality)vbr.Ability to
modify ffmpeg commandson the fly to perform specific tests, ginving your own defined callback function.It take care to
transfer files to RAMif possible to avoid biases related to storage space access.Provides a guide to compile ffmpeg with all optimizations in order to
compare encoders/decoders at their limits.
Caution
The entire code was written by hand, without the use of AI!
Pipeline¶
This is the pipeline used for measurements:
Example of result¶
Download and merge two datasets with this simple command:
mendevi merge svtav1_vs_rav1e_vs_aom.db x264_vs_openh264.db -o /tmp/av1_h264.db
Example of energy and rate distortion video encoding, on a single video for several profiles:
mendevi plot /tmp/av1_h264.db -x rate -x energy -y vmaf -c encoder -m effort -wy profile -f "ref_stem=='park_joy'"
Alternatives¶
The GREEM video encoding measurement tool.
The MVCD database also includes video encoding and decoding energy measurements.
The COCONUT database also includes video decoding measurements.
The SEED and VEED dataset offers a comprehensive LCA and GPU measurements.
The CTC videos and Big Buck Bunny are used for the tests. The videos are downloadable for these torrents.
Getting started¶
Dataset¶
Developer guide¶
API documentation¶
Reference¶
The documentation was generated on 2026-06-05 09H32.