Skip to content

vmaf: create new VMAF plugin

Casey Bateman requested to merge Casey-Bateman/gstreamer:VMAFPlugin20Api into main


Simply a plugin that allows the retrieval of VMAF scores on the frame and stream level. The plugin takes multiple sink elements. The first sink element is the source image, and all remaining sink elements are the distorted images.

The plugin is coded against the libvmaf 2.0 API. As such it requires that libvmaf > 2.0 be installed for the plugin to compile.

Scores can be obtained through listening on the message bus for frame or pooled results. This type can be determined by looking at the VMAF.type setting in the message structure to determine a type of MESSAGE_TYPE_FRAME or MESSAGE_TYPE_POOLED.

The results can also be obtained by specifying a log-filename so that the results can be saved to disk. The log formats are csv, json, xml. The log filename accepts single index format, filename%05d.json so that the logs can be written by stream index for the distorted stream that the scores are for.

Edited by Casey Bateman

Merge request reports