У меня есть видео, и я хочу извлечь 35-й кадр из этого видео.
Я хочу, чтобы это было изображение PNG, если это возможно.
У меня сейчас много вопросов, подобных этому, но я не смог найти решение, использующее номер кадра.
У меня есть видео, и я хочу извлечь 35-й кадр из этого видео.
Я хочу, чтобы это было изображение PNG, если это возможно.
У меня сейчас много вопросов, подобных этому, но я не смог найти решение, использующее номер кадра.
Используйте фильтр select
:
ffmpeg -i <input> -vf "select=eq(n\,34)" -vframes 1 out.png
отсчет начинается с 0, поэтому 35-е = n значение 34.
Два быстрых и грязных способа:
Используйте исполняемый файл FFmpeg с опцией поиска. Сначала вам нужно будет преобразовать время, например, если я хочу кадр 150, а мое видео - 29,97 FPS, команда будет ffmpeg -ss 00:00:05.01 -i myvideo.avi -frames:v 1 myimage.jpg
. Это может быть немного неточно. Для поиска по точному кадру вам нужно использовать библиотеку FFmpeg с C++ .
Еще один «хакерский» способ - использовать медиаплеер VLC. Проверьте меню Вид -> Расширенные элементы управления. Приостановите видео и нажмите кнопку покадрово 34 раза.