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

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

     5.3 Процесс декодирования данных звука

5.3.1 Общие сведения

Первым действием является синхронизация декодера с входным потоком битов. Для этого выполняется обнаружение в потоке 12-битного синхрослова. В некоторых приложениях поля ID, уровень и protection status заранее известны, и, таким образом, первые 16 битов заголовка должны быть расценены как 16-битная синхропоследовательность, делая тем самым синхронизацию более надежной. Позиция соседних синхрослов может быть вычислена из информации, предоставленной семью битами после protection_bit: поток битов подразделяется на слоты. Расстояние между началами двух соседних синхрослов составляет или слотов. Значение зависит от уровня.

Для Уровня I верно следующее равенство:

;


для Уровней II и III:

.


Если результат не является целым числом, то он округляется и требуется дополнение. В этом случае число слотов во фрейме будет меняться в пределах и . Бит пэддинга устанавливается в '0', если число слотов равно , и в '1' в противном случае. Знание точной позиции синхрослов значительно облегчает синхронизацию.

Если индекс скорости передачи равен '0000', точная скорость передачи не обозначается. может быть определено из расстояния между соседними синхрословами и значением бита пэддинга.

Биты режима должны быть считаны из потока, и если их значение равно '01', то также должны быть считаны биты mode_extension. Биты mode_extension, установленные в bound, указывают тем самым на субполосы, кодированные в режиме joint_stereo.

Если бит защиты в заголовке равен '0', проверочное слово CRC находится в потоке битов сразу после заголовка. В качестве метода обнаружения ошибок используется CRC 16 с порождающим полиномом

.


Начальное состояние сдвигового регистра '1111 1111 1111 1111'. Затем все биты, включенные в проверку CRC, поступают в блок, показанный на рисунке А.9. После введения каждого бита сдвиговый регистр смещается на один бит. После последней операции сдвига выходы ... составляют слово, которое сравнивается со словом проверки CRC. Если эти слова неидентичны, ошибка передачи произошла в защищенном поле потока битов. Во избежание раздражающих искажений рекомендуется использование методов маскировки ошибок, таких как заглушение текущего фрейма или повторение предыдущего фрейма.

5.3.2 Уровень I

После части декодирования, общей для всех уровней, считывается информация о распределении битов для всех субполос и масштабные коэффициенты для субполос с ненулевым распределением битов. Блок-схема алгоритма декодера дана на рисунке А.1.

5.3.2.1 Переквантование субполосных отсчетов

Из информации о распределении битов известно число битов nb, которое должно быть считано из субполосных отсчетов. После того как биты одного отсчета были считаны из потока, первый бит инвертируется. Полученное таким образом число можно рассматривать как дробное число (меньше единицы) в дополнительном коде, где MSB представляет значение минус один. Переквантование выполняется по формуле

,


где - переквантованное значение;

- количество битов, выделеное на кодирование отсчетов субполосы;

- дробное число.

Отсчеты субполос, которые находятся в режиме intensity_stereo, должны быть скопированы в оба канала. Переквантованные значения должны повторно масштабироваться. Коэффициенты даны в таблице Б.1. Повторно масштабируемое значение вычисляется как

,


где - масштабный коэффициент.