Reformat --help message

- Reduce indentation to 6 spaces
- Word wrap everything to under 80 characters
- Remove defaults from options covered by presets
- Add a dash in front of argument descriptions
- Add --(no-) to names of parameters that accept it and remove mention
  of enabling or disabling
- Add executable and scripts as a dependancy to make docs
This commit is contained in:
Ari Koivula 2016-11-04 15:30:58 +02:00
parent 98a0d54b70
commit 78a28e0338
5 changed files with 419 additions and 389 deletions

View file

@ -15,6 +15,6 @@ EXTRA_DIST = \
# Run scripts to maintain autogenerated documentation
# in the version control.
docs:
docs: all ./tools/genmanpage.sh ./tools/update_readme.sh
./tools/genmanpage.sh
./tools/update_readme.sh

274
README.md
View file

@ -19,156 +19,164 @@ Usage:
kvazaar -i <input> --input-res <width>x<height> -o <output>
Required:
-i, --input --input-res <res> : Input resolution [auto]
auto: detect from file name
<int>x<int>: width times height
-o, --output : Output file
-i, --input : Input file
--input-res <res> : Input resolution [auto]
auto: detect from file name
<int>x<int>: width times height
-o, --output : Output file
Presets:
--preset=<preset> : Set options to a preset [medium]
ultrafast, superfast, veryfast, faster,
fast, medium, slow, slower, veryslow,
--preset=<preset> : Set options to a preset [medium]
- ultrafast, superfast, veryfast, faster,
fast, medium, slow, slower, veryslow
placebo
Input:
-n, --frames <integer> : Number of frames to code [all]
--seek <integer> : First frame to code [0]
--input-fps <num>/<denom> : Framerate of the input video [25.0]
--source-scan-type <string> : Set source scan type ["progressive"].
"progressive": progressive scan
"tff": top field first
"bff": bottom field first
--input-format : P420 or P400
--input-bitdepth : 8-16
--loop-input : Re-read input file forever
-n, --frames <integer> : Number of frames to code [all]
--seek <integer> : First frame to code [0]
--input-fps <num>/<denom> : Framerate of the input video [25.0]
--source-scan-type <string> : Set source scan type [progressive].
- progressive: progressive scan
- tff: top field first
- bff: bottom field first
--input-format : P420 or P400
--input-bitdepth : 8-16
--loop-input : Re-read input file forever
Options:
--help : Print this help message and exit
--version : Print version information and exit
--aud : Use access unit delimiters
--debug <string> : Output encoders reconstruction.
--cpuid <integer> : Disable runtime cpu optimizations with value 0.
--hash : Specify which decoded picture hash to use [checksum]
"none": 0 bytes
"checksum": 18 bytes
"md5": 56 bytes
--no-psnr : Don't calculate PSNR for frames
--no-info : Don't add information about the encoder to settings.
--help : Print this help message and exit
--version : Print version information and exit
--aud : Use access unit delimiters
--debug <string> : Output encoders reconstruction.
--cpuid <integer> : Disable runtime cpu optimizations with value 0.
--hash : Decoded picture hash [checksum]
- none: 0 bytes
- checksum: 18 bytes
- md5: 56 bytes
--no-psnr : Don't calculate PSNR for frames
--no-info : Don't add encoder info SEI.
Video structure:
-q, --qp <integer> : Quantization Parameter [32]
-p, --period <integer> : Period of intra pictures [0]
0: only first picture is intra
1: all pictures are intra
2-N: every Nth picture is intra
--vps-period <integer> : Specify how often the video parameter set is
re-sent. [0]
0: only send VPS with the first frame
1: send VPS with every intra frame
N: send VPS with every Nth intra frame
-r, --ref <integer> : Reference frames, range 1..15 [3]
--gop <string> : Definition of GOP structure [0]
"0": disabled
"8": B-frame pyramid of length 8
"lp-<string>": lp-gop definition (e.g. lp-g8d4r3t2)
--cqmfile <string> : Custom Quantization Matrices from a file
--bitrate <integer> : Target bitrate. [0]
0: disable rate-control
N: target N bits per second
--lossless : Use lossless coding
--mv-constraint : Constrain movement vectors
"none": no constraint
"frametile": constrain within the tile
"frametilemargin": constrain even more
-q, --qp <integer> : Quantization Parameter [32]
-p, --period <integer> : Period of intra pictures [0]
- 0: only first picture is intra
- 1: all pictures are intra
- 2-N: every Nth picture is intra
--vps-period <integer> : Specify 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> : Reference frames, range 1..15 [3]
--gop <string> : Definition of GOP structure [0]
- 0: disabled
- 8: B-frame pyramid of length 8
- lp-<string>: lp-gop definition
(e.g. lp-g8d4t2, see README)
--cqmfile <string> : Custom Quantization Matrices from a file
--bitrate <integer> : Target bitrate. [0]
- 0: disable rate-control
- N: target N bits per second
--lossless : Use lossless coding
--mv-constraint : Constrain movement vectors
- none: no constraint
- frametile: constrain within the tile
- frametilemargin: constrain even more
Compression tools:
--no-deblock : Disable deblocking filter
--deblock <beta:tc> : Deblocking filter parameters
beta and tc range is -6..6 [0:0]
--no-sao : Disable sample adaptive offset
--no-rdoq : Disable RDO quantization
--no-signhide : Disable sign hiding in quantization
--smp : Enable Symmetric Motion Partition
--amp : Enable Asymmetric Motion Partition
--rd <integer> : Rate-Distortion Optimization level [1]
0: no RDO
1: estimated RDO
2: full RDO
--mv-rdo : Enable Rate-Distortion Optimized motion vector costs
--full-intra-search : Try all intra modes.
--no-transform-skip : Disable transform skip
--me <string> : Set integer motion estimation algorithm ["hexbs"]
"hexbs": Hexagon Based Search (faster)
"tz": Test Zone Search (better quality)
"full": Full Search (super slow)
--subme <integer> : Set fractional pixel motion estimation level [4].
0: only integer motion estimation
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> : Range for sizes of inter prediction units to try.
0: 64x64, 1: 32x32, 2: 16x16, 3: 8x8
--pu-depth-intra <int>-<int> : Range for sizes of intra prediction units to try.
0: 64x64, 1: 32x32, 2: 16x16, 3: 8x8, 4: 4x4
--bipred : Enable bi-prediction search
--cu-split-termination : Specify the cu split termination behaviour
"zero": Terminate when splitting gives little
improvement.
"off": Don't terminate splitting early
--me-early-termination : Specify the me early termination behaviour
"off": Early termination is off
"on": Early termination is on
"sensitive": Sensitive early termination is on
--implicit-rdpcm : Enable implicit residual DPCM. Currently only supported
with lossless coding.
--no-tmvp : Disable Temporal Motion Vector Prediction
--rdoq-skip : Skips RDOQ for 4x4 blocks
--deblock [<beta:tc>] : Deblocking
- beta: between -6 and 6
- tc: between -6 and 6
--(no-)sao : Sample Adaptive Offset
--(no-)rdoq : Rate-Distortion Optimized Quantization
--(no-)signhide : Sign Hiding
--(no-)smp : Symmetric Motion Partition
--(no-)amp : Asymmetric Motion Partition
--rd <integer> : Intra mode search complexity
- 0: skip intra if inter is good enough
- 1: rough intra mode search with SATD
- 2: refine intra mode search with SSE
--(no-)mv-rdo : Rate-Distortion Optimized motion vector costs
--(no-)full-intra-search
: Try all intra modes during rough search.
--(no-)transform-skip : Transform skip
--me <string> : Integer motion estimation
- hexbs: Hexagon Based Search
- tz: Test Zone Search
- full: Full Search
- full8, full16, full32, full64
--subme <integer> : Set fractional pixel motion estimation level
- 0: only integer motion estimation
- 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>
: Range for sizes for inter predictions
- 0, 1, 2, 3: from 64x64 to 8x8
--pu-depth-intra <int>-<int> : Range for sizes for intra predictions
- 0, 1, 2, 3, 4: from 64x64 to 4x4
--(no-)bipred : Bi-prediction
--(no-)cu-split-termination
: CU split search termination condition
- off: Never terminate cu-split search
- zero: Terminate with zero residual
--(no-)me-early-termination : ME early termination condition
- off: Don't terminate early
- on: Terminate early
- sensitive: Terminate even earlier
--(no-)implicit-rdpcm : Implicit residual DPCM
Currently only supported with lossless coding.
--(no-)tmvp : Temporal Motion Vector Prediction
--(no-)rdoq-skip : Skips RDOQ for 4x4 blocks
Parallel processing:
--threads <integer> : Maximum number of threads to use.
Disable threads if set to 0.
--owf <integer>|auto : Number of parallel frames to process. 0 to disable.
--wpp, --no-wpp : Wavefront parallel processing [enabled]
Enabling tiles automatically disabled WPP. To enable
WPP with tiles, re-enable it after enabling tiles.
--tiles <int>x<int> : Split picture into width x height uniform tiles.
--tiles-width-split <string>|u<int> :
Specifies a comma separated list of pixel
positions of tiles columns separation coordinates.
Can also be u followed by and a single int n,
in which case it produces columns of uniform width.
--tiles-height-split <string>|u<int> :
Specifies a comma separated list of pixel
positions of tiles rows separation coordinates.
Can also be u followed by and a single int n,
in which case it produces rows of uniform height.
--threads <integer> : Number of threads to use [auto]
- 0: process everything with main thread
- N: use N threads for encoding
- auto: select based on number of cores
--owf <integer> : Frame parallelism [auto]
- N: Process N-1 frames at a time
- auto: Select automatically
--(no-)wpp : Wavefront parallel processing [enabled]
Enabling tiles automatically disables WPP.
To enable WPP with tiles, re-enable it after
enabling tiles.
--tiles <int>x<int> : Split picture into width x height uniform tiles.
--tiles-width-split <string>|u<int> :
Specifies a comma separated list of pixel
positions of tiles columns separation coordinates.
Can also be u followed by and a single int n,
in which case it produces columns of uniform width.
--tiles-height-split <string>|u<int> :
Specifies a comma separated list of pixel
positions of tiles rows separation coordinates.
Can also be u followed by and a single int n,
in which case it produces rows of uniform height.
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"]
- component, pal, ntsc, secam, mac, undef
--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]
--sar <width:height> : Specify Sample Aspect Ratio
--overscan <string> : Specify crop overscan setting [undef]
- undef, show, crop
--videoformat <string> : Specify video format [undef]
- component, pal, ntsc, secam, mac, undef
--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]
Deprecated parameters: (might be removed at some point)
Use --input-res:
-w, --width : Width of input in pixels
-h, --height : Height of input in pixels
-w, --width : Use --input-res
-h, --height : Use --input-res
```
[comment]: # (END KVAZAAR HELP MESSAGE)

View file

@ -5,10 +5,13 @@ kvazaar \- open source HEVC encoder
\fBkvazaar \fR\-i <input> \-\-input\-res <width>x<height> \-o <output>
.SH DESCRIPTION
.TP
\fB\-i\fR, \fB\-\-input \-\-input\-res <res>
\fB\-i\fR, \fB\-\-input
Input file
.TP
\fB\-\-input\-res <res>
Input resolution [auto]
auto: detect from file name
<int>x<int>: width times height
auto: detect from file name
<int>x<int>: width times height
.TP
\fB\-o\fR, \fB\-\-output
Output file
@ -17,9 +20,9 @@ Output file
.TP
\fB\-\-preset=<preset>
Set options to a preset [medium]
ultrafast, superfast, veryfast, faster,
fast, medium, slow, slower, veryslow,
placebo
\- ultrafast, superfast, veryfast, faster,
fast, medium, slow, slower, veryslow
placebo
.SS "Input:"
.TP
@ -33,10 +36,10 @@ First frame to code [0]
Framerate of the input video [25.0]
.TP
\fB\-\-source\-scan\-type <string>
Set source scan type ["progressive"].
"progressive": progressive scan
"tff": top field first
"bff": bottom field first
Set source scan type [progressive].
\- progressive: progressive scan
\- tff: top field first
\- bff: bottom field first
.TP
\fB\-\-input\-format
P420 or P400
@ -65,16 +68,16 @@ Output encoders reconstruction.
Disable runtime cpu optimizations with value 0.
.TP
\fB\-\-hash
Specify which decoded picture hash to use [checksum]
"none": 0 bytes
"checksum": 18 bytes
"md5": 56 bytes
Decoded picture hash [checksum]
\- none: 0 bytes
\- checksum: 18 bytes
\- md5: 56 bytes
.TP
\fB\-\-no\-psnr
Don't calculate PSNR for frames
.TP
\fB\-\-no\-info
Don't add information about the encoder to settings.
Don't add encoder info SEI.
.SS "Video structure:"
.TP
@ -83,142 +86,148 @@ Quantization Parameter [32]
.TP
\fB\-p\fR, \fB\-\-period <integer>
Period of intra pictures [0]
0: only first picture is intra
1: all pictures are intra
2\-N: every Nth picture is intra
\- 0: only first picture is intra
\- 1: all pictures are intra
\- 2\-N: every Nth picture is intra
.TP
\fB\-\-vps\-period <integer>
Specify how often the video parameter set is
re\-sent. [0]
0: only send VPS with the first frame
1: send VPS with every intra frame
N: send VPS with every Nth intra frame
\- 0: only send VPS with the first frame
\- N: send VPS with every Nth intra frame
.TP
\fB\-r\fR, \fB\-\-ref <integer>
Reference frames, range 1..15 [3]
.TP
\fB\-\-gop <string>
Definition of GOP structure [0]
"0": disabled
"8": B\-frame pyramid of length 8
"lp\-<string>": lp\-gop definition (e.g. lp\-g8d4r3t2)
\- 0: disabled
\- 8: B\-frame pyramid of length 8
\- lp\-<string>: lp\-gop definition
(e.g. lp\-g8d4t2, see README)
.TP
\fB\-\-cqmfile <string>
Custom Quantization Matrices from a file
.TP
\fB\-\-bitrate <integer>
Target bitrate. [0]
0: disable rate\-control
N: target N bits per second
\- 0: disable rate\-control
\- N: target N bits per second
.TP
\fB\-\-lossless
Use lossless coding
.TP
\fB\-\-mv\-constraint
Constrain movement vectors
"none": no constraint
"frametile": constrain within the tile
"frametilemargin": constrain even more
\- none: no constraint
\- frametile: constrain within the tile
\- frametilemargin: constrain even more
.SS "Compression tools:"
.TP
\fB\-\-no\-deblock
Disable deblocking filter
\fB\-\-deblock [<beta:tc>]
Deblocking
\- beta: between \-6 and 6
\- tc: between \-6 and 6
.TP
\fB\-\-deblock <beta:tc>
Deblocking filter parameters
beta and tc range is \-6..6 [0:0]
\fB\-\-(no\-)sao
Sample Adaptive Offset
.TP
\fB\-\-no\-sao
Disable sample adaptive offset
\fB\-\-(no\-)rdoq
Rate\-Distortion Optimized Quantization
.TP
\fB\-\-no\-rdoq
Disable RDO quantization
\fB\-\-(no\-)signhide
Sign Hiding
.TP
\fB\-\-no\-signhide
Disable sign hiding in quantization
\fB\-\-(no\-)smp
Symmetric Motion Partition
.TP
\fB\-\-smp
Enable Symmetric Motion Partition
.TP
\fB\-\-amp
Enable Asymmetric Motion Partition
\fB\-\-(no\-)amp
Asymmetric Motion Partition
.TP
\fB\-\-rd <integer>
Rate\-Distortion Optimization level [1]
0: no RDO
1: estimated RDO
2: full RDO
Intra mode search complexity
\- 0: skip intra if inter is good enough
\- 1: rough intra mode search with SATD
\- 2: refine intra mode search with SSE
.TP
\fB\-\-mv\-rdo
Enable Rate\-Distortion Optimized motion vector costs
\fB\-\-(no\-)mv\-rdo
Rate\-Distortion Optimized motion vector costs
.TP
\fB\-\-full\-intra\-search
Try all intra modes.
\fB\-\-(no\-)full\-intra\-search
Try all intra modes during rough search.
.TP
\fB\-\-no\-transform\-skip
Disable transform skip
\fB\-\-(no\-)transform\-skip
Transform skip
.TP
\fB\-\-me <string>
Set integer motion estimation algorithm ["hexbs"]
"hexbs": Hexagon Based Search (faster)
"tz": Test Zone Search (better quality)
"full": Full Search (super slow)
Integer motion estimation
\- hexbs: Hexagon Based Search
\- tz: Test Zone Search
\- full: Full Search
\- full8, full16, full32, full64
.TP
\fB\-\-subme <integer>
Set fractional pixel motion estimation level [4].
0: only integer motion estimation
1: + 1/2\-pixel horizontal and vertical
2: + 1/2\-pixel diagonal
3: + 1/4\-pixel horizontal and vertical
4: + 1/4\-pixel diagonal
Set fractional pixel motion estimation level
\- 0: only integer motion estimation
\- 1: + 1/2\-pixel horizontal and vertical
\- 2: + 1/2\-pixel diagonal
\- 3: + 1/4\-pixel horizontal and vertical
\- 4: + 1/4\-pixel diagonal
.TP
\fB\-\-pu\-depth\-inter <int>\-<int>
Range for sizes of inter prediction units to try.
0: 64x64, 1: 32x32, 2: 16x16, 3: 8x8
Range for sizes for inter predictions
\- 0, 1, 2, 3: from 64x64 to 8x8
.TP
\fB\-\-pu\-depth\-intra <int>\-<int>
Range for sizes of intra prediction units to try.
0: 64x64, 1: 32x32, 2: 16x16, 3: 8x8, 4: 4x4
Range for sizes for intra predictions
\- 0, 1, 2, 3, 4: from 64x64 to 4x4
.TP
\fB\-\-bipred
Enable bi\-prediction search
\fB\-\-(no\-)bipred
Bi\-prediction
.TP
\fB\-\-cu\-split\-termination
Specify the cu split termination behaviour
"zero": Terminate when splitting gives little
improvement.
"off": Don't terminate splitting early
\fB\-\-(no\-)cu\-split\-termination
CU split search termination condition
\- off: Never terminate cu\-split search
\- zero: Terminate with zero residual
.TP
\fB\-\-me\-early\-termination
Specify the me early termination behaviour
"off": Early termination is off
"on": Early termination is on
"sensitive": Sensitive early termination is on
\fB\-\-(no\-)me\-early\-termination
ME early termination condition
\- off: Don't terminate early
\- on: Terminate early
\- sensitive: Terminate even earlier
.TP
\fB\-\-implicit\-rdpcm
Enable implicit residual DPCM. Currently only supported
with lossless coding.
\fB\-\-(no\-)implicit\-rdpcm
Implicit residual DPCM
Currently only supported with lossless coding.
.TP
\fB\-\-no\-tmvp
Disable Temporal Motion Vector Prediction
\fB\-\-(no\-)tmvp
Temporal Motion Vector Prediction
.TP
\fB\-\-rdoq\-skip
\fB\-\-(no\-)rdoq\-skip
Skips RDOQ for 4x4 blocks
.SS "Parallel processing:"
.TP
\fB\-\-threads <integer>
Maximum number of threads to use.
Disable threads if set to 0.
Number of threads to use [auto]
\- 0: process everything with main thread
\- N: use N threads for encoding
\- auto: select based on number of cores
.TP
\fB\-\-owf <integer>|auto
Number of parallel frames to process. 0 to disable.
\fB\-\-owf <integer>
Frame parallelism [auto]
\- N: Process N\-1 frames at a time
\- auto: Select automatically
.TP
\fB\-\-wpp\fR, \fB\-\-no\-wpp
\fB\-\-(no\-)wpp
Wavefront parallel processing [enabled]
Enabling tiles automatically disabled WPP. To enable
WPP with tiles, re\-enable it after enabling tiles.
Enabling tiles automatically disables WPP.
To enable WPP with tiles, re\-enable it after
enabling tiles.
.TP
\fB\-\-tiles <int>x<int>
Split picture into width x height uniform tiles.
@ -241,34 +250,33 @@ in which case it produces rows of uniform height.
Specify Sample Aspect Ratio
.TP
\fB\-\-overscan <string>
Specify crop overscan setting ["undef"]
\- undef, show, crop
Specify crop overscan setting [undef]
\- undef, show, crop
.TP
\fB\-\-videoformat <string>
Specify video format ["undef"]
\- component, pal, ntsc, secam, mac, undef
Specify video format [undef]
\- component, pal, ntsc, secam, mac, undef
.TP
\fB\-\-range <string>
Specify color range ["tv"]
\- tv, pc
Specify color range [tv]
\- tv, pc
.TP
\fB\-\-colorprim <string>
Specify color primaries ["undef"]
\- undef, bt709, bt470m, bt470bg,
smpte170m, smpte240m, film, bt2020
Specify color primaries [undef]
\- undef, bt709, bt470m, bt470bg,
smpte170m, smpte240m, film, bt2020
.TP
\fB\-\-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
Specify transfer characteristics [undef]
\- undef, bt709, bt470m, bt470bg,
smpte170m, smpte240m, linear, log100,
log316, iec61966\-2\-4, bt1361e,
iec61966\-2\-1, bt2020\-10, bt2020\-12
.TP
\fB\-\-colormatrix <string>
Specify color matrix setting ["undef"]
\- undef, bt709, fcc, bt470bg, smpte170m,
smpte240m, GBR, YCgCo, bt2020nc, bt2020c
Specify color matrix setting [undef]
\- undef, bt709, fcc, bt470bg, smpte170m,
smpte240m, GBR, YCgCo, bt2020nc, bt2020c
.TP
\fB\-\-chromaloc <integer>
Specify chroma sample location (0 to 5) [0]

294
src/cli.c
View file

@ -312,165 +312,181 @@ void print_help(void)
"Usage:\n"
"kvazaar -i <input> --input-res <width>x<height> -o <output>\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Required:\n"
" -i, --input : Input file\n"
" --input-res <res> : Input resolution [auto]\n"
" auto: detect from file name\n"
" <int>x<int>: width times height\n"
" -o, --output : Output file\n"
" -i, --input : Input file\n"
" --input-res <res> : Input resolution [auto]\n"
" auto: detect from file name\n"
" <int>x<int>: width times height\n"
" -o, --output : Output file\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Presets:\n"
" --preset=<preset> : Set options to a preset [medium]\n"
" ultrafast, superfast, veryfast, faster,\n"
" fast, medium, slow, slower, veryslow,\n"
" --preset=<preset> : Set options to a preset [medium]\n"
" - ultrafast, superfast, veryfast, faster,\n"
" fast, medium, slow, slower, veryslow\n"
" placebo\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Input:\n"
" -n, --frames <integer> : Number of frames to code [all]\n"
" --seek <integer> : First frame to code [0]\n"
" --input-fps <num>/<denom> : Framerate of the input video [25.0]\n"
" --source-scan-type <string> : Set source scan type [\"progressive\"].\n"
" \"progressive\": progressive scan\n"
" \"tff\": top field first\n"
" \"bff\": bottom field first\n"
" --input-format : P420 or P400\n"
" --input-bitdepth : 8-16\n"
" --loop-input : Re-read input file forever\n"
" -n, --frames <integer> : Number of frames to code [all]\n"
" --seek <integer> : First frame to code [0]\n"
" --input-fps <num>/<denom> : Framerate of the input video [25.0]\n"
" --source-scan-type <string> : Set source scan type [progressive].\n"
" - progressive: progressive scan\n"
" - tff: top field first\n"
" - bff: bottom field first\n"
" --input-format : P420 or P400\n"
" --input-bitdepth : 8-16\n"
" --loop-input : Re-read input file forever\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Options:\n"
" --help : Print this help message and exit\n"
" --version : Print version information and exit\n"
" --aud : Use access unit delimiters\n"
" --debug <string> : Output encoders reconstruction.\n"
" --cpuid <integer> : Disable runtime cpu optimizations with value 0.\n"
" --hash : Specify which decoded picture hash to use [checksum]\n"
" \"none\": 0 bytes\n"
" \"checksum\": 18 bytes\n"
" \"md5\": 56 bytes\n"
" --no-psnr : Don't calculate PSNR for frames\n"
" --no-info : Don't add information about the encoder to settings.\n"
" --help : Print this help message and exit\n"
" --version : Print version information and exit\n"
" --aud : Use access unit delimiters\n"
" --debug <string> : Output encoders reconstruction.\n"
" --cpuid <integer> : Disable runtime cpu optimizations with value 0.\n"
" --hash : Decoded picture hash [checksum]\n"
" - none: 0 bytes\n"
" - checksum: 18 bytes\n"
" - md5: 56 bytes\n"
" --no-psnr : Don't calculate PSNR for frames\n"
" --no-info : Don't add encoder info SEI.\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Video structure:\n"
" -q, --qp <integer> : Quantization Parameter [32]\n"
" -p, --period <integer> : Period of intra pictures [0]\n"
" 0: only first picture is intra\n"
" 1: all pictures are intra\n"
" 2-N: every Nth picture is intra\n"
" --vps-period <integer> : Specify how often the video parameter set is\n"
" re-sent. [0]\n"
" 0: only send VPS with the first frame\n"
" 1: send VPS with every intra frame\n"
" N: send VPS with every Nth intra frame\n"
" -r, --ref <integer> : Reference frames, range 1..15 [3]\n"
" --gop <string> : Definition of GOP structure [0]\n"
" \"0\": disabled\n"
" \"8\": B-frame pyramid of length 8\n"
" \"lp-<string>\": lp-gop definition (e.g. lp-g8d4r3t2)\n"
" --cqmfile <string> : Custom Quantization Matrices from a file\n"
" --bitrate <integer> : Target bitrate. [0]\n"
" 0: disable rate-control\n"
" N: target N bits per second\n"
" --lossless : Use lossless coding\n"
" --mv-constraint : Constrain movement vectors\n"
" \"none\": no constraint\n"
" \"frametile\": constrain within the tile\n"
" \"frametilemargin\": constrain even more\n"
" -q, --qp <integer> : Quantization Parameter [32]\n"
" -p, --period <integer> : Period of intra pictures [0]\n"
" - 0: only first picture is intra\n"
" - 1: all pictures are intra\n"
" - 2-N: every Nth picture is intra\n"
" --vps-period <integer> : Specify how often the video parameter set is\n"
" re-sent. [0]\n"
" - 0: only send VPS with the first frame\n"
" - N: send VPS with every Nth intra frame\n"
" -r, --ref <integer> : Reference frames, range 1..15 [3]\n"
" --gop <string> : Definition of GOP structure [0]\n"
" - 0: disabled\n"
" - 8: B-frame pyramid of length 8\n"
" - lp-<string>: lp-gop definition\n"
" (e.g. lp-g8d4t2, see README)\n"
" --cqmfile <string> : Custom Quantization Matrices from a file\n"
" --bitrate <integer> : Target bitrate. [0]\n"
" - 0: disable rate-control\n"
" - N: target N bits per second\n"
" --lossless : Use lossless coding\n"
" --mv-constraint : Constrain movement vectors\n"
" - none: no constraint\n"
" - frametile: constrain within the tile\n"
" - frametilemargin: constrain even more\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Compression tools:\n"
" --no-deblock : Disable deblocking filter\n"
" --deblock <beta:tc> : Deblocking filter parameters\n"
" beta and tc range is -6..6 [0:0]\n"
" --no-sao : Disable sample adaptive offset\n"
" --no-rdoq : Disable RDO quantization\n"
" --no-signhide : Disable sign hiding in quantization\n"
" --smp : Enable Symmetric Motion Partition\n"
" --amp : Enable Asymmetric Motion Partition\n"
" --rd <integer> : Rate-Distortion Optimization level [1]\n"
" 0: no RDO\n"
" 1: estimated RDO\n"
" 2: full RDO\n"
" --mv-rdo : Enable Rate-Distortion Optimized motion vector costs\n"
" --full-intra-search : Try all intra modes.\n"
" --no-transform-skip : Disable transform skip\n"
" --me <string> : Set integer motion estimation algorithm [\"hexbs\"]\n"
" \"hexbs\": Hexagon Based Search (faster)\n"
" \"tz\": Test Zone Search (better quality)\n"
" \"full\": Full Search (super slow)\n"
" --subme <integer> : Set fractional pixel motion estimation level [4].\n"
" 0: only integer motion estimation\n"
" 1: + 1/2-pixel horizontal and vertical\n"
" 2: + 1/2-pixel diagonal\n"
" 3: + 1/4-pixel horizontal and vertical\n"
" 4: + 1/4-pixel diagonal\n"
" --pu-depth-inter <int>-<int> : Range for sizes of inter prediction units to try.\n"
" 0: 64x64, 1: 32x32, 2: 16x16, 3: 8x8\n"
" --pu-depth-intra <int>-<int> : Range for sizes of intra prediction units to try.\n"
" 0: 64x64, 1: 32x32, 2: 16x16, 3: 8x8, 4: 4x4\n"
" --bipred : Enable bi-prediction search\n"
" --cu-split-termination : Specify the cu split termination behaviour\n"
" \"zero\": Terminate when splitting gives little\n"
" improvement.\n"
" \"off\": Don't terminate splitting early\n"
" --me-early-termination : Specify the me early termination behaviour\n"
" \"off\": Early termination is off\n"
" \"on\": Early termination is on\n"
" \"sensitive\": Sensitive early termination is on\n"
" --implicit-rdpcm : Enable implicit residual DPCM. Currently only supported\n"
" with lossless coding.\n"
" --no-tmvp : Disable Temporal Motion Vector Prediction\n"
" --rdoq-skip : Skips RDOQ for 4x4 blocks\n"
" --deblock [<beta:tc>] : Deblocking\n"
" - beta: between -6 and 6\n"
" - tc: between -6 and 6\n"
" --(no-)sao : Sample Adaptive Offset\n"
" --(no-)rdoq : Rate-Distortion Optimized Quantization\n"
" --(no-)signhide : Sign Hiding\n"
" --(no-)smp : Symmetric Motion Partition\n"
" --(no-)amp : Asymmetric Motion Partition\n"
" --rd <integer> : Intra mode search complexity\n"
" - 0: skip intra if inter is good enough\n"
" - 1: rough intra mode search with SATD\n"
" - 2: refine intra mode search with SSE\n"
" --(no-)mv-rdo : Rate-Distortion Optimized motion vector costs\n"
" --(no-)full-intra-search\n"
" : Try all intra modes during rough search.\n"
" --(no-)transform-skip : Transform skip\n"
" --me <string> : Integer motion estimation\n"
" - hexbs: Hexagon Based Search\n"
" - tz: Test Zone Search\n"
" - full: Full Search\n"
" - full8, full16, full32, full64\n"
" --subme <integer> : Set fractional pixel motion estimation level\n"
" - 0: only integer motion estimation\n"
" - 1: + 1/2-pixel horizontal and vertical\n"
" - 2: + 1/2-pixel diagonal\n"
" - 3: + 1/4-pixel horizontal and vertical\n"
" - 4: + 1/4-pixel diagonal\n"
" --pu-depth-inter <int>-<int>\n"
" : Range for sizes for inter predictions\n"
" - 0, 1, 2, 3: from 64x64 to 8x8\n"
" --pu-depth-intra <int>-<int> : Range for sizes for intra predictions\n"
" - 0, 1, 2, 3, 4: from 64x64 to 4x4\n"
" --(no-)bipred : Bi-prediction\n"
" --(no-)cu-split-termination\n"
" : CU split search termination condition\n"
" - off: Never terminate cu-split search\n"
" - zero: Terminate with zero residual\n"
" --(no-)me-early-termination : ME early termination condition\n"
" - off: Don't terminate early\n"
" - on: Terminate early\n"
" - sensitive: Terminate even earlier\n"
" --(no-)implicit-rdpcm : Implicit residual DPCM\n"
" Currently only supported with lossless coding.\n"
" --(no-)tmvp : Temporal Motion Vector Prediction\n"
" --(no-)rdoq-skip : Skips RDOQ for 4x4 blocks\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Parallel processing:\n"
" --threads <integer> : Maximum number of threads to use.\n"
" Disable threads if set to 0.\n"
" --owf <integer>|auto : Number of parallel frames to process. 0 to disable.\n"
" --wpp, --no-wpp : Wavefront parallel processing [enabled]\n"
" Enabling tiles automatically disabled WPP. To enable\n"
" WPP with tiles, re-enable it after enabling tiles.\n"
" --tiles <int>x<int> : Split picture into width x height uniform tiles.\n"
" --tiles-width-split <string>|u<int> :\n"
" Specifies a comma separated list of pixel\n"
" positions of tiles columns separation coordinates.\n"
" Can also be u followed by and a single int n,\n"
" in which case it produces columns of uniform width.\n"
" --tiles-height-split <string>|u<int> :\n"
" Specifies a comma separated list of pixel\n"
" positions of tiles rows separation coordinates.\n"
" Can also be u followed by and a single int n,\n"
" in which case it produces rows of uniform height.\n"
" --threads <integer> : Number of threads to use [auto]\n"
" - 0: process everything with main thread\n"
" - N: use N threads for encoding\n"
" - auto: select based on number of cores\n"
" --owf <integer> : Frame parallelism [auto]\n"
" - N: Process N-1 frames at a time\n"
" - auto: Select automatically\n"
" --(no-)wpp : Wavefront parallel processing [enabled]\n"
" Enabling tiles automatically disables WPP.\n"
" To enable WPP with tiles, re-enable it after\n"
" enabling tiles.\n"
" --tiles <int>x<int> : Split picture into width x height uniform tiles.\n"
" --tiles-width-split <string>|u<int> :\n"
" Specifies a comma separated list of pixel\n"
" positions of tiles columns separation coordinates.\n"
" Can also be u followed by and a single int n,\n"
" in which case it produces columns of uniform width.\n"
" --tiles-height-split <string>|u<int> :\n"
" Specifies a comma separated list of pixel\n"
" positions of tiles rows separation coordinates.\n"
" Can also be u followed by and a single int n,\n"
" in which case it produces rows of uniform height.\n"
/*
" --slice-addresses <string>|u<int> :\n"
" Specifies a comma separated list of LCU\n"
" positions in tile scan order of tile separations.\n"
" Can also be u followed by and a single int n,\n"
" in which case it produces uniform slice length.\n"
" --slice-addresses <string>|u<int> :\n"
" Specifies a comma separated list of LCU\n"
" positions in tile scan order of tile separations.\n"
" Can also be u followed by and a single int n,\n"
" in which case it produces uniform slice length.\n"
*/
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Video Usability Information:\n"
" --sar <width:height> : Specify Sample Aspect Ratio\n"
" --overscan <string> : Specify crop overscan setting [\"undef\"]\n"
" - undef, show, crop\n"
" --videoformat <string> : Specify video format [\"undef\"]\n"
" - component, pal, ntsc, secam, mac, undef\n"
" --range <string> : Specify color range [\"tv\"]\n"
" - tv, pc\n"
" --colorprim <string> : Specify color primaries [\"undef\"]\n"
" - undef, bt709, bt470m, bt470bg,\n"
" smpte170m, smpte240m, film, bt2020\n"
" --transfer <string> : Specify transfer characteristics [\"undef\"]\n"
" - undef, bt709, bt470m, bt470bg,\n"
" smpte170m, smpte240m, linear, log100,\n"
" log316, iec61966-2-4, bt1361e,\n"
" iec61966-2-1, bt2020-10, bt2020-12\n"
" --colormatrix <string> : Specify color matrix setting [\"undef\"]\n"
" - undef, bt709, fcc, bt470bg, smpte170m,\n"
" smpte240m, GBR, YCgCo, bt2020nc, bt2020c\n"
" --chromaloc <integer> : Specify chroma sample location (0 to 5) [0]\n"
" --sar <width:height> : Specify Sample Aspect Ratio\n"
" --overscan <string> : Specify crop overscan setting [undef]\n"
" - undef, show, crop\n"
" --videoformat <string> : Specify video format [undef]\n"
" - component, pal, ntsc, secam, mac, undef\n"
" --range <string> : Specify color range [tv]\n"
" - tv, pc\n"
" --colorprim <string> : Specify color primaries [undef]\n"
" - undef, bt709, bt470m, bt470bg,\n"
" smpte170m, smpte240m, film, bt2020\n"
" --transfer <string> : Specify transfer characteristics [undef]\n"
" - undef, bt709, bt470m, bt470bg,\n"
" smpte170m, smpte240m, linear, log100,\n"
" log316, iec61966-2-4, bt1361e,\n"
" iec61966-2-1, bt2020-10, bt2020-12\n"
" --colormatrix <string> : Specify color matrix setting [undef]\n"
" - undef, bt709, fcc, bt470bg, smpte170m,\n"
" smpte240m, GBR, YCgCo, bt2020nc, bt2020c\n"
" --chromaloc <integer> : Specify chroma sample location (0 to 5) [0]\n"
"\n"
/* Word wrap to this width to stay under 80 characters (including ") ************/
"Deprecated parameters: (might be removed at some point)\n"
" Use --input-res:\n"
" -w, --width : Width of input in pixels\n"
" -h, --height : Height of input in pixels\n");
" -w, --width : Use --input-res\n"
" -h, --height : Use --input-res\n");
}

View file

@ -21,11 +21,9 @@ EOF
../src/kvazaar --help 2>&1 | tail -n+5 | head -n-4 | \
sed 's| : |\n|g;
s| :$||g;
s|^ --|.TP\n\\fB--|g;
s|^ --|.TP\n\\fB--|g;
s|^ -|.TP\n\\fB-|g;
s|^ ||g;
s|^ ||g;
s|^ -|.TP\n\\fB-|g;
s|^ ||g;
s|-|\\-|g;
s|, \\-\\-|\\fR, \\fB\\-\\-|g;' \
>> $manpage_file