Область техники
Настоящее изобретение относится к кодированию и, в частности, но не исключительно, к кодированию речи или звука.
Уровень техники
Аудиосигналы, такие как речь или музыка, кодируют, к примеру, для обеспечения возможности их эффективной передачи или хранения.
Для представления аудиосигналов, таких как музыка и фоновый шум, используются кодеры и декодеры. Эти типы кодеров обычно не используют для процесса кодирования речевую модель, а используют процессы для представления всех типов аудиосигналов, включая речь.
Речевые кодеры и декодеры (кодеки) обычно оптимизированы для речевых сигналов и могут работать как с постоянным, так и с переменным битрейтом.
Аудиокодек также может быть сконфигурирован для работы с варьируемыми битрейтами. На низких битрейтах такой аудиокодек может работать с речевыми сигналами на скорости кодирования, эквивалентной чисто речевому кодеку. На более высоких битрейтах аудиокодек может кодировать любой сигнал, включая музыку, фоновый шум и речь, с более высоким качеством и характеристиками.
В некоторых аудиокодеках входной сигнал делится на ограниченное количество полос. Каждая из полос может квантоваться. Из теории психоакустики известно, что самые высокие частоты спектра менее важны для восприятия, чем низкие. В некоторых аудиокодеках это отражается битовым распределением, где высокочастотным сигналам назначается меньшее количество битов, нежели низкочастотным.
Помимо этого некоторые кодеки для улучшения эффективности кодирования используют корреляцию между низкочастотными и высокочастотными полосами или областями аудиосигнала.
Обычно высокочастотные полосы достаточно похожи на низкочастотные, и некоторые кодеки могут кодировать только низкочастотные полосы и воспроизводить полосы высоких частот в виде масштабированной копии низкочастотных полос. Таким образом, используя лишь небольшое количество дополнительной управляющей информации, можно достичь значительного сокращения суммарного битрейта кодека.
Один такой кодек для кодирования высокочастотной области известен как кодирование высокочастотной области (HFR - higher frequency region). Одним из способов кодирования высокочастотной области является копирование спектральной полосы (SBR - spectral-band-replication), разработанное компанией Coding Technologies. В случае SBR известный аудиокодер, такой как Moving Pictures Expert Group MPEG-4 Advanced Audio Coding (AAC) или MPEG-1 Layer III (МР3), кодирует низкочастотную область. Высокочастотная область формируется отдельно при помощи кодированной низкочастотной области.
При кодировании SBR высокочастотная область получается переносом низкочастотной области в сторону высоких частот. Перенос основан на блоке квадратурных зеркальных фильтров (QMF - Quadrature Mirror Filter) с 32 полосами и осуществляется так, что заранее задано, из каких отсчетов полосы сформирован каждый отсчет высокочастотной полосы. Это выполняется независимо от характеристик входного сигнала.
Высокочастотные полосы модифицируют, исходя из дополнительной информации. Для того чтобы сделать отдельные свойства синтезированной высокочастотной области более похожими на исходные, осуществляется фильтрация. Для увеличения схожести с оригинальной высокочастотной областью в высокочастотную область вносятся дополнительные компоненты, такие как синусоиды или шум. В конце концов, огибающая настраивается для соответствия огибающей исходного высокочастотного спектра.
Тем не менее, кодирование высокочастотной области не создает идентичной копии оригинальной высокочастотной области. Говоря конкретнее, известные механизмы кодирования высокочастотной области выполняются относительно несовершенно, если входной сигнал тональный, другими словами, не имеет шумоподобного спектра.
Сущность изобретения
Настоящее изобретение исходит из того, что известным кодекам не хватает гибкости в возможности эффективного и точного кодирования аппроксимаций сигналов.
Варианты настоящего изобретения предназначены для решения указанной проблемы.
В соответствии с первым аспектом изобретения предлагается кодер для кодирования аудиосигнала, при этом кодер сконфигурирован для:
определения множества одночастотных компонент; выбора по меньшей мере одной одночастотной компоненты из первого подмножества множества одночастотных компонент.
Кодер также может быть сконфигурирован для формирования по меньшей мере одного первого индикатора для представления по меньшей мере одной выбранной одночастотной компоненты.
Кодер также может быть сконфигурирован для выбора по меньшей мере одной дополнительной одночастотной компоненты из по меньшей мере второго подмножества множества одночастотных компонент.
Кодер также может быть сконфигурирован для формирования по меньшей мере одного второго индикатора для представления по меньшей мере одной выбранной дополнительной одночастотной компоненты.
Кодер также может быть сконфигурирован для разделения множества одночастотных компонент по меньшей мере на первое и второе подмножества одночастотных компонент.
Кодер также может быть сконфигурирован для разделения множества одночастотных компонент по меньшей мере на первое и второе подмножества одночастотных компонент в зависимости от частоты одночастотной компоненты в множестве.
Кодер также может быть сконфигурирован для разделения множества одночастотных компонент по меньшей мере на первое и второе подмножества одночастотных компонент в зависимости от перцепционной значимости одночастотной компоненты в множестве.
Одночастотные компоненты предпочтительно являются синусоидами.
В соответствии со вторым аспектом изобретения представлен способ кодирования аудиосигнала, включающий: определение множества одночастотных компонент; выбор по меньшей мере одной одночастотной компоненты из первого подмножества множества одночастотных компонент.
Способ также может включать формирование по меньшей мере одного первого индикатора для представления по меньшей мере одной выбранной одночастотной компоненты.
Способ также может включать выбор по меньшей мере одной дополнительной одночастотной компоненты из по меньшей мере второго подмножества множества одночастотных компонент.
Способ также может включать формирование по меньшей мере одного второго индикатора для представления по меньшей мере одной выбранной дополнительной одночастотной компоненты.
Способ также может включать разделение множества одночастотных компонент по меньшей мере на первое и второе подмножества одночастотных компонент.
Разделение множества одночастотных компонент по меньшей мере на первое и второе подмножества одночастотных компонент может зависеть от частоты одночастотной компоненты в множестве.
Разделение множества одночастотных компонент по меньшей мере на первое и второе подмножества одночастотных компонент может зависеть от перцепционной значимости одночастотной компоненты в множестве.
Одночастотные компоненты могут являться синусоидами.
В соответствии с третьим аспектом изобретения представлен декодер для декодирования аудиосигнала, при этом декодер сконфигурирован для: приема по меньшей мере одного индикатора, представляющего по меньшей мере одну одночастотную компоненту из первого подмножества множества одночастотных компонент; и вставки одночастотной компоненты в зависимости от принятого индикатора.
Декодер также может быть сконфигурирован для приема по меньшей мере одного дополнительного индикатора, представляющего по меньшей мере одну дополнительную одночастотную компоненту по меньшей мере из одного дополнительного подмножества одночастотных компонент; и вставки дополнительной одночастотной компоненты в зависимости от принятого дополнительного индикатора.
Декодер также может быть сконфигурирован для приема знакового индикатора, представляющего знак по меньшей мере одной одночастотной компоненты из первого подмножества множества одночастотных компонент.
В соответствии с четвертым аспектом настоящего изобретения представлен способ декодирования аудиосигнала, включающий: прием по меньшей мере одного индикатора, представляющего по меньшей мере одну одночастотную компоненту из первого подмножества множества одночастотных компонент; и вставку по меньшей мере одной одночастотной компоненты в зависимости от принятого индикатора.
Способ также может включать: прием по меньшей мере одного дополнительного индикатора, представляющего по меньшей мере одну дополнительную одночастотную компоненту по меньшей мере из одного дополнительного подмножества одночастотных компонент; и вставку по меньшей мере одной дополнительной одночастотной компоненты в зависимости от принятого дополнительного индикатора.
Способ также может включать прием знакового индикатора, представляющего знак по меньшей мере одной одночастотной компоненты из первого подмножества множества одночастотных компонент.
В соответствии с пятым аспектом изобретения представлено оборудование, содержащее описанный выше кодер.
В соответствии с шестым аспектом изобретения представлено оборудование, содержащее описанный выше декодер.
В соответствии с седьмым аспектом изобретения представлено электронное устройство, содержащее описанный выше кодер.
В соответствии с восьмым аспектом изобретения представлено электронное устройство, содержащее описанный выше декодер.
В соответствии с девятым аспектом изобретения представлен компьютерный программный продукт, сконфигурированный для реализации способа кодирования аудиосигнала, включающего: определение множества одночастотных компонент; выбор по меньшей мере одной одночастотной компоненты из первого подмножества множества одночастотных компонент.
В соответствии с десятым аспектом изобретения представлен компьютерный программный продукт, сконфигурированный для реализации способа декодирования аудиосигнала, включающего: прием по меньшей мере одного индикатора, представляющего по меньшей мере одну одночастотную компоненту из первого подмножества множества одночастотных компонент; и вставку по меньшей мере одной одночастотной компоненты в зависимости от принятого индикатора.
В соответствии с одиннадцатым аспектом изобретения представлен кодер для кодирования аудиосигнала, включающий: средства для определения множества одночастотных компонент; средства для выбора по меньшей мере одной одночастотной компоненты из первого подмножества множества одночастотных компонент.
В соответствии с двенадцатым аспектом изобретения представлен декодер для декодирования аудиосигнала, включающий: средства для приема по меньшей мере одного индикатора, представляющего по меньшей мере одну одночастотную компоненту из первого подмножества множества одночастотных компонент; и средства для вставки одночастотной компоненты в зависимости от принятого индикатора.
В соответствии с тринадцатым аспектом изобретения предлагается кодер для кодирования аудиосигнала, при этом кодер сконфигурирован для: выбора по меньшей мере двух одночастотных компонент; формирования индикатора, который сконфигурирован для представления по меньшей мере двух одночастотных компонент и зависит от частотного интервала между двумя одночастотными компонентами.
Кодер также может быть сконфигурирован для выбора по меньшей мере одной дополнительной одночастотной компоненты; при этом индикатор предпочтительно также сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты; также индикатор предпочтительно сконфигурирован зависимым от частотного интервала между по меньшей мере одной дополнительной одночастотной компонентой и одной из по меньшей мере двух одночастотных компонент.
Индикатор также предпочтительно сконфигурирован зависимым от частоты по меньшей мере одной из двух одночастотных компонент.
Кодер также может быть сконфигурирован для определения частотного интервала между двумя одночастотными компонентами.
Кодер также может быть сконфигурирован для: поиска в списке значений частотного интервала определенного частотного интервала между двумя одночастотными компонентами; и выбора из списка значения, которое наиболее близко к определенному частотному интервалу между двумя одночастотными компонентами, при этом индикатор зависит от выбранного значения из списка значений частотного интервала.
Кодер также может быть сконфигурирован для: определения разности между выбранным значением из списка значений частотного интервала и определенным значением частотного интервала, при этом индикатор предпочтительно также зависит от этой разности.
Кодер также может быть сконфигурирован для: поиска в дополнительном списке значений разности определенной разности между выбранным значением из списка значений частотного интервала и определенным значением частотного интервала; и выбора из дополнительного списка значений разности значения, которое наиболее близко к определенному значению разности, при этом индикатор предпочтительно зависит от выбранного значения из дополнительного списка значений разности.
В соответствии с четырнадцатым аспектом изобретения представлен способ кодирования аудиосигнала, включающий: выбор по меньшей мере двух одночастотных компонент; формирование индикатора, который сконфигурирован для представления по меньшей мере двух одночастотных компонент и зависит от частотного интервала между двумя одночастотными компонентами.
Способ также может включать выбор по меньшей мере одной дополнительной одночастотной компоненты; при этом индикатор предпочтительно также сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты; также индикатор предпочтительно сконфигурирован зависимым от частотного интервала между по меньшей мере одной дополнительной одночастотной компонентой и одной из по меньшей мере двух одночастотных компонент.
Индикатор также может зависеть от частоты одной из по меньшей мере двух одночастотных компонент.
Способ также может включать определение частотного интервала между двумя одночастотными компонентами.
Способ также может включать: поиск в списке значений частотного интервала определенного значения частотного интервала между двумя одночастотными компонентами; и выбор из списка значения, которое наиболее близко к определенному частотному интервалу между двумя одночастотными компонентами, при этом индикатор предпочтительно зависит от выбранного значения из списка значений частотного интервала.
Также способ может включать определение разности между выбранным значением из списка значений частотного интервала и определенным значением частотного интервала, при этом индикатор предпочтительно также зависит от этой разности.
Способ также может включать: поиск в дополнительном списке значений разности определенной разности между выбранным значением из списка значений частотного интервала и определенным значением частотного интервала; и выбор из дополнительного списка значений разности значения, которое наиболее близко к определенной величине разности, при этом индикатор предпочтительно зависит от выбранного значения из дополнительного списка значений разности.
В соответствии с пятнадцатым аспектом изобретения представлен декодер для декодирования аудиосигнала, при этом декодер сконфигурирован для: приема по меньшей мере одного индикатора, представляющего по меньшей мере две одночастотные компоненты, при этом индикатор представляет частотный интервал между двумя одночастотными компонентами; и вставки по меньшей мере двух одночастотных компонент в зависимости от принятого индикатора.
По меньшей мере один индикатор также предпочтительно сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты; также индикатор предпочтительно сконфигурирован зависимым от частотного интервала между по меньшей мере одной дополнительной одночастотной компонентой и одной из по меньшей мере двух одночастотных компонент; а декодер предпочтительно сконфигурирован для вставки по меньшей мере одной дополнительной одночастотной компоненты в зависимости от индикатора.
В соответствии с шестнадцатым аспектом настоящего изобретения представлен способ декодирования аудиосигнала, включающий: прием по меньшей мере одного индикатора, представляющего по меньшей мере две одночастотные компоненты, при этом индикатор представляет частотный интервал между двумя одночастотными компонентами; и вставку по меньшей мере двух одночастотных компонент в зависимости от принятого индикатора.
По меньшей мере один индикатор также предпочтительно сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты; также индикатор предпочтительно сконфигурирован зависимым от частотного интервала между по меньшей мере одной дополнительной одночастотной компонентой и одной из по меньшей мере двух одночастотных компонент; способ также может включать вставку по меньшей мере одной дополнительной одночастотной компоненты в зависимости от индикатора.
В соответствии с семнадцатым аспектом изобретения представлено оборудование, содержащее описанный выше кодер.
В соответствии с восемнадцатым аспектом изобретения представлено оборудование, содержащее описанный выше декодер.
В соответствии с девятнадцатым аспектом изобретения представлено электронное устройство, содержащее описанный выше кодер.
В соответствии с двадцатым аспектом изобретения представлено электронное устройство, содержащее описанный выше декодер.
В соответствии с двадцать первым аспектом изобретения представлен компьютерный программный продукт, сконфигурированный для реализации способа кодирования аудиосигнала, включающего: выбор по меньшей мере двух одночастотных компонент; формирование индикатора, который сконфигурирован для представления по меньшей мере двух одночастотных компонент и зависит от частотного интервала между двумя одночастотными компонентами.
В соответствии с двадцать вторым аспектом изобретения представлен компьютерный программный продукт, сконфигурированный для реализации способа декодирования аудиосигнала, включающего: прием по меньшей мере одного индикатора, представляющего по меньшей мере две одночастотные компоненты, при этом индикатор представляет частотный интервал между двумя одночастотными компонентами; и вставку по меньшей мере двух одночастотных компонент в зависимости от принятого индикатора.
В соответствии с двадцать третьим аспектом изобретения представлен кодер для кодирования аудиосигнала, включающий: средства для выбора по меньшей мере двух одночастотных компонент; средства для формирования индикатора, который сконфигурирован для представления по меньшей мере двух одночастотных компонент и зависит от частотного интервала между двумя одночастотными компонентами.
В соответствии с двадцать четвертым аспектом изобретения представлен декодер для декодирования аудиосигнала, включающий: средства для приема по меньшей мере одного индикатора, представляющего по меньшей мере две одночастотные компоненты, при этом индикатор представляет частотный интервал между двумя одночастотными компонентами; и средства для вставки по меньшей мере двух одночастотных компонент в зависимости от принятого индикатора.
Краткое описание чертежей
Для лучшего ознакомления с настоящим изобретением в качестве примеров будут даваться ссылки на приложенные чертежи, на которых:
фиг.1 - схематическое изображение электронного устройства, использующего варианты осуществления настоящего изобретения;
фиг.2 - схематическое изображение системы аудиокодека, использующего варианты осуществления настоящего изобретения;
фиг.3 - схематическое изображение кодирующей части системы аудиокодека, показанной на фиг.2;
фиг.4 - схематическое изображение высокочастотной области в части кодера, показанного на фиг.3;
фиг.5 - схематическое изображение декодирующей части системы аудиокодека;
фиг.6 - блок-схема, показывающая функционирование варианта осуществления аудиокодера, изображенного на фиг.3 и 4, в соответствии с настоящим изобретением;
фиг.7 - блок-схема, показывающая функционирование варианта осуществления аудиодекодера, изображенного на фиг.5, в соответствии с настоящим изобретением;
фиг.8 - примеры спектрального представления аудиосигнала, вставленных синусоидальных позиций и кодирования синусоидальных позиций в соответствии с вариантами осуществления изобретения;
фиг.9 - другие примеры спектрального представления аудиосигнала и вставленных синусоидальных позиций в соответствии с вариантами осуществления изобретения.
Описание предпочтительных вариантов осуществления изобретения
Далее более подробно описаны возможные механизмы работы кодеков для реализации многоуровневых или масштабируемых аудиокодеков с переменной скоростью. В данном отношении сначала следует сделать ссылку на фиг.1, на которой показана схематичная блок-схема примера электронного устройства 10, которое может включать кодек в соответствии с вариантом осуществления изобретения.
Электронное устройство 10, в качестве примера, может являться мобильным терминалом или пользовательским оборудованием беспроводной системы связи.
Электронное устройство 10 содержит микрофон 11, который через аналого-цифровой преобразователь (АЦП) 14 соединен с процессором 21. Процессор 21 через цифроаналоговый преобразователь (ЦАП) 32 соединен с громкоговорителями 33.
Также процессор 21 соединен с приемопередатчиком (RX/TX) 13, пользовательским интерфейсом 15 и памятью 22.
Процессор 21 может быть сконфигурирован для выполнения различных программных кодов. Выполняемые программные коды включают код для кодирования звука, необходимый для кодирования низкочастотной и высокочастотной полос аудиосигнала. Выполняемые программные коды 23 также включают код для декодирования звука. Выполняемые программные коды 23 могут храниться, например, в памяти 22, чтобы процессор 21 имел доступ к ним при необходимости. Память 22 может также иметь раздел 24 хранения данных, например, данных, кодированных в соответствии с настоящим изобретением.
Код для кодирования и декодирования в различных вариантах изобретения может быть реализован на основе аппаратного или встроенного программного обеспечения.
Пользовательский интерфейс 15 позволяет пользователю вводить команды для электронного устройства 10, например, при помощи клавиатуры, и получать от него информацию, например, через экран. Приемопередатчик 13 обеспечивает связь с другими электронными устройствами, например, через сеть беспроводной связи
Необходимо понимать, что конструкция электронного устройства 10 может дополняться и изменяться множеством способов.
Пользователь электронного устройства 10 для ввода речи может использовать микрофон 11 так, чтобы она передавалась некоторому электронному устройству или сохранялась в разделе 24 хранения данных в памяти 22. С этой целью пользователь через пользовательский интерфейс 15 активизирует соответствующее программное приложение. Приложение, которое может выполняться процессором 21, обеспечивает выполнение процессором 21 кода кодирования, хранящегося в памяти 22.
Аналого-цифровой преобразователь 14 преобразует входной аналоговый аудиосигнал в цифровой аудиосигнал и передает цифровой аудиосигнал процессору 21.
После этого процессор 21 может обрабатывать цифровой сигнал способом, подобным описанному со ссылкой на фиг.2 и 3.
Результирующий битовый поток передается приемопередатчику 13 для передачи в другое электронное устройство. В альтернативном варианте для дальнейшей передачи или предоставления аналогичному электронному устройству 10 кодированные данные могут быть сохранены в разделе 24 хранения данных в памяти 22.
Электронное устройство 10 может также принимать битовый поток с данными от другого электронного устройства, кодированными соответствующим образом, через собственный приемопередатчик 13. В этом случае процессор 21 может выполнять программный код для декодирования, сохраненный в памяти 22. Процессор 21 декодирует принятые данные и отправляет декодированные данные в цифроаналоговый преобразователь 32. Цифроаналоговый преобразователь 32 преобразует декодированные цифровые данные в аналоговые аудиоданные и выводит их через громкоговорители 33. Выполнение программного кода для декодирования может запускаться также с помощью приложения, вызванного пользователем через пользовательский интерфейс 15.
Помимо этого, принятые кодированные данные вместо немедленного воспроизведения через громкоговорители 33 могут сохраняться в разделе 24 хранения данных в памяти 22, в случае необходимости более позднего воспроизведения или передачи еще одному электронному устройству.
Необходимо понимать, что схематичные конструкции, описанные на фиг.2-4, и этапы способов на фиг.7 и 8 представляют только часть работы полного кодека, который в качестве примера реализован в электронном устройстве, изображенном на фиг.1.
Общая работа аудиокодеков, используемых в вариантах осуществления изобретения, показана на фиг.2. Обобщенные системы кодирования/декодирования состоят из кодера и декодера, как схематически показано на фиг.2. Здесь изображена система 102 с кодером 104, запоминающим устройством или медиаканалом 106 и декодером 108.
Кодер 104 сжимает входной аудиосигнал 110, формируя битовый поток 112, который сохраняется или передается по медиаканалу 106. Битовый поток 112 может приниматься декодером 108. Декодер 108 распаковывает битовый поток 112 и формирует выходной аудиосигнал 114. Скорость битового потока 112 и качество выходного аудиосигнала 114 относительно входного сигнала 110 являются основными характеристиками, которые определяют эффективность кодирующей системы 102.
На фиг.3 схематично изображен кодер 104, соответствующий варианту осуществления изобретения. Кодер 104 имеет вход 203, предназначенный для приема аудиосигнала. Вход 203 соединен с низкочастотным фильтром 230 и высокочастотным/полосовым фильтром 235. Низкочастотный фильтр 230 передает сигнал кодеру 231 низкочастотной области (НЧ), также называемому основным кодером. Кодер 231 низкочастотной области сконфигурирован для выдачи сигналов кодеру 232 высокочастотной области (ВЧ). Высокочастотный/полосовой фильтр 235 соединен с ВЧ кодером 232. НЧ кодер 231 и ВЧ кодер 232 сконфигурированы для выдачи сигналов форматеру 234 битового потока (который в некоторых вариантах изобретения также называется мультиплексором битового потока). Форматер 234 битового потока сконфигурирован для выдачи выходного битового потока 112 через выход 205.
В некоторых вариантах осуществления изобретения высокочастотный/полосовой фильтр 235 может являться опциональным, и аудиосигнал передается непосредственно в ВЧ кодер 232.
Функционирование этих компонентов более подробно описано со ссылкой на блок-схему на фиг.6, показывающую работу кодера 104.
Аудиосигнал принимается кодером 104. В первом варианте осуществления изобретения аудиосигнал является цифровым дискретизированным сигналом. В других вариантах настоящего изобретения входные аудиоданные могут являться аналоговым аудиосигналом, например, от микрофона 6, преобразованным из аналогового в цифровой. В других вариантах изобретения входные аудиоданные преобразуются из цифрового сигнала с кодово-импульсной модуляцией в цифровой сигнал с амплитудной модуляцией. Прием аудиосигнала изображен на фиг.7 на этапе 601.
Низкочастотный фильтр 230 и высокочастотный/полосовой фильтр 235 принимают аудиосигнал и определяют частоту среза, до которой фильтруется входной сигнал 110. Частоты принятого аудиосигнала, находящиеся ниже частоты среза, пропускаются низкочастотным фильтром 230 в кодер 231 низкочастотной области (НЧ). Частоты принятого аудиосигнала, находящиеся выше частоты среза, пропускаются высокочастотным фильтром 235 в кодер 232 высокочастотной области (ВЧ). В некоторых вариантах осуществления изобретения дискретизация сигнала опционально понижается с целью увеличения эффективности кодера 231 низкочастотной области.
НЧ кодер 231 получает низкочастотный (и опционально с пониженной дискретизацией) аудиосигнал и применяет к нему подходящее низкочастотное кодирование. В первом варианте осуществления изобретения низкочастотный кодер 231 использует квантование и кодирование Хаффмана с 32 низкочастотными поддиапазонами. Входной сигнал 110 делится на поддиапазоны при помощи блока аналитических фильтров для частотного разложения сигнала. Каждый поддиапазон может квантоваться и кодироваться при помощи информации, предоставленной психоакустической моделью. Параметры квантования, как и схема кодирования, могут определяться примененной психоакустической моделью. Квантованная кодированная информация отправляется в форматер 234 битового потока для создания битового потока 112.
Помимо этого, НЧ кодер 231 преобразует низкочастотный контент при помощи модифицированного дискретного косинусного преобразования (MCDT - modified discrete cosine transform) для формирования реализации синтезированного НЧ сигнала в частотной области. Эти реализации в частотной области передаются на ВЧ кодер 232.
Кодирование низкочастотной области показано на фиг.6 на этапе 606.
В других вариантах осуществления изобретения для формирования выходных данных основного кодирования могут использоваться другие низкочастотные кодеки, которые выводят данные на форматер 234 битового потока. Примерами низкочастотных кодеков в этих вариантах изобретения являются Advanced Audio Coding (AAC), MPEG layer 3 (МРЗ), встроенный базовый кодек для кодирования речи с переменной скоростью ITU-T (EV-VBR) и ITU-T G.729.1.
Если кодер 231 низкочастотной области не обеспечивает эффективного синтезированного выходного сигнала в частотной области в качестве части процесса кодирования, кодер 231 низкочастотной области (НЧ) может также включать низкочастотный декодер и преобразователь частотной области (не показан на фиг.3) для формирования синтезированной копии низкочастотного сигнала. В вариантах осуществления изобретения такие копии затем могут быть преобразованы в представления в частотной области и, при необходимости, разделены на последовательности низкочастотных поддиапазонов, посылаемых ВЧ кодеру 232.
В вариантах осуществления изобретения это обеспечивает возможность выбора кодера 231 низкочастотной области из широкого диапазона всевозможных кодеров/декодеров, и, таким образом, изобретение не ограничено конкретным низкочастотным или основным алгоритмом кодирования, который формирует информацию в частотной области как часть выходных данных.
Кодер 232 высокочастотной области (ВЧ) схематически более подробно показан на фиг.4.
Кодер 232 высокочастотной области принимает от высокочастотного/полосового фильтра 235 сигнал, который поступает на вход процессора 301 модифицированного дискретного косинусного преобразования (MDCT - modified discrete cosine transform) или смещенного дискретного преобразования Фурье (SDFT - shifted discrete Fourier transform).
Частотный выход преобразователя 301 MDCT/SDFT проходит через контроллер 303 тонального выбора, процессор 305 выбора копии полосы в высокочастотной области, процессор 307 масштабирования копии полосы в высокочастотной области, процессор 309 выбора/кодирования синусоидальной вставки.
Контроллер 303 тонального выбора сконфигурирован для управления или настройки процессора 305 выбора копии ВЧ полосы, процессора 307 масштабирования копии ВЧ полосы, процессора 309 выбора/кодирования синусоидальной вставки и мультиплексора 311. Помимо этого процессор 305 выбора копии ВЧ полосы принимает от НЧ кодера 231 синтезированный низкочастотный сигнал в форме частотной области. Процессор 305 выбора копии ВЧ полосы выдает на выходе выбранные ВЧ полосы из НЧ кодера, как будет описано далее, и передает выбранные данные в процессор 307 масштабирования копии ВЧ полосы.
Процессор 307 масштабирования копии ВЧ полосы передает в мультиплексор 311 в кодированной форме выбранные данные и масштабирующие элементы, которые должны быть вставлены в поток 112 данных. Помимо этого процессор 307 масштабирования копии ВЧ полосы передает представление выбранных данных и масштабированную ВЧ полосу в процессор 309 выбора/кодирования синусоидальной вставки. Процессор 309 выбора/кодирования синусоидальной вставки передает сигнал на мультиплексор 311 для включения его в поток 112 выходных данных.
Далее со ссылкой на фиг.6 и 4 будет подробно описана работа ВЧ кодера.
Процессор 301 MDCT/SDFT преобразует высокочастотный аудиосигнал, принятый от высокочастотного/полосового фильтра 235, в представление сигнала в частотной области.
В некоторых вариантах осуществления изобретения процессор MDCT/SDFT также делит высокочастотный аудиосигнал на короткие частотные поддиапазоны. Эти частотные поддиапазоны могут иметь ширину 500-800 Гц. В некоторых вариантах осуществления изобретения частотные поддиапазоны имеют разную ширину полосы. В других вариантах частотные поддиапазоны имеют ширину полосы 750 Гц. В других вариантах изобретения ширина частотных поддиапазонов может быть как равной, так и неравной и может зависеть от назначения частотной полосы для высокочастотной области.
В первом варианте осуществления изобретения ширина частотного поддиапазона постоянна, другими словами, не меняется от кадра к кадру. В других вариантах осуществления изобретения ширина частотного диапазона непостоянна, и частотный поддиапазон может иметь ширину, меняющуюся во времени.
В некоторых вариантах осуществления изобретения расположение переменного частотного поддиапазона может определяться на основании психоакустического моделирования аудиосигнала. Эти частотные поддиапазоны в различных вариантах осуществления изобретения также могут быть последовательными (другими словами, идти один за другим, формируя непрерывную спектральную реализацию) или частично перекрывающими друг друга.
Этап организации поддиапазона и преобразования временной области в частотную показан на фиг.6 как этап 607.
Чтобы кодирование высокочастотной области выполнялось более эффективно, контроллер 303 тонального выбора может быть сконфигурирован для управления выбором копии ВЧ полосы, масштабированием, выбором и кодированием синусоидальной вставки, а также управления мультиплексором.
Выходные данные MDCT/SDFT процессора 301 после смещенного дискретного преобразования Фурье принимаются контроллером 303 тонального выбора.
Уравнение 1 является примером смещенного дискретного преобразования Фурье (SDFT), определенного для двух выборок N (которые в предпочтительных вариантах осуществления изобретения могут рассматриваться как кадры):
где h(n) - окно масштабирования, x(n) - исходный входной сигнал, а u и v представляют собой смещение во временной и частотной области соответственно.
В одном варианте осуществления изобретения u и v могут выбираться таким образом, что u=(N+1)/2 и v=1/2, так как реальная часть преобразования SDFT может также использоваться как преобразование MDCT. Таким образом, это позволяет реализовать преобразователь MDCT и преобразователь SDFT в рамках одной операции преобразования из временной в частотную область и, следовательно, упростить устройство.
Контроллер 303 тонального выбора может быть сконфигурирован для определения, является ли входной высокочастотный сигнал нормальным или тональным. Контроллер 303 тонального выбора может определять характеристики сигнала путем сравнения результата SDFT преобразования для текущего и предыдущего кадров.
Например, если текущий и предыдущий кадры SDFT определены как Yb(k) и Yb-1(k) соответственно, подобие кадров может измеряться индексом S. S определяется уравнением 2:
где NL+1 соответствует предельной частоте высокочастотного кодирования. Чем меньше параметр S, тем более подобны высокочастотные спектры.
Контроллер тонального выбора может содержать логику принятия решений, которая в зависимости от значения S устанавливает характеристики или режим сигнала. Помимо этого характеристики или режим сигнала используются для управления оставшейся частью ВЧ кодера, что более подробно описано ниже.
Далее описан вариант осуществления изобретения, в котором определены две характеристики или режимы сигнала. Эти характеристики или режимы являются нормальными и тональными.
Логика принятия решения в контроллере 303 тонального выбора может быть сконфигурирована для назначения нормальной характеристики (это может указывать оставшейся части ВЧ кодера, что должно использоваться нормальное кодирование, возможно вместе со вставкой некоторой синусоиды), если значение S больше или равно заранее определенному значению Slim.
Логика принятия решения в контроллере 303 тонального выбора также может быть сконфигурирована для назначения тональной характеристики (это может указывать оставшейся части ВЧ кодера, что аудиосигнал может быть закодирован только посредством вставки синусоиды), если значение S меньше заранее определенного значения Slim. В данном режиме может быть вставлено больше синусоид, так как для квантования параметров нормального режима кодирования биты не используются.
Несмотря на то, что описано два режима работы, необходимо понимать, что контроллер тонального выбора может иметь более двух возможных режимов работы (назначаемых характеристик), каждый из которых использует заданную пороговую область и каждый из которых предоставляет оставшейся части ВЧ кодера индикатор способа кодирования аудиосигнала.
Для предоставления индикации выбранного режима работы, и так как индикация также может передаваться декодеру, контроллер 303 тонального выбора передает в мультиплексор характеристику или режим, назначенный текущему кадру.
Так как количество режимов обычно мало, число битов, необходимых для кодирования этих режимов, также мало.
Выбор режима тонального детектирования показан на фиг.6 на шаге 609.
В нижеследующем примере описано, на какой стадии контроллер 303 тонального выбора указывает тональную характеристику, заданную для текущего кадра, и на какой стадии осуществляются операции выбора копии полосы (этап 611 на фиг.6), масштабирования копии полосы (этап 613 на фиг.6) и вставки и кодирования синусоиды (этап 615 на фиг.6).
Если контроллер 303 тонального выбора указывает, что аудиосигнал тональный, то операции выбора копии полосы или масштабирования копии полосы не осуществляются, выполняется только операция вставки и кодирования синусоиды. Битовое распределение, зарезервированное для операций выбора и масштабирования копии, может использоваться для выбора и кодирования дополнительных синусоид.
Если контроллер 303 тонального выбора указывает, что аудиосигнал нормальный, то выполняются операции выбора копии полосы и масштабирования копии полосы. Эффективность нормального режима может быть увеличена путем вставки синусоиды.
Селектор 305 копии ВЧ полосы принимает спектральные компоненты каждого частотного поддиапазона высокочастотной области и частотное представление низкочастотного закодированного сигнала и выбирает из низкочастотной области участки, которые совпадают с каждым из поддиапазонов высокочастотной области.
В некоторых вариантах осуществления изобретения для определения наиболее близкого совпадения с низкочастотным поддиапазоном используется энергия поддиапазона.
В других вариантах осуществления изобретения для поиска совпадающей части низкочастотной области определяются и используются другие или дополнительные свойства высокочастотных поддиапазонов. Другие свойства включают отношение пиковой к минимальной энергии каждого поддиапазона и ширину полосы сигнала, но не ограничиваются только этими свойствами.
В некоторых вариантах осуществления изобретения анализ аудиосигнала селектором 305 копии ВЧ полосы включает анализ кодированной низкочастотной области, а также анализ исходной высокочастотной области. В других вариантах осуществления изобретения блок оценки энергии определяет эффективную часть спектра путем приема кодированного низкочастотного сигнала и деления его на короткие поддиапазоны, которые затем анализируются, например, для определения энергии в каждом спектральном поддиапазоне "в целом" и/или отношения пиковой к минимальной энергии для каждого спектрального поддиапазона "в целом".
В других вариантах осуществления изобретения блок оценки энергии также принимает кодированный низкочастотный сигнал и (при необходимости) делит его на короткие поддиапазоны, подвергающиеся анализу. Низкочастотный сигнал на выходе кодера после этого анализируется подобно высокочастотному сигналу, например, для определения энергии низкочастотного поддиапазона и/или отношения пиковой к минимальной энергии каждого низкочастотного поддиапазона.
Селектор 305 копии ВЧ полосы в одном варианте осуществления изобретения может осуществлять выбор низкочастотных спектральных значений, которые могут переноситься (транспонироваться) для формирования приемлемых копий высокочастотных спектральных значений. Количество и ширина используемых полос в способе, подобном подробно описанному в заявке WO 2007/052088, могут быть фиксированными или могут определяться в селекторе 305 копии ВЧ полосы.
Выбор соответствующих спектральных значений НЧ области показан на фиг.6 на этапе 611.
Преобразователь 307 масштаба копии ВЧ полосы принимает выбранные низкочастотные спектральные значения и определяет, может ли быть выполнено масштабирование этих значений для снижения разности между каждым высокочастотным поддиапазоном и выбранными низкочастотными спектральными значениями.
В некоторых вариантах осуществления изобретения преобразователь 307 масштаба копии ВЧ полосы может выполнять кодирование, такое как квантование коэффициентов масштабирования, для снижения количества битов, необходимых для отправки декодеру. Индикация коэффициентов масштабирования используется для получения масштабированных выбранных НЧ спектральных значений, поступающих в мультиплексор 311. Помимо этого копии масштабированных выбранных НЧ спектральных значений поступают в устройство 309 выбора/кодирования синусоидальной вставки.
Масштабирование копии показано на фиг.6 как этап 613.
Концепция вставки и кодирования синусоиды, осуществляемая устройством 309 кодирования и вставки синусоиды, направлена на увеличение точности кодирования высокочастотного диапазона при помощи компонентов НЧ сигнала путем добавления синусоид. Добавление по меньшей мере одной синусоиды может увеличить точность кодирования.
Например, если ХН(ki) и XH(kj) - текущий кодированный и исходный спектр высокочастотной области соответственно, устройство 309 кодирования и вставки синусоиды может добавлять первую синусоиду со спектральным индексом k1, получаемым из выражения 3:
Другими словами, синусоида может быть вставлена при индексе с наибольшей разницей между исходным и кодированным спектральным значениями высокочастотной области.
Помимо этого устройство 309 кодирования и вставки синусоиды может определять амплитуду вставляемой синусоиды в соответствии с уравнением 4:
Устройство 309 кодирования и вставки синусоиды затем формирует обновленный спектр кодированной высокочастотной области в соответствии с уравнением 5:
Устройство 309 кодирования и вставки синусоиды может затем повторять операции выбора и масштабирования синусоиды и операции обновления кодированной высокочастотной области для вставки дополнительных синусоид до получения необходимого количества добавленных синусоид. В предпочтительном варианте осуществления изобретения необходимое количество синусоид равно четырем.
В некоторых вариантах осуществления изобретения операции повторяют до тех пор, пока устройство 309 вставки и кодирования синусоиды не определит, что общая ошибка между исходным и закодированным сигналами высокочастотной области не снизилась ниже порога ошибки кодирования.
Устройство 309 кодирования и вставки синусоиды, имея выбранные и масштабированные синусоиды, затем осуществляет операции кодирования выбранных синусоид, и индикация синусоид может поступать на декодер в подходящем битовом виде.
Устройство 309 кодирования и вставки синусоиды может квантовать амплитуду А выбранных синусоид и передавать квантованные значения амплитуды (4) в мультиплексор.
Помимо этого устройство 309 кодирования и вставки синусоиды может кодировать позицию и/или позиции выбранной синусоиды или синусоид.
В первом варианте осуществления изобретения позиция и знак выбранной синусоиды квантуются. Однако было обнаружено, что квантование позиции и знака не является оптимальным.
Обратимся к фиг.8, где изображен результат операции кодирования позиции и знака, выполняемой устройством 309 кодирования и вставки синусоиды, в соответствии с вариантами осуществления настоящего изобретения.
На фиг.8(а) показан пример спектра типичного поддиапазона высокочастотной области от 7000 Гц до 7800 Гц, выраженного в значениях 801 коэффициентов MDCT.
На фиг.8(b) изображен пример, в котором возможные позиции, на которых могут быть вставлены выбранные синусоиды, показаны относительно значений индексов. 32 возможные позиции индексов могут иметь ноль, одну или более синусоид, расположенных на них.
На фиг.8(с) показан вариант осуществления изобретения, в котором 32 возможные позиции индексов делятся по меньшей мере на две дорожки. Дорожки чередуются таким образом, что, как показано на фиг.8(с), каждый индекс каждой дорожки расположен между двумя индексами другой дорожки. В вариантах с более чем двумя дорожками каждый индекс отделен индексом из каждой другой дорожки. Например, на фиг.8(с) 32 возможные позиции индексов разделены на дорожку 1803 и дорожку 2805.
Другие варианты осуществления изобретения могут иметь более двух чередующихся дорожек. Например, при трех чередующихся дорожках позиции могут быть такими: pos1(n-1), pos2(n-1), pos3(п-1), pos1(n), pos2(n), pos3(n), pos1(n+1), pos2(n+1), pos3(n+1), где posk(n) является n-й позицией k-й дорожки.
В других вариантах дорожки могут компоноваться в области, такие, что дорожки могут быть скомпонованы в положения pos1(1), pos1(2),…,pos1(N), pos2(1), pos2(2),…,pos2(N) для 2 дорожек, каждая из которых имеет N позиций.
В других вариантах осуществления изобретения дорожки могут организовываться для покрытия не только поддиапазона, а всей частотной области.
Устройство 309 кодирования и вставки синусоиды использует разделение индексов для улучшения кодирования позиции, что может быть разъяснено со ссылкой на следующий пример и фиг.9.
На фиг.9(а) показан спектр высокочастотного сигнала от 7000 Гц до 14000 Гц. На фиг.9(b) показаны синусоиды, выбранные по методу индексов одной дорожки, где 8 синусоид могут быть кодированы до достижения предела кодирования битов. На фиг.9(с) показаны синусоиды, выбранные по методу индексов двух дорожек, где 10 синусоид могут быть кодированы до достижения предела кодирования битов, в соответствии с вариантом настоящего изобретения.
Битовое распределение ВЧ кодирования для вариантов настоящего изобретения обычно равно 4 кбит/с (или 80 битов в кадре) (из которых 20-25 битов в кадре могут использоваться для квантования значений MDCT или амплитуд синусоид).
Битовое распределение для каждого поддиапазона описывается относительно уравнения 6:
где Nsin - количество выбранных синусоид, a Bind и Bsign - необходимое число битов для определения позиции (индексации) и информации о знаке соответственно.
В примере, изображенном на фиг.10(b) и 10(с), четыре поддиапазона имеют длины 64, 64, 64 и 32 позиции соответственно.
Устройство 309 кодирования и вставки синусоиды в соответствии с вариантом, изображенным на фиг.9(b), может назначать следующее количество битов на одну синусоиду одного поддиапазона: 6, 6, 6 и 5 соответственно. Это число битов однозначно указывает каждый индекс и, таким образом, определяет каждую синусоиду в поддиапазоне, соответственно. Устройство 309 кодирования и вставки синусоиды также может назначать дополнительный бит для определения знака синусоиды, другими словами, находится ли синусоида в фазе или сдвинута по фазе на 180 градусов. Таким образом, битрейт для кадра определяется уравнением 7:
где Nsb,i - количество синусоид в i-м поддиапазоне. Как видно из фиг.9(b), Nsb,1=3, Nsb,2=3, Nsb,3=1, Nsb,4=1, таким образом, количество битов, необходимых для кодирования 8 синусоид, составляет 55 битов на кадр.
Устройство 309 кодирования и вставки синусоиды в усовершенствованном способе кодирования с использованием 2 дорожек на поддиапазон уменьшает количество битов, используемых для одной синусоиды поддиапазона, благодаря меньшему количеству возможных индивидуальных позиций для каждой синусоиды в поддиапазоне и благодаря избыточности в упорядочении отдельных синусоид в каждой дорожке.
Синусоиды выбираются в каждом поддиапазоне и дорожке и кодируются в известном порядке таким образом, чтобы декодер мог определить правильный индекс позиции.
Экономия битов основана на том факте, что порядок выбора и передачи синусоид на дорожке не важен. Не имеет значения, имеем мы синусоиды с позициями Р и R (в вариантах изобретения может быть указано, что знаки противоположны) или R и Р (в вариантах изобретения может быть указано, что знаки одинаковы) на одной дорожке.
Устройство 309 кодирования и вставки синусоиды в усовершенствованном способе кодирования с использованием 2 дорожек на поддиапазон уменьшает количество битов, используемых для одной синусоиды поддиапазона, благодаря меньшему количеству возможных индивидуальных позиций для каждой синусоиды в поддиапазоне и благодаря избыточности в упорядочении отдельных синусоид в каждой дорожке.
Как видно из фиг.9(с), имеется возможность кодирования для 2 синусоид первых двух поддиапазонов, которые находятся на первой и второй дорожке. Поддиапазоны 3 и 4 имеют такое же количество синусоид, как показано в первом способе. Битрейт каждой дорожки (каждый с 2 синусоидами) в поддиапазонах 1 и 2 равен (5+1)+(5+0). Для поддиапазона 3 требуется (6+1) битов, для поддиапазона 4 - (5+1) битов. Общий битрейт, необходимый для 10 синусоид, равен 57 битов на кадр. Таким образом, устройство 309 кодирования и вставки синусоиды в усовершенствованном способе может добавлять две дополнительные синусоиды, тратя всего лишь два бита на кадр.
В данном примере битрейт на синусоиду для первого и второго способов составляет 6,875 и 5,7 бита соответственно.
Устройство 309 кодирования и вставки синусоиды может выбирать количество дорожек, используемых в поддиапазоне, в зависимости от длины поддиапазона; если размер поддиапазона адаптивный (например, может меняться от кадра к кадру), выбранные длины должны обеспечивать способ с улучшениями эффективности.
Например, длина поддиапазона 32 может быть легко разделена на 2 дорожки длиной 16. Подобным же образом длина 48 может быть разделена на 3 дорожки длиной 16. Длина 64 может быть разделена на 2 дорожки длиной 32 или 4 дорожки длиной 16. Выбор может определяться, исходя из доступного битрейта.
Устройство 309 кодирования и вставки синусоиды может выбирать структуру дорожки, которая обеспечивает вставку достаточного количества синусоид, и, предпочтительно, в каждую дорожку должно помещаться более одной синусоиды.
Таким образом, в вариантах осуществления изобретения, в которых должны быть выбраны две синусоиды, по одной из каждой дорожки, расположение дорожек может выбираться таким образом, чтобы возможные позиции синусоид Р и Р+1 (которые важны для восприятия) находились на разных дорожках, чтобы они обе могли быть выбраны.
Длина частотного диапазона, если она переменная, должна выбираться таким образом, чтобы полная энергия кодированной высокочастотной области не имела значительных колебаний от кадра к кадру.
Кодирование позиции вставленных синусоид на основании индексов дорожки увеличивает, таким образом, скорость кодирования, необходимую для индикации любых вставленных синусоид, что можно видеть из вышеизложенного описания.
В других вариантах осуществления изобретения устройство 309 кодирования и вставки синусоиды также может улучшать кодирование позиций вставленных синусоид.
В некоторых вариантах осуществления изобретения устройство 309 кодирования и вставки синусоиды после определения позиций и амплитуд наиболее важных для восприятия синусоид анализирует относительную разность позиций между подмножеством синусоид. Эти относительные позиции затем используются для определения, может ли набор синусоид кодироваться при помощи лишь нескольких битов. Если в наборе синусоид не обнаружено шаблона, то для кодирования позиции выбранных синусоид может использоваться один из ранее описанных способов кодирования позиции синусоид.
Как говорилось ранее, кодированная высокочастотная область может делиться на последовательность частотных поддиапазонов. Каждый частотный поддиапазон может затем просматриваться для определения в каждом частотном диапазоне позиций, куда могут быть вставлены выбранные синусоиды. Эти выбранные синусоиды могут увеличивать точность кодированной высокочастотной области при сравнении с исходным сигналом в высокочастотной области.
В первом варианте осуществления изобретения число частотных "поддиапазонов, на которые может делиться спектр, равно 6. В других вариантах осуществления изобретения количество поддиапазонов может меняться, как говорилось ранее.
Устройство кодирования и вставки синусоиды сравнивает для каждого диапазона выбранные синусоиды и их позиции в каждом поддиапазоне для определения того, какая из них может рассматриваться как начальная точка структуры. Например, в одном варианте осуществления изобретения устройство 309 кодирования и вставки синусоиды в качестве начальной точки выбирает синусоиду с минимальной частотой. В других вариантах начальной точкой выбирается синусоида со средним значением или синусоида поддиапазона с наибольшей частотой.
Когда начальная синусоида выбрана, проверяется разность между позицией начальной точки и позициями других выбранных синусоид в поддиапазоне. Любая связь между позицией начальной точки и оставшимися выбранными синусоидами в поддиапазоне может затем быть закодирована.
Например, если первая синусоида расположена в поддиапазоне на индексе 5, а две другие синусоиды расположены на индексных позициях 12 и 19, устройство 309 кодирования и вставки синусоиды может закодировать позицию синусоиды как абсолютный индекс 5, затем относительный индекс 7 и далее относительный индекс 7. В других вариантах осуществления изобретения устройство 309 кодирования и вставки синусоиды кодирует абсолютный индекс (5), относительный индекс (7) и общее количество синусоид в структуре (3).
Кроме того, пример, представленный выше, будет более эффективным, если количество выбранных синусоид на частотный поддиапазон увеличивается. Это справедливо для приведенного выше варианта с абсолютным и относительным кодированием, так как среднее расстояние между синусоидами будет уменьшено, поскольку добавляется больше синусоид, и среднее количество битов, необходимых для кодирования относительного расстояния между синусоидами, снижается, уменьшая, таким образом, необходимое число битов индикации на синусоиду.
Подобным образом для варианта с абсолютным, относительным и полным кодированием количество битов на синусоиду уменьшается, так как число выбранных синусоид растет, и каждая дополнительная синусоида требует лишь увеличения итогового количества.
Хотя устройству 309 кодирования и вставки синусоиды для определения относительной разности потребуется производить поиск выбранных синусоид, данное усложнение конструкции не является обременительным, поскольку полное число синусоид ограничено.
В других вариантах осуществления изобретения устройство 309 кодирования и вставки синусоиды использует начальную синусоиду и осуществляет поиск синусоид в поддиапазоне относительно начальной точки для определения структуры синусоид, которая совпадает или близка к заранее заданным структурам-кандидатам.
В соответствии с вариантами осуществления изобретения критерии, используемые для определения структуры синусоид, могут быть выборочными или переменными. Например, в одном варианте устройство 309 кодирования и вставки синусоиды может просто выбирать структуру-кандидат, которая имеет наибольшее количество совпадающих синусоид, или на основании значимости совпадения синусоид-кандидатов (например, если одна структура имеет N совпадающих синусоид, а другая - N-1 совпадающих синусоид, в качестве кандидата может быть выбрана структура N-1, так как она более точно совпадает с выбранными синусоидами, которые перцепционно важны).
Помимо этого устройство 309 кодирования и вставки синусоиды может включать информацию о знаке для каждой синусоиды и кодировать амплитуды синусоид, как описывалось ранее (например, используя векторное квантование для уменьшения количества битов, используемых для представления амплитуд).
В некоторых вариантах осуществления изобретения устройство 309 кодирования и вставки, если структуры имеют одинаковое количество совпадающих синусоид, выбирает ту, которая имеет больше совпадающих синусоид на низких частотах высокочастотной области.
В других вариантах осуществления изобретения устройство 309 кодирования и вставки синусоиды после выбора кандидатов для начальной синусоиды и относительного индекса использует заданный шаблон размещения синусоид, исходя из которого определяется любое отклонение от шаблонных положений/индексов синусоид. В одном варианте осуществления изобретения обнаруженные отклонения могут быть закодированы посредством поиска в заранее определенной справочной таблице отклонений, также известной как малый кодовый словарь отклонений позиций, и затем на выходе будет выдаваться код, связанный с отклонением.
Хотя в данном варианте устройство 309 кодирования и вставки синусоиды имеет большую гибкость с точки зрения положений потенциальных синусоид, поиск отклонений усложняет необходимую обработку поиска.
Несмотря на то, что данный вариант осуществления изобретения обеспечивает результаты, более точно указывающие актуальные позиции оптимальных синусоид, битрейт, связанный с каждой синусоидой, также увеличивается. Таким образом, другой вариант изобретения для использования на низких битрейтах не должен обязательно быть самым эффективным. Помимо этого данный вариант может даже использовать больше ресурсов процессора, так как необходимо искать или кодировать структуры и ошибки.
В других вариантах, связанных с ранее описанными вариантами, устройство 309 кодирования и вставки синусоиды может допускать небольшую степень ошибки между структурой синусоид или отклонением и закодированной структурой синусоид или отклонением. Другими словами, для увеличения скорости поиска и кодирования позиций структур и девиаций поиск осуществляется среди ограниченного подмножества структур и/или девиаций из структур. Данный вариант может быть приемлем, если скорость кодирования и битрейт на синусоиду должны быть оптимизированы, и ошибка в структуре и/или отклонение синусоиды допустимы или ими можно пренебречь.
Однако в таких вариантах необходимо учитывать, что длительный сдвиг или колебание позиций синусоид от кадра к кадру может сделать ошибку ощутимой.
Хотя вышеизложенные примеры были описаны относительно работы с частотным поддиапазоном, они также могут быть применены на протяжении всего высокочастотного сигнала одновременно. Таким образом, относительное кодирование, структурное кодирование и кодирование с небольшими отклонениями для фиксированных или переменных структур может осуществляться для поддиапазона, являющегося целым высокочастотным сигналом.
Информация индикации синусоиды может затем отправляться в мультиплексор 311 для включения в выходной битовый поток.
Операции выбора и кодирования синусоид показаны на фиг.6 на этапе 615.
Форматер 234 битового потока принимает выходные данные низкочастотного кодера 231, процессора 232 высокочастотной области и форматирует битовый поток для получения выходного битового потока. В некоторых вариантах осуществления изобретения форматер 234 битового потока может чередовать принятые входные данные и формировать коды обнаружения и коррекции ошибок, вставляемые в битовый поток 112.
Стадия мультиплексирования информации от ВЧ кодера 232 и НЧ кодера в выходной битовый поток показана на фиг.6 как этап 617.
Чтобы помочь лучше разобраться в изобретении, работа декодера 108, соответствующего вариантам настоящего изобретения, описана со ссылкой на декодер, схематически изображенный на фиг.5, а на фиг.7 приведена блок-схема работы декодера.
Декодер имеет вход 413, с которого может быть принят кодированный битовый поток 112. Вход 413 соединен с распаковщиком 401 битового потока.
Распаковщик битового потока демультиплексирует, делит или распаковывает битовый поток 112 на три отдельных битовых потока. Кодированный низкочастотный битовый поток поступает в декодер 403 низкочастотной области, битовый поток с копированием спектральной полосы поступает в устройство 407 реконструкции высоких частот (также известно как декодер высокочастотной области), а управляющие данные поступают в контроллер 405 декодера.
Процесс распаковки показан на фиг.7 как этап 701.
Декодер 403 низкочастотной области принимает кодированные низкочастотные данные и формирует синтезированный низкочастотный сигнал, осуществляя процесс, обратный происходящему в кодере 231 низкочастотной области. Этот синтезированный низкочастотный сигнал поступает в декодер 407 высокочастотной области и реконструирующий декодер 409.
Процесс декодирования низкочастотной области показан на фиг.7 как этап 707.
Контроллер 405 декодера принимает управляющую информацию от распаковщика 401 битового потока. В соответствии с настоящим изобретением контроллер 405 декодера принимает информацию о том, было ли в процессе кодирования высокочастотной области использовано спектральное копирование, как описывалось ранее относительно процессора 305 выбора копии ВЧ полосы и процессора 307 масштабирования копии ВЧ полосы. Любая особая информация, необходимая для конфигурирования ВЧ декодера в части реконструкции ВЧ диапазона с использованием данного способа, передается на ВЧ декодер, и способ включает этап 705, как будет описано ниже.
Помимо этого контроллер 405 декодера принимает от распаковщика 401 битового потока управляющую информацию относительно любых процессов выбора и вставки синусоиды в ВЧ кодере и устройстве 309 вставки и кодирования ВЧ синусоиды.
Настройка ВЧ декодера показана на фиг.7 как этап 703.
В некоторых вариантах осуществления изобретения контроллер 405 декодера может являться частью высокочастотного декодера 407.
ВЧ декодер 407 может выполнять операцию реконструкции копии высокочастотной полосы, например, путем копирования и масштабирования компонент синтезированного низкочастотного сигнала на основе указаний в битовом потоке реконструкции ВЧ области и исходя из полос, указанных в информации о выборе полосы. Данная операция выполняется в зависимости от информации, предоставленной контроллером 405 декодера.
Создание копии высокой частоты или реконструкция высокой частоты показаны на фиг.8 как этап 705.
ВЧ декодер 407 также может осуществлять операцию выбора и вставки синусоиды для увеличения точности операции реконструкции высокой частоты в зависимости от информации, предоставленной контроллером 405 декодера. Таким образом, в соответствии с вариантом осуществления изобретения, контроллер 405 декодера может управлять ВЧ декодером 407 так, чтобы он не добавлял синусоиды или же добавлял синусоиды в соответствии с форматом битового потока, указанным контроллером 405 декодера. Эти не ограничивающие изобретение примеры включают вставку синусоид в соответствии с предоставленными индексом и информацией о дорожке, структурой размещения синусоид, относительными интервалами в размещении синусоид и отклонениями от фиксированной или переменной компоновки или структуры синусоид.
Операция вставки синусоиды показана на фиг.7 как этап 709.
Битовый поток реконструированной высокочастотной компоненты поступает в реконструирующий декодер 409.
Реконструирующий декодер 409 принимает битовый поток декодированной низкой частоты и битовый поток реконструированной высокочастотной компоненты для формирования битового потока, представляющего исходный сигнал, и выдает на выход 415 декодера выходной аудиосигнал 114.
Реконструкция сигнала показана на фиг.8 как этап 711.
В вышеизложенных вариантах осуществления изобретения для помощи в ознакомлении с используемыми процессами кодек описан на основе раздельных устройств кодирования 104 и декодирования 108. Тем не менее, необходимо понимать, что оборудование, устройства и операции могут быть реализованы в виде единой кодирующей/декодирующей аппаратуры/устройства/операции. Также в некоторых вариантах осуществления изобретения кодер и декодер могут вместе использовать некоторые или все общие элементы.
Хотя вышеприведенные примеры описывают варианты изобретения, работающие в кодеке, входящем в электронное устройство 10, должно быть понятно, что изобретение, как изложено ниже, может быть реализовано как часть любого аудио- (или речевого) кодека с переменной/адаптивной скоростью кодирования. Таким образом, варианты изобретения могут быть реализованы, например, в аудиокодеке, который может осуществлять кодирование звука в фиксированных или проводных линиях связи.
Пользовательское оборудование может включать аудиокодек, подобный описанному в вышеизложенных вариантах осуществления изобретения.
Необходимо понимать, что термин «пользовательское оборудование» относится к любому подходящему типу беспроводного пользовательского оборудования, такому как мобильные телефоны, портативные устройства обработки данных или портативные веб-браузеры.
Помимо этого, аудиокодеки, подобные вышеописанным, могут входить в состав элементов наземной сети мобильной связи общего доступа (PLMN - public land mobile network).
Различные варианты выполнения изобретения могут быть осуществлены в виде аппаратных средств или схем специального назначения, программного обеспечения, логики или любых комбинаций перечисленных средств. Например, некоторые аспекты могут быть реализованы в виде аппаратных средств, в то время как другие - в виде встроенного или обычного программного обеспечения, которое может выполняться контроллером, микропроцессором или другим вычислительным устройством, однако изобретение не ограничено этим. Хотя различные аспекты изобретения могут быть изображены и описаны в виде блок-схем или при помощи других графических представлений, необходимо понимать, что эти блоки, устройства, системы, технологии или способы, описываемые здесь, могут быть без ограничений реализованы в виде аппаратных средств, программного обеспечения, встроенного программного обеспечения, схем или логики специального назначения, аппаратных средств общего назначения, контроллеров или других вычислительных устройств или же в виде комбинации перечисленных средств.
Варианты осуществления настоящего изобретения могут быть реализованы при помощи компьютерного программного обеспечения, исполняемого процессором обработки данных мобильного устройства, таким как процессорный модуль, или при помощи аппаратного обеспечения, или же при помощи комбинации программного и аппаратного обеспечения. Кроме того, в этом отношении необходимо заметить, что любые блоки логических блок-схем на чертежах могут представлять этапы выполнения программы или взаимосвязанные логические схемы, блоки и функции или комбинации шагов выполнения программы и логических схем, блоков и функций.
Память может быть любого типа, который подходит локальному техническому окружению, и может быть выполнена на основе любой подходящей технологии хранения данных, такой как полупроводниковые запоминающие устройства, магнитные запоминающие устройства и системы, оптические запоминающие устройства и системы, постоянная память и сменная память. Процессоры обработки данных могут быть любого типа, который подходит локальному техническому окружению, и содержать одно или более вычислительных устройств общего назначения, вычислительные устройства специального назначения, микропроцессоры, цифровые сигнальные процессоры (DSP) и процессоры с многоядерной архитектурой, но не ограничиваются этими примерами.
Варианты осуществления изобретения могут осуществляться на базе различных компонентов, таких как интегральные модули. Разработка интегральных схем в целом является крайне автоматизированным процессом. Существуют комплексные и мощные программные средства для преобразования логического проектирования в проекты полупроводниковых схем, готовые для травления и формирования на полупроводниковой подложке.
Программы, предоставляемые такими компаниями, как Synopsys, Inc. (Mountain View, California) и Cadence Design (San Jose, California), автоматически разводят проводники и размещают компоненты на полупроводниковом кристалле, используя надежные правила проектирования и библиотеки предварительно записанных модулей для проектирования. Когда проектирование полупроводниковой схемы закончено, итоговый проект в стандартизованном электронном формате (например, Opus, GDSII или подобном) может быть отправлен производителю полупроводников для изготовления.
Вышеизложенное описание представлено как иллюстративный и не ограничивающий изобретение пример варианта осуществления изобретения. Из вышеизложенного описания с приложенными чертежами и формулой специалистам будут очевидны различные модификации и адаптации. Тем не менее, все подобные модификации идей настоящего изобретения попадают в объем изобретения, определенный приложенной формулой.
Изобретение относится к устройствам кодирования. Технический результат заключается в повышении эффективности и точности кодирования сигналов. Такой результат достигается тем, что устройство содержит вход для приема аудиосигнала; кодер низкочастотной области для кодирования низкочастотной области аудиосигнала; кодер высокочастотной области для кодирования высокочастотной области аудиосигнала путем выполнения операции вставки и кодирования одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал тональный, и выполнения выбора копии полосы, масштабирования копии полосы и вставки одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал нормальный; и контроллер для выбора по меньшей мере двух из упомянутых одночастотных компонент и для формирования индикатора, при этом индикатор сконфигурирован для представления упомянутых по меньшей мере двух одночастотных компонент, а также сконфигурирован зависимым от частотного интервала между двумя одночастотными компонентами. 8 н. и 14 з.п. ф-лы, 9 ил.
1. Кодер для кодирования аудиосигнала, включающий:
вход для приема аудиосигнала;
кодер низкочастотной области для кодирования низкочастотной области аудиосигнала;
кодер высокочастотной области для кодирования высокочастотной области аудиосигнала путем выполнения операции вставки и кодирования одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал тональный, и выполнения выбора копии полосы, масштабирования копии полосы и вставки одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал нормальный;
и контроллер для выбора по меньшей мере двух из упомянутых одночастотных компонент и для формирования индикатора, при этом индикатор сконфигурирован для представления упомянутых по меньшей мере двух одночастотных компонент, а также сконфигурирован зависимым от частотного интервала между двумя одночастотными компонентами.
2. Кодер по п.1, также сконфигурированный для:
выбора по меньшей мере одной дополнительной одночастотной компоненты; при этом индикатор также сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты; а также индикатор сконфигурирован зависимым от частотного интервала между по меньшей мере одной дополнительной одночастотной компонентой и одной из упомянутых по меньшей мере двух одночастотных компонент.
3. Кодер по п.1 или 2, в котором индикатор также сконфигурирован зависимым от частоты одной из упомянутых по меньшей мере двух одночастотных компонент.
4. Кодер по п.1 или 2, также сконфигурированный для определения частотного интервала между двумя одночастотными компонентами.
5. Кодер по п.4, также сконфигурированный для:
поиска определенного значения частотного интервала между двумя одночастотными компонентами в списке значений частотного интервала; и выбора из списка значения, которое наиболее близко к определенному значению частотного интервала между двумя одночастотными компонентами, при этом индикатор зависит от выбранного значения из списка значений частотного интервала.
6. Кодер по п.5, также сконфигурированный для:
определения разности между выбранным значением из списка значений частотного интервала и определенным значением частотного интервала, при этом индикатор также зависит от этой разности.
7. Кодер по п.6, также сконфигурированный для:
поиска определенной разности между значением, выбранным из списка значений частотного интервала, и определенным значением частотного интервала в дополнительном списке значений разности; и
выбора значения, которое наиболее близко к определенному значению разности, из дополнительного списка значений разности, при этом индикатор зависит от значения, выбранного из дополнительного списка значений разности.
8. Способ кодирования аудиосигнала, включающий кодирование низкочастотной области аудиосигнала и кодирование высокочастотной области аудиосигнала путем выполнения операции вставки и кодирования одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал тональный, и выполнения выбора копии полосы, масштабирования копии полосы и вставки одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал нормальный, при этом способ включает:
выбор по меньшей мере двух из упомянутых одночастотных компонент; и
формирование индикатора, который сконфигурирован для представления этих по меньшей мере двух одночастотных компонент, а также сконфигурирован зависимым от частотного интервала между двумя одночастотными компонентами.
9. Способ по п.8, также включающий выбор по меньшей мере одной дополнительной одночастотной компоненты, при этом индикатор также сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты, и индикатор также сконфигурирован зависимым от частотного интервала по меньшей мере между одной дополнительной одночастотной компонентой и одной из упомянутых по меньшей мере двух одночастотных компонент.
10. Способ по п.8 или 9, в котором индикатор также сконфигурирован зависимым от частоты одной из по меньшей мере двух одночастотных компонент.
11. Способ по п.8 или 9, также включающий определение частотного интервала между двумя одночастотными компонентами.
12. Способ по п.11, также включающий:
поиск определенного частотного интервала между двумя одночастотными компонентами в списке значений частотного интервала; и
выбор из списка значения, которое наиболее близко к определенному частотному интервалу между двумя одночастотными компонентами, при этом индикатор зависит от выбранного значения из списка значений частотного интервала.
13. Способ по п.12, также включающий определение разности между выбранным значением из списка значений частотного интервала и определенным значением частотного интервала, при этом индикатор также зависит от упомянутой разности.
14. Способ по п.13, также включающий:
поиск определенной разности между значением, выбранным из списка значений частотного интервала, и определенным значением частотного интервала в дополнительном списке значений разности; и
выбор значения, которое наиболее близко к определенному значению разности, из дополнительного списка значений разности, при этом индикатор зависит от значения, выбранного из дополнительного списка значений разности.
15. Декодер для декодирования аудиосигнала, включающий:
вход для приема аудиосигнала, при этом упомянутый аудиосигнал кодирован путем кодирования низкочастотной области аудиосигнала и кодирования высокочастотной области аудиосигнала путем выполнения операции вставки и кодирования одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал тональный, и выполнения выбора копии полосы, масштабирования копии полосы и вставки одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал нормальный; и
контроллер, сконфигурированный для приема по меньшей мере одного индикатора, представляющего по меньшей мере две из упомянутых одночастотных компонент, при этом индикатор представляет частотный интервал между двумя одночастотными компонентами; и для вставки упомянутых по меньшей мере двух одночастотных компонент в зависимости от принятого индикатора.
16. Декодер по п.15, в котором по меньшей мере один индикатор также сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты; также индикатор сконфигурирован зависимым от частотного интервала между по меньшей мере одной дополнительной одночастотной компонентой и одной из по меньшей мере двух одночастотных компонент; и декодер также сконфигурирован для вставки по меньшей мере одной дополнительной одночастотной компоненты в зависимости от индикатора.
17. Способ декодирования аудиосигнала, который кодирован путем кодирования низкочастотной области аудиосигнала и кодирования высокочастотной области аудиосигнала путем выполнения операции вставки и кодирования одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал тональный, и выполнения выбора копии полосы, масштабирования копии полосы и вставки одночастотных компонент, когда контроллер тонального выбора указывает, что аудиосигнал нормальный, при этом способ включает:
прием по меньшей мере одного индикатора, представляющего по меньшей мере две одночастотные компоненты, при этом индикатор представляет частотный интервал между двумя одночастотными компонентами; и
вставку по меньшей мере двух одночастотных компонент в зависимости от принятого индикатора.
18. Способ по п.17, в котором по меньшей мере один индикатор также сконфигурирован для представления по меньшей мере одной дополнительной одночастотной компоненты; индикатор также сконфигурирован зависимым от частотного интервала между по меньшей мере одной дополнительной одночастотной компонентой и одной из по меньшей мере двух одночастотных компонент;
и способ также включает вставку по меньшей мере одной дополнительной одночастотной компоненты в зависимости от индикатора.
19. Устройство для кодирования аудиосигнала, включающее кодер по любому из пп.1-7.
20. Устройство для декодирования аудиосигнала, включающее декодер по п.15 или 16.
21. Память, содержащая программный код, сконфигурированный для осуществления способа по любому из пп.8-14 при выполнении процессором.
22. Память, содержащая программный код, сконфигурированный для осуществления способа по п.17 или 18 при выполнении процессором.
Способ обработки целлюлозных материалов, с целью тонкого измельчения или переведения в коллоидальный раствор | 1923 |
|
SU2005A1 |
Пресс для выдавливания из деревянных дисков заготовок для ниточных катушек | 1923 |
|
SU2007A1 |
Способ обработки целлюлозных материалов, с целью тонкого измельчения или переведения в коллоидальный раствор | 1923 |
|
SU2005A1 |
Способ обработки целлюлозных материалов, с целью тонкого измельчения или переведения в коллоидальный раствор | 1923 |
|
SU2005A1 |
Пломбировальные щипцы | 1923 |
|
SU2006A1 |
RU 2005114916 A, 10.10.2005. |
Авторы
Даты
2013-05-27—Публикация
2007-11-06—Подача