2016-12-09 9 views
0

Используя следующую команду:ffmpeg - тот же фрейм, написанный несколько раз?

ffmpeg -i test.mp4 -vf "select='not(mod(n,2000))',setpts=N/3/TB" -r 3 output.gif 

Я пишу 1 кадр, каждый 2000, в файле 3fps GIF.

Но когда я смотрю на выходе FFmpeg есть что-то сбивает с толку:

speed=0.00997frame= 1 fps=0.7 q=-0.0 size=  1kB time=00:00:00.01 
speed=0.00498frame= 1 fps=0.4 q=-0.0 size=  1kB time=00:00:00.01 
speed=0.00332frame= 2 fps=0.6 q=-0.0 size=  2kB time=00:00:00.34 
speed=0.0847xframe= 2 fps=0.4 q=-0.0 size=  2kB time=00:00:00.34 
speed=0.0678xframe= 2 fps=0.4 q=-0.0 size=  2kB time=00:00:00.34 
speed=0.0565xframe= 2 fps=0.3 q=-0.0 size=  2kB time=00:00:00.34 
speed=0.0968xframe= 3 fps=0.4 q=-0.0 size=  20kB time=00:00:00.68 
speed=0.0847xframe= 3 fps=0.4 q=-0.0 size=  20kB time=00:00:00.68 
speed=0.0753xframe= 3 fps=0.3 q=-0.0 size=  20kB time=00:00:00.68 
speed=0.0678xframe= 4 fps=0.4 q=-0.0 size=  41kB time=00:00:01.01 
speed=0.0915xframe= 4 fps=0.3 q=-0.0 size=  41kB time=00:00:01.01 
speed=0.0839xframe= 4 fps=0.3 q=-0.0 size=  41kB time=00:00:01.01 
speed=0.0774xframe= 4 fps=0.3 q=-0.0 size=  41kB time=00:00:01.01 
speed=0.0954xframe= 5 fps=0.3 q=-0.0 size=  66kB time=00:00:01.34 
speed=0.089x frame= 5 fps=0.3 q=-0.0 size=  66kB time=00:00:01.34 
speed=0.0834xframe= 5 fps=0.3 q=-0.0 size=  66kB time=00:00:01.34 
speed=0.0785xframe= 6 fps=0.3 q=-0.0 size=  90kB time=00:00:01.68 
speed=0.093x frame= 6 fps=0.3 q=-0.0 size=  90kB time=00:00:01.68 
speed=0.0881xframe= 6 fps=0.3 q=-0.0 size=  90kB time=00:00:01.68 
speed=0.0837xframe= 6 fps=0.3 q=-0.0 size=  90kB time=00:00:01.68 

Похоже, каждый из целевых кадров перестроен несколько раз. я бы ожидать, что-то вроде этого:

speed=0.00997frame= 1 fps=0.7 q=-0.0 size=  1kB time=00:00:00.01 
speed=0.00332frame= 2 fps=0.6 q=-0.0 size=  2kB time=00:00:00.34 
speed=0.0968xframe= 3 fps=0.4 q=-0.0 size=  20kB time=00:00:00.68 
speed=0.0678xframe= 4 fps=0.4 q=-0.0 size=  41kB time=00:00:01.01 
speed=0.0954xframe= 5 fps=0.3 q=-0.0 size=  66kB time=00:00:01.34 
speed=0.0785xframe= 6 fps=0.3 q=-0.0 size=  90kB time=00:00:01.68 

я упускаю что-то?

(это период наблюдения от ffmpeg - multiple output with thumbnails)

ответ

0

Это просто отчет о проделанной работе. Каждый раз, когда он обновляет отчет, если новый кадр еще не был закодирован, он отображает тот же рисунок. Скорость fps 1.0 означает 1 кадр, закодированный каждую секунду. Итак, если в течение двух секунд обновляется отчет о прогрессе, второй будет показывать одинаковое количество кадров.

+0

ОК, я понимаю; поэтому он не обрабатывает несколько исходных кадров для обновления кадра назначения. Благодаря! – Thomas

Смежные вопросы