АУДИОКОДЕР, АУДИОДЕКОДЕР, СПОСОБ КОДИРОВАНИЯ АУДИОСИГНАЛА И СПОСОБ ДЕКОДИРОВАНИЯ КОДИРОВАННОГО АУДИОСИГНАЛА
AUDIO ENCODER, AUDIO DECODER, AUDIO SIGNAL ENCODING METHOD AND METHOD OF DECODING ENCODED AUDIO SIGNAL

Варианты осуществления относятся к аудиокодированию, в частности, к способу и устройству для кодирования аудиосигнала с использованием кодирования с предсказанием и к способу и устройству для декодирования кодированного аудиосигнала с использованием декодирования с предсказанием. Предпочтительные варианты осуществления относятся к способам и устройствам для адаптивного к тону спектрального предсказания. Дополнительные предпочтительные варианты осуществления относятся к перцептуальному кодированию тональных аудиосигналов посредством кодирования с преобразованием с помощью инструментария межкадрового предсказания в частотной области.
Для повышения качества кодированных тональных сигналов, в особенности, при низких битрейтах, современные аудиокодеры с преобразованием используют очень длинные преобразования и/или длительное предсказание и/или пред-/постфильтрацию. Однако, длинное преобразование предполагает длинную алгоритмическую задержку, которая не желательна для сценариев с короткой задержкой связи. Поэтому, в последнее время получили широкое распространение предсказатели с очень короткой задержкой на основе мгновенного основного тона. Кодек IETF (Инженерной рабочей группы Интернета) Opus использует адаптивную к тону пред- и постфильтрацию в его тракте кодирования по алгоритму CELT (ограниченной энергии преобразования с перекрытием) в частотной области [J. M. Valin, K. Vos, and T. Terriberry, «Definition of the Opus audio codec», 2012, IETF RFC 6716. http://tools.ietf.org/html/rfc67161], и кодек 3GPP (3rd Generation Partnership Project) EVS (Enhanced Voice Services) обеспечивает долговременный гармонический постфильтр для перцептуального улучшения декодированных с преобразованием сигналов [3GPP TS 26.443, «Codec for Enhanced Voice Services (EVS)», Release 12, Dec. 2014]. Оба этих подхода работают во временной области с полностью декодированной формой сигнала, что затрудняет и/или удорожает их применение частотно-избирательным образом (обе схемы обеспечивают только простой фильтр низких частот для некоторой частотной избирательности). Таким образом, подходящая альтернатива долгосрочному предсказанию (LTP) или пред-/постфильтрации (PPF) во временной области обеспечивается предсказанием в частотной области (FDP), подобно тому, как это поддерживается в MPEG-2 AAC [ISO/IEC 13818-7, «Information technology - Part 7: Advanced Audio Coding (AAC)», 2006]. Данный способ, хотя и способствует частотной избирательности, имеет свои недостатки, которые описаны в дальнейшем.
Предложенный выше способ FDP имеет два недостатка по сравнению с другими инструментами. Во-первых, способ FDP требует высокой сложности вычислений. В более подробном изложении, кодирование с линейным предсказанием, по меньшей мере, второго порядка (т.е. по бинам канального преобразования последних двух кадров) применяется к сотням спектральных бинов для каждого кадра и канала в наихудшем случае предсказания во всех диапазонах масштабных коэффициентов [ISO/IEC 13818-7, «Information technology - Part 7: Advanced Audio Coding (AAC)», 2006]. Во-вторых, способ FDP содержит ограниченный общий выигрыш от предсказания. Точнее, эффективность предсказания ограничена потому, что зашумленные составляющие между предсказываемыми гармоническими тональными спектральными частями также подвергаются действию предсказания, что вносит ошибки, так как данные зашумленные части обычно не предсказуемы.
Высокая сложность обусловлена способностью предсказателей к обратной адаптации. Это означает, что коэффициенты предсказания для каждого бина должны рассчитываться на основании ранее переданных бинов. Следовательно, численные погрешности между кодером и декодером могут приводить к ошибкам восстановления, обусловленным расходящимися коэффициентами предсказания. Чтобы решить упомянутую проблему, следует гарантировать идентичную адаптацию строго по битам. Дополнительно, даже если группы предсказателей выключаются в некоторых кадрах, адаптация должна выполняться всегда для того, чтобы поддерживать обновление коэффициентов предсказания.
Поэтому, целью настоящего изобретения является разработка концепции для кодирования аудиосигнала и/или декодирования кодированного аудиосигнала, которая избегает по меньшей мере одну (например, обе) из вышеупомянутых проблем и приводит к варианту осуществления, более эффективному и наименее затратному в вычислительном отношении.
Данная задача решается, предложенными независимыми пунктами формулы изобретения.
Предпочтительные варианты осуществления определяются зависимыми пунктами формулы изобретения.
Варианты осуществления обеспечивают кодер для кодирования аудиосигнала. Кодер сконфигурирован с возможностью кодирования аудиосигнала в области преобразования или области банка фильтров, при этом кодер сконфигурирован с возможностью определения спектральных коэффициентов аудиосигнала для текущего кадра и по меньшей мере одного предыдущего кадра, причем кодер сконфигурирован с возможностью селективного применения кодирования с предсказанием к множеству отдельных спектральных коэффициентов или групп спектральных коэффициентов, причем кодер сконфигурирован с возможностью определения интервального значения, причем кодер сконфигурирован с возможностью выбора множества отдельных спектральных коэффициентов или групп спектральных коэффициентов, к которым применяется кодирование с предсказанием, на основании интервального значения, которое может передаваться как сторонняя информация с кодированным аудиосигналом.
Дополнительные варианты осуществления обеспечивают декодер для декодирования кодированного аудиосигнала (например, кодированного вышеописанным кодером). Декодер сконфигурирован с возможностью декодирования кодированного аудиосигнала в области преобразования или области банка фильтров, при этом декодер сконфигурирован с возможностью синтаксического анализа кодированного аудиосигнала для получения кодированных спектральных коэффициентов аудиосигнала для текущего кадра и по меньшей мере одного предыдущего кадра, и причем декодер сконфигурирован с возможностью селективного применения декодирования с предсказанием к множеству отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов, причем декодер может быть сконфигурирован с возможностью выбора множества отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов, к которым применяется декодирование с предсказанием на основании переданного интервального значения.
В соответствии с концепцией настоящего изобретения, кодирование с предсказанием применяется (только) к выбранным спектральным коэффициентам. Спектральные коэффициенты, к которым применяется кодирование с предсказанием, могут выбираться в зависимости от характеристик сигнала. Например, благодаря неприменению кодирования с предсказанием к зашумленным составляющим сигнала, вышеупомянутые ошибки, вносимые предсказанием непредсказуемых зашумленных составляющих сигнала избегаются. В то же самое время можно снизить сложность вычислений, поскольку кодирование с предсказанием применяется только к выбранным спектральным составляющим.
Например, перцептуальное кодирование тональных аудиосигналов может выполняться (например, кодером) посредством кодирования с преобразованием с помощью способов управляемого/адаптивного межкадрового предсказания в спектральной области. Эффективность предсказания в частотной области (FDP) можно повысить, и сложность вычислений можно снизить посредством применения предсказания только к спектральным коэффициентам, например, вблизи гармонических составляющих сигнала, расположенных в позициях целых кратных величин основной частоты или тона, о которых сообщается в соответствующем битовом потоке из кодера в декодер, например, в качестве интервального значения. Варианты осуществления настоящего изобретения могут быть реализованы или интегрированы, предпочтительно, в аудиокодеке MPEG-H 3D, но применимы к любой системе аудиокодирования с преобразованием, например, MPEG-2 AAC (усовершенствованное аудиокодирование).
Дополнительные варианты осуществления обеспечивают способ кодирования аудиосигнала в области преобразования или области банка фильтров, при этом способ содержит этапы, на которых:
- определяют спектральные коэффициенты аудиосигнала для текущего кадра и по меньшей мере одного предыдущего кадра;
- определяют интервальное значение; и
- селективно применяют кодирование с предсказанием к множеству отдельных спектральных коэффициентов или групп спектральных коэффициентов, причем множество отдельных спектральных коэффициентов или групп спектральных коэффициентов, к которым применяют кодирование с предсказанием, выбирают на основании интервального значения.
Дополнительные варианты осуществления обеспечивают способ декодирования кодированного аудиосигнала в области преобразования или области банка фильтров, при этом способ содержит этапы, на которых:
- синтаксически анализируют кодированный аудиосигнал для получения кодированных спектральных коэффициентов аудиосигнала для текущего кадра и по меньшей мере одного предыдущего кадра;
- получают интервальное значение; и
- селективно применяют декодирование с предсказанием к множеству отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов, причем множество отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов, к которым применяют декодирование с предсказанием, выбирают на основании интервального значения.
Варианты осуществления настоящего изобретения описаны в настоящей заявке со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1 - схематичная блок-схема кодера для кодирования аудиосигнала, в соответствии с вариантом осуществления;
Фиг. 2 - график амплитуды аудиосигнала в зависимости от частоты для текущего кадра, и соответствующие выбранные спектральные коэффициенты, к которым применяется кодирование с предсказанием, в соответствии с вариантом осуществления;
Фиг. 3 - график амплитуды аудиосигнала в зависимости от частоты для текущего кадра, и соответствующие выбранные спектральные коэффициенты, которые подвергаются действию предсказания в соответствии с MPEG-2 AAC;
Фиг. 4 - схематичная блок-схема декодера для декодирования аудиосигнала, в соответствии с вариантом осуществления;
Фиг. 5 - блок-схема последовательности операций способа кодирования аудиосигнала в соответствии с вариантом осуществления; и
Фиг. 6 - блок-схема последовательности операций способа декодирования аудиосигнала в соответствии с вариантом осуществления.
Одинаковые или эквивалентные элементы или элементы с одинаковыми или эквивалентными функциями обозначены в последующем описании одинаковыми или эквивалентными числовыми позициями.
В последующем описании, изложено множество подробных сведений для представления более полного пояснения вариантов осуществления настоящего изобретения. Однако специалисту в данной области техники будет очевидно, что варианты осуществления настоящего изобретения можно практически реализовать без данных подробных сведений. В других случаях, общеизвестные конструкции и устройства показаны в виде блок-схемы, а не подробно, чтобы избежать трудности понимания вариантов осуществления настоящего изобретения. Дополнительно, признаки разных вариантов осуществления, описанных в дальнейшем, можно объединять друг с другом, если специально не оговорено иначе.
Фиг. 1 представляет схематичную блок-схему кодера 100 для кодирования аудиосигнала 102, в соответствии с вариантом осуществления. Кодер 100 сконфигурирован с возможностью кодирования аудиосигнала 102 в области преобразования или области 104 банка фильтров (например, частотной области или спектральной области), причем кодер 100 сконфигурирован с возможностью определения спектральных коэффициентов 106_t0_f1-106_t0_f6 аудиосигнала 102 для текущего кадра 108_t0 и спектральных коэффициентов 106_t-1_f1-106_t-1_f6 аудиосигнала для по меньшей мере одного предыдущего кадра 108_t-1. Дополнительно, кодер 100 сконфигурирован с возможностью селективного применения кодирования с предсказанием к множеству отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5, причем кодер 100 сконфигурирован с возможностью определения интервального значения, причем кодер 100 сконфигурирован с возможностью выбора множества отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5, к которым применяется кодирование с предсказанием, на основании интервального значения.
Другими словами, кодер 100 сконфигурирован с возможностью селективного применения кодирования с предсказанием к множеству отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5, выбранных на основании единственного интервального значения, переданного как дополнительная информация.
Данное интервальное значение может соответствовать частоте (например, основной частоте гармонического тона (аудиосигнала 102)), которая определяет вместе с ее целыми кратными центра всех групп спектральных коэффициентов, к которым применяется предсказание: Первая группа может быть центрирована вблизи этой частоты, вторая группа может быть центрирована вблизи этой частоты, умноженной на два, третья группа может быть центрирована вблизи этой частоты, умноженной на три, и так далее. Знание данных центральных частот допускает вычисление коэффициентов предсказания для предсказания соответствующих синусоидальных составляющих сигнала (например, основного тона и обертонов гармонических сигналов). Таким образом, сложная и подверженная ошибкам обратная адаптация коэффициентов предсказания больше не требуется.
В вариантах осуществления кодер 100 может быть сконфигурирован с возможностью определения одного интервального значения на каждый кадр.
В вариантах осуществления множество отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5 может быть разделено по меньшей мере одним спектральным коэффициентом 106_t0_f3.
В вариантах осуществления кодер 100 может быть сконфигурирован с возможностью применения кодирования с предсказанием к множеству отдельных спектральных коэффициентов, которые разделены по меньшей мере одним спектральным коэффициентом, например, к двум отдельным спектральным коэффициентам, которые разделены по меньшей мере одним спектральным коэффициентом. Дополнительно, кодер 100 может быть сконфигурирован с возможностью применения кодирования с предсказанием к множеству групп спектральных коэффициентов (при этом, каждая из групп содержит по меньшей мере два спектральных коэффициента), которые разделены по меньшей мере одним спектральным коэффициентом, например, к двум группам спектральных коэффициентов, которые разделены по меньшей мере одним спектральным коэффициентом. Дополнительно, кодер 100 может быть сконфигурирован с возможностью применения кодирования с предсказанием к множеству отдельных спектральных коэффициентов и/или группам спектральных коэффициентов, которые разделены по меньшей мере одним спектральным коэффициентом, например, к по меньшей мере, одному отдельному спектральному коэффициенту и по меньшей мере одной группе спектральных коэффициентов, которые разделены по меньшей мере одним спектральным коэффициентом.
В примере, показанном на фиг. 1, кодер 100 сконфигурирован с возможностью определения шести спектральных коэффициентов 106_t0_f1-106_t0_f6 для текущего кадра 108_t0 и шести спектральных коэффициентов 106_t-1_f1-106_t-1_f6 для предыдущего кадра 108_t-1. Таким образом, кодер 100 сконфигурирован с возможностью селективного применения кодирования с предсказанием к отдельному второму спектральному коэффициенту 106_t0_f2 текущего кадра и к группе спектральных коэффициентов, состоящей из четвертого и пятого спектральных коэффициентов 106_t0_f4 и 106_t0_f5 текущего кадра 108_t0. Как можно видеть, отдельный второй спектральный коэффициент 106_t0_f2 и группа спектральных коэффициентов, состоящая из четвертого и пятого спектральных коэффициентов 106_t0_f4 и 106_t0_f5 отделены друг от друга третьим спектральным коэффициентом 106_t0_f3.
Следует отметить, что термин «селективно» в контексте настоящего изобретения относится к применению кодирования с предсказанием (только) к выбранным спектральным коэффициентам. Другими словами, кодирование с предсказанием не обязательно применяется ко всем спектральным коэффициентам, а только к выбранным отдельным спектральным коэффициентам или группам спектральных коэффициентов, причем выбранным отдельным спектральным коэффициентам и/или группам спектральных коэффициентов, которые могут быть отделены друг от друга по меньшей мере одним спектральным коэффициентом. Другими словами, кодирование с предсказанием может блокироваться для по меньшей мере одного спектрального коэффициента, которым разделяется выбранные множество отдельных спектральных коэффициентов или групп спектральных коэффициентов.
В вариантах осуществления кодер 100 может быть сконфигурирован с возможностью селективного применения кодирования с предсказанием к множеству отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5 текущего кадра 108_t0 на основании, по меньшей мере, соответствующего множества отдельных спектральных коэффициентов 106_t-1_f2 или групп спектральных коэффициентов 106_t-1_f4 и 106_t-1_f5 предудущего кадра 108_t-1.
Например, кодер 100 может быть сконфигурирован с возможностью кодирования с предсказанием множества отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5 текущего кадра 108_t0, посредством кодирования ошибок предсказания между множеством предсказанных отдельных спектральных коэффициентов 110_t0_f2 или групп предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 текущего кадра 108_t0 и множеством отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5 текущего кадра (или их квантованными версиями).
На фиг. 1, кодер 100 кодирует отдельный спектральный коэффициент 106_t0_f2 и группу спектральных коэффициентов, состоящую из спектральных коэффициентов 106_t0_f4 и 106_t0_f5, посредством кодирования ошибок предсказания между предсказанным отдельным спектральным коэффициентом 110_t0_f2 текущего кадра 108_t0 и отдельным спектральным коэффициентом 106_t0_f2 текущего кадра 108_t0 и между группой предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 текущего кадра и группой спектральных коэффициентов 106_t0_f4 и 106_t0_f5 текущего кадра.
Другими словами, второй спектральный коэффициент 106_t0_f2 кодируется посредством кодирования ошибки предсказания (или разности) между предсказанным вторым спектральным коэффициентом 110_t0_f2 и (фактическим или определенным) вторым спектральным коэффициентом 106_t0_f2, при этом четвертый спектральный коэффициент 106_t0_f4 кодируется посредством кодирования ошибки предсказания (или разности) между предсказанным четвертым спектральным коэффициентом 110_t0_f4 и (фактическим или определенным) четвертым спектральным коэффициентом 106_t0_f4, и причем пятый спектральный коэффициент 106_t0_f5 кодируется посредством кодирования ошибки предсказания (или разности) между предсказанным пятым спектральным коэффициентом 110_t0_f5 и (фактическим или определенным) пятым спектральным коэффициентом 106_t0_f5.
В варианте осуществления кодер 100 может быть сконфигурирован с возможностью определения множества предсказанных отдельных спектральных коэффициентов 110_t0_f2 или групп предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 для текущего кадра 108_t0 при посредстве соответствующих фактических версий множества отдельных спектральных коэффициентов 106_t-1_f2 или групп спектральных коэффициентов 106_t-1_f4 и 106_t-1_f5 предыдущего кадра 108_t-1.
Другими словами, кодер 100 в ходе вышеописанного процесса определения может использовать непосредственно множество фактических отдельных спектральных коэффициентов 106_t-1_f2 или групп фактических спектральных коэффициентов 106_t-1_f4 и 106_t-1_f5 предыдущего кадра 108_t-1, где 106_t-1_f2, 106_t-1_f4 и 106_t-1_f5 представляют собой исходные, но еще не квантованные спектральные коэффициенты или группы спектральных коэффициентов, соответственно, в действительности полученные кодером 100 таким образом, что упомянутый кодер может действовать в области преобразования или области 104 банка фильтров.
Например, кодер 100 может быть сконфигурирован с возможностью определения второго предсказанного спектрального коэффициента 110_t0_f2 текущего кадра 108_t0 на основании соответствующей, но еще не квантованной версии второго спектрального коэффициента 106_t-1_f2 предыдущего кадра 10 108_t-1, предсказанного четвертого спектрального коэффициента 110_t0_f4 текущего кадра 108_t0 на основании соответствующей, но еще не квантованной версии четвертого спектрального коэффициента 106_t-1_f4 предыдущего кадра 108_t-1, и предсказанного пятого спектрального коэффициента 110_t0_f5 текущего кадра 108_t0 на основании соответствующей, но еще не квантованной версии пятого спектрального коэффициента 106_t-1_f5 предыдущего кадра.
Посредством приведенного подхода, схема кодирования и декодирования с предсказанием может демонстрировать своего рода формирование гармоник шума квантования, поскольку соответствующий декодер, вариант осуществления которого описан в дальнейшем со ссылкой на фиг. 4, может использовать на вышеупомянутом этапе определения только переданные квантованные версии множества отдельных спектральных коэффициентов 106_t-1_f2 или множества групп спектральных коэффициентов 106_t-1_f4 и 106_t-1_f5 предыдущего кадра 108_t-1 для декодирования с предсказанием.
Хотя данное формирование гармонического шума, подобное тому, как, например, традиционно осуществляется при долгосрочном предсказании (LTP) во временной области, может быть субъективно предпочтительным для кодирования с предсказанием, в некоторых случаях оно может быть нежелательным, поскольку оно приводит к нежелательной избыточной величине тональности, вносимой в декодированный аудиосигнал. По данной причине, в дальнейшем описано альтернативная схема кодирования с предсказанием, которая полностью синхронизирована с соответствующим декодированием и, по существу, использует только любые возможные выигрыши от предсказания, но не приводит к формированию шума квантования. В соответствии с данным альтернативным вариантом осуществления кодирования, кодер 100 может быть сконфигурирован с возможностью определения множества предсказанных отдельных спектральных коэффициентов 110_t0_f2 или групп предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 для текущего кадра 108_t0, с использованием соответствующих квантованных версий множества отдельных спектральных коэффициентов 106_t-1_f2 или групп спектральных коэффициентов 106_t-1_f4 и 106_t-1_f5 предыдущего кадра 108_t-1.
Например, кодер 100 может быть сконфигурирован с возможностью определения второго предсказанного спектрального коэффициента 110_t0_f2 текущего кадра 108_t0 на основании соответствующей квантованной версии второго спектрального коэффициента 106_t-1_f2 предыдущего кадра 108_t-1, предсказанного четвертого спектрального коэффициента 110_t0_f4 текущего кадра 108_t0 на основании соответствующей квантованной версии четвертого спектрального коэффициента 106_t-1_f4 предыдущего кадра 108_t-1, и предсказанного пятого спектрального коэффициента 110_t0_f5 текущего кадра 108_t0 на основании соответствующей квантованной версии пятого спектрального коэффициента 106_t-1_f5 предыдущего кадра.
Дополнительно, кодер 100 может быть сконфигурирован с возможностью вывода коэффициентов 112_f2, 114_f2, 112_f4, 114_f4, 112_f5 и 114_f5 предсказания из интервального значения и вычисления множества предсказанных отдельных спектральных коэффициентов 110_t0_f2 или групп предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 для текущего кадра 108_t0, с использованием соответствующих квантованных версий множества отдельных спектральных коэффициентов 106_t-1_f2 и 106_t-2_f2 или групп спектральных коэффициентов 106_t-1_f4, 106_t-2_f4, 106_t-1_f5 и 106_t-2_f5 по меньшей мере двух предыдущих кадров 108_t-1 и 108_t-2 и с использованием выведенных коэффициентов 112_f2, 114_f2, 112_f4, 114_f4, 112_f5 и 114_f5 предсказания.
Например, кодер 100 может быть сконфигурирован с возможностью вывода коэффициентов 112_f2 и 114_f2 предсказания для второго спектрального коэффициента 106_t0_f2 из интервального значения, вывода коэффициентов 112_f4 и 114_f4 предсказания для четвертого спектрального коэффициента 106_t0_f4 из интервального значения и вывода коэффициентов 112_f5 и 114_f5 предсказания для пятого спектрального коэффициента 106_t0_f5 из интервального значения.
Например, вывод коэффициентов предсказания может производиться следующим образом: Если интервальное значение соответствует частоте f0 или ее кодированной версии, то центральная частота K-той группы спектральных коэффициентов, для которых разрешено предсказание, равна fc=K*f0. Если частота дискретизации равна fs, и размер скачка преобразования (сдвига между последовательными кадрами) равен N, то идеальные коэффициенты предсказания в K-той группе, при допущении синусоидального сигнала с частотой fc, равны:
p1=2*cos(N*2*pi*fc/fs) и p2 =-1.
Если, например, оба спектральных коэффициента 106_t0_f4 и 106_t0_f5 находятся в упомянутой группе, то коэффициенты предсказания равны:
112_f4=112_f5=2*cos(N*2*pi*fc/fs) и 114_f4=114_f5=-1.
По причине стабильности можно ввести коэффициент d демпфирования, приводящий к модифицированным коэффициентам предсказания:
2
112_f4'=112_f5'=d*2*cos(N*2*pi*fc/fs), 114_f4'=114_f5'=d.
Поскольку интервальное значение передается в кодированном аудиосигнале 120, то декодер может выводить в точности такие же коэффициенты предсказания, 212_f4=212_f5=2*cos(N*2*pi*fc/fs) и 114_f4=114_f5=-1. Если применяется коэффициент демпфирования, то коэффициенты могут быть соответственно модифицированы.
Как указано на фиг. 1, кодер 100 может быть сконфигурирован с возможностью обеспечения кодированного аудиосигнала 120. Таким образом, кодер 100 может быть сконфигурирован с возможностью включения в кодированный аудиосигнал 120 квантованных версий ошибок предсказания для множества отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5, к которым применяется кодирование с предсказанием. Дополнительно, кодер 100 может быть сконфигурирован с возможностью невключения коэффициентов 112_f2-114_f5 предсказания в кодированный аудиосигнал 120.
Таким образом, кодер 100 может использовать только коэффициенты 112_f2-114_f5 предсказания для вычисления множества предсказанных отдельных спектральных коэффициентов 110_t0_f2 или групп предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 и, на основании их, ошибок предсказания между предсказанным отдельным спектральным коэффициентом 110_t0_f2 или группой предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 и отдельным спектральным коэффициентом 106_t0_f2 или группой предсказанных спектральных коэффициентов 110_t0_f4 и 110_t0_f5 текущего кадра, но не обеспечивает ни отдельных спектральных коэффициентов 106_t0_f4 (или их квантованную версию) или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5 (или их квантованных версий), ни коэффициентов 112_f2-114_f5 предсказания в кодированном аудиосигнале 120. Следовательно, декодер, вариант осуществления которого описан в дальнейшем со ссылкой на фиг. 4, может выводить коэффициенты 112_f2-114_f5 предсказания для вычисления множества предсказанных отдельных спектральных коэффициентов или групп предсказанных спектральных коэффициентов для текущего кадра из интервального значения.
Другими словами, кодер 100 может быть сконфигурирован с возможностью обеспечения кодированного аудиосигнала 120, включающего в себя квантованные версии ошибок предсказания, вместо квантованных версий множества отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5 для множества отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5, к которым применяется кодирование с предсказанием.
Дополнительно, кодер 100 может быть сконфигурирован с возможностью обеспечения кодированного аудиосигнала 102, включающего в себя квантованные версии спектральных коэффициентов 106_t0_f3, посредством которых множество отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5 разделяется так, что имеет место чередование спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5, для которых в кодированный аудиосигнал 120 включаются квантованные версии ошибок прогнозирования, и спектральных коэффициентов 106_t0_f3 или групп спектральных коэффициентов, для которых квантованные версии обеспечиваются без применения кодирования с предсказанием.
В вариантах осуществления кодер 100 может быть дополнительно сконфигурирован с возможностью энтропийного кодирования квантованных версий ошибок предсказания и квантованных версий спектральных коэффициентов 106_t0_f3, которыми разделяется множество отдельных спектральных коэффициентов 106_t0_f2 или групп спектральных коэффициентов 106_t0_f4 и 106_t0_f5, и включения энтропийно-кодированных версий в кодированный аудиосигнал 120 (вместо их неэнтропийно-кодированных версий).
Фиг. 2 представляет график амплитуды аудиосигнала 102 в зависимости от частоты для текущего кадра 108_t0. Дополнительно, на фиг. 2 указаны спектральные коэффициенты в области преобразования или области банка фильтров, определенные кодером 100 для текущего кадра 108_t0 аудиосигнала 102.
Как показано на фиг. 2, кодер 100 может быть сконфигурирован с возможностью селективного применения кодирования с предсказанием к множеству групп 116_1-116_6 спектральных коэффициентов, которые разделяются по меньшей мере одним спектральным коэффициентом. Точнее, в варианте осуществления, показанном на фиг. 2, кодер 100 селективно применяет кодирование с предсказанием к шести группам 116_1-116_6 спектральных коэффициентов, при этом каждая из первых пяти групп 116_1-116_5 спектральных коэффициентов включает в себя три спектральных коэффициента (например, вторая группа 116_2 включает в себя спектральные коэффициенты 106_t0_f8, 106_t0_f9 и 106_t0_f10), причем шестая группа 116_6 спектральных коэффициентов включает в себя два спектральных коэффициента. Таким образом, шесть групп 116_1-116_6 спектральных коэффициентов разделяются (пятью) группами 118_1-118_5 спектральных коэффициентов, к которым кодирование с предсказанием не применяется.
Другими словами, как указано на фиг. 2, кодер 100 может быть сконфигурирован с возможностью селективного применения кодирования с предсказанием к группам 116_1-110_6 спектральных коэффициентов таким образом, что имеет место чередование групп 116_1-116_6 спектральных коэффициентов, к которым применяется кодирование с предсказанием, и групп 118_1-118_5 спектральных коэффициентов, к которым кодирование с предсказанием не применяется.
В вариантах осуществления кодер 100 может быть сконфигурирован с возможностью определения интервального значения (указанного на фиг. 2 стрелками 122_1 и 122_2), причем кодер 100 может быть сконфигурирован с возможностью выбора множества групп 116_1-116_6 спектральных коэффициентов (или множества отдельных спектральных коэффициентов), к которым применяется кодирование с предсказанием, на основании интервального значения.
Интервальное значение может быть, например, разнесением (или расстоянием) между двумя характеристическими частотами аудиосигнала 102, например, пиками 124_1 и 124_2 аудиосигнала. Дополнительно, интервальное значение может быть целым числом спектральных коэффициентов (или индексов спектральных коэффициентов), аппроксимирующим разнесение между двумя характеристическими частотами аудиосигнала. Естественно, интервальное значение может быть также действительным числом или долей или кратной величиной целого числа спектральных коэффициентов, описывающим(ей) разнесение между двумя характеристическими частотами аудиосигнала.
В вариантах осуществления кодер 100 может быть сконфигурирован с возможностью определения мгновенной основной частоты аудиосигнала (102) и вывода интервального значения из мгновенной основной частоты или ее доли или кратной величины.
Например, первый пик 124_1 аудиосигнала 102 может быть мгновенной основной частотой (или тоном, или первой гармоникой) аудиосигнала 102. Следовательно, кодер 100 может быть сконфигурирован с возможностью определения мгновенной основной частоты аудиосигнала 102 и вывода интервального значения из мгновенной основной частоты или ее доли или кратной величины. В таком случае, интервальное значение может быть целым числом (или его долей, или кратной величиной) спектральных коэффициентов, аппроксимирующим разнесение между мгновенной основной частотой 124_1 и второй гармоникой 124_2 аудиосигнала 102.
Естественно, аудиосигнал 102 может содержать, по меньшей мере, три гармоники. Например, аудиосигнал 102, показанный на фиг. 2, содержит шесть гармоник 124_1-124_6, распределенных по спектру таким образом, что аудиосигнал 102 содержит гармонику в позиции каждой целой кратной величины мгновенной основной частотой. Естественно, возможно, что аудиосигнал 102 содержит не все, а только некоторые из гармоник, например, первую, третью и пятую гармоники.
В вариантах осуществления, кодер 100 может быть сконфигурирован с возможностью выбора групп 116_1-116_6 спектральных коэффициентов (или отдельных спектральных коэффициентов), спектрально расположенных в соответствии с сеткой гармоник, определяемой интервальным значением, для кодирования с предсказанием. Таким образом, сетка гармоник, определяемая интервальным значением, описывает периодическое спектральное распределение (эквидистантное разнесение) гармоник в аудиосигнале 102. Другими словами, сетка гармоник, определяемая интервальным значением, может быть последовательностью интервальных значений, описывающих эквидистантное разнесение гармоник аудиосигнала.
Дополнительно, кодер 100 может быть сконфигурирован с возможностью выбора спектральных коэффициентов (например, только таких спектральных коэффициентов), спектральные индексы которых равны или расположены в диапазоне (например, предварительно определенном или переменном) в окрестности множества спектральных индексов, выведенных на основании интервального значения, для кодирования с предсказанием.
По значению разнесения можно вывести индексы (или номера) спектральных коэффициентов, которые представляют гармоники аудиосигнала 102. Например, полагая, что четвертый спектральный коэффициент 106_t0_f4 представляет мгновенную основную частоту аудиосигнала 102, и, полагая, что интервальное значение равно пяти, на основании интервального значения можно вывести спектральный коэффициент, имеющий индекс девять. Как можно видеть на фиг. 2, выведенный таким образом спектральный коэффициент, имеющий индекс девять, т.е. девятый спектральный коэффициент 106_t0_f9, представляет вторую гармонику. Аналогично можно вывести спектральные коэффициенты, имеющие индексы 14, 19, 24 и 29, представляющие третью-шестую гармоники 124_3-124_6. Однако, кодировать с предсказанием можно не только спектральные коэффициенты, имеющие индексы, которые равны множеству спектральных индексов, выведенных на основании интервального значения, но также спектральные коэффициенты, имеющие индексы в пределах заданного диапазона в окрестности множества спектральных индексов, выведенных на основании интервального значения. Например, как показано на фиг. 2, диапазон может равняться трем, так что для кодирования с предсказанием выбирается не множество отдельных спектральных коэффициентов, а множество групп спектральных коэффициентов.
Дополнительно, кодер 100 может быть сконфигурирован с возможностью выбора групп 116_1-116_6 спектральных коэффициентов (или множества отдельных спектральных коэффициентов), к которым применяется кодирование с предсказанием, таким образом, что имеет место периодическое чередование, периодическое с допуском +/-1 спектральных коэффициентов, между группами 116_1-116_6 спектральных коэффициентов (или множеством отдельных спектральных коэффициентов), к которым применяется кодирование с предсказанием, и спектральными коэффициентами, которыми разделяются группы спектральных коэффициентов (или множество отдельных спектральных коэффициентов), к которым применяется кодирование с предсказанием. Допуск +/-1 спектральных коэффициентов может быть необходим, когда расстояние между двумя гармониками аудиосигнала 102 равно не целому интервальному значению (целому по отношению к индексам или номерам спектральных коэффициентов), а его доле или кратной величине. Это также можно видеть на фиг. 2, поскольку стрелки 122_1-122_6 не всегда указывают точно в центр или середину соответствующих спектральных коэффициентов.
Другими словами, аудиосигнал 102 может содержать по меньшей мере две гармонические составляющие 124_1-124_6 сигнала, причем кодер 100 может быть сконфигурирован с возможностью селективного применения кодирования с предсказанием к такому множеству групп 116_1-116_6 спектральных коэффициентов (или отдельных спектральных коэффициентов), которые представляют собой по меньшей мере две гармонические составляющие 124_1-124_6 сигнала или спектральное окружение в окрестности по меньшей мере двух гармонических составляющих 124_1-124_6 сигнала аудиосигнала 102. Спектральное окружение в окрестности по меньшей мере двух гармонических составляющих 124_1-124_6 сигнала может составлять, например, +/-1, 2, 3, 4 или 5 спектральных составляющих.
Таким образом, кодер 100 может быть сконфигурирован с возможностью неприменения кодирование с предсказанием к таким группам 118_1-118_5 спектральных коэффициентов (или множеству отдельных спектральных коэффициентов), которые не представляют собой по меньшей мере две гармонические составляющие 124_1-124_6 сигнала или спектральное окружение по меньшей мере двух гармонических составляющих 124_1-124_6 сигнала аудиосигнала 102. Другими словами, кодер 100 может быть сконфигурирован с возможностью неприменения кодирования с предсказанием к такому множеству групп 118_1-118_5 спектральных коэффициентов (или отдельных спектральных коэффициентов), которые относятся к нетональному фоновому шуму между гармониками 124_1-124_6 сигнала.
Дополнительно, кодер 100 может быть сконфигурирован с возможностью определения интервального значения гармоник, указывающего спектральное разнесение между по меньшей мере двумя гармоническими составляющими 124_1-124_6 сигнала аудиосигнала 102, при этом интервальное значение гармоник указывает такое множество отдельных спектральных коэффициентов или групп спектральных коэффициентов, которые представляют собой по меньшей мере две гармонические составляющие 124_1-124_6 сигнала аудиосигнала 102.
Дополнительно, кодер 100 может быть сконфигурирован с возможностью обеспечения такого кодированного аудиосигнала 120, что кодированный аудиосигнал 120 включает в себя интервальное значение (например, одно интервальное значение на каждый кадр) или (в качестве альтернативы) параметр, из которого можно непосредственно вывести интервальное значение.
Варианты осуществления настоящего изобретения решают две вышеупомянутые проблемы способа FDP посредством введения интервального значения гармоник в процесс FDP, сообщаемого из кодера (передатчика) 100 в соответствующий декодер (приемник) таким образом, чтобы и тот и другой могли работать совершенно синхронно. Упомянутое интервальное значение гармоник может служить указателем мгновенной основной частоты (или тона) одного или более спектров, ассоциированных с кадром, подлежащим декодированию, и идентифицирует, какие спектральные бины (спектральные коэффициенты) следует предсказывать. В частности, предсказанию должны подвергаться только спектральные коэффициенты в окрестности гармонических составляющих сигнала, расположенные (в значениях их индексации) в позициях целых кратных величин основного тона (определяемого интервальным значением гармоник). Фиг. 2 и 3 иллюстрируют подход адаптивного к тону предсказания посредством простого примера, при этом фиг. 3 показана работа современного предсказателя в MPEG-2 AAC, который не предсказывает только в окрестности сетки гармоник, но подвергает действию предсказания каждый спектральный бин ниже некоторой ограничивающей частоты, и причем фиг. 2 изображает такой же предсказатель, модифицированный в соответствии с вариантом осуществления, содержащийся для выполнения предсказания только таких «тональных» бинов, которые находятся вблизи пространственной сетки гармоник.
Сравнение фиг. 2 и 3 обнаруживает два преимущества модификации в соответствии с вариантом осуществления, а именно, (1) в процесс предсказания включается намного меньше спектральных бинов, что снижает сложность (в данном примере, приблизительно на 40%, поскольку предсказываются только три пятых от числа бинов), и (2) бины, относящиеся к нетональному фоновому шуму между гармониками сигнала, не подвергаются предсказанию, что должно повышать эффективность предсказания.
Следует отметить, что интервальное значение гармоник не обязательно должно соответствовать фактическому мгновенному тону входного сигнала, не считая того, что оно может представлять долю или кратную величину истинного тона, если это дает общее повышение эффективности процесса предсказания. Дополнительно, следует подчеркнуть, что интервальное значение гармоник не должно отражать целую кратную величину единицы индексации бина или ширины полосы, но может включать в себя долю упомянутых единиц.
В дальнейшем описано предпочтительно осуществления в аудиокодере типа MPEG.
Адаптивное к тону предсказание интегрируют в MPEG-2 AAC [ISO/IEC 13818-7, «Information technology - Part 7: Advanced Audio Coding (AAC)», 2006] или, с использованием предсказателя, аналогичного тому, как в AAC, в аудиокодек MPEG-H 3D [ISO/IEC 23008-3, «Information technology - High efficiency coding, part 3: 3D audio», 2015]. В частности, одноразрядный признак может записываться и считываться в/из соответствующий(его) битовый(ого) поток(а) для каждого кадра и канала, который не кодируется независимо (для независимых каналов кадров, признак может не передаваться, поскольку предсказание может блокироваться, чтобы обеспечивать независимость). Если признак установлен на единицу, то могут быть записаны и считаны другие 8 битов. Упомянутые 8 битов представляют квантованную версию (например, индекс) интервального значения гармоник для данных кадра и канала. При применении интервального значения гармоник, выведенного из квантованной версии с использованием функции либо линейного, либо нелинейного отображения, процесс предсказания может выполняться в порядке, соответствующем варианту осуществления, представленному на фиг. 2. В предпочтительном варианте, только бины, расположенные на расстоянии, максимум, 1,5 шага бинов в окрестности сетки гармоник, подвергаются действию предсказания. Например, если интервальное значение гармоник указывает линию гармоники с индексом 47.11 бина, то предсказываются только бины с индексами 46, 47 и 48. Однако упомянутое максимальное расстояние может быть установлено по-другому, либо зафиксировано априорно для всех каналов и кадров, либо по-отдельности для каждого канала и кадра на основании интервального значения гармоник.
Фиг. 4 представляет схематичную блок-схему декодера 200 для декодирования кодированного сигнала 120. Декодер 200 сконфигурирован с возможностью декодирования кодированного аудиосигнала 120 в области преобразования или области 204 банка фильтров, при этом декодер 200 сконфигурирован с возможностью синтаксического анализа кодированного аудиосигнала 120 для получения кодированных спектральных коэффициентов 206_t0_f1-206_t0_f6 аудиосигнала для текущего кадра 208_t0 и кодированных спектральных коэффициентов 206_t-1_f0-206_t-1_f6 для по меньшей мере одного предыдущего кадра 208_t-1, и причем декодер 200 сконфигурирован с возможностью селективного применения кодирования с предсказанием к множеству отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов, которые разделены по меньшей мере одним кодированным спектральным коэффициентом.
В вариантах осуществления декодер 200 может быть сконфигурирован с возможностью применения кодирования с предсказанием к множеству отдельных кодированных спектральных коэффициентов, которые разделены по меньшей мере одним кодированным спектральным коэффициентом, например, к двум отдельным кодированным спектральным коэффициентам, которые разделены по меньшей мере одним кодированным спектральным коэффициентом. Дополнительно, декодер 200 может быть сконфигурирован с возможностью применения кодирования с предсказанием к множеству групп кодированных спектральных коэффициентов (при этом, каждая из групп содержит по меньшей мере два кодированных спектральных коэффициента), которые разделены по меньшей мере одним кодированным спектральным коэффициентом, например, к двум группам кодированных спектральных коэффициентов, которые разделены по меньшей мере одним кодированным спектральным коэффициентом. Дополнительно, декодер 200 может быть сконфигурирован с возможностью применения кодирования с предсказанием к множеству отдельных кодированных спектральных коэффициентов и/или групп кодированных спектральных коэффициентов, которые разделены по меньшей мере одним кодированным спектральным коэффициентом, например, к по меньшей мере одному отдельному кодированному спектральному коэффициенту и по меньшей мере одной группе кодированных спектральных коэффициентов, которые разделены по меньшей мере одним кодированным спектральным коэффициентом.
В примере, показанном на фиг. 4, декодер 200 сконфигурирован с возможностью определения шести кодированных спектральных коэффициентов 206_t0_f1-206_t0_f6 для текущего кадра 208_t0 и шести кодированных спектральных коэффициентов 206_t-1_f1-206_t-1_f6 для предыдущего кадра 208_t-1. Таким образом, декодер 200 сконфигурирован с возможностью селективного применения кодирования с предсказанием к отдельному второму кодированному спектральному коэффициенту 206_t0_f2 текущего кадра и группе кодированных спектральных коэффициентов, состоящей из четвертого и пятого кодированных спектральных коэффициентов 206_t0_f4 и 206_t0_f5 текущего кадра 208_t0. Как можно видеть, отдельный второй кодированный спектральный коэффициент 206_t0_f2 и группа кодированных спектральных коэффициентов, состоящая из четвертого и пятого кодированных спектральных коэффициентов 206_t0_f4 и 206_t0_f5 отделены друг от друга третьим кодированным спектральным коэффициентом 206_t0_f3.
Следует отметить, что термин «селективно» в контексте настоящего изобретения относится к применению декодирования с предсказанием (только) к выбранным кодированным спектральным коэффициентам. Другими словами, декодирование с предсказанием применяется не ко всем кодированным спектральным коэффициентам, а только в выбранным отдельным кодированным спектральным коэффициентам или группам кодированных спектральных коэффициентов, при этом выбранные отдельные кодированные спектральные коэффициенты и/или группы кодированных спектральных коэффициентов отделены друг от друга по меньшей мере одним кодированным спектральным коэффициентом. Другими словами, декодирование с предсказанием не применяется к по меньшей мере одному кодированному спектральному коэффициенту, которым разделяется выбранное множество отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов.
В вариантах осуществления декодер 200 может быть сконфигурирован с возможностью неприменения декодирования с предсказанием к по меньшей мере одному кодированному спектральному коэффициенту 206_t0_f3, которым разделяются отдельные кодированные спектральные коэффициенты 206_t0_f2 или группа спектральных коэффициентов 206_t0_f4 и 206_t0_f5.
Декодер 200 может быть сконфигурирован с возможностью энтропийного декодирования кодированных спектральных коэффициентов, чтобы получать квантованные ошибки предсказания для спектральных коэффициентов 206_t0_f2, 2016_t0_f4 и 206_t0_f5, к которым должно применяться декодирование с предсказанием, и квантованные спектральные коэффициенты 206_t0_f3 для по меньшей мере одного спектрального коэффициента, к которому не должно применяться декодирование с предсказанием. Таким образом, декодер 200 может быть сконфигурирован с возможностью применения квантованных ошибок предсказания к множеству предсказанных отдельных спектральных коэффициентов 210_t0_f2 или групп предсказанных спектральных коэффициентов 210_t0_f4 и 210_t0_f5, чтобы получать, для текущего кадра 208_t0, декодированные спектральные коэффициенты, ассоциированные с кодированными спектральными коэффициентами 206_t0_f2, 206_t0_f4 и 206_t0_f5, к которым применяется декодирование с предсказанием.
Например, декодер 200 может быть сконфигурирован с возможностью получения второй квантованной ошибки предсказания для второго квантованного спектрального коэффициента 206_t0_f2 и применения второй квантованной ошибки предсказания к предсказанному второму спектральному коэффициенту 210_t0_f2, чтобы получить второй декодированный спектральный коэффициент, ассоциированный со вторым кодированным спектральным коэффициентом 206_t0_f2, при этом декодер 200 может быть сконфигурирован с возможностью получения четвертой квантованной ошибки предсказания для четвертого квантованного спектрального коэффициента 206_t0_f4 и применения четвертой квантованной ошибки предсказания к предсказанному четвертому спектральному коэффициенту 210_t0_f4, чтобы получить четвертый декодированный спектральный коэффициент, ассоциированный с четвертым кодированным спектральным коэффициентом 206_t0_f4, и причем декодер 200 может быть сконфигурирован с возможностью получения пятой квантованной ошибки предсказания для пятого квантованного спектрального коэффициента 206_t0_f5 и применения пятой квантованной ошибки предсказания к предсказанному пятому спектральному коэффициенту 210_t0_f5, чтобы получить пятый декодированный спектральный коэффициент, ассоциированный с пятым кодированным спектральным коэффициентом 206_t0_f5.
Дополнительно, декодер 200 может быть сконфигурирован с возможностью определения множества предсказанных отдельных спектральных коэффициентов 210_t0_f2 или групп предсказанных спектральных коэффициентов 210_t0_f4 и 210_t0_f5 для текущего кадра 208_t0 на основании соответствующего множества отдельных кодированных спектральных коэффициентов 206_t-1_f2 (например, с использованием множества ранее декодированных спектральных коэффициентов, ассоциированных с множеством отдельных кодированных спектральных коэффициентов 206_t-1_f2) или групп кодированных спектральных коэффициентов 206_t-1_f4 и 206_t-1_f5 (например, с использованием групп ранее декодированных спектральных коэффициентов, ассоциированных с группами кодированных спектральных коэффициентов 206_t-1_f4 и 206_t-1_f5) предыдущего кадра 208_t-1.
Например, декодер 200 может быть сконфигурирован с возможностью определения второго предсказанного спектрального коэффициента 210_t0_f2 текущего кадра 208_t0 с использованием ранее декодированного (квантованного) второго спектрального коэффициента, ассоциированного со вторым кодированным спектральным коэффициентом 206_t-1_f2 предыдущего кадра 208_t-1, четвертого предсказанного спектрального коэффициента 210_t0_f4 текущего кадра 208_t0 с использованием ранее декодированного (квантованного) четвертого спектрального коэффициента, ассоциированного с четвертым кодированным спектральным коэффициентом 206_t-1_f4 предыдущего кадра 208_t-1, и пятого предсказанного спектрального коэффициента 210_t0_f5 текущего кадра 208_t0 с использованием ранее декодированного (квантованного) пятого спектрального коэффициента, ассоциированного с пятым кодированным спектральным коэффициентом 206_t-1_f5 предыдущего кадра 208_t-1.
Дополнительно, декодер 200 может быть сконфигурирован с возможностью вывода коэффициентов предсказания из интервального значения, и при этом декодер 200 может быть сконфигурирован с возможностью вычисления множества предсказанных отдельных спектральных коэффициентов 210_t0_f2 или групп предсказанных спектральных коэффициентов 210_t0_f4 и 210_t0_f5 для текущего кадра 208_t0 с использованием соответствующего множества ранее декодированных отдельных спектральных коэффициентов или групп ранее декодированных спектральных коэффициентов по меньшей мере двух предыдущих кадров 208_t-1 и 208_t-2 и с использованием выведенных коэффициентов предсказания.
Например, декодер 200 может быть сконфигурирован с возможностью вывода коэффициентов 212_f2 и 214_f2 предсказания для второго кодированного спектрального коэффициента 206_t0_f2 из интервального значения, вывода коэффициентов 212_f4 и 214_f4 предсказания для четвертого кодированного спектрального коэффициента 206_t0_f4 из интервального значения и вывода коэффициентов 212_f5 и 214_f5 предсказания для пятого кодированного спектрального коэффициента 206_t0_f5 из интервального значения.
Следует отметить, что декодер 200 может быть сконфигурирован с возможностью декодирования кодированного аудиосигнала 120 для того, чтобы получать квантованные ошибки предсказания вместо множества отдельных квантованных спектральных коэффициентов или групп квантованных спектральных коэффициентов для множества отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов, к которым применяется декодирование с предсказанием.
Дополнительно, декодер 200 может быть сконфигурирован с возможностью декодирования кодированного аудиосигнала 120 для того, чтобы получать квантованные спектральные коэффициенты, посредством которых множество отдельных спектральных коэффициентов или групп спектральных коэффициентов разделяется так, что имеет место чередование кодированных спектральных коэффициентов 206_t0_f2 или групп кодированных спектральных коэффициентов 206_t0_f4 и 206_t0_f5, для которых получают квантованные ошибки предсказания, и кодированных спектральных коэффициентов 206_t0_f3 или групп кодированных спектральных коэффициентов, для которых получают квантованные спектральные коэффициенты.
Декодер 200 может быть сконфигурирован с возможностью обеспечения декодированного аудиосигнала 220 с использованием декодированных спектральных коэффициентов, ассоциированных с кодированными спектральными коэффициентами 206_t0_f2, 206_t0_f4 и 206_t0_f5, к которым применяется декодирование с предсказанием, и с использованием энтропийно-декодированных спектральных коэффициентов, ассоциированных с кодированными спектральными коэффициентами 206_t0_f1, 206_t0_f3 и 206_t0_f6, к которым декодирование с предсказанием не применяется.
В вариантах осуществления декодер 200 может быть сконфигурирован с возможностью получения интервального значения, при этом декодер 200 может быть сконфигурирован с возможностью выбора множества отдельных кодированных спектральных коэффициентов 206_t0_f2 или групп кодированных спектральных коэффициентов 206_t0_f4 и 206_t0_f5, к которым применяется декодирование с предсказанием, на основании интервального значения.
Как уже упоминалось выше в отношении описания соответствующего кодера 100, интервальное значение может быть, например, разнесением (или расстоянием) между двумя характеристическими частотами аудиосигнала. Дополнительно, интервальное значение может быть целым числом спектральных коэффициентов (или индексов спектральных коэффициентов), аппроксимирующим разнесение между двумя характеристическими частотами аудиосигнала. Естественно, интервальное значение может быть также долей или кратной величиной целого числа спектральных коэффициентов, описывающим(ей) разнесение между двумя характеристическими частотами аудиосигнала.
Декодер 200 может быть сконфигурирован с возможностью выбора отдельных спектральных коэффициентов или групп спектральных коэффициентов, спектрально расположенных в соответствии с сеткой гармоник, определяемой интервальным значением, для декодирования с предсказанием. Сетка гармоник, определяемая интервальным значением, может описывать периодическое спектральное распределение (эквидистантное разнесение) гармоник в аудиосигнале 102. Другими словами, сетка гармоник, определяемая интервальным значением, может быть последовательностью интервальных значений, описывающих эквидистантное разнесение гармоник аудиосигнала 102.
Дополнительно, декодер 200 может быть сконфигурирован с возможностью выбора спектральных коэффициентов (например, только таких спектральных коэффициентов), спектральные индексы которых равны или расположены в диапазоне (например, предварительно определенном или переменном диапазоне) в окрестности множества спектральных индексов, выведенных на основании интервального значения, для декодирования с предсказанием. Таким образом, декодер 200 может быть сконфигурирован с возможностью установки ширины диапазона в зависимости от интервального значения.
В вариантах осуществления кодированный аудиосигнал может содержать интервальное значение или его кодированную версию (например, параметр, из которого можно непосредственно вывести интервальное значение), при этом декодер 200 может быть сконфигурирован с возможностью выделения интервального значения или его кодированной версии из кодированного аудиосигнала, чтобы получить интервальное значение.
В качестве альтернативы, декодер 200 может быть сконфигурирован с возможностью самостоятельного определения интервального значения, т.е. кодированный аудиосигнал не включает в себя интервальное значение. В таком случае, декодер 200 может быть сконфигурирован с возможностью определения мгновенной основной частоты (кодированного аудиосигнала 120, представляющего аудиосигнал 102) и вывода интервального значения из мгновенной основной частоты или ее доли или кратной величины.
В вариантах осуществления декодер 200 может быть сконфигурирован с возможностью выбора множества отдельных спектральных коэффициентов или групп спектральных коэффициентов, к которым применяется декодирование с предсказанием, таким образом, что имеет место периодическое чередование, периодическое с допуском +/-1 спектральных коэффициентов, между множеством отдельных спектральных коэффициентов или групп спектральных коэффициентов, к которым декодирование с предсказанием применяется, и спектральными коэффициентами, которыми разделяется множество отдельных спектральных коэффициентов или групп спектральных коэффициентов, к которым применяется декодирование с предсказанием.
В вариантах осуществления аудиосигнал 102, представленный кодированным аудиосигналом 120, содержит по меньшей мере две гармонические составляющие сигнала, при этом декодер 200 сконфигурирован с возможностью селективного применения декодирования с предсказанием к такому множеству отдельных кодированных спектральных коэффициентов 206_t0_f2 или групп кодированных спектральных коэффициентов 206_t0_f4 и 206_t0_f5, которые представляют собой по меньшей мере две гармонические составляющие сигнала или спектральное окружение в окрестности по меньшей мере двух гармонических составляющих сигнала аудиосигнала 102. Спектральное окружение в окрестности по меньшей мере двух гармонических составляющих сигнала может составлять, например, +/-1, 2, 3, 4 или 5 спектральных составляющих.
Таким образом, декодер 200 может быть сконфигурирован с возможностью идентификации по меньшей мере двух гармонических составляющих сигнала и селективного применения декодирования с предсказанием к такому множеству отдельных кодированных спектральных коэффициентов 206_t0_f2 или групп кодированных спектральных коэффициентов 206_t0_f4 и 206_t0_f5, которые ассоциированы с идентифицированными гармоническими составляющими сигнала, например, которые представляют собой идентифицированные гармонические составляющие сигнала, или которые окружают идентифицированные гармонические составляющие сигнала).
В качестве альтернативы, кодированный аудиосигнал 120 может содержать информацию (например, интервальное значение), идентифицирующую по меньшей мере две гармонические составляющие сигнала. В таком случае, декодер 200 может быть сконфигурирован с возможностью селективного применения декодирования с предсказанием к такому множеству отдельных кодированных спектральных коэффициентов 206_t0_f2 или групп кодированных спектральных коэффициентов 206_t0_f4 и 206_t0_f5, которые ассоциированы с идентифицированными гармоническими составляющими сигнала, например, которые представляют собой идентифицированные гармонические составляющие сигнала, или которые окружают идентифицированные гармонические составляющие сигнала.
В обоих вышеупомянутых альтернативных вариантах декодер 200 может быть сконфигурирован с возможностью неприменения декодирования с предсказанием к такому множеству отдельных кодированных спектральных коэффициентов 206_t0_f3, 206_t0_f1 и 206_t0_f6 или групп кодированных спектральных коэффициентов, которые не представляют собой по меньшей мере две гармонические составляющие сигнала или спектральное окружение по меньшей мере двух гармонических составляющих сигнала аудиосигнала 102.
Другими словами, декодер 200 может быть сконфигурирован с возможностью неприменения декодирования с предсказанием к такому множеству отдельных кодированных спектральных коэффициентов 206_t0_f3, 206_t0_f1, 206_t0_f6 или групп кодированных спектральных коэффициентов, которые относятся к нетональному фоновому шуму между гармониками сигнала аудиосигнала 102.
Фиг. 5 представляет блок-схему последовательности операций способа 300 кодирования аудиосигнала в соответствии с вариантом осуществления. Способ 300 содержит этап 302 определения спектральных коэффициентов аудиосигнала для текущего кадра и по меньшей мере одного предыдущего кадра и этап 304 селективного применения кодирования с предсказанием к множеству отдельных спектральных коэффициентов или групп спектральных коэффициентов, которые разделяются по меньшей мере одним спектральным коэффициентом.
Фиг. 6 представляет блок-схему последовательности операций способа 400 декодирования кодированного аудиосигнала в соответствии с вариантом осуществления. Способ 400 содержит этап 402 синтаксического анализа кодированного аудиосигнала для получения кодированных спектральных коэффициентов аудиосигнала для текущего кадра и по меньшей мере одного предыдущего кадра и этап 404 селективного применения декодирования с предсказанием к множеству отдельных кодированных спектральных коэффициентов или групп кодированных спектральных коэффициентов, которые разделяются по меньшей мере одним кодированным спектральным коэффициентом.
Хотя некоторые аспекты описаны выше в контексте устройства, очевидно, что данные аспекты представляют также описание соответствующего способа, при этом блок или устройство соответствует этапу способа или признаку этапа способа. Аналогично, аспекты, описанные в контексте этапа способа, также представляют описание соответствующего блока или элемента, или признака соответствующего устройства. Некоторые или все этапы способа могут выполняться посредством (или с использованием) устройства аппаратного обеспечения, подобного, например, микропроцессору, программируемому компьютеру или электронной схеме. В некоторых вариантах осуществления, один или более из наиболее важных этапов способа может выполняться таким устройством.
Кодированный аудиосигнал по изобретению может храниться на носителе цифровых данных или может передаваться по среде передачи, например, среде беспроводной передачи или среде проводной передачи, например, сети Интернет.
В зависимости от некоторых требований к реализации, варианты осуществления изобретения могут быть реализованы в форме аппаратного или программного обеспечения. Реализацию можно осуществить с использованием носителя цифровых данных, например, гибкого диска, DVD (универсального цифрового диска), диска Blu-Ray, CD (компакт-диска), ROM (постоянной памяти), PROM (программируемой постоянной памяти), EPROM (стираемой программируемой постоянной памяти), EEPROM (электронно-стираемой программируемой постоянной памяти) или флэш-памяти, содержащих хранящиеся на них электронно-считываемые управляющие сигналы, которые взаимодействуют (или способны взаимодействовать) с программируемой компьютерной системой таким образом, чтобы выполнялся соответствующий способ. Следовательно, носитель цифровых данных может быть компьютерно-считываемым.
Некоторые варианты осуществления в соответствии с изобретением содержат носитель данных, содержащий электронно-считываемые управляющие сигналы, которые способны взаимодействовать с программируемой компьютерной системой таким образом, чтобы выполнялся один из способов, описанных в настоящей заявке.
В общем, варианты осуществления настоящего изобретения можно реализовать в форме компьютерного программного продукта с программным кодом, при этом программный код предназначен для выполнения одного из способов, когда компьютерный программный продукт выполняется в компьютере. Программный код может храниться, например, на машиночитаемом носителе.
Другие варианты осуществления содержат компьютерную программу для выполнения одного из способов, описанных в настоящей заявке, хранящуюся на машиночитаемом носителе.
Другими словами, следовательно, вариант осуществления способа по изобретению является компьютерной программой, содержащей программный код для выполнения одного из способов, описанных в настоящей заявке, когда компьютерная программа выполняется в компьютере.
Дополнительный вариант осуществления способов по изобретению является, следовательно, носителем данных (или носителем цифровых данных, или компьютерно-читаемым носителем), содержащим записанную на нем компьютерную программу для выполнения одного из способов, описанных в настоящей заявке. Носитель данных, носитель цифровых данных или записываемый носитель являются, обычно, материальным и/или долговременным.
Дополнительный вариант осуществления способов по изобретению является, следовательно, потоком данных или последовательностью сигналов, представляющим(щей) компьютерную программу для выполнения одного из способов, описанных в настоящей заявке. Поток данных или последовательность сигналов может быть, например, сконфигурирован(а) с возможностью передачи по соединению для передачи данных, например, по сети Интернет.
Дополнительный вариант осуществления содержит средство обработки данных, например, компьютер или программируемое логическое устройство, сконфигурированный(ое) с возможностью или предназначенный(ое) для выполнения одного из способов, описанных в настоящей заявке.
Дополнительный вариант осуществления содержит компьютер, содержащий установленную в нем компьютерную программу для выполнения одного из способов, описанных в настоящей заявке.
Дополнительный вариант осуществления в соответствии с изобретением содержит устройство или систему, сконфигурированное(ую) с возможностью передачи (например, электронной или оптической) компьютерной программы для выполнения одного из способов, описанных в настоящей заявке, в приемник. Приемник может быть, например, компьютером, мобильным устройством, запоминающим устройством и т.п. Устройство или система может содержать, например, файловый сервер для передачи компьютерной программы в приемник.
В некоторых вариантах осуществления программируемое логическое устройство (например, матрица логических элементов с эксплуатационным программированием) может применяться для выполнения некоторых или всех функций способов, описанных в настоящей заявке. В некоторых вариантах осуществления матрица логических элементов с эксплуатационным программированием может взаимодействовать с микропроцессором для того, чтобы выполнять один из способов, описанных в настоящей заявке. В общем, способы предпочтительно выполняются любым устройством аппаратного обеспечения.
Устройство, описанное в настоящей заявке, может быть реализовано с использованием устройства аппаратного обеспечения или с использованием компьютера, или с использованием комбинации устройства аппаратного обеспечения и компьютера.
Способы, описанные в настоящей заявке, могут выполняться с использованием устройства аппаратного обеспечения или с использованием компьютера, или с использованием комбинации устройства аппаратного обеспечения и компьютера.
Вышеописанные варианты осуществления являются простой иллюстрацией принципов настоящего изобретения. Следует понимать, что специалистам в данной области техники будут очевидны модификации и варианты схем и деталей, описанных в настоящей заявке. Поэтому изобретение должно ограничиваться только объемом прилагаемой формулы изобретения, а не конкретными деталями, представленными в описании и пояснении вариантов осуществления настоящей заявки.