前言
Github
地址:Github
简书地址:简书
专辑地址:FFplay专辑
subcmp integer (encoding,video)
设置sub pel me
比较功能。
可能的取值如下:
值 | 解释 |
---|---|
sad | 绝对差值之和,fast (默认) |
sse | 平方误差之和 |
satd | 绝对Hadamard 的总和改变了差异 |
dct | 绝对DCT 转换差异的总和 |
psnr | 量化误差平方和(avoid ,低质量) |
bit | 块所需的位数 |
rd | 速率失真最佳,速度慢 |
zero | 0 |
vsad | 绝对垂直差异之和 |
vsse | 垂直差异的平方和 |
nsse | 噪声保持平方差的总和 |
w53 |
5/3 小波,仅用于snow 场景 |
w97 |
9/7 小波,仅用于snow 场景 |
dctmax | |
chroma |
mbcmp integer (encoding,video)
设置宏块比较功能。
可能的取值如下:
值 | 解释 |
---|---|
sad | 绝对差值之和,fast (默认) |
sse | 平方误差之和 |
satd | 绝对Hadamard的总和改变了差异 |
dct | 绝对DCT转换差异的总和 |
psnr | 量化误差平方和(avoid, low quality)
|
bit | 块所需的位数 |
rd | 速率失真最佳,速度慢 |
zero | 0 |
vsad | 绝对垂直差异之和 |
vsse | 垂直差异的平方和 |
nsse | 噪声保持平方差的总和 |
w53 |
5/3 小波,仅用于snow 场景 |
w97 |
9/7 小波,仅用于snow 场景 |
dctmax | |
chroma |
ildctcmp integer (encoding,video)
设置隔行扫描dct比较功能。
可能的取值如下:
值 | 解释 |
---|---|
sad | 绝对差值之和,fast (默认) |
sse | 平方误差之和 |
satd | 绝对Hadamard 的总和改变了差异 |
dct | 绝对DCT 转换差异的总和 |
psnr | 量化误差平方和(避免,低质量) |
bit | 块所需的位数 |
rd | 速率失真最佳,速度慢 |
zero | 0 |
vsad | 绝对垂直差异之和 |
vsse | 垂直差异的平方和 |
nsse | 噪声保持平方差的总和 |
w53 |
5/3 小波,仅用于snow 场景 |
w97 |
9/7 小波,仅用于snow 场景 |
dctmax | |
chroma |
dia_size integer (encoding,video)
设置钻石类型和大小以进行运动估计。
last_pred integer (encoding,video)
设置前一帧的运动预测变量。
preme integer (encoding,video)
设置预运动估计。
precmp integer (encoding,video)
设置预运动估计比较功能。
可能的结果如下:
值 | 解释 |
---|---|
sad | 绝对差值之和,fast (默认) |
sse | 平方误差之和 |
satd | 绝对Hadamard 的总和改变了差异 |
dct | 绝对DCT 转换差异的总和 |
psnr | 量化误差平方和(避免,低质量) |
bit | 块所需的位数 |
rd | 速率失真最佳,速度慢 |
zero | 0 |
vsad | 绝对垂直差异之和 |
vsse | 垂直差异的平方和 |
nsse | 噪声保持平方差的总和 |
w53 |
5/3 小波,仅用于snow 场景 |
w97 |
9/7 小波,仅用于snow 场景 |
dctmax | |
chroma |
pre_dia_size integer (encoding,video)
设置diamond类型和大小以进行运动估计预传。
subq integer (encoding,video)
设置子像素运动估计质量。
dtg_active_format integer
me_range integer (encoding,video)
设置极限运动矢量范围(DivX
播放器为1023
)。
ibias integer (encoding,video)
设置定量内偏差。
pbias integer (encoding,video)
设置量子间偏差。
color_table_id integer
global_quality integer (encoding,audio,video)
coder integer (encoding,video)
可能的取值如下:
值 | 解释 |
---|---|
vlc | 变长编码器/霍夫曼编码器 |
ac | 算术编码器 |
raw |
raw (无编码) |
rle |
run-length 编码器 |
deflate | 基于deflate 的编码器 |
context integer (encoding,video)
设置上下文模型。
slice_flags integer
mbd integer (encoding,video)
设置宏块决策算法(高质量模式)。
可能的取值如下:
值 | 解释 |
---|---|
simple | 使用mbcmp (默认) |
bits | 使用最少的位 |
rd | 使用最佳速率失真 |
stream_codec_tag integer
sc_threshold integer (encoding,video)
设置场景更改阈值。
lmin integer (encoding,video)
设置最小拉格朗日因子(VBR
)。
lmax integer (encoding,video)
设置最大拉格朗日因子(VBR
)。
nr integer (encoding,video)
设置降噪。
rc_init_occupancy integer (encoding,video)
设置解码开始前应加载到rc
缓冲区的位数。
flags2 flags (decoding/encoding,audio,video)
可能的取值如下:
值 | 解释 |
---|---|
fast | 允许不符合规范的加速技巧 |
sgop | 不推荐使用,请改用mpegvideo 私有选项 |
noout | 跳过比特流编码 |
ignorecrop | 忽略sps 中的裁剪信息 |
local_header | 将全局标头放在每个关键帧而不是extradata 中 |
chunks | 帧数据可能会分成多个块 |
showall | 在第一个关键帧之前显示所有帧 |
skiprd | 不推荐使用,请改用mpegvideo 私有选项 |
export_mvs | 将运动矢量导出到帧边数据(请参阅AV_FRAME_DATA_MOTION_VECTORS )以获取支持它的编解码器。 另请参阅doc / examples / export_mvs.c
|
error integer (encoding,video)
qns integer (encoding,video)
不推荐使用,请改用mpegvideo私有选项。
threads integer (decoding/encoding,video)
如果所选的编解码器实现支持多线程,则设置要使用的线程数。
可能的取值如下:
值 | 解释 |
---|---|
auto, 0 | 自动选择要设置的线程数 |
默认值就是auto
。
mb_threshold integer (encoding,video)
设置宏块阈值。
dc integer (encoding,video)
设置intra_dc_precision。
nssew integer (encoding,video)
设置nsse重量。
skip_top integer (decoding,video)
设置顶部跳过的宏块行数。
skip_bottom integer (decoding,video)
设置底部跳过的宏块行数。
profile integer (encoding,audio,video)
可能的结果如下:
值 |
---|
unknown |
aac_main |
aac_low |
aac_ssr |
aac_ltp |
aac_he |
aac_he_v2 |
aac_ld |
aac_eld |
mpeg2_aac_low |
mpeg2_aac_he |
mpeg4_sp |
mpeg4_core |
mpeg4_main |
mpeg4_asp |
dts |
dts_es |
dts_96_24 |
dts_hd_hra |
dts_hd_ma |
level integer (encoding,audio,video)
可能的取值如下:
unknown
lowres integer (decoding,audio,video)
解码为1 = 1 / 2,2 = 1 / 4,3 = 1/8分辨率。
skip_threshold integer (encoding,video)
设置帧跳过阈值。
skip_factor integer (encoding,video)
设置帧跳过因子。
skip_exp integer (encoding,video)
设置帧跳过指数。 除了分数标准化之外,负值表现与相应的正值相同。 正值存在主要是出于兼容性原因而不是那么有用。
skipcmp integer (encoding,video)
设置帧跳过比较功能。
可能的取值如下:
值 | 解释 |
---|---|
sad | 绝对差值之和,fast (默认) |
sse | 平方误差之和 |
satd | 绝对Hadamard 的总和改变了差异 |
dct | 绝对DCT 转换差异的总和 |
psnr | 量化误差平方和(avoid ,低质量) |
bit | 块所需的位数 |
rd | 速率失真最佳,速度慢 |
zero | 0 |
vsad | 绝对垂直差异之和 |
vsse | 垂直差异的平方和 |
nsse | 噪声保持平方差的总和 |
w53 |
5/3 小波,仅用于snow 场景 |
w97 |
9/7 小波,仅用于snow 场景 |
dctmax | |
chroma |
border_mask float (encoding,video)
增加靠近边界的宏块的量化器。
mblmin integer (encoding,video
设置min macroblock lagrange factor(VBR)。
mblmax integer (encoding,video)
设置最大宏块拉格朗日因子(VBR)
。
mepc integer (encoding,video)
设置运动估计比特率penalty补偿(1.0 = 256
)。
skip_loop_filter integer (decoding,video)
skip_idct integer (decoding,video)
skip_frame integer (decoding,video)
根据选项值选择的帧类型进行解码器丢弃处理。
skip_loop_filter
跳过帧循环过滤,skip_idct
跳过帧IDCT /dequantization
,skip_frame
跳过解码。
可能的取值如下:
值 | 解释 |
---|---|
none | 不丢弃任何帧 |
default | 丢弃无用的帧,如0 大小的帧 |
noref | 丢弃所有非参考帧 |
bidir | 丢弃所有双向帧 |
nokey | 丢弃除关键帧之外的所有帧 |
all | 丢弃所有帧 |
默认值是default
。
bidir_refine integer (encoding,video)
优化双向宏块中使用的两个运动矢量。
brd_scale integer (encoding,video)
用于动态B
帧决策的缩小帧。
keyint_min integer (encoding,video)
设置IDR
帧之间的最小间隔。
refs integer (encoding,video)
设置参考帧以考虑运动补偿。
chromaoffset integer (encoding,video)
从亮度设置色度qp
偏移。
trellis integer (encoding,audio,video)
设置速率 - 失真最优量化。
sc_factor integer (encoding,video)
为每个帧设置值乘以qscale并添加到scene_change_score。
mv0_threshold integer (encoding,video)
b_sensitivity integer (encoding,video)
调整b_frame_strategy
的灵敏度1
。
compression_level integer (encoding,audio,video)
min_prediction_order integer (encoding,audio)
max_prediction_order integer (encoding,audio)
timecode_frame_start integer (encoding,video)
以非丢帧格式设置GOP
时间码帧起始编号。
request_channels integer (decoding,audio)
设置所需的音频通道数。
bits_per_raw_sample integer
channel_layout integer (decoding/encoding,audio)
request_channel_layout integer (decoding,audio)
rc_max_vbv_use float (encoding,video)
rc_min_vbv_use float (encoding,video)
ticks_per_frame integer (decoding/encoding,audio,video)
color_primaries integer (decoding/encoding,video)
可能的取值如下:
值 | 解释 |
---|---|
bt709 | BT.709 |
bt470m | BT.470 M |
bt470bg | BT.470 BG |
smpte170m | SMPTE 170 M |
smpte240m | SMPTE 240 M |
film | Film |
bt2020 | BT.2020 |
smpte428 | |
smpte428_1 | SMPTE ST 428-1 |
smpte431 | SMPTE 431-2 |
smpte432 | SMPTE 432-1 |
jedec-p22 | JEDEC P22 |
color_trc integer (decoding/encoding,video)
可能的取值如下:
值 | 解释 |
---|---|
bt709 | BT.709 |
gamma22 | BT.470 M |
gamma28 | BT.470 BG |
smpte170m | SMPTE 170 M |
smpte240m | SMPTE 240 M |
linear | Linear |
log | |
log100 | Log |
log_sqrt | |
log316 | Log square root |
iec61966_2_4 | |
iec61966-2-4 | IEC 61966-2-4 |
bt1361 | |
bt1361e | BT.1361 |
iec61966_2_1 | |
iec61966-2-1 | IEC 61966-2-1 |
bt2020_10 | |
bt2020_10bit | BT.2020 - 10 bit |
bt2020_12 | |
bt2020_12bit | BT.2020 - 12 bit |
smpte2084 | SMPTE ST 2084 |
smpte428 | |
smpte428_1 | SMPTE ST 428-1 |
arib-std-b67 | ARIB STD-B67 |
colorspace integer (decoding/encoding,video)
可能的取值如下:
值 | 解释 |
---|---|
rgb | RGB |
bt709 | BT.709 |
fcc | FCC |
bt470bg | BT.470 BG |
smpte170m | SMPTE 170 M |
smpte240m | SMPTE 240 M |
ycocg | YCOCG |
bt2020nc | |
bt2020_ncl | BT.2020 NCL |
bt2020c | |
bt2020_cl | BT.2020 CL |
smpte2085 | SMPTE 2085 |
color_range integer (decoding/encoding,video)
如果用作输入参数,它用作解码器的提示,输入具有color_range
。
可能的取值如下:
值 | 解释 |
---|---|
tv | |
mpeg | MPEG (219*2^(n-8)) |
pc | |
jpeg | JPEG (2^n-1) |
chroma_sample_location integer (decoding/encoding,video)
可能的取值如下:
值 |
---|
left |
center |
topleft |
top |
bottomleft |
bottom |
log_level_offset integer
设置日志级别偏移量。
slices integer (encoding,video)
并行编码中使用的切片数。
thread_type flags (decoding/encoding,video)
选择要使用的多线程方法。
使用frame
会使每个线程的解码延迟增加一帧,因此无法提供未来帧的客户端不应使用它。
可能的取值如下:
值 | 解释 |
---|---|
slice | 一次解码单个帧的多个部分。 使用切片的多线程仅在视频使用切片编码时才起作用 |
frame | 一次解码多个帧。 |
默认值为slice + frame
。
audio_service_type integer (encoding,audio)
设置音频服务类型。
可能的取值:
值 | 解释 |
---|---|
ma | Main Audio Service |
ef | Effects |
vi | Visually Impaired |
hi | Hearing Impaired |
di | Dialogue |
co | Commentary |
em | Emergency |
vo | Voice Over |
ka | Karaoke |
request_sample_fmt sample_fmt (decoding,audio)
设置样本格式音频解码器应该更喜欢。 默认值为none
。
pkt_timebase rational number
sub_charenc encoding (decoding,subtitles)
设置输入字幕字符编码。
field_order field_order (video)
设置/覆盖视频的字段顺序。
可能的取值如下:
值 | 解释 |
---|---|
progressive | 渐进式视频 |
tt | 隔行扫描视频,顶部字段编码并首先显示 |
bb | 隔行扫描视频,底部字段编码并首先显示 |
tb | 隔行扫描视频,顶部编码优先,底部首先显示 |
bt | 隔行扫描视频,首先是底部编码,最先显示顶部 |
skip_alpha bool (decoding,video)
设置为1以禁用处理alpha(透明度)。 这类似于flags
选项中的gray
标志,它跳过色度信息而不是alpha。 默认值为0。
codec_whitelist list (input)
,
分隔的允许解码器列表。 默认情况下都允许。
dump_separator string (input)
Separator
用于分隔关于Stream
参数的命令行上打印的字段。 例如,使用换行符和缩进来分隔字段:
ffprobe -dump_separator "
" -i ~/videos/matrixbench_mpeg2.mpg
max_pixels integer (decoding/encoding,video)
每个图像的最大像素数。 此值可用于避免因大图像导致的内存不足故障。
apply_cropping bool (decoding,video)
如果裁剪参数是左侧和顶部参数所需对齐的倍数,则启用裁剪。 如果不满足对齐,将部分应用裁剪以保持对齐。 默认值为1
(启用)。 注意:所需的对齐取决于是否设置了AV_CODEC_FLAG_UNALIGNED
和CPU
。 无法从命令行更改AV_CODEC_FLAG_UNALIGNED
。 硬件解码器也不会应用左/上裁剪。