Documentation:Modules/x264

From VideoLAN Wiki
< Documentation:Modules
Revision as of 06:01, 16 May 2019 by DoesItReallyMatter (talk | contribs) (Add Wikipedia wikilink to CABAC)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This page is about the H.264 encoder. Were you looking for h26x, the H.264 decoder?

Module: x264
Type Muxer
First VLC version 0.7.2
Last VLC version -
Operating system(s) all
Description H.264/MPEG-4 Part 10/AVC encoder (x264)
Shortcut(s) -

Options

Frame-type

  • sout-x264-keyint <integer> : Maximum GOP size default value: 250
  • sout-x264-min-keyint <integer> : Minimum GOP size default value: 25
  • sout-x264-opengop <boolean> : Use recovery points to close GOPs default value: disabled
  • sout-x264-bluray-compat <boolean> : Enable compatibility hacks for Blu-ray support default value: disabled
  • sout-x264-scenecut <integer [-1 .. 100]> : Extra I-frames aggressivity default value: 40
  • sout-x264-bframes <integer [0 .. 16]> : B-frames between I and P default value: 3
  • sout-x264-b-adapt <integer [0 .. 2]> : Adaptive B-frame decision default value: 1
  • sout-x264-b-bias <integer [-100 .. 100]> : Influence (bias) B-frames usage default value: 0
  • sout-x264-bpyramid <string> {none,strict,normal} : Keep some B-frames as references default value: "normal"
  • sout-x264-cabac <boolean> : CABAC default value: enabled
  • sout-x264-fullrange <boolean> : Use fullrange instead of TV colorrange default value: disabled
  • sout-x264-ref <integer [1 .. 16]> : Number of reference frames default value: 3
  • sout-x264-nf <boolean> : Skip loop filter default value: disabled
  • sout-x264-deblock <string> : Loop filter AlphaC0 and Beta parameters alpha:beta default value: "0:0"
  • sout-x264-psy-rd <string> : Strength of psychovisual optimization default value: "1.0:0.0"
  • sout-x264-psy <boolean> : Use Psy-optimizations default value: enabled
  • sout-x264-level <string> : H.264 level default value: "0"
  • sout-x264-profile <string> : H.264 profile default value: "high"
  • sout-x264-interlaced <boolean> : Interlaced mode default value: disabled
  • sout-x264-frame-packing <integer> {-1,0,1,2,3,4,5,6} : Frame packing default value: -1
  • sout-x264-slices <integer> : Force number of slices per frame default value: 0
  • sout-x264-slice-max-size <integer> : Limit the size of each slice in bytes default value: 0
  • sout-x264-slice-max-mbs <integer> : Limit the size of each slice in macroblocks default value: 0
  • sout-x264-hrd <string> : HRD-timing information default value: "none"

Rate control

  • sout-x264-qp <integer [-1 .. 51]> : Set QP default value: -1
  • sout-x264-crf <integer [0 .. 51]> : Quality-based VBR default value: 23
  • sout-x264-qpmin <integer [0 .. 51]> : Min QP default value: 10
  • sout-x264-qpmax <integer [0 .. 51]> : Max QP default value: 51
  • sout-x264-qpstep <integer [0 .. 51]> : Max QP step between frames default value: 4
  • sout-x264-ratetol <float [0 .. 100]> : Average bitrate tolerance default value: 1.0
  • sout-x264-vbv-maxrate <integer> : Max local bitrate default value: 0
  • sout-x264-vbv-bufsize <integer> : VBV buffer default value: 0
  • sout-x264-vbv-init <float [0 .. 1]> : Initial VBV buffer occupancy default value: 0.9
  • sout-x264-ipratio <float [1 .. 2]> : QP factor between I and P default value: 1.40
  • sout-x264-pbratio <float [1 .. 2]> : QP factor between P and B default value: 1.30
  • sout-x264-chroma-qb-offset <integer> : QP difference between chroma and luma default value: 0
  • sout-x264-pass <integer> {0,1,2,3} : Multipass ratecontrol default value: 0
  • sout-x264-qcomp <float [0 .. 1]> : QP curve compression default value: 0.60
  • sout-x264-cplxblur <float> : Reduce fluctuations in QP default value: 20.0
  • sout-x264-qblur <float> : Reduce fluctuations in QP default value: 0.5
  • sout-x264-aq-mode <integer> {0,1,2} : Defines bitdistribution mode for AQ, default 1 default value: X264_AQ_VARIANCE
  • sout-x264-aq-strength <float> : Strength of AQ default value: 1.0

Analysis

  • sout-x264-partitions <string> {none,fast,normal,slow,all} : Partitions to consider default value: "normal"
  • sout-x264-direct <string> {none,spatial,temporal,auto} : Direct MV prediction mode default value: "spatial"
  • sout-x264-direct-8x8 <integer [-1 .. 1]> : Direct prediction size default value: 1
  • sout-x264-weightb <boolean> : Weighted prediction for B-frames default value: enabled
  • sout-x264-weightp <integer [0 .. 2]> : Weighted prediction for P-frames default value: 2
  • sout-x264-me <string> {dia,hex,umh,esa,tesa} : Integer pixel motion estimation method default value: "hex"
  • sout-x264-merange <integer [1 .. 64]> : Maximum motion vector search range default value: 16
  • sout-x264-mvrange <integer> : Maximum motion vector length default value: -1
  • sout-x264-mvrange-thread <integer> : Minimum buffer space between threads default value: -1
  • sout-x264-subme <integer [1 .. 9]> : Subpixel motion estimation and partition decision quality default value: 7
  • sout-x264-mixed-refs <boolean> : Decide references on a per partition basis default value: enabled
  • sout-x264-chroma-me <boolean> : Chroma in motion estimation default value: enabled
  • sout-x264-8x8dct <boolean> : Adaptive spatial transform size default value: enabled
  • sout-x264-trellis <integer> {0,1,2} : Trellis RD quantization: This requires CABAC default value: 1
  • sout-x264-lookahead <integer [0 .. 60]> : Framecount to use on frametype lookahead default value: 40
  • sout-x264-intra-refresh <boolean> : Use Periodic Intra Refresh default value: disabled
  • sout-x264-mbtree <boolean> : Use mb-tree ratecontrol default value: enabled
  • sout-x264-fast-pskip <boolean> : Early SKIP detection on P-frames default value: enabled
  • sout-x264-dct-decimate <boolean> : Coefficient thresholding on P-frames default value: enabled
  • sout-x264-nr <integer [0 .. 1000]> : Noise reduction default value: 0
  • sout-x264-deadzone-inter <integer [0 .. 32]> : Inter luma quantization deadzone default value: 21
  • sout-x264-deadzone-intra <integer [0 .. 32]> : Intra luma quantization deadzone default value: 11

Input/Output

  • sout-x264-non-deterministic <boolean> : Non-deterministic optimizations when threaded default value: disabled
  • sout-x264-asm <boolean> : CPU optimizations default value: enabled
  • sout-x264-psnr <boolean> : PSNR computation default value: disabled
  • sout-x264-ssim <boolean> : SSIM computation default value: disabled
  • sout-x264-quiet <boolean> : Quiet mode default value: disabled
  • sout-x264-sps-id <integer> : SPS and PPS id numbers default value: 0
  • sout-x264-aud <boolean> : Access unit delimiters default value: disabled
  • sout-x264-verbose <boolean> : Statistics default value: disabled
  • sout-x264-stats <string> : Filename for 2 pass stats file default value: "x264_2pass.log"
  • sout-x264-preset <string> : Default preset setting used default value: NULL
  • sout-x264-tune <string> : Default tune setting used default value: NULL
  • sout-x264-options <string> : x264 advanced options, in the form {opt=val,op2=val2} default value: NULL

Appendix

For the option --sout-x264-frame-packing:

-1
disabled
0
checkerboard - pixels are alternatively from L and R
1
column alternation - L and R are interlaced by column
2
row alternation - L and R are interlaced by row
3
side by side - L is on the left, R on the right
4
top bottom - L is on top, R on bottom
5
frame alternation - one view per frame

For the option --sout-x264-pass:

1
First pass, creates stats file
2
Last pass, does not overwrite stats file
3
Nth pass, overwrites stats file

For the option --sout-x264-aq-mode:

0
Disabled
1
Current x264 default mode
2
uses log(var)² instead of log(var) and attempts to adapt strength per frame

For the option --sout-x264-trellis:

0
disabled
1
enabled only on the final encode of a MB
2
enabled on all mode decisions

Source code

This page is part of official VLC media player Documentation (User GuideStreaming HowToHacker GuideModules)
Please read the Documentation Editing Guidelines before you edit the documentation
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.