2017-03-09 87 views
0

我可以使用FFMPEG在视频中每20帧插入一幅图像吗? 我正在尝试创建一个潜意识消息实验,我认为这将是一个简单的方法,但我无法在网上找到任何东西。使用ffmpeg在每隔几帧插入视频内的图像

我试图让自己的东西,并创建一个脚本:
1.splits文件到音频和视频文件
2.splits视频分成帧与序列
3.overwrites每20图像中消息图像
4.re编码视频
与原始音频

这个工作,但它是舒适的方式,更多的磁盘空间占用,有没有更好的方式来做到这一点5.concatenating呢?
任何建议或想法都会受到欢迎。

回答

1

确保您的消息图像与视频具有相同的分辨率。然后运行

ffmpeg -i video.mp4 -loop 1 -i msg.png 
    -filter_complex "[0][1]overlay=enable='not(mod(n,20))':shortest=1[v]" 
    -map "[v]" -map 0:a -c:a copy out.mp4 

这会将图像印在第一帧上。为了避免这种情况,

ffmpeg -i video.mp4 -loop 1 -i msg.png 
    -filter_complex "[0][1]overlay=enable='if(gt(n,0),not(mod(n,20)),0)':shortest=1[v]" 
    -map "[v]" -map 0:a -c:a copy out.mp4 
+0

我得到一个错误:在FilterGraph动态描述“无效文件索引1 [0] [1]覆盖=使能='如果(GT(N,0),而不是(MOD(N,20 )),0)':最短= 1“[v]。 对于第二个命令,第一个不适合,因为第一个帧上的印记是个问题。 –

+0

更正的错字。 – Mulvya

+0

工程就像一个魅力! 告诉我一些事情,如果我插入带有透明背景的消息,是否可以将每个X帧覆盖它而不是覆盖帧? –