Skip to content

Instantly share code, notes, and snippets.

@darealshinji
Created November 14, 2014 11:04
Show Gist options
  • Save darealshinji/4ca99394f2c7f151a5c5 to your computer and use it in GitHub Desktop.
Save darealshinji/4ca99394f2c7f151a5c5 to your computer and use it in GitHub Desktop.
.TH VPXENC 1 "NOVEMBER 2014"
.SH NAME
vpxenc \- VP8 and VP9 video codec encoding tool
.SH SYNOPSIS
.B vpxenc \fR<options> -o dst_filename src_filename
.SH OPTIONS
.TP
\fB\-D\fR, \fB\-\-debug\fR
Debug mode (makes output deterministic)
.TP
\fB\-o\fR <arg>, \fB\-\-output=\fR<arg>
Output filename
.TP
\fB\-\-codec=\fR<arg>
Codec to use
.TP
\fB\-p\fR <arg>, \fB\-\-passes=\fR<arg>
Number of passes (1/2)
.TP
\fB\-\-pass=\fR<arg>
Pass to execute (1/2)
.TP
\fB\-\-fpf=\fR<arg>
First pass statistics file name
.TP
\fB\-\-limit=\fR<arg>
Stop encoding after n input frames
.TP
\fB\-\-skip=\fR<arg>
Skip the first n input frames
.TP
\fB\-d\fR <arg>, \fB\-\-deadline=\fR<arg>
Deadline per frame (usec)
.TP
\fB\-\-best\fR
Use Best Quality Deadline
.TP
\fB\-\-good\fR
Use Good Quality Deadline
.TP
\fB\-\-rt\fR
Use Realtime Quality Deadline
.TP
\fB\-q\fR, \fB\-\-quiet\fR
Do not print encode progress
.TP
\fB\-v\fR, \fB\-\-verbose\fR
Show encoder parameters
.TP
\fB\-\-psnr\fR
Show PSNR in status line
.TP
\fB\-\-ivf\fR
Output IVF (default is WebM)
.TP
\fB\-P\fR, \fB\-\-output\-partitions\fR
Makes encoder output partitions. Requires IVF output!
.TP
\fB\-\-q\-hist=\fR<arg>
Show quantizer histogram (n\-buckets)
.TP
\fB\-\-rate\-hist=\fR<arg>
Show rate histogram (n\-buckets)
.SS "Encoder Global Options:"
.TP
\fB\-\-yv12\fR
Input file is YV12
.TP
\fB\-\-i420\fR
Input file is I420 (default)
.TP
\fB\-u\fR <arg>, \fB\-\-usage=\fR<arg>
Usage profile number to use
.TP
\fB\-t\fR <arg>, \fB\-\-threads=\fR<arg>
Max number of threads to use
.TP
\fB\-\-profile=\fR<arg>
Bitstream profile number to use
.TP
\fB\-w\fR <arg>, \fB\-\-width=\fR<arg>
Frame width
.TP
\fB\-h\fR <arg>, \fB\-\-height=\fR<arg>
Frame height
.TP
\fB\-\-stereo\-mode=\fR<arg>
Stereo 3D video format:
.br
mono, left\-right, bottom\-top, top\-bottom, right\-left
.TP
\fB\-\-timebase=\fR<arg>
Output timestamp precision (fractional seconds)
.TP
\fB\-\-fps=\fR<arg>
Stream frame rate (rate/scale)
.TP
\fB\-\-error\-resilient=\fR<arg>
Enable error resiliency features
.TP
\fB\-\-lag\-in\-frames=\fR<arg>
Max number of frames to lag
.SS "Rate Control Options:"
.TP
\fB\-\-drop\-frame=\fR<arg>
Temporal resampling threshold (buf %)
.TP
\fB\-\-resize\-allowed=\fR<arg>
Spatial resampling enabled (bool)
.TP
\fB\-\-resize\-up=\fR<arg>
Upscale threshold (buf %)
.TP
\fB\-\-resize\-down=\fR<arg>
Downscale threshold (buf %)
.TP
\fB\-\-end\-usage=\fR<arg>
Rate control mode: vbr, cbr, cq, q
.TP
\fB\-\-target\-bitrate=\fR<arg>
Bitrate (kbps)
.TP
\fB\-\-min\-q=\fR<arg>
Minimum (best) quantizer
.TP
\fB\-\-max\-q=\fR<arg>
Maximum (worst) quantizer
.TP
\fB\-\-undershoot\-pct=\fR<arg>
Datarate undershoot (min) target (%)
.TP
\fB\-\-overshoot\-pct=\fR<arg>
Datarate overshoot (max) target (%)
.TP
\fB\-\-buf\-sz=\fR<arg>
Client buffer size (ms)
.TP
\fB\-\-buf\-initial\-sz=\fR<arg>
Client initial buffer size (ms)
.TP
\fB\-\-buf\-optimal\-sz=\fR<arg>
Client optimal buffer size (ms)
.SS "Twopass Rate Control Options:"
.TP
\fB\-\-bias\-pct=\fR<arg>
CBR/VBR bias (0=CBR, 100=VBR)
.TP
\fB\-\-minsection\-pct=\fR<arg>
GOP min bitrate (% of target)
.TP
\fB\-\-maxsection\-pct=\fR<arg>
GOP max bitrate (% of target)
.SS "Keyframe Placement Options:"
.TP
\fB\-\-kf\-min\-dist=\fR<arg>
Minimum keyframe interval (frames)
.TP
\fB\-\-kf\-max\-dist=\fR<arg>
Maximum keyframe interval (frames)
.TP
\fB\-\-disable\-kf\fR
Disable keyframe placement
.SS "VP8 Specific Options:"
.TP
\fB\-\-cpu\-used=\fR<arg>
CPU Used (\-16..16)
.TP
\fB\-\-auto\-alt\-ref=\fR<arg>
Enable automatic alt reference frames
.TP
\fB\-\-noise\-sensitivity=\fR<arg>
Noise sensitivity (frames to blur)
.TP
\fB\-\-sharpness=\fR<arg>
Filter sharpness (0\-7)
.TP
\fB\-\-static\-thresh=\fR<arg>
Motion detection threshold
.TP
\fB\-\-token\-parts=\fR<arg>
Number of token partitions to use, log2
.TP
\fB\-\-arnr\-maxframes=\fR<arg>
AltRef Max Frames
.TP
\fB\-\-arnr\-strength=\fR<arg>
AltRef Strength
.TP
\fB\-\-arnr\-type=\fR<arg>
AltRef Type
.TP
\fB\-\-tune=\fR<arg>
Material to favor: psnr, ssim
.TP
\fB\-\-cq\-level=\fR<arg>
Constant/Constrained Quality level
.TP
\fB\-\-max\-intra\-rate=\fR<arg>
Max I\-frame bitrate (pct)
.SS "VP9 Specific Options:"
.TP
\fB\-\-cpu\-used=\fR<arg>
CPU Used (\-16..16)
.TP
\fB\-\-auto\-alt\-ref=\fR<arg>
Enable automatic alt reference frames
.TP
\fB\-\-noise\-sensitivity=\fR<arg>
Noise sensitivity (frames to blur)
.TP
\fB\-\-sharpness=\fR<arg>
Filter sharpness (0\-7)
.TP
\fB\-\-static\-thresh=\fR<arg>
Motion detection threshold
.TP
\fB\-\-tile\-columns=\fR<arg>
Number of tile columns to use, log2
.TP
\fB\-\-tile\-rows=\fR<arg>
Number of tile rows to use, log2
.TP
\fB\-\-arnr\-maxframes=\fR<arg>
AltRef Max Frames
.TP
\fB\-\-arnr\-strength=\fR<arg>
AltRef Strength
.TP
\fB\-\-arnr\-type=\fR<arg>
AltRef Type
.TP
\fB\-\-tune=\fR<arg>
Material to favor: psnr, ssim
.TP
\fB\-\-cq\-level=\fR<arg>
Constant/Constrained Quality level
.TP
\fB\-\-max\-intra\-rate=\fR<arg>
Max I\-frame bitrate (pct)
.TP
\fB\-\-lossless=\fR<arg>
Lossless mode
.TP
\fB\-\-frame\-parallel=\fR<arg>
Enable frame parallel decodability features
.TP
\fB\-\-aq\-mode=\fR<arg>
Adaptive quantization mode
.br
0: disabled (by default)
.br
1: variance based
.SS "Stream timebase"
.TP
\fB\-\-timebase
The desired precision of timestamps in the output, expressed in fractional seconds.
Default is 1/1000.
.SS "Included encoders:"
vp8
\- WebM Project VP8 Encoder v1.3.0
.br
vp9
\- WebM Project VP9 Encoder v1.3.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment