МНОГОРЕЖИМНЫЙ АУДИО КОДИРОВЩИК И CELP КОДИРОВАНИЕ, АДАПТИРОВАННОЕ К НЕМУ Российский патент 2016 года по МПК G10L19/12 G10L19/20 

Описание патента на изобретение RU2586841C2

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

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

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

Например, в ААС [улучшенное аудио кодирование] регулировка уровня выходного сигнала может быть легко получена на уровне битового потока при изменении значения 8-битного поля "global gain" ["общее усиление"]. Этот элемент битового потока может просто передаваться и редактироваться без необходимости полного и повторного кодирования. Таким образом, этот процесс не вносит ухудшения качества и может быть отменен без каких-либо затрат. Существуют приложения, которые фактически используют эту опцию. Например, имеется свободное программное обеспечение под названием "ААС усиление" [ААС усиление], которое использует именно такой, только что описанный подход. Это программное обеспечение является производным от свободного программного обеспечения "МР3 усиление", которое применяет тот же способ MPEG1 / 2 для МР3.

В только что появившемся USAC кодировщике режим FD кодирования унаследовал 8-битное общее усиление от ААС. Таким образом, если USAC работает только в FD-режиме, например, для более высоких битрейтов, функциональность регулировки уровня, по сравнению с ААС, будет полностью сохранена. Однако, если используется режим переходов, такая возможность отсутствует для этого случая. В режиме ТСХ, например, также есть элемент битового потока с той же функциональностью, имеющий длину всего лишь 7-бит, которую также называют "общее усиление". Другими словами, количество битов для кодирования отдельных элементов усиления отдельных мод в первую очередь адаптировано к соответствующему режиму кодирования в целях достижения лучшего компромисса между желанием, с одной стороны, использовать меньшее число битов для контроля усиления, а с другой стороны, стремлением избежать ухудшения качества из-за слишком грубого квантования при настройке усиления. Очевидно, что этот компромисс приводит к различному количеству битов при сравнении режимов ТСХ и FD. В настоящее время в режиме ACELP разрабатывается USAC стандарт, в котором уровень можно контролировать с помощью элемента битового потока "mean energy" [средний уровень энергии], который имеет длину 2-бита. Опять же, очевидно, что компромисс между слишком большим количеством битов для средней энергии и слишком малым количеством битов для средней энергии, при сравнении различных режимов кодирования, а именно ТСХ и FD режимов кодирования, приводит к различному числу битов.

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

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

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

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

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

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

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

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

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

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

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

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

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

На фиг.1 показана блок-схема многооконного режима аудио кодирования в соответствии с изобретением;

На фиг.2 показана блок-схема энергетических расчетов в кодировщике фиг.1 в соответствии с первым альтернативным вариантом изобретения;

На фиг.3 показана блок-схема энергетических расчетов в кодировщике фиг.1 в соответствии со второй альтернативой варианта изобретения;

На фиг.4 показан многооконный режим аудио декодировщика в соответствии с вариантом, адаптированным для декодирования битового потока, закодированного кодировщиком фиг.1;

На фиг.5А и 5В показаны многооконный режим аудио кодировщика и многорежимный аудио декодировщик в соответствии с альтернативным вариантом осуществления настоящего изобретения;

На фиг.6А и 6В показаны многооконный режим аудио кодировщика и многорежимный аудио декодировщик в соответствии с альтернативным вариантом осуществления настоящего изобретения;

На фиг.7А и 7В показаны CELP кодировщик и декодировщик CELP в соответствии с альтернативным вариантом осуществления настоящего изобретения.

На фиг.1 показан вариант многорежимного аудио кодирования в соответствии с вариантом осуществления настоящего изобретения. Многорежимное аудио кодирование фиг.1 может использоваться для кодирования аудио сигналов смешанного типа, таких как смешение речи и музыки, или тому подобное. Для того чтобы получить компромисс между оптимальной скоростью/искажениями, многорежимное аудио кодирование настроено на переключение между несколькими режимами кодирования с целью адаптации свойств кодирования к текущим потребностям кодируемого аудио контента. В частности, в соответствии с фиг.1, при многорежимном аудио кодировании обычно используется три различных режима кодирования, а именно FD кодирование (в частотной области) и LP кодирование (с линейным предсказанием), которое в свою очередь делится на ТСХ (преобразование кодированного возбуждения) и CELP (возбуждение кодовой таблицы линейного предсказания) кодирование. В режиме FD кодирования, аудио контент, который будет закодирован, раскладывается в спектр при оконной операции, и спектральное разложение квантуется и масштабируется в соответствии с психоакустическим восприятием для того, чтобы уменьшить шум квантования ниже порога маскирования. В ТСХ и CELP режимах кодирования, аудио контент является объектом анализа линейного предсказания для получения коэффициентов линейного предсказания, и эти коэффициенты линейного предсказания передаются в потоке битов вместе с сигналом возбуждения, который затем фильтруется в соответствующем фильтре синтеза линейного предсказания с использованием коэффициентов линейного предсказания из потока битов, что позволяет получить декодированное представление аудио контента. В случае ТСХ кодирования, сигнал возбуждения преобразуется с помощью кодирования, в то время как в случае CELP кодирования, сигнал возбуждения кодируется путем индексации записей в кодовой таблице, в противном случае специальным образом строится кодовой таблица векторов отфильтрованных выборок. В ACELP (алгебраическое возбуждение кодовой таблицы линейного предсказания) кодировании, которое используется в соответствии с настоящим вариантом, возбуждение состоит из адаптивной кодовой таблицы возбуждения и обновления кодовой таблицы возбуждения. Как более подробно будет показано ниже, при ТСХ кодировании, коэффициенты линейного предсказания также могут быть использованы в декодировщике непосредственно в частотной области для формирования шумов квантования и получению коэффициентов масштабирования. В этом случае, ТСХ кодирование преобразовывает исходный сигнал и использует результат LPC кодирования только в частотной области.

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

В частности, в соответствии с различными режимами кодирования, поддерживаемыми многорежимным аудио кодированием 10 на фиг.1, также включает в себя FD кодировщик 12 и LPC (кодирование с линейным предсказанием) кодировщик 14. LPC кодировщик 14, в свою очередь, состоит из ветви ТСХ кодирования 16, ветви CELP кодирования 18 и переключателя режимов кодирования 20. Кроме того, переключатель режима кодирования состоит из кодировщика 10, показанного также цифрой 22 в качестве. Блока выбора режима настроен на анализ кодируемого аудио контента 24 для того, чтобы связать его последовательные временные участки в различных режимах кодирования. В частности, в случае фиг.1, блока выбора режима 22 присваивает различным последовательным временным участкам аудио контента 24 либо FD режим кодирования, либо LPC режим кодирования. В иллюстративном примере фиг.1, например, блока выбора режима 22 присвоил участку аудио контента от 26 до 24 FD режим кодирования, в то время как сразу после участка 28 присваивается режим LPC кодирования. В зависимости от режима кодирования, режим, присвоенный дизайнером режима 22, позволяет по-разному разделить аудио контент 24 на последовательные фреймы. Например, в варианте фиг.1, аудио контент 24 в участке 26 закодирован в виде фреймов 30 равной длины, например, перекрывающих друг друга на 50%. Иными словами, FD кодировщик 12 настроен на FD кодирование участка 26 аудио контента 24 в единицах фреймов 30. В соответствии с фиг.1, LPC кодировщик 14 также настроен на кодирование следующего участка 28 аудио контента 24 в единицах фреймов 32, однако, эти фреймы не обязательно имеют такой же размер, как фреймы 30. В случае фиг.1, например, размер фрейма 32 меньше, чем размер фрейма 30. В частности, в соответствии с конкретным вариантом, длина фреймов 30 составляет 2048 выборок аудио контента 24, в то время как длина каждого фрейма 32, 1024 выборки. Вполне возможно, что последний фрейм перекрывает первый фрейм на границе между LPC режимом кодирования и FD режимом кодирования. Однако, в варианте фиг.1, как показано в виде выборок на фиг.1, также возможно, что будет отсутствовать перекрытие фреймов при переходе от FD режима кодирования к LPC режиму кодирования, и наоборот.

Как показано на фиг.1, FD кодировщик 12 принимает фреймы 30 и кодирует их в частотной области с преобразованием соответствующих фреймов 34 из закодированного потока битов 36. Для этого FD кодировщик 12 содержит модуль обработки окна 38, преобразователь 40, модуль квантования и масштабирования 42 и кодировщик со сжатием данных без потерь 44, а также психоакустический контроллер 46. В принципе, FD кодировщик 12 может быть реализован в соответствии со стандартом ААС, и последующее описание не предполагает другое использование FD кодировщика 12. В частности, модуль обработки окна 38, преобразователь 40, модуль квантования и масштабирования 42 и кодировщик со сжатием данных без потерь 44 соединены последовательно между входом 48 и выходом 50 FD кодировщика 12, а психоакустический контроллер 46 имеет вход, соединенный с входом 48, и затем его выход подключается к входу модуля квантования и масштабирования 42. Следует отметить, что FD кодировщик 12 может содержать дополнительные модули для дополнительных опций кодирования, которые, однако, в данном случае не обязательны.

Модуль обработки окна 38 может использовать различные окна для управления окнами текущего фрейма, поступающего на вход 48. Оконный фрейм является объектом для преобразования из временной в спектральную область в преобразователе 40, например, с помощью MDCT или аналогичных ему. Преобразователь 40 может использовать различные длины преобразования для преобразования оконных фреймов.

В частности, модуль обработки окна 38 может поддерживать окна, длины которых совпадают с длиной фрейма 30, и преобразователь 40 использует такие же длины преобразования для получения целого ряда коэффициентов преобразования, которые могут, например, в случае MDCT, соответствовать половине количества выборок фрейма 30. Модуль обработки окна 38 может, однако, быть сконфигурирован для поддержки опций кодирования, согласно которым используются несколько коротких окон, например, восемь окон на половине длины фрейма 30, смещенных относительно друг друга во времени, которые применяются для текущего фрейма в преобразователе 40, обрабатывающем эти оконные версии текущего фрейма с использованием длины преобразования, соответствующей окнам, тем самым формируя восемь спектров для этой выборки аудио контента, соответствующих разным моментам времени в течение этого фрейма. Окна, использующие модуль обработки окна 38, могут быть симметричными или асимметричными и могут иметь нулевой передний фронт и/или нулевой задний фронт. В случае использования нескольких коротких окон текущего фрейма, ненулевые участки этих коротких окон смещены относительно друг друга, однако, они перекрывают друг друга. Конечно, могут быть использованы другие варианты кодирования для окон и преобразования длины в модуле обработки окна 38 и преобразователе 40 в соответствии с альтернативным вариантом.

Коэффициенты преобразования после выхода из преобразователя 40 квантуются и масштабируются в модуле 42. В частности, психоакустический контроллер 46 анализирует входной сигнал на входе 48 и определяет порог маскирования для модуля 48, согласно которому шумы квантования, введенные при квантовании и масштабировании, устанавливаются ниже порога маскирования. В частности, модуль масштабирования 42 может работать в диапазонах коэффициентов масштабирования, полностью охватывающих спектральную область преобразователя 40, в котором спектральная область разделяется. Следовательно, группам последовательных коэффициентов преобразования соответствуют различные диапазоны коэффициентов масштабирования. Модуль 42 определяет коэффициент масштабирования в соответствии с диапазоном коэффициентов масштабирования, который затем умножается на соответствующие значения коэффициентов преобразования, присвоенные соответствующим группам коэффициентов масштабирования, что позволяет получить реконструированную (восстановленную) версию коэффициентов преобразования на выходе преобразователя 40. Кроме того, модуль 42 задает значение коэффициента усиления для спектрально однородного масштабированного спектра. Реконструированный коэффициент преобразования, таким образом, равен значению коэффициента преобразования, умноженному на соответствующий коэффициент масштабирования и значение усиления gi соответствующего фрейма i. Значения коэффициентов преобразования, коэффициентов масштабирования и коэффициента усиления затем кодируются в кодировщике со сжатием данных без потерь 44, либо с помощью статистического кодирования, либо арифметическим кодированием или кодированием Хаффмана, наряду с другими элементами синтаксиса, которые используют, например, упомянутые выше решения такие, как оконное преобразование и преобразование длины, и последующие элементы синтаксиса, допускающие другие опции кодирования. Для получения дополнительной информации по вопросам, относящимся к дополнительным опциям кодирования, можно сослаться на стандарт для ААС кодирования.

Если говорить более точно, модуль квантования и масштабирования 42 может быть сконфигурирован для передачи квантованного значения коэффициента преобразования в спектральную линию k, что дает, после перемасштабирования, реконструированный коэффициент преобразования для соответствующей спектральной линии k, а именно x_rescal, который умножается на

gain=20,25·(sf-sf_offset),

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

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

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

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

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

Как и в фреймах 30, все фреймы, предназначенные для LPC режима кодирования, а именно фрейм 32, вводится в LPC кодировщик 14. В LPC кодировщике 14 переключатель 20 подразделяет каждый фрейм 32 на один или несколько подфреймов 52. Каждый из этих подфреймов 52 может быть предназначен для ТСХ кодирования или CELP режима кодирования. Подфреймы 52, предназначенные для ТСХ режима кодирования, направляются на вход 54 ТСХ кодировщика 16, в то время как подфреймы, предназначенные для CELP режима кодирования, передаются с помощью переключателя 20 на вход 56 CELP кодировщика 18.

Следует отметить, что расположение переключателя 20, показанное на фиг.1 между входом 58 LPC кодировщика 14 и входами 54 и 56 ТСХ кодировщика 16 и CELP кодировщика 18, соответственно, необходимо только для иллюстрации, и на самом деле, решение о кодировании с разделением фреймов 32 на подфреймы 52, связанное с соответствующими режимами кодирования ТСХ либо CELP для отдельных подфреймов, может быть принято в интерактивном режиме между внутренними элементами ТСХ кодировщика 16 и CELP кодировщика 18 в целях обеспечения максимально выгодного соотношения затраты/искажения.

В любом случае, ТСХ кодировщик 16 содержит генератор возбуждения 60, LP анализатор 62 и определитель энергии 64, где LP анализатор 62 и определитель энергии 64 совместно используются (и в совместно принадлежат) CELP кодировщику 18, который дополнительно содержит собственный генератор возбуждения 66. Соответствующие входы генератора возбуждения 60, LP анализатора 62 и определитель энергии 64 подключены к входу 54 ТСХ кодировщика 16. Кроме того, соответствующие входы LP анализатора 62, определитель энергии 64 и генератор возбуждения 66 подключены к входу 56 CELP кодировщика 18. LP анализатор 62 настроен на анализ аудио контента в пределах текущего фрейма, т.е. ТСХ фрейма или CELP фрейма, для определения коэффициентов линейного предсказания и связан с соответствующими входными коэффициентами генератора возбуждения 60, определителя энергии 64 и генератора возбуждения 66 для того, чтобы направить коэффициенты линейного предсказания в эти элементы. Как будет описано более подробно ниже, LP анализатор может работать с предыскаженной версией исходного аудио контента, и соответствующий фильтр предыскажений может быть частью соответствующего входного участка LP анализатора или может быть установлен перед его входом. То же относится и к определителю энергии 66, как более подробно будет описано ниже. Что касается использования генератора возбуждения 60, то он может выполнять непосредственную передачу исходного сигнала. Соответствующие выходы генератора возбуждения 60, LP анализатора 62, определителя энергии 64 и генератора возбуждения 66, а также выход 50 подключены к соответствующим входам мультиплексора 68 кодировщика 10, который настроен на синтаксис элементов мультиплексора, полученных в потоке битов 36 на выходе 70.

Как уже отмечалось выше, LPC анализатор 62 выполнен с возможностью определения коэффициентов линейного предсказания для входящих LPC фреймов 32. Для получения дополнительной информации относительно возможной функциональности LP анализатора 62 можно сослаться на стандартный ACELP. Вообще, LP анализатор 62 может использовать способ авто корреляции или ковариации для определения LPC коэффициентов. Например, LP анализатор 62 может формировать с помощью автокорреляционного способа автокорреляционную матрицу LPC коэффициентов с решением на основе алгоритма Левинсон-Дурбане. Как известно в данной области, LPC коэффициенты определяют фильтр синтеза, который грубо моделирует голосовой тракт человека, и, когда приводится в действие сигнал возбуждения, фактически моделируют поток воздуха через голосовые связки. Этот фильтр синтеза моделируется с помощью линейного предсказания в LP анализаторе 62. Скорость, с которой может изменяться форма вокальных треков, ограничена, и, соответственно, LP анализатор 62 может использовать частоту обновления, адаптированную к этому ограничению и отличающуюся от частоты фреймов 32, с которой обновляются коэффициенты линейного предсказания. LP анализ, проведенный анализатором 62, позволяет получить информацию о некоторых фильтрах для элементов 60, 64 и 66, таких как:

- фильтр синтеза линейного предсказания H(z);

- фильтр обратного преобразования, а именно фильтр анализа линейного предсказания или «отбеливающий» фильтр A(z), где H ( z ) = 1 A ( z ) .

- фильтр взвешивания восприятия, а именно W(z)=A(z/λ), где λ является весовым коэффициентом

LP анализатор 62 передает информацию о LPC коэффициентах на мультиплексор 68 для включения в поток битов 36. Эта информация 72 может представлять квантованные коэффициенты линейного предсказания в соответствующей области, двух спектральных областях, или тому подобное. В этой области может быть выполнено даже квантование коэффициентов линейного предсказания. Кроме того, LPC анализатор 62 может передать LPC коэффициенты, или информацию 72 о них, со скоростью, большей, чем скорость, с которой LPC коэффициенты на самом деле восстановлены при декодировании. Такая скорость обновления может быть достигнута, например, путем интерполяции между множителями при LPC передаче. Очевидно, что декодировщик имеет доступ только к квантованным LPC коэффициентам и, соответственно, вышеупомянутые фильтры определяются соответствующими реконструированными линейными предсказаниями, обозначаемыми Ĥ(z), Â(z) и Ŵ(z).

Как уже говорилось выше, LP анализатор 62 определяет LP фильтры синтеза H(z) и Ĥ(z), соответственно, которые, применительно к соответствующему возбуждению, восстанавливают и реконструируют оригинальный аудио контент, за исключением некоторых этапов пост-обработки, которые, однако, здесь не рассматриваются для простоты изложения.

Генераторы возбуждения 60 и 66 предназначены для определения этого возбуждения и передачи соответствующей информации о нем в декодировщик с помощью мультиплексора 68 и битового потока 36, соответственно. Что касается генератора возбуждения 60 из ТСХ кодировщика 16, то в нем используются аналогичное кодирование текущего возбуждения при условии обнаружения подходящего возбуждения, например, в некоторой схеме оптимизации в то время, как выполняется преобразование из временной в спектральную область с целью получения спектральной версии возбуждения, спектральная версия спектральной информации 74 затем направляется в мультиплексор 68 для включения в поток битов 36, с квантованием и масштабированием спектральной информации, например, аналогично спектру в котором работает модуль 42 из FD кодировщика 12.

То есть спектральная информация 74 текущего подфрейма 52, определяющая возбуждение ТСХ кодировщика 16, может содержать связанные с ней квантованные коэффициенты преобразования, которые масштабируются в соответствии с единственным коэффициентом масштабирования, который, в свою очередь, передается как элемент синтаксиса LPC фрейма, далее обозначаемый global_gain. Как и в случае global_gain FD кодировщика 12, значение global_gain LPC кодировщика 14 также может быть определено в логарифмической области. Увеличение этого значения непосредственно переводится в увеличение громкости декодированного представления аудио контента, соответствующего ТСХ подфреймам, так как декодированное представление достигается путем обработки масштабированных коэффициентов преобразования из информации 74 при выполнении линейных операций сохранения отрегулированного усиления. Эти линейные операции являются обратными частотно-временными преобразованиями и, в конечном счете, выполняют фильтрацию при LP синтезе. Однако, как будет более подробно объяснено ниже, генератор возбуждения 60 настроен на кодирование только что упомянутого усиления в спектральной информации 74 в потоке битов с разрешением во времени выше, чем в единицах LPC фреймов. В частности, генератор возбуждения 60 использует элемент синтаксиса, называемого delta_global_gain, с кодом независимым от элемента битового потока global_gain, и фактический коэффициент усиления используется для установки коэффициента усиления в спектре возбуждения. Значение delta_global_gain также может быть определено в логарифмической области. Независимое кодирование может быть выполнено таким образом, что delta_global_gain может быть определено как мультипликативная коррекция усиления global_gain в линейной области.

В отличие от генератора возбуждения 60, генератор возбуждения 66 из CELP кодировщика 18 настроен на кодирование текущего возбуждения текущего подфрейма с помощью индексов кодовой таблицы. В частности, генератор возбуждения 66 выполнен с возможностью определения текущего возбуждения путем суммирования адаптивного кодовой таблицы возбуждения и обновленного кодовой таблицы возбуждения. Генератор возбуждения 66 настроен на построение адаптивной кодовой таблицы для возбуждения текущего фрейма таким образом, чтобы определить предыдущее возбуждение, т.е., например, возбуждение используется для ранее закодированного CELP подфрейма и индекса адаптивной кодовой таблицы для текущего фрейма. Генератор возбуждения 66 кодирует индекс адаптивной кодовой таблицы 76 и помещает его в битовый поток через мультиплексор 68. Кроме того, генератор возбуждения 66 создает обновленное возбуждение кодовой таблицы, определяемое индексом обновленной кодовой таблицы для текущего фрейма, кодирует обновленный индекс кодовой таблицы 78 в битовом потоке и направляет его на мультиплексор 68 для включения в поток битов 36. В действительности, оба этих объекта могут быть интегрированы в один общий элемент синтаксиса. Одновременно они поступают в декодировщик для обновления кодовой таблицы возбуждения, получаемой генератором возбуждения. В целях обеспечения синхронизации внутренних состояний кодировщика и декодировщика, генератор 66 не только определяет синтаксис элементов для включения декодировщика и обновления текущего кодовой таблицы возбуждения, но и фактически обновляет свое состояние путем запуска генерации с использованием текущего кодовой таблицы возбуждения в качестве исходного состояния, т.е. предыдущее возбуждение используется для кодирования последующего CELP фрейма.

Генератор возбуждения 66 может быть сконфигурирован для построения адаптивной кодовой таблицы возбуждения и обновления кодовой таблицы возбуждения, что позволяет свести к минимуму искажение восприятия при взвешивании по сравнению с аудио контентом текущего подфрейма, следует также учитывать, что результат возбуждения является объектом для фильтрации при LP синтезе при восстановлении в декодировщике. В действительности, значения 76 и 78 индексов определенных таблиц доступны как в кодировщике 10, так и в декодировщике для того, чтобы определять индекс или иным образом определять векторы, выступающие в качестве возбуждения на входе фильтра LP синтеза. В отличие от адаптивной кодовой таблицы возбуждения, обновление кодовой таблицы возбуждения определяется независимым от предыдущего возбуждения образом. В действительности, генератор возбуждения 66 может быть сконфигурирован для определения адаптивной кодовой таблицы возбуждения для текущего фрейма с использованием предыдущего и восстановленного возбуждения ранее закодированных CELP подфреймов, изменяя последние путем использования некоторых операций задержки, усиления и заданной фильтрации (интерполяции), так что в результате в адаптивной кодовой таблице возбуждения текущего фрейма сводится к минимуму различие с определенным целевым значением для восстановления адаптивной кодовой таблицы возбуждения, когда исходный аудио контент фильтруется с помощью фильтра синтеза. Только что упомянутые задержка, усиление и фильтрация отмечаются с помощью индекса адаптивной кодовой таблицы. Остальные расхождения компенсируются обновлением кодовой таблицы возбуждения. Кроме того, генератор возбуждения 66 устанавливает соответствующий индекс кодовой таблицы для определения оптимального обновления кодовой таблицы возбуждения, которое, в сочетании с адаптивной кодовой таблицей возбуждения (например, добавленной), позволяет получить текущее возбуждение для текущего фрейма (с последующей обработкой, аналогичной для предыдущего возбуждения, при создании адаптивной кодовой таблицы возбуждения последующего CELP подфрейма). Другими словами, адаптивный поиск кодовой таблицы может быть выполнен на основе подфрейма и заключается в выполнении замкнутого цикла поиска с последующим вычислением адаптивного вектора кодов путем интерполяции предыдущего возбуждения с выбранным значением задержки. Фактически сигнал возбуждения u(n) определяется генератором возбуждения 66 как взвешенная сумма векторов v(n) адаптивной кодовой таблицы и обновленного вектора кодовой таблицы с(n)

u(n)=ĝpv(n)+ĝcc(n).

Значение усиления ĝp определяется индексом адаптивной кодовой таблицы 76. Коэффициент усиления обновления кодовой таблицы ĝc определяется обновленным индексом кодовой таблицы 78 и вышеупомянутым элементом синтаксиса global_gain для LPC фреймов, определяемыми определителем энергии 64, как будет описано ниже.

То есть, при оптимизации обновленного индекса кодовой таблицы 78, генератор возбуждения 66 принимает и оставляет неизменным усиление обновления кодовой таблицы ĝc с простой оптимизацией индекса обновления кодовой таблицы для определения расположения и знаков импульсов векторов обновленной кодовой таблицы, а также числа этих импульсов.

Первый подход (или альтернативный) для установки вышеупомянутого элемента синтаксиса global_gain для LPC фрейма с помощью определителя энергии 64 описан в следующем фиг.2. В соответствии с обоими вариантами, описанными ниже, элемент синтаксиса global_gain определяется для каждого LPC фрейма 32. Этот элемент синтаксиса необходим в качестве ссылки для вышеупомянутых элементов синтаксиса delta_global_gain для ТСХ субфреймов, принадлежащих соответствующему фрейму 32, а также для вышеупомянутого усиления обновленной кодовой таблицы ĝc, которая определяется с помощью global_gain как это описано ниже.

Как показано на фиг.2, определитель энергии 64 может быть сконфигурирован для определения элемента синтаксиса global_gain 80 и может включать в себя фильтр анализа линейного предсказания 82, управляемый LP анализатором 62, модулем вычисления энергии 84 и этапом квантования и кодирования 86, а также этапом декодирования 88 при деквантовании. Как показано на фиг.2, модуль предыскажений или фильтр предыскажений 90 может предварительно обработать исходный аудио контент 24 с последующей обработкой в определителе энергии 64, как описано ниже. Хотя это не показано на фиг.1, фильтр предыскажений также может включаться в блок-схему на фиг.1 непосредственно и перед входами LP анализатора 62 и перед определителем энергии 64. Иными словами, фильтры предыскажений могут быть включены в состав модулей или совместно ими использоваться. Фильтр предыскажений 90 может быть задан следующим выражением

Hemph(z)=1-αz-1.

Таким образом, фильтр предыскажений может быть фильтром верхних частот. Здесь показан фильтр высоких частот первого порядка, но в более общем случае, он может быть фильтром верхних частот n-ного порядка. В данном случае выбран фильтр верхних частот первого порядка со значением α, установленным равным 0,68.

Вход определителя энергии 64 на фиг.2 подключен к выходу фильтра предыскажений 90. Между входом и выходом 80 определителя энергии 64 располагаются фильтр LP анализа 82, модуль вычисления энергии 84 и этап квантования и кодирования 86, последовательно соединенные в упомянутом порядке. Этап кодирования 88 имеет свой вход, подключенный к выходу квантования и кодирования этапа 86 и выводит квантованное усиление, получаемое декодировщиком.

В частности, фильтр анализа линейного предсказания 82 A(z), примененный к аудио контенту после предыскажений, позволяет получить сигнал возбуждения 92. Таким образом, возбуждение 92 равно версии исходного аудио контента 24 после предыскажений, отфильтрованной LPC фильтром анализа A(z), т.е. исходное содержание аудио контента 24 фильтруется в соответствии с

Hemph(z).A(z).

На основании этого сигнала возбуждения 92, общее усиление для текущего фрейма 32 выводится путем вычисления энергии через каждые 1024 выборки этого сигнала возбуждения 92 в пределах текущего фрейма 32.

В частности, модуль вычисления энергия 84 усредняет энергию сигнала 92 по сегменту из 64 выборок в логарифмической области:

n r g = l = 0 15 1 16 log 2 n = 0 64 e x c [ l 94 + n ] * e x c [ l 64 + n ] 64

Усиление gindex затем квантуется на этапе квантования и кодирования 86 в виде 6 битов в логарифмической области на основе средней энергии nrg по формуле:

gindex=4·nrg+0.5.

Этот индекс затем передается в потоке битов в качестве элемента синтаксиса 80, то есть как общее усиление. Он определяется в логарифмической области. Другими словами, размер шага квантования увеличивается в геометрической прогрессии. Квантованное усиление получается путем декодирования на этапе 88 следующим образом:

g ^ = 2 g i n d e x 4 .

Используемое здесь квантование имеет ту же дискретность, что и квантование общего усиления в FD режиме, и, соответственно, масштабирование gindex позволяет масштабировать громкость LPC фреймов 32 в том же порядке, как масштабирование элемента синтаксиса global_gain FD фреймов 30, обеспечивая тем самым легкий способ получения контроля над многорежимным закодированным потоком битов 36 с отсутствием необходимости выполнения декодирования и повторного кодирования при сохранении качества.

Как более подробно будет показано ниже, при описании декодировщика, ради вышеупомянутой синхронности взаимодействия между кодировщиком и декодировщиком (возбуждение nupdate НОбн), генератор возбуждения 66 может, в процессе оптимизации или после оптимизации, получить оптимизированные индексы кодовой таблицы,

а) вычислить с помощью global_gain усиление предсказания g c ' и

б) умножить усиление предсказания g c ' на поправочный коэффициент обновленной кодовой таблицы γ ^ для получения фактического усиления обновленной кодовой таблицы ĝc,

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

В частности, в соответствии с настоящей альтернативой, на этапе квантования при кодировании 86 индекс gindex передается в поток битов и генератор возбуждения 66 принимает квантованное усиление ĝ в качестве предварительно определенной фиксированной ссылки для оптимизации обновления кодовой таблицы возбуждения. В частности, генератор возбуждения 66 оптимизирует усиление ĝc обновленной кодовой таблицы с использованием (т.е. с оптимизацией) только индекса обновленной кодовой таблицы, который также определяет γ ^ , являющийся поправочным коэффициентом для коэффициента усиления обновленной кодовой таблицы. В частности, поправочный коэффициент для коэффициента усиления обновленной кодовой таблицы определяет усиление обновленной кодовой таблицы ĝc следующим образом

Ē=20.1og(ĝ)

G c ' = E ¯

g c ' = 10 0.05 G c '

g ^ c = γ ^ c g c '

Как будет описано ниже, ТСХ усиление кодируется путем передачи элемента delta_global_gain, закодированного в 5 битов:

delta_ global _ gain = 4 .1og 2 ( gain_tcx g ^ ) + 10) + 0 .5

Этот элемент кодируется следующим образом:

g a i n _ t c x = 2 d e l t a _ g l o b a l _ g a i n 10 4 . g ^ ,

а также

g = g a i n _ t c x 2. r m s .

Для того чтобы завершить согласование по контролю усиления, предлагаемый элемент синтаксиса gindex, а также CELP подфреймы и ТСХ подфреймы, в соответствии с первой альтернативой, описаны со ссылкой на фиг.2, таким образом, общее усиление gindex, кодируется в 6 битах фрейма или суперфрейма 32. Это приводит к той же дискретизации усиления, как и при FD режиме кодирования общего усиления. В этом случае, суперфрейм общего усиления gindex кодируется только в 6 битах, хотя общее усиление в FD режиме отправляется в 8 битах. Таким образом, элементы общего усиления различаются для LPD (области линейного предсказания) и FD режима. Однако, так как дискретизация коэффициента усиления будет выполняться аналогичным образом, то может быть легко применена единая регулировка усиления. В частности, логарифмическая область кодирования global_gain в FD и LPD режимах преимущественно используется с тем же основанием логарифма 2.

Для того чтобы полностью синхронизировать оба глобальных элемента, было бы полезно расширить кодирование до 8 бит даже для более сложных LPD фреймов. Что касается также сложных CELP фреймов, элемент синтаксиса gindex полностью берет на себя задачу контроля усиления. Вышеупомянутые элементы delta-global-gain ТСХ подфреймов могут быть закодированы в 5 битах независимо от суперфрейма общего усиления. По сравнению со случаем, когда с помощью многорежимной схемы кодирования будут реализовываться обычные AAC, ACELP и ТСХ режимы, вышеописанные концепции в соответствии с альтернативой фиг.2 приводят к уменьшению на 2 бита при кодировании суперфрейма 32, обычно состоящего из ТСХ 20 и/или ACELP подфреймов, но многорежимная схема кодирования будет использовать 2 или 4 дополнительных бита для суперфрейма в случае соответствующего суперфрейма, содержащего ТСХ 40 и ТСХ 80 подфреймы, соответственно.

С точки зрения обработки сигнала, суперфрейм общего усиления gindex представляет LPC остаточную энергию, усредненную по суперфрейму 32 и квантованную в логарифмическом масштабе. В случае (A) CELP, суперфрейм используется вместо элемента "средняя энергия", обычно используемого в ACELP для оценки коэффициента усиления обновленной кодовой таблицы. Новая оценка в соответствии с настоящей первой альтернативой по фиг.2, имеет больше разрешение по амплитуде, чем в ACELP стандарте, но и меньшее время разрешения, так как gindex передается только в суперфрейме, а не подфрейме. Тем не менее, было обнаружено, что остаточная энергия является плохим критерием для оценки и может использоваться в качестве критерия диапазона усиления. Как следствие, разрешение во времени, вероятно, более важно. Для избегания проблем во время переходных процессов, генератор возбуждения 66 может быть сконфигурирован для систематического занижения усиления обновленной кодовой таблицы, и разрешение регулировки усиления устраняет этот недостаток. Эта стратегия может уравновесить потери при разрешении во времени.

Кроме того, суперфрейм общего усиления используется также в ТСХ в качестве оценки элемента «общее усиление", определяющего scaling_gain, как упоминалось выше. Поскольку суперфрейм общего усиления gindex представляет собой остаточную энергию LPC и ТСХ, глобальные представления энергии взвешенного сигнала, дифференциальное усиление, кодирующееся с использованием delta_global_gain, неявно включает в себя некоторое усиление LP. Тем не менее, дифференциальное усиление по-прежнему показывает гораздо меньшую амплитуду, чем элемент "общее усиления".

Для значений битрейта 12 Кбит/сек и 24 Кбит/сек в режиме моно были проведены некоторые испытания при прослушивании, при этом основное внимание уделялось качеству чистой речи. Качество было оценено как очень близкое к одному из часто используемых USAC, отличающегося от указанных вариантов тем, что был использован обычный контроль усиления в стандартах ААС и ACELP/TCX. Тем не менее, для некоторых элементов речи, имеется тенденция некоторого снижения качества.

После описанного на фиг.1 воплощения в соответствии с альтернативой на фиг.2, второй альтернативный вариант описан со ссылкой на фиг.1 и 3. В соответствии со вторым подходом к режиму LPD, устраняются некоторые недостатки первого варианта:

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

- Кроме того, предсказание усиления обновленного ACELP также не оптимально. Действительно, усиление оптимизируется во взвешиваемой области, в то время как предсказание усиления вычисляется в остаточной LPC области. Идея следующей альтернативы заключается в выполнении предсказания во взвешиваемой области.

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

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

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

- общее усиление кодируется на 8 бит в том же модуле квантования, что и в FD режиме. В новом варианте, и в LPD, и в FD режимах используется один и тот же элемент битового потока. Оказалось, что общее усиление ААС имеет веские причины для кодирования в 8 битах в таком модуле квантования. Для общего усиления в LPD режиме число 8 бит слишком большое, так как оно может быть закодировано только 6 битами. Тем не менее, это цена, которую необходимо заплатить за универсальность.

- Индивидуальное кодирование общего усиления для ТСХ с дифференциальным кодированием, использует:

О 1 бит для ТСХ 1024, для кодов фиксированной длины.

О 4 бита в среднем для ТСХ256 и ТСХ 512, для кодов переменной длины (Huffman)

В терминах с использованием битов второй подход отличается от первого тем, что:

- Для ACELP: использует столько же бит, что и ранее

- Для ТСХ 1024: +2 бита

- Для ТСХ512: +2 бита в среднем

- Для ТСХ256: использует в среднем столько же бит, что и ранее

С точки зрения качества, второй подход отличается от первого тем, что:

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

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

См., например, фиг.3. На фиг.3 показан генератор возбуждения 66, содержащий взвешивающий фильтр W(z) 100, модуль вычисления энергии 102 и этап квантования и кодирования 104, а также этап декодирования 106. По сути, эти элементы расположены по отношению друг к другу, как элементы 82 и 88 были на фиг.2.

Взвешивающий фильтр определяется следующим образом:

W(z)=A(z/γ),

где λ является взвешивающим коэффициентом восприятия, который устанавливается равным 0.92.

Таким образом, в соответствии со вторым подходом, общее усиление, одинаковое для ТСХ и CELP подфреймов 52, выводится из расчета энергии, выполняемого для каждых 2024 выборок во взвешенном сигнале, т.е. по единицам LPC фреймов 32. Взвешенный сигнал вычисляется в фильтре 100 кодировщика при фильтрации исходного сигнала 24 во взвешивающем фильтре W(z), с вычислением LPC коэффициентов на выходе LP анализатора 62. Кстати, вышеупомянутые предыскажения не является частью W(z). W(z) используется только перед вычислением LPC коэффициентов, то есть в пределах или в передней части анализатора LP 62, и до ACELP, то есть в пределах или на входе генератора возбуждения 66. В некотором смысле предыскажения уже включены в коэффициенты A(z).

Модуль вычисления энергии 102 затем определяет энергию следующим образом:

n r g = n = 0 1023 w [ n ] * w [ n ] .

Этап 104 квантования и кодирования затем дискретизирует усиление global_gain по 8 бит в логарифмической области на основе средней энергии nrg по формуле:

g l o b a l _ g a i n = 4. log 2 ( n r g 1024 ) + 0.5 .

Квантованное общее усиление получается после этапа декодирования 106 по формуле:

g ^ = 2 g l o b a l _ g a i n 4 .

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

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

б) получить соотношение между энергией, полученной как Ē=20.1og(ĝ), и энергией, определяемой global_gain для того, чтобы получить усиление предсказания g c '

в) умножить усиление предсказания на поправочный коэффициент у обновленной кодовой таблицы для получения фактического усиления обновленной кодовой таблицы ĝc

г) фактически сгенерировать кодовую таблицу возбуждения путем суммирования адаптивной кодовой таблицы возбуждения и обновленной кодовой таблицы возбуждения с взвешиванием последней с фактическим усилением обновленной кодовой таблицы ĝc.

В частности, при квантовании достигается такая же дискретизация, как и при квантовании общего усиления в FD режиме. Кроме того, генератор возбуждения 66 может принимать и рассматривать в качестве постоянной величины квантованное общее усиление ĝ при оптимизации обновленной кодовой таблицы возбуждения. В частности, генератор возбуждения 66 может установить для обновленной кодовой таблицы возбуждения поправочный коэффициент γ ^ с определением оптимального индекса обновленной кодовой таблицы, так что результаты оптимального квантованного усиления некоторой фиксированной кодовой таблицы получаются в соответствии с:

g ^ c = γ ^ g c ' ,

где:

g c ' = 10 0.05 G c '

G c ' = E ¯ E i 12

Ē=20.1og(ĝ)

E i = 10. log ( 1 64 n = 0 63 c w 2 [ n ] )

где cw является обновленным вектором с c[n] во взвешиваемой области, полученным с помощью свертки от n=0 до 63 в зависимости от:

cw[n]=с[n]*h2[n],

причем h.2 является импульсным откликом взвешивающего фильтра синтеза

H 2 ( z ) = W ^ ( z ) A ^ ( z ) H ( z ) d e _ e m p h = A ^ ( z / 0.92 ) A ^ ( z ) . ( 1 0.68 z 1 ) .

в котором, например, γ=0.92 и α=0.68.

Усиление ТСХ кодируется путем передачи элемента delta_global_gain, закодированного в кодах переменной длины.

Если ТСХ имеет размер 1024, то только 1 бит используется для элемента delta_global_gain, в то время как global_gain пересчитывается и деквантуется:

global_gain=4.log2(gain_tcx)+0.5

g ^ = 2 g i n d e x 4

delta_ global _ gain = 8 .1og 2 ( gain_tcx g ^ ) + 0 .5

Элемент декодируется следующим образом:

g a i n _ t c x = 2 d e l t a _ g l o b a l _ g a i n 10 8 . g ^

В противном случае, для других размеров ТСХ, delta_global_gain кодируется следующим образом:

delta_ global _ gain = (28 .1og 2 ( gain_tcx g ^ ) + 64) + 0 .5

Затем усиление ТСХ декодируется следующим образом:

g a i n _ t c x = 10 d e l t a _ g l o b a l _ g a i n 64 4 . g ^

Элемент delta_global_gain может быть непосредственно закодирован в 7 битах или с помощью кодов Хаффмана, которые в среднем могут формировать 4 бита.

Наконец, в обоих случаях окончательное усиление выводится следующим образом:

g = g a i n _ t c x 2. r m s

Далее, со ссылкой на фиг.4, представлены два альтернативных варианта, описанных со ссылкой на фиг.2 и 3, многорежимного аудио декодировщика, соответствующего варианту на фиг.1.

Многорежимный аудио декодировщик по фиг.4, как правило, указывается с помощью номера 120 и включает в себя демультиплексор 122, FD декодировщик 124 и LPC декодировщик 126, состоящий из ТСХ декодировщика 128, CELP декодировщика 130 и обработчика перекрытия/перехода 132.

Демультиплексор содержит вход 134, служащий одновременно входом многорежимного аудио декодировщика 120. Поток битов 36 из фиг.1 поступает на вход 134. Демультиплексор 122 содержит несколько выходов, подключенных к декодировщикам 124, 128, и 130, и распределяет элементы синтаксиса, содержащиеся в потоке битов 134, на отдельные алгоритмы декодирования. В сущности, мультиплексор 132 распределяет фреймы 34 и 35 потока битов 36 по соответствующим декодировщикам 124, 128 и 130, соответственно.

Каждый из декодировщиков 124, 128 и 130 включает в себя выход во временной области, который соединен с соответствующим входом обработчика перекрытия/перехода 132. Обработчик перекрытия/перехода 132 отвечает за выполнение соответствующей обработки перекрытия/перехода на переходах между последовательными фреймами. Например, обработчик перекрытия/перехода 132 может выполнять процедуру перекрытия/суммирования, относящуюся к последовательным окнам FD фреймов. То же самое относится и к ТСХ-фреймам. Хотя это и не описано подробно со ссылкой на фиг.1, например, даже генератор возбуждения 60 использует оконную операцию, следующую за преобразованием из временной в спектральную область, с целью получения коэффициентов преобразования для формирования возбуждения, причем окна могут перекрывать друг друга. При переходе «к»/или «от» CELP подфреймов обработчик перекрытия/перехода 132 может выполнять специальные действия для того, чтобы избежать наложения. С этой целью обработчик перекрытия/перехода 132 может находиться под контролем соответствующих элементов синтаксиса, передающихся через поток битов 36. Однако, поскольку эти способы передачи выходят за рамки настоящего изобретения, можно сделать ссылку, например, на стандартный ACELP W+ для иллюстрации отдельных решений в этой области.

FD декодировщик 124 включает в себя декодировщик со сжатием данных без потерь 134, модуль деквантования и масштабирования 136 и модуль повторного преобразования 138, который последовательно включен между демультиплексором 122 и обработчиком перекрытия/перехода 132. Декодировщик 134 может без потерь восстановить, например, коэффициенты масштабирования из битов, которые независимым образом в нем закодированы. Модуль квантования и масштабирования 136 восстанавливает коэффициенты преобразования, например, масштабирует значения коэффициента преобразования для отдельных спектральных линий с соответствующими коэффициентами масштабирования в диапазоне коэффициентов масштабирования, к которому эти значения коэффициента преобразования принадлежат. Модуль повторного преобразования 138 выполняет преобразование из спектральной во временную область для получения коэффициентов преобразования, таких как обратное MDCT преобразование, с целью получения сигнала во временной области, который будет направлен на обработчик перекрытия/перехода 132. Затем либо модуль деквантования и масштабирования 136, либо модуль повторного преобразования 138 используют элемент синтаксиса global_gain для передачи в поток битов для каждого фрейма FD, так, что сигнал во временной области в результате преобразования масштабируется с помощью элемента синтаксиса (т.е. линейно масштабируется с некоторой экспоненциальной функцией). В сущности, масштабирование может быть выполнено перед преобразованием из спектральной к временную область или во время преобразования.

ТСХ декодировщик 128 включает в себя генератор возбуждения 140, формирователь спектра 142 и преобразователь LP коэффициентов 144. Генератор возбуждения 140 и формирователь спектра 142 включены последовательно между демультиплексором 122 и другим входом обработчика перекрытия/перехода 132, и преобразователь LP коэффициентов 144 формирует дополнительный вход формирователя спектра 142 со спектрально взвешенными значениями, полученными из LPC коэффициентов, переданными в потоке битов. В частности, ТСХ декодировщик 128 работает с ТСХ подфреймами между фреймами 52. Генератор возбуждения 140 обрабатывает входящую спектральную информацию, похожую на компоненты 134 и 136 FD декодировщика 124. То есть генератор возбуждения 140 выполняет деквантование и изменяет масштаб значений коэффициентов преобразования, передаваемых в потоке битов представления возбуждения в спектральной области. Коэффициенты преобразования, полученные таким образом, масштабируются в генераторе возбуждения 140 с коэффициентом, соответствующим сумме элемента синтаксиса delta_global_gain, переданного в текущем ТСХ подфрейме 52, и элемента синтаксиса global_gain, переданного в текущем фрейме 32, к которому принадлежит текущий ТСХ фрейм 52. Таким образом, генератор возбуждения 140 выводит спектральное представление возбуждения для текущего подфрейма, масштабированного в соответствии с delta_global_gain и global_gain. LPC преобразователь 134 преобразует LPC коэффициенты, переданные в потоке битов с помощью, например, интерполяции и дифференциального кодирования или аналогичным образом, в значения коэффициентов спектрального взвешивания, а именно значения коэффициентов спектрального взвешивания становятся коэффициентами преобразования спектра возбуждения на выходе генератора возбуждения 140. В частности, преобразователь LP коэффициентов 144 определяет эти значения коэффициентов спектрального взвешивания аналогично передаточной функции фильтра синтеза линейного предсказания. Другими словами, они напоминают передаточную функцию фильтра синтеза LP Ĥ(z). Формирователь спектра 140 спектрально взвешивает входные коэффициенты преобразования с помощью генератора возбуждения 140, спектральное взвешивание выполняется в преобразователе LP коэффициентов 144 с целью получения спектрально взвешенных коэффициентов преобразования, которые затем подвергаются преобразованию из спектральной во временную область в модуле повторного преобразования 146, так что модуль повторного преобразования 146 формирует на входе восстановленную версию или декодированное представление аудио контента текущего ТСХ подфрейма. Тем не менее, следует отметить, что, как уже отмечалось выше, последующая обработка может быть выполнена на выходе модуля повторного преобразования 146 до передачи сигнала во временной области на обработчик перекрытия/перехода 132. В любом случае, уровень сигнала во временной области на выходе модуля повторного преобразования 146 снова контролируется элементом синтаксиса global_gain соответствующего LPC фрейма 32.

CELP декодировщик 130 по фиг.4 содержит конструктор обновления кодовой таблицы 148, конструктор адаптивной кодовой таблицы 150, адаптер усиления 152, сумматор 154 и фильтр LP синтеза 156. Конструктор обновления кодовой таблицы 148, адаптер усиления 152, сумматор 154 и фильтр LP синтеза 156 соединены последовательно между демультиплексором 122 и обработчиком перекрытия/перехода 132. Конструктор адаптивной кодовой таблицы 150 имеет вход, подключенный к демультиплексору 122, а его выход подключен к следующему входу сумматора 154, который, в свою очередь, может быть воплощен таким же образом, как сумматор, показанный на фиг.4. Следующий вход конструктора адаптивной кодовой таблицы 150 подключен к выходу сумматора 154 для получения предыдущего возбуждения. Адаптер усиления 152 и фильтр LP синтеза 156 имеют LPC входы, подключенные к определенным выходам мультиплексора 122.

После того, как описаны структуры ТСХ декодировщика и CELP декодировщика, ниже более подробно представлена их функциональность. Описание начинается с функциональности ТСХ декодировщика 128, а затем приведено описание функциональности CELP декодировщика 130. Как уже было описано выше, LPC фреймы 32 подразделяются на один или несколько подфреймов 52. Как правило, CELP подфреймы 52 ограничены и имеют длину 256 аудио выборок. ТСХ подфреймы 52 могут иметь различную длину. 20 подфреймов ТСХ или 256 ТСХ подфреймов из подфреймов 52, например, могут иметь выборку длиной 256. Кроме того, ТСХ 40 (ТСХ 512) из подфреймов 52 могут иметь длину 512 выборок, а ТСХ 80 (ТСХ 1024) подфреймы имеют длину выборки 1024, т.е. относятся ко всему LPC фрейму 32. 40 ТСХ подфреймов могут быть просто расположены на двух ведущих четвертях текущего LPC фрейма 32, или двух последних четвертях. Таким образом, всего существует 26 различных комбинаций различных типов подфреймов, на которые LPC фрейм 32 может быть разделен.

Таким образом, как только что говорилось, ТСХ подфреймы 52 имеют различную длину. Учитывая только что описанные длины выборок, а именно 256, 512 и 1024, можно было бы предположить, что эти ТСХ подфреймы не накладываются друг на друга. Тем не менее, это не так, поскольку длина окна и длина преобразования измеряются числом использованных выборок, необходимых для выполнения спектрального разложения возбуждения. Преобразование длины, используемое в модуле обработки окна 38 для продления, например, переднего и заднего фронтов каждого текущего ТСХ подфрейма и соответствующего окна, используемого для обработки возбуждения, легко адаптируется и распространяется на участки за пределами заднего и переднего фронтов соответствующих текущих ТСХ подфреймов, содержащих ненулевые участки перекрытия предыдущих и последующих подфреймов текущего подфрейма, для исключения алиасинга, как известно, например, в FD кодировании.

Таким образом, генератор возбуждения 140 принимает квантованные спектральные коэффициенты из битового потока и восстанавливает из них возбуждение спектра. Этот спектр масштабируется в зависимости от суммирования delta_global_gain текущего ТСХ подфрейма и global_frame текущего фрейма 32, к которому текущий подфрейм принадлежит. В частности, результат суммирования может включать в себя результат умножения между двумя значениями в линейной области (соответствующий суммированию в логарифмической области), в которой определены оба элемента синтаксиса усиления. Соответственно, спектр возбуждения, таким образом, масштабируется в соответствии с элементом синтаксиса global_gain. Формирователь спектра 142 затем выполняет LPC на основе формирования шума в частотной области и получает спектральные коэффициенты с помощью последующего обратного MDCT преобразования, выполняемого в модуле повторного преобразования 146 для получения сигнала синтеза во временной области. Обработчик перекрытия/перехода 132 может выполнять процесс перекрытия и суммирования между последовательными ТСХ подфреймами.

CELP декодировщик 130 действует на вышеупомянутые CELP подфреймы, каждый из которых, как отмечалось выше, имеет длину 256 выборок. Как уже отмечалось выше, CELP декодировщик 130 настроен на построение текущего возбуждения в виде суммирования или добавления масштабированной адаптивной кодовой таблицы и векторов обновления кодовой таблицы. Конструктор адаптивной кодовой таблицы 150 использует индексы адаптивной кодовой таблицы, которые извлекаются из потока битов через демультиплексор 122 для определения непрерывной и дробной части тона. Конструктор адаптивной кодовой таблицы 150 может затем получить начальную адаптивную кодовую таблицу векторов возбуждения v'(n) путем интерполяции предыдущего возбуждения u(n) в зависимости от задержки и фазы, т.е. параметров, использующих фильтр интерполяции FIR. Адаптивная кодовая таблица возбуждения вычисляется для размера 64 выборки. В зависимости от элемента синтаксиса, называемого адаптивным фильтром индекса, извлекаемого из битового потока, конструктор адаптивной кодовой таблицы может решить, какое выражение будет использоваться фильтром адаптивной кодовой таблицы

v(n)=v'(n) или

v(n)=0.18v'(n)+0.64v'(n-1)+0.18v'(n-2).

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

c ( n ) = i = 0 M 1 s i δ ( n m i )

Причем mi и si являются импульсными величинами и знаками, а М показывает число импульсов. Далее алгебраически закодированный вектор с(n) декодируется, выполняется процедура этапов обработки. Сначала с(n) фильтруется с помощью фильтра предыскажений, определяемого следующим образом:

Femph(z)=1-0.3z-l

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

F p ( z ) = { 1 i f n < min ( T ,64 ) ( 1 + 0.85 z T ) i f T < 64 a n d T n min ( 2 T ,64 ) 1 / ( 1 0.85 z T ) i f 2 T < 64 a n d 2 T n < 64 .

где n фактическое число единиц последовательных групп из 64 выборок, и где Т округленная версия целой части Т0 и дробной части Т0, frac от тона, определяемого по формуле:

T = { T 0 + 1 i f T 0, f r a c > 2 T 0 o t h e r w i s e

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

Полученные обновления и индексы адаптивной кодовой таблицы в потоке битов непосредственно устанавливают усиление адаптивной кодовой таблицы ĝp и поправочный коэффициент γ ^ усиления обновления кодовой таблицы. Коэффициент усиления обновления кодовой таблицы γ ^ затем вычисляется путем умножения коэффициента корректировки усиления на оценочное значение усиления обновленной кодовой таблицы γ c ' . Это выполняется в адаптере усиления 152.

В соответствии с вышеупомянутым первым вариантом, адаптер усиления 152 выполняет следующие действия.

Во-первых, энергия Ē, которая передается через global_gain и представляет собой среднюю энергию возбуждения в суперфрейме 32, используемую для оценки усиления G c ' в дБ, т.е.

E ¯ = G c '

Средняя энергия обновленного возбуждения Ē в суперфрейме 32, таким образом, закодирована в 6 битах суперфрейма с помощью globalgain, и Ē получается из global_gain через ее квантованную версию:

Ē=20.1og(ĝ)

Предсказание усиления в линейной области получается затем в адаптере усиления 152:

g c ' = 10 0.05 G c '

Затем в адаптере усиления 152 вычисляется квантованное усиление фиксированной кодовой таблицы

g ^ c = γ ^ g c '

Как описано выше, адаптер усиления 152 масштабирует обновление кодовой таблицы возбуждения ĝc, в то время конструктор адаптивной кодовой таблицы 150 масштабирует возбуждение адаптивной кодовой таблицы ĝp взвешенная сумма обоих возбуждений кодовой таблицы формируется в сумматоре 154.

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

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

H 2 ( z ) = W ^ ( z ) A ^ ( z ) H ( z ) d e _ e m p h = A ^ ( z / 0.92 ) A ^ ( z ) . ( 1 0.68 z 1 )

Обновление во взвешиваемой области получается после свертки с n=0 до 63:

cw[n]=c[n]*h2[n]

Энергия получается следующим образом:

E i = 10. log ( 1 64 n = 0 63 c w 2 [ n ] )

Затем определяется оценочное усиление G c ' в дБ

G c ' = E ¯ E i 12 ,

которое, опять же, передается через global_gain и представляет собой среднюю энергию возбуждения в суперфрейме 32 во взвешиваемой области. Средняя энергия в суперфрейме 32, таким образом, закодирована в 8 бит суперфрейма с помощью global_gain, и Ē получается из global_gain через ее квантованную версию ĝ:

Ē=20.1og(ĝ)

Предсказание усиления в линейной области получается в адаптере усиления 152:

g c ' = 10 0.05 G c ' .

Квантованное усиление фиксированной кодовой таблицы затем получается в адаптере усиления 152

g ^ c = γ ^ g c '

Приведенное выше описание не является детальным, поскольку определение ТСХ усиления в спектре возбуждения проводится в соответствии с изложенными выше двумя вариантами. Усиление ТСХ, при котором спектр масштабируется, как уже говорилось выше - кодируется при передаче элемента delta_global_gain, закодированного в 5 битах в соответствии с:

delta_ global _ gain = 4 .1og 2 ( gain_tcx g ^ ) + 10) + 0 .5 .

Это производится генератором возбуждения 140, например, следующим образом:

g a i n _ t c x = 2 d e l t a _ g l o b a l _ g a i n 10 4 . g ^ ,

где ĝ обозначает квантованную версию global_gain в соответствии с g ^ = 2 g l o b a l _ g a i n 4 , в свою очередь, global_gain представлен в потоке битов для LPC фреймов 32, к которым принадлежит текущий ТСХ фрейм.

Генератор возбуждения 140 масштабирует спектр возбуждения путем умножения каждого коэффициента преобразования на g следующим образом:

g = g a i n _ t c x 2. r m s

Согласно представленному выше второму подходу, усиление ТСХ кодируется путем передачи элемента delta-global-gain, закодированного, например, в кодах переменной длины. Если ТСХ подфрейм, рассматриваемый в настоящее время, имеет размер 1024, только 1 бит может быть использован для элемента delta-global-gain, в то время как общее усиление может быть пересчитано и повторно квантовано в кодировщике, в соответствии с:

global_gain=4.1og2(gain_tcx)+0.5

Генератор возбуждения 140 затем вычисляет ТСХ усиление

g ^ = 2 g i n d e x 4

Затем рассчитывается

g a i n _ t c x = 2 d e l t a _ g l o b a l _ g a i n 8 . g ^

В противном случае, для других размеров ТСХ, delta-global-gain может быть вычислено генератором возбуждения 140 следующим образом:

delta_ global _ gain = 28 .1og 2 ( gain_tcx g ^ ) + 6 4 ) + 0 .5

Усиление ТСХ затем декодируется генератором возбуждения 140 следующим образом:

g a i n _ t c x = 10 d e l t a _ g l o b a l _ g a i n 64 28 . g ^

Затем рассчитывается

g = g a i n _ t c x 2. r m s ,

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

Например, delta_global_gain может быть непосредственно закодировано в 7 битах или с помощью кодов Хаффмана, которые производят в среднем 4 бита. Таким образом, в соответствии с приведенным выше вариантом можно кодировать аудио контент с использованием нескольких режимов. В описанном выше варианте, были использованы три режима кодирования, а именно FD, ТСХ и ACELP. Несмотря на использование трех различных режимов, громкость соответствующего представления декодированного аудио контента, закодированного в потоке битов 36, легко регулируется. В частности, в соответствии с обоими подходами, описанных выше, это просто необходимо в равной степени увеличивать/уменьшать синтаксические элементы globalgain, содержащиеся в каждом из фреймов 30 и 32, соответственно. Например, все эти элементы синтаксиса global_gain могут быть увеличены на 2, чтобы равномерно увеличить громкость при использовании различных режимов кодирования, или уменьшены на 2 с целью равномерного снижения громкости между участками, закодированными в различных режимах.

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

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

Фиг.5А и 5В показывают многооконный режим аудио кодировщика и многорежимное аудио кодирование в соответствии с первым вариантом осуществления изобретения. Многорежимное аудио кодирование на фиг.5А обычно обозначено цифрой 300 и настроено на кодирование аудио контента 302 в закодированный поток битов 304 с кодированием первого подмножества фреймов 306 в первом режиме кодирования 308 и второго подмножества фреймов 310 во втором режиме кодирования 312, причем второе подмножество фреймов 310 содержит, соответственно, один или более подфреймов 314, причем многорежимный аудио кодировщик 300 настроен на определение и кодирование значения общего усиления (global_gain) для фрейма и определение и кодирование подфреймов, по крайней мере, в подмножестве 316 из подфреймов второго подмножества, соответствующие элементу битового потока (delta_global_gain) независимо от значения глобального коэффициента усиления 318 для соответствующих фреймов, причем многорежимный аудио кодировщик 300 настроен таким образом, что изменение полученного общего значения усиления (global_gain) фреймов в закодированном потоке битов 304 позволяет регулировать выходной уровень декодированного представления аудио контента в декодировщике.

Соответствующий многорежимный аудио декодировщик 320 показан на фиг.5В. Декодировщик 320 настроен на получение декодированного представления 322 аудио контента 302 на основе закодированных битов 304. Для этого многорежимный аудио декодировщик 320 декодирует общее значение усиления (global_gain) в фреймах 324 и 326 закодированного потока битов 304, первое подмножество 324 из фрейма кодируется в первом режиме кодирования, а второе подмножество из фреймов 326 кодируется во втором режиме кодирования, причем каждый фрейм 326 из второго подмножества состоит более чем из одного подфрейма 328 и каждый подфрейм 328, из подмножества фреймов 328 второго подмножества 326 фреймов, декодируется с помощью соответствующего элемента битового потока (delta_global_gain) независимо от значения глобального коэффициента усиления соответствующих фреймов, а полное кодирование потока данных выполняется с использованием значения общего усиления (global_gain), соответствующего элемента битового потока (delta_global_gain), декодированных подфреймов из второго подмножества фреймов 326 и значения общего усиления (global_gain) в декодированном первом подмножестве фреймов, причем многорежимный аудио декодировщик 320 настроен таким образом, что изменения значения общего усиления (global_gain) фреймов 324 и 326 в закодированном потоке битов 304 приводит к корректировке 330 выходного уровня 332 декодированного представления 322 аудио контента.

Как это было в случае с вариантами на фиг. с 1 по 4, первый режим кодирования может быть режимом частотного кодирования, а второй режим кодирования - режимом кодирования линейного предсказания. Тем не менее, фиг.5А и 5В не ограничиваются этими случаями. Однако режимы кодирования с линейным предсказанием, как правило, требуют тонкой дискретизации по времени, чтобы получить глобальную регулировку усиления, и, соответственно, использование режима кодирования с линейным предсказанием для фреймов 326 и режима частотного кодирования для фреймов 324 должно быть более предпочтительным, по сравнению с противоположным случаем, в соответствии с которым режим кодирования в частотной области был использован для фреймов 326 и режим кодирования линейного предсказания для фреймов 324.

Кроме того, вариант фиг.5А и 5В не ограничивается случаем, когда для кодирования подфреймов 314 используются режимы ТСХ и ACLEP. Лучше сказать, что варианты на фиг. с 1 по 4 могут быть реализованы, например, в соответствии с вариантом фиг.5А и 5В, если исключен режим кодирования ACELP. В этом случае независимое кодирование обоих элементов, а именно global_gain и delta_global_gain, позволило бы учесть более высокую устойчивость режима ТСХ кодирования к изменениям и установкам усиления, что, однако, приводит к отказу от преимуществ, предоставляемых регулировкой общего усиления, без дополнительного декодирования и повторного кодирования, и без чрезмерного увеличения необходимой дополнительной информации.

Тем не менее, многорежимный аудио декодировщик 320 может быть сконфигурирован для завершения декодирования закодированного потока битов 304 и декодирования фреймов из второго подмножества подфреймов фреймов 326 с помощью преобразования возбуждения при кодировании с линейным предсказанием (а именно, четырех подфреймов из левого фрейма 326 на фиг.5В), и декодирования непересекающегося подмножества подфреймов из второго подмножества фреймов 326 с использованием CELP. В связи с этим, многорежимный аудио декодировщик 220 может быть сконфигурирован для декодирования фреймов второго подмножества фреймов при использовании дополнительного элемента битового потока, определяющего разбиение соответствующего фрейма на один или несколько подфреймов. В вышеупомянутом варианте, например, каждый LPC фрейм может иметь содержащихся в нем элементы синтаксиса, которые определяют одну из вышеупомянутых двадцати шести возможностей разложения текущего LPC фрейма в ТСХ и ACELP фреймах. Однако, еще раз отметим, что воплощение фиг.5А и 5В не ограничивается ACELP, а также конкретными двумя альтернативами, описанными выше по отношению к настройке среднего значения энергии в соответствии с элементом синтаксиса global_gain.

Аналогично предыдущему варианту на фиг. с 1 по 4, фреймы 326 соответствуют фреймам 310, или фреймам 326, которые могут иметь длину выборки в 1024 выборки, и по меньшей мере подмножество подфреймов из второго подмножества фреймов, для которых передается элемент delta_global_gain потока битов, может иметь различную длину выборки из ряда значений 256, 512 и 1024 выборок, и каждое непересекающееся подмножество подфреймов может иметь выборки длиной 256 выборок. Фреймы 324 первого подмножества могут иметь равные друг другу длины выборок. Как было описано выше, многорежимный аудио декодировщик 320 может быть сконфигурирован для декодирования значения общего коэффициента усиления в 8-битах и элемента потока битов с переменным числом бит, количество которых зависит от длины выборки соответствующего подфрейма. Кроме того, многорежимный аудио декодировщик может быть сконфигурирован для декодирования значения общего коэффициента усиления в 6-битах и декодирования элементов битового потока в 5-битах. Следует отметить, что существуют различные возможности для независимого кодирования элементов delta_global_gain.

Как это было в случае с вышеописанным вариантом на фиг. с 1 по 4, элементы global_gain могут быть определены в логарифмической области, а именно как линейные интенсивности аудио выборки. То же самое относится и к delta_global_gain. Для того, чтобы закодировать delta_global_gain, многорежимный аудио кодировщик 300 может использовать отношение элементов линейного усиления соответствующих подфреймов 316, таких как вышеупомянутые gain_TCX (например, первый независимо закодированный коэффициент масштабирования), и квантованные global_gain соответствующего фрейма 310, т.е. аудио кодировщик использует линеаризованную (применительно к экспоненциальной функции) версию global_gain, чтобы можно было использовать логарифм, например с основанием 2, для получения элемента синтаксиса delta_global_gain в логарифмической области. Как известно специалистам, тот же результат можно получить, выполняя вычитание в логарифмической области. Соответственно, многорежимный аудио декодировщик 320 может быть сконфигурирован, во-первых, для повторной передачи элементов синтаксиса delta_global_gain и global_gain в виде экспоненциальной функции в линейной области для умножения результатов в линейной области и получения усиления, с которым многорежимный аудио декодировщик масштабирует текущие подфреймы, такие как ТСХ закодированное возбуждение и их спектральные коэффициенты преобразования, как описано выше. Как известно специалистам, тот же результат может быть получен путем добавления обоих элементов синтаксиса в логарифмической области перед переходом в линейную область.

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

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

Далее, со ссылкой на фиг.6А и 6В, представлен другой вариант для многооконного режима аудио кодировщика и описаны соответствующие кодировщик и декодировщик. Фиг.6а показывает многооконный режим аудио кодировщика 400, настроенного для кодирования аудио контента 402 в закодированный поток битов 404 с CELP кодированием первого подмножества фреймов аудио контента 402, обозначенного на фиг.6а цифрой 406, и преобразованием кодирования второго подмножества фреймов, обозначенного на фиг.6а цифрой 408. Многорежимный аудио кодировщик 400 содержит CELP кодировщик 410 и кодировщик преобразования 412. CELP кодировщик 410, в свою очередь, состоит из анализатора LP 414 и генератора возбуждения 416. CELP кодировщик настроен на кодирование текущего фрейма первого подмножества. Для этого в LP анализаторе 414 генерируются LPC коэффициенты фильтра 418 для текущего фрейма и кодируются в закодированный поток битов 404. Генератор возбуждения 416 определяет текущее возбуждение текущего фрейма первого подмножества, которое при обработке фильтром синтеза линейного предсказания на основе коэффициентов фильтра линейного предсказания 418 в закодированном потоке битов 404, восстанавливает текущий фрейм первого подмножества, определяемый предыдущим возбуждением 420 и индексом кодовой таблицы для текущего фрейма первого подмножества и индексом кодирования кодовой таблицы 422, в закодированный поток битов 404. Кодировщик преобразования 412 настроен на кодирование текущего фрейма второго подмножества 408 с переводом для текущего фрейма преобразования из временной-спектральной области в сигнал во временной области для получения спектральной информации и кодирования спектральной информации 424 в закодированный поток битов 404. Многорежимный аудио кодировщик 400 настроен на кодирование значения общего усиления 426 в закодированный поток битов 404, значение общего усиления 426 зависит от энергии версии аудио контента текущего фрейма из первого подмножества 406, отфильтрованной в фильтре анализа линейного предсказания в зависимости от коэффициентов линейного предсказания, или энергии сигнала во временной области. В случае описанном, например, в варианте фиг. с 1 по 4, кодировщик преобразования 412 был реализован в виде кодировщика ТСХ, и сигнал во временной области получен при возбуждении соответствующих фреймов. Кроме того, результат фильтрации аудио контента 402 текущего фрейма первого подмножества (CELP), который может быть получен от фильтра анализа линейного предсказания, либо может быть получена его модифицированная версия с помощью весового фильтра A(z/γ), в зависимости от коэффициента линейного предсказания 418, позволяет получить представление возбуждения. Таким образом, значение общего коэффициента усиления 426 зависит от энергии возбуждения обоих типов фреймов.

Однако, воплощение фиг.6А и 6В не ограничивается ТСХ кодированием с преобразованием. Можно представить, что и другие преобразования в схемах кодирования, такие как ААС, объединяются с CELP кодированием в CELP кодировщике 410.

Фиг.6В показывает многорежимный аудио декодировщик, соответствующий кодировщику на фиг.6а. Как показано на фиг.6В, декодировщик обычно обозначен цифрой 430 и настроен на получение декодированного представления 432 аудио контента на основе закодированного потока битов 434, в котором первое подмножество фреймов которого кодируется в CELP (обозначено цифрой "1" на фиг.6В), а второе подмножество фреймов использует кодирование с преобразованием (обозначено цифрой "2" на фиг.6В). Декодировщик 430 включает в себя CELP декодировщик 436 и декодировщик преобразования 438. Декодировщик CELP 436 включает в себя генератор возбуждения 440 и фильтр синтеза линейного предсказания 442.

CELP декодировщик 440 настроен на декодирование текущего фрейма первого подмножества. С этой целью генератор возбуждения 440 генерирует текущее возбуждение 444 для текущего фрейма путем построения кодовой таблицы возбуждения на основе предыдущего возбуждения 446 и индекса кодовой таблицы 448 для текущего фрейма первого подмножества в закодированный поток битов 434, и установку усиления кодовой таблицы возбуждения на основе значения общего усиления 450 в кодированном битовом потоке 434. Фильтр синтеза линейного предсказания настроен на фильтрацию текущего возбуждения 444 на основе коэффициентов фильтра линейного предсказания 452 из текущего фрейма в закодированный поток битов 434. После синтеза результат фильтрации передается или используется для получения декодированного представления 432 для фрейма, соответствующего текущему фрейму в потоке битов 434. Декодировщик преобразования 438 настроен на декодирование текущего фрейма второго подмножества фреймов путем построения спектральной информации 454 для текущего фрейма из второго подмножества из закодированного потока битов 434 и выполнения преобразования спектрально-временной области в спектральную информацию для получения сигнала во временной области такого, что уровень сигнала во временной области зависит от значения глобального коэффициента усиления 450. Как отмечалось выше, спектральная информация может быть спектром возбуждения в случае декодировщика преобразования, являющегося ТСХ декодирровщиком, или исходным аудио контентом в случае FD режима декодирования.

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

Например, декодировщик преобразования может быть сконфигурирован таким образом, что спектральная информация будет относиться к текущему возбуждению текущего фрейма, либо декодировщик преобразования 438 может быть сконфигурирован для декодирования текущего фрейма второго подмножества, формирования спектра текущего возбуждения текущего фрейма второго подмножества в соответствии с передаточной функцией фильтра синтеза линейного предсказания, определяемой коэффициентами фильтра линейного предсказания для текущего фрейма из второго подмножества в закодированный поток битов 434, так что выполнение преобразования спектрально-временной области в спектральную информацию приводит к декодированному представлению аудио контента 432. Другими словами, декодировщик преобразования 438 может быть выполнен в виде ТСХ кодировщика, как описано выше в связи с фиг.4, но такой вариант не является обязательным.

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

В варианте фиг.6А и 6В подчеркнуты выгодные аспекты воплощения фиг. с 1 по 4, связанные с усилением кодовой таблицы возбуждения, в соответствии с которым регулировка усиления CELP закодированного участка объединена с регулировкой усиления или возможностью контроля закодированного при преобразовании участка.

В следующем варианте, описанном на фиг.7А и 7В, интерес представляют CELP закодированные участки контента, описанные в вышеупомянутых вариантах, без необходимости использования другого режима кодирования. Если говорить более точно, концепция CELP кодирования, описанная со ссылкой на фиг.7А и 7В, реализована во втором варианте, описанном со ссылкой на фиг. с 1 по 4, в соответствии с которым управление усилением закодированных CELP данных осуществляется путем управления усилением во взвешивамой области для того, чтобы добиться подстройки усиления в декодированном воспроизведении с возможностью тонкой дискретизации, чего невозможно достичь при обычном использовании CELP. Кроме того, вычисление вышеупомянутого усиления во взвешивамой области может улучшить качество аудио.

На фиг.7А показан кодировщик, а на фиг.7В показан соответствующий декодировщик. Кодировщик CELP фиг.7а включает в себя LP анализатор 502, и генератор возбуждения 504, и определитель энергии 506. Анализатор линейного предсказания настроен на генерацию коэффициентов линейного предсказания 508 для текущего фрейма 510 из аудио контента 512 и кодирование коэффициентов фильтра линейного предсказания 508 в потоке битов 514. Генератор возбуждения 504 сконфигурирован для определения текущего возбуждения 516 для текущего фрейма 510, при суммировании 518 адаптивной кодовой таблицы возбуждения 520 и обновления кодовой таблицы возбуждения 522, после чего выполняется фильтрация в фильтре синтеза линейного предсказания на основе коэффициентов фильтра линейного предсказания 508, и восстанавливается текущий фрейм 510, путем построения адаптивной кодовой таблицы возбуждения 520 на этапе предыдущего возбуждения 524, получение индекса адаптивной кодовой таблицы 526 для текущего фрейма 510 и кодирование индекса адаптивной кодовой таблицы 526 в поток битов 514, формирование обновления кодовой таблицы возбуждения, определенной в соответствии с индексом обновленной кодовой таблицы 528 для текущего фрейма 510 и кодирование индекса обновленной кодовой таблицы в потоке битов 514.

Определитель энергии 506 выполнен с возможностью определения энергии версии аудио контента 512 для текущего фрейма 510, отфильтрованного во взвешивающем фильтре и полученного в результате анализа с линейным предсказанием для получения значения усиления 530, и кодирования значений усиления 530 в поток битов 514, взвешивающий фильтр проектируется в зависимости от коэффициентов линейного предсказания 508.

В соответствии с вышеописанным, генератор возбуждения 504 может быть сконфигурирован для построения адаптивной кодовой таблицы возбуждения 520 и обновления кодовой таблицы возбуждения 522, сведения к минимуму искажений восприятия, измеренных в аудио контенте 512. Кроме того, анализатор линейного предсказания 502 может быть сконфигурирован для определения коэффициентов фильтра линейного предсказания 508 на этапе анализа линейного предсказания, проведенного при оконной операции в соответствии с заданным фильтром предыскажений, и неискаженной версии аудио контента. Генератор возбуждения 504 может быть сконфигурирован для построения адаптивной кодовой таблицы возбуждения и обновления кодовой таблицы возбуждения, минимизации искажений восприятия при взвешивании, оцененной по отношению к аудио контенту с помощью взвешивающего фильтра восприятия: W(z)=A(z/γ), где γ является весовым коэффициентом восприятия, a A(z) равен 1/H(z), где H(z) является фильтром синтеза линейного предсказания, причем определитель энергии настроен на использование фильтра взвешивания восприятия в качестве весового фильтра. В частности, минимизация может быть выполнена с использованием взвешивания искажения восприятия, измеренного для аудио контента с помощью взвешивания восприятия в фильтре синтеза:

A ( z / γ ) A ^ ( z ) H e m p h ( z ) ,

где γ является взвешенным коэффициентом восприятия, Â(z) является квантованной версией фильтра синтеза линейного предсказания A(z), Hemph=1-αz-] и α является высокочастотным коэффициентом яркости восприятия, причем определитель энергии (506) настроен на использование фильтров взвешивания восприятия в качестве взвешивающего фильтра.

Кроме того, для поддержания синхронности между кодировщиком и декодировщиком генератор возбуждения 504 может быть сконфигурирован для выполнения обновления возбуждения следующим образом:

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

б) определяется соотношение между энергией, полученной таким образом, и энергией, определенной global_gain, для определения усиления предсказания g c ' ;

в) выполняется умножение усиления предсказания g c ' на поправочный коэффициент обновленной кодовой таблицы, т.е. вторичную информацию, содержащуюся в индексе обновленной кодовой таблицы, для получения фактического усиления обновленной кодовой таблицы;

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

На фиг.7В показан соответствующий CELP декодировщик, имеющий генератор возбуждения 450 и фильтр LP синтеза 452. Генератор возбуждения 440 может быть настроен для генерации текущего возбуждения 542 текущего фрейма 544 путем построения адаптивной кодовой таблицы возбуждения 546 на основе предыдущего возбуждения 548 и индекса адаптивной кодовой таблицы 550 для текущего фрейма 544 в потоке битов, формирования обновления кодовой таблицы возбуждения 552 с использованием индекса обновленной кодовой таблицы 554 для текущего фрейма 544 в потоке битов, вычисления оценочной энергии возбуждения обновленной кодовой таблицы, спектрально взвешенной во взвешивающем фильтре синтеза линейного предсказания Н2, полученном из коэффициентов фильтра линейного предсказания 556 в битовом потоке, установкой коэффициента усиления 558 обновления кодовой таблицы возбуждения 552 с использованием соотношения между значением усиления 560 в пределах битового потока и расчетной энергией, и суммирования адаптивной кодовой таблицы возбуждения и обновления кодовой таблицы возбуждения для получения текущего возбуждения 542. Фильтр синтеза линейного предсказания 542 фильтрует текущее возбуждение 542 с использованием коэффициентов фильтра линейного предсказания 556.

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

W ^ ( z ) A ^ ( z ) H e m p h ( z ) ,

где фильтр синтеза линейного предсказания настроен на фильтрацию текущего возбуждения 542 в соответствии с 1/Â(z), Ŵ(z)=Â(z/γ), γ является весовым коэффициентом восприятия, Hemph=1-αz-], а α является высокочастотным коэффициентом яркости восприятия, причем генератор возбуждения 440 дополнительно выполнен с возможностью вычисления квадратичной суммы выборок отфильтрованного обновления кодовой таблицы возбуждения для получения оценочной энергии.

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

Дальнейшие соображения по использованию LPD режима перечислены в следующем списке:

- улучшение качества с более точным соответствием статистических характеристик может быть достигнуто путем перехода от усиления VQ к ACELP с помощью нового способа регулировки усиления;

- кодирование общего усиления в ААС может быть изменено путем:

- кодирования в 6/7 битах вместо 8 бит, как это делается в ТСХ. Такой подход может работать для текущей рабочей точки, но могут существовать ограничения, если аудио вход имеет разрешение более 16 бит.

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

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

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

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

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

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

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

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

Таким образом, в соответствии с приведенными выше вариантами, унификация общего усиления USAC может работать следующим образом: в настоящее время существует 7-битное общее усиление для каждого ТСХ фрейма (с длинами 256, 512 или 1024 выборок), или, соответственно, 2-битное среднее значение энергии для каждого ACELP фрейма (с длиной 256 выборок). Существует не глобальное значение усиления для фрейма длиной 1024 выборки, в отличие от ААС фреймов. Для унификации этого, глобальное значение с 8 битами для фрейма длиной 1024 выборки может быть введено в TCX/ACELP участки, и соответствующие значения в TCX/ACELP фреймах могут быть закодированы независимо этого глобального значения. В связи с этим при дифференциальном кодировании количество битов для этих индивидуальных видов кодирования может быть уменьшено.

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

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

В зависимости от определенных требований к реализации, воплощения изобретения могут быть реализованы в аппаратном исполнении или в программном обеспечении. Реализация может быть выполнена с помощью цифрового носителя, например, дискеты, DVD, Blu-Ray, CD, ROM, PROM, EPROM, EEPROM и флэш-памяти, имеющих электронно-считываемые управляющие сигналы, хранящиеся на них, которые взаимодействуют (или способные взаимодействовать) с программируемой компьютерной системой таким образом, что соответствующий способ выполняется. Таким образом, цифровой носитель может быть машиночитаемым.

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

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

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

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

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

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

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

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

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

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

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

Похожие патенты RU2586841C2

название год авторы номер документа
МНОГОРЕЖИМНЫЙ ДЕКОДИРОВЩИК АУДИО СИГНАЛА, МНОГОРЕЖИМНЫЙ КОДИРОВЩИК АУДИО СИГНАЛОВ, СПОСОБЫ И КОМПЬЮТЕРНЫЕ ПРОГРАММЫ С ИСПОЛЬЗОВАНИЕМ КОДИРОВАНИЯ С ЛИНЕЙНЫМ ПРЕДСКАЗАНИЕМ НА ОСНОВЕ ОГРАНИЧЕНИЯ ШУМА 2010
  • Нуендорф Макс
  • Фуш Гильом
  • Реттелбах Николаус
  • Баекстроем Том
  • Лекомте Джереми
  • Херре Юрген
RU2591661C2
УСТРОЙСТВО АУДИО КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ДЛЯ КОДИРОВАНИЯ ФРЕЙМОВ, ПРЕДСТАВЛЕННЫХ В ВИДЕ ВЫБОРОК ЗВУКОВЫХ СИГНАЛОВ 2009
  • Лекомте Джереми
  • Гурней Филипп
  • Баер Стефан
  • Мультрус Маркус
  • Реттельбах Николаус
RU2498419C2
КОДЕР АУДИОСИГНАЛА, ДЕКОДЕР АУДИОСИГНАЛА, СПОСОБ КОДИРОВАНИЯ ИЛИ ДЕКОДИРОВАНИЯ АУДИОСИГНАЛА С УДАЛЕНИЕМ АЛИАСИНГА (НАЛОЖЕНИЯ СПЕКТРОВ) 2010
  • Бессетт Бруно
  • Нуендорф Макс
  • Гайгер Ральф
  • Гурней Филипп
  • Лефебвре Рох
  • Грилл Бернхард
  • Лекомте Джереми
  • Байер Стефан
  • Реттелбах Николаус
  • Виллемоес Ларс
  • Салами Редван
  • Бринкер Альбертус С. Ден
RU2591011C2
ПЕРЕКЛЮЧАЕМАЯ АУДИО КОДИРУЮЩАЯ/ДЕКОДИРУЮЩАЯ СХЕМА С МУЛЬТИРАЗРЕШЕНИЕМ 2009
  • Грилл Бернард
  • Байер Стефан
  • Фуш Гильом
  • Гейгер Ральф
  • Лекомте Джереми
  • Мультрус Маркус
  • Нюендорф Макс
  • Реттельбах Николаус
  • Гурней Филипп
  • Салами Рэдван
  • Робиллиард Жульен
  • Нагел Фредерик
RU2520402C2
КОДЕР АУДИОСИГНАЛА, ДЕКОДЕР АУДИОСИГНАЛА, СПОСОБ КОДИРОВАННОГО ПРЕДСТАВЛЕНИЯ АУДИОКОНТЕНТА, СПОСОБ ДЕКОДИРОВАННОГО ПРЕДСТАВЛЕНИЯ АУДИОКОНТЕНТА И КОМПЬЮТЕРНАЯ ПРОГРАММА ДЛЯ ПРИЛОЖЕНИЙ С МАЛОЙ ЗАДЕРЖКОЙ 2010
  • Гайгер Ральф
  • Шнелл Маркус
  • Лекомте Джереми
  • Шмидт Константин
  • Фуш Гильом
  • Реттельбах Николас
RU2596594C2
ЗВУКОВОЕ КОДИРУЮЩЕЕ УСТРОЙСТВО И ЗВУКОВОЕ ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО 2009
  • Мултрус Маркус
  • Грилл Бернхард
  • Фухс Гильом
  • Гейерсбергер Стефан
  • Реттелбах Николаус
  • Бачигалупо Вирджилио
RU2487427C2
УСТРОЙСТВО АУДИО КОДИРОВАНИЯ, УСТРОЙСТВО АУДИО ДЕКОДИРОВАНИЯ, МЕТОДЫ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ АУДИО-СИГНАЛА, АУДИО ПОТОК И КОМПЬЮТЕРНАЯ ПРОГРАММА 2009
  • Мультрус Маркус
  • Реттельбах Николаус
  • Грилл Бернхард
  • Фухс Гильом
  • Гейрсбергер Стефан
  • Попп Харальд
  • Херре Юрген
  • Вабник Стефан
  • Шуллер Геральд
  • Хиршфелд Йенс
RU2519069C2
НИЗКОСКОРОСТНАЯ АУДИОКОДИРУЮЩАЯ/ДЕКОДИРУЮЩАЯ СХЕМА С ОБЩЕЙ ПРЕДВАРИТЕЛЬНОЙ ОБРАБОТКОЙ 2009
  • Грилл Бернхард
  • Баер Стефан
  • Фуш Гильом
  • Гейерсбергер Стефан
  • Гейгер Ральф
  • Хилперт Йоханнес
  • Краемер Ульрих
  • Лекомте Джереми
  • Мултрус Маркус
  • Нуендорф Макс
  • Попп Харальд
  • Реттелбах Николаус
  • Нагель Фредерик
  • Диш Саша
  • Херре Юрген
  • Йокотани Йошиказу
  • Вабник Стефан
  • Шуллер Геральд
  • Хиршфелд Йенс
RU2483365C2
ЗВУКОВОЕ КОДИРУЮЩЕЕ УСТРОЙСТВО И ДЕКОДЕР ДЛЯ КОДИРОВАНИЯ ДЕКОДИРОВАНИЯ ФРЕЙМОВ КВАНТОВАННОГО ЗВУКОВОГО СИГНАЛА 2009
  • Гейгер Ральф
  • Грилл Бернхард
  • Бессет Брюно
  • Гоурнай Филипп
  • Фухс Гильом
  • Мултрус Маркус
  • Нуендорф Макс
  • Шуллер Геральд
RU2507572C2
АУДИОКОДЕР И АУДИОДЕКОДЕР ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ОТСЧЕТОВ АУДИОСИГНАЛА 2009
  • Лекомте Джереми
  • Гурней Филипп
  • Баер Стефан
  • Мультрус Маркус
  • Бессетте Бруно
  • Грилл Бернхард
RU2515704C2

Иллюстрации к изобретению RU 2 586 841 C2

Реферат патента 2016 года МНОГОРЕЖИМНЫЙ АУДИО КОДИРОВЩИК И CELP КОДИРОВАНИЕ, АДАПТИРОВАННОЕ К НЕМУ

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

Формула изобретения RU 2 586 841 C2

1. Многорежимный аудио декодировщик (120, 320) для формирования декодированного представления (322) аудио контента (24, 302) на основе закодированного потока битов (36, 304), настроенный на декодирование значения коэффициента общего усиления в фрейме (324, 326) из закодированного потока битов (36, 304), причем первое подмножество (324) фреймов кодируется в первом режиме кодирования, а второе подмножество (326) фреймов кодируется во втором режиме кодирования, причем каждый фрейм второго подмножества состоит более чем из одного подфрейма (328), декодирование, для подфрейма, состоящего, по крайней мере, из подмножества подфреймов (328) второго подмножества фреймов, соответствующего элемента битового потока независимо от значения глобального коэффициента усиления соответствующего фрейма и завершающее декодирование битового потока (36, 304) с использованием значения коэффициента общего усиления и соответствующего элемента битового потока при декодировании подфреймов из подмножества подфреймов (328) второго подмножества фреймов и значения коэффициента общего усиления при декодировании первого подмножества фреймов, причем многорежимный аудио декодировщик настроен таким образом, что изменение значения общего коэффициента усиления фреймов в закодированном потоке битов (36, 304) приводит к корректировке (330) уровня выходного сигнала (332) в декодированном представлении (322) аудио контента (24, 302).

2. Многорежимный аудио декодировщик по п.1, в котором первый режим кодирования является режимом кодирования в частотной области, а второй режим кодирования является режимом кодирования с линейным предсказанием.

3. Многорежимный аудио декодировщик по п.2, где многорежимный аудио декодировщик настроен для завершения декодирования закодированных битов (36, 304), декодирования подфреймов из подмножества подфреймов (328) второго подмножества фреймов (310) с помощью декодирования с преобразованием возбуждения линейного предсказания и декодирования непересекающегося подмножества подфреймов второго подмножества фреймов с использованием линейного предсказания с мультикодовым управлением (CELP).

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

5. Многорежимный аудио декодировщик по п.1, в котором фреймы второго подмножества имеют одинаковую длину, и по крайней мере подмножество подфреймов (328) второго подмножества фреймов имеет различную длину выборки из значений в 256, 512 и 1024 выборки, и непересекающееся подмножество подфреймов (328) имеет выборку с длиной 256 выборок.

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

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

8. Многорежимный аудио декодировщик для формирования декодированного представления (432) аудио контента на основе закодированного потока битов (434), первое подмножество фреймов которого закодировано в CELP, а второе подмножество фреймов которого закодировано с помощью преобразования, включающий CELP декодировщик (436), настроенный для декодирования текущего фрейма из первого подмножества, CELP декодировщик, содержащий генератор возбуждения (440), настроенный на генерацию текущего возбуждения (444) текущего фрейма из первого подмножества путем построения кодовой таблицы возбуждения на основе предыдущего возбуждения (446) и индекса кодовой таблицы (448) текущего фрейма из первого подмножества в закодированный поток битов и установку усиления кодовой таблицы возбуждения на основе значения общего усиления (450) в закодированном потоке битов (434), и фильтр синтеза линейного предсказания (442), настроенный на фильтрацию текущего возбуждения (444) на основе коэффициентов фильтра линейного предсказания (452) для текущего фрейма из первого подмножества в закодированном потоке битов; декодировщик преобразования (438), настроенный на декодирование текущего фрейма из второго подмножества с помощью построения спектральной информации для текущего фрейма второго подмножества из закодированных битов (434) и выполнения преобразования из временной в спектральную область над спектральной информацией для получения сигнала во временной области таким образом, что уровень сигнала во временной области зависит от значения общего усиления (450).

9. Многорежимный аудио декодировщик по п.8, в котором генератор возбуждения (440) настроен на генерацию текущего возбуждения (444) текущего фрейма из первого подмножества, построение адаптивной кодовой таблицы возбуждения на основе предыдущего возбуждения и индекса адаптивной кодовой таблицы для текущего фрейма из первого подмножества в закодированном потоке битов; построение обновления кодовой таблицы возбуждения на основе индекса обновления кодовой таблицы для текущего фрейма из первого подмножества в закодированном потоке битов; установку, в качестве усиления кодовой таблицы возбуждения, значения усиления обновления кодовой таблицы возбуждения на основе значения общего усиления (450) в закодированном потоке битов; а также суммирование адаптивной кодовой таблицы возбуждения и обновления кодовой таблицы возбуждения для получения текущего возбуждения (444) текущего фрейма из первого подмножества.

10. Многорежимный аудио декодировщик по п.8, в котором декодировщик преобразования (438) настроен таким образом, что спектральная информация относится к текущему возбуждению текущего фрейма из второго подмножества, кроме того, декодировщик преобразования (438) дополнительно выполняет декодирование текущего фрейма из второго подмножества, формирует спектр текущего возбуждения текущего фрейма из второго подмножества в соответствии с передаточной функцией фильтра синтеза линейного предсказания, определяемой коэффициентами фильтра линейного предсказания (454) для текущего фрейма из второго подмножества в закодированном потоке битов (434), так что выполнение преобразования из временной в спектральную область над спектральной информацией в результате приводит к декодированному представлению (432) аудио контента (302, 402).

11. Многорежимный аудио декодировщик по п.10, в котором декодировщик преобразования (438) настроен для выполнения формирования спектра путем преобразования коэффициентов фильтра линейного предсказания (454) в спектр линейного предсказания и взвешивания спектральной информации текущего возбуждения со спектром линейного предсказания.

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

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

14. CELP декодировщик, включающий генератор возбуждения (540), настроенный на генерацию текущего возбуждения (542) для текущего фрейма потока битов (544) с помощью построения адаптивной кодовой таблицы возбуждения (546) на основе предыдущего возбуждения (548) и индекса адаптивной кодовой таблицы (550) для текущего фрейма в потоке битов (544); построения обновления кодовой таблицы возбуждения (552) на основе индекса обновления кодовой таблицы (554) для текущего фрейма в потоке битов (544); вычисления оценочного значения энергии обновления кодовой таблицы возбуждения (546), спектрально взвешенного с помощью взвешивающего фильтра синтеза линейного предсказания, построенного на основе коэффициентов фильтра линейного предсказания (556) в пределах битового потока (36, 134, 304, 514); установку усиления для обновления кодовой таблицы возбуждения (552) на основе соотношения между значением глобального коэффициента усиления (560) в пределах битового потока (544) и оценочным значением энергии; а также суммирование адаптивной кодовой таблицы возбуждения (546) и обновление кодовой таблицы возбуждения (552) для получения текущего возбуждения (542); и фильтр синтеза линейного предсказания (542), настроенный на фильтрацию текущего возбуждения (542) на основе коэффициентов фильтра линейного предсказания (556).

15. CELP декодировщик по п.14, в котором генератор возбуждения (60, 66, 146, 416, 440, 444, 540) настроен на построение адаптивной кодовой таблицы возбуждения (556, 520, 546), фильтрацию предыдущего возбуждения (420, 446, 524, 548) в зависимости от индекса адаптивной кодовой таблицы (526, 550, 546, 556).

16. CELP декодировщик по п.14, в котором генератор возбуждения (540) настроен на построение обновления кодовой таблицы возбуждения (552) таким образом, что последняя содержит нулевой вектор с числом ненулевых импульсов, количество и позиции которых указываются с помощью индексов обновления кодовой таблицы (554).

17. CELP декодировщик по п.14, в котором генератор возбуждения (540) при расчете оценочного значения энергии обновления кодовой таблицы возбуждения (552) настроен на фильтрацию, определяемую выражением
,
где фильтр синтеза линейного предсказания настроен на фильтрацию текущего возбуждения (542) в зависимости 1/Â(z), Ŵ(z)=Â(z/γ), а γ является весовым коэффициентом восприятия, Hemph=1-αz-1, и α является высокочастотным коэффициентом яркости восприятия, причем генератор возбуждения (540) дополнительно имеет возможность вычисления квадратичной суммы выборок отфильтрованного обновления кодовой таблицы возбуждения для получения оценочного значения энергии.

18. CELP декодировщик по п.14, где генератор возбуждения (540) настроен на формирование, при суммировании адаптивной кодовой таблицы возбуждения (546) и обновлении кодовой таблицы возбуждения (552), взвешенной суммы адаптивной кодовой таблицы возбуждения (546), взвешенной с весовым коэффициентом в зависимости от индекса адаптивной кодовой таблицы (550), и формирование обновления кодовой таблицы возбуждения (552), взвешенного с усилением.

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

20. Многорежимный аудио кодировщик, настроенный на кодирование аудио контента (302) в закодированный поток битов (304) с кодированием первого подмножества фреймов (306) в первом режиме кодирования (308) и второго подмножества фреймов (310) во втором режиме кодирования (312), причем второе подмножество фреймов (310) будет состоять соответственно из одного или нескольких подфреймов (314), причем многорежимный аудио кодировщик настроен на определение и кодирование значения общего усиления фрейма и определение и кодирование, для подфреймов из подмножества подфреймов (314) во втором подмножестве (310), соответствующего элемента битового потока независимо от значения коэффициента глобального усиления соответствующих фреймов, причем многорежимный аудио кодировщик настроен таким образом, что изменение значения коэффициента общего усиления фреймов в закодированном потоке битов в результате позволяет регулировать выходной уровень декодированного представления аудио контента (302) в декодировщике.

21. Многорежимный аудио кодировщик для кодирования аудио контента (402) в закодированный поток битов (404) с помощью CELP кодирования первого подмножества фреймов (406) аудио контента (402) и кодирования с помощью преобразования второго подмножества фреймов (408), многорежимный аудио кодировщик, включающий: CELP кодировщик, настроенный для кодирования текущего фрейма первого подмножества, CELP кодировщик, содержащий анализатор линейного предсказания (414), настроенный для создания коэффициентов фильтра линейного предсказания (418) для текущего фрейма из первого подмножества и кодирования его в закодированный поток битов (404); и генератор возбуждения (416), сконфигурированный для определения текущего возбуждения (422) текущего фрейма из первого подмножества, который выполняет фильтрацию с помощью фильтра синтеза линейного предсказания на основе коэффициентов фильтра линейного предсказания (418) в пределах закодированного потока битов (404), восстанавливает текущий фрейм первого подмножества, определяемый предыдущим возбуждением (420) и индексом кодовой таблицы (422) для текущего фрейма из первого подмножества, и кодирования индекса кодовой таблицы (422) в закодированный поток битов (404); и кодировщик преобразования (412), настроенный на кодирование текущего фрейма второго подмножества путем выполнения преобразования из спектральной во временную область сигнала для текущего фрейма из второго подмножества для получения спектральной информации (424) и кодирования спектральной информации в закодированный битовый поток (404), причем многорежимный аудио кодировщик настроен на кодирование значения общего усиления (426) в закодированный поток битов (404), значения коэффициента общего усиления в зависимости от энергии версии аудио контента (402) для текущего фрейма первого подмножества, на фильтрацию с помощью фильтра анализа линейного предсказания в зависимости от коэффициентов линейного предсказания (418) или энергии сигнала во временной области.

22. CELP кодировщик, содержащий анализатор линейного предсказания (502), настроенный на получение коэффициентов фильтра линейного предсказания (508) для текущего фрейма (510) аудио контента (512) и кодирование коэффициентов фильтра линейного предсказания (508) в потоке битов (514); генератор возбуждения (504), сконфигурированный для определения текущего возбуждения (516) текущего фрейма (510) в виде суммы адаптивной кодовой таблицы возбуждения (520) и обновления кодовой таблицы возбуждения (522), которое, в процессе фильтрации с помощью фильтра синтеза линейного предсказания на основе коэффициентов фильтра линейного предсказания (508), восстанавливает текущий фрейм (510), путем построения адаптивной кодовой таблицы возбуждения (520), определяемой предыдущим возбуждением (524) и индексом адаптивной кодовой таблицы (526) для текущего фрейма (510), и кодирования индекса адаптивной кодовой таблицы (526) в потоке битов (514); и построения обновления кодовой таблицы возбуждения (522), определяемого индексом обновленной кодовой таблицы (528) для текущего фрейма (510), и кодирования индекса обновленной кодовой таблицы (528) в потоке битов (514); и определитель энергии (506), сконфигурированный для определения энергии версии аудио контента текущего фрейма, отфильтрованного фильтром взвешивания, и получения значения общего усиления (530) и кодирования значения общего усиления (530) в потоке битов (514), взвешивающий фильтр определяется коэффициентами фильтра линейного предсказания (508).

23. CELP кодировщик по п.22, отличающийся тем, что анализатор линейного предсказания (502) настроен на определение коэффициентов фильтра линейного предсказания (508) с помощью анализа линейного предсказания, проведенного при оконной операции, и получение, в соответствии с заданным фильтром предыскажений, предыскаженной версии аудио контента (512).

24. CELP кодировщик по п.22, в котором генератор возбуждения (504) настроен, при построении адаптивной кодовой таблицы возбуждения (520) и обновлении кодовой таблицы возбуждения (522), на минимизацию взвешенного искажения восприятия по отношению к аудио контенту (512).

25. CELP кодировщик по п.22, в котором генератор возбуждения (504) настроен, при построении адаптивной кодовой таблицы возбуждения (520) и обновлении кодовой таблицы возбуждения (522), на минимизацию взвешенного искажения восприятия по отношению к аудио контенту (512) с использованием фильтра взвешивания качества восприятия
W(z)=A(z/γ),
где γ является взвешивающим коэффициентом восприятия, A(z) равен 1/H(z), где H(z) фильтра синтеза линейного предсказания, и при этом определитель энергии (506) настроен на использование фильтров взвешивания качества восприятия в качестве взвешивающего фильтра.

26. CELP кодировщик по п.22, в котором генератор возбуждения (504) настроен на выполнение обновления возбуждения для получения предыдущего возбуждения для следующего фрейма путем определения энергии результата фильтрации и энергетической оценки обновления кодовой таблицы возбуждения с помощью фильтрации вектора обновления кодовой таблицы, определяемого первичной информацией, содержащейся в индексе обновления кодовой таблицы (522), следующим образом
,
где 1/Â(z) есть фильтр синтеза линейного предсказания, зависящий от коэффициентов фильтра линейного предсказания, Ŵ(z)=Â(z/γ), а γ является взвешивающим коэффициентом восприятия, и α является высокочастотным коэффициентом яркости восприятия; формирование соотношения между оценочной энергией обновления кодовой таблицы возбуждения и энергией, определяемой значением общего коэффициента усиления, для получения усиления предсказания; умножение усиления предсказания на коэффициент коррекции обновления кодовой таблицы, содержащийся в индексе обновления кодовой таблицы (522) в качестве вторичной информации, для получения фактического усиления обновления кодовой таблицы; и фактическую генерацию предыдущего возбуждения для следующего фрейма путем суммирования адаптивной кодовой таблицы возбуждения (520) и обновления кодовой таблицы возбуждения (522) при взвешивании последнего с фактическим усилением обновления кодовой таблицы.

27. Способ многорежимного аудио декодирования для получения декодированного представления (322) аудио контента (24, 302) на основе закодированного потока битов (36, 304), включающий в себя декодирование значения коэффициента общего усиления в фрейме (324, 326) из закодированных битов (36, 304), причем первое подмножество (324) фреймов кодируется в первом режиме кодирования, второе подмножество (326) фреймов кодируется во втором режиме кодирования, и каждый фрейм второго подмножества состоит более чем из одного подфрейма (328), декодирование подфрейма из подмножества подфреймов (328) второго подмножества фреймов, соответствующего элемента битового потока независимо от значения коэффициента глобального усиления соответствующего фрейма, и завершение декодирования битового потока (36, 304) с использованием значения коэффициента общего усиления и соответствующего элемента битового потока при декодировании фреймов из подмножества подфреймов (328) второго подмножества фреймов и значения общего коэффициента усиления при декодировании первого подмножества фреймов, причем многорежимное аудио декодирование выполняется таким образом, что изменение значения коэффициента общего усиления фреймов в закодированном потоке битов (36, 304) приводит к корректировке (330) уровня выходного сигнала (332) декодированного представления (322) аудио контента (24, 302).

28. Способ многорежимного аудио декодирования для обеспечения декодированного представления (432) аудио контента на основе закодированного потока битов (434), первое подмножество фреймов которого закодировано в режиме CELP, а второе подмножество фреймов закодировано путем преобразования, включающий в себя CELP декодирование текущего фрейма первого подмножества, CELP декодировщик, включающий генерирование текущего возбуждения (444) текущего фрейма первого подмножества путем построения кодовой таблицы возбуждения на основе предыдущего возбуждения (446) и индекса кодовой таблицы (448) текущего фрейма первого подмножества в пределах закодированного потока битов и установки усиления кодовой таблицы возбуждения на основе значения общего усиления (450) в закодированном потоке битов (434); и фильтрацию текущего возбуждения (444) на основе коэффициентов фильтра линейного предсказания (452) для текущего фрейма первого подмножества в закодированном потоке битов; декодирование преобразования текущего фрейма второго подмножества путем построения спектральной информации для текущего фрейма второго подмножества из закодированного потока битов (434) и выполнения преобразования из спектральной во временную область над спектральной информацией и получения сигнала во временной области так, что уровень сигнала во временной области зависит от значения общего усиления (450).

29. Способ CELP декодирования, включающий генерирование текущего возбуждения (542) для текущего фрейма битового потока (544) путем построения адаптивной кодовой таблицы возбуждения (546) на основе предыдущего возбуждения (548) и индекса адаптивной кодовой таблицы (550) для текущего фрейма в потоке битов (544); построения обновления кодовой таблицы возбуждения (552) на основе индекса обновления кодовой таблицы (554) для текущего фрейма в потоке битов (544); вычисления оценочного значения энергии обновления кодовой таблицы возбуждения, (546) спектрально взвешенного с помощью взвешивающего фильтра синтеза линейного предсказания, построенного из коэффициентов фильтра линейного предсказания (556) в пределах битового потока (36, 134, 304, 514); установку усиления обновления кодовой таблицы возбуждения (552) на основе соотношения между значением глобального коэффициента усиления (560) в пределах битового потока (544) и оценочным значением энергии, а также суммирование адаптивной кодовой таблицы возбуждения (546) и обновление кодовой таблицы возбуждения (552) для получения текущего возбуждения (542) и фильтрации текущего возбуждения (542) на основе коэффициентов фильтра линейного предсказания (556), полученных фильтром синтеза линейного предсказания (542).

30. Способ многорежимного аудио декодирования содержащегося закодированного аудио контента (302) в закодированном потоке битов (304) с кодированием первого подмножества фреймов (306) в первом режиме кодирования (308) и второго подмножества фреймов (310) во втором режиме кодирования (312), причем второе подмножество фреймов (310) будет соответственно состоять из одного или нескольких подфреймов (314), причем способ многорежимного аудио кодирования дополнительно содержит определение и кодирование значения общего усиления фрейма, и определение и кодирование для подфреймов из подмножества подфреймов (314) второго подмножества (310), соответствующего элемента битового потока независимо от значения глобального коэффициента усиления соответствующих фреймов, причем способ многорежимного аудио кодирования выполняется так, что изменение значения коэффициента общего усиления фреймов в закодированном потоке битов в результате позволяет регулировать выходной уровень декодированного представления аудио контента (302) в декодировщике.

31. Способ многорежимного аудио кодирования для кодирования аудио контента (402) в закодированный поток битов (404) в режиме CELP кодирования первого подмножества фреймов (406) аудио контента (402) и в режиме кодирования путем преобразования второго подмножества фреймов (408), многорежимное аудио кодирование, включающее кодирование текущего фрейма первого подмножества, CELP кодировщик, содержащий выполнение анализа линейного предсказания для получения коэффициентов фильтра линейного предсказания (418) для текущего фрейма первого подмножества и кодирование его в закодированный поток битов (404); и определение текущего возбуждения (422) текущего фрейма первого подмножества, которое при фильтрации с помощью фильтра синтеза линейного предсказания на основе коэффициентов фильтра линейного предсказания (418) в закодированном потоке битов (404) восстанавливает текущий фрейм первого подмножества, определяемый предыдущим возбуждением (420) и индексом кодовой таблицы (422) для текущего фрейма из первого подмножества, и кодирование индекса кодовой таблицы (422) в закодированный поток битов (404); и кодирование текущего фрейма второго подмножества путем выполнения преобразования сигнала из спектральной во временную область для текущего фрейма из второго подмножества для получения спектральной информации (424) и кодирование спектральной информации в закодированном битовом потоке (404), причем способ многорежимного аудио кодирования дополнительно включает кодирование значения общего усиления (426) в закодированном потоке битов (404), значения коэффициента общего усиления в зависимости от энергии версии аудио контента (402) текущего фрейма из первого подмножества, отфильтрованной в фильтре анализа линейного предсказания в зависимости от коэффициентов линейного предсказания (418), или энергии сигнала во временной области.

32. Способ CELP кодирования, содержащий выполнение анализа линейного предсказания для создания коэффициентов фильтра линейного предсказания (508) для текущего фрейма (510) аудио контента (512) и кодирование коэффициентов фильтра линейного предсказания (508) в потоке битов (514); определение текущего возбуждения (516) текущего фрейма (510) как сумму адаптивной кодовой таблицы возбуждения (520) и обновление кодовой таблицы возбуждения (522), которая при фильтрации с помощью фильтра синтеза линейного предсказания на основе коэффициентов фильтра линейного предсказания (508) восстанавливает текущий фрейм (510), путем построения адаптивной кодовой таблицы возбуждения (520), определяемой предыдущим возбуждением (524) и индексом адаптивной кодовой таблицы (526) для текущего фрейма (510), и кодирования индекса адаптивной кодовой таблицы (526) в потоке битов (514); и построения обновления кодовой таблицы возбуждения (522), определяемого индексом обновления кодовой таблицы (528) для текущего фрейма (510), и кодирования индекса обновления кодовой таблицы (528) в потоке битов (514); и определение энергии версии аудио контента текущего фрейма при фильтрации во взвешивающем фильтре для получения значения общего усиления (530) и кодирование значения общего усиления (530) в потоке битов (514), взвешивающий фильтр, определяемый коэффициентами фильтра линейного предсказания (508).

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

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

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

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

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

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

Документы, цитированные в отчете о поиске Патент 2016 года RU2586841C2

Пресс для выдавливания из деревянных дисков заготовок для ниточных катушек 1923
  • Григорьев П.Н.
SU2007A1
Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок 1923
  • Григорьев П.Н.
SU2008A1
УСТАНОВКА ДЛЯ НАСАДКИ ПАКОВОК НА НОСИТЕЛЬ 1993
  • Егоров В.С.
  • Парачев К.С.
  • Уханков В.Г.
  • Чечетов В.А.
RU2051244C1
Пломбировальные щипцы 1923
  • Громов И.С.
SU2006A1
МНОГОРЕЖИМНОЕ УСТРОЙСТВО КОДИРОВАНИЯ 2000
  • Гао Янг
  • Беняссине Адиль
  • Тюссен Ес
  • Шоломот Эял
  • Су Хуан-Ю
RU2262748C2

RU 2 586 841 C2

Авторы

Гайгер Ральф

Фуш Гильом

Мултрус Маркус

Грилл Бернхард

Даты

2016-06-10Публикация

2010-10-19Подача