Распаковщик пакетов RTP H.264

Обычно для видео бит маркера пакета RTP указывает на последний пакет RTP. Итак, с этим гарантировано, что я получу 1 кадр на пакет или могу получить более одного?

В случае, если не будет депакетирования, мне нужно будет сделать парсер для разделения кадров H.264?

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

С наилучшими пожеланиями,


person pcbb    schedule 17.03.2013    source источник


Ответы (1)


RFC 6184 "Формат полезной нагрузки RTP для видео H.264" содержит ответы на поставленные вопросы. Это может быть в обоих случаях: 2+ блока NAL на пакет и 1 блок NAL, фрагментированный по 2+ пакетам.

Смотрите цитаты ниже:

5.7.1. Однократный пакет агрегации (STAP)

Пакет однократной агрегации (STAP) СЛЕДУЕТ использовать всякий раз, когда агрегируются блоки NAL, которые используют одно и то же время NALU.

и

5.8. Фрагментационные блоки (FUS)

Этот тип полезной нагрузки позволяет фрагментировать блок NAL на несколько пакетов RTP. Выполнение этого на прикладном уровне вместо того, чтобы полагаться на фрагментацию нижнего уровня (например, по IP), имеет следующие преимущества:

person Roman R.    schedule 17.03.2013
comment
Я понимаю, спасибо! Теперь у меня другой вопрос, но о звуковых рамках. stackoverflow.com/questions/15472788/ - person pcbb; 18.03.2013
comment
Одно было непонятно. Я получаю пакеты RTP. Я подожду последний пакет RTP на основе маркера. Маркер-бит в H264 укажет, что? Последний пакет RTP что ли? Рамки? Рама? Более одного кадра? - person pcbb; 18.03.2013
comment
Нет смысла иметь кусок кадра в rtp пакете h264 раньше. Потому что некоторые пакеты отбрасываются при UDP-соединении. Можешь ли ты быть более чистым? С уважением, Пауло. - person pcbb; 18.03.2013
comment
УДП пакеты могут прибыть из строя, и они также могут быть потеряны. Итак, ваша очередь попытаться восстановить блоки NAL, когда это возможно, а затем передать их в декодер и т. д. - person Roman R.; 18.03.2013