我需要使用单个图像生成几秒钟的视频。我尝试了loop
参数:
ffmpeg -loop 1 -t 4.5 -i https://url/to/image.jpg ...
它可以工作,但看起来像是ffmpeg请求每个帧的url。默认的framerate
是25,因此它对4秒的视频发出100个请求。
我不能将framerate
设置为1,因为我添加了一个文本动画,所以帧应该经常更改。
但即使我可以,我也不想要求每秒钟都有相同的图像。
作为一种变通方法,我可以先下载图像,然后使用本地版本。这样视频生成速度会快得多。
但无论如何,有可能强制ffmpeg以某种方式缓存该图像并将其用于每一帧吗?
请改用循环和修剪过滤器。
ffmpeg -i https://url/to/image.jpg -vf "loop=-1:1:0,trim=duration=4.5" ...
ffmpeg -framerate 1 -protocol_whitelist file,http,https,tcp,tls,crypto -i https://helloparent7222.... output.mp4
我使用此命令生成视频,但生成了损坏的视频。