目录
音视频过滤器
视频过滤器
FFmpeg 音视频过过滤器
在编码之前,FFmpeg 可以使用 libavfilter 库中的过滤器处理原始音频和视频帧。几个链式过滤器行程一个过滤图像。
FFmpeg中的filter包含三个层次,filter -> filterchain -> filtergraph。
在多媒体处理中,filter的意思是被编码到输出文件之前用来修改输入文件的内容到一个软件工具。如:视频翻转、旋转、缩放等。
1、filter
在简单过滤器中,只包含一个输入和一个输出,并且输入输出是同一类型。在下面的处理过程中,仅仅是在解码和编码之前加上了一个额外的过滤步骤。简单过滤器有 per-stream-filter 参数(视频为-vf, 音频为-af)配置。
(1)视频过滤器 -vf
# 如testsrc视频按顺时针方向旋转90度
ffplay -f lavfi -i testsrc -vf transpose=1
# 如testsrc视频水平翻转(左右翻转)
ffplay -f lavfi -i testsrc -vf hflip
12345
(2)音频过滤器 -af
# 实现慢速播放,声音速度是原始速度的50%
ffplay p629100.mp3 -af atempo=0.5
12
2、filterchain
filterchain 不是简单的将线性操作链应用于一个流(上面的简单过滤器便是如此)。例如,当图形有多个输入和/或输出,或者当输出流类型与输入不同时,就是这种情况。
基本用法:
Filterchain = 逗号分隔的一组filter
“filter1,filter2,filter3,…filterN-2,filterN-1,filterN”
123
顺时针旋转90度并水平翻转: