УСТРОЙСТВО И СПОСОБ ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ АУДИОСИГНАЛА С ИСПОЛЬЗОВАНИЕМ ПОНИЖАЮЩЕЙ ДИСКРЕТИЗАЦИИ ИЛИ ИНТЕРПОЛЯЦИИ МАСШТАБНЫХ ПАРАМЕТРОВ
APPARATUS AND METHOD FOR ENCODING AND DECODING AN AUDIO SIGNAL USING DOWNSAMPLING OR INTERPOLATION OF SCALE PARAMETERS

Настоящее изобретение относится к аудиообработке и, в частности, к аудиообработке, работающей в спектральной области с использованием масштабных параметров для спектральных полос.
Известный уровень техники 1: Усовершенствованное кодирование звука (AAC)
В одном из наиболее широко применяемых современных перцептуальных аудиокодеков, усовершенствованном кодировании звука (AAC) [1-2], спектральное формирование шума выполняется с помощью, так называемых, масштабных коэффициентов.
При данном подходе, спектр MDCT (модифицированного дискретного косинусного преобразования) разбивается на множество неравномерных полос масштабных коэффициентов. Например, при 48 кГц, MDCT содержит 1024 коэффициентов, и оно разбивается на 49 полос масштабных коэффициентов. В каждой полосе, масштабный коэффициент используется для масштабирования коэффициентов MDCT данной полосы. Затем используется скалярный квантователь с постоянным размером шага для квантования масштабированных коэффициентов MDCT. На стороне декодера, в каждой полосе выполняется обратное масштабирование, с формированием шума квантования, внесенного скалярным квантователем.
49 масштабных коэффициентов кодируются в поток битов в виде побочной информации. Для кодирования масштабных коэффициентов требуется, обычно, очень большое количество бит вследствие относительно большого числа масштабных коэффициентов и необходимой высокой точности. Это может стать проблемой при низком битрейте (скорости передачи битов) и/или при низкой задержке.
Известный уровень техники 2: Кодирование TCX на основе MDCT
При кодировании TCX (кодировании с преобразованием кодированного возбуждения) на основе MDCT, в основанном на преобразовании аудиокодеке, используемом в стандартах MPEG-D USAC (унифицированное кодирование речи и звука) [3] и 3GPP EVS [4], спектральное формирование шума выполняется с помощью перцептуального фильтра на основе LPC (кодирования с линейным предсказанием), подобного перцептуальному фильтру, который используется в речевых кодеках на основе ACELP (кодирования с использованием линейного предсказания с возбуждением по алгебраической кодовой книге) (например, AMR-WB (широкополосного адаптивного кодирования с переменной скоростью)).
При данном подходе, набор из 16 коэффициентов LPC сначала оценивается по входному сигналу с предыскажениями. Затем коэффициенты LPC взвешиваются и квантуются. После этого, вычисляется частотная характеристика взвешенных и квантованных коэффициентов LPC в 64 равномерно распределенных полосах. Затем коэффициенты MDCT масштабируются в каждой полосе с использованием вычисленной частотной характеристики. Затем масштабированные коэффициенты MDCT квантуются с использованием скалярного квантователя с размером шага, управляемым глобальным усилением. В декодере выполняется обратное масштабирование во всех 64 полосах, с формированием шума квантования, вносимого скалярным квантователем.
Данный подход имеет очевидное преимущество над подходом AAC: он требует кодирования только 16 (коэффициенты LPC) + 1 (глобальное усиление) параметров в качестве побочной информации (в противоположность 49 параметрам в AAC). Более того, 16 коэффициентов LPC можно эффективно кодировать небольшим числом бит с использованием представления LSF (частот спектральных линий) и векторного квантователя. И наоборот, подход известного уровня техники 2 требует меньше бит побочной информации по сравнению с подходом известного уровня техники 1, что может создать большое отличие при низком битрейте и/или низкой задержке.
Однако, данный подход также имеет некоторые недостатки. Первым недостатком является то, что шкала частот формирования шума ограничена требованием линейности (т.е. использованием равномерно распределенных полос), так как коэффициенты LPC оцениваются во временной области. Это неблагоприятно потому, что человеческое ухо является более чувствительным к низким частотам, чем к высоким частотам. Вторым недостатком является высокая сложность, необходимая для данного похода. Оценка коэффициентов LPC (автокорреляция, алгоритм Левинсона-Дурбина), квантование коэффициентов LPC (преобразование LPC<->LSF, векторное квантование) и вычисление частотной характеристики LPC являются затратными операциями. Третий недостаток состоит в том, что данный подход не особенно гибок потому, что перцептуальный фильтр на основе LPC невозможно легко модифицировать, и это препятствует некоторым конкретным настройкам, которые могли бы потребоваться для критических аудиофрагментов.
Известный уровень техники 3: Усовершенствованное TCX на основе MDCT
Некоторые недавние работы касались устранения первого недостатка и, частично, второго недостатка известного уровня техники 2. Результаты опубликованы в патентах US 9595262 B2, EP2676266 B1. В данном новом подходе, автокорреляция (для оценки коэффициентов LPC) больше не выполняется во временной области, а вычисляется в области MDCT с использованием обратного преобразования энергий коэффициентов MDCT. Это допускает использование неравномерной шкалы частот посредством простой группировки коэффициентов MDCT в 64 неравномерным полосах и вычисление энергии каждой полосы. Это также снижает необходимую сложность вычисления автокорреляции.
Однако, большая часть второго недостатка и третий недостаток остаются, даже при использовании нового подхода.
Целью настоящего изобретения является создание улучшенного решения для обработки аудиосигнала.
Данная цель достигается с помощью устройства для кодирования аудиосигнала по п. 1, способа кодирования аудиосигнала по п. 24, устройства для декодирования кодированного аудиосигнала по п. 25, способа декодирования кодированного аудиосигнала по п. 40 или компьютерной программы по п. 41.
Устройство для кодирования аудиосигнала содержит преобразователь для преобразования аудиосигнала в спектральное представление. Кроме того, обеспечен вычислитель масштабных параметров для вычисления первого набора масштабных параметров по спектральному представлению. Дополнительно, для сведения битрейта к минимуму, выполняется понижающая дискретизация первого набора масштабных параметров, чтобы получить второй набор масштабных параметров, при этом второе число масштабных параметров во втором наборе масштабных параметров меньше первого числа масштабных параметров в первом наборе масштабных параметров. Кроме того, обеспечен кодер масштабных параметров для формирования кодированного представления второго набора масштабных параметров в дополнение к спектральному процессору для обработки спектрального представления с использованием третьего набора масштабных параметров, причем третий набор масштабных параметров содержит третье число масштабных параметров, которое больше второго числа масштабных параметров. В частности, спектральный процессор сконфигурирован с возможностью использования первого набора масштабных параметров или вывода третьего набора масштабных параметров из второго набора масштабных параметров или из кодированного представления второго набора масштабных параметров с использованием операции интерполяции, чтобы получить кодированное представление спектрального представления. Кроме того, обеспечен интерфейс вывода для формирования кодированного выходного сигнала, содержащем информацию о кодированном представлении спектрального представления, а также содержащем информацию о кодированном представлении второго набора масштабных параметров.
Настоящее изобретение основано на полученных данных, что низкий битрейт без значительного снижения качества можно получить масштабированием на стороне кодера, с увеличенным числом масштабных коэффициентов и посредством понижающей дискретизации масштабных параметров на стороне кодера до второго набора масштабных параметров или масштабных коэффициентов, где второе число масштабных параметров во втором наборе, который после этого кодируется и передается или сохраняется через интерфейс вывода, меньше первого числа масштабных параметров. Таким образом, на стороне кодера получают детальное масштабирование, с одной стороны, и низкий битрейт, с другой стороны.
На стороне декодера, переданное небольшое число масштабных коэффициентов декодируется декодером масштабных коэффициентов, чтобы получить первый набор масштабных коэффициентов, при этом число масштабных коэффициентов или масштабных параметров в первом наборе больше числа масштабных коэффициентов или масштабных параметров второго набора, и, затем снова, на стороне декодера, в спектральном процессоре выполняется детальное масштабирование с использованием большего числа масштабных параметров, чтобы получить детально масштабированное спектральное представление.
Таким образом, получают низкий битрейт, с одной стороны, и, тем не менее, высококачественную спектральную обработку спектра аудиосигнала, с другой стороны.
Спектральное формирование шума, выполняемое в предпочтительных вариантах осуществления, осуществляется с использованием только очень низкого битрейта. Таким образом, данное спектральное формирование шума может быть существенно важным инструментом даже в низкоскоростном аудиокодеке на основе преобразования. Спектральное формирование шума формирует шум квантования в частотной области таким образом, что шум квантования минимально воспринимается человеческим ухом, и, следовательно, можно максимально повысить перцептуальное качество декодированного выходного сигнала.
Предпочтительные варианты осуществления основаны на спектральных параметрах, вычисленных по связанным с амплитудой показателям, например, энергиям спектрального представления. В частности, энергии в полосах или, в общем, связанные с амплитудой показатели в полосах вычисляются как основа для масштабных параметров, при этом значения ширины полос, используемые при вычислении связанных с амплитудой показателей в полосах, увеличиваются от низких к более высоким полосам, чтобы получить, насколько возможно, характеристику слышимости человеческого уха. Разбиение спектрального представления на полосы предпочтительно выполняется в соответствии с общеизвестной шкалой Барка.
В дополнительных вариантах осуществления, вычисляются масштабные параметры в линейной области и вычисляются, в частности, для первого набора масштабных параметров с большим числом масштабных параметров, и данное большое число масштабных параметров преобразуется в логарифмическую область. Логарифмическая область является, в общем, областью, в которой небольшие значения увеличиваются, и высокие значения сжимаются. Затем выполняется операция понижающей дискретизации или прореживания масштабных параметров в логарифмической области, которая может быть логарифмической областью по основанию 10 или логарифмической областью по основанию 2, при этом последняя является предпочтительной для осуществления. Затем вычисляется второй набор масштабных коэффициентов в логарифмической области и, предпочтительно, выполняется векторное квантование второго набора масштабных коэффициентов, при этом масштабные коэффициенты находятся в логарифмической области. Таким образом, результат векторного квантования показывает масштабные параметры логарифмической области. Второй набор масштабных коэффициентов или масштабных параметров содержит, например, число масштабных коэффициентов, составляющее половину от числа масштабных коэффициентов первого набора, или даже одну треть или даже, предпочтительнее, одну четверть. Затем, квантованное небольшое число масштабных параметров во втором наборе масштабных параметров переносится в поток битов и затем передается со стороны кодера на сторону декодера или сохраняется как кодированный аудиосигнал вместе с квантованным спектром, который также был обработан с использованием этих параметров, при этом данная обработка дополнительно включает в себя квантование с использованием глобального усиления. Однако, кодер предпочтительно снова выводит из упомянутых квантованных вторых масштабных коэффициентов логарифмической области набор масштабных коэффициентов линейной области, который является третьим набором масштабных коэффициентов, и число масштабных коэффициентов в третьем наборе масштабных коэффициентов больше второго числа и, предпочтительно, даже равен первому числу масштабных коэффициентов в первом наборе первых масштабных коэффициентов. Затем, на стороне кодера, упомянутые интерполированные масштабные коэффициенты используются для обработки спектрального представления, при этом обработанное спектральное представление окончательно квантуется и, статистически кодируется любым методом, например, кодированием по алгоритму Хаффмана, арифметическим кодированием или кодированием на основе векторного квантования и т.п.
В декодере, который принимает кодированный сигнал, содержащий малое число спектральных параметров вместе с кодированным представлением спектрального представления, малое число масштабных параметров интерполируется в большое число масштабных параметров, т.е., чтобы получить первый набор масштабных параметров в случае, когда число масштабных параметров масштабных коэффициентов второго набора масштабных коэффициентов или масштабных параметров меньше числа масштабных параметров первого набора, т.е. набора, вычисляемого декодером масштабных коэффициентов/параметров. Затем, спектральный процессор, расположенный внутри устройства для декодирования кодированного аудиосигнала, обрабатывает декодированное спектральное представление с использованием первого набора масштабных параметров, чтобы получить масштабированное спектральное представление. Затем действует преобразователь для преобразования масштабированного спектрального представления, чтобы окончательно получить декодированный аудиосигнал, который предпочтительно находится во временной области.
Дополнительные варианты осуществления дают, в результате, нижеизложенные дополнительные преимущества. В предпочтительных вариантах осуществления, спектральное формирование шума выполняется с помощью 16 масштабных параметров, подобных масштабным коэффициентам, используемым в известном уровне 1. Упомянутые коэффициенты получаются в кодере, сначала посредством вычисления энергии спектра MDCT в 64 неравномерных полосах (подобных 64 неравномерным полосам известного уровня техники 3), затем посредством некоторой обработки 64 значений энергии (сглаживания, предыскажения, дизеринга, логарифмического преобразования), затем посредством понижающей дискретизации 64 обработанных значений энергии с коэффициентом 4, чтобы получить 16 коэффициентов, которые, наконец, нормируются и масштабируются. Затем упомянутые 16 коэффициентов квантуются с использованием векторного квантования (подобного векторному квантованию, использованному в известном уровне техники 2/3). Затем квантованные коэффициенты интерполируются для получения 64 интерполированных масштабных параметров. После этого, упомянутые 64 масштабных параметра служат для непосредственного формирования спектра MDCT в 64 неравномерных полосах. Подобно известному уровню техники 2 и 3, затем масштабированные коэффициенты MDCT квантуются с использованием скалярного квантователя с размером шага, управляемым глобальным усилением. В декодере выполняется обратное масштабирование во всех 64 полосах, с формированием шума квантования, вносимого скалярным квантователем.
Как в известном уровне техники 2/3, предпочтительный вариант осуществления использует только 16+1 параметров в качестве побочной информации, и параметры можно эффективно кодировать малым числом бит, с использованием векторного квантования. Следовательно, предпочтительный вариант осуществления имеет такие же преимущества, как известный уровень техники 2/3: он требует меньше бит побочной информации, чем подход известного уровня техники 1, что может создать большое отличие при низком битрейте и/или низкой задержке.
Как в известном уровне техники 3, предпочтительный вариант осуществления использует нелинейное масштабирование по частоте и, следовательно, не имеет первого недостатка известного уровня техники 2.
В противоположность известному уровню техники 2/3, предпочтительный вариант осуществления не использует никаких функций, связанных с LPC, которые характеризуются высокой сложностью. Необходимые функции обработки (сглаживание, предыскажение, дизеринг, логарифмическое преобразование, нормирование, масштабирование, интерполяция) требуют, сравнительно, очень низкой сложности. Только векторное квантование еще имеет относительно высокую сложность. Но можно применить некоторые методы векторного квантования относительно низкой сложности, с небольшим снижением характеристики (подходы с многократным расщеплением/многоступенчатые). Следовательно, предпочтительный вариант осуществления не имеет второго недостатка известного уровня техники 2/3, относящегося к сложности.
В отличие от известного уровня техники 2/3, предпочтительный вариант осуществления не базируется на перцептуальном фильтре на основе LPC. Предпочтительный вариант использует 16 масштабных параметров, которые можно вычислять при наличии многочисленных степеней свободы. Предпочтительный вариант осуществления отличается большей гибкостью от известного уровня техники 2/3, и, следовательно, не имеет третьего недостатка известного уровня техники 2/3.
В заключение необходимо отметить, что предпочтительный вариант осуществления обладает всеми преимуществами известного уровня техники 2/3, но без недостатков.
Предпочтительные варианты осуществления настоящего изобретения подробно описаны в дальнейшем со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1 - блок-схема устройства для кодирования аудиосигнала;
Фиг. 2 - схематическое представление предпочтительной реализации вычислителя масштабных коэффициентов, показанного на фиг. 1;
Фиг. 3 - схематическое представление предпочтительной реализации понижающего дискретизатора, показанного на фиг. 1;
Фиг. 4 - схематическое представление кодера масштабных коэффициентов, показанного на фиг. 4;
Фиг. 5 - схематическое изображение спектрального процессора, показанного на фиг. 1;
Фиг. 6 - общее представление кодера, с одной стороны, и декодера, с другой стороны, реализующих спектральное формирование шума (SNS);
Фиг. 7 - более подробное представление участка кодера, с одной стороны, и участка декодера, с другой стороны, в которых реализуется временное формирование шума (TNS) вместе со спектральным формированием шума (SNS);
Фиг. 8 - блок-схема устройства для декодирования кодированного аудиосигнала;
Фиг. 9 - схематическое изображение, детально представляющее декодер масштабных коэффициентов, спектральный процессор и спектральный кодер, показанные на фиг. 8;
Фиг. 10 - изображение разбиения спектра на 64 полосы;
Фиг. 11 - схематическое изображение операции понижающей дискретизации, с одной стороны и операции интерполяции, с другой стороны;
Фиг. 12a - изображение аудиосигнала во временной области с перекрывающимися кадрами;
Фиг. 12b - реализация преобразователя, показанного на фиг. 1; и
Фиг. 12c - схематическое изображение преобразователя, показанного на фиг. 8.
Фиг. 1 представляет устройство для кодирования аудиосигнала 160. Аудиосигнал 160 предпочтительно существует во временной области, однако, в принципе, полезными могут быть также другие представления аудиосигнала, например, в области предсказания или любой другой области. Устройство содержит преобразователь 100, вычислитель 110 масштабных коэффициентов, спектральный процессор 120, понижающий дискретизатор 130, кодер 140 масштабных коэффициентов и интерфейс 150 вывода. Преобразователь 100 сконфигурирован с возможностью преобразования аудиосигнала 160 в спектральное представление. Вычислитель 110 масштабных коэффициентов сконфигурирован с возможностью вычисления первого набора масштабных параметров или масштабных коэффициентов по спектральному представлению.
По всему тексту описания, термин «масштабный коэффициент» или «масштабный параметр» применяется для упоминания одного и того же параметра или значения, т.е. значения или параметра, который применяется, после некоторой обработки» для взвешивания каких-либо спектральных значений. Данное взвешивание, при выполнении в линейной области, является фактически операцией умножения на масштабный коэффициент. Однако, когда взвешивание выполняется в логарифмической области, то операция взвешивания с масштабным коэффициентом выполняется, фактически, посредством операции сложения или вычитания. Таким образом, в контексте настоящей заявки, масштабирование означает не только умножение или деление, но также означает, в зависимости от конкретной области, сложение или вычитание, или означает, в общем, каждую операцию, посредством которой спектральное значение, например, взвешивается или преобразуется с использованием масштабного коэффициента или масштабного параметра.
Понижающий дискретизатор 130 сконфигурирован с возможностью понижающей дискретизации первого набора масштабных параметров, чтобы получать второй набор масштабных параметров, при этом второе число масштабных параметров во втором наборе масштабных параметров меньше первого числа масштабных параметров в первом наборе масштабных параметров. Это также изложено, в общем, в прямоугольнике на фиг. 1, где сообщается, что второе число меньше первого числа. Как показано на фиг. 1, кодер масштабных коэффициентов сконфигурирован с возможностью формирования кодированного представления второго набора масштабных коэффициентов, и данное кодированное представление направляется в интерфейс 150 вывода. Вследствие того, что второй набор масштабных коэффициентов содержит меньшее число масштабных коэффициентов, чем первый набор масштабных коэффициентов, битрейт для передачи или сохранения кодированного представления второго набора масштабных коэффициентов имеет значение ниже, чем в ситуации, в которой понижающая дискретизация масштабных коэффициентов, выполняемая в понижающем дискретизаторе 130, не выполнялась бы.
Более того, спектральный процессор 120 сконфигурирован с возможностью обработки спектрального представления, выдаваемого преобразователем 100, показанным на фиг. 1, с использованием третьего набора масштабных параметров, при этом третий набор масштабных параметров или масштабных коэффициентов содержит третье число масштабных коэффициентов, превышающее второе число масштабных коэффициентов, причем спектральный процессор 120 сконфигурирован с возможностью использования, с целью спектральной обработки, первого набора масштабных коэффициентов, уже полученного из блока 110 по линии 171. В качестве альтернативы, спектральный процессор 120 сконфигурирован с возможностью использования второго набора масштабных коэффициентов, выдаваемого понижающим дискретизатором 130, для вычисления третьего набора масштабных коэффициентов, как показано линией 172. В дополнительной реализации, спектральный процессор 120 использует кодированное представление, выдаваемое кодером 140 масштабных коэффициентов/коэффициентов, с целью вычисления третьего набора масштабных коэффициентов, как показано линией 173 на фиг. 1. Спектральный процессор 120 предпочтительно не использует первого набора масштабных коэффициентов, но использует либо второй набор масштабных коэффициентов, вычисленный понижающим дискретизатором, либо, еще предпочтительнее, использует кодированное представление или, в общем, квантованный второй набор масштабных коэффициентов и, затем, выполняет операцию интерполяции для интерполяции квантованного второго набора спектральных параметров, чтобы получить третий набор масштабных параметров, который содержит большее число масштабных параметров вследствие операции интерполяции.
Таким образом, кодированное представление второго набора масштабных коэффициентов, которое выдается блоком 140, содержит либо индекс кодовой книги для предпочтительно используемой кодовой книги масштабных параметров, либо набор соответствующих индексов кодовой книги. В других вариантах осуществления, кодированное представление содержит квантованные масштабные параметры квантованных масштабных коэффициентов, которые получаются, когда индекс кодовой книги или набор индексов кодовой книги или, в общем, кодированное представление подается на вход векторного декодера на стороне декодера или любого другого декодера.
Спектральный процессор 120 предпочтительно использует тот же самый набор масштабных коэффициентов, который имеется также на стороне декодера, т.е. использует квантованный второй набор масштабных параметров вместе с операцией интерполяции, чтобы получить наконец третий набор масштабных коэффициентов.
В предпочтительном варианте осуществления, третье число масштабных коэффициентов в третьем наборе масштабных коэффициентов равно первому числу масштабных коэффициентов. Однако, можно также использовать меньшее число масштабных коэффициентов. Например, в блоке 110 можно получить 64 масштабных коэффициента, и затем можно выполнить понижающую дискретизацию 64 масштабных коэффициентов до 16 масштабных коэффициентов для передачи. Затем, в спектральном процессоре 120 можно выполнить интерполяцию не обязательно до 64 масштабных коэффициентов, а до 32 масштабных коэффициентов. В качестве альтернативы, можно выполнять интерполяцию до еще большего числа, например, большего, чем 64 масштабных коэффициента, в зависимости от обстоятельств, при условии, что число масштабных коэффициентов, передаваемых в кодированном выходном сигнале 170, меньше числа масштабных коэффициентов, вычисляемых в блоке 110 или вычисляемых и используемых в блоке 120, показанном на фиг. 1.
Вычислитель 110 масштабных коэффициентов предпочтительно сконфигурирован с возможностью выполнения нескольких операций, показанных на фиг. 2. Упомянутые операции относятся к вычислению 111 связанного с амплитудой показателя на каждую полосу. Предпочтительным связанным с амплитудой показателем на каждую полосу является энергия на каждую полосу, но можно также использовать другие связанные с амплитудой показатели, например, сумму абсолютных значений амплитуд на каждую полосу или сумму квадратов амплитуд, которая соответствует энергии. Однако, кроме показателя степени 2, используемого для вычисления энергии на каждую полосу, можно также использовать другие показатели степени, например, показатель степени 3, который будет отражать громкость сигнала, и можно даже использовать показатели степени, отличающиеся от целых чисел, например, показатели степени 1,5 или 2,5, чтобы вычислять связанные с амплитудой показатели на каждую полосу. Использовать можно даже показатели степени меньше 1,0, пока гарантируется, что значения, обрабатываемые с применением таких показателей степени, являются положительными значениями.
Дополнительная операция, выполняемая вычислителем масштабных коэффициентов, может быть межполосное сглаживание 112. Данное межполосное сглаживание используется предпочтительно для выравнивания возможных нестабильностей, которые могут возникать в векторе связанных с амплитудой показателей, получаемых в блоке 111. Если не выполнять это сглаживание, то упомянутые нестабильности будут усиливаться при дальнейшем преобразовании в логарифмическую область, как показано в блоке 115, в частности в спектральные значения, энергия которых близка к 0. Однако, в других вариантах осуществления, межполосное сглаживание не выполняется.
Дополнительная предпочтительная операция, выполняемая вычислителем 110 масштабных коэффициентов, является операцией 113 предыскажения. Данная операция предыскажения выполняется с целью, аналогичной операции предыскажения, используемой в перцептуальном фильтре на основе LPC при кодировании TCX на основе MDCT, описанном выше в отношении известного уровня техники. Данная процедура повышает амплитуду сформированного спектра на низких частотах, что приводит к ослаблению шума квантования на низких частотах.
Однако, в зависимости от реализации, операция предыскажения, как и другие специальные операции, не обязательно должна выполняться.
Следующей дополнительной операцией обработки является обработка 114 по добавлению шума дизеринга (noise-floor addition). Данная процедура повышает качество сигналов, содержащих очень высокую спектральную динамику, например, с устройством Glockenspiel, посредством ограничения усиления по амплитуде сформированного спектра в долинах, что производит косвенный эффект ослабления шума квантования на пиках, за счет усиления шума квантования в долинах, в которых шум квантования все равно не воспринимается благодаря маскирующим свойствам человеческого уха, например, абсолютному слуховому порогу, премаскированию, постмаскированию или общему порогу маскирования, означающему, что, обычно, тон достаточного низкого уровня громкости, относительно близкий по частоте к тону с высоким уровнем громкости, совсем не воспринимается, т.е. полностью маскируется или только ориентировочно воспринимается механизмом человеческого слуха, и поэтому его спектральную составляющую можно квантовать достаточно грубо.
Однако операция 114 добавления шума дизеринга не обязательно должна выполняться.
Кроме того, блок 115 означает преобразование в логарифмическую область. В предпочтительно варианте выполняется преобразование выхода одного из блоков 111, 112, 113, 114, показанных на фиг. 2, в логарифмическую область. Логарифмическая область является областью, в которой значения, близкие к 0, увеличиваются, а высокие значения сжимаются. Логарифмическая область является областью по основанию 2, но можно использовать также другие логарифмические области. Однако, логарифмическая область по основанию 2 лучше всего подходит для реализации в процессоре обработки сигналов с фиксированной запятой.
Выходом вычислителя 110 масштабных коэффициентов является первый набор масштабных коэффициентов.
Как показано на фиг. 2, каждый из блоков 112-115 может быть шунтирован, т.е. выход блока 111, например, уже может быть первым набором масштабных коэффициентов. Однако, предпочтительно выполнение всех операций обработки и, в частности, преобразования в логарифмическую область. Таким образом, вычислитель масштабных коэффициентов можно реализовать даже посредством выполнения только этапов 111 и 115, без процедур, например, на этапах 112-114.
Таким образом, вычислитель масштабных коэффициентов сконфигурирован с возможностью выполнения одной или двух, или более из процедур, показанных на фиг. 2, как показано входными/выходными линиями, соединяющими несколько блоков.
Фиг. 3 представляет предпочтительную реализацию понижающего дискретизатора 130, показанного на фиг. 1. В предпочтительном варианте, выполняется низкочастотная фильтрация или, в общем, фильтрация некоторым окном w(k) на этапе 131, и затем выполняется операция понижающей дискретизации/прореживания результата фильтрации. Вследствие того, что как низкочастотная фильтрация 131, так и, в предпочтительных вариантах осуществления, операция 132 понижающей дискретизации/прореживания являются арифметическими операциями, фильтрация 131 и понижающая дискретизация 132 могут выполняться в рамках одной операции, как изложено в дальнейшем. Операция понижающей дискретизации/прореживания предпочтительно выполняется таким образом, что осуществляется наложение между отдельными группами масштабных параметров первого набора масштабных параметров. Предпочтительно, осуществляется наложение одного масштабного коэффициента в операции фильтрации между двумя прореженными вычисленными коэффициентами. Таким образом, этап 131 выполняет низкочастотную фильтрацию вектора масштабных параметров перед прореживанием. Такой низкочастотный фильтр оказывает действие, подобное функции расширения, используемой в психоакустических моделях. Он ослабляет шум квантования на пиках за счет усиления шума квантования около пиков, где он так или иначе перцептуально маскируется по меньшей мере в более высокой степени, относительно шума квантования на пиках.
Более того, понижающий дискретизатор дополнительно выполняет удаление 133 среднего значения и этап 134 дополнительного масштабирования. Однако, операция 131 низкочастотной фильтрации, этап 133 удаления среднего значения и этап 134 масштабирования являются необязательными этапами. Следовательно, понижающий дискретизатор, изображенный на фиг. 3 или изображенный на фиг. 1, можно реализовать только выполнением этапа 132 или выполнением двух этапов, показанных на фиг. 3, например, этапа 132 и одного из этапов 131, 133 и 134. В качестве альтернативы, понижающий дискретизатор может выполнять все четыре этапа или только три этапа из четырех этапов, показанных на фиг. 3, при условии, что выполняется операция 132 понижающей дискретизации/прореживания.
Как показано на фиг. 3, операции обработки звука на фиг. 3, выполняемые понижающим дискретизатором, выполняются в логарифмической области, чтобы получить оптимальные данные.
Фиг. 4 изображает предпочтительную реализацию кодера 140 масштабных коэффициентов. Кодер 140 масштабных коэффициентов принимает второй набор масштабных коэффициентов, предпочтительно, в логарифмической области и выполняет векторное квантование, как показано в блоке 141, чтобы, в конечном счете, выдавать один или более индексов на каждый кадр. Эти один или более индексов на каждый кадр могут выдаваться в интерфейс вывода и записываться в поток битов, т.е. вводиться в выходной кодированный аудиосигнал 170 посредством любых существующих процедур интерфейса вывода. В предпочтительном варианте, векторный квантователь 141 дополнительно выдает квантованный второй набор масштабных коэффициентов в логарифмической области. Таким образом, эти данные могут непосредственно выводиться блоком 141, как указано стрелкой 144. Однако, в качестве альтернативы, в кодере может также может иметься в наличии кодовая книга 142 декодера. Эта кодовая книга декодера принимает один или более индексов на каждый кадр и получает, из одного или более индексов на каждый кадр, квантованный второй набор масштабных коэффициентов, предпочтительно, в логарифмической области, как показано линией 145. В типичных реализациях, кодовая книга 142 декодера будет заложена в векторном квантователя 141. В предпочтительном варианте, векторный квантователь 141 является векторным квантователем многоступенчатого типа или с расщеплением вектора, или комбинированным многоступенчатым/с расщеплением уровня, как, например, в любой из указанных процедур известного уровня техники.
Таким образом, обеспечивается, чтобы второй набор масштабных коэффициентов был таким же квантованным вторым набором масштабных коэффициентов, которые присутствуют также на стороне декодера, т.е. в декодере, который только получает кодированный аудиосигнал, который содержит один или более индексов на каждый кадр, выдаваемых блоком 141 по линии 146.
Фиг. 5 изображает предпочтительную реализацию спектрального процессора. Спектральный процессор 120, содержащийся в кодере, показанном на фиг. 1, содержит интерполятор 121, который получает квантованный второй набор масштабных параметров, и который выдает третий набор масштабных параметров, в котором третье число больше второго числа и, предпочтительно, равно первому числу. Более того, спектральный процессор содержит преобразователь 122 в линейную область. Затем, в блоке 123 выполняется формирование спектра с использованием линейных масштабных параметров, с одной стороны, и спектрального представления, с другой стороны, которое получено преобразователем 100. В предпочтительном варианте выполняется последующая операция временного формирования шума, т.е. предсказание по частоте, чтобы получить остаточные спектральные значения на выходе блока 124, тогда как побочная информация TNS подается в интерфейс вывода, как указано стрелкой 129.
И наконец, спектральный процессор 125 содержит скалярный квантователь/кодер, который сконфигурирован с возможностью приема единственного глобального усиления для всего спектрального представления, т.е. всего кадра. Глобальное усиление предпочтительно получается в зависимости от некоторых соображений, касающихся битрейта. Таким образом, глобальное усиление устанавливается так, чтобы кодированное представление спектрального представления, формируемого блоком 125, выполняло некоторые требования, например, требование к битрейту, требованию к качеству или обоим требованиям. Глобальное усиление может вычисляться итерационно или может вычисляться в виде индекса прямой связи, смотря по обстоятельствам. В общем, глобальное усиление используется совместно с квантователем, и высокое глобальное усиление обычно приводит к грубому квантованию, а низкое глобальное усиление приводит к более мелкому квантованию. Следовательно, иначе говоря, высокое глобальное усиление приводит к большему шагу дискретизации, а низкое глобальное усиление приводит к меньшему шагу дискретизации, когда получен квантователь с постоянным шагом. Однако, другие квантователи также можно использовать совместно с функцией глобального усиления, например, квантователь, который обладает функцией некоторого сжатия для высоких значений, т.е. какой-нибудь функцией нелинейного сжатия, чтобы, например, высокие значения сжимались больше, чем низкие значения. Вышеупомянутая зависимость между глобальным усилением и грубостью квантования действует, когда глобальное усиление умножается на значения до квантования в линейной области, что соответствует суммированию в логарифмической области. Однако, если глобальное усиление применяется путем деления в линейной области или посредством вычитания в логарифмической области, то зависимость действует наоборот. То же самое справедливо, когда «глобальное усиление» представляет собой обратное значение.
В дальнейшем приведены предпочтительные реализации отдельных процедур, описанных со ссылкой на фиг. 1-5.
Подробное поэтапное описание предпочтительных вариантов осуществления
КОДЕР:
Этап 1: Энергия полосы (111)
Значения энергии на каждую полосу,  , вычисляются следующим образом:
где  означает коэффициенты MDCT,  означает число полос, и  означает индексы полос. Полосы являются неравномерными и соответствуют шкале Барка перцептуальных полос (более узких на низких частотах и более широких на высоких частотах).
Этап 2: Сглаживание (112)
Энергия на каждую полосу,  , сглаживается следующим образом:
Примечание: данный этап используется, главным образом, для выравнивания возможных нестабильностей, которые могут возникать в векторе  . Если сглаживание не выполняется, то упомянутые нестабильности усиливаются при преобразовании в логарифмическую область (смотри этап 5), в частности, в долинах, где энергия близка к 0.
Этап 3: Предыскажение (113)
Затем в сглаженную энергию на каждую полосу,  , вводятся предыскажения:
где  регулирует наклон спектра, вызываемый предыскажениями, и зависит от частоты дискретизации. Например, он равен 18 при 16 кГц и 30 при 48 кГц. Предыскажение, используемое на этом этапе, выполняется с такой же целью, что и предыскажение, используемое в перцептуальном фильтре на основе LPC известного уровня техники 2, оно повышает амплитуду сформированного спектра на низких частотах, приводя к ослаблению шума квантования на низких частотах.
Этап 4: Дизеринг (114)
К  прибавляется шум дизеринга (noisefloor) при -40 дБ:
при этом шум дизеринга вычисляется следующим образом
Этот этап повышает качество сигналов, содержащих очень высокую спектральную динамику, например, с устройством Glockenspiel, посредством ограничения по амплитуде сформированного спектра в долинах, что производит косвенный эффект ослабления шума квантования на пиках, за счет усиления шума квантования в долинах, где он все равно не воспринимается.
Этап 5: Логарифмическое преобразование (115)
Преобразование в логарифмическую область выполняется следующим образом:
Этап 6: Понижающая дискретизация (131, 132)
Затем выполняется понижающая дискретизация  с коэффициентом 4:
где
На данном этапе, вектор  обрабатывается низкочастотным фильтром (w(k)) перед прореживанием. Данный низкочастотный фильтр производит действие, аналогичное функции расширения, используемой в псевдоакустических моделях: ослабляет шум квантования на пиках за счет усиления шума квантования в долинах, где он все равно маскируется.
Этап 7: Удаление среднего значения и масштабирование (133, 134)
Окончательные масштабные коэффициенты получаются после удаления среднего значения и масштабирования в 0,85 раз следующим образом:
Поскольку кодек имеет дополнительное глобальное усиление, то среднее значение можно удалять без какой-либо потери информации. Удаление среднего значения допускает также повышение эффективности векторного квантования. Масштабирование в 0,85 раз немного сжимает амплитуду кривой формирования шума. Масштабирование производит перцептуальный эффект, подобный функции расширения, упомянутой на этапе 6: ослабление шума квантования на пиках и ослабление шума квантования в долинах.
Этап 8: Квантование (141, 142)
Масштабные коэффициенты квантуются с использованием векторного квантования, с созданием индексов, которые затем упаковываются в поток битов и посылаются в декодер, и квантованных масштабных коэффициентов  .
Этап 9: Интерполяция (121, 122)
Квантованные масштабные коэффициенты  интерполируются:
И преобразуются обратно в линейную область:
Интерполяция используется для получения плавной кривой формирования шума и, следовательно, для исключения любых значительных скачков амплитуды между соседними полосами.
Этап 10: Формирование спектра (123)
Масштабные коэффициенты  SNS применяются к частотным линиям MDCT для каждой полосы по отдельности, чтобы создать сформированный спектр
Фиг. 8 представляет предпочтительную реализацию устройства для декодирования кодированного аудиосигнала 250, содержащего информацию о кодированном спектральном представлении и информацию о кодированном представлении второго набора масштабных параметров. Декодер содержит интерфейс 200 ввода, спектральный декодер 210, декодер 220 масштабных коэффициентов/коэффициентов, спектральный процессор 230 и преобразователь 240. Интерфейс 200 ввода сконфигурирован с возможностью получения кодированного аудиосигнала 250 и выделения кодированного спектрального представления, которое подается в спектральный декодер 210, и выделения кодированного представления второго набора масштабных коэффициентов, которое подается в декодер 220 масштабных коэффициентов. Более того, спектральный декодер 210 сконфигурирован с возможностью декодирования кодированного спектрального представления, чтобы получать декодированное спектральное представление, которое подается в спектральный процессор 230. Декодер 220 масштабных коэффициентов сконфигурирован с возможностью декодирования кодированного второго набора масштабных параметров, чтобы получать первый набор масштабных параметров, подаваемый в спектральный процессор 230. Первый набор масштабных коэффициентов содержит число масштабных коэффициентов или масштабных параметров, которое больше числа масштабных коэффициентов или масштабных параметров во втором наборе. Спектральный процессор 230 сконфигурирован с возможностью обработки декодированного спектрального представления с использованием первого набора масштабных параметров, чтобы получать масштабированное спектральное представление. Затем масштабированное спектральное представление преобразуется преобразователем 240, чтобы получать, в конце, декодированный аудиосигнал 260.
Декодер 220 масштабных коэффициентов предпочтительно сконфигурирован с возможностью функционирования, по существу, таким же образом, как описано выше для спектрального процессора 120 на фиг. 1 по отношению к вычислению третьего набора масштабных коэффициентов или масштабных параметров, рассмотренному в связи с блоками 141 или 142 и, в частности, по отношению к блокам 121, 122 на фиг. 5. В частности, декодер масштабных коэффициентов сконфигурирован с возможностью выполнения, по существу, такой же процедуры для интерполяции и обратного преобразования в линейную область, как уже описано выше по отношению к этапу 9. Следовательно, как показано на фиг. 9, декодер 220 масштабных коэффициентов сконфигурирован с возможностью применения кодовой книги 221 декодера к одному или более индексам на каждый кадр, представляющих кодированное представление масштабных параметров. Затем, в блоке 222 выполняется интерполяция, которая является, по существу, такой же интерполяцией, которая уже описана по отношению к блоку 121 на фиг. 5. Затем используется преобразователь 223 в линейную область, который является, по существу, таким же преобразователем 122 в линейную область, который уже описан со ссылкой на фиг. 5. Однако, в других реализациях, блоки 221, 222, 223 могут работать не так, как описано выше по отношению к соответствующим блокам на стороне кодера.
Более того, спектральный декодер 210, показанный на фиг. 8, содержит блок деквантователя/декодера, который получает на входе кодированный спектр, и который выдает деквантованный спектр, который предпочтительно деквантуется с использованием глобального усиления, которое дополнительно передается со стороны кодера на сторону декодера в кодированном аудиосигнале в кодированной форме. Деквантователь/декодер 210 может, например, содержать функции арифметического декодера или декодера Хаффмана, который получает на входе некоторые коды, и который выдает индексы квантования, представляющие спектральные значения. Затем, эти индексы квантования подаются на вход деквантователя вместе с глобальным усилением, и выходом являются деквантованные спектральные значения, которые можно затем подвергнуть обработке TNS, например, обратному предсказанию по частоте, в блоке 211 обработки TNS декодера, который, однако, является опциональным. В частности, блок обработки TNS декодера дополнительно получает побочную информацию TNS, которая сформирована блоком 124, показанным на фиг. 5, как указано линией 129. Выход этапа 211 обработки TNS декодера подается в блок 212 формирования спектра, в котором первый набор масштабных коэффициентов, вычисленных декодером масштабных коэффициентов применяется к декодированному спектральному представлению, которое может или не может быть подвергнуто обработке TNS, смотря по обстоятельствам, и на выходе получается масштабированное спектральное представление, которое затем подается на вход преобразователя 240, показанного на фиг. 8.
Дополнительные процедуры предпочтительных вариантов осуществления декодера описаны далее.
ДЕКОДЕР
:
Этап 1: Квантование (221)
Индексы векторного квантователя, образованные на этапе 8 кодера, считываются из потка битов и используются для декодирования квантованных масштабных коэффициентов  .
Этап 2: Интерполяция (222, 223)
Тождественен этапу 9 кодера.
Этап 3: Формирование спектра (212)
Масштабные коэффициенты SNS,  , применяются к квантованным частотным линиям MDCT для каждой полосы по-отдельности, чтобы создать декодированный спектр  , как описано следующим кодом.
Фиг.6 и фиг. 7 представляют общую схему кодера/декодера, при этом фиг. 6 представляют реализацию без обработки TNS, а фиг. 7 представляет реализацию, которая содержит TNS. Одинаковые функции, представленные на фиг. 6 и фиг. 7, соответствуют аналогичным функциям на других фигурах, при обозначении идентичными числовыми позициями. В частности, как показано на фиг. 6, входной сигнал 160 подается на вход стадии 110 преобразования, и затем выполняется спектральная обработка 120. В частности, спектральная обработка отражена кодером SNS, обозначенным позициями 123, 110, 130, 140, указывающими, что кодер SNS блока реализует функции, указанные данными числовыми позициями. После блока кодера SNS выполняется операция 125 квантования и кодирования, и кодированный сигнал вводится в поток битов, как указано позицией 180 на фиг. 6. Поток 180 битов затем представляется на стороне декодера, и после обратного квантования и декодирования, обозначенных позицией 210, выполняется операция SNS декодера, обозначенная блоками 210, 220, 230 на фиг. 8, чтобы, в конце, после обратного преобразования 240 получался декодированный выходной сигнал 260.
Фиг. 7 подобна фиг. 6, но на ней показано, что после обработки SNS на стороне кодера, предпочтительно, выполняется обработка TNS, и, соответственно, на стороне декодера выполняется обработка TNS 211 перед обработкой SNS 212 в последовательности обработки.
В предпочтительном варианте применена дополнительная обработка TNS между спектральным формированием шума (SNS) и квантованием/кодированием (смотри нижеприведенную блок-схему). Операция TNS (временное формирование шума) формирует также шум квантования, но выполняет также формирование во временной области (в противоположность формированию в частотной области в ходе операции SNS). Операция TNS применяется для сигналов, содержащих резкие ускорения темпа и для речевых сигналов.
Операция TNS обычно применяется (например, в AAC) между преобразованием и SNS. Однако, предпочтительно применять TNS к сформированному спектру. Это исключает некоторые артефакты, которые создаются декодером TNS, при работе кодека с низкими битрейтами.
Фиг. 10 представляет предпочтительное разбиение спектральных коэффициентов или спектральных линий, получаемых блоком 100 на стороне кодера, на полосы. В частности, показано, что нижние полосы содержат меньшее число спектральных линий, чем более высокие полосы.
В частности, x-ось на фиг. 10 соответствует индексам полос и изображает предпочтительный вариант осуществления с 64 полосами, и y-ось соответствует индексам спектральных линий, изображающим 320 спектральные коэффициенты в одном кадре. В частности, фиг. 10 представляет примерную ситуацию случая сверхшироких полос (SWB), когда частота дискретизации равна 32 кГц.
В случае широких полос, ситуация с отдельными полосами является такой, что один кадр дает, в результате, 160 спектральных линий, и частота дискретизации равна 16 кГц, чтобы, в обоих случаях, один кадр имел длительность 10 миллисекунд.
Фиг. 11 подробно представляет предпочтительную понижающую дискретизацию, выполняемую в понижающем дискретизаторе 130, показанном на фиг. 1, или соответствую повышающую дискретизацию или интерполяцию, выполняемую в декодере 220 масштабных коэффициентов, показанном на фиг. 8, или в блоке 222, показанном на фиг. 9.
По x-оси представлены индексы полос 0-63. В частности, существует 64 полосы с индексами 0-63.
16 точек с пониженной частотой дискретизации, соответствующих scfQ(i), показаны в виде вертикальных линий 1100. В частности, Фиг. 11 представляет, как выполняется некоторая группировка масштабных параметров, чтобы получить, в конечном счете, точку 1100 с пониженной частотой дискретизации. Например, первый блок из четырех полос состоит из (0, 1, 2, 3), и средняя точка данного первого блока приходится на точку 1,5, обозначенную элементом 1100 с индексом 1,5 на x-оси.
Соответственно, второй блок из четырех полос представляет собой (4, 5, 6, 7), и средняя точка второго блока приходится на точку 5,5.
Окна 1110 соответствуют окнам w(k), описанным по отношению к этапу 6 вышеописанной понижающей дискретизации. Можно видеть, что упомянутые окна имеют центра в точках с пониженной частотой дискретизации, и существует частичное перекрытие одного блока с каждой, как описано выше.
Этап 222 интерполяции, показанный на фиг. 9, восстанавливает 64 полосы из 16 точек с пониженной частотой дискретизации. Это показано на фиг. 11 посредством вычисления положения любой из линий 1120 в виде функции двух точек с пониженной частотой дискретизации, обозначенных 1100, около некоторой линии 1120. Последующий пример поясняет вышеизложенное.
Положение второй полосы вычисляется как функция двух вертикальных линий около нее (1,5 и 5,5): 2=1,5+1/8Ч(5,5-1,5).
Соответственно, положение третьей полосы вычисляется как функция двух вертикальных линий 1100 около нее (1,5 и 5,5): 3=1,5+3/8Ч(5,5-1,5).
Специальная процедура выполняется для двух первых полос и двух последних полос. Для данных полос интерполяция не может выполняться потому, что не существует вертикальных линий или значений, соответствующих вертикальным линиям 1100 снаружи диапазона от 0 до 63. Таким образом, для решения этой проблемы выполняют экстраполяцию, как описано по отношению к этапу 9: интерполяцию, описанную выше для двух полос 0, 1 с одной стороны и 62 и 63 с другой стороны.
Далее описана предпочтительная реализация преобразователя 100, показанного на фиг. 1, с одной стороны, и преобразователя 240, показанного на фиг. 8, с другой стороны.
В частности, фиг. 12a представляет график для указания формирования кадров, выполняемого на стороне кодера в преобразователе 100. Фиг. 12b представляет предпочтительную реализацию преобразователя 100, показанного на фиг. 1 на стороне кодера, и фиг. 12c представляет предпочтительную реализацию преобразователя 240 на стороне декодера.
Преобразователь 100 на стороне кодера предпочтительно реализуется для выполнения формирования кадров, с перекрывающимися кадрами, например, с 50% перекрытием, так что кадр 2 перекрывается с кадром 1, и кадр 3 перекрывается с кадром 2 и кадром 4. Однако могут выполняться также другие перекрытия или неперекрывающаяся обработка, но предпочтительно выполнять 50% перекрытие вместе с алгоритмом MDCT. С этой целью, преобразователь 100 содержит окно 101 анализа и включенный далее спектральный преобразователь 102 для выполнения обработки методом быстрого преобразования Фурье (FFT), обработки методом MDCT или любой другой обработки путем преобразования из временной в спектральную область, чтобы получить последовательность кадров, соответствующих последовательности спектральных представлений, в качестве входной информации, показанной на фиг. 1, в блоки после преобразователя 100.
Соответственно, масштабированное(ые) спектральное(ые) представление(ия), подаваемое(ые) на вход преобразователя 240, показанного на фиг. 8. В частности, преобразователь содержит временной преобразователь 241, реализующий операцию обратного FFT, операцию обратного MDCT или соответствующую операцию преобразования из спектральной во временную область. Выходной результат подается в окно 242 синтеза, и выход после окна 242 синтеза подается на вход процессора 243 для обработки методом перекрытия с суммированием для выполнения операции перекрытия с суммированием, чтобы получить в конце декодированный аудиосигнал. В частности, обработка методом перекрытия с суммированием в блоке 243, например, выполняет суммирование по отсчетам соответствующих отсчетов второй половины, например, кадра 3 и первой половины кадра 4, чтобы получались значения дискретизации аудиосигнала для перекрытия между кадром 3 и кадром 4, как показано позицией 1200 на фиг. 12a. Аналогичные операции перекрытия с суммированием по отдельным отсчетам выполняются для получения остальных значений дискретизации аудиосигнала декодированного выходного аудиосигнала.
Кодированный аудиосигнал по изобретению может храниться на носителе цифровых данных или долговременном носителе данных или может передаваться по среде передачи информации, например, беспроводной среде передачи информации или проводной среде передачи информации, такой как сеть Интернет.
Хотя некоторые аспекты описаны в контексте устройства, очевидно, что эти аспекты представляют также описание соответствующего способа, при этом блок или устройство соответствует этапу способа или признаку этапа способа. Аналогично, аспекты, описанные в контексте этапа способа, представляют также описание соответствующего блока или элемента, или признака соответствующего устройства.
В зависимости от некоторых требований к реализации, варианты осуществления изобретения могут быть реализованы в форме аппаратного или программного обеспечения. Реализация может использовать носителе цифровых данных, например гибкий диск, универсальный цифровой диск (DVD), компакт-диск (CD), постоянную память (ROM), перепрограммируемую ROM (PROM), электрическую PROM (EPROM), электрически стираемую PROM (EEPROM) или флэш-память, содержащую электронно-считываемые управляющие сигналы, хранящиеся в ней, которые взаимодействуют (или могут взаимодействовать) с программируемой компьютерной системой, так что выполняется соответствующий способ.
Некоторые варианты осуществления изобретения содержат носитель данных, содержащий электронно-считываемые сигналы управления, которые способны взаимодействовать с программируемой компьютерной системой таким образом, чтобы выполнялся один из способов, описанных в настоящей заявке.
В общем, варианты осуществления настоящего изобретения реализовать в форме компьютерного программного продукта с кодом программы, при этом код программы служит для выполнения одного из способов, когда компьютерный программный продукт выполняется в компьютере. Код программы может храниться, например, на машиночитаемом носителе.
Другие варианты осуществления содержат компьютерную программу для выполнения одного из способов, описанных в настоящей заявке, записанную на машиночитаемом носителе или долговременном носителе данных.
Иначе говоря, вариант осуществления способа по изобретению является, таким образом, компьютерной программой, содержащей код программы, для выполнения одного из способов, описанных в настоящей заявке, когда компьютерная программа выполняется в компьютере.
Дополнительный вариант осуществления способов по изобретению, является, таким образом, носителем данных (или носителем цифровых данных, или компьютерно-читаемым носителем), содержащим, записанную на нем компьютерную программу для выполнения одного из способов, описанных в настоящей заявке.
Дополнительный вариант осуществления способов по изобретению является, таким образом, потоком данных или последовательностью сигналов, представляющих компьютерную программу для выполнения одного из способов, описанных в настоящей заявке. Поток данных или последовательность сигналов может быть, например, сконфигурирован с возможностью передачи по соединению для передачи данных, например, по сети Интернет.
Дополнительный вариант осуществления содержит средство обработки данных, например компьютер или программируемое логическое устройство, сконфигурированное с возможностью выполнения одного из способов, описанных в настоящей заявке.
Дополнительный вариант осуществления содержит компьютер, содержащий установленную на нем компьютерную программу для выполнения одного из способов, описанных в настоящей заявке.
В некоторых вариантах осуществления, программируемое логическое устройство (например, вентильную матрицу с эксплуатационным программированием) можно использовать для выполнения некоторых или всех функций способов, описанных в настоящей заявке. В некоторых вариантах осуществления, вентильная матрица с эксплуатационным программированием может взаимодействовать с микропроцессором, чтобы выполнять один из способов, описанных в настоящей заявке. В общем, способы предпочтительно выполняются любым аппаратным устройством.
Вышеописанные варианты осуществления всего лишь поясняют принципы настоящего изобретения. Следует понимать, что специалистам в данной области техники будут очевидны модификации и варианты схем и особенностей, описанных в настоящей заявке. Поэтому, ограничения должны налагаться только объемом притязаний последующей патентной формулы, а не конкретными сведениями, изложенными в приведенных описании и пояснениях вариантов осуществления.
Использованная литература
[1] ISO/IEC 14496-3:2001; Information technology - Coding of audio-visual objects - Part 3: Audio.
[2] 3GPP TS 26.403; General audio codec audio processing functions; Enhanced aacPlus general audio codec; Кодер specification; Advanced Audio Coding (AAC) part.
[3] ISO/IEC 23003-3; Information technology - MPEG audio technologies - Part 3: Unified speech and audio coding.
[4] 3GPP TS 26.445; Codec for Enhanced Voice Services (EVS); Detailed algorithmic description.