关于ffmpeg filter的详细翻译,参照
执行命令:./ffmpeg -filters 查看当前ffmpeg所支持的所有滤镜
ffmpeg filters是由libavfilter来实现的.
在libavfilter中1个filter可以由多个输入和输出.
-------------------------------练习一-------------------------------------
crop:修剪, flip:翻转,overlay:叠加
不同的线性链路用“;”分隔,同一个线性链路用“,”分隔;不同的线性链路之间是由[name]连接的;
一些滤镜支持参数列表: 滤镜名=由冒号(':')隔开的多个参数
还存在所谓的源过滤器(即没有输入音频/视频 的过滤器),以及槽过滤器(即没有任何音频/视频 输出的过滤器)
官方给的第一个例子,倒影效果:
ffmpeg -i x.mp4 -vf "split [main][tmp]; [tmp] crop=iw:ih/2:0:0, vflip [flip]; [main][flip] overlay=0:H/2" y.mp4
split的滤镜输出是[mian], [tmp]; crop, vflip的滤镜输入是[tmp],输出是[flip];overlay的滤镜输入是[main],[flip];如果一个滤镜链路没有输出,那么它会链接到
-------------------------------end-------------------------------------
source:源,sink:槽
滤镜参数的3种方式:
- A ’:’-separated list of key=value pairs. 由":"分隔的“key=value”形式的列表
- A ’:’-separated list of value. 由“:”分隔的"value"的列表
- A ’:’-separated list of mixed direct value and long key=value pairs. 混合前两种,但是第二种要在前面
---------------------------audio filters----------------------------------
--disable-filters 可以禁止当前ffmpeg所支持的所有滤镜。
音频压缩:acompressor ;不能压缩的太过,会造成声音失真,甚至会毁掉track;理想的压缩目标是一种艺术目标,挺耗时的。