=============================================================================================
ffmpeg 和 x264的参数对照
| x264 |
| ffmpeg |
| 说明 |
| 命令行 | 字段 | 命令行 | 字段 |
|
| qp qp_constant | cqp |
| cqp | 固定量化因子。取值范围0到51。 经常取值在20-40之间,越小质量 越好,要求的码率越高。0表示无损压缩 |
| max-keyint | i_keyint_max | g | gop_size | 关键帧的最大间隔帧数 |
| min-keyint | i_keyint_min |
| keyint_min | 关键帧的最小间隔帧数 |
| level | i_level_idc |
| level | 取值范围10-51。 设置比特流的Level。默认40,即4.0。 用来告诉解码器需要支持的什么级别的 兼容性。只有在你知道自己在做什么的 时候才设置该参数。 |
| frameref | i_frame_reference |
| refs | B和P帧向前预测参考的帧数。取值范 围1-16。 该值不影响解码的速度,但是越大解码 所需的内存越大。这个值在一般情况下 越大效果越好,但是超过6以后效果就 不明显了。 |
| bframes | i_bframe |
| max_b_frames | 最大B帧数. |
| b-adapt | b_bframe_adaptive |
| b_frame_strategy | 如果为true,则自动决定什么时候需要 插入B帧,最高达到设置的最大B帧数。 如果设置为false,那么最大的B帧数被 使用。 |
| b-pyramid | b_bframe_pyramid |
| FLAGS2(CODEC_FLAG2_BPYRAMID) | 当设置B帧>=2时候,通过开启这个选 项可以获得质量的略微提高,但是没有 任何的速度损失。 |
|
| b_deblocking_filter |
| FLAGS(CODEC_FLAG_LOOP_FILTER) |
|
| deblock | i_deblocking_filter_alphac0 |
| deblockalpha |
|
| cabac | b_cabac |
| coder_type(FF_CODER_TYPE_AC) | 使用CABAC熵编码技术,为引起轻微的 编码和解码的速度损失,但是可以提高 10%-15%的编码质量。 |
| qmin | i_qp_min |
| qmin | 最小的量化因子。取值范围1-51。建 议在10-30之间。 |
| qmax | i_qp_max |
| qmax | 最大的量化因子。取值范围1-51。建 议在10-30之间。 |
| qpstep qp-step | i_qp_step |
| max_qdiff | 最大的在帧与帧之间进行切变的量化 因子的变化量。 |
| qcomp | f_qcompress |
|
|
|
| vbv-maxrate | i_vbv_max_bitrate | b | rc_max_rate | 允许的最大码流,x264里面以kbps为 单位,ffmpeg以bps为单位 |
| vbv-bufsize | i_vbv_buffer_size | bufsize | rc_buffer_size | 在指定vbv-maxrate的时候必须设置 该字段。 |
| vbv-init | f_vbv_buffer_init |
| rc_initial_buffer_occupancy | 初始的缓存占用量 |
| qcomp | f_qcompress |
| qcompress | 量化器压缩比率0-1.越小则比特率 越区域固定,但是越高越使量化器 参数越固定。 |
| direct-pred direct | i_direct_mv_pred |
| directpred | B帧里面采用的运动侦测的方式。 时间和空间方式大致PSNR和速度 是一致的。设置为auto质量会好一 些,但是速度会下降一些,设置为0 ,质量和速度都会下降.可以选择 none, auto, temporal, spatial. |
| weightb weight-b | b_weighted_bipred |
| FLAGS2(CODEC_FLAG2_WPRED) | 当B帧设置>1时使用 |
| partitions analyse | inter |
|
| X264_ANALYSE_I4x4 X264_ANALYSE_I8x8 X264_ANALYSE_PSUB16x16 X264_ANALYSE_PSUB8x8 X264_ANALYSE_BSUB16x16 |
| 8x8dct | b_transform_8x8 |
| FLAGS(CODEC_FLAG2_8X8DCT) |
|
| me | i_me_method |
| me_method | 运动侦测的方式 ME_EPZS ME_HEX ME_UMH ME_FULL ME_ESA |
| me-range merange | i_me_range |
| me_range | 运动侦测的半径 |
| subq subme | i_subpel_refine |
| me_subpel_quality | 这个参数控制在运动估算过程中质 量和速度的权衡。Subq=5可以压 缩>10%于subq=1。1-7 |
| mixed-refs | b_mixed_references |
| FLAGS2(CODEC_FLAG2_MIXED_REFS) | 允许8*8,16*8运动块独立地选择 参考帧,如果disable,则所有的宏 块必须参考同一帧。 需要frameref > 1 |
| brdo | b_bframe_rdo |
| FLAGS2(CODEC_FLAG2_BRDO) | 需要subq>6 |
| bime | b_bidir_me |
| bidir_refine | 取值范围:true,false.这个值在没 有B帧的时候失效。在双向预测宏块中 双向运动矢量使用。 |
| trellis | i_trellis |
| trellis |
|
| deadzone-intra | i_luma_deadzone |
| 没有对应值 |
|
| deadzone-inter | i_luma_deadzone |
| 没有对应值 |
|
| fast-pskip | b_fast_pskip |
| FLAGS(CODEC_FLAG2_FASTPSKIP) | 在P帧内执行早期快速跳跃探测。 这个经常在没有任何损失的前提 下提高了速度。 |
| dct-decimate | b_dct_decimate |
| 没有对应值 |
|
| nr | i_noise_reduction |
| noise_reduction | 0意味着关闭,对于噪声很大的 内容你需要打开。 范围:0-100000 |
| interlaced | b_interlaced |
| 没有对应值 |
|
| global-header | b_repeat_headers |
| FLAGS(CODEC_FLAG_GLOBAL_HEADER) | 使得SPS和PPS只在流的开始处 产生一次。有些播放器,如SONY 的PSP需要开启此参数。默认的设 置使得SPS和PPS在每一个IDR帧 开始出都进行重复。 |
| aud | b_aud |
| FLAGS2(CODEC_FLAG2_AUD) |
|
| threads | i_threads |
| thread_count | 将帧切分成块,由不同的线程进行 分别编码。0-4。 0 for auto |
| rc-eq | psz_rc_eq |
| rc_eq |
|
| --no-psnr | b_psnr |
| FLAGS(CODEC_FLAG_PSNR) | 是否开启PSNR. |
| --no-ssim | b_ssim |
| 没有对应值 |
|
| --progress | b_progress |
| 没有对应值 |
|
| --bitrate | i_bitrate | b | bit_rate | 编码输出的比特率,并启用 ABR(Average Birtate 模式(i_rc_method), |
| qblur | f_qblur |
| qblur |
|
|
| f_complexity_blur |
| complexityblur |
|
===========================================================================
X264 完全命令
x264 core:135 r2345 f0c1c53
Syntax: x264 [options] -o outfile infile
Infile can be raw (in which case resolution is required),
or YUV4MPEG (*.y4m),
or Avisynth if compiled with support (yes).
or libav* formats if compiled with lavf support (yes) or ffms support (yes).
Outfile type is selected by filename:
.264 -> Raw bytestream
.mkv -> Matroska
.flv -> Flash Video
.mp4 -> MP4 if compiled with GPAC support (yes)
Output bit depth: 8 (configured at compile time)
Options:
-h, --help List basic options
--longhelp List more options
--fullhelp List all options
Example usage:
Constant quality mode:
x264 --crf 24 -o <output> <input>
Two-pass with a bitrate of 1000kbps:
x264 --pass 1 --bitrate 1000 -o <output> <input>
x264 --pass 2 --bitrate 1000 -o <output> <input>
Lossless:
x264 --qp 0 -o <output> <input>
Maximum PSNR at the cost of speed and visual quality:
x264 --preset placebo --tune psnr -o <output> <input>
Constant bitrate at 1000kbps with a 2 second-buffer:
x264 --vbv-bufsize 2000 --bitrate 1000 -o <output> <input>
Presets:
--profile <string> Force the limits of an H.264 profile
Overrides all settings.
- baseline:
--no-8x8dct --bframes 0 --no-cabac
--cqm flat --weightp 0
No interlaced.
No lossless.
- main:
--no-8x8dct --cqm flat
No lossless.
- high:
No lossless.
- high10:
No lossless.
Support for bit depth 8-10.
- high422:
No lossless.
Support for bit depth 8-10.
Support for 4:2:0/4:2:2 chroma subsampling.
- high444:
Support for bit depth 8-10.
Support for 4:2:0/4:2:2/4:4:4 chroma subsampling.
--preset <string> Use a preset to select encoding settings [medium]
Overridden by user settings.
- ultrafast:
--no-8x8dct --aq-mode 0 --b-adapt 0
--bframes 0 --no-cabac --no-deblock
--no-mbtree --me dia --no-mixed-refs
--partitions none --rc-lookahead 0 --ref 1
--scenecut 0 --subme 0 --trellis 0
--no-weightb --weightp 0
- superfast:
--no-mbtree --me dia --no-mixed-refs
--partitions i8x8,i4x4 --rc-lookahead 0
--ref 1 --subme 1 --trellis 0 --weightp 1
- veryfast:
--no-mixed-refs --rc-lookahead 10
--ref 1 --subme 2 --trellis 0 --weightp 1
- faster:
--no-mixed-refs --rc-lookahead 20
--ref 2 --subme 4 --weightp 1
- fast:
--rc-lookahead 30 --ref 2 --subme 6
--weightp 1
- medium:
Default settings apply.
- slow:
--b-adapt 2 --direct auto --me umh
--rc-lookahead 50 --ref 5 --subme 8
- slower:
--b-adapt 2 --direct auto --me umh
--partitions all --rc-lookahead 60
--ref 8 --subme 9 --trellis 2
- veryslow:
--b-adapt 2 --bframes 8 --direct auto
--me umh --merange 24 --partitions all
--ref 16 --subme 10 --trellis 2
--rc-lookahead 60
- placebo:
--bframes 16 --b-adapt 2 --direct auto
--slow-firstpass --no-fast-pskip
--me tesa --merange 24 --partitions all
--rc-lookahead 60 --ref 16 --subme 11
--trellis 2
--tune <string> Tune the settings for a particular type of source
or situation
Overridden by user settings.
Multiple tunings are separated by commas.
Only one psy tuning can be used at a time.
- film (psy tuning):
--deblock -1:-1 --psy-rd <unset>:0.15
- animation (psy tuning):
--bframes {+2} --deblock 1:1
--psy-rd 0.4:<unset> --aq-strength 0.6
--ref {Double if >1 else 1}
- grain (psy tuning):
--aq-strength 0.5 --no-dct-decimate
--deadzone-inter 6 --deadzone-intra 6
--deblock -2:-2 --ipratio 1.1
--pbratio 1.1 --psy-rd <unset>:0.25
--qcomp 0.8
- stillimage (psy tuning):
--aq-strength 1.2 --deblock -3:-3
--psy-rd 2.0:0.7
- psnr (psy tuning):
--aq-mode 0 --no-psy
- ssim (psy tuning):
--aq-mode 2 --no-psy
- fastdecode:
--no-cabac --no-deblock --no-weightb
--weightp 0
- zerolatency:
--bframes 0 --force-cfr --no-mbtree
--sync-lookahead 0 --sliced-threads
--rc-lookahead 0
--slow-firstpass Don't force these faster settings with --pass 1:
--no-8x8dct --me dia --partitions none
--ref 1 --subme {2 if >2 else unchanged}
--trellis 0 --fast-pskip
Frame-type options:
-I, --keyint <integer or "infinite"> Maximum GOP size [250]
-i, --min-keyint <integer> Minimum GOP size [auto]
--no-scenecut Disable adaptive I-frame decision
--scenecut <integer> How aggressively to insert extra I-frames [40]
--intra-refresh Use Periodic Intra Refresh instead of IDR frames
-b, --bframes <integer> Number of B-frames between I and P [3]
--b-adapt <integer> Adaptive B-frame decision method [1]
Higher values may lower threading efficiency.
- 0: Disabled
- 1: Fast
- 2: Optimal (slow with high --bframes)
--b-bias <integer> Influences how often B-frames are used [0]
--b-pyramid <string> Keep some B-frames as references [normal]
- none: Disabled
- strict: Strictly hierarchical pyramid
- normal: Non-strict (not Blu-ray compatible)
--open-gop Use recovery points to close GOPs
Only available with b-frames
--no-cabac Disable CABAC
-r, --ref <integer> Number of reference frames [3]
--no-deblock Disable loop filter
-f, --deblock <alpha:beta> Loop filter parameters [0:0]
--slices <integer> Number of slices per frame; forces rectangular
slices and is overridden by other slicing options
--slices-max <integer> Absolute maximum slices per frame; overrides
slice-max-size/slice-max-mbs when necessary
--slice-max-size <integer> Limit the size of each slice in bytes
--slice-max-mbs <integer> Limit the size of each slice in macroblocks (max)
--slice-min-mbs <integer> Limit the size of each slice in macroblocks (min)
--tff Enable interlaced mode (top field first)
--bff Enable interlaced mode (bottom field first)
--constrained-intra Enable constrained intra prediction.
--pulldown <string> Use soft pulldown to change frame rate
- none, 22, 32, 64, double, triple, euro (requires cfr input)
--fake-interlaced Flag stream as interlaced but encode progressive.
Makes it possible to encode 25p and 30p Blu-Ray
streams. Ignored in interlaced mode.
--frame-packing <integer> For stereoscopic videos define frame arrangement
- 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
Ratecontrol:
-q, --qp <integer> Force constant QP (0-69, 0=lossless)
-B, --bitrate <integer> Set bitrate (kbit/s)
--crf <float> Quality-based VBR (0-51) [23.0]
--rc-lookahead <integer> Number of frames for frametype lookahead [40]
--vbv-maxrate <integer> Max local bitrate (kbit/s) [0]
--vbv-bufsize <integer> Set size of the VBV buffer (kbit) [0]
--vbv-init <float> Initial VBV buffer occupancy [0.9]
--crf-max <float> With CRF+VBV, limit RF to this value
May cause VBV underflows!
--qpmin <integer> Set min QP [0]
--qpmax <integer> Set max QP [69]
--qpstep <integer> Set max QP step [4]
--ratetol <float> Tolerance of ABR ratecontrol and VBV [1.0]
--ipratio <float> QP factor between I and P [1.40]
--pbratio <float> QP factor between P and B [1.30]
--chroma-qp-offset <integer> QP difference between chroma and luma [0]
--aq-mode <integer> AQ method [1]
- 0: Disabled
- 1: Variance AQ (complexity mask)
- 2: Auto-variance AQ (experimental)
--aq-strength <float> Reduces blocking and blurring in flat and
textured areas. [1.0]
-p, --pass <integer> Enable multipass ratecontrol
- 1: First pass, creates stats file
- 2: Last pass, does not overwrite stats file
- 3: Nth pass, overwrites stats file
--stats <string> Filename for 2 pass stats ["x264_2pass.log"]
--no-mbtree Disable mb-tree ratecontrol.
--qcomp <float> QP curve compression [0.60]
--cplxblur <float> Reduce fluctuations in QP (before curve compression) [20.0]
--qblur <float> Reduce fluctuations in QP (after curve compression) [0.5]
--zones <zone0>/<zone1>/... Tweak the bitrate of regions of the video
Each zone is of the form
<start frame>,<end frame>,<option>
where <option> is either
q=<integer> (force QP)
or b=<float> (bitrate multiplier)
--qpfile <string> Force frametypes and QPs for some or all frames
Format of each line: framenumber frametype QP
QP is optional (none lets x264 choose). Frametypes: I,i,K,P,B,b.
K=<I or i> depending on open-gop setting
QPs are restricted by qpmin/qpmax.
Analysis:
-A, --partitions <string> Partitions to consider ["p8x8,b8x8,i8x8,i4x4"]
- p8x8, p4x4, b8x8, i8x8, i4x4
- none, all
(p4x4 requires p8x8. i8x8 requires --8x8dct.)
--direct <string> Direct MV prediction mode ["spatial"]
- none, spatial, temporal, auto
--no-weightb Disable weighted prediction for B-frames
--weightp <integer> Weighted prediction for P-frames [2]
- 0: Disabled
- 1: Weighted refs
- 2: Weighted refs + Duplicates
--me <string> Integer pixel motion estimation method ["hex"]
- dia: diamond search, radius 1 (fast)
- hex: hexagonal search, radius 2
- umh: uneven multi-hexagon search
- esa: exhaustive search
- tesa: hadamard exhaustive search (slow)
--merange <integer> Maximum motion vector search range [16]
--mvrange <integer> Maximum motion vector length [-1 (auto)]
--mvrange-thread <int> Minimum buffer between threads [-1 (auto)]
-m, --subme <integer> Subpixel motion estimation and mode decision [7]
- 0: fullpel only (not recommended)
- 1: SAD mode decision, one qpel iteration
- 2: SATD mode decision
- 3-5: Progressively more qpel
- 6: RD mode decision for I/P-frames
- 7: RD mode decision for all frames
- 8: RD refinement for I/P-frames
- 9: RD refinement for all frames
- 10: QP-RD - requires trellis=2, aq-mode>0
- 11: Full RD: disable all early terminations
--psy-rd <float:float> Strength of psychovisual optimization ["1.0:0.0"]
#1: RD (requires subme>=6)
#2: Trellis (requires trellis, experimental)
--no-psy Disable all visual optimizations that worsen
both PSNR and SSIM.
--no-mixed-refs Don't decide references on a per partition basis
--no-chroma-me Ignore chroma in motion estimation
--no-8x8dct Disable adaptive spatial transform size
-t, --trellis <integer> Trellis RD quantization. [1]
- 0: disabled
- 1: enabled only on the final encode of a MB
- 2: enabled on all mode decisions
--no-fast-pskip Disables early SKIP detection on P-frames
--no-dct-decimate Disables coefficient thresholding on P-frames
--nr <integer> Noise reduction [0]
--deadzone-inter <int> Set the size of the inter luma quantization deadzone [21]
--deadzone-intra <int> Set the size of the intra luma quantization deadzone [11]
Deadzones should be in the range 0 - 32.
--cqm <string> Preset quant matrices ["flat"]
- jvt, flat
--cqmfile <string> Read custom quant matrices from a JM-compatible file
Overrides any other --cqm* options.
--cqm4 <list> Set all 4x4 quant matrices
Takes a comma-separated list of 16 integers.
--cqm8 <list> Set all 8x8 quant matrices
Takes a comma-separated list of 64 integers.
--cqm4i, --cqm4p, --cqm8i, --cqm8p <list>
Set both luma and chroma quant matrices
--cqm4iy, --cqm4ic, --cqm4py, --cqm4pc <list>
Set individual quant matrices
Video Usability Info (Annex E):
The VUI settings are not used by the encoder but are merely suggestions to
the playback equipment. See doc/vui.txt for details. Use at your own risk.
--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 ["auto"]
- auto, 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, bt709, fcc, bt470bg, smpte170m,
smpte240m, GBR, YCgCo, bt2020nc, bt2020c
--chromaloc <integer> Specify chroma sample location (0 to 5) [0]
--nal-hrd <string> Signal HRD information (requires vbv-bufsize)
- none, vbr, cbr (cbr not allowed in .mp4)
--pic-struct Force pic_struct in Picture Timing SEI
--crop-rect <string> Add 'left,top,right,bottom' to the bitstream-level
cropping rectangle
Input/Output:
-o, --output <string> Specify output file
--muxer <string> Specify output container format ["auto"]
- auto, raw, mkv, flv, mp4
--demuxer <string> Specify input container format ["auto"]
- auto, raw, y4m, avs, lavf, ffms
--input-fmt <string> Specify input file format (requires lavf support)
--input-csp <string> Specify input colorspace format for raw input
- valid csps for `raw' demuxer:
i420, yv12, nv12, i422, yv16, nv16, i444, yv24, bgr, bgra, rgb
- valid csps for `lavf' demuxer:
yuv420p, yuyv422, rgb24, bgr24, yuv422p,
yuv444p, yuv410p, yuv411p, gray, monow, monob,
pal8, yuvj420p, yuvj422p, yuvj444p, xvmcmc,
xvmcidct, uyvy422, uyyvyy411, bgr8, bgr4,
bgr4_byte, rgb8, rgb4, rgb4_byte, nv12, nv21,
argb, rgba, abgr, bgra, gray16be, gray16le,
yuv440p, yuvj440p, yuva420p, vdpau_h264,
vdpau_mpeg1, vdpau_mpeg2, vdpau_wmv3,
vdpau_vc1, rgb48be, rgb48le, rgb565be,
rgb565le, rgb555be, rgb555le, bgr565be,
bgr565le, bgr555be, bgr555le, vaapi_moco,
vaapi_idct, vaapi_vld, yuv420p16le,
yuv420p16be, yuv422p16le, yuv422p16be,
yuv444p16le, yuv444p16be, vdpau_mpeg4,
dxva2_vld, rgb444le, rgb444be, bgr444le,
bgr444be, gray8a, bgr48be, bgr48le, yuv420p9be,
yuv420p9le, yuv420p10be, yuv420p10le,
yuv422p10be, yuv422p10le, yuv444p9be,
yuv444p9le, yuv444p10be, yuv444p10le,
yuv422p9be, yuv422p9le, vda_vld, gbrp, gbrp9be,
gbrp9le, gbrp10be, gbrp10le, gbrp16be,
gbrp16le, yuva420p9be, yuva420p9le,
yuva422p9be, yuva422p9le, yuva444p9be,
yuva444p9le, yuva420p10be, yuva420p10le,
yuva422p10be, yuva422p10le, yuva444p10be,
yuva444p10le, yuva420p16be, yuva420p16le,
yuva422p16be, yuva422p16le, yuva444p16be,
yuva444p16le, vdpau, xyz12le, xyz12be,
rgba64be, rgba64le, bgra64be, bgra64le, 0rgb,
rgb0, 0bgr, bgr0, yuva444p, yuva422p,
yuv420p12be, yuv420p12le, yuv420p14be,
yuv420p14le, yuv422p12be, yuv422p12le,
yuv422p14be, yuv422p14le, yuv444p12be,
yuv444p12le, yuv444p14be, yuv444p14le,
gbrp12be, gbrp12le, gbrp14be, gbrp14le
--output-csp <string> Specify output colorspace ["i420"]
- i420, i422, i444, rgb
--input-depth <integer> Specify input bit depth for raw input
--input-range <string> Specify input color range ["auto"]
- auto, tv, pc
--input-res <intxint> Specify input resolution (width x height)
--index <string> Filename for input index file
--sar width:height Specify Sample Aspect Ratio
--fps <float|rational> Specify framerate
--seek <integer> First frame to encode
--frames <integer> Maximum number of frames to encode
--level <string> Specify level (as defined by Annex A)
--bluray-compat Enable compatibility hacks for Blu-ray support
--stitchable Don't optimize headers based on video content
Ensures ability to recombine a segmented encode
-v, --verbose Print stats for each frame
--no-progress Don't show the progress indicator while encoding
--quiet Quiet Mode
--log-level <string> Specify the maximum level of logging ["info"]
- none, error, warning, info, debug
--psnr Enable PSNR computation
--ssim Enable SSIM computation
--threads <integer> Force a specific number of threads
--lookahead-threads <integer> Force a specific number of lookahead threads
--sliced-threads Low-latency but lower-efficiency threading
--thread-input Run Avisynth in its own thread
--sync-lookahead <integer> Number of buffer frames for threaded lookahead
--non-deterministic Slightly improve quality of SMP, at the cost of repeatability
--cpu-independent Ensure exact reproducibility across different cpus,
as opposed to letting them select different algorithms
--asm <integer> Override CPU detection
--no-asm Disable all CPU optimizations
--opencl Enable use of OpenCL
--opencl-clbin <string> Specify path of compiled OpenCL kernel cache
--opencl-device <integer> Specify OpenCL device ordinal
--visualize Show MB types overlayed on the encoded video
--dump-yuv <string> Save reconstructed frames
--sps-id <integer> Set SPS and PPS id numbers [0]
--aud Use access unit delimiters
--force-cfr Force constant framerate timestamp generation
--tcfile-in <string> Force timestamp generation with timecode file
--tcfile-out <string> Output timecode v2 file from input timestamps
--timebase <int/int> Specify timebase numerator and denominator
<integer> Specify timebase numerator for input timecode file
or specify timebase denominator for other input
--dts-compress Eliminate initial delay with container DTS hack
Filtering:
--vf, --video-filter <filter0>/<filter1>/... Apply video filtering to the input file
Filter options may be specified in <filter>:<option>=<value> format.
Available filters:
crop:left,top,right,bottom
removes pixels from the edges of the frame
resize:[width,height][,sar][,fittobox][,csp][,method]
resizes frames based on the given criteria:
- resolution only: resizes and adapts sar to avoid stretching
- sar only: sets the sar and resizes to avoid stretching
- resolution and sar: resizes to given resolution and sets the sar
- fittobox: resizes the video based on the desired constraints
- width, height, both
- fittobox and sar: same as above except with specified sar
- csp: convert to the given csp. syntax: [name][:depth]
- valid csp names [keep current]: i420, yv12, nv12, i422, yv16, nv16, i444, yv24, bgr, bgra, rgb
- depth: 8 or 16 bits per pixel [keep current]
note: not all depths are supported by all csps.
- method: use resizer method ["bicubic"]
- fastbilinear, bilinear, bicubic, experimental, point,
- area, bicublin, gauss, sinc, lanczos, spline
select_every:step,offset1[,...]
apply a selection pattern to input frames
step: the number of frames in the pattern
offsets: the offset into the step to select a frame
see: http://avisynth.org/mediawiki/Select#SelectEvery
本文详细对比了FFmpeg与x264之间的参数对应关系,涵盖了量化因子、关键帧间隔、比特率控制等多个方面,为音视频开发者提供了重要的参考依据。
7万+

被折叠的 条评论
为什么被折叠?



