x2651
Encoder for creating h.265/hevc video streams
Usage
x265 [options]
infile
[-o]
outfile
Overview
x256 is a commandline encoder for creating H.265/High Efficiency Video Coding (HEVC) video streams. infile can be a YUV or Y4M video stream. outfile will be used to store the raw HEVC bitstream.
Executable Options:
-h/--help-
Show this help text and exit
Output Options:
-o/--output <filename>-
Bitstream output file name
-
--log-level <string> -
Logging level: none error warning info debug full. Default info
-
--no-progress -
Disable CLI progress reports
--[no-]cu-stats-
Enable logging stats about distribution of cu across all modes. Default disabled
-
--csv <filename> -
Comma separated log file, log level >= 3 frame log, else one line per run
Input Options:
-
--input <filename> -
Raw YUV or Y4M input file name. `-` for stdin
-
--y4m -
Force parsing of input stream as YUV4MPEG2 regardless of file extension
-
--fps <float|rational> -
Source frame rate (float or num/denom), auto-detected if Y4M
-
--input-res WxH -
Source picture size [w x h], auto-detected if Y4M
-
--input-depth <integer> -
Bit-depth of input file. Default 8
-
--input-csp <string> -
Source color space: i420, i444 or i422, auto-detected if Y4M. Default: i420
-f/--frames <integer>-
Maximum number of frames to encode. Default all
-
--seek <integer> -
First frame to encode
--[no-]interlace<bff|tff>-
Indicate input pictures are interlace fields in temporal order. Default progressive
-
--dither -
Enable dither if downscaling to 8 bit pixels. Default disabled
Quality reporting metrics:
|
Enable reporting SSIM metric scores. Default disabled |
|---|---|
|
Enable reporting PSNR metric scores. Default disabled |
Profile, Level, Tier:
-
--profile <string> -
Enforce an encode profile: main, main10, mainstillpicture
-
--level-idc <integer|float> -
Force a minimum required decoder level (as '5.0' or '50')
--[no-]high-tier-
If a decoder level is specified, this modifier selects High tier of that level
Threading, performance:
-
--threads <integer> -
Number of threads for thread pool (0: detect CPU core count, default)
|
Number of concurrently encoded frames. 0: auto-determined by core count |
|---|---|
|
Enable Wavefront Parallel Processing. Default enabled |
|
Parallel mode analysis. Default disabled |
|
Parallel motion estimation. Default disabled |
|
Override CPU detection. Default: auto |
Presets:
-p/--preset <string>-
Trade off performance for compression efficiency. Default medium
-
ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, or placebo
-t/--tune <string>-
Tune the settings for a particular type of source or situation:
-
psnr, ssim, zerolatency, or fastdecode
Quad-Tree size and depth:
-s/--ctu <64|32|16>-
Maximum CU size (default: 64x64). Default 64
-
--tu-intra-depth <integer> -
Max TU recursive depth for intra CUs. Default 1
-
--tu-inter-depth <integer> -
Max TU recursive depth for inter CUs. Default 1
|
Enable rectangular motion partitions Nx2N and 2NxN. Default disabled |
|---|---|
|
Enable asymmetric motion partitions, requires |
Analysis:
-
--rd <0..6> -
Level of RD in mode decision 0:least....6:full RDO. Default 3
-
--psy-rd <0..2.0> -
Strength of psycho-visual rate distortion optimization, 0 to disable. Default 0.000000
-
--psy-rdoq <0..50.0> -
Strength of psycho-visual optimization in quantization, 0 to disable. Default 0.000000
-
--nr <integer> -
An integer value in range of 100 to 1000, which denotes strength of noise reduction. Default disabled
|
Enable fast intra transform skipping. Default disabled |
|---|---|
|
Enable early SKIP detection. Default disabled |
|
Enable early outs based on whether residual is coded. Default disabled |
Coding tools:
|
Enable weighted prediction in P slices. Default enabled |
|---|---|
|
Enable weighted prediction in B slices. Default disabled |
|
Consider lossless mode in CU RDO decisions. Default disabled |
|
Hide sign bit of one coeff per TU (rdo). Default enabled |
|
Enable intra 4x4 transform skipping. Default disabled |
Temporal / motion search options:
-
--me <string> -
Motion search method dia hex umh star full. Default 1
-m/--subme <integer>-
Amount of subpel refinement to perform (0:least .. 7:most). Default 2
-
--merange <integer> -
Motion search range. Default 57
-
--max-merge <1..5> -
Maximum number of merge candidates. Default 2
--[no-]temporal-mvp-
Enable temporal MV predictors. Default enabled
Spatial / intra options:
--[no-]strong-intra-smoothing Enable strong intra smoothing for 32x32 blocks. Default enabled
--[no-]constrained-intra-
Constrained intra prediction (use only intra coded reference pixels) Default disabled
--[no-]b-intra-
Enable intra in B frames in veryslow presets. Default disabled
--[no-]fast-intra-
Enable faster search method for angular intra predictions. Default disabled
-
--rdpenalty <0..2> -
penalty for 32x32 intra TU in non-I slices. 0:disabled 1:RD-penalty 2:maximum. Default 0
Slice decision options:
|
Enable open-GOP, allows I slices to be non-IDR. Default enabled |
|---|---|
|
Max IDR period in frames. |
|
Scenecuts closer together than this are coded as I, not IDR. Default: auto |
-
--no-scenecut -
Disable adaptive I-frame decision
-
--scenecut <integer> -
How aggressively to insert extra I-frames. Default 40
-
--rc-lookahead <integer> -
Number of frames for frame-type lookahead (determines encoder latency) Default 20
-
--bframes <integer> -
Maximum number of consecutive b-frames (now it only enables B GOP structure) Default 4
-
--bframe-bias <integer> -
Bias towards B frame decisions. Default 0
-
--b-adapt <0..2> -
0 - none, 1 - fast, 2 - full (trellis) adaptive B frame scheduling. Default 2
--[no-]b-pyramid-
Use B-frames as references. Default enabled
-
--ref <integer> -
max number of L0 references to be allowed (1 .. 16) Default 3
-
--qpfile <string> -
Force frametypes and QPs for some or all frames Format of each line: framenumber frametype QP QP is optional (none lets x265 choose). Frametypes: I,i,P,B,b. QPs are restricted by qpmin/qpmax.
Rate control, Quantization:
-
--bitrate <integer> -
Target bitrate (kbps) for ABR (implied). Default 0
-q/--qp <integer>-
QP for P slices in CQP mode (implied).
--ipratioand--pbrationdetermine other slice QPs
-
--crf <float> -
Quality-based VBR (0-51). Default 28.000000
--[no-]lossless-
Enable lossless: bypass transform, quant and loop filters globally. Default disabled
-
--crf-max <float> -
With CRF+VBV, limit RF to this value. Default 0.000000 May cause VBV underflows!
-
--crf-min <float> -
With CRF+VBV, limit RF to this value. Default 0.000000 this specifies a minimum rate factor value for encode!
-
--vbv-maxrate <integer> -
Max local bitrate (kbit/s). Default 0
-
--vbv-bufsize <integer> -
Set size of the VBV buffer (kbit). Default 0
-
--vbv-init <float> -
Initial VBV buffer occupancy (fraction of bufsize or in kbits). Default 0.900000
-
--aq-mode <integer> -
Mode for Adaptive Quantization - 0:none 1:uniform AQ 2:auto variance. Default 2
-
--aq-strength <float> -
Reduces blocking and blurring in flat and textured areas.(0 to 3.0). Default 1.000000
--[no-]cutree-
Enable cutree for Adaptive Quantization. Default enabled
-
--ipratio <float> -
QP factor between I and P. Default 1.400000
-
--pbratio <float> -
QP factor between P and B. Default 1.300000
-
--cbqpoffs <integer> -
Chroma Cb QP Offset. Default 0
-
--crqpoffs <integer> -
Chroma Cr QP Offset. Default 0
-
--stats -
Filename for stats file in multipass pass rate control. Default x265_2pass.log
-
--pass -
Multi pass rate control. 1: First pass, creates stats file 2: Last pass, does not overwrite stats file 3: Nth pass, overwrites stats file
--[no-]slow-firstpass-
Enable a slow first pass in a multipass rate control mode. Default disabled
-
--analysis-mode <string|int> -
save - Dump analysis info into file, load - Load analysis buffers from the file. Default 0
-
--analysis-file <filename> -
Specify file name used for either dumping or reading analysis data.
-
--scaling-list <string> -
Specify a file containing HM style quant scaling lists or 'default' or 'off'. Default: off
-
--lambda-file <string> -
Specify a file containing replacement values for the lambda tables MAX_MAX_QP+1 floats for lambda table, then again for lambda2 table Blank lines and lines starting with hash(#) are ignored Comma is considered to be white-space
Loop filters (deblock and SAO):
--[no-]lft-
Enable Deblocking Loop Filter. Default enabled
--[no-]sao-
Enable Sample Adaptive Offset. Default enabled
--[no-]sao-non-deblock-
Use non-deblocked pixels, else right/bottom boundary areas skipped. Default disabled
VUI options:
-
--sar <width:height|int> -
Sample Aspect Ratio, the ratio of width to height of an individual pixel. Choose from 0=undef, 1=1:1("square"), 2=12:11, 3=10:11, 4=16:11, 5=40:33, 6=24:11, 7=20:11, 8=32:11, 9=80:33, 10=18:11, 11=15:11, 12=64:33, 13=160:99, 14=4:3, 15=3:2, 16=2:1 or custom ratio of <int:int>. Default 0
-
--crop-rect <string> -
Add 'left,top,right,bottom' to the bitstream-level cropping rectangle
-
--overscan <string> -
Specify whether it is appropriate for decoder to show cropped region: undef, show or crop. Default undef
-
--videoformat <string> -
Specify video format from undef, component, pal, ntsc, secam, mac. Default undef
-
--range <string> -
Specify black level and range of luma and chroma signals as full or limited Default limited
-
--colorprim <string> -
Specify color primaries from undef, bt709, bt470m, bt470bg, smpte170m, smpte240m, film, bt2020. Default undef
-
--transfer <string> -
Specify transfer characteristics from undef, bt709, bt470m, bt470bg, smpte170m, smpte240m, linear, log100, log316, iec61966-2-4, bt1361e, iec61966-2-1, bt2020-10, bt2020-12. Default undef
-
--colormatrix <string> -
Specify color matrix setting from undef, bt709, fcc, bt470bg, smpte170m, smpte240m, GBR, YCgCo, bt2020nc, bt2020c. Default undef
-
--chromaloc <integer> -
Specify chroma sample location (0 to 5). Default of 0
Bitstream options:
|
Emit SEI identifying encoder and parameters. Default enabled |
|---|---|
|
Emit access unit delimiters at the start of each access unit. Default disabled |
|
Enable HRD parameters signalling. Default disabled |
|
Emit SPS and PPS headers at each keyframe. Default disabled |
-
--hash <integer> -
Decoded Picture Hash SEI 0: disabled, 1: MD5, 2: CRC, 3: Checksum. Default 0
Reconstructed video options (debugging):
-r/--recon <filename>-
Reconstructed raw image YUV or Y4M output file name
-
--recon-depth <integer> -
Bit-depth of reconstructed raw image file. Defaults to input bit depth, or 8 if Y4M
Releases
Unchanged in 5 releases since Debian 9 (Stretch).