УСТРОЙСТВО И СПОСОБ ДЛЯ КОДИРОВАНИЯ СТЕРЕО НА ОСНОВЕ MDCT M/S С ГЛОБАЛЬНОЙ ILD С УЛУЧШЕННЫМ ПРИНЯТИЕМ РЕШЕНИЯ ПО КОДИРОВАНИЮ МЕТОДОМ СРЕДНЕГО/БОКОВОГО КАНАЛА
DEVICE AND METHOD FOR ENCODING STEREO BASED ON MDCT M/S WITH GLOBAL ILD WITH IMPROVED MEDIUM/LATERAL CHANNEL CODING DECISION

Настоящее изобретение относится к кодированию аудиосигнала и декодированию аудиосигнала и, в частности, к устройству и способу кодирования стерео на основе MDCT M/S с глобальной ILD с улучшенным принятием решения по кодированию методом среднего/бокового (mid/side) канала.
Пополосная (band-wise, в зависимости от полосы) обработка M/S (M/S=средний/боковой) в кодерах на основе MDCT (MDCT=модифицированное дискретное косинусное преобразование) является известным и эффективным способом обработки стереосигнала. Однако этого недостаточно для панорамированных сигналов, и требуется дополнительная обработка, например, комплексное предсказание или кодирование углов между средним и боковым каналом.
В [1], [2], [3] и [4] описана обработка M/S для подвергнутых оконному преобразованию и преобразованных ненормализованных (не выбеленных) сигналов.
В [7] описано предсказание между средним и боковым каналами. В [7] раскрыт кодер, который кодирует аудиосигнал на основании комбинации двух аудиоканалов. Аудиокодер получает комбинированный сигнал, являющийся средним сигналом, и дополнительно получает остаточный сигнал предсказания, который является предсказанным боковым сигналом, выведенным из среднего сигнала. Первый комбинированный сигнал и остаточный сигнал предсказания кодируются и записываются в поток данных совместно с информацией предсказания. Кроме того, в [7] раскрыт декодер, который генерирует декодированный первый и второй аудиоканалы с использованием остаточного сигнала предсказания, первого комбинированного сигнала и информации предсказания.
s
mid
2
s
В [5] описано применение соединения M/S стереофонии после нормализации по отдельности на каждой полосе. В частности, [5] относится к кодеку Opus. Opus кодирует средний сигнал и боковой сигнал как нормализованные сигналы m=M/||M|| и s=S/||S||. Для восстановления M и S из m и s кодируется угол θ=arctan(||S||/||M||). Когда N обозначает размер полосы, и a обозначает суммарное количество битов, доступных для m и s, оптимальное выделение для m выражается как a=(a - (N - 1) log tan θ)/2.
В известных подходах (например, в [2] и [4]), сложные циклы определения битовой скорости/искажения объединяются с принятием решения, в каких полосах каналы подлежат преобразованию (например, с использованием M/S, который также может сопровождаться вычислением остатка предсказания M в S из [7]), для снижения корреляции между каналами. Эта сложная структура имеет высокую вычислительную сложность. Отделение перцептивной модели от цикла определения битовой скорости (как в [6a], [6b] и [13]) значительно упрощает систему.
Кроме того, кодирование коэффициентов или углов предсказания в каждой полосе требует значительного количества битов (как, например, в [5] и [7]).
В [1], [3] и [5] осуществляется одно единственное принятие решения для всего спектра для того, чтобы решить, каким методом нужно кодировать весь спектр: M/S или L/R.
Кодирование M/S неэффективно, если существует ILD (межушная разность уровней), то есть, если каналы панорамируются.
Как изложено выше, известно, что пополосная обработка M/S в кодерах на основе MDCT является эффективным способом для обработки стереосигнала. Коэффициент усиления кодирования обработки M/S изменяется от 0% для раскоррелированных каналов до 50% для монофонических каналов или для каналов с разностью фаз π/2. Вследствие демаскирования стереоканала и обратного демаскирования (см. [1]), важно иметь надежное принятие решения по M/S.
В [2] каждая полоса, где пороги маскирования между левым и правым каналами изменяются меньше, чем на 2 дБ, кодирование M/S выбирается в качестве способа кодирования.
В [1] принятие решения по M/S базируется на оцененном расходовании битов для кодирования M/S и для кодирования L/R (L/R=левый/правый) каналов. Потребность в битовой скорости для кодирования M/S и для кодирования L/R оценивается из спектров и из порогов маскирования с использованием перцептивной энтропии (PE). Пороги маскирования вычисляются для левого и правого каналов. Пороги маскирования для среднего канала и для бокового канала предполагаются минимальными из левого и правого порогов.
Кроме того, в [1] описано, как выводятся пороги кодирования отдельных каналов, подлежащих кодированию. В частности, пороги кодирования для левого и правого каналов вычисляются на основе соответствующих перцептивных моделей для этих каналов. В [1] пороги кодирования для канала M и канала S выбираются одинаково и выводятся как минимум левого и правого порогов кодирования.
Кроме того, в [1] описано принятие решения между кодированием L/R и кодированием M/S таким образом, что достигается хорошая производительность кодирования. В частности, перцептивная энтропия оценивается для кодирования L/R и кодирования M/S с использованием порогов.
В [1] и [2], также как в [3] и [4], обработка M/S проводится в отношении подвергнутого оконному преобразованию и преобразованного ненормализованного (не выбеленного) сигнала, и принятие решения по M/S базируется на пороге маскирования и оценке перцептивной энтропии.
В [5], энергия левого канала и правого канала кодируются в явном виде, и кодированный угол сохраняет энергию разностного сигнала. В [5] предполагается, что кодирование M/S безопасно, даже если кодирование L/R более эффективно. Согласно [5], кодирование L/R выбирается только, когда корреляция между каналами недостаточно сильна.
Кроме того, кодирование коэффициентов или углов предсказания в каждой полосе требует значительного количества битов (см., например, [5] и [7]).
Таким образом, было бы весьма полезно обеспечить улучшенные принципы кодирования аудиосигнала и декодирования аудиосигнала.
Задачей настоящего изобретения является обеспечение улучшенных принципов для кодирования аудиосигнала, обработки аудиосигнала и декодирования аудиосигнала. Задача настоящего изобретения решается посредством аудиодекодера по п. 1, устройства по п. 23, способа по п. 37, способа по п. 38 и компьютерной программы по п. 39.
Согласно варианту осуществления, обеспечено устройство для кодирования первого канала и второго канала входного аудиосигнала, содержащего два или более каналов, для получения кодированного аудиосигнала.
Устройство для кодирования содержит нормализатор, выполненный с возможностью определения значения нормализации для входного аудиосигнала в зависимости от первого канала входного аудиосигнала и в зависимости от второго канала входного аудиосигнала, причем нормализатор выполнен с возможностью определения первого канала и второго канала нормализованного аудиосигнала путем модификации, в зависимости от значения нормализации, по меньшей мере, одного из первого канала и второго канала входного аудиосигнала.
Кроме того, устройство для кодирования содержит блок кодирования, выполненный с возможностью генерирования обработанного аудиосигнала, имеющего первый канал и второй канал, таким образом, что одна или более спектральных полос первого канала обработанного аудиосигнала являются одной или более спектральных полос первого канала нормализованного аудиосигнала, таким образом, что одна или более спектральных полос второго канала обработанного аудиосигнала являются одной или более спектральных полос второго канала нормализованного аудиосигнала, таким образом, что, по меньшей мере, одна спектральная полоса первого канала обработанного аудиосигнала является спектральной полосой среднего сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала, и таким образом, что, по меньшей мере, одна спектральная полоса второго канала обработанного аудиосигнала является спектральной полосой бокового сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала. Блок кодирования выполнен с возможностью кодирования обработанного аудиосигнала для получения кодированного аудиосигнала.
Кроме того, обеспечено устройство для декодирования кодированного аудиосигнала, содержащего первый канал и второй канал, для получения первого канала и второго канала декодированного аудиосигнала, содержащего два или более каналов.
Устройство для декодирования содержит блок декодирования, выполненный с возможностью определения для каждой спектральной полосы из множества спектральных полос, были ли кодированы упомянутая спектральная полоса первого канала кодированного аудиосигнала и упомянутая спектральная полоса второго канала кодированного аудиосигнала, с использованием кодирования методом двух моноканалов (dual-mono, двойного моно) или с использованием кодирования (методом) среднего-бокового канала (mid-side).
Блок декодирования выполнен с возможностью использования упомянутой спектральной полосы первого канала кодированного аудиосигнала в качестве спектральной полосы первого канала промежуточного аудиосигнала и выполнен с возможностью использования упомянутой спектральной полосы второго канала кодированного аудиосигнала в качестве спектральной полосы второго канала промежуточного аудиосигнала, если использовалось кодирование методом двух моноканалов.
Кроме того, блок декодирования выполнен с возможностью генерирования спектральной полосы первого канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, и генерирования спектральной полосы второго канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, если использовалось кодирование среднего-бокового канала.
Кроме того, устройство для декодирования содержит денормализатор, выполненный с возможностью модификации, в зависимости от значения денормализации, по меньшей мере, одного из первого канала и второго канала промежуточного аудиосигнала для получения первого канала и второго канала декодированного аудиосигнала.
Кроме того, обеспечен способ кодирования первого канала и второго канала входного аудиосигнала, содержащего два или более каналов, для получения кодированного аудиосигнала. Способ содержит:
- определение значения нормализации для входного аудиосигнала в зависимости от первого канала входного аудиосигнала и в зависимости от второго канала входного аудиосигнала,
- определение первого канала и второго канала нормализованного аудиосигнала путем модификации, в зависимости от значения нормализации, по меньшей мере, одного из первого канала и второго канала входного аудиосигнала,
- генерирование обработанного аудиосигнала, имеющего первый канал и второй канал, таким образом, что одна или более спектральных полос первого канала обработанного аудиосигнала являются одной или более спектральных полос первого канала нормализованного аудиосигнала, таким образом, что одна или более спектральных полос второго канала обработанного аудиосигнала являются одной или более спектральных полос второго канала нормализованного аудиосигнала, таким образом, что, по меньшей мере, одна спектральная полоса первого канала обработанного аудиосигнала является спектральной полосой среднего сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала, и таким образом, что, по меньшей мере, одна спектральная полоса второго канала обработанного аудиосигнала является спектральной полосой бокового сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала, и кодирование обработанного аудиосигнала для получения кодированного аудиосигнала.
Кроме того, обеспечен способ декодирования кодированного аудиосигнала, содержащего первый канал и второй канал, для получения первого канала и второго канала декодированного аудиосигнала, содержащего два или более каналов. Способ содержит:
- определение для каждой спектральной полосы из множества спектральных полос, были ли кодированы упомянутая спектральная полоса первого канала кодированного аудиосигнала и упомянутая спектральная полоса второго канала кодированного аудиосигнала, с использованием кодирования методом двух моноканалов или с использованием кодирования среднего-бокового канала,
- использование упомянутой спектральной полосы первого канала кодированного аудиосигнала в качестве спектральной полосы первого канала промежуточного аудиосигнала и использование упомянутой спектральной полосы второго канала кодированного аудиосигнала в качестве спектральной полосы второго канала промежуточного аудиосигнала, если использовалось кодирование методом двух моноканалов,
- генерирование спектральной полосы первого канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, и генерирование спектральной полосы второго канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, если использовалось кодирование среднего-бокового канала, и
- модификацию, в зависимости от значения денормализации, по меньшей мере, одного из первого канала и второго канала промежуточного аудиосигнала для получения первого канала и второго канала декодированного аудиосигнала.
Кроме того, обеспечены компьютерные программы, причем каждая из компьютерных программ выполнена с возможностью реализации одного из вышеописанных способов при выполнении на компьютере или процессоре сигналов.
Согласно вариантам осуществления, обеспечены новые принципы, способные иметь дело с панорамированными сигналами с использованием минимальной вспомогательной информации.
Согласно некоторым вариантам осуществления, FDNS (FDNS=формирование шума в частотной области) с циклом определения битовой скорости используется, как описано в [6a] и [6b] совместно с искривлением спектральной огибающей, как описано в [8]. В некоторых вариантах осуществления, используется единственный параметр ILD на спектре, выбеленном посредством FDNS, сопровождаемый пополосным принятием решения, используется ли кодирование M/S или кодирование L/R для кодирования. В некоторых вариантах осуществления, принятие решения по M/S базируется на оцененной экономии битов. В некоторых вариантах осуществления, распределение битовой скорости по пополосно обработанным каналам M/S могут, например, зависеть от энергии.
Некоторые варианты осуществления обеспечивают комбинацию единственной глобальной ILD, применяемую на выбеленном спектре, сопровождаемую пополосной обработкой M/S с эффективным механизмом принятия решения по M/S и с циклом определения битовой скорости, который управляет одним-единственным глобальным коэффициентом усиления.
Некоторые варианты осуществления, помимо прочего, используют FDNS с циклом определения битовой скорости, например, на основании [6a] или [6b], совместно с искривлением спектральной огибающей, например на основании [8]. Эти варианты осуществления обеспечивают экономичный и очень эффективный способ для разделения перцептивного формирования шума квантования и цикла определения битовой скорости. Использование единственного параметра ILD на спектре, выбеленном посредством FDNS, обеспечивает простой и эффективный способ принятия решения, существует ли преимущество обработки M/S, как описано выше. Выбеливание спектра и удаление ILD обеспечивает эффективную обработку M/S. Достаточно кодировать единственную глобальную ILD для описанной системы, что позволяет добиться экономии битов в отличие от известных подходов.
Согласно вариантам осуществления, обработка M/S осуществляется на основании перцепционно выбеленного сигнала. Варианты осуществления определяют пороги кодирования и определяют, оптимальным образом, принятие решения, использовать ли кодирование L/R или кодирование M/S, при обработке перцепционно выбеленных и скомпенсированных по ILD сигналов.
Кроме того, согласно вариантам осуществления, обеспечивается новая оценка битовой скорости.
В отличие от [1]-[5], согласно вариантам осуществления, перцептивная модель отделяется от цикла определения битовой скорости, как в [6a], [6b] и [13].
Хотя принятие решения по M/S базируется на оцененной битовой скорости, как предложено в [1], в отличие от [1] различие в потребности в битовой скорости кодирования M/S и L/R не зависит от порогов маскирования, определенных перцептивной моделью. Напротив, потребность в битовой скорости определяется используемым беспотерьным энтропийным кодером. Другими словами: вместо вывода потребности в битовой скорости из перцептивной энтропии первоначального сигнала, потребность в битовой скорости выводится из энтропии перцепционно выбеленного сигнала.
В отличие от [1]-[5], согласно вариантам осуществления, принятие решения по M/S определяется на основании перцепционно выбеленного сигнала, и получается лучшая оценка необходимой битовой скорости. С этой целью, может применяться оценка расходования битов арифметического кодера, как описано в [6a] или [6b]. Пороги маскирования не обязательно рассматривать в явном виде.
В [1] пороги маскирования для среднего и бокового каналов предполагаются минимальными из левого и правого порогов маскирования. Формирование спектрального шума осуществляется на среднем и боковом каналах и может, например, основываться на этих порогах маскирования.
Согласно вариантам осуществления, формирование спектрального шума может, например, проводиться на левом и правом каналах, и перцептивная огибающая может, в таких вариантах осуществления, применяться в точности там, где она была оценена.
Кроме того, варианты осуществления базируются на определение того, что кодирование M/S неэффективно, если существует ILD, то есть, если каналы панорамируются. Во избежание этого, варианты осуществления используют единственный параметр ILD на перцепционно выбеленном спектре.
Согласно некоторым вариантам осуществления, обеспечены новые принципы для принятия решения по M/S, которые обрабатывают перцепционно выбеленный сигнал.
Согласно некоторым вариантам осуществления, кодек использует новые принципы, которые не были частью классических аудиокодеков, например, как описано в [1].
Согласно некоторым вариантам осуществления, перцепционно выбеленные сигналы используются для дальнейшего кодирования, например, аналогично тому, как они используются в речевом кодере.
Такой подход имеет несколько преимущества, например, упрощенная архитектура кодека, компактное представление характеристик формирование шума, и порог маскирования достигается, например, в качестве коэффициентов LPC. Кроме того, преобразование и архитектуры речевого кодека унифицируются и, таким образом, обеспечивается объединенное аудио/речевое кодирование.
Некоторые варианты осуществления используют глобальный параметр ILD для эффективного кодирования панорамированных источников.
Согласно вариантам осуществления, кодек использует формирование шума в частотной области (FDNS) для перцепционного выбеливания сигнала с циклом определения битовой скорости, например, как описано в [6a] или [6b], совместно с искривлением спектральной огибающей, как описано в [8]. В таких вариантах осуществления, кодек может, например, дополнительно использовать единственный параметр ILD на спектре, выбеленном посредством FDNS, сопровождаемый пополосным принятием решения, следует ли выбрать M/S или L/R. Пополосное принятие решения по M/S может основываться, например, на оцененной битовой скорости в каждой полосе при кодировании в режиме L/R и M/S. Выбирается режим с минимально необходимыми битами. Распределение битовой скорости по пополосно обработанным каналам M/S базируется на энергии.
Некоторые варианты осуществления применяют пополосное принятие решения по M/S на перцепционно выбеленном и скомпенсированном по ILD спектре с использованием оцененного количества битов в расчете на полосу для энтропийного кодера.
В некоторых вариантах осуществления, FDNS с циклом определения битовой скорости, например, как описано в [6a] или [6b] совместно с искривлением спектральной огибающей, как описано в [8], используется. Это обеспечивает эффективный, очень эффективный способ разделения перцептивного формирования шума квантования и цикла определения битовой скорости. Использование единственного параметра ILD на спектре, выбеленном посредством FDNS, обеспечивает простой и эффективный способ принятия решения, существует ли преимущество обработки M/S, как описано. Выбеливание спектра и удаление ILD обеспечивает эффективную обработку M/S. Достаточно кодировать единственную глобальную ILD для описанной системы, что позволяет добиться экономии битов в отличие от известных подходов.
Варианты осуществления модифицируют принципы, обеспеченные в [1] при обработке перцепционно выбеленных и скомпенсированных по ILD сигналов. В частности, варианты осуществления используют одинаковый глобальный коэффициент усиления для L, R, M и S, который, совместно с FDNS, образует пороги кодирования. Глобальный коэффициент усиления может выводиться из оценки SNR или из какого-либо другого принципа.
Предложенное пополосное принятие решения по M/S точно оценивает количество необходимых битов для кодирования каждой полосы арифметическим кодером. Это возможно, поскольку принятие решения по M/S осуществляется на выбеленном спектре и непосредственно сопровождается квантованием. Нет необходимости в экспериментальном поиске порогов.
В дальнейшем, варианты осуществления настоящего изобретения описаны более подробно со ссылкой на чертежи, в которых:
фиг. 1a демонстрирует устройство для кодирования согласно варианту осуществления,
фиг. 1b демонстрирует устройство для кодирования согласно другому варианту осуществления, причем устройство дополнительно содержит блок преобразования и блок предобработки,
фиг. 1c демонстрирует устройство для кодирования согласно дополнительному варианту осуществления, причем устройство дополнительно содержит блок преобразования,
фиг. 1d демонстрирует устройство для кодирования согласно дополнительному варианту осуществления, причем устройство содержит блок предобработки и блок преобразования,
фиг. 1e демонстрирует устройство для кодирования согласно дополнительному варианту осуществления, причем устройство дополнительно содержит препроцессор спектральной области,
фиг. 1f демонстрирует систему для кодирования четырех каналов входного аудиосигнала, содержащего четыре или более каналов для получения четырех каналов кодированного аудиосигнала согласно варианту осуществления,
фиг. 2a демонстрирует устройство для декодирования согласно варианту осуществления,
фиг. 2b демонстрирует устройство для декодирования согласно варианту осуществления, дополнительно содержащее блок преобразования и блок постобработки,
фиг. 2c демонстрирует устройство для декодирования согласно варианту осуществления, причем устройство для декодирования дополнительно содержит блок преобразования,
фиг. 2d демонстрирует устройство для декодирования согласно варианту осуществления, причем устройство для декодирования дополнительно содержит блок постобработки,
фиг. 2e демонстрирует устройство для декодирования согласно варианту осуществления, причем устройство дополнительно содержит постпроцессор спектральной области,
фиг. 2f демонстрирует систему для декодирования кодированного аудиосигнала, содержащего четыре или более каналов для получения четырех каналов декодированного аудиосигнала, содержащего четыре или более каналов согласно варианту осуществления,
фиг. 3 демонстрирует систему согласно варианту осуществления,
фиг. 4 демонстрирует устройство для кодирования согласно дополнительному варианту осуществления,
фиг. 5 демонстрирует модули обработки стереосигнала в устройстве для кодирования согласно варианту осуществления,
фиг. 6 демонстрирует устройство для декодирования согласно другому варианту осуществления,
фиг. 7 демонстрирует вычисление битовой скорости для пополосного принятия решения по M/S согласно варианту осуществления,
фиг. 8 демонстрирует принятие решения в отношении режима кодирования стерео согласно варианту осуществления,
фиг. 9 демонстрирует обработку стереосигнала на стороне кодера согласно вариантам осуществления, которые используют заполнение стерео,
фиг. 10 демонстрирует обработку стереосигнала на стороне декодера согласно вариантам осуществления, которые используют заполнение стерео,
фиг. 11 демонстрирует заполнение стерео бокового сигнала на стороне декодера согласно некоторым конкретным вариантам осуществления,
фиг. 12 демонстрирует обработку стереосигнала на стороне кодера согласно вариантам осуществления, который не использует заполнение стерео, и
фиг. 13 демонстрирует обработку стереосигнала на стороне декодера согласно вариантам осуществления, который не использует заполнение стерео.
Фиг. 1a демонстрирует устройство для кодирования первого канала и второго канала входного аудиосигнала, содержащего два или более каналов, для получения кодированного аудиосигнала согласно варианту осуществления.
Устройство содержит нормализатор 110, выполненный с возможностью определения значения нормализации для входного аудиосигнала в зависимости от первого канала входного аудиосигнала и в зависимости от второго канала входного аудиосигнала. Нормализатор 110 выполнен с возможностью определения первого канала и второго канала нормализованного аудиосигнала путем модификации, в зависимости от значения нормализации, по меньшей мере, одного из первого канала и второго канала входного аудиосигнала.
Например, нормализатор 110 может, согласно варианту осуществления, например, быть выполнен с возможностью определения значения нормализации, для входного аудиосигнала в зависимости от множества спектральных полос, первого канала и второго канала входного аудиосигнала, нормализатор 110 может, например, быть выполнен с возможностью определения первого канала и второго канала нормализованного аудиосигнала путем модификации, в зависимости от значения нормализации, множества спектральных полос, по меньшей мере, одного из первого канала и второго канала входного аудиосигнала.
Или, например, нормализатор 110 может, например, быть выполнен с возможностью определения значения нормализации для входного аудиосигнала в зависимости от первого канала входного аудиосигнала, представленного во временной области и в зависимости от второго канала входного аудиосигнала, представленного во временной области. Кроме того, нормализатор 110 выполнен с возможностью определения первого канала и второго канала нормализованного аудиосигнала путем модификации, в зависимости от значения нормализации, по меньшей мере, одного из первого канала и второго канала входного аудиосигнала, представленного во временной области. Устройство дополнительно содержит блок преобразования (не показан на фиг. 1a), выполненный с возможностью преобразования нормализованного аудиосигнала из временной области в спектральную область, таким образом, что нормализованный аудиосигнал представляется в спектральной области. Блок преобразования выполнен с возможностью подачи нормализованного аудиосигнала, представленного в спектральной области, на блок 120 кодирования. Например, входной аудиосигнал может, например, быть остаточным сигналом временной области, полученный путем фильтрации LPC (LPC=линейное предсказательное кодирование) двух каналов аудиосигнала временной области.
Кроме того, устройство содержит блок 120 кодирования, выполненный с возможностью генерирования обработанного аудиосигнала, имеющего первый канал и второй канал, таким образом, что одна или более спектральных полос первого канала обработанного аудиосигнала являются одной или более спектральных полос первого канала нормализованного аудиосигнала, таким образом, что одна или более спектральных полос второго канала обработанного аудиосигнала являются одной или более спектральных полос второго канала нормализованного аудиосигнала, таким образом, что, по меньшей мере, одна спектральная полоса первого канала обработанного аудиосигнала является спектральной полосой среднего сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала, и таким образом, что, по меньшей мере, одна спектральная полоса второго канала обработанного аудиосигнала является спектральной полосой бокового сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала. Блок 120 кодирования выполнен с возможностью кодирования обработанного аудиосигнала для получения кодированного аудиосигнала.
Согласно варианту осуществления, блок 120 кодирования может, например, быть выполнен с возможностью выбора между режимом кодирования полностью методом среднего-бокового канала, режимом кодирования полностью методом двух моноканалов и режимом пополосного кодирования в зависимости от множества спектральных полос первого канала нормализованного аудиосигнала и в зависимости от множества спектральных полос второго канала нормализованного аудиосигнала.
В таком варианте осуществления блок 120 кодирования может, например, быть выполнен с возможностью, если выбран режим кодирования полностью методом среднего-бокового канала, генерирования среднего сигнала из первого канала и из второго канала нормализованного аудиосигнала в качестве первого канала среднего-бокового сигнала, генерирования бокового сигнала из первого канала и из второго канала нормализованного аудиосигнала в качестве второго канала среднего-бокового сигнала, и кодирования среднего-бокового сигнала для получения кодированного аудиосигнала.
Согласно такому варианту осуществления блок 120 кодирования может, например, быть выполнен с возможностью, если выбран режим кодирования полностью методом двух моноканалов, кодирования нормализованного аудиосигнала для получения кодированного аудиосигнала.
Кроме того, в таком варианте осуществления блок 120 кодирования может, например, быть выполнен с возможностью, если выбран режим пополосного кодирования, генерирования обработанного аудиосигнала, таким образом, что одна или более спектральных полос первого канала обработанного аудиосигнала являются одной или более спектральных полос первого канала нормализованного аудиосигнала, таким образом, что одна или более спектральных полос второго канала обработанного аудиосигнала являются одной или более спектральных полос второго канала нормализованного аудиосигнала, таким образом, что, по меньшей мере, одна спектральная полоса первого канала обработанного аудиосигнала является спектральной полосой среднего сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала, и таким образом, что, по меньшей мере, одна спектральная полоса второго канала обработанного аудиосигнала является спектральной полосой бокового сигнала в зависимости от спектральной полосы первого канала нормализованного аудиосигнала и в зависимости от спектральной полосы второго канала нормализованного аудиосигнала, причем блок 120 кодирования может, например, быть выполнен с возможностью кодирования обработанного аудиосигнала для получения кодированного аудиосигнала.
Согласно варианту осуществления входной аудиосигнал может, например, быть стереофоническим аудиосигналом, содержащим в точности два канала. Например, первый канал входного аудиосигнала может, например, быть левым каналом стереофонического аудиосигнала, и второй канал входного аудиосигнала может, например, быть правым каналом стереофонического аудиосигнала.
Согласно варианту осуществления блок 120 кодирования может, например, быть выполнен с возможностью, если выбран режим пополосного кодирования, принятия решения для каждой спектральной полосы из множества спектральных полос обработанного аудиосигнала, использовать ли кодирование среднего-бокового канала или кодирование методом двух моноканалов.
Если для упомянутой спектральной полосы используется кодирование среднего-бокового канала, блок 120 кодирования может, например, быть выполнен с возможностью генерирования упомянутой спектральной полосы первого канала обработанного аудиосигнала в качестве спектральной полосы среднего сигнала на основании упомянутой спектральной полосы первого канала нормализованного аудиосигнала и на основании упомянутой спектральной полосы второго канала нормализованного аудиосигнала. Блок 120 кодирования может, например, быть выполнен с возможностью генерирования упомянутой спектральной полосы второго канала обработанного аудиосигнала в качестве спектральной полосы бокового сигнала на основании упомянутой спектральной полосы первого канала нормализованного аудиосигнала и на основании упомянутой спектральной полосы второго канала нормализованного аудиосигнала.
Если для упомянутой спектральной полосы используется кодирование методом двух моноканалов, блок 120 кодирования может, например, быть выполнен с возможностью использования упомянутой спектральной полосы первого канала нормализованного аудиосигнала в качестве упомянутой спектральной полосы первого канала обработанного аудиосигнала, и может, например, быть выполнен с возможностью использования упомянутой спектральной полосы второго канала нормализованного аудиосигнала в качестве упомянутой спектральной полосы второго канала обработанного аудиосигнала. Или блок 120 кодирования выполнен с возможностью использования упомянутой спектральной полосы второго канала нормализованного аудиосигнала в качестве упомянутой спектральной полосы первого канала обработанного аудиосигнала, и может, например, быть выполнен с возможностью использования упомянутой спектральной полосы первого канала нормализованного аудиосигнала в качестве упомянутой спектральной полосы второго канала обработанного аудиосигнала.
Согласно варианту осуществления блок 120 кодирования может, например, быть выполнен с возможностью выбора между режимом кодирования полностью методом среднего-бокового канала, режимом кодирования полностью методом двух моноканалов и режимом пополосного кодирования путем определения первой оценки, оценивающей первое количество битов, необходимых для кодирования, когда используется режим кодирования полностью методом среднего-бокового канала, путем определения второй оценки, оценивающей второе количество битов, необходимых для кодирования, когда используется режим кодирования полностью методом двух моноканалов, путем определения третьей оценки, оценивающей третье количество битов, необходимых для кодирования, когда может, например, применяться режим пополосного кодирования, и путем выбора того режима кодирования из режима кодирования полностью методом среднего-бокового канала, режима кодирования полностью методом двух моноканалов и режима пополосного кодирования, который имеет наименьшее количество битов из первой оценки, второй оценки и третьей оценки.
Согласно варианту осуществления блок 120 кодирования может, например, быть выполнен с возможностью оценивания третьей оценки , оценивающей третье количество битов, необходимых для кодирования, когда используется режим пополосного кодирования, согласно формуле:
где nBands - количество спектральных полос нормализованного аудиосигнала, где  - оценка количества битов, необходимых для кодирования i-ой спектральной полосы среднего сигнала и для кодирования i-ой спектральной полосы бокового сигнала, и где  - оценка количества битов, необходимых для кодирования i-ой спектральной полосы первого сигнала и для кодирования i-ой спектральной полосы второго сигнала.
Согласно вариантам осуществления может, например, применяться объективная мера качества для выбора между режимом кодирования полностью методом среднего-бокового канала, режимом кодирования полностью методом двух моноканалов и режимом пополосного кодирования.
Согласно варианту осуществления блок 120 кодирования может, например, быть выполнен с возможностью выбора между режимом кодирования полностью методом среднего-бокового канала, режимом кодирования полностью методом двух моноканалов и режимом пополосного кодирования путем определения первой оценки, оценивающей первое количество битов, которые сохраняются при кодировании в режиме кодирования полностью методом среднего-бокового канала, путем определения второй оценки, оценивающей второе количество битов, которые сохраняются при кодировании в режиме кодирования полностью методом двух моноканалов, путем определения третьей оценки, оценивающей третье количество битов, которые сохраняются при кодировании в режиме пополосного кодирования, и путем выбора того режима кодирования из режима кодирования полностью методом среднего-бокового канала, режима кодирования полностью методом двух моноканалов и режима пополосного кодирования, который имеет наибольшее количество битов, которые сохраняются, из первой оценки, второй оценки и третьей оценки.
В другом варианте осуществления блок 120 кодирования может, например, быть выполнен с возможностью выбора между режимом кодирования полностью методом среднего-бокового канала, режимом кодирования полностью методом двух моноканалов и режимом пополосного кодирования путем оценивания первого отношения сигнал/шум, которое возникает, когда используется режим кодирования полностью методом среднего-бокового канала, путем оценивания второго отношения сигнал/шум, которое возникает, когда используется режим кодирования полностью методом двух моноканалов, путем оценивания третьего отношения сигнал/шум, которое возникает, когда используется режим пополосного кодирования, и путем выбора того режима кодирования из режима кодирования полностью методом среднего-бокового канала, режима кодирования полностью методом двух моноканалов и режима пополосного кодирования, который имеет наибольшее отношение сигнал/шум из первого отношения сигнал/шум, второго отношения сигнал/шум и третьего отношения сигнал/шум.
Согласно варианту осуществления нормализатор 110 может, например, быть выполнен с возможностью определения значения нормализации для входного аудиосигнала в зависимости от энергии первого канала входного аудиосигнала и в зависимости от энергии второго канала входного аудиосигнала.
Согласно варианту осуществления входной аудиосигнал может, например, быть представлен в спектральной области. Нормализатор 110 может, например, быть выполнен с возможностью определения значения нормализации для входного аудиосигнала в зависимости от множества спектральных полос, первого канала входного аудиосигнала и в зависимости от множества спектральных полос второго канала входного аудиосигнала. Кроме того, нормализатор 110 может, например, быть выполнен с возможностью определения нормализованного аудиосигнала путем модификации, в зависимости от значения нормализации, множества спектральных полос, по меньшей мере, одного из первого канала и второго канала входного аудиосигнала.
Согласно варианту осуществления нормализатор 110 может, например, быть выполнен с возможностью определения значения нормализации на основании формул:
L,k
R,k
ILD
где MDCT - k-й коэффициент спектра MDCT первого канала входного аудиосигнала, и MDCT - k-й коэффициент спектра MDCT второго канала входного аудиосигнала. Нормализатор 110 может, например, быть выполнен с возможностью определения значения нормализации путем квантования .
Согласно варианту осуществления, проиллюстрированному на фиг. 1b, устройство для кодирования может, например, дополнительно содержать блок 102 преобразования и блок 105 предобработки. Блок 102 преобразования может, например, быть выполнен с возможностью преобразования аудиосигнала временной области из временной области в частотную область для получения преобразованного аудиосигнала. Блок 105 предобработки может, например, быть выполнен с возможностью генерирования первого канала и второго канала входного аудиосигнала путем применения операции формирования шума в частотной области на стороне кодера в отношении преобразованного аудиосигнала.
В конкретном варианте осуществления блок 105 предобработки может, например, быть выполнен с возможностью генерирования первого канала и второго канала входного аудиосигнала путем применения операции временного формирования шума на стороне кодера в отношении преобразованного аудиосигнала до применения операции формирования шума в частотной области на стороне кодера в отношении преобразованного аудиосигнала.
Фиг. 1c демонстрирует устройство для кодирования согласно дополнительному варианту осуществления, дополнительно содержащее блок 115 преобразования. Нормализатор 110 может, например, быть выполнен с возможностью определения значения нормализации для входного аудиосигнала в зависимости от первого канала входного аудиосигнала, представленного во временной области и в зависимости от второго канала входного аудиосигнала, представленного во временной области. Кроме того, нормализатор 110 может, например, быть выполнен с возможностью определения первого канала и второго канала нормализованного аудиосигнала путем модификации, в зависимости от значения нормализации, по меньшей мере, одного из первого канала и второго канала входного аудиосигнала, представленного во временной области. Блок 115 преобразования может, например, быть выполнен с возможностью преобразования нормализованного аудиосигнала из временной области в спектральную область, таким образом, что нормализованный аудиосигнал представляется в спектральной области. Кроме того, блок 115 преобразования может, например, быть выполнен с возможностью подачи нормализованного аудиосигнала, представленного в спектральной области, на блок 120 кодирования.
Фиг. 1d демонстрирует устройство для кодирования согласно дополнительному варианту осуществления, причем устройство дополнительно содержит блок 106 предобработки, выполненный с возможностью приема аудиосигнала временной области, содержащего первый канал и второй канал. Блок 106 предобработки может, например, быть выполнен с возможностью применения фильтра в отношении первого канала аудиосигнала временной области, который создает первый перцепционно выбеленный спектр для получения первого канала входного аудиосигнала, представленного во временной области. Кроме того, блок 106 предобработки может, например, быть выполнен с возможностью применения фильтра в отношении второго канала аудиосигнала временной области, который создает второй перцепционно выбеленный спектр для получения второго канала входного аудиосигнала, представленного во временной области.
Согласно варианту осуществления, проиллюстрированному на фиг. 1e, блок 115 преобразования может, например, быть выполнен с возможностью преобразования нормализованного аудиосигнала из временной области в спектральную область для получения преобразованного аудиосигнала. Согласно варианту осуществления, показанному на фиг. 1e, устройство дополнительно содержит препроцессор 118 спектральной области, выполненный с возможностью проведения временного формирования шума на стороне кодера в отношении преобразованного аудиосигнала для получения нормализованного аудиосигнала, представленного в спектральной области.
Согласно варианту осуществления блок 120 кодирования может, например, быть выполнен с возможностью получения кодированного аудиосигнала путем применения интеллектуального заполнения промежутка стереосигнала на стороне кодера в отношении нормализованного аудиосигнала или в отношении обработанного аудиосигнала.
В другом варианте осуществления, проиллюстрированном на фиг. 1f, обеспечена система для кодирования четырех каналов входного аудиосигнала, содержащего четыре или более каналов для получения кодированного аудиосигнала. Система содержит первое устройство 170 согласно одному из вышеописанных вариантов осуществления для кодирования первого канала и второго канала из четырех или более каналов входного аудиосигнала для получения первого канала и второго канала кодированного аудиосигнала. Кроме того, система содержит второе устройство 180 согласно одному из вышеописанных вариантов осуществления для кодирования третьего канала и четвертого канала из четырех или более каналов входного аудиосигнала для получения третьего канала и четвертого канала кодированного аудиосигнала.
Фиг. 2a демонстрирует устройство для декодирования кодированного аудиосигнала, содержащего первый канал и второй канал, для получения декодированного аудиосигнала согласно варианту осуществления.
Устройство для декодирования содержит блок 210 декодирования, выполненный с возможностью определения для каждой спектральной полосы из множества спектральных полос, были ли кодированы упомянутая спектральная полоса первого канала кодированного аудиосигнала и упомянутая спектральная полоса второго канала кодированного аудиосигнала, с использованием кодирования методом двух моноканалов или с использованием кодирования среднего-бокового канала.
Блок 210 декодирования выполнен с возможностью использования упомянутой спектральной полосы первого канала кодированного аудиосигнала в качестве спектральной полосы первого канала промежуточного аудиосигнала и выполнен с возможностью использования упомянутой спектральной полосы второго канала кодированного аудиосигнала в качестве спектральной полосы второго канала промежуточного аудиосигнала, если использовалось кодирование методом двух моноканалов.
Кроме того, блок 210 декодирования выполнен с возможностью генерирования спектральной полосы первого канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, и генерирования спектральной полосы второго канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, если использовалось кодирование среднего-бокового канала.
Кроме того, устройство для декодирования содержит денормализатор 220, выполненный с возможностью модификации, в зависимости от значения денормализации, по меньшей мере, одного из первого канала и второго канала промежуточного аудиосигнала для получения первого канала и второго канала декодированного аудиосигнала.
Согласно варианту осуществления блок 210 декодирования может, например, быть выполнен с возможностью определения, закодирован ли кодированный аудиосигнал в режиме кодирования полностью методом среднего-бокового канала или в режиме кодирования полностью методом двух моноканалов или в режиме пополосного кодирования.
Кроме того, в таком варианте осуществления блок 210 декодирования может, например, быть выполнен с возможностью, если определено, что кодированный аудиосигнал закодирован в режиме кодирования полностью методом среднего-бокового канала, для генерирования первого канала промежуточного аудиосигнала из первого канала и из второго канала кодированного аудиосигнала, и для генерирования второго канала промежуточного аудиосигнала из первого канала и из второго канала кодированного аудиосигнала,
Согласно такому варианту осуществления блок 210 декодирования может, например, быть выполнен с возможностью, если определено, что кодированный аудиосигнал закодирован в режиме кодирования полностью методом двух моноканалов, использования первого канала кодированного аудиосигнала в качестве первого канала промежуточного аудиосигнала, и использования второго канала кодированного аудиосигнала в качестве второго канала промежуточного аудиосигнала.
Кроме того, в таком варианте осуществления блок 210 декодирования может, например, быть выполнен с возможностью, если определено, что кодированный аудиосигнал закодирован в режиме пополосного кодирования,
- определения для каждой спектральной полосы из множества спектральных полос, были ли кодированы упомянутая спектральная полоса первого канала кодированного аудиосигнала и упомянутая спектральная полоса второго канала кодированного аудиосигнала, с использованием кодирования методом двух моноканалов или с использованием кодирования среднего-бокового канала,
- использования упомянутой спектральной полосы первого канала кодированного аудиосигнала в качестве спектральной полосы первого канала промежуточного аудиосигнала и использования упомянутой спектральной полосы второго канала кодированного аудиосигнала в качестве спектральной полосы второго канала промежуточного аудиосигнала, если использовалось кодирование методом двух моноканалов, и
- генерирования спектральной полосы первого канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, и генерирования спектральной полосы второго канала промежуточного аудиосигнала на основании упомянутой спектральной полосы первого канала кодированного аудиосигнала и на основании упомянутой спектральной полосы второго канала кодированного аудиосигнала, если использовалось кодирование среднего-бокового канала.
Например, в режиме кодирования полностью методом среднего-бокового канала, формулы:
L=(M+S)/sqrt(2), и
R=(M-S)/sqrt(2)
могут, например, применяться для получения первого канала L промежуточного аудиосигнала и для получения второго канала R промежуточного аудиосигнала, где M - первый канал кодированного аудиосигнала, и S - второй канал кодированного аудиосигнала.
Согласно варианту осуществления декодированный аудиосигнал может, например, быть стереофоническим аудиосигналом, содержащим в точности два канала. Например, первый канал декодированного аудиосигнала может, например, быть левым каналом стереофонического аудиосигнала, и второй канал декодированного аудиосигнала может, например, быть правым каналом стереофонического аудиосигнала.
Согласно варианту осуществления денормализатор 220 может, например, быть выполнен с возможностью модификации, в зависимости от значения денормализации, множества спектральных полос, по меньшей мере, одного из первого канала и второго канала промежуточного аудиосигнала для получения первого канала и второго канала декодированного аудиосигнала.
В другом варианте осуществления, показанном на фиг. 2b, денормализатор 220 может, например, быть выполнен с возможностью модификации, в зависимости от значения денормализации, множества спектральных полос, по меньшей мере, одного из первого канала и второго канала промежуточного аудиосигнала для получения денормализованного аудиосигнала. В таком варианте осуществления, устройство может, например, кроме того, содержать блок 230 постобработки и блок 235 преобразования. Блок 230 постобработки может, например, быть выполнен с возможностью проведения, по меньшей мере, одного из временного формирования шума на стороне декодера и формирования шума в частотной области на стороне декодера в отношении денормализованного аудиосигнала для получения постобработанного аудиосигнала. Блок (235) преобразования может, например, быть выполнен с возможностью преобразования постобработанного аудиосигнала из спектральной области во временную область для получения первого канала и второго канала декодированного аудиосигнала.
Согласно варианту осуществления, проиллюстрированному на фиг. 2c, устройство дополнительно содержит блок 215 преобразования, выполненный с возможностью преобразования промежуточного аудиосигнала из спектральной области во временную область. Денормализатор 220 может, например, быть выполнен с возможностью модификации, в зависимости от значения денормализации, по меньшей мере, одного из первого канала и второго канала промежуточного аудиосигнала, представленного во временной области, для получения первого канала и второго канала декодированного аудиосигнала.
В аналогичном варианте осуществления, проиллюстрированном на фиг. 2d, блок 215 преобразования может, например, быть выполнен с возможностью преобразования промежуточного аудиосигнала из спектральной области во временную область. Денормализатор 220 может, например, быть выполнен с возможностью модификации, в зависимости от значения денормализации, по меньшей мере, одного из первого канала и второго канала промежуточного аудиосигнала, представленного во временной области, для получения денормализованного аудиосигнала. Устройство дополнительно содержит блок 235 постобработки, который может, например, быть выполнен с возможностью обработки денормализованного аудиосигнала, который является перцепционно выбеленным аудиосигналом, для получения первого канала и второго канала декодированного аудиосигнала.
Согласно другому варианту осуществления, проиллюстрированному на фиг. 2e, устройство дополнительно содержит постпроцессор 212 спектральной области, выполненный с возможностью проведения временного формирования шума на стороне декодера в отношении промежуточного аудиосигнала. В таком варианте осуществления, блок 215 преобразования выполнен с возможностью преобразования промежуточного аудиосигнала из спектральной области во временную область, после проведения временного формирования шума на стороне декодера в отношении промежуточного аудиосигнала.
В другом варианте осуществления блок 210 декодирования может, например, быть выполнен с возможностью применения интеллектуального заполнения промежутка стереосигнала на стороне декодера в отношении кодированного аудиосигнала.
Кроме того, как показано на фиг. 2f, обеспечена система для декодирования кодированного аудиосигнала, содержащего четыре или более каналов для получения четырех каналов декодированного аудиосигнала, содержащего четыре или более каналов. Система содержит первое устройство 270 согласно одному из вышеописанных вариантов осуществления для декодирования первого канала и второго канала из четырех или более каналов кодированного аудиосигнала для получения первого канала и второго канала декодированного аудиосигнала. Кроме того, система содержит второе устройство 280 согласно одному из вышеописанных вариантов осуществления для декодирования третьего канала и четвертого канала из четырех или более каналов кодированного аудиосигнала для получения третьего канала и четвертого канала декодированного аудиосигнала.
Фиг. 3 демонстрирует систему для генерирования кодированного аудиосигнала из входного аудиосигнала и для генерирования декодированного аудиосигнала из кодированного аудиосигнала согласно варианту осуществления.
Система содержит устройство 310 для кодирования согласно одному из вышеописанных вариантов осуществления, причем устройство 310 для кодирования выполнено с возможностью генерирования кодированного аудиосигнала из входного аудиосигнала.
Кроме того, система содержит устройство 320 для декодирования, как описано выше. Устройство 320 для декодирования выполнено с возможностью генерирования декодированного аудиосигнала из кодированного аудиосигнала.
Аналогично, обеспечена система для генерирования кодированного аудиосигнала из входного аудиосигнала и для генерирования декодированного аудиосигнала из кодированного аудиосигнала. Система содержит систему согласно варианту осуществления, показанному на фиг. 1f, причем система согласно варианту осуществления, показанному на фиг. 1f, выполнена с возможностью генерирования кодированного аудиосигнала из входного аудиосигнала, и система согласно варианту осуществления, показанному на фиг. 2f, причем система варианта осуществления на фиг. 2f выполнена с возможностью генерирования декодированного аудиосигнала из кодированного аудиосигнала.
Далее описаны предпочтительные варианты осуществления.
Фиг. 4 демонстрирует устройство для кодирования согласно другому варианту осуществления. Помимо прочего, проиллюстрированы блок 105 предобработки и блок 102 преобразования согласно конкретному варианту осуществления. Блок 102 преобразования, помимо прочего, выполнен с возможностью проведения преобразования входного аудиосигнала из временной области в спектральную область, и блок преобразования выполнен с возможностью проведения на стороне кодера временного формирования шума и формирования шума в частотной области на стороне кодера в отношении входного аудиосигнала.
Кроме того, фиг. 5 демонстрирует модули обработки стереосигнала в устройстве для кодирования согласно варианту осуществления. Фиг. 5 демонстрирует нормализатор 110 и блок 120 кодирования.
Кроме того, фиг. 6 демонстрирует устройство для декодирования согласно другому варианту осуществления. Помимо прочего, фиг. 6 демонстрирует блок 230 постобработки согласно конкретному варианту осуществления. Блок 230 постобработки, помимо прочего, выполнен с возможностью получения обработанного аудиосигнала от денормализатора 220, и блок 230 постобработки выполнен с возможностью проведения, по меньшей мере, одного из временного формирования шума на стороне декодера и формирования шума в частотной области на стороне декодера в отношении обработанного аудиосигнала.
Детектор перехода во временной области (TD TD), оконное преобразование, MDCT, MDST и OLA могут, например, быть выполнены, как описано в [6a] или [6b]. MDCT и MDST образуют модулированное комплексное преобразование внахлестку (MCLT); осуществление по отдельности MDCT и MDST эквивалентно осуществлению MCLT; ʺMCLT в MDCTʺ представляет взятие лишь части MDCT MCLT и отбрасывание MDST (см. [12]).
Выбор разных длин окна на левом и правом канале может, например, принудительно кодировать методом двух моноканалов в этом кадре.
Временное формирование шума (TNS) может, например, осуществляться аналогично описанному в [6a] или [6b].
Формирование шума в частотной области (FDNS) и вычисление параметров FDNS может, например, быть аналогично процедуре, описанной в [8]. Одно отличие может, например, состоять в том, что параметры FDNS для кадров, где TNS неактивно, вычисляются из спектра MCLT. В кадрах, где TNS активно, MDST может, например, оцениваться из MDCT.
FDNS также можно заменить перцептивным выбеливанием спектра во временной области (как, например, описано в [13]).
Обработка стереосигнала состоит из обработки глобальной ILD, пополосной обработки M/S, распределения битовой скорости между каналами.
Единственная глобальная ILD вычисляется как
L,k
R,k
где MDCT - k-й коэффициент спектра MDCT на левом канале, и MDCT - k-й коэффициент спектра MDCT на правом канале. Глобальная ILD однородно квантуется:
bits
где ILD - количество битов, используемых для кодирования глобальной ILD.  хранится в битовом потоке.
bits
<< - операция битового сдвига, которая сдвигает биты на ILD слева путем вставки битов 0.
Другими словами:
Тогда отношение энергии каналов выражается в виде:
ILD
ILD
Если ratio>1, то правый канал масштабируется с коэффициентом , в противном случае левый канал масштабируется с коэффициентом ratio. Это, в сущности, означает, что масштабируется более громкий канал.
Если используется перцептивное выбеливание спектра во временной области (как, например, описано в [13]), единственная глобальная ILD также может вычисляться и применяться во временной области, до преобразования из временной области в частотную (т.е. до MDCT). Или, альтернативно, перцептивное выбеливание спектра может сопровождаться преобразованием из временной области в частотную, сопровождаемой единственной глобальной ILD в частотной области. Альтернативно, единственная глобальная ILD может вычисляться во временной области до преобразования из временной области в частотную и применяться в частотной области после преобразования из временной области в частотную.
M,k
S,k
L,k
R,k
Средний MDCT и боковой MDCT каналы формируются с использованием левого канала MDCT и правого канала MDCT в виде  и . Спектр делится на полосы, и для каждой полосы определяется, используется ли левый, правый, средний или боковой канал.
est
Глобальный коэффициент усиления G оценивается в отношении сигнала, содержащего совмещенные левый и правый каналы. В этом состоит отличие от [6b] и [6a]. Первая оценка коэффициента усиления, как описано в главе 5.3.3.2.8.1.1 ʺGlobal gain estimatorʺ в [6b] или [6a] может, например, использоваться, например, предполагая коэффициент усиления SNR 6 дБ на выборку на бит из скалярного квантования.
est
est
est
Оцененный коэффициент усиления можно умножать на постоянную для получения недооценки или переоценки в окончательном G. Затем сигналы в левом, правом, среднем и боковом каналах квантуются с использованием G, то есть размер шага квантования равен 1/G.
Затем квантованные сигналы кодируются с использованием арифметического кодера, кодера Хаффмана или любого другого энтропийного кодера, для получения количества необходимых битов. Например, можно использовать арифметический кодер на контекстной основе, описанный в главах 5.3.3.2.8.1.3-5.3.3.2.8.1.7 в [6b] или [6a]. Поскольку цикл определения битовой скорости (например, 5.3.3.2.8.1.2 в [6b] или в [6a]) будет выполняться после кодирования стереоканала, достаточно оценить необходимые биты.
В качестве примера, для каждого квантованного канала необходимое количество битов для арифметического кодирования на контекстной основе оценивается как описано в главах 5.3.3.2.8.1.3-5.3.3.2.8.1.7 в [6b] или [6a].
Согласно варианту осуществления, битовая оценка для каждого квантованного канала (левого, правого, среднего или бокового) определяется на основании следующего иллюстративного кода:
int context_based_arihmetic_coder_estimate (
int spectrum[],
int start_line,
int end_line,
int lastnz, // lastnz=последняя ненулевая спектральная линия
int & ctx, // ctx=контекст
int & probability, // 14-битовая вероятность с фиксированной точкой
const unsigned int cum_freq[N_CONTEXTS][]
// cum_freq=совокупные частотные таблицы, 14-битовая фиксированная точка
)
{
int nBits=0;
for (int k=start_line; k < min(lastnz, end_line); k+=2)
{
int a1=abs(spectrum[k]);
int b1=abs(spectrum[k+1]);
/* знаковые биты */
nBits += min(a1, 1);
nBits += min(b1, 1);
while (max(a1, b1) >= 4)
{
probability *= cum_freq[ctx][VAL_ESC];
int nlz=Number_of_leading_zeros(probability);
nBits += 2+nlz;
probability >>= 14 - nlz;
a1 >>= 1;
b1 >>= 1;
ctx=update_context(ctx, VAL_ESC);
}
int symbol=a1+4*b1;
probability *= (cum_freq[ctx][symbol] -
cum_freq[ctx][symbol+1]);
int nlz=Number_of_leading_zeros(probability);
nBits += nlz;
hContextMem->probability >>= 14 - nlz;
ctx=update_context(ctx, a1+b1);
}
return nBits;
}
где spectrum задается для указания квантованного спектра, подлежащего кодированию, start_line задается равным 0, end_line задается равным длине спектра, lastnz задается равным индексу последнего ненулевого элемента спектра, ctx задается равным 0, и вероятность задается равным 1 в 14-битовому обозначению с фиксированной точкой (16384=1<<14).
Как изложено, вышеприведенный иллюстративный код может применяться, например, для получения битовой оценки для, по меньшей мере, одного из левого канала, правого канала, среднего канала и бокового канала.
Некоторые варианты осуществления используют арифметический кодер, как описано в [6b] и [6a]. Дополнительные детали можно, например, найти в главе 5.3.3.2.8 ʺArithmetic coderʺ в [6b].
LR
Тогда оценочное количество битов для ʺполностью методом двух моноканаловʺ (b) равно сумме битов, необходимых для правого и левого канала.
MS
Тогда оценочное количество битов для ʺполностью M/Sʺ (b) равно сумме битов, необходимых для среднего и бокового канала.
В альтернативном варианте осуществления, который является альтернативой вышеприведенному иллюстративному коду, формула:
LR
может, например, применяться для вычисления оценочного количества битов для ʺполностью методом двух моноканаловʺ (b).
Кроме того, в альтернативном варианте осуществления, который является альтернативой вышеприведенному иллюстративному коду, формула:
MS
может, например, применяться для вычисления оценочного количества битов для ʺполностью M/Sʺ (b).
i
i
i
i
i
i
Для каждой полосы i с границами [lb,ub], проверяется, сколько битов будет использоваться для кодирования квантованного сигнала в диапазоне в режиме L/R () и в режиме M/S (). Другими словами, пополосная битовая оценка проводится для режима L/R для каждой полосы :, который приводит к пополосной битовой оценке в режиме L/R для полосы , и пополосная битовая оценка проводится для режима M/S для каждой полосы , который приводит к пополосной битовой оценке в режиме M/S для полосы : .
BW
Выбирается режим с меньшим количеством битов для полосы. Количество необходимых битов для арифметического кодирования оценивается, как описано в главах 5.3.3.2.8.1.3-5.3.3.2.8.1.7 в [6b] или [6a]. Суммарное количество битов, необходимое для кодирования спектра в режиме ʺпополосного M/Sʺ (b) равно сумме :
Режим ʺпополосный M/Sʺ нуждается в дополнительных nBands битах для сигнализации в каждой полосе, используется ли кодирование L/R или M/S. Выбор между ʺпополосным M/Sʺ, ʺполностью методом двух моноканаловʺ и ʺполностью M/Sʺ может, например, кодироваться как стереофонический режим в битовом потоке и тогда ʺполностью методом двух моноканаловʺ и ʺполностью M/Sʺ не нуждается в дополнительных битах по сравнению со ʺпополосным M/Sʺ для сигнализации.
LR
BW
MS
BW
LR
MS
Для арифметического кодера на контекстной основе, , используемое при вычислении b, не равно , используемому при вычислении b, а также , используемое при вычислении b, не равно , используемому при вычислении b, поскольку  и  зависят от выбора контекста для предыдущего  и , где j < i. b можно вычислять как сумму битов для левого и для правого канала, и b можно вычислять как сумму битов для среднего и для бокового канала, где биты для каждого канала можно вычислять с использованием иллюстративного кода context_based_arihmetic_coder_estimate_bandwise, где start_line задается равным 0, и end_line задается равным lastnz.
В альтернативном варианте осуществления, который является альтернативой вышеприведенному иллюстративному коду, формула:
LR
может, например, применяться для вычисления оценочного количества битов для ʺполностью методом двух моноканаловʺ (b), и может использоваться сигнализация кодирования L/R в каждой полосе.
Кроме того, В альтернативном варианте осуществления, который является альтернативой вышеприведенному иллюстративному коду, формула:
MS
может, например, применяться для вычисления оценочного количества битов для ʺполностью M/Sʺ (b), и может использоваться сигнализация кодирования M/S в каждой полосе.
G
В некоторых вариантах осуществления, сначала может оцениваться, например, коэффициент усиления , и, например, может оцениваться размер шага квантования, для которого предполагается, что существует достаточно битов для кодирования каналов в L/R.
Далее будут рассмотрены варианты осуществления, которые описывают разные способы определения пополосной битовой оценки, например, как определять  и  согласно конкретным вариантам осуществления.
Как изложено выше, согласно конкретному варианту осуществления, для каждого квантованного канала, необходимое количество битов для арифметического кодирования оценивается, например, как описано в главе 5.3.3.2.8.1.7 ʺBit consumption estimationʺ в [6b] или аналогичной главе [6a].
i
i
Согласно варианту осуществления пополосная битовая оценка определяется с использованием context_based_arihmetic_coder_estimate для вычисления каждого из  и  для каждого i, путем установления start_line на lb, end_line на ub, lastnz на индекс последнего ненулевого элемента спектра.
L
R
M
M
L
R
M
M
Четыре контекста (ctx, ctx, ctx, ctx) и четыре вероятности (p, p, p, p) инициализируются и затем повторно обновляются.
L
R
M
M
L
R
M
M
В начале оценки (для i=0) каждый контекст (ctx, ctx, ctx, ctx) задается равным 0, и каждая вероятность (p, p, p, p) задается равным 1 в 14-битовом обозначении с фиксированной точкой (16384=1<<14).
L
L
R
R
вычисляется как сумма  и , где  определяется с использованием context_based_arihmetic_coder_estimate путем установления spectrum для указания квантованного левого спектра, подлежащего кодированию, ctx задается равным ctx, и probability задается равным p, и  определяется с использованием context_based_arihmetic_coder_estimate путем установления spectrum для указания квантованного правого спектра, подлежащего кодированию, ctx задается равным ctx, и probability задается равным p.
M
M
S
S
вычисляется как сумма  и , где  определяется с использованием context_based_arihmetic_coder_estimate путем установления spectrum для указания квантованного среднего спектра, подлежащего кодированию, ctx задается равным ctx, и probability задается равным p, и  определяется с использованием context_based_arihmetic_coder_estimate путем установления spectrum для указания квантованного бокового спектра, подлежащего кодированию. ctx задается равным ctx, и probability задается равным p.
L
M
R
S
L
M
R
S
Если <, то ctx задается равным ctx, ctx задается равным ctx, p задается равным p, p задается равным p.
M
L
S
R
M
L
S
R
Если >= то ctx задается равным ctx, ctx задается равным ctx, p задается равным p, p задается равным p.
В альтернативном варианте осуществления, пополосная битовая оценка получается следующим образом:
L,k
R,k
M,k
L,k
R,k
S,k
L,k
R,k
Спектр делится на полосы, и для каждой полосы определяется, следует ли осуществлять обработку M/S. Для всех полос, где используется M/S, MDCT и MDCT заменяются на MDCT=0,5 (MDCT+MDCT) и MDCT=0,5 (MDCT-MDCT).
Пополосное принятие решения, следует ли выбрать M/S или L/R, может основываться, например, на оцененной экономии битов с обработкой M/S:
R,i
L,i
M,I
S,i
i
где NRG - энергия в i-ой полосе правого канала, NRG - энергия в i-ой полосе левого канала, NRG - энергия в i-ой полосе среднего канала, NRG - энергия в i-ой полосе бокового канала, и nlines - количество спектральных коэффициентов в i-ой полосе. Средний канал является суммой левого и правого канала, боковой канал является разностью левого и правого канала.
i
bitsSaved ограничивается оценочным количеством битов, подлежащим использованию для i-ой полосы:
фиг. 7 демонстрирует вычисление битовой скорости для пополосного принятия решения по M/S согласно варианту осуществления.
BW
В частности, на фиг. 7 изображен процесс вычисления b. Для снижения сложности, контекст арифметического кодера для кодирования спектра до полосы i-1 сохраняется и повторно используется в диапазоне i.
Следует отметить, что для арифметического кодера на контекстной основе,  и  зависят от контекста арифметического кодера, который зависит от выбора M/S или L/R во всех полосах j < i, как, например, описано выше.
Фиг. 8 демонстрирует принятие решения в отношении режима кодирования стерео согласно варианту осуществления.
L,k
R,k
M,k
S,k
L,k
R,k
M,k
S,k
Если выбрано ʺполностью методом двух моноканаловʺ, то полный спектр состоит из MDCT и MDCT. Если выбрано ʺполностью M/Sʺ, то полный спектр состоит из MDCT и MDCT. Если выбран ʺпополосный M/Sʺ, то некоторые полосы спектра состоят из MDCT и MDCT, и другие полосы состоят из MDCT и MDCT.
Стереофонический режим кодируется в битовом потоке. В режиме ʺпополосного M/Sʺ пополосное принятие решения по M/S также кодируется в битовом потоке.
LM,k
RS,k
LM,k
M,k
L,k
RS,k
S,k
R,k
LM,k
RS,k
Коэффициенты спектра в двух каналах после обработки стереосигнала обозначены как MDCT и MDCT. MDCT равен MDCT в полосах M/S или MDCT в полосах L/R, и MDCT равен MDCT в полосах M/S или MDCT в полосах L/R, в зависимости от стереофонического режима и пополосного принятия решения по M/S. Спектр, состоящий из MDCT, может, например, именоваться совместно кодированным каналом 0 (совместный кан. 0) или может, например, именоваться первым каналом, и спектр, состоящий из MDCT, может, например, именоваться совместно кодированным каналом 1 (совместный кан. 1) или может, например, именоваться вторым каналом.
Отношение разделения по битовой скорости вычисляется с использованием энергий обработанных стереоканалов:
Отношение разделения по битовой скорости однородно квантуется:
bits
где rsplit - количество битов, используемых для кодирования отношения разделения по битовой скорости. Если  и , то  уменьшается для . Если  и , то  увеличивается для .  хранится в битовом потоке.
Распределение битовой скорости между каналами имеет вид:
LM
LM
RS
RS
LM
LM
RS
RS
Дополнительно подтверждается, что существует достаточно битов для энтропийного кодера в каждом канале путем проверки, что bits-sideBits>minBits и bits-sideBits>minBits, где minBits - минимальное количество битов, необходимое энтропийному кодеру. При недостаточном количестве битов для энтропийного кодера  увеличивается/уменьшенный на 1, до удовлетворения условиям bits-sideBits>minBits и bits-sideBits>minBits.
est
k
k
k+1
k-1
2
2
Квантование, заполнение шумом и энтропийное кодирование, включающие в себя цикл определения битовой скорости, описано в 5.3.3.2 ʺGeneral encoding procedureʺ в 5.3.3 ʺMDCT based TCXʺ в [6b] или [6a]. Цикл определения битовой скорости можно оптимизировать с использованием оцененного G. Спектр мощности P (величина MCLT) используется для мер тональности/шума в квантовании и интеллектуальном заполнении промежутка (IGF), как описано в [6a] или [6b]. Поскольку для спектра мощности используется выбеленный и пополосный обработанный по M/S спектр MDCT, на спектре MDST должна осуществляться одна и та же обработка FDNS и M/S. Одно и то же масштабирование на основании глобальной ILD более громкого канала должно осуществляться для MDST, как это делалось для MDCT. Для кадров с активным TNS, спектр MDST, используемый для вычисления спектра мощности, оценивается из выбеленного и обработанного по M/S спектра MDCT: P=MDCT+(MDCT-MDCT).
Процесс декодирования начинается с декодирования и обратного квантования спектра совместно кодированных каналов, после чего следует заполнение шумом, как описано в 6.2.2 ʺMDCT based TCXʺ в [6b] или [6a]. Количество битов, выделенных каждому каналу, определяется на основании длины окна, стереофонического режима и отношения разделения по битовой скорости, которые кодируются в битовом потоке. Количество битов, выделенных каждому каналу, должно быть известно до полного декодирования битового потока.
В блоке интеллектуального заполнения промежутка (IGF) линии, квантованные на нуль в некотором диапазоне спектра, именуемым целевой плиткой, заполняются обработанным контентом из другого диапазона спектра, именуемого исходной плиткой. Вследствие пополосной обработки стереосигнала, стереофоническое представление (т.е. либо L/R, либо M/S) может отличаться для исходной и целевой плитки. Для обеспечения хорошего качества, если представление исходной плитки отличается от представления целевой плитки, исходная плитка обрабатывается для ее преобразования в представление целевого файла до заполнения промежутка на декодере. Эта процедура описана в [9]. Само IGF, в отличие от [6a] и [6b], применяется в выбеленной спектральной области, а не первоначальной спектральной области. В отличие от известных стереокодеков (например [9]), IGF применяется в выбеленной, скомпенсированной по ILD спектральной области.
На основании стереофонического режима и пополосного принятия решения по M/S левый и правый канал строятся из совместно кодированных каналов:  и .
ILD
ILD
Если ratio>1, то правый канал масштабируется с коэффициентом ratio, в противном случае левый канал масштабируется с коэффициентом .
Для каждого случая, когда может произойти деление на 0, к знаменателю прибавляется малая величина эпсилон.
Для промежуточных битовых скоростей, например, 48 кбит/с, кодирование на основе MDCT может, например, приводить к слишком грубому квантованию спектра для согласования с целью расходования битов. Это повышает необходимость в параметрическом кодировании, которое объединяется с дискретным кодированием в той же спектральной области, адаптированный на покадровой основе, увеличивая точность.
В дальнейшем описаны аспекты некоторых из тех вариантов осуществления, которые используют заполнение стерео. Следует отметить, что для вышеописанных вариантов осуществления, не требуется использовать заполнение стерео. Поэтому только некоторые из вышеописанных вариантов осуществления используют заполнение стерео. Другие варианты осуществления вышеописанных вариантов осуществления вовсе не используют заполнение стерео.
Частотное заполнение стереосигнала в стереосигнале частотной области MPEG-H описан, например, в [11]. В [11] целевая энергия для каждой полосы достигается с использованием энергии полосы, отправленной от кодера в форме масштабных коэффициентов (например, в AAC). Если применяется формирование шума в частотной области (FDNS) и спектральная огибающая кодируется с использованием LSF (частот спектральных линий) (см. [6a], [6b], [8]), невозможно изменять масштабирование только для некоторых полос частот (спектральных полос) по мере необходимости из алгоритма заполнения стерео, описанного в [11].
Сначала обеспечивается некоторая основополагающая информация.
Когда используется кодирование среднего/бокового сигнала, боковые сигналы можно кодировать по-разному.
Согласно первой группе вариантов осуществления боковой сигнал S кодируется таким же образом, как средний сигнал M. Квантование проводится, но дополнительные этапы для снижения необходимой битовой скорости не осуществляются. В целом, такой подход позволят весьма точно реконструировать боковой сигнал S на стороне декодера, но, с другой стороны, требует большого количества битов для кодирования.
res
Согласно второй группе вариантов осуществления остаточный боковой сигнал S генерируется из первоначального бокового сигнала S на основании сигнала M. Согласно варианту осуществления, остаточный боковой сигнал может, например, вычисляться согласно формуле:
res
S=S - g ⋅ M.
Другие варианты осуществления могут, например, использовать другие определения остаточного бокового сигнала.
res
res
Остаточный сигнал S квантуется и передается на декодер совместно с параметром g. Путем квантования остаточного сигнала Sвместо первоначального бокового сигнала S, в целом, больше спектральных значений квантуются на нуль. Это, в целом, экономит количество битов, необходимое для кодирования и передачи по сравнению с квантованным первоначальным боковым сигналом S.
В некоторых из этих вариантов осуществления второй группы вариантов осуществления, единственный параметр g определяется для полного спектра и передается на декодер. В других вариантах осуществления второй группы вариантов осуществления, каждая из множества полос частот/спектральных полосы частотного спектра может, например, содержать два или более спектральных значений, и параметр g определяется для каждой из полос частот/спектральных полос и передается на декодер.
Фиг. 12 демонстрирует обработку стереосигнала на стороне кодера согласно первой или второй группам вариантов осуществления, который не использует заполнение стерео.
Фиг. 13 демонстрирует обработку стереосигнала на стороне декодера согласно первой или второй группам вариантов осуществления, который не использует заполнение стерео.
Согласно третьей группе вариантов осуществления, используется заполнение стерео. В некоторых из этих вариантов осуществления, на стороне декодера, боковой сигнал S для некоторого момента времени t генерируется из среднего сигнала непосредственно предыдущего момента времени t-1.
Генерирование боковой сигнал S для некоторого момента времени t из среднего сигнала непосредственно предыдущего момента времени t-1 на стороне декодера может, например, проводиться согласно формуле:
b
S(t)=h ⋅ M(t-1).
b
b
b
На стороне кодера, параметр h определяется для каждой полосы частот из множества полос частот спектра. После определения параметров h, кодер передает параметры h на декодер. В некоторых вариантах осуществления, спектральные значения самого бокового сигнала S или его остатка не передаются на декодер, такой подход позволяет экономить количество необходимых битов.
В некоторых других вариантах осуществления третьей группы вариантов осуществления, по меньшей мере, для тех полос частот, где боковой сигнал громче, чем средний сигнал, спектральные значения бокового сигнала этих полос частот кодируются в явном виде и отправляются на декодер.
res
res
Согласно четвертой группе вариантов осуществления, некоторые из полос частот бокового сигнала S кодируются путем явного кодирования первоначального бокового сигнала S (см. первую группу варианта осуществления) или остаточного бокового сигнала S, тогда как для других полос частот используется заполнение стерео. Такой подход объединяет первую или вторую группы вариантов осуществления, с третьей группой вариантов осуществления, которая использует заполнение стерео. Например, более низкие полосы частот могут, например, кодироваться путем квантования первоначального бокового сигнала S или остаточного бокового сигнала S, тогда как для других, более высоких полос частот, может применяться, например, заполнение стерео.
Фиг. 9 демонстрирует обработку стереосигнала на стороне кодера согласно третьей или четвертой группам вариантов осуществления, которые используют заполнение стерео.
Фиг. 10 демонстрирует обработку стереосигнала на стороне декодера согласно третьей или четвертой группам вариантов осуществления, которые используют заполнение стерео.
Те из вышеописанных вариантов осуществления, которые используют заполнение стерео, могут, например, использовать заполнение стерео, как описано в MPEG-H, см. стереосигнал частотной области MPEG-H (см., например, [11]).
Некоторые из вариантов осуществления, которые используют заполнение стерео, могут, например, применять алгоритм заполнения стерео, описанный в [11] на системах, где спектральная огибающая кодируется как LSF, объединенная с заполнением шумом. Кодирование спектральной огибающей, можно, например, реализовать, как описано, например, в [6a], [6b], [8]. Заполнение шумом, можно, например, реализовать, как описано в [6a] и [6b].
s
s
В некоторых конкретных вариантах осуществления, обработка заполнения стерео, включающая в себя вычисление параметра заполнение стерео, может, например, проводиться в полосах M/S в области частот, например, от нижней частоты, например, 0,08 F (F=частота дискретизации), до, например, верхней частоты, например, частоты перекрещивания IGF.
s
Например, для частотных участков, лежащих ниже, чем нижняя частота (например, 0,08 F), первоначальный боковой сигнал S или остаточный боковой сигнал, выведенный из первоначального бокового сигнала S, может, например, квантоваться и передаваться на декодер. Для частотных участков, лежащих выше, чем верхняя частота (например, частота перекрещивания IGF), может проводиться, например, интеллектуальное заполнение промежутка (IGF).
s
В частности, в некоторых из вариантов осуществления, боковой канал (второй канал), для тех полос частот в диапазоне заполнения стерео (например, от 0,08 частоты дискретизации до частоты перекрещивания IGF), которые полностью квантованы на нуль, может, например, заполняться с использованием ʺкопирования поверхʺ из понижающего микширования выбеленного спектра MDCT предыдущего кадра (IGF=интеллектуальное заполнение промежутка). ʺКопирование поверхʺ может, например, применяться в дополнение к заполнению шумом и соответственно масштабироваться в зависимости от поправочных коэффициентов, которые отправляются от кодера. В других вариантах осуществления, нижняя частота может принимать значения, отличные от 0,08 F.
s
s
s
s
s
s
s
Вместо 0,08 F, в некоторых вариантах осуществления, нижняя частота может, например, принимать значение в диапазоне от 0 до 0,50 F.В конкретных вариантах осуществления нижняя частота может принимать значение в диапазоне от 0,01 F до 0,50 F. Например, нижняя частота может составлять, например, например, 0,12 F, 0,20 F или 0,25 F.
В других вариантах осуществления, помимо или вместо использования интеллектуального заполнения промежутка, для частот превышающих верхнюю частоту, может проводиться, например, заполнение шумом.
В дополнительных вариантах осуществления верхней частоты не существует, и заполнение стерео проводится для каждого частотного участка, более высокого, чем нижняя частота.
В других дополнительных вариантах осуществления нижней частоты не существует, и заполнение стерео проводится для частотных участков от самой низкой полосы частот до верхней частоты.
В других дополнительных вариантах осуществления, не существует ни нижней частоты, ни верхней частоты, и заполнение стерео проводится для всего частотного спектра.
В дальнейшем описаны конкретные варианты осуществления, которые используют заполнение стерео.
В частности, описано заполнение стерео с поправочными коэффициентами согласно конкретным вариантам осуществления. Заполнение стерео с поправочными коэффициентами может, например, применяться в вариантах осуществления блоков обработки заполнения стерео на фиг. 9 (сторона кодера) и фиг. 10 (сторона декодера).
В дальнейшем,
R
- Dmx может, например, обозначать средний сигнал выбеленного спектра MDCT,
R
- S может, например, обозначать боковой сигнал выбеленного спектра MDCT,
I
- Dmx может, например, обозначать средний сигнал выбеленного спектра MDST,
I
- S может, например, обозначать боковой сигнал выбеленного спектра MDST,
R
- prevDmx может, например, обозначать средний сигнал выбеленного спектра MDCT, с задержкой на один кадр, и
I
- prevDmx может, например, обозначать средний сигнал выбеленного спектра MDST, с задержкой на один кадр.
Кодирование с заполнением стерео может применяться, когда результатом принятия решения по кодированию стерео является «M/S для всех полос» (полностью M/S) или «M/S для всех полос с заполнением стерео» (пополосный M/S).
Когда определено применять обработку полностью методом двух моноканалов, заполнение стерео пропускается. Кроме того, когда для некоторых из спектральных полос (полос частот) выбирается кодирование L/R, заполнение стерео также пропускается для этих спектральных полос.
Теперь рассмотрим конкретные варианты осуществления использование заполнение стерео. Обработка в блоке может, например, проводиться следующим образом:
s
s
Для полос частот (fb), попадающих в область частот, начиная с нижней частоты (например, 0,08 F (F=частота дискретизации)), до верхней частоты, (например, частоты перекрещивания IGF):
Res
S
R
R
- остаток  бокового сигнала  вычисляется, например, согласно:
R
R
R
R
I
I
Res=S-aDmx-aDmx,
R
I
где a - действительная часть, и a - мнимая часть комплексного коэффициента предсказания (см. [10]).
Res
S
I
I
остаток  бокового сигнала  вычисляется, например, согласно:
I
I
R
R
I
I
Res=S-aDmx-aDmx.
- вычисляются энергии, например, комплекснозначные энергии, остатка Res и понижающего микширования предыдущего кадра (среднего сигнала) prevDmx:
,
В вышеприведенных формулах:
fb
Res
R
суммирует квадраты всех спектральных значений в полосе частот .
fb Res
I
суммирует квадраты всех спектральных значений в полосе частот .
fb
prevDmx
R
суммирует квадраты всех спектральных значений в полосе частот .
fb
prevDmx
I
суммирует квадраты всех спектральных значений в полосе частот .
ERes
EprevDmx
fb
fb
- из этих вычисленных энергий, (, ), поправочные коэффициенты заполнения стерео вычисляются и передаются в качестве вспомогательной информации на декодер:
согласно варианту осуществления, ε=0. В других вариантах осуществления, например, 0,1 > ε > 0, например, во избежание деления на 0.
R
I
- пополосный масштабный коэффициент может, например, вычисляться в зависимости от вычисленных поправочных коэффициентов заполнения стерео, например, для каждой спектральной полосы, для которой используется заполнение стерео. Пополосное масштабирование выходного среднего и бокового (остаточного) сигналов масштабным коэффициентом введено для компенсации потери энергии, поскольку не существует обратной операции комплексного предсказания для реконструкции бокового сигнала из остатка на стороне декодера (a=a=0).
В конкретном варианте осуществления, пополосный масштабный коэффициент, может, например, вычисляться согласно:
где  - (например, комплексная) энергия понижающего микширования текущего кадра (которая может, например, вычисляться, как описано выше).
- в некоторых вариантах осуществления, после обработки заполнения стерео в блоке обработки стереосигнала и до квантования, бины остатка, попадающие в частотный диапазон заполнения стерео, могут, например, устанавливаться на нуль, если для эквивалентной полосы понижающее микширование (средний) громче, чем остаток (боковой сигнал):
Таким образом, больше битов затрачивается на кодирование понижающего микширования и более низкочастотных бинов остатка, повышая общее качество.
В альтернативных вариантах осуществления, все биты остатка (бокового сигнала) могут, например, устанавливаться на нуль. Такие альтернативные варианты осуществления могут основываться, например, на предположении, что понижающее микширование в большинстве случаев громче остатка.
Фиг. 11 демонстрирует заполнение стерео бокового сигнала согласно некоторым конкретным вариантам осуществления на стороне декодера.
Заполнение стерео применяется в отношении бокового канала после декодирования, обратного квантования и заполнения шумом. Для полос частот, в диапазоне заполнения стерео, которые квантуются на нуль, ʺкопирование поверхʺ для понижающего микширования выбеленного спектра MDCT последнего кадра может, например, применяться (как показано на фиг. 11), если энергия полосы после заполнения шумом не достигают целевой энергии. Целевая энергия на полосу частот вычисляется из стереофонических поправочных коэффициентов, которые отправляются в качестве параметров от кодера, например, согласно формуле
.
Генерация бокового сигнала на стороне декодера (которая может, например, именоваться предыдущим ʺкопирование поверхʺ понижающего микширование) проводится, например, согласно формуле:
i
fb
fb
где  обозначает частотные бины (спектральные значения) в полосе частот , N - заполненный шумом спектр, и facDmx - коэффициент, который применяется на предыдущем понижающем микшировании, которое зависит от поправочных коэффициентов заполнения стерео, отправленных от кодера.
fb
fb
facDmx может, в конкретном варианте осуществления, например, вычисляться для каждой полосы частот как:
fb
fb
fb
где EN - энергия заполненного шумом спектра в полосе ,и EprevDmx - энергия соответствующего понижающего микширования предыдущего кадра.
На стороне кодера, альтернативные варианты осуществления не учитывают спектр MDST (или спектр MDCT). В этих вариантах осуществления, действие на стороне кодера адаптируется, например, следующим образом:
s
s
для полос частот (fb), попадающих в область частот, начиная с нижней частоты (например, 0,08 F (F=частота дискретизации)), до верхней частоты, (например, частоты перекрещивания IGF):
Res
S
R
- остаток  бокового сигнала  вычисляется, например, согласно:
R
где a - (например, действительный) коэффициент предсказания.
- энергии остатка Res и понижающего микширования предыдущего кадра (среднего сигнала) EprevDmx вычисляются:
,
.
ERes
EprevDmx
fb
fb
- Из этих вычисленных энергий, (, ), поправочные коэффициенты заполнения стерео вычисляются и передаются в качестве вспомогательной информации на декодер:
.
Согласно варианту осуществления, ε=0. В других вариантах осуществления, например, 0,1 > ε > 0, например, во избежание деления на 0.
- Пополосный масштабный коэффициент может, например, вычисляться в зависимости от вычисленных поправочных коэффициентов заполнения стерео, например, для каждой спектральной полосы, для которой используется заполнение стерео.
В конкретном варианте осуществления, пополосный масштабный коэффициент, может, например, вычисляться согласно:
где  - энергия понижающего микширования текущего кадра (которая может, например, вычисляться, как описано выше).
- В некоторых вариантах осуществления, после обработки заполнения стерео в блоке обработки стереосигнала и до квантования, бины остатка, попадающие в частотный диапазон заполнения стерео, могут, например, устанавливаться на нуль, если для эквивалентной полосы понижающее микширование (средний) громче, чем остаток (боковой сигнал):
Таким образом, больше битов затрачивается на кодирование понижающего микширования и более низкочастотных бинов остатка, повышая общее качество.
В альтернативных вариантах осуществления, все биты остатка (бокового сигнала) могут, например, устанавливаться на нуль. Такие альтернативные варианты осуществления могут основываться, например, на предположении, что понижающее микширование в большинстве случаев громче остатка.
Согласно некоторым из вариантов осуществления, средство может, например, обеспечиваться для применения заполнения стерео в системах с FDNS, где спектральная огибающая кодируется с использованием LSF (или аналогичного кодирования, где невозможно независимо изменять масштабирование в единичных полосах).
Согласно некоторым из вариантов осуществления, средство может, например, обеспечиваться для применения заполнения стерео в системах без комплексного/действительного предсказания.
Некоторые из вариантов осуществления могут, например, использовать параметрическое заполнение стерео, в том смысле, что явные параметры (поправочные коэффициенты заполнения стерео) отправляются от кодера к декодеру, для управления заполнением стерео (например, с понижающим микшированием предыдущего кадра) выбеленного левого и правого спектра MDCT.
Более общо:
в некоторых из вариантов осуществления, блок 120 кодирования, показанный на фиг. 1a - фиг. 1e, может, например, быть выполнен с возможностью генерирования обработанного аудиосигнала, таким образом, что упомянутая, по меньшей мере, одна спектральная полоса первого канала обработанного аудиосигнала является упомянутой спектральной полосой упомянутого среднего сигнала, и таким образом, что упомянутая, по меньшей мере, одна спектральная полоса второго канала обработанного аудиосигнала является упомянутой спектральной полосой упомянутого бокового сигнала. Для получения кодированного аудиосигнала, блок 120 кодирования может, например, быть выполнен с возможностью кодирования упомянутой спектральной полосы упомянутого бокового сигнала путем определения поправочного коэффициента для упомянутой спектральной полосы упомянутого бокового сигнала. Блок 120 кодирования может, например, быть выполнен с возможностью определения упомянутого поправочного коэффициента для упомянутой спектральной полосы упомянутого бокового сигнала в зависимости от остатка и в зависимости от спектральной полосы предыдущего среднего сигнала, которая соответствует упомянутой спектральной полосе упомянутого среднего сигнала, причем предыдущий средний сигнал предшествует упомянутому среднему сигналу по времени. Кроме того, блок 120 кодирования может, например, быть выполнен с возможностью определения остатка в зависимости от упомянутой спектральной полосы упомянутого бокового сигнала, и в зависимости от упомянутой спектральной полосы упомянутого среднего сигнала.
Согласно некоторым из вариантов осуществления, блок 120 кодирования может, например, быть выполнен с возможностью определения упомянутого поправочного коэффициента для упомянутой спектральной полосы упомянутого бокового сигнала согласно формуле
fb
fb
fb
где correction_factor указывает упомянутый поправочный коэффициент для упомянутой спектральной полосы упомянутого бокового сигнала, где Eres указывает остаточную энергию в зависимости от энергии спектральной полосы упомянутого остатка, которая соответствует упомянутой спектральной полосе упомянутого среднего сигнала, где EprevDmx указывает предыдущую энергию в зависимости от энергии спектральной полосы предыдущего среднего сигнала, и где ε=0, или где 0,1>ε>0.
В некоторых из вариантов осуществления, упомянутый остаток может, например, быть задан согласно
Res
R
R
R
R
=S-aDmx,
R
R
R
R
S
Dmx
где Res - упомянутый остаток, где  - упомянутый боковой сигнал, где a- (например, действительный) коэффициент (например, коэффициент предсказания), где  - упомянутый средний сигнал, причем блок (120) кодирования выполнен с возможностью определения упомянутой остаточной энергии согласно
Согласно некоторым из вариантов осуществления, упомянутый остаток задан согласно
Res
R
R
R
R
I
I
=S-aDmx-aDmx,
R
R
R
I
R
I
I
S
Dmx
Dmx
S
где Res - упомянутый остаток, где  - упомянутый боковой сигнал, где a - действительная часть комплексного коэффициента (предсказания), и где a - мнимая часть упомянутого комплексного коэффициента (предсказания), где  - упомянутый средний сигнал, где  - другой средний сигнал в зависимости от первого канала нормализованного аудиосигнала и в зависимости от второго канала нормализованного аудиосигнала, причем другой остаток другого бокового сигнала  в зависимости от первого канала нормализованного аудиосигнала и в зависимости от второго канала нормализованного аудиосигнала задан согласно
Res
I
I
R
R
I
I
=S-aDmx-aDmx,
причем блок 120 кодирования может, например, быть выполнен с возможностью определения упомянутой остаточной энергии согласно
,
причем блок 120 кодирования может, например, быть выполнен с возможностью определения предыдущей энергии в зависимости от энергии спектральной полосы упомянутого остатка, которая соответствует упомянутой спектральной полосе упомянутого среднего сигнала, и в зависимости от энергии спектральной полосы упомянутого другого остатка, которая соответствует упомянутой спектральной полосе упомянутого среднего сигнала.
В некоторых из вариантов осуществления, блок 210 декодирования, показанный на фиг. 2a - фиг. 2e, может, например, быть выполнен с возможностью определения для каждой спектральной полосы из упомянутого множества спектральных полос, были ли кодированы упомянутая спектральная полоса первого канала кодированного аудиосигнала и упомянутая спектральная полоса второго канала кодированного аудиосигнала, с использованием кодирования методом двух моноканалов или с использованием кодирования среднего-бокового канала. Кроме того, блок 210 декодирования может, например, быть выполнен с возможностью получения упомянутой спектральной полосы второго канала кодированного аудиосигнала путем реконструкции упомянутой спектральной полосы второго канала. Если использовалось кодирование среднего-бокового канала, упомянутая спектральная полоса первого канала кодированного аудиосигнала является спектральной полосой среднего сигнала, и упомянутая спектральная полоса второго канала кодированного аудиосигнала является спектральной полосой бокового сигнала. Кроме того, если использовалось кодирование среднего-бокового канала, блок 210 декодирования может, например, быть выполнен с возможностью реконструкции упомянутой спектральной полосы бокового сигнала в зависимости от поправочного коэффициента для упомянутой спектральной полосы бокового сигнала и в зависимости от спектральной полосы предыдущего среднего сигнала, которая соответствует упомянутой спектральной полосе упомянутого среднего сигнала, причем предыдущий средний сигнал предшествует упомянутому среднему сигналу по времени.
Согласно некоторым из вариантов осуществления, если использовалось кодирование среднего-бокового канала, блок 210 декодирования может, например, быть выполнен с возможностью реконструкции упомянутой спектральной полосы бокового сигнала путем реконструкции спектральных значений упомянутой спектральной полосы бокового сигнала согласно
S
prevDmx
N
i
i
i
fb
где  указывает спектральные значения упомянутой спектральной полосы бокового сигнала, где  указывает спектральные значения спектральной полосы упомянутого предыдущего среднего сигнала, где  указывает спектральные значения заполненного шумом спектра, где facDmx задан согласно
correction_factor
EprevDmx
fb
fb
fb
где  - упомянутый поправочный коэффициент для упомянутой спектральной полосы бокового сигнала, где EN- энергия заполненного шумом спектра, где  - энергия упомянутой спектральной полосы упомянутого предыдущего среднего сигнала, и где ε=0, или где 0,1>ε>0.
в некоторых из вариантов осуществления, остаток может, например, выводиться из алгоритма комплексного стереофонического предсказания на кодере, тогда как на стороне декодера не существует стереофонического предсказания (действительного или комплексного).
Согласно некоторым из вариантов осуществления, масштабирование коррекции энергии спектра на стороне кодера может, например, использоваться, для компенсации того факта, что на стороне декодера не существует обработки обратного предсказания.
Хотя некоторые аспекты были описаны в контексте устройства, очевидно, что эти аспекты также представляют описание соответствующего способа, где блок или устройство соответствует этапу способа или признака этапа способа. Аналогично, аспекты, описанные в контексте этапа способа, также представляют описание соответствующего блока или элемента или признака соответствующего устройства. Некоторые или все из этапов способа могут выполняться аппаратным устройством (или с его помощью), например, микропроцессором, программируемым компьютером или электронной схемой. В некоторых вариантах осуществления, один или более наиболее важных этапов способа могут выполняться таким устройством.
В зависимости от некоторых требований к реализации варианты осуществления изобретения могут быть реализованы аппаратными средствами или программными средствами или, по меньшей мере, частично аппаратными средствами или, по меньшей мере, частично программными средствами. Реализация может осуществляться с использованием цифрового носителя данных, например, флоппи-диска, DVD, Blu-Ray, CD, ROM, PROM, EPROM, EEPROM или флеш-памяти, на котором хранятся электронно считываемые сигналы управления, которые взаимодействуют (или способны взаимодействовать) с программируемой компьютерной системой, таким образом, что осуществляется соответствующий способ. Таким образом, цифровой носитель данных может быть компьютерно-читаемым.
Некоторые варианты осуществления согласно изобретению содержат носитель данных, имеющий электронно считываемые сигналы управления, которые способны взаимодействовать с программируемой компьютерной системой, таким образом, что осуществляется один из описанных здесь способов.
В общем случае, варианты осуществления настоящего изобретения могут быть реализованы в виде компьютерного программного продукта с программным кодом, причем программный код предназначен для осуществления одного из способов, когда компьютерный программный продукт выполняется на компьютере. Программный код может, например, храниться на машиночитаемом носителе.
Другие варианты осуществления содержат компьютерную программу для осуществления одного из описанных здесь способов, хранящихся на машиночитаемом носителе.
Другими словами, вариант осуществления способа, отвечающего изобретению, таким образом, предусматривает компьютерную программу, имеющую программный код для осуществления одного из описанных здесь способов, когда компьютерная программа выполняется на компьютере.
Дополнительный вариант осуществления способов, отвечающих изобретению, таким образом, обеспечивает носитель данных (или цифровой носитель данных или компьютерно-читаемый носитель), на котором записана компьютерная программа для осуществления одного из описанных здесь способов. Носитель данных, цифровой носитель данных или носитель записи обычно является материальным и/или нетранзиторным (некратковременным).
Дополнительный вариант осуществления способа, отвечающего изобретению, таким образом, предусматривает поток данных или последовательность сигналов, представляющий компьютерную программу для осуществления одного из описанных здесь способов. Поток данных или последовательность сигналов может, например, обеспечивать перенос через соединение передачи данных, например, через интернет.
Дополнительный вариант осуществления содержит средство обработки, например, компьютер, или программируемое логическое устройство, выполненное с возможностью или адаптированное для осуществления одного из описанных здесь способов.
Дополнительный вариант осуществления содержит компьютер, на котором установлена компьютерная программа для осуществления одного из описанных здесь способов.
Дополнительный вариант осуществления согласно изобретению содержит устройство или систему, выполненную с возможностью переноса (например, электронного или оптического) компьютерной программы для осуществления одного из описанных здесь способов на приемник. Приемник может представлять собой, например, компьютер, мобильное устройство, запоминающее устройство и т.п. Устройство или система может, например, содержать файловый сервер для переноса компьютерной программы на приемник.
В некоторых вариантах осуществления, программируемое логическое устройство (например, вентильная матрица, программируемая пользователем) можно использовать для осуществления некоторых или всех из функциональных возможностей описанных здесь способов. В некоторых вариантах осуществления вентильная матрица, программируемая пользователем, может взаимодействовать с микропроцессором для осуществления одного из описанных здесь способов. В общем случае, способы, предпочтительно осуществляются любым аппаратным устройством.
Описанное здесь устройство может быть реализовано с использованием аппаратного устройства или с использованием компьютера или с использованием комбинации аппаратного устройства и компьютера.
Описанные здесь способы могут осуществляться с использованием аппаратного устройства или с использованием компьютера или с использованием комбинации аппаратного устройства и компьютера.
Вышеописанные варианты осуществления призваны лишь иллюстрировать принципы настоящего изобретения. Следует понимать, что модификации и вариации описанных здесь конфигураций и деталей будут очевидны другим специалистам в данной области техники. Таким образом, изобретение ограничивается только объемом нижеследующей формулы изобретения, но не конкретными деталями, представленными посредством описания и объяснения рассмотренных здесь вариантов осуществления.
БИБЛИОГРАФИЯ
[1] J. Herre, E. Eberlein and K. Brandenburg, "Combined Stereo Coding," in 93rd AES Convention, San Francisco, 1992.
[2] J. D. Johnston and A. J. Ferreira, "Sum-difference stereo transform coding," in Proc. ICASSP, 1992.
[3] ISO/IEC 11172-3, Information technology - Coding of moving pictures and associated audio for digital storage media at up to about 1,5 Mbit/s - Part 3: Audio, 1993.
[4] ISO/IEC 13818-7, Information technology - Generic coding of moving pictures and associated audio information - Part 7: Advanced Audio Coding (AAC), 2003.
[5] J.-M. Valin, G. Maxwell, T. B. Terriberry and K. Vos, "High-Quality, Low-Delay Music Coding in the Opus Codec," in Proc. AES 135th Convention, New York, 2013.
[6a] 3GPP TS 26.445, Codec for Enhanced Voice Services (EVS); Detailed algorithmic description, V 12.5.0, Dezember 2015.
[6b] 3GPP TS 26.445, Codec for Enhanced Voice Services (EVS); Detailed algorithmic description, V 13.3.0, September 2016.
[7] H. Purnhagen, P. Carlsson, L. Villemoes, J. Robilliard, M. Neusinger, C. Helmrich, J. Hilpert, N. Rettelbach, S. Disch and B. Edler, "Audio encoder, audio decoder and related methods for processing multi-channel audio signals using complex prediction". US Patent 8,655,670 B2, 18 February 2014.
[8] G. Markovic, F. Guillaume, N. Rettelbach, C. Helmrich and B. Schubert, "Linear prediction based coding scheme using spectral domain noise shaping". European Patent 2676266 B1, 14 February 2011.
[9] S. Disch, F. Nagel, R. Geiger, B. N. Thoshkahna, K. Schmidt, S. Bayer, C. Neukam, B. Edler and C. Helmrich, "Audio Encoder, Audio Decoder and Related Methods Using Two-Channel Processing Within an Intelligent Gap Filling Framework". International Patent PCT/EP2014/065106, 15 07 2014.
[10] C. Helmrich, P. Carlsson, S. Disch, B. Edler, J. Hilpert, M. Neusinger, H. Purnhagen, N. Rettelbach, J. Robilliard and L. Villemoes, "Efficient Transform Coding Of Two-channel Audio Signals By Means Of Complex-valued Stereo Prediction," in Acoustics, Speech and Signal Processing (ICASSP), 2011 IEEE International Conference on, Prague, 2011.
[11] C. R. Helmrich, A. Niedermeier, S. Bayer and B. Edler, "Low-complexity semi-parametric joint-stereo audio transform coding," in Signal Processing Conference (EUSIPCO), 2015 23rd European, 2015.
[12] H. Malvar, ʺA Modulated Complex Lapped Transform and its Applications to Audio Processingʺ in Acoustics, Speech, and Signal Processing (ICASSP), 1999. Proceedings., 1999 IEEE International Conference on, Phoenix, AZ, 1999.
[13] B. Edler and G. Schuller, "Audio coding using a psychoacoustic pre- and post-filter," Acoustics, Speech, and Signal Processing, 2000. ICASSP '00.