How to Install libsvtav1 on Linux

This article provides a quick, step-by-step guide on how to install the SVT-AV1 (libsvtav1) encoder on modern Linux distributions. It covers installation using standard package managers for Ubuntu, Debian, Fedora, and Arch Linux, as well as instructions for compiling the latest version directly from the official source code.

Installing via Package Managers

Most modern Linux distributions include pre-compiled packages for SVT-AV1 in their official repositories.

Ubuntu and Debian

On Ubuntu 20.04+ and Debian 11+, you can install the library and its development headers using apt.

sudo apt update
sudo apt install libsvtav1-dev libsvtav1-bin

Fedora

On Fedora, the package is available in the default repositories under svt-av1.

sudo dnf install svt-av1 svt-av1-devel

Arch Linux

On Arch Linux, the package is available in the Extra repository.

sudo pacman -S svt-av1

Because AV1 encoding technology is evolving rapidly, the versions in distribution repositories may be outdated. Compiling from source ensures you get the latest performance optimizations and features.

1. Install Build Dependencies

You will need a C compiler, CMake, Git, and a modern version of NASM (version 2.14 or newer is required).

Ubuntu/Debian:

sudo apt update
sudo apt install git cmake gcc g++ nasm

Fedora:

sudo dnf install git cmake gcc gcc-c++ nasm

Arch Linux:

sudo pacman -S git cmake gcc nasm

2. Clone and Build SVT-AV1

Clone the official repository from the Alliance for Open Media (AOMedia) GitLab instance, configure the build, and compile the binaries.

# Clone the repository
git clone https://gitlab.com/AOMediaCodec/SVT-AV1.git
cd SVT-AV1

# Create and enter the build directory
cd Build/linux
./build.sh release

3. Install the Compiled Binaries

Once the build completes successfully, navigate to the release directory and install the libraries and executable to your system.

cd release
sudo make install

4. Update the Shared Library Cache

After manual installation, update the system’s links and cache to ensure the dynamic linker can find the new libsvtav1 library.

sudo ldconfig

To verify the installation, you can run the standalone encoder to check the version:

SvtAv1EncApp --version