ViGilant
@ViGilant

FFMPEG: как дописать 1 фрейм в конец mpeg-файла (создание time-lapse "на лету")?

Всем привет.

Имеем камеру. Скрипт каждые 30 секунд тянет с нее снапшот в формате JPG. Хочется дописывать его в конец MPEG файла, чтобы постепенно формировалось time-lapse видео с заданной частотой кадров. Вопрос, как это реализовать?

* В принципе, на данный момент вышеупомянутый скрипт кладет снапшоты в папки (имя папки dd_mm_yyyy) c именем в формате hh_mm_ss.jpg и можно было бы раз в сутки собирать видео из этих файлов. Но загвоздка в том, что я умею делать это только с файлами вида *000001*.jpg, *0000002*.jpg и т.п., а сохранять картинки в таком формате не хочется.

Пробовал команду avconv -i '%*.jpg' -r 30 -q:v 2 timelapse.mp4 но она не работает.

В общем, видится рабочим вариантом отказаться от хранилища кучи jpeg-ов и перейти на запись готовых таймлапсов "на лету". Но как это сделать не понимаю. Раньше пользовался motion, который умеет это делать сам, но камера сменилась, теперь только rtsp (mjpeg не умеет) и motion подавился, приходится брать кадры напрямую(
  • Вопрос задан
  • 3057 просмотров
Пригласить эксперта
Ответы на вопрос 2
ViGilant
@ViGilant Автор вопроса
Пока нагуглил вот это и это работает

mencoder -nosound mf://*.jpg -mf w=800:h=371:type=jpg:fps=15 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=2160000:mbd=2:keyint=132:v4mv:vqmin=3:lumi_mask=0.07:dark_mask=0.2:mpeg_quant:scplx_mask=0.1:tcplx_mask=0.1:naq -o time_lapse-test.avi


www.munz.li/2008/07/23/time-lapse-convert-single-j...

Но это mencoder, а не ffmpeg)
Ответ написан
Комментировать
ViGilant
@ViGilant Автор вопроса
тихо сам с собою.. в вышеприведенное надо добавить еще -vf scale чтобы процесс не крашился на середине по не совсем понятным мне причинам
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы