Skip to content

A Python tool to automate video encoding with HEVC HM, VVC VTM and VVC vvenc and extract metrics from encoder output and libVMAF.

Notifications You must be signed in to change notification settings

DavidLangmeier/encAlot

Repository files navigation

encAlot 1.0

Install.py:
Use to download codecs first.

encAlot.py:
usage: encAlot.py -enc 'encoder' -sc 'sequence_config' -fn 'filename' -tbr 'targetbitrate1, targetbitrate2, ...' -pre 'preset' -thr 'threads'

'encoder' has to be 'hm', 'vtm' or 'vvenc'
'sequence_config' is the sequence specific configuration, has to be at /encAlot/videoSources. There is an example config there.
'filename' will be the Prefix of the encoding output filenames, use for better identification of encodings (i.e. short version of source sequence).
'targetbitrates' are the desired bitrates for the encodings in bytes per second. Provide 1-n bitrates for 1-n encodings.
'preset' is only required when using vvenc. Has to be 'faster', 'fast', 'medium', 'slow' or 'slower'. Provide 1-5 presets.
'threads' is only required when using vvenc and sets the number of threads for multi-threaded encoding. Default is 1.

GetMetrics.py:
Use to extract encoding runtime and actual bitrate of all encodings in folder /encAlot/encodingOutput. The scripts also supports extracting VMAF, PSNR and MS-SSIM from xml-files generated with libVMAF. The values are written to a csv-file for further examination.

About

A Python tool to automate video encoding with HEVC HM, VVC VTM and VVC vvenc and extract metrics from encoder output and libVMAF.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages