Посмотрите на определение маркера DHT.Начинается с длины маркера.Далее следуют 4-битные поля, которые определяют, является ли таблица таблицей AC или DC, и числовой идентификатор для таблицы.Затем следует количество символов в таблице, а затем символы.
Если вы прочитали символы и не израсходовали длину, вы зациклите и прочитаете следующую таблицу в том же формате.Чаще всего все таблицы помещаются в один маркер DHT, но выбор остается за кодировщиком.
Маркер начала кадра отображает компонент в таблицу Хаффмана по номеру.Выберите таблицы, указанные маркером SOF.Для цветного изображения вам может понадобиться до 6 таблиц Хаффмана для декодирования.
Если таблица повреждена, поток поврежден, и вы SOL.