Commit | Line | Data |
---|---|---|
4d13a1de MB |
1 | .TH X265 "1" "AUGUST 2014" "v1.4" "User Commands" |
2 | .SH NAME | |
3 | x265 \- H.265/HEVC video encoder | |
4 | ||
5 | .SH SYNOPSIS | |
6 | .B x265 \fR[options] \fIinfile \fR[\-o] \fIoutfile | |
7 | .br | |
8 | Bit depth: 8 | |
9 | .PP | |
10 | .B x265\-10bit \fR[options] \fIinfile \fR[\-o] \fIoutfile | |
11 | .br | |
12 | Bit depth: 10 | |
13 | .PP | |
14 | infile can be YUV or Y4M | |
15 | .br | |
16 | outfile is raw HEVC bitstream | |
17 | ||
18 | .SH DESCRIPTION | |
19 | Increasing demand for high definition and ultra\-high definition video, | |
20 | along with an increasing desire for video on demand has led to | |
21 | exponential growth in demand for bandwidth and storage requirements. | |
22 | These challenges can be met by the new High Efficiency Video Coding | |
23 | (HEVC) standard, also known as H.265. The x265 HEVC encoder project was | |
24 | launched by MulticoreWare in 2013, aiming to provide the most efficient, | |
25 | highest performance HEVC video encoder. | |
26 | .SS About HEVC | |
27 | The High Efficiency Video Coding (HEVC) was developed by the ISO/IEC | |
28 | Moving Picture Experts Group (MPEG) and ITU\-T Video Coding Experts Group | |
29 | (VCEG), through their Joint Collaborative Team on Video Coding (JCT\-VC). | |
30 | HEVC is also known as ISO/IEC 23008\-2 MPEG\-H Part 2 and ITU\-T H.265. | |
31 | HEVC provides superior video quality and up to twice the data | |
32 | compression as the previous standard (H.264/MPEG\-4 AVC). HEVC can | |
33 | support 8K Ultra High Definition video, with a picture size up to | |
34 | 8192x4320 pixels. | |
35 | .SS About x265 | |
36 | The primary objective of x265 is to become the best H.265/HEVC encoder | |
37 | available anywhere, offering the highest compression efficiency and the | |
38 | highest performance on a wide variety of hardware platforms. The x265 | |
39 | encoder is available as an open source library, published under the | |
40 | GPLv2 license. It is also available under a commercial license, enabling | |
41 | commercial companies to utilize and distribute x265 in their solutions | |
42 | without being subject to the restrictions of the GPL license. | |
43 | ||
44 | .SH OPTIONS | |
45 | .TP | |
46 | \fB\-h/\-\-help | |
47 | Show this help text and exit | |
48 | .TP | |
49 | \fB\-V/\-\-version | |
50 | Show version info and exit | |
51 | ||
52 | .SS "Output Options:" | |
53 | .TP | |
54 | \fB\-\-output <filename> | |
55 | Bitstream output file name | |
56 | .TP | |
57 | \fB\-\-log\-level <string> | |
58 | Logging level: none error warning info debug full. Default info | |
59 | .TP | |
60 | \fB\-\-no\-progress | |
61 | Disable CLI progress reports | |
62 | .TP | |
63 | \fB\-\-[no\-]cu\-stats | |
64 | Enable logging stats about distribution of cu across all modes. Default disabled | |
65 | .TP | |
66 | \fB\-\-csv <filename> | |
67 | Comma separated log file, log level >= 3 frame log, else one line per run | |
68 | ||
69 | .SS "Input Options:" | |
70 | .TP | |
71 | \fB\-\-input <filename> | |
72 | Raw YUV or Y4M input file name. `\-` for stdin | |
73 | .TP | |
74 | \fB\-\-y4m | |
75 | Force parsing of input stream as YUV4MPEG2 regardless of file extension | |
76 | .TP | |
77 | \fB\-\-fps <float|rational> | |
78 | Source frame rate (float or num/denom), auto\-detected if Y4M | |
79 | .TP | |
80 | \fB\-\-input\-res WxH | |
81 | Source picture size [w x h], auto\-detected if Y4M | |
82 | .TP | |
83 | \fB\-\-input\-depth <integer> | |
84 | Bit\-depth of input file. Default 8 | |
85 | .TP | |
86 | \fB\-\-input\-csp <string> | |
87 | Source color space: i420, i444 or i422, auto\-detected if Y4M. Default: i420 | |
88 | .TP | |
89 | \fB\-f/\-\-frames <integer> | |
90 | Maximum number of frames to encode. Default all | |
91 | .TP | |
92 | \fB\-\-seek <integer> | |
93 | First frame to encode | |
94 | .TP | |
95 | \fB\-\-[no\-]interlace <bff|tff> | |
96 | Indicate input pictures are interlace fields in temporal order. Default progressive | |
97 | .TP | |
98 | \fB\-\-dither | |
99 | Enable dither if downscaling to 8 bit pixels. Default disabled | |
100 | ||
101 | .SS "Quality reporting metrics:" | |
102 | .TP | |
103 | \fB\-\-[no\-]ssim | |
104 | Enable reporting SSIM metric scores. Default disabled | |
105 | .TP | |
106 | \fB\-\-[no\-]psnr | |
107 | Enable reporting PSNR metric scores. Default disabled | |
108 | ||
109 | .SS "Profile, Level, Tier:" | |
110 | .TP | |
111 | \fB\-\-profile <string> | |
112 | Enforce an encode profile: main, main10, mainstillpicture | |
113 | .TP | |
114 | \fB\-\-level\-idc <integer|float> | |
115 | Force a minumum required decoder level (as '5.0' or '50') | |
116 | .TP | |
117 | \fB\-\-[no\-]high\-tier | |
118 | If a decoder level is specified, this modifier selects High tier of that level | |
119 | ||
120 | .SS "Threading, performance:" | |
121 | .TP | |
122 | \fB\-\-threads <integer> | |
123 | Number of threads for thread pool (0: detect CPU core count, default) | |
124 | .TP | |
125 | \fB\-F/\-\-frame\-threads <integer> | |
126 | Number of concurrently encoded frames. 0: auto\-determined by core count | |
127 | .TP | |
128 | \fB\-\-[no\-]wpp | |
129 | Enable Wavefront Parallel Processing. Default enabled | |
130 | .TP | |
131 | \fB\-\-[no\-]pmode | |
132 | Parallel mode analysis. Default disabled | |
133 | .TP | |
134 | \fB\-\-[no\-]pme | |
135 | Parallel motion estimation. Default disabled | |
136 | .TP | |
137 | \fB\-\-[no\-]asm <bool|int|string> | |
138 | Override CPU detection. Default: auto | |
139 | ||
140 | .SS Presets: | |
141 | .TP | |
142 | \fB\-p/\-\-preset <string> | |
143 | Trade off performance for compression efficiency. Default medium | |
144 | .br | |
145 | ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, or placebo | |
146 | .TP | |
147 | \fB\-t/--tune <string> | |
148 | Tune the settings for a particular type of source or situation:" | |
149 | .br | |
150 | psnr, ssim, zerolatency, or fastdecode | |
151 | ||
152 | .SS "Quad-Tree size and depth:" | |
153 | .TP | |
154 | \fB\-s/\-\-ctu <64|32|16> | |
155 | Maximum CU size (default: 64x64). Default 64 | |
156 | .TP | |
157 | \fB\-\-tu\-intra\-depth <integer> | |
158 | Max TU recursive depth for intra CUs. Default 1 | |
159 | .TP | |
160 | \fB\-\-tu\-inter\-depth <integer> | |
161 | Max TU recursive depth for inter CUs. Default 1 | |
162 | .TP | |
163 | \fB\-\-[no\-]rect | |
164 | Enable rectangular motion partitions Nx2N and 2NxN. Default disabled | |
165 | .TP | |
166 | \fB\-\-[no\-]amp | |
167 | Enable asymmetric motion partitions, requires \fB\-\-rect\fR. Default disabled | |
168 | .TP | |
169 | \fB\-\-rd <0..6> | |
170 | Level of RD in mode decision 0:least....6:full RDO. Default 3 | |
171 | .TP | |
172 | \fB\-\-psy\-rd <0..2.0> | |
173 | Strength of psycho\-visual rate distortion optimization, 0 to disable. Default 0.000000 | |
174 | .TP | |
175 | \fB\-\-psy\-rdoq <0..50.0> | |
176 | Strength of psycho\-visual optimization in quantization, 0 to disable. Default 0.000000 | |
177 | .TP | |
178 | \fB\-\-nr <integer> | |
179 | An integer value in range of 100 to 1000, which denotes strength of noise reduction. Default disabled | |
180 | .TP | |
181 | \fB\-\-[no\-]tskip\-fast | |
182 | Enable fast intra transform skipping. Default disabled | |
183 | .TP | |
184 | \fB\-\-[no\-]early\-skip | |
185 | Enable early SKIP detection. Default disabled | |
186 | .TP | |
187 | \fB\-\-[no\-]fast\-cbf | |
188 | Enable early outs based on whether residual is coded. Default disabled | |
189 | ||
190 | .SS "Coding tools:" | |
191 | .TP | |
192 | \fB\-w/\-\-[no\-]weightp | |
193 | Enable weighted prediction in P slices. Default enabled | |
194 | .TP | |
195 | \fB\-\-[no\-]weightb | |
196 | Enable weighted prediction in B slices. Default disabled | |
197 | .TP | |
198 | \fB\-\-[no\-]cu-lossless | |
199 | Consider lossless mode in CU RDO decisions. Default disabled | |
200 | .TP | |
201 | \fB\-\-[no\-]signhide | |
202 | Hide sign bit of one coeff per TU (rdo). Default enabled | |
203 | .TP | |
204 | \fB\-\-[no\-]tskip | |
205 | Enable intra transform skipping. Default disabled | |
206 | ||
207 | .SS "Temporal / motion search options:" | |
208 | .TP | |
209 | \fB\-\-me <string> | |
210 | Motion search method dia hex umh star full. Default 1 | |
211 | .TP | |
212 | \fB\-m/\-\-subme <integer> | |
213 | Amount of subpel refinement to perform (0:least .. 7:most). Default 2 | |
214 | .TP | |
215 | \fB\-\-merange <integer> | |
216 | Motion search range. Default 57 | |
217 | .TP | |
218 | \fB\-\-max\-merge <1..5> | |
219 | Maximum number of merge candidates. Default 2 | |
220 | .TP | |
221 | \fB\-\-[no\-]temporal\-mvp | |
222 | Enable temporal MV predictors. Default enabled | |
223 | ||
224 | .SS "Spatial / intra options:" | |
225 | .TP | |
226 | \fB\-\-[no\-]strong\-intra\-smoothing | |
227 | Enable strong intra smoothing for 32x32 blocks. Default enabled | |
228 | .TP | |
229 | \fB\-\-[no\-]constrained\-intra | |
230 | Constrained intra prediction (use only intra coded reference pixels) Default disabled | |
231 | .TP | |
232 | \fB\-\-[no\-]b\-intra | |
233 | Enable intra in B frames in veryslow presets. Default disabled | |
234 | .TP | |
235 | \fB\-\-[no\-]fast\-intra | |
236 | Enable faster search method for angular intra predictions. Default disabled | |
237 | .TP | |
238 | \fB\-\-rdpenalty <0..2> | |
239 | penalty for 32x32 intra TU in non\-I slices. 0:disabled 1:RD\-penalty 2:maximum. Default 0 | |
240 | ||
241 | .SS "Slice decision options:" | |
242 | .TP | |
243 | \fB\-\-[no\-]open\-gop | |
244 | Enable open\-GOP, allows I slices to be non\-IDR. Default enabled | |
245 | .TP | |
246 | \fB\-I/\-\-keyint <integer> | |
247 | Max IDR period in frames. \-1 for infinite\-gop. Default 250 | |
248 | .TP | |
249 | \fB\-i/\-\-min\-keyint <integer> | |
250 | Scenecuts closer together than this are coded as I, not IDR. Default: auto | |
251 | .TP | |
252 | \fB\-\-no\-scenecut | |
253 | Disable adaptive I\-frame decision | |
254 | .TP | |
255 | \fB\-\-scenecut <integer> | |
256 | How aggressively to insert extra I\-frames. Default 40 | |
257 | .TP | |
258 | \fB\-\-rc\-lookahead <integer> | |
259 | Number of frames for frame\-type lookahead (determines encoder latency) Default 20 | |
260 | .TP | |
261 | \fB\-\-bframes <integer> | |
262 | Maximum number of consecutive b\-frames (now it only enables B GOP structure) Default 4 | |
263 | .TP | |
264 | \fB\-\-bframe\-bias <integer> | |
265 | Bias towards B frame decisions. Default 0 | |
266 | .TP | |
267 | \fB\-\-b\-adapt <0..2> | |
268 | 0 \- none, 1 \- fast, 2 \- full (trellis) adaptive B frame scheduling. Default 2 | |
269 | .TP | |
270 | \fB\-\-[no\-]b\-pyramid | |
271 | Use B\-frames as references. Default enabled | |
272 | .TP | |
273 | \fB\-\-ref <integer> | |
274 | max number of L0 references to be allowed (1 .. 16) Default 3 | |
275 | .TP | |
276 | \fB\-\-qpfile <string> | |
277 | Force frametypes and QPs for some or all frames | |
278 | .br | |
279 | Format of each line: framenumber frametype QP | |
280 | .br | |
281 | QP is optional (none lets x265 choose). Frametypes: I,i,P,B,b. | |
282 | .br | |
283 | QPs are restricted by qpmin/qpmax. | |
284 | .PP | |
285 | ||
286 | .SS "Rate control, Quantization:" | |
287 | .TP | |
288 | \fB\-\-bitrate <integer> | |
289 | Target bitrate (kbps) for ABR (implied). Default 0 | |
290 | .TP | |
291 | \fB\-\-crf <float> | |
292 | Quality\-based VBR (0\-51). Default 28.000000 | |
293 | .TP | |
294 | \fB\-\-[no\-]lossless | |
295 | Enable lossless: bypass transform, quant and loop filters globally. Default disabled | |
296 | .TP | |
297 | \fB\-\-crf\-max <float> | |
298 | With CRF+VBV, limit RF to this value. Default 0.000000 | |
299 | .br | |
300 | May cause VBV underflows! | |
301 | .TP | |
302 | \fB\-\-crf\-min <float> | |
303 | With CRF+VBV, limit RF to this value. Default 0.000000 | |
304 | .br | |
305 | this specifies a minimum rate factor value for encode! | |
306 | .TP | |
307 | \fB\-\-vbv\-maxrate <integer> | |
308 | Max local bitrate (kbit/s). Default 0 | |
309 | .TP | |
310 | \fB\-\-vbv\-bufsize <integer> | |
311 | Set size of the VBV buffer (kbit). Default 0 | |
312 | .TP | |
313 | \fB\-\-vbv\-init <float> | |
314 | Initial VBV buffer occupancy (fraction of bufsize or in kbits). Default 0.900000 | |
315 | .TP | |
316 | \fB\-\-aq\-mode <integer> | |
317 | Mode for Adaptive Quantization \- 0:none 1:uniform AQ 2:auto variance. Default 2 | |
318 | .TP | |
319 | \fB\-\-aq\-strength <float> | |
320 | Reduces blocking and blurring in flat and textured areas.(0 to 3.0). Default 1.000000 | |
321 | .TP | |
322 | \fB\-\-[no\-]cutree | |
323 | Enable cutree for Adaptive Quantization. Default enabled | |
324 | .TP | |
325 | \fB\-\-ipratio <float> | |
326 | QP factor between I and P. Default 1.400000 | |
327 | .TP | |
328 | \fB\-\-pbratio <float> | |
329 | QP factor between P and B. Default 1.300000 | |
330 | .TP | |
331 | \fB\-\-cbqpoffs <integer> | |
332 | Chroma Cb QP Offset. Default 0 | |
333 | .TP | |
334 | \fB\-\-crqpoffs <integer> | |
335 | Chroma Cr QP Offset. Default 0 | |
336 | .TP | |
337 | \fB\-\-stats | |
338 | Filename for stats file in multipass pass rate control. Default x265_2pass.log | |
339 | .TP | |
340 | \fB\-\-pass | |
341 | Multi pass rate control. | |
342 | .br | |
343 | \- 1 : First pass, creates stats file | |
344 | .br | |
345 | \- 2 : Last pass, does not overwrite stats file | |
346 | .br | |
347 | \- 3 : Nth pass, overwrites stats file | |
348 | .TP | |
349 | \fB\-\-[no\-]slow\-firstpass | |
350 | Enable a slow first pass in a multipass rate control mode. Default disabled | |
351 | .TP | |
352 | \fB\-\-analysis\-mode <string|int> | |
353 | save \- Dump analysis info into file, load \- Load analysis buffers from the file. Default 0 | |
354 | .TP | |
355 | \fB\-\-analysis-file <filename> | |
356 | Specify file name used for either dumping or reading analysis data. | |
357 | .TP | |
358 | \fB\-\-scaling\-list <string> | |
359 | Specify a file containing HM style quant scaling lists or 'default' or 'off'. Default: off | |
360 | .TP | |
361 | \fB\-\-lambda\-file <string> | |
362 | Specify a file containing replacement values for the lambda tables | |
363 | .br | |
364 | MAX_MAX_QP+1 floats for lambda table, then again for lambda2 table | |
365 | .br | |
366 | Blank lines and lines starting with hash(#) are ignored | |
367 | .br | |
368 | Comma is considered to be white-space | |
369 | ||
370 | .SS "Loop filters (deblock and SAO):" | |
371 | .TP | |
372 | \fB\-\-[no\-]lft | |
373 | Enable Deblocking Loop Filter. Default enabled | |
374 | .TP | |
375 | \fB\-\-[no\-]sao | |
376 | Enable Sample Adaptive Offset. Default enabled | |
377 | .TP | |
378 | \fB\-\-[no\-]sao\-non\-deblock | |
379 | Use non\-deblocked pixels, else right/bottom boundary areas skipped. Default disabled | |
380 | ||
381 | .SS "VUI options:" | |
382 | .TP | |
383 | \fB\-\-sar <width:height|int> | |
384 | Sample Aspect Ratio, the ratio of width to height of an individual pixel. | |
385 | .br | |
386 | Choose from 0=undef, 1=1:1("square"), 2=12:11, 3=10:11, 4=16:11, | |
387 | 5=40:33, 6=24:11, 7=20:11, 8=32:11, 9=80:33, 10=18:11, 11=15:11, | |
388 | 12=64:33, 13=160:99, 14=4:3, 15=3:2, 16=2:1 or custom ratio of <int:int>. Default 0 | |
389 | .TP | |
390 | \fB\-\-crop\-rect <string> | |
391 | Add 'left,top,right,bottom' to the bitstream\-level cropping rectangle | |
392 | .TP | |
393 | \fB\-\-overscan <string> | |
394 | Specify whether it is appropriate for decoder to show cropped region: undef, show or crop. Default undef | |
395 | .TP | |
396 | \fB\-\-videoformat <string> | |
397 | Specify video format from undef, component, pal, ntsc, secam, mac. Default undef | |
398 | .TP | |
399 | \fB\-\-range <string> | |
400 | Specify black level and range of luma and chroma signals as full or limited Default limited | |
401 | .TP | |
402 | \fB\-\-colorprim <string> | |
403 | Specify color primaries from undef, bt709, bt470m, bt470bg, smpte170m, | |
404 | smpte240m, film, bt2020. Default undef | |
405 | .TP | |
406 | \fB\-\-transfer <string> | |
407 | Specify transfer characteristics from undef, bt709, bt470m, bt470bg, smpte170m, | |
408 | smpte240m, linear, log100, log316, iec61966\-2\-4, bt1361e, iec61966\-2\-1, | |
409 | bt2020\-10, bt2020\-12. Default undef | |
410 | .TP | |
411 | \fB\-\-colormatrix <string> | |
412 | Specify color matrix setting from undef, bt709, fcc, bt470bg, smpte170m, | |
413 | smpte240m, GBR, YCgCo, bt2020nc, bt2020c. Default undef | |
414 | .TP | |
415 | \fB\-\-chromaloc <integer> | |
416 | Specify chroma sample location (0 to 5). Default of 0 | |
417 | ||
418 | .SS "Bitstream options:" | |
419 | .TP | |
420 | \fB\-\-[no\-]info | |
421 | Emit SEI identifying encoder and parameters. Default enabled | |
422 | .TP | |
423 | \fB\-\-[no\-]aud | |
424 | Emit access unit delimiters at the start of each access unit. Default disabled | |
425 | .TP | |
426 | \fB\-\-[no\-]hrd | |
427 | Enable HRD parameters signalling. Default disabled | |
428 | .TP | |
429 | \fB\-\-[no\-]repeat\-headers | |
430 | Emit SPS and PPS headers at each keyframe. Default disabled | |
431 | .TP | |
432 | \fB\-\-hash <integer> | |
433 | Decoded Picture Hash SEI 0: disabled, 1: MD5, 2: CRC, 3: Checksum. Default 0 | |
434 | ||
435 | .SS "Reconstructed video options (debugging):" | |
436 | .TP | |
437 | \fB\-r/\-\-recon <filename> | |
438 | Reconstructed raw image YUV or Y4M output file name | |
439 | .TP | |
440 | \fB\-\-recon\-depth <integer> | |
441 | Bit\-depth of reconstructed raw image file. Defaults to input bit depth, or 8 if Y4M | |
442 | .SH COPYRIGHT | |
443 | Copyright \(co 2013\-2014 MulticoreWare, Inc. | |
444 | .PP | |
445 | The x265 software is owned and copyrighted by MulticoreWare, Inc. | |
446 | MulticoreWare is committed to offering the x265 software under the GNU | |
447 | GPL v2 license. Companies who do not wish to integrate the x265 | |
448 | Software in their products under the terms of the GPL license can | |
449 | contact MulticoreWare (\fIlicense@x265.com\fR) to obtain a commercial | |
450 | license agreement. Companies who use x265 under the GPL may also wish | |
451 | to work with MulticoreWare to accelerate the development of specific | |
452 | features or optimized support for specific hardware or software | |
453 | platforms, or to contract for support. | |
454 | .PP | |
455 | The GNU GPL v2 license or the x265 commercial license agreement govern | |
456 | your rights to access the copyrighted x265 software source code, but do | |
457 | not cover any patents that may be applicable to the function of binary | |
458 | executable software created from the x265 source code. You are | |
459 | responsible for understanding the laws in your country, and for | |
460 | licensing all applicable patent rights needed for use or distribution of | |
461 | software applications created from the x265 source code. A good place | |
462 | to start is with the Motion Picture Experts Group \- Licensing Authority | |
463 | \- HEVC Licensing Program. | |
464 | .PP | |
465 | x265 is a registered trademark of MulticoreWare, Inc. The x265 logo is | |
466 | a trademark of MulticoreWare, and may only be used with explicit written | |
467 | permission. All rights reserved. | |
468 | ||
469 | .SH "SEE ALSO" | |
470 | .TP | |
471 | \fIhttp://x265.readthedocs.org/en/default/cli.html\fR | |
472 | online documentation |