Низкоскоростная аудиокодирующая/декодирующая схема с общей предварительной обработкой
Иллюстрации
Показать всеИзобретение относится к области звукового кодирования и, в частности, к низкоскоростным схемам кодирования аудио сигнала. Устройство звукового кодирования, имеющее стадию общей предварительной обработки (100), приемник информации на основе ветви кодирования (400), которая является ветвью кодирования спектральной области, источник информации на основе ветви кодирования (500), которая является ветвью кодирования LPC-области, и переключатель (200) для переключения между этими ветвями или выходов этих ветвей, управляемый стадией принятия решения (300). Устройство звукового декодирования с ветвью декодирования в спектральной области, с ветвью декодирования в LPC-области, один или больше переключателей для переключения между ветвями и общей стадии постобработки для обработки аудио сигнала во временной области и получения аудио сигнала постобработки. Технический результат - обеспечение высокого качества кодирования аудио сигнала при низких скоростях передачи битов. 6 н. и 20 з.п. ф-лы, 10 ил.
Реферат
Настоящее изобретение относится к области звукового кодирования и, в частности, к низкоскоростным схемам кодировки аудиосигнала.
В аудиотехнике используются схемы кодировки в частотной области, такие как МР3 или ААС. Кодирующие устройства в частотной области выполняют преобразование "частотная область/временной интервал", с последующими стадиями: дискретизации, когда ошибка дискретизации контролируется с использованием информации от психоакустического модуля, и кодирования, когда спектральные амплитудные коэффициенты и соответствующая информация боковых частот кодируют энтропию (кодирование словами (кодами) переменной длины, при котором длина кода символа имеет обратную зависимость от вероятности появления символа в передаваемом сообщении) с использованием кодовых таблиц.
С другой стороны, существуют кодирующие устройства, которые очень хорошо подходят для обработки речи, такие как AMR-WB+, как описано в 3GPP TS 26.290. Такие схемы, кодирующие речь, выполняют Линейную Прогнозируемую фильтрацию сигнала во временном интервале. Такая ЛП-фильтрация получена на основе анализа Линейного Предсказания входного сигнала во временном интервале. Получающиеся коэффициенты ЛП-фильтрации затем кодируются и передаются в виде информации боковых частот. Процесс известен как Кодирование с Линейным Предсказанием (LPC). На выходе фильтра разностный сигнал предсказания или сигнал ошибки предсказания, являющийся также управляющим сигналом, кодируется с использованием стадии анализа-синтеза в кодирующем устройстве ACELP (кодировщик алгебраического линейного предсказания) или, альтернативно, кодируется с использованием кодирующего устройства преобразования, которое использует Фурье-преобразование с наложением. Выбор между ACELP кодированием и кодированием с помощью Управляемого Преобразования Кодирования (Transform Coded eXcitation), которое также называют кодированием УПК, осуществляется с использованием алгоритмов замкнутого или открытого цикла.
Схемы кодирования аудиосигнала в частотной области, например схема кодирования высокой производительности ААС, которая объединяет в себе схему кодирования ААС и метод восстановления спектрального диапазона, могут использоваться в объединенном стерео или многоканальном кодирующем блоке, который известен под термином "MPEG среда" или пространственное аудиокодирование Spatial Audio Coding (SAC).
С другой стороны, у речевых кодирующих устройств, таких как AMR-WB+, также есть стадия усиления высоких частот и функциональные возможности стерео.
Кодирующие схемы частотной области выгодны тем, что они позволяют получить высокое качество при низких скоростях передачи битов для музыкальных сигналов. Однако недостаточно высоким получается качество речевых сигналов на низких скоростях передачи битов.
Описание изобретения
Задачей настоящего изобретения является предложение принципа улучшения кодировки. Эта задача достигается при использовании аудиокодировщика по п.1, метода аудиокодирования по п.13, аудиокодировщика по п.14, метода аудиодекодирования по п.24, компьютерной программы по п.25 или закодированного аудиосигнала по п.26.
В соответствии с настоящим изобретением стадия выбора решения, контролируемая переключателем, используется для подачи выходного сигнала в общую схему предварительной обработки, либо в одну из двух ветвей общей схемы. Главным критерием является модель источника и/или объективные измерения, такие как измерение отношения СИГНАЛ - ШУМ, и, кроме того, модель приемника и/или психокустическая модель, то есть слуховая маскировка. Поясним на примере: у одной ветви есть кодирующее устройство в частотной области, а у другой ветви есть кодирующее устройство LPC-области, такое как речевой кодировщик. Обычно исходная модель - речевая обработка, и поэтому, как правило, используется LPC. Таким образом, типичные стадии предварительной обработки, такие как стадии объединения стерео или многоканального кодирования и/или стадия расширения полосы пропускания обычно используются для обоих кодирующих алгоритмов. При этом экономится значительный объем памяти, площадь чипа, расход энергии, и т.д. по сравнению с ситуацией, где используются в той же самой цели устройство полной звуковой кодировки и полный речевой кодировщик.
В улучшенном исполнении звуковое кодирующее устройство использует общую стадию предварительной обработки для двух ветвей, причем первая ветвь использует, главным образом, модель приемника и/или психоакустическую модель, то есть слуховую маскировку, а вторая ветвь использует, главным образом, модель источника и анализатор отношения СИГНАЛ - ШУМ. Предпочтительно, чтобы у звукового кодирующего устройства был один или более переключателей для переключения между этими ветвями на входах в эти ветви или на выходах этих ветвей, управляемых на стадии принятия решения. Также предпочтительно, чтобы в звуковом кодирующем устройстве первая ветвь включала звуковое кодирующее устройство, базирующееся на психоакустике, причем вторая ветвь включает LPC и анализатор отношения СИГНАЛ - ШУМ.
В улучшенном исполнении звуковой декодер содержит информационный приемник, используемый в ветви декодировки, такой как ветвь декодировки спектральной области, источник информации, используемый в ветви декодировки, такой как ветвь декодировки LPC-области, переключатель для переключения между ветвями и общую стадию постобработки для обработки аудиосигнала во временном интервале и получения выходного звукового сигнала.
Кодируемое звуковое сообщение в соответствии со следующим аспектом изобретения включает первый закодированный сигнал на выходе ветви, представляющий первую часть звукового сообщения, кодируемого в соответствии с первым кодирующим алгоритмом, первый кодирующий алгоритм, имеющий информационную модель приемника, первый закодированный сигнал, содержащий спектральную информацию, характеризующую звуковой сигнал; второй закодированный сигнал на выходе ветви, представляющий вторую часть звукового сигнала, который отличается от первой части выходного сигнала, вторую часть, закодированную в соответствии со вторым кодирующим алгоритмом, второй кодирующий алгоритм, имеющий модель источника информации, второй закодированный сигнал на выходе ветви, имеющий закодированные параметры для модели источника информации, характеризующие промежуточный сигнал; и общие параметры предварительной обработки, представляющие различия между звуковым сигналом и расширенной версией звукового сигнала.
Краткое описание чертежей
Улучшенное исполнение настоящего изобретения описано далее по приложенным чертежам, в которых показаны:
Фиг.1a - блок-схема схемы кодирования в соответствии с первым аспектом настоящего изобретения;
Фиг.1b - блок-схема схемы декодирования в соответствии с первым аспектом настоящего изобретения;
Фиг.2а - блок-схема схемы кодирования в соответствии со вторым аспектом настоящего изобретения;
Фиг.2b - блок-схема схемы декодирования в соответствии со вторым аспектом настоящего изобретения;
Фиг.3а - блок-схема схемы кодирования в соответствии с следующим аспектом настоящего изобретения;
Фиг.3b - блок-схема схемы расшифровки в соответствии с следующим аспектом настоящего изобретения;
Фиг.4а - блок-схема с переключателем, находящимся перед ветвями кодирования;
Фиг.4b - блок-схема схемы кодирования с переключателем, находящимся после ветвей кодирования;
Фиг.4с - блок-схема для улучшенного использования объединителя;
Фиг.5а - форма волны сегмента речи во временной области, имеющая вид квазипериодического или подобного импульсу сегмента сигнала;
Фиг.5b - спектр сегмента сигнала, показанного на фиг.5а;
Фиг.5с - сегмент речи во временном интервале, не похожий на голосовую речь, например постоянный и подобный шуму сегмент сигнала;
Фиг.5d - спектр сигнала, показанного во временном интервале на фиг.5с;
Фиг.6 - блок-схема кодирующего устройства CELP для анализа и синтеза;
Фигуры с 7а по 7d иллюстрируют управляющие сигналы, похожие на голосовую речь и не похожие на голосовую речь, например, имеющие вид импульсов, постоянные и шумоподобные сигналы;
Фиг.7е иллюстрирует часть кодирующего устройства, соответствующую стадии LPC, формирующую краткосрочную информацию предсказания и сигнал ошибки предсказания;
Фиг.8 иллюстрирует блок-схему объединенного многоканального алгоритма в соответствии с применением настоящего изобретения;
Фиг.9 иллюстрирует улучшенное применение алгоритма расширения диапазона частот;
Фиг.10а иллюстрирует детальное описание переключателя, выполняющего алгоритм открытого цикла; и
Фиг.10b иллюстрирует вариант исполнения переключателя, работающего по алгоритму замкнутого цикла.
Моносигнал, стереосигнал или многоканальный сигнал вводятся в общую стадию 100 предварительной обработки на фиг.1а. В общую схему предварительной обработки могут быть включены объединенные функциональные возможности стерео, функциональные возможности MPEG среды, и/или функциональные возможности расширения диапазона частот. На выходе блока 100 есть канал моно, канал стерео или многоканальный выход, которые подаются на переключатель 200 или многоканальные переключатели типа 200.
Переключатель 200 может существовать для каждого выхода стадии 100, когда у стадии 100 есть два или больше выходов, когда стадия 100 формирует на выходе сигнал стерео или многоканальный сигнал. В качестве примера, первый канал стереосигнала может быть речевым каналом, а второй канал стереосигнала может быть музыкальным каналом. В этой ситуации решение на стадии принятия решения может быть различным для этих двух каналов в течение одного и того же промежутка времени.
Переключатель 200 управляется стадией решения 300. Стадия решения получает, в качестве входного сигнал, входящий в блок 100 или сигнал с выхода блока 100. Альтернативно, стадия решения 300 может также получать информацию боковых частот, которая включена в сигнал моно, сигнал стерео или многоканальный сигнал или, по крайней мере, связана с сигналом, который имеет такую информацию и, например, был произведен, первоначально из сигнала моно, сигнала стерео или многоканального сигнала.
В одном из вариантов использования изобретения стадия решения не управляет стадией предварительной обработки 100, и стрелка между блоком 300 и 100 отсутствует. В другом варианте обработка в блоке 100 управляется, в некоторой степени, стадией принятия решения 300, чтобы на основе решения установить один или более параметров в блоке 100. Это, однако, не будет влиять на общий алгоритм в блоке 100, и главные функциональные возможности в блоке 100 будут активными независимо от стадии принятия решения в блоке 300.
Стадия принятия решения 300 приводит в действие переключатель 200, чтобы подключить выход общей стадии предварительной обработки к блоку кодирования частоты 400, показанному на верхней ветви на фиг.1а, либо к блоку кодирования - LPC области, показанной на нижней ветви на фиг.1а.
В одном из вариантов исполнения переключатель 200 осуществляет переключение между двумя ветвями кодирования 400 и 500. В другом варианте исполнения могут быть дополнительные ветви кодирования, такие как третья ветвь кодирования, четвертая ветвь кодирования или даже больше ветвей кодирования. В исполнении с тремя ветвями кодирования третья ветвь кодирования подобна второй ветви кодирования, но может включать управление кодирующим устройством, отличающееся от управления кодирующим устройством 520 во второй ветви 500. В этом воплощении вторая ветвь включает стадию 510 LPC и кодовую таблицу, определяющую управление кодирующим устройством, таким как ACELP, а третья ветвь включает стадию LPC и управляемое кодирующее устройство, управляющее спектральным представлением выходного сигнала стадии LPC.
Основной элемент ветви кодирования частотной области - спектральный конверсионный блок 410, который преобразовывает общий сигнал выхода стадии предварительной обработки в спектральную область. Спектральный конверсионный блок может включать алгоритмы: MDCT-алгоритм, совместно-оптимальный алгоритм проектирования (СУК), алгоритм быстрого преобразования Фурье (БПФ), Вейвлет - анализ или набор фильтров, содержащий определенный набор каналов фильтрации, где частотные составляющие сигнала соответствуют поддиапазонам этого набора фильтров, могут быть сигналами с действительными значениями, или сигналами с комплексными значениями. Выход блока спектрального преобразования 410 кодируется с использованием спектрального звукового кодирующего устройства 420, которое может включать блоки обработки, известные в схемах кодирования ААС.
Основной элемент в нижней ветви кодирования 500 представляет собой анализатор модели источника, такой как LPC 510, который формирует сигналы двух видов. Один из видов сигнала - информационный сигнал LPC, который используется для управления характеристиками фильтра синтеза LPC. Эта информация LPC передается к декодеру. Другой вид выходного сигнала стадии 510 - сигнал управления LPC или сигнал LPC-области, который поступает на вход управляющего кодирующего устройства 520. Управляющее кодирующее устройство 520 может быть выполнено на основе любого кодирующего устройства, такого как кодирующее устройство CELP, кодирующего устройства ACELP или любого другого кодирующего устройства, которое обрабатывает сигнал LPC-области.
Другое улучшенное исполнение управляющего кодирующего устройства - преобразование кодировки управляющего сигнала. В этом воплощении управляющий сигнал не кодируется с использованием механизма кодовых таблиц ACELP, а управляющий сигнал преобразовывается в спектральное представление и характеристики спектрального представления, такие как поддиапазоны сигнала в случае использования набора фильтров, или частотные коэффициенты в случае использования преобразований, таких как БПФ, и управляющий сигнал кодируется для получения сжатия данных. Выполнение этого вида управления кодирующим устройством представляет собой способ УПК кодирования, известный в AMR-WB+.
Решение на стадии принятия решения может быть получено в виде адаптивного сигнала, в котором выполнено разделение «музыка/речь», и с помощью переключателя 200 музыкальные сигналы введены в верхнюю ветвь 400, а речевые сигналы введены в нижнюю ветвь 500. В одном воплощении стадия принятия решения формирует свою информацию решения в виде выходного потока двоичных сигналов, так, чтобы декодер мог использовать эту информацию решения и правильно выполнить операции декодирования.
Такой декодер показан на фиг.1b. Сигнал выхода спектрального звукового кодирующего устройства 420 передается на вход спектрального звукового декодера 430. Выход спектрального звукового декодера 430 подключен к конвертеру временного интервала 440. Аналогично, выход управляющего кодирующего устройства 520 из фиг.1а подключен ко входу управляющего декодера 530, который производит сигнал LPC-области. Сигнал LPC-области вводится в стадию синтеза LPC 540, которая получает информацию LPC, произведенную соответствующей стадией 510 LPC анализа, в качестве входной. Выход конвертера временного интервала 440 и/или выход стадии 540 синтеза LPC вводятся в переключатель 600. Переключатель 600 управляется с помощью управляющего сигнала, который может быть произведен стадией решения 300, или который может быть подан извне, например специальный моносигнал, стереосигнал или многоканальный сигнал.
Выход переключателя 600 является полностью моносигналом, который затем вводится в общую стадию 700 постобработки, которая может дополнительно включить процедуру обработки стереосигнала или расширения диапазона частот и т.д. Альтернативно, выход переключателя также может быть сигналом стерео или даже многоканальным сигналом. Предварительная обработка такого стереосигнала приводит к сокращению числа каналов до двух. В случае многоканального сигнала может произойти сокращение каналов до трех или вообще не происходит никакого сокращения числа каналов, а только выполняется восстановление спектрального диапазона.
В зависимости от определенных функциональных возможностей на общей стадии постобработки производится моносигнал, сигнал стерео, либо многоканальный сигнал. Многоканальный сигнал может иметь больший диапазон частот, чем сигнал на входе в блок 700, если используется операция расширения диапазона частот на общей стадии постобработки 700.
В одном из вариантов исполнения изобретения переключатель 600 осуществляет переключение между двумя ветвями декодировки 430, 440 и 530, 540. В следующем воплощении могут использоваться дополнительные ветви расшифровки (декодирования), такие как третья ветвь расшифровки, четвертая ветвь расшифровки или даже больше ветвей расшифровки. В воплощении с тремя ветвями расшифровки третья ветвь расшифровки может быть подобной второй ветви расшифровки, но может включать декодер возбуждения, отличающийся от декодера возбуждения 530 во второй ветви 530, 540. В этом воплощении вторая ветвь включает стадию 540 LPC, такую как в ACELP, а третья ветвь включает стадию LPC и управляемое кодирующее устройство, управляющее спектральным представлением выходного сигнала стадии LPC 540.
Как было сказано выше, фиг.2а иллюстрирует улучшенную схему кодирования в соответствии со вторым аспектом изобретения. Общая схема предварительной обработки 100 на фиг.1а теперь включает стерео блок 101 разделения/объединения, формирующий на выходе объединенные параметры стерео и моно выходных сигналов, которые получены при смешении входных сигналов и представляют собой сигнал, имеющий два или более канала. Вообще, сигнал на выходе блока 101 может быть сигналом, имеющим больше каналов, но из-за функциональных возможностей блока 101 по смешению сигналов число каналов на выходе блока 101 будет меньшим, чем число входных каналов в блоке 101.
Выход блока 101 поступает в блок расширения диапазона частот 102, который, в кодирующем устройстве фиг.2а, производит сигнал ограниченного диапазона, например сигнал низкой частоты на его выходе. Кроме того, для высокочастотных сигналов на входе в блок 102 параметры расширения диапазона частот, такие как параметры огибающей спектра, параметры обратной фильтрации, параметры уровня шума и т.д., известные для НЕ-ААС-алгоритма MPEG-4-профиля, генерируются и отправляются в виде потока битов на мультиплексор 800.
Предпочтительно, когда на стадии выбора решения 300 входной сигнал поступает на вход блока 101 или на вход блока 102, чтобы сделать выбор между, например, музыкальным сигналом или речевым сигналом. Для музыкального сигнала используется верхняя ветвь кодирования 400, в то время как для речевого сигнала используется нижняя ветвь кодирования 500. Предпочтительно, чтобы стадия принятия решения также управляла объединенным стерео блоком 101, и/или блоком расширения диапазона частот 102, чтобы использовать функциональные возможности этих блоков для конкретного сигнала. Таким образом, когда на стадии принятия решения определяется, что некоторая часть времени входного сигнала имеет первый вид, такой как музыкальный сигнал, тогда соответствующие возможности блока 101 и/или блока 102 могут управлять стадией решения 300. Альтернативно, когда на стадии решения 300 определяется, что сигнал является речевым сигналом или даже более общим, для которого необходим способ кодировки LPC-области, тогда соответствующие возможности блоков 101 и 102 могут соответствующим образом управлять выходом стадии принятия решения.
В зависимости от решения о состоянии переключателя, которое может быть получено переключателем 200 из входного сигнала или из любого внешнего источника, такого как источник оригинального звукового сигнала, из которого формируется входной сигнал в стадию 200, переключатель производит выбор между ветвью кодирования частоты 400 и ветвью кодировки LPC 500. Ветвь кодирования частоты 400 включает стадию преобразования спектра 410, а затем связанную с ней стадию дискретизации/кодирования 421 (как показано в фиг.2а). Стадия дискретизации/кодирования может включать любую из функциональных возможностей известных современных кодирующих устройств в частотной области, например кодирующего устройства ААС. Кроме того, операция дискретизации на стадии дискретизации/кодирования 421 может управляться с помощью модуля психоакустического анализа, который производит психоакустическую информацию, например психоакустическую маскировку порога восприятия по частоте, и вводит эту информацию в стадию 421.
Предпочтительно, чтобы преобразование спектра было выполнено с использованием операции MDCT. Еще более предпочтительно использовать операцию MDCT с преобразованием времени, причем степень преобразования может изменяться в пределах от нуля до высокой степени преобразования. При нулевой степени преобразования операция MDCT в блоке 411 является прямой операцией MDCT, известной ранее. Степень преобразования времени одновременно со степенью преобразования боковых частот может быть передана/введена в поток битов мультиплексора 800 в виде информации боковых частот. Поэтому, если используется TW-MDCT-алгоритм, информацию преобразования боковых частот во времени необходимо включить в поток битов, как показано цифрой 424 на фиг.2а, а в декодере информация преобразования боковых частот во времени должна быть получена с потоком битов, как показано цифрой 434 на фиг.2b.
В кодирующей ветви LPC кодирующее устройство LPC-области может включать ядро ACELP, вычисляющее уровень передачи, задержку подачи сигнала и/или информацию кодовой таблицы, такую как индекс кодовой таблицы и эффективность кодировки.
Предпочтительно, чтобы в первой кодирующей ветви 400 преобразователь спектра использовал специально адаптированную операцию MDCT, имеющую определенные функции, полученные на стадии кодирования дискретизации/энтропии. Стадия кодирования может быть векторной стадией дискретизации, но лучше использовать операцию дискретизации/кодирования, что обозначено цифрой 421 на фиг.2а в кодирующей ветви частотной области.
Фиг.2b иллюстрирует схему декодирования, соответствующую схеме кодирования фиг.2а. Поток битов, произведенный из потока битов мультиплексора 800 из фиг.2а, подается на вход демультиплексора 900. В зависимости от информации, например, полученной из потока битов блоком диагностики типа сигнала 601, переключатель боковых частот декодера 600 переводится в такое состояние, чтобы отправить сигналы от верхней ветви, либо сигналы из нижней ветви на блок расширения диапазона частот 701. Блок расширения диапазона частот 701 получает с потоком битов демультиплексора 900 информацию о боковых частотах и, на основе этой информации и результата определения типа сигнала 601, восстанавливает высокочастотный диапазон по низкочастотному диапазону, произведенному переключателем 600.
Сигнал во всем диапазоне производится блоком 701 и вводится в стадию объединения 702 стерео/объединение, которая восстанавливает два канала стерео или несколько мультиканалов. В результате, блок 702 создаст больше каналов, чем было введено в этот блок. В зависимости от варианта исполнения, вход блока 702 может включать два канала, таких как в стерео сигнале и даже больше каналов, если на выходе этого блока необходимо иметь больше каналов, чем на входе.
Управляемый декодер обозначен номером 530. Алгоритм, осуществленный в блоке 530, адаптирован к соответствующему алгоритму, используемому в блоке кодировки боковых частот 520. В то время как на выходе стадии 431 формируется спектр, полученный из сигнала временной области, преобразованного во временной области с использованием конвертера частоты/времени 440, стадия 530 производит сигнал LPC-области. Выходные данные стадии 530 преобразовываются обратно во временной интервал с использованием стадии синтеза LPC 540, которая управляется с помощью кодирующего устройства боковых частот, формирующего и передающего информацию LPC. Затем, после блока 540, обе ветви имеют информацию во временной области, которая перенаправляется в соответствии с управляющим сигналом переключателя, чтобы в результате получить звуковой сигнал, например, моносигнал, стерео сигнал или многоканальный сигнал.
Переключатель 200, как было показано, осуществляет переключение между обеими ветвями таким образом, что только одна ветвь получает сигнал для обработки, а другая ветвь не получает сигнал для обработки. В альтернативном воплощении, однако, переключатель может также быть включен дальше, например, за звуковым кодирующим устройством 420 и управляемым кодирующим устройством 520. При этом обе ветви 400, 500 обрабатывают один тот же сигнал параллельно. Однако, чтобы не удваивался поток битов, для записи в выходной поток битов выбирается сигнал, произведенный только одной из кодирующих ветвей 400 или 500. Стадия принятия решения будет работать таким образом, чтобы сигнал, внесенный в поток битов, минимизировал некоторую весовую функцию, где весовая функция может определяться скоростью передачи битов, возникающим искажением восприятия или объединенной весовой функцией связи скорости передачи и возникающими искажениями. Поэтому в описываемом способе, и в способах, представленных на чертежах, стадия принятия решения может также работать по алгоритму с замкнутым циклом. Такой алгоритм позволяет удостовериться, что в поток битов передается выход только той ветви кодирования, которая имеет для данного искажения восприятия самую низкую скорость передачи битов, или для данной скорости передачи битов имеет самое низкое искажение восприятия.
В общем случае, обработка в ветви 400 является обработкой восприятия звукового сигнала в соответствии с основной моделью или информационной моделью приемника. Таким образом, эта ветвь моделирует звук, получаемый системой слуха человека. Вдобавок к сказанному, обработка в ветви 500 должна произвести сигнал в полосе возбуждения, остаточной или LPC области. Вообще, обработка в ветви 500 является обработкой в речевой модели или модели формирования информации. Для речевых сигналов эта модель - модель человеческой системы формирования речи/звука. Однако если звук создается различными источниками, требуются различные модели издаваемых звуков. Следовательно, для кодировки желательно, чтобы обработка в ветви 500 также могла быть различной.
Хотя на фигурах с 1a по 2b показаны блок-схемы аппаратной части, в то же время эти рисунки - иллюстрация метода, в котором функциональные возможности блоков соответствуют шагам метода.
Фиг.3а иллюстрирует звуковое кодирующее устройство для того, чтобы произвести кодируемое звуковое сообщение на выходе первой ветви кодирования 400 и второй ветви кодирования 500. Предпочтительно также, чтобы кодируемое звуковое сообщение включало информацию боковых частот, такую как параметры предварительной обработки для общей стадии предварительной обработки или, как показано на предыдущих фигурах, контрольную информацию переключателя.
Предпочтительно, чтобы первая ветвь кодирования работала в соответствии с кодировкой промежуточного звукового сигнала 195 по первому кодирующему алгоритму, причем у первого кодирующего алгоритма есть информационная модель выхода. Первая ветвь кодирования 400 производит первый сигнал выхода кодирующего устройства, который представляет собой закодированное информационное представление спектра звукового промежуточного сигнала 195.
Кроме того, вторая ветвь кодирования 500 предназначена для кодирования промежуточного звукового сигнала 195 в соответствии со вторым алгоритмом кодирования. Второй кодирующий алгоритм, использующий модель источника информации, вырабатывает промежуточный звуковой сигнал и включает в первый сигнал выхода кодирующего устройства параметры кодирования для модели источника информации.
Кроме того, звуковое кодирующее устройство включает в общую стадию предварительной обработки предварительную обработку входного звукового сигнала 99 для получения промежуточного звукового сигнала 195. В частности, общая стадия предварительной обработки выполняет обработку входного звукового сигнала 99 таким образом, что звуковой промежуточный сигнал 195, то есть результат выхода общего алгоритма предварительной обработки, является сжатой версией входного звукового сигнала.
Улучшенный метод аудио кодирования для выполнения кодировки звукового сигнала включает: этап кодирования 400 звукового промежуточного сигнала 195 в соответствии с первым кодирующим алгоритмом, первый кодирующий алгоритм, имеющий информационную модель выхода и создающий в первом выходном сигнале закодированную спектральную информацию, представляющую собой звуковой сигнал; этап кодирования 500 звукового промежуточного сигнала 195 в соответствии со вторым кодирующим алгоритмом, второй кодирующий алгоритм, использующий модель источника информации и создающий во втором выходном сигнале закодированные параметры модели источника информации, представляющие собой промежуточный сигнал 195, и этап обычной предварительной обработки 100 входного звукового сигнала 99 для получения промежуточного звукового сигнала 195, причем на этапе обычной предварительной обработки входной звуковой сигнал 99 преобразовывается таким образом, что промежуточный звуковой сигнал 195 является сжатой версией входного звукового сигнала 99, причем закодированное звуковое сообщение включает определенную часть звукового сигнала: первый или второй выходные сигналы. Предпочтительно, чтобы метод включал в следующий этап кодировки определенной части промежуточного звукового сигнала либо используемый первый кодирующий алгоритм, либо второй кодирующий алгоритм, либо кодирование сигнала с использованием обоих алгоритмов, и использовал в кодируемом сигнале либо результат первого кодирующего алгоритма, либо результат второго кодирующего алгоритма.
Как правило, алгоритм аудио кодирования, используемый в первой ветви кодирования 400, отражает и моделирует ситуацию в звуковом приемнике. Приемником звуковой информации обычно является человеческое ухо. Человеческое ухо может быть смоделировано как анализатор частоты. Поэтому первые выходные ветви кодирования кодируют спектральную информацию. Предпочтительно, чтобы первая ветвь кодирования также включала психоакустическую модель для того, чтобы дополнительно применить психоакустическую маскировку порога восприятия. Эта маскировка психоакустического порога восприятия используется при дискретизации характеристик звукового спектра. Предпочтительно, чтобы дискретизация была выполнена с учетом шума дискретизации посредством дискретизации значений звукового спектра, которые находятся ниже порога психоакустической маскировки.
Вторая ветвь кодирования представляет модель источника информации, которая воспроизводит формирование звукового сигнала. Поэтому модели источника информации могут включать речевую модель, которая отражена LPC стадией. На этой стадии происходит преобразование сигнала из временной области в LPC область, а затем обрабатывается разностный LPC, то есть управляющий сигнал. Альтернативные звуковые модели источника, однако, являются звуковыми моделями источника, представляющими собой определенные средства обработки, или любые другие звуковые генераторы, например определенный источник звука, существующий в реальном мире. Когда доступны несколько звуковых моделей источников, выбор между различными моделями может быть выполнен на основании вычислений отношения СИГНАЛ - ШУМ, то есть на оценке, какая из исходных моделей является лучшей, подходящей для кодирования определенной временной и/или частотной области звукового сигнала. Предпочтительно, однако, чтобы переключение между ветвями кодирования выполнялось во временном интервале. То есть определенная часть времени сигнала кодируется с использованием одной модели, а другая часть времени промежуточного сигнала кодируется с использованием другой ветви кодирования.
Модели источника информации имеют определенные параметры. Так, если рассмотреть современный речевой кодировщик, например AMR-WB+, параметры речевой модели содержат LPC параметры и закодированные параметры управления. AMR-WB + включает кодирующее устройство ACELP и кодирующее устройство УПК. В этом случае закодированные параметры управления могут включать уровень усиления, шума и коды длины переменных.
Вообще, все модели источника информации позволяют регулировать набор параметров, который очень эффективно воссоздает исходный звуковой сигнал. Поэтому на выходе второй ветви кодирования появятся закодированные параметры для модели источника информации в виде промежуточного звукового сигнала.
Фиг.3b представляет декодер, соответствующий кодирующему устройству, показанному на фиг.3а. Вообще, фиг.3b иллюстрирует звуковой декодер для декодирования закодированного звукового сообщения и получения декодированного звукового сигнала 799. Декодер включает первую ветвь декодирования 450 для декодирования закодированного сообщения, закодированного в соответствии с первым кодирующим алгоритмом, имеющим информационную модель приемника. Кроме того, звуковой декодер включает вторую ветвь декодирования 550 для того, чтобы декодировать закодированное информационное сообщение, закодированное в соответствии со вторым кодирующим алгоритмом, имеющим модель источника информации. Кроме того, звуковой декодер включает объединитель для объединения сигналов выходов первой ветви декодирования 450 и второй ветви декодирования 550 и получения объединенного сигнала. Объединенный сигнал показан на Фиг.3b и представляет собой декодированный звуковой промежуточный сигнал 699. Он вводится в общий этап постобработки для обработки декодированного промежуточного звукового сигнала 699. Промежуточный звуковой сигнал 699 представляет собой объединенный сигнал, произведенный объединителем 600 таким образом, что выходной сигнал общего этапа постобработки является расширенной версией объединенного сигнала. Таким образом, декодированный звуковой сигнал 799 имеет расширенное информационное содержание по сравнению с декодированным промежуточным звуковым сигналом 699. Это информационное расширение обеспечивается посредством общей стадии постобработки с помощью пред/постобработки параметров, которые могут передаваться от кодирующего устройства на декодер или могут быть непосредственно получены из декодированного промежуточного звукового сигнала. Однако, предпочтительно, чтобы параметры от пред/постобработки передавались от кодирующего устройства на декодер, так как эта процедура позволяет получить улучшенное качество декодированного звукового сигнала.
Фиг.4а и 4b иллюстрирует два различных воплощения, которые отличаются расположением переключателя 200. На фиг.4а переключатель 200 помещен между выходом общей стадии 100 предварительной обработки и входом двух ветвей кодировки 400, 500. Воплощение фиг.4а подтверждает, что звуковой сигнал может быть введен только в одну ветвь кодирования, а другая ветвь кодирования, которая не связана с выходом общей стадии предварительной обработки, не используется и, поэтому, может находиться выключенном состоянии или в режиме ожидания. Это воплощение предпочтительно в том смысле, что неактивная ветвь кодирования не потребляет мощность и вычислительные ресурсы, кроме того, оно может быть полезно для использования в мобильных устройствах, которые, в частности, имеют батарейное питание и, следовательно, имеют общее ограничение расхода энергии.
С другой стороны, однако, воплощение фиг.4b может быть более предпочтительным, когда расход энергии не ограничен. В этом воплощении кодирующие ветви 400, 500 остаются активными все время, и только с выхода используемой ветви кодирования для определенного временного интервала и/или определенного частотного интервала отправляется поток битов, который может быть использован мультиплексором битового потока 800. Поэтому, в воплощении фиг.4b, обе кодирующие ветви все время остаются активными, и выход ветви кодирования, которая определена стадией принятия решения 300, вводится в выходной поток битов, в то время как выход другой неотобранной ветви кодирования 400 не используется, и не вводится в выходной поток битов, то есть в