Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
KVAZAAR(1)			 User Commands			    KVAZAAR(1)

       kvazaar - open source HEVC encoder

       kvazaar -i <input> --input-res <width>x<height> -o <output>

       -i, --input <filename>
	      Input file

       --input-res <res>
	      Input resolution [auto]
		  - auto: Detect from file name.
		  - <int>x<int>: width times height

       -o, --output <filename>
	      Output file

       --preset	<preset>
	      Set options to a preset [medium]
		  - ultrafast, superfast, veryfast, faster,
		    fast, medium, slow,	slower,	veryslow

       -n, --frames <integer>
	      Number of	frames to code [all]

       --seek <integer>
	      First frame to code [0]

       --input-fps <num>[/<denom>]
	      Frame rate of the	input video [25]

       --source-scan-type <string>
	      Source scan type [progressive]
		  - progressive: Progressive scan
		  - tff: Top field first
		  - bff: Bottom	field first

       --input-format <string>
	      P420 or P400 [P420]

       --input-bitdepth	<int>
	      8-16 [8]

	      Re-read input file forever.

       --help Print this help message and exit.

	      Print version information	and exit.

	      Use access unit delimiters. [disabled]

       --debug <filename>
	      Output internal reconstruction.

	      Enable runtime CPU optimizations.	[enabled]

       --hash <string>
	      Decoded picture hash [checksum]
		  - none: 0 bytes
		  - checksum: 18 bytes
		  - md5: 56 bytes

	      Calculate	PSNR for frames. [enabled]

	      Add encoder info SEI. [enabled]

       --crypto	<string>
	      Selective	 encryption.  Crypto  support  must be enabled at com-
	      pile-time. Can be	'on' or	'off' or a list	of features  separated
	      with a '+'. [off]
		  - on:	Enable all encryption features.
		  - off: Disable selective encryption.
		  - mvs: Motion	vector magnitudes.
		  - mv_signs: Motion vector signs.
		  - trans_coeffs: Coefficient magnitudes.
		  - trans_coeff_signs: Coefficient signs.
		  - intra_pred_modes: Intra prediction modes.

       --key <string>
	      Encryption key [16,213,27,56,255,127,242,112,

   Video structure:
       -q, --qp	<integer>
	      Quantization parameter [22]

       -p, --period <integer>
	      Period of	intra pictures [64]
		  - 0: Only first picture is intra.
		  - 1: All pictures are	intra.
		  - N: Every Nth picture is intra.

       --vps-period <integer>
	      How often	the video parameter set	is re-sent [0]
		  - 0: Only send VPS with the first frame.
		  - N: Send VPS	with every Nth intra frame.

       -r, --ref <integer>
	      Number of	reference frames, in range 1..15 [4]

       --gop <string>
	      GOP structure [lp-g4d3t1]
		  -  0:	Disabled
		  -  8:	B-frame	pyramid	of length 8
		  - 16:	B-frame	pyramid	of length 16
		  - lp-<string>: Low-delay P/B-frame GOP
		    (e.g. lp-g8d4t2, see README)

       --intra-qp-offset <int>:	QP offset for intra frames [-51..51] [auto]
		  - N: Set QP offset to	N.
		  - auto: Select offset	automatically based
		    on GOP length.

	      Use open GOP configuration. [enabled]

       --cqmfile <filename>
	      Read custom quantization matrices	from a file.

       --scaling-list <string>:	Set scaling list mode. [off]
		  - off: Disable scaling lists.
		  - custom: use	custom list (with --cqmfile).
		  - default: Use default lists.

       --bitrate <integer>
	      Target bitrate [0]
		  - 0: Disable rate control.
		  - N: Target N	bits per second.

       --rc-algorithm <string>:	Select used rc-algorithm. [lambda]
		  - lambda: rate control from:
		    DOI: 10.1109/TIP.2014.2336550
		  - oba: DOI: 10.1109/TCSVT.2016.2589878

	      Use  Hadamard cost based allocation for intra frames. Default on
	      for gop 8	and off	for lp-gop

	      On oba based rate	control	whether	to clip	lambda values to  same
	      frame's  ctus or previous'.  Default on for RA GOPS and disabled
	      for LP.

	      Use lossless coding. [disabled]

       --mv-constraint <string>
	      Constrain	movement vectors. [none]
		  - none: No constraint
		  - frametile: Constrain within	the tile.
		  - frametilemargin: Constrain even more.

       --roi <filename>
	      Use a delta QP map for region of interest.  Reads	 an  array  of
	      delta  QP	values from a text file. The file format is: width and
	      height of	the QP delta map followed  by  width*height  delta  QP
	      values  in  raster order.	The map	can be of any size and will be
	      scaled to	the video size.

	      Set QP at	CU level  keeping  pic_init_qp_minus26.	  in  PPS  and
	      slice_qp_delta in	slize header zero.

	      Use  adaptive  QP	for 360	degree video with equirectangular pro-
	      jection. [disabled]

       --level <number>
	      Use the given HEVC level in the output  and  give	 an  error  if
	      level limits are exceeded. [6.2]
		  - 1, 2, 2.1, 3, 3.1, 4, 4.1, 5, 5.1, 5.2, 6,
		    6.1, 6.2

       --force-level <number>
	      Same as --level but warnings instead of errors.

	      Used  with  --level. Use high tier bitrate limits	instead	of the
	      main tier	limits during encoding.	 High tier requires level 4 or

       --(no-)vaq <integer>
	      Enable  variance	adaptive  quantization with given strength, in
	      range 1..20. Recommended:	5.  [disabled]

   Compression tools:
       --(no-)deblock <beta:tc>
	      Deblocking filter. [0:0]
		  - beta: Between -6 and 6
		  - tc:	Between	-6 and 6

       --sao <string>
	      Sample Adaptive Offset [full]
		  - off: SAO disabled
		  - band: Band offset only
		  - edge: Edge offset only
		  - full: Full SAO

	      Rate-distortion optimized	quantization [enabled]

	      Skip RDOQ	for 4x4	blocks.	[disabled]

	      Sign hiding [disabled]

	      Symmetric	motion partition [disabled]

	      Asymmetric motion	partition [disabled]

       --rd <integer>
	      Intra mode search	complexity [0]
		  - 0: Skip intra if inter is good enough.
		  - 1: Rough intra mode	search with SATD.
		  - 2: Refine intra mode search	with SSE.
		  - 3: Try all intra modes and enable intra
		       chroma mode search.

	      Rate-distortion optimized	motion vector costs [disabled]

	      If a CU is set inter, check if forcing  zero  residual  improves
	      the RD cost. [enabled]

	      Try all intra modes during rough search.	[disabled]

	      Try transform skip [disabled]

       --me <string>
	      Integer motion estimation	algorithm [hexbs]
		  - hexbs: Hexagon Based Search
		  - tz:	   Test	Zone Search
		  - full:  Full	Search
		  - full8, full16, full32, full64
		  - dia:   Diamond Search

       --me-steps <integer>
	      Motion  estimation  search  step limit. Only affects 'hexbs' and
	      'dia'. [-1]

       --subme <integer>
	      Fractional pixel motion estimation level [4]
		  - 0: Integer motion estimation only
		  - 1: + 1/2-pixel horizontal and vertical
		  - 2: + 1/2-pixel diagonal
		  - 3: + 1/4-pixel horizontal and vertical
		  - 4: + 1/4-pixel diagonal

       --pu-depth-inter	<int>-<int>
	      Inter prediction units sizes [0-3]
		  - 0, 1, 2, 3:	from 64x64 to 8x8
		  - Accepts a list of values separated by ','
		    for	setting	separate depths	per GOP	layer
		    (values can	be omitted to use the first
		    value for the respective layer).

       --pu-depth-intra	<int>-<int>
	      Intra prediction units sizes [1-4]
		  - 0, 1, 2, 3,	4: from	64x64 to 4x4
		  - Accepts a list of values separated by ','
		    for	setting	separate depths	per GOP	layer
		    (values can	be omitted to use the first
		    value for the respective layer).

	      Predict the pu-depth-intra using machine
	       learning	trees, overrides the
	       --pu-depth-intra	parameter. [disabled]

       --tr-depth-intra	<int>
	      Transform	split depth for	intra blocks [0]

	      Bi-prediction [disabled]

       --cu-split-termination <string>
	      CU split search termination [zero]
		  - off: Don't terminate early.
		  - zero: Terminate when residual is zero.

       --me-early-termination <string>
	      Motion estimation	termination [on]
		  - off: Don't terminate early.
		  - on:	Terminate early.
		  - sensitive: Terminate even earlier.

       --fast-residual-cost <int>
	      Skip CABAC cost for residual coefficients
		  when QP is below the limit. [0]

	      Check intra modes	in rdo stage only until	a zero coefficient  CU
	      is found.	[disabled]

	      Try  to  find skip cu from merge candidates.  Perform no further
	      search if	skip is	found.	For rd=0..1: Try the first  candidate.
	      For rd=2..  Try the best candidate based
			   on luma satd	cost. [enabled]

       --max-merge <integer>
	      Maximum number of	merge candidates, 1..5 [5]

	      Implicit	residual  DPCM.	Currently only supported with lossless
	      coding. [disabled]

	      Temporal motion vector prediction	[enabled]

   Parallel processing:
       --threads <integer>
	      Number of	threads	to use [auto]
		  - 0: Process everything with main thread.
		  - N: Use N threads for encoding.
		  - auto: Select automatically.

       --owf <integer>
	      Frame-level parallelism [auto]
		  - N: Process N+1 frames at a time.
		  - auto: Select automatically.

	      Wavefront	parallel processing. [enabled] Enabling	tiles automat-
	      ically disables WPP.  To enable WPP with tiles, re-enable	it af-
	      ter enabling tiles. Enabling wpp with tiles is, however, an  ex-
	      perimental  feature  since  it is	not supported in any HEVC pro-

       --tiles <int>x<int>
	      Split picture into width x height	uniform	tiles.

       --tiles-width-split <string>|u<int>
		  - <string>: A	comma-separated	list of	tile
			      column pixel coordinates.
		  - u<int>: Number of tile columns of uniform

       --tiles-height-split <string>|u<int>
		  - <string>: A	comma-separated	list of	tile row
			      column pixel coordinates.
		  - u<int>: Number of tile rows	of uniform

       --slices	<string>
	      Control how slices are used.
		  - tiles: Put tiles in	independent slices.
		  - wpp: Put rows in dependent slices.
		  - tiles+wpp: Do both.

       --partial-coding	<x-offset>!<y-offset>!<slice-width>!<slice-height>

	      Encode partial frame.  Parts must	be merged to form a valid bit-
	      stream.	X  and Y are CTU offsets.  Slice width and height must
	      be divisible by CTU in pixels unless it is the last CTU row/col-
	      umn.  This parameter is used by kvaShare.

   Video Usability Information:
       --sar <width:height>
	      Specify sample aspect ratio

       --overscan <string>
	      Specify crop overscan setting [undef]
		  - undef, show, crop

       --videoformat <string>
	      Specify video format [undef]
		  - undef, component, pal, ntsc, secam,	mac

       --range <string>
	      Specify color range [tv]
		  - tv,	pc

       --colorprim <string>
	      Specify color primaries [undef]
		  - undef, bt709, bt470m, bt470bg,
		    smpte170m, smpte240m, film,	bt2020

       --transfer <string>
	      Specify transfer characteristics [undef]
		  - undef, bt709, bt470m, bt470bg,
		    smpte170m, smpte240m, linear, log100,
		    log316, iec61966-2-4, bt1361e,
		    iec61966-2-1, bt2020-10, bt2020-12

       --colormatrix <string>
	      Specify color matrix setting [undef]
		  - undef, bt709, fcc, bt470bg,	smpte170m,
		    smpte240m, GBR, YCgCo, bt2020nc, bt2020c

       --chromaloc <integer>
	      Specify chroma sample location (0	to 5) [0]

kvazaar	v2.0.0			  April	2020			    KVAZAAR(1)


Want to link to this manual page? Use this URL:

home | help