3.8.1 Краткий обзор инструментов
Для типов звуковых объектов, устойчивых к ошибкам, может быть применен инструмент защиты от ошибок (ЕР). Об использовании этого инструмента сигнализирует поле epConfig. Вход декодера инструмента ЕР состоит из блоков доступа с защитой от ошибок. В случае если об использовании декодера инструмента ЕР сигнализирует epConfig, применяются следующие ограничения:
- существует один элементарный поток на уровень масштабируемости, или только один элементарный поток в случае немасштабируемых конфигураций;
- на выходе декодера ЕР имеется набор нескольких классов ЕР. Конкатенация классов ЕР на выходе декодера ЕР идентична данным с epConfig = 0.
Определение класса ЕР зависит от epConfig и directMapping. Для epConfig = 2 классы ЕР не имеют строгого определения. Их точный контент должен быть определен на прикладном уровне, хотя вышеупомянутые ограничения должны быть выполнены. Для epConfig = 3, нормативно определено соответствие между классами ЕР и экземплярами класса категорий чувствительности к ошибкам (ESCs). В этом случае о соответствии сообщает directMapping. В случае, если directMapping = 1, каждый класс ЕР соответствует только одному экземпляру класса категорий чувствительности к ошибкам. Выход декодера ЕР в этом случае идентичен случаю epConfig = 1. Рисунок 3 подводит итог использования классов ЕР, в зависимости от значения epConfig.
Рисунок 3 - Классы ЕР для различных значений epConfig
Инструмент защиты от ошибок (инструмент ЕР) обеспечивает неравную защиту от ошибок (UEP) для кодеков ИСО/МЭК 14496-3. Основные особенности инструмента ЕР следующие:
- обеспечение набора кодов с обнаружением/исправлением ошибок различного масштаба в основной части и в избыточной части;
- обеспечение универсальной и эффективной, с точки зрения канала передачи, защитой от ошибок, которая охватывает как потоки фреймов фиксированной длины, так и потоки фреймов переменной длины;
- обеспечение управления конфигурацией UEP c низкими задержками.
Основная идея UEP состоит в разделении фреймов на подфреймы согласно чувствительности к ошибкам в символе (эти подфреймы именуются классами в следующих подразделах) и защите этих подфреймов с соответствующим уровнем FEC и/или CRC. Без этого качество декодированного звука определяется степенью повреждения наиболее чувствительной части. Таким образом самое сильное FEC/CRC должно быть применено к целому фрейму, что требует гораздо большей избыточности.
Чтобы применить UEP к звуковым фреймам, должна быть запрошена следующая информация:
1) число классов;
2) число битов, которое содержит каждый класс;
3) код CRC, который будет применяться для каждого класса. Представлен как CRC-биты;
4) код FEC, который будет применяться для каждого класса.
Эту информацию в следующих разделах называют "параметрами конфигурации фрейма". Та же самая информация используется при декодировании фреймов UEP; следовательно они должны быть переданы. Чтобы передать их эффективно, учитываются структуры фреймов MPEG-4 Аудио.
Существует три различных подхода к организации структуры фрейма MPEG-4 Аудио с точки зрения UЕР:
1) конфигурация всех фреймов остается постоянной во время передачи (как в CELP);
2) используется определенный набор конфигурации (как в Twin-VQ);
3) большинство параметров является постоянными при передаче, однако некоторые могут меняться от фрейма к фрейму (как в ААС).
Для реализации этих подходов инструмент ЕР использует два пути передачи параметров конфигурации фреймов. Первый представляет собой сигнализацию вне полосы, аналогично передаче параметров конфигурации кодека. Так передаются общие параметры фреймов. В случае, если есть несколько шаблонов конфигурации, эти шаблоны передаются с индексами. Другой путь заключается в передаче внутри полосы, при которой задается структура фрейма ЕР с заголовком. Только те параметры, которые не переданы вне полосы, передаются этим способом. Это позволяет минимизировать количество избыточной внутриполосной информации, произведенной инструментом ЕР.
С этими параметрами каждый класс кодируется и декодируется по FEC/CRC. Для увеличения производительности защиты от ошибок используется метод чередования. Цель чередования состоит в рандомизации пакетов ошибок в пределах фреймов, и это нежелательно для незащищенного класса из-за наличия других инструментов обработки ошибок, цель которых состоит в локализации действия ошибок; а рандомизация может оказывать негативное влияние на такую часть полезного битового потока.
Схемы кодера и декодера ЕР представлены на рисунках 4 и 5.
Рисунок 4 - Схема кодера ЕР