How to Encode 10-bit Video with libaom?

Encoding high-quality 10-bit AV1 video using the libaom-av1 encoder requires explicitly defining the bit depth, pixel format, and profile to ensure the encoder doesn’t default to standard 8-bit output. This article covers the essential FFmpeg command-line arguments needed to trigger 10-bit encoding, explains the key parameters, and provides a complete, production-ready command example.

Required Command-Line Arguments

To achieve a true 10-bit encode using libaom within FFmpeg, you must specify three primary arguments:

Example FFmpeg Command

Below is a standard command-line configuration that combines these required arguments with optimal quality settings for a 10-bit AV1 encode:

ffmpeg -i input.mp4 -c:v libaom-av1 -strict -2 -pix_fmt yuv420p10le -profile:v 0 -crf 24 -b:v 0 -cpu-used 4 output.mkv

Key Parameter Breakdown