FFMpeg 连续实时图像到视频编码

Ben*_*Ben 5 ffmpeg unity-game-engine unityscript

我正在尝试使用 FFMpeg 获取图像文件流并将其转换为视频。现在,我已经成功地做到了这一点,但前提是我已经捕获了所有我想要的图像。我想做的是将图像保存到磁盘(实时录像机)时将其转换为视频。目前,当我在仍在抓取帧的情况下调用 FFMpeg 时,它仅对调用时存在的图像数量进行编码。如果每次抓取图像时都调用 FFMpeg,则会用大量进程淹没 CPU。理想情况下,FFMpeg 将继续对图像进行编码,直到不再捕获任何图像(即,检查自第一次调用以来是否有更多图像文件)。我是否缺少 FFMpeg 的论点,或者这是不可能的?或者是通过搞乱图书馆来做到这一点的唯一方法?

Jef*_*eff 1

一种解决方案(但我不喜欢)是:在 Mpeg2 VOB 中对基本视频进行编码。每 X 帧对最后 X 帧的新视频进行编码。由于 VOB 文件没有文件头,因此您只需将新文件的二进制文件附加到现有 VOB 中即可。FFMPEG 只需要在几帧上运行。其他一些视频格式也可能有效。