Есть ли у кого-нибудь известный надежный способ создания видео из серии файлов изображений? Перед тем, как вы отредактируете меня, чтобы не искать ответ, прежде чем отправлять вопрос, и перед тем, как запустить простое сообщение типа «использовать FFMPEG», прочитайте остальную часть этого сообщения.
Я пытаюсь создать видео, не имеет большого значения, какой формат, пока он широко поддерживается, из серии изображений (.jpg, .bmp и т. Д.). Моя платформа - Windows Server 2008, 64-разрядная. Если я могу сделать видео из моей программы на C #, это здорово, но я не против записать серию файлов изображений в каталог, а затем запустить внешнюю программу для создания видео из этих изображений.
Единственные ограничения: он должен работать в моей системе Windows Server 2008 и быть сценарием. То есть нет программ с графическим интерфейсом, которые требуют вмешательства оператора.
Я нашел несколько похожих вопросов в StackOverflow и попробовал несколько решений, все с различной степенью разочарования и ни одного с успехом.
FFMPEG выглядит как отличная программа. Может быть, в Linux. Две загруженные мной сборки Windows не работают. Учитывая эту командную строку:
ffmpeg -r 1 -f image2 -i jpeg\*.jpg video.avi
Одна из сборок читает изображения, а затем вылетает из-за предотвращения выполнения данных. Другой читает первый файл, а затем выдает сообщение об ошибке, которое гласит: «Не удается найти подходящий кодек для файла jpeg / image2.jpg». Это полезно. В любом случае, FFMPEG выглядит как не стартер под Windows.
Рекомендуется один ответ на предыдущую публикацию Splicer . Похоже, довольно хороший код. Я скомпилировал примеры и попытался запустить, но получил какое-то загадочное сообщение об ошибке, что файл не найден. Похоже, класс COM не зарегистрирован. Я полагаю, что мне нужно что-то установить (возможно, DirectShow, хотя я думал, что он уже установлен?). В зависимости от того, что требуется, мне может быть трудно оправдать его установку на сервере. («Что? Зачем это нужно на сервере?»)
В другом ответе предложена библиотека AviFile из Code Project. Это выглядит достаточно просто: обертка вокруг подсистемы Windows AviFile. За исключением того, что файлы AVI, создаваемые пакетом, по-видимому, содержат все кадры, но при воспроизведении AVI в Windows Media Player отображается только первый кадр. Ну, а если вы попытаетесь создать сжатое видео, программа выдаст исключение.
Итак, мне интересно, есть ли хороший, надежный способ сделать то, что я хочу: в системе Windows, создать AVI или другой общий формат видеофайлов из серии изображений, либо через .NET API или используя внешнюю программу. Любая помощь?