Как использовать ffmpeg
Я пытаюсь извлечь кадры из видео.. и я выбрал ffmpeg (скажите мне, если вы знаете что-то лучше) для этой задачи
я скачал его источник.. и я не знаю, как его использовать?? как мне его скомпилировать??
какой язык рекомендуется для него?? я знаю Python и C++
Обратите внимание, что я использую Windows Vista 64x .
3 ответа
Если вы просто хотите извлечь кадры из видео и сохранить их в файл, вы можете просто использовать ffmpeg в командной строке:
ffmpeg -i video.avi image%d.jpg
Для этого метода вам не нужно собирать ffmpeg, так как для загрузки должен быть доступен бинарный файл windows.
Если вы хотите отобразить кадры или выполнить какую-либо другую обработку для них, вы можете использовать libavformat и libavcodec (основные части проекта ffmpeg) для извлечения видеокадров в коде. Вот довольно хороший урок о том, как получить кадры из видео, используя libavcodec и libavformat. libavformat и libavcodec являются библиотеками C, поэтому я бы использовал C или C++, если вы хотите напрямую взаимодействовать с ними. Эта обёртка для python для ffmpeg выглядит многообещающе, но я не пробовал.
Вы также можете скачать скомпилированные библиотеки ffmpeg, поэтому вам не нужно создавать их самостоятельно. ffmpeg не будет основываться на MSVC++ в соответствии с документацией, поэтому вам придется настроить среду mingw. На этом сайте есть много сборок Windows и учебных пособий о том, как создавать библиотеки, если вы действительно этого хотите.
Если вы знаете C++, вы можете изменить образец из статьи, используя ffmpeg.
Если вы хотите использовать только ffmpeg, вы должны просто получить сборку, а не сам исходный код.
Чтобы извлечь кадр из видео, используйте следующую командную строку:
ffmpeg -i input.avi -r 1 -f image2 -s 120x96 images%05d.png
Где input.avi - ваше видео, 120x96 - размер выходного изображения. Есть много опций, которые вы можете использовать, чтобы указать точный кадр в фильме, но это определенно будет слишком много, чтобы показать здесь. Взгляните на эту страницу, чтобы получить более подробное описание.
С наилучшими пожеланиями,
Fabian