我编写了一个bash脚本,它循环遍历各种RTMP直播流并每隔30秒切换一次。 我有一个在视频开头播放的PNG序列(blindRev-%d.png)。一个盲人被拉起来,露出了溪流。
28秒后,我希望它返回以覆盖流,以便在下一个流加载时,它会缩回以再次显示下一个流(blind-%d.png)。我已经尝试使用它的偏移来实现这一目标。不需要音频。
但是,只播放第一个PNG序列,第二个PNG序列似乎永远不会发生。
我使用的命令是:
ffmpeg -i rtmp://localhost/live/$stream -i blind/blindRev-%d.png -itsoffset 28 -i blind/blind-%d.png -filter_complex overlay -an -f flv rtmp://localhost/live/All
我做错了什么? 非常感谢。
答案 0 :(得分:0)
您必须循环图像,然后更改其时间戳。
ffmpeg -i rtmp://localhost/live/$stream -loop 1 -i blind/blindRev-%d.png
-filter_complex [1]setpts='mod(N,50)/25/TB+30*trunc(N/50)'[im];[[0][im]overlay
-an -f flv rtmp://localhost/live/All
我假设您的序列有50张图像,并且您希望叠加层每30秒启动一次。