# Reading option tables

Canonical URL: https://encode.wiki/reference/encoder-parameters/
Content version: ca42e61ede0a24f789d7287a0001244ad22f4abf
Status: current
License: CC BY-SA 4.0
Checksum (SHA-256): 7a411c4a1947a1befb07a0e5ae92638c42d6b1a55dcb8f267899fb0bd0793198

Each encoder and image-format page ends with a **Full option reference**: every option of one named
release, with its default and what it does. The practical guidance is at the top of each page; the
tables are for looking up a specific flag. This page explains how to read them.

## Where the tables are

| Area           | Pages                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| AV1 encoders   | [SVT-AV1](/tools/software-encoders/svt-av1/) and its forks ([HDR](/tools/software-encoders/svt-av1-hdr/), [PSY](/tools/software-encoders/svt-av1-psy/), [PSYEX](/tools/software-encoders/svt-av1-psyex/), [Essential](/tools/software-encoders/svt-av1-essential/), [5fish](/tools/software-encoders/svt-av1-5fish/)), [aomenc](/tools/software-encoders/aomenc/) and its forks ([AV1-lavish](/tools/software-encoders/aom-av1-lavish/), [aom-psy101](/tools/software-encoders/aom-psy101/)), [rav1e](/tools/software-encoders/rav1e/), [AVM](/tools/software-encoders/avm/) (AV2) |
| Other video    | [x264](/tools/software-encoders/x264/), [x265](/tools/software-encoders/x265/), [vpxenc](/tools/software-encoders/vpxenc/), [VVenC](/tools/software-encoders/vvenc/)                                                                                                                                                                                                                                                                                                                                                                                                               |
| Hardware       | [NVENC](/tools/hardware-encoders/nvenc/), [QSV](/tools/hardware-encoders/qsv/), [AMF](/tools/hardware-encoders/amf/), [VAAPI](/tools/hardware-encoders/vaapi/), [Vulkan](/tools/hardware-encoders/vulkan/), [MediaCodec](/tools/hardware-encoders/mediacodec/) (FFmpeg wrapper options)                                                                                                                                                                                                                                                                                            |
| Audio          | [Opus](/codecs/audio/opus/) (`opusenc`, `libopus`), [AAC](/codecs/audio/aac/) (FFmpeg `aac`, `libfdk_aac`, `fdkaac`), [qaac](/tools/software-encoders/qaac/), [exhale](/tools/software-encoders/exhale/)                                                                                                                                                                                                                                                                                                                                                                           |
| Images         | [AVIF](/codecs/images/avif/), [HEIC](/codecs/images/heic/), [JPEG XL](/codecs/images/jxl/), [WebP](/codecs/images/webp/), [JPEG](/codecs/images/jpeg/), [JPEG 2000](/codecs/images/jpeg2000/), [PNG](/codecs/images/png/), [GIF](/codecs/images/gif/), [QOI](/codecs/images/qoi/)                                                                                                                                                                                                                                                                                                  |
| Pipeline tools | [FFmpeg](/tools/utilities/ffmpeg/), [Av1an](/tools/utilities/av1an/), [MKVToolNix](/tools/utilities/mkvtoolnix/), [MP4Box](/tools/utilities/mp4box/), [dav1d](/tools/utilities/dav1d/), [dovi_tool](/tools/utilities/dovi_tool/), [hdr10plus_tool](/tools/utilities/hdr10plus_tool/) — the options that matter, not full inventories                                                                                                                                                                                                                                               |

Commercial SDKs such as [Eve-AV1](/tools/software-encoders/eve-av1/) and [Aurora1](/tools/software-encoders/aurora1/) publish no option reference.

A table covers one interface at one release. `aomenc`, `SvtAv1EncApp`, FFmpeg's `libsvtav1` wrapper
and a GPU driver accept different flags with different defaults, and a fork can change both, so check
the version named above the table against the one you run.

## What the Default column means

The Default column says what happens when you **omit** the option.

| Default shown             | Meaning                                                                                                                    |
| ------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| A value                   | The interface uses this value unless you override it.                                                                      |
| Automatic / sentinel      | A value is chosen later from the input, preset or hardware. `-1`, `0` and `auto` mean different things in different tools. |
| Preset- or tune-dependent | The preset or tune sets it; the row gives the value for the default preset where it matters.                               |
| Input- or mode-dependent  | Picture size, channel count, sample rate or rate-control mode changes it.                                                  |
| Unset                     | Nothing is passed, so the library's own behaviour applies. Not the same as zero.                                           |
| Required                  | You must supply it.                                                                                                        |

A displayed range can include sentinel values, so read the description before using an endpoint: `0`
often means "automatic" rather than "minimum". An option with an optional value can behave differently
when written bare — Gifsicle's omitted `--lossy` is 0, a bare `--lossy` means 20. Quality scales are
private to each encoder: CRF 30 in x264, SVT-AV1 and libvpx are three unrelated settings, and "quality
90" in two image encoders are not comparable.

## FFmpeg options that apply to every encoder

`ffmpeg -h encoder=<name>` lists only an encoder wrapper's private options. These generic options
apply to every encoder and are not repeated in the per-encoder tables:

| Option                                          | What it sets                                                                                         |
| ----------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `-b:v`, `-b:a`                                  | Target bitrate in bits/s (`5M`, `160k`).                                                             |
| `-maxrate`, `-minrate`, `-bufsize`              | Rate-control limits in bits/s and the VBV buffer in bits, for encoders and modes that honour them.   |
| `-g`, `-bf`, `-refs`                            | Maximum GOP length in frames, consecutive B-frames and reference frames.                             |
| `-q:v`, `-global_quality`, `-crf`, `-cq`, `-qp` | Quality controls. Which one an encoder uses, and its scale, is encoder-specific.                     |
| `-preset`, `-tune`, `-profile:v`, `-level:v`    | Encoder-specific names. A profile or level constrains compatibility; it is not a quality setting.    |
| `-pix_fmt`, `-ar`, `-ac`                        | Pixel format, audio sample rate in Hz and channel count. Setting them converts if the input differs. |
| `-threads`                                      | Requested threads; encoders may cap or ignore it.                                                    |

Use stream specifiers (`-b:v:0`, `-c:a:1`) when an option could match several streams. Library
pass-through strings such as `-svtav1-params`, `-x264-params` and `-x265-params` use the library's own
`key=value:key=value` syntax, not the standalone command-line spelling.
