Элемент program_config_element () может присутствовать как вне данных ААС, например в adif_header(), так и внутри ААС как синтаксический элемент в raw_data_block ().
6.5.1 Функции данных
byte_alignment () | Для элементов РСЕ в пределах raw_data_block (), выравнивание относительно первого бита raw_data_block (). Для элементов РСЕ в пределах adif_header(), выравнивание относительно первого бита заголовка. |
6.5.2 Элементы данных
profile | Двухбитный индекс профиля в таблице 31 (таблица 25). |
sampling_frequency_index | Указывает на частоту дискретизации программы (и всех других программ в этом потоке битов). |
num_front_channel_elements | Число синтаксических элементов аудио в передних каналах, от переднего к заднему, симметрично левые и правые, или попеременно левые и правые в случае элементов одиночного канала (таблица 25). |
num_side_channel_elements | Число элементов боковых каналов (таблица 25). |
num_back_channel_elements | То же, для заднего канала (таблица 25). |
num_lfe_channel_elements | Число элементов LFE канала (таблица 25). |
num_assoc_data_elements | Число элементов, связанных с этой программой (таблица 25). |
num_valid_cc_elements | Число элементов ССЕ, которые могут быть добавлены к аудиоданным этой программы (таблица 25). |
mono_mixdown_present | Один бит, указывающий на присутствие элемента моно сведения (таблица 25). |
mono_mixdown_element_number | Количество указанных SCE моно сведения (таблица 25). |
stereo_mixdown_present | Один бит, указывающий на присутствие стерео сведения (таблица 25). |
stereo_mixdown_element_number | Число указанных СРЕ стерео сведения (таблица 25). |
matrix_mixdown_idx_present | Один бит, указывающий на присутствие матричной информации средствами индекса матричного коэффициента стерео (таблица 39). Для всех конфигураций, кроме 3/2, этот бит должен быть равен '0' (таблица 25). |
matrix_mixdown_idx | Двухбитное поле, определяющее индекс коэффициента сведения, для использования в объединении 5 каналов в 2. Возможные матричные коэффициенты перечислены в таблице 39 (таблица 25). |
pseudo_surround_enable | Один бит, указывающий на возможность сведения для псевдопространственного окружения (таблица 25). |
front_element_is_cpe | Указывает, являются ли SCE или СРЕ передними элементами (таблица 25). '0' соответствует SCE,'1' соответствует СРЕ. |
front_element_tag_select | instance_tag SCE/CPE, адресуемых как передние элементы (таблица 25). |
side_element_is_cpe | См. front_element_is_cpe, но для элементов стороны (таблица 25). |
side_element_tag_select | См. front_element_tag_select, но для элементов стороны (таблица 25). |
back_element_is_cpe | См. front_element_is_cpe, но для задних элементов (таблица 25). |
back_element_tag_select | См. front_element_tag_select, но для задних элементов (таблица 25). |
lfe_element_tag_select | instance_tag канала низкой частоты (таблица 25). |
assoc_data_element_tag_select | instance_tag DSE (таблица 25). |
valid_cc_element_tag_select | instance_tag ССЕ (таблица 25). |
cc_element_is_ind_sw | Один бит, указывающий, что соответствующий ССЕ - независимо переключаемый спаренный канал (таблица 25). |
comment_field_bytes | Длина поля комментария, в байтах (таблица 25). |
comment_field_data | Данные в поле комментария (таблица 25). |
Обращение к элементам SCE или СРЕ в пределах РСЕ происходит с помощью двух элементов синтаксиса. Во первых, элемент синтаксиса is_cpe выбирает, поэтому происходит обращение к SCE или СРЕ. Во вторых, элемент синтаксиса tag_select выбирает instance_tag SCE/CPE. Обращение к элементам LFE, ССЕ и DSE осуществляется непосредственно по их instance_tag.
6.5.3 Конфигурация канала
Аудио синтаксис ААС обеспечивает три способа передачи соответствия каналов физическим расположениям динамиков.
6.5.3.1 Явное соответствие каналов с настройками по умолчанию
Соответствия каналов по умолчанию определяются в таблице 42 (значения больше 0).
6.5.3.2 Явное соответствие каналов на основе program_config_element ()
Любая возможная конфигурация каналов может быть определена при помощи program_config_element (). Существует 16 доступных элементов РСЕ, каждый из которых может указывать на отдельную программу, которая присутствует в потоке необработанных данных. Все доступные РСЕ в пределах raw_data_block() должны следовать перед всеми другими синтаксическими элементами. Программы могут совместно использовать некоторые общие аудио синтаксические элементы, например общий channel_pair_element () и различные каналы комментариев на различных языках. Данный program_config_element () содержит информацию, имеющую отношение только к одной программе из тех, которые могут быть включены в raw_data_stream (). Включенный в РСЕ "список передних каналов", организован по принципу сначала центральный, затем остальные, левый и правый. В этом списке SCE центрального канала, если имеется, должен следовать первым, а любые другие SCE должны появляться в парах, составляя пару LR. Если указаны только два SCE, это соответствует одной стереофонической паре LR.
После списка передних каналов имеется "список боковых каналов", состоящих из СРЕ или из пар SCE. Они перечисляются в порядке от переднего к тыловому. Снова, в случае пары SCE, первым идет левый канал, вторым - правый канал.
После списка боковых каналов следует список тыловых каналов, перечисляемых снаружи внутрь. Любой SCE, кроме последнего, должен быть спарен, и наличие двух SCE (отдельных или после СРЕ) указывает, что два SCE являются левым и правым тыловым центром соответственно.
Конфигурация, обозначенная РСЕ, вступает в силу в raw_data_block (), содержащем РСЕ. Количество передних, боковых и задних каналов, указанное в РСЕ, должно присутствовать в том блоке и всех последующих raw_data_block () блоках, пока не будет передан raw_data_block(), содержащий новый РСЕ.
Также определяются другие элементы. Список одного или нескольких LFE, список одного или нескольких (зависимых от профиля) ССЕ, для осуществления управления диалогами и различными спаренными интенсивностными потоками различных каналов, при использовании тех же основных каналов. Список потоков данных, связанных с программой, также может связывать один или более потоков данных с программой. Элемент конфигурации программы также позволяет описать один монофонический и один стереофонический каналы, объединенные в канал сведения для одновременной передачи.
Элемент РСЕ не предназначен для быстрого изменения программы. В любой момент времени, когда данный РСЕ, в соответствии с его element_instance_tag, определяет новую (в противоположность повторному) программу, декодер не обязан обеспечивать непрерывность звукового сигнала.
6.5.3.3 Неявное соответствие каналов
Если нет явного соответствия каналов, следующие методы описывают неявное соответствие каналов:
1) Любое количество SCE может появиться (до тех пор, пока разрешено другими ограничивающими факторами, например профилем). Если это количество SCE нечетное, то первый SCE представляет передний центральный канал, и другой SCE представляет пары каналов L/R, следуя от центра в стороны и назад, к тыловому каналу.
Если количество SCE четное, то SCE интерпретируются как пары L/R, от переднего центра в стороны и назад, к тыловому каналу.
2) Может присутствовать любое количество СРЕ или пар SCE. Каждый СРЕ или пара SCE представляют одну пару L/R, после первых наборов SCE элементы следуют попарно до достижения тыловой центральной пары.
3) Может присутствовать любое количество SCE. Если это количество является четным, L/R пары распределены от 2) до тылового центра. Если это количество нечетное, оно распределяется по L/R парам, за исключением последнего SCE, который присваивается тыловому центру.
4) Может присутствовать любое количество LFE. Для случая, когда имеется несколько LFE, соответствие громкоговорителям не определено.