Re[2]: Синхронизация видео с разным fps.
От: Sharov Россия  
Дата: 20.12.23 13:45
Оценка:
Здравствуйте, Pzz, Вы писали:

S>>Может дурацкий вопрос, но все же: допустим надо синхронизировать, сделать коллаж, 2-х видео с разным фпс, например с 12.5 и 30 (видео 2), как можно

S>>понизить fps для 2-го видео? Ну т.е. у 2-ого видео кадров в 2-3 раза больше, я должен соотв. каждый
S>>2 или 3 кадр пропускать? Ну вот даны 3 кадра 2-ого видео, какой из 3-х мне оставить, тот который по времени ближе к
S>>кадрам 1-ого видео? А вот OpenCV (пока ее использую), может это автоматом сделать, т.е. сохранить видео с новым fps?
S>>Как быть если fps не кратны, например 15 и 25 fps (или те же 12.5 и 30), искать нод?
Pzz>Ну насколько я понимаю, ты можешь взять буфер на кадр, отрисовывать туда с той скоростью, с которой отрисовывается, согласно FPS, а забирать оттуда с той скоростью, с которой тебе надо.


Вот как эту(эти) скорости вычислять?
Речь про видео, а не про rtsp поток, где может добавлять задержку и брать каждый i-й кадр. Допустим речь идет об 15 фпс и 25 фпс.
Соотв. .06 сек и .04 сек. Пример, начало, 0 сек -- берем по кадру с обоих видео. Далее + 0.06с, берем сл. кадр у 15 фпс, вопрос --
что брать у второй камеры 0.04с или 0.08с ? Как я себе пока представляю алгоритм, берем меньшее фпс, вычитываем у него кадры,
суммируем время, далее смотрим по второй камере какой кадр к этому времени лучше взять (ближайший или последний до или первый после).
Как-то так. Ну т.е. вести учет времени по видео с меньшим фпс, а у второй
камеры вычислять желаемый номер кадра с учетом собственной фпс и прошедшего времени.

Pzz>Но если ты будешь это не руками писать, а воспользуешься библиотекой, то библиотека может заоптимизировать это дело, и избежать ненижной распаковки изображения до полного растра, а потом упаковки обратно (ну, если это в принципе возможно).


Ну вот по ссылке выше у OpecCV можно делать отдельно grab и retrieve, без рендеринга изображения. Но хотелось бы просто сделать
downsampling до нужной fps (если это вообще реально).
Кодом людям нужно помогать!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.