Scroll to navigation

AOMENC(1) User Commands AOMENC(1)


aomenc - AOMedia Project AV1 Encoder


aomenc <options> -o dst_filename src_filename


Show usage options and exit
Config file to use
Debug mode (makes output deterministic)
Output filename
Codec to use
Number of passes (1/2/3)
Pass to execute (1/2/3)
First pass statistics file name
Stop encoding after n input frames
Skip the first n input frames
Use Good Quality Deadline
Use Realtime Quality Deadline
Use all intra mode
Do not print encode progress
Show encoder parameters
Show PSNR in status line (0: Disable PSNR status line display, 1: PSNR calculated using input bit-depth (default), 2: PSNR calculated using stream bit-depth); takes default option when arguments are not specified
Output WebM (default when WebM IO is enabled)
Output IVF
Output OBU
Show quantizer histogram (n-buckets)
Show rate histogram (n-buckets)
Disable warnings about potentially incorrect encode settings
Display warnings, but do not prompt user to continue
Test encode/decode mismatch
off, fatal, warn

Encoder Global Options:

Input file is NV12
Input file is YV12
Input file is I420 (default)
Input file is I422
Input file is I444
Usage profile number to use (0: good, 1: rt, 2: allintra)
Max number of threads to use
Bitstream profile number to use
Frame width
Frame height
Maximum frame width value to force
Maximum frame height value to force
Stereo 3D video format
mono, left-right, bottom-top, top-bottom, right-left
Output timestamp precision (fractional seconds)
Stream frame rate (rate/scale)
Enable global error resiliency features
Bit depth for codec 8, 10, 12
Bit depth of input
Max number of frames to lag
Large scale tile coding (0: off (default), 1: on (ivf output only))
Monochrome video (no chroma planes)
Use full header for still picture
Force use of 16-bit pipeline
Save as Annex-B

Rate Control Options:

Temporal resampling threshold (buf %)
Frame resize mode (0: off (default), 1: fixed, 2: random, 3: dynamic)
Frame resize denominator
Frame resize keyframe denominator
Frame super-resolution mode (0: disabled (default), 1: fixed, 2: random, 3: qthresh, 4: auto)
Frame super-resolution denominator
Frame super-resolution keyframe denominator
Frame super-resolution qindex threshold
--superres-kf-qthresh=<arg> Frame super-resolution keyframe qindex threshold --end-usage=<arg> Rate control mode
vbr, cbr, cq, q
Bitrate (kbps)
Minimum (best) quantizer
Maximum (worst) quantizer
Datarate undershoot (min) target (%)
Datarate overshoot (max) target (%)
Client buffer size (ms)
Client initial buffer size (ms)
Client optimal buffer size (ms)
CBR/VBR bias (0=CBR, 100=VBR)
GOP min bitrate (% of target)
GOP max bitrate (% of target)

Keyframe Placement Options:

Enable forward reference keyframes
Minimum keyframe interval (frames)
Maximum keyframe interval (frames)
Disable keyframe placement
S-Frame interval (frames)
S-Frame insertion mode (1..2)

AV1 Specific Options:

Speed setting (0..6 in good mode, 5..10 in realtime mode, 0..9 in all intra mode)
Enable automatic alt reference frames
Bias towards block sharpness in rate-distortion optimization of transform coefficients (0..7), default is 0
Motion detection threshold
Enable row based multi-threading (0: off, 1: on (default))
Enable frame parallel multi-threading (0: off (default), 1: on)
Number of tile columns to use, log2
Number of tile rows to use, log2
RDO based on frame temporal dependency (0: off, 1: backward source based); required for deltaq mode
Apply temporal filtering on key frame (0: no filter, 1: filter without overlay (default), 2: filter with overlay - experimental, may break random access in players)
AltRef max frames (0..15)
AltRef filter strength (0..6)
Distortion metric tuned with
psnr, ssim, vmaf_with_preprocessing, vmaf_without_preprocessing, vmaf, vmaf_neg, butteraugli, vmaf_saliency_map
Constant/Constrained Quality level
Max I-frame bitrate (pct)
Max P-frame bitrate (pct)
Boost for Golden Frame in CBR mode (pct)
Lossless mode (0: false (default), 1: true)
Enable the constrained directional enhancement filter (0: false, 1: true (default), 2: disable for non-reference frames)
Enable the loop restoration filter (0: false (default in realtime mode), 1: true (default in non-realtime mode))
Enable rectangular partitions (0: false, 1: true (default))
Enable ab partitions (0: false, 1: true (default))
Enable 1:4 and 4:1 partitions (0: false, 1: true (default))
Set min partition size (4:4x4, 8:8x8, 16:16x16, 32:32x32, 64:64x64, 128:128x128); with 4k+ resolutions or higher speed settings, min partition size will have a minimum of 8
Set max partition size (4:4x4, 8:8x8, 16:16x16, 32:32x32, 64:64x64, 128:128x128)
Enable dual filter (0: false, 1: true (default))
Enable chroma delta quant (0: false (default), 1: true)
Enable intra edge filtering (0: false, 1: true (default))
Enable order hint (0: false, 1: true (default))
Enable 64-pt transform (0: false, 1: true (default))
Enable extended transform type (0: false, 1: true (default)) including FLIPADST_DCT, DCT_FLIPADST, FLIPADST_FLIPADST, ADST_FLIPADST, FLIPADST_ADST, IDTX, V_DCT, H_DCT, V_ADST, H_ADST, V_FLIPADST, H_FLIPADST
Enable rectangular transform (0: false, 1: true (default))
Enable distance-weighted compound (0: false, 1: true (default))
Enable masked (wedge/diff-wtd) compound (0: false, 1: true (default))
Enable one sided compound (0: false, 1: true (default))
Enable interintra compound (0: false, 1: true (default))
Enable smooth interintra mode (0: false, 1: true (default))
Enable difference-weighted compound (0: false, 1: true (default))
Enable interinter wedge compound (0: false, 1: true (default))
Enable interintra wedge compound (0: false, 1: true (default))
Enable global motion (0: false, 1: true (default))
Enable local warped motion (0: false, 1: true (default))
--enable-filter-intra=<arg> Enable filter intra prediction mode (0: false, 1: true (default)) --enable-smooth-intra=<arg> Enable smooth intra prediction modes (0: false, 1: true (default)) --enable-paeth-intra=<arg> Enable Paeth intra prediction mode (0: false, 1: true (default)) --enable-cfl-intra=<arg> Enable chroma from luma intra prediction mode (0: false, 1: true (default)) --enable-diagonal-intra=<arg>
Enable diagonal (D45 to D203) intra prediction modes, which are a subset of directional modes; has no effect if enable-directional-intra is 0 (0: false, 1: true (default))
Force video mode even for a single frame (0: false (default), 1: true)
Enable OBMC (0: false, 1: true (default))
Enable coding overlay frames (0: false, 1: true (default))
Enable palette prediction mode (0: false, 1: true (default))
Enable intra block copy prediction mode (0: false, 1: true (default))
Enable intra angle delta (0: false, 1: true (default))
Disable trellis optimization of quantized coefficients (0: false 1: true 2: true for rd search 3: true for estimate yrd search (default))
Enable quantisation matrices (0: false (default), 1: true)
Min quant matrix flatness (0..15), default is 8
Max quant matrix flatness (0..15), default is 15
--reduced-tx-type-set=<arg> Use reduced set of transform types --use-intra-dct-only=<arg> Use DCT only for INTRA modes --use-inter-dct-only=<arg> Use DCT only for INTER modes --use-intra-default-tx-only=<arg>
Use Default-transform only for INTRA modes
Use adaptive quantize_b
--coeff-cost-upd-freq=<arg> Update freq for coeff costs. 0: SB, 1: SB Row per Tile, 2: Tile, 3: Off --mode-cost-upd-freq=<arg> Update freq for mode costs. 0: SB, 1: SB Row per Tile, 2: Tile, 3: Off --mv-cost-upd-freq=<arg> Update freq for mv costs. 0: SB, 1: SB Row per Tile, 2: Tile, 3: Off --frame-parallel=<arg> Enable frame parallel decodability features (0: false (default), 1: true) --error-resilient=<arg> Enable error resilient features (0: false (default), 1: true) --aq-mode=<arg> Adaptive quantization mode (0: off (default), 1: variance 2: complexity, 3: cyclic refresh) --deltaq-mode=<arg> Delta qindex mode (0: off, 1: deltaq objective (default), 2: deltaq placeholder, 3: key frame visual quality, 4: user rating based visual quality optimization); requires --enable-tpl-model=1 --deltaq-strength=<arg> Deltaq strength for --deltaq-mode=4 (%) --delta-lf-mode=<arg> Enable delta-lf-mode (0: off (default), 1: on) --frame-boost=<arg> Enable frame periodic boost (0: off (default), 1: on) --noise-sensitivity=<arg> Noise sensitivity (frames to blur) --tune-content=<arg> Tune content type
default, screen, film
CDF update mode for entropy coding (0: no CDF update, 1: update CDF on all frames (default), 2: selectively update CDF on some frames)
Color primaries (CICP) of input content:
bt709, unspecified, bt601, bt470m, bt470bg, smpte240, film, bt2020, xyz, smpte431, smpte432, ebu3213
Transfer characteristics (CICP) of input content:
unspecified, bt709, bt470m, bt470bg, bt601, smpte240, lin, log100, log100sq10, iec61966, bt1361, srgb, bt2020-10bit, bt2020-12bit, smpte2084, hlg, smpte428
identity, bt709, unspecified, fcc73, bt470bg, bt601, smpte240, ycgco, bt2020ncl, bt2020cl, smpte2085, chromncl, chromcl, ictcp
The chroma sample position when chroma 4:2:0 is signaled:
unknown, vertical, colocated
Min gf/arf frame interval (default 0, indicating in-built behavior)
Max gf/arf frame interval (default 0, indicating in-built behavior)
Min height for GF group pyramid structure (0 (default) to 5)
Maximum height for GF group pyramid structure (0 to 5 (default))
Superblock size to use
dynamic, 64, 128
Maximum number of tile groups, default is 1
MTU size for a tile group, default is 0 (no MTU targeting), overrides maximum number of tile groups
Signal timing info in the bitstream (model only works for no hidden frames, no super-res yet):
unspecified, constant, model
Film grain test vectors (0: none (default), 1: test-1 2: test-2, ... 16: test-16)
Path to file containing film grain parameters
--denoise-noise-level=<arg> Amount of noise (from 0 = don't denoise, to 50) --denoise-block-size=<arg> Denoise block size (default = 32) --enable-dnl-denoising=<arg>
Apply denoising to the frame being encoded when denoise-noise-level is enabled (0: false, 1: true (default))
Maximum number of reference frames allowed per frame (3 to 7 (default))
Use reduced set of single and compound references (0: off (default), 1: on)
Enable temporal mv prediction (default is 1)
Target sequence level index. Possible values are in the form of "ABxy". AB: Operating point (OP) index, xy: Target level index for the OP. E.g. "0" means target level index 0 (2.0) for the 0th OP, "1019" means target level index 19 (6.3) for the 10th OP.
Set bit mask to specify which tier each of the 32 possible operating points conforms to. Bit value 0 (default): Main Tier, 1: High Tier.
Set minimum compression ratio. Take integer values. Default is 0. If non-zero, encoder will try to keep the compression ratio of each frame to be higher than the given value divided by 100.
Set average corpus complexity per mb for single pass VBR using lap. (0..10000), default is 0
Chroma subsampling x value
Chroma subsampling y value
Update freq for dv costs. 0: SB, 1: SB Row per Tile, 2: Tile, 3: Off
--partition-info-path=<arg> Partition information read and write path --enable-rate-guide-deltaq=<arg>
Enable rate guide deltaq (1), by default off (0). It requires --deltaq-mode=3. If turned on, it requires an input file specified by --rate-distribution-info.
Rate distribution information input.It requires --enable-rate-guide-deltaq=1.
Enable directional intra prediction modes (0: false, 1: true (default))
Enable transform size search to find the best size for each block. If false, transforms always have the largest possible size (0: false, 1: true (default)). Ignored in non rd pick mode in real-time coding.
Control loop filtering (0: Loopfilter disabled for all frames, 1: Enable loopfilter for all frames (default), 2: Disable loopfilter for non-reference frames, 3: Disable loopfilter for frames with low motion)
Automatically turn off several intra coding tools for allintra mode; only in effect if --deltaq-mode=3
Number of passes (1/2/3)
The output file for the first two passes for three-pass encoding
Log file from second pass
Set distance between forward keyframes. A value of -1 (default) means no repetitive forward keyframes.
When set to 1, exit the encoder when it fails to encode to a given target level
When set to 1, enable the superblock level qp sweep for a given lambda to minimize the rdcost.
Distortion metric to use for in-block optimization
psnr, qm-psnr
Maximum height of pyramid structure used for the GOP starting with a key frame (-1 to 5). When set to -1 (default), it does not have any effect. The actual maximum pyramid height will be the minimum of this value and the value of gf_max_pyr_height.

Stream timebase (--timebase):

The desired precision of timestamps in the output, expressed in fractional seconds. Default is 1/1000.

Included encoders:

- AOMedia Project AV1 Encoder v3.7.0 (default)
Use --codec to switch to a non-default encoder.
August 2023 aomenc 3.7.0~rc3