帖子这里非常有帮助。
我只是使用秀浪过滤器(目前)生成可视化效果,如下所示:
ffmpeg -i input.mp3 -filter_complex \
"[0:a]showwaves=mode=cline:s=1280x480:colors=Magenta|Azure|White[v]" \
-map "[v]" -map 0:a -pix_fmt yuv420p \
-b:a 360k -r:a 44100 output.mkv
我尝试将此视频叠加在另一个视频上(使用快捷键,以防背景只有出现了是“黑色”,但它仍然存在。
Showwaves 滤镜本身没有背景颜色选项。
基于这个帖子,看起来彩色键过滤器至少可以使黑色透明,但是以下代码仍然会导致黑色背景:
ffmpeg -i input.mp3 -filter_complex \
"[0:a]showwaves=mode=cline:s=1280x480:colors=Magenta|Azure|White:r=25, colorkey=0x000000:0.1:0.1[v]" \
-map "[v]" -map 0:a -pix_fmt yuv420p \
-b:a 360k -r:a 44100 output.mkv
有什么建议么?
答案1
秀浪输出透明背景(除非你的ffmpeg
设备非常旧),这样你就可以覆盖它到颜色筛选:
ffmpeg -i input.mp3 -filter_complex \
"[0:a]showwaves=mode=cline:s=1280x480:colors=Magenta|Azure|White[sw]; \
color=s=1280x480:c=#00ff00[bg]; \
[bg][sw]overlay=format=auto:shortest=1,format=yuv420p[v]" \
-map "[v]" -map 0:a -c:a copy output.mkv
音频是流已复制(-c:a copy
)而不是重新编码。