FFPlay专辑

FFplay文档解读-34-视频过滤器九

2018-11-15  本文已影响8人  张芳涛

前言

Github地址:Github
简书地址:简书
专辑地址:FFplay专辑

29.80 hwupload

将系统内存帧上载到硬件表面。

初始化过滤器时,必须提供要上载的设备。 如果使用ffmpeg,请使用'-filter_hw_device'选项选择适当的设备。

29.81 hwupload_cuda

将系统内存帧上传到CUDA设备。

它接受以下可选参数:

device

要使用的CUDA设备的编号。

29.82 hqx

应用专为像素艺术设计的高品质放大滤镜。 此过滤器最初由Maxim Stepin创建。

它接受以下选项:

n

设置缩放尺寸:hq2x2hq3x3hq4x4。 默认值为3

29.83 hstack

水平堆叠输入视频。

所有流必须具有相同的像素格式且具有相同的高度。

请注意,此滤镜比使用叠加和填充滤镜更快地创建相同的输出。

过滤器接受以下选项:

inputs

设置输入流的数量。 默认值为2

shortest

如果设置为1,则在最短输入终止时强制输出终止。 默认值为0

29.84 hue

修改输入的色调和/或饱和度。

它接受以下参数:

h

将色调角度指定为度数。它接受一个表达式,默认为0

s

[-10,10]范围内指定饱和度。它接受一个表达式,默认为1

h

将色调角度指定为弧度数。它接受一个表达式,默认为0

b

指定[-10,10]范围内的亮度。它接受一个表达式,默认为0

'h''H'是互斥的,不能同时指定。

'b''h''H''s'选项值是包含以下常量的表达式:

n

0开始的输入帧的帧数。

pts

以时基为单位表示的输入帧的呈现时间戳。

r

输入视频的帧速率,如果输入帧速率未知,则为NAN

t

时间戳以秒表示,如果输入时间戳未知,则为NAN

tb

输入视频的时基。

29.84.1 示例

  一般淡入表达式可写为:

    hue="s=min(0\, max((t-START)/DURATION\, 1))"

29.84.2 命令行

此筛选器支持以下命令:

b
s
h
H

修改输入视频的色调和/或饱和度和/或亮度。 该命令接受相应选项的相同语法。

如果指定的表达式无效,则保持其当前值。

29.85 hysteresis

通过连接组件将第一个流生成第二个流。 这使得构建更强大的边缘掩模成为可能。

此过滤器接受以下选项:

planes

设置将处理为位图的平面,将从第一个流复制未处理的平面。 默认值为0xf,将处理所有平面。

threshold

设置过滤中使用的阈值。 如果像素分量值高于该值,则激活用于连接分量的滤波算法。 默认值为0

29.86 idet

检测视频隔行扫描类型。

此过滤器尝试首先检测输入帧是隔行扫描,逐行扫描,顶部还是底部字段。它还将尝试检测相邻帧之间重复的字段(电视电影的标志)。

在对每个帧进行分类时,单帧检测仅考虑紧邻的帧。多帧检测包含先前帧的分类历史。

过滤器将记录这些元数据值:

single.current_frame

使用单帧检测检测当前帧的类型。其中一个:tff(顶部字段优先),bff(底部字段优先),progressiveundetermined

single.tff

使用单帧检测首先检测到作为顶场的累积帧数。

multiple.tff

使用多帧检测首先检测到作为顶场的累积帧数。

single.bff

首先使用单帧检测检测到作为底场的累积帧数。

multiple.current_frame

使用多帧检测检测当前帧的类型。其中一个:tff(顶部字段优先),bff(底部字段优先),progressiveundetermined

multiple.bff

首先使用多帧检测检测到作为底场的累积帧数。

single.progressive

使用单帧检测检测为累进的累积帧数。

multiple.progressive

使用多帧检测检测为累进的累积帧数。

single.undetermined

使用单帧检测无法分类的累积帧数。

multiple.undetermined

使用多帧检测无法分类的累积帧数。

repeated.current_frame

当前帧中的哪个字段从最后一个开始重复。一个neithertopbottom

repeated.neither

没有重复字段的累积帧数。

repeated.top

从前一帧的顶部字段重复顶部字段的累积帧数。

repeated.bottom

从前一帧的底部字段重复底部字段的累积帧数。

过滤器接受以下选项:

intl_thres

设置隔行阈值。

prog_thres

设置渐进阈值。

rep_thres

重复现场检测的阈值。

half_life

给定帧对统计数据的贡献减半的帧数(即,它对其分类仅贡献0.5)。默认值为0表示所有看到的帧永远都是1.0的全权重。

analyze_interlaced_flag

当这不是0时,idet将使用指定的帧数来确定隔行扫描标志是否准确,它将不计算未确定的帧。如果发现该标志是准确的,则将在没有任何进一步计算的情况下使用该标志,如果发现它是不准确的,则将在没有任何进一步计算的情况下将其清除。这允许将idet滤波器作为低计算方法插入以清除隔行扫描标志。

29.87 il

解交织或交错字段。

此过滤器允许人们处理隔行扫描图像字段而不对其进行去隔行扫描。 去交错将输入帧分成2个字段(所谓的半图像)。 奇数行移动到输出图像的上半部分,甚至行到下半部分。 您可以独立处理(过滤)它们,然后重新交错它们。

过滤器接受以下选项:

luma_mode,l
chroma_mode,c
alpha_mode, a

luma_modechroma_modealpha_mode的可用值为:

解释
none 什么也不做
deinterleave, d 解交织字段,将一个放在另一个之上
interleave, i 交错字段。 反转去交错的效果

默认值是:none

luma_swap, ls
chroma_swap, cs
alpha_swap, as

交换luma/chroma/alpha字段。 交换偶数和奇数行。 默认值为0

29.88 inflate

对视频应用膨胀效果。

此滤镜通过仅考虑高于像素的值来将像素替换为局部(3x3)平均值。

它接受以下选项:

threshold0
threshold1
threshold2
threshold3

限制每个平面的最大变化,默认为65535。如果为0,则平面将保持不变。

29.89 interlace

简单的隔行扫描过滤器来自渐进内容。 这将来自奇数帧的上(或下)行与来自偶数帧的较低(或较高)行交错,将帧速率减半并保持图像高度。

Original        Original             New Frame
Frame 'j'      Frame 'j+1'             (tff)
==========      ===========       ==================
Line 0  -------------------->    Frame 'j' Line 0
Line 1          Line 1  ---->   Frame 'j+1' Line 1
Line 2 --------------------->    Frame 'j' Line 2
Line 3          Line 3  ---->   Frame 'j+1' Line 3
 ...             ...                   ...
New Frame + 1 will be generated by Frame 'j+2' and Frame 'j+3' and so on

它接受以下可选参数:

scan

这确定了隔行扫描帧是从渐进帧的偶数(tff-默认)还是奇数(bff)行中获取的。

lowpass

垂直低通滤波器,避免推特交错,减少莫尔条纹。

参数 解释
0, off 禁用垂直低通滤波器
1, linear 启用线性过滤器(默认)
2, complex 启用复杂过滤器。 这将略低于减少Twitter和云纹,但更好地保留细节和锐度的主观印象
上一篇下一篇

猜你喜欢

热点阅读