Способ и устройство для аудиодекодирования

Иллюстрации

Показать все

Изобретение относится к области голосовой связи, в частности к способам и устройствам для аудиодекодирования. Техническим результатом является повышение качества декодированного речевого сигнала при переключении пропускной способности. Указанный результат достигается тем, что в способе декодирования аудиосигнала получают компоненты сигнала нижней полосы аудиосигнала в принятом кодовом потоке, когда аудиосигнал переключается с первой полосы пропускания на вторую полосу пропускания, которая ýже первой полосы пропускания; расширяют компоненты сигнала нижней полосы для получения информации верхней полосы; выполняют изменяющийся во времени процесс затухания с информацией верхней полосы, полученной посредством расширения, для получения обработанной компоненты сигнала верхней полосы; и синтезируют обработанную компоненту сигнала верхней полосы и полученную компоненту сигнала нижней полосы. При этом изменяющийся во времени процесс затухания содержит выполнение изменяющегося во времени взвешивания параметра верхней полосы в частотной области для информации верхней полосы, полученной посредством расширения, для получения спектральной огибающей изменяющегося во времени затухания, и получение компоненты сигнала верхней полосы посредством декодирования. 2 н. и 9 з.п. ф-лы, 13 ил., 2 табл.

Реферат

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

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

УРОВЕНЬ ТЕХНИКИ

Стандарт G.729.1 является стандартом речевого кодирования и декодирования нового поколения, выпущенным Международным союзом электросвязи (ITU). Этот стандарт встроенного речевого кодирования и декодирования лучше всего характеризуется наличием такого признака, как многоуровневое кодирование, которое может обеспечить качество звучания, от узкополосного до широкополосного, в диапазоне скоростей от 8 кбит/с~32 кбит/с. В процессе передачи кодовый поток внешнего уровня можно отбрасывать в зависимости от состояния канала, что открывает возможность достижения хорошей адаптации канала.

В стандарте G.729.1 множество уровней обеспечивается путем построения кодового потока во встроенной многоуровневой структуре, для чего потребуется новый встроенный многоуровневый многоскоростной речевой кодек. При вводе суперкадра длительностью 20 мс, когда частота дискретизации равна 16000 Гц, длина кадра составляет 320 точек. На фиг.1 представлена блок-схема системы G.729.1 с кодерами на каждом уровне. Речевой кодек реализует специфический процесс кодирования, состоящий в следующем. Сначала входной сигнал SWB(n) делится блоком квадратурных зеркальных фильтров (QMF) на две субполосы (H1(z),H2(z)). Сигнал нижней субполосы предварительно обрабатывается в фильтре верхних частот, имеющем частоту среза 50 Гц. Выходной сигнал SLB(n) кодируется встроенным кодером с линейным предсказанием (CELP) в узкой полосе 8 кбит/с~12 кбит/с. Сигнал dLB(n) разности между SLB(n) и локальным синтезированным сигналом кодера CELP со скоростью 12 кбит/с проходит через взвешивающий фильтр (WLB(z)) для получения сигнала Сигнал подвергается модифицированному дискретному косинусному преобразованию (MDCT) в частотную область. Взвешивающий фильтр WLB(z) включает в себя функцию компенсации усиления для поддержания непрерывности спектра между выходным сигналом фильтра и входным сигналом SHB(n) верхней субполосы. Взвешенный сигнал разности преобразуется в частотную область.

Компонента верхней субполосы умножается на (-1)n для получения спектрально инвертированного сигнала . Спектрально инвертированный сигнал предварительно обрабатывается после прохождения через фильтр нижних частот, имеющий частоту среза 3000 Гц. Отфильтрованный сигнал SHB(n) кодируется в кодере с расширением полосы пропускания временной области (TDBWE). Прежде чем сигнал SHB(n) поступает в модуль кодирования с аннулированием псевдонимов временной области (TDAC), над сигналом SHB(n) выполняется преобразование MDCT в частотную область.

Наконец, с использованием алгоритма кодирования TDAC кодируют два набора и SHB(k) коэффициентов MDCT. Вдобавок, для исправления ошибок, вызванных потерями кадров во время передачи, кодер маскирования стирания кадра (FEC) передает ряд других параметров.

На фиг.2 представлена блок-схема системы по стандарту G.729.1, имеющей декодеры на каждом уровне. Рабочий режим декодера определяется количеством уровней принимаемого кодового потока или, что то же самое, скоростью приема. Далее подробно описываются различные случаи, возникающие на приемной стороне при разных скоростях приема.

1. Если скорость приема составляет 8 кбит/с или 12 кбит/с (то есть принимаются только первый уровень или первые два уровня), то встроенный декодер CELP декодирует кодовый поток первого уровня или первых двух уровней, получает декодированный сигнал и выполняет пост-фильтрацию для получения сигнала , который проходит через фильтр верхних частот, достигая блока фильтров QMF. Синтезируется широкополосный сигнал 16 кГц с компонентой верхней полосы, установленной в 0.

2. Если скорость приема составляет 14 кбит/с (то есть принимают первые три уровня), кроме того, что декодер CELP декодирует узкополосную компоненту, декодер TDBWE декодирует компоненту верхней полосы. Выполняют преобразование MDCT над сигналом , частотные компоненты, превышающие 3000 Гц в спектре верхней субполосы (что соответствует более 7000 Гц при частоте дискретизации 16 кГц), устанавливают в 0, а затем выполняют обратное преобразование MDCT. После наложения и инверсии спектра синтезируют обработанную компоненту верхней полосы в блоке фильтров QMF с компонентой нижней полосы, декодированной декодером CELP, для получения широкополосного сигнала с частотой дискретизации 16 кГц.

3. Если принимаемый кодовый поток имеет скорость, превышающую 14 кбит/с (что соответствует первым четырем уровням или более), помимо того, что декодер CELP получает компоненту нижней субполосы путем декодирования и декодер TDBWE получает компоненту верхней субполосы путем декодирования, декодер TDAC получает дифференциальный сигнал взвешивания нижней субполосы и сигнал улучшения верхней субполосы путем декодирования. Выполняется улучшение сигнала всей полосы, и в блоке фильтров QMF окончательно синтезируется широкополосный сигнал с частотой дискретизации 16 кГц.

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

Кодовый поток стандарта G.729.1 имеет многоуровневую структуру. В процессе передачи кодовые потоки внешнего уровня могут отбрасываться с внешних уровней на внутренние в зависимости от пропускной способности канала, что открывает возможность адаптации к состоянию канала. Из описания алгоритмов кодирования и декодирования можно видеть, что при резких изменениях во времени пропускной способности канала декодер может принимать узкополосный кодовый поток (со скоростью, меньшей или равной 12 кбит/с) в момент, когда декодированный сигнал содержит только компоненты ниже 4000 Гц, и декодер может принимать широкополосный кодовый поток (со скоростью, большей или равной 14 кбит/с) в другой момент, когда декодированный сигнал может содержать широкополосный сигнал в диапазоне 0~7000 Гц. Такое внезапное изменение полосы пропускания называется здесь переключением полосы пропускания. Поскольку вклады верхних и нижних полос в восприятие речи при прослушивании разные, такие частые переключения могут внести значительный дискомфорт в восприятие речи при прослушивании. В частности, при неоднократных переключениях с широкой полосы на узкую будут часто ощущаться перескоки с отчетливого голоса говорящего на неестественно растянутый. Таким образом, имеется потребность в способе снижения дискомфорта, вызванного частыми переключениями, ухудшающими восприятие речи при прослушивании.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

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

Для решения указанной задачи один вариант изобретения обеспечивает способ аудиодекодирования, включающий в себя:

получение компоненты сигнала нижней полосы аудиосигнала в принятом кодовом потоке, когда аудиосигнал переключается с первой полосы пропускания на вторую полосу пропускания, которая ýже первой полосы пропускания;

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

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

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

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

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

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

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

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

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

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

Фиг.1 - блок-схема системы кодеров G.729.1 согласно известному уровню техники;

фиг.2 - блок-схема системы декодеров G.729.1 согласно известному уровню техники;

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

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

фиг.5 - кривая изменения коэффициента усиления, изменяющегося во времени, согласно второму варианту изобретения;

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

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

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

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

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

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

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

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

ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

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

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

На этапе S301 определяют структуру кадра принятого кодового потока.

На этапе S302 на основе структуры кадра кодового потока устанавливают, имеется ли переключение аудиосигнала, соответствующего кодовому потоку, с первой полосы пропускания на вторую полосу пропускания, которая ýже первой полосы пропускания. Если такое переключение имеет место, то выполняют этап S303. В противном случае кодовый поток декодируют согласно нормальному потоку декодирования и выводят восстановленный аудиосигнал.

В сфере речевого кодирования и декодирования узкополосным сигналом обычно называют сигнал, имеющий полосу частот 0~4000 Гц, а широкополосным сигналом называют сигнал, имеющий полосу частот 0~8000 Гц. Ультраширокополосным (UWB) называют сигнал, имеющий полосу частот 0~16000 Гц. Сигнал, имеющий более широкую полосу, можно разделить на компоненту сигнала нижней полосы и компоненту сигнала верхней полосы. Конечно, вышеуказанное определение носит общий характер, и практические приложения не ограничиваются этим аспектом. Для облегчения иллюстрации компонентой сигнала верхней полосы в вариантах изобретения можно называть часть, добавленную после переключения по отношению к полосе пропускания перед переключением, а компонентой узкополосного сигнала можно называть часть, имеющую полосу пропускания, являющуюся общей для аудиосигналов до и после переключения. Например, когда происходит переключение с сигнала, имеющего полосу 0~8000 Гц, на сигнал, имеющий полосу 0~4000 Гц, компонента сигнала нижней полосы может относиться к сигналу 0~4000 Гц, а компонента сигнала верхней полосы может относиться к сигналу 4000~8000 Гц.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

На этапе S401 декодер принимает кодовый поток, переданный из кодера, и определяет структуру кадра принятого кодового потока.

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

Таблица 1
Уровень 1 - базовый уровень (узкополосный встроенный CELP)
10-миллисекундный кадр 1 10-миллисекундный кадр 2 Всего
LSP 18 18 36
Субкадр 1 Субкадр 2 Субкадр 1 Субкадр 2
Задержка адаптивного кодового словаря 8 5 8 5 26
Контроль четности задержки основного тона 1 1 2
Фиксированный индекс кодового словаря 13 13 13 13 52
Фиксированный символ кодового словаря 4 4 4 4 16
Усиление кодового словаря (уровень 1) 3 3 3 3 12
Усиление кодового словаря (уровень 2) 4 4 4 4 16
Базовые уровни 8 кбит/с, всего 160
Уровень 2 - узкополосный уровень улучшения (узкополосный встроенный CELP)
Фиксированный индекс кодового словаря уровня 2 13 13 13 13 52
Фиксированный символ кодового словаря уровня 2 4 4 4 4 16
Фиксированное усиление кодового словаря уровня 2 3 2 3 2 10
Биты исправления ошибок (информация о классе) 1 1 2
Уровни улучшения 12 кбит/с, всего 80
Уровень 3 - широкополосный уровень улучшения (TDBWE)
Среднее огибающей временной области 5 5
Вектор расщепления огибающей во временной области 7+7 14
Вектор расщепления огибающей в частотной области 5+5+4 14
Биты исправления ошибок (информация о фазе) 7 7
Уровни улучшения 14 кбит/с, всего 40
Уровни с 4 по 12 - широкополосный уровень улучшения (TDAC)
Биты исправления ошибок (информация об энергии) 5 5
Нормализованный коэффициент MDCT 4 4
Огибающая спектра верхней полосы nbits_HB nbits_HB
Огибающая спектра нижней полосы nbits_LB nbits_LB
Тонкая структура nbits_VQ=351-nbits_HB-nbits_LB nbits_VQ
Уровни улучшения 16~32 кбит/с, всего 360
Всего 640

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

При приеме речевого кадра можно определить, происходит ли переключение с широкой полосы на узкую, согласно длине данных или скорости декодирования текущего кадра. Например, если текущий кадр содержит только данные уровня 1 и уровня 2, то длина текущего кадра составляет 160 бит (то есть скорость декодирования составляет 8 кбит/с) или 240 бит (то есть скорость декодирования составляет 12 кбит/с), и, следовательно, текущий кадр является узкополосным. В противном случае, если текущий кадр содержит данные первых двух уровней, а также данные более высоких уровней, то есть длина текущего кадра больше или равна 280 бит (то есть скорость декодирования составляет 14 кбит/с), то текущий кадр является широкополосным.

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

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

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

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

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

В приведенной выше формуле Pk представляет параметр синтезирования для компоненты сигнала верхней полосы k-го речевого кадра, восстановленного из позиции переключения, где k=0, …, N-1; N - количество речевых кадров, для которых выполняется процесс затухания; P-i представляет параметр кодирования верхней полосы i-го речевого кадра, принятого перед позицией переключения, запомненной в буфере; i=1, …, M; М - количество кадров, буферизированных для процесса затухания; (a)mod(b) представляет операцию «a» по модулю «b»; и представляет операцию определения наибольшего целого, не превышающего указанное число. Согласно уравнению (1) параметры кодирования верхней полосы для M буферизированных речевых кадров перед переключением можно использовать для оценки параметров кодирования верхней полосы для N речевых кадров после переключения. Компоненты сигнала верхней полосы для N речевых кадров после переключения можно восстановить с помощью алгоритма декодирования TDBWE или TDAC. Согласно требованиям для практических приложений M может иметь любое значение, меньшее N.

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

В частности, при выполнении формообразования во временной области можно ввести изменяющийся во времени коэффициент g(k) усиления. На фиг.5 показана кривая изменяющегося во времени коэффициента. Изменяющийся во времени коэффициент усиления линейно затухает в логарифмической области. Для k-го речевого кадра, появляющегося после переключения, компонента сигнала верхней полосы, полученная посредством расширения, умножается на изменяющийся во времени коэффициент усиления, как показано в уравнении 2:

где n=0, …, L-1; k=0, …, N-1, а L представляет длину кадра.

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

В частности, компонента сигнала верхней полосы, сформированная во временной области, проходит через изменяющийся во времени фильтр, так что полоса частот компоненты сигнала верхней полосы медленно сужается во времени. Изменяющимся во времени фильтром, используемым в этом варианте, является изменяющийся во времени фильтр Батерворта 2-го порядка, имеющий нулевую точку, зафиксированную на значении -1, и постоянно изменяющуюся полюсную точку. На фиг.6 показано изменение полюсной точки изменяющегося во времени фильтра Батерворта 2-го порядка. Полюсная точка изменяющегося во времени фильтра перемещается по часовой стрелке. Другими словами, полоса пропускания фильтра уменьшается, пока не достигнет 0.

Когда декодер обрабатывает речевой сигнал со скоростью 14 кбит/с или выше, флаг fad_out_flag переключения с широкой полосы на узкую устанавливают в 0, а также устанавливают в 0 счетчик точек фильтра fad_out_count. Начиная с определенного момента, когда декодер приступает к обработке речевого сигнала 8 кбит/с или 12 кбит/с, флаг fad_out_flag переключения с узкой полосы на широкую устанавливают в 1 и изменяющемуся во времени фильтру разрешают начать фильтрацию восстановленной компоненты сигнала верхней полосы. Когда количество точек фильтра fad_out_count станет удовлетворять условию fag_out_count<FAD_OUT_COUNT_MAX, изменяющаяся во времени фильтрация выполняется непрерывно. В противном случае работа изменяющегося во времени фильтра прекращается. Здесь FAD_OUT_COUNT_MAX=N×L - количество переходов (например, FAD_OUT_COUNT_MAX=8000).

Положим, что изменяющийся во времени фильтр имеет прецизионную полюсную точку rel(i)+img(i)×j в момент i, причем эта полюсная точка перемещается в rel(m)+img(m)×j точно в момент m. Если количество точек интерполяции составляет N, то результатом интерполяции в момент k будет:

rel(k)=rel(i)×(N-k)/N+rel(m)×k/N

img(k)=img(i)×(N-k)/N+img(m)×k/N.

Полюсную точку интерполяции можно использовать для восстановления коэффициентов фильтра в момент k, после чего можно получить передаточную функцию:

.

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

fad_out_count=min(fad_out_count+1, FAD_OUT_COUNT_MAX), где FAD_OUT_COUNT_MAX - количество последовательных отсчетов во время фазы перехода.

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

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

.

На этапе S407 можно использовать блок фильтров QMF для выполнения синтезирующей фильтрации декодированной компоненты сигнала нижней полосы и обработанной компоненты сигнала верхней полосы (компоненты сигнала верхней полосы, если этап S406 не выполняется). Таким образом, можно восстановить изменяющийся во времени сигнал затухания, который соответствует характеристикам плавного перехода с широкой полосы на узкую.

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

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

Этапы S701-S703 аналогичны этапам S401-S403 во втором варианте, и поэтому их описание здесь не повторяется.

На этапе S704, чтобы получить параметр кодирова