前言
Github
地址:Github
简书地址:简书
专辑地址:FFplay专辑
29.100 maskedmerge
使用第三输入流中的每像素权重将第一输入流与第二输入流合并。
第三流像素分量中的值0
意味着来自第一流的像素分量不变地返回,而最大值(例如,针对8
位视频的255
)意味着来自第二流的像素分量不变地返回。 中间值定义两个输入流的像素组件之间的合并量。
此过滤器接受以下选项:
planes
设置将处理为位图的planes
,将从第一个流复制未处理的planes
。 默认值为0xf
,将处理所有planes
。
29.101 mcdeint
应用运动补偿去隔行扫描。
它需要每帧一个字段作为输入,因此必须与yadif = 1/3
或等效项一起使用。
此过滤器接受以下选项:
mode
设置逐行扫描模式。
它接受以下值之一:
值 | 解释 |
---|---|
fast | |
medium | |
slow | 使用迭代运动估计 |
extra_slow | 和slow 相似,但是这个参数需要使用到多个参考帧 |
默认值是:fast
。
parity
设置为输入视频假定的图像字段奇偶校验。 它必须是以下值之一:
值 | 解释 |
---|---|
0, tff | 首先假设顶级领域 |
1, bff | 首先假设底部字段 |
默认值是:bff
。
qp
设置内部编码器使用的每块量化参数(QP
)。
较高的值应该导致更平滑的运动矢量场,但是不太理想的单个矢量。
默认值为1
。
29.102 mergeplanes
合并来自多个视频流的颜色通道组件。
过滤器最多接受4
个输入流,并将选定的输入平面合并到输出视频。
此过滤器接受以下选项:
mapping
将输入设置为输出平面映射。 默认值为0
。
映射指定为位图。 应将其指定为0xAa [Bb [Cc [Dd]]]
形式的十六进制数。 'Aa'
描述了输出流的第一个平面的映射。 'A'
设置要使用的输入流的编号(从0
到3
),'a'
设置要使用的相应输入的平面编号(从0
到3
)。 其余的映射类似,'Bb'
描述输出流第二平面的映射,'Cc'
描述输出流第三平面的映射,'Dd'
描述输出流第四平面的映射。
format
设置输出像素格式。 默认为yuva444p
。
29.102.1 示例
-
将具有相同宽度和高度的三个灰色视频流合并为单个视频流:
[a0][a1][a2]mergeplanes=0x001020:yuv444p
-
将第
1
个yuv444p
流和第2
个灰色视频流合并到yuva444p
视频流中:
[a0][a1]mergeplanes=0x00010210:yuva444p
-
在
yuva444p
流中交换Y
和A
平面:format=yuva444p,mergeplanes=0x03010200:yuva444p
-
在
yuv420p
流中交换U
和V
平面:format=yuv420p,mergeplanes=0x000201:yuv420p
-
将
rgb24
剪辑投射到yuv444p
:format=rgb24,mergeplanes=0x000102:yuv444p
29.103 mestimate
使用块匹配算法估计和导出运动矢量。 运动矢量存储在帧侧数据中以供其他滤波器使用。
此过滤器接受以下选项:
method
指定运动估计方法。 接受以下值:
值 | 解释 |
---|---|
esa | 穷举搜索算法 |
tss | 三步搜索算法 |
tdls | 二维对数搜索算法 |
ntss | 新的三步搜索算法 |
fss | 四步搜索算法 |
ds |
Diamond 搜索算法 |
hexbs | 基于六边形的搜索算法 |
epzs | 增强的预测区域搜索算法 |
umh | 不均匀的多六边形搜索算法 |
默认值是:esa
。
mb_size
宏块大小。 默认16
。
search_param
搜索参数。 默认7
。
29.104 midequalizer
使用两个视频流应用Midway Image Equalization
效果。
Midway Image Equalization
将一对图像调整为具有相同的直方图,同时尽可能保持其动态。 它对于例如它是有用的 匹配一对立体相机的曝光。
该滤波器有两个输入和一个输出,它们必须具有相同的像素格式,但可以具有不同的大小。 首先使用两个输入的中间直方图调整滤波器的输出。
此过滤器接受以下选项:
planes
设置要处理的平面。 默认值为15
,即所有可用的planes
。
29.105 minterpolate
使用运动插值将视频转换为指定的帧速率。
此过滤器接受以下选项:
fps
指定输出帧速率。 这可能是合理的,例如60000/1001
。 如果fps
低于源fps
,则丢弃帧。 默认60
。
mi_mode
运动插补模式。 接受以下值:
dup
复制上一帧或下一帧以插入新帧。
blend
混合源帧。 插值帧是前一帧和下一帧的平均值。
mci
运动补偿插值。 选择此模式时,以下选项有效:
参数 | 解释 |
---|---|
obmc | 重叠块运动补偿 |
aobmc | 自适应重叠块运动补偿。 根据相邻运动矢量的可靠性自适应地控制窗口加权系数,以减少过度平滑 |
默认值是:obmc
。
me_mode
运动估计模式。 接受以下值:
值 | 解释 |
---|---|
bidir | 双向运动估计。 在前向和后向方向上估计每个源帧的运动矢量 |
bilat | 双边运动估计。 直接估计运动矢量用于内插帧 |
默认值是:bilat
。
me
用于运动估计的算法。 接受以下值:
值 | 解释 |
---|---|
esa | 穷举搜索算法 |
tss | 三步搜索算法 |
tdls | 二维对数搜索算法 |
ntss | 新的三步搜索算法 |
fss | 四步搜索算法 |
ds |
Diamond 搜索算法 |
hexbs | 基于六边形的搜索算法 |
epzs | 增强的预测区域搜索算法 |
umh | 不均匀的多六边形搜索算法 |
默认值是:epzs
。
mb_size
宏块大小。 默认是16
。
search_param
运动估计搜索参数。 默认值是32
。
vsbmc
启用可变大小的块运动补偿。 在对象边界处应用具有较小块大小的运动估计,以使它们不那么模糊。 默认值为0
(禁用状态)。
scd
场景变化检测方法。 场景变化使运动矢量处于随机方向。 场景变化检测用重复帧替换插值帧。 其他模式可能不需要。 接受以下值:
值 | 解释 |
---|---|
none | 禁用场景变化检测 |
fdiff | 帧差异。 比较相应的像素值,并且如果它满足scd_threshold ,则检测到场景变化 |
默认值是:‘fdiff’
。
scd_threshold
场景变化检测阈值。 默认值为5.0
。
29.106 mix
将多个视频输入流混合到一个视频流中。
接下来的选项的描述如下。
nb_inputs
输入数量。 如果未指定,则默认为2
。
weights
将每个输入视频流的权重指定为序列。 每个重量由空间分隔。
duration
指定如何确定流的结尾,下面是一些可用的参数:
参数 | 解释 |
---|---|
longest | 最长输入的持续时间。(默认) |
shortest | 最短输入的持续时间 |
first | 第一次输入的持续时间 |
29.107 mpdecimate
丢弃与前一帧没有很大差异的帧,以降低帧速率。
该滤波器的主要用途是用于非常低比特率的编码(例如,通过拨号调制解调器进行流式传输),但理论上它可以用于修复错误地反向电视化的电影。
接下来的选项的描述如下。
max
设置可以丢弃的最大连续帧数(如果为正),或者丢弃帧之间的最小间隔(如果为负)。如果该值为0
,则丢弃帧而忽略先前顺序丢弃的帧的数量。
默认值为0
。
hi
lo
frac
设置下降阈值。
‘hi’
和‘lo’
的值是针对8x8
像素块并且表示实际像素值差异,因此阈值64
对应于每个像素的1
个单位差异,或者相同地在块上展开不同。
如果没有8x8
块相差超过阈值'hi'
,并且如果不超过'frac'
块(1
表示整个图像)相差超过阈值'lo'
,则帧是丢弃的候选者。
'hi'
的默认值为64 * 12
,'lo'
的默认值为64 * 5
,'frac'
的默认值为0.33
。
29.108 negate
Negate
输入视频。
它接受输入中的整数; 如果非零,则否定alpha
分量(如果可用)。 输入中的默认值为0
。
29.109 nlmeans
使用非局部均值算法去噪帧。
通过查找具有类似上下文的其他像素来调整每个像素。 通过比较它们的大小‘p’x‘p’
的周围片来定义该上下文相似性。 在像素周围的'r'x'r'
区域中搜索补丁。
请注意,研究区域定义了补丁的中心,这意味着一些补丁将由研究区域外的像素组成。
过滤器接受以下选项。
s
设定去噪力量。
p
设置补丁大小。
pc
与'p'
相同,但对于色度平面。
默认值为0
,表示自动。
r
设定研究规模。
rc
与'r'
相同,但对于色度平面。
默认值为0
,表示自动。
网友评论