LINUX.ORG.RU

av_read_frame отдает одинаковые кадры

 ,


0

1

Приветствую.

В отсутствии носителя для записи локального видео архива решил делать снимки (пока по времени) с усб mjpeg камеры через библиотеку ffmpeg и столкнулся с проблемой - если захватывать с камеры кадры 1 раз в 10 минут, то они идентичны, при этом если с такой же периодичностью, но прочитать подряд 5 кадров и взять последний, то проблема уходит.

Так понимаю что камера отдает какой то буфер кадров за раз и ффмпег должен «вычитать» все, перед тем как получить новый!?

Или как можно победить проблему?

★★★

Последнее исправление: wolverin (всего исправлений: 1)

если захватывать с камеры кадры 1 раз в 10 минут

У меня подозрение, что ты читаешь фреймы прямо с захвата камеры раз в 10 минут.

ffmpeg работает не так. Если вход сгенерировал кадр, ты должен его прочитать.

Поэтому сначала нужно пропустить поток видео через filtergraph, который схлопнет N кадров в один. Либо вручную читать все доступные кадры и отбрасывать ненужные. Что-то вроде вот этого CLI:

ffmpeg -ss 600 -i input.avi -s 320x240 -frames:v 1 output.jpg

Так понимаю что камера отдает какой то буфер кадров за раз и ффмпег должен «вычитать» все, перед тем как получить новый!?

Т.е. да.

derlafff ★★★★★
()
Последнее исправление: derlafff (всего исправлений: 2)