Заявка испрашивает приоритет по заявке № 200810084077.6 на выдачу патента Китая, поданной 26 марта 2008 года в Государственную службу интеллектуальной собственности Китайской Народной Республики, озаглавленной «METHOD AND APPARATUS FOR ENCODING AND DECODING» («СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ»), полное содержание всей из которой включено в материалы настоящей заявки посредством ссылки.
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Раскрытие относится к области техники связи, а более конкретно к способу и устройству для кодирования и декодирования.
УРОВЕНЬ ТЕХНИКИ
В речевой связи кодирование и декодирование фонового шума выполняются согласно схеме обработки шума, определенной в G.729B, опубликованном Международным телекоммуникационным союзом (ITU).
Технология сжатия периодов молчания привнесена в кодировщик речи, и фиг.1 показывает принципиальную схему сигнальной обработки.
Технология сжатия периодов молчания, главным образом, включает в себя три модуля: обнаружение активности речи (VAD), прерывистая передача (DTX) и генератор комфортного шума (CNG). VAD и DTX - модули, включенные в кодировщик, а CNG - модуль, включенный в сторону декодирования. Фиг.1 - принципиальная схема, показывающая принцип системы сжатия периодов молчания, а основные последовательности операций являются следующими.
Сначала на передающей стороне (то есть стороне кодирования), для каждого кадра входного сигнала, модуль VAD анализирует и детектирует текущий кадр входного сигнала и выявляет, содержится ли речевой сигнал в текущем кадре сигнала. Если речевой сигнал содержится в текущем кадре сигнала, текущий кадр помечается как речевой кадр. Иначе, текущий кадр устанавливается в качестве неречевого кадра.
Затем кодировщик кодирует текущий сигнал на основании результата детектирования VAD. Если результат детектирования VAD указывает речевой кадр, сигнал вводится в кодировщик речи для кодирования речи, и выдается речевой кадр. Если результат детектирования VAD указывает неречевой кадр, сигнал вводится в модуль DTX, где неречевой кодировщик используется для выполнения обработки фонового шума, и выдается неречевой кадр.
В заключение, принятый кадр сигнала (включающий в себя речевые кадры и неречевые кадры) декодируется на приемной стороне (стороне декодирования). Если принятый кадр сигнала является речевым кадром, он декодируется речевым декодером. Иначе, он вводится в модуль CNG, который декодирует фоновый шум на основании параметров, переданных в неречевом кадре. Формируется комфортный фоновый шум или период молчания, так что декодированный сигнал звучит более естественным и непрерывным.
Привнесением такой схемы кодирования с переменной битовой скоростью передачи данных в кодировщик и выполнением надлежащего кодирования над сигналами фазы молчания технология сжатия периодов молчания эффективно решает проблему, что фоновый шум может быть прерывистым и улучшает качество синтезированного сигнала. Поэтому фоновый шум на стороне декодирования также может указываться ссылкой как комфортный шум. Более того, скорость кодирования фонового шума является гораздо более низкой, чем скорость кодирования речи, и, таким образом, средняя скорость кодирования системы существенно снижается, так что полоса пропускания может эффективно сберегаться.
В G.729B сигнальная обработка выполняется на покадровой основе. Длительность кадра имеет значение 10 мс. Для сбережения полосы пропускания G.729.1 дополнительно определяет требования к системе сжатия периодов молчания. Требуется, чтобы система, в присутствии фонового шума, кодировала и передавала фоновый шум на низкой битовой скорости передачи данных, не снижая общего качества кодирования сигнала. Другими словами, определены требования к DTX и CNG. Более важно, требуется, чтобы система DTX/CNG была совместимой с G.729B. Хотя основанная на G.729B система DTX/CNG может быть легко перенесена в основанную на G.729.1 систему, две проблемы остаются неизменными. Во-первых, два кодировщика будут обрабатывать кадры разных длительностей, и, таким образом, прямой перенос может быть проблематичным. Более того, основанная на 729B система DTX/CNG относительно проста, особенно часть извлечения параметров. Чтобы удовлетворять требованиям DTX/CNG в G.729.1, основанная на 729B система DTX/CNG должна быть расширена. Во-вторых, основанная на G.729.1 система может обрабатывать широкополосные сигналы, но основанная на G.729B система может обрабатывать только сигналы нижней полосы. Схема для обработки составляющих верхней полосы сигнала фонового шума (4000 Гц~7000 Гц), таким образом, должна быть добавлена в основанную на G.729.1 систему DTX/CNG, с тем чтобы формировать полную систему.
Предшествующий уровень техники имеет по меньшей мере следующие проблемы. Существующие основанные на G.729B системы могут обрабатывать только фоновый шум нижней полосы, и, соответственно, качество кодирования сигнала не может гарантироваться при переносе в основанные на G.729.1 системы.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Ввиду вышеприведенного варианты осуществления изобретения должны предложить способ и устройство для кодирования и декодирования, которые наращиваются от G.729B, могут удовлетворять требованиям технического стандарта G.729.1, и полоса пропускания передачи сигнала может быть существенно сокращена наряду с тем, что гарантируется качество кодирования сигнала. Для решения вышеприведенной проблемы вариант осуществления изобретения предусматривает способ кодирования, включающий в себя:
извлечение характеристических параметров фонового шума в пределах периода затягивания;
для первого суперкадра после периода затягивания, выполнение кодирования фонового шума на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра;
для суперкадров после первого суперкадра, выполнение извлечения характеристических параметров фонового шума и выбора DTX для каждого кадра в суперкадрах после первого суперкадра; и
для суперкадров после первого суперкадра, выполнение кодирования фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX.
К тому же, предусмотрен способ декодирования, включающий в себя:
получение параметров CNG первого кадра первого суперкадра из кадра кодирования речи перед первым кадром первого суперкадра; и
выполнение декодирования фонового шума для первого кадра первого суперкадра на основании параметров CNG,
параметры CNG включают в себя:
целевой возбужденный коэффициент усиления, который определяется долговременным сглаженным коэффициентом усиления постоянного кодового словаря, который сглаживается по коэффициенту усиления постоянного кодового словаря кадров кодирования речи; и
коэффициент фильтра LPC, который определяется долговременным сглаженным коэффициентом фильтра LPC, который сглаживается по коэффициенту фильтра LPC кадров кодирования речи.
К тому же, предусмотрено устройство кодирования, включающее в себя:
первый блок извлечения, сконфигурированный для извлечения характеристических параметров фонового шума в пределах периода затягивания;
второй блок кодирования, сконфигурированный, чтобы: для первого суперкадра после периода затягивания, выполнять кодирование фонового шума на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра;
второй блок извлечения, сконфигурированный, чтобы: для суперкадров после первого суперкадра, выполнять извлечение характеристических параметров фонового шума для каждого кадра;
блок выбора DTX, сконфигурированный, чтобы: для суперкадров после первого суперкадра, выполнять выбор DTX для каждого кадра; и
третий блок кодирования, сконфигурированный, чтобы: для суперкадров после первого суперкадра, выполнять кодирование фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX.
К тому же, предусмотрено устройство декодирования, включающее в себя:
блок получения параметров CNG, сконфигурированный для получения параметров CNG первого кадра в первом суперкадре из кадра кодирования речи перед первым кадром в первом суперкадре; и
первый блок декодирования, сконфигурированный для выполнения декодирования фонового шума для первого кадра первого суперкадра на основании параметров CNG, параметры CNG включают в себя:
целевой возбужденный коэффициент усиления, который определяется долговременным сглаженным коэффициентом усиления постоянного кодового словаря, который сглаживается по коэффициенту усиления постоянного кодового словаря кадров кодирования речи; и
коэффициент фильтра LPC, который определяется долговременным сглаженным коэффициентом фильтра LPC, который сглаживается по коэффициенту фильтра LPC кадров кодирования речи.
По сравнению с предшествующим уровнем техники варианты осуществления изобретения могут обеспечивать следующие преимущества.
Согласно вариантам осуществления изобретения характеристические параметры фонового шума извлекаются в пределах периода затягивания; для первого суперкадра после периода затягивания, кодирование фонового шума выполняется на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра; для суперкадров после первого суперкадра, извлечение характеристических параметров фонового шума и выбор DTX выполняются для каждого кадра в суперкадрах после первого суперкадра; и для суперкадров после первого суперкадра, кодирование фонового шума выполняется на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX. Могут достигаться следующие преимущества.
Во-первых, полоса пропускания передачи сигнала может существенно уменьшаться наряду с тем, что гарантируется качество кодирования.
Во-вторых, требования технических условий системы G.729.1 могут удовлетворяться расширением системы G.729B.
В-третьих, фоновый шум может кодироваться более точно посредством гибкого и точного извлечения характеристических параметров фонового шума.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 - принципиальная схема системы сжатия периодов молчания;
фиг.2 - принципиальная схема кодировщика G.729.1;
фиг.3 - принципиальная схема декодера G.729.1;
фиг.4 - блок-схема последовательности операций способа кодирования согласно первому варианту осуществления настоящего изобретения;
фиг.5 - блок-схема последовательности операций способа кодирования первого суперкадра;
фиг.6 - блок-схема последовательности операций способа, показывающая извлечение параметров составляющей нижней полосы и выбор DTX;
фиг.7 - блок-схема последовательности операций способа, показывающая извлечение параметров фонового шума составляющей нижней полосы и выбор DTX в текущем суперкадре;
фиг.8 - блок-схема последовательности операций способа декодирования согласно первому варианту осуществления настоящего изобретения;
фиг.9 - принципиальная схема устройства кодирования согласно первому варианту осуществления настоящего изобретения; и
фиг.10 - принципиальная схема устройства декодирования согласно первому варианту осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
Дополнительно детализированные описания будут приведены в отношении реализации изобретения со ссылкой на прилагаемые чертежи.
Прежде всего будет приведено введение в связанные принципы основанных на стандартах G.729B систем.
1.1.2. Сходство и различие между параметрами кодирования кодового потока речи и кодового потока фонового шума
В современном кодировщике речи принцип синтезирования фонового шума является таким же, как принцип синтезирования речи. В обоих случаях применяется модель кодирование методом линейного предсказания с кодовым возбуждением (CELP). Принцип синтезирования речи является следующим: речь s(n) может рассматриваться в качестве выходного сигнала, являющегося результатом возбуждения фильтра ν(n) синтеза сигналом e(n) возбуждения. То есть s(n)=e(n)*ν(n). Это математическая модель для синтеза речи. Эта модель также используется для синтезирования фонового шума. Таким образом, характеристические параметры, описывающие характеристики фонового шума и периода молчания, передаваемых в кодовом потоке фонового шума, являются по существу такими же, как характеристические параметры в кодовом потоке речи, то есть параметры фильтра синтеза и параметры возбуждения, используемые при синтезе сигнала.
В кодовом потоке речи параметр(ы) фильтра синтеза, главным образом, указывают ссылкой на параметр(ы) квантования LSF, и параметр(ы) сигнала возбуждения могут включать в себя задержку адаптивного кодового словаря, коэффициент усиления адаптивного кодового словаря, параметр постоянного кодового словаря и параметр коэффициента усиления кодового словаря. В зависимости от разных кодировщиков речи эти параметры могут иметь разные количества квантованных битов и разные типы квантования. Для одного и того же кодировщика, если содержится несколько скоростей передачи, параметры кодирования по-прежнему могут иметь разные количества квантованных битов и разные типы квантования при разных скоростях передачи, так как характеристики сигнала могут описываться в разных аспектах и признаках.
Отличный от параметра(ов) кодирования речи параметр(ы) кодирования фонового шума описывает характеристики фонового шума. Сигнал возбуждения фонового шума может рассматриваться в качестве простой последовательности случайного шума. Эти последовательности могут просто формироваться в модуле генерации случайного шума сторон кодирования и декодирования. В таком случае амплитуды этих последовательностей могут регулироваться параметром энергии и может вырабатываться окончательный сигнал возбуждения. Таким образом, характеристические параметры сигнала возбуждения могут быть просто представлены параметром энергии без дополнительного описания по некоторым другим характеристическим параметрам. Поэтому в кодовом потоке фонового шума его параметр возбуждения является параметром энергии текущего кадра фонового шума, который отличен от речевого кадра. Как и в речевом кадре, параметр(ы) фильтра синтеза в кодовом потоке фонового шума является параметром(ами) квантования LSF, но специфичный способ квантования может быть иным. Ввиду вышеприведенного анализа схема для кодирования фонового шума в сущности может рассматриваться в качестве простой схемы для кодирования «речи».
Схема обработки шума в G.729B (обратитесь к протоколу 729B))
1.2.1 Технический обзор DTX/CNG
Схема сжатия периодов молчания в G.729B является предыдущей технологией сжатия периодов молчания, а алгоритмической моделью ее технологии кодирования и декодирования фонового шума является CELP. Поэтому передаваемые параметры фонового шума также извлекаются на основании модели CELP, в том числе параметр(ы) фильтра синтеза и параметр(ы) возбуждения, описывающие фоновый шум. Параметр(ы) возбуждения является параметром(ами) энергии, используемым для описания энергии фонового шума. Нет никаких параметров адаптивного или постоянного кодового словаря, используемых для описания возбуждения речи. Параметр фильтра и параметр кодирования речи являются в основном совместимыми, будучи параметром LSF. На стороне кодирования, для каждого кадра входных речевых сигналов, если выбором VAD является «0», указывающий, что текущий сигнал является фоновым шумом, кодировщик подает сигнал в модуль DTX. Модуль DTX извлекает параметры фонового шума из входных сигналов, а затем кодирует фоновый шум на основании изменения параметров каждого кадра. Если параметр фильтра и параметр энергии, извлеченные из текущего кадра, имеют большое изменение по сравнению с несколькими предыдущими кадрами, он указывает, что текущие характеристики фонового шума являются в значительной степени отличными от предыдущих характеристик фонового шума. В таком случае модуль кодирования шума кодирует параметры фонового шума, извлеченные из текущего кадра, и собирает их в кадр дескриптора вставки периода молчания (SID). Кадр SID передается на сторону декодирования. Иначе, кадр (НЕТ ДАННЫХ) NODATA (без данных) передается на сторону декодирования. Оба, кадр SID и кадр NODATA, могут указываться ссылкой как неречевой кадр. На стороне декодирования, по входу в фазу фонового шума, модуль CNG может синтезировать комфортный шум, описывающий характеристики фонового шума стороны кодирования на основании принятого неречевого кадра.
В G.729B сигнальная обработка выполняется на покадровой основе. Длительность кадра имеет значение 10 мс. Модули DTX, кодирования шума и CNG 729B будут описаны в следующих трех разделах.
1.2.2 Модуль DTX
Модуль DTX сконфигурирован, главным образом, для оценки и квантования параметра фонового шума и передачи кадров SID. В неречевой фазе модуль DTX передает информацию о фоновом шуме на сторону декодирования. Информация о фоновом шуме инкапсулируется в кадр SID для передачи. Если текущий фоновый шум не стабилен, передается кадр SID. Иначе, передается кадр NODATA, не содержащий в себе никаких данных. Дополнительно, интервал между двумя следующими друг за другом кадрами SID может быть ограничен двумя кадрами. Если фоновый шум нестабилен, кадры SID должны передаваться непрерывно, и, таким образом, передача следующего кадра SID будет иметь задержку.
На стороне кодирования модуль DTX принимает выходной сигнал модуля VAD в кодировщике, коэффициент автокорреляции и несколько предыдущих отсчетов возбуждения. В каждом кадре модуль DTX описывает кадр без передачи, речевой кадр и кадр SID с помощью 0, 1 и 2 соответственно. Типами кадра являются Ftyp = 0, Ftyp = 1 и Ftyp = 2.
Объекты оценки фонового шума включают в себя энергетический уровень и огибающую спектра фонового шума, которые по существу подобны параметру кодирования речи. Таким образом, расчет огибающей спектра по существу подобен расчету параметра кодирования речи, который использует параметры из двух предыдущих кадров. Параметр энергии является средним значением энергий нескольких предыдущих кадров.
Основные операции модуля DTX
a. Хранение коэффициентов автокорреляции каждого кадра
Что касается кадра входного сигнала, то есть речевого кадра или неречевого кадра, коэффициенты автокорреляции текущего кадра t могут удерживаться в буфере. Эти коэффициенты автокорреляции обозначены посредством r t '(j), j=0...10, где j - индекс автокорреляционной функции для каждого кадра.
b. Оценка типа текущего кадра
Если текущий кадр является речевым кадром, то есть VAD = 1, тип текущего кадра устанавливается в 1. Если текущий кадр является неречевым кадром, текущий фильтр A t(z) LPC может рассчитываться на основании коэффициентов автокорреляции предыдущего кадра(ов) и текущего кадра. Перед расчетом A t(z), прежде всего, может быть рассчитано среднее коэффициентов автокорреляции двух следующих друг за другом кадров:
где N cur =2. После расчета R t(j) алгоритм Левинсона-Дурбина может использоваться для расчета A t(z). К тому же, алгоритм Левинсона-Дурбина может использоваться для расчета остаточной энергии E t, которая может браться в качестве простой оценки энергии возбуждения кадра.
Тип текущего кадра может оцениваться, как изложено ниже.
(1) Если текущий кадр является первым неактивным кадром, кадр устанавливается в качестве кадра SID. Пусть переменная , характеризующая энергию сигнала, будет равна E t, а параметр k E, характеризующий количество кадров, установлен в 1:
(2) Для других неречевых кадров алгоритм сравнивает параметр предыдущего кадра SID с текущим соответствующим параметром. Если текущий фильтр в значительной степени отличен от предыдущего фильтра или текущая энергия возбуждения в значительной степени отлична от предыдущей энергии возбуждения, пусть флажковый признак flag_change будет равным 1. Иначе, значение флага остается неизменным.
(3) Текущий счетчик count_fr указывает количество кадров между текущим кадром и предыдущим SID. Если это значение является большим, чем N min, передается кадр SID. Если flag_change равен 1, кадр SID также передается. В других случаях текущий кадр не передается.
Иначе: Ftyp t=0
В случае кадра SID счетчик count_fr и флажковый признак flag_change повторно инициализируются в 0.
c. Коэффициенты фильтра LPC
Пусть коэффициентами фильтра A sid(z) LPC предыдущего SID будут a sid(j), j = 0...10. Если расстояние Итакуры между фильтрами SID-LPC текущего кадра и предыдущего кадра превышает заданное пороговое значение, они могут рассматриваться в качестве значительно разных.
где R a(j), j = 0...10 - коэффициенты автокорреляции коэффициентов фильтра SID:
d. Энергия кадра
Сумма энергий кадра может быть рассчитана в качестве:
Затем квантуется 5-битным квантователем в логарифмической области. Декодированная логарифмическая энергия E q сравнивается с предыдущей декодированной логарифмической энергией SID, . Если они отличаются более чем на 2 дБ, они могут считаться имеющими значительно разные энергии.
1.2.3 Кадр кодирования шума и SID
Параметрами в кадре SID являются коэффициент фильтра LPC (огибающая спектра) и параметр квантования энергии.
При расчете фильтра SID-LPC учитывается стабильность между следующими друг за другом кадрами шума.
Прежде всего, рассчитывается средний фильтр LPC, , для N p кадров перед текущим кадром SID. Используются автокорреляционная функция и . Затем вводится в алгоритм Левинсона-Дурбина, с тем чтобы получать . может быть представлен как:
где значение N p зафиксировано на 6. Количество кадров t' имеет диапазон [t - 1, t - N cur]. Таким образом, фильтр SID-LPC может быть представлен в качестве:
Другими словами, алгоритм будет рассчитывать средний коэффициент фильтра LPC, , нескольких предыдущих кадров, а затем сравнивать его с текущим коэффициентом фильтра LPC, A t(z). Если они имеют незначительное различие, среднее нескольких предыдущих кадров будет выбираться для текущего кадра, когда квантуется коэффициент LPC. Иначе, будет выбираться A t(z) текущего кадра. После выбора коэффициентов фильтра LPC алгоритм может преобразовывать эти коэффициенты фильтра LPC в область LSF, а затем выполняется кодирование квантования. Способ выбора для кодирования квантования может быть таким же, как способ кодирования квантования для кодирования речи.
Параметр(ы) энергии квантуется 5-битным линейным квантователем в логарифмической области. Этим способом было выполнено кодирование фонового шума. Затем эти кодированные биты инкапсулируются в кадр SID, как показано в таблице A.
Параметры в кадре SID состоят из четырех индексов кодового словаря, один из которых указывает индекс квантования энергии (5 битов). Три оставшихся указывают индекс квантования спектра (10 битов).
1.2.4 Модуль CNG
На стороне декодирования алгоритм использует регулируемый по уровню псевдобелый шум для возбуждения интерполированного фильтра синтеза LPC, с тем чтобы получать комфортный фоновый шум, что по существу подобно синтезу речи. Здесь уровень возбуждения и коэффициент фильтра LPC получаются из предыдущего кадра SID соответственно. Коэффициент фильтра LPC подкадра может быть получен посредством интерполяции параметра LSP в кадре SID. Способ интерполяции подобен схеме интерполяции в кодировщике речи.
Возбуждение ex(n) псевдобелого шума является смесью возбуждения ex1(n) речи и возбуждения ex2(n) гауссова белого шума. Коэффициент усиления для ex1(n) относительно мал. Цель использования ex1(n) состоит в том, чтобы сделать переход между речью и отсутствием речи более естественным.
Таким образом, после того как получен сигнал возбуждения, он может использоваться для возбуждения фильтра синтеза, с тем чтобы получать комфортный фоновый шум.
Поскольку неречевое кодирование и декодирование на сторонах кодирования и декодирования должно сохранять синхронизацию, обе стороны будут вырабатывать сигналы возбуждения для кадра SID и кадра без передачи.
Прежде всего, определяется целевой возбужденный коэффициент усиления , который берется в качестве корня квадратного от возбужденных средних энергий текущего кадра. может быть получен с помощью следующего алгоритма сглаживания, где - коэффициент для декодированного кадра SID:
Восемьдесят отсчетов делятся на два подкадра. Для каждого подкадра, сигнал возбуждения модуля CNG может быть синтезирован, как изложено ниже.
(1) Шаговая задержка выбирается случайным образом из диапазона [40, 103].
(2) Положения и символы ненулевых импульсов могут выбираться случайным образом из вектора постоянного кодового словаря подкадра (структура положений и символов этих ненулевых импульсов совместима с G.729).
(3) Возбужденный сигнал адаптивного кодового словаря с коэффициентом усиления выбирается и помечается в качестве e a(n), n=0...39. Выбранный сигнал возбуждения постоянного кодового словаря может быть помечен как e f(n), n=0...39. Затем на основании энергии подкадра адаптивный коэффициент G a усиления и коэффициент G f усиления постоянного кодового словаря могут быть рассчитаны как:
Должно быть отмечено, что G f может выбирать отрицательное значение.
Определение производится, как изложено ниже:
Из структуры возбуждения ACELP получаем:
Если коэффициент G a адаптивного кодового словаря постоянен, алгоритм, характеризующий G a, становится алгоритмом второго порядка по отношению к G f:
Значение G a будет ограничиваться так, чтобы вышеприведенный алгоритм имел решение. Кроме того, может быть ограничено применение некоторых коэффициентов усиления адаптивного кодового словаря. При этом способе коэффициент G a усиления адаптивного кодового словаря может выбираться случайным образом в следующем диапазоне:
Корень, имеющий минимальное абсолютное значение среди корней алгоритма
берется в качестве значения G f.
В заключение, сигнал возбуждения G.729 может быть построен, как изложено ниже:
Синтезированное возбуждение ex(n) может синтезироваться с помощью следующего способа.
Пусть E 1 будет энергией ex 1(n), E 2 будет энергией ex 2(n), а E 3 будет произведением ex 1(n) и ex 2(n):
Количество точек расчета превышает его собственный размер.
Пусть α и β будут коэффициентами масштабирования у ex 1(n) и ex 2(n) при смешанном возбуждении, где α установлено в 0,6, а β определяется следующим алгоритмом квадратного уравнения:
Если нет решения для β, β будет установлено в 0, а α будет установлено в 1. Окончательное возбуждение модуля CNG становится ex(n):
Базовые принципы модуля DTX/CNG в кодировщике 729.B были описаны выше.
1.3 Базовая последовательность операций кодировщика и декодера G.729.1
G.729.1 - стандарт кодирования и декодирования речи нового поколения, вновь опубликованный ITU (см. ссылку [1]). Он является расширением для ITU-TG.729 на масштабируемой широкой полосе пропускания 8-32 кбит/с (50-7000 Гц). По умолчанию, частоты выборки на входе кодировщика и выходе декодера имеют значение 16000 Гц. Кодовый поток, сформированный кодировщиком, разделяется на уровне, с содержанием 12 встроенных уровней, указываемых ссылкой как уровни 1-12 соответственно. Уровень 1 является базовым уровнем, соответствующим битовой скорости передачи данных в 8 кбит/с. Этот уровень совместим с кодовым потоком G.729, так что G.729EV является имеющим возможность взаимодействовать с G.729. Уровень 2 является уровнем прироста нижней полосы и увеличен на 4 кбит/с. Уровни 3~12 являются уровнями широкополосного прироста, и всего может быть набавлено 20 кбит/с, 2 кбит/с для каждого уровня.
Кодировщик и декодер G.729.1 основаны на трехстадийной структуре: кодировании и декодировании встроенного кодирования методом линейного предсказания с кодовым возбуждением (CELP), расширении полосы пропускания временной области (TDBWE) и кодировании и декодировании оценки преобразования, известном как подавление помех дискретизации временной области (TDAC). Во время стадии встроенного CELP формируются уровень 1 и уровень 2, с тем чтобы вырабатывать сигналы синтеза нижней полосы 8 кбит/с и 12 кбит/с (50-4000 Гц). Стадия TDBWE формирует уровень 3, и вырабатывается широкополосный выходной сигнал 14 кбит/с (50-7000 Гц). Стадия TDAC работает в области модифицированного дискретного косинусного преобразования (MDCT), и формируются уровни 4~12. Таким образом, качество сигнала возрастает с 14 кбит/с до 32 кбит/с. Кодирование и декодирование TDAC может представлять сигнал ошибки кодирования и декодирования взвешенного CELP полосы 50-4000 Гц и входной сигнал полосы 4000-7000 Гц.
Со ссылкой на фиг.2, приведена функциональная структурная схема, показывающая кодировщик G.729.1. Кодировщик работает в 20-милисекундном входном суперкадре. По умолчанию, входной сигнал s WB(n) подвергается выборке отсчетов на 16000 Гц. Поэтому входной суперкадр имеет длину в 320 отсчетов.
Прежде всего, входной сигнал s WB(n) разделяется фильтром QMF (H 1(z), H 2(z)) на два поддиапазона. Сигнал нижнего поддиапазона предварительно обрабатывается в фильтре верхних частот, имеющем частоту среза 50 Гц. Выходной сигнал s LB(n) кодируется посредством использования кодировщика встроенного кодирования методом линейного предсказания с кодовым возбуждением нижней полосы 8 кбит/с~12 кбит/с. Разностный сигнал d LB(n) между s LB(n) и сигналом локального синтеза кодировщика CELP на скорости передачи в 12 кбит/с проходит через взвешивающий фильтр (W LB(z)) восприятия для получения сигнала . Сигнал подвергается MDCT в частотную область. Взвешивающий фильтр W LB(z) включает в себя компенсацию усиления, чтобы поддерживать спектральную непрерывность между выходным сигналом фильтра и входным сигналом s HB (n) верхнего поддиапазона.
Составляющая верхнего поддиапазона перемножается с (-1)n, чтобы подвергаться спектральному наложению. Получается сигнал . предварительно обрабатывается фильтром нижних частот, имеющим частоту среза 3000 Гц. Фильтрованный сигнал s HB(n) кодируется в кодировщике TDBWE. Преобразование MDCT выполняется над сигналом s HB(n) для получения сигнала в частотной области.
В заключение, два набора коэффициентов и S HB(k) MDCT кодируются в кодировщике TDAC.
В дополнение, некоторые другие параметры передаются кодировщиком с маскированием ошибок кадра (FEC) для исправления ошибок, вызываемых, когда потеря кадра возникает во время передачи.
Фиг.3 - структурная схема системы декодера. Режим работы декодера определяется количеством уровней принимаемого кодового потока или, равным образом, скоростью приема.
(1) Если скоростью приема является 8 кбит/с или 12 кбит/с (то есть принимаются только первый уровень или два первых уровня), декодер встроенного CELP декодирует кодовый поток первого уровня или первых двух уровней, получает декодированный сигнал и выполняет постфильтрацию для получения , который проходит через фильтр верхних частот для получения Гребенка фильтров синтеза QMF вырабатывает выходной сигнал, имеющий сигнал синтеза высоких частот, установленный в 0.
(2) Если скоростью приема является 14 кбит/с (то есть принимаются первые три уровня), кроме того, что декодер CELP декодирует составляющую нижней полосы, декодер TDBWE декодирует составляющую сигнала верхней полосы. Преобразование MDCT выполняется над , частотные составляющие, более высокие, чем 3000 Гц, в спектре составляющей верхнего поддиапазона (соответствующей более высоким, чем 7000 Гц, на частоте выборки отсчетов 16 кГц) устанавливаются в 0, а затем выполняется обратное преобразование MDCT. Инверсия спектра выполняется после наложения. Реконструированный сигнал верхней полосы синтезируется в гребенке фильтров QMF с помощью составляющей нижней полосы, декодированной декодером CELP, для получения широкополосного сигнала, имеющего скорость передачи 16 кГц (без фильтрации верхних частот).
(3) Если принятый кодовый поток имеет скорость передачи, более высокую, чем 14 кбит/с (соответствующую первым четырем уровням или большему количеству уровней), кроме того, что декодер CELP получает составляющую нижнего поддиапазона посредством декодирования, и декодер TDBWE получает составляющую верхнего поддиапазона посредством декодирования, декодер TDAC ответственен за реконструкцию коэффициентов и MDCT, соответствующих реконструированному взвешенному разностному сигналу нижней полосы (0-4000 Гц) и реконструированному сигналу верхней полосы (4000-7000 Гц). (Отметим, что в верхней полосе неприемный поддиапазон и поддиапазон назначения нулевого кода TDAC замещены сигналом поддиапазона установки уровня). После обратного MDCT и сложения с перекрытием и преобразуются в сигнал во временной области. Затем сигнал нижней полосы обрабатывается взвешивающим фильтром восприятия. Для ослабления влияния от переменного кодирования сигналы и нижней полосы и верхней полосы подвергаются детектированию прямого/обратного эхо-сигнала и сжатию. Сигнал синтеза нижней полосы подвергается постфильтрации. Сигнал синтеза верхней полосы подвергается спектральному наложению (-1)n. Затем гребенка фильтров синтеза QMF комбинирует и избыточно дискретизирует сигналы и , и, в заключение, получается широкополосный сигнал 16 кГц.
1.4 Требования к системе DTX/CNG G.729.1
Для сбережения полосы пропускания G.729.1 дополнительно определяет требования к системе сжатия периодов молчания. Требуется, чтобы в присутствии фонового шума система кодировала и передавала фоновый шум способом кодирования низкой скорости, не снижая общего качества кодирования сигнала. Другими словами, определены требования к DTX и CNG. Более важно, требуется, чтобы его система DTX/CNG была совместимой с G.729B. Хотя основанная на G.729B система DTX/CNG может быть легко перенесена в G.7290.1, две проблемы остаются неизменными. Во-первых, два кодировщика обрабатывают кадры разных длительностей, и, таким образом, прямой перенос может быть проблематичным. Более того, основанные на 729B системы DTX/CNG относительно просты, особенно часть извлечения параметров. Чтобы удовлетворять требованиям к системе DTX/CNG G.729.1, основанные на 729B системы DTX/CNG должны быть расширены. Во-вторых, G.729.1 обрабатывает сигналы, имеющие широкую полосу, а G.729B обрабатывает сигналы, имеющие узкую полосу. Схема для обработки составляющих верхней полосы сигнала фонового шума (4000 Гц~7000 Гц) должна быть добавлена в основанную на G.729.1 систему DTX/CNG, с тем чтобы формировать полную систему.
В G.729.1 верхняя полоса и нижняя полоса фонового шума могут обрабатываться раздельно. Обработка верхней полосы может быть относительно простой. Кодирование характеристических параметров фонового шума может указывать на кодирование TDBWE кодировщика речи. Часть выбора просто сравнивает стабильность огибающей в частотной области и стабильность огибающей во временной области. Техническое решение и задача изобретения фокусируются на полосе низких частот, то есть нижней полосе. Последующая система DTX/CNG G.729.1 может опираться на последовательности операций, имеющие отношение к составляющей DTX/CNG нижней полосы.
Фиг.4 показывает первый вариант осуществления способа кодирования согласно изобретению, включающего в себя следующие этапы.
На этапе 401 характеристический параметр(ы) фонового шума извлекается в пределах периода затягивания.
На этапе 402, для первого суперкадра после периода затягивания, кодирование фонового шума выполняется на основании извлеченного характеристического параметра(ов) фонового шума в пределах периода затягивания и характеристического параметра(ов) фонового шума первого суперкадра, с тем чтобы получить первый кадр SID.
На этапе 403, для суперкадров после первого суперкадра, извлечение характеристического параметра фонового шума и выбор DTX выполняются для каждого кадра в суперкадрах после первого суперкадра.
На этапе 404, для суперкадров после первого суперкадра, кодирование фонового шума выполняется на основании извлеченного характеристического параметра(ов) фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX.
Согласно варианту осуществления изобретения характеристический параметр(ы) фонового шума извлекается в пределах периода затягивания; для первого суперкадра после периода затягивания, кодирование фонового шума выполняется на основании извлеченного характеристического параметра(ов) фонового шума в пределах периода затягивания и характеристического параметра(ов) фонового шума первого суперкадра.
Для суперкадров после первого суперкадра, извлечение характеристических параметров фонового шума и выбор DTX выполняются для каждого кадра в суперкадрах после первого суперкадра.
Для суперкадров после первого суперкадра, кодирование фонового шума выполняется на основании извлеченного характеристического параметра(ов) фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX. Могут быть достигнуты следующие преимущества.
Во-первых, полоса пропускания передачи сигнала может существенно уменьшаться наряду с тем, что гарантируется качество кодирования сигнала.
Во-вторых, требования технических условий системы G.729.1 могут удовлетворяться расширением системы G.729B.
В-третьих, фоновый шум может кодироваться более точно посредством гибкого и точного извлечения характеристического параметра фонового шума.
В различных вариантах осуществления изобретения для удовлетворения требований к техническим стандартам, имеющим отношение к G.729.1, каждый суперкадр может быть установлен в 20 мс, а кадр, содержащийся в каждом суперкадре, может быть установлен в 10 мс. С различными вариантами осуществления изобретения расширение G.729B может быть успешно выполнено для удовлетворения технических требований к G.729.1. Между тем, специалисты в данной области техники могут понять, что технические решения, предусмотренные в различных вариантах осуществления изобретения, могут применяться для систем вне G.729.1. Подобным образом, фоновый шум может иметь более низкую занятость полосы пропускания, и может быть привнесено более высокое качество связи. Другими словами, применение изобретения не ограничено системой G.729.1.
Подробные описания будут приведены ниже в отношении второго варианта осуществления способа кодирования по изобретению со ссылкой на прилагаемые чертежи.
В G729.1 и G729B, кодируются кадры разных длительностей, 20 мс на кадр для первого и 10 мс на кадр для последнего. Другими словами, один кадр в G729.1 соответствует двум кадрам в G729B. Для легкости иллюстрации один кадр в G729.1 указывается ссылкой как суперкадр, а один кадр в G729B указывается ссылкой как кадр в материалах настоящей заявки. В описании системы DTX/CNG G729.1, изобретение, главным образом, фокусируется на таком различии. То есть система DTX/CNG G729B обновляется и расширяется, чтобы адаптироваться к характеристикам системы ITU729.1.
I. Изучение шума
Во-первых, начальные 120 мс фонового шума кодируются на скорости кодирования речи.
Чтобы получить точное извлечение характеристического параметра фонового шума в пределах определенного периода времени после того, как заканчивается речевой кадр (результат VAD указывает, что текущий кадр переключился с активной речи на неактивный фоновый шум), фаза обработки фонового шума не начинается немедленно. Скорее, фоновый шум продолжает кодироваться на скорости кодирования речи. Такой период затягивания типично длится 6 суперкадров, то есть 120 мс (могут указываться ссылкой AMR и AMRWB).
Во-вторых, в пределах периода затягивания, для каждого кадра 10 мс каждого суперкадра, коэффициенты автокорреляции, , j=0...10, фонового шума могут буферизироваться, где t - индекс суперкадра, а k=1,2 - индексы для первого и второго кадров 10 мс в каждом суперкадре. Эти коэффициенты автокорреляции могут отражать характеристики фонового шума во время фазы затягивания. Когда кодируется фоновый шум, эти коэффициенты автокорреляции могут использоваться для точного извлечения характеристического параметра фонового шума, так что фоновый шум может кодироваться более точно. В практических применениях продолжительность изучения шума может устанавливаться по необходимости, не ограниченной 120 мс. Период затягивания может быть установлен в любое другое значение по необходимости.
II. Кодирование первого суперкадра после фазы затягивания
После того как фаза затягивания подходит к концу, фоновый шум обрабатывается по мере обработки фонового шума. Фиг.5 - последовательность операций кодирования первого суперкадра, включающая в себя следующие этапы.
В первом суперкадре, после того как заканчивается фаза затягивания, характеристические параметры фонового шума, извлеченные во время фазы изучения шума, и текущий суперкадр могут кодироваться для получения первого суперкадра SID. В первом суперкадре после фазы затягивания кодируются и передаются параметры фонового шума. Таким образом, этот суперкадр в целом указывается ссылкой как первый суперкадр SID. Кодированный первый суперкадр SID передается на сторону декодирования и декодируется. Поскольку один суперкадр соответствует двум кадрам 10 мс, для того чтобы точно получать параметр кодирования, характеристические параметры A t(z) и E t фонового шума будут извлекаться из второго кадра 10 мс.
A t(z) фильтра LPC и остаточная энергия E t рассчитываются, как изложено ниже.
На этапе 501 рассчитывается среднее значение всех коэффициентов автокорреляции в буфере.
где N cur = 5, то есть размером буфера являются 10 кадров 10 мс.
На этапе 502 A t(z) фильтра LPC рассчитывается по среднему R t(j) коэффициентов автокорреляции на основании алгоритма Левинсона-Дурбина, где коэффициентом является a t(j), j = 0,...,10. Остаточная энергия E t также рассчитывается по среднему R t(j) коэффициентов автокорреляции на основании алгоритма Левинсона-Дурбина, которая может браться в качестве простой оценки параметра энергии текущего суперкадра.
В практических применениях для получения более устойчивой оценки параметра энергии суперкадра долговременное сглаживание может выполняться над оцененной остаточной энергией E t, а сглаженная оценка E_LT энергии может браться в качестве окончательной оценки параметра энергии текущего суперкадра, которая повторно присваивается E t. Операция сглаживания является следующей:
где 0 < α < 1. В предпочтительном варианте осуществления α может быть 0,9 или может быть установлено в любое другое значение по необходимости.
На этапе 503 алгоритм преобразует коэффициент A t(z) фильтра LPC в область LSF, а затем выполняет кодирование квантования.
На этапе 504 линейное квантование выполняется над параметром E t остаточной энергии в логарифмической области.
После того как кодирование составляющей нижней полосы фонового шума завершено, эти закодированные биты инкапсулируются в кадре SID и передаются на сторону декодирования. Таким образом, завершается кодирование составляющей нижней полосы первого кадра SID.
В вариантах осуществления изобретения, когда составляющая нижней полосы первого кадра SID закодирована, характеристики фонового шума во время фазы затягивания полностью учитываются. Характеристики фонового шума во время фазы затягивания отражаются в параметрах кодирования, так что эти параметры кодирования представляют характеристики текущего фонового шума до наибольшей степени. Поэтому извлечение параметров в вариантах осуществления изобретения может быть более точным и обоснованным, чем G.729B.
III. Выбор DTX
Для легкости иллюстрации предполагается, что извлеченный параметр обозначен в виде PARA t,k, где t - индекс суперкадра, а «k=1,2» - индексы для первого и второго кадров 10 мс в каждом суперкадре. Для неречевых суперкадров, иных, чем первый суперкадр, извлечение параметров и выбор DTX могут выполняться для каждого кадра 10 мс.
Фиг.6 - блок-схема последовательности операций способа, показывающая извлечение параметров составляющей нижней полосы и выбор DTX, включающего в себя следующие этапы.
Прежде всего, извлечение параметров фонового шума и выбор DTX выполняются для первого кадра 10 мс после первого суперкадра.
Что касается первого кадра 10 мс, спектральный параметр A t,1(z) и параметр E t,1 энергии возбуждения фонового шума могут рассчитываться, как изложено ниже.
На этапе 601 стационарный средний коэффициент R t,1(j) автокорреляции текущего кадра может рассчитываться на основании значений коэффициентов автокорреляции четырех последних следующих друг за другом кадров 10 мс, , , и :
где rmin1(j) и rmin2(j) представляют коэффициенты автокорреляции, имеющие следующее наименьше и следующее за следующим наименьшее норменные значения коэффициентов автокорреляции среди , , и , то есть коэффициенты автокорреляции двух кадров 10 мс, имеющих промежуточные норменные значения коэффициентов автокорреляции, исключая наибольшее и наименьшее норменные значения коэффициентов автокорреляции.
Нормы коэффициентов автокорреляции , , и являются следующими:
Четыре норменных значения коэффициентов автокорреляции сортируются, причем r min1(j) и r min2(j) соответствуют коэффициентам автокорреляции двух кадров 10 мс, имеющих промежуточные норменные значения коэффициентов автокорреляции.
На этапе 602 A t,1(z) фильтра LPC фонового шума рассчитывается по стационарному среднему коэффициенту R t,1(j) автокорреляции текущего кадра на основании алгоритма Левинсона-Дурбина, где коэффициентами являются a t(j), j = 0,...,10. Остаточная энергия E t,1 также рассчитывается по стационарному среднему коэффициенту R t,l(j) автокорреляции текущего кадра на основании алгоритма Левинсона-Дурбина.
В практических применениях для получения более устойчивой оценки энергии кадра долговременное сглаживание может выполняться над оцененной E t,1, и сглаженная оценка E_LT энергии может браться в качестве оценки энергии возбуждения текущего кадра, которая повторно присваивается E t,1. Операции являются следующими:
где α имеет значение 0,9.
На этапе 603, после извлечения параметров, выбор DTX выполняется для текущего кадра 10 мс. Более точно, выбор DTX является следующим.
Алгоритм сравнивает параметр кодирования составляющей нижней полосы в предыдущем суперкадре SID (суперкадр SID является суперкадром фонового шума, который должен кодироваться и передаваться после подвергания выбору DTX. Если выбор DTX указывает, что суперкадр не передан, он не обозначается в качестве суперкадра SID) с соответствующим параметром кодирования текущего кадра 10 мс. Если текущий коэффициент фильтра LPC в значительной степени отличен от коэффициента фильтра LPC в предыдущем суперкадре SID или текущий параметр энергии в значительной степени отличен от параметра энергии предыдущего суперкадра SID (см. следующий алгоритм), флажковый признак изменения параметра текущего кадра 10 мс, flag_change_first, устанавливается в 1. Иначе, он сбрасывается в ноль. Специфичный способ определения на этом этапе подобен G.729B.
Прежде всего, предполагается, что коэффициентом фильтра A sid(z) LPC в предыдущем суперкадре SID является a sid(j), j = 0...10. Если расстояние Итакуры между фильтрами LPC текущего кадра 10 мс и предыдущего суперкадра SID превышает определенное пороговое значение, flag_change_first устанавливается в 1. Иначе, он устанавливается в 0.
где thr - специальное пороговое значение, обычно в пределах диапазона от 1,0 до 1,5. В этом варианте осуществления оно имеет значение 1,342676475. R a(j), j=0...10 - коэффициенты автокорреляции коэффициентов фильтра LPC предыдущего суперкадра SID.
Затем может быть рассчитано среднее значение остаточных энергий в сумме четырех кадров 10 мс, то есть текущего кадра 10 мс и трех последних кадров 10 мс.
Пожалуйста, заметьте, что, если текущий суперкадр является вторым суперкадром в течение фазы кодирования шума (то есть его предыдущий суперкадр является первым суперкадром), значением E t-2,2 является 0. квантуется квантователем в логарифмической области. Декодированная логарифмическая энергия E q,1 сравнивается с декодированной логарифмической энергией предыдущего суперкадра SID. Если они отличаются больше, чем на 3 дБ, flag_change_first устанавливается в 1. Иначе, он устанавливается в 0:
Для специалистов в данной области техники, разность между двумя энергиями возбуждения может быть установлена в любое другое значение по необходимости, что по-прежнему подпадает под объем изобретения.
После извлечения параметров фонового шума и выбора DTX первого кадра 10 мс извлечение параметров фонового шума и выбор DTX могут выполняться для второго кадра 10 мс.
Извлечение параметров фонового шума и выбора DTX второго кадра 10 мс подобны первому кадру 10 мс. Связанными параметрами второго кадра 10 мс являются: стационарное среднее R t,2(j) коэффициентов автокорреляции четырех следующих друг за другом кадров 10 мс, среднее значение энергий кадров четырех следующих друг за другом кадров 10 мс и флажковый признак DTX, flag_change_second, второго кадра 10 мс.
IV. Извлечение параметров фонового шума и выбор DTX для составляющей нижней полосы текущего суперкадра
Фиг.7 - блок-схема последовательности операций способа, показывающая извлечение параметров фонового шума составляющей нижней полосы и выбор DTX в текущем суперкадре, включающего в себя следующие этапы.
На этапе 701 окончательный флажковый признак DTX, flag_change, составляющей нижней полосы текущего суперкадра определяется, как изложено ниже:
Другими словами, до тех пор, пока выбор DTX кадра 10 мс представляет 1, окончательный выбор составляющей нижней полосы текущего суперкадра представляет 1.
На этапе 702 определяется окончательный выбор DTX текущего суперкадра, окончательный выбор DTX текущего суперкадра включает в себя составляющую верхней полосы текущего суперкадра. В таком случае характеристики составляющей верхней полосы также должны учитываться. Окончательный выбор DTX текущего суперкадра определяется совместно, составляющей нижней полосы и составляющей верхней полосы. Если окончательный выбор DTX текущего суперкадра представляет 1, выполняется этап 703. Если окончательный выбор DTX текущего суперкадра представляет 0, декодирование не выполняется, и кадр NODATA, не содержащий в себе никаких данных, отправляется на сторону декодирования.
На этапе 703, если окончательный выбор DTX текущего суперкадра представляет 1, извлекается характеристический параметр(ы) фонового шума текущего суперкадра. Источниками, из которых извлекается характеристический параметр(ы) фонового шума текущего суперкадра, могут быть параметры двух текущих кадров 10 мс. Другими словами, параметры текущих двух кадров 10 мс сглаживаются для получения параметра кодирования фонового шума текущего суперкадра. Последовательность операций для извлечения характеристического параметра фонового шума и сглаживания характеристического параметра фонового шума может быть следующей.
Прежде всего, определяется коэффициент сглаживания, smooth_rate:
Другими словами, если выбор DTX первого кадра 10 мс представляет 0, а выбор DTX второго кадра 10 мс представляет 1, весом сглаживания для характеристического параметра фонового шума первого кадра 10 мс является 0,1, а средним весом характеристического параметра фонового шума второго кадра 10 мс является 0,9 во время сглаживания. Иначе, веса сглаживания для характеристических параметров фонового шума двух кадров 10 мс оба имеют значение 0,5.
Затем, характеристические параметры фонового шума двух кадров 10 мс сглаживаются, чтобы получить коэффициент фильтра LPC текущего суперкадра и рассчитать среднее значение энергий кадров у двух кадров 10 мс. Последовательность операций является следующей.
Прежде всего, сглаженное среднее значение R t(j) может рассчитываться по стационарному среднему значению коэффициентов автокорреляции двух кадров 10 мс, как изложено ниже:
После того как получено сглаженное среднее значение R t(j), A t(z) фильтра LPC может быть получен на основании алгоритма Левинсона-Дурбина. Коэффициентами являются a t(j), j = 0,...,10.
Затем, среднее значение энергий кадров у двух кадров 10 мс может рассчитываться как:
Этим способом могут быть получены параметры кодирования составляющей нижней полосы текущего суперкадра: коэффициент фильтра LPC и среднее значение энергии кадра. Извлечение характеристических параметров фонового шума и управление DTX полностью учло характеристики такого кадра 10 мс в текущем суперкадре. Поэтому алгоритм является точным.
VI. Кодирование кадра SID
Подобно G.729B, окончательное кодирование спектральных параметров кадра SID учли стабильность между следующими друг за другом кадрами шума. Специфичные операции подобны G729B.
Прежде всего, рассчитывается средний фильтра LPC, N p суперкадров перед текущим суперкадром. Здесь используется среднее значение автокорреляционной функции . Затем, вводится в алгоритм Левинсона-Дурбина, с тем чтобы получить . представлен в качестве:
где значение N p зафиксировано на 5. Таким образом, фильтр SID-LPC задан посредством:
Другими словами, алгоритм будет рассчитывать средний коэффициент фильтра LPC, , нескольких предыдущих суперкадров. Затем он сравнивается с текущим коэффициентом A t(z) фильтра LPC. Если они имеют незначительное различие, когда квантуется коэффициент LPC, среднее значение нескольких предыдущих суперкадров будет выбираться для текущего суперкадра. Иначе, выбирается A t(z) текущего суперкадра. Специфичный способ сравнения подобен способу выбора DTX для кадра 10 мс на этапе 602, где thr3 - специфичное пороговое значение, обычно между 1,0 и 1,5. В этом варианте осуществления оно имеет значение 1,0966466. Специалисты в данной области техники могут взять любое другое значение по необходимости, что по-прежнему подпадает под объем изобретения.
После того как выбраны коэффициенты фильтра LPC, алгоритм может преобразовывать эти коэффициенты фильтра LPC в область LSF. Затем выполняется кодирование квантования. Способ выбора кодирования квантования подобен способу кодирования квантования в G.729B.
Линейное квантование выполняется над параметром энергии в логарифмической области. Затем он кодируется. Таким образом, завершается кодирование фонового шума. Затем эти кодированные биты инкапсулируются в кадр SID.
VII. Схема CNG
В кодировании, основанном на модели CELP, для того чтобы получать оптимальный параметр кодирования, сторона кодирования также включает в себя последовательность операций декодирования, которая не является исключением для системы CNG. То есть в G.729.1 сторона кодирования также должна содержать в себе модуль CNG. Что касается CNG в G.729.1, его последовательность технологических операций основана на G.729B. Хотя длительность кадра имеет значение 20 мс, фоновый шум по-прежнему обрабатывается при 10 мс в качестве основной длительности обработки данных. Из предыдущего раздела может быть осознано, что параметр кодирования первого суперкадра SID кодируется во втором кадре 10 мс. Но в этом случае система должна формировать параметры CNG в первом кадре 10 мс первого суперкадра SID. Очевидно, параметры CNG первого кадра 10 мс первого суперкадра SID не могут быть получены из параметра кодирования суперкадра SID, но могут быть получены из предыдущих суперкадров кодирования речи. Вследствие этой особенности схема CNG в первом кадре 10 мс первого суперкадра SID в G.729.1 отлична от G729B. По сравнению со схемой CNG G729B, описанной ранее, отличия являются следующими:
(1) Целевой возбужденный коэффициент усиления определяется долговременным сглаженным коэффициентом усиления постоянного кодового словаря, , который сглаживается по коэффициенту усиления постоянного кодового словаря кадров кодирования речи:
где 0 < γ < 1. В этом варианте осуществления может быть выбрано γ = 0,4.
(2) Коэффициент A sid(z) фильтра LPC определяется долговременным сглаженным коэффициентом фильтра LPC, , который сглаживается по коэффициенту фильтра LPC кадров кодирования речи.
Другие операции подобны 729B.
Пусть коэффициент усиления постоянного кодового словаря и коэффициент фильтра LPC, которые сглажены по коэффициенту постоянного кодового словаря и коэффициенту фильтра LPC кадров кодирования речи, соответственно будут gain_code и A q(z) соответственно. Эти долговременные сглаженные параметры могут быть рассчитаны, как изложено ниже:
Вышеприведенные операции выполняют сглаживание в каждом подкадре речевого суперкадра, где диапазоном коэффициента β сглаживания является 0<β<1. В этом варианте осуществления β имеет значение 0,5.
Дополнительно, за исключением того, что первый 10-миллисекундный кадр первого суперкадра SID незначительно отличен от 729B, способ CNG для всех других 10-миллисекундных кадров подобен G.729B.
В вышеприведенных вариантах осуществления периодом затягивания является 120 мс или 140 мс.
В вышеприведенных вариантах осуществления последовательность операций извлечения характеристических параметров фонового шума в пределах периода затягивания может включать в себя: для каждого кадра суперкадра в пределах периода затягивания, сохранение коэффициента автокорреляции фонового шума кадра.
В вышеприведенных вариантах осуществления последовательность операций, для первого суперкадра после периода затягивания, выполнения кодирования фонового шума на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра может включать в себя:
в пределах первого кадра и второго кадра первого суперкадра после периода затягивания, сохранение коэффициента автокорреляции фонового шума каждого кадра; и
в пределах второго кадра, извлечение коэффициента фильтра LPC и остаточной энергии E t первого суперкадра на основании извлеченных коэффициентов автокорреляции двух кадров и характеристических параметров фонового шума в пределах периода затягивания и выполнение кодирования фонового шума.
В вышеприведенных вариантах осуществления последовательность операций извлечения коэффициента фильтра LPC может включать в себя:
расчет среднего значения коэффициентов автокорреляции первого суперкадра и четырех суперкадров, которые находятся перед первым суперкадром и в пределах периода затягивания; и
расчет коэффициента фильтра LPC по среднему значению коэффициентов автокорреляции на основании алгоритма Левинсона-Дурбина.
Последовательность операций извлечения остаточной энергии E t может включать в себя: расчет остаточной энергии на основании алгоритма Левинсона-Дурбина.
Последовательность операций выполнения кодирования фонового шума в пределах второго кадра может включать в себя:
преобразование коэффициента фильтра LPC в область LSF для кодирования квантования; и
выполнение кодирования линейного квантования над остаточной энергией в логарифмической области.
В вышеприведенных вариантах осуществления, после того как рассчитана остаточная энергия и до того как остаточная энергия квантована, способ может дополнительно содержать:
выполнение долговременного сглаживания над остаточной энергией, алгоритмом сглаживания является E_LT = αE_LT + (1 - α)E t, причем 0 < α < 1, а значением оценки E_LT долговременной сглаженной энергии является значение остаточной энергии.
В вышеприведенных вариантах осуществления последовательность операций, для суперкадров после первого суперкадра, выполнения извлечения характеристических параметров фонового шума для каждого кадра в суперкадрах после первого суперкадра может включать в себя:
расчет стационарного среднего коэффициента автокорреляции текущего кадра на основании значений коэффициентов автокорреляции четырех последних следующих друг за другом кадров, стационарные средние коэффициенты автокорреляции являются средним значением коэффициентов автокорреляции двух кадров, имеющих промежуточные норменные значения коэффициентов автокорреляции в четырех последних следующих друг за другом кадрах; и
расчет коэффициента фильтра LPC и остаточной энергии фонового шума по стационарному среднему коэффициенту автокорреляции на основании алгоритма Левинсона-Дурбина.
В вышеприведенных вариантах осуществления, после того как рассчитана остаточная энергия, способ может дополнительно включать в себя:
выполнение долговременного сглаживания над остаточной энергией для получения оценки энергии текущего кадра, алгоритмом сглаживания является:
сглаженная оценка энергии текущего кадра присваивается в качестве остаточной энергии, причем алгоритмом присваивания является:
,
где k=1,2 представляет первый кадр и второй кадр соответственно.
В различных вариантах осуществления α = 0,9.
В вышеприведенных вариантах осуществления последовательность операций, для суперкадров после первого суперкадра, выполнения выбора DTX для каждого кадра в суперкадрах после первого суперкадра может включать в себя:
если коэффициент фильтра LPC текущего кадра и коэффициент фильтра LPC предыдущего суперкадра SID превышают заданное пороговое значение или оценка энергии текущего кадра существенно отлична от оценки энергии предыдущего суперкадра SID, установку флажкового признака изменения параметров текущего кадра в 1; и
если коэффициент фильтра LPC текущего кадра и коэффициент фильтра LPC предыдущего суперкадра SID не превышают заданное пороговое значение и оценка энергии текущего кадра не является существенно отличной от оценки энергии предыдущего суперкадра SID, установку флажкового признака изменения параметров текущего кадра в 0.
В вышеприведенных вариантах осуществления оценка энергии текущего кадра, являющейся существенно отличной от оценки энергии предыдущего суперкадра SID, может включать в себя:
расчет среднего значения остаточных энергий четырех кадров (текущего 10-миллисекундного кадра и трех последних предыдущих кадров) в качестве оценки энергии текущего кадра;
квантование среднего значения остаточных энергий квантователем в логарифмической области; и
если разность между декодированной логарифмической энергией и декодированной логарифмической энергией предыдущего кадра SID превышает заданное значение, определение, что оценка энергии текущего кадра существенно отлична от оценки энергии предыдущего суперкадра SID.
В вышеприведенных вариантах осуществления последовательность операций выполнения выбора DTX для каждого кадра в суперкадрах после первого суперкадра может включать в себя:
если кадр текущего суперкадра имеет выбор DTX в 1, выбор DTX для составляющей нижней полосы текущего суперкадра представляет 1.
В вышеприведенных вариантах осуществления, если окончательный выбор DTX текущего суперкадра представляет 1, последовательность операций «для суперкадров после первого суперкадра, выполнения кодирования фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX» может включать в себя:
определение коэффициента сглаживания для текущего суперкадра, в том числе: если выбор DTX первого кадра из текущего суперкадра представляет ноль, а выбор DTX второго кадра представляет 1, коэффициент сглаживания имеет значение 0,1; иначе, коэффициент сглаживания имеет значение 0,5;
выполнение сглаживания параметров для первого кадра и второго кадра текущего суперкадра, сглаженные параметры являются характеристическими параметрами текущего суперкадра для выполнения кодирования фонового шума, сглаживание параметров может включать в себя:
расчет сглаженного среднего R t(j) по стационарному среднему коэффициенту автокорреляции первого кадра и стационарному среднему коэффициенту автокорреляции второго кадра, как изложено ниже:
R t(j)=smooth_rateR t,1(j)+(1-smooth_rate)R t,2(j), где smooth_rate - коэффициент сглаживания, R t,1(j) - стационарный средний коэффициент автокорреляции первого кадра, а R t,2(j) - стационарный средний коэффициент автокорреляции второго кадра;
получение коэффициента фильтра LPC из сглаженного среднего R t(j) на основании алгоритма Левинсона-Дурбина; и
расчет сглаженной средней из оценки энергии первого кадра и оценки энергии второго кадра, как изложено ниже:
=smooth_rate +(1-smooth_rate), где - оценка энергии первого кадра, а - оценка энергии второго кадра.
В вышеприведенных вариантах осуществления последовательность операций «выполнения кодирования фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX» может включать в себя:
расчет среднего значения коэффициентов автокорреляции множества суперкадров до текущего суперкадра;
расчет среднего коэффициента фильтра LPC множества суперкадров до текущего суперкадра на основании среднего значения коэффициентов автокорреляции множества суперкадров до текущего суперкадра;
если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является меньшей чем или равной заданному значению, преобразование среднего коэффициента фильтра LPC в область LSF для кодирования квантования;
если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является большей, чем заданное значение, преобразование коэффициента фильтра LPC текущего суперкадра в область LSF для кодирования квантования; и
выполнение кодирования линейного квантования над параметром(ами) энергии в логарифмической области.
В вышеприведенных вариантах осуществления количеством множества суперкадров является 5. Специалисты в данной области техники могут выбрать другое количество кадров по необходимости.
В вышеприведенных вариантах осуществления до последовательности операций извлечения характеристических параметров фонового шума в пределах периода затягивания способ дополнительно может включать в себя:
кодирование фонового шума в пределах периода затягивания на скорости кодирования речи.
Фиг.8 показывает первый вариант осуществления способа декодирования согласно изобретению, включающего в себя следующие этапы.
На этапе 801 параметры CNG получаются для первого кадра первого суперкадра из кадра кодирования речи перед первым кадром первого суперкадра.
На этапе 802 декодирование фонового шума выполняется для первого кадра первого суперкадра на основании параметров CNG. Параметры CNG могут включать в себя:
целевой возбужденный коэффициент усиления, который определяется долговременным сглаженным коэффициентом усиления постоянного кодового словаря, который сглаживается по коэффициенту усиления постоянного кодового словаря кадров кодирования речи; и
коэффициент фильтра LPC, который определяется долговременным сглаженным коэффициентом фильтра LPC, который сглаживается по коэффициенту фильтра LPC кадров кодирования речи.
В практических применениях, целевой коэффициент усиления может быть определен как: целевой возбужденный коэффициент усиления = γ* коэффициент усиления постоянного кодового словаря, 0 < γ < 1.
В практических применениях, коэффициент фильтра может быть определен как:
Коэффициент фильтра LPC = долговременный сглаженный коэффициент фильтра, который сглаживается по коэффициенту фильтра кадров кодирования речи.
В вышеприведенных вариантах осуществления долговременный коэффициент сглаживания может быть большим, чем 0, и меньшим, чем 1.
В вышеприведенных вариантах осуществления долговременный коэффициент сглаживания может быть 0,5.
В вышеприведенных вариантах осуществления γ = 0,4.
В вышеприведенных вариантах осуществления после последовательности операций выполнения декодирования фонового шума для первого кадра из первого суперкадра может быть включено в состав следующее:
для кадров, иных, чем первый кадр первого суперкадра, после получения параметров CNG из предыдущего суперкадра SID выполнение декодирования фонового шума на основании полученных параметров CNG.
Фиг.9 показывает устройство кодирования согласно первому варианту осуществления изобретения.
Первый блок 901 извлечения сконфигурирован для извлечения характеристических параметров фонового шума в пределах периода затягивания.
Второй блок 902 кодирования сконфигурирован, чтобы: для первого суперкадра после периода затягивания, выполнять кодирование фонового шума на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра.
Второй блок 903 извлечения сконфигурирован, чтобы: для суперкадров после первого суперкадра, выполнять извлечение характеристических параметров фонового шума для каждого кадра в суперкадрах после первого суперкадра.
Блок 904 выбора DTX сконфигурирован, чтобы: для суперкадров после первого суперкадра, выполнять выбор DTX для каждого кадра в суперкадрах после первого суперкадра.
Третий блок 905 кодирования сконфигурирован, чтобы: для суперкадров после первого суперкадра, выполнять кодирование фонового шума на основании извлеченного характеристического параметра(ов) фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX.
В вышеприведенных вариантах осуществления периодом затягивания является 120 мс или 140 мс.
В вышеприведенных вариантах осуществления первый блок извлечения может быть:
буферным модулем, сконфигурированным чтобы: для каждого кадра суперкадра в пределах периода затягивания, сохранять коэффициент автокорреляции фонового шума каждого кадра из суперкадра в пределах периода затягивания.
В вышеприведенных вариантах осуществления второй блок кодирования может включать в себя:
модуль извлечения, сконфигурированный, чтобы: в пределах первого кадра и второго кадра первого суперкадра после периода затягивания, сохранять коэффициент автокорреляции фонового шума соответствующего первого кадра и второго кадра из первого суперкадра после периода затягивания; и
модуль кодирования, сконфигурированный, чтобы: в пределах второго кадра первого суперкадра после периода затягивания, извлекать коэффициент фильтра LPC и остаточную энергию первого суперкадра на основании извлеченных коэффициентов автокорреляции первого кадра и второго кадра и извлеченных характеристических параметров фонового шума в пределах периода затягивания и выполнять кодирование фонового шума.
В вышеприведенных вариантах осуществления второй блок кодирования также может включать в себя:
модуль сглаживания остаточной энергии, сконфигурированный для выполнения долговременного сглаживания над остаточной энергией,
алгоритмом сглаживания является E_LT = αE_LT + (1 - α)E t, причем 0 < α < 1, а значение сглаженной оценки E_LT энергии является значением остаточной энергии.
В вышеприведенных вариантах осуществления второй блок извлечения может включать в себя:
первый модуль расчета, сконфигурированный для: расчета стационарного среднего коэффициента автокорреляции текущего кадра на основании значений коэффициентов автокорреляции четырех последних следующих друг за другом кадров, стационарные средние коэффициенты автокорреляции являются средним значением коэффициентов автокорреляции двух кадров, имеющих промежуточные норменные значения коэффициентов автокорреляции в четырех последних следующих друг за другом кадрах; и
второй модуль расчета, сконфигурированный для расчета коэффициента фильтра LPC и остаточной энергии фонового шума по стационарному среднему коэффициенту автокорреляции на основании алгоритма Левинсона-Дурбина.
В вышеприведенных вариантах осуществления второй блок извлечения дополнительно может включать в себя:
второй модуль сглаживания остаточной энергии, сконфигурированный для выполнения долговременного сглаживания над остаточной энергией для получения оценки энергии текущего кадра, алгоритмом сглаживания является:
сглаженная оценка энергии текущего кадра присваивается в качестве остаточной энергии, причем алгоритмом присваивания является:
,
где k=1,2 представляет первый кадр и второй кадр соответственно.
В вышеприведенных вариантах осуществления блок выбора DTX дополнительно может включать в себя:
модуль сравнения с пороговым значением, сконфигурированный, чтобы: если коэффициент фильтра LPC текущего кадра и коэффициент фильтра LPC предыдущего суперкадра SID превышают заданное пороговое значение, формировать команду выбора;
модуль сравнения энергии, сконфигурированный для: расчета среднего значения остаточных энергий четырех кадров (текущего кадра и трех последних предыдущих кадров) в качестве оценки энергии текущего кадра; квантования среднего значения остаточных энергий квантователем в логарифмической области: если разность между декодированной логарифмической энергией и декодированной логарифмической энергией предыдущего суперкадра SID превышает заданное значение, формирования команды выбора; и
первый модуль выбора, сконфигурированный для установки флажкового признака изменения параметра текущего кадра в 1 согласно команде выбора.
В вышеприведенных вариантах осуществления может быть включено в состав следующее:
второй блок выбора, сконфигурированный, чтобы: если выбор DTX для кадра из текущего суперкадра представляет 1, выбор DTX для составляющей нижней полосы текущего суперкадра представлял 1.
Третий блок кодирования может включать в себя:
модуль команды сглаживания, сконфигурированный, чтобы: если окончательный выбор DTX текущего суперкадра представляет 1, формировать команду сглаживания; и
модуль определения коэффициента сглаживания, сконфигурированный, чтобы: по приему команды сглаживания, определять коэффициент сглаживания для текущего суперкадра.
Если выбор DTX первого кадра из текущего суперкадра представляет ноль, а выбор DTX второго кадра представляет 1, коэффициент сглаживания имеет значение 0,1; иначе, коэффициент сглаживания имеет значение 0,5;
Модуль сглаживания параметров сконфигурирован для:
выполнения сглаживания параметров для первого кадра и второго кадра текущего суперкадра, и сглаженные параметры являются характеристическими параметрами текущего суперкадра для выполнения кодирования фонового шума, в том числе:
расчета сглаженного среднего R t(j) по стационарному среднему коэффициенту автокорреляции первого кадра и стационарному среднему коэффициенту автокорреляции второго кадра, как изложено ниже:
R t(j) = smooth_rateR t,1(j)+(1-smooth_rate)R t,2(j), где smooth_rate - коэффициент сглаживания, R t,1(j) - стационарный средний коэффициент автокорреляции первого кадра, а R t,2(j) - стационарный средний коэффициент автокорреляции второго кадра;
получения коэффициента фильтра LPC из сглаженного среднего R t(j) на основании алгоритма Левинсона-Дурбина; и
расчета сглаженной средней из оценки энергии первого кадра и оценки энергии второго кадра, как изложено ниже:
=smooth_rate +(1-smooth_rate), где - оценка энергии первого кадра, а - оценка энергии второго кадра.
В вышеприведенных вариантах осуществления третий блок кодирования может включать в себя:
третий модуль расчета, сконфигурированный для: расчета среднего коэффициента фильтра LPC множества суперкадров до текущего суперкадра на основании расчетного среднего значения коэффициентов автокорреляции множества суперкадров до текущего суперкадра;
первый модуль кодирования, сконфигурированный, чтобы: если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является меньшей чем или равной заданному значению, преобразовывать средний коэффициент фильтра LPC в область LSF для кодирования квантования;
второй модуль кодирования, сконфигурированный, чтобы: если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является большей, чем заданное значение, преобразовывать коэффициент фильтра LPC текущего суперкадра в область LSF для кодирования квантования; и
третий модуль кодирования, сконфигурированный для выполнения кодирования линейного квантования над параметром энергии в логарифмической области.
В вышеприведенных вариантах осуществления α = 0,9.
В вышеприведенных вариантах осуществления может быть включено в состав следующее:
первый блок кодирования, сконфигурированный для кодирования фонового шума в пределах периода затягивания на скорости кодирования речи.
Устройство кодирования по изобретению имеет последовательность операций работы, соответствующую способу кодирования по изобретению. Соответственно, такие же технические результаты могут быть достигнуты в качестве соответствующего варианта осуществления способа.
Фиг.10 показывает устройство декодирования согласно первому варианту осуществления изобретения.
Блок 1001 получения параметров CNG сконфигурирован для получения параметров CNG первого кадра первого суперкадра из кадра кодирования речи перед первым кадром первого суперкадра.
Первый блок 1002 декодирования сконфигурирован для выполнения декодирования фонового шума для первого кадра первого суперкадра на основании параметров CNG, параметры CNG включают в себя:
целевой возбужденный коэффициент усиления, который определяется долговременным сглаженным коэффициентом усиления постоянного кодового словаря, который сглаживается по коэффициенту усиления постоянного кодового словаря кадров кодирования речи; и
коэффициент фильтра LPC, который определяется долговременным сглаженным коэффициентом фильтра LPC, который сглаживается по коэффициенту фильтра LPC кадров кодирования речи. В практических применениях, целевой возбужденный коэффициент усиления может быть определен как: целевой возбужденный коэффициент усиления = γ* коэффициент усиления постоянного кодового словаря, 0 < γ < 1.
В практических применениях, коэффициент фильтра может быть определен как:
Коэффициент фильтра = долговременный сглаженный коэффициент фильтра, который сглаживается по коэффициенту фильтра кадров кодирования речи.
В вышеприведенных вариантах осуществления долговременный коэффициент сглаживания может быть большим, чем 0, и меньшим, чем 1.
Предпочтительно долговременный коэффициент сглаживания может быть 0,5.
В вышеприведенных вариантах осуществления также может быть включено в состав следующее:
второй блок декодирования, сконфигурированный, чтобы: для кадров, иных, чем первый суперкадр, после получения параметров CNG из предыдущего суперкадра SID выполнять декодирование фонового шума на основании полученных параметров CNG.
В вышеприведенных вариантах осуществления γ = 0,4.
Устройство декодирования по изобретению имеет последовательность операций работы, соответствующую способу декодирования по изобретению. Соответственно, такие же технические результаты могут быть достигнуты в качестве соответствующего варианта осуществления способа декодирования.
Описанные выше варианты осуществления изобретения не используются для ограничения объема изобретения. Различные изменения, эквивалентные замены и улучшения, произведенные в пределах сущности и принципа изобретения, подразумеваются подпадающими под объем изобретения.
Изобретение относится к области техники связи, в частности к способу и устройству для кодирования и декодирования. Техническим результатом является уменьшение полосы пропускания передачи сигнала при сохранении качества кодирования сигнала. Указанный результат достигается тем, что способ кодирования включает в себя: извлечение характеристических параметров фонового шума в пределах периода затягивания; для первого суперкадра после периода затягивания, выполнение кодирования фонового шума на основании извлеченных характеристических параметров фонового шума; для суперкадров после первого суперкадра, выполнение извлечения характеристических параметров фонового шума и выбора DTX для каждого кадра в суперкадрах после первого суперкадра; и для суперкадров после первого суперкадра, выполнение кодирования фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX. 4 н. и 20 з.п. ф-лы, 10 ил., 1 табл.
1. Способ кодирования, состоящий в том, что:
извлекают характеристические параметры фонового шума в пределах периода затягивания;
для первого суперкадра после периода затягивания выполняют кодирование фонового шума на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра;
для суперкадров после первого суперкадра выполняют извлечение характеристических параметров фонового шума и выбор прерывистой передачи (DTX) для каждого кадра в суперкадрах после первого суперкадра; и
для суперкадров после первого суперкадра выполняют кодирование фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX.
2. Способ по п.1, в котором последовательность операций извлечения характеристических параметров фонового шума в пределах периода затягивания состоит в том, что:
для каждого кадра суперкадра в пределах периода затягивания получают коэффициент автокорреляции каждого кадра из суперкадра в пределах периода затягивания.
3. Способ по п.1, в котором последовательность операций, для первого суперкадра после периода затягивания, выполнения кодирования фонового шума на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра состоит в том, что:
в пределах первого кадра и второго кадра первого суперкадра после периода затягивания сохраняют коэффициент автокорреляции соответствующего первого кадра и второго кадра из первого суперкадра после периода затягивания; и
в пределах второго кадра первого суперкадра после периода затягивания извлекают коэффициент фильтра LPC и остаточную энергию Et первого суперкадра на основании коэффициентов автокорреляции первого кадра и второго кадра и извлеченных характеристических параметров фонового шума в пределах периода затягивания и выполняют кодирование фонового шума.
4. Способ по п.3, в котором последовательность операций извлечения коэффициента фильтра LPC и остаточной энергии Еt состоит в том, что рассчитывают среднее значение коэффициентов автокорреляции первого суперкадра и четырех суперкадров, которые находятся перед первым суперкадром и в пределах периода затягивания; и
рассчитывают коэффициент фильтра LPC и остаточную энергию по среднему значению коэффициентов автокорреляции на основании алгоритма Левинсона-Дурбина; и
последовательность операций выполнения кодирования фонового шума в пределах второго кадра дополнительно состоит в том, что преобразуют коэффициент фильтра LPC в область LSF для кодирования квантования; и выполняют кодирование линейного квантования над остаточной энергией в логарифмической области.
5. Способ по п.1, в котором последовательность операций, для суперкадров после первого суперкадра, выполнения извлечения характеристических параметров фонового шума для каждого кадра в суперкадрах после первого суперкадра состоит в том, что:
рассчитывают стационарный средний коэффициент автокорреляции текущего кадра на основании значений коэффициентов автокорреляции четырех последних следующих друг за другом кадров, причем стационарные средние коэффициенты автокорреляции являются средним значением коэффициентов автокорреляции двух кадров, имеющих промежуточные норменные значения коэффициентов автокорреляции в четырех последних следующих друг за другом кадрах; и
рассчитывают коэффициент фильтра LPC и остаточную энергию по стационарному среднему коэффициенту автокорреляции на основании алгоритма Левинсона-Дурбина.
6. Способ по п.5, в котором, после того как рассчитана остаточная энергия, способ дополнительно состоит в том, что:
выполняют долговременное сглаживание над остаточной энергией для получения оценки энергии текущего кадра, алгоритмом сглаживания является:
при этом сглаженная оценка энергии текущего кадра присваивается в качестве остаточной энергии для квантования, как изложено ниже:
где k=1,2 представляет первый кадр и второй кадр соответственно.
7. Способ по п.1, в котором последовательность операций, для суперкадров после первого суперкадра, выполнения выбора DTX для каждого кадра в суперкадрах после первого суперкадра дополнительно состоит в том, что:
если коэффициент фильтра LPC текущего кадра и коэффициент фильтра LPC предыдущего суперкадра SID превышают заданное пороговое значение, или оценка энергии текущего кадра существенно отлична от оценки энергии предыдущего суперкадра SID, устанавливают флажковый признак изменения параметров текущего кадра в 1; и
если коэффициент фильтра LPC текущего кадра и коэффициент фильтра LPC предыдущего суперкадра SID не превышают заданное пороговое значение, и оценка энергии текущего кадра не является существенно отличной от оценки энергии предыдущего суперкадра SID, устанавливают флажковый признак изменения параметров текущего кадра в 0.
8. Способ по п.1, в котором последовательность операций выполнения выбора DTX для каждого кадра в суперкадрах после первого суперкадра дополнительно состоит в том, что:
если кадр текущего суперкадра имеет выбор DTX в 1, выбор DTX для составляющей нижней полосы текущего суперкадра представляет 1.
9. Способ по п.8, в котором, если окончательный выбор DTX текущего суперкадра представляет 1, последовательность операций «для суперкадров после первого суперкадра, выполнения кодирования фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX» состоит в том, что:
определяют коэффициент сглаживания для текущего суперкадра, при этом, если выбор DTX первого кадра из текущего суперкадра представляет ноль, а выбор DTX второго кадра представляет 1, коэффициент сглаживания имеет значение 0,1; иначе, коэффициент сглаживания имеет значение 0,5;
выполняют сглаживание параметров для первого кадра и второго кадра текущего суперкадра, причем сглаженные параметры являются характеристическими параметрами текущего суперкадра для выполнения кодирования фонового шума, при этом сглаживание параметров состоит в том, что:
рассчитывают сглаженное среднее значение Rt(j) по стационарному среднему коэффициенту автокорреляции первого кадра и стационарному среднему коэффициенту автокорреляции второго кадра, как изложено ниже: Rt(j)=smooth_rateRt,l(j)+(1 - smooth_rate)R1,2(j), где smooth_rate - коэффициент сглаживания, Rt,1(j) - стационарный средний коэффициент автокорреляции первого кадра, a Rt,2(j) - стационарный средний коэффициент автокорреляции второго кадра;
рассчитывают коэффициент фильтра LPC из сглаженного среднего Rt(j) на основании алгоритма Левинсона-Дурбина; и
рассчитывают сглаженное среднее значение из оценки энергии первого кадра и оценки энергии второго кадра, как изложено ниже:
- оценка энергии первого кадра, а - оценка энергии второго кадра.
10. Способ по п.1, в котором последовательность операций «выполнения кодирования фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX» состоит в том, что:
рассчитывают среднее значение коэффициентов автокорреляции множества суперкадров до текущего суперкадра;
рассчитывают средний коэффициент фильтра LPC множества суперкадров до текущего суперкадра на основании среднего значения коэффициентов автокорреляции множества суперкадров до текущего суперкадра;
если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является меньшей чем или равной заданному значению, преобразуют средний коэффициент фильтра LPC в область LSF для кодирования квантования;
если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является большей, чем заданное значение, преобразуют коэффициент фильтра LPC текущего суперкадра в область LSF для кодирования квантования; и
выполняют кодирование линейного квантования над параметром энергии в логарифмической области.
11. Способ декодирования, состоящий в том, что:
получают параметры генератора комфортного шума (CNG) для первого кадра первого суперкадра из кадра кодирования речи перед первым кадром первого суперкадра; и
выполняют декодирование фонового шума для первого кадра первого суперкадра на основании параметров CNG, при этом параметры CNG включают в себя: целевой возбужденный коэффициент усиления, определенный долговременным сглаженным коэффициентом усиления постоянного кодового словаря, который сглаживают по коэффициенту усиления постоянного кодового словаря кадров кодирования речи; и коэффициент фильтра LPC, определенный долговременным сглаженным коэффициентом фильтра LPC, который сглаживают по коэффициенту фильтра LPC кадров кодирования речи.
12. Способ по п.11, в котором, после последовательности операций выполнения декодирования фонового шума для первого кадра из первого суперкадра, способ дополнительно состоит в том, что:
для кадров, иных, чем первый кадр первого суперкадра, после получения параметров CNG из предыдущего суперкадра SID, выполняют декодирование фонового шума на основании полученных параметров CNG.
13. Способ по п.11, в котором целевой возбужденный коэффициент усиления определяют, как изложено ниже:
целевой возбужденный коэффициент усиления=γ* коэффициент усиления постоянного кодового словаря, 0<γ<1.
14. Способ по п.11, в котором коэффициент фильтра LPC определяют, как изложено ниже:
коэффициент фильтра LPC равен долговременному сглаженному коэффициенту фильтра LPC, который сглаживается по коэффициенту фильтра LPC кадров кодирования речи.
15. Устройство кодирования, содержащее:
первый блок извлечения, сконфигурированный для извлечения характеристических параметров фонового шума в пределах периода затягивания;
второй блок кодирования, сконфигурированный, чтобы: для первого суперкадра после периода затягивания выполнять кодирование фонового шума на основании извлеченных характеристических параметров фонового шума в пределах периода затягивания и характеристических параметров фонового шума первого суперкадра;
второй блок извлечения, сконфигурированный, чтобы: для суперкадров после первого суперкадра выполнять извлечение характеристических параметров фонового шума для каждого кадра в суперкадрах после первого суперкадра;
блок выбора прерывистой передачи (DTX), сконфигурированный, чтобы:
для суперкадров после первого суперкадра выполнять выбор DTX для каждого кадра в суперкадрах после первого суперкадра; и
третий блок кодирования, сконфигурированный, чтобы: для суперкадров после первого суперкадра выполнять кодирование фонового шума на основании извлеченных характеристических параметров фонового шума текущего суперкадра, характеристических параметров фонового шума множества суперкадров до текущего суперкадра и окончательного выбора DTX.
16. Устройство по п.15, в котором первый блок извлечения дополнительно содержит:
буферный модуль, сконфигурированный, чтобы: для каждого кадра суперкадра в пределах периода затягивания получать коэффициент автокорреляции каждого кадра из суперкадра в пределах периода затягивания.
17. Устройство по п.15, в котором второй блок кодирования содержит:
модуль извлечения, сконфигурированный, чтобы: в пределах первого кадра и второго кадра первого суперкадра после периода затягивания сохранять коэффициент автокорреляции соответствующего первого кадра и второго кадра первого суперкадра после периода затягивания; и
модуль кодирования, сконфигурированный, чтобы: в пределах второго кадра первого суперкадра после периода затягивания извлекать коэффициент фильтра LPC и остаточную энергию Et первого суперкадра на основании коэффициентов автокорреляции первого кадра и второго кадра и извлеченных характеристических параметров фонового шума в пределах периода затягивания и выполнять кодирование фонового шума.
18. Устройство по п.15, в котором второй блок извлечения содержит:
первый модуль расчета, сконфигурированный для: расчета стационарного среднего коэффициента автокорреляции текущего кадра на основании значений коэффициентов автокорреляции четырех последних следующих друг за другом кадров, причем стационарное среднее значение коэффициентов автокорреляции является средним значением коэффициентов автокорреляции двух кадров, имеющих промежуточные норменные значения коэффициентов автокорреляции в четырех последних следующих друг за другом кадрах; и
второй модуль расчета, сконфигурированный для: расчета коэффициента фильтра LPC и остаточной энергии по стационарному среднему коэффициенту автокорреляции на основании алгоритма Левинсона-Дурбина.
19. Устройство по п.18, в котором второй блок извлечения дополнительно содержит:
второй модуль сглаживания остаточной энергии, сконфигурированный для выполнения долговременного сглаживания над остаточной энергией для получения оценки энергии текущего кадра, причем алгоритм сглаживания является:
при этом сглаженная оценка энергии текущего кадра присваивается в качестве остаточной энергии для квантования, как изложено ниже:
где k=1,2 представляет первый кадр и второй кадр соответственно.
20. Устройство по п.15, в котором блок выбора DTX содержит:
модуль сравнения с пороговым значением, сконфигурированный, чтобы:
если коэффициент фильтра LPC текущего кадра и коэффициент фильтра LPC предыдущего суперкадра SID превышают заданное пороговое значение, формировать команду выбора;
модуль сравнения энергии, сконфигурированный для: расчета среднего значения остаточных энергий текущего кадра и трех последних предыдущих кадров в качестве оценки энергии текущего кадра; квантования среднего значения остаточных энергий квантователем в логарифмической области; если разность между декодированной логарифмической энергией и декодированной логарифмической энергией предыдущего суперкадра SID превышает заданное значение, формирования команды выбора; и
первый модуль выбора, сконфигурированный для установки флажкового признака изменения параметра текущего кадра в 1 согласно команде выбора.
21. Устройство по п.20, в котором блок выбора DTX дополнительно содержит:
второй блок выбора, сконфигурированный, чтобы: если выбор DTX для кадра из текущего суперкадра представляет 1, выбор DTX для составляющей нижней полосы текущего суперкадра представлял 1;
при этом третий блок кодирования содержит:
модуль команды сглаживания, сконфигурированный, чтобы: если окончательный выбор DTX текущего суперкадра представляет 1, формировать команду сглаживания;
модуль определения коэффициента сглаживания, сконфигурированный, чтобы: по приему команды сглаживания, определять коэффициент сглаживания для текущего суперкадра, при этом, если выбор DTX первого кадра из текущего суперкадра представляет ноль, а выбор DTX второго кадра из текущего суперкадра представляет 1, коэффициент сглаживания имеет значение 0,1;
иначе, коэффициент сглаживания имеет значение 0,5; и
модуль сглаживания параметров, сконфигурированный для: выполнения сглаживания параметров для первого кадра и второго кадра текущего суперкадра, и причем сглаженные параметры являются характеристическими параметрами текущего суперкадра для выполнения кодирования фонового шума, при этом сглаживание параметров состоит в том, что:
рассчитывают сглаженное среднее значение Rt(j) по стационарному среднему коэффициенту автокорреляции первого кадра и стационарному среднему коэффициенту автокорреляции второго кадра, как изложено ниже:
Rt(j)=smooth_rateRt,l(j)+(1 - smooth_rate)R1,2(j), где smooth_rate - коэффициент сглаживания, Rt,1(j) - стационарный средний коэффициент автокорреляции первого кадра, a Rt,2(j) - стационарный средний коэффициент автокорреляции второго кадра;
рассчитывают коэффициент фильтра LPC из сглаженного среднего значения Rt(j) на основании алгоритма Левинсона-Дурбина; и
рассчитывают сглаженное среднее значение из оценки энергии первого кадра и оценки энергии второго кадра, как изложено ниже:
- оценка энергии первого кадра, а - оценка энергии второго кадра.
22. Устройство по п.15, в котором третий блок кодирования содержит:
третий модуль расчета, сконфигурированный для: расчета среднего коэффициента фильтра LPC множества суперкадров до текущего суперкадра на основании расчетного среднего значения коэффициентов автокорреляции множества суперкадров до текущего суперкадра;
первый модуль кодирования, сконфигурированный, чтобы: если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является меньшей чем или равной заданному значению, преобразовывать средний коэффициент фильтра LPC в область LSF для кодирования квантования;
второй модуль кодирования, сконфигурированный, чтобы: если разность между средним коэффициентом фильтра LPC и коэффициентом фильтра LPC текущего суперкадра является большей, чем заданное значение, преобразовывать коэффициент фильтра LPC текущего суперкадра в область LSF для кодирования квантования; и
третий модуль кодирования, сконфигурированный для: выполнения кодирования линейного квантования над параметром энергии в логарифмической области.
23. Устройство декодирования, содержащее:
блок получения параметров генератора комфортного шума (CNG), сконфигурированный для получения параметров CNG для первого кадра первого суперкадра из кадра кодирования речи перед первым кадром первого суперкадра; и
первый блок декодирования, сконфигурированный для выполнения декодирования фонового шума для первого кадра первого суперкадра на основании параметров CNG, при этом параметры CNG включают в себя:
целевой возбужденный коэффициент усиления, определенный долговременным сглаженным коэффициентом усиления постоянного кодового словаря, который сглаживается по коэффициенту усиления постоянного кодового словаря кадров кодирования речи; и коэффициент фильтра LPC, определенный долговременным сглаженным коэффициентом фильтра LPC, который сглаживается по коэффициенту фильтра LPC кадров кодирования речи.
24. Устройство по п.23, дополнительно содержащее:
второй блок декодирования, сконфигурированный, чтобы: для кадров, иных, чем первый кадр первого суперкадра, после получения параметров CNG из предыдущего суперкадра SID, выполнять декодирование фонового шума на основании полученных параметров CNG.
US 5774849 А, 30.06.1998 | |||
Аппарат для очищения воды при помощи химических реактивов | 1917 |
|
SU2A1 |
US 6711537 B1, 23.03.2004 | |||
Радиально-поршневой гидромотор | 1979 |
|
SU785541A1 |
Перекатываемый затвор для водоемов | 1922 |
|
SU2001A1 |
JP 2007065636 A, 15.03.2007 | |||
US 7061934 B2, 13.06.2006 | |||
Топчак-трактор для канатной вспашки | 1923 |
|
SU2002A1 |
ЭФФЕКТИВНАЯ ВНУТРИПОЛОСНАЯ ПЕРЕДАЧА СИГНАЛОВ ДЛЯ ОСУЩЕСТВЛЕНИЯ ПРЕРЫВИСТОЙ ПЕРЕДАЧИ И ИЗМЕНЕНИЙ КОНФИГУРАЦИЙ СИСТЕМ СВЯЗИ С МНОГОСКОРОСТНОЙ АДАПТИВНОЙ ПЕРЕДАЧЕЙ СИГНАЛОВ | 1999 |
|
RU2242095C2 |
СПОСОБ ОЦЕНКИ ПЕРИОДА "ЗАТЯГИВАНИЯ" В УСТРОЙСТВЕ ДЕКОДИРОВАНИЯ РЕЧЕВОГО СИГНАЛА ПРИ ПРЕРЫВИСТОЙ ПЕРЕДАЧЕ И УСТРОЙСТВО КОДИРОВАНИЯ РЕЧЕВОГО СИГНАЛА И ПРИЕМОПЕРЕДАТЧИК | 1996 |
|
RU2158446C2 |
Авторы
Даты
2012-09-20—Публикация
2009-03-26—Подача