Переход от кодирования/декодирования с преобразованием к кодированию/декодированию с предсказанием

Изобретение относится к кодированию и декодированию цифрового звукового сигнала. Технический результат – обеспечение эффективного перехода от кодирования или декодирования с преобразованием к кодированию или декодированию с предсказанием. Способ декодирования содержит этапы декодирования в соответствии с декодированием с обратным преобразованием предыдущего кадра дискретных значений цифрового сигнала, при этом кадр принимается и кодируется в соответствии с кодированием с преобразованием, декодирования в соответствии с декодированием с предсказанием текущего кадра дискретных значений цифрового сигнала, при этом кадр принимается и кодируется в соответствии с кодированием с предсказанием. Декодирование с предсказанием текущего кадра представляет собой переходное декодирование с предсказанием, которое не использует никакой адаптивный словарь, обусловленный предыдущим кадром, и способ дополнительно включает этап повторной инициализации одного состояния декодирования с предсказанием заданным значением по умолчанию, этап сложения с перекрытием, который объединяет отрезок сигнала, синтезированный с помощью декодирования с предсказанием текущего кадра, и отрезок сигнала, синтезированный с помощью декодирования с обратным преобразованием, соответствующий сохраненному отрезку декодирования предыдущего кадра. 6 н. и 11 з.п. ф-лы, 10 ил.

 

Настоящее изобретение относится к области кодирования цифровых сигналов.

Кодирование в соответствии с изобретением приспособлено, в частности, для передачи и/или хранения цифровых звуковых сигналов, таких как сигналы звуковой частоты (речь, музыка или др.).

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

Для эффективного кодирования звуков речи рекомендуются методы типа CELP ("линейное предсказание с кодовым возбуждением") или его вариант ACELP ("линейное предсказание с алгебраическим кодовым возбуждением"), в последнее время также были предложены альтернативы кодированию CELP, такие как кодеры BV16, BV32, iLBC или SILK. С другой стороны, методы кодирования с преобразованием рекомендуются для эффективного кодирования музыкальных звуков.

Кодеры с линейным предсказанием, а более конкретно кодеры типа CELP, являются кодерами с предсказанием. Их цель состоит в том, чтобы смоделировать речеобразование на основе по меньшей мере некоторой части из следующих элементов: краткосрочного линейного предсказания для моделирования речевого тракта, долгосрочного предсказания для моделирования вибрации голосовых связок в вокализованный период, и возбуждения, полученного из словаря векторного квантования, в общем случае называемого фиксированным словарем (белый шум, алгебраическое возбуждение) для представления «новшества», которое не представлялось возможным моделировать с помощью предсказания.

Наиболее часто используемые кодеры с преобразованием (например, кодеры MPEG ААС или ITU-T G.722.1 Annex С) используют преобразования с критической дискретизацией типа MDCT ("модифицированное дискретное преобразование") так, чтобы сжать сигнал в преобразованной области. "Преобразование с критической дискретизацией" относится к преобразованию, для которого число коэффициентов в преобразованной области равно числу анализируемых временных дискретных значений.

Решение для эффективного кодирования сигнала, включающего эти два типа содержимого, состоит в выборе с течением времени (кадр за кадром) лучшего метода. Это решение, в частности, рекомендуется организацией по стандартизации 3GPP ("Проект партнерства 3-го поколения") посредством технологии под названием AMR WB+ (или Enhanced AMR-WB) и в последнее время посредством кодека MPEG-H USAC ("унифицированное звуковое кодирование речи"). Приложения, предусматриваемые AMR-WB+ и USAC, не являются разговорными, но соответствуют службам трансляции и хранения данных без значительных ограничений по алгоритмической задержке.

Стандарт USAC опубликован в документе ISO/IEC 23003-3:2012, Information technology - MPEG audio technologies - Part 3: Unified speech and audio coding.

В качестве примера, первоначальный вариант кодека USAC, называемый RM0 (Reference Model 0), описывается в статье М. Neuendorf et al., A Novel Scheme for Low Bitrate Unified Speech and Audio Coding - MPEG RMO, 7-10 May 2009, 126th AES Convention. Этот кодек чередует по меньшей мере два режима кодирования:

- Для сигналов речевого типа: режим LPD ("область линейного предсказания") с использованием метода ACELP

- Для сигналов музыкального типа: режим FD ("частотная область") с использованием метода MDCT ("модифицированного дискретного преобразования"). Принципы кодирования ACELP и MDCT упоминаются ниже в данном описании.

С одной стороны, кодирование CELP, в том числе его вариант ACELP, является кодированием с предсказанием, основанным на модели фильтра источника. В общем случае фильтр соответствует полюсному фильтру с передаточной функцией 1/A(z), полученной посредством линейного предсказания (LPC - кодирования с линейным предсказанием). На практике синтез использует квантованный вариант, , фильтра 1/A(z). Источник - другими словами возбуждение линейного фильтра с предсказанием - в общем случае представляет собой сочетание возбуждения, полученного посредством долгосрочного предсказания, который моделирует вибрацию голосовых связок, и стохастического возбуждения (или обновления), описанного в виде алгебраических кодов (ACELP), шумовых словарей и т.д. Поиск «оптимального» возбуждения осуществляется путем минимизации критерия квадратичной ошибки в области сигнала, взвешенного с помощью фильтра с передаточной функцией W(z), в общем случае получаемой из фильтра линейного предсказания A(z), вида W(z) = A(z/γ1)/A(z/γ2). Следует отметить, что были предложены многочисленные разновидности модели CELP, и здесь будет оставлен пример кодирования CELP стандарта UIT-T G.718, в котором два фильтра LPC квантуются покадрово и возбуждение LPC кодируется в зависимости от классификации, с режимами, приспособленными для вокализованных, невокализованных, переходных звуков и т.д. Кроме того, также были предложены альтернативы кодированию CELP, в том числе кодеры BV16, BV32, iLBC и SILK, которые до сих пор основываются на линейном предсказании. В общем случае кодирование с предсказанием, включая кодирование CELP, работает на ограниченных частотах дискретизации (≤16 кГц) по историческим и другим причинам (широкополосное ограничение линейного предсказания, алгоритмическая сложность для высоких частот и т.д.); таким образом, чтобы работать с частотами, как правило, от 16 до 48 кГц, также используются операции повторной дискретизации (посредством FIR-фильтра (фильтра с конечной импульсной характеристикой), блока фильтров или IIR-фильтра (фильтра с бесконечной импульсной характеристикой)) и, при необходимости, раздельное кодирование для верхней полосы, которая может быть параметрическим расширением полосы - эти операции повторной дискретизации и кодирования верхней полосы не рассматриваются в данном описании.

С другой стороны, кодирование с преобразованием MDCT разделено между тремя этапами в кодере:

1. Взвешивание сигнала с помощью окна, называемого в данном описании «окно MDCT» по длине, соответствующей 2-м блокам

2. Временное наложение спектров (или "наложение спектров во временной области") для формирования уменьшенного блока (с длиной, деленной на 2)

3. Преобразование DCT-IV ("дискретное косинусное преобразование") уменьшенного блока.

Следует отметить, что в разновидностях расчета преобразования типа TDAC может использоваться, например, преобразование Фурье (FFT) вместо преобразования DCT.

Окно MDCT в общем случае делится на 4 смежных части одинаковой длины, называемых "четверти".

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

Точнее, наложение спектров одной четверти на другую осуществляется следующим образом: Первое дискретное значение первой четверти добавляется к (или вычитается из) последнего дискретного значения второй четверти, второе дискретное значение первой четверти добавляется к (или вычитается из) предпоследнего дискретного значения второй четверти и так далее, и тому подобное до последнего дискретного значения первой четверти, которое добавляется к (или вычитается из) первого дискретного значения второй четверти.

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

Затем эти 2 четверти с эффектом наложения спектров кодируются совместно после преобразования DCT. Для следующего кадра происходит сдвиг на половину окна (то есть 50% перекрытие), третья и четвертая четверти предыдущего кадра становятся первой и второй четвертями текущего кадра. После наложения спектров передается вторая линейная комбинация тех же пар дискретных значений, что и в предыдущем кадре, но с разными весами.

Таким образом, в декодере после обратного преобразования DCT получается декодированный вариант этих наложенных сигналов. Два последовательных кадра содержат результат 2-х разных наложений спектра тех же 2 четвертей, то есть для каждой пары дискретных значений мы имеем результат 2-х линейных комбинаций с разными, но известными весами: следовательно, решается система уравнений для получения декодированного варианта входного сигнала, временное наложение спектров, таким образом, может быть распределено посредством использования 2 последовательных декодированных кадров.

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

Кодирование с преобразованием (включая кодирование типа MDCT) теоретически может быть легко адаптировано к различным входным и выходным частотам дискретизации, как показано в комбинированной реализации G.722.1 в приложении C, включая кодирование G.722.1; тем не менее, также можно использовать кодирование с преобразованием с операциями предварительной и заключительной обработки данных посредством повторной дискретизации (с помощью FIR-фильтра, блока фильтров или IIR-фильтра), при необходимости, с раздельным кодированием верхней полосы, которое может быть параметрическим расширением полосы - эти операции повторной дискретизации и кодирования верхней полосы не рассматриваются в данном описании, но 3GPP e-AAC+ кодер предоставляет примерный вариант осуществления такой комбинации (повторной дискретизации, кодирования с преобразованием нижней полосы и расширения полосы).

Следует отметить, что акустическая полоса, кодированная посредством разных режимов (линейного предсказания на основе временной LPD, преобразования на основе частотной FD) может изменяться в зависимости от выбранного режима и битовой скорости передачи данных. Кроме того, выбор режима может быть осуществлен в разомкнутом контуре для каждого кадра, то есть решение принимается априори в зависимости от данных и доступных наблюдений, или в замкнутом контуре, как при кодировании AMR-WB+.

В кодеках, использующих по меньшей мере два режима кодирования, переходы между режимами LPD и FD имеют большое значение в обеспечении достаточного качества без дефекта переключения, зная, что режимы FD и LPD являются режимами различных видов - один основан на кодировании с преобразованием в частотной области сигнала, в то время как другой использует (временное) кодирование с линейным предсказанием с использованием блоков памяти фильтров, которые обновляются в каждом кадре. Пример управления переключениями между режимами, соответствующий кодеку USAC RM0 подробно описан в статье J. Lecomte et al., "Efficient cross-fade windows for transitions between LPC-based and non-LPC based audio coding", 7-10 May 2009, 126th AES Convention. Как поясняется в этой статье, основная трудность заключается в переходах от режима LPD к режиму FD и наоборот.

С целью решения проблемы перехода от ядра типа FD к ядру типа LPD в заявке на патент, опубликованной под номером WO 2013/016262 (показана на фиг.1) предлагается обновлять блоки памяти фильтров кодека типа LPD (130), кодирующего m+1 кадр с использованием синтеза кодера, и декодера типа FD (140), кодирующего m кадр, при этом обновление блоков памяти необходимо только во время кодирования кадров типа FD. Таким образом, данный метод позволяет при осуществлении выбора в 110 режима кодирования и переключении (в 150) кодирования из типа FD в тип LPD, выполнить это без дефекта перехода (артефактов), так как при кодировании кадра методом LPD, блоки памяти (или состояния) кодера CELP (LPD) уже были обновлены с помощью генератора 160 на основе восстановленного сигнала кадра m. В случае, когда два ядра (FD и LDP) не работают на одинаковой частоте дискретизации, метод, описанный в заявке на патент WO 2013/016262, предлагает этап повторной дискретизации блоков памяти кодера типа FD.

Недостатком этого метода является то, что с одной стороны, это делает необходимым иметь доступ к декодированному сигналу в кодере и, следовательно, воздействовать на локальный синтез в кодере. С другой стороны, это делает необходимым осуществлять операции обновления блоков памяти фильтров (возможно включая этап повторной дискретизации) во время кодирования и декодирования типа FD, а также набор операций, сводящихся к проведению анализа/кодирования типа CELP в предыдущем кадре типа FD. Эти операции могут быть сложными и накладываются на обычные операции кодирования/декодирования в переходном кадре типа LPD, вызывая тем самым резкий рост сложности "многорежимного" кодирования.

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

Настоящее изобретение улучшает ситуацию.

Оно предлагает для этой цели способ декодирования цифрового звукового сигнала, включающий этапы:

- декодирования в соответствии с декодированием с обратным преобразованием предыдущего кадра дискретных значений цифрового сигнала, принятого и кодированного в соответствии с кодированием с преобразованием;

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

- этап повторной инициализации по меньшей мере одного состояния декодирования с предсказанием заданным значением по умолчанию;

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

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

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

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

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

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

Таким образом, декодированный текущий кадр обладает энергией, близкой к энергии исходного сигнала.

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

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

В одном варианте осуществления настоящего изобретения состояние декодирования с предсказанием находится в списке из следующих состояний:

- память состояния для фильтра для повторной дискретизации с внутренней частотой декодирования с предсказанием;

- блоки памяти состояний для фильтров предыскажений/компенсации предыскажений;

- коэффициенты фильтра линейного предсказания;

- память состояния синтезирующего фильтра (в области с предварительной частотной коррекцией);

- память адаптивного словаря (прошедшее возбуждение);

- память состояния низкочастотного постфильтра (LPF);

- память квантования для усиления фиксированного словаря.

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

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

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

В варианте осуществления вычисление коэффициентов фильтра линейного предсказания для текущего кадра включает следующие этапы:

- определение декодированных значений коэффициентов фильтра середины кадра с использованием декодированных значений коэффициентов фильтра конца кадра и заданного значения повторной инициализации коэффициентов фильтра начала кадра;

- замену декодированных значений коэффициентов фильтра начала кадра декодированными значениями коэффициентов фильтра середины кадра;

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

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

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

Таким образом, коэффициенты начала кадра считаются известными с заданным значением. Это позволяет получить коэффициенты полного кадра более точным образом и быстрее сделать устойчивым декодирование с предсказанием.

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

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

Изобретение также относится к способу кодирования цифрового звукового сигнала, включающему этапы:

- кодирования предыдущего кадра дискретных значений цифрового сигнала в соответствии с кодированием с преобразованием;

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

- этап повторной инициализации по меньшей мере одного состояния кодирования с предсказанием заданным значением по умолчанию.

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

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

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

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

Таким образом, преимущественно, по меньшей мере одно состояние кодирования с предсказанием кодируется в прямом порядке.

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

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

- определение кодированных значений коэффициентов фильтра середины кадра с использованием кодированных значений коэффициентов фильтра конца кадра и заданных значений повторной инициализации коэффициентов фильтра начала кадра;

- замену кодированных значений коэффициентов фильтра начала кадра декодированными значениями коэффициентов фильтра середины кадра;

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

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

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

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

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

Изобретение также относится к цифровому декодеру звукового сигнала, содержащему:

- элемент декодирования с обратным преобразованием, способный декодировать предыдущий кадр дискретных значений цифрового сигнала, полученный и кодированный в соответствии с кодированием с преобразованием;

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

- модуль повторной инициализации, способный повторно инициализировать заданным значением по умолчанию по меньшей мере одно состояние декодирования с предсказанием;

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

Подобным образом изобретение относится к кодеру цифрового звукового сигнала, содержащему:

- элемент кодирования с преобразованием, способный кодировать предыдущий кадр дискретных значений цифрового сигнала;

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

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

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

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

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

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

- на фиг. 1 показан описанный ранее процесс перехода от кодирования с преобразованием к кодированию с предсказанием согласно состоянию уровня техники;

- на фиг. 2 показан переход в кодере от кадра, кодированного в соответствии с кодированием с преобразованием, к кадру, кодированному в соответствии с кодированием с предсказанием, в соответствии с реализацией настоящего изобретения;

- на фиг. 3 показан вариант осуществления способа кодирования и кодера в соответствии с изобретением;

- на фиг. 4 показаны в виде блок-схемы этапы, реализуемые в конкретном варианте осуществления, для определения коэффициентов фильтра линейного предсказания во время кодирования с предсказанием текущего кадра, при этом предыдущий кадр был кодирован в соответствии с кодированием с преобразованием;

- на фиг. 5 показан переход в декодере от кадра, декодированного в соответствии с декодированием с обратным преобразованием, к кадру, декодированному в соответствии с декодированием с предсказанием, в соответствии с осуществлением настоящего изобретения;

- на фиг. 6 показан вариант осуществления способа декодирования и декодера в соответствии с изобретением;

- на фиг. 7 показаны в виде блок-схемы этапы, реализованные в одном варианте осуществления настоящего изобретения, для определения коэффициентов фильтра линейного предсказания при осуществлении декодирования с предсказанием текущего кадра, при этом предыдущий кадр был декодирован в соответствии с декодированием с обратным преобразованием;

- на фиг. 8 показан этап сложения с перекрытием, реализуемый в процессе декодирования, в соответствии с вариантом осуществления настоящего изобретения;

- на фиг. 9 показан частный способ реализации перехода от декодирования с преобразованием к декодированию с предсказанием, когда они имеют разные задержки; и

- на фиг. 10 показан вариант аппаратного осуществления кодера или декодера в соответствии с изобретением.

На фиг. 2 схематически показан принцип кодирования во время перехода от кодирования с преобразованием к кодированию с предсказанием в соответствии с настоящим изобретением.

Здесь рассмотрена смена звукового кадра, подлежащего кодированию либо кодером с преобразованием (FD), например, типа MDCT, либо кодером с предсказанием (LPD), например, типа ACELP; следует отметить, что возможны дополнительные режимы кодирования без влияния на изобретение. В этом примере кодер (FD) с преобразованием использует окна с малой задержкой типа "Тьюки" (настоящее изобретение не зависит от типа используемого окна), и общая длина которого равна двум кадрам (включая нулевые значения), как представлено на фигуре.

Во время кодирования окна кодера FD синхронизированы таким образом, что последняя ненулевая часть окна (справа) соответствует концу нового кадра входного сигнала. Следует отметить, что разбиение на кадры, показанное на фиг. 2, включает "опережающий просмотр" (или будущий сигнал), и фактически кодированный кадр, в силу этого, как правило, сдвинут во времени (с задержкой), как описано далее применительно к фиг. 5. При отсутствии перехода кодер выполняет такую процедуру наложения спектров и преобразования DCT, как описано в состоянии уровня техники (MDCT). При принятии кадра, который подлежал кодированию кодером типа LPD, окно не применяется, состояния или блоки памяти, соответствующие фильтрам кодера LPD повторно инициализируются заданными значениями.

В данном контексте считается, что здесь кодер LPD является производным кодера UIT-T G.718, кодирование CELP которого работает на внутренней частоте 12,8 кГц. Кодер LPD в соответствии с изобретением может работать на двух внутренних частотах, 12,8 кГц или 16 кГц, в зависимости от битовой скорости передачи данных.

Под состоянием кодирования с предсказанием (LPD) подразумеваются по меньшей мере следующие состояния:

- Состояние памяти фильтра повторной дискретизации для входной частоты fs с внутренней частотой кодирования CELP (12,8 или 16 кГц). В данном контексте считается, что повторная дискретизация может быть выполнена в зависимости от входной частоты и внутренней частоты с помощью FIR-фильтра, блока фильтров или IIR-фильтра, с пониманием того, что вариант осуществления типа FIR упрощает использование памяти состояния, которая соответствует прошедшему входному сигналу.

- Блоки памяти состояния фильтра предыскажений (где 1-αz-1 с, как правило, α=0,68) и фильтра компенсации предыскажений (1/(1-αz-1)).

- Коэффициенты фильтра линейного предсказания в конце предыдущего кадра или их эквивалентный вариант в таких областях, как области LSF ("линейных спектральных частот") или ISF ("иммитансных спектральных частот").

- Память состояния синтезирующего фильтра LPC, как правило, 16-го порядка (в области с предварительной частотной коррекцией).

- Память адаптивного словаря (прошедшего возбуждения CELP).

- Память состояния низкочастотного постфильтра (LPF), как определено в стандарте UIT-G.718 (см. раздел 7.14.1.1 стандарта UIT-T G.718).

- Память квантования для усиления фиксированного словаря (когда это квантование выполняется с памятью).

На фиг. 3 показан вариант осуществления кодера и способа кодирования в соответствии с настоящим изобретением.

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

После первого обычного этапа размещения кадра (Е301) модулем 301, модуль принятия решения (dec.) определяет, должен ли кадр, подлежащий обработке, быть кодирован с помощью кодирования с предсказанием ACELP или с помощью кодирования с преобразованием FD.

В случае кодирования с преобразованием выполняется полный этап преобразования MDCT (Е302) посредством элемента 302 кодирования с преобразованием. Этот этап включает среди прочего обработку методом окна с низкоинерционным окном, выровненным, как показано на фиг. 2, этап наложения спектров и этап преобразования в области DCT. Кадр FD после этого квантуется на этапе (E303) модулем 303 квантования, а затем кодированные данные записываются в битовый поток в Е305 модулем 305 формирования битового потока.

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

Если этап принятия решения (dec.) выбирает кодирование с предсказанием ACELP, то:

- Либо предыдущий кадр (последнее ACELP) был также кодирован элементом 304 кодирования ACELP, тогда кодирование ACELP (Е304) продолжается при обновлении блоков памяти или состояний кодирования с предсказанием. Здесь не рассматривается проблема переключения внутренних частот дискретизации кодирования CELP (от 12,8 до 16 кГц и наоборот). Кодированная и квантованная информация записывается в битовый поток на этапе Е305.

- Либо предыдущий кадр (последнее MDCT) был закодирован посредством элемента 302 кодирования с преобразованием в Е302, в этом случае, блоки памяти или состояний кодирования с предсказанием ACELP повторно инициализируются на этапе (Е306) заданными заранее значениями по умолчанию (не обязательно нулевыми). Данный этап повторной инициализации реализуется модулем 306 повторной инициализации по меньшей мере для одного состояния кодирования с предсказанием.

Затем этап кодирования с предсказанием реализуется для текущего кадра в Е308 посредством элемента 308 кодирования с предсказанием.

Кодированная и квантованная информация записывается в битовый поток на этапе Е305.

Данное кодирование с предсказанием Е308 в конкретном варианте осуществления может быть таким переходным кодированием, как определено названием "ТС mode" ("режим ТС") в стандарте UIT-T G.718, в котором кодирование возбуждения является прямым и не использует никакой адаптивный словарь, обусловленный предыдущим кадром. Затем проводят кодирование возбуждения, которое не зависит от предыдущего кадра. Этот вариант осуществления позволяет гораздо быстрее придать устойчивость кодерам с предсказанием типа LPD (по отношению к обычному кодированию CELP, которое использовало бы адаптивный словарь, который бы обнулялся). Это еще больше упрощает реализацию перехода в соответствии с изобретением.

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

В другом варианте кодирование CELP в переходном кадре посредством режима ТС можно будет заменить любым другим типом кодирования, которое не зависит от предыдущего кадра, например, с использованием модели кодирования типа iLBC.

В конкретном варианте осуществления этап Е307 вычисления коэффициентов фильтра линейного предсказания для текущего кадра выполняется модулем 307 вычислений.

Для текущего кадра возможны несколько режимов вычисления коэффициентов фильтра линейного предсказания. В данном контексте считается, что кодирование с предсказанием (блок 304) выполняет два анализа линейного предсказания для каждого кадра, как в стандарте G.718, с кодированием коэффициентов LPC в виде ISF (или эквивалентным LSF образом), полученных в конце кадра (NEW), и кодированием с сильно сниженной битовой скоростью передачи данных коэффициентов LPC, полученных в середине кадра (MID), с интерполяцией подкадра между коэффициентами LPC конца предыдущего кадра (OLD) и коэффициентами текущего кадра (MID и NEW).

В первом варианте осуществления коэффициенты предсказания в предыдущем кадре (OLD) типа FD не известны, так как коэффициент LPC не кодируется в кодере FD. Тогда выбирается для кодирования один набор коэффициентов фильтра линейного предсказания, который соответствует либо середине кадра (MID), либо же концу кадра (NEW). Этот выбор может быть сделан, например, в соответствии с классификацией сигнала, подлежащего кодированию. Для получения стабильного сигнала, можно будет выбрать фильтр середины кадра. Также может быть сделан произвольный выбор; в случае, когда выбор имеет отношение к коэффициентам LPC в середине кадра, в одном варианте интерполяцию коэффициентов LPC (в области ISP ("иммитансных спектральных пар") или LSP ("линейных спектральных пар")) можно будет модифицировать во втором кадре LPD, который следует за переходным кадром LPD.

На основе этих полученных кодированных значений идентичные кодированные значения назначаются коэффициентам фильтра с предсказанием для начала кадра (OLD) и для конца или середины кадра в зависимости от выбора, который был сделан. Действительно, при неизвестных коэффициентах LPC предыдущего кадра (OLD) невозможно кодировать коэффициенты LPC середины кадра (MID), как в G.718. Следует отметить, что в этом варианте повторная инициализация коэффициентов LPC (OLD) не является абсолютно необходимой, так как эти коэффициенты не используются. В этом случае коэффициенты, используемые в каждом подкадре, фиксируются способом, идентичным значению, кодированному в кадре.

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

Во втором возможном варианте осуществления реализованы этапы, показанные на фиг. 4. Первым этапом Е401 является инициализация коэффициентов фильтра с предсказанием и эквивалентных представлений ISF или LSF в соответствии с реализацией этапа Е306 фиг. 3, то есть с заданными значениями, например, в соответствии с долгосрочным средним значением по априорной базе обучения для коэффициентов LSP. На этапе Е402 кодируются коэффициенты фильтра конца кадра (LSP NEW) и полученные кодированные значения (LEP NEW Q), а также заданные значения повторной инициализации коэффициентов фильтра начала кадра (LSP OLD) используются в Е403 для кодирования коэффициентов фильтра с предсказанием середины кадра (LSP MID). Выполняется этап замены Е404 значений коэффициентов начала кадра (LSP OLD) кодированными значениями коэффициентов середины кадра (LSP MID Q). Этап Е405 позволяет определить коэффициенты фильтра линейного предсказания для текущего кадра на основе этих значений, кодированных таким образом (LSP OLD, LSP MID Q, LSP NEW Q).

В третьем возможном варианте осуществления коэффициенты фильтра линейного предсказания для предыдущего кадра (LSP OLD) инициализируются значением, которое уже доступно "безвозмездно" в разновидности кодера FD с использованием спектральной огибающей типа LPC. В этом случае возможно использование "нормального" кодирования, такого, как используется в G.718, коэффициенты линейного предсказания на основе подкадра вычисляются как интерполяция между значениями фильтров с предсказанием OLD, MID и NEW, таким образом, эта операция позволяет кодеру LPD получить без дополнительного анализа удовлетворительную оценку коэффициентов LPC в предыдущем кадре.

В других вариантах изобретения кодирование LPD будет иметь возможность по умолчанию кодировать только набор коэффициентов LPC (NEW), предыдущие разновидности вариантов осуществления просто приспособлены учитывать, что ни один набор коэффициентов не доступен в середине кадра (MID).

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

На фиг. 5 схематически показан принцип декодирования во время перехода от декодирования с преобразованием к декодированию с предсказанием в соответствии с настоящим изобретением.

Здесь рассматривается смена звукового кадра, подлежащего декодированию либо декодером с преобразованием (FD), например, типа MDCT, либо декодером (LPD) с предсказанием, например, типа ACELP. В этом примере декодер с преобразованием (FD) использует окна синтеза с малой задержкой типа "Тьюки" (настоящее изобретение не зависит от типа используемого окна), и общая длина которого равна двум кадрам (включая нулевые значения), как представлено на фигуре.

В контексте настоящего изобретения после декодирования кадра, кодированного кодером FD, к декодированному кадру применяется обратное преобразование DCT. Для кадра выполняется устранение эффекта наложения спектров, а затем применяется окно синтеза к сигналу с устраненным эффектом наложения спектров. Окна синтеза кодера FD синхронизированы таким образом, что ненулевая часть окна (слева) соответствует новому кадру. Таким образом, кадр может быть декодирован до точки A, так как сигнал не имеет никакого временного наложения спектров до этой точки.

В момент прихода кадра LPD, как в кодере, состояния или блоки памяти декодирования с предсказанием повторно инициализируются заданными значениями.

Под состоянием декодирования с предсказанием (LPD) подразумеваются по меньшей мере следующие состояния:

- Память состояния фильтра повторной дискретизации для внутренней частоты декодирования CELP (12,8 или 16 кГц) при выходной частоте fs. В данном контексте считается, что повторная дискретизация может быть выполнена в зависимости от входной частоты и внутренней частоты с помощью FIR-фильтра, блока фильтров или IIR-фильтра, с пониманием того, что вариант осуществления типа FIR упрощает использование памяти состояния, которая соответствует прошедшему входному сигналу.

- Блоки памяти состояния фильтра компенсации предыскажений (1/(1-αz-1)).

- Коэффициенты фильтра линейного предсказания в конце предыдущего кадра или их эквивалентный вариант в областях, таких как области LSF (линейных спектральных частот) или ISF (иммитансных спектральных частот).

- Память состояния синтезирующего фильтра LPC, как правило, 16-го порядка (в области с предварительной частотной коррекцией).

- Память адаптивного словаря (прошедшее возбуждение).

- Память состояния низкочастотного постфильтра (LPF), как определено в стандарте UIT-G.718 (см. раздел 7.14.1.1 стандарта UIT-T G.718).

- Память квантования для усиления фиксированного словаря (когда это квантование выполняется с памятью).

На фиг. 6 показан вариант осуществления декодера и способа декодирования согласно настоящему изобретению.

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

После первого обычного этапа чтения в двоичном потоке (Е601) модулем 601, модуль (dec.) принятия решения определяет, должен ли кадр, подлежащий обработке, быть декодирован с помощью декодирования с предсказанием ACELP или с помощью декодирования с преобразованием FD.

В случае декодирования с преобразованием MDCT этап декодирования Е602 посредством элемента 602 декодирования с преобразованием делает возможным получение кадра в преобразованной области. Этап может также содержать этап повторной дискретизации с частотой дискретизации декодера ACELP. За этим этапом следуют обратное преобразование MDCT Е603, включающее обратное преобразование DCT, устранение эффекта временного наложения спектров, а также применение окна синтеза и этапа сложения с перекрытием с предыдущим кадром, как это описано далее со ссылкой на фиг. 8.

Часть, для которой временное наложение спектров было отменено, размещается в кадре на этапе Е605 с помощью модуля 605 размещения кадра. Часть, которая включает временное наложение спектров, сохраняется в памяти (MDCT Mem.) для выполнения этапа сложения с перекрытием в Е609 модулем 609 обработки со следующим кадром, если таковой имеется, декодированным ядром FD. В разновидности осуществления сохраненная часть декодирования MDCT, которая используется для этапа сложения с перекрытием, не включает какое-либо временное наложение спектров, например, в том случае, когда между декодированием MDCT и декодированием CELP существует достаточно значительный временной сдвиг.

Этот этап показан на фиг. 8. На этой фигуре видно, что между декодированием, являющимся результатом FD, и декодированием, являющимся результатом LPD, существует временная неоднородность. Этап Е609 использует память кодера с преобразованием (MDCT Mem.), как описано выше, то есть сигнал декодируется после точки A, но включает наложение спектров (в показанном случае).

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

Два отрезка АВ, один из которых является результатом декодирования с преобразованием, и другой, который является результатом декодирования с предсказанием, затем взвешиваются и суммируются, чтобы получить окончательный сигнал АВ. Весовые функции преимущественно имеют сумму, равную 1 (например, квадратичный синусоидальный или линейный тип). Таким образом, этап сложения с перекрытием объединяет отрезок сигнала, синтезированный с помощью декодирования с предсказанием текущего кадра и отрезок сигнала, синтезированный с помощью декодирования с обратным преобразованием, соответствующий сохраненному отрезку декодирования предыдущего кадра.

В другом конкретном варианте осуществления в случае, когда повторная дискретизация еще не была выполнена (в Е602, например), отрезок сигнала, синтезированный посредством декодирования с обратным преобразованием типа FD предварительно повторно дискретизируется с частотой дискретизации, соответствующей отрезку декодированного сигнала текущего кадра типа LPD. Данная повторная дискретизация памяти MDCT может быть выполнена с или без задержки с помощью обычных методов посредством фильтра типа FIR, блока фильтров, IIR-фильтра или, безусловно, посредством "сплайнов".

В обратном случае, если режимы кодирования FD и LPD работают на различных внутренних частотах дискретизации, то в качестве альтернативы возможна повторная дискретизация синтеза кодирования CELP (при необходимости пост-обработанного, с добавлением, в частности, расчетной или кодированной верхней полосы) и применение изобретения. Данная повторная дискретизация синтеза кодера LPD может быть выполнена с или без задержки с помощью обычных методов посредством фильтра типа FIR, блока фильтров, IIR-фильтра или, безусловно, посредством "сплайнов".

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

В конкретном варианте осуществления возможно применение промежуточного этапа задержки (Е604), с тем, чтобы выровнять во времени два декодера, если декодер FD имеет меньшую задержку, чем декодер CELP (LPD). Затем часть сигнала, размер которой соответствует запаздыванию между двумя декодерами, сохраняется в памяти (Mem.delay).

На фиг. 9 изображен этот показательный случай. В данном варианте осуществления предлагается эффективно использовать эту разницу в запаздывании D так, чтобы заменить первый отрезок D, возникающий в результате декодирования с предсказанием LPD, на отрезок, возникающий в результате декодирования с преобразованием FD, а затем провести операцию сложения с перекрытием (Е609) на отрезке AB таким образом, как описано ранее. Таким образом, когда декодирование с обратным преобразованием имеет меньшую задержку при обработке данных, чем декодирование с предсказанием, первый отрезок текущего кадра, декодированный посредством декодирования с предсказанием, заменяется отрезком, являющимся результатом декодирования предыдущего кадра, соответствующим сдвигу задержки и размещению в памяти во время декодирования предыдущего кадра.

На фиг. 6, если решение (dec.) указывает на то, что необходимо сделать декодирование с предсказанием ACELP, то:

- Либо последний декодированный кадр, предыдущий кадр (последнее ACELP), также был декодирован посредством элемента 603 декодирования с предсказанием ACELP, тогда на этапе (Е603) продолжается декодирование с предсказанием, звуковой кадр, таким образом, генерируется на Е605.

- Либо предыдущий кадр (последнее MDCT) был декодирован посредством элемента 602 декодирования с преобразованием на Е602, в этом случае применяется этап (Е606) повторной инициализации состояний декодирования с предсказанием ACELP. Данный этап повторной инициализации реализуется модулем 606 повторной инициализации по меньшей мере для одного состояния декодирования с предсказанием. Значения повторной инициализации являются значениями по умолчанию, заданными заранее (не обязательно нулевыми).

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

Затем в Е608 реализуется этап декодирования с предсказанием для текущего кадра посредством элемента 608 декодирования с предсказанием до этапа (Е609) сложения с перекрытием, описанного ранее. Этап может также включать этап повторной дискретизации с частотой дискретизации декодера MDCT.

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

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

В конкретном варианте осуществления этап Е607 вычисления коэффициентов фильтра линейного предсказания для текущего кадра выполняется модулем 607 вычисления.

Для текущего кадра возможны несколько режимов вычисления коэффициентов фильтра линейного предсказания.

В первом варианте осуществления коэффициенты предсказания в предыдущем кадре (OLD) типа FD не известны, так как коэффициент LPC не кодируется в кодере FD, и. значения были повторно инициализированы нулями. Тогда принимается решение декодировать коэффициенты уникального фильтра линейного предсказания, то есть коэффициенты, соответствующие фильтру предсказания конца кадра (NEW), или соответствующие фильтру предсказания середины кадра (MID). Затем назначаются идентичные коэффициенты фильтрам линейного предсказания конца, середины и начала кадра.

Во втором возможном варианте осуществления реализованы этапы, показанные на фиг. 7. Первым этапом Е701 является инициализация коэффициентов фильтра с предсказанием (LSP OLD) в соответствии с реализацией этапа Е606, показанной на фиг. 6. Этап Е702 декодирует коэффициенты фильтра конца кадра (LSP NEW) и полученные декодированные значения (LSP NEW), а также заданные значения повторной инициализации коэффициентов фильтра начала кадра (LSP OLD) используются совместно в Е703, чтобы декодировать коэффициенты фильтра с предсказанием середины кадра (LSP MID). Выполняется этап Е704 замены значений коэффициентов начала кадра (LSP OLD) декодированными значениями коэффициентов середины кадра (LSP MID). Этап Е705 позволяет определить коэффициенты фильтра линейного предсказания для текущего кадра на основе этих значений, декодированных таким образом (LSP OLD, LSP MID, LSP NEW).

В третьем возможном варианте осуществления коэффициенты фильтра линейного предсказания для предыдущего кадра (LSP OLD) инициализируются заданным значением, например, в соответствии с долгосрочным средним значением коэффициентов LSP. В этом случае можно будет использовать "нормальное" декодирование, такое, как используется в G.718, коэффициенты линейного предсказания на основе подкадра вычисляются как интерполяция между значениями фильтров с предсказанием OLD, MID и NEW. Таким образом, эта операция позволяет кодеру LPD быстрее достичь устойчивости.

Со ссылкой на фиг. 10 описано аппаратное устройство, приспособленное для воплощения кодера или декодера в соответствии с вариантом осуществления настоящего изобретения.

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

Данное устройство DISP содержит вход для приема цифрового сигнала, который в случае кодера является входным сигналом x(n), а в случае декодера - двоичным потоком bst.

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

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

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

Данные блоки памяти могут также содержать параметры вычисления или другую информацию.

Чаще всего средство хранения данных, считываемое процессором, возможно, интегрированное в кодер или в декодер, необязательно съемное, хранит компьютерную программу, реализующую способ декодирования и/или способ кодирования в соответствии с настоящим изобретением. Фиг. 3 и 6 могут, например, иллюстрировать алгоритм такой компьютерной программы.

Процессор также приспособлен для хранения результатов в этих блоках памяти. Наконец, устройство содержит выход S, связанный с процессором таким образом, чтобы выдавать выходной сигнал, который в случае кодера является сигналом в виде двоичного потока bst, а в случае декодера - выходным сигналом .

1. Способ декодирования цифрового звукового сигнала, включающий этапы:

- декодирования (E602) в соответствии с декодированием с обратным преобразованием предыдущего кадра дискретных значений цифрового сигнала, принятого и кодированного в соответствии с кодированием с преобразованием;

- декодирования (E608) в соответствии с декодированием с предсказанием текущего кадра дискретных значений цифрового сигнала, принятого и кодированного в соответствии с кодированием с предсказанием,

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

- этап повторной инициализации (E606) по меньшей мере одного состояния декодирования с предсказанием заданным значением по умолчанию;

- этап сложения с перекрытием (E609), который объединяет отрезок сигнала, синтезированный с помощью декодирования с предсказанием текущего кадра, и отрезок сигнала, синтезированный с помощью декодирования с обратным преобразованием, соответствующий сохраненному отрезку декодирования предыдущего кадра.

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

3. Способ декодирования по п. 1 или 2, отличающийся тем, что отрезок сигнала, синтезированный посредством декодирования с обратным преобразованием, корректируется до этапа сложения с перекрытием путем применения обратного окна, компенсирующего обработку методом окна, примененную к отрезку ранее.

4. Способ декодирования по п. 1 или 2, отличающийся тем, что отрезок сигнала, синтезированный посредством декодирования с обратным преобразованием, предварительно повторно дискретизируется с частотой дискретизации, соответствующей отрезку декодированного сигнала текущего кадра.

5. Способ декодирования по п. 1, отличающийся тем, что состояние декодирования с предсказанием находится в списке из следующих состояний:

- память состояния для фильтра для повторной дискретизации с внутренней частотой декодирования с предсказанием;

- блоки памяти состояний для фильтров предыскажений/компенсации предыскажений;

- коэффициенты фильтра линейного предсказания;

- память состояния синтезирующего фильтра;

- память адаптивного словаря;

- память состояния низкочастотного постфильтра;

- память квантования для усиления фиксированного словаря.

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

7. Способ декодирования по п. 5, отличающийся тем, что вычисление коэффициентов фильтра линейного предсказания для текущего кадра включает следующие этапы:

- определение декодированных значений коэффициентов фильтра середины кадра с использованием декодированных значений коэффициентов фильтра конца кадра и заданного значения повторной инициализации коэффициентов фильтра начала кадра;

- замену декодированных значений коэффициентов фильтра начала кадра декодированными значениями коэффициентов фильтра середины кадра;

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

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

9. Способ кодирования цифрового звукового сигнала, включающий этапы:

- кодирования (E302) предыдущего кадра дискретных значений цифрового сигнала в соответствии с кодированием с преобразованием;

- прием (E308) текущего кадра дискретных значений цифрового сигнала, подлежащего кодированию в соответствии с кодированием с предсказанием,

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

- этап (E306) повторной инициализации по меньшей мере одного состояния кодирования с предсказанием заданным значением по умолчанию.

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

11. Способ кодирования по п. 10, отличающийся тем, что по меньшей мере одно состояние кодирования с предсказанием кодируется в прямом порядке.

12. Способ кодирования по п. 9, отличающийся тем, что коэффициенты фильтра линейного предсказания образуют часть по меньшей мере одного состояния кодирования с предсказанием и вычисление коэффициентов фильтра линейного предсказания для текущего кадра включает следующие этапы:

- определение кодированных значений коэффициентов фильтра середины кадра с использованием кодированных значений коэффициентов фильтра конца кадра и заданных значений повторной инициализации коэффициентов фильтра начала кадра;

- замену кодированных значений коэффициентов фильтра начала кадра кодированными значениями коэффициентов фильтра середины кадра;

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

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

14. Декодер цифрового звукового сигнала, содержащий:

- элемент (602) декодирования с обратным преобразованием, способный декодировать предыдущий кадр дискретных значений цифрового сигнала, принятый и кодированный в соответствии с кодированием с преобразованием;

- элемент (608) декодирования с предсказанием, способный декодировать текущий кадр дискретных значений цифрового сигнала, принятый и кодированный в соответствии с кодированием с предсказанием,

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

- модуль (606) повторной инициализации, способный повторно инициализировать заданным значением по умолчанию по меньшей мере одно состояние декодирования с предсказанием;

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

15. Кодер цифрового звукового сигнала, содержащий:

- элемент (302) кодирования с преобразованием, способный кодировать предыдущий кадр дискретных значений цифрового сигнала;

- элемент (308) кодирования с предсказанием, способный кодировать текущий кадр дискретных значений цифрового сигнала,

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

- модуль (306) повторной инициализации, способный повторно инициализировать заданным значением по умолчанию по меньшей мере одно состояние кодирования с предсказанием.

16. Средство хранения, считываемое процессором, хранящее компьютерную программу, содержащую команды для исполнения этапов способа декодирования по любому из пп. 1-8.

17. Средство хранения, считываемое процессором, хранящее компьютерную программу, содержащую команды для исполнения этапов способа кодирования по любому из пп. 9-13.



 

Похожие патенты:

Изобретение относится к квантованию речевого или аудиосигнала. Технический результат – увеличение производительности квантования модуля квантования.

Изобретение относится к области вычислительной техники и предназначено для использования в системах обработки информации. Технический результат – уменьшение времени передачи данных и повышение информационной вместимости без потерь информации.

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

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

Изобретение относится к способу сжатия и шифрования файлов. Технический результат заключается в получении более эффективного способа сжатия данных без потерь.

Изобретение относится к обработке аудиосигналов. Технический результат – повышение качества звука.

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

Изобретение относится к обработке аудиосигналов, в частности к обработке речи, и предназначено для улучшения маскирования адаптивной таблицы кодирования при ACELP-образном маскировании.

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

Изобретение относится к обработке аудиосигналов и предназначено для кодирования и декодирования аудиосигналов. Технический результат – повышение качества звука.

Изобретение относится к квантованию речевого или аудиосигнала. Технический результат – увеличение производительности квантования модуля квантования.

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

Изобретение относится к передаче избыточной информации кадра. Технический результат изобретения заключается в улучшении эффективности кодирования/декодирования данных.

Изобретение относится к области кодирования аудио и речи. Технический результат – обеспечение эффективного сокращения объема вычислений при преобразовании коэффициентов линейного предсказания.

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

Изобретение относится к области обработки сигналов. Технический результат заключается в повышении эффективности обработки сигналов.

Изобретение относится к обработке аудиосигналов. Технический результат – оптимизация канального аудиосигнала для среды прослушивания.

Изобретение относится к аудио кодированию и декодированию. Технический результат – обеспечение эффективного кодирования/декодирования метаданных объекта.

Изобретение относится к способу кодирования аудиосигналов. Технический результат заключается в повышении эффективности кодирования, обработки и декодирования аудиосигналов.
Наверх