НИЗКОСКОРОСТНАЯ АУДИОКОДИРУЮЩАЯ/ДЕКОДИРУЮЩАЯ СХЕМА С ОБЩЕЙ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКОЙ
LOW BIT RATE AUDIO ENCODING/DECODING SCHEME WITH COMMON PREPROCESSING

Настоящее изобретение относится к области звукового кодирования и, в частности, к низкоскоростным схемам кодировки аудиосигнала.
В аудиотехнике используются схемы кодировки в частотной области, такие как МР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 не используется, и не вводится в выходной поток битов, то есть в кодируемое звуковое сообщение.
1
Фиг.4с иллюстрирует следующий аспект улучшенного исполнения декодера. Чтобы полностью избежать слышимых искажений в ситуации, в которой первый декодер является декодером совмещения (наложения) во времени спектральных составляющих или является декодером общего типа в частотной области, а второй декодер - устройство во временной области, границы между блоками или фреймами, созданными первым декодером 450 и вторым декодером 550, не должны быть совершенно непрерывными, особенно в моменты переключения. Таким образом, когда первый блок первого декодера 450 сформирован, а в следующий промежуток времени на выход поступает блок второго декодера, предпочтительно, чтобы была выполнена операция взаимного подавления, что выполняется блоком коммутации каналов 607. В результате блок коммутации каналов 607 мог бы быть реализован, как показано на фиг.4с, 607а, 607b и 607с. У каждой ветви мог бы быть определитель весового множителя m, имеющего значения от 0 до 1 в нормализованном масштабе, где весовой множитель может изменяться, как показано графически в блоке 609, такой способ взаимного подавления дает уверенность, что будет происходить непрерывное и гладкое взаимное подавление, которое, вдобавок, гарантирует, что пользователь не будет чувствовать изменение громкости.
1
В определенных случаях последний блок первого декодера был создан с использованием окна (весовой функции), которое фактически выполнило исчезновение из этого блока. В этом случае, весовой множитель m в блоке 607а равен 1 и, фактически, для этой ветви вообще не требуется никаких изменений.
2
Когда имеет место переключение между вторым и первым декодерами, и когда второй декодер включает окно, которое фактически подавляет выход до конца блока, тогда определитель весового множителя, обозначенный "m", не требовался бы, а весовой множитель приравнен к 1 во всей взаимно исчезающей области.
Когда после переключения создается первый блок, используя операцию в окне, и когда это окно фактически выполняет операцию исчезновения, тогда соответствующий весовой множитель может также быть равен 1 и определитель весового множителя не требуется. Поэтому, когда в окне появляется последний блок, постепенно затухающий в декодере, и первый блок после переключения обрабатывается в окне с использованием декодера, чтобы обеспечить исчезновение, тогда определитель весового множителя 607а, 607b не требуются вообще, и достаточно использовать операцию суммирования 607с.
В этом случае исчезает часть последнего фрейма, и исчезающая часть следующего фрейма определяет взаимно исчезающую область, обозначенную в блоке 609. Кроме того, в такой ситуации предпочтительно, чтобы у последнего блока одного декодера было некоторое наложение во времени с первым блоком другого декодера.
Если операция взаимного исчезновения не требуется или она невозможна и нежелательна, и если используется только однозначное переключение от одного декодера на другой, предпочтительно, чтобы такое переключение было выполнено в моменты стихания звукового сигнала или, по крайней мере, в тех участках звукового сигнала, где есть уменьшенная громкость, то есть которые воспринимаются как тихие или почти тихие. Предпочтительно, чтобы в таком воплощении стадия принятия решения 300 гарантировала, что переключатель 200 активизируется только тогда, когда в соответствующий промежуток времени, который следует за моментом переключения, энергия была ниже чем, например, средняя энергия звукового сигнала или, предпочтительно, была бы ниже, чем 50% средняя энергии звукового сигнала, по отношению, например, к двум или даже более частям/фреймам из всего времени звукового сигнала.
Предпочтительно, чтобы второе правило кодирования/декодирования было основано на кодирующем алгоритме ЛКП. В речевом кодировании на основе ЛКП распознавание различий между квазипериодическими сегментами или частями управляющего сигнала импульсного типа и шумоподобными сегментами или частями управляющего сигнала.
Квазипериодические сегменты управляющего сигнала импульсного типа, то есть сегменты сигнала, имеющие определенную периодичность, кодируются с помощью механизмов, отличающихся от таковых для шумоподобных управляющих сигналов. В то время как квазипериодические сигналы импульсного типа связаны с голосовой речью, шумоподобные сигналы связаны с звуковыми сигналами, непохожими на голос.
В качестве примера можно обратиться к фигурам от 5а до 5d. Здесь рассматриваются квазипериодические сегменты или части сигнала импульсного типа и шумоподобные сегменты или части сигнала. Действительно, речь голосового типа, как показано на фиг.5а во временном интервале и на фиг.5b в частотной области, может рассматриваться в качестве примера квазипериодической части сигнала импульсного типа, а речевой сегмент сигнала, не похожего на голос, например, для части шумоподобного сигнала показан на фигурах 5с и 5d. Как было сказано, речь вообще может быть классифицирована на голосовой, неголосовой и смешанный типы. Временные и частотные области для выбранных сегментов голосового и неголосового типов показаны на Фиг.5а и 5d. Речь голосового типа является квазипериодической во временной области и гармонически структурированной в частотной области, в то время как для речи неголосового типа скорость и диапазон частот изменяются случайным образом. Кроме того, энергия сегментов голосового типа, как правило, выше, чем энергия сегментов неголосового типа. В малых промежутках времени спектр речи голосового типа имеет равномерную структуру гармоник (формантов). Отличная гармоническая структура является следствием квазипериодичности речи и объясняется вибрацией голосовых связок. Формирование структуры спектра (спектральной огибающей) происходит из-за взаимодействия источника звука и голосовых путей. Голосовые пути состоят из гортани и ротовой полости. Форма спектральной огибающей, которая "соответствует" спектру малых промежутков времени речи голосового типа, связана с особенностями передачи голосовых путей и спектрального наклона (6 децибел/октава) из-за вибрации гортани. Спектральная огибающая характеризуется рядом пиков, которые называют форманты. Форманты - резонансные частоты голосовых путей. Для усредненных голосовых путей ниже 5 кГц имеется три-пять формант. Амплитуды и местоположение первых трех формант, обычно находящихся ниже 3 кГц, весьма важны и в речевом синтезе, и восприятии. Высшие форманты также важны для ширины диапазона и представлений речевых сигналов неголосового типа. Свойства речи связаны с работой физической системы формирования звука следующим образом. Речь голосового типа производится возбуждением голосовых путей с квазипериодическими вибрациями гортани от потока воздуха, произведенными вибрирующими голосовыми связками. Частота следования импульсов называется фундаментальной частотой или тоном. Речь неголосового типа производится движением сжатого воздуха через голосовые пути. Носовые звуки происходят из-за акустической связи между носовыми и голосовыми путями, и резкие звуки производятся при быстром падении давления воздуха, которое было создано за перегородкой в путях.
Таким образом, шумоподобная часть звукового сигнала не может иметь во временном интервале ни структуру импульсного типа, ни гармоническую структуру в частотной области, как показано на фиг.5с и фиг.5d, и отличается от квазипериодической части импульсного типа, как было показано, например, на фиг.5а и фиг.5b. Однако, как будет показано далее, различия между шумоподобными и квазипериодическими импульсного типа частями может также наблюдаться после LPC для возбуждаемого управляющего сигнала. LPC-метод, который моделирует голосовые пути и формирование управляющего сигнала, возбуждаемого в голосовых путях.
Кроме того, квазипериодические импульсного типа части и шумоподобные части могут возникать одновременно, что означает, что в одно и то же время часть звукового сигнала зашумлена, а другая часть звукового сигнала является квазипериодической, то есть тональной. Альтернативно, или дополнительно, характеристики сигнала могут быть различными в различных диапазонах частот. Таким образом, определение, является ли звуковой сигнал шумовым или тональным, может также быть выполнено на некоторой частоте таким образом, чтобы можно было считать определенный диапазон частот или несколько диапазонов частот шумовыми, а другие диапазоны частот тональными. В этом случае, какая-то часть времени звукового сигнала могла бы включать тональные и шумовые компоненты.
-1
Фиг.7а иллюстрирует линейную модель системы формирования речи. Эта система предполагает двухэтапное возбуждение, то есть последовательность импульсов для речи голосового типа, как показано на фиг.7с, и случайного шумового сигнала для речи неголосового типа, как обозначено на фиг.7d. Голосовой тракт смоделирован как всеполосный фильтр 70, который обрабатывает импульс или шум на фиг.7с или фиг.7d, произведенный моделью гортани 72. Функция передачи всеполосного фильтра моделируется каскадом небольшого количества резонаторов с двумя полюсами, представляющих форманты. Модель гортани представлена в виде фильтра низких частот с двумя полюсами, и модель 74 звуков, издаваемых губами, представлена в виде L(z)=1-z. Наконец, используется коэффициент коррекции спектра 76, чтобы скомпенсировать низкочастотные эффекты с помощью более высокочастотных полюсов. В отдельных речевых представлениях может отсутствовать корректировка спектра, и 0 из функции передачи звуков, издаваемых губами, по существу, заменен одним из гортанных полюсов. Следовательно, система фиг.7а может быть уменьшена до модели всеполосного фильтра фиг.7b, имеющего стадию усиления 77, прямой путь 78, путь обратной связи 79, и добавочную стадию 80. В пути обратной связи 79, есть фильтр предсказания 81, и вся система синтеза источника звука, показанная на фиг.7b, может быть представлена с помощью функции z-области следующим образом:
S(z)=g/(1-A(z))·X(z),
где g представляет усиление, А(z) фильтр предсказания, определенный анализом ЛКП, Х(z) сигнал возбуждения, и S(z) является выходом синтеза речи.
Фиг.7с и 7d дают графическое описание синтеза речи голосового и неголосового типов во временной области с использованием модели системы линейного источника. Эта система и параметры возбуждения в вышеупомянутом уравнении неизвестны и должны быть определены для ограниченного набора образцов речи. Коэффициенты А(z) получены с использованием анализа линейного предсказания входного сигнала и дискретизации коэффициентов фильтра. На p-м этапе прямого линейного предсказания имеющийся образец речевой последовательности предсказан на основе линейной комбинации p переданных образцов. Коэффициенты предсказания могут быть определены известными алгоритмами, такими как алгоритм Левинсона-Дурбина, общий метод автокорреляции или метод отражения. Дискретизация полученных коэффициентов фильтрации обычно выполняется с помощью многоступенчатой векторной дискретизацией в LSF или в ISP области.
Фиг.7е иллюстрирует более детальное исполнение блока анализа LPC, такого как 510 на фиг.1а. Звуковой сигнал введен в блок определения фильтра, который определяет информацию фильтра A(z). Эта информация подается на выход в виде информации краткосрочного предсказания, необходимой для декодера. В воплощении на фиг.4а информация краткосрочного предсказания требуется для выходного сигнала кодировщика импульсов. Однако, когда в линии 84 требуется только сигнал ошибки предсказания, информация краткосрочного предсказания не должна возникать. Тем не менее информация краткосрочного предсказания запрошена фильтром фактического предсказания 85. В устройство вычитания 86 вводится текущий образец звукового сигнала, и предсказанное значение для текущего образца вычтено таким образом, чтобы для этого образца сигнал ошибки предсказания был подан в линию 84. Последовательность таких ошибок предсказания для образцов сигнала очень схематично представлена на фиг.7с или 7d, где, для ясности, любые проблемы, касающиеся компонентов AC/DC, и т.д. не показаны. Поэтому фиг.7с можно считать примером исправленного сигнала импульсного типа.
w
L
Далее будет рассмотрено кодирующее устройство CELP анализа-синтеза в соответствии с фиг.6, чтобы показать варианты использования этого алгоритма, как видно из фиг.10-13. Это кодирующее устройство CELP обсуждено подробно в "Speech Coding: A Tutorial Review", Andreas Spaniels, Proceedings of the IEEE, Vol.82, No.10, October 1994, pp.1541-1582. Кодирующее устройство CELP, как показано на фиг.6, включает элемент долгосрочного предсказания 60 и компонент краткосрочного предсказания 62. Кроме того, используется таблица кодировки, обозначенная цифрой 64. Фильтр для оценки искажения восприятия W(z) реализован в 66, а контроллер минимизации ошибки в 68. s(n) - входной сигнал временной области. После оценки искажения восприятия подвергнутый оценке сигнал синтеза вводится в устройство вычитания 69, которое вычисляет ошибку между прошедшими оценку сигналами: сигналом синтеза на выходе блока 66 и исходным сигналом s(n). В результате, краткосрочное предсказание A(z) вычислено, и его коэффициенты дискретизируются на стадии анализа LPC, как обозначено на фиг.7е. Долгосрочная информация предсказания A(z), включающая долгосрочное предсказание усиления g и векторный индекс дискретизации, то есть определены ссылки на таблицу кодировки для предсказания сигнала ошибки на выходе стадии анализа LPC, показанной цифрой 10а на фиг.7е. Затем алгоритм CELP кодирует остаточный сигнал, полученный после краткосрочных и долгосрочных предсказаний с использованием таблицы кодировки, например, в виде Гауссовских последовательностей. Алгоритм ACELP, где буква "А" означает "Алгебраический", имеет конкретную таблицу кодировки в алгебраическом виде.
Таблица кодировки может содержать векторы большей или меньшей размерности, причем размерности некоторых векторов могут быть достаточно большими. Коэффициент усиления g характеризует вектор кода, и полученный код фильтруется фильтром синтеза долгосрочного предсказания и фильтром синтеза краткосрочного предсказания. "Оптимальный" вектор кода выбирается таким образом, чтобы оцененная среднеквадратическая ошибка искажений восприятия на выходе устройства вычитания 69 была минимизирована. Процесс поиска в CELP проводится операцией оптимизации анализа-синтеза, как показано на фиг.6.
Для конкретных случаев, когда фрейм представляет собой смесь речи голосового и неголосового типа, или когда речь идет о музыке, более подходящей для кодирования возбуждения в LPC области может быть кодирование УПК. Процессы УПК кодировки непосредственно возбуждают частотную область, без какого-либо предположения о генерации возбуждения. Следовательно, УПК кодирование является более общим, чем CELP и не ограничено исходной моделью возбуждения для речи голосового и неголосового типа. УПК - все еще модель фильтра источника, производящая кодировку с использованием линейного фильтра предсказания моделирования формантов подобных речи сигналов.
В кодировании, подобном AMR-WB+, выбор между различными способами УПК и ACELP проводится в соответствии с описанием AMR-WB+. Различные способы УПК отличаются длиной логического блока Быстрого Преобразования Фурье, и лучший способ выбирается из двух следующих: подход методом синтеза или способ прямой обратной связи.
Как обсуждалось в связи с фиг.2а и 2b, предпочтительно, чтобы общая стадия предварительной обработки 100 включала многоканальный блок (стерео устройство разделения/объединения) 101 и, кроме того, стадию 102 увеличения ширины диапазона. Соответственно, декодер включает стадию 701 увеличения ширины диапазона и последовательно включенную объединенную многоканальную стадию 702. Предпочтительно, чтобы в кодирующем устройстве объединенная многоканальная стадия 101 подключалась до стадии увеличения ширины диапазона 102, и порядок обработки сигналов в декодере начинался стадией 701 увеличения ширины диапазона с последующим переходом к объединенной многоканальной стадии 702. Однако в альтернативном подходе общая стадия предварительной обработки может включать объединенную многоканальную стадию без последующего выполнения стадии расширения диапазона частот или стадии увеличения ширины диапазона.
Подходящий пример объединенной многоканальной стадии в кодирующем устройстве 101а, 101b и в декодере 702а и 702b показан на фиг.8. Много оригинальных входных каналов Е подключены к входу первого смесителя 101а так, чтобы первый смеситель произвел К передающих каналов, где число К больше или равно одному и меньше чем Е.
Предпочтительно, чтобы входные каналы Е были введены в объединенный многоканальный анализатор параметров 101b, который производит информацию о параметрах. Предпочтительно, чтобы эта информация о параметрах была закодирована с энтропией, например, различными видами кодировки и последующим кодированием Хаффмана или, альтернативно, последующим арифметическим кодированием. Информация о параметрах, произведенная блоком 101b, передается к декодеру параметра 702b, который может быть частью блока 702 на фиг.2b. Декодер параметра 702b декодирует переданную ему информацию о параметрах и направляет декодированную информацию о параметрах в следующий смеситель 702а. На второй смеситель 702а поступают К передающих каналов, и формируется число L выходных каналов, где число L больше чем К и меньше или равно чем Е.
Информация о параметрах может включать различия уровней между каналами, фазовые различия между каналами и/или измерения когерентности между каналами, как это принято в ВВС технологии, или как известно и подробно описано в стандарте MPEG-среды. Число передаваемых каналов может быть одним моно каналом для приложений с ультранизкими скоростями передачи битов или может включать совместимое заявление стерео или может включать приложения, совместимые со стерео сигналами, то есть двухканальные. Как правило, число входных каналов Е равно пяти или даже больше. Альтернативно, в число входных каналов Е могут также входить Е аудио объектов, поскольку такие возможности известны в контексте кодировки пространственного аудио объекта (SAOC).
В одном из вариантов исполнения первый смеситель выполняет смешение исходных входных каналов Е с учетом либо без учета весовых коэффициентов, или суммируется Е исходных аудио объектов. В случае аудио объектов, представленных как входные каналы, объединенный многоканальный анализатор параметров 101b должен вычислять параметры аудио объекта, такие как матрица корреляции между аудио объектами, желательно в течение каждого промежутка времени, и еще лучше, для каждого диапазона частот. В результате весь частотный диапазон может быть разделен, по крайней мере, на 10, или, желательно, на 32 или 64 диапазона частот.
Фиг.9 показывает улучшенное исполнение для выполнения стадии 102 расширения диапазона частот на фиг.2а и аналогичной стадии 701 расширения диапазона частот на фиг.2b. Предпочтительно, чтобы в кодирующем устройстве блок расширения диапазона частот 102 включал блок фильтрации низких частот 102b и высокочастотный анализатор 102а. Из исходного звукового сигнала, поступающего на вход блока расширения диапазона частот 102, отфильтровываются низкие частоты, для того, чтобы сформировать низкочастотный сигнал, который затем вводится в ветви кодирования и/или переключатель. У низкочастотного фильтра есть частота отсечки, которая обычно находится в диапазоне от 3 кГц до 10 кГц. С использованием стандарта SBR (standard bit rate) этот диапазон может быть превышен. Кроме того, блок расширения полосы пропускания 102, включает высокочастотный анализатор для вычисления параметров расширения диапазона частот, таких как информация о параметрах огибающей спектра, информация о параметрах уровня шума, информация о параметрах обратной фильтрации, а также параметрическая информация, касающаяся определенных гармонических линий в высокочастотном диапазоне и дополнительных параметрах, как подробно рассмотрено в стандарте MPEG-4 в главе, связанной с восстановлением спектрального диапазона (14496-3:2005 ISO/IEC, Часть 3, Глава 4.6.18).
В декодере блок расширения полосы пропускания 701 включает блок 701а, регулятор 701b и объединитель 701с. Объединитель 701с использует декодированный низкочастотный сигнал и соответствующий восстановленный высокочастотный сигнал, произведенный регулятором 701b. На входе регулятора 701b имеется блок для получения высокочастотного сигнала из низкочастотного, например, путем восстановления спектрального диапазона или расширением частотного диапазона. Внесение исправлений, проведенное блоком 701а, может быть выполнено гармоническим либо негармоническим способом. Затем сигнал, произведенный блоком 701а, настраивается регулятором 701b для использования переданной параметрической информации расширения частотного диапазона.
Как обозначено на фиг.8 и фиг.9, в улучшенном воплощении описанные блоков могут иметь входной контроль способа внесения исправлений. Этот входной контроль получается с использованием сигнала выхода стадии принятия решения 300. В таком улучшенном воплощении характеристики соответствующего блока могут быть согласованы с выходом стадии принятия решения, то есть в улучшенном воплощении для определенной части времени аудио сигнала принимается решение, относится ли сигнал к речевому типу или к музыкальному. Предпочтительно, чтобы контроль за способом внесения исправлений имел отношение только к одной или больше, но не ко всем функциональным возможностям этих блоков. Например, решение может влиять только на блок 701а, но, возможно, не повлияет на другие блоки на фиг.9, или, например, может влиять только на объединенный многоканальный анализатор параметров 101b на фиг.8, но не на другие блоки на фиг.8. Это выполнение предпочтительно вследствие того, что имеет более высокую гибкость, более высокое качество и в сигнале выхода может быть получена более низкая скорость передачи битов, обеспечивающая гибкость на общей стадии предварительной обработки. Однако, с другой стороны, использование алгоритмов на общей стадии предварительной обработки для обоих видов сигналов позволяет создать эффективную схему кодирования/декодирования.
Фиг.10а и фиг.10b представляют два различных варианта использования стадии принятия решения 300. На фиг.10а показан открытый цикл алгоритма принятия решения. По этому алгоритму анализатор сигнала 300а на стадии принятия решения использует определенные правила для определения, имеется ли у некоторой временной области или у некоторой частотной области входного сигнала особенность, которая требует, чтобы эта часть сигнала кодировалась первой ветвью кодирования 400 или второй ветвью кодирования 500. В результате анализатор сигнала 300а может проанализировать входной аудио сигнал на этапе общей стадии предварительной обработки или может проанализировать аудио сигнал, произведенный общей стадией предварительной обработки, то есть, промежуточный аудио сигнал, или может проанализировать промежуточный сигнал в пределах общей стадии предварительной обработки, такой как выход сигнала первого смесителя, который может быть моно сигналом или который может быть сигналом, имеющим k каналов, обозначенных на фиг.8. На выходе анализатора сигнала 300а формируется управляющий сигнал решения о переключении для переключателя 200 кодирующего устройства, соответствующего переключателя 600 или объединителя 600 в декодере.
Альтернативно, стадия принятия решения 300 может выполнить замкнутый цикл алгоритма принятия решения, в котором используются обе ветви кодировки, решающие свои задачи с той же самой частью звукового сигнала, и оба закодированных сигнала декодируются соответствующими ветвями декодирования 300с, 300d. Выходы устройств 300с и 300d вводятся в компаратор 300b, который сравнивает выходы устройств декодирования по соответствующим частям, например, промежуточного аудио сигнала. Тогда, в зависимости от результата оценки, например, отношения сигнал/шум для ветви, принимается решение о переключении. Этот замкнутый цикл алгоритма принятия решения имеет повышенную сложность по сравнению с открытым циклом алгоритма принятия решения, но эта сложность существует только в устройстве кодировки, а декодер не имеет никаких недостатков, связанных с этим процессом, так как декодер может успешно использовать результат решения о кодировании. Поэтому, замкнутый цикл алгоритма принятия решения, несмотря на сложность и качественные соображения, предпочтительнее в тех применениях, в которых сложность декодера несущественна, например, в средствах радиовещания, где есть очень небольшое количество кодирующих устройств, и большое количество декодеров, которые, кроме того, должны иметь различные функциональные возможности и низкую стоимость.
Целевая функция, использованная в компараторе 300b, может быть целевой функцией, которая определяется качественными аспектами, или функцией, которая определяется шумовыми аспектами, или функцией, которая определяется аспектами скорости передачи битов, или может быть объединенной целевой функцией, которая определяется любой комбинацией скорости передачи битов, качества, шума (созданной блоками кодирования и, особенно, дискретизацией), и т.д.
Предпочтительно, чтобы первая ветвь кодирования и/или вторая ветвь кодирования включала функциональные возможности деформации времени в кодирующем устройстве и, соответственно, в декодере. В одном из воплощений первая ветвь кодирования включает модуль изменения времени для вычисления переменной характеристики искажения, зависящей от части звукового сигнала, выбранной в соответствии с определенной характеристикой искажения, преобразователь «временной интервал/частотная область», и кодировщик энтропии для преобразования результата конвертера «временной интервал/частотная область» в закодированное представление. Переменная характеристика искажения включается в кодируемый аудио сигнал. Эта информация считывается с искажением (растяжением) во времени ветвью декодирования, и обрабатывается, чтобы в результате создать выходной сигнал с неискаженной временной шкалой. Например, ветвь декодирования выполняет декодирование энтропии, деквантование и преобразование частотной области обратно во временной интервал. Во временном интервале может быть применена операция аннулирования деформации времени, а затем может быть проведена соответствующая операция ресамплинга (изменение частоты дискретизации), чтобы в результате получить дискретный звуковой сигнал с неискаженной временной шкалой.
В зависимости от определенных требований по использованию изобретения, предложенные методы могут быть реализованы в аппаратных средствах или в программном обеспечении. Реализация может быть выполнена с использованием цифрового носителя данных, в частности DVD диск или компакт-диск, имеющий удобочитаемые управляющие сигналы в электронном виде, совместимые с программируемыми компьютерными системами, позволяющими осуществить положения изобретения. Таким образом, настоящее изобретение является результатом работы компьютерной программы с программным кодом, хранящимся на компьютерных носителях. Программный код используется для выполнения методов изобретения при запуске компьютерной программы на компьютере. Другими словами, методы изобретения представлены в виде компьютерной программы, имеющей соответствующий программный код для выполнения, по крайней мере, одного из методов изобретения при запуске программы на компьютере.
Закодированный аудио сигнал в соответствии с изобретением может быть сохранен на цифровом носителе данных или может быть передан через передающую среду, такую как беспроводная линия передачи или проводная линия передачи, например Интернет.
Рассмотренные выше воплощения просто иллюстрируют принципы настоящего изобретения. Предполагается, что модификации и изменения способов применения и аппаратных компонент, описанных здесь, будут очевидны для других специалистов. Представлена суть изобретения, поэтому ограничения связаны только с областью применения положений изобретения, а не с какими-либо деталями, представленными здесь для описания и объяснения воплощений изобретения.