XEVE: eXtra-fast Essential Video Encoder
Syntax:
xeve_app -i 'input-file' [ options ]
Options:
--help
: list options
-v, --verbose [INTEGER] (optional) [2]
: verbose (log) level
- 0: no message
- 1: only error message
- 2: simple messages
- 3: frame-level messages
-i, --input [STRING]
: file name of input video (raw YUV or Y4M), `stdin` for standard input instead of regular file
-o, --output [STRING] (optional) [None]
: file name of output bitstream
-r, --recon [STRING] (optional) [None]
: file name of reconstructed video
-w, --width [INTEGER]
: pixel width of input video
-h, --height [INTEGER]
: pixel height of input video
-q, --qp [INTEGER] (optional) [32]
: QP value (0~51)
-z, --fps [INTEGER]
: frame rate (frame per second)
-I, --keyint [INTEGER] (optional) [0]
: I-picture period
-b, --bframes [INTEGER] (optional) [15]
: maximum number of B frames (1,3,7,15)
-m, --threads [INTEGER] (optional) [1]
: force to use a specific number of threads
-d, --input-depth [INTEGER] (optional) [8]
: input bit depth (8, 10)
--codec-bit-depth [INTEGER] (optional) [10]
: codec internal bit depth (10, 12)
--input-csp [INTEGER] (optional) [1]
: input color space (chroma format)
- 0: YUV400
- 1: YUV420
--profile [STRING] (optional) [baseline]
: profile setting flag (main, baseline)
--level-idc [INTEGER] (optional) [0]
: level setting
--preset [STRING] (optional) [medium]
: Encoder PRESET [fast, medium, slow, placebo]
--tune [STRING] (optional) [None]
: Encoder TUNE [psnr, zerolatency]
--aq-mode [INTEGER] (optional) [0]
: use adaptive quantization block qp adaptation
- 0: off
- 1: adaptive quantization
--frames [INTEGER] (optional) [0]
: maximum number of frames to be encoded
--seek [INTEGER] (optional) [0]
: number of skipped frames before encoding
--info [INTEGER] (optional) [1]
: embed SEI messages identifying encoder parameters and command line arguments - 0: off
- 1: emit sei info
--hash [FLAG] (optional) [Off]
: embed picture signature (HASH) for conformance checking in decoding
--cutree [INTEGER] (optional)
: use cutree block qp adaptation
- 0: off
- 1: cutree
--cu-qp-delta-area [INTEGER] (optional)
: cu-qp-delta-area (>= 6)
--rdo-dbk-switch [INTEGER] (optional)
: switch to on/off rdo-dbk (0, 1)
--ref-pic-gap-length [INTEGER] (optional)
: reference picture gap length (1, 2, 4, 8, 16) only available when -b is 0
--closed-gop [FLAG] (optional) [Off]
: use closed GOP structure. if not set, open GOP is used
--ibc [INTEGER] (optional)
: use IBC feature. if not set, IBC feature is disabled
--ibc-search-range-x [INTEGER] (optional)
: set ibc search range in horizontal direction
--ibc-search-range-y [INTEGER] (optional)
: set ibc search range in vertical direction
--ibc-hash-search-flag [FLAG] (optional)
: use IBC hash based block matching search feature. if not set, it is disable
--ibc-hash-search-max-cand [INTEGER] (optional)
: Max candidates for hash based IBC search
--ibc-hash-search-range-4smallblk [INTEGER] (optional)
: Small block search range in IBC based search
--ibc-fast-method [INTEGER] (optional)
: Fast methods for IBC
- 1: Buffer IBC block vector (current not support)
- 2: Adaptive search range
--disable-hgop [FLAG] (optional) [Off]
: disable hierarchical GOP. if not set, hierarchical GOP is used
--btt [INTEGER] (optional)
: binary and ternary splits on/off flag
--suco [INTEGER] (optional)
: split unit coding ordering on/off flag
--qp-add-frm [INTEGER] (optional)
: one more qp are added after this number of frames, disable:0
--ctu [INTEGER] (optional)
: Max size of Coding Block (log scale)
--min-cu-size [INTEGER] (optional)
: MIN size of Coding Block (log scale)
--cu14-max [INTEGER] (optional)
: Max size of 4N in 4NxN or Nx4N block (log scale)
--tris-max [INTEGER] (optional)
: Max size of Tri-split allowed
--tris-min [INTEGER] (optional)
: Min size of Tri-split allowed
--suco-max [INTEGER] (optional)
: Max size of suco allowed from top
--suco-min [INTEGER] (optional)
: Min size of suco allowed from top
--amvr [INTEGER] (optional)
: amvr on/off flag
--mmvd [INTEGER] (optional)
: mmvd on/off flag
--affine [INTEGER] (optional)
: affine on/off flag
--dmvr [INTEGER] (optional)
: dmvr on/off flag
--addb [INTEGER] (optional)
: addb on/off flag
--alf [INTEGER] (optional)
: alf on/off flag
--htdf [INTEGER] (optional)
: htdf on/off flag
--admvp [INTEGER] (optional)
: admvp on/off flag
--hmvp [INTEGER] (optional)
: hmvp on/off flag
--eipd [INTEGER] (optional)
: eipd on/off flag
--iqt [INTEGER] (optional)
: iqt on/off flag
--cm-init [INTEGER] (optional)
: cm-init on/off flag
--adcc [INTEGER] (optional)
: adcc on/off flag
--rpl [INTEGER] (optional)
: rpl on/off flag
--pocs [INTEGER] (optional)
: pocs on/off flag
--qp-cb-offset [INTEGER] (optional)
: cb qp offset
--qp-cr-offset [INTEGER] (optional)
: cr qp offset
--ats [INTEGER] (optional)
: ats on/off flag
--constrained-intra-pred [INTEGER] (optional)
: constrained intra pred
--deblock [INTEGER] (optional)
: Deblocking filter on/off flag
--dbfoffsetA [INTEGER] (optional)
: ADDB Deblocking filter offset for alpha
--dbfoffsetB [INTEGER] (optional)
: ADDB Deblocking filter offset for beta
--tile-uniform-spacing [INTEGER] (optional)
: uniform or non-uniform tile spacing
--num-tile-columns [INTEGER] (optional)
: Number of tile columns
--num-tile-rows [INTEGER] (optional)
: Number of tile rows
--tile-column-width-array [STRING] (optional)
: Array of Tile Column Width
--tile-row-height-array [STRING] (optional)
: Array of Tile Row Height
--num-slices-in-pic [INTEGER] (optional)
: Number of slices in the pic
--tile-array-in-slice [STRING] (optional)
: Array of Slice Boundaries
--arbitrary-slice-flag [INTEGER] (optional)
: Array of Slice Boundaries
--num-remaining-tiles-in-slice [STRING] (optional)
: Array of Slice Boundaries
--lp-filter-across-tiles-en-flag [INTEGER] (optional)
: Loop filter across tiles enabled or disabled
--rc-type [INTEGER] (optional) [0]
: Rate control type, (0: OFF, 1: ABR, 2: CRF)
--bitrate [STRING] (optional) [None]
: Bitrate in terms of kilo-bits per second: Kbps(none,K,k), Mbps(M,m)
ex) 100 = 100K = 0.1M
--crf [INTEGER] (optional) [32]
: Constant Rate Factor CRF-value [10-49]
--vbv-bufsize [STRING] (optional) [None]
: VBV buffer size: Kbits(none,K,k), Mbits(M,m)
ex) 100 / 100K / 0.1M
--use-filler [INTEGER] (optional) [0]
: user filler flag
--lookahead [INTEGER] (optional) [17]
: number of pre analysis frames for rate control and cutree, disable:0
--chroma-qp-table-present-flag [INTEGER] (optional)
: chroma-qp-table-present-flag
--chroma-qp-num-points-in-table [STRING] (optional)
: Number of pivot points for Cb and Cr channels
--chroma-qp-delta-in-val-cb [STRING] (optional)
: Array of input pivot points for Cb
--chroma-qp-delta-out-val-cb [STRING] (optional)
: Array of input pivot points for Cb
--chroma-qp-delta-in-val-cr [STRING] (optional)
: Array of input pivot points for Cr
--chroma-qp-delta-out-val-cr [STRING] (optional)
: Array of input pivot points for Cr
--dra-enable-flag [INTEGER] (optional)
: DRA enable flag
--dra-number-ranges [INTEGER] (optional)
: Number of DRA ranges
--dra-range [STRING] (optional)
: Array of dra ranges
--dra-scale [STRING] (optional)
: Array of input dra ranges
--dra-chroma-qp-scale [STRING] (optional)
: DRA chroma qp scale value
--dra-chroma-qp-offset [STRING] (optional)
: DRA chroma qp offset
--dra-chroma-cb-scale [STRING] (optional)
: DRA chroma cb scale
--dra-chroma-cr-scale [STRING] (optional)
: DRA chroma cr scale
--dra-hist-norm [STRING] (optional)
: DRA hist norm
--rpl-extern [INTEGER] (optional)
: Whether to input external RPL
--inter-slice-type [INTEGER] (optional)
: INTER-SLICE-TYPE
--picture-cropping-flag [INTEGER] (optional)
: picture crop flag
--picture-crop-left [INTEGER] (optional)
: left offset of picture crop
--picture-crop-right [INTEGER] (optional)
: right offset of picture crop
--picture-crop-top [INTEGER] (optional)
: top offset of picture crop
--picture-crop-bottom [INTEGER] (optional)
: bottom offset of picture crop
--ref [INTEGER] (optional) [0]
: Number of reference pictures
--sar [STRING] (optional) [None]
: sar <width:height|int> possible values 1 to 16 and 255
--sar-width [INTEGER] (optional) [0]
: sar <width:height|int>
--sar-height [INTEGER] (optional) [0]
: sar <width:height|int>
--videoformat [STRING] (optional) [None]
: 0-component, 1-pal, 2-ntsc, 3-secam, 4-mac. 5-unspecified
--range [STRING] (optional) [None]
: black level and range of luma and chroma signals as 1- full or 0- limited
--colorprim [STRING] (optional) [None]
: 1- bt709, 2-unspecified, 3- reserved, 4- bt470m, 5- bt470bg, 6- smpte170m, 7- smpte240m, 8- Generic film, 9- bt2020, 10-smpte428, 11-smpte431, 12-smpte432, 22-EBU Tech. 3213 Default 2-unspecified
--transfer [STRING] (optional) [None]
: 1- transfer characteristics from bt709, 2-unspecified, 3-reserved, 4-bt470m, 5-bt470bg, 6-smpte170m, 7-smpte240m, 8-linear, 9-log100, 10-log316, 11-iec61966-2-4, 12-bt1361e, 13-iec61966-2-1, 14-bt2020-10, 15-bt2020-12, 16-smpte2084, 17-smpte428, 198-arib-std-b67. Default 2-unspecified
--matrix-coefficients [STRING] (optional) [None]
: 0-gbr, 1-bt709, 2-unspecified, 3-reserved, 4-fcc, 5-bt470bg, 6-smpte170m, 7-smpte240m, 8-ycgco, 9-bt2020nc, 10-bt2020c, 11-smpte2085, 12-chroma-derived-nc, 13-chroma-derived-c, 14-ictcp, 15-255 reserved};
--master-display [STRING] (optional) [None]
: SMPTE ST 2086 master display color volume info SEI (HDR) format: G(x,y)B(x,y)R(x,y)WP(x,y)L(max,min)
--max-cll [STRING] (optional)
: Specify content light level info SEI as (cll,fall) (HDR)
--chromaloc-tf [INTEGER] (optional) [0]
: Chroma location for Top field - Range from 0 to 5
--chromaloc-bf [INTEGER] (optional) [0]
: Chroma location for Bottom field - Range from 0 to 5
--neutral-chroma-flag [INTEGER] (optional) [0]
: Value can be 0 or 1
--frame-field-flag [INTEGER] (optional) [0]
: 1 indicates fields and 0 indicates frames
--units-in-tick [INTEGER] (optional) [0]
: Number of units in tick, value should be > 0
--time-scale [INTEGER] (optional) [0]
: Time Scale, value should be > 0
--fixed-pic-rate-flag [INTEGER] (optional) [0]
: Fixed picture rate flag, default 0
--pic-struct [INTEGER] (optional) [0]
: Fixed picture rate flag, default 0
--mv-over-pic-boundaries [INTEGER] (optional) [1]
: mvs over picture boundaries flag
--max-bytes-per-pic-denom [INTEGER] (optional) [0]
: max bytes per picture denom, valid range 0 to 16
--max-bits-per-cu-denom [INTEGER] (optional) [1]
: max bits per cu denom, valid range 0 to 16
--log2-max-mv-len-hor [INTEGER] (optional) [16]
: max mv length horizontal log2, valid range 0 to 16
--log2-max-mv-len-ver [INTEGER] (optional) [16]
: max mv length vertical log2, valid range o to 16
--num-reorder-pics [INTEGER] (optional) [21]
: # of reorder pics, valid range 0 to max_dec_pic_buffering default = max_dec_pic_buffering
--max-dec-pic-buffering [INTEGER] (optional) [21]
: max picture buffering in decoder, valid range 0 to num-reorder-pic default num-reorder-pic
From what I see the main restrictions are: