Я пытаюсь написать некоторый код на C, который будет демультиплексировать транспортный поток MPEG2 в элементарные потоки.Я использую ffmpeg для сравнения вывода, который я генерирую из моего кода.Поток вывода из моей программы в основном битовый с ffmpeg за исключением одного случая.ffmpeg, кажется, выбирает байт 0xff из потока битов, когда он находится в начале полезной нагрузки (после конца заголовка PES и байтов заполнения PES), в то время как я исключаю его как байт заполнения PES.
У меня такой вопрос: длина байта заполнения (0xff) в переменной пакета PES или она также закодирована в заголовке PES?
примечание: способ чтения полезной нагрузкиданные из пакета PES: я в основном пропускаю все начальные 0xff, пока не получу байт, не являющийся 0xff, и оттуда прочту до конца пакета