Эффективный способ проектирования набора фильтров для mdct/imdct в приложениях для кодирования речи и аудиосигналов

Иллюстрации

Показать все

Изобретение относится к кодирующим устройствам и декодерам. Техническим результатом является снижение уровня сложности устройства и уменьшение объема памяти. В одном из вариантов устройство содержит входной модуль для приема аудиосигнала и генерации входных величин во временной области, представляющих этот аудиосигнал, и модуль преобразования указанных входных величин в спектральные коэффициенты с использованием модифицированного дискретного косинусного преобразования (MDCT), рекурсивно разделенного по меньшей мере на дискретное косинусное преобразование IV-типа (DCT-IV), дискретное косинусное преобразование II-типа (DCT-II), или оба - DCT-IV и DCT-II, где размерность каждого такого преобразования меньше размерности MDCT, при этом по меньшей мере некоторые операции умножения из состава MDCT объединены с предшествующей операцией выделения интервала, примененной к указанным входным величинам. 10 н. и 25 з.п. ф-лы, 15 ил.

Реферат

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

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

Уровень техники

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

В процессе такого кодирования сигнал может быть обработан с применением модифицированного дискретного косинусного преобразования (МДКП (MDCT)). Модифицированное дискретное косинусное преобразование (MDCT) представляет собой преобразование типа преобразования Фурье на основе дискретного косинусного преобразования IV-типа (DCT-IV) с дополнительным свойством, заключающимся в том, что блоки накладываются один на другой, так что конец одного блока совпадает с началом следующего блока. Такое наложение помогает избежать возникновения паразитных спектральных составляющих (артефактов), обусловленных наложением спектров при дискретизации, а в сочетании с присущими DCT свойствами сжатия энергии делает MDCT особенно привлекательным для приложений сжатия сигналов.

MDCT-преобразование нашло также применение в технике сжатия речи. Вокодеры согласно ITU-T G.722.1 и G.722.1C применяют MDCT к входному речевому сигналу, а более поздние алгоритмы ITU-T G.729.1 и G.718 используют это преобразование для обработки остаточного сигнала после применения устройства кодирования способом линейного предсказания с мультикодовым управлением (CELP). Указанные выше вокодеры работают с частотой дискретизации на входе 8 кГц или 16 кГц и с кадрами продолжительностью 10 мс или 20 мс. Следовательно, их наборы фильтров для MDCT реализуют преобразование с размерностью 160 или 320 точек.

Однако если в будущем появятся устройства кодирования речи, поддерживающие функцию переключения блоков, может также потребоваться поддержка меньшей размерности (160, 80, 40 точек).

Сущность изобретения

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

Предложены способ и/или устройство кодирования для вычисления преобразованных величин. На вход поступают представляющие аудиосигнал входные величины во временной области. Здесь может быть предложена модифицированная вырезающая функция, объединяющая коэффициенты от операции преобразования и от операции выделения интервала для получения фрагментарно-симметричных вырезающих коэффициентов. В памяти записывают подмножество фрагментарно-симметричных вырезающих коэффициентов, на основе которого можно реконструировать полный набор фрагментарно-симметричных вырезающих коэффициентов. Записанное подмножество фрагментарно-симметричных вырезающих коэффициентов может включать по меньшей мере половину уникальных коэффициентов для каждого набора фрагментарно-симметричных вырезающих коэффициентов. Перед преобразованием входных величин к ним может быть применен полный набор реконструированных фрагментарно-симметричных вырезающих коэффициентов. Входные величины могут быть преобразованы в спектральные коэффициенты с использованием модифицированного дискретного косинусного преобразования (MDCT), рекурсивно разделенного по меньшей мере на дискретное косинусное преобразование IV-типа (DCT-IV), дискретное косинусное преобразование II-типа (DCT-II), или оба - DCT-IV и DCT-II, где размерность каждого такого преобразования меньше размерности MDCT, при этом по меньшей мере некоторые операции умножения из состава MDCT объединены с предшествующей операцией выделения интервала, примененной к входным величинам. DCT-II может представлять собой преобразование с размерностью 5 точек, способное реализовать варианты MDCT различной размерности. Такое MDCT может реализовать преобразование по меньшей мере двух размерностей из ряда преобразований с размерностями 320, 160, 80, 40 точек с использованием того же самого DCT-II. Для реализации вариантов с фиксированной занятой могут быть также выполнены оценка динамического диапазона и перенормировка выходных данных вырезающей функции.

Предложены также способ и/или устройство декодирования для вычисления преобразованных величин. С этой целью принимают спектральные коэффициенты, представляющие аудиосигнал. Эти спектральные коэффициенты могут быть преобразованы в выходные величины во временной области с использованием обратного модифицированного дискретного косинусного преобразования (ОМДКП (IMDCT)), рекурсивно разделенного по меньшей мере на обратное дискретное косинусное преобразование IV-типа (IDCT-IV), обратное дискретное косинусное преобразование II-типа (IDCT-II), или оба - IDCT-IV и IDCT-II, где размерность каждого такого обратного преобразования меньше размерности IMDCT, при этом по меньшей мере некоторые операции умножения из состава IMDCT объединены с последующей операцией выделения интервала, примененной к выходным величинам. Например, IDCT-II представляет собой обратное преобразование с размерностью 5 точек, способное реализовать варианты IMDCT различной размерности. Такое IMDCT может реализовать обратное преобразование по меньшей мере двух размерностей из ряда обратных преобразований с размерностями 320, 160, 80, 40 точек с использованием того же самого ядра IDCT-II. Кроме того, может быть предложена модифицированная вырезающая функция, объединяющая коэффициенты от операции преобразования и от операции выделения интервала для получения фрагментарно-симметричных вырезающих коэффициентов. В памяти может быть записано подмножество фрагментарно-симметричных вырезающих коэффициентов, на основе которого можно реконструировать полный набор фрагментарно-симметричных вырезающих коэффициентов. Записанное подмножество фрагментарно-симметричных вырезающих коэффициентов включает по меньшей мере половину уникальных коэффициентов для каждого набора фрагментарно-симметричных вырезающих коэффициентов. После преобразования спектральных коэффициентов к выходным величинам может быть применен полный набор реконструированных фрагментарно-симметричных вырезающих коэффициентов. Для реализации вариантов с фиксированной запятой могут быть также выполнены оценка динамического диапазона и перенормировка выходных данных вырезающей функции.

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

В одном примере этап выделения интервала может выполняться перед этапом преобразования. На этапе преобразования может быть выполнено модифицированное дискретное косинусное преобразование (MDCT), рекурсивно разделенное по меньшей мере на дискретное косинусное преобразование IV-типа (DCT-IV), дискретное косинусное преобразование II-типа (DCT-II), или оба - DCT-IV и DCT-II, где размерность каждого такого преобразования меньше размерности MDCT. Коэффициенты на этапе преобразования могут представлять собой косинусные коэффициенты.

В другом примере этап выделения интервала может выполняться после этапа преобразования. На этапе преобразования может быть выполнено обратное модифицированное дискретное косинусное преобразование (IMDCT), рекурсивно разделенное по меньшей мере на обратное дискретное косинусное преобразование IV-типа (IDCT-IV), обратное дискретное косинусное преобразование II-типа (IDCT-II), или оба - IDCT-IV и IDCT-II, где размерность каждого такого обратного преобразования меньше размерности IMDCT.

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

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

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

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

Фиг.3 представляет, как можно реализовать преобразование MDCT с использованием функции ядра DCT-IV с размерностью N/2 точек.

Фиг.4 представляет, как можно реализовать преобразование IMDCT с использованием функции ядра IDCT-IV с размерностью N/2 точек.

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

Фиг.6 представляет схему, иллюстрирующую преобразование IDCT-II с размерностью 5 точек, которое может быть реализовано в качестве составляющей преобразования IMDCT в декодере.

Фиг.7 представляет блок-схему, иллюстрирующую пример реализации преобразования DCT-IV с размерностью N=10 точек с использованием двух преобразований DCT-II.

Фиг.8 представляет блок-схему, иллюстрирующую пример реализации преобразования IDCT-IV с размерностью N=10 точек с использованием двух преобразований IDCT-II.

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

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

Фиг.11 иллюстрирует пример способа кодирования сигнала с использованием преобразования MDCT на основе преобразования DCT-II в качестве ядра.

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

Фиг.13 иллюстрирует пример способа декодирования сигнала с использованием преобразования IMDCT на основе преобразования IDCT-II в качестве ядра.

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

Фиг.15 иллюстрирует пример способа выполнения операций выделения интервала.

Подробное описание изобретения

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

Общие соображения

Один из признаков позволяет реализовать преобразование MDCT с размерностью N точек путем отображения его в преобразования DCT-IV и DCT-II меньшей размерности N/2 точек с изолированными операциями предумножения, которые можно передвинуть на последующий этап выделения интервала. Т.е. операции выделения интервала могут быть объединены с операциями умножения первой/последней ступени функций ядра MDCT/IMDCT соответственно, уменьшая тем самым общее число операций умножения. Кроме того, MDCT можно систематически проредить с коэффициентом 2 за счет применения равномерно масштабированной функции ядра DCT-II с размерностью 5 точек (использующей самое больше 5 нетривиальных перемножений) в отличие от ядер DCT-IV или Быстрого преобразования Фурье (БПФ (FFT)), применяемых во многих известных реализациях MDCT в аудиокодеках.

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

Структура кодека

Фиг.1 представляет блок-схему, иллюстрирующую пример кодирующего устройства, которое может включать набор фильтров для анализа при использовании MDCT. Кодирующее устройство 102 может принимать входной аудиосигнал 104. Набор 106 фильтров для анализа MDCT (т.е. модифицированного дискретного косинусного преобразования на основе дискретного косинусного преобразования IV-типа) разбивает входной аудиосигнал 104 во временной области на несколько сигналов поддиапазонов и преобразует эти сигналы в частотную область, где каждый сигнал поддиапазона конвертируют в коэффициент преобразования для поддиапазона в блоке. Полученный сигнал затем дискретизируют в дискретизаторе 108 и кодируют в энтропийном кодирующем устройстве 110 для получения потока 112 битов дискретизированного аудиосигнала. Согласно одному из примеров набор 106 фильтров для анализа MDCT может быть реализован посредством вырезающей функции 114, преобразования 116 (например, из временной области в частотную область) и/или масштабной функции 118. Этот набор 106 фильтров для анализа MDCT, включающий вырезающую функцию 114, преобразование 116 и/или масштабную функцию 118, может быть реализован аппаратно (например, в виде процессора, схемы, программируемого логического устройства и т.п.), программно (например, посредством команд, выполняемых процессором) и/или путем сочетания аппаратных и программных средств.

Фиг.2 представляет блок-схему, иллюстрирующую пример декодера, который может включать набор фильтров для синтеза при использовании IMDCT. Декодер 202 может принимать поток 204 битов. Энтропийный декодер 206 декодирует поток 204 битов, который затем деквантуют в деквантизаторе 208 для получения сигнала в частотной области. Набор 210 фильтров для синтеза IMDCT (т.е. обратного модифицированного дискретного косинусного преобразования на основе дискретного косинусного преобразования IV-типа) преобразует сигнал 104 в частотной области назад в аудиосигнал 212 во временной области. Набор 210 фильтров для синтеза IMDCT может обратить работу набора 106 фильтров для анализа MDCT. Согласно одному из примеров набор 210 фильтров для синтеза IMDCT может быть реализован посредством масштабной функции 214, обратного преобразования 216 (например, из частотной области во временную область) и функции 218 выделения интервала плюс наложения и суммирования. Такой набор 210 фильтров для синтеза IMDCT, включающий масштабную функцию 214, обратное преобразование 216 и/или вырезающую функцию 218, может быть реализован аппаратно (например, в виде процессора, схемы, программируемого логического устройства и т.п.), программно (например, посредством команд, выполняемых процессором) и/или путем сочетания аппаратных и программных средств.

Реализация MDCT с использованием DCT-IV и DCT-II

Согласно одному из признаков настоящего изобретения преобразование 116 (фиг.

I) и обратное преобразование 216 (фиг.2) можно проредить и реализовать посредством одного или нескольких преобразований DCT-IV (и IDCT-IV), которые в свою очередь могут быть реализованы в виде одного или нескольких преобразований DCT-II (и IDCT-

II), соответственно.

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

Аналогично, обратное MDCT (IMDCT) может быть определено:

где {x(n), для n=0,1,…N-l}, представляет входную последовательность отсчетов, N обозначает длину кадра, X(k) - результирующие коэффициенты MDCT и представляет реконструированные выходные величины.

Используя матричную запись, преобразование MDCT можно представить матрицей М:

Следовательно, X=Mx и , где x представляет матрицу входных отсчетов [х(0),…,х(N-1)]T, X представляет матрицу результирующих коэффициентов MDCT , и представляет матрицу реконструированных выходных величин

Для реализации преобразования MDCT его можно отобразить в функцию ядра DCT-IV с размерностью N/2 точек. Например, преобразование 116 на фиг.1 может быть реализовано в виде одного или нескольких преобразований DCT-IV с размерностью N/2 точек.

Преобразование DCT-IV может быть определено как:

При этом преобразование IDCT-IV может быть определено как:

Преобразование MDCT можно отобразить в преобразование DCT-IV с размерностью N/2 точек как:

И преобразование IMDCT можно отобразить в преобразование IDCT-IV с размерностью N/2 точек как:

где

где IN/4 представляет собой единичную матрицу размером N/4×N/4 и JN/4 представляет собой матрицу изменения порядка размером N/4×N/4, а матрица S определена как:

и представляет собой матрицу DCT-IV размером N/2×N/2, которая может быть определена как:

Используя симметрию и инволюционные свойства матрицы DCT-IV, ее можно отобразить в преобразование DCT-II. Это преобразование DCT-II может быть определено как:

Аналогично, преобразование IDСТ-II может быть определено как:

где , если k=0, otherwise 1.

Фиг.3 представляет, как можно реализовать преобразование MDCT с использованием функции ядра DCT-IV с размерностью N/2 точек. Такое преобразование MDCT может быть реализовано в качестве составной части кодирующего устройства, преобразующей входные отсчеты во временной области в выходные отсчеты в частотной области. Для входной последовательности 304 от X(3N/4) до X(N/4) преобразование MDCT может быть представлено косинусными коэффициентами 306, после чего преобразование 302 DCT-IV генерирует выходные величины 308. Как обсуждается ниже, эти косинусные коэффициенты 306 могут быть поглощены на предшествующем этапе/функции выделения интервала в кодирующем устройстве.

Аналогично фиг.4 представляет, как можно реализовать преобразование IMDCT с использованием функции ядра IDCT-IV с размерностью N/2 точек. Такое преобразование IMDCT может быть реализовано в качестве составной части декодера, преобразующего входные отсчеты частотной области в выходные отсчеты во временной области. Для входной последовательности 404 от Х(0) до X(N/2-1) преобразование IMDCT может быть представлено преобразованием 402 IDCT-IV, после чего используют косинусные коэффициенты 406 для генерации выходных величин 408. Как обсуждается ниже, эти косинусные коэффициенты 406 могут быть поглощены на последующем этапе/функции выделения интервала в декодере. Заметим, что отображение IMDCT и косинусные коэффициенты, показанные на фиг.4, служат для обращения операций отображения MDCT (фиг.3) в предположении, что в кодирующем устройстве и в декодере применяется одна и та же вырезающая функция.

Использование косинусных коэффициентов 306 и 406 в обоих этих отображениях (фиг.3 и 4) обеспечивает численную устойчивость при нулевых и близких к нулю значениях, что не всегда достижимо при использовании коэффициентов других типов (например, обратных косинусных коэффициентов).

Заметим, что входные сигналы для преобразований MDCT и IMDCT можно обрабатывать в формате кадров или блоков, имеющих несколько точек данных. Следовательно, чтобы вокодер (например, кодек G.VBR) мог поддерживать блоки данных с длиной кадра меньше 320, необходимо применять преобразования уменьшенной размерности. Для блоков с длиной кадра 160, 80, 40 и т.д. видно, что все эти размерности кратны 5. Поэтому для последнего, далее не уменьшаемого (методами прореживания) размера блока может использовать преобразование с размерностью 5. Таким образом, видно, что с точки зрения методов прореживания значительно более эффективно разработать преобразование DCT-II с размерностью 5 точек, чем преобразование DCT-IV или FFT.

Преобразование DCT-IV может быть отображено в преобразование DCT-II как:

где D - диагональная матрица с элементами

и может быть матрица DCT-II размером N/2×N/2, определенная как:

Фиг.5 представляет схему, иллюстрирующую факторизацию преобразования DCT-II с размерностью 5 точек, которое может быть реализовано в качестве составляющей преобразования MDCT в кодирующем устройстве. Отметим, что коэффициент α в этом преобразовании является двоично-рациональным, вследствие чего умножение на этот коэффициент представляет собой просто операцию двоичного сдвига. Это преобразование с размерностью 5 точек может быть реализовано либо с использованием поворота в плоскости и 5 операций умножения, либо с использованием 4 умножений на факторизирующий поворот в плоскости, либо с использованием операций лифтинга. Для последовательности 502 из 5 входных величин x последовательность 504 выходных величин СII в случае преобразования DCT-II с размерностью 5 точек можно получить с использованием 4 нетривиальных умножений и 13 суммирований или 5 умножений и 13 суммирований. Выходные величины СII преобразования DCT-II генерируют как:

;

;

; ;

;

Фиг.6 представляет схему, иллюстрирующую преобразование IDCT-II с размерностью 5 точек, которое может быть реализовано в качестве составляющей преобразования IMDCT в декодере. Иными словами, это преобразование IDCT-II можно использовать для реализации преобразования IDCT-IV (фиг.4) для преобразования IMDCT в декодере. Это преобразование может быть реализовано либо с использованием поворота в плоскости и 5 операций умножения, либо с использованием 4 умножений на факторизирующий поворот в плоскости, либо с использованием операций лифтинга. Для последовательности 602 входных величин СII из 5 точек последовательность 604 выходных величин 604 для преобразования IDCT-II с размерностью 5 точек можно получить с использованием 4 нетривиальных умножений и 13 суммирований или 5 умножений и 12, как показано. Выходные величины преобразования IDCT-II генерируют как:

;

;

;

Фиг.7 представляет блок-схему, иллюстрирующую пример реализации преобразования DCT-IV с размерностью N=10 точек с использованием двух преобразований DCT-II (N=5 точек). Для последовательности 702 из десяти входных точек x(0), …, x(9) преобразование DCT-IV с размерностью 10 точек можно реализовать посредством двух преобразований 704 и 706 DCT-II с размерностью 5 точек каждое и коэффициентов 708 для генерации группы 710 выходных коэффициентов CII(0), …, СII(9). Таким образом, можно использовать преобразование-ядро DCT-II с размерностью 5 точек для реализации преобразований, способных обрабатывать кадры длиной 160, 80, 40 и т.д.

Фиг.8 представляет блок-схему, иллюстрирующую пример реализации преобразования IDCT-IV с размерностью N=10 точек с использованием двух преобразований IDCT-II (N=5 точек). Для последовательности 802 из десяти входных точек CII(0), …, СII(9) преобразование IDCT-IV с размерностью 10 точек можно реализовать посредством двух преобразований 804 и 806 DCT-II с размерностью 5 точек каждое и коэффициентов 808 для генерации группы 810 выходных коэффициентов (0), …, (9). Таким образом, можно использовать преобразование-ядро IDCT-II с размерностью 5 точек для реализации преобразований, способных обрабатывать кадры длиной 160, 80, 40 и т.д.

Объединение коэффициентов умножения на этапе выделения интервала

Преобразование MDCT часто применяется в алгоритмах кодирования голосового сигнала и аудиосигнала (например, кодек G.VBR) и по существу представляет собой нормализованное MDCT в сочетании с вырезающей функцией h(n):

.

где f(n) обозначает входные отсчеты данных, h(n) - вырезающая функция и F(k) обозначает выходные спектральные коэффициенты MDCT. Например, вырезающая функция h(n) может быть синусоидальной функцией:

Как обсуждалось ранее, коэффициенты предумножения (например, 306 на фиг.3), участвующие в отображении преобразования DCT-IV в преобразование MDCT, равно как и коэффициенты постумножения (например, 406 на фиг.4), участвующие в отображении преобразования IDCT-IV в преобразование IMDCT, могут быть объединены на соответствующем этапе выделения интервала. Например, вырезающая функция может быть синусоидальной функцией, определяемой, например, как:

Соединение этой вырезающей функции h(n) и коэффициентов преобразования дает модифицированную вырезающую функцию:

Для 0≤n<N/4:

.

Для N/≤n<3N/4:

.

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

Фиг.9 представляет график, иллюстрирующий фрагментарно-симметричную природу вырезающей функции (уравнение 20). Если сравнивать с симметричным синусоидальным интервалом, рассматриваемые вырезающие коэффициенты можно сохранить с использованием такого же объема памяти, поскольку записывают только половину всех вырезающих коэффициентов 902 и 904. В этом примере для N=640 отсчетов/коэффициентов и показанного фрагментарно-симметричного интервала первая группа из 160 отсчетов (т.е. от 0 N/4-1) может быть представлена всего лишь первыми 80 отсчетами или коэффициентами 902, поскольку это симметричный участок. Аналогично, вторая группа из 480 отсчетов/коэффициентов (т.е. от N/4 до N) может быть представлена всего лишь первыми 240 отсчетами или коэффициентами 904. Следовательно, сохраняют только половину всех коэффициентов, сберегая тем самым место в памяти. Кроме того, это уменьшение числа отсчетов может также ускорить обработку, поскольку уменьшает число обращений к памяти, используемых для вызова вырезающих коэффициентов.

Пример кодирования с использованием преобразования MDCT

Фиг.10 представляет блок-схему, показывающую устройство для вычисления преобразованных величин. Это устройство 1002 может включать входной модуль 1006, модуль 1010 выделения интервала и/или модуль 1014 преобразования. Входной модуль 1006 может принимать аудиосигнал 1004 и генерировать входные величины 1008 во временной области, представляющие этот аудиосигнал. Модуль 1010 выделения интервала может реализовать модифицированную вырезающую функцию, объединяющую коэффициенты от операции преобразования и от операции выделения интервала для получения фрагментарно-симметричных вырезающих коэффициентов. Например, модуль 1010 выделения интервала может включать модуль 1018 объединения, модуль 1019 разделения коэффициентов, модуль 1020 памяти и/или вырезающую функцию 1022. Модуль 1018 объединения может выполнять функцию объединения коэффициентов от операции преобразования и от операции выделения интервала для получения фрагментарно-симметричных вырезающих коэффициентов. Например, косинусные коэффициенты 306 (фиг.3) могут быть объединены с другими коэффициентами вырезающей функции. Модуль 1019 разделения коэффициентов может затем выбрать подмножество фрагментарно-симметричных вырезающих коэффициентов (как показано на фиг.9). Модуль 1020 памяти может затем сохранить это подмножество фрагментарно-симметричных вырезающих коэффициентов, из которого может быть реконструирован полный набор фрагментарно-симметричных вырезающих коэффициентов. Например, это подмножество фрагментарно-симметричных вырезающих коэффициентов может включать по меньшей мере половину уникальных коэффициентов для каждой группы фрагментарно-симметричных вырезающих коэффициентов. Модуль 1010 выделения интервала может быть (посредством вырезающей функции 1022) конфигурирован для применения полного набора реконструированных фрагментарно-симметричных вырезающих коэффициентов к входным величинам 1008 перед преобразованием этих входных величин (получая тем самым вырезанные входные величины 1012).

Модуль 1014 преобразования может преобразовать вырезанные входные величины 1012 в спектральные коэффициенты 1016 с использованием, например, модифицированного дискретного косинусного преобразования (MDCT). Это MDCT может быть рекурсивно разделено по меньшей мере на дискретное косинусное преобразование IV-типа (DCT-IV), дискретное косинусное преобразование II-типа (DCT-II), или оба - DCT-IV и DCT-II, где размерность каждого такого преобразования меньше размерности MDCT, при этом по меньшей мере некоторые операции умножения из состава MDCT объединены с предшествующей операцией выделения интервала, примененной к входным величинам. В одном примере DCT-II может представлять собой преобразование с размерностью 5 точек, способное реализовать варианты MDCT различной размерности, подобно DCT-II, показанному на фиг.5. Такое MDCT может реализовать преобразование по меньшей мере двух размерностей из ряда преобразований по 320, 160, 80, 40 точкам с использованием того же самого ядра DCT-II. Компоненты устройства 1002 могут быть реализованы аппаратным, программным и/или комбинированным программно-аппаратным способом. Например, устройство 1002 может представлять собой процессор и/или схему, реализующую функции его компонентов или модулей.

Фиг.11 иллюстрирует пример способа кодирования сигнала с использованием преобразования MDCT на основе преобразования DCT-II в качестве ядра. Устройство может принимать 1102 входные величины во временной области, представляющие аудиосигнал. Например, для получения таких входных величин могут быть выполнены отсчеты аналогового аудиосигнала (например, голосового сигнала, музыки, видео и т.п.).

В одном примере может быть реализована 1104 модифицированная вырезающая функция, объединяющая коэффициенты от операции преобразования и от операции выделения интервала для получения фрагментарно-симметричных вырезающих коэффициентов. Затем сохраняют 1106 подмножество фрагментарно-симметричных вырезающих коэффициентов, из которого может быть реконструирован полный набор фрагментарно-симметричных вырезающих коэффициентов. Перед преобразованием входных величин к этим входным величинам может быть применен 1108 указанный полный набор фрагментарно-симметричных вырезающих коэффициентов. Например, на предшествующей операции выделения интервала могут быть применены косинусные коэффициенты, показанные на фиг.3, (поз.306) для преобразования MDCT. Указанное подмножество фрагментарно-симметричных вырезающих коэффициентов может включать по меньшей мере половину уникальных коэффициентов для каждой группы фрагментарно-симметричных вырезающих коэффициентов.

Полученные (вырезанные) входные величины (от операции выделения интервала) могут быть преобразованы 1110 в спектральные коэффициенты с использованием модифицированного дискретного косинусного преобразования (MDCT), рекурсивно разделенного по меньшей мере на дискретное косинусное преобразование IV-типа (DCT-IV), дискретное косинусное преобразование II-типа (DCT-II), или оба - DCT-IV и DCT-II, где размерность каждого такого преобразования меньше размерности MDCT, при этом по меньшей мере некоторые операции умножения из состава MDCT объединены с предшествующей операцией выделения интервала, примененной к входным величинам. Например, такое MDCT может быть реализовано на основе дискретного косинусного преобразования IV-типа (DCT-IV), которое осуществлено на основе ядра DCT-II (например, преобразования на фиг.5). Такое DCT-II может представлять собой преобразование с размерностью 5 точек, способное реализовать варианты MDCT различной размерности. Например, такое MDCT может реализовать преобразование по меньшей мере двух размерностей из ряда преобразований с размерностями 320, 160, 80, 40 точек с использованием того