Системы, способы и устройство для широкополосного кодирования и декодирования неактивных кадров
Иллюстрации
Показать всеИзобретение относится к обработке речевых сигналов. Раскрыты речевые кодеры и способы речевого кодирования для кодирования неактивных кадров на разных скоростях, а также устройство и способы для обработки кодированного речевого сигнала для вычисления декодированного кадра на основании описания спектральной огибающей по первому частотному диапазону и описания спектральной огибающей по второму частотному диапазону, причем описание для первого частотного диапазона базируется на информации из соответствующего кодированного кадра и описание для второго частотного диапазона базируется на информации из, по меньшей мере, одного предыдущего кодированного кадра. Вычисление декодированного кадра также может базироваться на описании временной информации для второго частотного диапазона, которое базируется на информации из, по меньшей мере, одного предыдущего кодированного кадра. Технический результат - повышение разборчивости речи. 9 н. и 65 з.п. ф-лы, 66 ил.
Реферат
Родственные Заявки
Данная заявка притязает на приоритет предварительной патентной заявки США №60/834,688, поданной 31 июля 2006 г. и озаглавленной "UPPER BAND DTX SCHEME".
Область техники
Это раскрытие относится к обработке речевых сигналов.
Уровень техники
Передача голоса посредством цифровых технологий получила широкое распространение, в частности, в телефонии дальнего действия, телефонии с коммутацией пакетов, например по протоколу Voice over IP (также именуемому VoIP, где IP обозначает Интернет-протокол), и в цифровой радиотелефонии, например сотовой телефонии. Вследствие такого распространения возникла потребность в сокращении объема информации, используемой для переноса речевой передачи по каналу связи, с одновременным поддержанием воспринимаемого качества реконструированной речи.
Устройства, которые способны сжимать речь путем извлечения параметров, которые относятся к модели генерации человеческой речи, называются "речевыми кодерами". Речевой кодер обычно включает в себя кодер и декодер. Кодер обычно делит входной речевой сигнал (цифровой сигнал, представляющий аудиоинформацию) на сегменты времени, именуемые "кадрами", анализирует каждый кадр для извлечения определенных нужных параметров и квантует параметры в кодированный кадр. Кодированные кадры передаются по каналу связи (т.е. проводному или беспроводному сетевому соединению) на приемник, который включает в себя декодер. Декодер принимает и обрабатывает кодированные кадры, деквантует их для создания параметров и воссоздает речевые кадры с использованием деквантованных параметров.
При типичном разговоре каждый собеседник молчит в течение около шестидесяти процентов времени. Речевые кодеры обычно способны отличать кадры речевого сигнала, которые содержат речь (“активные кадры”), от кадров речевого сигнала, которые содержат только тишину или фоновый шум (“неактивные кадры”). Такой кодер может быть способен использовать разные режимы кодирования и/или скорости для кодирования активных и неактивных кадров. Например, речевые кодеры обычно способны использовать меньше битов для кодирования неактивного кадра, чем для кодирования активного кадра. Речевой кодер может использовать более низкую битовую скорость для неактивных кадров для поддержки переноса речевого сигнала на более низкой средней битовой скорости с небольшой воспринимаемой потерей качества или без нее.
На фиг. 1 показан результат кодирования участка речевого сигнала, который включает в себя переходы между активными кадрами и неактивными кадрами. Каждый столбик на фигуре указывает соответствующий кадр, причем высота столбика указывает битовую скорость, с которой кодируется кадр, и по горизонтальной оси отложено время. В этом случае активные кадры кодируются на более высокой битовой скорости rH, и неактивные кадры кодируются на более низкой битовой скорости rL.
Примеры битовой скорости rH включают в себя 171 битов на кадр, восемьдесят битов на кадр и сорок битов на кадр; и примеры битовой скорости rL включают в себя шестнадцать битов на кадр. Применительно к системам сотовой телефонии (в особенности системам, отвечающим внутреннему стандарту (IS)-95, разработанному Telecommunications Industry Association, Арлингтон, Вашингтон, или аналогичному промышленному стандарту) эти четыре битовые скорости также называются “полной скоростью”, “половинной скоростью”, “четвертной скоростью” и “скоростью одна восьмая” соответственно. В одном конкретном примере результата, показанного на фиг. 1, скорость rH является полной скоростью, и скорость rL является скоростью одна восьмая.
Речевая связь, осуществляемая по общественной коммутируемой телефонной сети (PSTN), традиционно ограничивается по полосе частотным диапазоном 300-3400 килогерц (кГц). Более современные сети для речевой связи, например сети, которые используют сотовую телефонию и/или VoIP, могут не иметь подобных ограничений по полосе, и может быть желательно, чтобы устройство, использующее такие сети, имело возможность передавать и принимать речевые передачи, которые включают в себя широкополосный частотный диапазон. Например, может быть желательно, чтобы такое устройство поддерживало частотный диапазон аудиосигнала, который простирается вниз до 50 Гц и/или вверх до 7 или 8 кГц. Также может быть желательно, чтобы такое устройство поддерживало другие применения, например высококачественную аудио- или аудио/видеоконференцсвязь, предоставление мультимедийных услуг, например музыки и/или телевидения и т.д., которые могут иметь речевой аудиоконтент в пределах вне традиционных ограничений PSTN.
Расширение диапазона, поддерживаемого речевым кодером, на более высокие частоты может повышать разборчивость речи. Например, информация в речевом сигнале, которая различает фрикативные звуки, например, 'с' и 'ф' в основном сосредоточена на высоких частотах. Верхнеполосное расширение может также улучшать другие свойства декодированного речевого сигнала, например эффект присутствия. Например, даже вокализованный гласный звук может иметь спектральную энергию далеко за пределами частотного диапазона PSTN.
Хотя может быть желательно, чтобы речевой кодер поддерживал широкополосный частотный диапазон, также желательно ограничивать объем информации, используемой для переноса голосовой передачи по каналу связи. Речевой кодер может быть способен осуществлять, например, прерывистую передачу (DTX), чтобы описания передавались не для всех неактивных кадров речевого сигнала.
Сущность изобретения
Способ кодирования кадров речевого сигнала согласно конфигурации включает в себя этапы, на которых создают первый кодированный кадр, который базируется на первом кадре речевого сигнала и имеет длину p битов, где p является ненулевым положительным целым числом; создают второй кодированный кадр, который базируется на втором кадре речевого сигнала и имеет длину q битов, где q является ненулевым положительным целым числом, отличным от p; и создают третий кодированный кадр, который базируется на третьем кадре речевого сигнала и имеет длину r битов, где r является ненулевым положительным целым числом, меньшим q. Согласно этому способу, второй кадр является неактивным кадром, который следует за первым кадром в речевом сигнале, третий кадр является неактивным кадром, который следует за вторым кадром в речевом сигнале, и все кадры речевого сигнала между первым и третьим кадрами являются неактивными.
Способ кодирования кадров речевого сигнала согласно другой конфигурации включает в себя этап, на котором создают первый кодированный кадр, который базируется на первом кадре речевого сигнала и имеет длину q битов, где q является ненулевым положительным целым числом. Этот способ также включает в себя этап, на котором создают второй кодированный кадр, который базируется на втором кадре речевого сигнала и имеет длину r битов, где r является ненулевым положительным целым числом, меньшим q. Согласно этому способу, первый и второй кадры являются неактивными кадрами. Согласно этому способу, первый кодированный кадр включает в себя (A) описание спектральной огибающей по первому частотному диапазону, участка речевого сигнала, который включает в себя первый кадр, и (B) описание спектральной огибающей по второму частотному диапазону, отличному от первого частотного диапазона, участка речевого сигнала, который включает в себя первый кадр, и второй кодированный кадр (A) включает в себя описание спектральной огибающей по первому частотному диапазону участка речевого сигнала, который включает в себя второй кадр, и (B) не включает в себя описание спектральной огибающей по второму частотному диапазону. Здесь также в прямой форме предусмотрено и раскрыто средство для осуществления таких операций. Здесь также в прямой форме предусмотрен и раскрыт компьютерный программный продукт, включающий в себя компьютерно-считываемый носитель, причем носитель включает в себя код, предписывающий, по меньшей мере, одному компьютеру осуществлять такие операции. Здесь также в прямой форме предусмотрено и раскрыто устройство, включающее в себя детектор речевой активности, блок выбора схемы кодирования и речевой кодер, которые способны осуществлять такие операции.
Устройство для кодирования кадров речевого сигнала согласно другой конфигурации включает в себя средство для создания на основании первого кадра речевого сигнала первого кодированного кадра, который имеет длину p битов, где p является ненулевым положительным целым числом; средство для создания на основании второго кадра речевого сигнала второго кодированного кадра, который имеет длину q битов, где q является ненулевым положительным целым числом, отличным от p; и средство для создания на основании третьего кадра речевого сигнала третьего кодированного кадра, который имеет длину r битов, где r является ненулевым положительным целым числом, меньшим q. В этом устройстве второй кадр является неактивным кадром, который следует за первым кадром в речевом сигнале, третий кадр является неактивным кадром, который следует за вторым кадром в речевом сигнале, и все кадры речевого сигнала между первым и третьим кадрами являются неактивными.
Компьютерный программный продукт согласно другой конфигурации включает в себя компьютерно-считываемый носитель. Носитель включает в себя код, предписывающий, по меньшей мере, одному компьютеру создавать первый кодированный кадр, который базируется на первом кадре речевого сигнала и имеет длину p битов, где p является ненулевым положительным целым числом; код, предписывающий, по меньшей мере, одному компьютеру создавать второй кодированный кадр, который базируется на втором кадре речевого сигнала и имеет длину q битов, где q является ненулевым положительным целым числом, отличным от p; и код, предписывающий, по меньшей мере, одному компьютеру создавать третий кодированный кадр, который базируется на третьем кадре речевого сигнала и имеет длину r битов, где r является ненулевым положительным целым числом, меньшим q. В этом продукте второй кадр является неактивным кадром, который следует за первым кадром в речевом сигнале, третий кадр является неактивным кадром, который следует за вторым кадром в речевом сигнале, и все кадры речевого сигнала между первым и третьим кадрами являются неактивными.
Устройство для кодирования кадров речевого сигнала согласно другой конфигурации включает в себя детектор речевой активности, способный указывать для каждого из совокупности кадров речевого сигнала, является ли кадр активным или неактивным; блок выбора схемы кодирования и речевой кодер. Блок выбора схемы кодирования способен выбирать (A) в ответ на указание детектора речевой активности для первого кадра речевого сигнала первую схему кодирования; (B) для второго кадра, который является одним из упорядоченной последовательности неактивных кадров, который следует за первым кадром в речевом сигнале, и в ответ на указание детектора речевой активности, что второй кадр является неактивным, вторую схему кодирования и (C) для третьего кадра, который следует за вторым кадром в речевом сигнале и является другим из упорядоченной последовательности неактивных кадров, который следует за первым кадром в речевом сигнале, и в ответ на указание детектора речевой активности, что третий кадр является неактивным, третью схему кодирования. Речевой кодер способен создавать (D) согласно первой схеме кодирования первый кодированный кадр, который базируется на первом кадре и имеет длину p битов, где p является ненулевым положительным целым числом; (E) согласно второй схеме кодирования второй кодированный кадр, который базируется на втором кадре и имеет длину q битов, где q является ненулевым положительным целым числом, отличным от p; и (F) согласно третьей схеме кодирования третий кодированный кадр, который базируется на третьем кадре и имеет длину r битов, где r является ненулевым положительным целым числом, меньшим q.
Способ обработки кодированного речевого сигнала согласно конфигурации включает в себя этап, на котором на основании информации из первого кодированного кадра кодированного речевого сигнала получают описание спектральной огибающей первого кадра речевого сигнала по (A) первому частотному диапазону и (B) второму частотному диапазону, отличному от первого частотного диапазона. Этот способ также включает в себя этап, на котором на основании информации из второго кодированного кадра кодированного речевого сигнала получают описание спектральной огибающей второго кадра речевого сигнала по первому частотному диапазону. Этот способ также включает в себя этап, на котором на основании информации из первого кодированного кадра получают описание спектральной огибающей второго кадра по второму частотному диапазону.
Устройство для обработки кодированного речевого сигнала согласно другой конфигурации включает в себя средство для получения на основании информации из первого кодированного кадра кодированного речевого сигнала описания спектральной огибающей первого кадра речевого сигнала по (A) первому частотному диапазону и (B) второму частотному диапазону, отличному от первого частотного диапазона. Это устройство также включает в себя средство для получения на основании информации из второго кодированного кадра кодированного речевого сигнала описания спектральной огибающей второго кадра речевого сигнала по первому частотному диапазону. Это устройство также включает в себя средство для получения на основании информации из первого кодированного кадра описания спектральной огибающей второго кадра по второму частотному диапазону.
Компьютерный программный продукт согласно другой конфигурации включает в себя компьютерно-считываемый носитель. Носитель включает в себя код, предписывающий, по меньшей мере, одному компьютеру получать на основании информации из первого кодированного кадра кодированного речевого сигнала описание спектральной огибающей первого кадра речевого сигнала по (A) первому частотному диапазону и (B) второму частотному диапазону, отличному от первого частотного диапазона. Этот носитель также включает в себя код, предписывающий, по меньшей мере, одному компьютеру получать на основании информации из второго кодированного кадра кодированного речевого сигнала описание спектральной огибающей второго кадра речевого сигнала по первому частотному диапазону. Этот носитель также включает в себя код, предписывающий, по меньшей мере, одному компьютеру получать на основании информации из первого кодированного кадра описание спектральной огибающей второго кадра по второму частотному диапазону.
Устройство для обработки кодированного речевого сигнала согласно другой конфигурации включает в себя логику управления, способную генерировать сигнал управления, содержащий последовательность значений, которая базируется на индексах кодирования кодированных кадров кодированного речевого сигнала, причем каждое значение последовательности соответствует кодированному кадру кодированного речевого сигнала. Это устройство также включает в себя речевой декодер, способный вычислять в ответ на значение сигнала управления, имеющего первое состояние, декодированный кадр на основании описания спектральной огибающей по первому и второму частотным диапазонам, причем описание базируется на информации из соответствующего кодированного кадра. Речевой декодер также способен вычислять в ответ на значение сигнала управления, имеющего второе состояние, отличное от первого состояния, декодированный кадр на основании (1) описания спектральной огибающей по первому частотному диапазону, причем описание базируется на информации из соответствующего кодированного кадра, и (2) описание спектральной огибающей по второму частотному диапазону, причем описание базируется на информации из, по меньшей мере, одного кодированного кадра, который появляется в кодированном речевом сигнале до соответствующего кодированного кадра.
Краткое описание чертежей
На фиг. 1 показан результат кодирования участка речевого сигнала, который включает в себя переходы между активными кадрами и неактивными кадрами.
На фиг. 2 показан один пример дерева решений, которое речевой кодер или способ речевого кодирования может использовать для выбора битовой скорости.
На фиг. 3 показан результат кодирования участка речевого сигнала, который включает в себя последействие четырех кадров.
На фиг. 4A показан график трапецеидальной вырезающей функции, которую можно использовать для вычисления значений формы усиления.
На фиг. 4B показано применение вырезающей функции, показанной на фиг. 4A, к каждому из пяти подкадров кадра.
На фиг. 5A показан один пример схемы неперекрывающихся частотных диапазонов, которую может использовать кодер с расщепленным диапазоном для кодирования широкополосного речевого контента.
На фиг. 5B показан один пример схемы перекрывающихся частотных диапазонов, которую может использовать кодер с расщепленным диапазоном для кодирования широкополосного речевого контента.
На фиг. 6A, 6B, 7A, 7B, 8A и 8B показаны результаты кодирования перехода от активных кадров к неактивным кадрам в речевом сигнале с использованием нескольких разных подходов.
На фиг. 9 показана операция кодирования трех последовательных кадров речевого сигнала с использованием способа M100 согласно общей конфигурации.
На фиг. 10A, 10B, 11A, 11B, 12A и 12B показаны результаты кодирования переходов от активных кадров к неактивным кадрам с использованием разных реализаций способа M100.
На фиг. 13A показан результат кодирования последовательности кадров согласно другой реализации способа M100.
На фиг. 13B показан результат кодирования последовательности неактивных кадров с использованием дополнительной реализации способа M100.
На фиг. 14 показано применение реализации M110 способа M100.
На фиг. 15 показано применение реализации M120 способа M110.
На фиг. 16 показано применение реализации M130 способа M120.
На фиг. 17A показан результат кодирования перехода от активных кадров к неактивным кадрам с использованием реализации способа M130.
На фиг. 17B показан результат кодирования перехода от активных кадров к неактивным кадрам с использованием другой реализации способа M130.
Фиг. 18A - таблица, где показан один набор из трех разных схем кодирования, которые речевой кодер может использовать для получения результата, показанного на фиг. 17B.
На фиг. 18B показана операция кодирования двух последовательных кадров речевого сигнала с использованием способа M300 согласно общей конфигурации.
На фиг. 18C показано применение реализации M310 способа M300.
На фиг. 19A показана блок-схема устройства 100 согласно общей конфигурации.
На фиг. 19B показана блок-схема реализации 132 речевого кодера 130.
На фиг. 19C показана блок-схема реализации 142 калькулятора 140 описания спектральной огибающей.
На фиг. 20A показана логическая блок-схема тестов, которые могут осуществлять реализацию блока 120 выбора схемы кодирования.
На фиг. 20B показана диаграмма состояний, согласно которой может быть способна работать другая реализация блока 120 выбора схемы кодирования.
На фиг. 21A, 21B и 21C показаны диаграммы состояния, согласно которым могут быть способны работать дополнительные реализации блока 120 выбора схемы кодирования.
На фиг. 22A показана блок-схема реализации 134 речевого кодера 132.
На фиг. 22B показана блок-схема реализации 154 калькулятора 152 описания временной информации.
На фиг. 23A показана блок-схема реализации 102 устройства 100, которое способно кодировать широкополосный речевой сигнал согласно схеме кодирования с расщепленной полосой.
На фиг. 23B показана блок-схема реализации 138 речевого кодера 136.
На фиг. 24A показана блок-схема реализации 139 широкополосного речевого кодера 136.
На фиг. 24B показана блок-схема реализации 158 калькулятора временного описания 156.
На фиг. 25A показана логическая блок-схема способа M200 обработки кодированного речевого сигнала согласно общей конфигурации.
На фиг. 25B показана логическая блок-схема реализации M210 способа M200.
На фиг. 25C показана логическая блок-схема реализации M220 способа M210.
На фиг. 26 показано применение способа M200.
На фиг. 27A показана связь между способами M100 и M200.
На фиг. 27B показана связь между способами M300 и M200.
На фиг. 28 показано применение способа M210.
На фиг. 29 показано применение способа M220.
На фиг. 30A показан результат итерирования реализации задачи T230.
На фиг. 30B показан результат итерирования другой реализации задачи T230.
На фиг. 30C показан результат итерирования дополнительной реализации задачи T230.
На фиг. 31 показан участок диаграммы состояния для речевого декодера, способного осуществлять реализацию способа M200.
На фиг. 32A показана блок-схема устройства 200 для обработки кодированного речевого сигнала согласно общей конфигурации.
На фиг. 32B показана блок-схема реализации 202 устройства 200.
На фиг. 32C показана блок-схема реализации 204 устройства 200.
На фиг. 33A показана блок-схема реализации 232 первого модуля 230.
На фиг. 33B показана блок-схема реализации 272 декодера 270 описания спектральной огибающей.
На фиг. 34A показана блок-схема реализации 242 второго модуля 240.
На фиг. 34B показана блок-схема реализации 244 второго модуля 240.
На фиг. 34C показана блок-схема реализации 246 второго модуля 242.
На фиг. 35A показана диаграмма состояний, согласно которой может быть способна работать реализация логики управления 210.
На фиг. 35B показан результат одного примера объединения способа M100 с DTX.
На фигурах и в соответствующем описании одинаковые условные обозначения относятся к одинаковым или аналогичным элементам или сигналам.
Подробное описание
Описанные здесь конфигурации можно применять в системе широкополосного речевого кодирования для поддержки использования более низкой битовой скорости для неактивных кадров, чем для активных кадров, и/или для повышения воспринимаемого качества переносимого речевого сигнала. В прямой форме предусмотрено и, таким образом, раскрыто, что такие конфигурации можно адаптировать для использования в сетях с коммутацией пакетов (например, проводных и/или беспроводных сетях, предназначенных для переноса голосовых передач согласно таким протоколам, как VoIP) и/или с коммутацией каналов.
В отсутствие явного ограничения контекстом термин “вычисление” используется здесь для указания любого из его обычных значений, например расчета, оценивания, генерации и/или выбора из набора значений. В отсутствие явного ограничения контекстом термин "получение" используется для указания любого из его обычных значений, например вычисления, вывода, приема (например, c внешнего устройства) и/или извлечения (например, из матрицы элементов хранения). Когда термин “содержащий” используется в настоящем описании и формуле изобретения, он не исключает другие элементы или операции. Термин “A базируется на B” используется для указания любого из его обычных значений, включая случаи (i) “A базируется на, по меньшей мере, B” и (ii) “A равно B” (если применимо в конкретном контексте).
Если не указано обратное, любое раскрытие речевого кодера, имеющего конкретный признак, также в явном виде призвано раскрывать способ речевого кодирования, имеющий аналогичный признак (и наоборот), и любое раскрытие речевого кодера согласно конкретной конфигурации также в явном виде призвано раскрывать способ речевого кодирования согласно аналогичной конфигурации (и наоборот). Если не указано обратное, любое раскрытие речевого декодера, имеющего конкретный признак, также в явном виде призвано раскрывать способ речевого декодирования, имеющий аналогичный признак (и наоборот), и любое раскрытие речевого декодера согласно конкретной конфигурации также в явном виде призвано раскрывать способ речевого декодирования согласно аналогичной конфигурации (и наоборот).
Кадры речевого сигнала обычно достаточно коротки, из-за чего можно ожидать, что спектральная огибающая сигнала будет оставаться относительно стационарной на протяжении кадра. Типичная длина одного кадра составляет двадцать миллисекунд, хотя можно использовать любую длину кадра в соответствии с конкретным применением. Длина кадра в двадцать миллисекунд соответствует 140 выборкам на скорости дискретизации семь килогерц (кГц), 160 выборкам на скорости дискретизации восемь кГц и 320 выборкам на скорости дискретизации 16 кГц, хотя можно использовать любую скорость дискретизации в соответствии с конкретным применением. Другой пример скорости дискретизации, которую можно использовать для речевого кодирования, составляет 12,8 кГц, и другие примеры включают в себя другие скорости в пределах от 12,8 до 38,4 кГц.
Обычно все кадры имеют одну и ту же длину, и в описанных здесь конкретных примерах предполагается однородная длина кадра. Однако в прямой форме предусмотрено и, таким образом, раскрыто, что можно использовать неоднородные длины кадра. Например, реализации способа M100 и M200 также можно использовать в применениях, где используются разные длины кадра для активных и неактивных кадров и/или для вокализованных и невокализованных кадров.
В некоторых применениях кадры не перекрываются, тогда как в других применениях используется схема перекрывающихся кадров. Например, обычно для речевого кодера используется схема перекрывающихся кадров на кодере и схема неперекрывающихся кадров на декодере. Кодер также может использовать разные схемы кадров для разных задач. Например, речевой кодер или способ речевого кодирования может использовать одну схему перекрывающихся кадров для кодирования описания спектральной огибающей кадра и другую схему перекрывающихся кадров для кодирования описания временной информации кадра.
Как отмечено выше, может быть желательно, чтобы речевой кодер был способен использовать разные режимы кодирования и/или скорости для кодирования активных кадров и неактивных кадров. Чтобы отличать активные кадры от неактивных кадров, речевой кодер обычно включает в себя детектор речевой активности или иначе осуществляет способ обнаружения речевой активности. Такой детектор или способ может быть способен классифицировать кадр как активный или неактивный на основании одного или нескольких факторов, например энергии кадра, отношения сигнал-шум, периодичности и скорости пересечения нуля. Такая классификация может включать в себя сравнение значения или величины такого фактора с пороговым значением и/или сравнение величины изменения такого фактора с пороговым значением.
Детектор речевой активности или способ обнаружения речевой активности также может быть способен классифицировать активный кадр как один из двух или более разных типов, например вокализованный (например, представляющий гласный звук), невокализованный (например, представляющий фрикативный звук) или переходный (например, представляющий начало или конец слова). Может быть желательно, чтобы речевой кодер использовал разные битовые скорости для кодирования разных типов активных кадров. Хотя конкретный пример, показанный на фиг. 1, демонстрирует последовательность активных кадров, которые все кодируются на одной и той же битовой скорости, специалисту в данной области техники очевидно, что описанные здесь способы и устройство также можно использовать в речевых кодерах и способах речевого кодирования, которые пригодны для кодирования активных кадров на разных битовых скоростях.
На фиг. 2 показан один пример дерева решений, которое речевой кодер или способ речевого кодирования может использовать для выбора битовой скорости для кодирования конкретного кадра согласно типу речевого кадра. В других случаях битовая скорость, выбранная для конкретного кадра, также может зависеть от таких критериев, как желаемая средняя битовая скорость, желаемый шаблон битовых скоростей по последовательности кадров (который можно использовать для поддержки желаемой средней битовой скорости) и/или битовая скорость, выбранная для предыдущего кадра.
Может быть желательно использовать разные режимы кодирования для кодирования разных типов речевых кадров. Кадрам вокализованной речи свойственно иметь периодическую структуру, которая является долговременной (т.е. продолжается в течение более одного периода кадра) и называется основным тоном и обычно более эффективна для кодирования вокализованного кадра (или последовательности вокализованных кадров) с использованием режима кодирования, который кодирует описание этого долговременного спектрального признака. Примеры таких режимов кодирования включают в себя линейное прогнозирование с кодовым возбуждением (CELP) и период основного тона прототипа (PPP). С другой стороны, невокализованные кадры и неактивные кадры обычно не имеют сколько-нибудь значительного долговременного спектрального признака, и речевой кодер может быть способен кодировать эти кадры с использованием режима кодирования, который не пытается описать такой признак. Линейное прогнозирование с шумовым возбуждением (NELP) является одним примером такого режима кодирования.
Речевой кодер или способ речевого кодирования может быть способен выбирать из разных комбинаций битовых скоростей и режимов кодирования (также именуемых “схемами кодирования”). Например, речевой кодер, способный осуществлять реализацию способа M100, может использовать полноскоростную схему CELP для кадров, содержащих вокализованную речь и переходные кадры, полускоростную схему NELP для кадров, содержащих невокализованную речь, и схему NELP со скоростью одна восьмая для неактивных кадров. Другие примеры такого речевого кодера поддерживают множественные скорости кодирования для одной или нескольких схем кодирования, например полноскоростной и полускоростной схем CELP и/или полноскоростной и четвертьскоростной схем PPP.
Переход от активной речи к неактивной речи обычно происходит в течение периода нескольких кадров. В результате первые несколько кадров речевого сигнала после перехода от активных кадров к неактивным кадрам могут включать в себя остатки активной речи, например остатки вокализации. Если речевой кодер кодирует кадр, имеющий такие остатки, с использованием схемы кодирования, которая предназначена для неактивных кадров, кодированный результат может не точно представлять исходный кадр. Таким образом, может быть желательно поддерживать более высокую битовую скорость и/или активный режим кодирования для одного или нескольких кадров, которые следуют за переходом от активных кадров к неактивным кадрам.
На фиг. 3 показан результат кодирования участка речевого сигнала, в котором более высокая битовая скорость rH поддерживается на протяжении нескольких кадров после перехода от активных кадров к неактивным кадрам. Длительность этого поддержания (также именуемую “последействием”) можно выбирать согласно предполагаемой длительности перехода, и она может быть фиксированной или переменной. Например, длительность последействия может базироваться на одной или нескольких характеристиках, например отношении сигнал-шум, одного или нескольких активных кадров, предшествующих переходу. На фиг. 3 показано последействие четырех кадров.
Кодированный кадр обычно содержит набор речевых параметров, из которых можно реконструировать соответствующий кадр речевого сигнала. Этот набор речевых параметров обычно включает в себя спектральную информацию, например описание распределения энергии в кадре по частотному спектру. Такое распределение энергии также называется “частотной огибающей” или “спектральной огибающей” кадра. Речевой кодер обычно способен вычислять описание спектральной огибающей кадра в качестве упорядоченной последовательности значений. В ряде случаев речевой кодер способен вычислять упорядоченную последовательность таким образом, чтобы каждое значение указывало амплитуду или величину сигнала на соответствующей частоте или по соответствующему спектральному диапазону. Одним примером такого описания является упорядоченная последовательность коэффициентов преобразования Фурье.
В других случаях речевой кодер способен вычислять описание спектральной огибающей в качестве упорядоченной последовательности значений параметров модели кодирования, например набор значений коэффициентов анализа кодирования с линейным предсказанием (LPC). Упорядоченная последовательность значений коэффициентов LPC обычно организована в виде одного или нескольких векторов, и речевой кодер можно реализовать для вычисления этих значений как коэффициентов фильтра или как коэффициентов отражения. Количество значений коэффициентов в наборе также называется “порядком” LPC-анализа, и примеры типичного порядка LPC-анализа, осуществляемого речевым кодером устройства связи (например, сотового телефона), включают в себя четыре, шесть, восемь, десять, 12, 16, 20, 24, 28 и 32.
Речевой кодер обычно способен передавать описание спектральной огибающей по каналу связи в квантованной форме (например, в виде одного или нескольких индексов соответствующих поисковых таблиц или “кодовых книг”). Соответственно может быть желательно, чтобы речевой кодер вычислял набор значений коэффициентов LPC в форме, в которой их можно эффективно квантовать, например как набор линейных спектральных пар (LSP), линейных спектральных частот (LSF), иммитансных спектральных пар (ISPs), иммитансных спектральных частот (ISFs), кепстральных коэффициентов или отношений площадей регистрации. Речевой кодер также может быть способен осуществлять другие операции, например перцепционного взвешивания, на упорядоченной последовательности значений до преобразования и/или квантования.
В ряде случаев описание спектральной огибающей кадра также включает в себя описание временной информации кадра (например, как в упорядоченной последовательности коэффициентов преобразования Фурье). В других случаях набор речевых параметров кодированного кадра может также включать в себя описание временной информации кадра. Форма описания временной информации может зависеть от конкретного режима кодирования, используемого для кодирования кадра. Для некоторых режимов кодирования (например, для режима кодирования CELP) описание временной информации может включать в себя описание сигнала возбуждения, подлежащее использованию речевым декодером, для возбуждения модели LPC (например, по определению описания спектральной огибающей). Описание сигнала возбуждения обычно появляется в кодированном кадре в квантованной форме (например, в виде одного или нескольких индексов соответствующих кодовых книг). Описание временной информации может также включать в себя информацию, связанную с компонентом основного тона сигнала возбуждения. Например, для режима кодирования PPP кодированная временная информация может включать в себя описание прототипа, подлежащее использованию речевым декодером для воспроизведения компонента основного тона сигнала возбуждения. Описание информации, связанное с компонентом основного тона, обычно появляется в кодированном кадре в квантованной форме (например, в виде одного или нескольких индексов соответствующих кодовых книг).
Для других режимов кодирования (например, для режима кодирования NELP) описание временной информации может включать в себя описание временной огибающей кадра (также именуемой “энергетической огибающей” или “огибающей усиления” кадра). Описание временной огибающей может включать в себя значение, которое базируется на средней энергии кадра. Такое значение обычно представляется как значение коэффициента усиления, применяемое к кадру в ходе декодирования, и также называется “кадром усиления”. В ряде случаев кадр усиления является нормирующим множителем на основании отношения между (A) энергией исходного кадра Eorig и (B) энергией кадра, синтезированного из других параметров кодированного кадра (например, включающего в себя описание спектральной огибающей), Esynth. Например, кадр усиления можно выразить как Eorig/Esynth или как квадратный корень из Eorig/Esynth. Кадры усиления и другие аспекты временных огибающи