Configure libsvtav1 Tier Parameter in FFmpeg

This article provides a quick guide on how to configure the tier parameter for the SVT-AV1 (libsvtav1) encoder in FFmpeg. You will learn the difference between the main and high tiers, the exact FFmpeg command-line syntax required to set this parameter, and how configuring the tier ensures compatibility with target hardware decoders.

Understanding the Tier Parameter

In AV1 video encoding, "tiers" define the maximum bitrate and buffer capabilities required by a decoder to play back a stream. SVT-AV1 supports two tier levels:

  • Main Tier (main): This is the default setting. It is designed for standard consumer applications, streaming services, and playback on typical consumer hardware (like phones, TVs, and streaming sticks) which have limited processing and memory bandwidth.
  • High Tier (high): This tier supports much higher bitrates and is intended for professional applications, high-end editing workflows, and devices capable of handling demanding decoding tasks.

How to Configure the Tier in FFmpeg

FFmpeg allows you to configure the tier parameter using the -svtav1-params flag. This flag passes key-value pairs directly to the underlying SVT-AV1 library.

The syntax for setting the tier parameter is: -svtav1-params tier=[value]

Where [value] can be either main or high.

Example Command Lines

Setting the Main Tier (Default)

To encode a video to AV1 using the Main tier (ideal for maximum device compatibility):

ffmpeg -i input.mp4 -c:v libsvtav1 -preset 4 -crf 26 -svtav1-params tier=main output.mkv

Setting the High Tier

To encode a video using the High tier (ideal for high-bitrate, high-quality archival or professional use):

ffmpeg -i input.mp4 -c:v libsvtav1 -preset 4 -crf 18 -svtav1-params tier=high output.mkv

Passing Multiple SVT-AV1 Parameters

If you need to configure the tier alongside other SVT-AV1 specific parameters (such as the profile or level), separate each parameter with a colon (:) within the -svtav1-params option:

ffmpeg -i input.mp4 -c:v libsvtav1 -preset 4 -crf 22 -svtav1-params tier=main:profile=main:level=4.0 output.mkv