Устройство и способ для выполнения кодирования методом хаффмана

Иллюстрации

Показать все

Изобретение относится к беспроводной связи и предназначено для кодирования и декодирования звука/речи. Технический результат - повышение точности кодирования и декодирования звукового сигнала. Для этого таблица Хаффмана может быть создана автономно при помощи большой базы данных входных последовательностей. В способе определяют интервал значений индексов квантования (или разностных индексов) для кодирования методом Хаффмана. Для каждого значения из этого интервала собирают все входные сигналы, имеющие один и тот же интервал значений, и вычисляют распределение вероятности каждого значения индексов квантования (или разностных индексов) в пределах этого интервала. Для каждого значения из этого интервала создают одну таблицу Хаффмана в соответствии с вероятностью появления каждого возможного значения входного сигнала. 4 н. и 3 з.п. ф-лы, 14 ил.

Реферат

ОБЛАСТЬ ТЕХНИКИ

Настоящее изобретение относится к устройству кодирования звука/речи, к устройству декодирования звука/речи и к способам кодирования и декодирования звука/речи с использованием кодирования методом Хаффмана (Huffman).

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

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

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

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

СПИСОК ЦИТАТ

[Непатентный документ 1] ITU-T Recommendation G.719 (06/2008) “Low-complexity, full-band audio coding for high-quality, conversational applications”

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

Техническая задача

Однако в некоторых применениях, например при кодировании звукового сигнала, статистика данных сигнала может существенно изменяться от одного набора звукового сигнала до другого набора звукового сигнала. И даже в пределах одного и того же набора звукового сигнала.

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

Одним возможным решением является включение в кодирование как кодирования методом Хаффмана, так и кодирования с фиксированной длиной кода, и выбор способа кодирования, который расходует меньше битов. К стороне декодера передают один сигнал флага для указания того, какой способ кодирования выбран в кодере. Это решение используется в недавно стандартизованном посредством ITU-T кодеке G.719 речи.

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

В стандартизованном ITU-T кодеке G.719 речи кодирование методом Хаффмана используется при кодировании индексов квантования нормировочных коэффициентов.

Структура кодека G.719 проиллюстрирована на Фиг. 1.

На стороне кодера производят обработку входного сигнала, дискретизированного с частотой 48 кГц, посредством детектора (101) обнаружения нестационарного состояния. Для кадра входного сигнала применяют преобразование (102) с высокой разрешающей способностью по частоте или с низкой разрешающей способностью по частоте в зависимости от обнаружения нестационарного состояния. Полученные спектральные коэффициенты группируют в полосы частот неравной длины. Оценивают (103) норму каждой полосы частот, и выполняют квантование и кодирование (104) полученной в результате этого огибающей спектра, состоящей из норм всех полос частот. Затем нормируют коэффициенты по квантованным нормам (105). Квантованные нормы дополнительно корректируют (106) на основании адаптивного спектрального взвешивания и используют в качестве входных данных для распределения битов (107). Нормированные спектральные коэффициенты квантуют по векторам решетки и кодируют (108) на основании распределенных битов для каждой полосы частот. Производят оценку уровня незакодированных спектральных коэффициентов, выполняют его кодирование (109) и передачу в декодер. Кодирование методом Хаффмана применяют для индексов квантования как для закодированных спектральных коэффициентов, так и для закодированных норм.

На стороне декодера сначала декодируют флаг нестационарного состояния, который указывает конфигурацию кадра, то есть, является ли он стационарным или нестационарным. Декодируют огибающую спектра, и в декодере используют те же самые алгоритмы регулирования норм и распределения битов с точностью до бита для повторного вычисления распределения битов, что является существенным для декодирования индексов квантования нормированных коэффициентов преобразования. После обращения квантования (112) восстанавливают низкочастотные незакодированные спектральные коэффициенты (распределенные нулевые биты) с использованием кодовой книги с заполнением спектра, построенной из принятых спектральных коэффициентов (спектральных коэффициентов с распределением ненулевых битов) (113). Используют индекс регулирования уровня шума для регулирования уровня восстановленных коэффициентов. Высокочастотные незакодированные спектральные коэффициенты восстанавливают с использованием расширения полосы частот. Декодированные спектральные коэффициенты и восстановленные спектральные коэффициенты смешивают и приводят к нормированному спектру. Применяют декодированную огибающую спектра, что приводит к декодированному спектру во всей полосе частот (114). Наконец, применяют обратное преобразование (115) для восстановления декодированного сигнала во временной области. Это выполняют путем применения либо модифицированного обратного дискретного косинусного преобразования для стационарных режимов, либо обратного преобразования с более высоким разрешением по времени для нестационарного режима.

В кодере (104) нормировочные коэффициенты спектральных поддиапазонов подвергают скалярному квантованию логарифмическим скалярным квантователем с равномерным шагом с 40 шагами по 3 дБ. Записи кодовой книги логарифмического квантователя показаны на Фиг. 2. Из этой кодовой книги видно, что интервал значений нормировочных коэффициентов равен [2-2,5,217] и что значение уменьшается с увеличением индекса.

Кодирование индексов квантования для нормировочных коэффициентов проиллюстрировано на Фиг. 3. Всего имеется 44 поддиапазона частот и, соответственно, 44 нормировочных коэффициента. Для первого поддиапазона частот нормировочный коэффициент квантуют с использованием первых 32 записей (301) кодовой книги, тогда как другие нормировочные коэффициенты подвергают скалярному квантованию с использованием 40 записей кодовой книги (302), показанных на Фиг. 2. Индекс квантования для нормировочного коэффициента для первого поддиапазона частот непосредственно закодирован 5 битами (303), тогда как индексы для других поддиапазонов частот закодированы способом разностного кодирования. Разностные индексы получают с использованием приведенной ниже формулы (304):

. (уравнение 1)

А разностные индексы кодируют двумя возможными способами: кодирования с фиксированной длиной кода (305) и кодирования методом Хаффмана (306). Таблица Хаффмана для разностных индексов показана на Фиг. 4. В этой таблице имеется всего 32 записи, от 0 до 31, которые учитывают возможность резкого изменения энергии между соседними поддиапазонами частот.

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

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

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

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

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

РЕШЕНИЕ ЗАДАЧИ

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

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

ПОЛЕЗНЫЕ ЭФФЕКТЫ ИЗОБРЕТЕНИЯ

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

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

На Фиг. 1 проиллюстрирована структура кодека ITU-T G.719;

на Фиг. 2 показана кодовая книга для квантования нормировочных коэффициентов;

на Фиг. 3 проиллюстрирован способ квантования и кодирования нормировочных коэффициентов;

на Фиг. 4 показана таблица Хаффмана, используемая для кодирования индексов нормировочных коэффициентов;

на Фиг. 5 показана инфраструктура, в которой применено это изобретение;

на Фиг. 6A и Фиг. 6B показаны примеры заданных таблиц Хаффмана;

на Фиг. 7 проиллюстрировано получение кривой маскирования;

на Фиг. 8 проиллюстрировано то, как сужают интервал значений разностных индексов;

на Фиг. 9 показана схема последовательности операций того, как выполняют модифицирование индексов;

на Фиг. 10 проиллюстрировано то, как могут быть созданы таблицы Хаффмана;

на Фиг. 11 проиллюстрирована структура второго варианта осуществления этого изобретения;

на Фиг. 12 проиллюстрирована структура третьего варианта осуществления этого изобретения;

на Фиг. 13 проиллюстрирован кодер из четвертого варианта осуществления этого изобретения;

на Фиг. 14 проиллюстрирован декодер из четвертого варианта осуществления этого изобретения.

ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ

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

(Первый вариант осуществления изобретения)

На Фиг. 5 проиллюстрирован предложенный в изобретении кодек, который содержит кодер и декодер, в которых применяется предложенная в изобретении схема кодирования методом Хаффмана.

В кодере, проиллюстрированном на Фиг. 5, выполняют обработку значений энергии поддиапазонов частот методом психоакустического моделирования (501) для получения порога Mask(n) маскирующего эффекта. Согласно полученному Mask(n), модифицируют (502) индексы квантования нормировочных коэффициентов для тех поддиапазонов частот, ошибки квантования которых являются меньшими, чем порог маскирующего эффекта для того, чтобы интервал значений разностных индексов мог быть уменьшен.

Разностные индексы для модифицированных индексов вычисляют согласно приведенному ниже уравнению:

. (уравнение 2)

Интервал значений разностных индексов для кодирования методом Хаффмана определяют так, как показано в приведенном ниже уравнении (504).

. (уравнение 3)

Согласно величине интервала значений, из набора заданных таблиц Хаффмана выбирают (505) таблицу Хаффмана, предназначенную для конкретного интервала значений, для кодирования разностных индексов (506). В качестве примера, если среди всех разностных индексов для входного кадра минимальное значение равно 12, а максимальное значение равно 18, то в этом случае интервал значений =[12,18]. В качестве таблицы Хаффмана для кодирования выбирают таблицу Хаффмана, предназначенную для интервала [12,18].

Набор заранее заданных таблиц Хаффмана создают (подробности будут объяснены в дальнейшей части описания) и упорядочивают в соответствии с интервалом значений разностных индексов. Сигнал флага для указания выбранной таблицы Хаффмана и закодированных индексов передают в декодер.

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

В качестве примера на Фиг. 6A и Фиг. 6B показан набор из четырех заранее заданных таблиц Хаффмана. В этом примере приведены 4 заранее заданные таблицы Хаффмана, охватывающие интервал значений, соответственно, из [13,17], [12,18], [11,19] и [10,20]. В таблице 6.1 показан сигнал флага и соответствующий интервал значений для таблицы Хаффмана. В таблице 6.2 показаны коды Хаффмана для всех значений в интервале [13,17]. В таблице 6.3 показаны коды Хаффмана для всех значений в интервале [12,18]. В таблице 6.4 показаны коды Хаффмана для всех значений в интервале [11,19]. В таблице 6.5 показаны коды Хаффмана для всех значений в интервале [10,20].

Сравнивая длину кода Хаффмана на Фиг. 6A и Фиг. 6B с исходной таблицей Хаффмана, показанной на Фиг. 4, можно заметить, что длина кода Хаффмана для одних и тех же значений расходует меньше битов. Это объясняет экономию битов.

В декодере, проиллюстрированном на Фиг. 5, соответствующую таблицу Хаффмана для декодирования разностных индексов (508) выбирают (507) согласно сигналу флага. Для восстановления индексов квантования нормировочных коэффициентов используют разностные индексы согласно приведенному ниже уравнению:

. (уравнение 4)

На Фиг. 7 проиллюстрировано получение кривой маскирования входного сигнала. Сначала вычисляют значения энергии поддиапазонов частот, и по этим значениям энергии получают кривую маскирования входного сигнала. При получении кривой маскирования могут быть использованы некоторые существующие технологии из предшествующего уровня техники, например, способ получения кривой маскирования в кодеке MPEG AAC.

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

Как показано на Фиг. 8, для поддиапазонов частот 0, 2 и 4 их индексы модифицируют так, чтобы они были более близкими к соседним с ними индексам, поскольку значения энергии их ошибки квантования являются более низкими, чем порог маскирующего эффекта.

Модифицирование индексов может быть выполнено так, как описано ниже (с использованием поддиапазона частот 2 в качестве примера). Как показано на Фиг. 2, большой индекс соответствует меньшей энергии, и в этом случае индекс является меньшим, чем индекс . Модифицирование индекса фактически уменьшает его значение. Это может быть выполнено так, как показано на Фиг. 9.

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

, (уравнение 5)

. (уравнение 6)

. (уравнение 7)

В этом изобретении таблица Хаффмана может быть создана автономно при помощи большой базы данных входных последовательностей. Этот способ проиллюстрирован на Фиг. 10.

Значения энергии поддиапазонов частот обрабатывают методом психоакустического моделирования (1001) для получения порога маскирующего эффекта Mask(n). Согласно полученному Mask(n), индексы квантования нормировочных коэффициентов для тех поддиапазонов частот, в которых энергия ошибок квантования является более низкой, чем порог маскирующего эффекта, модифицируют (1002) так, чтобы интервал значений разностных индексов мог быть меньшим.

Вычисляют (1003) разностные индексы для модифицированных индексов.

Определяют (1004) интервал значений разностных индексов для кодирования методом Хаффмана. Для каждого значения из этого интервала собирают все входные сигналы, имеющие один и тот же интервал значений, и вычисляют распределение вероятности каждого значения разностного индекса в пределах этого интервала.

Для каждого значения из этого интервала создают одну таблицу Хаффмана в соответствии с вероятностью. Здесь для создания таблицы Хаффмана могут использоваться некоторые традиционные методы создания таблицы Хаффмана.

(Второй вариант осуществления изобретения)

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

Как показано на Фиг. 11, после выбора таблицы Хаффмана при операции 1105, вычисляют разностные индексы между исходными индексами квантования. Исходные разностные индексы и новые разностные индексы сравнивают относительно того, расходуют ли они то же самое количество битов в выбранной таблице Хаффмана.

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

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

(Третий вариант осуществления изобретения)

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

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

. (уравнение 8)

Модифицирование индекса квантования может быть выполнено так, как показано в приведенном ниже уравнении:

,

(уравнение 9)

где

означает нормировочный коэффициент для поддиапазона частот , декодированный с использованием модифицированного индекса квантования;

означает нормировочный коэффициент для поддиапазона частот , декодированный с использованием исходного индекса квантования;

означает энергию для поддиапазона частот ;

означает энергию для поддиапазона частот ;

означает энергию для поддиапазона частот .

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

(Четвертый вариант осуществления изобретения)

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

Как показано на Фиг. 13, разностные индексы получают из исходных индексов квантования (1301) согласно приведенному ниже уравнению:

, (уравнение 10)

где

означает разностный индекс для поддиапазона частот

означает индекс квантования для поддиапазона частот

означает индекс квантования для поддиапазона частот

Для уменьшения интервала значений разностных индексов, реализован модуль, модифицирующий значения некоторых разностных индексов (1302).

Это модифицирование выполняют согласно значению разностного индекса для предыдущего поддиапазона частот и порогового значения.

Один из способов модифицирования разностного индекса (когда n≥1) может быть реализован так, как показано в приведенном ниже уравнении, первый разностный индекс не был модифицирован для обеспечения точного восстановления в декодере:

где

n≥1;

Diff_index(n) означает разностный индекс для поддиапазона частот n;

Diff_index(n-1) означает разностный индекс для поддиапазона частот n-1;

Diff_index_new(n) означает новый разностный индекс для поддиапазона частот n;

Threshold означает значение, анализируемое для определения того, следует ли выполнять модифицирование разностного индекса.

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

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

В качестве примера предположим, что имеется одна основная составляющая звукового сигнала, которая имеет большую энергию в поддиапазоне частот . При этом, в поддиапазонах частот и основная составляющая звукового сигнала отсутствует. В этом случае согласно таблице Хаффмана, показанной на Фиг. 2, значение будет очень малым, тогда как значения и будут очень большими. В таком случае согласно уравнению (10) является очень малым (меньшим, чем ), а является очень большим. Если в Уравнении (11) произведено модифицирование, то, согласно приведенному ниже уравнению (12), верхняя граница разностных индексов, вероятно, может быть уменьшена, следовательно, интервал значений разностных индексов может быть сужен.

(уравнение 12)

Как показано на Фиг. 14, для точного восстановления разностных индексов в декодере реализован один модуль, именуемый "восстановлением разностных индексов" (1403). Восстановление производят согласно значению разностного индекса для предыдущего поддиапазона частот и пороговому значению. Пороговое значение в декодере является тем же самым, что и пороговое значение, используемое в кодере.

Способ восстановления разностного индекса (когда ), который соответствует модифицированию в кодере, может быть реализован так, как показано в приведенном ниже уравнении, первый разностный индекс принимают непосредственно, поскольку он не модифицирован в кодере:

(уравнение 13)

где

;

означает разностный индекс для поддиапазона частот ;

означает разностный индекс для поддиапазона частот ;

означает новый разностный индекс для поддиапазона частот ;

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

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

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

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

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

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

Кроме того, способ интеграции схемы не ограничен большими интегральными схемами (БИС), и также возможна реализация с использованием специализированных схем или универсальных процессоров. После изготовления БИС также возможно использование программируемой пользователем вентильной матрицы (ППВМ) или реконфигурируемого процессора, в котором может быть произведена реконфигурация соединений и установочных параметров ячеек схемы внутри БИС.

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

Раскрытие сущности заявок на патенты Японии № 2011-94295, поданной 20 апреля 2011 г., и № 2011-133432, поданной 15 июня 2011 г., включая описание, чертежи и реферат, включено сюда в полном объеме путем ссылки.

ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ

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

ПЕРЕЧЕНЬ ОБОЗНАЧЕНИЙ ССЫЛОЧНЫХ ПОЗИЦИЙ

101 - детектор обнаружения нестационарного состояния

102 - преобразование

103 - оценка нормы

104 - квантование и кодирование нормы

105 - нормировка спектра

106 - корректировка нормы

107 - распределение битов

108 - квантование и кодирование на сетке

109 - регулирование уровня шума

110 - мультиплексирование

111 - демультиплексирование

112 - декодирование на сетке

113 - генератор заполнения спектра

114 - формирование огибающей

115 - обратное преобразование

301 - скалярное квантование (32 шага)

302 - скалярное квантование (40 шагов)

303 - прямая передача (5 бит)

304 - разность

305 - кодирование с фиксированной длиной кода

306 - кодирование методом Хаффмана

501 - психоакустическая модель

502 - модифицирование индекса

503 - разность

504 - проверка интервала значений

505 - выбор таблицы кодов Хаффмана

506 - кодирование методом Хаффмана

507 - выбор таблицы Хаффмана

508 - декодирование методом Хаффмана

509 - сумма

1001 - психоакустическая модель

1002 - модифицирование индекса

1003 - разность

1004 - проверка интервала значений

1005 - вероятность

1006 - получение кода Хаффмана

1101 - психоакустическая модель

1102 - модифицирование индекса

1103 - разность

1104 - проверка интервала значений

1105 - выбор таблицы кодов Хаффмана

1106 - разность

1107 - восстановление разностных индексов

1108 - кодирование методом Хаффмана

1201 - модифицирование индекса

1202 - разность

1203 - проверка интервала значений

1204 - выбор таблицы кодов Хаффмана

1205 - кодирование методом Хаффмана

1301 - разность

1302 - модифицирование разностных индексов

1303 - проверка интервала значений

1304 - выбор таблицы кодов Хаффмана

1305 - кодирование методом Хаффмана

1401 - выбор таблицы кодов Хаффмана

1402 - кодирование методом Хаффмана

1403 - восстановление разностных индексов

1404 - сумма

1. Устройство кодирования аудио/речи, содержащее:преобразователь, который осуществляет преобразование входного сигнала аудио/речи во временной области в частотный спектр;разделитель полосы частот, который разделяет спектр частот на множество полос частот;вычислитель энергии, который вычисляет уровень значений энергии для каждой полосы частот;квантователь, который выполняет квантование значений энергий для каждой полосы частот;вычислитель разностного индекса, который вычисляет разностные индексы между индексом N-й полосы частот и индексом (N-1)-й полосы частот (N - целое число, равное 1 или больше);модификатор разностного индекса, который модифицирует диапазон разностных индексов для N-й полосы частот, когда N есть целое число, равное 2 или больше, и заменяет разностный индекс на модифицированный разностный индекс;кодировщик Хаффмана, который кодирует разностные индексы, используя выбранную таблицу Хаффмана, из числа заранее заданных таблиц Хаффмана; ипередатчик, который передает кодированные разностные индексы и сигнал флага для указания выбранной таблицы Хаффмана устройству декодирования аудио/речи;причем если вычисленный разностный индекс (N-1)-й полосы ч