Описание изобретения
Настоящее изобретение имеет отношение к обработке звука и, в частности, к обработке звука с перекрывающимися окнами для стадии анализа или стадии синтеза в цепочке обработки звукового сигнала.
Большинство современных устройств кодирования звука в частотной области на основе преобразований с перекрытием, подобных МДКП, задействуют некоторое переключение размера преобразования для адаптации разрешения по времени и частоте к текущим характеристикам сигнала. Были разработаны разные подходы к манипулированию переключением между доступными размерами преобразования и соответствующими им формами окна. Некоторые подходы вставляют переходное окно между кадрами, закодированными с использованием разной длины преобразований, например, MPEG-4 (HE-) AAC, документ [1]. Недостатком переходных окон является необходимость увеличенной прогностической способности кодирующего устройства, что делает его неподходящим для приложений с низкой задержкой. Другие задействуют фиксированное небольшое перекрытие окон для всех размеров преобразования, чтобы избежать потребности в окнах переходов, например CELT, документ [2]. Однако, небольшое перекрытие уменьшает частотное разделение, что ухудшает эффективность кодирования для тональных сигналов. Улучшенный подход с мгновенным переключением, задействующий разные длины преобразований и перекрытий для симметрических перекрытий, приводится в документе [3]. Документ [6] показывает пример для мгновенного переключения между разными длинами преобразований с использованием синусоидальных окон с небольшим перекрытием.
С другой стороны, устройства кодирования звука с низкой задержкой часто задействуют асимметричные окна МДКП, так как они демонстрируют хороший компромисс между задержкой и частотным разделением. На стороне кодирующего устройства укороченное перекрытие с последующим кадром используется для уменьшения задержки прогнозирования, и в то же время длинное перекрытие с предшествующим кадром используется для улучшения частотного разделения. На стороне декодирующего устройства используется зеркальная версия окна кодирующего устройства. Асимметричная обработка функцией окна анализа и синтеза изображена на Фиг. 8a-8c.
Задачей настоящего изобретения является предоставить улучшенную концепцию для обработки звукового сигнала.
Эта задача успешно выполняется посредством обрабатывающего устройства для обработки звукового сигнала по п. 1 формулы изобретения, способа обработки звукового сигнала по п. 17 формулы изобретения или компьютерной программы по п. 18 формулы изобретения.
Настоящее изобретение основывается на том, что асимметричные окна преобразований полезны для достижения хорошей эффективности кодирования для стационарных сигналов при уменьшенной задержке. С другой стороны, для того чтобы иметь гибкую стратегию переключения размеров преобразований, окна анализа или синтеза для перехода от одного размера блока к другому размеру блока позволяют использовать усеченные части перекрытия асимметричных окон в качестве краев окон или в качестве основы для краев окон, не вредя свойству идеального восстановления.
Следовательно, усеченные части асимметричного окна, такие как длинная часть перекрытия асимметричного окна, могут использоваться в пределах переходного окна. Однако, для того чтобы соблюдать необходимую длину переходного окна, эта часть перекрытия либо край или фланг асимметричного окна усекается до допустимой длины в рамках ограничений переходного окна. Это, однако, не нарушает свойство идеального восстановления. Следовательно, это усечение частей перекрытия окон асимметричных окон делает возможными переходные окна короткого и мгновенного переключения без каких-либо потерь со стороны идеального восстановления.
В дополнительных вариантах осуществления, предпочтительно не использовать усеченную часть перекрытия непосредственно, а сглаживать либо плавно наращивать или плавно убавлять неоднородность, вносимую из-за рассматриваемого усечения части перекрытия асимметричного окна.
Дополнительные варианты осуществления задействуют реализацию с очень экономным использованием ресурсов запоминающего устройства, в связи с тем, что только минимальное количество краев окон или флангов окон сохраняется в запоминающем устройстве, и даже для плавного наращивания или плавного убавления используется определенный край окна. Эти эффективно использующие ресурсы запоминающего устройства реализации, помимо этого, строят нисходящие края окна исходя из сохраненного восходящего края окна, или наоборот, посредством логических или арифметических операций, так что только один край, например либо восходящий либо нисходящий край, должен быть сохранен, а другой может быть получен в процессе работы.
Один из вариантов осуществления содержит обрабатывающее устройство или способ для обработки звукового сигнала. Обрабатывающее устройство имеет анализатор для получения управляющего сигнала окна из звукового сигнала, указывающего на изменение от первого асимметричного окна ко второму окну при обработке для анализа звукового сигнала. В качестве альтернативы или в дополнение к этому, управляющий сигнал окна указывает на изменение от третьего окна к четвертому асимметричному окну в случае, например, обработки для синтеза сигнала. В частности, для стадии анализа, второе окно короче первого окна или, на стадии синтеза, третье окно короче четвертого окна.
Обрабатывающее устройство, помимо этого, содержит конструктор окон для построения второго окна или третьего окна с использованием первой части перекрытия первого асимметричного окна. В частности, конструктор окон выполнен с возможностью определения первой части перекрытия второго окна с использованием усеченной первой части перекрытия первого асимметричного окна. В качестве альтернативы, или в дополнение к этому, конструктор окон выполнен с возможностью вычисления второй части перекрытия третьего окна с использованием второй части перекрытия четвертого асимметричного окна.
Наконец, обрабатывающее устройство имеет устройство обработки функцией окна для применения первого и второго окон, в частности, для обработки анализа, или для применения третьего и четвертого окон в случае обработки синтеза, чтобы получить части звукового сигнала обработанные функцией окна.
Как известно, обработка функцией окна анализа имеет место в самом начале звукового кодирующего устройства, где поток из дискретных во времени и последовательных во времени отсчетов звукового сигнала подвергается обработке функцией окна последовательностями окон и, например, переключение от длинного окна к короткому окну выполняется, когда анализатор действительно обнаруживает переход в звуковом сигнале. Затем, вслед за обработкой функцией окна, выполняется перевод из временной области в частотную область и, в предпочтительных вариантах осуществления, этот перевод выполняется с использованием модифицированного дискретного косинусного преобразования (МДКП). МДКП использует операцию свертывания, и последующее преобразование ДКП IV для того, чтобы сгенерировать, на основании набора из 2N отсчетов во временной области, набор из N отсчетов в частотной области, и эти значения в частотной области затем дополнительно обрабатываются.
На стадии синтеза анализатор не выполняет фактический анализ сигнала звукового сигнала, но анализатор получает управляющий сигнал окна на основании сопутствующей информации относительно закодированного звукового сигнала, указывающий некоторую последовательность окон, определяемую анализатором на стороне кодирующего устройства и передаваемую для реализации обрабатывающим устройством на стороне декодирующего устройства. Обработка функцией окна синтеза выполняется в самом конце обработки на стороне декодирующего устройства, т.е. вслед за частотно-временным переводом и операцией развертывания, которая генерирует, на основании набора из N спектральных значений набор из 2N значений во временной области, которые затем подвергаются обработке функцией окна и, после обработки функцией окна синтеза с использованием являющихся предметом предлагаемого изобретения усеченных краев окон, при необходимости выполняется перекрытие с суммированием. Предпочтительно, если 50%-ое перекрытие применяется для позиционирования окон анализа и для действительного перекрытия с суммированием вслед за обработкой функцией окна синтеза с использованием окон синтеза.
Следовательно, преимуществами настоящего изобретения является то, что настоящее изобретение опирается на асимметричные окна преобразования, которые обладают хорошей эффективностью кодирования для стационарных сигналов при уменьшенной задержке. С другой стороны, настоящее изобретение дает возможность гибкой стратегии переключения размеров преобразований для эффективного кодирования сигналов переходов, что не увеличивает общую задержку устройства кодирования. Следовательно, настоящее изобретение опирается на комбинацию асимметричных окон для длинных преобразований и концепцию гибкого переключения длины преобразования/перекрытия для симметричных диапазонов перекрытия коротких окон. Короткие окна могут быть полностью симметричными, имеющими одинаковое симметричное перекрытие с обеих сторон, или могут быть асимметричными, имеющими первое симметричное перекрытие с предшествующим окном и второе иное симметричное перекрытие с последующим окном.
Настоящее изобретение особенно полезно в том отношении, что, за счет использования усеченной части перекрытия из асимметричного длинного окна, любая задержка устройства кодирования или необходимое прогнозирование устройства кодирования не увеличивается, поскольку ни один переход от окон с разными размерами блоков не требует вставки каких-либо добавочных длинных переходных окон.
В дальнейшем обсуждаются предпочтительные варианты осуществления настоящего изобретения со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1a иллюстрирует аспект для кодирования в контексте усеченных частей перекрытия;
Фиг. 1b иллюстрирует устройство для декодирования в контексте использования усеченных частей перекрытия;
Фиг. 1c иллюстрирует более подробное представление стадии синтеза;
Фиг. 1d иллюстрирует реализацию подвижного устройства, имеющего кодирующее устройство, декодирующее устройство и запоминающее устройство;
Фиг. 2 иллюстрирует предпочтительный вариант осуществления настоящего изобретения для стадии анализа (случай A) или стадии синтеза (случай B);
Фиг. 3 иллюстрирует предпочтительную реализацию конструктора окон;
Фиг. 4 иллюстрирует схематическое представление содержимого запоминающего устройства, изображенного на Фиг. 3;
Фиг. 5 иллюстрирует предпочтительную процедуру для определения первой части перекрытия и второй части перекрытия переходного окна анализа;
Фиг. 6 иллюстрирует предпочтительную процедуру для определения переходного окна синтеза;
Фиг. 7 иллюстрирует дополнительную процедуру с усечением меньше максимальной длины;
Фиг. 8a иллюстрирует асимметричное окно анализа;
Фиг. 8b иллюстрирует асимметричное окно синтеза;
Фиг. 8c иллюстрирует асимметричное окно анализа со свернутыми частями;
Фиг. 9a иллюстрирует симметричное окно анализа/синтеза;
Фиг. 9b иллюстрирует дополнительное окно анализа/синтеза с симметричными, но разными, частями перекрытия;
Фиг. 9c иллюстрирует дополнительное окно с симметричными частями перекрытия, имеющими разные длины;
Фиг. 10a иллюстрирует переходное окно анализа, такое как второе окно с усеченной первой частью перекрытия;
Фиг. 10b иллюстрирует второе окно с усеченной и плавно наращиваемой первой частью перекрытия;
Фиг. 10c иллюстрирует второе окно, показанное на Фиг. 10a, с учетом соответствующих перекрывающихся частей предшествующего и последующего окон;
Фиг. 10d иллюстрирует ситуацию, изображенную на Фиг. 10c, но с плавно наращиваемой первой частью перекрытия;
Фиг. 11a иллюстрирует другое переходное окно с плавным наращиванием для стадии анализа;
Фиг. 11b иллюстрирует дополнительное переходное окно анализа с большим, чем необходимо, усечением и соответствующей дополнительной модификацией;
Фиг. 12a, 12b иллюстрируют переходные окна анализа для перехода от небольшого к большому размеру блока;
Фиг. 13a, 13b иллюстрируют переходные окна синтеза от большого размера блока к малому размеру блока;
Фиг. 13c иллюстрирует переходное окно синтеза с усеченной второй частью перекрытия, такое как третье окно;
Фиг. 13d иллюстрирует окно, показанное на Фиг. 13c, но без плавного убавления;
Фиг. 14a иллюстрирует некоторую последовательность окон анализа;
Фиг. 14b иллюстрирует соответствующую последовательность окон синтеза;
Фиг. 15a иллюстрирует некоторую последовательность окон анализа;
Фиг. 15b иллюстрирует соответствующую последовательность окон синтеза, согласованную с Фиг. 15a; и
Фиг. 16 иллюстрирует пример для мгновенного переключения между разными длинами преобразования с использованием только симметричных перекрытий.
Варианты осуществления имеют отношение к концепциям для мгновенного переключения от длинного преобразования МДКП с использованием асимметричного окна к более короткому преобразованию с симметрично перекрывающимися окнами, без необходимости вставки промежуточного кадра.
При построении формы окна для первого кадра с применением более короткой длины преобразования, проблемой являются два ограничения:
• Левая перекрывающаяся часть окна должна до некоторой степени согласовываться с формой предшествующего асимметричного окна, чтобы достигалась идеальное или почти идеальное восстановление.
• Длина перекрывающихся частей ограничивается из-за более короткой длины преобразования.
Левая перекрывающаяся часть длинного асимметричного окна будет удовлетворять первому условию, но она слишком длинная для более коротких преобразований, которые обычно имеют половину или меньше от размера длинного преобразования. Поэтому должна быть выбрана более короткая форма окна.
Предположим в рамках данного документа, что асимметричные окна анализа и синтеза симметричны друг другу, т.е. окно синтеза является зеркальной версией окна анализа. В этом случае окно w должно удовлетворять следующему уравнению для идеального восстановления:
где L представляет собой длину преобразования, а n индекс отсчета.
Для уменьшения задержки было укорочено перекрытие с правой стороны асимметричного длинного окна анализа, это означает, что все самые правые отсчеты окон имеют значение, равное нулю. Из вышеприведенного уравнения можно видеть, что если отсчет wn окна имеет значение, равное нулю, то для симметричного отсчета w2L-1-n может быть выбрано произвольное значение. Если самые правые m отсчетов окна равны нулю, то самые левые m отсчетов, следовательно, тоже могут быть заменены нулями, без потери идеального восстановления, т.е. левая перекрывающаяся часть может быть усечена до длины правой перекрывающейся части.
Если длина усеченного перекрытия достаточно короткая, так что достаточная длина перекрытия остается для правой части первого короткого окна преобразования, это дает решение для первой формы короткого окна преобразования, удовлетворяющее обоим вышеупомянутым условиям. Левый конец перекрывающейся части асимметричного окна усекается и в сочетании с симметричным перекрытием используется для последующих коротких окон. Пример получающейся формы окна изображен на Фиг. 10c.
Использование усеченной версии существующего длинного перекрытия окна позволяет избежать необходимости проектировать абсолютно новую форму окна для перехода. Это также снижает потребность в ПЗУ/ОЗУ для аппаратного обеспечения, на котором реализуется алгоритм, поскольку для перехода не требуется добавочная таблица окон.
Для обработки функцией окна синтеза на стороне декодирующего устройства используется симметричный подход. Асимметричное окно синтеза имеет длинное перекрытие на правой стороне. Усеченная версия правой перекрывающейся части, следовательно, используется для правой части окна последнего короткого преобразования перед переключением обратно на длинные преобразования с асимметричными окнами, как изображено на Фиг. 13d.
Как было продемонстрировано выше, использование усеченной версии длинного окна дает возможность идеального восстановления сигнала во временной области, если спектральные данные не модифицируются между преобразованием анализа и синтеза. Однако в устройстве кодирования звука к спектральным данным применяется квантование. При преобразовании синтеза получающийся шум квантования формируется окном синтеза. Поскольку усечение длинного окна привносит этап в форме окна, могут возникать неоднородности в шуме квантования выходного сигнала. Эти неоднородности могут стать слышимыми как похожие на щелчки артефакты.
Для того чтобы избежать таких артефактов, может быть применено плавное убавление к концу усеченного окна, чтобы сгладить переход к нулю. Плавное убавление может быть сделано несколькими разными способами, например это может принимать линейную, синусоидальную или косинусоидальную форму. Длина плавного убавления должна быть выбрана достаточно большой, чтобы не возникали слышимые артефакты. Максимальная длина, доступная для плавного убавления без потери идеального восстановления, определяется длиной короткого преобразования и длиной перекрытий окон. В некоторых случаях доступная длина может быть нулевой или слишком маленькой для подавления артефактов. Для таких случаев может быть целесообразным расширить длину плавного убавления и смириться с небольшими ошибками восстановления, поскольку они часто мешают меньше, чем неоднородности в шуме квантования. Тщательная регулировка длины плавного убавления позволяет обменять ошибки восстановления на неоднородности ошибок квантования, чтобы достичь наилучшего качества звука.
Фиг. 10d изображает пример для усеченного перекрытия с коротким плавным убавлением за счет умножения усеченного конца окна на синусоидальную функцию.
Далее рассматривается Фиг. 2 для описания обрабатывающего устройства для обработки звукового сигнала в соответствии с вариантами осуществления настоящего изобретения. Звуковой сигнал предоставляется на вход 200 анализатора 202. Анализатор выполнен с возможностью получения управляющего сигнала 204 окна из звукового сигнала на входе 200, причем управляющий сигнал окна указывает на изменение от первого асимметричного окна ко второму окну, что, например, проиллюстрировано посредством первого окна 1400 или 1500 на Фиг. 14a или Фиг. 15a, где второе окно, в этом варианте осуществления, является окном 1402 на Фиг. 14a или 1502 на Фиг. 15a. Опять же, управляющий сигнал 204 окна, в качестве альтернативы, и относительно операции на стадии синтеза, иллюстративно указывает на изменение от третьего окна, такого как 1450 на Фиг. 14b или 1550 на Фиг. 5b, к третьему окну, такому как 1452 на Фиг. 14b или 1552 на Фиг. 15b. Как показано, второе окно, такое как 1402, короче первого окна 1400, или третье окно, такое как 1450 или 1550, короче четвертого окна, такого как 1452 или 1552.
Обрабатывающее устройство дополнительно содержит конструктор 206 окон для построения второго окна с использованием первой части перекрытия первого асимметричного окна, причем этот конструктор окон выполнен с возможностью определения первой части перекрытия второго окна с использованием усеченной первой части перекрытия первого асимметричного окна для стадии синтеза, т.е. случай B на Фиг. 2. Конструктор окон выполнен с возможностью вычисления второй части перекрытия третьего окна, такого как 1502 или 1550, с использованием усеченной второй части перекрытия первого окна, т.е. асимметричного окна.
Эти окна, такие как второе окно на стадии анализа или третье окно на стадии синтеза и, конечно, предшествующие и/или последующие окна, передаются от конструктора 206 окон на средство 208 обработки функцией окна. Средство 208 обработки функцией окна применяет первое и второе окна, или третье и четвертое окна, к звуковому сигналу, чтобы получить части сигнала на выходе 210.
Случай A относится к стадии анализа. Здесь входом является звуковой сигнал, и фактический анализатор 202 выполняет фактический анализ звукового сигнала, такой как анализ переходных процессов и т.д. Первое и второе окна являются окнами анализа, и подвергнутый обработке функцией окна сигнал обрабатывается на стороне кодирующего устройства, что будет обсуждаться ниже со ссылкой на Фиг. 1A.
Следовательно, обрабатывающее устройство 214 декодирующего устройства, показанного на Фиг. 2, обходится или вообще не представлено в случае A.
В случае B, т.е. когда являющаяся предметом предлагаемого изобретения обработка применяется на стадии синтеза, входом является закодированный звуковой сигнал, такой как битовый поток, имеющий информацию звукового сигнала и сопутствующую информацию, и анализатор 202 выполняет анализ битового потока, либо синтаксический разбор битового потока или закодированного сигнала, чтобы извлечь, из закодированного звукового сигнала, управляющий сигнал окна, указывающий последовательность окон, примененную кодирующим устройством, из которой может быть получена последовательность окон, которая должна применяться в декодирующем устройстве.
В таком случае, третье и четвертое окна являются окнами синтеза, и подвергнутый обработке функцией окна сигнал подвергается обработке перекрытия с суммированием с целью синтеза звукового сигнала, как показано на Фиг. 1B или 1C.
Фиг. 1a иллюстрирует устройство для кодирования звукового сигнала 100. Устройство для кодирования звукового сигнала содержит управляемое устройство 102 обработки функцией окна для обработки функцией окна звукового сигнала 100, чтобы предоставить последовательность блоков подвергнутых обработке функцией окна отсчетов на этапе 103. Кодирующее устройство, кроме того, содержит конвертер 104 для перевода последовательности блоков подвергнутых обработке функцией окна отсчетов 103 в спектральное представление, содержащее последовательность кадров спектральных значений, обозначенное через 105. Кроме того предусматривается устройство 106 обнаружения места перехода. Устройство обнаружения выполнен с возможностью идентификации места перехода в пределах прогнозируемой переходной зоны кадра. Кроме того, управляющее устройство 108 для управления управляемым устройством обработки функцией окна выполнен с возможностью применения определенного окна, имеющего определенную длину перекрытия, к звуковому сигналу 100 в ответ на идентифицированное место перехода, показанного на 107. Кроме того, управляющее устройство 108, в одном из вариантов осуществления, выполняется с возможностью предоставления информации 112 об окне не только на управляемое устройство 102 обработки функцией окна, но и на выходной интерфейс 114, который предоставляет, на своем выходе, закодированный звуковой сигнал 115. Спектральное представление, содержащее последовательность кадров спектральных значений 105, подается на вход обрабатывающего устройства 110 кодирования, которое может выполнять любые операции кодирования, такие как операция предсказания, операция формирования временного шума, операция квантования, предпочтительно, в отношении психоакустической модели или, по меньшей мере, в отношении психоакустических основ, или может содержать операцию кодирования со снижением избыточности, такую как операция кодирования Хаффмана или операция арифметического кодирования. Выходные данные обрабатывающего устройства 110 кодирования потом пересылаются на выходной интерфейс 114, а затем выходной интерфейс 114, наконец, предоставляет закодированный звуковой сигнал со связанной, с каждым закодированным кадром, некоторой информацией 112 об окне.
Управляющее устройство 108 выполняется с возможностью выбора определенного окна из группы, по меньшей мере, из трех окон. Группа содержит первое окно, имеющее первую длину перекрытия, второе окно, имеющее вторую длину перекрытия, и третье окно, имеющее третью длину перекрытия, или без перекрытия. Первая длина перекрытия больше второй длины перекрытия, а вторая длина перекрытия больше нулевого перекрытия. Определенное окно выбирается с помощью управляемого устройства 102 обработки функцией окна на основании места перехода таким образом, что одно из двух смежных во времени перекрывающихся окон имеет первые коэффициенты функции окна в месте перехода, а другое из двух смежных во времени перекрывающихся окон имеет вторые коэффициенты функции окна в месте перехода, и вторые коэффициенты функции окна, по меньшей мере, в девять раз больше, чем первые коэффициенты. Это гарантирует, что переход в значительной степени подавляется первым окном, имеющим первые (небольшие) коэффициенты, и переход почти не подвержен влиянию второго окна, имеющего вторые коэффициенты функции окна. Предпочтительно, если первые коэффициенты функции окна равны 1 с отклонением не более плюс/минус 5%, например от 0,95 до 1,05, и предпочтительно, если вторые коэффициенты функции окна равны 0 или, по меньшей мере, меньше, чем 0,05. Коэффициенты функции окна могут быть также и отрицательными, и в этом случае отношения и количественные параметры коэффициентов функции окна связаны с абсолютной величиной.
Кроме того, в качестве альтернативы или в дополнение, управляющее устройство 108 содержит функциональные возможности конструктора 206 окон, как описано в отношении Фиг. 2 и будет обсуждаться позже. Кроме того, устройство 106 обнаружения места перехода может быть реализовано и может обладать функциональными возможностями анализатора 202, показанного на Фиг. 2 для случая A, т.е. для применения окон на стадии анализа.
Кроме того, блоки 104 и 110 иллюстрируют обработку, которая должна быть выполнена подвергнутым обработке функцией окна звуковым сигналом 210, который соответствует подвергнутому обработке функцией окна звуковому сигналу 103 на Фиг. 1A. Кроме того, конструктор 206 окон, хоть это особо не обозначено на Фиг. 2, предоставляет информацию 112 об окне, показанную на Фиг. 1A, на выходной интерфейс 114, которая затем может быть снова добыта из закодированного сигнала с помощью анализатора 202, работающего на стороне декодирующего устройства, т.е. для случая B.
Как известно в области обработки с МДКП, как правило, обработки с использованием преобразования с внесением эффекта наложения, это преобразование с внесением эффекта наложения может быть разделено на этап свертывания и последующий этап преобразования с использованием некоторого преобразования без внесения эффекта наложения. В одном из примеров, секции свертываются в другие секции, и затем результат операции свертывания преобразуется в спектральную область, используя преобразование, такое как преобразование ДКП. В случае МДКП применяется преобразование ДКП IV.
Соответственно, это служит примером в отношении МДКП, но и другие преобразования с внесением эффекта наложения могут быть обработаны подобным и аналогичным образом. Как преобразование с перекрытием, МДКП несколько необычно по сравнению с другими преобразованиями Фурье тем, что оно имеет вдвое меньше выходов, чем входов (вместо одинакового числа). В частности, оно является линейной функцией
(Коэффициент нормализации перед этим преобразованием, здесь единица, является произвольным принятым правилом и различается в разных вариантах. Ограничивается только нижеприведенный результат нормализации МДКП и ОМДКП.)
Обратное МДКП известно как ОМДКП. Поскольку есть разное количество входов и выходов, на первый взгляд может показаться, что МДКП не должно быть обратимым. Тем не менее, превосходная обратимость достигается путем добавления ОМДКП с перекрытием для смежных во времени перекрывающихся блоков, в результате чего ошибки будут компенсироваться, а исходные данные будут извлечены; этот метод известен как удаление эффекта наложения во временной области (TDAC - time-domain aliasing cancellation).
ОМДКП преобразует N вещественных чисел X0,..., XN-1 в 2N вещественных чисел y0,..., y2N-1 по формуле:
(Как и в случае ДКП-IV, ортогонального преобразования, обратное имеет ту же форму, что и прямое преобразование.)
В случае МДКП с функцией окна с обычной нормализацией окон (см. ниже), коэффициент нормализации перед ОМДКП должен быть умножен на 2 (т.е. становится 2/N).
В типичных приложениях сжатия сигнала свойства преобразования дополнительно улучшаются за счет использования функции wn (n=0,...,2N-1) окна, которая умножается на xn и yn в вышеприведенных формулах МДКП и ОМДКП, чтобы избежать неоднородностей на границах n=0 и 2N, делая функцию равномерно сходящейся к нулю в этих точках. (То есть, мы подвергаем данные обработке функцией окна перед МДКП и после ОМДКП.) В принципе, x и y могут иметь разные функции окна, и функция окна к тому же может изменяться от одного блока к другому (особенно в случае, когда комбинируются блоки данных разных размеров), но для простоты мы рассматриваем общий случай идентичных функций окна для одинаковых по размеру блоков.
Преобразование остается обратимым (то есть, TDAC работает), для симметричного окна wn=w2N-1-n, пока w удовлетворяет условию Принсена-Бредли:
используются различные функции окна. Окно, которое производит форму, известную как модулированное преобразование с перекрытием, задается формулой
и используется для MP3 и MPEG-2 AAC, а
для Vorbis. AC-3 использует производное окно Кайзера-Бесселя (KBD - Kaiser-Bessel derived), и MPEG-4 AAC тоже может использовать окно KBD.
Следует отметить, что окна, применяемые к МДКП, отличаются от окон, используемых для некоторых других типов анализа сигналов, так как они должны выполнять условие Принсена-Бредли. Одна из причин этого различия заключается в том, что окна МДКП применяются дважды, для МДКП (анализ) и для ОМДКП (синтез).
Как видно непосредственно из определений, для четных N МДКП, в сущности, эквивалентно ДКП-IV, когда вход смещается на N/2 и сразу преобразуются два N-блока данных. При более тщательном изучении этой эквивалентности, важные свойства, подобные TDAC, могут быть легко выведены.
Чтобы точно установить взаимосвязь с ДКП-IV, следует понимать, что ДКП-IV соответствует чередованию четных/нечетных граничных условий: четные на его левой границе (около n=-1/2), нечетные на его правой границе (около n=N-1/2), и так далее (вместо периодических границ, как в случае ДПФ). Это следует из тождеств:
Таким образом, если его входы являются массивом x длины N, мы можем предположить расширение этого массива до (x, -xR, -x, xR,...) и так далее, где xR обозначает x в обратном порядке.
Рассмотрим МДКП с 2N входами и N выходами, причем мы разделим входы на четыре блока (a, b, c, d) размера N/2 каждый. Если мы смещаем их вправо на N/2 (от члена +N/2 в определении МДКП), то (b, c, d) заходит за пределы N входов ДКП-IV, поэтому мы должны "свернуть" их обратно в соответствии с граничными условиями, описанными выше.
Таким образом, МДКП 2N входов (a, b, c, d) в точности эквивалентно ДКП-IV N входов: (-cR-d, a-bR), где R обозначает обратный порядок, как и выше.
(Вследствие этого, любой алгоритм для вычисления ДКП-IV может быть заведомо применен к МДКП.)
Аналогично, вышеприведенная формула ОМДКП составляет в точности 1/2 ДКП-IV (которое является обратным самому себе), где выход расширяется (через граничные условия) до длины 2N и смещается назад влево на N/2. Обратное ДКП-IV будет просто возвращать входы (-cR-d, a-bR) из числа указанных выше. При его расширении через граничные условия и смещении, получим:
ОМДКП(МДКП(a, b, c, d))=(a-bR, b-aR, c+dR, d+cR)/2.
Половина выходов ОМДКП, таким образом, являются избыточными, поскольку b-aR=-(a-bR)R, равно как и для последних двух членов. Если мы сгруппируем вход в более крупные блоки A, B размера N, где A=(a, b) и B=(c, d), мы можем записать этот результат в более простом виде:
ОМДКП(МДКП(A, B))=(A-AR, B+BR)/2.
Теперь можно понять, как работает TDAC. Предположим, что вычисляется МДКП смежного во времени, с перекрытием на 50%, 2N блока (B, C). Тогда ОМДКП будет выдавать, аналогично вышеописанному: (B-BR, C+CR)/2. Когда это суммируется с предыдущим результатом ОМДКП в перекрывающейся половине, обращенные члены сокращаются, и получаем просто B, возвращая исходные данные.
Теперь ясно происхождение термина "удаление эффекта наложения во временной области". Использование входных данных, которые выходят за границы логического ДКП-IV, приводит к данным с эффектом наложения, точно так же, как частоты за пределами частоты Найквиста имеют эффект наложения с более низкими частотами, за исключением того, что этот эффект наложения возникает во временной области, а не в частотной области: мы не можем различить вклады от a и от bR в МДКП для (a, b, c, d) или, что то же самое, в результат ОМДКП(МДКП(a, b, c, d))=(a-bR, b-aR, c+dR, d+cR)/2. Комбинации c-dR и так далее имеют строго правильные знаки для комбинаций, чтобы они сократились при добавлении.
Для нечетных N (которые редко используются на практике), N/2 не является целым числом, и поэтому МДКП является не просто перестановкой смещением ДКП-IV. В этом случае добавочное смещение на половину отсчета означает, что МДКП/ОМДКП становится эквивалентным ДКП-III/II, и анализ аналогичен описанному выше.
Выше мы видели, что МДКП 2N входов (a, b, c, d) эквивалентно ДКП-IV N входов (-cR-d, a-bR). ДКП-IV предназначено для случая, когда функция на правой границе является нечетной, и, следовательно, значения рядом с правой границей близки к 0. Если входной сигнал является гладким, дело обстоит так: самые правые компоненты a и bR следуют друг за другом во входной последовательности (a, b, c, d), а значит их разница невелика. Посмотрим на середину интервала: если мы перепишем приведенное выше выражение как (-cR-d, a-bR)=(-d, a)-(b, c)R, второй член, (b, c)R, сглаживает переход в середине. Однако в первом члене, (-d, a), существует потенциальная неоднородность, когда правый конец -d встречается с левым концом a. Это является причиной для использования функции окна, которая сводит компоненты рядом с границами входной последовательности (a, b, c, d) к 0.
Как указано выше, свойство TDAC было доказано для обычного МДКП, демонстрируя, что добавление ОМДКП смежных во времени блоков в их перекрывающуюся половину возвращает исходные данные. Вывод этого обратного свойства для МДКП с функцией окна является лишь немного более сложным.
Рассмотрим два перекрывающихся последовательных набора из 2N входов (A, B) и (B, C), для блоков A, B, C размера N. Напомним из описанного выше, что когда (A, B) и (B, C) подвергаются МДКП, ОМДКП, и добавляются в их перекрывающуюся половину, мы получаем
Теперь допустим, что мы умножаем и входы МДКП и выходы ОМДКП на функцию окна длины 2N. Как и выше, мы предполагаем симметричную функцию окна, которая, следовательно, имеет форму (W,WR), где W является вектором длины N, а R обозначает обратный порядок, как и раньше. Тогда условие Принсена-Бредли может быть записано как
Следовательно, вместо применения МДКП к (A, B), теперь применяем МДКП к (WA, WRB) со всеми умножениями, выполняемыми поэлементно. При применении ОМДКП и опять же умножении (поэлементно) на функцию окна, половина из последних N принимает вид:
(Обратим внимание, что у нас больше нет умножения на 1/2, так как нормализация ОМДКП отличается в 2 раза в случае с обработкой функцией окна.)
Аналогично, МДКП и ОМДКП с функцией окна для (B, C) дает, в его половине из первых N:
При сложении этих двух половин вместе, возвращаются исходные данные.
Приведенное выше обсуждение МДКП описывает идентичные окна анализа/синтеза. В случае асимметричных окон анализа/синтеза окна являются разными, но желательно симметричными друг другу; в этом случае условие Принсена-Бредли меняется на более общее уравнение:
Фиг. 1b иллюстрирует реализацию декодирующего устройства, имеющего вход 150 для закодированного сигнала, входной интерфейс 152, обеспечивающий звуковой сигнал 154, с одной стороны, который находится в закодированной форме, и предоставляющий сопутствующую информацию на анализатор 202, с другой стороны. Анализатор 202 извлекает информацию 160 об окне из закодированного сигнала 150 и предоставляет эту информацию об окне конструктору 206 окон. Кроме того, закодированный звуковой сигнал 154 подается на вход декодирующего устройства или обрабатывающего устройства 156 декодирования, которое соответствует обрабатывающему устройству 214 декодирующего устройства на Фиг. 2, и конструктор 206 окон предоставляет окна на управляемый конвертер 158, который выполнен с возможностью выполнения ОМДКП или ОМДСП, или любого другого преобразования, являющегося обратным для прямого преобразования с внесением эффекта наложения.
Фиг. 1c иллюстрирует предпочтительную реализацию управляемого конвертера 158 на стороне декодирующего устройства. В частности, управляемый конвертер 158 содержит частотно-временной конвертер 170, последовательно соединенный с устройством 172 обработки функцией окна синтеза и конечным устройством 174 перекрытия с суммированием. В частности, частотно-временной конвертер выполняет преобразование, такое как преобразование ДКП-IV, и последующую операцию развертывания, так что на выходе частотно-временного конвертера 170 имеем, для первого или длинного окна, 2N отсчетов, тогда как на входе в частотно-временной конвертер было, в качестве примера, N спектральных значений. С другой стороны, если на входе в частотно-временной конвертер имеется N/8 спектральных значений, то на выходе имеем N/4 значений во временной области для операции МДКП, для примера.
Затем выход частотно-временного конвертера 170 подается на вход устройства обработки функцией окна синтеза, которое применяет окно синтеза, которое, предпочтительно, симметрично окну на стороне кодирующего устройства. Таким образом, каждый отсчет, перед выполнением перекрытия с суммированием, подвергается обработке функцией окна двумя окнами так, что в результате "общей обработки функцией окна" получаем такое произведение коэффициентов функции окна анализа и коэффициентов функции окна синтеза, что выполняется условие Принсена-Бредли, как обсуждалось ранее.
Наконец, устройство 174 перекрытия с суммированием выполняет соответствующее подходящее перекрытие с суммированием, чтобы в итоге получить декодированный звуковой сигнал на выходе 175.
Фиг. 1d иллюстрирует дополнительный вариант осуществления настоящего изобретения, реализованный с использованием подвижного устройства, причем подвижное устройство содержит, с одной стороны, кодирующее устройство 195 и, с другой стороны, декодирующее устройство 196. Кроме того, в соответствии с предпочтительным вариантом осуществления настоящего изобретения, как кодирующее устройство 105, так и декодирующее устройство 106, извлекают одну и ту же информацию об окне только из одного запоминающего устройства 197, так как окна, используемые в кодирующем устройстве 195, и окна, используемые в декодирующем устройстве 196, симметричны друг другу. Таким образом, декодирующее устройство имеет постоянное запоминающее устройство 197 или оперативное запоминающее устройство или вообще любое запоминающее устройство 197, в котором сохраняется только один набор последовательностей окон или окон для использования как в кодирующем устройстве, так и в декодирующем устройстве. Это выгодно вследствие того, что разные коэффициенты функции окна для разных окон не должны сохраняться два раза, с одним набором для кодирующего устройства и с одним набором для декодирующего устройства. Наоборот, вследствие того, что в соответствии с настоящим изобретением идентичные окна и последовательности окон используются в кодирующем устройстве и в декодирующем устройстве, должен сохраняться только один набор коэффициентов функции окна. Следовательно, использование ресурсов запоминающего устройства являющегося предметом предлагаемого изобретения подвижного устройства, показанного на Фиг. 1d, существенно снижается относительно другой концепции, в которой кодирующее устройство и декодирующее устройство имеют разные окна или в которой выполняется некоторая последующая обработка с использованием обработки, отличной от операций обработки функцией окна.
В дальнейшем, со ссылкой на Фиг. 8a, обсуждается предпочтительное окно. Оно имеет первую часть 800 перекрытия, вторую часть 802 перекрытия, дополнительную часть 804 с высокими значениями и еще одну часть 806 с низкими значениями. Высокие значения части 804 являются значениями 1,0 или, по меньшей мере, больше, чем 0,95, а низкие значения в низкой части 806 равны 0,0 и желательно ниже, чем 0,1. В варианте осуществления длина асимметричного окна анализа составляет 40 мс, и это приводит к размеру блока в 20 мс вследствие того, что используется, предпочтительно, 50%-ое перекрытие с суммированием. Тем не менее, могут быть использованы также и другие отношения перекрытия, и т.д.
В этой конкретной реализации первая часть 800 перекрытия больше, чем вторая часть 802 перекрытия, что дает возможность реализации с небольшой задержкой, а помимо этого, учитывая, что низкая часть 806 предшествует второй части перекрытия, асимметричное окно анализа, показанное на Фиг. 8a, выполнен с возможностью фильтрации с небольшой задержкой, благодаря нулевой части и короткой второй части 802 перекрытия, и к тому же имеет довольно хорошее разделение, благодаря длинной первой части 800 перекрытия. Это длинное перекрытие, однако, не вызывает никакой добавочной задержки вследствие того, что длинная часть перекрытия находится в первой половине асимметричного окна анализа. В конкретном варианте осуществления первая часть 800 перекрытия равна 14,375 мс, вторая неперекрывающаяся часть или высокая часть равна 11,25 мс, третья часть или вторая часть 802 перекрытия равна 8,75 мс и заключительная четвертая часть или низкая часть равна 5,625 мс.
Фиг. 8b иллюстрирует соответствующее асимметричное окно синтеза, которое теперь имеет, в качестве первой части 810 нулевую или низкую часть, которое после этого имеет первую часть 812 перекрытия, вторую часть 814 перекрытия и постоянную или высокую часть 816, указанную между первой частью 812 перекрытия и второй частью 814 перекрытия.
Указана иллюстративная длина соответствующих частей, но, как правило, предпочтительно, чтобы первая часть 812 перекрытия была короче, чем вторая часть 814 перекрытия, и кроме того предпочтительно, чтобы длина постоянной или высокой части 816 была между длиной первой части перекрытия и второй части перекрытия, а еще предпочтительно, чтобы длина первой части 810 или нулевой части была меньше, чем длина первой части 812 перекрытия.
Как показано на Фиг. 8a, предпочтительно, чтобы длина первой части 800 перекрытия была больше, чем длина второй части 802 перекрытия, и длина высокой части 804 была между длиной второй части 802 перекрытия и первой части 800 перекрытия, и длина четвертой части 806 была меньше, чем длина второй части 802 перекрытия.
Фиг. 8a и Фиг. 8b дополнительно иллюстрируют перекрытие с предшествующим асимметричным окном 807 анализа и с последующим окном 808 анализа для случая, когда используются только длинные блоки, и никакое переключение не указывается управляющим сигналом 204 окна, показанным на Фиг. 2.
Аналогично, Фиг. 8b иллюстрирует соответствующую последовательность синтеза с предшествующим окном 819 синтеза и последующим окном 820 синтеза.
Кроме того, Фиг. 8c иллюстрирует то же самое окно анализа, что и Фиг. 8a, но теперь со свернутыми частями 821, 822, которые свертываются в ходе операции свертывания на стороне кодирующего устройства или которые "раскладываются" в ходе развертывания на стороне декодирующего устройства. Эти свертки 821, 822 можно рассматривать как проходящие по линиям 823 и 824 свертки, и эти линии показаны также и на Фиг. 8a, 8b, и представляется, что линии свертки непосредственно не совпадают с точками пересечения окон на Фиг. 8a и 8b. Это связано с асимметричной характеристикой окна анализа на Фиг. 8a или окна синтеза на Фиг. 8b.
Фиг. 9a иллюстрирует симметричное окно анализа/синтеза с перекрытием в 3,75 мс для длины блока 10 мс. Симметричное окно анализа содержит первую низкую или нулевую часть 900, первую часть 902 перекрытия, вторую часть 904 перекрытия, высокую или постоянную часть 906 и еще низкую или нулевую часть 908. Кроме того, Фиг. 9a иллюстрирует линии 910, 911 свертки, где выполняется операция свертывания необходимая для преобразования с внесением эффекта наложения, такого как МДКП или МДСП. Конкретно, операция свертывания выполняется во время обработки на стороне кодирующего устройства, а обработка развертывания выполняется во время обработки звука на стороне декодирующего устройства. Следовательно, линии 912, 913 иллюстрируют части свертки, которые имеют убывающую часть и последующую нулевую часть, соответствующую частям 900 в отношении левой стороны и 908 в отношении правой стороны. Следовательно, метка 915 иллюстрирует бордюрную полосу между левой свернутой частью 912 и правой свернутой частью 913.
В данном контексте отметим, что Фиг. 9a иллюстрирует действительно симметричное окно анализа или синтеза, так как левая часть перекрытия и правая часть перекрытия симметричны друг другу, т.е. имеют одинаковую длину перекрытия, в этом варианте осуществления, в 3,75 мс. В общем случае предпочтительно иметь нулевые части 900, 908 меньшие, чем части 902, 904 перекрытия и, следовательно, высокая часть 906 имеет в два раза большую длину, чем одна нулевая часть, когда обе нулевые части 900, 908 имеют одинаковую длину.
Фиг. 9b иллюстрирует окно с симметричным перекрытием, которое, однако, разное по левой стороне и по правой стороне. В частности, это окно имеет, по аналогии с Фиг. 9a, нулевую часть 920, первую часть 922 перекрытия, постоянную или высокую часть 924, вторую часть 926 перекрытия и вторую нулевую или низкую часть 928. Опять же, указаны линии 910 и 911 свертки и, опять же, метка 915 указывает бордюрную полосу между левой свернутой частью 929 и правой свернутой частью 930. Как показано, левая часть 922 перекрытия предназначена для короткого перекрытия, такого как 1,25 мс, а правая часть 926 перекрытия предназначена для более длинного перекрытия, такого как 3,75 мс. Следовательно, это окно является окном перехода от обработки функцией окна с коротким окном перекрытия к большему окну перекрытия, но оба такие окна являются окнами с симметричными перекрытиями.
Фиг. 9c иллюстрирует еще одно окно, но с размером блока в 5 мс, соответствующим продолжительности времени в 10 мс, как указано. Это окно аналогично показанному на Фиг. 9b, но с существенно другими длительностями временных интервалов, и окно на Фиг. 9, следовательно, имеет более короткую продолжительность, но снова имеет последовательность из нулевой части, левой части перекрытия с коротким перекрытием, высокой части, последующей второй части перекрытия и заключительной нулевой части. Кроме того, линии свертки и свернутые части и т.д., опять указаны на Фиг. 9c.
Вообще, большинство чертежей окон на Фиг. 8a-15b имеют указанные линии свертки, такие как 910 и 911 на Фиг. 9a, и помимо этого имеют свернутые внешние части окна, такие как 912 и 913 на Фиг. 9a.
Кроме того, отметим, что соответствующая длина преобразования соответствует расстоянию между точками свертки. Например, при рассмотрении Фиг. 9a становится ясно, что длина преобразования соответствует 10 мс, что составляет разность между 15 мс и 5 мс. Следовательно, длина преобразования соответствует обозначению "блок" на Фиг. 9a и других чертежах. Однако, с другой стороны, фактически подвергаемая обработке функцией окна временная часть в два раза больше длины преобразования или блока, например 20 мс в варианте осуществления на Фиг. 9a.
Соответственно, окно на Фиг. 9c имеет длину преобразования в 5 мс, что соответствует длине временной части окна в 10 мс, как показано на Фиг. 9c.
В асимметричном случае, показанном на Фиг. 8a, длина преобразования или размер блока опять равна расстоянию между линиями свертки, такими как 823 и 824, и, следовательно, 20 мс, а длина временной части окна составляет 40 мс.
Для идеального восстановления требуется поддерживать линию свертки или точку свертки при усечении длинной часть перекрытия или край окна асимметричного окна, такого как 800 или 814 (для стадии синтеза).
Кроме того, как будет особо отмечено в отношении Фиг. 4, настоящий вариант осуществления использует шесть разных частот выборки, и длина краев окна или флангов окна выбираются таким образом, что длина соответствует целому числу значений отсчетов для каждой из частот выборки.
Кроме того отметим, что для преобразований в 10 мс используются перекрытия в 3,75 мс или перекрытия в 1,25 мс. Следовательно, даже большее число комбинаций, чем показано на чертежах окон на Фиг. 8a-15b, возможны и полезны, и могут сообщаться посредством управляющего сигнала окна, чтобы гарантировать, что выбрана оптимальная последовательность окон для некоторого звукового сигнала, имеющего переходные участки в определенных частях.
Фиг. 10a иллюстрирует это переходное окно или второе окно, следующее за более длинным первым окном. На Фиг. 10a левая сторона была усечена до длины 8,75 мс от первоначальной длины длинного края асимметричного окна 800 анализа, которое составляло 14,375 мс. Следовательно, Фиг. 10a иллюстрирует первую часть 1000 перекрытия, полученную в результате усечения из первой части 800 перекрытия первого асимметричного окна. Кроме того, переходное окно анализа на Фиг. 10a помимо этого содержит правую часть перекрытия в 1,25 мс, т.е. короткую часть 1002 перекрытия. Окно предназначено для размера блока в 5 мс, соответствующего длине окна в 10 мс. Линии свертки обозначены через 4,375 мс, т.е. 1004, и 9,375 мс показана на 1006. Кроме того, показаны свернутые части 1008 для левой линии 1004 свертки и 1010 для правой линии 1006 свертки.
Фиг. 10b иллюстрирует реализацию предпочтительного варианта осуществления, в котором используется плавное наращивание. Следовательно, первая часть перекрытия имеет другую первую часть 1012 и неизмененную вторую часть 1014, которые обе соответствуют первой части 1000 перекрытия на Фиг. 10a. Окно не отличается от показанного на Фиг. 10a. Предпочтительно, если для того, чтобы вычислить первую часть первой части перекрытия, обозначенной через 1012 на Фиг. 10b, используется синусоидальная часть перекрытия в 1,25 мс, т.е. часть, например, обозначенная через 922 на Фиг. 9b. Таким образом, получается очень хорошая характеристика плавного наращивания, при этом первая часть 922 перекрытия для короткого окна, в некотором смысле, "используется повторно". Таким образом, эта часть окна используется не только для обработки функцией окна, как в случае на Фиг. 9b, но, помимо этого, и для фактического вычисления переходного окна анализа, чтобы уменьшить артефакты, вносимые из-за усечения. Несмотря на то, что идеальное свойство восстановления получается только при использовании фактически усеченной первой части 1000 перекрытия на Фиг. 10a, было обнаружено, что качество звука, тем не менее, может быть повышено при помощи переходного окна, показанного на Фиг. 10b, у которого есть часть плавного наращивания. Эта часть плавного наращивания, пусть и нарушая свойство идеального восстановления, тем не менее, приводит к лучшему качеству звука по сравнению с вариантом осуществления на Фиг. 10a вследствие того, что устраняется неоднородность на левой стороне левой части 1000 перекрытия, показанного на Фиг. 10a. Однако же, могут использоваться и другие характеристики плавного наращивания или (в отношении стадии синтеза) плавного убавления, отличные от синусоидальной функции, если доступны и полезны.
Фиг. 10c иллюстрирует представление окна, показанного на Фиг. 10a, но теперь в ситуации перекрытия с указанием правой части 1020 перекрытия предшествующего окна и обозначением левой части перекрытия последующего окна через 1022. Как правило, правая часть 1020 перекрытия представляет собой правую часть 802 асимметричного окна анализа, показанного на Фиг. 8a, а 1022 следующего или последующего окна представляет собой первую часть перекрытия окна или является левой частью перекрытия дополнительного переходного окна, в зависимости от ситуации.
Фиг. 10d иллюстрирует ситуацию, как и на Фиг. 10b, но опять с указанием второй части 1020 перекрытия предшествующего окна и первой части 1022 перекрытия следующего окна.
Фиг. 11a иллюстрирует еще одно переходное окно анализа, но, в отличие от Фиг. 10a, где указан переход от блоков в 20 мс к блокам в 5 мс, для перехода от блоков в 20 мс к блокам в 10 мс. В общем случае, блок в 20 мс может рассматриваться как длинный блок, блок в 5 мс может рассматриваться как короткий блок, а блок в 10 мс может рассматриваться как промежуточный блок. Первая часть 1100 перекрытия была усечена, но только коротко, и это усечение обозначено через 1150. При этом, чтобы дополнительно улучшить качество звука, уже применено плавное наращивание, полученное путем умножения на синусоидальный край в 1,25 мс, и это плавное наращивание обозначено сплошной линией. Кроме того, окно имеет высокую часть 1101 и вторую перекрывающуюся часть 1102, которая, в этом случае, является длинной частью перекрытия с 3,75 мс. Следовательно, Фиг. 11a иллюстрирует оптимальное переходное окно анализа, соответствующее "второму окну" на Фиг. 2, от длины преобразования в 20 мс к длине преобразования в 10 мс, где левая часть 1100 перекрытия получена как можно меньшим усечением длинного края 800 асимметричного окна, и где, помимо этого, выполняется плавное наращивание путем умножения усеченного края 1050 на синусоидальный край в 1,25 мс. Как было отмечено, правое перекрытие составляет 3,75 мс.
Фиг. 11b иллюстрирует альтернативное переходное окно анализа для перехода от длины преобразования в 20 мс к длине преобразования в 10 мс, т.е., в общем случае, от большой длины преобразования к короткой длине преобразования. Левое перекрытие, однако, составляет только 8,75 мс в результате усечения левого края асимметричного окна и, помимо этого, выполнения плавного наращивания путем умножения с использованием синусоидального края в 1,25 мс. Следовательно, перекрытие или левая часть 1130 перекрытия теперь имеет 8,75 мс, как и в случае, показанном на Фиг. 10a. Для того чтобы применить это окно, выполняются дополнительные модификации. Эти модификации представляют собой первую низкую или нулевую часть 1131, вторую высокую или постоянную часть 1132 и третью или низкую часть 1133, а вторая часть 1134 перекрытия аналогична соответствующей части 1102 на Фиг. 11a, но смещена влево из-за четвертой нулевой или низкой части 1133. Кроме того, обозначены линии 1104, 1106 свертки и свернутые части, при этом метка 1135 указывает бордюрную полосу между левой свернутой частью 1136 и правой свернутой частью 1137. Длины частей 1131, 1132, 1133 определяются тем, что усечение выполняется большее, чем минимально возможное, как на Фиг. 11a. Для примера, часть 1131 может быть установлена равной нулю, и длина 1132 и 1133 может быть соответственно увеличена. С другой стороны, длина 1133 может быть установлена на нуль и, следовательно, длина 1131 может быть соответственно увеличена, или все части 1131, 1132, 1133 отличаются от нуля, но соответствующие длины отличаются от варианта осуществления на Фиг. 11b. Во всех этих разных реализациях окон нужно убедиться, что свертывание по линиям 1104, 1106 свертки, соответственно, возможно, и вариант b имеет преимущество по сравнению с Фиг. 11a в том, что вычисление первой части 1130 перекрытия аналогично вычислению левой части 1014, 1012 на Фиг. 10b, что облегчает реализацию на практике. Однако, когда эти проблемы столь заметны, то можно было бы использовать окно, изображенное на Фиг. 11a, так как более длинное перекрытие первой части перекрытия выполняет лучшую характеристику восстановления и даже ближе к свойству идеального восстановления.
Фиг. 12a и 12b иллюстрируют дополнительные переходные окна анализа от более коротких длин окон к большим длинам окон. Одно такое переходное окно анализа показано на Фиг. 12a для перехода от 5 мс к 20 мс. Левая часть 1200 перекрытия предназначена для короткого перекрытия, например в 1,25 мс, а правая часть перекрытия предназначена для длинного перекрытия, такого как 8,75 мс, и представлена через 1202. Фиг. 12b иллюстрирует дополнительное переходное окно анализа от блоков в 10 мс к блокам в 20 мс. Левая часть перекрытия обозначена через 1210, а правая часть перекрытия обозначена через 1212. Левая часть перекрытия предназначена для среднего перекрытия в 3,75 мс, а правая часть перекрытия предназначена для длинного или высокого перекрытия в 8,75 мс. Опять же, показаны линии свертки и свернутые части. Фиг. 12b ясно дает понять, что переходное окно анализа от 10 к 20 мс имеет, в дополнение к частям 1210, 1212 перекрытия, левую низкую или нулевую часть 1214, среднюю высокую или постоянную часть 1216 и правую низкую или нулевую часть 1218.
Правая часть 1202 перекрытия, показанная на Фиг. 12a, и правая часть 1212 перекрытия на Фиг. 12b соответствуют короткому краю асимметричного окна анализа, обозначенному через 802 на Фиг. 8a.
Фиг. 13a, 13b, 13c и 13d иллюстрируют ситуацию на стадии синтеза, т.е. иллюстрируют построение третьего окна применительно к Фиг. 2 или Случаю B. Кроме того, ситуация на Фиг. 13a аналогична ситуации на Фиг. 12a. Ситуация на Фиг. 13b аналогична ситуации на Фиг. 12b. Ситуация на Фиг. 13c аналогична показанной на Фиг. 10b, и ситуация на Фиг. 13d аналогична показанной на Фиг. 10c.
В частности, Фиг. 13a иллюстрирует переходное окно синтеза от длинного блока к короткому блоку, имеющее левую длинную часть 1300 перекрытия и правую часть 1302 перекрытия, а также обозначены соответствующие линии свертки и части свертки.
Фиг. 13b иллюстрирует переходное окно синтеза от блоков в 20 мс к блокам в 10 мс, в котором левое перекрытие вновь является длинным перекрытием, обозначенным через 1310, а правым перекрытием является 1312, и, помимо этого, предусмотрены первая низкая часть 1314, вторая высокая часть 1316 и третья низкая часть 1318, согласно требованиям.
Фиг. 13c иллюстрирует третье окно синтеза, как показанное в отношении Фиг. 2, Случай B, где обозначена вторая часть 1330 перекрытия. Оно было усечено до длины 8,75, т.е. до длины правой или второй части перекрытия асимметричного окна синтеза на Фиг. 8b, т.е. правая часть 814 перекрытия была усечена, чтобы получить правую часть 1330 перекрытия переходного окна синтеза, и, в ситуации на Фиг. 13c, дополнительное плавное убавление было выполнено в основном аналогично тому, как обсуждалось на стадии анализа по отношению к Фиг. 10b. Это иллюстрирует ситуацию со второй частью 1330 перекрытия третьего окна применительно к Фиг. 2, Случай B, но только с усечением, а не каким-либо плавным убавлением. Таким образом, первая часть 1331 на Фиг. 13c аналогична соответствующей первой части, показанной на Фиг. 13d, но вторая часть 1332 отличается из-за плавного убавления с умножением нисходящего синусоидального края в 1,25 мс на усеченное окно, показанное на Фиг. 13d.
Кроме того, Фиг. 13d иллюстрирует первую часть 1340 перекрытия следующего окна синтеза, соответствующего "четвертому окну" применительно к Фиг. 2, и, кроме того, Фиг. 13d иллюстрирует вторую часть 1342 перекрытия предшествующего окна, т.е. окна перед третьим окном, состоящим из второй части 1330 перекрытия и первой части 1331 перекрытия, в соответствии с коротким перекрытием в 1,25 мс, например.
Хотя это и не показано, окно синтеза, соответствующее ситуации на Фиг. 11a, 11b полезно, т.е. окно синтеза, имеющее минимальное усечение с плавным наращиванием или без него, по аналогии с Фиг. 11a, или окном синтеза, имеющее такой же вид усечения, как на Фиг. 13d, но теперь с первой и второй нулевыми или низкими частями и промежуточной постоянной частью.
Фиг. 14a иллюстрирует последовательность окон анализа с окнами с размерами блоков длинный, длинный, короткий, короткий, промежуточный, длинный, и соответствующими последовательностям окон синтеза, показанным на Фиг. 14b. Второе окно, применительно к Фиг. 2, обозначено через 1402, и это окно соответствует окну, показанному на Фиг. 10b. Соответственно, подходящее окно синтеза, соответствующее третьей функции 1450 окна на Фиг. 14b, применительно к Фиг. 2, является функцией синтеза, не показанной на особом чертеже, но для функции анализа, показанной на Фиг. 11b.
Кроме того, на Фиг. 15a, 1502 конкретно показано на Фиг. 11b, а третья функция 1550 окна, показанная на Фиг. 15b, соответствует функции окна синтеза, показанной на Фиг. 13c.
Следовательно, Фиг. 14a иллюстрирует переход от самого первого длинного асимметричного окна с 20 мс, обозначенного через 1406, к первой асимметричной функции 1400 окна, при этом, в частности, также проиллюстрирована нулевая часть 806, показанная на Фиг. 8a. На Фиг. 14a затем следует длинное асимметричное окно 1400 и, далее, показана вторая функция окна с усеченной первой частью 1402 перекрытия. Следующее окно 1408 аналогично окну на Фиг. 9b, а следующее окно 1410 соответствует окну, показанному на Фиг. 9c, и, наконец, окно 1412 опять представляет собой асимметричное окно анализа, показанное на Фиг. 8a.
Фиг. 14b иллюстрирует длинное окно 1454 синтеза, соответствующее показанному на Фиг. 8b, и дополнительное асимметричное окно 1456 синтеза, опять же соответствующее показанному на Фиг. 8b, а затем показано короткое переходное окно 1458, которое соответствует Фиг. 13a. Следующее окно 1460 является также коротким окном, имеющим размер блока в 5 мс, соответствует Фиг. 9c.
Фиг. 15a и 15b иллюстрируют аналогичную последовательность окон, но с переходом от длинного окна к промежуточному окну, имеющему длину в 10 мс, и соответствующим обратным переходом. Окна 1504 и 1500 соответствуют показанным на Фиг. 8a. Следом идет являющееся предметом предлагаемого изобретения усеченное и плавно наращиваемое окно 1502, за которым следует окно 1506, 1508 и 1510 в отображенном порядке. Окно 1506 соответствует окну на Фиг. 9b, но с длинным перекрытием на левой стороне и коротким перекрытием на правой стороне. Окно 1508 соответствует окну на Фиг. 12a, и окно 1510 опять же является длинным асимметричным окном.
Что касается последовательности окон синтеза на Фиг. 15b, есть окна 1554, 1556, 1558 и 1560. 1554 соответствует окну синтеза, показанному на Фиг. 8b, и то же самое верно для окна 1556. Окно 1558 является переходом от 20 к 10 и соответствует показанному на Фиг. 13b. Окно 1560 является переходом от 10 к 5 и соответствует показанному на Фиг. 9b, но, опять же, с длинным перекрытием на левой стороне, перекрытое на правой стороне. Следом идет являющееся предметом предлагаемого изобретения усеченное и плавно убавляемое окно 1550, за которым снова следует длинное асимметричное окно синтеза.
В дальнейшем обсуждается предпочтительная реализация конструктора 206 окон, применительно к Фиг. 3. В частности предпочтительно, если конструктор окон содержит запоминающее устройство 300, устройство 302 усечения части окна и устройство 304 регулировки уровня. В зависимости от управляющей информации окна, показанной под номером 310, указывающей на переход, например, от первого окна ко второму окну или от третьего окна к четвертому окну, активируется устройство 302 усечения части окна. Устройство усечения обращается к запоминающему устройству для того, чтобы извлечь часть 800 асимметричного окна или извлечь вторую часть 814 перекрытия четвертого окна. Часть извлекается по линии 308 извлечения из запоминающего устройства 300 на устройство усечения части окна. Устройство 302 усечения части окна выполняет усечение до некоторой длины, например, максимальной длины усечения, как обсуждалось, или короче максимальной длины. Усеченная часть перекрытия или край 316 окна затем пересылаются на устройство 304 регулировки уровня. Затем устройство регулировки уровня выполняет операцию плавного наращивания или плавного убавления, т.е. операцию для того, чтобы прийти к окну на Фиг. 10b, например, от окна на Фиг. 10c, иллюстрирующей усеченное окно без плавного наращивания. С этой целью устройство регулировки уровня обращается к запоминающему устройству через линию 314 доступа, чтобы извлечь из запоминающего устройства короткую часть перекрытия через линию 312 извлечения. Затем устройство 304 регулировки уровня выполняет операцию плавного наращивания или плавного убавления в отношении усеченной части окна из линии 316, например, путем перемножения усеченной части с частью перекрытия. Выходом является усеченная и плавно измененная часть в линии 318 выхода.
Фиг. 4 иллюстрирует предпочтительную реализацию запоминающего устройства 300, причем построение окна конструктором окон и разные формами и возможности окон оптимизируются, чтобы добиться минимального использования ресурсов запоминающего устройства. Предпочтительный вариант осуществления настоящего изобретения позволяет использовать шесть частот выборки в 48 кГц, 32 кГц, 25,6 кГц, 16 кГц, 12,8 кГц или 8 кГц. Для каждой частоты выборки сохраняется набор коэффициентов функции окна или частей окна. Это первая часть асимметричного окна в 20 мс, вторая часть асимметричного окна в 20 мс, одна часть симметричного окна в 10 мс, такая как часть перекрытия в 3,75 мс, и одна часть симметричного окна в 5 мс, такая как часть перекрытия в 1,25 мс. Как правило, одна часть симметричного окна в 10 мс может быть восходящим краем окна, а затем, с помощью прямой арифметической или логической операции, такой как зеркальное отображение, может быть вычислена нисходящая часть. В качестве альтернативы, если нисходящая часть сохранена в запоминающем устройстве 300 в качестве одной части, то восходящая часть может быть вычислена, с помощью зеркального отображения или, в общем случае, с помощью арифметических или логических операций. То же самое справедливо для одной части симметричного окна в 5 мс. Естественно, вследствие того, что все окна, имеющие длины в 5 или 190 мс, могут иметь на каждой стороне либо среднюю часть перекрытия, такую как 3,75 мс, либо короткую часть перекрытия, имеющую, например, длину в 1,25 мс.
Кроме того, конструктор окон выполнен с возможностью определения, самостоятельно в соответствии с соответствующими предварительно заданными правилами, длины и положения низких или нулевых частей и верхних или одиночных частей определенных окон, как проиллюстрировано графиками на Фиг. 8a-15b.
Таким образом, лишь минимальный объем требований к запоминающему устройству необходим для целей реализации кодирующего устройства и декодирующего устройства. Следовательно, не считая того, что кодирующее устройство и декодирующее устройство используют одно и то же запоминающее устройство 300, даже лишнее количество разных окон и переходных окон и т.д., может быть реализовано только посредством сохранения четырех наборов коэффициентов функции окна для каждой частоты выборки.
Переключение окон преобразования, представленное выше, было реализовано в системе кодирования звука с использованием асимметричных окон для длинных преобразований, и синусоидальных окон с низким перекрытием для коротких преобразований. Длина блока составляет 20 мс для длинных блоков и 10 мс или 5 мс для коротких блоков. Левое перекрытие асимметричного окна анализа имеет длину 14,375 мс, длина правого перекрытия составляет 8,75 мс. Короткие окна используют перекрытия в 3,75 мс и 1,25 мс. Для перехода от длины преобразования 20 мс к 10 мс или 5 мс на стороне кодирующего устройства, левая перекрывающаяся часть асимметричного окна анализа усекается до 8,75 мс и используется для левой части окна первого короткого преобразования. Применяется плавное наращивание синусоидальной формы в 1,25 мс, путем перемножения левого конца усеченного окна с восходящим коротким перекрытием окна в 1,25 мс. Повторное использование формы окна перекрытия в 1,25 мс для плавного наращивания избавляет от необходимости добавочной таблицы ПЗУ/ОЗУ, как и от трудоемкости оперативного вычисления формы плавного наращивания. Фиг. 14a изображает получающуюся последовательность окон для примера с последовательностью длин преобразования в 20 мс, 5 мс, 5 мс, 10 мс, 20 мс.
На стороне декодирующего устройства для перехода от длины преобразования 10 мс или 5 мс к 20 мс, правильная перекрывающаяся часть асимметричного окна синтеза усекается до 8,75 мс и используется для правой части окна последнего короткого преобразования. Плавное убавление синусоидальной формы в 1,25 мс, аналогично плавному наращиванию на стороне кодирующего устройства, применяется к усеченному концу окна. Последовательность окон декодирующего устройства для вышеупомянутого примера изображена на Фиг. 14b.
Фиг. 5 иллюстрирует блок-схему последовательности операций еще одного варианта осуществления для определения второго окна, т.е. переходного окна анализа для Случая A на Фиг. 2. На этапе 500 извлекаются первая и вторая части асимметричного окна. На этапе 502 формируется асимметричное первое окно анализа. Таким образом, генерируется окно анализа 1400, показанное на Фиг. 14B, или 1500, показанное на Фиг. 15A. На этапе 504 первая часть асимметричного окна извлекается по линии извлечения, например обозначенной на Фиг. 3 через 308. На этапе 506 определяется длина усечения и выполняется усечение, например, посредством устройства 302 усечения части окна, показанного на Фиг. 3. На этапе 508 извлекается одна часть симметричного окна в 5 мс, такая как Элемент 401, сохраненный в запоминающем устройстве 300. На этапе 510 вычисляется плавное наращивание усеченной части, например, в результате работы устройства 304 регулировки уровня, показанного на Фиг. 3. Теперь первая часть перекрытия завершена. На этапе 512 извлекается одна часть симметричного окна в 5 мс, например, для перехода от длинного окна к короткому окну, или извлекается одна часть симметричного окна в 10 мс для перехода от длинного к промежуточному окну. Наконец, определяется вторая часть с помощью логических или арифметических операций из данных, извлеченных на этапе 512, что обозначено как этап 514. Отметим, однако, что этап 514 не требуется, когда одна часть соответствующего симметричного окна, извлеченная на этапе 512 из запоминающего устройства 300 на Фиг. 4, уже может использоваться в качестве второй части, т.е. в качестве нисходящего края окна.
Хоть это и не показано явно на Фиг. 5, требуется дополнительный этап для целей других переходов, таких как переход, показанный на Фиг. 15a. В данном случае, первая нулевая часть, вторая нулевая часть и промежуточная высокая часть должны быть, помимо прочего, вставлены конструктором окна, принимая во внимание, что эта вставка может быть сделана перед определением первой и второй частей перекрытия второго окна, или вслед за этим.
Фиг. 6 иллюстрирует предпочтительную реализацию процедуры построения соответствующего переходного окна синтеза, такого как третье окно. С этой целью может быть выполнена процедура из этапов на Фиг. 6a. На этапе 600 первая часть перекрытия третьего окна извлекается из запоминающего устройства или, если не доступно конкретно в такой форме, вычисляется с помощью арифметических или логических операций из данных в запоминающем устройстве, и это делается на основании предшествующего окна, так как первая часть перекрытия окна синтеза уже зафиксировано перекрытием предшествующего окна. Извлекается вторая часть асимметричного окна, т.е. длинная часть асимметричного окна синтеза, и на этапе 604 определяется длина усечения. На этапе 606, при необходимости, эта первая часть зеркально отображается, и затем выполняется усечение с использованием определенной длины усечения. На этапе 608 извлекается одна часть части перекрытия в 5 мс симметричного окна и, вслед за этапом 608, выполняется плавное убавление усеченной части, как показано на этапе 610. Вторая часть перекрытия третьего окна завершена и, вслед за этим, вторая и четвертая части асимметричной четвертой функции окна извлекаются и применяются, чтобы в итоге получить четвертое окно, что обозначено как этап 612.
Фиг. 7 иллюстрирует предпочтительную процедуру для определения длины усечения. Как отмечалось ранее в отношении Фиг. 10b и 11b, разные длины усечения могут быть выполнены. Может быть усечение до максимальной длины усечения, т.е. ситуация на Фиг. 11a, или усечение до длины меньшей, чем максимальная длина усечения, как показано на Фиг. 11b для той же ситуации. С этой целью процедура на Фиг. 7 начинается с указания длины переходного окна, показанного на этапе 700. Этап 700, следовательно, обеспечивает информацию о том, предназначено ли переходное окно для размера блока в 10 мс, т.е. с длиной в 20 мс или короче, т.е. окно для длины в 10 мс для размера блока в 5 мс.
Затем, на этапе 702 определяется длина симметричной части перекрытия окна. Для стадии анализа это означает, что определяется длина второй части перекрытия, тогда как для стадии синтеза это означает, что определяется длина для первой части перекрытия. Этап 702 гарантирует, что подтверждено "фиксированное" состояние переходного окна, т.е. что переходное окно имеет симметричное перекрытие. Далее, на этапе 704, определяется второй край окна или другая часть перекрытия окна. В принципе, максимальная длина усечения является разностью между длиной переходного окна и длиной симметричной части перекрытия. Если эта длина больше, чем длина длинного края асимметричного окна, то вообще никакое усечение не требуется. Однако, если эта разность меньше, чем длинный край асимметричного окна, то выполняется усечение. Максимальная длина усечения, т.е. длина, при которой получается минимальное усечение, равна этой разности. В случае необходимости может быть выполнено усечение до этой максимальной длины, т.е. минимальное усечение, и может быть применено некоторое плавное изменение, как показано на Фиг. 11a или 10b. Как показано на Фиг. 11a, требуется некоторое количество единиц, чтобы убедиться в том, что свертывание вдоль линий 1104, 1106 свертки возможно, вследствие того, что эти линии свертки не должны изменяться в некоторых вариантах осуществления. Следовательно, некоторое число единиц, что обозначено через 1101 на Фиг. 11a, необходимы для переходного окна анализа от 20 к 10 мс, но эти единицы не нужны для переходного окна от 20 к 5 мс, показанного на Фиг. 10b.
Этап 704, однако, может быть обойден, что показано как 708. Затем усечение до длины меньше максимальной выполняется на этапе 710, что приводит к ситуации, показанной на Фиг. 11b. Оставшаяся часть окна должна быть заполнена нулями и единицами, и, в частности, должна составляться путем вставки нулей в начале и в конце окна, обозначенных как части 1131 и 1133, на этапе 712. Кроме того, должна быть выполнена вставка соответствующего количества единиц для получения высокой части 1132, что обозначено через 714, чтобы убедиться в том, что свертывание вокруг точек 1104 и 1106 свертки функционирует правильно, как показано на Фиг. 11b.
Следовательно, количество нулей части 1131 равно количеству нулей в непосредственной близости к первой части 1130 перекрытия, количество нулей в части 1133 на Фиг. 11b, соответствует количеству нулей, непосредственно примыкающих ко второй части 1134 перекрытия на Фиг. 11b. Тогда свертывание с меткой 1135 вокруг линий 1104 и 1106 свертки работает правильно.
Хотя предпочтительные варианты осуществления и были описаны касательно длины окна в 40 мс и длины преобразования в 20 мс в виде длинного окна, размера блока в 10 мс для промежуточных окон и размера блока в 5 мс для короткого окна, следует подчеркнуть, что может применяться и другой размер блока или окна. Кроме того, следует подчеркнуть, что настоящее изобретение также полезно и только для двух разных размеров блока, но три разных размера блоков предпочтительны для того, чтобы иметь очень хорошее размещение коротких функций окна относительно перехода, что, например, подробно обсуждается в документе PCT/EP2014/053287, с обсуждением, помимо этого, частей с несколькими перекрытиями, т.е. перекрытием между более чем двумя окнами, входящими в состав последовательностей на Фиг. 15a и 15b или 14a и 14b.
Хотя настоящее изобретение и было описано в привязке к структурным схемам, в которых блоки представляют действительные или логические компоненты аппаратных средств, настоящее изобретение также может быть реализовано способом, основой которого является программное обеспечение. В последнем случае блоки представляют соответствующие этапы способа, причем эти этапы замещают функциональные возможности, осуществляемые соответствующими логическими или физическими блоками аппаратных средств.
Хотя некоторые аспекты и были описаны применительно к устройству, понятно, что эти аспекты также представляют описание соответствующего способа, причем блок или устройство соответствует этапу способа или компоненту этапа способа. Аналогично, аспекты, описанные применительно к этапу способа, также представляют описание соответствующего блока или элемента или компоненту соответствующего устройства. Некоторые или все этапы способа могут быть исполнены аппаратным устройством (или с его использованием), таким, например, как микропроцессор, программируемый компьютер или электронная схема. В некоторых вариантах осуществления некоторые один или несколько из наиболее важных этапов способа могут быть исполнены таким устройством.
Являющийся предметом предлагаемого изобретения передаваемый или закодированный сигнал может быть сохранен в цифровой среде хранения информации или может быть передан в среде передачи, такой как беспроводная среда передачи или проводная среда передачи, такая как сеть Интернет.
В зависимости от конкретных требований к реализации, варианты осуществления настоящего изобретения могут быть реализованы в аппаратных средствах или в программном обеспечении. Реализация может быть выполнена с использованием цифровой среды хранения информации, например гибкого диска, DVD, Blu-ray, CD, ПЗУ, ППЗУ, а также СППЗУ, ЭСППЗУ или Флэш-память, с сохраненными в ней считываемыми в электронном виде управляющими сигналами, которые взаимодействуют (или способны взаимодействовать) с программируемой компьютерной системой таким образом, чтобы выполнялся соответственный способ. Следовательно, цифровая среда хранения информации может быть считываемой компьютером.
Некоторые варианты осуществления в соответствии с настоящим изобретением содержат носитель данных, имеющий считываемые в электронном виде управляющие сигналы, которые способны взаимодействовать с программируемой компьютерной системой таким образом, чтобы выполнялся один из способов, описанных в данном документе.
В общем смысле, варианты осуществления настоящего изобретения могут быть реализованы в виде компьютерного программного продукта с программным кодом, причем программный код функционирует с целью выполнения одного из способов, когда компьютерный программный продукт запускается на компьютере. Программный код может, например, храниться на машиночитаемом носителе.
Другие варианты осуществления содержат компьютерную программу для выполнения одного из способов, описанных в данном документе, сохраненную на машиночитаемом носителе.
Другими словами, одним из вариантов осуществления являющегося предметом предлагаемого изобретения способа является, следовательно, компьютерная программа с программным кодом для выполнения одного из способов, описанных в данном документе, при запуске компьютерной программы на компьютере.
Дополнительным вариантом осуществления являющегося предметом предлагаемого изобретения способа является, следовательно, носитель данных (или долговременная среда хранения информации, такая как цифровая среда хранения данных или считываемая компьютером среда), содержащий, записанную на нем, компьютерную программу для выполнения одного из способов, описанных в данном документе. Носитель информации, цифровая среда хранения данных или среда с возможностью записи обычно являются материальными и/или долговременными.
Дополнительным вариантом осуществления являющегося предметом предлагаемого изобретения способа является, следовательно, поток данных или последовательность сигналов, представляющих компьютерную программу для выполнения одного из способов, описанных в данном документе. Поток данных или последовательность сигналов могут, например, иметь возможность быть переданными через соединение для передачи данных, например, через сеть Интернет.
Дополнительный вариант осуществления содержит средство обработки, например, компьютер или программируемое логическое устройство, выполненное с возможностью выполнения одного из способов, описанных в данном документе, или приспособленное для этого.
Дополнительный вариант осуществления содержит компьютер с установленной на нем компьютерной программой для выполнения одного из способов, описанных в данном документе.
Дополнительный вариант осуществления в соответствии с настоящим изобретением содержит устройство или систему, выполненную с возможностью пересылки (например, в электронном виде или оптически) компьютерной программы для выполнения одного из способов, описанных в данном документе, на принимающее устройство. Принимающим устройством может быть, например, компьютер, подвижное устройство, запоминающее устройство или тому подобное. Устройство или система могут, например, содержать файловый обслуживающий узел для пересылки компьютерной программы на принимающее устройство.
В некоторых вариантах осуществления программируемое логическое устройство (например, программируемая пользователем вентильная матрица) может использоваться для выполнения некоторых или всех функциональных возможностей способов, описанных в данном документе. В некоторых вариантах осуществления программируемая пользователем вентильная матрица может взаимодействовать с микропроцессором для выполнения одного из способов, описанных в данном документе. В общем случае предпочтительно, чтобы способы выполнялись каким-либо аппаратным устройством.
Описанные выше варианты осуществления являются лишь иллюстративными в отношении принципов настоящего изобретения. Понятно, что для специалистов в данной области техники будут очевидны модификации и вариации компоновок и деталей, описанных в данном документе. Следовательно, намерение состоит в том, чтобы ограничиваться только объемом следующей вскоре формулы изобретения, а не конкретными деталями вариантов осуществления, представленных посредством описания и объяснения в данном документе.
Ссылочные материалы
[1] International Organization for Standardization, ISO/IEC 14496-3, "Information Technology - Coding of audio-visual objects - Part 3: Audio", Женева, Швейцария, август 2009.
[2] Internet Engineering Task Force (IETF), RFC 6716, "Definition of the Opus Audio Codec", сентябрь 2012.
[3] C. R. Helmrich, G. Markovic and B. Edler, "Improved Low-Delay MDCT-Based Coding of Both Stationary and Transient Audio Signals" в докладах IEEE 2014 Int. Conference on Acoustics, Speech and Signal Processing (ICASSP), 2014 или PCT/EP2014/053287.
Изобретение относится к обработке звука, в частности, к обработке звука с перекрывающимися окнами для анализа или синтеза в цепочке обработки звукового сигнала. Технический результат – повышение качества обработки звукового сигнала. Обрабатывающее устройство для обработки звукового сигнала содержит: анализатор для получения управляющего сигнала окна из звукового сигнала, указывающего на изменение от первого асимметричного окна ко второму окну, или указывающего на изменение от третьего окна к четвертому асимметричному окну, при этом второе окно короче первого окна, или при этом третье окно короче четвертого окна; конструктор окон для построения второго окна с использованием первой части перекрытия первого асимметричного окна, при этом конструктор окон выполнен с возможностью определения первой части перекрытия второго окна с использованием усеченной первой части перекрытия первого асимметричного окна, или при этом конструктор окон выполнен с возможностью вычисления второй части перекрытия третьего окна с использованием усеченной второй части перекрытия четвертого асимметричного окна; и средство обработки функцией окна для применения первого и второго окна или третьего и четвертого окна, чтобы получить части подвергнутого обработке функцией окна звукового сигнала. 3 н. и 15 з.п. ф-лы, 33 ил.
1. Обрабатывающее устройство для обработки звукового сигнала (200), содержащее:
анализатор (202) для получения управляющего сигнала (204) окна из звукового сигнала (200), указывающего на изменение от первого асимметричного окна (1400) ко второму окну (1402), или для указания на изменение от третьего окна (1450) к четвертому асимметричному окну (1452), при этом второе окно (1402) короче первого асимметричного окна (1400), или при этом третье окно (1450) короче четвертого асимметричного окна (1452);
конструктор (206) окон для построения второго окна (1402) с использованием первой части (800) перекрытия первого асимметричного окна (1400), при этом конструктор (206) окон выполнен с возможностью определения первой части (1000) перекрытия второго окна (1402) с использованием усеченной первой части перекрытия первого асимметричного окна, или при этом конструктор окон выполнен с возможностью вычисления второй части (1330) перекрытия третьего окна (1450) с использованием усеченной второй части (814) перекрытия четвертого асимметричного окна (1452); и
средство (208) обработки функцией окна для применения первого асимметричного окна и второго окна или третьего окна и четвертого асимметричного окна, чтобы получить части (210) подвергнутого обработке функцией окна звукового сигнала.
2. Обрабатывающее устройство по п. 1,
в котором первое и второе окна являются окнами анализа, или третье и четвертое окна являются окнами синтеза,
в котором обрабатывающее устройство дополнительно содержит устройство (110) кодирования звука для дополнительной обработки отсчетов, подвергнутых обработке функцией окна посредством первого и второго окон, или в котором обрабатывающее устройство дополнительно содержит устройство (174) перекрытия с суммированием для перекрытия с суммированием отсчетов, подвергнутых обработке функцией окна посредством третьего и четвертого окон.
3. Обрабатывающее устройство по п. 1,
в котором конструктор (206) окон выполнен с возможностью получения первой части (1000) перекрытия второго окна путем усечения первой части перекрытия первого окна и плавного наращивания усеченной части, полученной путем усечения первой части перекрытия первого асимметричного окна или
в котором конструктор (206) окон выполнен с возможностью получения второй части перекрытия третьего окна путем усечения второй части перекрытия четвертого окна и плавного убавления усеченной части, полученной путем усечения второй части перекрытия четвертого асимметричного окна.
4. Обрабатывающее устройство по п. 3,
в котором конструктор (206) окон выполнен с возможностью выполнения плавного наращивания или плавного убавления с использованием синусоидальной функции плавного наращивания или синусоидальной функции плавного убавления.
5. Обрабатывающее устройство по п. 3,
в котором конструктор (206) окон выполнен с возможностью вычисления плавного наращивания или плавного убавления с использованием части перекрытия любого другого окна, используемого обрабатывающим устройством.
6. Обрабатывающее устройство по п. 5,
в котором конструктор (206) окон выполнен с возможностью вычисления плавного наращивания или плавного убавления (304) с использованием самой короткой части (401) перекрытия из всех используемых частей перекрытия.
7. Обрабатывающее устройство по п. 1, дополнительно содержащее запоминающее устройство (300) с сохраненными на нем, для определенной частоты выборки, первую часть (800) перекрытия первого асимметричного окна, вторую часть (802) перекрытия первого асимметричного окна и третью часть перекрытия для дополнительного окна, которое короче первого окна,
в котором конструктор (206) окон выполнен с возможностью извлечения (308) первой части перекрытия первого асимметричного окна из запоминающего устройства (300), усечения (302) первой части перекрытия до длины короче, чем длина первой части перекрытия первого окна для получения усеченной первой части перекрытия,
извлечения (312) третьей части перекрытия, и
умножения (304) усеченной первой части перекрытия на третью часть перекрытия, чтобы сгенерировать первую часть перекрытия второго окна; или
в котором конструктор (206) окон выполнен с возможностью
извлечения второй части перекрытия четвертого асимметричного окна из запоминающего устройства (300),
усечения извлеченной второй части перекрытия четвертого окна до длины короче, чем длина второй части перекрытия (302) четвертого окна для получения усеченной второй части перекрытия,
извлечения третьей части перекрытия (312); и
умножения усеченной второй части перекрытия на третью часть перекрытия, чтобы сгенерировать вторую часть перекрытия третьего окна.
8. Обрабатывающее устройство по п. 7,
в котором запоминающее устройство (300) дополнительно хранит четвертую часть (402) перекрытия еще одного окна, причем это еще одно окно имеет длину между длиной первого окна и длиной дополнительного окна.
9. Обрабатывающее устройство по п. 8,
в котором конструктор (206) окон выполнен с возможностью построения, в зависимости от управляющего сигнала (204) окна, последовательности, содержащей первое окно (1400), второе окно (1402), добавочное окно, построенное с использованием третьей части перекрытия и четвертой части перекрытия или с использованием только третьей части перекрытия, и дополнительное добавочное окно (1410), использующее третью часть перекрытия и вторую часть перекрытия первого окна.
10. Обрабатывающее устройство по п. 9,
в котором конструктор (206) окон выполнен с возможностью определения первой части перекрытия второго окна (1402) с использованием усеченной первой части перекрытия первого асимметричного окна (1400), являющейся усеченной до длины второй части перекрытия первого асимметричного окна, или
определения второй части перекрытия третьего окна с использованием второй части перекрытия четвертого окна, усеченного до длины первой части перекрытия четвертого асимметричного окна.
11. Обрабатывающее устройство по п. 10,
в котором конструктор (206) окон выполнен с возможностью определения второго окна с использованием первой части перекрытия второго окна (1402) и второй части (1002) перекрытия второго окна (1402), соответствующей первой части (1022) перекрытия дополнительного окна, следующего за вторым окном, или
в котором конструктор (206) окон выполнен с возможностью построения третьего окна, благодаря использованию первой части (1331) перекрытия третьего окна, соответствующей второй части (1342) перекрытия дополнительного окна, предшествующего третьему окну (1450).
12. Обрабатывающее устройство по п. 11,
в котором конструктор (206) окон выполнен с возможностью усечения первой части перекрытия первого асимметричного окна или второй части перекрытия четвертого асимметричного окна до длины усечения, которая не длиннее длины окна второго или третьего окна за вычетом длины первой части перекрытия дополнительного окна, следующего за вторым окном, или длины второй части перекрытия дополнительного окна, предшествующего третьему окну (706, 710).
13. Обрабатывающее устройство по п. 12,
в котором, когда длина усечения меньше, чем длина окна за вычетом длины первой части перекрытия дополнительного окна или второй части перекрытия окна, конструктор (206) окон выполнен с возможностью вставки (712) нулей (1131, 1133) до или после первой и второй частей перекрытия второго или третьего окна, и в котором конструктор окон, кроме того, выполнен с возможностью вставки некоторого количества значений "1" (714; 1132) между первой и второй частями перекрытия второго окна или третьего окна.
14. Обрабатывающее устройство по п. 1,
в котором первое асимметричное окно имеет первую часть перекрытия, вторую часть перекрытия, первую часть с высокими значениями между первой и второй частью перекрытия и вторую часть с низкими значениями после второй части перекрытия, при этом значения в части с высокими значениями больше 0,9, а значения в части с низкими значениями ниже 0,1, и
в котором длина второй части перекрытия меньше, чем длина первой части перекрытия.
15. Обрабатывающее устройство по п. 1, которое выполнено с возможностью работы на множестве разных частот выборки, и
при этом обрабатывающее устройство выполнено с возможностью сохранения, для каждой частоты выборки, первой и второй частей перекрытия первого или четвертого окна (403, 404), симметричной части перекрытия дополнительного окна (402) и дополнительной симметричной части перекрытия (401) еще одного окна, которое короче, чем дополнительное окно; и
при этом симметричная часть перекрытия и дополнительная симметричная часть перекрытия сохраняются только как восходящая или нисходящая часть, и при этом конструктор (206) окон выполнен с возможностью получения нисходящей или восходящей части из сохраненной восходящей или нисходящей части с помощью арифметических или логических операций.
16. Обрабатывающее устройство по п. 1,
в котором первое окно выполнено с возможностью преобразования длиной в 20 мс, при этом конструктор окон выполнен с возможностью дополнительного использования дополнительных окон для преобразования длиной в 10 мс или 5 мс, и
в котором второе окно является переходным окном от преобразования длиной в 20 мс к преобразованию длиной в 10 мс или 5 мс, или
в котором четвертое окно выполнено с возможностью преобразования длиной в 20 мс, и в котором третье окно является переходным окном от преобразования длиной в 5 мс к 20 мс или от преобразования длиной в 10 мс к 20 мс.
17. Способ обработки звукового сигнала (200), содержащий этапы, на которых:
получают (202) управляющий сигнал (204) окна из звукового сигнала (200), указывающий на изменение от первого асимметричного окна (1400) ко второму окну (1402), или для указания на изменение от третьего окна (1450) к четвертому асимметричному окну (1452), при этом второе окно (1402) короче первого асимметричного окна (1400), или при этом третье окно (1450) короче четвертого асимметричного окна (1452);
строят (206) второе окно (1402) с использованием первой части (800) перекрытия первого асимметричного окна (1400), при этом построение второго окна содержит определение первой части (1000) перекрытия второго окна (1402) с использованием усеченной первой части перекрытия первого асимметричного окна, или при этом построение третьего окна содержит вычисление второй части (1330) перекрытия третьего окна (1450) с использованием усеченной второй части (814) перекрытия четвертого асимметричного окна (1452); и
применяют (208) первое асимметричное окно и второе окно или третье окна и четвертое асимметричное окно, чтобы получить части (210) подвергнутого обработке функцией окна звукового сигнала.
18. Машиночитаемый носитель, имеющий сохраненную на нем компьютерную программу для выполнения, при исполнении на компьютере или обрабатывающем устройстве, способа по п. 17.
Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз | 1924 |
|
SU2014A1 |
ПЕРЕКЛЮЧАЕМАЯ АУДИО КОДИРУЮЩАЯ/ДЕКОДИРУЮЩАЯ СХЕМА С МУЛЬТИРАЗРЕШЕНИЕМ | 2009 |
|
RU2520402C2 |
EP 2980791 A1, 03.02.2016 | |||
Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз | 1924 |
|
SU2014A1 |
РЕМИНЕРАЛИЗАЦИОННЫЙ СТОМАТОЛОГИЧЕСКИЙ МАТЕРИАЛ | 2020 |
|
RU2800094C2 |
СПОСОБ ПОЛУЧЕНИЯ ИНУЛИНА ИЗ СМЕСИ ДИКОРАСТУЩИХ РАСТЕНИЙ | 2015 |
|
RU2619758C1 |
EP 2947654 A1, 25.11.2015 | |||
Способ приготовления лака | 1924 |
|
SU2011A1 |
Авторы
Даты
2019-01-16—Публикация
2015-07-24—Подача