NAL - это уровень абстракции сети в H.264. Он позволяет передавать битовый поток по сети с помощью блоков NAL, которые содержат данные. Набор блоков NAL группируется в блок доступа, и каждый блок доступа начинается с первичного кодированного изображения. Номер отладки является приоритетом NAL, в зависимости от того, какие изображения содержит NAL:
NAL_PRIORITY_DISPOSABLE = 0
NAL_PRIORITY_LOW = 1
NAL_PRIORITY_HIGH = 2
NAL_PRIORITY_HIGHEST = 3
Изображение IDR всегда будет иметь наивысший приоритет. Изображения I и P получают "высокий" приоритет. B эталонные изображения получают "низкий" приоритет, а B изображения получают одноразовый флаг.
POC
- это номер заказа изображения. Эта функция существует потому, что некоторые изображения необходимо передавать раньше других, даже если их метка времени представления позже, поэтому декодер может правильно разрешить ссылки. Я не могу сказать вам точно, как интерпретировать значение поля, но рассмотрение типов кадра и поля во время фактического кодирования должно дать вам некоторые подсказки. В основном вам нужно переупорядочить кадры в соответствии с их POC и передавать их таким образом.
I
и P
просто дают вам количество макроблоков I и P в текущем кадре. SKIP
дает вам количество пропущенных макроблоков. Пропускающий макроблок просто кодирует "ничто" и указывает декодеру использовать предсказание как есть. Это сохраняет большинство битов и должно использоваться для областей с небольшими изменениями или медленным глобальным движением.
Вы можете прочитать больше о H.264 в:
Wiegand, Thomas, et al. «Обзор стандарта кодирования видео H. 264/AVC». Схемы и системы для видео технологий, транзакции IEEE 13.7 (2003): 560-576. (PDF)