Статус документа
Статус документа

ГОСТ Р 53556.10-2014 Звуковое вещание цифровое. Кодирование сигналов звукового вещания с сокращением избыточности для передачи по цифровым каналам связи. Часть III (MPEG-4 audio). Передискретизация аудио (Переиздание)

     7 Эталонная модель декодера DST

7.1 Процессы декодирования DST

Параметры, обработанные и извлеченные из потока, используются, чтобы декодировать кодированный фрейм DST. Этот подпункт объясняет процессы декодирования, необходимые для кодированных фреймов DST.

7.1.1 Введение

Существуют три функции: арифметический декодер, мультиплексор/демультиплексор и ряд моделей источника. Арифметический декодер получает последовательность битов (D=A_Data) и последовательность вероятностей (Р) и генерирует последовательность битов (E). Последовательности Е и Р присваиваются моделям источника в циклическом порядке, которым управляет мультиплексор/демультиплексор. Каждая модель источника получает необходимые параметры, как коэффициенты фильтра прогноза и записи таблицы вероятности из потока, как определено в синтаксисе и семантике.

Модель источника S соответствует каналу S. Вывод X из модели источника S является сигналом DSD для канала S.

7.1.2 Арифметический декодер

Арифметическое кодирование является методом кодирования переменной длины для сжатия данных близко к их энтропии. Кодированные данные представляются как число. Число использует столько цифр, сколько требуется, чтобы однозначно определять исходные данные.

Таблица 23 определяет переменные, используемые на рисунке 2, рисунке 3, рисунке 4 и рисунке 5.


Таблица 23 - Переменные, используемые в рисунке 2, рисунке 3, рисунке 4 и рисунке 5

Имя

Характеристики

Описание

А

12-битовый регистр

Это целое число без знака представляет текущую величину интервала арифметического декодера

С

12-битовый регистр

Это целое число без знака содержит часть битов арифметического кода

K

4-битовая переменная

Это целое число без знака является 4-битовым приближением А

Р

8-битовая переменная

Это целое число без знака является величиной вероятности, применяемой к арифметическому декодеру

Q

12-битовая переменная

Это целое число без знака является произведением K и Р

          

Рисунок 2 показывает полную блок-схему алгоритма декодирования DST.

Процесс инициализации показан на рисунке 3 и требуется в начале декодирования каждого фрейма. Он состоит из загрузки первых 13 битов арифметического кода в регистр С и переустановки регистра А в 4095. Первый бит, считываемый в С, будет перезаписан, это предусмотрено, потому что первый бит всегда 0.

Функция "Input next bit D" (ввод следующего бита D) на рисунке 2, рисунке 3 и рисунке 5 означает, что бит D берется из A_Data [ ], начиная с первого бита. После того как все биты из A_Data [ ] были считаны, функция "Input next bit D" устанавливает бит D в 0.

Чтение информации о вероятности Р получает из модели источника, за исключением первого бита, где вместо этого читается вероятность DST_X_Bit.

Рисунок 4 иллюстрирует декодирование одного бита Е и обновление регистра А и С. Сначала вычисляется текущий аппроксимированный размер интервала K. Затем произведение аппроксимированного размера интервала K и применяемой величины вероятности Р сохраняется в Q. Если С больше или равно A-Q, то арифметический код находится в верхней части интервала, что означает, что исходный закодированный бит Е был битом '1'; иначе был передан бит '0'. А и С должны быть скорректированы таким же образом как в кодере.

Процесс ренормализации показан на рисунке 5. Ренормализация требуется когда значение А слишком маленькое. Если А является слишком маленьким, то А и С смещаются на один бит влево, и новый бит арифметического кода D читается в младший значащий бит С.

Возможно, что последние биты A_Data не используются функцией "Input next bit D" для того, чтобы декодировать аудиофрейм. Эти неиспользованные биты являются битами заполнения для выравнивания аудиофрейма на границе байта.

     
Рисунок 2 - Блок-схема арифметического декодера

     

 
Рисунок 3 - Инициализация