У меня проблемы с кодированием последовательности изображений (которая может не начинаться с 0000) в AVI

ffmpeg -y -f image2 -framerate 30 -start_number 560 -i "images_%04d.png" -an -vcodec rawvideo -pix_fmt bgr24 video.avi

Работает, но является несжатым .avi (и поэтому огромен по размеру). Поэтому мы пытаемся закодировать его с помощью xvi:

ffmpeg -y -f image2 -framerate 30 -start_number 560 -i "images_%04d.png" -vcodec xvid video.avi -an video.avi

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

1 ответ1

1

Вам нужно использовать имена кодеков, распознаваемые ffmpeg. Для MPEG-4 часть 2 это либо "mpeg4", собственный кодировщик FFmpeg, либо внешняя библиотека кодирования "libxvid". Поэтому ваша команда должна включать -vcodec mpeg4 или -vcodec libxvid .

Полный список кодеков, поддерживаемых ffmpeg, генерируется ffmpeg -codecs . Вы также можете запустить ffmpeg -encoders или ffmpeg -decoders если хотите быть более конкретным. Чтобы вывести список приватных опций (они специфичны для каждого кодировщика), используйте ffmpeg -h encoder=mpeg4 .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .