Разрядная чувствительность к ошибкам
Д.1 Общие сведения
В этом приложении приводится чувствительность отдельных битов к случайным ошибкам, если требуется защита от ошибок. Оценка чувствительности (от 0 до 5) приводится для каждого бита и отражает количество ухудшения вызванного одиночной ошибкой:
5 - катастрофическая;
4 - очень раздражающая;
3 - раздражающая;
2 - немного раздражающая;
1 - слышимая;
0 - нечувствительная.
Эти значения основываются не на результатах точных измерений, а, скорее, на знании кодека. Предполагается, что обнаружение ошибок не используется.
Некоторые поля потока битов не имеют фиксированной длины. Все биты этих полей оцениваются на чувствительность к ошибкам, даже если они не используются.
Для всех уровней предполагается, что самая высокая чувствительность к ошибкам у заголовка и проверочной информации.
Д.2 Уровни I и II
Параметры | Номер бита | Чувствительность |
Распределение битов | Все биты | 5 |
Выбор масштабных коэффициентов | Все биты | 5 |
Масштабные коэффициенты | 5 (msb) | 4 |
4 | 4 | |
3 | 4 | |
2 | 3 | |
1 | 2 | |
0 (Isb) | 1 | |
Субполосные отсчеты (в соответствии с распределением бит) | 8-16 (msb) | 3 |
5-7 | 2 | |
3, 4 | 1 | |
(Isb) 0-2 | 0 |
Д.3 Уровень III
Параметры | Номер бита | Чувствительность |
scfsi | Все биты | 5 |
part2_3_length | Все биты | 4 |
big_values | Все биты | 3 |
global_gain | Все биты | 5 |
scalefac_compress | Все биты | 5 |
window_switching_flag | 0 | 5 |
block_type | Все биты | 4 |
mked_block_flag | 0 | 4 |
table_select | Все биты | 5 |
region0_count | Все биты | 3 |
regioin1_count | Все биты | 3 |
preflag | 0 | 2 |
scalefac_scale | 0 | 2 |
count1table_select | 0 | 3 |
Subblock_gain | 2 (msb) | 4 |
1 | 3 | |
0 (Isb) | 2 | |
scale_fac | 3 (msb) | 3 (2) |
2 | 3 (2) | |
1 | 2 (1) | |
0 (Isb) | 2 (1) | |
Huffmancodebits 0 | 0...n-I | 3-0 |
Длина scalefac зависит от scale_fac_compress. Значения разрядной чувствительности указаны для scale_fac_scale = 1 (если 0, то значение дается в круглых скобках). |
Перестановка значений кода Хаффмана.
Для получения лучшей устойчивости к ошибкам в нижней части спектра значения кода Хаффмана могут передаваться не в их логическом порядке следования.
Если max_hlen - максимальная длина кодового слова Хаффмана по таблицам, которые используются для кодирования определенного блока, и - число битов, используемых для кодирования данных блока (но не фрейма) методом Хаффмана, то int(n/max_hlen) слотов заполняются первыми словами кода, начиная с нижних частот. Остальные кодовые комбинации помещаются в оставшееся место снова от нижних до высоких частот.
После чередования битов чувствительность бита k+i*int (n/max_hlen) уменьшается линейно от 3 до 0 с изменением k от 0 до int(n/max_hlen)-l, где i=0,..., max_hlen)-l, и - число битов кода Хаффмана в одном блоке.
Это рекомендуемая практика для данных всех каналов Уровня III, где важна устойчивость к ошибкам.