{
  "schemaVersion": 1,
  "contentVersion": "ca42e61ede0a24f789d7287a0001244ad22f4abf",
  "id": "docs/reference/encoder-parameters",
  "collection": "docs",
  "title": "Reading option tables",
  "description": "Where each tool's full option table lives, what the Default column means, and which FFmpeg options apply to every encoder.",
  "canonicalUrl": "https://encode.wiki/reference/encoder-parameters/",
  "apiUrl": "https://encode.wiki/api/v1/documents/docs/reference/encoder-parameters.json",
  "markdownUrl": "https://encode.wiki/api/v1/markdown/docs/reference/encoder-parameters.md",
  "status": "current",
  "tags": [],
  "license": "CC BY-SA 4.0",
  "dates": {
    "lastVerified": "2026-10-08T00:00:00.000Z"
  },
  "authors": [],
  "sources": [
    {
      "title": "FFmpeg codec options and encoder interfaces",
      "url": "https://ffmpeg.org/ffmpeg-codecs.html",
      "accessedAt": "2026-10-08T00:00:00.000Z"
    },
    {
      "title": "FFmpeg 9.0.2 generic codec option declarations",
      "url": "https://github.com/FFmpeg/FFmpeg/blob/n9.0.2/libavcodec/options_table.h",
      "accessedAt": "2026-10-08T00:00:00.000Z"
    },
    {
      "title": "Gifsicle manual",
      "url": "https://www.lcdf.org/gifsicle/man.html",
      "accessedAt": "2026-10-08T00:00:00.000Z"
    }
  ],
  "headings": [
    {
      "depth": 2,
      "text": "Where the tables are",
      "anchor": "where-the-tables-are"
    },
    {
      "depth": 2,
      "text": "What the Default column means",
      "anchor": "what-the-default-column-means"
    },
    {
      "depth": 2,
      "text": "FFmpeg options that apply to every encoder",
      "anchor": "ffmpeg-options-that-apply-to-every-encoder"
    }
  ],
  "sections": [
    {
      "id": "_preamble",
      "title": "Page introduction",
      "depth": 0,
      "canonicalUrl": "https://encode.wiki/reference/encoder-parameters/",
      "apiUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/_preamble.json",
      "markdownUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/_preamble.md",
      "checksum": "32acee2d5ad077d33523010472d8dd512c9cdeaa3b5876a9d4626ff740a66bde",
      "bytes": 279
    },
    {
      "id": "where-the-tables-are",
      "title": "Where the tables are",
      "depth": 2,
      "anchor": "where-the-tables-are",
      "canonicalUrl": "https://encode.wiki/reference/encoder-parameters/#where-the-tables-are",
      "apiUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/where-the-tables-are.json",
      "markdownUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/where-the-tables-are.md",
      "checksum": "20ae4623d97b2ddf0f361fb4c03d710275e4821a71065fe6218866cb035f28ce",
      "bytes": 5109
    },
    {
      "id": "what-the-default-column-means",
      "title": "What the Default column means",
      "depth": 2,
      "anchor": "what-the-default-column-means",
      "canonicalUrl": "https://encode.wiki/reference/encoder-parameters/#what-the-default-column-means",
      "apiUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/what-the-default-column-means.json",
      "markdownUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/what-the-default-column-means.md",
      "checksum": "21690ecc5e24c70063a0a25f15f8a8aa8d4afc6a2eba68aa2c5ccdca4f93518a",
      "bytes": 1799
    },
    {
      "id": "ffmpeg-options-that-apply-to-every-encoder",
      "title": "FFmpeg options that apply to every encoder",
      "depth": 2,
      "anchor": "ffmpeg-options-that-apply-to-every-encoder",
      "canonicalUrl": "https://encode.wiki/reference/encoder-parameters/#ffmpeg-options-that-apply-to-every-encoder",
      "apiUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/ffmpeg-options-that-apply-to-every-encoder.json",
      "markdownUrl": "https://encode.wiki/api/v1/sections/docs/reference/encoder-parameters/ffmpeg-options-that-apply-to-every-encoder.md",
      "checksum": "dec609989dbc7146135cb103817d154d84be750aab313e89d352856fd6d689e1",
      "bytes": 1883
    }
  ],
  "outboundReferences": [
    "/codecs/audio/aac/",
    "/codecs/audio/opus/",
    "/codecs/images/avif/",
    "/codecs/images/gif/",
    "/codecs/images/heic/",
    "/codecs/images/jpeg/",
    "/codecs/images/jpeg2000/",
    "/codecs/images/jxl/",
    "/codecs/images/png/",
    "/codecs/images/qoi/",
    "/codecs/images/webp/",
    "/tools/hardware-encoders/amf/",
    "/tools/hardware-encoders/mediacodec/",
    "/tools/hardware-encoders/nvenc/",
    "/tools/hardware-encoders/qsv/",
    "/tools/hardware-encoders/vaapi/",
    "/tools/hardware-encoders/vulkan/",
    "/tools/software-encoders/aom-av1-lavish/",
    "/tools/software-encoders/aom-psy101/",
    "/tools/software-encoders/aomenc/",
    "/tools/software-encoders/aurora1/",
    "/tools/software-encoders/avm/",
    "/tools/software-encoders/eve-av1/",
    "/tools/software-encoders/exhale/",
    "/tools/software-encoders/qaac/",
    "/tools/software-encoders/rav1e/",
    "/tools/software-encoders/svt-av1-5fish/",
    "/tools/software-encoders/svt-av1-essential/",
    "/tools/software-encoders/svt-av1-hdr/",
    "/tools/software-encoders/svt-av1-psy/",
    "/tools/software-encoders/svt-av1-psyex/",
    "/tools/software-encoders/svt-av1/",
    "/tools/software-encoders/vpxenc/",
    "/tools/software-encoders/vvenc/",
    "/tools/software-encoders/x264/",
    "/tools/software-encoders/x265/",
    "/tools/utilities/av1an/",
    "/tools/utilities/dav1d/",
    "/tools/utilities/dovi_tool/",
    "/tools/utilities/ffmpeg/",
    "/tools/utilities/hdr10plus_tool/",
    "/tools/utilities/mkvtoolnix/",
    "/tools/utilities/mp4box/"
  ],
  "checksum": "7a411c4a1947a1befb07a0e5ae92638c42d6b1a55dcb8f267899fb0bd0793198",
  "contentFormat": "markdown",
  "markdown": "Each encoder and image-format page ends with a **Full option reference**: every option of one named\nrelease, with its default and what it does. The practical guidance is at the top of each page; the\ntables are for looking up a specific flag. This page explains how to read them.\n\n## Where the tables are\n\n| Area           | Pages                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |\n| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| 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) |\n| Other video    | [x264](/tools/software-encoders/x264/), [x265](/tools/software-encoders/x265/), [vpxenc](/tools/software-encoders/vpxenc/), [VVenC](/tools/software-encoders/vvenc/)                                                                                                                                                                                                                                                                                                                                                                                                               |\n| 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)                                                                                                                                                                                                                                                                                            |\n| 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/)                                                                                                                                                                                                                                                                                                                                                                           |\n| 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/)                                                                                                                                                                                                                                                                                                  |\n| 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                                                                                                                                                                                                                                               |\n\nCommercial SDKs such as [Eve-AV1](/tools/software-encoders/eve-av1/) and [Aurora1](/tools/software-encoders/aurora1/) publish no option reference.\n\nA table covers one interface at one release. `aomenc`, `SvtAv1EncApp`, FFmpeg's `libsvtav1` wrapper\nand a GPU driver accept different flags with different defaults, and a fork can change both, so check\nthe version named above the table against the one you run.\n\n## What the Default column means\n\nThe Default column says what happens when you **omit** the option.\n\n| Default shown             | Meaning                                                                                                                    |\n| ------------------------- | -------------------------------------------------------------------------------------------------------------------------- |\n| A value                   | The interface uses this value unless you override it.                                                                      |\n| Automatic / sentinel      | A value is chosen later from the input, preset or hardware. `-1`, `0` and `auto` mean different things in different tools. |\n| Preset- or tune-dependent | The preset or tune sets it; the row gives the value for the default preset where it matters.                               |\n| Input- or mode-dependent  | Picture size, channel count, sample rate or rate-control mode changes it.                                                  |\n| Unset                     | Nothing is passed, so the library's own behaviour applies. Not the same as zero.                                           |\n| Required                  | You must supply it.                                                                                                        |\n\nA displayed range can include sentinel values, so read the description before using an endpoint: `0`\noften means \"automatic\" rather than \"minimum\". An option with an optional value can behave differently\nwhen written bare — Gifsicle's omitted `--lossy` is 0, a bare `--lossy` means 20. Quality scales are\nprivate to each encoder: CRF 30 in x264, SVT-AV1 and libvpx are three unrelated settings, and \"quality\n90\" in two image encoders are not comparable.\n\n## FFmpeg options that apply to every encoder\n\n`ffmpeg -h encoder=<name>` lists only an encoder wrapper's private options. These generic options\napply to every encoder and are not repeated in the per-encoder tables:\n\n| Option                                          | What it sets                                                                                         |\n| ----------------------------------------------- | ---------------------------------------------------------------------------------------------------- |\n| `-b:v`, `-b:a`                                  | Target bitrate in bits/s (`5M`, `160k`).                                                             |\n| `-maxrate`, `-minrate`, `-bufsize`              | Rate-control limits in bits/s and the VBV buffer in bits, for encoders and modes that honour them.   |\n| `-g`, `-bf`, `-refs`                            | Maximum GOP length in frames, consecutive B-frames and reference frames.                             |\n| `-q:v`, `-global_quality`, `-crf`, `-cq`, `-qp` | Quality controls. Which one an encoder uses, and its scale, is encoder-specific.                     |\n| `-preset`, `-tune`, `-profile:v`, `-level:v`    | Encoder-specific names. A profile or level constrains compatibility; it is not a quality setting.    |\n| `-pix_fmt`, `-ar`, `-ac`                        | Pixel format, audio sample rate in Hz and channel count. Setting them converts if the input differs. |\n| `-threads`                                      | Requested threads; encoders may cap or ignore it.                                                    |\n\nUse stream specifiers (`-b:v:0`, `-c:a:1`) when an option could match several streams. Library\npass-through strings such as `-svtav1-params`, `-x264-params` and `-x265-params` use the library's own\n`key=value:key=value` syntax, not the standalone command-line spelling.\n"
}
