Устройство и способ для кодирования и декодирования аудиосигнала с использованием выровненной части опережающего просмотра

Иллюстрации

Показать все

Изобретение относится к средствам кодирования и декодирования аудиосигнала с использованием выровненной части опережающего просмотра. Технический результат заключается в повышении качества кодированного аудиосигнала. Блок применения оконной функции для применения окна анализа кодирования с предсказанием к потоку дискретных значений аудиосигнала для получения обработанных с помощью оконной функции данных для анализа с предсказанием и для применения окна анализа кодирования с преобразованием к потоку дискретных значений аудиосигнала для получения обработанных с помощью оконной функции данных для анализа с преобразованием, при этом окно анализа кодирования с преобразованием связано с дискретными значениями аудиосигнала в пределах текущего кадра дискретных значений аудиосигнала и с дискретными значениями аудиосигнала заданной части будущего кадра дискретных значений аудиосигнала, являющихся частью опережающего просмотра кодирования с преобразованием. Окно анализа кодирования с предсказанием связано с частью дискретных значений аудиосигнала текущего кадра и с дискретными значениями аудиосигнала заданной части будущего кадра, являющегося частью опережающего просмотра кодирования с предсказанием. 6 н. и 20 з.п. ф-лы, 17 ил.

Реферат

Настоящее изобретение относится к кодированию аудиосигнала и, в частности, к кодированию аудиосигнала, основанному на переключаемых аудиокодерах и соответственно управляемых аудиодекодерах, особенно подходящих для приложений с малой задержкой.

Известны несколько концепций кодирования аудиосигнала, основанных на переключаемых кодеках. Одна известная концепция кодирования аудиосигнала - это так называемый кодек Расширенного широкополосного адаптивного кодирования с переменной скоростью (AMR-WB+), как описано в 3 GPP TS 26.290 B10.0.0 (2011-03). AMR-WB+ аудиокодек содержит все режимы 1-9 кодека AMR-WB для речевых сигналов и AMR-WB VAD и DTX. AMR-WB+ расширяет кодек AMR-WB, посредством добавления TCX, расширения полосы частот и стерео.

AMR-WB+ аудиокодек обрабатывает входные кадры, равные 2048 дискретным значениям, c внутренней частотой дискретизации FS. Внутренняя частота дискретизации ограничена диапазоном 12800-38400 Гц. Кадры по 2048 дискретных значений делятся на два критически дискретизированных равных диапазона частот. Результатом этого являются два суперкадра по 1024 дискретных значения, соответствующих низкочастотному (LF) и высокочастотному (HF) диапазонам. Каждый суперкадр делится на четыре кадра по 256 дискретных значений. Дискретизация c внутренней частотой дискретизации получается путем использования регулируемой схемы преобразования дискретизации, которая повторно дискретизирует входной сигнал.

LF и HF сигналы затем кодируются с использованием двух различных подходов: LF кодируется и декодируется с помощью "основного" кодера/декодера, основанного на переключаемом ACELP и возбуждения кодированным преобразованием (TCX). В режиме ACELP используется стандартный кодек AMR-WB. HF сигнал кодируется относительно небольшим числом бит (16 бит/кадр) с помощью метода расширения полосы частот (BWE). Параметры, передаваемые от кодера декодеру, являются битами выбора режима, параметрами LF и параметрами HF. Параметры для каждого суперкадра в 1024 дискретных значений разделены на четыре пакета одинакового размера. Когда входной сигнал является стерео-сигналом, левый и правый каналы объединяются в моно-сигнал для кодирования ACELP/TCX, тогда как кодирование стерео принимает оба входных канала. На стороне декодера LF и HF диапазоны декодируются отдельно, после чего они объединяются в синтезирующем банке фильтров. Если выходной сигнал ограничен только моно-сигналом, параметры стерео опускаются, и декодер функционирует в режиме моно. AMR-WB+ кодек применяет анализ LP и для режима ACELP, и для режима TCX при кодировании сигнала LF. Коэффициенты LP линейно интерполируются в каждом подкадре с 64 дискретными значениями. Окно анализа LP является полукосинусом с длиной в 384 дискретных значения. Для кодирования основного моно-сигнала для каждого кадра используется или кодирование ACELP или TCX. Режим кодирования выбирается на основании метода «анализ через синтез» с обратной связью. Для кадров ACELP рассматриваются только кадры с 256 дискретными значениями, тогда как в режиме TCX возможны кадры с 256, 512 или 1024 дискретными значениями. Окно, используемое для анализа LPC в AMR-WB+, изображено на фиг. 5b. Используется симметричное окно анализа LPC с опережающим просмотром в 20 мс. Опережающий просмотр означает, что, как показано на фиг. 5b, окно анализа LPC для текущего кадра, изображенное под номером 500, простирается не только в пределах текущего кадра, обозначенного между 0 и 20 мс на фиг. 5b и изображенного под номером 502, но простирается в будущий кадр между 20 и 40 мс. Это означает, что при использовании этого окна анализа LPC необходима дополнительная задержка в 20 мс, то есть целый будущий кадр. Поэтому часть опережающего просмотра, обозначенная как 504 на фиг. 5b, вносит вклад в систематическую задержку, связанную с AMR-WB+ кодером. Другими словами, будущий кадр должен быть полностью доступен, чтобы могли быть вычислены коэффициенты анализа LPC для текущего кадра 502.

Фиг. 5a изображает другой кодер, так называемый кодер AMR-WB и, в частности, окно анализа LPC, используемое для вычисления коэффициентов анализа для текущего кадра. Еще раз, текущий кадр простирается между 0 и 20 мс, а будущий кадр простирается между 20 и 40 мс. В отличие от фиг. 5b, окно анализа LPC AMR-WB, обозначенное как 506, имеет часть 508 опережающего просмотра лишь в 5 мс, то есть временной интервал между 20 мс и 25 мс. Следовательно, задержка, вносимая анализом LPC, в значительной степени уменьшается относительно фиг. 5a. С другой стороны, однако, было установлено, что большая часть опережающего просмотра для определения коэффициентов LPC, то есть большая часть опережающего просмотра для окна анализа LPC, приводит к лучшим коэффициентам LPC и, следовательно, меньшей энергии в остаточном сигнале и, следовательно, более низкой битовой скорости, так как предсказание LPC лучше совпадает с исходным сигналом.

Хотя фиг. 5a и 5b относятся к кодерам, имеющим только одно окно анализа для определения коэффициентов LPC для одного кадра, фиг. 5c изображает ситуацию для речевого кодера G.718. Спецификация G718 (06-2008) относится к системам передачи и цифровым медиа системам и сетям и, в частности, описывает цифровое терминальное оборудование и, в частности, кодирование голосовых и аудиосигналов для такого оборудования. В частности, этот стандарт относится к надежному узкополосному и широкополосному встроенному кодированию с переменной скоростью речи и звука от 8-32 Кбит/с, как это определено в рекомендации ITU-T G718. Входной сигнал обрабатывается с использованием 20 мс кадров. Задержка кодека зависит от частоты дискретизации ввода и вывода. Для широкополосного ввода и широкополосного вывода полная алгоритмическая задержка этого кодирования составляет 42,875 мс. Она состоит из одного 20 мс кадра, 1,875 мс задержки входного и выходного фильтров повторной дискретизации, 10 мс для опережающего просмотра кодера, одной мс задержки постфильтрации и 10 мс в декодере для обеспечения операции добавления с наложением кодирования с преобразованием более высоких слоев. Для узкополосного ввода и узкополосного вывода более высокие слои не используются, но 10 мс задержка декодера используется для улучшения эффективности кодирования при наличии стирания кадров и для музыкальных сигналов. Если вывод ограничен слоем 2, задержка кодека может быть уменьшена на 10 мс. Описание кодера следующее. Два нижних слоя применяются к сигналу с предыскажениями, дискретизированному с частотой 12,8 кГц, а три верхних слоя используются в области входного сигнала, дискретизированного с частотой 16 кГц. Основной слой основан на технологии линейного предсказания с кодовым возбуждением (CELP), в которой речевой сигнал моделируется сигналом возбуждения, прошедшим через синтезирующий фильтр линейного предсказания (LP), представляющим собой огибающую спектра. Фильтр LP квантуется в области спектральной частоты иммитанса (ISF), используя переключаемый прогнозирующий подход и многоступенчатое векторное квантование. Анализ основного тона без обратной связи выполняется отслеживающим основной тон алгоритмом, чтобы гарантировать гладкий контур основного тона. Два одновременных контура эволюции основного тона сравниваются и выбирается дорожка, которая выдает более гладкий контур, чтобы сделать оценку основного тона более надежной. Предварительная обработка на уровне кадра содержит высокочастотную фильтрацию, преобразование частоты дискретизации к 12800 дискретным значениям в секунду, внесение предыскажений, спектральный анализ, обнаружение узкополосных вводов, обнаружение голосовой активности, оценку помех, шумоподавление, анализ с линейным предсказанием, преобразование LP в ISF и интерполяцию, вычисление взвешенного речевого сигнала, анализ основного тона без обратной связи, обновление фонового шума, классификацию сигналов для выбора режима кодирования и маскирование стирания кадра. Кодирование слоя 1 с использованием выбранного типа кодирования содержит невокализированный режим кодирования, вокализированный режим кодирования, переходный режим кодирования, общий режим кодирования, прерывистую передачу и генерацию комфортного шума (DTX/CNG).

Анализ с долгосрочным предсказанием или линейным предсказанием (LP) с использованием автокорреляционного подхода определяет коэффициенты синтезирующего фильтра модели CELP. В CELP, однако, долгосрочное предсказание обычно является "адаптивной кодовой книгой" и, таким образом, отличается от линейного предсказания. Следовательно, линейное предсказание может рассматриваться более как краткосрочное предсказание. Автокорреляция речи, обработанной с помощью оконной функции, преобразуется в коэффициенты LP с использованием алгоритма Левинсона-Дарбина. Затем коэффициенты LPC преобразуются в спектральные пары иммитанса (ISP) и, следовательно, к спектральным частотам иммитанса (ISF) для целей интерполяции и квантования. Интерполированные подвергнутые квантованию и обратному квантованию коэффициенты преобразуются обратно в область LP для построения синтезирующего и взвешивающего фильтров для каждого подкадра. В случае кодирования активного кадра сигнала оцениваются два набора коэффициентов LP в каждом кадре, используя два окна анализа LPC, обозначенные как 510 и 512 на фиг. 5c. Окно 512 называется "окном LPC середины кадра", а окно 510 называется "окном LPC конца кадра". Часть 514 опережающего просмотра в 10 мс используется для вычисления автокорреляции конца кадра. Структура кадра показана на фиг. 5c. Кадр делится на четыре подкадра, каждый подкадр имеет продолжительность 5 мс, которая соответствует 64 дискретным значениям при частоте дискретизации 12,8 кГц. Окна для анализа конца кадра и для анализа середины кадра имеют центр в четвертом подкадре и втором подкадре соответственно, как показано на фиг. 5c. Окно Хэмминга с длиной в 320 дискретных значений используется для обработки с помощью оконной функции. Коэффициенты определены в G.718, раздел 6.4.1. Вычисление автокорреляции описано в разделе 6.4.2. Алгоритм Левинсона-Дарбина описан в разделе 6.4.3, преобразование LP в ISP описано в разделе 6.4.4, а преобразование ISP в LP описано в разделе 6.4.5.

Параметры кодирования речи, такие как задержка и усиление адаптивной кодовой книги, индекс и усиление алгебраической кодовой книги ищутся путем минимизации ошибки между входным сигналом и синтезированным сигналом в перцепционно взвешенной области. Перцепционное взвешивание выполняется путем пропускания сигнала через перцепционно взвешивающий фильтр, полученный из коэффициентов фильтра LP. Перцепционно взвешенный сигнал также используется в анализе основного тона без обратной связи.

Кодер G.718 является исключительно речевым кодером, имеющим только один режим кодирования речи. Поэтому кодер G.718 не является переключаемым кодером и, следовательно, этот кодер имеет тот недостаток, что он обеспечивает только один режим кодирования речи в пределах основного слоя. Следовательно, будут иметь место проблемы с качеством, когда этот кодер будет применен к другим сигналам, отличным от речевых сигналов, то есть к обычным аудиосигналам, для которых модель, стоящая за кодированием CELP, не подходит.

Дополнительным переключаемым кодеком является так называемый кодек USAC, то есть унифицированный кодек для речи и звука, как определено в ISO/IEC CD 23003-3 от 24 сентября 2010. Окно анализа LPC, используемое для этого переключаемого кодека, обозначено на фиг. 5d под номером 516. Опять же, предполагается текущий кадр, простирающийся между 0 и 20 мс, и, следовательно, оказывается, что часть 618 опережающего просмотра этого кодека равна 20 мс, то есть значительно больше, чем часть опережающего просмотра G.718. Следовательно, хотя кодер USAC обеспечивает хорошее качество звука вследствие наличия у него переключения, задержка является значительной из-за части 518 опережающего просмотра окна анализа LPC на фиг. 5d. Общая структура USAC имеет следующий вид. Во-первых, имеется общая пред/постобработка, состоящая из функционального блока окружения MPEG (MPEGS) для обработки стерео или для многоканальной обработки и блока усовершенствованной SBR (eSBR), который обрабатывает параметрическое представление более высоких звуковых частот во входном сигнале. Кроме того, имеются две ветви, одна состоит из пути инструмента модифицированного усовершенствованного кодирования аудио (AAC), а другая состоит из пути, основанного на кодировании с линейным предсказанием (область LP или LPC), который в свою очередь показывает или представление в частотной области, или представление во временной области остатка LPC. Все переданные спектры и для AAC, и для LPC представлены в области MDCT после квантования и арифметического кодирования. Представление во временной области использует схему кодирования с возбуждением ACELP. Инструмент ACELP обеспечивает способ эффективно представить сигнал возбуждения во временной области путем объединения долгосрочного прогнозирующего механизма (адаптивного кодового слова) с импульсоподобной последовательностью (инновационного кодового слова). Реконструированное возбуждение отправляется через синтезирующий фильтр LP для формирования сигнала во временной области. Ввод для инструмента ACELP содержит адаптивную и инновационную кодовые книги, значения усиления адаптивного и инновационного кодов, другие управляющие данные и обратно квантованные и интерполированные коэффициенты фильтра LPC. Выводом инструмента ACELP является реконструированный во временной области аудиосигнал.

Инструмент TCX декодирования на основе MDCT используется для возвращения взвешенного представления остатка LP из области MDCT назад в сигнал во временной области, он выводит взвешенный сигнал во временной области, включающий в себя взвешенную синтезирующую фильтрацию LP. IMDCT может быть сконфигурирован поддерживать 256, 512 или 1024 спектральных коэффициентов. Ввод для инструмента TCX содержит (подвергнутые обратному квантованию) спектры MDCT и подвергнутые обратному квантованию и интерполированные коэффициенты фильтра LPC. Выводом инструмента TCX является реконструированный аудиосигнал во временной области.

Фиг. 6 показывает ситуацию в USAC, где изображены окна 516 анализа LPC для текущего кадра и 520 для прошлого или последнего кадра, и где, кроме того, изображено окно 522 TCX. Окно 522 TCX имеет центр в центре текущего кадра, простираясь между 0 и 20 мс и простираясь на 10 мс в прошлый кадр и 10 мс в будущий кадр, простирающийся между 20 и 40 мс. Следовательно, окно 516 анализа LPC требует части опережающего просмотра LPC между 20 и 40 мс, то есть 20 мс, в то время как окно анализа TCX дополнительно имеет часть опережающего просмотра, простирающуюся между 20 и 30 мс в будущий кадр. Это означает, что задержка, вносимая окном 516 анализа USAC, равна 20 мс, в то время как задержка, вносимая в кодер окном TCX, равна 10 мс. Следовательно, становится ясно, что части опережающего просмотра обоих видов окон не выровнены друг с другом. Поэтому даже при том, что окно 522 TCX вносит лишь задержку в 10 мс, общая задержка кодера равна, тем не менее, 20 мс из-за окна 516 анализа LPC. Поэтому даже при том, что есть довольно небольшая часть опережающего просмотра для окна TCX, это не уменьшает полную алгоритмическую задержку кодера, так как полная задержка определяется наибольшим вкладом, то есть равна 20 мс из-за окна 516 анализа LPC, простирающегося на 20 мс в будущий кадр, то есть охватывающего не только текущий кадр, но и дополнительно охватывающего будущий кадр.

Задачей настоящего изобретения является обеспечение улучшенной концепции кодирования для кодирования или декодирования аудиосигнала, которая, с одной стороны, обеспечивает хорошее качество аудио и которая, с другой стороны, приводит к уменьшению задержки.

Эта цель достигается с помощью устройства для кодирования аудиосигнала по п. 1, способа кодирования аудиосигнала по п. 15, аудиодекодера по п. 16, способа декодирования аудиосигнала по п. 24 или компьютерной программы по п. 25.

В соответствии с настоящим изобретением применена переключаемая схема аудиокодека, имеющая ветвь кодирования с преобразованием и ветвь кодирования с предсказанием. Важно отметить, что два вида окон, то есть окно анализа кодирования с предсказанием с одной стороны и окно анализа кодирования с преобразованием с другой стороны, выровнены в отношении их части опережающего просмотра так, что часть опережающего просмотра кодирования с преобразованием и часть опережающего просмотра кодирования с предсказанием идентичны или отличаются друг от друга менее чем 20% части опережающего просмотра кодирования с предсказанием или менее чем 20% части опережающего просмотра кодирования с преобразованием. Следует отметить, что окно опережающего анализа используется не только в ветви кодирования с предсказанием, но оно фактически используется в обеих ветвях. Анализ LPC также используется для формирования шумов в области преобразования. Поэтому, другими словами, части опережающего просмотра идентичны или очень близки друг к другу. Это гарантирует, что достигается оптимальный компромисс, и что ни качество звука, ни параметры задержки не будут установлены субоптимальным образом. Следовательно, для кодирования с предсказанием в окне анализа было обнаружено, что анализ LPC тем лучше, чем больше опережающий просмотр, но, с другой стороны, увеличивается задержка для большей части опережающего просмотра. С другой стороны, то же самое справедливо для окна TCX. Чем больше часть опережающего просмотра окна TCX, тем сильнее может быть уменьшена битовая скорость TCX, так как более длительные окна TCX приводят к более низким битовым скоростям в общем случае. Поэтому, в соответствии с настоящим изобретением, части опережающего просмотра идентичны или весьма близки друг к другу и, в частности, отличаются друг от друга менее чем на 20%. Поэтому часть опережающего просмотра, которая нежелательна по причинам задержки, с другой стороны, оптимально используется обеими ветвями кодирования/декодирования.

Ввиду этого настоящее изобретение обеспечивает улучшенную концепцию кодирования, с одной стороны, с низкой задержкой, когда часть опережающего просмотра для обоих окон анализа установлена небольшой, и обеспечивает, с другой стороны, концепцию кодирования/декодирования с хорошими характеристиками вследствие того, что задержка, которая должна быть внесена по причинам качества звука или причинам битовой скорости, в любом случае оптимально используется обеими ветвями кодирования, а не только одной ветвью кодирования.

Устройство для кодирования аудиосигнала, имеющего поток дискретных значений, содержит блок применения оконной функции для применения окна анализа кодирования с предсказанием к потоку дискретных значений аудиосигнала для получения обработанных с помощью оконной функции данных для предсказывающего анализа и для применения окна анализа кодирования с преобразованием к потоку дискретных значений аудиосигнала для получения обработанных с помощью оконной функции данных для анализа с преобразованием. Окно анализа кодирования с преобразованием связано с дискретными значениями аудиосигнала текущего кадра дискретных значений аудиосигнала заданной части опережающего просмотра будущего кадра дискретных значений аудиосигнала, являющихся частью опережающего просмотра кодирования с преобразованием.

Кроме того, окно анализа кодирования с предсказанием связано по меньшей мере с частью дискретных значений аудиосигнала текущего кадра и с дискретными значениями аудиосигнала заданной части будущего кадра, являющегося частью опережающего просмотра кодирования с предсказанием.

Часть опережающего просмотра кодирования с преобразованием и часть опережающего просмотра кодирования с предсказанием идентичны друг другу или отличаются друг от друга менее чем 20% части опережающего просмотра кодирования с предсказанием или менее чем 20% части опережающего просмотра кодирования с преобразованием и поэтому довольно близки друг к другу. Устройство дополнительно содержит процессор кодирования для генерации данных, кодированных с предсказанием, для текущего кадра, используя обработанные с помощью оконной функции данные для опережающего анализа, или для генерации данных, кодированных с преобразованием, для текущего кадра, используя данные окна для анализа с преобразованием.

Аудиодекодер для декодирования кодированного аудиосигнала содержит декодер параметров предсказания для выполнения декодирования данных для кадра, кодированного с предсказанием, из кодированного аудиосигнала и, для второй ветви, декодер параметров преобразования для выполнения декодирования данных для кадра, кодированного с преобразованием, из закодированного аудиосигнала.

Декодер параметров преобразования сконфигурирован для выполнения спектрально-временного преобразования, которое предпочтительно является подверженным искажениям преобразованием, таким как MDCT или MDST или любым другим подобным преобразованием, и для применения окна синтеза к преобразованным данным для получения данных для текущего кадра и будущего кадра. Окно синтеза, примененное аудиодекодером, таково, что оно имеет первую перекрывающуюся часть, смежную вторую неперекрывающуюся часть и смежную третью перекрывающуюся часть, при этом третья перекрывающаяся часть связана с дискретными значениями аудиосигнала для будущего кадра, а неперекрывающаяся часть связана с данными текущего кадра. Кроме того, чтобы иметь хорошее качество звука на стороне декодера, добавляющий перекрытие блок применяется для наложения и добавления обработанных с помощью окна синтеза дискретных значений, связанных с третьей перекрывающейся частью окна синтеза для текущего кадра, и обработанных с помощью окна синтеза дискретных значений, связанных с первой перекрывающейся частью окна синтеза для будущего кадра, для получения первой части дискретных значений аудиосигнала для будущего кадра, при этом оставшиеся дискретные значения аудиосигнала для будущего кадра являются обработанными с помощью окна синтеза дискретными значениями, связанными со второй неперекрывающейся частью окна синтеза для будущего кадра, полученной без добавления перекрытия, когда текущий кадр и будущий кадр содержат данные, кодированные с преобразованием.

Предпочтительные варианты воплощения настоящего изобретения имеют ту особенность, что опережающие просмотры для ветви кодирования с преобразованием, такой как ветвь TCX, и ветви кодирования с предсказанием, такой как ветвь ACELP, идентичны друг другу, так что оба режима кодирования имеют максимально доступный опережающий просмотр при ограничениях, накладываемых на задержку. Кроме того, является предпочтительным, чтобы перекрытие окна TCX ограничивалось частью опережающего просмотра, чтобы переключение с режима кодирования с преобразованием на режим кодирования с предсказанием от одного кадра к следующему кадру было легко осуществимо без каких-либо проблем с искажениями.

Дополнительной причиной ограничить перекрытие опережающим просмотром является желание не вводить задержку на стороне декодера. Если бы имелось окно TCX с опережающим просмотром в 10 мс и, например, перекрытием 20 мс, это ввело бы еще 10 мс задержки в декодере. Когда имеется окно TCX с опережающим просмотром в 10 мс и перекрытием в 10 мс, нет никакой дополнительной задержки на стороне декодера. Хорошим следствием этого является более легкое переключение.

Поэтому является предпочтительным, чтобы вторая неперекрывающаяся часть окна анализа и, конечно, окно синтеза простирались до конца текущего кадра, а третья перекрывающаяся часть начиналась только относительно будущего кадра. Кроме того, ненулевая часть окна анализа/синтеза кодирования TCX или кодирования с преобразованием выравнивается с началом кадра так, чтобы, опять же, было возможно легкое и низкое по эффективности переключение с одного режима на другой режим.

Кроме того, является предпочтительным, чтобы целый кадр, состоящий из множества подкадров, например четырех подкадров, мог быть или полностью кодирован в режиме кодирования с преобразованием (таком как режим TCX) или полностью кодирован в режиме кодирования с предсказанием (таком как режим ACELP).

Кроме того, является предпочтительным использовать не только одно окно анализа LPC, а два различных окна анализа LPC, где одно окно анализа LPC выровнено с центром четвертого подкадра и является окном анализа конца кадра, в то время как другое окно анализа выровнено с центром второго подкадра и является окном анализа середины кадра. Если кодер переключается на кодирование с преобразованием, то, тем не менее, является предпочтительным передавать только один набор данных коэффициентов LPC, полученный из анализа LPC, основанного на окне анализа LPC конца кадра. Кроме того, на стороне декодера является предпочтительным не использовать эти данные LPC непосредственно для синтеза кодирования с преобразованием, и, в частности, спектрального взвешивания коэффициентов TCX. Вместо этого предпочтительно интерполировать данные TCX, полученные из окна анализа LPC конца кадра текущего кадра с помощью данных, полученных окном анализа LPC конца кадра из прошлого кадра, то есть кадра, непосредственно предшествующего во времени текущему кадру. Путем передачи только одного набора коэффициентов LPC для целого кадра в режиме TCX может быть получено дополнительное уменьшение битовой скорости по сравнению с передачей двух наборов данных коэффициентов LPC для анализа середины кадра и анализа кадра конца. Однако, когда кодер переключается на режим ACELP, оба набора коэффициентов LPC передаются от кодера декодеру.

Кроме того, является предпочтительным, чтобы окно анализа LPC середины кадра заканчивалось сразу на следующей границе кадра текущего кадра и дополнительно простиралось в прошлый кадр. Это не вносит никакой задержки, так как прошлый кадр уже доступен и может использоваться без какой-либо задержки.

С другой стороны является предпочтительным, чтобы окно анализа конца кадра начиналось где-нибудь в пределах текущего кадра, а не в начале текущего кадра. Это, однако, не является проблемой, так как для формирования взвешивания TCX используется среднее набора данных LPC конца кадра для прошлого кадра и набора данных LPC кадра конца для текущего кадра, так что в итоге все данные в некотором смысле используются для вычисления коэффициентов LPC. Следовательно, начало окна анализа конца кадра предпочтительно находится в пределах части опережающего просмотра окна анализа конца прошлого кадра.

На стороне декодера получается значительно уменьшенное служебное сигнализирование для переключения с одного режима на другой режим. Причина состоит в том, что неперекрывающаяся часть окна синтеза, которая предпочтительно симметрична в своих пределах, не связана с дискретными значениями текущего кадра, а связана с дискретными значениями будущего кадра, и поэтому простирается только в пределах части опережающего просмотра, то есть только в будущем кадре. Следовательно, окно синтеза таково, что только первая перекрывающаяся часть, предпочтительно начинающаяся в средней части текущего кадра, находится в пределах текущего кадра, а вторая неперекрывающаяся часть простирается от конца первой перекрывающейся части до конца текущего кадра и, поэтому, вторая перекрывающаяся часть совпадает с частью опережающего просмотра. Поэтому, когда имеется переход от TCX к ACELP, данные, полученные из перекрывающейся части окна синтеза, просто отбрасываются и заменяются данными кодирования с предсказанием, которые доступны с самого начала будущего кадра из ветви ACELP.

С другой стороны, когда имеется переключение от ACELP к TCX, применяется специальное окно перехода, которое начинается сразу в начале текущего кадра, то есть кадра сразу после переключения, с неперекрывающейся части, так что не нужно реконструировать никакие данные, чтобы найти перекрывающихся "партнеров". Вместо этого неперекрывающаяся часть окна синтеза предоставляет правильные данные без какого-либо перекрытия и без какой-либо добавляющей перекрытие процедуры, необходимых в декодере. Только для перекрывающихся частей, то есть третьей части окна для текущего кадра и первой части окна для следующего кадра, добавляющая перекрытие процедура полезна и выполняется, чтобы иметь, как в прямом MDCT, непрерывное возрастание/затухание от одного блока к другому, чтобы в конце получить хорошее качество звука без необходимости увеличивать битовую скорость из-за критически дискретизированных свойств MDCT, что также известно в области техники под термином "устранение искажений во временной области (TDAC).

Кроме того, декодер полезен тем, что для режима кодирования ACELP передаются данные LPC, полученные из окна середины кадра и окна конца кадра в кодере, в то время как для режима кодирования TCX используется только один набор данных LPC, полученный из окна конца кадра. Однако, для декодированных спектрально взвешенных данных TCX переданные данные LPC как таковые не используются, а данные усредняются с соответствующими данными из окна анализа LPC конца кадра, полученного для прошлого кадра.

Ниже описаны предпочтительные варианты воплощения настоящего изобретения со ссылкой на прилагаемые чертежи, на которых:

фиг. 1a изображает блок-схему переключаемого аудиокодера;

фиг. 1b изображает блок-схему соответствующего переключаемого декодера;

фиг. 1c изображает более подробно декодер параметров преобразования, изображенный на фиг. 1b;

фиг. 1d изображает более подробно режим кодирования с преобразованием декодера на фиг. 1a;

фиг. 2a изображает предпочтительный вариант воплощения для блока применения оконной функции, применяемого в кодере для анализа LPC с одной стороны и анализа кодирования с преобразованием с другой стороны, он является представлением окна синтеза, используемого в декодере кодирования с преобразованием на фиг. 1b;

фиг. 2b изображает последовательность выровненных окон анализа LPC и окон TCX для промежутка времени более двух кадров;

фиг. 2c изображает ситуацию для перехода от TCX к ACELP и окно перехода для перехода от ACELP к TCX;

фиг. 3a изображает более подробно кодер на фиг. 1a;

фиг. 3b изображает процедуру анализа посредством синтеза для выбора режима кодирования для кадра;

фиг. 3c изображает дополнительный вариант воплощения для выбора между режимами для каждого кадра;

фиг. 4a изображает вычисление и использование данных LPC, полученных путем использования двух различных окон анализа LPC для текущего кадра;

фиг. 4b изображает использование данных LPC, полученных путем обработки с помощью оконной функции, используя окно анализа LPC для ветви TCX кодера;

фиг. 5a изображает окно анализа LPC для AMR-WB;

фиг. 5b изображает симметричные окна для AMR-WB+ для анализа LPC;

фиг. 5c изображает окна анализа LPC для кодера G.718;

фиг. 5d изображает окна анализа LPC, используемые в USAC; и

фиг. 6 изображает окно TCX для текущего кадра относительно окна анализа LPC для текущего кадра.

Фиг. 1a изображает устройство для кодирования аудиосигнала, имеющего поток дискретных значений аудиосигнала. Поступление дискретных значений аудиосигнала или аудиоданных в кодер показано под номером 100. Аудиоданные поступают в блок 102 применения оконной функции для применения окна анализа кодирования с предсказанием к потоку дискретных значений аудиосигнала для получения обработанных с помощью оконной функции данных для анализа с предсказанием. Блок 102 применения оконной функции дополнительно сконфигурирован применять окно анализа кодирования с преобразованием к потоку дискретных значений аудиосигнала для получения обработанных с помощью оконной функции данных для анализа с преобразованием. В зависимости от варианта осуществления окно LPC применяется не непосредственно к исходному сигналу, а к сигналу "с предыскажениями" (как в AMR-WB, AMR-WB+, G718 и USAC). С другой стороны, окно TCX применяется непосредственно к исходному сигналу (как в USAC). Однако оба окна могут также применяться к одним и тем же сигналам, или окно TCX может также применяться к обработанному аудиосигналу, полученному из исходного сигнала, посредством предыскажения или любого другого взвешивания, используемого для улучшения качества или эффективности сжатия.

Окно анализа кодирования с преобразованием связано с дискретными значениями аудиосигнала в текущем кадре дискретных значений аудиосигнала и с дискретными значениями аудиосигнала заданной части будущего кадра дискретных значений аудиосигнала, являющегося частью опережающего просмотра кодирования с преобразованием.

Кроме того, окно анализа кодирования с предсказанием связано с по меньшей мере частью дискретных значений аудиосигнала текущего кадра и с дискретными значениями аудиосигнала заданной части будущего кадра, являющегося частью опережающего просмотра кодирования с предсказанием.

Как указано в блоке 102, часть опережающего просмотра кодирования с преобразованием и часть опережающего просмотра кодирования с предсказанием выровнены друг с другом, что означает, что эти части или идентичны, или достаточно близки друг к другу, например, отличаются друг от друга менее чем 20% части опережающего просмотра кодирования с предсказанием или менее чем 20% части опережающего просмотра кодирования с преобразованием. Предпочтительно, когда части опережающего просмотра идентичны или отличаются друг от друга менее чем 5% части опережающего просмотра кодирования с предсказанием или менее чем 5% части опережающего просмотра кодирования с преобразованием.

Кодер дополнительно содержит процессор 104 кодирования для генерации данных, кодированных с предсказанием, для текущего кадра с использованием обработанных с помощью оконной функции данных для анализа с предсказанием или для генерации данных, кодированных с преобразованием, для текущего кадра с использованием обработанных с помощью оконной функции данных для анализа с преобразованием.

Кроме того, кодер предпочтительно содержит выходной интерфейс 106 для приема для текущего кадра и, фактически, для каждого кадра данных 108a LPC и данных, кодированных с преобразованием, (таких как данные TCX) или данных, кодированных с предсказанием, (данных ACELP) по линии 108b. Процессор 104 кодирования обеспечивает эти два вида данных и принимает, в качестве входной информации, обработанные с помощью оконной функции данные для анализа с предсказанием, обозначенные как 110a, и обработанные с помощью оконной функции данные для анализа с преобразованием, обозначенные как 110b. Кроме того, устройство для кодирования содержит селектор режима кодирования или контроллер 112, который принимает в качестве входных данных аудиоданные 100 и который обеспечивает в качестве выходных данных управляющую информацию для процессора 104 кодирования через линии 114a управления или управляющую информацию для выходного интерфейса 106 через линию 114b управления.

Фиг. 3a показывает более подробно процессор 104 кодирования и блок 102 применения оконной функции. Блок 102 применения оконной функции предпочтительно содержит в качестве первого модуля блок 102a применения оконной функции анализа кодирования с предсказанием или LPC и в качестве второго компонента или модуля блок 102b применения оконной функции кодирования с преобразованием (такой как блок применения оконной функции TCX). Как показано стрелкой 300, окно анализа LPC и окно TCX выровнены друг с другом, так что части опережающего просмотра обоих окон идентичны друг другу, что означает, что обе части опережающего просмотра простираются до одного и того же момента времени в будущий кадр. Верхняя ветвь на фиг. 3a от блока 102a применения оконной функции LPC и далее вправо является ветвью кодирования с предсказанием, содержащей LPC анализатор и интерполятор 302, фильтр перцепционного взвешивания или блок 304 взвешивания и вычислитель 306 параметров кодирования с предсказанием, такой как вычислитель параметров ACELP. Аудиоданные 100 обеспечиваются для блока 102a применения оконной функции LPC и блока 304 перцепционного взвешивания. Кроме того, аудиоданные обеспечиваются для блока применения оконной функции TCX, и нижняя ветвь от выхода блока применения оконной функции TCX вправо составляет ветвь кодирования с преобразованием. Эта ветвь кодирования с преобразованием содержит блок 310 частотно-временного преобразования, блок 312 спектрального взвешивания и блок 314 кодирования с обработкой/