
У меня есть фильм длиной 3 минуты и 29 кадров/сек. Я хочу разбить его на кадры по 1 кадру/сек.
Я использую эту команду:
ffmpeg.exe -i FILE0014.MOV -r 2 -f image2 -vcodec mjpeg -qscale 2 "%%05d.jpg"
но это генерирует более 300 изображений!
В файле журнала указано:
кадр= 3 кадра в секунду=0,0 q=0,0 размер=N/A время=00:00:01,00 битрейт=N/A dup=0 падение=13
кадр= 4 кадра в секунду=3,9 q=0,0 размер=N/A время=00:00:01,50 битрейт=N/A dup=0 падение=33
кадр= 5 кадр/сек=3,2 q=0,0 размер=N/A время=00:00:02,00 битрейт=N/A dup=0 падение=51
кадр= 7 кадр/сек=3,4 q=0,0 размер=N/A время=00:00:03,00 битрейт=N/A dup=0 падение=67
кадр= 8 кадр/сек=3,1 q=0,0 размер=N/A время=00:00:03,50 битрейт=N/A dup=0 drop=84
кадр= 9 кадров в секунду=2,9 q=0,0 размер=N/A время=00:00:04,00 битрейт=N/A dup=0 drop=102
кадр= 10 кадров в секунду=2,8 q=0,0 размер=N/A время=00:00:04,50 битрейт=N/A dup=0 drop=120
кадр= 12 кадров в секунду=2,9 q=0,0 размер=N/A время=00:00:05,50 битрейт=N/A dup=0 drop=137
время не точное, 1 секунда.
Может ли кто-нибудь помочь мне составить правильную команду?
решение1
пытаться:
ffmpeg -i file0014.mov -vf fps=1 -q:v 2 %03d.jpg
Разбираем это подробнее:
-vf fps=1
выберет кадр с интервалом в 1 секунду
-q:v 2
(сокращение от your qscale
) — шкала качества для изображений в формате JPEG. 1 — наивысшее качество, 31 — наихудшее.