как синхронизировать несколько видеостримов
От: sergey2b ЮАР  
Дата: 13.12.22 04:15
Оценка:
я сделал код который прнимает несколько потоков и делает из них multi view
в данном случаи показана часть лога для 4 потоков с камер в разных частях здания (потоки можно отличить по цифрам [505])

2022-12-13 02:43:27.986  info   [505] ---  : Receiver connection status changed.
2022-12-13 02:43:28.768  info   [505] ---  : Channel 0 is receiving video at 59.149395ffps.
2022-12-13 02:43:31.415  info   [457] ---  : Channel 0 is receiving video at 33.086918ffps.
2022-12-13 02:43:32.014  info   [452] ---  : Channel 0 is receiving video at 30.078526ffps.
2022-12-13 02:43:32.120  info   [505] ---  : Channel 0 is receiving video at 59.667934ffps.
2022-12-13 02:43:32.990  info   [505] ---  : Receiver connection status changed.
2022-12-13 02:43:33.056  info   [466] ---  : Receiver connection status changed.
2022-12-13 02:43:35.471  info   [505] ---  : Channel 0 is receiving video at 59.68681ffps.
2022-12-13 02:43:37.534  info   [457] ---  : Channel 0 is receiving video at 32.685978ffps.
2022-12-13 02:43:38.187  info   [505] ---  : Receiver connection status changed.
2022-12-13 02:43:38.249  info   [466] ---  : Receiver connection status changed.
2022-12-13 02:43:38.714  info   [452] ---  : Channel 0 is receiving video at 29.849714ffps.
2022-12-13 02:43:38.826  info   [505] ---  : Channel 0 is receiving video at 59.61486ffps.
2022-12-13 02:43:42.185  info   [505] ---  : Channel 0 is receiving video at 59.53062ffps.
2022-12-13 02:43:43.186  info   [505] ---  : Receiver connection status changed.
2022-12-13 02:43:43.458  info   [466] ---  : Receiver connection status changed.
2022-12-13 02:43:43.694  info   [457] ---  : Channel 0 is receiving video at 32.466408ffps.
2022-12-13 02:43:45.414  info   [452] ---  : Channel 0 is receiving video at 29.8547ffps.
2022-12-13 02:43:45.533  info   [505] ---  : Channel 0 is receiving video at 59.7366ffps.
2022-12-13 02:43:48.386  info   [505] ---  : Receiver connection status changed.
2022-12-13 02:43:48.454  info   [466] ---  : Receiver connection status changed.
2022-12-13 02:43:48.940  info   [505] ---  : Channel 0 is receiving video at 58.70607ffps.
2022-12-13 02:43:49.597  info   [457] ---  : Channel 0 is receiving video at 33.882202ffps.
2022-12-13 02:43:52.125  info   [452] ---  : Channel 0 is receiving video at 29.79798ffps.
2022-12-13 02:43:52.239  info   [505] ---  : Channel 0 is receiving video at 60.625294ffps.
2022-12-13 02:43:53.448  info   [466] ---  : Receiver connection status changed.
2022-12-13 02:43:53.583  info   [505] ---  : Receiver connection status changed.
2022-12-13 02:43:55.455  info   [457] ---  : Channel 0 is receiving video at 34.141876ffps.
2022-12-13 02:43:55.593  info   [505] ---  : Channel 0 is receiving video at 59.634636ffps.
2022-12-13 02:43:58.454  info   [466] ---  : Receiver connection status changed.
2022-12-13 02:43:58.786  info   [505] ---  : Receiver connection status changed.
2022-12-13 02:43:58.813  info   [452] ---  : Channel 0 is receiving video at 29.904644ffps.
2022-12-13 02:43:58.951  info   [505] ---  : Channel 0 is receiving video at 59.55274ffps.



из за разной загруженности сети, разного разрешения камер и загруженности CPU fps меняеться
подскажите пожалуйста как можно синхронизировать вывод потоков в multiview

моя начальная идея была запомнить time stamp первого принятого кадра с каждой камеры, использовать его как base time и синхронизировать по ним кадры выводимы на экран
с другой стороны разница небольшая в среднем 0.2 и возможно ее можно проигнорировать
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.