36
raw_data_stream поддерживает кодирование каналов как с постоянной скоростью, так и с переменной. В каждом случае структура потока битов и работа декодера идентичны, за исключением некоторых незначительных отличий.
Для каналов с постоянной скоростью передачи кодер может добавлять элемент FIL, чтобы увеличить скорость до требуемого уровня. Декодер, считывающий данные канала с постоянной скоростью передачи, должен накопить минимальное число битов в его входном буфере до начала декодирования так, чтобы не произошло переполнение выходного буфера. В случае переменной скорости каждый raw_data_block() может обладать минимальной длиной (скоростью) так, чтобы достигалось требуемое качество звучания, и в декодере отсутствовали минимальные входные требования к данным до начала декодирования. Примеры самых простых потоков битов:
Сегмент потока битов Выходной сигнал
<SCE> <TERM> <SCE> <TERM> ... Моно сигнал
<CPE> <TERM> <CPE> <TERM>... Стерео сигнал
<SCE> <CPE> <CPE> <LFE> <TERM> <SCE> <CPE> <CPE> <LFE> <TERM> ... Сигнал 5.1,
где угловые скобки (<>) используются, чтобы разграничить синтаксические элементы. Для моно сигнала у каждого SCE должно быть то же самое значение в его element_instance_tag, и точно так же для сигнала стерео у каждого CPE должно быть то же самое значение в его element_instance_tag. Для сигналов
- у каждого SCE должно быть то же самое значение в его element_instance_tag, каждый CPE, связанный с фронтальной парой каналов, должен иметь то же самое значение в его element_instance_tag, и каждый CPE, связанный с последней парой каналов, должен иметь то же самое значение в его element_instance_tag.
Если эти потоки битов должны быть переданы по каналу с постоянной скоростью передачи, то они могут включать в себя элемент fill_element() для подстройки мгновенной скорости передачи. В этом случае пример кодированного сигнала стерео
<CPE> <FIL> <TERM> <CPE> <FIL> <TERM> ...
Если потоки битов должны переносить вспомогательные данные при передаче по каналу с постояной скоростью, то пример кодированного сигнала стерео
< CPE><DSE><FIL>< TERM><CPE><DSE><FIL>< TERM>....
Все элементы data_stream_element() имеют одинаковый element_instance_tag, если они — часть одного потока данных.
- Элемент одиночного канала (SCE), элемент парного канала (CPE) и поток индивидуального канала (ICS)
- Определения
- Элементы данных
Флаг, указывающий на совместное использование общего ics_info() двумя individual_channel_stream(). В случае совместного использования ics_info() является частью channel_pair_element() и должен использоваться для обоих каналов. Иначе ics_info() является частью каждого individual_channel_stream() (таблица 14). Флаг, зарезервированный для будущего использования. Должен быть равен '0'. Указывает на последовательность окон, как определено в таблице 44 (таблица 15).
1-битное поле, определяющее тип окна для переключения окон (таблица 15). Количество полос масштабных коэффициентов на группу (таблица 15).
Битовое поле, которое содержит информацию о группировке коротких спектральных данных (таблица 15).