searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

FFmpeg 滤镜描述格式

2024-05-23 08:59:07
4
0

滤镜描述格式

在使用 FFmpeg 的滤镜处理音视频特效之前,需要首先了解一下滤镜(Filter)的基本格式。

滤镜基本排列方式

为了便于理解 FIlter 的使用方法,下面用最简单的方式来描述使用 Filter 时的参数排列方式。

{输入流或标记名}滤镜参数{临时标记名};{输入流或标记名}滤镜参数{临时标记名};······

文字描述的排列方式很明确。接下来举一个简单的例子:输入两个文件,一个为视频 input.mp4 ,一个为图片 logo.png ,将图片进行缩放后放在视频的左上角。

ffmpeg -i input.mp4 -i logo.png -filter_complex"[1:v]scale=176:144[logo];[0:v][logo]overlay=x=0:y=0"output.mp4

从上述命令可以看到,他将 logo.png的图像流缩放为 176*144 的分辨率,定义了一个临时标记名 logo ,然后将缩放的图像 [logo] 铺在输入视频流 [0:v]的左上角。

时间内置变量

在使用 Filter 时,不免会遇到根据时间轴进行操作的需求。在使用 FFmpeg 的Filter 时可以使用与时间相关的内置变量,如下表所示。

FFmpeg 滤镜的基本内置变量表格

变量 说明
t 时间戳以秒表示,如果输入时间戳是未知的,则是 NAN 。
n 输入帧的顺序编号,从 0 开始。
pos 输入帧的位置,如果未知就是NAN。
w 输入视频帧的宽度。
h 输入视频帧的高度。
0条评论
作者已关闭评论
尹****麒
163文章数
2粉丝数
尹****麒
163 文章 | 2 粉丝
原创

FFmpeg 滤镜描述格式

2024-05-23 08:59:07
4
0

滤镜描述格式

在使用 FFmpeg 的滤镜处理音视频特效之前,需要首先了解一下滤镜(Filter)的基本格式。

滤镜基本排列方式

为了便于理解 FIlter 的使用方法,下面用最简单的方式来描述使用 Filter 时的参数排列方式。

{输入流或标记名}滤镜参数{临时标记名};{输入流或标记名}滤镜参数{临时标记名};······

文字描述的排列方式很明确。接下来举一个简单的例子:输入两个文件,一个为视频 input.mp4 ,一个为图片 logo.png ,将图片进行缩放后放在视频的左上角。

ffmpeg -i input.mp4 -i logo.png -filter_complex"[1:v]scale=176:144[logo];[0:v][logo]overlay=x=0:y=0"output.mp4

从上述命令可以看到,他将 logo.png的图像流缩放为 176*144 的分辨率,定义了一个临时标记名 logo ,然后将缩放的图像 [logo] 铺在输入视频流 [0:v]的左上角。

时间内置变量

在使用 Filter 时,不免会遇到根据时间轴进行操作的需求。在使用 FFmpeg 的Filter 时可以使用与时间相关的内置变量,如下表所示。

FFmpeg 滤镜的基本内置变量表格

变量 说明
t 时间戳以秒表示,如果输入时间戳是未知的,则是 NAN 。
n 输入帧的顺序编号,从 0 开始。
pos 输入帧的位置,如果未知就是NAN。
w 输入视频帧的宽度。
h 输入视频帧的高度。
文章来自个人专栏
大视频
163 文章 | 1 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0