Obtain the VMAF (Video Multi-Method Assessment Fusion) score between two input videos.
The obtained VMAF score is printed through the logging system.
It requires Netflix’s vmaf library (libvmaf) as a pre-requisite.
After installing the library it can be enabled using:
./configure --enable-libvmaf --enable-version3
.
If no model path is specified it uses the default model: vmaf_v0.6.1.pkl
.
The filter has following options:
- model_path
-
Set the model path which is to be used for SVM. Default value:
"vmaf_v0.6.1.pkl"
- log_path
-
Set the file path to be used to store logs.
- log_fmt
-
Set the format of the log file (xml or json).
- enable_transform
-
This option can enable/disable the
score_transform
applied to the final predicted VMAF score, if you have specified score_transform option in the input parameter file passed torun_vmaf_training.py
Default value:false
- phone_model
-
Invokes the phone model which will generate VMAF scores higher than in the regular model, which is more suitable for laptop, TV, etc. viewing conditions.
- psnr
-
Enables computing psnr along with vmaf.
- ssim
-
Enables computing ssim along with vmaf.
- ms_ssim
-
Enables computing ms_ssim along with vmaf.
- pool
-
Set the pool method (mean, min or harmonic mean) to be used for computing vmaf.
- n_threads
-
Set number of threads to be used when computing vmaf.
- n_subsample
-
Set interval for frame subsampling used when computing vmaf.
- enable_conf_interval
-
Enables confidence interval.
This filter also supports the framesync options.
On the below examples the input file main.mpg being processed is compared with the reference file ref.mpg.
ffmpeg -i main.mpg -i ref.mpg -lavfi libvmaf -f null -
Example with options:
ffmpeg -i main.mpg -i ref.mpg -lavfi libvmaf="psnr=1:log_fmt=json" -f null -