Configure SVT-AV1 Screen Content Detection in FFmpeg

This guide explains how to configure and optimize screen content detection in the SVT-AV1 (libsvtav1) encoder using FFmpeg. You will learn the specific command-line parameters required to enable, disable, or set screen content coding to automatic, helping you achieve better compression efficiency and visual quality when encoding desktop recordings, presentations, or gaming content.

Understanding Screen Content Mode in SVT-AV1

SVT-AV1 includes specialized encoding tools designed specifically for screen content, which typically features sharp edges, high-contrast text, and large areas of flat color. The parameter used to control this feature is screen-content-mode.

This parameter accepts three distinct values:

Using the Parameter in FFmpeg

To pass SVT-AV1-specific parameters through FFmpeg, you must use the -svtav1-params flag. Multiple parameters inside this flag are separated by colons.

Force Screen Content Mode On (Value: 1)

If you are encoding a video that is entirely a screen recording (such as a coding tutorial or a PowerPoint presentation), force the screen content mode on to maximize quality and compression:

ffmpeg -i input.mp4 -c:v libsvtav1 -crf 30 -svtav1-params screen-content-mode=1 output.mkv

Enable Automatic Screen Content Detection (Value: 2)

If your video contains a mix of real-world camera footage and screen recordings, or if you want the encoder to decide per-frame, set the mode to automatic:

ffmpeg -i input.mp4 -c:v libsvtav1 -crf 30 -svtav1-params screen-content-mode=2 output.mkv

Disable Screen Content Mode (Value: 0)

To ensure that no screen content tools are used (which can save computational overhead during encoding for purely cinematic or natural camera footage):

ffmpeg -i input.mp4 -c:v libsvtav1 -crf 30 -svtav1-params screen-content-mode=0 output.mkv

Additional Optimizations

When encoding screen content, combining screen-content-mode with other parameters can yield better results:

ffmpeg -i input.mp4 -c:v libsvtav1 -crf 25 -svtav1-params screen-content-mode=1:tune=0 output.mkv