Files
2025-08-01 17:02:16 +03:00

4.7 KiB

Auto-Boost-Essential

Auto-Boost-Essential is the latest iteration of the Auto-Boost formula, streamlined and refined for greater convenience, speeds and boosting gains!

This encoding script is intended to be paired with my SVT-AV1-Essential encoder fork.
SVT-AV1-Essential sports excellent quality consistency, but Auto-Boost-Essential offers exceptional consistency!

Here is how it works: the script runs a first encoder fass-pass, finds scenes based on the introduced keyframes, calculate metrics scores, automatically adjusts the CRF of scenes in order to increase quality consistency and then runs a final-pass with these adjustements.

The quality metric at play this time again is SSIMULACRA2.

Dependencies

Before using Auto-Boost-Essential, you will need to install the following dependencies:

Lost users can refer to this Vapoursynth install guide (up until "Installing the JET Packages"). If you are still lost, join the Discord server linked below and ask for help!

Arch users can run this single command to install everything:

yay -S svt-av1-essential-git vapoursynth-plugin-vsjetpack vapoursynth-plugin-vship-cuda-git vapoursynth-plugin-vszip-git ffms2

Radeon users can simply replace vapoursynth-plugin-vship-cuda-git with vapoursynth-plugin-vship-amd-git .

Usage

Auto-Boost-Essential can be considered a helper script, as all you need to do is provide an input video file and it will manage everything for you:

python Auto-Boost-Essential.py "my_video_file.mp4"

Even though the above command is sufficient to run the script, one may use additional parameters to tweak the experience, for instance:

Parameter Usage
--version Print script version
--verbose Enable more verbosity [Default: not active]
--input Video input filepath (original source file)
--temp The temporary directory for the script to store files in [Default: video input filename]
--no-boosting Runs the script without boosting (final encode only) [Default: not active]
--resume Resume the process from the last (un)completed stage [Default: not active]
--stage Select stage: 1 = fast encode, 2 = calculate metrics, 3 = generate zones, 4 = final encode [Default: all]
--cpu Force the usage of vs-zip (CPU) instead of Vship (GPU) [Default: not active]
--fast-speed Fast encode speed (Allowed: medium, fast, faster) [Default: faster]
--final-speed Final encode speed (Allowed: slower, slow, medium, fast, faster) [Default: slow]
--quality Base encoder --quality (Allowed: low, medium, high) [Default: medium]
--aggressive More aggressive boosting [Default: not active]
--unshackle Less restrictive boosting [Default: not active]
--fast-params Custom fast encoding parameters
--final-params Custom final encoding parameters

Yes, the script is even capable of resuming unfinished encodes like Av1an, and can also be run with boosting disabled if all you care is the convenience of a SVT-AV1-Essential wrapper.

Contribute

The script is open to contributions!
Namely, I'm looking to improve the boosting logic to increase consistency further, with little to no additional performance implications.
Code refactors for clean-up and fixes are also appreciated!

Benchmarks:

Metrics Speed
Metrics Speed
Metrics Speed

Speed may vary depending on your hardware configuration and source resolution.

The above results are not even best-case scenarios. The selected samples are very complex. More gains are expected on your average clip, granted it contains more than one scene at a minimum!

Join us over at AV1 weeb edition!