Устройство и способ квантования и обратного квантования lpc-фильтров в суперкадре
Иллюстрации
Показать всеПредложены устройство и способ квантования, в суперкадре, включающем в себя последовательность кадров, LPC-фильтров, вычисленных во время кадров из этой последовательности. Устройство и способ квантования LPC-фильтров содержат: абсолютный квантователь для квантования, в первую очередь, одного из LPC-фильтров с использованием абсолютного квантования; и, по меньшей мере, один квантователь других LPC-фильтров с использованием режима квантования, выбранного из группы, состоящей из абсолютного квантования и дифференциального квантования относительно, по меньшей мере, одного ранее квантованного фильтра из LPC-фильтров. Для обратного квантования принимают, по меньшей мере, LPC-фильтр, квантованный первым, и обратный квантователь выполняет обратное квантование LPC-фильтра, квантованного первым, с использованием абсолютного обратного квантования. Если принят какой-либо иной квантованный LPC-фильтр, чем LPC-фильтр, квантованный первым, то обратный квантователь выполняет обратное квантование этого квантованного LPC-фильтра с использованием одного из следующих режимов обратного квантования: абсолютного обратного квантования и дифференциального обратного квантования относительно, по меньшей мере, одного ранее принятого квантованного LPC-фильтра. Технический результат - сокращение количества битов, задействованных в квантовании LCP-фильтров. 4 н. и 28 з.п. ф-лы, 10 ил., 4 табл.
Реферат
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к области кодирования и декодирования звукового сигнала, например аудиосигнала. В частности, настоящее изобретение относится к устройству и способу квантования и обратного квантования LPC-фильтров (фильтров коэффициентов линейного предсказания), например, в суперкадре.
УРОВЕНЬ ТЕХНИКИ
В различных областях применения, таких как, например, проведение телеконференций, передача мультимедийной информации и беспроводная связь, растет потребность в эффективных способах цифрового кодирования речевой и звуковой информации, обеспечивающих хорошее субъективное качество и скорость передачи битов.
Кодер речи осуществляет преобразование речевого сигнала в цифровой поток битов, который передают по каналу связи или сохраняют на носителе информации. Речевой сигнал, подлежащий кодированию, преобразовывают в цифровую форму, а именно производят выборку и квантование с использованием, например, 16 битов на каждую выборку. Проблемой для кодера речи является представление цифровых выборок посредством меньшего количества битов, сохраняя при этом хорошее субъективное качество речевого сигнала. Декодер речи или синтезатор осуществляют преобразование переданного или сохраненного потока битов обратно в звуковой сигнал.
Кодирование с линейным предсказанием с кодовым возбуждением (CELP-кодирование) является одним из наилучших способов достижения хорошего компромисса между субъективным качеством и скоростью передачи битов. Способ CELP-кодирования является основой для нескольких стандартов кодирования речи, применяемых как для беспроводных линий связи, так и для проводных линий связи. При CELP-кодировании производят выборку речевого сигнала и выполняют его обработку в виде последовательных блоков из выборок, обычно именуемых кадрами, где - заданное количество выборок, обычно соответствующее 10-30 мс речевого сигнала. Вычисление и передачу фильтра линейного предсказания (LP-фильтра) производят в каждом кадре; LP-фильтр также известен как LPC-фильтр (фильтр коэффициентов линейного предсказания). При вычислении LPC-фильтра обычно используют упреждающий сегмент речевого сигнала длительностью, например, 5-15 мс из последующего кадра. Кадр из выборок разделяют на блоки меньшего размера, именуемые подкадрами. В каждом подкадре сигнал возбуждения обычно получают из двух составляющих: прошлого возбуждения и нового возбуждения по фиксированной кодовой книге. Прошлое возбуждение часто именуют возбуждением по адаптивной кодовой книге или по пошаговой кодовой книге. Параметры, характеризующие сигнал возбуждения, кодируют и передают в декодер, где сигнал возбуждения восстанавливают и используют в качестве входного сигнала LPC-фильтра.
В таких областях применения, как, например, потоковая и широковещательная передача мультимедийной информации, может оказаться необходимым, чтобы кодирование речи, музыки и смешанного контента выполнялось с низкой скоростью передачи битов. Для этого были разработаны модели кодирования, в которых CELP-кодирование, оптимизированное для речевых сигналов, сочетают с кодированием с преобразованием, оптимизированным для звуковых сигналов. Примером таких моделей является кодек AMR-WB+ (расширенный адаптивный многоскоростной широкополосный кодек) [1], который обеспечивает переключение между CELP-кодированием и TCX-кодированием (кодированием с преобразованием кодированного возбуждения). Для повышения качества музыкального и смешанного контента используют длинную задержку для учета более высокой разрешающей способности по частоте в области преобразования. В кодеке AMR-WB+ используют так называемый суперкадр, который состоит из четырех кадров CELP (обычно длительностью 80 мс).
Несмотря на то, что в кодеке AMR-WB+ параметры CELP-кодирования передают один раз через каждые 4 кадра, квантование LPC-фильтра выполняют отдельно в каждом кадре. К тому же, в случае кадров CELP LPC-фильтр квантуют с постоянным количеством битов в каждом кадре.
Для преодоления вышеизложенного недостатка существует потребность в создании способа, в котором используют квантование LPC-фильтров с переменной скоростью передачи битов, в котором используют структуру с суперкадрами для сокращения количества битов, задействованных в квантовании LPC-фильтров. К тому же, такой способ будет соответствовать моделям кодирования речевой и звуковой информации, в которых используют обе структуры: структуру с суперкадрами и многорежимную структуру, например кодек AMR-WB+ [1] и кодек USAC (унифицированный кодек для речевой и звуковой информации), разрабатываемые в Экспертной группе по вопросам движущихся изображений (MPEG).
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Согласно первому аспекту настоящего изобретения, предложен способ квантования, в суперкадре, включающем в себя последовательность кадров, LPC-фильтров, вычисленных во время кадров из этой последовательности, причем способ квантования LPC-фильтров содержит: выполняют первое квантование одного из LPC-фильтров с использованием абсолютного квантования; и выполняют квантование остальных LPC-фильтров с использованием режима квантования, выбранного из группы, состоящей из абсолютного квантования и дифференциального квантования относительно, по меньшей мере, одного ранее квантованного фильтра из LPC-фильтров.
Согласно второму аспекту настоящего изобретения, предложено устройство для квантования, в суперкадре, включающем в себя последовательность кадров, LPC-фильтров, вычисленных во время кадров из этой последовательности, причем устройство квантования LPC-фильтров содержит: средство первого квантования одного из LPC-фильтров с использованием абсолютного квантования; и средство квантования других LPC-фильтров с использованием режима квантования, выбранного из группы, состоящей из абсолютного квантования и дифференциального квантования относительно, по меньшей мере, одного ранее квантованного фильтра из LPC-фильтров.
Согласно третьему аспекту настоящего изобретения, предложен способ обратного квантования, по меньшей мере, одного LPC-фильтра в суперкадре, включающем в себя последовательность кадров, каждый из которых поставлен в соответствие LPC-фильтру, причем один из LPC-фильтров квантован первым с использованием абсолютного квантования, а после этого квантованы другие LPC-фильтры с использованием способа квантования, выбранного из группы, состоящей из абсолютного квантования и дифференциального квантования относительно, по меньшей мере, одного ранее квантованного фильтра из LPC-фильтров, при этом способ обратного квантования, по меньшей мере, одного LPC-фильтра содержит этапы, на которых: принимают, по меньшей мере, LPC-фильтр, квантованный первым; выполняют обратное квантование LPC-фильтра, квантованного первым, с использованием абсолютного обратного квантования; и если принят какой-либо иной квантованный LPC-фильтр, чем LPC-фильтр, квантованный первым, то выполняют обратное квантование упомянутого квантованного LPC-фильтра с использованием одного из следующих способов квантования: абсолютного обратного квантования и дифференциального обратного квантования относительно, по меньшей мере, одного ранее принятого квантованного LPC-фильтра.
Согласно четвертому аспекту настоящего изобретения, в нем предложено устройство для обратного квантования, по меньшей мере, одного LPC-фильтра в суперкадре, включающем в себя последовательность кадров, каждый из которых поставлен в соответствие LPC-фильтру, причем первым квантован один из LPC-фильтров с использованием абсолютного квантования, а после этого квантованы другие LPC-фильтры с использованием способа квантования, выбранного из группы, состоящей из абсолютного квантования и дифференциального квантования относительно, по меньшей мере, одного ранее квантованного фильтра из LPC-фильтров, и при этом устройство для обратного квантования, по меньшей мере, одного LPC-фильтра содержит: средство приема, по меньшей мере, LPC-фильтра, квантованного первым; средство обратного квантования LPC-фильтра, квантованного первым, с использованием абсолютного обратного квантования; и средство обратного квантования квантованного LPC-фильтра с использованием одного из следующих способов квантования: абсолютного обратного квантования и дифференциального обратного квантования относительно, по меньшей мере, одного ранее принятого квантованного LPC-фильтра, если принят какой-либо иной квантованный LPC-фильтр, чем LPC-фильтр, квантованный первым.
Вышеизложенные и другие аспекты, преимущества и отличительные признаки настоящего изобретения станут более очевидными при прочтении изложенного ниже неограничивающего описания иллюстративных вариантов осуществления, приведенных в качестве примера, со ссылкой на сопроводительные чертежи.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
На приложенных чертежах изображено следующее.
Фиг.1 - блок-схема, на которой проиллюстрирован абсолютный квантователь LPC-фильтра и дифференциальный квантователь LPC-фильтра по множеству образцов и способ квантования.
Фиг.2 - диаграмма, на которой проиллюстрирована схема квантования без обратной связи.
Фиг.3 - схема последовательности операций, на которой проиллюстрированы устройство и способ определения LPC-фильтров, подлежащих передаче, в конфигурации, в которой используют четыре (4) LPC-фильтра и производят их передачу в суперкадре.
Фиг.4А - типичное окно LPC-анализа и типичное положение центра LPC-анализа, когда производят оценку одного LPC-фильтра в каждом кадре (или суперкадре) в кодеке, основанном на LPC, где LPC0 соответствует последнему LPC-фильтру, вычисленному во время предыдущего кадра (или суперкадра).
Фиг.4Б - типичное окно LPC-анализа, когда производят оценку четырех (4) LPC-фильтров в каждом кадре (или суперкадре) в кодеке, основанном на LPC, где центр окна LPC-анализа расположен в конце кадра.
Фиг.5 - схема последовательности операций, на которой проиллюстрирован пример схемы апостериорного ("out-of-the-loop") квантования.
Фиг.6 - принципиальная блок-схема алгебраического LPC-квантователя с весовой обработкой и способа квантования.
Фиг.7 - принципиальная блок-схема алгебраического LPC-квантователя с обратной весовой обработкой и способа обратного квантования.
Фиг.8 - принципиальная блок-схема квантователя и способа квантования; и
Фиг.9 - принципиальная блок-схема декодера и способа декодирования.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Дифференциальное квантование с выбором возможных образцов
Используется дифференциальное квантование с выбором между несколькими возможными образцами. В частности, выполняют дифференциальное квантование LPC-фильтра относительно нескольких возможных образцов.
Известно, что последовательные LPC-фильтры имеют определенную степень корреляции. Для целесообразного использования этой корреляции в LPC-квантователях обычно используют предсказание. Вместо квантования вектора коэффициентов линейного предсказания (LPC-вектора) непосредственно представляющего LPC-фильтр, дифференциальный (или предиктивный) квантователь сперва вычисляет предсказанное значение этого LPC-вектора, а затем квантует разность (часто именуемую разностью предсказания) между исходным вектором LPC и предсказанным LPC-вектором.
Предсказание обычно основано на предыдущих значениях LPC-фильтра. Обычно используют предикторы двух типов: предикторы на основе метода скользящего среднего (MA) и предикторы на основе авторегрессии (AR). Несмотря на то, что AR-предикторы часто являются более эффективными при уменьшении L2-нормы (среднеквадратичного значения) данных, подлежащих квантованию, чем MA-предикторы, последние иногда являются полезными, поскольку в меньшей степени подвержены распространению ошибок в случае наличия ошибок при передачи [2].
Так как L2-норма невязки предсказания является в среднем более низкой, чем L2-норма исходного LPC-вектора (отношение между двумя в зависимости от степени предсказуемости LPC-фильтра), дифференциальный (или предиктивный) квантователь может достичь той же самой степени эффективности, что и абсолютный квантователь, но при более низкой скорости передачи битов.
В среднем, предсказание действительно является эффективным при уменьшении L2-нормы данных, подлежащих квантованию. Однако этот характер поведения не является постоянным; предсказание является намного более эффективным во время устойчивых сегментов сигнала, чем во время переходных сегментов. Предсказание даже может привести к увеличенным значениям L2-нормы, когда происходит быстрое изменение LPC-фильтров. Некоторое улучшение функционирования может быть достигнуто при учете двух различных предикторов, одного - для хорошо предсказуемых сегментов, а другого - для менее предсказуемых сегментов [3, 4]. Как упомянуто в приведенном выше описании, в этом способе используют только прошлые значения LPC-фильтра.
Для преодоления этой проблемы предложено выполнять дифференциальное квантование LPC-фильтра относительно образца, например образцового фильтра, выбранного из нескольких возможных образцов. Возможные образцовые фильтры представляют собой уже квантованные прошлые или будущие LPC-фильтры (следовательно, имеющиеся как в декодере, так и в кодере) или результаты различных операций экстраполяции или интерполяции, примененных к уже квантованным прошлым или будущим LPC-фильтрам. Выбирают образцовый фильтр, который обеспечивает меньшее искажение при заданной скорости передачи или при более низкой скорости передачи битов для заданного целевого уровня искажений.
На Фиг.1 изображена блок-схема, на которой проиллюстрированы устройство и способ квантования LPC-фильтра по множеству образцов. Заданный LPC-фильтр 101, представленный вектором коэффициентов линейного предсказания, вводят в устройство и в способ квантования LPC-фильтра по множеству образцов. Выполняют дифференциальное квантование введенного LPC-фильтра 101 относительно образца, выбранного из нескольких возможных образцов 1, 2, …, n. Возможные образцы включают в себя:
- прошлые или будущие квантованные LPC-фильтры;
- результат операций экстраполяции или интерполяции, примененных к прошлым или будущим квантованным LPC-фильтрам; или
- любое квантованное значение, имеющееся как в кодере, так и в декодере.
В качестве примера, не являющегося ограничивающим признаком, может быть выполнено дифференциальное квантование входного LPC-фильтра 101 относительно предыдущего квантованного LPC-фильтра, последующего квантованного LPC-фильтра или среднего значения этих двух квантованных LPC-фильтров: предыдущего и последующего. Образец также может представлять собой LPC-фильтр, квантованный с использованием абсолютного квантователя, или результат интерполяции, экстраполяции или предсказания (AR или MA) любого вида, примененный к уже квантованным LPC-фильтрам.
Операции 102 и 1031, 1032, …, 103n: по-прежнему со ссылкой на Фиг.1, входной LPC-фильтр 101 подают в абсолютный квантователь (Операция 102) и в дифференциальные квантователи (операции 1031, 1032, …, 103n). Абсолютный квантователь (операция 102) квантует абсолютное значение (не разность) входного LPC-фильтра 101. Дифференциальные квантователи (операции 1031, 1032, …, 103n) предназначены для дифференциального квантования входного LPC-фильтра 101 относительно соответствующих образцов 1, 2, …, n.
Операция 104: устройство и способ квантования LPC-фильтра по множеству образцов из Фиг.1 содержат средство выбора, предназначенное для выбора из образцов 1, 2, …, n того образца, который обеспечивает самый низкий уровень искажений при заданной скорости передачи битов или при самой низкой скорости передачи битов для заданного целевого уровня искажений. В частности, средство выбора (операция 104) использует такой критерий выбора, который минимизирует скорость передачи битов для достижения определенного целевого уровня искажений, или который минимизирует уровень искажений, созданный при заданной скорости передачи битов.
При операции 104 может быть произведен выбор образца из образцов 1, 2, …, n для фактического использования в способе дифференциального квантования в схеме с обратной связью или без обратной связи.
В схеме с обратной связью проводят пробные испытания всех возможных образцов и выбирают тот образец, который оптимизирует определенный критерий искажений или скорость передачи битов. Например, в схеме с обратной связью выбор может быть основан на минимизации взвешенной среднеквадратической ошибки между входным LPC-вектором и квантованным LPC-вектором, соответствующим каждому образцу. Также может использоваться спектральное искажение между входным LPC-вектором и квантованным LPC-вектором. В альтернативном варианте квантование с использованием возможных образцов может быть выполнено таким образом, что при этом уровень искажений поддерживается ниже определенного порогового значения, и выбирают тот образец, который не только удовлетворяет этому критерию, но и использует меньшее количество битов. Как будет объяснено в приведенном ниже описании, для квантования масштабированного вектора невязки (разности между входным LPC-вектором и образцом) может использоваться алгебраический векторный квантователь с переменной скоростью передачи битов, который использует определенный ресурс битов на основании энергии масштабированного вектора невязки. В этом случае выбирают тот образец, который дает меньшее количество битов.
В схеме без обратной связи при операции 104 средство выбора задает образец на основании значения коэффициентов линейного предсказания входного LPC-фильтра, подлежащего квантованию, и коэффициентов линейного предсказания имеющихся образцовых LPC-фильтров. Например, вычисляют L2-норму вектора невязки для всех образцов и выбирают тот образец, который дает меньшее значение.
Операция 105: после выбора одного из образцов 1, 2, …, n при операции 104 передатчик (операция 105) передает или сообщает в декодер (не показан) квантованный LPC-фильтр (не показан) и индекс, указывающий режим квантования (подоперация 1051), например абсолютное или дифференциальное квантование. К тому же, когда используют дифференциальное квантование, то передатчик (операция 105) сообщает или передает в декодер индексы, характеризующие выбранный образец и соответствующий дифференциальный квантователь из операций 1031, 1032, …, 103n (подоперация 1052). Для такого оповещения в декодер передают несколько особых битов.
Использование нескольких различных возможных образцов делает дифференциальное квантование более эффективным с точки зрения снижения L2-нормы невязки предсказания по сравнению с ограничением только лишь прошлыми значениями, как при обычном предсказании. К тому же, для заданного целевого уровня искажений этот способ является более эффективным с точки зрения средней скорости передачи битов.
Абсолютное или дифференциальное квантование с переключением
Согласно второму объекту настоящего изобретения, используют абсолютное/дифференциальное (или предиктивное) квантование с переключением. На Фиг.1 проиллюстрирован пример абсолютной/дифференциальной схемы, в которой производят выбор между одним абсолютным квантователем (операция 102) и n дифференциальными квантователями (операции 1031, 1032, …, 103n) с использованием соответствующих различных образцов 1, 2, …, n. И вновь, при операции 104 средством выбора может быть произведен выбор квантователя из абсолютного квантователя и дифференциальных квантователей (операции 102 и 1031, 1032, …, 103n), где выбранный квантователь, согласно критерию выбора, минимизирует уровень искажений, создаваемый при заданной скорости передачи битов, или минимизирует скорость передачи битов для достижения целевого уровня искажений.
Некоторые LPC-фильтры могут быть закодированы с использованием абсолютного квантователя (операция 102). Другие LPC-фильтры кодируют путем дифференциального кодирования относительно одного или нескольких образцовых LPC-фильтров в дифференциальных квантователях (операции 1031, 1032, …, 103n).
Абсолютный квантователь (операция 102) может быть использован в качестве страховочного решения для LPC-фильтров, которые в противном случае являются дифференциально квантованными, например, в случае больших отклонений LPC или в тех случаях, когда абсолютный квантователь (операция 102) является более эффективным, чем дифференциальные квантователи (операции 1031, 1032, …, 103n), с точки зрения скорости передачи битов. Образцовый LPC-фильтр может (все образцовые LPC-фильтры могут) находиться в пределах одного и того же суперкадра во избежание введения зависимостей между суперкадрами, что обычно приводит к возникновению проблем в случае ошибок при передаче (потерь пакетов или разрушений кадров).
Как объяснено в приведенном выше описании, использование предсказания при квантовании LPC приводит к уменьшенной L2-норме данных, подлежащих квантованию, и, следовательно, к снижению средней скорости передачи битов для достижения определенного уровня производительности. Однако предсказание не всегда является одинаково эффективным. В переключаемом LPC [3, 4] выполняют предварительную классификация LPC-фильтра и используют различные предикторы в зависимости от предсказуемости LPC-фильтра, подлежащего квантованию. Однако этот способ был разработан применительно к фиксированной скорости передачи битов, поскольку два дифференциальных квантователя требуют одинакового количества битов для кодирования LPC-фильтра.
Также может быть предусмотрено наличие одного или нескольких абсолютных квантователей (операция 102). Кроме того, может быть предусмотрено наличие одного или нескольких дифференциальных (предиктивных) квантователей (операции 1031, 1032, …, 103n). Несколько дифференциальных квантователей (операции 1031, 1032, …, 103n) включают в себя несколько возможных образцов, таких как, например, 1, 2, …, n, и/или дифференциальные квантователи нескольких размеров и/или структур.
Как описано в приведенном выше описании, когда используют несколько дифференциальных квантователей (операции 1031, 1032, …, 103n), то выбор фактического дифференциального квантователя, подлежащего использованию, может быть выполнен способом выбора без обратной связи или с обратной связью.
Когда дифференциальное квантование не способно обеспечить достижение целевого уровня искажений, или когда абсолютное квантование требует меньшего количества битов, чем дифференциальное квантование, для достижения этого уровня искажений, то в качестве страховочного решения используют абсолютное квантование. Для того чтобы указать декодеру (не показан) фактически используемый квантователь, посредством передатчика передают (операция 105) один или несколько битов, в зависимости от количества возможных абсолютных и дифференциальных квантователей.
Абсолютное/дифференциальное квантование объединяет преимущества предиктивного квантования (снижение скорости передачи битов, связанное со снижением L2-нормы данных, подлежащих квантованию) с универсальностью абсолютного квантования (которое используют в качестве страховки в том случае, если дифференциальное (или предиктивное) квантование не обеспечивает достижения целевого, например незаметного, уровня искажений).
Когда содержатся несколько дифференциальных квантователей (операции 1031, 1032, …, 103n), то эти дифференциальные квантователи могут использовать либо один и тот же предиктор, либо различные предикторы. В частности, но не исключительно, эти несколько дифференциальных квантователей могут использовать одинаковые коэффициенты предсказания или различные коэффициенты предсказания.
Декодер содержит средство приема и извлечения из потока битов, которым является, например, демультиплексор, (a) квантованного LPC-фильтра и (b) индекса (индексов) или информации:
- о режиме квантования для определения того, был ли LPC-фильтр квантован с использованием абсолютного квантования или дифференциального квантования; и
- об образце из множества возможных образцов, которые были использованы для квантования LPC-фильтра.
Если информация о режиме квантования указывает, что LPC-фильтр был квантован с использованием абсолютного квантования, то для обратного квантования квантованного LPC-фильтра предоставляют обратный абсолютный квантователь (не показан). Если же информация о режиме квантования указывает, что LPC-фильтр был квантован с использованием дифференциального квантования, то тогда обратный дифференциальный квантователь (не показан) выполняет обратное дифференциальное квантование дифференциально квантованного LPC-фильтра по множеству образцов с использованием образца, соответствующего извлеченной информации об образце.
Схема апостериорного (out-of-the-loop) квантования
Кодек AMR-WB+ представляет собой гибридный кодек, который обеспечивает переключение между моделью кодирования во временной области, основанной на алгоритме ACELP-кодирования (кодирования с линейным предсказанием с алгебраическим кодовым возбуждением), и моделью кодирования в области преобразования, именуемой TCX. Кодек AMR-WB+ выполняется следующим образом [1]:
- входной сигнал разделяют на суперкадры из четырех (4) кадров;
- каждый суперкадр кодируют с использованием комбинации из четырех (4) возможных режимов кодирования, причем каждый режим кодирования охватывает различную длительность:
- ACELP (охватывает длительность, равную одному (1) кадру);
- TCX256 (охватывает длительность, равную одному (1) кадру);
- TCX512 (охватывает длительность, равную двум (2) кадрам); и
- TCX1024 (охватывает длительность, равную четырем (4) кадрам).
Следовательно, имеется 26 возможных комбинаций режимов для кодирования каждого суперкадра.
Для конкретного суперкадра комбинация режимов, которая минимизирует общую взвешенную ошибку, определяется процедурой выбора режима "с обратной связью". В частности, вместо тестирования этих 26 комбинаций, выбор режима выполняют путем одиннадцати (11) пробных испытаний (поиск по дереву, см. таблицу 1). В кодеке AMR-WB+ выбор режима с обратной связью основан на минимизации среднеквадратичной ошибки между входным сигналом и сигналом кодека во взвешенной области (или на максимизации отношения сигнал - шум квантования).
Таблица 1 11 пробных испытаний для выбора режима с обратной связью в кодеке AMR-WB+ | ||||
Пробное испытание | Кадр 1 | Кадр 2 | Кадр 3 | Кадр 4 |
1 | ACELP | |||
2 | TCX256 | |||
3 | ACELP | |||
4 | TCX256 | |||
5 | TCX512 | |||
6 | ACELP | |||
7 | TCX256 | |||
8 | ACELP | |||
9 | TCX256 | |||
10 | TCX512 | |||
11 | TCX1024 |
LPC-фильтры являются одним из различных параметров, передаваемых кодеком AMR-WB+. Ниже описаны некоторые ключевые элементы, относящиеся к квантованию и передаче этих LPC-фильтров.
Несмотря на то, что различные режимы кодирования не охватывают одинаковое количество кадров, количество LPC-фильтров, передаваемых в декодер, является одним и тем же для всех режимов кодирования и равно 1. Передается только тот LPC-фильтр, который соответствует концу охваченного сегмента. В частности, в случае TCX1024 вычисляют и передают один (1) LPC-фильтр в течение длительности четырех (4) кадров. В случае TCX512 вычисляют и передают один (1) LPC-фильтр в течение длительности двух (2) кадров. В случае TCX256 или ACELP вычисляют и передают один (1) LPC-фильтр в течение длительности одного (1) кадра.
В кодеке AMR-WB+ используется предиктивный LPC-квантователь (на основе скользящего среднего значения первого порядка). Функционирование последнего квантователя зависит от предварительно переданного LPC-фильтра и, следовательно, от предварительно выбранного режима кодирования. Следовательно, поскольку точная комбинация режимов не известна до тех пор, пока не будет закодирован весь суперкадр, некоторые LPC-фильтры кодируются несколько раз, прежде чем будет определена конечная комбинация режимов.
Например, LPC-фильтр, расположенный в конце кадра 3, передается в декодер только тогда, когда третий кадр закодирован как ACELP или TCX256. Он не передается, когда кадры 3 и 4 закодированы совместно с использованием TCX512. Что касается LPC-фильтра, расположенного в конце кадра 2, то он передается при всех комбинациях режимов, кроме TCX1024. Следовательно, предсказание, выполненное при квантовании последнего LPC-фильтра суперкадра, зависит от комбинации режимов для всего суперкадра.
Принцип раскрытого способа заключается в том, что порядок, в котором выполняется квантование LPC-фильтров, выбран таким образом, чтобы после того, как было окончательно принято решение относительно обратной связи, передача информации о квантовании, соответствующей ненужным LPC-фильтрам, могла быть пропущена без какого-либо влияния на передачу и декодирование в декодере других фильтров. Для каждого LPC-фильтра, подлежащего квантованию с использованием описанной выше стратегии дифференциального квантования, это налагает некоторые ограничения на возможные образцовые LPC-фильтры.
Приведенный ниже пример дан со ссылкой на Фиг.2.
Операция 1 на Фиг.2: во избежание каких-либо зависимостей между суперкадрами, квантование, по меньшей мере, одного LPC-фильтра выполняется с использованием абсолютного LPC-квантователя. Поскольку фильтр LPC4 кадра 4 из суперкадра всегда передается при любой комбинации режимов кодирования, определенной посредством процедуры выбора с обратной связью, то удобно квантовать этот фильтр LPC4 с использованием абсолютного квантователя.
Операция 2 на Фиг.2: следующим LPC-фильтром, подлежащим квантованию, является фильтр LPC2 кадра 2 из суперкадра, который передается для всех комбинаций режимов за исключением TCX1024. Дифференциальный квантователь может использоваться, например, для кодирования разности между фильтром LPC2 и версией фильтра LPC4, квантованной путем абсолютного квантования. В качестве страховочного решения, например в случае больших отклонений LPC или когда абсолютный LPC-квантователь является более эффективным, чем дифференциальный квантователь, с точки зрения скорости передачи битов и/или уровня искажений, также может быть использован тот же самый абсолютный квантователь, который был использован для кодирования фильтра LPC4.
Операция 3 на Фиг.2: остальные два LPC-фильтра (фильтр LPC1 кадра 1 из суперкадра и фильтр LPC3 кадра 3 из суперкадра) также квантуют с использованием той же самой стратегии дифференциального/абсолютного квантования. Оба LPC-фильтра могут быть квантованы относительно квантованной версии фильтра LPC2. Ниже приведено описание некоторых альтернативных стратегий.
На Фиг.5 изображена схема последовательности операций, на которой более подробно проиллюстрирован пример схемы апостериорного квантования.
Операция 501: абсолютный квантователь квантует фильтр LPC4.
Операция 502: операция 502 является необязательной и используется при первом кодировании кадра на основании LPC после кодирования кадра не на основании LPC. Абсолютный квантователь квантует фильтр LPC0, или дифференциальный квантователь выполняет дифференциальное квантование фильтра LPC0 относительно квантованного фильтра LPC4. Фильтр LPC0 является последним LPC-фильтром (LPC4) из предыдущего суперкадра и может быть использован в качестве возможного образца для квантования фильтров LPC1 - LPC4.
Операция 503: абсолютный квантователь квантует фильтр LPC2, или дифференциальный квантователь выполняет дифференциальное квантование фильтра LPC2 относительно квантованного фильтра LPC4, используемого в качестве образца.
Операция 504: абсолютный квантователь квантует фильтр LPC1, дифференциальный квантователь выполняет дифференциальное квантование фильтра LPC1 относительно квантованного фильтра LPC2, используемого в качестве образца, или дифференциальный квантователь выполняет дифференциальное квантование фильтра LPC1 относительно фильтра (квантованный фильтр LPC2 + квантованный фильтр LPC0)/2, используемого в качестве образца.
Операция 505: абсолютный квантователь квантует фильтр LPC3, дифференциальный квантователь выполняет дифференциальное квантование фильтра LPC3 относительно квантованного фильтра LPC2, используемого в качестве образца, дифференциальный квантователь выполняет дифференциальное квантование фильтра LPC3 относительно квантованного фильтра LPC4, используемого в качестве образца, или дифференциальный квантователь выполняет дифференциальное квантование фильтра LPC3 относительно фильтра (квантованный фильтр LPC2 + квантованный фильтр LPC4)/2, используемого в качестве образца.
На Фиг.3 изображена схема последовательности операций, на которой проиллюстрировано определение LPC-фильтров, подлежащих передаче, в конфигурации, в которой могут быть вычислены и переданы в суперкадре четыре (4) LPC-фильтра.
Прежде всего, следует иметь в виду, что квантованный фильтр LPC1 передается только тогда, когда для первой половины суперкадра выбран режим ACELP и/или TCX256. Аналогичным образом, фильтр LPC3 передается только тогда, когда для второй половины этого суперкадра используются ACELP и/или TCX256.
Операция 301: выполнят квантование фильтра LPC1 кадра 1 из суперкадра, фильтра LPC2 кадра 2 из суперкадра, фильтра LPC3 кадра 3 из суперкадра и фильтра LPC4 кадра 4 из суперкадра с использованием, например, стратегии квантования, проиллюстрированной и описанной применительно к Фиг.2 и Фиг.5. Разумеется, возможны и другие стратегии квантования.
Операция 302: производят выбор режимов кодирования с обратной связью, как описано выше.
Операция 303: квантованный фильтр LPC4 передается в декодер, например, передатчиком 105 из Фиг.1. Декодер содержит:
- средство приема и извлечения из принятого потока битов, которым является, например, демультиплексор, квантованного фильтра LPC4; и
- обратный абсолютный квантователь, в который подан квантованный фильтр LPC4, для обратного квантования квантованного фильтра LPC4.
Операция 304: Если суперкадр закодирован с использованием режима TCX1024, то дополнительная передача не требуется.
Операция 305: если первый, второй, третий и четвертый кадры суперкадра не являются закодированными с использованием режима TCX1024, то в декодер передают квантованный фильтр LPC2 и индекс, указывающий один из режимов квантования: режим абсолютного квантования и режим дифференциального квантования, например, посредством передатчика 105 из Фиг.1. Декодер содержит:
- средство приема и извлечения из принятого потока битов, которым является, например, демультиплексор, квантованного фильтра LPC2 и индекса, указывающего один из режимов квантования: режим абсолютного квантования и режим дифференциального квантования; и
- обратный абсолютный квантователь, в который подан квантованный фильтр LPC2 и индекс, указывающий режим абсолютного квантования, для обратного квантования квантованного фильтра LPC2, или обратный дифференциальный квантователь, в который подан квантованный фильтр LPC2 и индекс, указывающий режим дифференциального квантования, для обратного квантования квантованного фильтра LPC2.
Операция 306: если кадры 1 и 2 из суперкадра закодированы с использованием режима TCX512, то квантованный фильтр LPC1 не передают в декодер.
Операция 307: если кадры 1 и 2 из суперкадра не закодированы с использованием режима TCX512, то есть, если кадры 1 и 2 из суперкадра закодированы с использованием режима ACELP или TCX256, то в декодер передают квантованный фильтр LPC1 и индекс, указывающий один из режимов квантования: режим абсолютного квантования, режим дифференциального квантования относительно квантованного фильтра LPC2, используемого в качестве образца, и режим дифференциального квантования относительно фильтра (квантованный фильтр LPC2 + квантованный фильтр LPC0)/2, используемого в качестве образца, например, посредством передатчика 105 из Фиг.1. Д