使用 FFMPEG 编码实时位图流

Encoding a live stream of bitmaps using FFMPEG

我有源源不断的 jpeg 图片需要转换成视频(任何类型)。
问题是流实际上是无限的,我不知道使用图片创建视频的任何方法,这些图片在流停止之前不会将整个文件存储在内存中..

有没有一种方法可以让我从 C# 中不断地为 FFMPEG 提供位图或 jpeg,或者至少让 ffmpeg 从包含 +432000 张图像的文件夹中读取图像(在命令行上)?

请注意,不会有声音,图像质量低下,帧率约为 5 FPS,这在高端笔记本电脑上会 运行。顺便说一句,我可以提供代码,但我认为目前这是不必要的,因为我只是创建位图并保存它们。

更新: 您可以根据静态图像创建 MJPEG 流。

这是一个用 node 编写的示例项目:

https://github.com/psanford/node-mjpeg-test-server/tree/master/resources

如果可能,最好将源配置为直接发送 MJPEG。然后您可以使用此流作为输入并将其实时转码为其他内容。

命令行:

如果您的文件是连续的,例如 img000000.jpg、img000001.jpg 等,您可以在命令行中使用 -pattern_type glob -i '*.jpg'-i img%06d.jpg

来源和示例:FFmpeg - Create a video slideshow from images