ОБРАТНО СОВМЕСТИМАЯ ИНТЕГРАЦИЯ МЕТОДОВ ВЫСОКОЧАСТОТНОГО ВОССТАНОВЛЕНИЯ ДЛЯ АУДИОСИГНАЛОВ
INVERSELY COMPATIBLE INTEGRATION OF TECHNIQUES OF HIGH-FREQUENCY RECONSTRUCTION FOR AUDIO SIGNALS

Перекрестная ссылка на связанную заявку
Настоящая заявка испрашивает приоритет по следующей приоритетной заявке: предварительная заявка США 62/622,205, поданная 26 января 2018, которая включена в настоящий документ посредством ссылки.
Область техники
Варианты осуществления относятся к обработке аудиосигналов и, более конкретно, к кодированию, декодированию или транскодированию битовых потоков аудио с управляющими данными, специфицирующими, что либо базовая форма высокочастотного восстановления (“HFR”), либо расширенная форма HFR должна выполняться в отношении данных аудио.
Предшествующий уровень техники
Обычный битовый поток аудио включает в себя как данные аудио (например, закодированные данные аудио), указывающие один или несколько каналов аудиоконтента, так и метаданные, указывающие по меньшей мере одну характеристику данных аудио или аудиоконтента. Одним хорошо известным форматом для генерирования закодированного битового потока аудио является формат расширенного кодирования аудио (AAC) MPEG-4, описанный в стандарте ISO/IEC 14496-3:2009 MPEG. В стандарте 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 выполняет спектральную вставку заплаты (patching) (также называемую линейным переносом или спектральным переносом), когда некоторое число последовательных поддиапазонов квадратурных зеркальных фильтров (QMF) копируются (или “вставляются в виде заплаты”) из переданной части полосы низких частот аудиосигнала в часть полосы высоких частот аудиосигнала, генерируемого в декодере.
Спектральная вставка заплаты или линейный перенос могут не быть идеальными для некоторых типов аудио, таких как музыкальный контент с относительно низкими частотами перехода. Поэтому, необходимы методы для улучшения репликации спектрального диапазона.
Краткое описание вариантов осуществления изобретения
Раскрыт первый класс вариантов осуществления, который относится к способу декодирования закодированного битового потока аудио. Способ включает в себя прием закодированного битового потока аудио и декодирование данных аудио, чтобы сгенерировать декодированный аудиосигнал в полосе низких частот. Способ дополнительно включает в себя извлечение метаданных высокочастотного восстановления и фильтрацию декодированного аудиосигнала в полосе низких частот банком фильтров анализа, чтобы сгенерировать отфильтрованный аудиосигнал в полосе низких частот. Способ дополнительно включает в себя извлечение метки, указывающей, следует ли выполнить спектральный перенос или гармоническую транспозицию в отношении данных аудио, и регенерацию части полосы высоких частот аудиосигнала с использованием отфильтрованного аудиосигнала в полосе низких частот и метаданных высокочастотного восстановления в соответствии с меткой. Наконец, способ включает в себя комбинирование отфильтрованного аудиосигнала в полосе низких частот и регенерированной части полосы высоких частот для формирования широкополосного аудиосигнала.
Второй класс вариантов осуществления относится к декодеру аудио для декодирования закодированного битового потока аудио. Декодер включает в себя входной интерфейс для приема закодированного битового потока аудио, где закодированный битовый поток аудио включает в себя данные аудио, представляющие часть полосы низких частот аудиосигнала, и базовый декодер для декодирования данных аудио, чтобы сгенерировать декодированный аудиосигнал в полосе низких частот. Декодер также включает в себя демультиплексор для извлечения из закодированного битового потока аудио метаданных высокочастотного восстановления, где метаданные высокочастотного восстановления включают в себя рабочие параметры для процесса высокочастотного восстановления, который линейно переносит некоторое количество последовательных поддиапазонов из части полосы низких частот аудиосигнала в часть полосы высоких частот аудиосигнала, и банк фильтров анализа для фильтрации декодированного аудиосигнала в полосе низких частот, чтобы сгенерировать отфильтрованный аудиосигнал в полосе низких частот. Декодер дополнительно включает в себя демультиплексор для извлечения из закодированного битового потока аудио метки, указывающей, следует ли выполнять линейный перенос или гармоническую транспозицию в отношении данных аудио, и высокочастотный регенератор для регенерации части полосы высоких частот аудиосигнала с использованием отфильтрованного аудиосигнала в полосе низких частот и метаданных высокочастотного восстановления в соответствии с меткой. Наконец, декодер включает в себя банк фильтров синтеза для комбинирования отфильтрованного аудиосигнала в полосе низких частот и регенерированной части полосы высоких частот для формирования широкополосного аудиосигнала.
Другие классы вариантов осуществления относятся к кодированию и транскодированию битовых потоков аудио, содержащих метаданные, идентифицирующие, следует ли выполнять обработку расширенной репликации спектрального диапазона (eSBR).
Краткое описание чертежей
Фиг. 1 представляет собой блок-схему варианта осуществления системы, которая может быть сконфигурирована, чтобы выполнять вариант осуществления способа, соответствующего изобретению.
Фиг. 2 представляет собой блок-схему кодера, который является вариантом осуществления модуля обработки аудио, соответствующего изобретению.
Фиг. 3 представляет собой блок-схему системы, включающей в себя декодер, который является вариантом осуществления модуля обработки аудио, соответствующего изобретению, и опционально также пост-процессор, связанный с ним.
Фиг. 4 представляет собой блок-схему декодера, который является вариантом осуществления модуля обработки аудио, соответствующего изобретению.
Фиг. 5 представляет собой блок-схему декодера, который является другим вариантом осуществления модуля обработки аудио, соответствующего изобретению.
Фиг. 6 представляет собой блок-схему другого варианта осуществления модуля обработки аудио, соответствующего изобретению.
Фиг. 7 представляет собой диаграмму блока битового потока MPEG-4 AAC, включающего в себя сегменты, на которые он разделен.
Обозначения и терминология
Повсюду в настоящем раскрытии, в том числе в формуле изобретения, выражение выполнение операции “на” сигнале или данных (например, фильтрация, масштабирование, преобразование или применение усиления в отношении сигнала или данных) используется в широком смысле для обозначения выполнения операции непосредственно на сигнале или данных или на обработанной версии сигнала или данных (например, на версии сигнала, который подвергся предварительной фильтрации или предварительной обработке до выполнения на нем операции).
Повсюду в настоящем раскрытии, включая формулу изобретения, выражение “модуль обработки аудио” или “процессор аудио” используется в широком смысле для обозначения системы, устройства или прибора, сконфигурированного обработки данных аудио. Примеры модулей обработки аудио включают в себя, но без ограничения, кодеры, транскодеры, декодеры, кодеки, системы предварительной обработки, системы пост-обработки и системы обработки битовых потоков (иногда упоминаемые как инструменты обработки битовых потоков). Виртуально вся потребительская электроника, такая как мобильные телефоны, телевизоры, ноутбуки и планшеты, содержит модуль обработки аудио или процессор аудио.
Повсюду в настоящем раскрытии, включая формулу изобретения, термин “связывает” или “связанный” используется в широком смысле для обозначения прямого или опосредованного соединения. Таким образом, если первое устройство связано со вторым устройством, это соединение может осуществляться как прямое соединение или опосредованное соединение через другие устройств и соединения. Более того, компоненты, интегрированные в другие компоненты или с другими компонентами, также связаны друг с другом.
Подробное описание вариантов осуществления изобретения
Стандарт MPEG-4 AAC подразумевает, что закодированный битовый поток MPEG-4 AAC включает в себя метаданные, указывающие каждый тип обработки высокочастотного восстановления (“HFR”), который должен применяться (если какой-либо должен применяться) декодером, чтобы декодировать аудиоконтент битового потока, и/или который управляет такой обработкой HFR и/или указывает по меньшей мере одну характеристику или параметр по меньшей мере одного инструмента MPEG-4 AAC, используемого для декодирования аудиоконтента битового потока. Здесь используется выражение “метаданные SBR” для обозначения метаданных типа, описанного или упомянутого в стандарте MPEG-4 AAC для применения с репликацией спектрального диапазона (“SBR”). Как понятно специалисту в данной области техники, SBR представляет собой форму HFR.
SBR предпочтительно используется в качестве системы с двойной скоростью, при этом основной кодек работает на половине исходной частоты дискретизации, в то время как SBR работает на исходной частоте дискретизации. Кодер SBR работает параллельно с основным базовым кодеком, хотя и на более высокой частоте дискретизации. Хотя SBR представляет собой главным образом пост-обработку в декодере, важные параметры извлекаются в кодере, чтобы обеспечить наиболее точное высокочастотное восстановление в декодере. Кодер оценивает спектральную огибающую диапазона SBR для временного и частотного диапазона/разрешения, подходящих для текущих характеристик сегментов входного сигнала. Спектральная огибающая оценивается посредством комплексного анализа QMF и последующего вычисления энергии. Временные и частотные разрешения спектральных огибающих могут выбираться с высоким уровнем свободы, чтобы обеспечивать наиболее подходящее временное/частотное разрешение для данного входного сегмента. Оценка огибающей должна учитывать, что переходный процесс в исходной, главным образом, в высокочастотной области (например, high-hat (хай-хэт)) будет присутствовать в меньшей степени в сгенерированном 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()”. Элемент одного канала представляет собой контейнер, включающий в себя данные аудио одного аудиоканала (монофонический аудиосигнал). Элемент пары каналов включает в себя данные аудио двух аудиоканалов (то есть, стереофонический аудиосигнал).
Элемент наполнения представляет собой контейнер информации, включающей в себя идентификатор (например, значение отмеченного выше элемента “id_syn_ele”), за которым следуют данные, которые упоминаются как “данные наполнения”. Элементы наполнения исторически использовались, чтобы корректировать мгновенную битовую скорость битовых потоков, которые должны передаваться по каналу с постоянной скоростью передачи. Путем добавления подходящего количества данных наполнения в каждый блок, можно достигнуть постоянной скорости передачи данных.
В соответствии с вариантами осуществления изобретения, данные наполнения могут включать в себя одну или более полезных нагрузок расширения, которые расширяют тип данных (например, метаданных), способных передаваться в битовом потоке. Декодер, который принимает битовые потоки с данными наполнения, содержащими новый тип данных, может опционально использоваться устройством, принимающим битовый поток (например, декодером), чтобы расширять функциональность устройства. Таким образом, как может быть понятно специалисту в данной области техники, элементы наполнения представляют собой специальный тип структуры данных и отличаются от структур данных, обычно используемых для передачи данных аудио (например, полезных нагрузок аудио, содержащих данные канала).
В некоторых вариантах осуществления изобретения, идентификатор, используемый, чтобы идентифицировать элемент наполнения, может состоять из трех-битного целого числа без знака со старшим битом, передаваемым первым (“uimsbf”), имеющего значение 0×6. В одном блоке, может появляться несколько экземпляров одного и того же типа синтаксического элемента (например, несколько элементов наполнения).
Другим стандартом для кодирования битовых потоков аудио является стандарт единого кодирования речи и аудио 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ω, в то же время сохраняя длительность сигнала. Три порядка, 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]) в битовом потоке.
Когда sbrPatchingMode==1, указывая, что линейная транспозиция должна использоваться, чтобы генерировать высокий диапазон, может вводиться дополнительный этап во избежание прерываний в форме спектральной огибающей высокочастотного сигнала, вводимого в последующий корректор огибающей. Это улучшает операцию последующей стадии коррекции огибающей, приводя в результате к сигналу в полосе высоких частот, который воспринимается как более стабильный. Операция дополнительной предварительной обработки является выгодной для типов сигнала, где грубая огибающая спектра сигнала в полосе низких частот, используемого для восстановления высоких частот, демонстрирует большие вариации в уровне. Однако значение элемента битового потока может определяться в кодере путем применения любого вида зависимой от сигнала классификации. Дополнительная предварительная обработка предпочтительно активируется через однобитный элемент битового потока, bs_sbr_preprocessing. Когда bs_sbr_preprocessing установлен в один, дополнительная обработка включена. Когда bs_sbr_preprocessing установлен в нуль, дополнительная предварительная обработка выключена. Дополнительная обработка предпочтительно использует кривую preGain, которая используется высокочастотным генератором, чтобы масштабировать низкий диапазон, XLow, для каждой вставки заплаты. Например, кривая 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 (который опционально включает в себя модуль предварительной обработки) сконфигурирован, чтобы принимать выборки PCM (временной области), содержащие аудиоконтент, в качестве входа и выводить закодированный битовый поток аудио (имеющий формат, который совместим со стандартом 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), чтобы сгенерировать декодированные данные аудио (например, потоки выборок декодированного аудио PCM). В некоторых вариантах осуществления, декодер 3 сконфигурирован, чтобы извлекать метаданные SBR из битового потока (но игнорировать метаданные eSBR, включенные в битовый поток) и декодировать битовый поток (в том числе посредством выполнения обработки SBR с использованием извлеченных метаданных SBR), чтобы генерировать декодированные данные аудио (например, потоки выборок декодированного аудио PCM). Обычно, декодер 3 включает в себя буфер, который хранит (например, не-временным образом) сегменты закодированного битового потока аудио, принятого от подсистемы 2.
Модуль 4 пост-обработки согласно фиг. 1 сконфигурирован, чтобы принимать поток декодированных данных аудио от декодера 3 (например, выборки декодированного аудио PCM) и выполнять на них пост-обработку. Модуль пост-обработки может также быть сконфигурирован, чтобы воспроизводить пост-обработанный аудиоконтент (или декодированное аудио, принятое от декодера 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, указанные метаданными eSBR и 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 представляет собой блок-схему модуля (210) обработки аудио (“APU”), который представляет собой другой вариант осуществления соответствующего изобретению модуля обработки аудио. 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], где X представляет некоторый параметр, обозначает, что параметр относится к огибающей SBR (“env”) канала (“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] и представляет расстояние, измеренное в частотных бинах (элементах разрешения) для 1536-линейного DFT, действующего на частоте дискретизации базового кодера.
В случае, если битовый поток 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). Предварительное сглаживание обычно улучшает работу последующей стадии коррекции огибающей, приводя в результате к сигналу в полосе высоких частот, который воспринимается как более стабильный.
Ожидается, что общее требование битовой скорости для включения в метаданные eSBR битового потока MPEG-4 AAC, указывающие вышеупомянутые инструменты 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”), имеющего значение 0×6. Данные наполнения могут включать в себя элемент extension_payload() (иногда упоминаемый здесь как нагрузка расширения), синтаксис которого показан в Таблице 4.57 стандарта MPEG-4 AAC. Существует несколько типов нагрузок расширения, идентифицируемых посредством параметра “extension_type”, который представляет собой четырех-битное целое число без знака со старшим битом, передаваемым первым (“uimsbf”).
Данные наполнения (например, его полезная нагрузка расширения) могут включать в себя заголовок или идентификатор (например, “header1” на фиг. 7), который указывает сегмент данных наполнения, которые указывают объект SBR (т.е., заголовок инициализирует тип “объект SBR”, называемый sbr_extension_data() в стандарте MPEG-4 AAC). Например, нагрузка расширения репликации спектрального диапазона (SBR) идентифицируется при помощи значения ‘1101’ или ‘1110’ для поля extension_type в заголовке, при этом идентификатор ‘1101’ идентифицирует нагрузку расширения с данными SBR, и ‘1110’ идентифицирует нагрузку расширения с данными SBR с контролем циклическим избыточным кодом (CRC) для верификации корректности данных SBR.
Когда заголовок (например, поле extension_type) инициализирует тип объекта SBR, метаданные SBR (иногда упоминаемые здесь как “данные репликации спектрального диапазона” и упоминаемые как sbr_data() в стандарте MPEG-4 AAC) следуют за заголовком, и по меньшей мере один элемент расширения репликации спектрального диапазона (например, “элемент расширения SBR” элемента 1 наполнения на фиг. 7) может следовать за метаданными SBR. Такой элемент расширения репликации спектрального диапазона (сегмент битового потока) упоминается как контейнер “sbr_extension()” в стандарте MPEG-4 AAC. Элемент расширения репликации спектрального диапазона опционально включает в себя заголовок (например, “заголовок расширения SBR” элемента 1 наполнения на фиг. 7).
Стандарт MPEG-4 AAC предполагает, что элемент расширения репликации спектрального диапазона может включать в себя данные PS (параметрического стерео) для данных аудио программы. Стандарт MPEG-4 AAC предполагает, что когда заголовок элемента наполнения (например, его нагрузка расширения) инициализирует тип объекта SBR (как это делает “header1” на фиг. 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. Данные наполнения (например, их полезная нагрузка расширения) включают в себя заголовок (например, “header2” элемента 2 наполнения на фиг. 7), который указывает объект eSBR (т.е., заголовок инициализирует тип объекта расширенной репликации спектрального диапазона (eSBR)), и данные наполнения (например, их полезная нагрузка расширения) включают в себя метаданные eSBR после заголовка. Например, элемент 2 наполнения на фиг. 7 включает в себя такой заголовок (“header2”) и также включает, после заголовка, метаданные eSBR (т.е., “метку” в элементе 2 наполнения, которая указывает, следует ли выполнять обработку расширенной репликации спектрального диапазона (eSBR) на аудиоконтенте блока). Опционально, дополнительные метаданные eSBR также включены в данные наполнения элемента 2 наполнения на фиг. 7, после header2. В вариантах осуществления, описываемых в предыдущем абзаце, заголовок (например, header2 на фиг. 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”, имеющий значение 0×6, Таблицы 4.85 стандарта MPEG-4 AAC), и данные наполнения после идентификатора, причем данные наполнения включают в себя:
по меньшей мере одну метку, идентифицирующую, должна ли выполняться обработка расширенной репликации спектрального диапазона (eSBR) на аудиоконтенте блока (например, с использованием данных репликации спектрального диапазона и метаданных eSBR, включенных в блок).
Метка представляет собой метаданные eSBR, и примером метки является метка sbrPatchingMode. Другим примером метки является метка harmonicSBR. Обе из этих меток указывают, должна выполняться базовая форма репликации спектрального диапазона или расширенная форма спектральной репликации в отношении данных аудио блока. Базовой формой спектральной репликации является спектральная вставка заплаты, и расширенной формой репликации спектрального диапазона является гармоническая транспозиция.
В некоторых вариантах осуществления, данные наполнения также включают в себя дополнительные метаданные eSBR (т.е., метаданные eSBR, отличные от метки).
Память может представлять собой буферную память (например, реализация буфера 201 на фиг. 4), которая хранит (например, не-временным образом) по меньшей мере один блок закодированного битового потока аудио.
Оценивается, что сложность выполнения обработки eSBR (с использованием гармонической транспозиции eSBR и предварительного сглаживания) декодером eSBR во время декодирования битового потока MPEG-4 AAC, который включает в себя метаданные eSBR (указывающие эти инструменты eSBR), будет следующей (для типового декодирования с указанными параметрами):
Гармоническая транспозиция (16 кбит/с, 14400/28800 Гц)
- на основе DFT: 3,68 WMOPS (взвешенный миллион операций в секунду);
- на основе QMF: 0,98 WMOPS;
Предварительная обработка QMF-вставки заплаты (предварительное сглаживание): 0,1WMOPS.
Известно, что транспозиция на основе 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
bs_extension_id
Значение
0
Зарезервировано
1
Зарезервировано
2
EXTENSION_ID_PS
3
EXTENSION_ID_ESBR
В соответствии с некоторыми вариантами осуществления изобретения, синтаксис каждого элемента расширения репликации спектрального диапазона, который включает в себя метаданные eSBR и/или данные PS, является таким, как указано в Таблице 2 ниже (в которой “sbr_extension()” обозначает контейнер, который представляет собой элемент расширения репликации спектрального диапазона, “bs_extension_id” является таким как описано в Таблице 1 выше, “ps_data” обозначает данные PS, и “esbr_data” обозначает метаданные eSBR):
Таблица 2
Примечание 1: ps_data() возвращает число считанных битов.
Примечание 2: esbr_data() возвращает число считанных битов.
В примерном варианте осуществления, esbr_data(), на который ссылаются в Таблице 2 выше, указывает значения следующих параметров метаданных:
1. Однобитный параметр метаданных, “bs_sbr_preprocessing”; и
2. Для каждого канала (“ch”) аудиоконтента закодированного битового потока, подлежащего декодированию, каждый из вышеописанных параметров: “sbrPatchingMode[ch]”; “sbrOversamplingFlag[ch]”; “sbrPitchInBinsFlag[ch]”; и “sbrPitchInBins[ch]”.
Например, в некоторых вариантах осуществления, esbr_data() может иметь синтаксис, указанный в Таблице 3, чтобы указывать эти метаданные параметры:
Таблица 3
Примечание: bs_sbr_preprocessing определяется, как описано в Разделе 6.2.12 ISO/IEC 23003-3:2012. sbrPatchingMode[ch], sbrOversamplingFlag[ch], sbrPitchInBinsFlag[ch] и sbrPitchInBins[ch] определяются, как описано в Разделе 7.5 ISO/IEC 23003-3:2012.
Синтаксис, описанный выше, обеспечивает эффективную реализацию расширенной формы репликации спектрального диапазона, такой как гармоническая транспозиция, в качестве расширения унаследованного декодера. Конкретно, данные eSBR Таблицы 3 включают в себя только те параметры, необходимые для выполнения расширенной формы репликации спектрального диапазона, которые либо не являются уже поддерживаемыми в битовом потоке, либо не извлекаются напрямую из параметров, уже поддерживаемых в битовом потоке. Все другие параметры и данные обработки, необходимые для выполнения расширенной формы репликации спектрального диапазона, извлекаются из предварительно существующих параметров в уже определенных местоположениях в битовом потоке.
Например, совместимый с MPEG-4 HE-AAC или HE-AAC v2 декодер может быть расширен, чтобы включать в себя расширенную форму репликации спектрального диапазона, такую как гармоническая транспозиция. Эта расширенная форма репликации спектрального диапазона дополняет базовую форму репликации спектрального диапазона, уже поддерживаемую декодером. В контексте совместимого с MPEG-4 HE-AAC или HE-AAC v2 декодера, этой базовой формой репликации спектрального диапазона является инструмент SBR спектральной вставки заплаты QMF, как определено в Разделе 4.6.18 стандарта MPEG-4 AAC.
OrigMapped
При выполнении расширенной формы репликации спектрального диапазона, расширенный декодер HE-AAC может повторно использовать множество параметров битового потока, уже включенных в нагрузку расширения 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) и путем добавления только тех параметров, которые необходимы для поддержки расширенной формы репликации спектрального диапазона (в полезной нагрузке расширения элемента наполнения). Эта особенность уменьшения данных в сочетании с помещением вновь добавленных параметров в зарезервированное поле данных, такое как контейнер расширения, существенно уменьшает препятствия к созданию декодера, который поддерживает расширенную форму репликации спектрального диапазона, за счет обеспечения того, что битовый поток является обратно совместимым с унаследованным декодером, не поддерживающим расширенную форму репликации спектрального диапазона. Будет понятно, что зарезервированное поле данных является обратно совместимым полем данных, то есть, представляет собой такое поле данных, которое уже поддерживается более ранними декодерами, такими как унаследованные декодеры HE-AAC или HE-AAC v2. Аналогично, контейнер расширения является обратно совместимым, то есть, представляет собой такой контейнер расширения, который уже поддерживается более ранними декодерами, такими как унаследованные декодеры HE-AAC или HE-AAC v2.
В Таблице 3, число в правом столбце указывает количество битов соответствующего параметра в левом столбце.
В некоторых вариантах осуществления, тип объекта SBR, определенный в MPEG-4 AAC, обновляется, чтобы содержать инструмент SBR и аспекты инструмента расширенной SBR (eSBR), как сигнализируется в элементе расширения SBR (bs_extension_id== EXTENSION_ID_ESBR). Если декодер обнаруживает этот элемент расширения 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)) восстановленные сигналы в соответствии с:
k
11
k
21
k
l(n)=H(k, n)s(n)+H(k, n)d(n)
k
12
k
22
k
r(n)=H(k, n)s(n)+H(k, n)d(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, представляют собой комплексно-экспоненциальное расширение теории косинусно-модулированных банков фильтров. Можно показать, что ограничения компенсации помех дискретизации становятся устаревшими при расширении косинусно-модулированного банка фильтров с комплексно-экспоненциальной модуляцией. Таким образом, для банков SBR QMF, как фильтры анализа, h(n), так и фильтры синтеза, f(n), могут определяться посредством:
(1)
0
где p(n) представляет собой вещественно-значный симметричный или ассиметричный фильтр-прототип (обычно, фильтр-прототип нижних частот), M обозначает количество каналов, и N представляет собой порядок фильтра-прототипа. Количество каналов, используемых в банке фильтров анализа, может отличаться от количества каналов, используемых в банке фильтров синтеза. Например, банк фильтров анализа может иметь 32 канала, а банк фильтров синтеза может иметь 64 канала. При применении банка фильтров синтеза в режиме понижающей дискретизации, банк фильтров синтеза может иметь только 32 канала. Поскольку поддиапазонные выборки из банка фильтров являются комплексно-значными, дополнительный возможный этап канально-зависимого фазового сдвига может быть добавлен к банку фильтров анализа. Эти дополнительные фазовые сдвиги должны быть скомпенсированы перед банком фильтров синтеза. В то время как члены фазового сдвига в принципе могут иметь произвольные значения без нарушения работы цепи анализа/синтеза QMF, они могут также быть ограничены определенными значениями для верификации согласованности. Сигнал SBR будет испытывать влияние выбора фазовых коэффициентов, в то время как сигнал нижних частот, поступающих из базового декодера, не будет его испытывать. Качество аудио выходного сигнала не испытывает влияния.
0
Коэффициенты фильтра-прототипа, p(n), могут определяться длиной, L, 640, как показано в Таблице 4 ниже.
Таблица 4
n
p<sub>0</sub>(n)
n
p<sub>0</sub>(n)
n
p<sub>0</sub>(n)
0
0,0000000000
214
0,0019765601
428
0,0117623832
1
-0,0005525286
215
-0,0032086896
429
0,0163701258
2
-0,0005617692
216
-0,0085711749
430
0,0207997072
3
-0,0004947518
217
-0,0141288827
431
0,0250307561
4
-0,0004875227
218
-0,0198834129
432
0,0290824006
5
-0,0004893791
219
-0,0258227288
433
0,0329583930
6
-0,0005040714
220
-0,0319531274
434
0,0366418116
7
-0,0005226564
221
-0,0382776572
435
0,0401458278
8
-0,0005466565
222
-0,0447806821
436
0,0434768782
9
-0,0005677802
223
-0,0514804176
437
0,0466303305
10
-0,0005870930
224
-0,0583705326
438
0,0495978676
11
-0,0006132747
225
-0,0654409853
439
0,0524093821
12
-0,0006312493
226
-0,0726943300
440
0,0550460034
13
-0,0006540333
227
-0,0801372934
441
0,0575152691
14
-0,0006777690
228
-0,0877547536
442
0,0598166570
15
-0,0006941614
229
-0,0955533352
443
0,0619602779
16
-0,0007157736
230
-0,1035329531
444
0,0639444805
17
-0,0007255043
231
-0,1116826931
445
0,0657690668
18
-0,0007440941
232
-0,1200077984
446
0,0674525021
19
-0,0007490598
233
-0,1285002850
447
0,0689664013
20
-0,0007681371
234
-0,1371551761
448
0,0703533073
21
-0,0007724848
235
-0,1459766491
449
0,0715826364
22
-0,0007834332
236
-0,1549607071
450
0,0726774642
23
-0,0007779869
237
-0,1640958855
451
0,0736406005
24
-0,0007803664
238
-0,1733808172
452
0,0744664394
25
-0,0007801449
239
-0,1828172548
453
0,0751576255
26
-0,0007757977
240
-0,1923966745
454
0,0757305756
27
-0,0007630793
241
-0,2021250176
455
0,0761748321
28
-0,0007530001
242
-0,2119735853
456
0,0765050718
29
-0,0007319357
243
-0,2219652696
457
0,0767204924
30
-0,0007215391
244
-0,2320690870
458
0,0768230011
31
-0,0006917937
245
-0,2423016884
459
0,0768173975
32
-0,0006650415
246
-0,2526480309
460
0,0767093490
33
-0,0006341594
247
-0,2631053299
461
0,0764992170
34
-0,0005946118
248
-0,2736634040
462
0,0761992479
35
-0,0005564576
249
-0,2843214189
463
0,0758008358
36
-0,0005145572
250
-0,2950716717
464
0,0753137336
37
-0,0004606325
251
-0,3059098575
465
0,0747452558
38
-0,0004095121
252
-0,3168278913
466
0,0741003642
39
-0,0003501175
253
-0,3278113727
467
0,0733620255
40
-0,0002896981
254
-0,3388722693
468
0,0725682583
41
-0,0002098337
255
-0,3499914122
469
0,0717002673
42
-0,0001446380
256
0,3611589903
470
0,0707628710
43
-0,0000617334
257
0,3723795546
471
0,0697630244
44
0,0000134949
258
0,3836350013
472
0,0687043828
45
0,0001094383
259
0,3949211761
473
0,0676075985
46
0,0002043017
260
0,4062317676
474
0,0664367512
47
0,0002949531
261
0,4175696896
475
0,0652247106
48
0,0004026540
262
0,4289119920
476
0,0639715898
49
0,0005107388
263
0,4402553754
477
0,0626857808
50
0,0006239376
264
0,4515996535
478
0,0613455171
51
0,0007458025
265
0,4629308085
479
0,0599837480
52
0,0008608443
266
0,4742453214
480
0,0585915683
53
0,0009885988
267
0,4855253091
481
0,0571616450
54
0,0011250155
268
0,4967708254
482
0,0557173648
55
0,0012577884
269
0,5079817500
483
0,0542452768
56
0,0013902494
270
0,5191234970
484
0,0527630746
57
0,0015443219
271
0,5302240895
485
0,0512556155
58
0,0016868083
272
0,5412553448
486
0,0497385755
59
0,0018348265
273
0,5522051258
487
0,0482165720
60
0,0019841140
274
0,5630789140
488
0,0466843027
61
0,0021461583
275
0,5738524131
489
0,0451488405
62
0,0023017254
276
0,5845403235
490
0,0436097542
63
0,0024625616
277
0,5951123086
491
0,0420649094
64
0,0026201758
278
0,6055783538
492
0,0405349170
65
0,0027870464
279
0,6159109932
493
0,0390053679
66
0,0029469447
280
0,6261242695
494
0,0374812850
67
0,0031125420
281
0,6361980107
495
0,0359697560
68
0,0032739613
282
0,6461269695
496
0,0344620948
69
0,0034418874
283
0,6559016302
497
0,0329754081
70
0,0036008268
284
0,6655139880
498
0,0315017608
71
0,0037603922
285
0,6749663190
499
0,0300502657
72
0,0039207432
286
0,6842353293
500
0,0286072173
73
0,0040819753
287
0,6933282376
501
0,0271859429
74
0,0042264269
288
0,7022388719
502
0,0257875847
75
0,0043730719
289
0,7109410426
503
0,0244160992
76
0,0045209852
290
0,7194462634
504
0,0230680169
77
0,0046606460
291
0,7277448900
505
0,0217467550
78
0,0047932560
292
0,7358211758
506
0,0204531793
79
0,0049137603
293
0,7436827863
507
0,0191872431
80
0,0050393022
294
0,7513137456
508
0,0179433381
81
0,0051407353
295
0,7587080760
509
0,0167324712
82
0,0052461166
296
0,7658674865
510
0,0155405553
83
0,0053471681
297
0,7727780881
511
0,0143904666
84
0,0054196775
298
0,7794287519
512
-0,0132718220
85
0,0054876040
299
0,7858353120
513
-0,0121849995
86
0,0055475714
300
0,7919735841
514
-0,0111315548
87
0,0055938023
301
0,7978466413
515
-0,0101150215
88
0,0056220643
302
0,8034485751
516
-0,0091325329
89
0,0056455196
303
0,8087695004
517
-0,0081798233
90
0,0056389199
304
0,8138191270
518
-0,0072615816
91
0,0056266114
305
0,8185776004
519
-0,0063792293
92
0,0055917128
306
0,8230419890
520
-0,0055337211
93
0,0055404363
307
0,8272275347
521
-0,0047222596
94
0,0054753783
308
0,8311038457
522
-0,0039401124
95
0,0053838975
309
0,8346937361
523
-0,0031933778
96
0,0052715758
310
0,8379717337
524
-0,0024826723
97
0,0051382275
311
0,8409541392
525
-0,0018039472
98
0,0049839687
312
0,8436238281
526
-0,0011568135
99
0,0048109469
313
0,8459818469
527
-0,0005464280
100
0,0046039530
314
0,8480315777
528
0,0000276045
101
0,0043801861
315
0,8497805198
529
0,0005832264
102
0,0041251642
316
0,8511971524
530
0,0010902329
103
0,0038456408
317
0,8523047035
531
0,0015784682
104
0,0035401246
318
0,8531020949
532
0,0020274176
105
0,0032091885
319
0,8535720573
533
0,0024508540
106
0,0028446757
320
0,8537385600
534
0,0028446757
107
0,0024508540
321
0,8535720573
535
0,0032091885
108
0,0020274176
322
0,8531020949
536
0,0035401246
109
0,0015784682
323
0,8523047035
537
0,0038456408
110
0,0010902329
324
0,8511971524
538
0,0041251642
111
0,0005832264
325
0,8497805198
539
0,0043801861
112
0,0000276045
326
0,8480315777
540
0,0046039530
113
-0,0005464280
327
0,8459818469
541
0,0048109469
114
-0,0011568135
328
0,8436238281
542
0,0049839687
115
-0,0018039472
329
0,8409541392
543
0,0051382275
116
-0,0024826723
330
0,8379717337
544
0,0052715758
117
-0,0031933778
331
0,8346937361
545
0,0053838975
118
-0,0039401124
332
0,8311038457
546
0,0054753783
119
-0,0047222596
333
0,8272275347
547
0,0055404363
120
-0,0055337211
334
0,8230419890
548
0,0055917128
121
-0,0063792293
335
0,8185776004
549
0,0056266114
122
-0,0072615816
336
0,8138191270
550
0,0056389199
123
-0,0081798233
337
0,8087695004
551
0,0056455196
124
-0,0091325329
338
0,8034485751
552
0,0056220643
125
-0,0101150215
339
0,7978466413
553
0,0055938023
126
-0,0111315548
340
0,7919735841
554
0,0055475714
127
-0,0121849995
341
0,7858353120
555
0,0054876040
128
0,0132718220
342
0,7794287519
556
0,0054196775
129
0,0143904666
343
0,7727780881
557
0,0053471681
130
0,0155405553
344
0,7658674865
558
0,0052461166
131
0,0167324712
345
0,7587080760
559
0,0051407353
132
0,0179433381
346
0,7513137456
560
0,0050393022
133
0,0191872431
347
0,7436827863
561
0,0049137603
134
0,0204531793
348
0,7358211758
562
0,0047932560
135
0,0217467550
349
0,7277448900
563
0,0046606460
136
0,0230680169
350
0,7194462634
564
0,0045209852
137
0,0244160992
351
0,7109410426
565
0,0043730719
138
0,0257875847
352
0,7022388719
566
0,0042264269
139
0,0271859429
353
0,6933282376
567
0,0040819753
140
0,0286072173
354
0,6842353293
568
0,0039207432
141
0,0300502657
355
0,6749663190
569
0,0037603922
142
0,0315017608
356
0,6655139880
570
0,0036008268
143
0,0329754081
357
0,6559016302
571
0,0034418874
144
0,0344620948
358
0,6461269695
572
0,0032739613
145
0,0359697560
359
0,6361980107
573
0,0031125420
146
0,0374812850
360
0,6261242695
574
0,0029469447
147
0,0390053679
361
0,6159109932
575
0,0027870464
148
0,0405349170
362
0,6055783538
576
0,0026201758
149
0,0420649094
363
0,5951123086
577
0,0024625616
150
0,0436097542
364
0,5845403235
578
0,0023017254
151
0,0451488405
365
0,5738524131
579
0,0021461583
152
0,0466843027
366
0,5630789140
580
0,0019841140
153
0,0482165720
367
0,5522051258
581
0,0018348265
154
0,0497385755
368
0,5412553448
582
0,0016868083
155
0,0512556155
369
0,5302240895
583
0,0015443219
156
0,0527630746
370
0,5191234970
584
0,0013902494
157
0,0542452768
371
0,5079817500
585
0,0012577884
158
0,0557173648
372
0,4967708254
586
0,0011250155
159
0,0571616450
373
0,4855253091
587
0,0009885988
160
0,0585915683
374
0,4742453214
588
0,0008608443
161
0,0599837480
375
0,4629308085
589
0,0007458025
162
0,0613455171
376
0,4515996535
590
0,0006239376
163
0,0626857808
377
0,4402553754
591
0,0005107388
164
0,0639715898
378
0,4289119920
592
0,0004026540
165
0,0652247106
379
0,4175696896
593
0,0002949531
166
0,0664367512
380
0,4062317676
594
0,0002043017
167
0,0676075985
381
0,3949211761
595
0,0001094383
168
0,0687043828
382
0,3836350013
596
0,0000134949
169
0,0697630244
383
0,3723795546
597
-0,0000617334
170
0,0707628710
384
-0,3611589903
598
-0,0001446380
171
0,0717002673
385
-0,3499914122
599
-0,0002098337
172
0,0725682583
386
-0,3388722693
600
-0,0002896981
173
0,0733620255
387
-0,3278113727
601
-0,0003501175
174
0,0741003642
388
-0,3168278913
602
-0,0004095121
175
0,0747452558
389
-0,3059098575
603
-0,0004606325
176
0,0753137336
390
-0,2950716717
604
-0,0005145572
177
0,0758008358
391
-0,2843214189
605
-0,0005564576
178
0,0761992479
392
-0,2736634040
606
-0,0005946118
179
0,0764992170
393
-0,2631053299
607
-0,0006341594
180
0,0767093490
394
-0,2526480309
608
-0,0006650415
181
0,0768173975
395
-0,2423016884
609
-0,0006917937
182
0,0768230011
396
-0,2320690870
610
-0,0007215391
183
0,0767204924
397
-0,2219652696
611
-0,0007319357
184
0,0765050718
398
-0,2119735853
612
-0,0007530001
185
0,0761748321
399
-0,2021250176
613
-0,0007630793
186
0,0757305756
400
-0,1923966745
614
-0,0007757977
187
0,0751576255
401
-0,1828172548
615
-0,0007801449
188
0,0744664394
402
-0,1733808172
616
-0,0007803664
189
0,0736406005
403
-0,1640958855
617
-0,0007779869
190
0,0726774642
404
-0,1549607071
618
-0,0007834332
191
0,0715826364
405
-0,1459766491
619
-0,0007724848
192
0,0703533073
406
-0,1371551761
620
-0,0007681371
193
0,0689664013
407
-0,1285002850
621
-0,0007490598
194
0,0674525021
408
-0,1200077984
622
-0,0007440941
195
0,0657690668
409
-0,1116826931
623
-0,0007255043
196
0,0639444805
410
-0,1035329531
624
-0,0007157736
197
0,0619602779
411
-0,0955533352
625
-0,0006941614
198
0,0598166570
412
-0,0877547536
626
-0,0006777690
199
0,0575152691
413
-0,0801372934
627
-0,0006540333
200
0,0550460034
414
-0,0726943300
628
-0,0006312493
201
0,0524093821
415
-0,0654409853
629
-0,0006132747
202
0,0495978676
416
-0,0583705326
630
-0,0005870930
203
0,0466303305
417
-0,0514804176
631
-0,0005677802
204
0,0434768782
418
-0,0447806821
632
-0,0005466565
205
0,0401458278
419
-0,0382776572
633
-0,0005226564
206
0,0366418116
420
-0,0319531274
634
-0,0005040714
207
0,0329583930
421
-0,0258227288
635
-0,0004893791
208
0,0290824006
422
-0,0198834129
636
-0,0004875227
209
0,0250307561
423
-0,0141288827
637
-0,0004947518
210
0,0207997072
424
-0,0085711749
638
-0,0005617692
211
0,0163701258
425
-0,0032086896
639
-0,0005525280
212
0,0117623832
426
0,0019765601
213
0,0069636862
427
0,0069636862
0
Фильтр-прототип, p(n), может также выводиться из Таблицы 4 посредством одной или более математических операций, таких как округление, субдискретизация, интерполяция и прореживание.
Хотя настройка связанной с SBR управляющей информации обычно не зависит от подробностей транспозиции (как рассмотрено ранее), в некоторых вариантах осуществления определенные элементы управляющих данных могут одновременно передаваться в контейнере расширения eSBR (bs_extension_id==EXTENSION_ID_ESBR) для улучшения качестве регенерированного сигнала. Некоторые из одновременно передаваемых элементов могут включать в себя данные уровня шума (например, коэффициенты масштабирования уровня собственных шумов и параметр, указывающий направление, направление по частоте или по времени, дельта-кодирования для каждого уровня шума), данные обратной фильтрации (например, параметр, указывающий режим обратной фильтрации, выбранный из отсутствия обратной фильтрации, низкого уровня обратной фильтрации, промежуточного уровня обратной фильтрации и высокого уровня обратной фильтрации, и данные отсутствующих гармоник (например, параметр, указывающий, должна ли синусоида добавляться в конкретный частотный диапазон регенерированного высокого диапазона). Все из этих элементов опираются на синтезированную эмуляцию транспозера декодера, выполняемого в кодере, и поэтому при настройке надлежащим образом для выбранного транспозера могут повышать качество регенерированного сигнала.
Конкретно, в некоторых вариантах осуществления, данные отсутствующих гармоник и управляющие данные обратной фильтрации передаются в контейнере расширения eSBR (вместе с другими параметрами битового потока Таблицы 3) и настраиваются для гармонического транспозера eSBR. Дополнительная битовая скорость, требуемая для передачи этих двух классов метаданных для гармонического транспозера eSBR, является относительно низкой. Поэтому, отправка настроенных данных отсутствующих гармоник и/или управляющих данных обратной фильтрации в контейнере расширения eSBR повысит качество аудио, формируемого транспозером, при лишь минимальном влиянии на битовую скорость. Чтобы обеспечить обратную совместимость с унаследованными декодерами, параметры, настроенные для операции спектрального переноса SBR, могут также отправляться в битовом потоке как часть управляющих данных SBR с использованием либо неявной, либо явной сигнализации.
Следует понимать, что в пределах объема прилагаемой формулы изобретения, изобретение может быть практически реализовано иначе, чем конкретно описано здесь. Любые ссылочные позиции, содержащиеся в следующей формуле изобретения, приведены только в иллюстративных целях и не должны использоваться, чтобы толковать или ограничивать формулу изобретения каким-либо образом. Различные аспекты настоящего раскрытия будут понятны из следующих пронумерованных примерных вариантов осуществления (EEE):
EEE1. Способ выполнения высокочастотного восстановления аудиосигнала, причем способ содержит:
прием закодированного битового потока аудио, причем закодированный битовый поток аудио включает в себя данные аудио, представляющие часть полосы низких частот аудиосигнала, и метаданные высокочастотного восстановления;
декодирование данных аудио, чтобы сгенерировать декодированный аудиосигнал в полосе низких частот;
извлечение из закодированного битового потока аудио метаданных высокочастотного восстановления, метаданные высокочастотного восстановления включают в себя рабочие параметры для процесса высокочастотного восстановления, рабочие параметры включают в себя параметр режима вставки заплаты, расположенный в контейнере расширения закодированного битового потока аудио, причем первое значение параметра режима вставки заплаты указывает спектральный перенос, и второе значение параметра режима вставки заплаты указывает гармоническую транспозицию посредством расширения частоты фазового вокодера;
фильтрацию декодированного аудиосигнала в полосе низких частот, чтобы сгенерировать отфильтрованный аудиосигнал в полосе низких частот;
регенерацию части полосы высоких частот аудиосигнала с использованием отфильтрованного аудиосигнала в полосе низких частот и метаданных высокочастотного восстановления, причем регенерация включает в себя спектральный перенос, если параметр режима вставки заплаты имеет первое значение, и регенерация включает в себя гармоническую транспозицию посредством расширения частоты фазового вокодера, если параметр режима вставки заплаты имеет второе значение; и
комбинирование отфильтрованного аудиосигнала в полосе низких частот с регенерированной частью полосы высоких частот для формирования широкополосного аудиосигнала.
EEE2. Способ по EEE 1, причем контейнер расширения включает в себя управляющие данные обратной фильтрации, подлежащие использованию, когда параметр режима вставки заплаты равен второму значению.
EEE3. Способ по любому одному из EEE 1-2, причем контейнер расширения дополнительно включает в себя управляющие данные отсутствующих гармоник, подлежащие использованию, когда параметр режима вставки заплаты равен второму значению.
EEE4. Способ по любому предшествующему EEE, причем закодированный битовый поток аудио дополнительно включает в себя элемент наполнения с идентификатором, указывающим начало элемента наполнения, и данными наполнения после идентификатора, причем данные наполнения включают в себя контейнер расширения.
EEE5. Способ по EEE 4, причем идентификатор представляет собой трех-битное целое число без знака со старшим битом, передаваемым первым, и имеет значение 0×6.
EEE6. Способ по EEE 4 или EEE 5, причем данные наполнения включают в себя нагрузку расширения, нагрузка расширения включает в себя данные расширения репликации спектрального диапазона, и нагрузка расширения идентифицируется первым четырех-битным целым числом без знака со старшим битом, передаваемым первым, и имеющим значение ‘1101’ или ‘1110’, и, опционально,
причем данные расширения репликации спектрального диапазона включают в себя:
опциональный заголовок репликации спектрального диапазона,
данные репликации спектрального диапазона после заголовка, и
элемент расширения репликации спектрального диапазона после данных репликации спектрального диапазона, и причем метка включена в элемент расширения репликации спектрального диапазона.
EEE7. Способ по любому одному из EEE 1-6, причем метаданные высокочастотного восстановления включают в себя коэффициенты масштабирования огибающей, коэффициенты масштабирования уровня собственных шумов, информацию временной/частотной сетки или параметр, указывающий частоту перехода.
k
0
EEE8. Способ по любому одному из EEE 1-7, причем фильтрация выполняется банком фильтров анализа, который включает в себя фильтры анализа, h(n), которые представляют собой модулированные версии фильтра-прототипа, p(n), в соответствии с:
0
где p(n) представляет собой вещественно-значный симметричный или ассиметричный фильтр-прототип, M представляет собой количество каналов в банке фильтров анализа, и N представляет собой порядок фильтра-прототипа.
0
EEE9. Способ по EEE 8, причем фильтр-прототип, p(n), выводится из коэффициентов Таблицы 4 в настоящем документе.
0
EEE10. Способ по EEE 8, причем фильтр-прототип, p(n), выводится из коэффициентов Таблицы 4 в настоящем документе посредством одной или более математических операций, выбранных из группы, состоящей из округления, субдискретизации, интерполяции или прореживания.
EEE11. Способ по любому одному из EEE 1-10, причем фазовый сдвиг добавляется в отфильтрованный аудиосигнал в полосе низких частот после фильтрации и компенсируется перед комбинированием, чтобы уменьшить сложность способа.
EEE12. Способ по любому предшествующему EEE, причем контейнер расширения дополнительно включает в себя метку, указывающую, используется ли дополнительная предварительная обработка во избежание прерываний в форме спектральной огибающей части полосы высоких частот, когда параметр режима вставки заплаты равен первому значению, причем первое значение метки включает дополнительную предварительную обработку, и второе значение метки отключает дополнительную предварительную обработку.
EEE13. Способ по EEE 12, причем дополнительная предварительная обработка включает в себя вычисление кривой предварительного усиления с использованием коэффициента линейного фильтра предсказания.
EEE14. Способ по любому одному из EEE 1-13, причем контейнер расширения представляет собой обратно совместимый контейнер расширения.
EEE15. Способ по любому одному из EEE 1-14, причем закодированный поток аудио закодирован в соответствии с форматом, и причем контейнер расширения представляет собой контейнер расширения, который определен по меньшей мере в одной унаследованной версии упомянутого формата.
EEE16. Не-временный считываемый компьютером носитель, содержащий инструкции, которые при исполнении процессором выполняют способ по любому одному из EEE 1-15.
EEE17. Модуль обработки аудио для выполнения высокочастотного восстановления аудиосигнала, причем модуль обработки аудио сконфигурирован, чтобы выполнять способ по любому одному из EEE 1-15.