кодирование аудиосигнала с низкой скоростью передачи битов
Классы МПК: | G10L19/08 определение или кодирование функций возбуждения; определение или кодирование параметров долгосрочных прогнозов |
Автор(ы): | ГЕРРИТС Андреас Й. (NL), ДЕН БРИНКЕР Альбертус С. (NL) |
Патентообладатель(и): | КОНИНКЛЕЙКЕ ФИЛИПС ЭЛЕКТРОНИКС Н.В. (NL) |
Приоритеты: |
подача заявки:
2004-07-08 публикация патента:
20.09.2009 |
Изобретение относится к кодированию и декодированию широкополосных сигналов, таких как отдельные аудиосигналы. В аудиокодере оценивают количество синусоид на один аудиосегмент. Синусоиду представляют частотой, амплитудой и фазой. Обычно фазу квантуют независимо от частоты. В изобретении частота используется независимо от квантования фазы, и, в частности, низкие частоты квантуют с использованием меньших интервалов квантования, чем более высокие частоты. Таким образом, развернутые фазы более низких частот квантуют более точно, возможно с меньшим диапазоном квантования, чем фазы более высоких частот. Технический результат - значительно повышается качество декодированного сигнала, особенно для квантователей с низкой скоростью передачи битов. 5 н. и 12 з.п. ф-лы, 3 табл., 9 ил.
Формула изобретения
1. Способ кодирования аудиосигнала, причем способ содержит обеспечение соответствующего набора значений дискретизированного сигнала (x(t)) для каждого из множества последовательных сегментов;
анализ значений дискретизированного сигнала (x(t)) для определения одной или нескольких синусоидальных компонент для каждого из множества последовательных сегментов, причем каждая синусоидальная компонента включает в себя значение частоты ( ) и значение фазы ( );
объединение синусоидальных компонент на множестве последовательных сегментов для обеспечения синусоидальных дорожек;
определение для каждой синусоидальной дорожки в каждом из множества синусоидальных сегментов прогнозируемого значения фазы в функции значения фазы, по меньшей мере, для предыдущего сегмента;
определение для каждой синусоидальной дорожки измеренного значения фазы ( ), содержащего обычно монотонно изменяющееся значение;
квантование синусоидальных кодов (CS) в функции прогнозируемого значения фазы и измеренного значения фазы ( ) для сегмента, в котором синусоидальные коды квантованы в зависимости, по меньшей мере, от значения частоты ( ) соответствующей синусоидальной дорожки; и
кодирование сигнала (AS), включающего в себя синусоидальные коды (CS ), представляющие частоту и фазу.
2. Способ по п.1, в котором в первой синусоидальной дорожке, включающей в себя первую синусоидальную компоненту с первым значением частоты, синусоидальные коды (C S) квантуют с использованием первой точности квантования, а во второй синусоидальной дорожке, включающей в себя вторую синусоидальную компоненту со вторым значением частоты, превышающем первое значение частоты, синусоидальные коды (CS) квантуют с использованием второй точности квантования, которая меньше или равна первой точности квантования.
3. Способ по п.1, в котором синусоидальные коды (CS) для дорожки включают в себя начальное значение фазы и начальное значение частоты, и при прогнозировании используют начальное значение частоты и начальное значение фазы для обеспечения первого прогноза.
4. Способ по п.1, в котором значение фазы каждого связанного сегмента определяют в функции интеграла частоты для предыдущего сегмента и частоты связанного сегмента, а также фазы предыдущего сегмента, в котором синусоидальные компоненты включают в себя значение фазы ( ) в диапазоне {- ; }.
5. Способ по п.1, в котором квантование синусоидальных кодов включает в себя определение разности фаз между каждым прогнозируемым значением и соответствующим наблюдаемым значением ( ).
6. Способ по п.4, в котором шаг кодирования содержит управление квантованием в функции квантованных синусоидальных кодов (CS).
7. Способ по п.6, в котором синусоидальные коды (CS) включают в себя индикатор конца дорожки.
8. Способ по п.1, который также содержит
синтез синусоидальных компонент с использованием синусоидальных кодов (CS );
вычитание значений синтезированного сигнала из дискретизированных значений (x(t)) сигнала для обеспечения набора значений (х 3), представляющих остаточную компоненту аудиосигнала;
моделирование остаточной компоненты аудиосигнала путем определения параметров, аппроксимирующих остаточную компоненту; и
включение упомянутых параметров в аудиопоток (AS).
9. Способ по п.1, в котором значения (хi) дискретизированного сигнала представляют аудиосигнал, из которого были удалены переходные компоненты.
10. Способ декодирования аудиопотока (AS ), включающего в себя синусоидальные коды (CS ), представляющие частоту и фазу и информацию о связывании, причем способ содержит
прием сигнала, включающего в себя аудиопоток (AS );
деквантование синусоидальных кодов (CS ) с получением таким образом значения развернутой деквантованной фазы, где синусоидальные коды
(CS) деквантуют в зависимости, по меньшей мере, от одного значения частоты соответствующей синусоидальной дорожки;
вычисление значения частоты исходя из значений ( ) деквантованной развернутой фазы; и
использование значений деквантованных частоты и фазы для синтеза синусоидальных компонент аудиосигнала (y(t)).
11. Способ по п.10, в котором в первой синусоидальной дорожке, включающей в себя первую синусоидальную компоненту с первым значением частоты, синусоидальные коды (C S) деквантуют с использованием первой точности квантования, а во второй синусоидальной дорожке, включающей в себя вторую синусоидальную компоненту со вторым значением частоты, превышающем первое значение частоты, синусоидальные коды (CS) деквантуют с использованием второй точности квантования, которая меньше или равна первой точности квантования.
12. Способ по п.10, в котором значение фазы каждой связанной синусоидальной компоненты определяют в функции интеграла частоты для предыдущего сегмента и частоты связанного сегмента, а также фазы предыдущего сегмента, и в котором синусоидальные компоненты включают в себя значение фазы ( ) в диапазоне {- ; }.
13. Способ по п.12, в котором управление точностью квантования осуществляют в функции квантованных синусоидальных кодов.
14. Аудиокодер, выполненный для обработки соответствующего набора значений дискретизированного сигнала для каждого из множества последовательных сегментов, причем кодер содержит
анализатор для анализа значений дискретизированного сигнала для определения одной или нескольких синусоидальных компонент для каждого из множества последовательных сегментов, причем каждая синусоидальная компонента включает в себя значение частоты и значение фазы;
блок (13) объединения синусоидальных компонент на всем множестве последовательных сегментов для обеспечения синусоидальных дорожек;
блок (44) разворачивания фазы для определения для каждой синусоидальной дорожки в каждом из множества последовательных сегментов прогнозируемого значения в функции значения фазы, по меньшей мере, для предыдущего сегмента и для определения для каждой синусоидальной дорожки измеренного значения ( ) фазы, содержащего обычно монотонно изменяющееся значение;
квантователь (50) для квантования синусоидальных кодов в функции прогнозируемого значения фазы и измеренного значения ( ) фазы для сегмента, где синусоидальные коды квантуют в зависимости, по меньшей мере, от одного значения частоты соответствующей синусоидальной дорожки; и
средство (15) для кодирования аудиосигнала, включающего в себя синусоидальные коды (CS ), представляющие частоту и фазу.
15. Аудиокодер по п.14, в котором квантователь (50) адаптируется в первой синусоидальной дорожке, включающей первую синусоидальную компоненту с первым значением частоты, для квантования синусоидальных кодов (C S) с использованием первой точности квантования, и во второй синусоидальной дорожке, включающей в себя вторую синусоидальную компоненту со вторым значением частоты, превышающем первое значение частоты, для квантования синусоидальных кодов (CS) с использованием второй точности квантования, которая меньше или равна первой точности квантования.
16. Аудиоплеер, содержащий
средство для считывания кодированного аудиосигнала, включающего в себя синусоидальные коды, представляющие частоту и фазу для каждой дорожки связанных синусоидальных компонент;
деквантователь синусоидальных кодов (CS) с получением таким образом значения развернутой деквантованной фазы, причем синусоидальные коды
(CS) деквантуют в зависимости, по меньшей мере, от одного значения частоты соответствующей синусоидальной дорожки и вычисление значения частоты исходя из значений ( ) деквантованной развернутой фазы; и
синтезатор, скомпонованный для использования созданных значений фазы и частоты для синтеза синусоидальных компонент аудиосигнала.
17. Аудиосистема, содержащая аудиокодер по п.14 и аудиоплеер по п.16.
Описание изобретения к патенту
Область техники, к которой относится изобретение
Настоящее изобретение относится к кодированию и декодированию широкополосных сигналов, таких как отдельные аудиосигналы.
Уровень техники
При передаче широкополосных сигналов, например аудиосигналов, таких как речь, для уменьшения полосы пропускания или скорости передачи битов сигнала используют способы сжатия или кодирования.
На фиг.1 показана известная схема параметрического кодирования, а именно синусоидальный кодер, который используется в настоящем изобретении и который описан в WO 01/69593. В этом кодере входной аудиосигнал x(t) разделен на несколько временных сегментов или кадров (возможно перекрывающихся), причем длительность каждого из них обычно составляет 20 мс. Каждый сегмент раскладывается на переходную, синусоидальную и шумовую компоненты. Также можно извлечь другие компоненты входного аудиосигнала, такие как гармонические комплексные составляющие, хотя они не имеют отношения к целям настоящего изобретения.
В синусоидальном анализаторе 130 сигнал х2 для каждого сегмента моделируется с использованием нескольких синусоид, представленных амплитудой, частотой и фазой. Эту информацию обычно выделяют на временном интервале анализа в результате выполнения преобразования Фурье (FT), которое обеспечивает спектральное представление интервала, включающее: частоты, амплитуды для каждой частоты и фазы для каждой частоты, где каждая фаза «свернута», то есть лежит в диапазоне {- ; }. Как только получена оценка синусоидальной информации для сегмента, инициируется алгоритм слежения. Этот алгоритм использует функцию стоимости для связывания друг с другом синусоид в различных сегментах на посегментной основе для получения так называемых «дорожек». Таким образом, алгоритм слежения приводит к созданию синусоидальных кодов СS, содержащихся в синусоидальной дорожке, которые начинаются с определенного момента времени, существуют в течение некоторого времени на множестве временных сегментов, а затем прекращаются.
При таком синусоидальном кодировании информация о частоте обычно передается применительно к дорожкам, сформированным в кодере. Это можно сделать достаточно просто и с относительно низкими затратами, поскольку дорожки содержат только медленно изменяющуюся частоту. Следовательно, информацию о частоте можно эффективно передавать посредством временного дифференциального кодирования. В общем случае дифференциальное кодирование во времени можно также использовать и для амплитуды.
В отличие от частоты фаза быстрее изменяется во времени. Если частота постоянна, то фаза изменяется во времени линейно, а изменения частоты приведут к соответствующим отклонениям изменения фазы от линейного закона. Изменение фазы в функции индекса сегмента дорожки будет носить приблизительно линейный характер. Следовательно, передача кодированной фазы является более сложной задачей. Однако при передаче фаза ограничена диапазоном {- ; }, то есть фаза «свернута», как это представлено в преобразовании Фурье. Из-за представления фазы по модулю 2 теряется структурное межкадровое соотношение для фазы, и, на первый взгляд, она ведет себя как случайная переменная.
Однако, поскольку фаза является интегралом частоты, она является избыточной, и, в принципе, в ее передаче нет необходимости. Это обстоятельство носит название «продолжение фазы», при этом оно значительно уменьшает скорость передачи битов.
При продолжении фазы для сохранения скорости передачи битов передается только первая синусоида каждой дорожки. Каждую последующую фазу вычисляют из начальной фазы и частот дорожки. Поскольку частоты квантуют и их оценки не всегда отличаются высокой точностью, непрерывное значение фазы будет отклоняться от измеренного значения. Эксперименты показывают, что продолжение фазы снижает качество аудиосигнала.
Передача фазы для каждой синусоиды повышает качество декодированного сигнала на приемной стороне, но это также приводит к значительному увеличению скорости передачи битов/полосы пропускания. Таким образом, объединенный квантователь частоты/фазы, в котором измеренные фазы синусоидальной дорожки, имеющие значения от - до , разворачиваются с использованием измеренных частот и информации для связывания, выдает развернутые фазы, монотонно возрастающие вдоль дорожки. В таком кодере развернутые фазы квантуют, используя квантователь с адаптивной дифференциальной импульсно-кодовой модуляцией (ADPCM), и передают в декодер. Декодер извлекает частоты и фазы синусоидальной дорожки из траектории развернутой фазы.
При продолжении фазы передается только кодированная частота, а фаза восстанавливается в декодере из данных о частоте путем использования интегрального соотношения между фазой и частотой. Однако известно, что при использовании продолжения фазы фаза не может быть восстановлена совершенным образом. При появлении ошибок по частоте, например, из-за ошибок измерения частоты или из-за шума квантования, фаза, восстанавливаемая с использованием интегрального соотношения, обычно содержит ошибку, которая носит дрейфовый характер. Это происходит потому, что ошибки по частоте имеют приблизительно случайный характер. Низкочастотные ошибки усиливаются в результате интегрирования, и, следовательно, восстановленная фаза будет иметь тенденцию дрейфа от действительного измеренного значения. Это приводит к акустическим искажениям.
Это показано на фиг.2а, где и являются соответственно реальной частотой и реальной фазой для дорожки. Как в кодере, так и в декодере частота и фаза связаны интегральным соотношением, представленным символом «I». Процесс квантования в кодере моделируется в виде добавленного шума n. Таким образом, в декодере восстановленная фаза включает в себя две компоненты: реальную фазу и шумовую компоненту 2, причем спектр восстановленной фазы и функция спектральной плотности мощности шума 2 имеют явно выраженный низкочастотный характер.
Таким образом, очевидно, что при продолжении фазы, поскольку восстановленная фаза является интегралом низкочастотного сигнала, восстановленная фаза сама является низкочастотным сигналом. Однако шум, наведенный в процессе восстановления, также доминирует в низкочастотном диапазоне. Следовательно, будет трудно разделить эти источники с точки зрения фильтрации шума n, наведенного во время кодирования.
В стандартных способах квантования частота и фаза квантуются независимо друг от друга. В общем случае для параметра фазы используется равномерный скалярный квантователь. Учитывая особенности восприятия, низкие частоты следует квантовать более точно, чем высокие частоты. Поэтому частоты преобразуются с получением неоднородного представления путем использования ERB или функции Bark, а затем их равномерно квантуют, в результате чего получается однородный квантователь. Также, исходя из физических представлений, можно прийти к следующему выводу: в гармонических комплексных составляющих более высокие гармонические частоты склонны к большим вариациям частоты, чем более низкие частоты.
При совместном квантовании частоты и фазы точность квантования зависит от частоты опосредованно. Использование подхода на основе равномерного квантования приводит к низкокачественному восстановлению звука. Кроме того, что касается высоких частот, для которых точность квантования может быть снижена, можно разработать квантователь, для которого потребуется меньше битов. Аналогичный механизм желательно иметь для развернутых фаз.
Раскрытие изобретения
Изобретение обеспечивает способ кодирования широкополосного сигнала, в частности аудиосигнала, такого как речевой сигнал, использующий низкую скорость передачи битов. В синусоидальном кодере количество синусоид оценивается на один аудиосегмент. Синусоиду представляют частотой, амплитудой и фазой. Обычно фазу квантуют независимо от частоты. В изобретении используется квантование фазы, не зависящее от частоты, и, в частности, низкие частоты квантуют, используя меньшие интервалы квантования, чем для более высоких частот. Таким образом, развернутые фазы более низких частот квантуются более точно, возможно при меньшем диапазоне квантования, чем фазы более высоких частот. Изобретение обеспечивает значительное повышение качества декодированного сигнала, особенно для квантователей с низкой скоростью передачи битов.
Изобретение позволяет использовать совместное квантование частоты и фазы при неравномерном квантовании частоты. Это дает преимущество при передаче информации о фазе с низкой скоростью передачи битов, при поддержании высокой точности для фазы и хорошего качества сигнала на всех частотах, в частности на низких частотах.
Преимущество этого способа заключается в повышенной точности для фазы, в частности на более низких частотах, где ошибка по фазе соответствует большей ошибке по времени, чем на более высоких частотах. Это важно, поскольку человеческое ухо чувствительно не только к частоте и фазе, но также к абсолютным временным характеристикам, как в переходных составляющих, при этом способ согласно изобретению обеспечивает повышение качества звука особенно в тех случаях, когда для квантования значений фазы и частоты используют лишь небольшое количество битов. С другой стороны, требуемое качество звука можно получить, используя меньшее количество битов. Поскольку низкие частоты изменяются медленно, диапазон квантования можно больше ограничить, чтобы обеспечить более точное квантование. Кроме того, гораздо быстрее происходит адаптация к более точному квантованию.
Изобретение можно применить в аудиокодере, где используются синусоиды. Изобретение относится как к кодеру, так и к декодеру.
Краткое описание чертежей
Фиг.1 - известный аудиокодер, в котором реализуется вариант изобретения;
Фиг.2а - взаимосвязь между фазой и частотой в известных системах;
Фиг.2b - взаимосвязь между фазой и частотой в аудиосистемах согласно настоящему изобретению;
Фиг.3а и 3b - предпочтительный вариант компоненты синусоидального кодера в аудиокодере по фиг.1;
Фиг.4 - аудиоплеер, в котором реализован вариант изобретения;
Фиг.5а и 5b - предпочтительный вариант компоненты синусоидального синтезатора в аудиоплеере по фиг.4; и
Фиг.6 - система, содержащая аудиокодер и аудиоплеер согласно изобретению.
Осуществление изобретения
Далее описываются предпочтительные варианты изобретения со ссылками на сопроводительные чертежи, где одинаковым ссылочным позициям соответствуют одинаковые компоненты и, если не указано иное, они выполняют аналогичные функции. В предпочтительном варианте настоящего изобретения кодер 1 является синусоидальным кодером того типа, который описан в WO 01/69593, фиг.1. Функционирование этого известного кодера и соответствующего декодера раскрыто во всех подробностях, в связи с чем описание их работы приводится здесь только тогда, когда это уместно с точки зрения настоящего изобретения.
Как в известной системе, так и в предпочтительном варианте настоящего изобретения аудиокодер 1 дискретизирует входной аудиосигнал с определенной частотой дискретизации, в результате чего получают цифровое представление x(t) аудиосигнала. Затем кодер 1 разделяет дискретизированный входной сигнал на три компоненты: переходные компоненты сигнала, установившиеся детерминированные компоненты и установившиеся стохастические компоненты. Аудиокодер 1 содержит кодер 11 переходных компонент, синусоидальный кодер 13 и шумовой кодер 14.
Кодер 11 переходных компонент содержит детектор (TD) 110 переходных компонент, анализатор (TA) 11 переходных компонент и синтезатор (TS) 112 переходных компонент. Сначала сигнал x(t) поступает на вход детектора 110 переходных компонент. Этот детектор 110 оценивает, имеется ли переходная компонента сигнала, а также ее положение. Эта информация подается в анализатор 111 переходных компонент. Если положение переходной компоненты сигнала определено, то анализатор 111 переходных компонент пытается выделить основную часть переходной компоненты сигнала. Он сопоставляет функцию формы с сигнальным сегментом, начиная предпочтительно с оцененного начального положения, и определяет контент в зависимости от функции формы, используя, например, некоторое (небольшое) количество синусоидальных компонент. Эта информация содержится в коде СT переходной составляющей, причем более подробная информация о создании кода СТ переходной составляющей приведена в WO 01/69593.
Код СT переходной составляющей подается в синтезатор 112 переходных компонент. Синтезированная переходная компонента сигнала вычитается в вычитателе 16 из входного сигнала x(t), в результате чего получается сигнал х1. Для получения х2 из х1 используется механизм GC (12) управления усилением.
Сигнал х2 подается в синусоидальный кодер 13, где он анализируется в синусоидальном анализаторе (SA) 130, который определяет (детерминированные) синусоидальные компоненты. Таким образом понятно, что, хотя наличие анализатора переходных компонент желательно, это не является обязательным, и изобретение можно реализовать без указанного анализатора. В альтернативном варианте, как упоминалось выше, изобретение также можно реализовать, например, с анализатором комплексных гармоник. Короче говоря, синусоидальный кодер кодирует входной сигнал х2 в виде дорожек синусоидальных компонент, связывающих один кадровый сегмент со следующим.
Обратимся теперь к фиг.3а, где так же, как и в известном уровне техники, каждый сегмент входного сигнала х2 в предпочтительном варианте изобретения преобразуется в частотную область в блоке 40 преобразования Фурье (FT). Для каждого сегмента блок FT выдает измеренные значения амплитуды А, фазы и частоты . Как упоминалось ранее, диапазон фаз, обеспечиваемых преобразованием Фурье, ограничивается неравенством Блок 42 алгоритма слежения (ТА) берет информацию для каждого сегмента и, используя подходящую функцию стоимости, связывает синусоиды из одного сегмента с синусоидами следующего сегмента, в результате чего создается последовательность измеренных фаз (k) и частот (k) для каждой дорожки.
В отличие от известного уровня техники, синусоидальные коды СS, созданные, в конце концов, анализатором 130, включают в себя информацию о фазе, и из этой информации в декодере восстанавливается частота.
Однако, как упоминалось выше, измеренная фаза свернута, что означает, что она сведена к представлению по модулю 2 . Таким образом, в предпочтительном варианте анализатор содержит блок 44 развертывания фазы (PU), где представление фазы по модулю 2 разворачивается, чтобы показать структурное поведение фазы от кадра к кадру для одной дорожки. Так как частота в синусоидальных дорожках практически постоянна, очевидно, что развернутая фаза , как правило, будет представлять собой практически линейную возрастающую (или убывающую) функцию, что удешевляет передачу фазы, то есть возможна передача с низкой скоростью передачи битов. Развернутая фаза подается в качестве входного сигнала в фазовый кодер (PE) 46, который выдает выходные квантованные уровни r представления, подходящие для передачи.
Обратимся теперь к работе блока 44 разворачивания фазы, упомянутого выше, где непрерывная фаза и мгновенная частота для дорожки связаны соотношением:
(1) |
где Т0 - опорный момент времени.
Синусоидальная дорожка в кадрах k=K, K+1 , K+L-1 имеет измеренные частоты (k) (выраженные в радианах в секунду) и измеренные фазы (k) (выраженные в радианах). Расстояние между центрами кадров задается величиной U (скорость обновления, выраженная в секундах). Предполагается, что измеренные частоты представляют собой предполагаемые отсчеты основной частоты дорожки в непрерывном времени, причем (k)= (kU), и аналогичным образом измеренные фазы представляют собой отсчеты соответствующей фазы дорожки в непрерывном времени, причем (k)= (kU)mod(2 ). Для синусоидального кодирования предполагается, что является приблизительно постоянной функцией.
Если допустить, что частоты в сегменте практически постоянны, то уравнение 1 можно аппроксимировать следующим образом:
(2) |
Таким образом очевидно, что, зная фазу и частоту для данного сегмента и частоту следующего сегмента, можно оценить значение развернутой фазы для следующего сегмента и далее для каждого сегмента дорожки.
В предпочтительном варианте блок разворачивания фазы определяет коэффициент разворачивания m(k) в момент времени k:
(3) |
Коэффициент разворачивания m(k) указывает блоку 44 разворачивания фазы количество циклов, которое следует добавить, чтобы получить развернутую фазу.
Используя совместно уравнения 2 и 3, блок разворачивания фазы определяет значение коэффициента пошагового разворачивания e(k) следующим образом:
где е должно быть целым числом. Однако из-за ошибок измерения и моделирования коэффициент пошагового разворачивания не будет в точности целым, а именно:
в предположении, что ошибки моделирования и измерений малы.
Если имеется коэффициент е пошагового разворачивания, то m(k) из уравнения (3) вычисляют как кумулятивную сумму, где без потери общности блок разворачивания фазы начинает работу с первого кадра K при m(K)=0, и из m(k) и (k) определяют (развернутую) фазу (kU).
На практике дискретизированные данные (kU) и (kU) искажаются ошибками измерения:
где 1 и 2 - ошибки фазы и частоты соответственно. Для предотвращения неоднозначности в определении коэффициента разворачивания данные измерений необходимо определять с достаточной точностью. Таким образом, в предпочтительном варианте слежение ограничивается таким образом, чтобы:
где - ошибка при операции округления. Ошибка определяется главным образом ошибками в из-за умножения на U. Положим, что определяется из максимума абсолютного значения преобразования Фурье исходя из дискретизированной версии входного сигнала с частотой дискретизации FS, и что разрешение преобразования Фурье составляет 2 /La при длине анализа La. Исходя из необходимости удовлетворения рассмотренного ограничения, имеем:
Это означает, что длина анализа должна быть в несколько раз больше длины обновления, чтобы разворачивание фазы было точным; например, если установить 0=1/4, то длина анализа должна быть в четыре раза больше длины обновления (если пренебречь ошибками 1 при измерении фазы).
Второе, о чем следует помнить, чтобы избежать ошибок при операции округления, это то, что дорожки определяются приблизительно. В блоке 42 слежения синусоидальные дорожки обычно определяются путем рассмотрения приращений амплитуд и частот. Вдобавок, можно также учесть информацию о фазе в критерии связывания. Например, можно определить ошибку прогнозирования фазы как разность между измеренным значением и прогнозируемым значением согласно выражению
где прогнозируемое значение может быть получено как
Таким образом, целесообразно, чтобы блок 42 слежения запрещал дорожки, для которых превышает некоторое значение (например, > /2), что приводит к однозначному определению e(k).
Вдобавок кодер может вычислять фазы и частоты, которые будут доступны в декодере. Если фазы или частоты, которые будут доступны декодеру, слишком сильно отличаются от фаз и/или частот, которые имеются в кодере, может быть принято решение прервать дорожку, то есть сигнализировать о конце дорожки и начать новую дорожку, используя текущие частоту и фазу и связанные с ними синусоидальные данные.
Дискретизированная развернутая фаза (kU), созданная блоком 44 разворачивания фазы (PU), является входным сигналом для кодера (PE) 46 фазы для создания набора уровней r представления. Известны способы эффективной передачи обычно монотонно изменяющейся характеристики, такой как развернутая фаза. В предпочтительном варианте, показанном на фиг.3b, используется адаптивная дифференциальная импульсно-кодовая модуляция (ADPCM). Здесь блок (PF) 48 прогнозирования используется для оценки фазы следующего сегмента дорожки и кодирования только приращения в квантователе (Q) 50. Поскольку предполагается, что является практически линейной функцией, а также в целях упрощения, блок 48 прогнозирования выбран в виде фильтра второго порядка:
y(k+1)=2x(k)-x(k-1),
где х - входной сигнал, а y - выходной сигнал. Однако очевидно, что можно применить также другие функциональные соотношения (в том числе соотношения более высокого порядка), а также ввести (обратную или прямую) адаптацию коэффициентов фильтра. В предпочтительном варианте для упрощения управления квантователем 50 используют механизм 52 управления с обратной адаптацией (QC). Также возможно прямое адаптивное управление, но для этого потребуются дополнительные издержки на увеличение скорости передачи битов.
Очевидно, что инициализация кодера (и декодера) для дорожки начинается с обработки сведений о начальной фазе (0) и частоте (0). Они квантуются и передаются посредством отдельного механизма. Вдобавок, передается шаг начального квантования, используемый в контроллере 52 квантования для кодера и соответствующем контроллере 62 в декодере (см. фиг.5b), либо он устанавливается равным определенному значению, как в кодере, так и в декодере. Наконец, сигнализация о конце дорожки может быть передана в отдельном побочном потоке или в виде уникального символа в потоке битов фаз.
Начальная частота развернутой фазы известна как в кодере, так и в декодере. На основе этой частоты выбирают точность квантования. Для траекторий развернутой фазы, начинающихся с низкой частоты, выбирают более точную координатную сетку квантования, то есть более высокое разрешение, чем для траектории развернутой фазы, начинающейся с более высокой частоты.
В квантователе ADPCM исходя из предыдущих фаз на дорожке прогнозируется/оценивается развернутая фаза (k), где k представляет индекс на дорожке. Затем квантуются и передаются разность между прогнозируемой фазой и развернутой фазой (k). Квантователь адаптируется для каждой развернутой фазы на дорожке. Когда ошибка прогнозирования мала, квантователь ограничивает диапазон возможных значений, и квантование может оказаться более точным. С другой стороны, когда ошибка прогнозирования велика, квантователь использует более грубое квантование.
Квантователь Q (на фиг.3b) квантует ошибку прогнозирования , которая вычисляется как
Ошибку прогнозирования можно квантовать, используя справочную таблицу. Для этой цели поддерживается таблица Q. Например, для 2-битового квантователя ADPCM начальная таблица для Q может выглядеть, как Таблица 1.
Таблица 1: Таблица квантования Q, используемая для первого продолжения | ||
Индекс i | Нижние границы bl | Верхняя граница bu |
0 | - | -3,0 |
1 | -3,0 | 0 |
2 | 0 | 3,0 |
3 | 3,0 |
Квантование выполняется следующим образом. Ошибку прогнозирования сравнивают с границами b, так чтобы удовлетворялось следующее неравенство:
bli< bui.
Исходя из значения i, удовлетворяющего вышеуказанному соотношению, вычисляют уровень r представления, полагая r=i.
Соответствующие уровни представления запоминают в таблице R представления, показанной в виде Таблицы 2.
Таблица 2: Таблица представления R, используемая для первого продолжения | ||
Уровень представления r | Таблица представления R | Тип уровня |
0 | -3,0 | Внешний уровень |
1 | -0,75 | Внутренний уровень |
2 | 0,75 | Внутренний уровень |
3 | 3,0 | Внешний уровень |
Записи в Таблицах Q умножаются на коэффициент с для квантования следующей синусоидальной компоненты на дорожке.
Q(k+1)=Q(k)·c,
R(k+1)=R(k)·c.
Во время декодирования дорожки обе таблицы масштабируют в соответствии с созданными уровнями r представления. Если r равен 1 или 2 (внутренний уровень) для текущего субкадра, то тогда коэффициент с масштабирования для таблицы квантования устанавливается равным
с=2-1/4.
Поскольку с<1, частота и фаза следующей синусоиды на дорожке становится более точной. Если r равен 0 или 3 (внешний уровень), то коэффициент масштабирования устанавливается равным
с=21/2.
Поскольку с>1, точность квантования для следующей синусоиды на дорожке уменьшается. Используя эти коэффициенты, можно выполнить одно увеличение масштаба с последующим его аннулированием на двух шагах уменьшения масштаба. Отличие в коэффициентах увеличения и уменьшения масштаба дает быстрое увеличение масштаба, в то время как соответствующее уменьшение масштаба потребует двух шагов.
Для того чтобы избежать очень маленьких или очень больших записей в таблице квантования, адаптация выполняется только в том случае, если абсолютное значение внутреннего уровня находится между /64 и 3/4 . В этом случае с устанавливают равным 1.
В декодере для преобразования полученных уровней r представления в квантованную ошибку прогнозирования должна поддерживаться только таблица R. Эта операция обратного квантования выполняется блоком DQ на фиг.5b.
При использовании вышеуказанных установок качество восстановленного звука нуждается в улучшении. Согласно изобретению для дорожек развернутой фазы в зависимости от начальной частоты используют разные начальные таблицы. Этим достигается более высокое качество звука. Выполняется это следующим образом. Начальные таблицы Q и R масштабируют на основе первой частоты дорожки. В Таблице 3 даны масштабные коэффициенты вместе с диапазонами частот. Если первая частота дорожки лежит в конкретном частотном диапазоне, то выбирается соответствующий масштабный коэффициент, а таблицы R и Q делятся на этот масштабный коэффициент. Конечные точки могут также зависеть от первой частоты дорожки. В декодере для того, чтобы начать с правильной начальной таблицы R, выполняется соответствующая процедура.
Таблица 3: Масштабные коэффициенты, зависящие от частоты, и начальные таблицы | |||
Диапазон частот | Масштабный коэффициент | Начальная таблица Q | Начальная таблица R |
0-500 Гц | 8 | - -0,19 0 0,19 | -0,38 -0,09 0,09 0,38 |
500-1000 Гц | 4 | - -0,37 0 0,37 | -0,75 -0,19 0,19 0,75 |
1000-4000 Гц | 2 | - -0,75 0 0,75 | -1,5, -0,38 0,38 1,5 |
4000-22050 Гц | 1 | - -1,5 0 1,5 | -3 -0,75 0,75 3 |
В таблице 3 показан пример масштабных коэффициентов, зависящих от частоты, и соответствующих начальных таблиц Q и R для 2-битового квантователя ADPCM. Диапазон звуковых частот 0-22050 Гц делится на четыре частотных поддиапазона. Понятно, что точность фазы возрастает в диапазонах более низких частот по отношению к диапазонам более высоких частот.
Количество частотных поддиапазонов и масштабных коэффициентов, зависящих от частоты, может варьироваться, и его можно выбрать исходя из конкретной цели и предъявляемых требований. Как было описано выше, масштаб начальных таблиц Q и R в таблице 3, зависящих от частоты, можно динамически увеличивать и уменьшать для адаптации к изменениям фазы от одного временного сегмента к следующему.
Например, в 3-битовом квантователе ADPCM начальные границы восьми интервалов квантования, заданных тремя битами, могут быть определены следующим образом: Q={- -1,41 -0,707 -0,35 0 0,35, 0,707 1,41 }, причем минимальный размер координатной сетки может составлять /64, а максимальный размер координатной сетки /2.
Таблица представления R может выглядеть следующим образом:
R= {-2,117, -1,0585, -0,5285, -0,1750, 0, 0,1750, 0,5285, 1,0585, 2,117}. В этом случае можно использовать такую же инициализацию в зависимости от частоты, как в таблице Q и К, показанной в Таблице 3.
Исходя из синусоидального кода (CS), созданного синусоидальным кодером, синусоидальный синтезатор (SS) 131 восстанавливает синусоидальную компоненту сигнала таким же образом, как это будет описано для синусоидального синтезатора (SS) 32 декодера. Этот сигнал вычитается в вычитателе 17 из входного сигнала x2 синусоидального кодера 13, в результате чего получают остаточный сигнал х3. Остаточный сигнал х3, созданный синусоидальным кодером 13, поступает в шумовой анализатор 14 предпочтительного варианта изобретения, который создает шумовой код СN, представляющий этот шум, как описано, например, в международной патентной заявке № PCT/EP00/04599.
Наконец, в мультиплексоре 15 образуется аудиопоток АС который включает в себя коды С T, CS и СN. Аудиопоток АС подается, например, в шину данных, антенную систему, запоминающую среду и т.д.
На фиг.4 показан аудиоплеер 3, подходящий для декодирования аудиопотока AS', например, созданного кодером 1 по фиг.1, который получают из шины данных, антенной системы, запоминающей среды и т.д. Аудиопоток AS' демультиплексируется в демультиплексоре 30 для получения кодов СT, C S и СN. Эти коды подаются в синтезатор 31 переходных компонент, синусоидальный синтезатор 32 и шумовой синтезатор 33 соответственно. Исходя из кода СТ в синтезаторе 31 переходных компонент, вычисляют переходные компоненты сигнала. В случае, когда код переходной компоненты указывает функцию формы, вычисляется форма на основе принятых параметров. Далее на основе частот и амплитуд синусоидальных компонент вычисляют контент формы. Если код СТ переходной компоненты указывает шаг, то тогда переходная компонента не вычисляется. Результирующий переходный сигнал yT представляет собой сумму всех переходных компонент.
Синусоидальный код (C S), включающий в себя информацию, закодированную анализатором 130, используется синусоидальным синтезатором 32 для создания сигнала yS. Обратимся теперь к фигурам 5а и b, где синусоидальный синтезатор 32 содержит фазовый декодер (PD) 56, совместимый с фазовым кодером 46. Здесь обратный квантователь (DQ) 60 вместе с прогнозирующим фильтром (PF) 64 второго порядка создает (оценку) развернутую фазу исходя из уровней r представления, начальной информации (0), (0), обеспеченных прогнозирующим фильтром (PF) 64, и начального шага квантования для контроллера (QC) 62 квантования.
Как показано на фиг.2b, частоту можно восстановить из развернутой фазы путем дифференцирования. Положим, что фазовая ошибка в декодере приблизительно представляет собой белый шум, и поскольку дифференцирование усиливает высокие частоты, его можно объединить с фильтрацией нижних частот для уменьшения шума и получения таким образом точной оценки частоты в декодере.
В предпочтительном варианте блок (FR) 58 фильтрации аппроксимирует операцию дифференцирования, которое необходимо для получения частоты из развернутой фазы посредством таких процедур, как вычисление правосторонней, левосторонней и центральной разностей. Это позволяет декодеру создавать (в качестве выходного сигнала) фазы и частоты , которые можно использовать известным образом для синтеза синусоидальной компоненты кодированного сигнала.
В то же время, при синтезе синусоидальных компонент сигнала в шумовой синтезатор NS 33, который является по сути фильтром, имеющим частотную характеристику, аппроксимирующую спектр шума, подают шумовой код СN. Синтезатор NS 33 генерирует восстановленный шум yN путем фильтрации сигнала белого шума с помощью шумового кода СN. Результирующий сигнал y(t) содержит сумму переходного сигнала yT и произведения (g) на сумму синусоидального сигнала yS и шумового сигнала yN. Аудиоплеер содержит два сумматора 36 и 37 для суммирования соответствующих сигналов. Общий сигнал подается в выходной блок 35, представляющий собой, например, динамик.
На фиг.6 показана аудиосистема согласно изобретению, содержащая аудиокодер 1, показанный на фиг.1, и аудиоплеер 3, показанный на фиг.4. Указанная система предлагает функции воспроизведения и записи. Аудиопоток AS подается из аудиокодера в аудиоплеер по каналу 2 связи, который может представлять собой беспроводное соединение, шину 20 данных или носитель данных. В случае, если канал 2 связи представляет собой носитель данных, он может быть неотъемлемой частью системы либо представлять собой съемный диск, карту памяти и т.д. Канал 2 связи может являться частью аудиосистемы, но, однако, чаще всего он находится вне аудиосистемы.
Кодированные данные из нескольких последовательных сегментов связаны между собой. Это выполняется следующим образом. Для каждого сегмента определяется количество синусоид (например, с использованием быстрого преобразования Фурье (FFT)). Синусоида характеризуется частотой, амплитудой и фазой. Количество синусоид меняется от сегмента к сегменту. Как только определены синусоиды для сегмента, выполняется анализ для связывания с синусоидами из предыдущего сегмента. Это называется «связывание» или «слежение». Указанный анализ основан на отличии синусоиды текущего сегмента от всех синусоид предыдущего сегмента. Связывание/слежение выполняется применительно к синусоиде в предшествующем сегменте, который имеет минимальное отличие. Если даже это минимальное отличие больше определенного порогового значения, то соединение с синусоидами предыдущего сегмента не выполняется. Таким путем создается или «рождается» новая синусоида.
Различие между синусоидами определяется с использованием «функции стоимости», которая использует частоту, амплитуду и фазу синусоид. Этот анализ выполняется для каждого сегмента. Результатом является большое количество дорожек для аудиосигнала. «Зарождение» дорожки представляет собой синусоиду, не имеющую соединений с синусоидами из предыдущих сегментов. Зарожденная синусоида кодируется без использования дифференцирования. Синусоиды, которые соединены с синусоидами из предыдущих сегментов, называются продолжениями, и они кодируются не так, как синусоиды из предыдущего сегмента. Это позволяет сэкономить много битов, поскольку кодируются только приращения, а не абсолютные значения.
Если f(n-1) является частотой синусоиды из предыдущего сегмента, а f(n) является подсоединенной синусоидой из текущего сегмента, то тогда в декодер передается приращение f(n)-f(n+1). Число n представляет номер на дорожке: n=1 - «зарождение», n=2 - первое продолжение и т.д. То же самое верно для амплитуд. Передается значение фазы начальной синусоиды (=зарожденная синусоида), в то время как для продолжения фаза не передается, поскольку эта фаза может быть получена на основе значений частоты. Если дорожка не имеет продолжения в следующем сегменте, то она заканчивается или «умирает».
Класс G10L19/08 определение или кодирование функций возбуждения; определение или кодирование параметров долгосрочных прогнозов