У мене є відеокадри у форматі PNG на 1 FPS і я намагаюся перетворити їх у відео за допомогою ffmpeg.
Якщо я роблю щось подібне:
ffmpeg -i data/input-%4d.png data/output.mp4
Я отримую відео з 25 кадрів в секунду, що в основному є дуже швидким вперед вхідного сигналу (який фіксується в 1FPS).
Якщо я спробую:
ffmpeg -i data/input-%4d.png -r 1 data/output.mp4
Я отримую щось, що VLC не хоче грати :)
Тепер, якщо я беру перше відео (FF) і застосую фільтр, щоб уповільнити його (наприклад -filter:v 'setpts=24.0*PTS'
), я можу змусити його відтворювати як відео з 1 FPS, але, звичайно, ціна - це розмір файлу. Я думаю, це генерує купу повторних кадрів.
Отже, питання полягає в тому, як мені створити відео, яке має рівно 1 FPS і насправді відтворюється з такою швидкістю? Формат виходу, btw, не так важливий для мене.
-r 1
.
ffmpeg
це досить розумний , щоб з'ясувати , видеокодека тільки від розширення файлу формату контейнера,.mp4
. Спробуйте додати-vcodec libx264 -vpre hq
до командного рядка, щоб повідомити йому параметр кодека та кодування.