我有一组透明图像,其中每个图像代表一帧视频。我知道我可以使用-i %d.png
将它们覆盖在另一个视频的顶部。我想要做的是提前将它们转换为透明视频,然后以后可以将该透明视频覆盖到另一个视频上。我已经尝试过-i %d.png trans.mov
,然后将trans.mov
覆盖在另一个视频的顶部,但是trans.mov
似乎并不透明。
答案 0 :(得分:1)
您必须使用支持透明度/ alpha通道的编码器。您可以使用ffmpeg -h encoders
查看编码器列表,并使用ffmpeg -h encoder=<encoder name>
获取更多详细信息,例如ffmpeg -h encoder=qtrle
。然后参考Supported pixel formats
行:如果在受支持的像素格式名称中具有“ a
”,例如rgba
,则它支持alpha。请查看带有ffmpeg -pix_fmts
的像素格式的常规列表。
最简单的解决方案是将PNG文件混合为MOV:
ffmpeg -framerate 25 -i %d.png -c copy output.mov