Что я могу сделать, чтобы отладить и избежать артефактов декодирования с помощью RTP в ffmpeg?

Я программно кодирую и декодирую поток RTP VP9 и время от времени сталкиваюсь с такими яркими артефактами, как эти:

В журнале ffmpeg (оба при использованиии мой собственный код), обычно это совпадает с такими сообщениями

      [sdp @ 0x14de06880] max delay reached. need to consume packet
[sdp @ 0x14de06880] RTP: missed 18 packets

Таким образом, предположительно, демультиплексор больше не может ждать пакетов, и декодер выдает что-то неполное. Есть ли способ обнаружить это и удалить неполные кадры или на что мне следует обратить внимание, чтобы это исправить?

Поддержка VP9 в RTP ffmpeg, по-видимому, является экспериментальной, так что, возможно, это тоже проблема, но я надеюсь, что, возможно, есть какие-то параметры декодера, которые сделают деградацию более изящной.

0 ответов

Другие вопросы по тегам