LINUX.ORG.RU

Сборка кадров в видео, ffmpeg

 ,


1

2

Решил прокачать скилл владения ffmpeg'ом и заодно проверить новый диск на стабильность. Разумеется странным методом. Т.е. разобрать несколько каких нибудь больших фильмов на кадры и собрать обратно. В наличии папка с порядка 100-150K .png, команду выбрал стандартную из мануалов:

ffmpeg -f image2 -i %d.png -r 24 -vcodec libx264 -preset slow -qmax 25 ../test.ts 
и вариация с кодком h264_omx.

Собственно проблема и вопрос: в выводе ffmpeg множественные предупреждения вида

Past duration 0.719994 too large
и дропнутые кадры, порядка 3,9%. Как можно выбрасывать кадры если, дана команда собрать вот эти кадры по 24 штуки в секунду в видеопоток? Чего я не знаю и какие скрытыепараметры фреймрейта не указаны? Да, тестовый фрагмент на глаз выглядит плавным, но я не уверен, что уловлю выпавший кадр.

Ответ на: комментарий от RazrFalcon

Ясно. Кажется я даже нагуглил вразумительное объяснение этому шаманству. Нехорошо по умолчанию предполагать 25 кадров в секунду при вроде бы указанном значении.

kirill_rrr ★★★★★ ()
Ответ на: комментарий от kirill_rrr

Дело в том, что большая часть опций ffmpeg действует на следующий входной или выходной файл. Частота кадров по умолчанию — 25, она и используется для источника, то есть твоих картинок. А для выходного ты указываешь частоту 24 кадра в секунду. Вот они и стопорятся.

Ещё раз: параметры нужно указывать перед файлами.

Об этом, конечно, написано в man-странице. Но кто ещё читает?

i-rinat ★★★★★ ()
Ответ на: комментарий от i-rinat

3.4 это сейчас последняя, которую я могу себе поставить.

А по поводу ман-страницы ffmpeg, на неё можно посылать, и это ещё дальше чем лесом в пешее эротическое путешествие. 300+ Кб текста который очень плохо поддаётся поиску.

kirill_rrr ★★★★★ ()