Netflix/vmaf: Perceptual video high quality evaluation primarily based on multi-method fusion. · GitHub

VMAF is an Emmy-winning perceptual video high quality evaluation algorithm developed by Netflix. This software program package deal features a stand-alone C library libvmaf and its wrapping Python library. The Python library additionally supplies a set of instruments that enables a person to coach and take a look at a customized VMAF mannequin.
Read this tech weblog publish for an outline, this publish for the information of finest practices, and this publish for our newest efforts on velocity optimization, new API design and the introduction of a codec evaluation-friendly NEG mode.
Also included in libvmaf are implementations of a number of different metrics: PSNR, PSNR-HVS, SSIM, MS-SSIM and CIEDE2000.
- (2026-06) We are releasing a brand new set of VMAF fashions (v1). See tech blog for extra data on v1. See models_v1.md for particulars and mannequin choice steering. The earlier technology of fashions (v0) stays documented in models_v0.md. We are open to person suggestions on VMAF v1 and can proceed to enhance and replace the fashions over time.
- (2023-12-07) We are releasing
libvmaf v3.0.0. It accommodates a number of optimizations and bug fixes, and a full removing of the APIs which have been deprecated inv2.0.0. - (2021-12-15) We have added to CAMBI the
full_refenter parameter to permit operating CAMBI as a full-reference metric, considering the banding that was already current on the supply. Check out the usage web page. - (2021-12-1) We have added to CAMBI the
max_log_contrastenter parameter to permit to seize banding with increased contrasts than the default. We have additionally sped up CAMBI (e.g., round 4.5x for 4k). Check out the usage web page. - (2021-10-7) We are open-sourcing CAMBI (Contrast Aware Multiscale Banding Index) – Netflix’s detector for banding (aka contouring) artifacts. Check out the tech blog for an outline and the technical paper revealed in PCS 2021 (be aware that the paper describes an preliminary model of CAMBI that now not matches the code precisely, however it’s nonetheless introduction). Also take a look at the usage web page.
- (2020-12-7) Check out our latest tech blog on velocity optimization, new API design and the introduction of a codec evaluation-friendly NEG mode.
- (2020-12-3) We are releasing
libvmaf v2.0.0. It has a brand new fixed-point and x86 SIMD-optimized (AVX2, AVX-512) implementation that achieves 2x velocity up in comparison with the earlier floating-point model. It additionally has a new API that’s extra versatile and extensible. - (2020-7-13) We have created a memo to share our ideas on VMAF’s property within the presence of picture enhancement operations, its influence on codec analysis, and our options. Accordingly, now we have added a brand new mode known as No Enhancement Gain (NEG).
- (2020-2-27) We have modified VMAF’s license from Apache 2.0 to BSD+Patent, a extra permissive license in comparison with Apache that additionally contains an categorical patent grant.
There is an overview of the documentation with hyperlinks to particular pages, masking FAQs, accessible fashions and options, software program utilization guides, and an inventory of sources.
The software program package deal provides a variety of methods to work together with the VMAF implementation.
- The command-line device
vmafsupplies a whole algorithm implementation, such that one can simply deploy VMAF in a manufacturing setting. Additionally, thevmafdevice supplies a variety of auxillary options reminiscent of PSNR, SSIM and MS-SSIM. - The C library
libvmafsupplies an interface to include VMAF into your code, and instruments to combine different function extractors into the library. - The Python library provides a full array of wrapper courses and scripts for software program testing, VMAF mannequin coaching and validation, dataset processing, knowledge visualization, and so on.
- VMAF is now included as a filter in FFmpeg, and will be configured utilizing:
./configure --enable-libvmaf. Refer to the Using VMAF with FFmpeg web page. - VMAF Dockerfile generates a docker picture from the Python library. Refer to this doc for detailed utilization.
- To construct VMAF on Windows, observe these directions.
- AOM CTC: AOM has specified vmaf to be the usual implementation metrics device in line with the AOM widespread take a look at situations (CTC). Refer to this page for utilization compliant with AOM CTC.
Refer to the contribution web page. Also check with this slide deck for an outline contribution information.

