У меня есть камера на БПЛА, отправляющая видеопоток H.264 на станцию контроллера для презентации. Цепь задержки от реального мира до станции управления составляет несколько сотен мс. Заданная задержка целевой контрольной станции составляет 100 мс (или меньше). Контрольная станция - это ноутбук среднего класса, работающий Windows 10 с использованием кода LEADTOOLS c.
. Я проводил измерения того, сколько времени требуется для декодирования и представления видео на контрольной станции с использованием различных технологии. Это лучшие результаты, которые я мог получить, переставляя различные параметры:
- Декодирование процессора. Задержка ~ 150мс. Высокая загрузка процессора
- Графический процессор Intel, QuickSyn c. Задержка ~ 300 мс. Низкая загрузка процессора
- Графический процессор Nvidia. Задержка ~ 300 мс. Errati c загрузка процессора (плохой драйвер?)
Исходя из цифр, которые я предполагаю, существуют либо различия в буферизации, либо высокая скорость передачи потока на устройство. Может быть, и то, и другое.
В: В общем, как я могу минимизировать задержку отображения видео потока UDP? Размышление о конфигурации потока H.264, API, полные продукты, стратегии буферизации.
(Чувствую, что мне нужно прекратить тестировать случайные перестановки параметров и вместо этого делать это раз и навсегда. «Их слишком много!» )