FFMPEG使用filter-complex的多个命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FFMPEG使用filter-complex的多个命令相关的知识,希望对你有一定的参考价值。

我拼凑了3个命令,但我的解决方案涉及编写一些临时文件。我最终想把一个命令的输出传递给下一个命令,而没有临时文件。

虽然许多问题讨论过滤器复杂(这是我相信结果作为输入完成的方式),但我似乎无法找到使用filter_complexs流入其他filter_complex命令(嵌套过滤器复杂命令?)的命令示例。在我的示例中,需要两个不同的输入,从而产生一个输出。

/* 
Brighten & increase saturation of original image 
Remove white shape from black background silhouette, leaving a transparent shape
Overlay black background silhouette over brightened image. Creating a focus point
*/
ffmpeg -i OrigionalImage.png -vf eq=brightness=0.06:saturation=2 -c:a copy BrightenedImage.png
ffmpeg -i WhiteSilhouette.png -filter_complex "[0]split[m][a]; [a]geq='if(lt(lum(X,Y),16),255,0)',hue=s=0[al]; [m][al]alphamerge" -c:a copy TransparentSilhouette.png
ffmpeg -i BrightenedImage.png -i TransparentSilhouette.png -filter_complex "[0:v][1:v] overlay=(W-w)/2:(H-h)/2" -c:a copy BrightnedSilhouette.png

两个原始输入和最终输出

原始图像qazxsw poi

白色剪影OrigionalImage

明亮的剪影qazxsw poi

答案

使用

WhiteSilhouette

你也可以反转WhiteSilouhette来生成alpha,

BrightnedSilhouette

以上是关于FFMPEG使用filter-complex的多个命令的主要内容,如果未能解决你的问题,请参考以下文章

使用ffmpeg转换多个文件夹中的多个文件

使用ffmpeg 将多个音频插入到视频中

C++ Ubuntu。使用 FFMPEG 库编译的多个未定义引用 [关闭]

使用 ffmpeg 剪切视频的多个部分

使用 FFMPEG 一次应用多个过滤器

使用 FFMPEG 一次应用多个过滤器