ИНТЕГРАЦИЯ МЕТОДИК РЕКОНСТРУКЦИИ ВЫСОКИХ ЧАСТОТ ЗВУКА
INTEGRATION OF HIGH-FREQUENCY SOUND RECONSTRUCTION TECHNIQUES

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННЫЕ ЗАЯВКИ
Данная заявка заявляет приоритет европейской заявки на патент EP18169156.9, поданной 25 апреля 2018 г., которая посредством ссылки включена в настоящее описание.
ОБЛАСТЬ ТЕХНИКИ
Варианты осуществления настоящего изобретения относятся к обработке звуковых сигналов, и в частности к кодированию, декодированию или транскодированию звуковых битовых потоков с управляющими данными, задающими необходимость выполнения на звуковых данных или базовой формы реконструкции высоких частот («HFR»), или улучшенной формы HFR.
ПРЕДПОСЫЛКИ ИЗОБРЕТЕНИЯ
Обычный звуковой битовый поток содержит как звуковые данные (например, кодированные звуковые данные), характеризующие один или более каналов звукового содержимого, так и метаданные, указывающие по меньшей мере одну характеристику звуковых данных или звукового содержимого. Одним хорошо известным форматом для генерирования кодированного звукового битового потока является формат MPEG-4 «Перспективное звуковое кодирование» (AAC), описанный в стандарте MPEG ISO/IEC 14496-3:2009. В стандарте MPEG-4 AAC обозначает «перспективное звуковое кодирование», а HE-AAC обозначает «высокоэффективное перспективное звуковое кодирование».
Стандарт MPEG-4 AAC определяет несколько звуковых профилей, которые определяют, какие объекты и инструменты кодирования присутствуют в совместимом кодере или декодере. Тремя из этих звуковых профилей являются (1) профиль AAC, (2) профиль HE-AAC и (3) профиль HE-AAC v2. Профиль AAC содержит тип объекта AAC низкой сложности (или «AAC-LC»). Объект AAC-LC представляет собой аналог профиля MPEG-2 AAC низкой сложности с некоторыми усовершенствованиями и не содержит ни тип объекта копирования спектральной полосы («SBR»), ни тип объекта параметрического стерео («PS»). Профиль HE-AAC представляет собой надмножество профиля AAC и дополнительно содержит тип объекта SBR. Профиль HE-AAC v2 представляет собой надмножество профиля HE-AAC и дополнительно содержит тип объекта PS.
Тип объекта SBR содержит инструмент копирования спектральной полосы, который представляет собой важный инструмент кодирования реконструкции высоких частот («HFR»), значительно повышающий эффективность сжатия кодеков воспринимаемых звуковых сигналов. SBR реконструирует высокочастотные составляющие звукового сигнала на стороне приемника (например, в декодере). Таким образом, от кодера требуется только кодировать и передавать низкочастотные составляющие, что делает возможным намного более высокое качество звука при низких скоростях передачи данных. SBR основано на копировании последовательностей гармоник, ранее усеченных с целью уменьшения скорости передачи данных, из доступного сигнала с ограниченной полосой пропускания и управляющих данных, полученных из кодера. Соотношение между тональными и шумоподобными составляющими сохраняется с помощью адаптивной обратной фильтрации, а также необязательного добавления шума и синусоид. В стандарте MPEG-4 AAC инструмент SBR выполняет спектральную вставку (также называемую «линейным переносом» или «спектральным переносом»), при которой ряд последовательных поддиапазонов квадратурного зеркального фильтра (QMF) копируют (или «вставляют») из переданной относящейся к нижнему диапазону части звукового сигнала в относящуюся к верхнему диапазону часть звукового сигнала, которая генерируется в декодере.
Спектральная вставка, или линейный перенос, может не являться идеальной для некоторых типов звука, таких как музыкальное содержимое с относительно низкими частотами разделения. Поэтому необходимы методики для совершенствования копирования спектральной полосы.
Краткое описание вариантов осуществления изобретения
Первый класс вариантов осуществления относится к раскрытию способа декодирования кодированного звукового битового потока. Способ включает прием кодированного звукового битового потока и декодирование звуковых данных для генерирования декодированного звукового сигнала нижнего диапазона. Способ дополнительно включает извлечение метаданных реконструкции высоких частот и фильтрование декодированного звукового сигнала нижнего диапазона с помощью блока анализирующих фильтров для генерирования фильтрованного звукового сигнала нижнего диапазона. Способ дополнительно включает извлечение флага, указывающего, необходимо ли выполнять или спектральный перенос, или гармоническую транспозицию на звуковых данных, и восстановление относящейся к верхнему диапазону части звукового сигнала с использованием фильтрованного звукового сигнала нижнего диапазона и метаданных реконструкции высоких частот в соответствии с флагом. Наконец, способ включает объединение фильтрованного звукового сигнала нижнего диапазона и восстановленной относящейся к верхнему диапазону части для формирования широкополосного звукового сигнала.
Второй класс вариантов осуществления относится к декодеру звука для декодирования кодированного звукового битового потока. Декодер содержит интерфейс ввода для приема кодированного звукового битового потока, где кодированный звуковой битовый поток содержит звуковые данные, представляющие относящуюся к нижнему диапазону часть звукового сигнала, и основной декодер для декодирования звуковых данных для генерирования декодированного звукового сигнала нижнего диапазона. Декодер также содержит демультиплексор для извлечения из кодированного звукового битового потока метаданных реконструкции высоких частот, где метаданные реконструкции высоких частот содержат рабочие параметры для процесса реконструкции высоких частот, который выполняет линейный перенос последовательного количества поддиапазонов из относящейся к нижнему диапазону части звукового сигнала в относящуюся к верхнему диапазону часть звукового сигнала, и блок анализирующих фильтров для фильтрации декодированного звукового сигнала нижнего диапазона для генерирования фильтрованного звукового сигнала нижнего диапазона. Декодер дополнительно содержит демультиплексор для извлечения из кодированного звукового битового потока флага, указывающего, необходимо ли выполнять или линейный перенос, или гармоническую транспозицию на звуковых данных, и устройство восстановления высоких частот для восстановления относящейся к верхнему диапазону части звукового сигнала с использованием фильтрованного звукового сигнала нижнего диапазона и метаданных реконструкции высоких частот в соответствии с флагом. Наконец, декодер содержит блок синтезирующих фильтров для объединения фильтрованного звукового сигнала нижнего диапазона и восстановленной высокочастотной относящейся к верхнему диапазону части для формирования широкополосного звукового сигнала.
Другие классы вариантов осуществления относятся к кодированию и транскодированию звуковых битовых потоков, содержащих метаданные, идентифицирующие необходимость выполнения обработки улучшенного копирования спектральной полосы (eSBR).
Краткое описание графических материалов
На фиг. 1 показана структурная схема одного варианта осуществления системы, которая может быть приспособлена для выполнения одного варианта осуществления способа согласно изобретению.
На фиг. 2 показана структурная схема кодера, представляющего собой один вариант осуществления блока обработки звука согласно изобретению.
На фиг. 3 показана структурная схема системы, которая содержит декодер, представляющий собой один вариант осуществления блока обработки звука согласно изобретению, и необязательно также соединенный с ним постпроцессор.
На фиг. 4 показана структурная схема декодера, представляющего собой один вариант осуществления блока обработки звуковых данных согласно изобретению.
На фиг. 5 показана структурная схема декодера, представляющего собой другой вариант осуществления блока обработки звуковых данных согласно изобретению.
На фиг. 6 показана структурная схема другого варианта осуществления блока обработки звука согласно изобретению.
На фиг. 7 показана схема блока данных битового потока MPEG-4 AAC, в том числе сегментов, на которые он разделен.
Условные обозначения и терминология
По всему этому документу, включая формулу изобретения, выражение выполнения операции «над» сигналом или данными (например, фильтрация, масштабирование, преобразование или применение коэффициента усиления к сигналам или данным) используется в широком смысле для обозначения выполнения операции непосредственно над сигналом или данными или над обработанной версией сигнала или данных (например, над версией сигнала, который был подвергнут предварительной фильтрации или предварительной обработке перед выполнением над ним указанной операции).
По всему этому документу, включая формулу изобретения, выражения «блок обработки звука» или «звуковой процессор» используются в широком смысле, для обозначения системы, устройства или аппарата, приспособленных для обработки звуковых данных. Примеры блоков обработки звука включают, но без ограничения, кодеры, транскодеры, декодеры, кодеки, системы предварительной обработки, системы пост-обработки и системы обработки битового потока (иногда называемые «инструментами обработки битового потока»). Практически вся потребительская электроника, такая как мобильные телефоны, телевизоры, ноутбуки и планшетные компьютеры, содержит блок обработки звука, или звуковой процессор.
По всему данному документу, включая формулу изобретения, термин «соединяет», или «соединенный», используется в широком смысле для обозначения либо непосредственного, либо опосредствованного соединения. Таким образом, если первое устройство соединено со вторым устройством, данное соединение может быть осуществлено через непосредственное соединение или через опосредованное соединения посредством других устройств или соединений. Более того, компоненты, встроенные в другие компоненты или объединенные с ними, также являются связанными друг с другом.
Подробное описание вариантов осуществления изобретения
Стандарт MPEG-4 AAC предусматривает, что кодированный битовый поток MPEG-4 AAC содержит метаданные, которые указывают каждый тип обработки реконструкции высоких частот («HFR»), которую необходимо применять (если какой-либо требуется применять) декодеру для декодирования звукового содержимого битового потока, и/или которые управляют этой обработкой HFR, и/или указывают по меньшей мере одну характеристику или параметр по меньшей мере одного инструмента HFR, который необходимо применять для декодирования звукового содержимого битового потока. В данном документе выражение «метаданные SBR» используется для обозначения метаданных, относящихся к типу, описанному или упомянутому в стандарте MPEG-4 AAC для использования при копировании спектральной полосы («SBR»). Специалистам в данной области техники понятно, что SBR представляет собой форму HFR.
SBR предпочтительно используют как двухскоростную систему, в которой базовый кодек действует на половине исходной частоты дискретизации, тогда как SBR действует на исходной частоте дискретизации. Кодер SBR действует параллельно с базовым основным кодеком, хотя и на более высокой частоте дискретизации. Хотя SBR представляет собой, главным образом, заключительную обработку в декодере, для обеспечения наиболее точной реконструкции высоких частот в декодере важные параметры извлекаются в кодере. Кодер оценивает огибающую спектра диапазона SBR для временного и частотного диапазона/разрешения, подходящего для характеристик сегментов текущего входного сигнала. Огибающая спектра оценивается с помощью комплексного QMF анализа и последующего вычисления энергии. Временное и частотное разрешения огибающих спектра можно выбрать с более высокой степенью свободы, чтобы обеспечить наилучшее подходящее частотно-временное разрешение для данного входного сегмента. При оценке огибающей необходимо учитывать, что переходной сигнал, первоначально расположенный, главным образом, в высокочастотной области (например, сигнал педальной тарелки), будет лишь в небольшой степени присутствовать в генерируемом SBR верхнем диапазоне до коррекции огибающей, поскольку верхний диапазон в декодере основан на нижнем диапазоне, где этот переходной сигнал намного менее выражен по сравнению с верхним диапазоном. Данный аспект вводит разные требования для частотно-временного разрешения данных огибающей спектра по сравнению с обычной оценкой огибающей спектра, используемой в алгоритмах кодирования звука.
Помимо огибающей спектра, извлекается несколько дополнительных параметров, представляющих спектральные характеристики входного сигнала для разных временных и частотных областей. Поскольку кодер естественным образом имеет доступ к исходному сигналу, а также к информации о том, как блок SBR в декодере будет создавать верхний диапазон, при наличии конкретного набора управляющих параметров, система может обрабатывать ситуации, в которых нижний диапазон составляет строгий гармонический ряд, а верхний диапазон, который необходимо воссоздать, составляет в основном случайные составляющие сигнала, а также ситуации, в которых в исходном верхнем диапазоне присутствуют сильные тональные составляющие, не имеющие аналогов в нижнем диапазоне, на котором основывается верхний диапазон. Кроме того, кодер SBR действует в тесной связи с базовым основным кодеком для оценки того, какой частотный диапазон следует охватывать посредством SBR в данный момент времени. Данные SBR эффективно кодируются перед передачей с использованием энтропийного кодирования, а также канальных зависимостей управляющих данных, в случае стереофонических сигналов.
Алгоритмы извлечения управляющих параметров обычно необходимо тщательно подстраивать к базовому кодеку при заданной битовой скорости и заданной частоте дискретизации. Это вызвано тем, что более низкая битовая скорость обычно предполагает более широкий диапазон SBR по сравнению с высокой битовой скоростью, а разные частоты дискретизации соответствуют разным временным разрешениям кадров SBR.
Декодер SBR обычно содержит несколько разных частей. Он содержит модуль декодирования битового потока, модуль реконструкции высоких частот (HFR), модуль дополнительных высокочастотных составляющих и модуль корректора огибающей. Система основана на блоке комплекснозначных QMF фильтров (для высококачественной SBR) или блоке вещественнозначных QMF фильтров (для SBR малой мощности). Варианты осуществления настоящего изобретения применимы и к высококачественной SBR, и к SBR малой мощности. В модуле извлечения битового потока управляющие данные считывают из битового потока и декодируют. Перед считыванием данных огибающей из битового потока для текущего кадра получают частотно-временную сетку. Базовый основной декодер декодирует звуковой сигнал текущего кадра (хотя и с более низкой частотой дискретизации) для получения звуковых дискретных значений во временной области. Получаемый кадр звуковых данных используется модулем HFR для реконструкции высоких частот. Декодированный сигнал нижнего диапазона затем подвергают анализу с использованием блока QMF фильтров. Затем на дискретных значениях поддиапазонов блока QMF фильтров выполняют реконструкцию высоких частот и коррекция огибающей. Высокие частоты реконструируют из нижнего диапазона гибким образом на основе заданных управляющих параметров. Кроме того, для обеспечения надлежащих спектральных характеристик заданной временной / частотной области реконструированный верхний диапазон подвергают адаптивной фильтрации на основе каналов поддиапазонов в соответствии с управляющими данными.
Высший уровень битового потока MPEG-4 AAC представляет собой последовательность блоков данных (элементы «raw_data_block»), каждый из которых представляет собой сегмент данных (в данном документе называемый «блоком»), содержащий звуковые данные (обычно для промежутка времени в 1024 или 960 дискретных значений), и связанную информацию и/или другие данные. В данном документе термин «блок» используется для обозначения сегмента битового потока MPEG-4 AAC, содержащего звуковые данные (и соответствующие метаданные, а также необязательно другие связанные данные), которые определяют или указывают один (но не более одного) элемент «raw_data_block».
Каждый блок битового потока MPEG-4 AAC может содержать некоторое количество синтаксических элементов (каждый из которых также реализован в битовом потоке как сегмент данных). В стандарте MPEG-4 AAC определено семь типов таких синтаксических элементов. Каждый синтаксический элемент идентифицируют по отличающемуся значению элемента данных «id_syn_ele». Примеры синтаксических элементов включают «single_channel_element()», «channel_pair_element()» и «fill_element()». Элемент одиночного канала single_channel_element представляет собой контейнер, содержащий звуковые данные одного звукового канала (монофонический звуковой сигнал). Элемент пары каналов channel_pair_element содержит звуковые данные двух звуковых каналов (т.е. стереофонический звуковой сигнал).
Заполняющий элемент fill_element представляет собой контейнер информации, содержащий идентификатор (например, значение отмеченного выше элемента «id_syn_ele»), за которым следует данные, называемые «заполняющими данными». Заполняющие элементы исторически использовали для коррекции мгновенной битовой скорости битовых потоков, подлежащих передаче по каналу с постоянной скоростью. Благодаря добавлению соответствующего количества заполняющих данных к каждому блоку можно добиться постоянной скорости передачи данных.
Согласно вариантам осуществления настоящего изобретения заполняющие данные могут содержать один или более элементов полезных данных расширения, которые расширяют тип данных (например, метаданные) и могут быть переданы в битовом потоке. Декодер, принимающий битовые потоки с заполняющими данными, содержащими новый тип данных, может необязательно быть использован устройством, принимающим битовый поток (например, декодером), для расширения функциональных возможностей устройства. Таким образом, как может быть понятно специалисту в данной области техники, заполняющие элементы представляют собой специальный тип структуры данных и отличаются от структур данных, обычно используемых для передачи звуковых данных (например, полезных звуковых данных, содержащих данные каналов).
В некоторых вариантах осуществления настоящего изобретения идентификатор, используемый для идентификации заполняющего элемента, может состоять из трехбитного целого числа без знака, у которого сначала передают старший значащий бит («uimsbf»), имеющего значение 0x6. В одном блоке может существовать несколько экземпляров синтаксического элемента одного типа (например, несколько заполняющих элементов).
Другим стандартом кодирования звуковых битовых потоков является стандарт MPEG «Унифицированное кодирование речи и звука» (USAC) (ISO/IEC 23003-3:2012). В стандарте MPEG USAC описано кодирование и декодирование звукового содержимого с использованием обработки копирования спектральной полосы (в том числе обработки SBR, как описано в стандарте MPEG-4 AAC, а также других улучшенных форм обработки копирования спектральной полосы). При данной обработке применяют инструменты копирования спектральной полосы (иногда называемые в данном документе «инструментами улучшенного SBR» или «инструментами eSBR») из расширенной и улучшенной версии набора инструментов SBR, описанных в стандарте MPEG-4 AAC. Таким образом, eSBR (определенное в стандарте USAC) представляет собой усовершенствование SBR (определенного в стандарте MPEG-4 AAC).
В данном документе выражение «обработка улучшенного SBR» (или «обработка eSBR») используется для обозначения обработки копирования спектральной полосы с использованием по меньшей мере одного инструмента eSBR (например, по меньшей мере одного инструмента eSBR, описанного или упомянутого в стандарте MPEG USAC), который не описан или не упомянут в стандарте MPEG-4 AAC. Примерами таких инструментов eSBR являются гармоническая транспозиция и предварительная обработка, или «предварительное сглаживание», QMF вставки.
Гармонический транспозер целочисленного порядка Т отображает синусоиду с частотой ω в синусоиду с частотой Tω с одновременным сохранением длительности сигнала. Обычно для получения каждой части требуемого выходного диапазона частот используется в последовательности три порядка, T = 2, 3, 4, с использованием наименьшего возможного порядка транспозиции. Если требуется вывод выше четвертого порядка диапазона транспозиции, его можно получить путем сдвигов частоты. С целью сведения к минимуму вычислительной сложности, когда возможно, для обработки создают дискретизированные временные области основной полосы, близкие к критическим.
Гармонический транспозер может быть основан или на QMF, или на DFT. При использовании гармонического транспозера на основе QMF расширение полосы пропускания сигнала основного кодера во временной области полностью осуществляется в области QMF с использованием конструкции модифицированного фазового вокодера, выполняющей прореживание, за которым следует растяжение по времени для каждого поддиапазона QMF. Транспозицию с использованием нескольких коэффициентов транспозиции (например, T = 2, 3, 4) осуществляют на общей ступени преобразования анализа / синтеза QMF. Поскольку гармонический транспозер на основе QMF не обладает адаптивной к сигналу передискретизацией в частотной области, соответствующий флаг в битовом потоке («sbrOversamplingFlag[ch]») может быть проигнорирован.
Для снижения сложности при использовании гармонического транспозера на основе DFT транспозеры с коэффициентами 3 и 4 (транспозеры 3-го и 4-го порядков) предпочтительно встроены в транспозер с коэффициентом 2 (транспозер 2-го порядка) посредством интерполяции. Для каждого кадра (соответствующего дискретным значениям основного кодера coreCoderFrameLength) номинальный «полный размер» преобразования транспозера в первую очередь определяется в битовом потоке флагом («sbrOversamplingFlag[ch]») адаптивной к сигналу передискретизации в частотной области.
Low
Если sbrPatchingMode==1, указывая, что для генерации верхнего диапазона необходимо использовать линейную транспозицию, то может быть введен дополнительный этап, чтобы избежать нарушений непрерывности в форме огибающей спектра высокочастотного сигнала, вводимого в последующий корректор огибающей. Это улучшает работу следующей ступени коррекции огибающей, что приводит к большей стабильности воспринимаемого сигнала верхнего диапазона. Работа дополнительной предварительной обработки является полезной для типов сигналов, в которых грубая огибающая спектра сигнала нижнего диапазона, используемого для реконструкции высоких частот, проявляет большие вариации уровня. Однако значение этого элемента битового потока можно определить в кодере путем применения любого типа классификации, зависящей от сигнала. Дополнительную предварительную обработку предпочтительно активируют с помощью однобитного элемента битового потока, «bs_sbr_preprocessing». Если «bs_sbr_preprocessing» установлен в единицу, дополнительная обработка включена. Если «bs_sbr_preprocessing» установлен в ноль, дополнительная предварительная обработка отключена. При дополнительной обработке предпочтительно используется кривая preGain, которая используется генератором высоких частот для масштабирования нижнего диапазона, X, для каждой вставки. Например, кривую preGain можно вычислить по формуле:
0
где k – первый поддиапазон QMF в таблице диапазонов главных частот, а lowEnvSlope вычисляют с использованием функции, которая вычисляет коэффициенты наилучшего подходящего полинома (в смысле наименьших квадратов), такой как polyfit(). Например,
может быть использована (с использованием полинома третьей степени) и где
0
k
где x_lowband(k) = [0…k-1], numTimeSlot – количество временных промежутков огибающей SBR, существующих в пределах кадра, RATE – константа, указывающая количество дискретных значений поддиапазонов QMF на временной промежуток (например, 2), ϕ – коэффициент фильтра линейного предсказания (потенциально получаемый ковариационным методом), и где
.
Битовый поток, сгенерированный согласно стандарту MPEG USAC (иногда именуемый в данном документе «битовым потоком USAC»), содержит кодированное звуковое содержимое и обычно содержит метаданные, указывающие каждый тип обработки копирования спектральной полосы, которую необходимо применять декодеру для декодирования звукового содержимого битового потока USAC, и/или метаданные, управляющие такой обработкой копирования спектральной полосы, и/или указывающие по меньшей мере одну характеристику или параметр по меньшей мере одного инструмента SBR и/или eSBR, который необходимо применять для декодирования звукового содержимого битового потока USAC.
В данном документе выражение «метаданные улучшенного SBR» (или «метаданные eSBR») используются для обозначения метаданных, указывающих каждый тип обработки копирования спектральной полосы, которую необходимо применять декодеру для декодирования звукового содержимого кодированного звукового битового потока (например, битового потока USAC), и/или которые управляют такой обработкой копирования спектральной полосы, и/или указывающих по меньшей мере одну характеристику или параметр по меньшей мере одного инструмента SBR и/или eSBR, который необходимо применять для декодирования такого звукового содержимого, но который не описан или не упомянут в стандарте MPEG-4 AAC. Примером метаданных eSBR являются метаданные (указывающие обработку копирования спектральной полосы или управляющие ей), которые описаны или упомянуты в стандарте MPEG USAC, но не в стандарте MPEG-4 AAC. Таким образом, метаданные eSBR в данном документе обозначают метаданные, не являющиеся метаданными SBR, и метаданные SBR в данном документе обозначают метаданные, не являющиеся метаданными eSBR.
Битовый поток USAC может содержать и метаданные SBR, и метаданные eSBR. Более конкретно, битовый поток USAC может содержать метаданные eSBR, управляющие выполнением обработки eSBR декодером, и метаданные SBR, управляющие выполнением обработки SBR декодером. Согласно типичными вариантам осуществления настоящего изобретения метаданные eSBR (например, конфигурационные данные, специфичные для eSBR) включены (согласно настоящему изобретению) в битовый поток MPEG-4 AAC (например, в контейнер sbr_extension() в конце полезных данных SBR).
При выполнении обработки eSBR, в ходе декодирования кодированного битового потока с использованием набора инструментов eSBR (содержащего по меньшей мере один инструмент eSBR), декодером верхний диапазон звукового сигнала восстанавливают на основе копирования последовательностей гармоник, которые были усечены во время кодирования. Такая обработка eSBR, как правило, корректирует огибающую спектра восстанавливаемого высокочастотного диапазона, применяет обратную фильтрацию и добавляет шумовые и синусоидальные составляющие для воссоздания спектральных характеристик исходного звукового сигнала.
Согласно обычным вариантам осуществления настоящего изобретения метаданные eSBR включают (например, включают небольшое количество управляющих битов, представляющих собой метаданные eSBR) в один или более сегментов метаданных кодированного звукового битового потока (например, битового потока MPEG-4 AAC), который также содержит кодированные звуковые данные в других сегментах. Как правило, по меньшей мере один такой сегмент метаданных каждого блока битового потока представляет собой (или содержит) заполняющий элемент (содержащий идентификатор, указывающий начало заполняющего элемента), и метаданные eSBR включают в заполняющий элемент после этого идентификатора.
На фиг. 1 показана структурная схема примерной цепочки обработки звука (системы обработки звуковых данных), в которой один или более элементов системы могут быть выполнены согласно одному варианту осуществления настоящего изобретения. Система содержит следующие элементы, соединенные вместе, как показано: кодер 1, подсистему 2 доставки, декодер 3 и блок 4 постобработки. В вариациях показанной системы опускают один или более элементов или включают дополнительные блоки обработки звуковых данных.
В некоторых реализациях кодер 1 (необязательно содержащий блок предварительной обработки) выполнен с возможностью приема в качестве ввода дискретных значений РСМ (во временной области), содержащих звуковое содержимое, и вывода кодированного звукового битового потока (имеющего формат, совместимый со стандартом MPEG-4 AAC), который характеризует звуковое содержимое. Данные битового потока, характеризующие звуковое содержимое, иногда называют «звуковыми данными» или «кодированными звуковыми данными». Если кодер выполнен согласно типичному варианту осуществления настоящего изобретения, звуковой битовый поток, выводимый из кодера, содержит метаданные eSBR (и, как правило, другие метаданные), а также звуковые данные.
Один или более кодированных звуковых битовых потоков, выводимых из кодера 1, могут быть переданы в подсистему 2 доставки кодированного звука. Подсистема 2 выполнена с возможностью хранения и/или доставки каждого кодированного битового потока, выводимого из кодера 1. Кодированный звуковой битовый поток, выводимый из кодера 1, может быть сохранен в подсистеме 2 (например, в форме диска DVD или Blu ray), или быть передан подсистемой 2 (которая может реализовывать канал или сеть связи), или может быть и сохранен, и передан подсистемой 2.
Декодер 3 выполнен с возможностью декодирования кодированного звукового битового потока MPEG-4 AAC (генерируемого кодером 1), который он принимает через подсистему 2. В некоторых вариантах осуществления декодер 3 выполнен с возможностью извлечения метаданных eSBR из каждого блока битового потока и декодирования битового потока (в том числе посредством выполнения обработки eSBR с использованием извлеченных метаданных eSBR) для генерирования декодированных звуковых данных (например, потоков декодированных звуковых дискретных значений РСМ). В некоторых вариантах осуществления декодер 3 выполнен с возможностью извлечения метаданных SBR из битового потока (однако с игнорированием метаданных еSBR, включенных в битовый поток) и декодирования битового потока (в том числе посредством выполнения обработки SBR с использованием извлеченных метаданных SBR) для генерирования декодированных звуковых данных (например, потоков декодированных звуковых дискретных значений РСМ). Как правило, декодер 3 содержит буфер, в котором хранятся (например, энергонезависимо) сегменты кодированного звукового битового потока, принятого из подсистемы 2.
Блок 4 постобработки по фиг. 1 выполнен с возможностью приема потока декодированных звуковых данных из декодера 3 (например, декодированных звуковых дискретных значений РСМ) и выполнения постобработки над ними. Блок постобработки также может быть выполнен с возможностью представления подвергнутого постобработке звукового содержимого (или декодированного звука, принятого из декодера 3) для воспроизведения одним или более динамиками.
На фиг. 2 показана структурная схема кодера (100), представляющего собой один вариант осуществления блока обработки звука согласно изобретению. Любой из компонентов или элементов кодера 100 может быть реализован как один или более процессов и/или одна или более схем (например, ASIC, FPGA или других интегральных схем), в аппаратном обеспечении, программном обеспечении или в сочетании аппаратного и программного обеспечения. Кодер 100 содержит кодер 105, ступень 107 формирователя скорости передачи данных / устройства форматирования, ступень 106 генерации метаданных и буферное запоминающее устройство 109, соединенные так, как показано. Как правило, кодер 100 также содержит другие обрабатывающие элементы (не показаны). Кодер 100 выполнен с возможностью преобразования входного звукового битового потока в кодированный выходной битовый поток MPEG-4 AAC.
Генератор 106 метаданных подключен и выполнен с возможностью генерации (и/или пропуска на ступень 107) метаданных (в том числе метаданных eSBR и метаданных SBR) с целью включения ступенью 107 в кодированный битовый поток для вывода из кодера 100.
Кодер 105 соединен и выполнен с возможностью кодирования входных звуковых данных (например, путем выполнения их сжатия) и передачи полученного в результате кодированного звука на ступень 107 с целью включения в кодированный битовый поток для вывода из ступени 107.
Ступень 107 выполнена с возможностью мультиплексирования кодированного звука из кодера 105 и метаданных (в том числе метаданных eSBR и метаданных SBR) из генератора 106 для генерирования кодированного битового потока для вывода из ступени 107, предпочтительно так, что кодированный битовый поток имеет формат, задаваемый одним из вариантов осуществления настоящего изобретения.
Буферное запоминающее устройство 109 выполнено с возможностью хранения (например, энергонезависимо) по меньшей мере одного блока кодированного звукового битового потока из ступени 107, и последовательность блоков кодированного звукового битового потока затем передается из буферного запоминающего устройства 109 как вывод из кодера 100 в систему доставки.
На фиг. 3 показана структурная схема системы, содержащей декодер (200), представляющий собой один вариант осуществления блока обработки звука согласно изобретению, и необязательно также соединенный с ним постпроцессор (300). Любой из компонентов, или элементов, декодера 200 и постпроцессора 300 может быть реализован как один или более процессов и/или одна или более схем (например, ASIC, FPGA или других интегральных схем), в аппаратном обеспечении, программном обеспечении или в сочетании аппаратного и программного обеспечения. Декодер 200 содержит буферное запоминающее устройство 201, устройство 205 удаления форматирования (синтаксический анализатор) полезных данных битового потока, подсистему 202 декодирования звука (иногда называемую «основной» ступенью декодирования или «основной» подсистемой декодирования), ступень 203 обработки eSBR и ступень 204 генерации управляющих битов, соединенные так, как показано. Как правило, декодер 200 также содержит другие обрабатывающие элементы (не показаны).
Буферное запоминающее устройство (буфер) 201 хранит (например, энергонезависимо) по меньшей мере один блок кодированного звукового битового потока MPEG-4 AAC, принятого декодером 200. В работе декодера 200 последовательность блоков битового потока передается из буфера 201 в устройство 205 удаления форматирования.
В вариациях варианта осуществления по фиг. 3 (или варианта осуществления по фиг. 4, который будет описан), APU, который не является декодером (например, APU 500 по фиг. 6), содержит буферное запоминающее устройство (например, буферное запоминающее устройство, идентичное буферу 201), которое сохраняет (например, энергонезависимо) по меньшей мере один блок кодированного звукового битового потока (например, звукового битового потока MPEG-4 AAC) такого же типа, как принятый буфером 201 по фиг. 3 или фиг. 4 (т.е. кодированного звукового битового потока, содержащего метаданные eSBR).
Также со ссылкой на фиг. 3, устройство 205 удаления форматирования соединено и выполнено с возможностью демультиплексирования каждого блока битового потока для извлечения из него метаданных SBR (включая квантованные данные огибающей) и метаданных eSBR (и, как правило, других метаданных) с целью передачи по меньшей мере метаданных eSBR и метаданных SBR на ступень 203 обработки eSBR, а также, как правило, для передачи других извлеченных метаданных в подсистему 202 декодирования (и необязательно также в генератор 204 управляющих битов). Устройство 205 удаления форматирования также соединено и выполнено с возможностью извлечения звуковых данных из каждого блока битового потока и передачи извлеченных звуковых данных в подсистему 202 декодирования (ступень декодирования).
Система, показанная на фиг. 3, необязательно также содержит постпроцессор 300. Постпроцессор 300 содержит буферное запоминающее устройство (буфер) 301 и другие обрабатывающие элементы (не показаны), в том числе по меньшей мере один обрабатывающий элемент, соединенный с буфером 301. Буфер 301 сохраняет (например, энергонезависимо) по меньшей мере один блок (или кадр) декодированных звуковых данных, принятых постпроцессором 300 из декодера 200. Обрабатывающие элементы постпроцессора 300 соединены и выполнены с возможностью приема и адаптивной обработки последовательности блоков (или кадров) вывода декодированного звука из буфера 301 с использованием вывода метаданных из подсистемы 202 декодирования (и/или устройства 205 удаления форматирования) и/или вывода управляющих битов из ступени 204 декодера 200.
Подсистема 202 декодирования звука декодера 200 выполнена с возможностью декодирования звуковых данных, извлеченных синтаксическим анализатором 205 (такое декодирование можно назвать «основной» операцией декодирования), для генерирования декодированных звуковых данных и передачи декодированных звуковых данных на ступень 203 обработки eSBR. Декодирование выполняется в частотной области и, как правило, включает обратное квантование, за которым следует спектральная обработка. Как правило, последняя ступень обработки в подсистеме 202 применяет преобразование из частотной области во временную область к декодированным звуковым данным в частотной области, так что вывод подсистемы представляет собой декодированные звуковые данные во временной области. Ступень 203 выполнена с возможностью применения инструментов SBR и инструментов eSBR, указанных метаданными SBR и eSBR (извлеченными синтаксическим анализатором 205), к декодированным звуковым данным (т. е. выполнения обработки SBR и eSBR над выводом подсистемы 202 декодирования с использованием метаданных SBR и eSBR) для генерирования полностью декодированных звуковых данных, выводимых (например, в постпроцессор 300) из декодера 200. Как правило, декодер 200 содержит запоминающее устройство (доступное для подсистемы 202 и ступени 203), которое сохраняет звуковые данные с удаленным форматированием и метаданные, выведенные из устройства 205 удаления форматирования, и ступень 203 выполнена с возможностью осуществления доступа к этим звуковым данным и метаданным (в том числе метаданным SBR и eSBR) по мере необходимости в ходе обработки SBR и eSBR. Обработку SBR и обработку eSBR на ступени 203 можно считать постобработкой над выводом основной подсистемы 202 декодирования. Необязательно декодер 200 также содержит подсистему заключительного повышающего микширования (которая может применять инструменты параметрической стереофонии («PS»), определенные в стандарте MPEG-4 AAC, с использованием метаданных PS, извлеченных устройством 205 удаления форматирования, и/или управляющих битов, сгенерированных в подсистеме 204), соединенную и выполненную с возможностью выполнения повышающего микширования в отношении вывода ступени 203 для генерирования полностью декодированного и подвергнутого повышающему микшированию звука, который выводится из декодера 200. Альтернативно постпроцессор 300 выполнен с возможностью выполнения повышающего микширования в отношении вывода декодера 200 (например, с использованием метаданных PS, извлеченных устройством 205 удаления форматирования, и/или управляющих битов, сгенерированных в подсистеме 204).
В ответ на метаданные, извлеченные устройством 205 удаления форматирования, генератор 204 управляющих битов может генерировать управляющие данные, и эти управляющие данные могут быть использованы в декодере 200 (например, в подсистеме заключительного повышающего микширования) и/или переданы как вывод декодера 200 (например, в постпроцессор 300 для использования при постобработке). В ответ на метаданные, извлеченные из входного битового потока (и необязательно также в ответ на управляющие данные), ступень 204 может генерировать (и передавать в постпроцессор 300) управляющие биты, указывающие, что декодированные звуковые данные, выводимые из ступени 203 обработки eSBR, следует подвергнуть постобработке конкретного типа. В некоторых реализациях декодер 200 выполнен с возможностью передачи метаданных, извлеченных устройством 205 удаления форматирования из входного битового потока, в постпроцессор 300, и постпроцессор 300 выполнен с возможностью выполнения постобработки над декодированными звуковыми данными, выводимыми из декодера 200, с использованием этих метаданных.
На фиг. 4 показана структурная схема блока обработки звука («APU») (210), представляющего собой другой вариант осуществления блока обработки звука согласно изобретению. APU 210 представляет собой традиционный декодер, выполненный без возможности выполнения обработки eSBR. Любой из компонентов или элементов APU 210 может быть реализован как один или более процессов и/или одна или более схем (например, ASIC, FPGA или других интегральных схем), в аппаратном обеспечении, программном обеспечении или в сочетании аппаратного и программного обеспечения. APU 210 содержит буферное запоминающее устройство 201, устройство 215 удаления форматирования (синтаксический анализатор) полезных данных битового потока, подсистему 202 декодирования звука (иногда называемую «основной» ступенью декодирования или «основной» подсистемой декодирования) и ступень 213 обработки SBR, соединенные так, как показано. Как правило, APU 210 также содержит другие обрабатывающие элементы (не показаны). APU 210 может представлять, например, кодер, декодер или транскодер звука.
Элементы 201 и 202 APU 210 являются идентичными идентично пронумерованным элементам декодера 200 (по фиг. 3), и их описание, приведенное выше, повторяться не будет. В работе APU 210 последовательность блоков кодированного звукового битового потока (битового потока MPEG-4 AAC), принятая APU 210, передается из буфера 201 в устройство 215 удаления форматирования.
Устройство 215 удаления форматирования соединено и выполнено с возможностью демультиплексирования каждого блока битового потока с целью извлечения из него метаданных SBR (в том числе квантованных данных огибающей) и, как правило, других метаданных, но с игнорированием метаданных eSBR, которые могут быть включены в битовый поток согласно любому из вариантов осуществления настоящего изобретения. Устройство 215 удаления форматирования выполнено с возможностью передачи по меньшей мере метаданных SBR на ступень 213 обработки SBR. Устройство 215 удаления форматирования также соединено и выполнено с возможностью извлечения звуковых данных из каждого блока битового потока и передачи извлеченных звуковых данных в подсистему 202 декодирования (ступень декодирования).
Подсистема 202 декодирования звука декодера 200 выполнена с возможностью декодирования звуковых данных, извлеченных устройством 215 удаления форматирования (такое декодирование можно назвать «основной» операцией декодирования), для генерирования декодированных звуковых данных и передачи декодированных звуковых данных на ступень 213 обработки SBR. Декодирование выполняется в частотной области. Как правило, последняя ступень обработки в подсистеме 202 применяет преобразование из частотной области во временную область к декодированным звуковым данным в частотной области, так что вывод подсистемы представляет собой декодированные звуковые данные во временной области. Ступень 213 выполнена с возможностью применения инструментов SBR (но не инструментов eSBR), указанных метаданными SBR (извлеченными устройством 215 удаления форматирования), к декодированным звуковым данным (т.е. выполнения обработки SBR над выводом подсистемы 202 декодирования с использованием метаданных SBR) для генерирования полностью декодированных звуковых данных, выводимых (например, в постпроцессор 300) из APU 210. Как правило, APU 210 содержит запоминающее устройство (доступное для подсистемы 202 и ступени 213), которое сохраняет звуковые данные с удаленным форматированием и метаданные, выведенные из устройства 215 удаления форматирования, и ступень 213 выполнена с возможностью осуществления доступа к этим звуковым данным и метаданным (в том числе метаданным SBR) по мере необходимости в ходе обработки SBR. Обработку SBR на ступени 213 можно считать постобработкой над выводом основной подсистемы 202 декодирования. Необязательно APU 210 также содержит подсистему заключительного повышающего микширования (которая может применять инструменты параметрической стереофонии («PS»), определенные в стандарте MPEG-4 AAC, с использованием метаданных PS, извлеченных устройством 215 удаления форматирования), соединенную и выполненную с возможностью выполнения повышающего микширования в отношении вывода ступени 213 для генерирования полностью декодированного и подвергнутого повышающему микшированию звука, который выводится из APU 210. Альтернативно постпроцессор выполнен с возможностью выполнения повышающего микширования в отношении вывода APU 210 (например, с использованием метаданных PS, извлеченных устройством 215 удаления форматирования, и/или управляющих битов, сгенерированных в APU 210).
Различные реализации кодера 100, декодера 200 и APU 210 выполнены с возможностью выполнения разных вариантов осуществления способа изобретения.
Согласно некоторым вариантам осуществления метаданные eSBR включены (например, включено небольшое количество управляющих битов, представляющих собой метаданные eSBR) в кодированный звуковой битовый поток (например, в битовый поток MPEG-4 AAC), так, что традиционные декодеры (которые выполнены без возможности осуществления синтаксического анализа метаданных eSBR или использования какого-либо инструмента eSBR, к которому относятся эти метаданные eSBR) могут игнорировать эти метаданные eSBR, но все же декодировать битовый поток в той степени, которая возможна без использования метаданных eSBR или какого-либо инструмента eSBR, к которому относятся эти метаданные eSBR, как правило, без каких-либо значимых потерь в качестве декодированного звука. Однако декодеры eSBR, выполненные с возможностью синтаксического анализа битового потока, с целью идентификации метаданных eSBR, и использования по меньшей мере одного инструмента eSBR в ответ на эти метаданные eSBR, будут получать выгоду от использования по меньшей мере одного такого инструмента eSBR. Поэтому варианты осуществления настоящего изобретения предоставляют средства для эффективной передачи управляющих данных или метаданных улучшенного копирования спектральной полосы (eSBR) с обеспечением обратной совместимости.
Как правило, метаданные eSBR в битовом потоке указывают (например, указывают по меньшей мере одну их характеристику или параметр) один или более из следующих инструментов eSBR (которые описаны в стандарте MPEG USAC и которые могли быть или могли не быть применены кодером во время генерации битового потока):
• гармоническая транспозиция; и
• дополнительная предварительная обработка (предварительное сглаживание) QMF вставки.
Например, метаданные eSBR, включенные в битовый поток, могут указывать значения параметров (описанных в стандарте MPEG USAC и настоящем изобретении): sbrPatchingMode[ch], sbrOversamplingFlag[ch], sbrPitchInBins[ch], sbrPitchInBins[ch] и bs_sbr_preprocessing.
В данном документе обозначение «X[ch]», где X – некоторый параметр, обозначает, что этот параметр относится к каналу («ch») звукового содержимого кодированного битового потока, подлежащего декодированию. Для простоты выражение [ch] иногда опускается и предполагается, что соответствующий параметр относится к каналу звукового содержимого.
В данном документе обозначение X[ch][env], где Х – некоторый параметр, обозначает, что этот параметр относится к огибающей («env») SBR канала («ch») звукового содержимого кодированного битового потока, подлежащего декодированию. Для простоты выражения [env] и [ch] иногда опускаются и предполагается, что соответствующий параметр относится к огибающей SBR канала звукового содержимого.
Во время декодирования кодированного битового потока работу гармонической транспозиции на ступени обработки eSBR декодирования (для каждого канала, «ch», звукового содержимого, указанного битовым потоком) управляют посредством следующих параметров метаданных eSBR: sbrPatchingMode[ch]: sbrOversamplingFlag[ch]; sbrPitchInBinsFlag[ch]; и sbrPitchInBins[ch].
Значение «sbrPatchingMode[ch]» указывает тип транспозера, используемого в eSBR: sbrPatchingMode[ch] = 1 указывает вставку путем линейной транспозиции, как описано в разделе 4.6.18 стандарта MPEG-4 AAC (при использовании или с высококачественной SBR, или с SBR малой мощности); sbrPatchingMode[ch] = 0 указывает на гармоническую вставку SBR, как описано в разделе 7.5.3 или 7.5.4 стандарта MPEG USAC.
Значение «sbrOversamplingFlag[ch]» указывает на использование в eSBR адаптивной к сигналу передискретизации в частотной области в сочетании с гармонической вставкой SBR на основе DFT, как описано в разделе 7.5.3 стандарта MPEG USAC. Этот флаг управляет размером преобразований DFT, используемых в транспозере: 1 указывает, что адаптивная к сигналу передискретизация в частотной области включена, как описано в разделе 7.5.3.1 стандарта MPEG USAC; 0 указывает, что адаптивная к сигналу передискретизация в частотной области отключена, как описано в разделе 7.5.3.1 стандарта MPEG USAC.
Значение «sbrPitchInBinsFlag[ch]» управляет интерпретацией параметра sbrPitchInBins[ch]: 1 указывает, что значение в sbrPitchInBins[ch] является действительным и больше нуля; 0 указывает, что значение sbrPitchInBins[ch] установлено ноль.
Значение «sbrPitchInBins[ch]» управляет добавлением множителей векторного произведения в гармоническом транспозере SBR. Значение sbrPitchinBins[ch] является целым числом в диапазоне [0,127] и представляет расстояние, измеренное в элементах разрешения по частоте, для DFT с 1536 линиями, действующего на частоту дискретизации основного кодера.
В случае, когда битовый поток MPEG-4 AAC характеризует пару каналов SBR, каналы которой не соединены (а не единственный канал SBR), битовый поток характеризует два экземпляра вышеописанного синтаксиса (для гармонической или негармонической транспозиции), по одному для каждого канала sbr_channel_pair_element().
Гармоническая транспозиция инструмента eSBR, как правило, повышает качество декодированных музыкальных сигналов при относительно низких частотах разделения. Негармоническая транспозиция (т. е. традиционная спектральная вставка), как правило, улучшает речевые сигналы. Таким образом, исходной точкой в принятии решения о том, транспозиция какого типа является предпочтительной для кодирования конкретного звукового содержимого, является выбор способа транспозиции в зависимости от обнаружения речи / музыки, при этом гармоническую транспозицию применяют к музыкальному содержимому, а спектральную вставку – к речевому содержимому.
Работой предварительного сглаживания в ходе обработки eSBR управляют посредством значения однобитного параметра метаданных eSBR, известного как «bs_sbr_preprocessing», в том смысле, что предварительное сглаживание или выполняют, или не выполняют, в зависимости от значения этого единственного бита. При использовании алгоритма QMF вставки SBR, описанного в разделе 4.6.18.6.3 стандарта MPEG-4 AAC, этап предварительного сглаживания может выполняться (если указано параметром «bs_sbr_preprocessing») в попытке избежать нарушений непрерывности формы огибающей спектра высокочастотного сигнала, вводимого в корректор огибающей (корректор огибающей выполняет другую ступень обработки eSBR). Предварительное сглаживание, как правило, улучшает работу следующей ступени коррекции огибающей, что приводит к большей стабильности воспринимаемого сигнала верхнего диапазона.
Ожидается, что общие требования к битовой скорости для включения в битовый поток MPEG-4 AAC метаданных eSBR, указывающих вышеупомянутые инструменты eSBR (гармоническую транспозицию и предварительное сглаживание), имеют порядок нескольких сотен битов в секунду, поскольку согласно некоторым вариантам осуществления настоящего изобретения, передаются только дифференциальные управляющие данные, необходимые для выполнения обработки eSBR. Традиционные декодеры могут игнорировать эту информацию, поскольку она включена с обеспечением обратной совместимости (как будет разъяснено позднее). Поэтому отрицательное влияние на битовую скорость, связанное с включением метаданных eSBR, является пренебрежимо малым, по множеству причин, включая следующие:
• потери битовой скорости передачи данных (из-за включения метаданных eSBR) составляют весьма небольшую долю общей битовой скорости, поскольку передаются только дифференциальные управляющие данные, необходимые для выполнения обработки eSBR (а не выполняется одновременная передача управляющих данных SBR); и
• настройка управляющей информации, относящейся к SBR, как правило, не зависит от деталей транспозиции. Примеры того, как управляющие данные в действительности зависят от работы транспозера, обсуждены в данной заявке ниже.
Итак, варианты осуществления настоящего изобретения предоставляют средства для эффективной передачи управляющих данных или метаданных улучшенного копирования спектральной полосы (eSBR) с обеспечением обратной совместимости. Эта эффективная передача управляющих данных eSBR снижает потребности в памяти в декодерах, кодерах и транскодерах, в которых применяются аспекты настоящего изобретения, при этом не оказывая ощутимого негативного влияния на битовую скорость. Кроме того, сложность и требования обработки, связанные с выполнением eSBR согласно вариантам осуществления настоящего изобретения, также уменьшаются, поскольку данные SBR необходимо обрабатывать только один раз, а не передавать одновременно, как было бы в случае, если бы eSBR обрабатывалось как полностью отдельный тип объекта в MPEG-4 AAC вместо интеграции в кодек MPEG-4 AAC с обеспечением обратной совместимости.
Далее, со ссылкой на фиг. 7, описаны элементы блока («raw_data_block») битового потока MPEG-4 AAC, в который метаданные eSBR включены согласно некоторым вариантам осуществления настоящего изобретения. На фиг. 7 представлена схема блока («raw_data_block») битового потока MPEG-4 AAC, на которой показаны некоторые его сегменты.
Блок битового потока MPEG-4 AAC может содержать по меньшей мере один элемент «single_channel_element()» (например, элемент одиночного канала, показанный на фиг. 7) и/или по меньшей мере один элемент «channel_pair_element()» (конкретно не показанный на фиг. 7, хотя он может присутствовать), содержащий звуковые данные для звуковой программы. Блок также может содержать ряд элементов «fill_elements» (например, заполняющий элемент 1 и/или заполняющий элемент 2 на фиг. 7), содержащих данные (например, метаданные), относящиеся к программе. Каждый «single_channel_element()» содержит идентификатор (например, «ID1» на фиг. 7), указывающий начало элемента одиночного канала, и может содержать звуковые данные, характеризующие отдельный канал многоканальной звуковой программы. Каждый «channel_pair_element» содержит идентификатор (не показан на фиг. 7), указывающий начало элемента пары каналов, и может содержать звуковые данные, характеризующие два канала программы.
Элемент fill_element (называемый в данном документе заполняющим элементом) битового потока MPEG-4 AAC содержит идентификатор («ID2» на фиг. 7), указывающий начало заполняющего элемента, и заполняющие данные после этого идентификатора. Идентификатор ID2 может состоять из трехбитного целого числа без знака, у которого сначала передается старший значащий бит («uimsbf»), имеющего значение 0x6. Заполняющие данные могут содержать элемент extension_payload() (иногда называемый в данном документе полезными данными расширения), синтаксис которого показан в таблице 4.57 стандарта MPEG-4 AAC. Существует несколько типов полезных данных расширения, которые идентифицируются с помощью параметра «extension_type», который представляет собой четырехбитное целое число без знака, у которого сначала передают старший значащий бит («uimsbf»).
Заполняющие данные (например, их полезные данные расширения) могут содержать заголовок, или идентификатор (например, «заголовок 1» на фиг. 7), указывающий сегмент заполняющих данных, указывающий объект SBR (т. е. заголовок инициализирует тип «объект SBR», в стандарте MPEG-4 AAC называемый sbr_extension_data()). Например, полезные данные расширения копирования спектральной полосы (SBR) идентифицируются значением «1101» или «1110» для поля extension_type в заголовке, при этом идентификатор «1101» идентифицирует полезные данные расширения с данными SBR, а «1110» идентифицирует полезные данные расширения с данными SBR и циклическим контролем избыточности (CRC) для проверки правильности данных SBR.
Если заголовок (например, поле extension_type) инициализирует тип объекта SBR, метаданные SBR (иногда называемые в данном документе «данные копирования спектральной полосы» и называемые sbr_data() в стандарте MPEG-4 AAC) следуют за заголовком, а за метаданными SBR может следовать по меньшей мере один элемент расширения копирования спектральной полосы (например, «элемент расширения SBR» заполняющего элемента 1 на фиг. 7). Такой элемент расширения копирования спектральной полосы (сегмент битового потока) в стандарте MPEG-4 AAC называется контейнером «sbr_extension()». Элемент расширения копирования спектральной полосы необязательно содержит заголовок (например, «заголовок расширения SBR» заполняющего элемента 1 на фиг. 7).
В стандарте MPEG-4 AAC предусмотрено, что элемент расширения копирования спектральной полосы может содержать PS (параметрические стереофонические) данные для звуковых данных программы. В стандарте MPEG-4 AAC предусмотрено, что если заголовок заполняющего элемента (например, его полезных данных расширения) инициализирует тип объекта SBR (как делает «заголовок 1» на фиг. 7) и элемент расширения копирования спектральной полосы заполняющего элемента содержит PS данные, то этот заполняющий элемент (например, его полезные данные расширения) содержит данные копирования спектральной полосы и параметр «bs_extension_id», значение которого (т.е. «bs_extension_id» = 2) указывает, что PS данные включены в элемент расширения копирования спектральной полосы заполняющего элемента.
Согласно некоторым вариантам осуществления настоящего изобретения метаданные eSBR (например, флаг, который указывает, необходимо ли выполнять обработку улучшенного копирования спектральной полосы (eSBR) на звуковом содержимом блока) включены в элемент расширения копирования спектральной полосы заполняющего элемента. Например, такой флаг указан в заполняющем элементе 1 на фиг. 7, при этом флаг появляется после заголовка («заголовка расширения SBR» заполняющего элемента 1) «элемента расширения SBR» заполняющего элемента 1. Необязательно такой флаг и дополнительные метаданные eSBR включены в элемент расширения копирования спектральной полосы после заголовка элемента расширения копирования спектральной полосы (например, в элемент расширения SBR заполняющего элемента 1 на фиг. 7 после заголовка расширения SBR). Согласно некоторым вариантам осуществления настоящего изобретения заполняющий элемент, содержащий метаданные eSBR, также содержит параметр «bs_extension_id», значение которого (например, bs_extension_id = 3) указывает, что метаданные eSBR включены в заполняющий элемент и что на звуковом содержимом соответствующего блока необходимо выполнить обработку eSBR.
Согласно некоторым вариантам осуществления настоящего изобретения метаданные eSBR включены в заполняющий элемент (например, заполняющий элемент 2 на фиг. 7) битового потока MPEG-4 AAC, отличающийся от элемента расширения копирования спектральной полосы (элемента расширения SBR) заполняющего элемента. Это объясняется тем, что заполняющие элементы, содержащие extension_payload() с данными SBR или данными SBR с CRC, не содержат никаких других полезных данных расширения любого другого типа расширения. Поэтому в вариантах осуществления, в которых метаданные eSBR хранят свои собственные полезные данные расширения, для хранения метаданных eSBR используется отдельный заполняющий элемент. Такой заполняющий элемент содержит идентификатор (например, «ID2» на фиг. 7), указывающий начало заполняющего элемента, и заполняющие данные после идентификатора. Заполняющие данные могут содержать элемент extension_payload() (иногда называемый в данном документе полезными данными расширения), синтаксис которого показан в таблице 4.57 стандарта MPEG-4 AAC. Заполняющие данные (например, их полезные данные расширения) содержат заголовок (например, «заголовок 2» заполняющего элемента 2 на фиг. 7), указывающий объект eSBR (т.е. заголовок инициализирует тип объекта улучшенного копирования спектральной полосы (eSBR)), и заполняющие данные (например, его полезные данные расширения) содержат метаданные eSBR после заголовка. Например, заполняющий элемент 2 на фиг. 7 содержит такой заголовок («заголовок 2»), а также содержит, после заголовка, метаданные eSBR (т.е. «флаг» в заполняющем элементе 2, который указывает, необходимо ли выполнять обработку улучшенного копирования спектральной полосы (eSBR) на звуковом содержимом блока). Необязательно дополнительные метаданные eSBR также включены в заполняющие данные заполняющего элемента 2 на фиг. 7, после «заголовка 2». В вариантах осуществления, описываемых в данном абзаце, заголовок (например, «заголовок 2» на фиг. 7) имеет идентификационное значение, не являющееся одним из обычных значений, заданных в таблице 4.57 стандарта MPEG-4 AAC, и вместо этого указывает полезные данные расширения eSBR (так что поле extension_type заголовка указывает, что заполняющие данные содержат метаданные eSBR).
В первом классе вариантов осуществления настоящее изобретение представляет собой блок обработки звука (например, декодер), содержащий:
запоминающее устройство (например, буфер 201, представленный на фиг. 3 или 4), выполненное с возможностью сохранения по меньшей мере одного блока кодированного звукового битового потока (например, по меньшей мере одного блока битового потока MPEG-4 AAC);
устройство удаления форматирования полезных данных битового потока (например, элемент 205, представленный на фиг. 3, или элемент 215, представленный на фиг. 4), соединенное с запоминающим устройством и выполненное с возможностью демультиплексирования по меньшей мере одной части указанного блока битового потока; и
подсистему декодирования (например, элементы 202 и 203, представленные на фиг. 3, или элементы 202 и 213, представленные на фиг. 4), соединенную и выполненную с возможностью декодирования по меньшей мере одной части звукового содержимого указанного блока битового потока, где этот блок содержит:
заполняющий элемент, содержащий идентификатор, указывающий начало заполняющего элемента (например, идентификатор «id_syn_ele», имеющий значение 0x6, по таблице 4.85 стандарта MPEG-4 AAC), и заполняющие данные после идентификатора, где заполняющие данные содержат:
по меньшей мере один флаг, идентифицирующий, необходимо ли выполнять обработку улучшенного копирования спектральной полосы (eSBR) на звуковом содержимом блока (например, с использованием данных копирования спектральной полосы и метаданных eSBR, включенных в блок).
Флаг представляет собой метаданные eSBR, и примером флага является флаг sbrPatchingMode. Другим примером флага является флаг harmonicSBR. Оба этих флага указывают, необходимо ли выполнять на звуковых данных блока базовую форму копирования спектральной полосы или улучшенную форму спектрального копирования. Базовая форма спектрального копирования представляет собой спектральную вставку, а улучшенная форма копирования спектральной полосы представляет собой гармоническую транспозицию.
В некоторых вариантах осуществления заполняющие данные также содержат дополнительные метаданные eSBR (т.е. метаданные eSBR, отличные от флага).
Запоминающее устройство может представлять собой буферное запоминающее устройство (например, реализацию буфера 201, представленного на фиг. 4), которое сохраняет (например, энергонезависимо) по меньшей мере один блок кодированного звукового битового потока.
Оценивается, что сложность выполнения обработки eSBR (с использованием гармонической транспозиции и предварительного сглаживания eSBR) декодером eSBR в ходе декодирования битового потока MPEG-4 AAC, который содержит метаданные eSBR (указывающие эти инструменты eSBR), будет следующей (для обычного декодирования с указанными параметрами):
• гармоническая транспозиция (16 кбит/с, 14 400 / 28 800 Гц)
○ на основе DFT: 3,68 WMOPS (взвешенных миллионов операций в секунду);
○ на основе QMF: 0,98 WMOPS;
• предварительная обработка (предварительное сглаживание) QMF вставки: 0,1 WMOPS.
Известно, что для переходных сигналов транспозиция на основе DFT, как правило, выполняется лучше, чем транспозиция на основе QMF.
Согласно некоторым вариантам осуществления настоящего изобретения заполняющий элемент (кодированного звукового битового потока), содержащий метаданные eSBR, также содержит параметр (например, параметр «bs_extension_id»), значение которого (например, bs_extension_id = 3) сигнализирует о том, что метаданные eSBR включены в данный заполняющий элемент и что обработку eSBR необходимо выполнять на звуковом содержимом соответствующего блока, и/или параметр (например, тот же параметр «bs_extension_id»), значение которого (например, bs_extension_id = 2) сигнализирует о том, что контейнер sbr_extension() заполняющего элемента содержит PS данные. Например, как указано ниже в таблице 1, такой параметр, имеющий значение bs_extension_id = 2, может сигнализировать о том, что контейнер sbr_extension() заполняющего элемента содержит PS данные, а такой параметр, имеющий значение bs_extension_id = 3, может сигнализировать о том, что контейнер sbr_extension() заполняющего элемента содержит метаданные eSBR:
Таблица 1
Согласно некоторым вариантам осуществления настоящего изобретения синтаксис каждого элемента расширения копирования спектральной полосы, содержащего метаданные eSBR и/или PS данные, как указано ниже в таблице 2 (в которой «sbr_extension()» обозначает контейнер, представляющий собой элемент расширения копирования спектральной полосы, «bs_extension_id» является таким, как описано в таблице 1 выше, «ps_data» обозначает PS данные и «esbr_data» обозначает метаданные eSBR).
Таблица 2
В примерном варианте осуществления esbr_data(), на которые ссылается таблица 2 выше, указывают значения следующих параметров метаданных:
1. однобитный параметр метаданных «bs_sbr_preprocessing»; и
2. для каждого канала («ch») звукового содержимого кодированного битового потока, подлежащего декодированию, каждый из вышеописанных параметров: «sbrPatchingMode[ch]»; «sbrOversamplingFlag[ch]»; «sbrPitchInBinsFlag[ch]»; и «sbrPitchInBins[ch]».
Например, для указания этих параметров метаданных в некоторых вариантах осуществления esbr_data() могут иметь синтаксис, указанный в таблице 3.
Таблица 3
Вышеописанный синтаксис обеспечивает возможность эффективной реализации улучшенной формы копирования спектральной полосы, такой как гармоническая транспозиция, в качестве расширения для традиционного декодера. В частности, данные eSBR в таблице 3 содержат только те параметры, которые необходимы для выполнения улучшенной формы копирования спектральной полосы, которые или уже не поддерживаются в битовом потоке, или не являются прямо выводимыми из параметров, уже поддерживаемых в битовом потоке. Все остальные параметры и данные обработки, необходимые для выполнения улучшенной формы копирования спектральной полосы, извлекают из ранее существующих параметров в уже определенных местах битового потока.
Например, декодер, отвечающий требованиям MPEG-4 HE-AAC или HE-AAC v2, можно расширить так, чтобы он включал улучшенную форму копирования спектральной полосы, такую как гармоническая транспозиция. Эта улучшенная форма копирования спектральной полосы представляет собой дополнение к базовой форме копирования спектральной полосы, уже поддерживаемой декодером. В контексте декодера, отвечающего требованиям MPEG-4 HE-AAC или HE-AAC v2, эта базовая форма копирования спектральной полосы представляет собой инструмент спектральной QMF вставки SBR, как определено в разделе 4.6.18 стандарта MPEG-4 AAC.
OrigMapped
При выполнении улучшенной формы копирования спектральной полосы расширенный декодер НЕ-ААС может снова использовать многие из параметров битового потока, уже включенных в полезные данные расширения SBR битового потока. Конкретные параметры, которые могут быть снова использованы, включают, например, различные параметры, определяющие таблицу диапазонов главных частот. Эти параметры включают bs_start_freq (параметр, определяющий начало параметра таблицы главных частот), «bs_stop_freq» (параметр, определяющий окончание таблицы главных частот), «bs_freq_scale» (параметр, определяющий количество диапазонов частот на октаву) и «bs_alter_scale» (параметр, изменяющий масштаб диапазонов частот). Параметры, которые могут быть снова использованы, также включают параметры, определяющие таблицу полосы шумов («bs_noise_bands»), и параметры таблицы полосы ограничителя («bs_limiter_bands»). Соответственно, в различных вариантах осуществления по меньшей мере некоторые из эквивалентных параметров, заданных в стандарте USAC, не включаются в битовый поток, благодаря чему уменьшается переполнение битового потока управляющей информацией. Как правило, если параметр, заданный в стандарте AAC, имеет эквивалентный параметр, заданный в стандарте USAC, то эквивалентный параметр, заданный в стандарте USAC, имеет такое же название, как параметр, заданный в стандарте AAC, например масштабный коэффициент E огибающей. Однако эквивалентный параметр, заданный в стандарте USAC, как правило, имеет другое значение, которое «настроено» для обработки улучшенного SBR, определенной в стандарте USAC, а не для обработки SBR, определенной в стандарте AAC.
Для повышения субъективного качества звукового содержимого с гармонической частотной структурой и сильными тональными характеристиками, в частности при низких битовых скоростях, рекомендуется активация улучшенного SBR. Значения соответствующего элемента битового потока (т. . esbr_data()), управляющего этими инструментами, могут быть определены в кодере путем применения механизма классификации, зависимого от сигнала. Обычно использование способа гармонической вставки (sbrPatchingMode == 1) является предпочтительным для кодирования музыкальных сигналов с очень низкими битовыми скоростями, когда основной кодек может быть значительно ограничен по полосе пропускания звука. Это особенно верно, если эти сигналы имеют выраженную гармоническую структуру. Напротив, использование обычного способа вставки SBR является предпочтительным для речевых и смешанных сигналов, поскольку он обеспечивает лучшее сохранение временной структуры речи.
Для улучшения работы гармонического транспозера можно активировать этап предварительной обработки (bs_sbr_preprocessing == 1), который пытается избежать внесения нарушений однородности спектра сигнала, идущего в последующий корректор огибающей. Работа этого инструмента является полезной для типов сигнала, в которых грубая огибающая спектра сигнала нижнего диапазона, используемого для реконструкции высоких частот, проявляет большие вариации уровня.
Для улучшения переходной характеристики гармонической вставки SBR можно применить адаптивную к сигналу передискретизацию в частотной области (sbrOversamplingFlag == 1). Поскольку адаптивная к сигналу передискретизация в частотной области увеличивает вычислительную сложность транспозера, но приносит пользу только для кадров, содержащих переходные сигналы, использованием этого инструмента управляют посредством элемента битового потока, который передают один раз на кадр и на независимый канал SBR.
Декодеру, действующему в предложенном режиме улучшенного SBR, как правило, необходимо иметь возможность переключения между традиционной и улучшенной вставкой SBR. Поэтому может вноситься задержка, которая может быть настолько продолжительной, как длительность одного базового кадра звука, в зависимости от настроек декодера. Как правило, задержка будет одинакова и для традиционной, и для улучшенной вставки SBR.
В дополнение к многочисленным параметрам расширенный декодер HE-AAC при выполнении улучшенной формы копирования спектральной полосы согласно вариантам осуществления настоящего изобретения может снова использовать и другие элементы данных. Например, данные огибающей и данные шумового порога также могут быть извлечены из данных bs_data_env (масштабных коэффициентов огибающей) и bs_noise_env (масштабных коэффициентов шумового порога) и использованы в ходе улучшенной формы копирования спектральной полосы.
По существу эти варианты осуществления используют конфигурационные параметры и данные огибающей, уже поддерживаемые традиционным декодером HE-AAC или HE-AAC v2, в полезных данных расширения SBR для обеспечения улучшенной формы копирования спектральной полосы, требующей как можно меньше дополнительных передаваемых данных. Метаданные были первоначально настроены для базовой формы HFR (например, для операции спектрального переноса SBR), но согласно вариантам осуществления используются для улучшенной формы HFR (например, гармонической транспозиции eSBR). Как обсуждено ранее, метаданные обычно представляют рабочие параметры (например, масштабные коэффициенты огибающей, масштабные коэффициенты шумового порога, параметры временной / частотной сетки, информацию о добавлении синусоид, переменную частоту / диапазон разделения, режим обратной фильтрации, разрешение огибающей, режим выравнивания, режим частотной интерполяции), настроенные и предназначенные для использования с базовой формой HFR (например, с линейным спектральным переносом). Однако эти метаданные в сочетании с дополнительными параметрами метаданных, специфичных для улучшенной формы HFR (например, гармонической транспозиции), могут быть использованы для рациональной и эффективной обработки звуковых данных с использованием улучшенной формы HFR.
Соответственно, расширенные декодеры, которые поддерживают улучшенную форму копирования спектральной полосы, можно создавать чрезвычайно эффективным образом, полагаясь на уже определенные элементы битового потока (например, элементы в полезных данных расширения SBR) и добавляя только те параметры, которые необходимы для поддержки улучшенной формы копирования спектральной полосы (в полезных данных расширения заполняющего элемента). Этот признак уплотнения данных в сочетании с размещением вновь добавляемых параметров в зарезервированном поле данных, таком как контейнер расширения, существенно снижает барьеры для создания декодера, поддерживающего улучшенную форму копирования спектральной полосы, благодаря обеспечению обратной совместимости битового потока с традиционным декодером, не поддерживающим улучшенную форму копирования спектральной полосы.
В таблице 3 число в правой колонке указывает количество битов соответствующего параметра из левой колонки.
В некоторых вариантах осуществления тип объекта SBR, определенный в MPEG-4 AAC, обновляют так, чтобы он содержал инструмент SBR и аспекты инструмента улучшенного SBR (eSBR), как указано сигналами в элементе расширения SBR (bs_extension_id == EXTENSION_ID_ESBR). Если декодер обнаруживает и поддерживает этот элемент расширения SBR, то декодер использует указанные сигналами аспекты инструмента улучшенного SBR. Тип объекта SBR, обновленный таким образом, называется «улучшениями SBR».
В некоторых вариантах осуществления настоящее изобретение представляет собой способ, включающий этап кодирования звуковых данных с генерированием кодированного битового потока (например, битового потока MPEG-4 AAC), содержащего метаданные eSBR в по меньшей мере одном сегменте по меньшей мере одного блока кодированного битового потока и звуковые данные в по меньшей мере одном другом сегменте этого блока. В обычных вариантах осуществления способ включает этап мультиплексирования звуковых данных с метаданными eSBR в каждом блоке кодированного битового потока. При обычном декодировании кодированного битового потока в декодере eSBR декодер извлекает метаданные eSBR из битового потока (в том числе посредством синтаксического анализа и демультиплексирования метаданных eSBR и звуковых данных) и использует метаданные eSBR для обработки звуковых данных, чтобы генерировать поток декодированных звуковых данных.
Другой аспект настоящего изобретения представляет собой декодер eSBR, выполненный с возможностью выполнения обработки eSBR (например, с использованием по меньшей мере одного из инструментов eSBR, известных как гармоническая транспозиция или предварительное сглаживание) в ходе декодирования кодированного звукового битового потока (например, битового потока MPEG-4 AAC), который не включает метаданные eSBR. Пример такого декодера будет описан со ссылкой на фиг. 5.
Декодер (400) eSBR, представленный на фиг. 5, содержит буферное запоминающее устройство 201 (идентичное запоминающему устройству 201, представленному на фиг. 3 и 4), устройство 215 удаления форматирования полезных данных битового потока (идентичное устройству 215 удаления форматирования, представленному на фиг. 4), подсистему 202 декодирования звука (иногда называемую «основной» ступенью декодирования или «основной» подсистемой декодирования, которая идентична основной подсистеме 202 декодирования, представленной на фиг. 3), подсистему 401 генерации управляющих данных eSBR и ступень 203 обработки eSBR (идентичную ступени 203, представленной на фиг. 3), соединенные так, как показано. Как правило, декодер 400 также содержит и другие обрабатывающие элементы (не показаны).
В работе декодера 400 последовательность блоков кодированного звукового битового потока (битового потока MPEG-4 AAC), принятая декодером 400, передается из буфера 201 в устройство 215 удаления форматирования.
Устройство 215 удаления форматирования соединено и выполнено с возможностью демультиплексирования каждого блока битового потока для извлечения из него метаданных SBR (в том числе квантованных данных огибающей) и, как правило, других метаданных. Устройство 215 удаления форматирования выполнено с возможностью передачи по меньшей мере метаданных SBR на ступень 203 обработки eSBR. Устройство 215 удаления форматирования также соединено и выполнено с возможностью извлечения звуковых данных из каждого блока битового потока и передачи извлеченных звуковых данных в подсистему 202 декодирования (ступень декодирования).
Подсистема 202 декодирования звука декодера 400 выполнена с возможностью декодирования звуковых данных, извлеченных устройством 215 удаления форматирования (такое декодирование можно назвать «основной» операцией декодирования), чтобы генерировать декодированные звуковые данные и передавать декодированные звуковые данные на ступень 203 обработки eSBR. Декодирование выполняется в частотной области. Как правило, последняя ступень обработки в подсистеме 202 применяет преобразование из частотной области во временную область к декодированным звуковым данным в частотной области, так что вывод подсистемы представляет собой декодированные звуковые данные во временной области. Ступень 203 выполнена с возможностью применения инструментов SBR (и инструментов eSBR), указанных метаданными SBR (извлеченными устройством 215 удаления форматирования) и метаданными eSBR, сгенерированными в подсистеме 401, к декодированным звуковым данным (т. е. выполнения обработки SBR и eSBR над выводом подсистемы 202 декодирования с использованием метаданных SBR и eSBR), чтобы генерировать полностью декодированные звуковые данные, которые выводится из декодера 400. Как правило, декодер 400 содержит запоминающее устройство (доступное для подсистемы 202 и ступени 203), которое сохраняет звуковые данные с удаленным форматированием и метаданные, выведенные из устройства 215 удаления форматирования (и необязательно также из подсистемы 401), и ступень 203 выполнена с возможностью осуществления доступа к звуковым данным и метаданным по мере необходимости в ходе обработки SBR и eSBR. Обработку SBR на ступени 203 можно считать постобработкой над выводом основной подсистемы 202 декодирования. Необязательно декодер 400 также содержит подсистему заключительного повышающего микширования (которая может применять инструменты параметрической стереофонии («PS»), определенные в стандарте MPEG-4 AAC, с использованием метаданных PS, извлеченных устройством 215 удаления форматирования), соединенную и выполненную с возможностью выполнения повышающего микширования в отношении вывода ступени 203 для генерирования полностью декодированного и подвергнутого повышающему микшированию звука, который выводится из APU 210.
k
k
Параметрическая стереофония является инструментом кодирования, который представляет стереофонический сигнал с использованием линейного понижающего микширования левого и правого каналов стереофонического сигнала и набора пространственных параметров, описывающих стереоизображение. В параметрической стереофонии, как правило, используют три типа пространственных параметров: (1) межканальные разности интенсивности (IID), описывающие разности интенсивностей между каналами; (2) межканальные разности фазы (IPD), описывающие разности фазы между каналами; и (3) межканальная когерентность (ICC), описывающая когерентность (или подобие) между каналами. Когерентность можно измерить как максимум взаимной корреляции в зависимости от времени или фазы. Эти три параметра обычно обеспечивают возможность высококачественной реконструкции стереоизображения. Однако параметры IPD задают лишь относительные разности фазы между каналами стереофонического входного сигнала и не указывают распределение этих разностей фазы по левому и правому каналам. Поэтому дополнительно можно использовать параметры четвертого типа, описывающие общий сдвиг фазы или общую разность фаз (OPD). В процессе реконструкции стереофонического сигнала последовательные обрабатываемые методом окна сегменты как принятого сигнала понижающего микширования, s[n], так и декоррелированной версии принятого понижающего микширования, d[n], обрабатываются вместе с пространственными параметрами для генерирования левого (l(n)) и правого (r(n)) реконструированных сигналов согласно следующей формуле:
11
12
21
22
k
k
где H, H, H и H определяются стереофоническими параметрами. Сигналы l(n) и r(n) в заключение преобразуются обратно во временную область посредством частотно-временного преобразования.
Подсистема 401 генерирования управляющих данных, представленная на фиг. 5, соединена и выполнена с возможностью обнаружения по меньшей мере одного свойства кодированного звукового битового потока, подлежащего декодированию, и генерации управляющих данных eSBR (которые могут представлять собой или включать метаданные eSBR любого из типов, включенных в кодированные звуковые битовые потоки согласно другим вариантам осуществления настоящего изобретения) в ответ на по меньшей мере один результат этапа обнаружения. Управляющие данные eSBR передаются на ступень 203, чтобы запускать применение отдельных инструментов eSBR или комбинаций инструментов eSBR при обнаружении конкретного свойства (или комбинации свойств) битового потока и/или управлять применением таких инструментов eSBR. Например, для управления выполнением обработки eSBR с использованием гармонической транспозиции некоторые варианты осуществления подсистемы 401 генерации управляющих данных будут содержать: детектор музыки (например, упрощенную версию традиционного детектора музыки) для установки параметра sbrPatchingMode[ch] (и передачи установленного параметра на ступень 203) в ответ на обнаружение того, что битовый поток характеризует или не характеризует музыку; детектор переходных сигналов для установки параметра sbrOversamplingFlag[ch] (и передачи установленного параметра на ступень 203) в ответ на обнаружение наличия или отсутствия переходных сигналов в звуковом содержимом, указанном битовым потоком; и/или детектор основного тона для установки параметров sbrPitchInBinsFlag[ch] и sbrPitchInBins[ch] (и передачи установленных параметров на ступень 203) в ответ на обнаружение основного тона звукового содержимого, указанного битовым потоком. Другими аспектами настоящего изобретения являются способы декодирования звукового битового потока, выполняемые с помощью любого варианта осуществления декодера согласно настоящему изобретению, описанного в этом абзаце и предыдущем абзаце.
Аспекты настоящего изобретения включают способ кодирования или декодирования, относящийся к типу, с возможностью выполнения которого выполнен (например, запрограммирован) любой вариант осуществления APU, системы или устройства настоящего изобретения. Другие аспекты настоящего изобретения включают систему или устройство, выполненные с возможностью (например, запрограммированное для) выполнения любого варианта осуществления способа изобретения, и машиночитаемый носитель (например, диск), на котором хранится (например, энергонезависимо) код, предназначенный для реализации любого варианта осуществления способа изобретения или его этапов. Например, система изобретения может являться или включать программируемый процессор общего назначения, процессор цифровой обработки сигналов или микропроцессор, запрограммированный с использованием программного обеспечения или программно-аппаратного обеспечения и/или иным образом выполненный с возможностью выполнения любой из множества операций над данными, включая вариант осуществления способа изобретения или его этапы. Такой процессор общего назначения может являться или включать в себя компьютерную систему, содержащую устройство ввода, запоминающее устройство и схему обработки, запрограммированную (и/или иным образом выполненную с возможностью) для выполнения варианта осуществления способа изобретения (или его этапов) в ответ на передаваемые в нее данные.
Варианты осуществления настоящего изобретения могут быть реализованы в аппаратном обеспечении, программно-аппаратном обеспечении, программном обеспечении или их комбинации (например, как программируемая логическая матрица). Если не указано иное, алгоритмы или процессы, включенные в качестве части настоящего изобретения, по своей природе не относятся ни к какому конкретному компьютеру или другому устройству. В частности, различные машины общего назначения могут быть использованы вместе с программами, написанными в соответствии с идеями, изложенными в данном документе, или может быть более удобно сконструировать более специализированное устройство (например, интегральные микросхемы) для выполнения необходимых этапов способа. Таким образом, настоящее изобретение может быть реализовано в одной или более компьютерных программах, исполняемых на одной или более программируемых компьютерных системах (например, на реализации любого из элементов, представленных на фиг. 1, или кодера 100, представленного на фиг. 2 (или его элемента), или декодера 200, представленного на фиг. 3, (или его элемента), или декодера 210, представленного на фиг. 4, (или его элемента), или декодера 400, представленного на фиг. 5, (или его элемента)), каждая из которых содержит по меньшей мере один процессор, по меньшей мере одну систему хранения данных (включая энергозависимое и энергонезависимое запоминающие устройства и/или элементы хранения), по меньшей мере одно устройство или порт ввода и по меньшей мере одно устройство или порт вывода. Программный код применяется к входным данным для выполнения функций, описанных в данном документе, и генерирования выходной информации. Выходная информация известным способом применяется к одному или более устройствам вывода.
Каждая такая программа может быть реализована на любом желаемом компьютерном языке (включая машинные, ассемблерные или процедурные высокого уровня, логические или объектно-ориентированные языки программирования) для осуществления связи с компьютерной системой. В любом случае язык может быть компилируемым или интерпретируемым языком.
Например, при реализации посредством последовательностей команд компьютерного программного обеспечения различные функции и этапы вариантов осуществления настоящего изобретения могут быть реализованы посредством многопоточных последовательностей команд программного обеспечения, запущенных на подходящем аппаратном обеспечении цифровой обработки сигналов, и в этом случае различные устройства, этапы и функции вариантов осуществления могут соответствовать частям команд программного обеспечения.
Каждую такую компьютерную программу предпочтительно сохраняют или загружают на запоминающие носители или устройство (например, твердотельное запоминающее устройство или носители, или магнитные или оптические носители), считываемые программируемым компьютером общего или специального назначения, для настройки конфигурации и работы компьютера, когда запоминающие носители или устройство считываются компьютерной системой для выполнения процедур, описанных в данном документе. Система изобретения также может быть реализована в виде машиночитаемого запоминающего носителя, оснащенного компьютерной программой (т.е. хранящего ее), где оснащенный таким образом запоминающий носитель вызывает работу компьютерной системы особым и предопределенным образом для выполнения функций, описанных в данном документе.
k
k
Был описан ряд вариантов осуществления настоящего изобретения. Тем не менее, следует понимать, что различные модификации могут быть осуществлены без отступления от объема формулы изобретения. В свете вышеизложенных идей возможны многочисленные модификации и изменения настоящего изобретения. Например, для облегчения эффективных реализаций сдвиги фазы можно использовать в комбинации с анализом с помощью блоков анализирующих и синтезирующих комплексных QMF фильтров. Блок анализирующих фильтров отвечает за фильтрование сигнала нижнего диапазона во временной области, генерируемого основным декодером, во множество поддиапазонов (например, поддиапазонов QMF). Блок синтезирующих фильтров отвечает за объединение восстановленного верхнего диапазона, полученного с помощью выбранной методики HFR (как указано принятым параметром sbrPatchingMode), с декодированным нижним диапазоном для получения широкополосного выходного звукового сигнала. Данная реализация блока фильтров, действующая в определенном режиме частоты дискретизации, например в режиме обычного двухскоростного действия или в режиме SBR с пониженной дискретизацией, не должна, однако, иметь сдвиги фазы, зависящие от битового потока. Блоки QMF, используемые в SBR, представляют собой комплексно-экспоненциальное расширение теории косинусно-модулированных блоков фильтров. Можно показать, что при расширении косинусно-модулированного блока фильтров с помощью комплексно-экспоненциальной модуляции ограничения, связанные с исключением паразитных сигналов, становятся неактуальными. Так, для блоков QMF SBR как анализирующие фильтры, h(n), так и синтезирующие фильтры, f(n), можно определить как:
0
где p(n) – это вещественнозначный симметричный или асимметричный фильтр-прототип (как правило, фильтр-прототип нижних частот), M обозначает количество каналов, а N – порядок фильтра-прототипа. Количество каналов, используемых в блоке анализирующих фильтров, может отличаться от количества каналов, используемых в блоке синтезирующих фильтров. Например, блок анализирующих фильтров может иметь 32 канала, а блок синтезирующих фильтров может иметь 64 канала. При работе блока синтезирующих фильтров в режиме пониженной дискретизации блок синтезирующих фильтров может иметь только 32 канала. Поскольку дискретные значения поддиапазонов из блока фильтров являются комплекснозначными, к блоку анализирующих фильтров может быть приложен дополнительный, возможно зависящий от каналов, этап сдвига фазы. Эти дополнительные сдвиги фазы необходимо компенсировать перед блоком синтезирующих фильтров. Хотя составляющие сдвига фаз в принципе могут представлять собой произвольные значения, не ухудшая работу цепочки QMF анализа/синтеза, их также можно ограничить определенными значениями для проверки соответствия. На сигнал SBR будет влиять выбор фазовых коэффициентов, а сигнал нижних частот, поступающий из основного декодера, влиять не будет. Качество звука выходного сигнала не испытывает негативного воздействия.
0
Коэффициенты фильтра-прототипа, p(n), можно определить с длиной L, 640, как показано ниже в таблице 4.
Таблица 4
0
Фильтр-прототип, p(n), также можно получить из таблицы 4 с помощью одной или более математических операций, таких как округление, субдискретизация, интерполяция и прореживание.
Несмотря на то, что настройка относящейся к SBR управляющей информации, как правило, не зависит от подробностей транспозиции (как обсуждено ранее), в некоторых вариантах осуществления некоторые элементы управляющих данных могут передаваться одновременно в контейнере расширения eSBR (bs_extension_id ==EXTENSION_ID_ESBR) с целью повышения качества восстановленного сигнала. Некоторые из одновременно передаваемых элементов могут включать данные шумового порога (например, масштабные коэффициенты шумового порога и параметр, указывающий направление, в направлении или частоты, или времени, разностного кодирования для каждого шумового порога), данные обратной фильтрации (например, параметр, указывающий режим обратной фильтрации, выбранный из отсутствия обратной фильтрации, низкого уровня обратной фильтрации, промежуточного уровня обратной фильтрации и сильного уровня обратной фильтрации) и данные пропущенных гармоник (например, параметр, указывающий, следует ли добавить синусоиду в конкретную полосу частот восстанавливаемого верхнего диапазона). Все эти элементы полагаются на выполненную в кодере синтетическую эмуляцию транспозера декодера, и поэтому при правильной настройке для выбранного транспозера могут повысить качество восстановленного сигнала.
В частности, в некоторых вариантах осуществления данные пропущенных гармоник и управляющие данные обратной фильтрации передают в контейнере расширения eSBR (наряду с другими параметрами битового потока из таблицы 3) и настраивают для гармонического транспозера eSBR. Дополнительная битовая скорость, необходимая для передачи этих двух классов метаданных для гармонического транспозера eSBR, является относительно низкой. Поэтому отправка настроенных данных пропущенных гармоник и/или управляющих данных обратной фильтрации в контейнере расширения eSBR будет повышать качество звука, получаемого с помощью транспозера, оказывая лишь минимальное влияние на битовую скорость. Для обеспечения обратной совместимости с традиционными декодерами параметры, настроенные для операции спектрального переноса SBR, также могут быть отправлены в битовом потоке как часть управляющих данных SBR с использованием скрытой или явной сигнализации.
Сложность декодера с улучшениями SBR, как описано в данной заявке, должна быть ограничена так, чтобы значительно не повышать общую вычислительную сложность реализации. Предпочтительно PCU (MOP) для типа объекта SBR, при использовании инструмента eSBR, меньше или равна 4,5, и RCU для типа объекта SBR, при использовании инструмента eSBR, меньше или равна 3. Приближенная вычислительная мощность дана в единицах сложности процессора (Processor Complexity Unit, PCU), выраженных в целочисленных количествах MOPS. Приближенная загрузка RAM дана в единицах сложности RAM (RAM Complexity Units, RCU), выраженных в целочисленных количествах килослов (1000 слов). Количества RCU не включают рабочие буферы, которые могут совместно использоваться разными объектами и/или каналами. Кроме того, PCU пропорциональна частоте дискретизации. Значения PCU даны в MOPS (миллионы операций в секунду) на канал, а значения RCU – в килословах на канал.
К сжатым данным, таким как кодированный звук HE-AAC, которые могут быть декодированы посредством других конфигураций декодера, требуется особое внимание. В этом случае декодирование можно осуществлять с обеспечением обратной совместимости (только AAC), а также в улучшенном режиме (AAC+SBR). Если сжатые данные допускают и обратно совместимое, и расширенное декодирование, и если декодер действует в улучшенном режиме так, что использует постпроцессор, который вносит некоторую дополнительную задержку (например, постпроцессор SBR в HE-AAC), то необходимо обеспечить, чтобы эта дополнительная временная задержка, вносимая относительно режима обратной совместимости, как описано соответствующим значением n, учитывалась при представлении блока совмещения. Для обеспечения правильной обработки отметок времени совмещения (чтобы звук оставался синхронизированным с другими медиаданными), дополнительная задержка, вносимая постобработкой, данная в количестве дискретных значений (на звуковой канал) на выходной частоте дискретизации, равна 3010, если режим работы декодера включает улучшения SBR (в том числе eSBR), как описано в этой заявке. Поэтому для блока совмещения звука время совмещения применимо к 3011-му звуковому дискретному значению в блоке совмещения, если режим работы декодера включает улучшения SBR, как описано в этой заявке.
Для повышения субъективного качества звукового содержимого с гармонической частотной структурой и сильными тональными характеристиками, в частности при низких битовых скоростях, следует активировать улучшения SBR. Значения соответствующего элемента битового потока (т.е. esbr_data()), управляющего этими инструментами, могут быть определены в кодере путем применения механизма классификации, зависимого от сигнала.
Обычно использование способа гармонической вставки (sbrPatchingMode == 0) является предпочтительным для кодирования музыкальных сигналов с очень низкими битовыми скоростями, когда основной кодек может быть значительно ограничен по полосе пропускания звука. Это особенно верно, если эти сигналы имеют выраженную гармоническую структуру. Напротив, использование обычного способа вставки SBR является предпочтительным для речевых и смешанных сигналов, поскольку он обеспечивает лучшее сохранение временной структуры речи.
Для улучшения работы транспозера MPEG-4 SBR можно активировать этап предварительной обработки (bs_sbr_preprocessing == 1), который устраняет внесение нарушений однородности спектра сигнала, идущего в последующий корректор огибающей Работа этого инструмента является полезной для типов сигнала, в которых грубая огибающая спектра сигнала нижнего диапазона, используемого для реконструкции высоких частот, проявляет большие вариации уровня.
Для улучшения переходной характеристики гармонической вставки SBR (sbrPatchingMode == 0) можно применить адаптивную к сигналу передискретизацию в частотной области (sbrOversamplingFlag == 1). Поскольку адаптивная к сигналу передискретизация в частотной области увеличивает вычислительную сложность транспозера, но приносит пользу только для кадров, содержащих переходные сигналы, использованием этого инструмента управляют посредством элемента битового потока, который передают один раз на кадр и на независимый канал SBR.
Обычные рекомендуемые настройки битовой скорости для HE-AACv2 с улучшениями SBR (т.е. с включением гармонического транспозера инструмента eSBR) соответствуют 20–32 кбит/с для стереофонического звукового содержимого при частотах дискретизации 44,1 кГц или 48 кГц. Относительный субъективный выигрыш в качестве улучшений SBR увеличивается в направлении к нижней границе битовой скорости, и надлежащим образом выполненный декодер позволяет расширить этот диапазон до еще более низких битовых скоростей. Представленные выше битовые скорости представляют собой лишь рекомендации и могут быть адаптированы для конкретных эксплуатационных требований.
Декодеру, действующему в предложенном режиме улучшенного SBR, как правило, необходимо иметь возможность переключения между традиционной и улучшенной вставкой SBR. Поэтому может вноситься задержка, которая может быть настолько продолжительной, как длительность одного базового кадра звука, в зависимости от настроек декодера. Как правило, задержка будет одинакова и для традиционной, и для улучшенной вставки SBR.
Необходимо понимать, что в рамах объема прилагаемой формулы изобретения настоящее изобретение может быть реализовано на практике иначе, по сравнению с тем, что конкретно описано в данном документе. Любые ссылочные обозначения, содержащиеся в следующей ниже формуле изобретения, приведены только для иллюстрации, и их никоим образом не следует использовать для толкования или ограничения формулы изобретения.
Различные аспекты настоящего изобретения можно понять из следующих пронумерованных примерных вариантов осуществления (ППВО).
ППВО 1. Способ выполнения реконструкции высоких частот звукового сигнала, включающий:
прием кодированного звукового битового потока, этот кодированный звуковой битовый поток содержит звуковые данные, представляющие относящуюся к нижнему диапазону часть звукового сигнала, и метаданные реконструкции высоких частот;
декодирование звуковых данных для генерирования декодированного звукового сигнала нижнего диапазона;
извлечение из кодированного звукового битового потока метаданных реконструкции высоких частот, эти метаданные реконструкции высоких частот содержат рабочие параметры для процесса реконструкции высоких частот, рабочие параметры включают параметр режима вставки, расположенный в обратно совместимом контейнере расширения кодированного звукового битового потока, при этом первое значение параметра режима вставки указывает на спектральный перенос, а второе значение параметра режима вставки указывает на гармоническую транспозицию с использованием растяжения диапазона частот фазовым вокодером;
фильтрацию декодированного звукового сигнала нижнего диапазона для генерирования фильтрованного звукового сигнала нижнего диапазона;
восстановление относящейся к верхнему диапазону части звукового сигнала с использованием фильтрованного звукового сигнала нижнего диапазона и метаданных реконструкции высоких частот, при этом восстановление включает спектральный перенос, если параметр режима вставки имеет первое значение, и восстановление включает гармоническую транспозицию с использованием растяжения диапазона частот фазовым вокодером, если параметр режима вставки имеет второе значение; и
объединение фильтрованного звукового сигнала нижнего диапазона с восстановленной относящейся к верхнему диапазону частью для формирования широкополосного звукового сигнала,
при этом фильтрацию, восстановление и объединение выполняют как операцию постобработки с задержкой в 3010 дискретных значений на звуковой канал или менее.
ППВО 2. Способ согласно ППВО 1, в котором кодированный звуковой битовый поток дополнительно включает заполняющий элемент с идентификатором, указывающим начало заполняющего элемента, и заполняющими данными после идентификатора, где заполняющие данные содержат обратно совместимый контейнер расширения.
ППВО 3. Способ согласно ППВО 2, в котором идентификатор представляет собой трехбитное целое число без знака, у которого сначала передают старший значащий бит, имеющее значение 0×6.
ППВО 4. Способ согласно ППВО 2 или ППВО 3, в котором заполняющие данные содержат полезные данные расширения, эти полезные данные расширения содержат данные расширения копирования спектральной полосы, при этом полезные данные расширения идентифицируют с помощью четырехбитного целого числа без знака, у которого сначала передают старший значащий бит, имеющего значение «1101» или «1110», и необязательно
при этом данные расширения копирования спектральной полосы содержат:
необязательный заголовок копирования спектральной полосы,
данные копирования спектральной полосы после заголовка и
элемент расширения копирования спектральной полосы после данных копирования спектральной полосы, и при этом в элемент расширения копирования спектральной полосы включают флаг.
ППВО 5. Способ согласно любому из ППВО 1–4, в котором метаданные реконструкции высоких частот содержат масштабные коэффициенты огибающей, масштабные коэффициенты шумового порога, информацию временной / частотной сетки или параметр, указывающий частоту разделения.
ППВО 6. Способ согласно любому из ППВО 1–5, в котором обратно совместимый контейнер расширения дополнительно содержит флаг, указывающий, используется ли дополнительная предварительная обработка для избежания нарушений непрерывности в форме огибающей спектра относящейся к верхнему диапазону части, когда параметр режима вставки равен первому значению, при этом первое значение флага включает дополнительную предварительную обработку, а второе значение флага отключает дополнительную предварительную обработку.
ППВО 7. Способ согласно ППВО 6, в котором дополнительная предварительная обработка включает вычисление кривой предварительного усиления с использованием коэффициента фильтра линейного предсказания.
ППВО 8. Способ согласно любому из ППВО 1–5, в котором обратно совместимый контейнер расширения дополнительно содержит флаг, указывающий, необходимо ли применять адаптивную к сигналу передискретизацию в частотной области, когда параметр режима вставки равен второму значению, при этом первое значение флага включает адаптивную к сигналу передискретизацию в частотной области, а второе значение флага отключает адаптивную к сигналу передискретизацию в частотной области.
ППВО 9. Способ согласно ППВО 8, в котором адаптивную к сигналу передискретизацию в частотной области применяют только для кадров, содержащих переходной сигнал.
ППВО 10. Способ согласно любому из предыдущих ППВО, в котором гармоническую транспозицию с использованием растяжения диапазона частот фазовым вокодером выполняют с оценочной сложностью 4,5 миллионов или менее операций в секунду и 3 или менее килослов памяти.
ППВО 11. Энергонезависимый машиночитаемый носитель, содержащий команды, которые при исполнении процессором выполняют способ согласно любому из ППВО 1–10.
ППВО 12. Компьютерный программный продукт, содержащий команды, которые при исполнении вычислительным устройством или системой вызывают выполнение указанным вычислительным устройством или системой способа согласно любому из ППВО 1–10.
ППВО 13. Блок обработки звука для выполнения реконструкции высоких частот звукового сигнала, содержащий:
интерфейс ввода для приема кодированного звукового битового потока, этот кодированный звуковой битовый поток содержит звуковые данные, представляющие относящуюся к нижнему диапазону часть звукового сигнала, и метаданные реконструкции высоких частот;
основной декодер звука для декодирования звуковых данных для генерирования декодированного звукового сигнала нижнего диапазона;
устройство удаления форматирования для извлечения из кодированного звукового битового потока метаданных реконструкции высоких частот, эти метаданные реконструкции высоких частот содержат рабочие параметры для процесса реконструкции высоких частот, рабочие параметры включают параметр режима вставки, расположенный в обратно совместимом контейнере расширения кодированного звукового битового потока, при этом первое значение параметра режима вставки указывает на спектральный перенос, а второе значение параметра режима вставки указывает на гармоническую транспозицию с использованием растяжения диапазона частот фазовым вокодером;
блок анализирующих фильтров для фильтрации декодированного звукового сигнала нижнего диапазона для генерирования фильтрованного звукового сигнала нижнего диапазона;
устройство восстановления высоких частот для реконструкции относящейся к верхнему диапазону части звукового сигнала с использованием фильтрованного звукового сигнала нижнего диапазона и метаданных реконструкции высоких частот, при этом реконструкция включает спектральный перенос, если параметр режима вставки имеет первое значение, и реконструкция включает гармоническую транспозицию с использованием растяжения диапазона частот фазовым вокодером, если параметр режима вставки имеет второе значение; и
блок синтезирующих фильтров для объединения фильтрованного звукового сигнала нижнего диапазона с восстановленной относящейся к верхнему диапазону частью для формирования широкополосного звукового сигнала,
при этом блок анализирующих фильтров, устройство восстановления высоких частот и блок синтезирующих фильтров выполняются в постпроцессоре с задержкой в 3010 дискретных значений на канал звука или менее.
ППВО 14. Блок обработки звука согласно ППВО 13, в котором гармоническая транспозиция с использованием растяжения диапазона частот фазовым вокодером выполняется с оценочной сложностью 4,5 миллионов или менее операций в секунду и 3 или менее килослов памяти.