СИСТЕМЫ И СПОСОБЫ ДЛЯ ПОДАВЛЕНИЯ ПОТЕНЦИАЛЬНОЙ НЕСТАБИЛЬНОСТИ КАДРА
SYSTEMS AND METHODS FOR MITIGATING POTENTIAL FRAME INSTABILITY

Родственные заявки
[0001] Данная заявка относится к и испрашивает приоритет по предварительной заявке на патент США № 61/767431, поданной 21 февраля 2013 г., под названием “SYSTEMS AND METHODS FOR CORRECTING A POTENTIAL LINE SPECTRAL FREQUENCY INSTABILITY”.
Область техники, к которой относится изобретение
[0002] Изобретение относится в целом к электронным устройствам. В частности, настоящее изобретение относится к системам и способам для подавления потенциальной нестабильности кадра.
Уровень техники
[0003] В последние несколько десятилетий стали широко использоваться электронные устройства. В частности, развитие электронной технологии привело к снижению стоимости все более сложных и полезных электронных устройств. Снижение стоимости и потребности потребителя способствовали использованию электронных устройств, что привело к их практически повсеместному распространению в современном обществе. По мере расширения использования электронных устройств, требуются новые и усовершенствованные признаки электронных устройств. В частности, электронные устройства, которые осуществляют новые функции и/или которые осуществляют функции быстрее, более эффективно или с более высоким качеством, пользуются повышенным спросом.
[0004] Некоторые электронные устройства (например, сотовые телефоны, смартфоны, устройства звукозаписи, бытовые видеокамеры, компьютеры и т.д.) используют аудиосигналы. Эти электронные устройства может кодировать, сохранять и/или передавать аудиосигналы. Например, смартфон может получать, кодировать и передавать речевой сигнал для телефонного вызова, тогда как другой смартфон может принимать и декодировать речевой сигнал.
[0005] Однако при кодировании, передаче и декодировании аудиосигналов возникают конкретные проблемы. Например, аудиосигнал можно кодировать для сокращения величины полосы необходимой для передачи аудиосигнала. Когда часть аудиосигнала теряется при передаче, может быть трудно точно представлять декодированный аудиосигнал. Из этого рассмотрения следует, что могут быть полезны системы и способы, улучшающие декодирование.
Сущность изобретения
[0006] Описан способ подавления потенциальной нестабильности кадра электронным устройством. Способ включает в себя получение кадра, следующего по времени за удаленным кадром. Способ также включает в себя определение, является ли кадр потенциально нестабильным. Способ дополнительно включает в себя применение весового значения заместителя для генерации стабильного параметра кадра, если кадр потенциально нестабилен. Параметром кадра может быть промежуточный вектор линейной спектральной частоты кадра. Способ может включать в себя применение принятого весового вектора для генерации промежуточного вектора линейной спектральной частоты текущего кадра.
[0007] Весовое значение заместителя может быть заключено между 0 и 1. Генерация стабильного параметра кадра может включать в себя применение весового значения заместителя к концевому вектору линейной спектральной частоты текущего кадра и концевому вектору линейной спектральной частоты предыдущего кадра. Генерация стабильного параметра кадра может включать в себя определение промежуточного вектора линейной спектральной частоты заместителя текущего кадра, который равен произведению концевого вектора линейной спектральной частоты текущего кадра и весового значения заместителя плюс произведение концевого вектора линейной спектральной частоты предыдущего кадра и разности единицы и весового значения заместителя. Весовое значение заместителя можно выбирать на основании по меньшей мере одной из классификации двух кадров и разности линейных спектральных частот между двумя кадрами.
[0008] Определение, является ли кадр потенциально нестабильным, может осуществляться на основании того, упорядочена ли промежуточная линейная спектральная частота текущего кадра в соответствии с правилом до всякого переупорядочения. Определение, является ли кадр потенциально нестабильным, может осуществляться на основании того, находится ли кадр в пределах порогового количества кадров после удаленного кадра. Определение, является ли кадр потенциально нестабильным, может осуществляться на основании того, использует ли какой-либо кадр между кадром и удаленным кадром квантование без прогнозирования.
[0009] Описано также электронное устройство для подавления потенциальной нестабильности кадра. Электронное устройство включает в себя схему определения параметра кадра, которая получает кадр, следующий по времени за удаленным кадром. Электронное устройство также включает в себя схему определения стабильности, подключенную к схеме определения параметра кадра. Схема определения стабильности определяет, является ли кадр потенциально нестабильным. Электронное устройство дополнительно включает в себя схему замещения весового значения, подключенную к схеме определения стабильности. Схема замещения весового значения применяет весовое значение заместителя для генерации стабильного параметра кадра, если кадр потенциально нестабилен.
[0010] Описан также компьютерный программный продукт для подавления потенциальной нестабильности кадра. Компьютерный программный продукт включает в себя нетранзиторный вещественный компьютерно-считываемый носитель с инструкциями. Инструкции включают в себя код, предписывающий электронному устройству получать кадр, следующий по времени за удаленным кадром. Инструкции также включают в себя код, предписывающий электронному устройству определять, является ли кадр потенциально нестабильным. Инструкции дополнительно включают в себя код, предписывающий электронному устройству применять весовое значение заместителя для генерации стабильного параметра кадра, если кадр потенциально нестабилен.
[0011] Описано также устройство для подавления потенциальной нестабильности кадра. Устройство включает в себя средство для получения кадра, следующего по времени за удаленным кадром. Устройство также включает в себя средство для определения, является ли кадр потенциально нестабильным. Устройство дополнительно включает в себя средство для применения весового значения заместителя для генерации стабильного параметра кадра, если кадр потенциально нестабилен.
Краткое описание чертежей
[0012] Фиг. 1 - блок-схема, демонстрирующая общий пример кодера и декодера;
[0013] фиг. 2 - блок-схема, демонстрирующая пример базовой реализации кодера и декодера;
[0014] фиг. 3 - блок-схема, демонстрирующая пример широкополосного речевого кодера и широкополосного речевого декодера;
[0015] фиг. 4 - блок-схема, демонстрирующая более конкретный пример кодера;
[0016] фиг. 5 - схема, демонстрирующая пример кадров в зависимости от времени;
[0017] фиг. 6 - блок-схема операций, демонстрирующая одну конфигурацию способа кодирования речевого сигнала кодером;
[0018] фиг. 7 - схема, демонстрирующая пример определения вектора линейной спектральной частоты (LSF);
[0019] фиг. 8 включает в себя две схемы, демонстрирующие примеры интерполяции и экстраполяции LSF;
[0020] фиг. 9 - блок-схема операций, демонстрирующая одну конфигурацию способа декодирования кодированного речевого сигнала декодером;
[0021] фиг. 10 - схема, демонстрирующая один пример кластеризованных измерений LSF;
[0022] фиг. 11 - график, демонстрирующий пример артефактов вследствие кластеризованных измерений LSF;
[0023] фиг. 12 - блок-схема, демонстрирующая одну конфигурацию электронного устройства выполненного с возможностью подавления потенциальной нестабильности кадра;
[0024] фиг. 13 - блок-схема операций, демонстрирующая одну конфигурацию способа подавления потенциальной нестабильности кадра;
[0025] фиг. 14 - блок-схема операций, демонстрирующая более конкретную конфигурацию способа подавления потенциальной нестабильности кадра;
[0026] фиг. 15 - блок-схема операций, демонстрирующая другую более конкретную конфигурацию способа подавления потенциальной нестабильности кадра;
[0027] фиг. 16 - блок-схема операций, демонстрирующая другую более конкретную конфигурацию способа подавления потенциальной нестабильности кадра;
[0028] фиг. 17 - график, демонстрирующий пример синтезированного речевого сигнала;
[0029] фиг. 18 - блок-схема, демонстрирующая одну конфигурацию устройства беспроводной связи, в котором можно реализовать системы и способы для подавления потенциальной нестабильности кадра;
[0030] фиг. 19 демонстрирует различные компоненты, которые можно использовать в электронном устройстве.
Подробное описание
[0031] Различные конфигурации описаны ниже со ссылкой на чертежи, где аналогичные ссылочные позиции могут указывать функционально сходные элементы. Системы и способы, описанные и проиллюстрированные в целом здесь на чертежах, могут быть сконструированы в самых разнообразных конфигурациях. Таким образом, нижеследующее более подробное описание нескольких конфигураций, представленных на чертежах, не призвано ограничивать объем заявленного изобретения, но лишь представляет системы и способы.
[0032] На фиг. 1 показана блок-схема, демонстрирующая общий пример кодера 104 и декодера 108. Кодер 104 принимает речевой сигнал 102. Речевой сигнал 102 может быть речевым сигналом в любом диапазоне частот. Например, речевой сигнал 102 может быть сигналом полной полосы с приблизительным диапазоном частот 0-24 килогерц (кГц), сверхширокоплосным сигналом с приблизительным диапазоном частот 0-16 кГц, широкополосным сигналом с приблизительным диапазоном частот 0-8 кГц, узкополосным сигналом с приблизительным диапазоном частот 0-4 кГц, сигналом нижней полосы с приблизительным диапазоном частот 50-300 герц (Гц) или сигналом верхней полосы с приблизительным диапазоном частот 4-8 кГц. Другие возможные диапазоны частот для речевого сигнала 102 включают в себя 300-3400 Гц (например, диапазон частот коммутируемой телефонной сети общего пользования (PSTN)), 14-20 кГц, 16-20 кГц и 16-32 кГц. В некоторых конфигурациях речевой сигнал 102 может дискретизироваться с частотой 16 кГц и может иметь приблизительный диапазон частот 0-8 кГц.
[0033] Кодер 104 кодирует речевой сигнал 102 для формирования кодированного речевого сигнала 106. В общем случае кодированный речевой сигнал 106 включает в себя один или более параметров, которые представляют речевой сигнал 102. Один или более из параметров можно квантовать. Примеры одного или более параметров включают в себя параметры фильтрации (например, весовые коэффициенты, линейные спектральные частоты (LSF), линейные спектральные пары (LSP), спектральные частоты иммитанса (ISF), спектральные пары иммитанса (ISP), коэффициенты частичной корреляции (PARCOR), коэффициенты отражения и/или значения логарифмического отношения площадей и т.д.) и параметры, включенные в кодированный сигнал возбуждения (например, коэффициенты усиления, индексы адаптивной кодовой книги, коэффициенты усиления адаптивной кодовой книги, индексы фиксированной кодовой книги и/или коэффициенты усиления фиксированной кодовой книги и т.д.). Параметры могут соответствовать одной или более полосам частот. Декодер 108 декодирует кодированный речевой сигнал 106 для формирования декодированного речевого сигнала 110. Например, декодер 108 строит декодированный речевой сигнал 110 на основании одного или более параметров, включенных в кодированный речевой сигнал 106. Декодированный речевой сигнал 110 может быть приближенным воспроизведением исходного речевого сигнала 102.
[0034] Кодер 104 можно реализовать в оборудовании (например, схеме), программном обеспечении или их комбинации. Например, кодер 104 можно реализовать в виде специализированной интегральной схемы (ASIC) или в виде процессора с инструкциями. Аналогично, декодер 108 можно реализовать в оборудовании (например, схеме), программном обеспечении или их комбинации. Например, декодер 108 можно реализовать в виде специализированной интегральной схемы (ASIC) или в виде процессора с инструкциями. Кодер 104 и декодер 108 можно реализовать на отдельных электронных устройствах или на одном и том же электронном устройстве.
[0035] На фиг. 2 показана блок-схема, демонстрирующая пример базовой реализации кодера 204 и декодера 208. Кодер 204 может быть одним примером кодера 104, описанным в связи с фиг. 1. Кодер 204 может включать в себя модуль 212 анализа, преобразование 214 коэффициентов, блок 216 квантования A, блок 218 обратного квантования A, обратное преобразование 220 коэффициентов A, анализирующий фильтр 222 и блок 224 квантования B. Один или более из компонентов кодера 204 и/или декодера 208 можно реализовать в оборудовании (например, схеме), программном обеспечении или их комбинации.
[0036] Кодер 204 принимает речевой сигнал 202. Следует отметить, что речевой сигнал 202 может включать в себя любой диапазон частот, как описано выше в связи с фиг. 1 (например, всю полосу речевых частот или поддиапазон речевых частот).
[0037] В этом примере модуль 212 анализа кодирует спектральную огибающую речевого сигнала 202 как набор коэффициентов линейного прогнозирования (LP) (например, коэффициенты A(z) анализирующего фильтра, которые можно применять для формирования всеполюсного синтезирующего фильтра 1/A(z), где z-комплексное число). Модуль 212 анализа обычно обрабатывает входной сигнал как последовательность неперекрывающихся кадров речевого сигнала 202, причем новый набор коэффициентов вычисляется для каждого кадра или подкадра. В некоторых конфигурациях период кадра может быть периодом, в течение которого можно ожидать, что речевой сигнал 202 является локально стационарным. Один общий пример периода кадра составляет 20 миллисекунд (мс) (эквивалентно, например, 160 выборкам при частоте дискретизации 8 кГц). В одном примере модуль 212 анализа выполнен с возможностью вычисления набора из десяти коэффициентов линейного прогнозирования для характеризации формантной структуры каждого 20-мс кадра. Можно также реализовать модуль 212 анализа для обработки речевого сигнала 202 как последовательности перекрывающихся кадров.
[0038] Модуль 212 анализа может быть выполнен с возможностью непосредственного анализа выборок каждого кадра, или выборки сначала могут взвешиваться согласно вырезающей функции (например, взвешивающей функции Хэмминга). Анализ также может осуществляться в пределах окна, превышающего кадр, например 30-мс окна. Это окно может быть симметричным (например, 5-20-5, то есть включающим в себя 5 миллисекунд непосредственно до и после 20-миллисекундного кадра) или асимметричным (например, 10-20, то есть включающим в себя последние 10 миллисекунд предыдущего кадра). Модуль 212 анализа обычно выполнен с возможностью вычисления коэффициентов линейного прогнозирования с использованием рекурсии Левинсона-Дурбина или алгоритма Леру-Гогена. В другой реализации модуль анализа может быть выполнен с возможностью вычисления набора кепстральных коэффициентов для каждого кадра вместо набора коэффициентов линейного прогнозирования.
[0039] Выходную скорость кодера 204 можно значительно снизить без особого ущерба для качества воспроизведения, посредством квантования коэффициентов. Коэффициенты линейного прогнозирования трудно эффективно квантовать и обычно отображаются в другое представление, например LSF, для квантования и/или энтропийного кодирования. В примере, приведенном на фиг. 2, преобразование 214 коэффициентов преобразует набор коэффициентов в соответствующий вектор LSF (например, набор измерений LSF). Другие взаимно-однозначные представления коэффициентов включают в себя LSP, коэффициенты PARCOR, коэффициенты отражения, значения логарифмического отношения площадей, ISP и ISF. Например, ISF можно использовать в AMR-WB (адаптивном многоскоростном широкополосном) кодеке GSM (глобальной системы мобильной связи). Для удобства, термин “линейные спектральные частоты”, “измерения LSF”, “векторы LSF” и родственные термины можно использовать в отношении одного или более из LSF, LSP, ISF, ISP, коэффициентов PARCOR, коэффициентов отражения и значений логарифмического отношения площадей. Обычно преобразование между набором коэффициентов и соответствующим вектором LSF обратимо, но некоторые конфигурации могут включать в себя реализации кодера 204, в которых преобразование невозможно обратить без ошибки.
[0040] Блок 216 квантования A выполнен с возможностью квантования вектора LSF (или другого представления коэффициентов). Кодер 204 может выводить результат этого квантования в виде параметров 228 фильтрации. Блок 216 квантования A обычно включает в себя блок квантования вектора, который кодирует входной вектор (например, вектор LSF) как индекс соответствующей записи вектора в таблице или кодовой книге.
[0041] Как следует из фиг. 2, кодер 204 также генерирует остаточный сигнал, пропуская речевой сигнал 202 через анализирующий фильтр 222 (также именуемый отбеливающим фильтром или фильтром ошибок прогнозирования), сконфигурированный согласно набору коэффициентов. Анализирующий фильтр 222 можно реализовать как фильтр с конечной импульсной характеристикой (FIR) или фильтр с бесконечной импульсной характеристикой (IIR). Этот остаточный сигнал обычно содержит перцепционно важную информацию речевого кадра, например долговременную структуру, относящуюся к основному тону, которая не представлена в параметрах 228 фильтрации. Блок 224 квантования B выполнен с возможностью вычисления квантованного представления этого остаточного сигнала для вывода в качестве кодированного сигнала 226 возбуждения. В некоторых конфигурациях блок 224 квантования B включает в себя блок квантования вектора, который кодирует входной вектор как индекс соответствующей записи вектора в таблице или кодовой книге. Дополнительно или альтернативно, блок 224 квантования B может быть выполнен с возможностью отправки одного или более параметров, из которых на декодере может динамически генерироваться вектор, вместо того чтобы извлекать их из хранилища, как в способе разреженной кодовой книги. Такой способ используется в таких схемах кодирования, как алгебраическое CELP (линейное прогнозирование с кодовым возбуждением) и в таких кодеках, как EVRC (улучшенный кодек переменной скорости) 3GPP2 (проекта партнерства третьего поколения 2). В некоторых конфигурациях кодированный сигнал 226 возбуждения и параметры 228 фильтрации могут быть включены в кодированный речевой сигнал 106.
[0042] Может быть полезно, чтобы кодер 204 генерировал кодированный сигнал 226 возбуждения согласно тем же значениям параметров фильтрации, которые будут доступны соответствующему декодеру 208. Таким образом, результирующий кодированный сигнал 226 возбуждения может уже до некоторой степени учитывать отклонения от идеала в этих значениях параметров, например ошибку квантования. Соответственно может быть полезно конфигурировать анализирующий фильтр 222 с использованием тех же значений коэффициентов, которые будут доступны на декодере 208. В базовом примере кодера 204, проиллюстрированном на фиг. 2, блок 218 обратного квантования A деквантует параметры 228 фильтрации. Обратное преобразование 220 коэффициентов A отображает результирующие значения обратно в соответствующий набор коэффициентов. Этот набор коэффициентов используется для конфигурирования анализирующего фильтра 222 для генерации остаточного сигнала, квантованного блоком 224 квантования B.
[0043] Некоторые реализации кодера 204 выполнены с возможностью вычисления кодированного сигнала 226 возбуждения путем идентификации одного из набора векторов кодовой книги, который наилучшим образом согласуется с остаточным сигналом. Заметим, однако, что кодер 204 можно также реализовать для вычисления квантованного представления остаточного сигнала без фактической генерации остаточного сигнала. Например, кодер 204 может быть выполнен с возможностью использования нескольких векторов кодовой книги для генерации соответствующих синтезированных сигналов (согласно, например, текущему набору параметров фильтрации) и выбора вектора кодовой книги, связанного со сгенерированным сигналом, который наилучшим образом согласуется с исходным речевым сигналом 202 в перцепционно взвешенной области.
[0044] Декодер 208 может включать в себя блок 230 обратного квантования B, блок 236 обратного квантования C, обратное преобразование 238 коэффициентов B и синтезирующий фильтр 234. Блок 236 обратного квантования C деквантует параметры 228 фильтрации (например, вектор LSF), и обратное преобразование 238 коэффициентов B преобразует вектор LSF в набор коэффициентов (например, как описано выше со ссылкой на блок 218 обратного квантования A и обратное преобразование 220 коэффициентов A кодера 204). Блок 230 обратного квантования B деквантует кодированный сигнал 226 возбуждения для формирования сигнала 232 возбуждения. На основании коэффициентов и сигнала 232 возбуждения, синтезирующий фильтр 234 синтезирует декодированный речевой сигнал 210. Другими словами, синтезирующий фильтр 234 выполнен с возможностью формирования спектра сигнала 232 возбуждения согласно деквантованным коэффициентам для формирования декодированного речевого сигнала 210. В некоторых конфигурациях декодер 208 также может выдавать сигнал 232 возбуждения на другой декодер, который может использовать сигнал 232 возбуждения для получения сигнала возбуждения другой полосы частот (например, верхней полосы). В некоторых реализациях декодер 208 может быть выполнен с возможностью предоставления другому декодеру дополнительной информации, которая относится к сигналу 232 возбуждения, например спектральный наклон, коэффициент усиления и отставание основного тона и речевой режим.
[0045] Система кодера 204 и декодера 208 является базовым примером речевого кодека на основе анализа через синтез. Кодирование на основе линейного прогнозирования с возбуждением кодовой книгой является одним популярным семейством кодирования посредством анализа через синтез. Реализации таких кодеров могут осуществлять кодирование формы волны остатка, включающее в себя такие операции, как выбор записей из фиксированных и адаптивных кодовых книг, операции минимизации ошибок и/или операции перцептивного взвешивания. Другие реализации кодирования посредством анализа через синтез включают в себя кодирование на основе линейного прогнозирования со смешанным возбуждением (MELP), алгебраического CELP (ACELP), релаксационного CELP (RCELP), регулярного импульсного возбуждения (RPE), многоимпульсного возбуждения (MPE), многоимпульсного CELP (MP-CELP) и линейного прогнозирования с возбуждением векторной суммой (VSELP). Родственные способы кодирования включают в себя кодирование на основе многополосного возбуждения (MBE) и интерполяции формы волны прототипа (PWI). Примеры стандартизованных речевых кодеков на основе анализа через синтез включают в себя полноскоростной кодек ETSI (Европейский институт телекоммуникационных стандартов)-GSM (GSM 06.10) (который использует линейное прогнозирование с остаточным возбуждением (RELP)), улучшенный полноскоростной кодек GSM (ETSI-GSM 06.60), стандартный кодер 11.8 килобит в секунду (кбит/с) ITU (Международный союз телекоммуникаций) G.729 приложение E, кодеки IS (внутренний стандарт)-641 для IS-136 (схема множественного доступа с временным разделением), адаптивные многоскоростные кодеки GSM (GSM-AMR) и кодек 4GV™ (Fourth-Generation Vocoder ™) (QUALCOMM Incorporated, San Diego, Calif.). Кодер 204 и соответствующий декодер 208 можно реализовать согласно любой из этих технологий или любой другой технологии кодирования речи (известной или перспективной), которая представляет речевой сигнал как (A) набор параметров, которые описывают фильтр, и (B) сигнал возбуждения, используемый для возбуждения описанного фильтра для воспроизведения речевого сигнала.
[0046] Даже после того как анализирующий фильтр 222 удаляет грубую спектральную огибающую из речевого сигнала 202, могут оставаться значительный объем тонкой гармонической структуры, в особенности для вокализованной речи. Периодическая структура относится к основному тону, и разные вокализованные звуки, издаваемые одним и тем же говорящим, могут иметь разные формантные структуры, но сходные структуры основного тона.
[0047] Эффективность кодирования и/или качество речи можно повысить с использованием одного или более значений параметров для кодирования характеристик структуры основного тона. Одной важной характеристикой структуры основного тона является частота первой гармоники (также именуемой основной частотой), которая обычно составляет в пределах от 60 до 400 герц (Гц). Эта характеристика обычно кодируется как величина, обратная основной частоте, также именуемая отставанием основного тона. Отставание основного тона указывает количество выборок в одном периоде основного тона и может кодироваться как один или более индексов кодовой книги. Речевым сигналам от говорящих мужского пола свойственно иметь отставания основного тона большей величины, чем речевые сигналы от говорящих женского пола.
[0048] Другой характеристикой сигнала, относящейся к структуре основного тона, является периодичность, которая указывает силу гармонической структуры или, другими словами, до какой степени сигнал является гармоническим или ангармоническим. Двумя типичными индикаторами периодичности являются пересечения нуля и нормализованные автокорреляционные функции (NACF). Периодичность также может быть указана коэффициентом усиления основного тона, который обычно кодируется как коэффициент усиления кодовой книги (например, квантованный коэффициент усиления адаптивной кодовой книги).
[0049] Кодер 204 может включать в себя один или более модулей, выполненных с возможностью кодирования долговременной гармонической структуры речевого сигнала 202. В некоторых подходах к кодированию на основе CELP кодер 204 включает в себя модуль анализа на основе кодирования с линейный прогнозированием (LPC) открытого цикла, который кодирует кратковременные характеристики или грубую спектральную огибающую, после которого следует стадия анализа на основе долгосрочного прогнозирования замкнутого цикла, который кодирует тонкую структуру основного тона или гармоническую структуру. Кратковременные характеристики кодируются как коэффициенты (например, параметры 228 фильтрации), и долговременные характеристики кодируются как значения параметров, например, отставание основного тона и коэффициент усиления основного тона. Например, кодер 204 может быть выполнен с возможностью вывода кодированного сигнала 226 возбуждения в форме, которая включает в себя один или более индексов кодовой книги (например, индекс фиксированной кодовой книги и индекс адаптивной кодовой книги) и соответствующие значения коэффициента усиления. Вычисление этого квантованного представления остаточного сигнала (например, блоком 224 квантования B) может включать в себя выбор таких индексов и вычисление таких значений. Кодирование структуры основного тона также может включать в себя интерполяцию формы волны прототипа основного тона, и эта операция может включать в себя вычисление разности между последовательными импульсами основного тона. Моделирование долговременной структуры может быть запрещено для кадров, соответствующих невокализованной речи, которая обычно шумоподобна и не структурирована.
[0050] Некоторые реализации декодера 208 могут предусматривать возможность вывода сигнала 232 возбуждения на другой декодер (например, декодер верхней полосы) после восстановления долговременной структуры (основного тона или гармонической структуры). Например, такой декодер может быть выполнен с возможностью вывода сигнала 232 возбуждения как деквантованной версией кодированного сигнала 226 возбуждения. Конечно, можно также реализовать декодер 208 таким образом, что другой декодер осуществляет деквантование кодированного сигнала 226 возбуждения для получения сигнала 232 возбуждения.
[0051] На фиг. 3 показана блок-схема, демонстрирующая пример широкополосного речевого кодера 342 и широкополосного речевого декодера 358. Один или более компонентов широкополосного речевого кодера 342 и/или широкополосного речевого декодера 358 можно реализовать в оборудовании (например, схеме), программном обеспечении или их комбинации. Широкополосный речевой кодер 342 и широкополосный речевой декодер 358 можно реализовать на отдельных электронных устройствах или на одном и том же электронном устройстве.
[0052] Широкополосный речевой кодер 342 включает в себя набор 344 фильтров A, кодер 348 первой полосы и кодер 350 второй полосы. Набор 344 фильтров A выполнен с возможностью фильтрации широкополосного речевого сигнала 340 для формирования сигнала 346a первой полосы (например, узкополосного сигнала) и сигнала 346b второй полосы (например, сигнала верхней полосы).
[0053] Кодер 348 первой полосы выполнен с возможностью кодирования сигнала 346a первой полосы для формирования параметров 352 фильтрации (например, параметров узкополосной (NB) фильтрации) и кодированного сигнала 354 возбуждения (например, кодированного узкополосного сигнала возбуждения). В некоторых конфигурациях кодер 348 первой полосы может формировать параметры 352 фильтрации и кодированный сигнал 354 возбуждения как индексы кодовой книги или в другой квантованной форме. В некоторых конфигурациях кодер 348 первой полосы можно реализовать в соответствии с кодером 204, описанным в связи с фиг. 2.
[0054] Кодер 350 второй полосы выполнен с возможностью кодирования сигнала 346b второй полосы (например, сигнала верхней полосы) согласно информации в кодированном сигнале 354 возбуждения для формирования параметров 356 кодирования второй полосы (например, параметров кодирования верхней полосы). Кодер 350 второй полосы может быть выполнен с возможностью формирования параметров 356 кодирования второй полосы как индексы кодовой книги или в другой квантованной форме. Один конкретный пример широкополосного речевого кодера 342 выполнен с возможностью кодирования широкополосного речевого сигнала 340 на скорости около 8.55 кбит/с, причем около 7.55 кбит/с используется для параметров 352 фильтрации и кодированного сигнала 354 возбуждения, и около 1 кбит/с используется для параметров 356 кодирования второй полосы. В некоторых реализациях параметры 352 фильтрации, кодированный сигнал 354 возбуждения и параметры 356 кодирования второй полосы могут быть включены в кодированный речевой сигнал 106.
[0055] В некоторых конфигурациях кодер 350 второй полосы можно реализовать аналогично кодеру 204, описанному в связи с фиг. 2. Например, кодер 350 второй полосы может формировать параметры фильтрации второй полосы (например, в составе параметров 356 кодирования второй полосы) как описано в связи с кодером 204, описанным в связи с фиг. 2. Однако кодер 350 второй полосы может отличаться в некоторых отношениях. Например, кодер 350 второй полосы может включать в себя генератор возбуждения второй полосы, который может генерировать сигнал второй полосы возбуждения на основании кодированного сигнала 354 возбуждения. Кодер 350 второй полосы может использовать сигнал второй полосы возбуждения для формирования синтезированного сигнала второй полосы и для определения коэффициента усиления второй полосы. В некоторых конфигурациях кодер 350 второй полосы может квантовать коэффициент усиления второй полосы. Соответственно примеры параметров 356 кодирования второй полосы включают в себя параметры фильтрации второй полосы и квантованный коэффициент усиления второй полосы.
[0056] Может быть полезно объединять параметры 352 фильтрации, кодированный сигнал 354 возбуждения и параметры 356 кодирования второй полосы в единый битовый поток. Например, может быть полезно мультиплексировать кодированные сигналы друг с другом для передачи (например, по проводному, оптическому или беспроводному каналу передачи) или для сохранения в качестве кодированного широкополосного речевого сигнала. В некоторых конфигурациях широкополосный речевой кодер 342 включает в себя мультиплексор (не показан), выполненный с возможностью объединения параметров 352 фильтрации, кодированного сигнала 354 возбуждения и параметров 356 кодирования второй полосы в мультиплексированный сигнал. Параметры 352 фильтрации, кодированный сигнал 354 возбуждения и параметры 356 кодирования второй полосы могут быть примерами параметров, включенных в кодированный речевой сигнал 106, как описано в связи с фиг. 1.
[0057] В некоторых реализациях электронное устройство который включает в себя широкополосный речевой кодер 342 также может включать в себя схему, выполненную с возможностью передачи мультиплексированного сигнала в канал передачи, например, проводной, оптический или беспроводной канал. Такое электронное устройство также может быть выполнено с возможностью осуществления одной или более операций кодирования канала на сигнале, например кодирования с исправлением ошибок (например, совместимого по скорости сверточного кодирования) и/или кодирования, с обнаружением ошибок (например, циклического избыточностного кодирования) и/или одного или более уровней кодирования сетевого протокола (например, Ethernet, протокола управления передачей/интернет-протокола (TCP/IP), cdma2000 и т.д.).
[0058] Может быть полезно, чтобы мультиплексор был выполнен с возможностью внедрения параметров 352 фильтрации и кодированного сигнала 354 возбуждения в качестве отделимого подпотока мультиплексированного сигнала таким образом, что параметры 352 фильтрации и кодированный сигнал 354 возбуждения могут восстанавливаться и декодироваться независимо от другой части мультиплексированного сигнала, например, сигнала верхней полосы и/или нижней полосы. Например, мультиплексированный сигнал может быть сконфигурирован таким образом, что параметры 352 фильтрации и кодированный сигнал 354 возбуждения можно восстанавливать путем удаления параметров 356 кодирования второй полосы. Окно потенциальное преимущество такого признака состоит в возможности избегать необходимости перекодирования параметров 356 кодирования второй полосы до их передачи системе, которая поддерживает декодирование параметров 352 фильтрации и кодированного сигнала 354 возбуждения, но не поддерживает декодирование параметров 356 кодирования второй полосы.
[0059] Широкополосный речевой декодер 358 может включать в себя декодер 360 первой полосы, декодер 366 второй полосы и набор 368 фильтров B. Декодер 360 первой полосы (например, узкополосный декодер) выполнен с возможностью декодирования параметров 352 фильтрации и кодированного сигнала 354 возбуждения для формирования декодированного сигнала 362a первой полосы (например, декодированного узкополосного сигнала). Декодер 366 второй полосы выполнен с возможностью декодирования параметров 356 кодирования второй полосы согласно сигналу 364 возбуждения (например, узкополосного сигнала возбуждения), на основании кодированного сигнала 354 возбуждения, для формирования декодированного сигнала 362b второй полосы (например, декодированного сигнала верхней полосы). В этом примере декодер 360 первой полосы выполнен с возможностью выдачи сигнала 364 возбуждения на декодер 366 второй полосы. Набор 368 фильтров выполнен с возможностью объединения декодированного сигнала 362a первой полосы и декодированного сигнала 362b второй полосы для формирования декодированного широкополосного речевого сигнала 370.
[0060] Некоторые реализации широкополосного речевого декодера 358 могут включать в себя демультиплексор (не показан), выполненный с возможностью формирования параметров 352 фильтрации, кодированного сигнала 354 возбуждения и параметров 356 кодирования второй полосы из мультиплексированного сигнала. Электронное устройство, включающее в себя широкополосный речевой декодер 358, может включать в себя схему, выполненную с возможностью приема мультиплексированного сигнала из канала передачи, например проводного, оптического или беспроводного канала. Такое электронное устройство также может быть выполнено с возможностью осуществления одной или более операций декодирования канала на сигнале, например декодирования с исправлением ошибок (например, совместимого по скорости сверточного декодирования) и/или декодирования с обнаружением ошибок (например, циклического избыточностного декодирования) и/или одного или более уровней декодирования сетевого протокола (например, Ethernet, TCP/IP, cdma2000).
[0061] Набор 344 фильтров A в широкополосном речевом кодере 342 выполнен с возможностью фильтрации входного сигнала согласно схеме разделения полос для формирования сигнала 346a первой полосы (например, узкополосного сигнала или низкочастотного поддиапазона) и сигнала 346b второй полосы (например, сигнала верхней полосы или высокочастотного поддиапазона). В зависимости от критериев конструкции для конкретного применения выходные поддиапазоны могут иметь равные или неравные полосы и могут перекрываться или не перекрываться. Возможна также конфигурация набора 344 фильтров A, который создает более двух поддиапазонов. Например, набор 344 фильтров A может быть выполнен с возможностью формирования одного или более сигналов нижней полосы, которые включают в себя компоненты в диапазоне частот ниже диапазона частот сигнала 346a первой полосы (например, в диапазоне 50-300 герц (Гц)). Набор 344 фильтров A также может быть выполнен с возможностью формирования одного или более дополнительных сигналов верхней полосы, которые включают в себя компоненты в диапазоне частот выше диапазона частот сигнала 346b второй полосы (например, в диапазоне 14-20, 16-20 или 16-32 килогерц (кГц)). В такой конфигурации широкополосный речевой кодер 342 можно реализовать для отдельного кодирования сигнала или сигналов, и мультиплексор может быть выполнен с возможностью включения дополнительного кодированного сигнала или сигналов в мультиплексированный сигнал (например, в качестве одной или более отделимых частей).
[0062] На фиг. 4 показана блок-схема, демонстрирующая более конкретный пример кодера 404. В частности, фиг. 4 демонстрирует архитектуру CELP на основе анализа через синтез для кодирования речи с низкой битовой скоростью. В этом примере кодер 404 включает в себя модуль 472 кадрирования и предварительной обработки, модуль 476 анализа, преобразование 478 коэффициентов, блок 480 квантования, синтезирующий фильтр 484, сумматор 488, модуль 492 перцептивного взвешивающего фильтра и минимизации ошибки и модуль 494 оценивания возбуждения. Следует отметить, что кодер 404 и один или более из компонентов кодера 404 можно реализовать в оборудовании (например, схеме), программном обеспечении или их комбинации.
[0063] Речевой сигнал 402 (например, входной речевой сигнал s) может представлять собой электронный сигнал, который содержит речевую информацию. Например, акустический речевой сигнал может захватываться микрофоном и дискретизироваться для формирования речевого сигнала 402. В некоторых конфигурациях речевой сигнал 402 можно дискретизировать с частотой 16 кГц. Речевой сигнал 402 может содержать диапазон частот, как описано выше в связи с фиг. 1.
[0064] Речевой сигнал 402 может поступать на модуль 472 кадрирования и предварительной обработки. Модуль 472 кадрирования и предварительной обработки может делить речевой сигнал 402 на последовательность кадров. Каждый кадр может быть конкретным периодом времени. Например, каждый кадр может соответствовать 20 мс речевого сигнала 402. Модуль 472 кадрирования и предварительной обработки может осуществлять другие операции на речевом сигнале, например фильтрацию (например, одну или более из низкочастотной, высокочастотной и полосовой фильтрации). Соответственно модуль 472 кадрирования и предварительной обработки может формировать предварительно обработанный речевой сигнал 474 (например, S(l), где l-номер выборки) на основании речевого сигнала 402.
[0065] Модуль 476 анализа может определять набор коэффициентов (например, анализирующий фильтр линейного прогнозирования A(z)). Например, модуль 476 анализа может кодировать спектральную огибающую предварительно обработанного речевого сигнала 474 как набор коэффициентов, как описано в связи с фиг. 2.
[0066] Коэффициенты могут поступать на преобразование 478 коэффициентов. Преобразование 478 коэффициентов преобразует набор коэффициентов в соответствующий вектор LSF (например, LSF, LSP, ISF, ISP и т.д.), как описано выше в связи с фиг. 2.
[0067] Вектор LSF поступает на блок 480 квантования. Блок 480 квантования квантует вектор LSF в квантованный вектор 482 LSF. Например, блок 480 квантования может осуществлять векторное квантование на векторе LSF для получения квантованного вектора 482 LSF. В некоторых конфигурациях векторы LSF можно генерировать и/или квантовать на подкадровой основе. В этих конфигурациях только квантованные векторы LSF, соответствующие определенным подкадрам (например, последнему или концевому подкадру каждого кадра), могут отправляться на речевой декодер. В этих конфигурациях блок 480 квантования также может определять квантованный весовой вектор 441. Весовые векторы используются для квантования векторов LSF (например, промежуточные векторы LSF) между векторами LSF, соответствующими отправляемым подкадрам. Весовые векторы можно квантовать. Например, блок 480 квантования может определять индекс кодовой книги или поисковой таблицы, соответствующей весовому вектору, который наилучшим образом согласуется с фактическим весовым вектором. Квантованные весовые векторы 441 (например, индексы) могут отправляться на речевой декодер. Квантованный весовой вектор 441 и квантованный вектор 482 LSF могут быть примерами параметров 228 фильтрации, описанных выше в связи с фиг. 2.
[0068] Блок 480 квантования может формировать индикатор 481 режима прогнозирования, который указывает режим прогнозирования для каждого кадра. Индикатор 481 режима прогнозирования может отправляться на декодер. В некоторых конфигурациях индикатор 481 режима прогнозирования может указывать один из двух режимов прогнозирования (например, используется ли квантование с прогнозированием или квантование без прогнозирования) для кадра. Например, индикатор 481 режима прогнозирования может указывать, квантуется ли кадр на основании предыдущего кадра (например, с прогнозированием) или нет (например, без прогнозирования). Индикатор 481 режима прогнозирования может указывать режим прогнозирования текущего кадра. В некоторых конфигурациях индикатором 481 режима прогнозирования может быть бит, отправляемый на декодер, который указывает, квантуется ли кадр с прогнозированием или без прогнозирования.
[0069] Квантованный вектор 482 LSF поступает на синтезирующий фильтр 484. Синтезирующий фильтр 484 формирует синтезированный речевой сигнал 486 (например, реконструированный речевой сигнал  где l-номер выборки) на основании вектора 482 LSF (например, квантованных коэффициентов) и сигнала 496 возбуждения. Например, синтезирующий фильтр 484 фильтрует сигнал 496 возбуждения на основании квантованного вектора 482 LSF (например, 1/A(z)).
[0070] Синтезированный речевой сигнал 486 вычитается из предварительно обработанного речевого сигнала 474 сумматором 488 для получения сигнала 490 ошибки (также именуемого сигналом ошибки прогнозирования). Сигнал 490 ошибки поступает на модуль 492 перцептивного взвешивающего фильтра и минимизации ошибки.
[0071] Модуль 492 перцептивного взвешивающего фильтра и минимизации ошибки формирует взвешенный сигнал 493 ошибки на основании сигнала 490 ошибки. Например, не все компоненты (например, частотные компоненты) сигнала 490 ошибки одинаково влияют на воспринимаемое качество синтезированного речевого сигнала. Ошибка в некоторых полосах частот оказывает большее влияние на качество речи, чем ошибка в других полосах частот. Модуль 492 перцептивного взвешивающего фильтра и минимизации ошибки может формировать взвешенный сигнал 493 ошибки, который снижает ошибку в частотных компонентах, сильнее влияющих на качество речи, и перераспределяет ошибку на другие частотные компоненты, слабее влияющие на качество речи.
[0072] Модуль 494 оценивания возбуждения генерирует сигнал 496 возбуждения и кодированный сигнал 498 возбуждения на основании выходного сигнала модуля 492 перцептивного взвешивающего фильтра и минимизации ошибки. Например, модуль 494 оценивания возбуждения оценивает один или более параметров, которые характеризуют сигнал 490 ошибки (например, взвешенный сигнал 493 ошибки). Кодированный сигнал 498 возбуждения может включать в себя один или более параметров и может отправляться на декодер. В подходе CELP, например, модуль 494 оценивания возбуждения может определять параметры, например индекс адаптивной кодовой книги (или кодовой книги основного тона), коэффициент усиления адаптивной кодовой книги (или кодовой книги основного тона), индекс фиксированной кодовой книги и коэффициент усиления фиксированной кодовой книги, которые характеризуют сигнал 490 ошибки (например, взвешенный сигнал 493 ошибки). На основании этих параметров модуль 494 оценивания возбуждения может генерировать сигнал 496 возбуждения, который поступает на синтезирующий фильтр 484. В этом подходе индекс адаптивной кодовой книги, коэффициент усиления адаптивной кодовой книги (например, квантованный коэффициент усиления адаптивной кодовой книги), индекс фиксированной кодовой книги и коэффициент усиления фиксированной кодовой книги (например, квантованный коэффициент усиления фиксированной кодовой книги) может отправляться на декодер как кодированный сигнал 498 возбуждения.
[0073] Кодированный сигнал 498 возбуждения может быть примером кодированного сигнала 226 возбуждения, описанного выше в связи с фиг. 2. Соответственно квантованный весовой вектор 441, квантованный вектор 482 LSF, кодированный сигнал 498 возбуждения и/или индикатор 481 режима прогнозирования могут быть включены в кодированный речевой сигнал 106 как описано выше в связи с фиг. 1.
[0074] На фиг. 5 показана схема, демонстрирующая пример кадров 503 в зависимости от времени 501. Каждый кадр 503 делится на несколько подкадров 505. В примере, проиллюстрированном на фиг. 5, предыдущий кадр A 503a включает в себя 4 подкадра 505a-d, предыдущий кадр B 503b включает в себя 4 подкадра 505e-h, и текущий кадр C 503c включает в себя 4 подкадра 505i-l. Типичный кадр 503 может занимать период времени 20 мс и может включать в себя 4 подкадра, хотя можно использовать кадры разной длины и/или с разными количествами подкадров. Каждый кадр можно обозначать соответствующим номером кадра, где n обозначает текущий кадр (например, текущий кадр C 503c). Кроме того, каждый подкадр можно обозначать соответствующим номером подкадра k.
[0075] Фиг. 5 можно использовать для иллюстрации одного примера квантования LSF в кодере. Каждый подкадр k в кадре n имеет соответствующий вектор LSF  для использования в анализирующем и синтезирующем фильтрах. Концевой вектор 527 LSF текущего кадра (например, последний подкадр вектор LSF n-го кадра) обозначается  где  Промежуточный вектор 525 LSF текущего кадра (например, промежуточный вектор LSF n-го кадра) обозначается  “Промежуточный вектор LSF” это вектор LSF между другими векторами LSF (например, между ) по времени 501. Один пример концевого вектора 523 LSF предыдущего кадра проиллюстрирован на фиг. 5 и обозначается  где  Используемый здесь термин “предыдущий кадр” может относиться к любому кадру до текущего кадра (например, n-1, n-2, n-3 и т.д.). Соответственно “концевой вектор LSF предыдущего кадра” может представлять собой концевой вектор LSF, соответствующий любому кадру до текущего кадра. В примере, проиллюстрированном на фиг. 5, концевой вектор 523 LSF предыдущего кадра соответствует последнему подкадру 505h предыдущего кадра B 503b (например, кадра n-1), который непосредственно предшествует текущему кадру C 503c (например, кадр n).
[0076] Каждый вектор LSF имеет размерность M, где каждое измерение вектора LSF соответствует единичному измерению или значению LSF. Например, M обычно равно 16 для широкополосного речевого сигнала (например, речевого сигнала, дискретизированного на частоте 16 кГц). i-е измерение LSF k-го подкадра кадра n обозначается как
[0077] В процессе квантования кадра n, концевой вектор LSF  можно квантовать в первую очередь. Это квантование может осуществляться без прогнозирования (например, без использования предыдущего вектора LSF  в процессе квантования) или с прогнозированием (например, с использованием предыдущего вектора LSF  в процессе квантования). Затем можно квантовать промежуточный вектор LSF  Например, кодер может выбирать весовой вектор таким образом, что  выражается в уравнении (1).
(1)
[0078] i-е измерение весового вектора  соответствует единичному весу и обозначается , где . Следует также заметить, что  не ограничен. В частности, если  дает значение, ограниченное  и , и  или , результирующий промежуточный вектор LSF  может быть вне диапазона .Кодер может определять (например, выбирать) весовой вектор  таким образом, чтобы квантованный промежуточный вектор LSF являлся ближайшим к фактическому промежуточному вектору LSF в кодере на основании некоторой меры искажения, например среднеквадратической ошибки (MSE) или логарифмического спектрального искажения (LSD). В процессе квантования, кодер передает индексы квантования концевого вектора LSF  и индекс весового вектора , что позволяет декодеру реконструировать .
[0079] Векторы LSF подкадров  интерполируются на основании  с использованием коэффициентов интерполяции , заданных уравнением (2).
(2)
Следует отметить, что  подчиняются условию . Коэффициенты интерполяции  могут быть заранее определенными значениями, известными кодеру и декодеру.
[0080] На фиг. 6 показана блок-схема операций, демонстрирующая одну конфигурацию способа 600 для кодирования речевого сигнала кодером 404. Например, электронное устройство, включающее в себя кодер 404 может осуществлять способ 600. Фиг. 6 демонстрирует процедуры квантования LSF для текущего кадра n.
[0081] Кодер 404 может получать 602 квантованный концевой вектор LSF предыдущего кадра. Например, кодер 404 может квантовать концевой вектор LSF, соответствующий предыдущему кадру (например, ), выбирая вектор кодовой книги, ближайший к концевому вектору LSF, соответствующему предыдущему кадру n-1.
[0082] Кодер 404 может квантовать 604 концевой вектор LSF текущего кадра (например, ). Кодер 404 квантует 604 концевой вектор LSF текущего кадра на основании концевого вектора LSF предыдущего кадра, если используется квантование с прогнозированием LSF. Однако квантование 604 вектора LSF текущего кадра не опирается на концевой вектор LSF предыдущего кадра, если используется квантование без прогнозирования для концевого вектора LSF текущего кадра.
[0083] Кодер 404 может квантовать 606 промежуточный вектор LSF текущего кадра (например, ) путем определения весового вектора (например, ). Например, кодер 404 может выбирать весовой вектор, который дает квантованный промежуточный вектор LSF, ближайший к фактическому промежуточному вектору LSF. Как проиллюстрировано в уравнении (1), квантованный промежуточный вектор LSF может базироваться на весовом векторе, концевом векторе LSF предыдущего кадра и концевом векторе LSF текущего кадра.
[0084] Кодер 404 может отправлять 608 квантованный концевой вектор LSF текущего кадра и весовой вектор на декодер. Например, кодер 404 может передавать концевой вектор LSF текущего кадра и весовой вектор на передатчик электронного устройства, который может передавать их на декодер другого электронного устройства.
[0085] На фиг. 7 показана схема, демонстрирующая пример определения вектора LSF. Фиг. 7 демонстрирует предыдущий кадр A 703a (например, кадр n-1) и текущий кадр B 703b (например, кадр n) в зависимости от времени 701. В этом примере речевые выборки взвешиваются с использованием взвешивающих фильтров и затем используются для определения (например, вычисления) вектора LSF. Во-первых, взвешивающий фильтр на кодере 404 используется для определения 707 концевого вектора LSF предыдущего кадра (например, ). Во-вторых, взвешивающий фильтр на кодере 404 используется для определения 709 концевого вектора LSF текущего кадра (например, ). В-третьих, взвешивающий фильтр на кодере 404 используется для определения 711 (например, вычисления) промежуточного вектора LSF текущего кадра (например, ).
[0086] Фиг. 8 включает в себя две схемы, демонстрирующие примеры интерполяции и экстраполяции LSF. Горизонтальная ось в примере A 821a демонстрирует частоту в Гц 819a и горизонтальная ось в примере B 821b также демонстрирует частоту в Гц 819b. В частности, несколько измерения LSF представлены на фиг. 8 в частотной области. Однако следует отметить, что представлять измерение LSF можно разными способами (например, через частоту, угол, значение и т.д.). Соответственно на горизонтальных осях 819a-b в примере A 821a и примере B 821a можно откладывать величины, выраженные в других единицах.
[0087] Пример A 821a демонстрирует случай интерполяции, где рассматривается первое измерение вектора LSF. Как описано выше, измерение LSF означает единичное измерение или значение LSF вектора LSF. В частности, пример A 821a демонстрирует измерение 813a концевой LSF предыдущего кадра (например, ) на частоте 500 Гц и измерение 817a концевой LSF текущего кадра (например, ) на частоте 800 Гц. В примере A 821a, первый вес (например, первое измерение весового вектора ) можно использовать для квантования и указания измерения 815a промежуточной LSF (например, ) промежуточного вектора LSF текущего кадра между измерением 813a концевой LSF предыдущего кадра (например, ) и измерением 817a концевой LSF текущего кадра (например, ) по частоте 819a. Например, если  то , как проиллюстрировано в примере A 821a.
[0088] Пример B 821b демонстрирует случай экстраполяции где рассматривается первое измерение LSF вектора LSF. В частности, пример B 821b демонстрирует измерение 813b концевой LSF предыдущего кадра (например, ) на частоте 500 Гц и измерение 817b концевой LSF текущего кадра (например, ) на частоте 800 Гц. В примере B 821b, первый вес (например, первое измерение весового вектора ) можно использовать для квантования и указания измерения 815b промежуточной LSF (например, ) промежуточного вектора LSF текущего кадра, которое не лежит между измерением 813b концевой LSF предыдущего кадра (например, ) и измерением 817b концевой LSF текущего кадра (например, ) по частоте 819b. Как проиллюстрировано в примере B 821b, например, если  то .
[0089] На фиг. 9 показана блок-схема операций, демонстрирующая одну конфигурацию способа 900 для декодирования кодированного речевого сигнала декодером. Например, электронное устройство, включающее в себя декодер, может осуществлять способ 900.
[0090] Декодер может получать 902 деквантованный концевой вектор LSF предыдущего кадра (например, ). Например, декодер может извлекать деквантованный концевой вектор LSF, соответствующий предыдущему кадру, который ранее был декодирован (или оценен, в случае удаления кадра).
[0091] Декодер может деквантовать 904 концевой вектор LSF текущего кадра (например, ). Например, декодер может деквантовать 904 концевой вектор LSF текущего кадра посредством поиска вектора LSF текущего кадра в кодовой книге или таблице на основании принятого индекса вектора LSF.
[0092] Декодер может определять 906 промежуточный вектор LSF текущего кадра (например, ) на основании весового вектора (например, ). Например, декодер может принимать весовой вектор от кодера. Затем декодер может определять 906 промежуточный вектор LSF текущего кадра на основании концевого вектора LSF предыдущего кадра, концевого вектора LSF текущего кадра и весового вектора, как проиллюстрировано в уравнении (1). Как описано выше, каждый вектор LSF может иметь M измерений или измерений LSF (например, 16 измерений LSF). Должно быть минимальное разнесение между двумя или более из измерений LSF в векторе LSF, чтобы вектор LSF был стабильным. Однако при наличии множественных измерений LSF, кластеризованных только с минимальным разделением, имеется существенная вероятность нестабильности вектора LSF. Как описано выше, декодер может переупорядочивать вектор LSF в случаях, когда существует менее, чем минимальное разнесение между двумя или более из измерений LSF в векторе LSF.
[0093] Подход, описанный в связи с фиг. 4-9, для взвешивания и интерполяции и/или экстраполяции векторов LSF хорошо действует в условиях чистого канала (без удалений кадров и/или ошибок передачи). Однако этот подход может сталкиваться с некоторыми серьезными проблемами, когда происходит одно или более удалений кадров. Удаленным кадром является кадр, который не принят декодером или принят с ошибками. Например, кадр является удаленным кадром, если кодированный речевой сигнал, соответствующий кадру, не принят или принят с ошибками.
[0094] Пример удаления кадра приведен ниже со ссылкой на фиг. 5. Предположим, что предыдущий кадр B 503b является удаленным кадром (например, кадр n-1 потерян). В этом примере декодер оценивает потерянный концевой вектор LSF (обозначенный ) и промежуточный вектор LSF (обозначенный ) на основании предыдущего кадра A 503a (например, кадра n-2). Также предположим, что кадр n принят правильно. Декодер может использовать уравнение (1) для вычисления промежуточного вектора 525 LSF текущего кадра на основании . В случае экстраполяции конкретного измерения LSF j (например, измерения j)  существует возможность, что измерение LSF располагается далеко за пределами частот измерения LSF, используемых в процессе экстраполяции (например, ) в кодере.
[0095] Измерения LSF в каждом векторе LSF можно упорядочить таким образом, что , где  - минимальное разнесение (например, разделение по частоте) между двумя последовательными измерениями LSF. Как описано выше, если определенное измерение LSF j (например, обозначенное ), экстраполируется с ошибкой, в результате чего, оно оказывается значительно больше верного значения, следующие измерения LSF  можно повторно вычислять как  хотя они вычисляются в декодере как . Например, хотя повторно вычисленные измерения LSF j, j+1 и т.д. могут быть меньше измерения LSF j, их можно повторно вычислять для получения  вследствие налагаемой структуры упорядочения. В результате получается вектор LSF, который имеет два или более измерений LSF расположенные друг за другом с минимальным разрешенным расстоянием. Два или более измерений LSF с минимальным разнесением могут именоваться “кластеризованными измерениями LSF”. Кластеризованные измерения LSF могут приводить к нестабильным измерениям LSF (например, нестабильным измерениям LSF подкадра) и/или нестабильным векторам LSF. Нестабильные измерения LSF соответствуют коэффициентам синтезирующего фильтра, которые могут приводить к возникновению речевого артефакта.
[0096] Строго говоря, фильтр может быть нестабильным, если по меньшей мере один его полюс находится на или вне единичной окружности. В отношении кодирования речи, используемые здесь термины “нестабильный” и “нестабильность” имеют расширенное толкование. Например, “нестабильное измерение LSF” означает любое измерение LSF, соответствующее коэффициенту синтезирующего фильтра, который могут приводить к возникновению речевого артефакта. Например, нестабильные измерения LSF не обязательно соответствуют полюсам на или вне единичной окружности, но могут быть “нестабильными”, если их значения слишком близки друг к другу. Дело в том, что измерения LSF, расположенные слишком близко друг к другу, могут задавать в синтезирующем фильтре полюсы, имеющие характеристики фильтра с ярко выраженным резонансном на некоторых частотах, что приводит к образованию речевых артефактов. Например, нестабильное квантованное измерение LSF может задавать для синтезирующего фильтра размещение полюса, которое может приводить к нежелательному увеличению энергии. Обычно разделение измерений LSF может поддерживаться в окрестности  для измерений LSF, представленных углами от 0 до . Используемый здесь термин “нестабильный вектор LSF” означает вектор, который включает в себя одно или более нестабильных измерений LSF. Кроме того, “нестабильный синтезирующий фильтр” это синтезирующий фильтр, один или более коэффициентов (например, полюсов) которого соответствуют одному или более нестабильным измерениям LSF.
[0097] На фиг. 10 показана схема, демонстрирующая один пример кластеризованных измерений 1029 LSF. Измерения LSF проиллюстрированы по частоте 1019 в Гц, хотя следует отметить, что измерения LSF можно альтернативно выражать в других единицах. Измерения LSF (например,  1031a,  1031b и  1031c) являются примерами измерений LSF, включенных в промежуточный вектор LSF текущего кадра после оценивания и переупорядочения. Например, в предыдущем удаленном кадре, декодер оценивает первое измерение LSF концевого вектора LSF предыдущего кадра (например, ), которое, скорее всего, неверно. В этом случае первое измерение LSF промежуточного вектора LSF текущего кадра (например,  1031a) также, скорее всего, неверно.
[0098] Декодер может попытаться переупорядочить следующее измерение LSF промежуточного вектора LSF текущего кадра (например,  1031b). Как описано выше, может потребоваться, чтобы каждое следующее измерение LSF в векторе LSF было больше предыдущего элемента. Например,  1031b должно быть больше  1031a. Таким образом, декодер может размещать его с минимальным разнесением (например, Δ) от  1031a. В частности, . Соответственно может существовать несколько измерений LSF (например,  1031a,  1031b и  1031c) с минимальным разнесением (например, Δ=100 Гц), как проиллюстрировано в фиг. 10. Таким образом,  1031a,  1031b и  1031c представляют пример кластеризованных измерений 1029 LSF. Кластеризованные измерения LSF могут приводить к образованию нестабильного синтезирующего фильтра, что, в свою очередь, может приводить к формированию речевых артефактов в синтезированном речевом сигнале.
[0099] На фиг. 11 показан график, демонстрирующий пример артефактов 1135 вследствие кластеризованных измерений LSF. В частности, график демонстрирует пример артефактов 1135 в декодированном речевом сигнале (например, синтезированном речевом сигнале), обусловленных применением кластеризованных измерений LSF к синтезирующему фильтру. По горизонтальной оси графика отложено время 1101 (например, в секундах), и по вертикальной оси графика отложена амплитуда 1133 (например, число, значение). Амплитуда 1133 может быть числом, выраженным в битах. В некоторых конфигурациях 16 битов можно использовать для представления выборок речевого сигнала, значение которого заключено в пределах от -32768 до 32767, что соответствует диапазону (например, значению от -1 до+1 в формате плавающей запятой). Следует отметить, что амплитуду 1133 можно представлять по-разному в зависимости от реализации. В некоторых примерах значение амплитуды 1133 может соответствовать электромагнитному сигналу, характеризующемуся напряжением (в вольтах) и/или током (в амперах).
[00100] Интерполяция и/или экстраполяция векторов LSF между векторы LSF текущего и предыдущего кадров на основе подкадров известны в системах кодирования речи. В условиях удаленного кадра, как описано в связи с фиг. 10 и 11, схемы интерполяции и/или экстраполяции LSF могут генерировать нестабильные векторы LSF для определенных подкадров, что может приводить к раздражающим артефактам в синтезированном речевом сигнале. Артефакты возникают чаще, когда для квантования LSF, помимо методов квантования без прогнозирования используются методы квантования с прогнозированием.
[00101] Для решения проблемы обычно используется увеличенное количество битов для защиты от ошибок и используется квантование без прогнозирования во избежание распространения ошибок. Однако введение дополнительных битов невозможно для кодеров с ограничением по количеству битов, и использование квантования без прогнозирования может снижать качество речи в условиях чистого канала (например, без удаленных кадров).
[00102] Раскрытые здесь системы и способы можно использовать для подавления потенциальной нестабильности кадра. Например, некоторые конфигурации раскрытых здесь систем и способов можно применять для подавления артефактов кодирования речи вследствие нестабильности кадра, обусловленной квантованием с прогнозированием и межкадровой интерполяцией и экстраполяцией векторов LSF в условиях канала с нарушениями.
[00103] На фиг. 12 показана блок-схема, демонстрирующая одну конфигурацию электронного устройства 1237, выполненного с возможностью подавления потенциальной нестабильности кадра. Электронное устройство 1237 включает в себя декодер 1208. Один или более из вышеописанных декодеров можно реализовать в соответствии с декодером 1208, описанным в связи с фиг. 12. Электронное устройство 1237 также включает в себя детектор 1243 удаленных кадров. Детектор 1243 удаленных кадров можно реализовать отдельно от декодера 1208 или можно реализовать в декодере 1208. Детектор 1243 удаленных кадров обнаруживает удаленный кадр (например, кадр, который не принят или принят с ошибками) и может обеспечивать индикатор 1267 удаленного кадра при обнаружении удаленного кадра. Например, детектор 1243 удаленных кадров может обнаруживать удаленный кадр на основании одного или более из хэш-функции, контрольной суммы, кода повторения, бита(ов) четности, циклического контроля по избыточности (CRC) и т.д. Следует отметить, что один или более из компонентов, включенных в электронное устройство 1237 и/или декодер 1208, можно реализовать в оборудовании (например, схеме), программном обеспечении или их комбинации. Одна или более из линий или стрелок, проиллюстрированных в приведенных здесь блок-схемах, могут указывать связи (например, соединения) между компонентами или элементами.
[00104] Декодер 1208 формирует декодированный речевой сигнал 1259 (например, синтезированный речевой сигнал) на основании принятых параметров. Примеры принятых параметров включают в себя квантованные векторы 1282 LSF, квантованные весовые векторы 1241, индикатор 1281 режима прогнозирования и кодированный сигнал 1298 возбуждения. Декодер 1208 включает в себя один или более из блока 1245 обратного квантования A, модуля 1249 интерполяции, обратное преобразование 1253 коэффициентов, синтезирующего фильтра 1257, модуля 1261 определения параметра кадра, модуля 1265 замещения весового значения, модуля 1269 определения стабильности и блока 1273 обратного квантования B.
[00105] Декодер 1208 принимает квантованные векторы 1282 LSF (например, квантованные LSF, LSP, ISF, ISP, коэффициенты PARCOR, коэффициенты отражения или значения логарифмического отношения площадей) и квантованные весовые векторы 1241. Принятые квантованные векторы 1282 LSF могут соответствовать поднабору подкадров. Например, квантованные векторы 1282 LSF могут включать в себя только квантованные концевые векторы LSF, которые соответствуют последнему подкадру каждого кадра. В некоторых конфигурациях квантованные векторы 1282 LSF могут быть индексами, соответствующими поисковой таблице или кодовой книге. Дополнительно или альтернативно, квантованные весовые векторы 1241 могут быть индексами, соответствующими поисковой таблице или кодовой книге.
[00106] Электронное устройство 1237 и/или декодер 1208 может принимать индикатор 1281 режима прогнозирования от кодера. Как описано выше, индикатор 1281 режима прогнозирования указывает режим прогнозирования для каждого кадра. Например, индикатор 1281 режима прогнозирования может указывать один из двух или более режимов прогнозирования для кадра. В частности, индикатор 1281 режима прогнозирования может указывать, используется ли квантование с прогнозированием или квантование без прогнозирования.
[00107] Когда кадр принят правильно, блок 1245 обратного квантования A деквантует принятые квантованные векторы 1282 LSF для формирования деквантованных векторов 1247 LSF. Например, блок 1245 обратного квантования A может искать деквантованные векторы 1247 LSF на основании индексов (например, квантованных векторов 1282 LSF), соответствующих поисковой таблице или кодовой книге. Деквантование квантованных векторов 1282 LSF также может осуществляться на основании индикатора 1281 режима прогнозирования. Деквантованные векторы 1247 LSF могут соответствовать поднабору подкадров (например, концевым векторам LSF , соответствующим последнему подкадру каждого кадра). Кроме того, блок 1245 обратного квантования A деквантует квантованные весовые векторы 1241 для формирования деквантованных весовых векторов 1239. Например, блок 1245 обратного квантования A может искать деквантованные весовые векторы 1239 на основании индексов (например, квантованных весовые векторы 1241) соответствующие поисковой таблице или кодовой книге.
[00108] Когда кадр является удаленным кадром, детектор 1243 удаленных кадров может выдавать индикатор 1267 удаленного кадра на блок 1245 обратного квантования A. Когда возникает удаленный кадр, один или более квантованных векторов 1282 LSF и/или один или более квантованных весовых векторов 1241 могут не приниматься или могут содержать ошибки. В этом случае блок 1245 обратного квантования A может оценивать один или более деквантованных векторов 1247 LSF (например, концевой вектор LSF удаленного кадра ) на основании одного или более векторов LSF из предыдущего кадра (например, кадра до удаленного кадра). Дополнительно или альтернативно, когда возникает удаленный кадр, блок 1245 обратного квантования A может оценивать один или более деквантованных весовых векторов 1239.
[00109] Деквантованные векторы 1247 LSF (например, концевые векторы LSF) могут поступать на модуль 1261 определения параметра кадра и на модуль 1249 интерполяции. Кроме того, один или более деквантованных весовых векторов 1239 могут поступать на модуль 1261 определения параметра кадра. Модуль 1261 определения параметра кадра получает кадры. Например, модуль 1261 определения параметра кадра может получать удаленный кадр (например, оцененный деквантованный весовой вектор 1239 и оцененный деквантованный вектор 1247 LSF, соответствующий удаленному кадру). Модуль 1261 определения параметра кадра также может получать кадр (например, правильно принятый кадр) после удаленного кадра. Например, модуль 1261 определения параметра кадра может получать деквантованный весовой вектор 1239 и деквантованный вектор 1247 LSF, соответствующий правильно принятому кадру, после удаленного кадра.
[00110] Модуль 1261 определения параметра кадра определяет параметр A 1263a кадра на основании деквантованных векторов 1247 LSF и деквантованного весового вектора 1239. Один пример параметра A 1263a кадра является промежуточным вектором LSF (например, ). Например, модуль определения параметра кадра может применять принятый весовой вектор (например, деквантованный весовой вектор 1239) для генерации промежуточного вектора LSF текущего кадра. Например, модуль 1261 определения параметра кадра может определять промежуточный вектор LSF текущего кадра  на основании концевого вектора LSF текущего кадра , концевого вектора LSF предыдущего кадра  и весовой вектор  текущего кадра в соответствии с уравнением (1). Другие примеры параметра A 1263a кадра включают в себя векторы LSP и векторы ISP. Например, параметром A 1263a кадра может быть любой параметр, оцененный на основании двух параметров концевого подкадра.
[00111] В некоторых конфигурациях модуль 1261 определения параметра кадра может определять, упорядочен ли параметр кадра (например, промежуточный вектор LSF текущего кадра ) в соответствии с правилом до всякого переупорядочения. В одном примере этот параметр кадра является промежуточным вектором LSF текущего кадра , и, согласно правилу, все измерения LSF в промежуточном векторе LSF  распознаются в порядке возрастания с, по меньшей мере, минимальным разнесением в каждой паре измерений LSF. В этом примере модуль 1261 определения параметра кадра может определять располагаются ли все измерения LSF в промежуточном векторе LSF  в порядке возрастания с, по меньшей мере, минимальным разнесением в каждой паре измерений LSF. Например, модуль 1261 определения параметра кадра может определять, справедливо ли .
[00112] В некоторых конфигурациях модуль 1261 определения параметра кадра может выдавать индикатор 1262 упорядочения на модуль 1269 определения стабильности. Индикатор 1262 упорядочения указывает, были ли измерения LSF (например, в промежуточном векторе LSF ) неупорядоченны и/или не разнесены более чем с минимальным разнесением Δ до всякого переупорядочения.
[00113] В ряде случаев модуль 1261 определения параметра кадра может переупорядочивать вектор LSF. Например, если модуль 1261 определения параметра кадра определяет, что измерения LSF, включенные в промежуточный вектор LSF текущего кадра , не размещены в порядке возрастания, и/или эти измерения LSF не имеют, по меньшей мере, минимального разнесения в каждой паре измерений LSF, модуль 1261 определения параметра кадра может переупорядочивать измерения LSF. Например, модуль 1261 определения параметра кадра может переупорядочивать измерения LSF в промежуточном векторе LSF текущего кадра  таким образом, что  для каждого измерения LSF, которое не удовлетворяет критериям . Другими словами, модуль 1261 определения параметра кадра может добавлять Δ к измерению LSF для получения позиции следующего измерения LSF, если следующее измерение LSF не было отделено, по меньшей мере, на Δ. Кроме того, это можно делать только для измерений LSF, которые не отделены с минимальным разнесением Δ. Как описано выше, это переупорядочение может приводить к кластеризованным измерениям LSF в промежуточном векторе LSF . Соответственно параметр A 1263a кадра может быть переупорядоченным вектором LSF (например, промежуточным вектором LSF ) в ряде случаев (например, для одного или более кадров после удаленного кадра).
[00114] В некоторых конфигурациях модуль 1261 определения параметра кадра можно реализовать в составе блока 1245 обратного квантования A. Например, определение промежуточного вектора LSF на основании деквантованных векторов 1247 LSF и деквантованного весового вектора 1239 можно рассматривать как часть процедуры деквантования. Параметр A 1263a кадра может поступать на модуль 1265 замещения весового значения и, в необязательном порядке, на модуль 1269 определения стабильности.
[00115] Модуль 1269 определения стабильности может определять, является ли кадр потенциально нестабильным. Модуль 1269 определения стабильности может выдавать индикатор 1271 нестабильности на модуль 1265 замещения весового значения, когда модуль 1269 определения стабильности определяет, что текущий кадр потенциально нестабилен. Другими словами, индикатор 1271 нестабильности указывает, что текущий кадр потенциально нестабилен.
[00116] Потенциально нестабильный кадр представляет собой кадр, одна или более характеристик которого указывают опасность формирования речевого артефакта. Примеры характеристик, которые указывают опасность формирования речевого артефакта, могут включать в себя указание, когда кадр находится в одном или более кадрах после удаленного кадра, использует ли какой-либо кадр между кадром и удаленным кадром квантование с прогнозированием (или без прогнозирования), и/или упорядочен ли параметр кадра в соответствии с правилом до всякого переупорядочения. Потенциально нестабильный кадр может соответствовать (например, может включать в себя) одному или более нестабильным векторам LSF. Следует отметить, что потенциально нестабильный кадр в ряде случаев может быть фактически стабильным. Однако может быть трудно определить, является ли кадр определенно стабильным или определенно нестабильным, не синтезируя весь кадр. Соответственно раскрытые здесь системы и способы могут предпринимать корректирующее действие для подавления потенциально нестабильных кадров. Одно преимущество раскрытых здесь систем и способов состоит в том, что потенциально нестабильные кадры можно обнаруживать, не синтезируя весь кадр. Это позволяет сократить объем обработки и/или задержку, необходимую для обнаружения и/или подавления речевых артефактов.
[00117] В первом подходе модуль 1269 определения стабильности определяет, является ли текущий кадр (например, кадр n) потенциально нестабильным, на основании того, находится ли текущий кадр находится в пороговом количестве кадров после удаленного кадра, и использует ли какой-либо кадр между удаленным кадром и текущим кадром квантование с прогнозированием (или без прогнозирования). Текущий кадр может быть принят правильно. В этом подходе модуль 1269 определения стабильности определяет, что кадр потенциально нестабилен, если текущий кадр принят в пороговом количестве кадров после удаленного кадра и если ни один кадр между текущим кадром и удаленным кадром (при наличии) не использует квантование без прогнозирования.
[00118] Количество кадров между удаленным кадром и текущим кадром можно определить на основании индикатора 1267 удаленного кадра. Например, модуль 1269 определения стабильности может поддерживать счетчик, который увеличивается для каждого кадра после удаленного кадра. В одной конфигурации пороговое количество кадров после удаленного кадра может быть равно 1. В этой конфигурации следующий кадр после удаленного кадра всегда считается потенциально нестабильным. Например, если текущий кадр является следующим кадром после удаленного кадра (следовательно, между текущим кадром и удаленным кадром нет ни одного кадра, который использует квантование без прогнозирования), то модуль 1269 определения стабильности определяет, что текущий кадр потенциально нестабилен. В этом случае модуль 1269 определения стабильности обеспечивает индикатор 1271 нестабильности, указывающий, что текущий кадр потенциально нестабилен.
[00119] В других конфигурациях пороговое количество кадров после удаленного кадра может быть больше 1. В этих конфигурациях модуль 1269 определения стабильности может определять существует ли между текущим кадром и удаленным кадром кадр, который использует квантование без прогнозирования, на основании индикатора 1281 режима прогнозирования. Например, индикатор 1281 режима прогнозирования может указывать, используется ли для каждого кадра квантование с прогнозированием или без прогнозирования. Если между текущим кадром и удаленным кадром существует кадр, который использует квантование без прогнозирования, модуль 1269 определения стабильности может определить, что текущий кадр стабилен (например, не является потенциально нестабильным). В этом случае модуль 1269 определения стабильности может не указывать, что текущий кадр потенциально нестабилен.
[00120] Во втором подходе модуль 1269 определения стабильности определяет, является ли текущий кадр (например, кадр n) потенциально нестабильным, на основании того, принят ли текущий кадр после удаленного кадра, был ли параметр A 1263a кадра упорядочен в соответствии с правилом до всякого переупорядочения, и использует ли какой-либо кадр между удаленным кадром и текущим кадром квантование без прогнозирования. В этом подходе модуль 1269 определения стабильности определяет, что кадр потенциально нестабилен, если текущий кадр получен после удаленного кадра, если параметр A 1263a кадра не был упорядочен в соответствии с правилом до всякого переупорядочения и если ни один кадр между текущим кадром и удаленным кадром (при наличии) не использует квантование без прогнозирования.
[00121] Принят ли текущий кадр после удаленного кадра, можно определить на основании индикатора 1267 удаленного кадра. Использует ли какой-либо кадр между удаленным кадром и текущим кадром квантование без прогнозирования, можно определить на основании индикатора режима прогнозирования, как описано выше. Например, если текущий кадр находится в некотором количестве кадров после удаленного кадра, если между текущим кадром и удаленным кадром нет ни одного кадра, который использует квантование без прогнозирования, и если параметр A 1263a кадра не был упорядочен в соответствии с правилом до всякого переупорядочения, то модуль 1269 определения стабильности определяет, что текущий кадр потенциально нестабилен. В этом случае модуль 1269 определения стабильности обеспечивает индикатор 1271 нестабильности, указывающий, что текущий кадр потенциально нестабилен.
[00122] В некоторых конфигурациях модуль 1269 определения стабильности может получать от модуля 1261 определения параметра кадра индикатор 1262 упорядочения, который указывает, был ли параметр A 1263a кадра (например, промежуточный вектор LSF текущего кадра ) упорядочен в соответствии с правилом до всякого переупорядочения. Например, индикатор 1262 упорядочения может указывать, были ли измерения LSF (например, в промежуточном векторе LSF ) неупорядоченны и/или не были ли разнесены с, по меньшей мере, минимальным разнесением Δ, до всякого переупорядочения.
[00123] В некоторых конфигурациях можно реализовать сочетание первого и второго подходов. Например, для первого кадра после удаленного кадра можно применять первый подход, тогда как для следующих кадров можно применять второй подход. В этой конфигурации один или более из следующих кадров можно указывать как потенциально нестабильные на основании второго подхода. Другие подходы к определению потенциальной нестабильности могут базироваться на изменении энергии импульсной характеристики синтезирующих фильтров на основании векторов LSF и/или изменений энергии, соответствующих разным полосам частот синтезирующих фильтров на основании векторов LSF.
[00124] Когда потенциальная нестабильность не указана (например, когда текущий кадр стабилен), модуль 1265 замещения весового значения обеспечивает или передает параметр A 1263a кадра как параметр B 1263 кадра модулю 1249 интерполяции. В одном примере параметр A 1263a кадра является промежуточным вектором LSF текущего кадра , который базируется на концевом векторе LSF текущего кадра , концевом векторе LSF предыдущего кадра  и принятом весовом векторе текущего кадра . Когда потенциальная нестабильность не указана, можно предположить, что промежуточный вектор LSF текущего кадра  стабилен и может поступать на модуль 1249 интерполяции.
[00125] Если текущий кадр потенциально нестабилен, модуль 1265 замещения весового значения применяет весовое значение заместителя для генерации стабильного параметра кадра (например, промежуточного вектора LSF заместителя текущего кадра ). “Стабильный параметр кадра” это параметр, который не обуславливает речевые артефакты. Весовое значение заместителя может быть заранее определенным значением, которое гарантирует стабильный параметр кадра (например, параметр B 1263b кадра). Весовое значение заместителя можно применять вместо (принятого и/или оцененного) деквантованного весового вектора 1239. В частности, модуль 1265 замещения весового значения применяет весовое значение заместителя к деквантованным векторам 1247 LSF для генерации стабильного параметра B 1263b кадра, когда индикатор 1271 нестабильности указывает, что текущий кадр потенциально нестабилен. В этом случае параметр A 1263a кадра и/или деквантованный весовой вектор 1239 текущего кадра можно игнорировать. Соответственно модуль 1265 замещения весового значения генерирует параметр B 1263b кадра, который замещает параметр A 1263a кадра, когда текущий кадр потенциально нестабилен.
[00126] Например, модуль 1265 замещения весового значения может применять весовое значение заместителя  для генерации промежуточного вектора LSF заместителя (стабильного) текущего кадра . Например, модуль 1265 замещения весового значения может применять весовое значение заместителя к концевому вектору LSF текущего кадра и концевому вектору LSF предыдущего кадра. В некоторых конфигурациях весовое значение заместителя  может быть скалярным значением от 0 до 1. Например, весовое значение заместителя  может действовать как весовой вектор заместителя (например, M-мерный), где все значения равны , где . Таким образом, промежуточный вектор LSF заместителя (стабильного) текущего кадра  может генерироваться или определяться в соответствии с уравнением (3).
(3)
Использование  от 0 до 1 гарантирует, что результирующий промежуточный вектор LSF заместителя текущего кадра  стабилен, если нижележащие концевые векторы LSF  и  стабильны. В этом случае промежуточный вектор LSF заместителя текущего кадра является одним примером стабильного параметра кадра, поскольку применение коэффициентов 1255, соответствующих промежуточному вектору LSF заместителя текущего кадра, к синтезирующему фильтру 1257, не приводит к образованию речевых артефактов в декодированном речевом сигнале 1259. В некоторых конфигурациях  можно выбирать равным 0.6, что придает немного больший вес концевому вектору LSF текущего кадра (например, ) по сравнению с концевым вектором LSF предыдущего кадра (например, ), соответствующим удаленному кадру.
[00127] В альтернативных конфигурациях весовое значение заместителя может быть весовым вектором заместителя , включающим в себя индивидуальные весовые коэффициенты , где i = {1, 2, …, M}, и n обозначает текущий кадр. В этих конфигурациях каждый весовой коэффициент  составляет от 0 до 1, и все весовые коэффициенты могут не быть одинаковы. В этих конфигурациях весовое значение заместителя (например, весовой вектор заместителя ) можно применять согласно уравнению (4).
(4)
[00128] В некоторых конфигурациях весовое значение заместителя может быть статическим. В других конфигурациях модуль 1265 замещения весового значения может выбирать весовое значение заместителя на основании предыдущего кадра и текущего кадра. Например, разные весовые значения заместителя можно выбирать на основании классификации (например, вокализованный, невокализованный и т.д.) двух кадров (например, предыдущего кадра и текущего кадра). Дополнительно или альтернативно, разные весовые значения заместителя можно выбирать на основании одной или более разностей LSF между двумя кадрами (например, разности энергий импульсной характеристики фильтра LSF).
[00129] Деквантованные векторы 1247 LSF и параметр B 1263b кадра может поступать на модуль 1249 интерполяции. Модуль 1249 интерполяции интерполирует деквантованные векторы 1247 LSF и параметр B 1263b кадра для генерации векторов LSF подкадров (например, векторов LSF подкадров  для текущего кадра).
[00130] В одном примере параметр B 1263 кадра является промежуточным вектором LSF текущего кадра , и деквантованные векторы 1247 LSF включают в себя концевой вектор LSF предыдущего кадра  и концевой вектор LSF текущего кадра . Например, модуль 1249 интерполяции может интерполировать векторы LSF подкадров  на основании  с использованием коэффициентов интерполяции  в соответствии с уравнением . Коэффициенты интерполяции  могут быть заранее определенными значениями, таким образом, что . Здесь k - целочисленный номер подкадра, где , где K - суммарное количество подкадров в текущем кадре. Модуль 1249 интерполяции соответственно интерполирует векторы LSF, соответствующие каждому подкадру в текущем кадре. В некоторых конфигурациях  для концевого вектора LSF текущего кадра .
[00131] Модуль 1249 интерполяции передает векторы 1251 LSF обратному преобразованию 1253 коэффициентов. Обратное преобразование 1253 коэффициентов преобразует векторы 1251 LSF в коэффициенты 1255 (например, коэффициенты фильтрации для синтезирующего фильтра 1/A(z)). Коэффициенты 1255 поступают на синтезирующий фильтр 1257.
[00132] Блок 1273 обратного квантования B принимает и деквантует кодированный сигнал 1298 возбуждения для формирования сигнала 1275 возбуждения. В одном примере кодированный сигнал 1298 возбуждения может включать в себя индекс фиксированной кодовой книги, квантованный коэффициент усиления фиксированной кодовой книги, индекс адаптивной кодовой книги и квантованный коэффициент усиления адаптивной кодовой книги. В этом примере блок 1273 обратного квантования B ищет запись фиксированной кодовой книги (например, вектор) на основании индекса фиксированной кодовой книги и применяет деквантованный коэффициент усиления фиксированной кодовой книги к записи фиксированной кодовой книги для получения вклада фиксированной кодовой книги. Дополнительно, блок 1273 обратного квантования B ищет запись адаптивной кодовой книги на основании индекса адаптивной кодовой книги и применяет деквантованный коэффициент усиления адаптивной кодовой книги записи адаптивной кодовой книги для получения вклада адаптивной кодовой книги. Затем блок 1273 обратного квантования B может суммировать вклад фиксированной кодовой книги и вклад адаптивной кодовой книги для формирования сигнала 1275 возбуждения.
[00133] Синтезирующий фильтр 1257 фильтрует сигнал 1275 возбуждения в соответствии с коэффициентами 1255 для формирования декодированного речевого сигнала 1259. Например, полюсы синтезирующего фильтра 1257 можно конфигурировать в соответствии с коэффициентами 1255. Затем сигнал 1275 возбуждения пропускается через синтезирующий фильтр 1257 для формирования декодированного речевого сигнала 1259 (например, синтезированного речевого сигнала).
[00134] На фиг. 13 показана блок-схема операций, демонстрирующая одну конфигурацию способа 1300 для подавления потенциальной нестабильности кадра. Электронное устройство 1237 может получать 1302 кадр после (например, следующий по времени) удаленного кадра. Например, электронное устройство 1237 может обнаруживать удаленный кадр на основании одного или более из хэш-функции, контрольной суммы, кода повторения, бита(ов) четности, циклического контроля по избыточности (CRC) и т.д. Затем электронное устройство 1237 может получать 1302 кадр после удаленного кадра. Полученный 1302 кадр может быть кадром, следующим после удаленного кадра, или может находиться в любом количестве кадров после удаленного кадра. Полученный 1302 кадр может быть правильно принятым кадром.
[00135] Электронное устройство 1237 может определять 1304, является ли кадр потенциально нестабильным. В некоторых конфигурациях определение 1304, является ли кадр потенциально нестабильным, базируется на том, упорядочен ли параметр кадра (например, промежуточный вектор LSF текущего кадра) в соответствии с правилом до всякого переупорядочения (например, до переупорядочения, при наличии). Дополнительно или альтернативно, определение 1304, является ли кадр потенциально нестабильным, может базироваться на том, находится ли кадр (например, текущий кадр) в пороговом количестве кадров после удаленного кадра. Дополнительно или альтернативно, определение 1304, является ли кадр потенциально нестабильным, могут базироваться на том, использует ли какой-либо кадр между кадром (например, текущий кадр) и удаленным кадром квантование без прогнозирования.
[00136] В первом подходе, как описано выше, электронное устройство 1237 определяет 1304, что кадр потенциально нестабилен, если кадр принят в пороговом количестве кадров после удаленного кадра и если ни один кадр между кадром и удаленным кадром (при наличии) не использует квантование без прогнозирования. Во втором подходе как описано выше, электронное устройство 1237 определяет 1304, что кадр потенциально нестабилен, если текущий кадр получен после удаленного кадра, если параметр кадра (например, промежуточный вектор LSF текущего кадра ) не был упорядочен в соответствии с правилом до всякого переупорядочения, и если ни один кадр между текущим кадром и удаленным кадром (при наличии) не использует квантование без прогнозирования. Можно использовать дополнительные или альтернативные подходы. Например, первый подход можно применять для первого кадра после удаленного кадра, тогда как второй подход можно применять для следующих кадров.
[00137] Электронное устройство 1237 может применять 1306 весовое значение заместителя для генерации стабильного параметра кадра, если кадр потенциально нестабилен. Например, электронное устройство 1237 может генерировать стабильный параметр кадра (например, промежуточный вектор LSF заместителя текущего кадра ) путем применения весового значения заместителя к деквантованным векторам 1247 LSF (например, к концевому вектору LSF текущего кадра  и концевому вектору LSF предыдущего кадра ). Например, генерация стабильного параметра кадра может включать в себя определение промежуточного вектора LSF заместителя текущего кадра (например, ), который равен произведению концевого вектора LSF текущего кадра (например, ) и весового значения заместителя (например, ) плюс произведение концевого вектора LSF предыдущего кадра (например, ) и разности единицы и весового значения заместителя (например, ). Это может осуществляться, например, как проиллюстрировано в уравнении (3) или уравнении (4).
[00138] На фиг. 14 показана блок-схема операций, демонстрирующая более конкретную конфигурацию способа 1400 для подавления потенциальной нестабильности кадра. Электронное устройство 1237 может получать 1402 текущий кадр. Например, электронное устройство 1237 может получать параметры для периода времени, соответствующего текущему кадру.
[00139] Электронное устройство 1237 может определять 1404, является ли текущий кадр удаленным кадром. Например, электронное устройство 1237 может обнаруживать удаленный кадр на основании одного или более из хэш-функции, контрольной суммы, кода повторения, бита(ов) четности, циклического контроля по избыточности (CRC) и т.д.
[00140] Если текущий кадр является удаленным кадром, электронное устройство 1237 может получать 1406 оцененный концевой вектор LSF текущего кадра и оцененный промежуточный вектор LSF текущего кадра на основании предыдущего кадра. Например, декодер 1208 может использовать маскировку ошибки для удаленного кадра. В маскировке ошибки декодер 1208 может копировать концевой вектор LSF предыдущего кадра и промежуточный вектор LSF предыдущего кадра как оцененный вектор LSF текущего кадра и оцененный промежуточный вектор LSF текущего кадра, соответственно. Этой процедуре можно следовать для последовательных удаленных кадров.
[00141] В случае двух последовательных удаленных кадров, например, второй удаленный кадр может включать в себя копию концевого вектора LSF из первого удаленного кадра и все интерполированные векторы LSF, например промежуточный вектор LSF и векторы LSF подкадров. Соответственно векторы LSF во втором удаленном кадре могут быть приблизительно такими же, как векторы LSF в первом удаленном кадре. Например, концевой вектор LSF первого удаленного кадра можно копировать из предыдущего кадра. Таким образом, все векторы LSF в последовательных удаленных кадрах можно вывести из последнего правильно принятого кадра. Последний правильно принятый кадр может быть стабильным с очень высокой вероятностью. Следовательно, вероятность того, что последовательные удаленные кадры имеют нестабильный вектор LSF, очень мала. Это, по существу, объясняется тем, что может не существовать интерполяции между двумя разными векторами LSF в случае последовательных удаленных кадров. Соответственно в некоторых конфигурациях весовое значение заместителя может не применяться для последовательно удаленных кадров.
[00142] Электронное устройство 1237 может определять 1416 векторы LSF подкадров для текущего кадра. Например, электронное устройство 1237 может интерполировать концевой вектор LSF текущего кадра, промежуточный вектор LSF текущего кадра и концевой вектор LSF предыдущего кадра на основании коэффициентов интерполяции для формирования векторов LSF подкадров для текущего кадра. В некоторых конфигурациях это может осуществляться в соответствии с уравнением (2).
[00143] Электронное устройство 1237 может синтезировать 1418 декодированный речевой сигнал 1259 для текущего кадра. Например, электронное устройство 1237 может пропускать сигнал 1275 возбуждения через синтезирующий фильтр 1257, заданный коэффициентами 1255 на основании векторов 1251 LSF подкадров для формирования декодированного речевого сигнала 1259.
[00144] Если текущий кадр не является удаленным кадром, электронное устройство 1237 может применять 1408 принятый весовой вектор для генерации промежуточного вектора LSF текущего кадра. Например, электронное устройство 1237 может умножать концевой вектор LSF текущего кадра на принятый весовой вектор и может умножать концевой вектор LSF предыдущего кадра на 1 минус принятый весовой вектор. Затем электронное устройство 1237 может суммировать полученные произведения для генерации промежуточного вектора LSF текущего кадра. Это может осуществляться согласно уравнению (1).
[00145] Электронное устройство 1237 может определять 1410, находится ли текущий кадр в пороговом количестве кадров после последнего удаленного кадра. Например, электронное устройство 1237 может использовать счетчик, который отсчитывает каждый кадр после удаленного кадра, указанного индикатором 1267 удаленного кадра. Счетчик можно обнулять каждый раз, когда возникает удаленный кадр. Электронное устройство 1237 может определять, находится ли счетчик в пределах порогового количества кадров. Пороговое число может быть равно одному или более кадрам. Если текущий кадр не находится в пороговом количестве кадров после последнего удаленного кадра, электронное устройство 1237 может определять 1416 векторы LSF подкадров для текущего кадра и синтезировать 1418 декодированный речевой сигнал 1259, как описано выше. Определение 1410, находится ли текущий кадр в пороговом количестве кадров после последнего удаленного кадра, может сокращать ненужную обработку кадров с низкой вероятностью нестабильности (например, для кадров, возникающих после одного или более потенциально нестабильных кадров, для которых потенциальная нестабильность подавлена).
[00146] Если текущий кадр находится в пороговом количестве кадров после последнего удаленного кадра, электронное устройство 1237 может определять 1412, использует ли какой-либо кадр между текущим кадром и последним удаленным кадром квантование без прогнозирования. Например, электронное устройство 1237 может принимать индикатор 1281 режима прогнозирования, который указывает, использует ли каждый кадр квантование с прогнозированием или без прогнозирования. Электронное устройство 1237 может использовать индикатор 1281 режима прогнозирования для отслеживания режима прогнозирования для каждого кадра. Если какой-либо кадр между текущим кадром и последним удаленным кадром использует квантование без прогнозирования, электронное устройство 1237 может определять 1416 векторы LSF подкадров для текущего кадра и синтезировать 1418 декодированный речевой сигнал 1259, как описано выше. Определение 1412, использует ли какой-либо кадр между текущим кадром и последним удаленным кадром квантование без прогнозирования, может сокращать ненужную обработку кадров с низкой вероятностью нестабильности (например, для кадров, возникающих после кадра, который должен включать в себя точный концевой вектор LSF, поскольку концевой вектор LSF не был квантован, на основании любого предыдущего кадра).
[00147] Если ни один кадр между текущим кадром и последним удаленным кадром не использует квантование без прогнозирования (например, если все кадры между текущим кадром и последним удаленным кадром используют квантование с прогнозированием), электронное устройство 1237 может применять 1414 весовое значение заместителя для генерации промежуточного вектора LSF заместителя текущего кадра. В этом случае электронное устройство 1237 может определить, что текущий кадр потенциально нестабилен, и может применять весовое значение заместителя для генерации стабильного параметра кадра (например, промежуточного вектора LSF заместителя текущего кадра). Например, электронное устройство 1237 может умножать концевой вектор LSF текущего кадра на весовой вектор заместителя и может умножать концевой вектор LSF предыдущего кадра на 1 минус весовой вектор заместителя. Затем электронное устройство 1237 может суммировать полученные произведения для генерации промежуточного вектора LSF заместителя текущего кадра. Это может осуществляться согласно уравнению (3) или уравнению (4).
[00148] Затем электронное устройство 1237 может определять 1416 векторы LSF подкадров для текущего кадра, как описано выше. Например, электронное устройство 1237 может интерполировать векторы LSF подкадров на основании концевого вектора LSF текущего кадра, концевого вектора LSF предыдущего кадра, промежуточного вектора LSF заместителя текущего кадра и коэффициентов интерполяции. Это может осуществляться в соответствии с уравнением (2). Электронное устройство 1237 также может синтезировать 1418 декодированный речевой сигнал 1259, как описано выше. Например, электронное устройство 1237 может пропускать сигнал 1275 возбуждения через синтезирующий фильтр 1257, заданный коэффициентами 1255, на основании векторов 1251 LSF подкадров (которые основаны на текущем промежуточном векторе LSF заместителя) для формирования декодированного речевого сигнала 1259.
[00149] На фиг. 15 показана блок-схема операций, демонстрирующая другую более конкретную конфигурацию способа 1500 для подавления потенциальной нестабильности кадра. Электронное устройство 1237 может получать 1502 текущий кадр. Например, электронное устройство 1237 может получать параметры для периода времени, соответствующего текущему кадру.
[00150] Электронное устройство 1237 может определять 1504 является ли текущий кадр удаленным кадром. Например, электронное устройство 1237 может обнаруживать удаленный кадр на основании одного или более из хэш-функции, контрольной суммы, кода повторения, бита(ов) четности, циклического контроля по избыточности (CRC) и т.д.
[00151] Если текущий кадр является удаленным кадром, электронное устройство 1237 может получать 1506 оцененный концевой вектор LSF текущего кадра и оцененный промежуточный вектор LSF текущего кадра на основании предыдущего кадра. Это может осуществляться, как описано выше в связи с фиг. 14.
[00152] Электронное устройство 1237 может определять 1516 векторы LSF подкадров для текущего кадра. Это может осуществляться, как описано выше в связи с фиг. 14. Электронное устройство 1237 может синтезировать 1518 декодированный речевой сигнал 1259 для текущего кадра. Это может осуществляться, как описано выше в связи с фиг. 14.
[00153] Если текущий кадр не является удаленным кадром, электронное устройство 1237 может применять 1508 принятый весовой вектор для генерации промежуточного вектора LSF текущего кадра. Это может осуществляться, как описано выше в связи с фиг. 14.
[00154] Электронное устройство 1237 может определять 1510, использует ли какой-либо кадр между текущим кадром и последним удаленным кадром квантование без прогнозирования. Это может осуществляться, как описано выше в связи с фиг. 14. Если какой-либо кадр между текущим кадром и последним удаленным кадром использует квантование без прогнозирования, электронное устройство 1237 может определять 1516 векторы LSF подкадров для текущего кадра и синтезировать 1518 декодированный речевой сигнал 1259, как описано выше.
[00155] Если ни один кадр между текущим кадром и последним удаленным кадром не использует квантование без прогнозирования (например, если все кадры между текущим кадром и последним удаленным кадром используют квантование с прогнозированием), электронное устройство 1237 может определять 1512, упорядочен ли промежуточный вектор LSF текущего кадра в соответствии с правилом до всякого переупорядочения. Например, электронное устройство 1237 может определять, расположена ли каждая LSF в промежуточном векторе LSF  в порядке возрастания с, по меньшей мере, минимальным разнесением в каждой паре измерений LSF до всякого переупорядочения, как описано выше в связи с фиг. 12. Если промежуточный вектор LSF текущего кадра упорядочен в соответствии с правилом до всякого переупорядочения, электронное устройство 1237 может определять 1516 векторы LSF подкадров для текущего кадра и синтезировать 1518 декодированный речевой сигнал 1259, как описано выше.
[00156] Если промежуточный вектор LSF текущего кадра не упорядочен в соответствии с правилом до всякого переупорядочения, электронное устройство 1237 может применять 1514 весовое значение заместителя для генерации промежуточного вектора LSF заместителя текущего кадра. В этом случае электронное устройство 1237 может определить, что текущий кадр потенциально нестабилен, и может применять весовое значение заместителя для генерации стабильного параметра кадра (например, промежуточного вектора LSF заместителя текущего кадра). Это может осуществляться, как описано выше в связи с фиг. 14.
[00157] Затем электронное устройство 1237 может определять 1516 векторы LSF подкадров для текущего кадра и синтезировать 1518 декодированный речевой сигнал 1259, как описано выше в связи с фиг. 14. Например, электронное устройство 1237 может пропускать сигнал 1275 возбуждения через синтезирующий фильтр 1257, заданный коэффициентами 1255, на основании векторов 1251 LSF подкадров (которые основаны на текущем промежуточном векторе LSF заместителя) для формирования декодированного речевого сигнала 1259.
[00158] На фиг. 16 показана блок-схема операций, демонстрирующая другую более конкретную конфигурацию способа 1600 для подавления потенциальной нестабильности кадра. Например, некоторые конфигурации раскрытых здесь систем и способов можно применять в двух процедурах: обнаружения потенциальной нестабильности LSF и подавления потенциальной нестабильности LSF.
[00159] Электронное устройство 1237 может принимать 1602 кадр после удаленного кадра. Например, электронное устройство 1237 может обнаруживать удаленный кадр и принимать один или более кадров после удаленного кадра. В частности, электронное устройство 1237 может принимать параметры, соответствующие кадрам после удаленного кадра.
[00160] Электронное устройство 1237 может определять, может ли промежуточный вектор LSF текущего кадра быть нестабильным. В некоторых реализациях электронное устройство 1237 может предполагать, что один или более кадров после удаленного кадра потенциально нестабильны (например, они включают в себя потенциально нестабильный промежуточный вектор LSF).
[00161] При обнаружении потенциальной нестабильности, принятый весовой вектор , используемый кодером для интерполяции/экстраполяции (например, передаваемый в качестве индекса на декодер 1208) можно игнорировать. Например, электронное устройство 1237 (например, декодер 1208) может игнорировать весовой вектор.
[00162] Электронное устройство 1237 может применять 1604 весовое значение заместителя для генерации промежуточного вектора LSF заместителя (стабильного) текущего кадра. Например, декодер 1208 применяет весовое значение заместителя , как описано выше в связи с фиг. 12.
[00163] Нестабильность векторов LSF может распространяться, если следующие кадры (например, n+1, n+2 и т.д.) используют методы квантования с прогнозированием для квантования концевых векторов LSF. Следовательно, для текущего кадра и следующего кадра, принятых 1608 до того, как электронное устройство 1237 определяет 1606, 1614, что методы квантования LSF без прогнозирования используются для кадра, декодер 1208 может определять 1612, упорядочен ли промежуточный вектор LSF текущего кадра в соответствии с правилом до всякого переупорядочения. В частности, электронное устройство 1237 может определять 1606 использует ли текущий кадр квантование с прогнозированием LSF. Если текущий кадр использует квантование с прогнозированием LSF, электронное устройство 1237 может определять 1608, правильно ли принят новый кадр (например, следующий кадр). Если новый кадр принят неправильно (например, новый кадр является удаленным кадром), то операция может переходить к приему 1602 текущего кадра после удаленного кадра. Если электронное устройство 1237 определяет 1608, что новый кадр принят правильно, электронное устройство 1237 может применять 1610 принятый весовой вектор для генерации промежуточного вектора LSF текущего кадра. Например, электронное устройство 1237 может использовать текущий весовой вектор для промежуточной LSF текущего кадра (первоначально не заменяя ее). Соответственно для всех (правильно принятых) следующих кадров, пока не используются методы квантования LSF без прогнозирования, декодер может применять 1610 принятый весовой вектор для генерации промежуточного вектора LSF текущего кадра и определять 1612, упорядочен ли промежуточный вектор LSF текущего кадра в соответствии с правилом до всякого переупорядочения. Например, электронное устройство 1237 может применять 1610 весовой вектор на основании индекса, передаваемого от кодера, для интерполяции промежуточного вектора LSF. Затем электронное устройство 1237 может определять 1612, упорядочен ли промежуточный вектор LSF текущего кадра соответствующий кадру таким образом, что  до всякого переупорядочения.
[00164] Нарушение правила свидетельствует о потенциальной нестабильности промежуточного вектора LSF. Например, если электронное устройство 1237 определяет 1612, что промежуточный вектор LSF, соответствующий кадру не упорядочен в соответствии с правилом до всякого переупорядочения, электронное устройство 1237 соответственно определяет, что измерения LSF в промежуточном векторе LSF потенциально нестабильны. Декодер 1208 может подавлять потенциальную нестабильность путем применения 1604 весового значения заместителя, как описано выше.
[00165] Если промежуточный вектор LSF текущего кадра упорядочен в соответствии с правилом, электронное устройство 1237 может определять 1614, использует ли текущий кадр квантование с прогнозированием. Если текущий кадр использует квантование с прогнозированием, электронное устройство 1237 может применять 1604 весовое значение заместителя, как описано выше. Если электронное устройство 1237 определяет 1614, что текущий кадр не использует квантование с прогнозированием (например, что текущий кадр использует квантование без прогнозирования), электронное устройство 1237 может определять 1616, правильно ли принят новый кадр. Если новый кадр принятый неправильно (например, если новый кадр является удаленным кадром), операция может переходить к приему 1602 текущего кадра после удаленного кадра.
np
np
np
[00166] Если текущий кадр использует квантование без прогнозирования и если электронное устройство 1237 определяет 1616, что новый кадр принят правильно, декодер 1208 продолжает работать нормально, используя принятый весовой вектор, который используется в регулярном режиме работы. Другими словами, электронное устройство 1237 может применять 1618 принятый весовой вектор на основании индекса, передаваемого от кодера, для интерполяции промежуточного вектора LSF для каждого правильно принятого кадра. В частности, электронное устройство 1237 может применять 1618 принятый весовой вектор на основании индекса, принятого от кодера, для каждого следующего кадра (например, n+n+1, n+n+2 и т.д., где n- номер кадра для кадра, который использует квантование без прогнозирования), пока не возникнет удаленный кадр.
[00167] Раскрытые здесь системы и способы можно реализовать в декодере 1208. В некоторых конфигурациях никакие дополнительные биты не требуется передавать от кодера на декодер 1208 для обеспечения обнаружение и подавления потенциальной нестабильности кадра. Кроме того, раскрытые здесь системы и способы не снижают качество в условиях чистого канала.
[00168] На фиг. 17 показан график, демонстрирующий пример синтезированного речевого сигнала. По горизонтальной оси графика отложено время 1701 (например, в секундах), и по вертикальной оси графика отложена амплитуда 1733 (например, число, значение). Амплитуда 1733 может быть числом, выраженным в битах. В некоторых конфигурациях 16 битов можно использовать для представления выборок речевого сигнала, значение которого заключено в пределах от -32768 до 32767, что соответствует диапазону (например, значению от -1 до +1 в формате плавающей запятой). Следует отметить, что амплитуду 1733 можно представлять по-разному в зависимости от реализации. В некоторых примерах значение амплитуды 1733 может соответствовать электромагнитному сигналу, характеризующемуся напряжением (в вольтах) и/или током (в амперах).
[00169] Раскрытые здесь системы и способы можно реализовать для генерации синтезированного речевого сигнала, показанного на фиг. 17. Другими словами, на фиг. 17 показан график, демонстрирующий один пример синтезированного речевого сигнала, полученного с применением раскрытых здесь систем и способов. Соответствующая форма волны без применения раскрытых здесь систем и способов, показана на фиг. 11. Как можно видеть, раскрытые здесь системы и способы обеспечивают подавление 1777 артефактов. Другими словами, артефакты 1135, проиллюстрированные на фиг. 11, подавляются или удаляются путем применения раскрытых здесь систем и способов, как проиллюстрировано в фиг. 17.
[00170] На фиг. 18 показана блок-схема, демонстрирующая одну конфигурацию устройства 1837 беспроводной связи, в котором можно реализовать системы и способы для подавления потенциальной нестабильности кадра. Устройство 1837 беспроводной связи, проиллюстрированное на фиг. 18, может быть примером по меньшей мере одного из описанных здесь электронных устройств. Устройство 1837 беспроводной связи может включать в себя процессор 1893 приложений. Процессор 1893 приложений, в целом, обрабатывает инструкции (например, выполняет программы) для осуществления функций на устройстве 1837 беспроводной связи. Процессор 1893 приложений может быть подключен к аудиокодеру/декодеру (кодеку) 1891.
[00171] Аудиокодек 1891 можно использовать для кодирования и/или декодирования аудиосигналов. Аудиокодек 1891 может быть подключен к по меньшей мере одному громкоговорителю 1883, наушнику 1885, выходному гнезду 1887 и/или по меньшей мере одному микрофону 1889. Громкоговорители 1883 могут включать в себя один или более электроакустических преобразователей, которые преобразуют электрические или электронные сигналы в акустические сигналы. Например, громкоговорители 1883 можно использовать для воспроизведения музыки или вывода разговора, осуществляемого в режиме громкой связи, и т.д. Наушник 1885 может быть еще одним громкоговорителем или электроакустическим преобразователем, который можно использовать для вывода акустических сигналов (например, речевых сигналов) пользователю. Например, наушник 1885 можно использовать таким образом, чтобы только пользователь мог отчетливо слышать акустический сигнал. Выходное гнездо 1887 можно использовать для подключения других устройств к устройству 1837 беспроводной связи для вывода аудиосигнала, например головных телефонов. Громкоговорители 1883, наушник 1885 и/или выходное гнездо 1887 в целом можно использовать для вывода аудиосигнала из аудиокодека 1891. По меньшей мере один микрофон 1889 может быть акустоэлектрическим преобразователем, который преобразует акустический сигнал (например, голос пользователя) в электрические или электронные сигналы, которые поступают на аудиокодек 1891.
[00172] Аудиокодек 1891 (например, декодер) может включать в себя модуль 1861 определения параметра кадра, модуль 1869 определения стабильности и/или модуль 1865 замещения весового значения. Модуль 1861 определения параметра кадра, модуль 1869 определения стабильности и/или модуль 1865 замещения весового значения могут функционировать, как описано выше в связи с фиг. 12.
[00173] Процессор 1893 приложений также может быть подключен к схеме 1804 управления мощностью. Одним примером схемы 1804 управления мощностью является интегральная схема управление мощностью (PMIC), которую можно использовать для управления потреблением электрической мощности устройством 1837 беспроводной связи. Схема 1804 управления мощностью может быть подключена к батарее 1806. Батарея 1806 в целом может обеспечивать устройство 1837 беспроводной связи электрической мощностью. Например, батарея 1806 и/или схема 1804 управления мощностью может быть подключена к по меньшей мере одному из элементов, включенных в устройство 1837 беспроводной связи.
[00174] Процессор 1893 приложений может быть подключен к по меньшей мере одному устройству 1808 ввода для приема ввода. Примеры устройств 1808 ввода включают в себя инфракрасные датчики, датчики изображения, акселерометры, тактильные датчики, кнопочные панели и т.д. Устройства 1808 ввода могут допускать взаимодействие пользователя с устройством 1837 беспроводной связи. Процессор 1893 приложений также может быть подключен к одному или более устройств 1810 вывода. Примеры устройств 1810 вывода включают в себя принтеры, проекторы, экраны, тактильные устройства и т.д. Устройства 1810 вывода могут позволять устройству 1837 беспроводной связи формировать выходной сигнал, который может восприниматься пользователем.
[00175] Процессор 1893 приложений может быть подключен к памяти 1812 приложений. Памятью 1812 приложений может быть любое электронное устройство, способное хранить электронную информацию. Примеры памяти 1812 приложений включают в себя синхронную динамическую оперативную память с двойной скоростью передачи данных (DDRAM), синхронную динамическую оперативную память (SDRAM), флэш-память и т.д. Память 1812 приложений может обеспечивать хранилище для процессора 1893 приложений. Например, память 1812 приложений может сохранять данные и/или инструкции для функционирования программ, которые выполняются на процессоре 1893 приложений.
[00176] Процессор 1893 приложений может быть подключен к контроллеру 1814 дисплея, который, в свою очередь, может быть подключен к дисплею 1816. Контроллер 1814 дисплея может представлять собой аппаратный блок, который используется для генерации изображений на дисплее 1816. Например, контроллер 1814 дисплея может переводить инструкции и/или данные из процессора 1893 приложений в изображения, которые могут представляться на дисплее 1816. Примеры дисплея 1816 включают в себя жидкокристаллические отображающие панели (LCD), светодиодные (LED) панели, дисплеи на основе электронно-лучевой трубки (CRT), плазменные дисплеи и т.д.
[00177] Процессор 1893 приложений может быть подключен к процессору 1895 основной полосы. Процессор 1895 основной полосы, в целом, обрабатывает сигналы связи. Например, процессор 1895 основной полосы может демодулировать и/или декодировать принятые сигналы. Дополнительно или альтернативно, процессор 1895 основной полосы может кодировать и/или модулировать сигналы при подготовке к передаче.
[00178] Процессор 1895 основной полосы может быть подключен к памяти 1818 основной полосы. Памятью 1818 основной полосы может быть любое электронное устройство, способное хранить электронную информацию, например, SDRAM, DDRAM, флэш-память и т.д. Процессор 1895 основной полосы может считывать информацию (например, инструкции и/или данные) из и/или записывать информацию в память 1818 основной полосы. Дополнительно или альтернативно, процессор 1895 основной полосы может использовать инструкции и/или данные, хранящиеся в памяти 1818 основной полосы, для осуществления операций связи.
[00179] Процессор 1895 основной полосы может быть подключен к радиочастотному (RF) приемопередатчику 1897. RF приемопередатчик 1897 может быть подключен к усилителю 1899 мощности и одной или более антеннами 1802. RF приемопередатчик 1897 может передавать и/или принимать радиочастотный сигналы. Например, RF приемопередатчик 1897 может передавать RF сигнал с использованием усилителя 1899 мощности и по меньшей мере одну антенну 1802. RF приемопередатчик 1897 также может принимать RF сигналы с использованием одной или более антенн 1802. Следует отметить, что один или более из элементов, включенных в устройство 1837 беспроводной связи, может быть подключено к общей шине, которая может обеспечивать связь между элементами.
[00180] Фиг. 19 демонстрирует различные компоненты, которые можно использовать в электронном устройстве 1937. Проиллюстрированные компоненты могут располагаться в одной и той же физической структуре или в отдельных корпусах или структурах. Электронное устройство 1937, описанное в связи с фиг. 19, можно реализовать в соответствии с одним или более из описанных здесь электронных устройств. Электронное устройство 1937 включает в себя процессор 1926. Процессором 1926 может быть одно- или многокристальный микропроцессор общего назначения (например, ARM), микропроцессор специального назначения (например, цифровой сигнальный процессор (DSP)), микроконтроллер, программируемая вентильная матрица и т.д. Процессор 1926 может именоваться центральным процессором (CPU). Хотя в электронном устройстве 1937, представленном на фиг. 19, показан один единственный процессор 1926, в альтернативной конфигурации можно использовать комбинацию процессоров (например, ARM и DSP).
[00181] Электронное устройство 1937 также включает в себя память 1920, осуществляющую электронную связь с процессором 1926. Таким образом, процессор 1926 может считывать информацию из и/или записывать информацию в память 1920. Памятью 1920 может быть любой электронный компонент, способный хранить электронную информацию. Памятью 1920 может быть оперативная память (RAM), постоянная память (ROM), носители данных на основе магнитного диска, оптические носители данных, устройства флэш-памяти в RAM, встроенная память, объединенная с процессором, программируемая постоянная память (PROM), стираемая программируемая постоянная память (EPROM), электрически стираемая PROM (EEPROM), регистры и т.д., включая их комбинации.
[00182] В памяти 1920 могут храниться данные 1924a и инструкции 1922a. Инструкции 1922a могут включать в себя одну или более программ, процедур, подпроцедур, функций, операций и т.д. Инструкции 1922a могут включать в себя единичный компьютерно-считываемый оператор или много компьютерно-считываемых операторов. Инструкции 1922a могут выполняться процессором 1926 для реализации один или более из вышеописанных способов, функций и процедур. Выполнение инструкций 1922a может предусматривать использование данных 1924a, хранящихся в памяти 1920. Фиг. 19 демонстрирует некоторые инструкции 1922b и данные 1924b, загружаемые в процессор 1926 (которые могут происходить из инструкций 1922a и данных 1924a).
[00183] Электронное устройство 1937 также может включать в себя один или более интерфейсов 1930 связи для осуществления связи с другими электронными устройствами. Интерфейсы 1930 связи могут базироваться на технологии проводной связи, технологии беспроводной связи или обеих. Примеры разных типов интерфейсов 1930 связи включают в себя последовательный порт, параллельный порт, универсальную последовательную шину (USB), адаптер Ethernet, интерфейс шины IEEE 1394, интерфейс шины интерфейса малых компьютерных систем (SCSI), инфракрасный (IR) коммуникационный порт, адаптер беспроводной связи Bluetooth и т.д.
[00184] Электронное устройство 1937 также может включать в себя одно или более устройств 1932 ввода и одно или более устройств 1936 вывода. Примеры разных видов устройств 1932 ввода включают в себя клавиатуру, мышь, микрофон, устройство дистанционного управления, кнопку, джойстик, шаровой манипулятор, сенсорную панель, световое перо и т.д. Например, электронное устройство 1937 может включать в себя один или более микрофонов 1934 для захвата акустических сигналов. В одной конфигурации микрофоном 1934 может быть преобразователь, который преобразует акустические сигналы (например, голос, речевой сигнал) в электрические или электронные сигналы. Примеры разных видов устройств 1936 вывода включают в себя громкоговоритель, принтер и т.д. Например, электронное устройство 1937 может включать в себя один или более громкоговорителей 1938. В одной конфигурации громкоговорителем 1938 может быть преобразователь, который преобразует электрические или электронные сигналы в акустические сигналы. Одним конкретным типом устройства вывода, которое обычно включено в электронное устройство 1937, является устройство 1940 отображения. Устройства 1940 отображения, используемые с раскрытыми здесь конфигурациями, могут использовать любую подходящую технологию проекции изображения, например электронно-лучевую трубку (CRT), жидкокристаллический дисплей (LCD), светодиод (LED), газовую плазму, электролюминесценцию и т.п. Также может быть предусмотрен контроллер 1942 дисплея, для преобразования данных, хранящихся в памяти 1920, в текст, графику и/или движущиеся изображения (при необходимости), показанные на устройстве 1940 отображения.
[00185] Различные компоненты электронного устройства 1937 могут быть соединены друг с другом одной или более шинами, которые могут включать в себя шину питания, шину сигнала управления, шину сигнала состояния, шину данных и т.д. Для простоты различные шины проиллюстрированы на фиг. 19 в виде шинной системы 1928. Следует отметить, что фиг. 19 демонстрирует только одну возможную конфигурацию электронного устройства 1937. Можно использовать различные другие архитектуры и компоненты.
[00186] В вышеприведенном описании ссылочные позиции иногда используются в связи с различными терминами. Когда термин используется в связи со ссылочным номером, это может иметь смысл в отношении конкретного элемента, показанного на одной или более из фигур. Когда термин используется без ссылочного номера, это может иметь смысл в целом в отношении термина без ограничения какой-либо конкретной фигурой.
[00187] Термин “определение” охватывает самые разнообразные действия, и поэтому “определение” может включать в себя вычисление, расчет, обработку, получение, исследование, поиск (например, поиск в таблице, базу данных или другую структуру данных), установление и пр. Также “определение” может включать в себя прием (например, прием информации), осуществление доступа (например, осуществление доступа к данным в памяти) и пр. Также “определение” может включать в себя разрешение, выделение, выбор, установление и пр.
[00188] Выражение “на основании” не означает “на основании только…”, если явно не указано обратное. Другими словами, выражение “на основании” описывает как “на основании только…”, так и “на основании, по меньшей мере…”.
[00189] Следует отметить, что один или более из признаков, функций, процедур, компонентов, элементов, структур и т.д., описанных в связи с любой из описанных здесь конфигураций, можно объединять с одной или более из функций, процедур, компонентов, элементов, структур и т.д., описанных в связи с любой из других описанных здесь конфигураций, когда совместимо. Другими словами, любое совместимое сочетание описанных здесь функций, процедур, компонентов, элементов и т.д. можно реализовать в соответствии с раскрытыми здесь системами и способами.

[00190] Описанные здесь функции могут храниться в виде одной или более инструкций на процессорно-считываемом или компьютерно-считываемом носителе. Термин “компьютерно-считываемый носитель” означает любой доступный носитель, к которому может обращаться компьютер или процессор. В порядке примера, но не ограничения, такой носитель может содержать RAM, ROM, EEPROM, флэш-память, CD-ROM или другое хранилище на основе оптического диска, хранилище на основе магнитного диска или другие магнитные запоминающие устройства или любой другой носитель, который можно использовать для хранения желаемого программного кода в форме инструкций или структур данных и к которым может обращаться компьютер. Используемый здесь термин "диск", включает в себя компакт-диск (CD), лазерный диск, оптический диск, цифровой универсальный диск (DVD), флоппи-диск и диск Blu-ray, где диски обычно воспроизводят данные магнитными средствами, тогда как диски воспроизводят данные оптическими средствами с помощью лазеров. Следует отметить, что компьютерно-считываемый носитель может быть вещественным и нетранзиторным. Термин “компьютерный программный продукт” означает вычислительное устройство или процессор совместно с кодом или инструкциями (например, “программой”), которые могут выполняться, обрабатываться или вычисляться вычислительным устройством или процессором. Используемый здесь термин “код” может относиться к программному обеспечению, инструкциям, коду или данным, исполняемым вычислительным устройством или процессором.
[00191] Программное обеспечение или инструкции также могут передаваться по среде передачи. Например, если программное обеспечение передается с веб-сайта, сервера или другого удаленного источника с использованием коаксиального кабеля, оптоволоконного кабеля, витой пары, цифровой абонентской линии (DSL) или беспроводных технологий, например инфракрасной, радио и микроволновой, то коаксиальный кабель, оптоволоконный кабель, витая пара, DSL или беспроводные технологии, например инфракрасная, радио и микроволновая, включены в определение среды передачи.
[00192] Раскрытые здесь способы содержат один или более этапов или действий для осуществления описанного способа. Этапы и/или действия способа могут меняться местами друг с другом, не выходя за рамки объема формулы изобретения. Другими словами, если для надлежащего выполнения описанного способа не требуется конкретный порядок этапов или действий, порядок и/или использование конкретных этапов и/или действий можно модифицировать, не выходя за рамки объема формулы изобретения.
[00193] Следует понимать, что формула изобретения не ограничиваются конкретными проиллюстрированными выше конфигурацией и компонентами. Можно предложить различные модификации, изменения и изменения в компоновке, эксплуатации и деталях описанных здесь систем, способов и устройства, не выходя за рамки объема формулы изобретения.