Системы и способы затенения первого пакета, соответствующего первой битовой скорости, во втором пакете, соответствующем второй битовой скорости

Иллюстрации

Показать все

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

Реферат

Область техники, к которой относится изобретение

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

Предшествующий уровень техники

Передача речи посредством цифровых технологий стала широко распространенной, в частности, в областях удаленной телефонной связи и цифровой радиотелефонии. Это, в свою очередь, породило интерес в определении наименьшего количества информации, которое может быть послано по каналу с поддержкой удовлетворительного качества восстановленной речи. Аппаратам для компрессии речи находят применение во многих областях телекоммуникации. Примером телекоммуникации является радиосвязь. Область радиосвязи включает в себя множество применений, таких как, например, радиотелефоны, пейджеры, средства местной радиосвязи, средства радиотелефонной связи, такие как сотовые и переносные системы связи (PCS), системы телефонной связи, мобильные системы телефонной связи, использующие Интернет-протокол (IP), и системы спутниковой связи. В частности, важной областью применения является радиотелефонная связь для подвижных абонентов.

Краткое описание чертежей

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

Фиг.2 изображает блок-схему, иллюстрирующую одну конфигурацию среды передачи сигналов.

Фиг.3 изображает блок-схему, иллюстрирующую одну конфигурацию многорежимного кодера, взаимодействующего с многорежимным декодером.

Фиг.4 изображает блок-схему, иллюстрирующую одну конфигурацию функции межсетевого обмена (IWF).

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

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

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

Фиг.7A изображает диаграмму, иллюстрирующую кадр вокализированной речи, разделенный на подкадры.

Фиг.7B изображает диаграмму, иллюстрирующую кадр невокализированной речи, разделенный на подкадры.

Фиг.7C изображает диаграмму, иллюстрирующую кадр переходной речи, разделенный на подкадры.

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

Фиг.9 изображает таблицу, иллюстрирующую количество битов, выделенных пакетам различных типов.

Фиг.10 изображает блок-схему, иллюстрирующую одну конфигурацию конвертации полноскоростного пакета РРР в специальный полускоростной пакет PPP.

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

Подробное описание

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

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

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

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

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

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

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

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

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

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

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

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

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

Функция межсетевого обмена (IWF) на базовой станции может «затенять» полноскоростные пакеты (состоящие из 171 бита) в полускоростных пакетах (состоящих из 80 битов) перед передачей пакета по каналу связи. Затенение может быть реализовано для пакетов различных типов, включающих в себя полноскоростные пакеты прототипного периода основного тона (PPP), и полноскоростные пакеты с линейным предсказанием с кодовым возбуждением (CELP).

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

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

Фиг.1 иллюстрирует систему 100 радиотелефонной связи с множественным доступом с кодовым разделением каналов (CDMA), которая может включать в себя множество мобильных абонентских модулей 102 или мобильных станций 102, множество базовых станций 104, контроллер 106 базовой станции (BSC) и мобильный коммутационный центр 108 (MSC). Центр 108 MSC может быть сконфигурирован с возможностью взаимодействия с обычной коммутируемой телефонной сетью 110 общего пользования (PSTN). Центр 108 MSC также может быть сконфигурирован с возможностью взаимодействия с контроллером 106 BSC. Система 100 может включать в себя несколько контроллеров 106 BSC. Каждая базовая станция 104 может включать в себя, по меньшей мере, один сектор (не показан), причем каждый сектор может иметь всенаправленную антенну или антенну, наведенную в конкретном радиальном направлении от базовых станций 104. Альтернативно, каждый сектор может включать в себя две антенны для разнесенного приема. Каждая базовая станция 104 может быть сконфигурирована с возможностью поддержки множества назначений частот. Пересечение сектора и назначения частоты может называться каналом CDMA. Мобильные абонентские модули 102 могут включать в себя сотовую или портативную систему радиотелефонной связи (PCS).

В процессе работы сотовой системы 100 радиотелефонной связи базовые станции 104 могут принимать наборы сигналов обратной линии связи от наборов мобильных станций 102. Мобильные станции 102 могут осуществлять телефонные вызовы или связь другого типа. Каждый сигнал обратной линии связи, принятый посредством конкретной базовой станции 104, может быть обработан на этой базовой станции 104. Конечные данные могут быть пересланы на контроллер 106 BSC. Контроллер 106 BSC может выполнить распределение ресурсов вызова и функциональных возможностей управления мобильностью, включающих в себя взаимодействие мягкой передачи обслуживания между базовыми станциями 104. Контроллер 106 BSC также может маршрутизировать принятые данные центру 108 MSC, который оказывает дополнительные услуги маршрутизации для взаимодействия с сетью 110 PSTN. Подобным образом сеть 18 PSTN может взаимодействовать с центром 108 MSC, а центр 108 MSC может взаимодействовать с контроллером 106 BSC, который в свою очередь может управлять базовыми станциями 104 для передачи наборов сигналов прямой линии связи группам мобильных станций 102.

Фиг.2 изображает среду 200 передачи сигналов, включающую в себя кодер 202, декодер 204, среду 206 передачи и функцию 208 межсетевого обмена (IWF). Кодер 202 может быть реализован в мобильной станции 102 или же в базовой станции 104. Функция 208 IWF может быть реализована в базовой станции 104. Декодер 204 может быть реализован в базовой станции 104 или же в мобильной станции 102. Кодер 202 может кодировать речевой сигнал s(n) 210, формируя кодированный речевой сигнал 212 senc(n). Кодированный речевой сигнал 212 может быть конвертирован в специальный кодированный пакет 214 spenc(n) для передачи через среду 206 передачи на декодер 204. Декодер 204 может распаковать пакет 214 spenc(n) и декодировать сигнал 212 senc(n), таким образом формируя синтезированный речевой сигнал 216 s(n).

Используемый в настоящем документе термин «кодирование», в целом, может применяться к способам, относящимся как к кодированию, так и к декодированию. В целом системы, устройства и способы кодирования стремятся минимизировать количество битов, передаваемых через среду 206 передачи (то есть минимизировать полосу частот сигнала 214 spenc(n)), сохраняя поддержку приемлемого воспроизведения речи (то есть сигнал 210 s(n) ~ сигналу 216 s(n)). Устройство может являться мобильным телефоном, личным цифровым ассистентом (PDA), портативным компьютером, цифровой камерой, музыкальным плейером, игровым аппаратом, базовой станцией или любым другим аппаратом с процессором. Состав кодированного речевого сигнала 212 может меняться согласно конкретному режиму кодирования речи, используемому посредством кодера 202. Различные режимы кодирования описаны ниже.

Нижеописанные компоненты кодера 202, декодера 204 и функции 208 IWF 208 могут быть реализованы в качестве электронных аппаратных средств, в качестве программного обеспечения или с использованием их комбинации. Эти компоненты описываются ниже в контексте своих функциональных возможностей. Вариант реализации функциональных возможности, а именно в качестве аппаратных средств или в качестве программного обеспечения, может зависеть от конкретной области применения, а также от конструктивных ограничений, наложенных на всю систему. Среда 206 передачи может представлять собой множество различных информационных носителей, включающих в себя, в числе прочего, наземную линию связи, линию связи между базовой станцией и спутником, линию радиосвязи между сотовым телефоном и базовой станцией, или линию радиосвязи между сотовым телефоном и спутником.

Каждая взаимодействующая сторона может как передавать, так и принимать данные. Каждая сторона может использовать кодер 202 и декодер 204. Однако среда 200 передачи сигналов будет описана ниже в качестве включающей в себя кодер 202 на одном конце среды 206 передачи и декодер 204 - на другом конце.

Для целей этого описания сигнал 210 s(n) может включать в себя цифровой речевой сигнал, полученный в течение обычного сеанса связи, включающего в себя различные вокальные звуки и периоды тишины. Речевой сигнал 210 s(n) может быть разделен на кадры, а каждый кадр может быть дополнительно разделен на подкадры. Эти произвольно выбранные границы кадра/подкадра могут быть использованы после выполнения некоторой обработки кадров. Операции, описанные в качестве выполняемых применительно к кадрам, также могут быть выполнены применительно к подкадрам, в этом смысле в настоящем документе кадр и подкадр используются взаимозаменяемо. Однако сигнал 210 s(n) может не разделяться на кадры/подкадры, если выполняется непрерывная (поточная) обработка вместо обработки кадров. В силу этого, нижеописанные способы могут быть расширены до непрерывной (поточной) обработки.

Сигнал 210 s(n) может быть дискретизирован в цифровой форме на частоте 8 килогерц (кГц). Каждый кадр может включать в себя 20 миллисекунд (мсек) данных или 160 отсчетов при частоте дискретизации 8 кГц. Каждый подкадр может включать в себя 53 или 54 отсчета данных. Несмотря на то, что эти параметры могут являться предназначенными для кодирования речи, они являются простыми примерами, а также могут быть использованы другие подходящие альтернативные параметры.

Фиг.3 изображает блок-схему, иллюстрирующую одну конфигурацию многорежимного кодера 302, взаимодействующего с многорежимным декодером 304 по каналу 306 связи. Канал 306 связи может включать в себя радиочастотный (RF) интерфейс. Кодер 302 может включать в себя соответствующий декодер (не показан). Кодер 302 и его соответствующий декодер могут сформировать первый речевой кодер. Декодер 304 может включать в себя соответствующий кодер (не показан). Декодер 304 и его соответствующий кодер могут сформировать второй речевой кодер.

Кодер 302 может включать в себя модуль 318 вычисления начальных параметров, модуль 320 определения скорости, модуль 322 классификации режимов, множество режимов (средств) 324, 326, 328 кодирования и модуль 330 форматирования пакетов. Количество режимов 324, 326, 328 кодирования изображено с помощью величины N, которая может отображать любое количество режимов 324, 326, 328 кодирования. Для простоты три режима 324, 326, 328 кодирования изображены пунктиром, указывающим на существование других режимов кодирования.

Декодер 304 может включать в себя модуль 332 распаковки (разбора) пакетов, множество режимов 334, 336, 338 декодирования и постфильтр 340. Количество режимов 334, 336, 338 декодирования изображено с помощью величины N, которая может отображать любое количество режимов 334, 336, 338 декодирования. Для простоты три режима 334, 336, 338 декодирования изображены пунктиром, указывающим на существование других режимов декодирования.

Речевой сигнал 310 s(n) может быть подан на модуль 318 вычисления начальных параметров. Речевой сигнал 310 может быть разделен на группы отсчетов, называемые кадрами. Величина n может указывать номер кадра или номер отсчета в кадре. В альтернативной конфигурации вместо речевого сигнала 310 может быть использован сигнал необнаруженных ошибок линейного предсказания (LP). Сигнал необнаруженных ошибок линейного предсказания (LP) может быть использован посредством речевых кодеров, таких как кодер с линейным предсказанием с кодовым возбуждением (CELP).

Модуль 318 вычисления начальных параметров может получить различные параметры на основе текущего кадра. В одном аспекте эти параметры включают в себя, по меньшей мере, один из следующих параметров: коэффициенты фильтра кодирования с линейным предсказанием (LPC), коэффициенты при гармониках с частотой (LSP), функции нормализованной автокорреляции (NACF), задержка открытой петли, частоты переходов через нуль, энергия полосы и остаточный сигнал форманта.

Модуль 318 вычисления начальных параметров может быть соединен с модулем 322 классификации режимов. Модуль 322 классификации режимов может выполнять динамическое переключение режимов 324, 326, 328 кодирования. Модуль 318 вычисления начальных параметров может передать параметры модулю 322 классификации режимов. Модуль 322 классификации режимов может быть соединен с модулем 320 определения скорости. Модуль 320 определения скорости может принять сигнал управления скоростью. Сигнал управления скоростью может побудить кодер 302 к выполнению кодирования речевого сигнала 310 на конкретной скорости. В одном аспекте конкретная скорость включает в себя полную скорость, которая может указывать на то, что речевой сигнал 310 будет кодироваться с использованием ста семидесяти одного бита. В другом примере конкретная скорость включает в себя половинную скорость, которая может указывать на то, что речевой сигнал 310 будет кодироваться с использованием восьмидесяти битов. В дополнительном примере конкретная скорость включает в себя одну восьмую от скорости, которая может указывать на то, что речевой сигнал 310 будет кодироваться с использованием шестнадцати битов.

Как было заявлено ранее, модуль 322 классификации режимов может быть соединен с динамическим переключателем режимов 324, 326, 328 кодирования на основе последовательности кадров для выбора наиболее подходящего режима 324, 326, 328 кодирования для текущего кадра. Модуль 322 классификации режимов может выбрать конкретный режим 324, 326, 328 кодирования для текущего кадра посредством сравнения параметров с предварительно определенными пороговыми и/или предельными значениями. Кроме того, модуль 322 классификации режимов может выбрать конкретный режим 324, 326, 328 кодирования на основе сигнала управления скоростью, принятого от модуля 320 определения скорости. Например, режим А 324 кодирования может кодировать речевой сигнал 310 с использованием ста семидесяти одного бита, между тем, как режим В 326 кодирования может кодировать речевой сигнал 310 с использованием восьмидесяти битов.

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

Вокализированная речь может включать в себя речь, которая показывает относительно высокую степень периодичности. Сегмент вокализированной речи 702 изображен на диаграмме, иллюстрированной на фиг.7A. Как иллюстрировано, период основного тона может являться компонентом речевого кадра, который может быть использован для анализа и восстановления информационного содержания кадра. Невокализированная речь может включать в себя согласные звуки. Сегмент невокализированной речи 704 изображен на диаграмме, иллюстрированной на фиг.7B. Переходные речевые кадры могут включать в себя переходы между вокализированной и невокализированной речью. Сегмент переходной речи 706 изображен на диаграмме, иллюстрированной на фиг.7С. Кадры, которые не были классифицированы ни в качестве вокализированной, ни в качестве невокализированной речи, могут быть классифицированы в качестве переходной речи. Диаграммы, иллюстрированные на фиг.7A, 7B и 7С, будут более подробно обсуждаться ниже.

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

Модуль 322 классификации режимов может выбрать режим 324, 326, 328 кодирования для текущего кадра на основе классификации кадра. Различные режимы 324, 326 328 кодирования могут быть связаны параллельно. Один или несколько режимов 324, 326, 328 кодирования могут быть использованы в любой момент времени. В одной конфигурации, согласно классификации текущего кадра, выбирается один режим 324, 326, 328 кодирования.

Различные способы кодирования 324, 326, 328 могут работать согласно различным битовым скоростям кодирования, различным схемам кодирования или различным комбинациям битовой скорости кодирования и схемы кодирования. Как было заявлено ранее, различные используемые скорости кодирования могут являться полной битовой скоростью, половинной битовой скоростью, четвертной битовой скоростью и/или одной восьмой от скорости. Различные используемые схемы кодирования могут являться кодированием CELP, кодированием с прототипным периодом основного тона (PPP) (или кодирование с интерполяцией сигнала (WI)) и/или кодирование с линейным предсказанием с шумовым возбуждением (NELP). Следовательно, например, конкретный режим 324, 326, 328 кодирования может являться кодированием CELP на полной скорости, другой режим 324, 326, 328 кодирования может являться кодированием CELP на половинной скорости, еще один режим 324, 326, 328 кодирования может являться кодированием РРР на четверной скорости и еще один режим 324, 326, 328 кодирования может являться кодированием NELP.

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

В соответствии с режимом 324, 326, 328 кодирования NELP фильтрованный псевдослучайный шумовой сигнал может быть использован для моделирования остаточного сигнала LP. Режим 324, 326, 328 кодирования NELP может являться относительно простой технологией, при которой достигается низкая битовая скорость. Режим 324, 326, 328 кодирования NELP может быть использован для кодирования кадров, классифицированных в качестве невокализированной речи.

В соответствии с режимом 324 326, 328 кодирования PPP в пределах каждого кадра может быть закодировано поднабор периодов основного тона. Оставшиеся периоды речевого сигнала могут быть восстановлены посредством интерполяции между этими прототипнами периодами. При реализации кодирования PPP во временной области может быть вычислен первый набор параметров, которые описывают способ изменения предыдущего прототипного периода для аппроксимации текущего прототипного периода. Может быть выбран один или несколько кодовых векторов, которые при суммировании аппроксимируют разность между текущим прототипным периодом и измененным предыдущим прототипным периодом. Второй набор параметров описывает эти выбранные кодовые векторы. При реализации кодирования PPP в частотной области может быть вычислен набор параметров для описания амплитуды и фазы спектра прототипа. В соответствии с реализацией кодирования PPP декодер 304 может синтезировать выходной речевой сигнал 316 посредством восстановления текущего прототипа на основе наборов параметров, описывающих амплитуду и фазу. Речевой сигнал может быть интерполирован в область между восстановленным прототипным периодом и предыдущим восстановленным прототипным периодом. Прототип может включать в себя часть текущего кадра, который будет линейно интерполирован с прототипами из предыдущих кадров, которые были также установлены в пределах кадра для восстановления речевого сигнала 310 или остаточного сигнала LP в декодере 304 (то есть предыдущий прототипный период используется в качестве предсказателя текущего прототипного периода).

Кодирование прототипного периода вместо целого речевого кадра может сократить скорость кодирования. Кадры, классифицированные в качестве вокализированной речи, могут быть успешно закодированы с использованием режима 324, 326, 328 кодирования PPP. Как иллюстрировано на фиг.7A, вокализированная речь может включать в себя медленно изменяемые во времени колебательные компоненты, которые используются режимом 324, 326, 328 кодирования PPP. Посредством использования колебаний вокализированной речи режим 324, 326, 328 кодирования РРР может достигнуть битовой скорости, меньшей по сравнению с режимом 324, 326, 328 кодирования CELP.

Выбранный режим 324, 326, 328 кодирования может быть связан с модулем 330 форматирования пакетов. Выбранный режим 324, 326, 328 кодирования может кодировать или квантовать текущий кадр, а также предоставлять квантованные параметры 312 кадра модулю 330 форматирования пакетов. Модуль 330 форматирования пакетов может собрать квантованные параметры 312 кадра в отформатированный пакет 313. Модуль 330 форматирования пакетов может быть связан с функцией 308 IWF. Модуль 330 форматирования пакетов может предоставить отформатированный пакет 313 функции 308 IWF. Функция 308 IWF может конвертировать отформатированный пакет 313 в специальный пакет 314. В одном примере отформатированный пакет 313 включает в себя полноскоростной пакет, кодированный посредством режимов 324, 326, 328 кодирования CELP, PPP или NELP. Функция 308 IWF может конвертировать полноскоростной отформатированный пакет 313 в специальный полускоростной пакет 314. Другими словами, отформатированный полноскоростной пакет 313 (171 бит) может быть конвертирован в полускоростной пакет, который включает в себя 80 битов. Полускоростной пакет не должен включать себя точно половину количества битов полноскоростного пакета. Функция 308 IWF может передать специальный полускоростной пакет 314 на передатчик (не показан), и специальный пакет 314 может быть конвертирован в аналоговый формат, модулирован и передан по каналу 306 связи на приемник (также не показан), который принимает, демодулирует и оцифровывает специальный пакет 314, и передает пакет 314 на декодер 304.

В декодере 304 модуль 332 распаковки (разбора) пакетов принимает специальный пакет 314 от приемника. Модуль 332 распаковки пакетов может распаковать специальный пакет 314 и обнаружить, что специальный пакет 314 был конвертирован из полноскоростного пакета в полускоростной пакет. Модуль 332 может обнаружить, что специальный пакет был конвертирован посредством считывания специального идентификатора, включенного в специальный пакет. Модуль 332 распаковки пакетов также может быть соединен с динамическим переключателем режимов 334, 336, 338 декодирования на основе последовательности пакетов. Количество режимов 334, 336, 338 декодирования может равняться количеству режимов 324, 326, 328 кодирования. Каждый пронумерованный режим 324, 326, 328 кодирования может быть связан с соответствующим пронумерованным режимом 334, 336, 338 декодирования, сконфигурированным для использования одинаковой скорости и схемы кодирования.

Если модуль 332 распаковки пакетов обнаруживает пакет 314, то пакет 314 распаковывается и предоставляется подходящему режиму 334, 336, 338 декодирования. Если модуль 332 распаковки не обнаруживает пакет, то объявляется потеря пакета, и декодер со стиранием (не показан) может выполнить обработку по стиранию кадра. Параллельное множество режимов 334, 336, 338 декодирования может быть связано с постфильтром 340. Подходящий режим 334, 336, 338 декодирования может декодировать или деквантовать пакет 314 и передать информацию на постфильтр 340. Постфильтр 340 может восстановить или синтезировать речевой кадр выводя синтезированный речевой кадр 316 s(n).

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

В соответствии с режимом кодирования CELP могут быть переданы параметры основного тона, амплитуды, фазы, а также параметры коэффициента LSP. Индексы кодовой книги LSP передаются в связи с тем, что на декодере 304 может быть синтезирован остаточный сигнал LP. Кроме того, может быть передана разность между значением задержки основного тона для текущего кадра и значением задержки основного тона для предыдущего кадра.

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

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

Фиг.4 изображает блок-схему, иллюстрирующую один пример функции 408 IWF. Функция 408 IWF может конвертировать полноскоростной отформатированный пакет 413 в специальный полускоростной пакет 414. Функция 408 IWF может принять отформатированный пакет 413, а блок 450 анализа битовой скорости может определить количество битов, включенных в отформатированный пакет 413. В одном аспекте полноскоростной отформатированный пакет 413 включает в себя сто семьдесят один бит. Модуль 452 отбрасывания может исключить определенное количество битов, соответствующих квантованному параметру, включенному в отформатированный пакет 413. В одной конфигурации блок 456 определения битов определяет, какие биты отброшены из отформатированного пакета 413. Например, блок 456 определения битов может определить, что нужно отбросить биты, соответствующие параметру выравнивания полосы. Также модуль 452 отбрасывания может исключить количество битов, соответствующих этому параметру.

Функция 408 IWF также может включать в себя модуль 454 упаковки. Модуль 454 упаковки может упаковать оставшиеся биты, которые не были отброшены посредством модуля 452 отбра