2015-03-31 2 views
2

У меня есть постоянный поток jpeg, который нужно преобразовать в видео (любого вида).
Проблема заключается в том, что поток практически бесконечен, и я не знаю никакого способа создания видео с использованием изображений, которые не хранят весь файл в памяти до тех пор, пока поток не остановится.Кодирование живого потока растровых изображений с использованием FFMPEG

Есть ли способ, которым я может постоянно комбинировать FFMPEG с растровыми изображениями или jpegs из C# или, по крайней мере, делать ffmpeg для чтения изображений из папки с изображениями +432000 (в командной строке)?

Обратите внимание, что звука не будет, изображения будут низкого качества, они будут поступать со скоростью ~ 5 FPS, и это будет работать на ноутбуке с высоким разрешением. BTW Я могу предоставить код, но я предполагаю, что в настоящее время это необязательно, поскольку я только создаю растровые изображения и сохраняю их.

+0

Почему 432000 изображений? – DividedByZero

+0

@RandomUser Поскольку это должно быть приложение камеры наблюдения, оно будет записывать видео 24 часа в сутки с частотой кадров 5 кадров в секунду. 24 * 60 * 60 * 5 = 432000 – user3088260

ответ

2

Update: Вы можете создать MJPEG поток на основе статических изображений.

Вот пример проект, написанный в узле:

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

Было бы предпочтительнее, чтобы настроить источник для отправки MJPEG непосредственно, если это возможно. Затем вы можете использовать этот поток в качестве входных данных и транслировать его в другое.

Командная строка:

Из командной строки можно использовать -pattern_type glob -i '*.jpg' или -i img%06d.jpg, если файлы являются последовательными, как img000000.jpg, img000001.jpg и т.д.

Источник и примеры: FFmpeg - Create a video slideshow from images

+0

Я пробовал это, но FFMPEG кодирует видео быстрее, чем моя программа сохраняет их, поэтому ffmpeg останавливается после кодирования всех существующих изображений и должен запускаться периодически - он не ждет новых изображений – user3088260

+0

Я не могу придумать простой способ. Вы можете написать программу, которая имитирует поток M-JPEG, используя статические изображения в качестве входных данных. Можете ли вы настроить источник для отправки M-JPEG напрямую? – aergistal

+0

Я только что немного изучил M-JPEG, и это кажется очень полезным! Спасибо за помощь! – user3088260

Смежные вопросы