Мне нужно извлечь кадры из видео с частотой 30 кадров в секунду дважды: (i) 720p png кадры и (ii) 270p tiff frames.ffmpeg: одно и то же видео, одинаковую частоту кадров, разное количество выходных кадров. Зачем?
достичь этого, используя следующие команды соответственно:
ffmpeg -r 30 -i myvideo.mp4 -s 1280x720 frames/myvideo_%06d.png
ffmpeg -y -i myvideo.mp4 -an -r 30 -pix_fmt rgb24 -vcodec tiff -s 480x270 frames/myvideo_%06d.tif
Тем не менее, это приводит к первой команде, выводящей 35,776 кадров и второй команду выводящей 35,812 кадров, несмотря на видео является идентичным, и частотой кадров запрошенных 30 кадров в секунду ,
Что вызывает это? Как я могу гарантировать, что ffmpeg выводит одинаковое количество (синхронизированных) кадров?
Кажется, что -r зависит от положения. Перемещение -r в начало команды (т. Е. «Ffmpeg -r 30 -y -i myvideo.mp4 -an -pix_fmt rgb24 -vcodec tiff -s 480x270 frames/myvideo_% 06d.tif»), похоже, разрешает эту проблему. Мне было бы интересно, если бы кто-то более осведомленный с ffmpeg мог прокомментировать это относительно того, является ли это правильным способом мышления/решения. – Josh