В настоящее время используется lib из FFPMEG для потоковой передачи некоторого MPEG2 TS (h264-кодированного) видео. Потоковая передача выполняется через многоадресную рассылку UDP.Использование библиотек FFMPEG для UDP-потока mpeg2 ts проблемы с задержкой видео/начального соединения
Проблема, с которой я сейчас сталкиваюсь, - это две основные вещи. Существует длинное начальное время соединения/получение видео для отображения (поток также содержит метаданные, и этот поток сразу обнаруживается моим медиа-инструментом).
Как только видео происходит, все нормально, но оно всегда задерживается этим начальным временем соединения.
Я пытаюсь как можно ближе к потоку LIVE.
В настоящее время используется параметр av_dict_set (& dict, «tune», «zerolatency», 0) и «profile» -> «baseline».
GOP size = 12;
Сначала я подумал, что проблема связана с проблемой i-фрейма, но начальная задержка там, если гоблизация равна 12 или по умолчанию 250. Иногда видео будет быстро подключаться, но оно сразу же отбрасывается, происходит задержка, затем начинается резервное копирование и хорошо с этого момента.
Согласно документации, параметр нулевой задержки должен посылать много кадров i, чтобы ограничить первоначальные задержки синхронизации.
Я начинаю думать о проблеме с буферизацией, так как когда я закрываю приложение и опускаю медиаплеер, он быстро переходит вперед через задержку до тех пор, пока он не ударит в основном там, где файл перестанет потоковым.
Ну, чередующиеся попытки записи организуют пакеты внутри, чтобы синхронизировать их. Задержка могла быть вызвана внутренней буферизацией и повторным заказом, что делает FFMPEG. С другой стороны, не могли бы вы уточнить свой вопрос, чтобы подробно рассказать о том, как вы сделали потоковое вещание с FFMPEG? Мне интересно это делать с FFMPEG, но у меня очень минимальный опыт FFMPEG. – Darksaint2014