Как организована битовое потока идеи H264? / Заголовок начальных кодов

StackOverflow https://stackoverflow.com/questions/2732028

Вопрос

Я пытался узнать немного о H264, глядя на битстрим видеофайла с помощью шестнадцатеричного редактора. я нашел здесь Запускные коды для самолетов видеообъектов (0x000001b6) и для i-кадров (0x000001b600).

Но я не могу найти много этих байтов в видеофайлах. Большую часть времени те начальные коды появляются в начале файла с несколькими укусами между ними. Я ожидал, что они будут отображаться очень регулярно, на равном расстоянии по всему файлу!?

Это даже хорошо, чтобы посмотреть на файл с помощью шестнадцатеричного редактора таким образом? Какие еще существуют другие стартовые коды и как организован файл H264?

Это было полезно?

Решение

То 0x000001b6 Запустите код применяется к видео MPEG-4 часть 2, который является простым профилем. Это соответствует такому кодекам, как XVID и DivX. H.264 - это часть MPEG-4, которая является расширенным профилем видеокодирования. H.264 использует разные запускные коды.

Я не такой знакомый с частью 10, так как я с частью 2, но короткий взгляд через стандарт (ISO 14496-10) показывает, что битовый поток разбит на разделах, называемых налами. Эти единицы имеют 24-битный код 0x000001 предшествующим им для синхронизации согласно разрезе B.1.1. Следующий байт состоит из полей forbidden_zero_bit, nal_ref_idc, а также nal_unit_type Согласно разделу 7.3.1.

Я не уверен, разделяются ли эти NAL-единицы на границах кадров или нет. Возможно, вам просто нужно получить стандарт, который устанавливает все синтаксис битового потока.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top