Устройство и способ для кодирования части аудиосигнала с использованием обнаружения неустановившегося состояния и результата качества
Иллюстрации
Показать всеИзобретение относится к технологиям кодирования аудиосигналов. Техническим результатом является повышение эффективности кодирования аудиосигналов за счет определения алгоритма кодирования, исходя из обнаружения значения результата качества аудиосигнала и обнаружения неустановившегося состояния. Предложено устройство для кодирования части аудиосигнала для получения кодированного аудиосигнала для части аудиосигнала. Устройство содержит детектор неустановившегося состояния для обнаружения того, располагается ли неустановившийся сигнал в части аудиосигнала, чтобы получать результат обнаружения неустановившегося состояния. Устройство также содержит каскад кодировщика для выполнения первого алгоритма кодирования над аудиосигналом, чтобы получить первое значение результата качества адуиосигнала для упомянутой части аудиосигнала, при этом первый алгоритм кодирования имеет первую характеристику, и для выполнения второго алгоритма кодирования над аудиосигналом, чтобы получить второе значение результата качества аудиосигнала, при этом второй алгоритм кодирования имеет вторую характеристику, которая является отличной от первой характеристики. 3 н. и 12 з.п. ф-лы, 8 ил.
Реферат
Настоящее изобретение относится к аудиокодированию и, в частности, к коммутируемому аудиокодированию, причем для разных временных частей кодированный сигнал генерируется с использованием разных алгоритмов кодирования.
Известны коммутируемые аудиокодеры, которые определяют разные алгоритмы кодирования для разных частей аудиосигнала. Примером является так называемый расширенный адаптивный многоскоростной широкополосный кодек или кодек AMR-WB+, определенный в международном стандарте 3GPP TS 26.290 V6.1.0 2004-12. В этой технической спецификации описывается принцип кодирования, который расширяет основанный на ACELP (алгебраическое линейное предсказание с кодовым возбуждением) кодек AMR-WB посредством добавления TCX (возбуждение с кодированным преобразованием), расширение полосы пропускания, и стерео. Аудиокодек AMR-WB+ обрабатывает входные кадры, равные 2048 выборкам, на внутренней частоте дискретизации FS. Внутренняя частота дискретизации является ограниченной диапазоном от 12,800 до 38,400 Гц. Кадры из 2048 выборок разбиваются на два критически дискретизированных равных частотных диапазона. Это дает в результате два суперкадра из 1024 выборок, соответствующих низкочастотному (LF) и высокочастотному (HF) диапазонам. Каждый суперкадр разделяется на четыре кадра из 256 выборок. Дискретизация на внутренней частоте выборки получается посредством использования переменной схемы преобразования дискретизации, которая повторно дискретизирует входной сигнал. Сигналы LF и HF затем кодируются с использованием двух разных подходов. Сигнал LF кодируется и декодируется с использованием "базового" кодировщика/декодера, на основе коммутируемых ACELP и TCX. В режиме ACELP, используется стандартный кодек AMR-WB. Сигнал HF кодируется с помощью относительно малого количества битов (16 бит/кадр) с использованием способа расширения полосы пропускания (BWE).
Параметры, передаваемые от кодировщика к декодеру, являются битами выбора режима, параметрами LF и параметрами сигнала HF. Параметры для каждого суперкадра из 1024 выборок разбиваются на четыре пакета одинакового размера. Когда входной сигнал является стерео, левый и правый каналы объединяются в сигналы моно для кодирования ACELP-TCX, тогда как стереокодирование принимает оба входных канала. В структуре декодера AMR-WB+, диапазоны LF и HF декодируются отдельно. Затем диапазоны объединяются в наборе фильтров синтеза. Если вывод ограничен только моно, параметры стерео пропускаются и декодер работает в режиме моно.
При кодировании сигнала LF кодек AMR-WB+ применяет анализ LP (линейное предсказание) как для режима ACELP, так и режима TCX. Коэффициенты LP линейно интерполируются на каждом подкадре из 64 выборок. Окно анализа LP является полукосинусом длины 384 выборок. Режим кодирования выбирается на основе способа анализа посредством синтеза с обратной связью. Только кадры из 256 выборок рассматриваются для кадров ACELP, тогда как кадры 256, 512 или 1024 выборок возможны в режиме TCX. Кодирование ACELP состоит из анализа и синтеза с долгосрочным предсказанием (LTP) и возбуждения алгебраической кодовой книги. В режиме TCX перцепционно взвешенный сигнал обрабатывается в области преобразования. Преобразованный посредством преобразования Фурье взвешенный сигнал квантуется с использованием квантования многовесовой решетки расщепления (алгебраического векторного квантования). Преобразование вычисляется в окнах из 1024, 512 или 256 выборок. Сигнал возбуждения восстанавливается посредством обратной фильтрации квантованного взвешенного сигнала посредством обратного взвешивающего фильтра. Чтобы определять, должна ли некоторая часть аудиосигнала кодироваться с использованием режима ACELP или режима TCX, используется выбор режима с обратной связью или выбор режима без обратной связи. При выборе режима с обратной связью используются 11 последовательных испытаний. После испытания, выбор режима осуществляется между двумя режимами, подлежащими сравнению. Критерием выбора является среднее сегментное SNR (отношение сигнала к шуму) между взвешенным аудиосигналом и синтезированным взвешенным аудиосигналом. Следовательно, кодировщик выполняет полное кодирование в обоих алгоритмах кодирования, полное декодирование в соответствии с обоими алгоритмами кодирования, и, затем, результаты обеих операций кодирования/декодирования сравниваются с исходным сигналом. Следовательно, для каждого алгоритма кодирования, т.е. ACELP с одной стороны и TCX с другой стороны, получается значение сегментного SNR, и используется алгоритм кодирования, имеющий более хорошее значение сегментного SNR или имеющий более хорошее значение среднего сегментного SNR, определенное на кадре посредством усреднения по значениям сегментного SNR для индивидуальных подкадров.
Дополнительная схема коммутируемого аудиокодирования является так называемым кодером USAC (USAC = унифицированное кодирование аудио и речи). Этот алгоритм кодирования описывается в ISO/IEC 23003-3. Общая структура может быть описана следующим образом. Сначала имеется общая система предварительной/последующей обработки функционального блока объемного звука MPEG, чтобы обрабатывать стерео, или многоканальная обработка и блок улучшенного SBR, генерирующий параметрическое представление более высоких аудиочастот входного сигнала. Затем, имеется две ветви, одна, состоящая из тракта инструментов модифицированного улучшенного кодирования аудио (AAC), и другая, состоящая из тракта на основе кодирования с линейным предсказанием (области LP или LPC), который, в свою очередь, обеспечивает либо представление частотной области, либо представление временной области остатка LPC. Все передаваемые спектры для обоих, AAC и LPC, представляются в области MDCT, следуя за квантованием и арифметическим кодированием. Представление временной области использует схему кодирования с возбуждением ACELP. Функции декодера состоят в том, чтобы находить описание квантованных аудиоспектров или представление временной области в полезной нагрузке битового потока и чтобы декодировать квантованные значения и другую информацию восстановления. Следовательно, кодировщик вырабатывает два решения. Первое решение состоит в том, чтобы выполнять классификацию сигналов для решения касательно режима частотной области по отношению к области линейного предсказания. Второе решение состоит в том, чтобы определять, внутри области линейного предсказания (LPD), часть сигнала должна кодироваться с использованием ACELP или TCX.
Для применения схемы коммутируемого аудиокодирования в сценариях, где является необходимой очень низкая задержка, конкретное внимание должно уделяться частям кодирования на основе преобразования, так как эти части кодирования вводят некоторую задержку, которая зависит от длины преобразования и формы окна. Поэтому принцип кодирования USAC не является подходящим для приложений с очень низкой задержкой вследствие того, что ветвь модифицированного кодирования AAC имеет значительную длину преобразования и адаптацию длины (также известную как коммутация блоков), включая сюда переходные окна.
С другой стороны, было найдено, что принцип кодирования AMR-WB+ является проблематичным из-за решения на стороне кодировщика относительно того, должен ли использоваться ACELP или TCX. ACELP обеспечивает хорошую эффективность кодирования, но может давать результатом значительные проблемы качества аудио, когда часть сигнала не является подходящей для режима кодирования ACELP. Следовательно, по причинам качества могут склоняться использовать TCX всякий раз, когда входной сигнал не содержит речь. Однако чрезмерное использование TCX при низких скоростях передачи битов дает в результате проблемы скорости передачи битов, так как TCX обеспечивает относительно низкую эффективность кодирования. Поэтому, когда в большей степени имеется ориентация на эффективность кодирования, могут использовать ACELP всякий раз, когда возможно, но, как утверждалось ранее, это может давать результатом проблемы качества аудио вследствие того факта, что ACELP не является оптимальным, например, для музыкальных и аналогичных стационарных сигналов.
Вычисление сегментного SNR является мерой качества, которая определяет более хороший режим кодирования на основе только результата, т.е. является ли SNR между исходным сигналом или кодированным/декодированным сигналом более хорошим, так что используется алгоритм кодирования, дающий результатом более хорошее SNR. Это, однако, всегда должно работать при ограничениях скорости передачи битов. Поэтому, было найдено, что использование только меры качества, такой как, например, мера сегментного SNR не всегда дает в результате наилучший компромисс между качеством и скоростью передачи битов.
Целью настоящего изобретения является обеспечить улучшенный принцип для кодирования части аудиосигнала.
Эта цель достигается посредством устройства для кодирования части аудиосигнала по пункту 1 формулы изобретения или способа для кодирования части аудиосигнала по п. 14 формулы изобретения.
Настоящее изобретение основывается на обнаружении, что более хорошее решение выбора между первым алгоритмом кодирования, подходящим для более неустановившихся (неустановившихся) частей сигнала, и вторым алгоритмом кодирования, подходящим для более стационарных частей сигнала, может получаться, когда решение выбора основывается не только на мере качества, но, дополнительно, на результате обнаружения неустановившегося состояния. В то время как мера качества рассматривает только результат цепи кодирования/декодирования по отношению к исходному сигналу, результат обнаружения неустановившегося состояния дополнительно полагается на анализ одного исходного входного аудиосигнала. В результате было обнаружено, что комбинация обеих мер, т.е. результата качества с одной стороны и результата обнаружения неустановившегося состояния с другой стороны для окончательного определения того, какая часть аудиосигнала должна кодироваться посредством какого алгоритма кодирования, ведет к улучшенному компромиссу между эффективностью кодирования с одной стороны и качеством аудио с другой стороны.
Устройство для кодирования части аудиосигнала, чтобы получать кодированный аудиосигнал для части аудиосигнала, содержит детектор неустановившегося состояния для обнаружения, располагается ли неустановившийся сигнал в части аудиосигнала, чтобы получать результат обнаружения неустановившегося состояния. Устройство дополнительно содержит каскад кодировщика для выполнения первого алгоритма кодирования над аудиосигналом, при этом первый алгоритм кодирования имеет первую характеристику, и для выполнения второго алгоритма кодирования над аудиосигналом, при этом второй алгоритм кодирования имеет вторую характеристику, которая является отличной от первой характеристики. В одном варианте осуществления, первая характеристика, связанная с первым алгоритмом кодирования, является более подходящей для более неустановившегося сигнала, и вторая характеристика кодирования, связанная со вторым алгоритмом кодирования, является более подходящей для более стационарных аудиосигналов. В качестве примера, первый алгоритм кодирования является алгоритмом кодирования ACELP и второй алгоритм кодирования является алгоритмом кодирования TCX, который может основываться на модифицированном дискретном косинусном преобразовании, преобразовании FFT или любом другом преобразовании или наборе фильтров. Дополнительно, процессор обеспечивается для определения того, какой алгоритм кодирования дает в результате кодированный аудиосигнал, который является более хорошей аппроксимацией для части аудиосигнала, чтобы получать результат качества. Дополнительно, обеспечивается контроллер, где контроллер сконфигурирован для определения, генерировать ли кодированный аудиосигнал для части аудиосигнала посредством либо первого алгоритма кодирования, либо второго алгоритма кодирования. В соответствии с изобретением, контроллер сконфигурирован для выполнения этого определения не только на основе результата качества, но, дополнительно, на основе результата обнаружения неустановившегося состояния.
В одном варианте осуществления, контроллер сконфигурирован для определения второго алгоритма кодирования, хотя результат качества показывает более хорошее качество для первого алгоритма кодирования, когда результат обнаружения неустановившегося состояния показывает установившийся (не переходный) сигнал. Дополнительно, контроллер сконфигурирован для определения первого алгоритма кодирования, хотя результат качества показывает более хорошее качество для второго алгоритма кодирования, когда результат обнаружения неустановившегося состояния показывает неустановившийся сигнал.
В дополнительном варианте осуществления, это определение, в котором результат неустановившегося состояния может отрицать результат качества, улучшается с использованием гистерезисной функции, так что второй алгоритм кодирования определяется только тогда, когда количество более ранних частей сигнала, для которых был определен первый алгоритм кодирования, является более маленьким, чем предопределенное количество. Аналогично, контроллер сконфигурирован с возможностью определять только первый алгоритм кодирования, когда количество более ранних частей сигнала, для которых в прошлом был определен второй алгоритм кодирования, является более маленьким, чем предопределенное количество. Преимущество от гистерезисной обработки состоит в том, что количество переключений между режимами кодирования уменьшается для некоторых входных сигналов. Слишком частое переключение в критических точках в сигнале может генерировать слышимые артефакты особенно для низких скоростей передачи битов. Вероятность таких артефактов уменьшается посредством реализации гистерезиса.
В дополнительном варианте осуществления, предпочтение отдается результату качества по отношению к результату обнаружения неустановившегося состояния, когда результат качества показывает сильное преимущество качества для одного алгоритма кодирования. Затем, алгоритм кодирования, имеющий намного более хороший результат качества, чем другой алгоритм кодирования, выбирается независимо от того, является ли сигнал неустановившимся сигналом или нет. С другой стороны, результат обнаружения неустановившегося состояния может становиться решающим, когда различие в качестве между обоими алгоритмами кодирования не является настолько высоким. С этой целью, является предпочтительным определять не только бинарный результат качества, но количественный результат качества. Бинарный результат качества показывает только то, какой алгоритм кодирования дает в результате более хорошее качество, тогда как количественный результат качества не только определяет то, какой алгоритм кодирования дает в результате более хорошее качество, но и насколько более хорошим является соответствующий алгоритм кодирования. С другой стороны, могут также использовать количественный результат обнаружения неустановившегося состояния, но, в основном, бинарный результат обнаружения неустановившегося состояния также является достаточным.
Следовательно, настоящее изобретение обеспечивает конкретное преимущество по отношению к хорошему компромиссу между скоростью передачи битов с одной стороны и качеством с другой стороны, так как, для неустановившихся сигналов, выбирается алгоритм кодирования, дающий результатом меньшее качество. Когда результат качества отдает предпочтение, например, решению выбора TCX, тем не менее выбирается режим ACELP, что может давать результатом слегка уменьшенное качество аудио, но, в конце, дает в результате более высокую эффективность кодирования, связанную с использованием режима ACELP.
Когда, с другой стороны, результат качества отдает предпочтение кадру ACELP, тем не менее, для установившихся сигналов принимается решение выбора TCX. Следовательно, слегка меньшая эффективность кодирования принимается в пользу более хорошего качества аудио.
Таким образом, настоящее изобретение дает в результате улучшенный компромисс между качеством и скоростью передачи битов вследствие того факта, что рассматривается не только качество кодированного и снова декодированного сигнала, но, в дополнение, также фактически подлежащий кодированию входной сигнал анализируется по отношению к его характеристике переходного процесса и результат этого анализа неустановившегося состояния используется, чтобы дополнительно влиять на решение выбора алгоритма, более подходящего для неустановившихся сигналов, или алгоритма, более подходящего для стационарных сигналов.
Дополнительные варианты осуществления настоящего изобретения далее иллюстрируются с помощью ссылки на сопровождающие чертежи, на которых:
Фиг. 1 иллюстрирует блок-схему устройства для кодирования части аудиосигнала в соответствии с одним вариантом осуществления;
Фиг. 2 иллюстрирует таблицу для двух разных алгоритмов кодирования и сигналы, для которых они являются подходящими;
Фиг. 3 иллюстрирует обзор в отношении условия качества, условия неустановившегося состояния и условия гистерезиса, которые могут применяться независимо друг от друга, но которые, предпочтительно, применяются объединенно;
Фиг. 4 иллюстрирует таблицу состояний, показывающую, выполняется ли переключение или нет для разных ситуаций;
Фиг. 5 иллюстрирует блок-схему последовательности операций для определения результата неустановившегося состояния в одном варианте осуществления;
Фиг. 6А иллюстрирует блок-схему последовательности операций для определения результата качества в одном варианте осуществления;
Фиг. 6В иллюстрирует больше деталей в отношении результата качества из фиг. 6a; и
Фиг. 7 иллюстрирует более подробно блок-схему устройства для кодирования в соответствии с одним вариантом осуществления.
Фиг. 1 иллюстрирует устройство для кодирования части аудиосигнала, обеспечиваемого на входной линии 10. Часть аудиосигнала вводится в детектор 12 неустановившегося состояния для обнаружения, располагается ли неустановившийся сигнал в части аудиосигнала, чтобы получать результат обнаружения неустановившегося состояния на линии 14. Дополнительно, обеспечивается каскад 16 кодировщика, при этом каскад кодировщика сконфигурирован для выполнения первого алгоритма кодирования над аудиосигналом, при этом первый алгоритм кодирования имеет первую характеристику. Дополнительно, каскад 16 кодировщика сконфигурирован для выполнения второго алгоритма кодирования над аудиосигналом, при этом второй алгоритм кодирования имеет вторую характеристику, которая является отличной от первой характеристики.
Дополнительно, устройство содержит процессор 18 для определения того, какой алгоритм кодирования из первого и второго алгоритмов кодирования дает в результате кодированный аудиосигнал, который является более хорошей аппроксимацией для части исходного аудиосигнала. Процессор 18 генерирует результат качества на основе этого определения на линии 20. Результат качества на линии 20 и результат обнаружения неустановившегося состояния на линии 14, оба, обеспечиваются в контроллер 22. Контроллер 22 сконфигурирован с возможностью определения того, генерировать ли кодированный аудиосигнал для части аудиосигнала посредством либо первого алгоритма кодирования, либо второго алгоритма кодирования. Для этого определения используются не только результат 20 качества, но также результат 14 обнаружения неустановившегося состояния. Дополнительно, необязательно обеспечивается выходной интерфейс 24, при этом выходной интерфейс выводит кодированный аудиосигнал как, например, битовый поток или другое представление кодированного сигнала, по линии 26.
В одном варианте осуществления там, где каскад 16 кодировщика выполняет обработку анализа посредством синтеза, каскад 16 кодировщика принимает ту же часть аудиосигнала и кодирует часть этого аудиосигнала посредством первого алгоритма кодирования, чтобы получать первое кодированное представление части аудиосигнала. Дополнительно, каскад кодировщика генерирует кодированное представление той же части аудиосигнала с использованием второго алгоритма кодирования. Дополнительно, каскад 16 кодировщика содержит, в этой обработке анализа посредством синтеза, декодеры для обоих первого алгоритма кодирования и второго алгоритма кодирования. Один соответствующий декодер декодирует первое кодированное представление с использованием алгоритма декодирования, связанного с первым алгоритмом кодирования. Дополнительно, обеспечивается декодер для выполнения дополнительного алгоритма декодирования, связанного со вторым алгоритмом кодирования, так что, в конце, каскад кодировщика не только имеет два кодированных представления для одной и той же части аудиосигнала, но также два декодированных сигнала для одной и той же части исходного аудиосигнала на линии 10. Эти два декодированных сигнала затем обеспечиваются в процессор посредством линии 28 и процессор сравнивает оба декодированные представления с такой же частью исходного аудиосигнала, полученного посредством ввода 30. Затем определяется сегментное SNR для каждого алгоритма кодирования. Этот так называемый результат качества обеспечивает, в одном варианте осуществления, не только индикацию более хорошего алгоритма кодирования, т.е. бинарный сигнал, относящийся к тому, дал ли первый алгоритм кодирования или второй алгоритм кодирования результатом более хороший SNR. Дополнительно, результат качества показывает количественную информацию, т.е. насколько более хорошим, например, в дБ, является соответствующий алгоритм кодирования.
В этой ситуации контроллер, когда полностью полагается на результат 20 качества, осуществляет доступ к каскаду кодировщика посредством линии 32, так что каскад кодировщика передает уже сохраненное кодированное представление соответствующего алгоритма кодирования в выходной интерфейс 24, так что это кодированное представление представляет соответствующую часть исходного аудиосигнала в кодированном аудиосигнале.
Альтернативно, когда процессор 18 выполняет режим без обратной связи для определения результата качества, не является необходимым, чтобы оба алгоритма кодирования применялись к одной и той же части аудиосигнала. Вместо этого, процессор 18 определяет то, какой алгоритм кодирования является более хорошим, и, затем, каскад 16 кодировщика управляется через линию 28, чтобы только применять алгоритм кодирования, показанный посредством процессора, и, затем, это кодированное представление, полученное в результате выбранного алгоритма кодирования, обеспечивается в выходной интерфейс 24 посредством линии 34.
В зависимости от конкретного варианта осуществления каскада 16 кодировщика, оба алгоритма кодирования могут работать в области LPC. В этом случае, как, например, для ACELP в качестве первого алгоритма кодирования и TCX в качестве второго алгоритма кодирования, выполняется общая предварительная обработка LPC. Эта предварительная обработка LPC может содержать анализ LPC части аудиосигнала, который определяет коэффициенты LPC для части аудиосигнала. Затем фильтр анализа LPC регулируется с использованием определенных коэффициентов LPC и исходный аудиосигнал фильтруется посредством этого фильтра анализа LPC. Затем каскад кодировщика вычисляет разность для каждой выборки между выходом фильтра анализа LPC и входным сигналом аудио, чтобы вычислять сигнал остатка LPC, который затем подвергается первому алгоритму кодирования или второму алгоритму кодирования в режиме без обратной связи или который обеспечивается в оба алгоритма кодирования в режиме с обратной связью, как описано ранее. Альтернативно, фильтрация посредством фильтра LPC и определение по выборкам сигнала остатка может заменяться технологией FDNS (формирование шума частотной области), описанной в стандарте USAC.
Фиг. 2 иллюстрирует предпочтительный вариант осуществления каскада кодировщика. В качестве первого алгоритма кодирования используется алгоритм кодирования ACELP, имеющий характеристику кодирования CELP. Дополнительно, этот алгоритм кодирования является более подходящим для неустановившихся сигналов. Второй алгоритм кодирования имеет характеристику кодирования, которая делает этот второй алгоритм кодирования более подходящим для установившихся сигналов. В качестве примера используется алгоритм кодирования возбуждения с преобразованием, такой как TCX и, конкретно, является предпочтительным алгоритм кодирования TCX 20, который имеет длину кадра 20 мс (длина окна может быть более высокой вследствие перекрывания), что делает принцип кодирования, проиллюстрированный на фиг. 1, особенно подходящим для вариантов осуществления с низкой задержкой, которые требуются в сценариях реального времени, таких как сценарии, где имеется двусторонняя связь как в приложениях телефонии и, конкретно, в приложениях мобильной или сотовой телефонии.
Однако настоящее изобретение является дополнительно полезным в других комбинациях первого и второго алгоритмов кодирования. В качестве примера, первый алгоритм кодирования, более подходящий для неустановившихся сигналов, может содержать любой из хорошо известных кодировщиков временной области, таких как используемые в GSM кодировщики (G.729) или любые другие кодировщики временной области. Алгоритм кодирования установившегося сигнала, с другой стороны, может быть любым хорошо известным кодировщиком области преобразования, таким как MP3, AAC, AC3, или любым другим преобразованием, или алгоритмом кодирования аудио на основе набора фильтров. Для варианта осуществления с низкой задержкой, однако, является предпочтительной комбинация ACELP с одной стороны и TCX с другой стороны, при этом, в частности, кодировщик TCX может основываться на FFT или даже более предпочтительно на MDCT с короткой длиной окна. Следовательно, оба алгоритма кодирования работают в области LPC, полученной посредством преобразования аудиосигнала в область LPC с использованием фильтра анализа LPC. Однако ACELP тогда работает во "временной" области LPC, в то время как кодировщик TCX работает в "частотной" области LPC.
Далее, предпочтительный вариант осуществления контроллера 22 из фиг. 1 описывается в контексте фиг. 3.
Предпочтительно переключение между первым алгоритмом кодирования, таким как ACELP, и вторым алгоритмом кодирования, таким как TCX 20, выполняется с использованием трех условий. Первое условие является условием качества, представленным посредством результата 20 качества из фиг. 1. Второе условие является условием неустановившегося состояния, представленным посредством результата обнаружения неустановившегося состояния на линии 14 из фиг. 1. Третье условие является условием гистерезиса, которое полагается на решения, выработанные контроллером 22 в прошлом, т.е. для более ранних частей аудиосигнала.
Условие качества осуществляется так, что переключение на алгоритм кодирования более высокого качества выполняется, когда условие качества показывает большое расстояние качества между первым алгоритмом кодирования и вторым алгоритмом кодирования. Когда, например, определяется, что один алгоритм кодирования превосходит другой алгоритм кодирования на, например, разницу SNR в один дБ, то условие качества определяет переключение или, формулируя иначе, фактически используемый алгоритм кодирования для фактически рассматриваемой части аудиосигнала независимо от какого-либо обнаружения неустановившегося состояния или ситуации гистерезиса.
Когда, однако, условие качества показывает только маленькое расстояние качества между обоими алгоритмами кодирования, такое как расстояние качества разницы SNR в один или менее дБ, может происходить переключение на алгоритм кодирования более низкого качества, когда результат обнаружения неустановившегося состояния показывает, что алгоритм кодирования более низкого качества соответствует характеристике аудиосигнала, т.е. является ли аудиосигнал неустановившимся или нет. Когда, однако, результат обнаружения неустановившегося состояния показывает, что алгоритм кодирования более низкого качества не соответствует характеристике аудиосигнала, то должен использоваться алгоритм кодирования более высокого качества. В последнем случае, еще раз, условие качества определяет результат, но только когда конкретное сопоставление между алгоритмом кодирования более низкого качества и нестационарной (неустановившейся)/стационарной ситуацией аудиосигнала не соответствуют друг другу.
Условие гистерезиса является особенно полезным в комбинации с условием неустановившегося состояния, т.е. в том, что переключение на алгоритм кодирования более низкого качества выполняется только тогда, когда меньше, чем последние N кадров были закодированы с помощью другого алгоритма. В предпочтительных вариантах осуществления N равняется пяти кадрам, но также могут использоваться другие значения, предпочтительно более низкие или равные N кадрам или частям сигнала, каждая содержит минимальное количество выборок выше, например, 128 выборок.
Фиг. 4 иллюстрирует таблицу изменений состояний в зависимости от некоторых ситуаций. Левый столбец показывает ситуацию, где количество более ранних кадров больше, чем N или меньше, чем N для либо TCX, либо ACELP.
Последняя строка показывает, имеется ли большое расстояние качества для TCX или большое расстояние качества для ACELP. В тех двух случаях, которые являются первыми двумя столбцами, изменение выполняется там, где показано посредством "X", в то время как изменение не выполняется, как показано посредством "0".
Дополнительно, последние два столбца показывают ситуацию, когда определяется маленькое расстояние качества для TCX и когда обнаруживается неустановившийся сигнал, или когда определяется маленькое расстояние качества для ACELP, и часть сигнала обнаруживается как являющаяся установившейся.
Первые две строки последних двух столбцов обе показывают, что результат качества является решающим, когда количество более ранних кадров больше, чем 10. Следовательно, когда имеется сильная индикация из прошлого для одного алгоритма кодирования, то обнаружение неустановившегося состояния не играет роли тоже.
Когда, однако, количество более ранних кадров, которые кодированы в одном из двух алгоритмов кодирования, является более маленьким, чем N, выполняется переключение от TCX на ACELP, показанное в поле 40 для неустановившихся сигналов. Дополнительно, как показано в поле 41, изменение с ACELP на TCX выполняется, даже когда имеется маленькое расстояние качества в пользу ACELP, вследствие того факта, что мы имеем установившийся сигнал. Когда количество последних кадров LCLP является более маленьким, чем N, последующий кадр также кодируется с помощью ACELP и, поэтому, нет необходимости в переключении, как показано в поле 42. Когда, дополнительно, количество кадров TCX является более маленьким, чем N, и когда имеется маленькое расстояние качества для ACELP и сигнал является установившимся, текущий кадр кодируется с использованием TCX и, нет необходимости в переключении, как показано посредством поля 43. Следовательно, влияние гистерезиса ясно видно из сравнения полей 42, 43 с четырьмя полями выше этих двух полей.
Следовательно, настоящее изобретение предпочтительно влияет на гистерезис для решения с обратной связью посредством вывода детектора неустановившегося состояния. Поэтому, не существует, как в AMR-WB+, чистого решения с обратной связью относительно того, выбрать ли TCX или ACELP. Вместо этого, на вычисление с обратной связью влияет результат обнаружения неустановившегося состояния, т.е. в аудиосигнале определяется каждая неустановившаяся часть сигнала. Решение в отношении того, вычислять ли кадр ACELP или кадр TCX, поэтому, зависит не только от вычислений с обратной связью, или, в общем, результата качества, но дополнительно зависит от того, обнаружено ли неустановившееся состояние или нет.
Другими словами, гистерезис для определения того, какой алгоритм кодирования должен использоваться для текущего кадра, может быть выражен следующим образом:
когда результат качества для TCX является слегка более маленьким, чем результат качества для ACELP, и когда в текущее время рассматриваемые части сигнала или только текущий кадр не является неустановившимся, тогда используется TCX вместо ACELP.
Когда, с другой стороны, результат качества для ACELP является слегка более маленьким, чем результат качества для TCX, и когда кадр является неустановившимся, тогда используется ACELP вместо TCX. Предпочтительно, мера плоскостности вычисляется как результат обнаружения неустановившегося состояния, который является количественным числом. Когда плоскостность больше чем или равна некоторому значению, тогда определяется, что кадр является неустановившимся (с неустановившимся состоянием). Когда, с другой стороны, плоскостность является более маленькой, чем это пороговое значение, тогда определяется, что кадр является установившимся (с установившимся состоянием). В качестве порога предпочтительна мера плоскостности, равная двум, где вычисление плоскостности описывается более подробно на фиг. 5.
Дополнительно, в отношении результата качества, количественная мера является предпочтительной. Когда используется мера SNR или, в частности, мера сегментного SNR, тогда признак "слегка меньший" как использовался ранее, может означать на один дБ меньше. Следовательно, когда отношения SNR для TCX и ACELP являются более отличными друг от друга, или, формулируя иначе, когда абсолютное различие между обоими значениями SNR больше, чем один дБ, тогда условие качества из фиг. 3 одно определяет алгоритм кодирования для текущей части аудиосигнала.
Вышеописанное решение может дополнительно конкретизироваться, когда обнаружение неустановившегося состояния или вывод гистерезиса или SNR для TCX или ACELP прошлых или более ранних кадров включается в условие "если". В результате, строится гистерезис, который, для одного варианта осуществления, проиллюстрирован на фиг. 3 как условие номер 3. В частности, фиг. 3 иллюстрирует альтернативу, когда вывод гистерезиса, т.е. определение для прошлого, используется для модификации условия неустановившегося состояния.
Альтернативно, дополнительное условие гистерезиса, которое основывается на более ранних отношениях SNR для TCX или ACELP, может содержать то, что определение для алгоритма кодирования более низкого качества выполняется только тогда, когда изменение в различии SNR по отношению к более раннему кадру является более низким, чем, например, некоторый порог. Дополнительный вариант осуществления может содержать использование результата обнаружения неустановившегося состояния для одного или нескольких более ранних кадров, когда результат обнаружения неустановившегося состояния является количественным числом. Тогда, переключение на алгоритм кодирования более низкого качества может, например, выполняться, только когда изменение количественного результата обнаружения неустановившегося состояния от более раннего кадра к текущему кадру находится, снова, ниже некоторого порога. Другие комбинации этих чисел для дополнительной модификации условия 3 гистерезиса из фиг. 3 могут оказываться полезными, чтобы получать более хороший компромисс между скоростью передачи битов с одной стороны и качеством аудио с другой стороны.
Дополнительно, условие гистерезиса, как проиллюстрировано в контексте фиг. 3 и как описано ранее, может использоваться вместо или в дополнение к дополнительному гистерезису, который, например, основывается на внутренних данных анализа алгоритмов кодирования ACELP и TCX.
Далее, делается ссылка на фиг. 5 для иллюстрации предпочтительного определения результата обнаружения неустановившегося состояния на линии 14 из фиг. 1.
На этапе 50 аудиосигнал временной области, такой как входной сигнал PCM на линии 10, подвергается высокочастотной фильтрации, чтобы получать аудиосигнал, прошедший высокочастотную фильтрацию. Затем, на этапе 52, кадр подвергнутого высокочастотной фильтрации сигнала, который может быть равным части ауди