Video 将透明视频合并到另一个视频时会出现黑色覆盖

Video 将透明视频合并到另一个视频时会出现黑色覆盖,video,ffmpeg,mencoder,Video,Ffmpeg,Mencoder,这就是我到目前为止所做的: 创建透明PNG图像的命令: convert -size 640x480 -background transparent -fill blue \ -gravity South label:ROCK image1-0.png ffmpeg -loop 1 -f image2 -i image1-0.png -r 20 -vframes 100 \ -vcodec png -pix_fmt bgra mov-1.mov ffmpeg -i final-video.mo

这就是我到目前为止所做的:

创建透明PNG图像的命令:

convert -size 640x480 -background transparent -fill blue \
-gravity South label:ROCK image1-0.png
ffmpeg -loop 1 -f image2 -i image1-0.png -r 20 -vframes 100 \
-vcodec png -pix_fmt bgra mov-1.mov
ffmpeg -i final-video.mov -sameq -ar 44100 \
-vf "movie=mov-1.mov [logo];[in][logo] overlay=0:0 [out]" \
-strict experimental final-video.mov
创建透明视频的命令:

convert -size 640x480 -background transparent -fill blue \
-gravity South label:ROCK image1-0.png
ffmpeg -loop 1 -f image2 -i image1-0.png -r 20 -vframes 100 \
-vcodec png -pix_fmt bgra mov-1.mov
ffmpeg -i final-video.mov -sameq -ar 44100 \
-vf "movie=mov-1.mov [logo];[in][logo] overlay=0:0 [out]" \
-strict experimental final-video.mov
(根据)-我希望此视频是透明视频

用另一个视频覆盖视频的命令:

convert -size 640x480 -background transparent -fill blue \
-gravity South label:ROCK image1-0.png
ffmpeg -loop 1 -f image2 -i image1-0.png -r 20 -vframes 100 \
-vcodec png -pix_fmt bgra mov-1.mov
ffmpeg -i final-video.mov -sameq -ar 44100 \
-vf "movie=mov-1.mov [logo];[in][logo] overlay=0:0 [out]" \
-strict experimental final-video.mov
上面的命令非常完美,我没有遇到任何问题,但我没有得到我所期望的水印效果,我希望mov-1.mov与final-video.mov透明

问题:

convert -size 640x480 -background transparent -fill blue \
-gravity South label:ROCK image1-0.png
ffmpeg -loop 1 -f image2 -i image1-0.png -r 20 -vframes 100 \
-vcodec png -pix_fmt bgra mov-1.mov
ffmpeg -i final-video.mov -sameq -ar 44100 \
-vf "movie=mov-1.mov [logo];[in][logo] overlay=0:0 [out]" \
-strict experimental final-video.mov
  • 有没有办法验证生成的视频是否透明?除了合并
  • 不知道为什么上面的mov-1.mov在与final-video.mov合并时不透明,任何解决此问题的信息都很好

  • 请帮助。

    ImageMagick并不总是以FFmpeg理解的方式生成透明PNG。上次我遇到这个问题时,我被迫使用GIMP创建索引透明图像。没关系,回头看,我发现我显然能够通过设置
    png:color type
    使ImageMagick以FFmpeg喜欢的方式产生透明度。您的convert命令将变为:

    convert -size 640x480 -background transparent -fill blue \
    -gravity South label:ROCK -define png:color-type=6 image1-0.png
    

    也就是说,您不需要将图像转换为自己的电影。
    电影
    视频过滤器将接受一个透明的png作为输入。

    感谢您的回复,顺便说一句,我已经用GIMP验证了图像,正如您所说,图像索引是透明的。你有更多的信息吗?或者如果你共享你的命令,我就可以运行它。当我尝试将图像传递到
    movie
    属性时,我只能在最终输出中看到图像,但不能看到视频,我看到一个黑色覆盖层,它将我的视频隐藏在后面,但我确信输入图像是一个透明图像。看起来图像创建有问题-可能是我遗漏了什么。原因?当我使用Photoshop创建了一个没有任何问题的透明图像时,我得到了我预期的最终输出,这意味着透明。我很高兴你把它解决了?是的,我发现了问题,但我不确定图像处理中缺少了什么,你有什么答案吗????