gpt4 book ai didi

video - FFMPEG - 合并视频与透明度

转载 作者:行者123 更新时间:2023-11-28 21:40:43 24 4
gpt4 key购买 nike

我正在尝试将两个视频合并在一起,都具有透明度,使用命令

ffmpeg.exe -i person2.mov -vf "[in] scale=iw/2:ih/2,fade=out:300:30:alpha=1, pad=2*iw:ih [左];movie=person2.mov, scale=iw/2:ih/2,fade=out:300:30:alpha=1[右];[left][right] overlay=main_w/3:0,fade= out:300:30:alpha=1 [out]"-b:v 768k Output_people.mov

通过这样做,我得到以下输出:

http://i263.photobucket.com/albums/ii122/Fernando461/Untitled.png

如您所见,可以将两个视频放在一起。但是,当我尝试将此视频 (Output_people.mov) 与另一个视频合并时,它没有相同的透明度。是否可以保持结果的透明度?

编辑 1:

这是我得到的输出:https://www.dropbox.com/s/gpid1pptfio31gd/ffmpeg-20130701-193206.log

“它没有相同的透明度”我的意思是背景是黑色的而不是透明的,所以如果我把一个视频放在彼此的顶部,后面的那个被黑色部分覆盖前面那个的。

编辑 2:将 -vcodec qtrle 添加到代码中有效。谢谢 mark4o!

最佳答案

您没有为输出指定视频编解码器,因此它使用 .mov 文件的默认视频编解码器,即 H.264(libx264 编码器)。但是 H.264 不支持 alpha channel 。如果您希望输出视频具有透明度,则需要指定支持 alpha channel 的输出视频编解码器,例如用于输入的编解码器,即 QuickTime Animation RLE (qtrle)。为此,请在输出文件名前添加选项 -c:v qtrle。另一种支持 alpha channel 并可以存储在 .mov 文件中的编解码器是 png

您可以使用 ffmpeg -encoders 查看您的 ffmpeg 支持的编码器列表。像 ffmpeg -h encoder=qtrle 这样的命令将列出特定于该编码器的信息,包括支持的像素格式。一种像素格式,包括字符串 argbrgbaabgrbgragbra,或者 yuva 有一个 alpha channel 。

关于video - FFMPEG - 合并视频与透明度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17415651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com