FFPlay专辑

FFplay文档解读-45-视频过滤器二十

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

前言

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

29.190 w3fdif

对输入视频进行去交错(w3fdif代表Weston 3 Field Deinterlacing Filter)。

基于Martin WestonBBC R&D描述的过程,并基于Jim EasterbrookBBC R&D编写的去隔行算法实现,Weston 3场反交错滤波器使用由BBC R&D计算的滤波器系数。

有两组滤波器系数,所谓的"simple":和"complex"。 可以通过传递可选参数来设置使用哪组滤波器系数:

filter

设置隔行扫描滤波器系数。 接受以下值之一:

解释
simple 简单的滤波器系数集
complex 更复杂的滤波器系数集

默认值是:‘complex’

deint

指定要去隔行的帧。 接受以下值之一:

解释
all 对所有帧进行去隔行扫描
interlaced 仅隔离标记为隔行扫描的帧

默认值是:‘all’

29.191 waveform

视频波形监视器。

波形监视器绘制颜色分量强度。 默认情况下仅亮度。 波形的每列对应于源视频中的一列像素。

它接受以下选项:

mode, m

可以是row(行)或column(列)。 默认为列。 在行模式中,左侧的图表表示颜色分量值0,右侧表示value = 255。在列模式中,上侧表示颜色分量value = 0,下侧表示value = 255

intensity, i

设定强度。 较小的值有助于找出在输入行/列中分布了多少相同亮度的值。 默认值为0.04。 允许范围为[0,1]

mirror, r

设置镜像模式。 0表示未镜像,1表示镜像。 在镜像模式下,较高的值将在左侧表示行模式,而在顶部表示列模式。 默认值为1(镜像)。

display, d

设置显示模式。 它接受以下值:

解释
overlay 除了表示颜色分量的图形直接叠加在彼此之外时,呈现与游行中的信息相同的信息。

该显示模式使得更容易发现应该是相同的颜色分量的重叠区域中的相对差异或相似性,例如中性白色,灰色或黑色
stack 在行模式下并排显示颜色组件的单独图形,或在列模式下显示一个在另一个下方的图形
parade 在列模式下并排显示颜色组件的单独图形,或在行模式下显示一个在另一个下方的图形

使用此显示模式,通过比较每个波形的顶部和底部图形的轮廓,可以轻松地在图像的高光和阴影中发现色偏。 由于白色,灰色和黑色的特征是红色,绿色和蓝色的数量完全相等,因此图像的中性区域应显示三个width/height大致相等的波形。 如果不是,通过对三个波形进行电平调整,可以很容易地进行校正。

默认值是:stack

components, c

设置要显示的颜色组件。 默认值为1,如果输入在RGB颜色空间中,则表示仅亮度或红色分量。 如果设置为例如7,它将显示所有3(如果)可用的颜色分量。

envelope, e
解释
none 没有envelope,这是默认值
instant 即使step值很小,图中显示的即时包络,最小值和最大值也很容易看到
peak 保持图表中显示的最小值和最大值。 这样,仍然可以在不经常查看波形的情况下发现超出范围值
peak+instant 峰值和即时包络结合在一起
filter, f
解释
lowpass 没有filtering,这是默认值
flat Luma和色度结合在一起
aflat 与上面类似,但显示蓝色和红色色度之间的差异
xflat 与上面类似,但使用不同的颜色
chroma 仅显示色度
color 显示波形上的实际颜色值
acolor 与上面类似,但是亮度显示色度值的频率
graticule, g

设置要显示的刻度。

解释
none 不要显示刻度
green 显示绿色标线,显示合法的广播范围
orange 显示显示合法广播范围的橙色标线
opacity, o

设置经纬网不透明度。

flags, fl

设置经纬网标志。

解释
numbers 在线条上方绘制数字。 默认情况下启用
dots 画点而不是线
scale, s

设置用于显示刻度的比例。

digital
millivolts
ire

默认值是:digital

bgopacity, b

设置背景不透明度。

29.192 weave, doubleweave

编织采用基于场的视频输入,并将每两个连续场连接成单帧,产生一个新的双倍高度剪辑,帧速率为帧速率的一半,帧数为一半。

双层编织与编织相同,但没有将帧速率和帧数减半。

它接受以下选项:

first_field

设置第一个字段。 可用值包括:

|top, t|将帧设置为top-field-first|
|bottom, b|将帧设置为bottom-field-first|

29.192.1 示例

29.193 xbr

应用专为像素艺术设计的xBR高质量放大滤镜。 它遵循一组边缘检测规则,请参阅http://www.libretro.com/forums/viewtopic.php?f=6&t=134

它接受以下选项:

n

设置缩放尺寸:2表示2xBR3表示3xBR4表示4xBR。 默认值为3

29.194 yadif

对输入视频进行去交错(yadif表示"yet another deinterlacing filter")。

它接受以下参数:

mode

采用隔行扫描模式。 它接受以下值之一:

解释
0, send_frame 为每帧输出一帧
1, send_field 为每个字段输出一帧
2, send_frame_nospatial send_frame一样,但它会跳过空间隔行扫描检查
3, send_field_nospatial send_field一样,但它会跳过空间隔行扫描检查

默认值是:send_frame

parity

假设输入隔行扫描视频的图像场奇偶校验。 它接受以下值之一:

解释
0, tff 假设顶部字段是第一个
1, bff 假设底部字段是第一个
-1, auto 启用字段奇偶校验的自动检测

默认值为auto。 如果隔行扫描未知或解码器不导出该信息,则首先假设顶场。

deint

指定要去隔行的帧。 接受以下值之一:

解释
0, all 对所有帧进行去隔行扫描
1, interlaced 仅隔离标记为隔行扫描的帧

默认值是:all

29.195 zoompan

应用缩放和平移效果。

此过滤器接受以下选项:

zoom,z

设置缩放表达式。默认值为1

x
y

设置xy表达式。默认值为0

d

将持续时间表达式设置为帧数。这将设置单个输入图像的效果将持续多少帧数。

s

设置输出图像大小,默认为'hd720'

fps

设置输出帧速率,默认为25

每个表达式可以包含以下常量:

in_w,iw

输入宽度。

in_h, ih

输入高度。

out_w,ow

输出宽度。

out_h, oh

输出高度。

in

输入帧数。

on

输出帧数。

x
y

最后从当前输入帧的'x''y'表达式计算'x''y'位置。

px
py

前一输入帧的最后一个输出帧的'x''y',或者当还没有这样的帧(第一输入帧)时为0

zoom

最后计算的当前输入帧的'z'表达式缩放。

pzoom

上次计算的上一输入帧的最后一个输出帧的缩放。

duration

当前输入帧的输出帧数。根据每个输入帧的'd'表达式计算。

pduration

为先前输入帧创建的输出帧数。

a

有理数:输入宽度/输入高度。

sar

样本长宽比。

dar

显示宽高比。

29.195.1 示例

29.196 zscale

使用z.lib库扩展(调整大小)输入视频:https://github.com/sekrit-twc/zimg

通过更改输出样本宽高比,zscale过滤器强制输出显示宽高比与输入相同。

如果输入图像格式与下一个过滤器请求的格式不同,则zscale过滤器会将输入转换为请求的格式。

29.196.1 参数

过滤器接受以下选项。

width, w
height, h

设置输出视频维度表达式。 默认值是输入维度。

如果widthw值为0,则输入宽度用于输出。 如果heighth值为0,则输入高度用于输出。

如果其中一个且只有一个值为-nn> = 1,则zscale过滤器将使用一个值,该值保持输入图像的纵横比,从另一个指定的维度计算。 之后,它将确保计算出的尺寸可被n整除,并在必要时调整该值。

如果两个值都是-nn> = 1,则行为将与之前详细设置为0的两个值相同。

请参阅下面的维度表达式中使用的已接受常量列表。

size, s

设置视频大小。 有关此选项的语法,请检查(ffmpeg-utils)视频大小语法

dither, d

设置抖动类型。

可能的值是:

none
ordered
random
error_diffusion

默认值是:none

filter, f

设置调整大小过滤器类型。

可能的值是:

point
bilinear
bicubic
spline16
spline36
lanczos

默认值是:bilinear

range, r

设置颜色范围。

可能的值是:

input
limited
full

默认值与input相同。

primaries, p

设置颜色原色。

可能的值是:

input
709
unspecified
170m
240m
2020

默认值与input相同。

transfer, t

设置传输特性。

可能的值是:

input
709
unspecified
601
linear
2020_10
2020_12
smpte2084
iec61966-2-1
arib-std-b67

默认值与input相同。

matrix, m

设置颜色空间矩阵。

可能的值如下所示:

input
709
unspecified
470bg
170m
2020_ncl
2020_cl

默认值与input相同。

rangein, rin

设置输入颜色范围。

可能的值是:

input
limited
full

默认值与input相同。

primariesin, pin

设置输入颜色原色。

可能的值是:

input
709
unspecified
170m
240m
2020

默认值与input相同。

transferin, tin

设置输入传输特性。

可能的值是:

input
709
unspecified
601
linear
2020_10
2020_12

默认值与input相同。

matrixin, min

设置输入颜色空间矩阵。

可能的价值是:

input
709
unspecified
470bg
170m
2020_ncl
2020_cl
chromal, c

设置输出色度位置。

可能的值是:

input
left
center
topleft
top
bottomleft
bottom
chromalin, cin

设置输入色度位置。

可能的值是:

|input|
|left|
|center|
|topleft|
|top|
|bottomleft|
|bottom|

npl

设置标称峰值亮度。

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

in_w
in_h

输入的宽度和高度。

iw 
ih

这些与in_win_h相同。

out_w
out_h

输出(缩放)宽度和高度。

ow
oh

这些与out_wout_h相同。

a

iw/ih一样。

sar

输入样本宽高比。

dar

输入显示宽高比。 从(iw/ih)* sar计算。

hsub
vsub

水平和垂直输入色度子样本值。 例如,对于像素格式“yuv422p”hsub2vsub1

ohsub
ovsub

水平和垂直输出色度子样本值。 例如,对于像素格式“yuv422p”hsub2vsub1

上一篇下一篇

猜你喜欢

热点阅读