[1] Данная заявка испрашивает приоритет по предварительной патентной заявке США № 61/828,445, поданной 29 мая 2013 г., предварительной патентной заявке США № 61/829,791, поданной 31 мая 2013 г., предварительной патентной заявке США № 61/899,034 поданной 1 ноября 2013 г., предварительной патентной заявке США No 61/899,041, поданной 1 ноября 2013 г., предварительной патентной заявке США № 61/829,182, поданной 30 мая 2013 г., предварительной патентной заявке США № 61/829,174, поданной 30 мая 2013 г., предварительной патентной заявке США № 61/829,155, поданной 30 мая 2013 г., предварительной патентной заявке США № 61/933,706 поданной 30 января 2014 г., предварительной патентной заявке США № 61/829,846, поданной 31 мая 2013 г., предварительной патентной заявке США № 61/886,605, поданной 3 октября 2013 г., предварительной патентной заявке США № 61/886,617, поданной 3 октября 2013 г., предварительной патентной заявке США № 61/925,158, поданной 8 января 2014 г., предварительной патентной заявке США № 61/933,721, поданной 30 января 2014 г., предварительной патентной заявке США № 61/925,074, поданной 8 января 2014 г., предварительной патентной заявке США № 61/925,112, поданной 8 января 2014 г., предварительной патентной заявке США № 61/925,126, поданной 8 января 2014 г., предварительной патентной заявке США № 62/003,515, поданной 27 мая 2014 г., и предварительной патентной заявке США № 61/828,615, поданной 29 мая 2013 г., содержание которых в полном объеме включено в данное описание в порядке ссылки.
Область техники, к которой относится изобретение
[2] Данное изобретение относится к аудиоданным и, в частности, к сжатию аудиоданных.
Уровень техники
[3] Сигнал амбиофонии более высокого порядка (HOA) (часто представленный множеством коэффициентов сферических гармоник (SHC) или другими иерархическими элементами), является трехмерным представлением звукового поля. Это представление HOA или SHC может представлять это звуковое поле независимо от локальной геометрии громкоговорителей, используемых для воспроизведения многоканального аудиосигнала, рендеризуемого из этого сигнала SHC. Этот сигнал SHC также может облегчать обратную совместимость, поскольку этот сигнал SHC можно рендеризовать в общеизвестные и широко распространенные многоканальные форматы, например, формат аудиоканалов 5.1 или формат аудиоканалов 7.1. Таким образом, представление SHC может обеспечивать лучшее представление звукового поля, которое также обладает обратной совместимостью.
Сущность изобретения
[4] В целом, описаны методы сжатия и снятия сжатия аудиоданных амбиофонии более высокого порядка.
[5] В одном аспекте, способ содержит получение одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов сферических гармоник.
[6] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью определения одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов сферических гармоник.
[7] В другом аспекте, устройство содержит средство для получения один или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов сферических гармоник, и средство для хранения одного или более первых векторов.
[8] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам получать одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов сферических гармоник.
[9] В другом аспекте, способ содержит выбор одной из множества схем снятия сжатия на основании указания, генерируются ли сжатая версия коэффициентов сферических гармоник, представляющих звуковое поле, из синтетического аудиообъекта, и снятие сжатия сжатой версии коэффициентов сферических гармоник с использованием выбранной одной из множества схем снятия сжатия.
[10] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью выбора одной из множества схем снятия сжатия на основании указания, генерируются ли сжатая версия коэффициентов сферических гармоник, представляющих звуковое поле, из синтетического аудиообъекта, и снятия сжатия сжатой версии коэффициентов сферических гармоник с использованием выбранной одной из множества схем снятия сжатия.
[11] В другом аспекте, устройство содержит средство для выбора одной из множества схем снятия сжатия на основании указания, генерируются ли сжатая версия коэффициентов сферических гармоник, представляющих звуковое поле, из синтетического аудиообъекта, и средство для снятия сжатия сжатой версии коэффициентов сферических гармоник с использованием выбранной одной из множества схем снятия сжатия.
[12] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам встроенного устройства декодирования выбирать одну из множества схем снятия сжатия на основании указания, генерируются ли сжатая версия коэффициентов сферических гармоник, представляющих звуковое поле, из синтетического аудиообъекта, и снимать сжатие сжатой версии коэффициентов сферических гармоник с использованием выбранной одной из множества схем снятия сжатия.
[13] В другом аспекте, способ содержит получение указание, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[14] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью получения указания, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[15] В другом аспекте, устройство содержит средство для хранения коэффициенты сферических гармоник, представляющие звуковое поле, и средство для получения указание, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта.
[16] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам получать указание, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[17] В другом аспекте, способ содержит квантование один или более первых векторов, представляющих один или более компонентов звукового поля, и компенсацию ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля.
[18] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью квантования одного или более первых векторов, представляющих один или более компонентов звукового поля, и компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля.
[19] В другом аспекте, устройство содержит средство для квантования одного или более первых векторов, представляющих один или более компонентов звукового поля, и средство для компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля.
[20] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам квантовать один или более первых векторов, представляющих один или более компонентов звукового поля, и компенсировать ошибку, вносимую вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля.
[21] В другом аспекте, способ содержит осуществление, на основании целевой битовой скорости, снижение порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений, причем множество коэффициентов сферических гармоник представляет звуковое поле.
[22] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью осуществления, на основании целевой битовой скорости, снижение порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений, причем множество коэффициентов сферических гармоник представляет звуковое поле.
[23] В другом аспекте, устройство содержит средство для хранения множества коэффициентов сферических гармоник или их разложений, и средство для осуществления, на основании целевой битовой скорости, снижения порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений, причем множество коэффициентов сферических гармоник представляет звуковое поле.
[24] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для осуществления, на основании целевой битовой скорости, снижения порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений, причем множество коэффициентов сферических гармоник представляет звуковое поле.
[25] В другом аспекте, способ содержит получение первого ненулевого набора коэффициентов вектора, которые представляют характерный компонент звукового поля, причем вектор разложен из множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[26] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью получения первого ненулевого набора коэффициентов вектора, которые представляют характерный компонент звукового поля, причем вектор разложен из множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[27] В другом аспекте, устройство содержит средство для получения первого ненулевого набора коэффициентов вектора, которые представляют характерный компонент звукового поля, причем вектор разложен из множества коэффициентов сферических гармоник, которые описывают звуковое поле, и средство для хранения первого ненулевого набора коэффициентов.
[28] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для определения первого ненулевого набора коэффициентов вектора, которые представляют характерный компонент звукового поля, причем вектор разложен из множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[29] В другом аспекте, способ содержит получение, из битового потока, по меньшей мере, один из одного или более векторов, разложенных из коэффициентов сферических гармоник, которые рекомбинировали с коэффициентами сферических гармоник фона, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[30] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью определения, из битового потока, по меньшей мере, одного из одного или более векторов, разложенных из коэффициентов сферических гармоник, которые рекомбинировали с коэффициентами сферических гармоник фона, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[31] В другом аспекте, устройство содержит средство для получения, из битового потока, по меньшей мере, одного из одного или более векторов, разложенных из коэффициентов сферических гармоник, которые рекомбинировали с коэффициентами сферических гармоник фона, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[32] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам получать, из битового потока, по меньшей мере, один из одного или более векторов, разложенных из коэффициентов сферических гармоник, которые рекомбинировали с коэффициентами сферических гармоник фона, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[33] В другом аспекте, способ содержит идентификацию одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник (SHC), связанных с аудиообъектами, на основании направленности, определенной для одного или более из аудиообъектов.
[34] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью идентификации одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник (SHC), связанных с аудиообъектами, на основании направленности, определенной для одного или более из аудиообъектов.
[35] В другом аспекте, устройство содержит средство для хранения одного или более коэффициентов сферических гармоник (SHC), и средство для идентификации одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник (SHC), связанных с аудиообъектами, на основании направленности, определенной для одного или более из аудиообъектов.
[36] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для идентификации одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник (SHC), связанных с аудиообъектами, на основании направленности, определенной для одного или более из аудиообъектов.
[37] В другом аспекте, способ содержит осуществление синтеза на векторной основе в отношении множества коэффициентов сферических гармоник для генерации разложенных представлений из множества коэффициентов сферических гармоник, представляющих один или более аудиообъектов и соответствующую информацию направленности, причем коэффициенты сферических гармоник связаны с порядком и описывают звуковое поле, определение отдельной и фоновой информации направленности из информации направленности, снижение порядка информации направленности, связанной с фоновыми аудиообъектами, для генерации преобразованной информации направленности фона, применение компенсации для увеличения значений преобразованной информации направленности для сохранения полной энергии звукового поля.
[38] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью осуществления синтеза на векторной основе в отношении множества коэффициентов сферических гармоник для генерации разложенных представлений из множества коэффициентов сферических гармоник, представляющих один или более аудиообъектов и соответствующую информацию направленности, причем коэффициенты сферических гармоник связаны с порядком и описывают звуковое поле, определения отдельной и фоновой информации направленности из информации направленности, снижения порядка информации направленности, связанной с фоновыми аудиообъектами, для генерации преобразованной информации направленности фона, применения компенсации для увеличения значений преобразованной информации направленности для сохранения полной энергии звукового поля.
[39] В другом аспекте, устройство содержит средство для осуществления синтеза на векторной основе в отношении множества коэффициентов сферических гармоник для генерации разложенных представлений из множества коэффициентов сферических гармоник, представляющих один или более аудиообъектов и соответствующую информацию направленности, причем коэффициенты сферических гармоник связаны с порядком и описывают звуковое поле, средство для определения отдельной и фоновой информации направленности из информации направленности, средство для снижения порядка информации направленности, связанной с фоновыми аудиообъектами, для генерации преобразованной информации направленности фона, и средство для применения компенсации для увеличения значений преобразованной информации направленности для сохранения полной энергии звукового поля.
[40] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для осуществления синтеза на векторной основе в отношении множества коэффициентов сферических гармоник для генерации разложенных представлений из множества коэффициентов сферических гармоник, представляющих один или более аудиообъектов и соответствующую информацию направленности, причем коэффициенты сферических гармоник связаны с порядком и описывают звуковое поле, определения отдельной и фоновой информации направленности из информации направленности, снижения порядка информации направленности, связанной с фоновыми аудиообъектами, для генерации преобразованной информации направленности фона, и применения компенсации для увеличения значений преобразованной информации направленности для сохранения полной энергии звукового поля.
[41] В другом аспекте, способ содержит получение разложенные интерполированные коэффициенты сферических гармоник для отрезка времени, по меньшей мере, частично, путем осуществления интерполяции в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник.
[42] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью получения разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, по меньшей мере, частично, путем осуществления интерполяции в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник.
[43] В другом аспекте, устройство содержит средство для хранения первого множества коэффициентов сферических гармоник и второго множества коэффициентов сферических гармоник, и средство для получения разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, по меньшей мере, частично, путем осуществления интерполяции в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник.
[44] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам получать разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, по меньшей мере, частично, путем осуществления интерполяции в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник.
[45] В другом аспекте, способ содержит получение битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[46] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[47] В другом аспекте, устройство содержит средство для получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник, и средство для хранения битового потока.
[48] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам получать битовый поток, содержащий сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[49] В другом аспекте, способ содержит генерацию битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[50] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью генерации битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[51] В другом аспекте, устройство содержит средство для генерации битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник, и средство для хранения битового потока.
[52] В другом аспекте, долговременный считываемый компьютером носитель данных имеет инструкции, которые, при выполнении, предписывают одному или более процессорам для генерации битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[53] В другом аспекте, способ содержит идентификацию кодовой книги Хаффмана для использования при снятии сжатия сжатой версии пространственного компонента из множества сжатых пространственных компонентов на основании порядка сжатой версии пространственного компонента относительно оставшихся из множества сжатых пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[54] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью идентификации кодовой книги Хаффмана для использования при снятии сжатия сжатой версии пространственного компонента из множества сжатых пространственных компонентов на основании порядка сжатой версии пространственного компонента относительно оставшихся из множества сжатых пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[55] В другом аспекте, устройство содержит средство для идентификации кодовой книги Хаффмана для использования при снятии сжатия сжатой версии пространственного компонента из множества сжатых пространственных компонентов на основании порядка сжатой версии пространственного компонента относительно оставшихся из множества сжатых пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник, и средство для хранения множества сжатых пространственных компонентов.
[56] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для идентификации кодовой книги Хаффмана для использования при снятии сжатия пространственного компонента из множества пространственных компонентов на основании порядка пространственного компонента относительно оставшихся из множества пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[57] В другом аспекте, способ содержит идентификацию кодовой книги Хаффмана для использования при сжатии пространственного компонента из множества пространственных компонентов на основании порядка пространственного компонента относительно оставшихся из множества пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[58] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью идентификации кодовой книги Хаффмана для использования при сжатии пространственного компонента из множества пространственных компонентов на основании порядка пространственного компонента относительно оставшихся из множества пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[59] В другом аспекте, устройство содержит средство для хранения кодовой книги Хаффмана, и средство для идентификации кодовую книгу Хаффмана для использования при сжатии пространственного компонента из множества пространственных компонентов на основании порядка пространственного компонента относительно оставшихся из множества пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[60] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для идентификации кодовой книги Хаффмана для использования при сжатии пространственного компонента из множества пространственных компонентов на основании порядка пространственного компонента относительно оставшихся из множества пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[61] В другом аспекте, способ содержит определение размера шага квантования, подлежащий использованию при сжатии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[62] В другом аспекте, устройство содержит один или более процессоров, выполненных с возможностью определения размера шага квантования, подлежащий использованию при сжатии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[63] В другом аспекте, устройство содержит средство для определения размера шага квантования, подлежащего использованию при сжатии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник, и средство для хранения размера шага квантования.
[64] В другом аспекте, на долговременном считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для определения размера шага квантования, подлежащий использованию при сжатии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[65] Детали одного или более аспектов методов изложены в прилагаемых чертежах и нижеследующем описании. Другие признаки, задачи и преимущества этих методов явствуют из описания и чертежей, а также из формулы изобретения.
Краткое описание чертежей
[66] Фиг. 1 и 2 - схемы, демонстрирующие сферические гармонические базисные функции различных порядков и подпорядков.
[67] Фиг. 3 - схема, демонстрирующая систему, которая может осуществлять различные аспекты методов, описанных в этом изобретении.
[68] Фиг. 4 - блок-схема, демонстрирующая, более детально, один пример устройства аудиокодирования, показанного в примере, приведенном на фиг. 3, которое может осуществлять различные аспекты методов, описанных в этом изобретении.
[69] Фиг. 5 - блок-схема, более детально демонстрирующая устройство аудиодекодирования, показанное на фиг. 3.
[70] Фиг. 6 - блок-схема операций, демонстрирующая работу блока анализа контента устройства аудиокодирования при осуществлении различных аспектов методов, описанных в этом изобретении.
[71] Фиг. 7 - блок-схема операций, демонстрирующая работу устройства аудиокодирования при осуществлении различных аспектов методов синтеза на векторной основе, описанных в этом изобретении.
[72] Фиг. 8 - блок-схема операций, демонстрирующая работу устройства аудиодекодирования при осуществлении различных аспектов методов, описанных в этом изобретении.
[73] Фиг. 9A-9L - блок-схемы, более детально демонстрирующие различные аспекты устройства аудиокодирования примера, приведенного на фиг. 4.
[74] Фиг. 10A-10O(ii) - схемы, демонстрирующие часть битового потока или информации побочного канала, которая может более детально указывать сжатые пространственные компоненты.
[75] Фиг. 11A-11G - блок-схемы, демонстрирующие, более детально, различные блоки устройства аудиодекодирования, показанного в примере, приведенном на фиг. 5.
[76] Фиг. 12 - схема, демонстрирующая пример аудио-экосистемы, которая может осуществлять различные аспекты методов, описанных в этом изобретении.
[77] Фиг. 13 - схема, более детально демонстрирующая один пример аудио-экосистемы, показанной на фиг. 12.
[78] Фиг. 14 - схема, более детально демонстрирующая один пример аудио-экосистемы, показанной на фиг. 12.
[79] Фиг. 15A и 15B - схемы, более детально демонстрирующие другие примеры аудио-экосистемы, показанной на фиг. 12.
[80] Фиг. 16 - схема, демонстрирующая пример устройства аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении.
[81] Фиг. 17 - схема, более детально демонстрирующая один пример устройства аудиокодирования, показанного на фиг. 16.
[82] Фиг. 18 - схема, демонстрирующая пример устройства аудиодекодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении.
[83] Фиг. 19 - схема, более детально демонстрирующая один пример устройства аудиодекодирования, показанного на фиг. 18.
[84] Фиг. 20A-20G - схемы, демонстрирующие пример устройств захвата аудиосигнала, которые могут осуществлять различные аспекты методов, описанных в этом изобретении.
[85] Фиг. 21A-21E - схемы, демонстрирующие пример устройств воспроизведения аудиосигнала, которые могут осуществлять различные аспекты методов, описанных в этом изобретении.
[86] Фиг. 22A-22H - схемы, демонстрирующие пример сред воспроизведения аудиосигнала в соответствии с одним или более методами, описанными в этом изобретении.
[87] Фиг. 23 - схема, демонстрирующая пример случая использования, когда пользователь может испытывать 3D звуковое поле спортивной игры при ношении головных телефонов в соответствии с одним или более методами, описанными в этом изобретении.
[88] Фиг. 24 - схема, демонстрирующая спортивный стадион, где 3D звуковое поле может записываться в соответствии с одним или более методами, описанными в этом изобретении.
[89] Фиг. 25 - блок-схема операций, демонстрирующая метод рендеризации 3D звукового поля на основании локального аудиоландшафта в соответствии с одним или более методами, описанными в этом изобретении.
[90] Фиг. 26 - схема, демонстрирующая пример игровой студии в соответствии с одним или более методами, описанными в этом изобретении.
[91] Фиг. 27 - схема, демонстрирующая множество игровых систем, которые включают в себя машины рендеризации, в соответствии с одним или более методами, описанными в этом изобретении.
[92] Фиг. 28 - схема, демонстрирующая конфигурацию громкоговорителей, которую можно имитировать головными телефонами, в соответствии с одним или более методами, описанными в этом изобретении.
[93] Фиг. 29 - схема, демонстрирующая множество мобильных устройств, которые можно использовать для захвата и/или редактирования 3D звукового поля в соответствии с одним или более методами, описанными в этом изобретении.
[94] Фиг. 30 - схема, демонстрирующая кадр видео, связанный с 3D звуковым полем, который может обрабатываться в соответствии с одним или более методами, описанными в этом изобретении.
[95] Фиг. 31A-31M - схемы, демонстрирующие графики, где показаны различные результаты имитации осуществления синтетической или записанной категоризации звукового поля в соответствии с различными аспектами методов, описанных в этом изобретении.
[96] Фиг. 32 - схема, демонстрирующая график сингулярных значений из матрицы S, разложенной из коэффициентов амбиофонии более высокого порядка, в соответствии с методами, описанными в этом изобретении.
[97] Фиг. 33A и 33B - схемы, демонстрирующие соответствующие графики где показано потенциальное влияние переупорядочения при кодировании векторов, описывающих компоненты переднего плана звукового поля в соответствии с методами, описанными в этом изобретении.
[98] Фиг. 34 и 35 - принципиальные схемы, демонстрирующие различия между идентификацией характерных аудиообъектов только на основе энергии и на основе направленности, в соответствии с этим раскрытием.
[99] Фиг. 36A-36G - схемы, демонстрирующие проекции, по меньшей мере, части разложенной версии коэффициентов сферических гармоник в пространственную область для осуществления интерполяции в соответствии с различными аспектами методов, описанных в этом изобретении.
[100] Фиг. 37 демонстрирует представление описанных здесь методов получения пространственно-временной интерполяции.
[101] Фиг. 38 - блок-схема, демонстрирующая искусственные матрицы US, US1 и US2, для последовательных блоков SVD для многомерного сигнала согласно описанным здесь методам.
[102] Фиг. 39 - блок-схема, демонстрирующая разложение последующих кадров сигнала амбиофонии более высокого порядка (HOA) с использованием разложения на сингулярные значения и сглаживания пространственно-временных компонентов согласно методам, описанным в этом изобретении.
[103] Фиг. 40A-40J показаны блок-схемы, демонстрирующие примеры устройств аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей.
[104] Фиг. 41A-41D - блок-схемы, демонстрирующие иллюстративное устройство аудиодекодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для декодирования коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей.
[105] Фиг. 42A-42C - блок-схемы, демонстрирующие блок снижения порядка, показанные в примерах, приведенных на фиг. 40B-40J более детально.
[106] Фиг. 43 - схема, более детально демонстрирующая блок сжатия V, показанный на фиг. 40I.
[107] Фиг. 44 - схема, демонстрирующая иллюстративные операции, осуществляемые устройством аудиокодирования для компенсации ошибки квантования в соответствии с различными аспектами методов, описанных в этом изобретении.
[108] Фиг. 45A и 45B - схемы, демонстрирующие интерполяцию подкадров из участков двух кадров в соответствии с различными аспектами методов, описанных в этом изобретении.
[109] Фиг. 46A-46E - схемы, демонстрирующие поперечное сечение проекции одного или более векторов разложенной версии множества коэффициентов сферических гармоник, интерполированных в соответствии с методами, описанными в этом изобретении.
[110] Фиг. 47 - блок-схема, демонстрирующая, более детально, блок извлечения устройств аудиодекодирования, показанных в примерах, приведенных на фиг. 41A-41D.
[111] Фиг. 48 - блок-схема, более детально демонстрирующая блок аудиорендеризации устройства аудиодекодирования, показанного в примерах, приведенных на фиг. 41A -41D.
[112] Фиг. 49A-49E(ii) - схемы, демонстрирующие соответствующие системы аудиокодирования, которые могут реализовать различные аспекты методов, описанных в этом изобретении.
[113] Фиг. 50A и 50B - блок-схемы, демонстрирующие один из двух разных подходов для потенциального снижения порядка фонового контента в соответствии с методами, описанными в этом изобретении.
[114] Фиг. 51 - блок-схема, демонстрирующая примеры тракта сжатия характерных компонентов устройства аудиокодирования, которое может реализовать различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник.
[115] Фиг. 52 - блок-схема, демонстрирующая другой пример устройства аудиодекодирования, которое может реализовать различные аспекты методов, описанных в этом изобретении, для реконструкции или примерной реконструкции коэффициентов сферических гармоник (SHC).
[116] Фиг. 53 - блок-схема, демонстрирующая другой пример устройства аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении.
[117] Фиг. 54 - блок-схема, демонстрирующая, более детально, иллюстративную реализацию устройства аудиокодирования, показанного в примере, приведенном на фиг. 53.
[118] Фиг. 55A и 55B - схемы, демонстрирующие пример осуществления различные аспекты методов, описанных в этом изобретении для поворота звукового поля.
[119] Фиг. 56 - схема, демонстрирующая пример звукового поля, захваченного относительно первой системы координат, который затем поворачивается в соответствии с методами, описанными в этом изобретении, для выражения звукового поля относительно второй системы координат.
[120] Фиг. 57A-57E - схемы, демонстрирующие битовые потоки, сформированные в соответствии с методами, описанными в этом изобретении.
[121] Фиг. 58 - блок-схема операций, демонстрирующая пример работы устройства аудиокодирования, показанного в примере, приведенном на фиг. 53, при реализации аспектов поворота методов, описанных в этом изобретении.
[122] Фиг. 59 - блок-схема операций, демонстрирующая пример работы устройства аудиокодирования, показанного в примере, приведенном на фиг. 53, при осуществлении аспектов преобразования методов, описанных в этом изобретении.
Подробное описание
[123] Развитие объемного звука сделало доступными многие выходные форматы для развлечения в наше время. Примеры таких потребительских форматов объемного звука, по большей части, являются основанными на ‘каналах’, поскольку они неявно указывают подводы к громкоговорителям в определенных геометрических координатах. Они включают в себя популярный формат 5.1 (который включает в себя следующие шесть каналов: передний левый (FL), передний правый (FR), центральный или передний центральный, задний левый или левый окружения, задний правый или правый окружения, и низкочастотные эффекты (LFE)), перспективный формат 7.1, различные форматы, которые включают в себя высотные громкоговорители, например формат 7.1.4 и формат 22.2 (например, для использования со стандарт телевидения сверхвысокой четкости). Непотребительские форматы могут занимать любое количество громкоговорителей (в симметричных и несимметричных геометриях), часто именуемые ‘решетками окружения’. Один пример такой решетки включает в себя 32 громкоговорителя, расположенные в координатах углов усеченного икосаэдра.
[124] Вход в будущий кодер MPEG, в необязательном порядке, является одним из трех возможных форматов: (i) традиционный аудиосигнал на канальной основе (как рассмотрено выше), что означает воспроизведение через громкоговорители в заранее указанных позициях; (ii) аудиосигнал на основе объектов, который предусматривает дискретную импульсно-кодовую модуляцию (ИКМ) данных для единичных аудиообъектов с соответствующими метаданными, содержащими координаты их положения (помимо другой информации); и (iii) аудиосигнал на основе сцены, который предусматривает представление звукового поля с использованием коэффициентов сферических гармонических базисных функций (также именуемых “коэффициентами сферических гармоник” или SHC, “амбиофонией более высокого порядка” или HOA, и “коэффициентами HOA”). Этот будущий кодер MPEG описан более детально в документе под названием “Call for Proposals for 3D Audio”, изданном Международной организацией по стандартизации/ Международной электротехнической комиссией (ISO)/(IEC) JTC1/SC29/WG11/N13411, январь 2013 г. Женева, Швейцария, и доступном по адресу http://mpeg.chiariglione.org/sites/default/files/files/standards/parts/docs/w13411.zip.
[125] На рынке присутствуют различные форматы на канальной основе ‘окружающего звука’. Они простираются, например, от 5.1 для системы домашнего кинотеатра (который был наиболее успешным в отношении распространения в жилых помещениях после стерео) до системы 22.2, разработанной NHK (Nippon Hoso Kyokai или Japan Broadcasting Corporation). Создатели контента (например, голливудские студии), вероятно, будут создавать звуковую дорожку для кинофильма один раз, вместо того, чтобы тратить усилия для ее ремикса для каждой конфигурации громкоговорителей. Недавно, организации по разработке стандартов рассмотрели возможности обеспечения кодирования в стандартизованный битовый поток и последующее декодирование, адаптируемое и не зависящее от геометрии (и количества) громкоговорителей и акустических условий в положении воспроизведения (с использованием рендеризатора).
[126] Для обеспечения такой гибкости для создателей контента, можно использовать иерархический набор элементов для представления звукового поля. Иерархический набор элементов может означать набор элементов, в котором элементы упорядочены таким образом, что базовый набор элементов более низкого порядка обеспечивает полное представление моделируемого звукового поля. Когда набор расширяется для включения элементов более высокого порядка, представление становится более детализированным, и разрешение увеличивается.
[127] Одним примером иерархического набора элементов является набор коэффициентов сферических гармоник (SHC). Следующее выражение демонстрирует описание или представление звукового поля с использованием SHC:
[128] Это выражение показывает, что давление в любой точке звукового поля, в момент времени t, можно однозначно представить посредством SHC, . Здесь, , c - скорость звука (~343 м/с), - точка отсчета (или точка наблюдения), is сферическая бесселева функция порядка n, и - сферические гармонические базисные функции порядка n и подпорядка m. Ясно, что член в квадратных скобках является представлением в частотной области сигнала (т.е., ), который можно аппроксимировать различными частотно-временными преобразованиями, например, дискретным преобразованием Фурье (DFT), дискретным косинусным преобразованием (DCT) или вейвлетным преобразованием. Другие примеры иерархических наборов включают в себя наборы коэффициентов вейвлетного преобразования и другие наборы коэффициентов базисных функций с разными разрешениями.
[129] На Фиг. 1 показана схема, демонстрирующая сферические гармонические базисные функции от нулевого порядка (n=0) до четвертого порядка (n=4). Как можно видеть, для каждого порядка, существует расширение подпорядков m, которые показаны, но явно не указаны в примере, приведенном на фиг. 1, для упрощения иллюстрации.
[130] На Фиг. 2 показана другая схема, демонстрирующая сферические гармонические базисные функции от нулевого порядка (n=0) до четвертого порядка (n=4). На фиг. 2, сферические гармонические базисные функции показаны в трехмерном координатном пространстве, где показаны порядок и подпорядок.
[131] SHC могут либо физически захватываться (например, записываться) различными конфигурациями микрофонной решетки, либо, альтернативно, могут выводиться из описаний звукового поля на канальной основе или на основе объектов. SHC представляют аудиосигнал на основе сцены, где SHC может вводиться на аудиокодер для получения кодированного SHC, что может способствовать более эффективной передаче или хранению. Например, можно использовать представление четвертого порядка, предусматривающее (1+4)2 (25, и, таким образом четвертого порядка) коэффициентов.
[132] Как упомянуто выше, SHC можно выводить из микрофонной записи с использованием микрофона. Различные примеры, как SHC можно выводить из микрофонных решеток, описаны в Poletti, M., “Three-Dimensional Surround Sound Systems Based on Spherical Harmonics,” J. Audio Eng. Soc., Vol. 53, № 11, 2005 November, pp. 1004-1025.
[133] Для иллюстрации, как эти SHC можно выводить из описания на основе объектов, рассмотрим следующее уравнение. Коэффициенты для звукового поля, соответствующего отдельному аудиообъекту, можно выразить в виде:
где i обозначает , - сферическая функция Ханкеля (второго рода) порядка n, и - положение объекта. Знание энергии источника объекта как функции частоты (например, с использованием методов частотно-временного анализа, например, осуществляя быстрое преобразование Фурье на потоке ИКМ) позволяет преобразовывать каждый объект ИКМ и его положение в SHC . Кроме того, можно показать (поскольку вышеприведенное является линейным и ортогональным разложением), что коэффициенты для каждого объекта аддитивны. Таким образом, большое количество объектов ИКМ можно представить коэффициентами (например, как сумму векторов коэффициентов для отдельных объектов). По существу, эти коэффициенты содержат информацию о звуковом поле (давление как функцию 3D координат), и вышеприведенное представляет преобразование из отдельных объектов в представление общего звукового поля, вблизи точки наблюдения . Оставшиеся фигуры описаны ниже в контексте аудиокодирования на основе объектов и на основе SHC.
[134] На Фиг. 3 показана схема, демонстрирующая систему 10, которая может осуществлять различные аспекты методов, описанных в этом изобретении. Как показано в примере, приведенном на фиг. 3, система 10 включает в себя создателя 12 контента и потребителя 14 контента. Хотя они описаны в контексте создателя 12 контента и потребителя 14 контента, методы можно реализовать в любом контексте, в котором SHC (которые также могут именоваться коэффициентами HOA) или любое другое иерархическое представление звукового поля кодируются для формирования битового потока, представляющего аудиоданные. Кроме того, создатель 12 контента может представлять любую форму вычислительного устройства, способного реализовать методы, описанные в этом изобретении, в том числе, телефонную трубку (или сотовый телефон), планшетный компьютер, смартфон, или настольный компьютер для обеспечения нескольких примеров. Аналогично, потребитель 14 контента может представлять любую форму вычислительного устройства, способного реализовать методы, описанные в этом изобретении, в том числе, телефонную трубку (или сотовый телефон), планшетный компьютер, смартфон, телевизионную приставку или настольный компьютер для обеспечения нескольких примеров.
[135] Создатель 12 контента может представлять киностудию или другой субъект, который может генерировать многоканальный аудиоконтент для потребления потребителями контент, например, потребителем 14 контента. В некоторых примерах, создатель 12 контента может представлять отдельного пользователя, который желает сжать коэффициенты 11 HOA. Часто, этот создатель контента генерирует аудиоконтент совместно с видеоконтентом. Потребитель 14 контента представляет физическое лицо, которое владеет или имеет доступ к системе воспроизведения аудиосигнала, который может означать любую форму системы воспроизведения аудиосигнала, способной рендеризовать SHC для воспроизведения как многоканального аудиоконтента. В примере, приведенном на фиг. 3, потребитель 14 контента включает в себя систему 16 воспроизведения аудиосигнала.
[136] Создатель 12 контента включает в себя систему 18 аудиоредактирования. Создатель 12 контента получать живые записи 7 в различных форматах (в том чистке непосредственно как коэффициенты HOA) и аудиообъекты 9, которые создатель 12 контента может редактировать с использованием системы 18 аудиоредактирования. Создатель контента может, при выполнении процесса редактирования, рендеризовать коэффициенты 11 HOA из аудиообъектов 9, прослушивая рендеризованные подводы громкоговорителя в попытке идентификации различных аспектов звукового поля, которые требуют дополнительного редактирования. Затем создатель 12 контента может редактировать коэффициенты 11 HOA (потенциально опосредованно посредством манипуляции различными аудиообъектами 9 из которых можно выводить исходные коэффициенты HOA вышеописанным образом). Создатель 12 контента может использовать систему 18 аудиоредактирования для генерации коэффициентов 11 HOA. Система 18 аудиоредактирования представляет любую систему, способную редактировать аудиоданные и выводить эти аудиоданные как один или более исходных коэффициентов сферических гармоник.
[137] По завершении процесса редактирования, создатель 12 контента может генерировать битовый поток 21 на основании коэффициентов 11 HOA. Таким образом, создатель 12 контента включает в себя устройство 20 аудиокодирования, которое представляет устройство, выполненное с возможностью кодирования или иного сжатия коэффициентов 11 HOA в соответствии с различными аспектами методов, описанных в этом изобретении для генерации битового потока 21. Устройство 20 аудиокодирования может генерировать битовый поток 21 для передачи, в порядке одного примера, по каналу передачи, который может быть проводным или беспроводным каналом, устройством хранения данных и т.п. Битовый поток 21 может представлять кодированную версию коэффициентов 11 HOA и может включать в себя первичный битовый поток и другой побочный битовый поток, которые могут именоваться информацией побочного канала.
[138] Хотя более подробно описано ниже, устройство 20 аудиокодирования может быть выполнено с возможностью кодирования коэффициентов 11 HOA на основании синтеза на векторной основе или синтеза на основе направления. Для определения, осуществлять ли методология синтеза на векторной основе или методологию синтеза на основе направления, устройство 20 аудиокодирования может определять, по меньшей мере, частично на основании коэффициентов 11 HOA, сгенерированы ли коэффициенты 11 HOA посредством естественной записи звукового поля (например, живой записи 7) или созданы искусственно (т.е., синтетически), в порядке одного примера, из аудиообъектов 9, например, объекта ИКМ. Когда коэффициенты 11 HOA сгенерированы из аудиообъектов 9, устройство 20 аудиокодирования может кодировать коэффициенты 11 HOA с использованием методологии синтеза на основе направления. Когда коэффициенты 11 HOA захвачены вживую с использованием, например, собственного микрофона, устройство 20 аудиокодирования может кодировать коэффициенты 11 HOA на основании методологии синтеза на векторной основе. Вышеописанное различие представляет один пример, где может быть развернута методология синтеза на векторной основе или на основе направления. Могут существовать другие случаи, когда одна или обе могут быть полезны для естественных записей, искусственно генерируемого контента или их смеси (гибридного контента). Кроме того, можно также использовать обе методологии одновременно для кодирования единичного временного кадра коэффициентов HOA.
[139] Предполагая в целях иллюстрации, что устройство 20 аудиокодирования определяет, что коэффициенты 11 HOA захвачены вживую или иначе представляют живые записи, например, живую запись 7, устройство 20 аудиокодирования может быть выполнено с возможностью кодирования коэффициентов 11 HOA с использованием методологии синтеза на векторной основе, предусматривающей применение линейного обратимого преобразования (LIT). Один пример линейного обратимого преобразования именуется “разложением на сингулярные значения” (или “SVD”). В этом примере, устройство 20 аудиокодирования может применять SVD к коэффициентам 11 HOA для определения разложенной версии коэффициентов 11 HOA. Затем устройство 20 аудиокодирования может анализировать разложенную версию коэффициентов 11 HOA для идентификации различных параметров, что может облегчать переупорядочение разложенной версии коэффициентов 11 HOA. Затем устройство 20 аудиокодирования может переупорядочивать разложенную версию коэффициентов 11 HOA на основании идентифицированных параметров, где такое переупорядочение, как описано более подробно ниже, может улучшать эффективность кодирования при условии, что преобразование может переупорядочивать коэффициенты HOA по кадрам коэффициентов HOA (где кадр обычно включает в себя M выборок коэффициентов 11 HOA и M, в некоторых примерах, задано равным 1024). После переупорядочения разложенной версии коэффициентов 11 HOA, устройство 20 аудиокодирования может выбирать те из разложенной версии коэффициентов 11 HOA, которые представляют переднеплановые (или, другими словами, характерные, преобладающие или заметные) компоненты звукового поля. Устройство 20 аудиокодирования может указывать разложенную версию коэффициентов 11 HOA, представляющую компоненты переднего плана, как аудиообъект и соответствующую информацию направленности.
[140] Устройство 20 аудиокодирования также может осуществлять анализ звукового поля в отношении коэффициентов 11 HOA по порядку, по меньшей мере, частично, для идентификации из коэффициентов 11 HOA, представляющих один или более компонентов фона (или, другими словами, окружения) звукового поля. Устройство 20 аудиокодирования может осуществлять компенсация энергии в отношении фоновых компонентов при условии, что, в некоторых примерах, фоновые компоненты могут включать в себя только поднабор любой данной выборки коэффициентов 11 HOA (например, соответствующих сферическим базисным функциям нулевого и первого порядка, а не соответствующих сферическим базисным функциям второго или более высокого порядка). При осуществлении снижения порядка, другими словами, устройство 20 аудиокодирования может дополнять (например, прибавлять/вычитать энергию) к/из оставшихся коэффициентов HOA фона коэффициентов 11 HOA для компенсации изменения полной энергии, которое обусловлено осуществлением снижения порядка.
[141] Затем устройство 20 аудиокодирования может осуществлять форму психоакустического кодирования (например, MPEG surround, MPEG-AAC, MPEG-USAC или другие известные формы психоакустического кодирования) в отношении каждого из коэффициентов 11 HOA, представляющих фоновые компоненты, и каждого из аудиообъектов переднего плана. Устройство 20 аудиокодирования может осуществлять форму интерполяции в отношении информации направленности переднего плана и затем осуществлять снижение порядка в отношении интерполированной информации направленности переднего плана для генерации информации направленности переднего плана сниженного порядка. Устройство 20 аудиокодирования может дополнительно осуществлять, в некоторых примерах, квантование в отношении информации направленности переднего плана сниженного порядка, выводя кодированную информацию направленности переднего плана. В ряде случаев, это квантование может содержать скалярное/энтропийное квантование. Затем устройство 20 аудиокодирования может формировать битовый поток 21 для включения кодированных фоновых компонентов, кодированных аудиообъектов переднего плана и квантованной информации направленности. Затем устройство 20 аудиокодирования может передавать или иначе выводить битовый поток 21 потребителю 14 контента.
[142] Хотя на фиг. 3 показана непосредственная передача потребителю 14 контента, создатель 12 контента может выводить битовый поток 21 на промежуточное устройство, расположенное между создателем 12 контента и потребителем 14 контента. Это промежуточное устройство может сохранять битовый поток 21 для доставки в дальнейшем потребителю 14 контента, который может запрашивать этот битовый поток. Промежуточное устройство может содержать файловый сервер, веб-сервер, настольный компьютер, портативный компьютер, планшетный компьютер, мобильный телефон, смартфон или любое другое устройство, способное сохранять битовый поток 21 для извлечения в дальнейшем аудиодекодером. Это промежуточное устройство может располагаться в сети доставки контента, способной к потоковой передаче битового потока 21 (и, возможно, совместно с передачей соответствующего битового потока видеоданных) абонентам, например, потребителю 14 контента, запрашивающему битовый поток 21.
[143] Альтернативно, создатель 12 контента может сохранять битовый поток 21 на носитель данных, например, компакт-диск, цифровой видеодиск, диск видео высокой четкости или другие носители данных, большинство из которых могут считываться компьютером и, таким образом, могут именоваться считываемые компьютером носители данных или долговременными считываемыми компьютером носителями данных. В этом контексте, канал передачи может означать каналы, по которым передается контент, хранящийся на этих носителях (и может включать в себя магазины розничной торговли и другой механизм доставки со склада). В любом случае, методы этого изобретения не подлежат ограничению в этом отношении примером, приведенным на фиг. 3.
[144] Как показано далее в примере, приведенном на фиг. 3, потребитель 14 контента включает в себя систему 16 воспроизведения аудиосигнала. Система 16 воспроизведения аудиосигнала может представлять любую систему воспроизведения аудиосигнала, способную воспроизводить многоканальные аудиоданные. Система 16 воспроизведения аудиосигнала может включать в себя несколько разных рендеризаторов 22. Каждый из рендеризаторов 22 может обеспечивать ту или иную форму рендеризации, где разные формы рендеризации могут включать в себя один или более из различных способов осуществления амплитудного панорамирования на векторной основе (VBAP), и/или один или более из различных способов осуществления синтеза звукового поля. Используемый здесь, “A и/или B” означает “A или B” или оба “A и B”.
[145] Система 16 воспроизведения аудиосигнала может дополнительно включать в себя устройство 24 аудиодекодирования. Устройство 24 аудиодекодирования может представлять устройство, выполненное с возможностью декодирования коэффициентов 11’ HOA из битового потока 21, где коэффициенты 11’ HOA могут быть аналогичны коэффициентам 11 HOA, но отличаться вследствие потерьных операций (например, квантования) и/или передачи по каналу передачи. Таким образом, устройство 24 аудиодекодирования может деквантовать информацию направленности переднего плана, указанную в битовом потоке 21, осуществляя также психоакустическое декодирование в отношении аудиообъектов переднего плана, указанных в битовом потоке 21, и кодированных коэффициентов HOA, представляющих фоновые компоненты. Устройство 24 аудиодекодирования может дополнительно осуществлять интерполяцию в отношении декодированной информации направленности переднего плана и затем определять коэффициенты HOA, представляющие компоненты переднего плана, на основании декодированных аудиообъектов переднего плана и интерполированной информации направленности переднего плана. Устройство 24 аудиодекодирования может затем определять коэффициенты 11’ HOA на основании определенных коэффициентов HOA, представляющих компоненты переднего плана и декодированных коэффициентов HOA, представляющих фоновые компоненты.
[146] Система 16 воспроизведения аудиосигнала могут, после декодирования битового потока 21 получать коэффициенты 11’ HOA и рендеризовать коэффициенты 11’ HOA для вывода подводов 25 громкоговорителя. Подводы 25 громкоговорителя могут возбуждать один или более громкоговорителей (которые не показаны в примере, приведенном на фиг. 3, для упрощения иллюстрации).
[147] Для выбора надлежащего рендеризатора или, в ряде случаев, генерации надлежащего рендеризатора, система 16 воспроизведения аудиосигнала может получать информацию 13 громкоговорителей, указывающую количество громкоговорителей и/или пространственную геометрию громкоговорителей. В ряде случаев, система 16 воспроизведения аудиосигнала может получать информацию 13 громкоговорителей с использованием опорного микрофона и возбуждать громкоговорители таким образом, чтобы динамически определять информацию 13 громкоговорителей. В других случаях или совместно с динамическим определением информации 13 громкоговорителей, система 16 воспроизведения аудиосигнала может предлагать пользователю взаимодействовать с системой 16 воспроизведения аудиосигнала и вводить информацию 13 громкоговорителей.
[148] Затем система 16 воспроизведения аудиосигнала может выбирать один из аудиорендеризаторов 22 на основании информации 13 громкоговорителей. В ряде случаев, система 16 воспроизведения аудиосигнала может, когда ни один из аудиорендеризаторов 22 не находится в пределах некоторой пороговой меры подобия (определяемой геометрией громкоговорителей) с указанными в информации 13 громкоговорителей, система 16 воспроизведения аудиосигнала может генерировать один из аудиорендеризаторов 22 на основании информации 13 громкоговорителей. Система 16 воспроизведения аудиосигнала, в ряде случаев, может генерировать один из аудиорендеризаторов 22 на основании информации 13 громкоговорителей, не пытаясь сначала выбрать один из существующих аудиорендеризаторов 22.
[149] На Фиг. 4 показана блок-схема, демонстрирующая, более детально, один пример устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 3, которое может осуществлять различные аспекты методов, описанных в этом изобретении. Устройство 20 аудиокодирования включает в себя блок 26 анализа контента, блок 27 методологии синтеза на векторной основе и блок 28 методологии синтеза на основе направления.
[150] Блок 26 анализа контента представляет блок, выполненный с возможностью анализа контента коэффициентов 11 HOA для идентификации, представляют ли коэффициенты 11 HOA контент, генерируемый из живой записи или аудиообъекта. Блок 26 анализа контента может определять, сгенерированы ли коэффициенты 11 HOA из записи фактического звукового поля или из искусственного аудиообъекта. Блок 26 анализа контента может совершать это определение по-разному. например, блок 26 анализа контента может кодировать (N+1)2-1 каналов и предсказывать последний оставшийся канал (который может быть представлен как вектор). Блок 26 анализа контента может применять скаляры к, по меньшей мере, некоторым из (N+1)2-1 каналов и суммировать результирующие значения для определения последнего оставшегося канала. Кроме того, в этом примере, блок 26 анализа контента может определять точность предсказанного канала. В этом примере, если точность предсказанного канала относительно высока (например, точность превышает конкретный порог), коэффициенты 11 HOA, вероятно, генерируются из синтетического аудиообъекта. Напротив, если точность предсказанного канала относительно низка (например, точность ниже конкретного порога), коэффициенты 11 HOA с большей степенью вероятности представляют записанное звуковое поле. Например, в этом примере, если отношение сигнал/шум (SNR) предсказанного канала больше 100 децибел (дБ), коэффициенты 11 HOA с большей степенью вероятности представляют звуковое поле, генерируемое из синтетического аудиообъекта. Напротив, SNR звукового поля, записанного с использованием собственного микрофона, может составлять от 5 до 20 дБ. Таким образом, может осуществлять очевидное различие в отношении SNR между звуковым полем, представленным коэффициентами 11 HOA генерируемыми из фактической прямой записи и из синтетического аудиообъекта.
[151] В частности, блок 26 анализа контента может, при определении, генерируются ли коэффициенты 11 HOA, представляющие звуковое поле, из синтетического аудиообъекта, получать кадрированные коэффициенты HOA, которые могут иметь размер 25 на 1024 для представления четвертого порядка (т.е., N=4). После получения кадрированных коэффициентов HOA (которые также могут быть обозначены здесь как матрица 11 кадрированных SHC, и последующие матрицы кадрированных SHC могут быть обозначены как матрицы 27B, 27C и т.д. кадрированных SHC). Блок 26 анализа контента может исключить первый вектор кадрированных коэффициентов 11 HOA для генерации приведенных кадрированных коэффициентов HOA. В некоторых примерах, этот первый вектор, исключенный из кадрированных коэффициентов 11 HOA, может соответствовать коэффициентам 11 HOA, связанным с базисной функцией в виде сферической гармоники нулевого порядка, нулевого подпорядка.
[152] Затем блок 26 анализа контента может предсказывать первый ненулевой вектор приведенных кадрированных коэффициентов HOA из оставшихся векторов приведенных кадрированных коэффициентов HOA. Первый ненулевой вектор может означать первый вектор, от первого порядка (и с учетом каждого из подпорядков, зависящих от порядка) до четвертого порядка (и с учетом каждого из подпорядков, зависящих от порядка), который имеет значения, отличные от нуля. В некоторых примерах, первый ненулевой вектор приведенных кадрированных коэффициентов HOA относится к коэффициентам 11 HOA, связанным с базисной функцией в виде сферической гармоники первого порядка, нулевого подпорядка. Хотя они описаны в отношении первого ненулевого вектора, методы могут предсказывать другие векторы приведенных кадрированных коэффициентов HOA из оставшихся векторов приведенных кадрированных коэффициентов HOA. например, блок 26 анализа контента может предсказывать те из приведенных кадрированных коэффициентов HOA, которые связаны с базисной функцией в виде сферической гармоники первого порядка, первого подпорядка или базисной функцией в виде сферической гармоники первого порядка, минус первого подпорядка. В прочих примерах, блок 26 анализа контента может предсказывать те из приведенных кадрированных коэффициентов HOA, которые связаны с базисной функцией в виде сферической гармоники второго порядка, нулевого подпорядка.
[153] Для предсказания первого ненулевого вектора, блок 26 анализа контента может действовать в соответствии со следующим уравнением:
,
где i принимает значения от 1 до (N+1)2-2, которое равно 23 для представления четвертого порядка, обозначает некоторую постоянную для i-го вектора, и vi означает i-й вектор. После предсказания первого ненулевого вектора, блок 26 анализа контента может получать ошибку на основании предсказанного первого ненулевого вектора и фактического ненулевого вектора. В некоторых примерах, блок 26 анализа контента вычитает предсказанный первый ненулевой вектор из фактического первого ненулевого вектора для вывода ошибки. Блок 26 анализа контента может вычислять ошибку как сумму абсолютных значений разностей между каждым элементом в предсказанном первом ненулевом векторе и фактическом первом ненулевом векторе.
[154] Получив ошибку, блок 26 анализа контента может вычислять отношение на основании энергии фактического первого ненулевого вектора и ошибки. Блок 26 анализа контента может определять эту энергию путем возведения в квадрат каждого элемента первого ненулевого вектора и суммирования квадратов элементов. Затем блок 26 анализа контента может сравнивать это отношение с порогом. Когда отношение не превышает порог, блок 26 анализа контента может определить, что кадрированные коэффициенты 11 HOA генерируется из записи и указать в битовом потоке, что соответствующее кодированное представление коэффициентов 11 HOA сгенерирован из записи. Когда отношение превышает порог, блок 26 анализа контента может определить, что кадрированные коэффициенты 11 HOA генерируется из синтетического аудиообъекта и указать в битовом потоке, что соответствующее кодированное представление кадрированных коэффициентов 11 HOA сгенерирован из синтетического аудиообъекта.
[155] Указание, сгенерированы ли кадрированные коэффициенты 11 HOA из записи или синтетического аудиообъекта может содержать единичный бит для каждого кадра. Единичный бит может указывать, что разные операции кодирования использовались для каждого кадра, эффективно переключаясь между разными способами кодирования соответствующего кадра. В ряде случаев, когда кадрированные коэффициенты 11 HOA сгенерированы из записи, блок 26 анализа контента передает коэффициенты 11 HOA на блок 27 синтеза на векторной основе. В ряде случаев, когда кадрированные коэффициенты 11 HOA сгенерированы из синтетического аудиообъекта, блок 26 анализа контента передает коэффициенты 11 HOA на блок 28 синтеза на основе направления. Блок 28 синтеза на основе направления может представлять блок, выполненный с возможностью осуществления синтеза на основе направления коэффициентов 11 HOA для генерации битового потока 21 на основе направления.
[156] Другими словами, методы базируются на кодировании коэффициентов HOA с использованием внешнего классификатора. Классификатор может действовать следующим образом:
Начать с матрицы кадрированных SHC (например 4-го порядка, размер кадра 1024, которые также могут именоваться кадрированными коэффициентами HOA или коэффициентами HOA) - где матрица получается размером 25×1024.
Исключить 1-й вектор (SH 0-го порядка) - получается матрица размером 24×1024.
Предсказать первый ненулевой вектор в матрице (вектор размером 1×1024) - из оставшихся векторов в матрице (23 векторов размером 1x1024).
Предсказание осуществляется следующим образом: предсказанный вектор=сумма по i [альфа-i x вктор-I] (где суммирование по I осуществляется по 23 индексам, i=1…23)
Затем проверить ошибку: фактический вектор - предсказанный вектор=ошибка.
Если отношение энергии вектора/ошибка велико (т.е. ошибка мала), то лежащее в основе звуковое поле (в этом кадре) является разреженным/синтетическим. Иначе, лежащее в основе звуковое поле является записанным (с использованием, например, микрофонной решетки) звуковым полем.
В зависимости от решения записанное/синтетическое, по-разному осуществлять кодирование/декодирование (которое может означать сжатие полосы). Решение является 1-битовым решением, которое передается в битовом потоке для каждого кадра.
[157] Как показано в примере, приведенном на фиг. 4, блок 27 синтеза на векторной основе может включать в себя блок 30 линейного обратимого преобразования (LIT), блок 32 вычисления параметров, блок 34 переупорядочения, блок 36 выбора переднего плана, блок 38 компенсации энергии, блок 40 психоакустического аудиокодера, блок 42 генерации битового потока, блок 44 анализа звукового поля, блок 46 приведения коэффициентов, блок 48 выбора фона (BG), блок 50 пространственно-временной интерполяции и блок 52 квантования.
[158] Блок 30 линейного обратимого преобразования (LIT) принимает коэффициенты 11 HOA в форме каналов HOA, причем каждый канал представляет блок или кадр коэффициента, связанного с данным порядком, подпорядком сферических базисных функций (который может быть обозначен как HOA[k], где k может обозначать текущий кадр или блок выборок). Матрица коэффициентов 11 HOA может иметь размеры D: M x (N+1)2.
[159] Таким образом, блок 30 LIT может представлять блок, выполненный с возможностью осуществления формы анализа именуемый разложение на сингулярные значения. Хотя они описаны в отношении SVD, методы, описанные в этом изобретении можно осуществлять в отношении любого аналогичного преобразования или разложения, которое обеспечивает наборы линейно раскоррелированных, уплотненных по энергии выходов. Также ссылка на “наборы” в этом изобретении, в общем случае, призвана означать ненулевые наборы, если прямо не указано обратное, и не призвана означать классическое математическое определение множеств, которое включает в себя так называемое “пустое множество”.
[160] Альтернативное преобразование может содержать анализ главных компонентов, часто именуемый “PCA”. PCA означает математическую процедуру, которая использует ортогональное преобразование для преобразования набор наблюдений возможно коррелирующих переменных в набор линейно раскоррелированных переменных, именуемых главными компонентами. Линейно раскоррелированные переменные представляют переменные, которые не имеют линейного статистического соотношения (или зависимости) друг от друга. Эти главные компоненты можно описать как имеющие малую степень статистической корреляции друг с другом. В любом случае, количество так называемых главных компонентов меньше или равно количеству исходных переменных. В некоторых примерах, преобразование определяется таким образом, что первый главный компонент имеет наибольшую возможную дисперсию (или, другими словами, учитывает максимально возможную изменчивость данных), и каждый последующий компонент по очереди имеет наивысшую дисперсию, возможную при ограничении, что этот последующий компонент ортогонален предыдущим компонентам (иными словами, раскоррелирован с ними). PCA может осуществлять форму снижения порядка, что в отношении коэффициентов 11 HOA может приводить к сжатию коэффициентов 11 HOA. В зависимости от контекста, PCA может именоваться по-разному, например, дискретное преобразование Карунена-Лева, преобразование Хотеллинга, правильное ортогональное разложение (POD) и разложение по собственным значениям (EVD), и т.д. Свойствами таких операций, которые приводят к лежащий в основе цели сжатия аудиоданных, являются ‘уплотнение по энергии’ и ‘декорреляция’ многоканальных аудиоданных.
[161] В любом случае, блок 30 LIT осуществляет разложение на сингулярные значения (которое, опять же, может именоваться “SVD”) для преобразования коэффициентов 11 HOA в два или более наборов преобразованных коэффициентов HOA. Эти “наборы” преобразованных коэффициентов HOA может включать в себя векторы преобразованных коэффициентов HOA. В примере, приведенном на фиг. 4, блок 30 LIT может осуществлять SVD в отношении коэффициентов 11 HOA для генерации так называемой матрицы V, матрицы S и матрицы U. SVD, в линейной алгебре, может представлять факторизацию действительной или комплексной матрицы X y на z (где X может представлять многоканальные аудиоданные, например, коэффициенты 11 HOA) в следующей форме:
X=USV*
U может представлять действительную или комплексную унитарную матрицу y на y, где y столбцов U обычно известны как левые сингулярные векторы многоканальных аудиоданных. S может представлять прямоугольную диагональную матрицу y на z с неотрицательными действительными числами на диагонали, где диагональные значения S обычно известны как сингулярные значения многоканальных аудиоданных. V* (которая может обозначать транспонированную и комплексно сопряженную матрицу V) может представлять действительную или комплексную унитарную матрицу z на z, где z столбцов V* обычно известны как правые сингулярные векторы многоканальных аудиоданных.
[162] Хотя в этом изобретении они описаны как применяемые к многоканальным аудиоданным, содержащим коэффициенты 11 HOA, методы могут применяться к любой форме многоканальных аудиоданных. Таким образом, устройство 20 аудиокодирования может осуществлять разложение на сингулярные значения в отношении многоканальные аудиоданные, представляющие, по меньшей мере, часть звукового поля для генерации матрицы U, представляющей левые сингулярные векторы многоканальных аудиоданных, матрицы S, представляющей сингулярные значения многоканальных аудиоданных, и матрицы V, представляющей правые сингулярные векторы многоканальных аудиоданных, и представляющей многоканальные аудиоданные как функцию, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V.
[163] В некоторых примерах, матрица V* в упомянутом выше математическом выражении SVD обозначается как сопряженная транспонированная матрица V для отражения того, что SVD может применяться к матрицам, содержащим комплексные числа. В случае применения к матрицам, содержащим только действительные числа, комплексно-сопряженную матрицу V (или, другими словами, матрицу V*) можно рассматривать как транспонированную матрица V. Ниже предполагается, для упрощения иллюстрации, что коэффициенты 11 HOA содержат действительные числа, в результате чего, матрица V выводится через SVD вместо матрицы V*. Кроме того, хотя в этом изобретении она обозначена как матрица V, ссылку на матрицу V следует понимать в смысле транспонированной матрицы V, когда это целесообразно. Хотя предполагается, что это матрица V, методы могут применяться аналогичным образом к коэффициентам 11 HOA имеющим комплексные коэффициенты, где выходом SVD является матрица V*. Соответственно, методы не подлежат ограничению в этом отношении только обеспечением применения SVD для генерации матрицы V, но могут включать в себя применение SVD к коэффициентам 11 HOA, имеющим комплексные компоненты, для генерации матрицы V*.
[164] В любом случае, блок 30 LIT может осуществлять поблочную форму SVD в отношении каждого блока (который может означать кадр) аудиоданных амбиофонии более высокого порядка (HOA) (где эти аудиоданные амбиофонии включают в себя блоки или выборки коэффициентов 11 HOA или любую другую форму многоканальных аудиоданных). Как упомянуто выше, переменную M можно использовать для обозначения длины кадра аудио в выборках. Например, когда кадр аудио включает в себя 1024 выборки аудиосигнала, M равно 1024. Хотя они описаны в отношении этого типичного значения для M, методы этого изобретения не подлежат ограничению этим типичным значением для M. Таким образом, блок 30 LIT может осуществлять поблочное SVD в отношении блока коэффициентов 11 HOA, имеющего M на (N+1)2 коэффициентов HOA, где N, опять же, обозначает порядок аудиоданных HOA. Блок 30 LIT может генерировать, посредством осуществления этого SVD, матрицу V, матрицу S и матрицу U, где каждая из матриц может представлять соответствующие матрицы V, S и U, описанные выше. Таким образом, блок 30 линейного обратимого преобразования может осуществлять SVD в отношении коэффициентов 11 HOA для вывода векторов 33 US[k] (которые могут представлять комбинированную версию векторов S и векторов U) имеющих размеры D: M x (N+1)2, и векторов 35 V[k], имеющих размеры D: (N+1)2 x (N+1)2. Отдельные элементы вектора в матрице US[k] также могут обозначаться , тогда как характерные векторы матрицы V[k] также могут обозначаться .
[165] Анализ матриц U, S и V может показать, что эти матрицы несут или представляют пространственные и временные характеристики лежащего в основе звукового поля, представленного выше как X. Каждый из N векторов в U (длиной M выборок) может представлять нормализованные разделенные аудиосигналы как функцию времени (в течение периода времени, представленного M выборками), которые ортогональны друг другу и которые отделены от любых пространственных характеристик (которые также могут именоваться информацией направленности). Пространственные характеристики, представляющие пространственную форму и позицию (r, тета, фи) ширина могут быть альтернативно представлены отдельными i-ыми векторами, , в матрице V (каждый длинной (N+1)2). Векторы в матрице U и в матрице V нормализованны таким образом, что их среднеквадратические энергии равны единице. Энергия аудиосигналов в U, таким образом, представляется диагональными элементами в S. Умножение U и S для формирования US[k] (с отдельными элементами вектора ), таким образом, представляет аудиосигнал истинными энергиями. Способность разложения SVD отделять временные аудиосигналы (в U), их энергии (в S) и их пространственные характеристики (в V) может поддерживать различные аспекты методов, описанных в этом изобретении. Кроме того, эта модель синтеза лежащих в основе коэффициентов HOA[k], X, посредством векторного умножения US[k] и V[k] порождает термин “методология векторного синтеза”, который используется на протяжении этого документа.
[166] Хотя он описан как осуществляемый непосредственно в отношении коэффициентов 11 HOA, блок 30 LIT может применять линейное обратимое преобразование к производным коэффициентов 11 HOA. например, блок 30 LIT может применять SVD в отношении матрицы спектральной плотности мощности, выведенной из коэффициентов 11 HOA. Матрица спектральной плотности мощности может быть обозначена как PSD и получена путем матричного умножения транспонированной hoaFrame на hoaFrame, что изложено в нижеследующем псевдокоде. Обозначение hoaFrame означает кадр коэффициентов 11 HOA.
[167] Блок 30 LIT может, после применения SVD (svd) к PSD, может получать матрицу S[k]2 (S_squared) и матрицу V[k]. Матрица S[k]2 может обозначать квадрат матрицы S[k], в связи с чем, блок 30 LIT может применять операцию извлечения квадратного корня из матрицы S[k]2 для получения матрицы S[k]. Блок 30 LIT может, в ряде случаев, осуществлять квантование в отношении матрицы V[k] для получения квантованной матрицы V[k] (которая может быть обозначена как матрица V[k]’). Блок 30 LIT может получать матрицу U[k], сначала умножая матрицу S[k] на квантованную матрицу V[k]’ для получения матрицы SV[k]’. Затем блок 30 LIT может получать псевдообратную (pinv) матрицу SV[k]’ и затем умножать коэффициенты 11 HOA на псевдообратную матрицу SV[k]’ для получения матрицы U[k]. Вышеприведенное описание может быть представлено следующим псевдокодом:
PSD=hoaFrame’*hoaFrame;
[V, S_squared]=svd(PSD,’econ’);
S=sqrt(S_squared);
U=hoaFrame * pinv(S*V’);
[168] Путем осуществления SVD в отношении спектральной плотности мощности (PSD) коэффициентов HOA вместо самих коэффициентов, блок 30 LIT может потенциально снижать вычислительную сложность осуществления SVD в отношении одного или более из циклов процессор и пространства хранения, достигая при этом такой же эффективности аудиокодирования источника, как если бы SVD применялось непосредственно к коэффициентам HOA. Таким образом, вышеописанное SVD типа PSD может потенциально требовать меньше вычислительной мощности, поскольку SVD осуществляется на матрице F*F (где F - количество коэффициентов HOA). По сравнению с матрицей M*F, где M - длина кадра, т.е. 1024 или более выборок. Теперь сложность SVD, благодаря применения к PSD вместо коэффициентов 11 HOA, может быть около O(L^3) по сравнению с O(M*L^2) в случае применения к коэффициентам 11 HOA (где O(*) обозначает символ большого O вычислительной сложности, обычно используемый в компьютерной технике).
[169] Блок 32 вычисления параметров представляет блок, выполненный с возможностью вычисления различные параметры, например, параметр корреляции (R), параметры свойств направленности (θ, ϕ, r) и свойство энергии (e). Каждый из этих параметров для текущего кадра может быть обозначен как R[k], θ[k], ϕ[k], r[k] и e[k]. Блок 32 вычисления параметров может осуществлять анализ энергии и/или корреляцию (или так называемую кросс-корреляцию) в отношении векторов 33 US[k] для идентификации этих параметров. Блок 32 вычисления параметров также может определять эти параметры для предыдущего кадра, где параметры предыдущего кадра могут быть обозначены R[k-1], θ[k-1], ϕ[k-1], r[k-1] и e[k-1], на основании предыдущего кадра вектора US[k-1] и векторов V[k-1]. Блок 32 вычисления параметров может выводить текущие параметры 37 и предыдущие параметры 39 на блок 34 переупорядочения.
[170] Таким образом, блок 32 вычисления параметров может осуществлять анализ энергии в отношении каждого из L первых векторов 33 US[k], соответствующих первому времени, и каждого из вторых векторов 33 US[k-1], соответствующих второму времени, вычислять среднеквадратическую энергию для, по меньшей мере, части (но часто всего) первого кадра аудио и части (но часто всего) второго кадра аудио и, таким образом, генерировать 2L энергии, по одному для каждого из L первых векторов 33 US[k] первого кадра аудио и по одному для каждого из вторых векторов 33 US[k-1] второго кадра аудио.
[171] В других примерах, блок 32 вычисления параметров может осуществлять кросс-корреляцию между некоторой частью (если не всего) набора выборок для каждого из первых векторов 33 US[k] и каждого из вторых векторов 33 US[k-1]. Кросс-корреляция может означать кросс-корреляцию в том смысле, в каком ее понимают специалисты по обработке сигналов. Другими словами, кросс-корреляция может означать меру подобия между двумя формами волны (которые в этом случае определяются как дискретный набор M выборок) как функцию запаздывания по времени, применяемого к одной из них. В некоторых примерах, для осуществления кросс-корреляции, блок 32 вычисления параметров сравнивает последние L выборок каждого из первых векторов 27 US[k], поочередно, с первыми L выборками каждого из оставшихся вторых векторов 33 US[k-1] для определения параметра корреляции. Используемая здесь “поочередная” операция означает поэлементную операцию, выполняемую в отношении первого набора элементов и второго набора элементов, где операция извлекает один элемент из каждого из первого и второго набора элементов “по очереди” согласно упорядочению наборов.
[172] Блок 32 вычисления параметров также может анализировать векторы 35 V[k] и/или V[k-1] для определения параметров свойств направленности. Эти параметры свойств направленности могут обеспечивать указание перемещения и положения аудиообъекта, представленных соответствующими векторами 33 US[k] и/или US[k-1]. Блок 32 вычисления параметров может обеспечивать любую комбинацию вышеприведенных текущих параметров 37 (определенных в отношении векторов 33 US[k] и/или векторов 35 V[k]) и любую комбинацию предыдущих параметров 39 (определенных в отношении векторов 33 US[k-1] и/или векторов 35 V[k-1]) на блок 34 переупорядочения.
[173] Разложение SVD не гарантирует, что аудиосигнал/объект представленный p-ым вектором в векторах 33 US[k-1], который может быть обозначен как вектор US[k-1][p] (или, альтернативно, как ), будет тем же аудиосигналом/объектом (развившимся во времени), представленным p-ым вектором в векторах 33 US[k], которые также могут быть обозначены как векторы 33 US[k][p] (или, альтернативно, как ). Параметры, вычисленные блоком 32 вычисления параметров, могут использоваться блоком 34 переупорядочения для переупорядочения аудиообъектов для представления их естественного оценивания или непрерывности в течение времени.
[174] Таким образом, блок 34 переупорядочения затем может сравнивать каждый из параметров 37 из первых векторов 33 US[k] поочередно с каждым из параметров 39 для вторых векторов 33 US[k-1]. Блок 34 переупорядочения может переупорядочивать (с использованием, в порядке одного примера, венгерского алгоритма) различные векторы в матрице 33 US[k] и матрице 35 V[k] на основании текущих параметров 37 и предыдущих параметров 39 для вывода переупорядоченной матрицы 33’ US[k] (которая может быть математически обозначена как ) и переупорядоченной матрицы 35’ V[k] (которая может быть математически обозначена как ) на блок 36 выбора звука переднего плана (или преобладающего звука - PS) (“блок 36 выбора переднего плана”) и блок 38 компенсации энергии.
[175] Другими словами, блок 34 переупорядочения может представлять блок, выполненный с возможностью преупорядочения векторов в матрице 33 US[k] для генерации переупорядоченной матрицы 33’ US[k]. Блок 34 переупорядочения может переупорядочивать матрицу 33 US[k], поскольку порядок векторов 33 US[k] (где, опять же, каждый вектор из векторов 33 US[k], который, опять же, можно альтернативно обозначать как , может представлять один или более характерный (или, другими словами, преобладающий) монофонический аудиообъект, присутствующий в звуковом поле) может отличаться от участков аудиоданных. Таким образом, при условии, что устройство 12 аудиокодирования, в некоторых примерах, действует на этих участках аудиоданных, в общем случае, именуемых кадрами аудио, позиция векторов, соответствующих этим отдельным монофоническим аудиообъектам, представленных в матрице 33 US[k] как выведенные, может различаться от кадра аудио к кадру аудио вследствие применения SVD к кадрам и изменения заметности каждого аудиообъекта от кадра к кадру.
[176] Передача векторов в матрице 33 US[k] непосредственно на блок 40 психоакустического аудиокодера без переупорядочения векторов в матрице 33 US[k] от кадра аудио к кадру аудио может снижать степень сжатия, достижимую для некоторых схем сжатия, например, унаследованных схем сжатия, которые действуют лучше, когда монофонические аудиообъекты являются непрерывными (поканально, что определяется в этом примере позиционным порядком векторов в матрице 33 US[k] относительно друг друга) по кадрам аудио. Кроме того, в отсутствие переупорядочения, кодирование векторов в матрице 33 US[k] может снижать качество аудиоданных при декодировании. Например, кодеры AAC, которые могут быть представлены в примере, приведенном на фиг. 3, блоком 40 психоакустического аудиокодера, могут более эффективно сжимать переупорядоченные один или более векторов в матрице 33’ US[k] от кадра к кадру по сравнению со сжатием, достигаемым при непосредственном кодировании векторов в матрице 33 US[k] от кадра к кадру. Хотя выше приведено описание в отношении кодеров AAC, методы можно осуществлять в отношении любого кодера, который обеспечивает лучшее сжатие, когда монофонические аудиообъекты задаются по кадрам в конкретном порядке или позиции (поканально).
[177] Различные аспекты методов, таким образом, могут предусматривать, что устройство 12 аудиокодирования преупорядочивает один или более векторов (например, векторы в матрице 33 US[k] для генерации переупорядоченных одного или более векторов в переупорядоченной матрице 33’ US[k] и, таким образом облегчает сжатие векторов в матрице 33 US[k] унаследованным аудиокодером, например, блоком 40 психоакустического аудиокодера).
[178] Например, блок 34 переупорядочения может переупорядочивать один или более векторов в матрице 33 US[k] из первого кадра аудио, следующего по времени за вторым кадром, которому соответствуют один или более вторых векторов в матрице 33 US[k-1] на основании текущих параметров 37 и предыдущих параметров 39. Хотя описано, что первый кадр аудио следуют по времени за вторым кадром аудио, первый кадр аудио может предшествовать по времени второму кадру аудио. Соответственно, методы не подлежат ограничению примеру, описанному в этом изобретении.
[179] Для иллюстрации рассмотрим нижеследующую таблицу 1, где каждый из p векторов в матрице 33 US[k] обозначается как US[k][p], где k обозначает, получен ли соответствующий вектор из k-го кадра или предыдущего (k-1)-го кадра, и p обозначает строку вектора относительно векторов того же кадра аудио (где матрица US[k] имеет (N+1)2 таких векторов). Как упомянуто выше, предполагая N заданным равным единице, p может обозначать векторы с первого (1) по (4).
[180] В вышеприведенной таблице 1, блок 34 переупорядочения сравнивает энергию, вычисленную для US[k-1][1], с энергией, вычисленной для каждого из US[k][1], US[k][2], US[k][3], US[k][4], энергию, вычисленную для US[k-1][2] с энергией, вычисленной для каждого из US[k][1], US[k][2], US[k][3], US[k][4], и т.д. Блок 34 переупорядочения затем может отбрасывать один или более из вторых векторов 33 US[k-1] второго предыдущего кадра аудио (по времени). Для иллюстрации, рассмотрим нижеследующую таблицу 2, демонстрирующую оставшиеся вторые векторы 33 US[k-1]:
[181] В вышеприведенной таблице 2, блок 34 переупорядочения может определять, на основании сравнения энергии, что энергия, вычисленная для US[k-1][1], аналогична энергии, вычисленной для каждого из US[k][1] и US[k][2], энергия, вычисленная для US[k-1][2], аналогична энергии, вычисленной для каждого из US[k][1] и US[k][2], энергия, вычисленная для US[k-1][3], аналогична энергии, вычисленной для каждого из US[k][3] и US[k][4], и энергия, вычисленная для US[k-1][4], аналогична энергии, вычисленной для каждого из US[k][3] и US[k][4]. В некоторых примерах, блок 34 переупорядочения может осуществлять дополнительно анализ энергии для идентификации подобия между каждым из первых векторов матрицы 33 US[k] и каждым из вторых векторов матрицы 33 US[k-1].
[182] В других примерах, блок 32 переупорядочения может переупорядочивать векторы на основании текущих параметров 37 и предыдущих параметров 39, относящихся к кросс-корреляции. В этих примерах, возвращаясь к вышеприведенной таблице 2, блок 34 переупорядочения может определять следующую иллюстративную корреляцию, выраженную в таблице 3, на основании этих параметров кросс-корреляции:
[183] Из вышеприведенной таблицы 3, блок 34 переупорядочения определяет, в порядке одного примера, что вектор US[k-1][1] коррелирует с иначе расположенным вектором US[k][2], вектор US[k-1][2] коррелирует с иначе расположенным вектором US[k][1], вектор US[k-1][3] коррелирует с аналогично расположенным вектором US[k][3], и вектор US[k-1][4] коррелирует с аналогично расположенным вектором US[k][4]. Другими словами, блок 34 переупорядочения определяет то, что может именоваться информацией переупорядочения, описывающей, как преупорядочивать первые векторы матрицы 33 US[k], таким образом, что вектор US[k][2] меняет положение в первой строке первых векторов матрицы 33 US[k], и вектор US[k][1] меняет положение во второй строке первых векторов 33 US[k]. Затем блок 34 переупорядочения может переупорядочивать первые векторы матрицы 33 US[k] на основании этой информации переупорядочения для генерации переупорядоченной матрицы 33’ US[k].
[184] Дополнительно, блок 34 переупорядочения может, хотя это не показано в примере, приведенном на фиг. 4, обеспечивать эту информацию переупорядочения на устройство 42 генерации битового потока, которое может генерировать битовый поток 21 для включения этой информации переупорядочения, благодаря чему, устройство аудиодекодирования, например, устройство 24 аудиодекодирования, показанное в примере, приведенном на фиг. 3 и 5, может определять, как преупорядочивать переупорядоченные векторы матрицы 33’ US[k] для восстановления векторов матрицы 33 US[k].
[185] Хотя он описан выше как осуществляющий двухэтапный процесс, предусматривающий анализ на основании сначала зависящих от энергии параметров и затем параметров кросс-корреляции, блок 32 переупорядочения может только осуществлять этот анализ только в отношении параметров энергии для определения информации переупорядочения, осуществлять этот анализ только в отношении параметров кросс-корреляции для определения информации переупорядочения, или осуществлять анализ в отношении как параметров энергии, так и параметров кросс-корреляции вышеописанным образом. Дополнительно, методы могут использовать другие типы процессов для определения корреляции, которые не предусматривают осуществления одного или оба из сравнения энергии и/или кросс-корреляции. Соответственно, методы не подлежат ограничению в этом отношении вышеизложенными примерами. Кроме того, другое параметры, полученные от блока 32 вычисления параметров (например, параметры пространственного положения, выведенные из векторов V или корреляции векторов в V[k] и V[k-1]) также можно использовать (либо одновременно/совместно, либо последовательно) с параметрами энергии и кросс-корреляции, полученными из US[k] и US[k-1], для определения правильного упорядочения векторов в US.
[186] В порядке одного примера использования корреляции векторов в матрице V, блок 34 вычисления параметров может определить, что векторы матрицы 35 V[k] коррелируют, как указано в нижеследующей таблице 4:
Из вышеприведенной таблицы 4, блок 34 переупорядочения определяет, в порядке одного примера, что вектор V[k-1][1] коррелирует с иначе расположенным вектором V[k][2], вектор V[k-1][2] коррелирует с иначе расположенным вектором V[k][1], вектор V[k-1][3] коррелирует с аналогично расположенным вектором V[k][3], и вектор V[k-1][4] коррелирует с аналогично расположенным вектором V[k][4]. Блок 34 переупорядочения может выводить переупорядоченную версию векторов матрицы 35 V[k] как переупорядоченную матрицу 35’ V[k].
[187] В некоторых примерах, то же переупорядочение, которое применяется к векторам в матрице US, также применяется к векторам в матрице V. Другими словами, любой анализ, используемый при переупорядочении векторов V, можно использовать совместно с любым анализом, используемым для преупорядочения векторов US. Для иллюстрации примера, в котором информация переупорядочения определяется не только в отношении параметров энергии и/или параметров кросс-корреляции в отношении векторов US[k] 35, блок 34 переупорядочения также может осуществлять этот анализ в отношении векторов 35 V[k] на основании параметров кросс-корреляции и параметров энергии аналогично описанному выше в отношении векторов 35 V[k]. Кроме того, хотя векторы 33 US[k] не имеют никаких свойств направленности, векторы 35 V[k] могут обеспечивать информацию, относящуюся к направленности соответствующих векторов 33 US[k]. В этом смысле, блок 34 переупорядочения может идентифицировать корреляции между векторами 35 V[k] и векторами 35 V[k-1] на основании анализа соответствующих параметров свойств направленности. Таким образом, в некоторых примерах, аудиообъект движется в звуковом поле непрерывно, когда перемещается или покоится в относительно устойчивом положении. Таким образом, блок 34 переупорядочения может идентифицировать те векторы матрицы 35 V[k] и матрицы 35 V[k-1], которые демонстрируют некоторое известное физически реалистическое движение или стоят неподвижно в звуковом поле, как коррелирующие, переупорядочивая векторы 33 US[k] и векторы 35 V[k] на основании корреляции этих свойств направленности. В любом случае, блок 34 переупорядочения может выводить переупорядоченные векторы 33’ US[k] и переупорядоченные векторы 35’ V[k] на блок 36 выбора переднего плана.
[188] Дополнительно, методы могут использовать другие типы процессов для определения правильного порядка, которые не предусматривают осуществления одного или оба из сравнения энергии и/или кросс-корреляции. Соответственно, методы не подлежат ограничению в этом отношении вышеизложенными примерами.
[189] Хотя оно описано выше как переупорядочение векторов матрицы V для отражения переупорядочения векторов матрицы US, в ряде случаев, векторы V можно переупорядочивать иначе, чем векторы US, где отдельные элементы синтаксиса могут генерироваться для указания переупорядочения векторов US и переупорядочения векторов V. В ряде случаев, векторы V могут не переупорядочиваться, и только векторы US могут переупорядочиваться при условии, что векторы V могут не подвергаться психоакустическому кодированию.
[190] Вариант осуществления, где переупорядочение векторов матрицы V и векторов матрицы US отличаются, соответствуют намерению обмениваться аудиообъектами в пространстве - т.е. перемещения их из исходной записанной позиции (кода лежащее в основе звуковое поле является естественной записью) или мастерски назначенной позиции (когда лежащее в основе звуковое поле является искусственной смесью объектов). В порядке примера, предположим, что существует два аудиоисточника A и B, A может быть звуком кошачьего мяуканья, исходящим из “левой” части звукового поля, и B может быть звуком собачьего лая, исходящим из “правой” части звукового поля. Когда переупорядочение V и US отличаются, позиции двух источников звука меняются местами. После обмена A (мяуканье) исходит из правой части звукового поля, и B (лай) исходит из левой части звукового поля.
[191] Блок 44 анализа звукового поля может представлять блок, выполненный с возможностью осуществления анализа звукового поля в отношении коэффициентов 11 HOA чтобы потенциально достичь целевой битовой скорости 41. Блок 44 анализа звукового поля может, на основании этого анализа и/или принятой целевой битовой скорости 41, определять суммарное количество экземпляров психоакустического кодера (которое может быть функцией суммарного количества каналов окружения или фона (BGTOT) и количества каналов переднего плана или, другими словами, преобладающих каналов. Суммарное количество экземпляров психоакустического кодера можно обозначить как numHOATransportChannels. Блок 44 анализа звукового поля также может определять, опять же для потенциального достижения целевой битовой скорости 41, суммарное количество каналов переднего плана (nFG) 45, минимальный порядок звукового поля фона (или, другими словами, окружения) (NBG или, альтернативно, MinAmbHoaOrder), соответствующее количество фактических каналов, представляющих минимальный порядок фонового звукового поля (nBGa=(MinAmbHoaOrder+1)2), и индексы (i) дополнительных каналов HOA BG для отправки (которые могут совместно обозначаться как информация 43 фонового канала в примере, приведенном на фиг. 4). Информация 42 фонового канала также может именоваться информацией 43 канала окружения. Каждый из каналов, оставшихся из numHOATransportChannels - nBGa, может быть либо “дополнительным каналом фона/окружения”, “активным преобладающим каналом на векторной основе”, “активным преобладающим сигналом на основе направленности ” или “полностью неактивным”. В одном варианте осуществления, эти типы каналов могут указываться (как “ChannelType”) элемент синтаксиса двумя битами (например 00:дополнительный фоновый канал; 01: преобладающий сигнал на векторной основе; 10: неактивный сигнал; 11: сигнал на основе направленности). Суммарное количество сигналов фона или окружения, nBGa, можно задавать в виде (MinAmbHoaOrder +1)2+число раз, когда индекс 00 (в вышеприведенном примере) выглядит, как тип канала в битовом потоке для этого кадра.
[192] В любом случае, блок 44 анализа звукового поля может выбирать количество каналов фона (или, другими словами, окружения) и количество каналов переднего плана (или, другими словами, преобладающих) на основании целевой битовой скорости 41, выбирать больше каналов фона и/или переднего плана, при относительно более высокой целевой битовой скорости 41 (например, когда целевая битовая скорость 41 больше или равна 512 кбит/с). В одном варианте осуществления, numHOATransportChannels можно задать равным 8, тогда как MinAmbHoaOrder можно задать равным 1 в секции заголовка битового потока (которая описана более детально со ссылкой на фиг. 10-10O(ii)). В этом сценарии, в каждом кадре, четыре канала могут быть предназначены для представления фоновой или окружающей части звукового поля, тогда как другие 4 канала могут, на основе кадров, зависеть от типа канала - например, либо используемого как дополнительный канал фона/окружения, либо как переднеплановый/преобладающий канал. Сигналы переднего плана/преобладающие сигналы могут быть либо сигналами на векторной основе, либо сигналами на основе направленности, как описано выше.
[193] В ряде случаев, суммарное количество преобладающих сигналов на векторной основе для кадра, можно задавать в виде числа раз, когда индекс ChannelType равен 01, в битовом потоке этого кадра, в вышеприведенном примере. В вышеприведенном варианте осуществления, для каждого дополнительного канала фона/окружения (например, соответствующего ChannelType, равного 00), соответствующая информация какого из возможных коэффициентов HOA (помимо первых четырех) может быть представлена в этом канале. Эта информация, для контента HOA четвертого порядка, может быть индексом для указания между 5-25 (первые четыре 1-4 могут отправляться все время, когда minAmbHoaOrder задан равным 1, поэтому необходимо только указать между 5-25). Эта информация, таким образом, может отправляться с использованием 5-битового элемента синтаксиса (для контента 4-го порядка), который может быть обозначен как “CodedAmbCoeffIdx.”
[194] Во втором варианте осуществления, все сигналы переднего плана/преобладающие сигналы являются сигналами на векторной основе. В этом втором варианте осуществления, суммарное количество сигналов переднего плана/преобладающих сигналов можно задавать в виде nFG=numHOATransportChannels - [(MinAmbHoaOrder +1)2+число раз, когда индекс равен 00].
[195] Блок 44 анализа звукового поля выводит информацию 43 фонового канала и коэффициенты 11 HOA на блок 46 выбора фона (BG), информацию 43 фонового канала на блок 46 приведения коэффициентов и блок 42 генерации битового потока, и nFG 45 на блок 36 выбора переднего плана.
[196] В некоторых примерах, блок 44 анализа звукового поля может выбирать, на основании анализа векторов матрицы 33 US[k] и целевой битовой скорости 41, переменную nFG, количество этих компонентов, имеющих наибольшее значение. Другими словами, блок 44 анализа звукового поля может определять значение переменной A (которое может быть аналогично или по существу аналогично NBG), которая разделяет два подпространства, путем анализа наклона кривой, созданной уменьшающимися диагональными значениями векторов матрицы S[k] 33, где большие сингулярные значения представляют звуки переднего плана или характерные звуки, и низкие сингулярные значения представляют фоновые компоненты звукового поля. Таким образом, переменная A может сегментировать общее звуковое поле на подпространство переднего плана и подпространство фона.
[197] В некоторых примерах, блок 44 анализа звукового поля может использовать первую и вторую производную кривой сингулярных значений. Блок 44 анализа звукового поля может также ограничивать значение для переменной A величиной между единицей и пятью. В порядке другого примера, блок 44 анализа звукового поля может ограничивать значение переменной A величиной между единицей и (N+1)2. Альтернативно, блок 44 анализа звукового поля может предварительно задавать значение для переменной A, например значение четыре. В любом случае, на основании значения A, блок 44 анализа звукового поля определяет суммарное количество каналов 45 переднего плана (nFG), порядок фонового звукового поля (NBG) и количество (nBGa) и индексы (i) дополнительных каналов HOA BG для отправки.
[198] Кроме того, блок 44 анализа звукового поля может определять энергию векторов в матрице 35 V[k] для каждого вектора. Блок 44 анализа звукового поля может определять энергию для каждого из векторов в матрице 35 V[k] и идентифицировать имеющие высокую энергию как компоненты переднего плана.
[199] Кроме того, блок 44 анализа звукового поля может осуществлять различные другие анализы в отношении коэффициентов 11 HOA, включающие в себя пространственный анализ энергии, анализ пространственного маскирования, анализ диффузии или другие формы звуковых анализов. Блок 44 анализа звукового поля может осуществлять пространственный анализ энергии путем преобразования коэффициентов 11 HOA в пространственную область и идентификации областей высокой энергии, представляющих направленные компоненты звукового поля, которые следует сохранить. Блок 44 анализа звукового поля может осуществлять перцептивный анализ пространственного маскирования аналогично пространственному анализу энергии, за исключением того, что блок 44 анализа звукового поля может идентифицировать пространственные области, которые маскируются пространственно близкими звуками более высокой энергии. Затем блок 44 анализа звукового поля может, на основании перцепционно маскированных областей, идентифицировать меньше компонентов переднего плана в ряде случаев. Блок 44 анализа звукового поля может дополнительно осуществлять анализ диффузии в отношении коэффициентов 11 HOA для идентификации областей диффузной энергии, которые могут представлять фоновые компоненты звукового поля.
[200] Блок 44 анализа звукового поля может также представлять блок, выполненный с возможностью определения заметности, характерности или преобладания аудиоданных, представляющих звуковое поле, с использованием информации на основе направленности, связанной с аудиоданными. Хотя определения на основе энергии могут улучшать рендеризацию звукового поля, разложенного посредством SVD для идентификации характерных аудиокомпонентов звукового поля, определения на основе энергии также могут приводить к тому, что устройство ошибочно идентифицирует фоновые аудиокомпоненты как характерные аудиокомпоненты, в случаях, когда фоновые аудиокомпоненты демонстрируют высокий уровень энергии. Таким образом, разделение характерных и фоновых аудиокомпонентов только на основе энергии может быть ненадежным, поскольку энергетичные (например, более громкие) фоновые аудиокомпоненты могут неправильно идентифицироваться как характерные аудиокомпоненты. Чтобы более надежно различать между характерными и фоновыми аудиокомпонентами звукового поля, различные аспекты методов, описанных в этом изобретении, могут предусматривать, что блок 44 анализа звукового поля осуществляет анализ на основе направленности коэффициентов 11 HOA для отделения аудиокомпонентов переднего плана и окружения от разложенных версий коэффициентов 11 HOA.
[201] В этом отношении, блок 44 анализа звукового поля может представлять блок, сконфигурированный или иначе выполненный с возможностью идентификации характерных (или переднеплановых) элементов из фоновых элементов, включенных в один или более из векторов в матрице 33 US[k] и векторов в матрице 35 V[k]. Согласно некоторым методам на основе SVD, наиболее энергетичные компоненты (например, первые несколько векторов одной или более из матрицы 33 US[k] и матрицы 35 V[k] или выведенных из нее векторов) можно рассматривать как характерные компоненты. Однако, наиболее энергетичные компоненты (которые представлены векторами) из одного или более из векторов в матрице 33 US[k] и векторов в матрице 35 V[k] могут не во всех сценариях представлять наиболее направленные компоненты/сигналы.
[202] Блок 44 анализа звукового поля может реализовать один или более аспектов методов, описанных здесь для идентификации передний план/прямой/преобладающий элементы на основании направленности векторов из одного или более из векторов в матрице 33 US[k] и векторов в матрице 35 V[k] или выведенные из нее векторы. В некоторых примерах, блок 44 анализа звукового поля может идентифицировать или выбрать в качестве характерных аудиокомпонентов (где компоненты также могут именоваться “объектами”), один или более векторов на основании энергии и направленности векторов. например, блок 44 анализа звукового поля может идентифицировать те векторы из одного или более из векторов в матрице 33 US[k] и векторов в матрице 35 V[k] (или выведенных из нее векторов) которые демонстрируют высокую энергию и высокую направленность (например, представленную как показатель направленности) в качестве характерных аудиокомпонентов. В результате, если блок 44 анализа звукового поля определяет, что конкретный вектор является относительно менее направленным по сравнению с другими векторами из одного или более из векторов в матрице 33 US[k] и векторов в матрице 35 V[k] (или выведенных из нее векторов), то, независимо от уровня энергии, связанного с конкретным вектором, блок 44 анализа звукового поля может определить, что конкретный вектор представляет аудиокомпоненты фона (или окружения) звукового поля, представленного коэффициентами 11 HOA.
[203] В некоторых примерах, блок 44 анализа звукового поля может идентифицировать характерные аудиообъекты (которые, как упомянуто выше, также могут именоваться “компоненты”) на основании направленности, путем осуществления следующих операций. Блок 44 анализа звукового поля может умножать (например, с использованием одного или более процессов матричного умножения) векторы в матрице S[k] (которые можно выводить из векторов 33 US[k] или, хотя это не показано в примере, приведенном на фиг. 4, по отдельности выводить блоком 30 LIT) на векторы в матрице 35 V[k]. Путем умножения матрицы 35 V[k] и векторов S[k], блок 44 анализа звукового поля может получать матрицу VS[k]. Дополнительно, блок 44 анализа звукового поля может возводить в квадрат (т.е., возводить в степень два), по меньшей мере, некоторые из элементов каждого из векторов в матрице VS[k]. В ряде случаев, блок 44 анализа звукового поля может суммировать квадраты элементов каждого вектора, которые связаны с порядком, большим 1.
[204] В порядке одного примера, если каждый вектор матрицы VS[k], которое включает в себя 25 элементов, блок 44 анализа звукового поля может, в отношении каждого вектора, возводить в квадрат элементы каждого вектора, начиная с пятого элемента и заканчивая двадцать пятым элементом, суммируя квадраты элементов для определения показателя направленности (или индикатора направленности). Каждая операция суммирования может давать показатель направленности для соответствующего вектора. В этом примере, блок 44 анализа звукового поля может определить, что те элементы каждой строки, которые связаны с порядком, меньшим или равным 1, а именно, элементы с первого по четвертый, в большей степени относятся к величине энергии и в меньшей степени к направленности этих элементов. Таким образом, амбиофония более низкого порядка, связанная с порядком нуль или один, соответствуют сферическим базисным функциям, которые, как показано на фиг. 1 и фиг. 2, не обеспечивают много в отношении направления волны давления, но зато обеспечивают некоторую громкость (которая представляет энергию).
[205] Операции, описанные в вышеприведенном примере, также могут быть выражены согласно следующему псевдокоду. Нижеприведенный псевдокод включает в себя аннотации, в форме операторов комментариев, которые заключены между последовательными экземплярами строк символов “/*” и “*/” (без кавычек).
[U,S,V]=svd(audioframe,'ecom');
VS=V*S;
/* Следующая строка относится к независимому анализу каждой строки, и суммированию значений в первой (в порядке одного примера) строке от пятого элемента до двадцать пятого элемента для определения показателя направленности или метрики направленности для соответствующего вектора. Возвести в квадрат элементы до суммирования. Элементы в каждой строке, которые связаны с порядком, большим 1, связаны с амбиофонией более высокого порядка, и, таким образом, с большей вероятностью являются направленными. */
sumVS=sum(VS(5:end,:).^2,1);
/* Следующая строка относится к сортировке суммы квадратов для генерируемой матрицы VS, и выбору набора наибольших значений (например, трех или четырех наибольших значений) */
[~,idxVS]=sort(sumVS,'descend');
U=U(:,idxVS);
V=V(:,idxVS);
S=S(idxVS,idxVS);
[206] Другими словами, согласно вышеприведенному псевдокоду, блок 44 анализа звукового поля может выбирать элементы каждого вектора матрицы VS[k], разложенной из коэффициентов 11 HOA соответствующих сферической базисной функции, имеющей порядок, больший единицы. Затем блок 44 анализа звукового поля может возводить в квадрат эти элементы для каждого вектора матрицы VS[k], суммировать квадраты элементов для идентификации, вычислять или иначе определять метрику или показатель направленности для каждого вектора матрицы VS[k]. Затем, блок 44 анализа звукового поля может сортировать векторы матрицы VS[k] на основании соответствующих метрик направленности каждого из векторов. Блок 44 анализа звукового поля может сортировать эти векторы в порядке убывания метрик направленности, таким образом, что векторы с наивысшей соответствующей направленностью являются первыми, и векторы с самой низкой соответствующей направленностью являются последними. Затем блок 44 анализа звукового поля может выбрать ненулевой поднабор векторов, имеющих наивысшую относительную метрику направленности.
[207] Блок 44 анализа звукового поля может осуществлять любая комбинация вышеприведенных анализов для определения суммарное количество экземпляров психоакустического кодера (которое может быть функцией суммарного количества каналов окружения или фона (BGTOT) и количества каналов переднего плана. Блок 44 анализа звукового поля может, на основании любой комбинации вышеприведенных анализов, определять суммарное количество каналов 45 переднего плана (nFG), порядок фонового звукового поля (NBG) и количество (nBGa) и индексы (i) дополнительных каналов HOA BG для отправки (которые могут совместно обозначаться как информация 43 фонового канала в примере, приведенном на фиг. 4).
[208] В некоторых примерах, блок 44 анализа звукового поля может осуществлять этот анализ каждые M выборок, который может возобновляться на основе кадров. В этом отношении, значение A может изменяться от кадра к кадру. Пример битового потока, где решение производится каждые M выборок, показан на фиг. 10-10O(ii). В других примерах, блок 44 анализа звукового поля может осуществлять этот анализ более одного раза за кадр, анализируя два или более участков кадра. Соответственно, методы не подлежат ограничению в этом отношении примерами, приведенными в этом изобретении.
[209] Блок 48 выбора фона может представлять блок, выполненный с возможностью определения коэффициентов 47 HOA фона или окружения на основании информации фонового канала (например, фонового звукового поля (NBG) и количества (nBGa) и индексов (i) дополнительных каналов HOA BG для отправки). Например, когда NBG равно единице, блок 48 выбора фона может выбирать коэффициенты 11 HOA для каждой выборки кадра аудио, имеющего порядок, меньший или равный единице. Затем блок 48 выбора фона может, в этом примере, выбрать коэффициенты 11 HOA, имеющие индекс, идентифицированный одним из индексов (i) как дополнительные коэффициенты HOA BG, где nBGa поступает на блок 42 генерации битового потока для указания в битовом потоке 21, чтобы устройство аудиодекодирования, например, устройство 24 аудиодекодирования, показанное в примере, приведенном на фиг. 3, вычленяло коэффициенты 47 HOA BG из битового потока 21. Затем блок 48 выбора фона может выводить коэффициенты 47 HOA окружения на блок 38 компенсации энергии. Коэффициенты 47 HOA окружения могут иметь размеры D: M x [(NBG+1)2+nBGa].
[210] Блок 36 выбора переднего плана может представлять блок, выполненный с возможностью выбора тех из переупорядоченной матрицы 33’ US[k] и переупорядоченной матрицы 35’ V[k], которые представляют компоненты переднего плана или характерные компоненты звукового поля на основании nFG 45 (который может представлять один или более индексов, идентифицирующих эти векторы переднего плана). Блок 36 выбора переднего плана может выводить сигналы 49 nFG (которые могут быть обозначены как переупорядоченные US[k]1, …, 49 nFG, FG1, …, nfG[k] 49, или 49) на блок 40 психоакустического аудиокодера, где сигналы 49 nFG могут иметь размеры D: M x nFG и каждый представляют монофонические аудиообъекты. Блок 36 выбора переднего плана также может выводить переупорядоченную матрицу 35’ V[k] (или 35’), соответствующую компонентам переднего плана звукового поля, на блок 50 пространственно-временной интерполяции, где те из переупорядоченной матрицы 35’ V[k], соответствующей компонентам переднего плана, могут быть обозначены как матрица V[k] 51k переднего плана (которая может математически обозначаться как ), имеющая размеры D: (N+1)2 x nFG.
[211] Блок 38 компенсации энергии может представлять блок, выполненный с возможностью осуществления компенсации энергии в отношении коэффициентов 47 HOA окружения для компенсации потери энергии вследствие удаления различных каналов HOA блоком 48 выбора фона. Блок 38 компенсации энергии может осуществлять анализ энергии в отношении одной или более из переупорядоченной матрицы 33’ US[k], переупорядоченной матрицы 35’ V[k], сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения и затем осуществлять компенсацию энергии на основании этого анализа энергии для генерации коэффициентов 47’ HOA окружения с компенсацией энергии. Блок 38 компенсации энергии может выводить коэффициенты 47’ HOA окружения с компенсацией энергии на блок 40 психоакустического аудиокодера.
[212] В сущности, блок 38 компенсации энергии можно использовать для компенсации возможного снижения полной энергии фоновых звуковых компонентов звукового поля, обусловленного снижением порядка компонентов звукового поля окружения, описанных коэффициентами 11 HOA, для генерации коэффициентов 47 HOA окружения сниженного порядка (которые, в некоторых примерах, имеют порядок меньший, чем N в отношении только включенных коэффициентов, соответствующих сферическим базисным функциям, имеющим следующие порядки/подпорядки: [(NBG+1)2+nBGa]). В некоторых примерах, блок 38 компенсации энергии компенсирует эти потери энергии путем определения коэффициента усиления компенсации в форме значений усиления для применения к каждому из [(NBG+1)2+nBGa] столбцов коэффициентов 47 HOA окружения для увеличения среднеквадратической (RMS) энергии коэффициентов 47 HOA окружения, чтобы они были равны или, по меньшей мере, более приближены к RMS коэффициентов 11 HOA (которые определяются посредством анализа совокупной энергии одной или более из переупорядоченной матрицы 33’ US[k], переупорядоченной матрицы 35’ V[k], сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка), до вывода коэффициентов 47 HOA окружения на блок 40 психоакустического аудиокодера.
[213] В ряде случаев, блок 38 компенсации энергии может идентифицировать RMS для каждой строки и/или столбца одной или более из переупорядоченной матрицы 33’ US[k] и переупорядоченной матрицы 35’ V[k]. Блок 38 компенсации энергии также может идентифицировать RMS для каждой строки и/или столбца одного или более из выбранных каналов переднего плана, который может включать в себя сигналы 49 nFG и векторы 51k переднего плана V[k], и коэффициенты 47 HOA окружения сниженного порядка. RMS для каждой строки и/или столбца одной или более из переупорядоченной матрицы 33’ US[k] и переупорядоченной матрицы 35’ V[k] может сохраняться в вектор, обозначенный RMSFULL, тогда как RMS для каждой строки и/или столбца одного или более из сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка могут сохраняться в вектор, обозначенный RMSREDUCED. Блок 38 компенсации энергии затем может вычислять вектор Z значений усиления, в соответствии со следующим уравнением: . Затем блок 38 компенсации энергии может применять этот вектор Z значений усиления или различные его участки к одному или более из сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка. В ряде случаев, вектор Z значений усиления применяется к только к коэффициентам 47 HOA окружения сниженного порядка согласно следующему уравнению , где HOABG-RED обозначает коэффициенты 47 HOA окружения сниженного порядка, HOABG-RED’ обозначает приведенные коэффициенты 47’ HOA окружения с компенсацией энергии, и ZT обозначает транспонирование вектора Z.
[214] В некоторых примерах, для определения каждого RMS соответствующих строк и/или столбцов одной или более из переупорядоченной матрицы 33’ US[k], переупорядоченной матрицы 35’ V[k], сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка, блок 38 компенсации энергии может сначала применять рендеризатор опорных коэффициентов сферических гармоник (SHC) к столбцам. Применение рендеризатора опорных SHC блоком 38 компенсации энергии позволяет определять RMS в области SHC для определения энергии общего звукового поля, описанного каждой строкой и/или столбцом кадра, представленного строками и/или столбцами одной или более из переупорядоченной матрицы 33’ US[k], переупорядоченной матрицы 35’ V[k], сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка, как более подробно описано ниже.
[215] Блок 50 пространственно-временной интерполяции может представлять блок, выполненный с возможностью приема векторов 51k переднего плана V[k] для k-го кадра и векторов 51k-1 переднего плана V[k-1] для предыдущего кадра (поэтому обозначенных k-1) и осуществления пространственно-временной интерполяции для генерации интерполированных векторов переднего плана V[k]. Блок 50 пространственно-временной интерполяции может рекомбинировать сигналы 49 nFG с векторами 51k переднего плана V[k] для восстановления переупорядоченных коэффициентов HOA переднего плана. Затем блок 50 пространственно-временной интерполяции может делить переупорядоченные коэффициенты HOA переднего плана на интерполированные векторы V[k] для генерации интерполированных сигналов 49’ nFG. Блок 50 пространственно-временной интерполяции также может выводить те из векторов 51k переднего плана V[k], которые использовались для генерации интерполированных векторов переднего плана V[k], благодаря чему, устройство аудиодекодирования, например, устройство 24 аудиодекодирования, может генерировать интерполированные векторы переднего плана V[k] и, таким образом, восстанавливать векторы 51k переднего плана V[k]. Векторы 51k переднего плана V[k], используемые для генерации интерполированных векторов переднего плана V[k], обозначены как оставшиеся векторы 53 переднего плана V[k]. Чтобы гарантировать, что одни и те же V[k] и V[k-1] используются на кодере и декодере (для создания интерполированных векторов V[k]), на кодере и декодере можно использовать их квантованные/деквантованные версии.
[216] В этом отношении, блок 50 пространственно-временной интерполяции может представлять блок, который интерполирует первую часть первого кадра аудио из каких-либо других участков первого кадра аудио и второго во времени последующего или предыдущего кадра аудио. В некоторых примерах, участки могут быть обозначены как подкадры, где интерполяция, осуществляемая в отношении подкадров, более подробно описана ниже со ссылкой на фиг. 45-46E. В других примерах, блок 50 пространственно-временной интерполяции может действовать в отношении некоторого количества последних выборок предыдущего кадра и некоторого количества первых выборок последующего кадра, как описано более детально со ссылкой на фиг. 37-39. Блок 50 пространственно-временной интерполяции может, при осуществлении этой интерполяции, уменьшать количество выборок векторов 51k переднего плана V[k], которые необходимо указывать в битовом потоке 21, поскольку только те из векторов 51k переднего плана V[k], которые используются для генерации интерполированных векторов V[k], представляют поднабор векторов 51k переднего плана V[k]. Таким образом, чтобы потенциально сделать сжатие коэффициентов 11 HOA более эффективным (путем уменьшения количества векторов 51k переднего плана V[k], которые задаются в битовом потоке 21), различные аспекты методов, описанных в этом изобретении, могут предусматривать интерполяцию одного или более участков первого кадра аудио, где каждый из участков может представлять разложенные версии коэффициентов 11 HOA.
[217] Пространственно-временная интерполяция может обеспечивать ряд преимуществ. Во-первых, сигналы 49 nFG могут не быть непрерывными от кадра к кадру вследствие поблочного характера осуществления SVD или другого LIT. Другими словами, при условии, что блок 30 LIT применяет SVD на основе кадров, определенные нарушения непрерывности могут существовать в результирующих преобразованных коэффициентах HOA как свидетельство, например, неупорядоченного характер матрицы 33 US[k] и матрицы 35 V[k]. Благодаря осуществлению этой интерполяции, нарушение непрерывности может снижаться при условии, что интерполяция может иметь сглаживающее действие, которое потенциально снижает любые артефакты, вносимые вследствие границ кадра (или, другими словами, сегментирования коэффициентов 11 HOA на кадры). Благодаря использованию векторов 51k переднего плана V[k] для осуществления этой интерполяции и затем генерации интерполированных сигналы 49’ nFG на основании интерполированных векторов 51k переднего плана V[k] из восстановленных переупорядоченных коэффициентов HOA, можно сглаживать, по меньшей мере, некоторые эффекты, обусловленные покадровой операцией, а также переупорядочением сигналов 49 nFG.
[218] В ходе эксплуатации, блок 50 пространственно-временной интерполяции может интерполировать один или более подкадров первого кадра аудио из первого разложения, например, векторов 51k переднего плана V[k], части первого множества коэффициентов 11 HOA, включенных в первый кадр, и второго разложения, например, векторов переднего плана V[k] 51k-1, части второго множества коэффициентов 11 HOA, включенных во второй кадр для генерации разложенных интерполированных коэффициентов сферических гармоник для одного или более подкадров.
[219] В некоторых примерах, первое разложение содержит первые векторы 51k переднего плана V[k], представляющие правые сингулярные векторы части коэффициентов 11 HOA. Аналогично, в некоторых примерах, второе разложение содержит вторые векторы 51k переднего плана V[k], представляющие правые сингулярные векторы части коэффициентов 11 HOA.
[220] Другими словами, 3D аудио на основе сферических гармоник может быть параметрическим представление 3D поля давления в отношении ортогональных базисных функций на сфере. Чем выше порядок N представления, тем потенциально выше пространственное разрешение, и, часто, тем больше количество коэффициентов сферических гармоник (SH) (для всего (N+1)2 коэффициентов). Для многих применений, может потребоваться, чтобы сжатие полосы коэффициентов позволяло эффективно передавать и сохранять коэффициенты. Эти методы, предусмотренные в этом изобретении, могут обеспечивать процесс снижения размерности на кадровой основе с использованием разложения на сингулярные значения (SVD). Анализ SVD может разлагать каждый кадр коэффициентов на три матрицы U, S и V. В некоторых примерах, методы могут обрабатывать некоторые из векторов в матрице US[k] как компоненты переднего плана лежащего в основе звукового поля. Однако, при такой обработке, эти векторы (в матрице U S[k]) являются разрывными от кадра к кадру, хотя они представляют один и тот же характерный аудиокомпонент. Эти нарушения непрерывности могут приводить к значительным артефактам, когда компоненты поступают через преобразующие аудиокодеры.
[221] Методы, описанные в этом изобретении, позволяют справиться с этим нарушением непрерывности. Таким образом, методы могут основываться на том наблюдении, что матрицу V можно интерпретировать как ортогональные пространственные оси в области сферических гармоник. Матрица U[k] может представлять проекцию данных сферических гармоник (HOA) в отношении этих базисных функций, где нарушение непрерывности может приписываться ортогональной пространственной оси (V[k]), которые изменяют каждый кадр, и, таким образом, сами являются разрывными. В этом состоит отличие от аналогичного разложения, например, преобразования Фурье, где базисные функции, в некоторых примерах, постоянны от кадра к кадру. В этом отношении, SVD можно рассматривать как алгоритм преследования совпадения. Методы, описанные в этом изобретении, могут предусматривать, что блок 50 пространственно-временной интерполяции поддерживает непрерывность между базисными функциями (V[k]) от кадра к кадру - путем интерполяции между ними.
[222] Как упомянуто выше, интерполяцию можно осуществлять в отношении выборок. Этот случай обобщен в вышеприведенном описании, когда подкадры содержат единичный набор выборок. В обоих случаях интерполяции по выборкам и по подкадрам, операция интерполяции может принимать форму следующего уравнения:
В этом уравнении, интерполяцию можно осуществлять в отношении единичного V-вектора из единичного V-вектора , который в одном варианте осуществления может представлять V-векторы из соседних кадров k и k-1. В вышеприведенном уравнении, l, представляет разрешение, с которым осуществляется интерполяция, где l может указывать целочисленную выборк, у и l=1, …, T (где T - длина выборок, по которым осуществляется интерполяция, и по которым требуются выходные интерполированные векторы, , и также указывает, что выход этого процесса создает l из этих векторов). Альтернативно, l может указывают подкадры, состоящие из множественных выборок. Когда, например, кадр делится на четыре подкадра, l может содержать значения 1, 2, 3 и 4, для каждого из подкадров. Значение l может сигнализироваться как поле под названием “CodedSpatialInterpolationTime” посредством битового потока, благодаря чему, операция интерполяции может повторяться на декодере. может содержать значения весовых коэффициентов интерполяции. Когда интерполяция является линейной, может изменяться линейно и монотонно между 0 и 1, как функция l. В других случаях, может изменяться между 0 и 1 нелинейно, но монотонно (например, четвертьпериод приподнятого косинуса) как функция l. Функция, , может индексироваться между несколькими разными возможностями функций и сигнализироваться в битовом потоке как поле под названием “SpatialInterpolationMethod”, таким образом, что идентичная операция интерполяции может повторяться декодером. Когда имеет значение, близкое к 0, выход, может иметь высокий вес или определяться . Тогда как, когда имеет значение, близкое к 1, это гарантирует, что выход, , имеет высокий вес или определяется .
[223] Блок 46 приведения коэффициентов может представлять блок, выполненный с возможностью осуществления приведение коэффициентов в отношении оставшихся векторов 53 переднего плана V[k] на основании информации 43 фонового канала для вывода приведенные векторы 55 переднего плана V[k] на блок 52 квантования. Приведенные векторы 55 переднего плана V[k] могут иметь размеры D: [(N+1)2 - (NBG+1)2-nBGa] x nFG.
[224] Блок 46 приведения коэффициентов может, в этом отношении, представлять блок, выполненный с возможностью снижения количества коэффициентов оставшихся векторов 53 переднего плана V[k]. Другими словами, блок 46 приведения коэффициентов может представлять блок, выполненный с возможностью исключения коэффициентов векторов переднего плана V[k] (которые образуют оставшиеся векторы 53 переднего плана V[k]), имеющих мало или не имеющих информации направленности. Как описано выше, в некоторых примерах, коэффициенты характерных или, другими словами, векторов переднего плана V[k], соответствующие базисным функциям первого и нулевого порядка (который может быть обозначен как NBG) обеспечивают мало информации направленности и, таким образом, могут быть удалены из векторов переднего плана V (посредством процесса, который может именоваться “приведение коэффициентов”). В этом примере, повышенная гибкость может обеспечиваться не только для идентификации этих коэффициентов, которые соответствуют NBG, но и для идентификации дополнительных каналов HOA (которые могут обозначаться переменной TotalOfAddAmbHOAChan) из набора [(NBG+1)2+1, (N+1)2]. Блок 44 анализа звукового поля может анализировать коэффициенты 11 HOA для определения BGTOT, который может идентифицировать не только (NBG+1)2, но и TotalOfAddAmbHOAChan, которые могут совместно именоваться информацией 43 фонового канала. Блок 46 приведения коэффициентов затем может удалять коэффициенты, соответствующие (NBG+1)2, и TotalOfAddAmbHOAChan из оставшихся векторов 53 переднего плана V[k] для генерации матрицы 55 V[k] меньшего размера размером ((N+1)2 - (BGTOT) x nFG, которые также могут именоваться приведенными векторами 55 переднего плана V[k].
[225] Блок 52 квантования может представлять блок, выполненный с возможностью осуществления любой формы квантования для сжатия приведенных векторов 55 переднего плана V[k] для генерации кодированных векторов 57 переднего плана V[k], вывода этих кодированных векторов 57 переднего плана V[k] на блок 42 генерации битового потока. В ходе эксплуатации, блок 52 квантования может представлять блок, выполненный с возможностью сжатия пространственной компоненты звукового поля, т.е., одного или более из приведенных векторов 55 переднего плана V[k] в этом примере. Для примера, предполагается, что приведенные векторы 55 переднего плана V[k] включают в себя два вектора-строки, имеющие, в результате приведения коэффициентов, менее 25 элементов каждый (что предполагает представление HOA звукового поля четвертого порядка). Хотя описание приведено в отношении двух векторов-строк, любое количество векторов может быть включено в приведенные векторы 55 переднего плана V[k] вплоть до (n+1)2, где n обозначает порядок представления HOA звукового поля. Кроме того, хотя он описан ниже как осуществляющий скалярное и/или энтропийное квантование, блок 52 квантования может осуществлять любую форму квантования, которая приводит к сжатию приведенных векторов 55 переднего плана V[k].
[226] Блок 52 квантования может принимать приведенные векторы 55 переднего плана V[k] и осуществлять схему сжатия для генерации кодированных векторов 57 переднего плана V[k]. Эта схема сжатия могут предусматривать, в общем случае, любую допустимую схему сжатия для сжатия элементов вектора или данных, и не подлежат ограничению примером, более детально описанным ниже. Блок 52 квантования может осуществлять, в порядке примера, схему сжатия, которая включает в себя один или более из преобразования представлений с плавающей запятой каждого элемента приведенных векторов 55 переднего плана V[k] в целочисленные представления каждого элемента приведенных векторов 55 переднего плана V[k], однородного квантования целочисленных представлений приведенных векторов 55 переднего плана V[k] и категоризации и кодирования квантованных целочисленных представлений оставшихся векторов 55 переднего плана V[k].
[227] В некоторых примерах, различные один или более процессов этой схемы сжатия могут динамически управляться параметрами для достижения или примерного достижения, в порядке одного примера, целевой битовой скорости для результирующего битового потока 21. При условии, что каждый из приведенных векторов 55 переднего плана V[k] ортонормальны друг другу, каждый из приведенных векторов 55 переднего плана V[k] можно кодировать независимо. В некоторых примерах, как более подробно описано ниже, каждый элемент каждого из приведенных векторов 55 переднего плана V[k] можно кодировать с использованием одного и того же режима кодирования (заданного различными подрежимами).
[228] В любом случае, как упомянуто выше, эта схема кодирования может сначала использовать преобразование представлений с плавающей запятой каждого элемента (которое, в некоторых примерах, является 32-битовым числом с плавающей запятой) каждого из приведенных векторов 55 переднего плана V[k] в 16-битовое целочисленное представление. Блок 52 квантования может осуществлять это преобразование плавающей запятой в целое число путем умножения каждого элемента данного одного из приведенных векторов 55 переднего плана V[k] на 215, которое, в некоторых примерах, осуществляется посредством сдвига вправо на 15.
[229] Блок 52 квантования затем может осуществлять однородное квантование в отношении всех элементов данного одного из приведенных векторов 55 переднего плана V[k]. Блок 52 квантования может идентифицировать размер шага квантования на основании значения, которое может быть обозначено как параметр nbits. Блок 52 квантования может динамически определять этот параметр nbits на основании целевой битовой скорости 41. Блок 52 квантования может определять размер шага квантования как функцию этого параметра nbits. В порядке одного примера, блок 52 квантования может определять размер шага квантования (обозначенный как “дельта” или “Δ” в этом изобретении) равным 216-nbits. В этом примере, если nbits равно шести, дельта равна 210, и существует 26 уровней квантования. В этом отношении, для элемента v вектора, квантованный элемент vq вектора равен [v/Δ], и -2nbits-1<vq<2nbits-1.
[230] Блок 52 квантования затем может осуществлять категоризацию и остаточное кодирование квантованных элементов вектора. В порядке одного примера, блок 52 квантования может, для данного квантованного элемента vq вектора, идентифицировать категорию (определяя идентификатор категории cid), которой соответствует этот элемент, с использованием следующего уравнения:
Блок 52 квантования затем может кодировать по Хаффману этот индекс категории cid, идентифицируя также знаковый бит, который указывает, имеет ли vq положительное значение или отрицательное значение. Блок 52 квантования затем может идентифицировать остаток в этой категории. В порядке одного примера, блок 52 квантования может определять этот остаток в соответствии со следующим уравнением:
Блок 52 квантования затем может блочно кодировать этот остаток cid-1 битами.
[231] Следующий пример демонстрирует упрощенный пример этого процесса категоризации и остаточного кодирования. Сначала предположим, что nbits равно шести, так что vq [-31,31]. Затем предположим следующее:
Также предположим следующее:
Таким образом, для vq=[6, -17, 0, 0, 3], можно определить следующее:
» cid=3,5,0,0,2
» знак=1,0,x,x,1
» остаток=2,1,x,x,1
» биты для 6=‘0010’+’1’+’10’
» биты для -17=‘00111’+’0’+‘0001’
» биты для 0=‘0’
» биты для 0=‘0’
» биты для 3=‘000’+‘1’+‘1’
» Всего битов=7+10+1+1+5=24
» Среднее количество битов=24/5=4.8
[232] Хотя это не показано в вышеприведенном упрощенном примере, блок 52 квантования может выбирать разные кодовые книги Хаффмана для разных значений nbits при кодировании cid. В некоторых примерах, блок 52 квантования может обеспечивать разные таблицы хаффмановского кодирования для значений nbits 6, …, 15. Кроме того, блок 52 квантования может включать в себя пять разных кодовых книг Хаффмана для каждого из разных значений nbits в пределах 6, …, 15 для всего 50 кодовых книг Хаффмана. В этом отношении, блок 52 квантования может включать в себя множество разных кодовых книг Хаффмана для размещения кодирования cid в нескольких разных статистических контекстах.
[233] Для иллюстрации, блок 52 квантования может, для каждого из значений nbits, включать в себя первую кодовую книгу Хаффмана для кодирования элементов вектора с первого по четвертый, вторую кодовую книгу Хаффмана для кодирования элементов вектора с пятого по девятый, третью кодовую книгу Хаффмана для кодирования элементов вектора с девятого и выше. Эти первые три кодовые книги Хаффмана можно использовать, когда один из приведенных векторов 55 переднего плана V[k] подлежащий сжатию не предсказывается из последующего во времени соответствующего одного из приведенных векторов 55 переднего плана V[k] и не представляет пространственную информацию синтетического аудиообъекта (заданного, например, первоначально аудиообъектом, подвергнутым импульсно-кодовой модуляции (ИКМ)). Блок 52 квантования может дополнительно включать в себя, для каждого из значений nbits, четвертую кодовую книгу Хаффмана для кодирования одного из приведенных векторов 55 переднего плана V[k], когда этот один из приведенных векторов 55 переднего плана V[k] предсказывается из последующего во времени соответствующего одного из приведенных векторов 55 переднего плана V[k]. Блок 52 квантования также может включать в себя, для каждого из значений nbits, пятую кодовую книгу Хаффмана для кодирования одного из приведенных векторов 55 переднего плана V[k], когда этот один из приведенных векторов 55 переднего плана V[k] представляет синтетический аудиообъект. Различные кодовые книги Хаффмана можно разрабатывать для каждого из этих разных статистических контекстов, т.е. не предсказанного и не синтетического контекста, предсказанного контекста и синтетического контекста в этом примере.
[234] Нижеследующая таблица демонстрирует выбор таблицы Хаффмана и биты, подлежащие указанию в битовом потоке, чтобы блок снятия сжатия мог выбирать надлежащую таблицу Хаффмана:
В вышеприведенной таблице, режим предсказания (“режим предсказания”) указывает, осуществлялось ли предсказание для текущего вектора, тогда как таблица Хаффмана (“информация HT”) указывает дополнительную информацию кодовой книги (или таблицы) Хаффмана, используемую для выбора одной из таблиц Хаффмана с первой по пятую.
[235] Ннижеследующая таблица дополнительно демонстрирует этот процесс выбора таблицы Хаффмана в различных статистических контекстах или сценариях.
В вышеприведенной таблице, столбец “запись” указывает контекст кодирования, когда вектор представляет аудиообъект, который был записан, тогда как столбец “синтетический” указывает контекст кодирования, когда вектор представляет синтетический аудиообъект. Строка “без предсказания” указывает контекст кодирования, когда предсказание не осуществляется в отношении элементов вектора, тогда как строка “с предсказанием” указывает контекст кодирования, когда предсказание осуществляется в отношении элементов вектора. Как показано в этой таблице, блок 52 квантования выбирает HT{1, 2, 3}, когда вектор представляет записанный аудиообъект, и предсказание не осуществляется в отношении элементов вектора. Блок 52 квантования выбирает HT5, когда аудиообъект представляет синтетический аудиообъект, и предсказание не осуществляется в отношении элементов вектора. Блок 52 квантования выбирает HT4, когда вектор представляет записанный аудиообъект, и предсказание осуществляется в отношении элементов вектора. Блок 52 квантования выбирает HT5, когда аудиообъект представляет синтетический аудиообъект, и предсказание осуществляется в отношении элементов вектора.
[236] В этом отношении, блок 52 квантования может осуществлять вышеупомянутое скалярное квантование и/или хаффмановское кодирование для сжатия приведенных векторов 55 переднего плана V[k], выводя кодированные векторы 57 переднего плана V[k], которые могут именоваться информацией 57 побочного канала. Эта информация 57 побочного канала может включать в себя элементы синтаксиса, используемые для кодирования оставшихся векторов 55 переднего плана V[k]. Блок 52 квантования может выводить информацию 57 побочного канала аналогично примеру, показанному в одной из фиг. 10B и 10C.
[237] Как упомянуто выше, блок 52 квантования может генерировать элементы синтаксиса для информации 57 побочного канала. например, блок 52 квантования может указывать элемент синтаксиса в заголовке единицы доступа (который может включать в себя один или более кадров), обозначающий, какой из множества режимов конфигурации выбран. Хотя он описан как указанный для каждой единицы доступа, блок 52 квантования может указывать этот элемент синтаксиса но покадровой основе или любой другой периодической основе или непериодической основе (например, один раз для всего битового потока). В любом случае, этот элемент синтаксиса может содержать два бита, указывающие, какой из четырех режимов конфигурации был выбран для указания ненулевого набора коэффициентов приведенных векторов 55 переднего плана V[k] для представления аспектов направленности этого характерного компонента. Элемент синтаксиса может быть обозначен как “codedVVecLength”. Таким образом, блок 52 квантования может сигнализировать или иначе указывать в битовом потоке, какой из четырех режимов конфигурации использовался для указания кодированных векторов 57 переднего плана V[k] в битовом потоке. Хотя они описаны в отношении четырех режимов конфигурации, методы не подлежат ограничению четырьмя режимами конфигурации, но предусматривают любое количество режимов конфигурации, включающее в себя единичный режим конфигурации илиa множество режимов конфигурации. Блок 53 скалярного/энтропийного квантования также может указывать флаг 63 как другой элемент синтаксиса в информации 57 побочного канала.
[238] Блок 40 психоакустического аудиокодера, включенный в устройство 20 аудиокодирования, может представлять множественные экземпляры психоакустического аудиокодер, каждый из которых используется для кодирования отдельного аудиообъекта или канала HOA каждого из коэффициентов 47’ HOA окружения с компенсацией энергии и интерполированных сигналов 49’ nFG для генерации кодированных коэффициентов 59 HOA окружения и кодированных сигналов 61 nFG. Блок 40 психоакустического аудиокодера может выводить кодированные коэффициенты 59 HOA окружения и кодированные сигналы 61 nFG на блок 42 генерации битового потока.
[239] В ряде случаев, этот блок 40 психоакустического аудиокодера может представлять один или более экземпляров блока кодирования усовершенствованного аудиокодирования (AAC). Блок 40 психоакустического аудиокодера может кодировать каждый столбец или каждую строку коэффициентов 47’ HOA окружения с компенсацией энергии и интерполированных сигналов 49’ nFG. Часто, блок 40 психоакустического аудиокодера может вызывать экземпляр блока кодирования AAC для каждой из комбинаций порядков/подпорядков, оставшихся в коэффициентах 47’ HOA окружения с компенсацией энергии и интерполированных сигналов 49’ nFG. Дополнительную информацию о том, как можно кодировать коэффициенты 31 сферических гармоник фона с использованием блока кодирования AAC можно найти в материалах съезда Eric Hellerud, et al., под названием “Encoding Higher Order Ambisonics with AAC”, представленных на 124-ом съезде, 17-20 мая 2008 г., и доступных по адресу: http://ro.uow.edu.au/cgi/viewcontent.cgi?article=8025&context=engpapers. В ряде случаев, блок 14 аудиокодирования может аудиокодировать коэффициенты 47’ HOA окружения с компенсацией энергии с использованием более низкой целевой битовой скорости, чем используемые для кодирования интерполированных сигналов 49’ nFG, таким образом, потенциально сжимая коэффициенты 47’ HOA окружения с компенсацией энергии больше, чем интерполированные сигналы 49’ nFG.
[240] Блок 42 генерации битового потока, включенный в устройство 20 аудиокодирования представляет блок, который форматирует данные для согласования с известным форматом (который может означать формат, известный устройству декодирования), таким образом, генерируя битовый поток 21 на векторной основе. Блок 42 генерации битового потока в некоторых примерах может представлять мультиплексор, который может принимать кодированные векторы 57 переднего плана V[k], кодированные коэффициенты 59 HOA окружения, кодированные сигналы 61 nFG и информацию 43 фонового канала. Затем блок 42 генерации битового потока может генерировать битовый поток 21 на основании кодированных векторов 57 переднего плана V[k], кодированных коэффициентов 59 HOA окружения, кодированных сигналов 61 nFG и информации 43 фонового канала. Битовый поток 21 может включать в себя первичный или главный битовый поток и один или более битовых потоков побочных каналов.
[241] Хотя это не показано в примере, приведенном на фиг. 4, устройство 20 аудиокодирования также может включать в себя блок вывода битового потока, который переключает битовый поток, выводимый из устройства 20 аудиокодирования (например, между битовым потоком 21 на основе направления и битовым потоком 21 на векторной основе) на основании того, подлежит ли текущий кадр кодированию с использованием синтеза на основе направления или синтеза на векторной основе. Этот блок вывода битового потока может осуществлять это переключение на основании элемента синтаксиса, выводимого блоком 26 анализа контента, указывающего, осуществлялся ли синтез на основе направления (в результате обнаружения, что коэффициенты 11 HOA сгенерированы из синтетического аудиообъекта) или осуществлялся ли синтез на векторной основе (в результате обнаружения, что коэффициенты HOA были записаны). Блок вывода битового потока может указывать правильный синтаксис заголовка для указания этого переключения или текущего кодирования, используемого для текущего кадра совместно с соответствующим одним из битовых потоков 21.
[242] В ряде случаев, различные аспекты методов также могут предусматривать, что устройство 20 аудиокодирования определяет, генерируются ли коэффициенты 11 HOA из синтетического аудиообъекта. Эти аспекты методов могут предусматривать, что устройство 20 аудиокодирования выполнено с возможностью получения указания, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[243] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта.
[244] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью исключения первого вектора из матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, представляющих звуковое поле, для получения приведенной матрицы кадрированных коэффициентов сферических гармоник.
[245] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью исключения первого вектора из матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, представляющих звуковое поле, для получения приведенной матрицы кадрированных коэффициентов сферических гармоник, и предсказания вектора приведенной матрицы кадрированных коэффициентов сферических гармоник на основании оставшихся векторов приведенной матрицы кадрированных коэффициентов сферических гармоник.
[246] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью исключения первого вектора из матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, представляющих звуковое поле, для получения приведенной матрицы кадрированных коэффициентов сферических гармоник, и предсказания вектора приведенной матрицы кадрированных коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов приведенной матрицы кадрированных коэффициентов сферических гармоник.
[247] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью предсказания вектора матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник.
[248] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью предсказания вектора матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, и вычисления ошибки на основании предсказанного вектора.
[249] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью предсказания вектора матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, и вычисления ошибки на основании предсказанного вектора и соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник.
[250] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью предсказания вектора матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, и вычисления ошибки как суммы абсолютных значений разности предсказанного вектора и соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник.
[251] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью предсказания вектора матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, вычисления ошибки на основании предсказанного вектора и соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник, вычисления отношения на основании энергии соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник и ошибки, и сравнения отношения с порогом для определения, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[252] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью задания указания в битовом потоке 21, где хранятся сжатая версия коэффициентов сферических гармоник.
[253] В ряде случаев, различные методы могут предусматривать, что устройство 20 аудиокодирования осуществляет преобразование в отношении коэффициентов 11 HOA. В этих и других случаях, устройство 20 аудиокодирования может быть выполнено с возможностью получения одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов 11 сферических гармоник.
[254] В этих и других случаях, устройство 20 аудиокодирования, в котором преобразование содержит разложение на сингулярные значения, которое генерирует матрицу U, представляющую левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицу S, представляющую сингулярные значения из множества коэффициентов сферических гармоник, и матрицу V, представляющую правые сингулярные векторы из множества коэффициентов 11 сферических гармоник.
[255] В этих и других случаях, устройство 20 аудиокодирования, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S, и при этом матрица U и матрица S генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник.
[256] В этих и других случаях, устройство 20 аудиокодирования, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, и при этом матрица U и матрица S и матрица V генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов 11 сферических гармоник.
[257] В этих и других случаях, устройство 20 аудиокодирования, в котором один или более первых векторов содержат один или более векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом устройство 20 аудиокодирования дополнительно выполнено с возможностью получения значения D, указывающего количество векторов, подлежащих извлечению из битового потока, для формирования одного или более векторов UDIST*SDIST и одного или более векторов VTDIST.
[258] В этих и других случаях, устройство 20 аудиокодирования, в котором один или более первых векторов содержат один или более векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом устройство 20 аудиокодирования дополнительно выполнено с возможностью получения значения D на основе кадров аудио, которое указывает количество векторов, подлежащих извлечению из битового потока, для формирования одного или более векторов UDIST*SDIST и одного или более векторов VTDIST.
[259] В этих и других случаях, устройство 20 аудиокодирования, в котором преобразование содержит анализ главных компонентов для идентификации характерных компонентов звукового поля и фоновых компонентов звукового поля.
[260] Различные аспекты методов, описанных в этом изобретении, могут предусматривать устройство 20 аудиокодирования, выполненное с возможностью компенсации ошибки квантования.
[261] В ряде случаев, устройство 20 аудиокодирования может быть выполнено с возможностью квантования одного или более первых векторов, представляющих один или более компонентов звукового поля, и компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля.
[262] В этих и других случаях, устройство аудиокодирования выполнено с возможностью квантования одного или более векторов из транспонированной матрицы V, генерируемой, по меньшей мере, частично путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[263] В этих и других случаях, устройство аудиокодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и выполнено с возможностью квантования одного или более векторов из транспонированной матрицы V.
[264] В этих и других случаях, устройство аудиокодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, выполнено с возможностью квантования одного или более векторов из транспонированной матрицы V, и выполнено с возможностью компенсации ошибки, вносимой вследствие квантования в один или более векторов U*S, вычисленные путем умножения одного или более векторов U матрицы U на один или более векторов S матрицы S.
[265] В этих и других случаях, устройство аудиокодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов UDIST матрицы U, каждый из которых соответствует характерному компоненту звукового поля, определения одного или более векторов SDIST матрицы S, каждый из которых соответствует одному и тому же характерному компоненту звукового поля, и определения одного или более векторов VTDIST транспонированной матрицы V, каждый из которых соответствует одному и тому же характерному компоненту звукового поля, выполнено с возможностью квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и выполнено с возможностью компенсации ошибки, вносимой вследствие квантования в один или более векторов UDIST*SDIST, вычисленных путем умножения одного или более векторов UDIST матрицы U на один или более векторов SDIST матрицы S для генерации одного или более векторов UDIST*SDIST с компенсацией ошибки.
[266] В этих и других случаях, устройство аудиокодирования выполнено с возможностью определения характерных коэффициентов сферических гармоник на основании одного или более векторов UDIST, одного или более векторов SDIST и одного или более векторов VTDIST, и осуществления псевдообращения в отношении векторов VTQ_DIST для разделения характерных коэффициентов сферических гармоник на один или более векторов VTQ_DIST и, таким образом, генерации одного или более векторов UC_DIST*SC_DIST с компенсацией ошибки, которые компенсируют, по меньшей мере, частично ошибку, вносимую посредством квантования векторов VTDIST.
[267] В этих и других случаях, устройство аудиокодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов UBG матрицы U, которые описывают один или более фоновых компонентов звукового поля, и одного или более векторов UDIST матрицы U, которые описывают один или более характерных компонентов звукового поля, определения одного или более векторов SBG матрицы S, которые описывают один или более фоновых компонентов звукового поля, и одного или более векторов SDIST матрицы S, которые описывают один или более характерных компонентов звукового поля, и определения одного или более векторов VTDIST и один или более векторов VTBG транспонированной матрицы V, причем векторы VTDIST описывают один или более характерных компонентов звукового поля, и VTBG описывают один или более фоновых компонентов звукового поля, выполнено с возможностью квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и выполнено с возможностью компенсации ошибки, вносимой вследствие квантования в коэффициенты сферических гармоник фона, сформированные путем умножения одного или более векторов UBG на один или более векторов SBG и затем на один или более векторов VTBG для генерации коэффициентов сферических гармоник фона с компенсации ошибки.
[268] В этих и других случаях, устройство аудиокодирования выполнено с возможностью определения ошибки на основании векторов VTDIST и одного или более векторов UDIST*SDIST, сформированных путем умножения векторов UDIST на векторы SDIST, и прибавления определенной ошибки к коэффициентам сферических гармоник фона для генерации коэффициентов сферических гармоник фона с компенсации ошибки.
[269] В этих и других случаях, устройство аудиокодирования выполнено с возможностью компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля для генерации одного или более вторых векторов с компенсацией ошибки, и дополнительно выполнено с возможностью генерации битового потока для включения одного или более вторых векторов с компенсацией ошибки и квантованных одного или более первых векторов.
[270] В этих и других случаях, устройство аудиокодирования выполнено с возможностью компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля для генерации одного или более вторых векторов с компенсацией ошибки, и дополнительно выполнено с возможностью аудиокодирования одного или более вторых векторов с компенсацией ошибки, и генерации битового потока для включения аудиокодированных одного или более вторых векторов с компенсацией ошибки и квантованных одного или более первых векторов.
[271] Различные аспекты методов могут дополнительно предусматривать, что устройство 20 аудиокодирования генерирует приведенные коэффициенты сферических гармоник или их разложения. В ряде случаев, устройство 20 аудиокодирования может быть выполнено с возможностью осуществления, на основании целевой битовой скорости, снижения порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений, причем множество коэффициентов сферических гармоник представляет звуковое поле.
[272] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью, до осуществления снижения порядка, осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник для идентификации один или более первых векторов, которые описывают характерные компоненты звукового поля и один или более вторых векторов, которые идентифицируют фоновые компоненты звукового поля, и выполнено с возможностью осуществления снижения порядка в отношении одного или более первых векторов, одного или более вторых векторов или одного или более первых векторов и одного или более вторых векторов.
[273] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью осуществления анализа контента в отношении множества коэффициентов сферических гармоник или их разложений, и выполнено с возможностью осуществления, на основании целевой битовой скорости и анализа контента, снижения порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[274] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью осуществления пространственного анализа в отношении множества коэффициентов сферических гармоник или их разложений.
[275] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью осуществления анализа диффузии в отношении множества коэффициентов сферических гармоник или их разложений.
[276] В этих и других случаях, устройство 20 аудиокодирования является одним или более процессорами, выполненными с возможностью осуществления пространственного анализа и анализа диффузии в отношении множества коэффициентов сферических гармоник или их разложений.
[277] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью указания одного или более порядков и/или одного или более подпорядков сферических базисных функций, которым соответствуют те из приведенных коэффициентов сферических гармоник или их приведенных разложений в битовом потоке, которые включает в себя приведенные коэффициенты сферических гармоник или их приведенных разложений.
[278] В этих и других случаях, приведенные коэффициенты сферических гармоник или их приведенных разложений имеют меньше значений, чем множество коэффициентов сферических гармоник или их разложений.
[279] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью удаления тех из множества коэффициентов сферических гармоник или векторов их разложений, имеющих указанный порядок и/или подпорядок, для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[280] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью обнуления тех из множества коэффициентов сферических гармоник или тех векторов их разложения, которые имеют указанный порядок и/или подпорядок, для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[281] Различные аспекты методов также могут предусматривать, что устройство 20 аудиокодирования выполнено с возможностью представления характерные компоненты звукового поля. В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью получения первого ненулевого набора коэффициентов вектора, подлежащих использованию для представления характерного компонента звукового поля, причем вектор разлагается из множества коэффициентов сферических гармоник, описывающих звуковое поле.
[282] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения первого ненулевого набора коэффициентов вектора для включения всех коэффициентов.
[283] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения первого ненулевого набора коэффициентов как тех из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[284] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения первого ненулевого набора коэффициентов для включения тех из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник, и исключения, по меньшей мере, одного из коэффициентов, соответствующих порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[285] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения первого ненулевого набора коэффициентов для включения всех коэффициентов за исключением, по меньшей мере, одного из коэффициентов, соответствующих порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[286] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью указания первого ненулевого набора коэффициентов вектора в информации побочного канала.
[287] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью указания первого ненулевого набора коэффициентов вектора в информации побочного канала без аудиокодирования первого ненулевого набора коэффициентов вектора.
[288] В этих и других случаях, вектор содержит вектор, разложенный из множества коэффициентов сферических гармоник с использованием векторного синтеза.
[289] В этих и других случаях, векторный синтез содержит разложение на сингулярные значения.
[290] В этих и других случаях, вектор содержит вектор V, разложенный из множества коэффициентов сферических гармоник с использованием разложения на сингулярные значения.
[291] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью выбора одного из множества режимов конфигурации, позволяющих указывать ненулевой набор коэффициентов вектора, и указывать ненулевой набор коэффициентов вектора на основании выбранного одного из множества режимов конфигурации.
[292] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты.
[293] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[294] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник, и не включает в себя, по меньшей мере, один из коэффициентов, соответствующих порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник,
[295] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты за исключением, по меньшей мере, одного из коэффициентов.
[296] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью указания выбранного одного из множества режимов конфигурации в битовом потоке.
[297] Различные аспекты методов, описанных в этом изобретении, также могут предусматривать, что устройство 20 аудиокодирования выполнено с возможностью представления этого характерного компонента звукового поля тем или иным образом. В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью получения первого ненулевого набора коэффициентов вектора, которые представляют характерный компонент звукового поля, причем вектор разложен из множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[298] В этих и других случаях, первый ненулевой набор коэффициентов включает в себя все коэффициенты вектора.
[299] В этих и других случаях, первый ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[300] В этих и других случаях, первый ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник, и не включает в себя, по меньшей мере, один из коэффициентов, соответствующих порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[301] В этих и других случаях, первый ненулевой набор коэффициентов включает в себя все коэффициенты за исключением, по меньшей мере, одного из коэффициентов, идентифицированных как не имеющих достаточной информации направленности.
[302] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью извлечения первого ненулевого набора коэффициентов как первой части вектора.
[303] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью извлечения первого ненулевого набора вектора из информации побочного канала, и получения реконструированной версии из множества коэффициентов сферических гармоник на основании первого ненулевого набора коэффициентов вектора.
[304] В этих и других случаях, вектор содержит вектор, разложенный из множества коэффициентов сферических гармоник с использованием векторного синтеза.
[305] В этих и других случаях, векторный синтез содержит разложение на сингулярные значения.
[306] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения одного из множества режимов конфигурации, позволяющего извлекать ненулевой набор коэффициентов вектора в соответствии с одним из множества режимов конфигурации, и извлечения ненулевого набора коэффициентов вектора на основании полученного одного из множества режимов конфигурации.
[307] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты.
[308] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[309] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник, и не включает в себя, по меньшей мере, один из коэффициентов, соответствующих порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник,
[310] В этих и других случаях, один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты за исключением, по меньшей мере, одного из коэффициентов.
[311] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения одного из множества режимов конфигурации на основании значения, сигнализируемого в битовом потоке.
[312] Различные аспекты методов также могут, в ряде случаев, предусматривать, что устройство 20 аудиокодирования идентифицирует один или более характерных аудиообъектов (или, другими словами, преобладающих аудиообъектов). В ряде случаев, устройство 20 аудиокодирования может быть выполнено с возможностью идентификации одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник (SHC), связанных с аудиообъектами, на основании направленности, определенной для одного или более из аудиообъектов.
[313] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения направленности одного или более аудиообъектов на основании коэффициентов сферических гармоник, связанных с аудиообъектами.
[314] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и представлять множество коэффициентов сферических гармоник как функцию, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V, причем устройство 20 аудиокодирования выполнено с возможностью определения соответствующей направленности одного или более аудиообъектов на основании, по меньшей мере, частично, матрицы V.
[315] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью преупорядочения одного или более векторов матрицы V таким образом, что векторы, имеющие более высокий показатель направленности, располагаются над векторами, имеющими более низкий показатель направленности, в переупорядоченной матрице V.
[316] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения, что векторы, имеющие более высокий показатель направленности, включают в себя больше информации направленности, чем векторы, имеющие более низкий показатель направленности.
[317] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью умножения матрицы V на матрицу S для генерации матрицы VS, причем матрица VS включает в себя один или более векторов.
[318] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью выбора элементов каждой строки матрицы VS, которые связаны с порядком, большим 14, возведения в квадрат каждого из выбранных элементов для формирования соответствующих квадратов элементов, и, для каждой строки матрицы VS, суммирования квадратов всех элементов для определения показателя направленности для соответствующего вектора.
[319] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью выбора элементов каждой строки матрицы VS, связанных с порядком, большим 14 содержит выбор всех элементов, начиная с 18-го элемента каждой строки матрицы VS и заканчивая 38-ым элементом каждой строки матрицы VS.
[320] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью выбора поднабора векторов матрицы VS для представления характерных аудиообъектов.
В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью выбора четырех векторов матрицы VS, и при этом выбранные четыре вектора имеют четыре наибольших показателя направленности из всех векторов матрицы VS.
[321] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения, что выбранный поднабор векторов представляет характерные аудиообъекты, на основании направленности и энергии каждого вектора.
[322] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью осуществления сравнения энергии между одним или более первых векторов и одним или более вторых векторов, представляющих характерные аудиообъекты, для определения переупорядоченных одного или более первых векторов, причем один или более первых векторов описывают характерные аудиообъекты в первой части аудиоданных, и один или более вторых векторов описывают характерные аудиообъекты во второй части аудиоданных.
[323] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью осуществления кросс-корреляции между одним или более первых векторов и одним или более вторых векторов, представляющих характерные аудиообъекты, для определения переупорядоченных одного или более первых векторов, причем один или более первых векторов описывают характерные аудиообъекты в первой части аудиоданных, и один или более вторых векторов описывают характерные аудиообъекты во второй части аудиоданных.
[324] Различные аспекты методов также могут, в ряде случаев, предусматривать, что устройство 20 аудиокодирования выполнено с возможностью осуществления компенсация энергии в отношении разложений коэффициентов 11 HOA. В этих и других случаях, устройство 20 аудиокодирования может быть выполнено с возможностью осуществления синтеза на векторной основе в отношении множества коэффициентов сферических гармоник для генерации разложенных представлений из множества коэффициентов сферических гармоник, представляющих один или более аудиообъектов и соответствующую информацию направленности, причем коэффициенты сферических гармоник связаны с порядком и описывают звуковое поле, определения отдельной и фоновой информации направленности из информации направленности, снижения порядка информации направленности, связанной с фоновыми аудиообъектами, для генерации преобразованной информации направленности фона, применения компенсации для увеличения значений преобразованной информации направленности для сохранения полной энергии звукового поля.
[325] В этих и других случаях, устройство 20 аудиокодирования может быть выполнено с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник для генерации матрицы U и матрица S, представляющих аудиообъекты, и матрицы V, представляющей информацию направленности, определения характерных векторов-столбцов матрицы V и векторов-столбцов фона матрицы V, снижения порядка векторов-столбцов фона матрицы V для генерации преобразованных векторов-столбцов фона матрицы V, и применения компенсации для увеличения значений преобразованных векторов-столбцов фона матрицы V для сохранения полной энергии звукового поля.
[326] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения количества заметных сингулярных значений матрицы S, причем количество характерных векторов-столбцов матрицы V равно количеству заметных сингулярных значений матрицы S.
[327] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения сниженного порядка для коэффициентов сферических гармоник, и нулевых значений для строк векторов-столбцов фона матрицы V, связанных с порядком, превышающим сниженный порядок.
[328] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью объединения фоновых столбцов матрицы U, фоновых столбцов матрицы S и транспонированных преобразованных фоновых столбцов матрицы V для генерации модифицированных коэффициентов сферических гармоник.
[329] В этих и других случаях, модифицированные коэффициенты сферических гармоник описывают один или более фоновых компонентов звукового поля.
[330] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения первой энергии вектора векторов-столбцов фона матрицы V и второй энергии вектора преобразованных векторов-столбцов фона матрицы V, и применения значения усиления к каждому элементу вектора преобразованных векторов-столбцов фона матрицы V, причем значение усиления содержит отношение первой энергии ко второй энергии.
[331] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения первой среднеквадратической энергии вектора векторов-столбцов фона матрицы V и второй среднеквадратической энергии вектора преобразованных векторов-столбцов фона матрицы V, и применения значения усиления к каждому элементу вектора преобразованных векторов-столбцов фона матрицы V, причем значение усиления содержит отношение первой энергии ко второй энергии.
[332] Различные аспекты методов, описанных в этом изобретении, также могут предусматривать, что устройство 20 аудиокодирования осуществляет интерполяцию в отношении разложенных версий коэффициентов 11 HOA. В ряде случаев, устройство 20 аудиокодирования может быть выполнено с возможностью получения разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, по меньшей мере, частично, путем осуществления интерполяции в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник.
[333] В этих и других случаях, первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы первого множества коэффициентов сферических гармоник.
[334] В этих и других примерах, второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[335] В этих и других случаях, первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы первого множества коэффициентов сферических гармоник, и второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[336] В этих и других случаях, отрезок времени содержит подкадр кадра аудио.
[337] В этих и других случаях, отрезок времени содержит временную выборку кадра аудио.
[338] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью получения интерполированного разложения первого разложения и второго разложения для коэффициента сферической гармоники из первого множества коэффициентов сферических гармоник.
[339] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью получения интерполированных разложений первого разложения для первой части первого множества коэффициентов сферических гармоник, включенных в первый кадр, и второго разложения для второй части второго множества коэффициентов сферических гармоник, включенных во второй кадр, и устройство 20 аудиокодирования дополнительно выполнено с возможностью применения интерполированных разложений к первому временному компоненту первой части первого множества коэффициентов сферических гармоник, включенных в первый кадр для генерации первого искусственного временного компонента первого множества коэффициентов сферических гармоник, и применения соответствующих интерполированных разложений ко второму временному компоненту второй части второго множества коэффициентов сферических гармоник, включенных во второй кадр, для генерации второго искусственного временного компонента второго множества коэффициентов сферических гармоник, включенных.
[340] В этих и других случаях, первый временной компонент генерируется путем осуществления синтеза на векторной основе в отношении первого множества коэффициентов сферических гармоник.
[341] В этих и других случаях, второй временной компонент генерируется путем осуществления синтеза на векторной основе в отношении второго множества коэффициентов сферических гармоник.
[342] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью приема первого искусственного временного компонента и второго искусственного временного компонента, вычисления интерполированных разложений первого разложения для первой части первого множества коэффициентов сферических гармоник и второго разложения для второй части второго множества коэффициентов сферических гармоник, и применения обратных интерполированных разложений к первому искусственному временному компоненту для восстановления первого временного компонента и ко второму искусственному временному компоненту для восстановления второго временного компонента.
[343] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью интерполяции первого пространственного компонента первого множества коэффициентов сферических гармоник и второго пространственного компонента второго множества коэффициентов сферических гармоник.
[344] В этих и других случаях, первый пространственный компонент содержит первую матрицу U, представляющую левые сингулярные векторы первого множества коэффициентов сферических гармоник.
[345] В этих и других случаях, второй пространственный компонент содержит вторую матрицу U, представляющую левые сингулярные векторы второго множества коэффициентов сферических гармоник.
[346] В этих и других случаях, первый пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для первого множества коэффициентов сферических гармоник, и второй пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для второго множества коэффициентов сферических гармоник.
[347] В этих и других случаях, первый пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для первого множества коэффициентов сферических гармоник, и второй пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для второго множества коэффициентов сферических гармоник, и устройство 20 аудиокодирования выполнено с возможностью интерполяции последних N элементов первого пространственного компонента и первых N элементов второго пространственного компонента.
[348] В этих и других случаях, второе множество коэффициентов сферических гармоник следует за первым множеством коэффициентов сферических гармоник во временной области.
[349] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью разложения первого множества коэффициентов сферических гармоник для генерации первого разложения первого множества коэффициентов сферических гармоник.
[350] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью разложения второго множества коэффициентов сферических гармоник для генерации второго разложения второго множества коэффициентов сферических гармоник.
[351] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении первого множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы первого множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения первого множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы первого множества коэффициентов сферических гармоник.
[352] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении второго множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы второго множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения второго множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[353] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник представляет плосковолновое представление звукового поля.
[354]
[355] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник представляет один или более смешанных друг с другом монофонических аудиообъектов.
[356] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник содержат соответствующие первый и второй коэффициенты сферических гармоник, которые представляют трехмерное звуковое поле.
[357] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, больший единицы.
[358] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, равный четырем.
[359] В этих и других случаях, интерполяция является взвешенной интерполяцией первого разложения и второго разложения, причем весовые коэффициенты взвешенной интерполяции, применяемые к первому разложению, обратно пропорциональны времени, представленному векторами первого и второго разложения, и при этом весовые коэффициенты взвешенной интерполяции, применяемые ко второму разложению, пропорциональны времени, представленному векторами первого и второго разложения.
[360] В этих и других случаях, разложенные интерполированные коэффициенты сферических гармоник сглаживают, по меньшей мере, один из пространственных компонентов и временных компонентов первого множества коэффициентов сферических гармоник и второго множества коэффициентов сферических гармоник.
[361] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью вычисления Us[n]=HOA(n)*(V_vec[n])-1 для получения скаляра.
[362] В этих и других случаях, интерполяция содержит линейную интерполяцию. В этих и других случаях, интерполяция содержит нелинейную интерполяцию. В этих и других случаях, интерполяция содержит косинусную интерполяцию. В этих и других случаях, интерполяция содержит взвешенную косинусную интерполяцию. В этих и других случаях, интерполяция содержит кубичную интерполяцию. В этих и других случаях, интерполяция содержит адаптивную сплайновую интерполяцию. В этих и других случаях, интерполяция содержит интерполяцию минимальной кривизны.
[363] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью генерации битового потока, который включает в себя представление разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, и указание типа интерполяции.
[364] В этих и других случаях, указание содержит один или более битов, которые отображаются в тип интерполяции.
[365] Таким образом, различные аспекты методов, описанных в этом изобретении, могут предусматривать, что устройство 20 аудиокодирования выполнены с возможностью получения битового потока, который включает в себя представление разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, и указание типа интерполяции.
[366] В этих и других случаях, указание содержит один или более битов, которые отображаются в тип интерполяции.
[367] В этом отношении, устройство 20 аудиокодирования может представлять один вариант осуществления методов, согласно которым устройство 20 аудиокодирования можем, в ряде случаев, быть выполнено с возможностью генерации битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[368] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью генерации битового потока для включения поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
[369] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью генерации битового потока для включения информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
[370] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью генерации битового потока для включения поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
[371] В этих и других случаях, значение содержит значение nbits.
[372] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью генерации битового потока для включения сжатой версии из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, где значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
[373] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью генерации битового потока для включения кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
[374] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью генерации битового потока для включения знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
[375] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью генерации битового потока для включения кода Хаффмана для представления остаточного значения пространственной компоненты.
[376] В этих и других случаях, векторный синтез содержит разложение на сингулярные значения.
[377] В этом отношении, устройство 20 аудиокодирования может дополнительно реализовать различные аспекты методов, согласно которым устройство 20 аудиокодирования можем, в ряде случаев, быть выполнено с возможностью идентификации кодовой книги Хаффмана для использования при сжатии пространственного компонента из множества пространственных компонентов на основании порядка пространственного компонента относительно оставшихся из множества пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[378] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью идентификации кодовой книги Хаффмана на основании режима предсказания, используемого при сжатии пространственного компонента.
[379] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, информации таблицы Хаффмана, идентифицирующей кодовую книгу Хаффмана.
[380] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
[381] В этих и других случаях, значение содержит значение nbits.
[382] В этих и других случаях, битовый поток содержит сжатую версию из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
[383] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана, выбранного из идентифицированной кодовой книги Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
[384] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
[385] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана, выбранного из идентифицированной кодовой книги Хаффмана для представления остаточного значения пространственной компоненты.
[386] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью сжатия пространственного компонента на основании идентифицированной кодовой книги Хаффмана для генерации сжатой версии пространственного компонента, и генерации битового потока для включения сжатой версии пространственного компонента.
[387] Кроме того, устройство 20 аудиокодирования может, в ряде случаев, реализовать различные аспекты методов, согласно которым устройство 20 аудиокодирования может быть выполнено с возможностью определения размера шага квантования, подлежащий использованию при сжатии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[388] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения размера шага квантования на основании целевой битовой скорости.
[389] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента, и определения размера шага квантования на основании разности между оценкой и целевой битовой скоростью.
[390] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента, определения разности между оценкой и целевой битовой скоростью, и определения размера шага квантования путем прибавления разности к целевой битовой скорости.
[391] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью вычисления оцененного количества битов, подлежащих генерации для пространственного компонента, при условии, что кодовая книга соответствует целевой битовой скорости.
[392] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью вычисления оцененного количества битов, подлежащих генерации для пространственного компонента, при данном режиме кодирования, используемом при сжатии пространственного компонента.
[393] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью вычисления первой оценки количества битов, подлежащих генерации для пространственного компонента, при условии, что первый режим кодирования подлежит использованию при сжатии пространственного компонента, вычисления второй оценки количества битов, подлежащих генерации для пространственного компонента, при условии, что второй режим кодирования подлежит использованию при сжатии пространственного компонента, выбора одной из первой оценка и второй оценки, имеющей наименьшее количество битов, подлежащих использованию, как определенной оценки количества битов.
[394] В этих и других случаях, устройство 20 аудиокодирования выполнено с возможностью идентификации идентификатора категории, идентифицирующий категорию, которой соответствует пространственная компонента, идентификации битовой длины остаточного значения для пространственного компонента, которое получилось бы при сжатии пространственного компонента, соответствующего категории, и определения оценки количества битов путем, по меньшей мере, частично, прибавления количества битов, используемых для представления идентификатора категории, к битовой длине остаточного значения.
[395] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью выбора одного из множества кодовых книг, подлежащих использованию при сжатии пространственного компонента.
[396] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента с использованием каждой из множества кодовых книг, и выбора одной из множества кодовых книг, которая привела к определенной оценке, имеющей наименьшее количество битов.
[397] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента с использованием одной или более из множества кодовых книг, причем одна или более из множества кодовых книг выбрана на основании порядка элементов пространственного компонента, подлежащих сжатию, относительно других элементов пространственного компонента.
[398] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент не предсказывается из последующего пространственного компонента.
[399] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент предсказывается из последующего пространственного компонента.
[400] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент представляет синтетический аудиообъект в звуковом поле.
[401] В этих и других случаях, синтетический аудиообъект содержит аудиообъект, подвергнутый импульсно-кодовой модуляции (ИКМ).
[402] В этих и других случаях, устройство 20 аудиокодирования дополнительно выполнено с возможностью определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент представляет записанный аудиообъект в звуковом поле.
[403] В каждом из различных вышеописанных случаев, следует понимать, что устройство 20 аудиокодирования может осуществлять способ или иным образом содержать средство для осуществления каждого этапа способа, который призвано осуществлять устройство 20 аудиокодирования. В ряде случаев, это средство может содержать один или более процессоров. В ряде случаев, один или более процессоров может представлять процессор специального назначения, выполняющий инструкции, хранящиеся на долговременном считываемом компьютером носителе данных. Другими словами, различные аспекты методов в каждом из наборов примеров кодирования могут предусматривать долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять способ, для выполнения которого предназначено устройство 20 аудиокодирования.
[404] На фиг. 5 более детально показана блок-схема, демонстрирующая устройство 24 аудиодекодирования, представленное на фиг. 3. Как показано в примере, приведенном на фиг. 5, устройство 24 аудиодекодирования может включать в себя блок 72 извлечения, блок 90 реконструкции на основе направленности и блок 92 реконструкции на векторной основе.
[405] Блок 72 извлечения может представлять блок, выполненный с возможностью приема битового потока 21 и извлечения различных кодированных версий (например, кодированной версии на основе направления или кодированной версии на векторной основе) коэффициентов 11 HOA. Блок 72 извлечения может определять из вышеупомянутого элемента синтаксиса (например, элемента синтаксиса ChannelType, показанного в примерах, приведенных на фиг. 10E и 10H(i)-10O(ii)), кодированы ли коэффициенты 11 HOA посредством различных версий. Когда кодирование на основе направления осуществлено, блок 72 извлечения может извлекать версию на основе направления коэффициентов 11 HOA и элементы синтаксиса, связанные с этой кодированной версией (которая обозначается как информация 91 на основе направления в примере, приведенном на фиг. 5), передавать эту информацию 91 на основе направленности на блок 90 реконструкции на основе направления. Этот блок 90 реконструкции на основе направления может представлять блок, выполненный с возможностью реконструкции коэффициентов HOA в форме коэффициентов 11’ HOA на основании информации 91 на основе направления. Битовый поток и размещение элементов синтаксиса в битовом потоке описаны ниже более детально в отношении примера, приведенного на фиг. 10-10O(ii) и 11.
[406] Когда элемент синтаксиса указывает, что коэффициенты 11 HOA были кодированы с использованием синтеза на векторной основе, блок 72 извлечения может извлекать кодированные векторы 57 переднего плана V[k], кодированные коэффициенты 59 HOA окружения и кодированные сигналы 59 nFG. Блок 72 извлечения может передавать кодированные векторы 57 переднего плана V[k] на блок 74 квантования и кодированные коэффициенты 59 HOA окружения совместно с кодированными сигналами 61 nFG на блок 80 психоакустического декодирования.
[407] Для извлечения кодированных векторов 57 переднего плана V[k], кодированных коэффициентов 59 HOA окружения и кодированных сигналов 59 nFG, блок 72 извлечения может получать информацию 57 побочного канала, которая включает в себя элемент синтаксиса, обозначенный codedVVecLength. Блок 72 извлечения может вычленять codedVVecLength из информации 57 побочного канала. Блок 72 извлечения может быть выполнен с возможностью действовать в любом из вышеописанных режимов конфигурации на основании элемента синтаксиса CodedVVecLength.
[408] Затем блок 72 извлечения действует в соответствии с любым из режимов конфигурации для вычленения сжатой формы приведенных векторов 55k переднего плана V[k] из информации 57 побочного канала. Блок 72 извлечения может действовать в соответствии с оператором переключения, представленным в следующем псевдокоде согласно синтаксису, представленному в нижеследующей таблице синтаксиса для VVectorData:
switch CodedVVecLength {
case 0:
VVecLength=NumOfHoaCoeffs;
for (m=0; m<VVecLength; ++m){
VVecCoeffId[m]=m;
}
break;
case 1:
VVecLength=NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA -NumOfContAddHoaChans;
n=0;
for(m=MinNumOfCoeffsForAmbHOA; m<NumOfHoaCoeffs; ++m){
CoeffIdx=m+1;
if(CoeffIdx isNotMemberOf ContAddHoaCoeff){
VVecCoeffId[n]=CoeffIdx-1;
n++;
}
}
break;
case 2:
VVecLength=NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA;
for (m=0; m< VVecLength; ++m){
VVecCoeffId[m]=m+MinNumOfCoeffsForAmbHOA;
}
break;
case 3:
VVecLength=NumOfHoaCoeffs - NumOfContAddHoaChans;
n=0;
for(m=0; m<NumOfHoaCoeffs; ++m){
c=m+1;
if(c isNotMemberOf ContAddHoaCoeff){
VVecCoeffId[n]=c-1;
n++;
}
}
}
[409] В вышеприведенной таблице синтаксиса, первый оператор переключения с четырьмя случаями (случаями 0-3) обеспечивает возможность определения длины вектора VTDIST в отношении числа (VVecLength) и индексов коэффициентов (VVecCoeffId). Первый случай, case 0, указывает, что заданы все коэффициенты для векторов VTDIST (NumOfHoaCoeffs). Второй случай, case 1, указывает, что задаются только коэффициенты вектора VTDIST, соответствующие количеству, большему MinNumOfCoeffsForAmbHOA, которые могут обозначать то, что именуется выше (NDIST+1)2 - (NBG+1)2. Кроме того, коэффициенты NumOfContAddAmbHoaChan, идентифицированные в ContAddAmbHoaChan, вычитаются. Список ContAddAmbHoaChan указывает дополнительные каналы (где “каналы” означают конкретный коэффициент, соответствующий определенному порядку, комбинации подпорядков), соответствующие порядку, который превышает порядок MinAmbHoaOrder. Третий случай, case 2, указывает, что задаются коэффициенты вектора VTDIST, соответствующие количеству, большему MinNumOfCoeffsForAmbHOA, которые могут обозначать то, что именуется выше (NDIST+1)2 - (NBG+1)2. Четвертый случай, case 3, указывает, что задаются коэффициенты вектора VTDIST, оставшиеся после удаления коэффициентов, идентифицированных by NumOfContAddAmbHoaChan. Оба VvecLength, а также список VVecCoeffId действителен для всех VVectors в HOAFrame.
[410] После этого оператора переключения, решение, осуществлять ли однородное деквантование, может управляться с помощью NbitsQ (или, как обозначено выше, nbits), которое, если равно 5, указывает, что осуществляется однородное 8-битовое скалярное деквантование. Напротив, значение NbitsQ, большее или равное 6, может приводить к применению хаффмановского декодирования. Вышеупомянутое значение cid может быть равно двум младшим битам значения NbitsQ. Рассмотренный выше режим предсказания обозначается в вышеприведенной таблице синтаксиса как PFlag, тогда как бит информации HT обозначается в вышеприведенной таблице синтаксиса как CbFlag. Оставшийся синтаксис указывает, как декодирование возникает по существу, аналогичным образом описанному выше. Различные примеры битового потока 21, который согласуется с каждым из различных вышеупомянутых случаев, более подробно описаны ниже со ссылкой на фиг. 10H(i)-10O(ii).
[411] Блок 92 реконструкции на векторной основе представляет блок, выполненный с возможностью осуществления операций, обратных описанным выше в отношении блока 27 синтеза на векторной основе, для реконструкции коэффициентов 11’ HOA. Блок 92 реконструкции на векторной основе может включать в себя блок 74 квантования, блок 76 пространственно-временной интерполяции, блок 78 формирования переднего плана, блок 80 психоакустического декодирования, блок 82 формирования коэффициентов HOA и блок 84 переупорядочения.
[412] Блок 74 квантования может представлять блок, выполненный с возможностью действовать в режиме, обратном блоку 52 квантования, показанному в примере, приведенном на фиг. 4, чтобы деквантовать кодированные векторы 57 переднего плана V[k] и, таким образом, генерировать приведенные векторы 55k переднего плана V[k]. Блок 74 деквантования может, в некоторых примерах, осуществлять форму энтропийного декодирования и скалярного деквантования в режиме, обратном описанному выше в отношении блока 52 квантования. Блок 74 деквантования может пересылать приведенные векторы 55k переднего плана V[k] на блок 84 переупорядочения.
[413] Блок 80 психоакустического декодирования может действовать в режиме, обратном блоку 40 психоакустического аудиокодирования, показанному в примере, приведенном на фиг. 4 чтобы декодировать кодированные коэффициенты 59 HOA окружения и кодированные сигналы 61 nFG и, таким образом, генерировать коэффициенты 47’ HOA окружения с компенсацией энергии и интерполированных сигналов 49’ nFG (которые также могут именоваться интерполированными аудиообъектами 49’ nFG). Блок 80 психоакустического декодирования может передавать коэффициенты 47’ HOA окружения с компенсацией энергии на блок 82 формирования коэффициентов HOA и сигналы 49’ nFG на блок 84 переупорядочения.
[414] Блок 84 переупорядочения может представлять блок, выполненный с возможностью действовать аналогично обратному описанному выше в отношении блока 34 переупорядочения. Блок 84 переупорядочения может принимать элементы синтаксиса, указывающие исходный порядок компонентов переднего плана коэффициентов 11 HOA. Блок 84 переупорядочения может, на основании этих элементов синтаксиса переупорядочения, переупорядочивать интерполированные сигналы 49’ nFG и приведенные векторы 55k переднего плана V[k] для генерации переупорядоченных сигналов 49’’ nFG и переупорядоченных векторов 55k’ переднего плана V[k]. Блок 84 переупорядочения может выводить переупорядоченные сигналы 49’’ nFG на блок 78 формирования переднего плана и переупорядоченные векторы 55k’ переднего плана V[k] на блок 76 пространственно-временной интерполяции.
[415] Блок 76 пространственно-временной интерполяции может действовать аналогично описанному выше в отношении блока 50 пространственно-временной интерполяции. Блок 76 пространственно-временной интерполяции может принимать переупорядоченные векторы 55k’ переднего плана V[k] и осуществлять пространственно-временную интерполяцию в отношении переупорядоченных векторов 55k’ переднего плана V[k] и переупорядоченных векторов 55k-1’ переднего плана V[k-1] для генерации интерполированных векторов 55k’’ переднего плана V[k]. Блок 76 пространственно-временной интерполяции может пересылать интерполированные векторы 55k’’ переднего плана V[k] на блок 78 формирования переднего плана.
[416] Блок 78 формирования переднего плана может представлять блок, выполненный с возможностью осуществления матричного умножения в отношении интерполированных векторов 55k’’ переднего плана V[k] и переупорядоченных сигналов 49’’ nFG для генерации коэффициентов 65 HOA переднего плана. Блок 78 формирования переднего плана может осуществлять матричное умножение переупорядоченных сигналов 49’’ nFG на интерполированные векторы 55k’’ переднего плана V[k].
[417] Блок 82 формирования коэффициентов HOA может представлять блок, выполненный с возможностью прибавления коэффициентов 65 HOA переднего плана к каналам 47’ HOA окружения для получения коэффициентов 11’ HOA, где штрих указывает, что эти коэффициенты 11’ HOA могут быть аналогичны, но не равны коэффициентам 11 HOA. Разности между коэффициентами 11 и 11’ HOA могут быть обусловлены потерями вследствие передачи по потерьным средам передачи, квантования или других потерьных операций.
[418] Таким образом, методы могут предусматривать, что устройство аудиодекодирования, например, устройство 24 аудиодекодирует, для определения, из битового потока, квантованной информации направленности, кодированный аудиообъект переднего плана и кодированные коэффициенты амбиофонии более высокого порядка окружения (HOA), причем квантованная информация направленности и кодированный аудиообъект переднего плана представляют коэффициенты HOA переднего плана, описывающие компонент переднего плана звукового поля, и при этом кодированные коэффициенты HOA окружения описывают окружающий компонент звукового поля, деквантует квантованную информацию направленности для генерации информации направленности, осуществляет пространственно-временную интерполяцию в отношении информации направленности для генерации интерполированной информации направленности, аудиодекодирует кодированный аудиообъект переднего плана для генерации аудиообъекта переднего плана и кодированные коэффициенты HOA окружения для генерации коэффициентов HOA окружения, определяет коэффициенты HOA переднего плана как функцию интерполированной информации направленности и аудиообъекта переднего плана, и определяет коэффициенты HOA как функцию коэффициентов HOA переднего плана и коэффициентов HOA окружения.
[419] Таким образом, различные аспекты методов могут предусматривать, что унифицированное устройство 24 аудиодекодирования переключается между двумя разными схемами снятия сжатия. В ряде случаев, устройство 24 аудиодекодирования может быть выполнено с возможностью выбора одной из множества схем снятия сжатия на основании указания, генерируются ли сжатая версия коэффициентов сферических гармоник, представляющих звуковое поле, из синтетического аудиообъекта, и снятия сжатия сжатой версии коэффициентов сферических гармоник с использованием выбранной одной из множества схем снятия сжатия.
В этих и других случаях, устройство 24 аудиодекодирования содержит встроенный декодер.
[420] В ряде случаев, устройство 24 аудиодекодирования может быть выполнено с возможностью получения указания, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[421] В этих и других случаях, устройство 24 аудиодекодирования выполнено с возможностью получения указания из битового потока, где хранятся сжатая версия коэффициентов сферических гармоник.
[422] Таким образом, различные аспекты методов могут предусматривать, что устройство 24 аудиодекодирования получает векторы, описывающие характерные и фоновые компоненты звукового поля. В ряде случаев, устройство 24 аудиодекодирования может быть выполнено с возможностью определения одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов сферических гармоник.
[423] В этих и других случаях, устройство 24 аудиодекодирования, в котором преобразование содержит разложение на сингулярные значения, которое генерирует матрицу U, представляющую левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицу S, представляющую сингулярные значения из множества коэффициентов сферических гармоник, и матрицу V, представляющую правые сингулярные векторы из множества коэффициентов сферических гармоник.
[424] В этих и других случаях, устройство 24 аудиодекодирования, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S, и при этом матрица U и матрица S генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник.
[425] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью аудиодекодирования одного или более аудиокодированных векторов UDIST*SDIST для генерации аудиодекодированной версии одного или более аудиокодированных векторов UDIST*SDIST.
[426] В этих и других случаях, устройство 24 аудиодекодирования, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, и при этом матрица U и матрица S и матрица V генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник.
[427] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью аудиодекодирования одного или более аудиокодированных векторов UDIST*SDIST для генерации аудиодекодированной версии одного или более аудиокодированных векторов UDIST*SDIST.
[428] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью умножения векторов UDIST*SDIST на векторы VTDIST для восстановления тех из множества сферических гармоник, которые представляют характерные компоненты звукового поля.
[429] В этих и других случаях, устройство 24 аудиодекодирования, в котором один или более вторых векторов содержат один или более аудиокодированных векторов UBG*SBG*VTBG, которые, до аудиокодирования, генерировались путем умножения векторов UBG, включенных в матрицу U, на векторы SBG, включенные в матрицу S, и затем на векторы VTBG, включенные в транспонированную матрицу V, и при этом матрица S, причем каждая из матрицы U и матрицы V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник.
[430] В этих и других случаях, устройство 24 аудиодекодирования, в котором один или более вторых векторов содержат один или более аудиокодированных векторов UBG*SBG*VTBG, которые, до аудиокодирования, генерировались путем умножения векторов UBG, включенных в матрицу U, на векторы SBG, включенные в матрицу S, и затем на векторы VTBG, включенные в транспонированную матрицу V, причем матрица S, матрица U и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом устройство 24 аудиодекодирования дополнительно выполнено с возможностью аудиодекодирования одного или более аудиокодированных векторов UBG*SBG*VTBG для генерации одного или более аудиодекодированых векторов UBG*SBG*VTBG.
[431] В этих и других случаях, устройство 24 аудиодекодирования, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом устройство 24 аудиодекодирования дополнительно выполнено с возможностью аудиодекодирования одного или более аудиокодированных векторов UDIST*SDIST для генерации одного или более векторов UDIST*SDIST, и умножения векторов UDIST*SDIST на векторы VTDIST для восстановления тех из множества коэффициентов сферических гармоник, которые описывают характерные компоненты звукового поля, причем один или более вторых векторов содержат один или более аудиокодированных векторов UBG*SBG*VTBG которые, до аудиокодирования, генерировались путем умножения векторов UBG, включенных в матрицу U, на векторы SBG, включенные в матрицу S, и затем на векторы VTBG, включенные в транспонированную матрицу V, и при этом устройство 24 аудиодекодирования дополнительно выполнено с возможностью аудиодекодирования одного или более аудиокодированных векторов UBG*SBG*VTBG для восстановления, по меньшей мере, части из множества коэффициентов сферических гармоник, которые описывают фоновые компоненты звукового поля, и прибавления множества коэффициентов сферических гармоник, которые описывают характерные компоненты звукового поля, к, по меньшей мере, части из множества коэффициентов сферических гармоник, которые описывают фоновые компоненты звукового поля для генерации реконструированной версии из множества коэффициентов сферических гармоник.
[432] В этих и других случаях, устройство 24 аудиодекодирования, в котором один или более первых векторов содержат один или более векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом устройство аудиодекодирования 20 дополнительно выполнен с возможностью получения значения D, указывающего количество векторов, подлежащих извлечению из битового потока, для формирования одного или более векторов UDIST*SDIST и одного или более векторов VTDIST.
[433] В этих и других случаях, устройство 24 аудиодекодирования, в котором один или более первых векторов содержат один или более векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом устройство 24 аудиодекодирования дополнительно выполнено с возможностью получения значения D на основе кадров аудио, которое указывает количество векторов, подлежащих извлечению из битового потока, для формирования одного или более векторов UDIST*SDIST и одного или более векторов VTDIST.
[434] В этих и других случаях, устройство 24 аудиодекодирования, в котором преобразование содержит анализ главных компонентов для идентификации характерных компонентов звукового поля и фоновых компонентов звукового поля.
[435] Различные аспекты методов, описанных в этом изобретении, также могут предусматривать, что устройство 24 аудиокодирования осуществляет интерполяцию в отношении разложенных версий коэффициентов HOA. В ряде случаев, устройство 24 аудиодекодирования может быть выполнено с возможностью получения разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, по меньшей мере, частично, путем осуществления интерполяции в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник.
[436] В этих и других случаях, первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы первого множества коэффициентов сферических гармоник.
[437] В этих и других примерах, второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[438] В этих и других случаях, первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы первого множества коэффициентов сферических гармоник, и второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[439] В этих и других случаях, отрезок времени содержит подкадр кадра аудио.
[440] В этих и других случаях, отрезок времени содержит временную выборку кадра аудио.
[441] В этих и других случаях, устройство 24 аудиодекодирования выполнено с возможностью получения интерполированного разложения первого разложения и второго разложения для коэффициента сферической гармоники из первого множества коэффициентов сферических гармоник.
[442] В этих и других случаях, устройство 24 аудиодекодирования выполнено с возможностью получения интерполированных разложений первого разложения для первой части первого множества коэффициентов сферических гармоник, включенных в первый кадр, и второго разложения для второй части второго множества коэффициентов сферических гармоник, включенных во второй кадр, и устройство 24 аудиодекодирования дополнительно выполнено с возможностью применения интерполированных разложений к первому временному компоненту первой части первого множества коэффициентов сферических гармоник, включенных в первый кадр для генерации первого искусственного временного компонента первого множества коэффициентов сферических гармоник, и применения соответствующих интерполированных разложений ко второму временному компоненту второй части второго множества коэффициентов сферических гармоник, включенных во второй кадр, для генерации второго искусственного временного компонента второго множества коэффициентов сферических гармоник, включенных.
[443] В этих и других случаях, первый временной компонент генерируется путем осуществления синтеза на векторной основе в отношении первого множества коэффициентов сферических гармоник.
[444] В этих и других случаях, второй временной компонент генерируется путем осуществления синтеза на векторной основе в отношении второго множества коэффициентов сферических гармоник.
[445] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью приема первого искусственного временного компонента и второго искусственного временного компонента, вычисления интерполированных разложений первого разложения для первой части первого множества коэффициентов сферических гармоник и второго разложения для второй части второго множества коэффициентов сферических гармоник, и применения обратных интерполированных разложений к первому искусственному временному компоненту для восстановления первого временного компонента и ко второму искусственному временному компоненту для восстановления второго временного компонента.
[446] В этих и других случаях, устройство 24 аудиодекодирования выполнено с возможностью интерполяции первого пространственного компонента первого множества коэффициентов сферических гармоник и второго пространственного компонента второго множества коэффициентов сферических гармоник.
[447] В этих и других случаях, первый пространственный компонент содержит первую матрицу U, представляющую левые сингулярные векторы первого множества коэффициентов сферических гармоник.
[448] В этих и других случаях, второй пространственный компонент содержит вторую матрицу U, представляющую левые сингулярные векторы второго множества коэффициентов сферических гармоник.
[449] В этих и других случаях, первый пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для первого множества коэффициентов сферических гармоник, и второй пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для второго множества коэффициентов сферических гармоник.
[450] В этих и других случаях, первый пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для первого множества коэффициентов сферических гармоник, и второй пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для второго множества коэффициентов сферических гармоник, и устройство 24 аудиодекодирования выполнено с возможностью интерполяции последних N элементов первого пространственного компонента и первых N элементов второго пространственного компонента.
[451] В этих и других случаях, второе множество коэффициентов сферических гармоник следует за первым множеством коэффициентов сферических гармоник во временной области.
[452] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью разложения первого множества коэффициентов сферических гармоник для генерации первого разложения первого множества коэффициентов сферических гармоник.
[453] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью разложения второго множества коэффициентов сферических гармоник для генерации второго разложения второго множества коэффициентов сферических гармоник.
[454] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении первого множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы первого множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения первого множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы первого множества коэффициентов сферических гармоник.
[455] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью осуществления разложения на сингулярные значения в отношении второго множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы второго множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения второго множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[456] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник представляет плосковолновое представление звукового поля.
[457] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник представляет один или более смешанных друг с другом монофонических аудиообъектов.
[458] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник содержат соответствующие первый и второй коэффициенты сферических гармоник, которые представляют трехмерное звуковое поле.
[459] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, больший единицы.
[460] В этих и других случаях, первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, равный четырем.
[461] В этих и других случаях, интерполяция является взвешенной интерполяцией первого разложения и второго разложения, причем весовые коэффициенты взвешенной интерполяции, применяемые к первому разложению, обратно пропорциональны времени, представленному векторами первого и второго разложения, и при этом весовые коэффициенты взвешенной интерполяции, применяемые ко второму разложению, пропорциональны времени, представленному векторами первого и второго разложения.
[462] В этих и других случаях, разложенные интерполированные коэффициенты сферических гармоник сглаживают, по меньшей мере, один из пространственных компонентов и временных компонентов первого множества коэффициентов сферических гармоник и второго множества коэффициентов сферических гармоник.
[463] В этих и других случаях, устройство 24 аудиодекодирования выполнено с возможностью вычисления Us[n]=HOA(n)*(V_vec[n])-1 для получения скаляра.
[464] В этих и других случаях, интерполяция содержит линейную интерполяцию. В этих и других случаях, интерполяция содержит нелинейную интерполяцию. В этих и других случаях, интерполяция содержит косинусную интерполяцию. В этих и других случаях, интерполяция содержит взвешенную косинусную интерполяцию. В этих и других случаях, интерполяция содержит кубичную интерполяцию. В этих и других случаях, интерполяция содержит адаптивную сплайновую интерполяцию. В этих и других случаях, интерполяция содержит интерполяцию минимальной кривизны.
[465] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью генерации битового потока, который включает в себя представление разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, и указание типа интерполяции.
[466] В этих и других случаях, указание содержит один или более битов, которые отображаются в тип интерполяции.
[467] В этих и других случаях, устройство 24 аудиодекодирования дополнительно выполнено с возможностью получения битового потока, который включает в себя представление разложенных интерполированных коэффициентов сферических гармоник для отрезка времени, и указание типа интерполяции.
[468] В этих и других случаях, указание содержит один или более битов, которые отображаются в тип интерполяции.
[469] Различные аспекты методов, в ряде случаев, могут дополнительно предусматривать, что устройство 24 аудиодекодирования выполнено с возможностью получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[470] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
[471] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
[472] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
[473] В этих и других случаях, значение содержит значение nbits.
[474] В этих и других случаях, битовый поток содержит сжатую версию из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
[475] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
[476] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
[477] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления остаточного значения пространственной компоненты.
[478] В этих и других случаях, устройство содержит устройство аудиодекодирования.
[479] Различные аспекты методов также могут предусматривать, что устройство 24 аудиодекодирования идентифицирует кодовую книгу Хаффмана для использования при снятии сжатия сжатой версии пространственного компонента из множества сжатых пространственных компонентов на основании порядка сжатой версии пространственного компонента относительно оставшихся из множества сжатых пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[480] В этих и других случаях, устройство 24 аудиодекодирования выполнено с возможностью получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, и снятия сжатия сжатой версии пространственного компонента с использованием, по меньшей мере, частично, идентифицированной кодовой книги Хаффмана для получения пространственного компонента.
[481] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты, и устройство 24 аудиодекодирования выполнено с возможностью снятия сжатия сжатой версии пространственного компонента, по меньшей мере, частично, на основании режима предсказания для получения пространственного компонента.
[482] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты, и устройство 24 аудиодекодирования выполнено с возможностью снятия сжатия сжатой версии пространственного компонента, по меньшей мере, частично, на основании информации таблицы Хаффмана.
[483] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты, и устройство 24 аудиодекодирования выполнено с возможностью снятия сжатия сжатой версии пространственного компонента, по меньшей мере, частично, на основании значения.
[484] В этих и других случаях, значение содержит значение nbits.
[485] В этих и других случаях, битовый поток содержит сжатую версию из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент и устройство 24 аудиодекодирования выполнено с возможностью снятия сжатия множества сжатой версии пространственного компонента, по меньшей мере, частично, на основании значения.
[486] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента и устройство 24 аудиодекодирования выполнено с возможностью снятия сжатия сжатой версии пространственного компонента, по меньшей мере, частично, на основании кода Хаффмана.
[487] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение, и устройство 24 аудиодекодирования выполнено с возможностью снятия сжатия сжатой версии пространственного компонента, по меньшей мере, частично, на основании знакового бита.
[488] В этих и других случаях, сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления остаточного значения пространственной компоненты и устройство 24 аудиодекодирования выполнено с возможностью снятия сжатия сжатой версии пространственного компонента, по меньшей мере, частично, на основании кода Хаффмана, включенного в идентифицированную кодовую книгу Хаффмана.
[489] В каждом из различных вышеописанных случаев, следует понимать, что устройство 24 аудиодекодирования может осуществлять способ или иным образом содержать средство для осуществления каждого этапа способа, для которого устройство 24 аудиодекодирования выполнено с возможностью осуществления в ряде случаев, это средство может содержать один или более процессоров. В ряде случаев, один или более процессоров может представлять процессор специального назначения, выполняющий инструкции, хранящиеся на долговременном считываемом компьютером носителе данных. Другими словами, различные аспекты методов в каждом из наборов примеров кодирования могут предусматривать долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять способ, для выполнения которого предназначено устройство 24 аудиодекодирования.
[490] На фиг. 6 показана блок-схема операций, демонстрирующая работу блока анализа контента устройства аудиокодирования, например, блока 26 анализа контента, показанного в примере, приведенном на фиг. 4, при осуществлении различных аспектов методов, описанных в этом изобретении.
[491] Блок 26 анализа контента может, при определении, генерируются ли коэффициенты 11 HOA, представляющие звуковое поле, из синтетического аудиообъекта, получать кадрированные коэффициенты HOA (93), которые могут иметь размер 25 на 1024 для представления четвертого порядка (т.е., N=4). После получения кадрированных коэффициентов HOA (которые также могут быть обозначены здесь как матрица 11 кадрированных SHC, и последующие матрицы кадрированных SHC могут быть обозначены как матрицы 27B, 27C и т.д. кадрированных SHC), блок 26 анализа контента может исключить первый вектор кадрированных коэффициентов 11 HOA для генерации приведенных кадрированных коэффициентов HOA (94).
[492] Затем блок 26 анализа контента может предсказывать первый ненулевой вектор приведенных кадрированных коэффициентов HOA из оставшихся векторов приведенных кадрированных коэффициентов HOA (95). После предсказания первого ненулевого вектора, блок 26 анализа контента может получать ошибку на основании предсказанного первого ненулевого вектора и фактического ненулевого вектора (96). Получив ошибку, блок 26 анализа контента может вычислять отношение на основании энергии фактического первого ненулевого вектора и ошибки (97). Затем блок 26 анализа контента может сравнивать это отношение с порогом (98). Когда отношение не превышает порог (“Нет” 98), блок 26 анализа контента может определить, что матрица 11 кадрированных SHC генерируется из записи, и указать в битовом потоке, что соответствующее кодированное представление матрицы 11 SHC сгенерировано из записи (100, 101). Когда отношение превышает порог (“Да” 98), блок 26 анализа контента может определить, что матрица 11 кадрированных SHC генерируется из синтетического аудиообъекта, и указать в битовом потоке, что соответствующее кодированное представление матрицы 11 SHC сгенерировано из синтетического аудиообъекта (102, 103). В ряде случаев, когда матрица 11 кадрированных SHC сгенерирована из записи, блок 26 анализа контента передает матрицу 11 кадрированных SHC на блок 27 синтеза на векторной основе (101). В ряде случаев, когда матрица 11 кадрированных SHC сгенерирована из синтетического аудиообъекта, блок 26 анализа контента передает матрицу 11 кадрированных SHC на блок 28 синтеза на основе направления (104).
[493] На фиг. 7 показана блок-схема операций, демонстрирующая работу устройства аудиокодирования, например, устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4, при осуществлении различных аспектов методов синтеза на векторной основе, описанных в этом изобретении. Первоначально устройство 20 аудиокодирования принимает коэффициенты 11 HOA (106). Устройство 20 аудиокодирования может вызывать блок 30 LIT, который может применять LIT в отношении коэффициентов HOA для вывода преобразованных коэффициентов HOA (например, в случае SVD, преобразованные коэффициенты HOA могут содержать векторы 33 US[k] и векторы 35 V[k]) (107).
[494] Затем устройство 20 аудиокодирования может вызывать блок 32 вычисления параметров для осуществления вышеописанного анализа в отношении любой комбинации векторов 33 US[k], векторов 33 US[k-1], векторов 35 V[k] и/или V[k-1] для идентификации различных параметров вышеописанным образом. Таким образом, блок 32 вычисления параметров может определять, по меньшей мере, один параметр на основании анализа преобразованных коэффициентов 33/35 HOA (108).
[495] Затем устройство 20 аудиокодирования может вызывать блок 34 переупорядочения, который может переупорядочивать преобразованные коэффициенты HOA (которые, опять же, в контексте SVD, могут означать векторы 33 US[k] и векторы 35 V[k]) на основании параметра для генерации переупорядоченных преобразованных коэффициентов 33’/35’ HOA (или, другими словами, векторов 33’ US[k] и векторов 35’ V[k]), как описано выше (109). Устройство 20 аудиокодирования может, при выполнении любой из вышеприведенных операций или последующих операций, также вызывать блок 44 анализа звукового поля. Блок 44 анализа звукового поля может, как описано выше, осуществлять анализ звукового поля в отношении коэффициентов 11 HOA и/или преобразованных коэффициентов 33/35 HOA для определения суммарного количества каналов 45 переднего плана (nFG), порядка фонового звукового поля (NBG) и количества (nBGa) и индексов (i) дополнительных каналов HOA BG для отправки (которые могут совместно обозначаться как информация 43 фонового канала в примере, приведенном на фиг. 4) (109).
[496] Устройство 20 аудиокодирования может также вызывать блок 48 выбора фона. Блок 48 выбора фона может определять коэффициенты 47 HOA фона или окружения на основании информации 43 фонового канала (110). Устройство 20 аудиокодирования может дополнительно вызывать блок 36 выбора переднего плана, который может выбирать те из переупорядоченных векторов 33’ US[k] и переупорядоченных векторов 35’ V[k], которые представляют компоненты переднего плана или характерные компоненты звукового поля на основании nFG 45 (который может представлять один или более индексов, идентифицирующих эти векторы переднего плана) (112).
[497] Устройство 20 аудиокодирования может вызывать блок 38 компенсации энергии. Блок 38 компенсации энергии может осуществлять компенсацию энергии в отношении коэффициентов 47 HOA окружения для компенсации потери энергии вследствие удаления различных каналов HOA блоком 48 выбора фона (114) и, таким образом, генерировать коэффициенты 47’ HOA окружения с компенсацией энергии.
[498] Затем устройство 20 аудиокодирования также может вызывать блок 50 пространственно-временной интерполяции. Блок 50 пространственно-временной интерполяции может осуществлять пространственно-временную интерполяцию в отношении переупорядоченных преобразованных коэффициентов 33’/35’ HOA для получения интерполированных сигналов 49’ переднего плана (которые также могут именоваться “интерполированные сигналы 49’ nFG”) и оставшейся информации 53 направленности переднего плана (которая также может именоваться “векторы 53 V[k]”) (116). Затем устройство 20 аудиокодирования может вызывать блок 46 приведения коэффициентов. Блок 46 приведения коэффициентов может осуществлять приведение коэффициентов в отношении оставшихся векторов 53 переднего плана V[k] на основании информации 43 фонового канала для получения сокращенной информации 55 направленности переднего плана (которая также может именоваться приведенными векторами 55 переднего плана V[k]) (118).
[499] Затем устройство 20 аудиокодирования может вызывать блок 52 квантования для сжатия, вышеописанным образом, приведенных векторов 55 переднего плана V[k] и генерации кодированных векторов 57 переднего плана V[k] (120).
[500] Устройство 20 аудиокодирования может также вызывать блок 40 психоакустического аудиокодера. Блок 40 психоакустического аудиокодера может психоакустически кодировать каждый вектор коэффициентов 47’ HOA окружения с компенсацией энергии и интерполированных сигналов 49’ nFG для генерации кодированных коэффициентов 59 HOA окружения и кодированных сигналов 61 nFG. Затем устройство аудиокодирования может вызывать блок 42 генерации битового потока. Блок 42 генерации битового потока может генерировать битовый поток 21 на основании кодированной информации 57 направленности переднего плана, кодированных коэффициентов 59 HOA окружения, кодированных сигналов 61 nFG и информации 43 фонового канала.
[501] На фиг. 8 показана блок-схема операций, демонстрирующая работу устройства аудиодекодирования, например, устройство 24 аудиодекодирования, показанное на фиг. 5, при осуществлении различных аспектов методов, описанных в этом изобретении. Первоначально, устройство 24 аудиодекодирования может принимать битовый поток 21 (130). После приема битового потока, устройство 24 аудиодекодирования может вызывать блок 72 извлечения. Предполагая в целях рассмотрения, что битовый поток 21 указывает, что реконструкция на векторной основе подлежит осуществлению, устройство 72 извлечения может вычленять этот битовый поток для извлечения вышеупомянутой информации, передавая эту информацию на блок 92 реконструкции на векторной основе.
[502] Другими словами, блок 72 извлечения может извлекать кодированную информацию 57 направленности переднего плана (которая, опять же, также может именоваться кодированные векторами 57 переднего плана V[k]), кодированные коэффициенты 59 HOA окружения и кодированные сигналы переднего плана (которые также могут именоваться кодированными сигналами 59 nFG переднего плана или кодированными аудиообъектами 59 переднего плана) из битового потока 21 вышеописанным образом (132).
[503] Устройство 24 аудиодекодирования может дополнительно вызывать блок 74 квантования. Блок 74 квантования может энтропийно декодировать и деквантовать кодированную информацию 57 направленности переднего плана для получения сокращенной информации 55k направленности переднего плана (136). Устройство 24 аудиодекодирования также может вызывать блок 80 психоакустического декодирования. Блок психоакустического аудиокодирования 80 может декодировать кодированные коэффициенты 59 HOA окружения и кодированные сигналы 61 переднего плана для получения коэффициентов 47’ HOA окружения с компенсацией энергии и интерполированных сигналов 49’ переднего плана (138). Блок 80 психоакустического декодирования может передавать коэффициенты 47’ HOA окружения с компенсацией энергии на блок 82 формирования коэффициентов HOA и сигналы 49’ nFG на блок 84 переупорядочения.
[504] Блок 84 переупорядочения может принимать элементы синтаксиса, указывающие исходный порядок компонентов переднего плана коэффициентов 11 HOA. Блок 84 переупорядочения может, на основании этих элементов синтаксиса переупорядочения, переупорядочивать интерполированные сигналы 49’ nFG и приведенные векторы 55k переднего плана V[k] для генерации переупорядоченных сигналов 49’’ nFG и переупорядоченных векторов 55k’ переднего плана V[k] (140). Блок 84 переупорядочения может выводить переупорядоченные сигналы 49’’ nFG на блок 78 формирования переднего плана и переупорядоченные векторы 55k’ переднего плана V[k] на блок 76 пространственно-временной интерполяции.
[505] Затем устройство 24 аудиодекодирования может вызывать блок 76 пространственно-временной интерполяции. Блок 76 пространственно-временной интерполяции может принимать переупорядоченную информацию 55k’ направленности переднего плана и осуществлять пространственно-временную интерполяцию в отношении сокращенной информации 55k/55k-1 направленности переднего плана для генерации интерполированной информации 55k’’ направленности переднего плана (142). Блок 76 пространственно-временной интерполяции может пересылать интерполированные векторы 55k’’ переднего плана V[k] на блок 718 формирования переднего плана.
[506] Устройство 24 аудиодекодирования может вызывать блок 78 формирования переднего плана. Блок 78 формирования переднего плана может осуществлять матричное умножение интерполированных сигналов 49’’ переднего плана на интерполированную информацию 55k’’ направленности переднего плана для получения коэффициентов 65 HOA переднего плана (144). Устройство 24 аудиодекодирования также может вызывать блок 82 формирования коэффициентов HOA. Блок 82 формирования коэффициентов HOA может прибавлять коэффициенты 65 HOA переднего плана к каналам 47’ HOA окружения для получения коэффициентов 11’ HOA (146).
[507] На Фиг. 9A-9L показаны блок-схемы, более детально демонстрирующие различные аспекты устройства 20 аудиокодирования примера, приведенного на фиг. 4. На Фиг. 9A более детально показана блок-схема, демонстрирующая блок 30 LIT устройства 20 аудиокодирования. Как показано в примере, приведенном на фиг. 9A, блок 30 LIT может включать в себя множественные разные линейные обратимые преобразования 200-200N. Блок 30 LIT может включать в себя, для обеспечения нескольких примеров, преобразование 200A разложения на сингулярные значения (SVD) (“SVD 200A”), преобразование 200B анализа основных компонентов (PCA) (“PCA 200B”), преобразование 20°C Крунена-Лева (KLT) (“KLT 200C”), быстрое преобразование Фурье (FFT) 200D (“FFT 200D”) и дискретное косинусное преобразование (DCT) 200N (“DCT 200N”). Блок 30 LIT может вызывать любое из эти линейных обратимых преобразований 200 для применения соответствующего преобразования в отношении коэффициентов 11 HOA и генерировать соответствующие преобразованные коэффициенты 33/35 HOA.
[508] Хотя они описаны как осуществляемые непосредственно в отношении коэффициентов 11 HOA, блок 30 LIT может применять линейные обратимые преобразования 200 к производным коэффициентов 11 HOA. например, блок 30 LIT может применять SVD 200 в отношении матрицы спектральной плотности мощности, выведенной из коэффициентов 11 HOA. Матрица спектральной плотности мощности может быть обозначена как PSD и получена путем матричного умножения транспонированной hoaFrame на hoaFrame, что изложено в нижеследующем псевдокоде. Обозначение hoaFrame означает кадр коэффициентов 11 HOA.
[509] Блок 30 LIT может, после применения SVD 200 (svd) к PSD, может получать матрицу S[k]2 (S_squared) и матрицу V[k]. Матрица S[k]2 может обозначать квадрат матрицы S[k], в связи с чем, блок 30 LIT (или, альтернативно, блок 200 SVD в порядке одного примера) может применять операцию извлечения квадратного корня из матрицы S[k]2 для получения матрицы S[k]. Блок 200 SVD может, в ряде случаев, осуществлять квантование в отношении матрицы V[k] для получения квантованной матрицы V[k] (которая может быть обозначена как матрица V[k]’). Блок 30 LIT может получать матрицу U[k], сначала умножая матрицу S[k] на квантованную матрицу V[k]’ для получения матрицы SV[k]’. Затем блок 30 LIT может получать псевдообратную (pinv) матрицу SV[k]’ и затем умножать коэффициенты 11 HOA на псевдообратную матрицу SV[k]’ для получения матрицы U[k]. Вышеприведенное описание может быть представлено следующим псевдокодом:
PSD=hoaFrame’*hoaFrame;
[V, S_squared]=svd(PSD,’econ’);
S=sqrt(S_squared);
U=hoaFrame*pinv(S*V’);
[510] Путем осуществления SVD в отношении спектральной плотности мощности (PSD) коэффициентов HOA вместо самих коэффициентов, блок 30 LIT может потенциально снижать вычислительную сложность осуществления SVD в отношении одного или более из циклов процессор и пространства хранения, достигая при этом такой же эффективности аудиокодирования источника, как если бы SVD применялось непосредственно к коэффициентам HOA. Таким образом, вышеописанное SVD типа PSD может потенциально требовать меньше вычислительной мощности, поскольку SVD осуществляется на матрице F*F (где F - количество коэффициентов HOA). По сравнению с матрицей M*F где M - длина кадра, т.е. 1024 или более выборок. Теперь сложность SVD, благодаря применения к PSD вместо коэффициентов 11 HOA, может быть около O(L^3) по сравнению с O(M*L^2) в случае применения к коэффициентам 11 HOA (где O(*) обозначает символ большого O вычислительной сложности, обычно используемый в компьютерной технике).
[511] На Фиг. 9B показана блок-схема, более детально демонстрирующая блок 32 вычисления параметров устройства 20 аудиокодирования. Блок 32 вычисления параметров может включать в себя блок 202 анализа энергии и блок 204 кросс-корреляции. Блок 202 анализа энергии может осуществлять вышеописанный анализ энергии в отношении одного или более из векторов 33 US[k] и векторов 35 V[k] для генерации одного или более из параметра корреляции (R), параметров свойств направленности (θ, ϕ, r) и свойства энергии (e) для одного или более из текущего кадра (k) и предыдущего кадра (k-1). Аналогично, блок 204 кросс-корреляции может осуществлять вышеописанную кросс-корреляцию в отношении одного или более из векторов 33 US[k] и векторов 35 V[k] для генерации одного или более из параметра корреляции (R), параметров свойств направленности (θ, ϕ, r) и свойства энергии (e) для одного или более из текущего кадра (k) и предыдущего кадра (k-1). Блок 32 вычисления параметров может выводить параметры 37 текущего кадра и параметры 39 предыдущего кадра.
[512] На Фиг. 9C показана блок-схема, более детально демонстрирующая блок 34 переупорядочения устройства 20 аудиокодирования. Блок 34 переупорядочения включает в себя блок 206 оценивания параметров и блок 208 переупорядочения векторов. Блок 206 оценивания параметров представляет блок, выполненный с возможностью оценивания параметров 39 предыдущего кадра и параметров 37 текущего кадра вышеописанным образом для генерации индексов 205 переупорядочения. Индексы 205 переупорядочения включают в себя индексы, идентифицирующие, как нужно переупорядочивать векторы из векторов 33 US[k] и векторов из векторов 35 V[k] (например, парами индексов, где первый индекс пары идентифицирует индекс текущего положения вектора, и второй индекс пары идентифицирует положение переупорядоченного вектора). Блок 208 переупорядочения векторов представляет блок, выполненный с возможностью преупорядочения векторов 33 US[k] и векторов 35 V[k] в соответствии с индексами 205 переупорядочения. Блок 34 переупорядочения может выводить переупорядоченные векторы 33’ US[k] и переупорядоченные векторы 35’ V[k], также передавая индексы 205 переупорядочения как один или более элементов синтаксиса на блок 42 генерации битового потока.
[513] На Фиг. 9D показана блок-схема, более детально демонстрирующая блок 44 анализа звукового поля устройства 20 аудиокодирования. Как показано в примере, приведенном на фиг. 9D, блок 44 анализа звукового поля может включать в себя блок 210A анализа сингулярных значений, блок 210B анализа энергии, блок 21°C пространственного анализа, блок 210D анализа пространственного маскирования, блок 210E анализа диффузии и блок 210F анализа направленности. Блок 210A анализа сингулярных значений может представлять блок, выполненный с возможностью анализа наклона кривой, созданной уменьшающимися диагональными значениями векторов S (образующих часть векторов 33 US[k]), где большие сингулярные значения представляют звуки переднего плана или характерные звуки, и низкие сингулярные значения представляют фоновые компоненты звукового поля, как описано выше. Блок 210B анализа энергии может представлять блок, выполненный с возможностью определения энергии векторов 35 V[k] для каждого вектора.
[514] Блок 21°C пространственного анализа может представлять блок, выполненный с возможностью осуществления вышеописанного пространственного анализа энергии путем преобразования коэффициентов 11 HOA в пространственную область и идентификации областей высокой энергии, представляющих направленные компоненты звукового поля, которые следует сохранить. Блок 210D анализа пространственного маскирования может представлять блок, выполненный с возможностью осуществления анализа пространственного маскирования аналогично блоку пространственного анализа энергии, за исключением того, что блок 210D анализа пространственного маскирования может идентифицировать пространственные области, которые маскируются пространственно близкими звуками более высокой энергии. Блок 210E анализа диффузии может представлять блок, выполненный с возможностью осуществления вышеописанного анализа диффузии в отношении коэффициентов 11 HOA для идентификации областей диффузной энергии, которые могут представлять фоновые компоненты звукового поля. Блок 210F анализа направленности может представлять блок, выполненный с возможностью осуществления вышеупомянутого анализа направленности, который предусматривает вычисление векторов VS[k] и возведение в квадрат каждого элемента каждого из этих векторов VS[k] и их суммирование для идентификации показателя направленности. Блок 210F анализа направленности может обеспечивать этот показатель направленности для каждого из векторов VS[k] на блок 212 идентификации (ID) фона/переднего плана (BG/FG).
[515] Блок 44 анализа звукового поля также может включать в себя блок 212 ID BG/FG, который может представлять блок, выполненный с возможностью определения суммарного количества каналов 45 переднего плана (nFG), порядка фонового звукового поля (NBG) и количества (nBGa) и индексов (i) дополнительных каналов HOA BG для отправки (которые могут совместно обозначаться как информация 43 фонового канала в примере, приведенном на фиг. 4) на основании любой комбинации анализа, выводимого любой комбинацией блоков 210-210F анализа. Блок 212 ID BG/FG может определять nFG 45 и информацию 43 фонового канала для достижения целевой битовой скорости 41.
[516] На Фиг. 9E показана блок-схема, более детально демонстрирующая блок 36 выбора переднего плана устройства 20 аудиокодирования. Блок 36 выбора переднего плана включает в себя блок 214 вычленения вектора, который может вычленять или иначе извлекать векторы 49 переднего плана US[k] и векторы 51k переднего плана V[k], идентифицированные элементом 45 синтаксиса nFG, из переупорядоченных векторов 33’ US[k] и переупорядоченных векторов 35’ V[k]. Блок 214 вычленения вектора может вычленять различные векторы, представляющие компоненты переднего плана звукового поля, идентифицированные блоком 44 анализа звукового поля и указанные элементом 45 синтаксиса nFG (которые также могут именоваться информацией 45 каналов переднего плана). Как показано в примере, приведенном на фиг. 9E, блок 214 вычленения вектора может выбирать, в ряде случаев, непоследовательные векторы среди векторов 49 переднего плана US[k] и векторов 51k переднего плана V[k] для представления компонентов переднего плана звукового поля. Кроме того, блок 214 вычленения вектора может выбирать, в ряде случаев, одни и те же векторы (в отношении позиции) среди векторов 49 переднего плана US[k] и векторов 51k переднего плана V[k] для представления компонентов переднего плана звукового поля.
[517] На Фиг. 9F показана блок-схема, более детально демонстрирующая блок 48 выбора фона устройства 20 аудиокодирования. Блок 48 выбора фона может определять коэффициенты 47 HOA фона или окружения на основании информации фонового канала (например, фонового звукового поля (NBG) и количества (nBGa) и индексов (i) дополнительных каналов HOA BG для отправки). Например, когда NBG равно единице, блок 48 выбора фона может выбирать коэффициенты 11 HOA для каждой выборки кадра аудио, имеющего порядок, меньший или равный единице. Затем блок 48 выбора фона может, в этом примере, выбрать коэффициенты 11 HOA, имеющие индекс, идентифицированный одним из индексов (i) как дополнительные коэффициенты HOA BG, где nBGa поступает на блок 42 генерации битового потока для указания в битовом потоке 21, чтобы устройство аудиодекодирования, например, устройство 24 аудиодекодирования, показанное в примере, приведенном на фиг. 5, вычленяло коэффициенты 47 HOA BG из битового потока 21. Затем блок 48 выбора фона может выводить коэффициенты 47 HOA окружения на блок 38 компенсации энергии. Коэффициенты 47 HOA окружения могут иметь размеры D: M x [(NBG+1)2+nBGa].
[518] На Фиг. 9G показана блок-схема, более детально демонстрирующая блок 38 компенсации энергии устройства 20 аудиокодирования. Блок 38 компенсации энергии может представлять блок, выполненный с возможностью осуществления компенсации энергии в отношении коэффициентов 47 HOA окружения для компенсации потери энергии вследствие удаления различных каналов HOA блоком 48 выбора фона. Блок 38 компенсации энергии может включать в себя блок 218 определения энергии, блок 220 анализа энергии и блок 222 усиления энергии.
[519] Блок 218 определения энергии может представлять блок, выполненный с возможностью идентификации RMS для каждой строки и/или столбца одной или более из переупорядоченной матрицы 33’ US[k] и переупорядоченной матрицы 35’ V[k]. Блок 38 определения энергии также может идентифицировать RMS для каждой строки и/или столбца одного или более из выбранных каналов переднего плана, который может включать в себя сигналы 49 nFG и векторы 51k переднего плана V[k], и коэффициенты 47 HOA окружения сниженного порядка. RMS для каждой строки и/или столбца одной или более из переупорядоченной матрицы 33’ US[k] и переупорядоченной матрицы 35’ V[k] может сохраняться в вектор, обозначенный RMSFULL, тогда как RMS для каждой строки и/или столбца одного или более из сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка могут сохраняться в вектор, обозначенный RMSREDUCED.
[520] В некоторых примерах, для определения каждого RMS соответствующих строк и/или столбцов одной или более из переупорядоченной матрицы 33’ US[k], переупорядоченной матрицы 35’ V[k], сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка, блок 218 определения энергии может сначала применять рендеризатор опорных коэффициентов сферических гармоник (SHC) к столбцам. Применение рендеризатора опорных SHC блоком 218 определения энергии позволяет определять RMS в области SHC для определения энергии общего звукового поля, описанного каждой строкой и/или столбцом кадра, представленного строками и/или столбцами одной или более из переупорядоченной матрицы 33’ US[k], переупорядоченной матрицы 35’ V[k], сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка. Блок 38 определения энергии может передавать эти векторы RMSFULL и RMSREDUCED на блок 220 анализа энергии.
[521] Блок 220 анализа энергии может представлять блок, выполненный с возможностью вычисления вектора Z значений усиления, в соответствии со следующим уравнением: . Блок 220 анализа энергии затем может передавать этот вектор Z значений усиления на блок 222 усиления энергии. Блок 222 усиления энергии может представлять блок, выполненный с возможностью применения этого вектора Z значений усиления или различных его участков к одному или более из сигналов 49 nFG, векторов 51k переднего плана V[k] и коэффициентов 47 HOA окружения сниженного порядка. В ряде случаев, вектор Z значений усиления применяется к только к коэффициентам 47 HOA окружения сниженного порядка согласно следующему уравнению , где HOABG-RED обозначает коэффициенты 47 HOA окружения сниженного порядка, HOABG-RED’ обозначает приведенные коэффициенты 47’ HOA окружения с компенсацией энергии, и ZT обозначает транспонирование вектора Z.
[522] На Фиг. 9H показана блок-схема, демонстрирующая, более детально, блок 50 пространственно-временной интерполяции устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 50 пространственно-временной интерполяции может представлять блок, выполненный с возможностью приема векторов 51k переднего плана V[k] для k-го кадра и векторов 51k-1 переднего плана V[k-1] для предыдущего кадра (поэтому обозначенных k-1) и осуществления пространственно-временной интерполяции для генерации интерполированных векторов переднего плана V[k]. Блок 50 пространственно-временной интерполяции может включать в себя блок 224 интерполяции V и блок 226 адаптации переднего плана.
[523] Блок 224 интерполяции V может выбирать часть текущих векторов 51k переднего плана V[k] для интерполяции на основании оставшихся участков текущих векторов 51k переднего плана V[k] и предыдущих векторов 51k-1 переднего плана V[k-1]. Блок 224 интерполяции V может выбирать часть как один или более из вышеупомянутых подкадров или одну единственную неопределенную часть, которая может изменяться на основе кадров. Блок 224 интерполяции V может, в ряде случаев, выбрать единичную часть 128 выборок из 1024 выборок текущих векторов 51k переднего плана V[k] для интерполяции. Затем блок 224 интерполяции V может преобразовывать каждый из векторов среди текущих векторов 51k переднего плана V[k] и предыдущих векторов 51k-1 переднего плана V[k-1] для разделения пространственных карт путем проецирования векторов на сферу (с использованием проекционной матрицы, например, T-образной матрицы). Затем блок 224 интерполяции V может интерпретировать векторы в V как формы на сфере. Для интерполяции матриц V для части 256 выборок, блок 224 интерполяции V затем может интерполировать эти пространственные формы и затем преобразовывать их обратно в векторы области сферических гармоник посредством обратной проекционной матрицы. Методы этого изобретения, таким образом, могут обеспечивать плавный переход между матрицами V. Затем блок 224 интерполяции V может генерировать оставшиеся векторы 53 V[k], которые представляют векторы 51k переднего плана V[k] после модификации для удаления интерполированной части векторов 51k переднего плана V[k]. Затем блок 224 интерполяции V может передавать интерполированные векторы 51k’ переднего плана V[k] на блок 226 адаптации nFG.
[524] При выборе единичной части для интерполяции, блок 224 интерполяции V может генерировать элемент синтаксиса, обозначенный CodedSpatialInterpolationTime 254, который идентифицирует длительность или, другими словами, время интерполяции (например, в отношении количества выборок). При выборе единичной части осуществления интерполяции подкадра, блок 224 интерполяции V также может генерировать другой элемент синтаксиса, обозначенный SpatialInterpolationMethod 255, который может идентифицировать тип осуществляемой интерполяции (или, в ряде случаев, была ли осуществлена интерполяция). Блок 50 пространственно-временной интерполяции может выводить эти элементы 254 и 255 синтаксиса на блок 42 генерации битового потока.
[525] Блок 226 адаптации nFG может представлять блок, выполненный с возможностью генерации адаптированных сигналов 49’ nFG. Блок 226 адаптации nFG может генерировать адаптированные сигналы 49’ nFG, сначала получая коэффициенты HOA переднего плана путем умножения сигналов 49 nFG на векторы 51k переднего плана V[k]. После получения коэффициентов HOA переднего плана, блок 226 адаптации nFG может делить коэффициенты HOA переднего плана на интерполированные векторы 53 переднего плана V[k] для получения адаптированных сигналов 49’ nFG (которые могут именоваться интерполированными сигналами 49’ nFG при условии, что эти сигналы выведены из интерполированных векторов 51k’ переднего плана V[k]).
[526] На Фиг. 9I показана блок-схема, демонстрирующая, более детально, блок 46 приведения коэффициентов устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 46 приведения коэффициентов может представлять блок, выполненный с возможностью осуществления приведение коэффициентов в отношении оставшихся векторов 53 переднего плана V[k] на основании информации 43 фонового канала для вывода приведенные векторы 55 переднего плана V[k] на блок 52 квантования. Приведенные векторы 55 переднего плана V[k] могут иметь размеры D: [(N+1)2-(NBG+1)2-nBGa] x nFG.
[527] Блок 46 приведения коэффициентов может включать в себя блок 228 минимизации коэффициентов, который может представлять блок, выполненный с возможностью снижения или иной минимизации размера каждого из оставшихся векторов 53 переднего плана V[k] путем удаления любых коэффициентов, учитываемых в коэффициентах 47 HOA фона (идентифицированных информацией 43 фонового канала). Блок 228 минимизации коэффициентов может удалять коэффициенты, идентифицированные информацией 43 фонового канала, для получения приведенных векторов 55 переднего плана V[k].
[528] На Фиг. 9J показана блок-схема, демонстрирующая, более детально, блок 40 психоакустического аудиокодера устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 40 психоакустического аудиокодера может представлять блок, выполненный с возможностью осуществления психоакустического кодирования в отношении коэффициентов 47’ HOA фона с компенсацией энергии и интерполированных сигналов 49’ nFG. Как показано в примере, приведенном на фиг. 9H, блок 40 психоакустического аудиокодера может вызывать множественные экземпляры психоакустических аудиокодеров 40A-40N для аудиокодирования каждого из каналов коэффициентов 47’ HOA фона с компенсацией энергии (где канал в этом контексте означает коэффициенты для всех выборок в кадре, соответствующем сферической базисной функции конкретного порядка/подпорядка) и каждый сигнал из интерполированных сигналов 49’ nFG. В некоторых примерах, блок 40 психоакустического аудиокодера представляет или иначе включает в себя (при реализации аппаратными средствами) аудиокодеры 40A-40N в достаточном количестве, чтобы по отдельности кодировать каждый канал коэффициентов 47’ HOA фона с компенсацией энергии (или nBGa плюс суммарное количество индексов (i)) и каждый сигнал из интерполированных сигналов 49’ nFG (или nFG) для всего nBGa плюс суммарное количество индексов (i) дополнительных каналов HOA окружения плюс nFG. Аудиокодеры 40A-40N могут выводить кодированные коэффициенты 59 HOA фона и кодированные сигналы 61 nFG.
[529] На Фиг. 9K показана блок-схема, демонстрирующая, более детально, блок 52 квантования устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. В примере, приведенном на фиг. 9K, блок 52 квантования включает в себя блок 230 однородного квантования, блок 232 nbits, блок 234 предсказания, блок 236 режима предсказания (“блок 236 режима предсказания”), блок 238 кодирования категории и остатка, и блок 240 выбора таблицы Хаффмана. Блок 230 однородного квантования представляет блок, выполненный с возможностью осуществления однородного квантования, описанного выше в отношении одного из пространственных компонентов (который может представлять любой из приведенных векторов 55 переднего плана V[k]). Блок 232 nbits представляет блок, выполненный с возможностью определения параметра или значения nbits.
[530] Блок 234 предсказания представляет блок, выполненный с возможностью осуществления предсказания в отношении квантованного пространственного компонента. Блок 234 предсказания может осуществлять предсказание путем осуществления поэлементного вычитания текущего одного из приведенных векторов 55 переднего плана V[k] из последующего во времени соответствующего одного из приведенных векторов 55 переднего плана V[k] (которые могут быть обозначены как приведенные векторы 55 переднего плана V[k-1]). Результат этого предсказания может именоваться предсказанным пространственным компонентом.
[531] Блок 236 режима предсказания может представлять блок, выполненный с возможностью выбора режима предсказания. Блок 240 выбора таблицы Хаффмана может представлять блок, выполненный с возможностью выбора надлежащей таблицы Хаффмана для кодирования cid. Блок 236 режима предсказания и блок 240 выбора таблицы Хаффмана могут действовать, в порядке одного примера, в соответствии со следующим псевдокодом:
Для данного nbits, извлечь все таблицы Хаффмана, имеющие nbits
B00=0; B01=0; B10=0; B11=0; // инициализировать для вычисления ожидаемых битов для каждого режима кодирования
for m=1:(количество элементов в векторе)
// вычислять ожидаемое количество битов для элемента вектора v(m)
// без предсказания и с использованием таблицы Хаффмана 5
B00=B00+calculate_bits(v(m), HT5);
// без предсказания и с использованием таблицы Хаффмана {1,2,3}
B01=B01+calculate_bits(v(m), HTq); q в {1,2,3}
// вычислять ожидаемое количество битов для остатка предсказания e(m)
e(m)=v(m) - vp(m); // vp(m): элемент вектора предыдущего кадра
// с предсказанием и с использованием таблицы Хаффмана 4
B10=B10+calculate_bits(e(m), HT4);
// с предсказанием и с использованием таблицы Хаффмана 5
B11=B11+calculate_bits(e(m), HT5);
end
// найти наилучший режим предсказания и таблицу Хаффмана, которые дают минимальное количество битов
// наилучшие режим предсказания и таблица Хаффмана помечены флагами pflag и Htflag, соответственно
[Be, id]=min( [B00 B01 B10 B11] );
Switch id
case 1: pflag=0; HTflag=0;
case 2: pflag=0; HTflag=1;
case 3: pflag=1; HTflag=0;
case 4: pflag=1; HTflag=1;
end
[532] Блок 238 кодирования категории и остатка может представлять блок, выполненный с возможностью осуществления категоризации и остаточного кодирования предсказанного пространственного компонента или квантованного пространственного компонента (когда предсказание запрещено), как более детально описано выше.
[533] Как показано в примере, приведенном на фиг. 9K, блок 52 квантования может выводить различные параметры или значения для включения либо в битовый поток 21 либо в побочную информацию (которая сама может быть битовым потоком, отдельным от битового потока 21). Предполагая, что информация указывается в информации побочного канала, блок 50 скалярного/энтропийного квантования может выводить значение nbits как значение 233 nbits, режим предсказания как режим 237 предсказания и информацию таблицы Хаффмана как информацию 241 таблицы Хаффмана на блок 42 генерации битового потока совместно со сжатой версией пространственного компонента (показанной как кодированные векторы 57 переднего плана V[k] в примере, приведенном на фиг. 4), который в этом примере может означать код Хаффмана, выбранный для кодирования cid, знакового бита и блочно кодированного остатка. Значение nbits может указываться один раз в информации побочного канала для всех кодированных векторов 57 переднего плана V[k], тогда как режим предсказания и информация таблицы Хаффмана могут указываться для каждого из кодированных векторов 57 переднего плана V[k]. Часть битового потока, которая указывает сжатую версию пространственного компонента, дополнительно показана в примере, приведенном на фиг. 10B и/или 10C.
[534] На Фиг. 9L показана блок-схема, демонстрирующая, более детально, блок 42 генерации битового потока устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 42 генерации битового потока может включать в себя блок 242 генерации информации главного канала и блок 244 генерации информации побочного канала. Блок 242 генерации информации главного канала может генерировать главный битовый поток 21, который включает в себя один или более, если не все, из индексов 205 переупорядочения, элемента 254 синтаксиса CodedSpatialInterpolationTime, элемента 255 синтаксиса SpatialInterpolationMethod, кодированных коэффициентов 59 HOA фона и кодированных сигналов 61 nFG. Блок 244 генерации информации побочного канала может представлять блок, выполненный с возможностью генерации битового потока 21B побочного канала, который может включать в себя один или более, если не все, из значения 233 nbits, режима 237 предсказания, информации 241 таблицы Хаффмана и кодированных векторов 57 переднего плана V[k]. Битовые потоки 21 и 21B могут совместно именоваться битовым потоком 21. В некоторых контекстах, битовый поток 21 может означать только битовый поток 21 главного канала, тогда как битовый поток 21B может именоваться информацией 21B побочного канала.
[535] На Фиг. 10A-10O(ii) показаны схемы, демонстрирующие участки битового потока или информации побочного канала, которая может более детально указывать сжатые пространственные компоненты. В примере, приведенном на фиг. 10A, часть 250 включает в себя поле 251 идентификатора рендеризатора (“ID рендеризатора”) и поле 252 HOADecoderConfig. Поле 251 ID рендеризатора может представлять поле, где хранится ID рендеризатора, использованный для микширования контента HOA. Поле 252 HOADecoderConfig может представлять поле, выполненное с возможностью хранения информации для инициализации пространственного декодера HOA.
[536] Поле 252 HOADecoderConfig дополнительно включает в себя поле 253 информации направленности (“информация направления”), поле 254 CodedSpatialInterpolationTime, поле 255 SpatialInterpolationMethod, поле 256 CodedVVecLength и поле 257 информации коэффициента усиления. Поле 253 информации направленности может представлять поле, где хранится информация для конфигурирования декодера синтеза на основе направления. Поле 254 CodedSpatialInterpolationTime может представлять поле, где хранятся время пространственно-временной интерполяции сигналов на векторной основе. Поле 255 SpatialInterpolationMethod может представлять поле, где хранятся указание типа интерполяции, применяемого при выполнении пространственно-временной интерполяции сигналов на векторной основе. Поле 256 CodedVVecLength может представлять поле, где хранятся длина передаваемого вектора данных, используемого для синтеза сигналов на векторной основе. Поле 257 информации коэффициента усиления представляет поле, где хранится информация, указывающая коррекцию коэффициента усиления, применяемую к сигналам.
[537] В примере, приведенном на фиг. 10B, часть 258A представляет часть канала побочной информации, где часть 258A включает в себя заголовок 259 кадра, который включает в себя поле 260 количества байтов и поле 261 Nbits. Поле 260 количества байтов может представлять поле для выражения количества байтов, включенных в кадр для указания пространственных компонентов с v1 по vn, включающих в себя нули для поля 264 побайтового выравнивания. Поле 261 Nbits представляет поле, которое может указывать значение nbits, идентифицированное для использования при снятии сжатия пространственных компонентов v1-vn.
[538] Как показано далее в примере, приведенном на фиг. 10B, часть 258A может включать в себя битовые подпотоки для v1-vn, каждый из которых включает в себя поле 262 режима предсказания, информационное поле 263 таблицы Хаффмана и соответствующий один из сжатых пространственных компонентов v1-vn. Поле 262 режима предсказания может представлять поле для хранения указания, осуществлялось ли предсказание в отношении соответствующего одного из сжатых пространственных компонентов v1-vn. Информационное поле 263 таблицы Хаффмана представляет поле для указания, по меньшей мере, частично, какая таблица Хаффмана подлежит использованию для декодирования различных аспектов соответствующего одного из сжатых пространственных компонентов v1-vn.
[539] В этом отношении, методы могут предусматривать, что устройство 20 аудиокодирования получает битовый поток, содержащий сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[540] На Фиг. 1°C показана схема, демонстрирующая альтернативный пример части 258B информации побочного канала, которая может более детально указывать сжатые пространственные компоненты. В примере, приведенном на фиг. 10C, часть 258B включает в себя заголовок 259 кадра, который включает в себя поле 261 Nbits. Поле 261 Nbits представляет поле, которое может указывать значение nbits, идентифицированное для использования при снятии сжатия пространственных компонентов v1-vn.
[541] Как показано далее в примере, приведенном на фиг. 10C, часть 258B может включать в себя битовые подпотоки для v1-vn, каждый из которых включает в себя поле 262 режима предсказания, информационное поле 263 таблицы Хаффмана и соответствующий один из сжатых пространственных компонентов v1-vn. Поле 262 режима предсказания может представлять поле для хранения указания, осуществлялось ли предсказание в отношении соответствующего одного из сжатых пространственных компонентов v1-vn. Информационное поле 263 таблицы Хаффмана представляет поле для указания, по меньшей мере, частично, какая таблица Хаффмана подлежит использованию для декодирования различных аспектов соответствующего одного из сжатых пространственных компонентов v1-vn.
[542] Поле 261 Nbits в иллюстрируемом примере включает в себя подполя A 265, B 266 и C 267. В этом примере, A 265 и B 266 являются 1-битовыми подполями, тогда как C 267 является 2-битовым подполем. Другие примеры могут включать в себя подполя 265, 266 и 267 разных размеров. Поле 265 A и поле 266 B могут представлять поля, где хранятся первый и второй старшие биты поля 261 Nbits, тогда как поле 267 C может представлять поле, где хранятся младшие биты поля 261 Nbits.
[543] Часть 258B также может включать в себя поле 268 AddAmbHoaInfoChannel. Поле 268 AddAmbHoaInfoChannel может представлять поле, где хранится информация для дополнительных коэффициентов HOA окружения. Как показано в примере, приведенном на фиг. 10C, AddAmbHoaInfoChannel 268 включает в себя поле 246 CodedAmbCoeffIdx, поле 247 AmbCoeffIdxTransition. Поле 246 CodedAmbCoeffIdx может представлять поле, где хранится индекс дополнительного коэффициента HOA окружения. Поле 247 AmbCoeffIdxTransition может представлять поле, выполненное с возможностью хранения данных, указывающих, увеличивается ли, в этом кадре, дополнительный коэффициент HOA окружения или уменьшается.
[544] На Фиг. 10C(i) показана схема, демонстрирующая альтернативный пример части 258B’ информации побочного канала, которая может более детально указывать сжатые пространственные компоненты. В примере, приведенном на фиг. 10C(i), часть 258B’ включает в себя заголовок 259 кадра, который включает в себя поле 261 Nbits. Поле 261 Nbits представляет поле, которое может указывать значение nbits, идентифицированное для использования при снятии сжатия пространственных компонентов v1-vn.
[545] Как показано далее в примере, приведенном на фиг. 10C(i), часть 258B’ может включать в себя битовые подпотоки для v1-vn, каждый из которых включает в себя информационное поле 263 таблицы Хаффмана и соответствующий один из сжатых направленных компонентов v1-vn, не включающих в себя поле 262 режима предсказания. Во всех остальных отношениях, часть 258B’ может быть аналогична части 258B.
[546] На Фиг. 10D показана схема, более детально демонстрирующая часть 258C битового потока 21. Часть 258C аналогична части 258, за исключением того, что заголовок 259 кадра и побайтовое выравнивание 264 нуля удалено, тогда как поле 261 Nbits добавлено перед каждым из битовых потоков для v1-vn, как показано в примере, приведенном на фиг. 10D.
[547] На Фиг. 10D(i) показана схема, демонстрирующая часть 258C’ битового потока 21 более детально. Часть 258C’ аналогична части 258C за исключением того, что часть 258C’ не включает в себя поле 262 режима предсказания для каждого из векторов V v1-vn.
[548] На Фиг. 10E показана схема, более детально демонстрирующая часть 258D битового потока 21. Часть 258D аналогична части 258B, за исключением того, что заголовок 259 кадра и побайтовое выравнивание 264 нуля удалено, тогда как поле 261 Nbits добавлено перед каждым из битовых потоков для v1-vn, как показано в примере, приведенном на фиг. 10E.
[549] На Фиг. 10E(i) показана схема, демонстрирующая часть 258D’ битового потока 21 более детально. Часть 258D’ аналогична части 258D за исключением того, что часть 258D’ не включает в себя поле 262 режима предсказания для каждого из векторов V v1-vn. В этом отношении, устройство 20 аудиокодирования может генерировать битовый поток 21, который не включает в себя поле 262 режима предсказания для каждого сжатого вектора V, как показано в отношении примеров, приведенных на фиг. 10C(i), 10D(i) и 10E(i).
[550] На Фиг. 10F показана схема, демонстрирующая, другим образом, часть 250 битового потока 21, показанного в примере, приведенном на фиг. 10A. Часть 250, показанная в примере, приведенном на фиг. 10D, включает в себя поле HOAOrder (которое не показано в примере, приведенном на фиг. 10F для упрощения иллюстрации), поле MinAmbHoaOrder (которое, опять же, не показано в примере, приведенном на фиг. 10 для упрощения иллюстрации), поле 253 информации направления, поле 254 CodedSpatialInterpolationTime, поле 255 SpatialInterpolationMethod, поле 256 CodedVVecLength и поле 257 информации коэффициента усиления. Как показано в примере, приведенном на фиг. 10F, поле 254 CodedSpatialInterpolationTime может содержать трехбитовое поле, поле 255 SpatialInterpolationMethod может содержать однобитовое поле, и поле 256 CodedVVecLength может содержать двухбитовое поле.
[551] На Фиг. 10G показана схема, более детально демонстрирующая часть 248 битового потока 21. Часть 248 представляет трехмерную (3D) полезную нагрузку унифицированного речевого/аудиокодера (USAC), включающую в себя поле 249 HOAFrame (которое также может быть обозначено как побочная информация, информация побочного канала или битовый поток побочного канала). Как показано в примере, приведенном на фиг. 10E, увеличенный вид поля 249 HOAFrame может быть аналогичен части 258B битового потока 21, показанного в примере, приведенном на фиг. 10C. “ChannelSideInfoData” включает в себя поле 269 ChannelType, которое не показано в примере, приведенном на фиг. 1°C для упрощения иллюстрации, поле 265 A, обозначенное как “ba” в примере, приведенном на фиг. 10E, поле 266 B, обозначенное как “bb” в примере, приведенном на фиг. 10E, и поле 267 C обозначенное как “unitC” в примере, приведенном на фиг. 10E. Поле ChannelType указывает, является ли канал сигналом на основе направления, сигналом на векторной основе или дополнительным коэффициентом HOA окружения. Между разными ChannelSideInfoData присутствуют поля 268 AddAmbHoaInfoChannel, где разные битовые потоки вектора V обозначены серым (например, “битовый поток для v1” и “битовый поток для v2”).
[552] На Фиг. 10H-10O(ii) показаны схемы, более детально демонстрирующие другие различные примерные участки 248H-248O битового потока 21 совместно с сопутствующими участками 250H-250O HOAconfig. Фиг. 10H(i) и 10H(ii) иллюстрируют первый пример битового потока 248H и сопутствующую часть 250H конфигурации HOA, сгенерированной в соответствии со случаем 0 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10H(i), часть 250H HOAconfig включает в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, например, все 16 элементов вектора V. Часть 250H HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250H HOAconfig кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256. Часть 250H HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. Часть 250H HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[553] Как показано далее в примере, приведенном на фиг. 10H(i), часть 248H включает в себя унифицированный трехмерный (USAC-3D) кадр аудио речевого и аудиокодирования (USAC), в котором два кадра HOA 249A и 249B хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[554] Фиг. 10H(ii) более детально демонстрирует кадры 249A и 249B. Как показано в примере, приведенном на фиг. 10H(ii), кадр 249A включает в себя поля 154-154C ChannelSideInfoData (CSID), поля HOAGainCorrectionData (HOAGCD), поля 156 и 156B VVectorData и поля HOAPredictionInfo. Поле 154 CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10H(i). Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10H(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3. Каждое из полей 154-154C CSID соответствует соответствующему одному из транспортных каналов 1, 2 и 3. Фактически, каждое поле 154-154C CSID указывает, является ли соответствующая полезная нагрузка 156 и 156B сигналами на основе направления (когда соответствующий ChannelType равен нулю), сигналами на векторной основе (когда соответствующий ChannelType равен единице), дополнительным коэффициентом HOA окружения (когда соответствующий ChannelType равен двум), или пустым (когда ChannelType равен трем).
[555] В примере, приведенном на фиг. 10H(ii), кадр 249A включает в себя два сигнала на векторной основе (при условии, что ChannelType 269 равен 1 в полях 154 и 154B CSID) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250H HOAconfig, устройство 24 аудиодекодирования может определить, что кодированы все 16 элементов вектора V. Поэтому каждый VVectorData 156 и 156B включает в себя все 16 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано одной звездочкой (*),схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[556] В кадре 249B, поля 154 и 154B CSID такие же, как в кадре 249, тогда как поле 154C CSID кадра 249B переключается на ChannelType, равный единице. Таким образом, поле 154C CSID кадра 249B включает в себя Cbflag 267, Pflag 267 (указывающий хаффмановское кодирование) и Nbits 261 (равный двенадцати). В результате, кадр 249B включает в себя третье поле 156C VvectorData, которое включает в себя 16 элементов вектора V, каждый из которых однородно квантуются 12 битами и кодируется по Хаффману. Как упомянуто выше, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0, тогда как схема кодирования Хаффмана сигнализируется посредством NbitsQ=12, CbFlag=0 и Pflag=0 в поле 154C CSID для этого конкретного транспортного канала (например, транспортного канала № 3).
[557] Примеры, приведенные на фиг. 10I(i) и 10I(ii) иллюстрируют второй пример битового потока 248I и сопутствующей части 250I конфигурации HOA, сгенерированной в соответствии со случаем 0 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10I(i), часть 250I HOAconfig включает в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, например, все 16 элементов вектора V. Часть 250I HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250I HOAconfig кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256.
[558] Часть 250I HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса MaxNoOfAddActiveAmbCoeffs как заданный равным разности между элементом синтаксиса NumOfHoaCoeff и MinNumOfCoeffsForAmbHOA, который предполагается в этом примере равным 16-4 или 12. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса AmbAsignmBits как заданный равным ceil(log2(MaxNoOfAddActiveAmbCoeffs))=ceil(log2(12))=4. Часть 250H HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[559] Как показано далее в примере, приведенном на фиг. 10I(i), часть 248H включает в себя кадр аудио USAC-3D, в котором два кадра HOA 249C и 249D хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[560] Фиг. 10I(ii) более детально демонстрирует кадры 249C и 249D. Как показано в примере, приведенном на фиг. 10I(ii), кадр 249C включает в себя поля 154-154C CSID и поля 156 VVectorData. Поле 154 CSID включает в себя CodedAmbCoeffIdx 246, AmbCoeffIdxTransition 247 (где двойная звездочка (**) указывает, что, для адаптивного транспортного канала № 1, внутреннее состояние декодера предполагается здесь равным AmbCoeffIdxTransitionState=2, в результате чего битовое поле CodedAmbCoeffIdx сигнализируется или иначе указывается в битовом потоке), и ChannelType 269 (который равен двум, сигнализирующий, что соответствующая полезная нагрузка является дополнительным коэффициентом HOA окружения). Устройство 24 аудиодекодирования может выводить AmbCoeffIdx равным CodedAmbCoeffIdx+1+MinNumOfCoeffsForAmbHOA или 5 в этом примере. Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10I(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3.
[561] В примере, приведенном на фиг. 10I(ii), кадр 249C включает в себя единичный сигнал на векторной основе (при условии, что ChannelType 269 равен 1 в полях CSID 154B) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250I HOAconfig, устройство 24 аудиодекодирования может определить, что кодированы все 16 элементов вектора V. Поэтому VvectorData 156 включает в себя все 16 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано сноской 2, схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[562] В кадре 249D, поле 154 CSID включает в себя AmbCoeffIdxTransition 247, указывающий, что перехода не произошло, и, таким образом, CodedAmbCoeffIdx 246 можно вывести из предыдущего кадра и не нужно повторно сигнализировать или иначе указывать. Поля 154B и 154C CSID кадра 249D такие же, как для кадра 249C и, таким образом, как и кадр 249C, кадр 249D включает в себя единичное поле 156 VVectorData, которое включает в себя все 16 элементов вектора, каждый из которых однородно квантуются 8 битами.
[563] Фиг. 10J(i) и 10J(ii) иллюстрируют первый пример битового потока 248J и сопутствующей части 250J конфигурации HOA, сгенерированной в соответствии со случаем 1 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10J(i), часть 250J HOAconfig включает в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, за исключением элементов от 1 до элементов синтаксиса MinNumOfCoeffsForAmbHOA и элементов, указанных в элементе синтаксиса ContAddAmbHoaChan (предполагается равным нулю в этом примере). Часть 250J HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250J HOAconfig кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256. Часть 250J HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. Часть 250J HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[564] Как показано далее в примере, приведенном на фиг. 10J(i), часть 248J включает в себя кадр аудио USAC-3D, в котором два кадра HOA 249E и 249F хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[565] Фиг. 10J(ii) более детально демонстрирует кадры 249E и 249F. Как показано в примере, приведенном на фиг. 10J(ii), кадр 249E включает в себя поля 154-154C CSID и поля 156 и 156B VVectorData. Поле 154 CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10J(i). Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10J(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3. Каждое из полей 154-154C CSID соответствует соответствующему одному из транспортных каналов 1, 2 и 3.
[566] В примере, приведенном на фиг. 10J(ii), кадр 249E включает в себя два сигнала на векторной основе (при условии, что ChannelType 269 равен 1 в полях 154 и 154B CSID) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250H HOAconfig, устройство 24 аудиодекодирования может определить, что все 12 элементов вектора V кодируются (где 12 выводится как (HOAOrder+1)2 - (MinNumOfCoeffsForAmbHOA) - (ContAddAmbHoaChan)=16-4-0=12). Поэтому каждый VVectorData 156 и 156B включает в себя все 12 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано одной звездочкой (*), схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[567] В кадре 249F, поля 154 и 154B CSID такие же, как в кадре 249E, тогда как поле 154C CSID кадра 249F переключается на ChannelType, равный единице. Таким образом, поле 154C CSID кадра 249B включает в себя Cbflag 267, Pflag 267 (указывающий хаффмановское кодирование) и Nbits 261 (равный двенадцати). В результате, кадр 249F включает в себя третье поле 156C VvectorData, которое включает в себя 12 элементов вектора V, каждый из которых однородно квантуются 12 битами и кодируется по Хаффману. Как упомянуто выше, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0, тогда как схема кодирования Хаффмана сигнализируется посредством NbitsQ=12, CbFlag=0 и Pflag=0 в поле 154C CSID для этого конкретного транспортного канала (например, транспортного канала № 3).
[568] Пример, приведенный на фиг. 10K(i) и 10K(ii) иллюстрируют второй пример битового потока 248K и сопутствующей части 250K конфигурации HOA, сгенерированной в соответствии со случаем 1 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10K(i), участки 250K HOAconfig включают в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, за исключением элементов от 1 до элементов синтаксиса MinNumOfCoeffsForAmbHOA и элементов, указанных в элементе синтаксиса ContAddAmbHoaChan (предполагается равным единице в этом примере). Часть 250K HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250K HOAconfig, кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256.
[569] Часть 250K HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса MaxNoOfAddActiveAmbCoeffs как заданный равным разности между элементом синтаксиса NumOfHoaCoeff и MinNumOfCoeffsForAmbHOA, который предполагается в этом примере равным 16-4 или 12. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса AmbAsignmBits как заданный равным ceil(log2(MaxNoOfAddActiveAmbCoeffs))=ceil(log2(12))=4. Часть 250K HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[570] Как показано далее в примере, приведенном на фиг. 10K(i), часть 248K включает в себя кадр аудио USAC-3D, в котором два кадра 249G и 249H HOA хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[571] Фиг. 10K(ii) более детально демонстрирует кадры 249G и 249H. Как показано в примере, приведенном на фиг. 10K(ii), кадр 249G включает в себя поля 154-154C CSID и поля 156 VVectorData. Поле 154 CSID включает в себя CodedAmbCoeffIdx 246, AmbCoeffIdxTransition 247 (где двойная звездочка (**) указывает, что, для адаптивного транспортного канала № 1, внутреннее состояние декодера предполагается здесь равным AmbCoeffIdxTransitionState=2, в результате чего битовое поле CodedAmbCoeffIdx сигнализируется или иначе указывается в битовом потоке), и ChannelType 269 (который равен двум, сигнализирующий, что соответствующая полезная нагрузка является дополнительным коэффициентом HOA окружения). Устройство 24 аудиодекодирования может выводить AmbCoeffIdx равным CodedAmbCoeffIdx+1+MinNumOfCoeffsForAmbHOA или 5 в этом примере. Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10K(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3.
[572] В примере, приведенном на фиг. 10K(ii), кадр 249G включает в себя единичный сигнал на векторной основе (при условии, что ChannelType 269 равен 1 в полях CSID 154B) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250K HOAconfig, устройство 24 аудиодекодирования может определить, что 11 элементов вектора V кодируются (где 12 выводится как (HOAOrder+1)2 - (MinNumOfCoeffsForAmbHOA) - (ContAddAmbHoaChan)=16-4-1=11). Поэтому VvectorData 156 включает в себя все 11 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано сноской 2, схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[573] В кадре 249H, поле 154 CSID включает в себя AmbCoeffIdxTransition 247, указывающий, что перехода не произошло, и, таким образом, CodedAmbCoeffIdx 246 можно вывести из предыдущего кадра и не нужно повторно сигнализировать или иначе указывать. Поля 154B и 154C CSID кадра 249H такие же, как для кадра 249G и, таким образом, как и кадр 249G, кадр 249H включает в себя единичное поле 156 VVectorData, которое включает в себя 11 элементов вектора, каждый из которых однородно квантуются 8 битами.
[574] Фиг. 10L(i) и 10L(ii) иллюстрируют первый пример битового потока 248L и сопутствующей части 250L конфигурации HOA, сгенерированной в соответствии со случаем 2 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10L(i), часть 250L HOAconfig включает в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, за исключением элементов от нулевого порядка до порядка, указанного элементом 150 синтаксиса MinAmbHoaOrder (который равен (HoaOrder+1)2 - (MinAmbHoaOrder+1)2=16-4=12 в этом примере). Часть 250L HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250L HOAconfig кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256. Часть 250L HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. Часть 250L HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[575] Как показано далее в примере, приведенном на фиг. 10L(i), часть 248L включает в себя кадр аудио USAC-3D, в котором два кадра 249I и 249J HOA хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[576] Фиг. 10L(ii) более детально демонстрирует кадры 249I и 249J. Как показано в примере, приведенном на фиг. 10L(ii), кадр 249I включает в себя поля 154-154C CSID и поля 156 и 156B VVectorData. Поле 154 CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10J(i). Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10L(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3. Каждое из полей 154-154C CSID соответствует соответствующему одному из транспортных каналов 1, 2 и 3.
[577] В примере, приведенном на фиг. 10L(ii), кадр 249I включает в себя два сигнала на векторной основе (при условии, что ChannelType 269 равен 1 в полях 154 и 154B CSID) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250H HOAconfig, устройство 24 аудиодекодирования может определить, что 12 элементов вектора V кодируются. Поэтому каждый VVectorData 156 и 156B включает в себя 12 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано одной звездочкой (*),схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[578] В кадре 249J, поля 154 и 154B CSID такие же, как в кадре 249I, тогда как поле 154C CSID кадра 249F переключается на ChannelType, равный единице. Таким образом, поле 154C CSID кадра 249B включает в себя Cbflag 267, Pflag 267 (указывающий хаффмановское кодирование) и Nbits 261 (равный двенадцати). В результате, кадр 249F включает в себя третье поле 156C VvectorData, которое включает в себя 12 элементов вектора V, каждый из которых однородно квантуются 12 битами и кодируется по Хаффману. Как упомянуто выше, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0, тогда как схема кодирования Хаффмана сигнализируется посредством NbitsQ=12, CbFlag=0 и Pflag=0 в поле 154C CSID для этого конкретного транспортного канала (например, транспортного канала № 3).
[579] Пример, приведенный на фиг. 10M(i) и 10M(ii) иллюстрируют второй пример битового потока 248M и сопутствующей части 250M конфигурации HOA, сгенерированной в соответствии со случаем 2 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10M(i), часть 250M HOAconfig включает в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, за исключением элементов от нулевого порядка до порядка, указанного элементом 150 синтаксиса MinAmbHoaOrder (который равен (HoaOrder+1)2 - (MinAmbHoaOrder+1)2=16-4=12 в этом примере). Часть 250M HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250M HOAconfig кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256.
[580] Часть 250M HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса MaxNoOfAddActiveAmbCoeffs как заданный равным разности между элементом синтаксиса NumOfHoaCoeff и MinNumOfCoeffsForAmbHOA, который предполагается в этом примере равным 16-4 или 12. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса AmbAsignmBits как заданный равным ceil(log2(MaxNoOfAddActiveAmbCoeffs))=ceil(log2(12))=4. часть 250M HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[581] Как показано далее в примере, приведенном на фиг. 10M(i), часть 248M включает в себя кадр аудио USAC-3D, в котором два кадра 249K и 249L HOA хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[582] Фиг. 10M(ii) более детально демонстрирует кадры 249K и 249L. Как показано в примере, приведенном на фиг. 10M(ii), кадр 249K включает в себя поля 154-154C CSID и поле 156 VVectorData. Поле 154 CSID включает в себя CodedAmbCoeffIdx 246, AmbCoeffIdxTransition 247 (где двойная звездочка (**) указывает, что, для адаптивного транспортного канала № 1, внутреннее состояние декодера предполагается здесь равным AmbCoeffIdxTransitionState=2, в результате чего битовое поле CodedAmbCoeffIdx сигнализируется или иначе указывается в битовом потоке), и ChannelType 269 (который равен двум, сигнализирующий, что соответствующая полезная нагрузка является дополнительным коэффициентом HOA окружения). Устройство 24 аудиодекодирования может выводить AmbCoeffIdx равным CodedAmbCoeffIdx+1+MinNumOfCoeffsForAmbHOA или 5 в этом примере. Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10M(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3.
[583] В примере, приведенном на фиг. 10M(ii), кадр 249K включает в себя единичный сигнал на векторной основе (при условии, что ChannelType 269 равен 1 в полях CSID 154B) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250M HOAconfig, устройство 24 аудиодекодирования может определить, что 12 элементов вектора V кодируются. Поэтому VvectorData 156 включает в себя 12 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано сноской 2, схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[584] В кадре 249L, поле 154 CSID включает в себя AmbCoeffIdxTransition 247, указывающий, что перехода не произошло, и, таким образом, CodedAmbCoeffIdx 246 можно вывести из предыдущего кадра и не нужно повторно сигнализировать или иначе указывать. Поля 154B и 154C CSID кадра 249L такие же, как для кадра 249K и, таким образом, как и кадр 249K, кадр 249L включает в себя единичное поле 156 VVectorData, которое включает в себя 12 элементов вектора, каждый из которых однородно квантуются 8 битами.
[585] Фиг. 10N(i) и 10N(ii) иллюстрируют первый пример битового потока 248N и сопутствующей части 250N конфигурации HOA, сгенерированной в соответствии со случаем 3 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10N(i), часть 250N HOAconfig включает в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, за исключением элементов, указанных в элементе синтаксиса ContAddAmbHoaChan (который предполагается равным нулю в этом примере). Часть 250N HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250N HOAconfig кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256. Часть 250N HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. часть 250N HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[586] Как показано далее в примере, приведенном на фиг. 10N(i), часть 248N включает в себя кадр аудио USAC-3D, в котором два кадра HOA 249M и 249N хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[587] Фиг. 10N(ii) более детально демонстрирует кадры 249M и 249N. Как показано в примере, приведенном на фиг. 10N(ii), кадр 249M включает в себя поля 154-154C CSID и поля 156 и 156B VVectorData. Поле 154 CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10J(i). Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10N(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3. Каждое из полей 154-154C CSID соответствует соответствующему одному из транспортных каналов 1, 2 и 3.
[588] В примере, приведенном на фиг. 10N(ii), кадр 249M включает в себя два сигнала на векторной основе (при условии, что ChannelType 269 равен 1 в полях 154 и 154B CSID) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250M HOAconfig, устройство 24 аудиодекодирования может определить, что 16 элементов вектора V кодируются. Поэтому каждый VVectorData 156 и 156B включает в себя 16 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано одной звездочкой (*), схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[589] В кадре 249N, поля 154 и 154B CSID такие же, как в кадре 249M, тогда как поле 154C CSID кадра 249F переключается на ChannelType, равный единице. Таким образом, поле 154C CSID кадра 249B включает в себя Cbflag 267, Pflag 267 (указывающий хаффмановское кодирование) и Nbits 261 (равный двенадцати). В результате, кадр 249F включает в себя третье поле 156C VvectorData, которое включает в себя 16 элементов вектора V, каждый из которых однородно квантуются 12 битами и кодируется по Хаффману. Как упомянуто выше, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0, тогда как схема кодирования Хаффмана сигнализируется посредством NbitsQ=12, CbFlag=0 и Pflag=0 в поле 154C CSID для этого конкретного транспортного канала (например, транспортного канала № 3).
[590] Пример, приведенный на фиг. 10O(i) и 10O(ii) иллюстрируют второй пример битового потока 248O и сопутствующей части 250O конфигурации HOA, сгенерированной в соответствии со случаем 3 в вышеприведенном псевдокоде. В примере, приведенном на фиг. 10O(i), часть 250O HOAconfig включает в себя элемент 256 синтаксиса CodedVVecLength, заданный для указания, что кодированы все элементы вектора V, за исключением элементов, указанных в элементе синтаксиса ContAddAmbHoaChan (который предполагается равным единице в этом примере). Часть 250O HOAconfig также включает в себя элемент 255 синтаксиса SpatialInterpolationMethod, заданный для указания, что интерполяционной функцией пространственно-временной интерполяции является приподнятый косинус. Часть 250O HOAconfig, кроме того, включает в себя CodedSpatialInterpolationTime 254, заданный для указания интерполированной длительности выборки равной 256.
[591] Ччасть 250O HOAconfig дополнительно включает в себя элемент 150 синтаксиса MinAmbHoaOrder заданный для указания, что порядок MinimumHOA контента HOA окружения равен единице, где устройство 24 аудиодекодирования может выводить элемент синтаксиса MinNumOfCoeffsForAmbHOA равным (1+1)2 или четырем. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса MaxNoOfAddActiveAmbCoeffs как заданный равным разности между элементом синтаксиса NumOfHoaCoeff и MinNumOfCoeffsForAmbHOA, который предполагается в этом примере равным 16-4 или 12. Устройство 24 аудиодекодирования также может выводить элемент синтаксиса AmbAsignmBits как заданный равным ceil(log2(MaxNoOfAddActiveAmbCoeffs))=ceil(log2(12))=4. часть 250O HOAconfig включает в себя элемент 152 синтаксиса HoaOrder, заданный для указания порядка HOA контента равным трем (или, другими словами, N=3), где устройство 24 аудиодекодирования может выводить NumOfHoaCoeffs равным (N+1)2 или 16.
[592] Как показано далее в примере, приведенном на фиг. 10O(i), часть 248O включает в себя кадр аудио USAC-3D, в котором два кадра 249O и 249P HOA хранятся в полезной нагрузке расширения USAC при условии, что два кадра аудио хранятся в одном кадре USAC-3D, когда разрешено дублирование спектральной полосы (SBR). Устройство 24 аудиодекодирования может выводить количество адаптивных транспортных каналов как функцию элемента синтаксиса numHOATransportChannels и элемента синтаксиса MinNumOfCoeffsForAmbHOA. В нижеследующих примерах, предполагается, что элемент синтаксиса numHOATransportChannels равен 7, и элемент синтаксиса MinNumOfCoeffsForAmbHOA равен четырем, где количество адаптивных транспортных каналов равно элементу синтаксиса numHOATransportChannels минус элемент синтаксиса MinNumOfCoeffsForAmbHOA (или трем).
[593] Фиг. 10O(ii) более детально демонстрирует кадры 249O и 249P. Как показано в примере, приведенном на фиг. 10O(ii), кадр 249O включает в себя поля 154-154C CSID и поле 156 VVectorData. Поле 154 CSID включает в себя CodedAmbCoeffIdx 246, AmbCoeffIdxTransition 247 (где двойная звездочка (**) указывает, что, для адаптивного транспортного канала № 1, внутреннее состояние декодера предполагается здесь равным AmbCoeffIdxTransitionState=2, в результате чего битовое поле CodedAmbCoeffIdx сигнализируется или иначе указывается в битовом потоке), и ChannelType 269 (который равен двум, сигнализирующий, что соответствующая полезная нагрузка является дополнительным коэффициентом HOA окружения). Устройство 24 аудиодекодирования может выводить AmbCoeffIdx равным CodedAmbCoeffIdx+1+MinNumOfCoeffsForAmbHOA или 5 в этом примере. Поле 154B CSID включает в себя unitC 267, bb 266 и ba265 совместно с ChannelType 269, каждое из которых задано равным соответствующим значениям 01, 1, 0 и 01, показанным в примере, приведенном на фиг. 10O(ii). Поле 154C CSID включает в себя поле 269 ChannelType, имеющее значение 3.
[594] В примере, приведенном на фиг. 10O(ii), кадр 249O включает в себя единичный сигнал на векторной основе (при условии, что ChannelType 269 равен 1 в полях CSID 154B) и пуст (при условии, что ChannelType 269 равен 3 в полях 154C CSID). С учетом вышеуказанной части 250O HOAconfig, устройство 24 аудиодекодирования может определить, что 16 минус один, указанный элементом синтаксиса ContAddAmbHoaChan (например, когда элемент вектора, связанный с индексом 6, указывается как элемент синтаксиса ContAddAmbHoaChan) или 15 элементов вектора V кодируются. Поэтому VvectorData 156 включает в себя 15 элементов вектора, каждый из которых однородно квантуются 8 битами. Как указано сноской 1, количество и индексы кодированных элементов VVectorData задаются параметром CodedVVecLength=0. Кроме того, как указано сноской 2, схема кодирования сигнализируется посредством NbitsQ=5 в поле CSID для соответствующего транспортного канала.
[595] В кадре 249P, поле 154 CSID включает в себя AmbCoeffIdxTransition 247, указывающий, что перехода не произошло, и, таким образом, CodedAmbCoeffIdx 246 можно вывести из предыдущего кадра и не нужно повторно сигнализировать или иначе указывать. Поля 154B и 154C CSID кадра 249P такие же, как для кадра 249O и, таким образом, как и кадр 249O, кадр 249P включает в себя единичное поле 156 VVectorData, которое включает в себя 15 элементов вектора, каждый из которых однородно квантуются 8 битами.
[596] На Фиг. 11A-11G показаны блок-схемы, демонстрирующие, более детально, различные блоки устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. На Фиг. 11A показана блок-схема, демонстрирующая, более детально, блок 72 извлечения устройства 24 аудиодекодирования. Как показано в примере, приведенном на фиг. 11A, блок 72 извлечения может включать в себя блок 270 вычленения режима, блок 272 конфигурирования режима (“блок 272 конфигурирования режима”), и блок 274 конфигурируемого извлечения.
[597] Блок 270 вычленения режима может представлять блок, выполненный с возможностью вычленения вышеупомянутого элемента синтаксиса, указывающего режим кодирования (например, элемент синтаксиса ChannelType, показанный в примере, приведенном на фиг. 10E), используемый для кодирования коэффициентов 11 HOA для формирования битового потока 21. Блок 270 вычленения режима может передавать определенный элемент синтаксиса на блок 272 конфигурирования режима. Блок 272 конфигурирования режима может представлять блок, выполненный с возможностью конфигурирования блока 274 конфигурируемого извлечения на основании вычлененного элемента синтаксиса. Блок 272 конфигурирования режима может конфигурировать блок 274 конфигурируемого извлечения для извлечения кодированного представления коэффициентов 11 HOA на основе направления из битового потока 21 или извлечения кодированного представления коэффициентов 11 HOA на векторной основе из битового потока 21 на основании вычлененного элемента синтаксиса.
[598] Когда кодирование на основе направления осуществлено, блок 274 конфигурируемого извлечения может извлекать версию на основе направления коэффициентов 11 HOA и элементы синтаксиса, связанные с этой кодированной версией (которая обозначается как информация 91 на основе направления в примере, приведенном на фиг. 11A). Эта информация 91 на основе направления может включать в себя информацию 253 направленности, показанную в примере, приведенном на фиг. 10D, и SideChannelInfoData на основе направления, показанный в примере, приведенном на фиг. 10E, заданный посредством ChannelType равного нулю.
[599] Когда элемент синтаксиса указывает, что коэффициенты 11 HOA были кодированы с использованием синтеза на векторной основе (например, когда элемент синтаксиса ChannelType равен единице), блок 274 конфигурируемого извлечения может извлекать кодированные векторы 57 переднего плана V[k], кодированные коэффициенты 59 HOA окружения и кодированные сигналы 59 nFG. Блок 274 конфигурируемого извлечения также может, определив, что элемент синтаксиса указывает, что коэффициенты 11 HOA были кодированы с использованием синтеза на векторной основе, извлекать элемент 254 синтаксиса CodedSpatialInterpolationTime и элемент 255 синтаксиса SpatialInterpolationMethod из битового потока 21, передавая эти элементы 254 и 255 синтаксиса на блок 76 пространственно-временной интерполяции.
[600] На Фиг. 11B показана блок-схема, демонстрирующая, более детально, блок 74 квантования устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. Блок 74 квантования может представлять блок, выполненный с возможностью действовать в режиме, обратном блоку 52 квантования, показанному в примере, приведенном на фиг. 4, чтобы энтропийно декодировать и деквантовать кодированные векторы 57 переднего плана V[k] и, таким образом, генерировать приведенные векторы 55k переднего плана V[k]. Блок скалярного/энтропийного деквантования 984 может включать в себя блок 276 декодирования категории/остатка, блок 278 предсказания и блок 280 однородного деквантования.
[601] Блок 276 декодирования категории/остатка может представлять блок, выполненный с возможностью осуществления хаффмановское декодирование в отношении кодированных векторов 57 переднего плана V[k] с использованием таблицы Хаффмана, идентифицированной информацией 241 таблицы Хаффмана (которая, как упомянуто выше, выражается как элемент синтаксиса в битовом потоке 21). Блок 276 декодирования категории/остатка может выводить квантованные векторы переднего плана V[k] на блок 278 предсказания. Блок 278 предсказания может представлять блок, выполненный с возможностью осуществления предсказания в отношении квантованных векторов переднего плана V[k] на основании режима 237 предсказания, выводя дополненные квантованные векторы переднего плана V[k] на блок 280 однородного деквантования. Блок 280 однородного деквантования может представлять блок, выполненный с возможностью осуществления деквантования в отношении дополненных квантованных векторов переднего плана V[k] на основании значения 233 nbits, выводя приведенные векторы 55k переднего плана V[k]
[602] На Фиг. 11C показана блок-схема, демонстрирующая, более детально, блок 80 психоакустического декодирования устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. Как упомянуто выше, блок 80 психоакустического декодирования может действовать в режиме, обратном блоку 40 психоакустического аудиокодирования, показанному в примере, приведенном на фиг. 4, чтобы декодировать кодированные коэффициенты 59 HOA окружения и кодированные сигналы 61 nFG и, таким образом, генерировать коэффициенты 47’ HOA окружения с компенсацией энергии и интерполированных сигналов 49’ nFG (которые также могут именоваться интерполированными аудиообъектами 49’ nFG). Блок 80 психоакустического декодирования может передавать коэффициенты 47’ HOA окружения с компенсацией энергии на блок 82 формирования коэффициентов HOA и сигналы 49’ nFG на блок 84 переупорядочения. Блок 80 психоакустического декодирования может включать в себя множество аудиодекодеров 80-80N, по аналогии с блоком 40 психоакустического аудиокодирования. Аудиодекодеры 80-80N могут быть реализованы или иначе включены в блок 40 психоакустического аудиокодирования в достаточном количестве для поддержки, как упомянуто выше, одновременное декодирование каждого канала коэффициентов 47’ HOA фона и каждого сигнала из сигналов 49’ nFG.
[603] На Фиг. 11D показана блок-схема, демонстрирующая, более детально, блок 84 переупорядочения устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. Блок 84 переупорядочения может представлять блок, выполненный с возможностью действовать аналогично обратному описанному выше в отношении блока 34 переупорядочения. Блок 84 переупорядочения может включать в себя блок 282 переупорядочения векторов, который может представлять блок, выполненный с возможностью приема элементов 205 синтаксиса, указывающих исходный порядок компонентов переднего плана коэффициентов 11 HOA. Блок 72 извлечения может вычленять эти элементы 205 синтаксиса из битового потока 21 и передавать элемент 205 синтаксиса на блок 84 переупорядочения. Блок 282 переупорядочения векторов может, на основании этих элементов 205 синтаксиса переупорядочения, переупорядочивать интерполированные сигналы 49’ nFG и приведенные векторы 55k переднего плана V[k] для генерации переупорядоченных сигналов 49’’ nFG и переупорядоченных векторов 55k’ переднего плана V[k]. Блок 84 переупорядочения может выводить переупорядоченные сигналы 49’’ nFG на блок 78 формирования переднего плана и переупорядоченные векторы 55k’ переднего плана V[k] на блок 76 пространственно-временной интерполяции.
[604] На Фиг. 11E показана блок-схема, демонстрирующая, более детально, блок 76 пространственно-временной интерполяции устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. Блок 76 пространственно-временной интерполяции может действовать аналогично описанному выше в отношении блока 50 пространственно-временной интерполяции. Блок 76 пространственно-временной интерполяции может включать в себя блок 284 интерполяции V, который может представлять блок, выполненный с возможностью приема переупорядоченных векторов 55k’ переднего плана V[k] и осуществления пространственно-временной интерполяции в отношении переупорядоченных векторов 55k’ переднего плана V[k] и переупорядоченных векторов 55k-1’ переднего плана V[k-1] для генерации интерполированных векторов 55k’’ переднего плана V[k]. Блок 284 интерполяции V может осуществлять интерполяцию на основании элемента 254 синтаксиса CodedSpatialInterpolationTime и элемента 255 синтаксиса SpatialInterpolationMethod. В некоторых примерах, блок 285 интерполяции V может интерполировать векторы V на протяжении длительности, указанной элементом 254 синтаксиса CodedSpatialInterpolationTime с использованием типа интерполяции, идентифицированного элементом 255 синтаксиса SpatialInterpolationMethod. Блок 76 пространственно-временной интерполяции может пересылать интерполированные векторы 55k’’ переднего плана V[k] на блок 78 формирования переднего плана.
[605] На Фиг. 11F показана блок-схема, демонстрирующая, более детально, блок 78 формирования переднего плана устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. Блок 78 формирования переднего плана может включать в себя блок 286 умножения, который может представлять блок, выполненный с возможностью осуществления матричного умножения в отношении интерполированных векторов 55k’’ переднего плана V[k] и переупорядоченных сигналов 49’’ nFG для генерации коэффициентов 65 HOA переднего плана.
[606] На Фиг. 11G показана блок-схема, демонстрирующая, более детально, блок 82 формирования коэффициентов HOA устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. Блок 82 формирования коэффициентов HOA может включать в себя блок 288 сложения, который может представлять блок, выполненный с возможностью прибавления коэффициентов 65 HOA переднего плана к каналам 47’ HOA окружения для получения коэффициентов 11’ HOA.
[607] На Фиг. 12 показана схема, демонстрирующая пример аудио-экосистемы, которая может осуществлять различные аспекты методов, описанных в этом изобретении. Как показано на фиг. 12, аудио-экосистема 300 может включать в себя захват 301, редактирование 302, кодирование 303, передачу 304 и воспроизведение 305.
[608] Захват 301 может представлять методы аудио-экосистемы 300, где захватывается аудиоконтент. Примеры захвата 301 включают в себя, но без ограничения запись звука (например, живого звука), генерацию аудиосигнала (например, аудиообъектов, создание шумовых эффектов, синтез звука, имитации), и пр. В некоторых примерах, звук может записываться на концертах, спортивных соревнованиях, и при проведении наблюдения. В некоторых примерах, аудиосигнал может генерироваться при осуществлении имитаций, и авторинга/микширования (например, фильмов, игр). Аудиообъекты могут использоваться в Голливуде (например, студиях IMAX). В некоторых примерах, захват 301 может осуществляться создателем контента, например, создателем 12 контента, показанным на фиг. 3.
[609] Редактирование 302 может представлять методы аудио-экосистемы 300, где аудиоконтент редактируется и/или модифицируется. В порядке одного примера, аудиоконтент может редактироваться путем объединения множественных блоков аудиоконтента в единый блок аудиоконтента. В порядке другого примера, аудиоконтент может редактироваться путем регулировки фактического аудиоконтента (например, регулировки уровней одного или более частотных компонентов аудиоконтента). В некоторых примерах, редактирование 302 может осуществляться системой аудиоредактирования, например, системой 18 аудиоредактирования, показанной на фиг. 3. В некоторых примерах, редактирование 302 можно осуществлять на мобильном устройстве, например, одном или более из мобильных устройств, представленных на фиг. 29.
[610] Кодирование, 303 может представлять методы аудио-экосистемы 300, где аудиоконтент кодируется в представление аудиоконтента. В некоторых примерах, представлением аудиоконтента может быть битовый поток, например, битовый поток 21, показанный на фиг. 3. В некоторых примерах, кодирование 302 можно осуществлять устройством аудиокодирования, например устройством 20 аудиокодирования, показанным на фиг. 3.
[611] Передача 304 может представлять элементы аудио-экосистемы 300, где аудиоконтент переносится от создателя контента к потребителю контента. В некоторых примерах, аудиоконтент может переноситься в реальном времени или почти в реальном времени. Например, аудиоконтент может передаваться в потоке потребителю контента. В некоторых примерах, аудиоконтент может переноситься путем кодирования аудиоконтента в носители, например, считываемый компьютером носитель данных. Например, аудиоконтент могут сохраняться на диске, приводе, и пр. (например, диске Blu-ray, карте памяти, жестком диске и т.д.)
[612] Воспроизведение 305 может представлять методы аудио-экосистемы 300, где аудиоконтент рендеризуется и воспроизводится потребителю контента. В некоторых примерах, воспроизведение 305 может включать в себя рендеризацию 3D звукового поля на основании одного или более аспектов среды воспроизведения. Другими словами, воспроизведение 305 могут базироваться на локальном акустическом ландшафте.
[613] На Фиг. 13 показана схема, более детально демонстрирующая один пример аудио-экосистемы, показанной на фиг. 12. Как показано на фиг. 13, аудио-экосистема 300 может включать в себя аудиоконтент 308, киностудии 310, музыкальные студии 311, студии 312 записи звукового сопровождения игр, аудиоконтент 313 на основе каналов, машины 314 кодирования, игровые аудиосистемы 315, машины 316 игрового аудиокодирования/рендеризации, и системы 317 доставки. Пример студии 312 записи звукового сопровождения игр представлен на фиг. 26. Некоторые примеры машины 316 игрового аудиокодирования/рендеризации представлены на фиг. 27.
[614] Как показано на фиг. 13, киностудии 310, музыкальные студии 311 и студии 312 записи звукового сопровождения игр может принимать аудиоконтент 308. В ряде случаев, аудиоконтент 308 может представлять выход захвата 301, показанного на фиг. 12. Киностудии 310 могут выводить аудиоконтент 313 на основе каналов (например, в 2.0, 5.1 и 7.1) например с использованием рабочей станции цифрового аудио (DAW). Музыкальные студии 310 могут выводить аудиоконтент 313 на основе каналов (например, в 2.0 и 5.1) например, с использованием DAW. В любом случае, машины 314 кодирования могут принимать и кодировать аудиоконтент 313 на основе каналов с помощью одного или более кодеков (например, AAC, AC3, Dolby True HD, Dolby Digital Plus и DTS Master Audio) для вывода системами 317 доставки. Таким образом, машины 314 кодирования могут быть примером кодирования 303, показанного на фиг. 12. Студии 312 записи звукового сопровождения игр могут выводить одну или более игровых аудиосистем 315, например с использованием DAW. Машины 316 игрового аудиокодирования/рендеризации могут кодировать и/или рендеризовать аудиосистемы 315 в аудиоконтент на основе каналов для вывода системами 317 доставки. В некоторых примерах, выход киностудий 310, музыкальных студий 311 и студий 312 записи звукового сопровождения игр может представлять выход редактирования 302, показанного на фиг. 12. В некоторых примерах, выход машин 314 кодирования и/или машин 316 игрового аудиокодирования/рендеризации может переноситься на системы 317 доставки посредством методов передачи 304, показанной на фиг. 12.
[615] На Фиг. 14 показана схема, более детально демонстрирующая другой пример аудио-экосистемы, показанной на фиг. 12. Как показано на фиг. 14, аудио-экосистема 300B может включать в себя аудиообъекты 319 широковещательной записи, профессиональные аудиосистемы 320, потребительский захват 322 на устройстве, аудиоформат 323 HOA, рендеризацию 324 на устройстве, потребительские аудио, TV, и принадлежности 325 и автомобильные аудиосистемы 326.
[616] Как показано на фиг. 14, аудиообъекты 319 широковещательной записи, профессиональные аудиосистемы 320 и потребительский захват 322 на устройстве могут кодировать свой выходной сигнал с использованием аудиоформата 323 HOA. Таким образом, аудиоконтент можно кодировать с использованием аудиоформата 323 HOA в единое представление, которое может воспроизводиться с использованием рендеризации 324 на устройстве, потребительских аудио, TV, и принадлежностей 325 и автомобильных аудиосистем 326. Другими словами, единое представление аудиоконтента может воспроизводиться на универсальной системе воспроизведения аудиосигнала (т.е., в отличие от требующей конкретной конфигурации, например, 5.1, 7.1 и т.д.).
[617] Фиг. 15A и 15B показаны схемы, более детально демонстрирующие другие примеры аудио-экосистемы, показанной на фиг. 12. Как показано на фиг. 15A, аудио-экосистема 30°C может включать в себя элементы 331 захвата и элементы 336 воспроизведения. Элементы 331 захвата могут включать в себя проводные и/или беспроводные устройства 332 захвата (например, собственные микрофоны), захват 334 объемного звука на устройстве и мобильные устройства 335 (например, смартфоны и планшеты). В некоторых примерах, проводные и/или беспроводные устройства 332 захвата могут быть подключены к мобильному устройству 335 по проводному(ым) и/или беспроводному(ым) каналу(ам) 333 связи.
[618] В соответствии с одним или более методами этого изобретения, мобильное устройство 335 можно использовать для захвата звукового поля. Например, мобильное устройство 335 может захватывать звуковое поле через проводные и/или беспроводные устройства 332 захвата и/или захват 334 объемного звука на устройстве (например, множество микрофонов, встроенных в мобильное устройство 335). Затем мобильное устройство 335 может кодировать захваченное звуковое поле в HOA 337 для воспроизведения одним или более из элементов 336 воспроизведения. Например, пользователь мобильного устройства 335 может записывать (захватывать звуковое поле) живого события (например, встречи, конфигурации, игры, концерта и т.д.), и кодировать запись в HOA.
[619] Мобильное устройство 335 также может использовать один или более из элементов 336 воспроизведения для воспроизведения звукового поля, кодированного в HOA. Например, мобильное устройство 335 может декодировать звуковое поле, кодированное в HOA и выводить сигнал на один или более из элементов 336 воспроизведения который предписывает одному или более из элементов 336 воспроизведения воссоздавать звуковое поле. В порядке одного примера, мобильное устройство 335 может использовать беспроводные и/или беспроводные каналы 338 связи для вывода сигнала на один или более громкоговорителей (например, решетки громкоговорителей, звуковые панели и т.д.). В порядке другого примера, мобильное устройство 335 может использовать решения 339 стыковки для вывода сигнала на одну или более стыковочных станций и/или один или более пристыкованных громкоговорителей (например, звуковые системы в интеллектуальных автомобилях и/или домах). В порядке другого примера, мобильное устройство 335 может использовать рендеризацию 340 через головные телефоны для вывода сигнала на набор головных телефонов, например, для создания реалистического стереофонического звука.
[620] В некоторых примерах, конкретное мобильное устройство 335 может захватывать 3D звуковое поле и воспроизводить то же 3D звуковое поле в более позднее время. В некоторых примерах, мобильное устройство 335 может захватывать 3D звуковое поле, кодировать 3D звуковое поле в HOA и передавать кодированное 3D звуковое поле на одно или более других устройств (например, другие мобильные устройства и/или другие немобильные устройства) для воспроизведения.
[621] Как показано на фиг. 15B, аудио-экосистема 300D может включать в себя аудиоконтент 343, игровые студии 344, кодированный аудиоконтент 345, машины 346 рендеризации и системы 347 доставки. В некоторых примерах, игровые студии 344 могут включать в себя одну или более DAW, которые могут поддерживать редактирование сигналов HoA. Например, одна или более DAW могут включать в себя сменные платы HOA и/или инструменты, которые могут быть выполнены с возможностью действовать с (например, работать с) одной или более игровыми аудиосистемами. В некоторых примерах, игровые студии 344 может выводить новые форматы система, которые поддерживают HOA. В любом случае, игровые студии 344 могут выводить кодированный аудиоконтент 345 на машины 346 рендеризации, которые могут рендеризовать звуковое поле для воспроизведения системами 347 доставки.
[622] На Фиг. 16 показана схема, демонстрирующая пример устройства аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении. Как показано на фиг. 16, аудио-экосистема 300E может включать в себя исходный 3D аудиоконтент 351, кодер 352, битовый поток 353, декодер 354, рендеризатор 355 и элементы 356 воспроизведения. Ка дополнительно проиллюстрировано на фиг. 16, кодер 352 может включать в себя анализ и разложение 357 звукового поля, извлечение 358 фона, определение 359 заметности фона, аудиокодирование 360, извлечение 361 переднепланового/характерного аудиосигнала и аудиокодирование 362. В некоторых примерах, кодер 352 может быть выполнен с возможностью осуществления операций, аналогичных выполняемым устройством 20 аудиокодирования, показанным на фиг. 3 и 4. В некоторых примерах, анализ и разложение 357 звукового поля может быть выполнен с возможностью осуществления операций, аналогичных выполняемым блоком 44 анализа звукового поля, показанным на фиг. 4. В некоторых примерах, извлечение 358 фона и определение 359 заметности фона могут быть выполнены с возможностью осуществления операций, аналогичных выполняемым блоком 48 выбора BG, показанным на фиг. 4. В некоторых примерах, аудиокодирование 360 и аудиокодирование 362 могут быть выполнены с возможностью осуществления операций, аналогичных выполняемым блоком 40 психоакустического аудиокодера, показанным на фиг. 4. В некоторых примерах, извлечение 361 переднепланового/характерного аудиосигнала может быть выполнено с возможностью осуществления операций, аналогичных выполняемым блоком 36 выбора переднего плана, показанным на фиг. 4.
[623] В некоторых примерах, извлечение 361 переднепланового/характерного аудиосигнала может анализировать аудиоконтент, соответствующий кадру 390 видео, показанному на фиг. 33. Например, извлечение 361 переднепланового/характерного аудиосигнала может определить, что аудиоконтент, соответствующий областям 391A-391C, является аудиосигналом переднего плана.
[624] Как показано на фиг. 16, кодер 352 может быть выполнен с возможностью кодирования исходного контента 351, который может иметь битовую скорость 25-75 Мбит/с, в битовый поток 353, который может иметь битовую скорость 256 кбит/с - 1.2 Мбит/с. На Фиг. 17 показана схема, более детально демонстрирующая один пример устройства аудиокодирования, показанного на фиг. 16.
[625] На Фиг. 18 показана схема, демонстрирующая пример устройства аудиодекодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении. Как показано на фиг. 18, аудио-экосистема 300E может включать в себя исходный 3D аудиоконтент 351, кодер 352, битовый поток 353, декодер 354, рендеризатор 355 и элементы 356 воспроизведения. Ка дополнительно проиллюстрировано на фиг. 16, декодер 354 может включать в себя аудиодекодер 363, аудиодекодер 364, реконструкцию 365 переднего плана и микширование 366. В некоторых примерах, декодер 354 может быть выполнен с возможностью осуществления операций, аналогичных выполняемым устройством 24 аудиодекодирования, представленным на фиг. 3 и 5. В некоторых примерах, аудиодекодер 363, аудиодекодер 364 может быть выполнен с возможностью осуществления операций, аналогичных выполняемым блоком 80 психоакустического декодирования, представленным на фиг. 5. В некоторых примерах, реконструкция 365 переднего плана может быть выполнен с возможностью осуществления операций, аналогичных выполняемым блоком 78 формирования переднего плана, представленным на фиг. 5.
[626] Как показано на фиг. 16, декодер 354 может быть выполнен с возможностью приема и декодирования битового потока 353 и вывода результирующего реконструированного 3D звукового поля на рендеризатор 355, который может затем предписывать одному или более из элементов 356 воспроизведения выводить представление исходного 3D контента 351. На Фиг. 19 показана схема, более детально демонстрирующая один пример устройства аудиодекодирования, показанного на фиг. 18.
[627] На Фиг. 20A-20G показаны схемы, демонстрирующие пример устройств захвата аудиосигнала, которые могут осуществлять различные аспекты методов, описанных в этом изобретении. Фиг. 20A демонстрирует собственный микрофон 370, который может включать в себя множество микрофонов, которые совместно выполнены с возможностью записи 3D звукового поля. В некоторых примерах, множество микрофонов собственного микрофона 370 может располагаться на поверхности, по существу, сферического шара радиусом приблизительно 4 см. В некоторых примерах, устройство 20 аудиокодирования может встроено в собственный микрофон для вывода битового потока 17 непосредственно из микрофона 370.
[628] Фиг. 20B демонстрирует телевизионный автомобиль 372, который может быть выполнен с возможностью приема сигнала от одного или более микрофонов, например, одного или более собственных микрофонов 370. Телевизионный автомобиль 372 также может включать в себя аудиокодер, например, аудиокодер 20, показанный на фиг. 3.
[629] Фиг. 20C-20E иллюстрируют мобильное устройство 374 который может включать в себя множество микрофонов, которые совместно выполнены с возможностью записи 3D звукового поля. Другими словами, множество микрофонов может иметь разнесение по X, Y, Z. В некоторых примерах, мобильное устройство 374 может включать в себя микрофон 376, который может поворачиваться для обеспечения разнесения по X, Y, Z относительно одного или более других микрофонов мобильного устройства 374. Мобильное устройство 374 также может включать в себя аудиокодер, например, аудиокодер 20, показанный на фиг. 3.
[630] Фиг. 20F демонстрирует износоустойчивое устройство 378 захвата видео, которое может быть выполнено с возможностью записи 3D звукового поля. В некоторых примерах, износоустойчивое устройство 378 захвата видео может быть присоединено к шлему пользователя, вовлеченного в деятельность. Например, износоустойчивое устройство 378 захвата видео может быть присоединено к шлему пользователя, участвующего в сплаве по бурной реке. Таким образом, износоустойчивое устройство 378 захвата видео может захватывать 3D звуковое поле, которое представляет действие вокруг пользователя (например, бурление воды позади пользователя, речь другого рафтера перед пользователем, и т.д.).
[631] Фиг. 20G демонстрирует мобильное устройство 380 с дополнительными возможностями, которое может быть выполнено с возможностью записи 3D звукового поля. В некоторых примерах, мобильное устройство 380 может быть аналогичным мобильному устройству 335, показанному на фиг. 15, с добавлением одной или более принадлежностей. Например, собственный микрофон может быть присоединен к мобильному устройству 335, показанному на фиг. 15, для формирования мобильного устройства 380 с дополнительными возможностями. Таким образом, мобильное устройство 380 с дополнительными возможностями может захватывать версию более высокого качества 3D звукового поля, а не просто использовать компоненты захвата звука, встроенные в мобильное устройство 380 с дополнительными возможностями.
[632] Фиг. 21A-21E показаны схемы, демонстрирующие пример устройств воспроизведения аудиосигнала, которые могут осуществлять различные аспекты методов, описанных в этом изобретении. Фиг. 21A и 21B демонстрирует множество громкоговорителей 382 и звуковых панелей 384. В соответствии с одним или более методами этого изобретения, громкоговорители 382 и/или звуковые панели 384 могут располагаться в любой произвольной конфигурации, позволяющей воспроизводить 3D звуковое поле. Фиг. 21C-21E иллюстрируют множество устройств 386-386C воспроизведения в виде головных телефонов. Устройства 386-386C воспроизведения в виде головных телефонов могут быть подключены к декодеру посредством проводного или беспроводного соединения. В соответствии с одним или более методами этого изобретения, единичное универсальное представление звукового поля может использоваться для рендеризации звукового поля на любой комбинации громкоговорителей 382, звуковых панелей 384 и устройств 386-386C воспроизведения в виде головных телефонов.
[633] Фиг. 22A-22H показаны схемы, демонстрирующие пример сред воспроизведения аудиосигнала в соответствии с одним или более методами, описанными в этом изобретении. Например, фиг. 22A демонстрирует среду воспроизведения с конфигурацией громкоговорителей 5.1, фиг. 22B демонстрирует среду воспроизведения с конфигурацией громкоговорителей 2.0 (например, стерео), фиг. 22C демонстрирует среду воспроизведения с конфигурацией громкоговорителей 9.1 с передними громкоговорителями полной высоты, фиг. 22D и 22E иллюстрируют среду воспроизведения с конфигурацией громкоговорителей 22.2, фиг. 22F демонстрирует среду воспроизведения с конфигурацией громкоговорителей 16.0, фиг. 22G демонстрирует среду воспроизведения с автомобильной конфигурацией громкоговорителей, и фиг. 22H демонстрирует мобильное устройство со средой воспроизведения на основе наушников.
[634] В соответствии с одним или более методами этого изобретения, единичное универсальное представление звукового поля может использоваться для рендеризации звукового поля в любой из сред воспроизведения, представленных на фиг. 22A-22H. Дополнительно, методы этого изобретения допускают рендеризацию для рендеризации звукового поля из универсального представления для воспроизведения в средах воспроизведения, отличных от представленных на фиг. 22A-22H. Например, если соображения конструкции препятствуют правильному размещению громкоговорителей согласно среде воспроизведения с конфигурацией громкоговорителей 7.1 (например, если невозможно разместить правый громкоговоритель окружения), методы этого изобретения допускают рендеризацию для компенсации с другими 6 громкоговорителями таким образом, что воспроизведения можно добиться в среде воспроизведения с конфигурацией громкоговорителей 6.1.
[635] Как показано на фиг. 23, пользователь может смотреть спортивную игру при ношении головных телефонов 386. В соответствии с одним или более методами этого изобретения, может захватываться 3D звуковое поле спортивной игры (например, один или более собственных микрофонов может располагаться в и/или вокруг бейсбольного стадиона, представленного на фиг. 24), коэффициенты HOA, соответствующие 3D звуковому полю, можно получать и передавать на декодер, декодер может принять решение реконструировать 3D звуковое поле на основании коэффициентов HOA и выводить реконструированное 3D звуковое поле на рендеризатор, рендеризатор может получать указание в отношении типа среды воспроизведения (например, головных телефонов), и рендеризовать реконструированное 3D звуковое поле в сигналы, которые предписывают головным телефонам выводить представление 3D звукового поля спортивной игры. В некоторых примерах, рендеризатор может получать указание в отношении типа среды воспроизведения в соответствии с методами, представленными на фиг. 25. Таким образом, рендеризатор может “адаптироваться” к различным положениям громкоговорителей, типу чисел, размеру и также, в идеале, выравниваться для локальной среды.
[636] На Фиг. 28 показана схема, демонстрирующая конфигурацию громкоговорителей, которую можно имитировать головными телефонами, в соответствии с одним или более методами, описанными в этом изобретении. Как показано на фиг. 28, методы этого изобретения могут предоставлять возможность пользователю, носящему головные телефоны 389, ощущать звуковое поле, как если бы звуковое поле воспроизводилось громкоговорителями 388. Таким образом, пользователь может слушать 3D звуковое поле без вывода звука на большую площадь.
[637] На Фиг. 30 показана схема, демонстрирующая кадр видео, связанный с 3D звуковым полем, который может обрабатываться в соответствии с одним или более методами, описанными в этом изобретении.
[638] На Фиг. 31A-31M показаны схемы, демонстрирующие графики 400A-400M, где показаны различные результаты имитации осуществления синтетической или записанной категоризации звукового поля в соответствии с различными аспектами методов, описанных в этом изобретении. В примерах, приведенных на фиг. 31A-31M, каждый из графиков 400A-400M включают в себя порог 402, который обозначается пунктирной линией, и соответствующий аудиообъект 404A-404M (совместно, “аудиообъекты 404”) обозначенные штриховой линией.
[639] Когда аудиообъекты 404 посредством анализа, описанного выше в отношении блока 26 анализа контента, определяются находящимися ниже порога 402, блок 26 анализа контента определяет, что соответствующий один из аудиообъектов 404 представляет аудиообъект, который был записан. Как показано в примерах, приведенных на фиг. 31B, 31D-31H и 31J-31L, блок 26 анализа контента определяет, что аудиообъекты 404B, 404D-404H, 404J-404L ниже порога 402 (по меньшей мере +90% времени и часто 100% времени) и, таким образом, представляют записанные аудиообъекты. Как показано в примерах, приведенных на фиг. 31A, 31C и 31I, блок 26 анализа контента определяет, что аудиообъекты 404A, 404C и 404I превышают порог 402 и, таким образом, представляют синтетические аудиообъекты.
[640] В примере, приведенном на фиг. 31M, аудиообъект 404M представляет смешанный синтетический/записанный аудиообъект, имеющий некоторые синтетические участки (например, выше порога 402) и некоторые синтетические участки (например, ниже порога 402). Блок 26 анализа контента в этом случае идентифицирует синтетические и записанные участки аудиообъекта 404M, в результате чего, устройство 20 аудиокодирования генерирует битовый поток 21 для включения кодированные аудиоданные на основе направленности и кодированные аудиоданные на векторной основе.
[641] На Фиг. 32 показана схема, демонстрирующая график 406 сингулярных значений из матрицы S, разложенной из коэффициентов амбиофонии более высокого порядка, в соответствии с методами, описанными в этом изобретении. Как показано на фиг. 32, ненулевых сингулярных значений, имеющих большие значения, немного. Блок 44 анализа звукового поля, показанный на фиг. 4, может анализировать эти сингулярные значения для определения nFG компонентов переднего плана (или, другими словами, преобладающих) (часто, представленных векторами) переупорядоченных векторов 33’ US[k] и переупорядоченных векторов 35’ V[k].
[642] На Фиг. 33A и 33B показаны схемы, демонстрирующие соответствующие графики 410A и 410B, где показано потенциальное влияние переупорядочения при кодировании векторов, описывающих компоненты переднего плана звукового поля в соответствии с методами, описанными в этом изобретении. График 410A демонстрирует результат кодирования, по меньшей мере, некоторых из неупорядоченных (или, другими словами, исходных) векторов 33 US[k], тогда как график 410B демонстрирует результат кодирования соответствующих упорядоченных векторов 33’ US[k]. Верхняя кривая в каждом из графиков 410A и 410B демонстрирует ошибку кодирования, где, вероятно, существует только заметная ошибка на графике 410B на границах кадра. Соответственно, методы переупорядочения, описанные в этом изобретении, могут облегчать или иначе способствовать кодированию монофонических аудиообъектов с использованием унаследованного аудиокодера.
[643] На Фиг. 34 и 35 показаны принципиальные схемы, демонстрирующие различия между идентификацией характерных аудиообъектов только на основе энергии и на основе направленности, в соответствии с этим раскрытием. В примере, приведенном на фиг. 34, векторы, которые демонстрируют большую энергию, идентифицируются как характерные аудиообъекты, независимо от направленности. Как показано на фиг. 34, аудиообъекты, которые располагаются согласно более высоким значениям энергии (отложенным по оси y) определяются как “на переднем плане”, независимо от направленности (например, представленные показателями направленности, отложенными по оси x).
[644] Фиг. 35 демонстрирует идентификацию характерных аудиообъектов на основании направленности и энергии, например, в соответствии с методами, реализованными блоком 44 анализа звукового поля, показанном на фиг. 4. Как показано на фиг. 35, более высокие показатели направленности откладываются влево по оси x, и более высокие уровни энергии откладываются вверх по оси y. В этом примере, блок 44 анализа звукового поля может определить, что характерные аудиообъекты (например, находящиеся “на переднем плане”) связаны с векторными данными, отложенными относительно к верхнему левому углу графика. В порядке одного примера, блок 44 анализа звукового поля может определить, что те векторы, которые откладываются в верхнем левом квадранте графика, связаны с характерные аудиообъекты.
[645] На Фиг. 36A-36F показаны схемы, демонстрирующие проекции, по меньшей мере, части разложенной версии коэффициентов сферических гармоник в пространственную область для осуществления интерполяции в соответствии с различными аспектами методов, описанных в этом изобретении. Фиг. 36A показана схема, демонстрирующая проекцию одного или более из векторов 35 V[k] на сферу 412. В примере, приведенном на фиг. 36A, каждое число идентифицирует отдельный коэффициент сферической гармоники, проецируемый на сферу (возможно, связанную с одной строкой и/или столбцом матрицы 19’ V). Разные цвета указывают направление характерного аудиокомпонента, где более светлый (и постепенно более темный) цвет обозначает первичное направление характерного компонента. Блок 50 пространственно-временной интерполяции устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4, может осуществлять пространственно-временную интерполяцию между каждой из красных точек для генерации сферы, показанной в примере, приведенном на фиг. 36A.
[646] На Фиг. 36B показана схема, демонстрирующая проекцию одного или более из векторов 35 V[k] на лепесток. Блок 50 пространственно-временной интерполяции может проецировать одну строку и/или столбец векторов 35 V[k] или множественные строки и/или столбцы векторов 35 V[k] для генерации лепестка 414, показанного в примере, приведенном на фиг. 36B.
[647] На Фиг. 36C показана схема, демонстрирующая поперечное сечение проекции одного или более векторов из одного или более из векторов 35 V[k] на сферу, например, сферу 412, показанную в примере, приведенном на фиг. 36.
[648] На фиг. 36D-36G показаны примеры снимков времени (через 1 кадр около 20 миллисекунд), когда разные источники звука (пчела, вертолет, электронная музыка и люди на стадионе) можно проиллюстрировать в трехмерном пространстве.
[649] Методы, описанные в этом изобретении, позволяют идентифицировать представление этих разных источников звука и представлять с использованием единичного вектора US[k] и единичного вектора V[k]. Временная изменчивость источников звука представлена в векторе US[k], тогда как пространственное распределение каждого источника звука представлено единичным вектором V[k]. Один вектор V[k] может представлять ширина, положение и размер источника звука. Кроме того, единичный вектор V[k] может быть представлен как линейная комбинация сферических гармонических базисных функций. В графиках, показанных на фиг. 36D-36G, представление источников звука базируется на преобразовании единичного вектора V в систему пространственных координат. Аналогичные способы демонстрации источников звука используются на фиг. 36-36C.
[650] Фиг. 37 демонстрирует представление описанных здесь методов получения пространственно-временной интерполяции. Блок 50 пространственно-временной интерполяции устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4, может осуществлять пространственно-временную интерполяцию, описанную ниже более детально. Пространственно-временная интерполяция может включать в себя получение пространственных компонентов более высокого разрешения в пространственном и временном измерениях. Пространственные компоненты могут базироваться на ортогональном разложении многомерного сигнала, состоящем из коэффициентов амбиофонии более высокого порядка (HOA) (или, как также могут именоваться коэффициенты HOA, “коэффициентов сферических гармоник”).
[651] В проиллюстрированном графике, векторы V1 и V2 представляют соответствующие векторы двух разных пространственных компонентов многомерного сигнала. Пространственные компоненты можно получать поблочным разложением многомерного сигнала. В некоторых примерах, пространственные компоненты, полученные осуществлением поблочной формы SVD в отношении каждого блока (который может означать кадр) аудиоданных амбиофонии более высокого порядка (HOA) (где эти аудиоданные амбиофонии включают в себя блоки, выборки или любую другую форму многоканальных аудиоданных). Переменную M можно использовать для обозначения длины кадра аудио в выборках.
[652] Соответственно, V1 и V2 могут представлять соответствующие векторы из векторов 51k переднего плана V[k] и векторы 51k-1 переднего плана V[k-1] для последовательных блоков коэффициентов 11 HOA. V1 может, например, представлять первый вектор из векторов 51k-1 переднего плана V[k-1] для первого кадра (k-1), тогда как V2 может представлять первый вектор из векторов 51k переднего плана V[k] для второго и последующих кадров (k). V1 и V2 могут представлять пространственный компонент для единичного аудиообъекта, включенного в многомерный сигнал.
[653] Интерполированные векторы Vx для каждого x получается путем взвешивания V1 и V2 согласно количеству отрезков времени или “временных выборок”, x, для временного компонента многомерного сигнала, к которым могут применяться интерполированные векторы Vx для сглаживания временного (и, следовательно, в ряде случаев пространственного) компонента. Предполагая композицию SVD, как описано выше, сглаживание сигналов 49 nFG можно получать, выполняя векторное деление каждого вектора временной выборки (например, выборки коэффициентов 11 HOA) на соответствующий интерполированный Vx. Таким образом, US[n]=HOA[n]*Vx[n]-1, где это представляет вектор-строку умноженный на вектор-столбец, таким образом, создавая скалярный элемент для US. Vx[n]-1 можно получать путем псевдоинвертирования Vx[n].
[654] В отношении взвешивания V1 и V2, V1 взвешивается пропорционально ниже во временном измерении, поскольку V2 возникает позже по времени, чем V1. Таким образом, хотя векторы 51k-1 переднего плана V[k-1] являются пространственными компонентами разложения, более поздние по времени векторы 51k переднего плана V[k] представляют разные значения пространственного компонента в течение времени. Соответственно, весовой коэффициент V1 уменьшается, когда весовой коэффициент V2 растет при увеличении x по t. Здесь, d1 и d2 представляют весовые коэффициенты.
[655] На Фиг. 38 показана блок-схема, демонстрирующая искусственные матрицы US, US1 и US2, для последовательных блоков SVD для многомерного сигнала согласно описанным здесь методам. Интерполированные V-векторы может применяться к векторам-строкам искусственных матриц US для восстановления исходного многомерного сигнала. В частности, блок 50 пространственно-временной интерполяции может умножать псевдообратные интерполированным векторам 53 переднего плана V[k] на результат умножения сигналов 49 nFG на векторы 51k переднего плана V[k] (которые могут быть обозначены как коэффициенты HOA переднего плана) для получения K/2 интерполированных выборок, которые можно использовать вместо K/2 выборок сигналов nFG как первые K/2 выборок, как показано в примере матрицы U2, приведенном на фиг. 38.
[656] На Фиг. 39 показана блок-схема, демонстрирующая разложение последующих кадров сигнала амбиофонии более высокого порядка (HOA) с использованием разложения на сингулярные значения и сглаживания пространственно-временных компонентов согласно методам, описанным в этом изобретении. Кадр n-1 и кадр n (которые также могут быть обозначены как кадр n и кадр n+1) представляют последующие кадры во времени, причем каждый кадр, содержит 1024 отрезков времени и имеет порядок HOA 4, что дает (4+1)2=25 коэффициентов. US-матрицы, которые являются искусственно сглаженными U-матрицами в кадре n-1 и кадре n, можно получать, применяя интерполированные V-векторы, как показано. Каждая серый вектор-строка или вектор-столбец представляет один аудиообъект.
[657] Вычислять представление HOA активных сигналов на векторной основе
[658] Мгновенный CVECk создается путем взятия каждого из сигналов на векторной основе, представленных в XVECk, и умножения его на соответствующий ему (деквантованный) пространственный вектор, VVECk. Каждый VVECk представлен в MVECk. Таким образом, для сигнала HOA порядка L, и M сигналов на векторной основе, будет M сигналов на векторной основе, каждый из которых будет иметь размер, заданный длиной кадра, P. Эти сигналы, таким образом, можно представить как:,XVECkmn, n=0,..P-1; m=0,..M-1. Соответственно, будет M пространственных векторов,VVECk размером (L+1)2. Их можно представить как MVECkml, l=0, .., (L+1)2-1;m=0, .., M-1. Представление HOA для каждого сигнала на векторной основе, CVECkm, является умножением матрицы на вектор, заданное как:
CVECkm=(XVECkm(MVECkm)T)T
что создает матрицу (L+1)2 на P. Полное представление HOA задается суммированием вклада каждого сигнала на векторной основе следующим образом:
CVECk=m=0M-1CVECk[m]
[659] Пространственно-временная интерполяция V-векторов
Однако, для поддержания плавной пространственно-временной непрерывности, вышеупомянутое вычисление осуществляется только для части длины кадра,P-B. Первые B выборок матрицы HOA, вместо этого, осуществляются с использованием интерполированного набора MVECkml, m=0,..,M-1;l=0,..,(L+1)2, выведенного из текущего MVECkm и предыдущих значений MVECk-1m. Это приводит к пространственному вектору более высокой временной плотности, поскольку мы выводим вектор для каждой временной выборки, p,следующим образом:
MVECkmp=pB-1MVECkm+B-1-pB-1MVECk-1m, p=0, .., B-1.
Для каждой временной выборки,p, новый вектор размером HOA (L+1)2 вычисляется как:
CVECkp=(XVECkmp)MVECkmp, p=0, .., B-1
Эти первые B выборок дополняются P-B выборками предыдущей секции для получения полного представления HOA,CVECkm, m-го сигнала на векторной основе.
[660] На декодере (например, устройстве 24 аудиодекодирования, показанном в примере, приведенном на фиг. 5), для определенного характерного, переднепланового или преобладающего звука на векторной основе, V-вектор из предыдущего кадра и V-вектор из текущего кадра можно интерполировать с использованием линейной (или нелинейной) интерполяции для создания интерполированного V-вектора более высокого разрешения (по времени) в течение конкретного отрезка времени. Блок 76 пространственно-временной интерполяции может осуществлять эту интерполяцию, где блок 76 пространственно-временной интерполяции может затем умножать вектор US в текущем кадре на интерполированный V-вектор более высокого разрешения для создания матрицы HOA на протяжении этого конкретного отрезка времени.
[661] Альтернативно, блок 76 пространственно-временной интерполяции может умножать вектор US на V-вектор текущего кадра для создания первой матрицы HOA. Декодер может дополнительно умножать вектор US на V-вектор из предыдущего кадра для создания второй матрицы HOA. Блок 76 пространственно-временной интерполяции затем может применять линейную (или нелинейную) интерполяцию к первой и второй матрицам HOA в течение конкретного отрезка времени. Выход этой интерполяции может совпадать с выходом умножения вектора US на интерполированный V-вектор, при условии общих входных матриц/векторов.
[662] В этом отношении, методы могут предусматривать, что устройство 20 аудиокодирования и/или устройство 24 аудиодекодирования выполнены с возможностью действовать в соответствии со следующими пунктами.
[663] Пункт 135054-1C. Устройство, например, устройство 20 аудиокодирования или устройство 24 аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью получения множества пространственных компонентов более высокого разрешения в пространстве и времени, в котором пространственные компоненты базируются на ортогональном разложении многомерного сигнала, образованного коэффициентами сферических гармоник.
[664] Пункт 135054-1D. Устройство, например, устройство 20 аудиокодирования или устройство 24 аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью сглаживания, по меньшей мере, одного из пространственных компонентов и временных компонентов первого множества коэффициентов сферических гармоник и второго множества коэффициентов сферических гармоник.
[665] Пункт 135054-1E. Устройство, например, устройство 20 аудиокодирования или устройство 24 аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью получения множества пространственных компонентов более высокого разрешения в пространстве и времени, в котором пространственные компоненты базируются на ортогональном разложении многомерного сигнала, образованного коэффициентами сферических гармоник.
[666] Пункт 135054-1G. Устройство, например, устройство 20 аудиокодирования или устройство 24 аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью получения разложенных коэффициентов сферических гармоник повышенного разрешения для отрезка времени путем, по меньшей мере, частично, увеличения разрешения в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник.
[667] Пункт 135054-2G. Устройство по пункту 135054-1G, в котором первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы первого множества коэффициентов сферических гармоник.
[668] Пункт 135054-3G. Устройство по пункту 135054-1G, в котором второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[669] Пункт 135054-4G. Устройство по пункту 135054-1G, в котором первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы первого множества коэффициентов сферических гармоник, и при этом второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[670] Пункт 135054-5G. Устройство по пункту 135054-1G, в котором отрезок времени содержит подкадр кадра аудио.
[671] Пункт 135054-6G. Устройство по пункту 135054-1G, в котором отрезок времени содержит временную выборку кадра аудио.
[672] Пункт 135054-7G. Устройство по пункту 135054-1G, в котором один или более процессоров выполнены с возможностью получения интерполированного разложения первого разложения и второго разложения для коэффициента сферической гармоники из первого множества коэффициентов сферических гармоник.
[673] Пункт 135054-8G. Устройство по пункту 135054-1G, в котором один или более процессоров выполнены с возможностью получения интерполированных разложений первого разложения для первой части первого множества коэффициентов сферических гармоник, включенных в первый кадр, и второго разложения для второй части второго множества коэффициентов сферических гармоник, включенных во второй кадр, в котором один или более процессоров дополнительно выполнены с возможностью применения интерполированных разложений к первому временному компоненту первой части первого множества коэффициентов сферических гармоник, включенных в первый кадр для генерации первого искусственного временного компонента первого множества коэффициентов сферических гармоник, и применения соответствующих интерполированных разложений ко второму временному компоненту второй части второго множества коэффициентов сферических гармоник, включенных во второй кадр, для генерации второго искусственного временного компонента второго множества коэффициентов сферических гармоник, включенных.
[674] Пункт 135054-9G. Устройство по пункту 135054-8G, в котором первый временной компонент генерируется путем осуществления синтеза на векторной основе в отношении первого множества коэффициентов сферических гармоник.
[675] Пункт 135054-10G. Устройство по пункту 135054-8G, в котором второй временной компонент генерируется путем осуществления синтеза на векторной основе в отношении второго множества коэффициентов сферических гармоник.
[676] Пункт 135054-11G. Устройство по пункту 135054-8G, в котором один или более процессоров дополнительно выполнены с возможностью приема первого искусственного временного компонента и второго искусственного временного компонента, вычисления интерполированных разложений первого разложения для первой части первого множества коэффициентов сферических гармоник и второго разложения для второй части второго множества коэффициентов сферических гармоник, и применения обратных интерполированных разложений к первому искусственному временному компоненту для восстановления первого временного компонента и ко второму искусственному временному компоненту для восстановления второго временного компонента.
[677] Пункт 135054-12G. Устройство по пункту 135054-1G, в котором один или более процессоров выполнены с возможностью интерполяции первого пространственного компонента первого множества коэффициентов сферических гармоник и второго пространственного компонента второго множества коэффициентов сферических гармоник.
[678] Пункт 135054-13G. Устройство по пункту 135054-12G, в котором первый пространственный компонент содержит первую матрицу U, представляющую левые сингулярные векторы первого множества коэффициентов сферических гармоник.
[679] Пункт 135054-14G. Устройство по пункту 135054-12G, в котором второй пространственный компонент содержит вторую матрицу U, представляющую левые сингулярные векторы второго множества коэффициентов сферических гармоник.
[680] Пункт 135054-15G. Устройство по пункту 135054-12G, в котором первый пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для первого множества коэффициентов сферических гармоник, и второй пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для второго множества коэффициентов сферических гармоник.
[681] Пункт 135054-16G. Устройство по пункту 135054-12G, в котором первый пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для первого множества коэффициентов сферических гармоник, и второй пространственный компонент представляет M отрезков времени коэффициентов сферических гармоник для второго множества коэффициентов сферических гармоник, и при этом один или более процессоров выполнены с возможностью получения разложенных интерполированных коэффициентов сферических гармоник для отрезка времени содержит интерполирование последних N элементов первого пространственного компонента и первых N элементов второго пространственного компонента.
[682] Пункт 135054-17G. Устройство по пункту 135054-1G, в котором второе множество коэффициентов сферических гармоник следует за первым множеством коэффициентов сферических гармоник во временной области.
[683] Пункт 135054-18G. Устройство по пункту 135054-1G, в котором один или более процессоров дополнительно выполнены с возможностью разложения первого множества коэффициентов сферических гармоник для генерации первого разложения первого множества коэффициентов сферических гармоник.
[684] Пункт 135054-19G. Устройство по пункту 135054-1G, в котором один или более процессоров дополнительно выполнены с возможностью разложения второго множества коэффициентов сферических гармоник для генерации второго разложения второго множества коэффициентов сферических гармоник.
[685] Пункт 135054-20G. Устройство по пункту 135054-1G, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении первого множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы первого множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения первого множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы первого множества коэффициентов сферических гармоник.
[686] Пункт 135054-21G. Устройство по пункту 135054-1G, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении второго множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы второго множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения второго множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[687] Пункт 135054-22G. Устройство по пункту 135054-1G, в котором первое и второе множества коэффициентов сферических гармоник представляет плосковолновое представление звукового поля.
[688] Пункт 135054-23G. Устройство по пункту 135054-1G, в котором первое и второе множества коэффициентов сферических гармоник представляет один или более смешанных друг с другом монофонических аудиообъектов.
[689] Пункт 135054-24G. Устройство по пункту 135054-1G, в котором первое и второе множества коэффициентов сферических гармоник содержат соответствующие первый и второй коэффициенты сферических гармоник, которые представляют трехмерное звуковое поле.
[690] Пункт 135054-25G. Устройство по пункту 135054-1G, в котором первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, больший единицы.
[691] Пункт 135054-26G. Устройство по пункту 135054-1G, в котором первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, равный четырем.
[692] Пункт 135054-27G. Устройство по пункту 135054-1G, в котором интерполяция является взвешенной интерполяцией первого разложения и второго разложения, причем весовые коэффициенты взвешенной интерполяции, применяемые к первому разложению, обратно пропорциональны времени, представленному векторами первого и второго разложения, и при этом весовые коэффициенты взвешенной интерполяции, применяемые ко второму разложению, пропорциональны времени, представленному векторами первого и второго разложения.
[693] Пункт 135054-28G. Устройство по пункту 135054-1G, в котором разложенные интерполированные коэффициенты сферических гармоник сглаживают, по меньшей мере, один из пространственных компонентов и временных компонентов первого множества коэффициентов сферических гармоник и второго множества коэффициентов сферических гармоник.
[694]
[695] На Фиг. 40A-40J показаны блок-схемы, демонстрирующие примеры устройств 510A-510J аудиокодирования, которые могут осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. В каждом из примеров, приведенных на фиг. 40A-40J, каждое из устройств 510A и 510B аудиокодирования, в некоторых примерах, представляет любое устройство, способное кодирования аудиоданные, например, настольный компьютер, портативный компьютер, рабочую станцию, планшет или графический планшет, специализированное звукозаписывающее устройство, сотовый телефон (включая так называемый “смартфоны”), персональное устройство медиапроигрывателя, персональное игровое устройство или устройство любого другого типа, способное кодировать аудиоданные.
[696] Хотя они показаны как единое устройство, т.е. устройства 510A-510J в примерах, приведенных на фиг. 40A-40J, различные компоненты или блоки, упомянутые ниже как включенные в устройства 510A-510J, могут фактически формировать отдельные устройства, внешние по отношению к устройствам 510A-510J. Другими словами, хотя они описаны в этом изобретении как осуществляемые единым устройством, т.е. устройства 510A-510J в примерах, приведенных на фиг. 40A-40J, методы могут реализоваться или иначе осуществляться системой, содержащей множественные устройства, причем каждое из этих устройств может включать в себя один или более из различных компонентов или блоков, более подробно описанных ниже. Соответственно, методы не подлежат ограничению примерами, приведенными на фиг. 40A-40J.
[697] В некоторых примерах, устройства 510A-510J аудиокодирования представляют устройства аудиокодирования, альтернативные описанным выше в отношении примеров, приведенных на фиг. 3 и 4. На протяжении нижеследующего рассмотрения устройств 510A-510J аудиокодирования различные сходства в отношении операции указаны в отношении различных блоков 30-52 устройства 20 аудиокодирования, описанного выше со ссылкой на фиг. 4. Во многих отношениях, устройства 510A-510J аудиокодирования могут, как описано ниже, действовать, по существу, аналогичным образом устройству 20 аудиокодирования, хотя и с незначительными отклонениями или модификациями.
[698] Как показано в примере, приведенном на фиг. 40A, устройство 510A аудиокодирования содержит блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Блок 512 сжатия аудиосигнала может представлять блок, который сжимает коэффициенты сферических гармоник (SHC) 511 (“SHC 511”), который также может быть обозначен как коэффициенты 511 амбиофонии более высокого порядка (HOA). Блок 512 сжатия аудиосигнала может в ряде случаев, блок 512 сжатия аудиосигнала представляет блок, который может без потерь сжимать или осуществлять потерьное сжатие в отношении SHC 511. SHC 511 может представлять множество SHC, где, по меньшей мере, один из множества SHC соответствует сферической базисной функции, имеющей порядок, больший единицы (где SHC этого множества именуются амбиофонией более высокого порядка (HOA) для отличения от амбиофонии более низкого порядка, одним примером которой является так называемый “B-формат”), как описано более детально выше. Хотя блок 512 сжатия аудиосигнала может без потерь сжимать SHC 511, в некоторых примерах, блок 512 сжатия аудиосигнала удаляет те из SHC 511, которые не заметны или не имеют отношения к описанию звукового поля при воспроизведении (в том смысле, что может не восприниматься человеческой звуковой системой). В этом смысле, потерьный характер этого сжатия может не перекрывать влияние на воспринимаемое качество звукового поля при воспроизведении из сжатой версии SHC 511.
[699] В примере, приведенном на фиг. 40A, блок сжатия аудиосигнала включает в себя блок 518 разложения и блок 520 извлечения компонентов звукового поля. Блок 518 разложения может быть аналогичным блоку 30 линейного обратимого преобразования устройства 20 аудиокодирования. Таким образом, блок 518 разложения может представлять блок, выполненный с возможностью осуществления формы анализа именуемый разложение на сингулярные значения. Хотя они описаны в отношении SVD, методы можно осуществлять в отношении любого аналогичного преобразования или разложения, которое обеспечивает наборы линейно раскоррелированных данных. Также ссылка на “наборы” в этом изобретении призвана означать “ненулевые” наборы, если прямо не указано обратное, и не призвана означать классическое математическое определение множеств, которое включает в себя так называемое “пустое множество.”
[700] В любом случае, блок 518 разложения осуществляет разложение на сингулярные значения (которое, опять же, может быть обозначено аббревиатурой “SVD”) для преобразования коэффициентов 511 сферических гармоник в два или более наборов преобразованных коэффициентов сферических гармоник. В примере, приведенном на фиг. 40, блок 518 разложения может осуществлять SVD в отношении SHC 511 для генерации так называемой матрицы 519 V, матрицы 519B S и матрицы 519C U. В примере, приведенном на фиг. 40, блок 518 разложения выводит каждую из матриц по отдельности вместо вывода векторов US[k] в комбинированной форме, как рассмотрено выше в отношении блока 30 линейного обратимого преобразования.
[701] Как упомянуто выше, матрица V* в упомянутом выше математическом выражении SVD обозначается как сопряженная транспонированная матрица V для отражения того, что SVD может применяться к матрицам, содержащим комплексные числа. В случае применения к матрицам, содержащим только действительные числа, комплексно-сопряженную матрицу V (или, другими словами, матрицу V*) можно рассматривать равной матрице V. Ниже предполагается, для упрощения иллюстрации, что SHC 511 содержат действительные числа, в результате чего, матрица V выводится через SVD вместо матрицы V*. Хотя предполагается, что это матрица V, методы могут применяться аналогичным образом к SHC 511, имеющим комплексные коэффициенты, где выходом SVD является матрица V*. Соответственно, методы не подлежат ограничению в этом отношении только обеспечением применения SVD для генерации матрицы V, но может включать в себя применение SVD к SHC 511, имеющим комплексные компоненты, для генерации матрицы V*.
[702] В любом случае, блок 518 разложения может осуществлять поблочную форму SVD в отношении каждого блока (который может означать кадр) аудиоданных амбиофонии более высокого порядка (HOA) (где эти аудиоданные амбиофонии включают в себя блоки или выборки SHC 511 или любую другую форму многоканальных аудиоданных). Переменную M можно использовать для обозначения длины кадра аудио в выборках. Например, когда кадр аудио включает в себя 1024 выборки аудиосигнала, M равно 1024. Блок 518 разложения таким образом, может осуществлять поблочное SVD в отношении блока SHC 511, имеющего M на (N+1)2 SHC, где N, опять же, обозначает порядок аудиоданных HOA. Блок 518 разложения может генерировать, посредством осуществления этого SVD, матрицу 519 V, матрицу 519B S и матрицу 519C U, где каждая из матриц 519-519C (“матрицы 519”) может представлять соответствующие матрицы V, S и U, описанные более детально выше. Блок 518 разложения может передавать или выводить эти матрицы 519A на блок 520 извлечения компонентов звукового поля. Матрица 519A V может иметь размер (N+1)2 на (N+1)2, матрица 519B S может иметь размер (N+1)2 на (N+1)2, и матрица U может иметь размер M на (N+1)2, где M означает количество выборок в кадре аудио. Типичное значение M равно 1024, хотя методы этого изобретения не подлежат ограничению этим типичным значением для M.
[703] Блок 520 извлечения компонентов звукового поля может представлять блок, выполненный с возможностью определения и затем извлекать характерные компоненты звукового поля и фоновые компоненты звукового поля, эффективно отделяющий характерные компонентов звукового поля от фоновых компонентов звукового поля. В этом отношении, блок 520 извлечения компонентов звукового поля может осуществлять многие из операций, описанных выше в отношении блока 44 анализа звукового поля, блока 48 выбора фона и блока 36 выбора переднего плана устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. При условии, что характерные компоненты звукового поля, в некоторых примерах, требуют базисных функций более высокого порядка (относительно фоновых компонентов звукового поля) (и, таким образом more SHC) для точного представления характерного характера этих компонентов, отделения характерных компонентов от фоновых компонентов может предоставлять возможность выделения большего количества битов характерным компонентам и выделения меньшего количества битов (относительно речи) фоновым компонентам. Соответственно, путем применения этого преобразования (в форме SVD или любой другой формы преобразования, включающей в себя PCA), методы, описанные в этом изобретении, может облегчать выделение битов различным SHC, и, таким образом сжатие SHC 511.
[704] Кроме того, методы также могут предусматривать, что, как более подробно описано ниже со ссылкой на фиг. 40B, снижение порядка фоновых компонентов звукового поля при условии, что базисные функции более высокого порядка, в некоторых примерах, не требуются для представления этих фоновых участков звукового поля с учетом диффузного или фонового характера этих компонентов. Методы, таким образом, обеспечивают сжатие диффузных или фоновых аспектов звукового поля, сохраняя заметные характерные компоненты или аспекты звукового поля путем применения SVD к SHC 511.
[705] Как показано далее в примере, приведенном на фиг. 40, блок 520 извлечения компонентов звукового поля включает в себя блок 522 транспонирования, блок 524 анализа заметных компонентов и математический блок 526. Блок 522 транспонирования представляет блок, выполненный с возможностью транспонирования матрицы 519A V для генерации транспонированной матрицы 519 V, которая обозначается как “матрица 523 VT ”. Блок 522 транспонирования может выводить эту матрицу 523 VT на математический блок 526. Матрица 523 VT может иметь размер (N+1)2 на (N+1)2.
[706] Блок 524 анализа заметных компонентов представляет блок, выполненный с возможностью осуществления анализа заметности в отношении матрицы 519B S. Блок 524 анализа заметных компонентов может, в этом отношении, осуществлять операции, аналогичные описанным выше в отношении блока 44 анализа звукового поля устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 524 анализа заметных компонентов может анализировать диагональные значения матрицы 519B S, выбирать переменную D количества этих компонентов, имеющих наибольшее значение. Другими словами, блок 524 анализа заметных компонентов может определять значение D, которое разделяет два подпространства (например, переднеплановое или преобладающее подпространство и подпространство фона или окружения), путем анализа наклона кривой, созданной уменьшающимися диагональными значениями S, где большие сингулярные значения представляют звуки переднего плана или характерные звуки, и низкие сингулярные значения представляют фоновые компоненты звукового поля. В некоторых примерах, блок 524 анализа заметных компонентов может использовать первую и вторую производную кривой сингулярных значений. Блок 524 анализа заметных компонентов также может ограничивать число D величиной между единицей и пятью. В порядке другого примера, блок 524 анализа заметных компонентов может ограничивать число D величиной между единицей и (N+1)2. Альтернативно, блок 524 анализа заметных компонентов может предварительно задавать число D, например, значение четыре. В любом случае, оценив число D, блок 24 анализа заметных компонентов извлекает подпространства переднего плана и фона из матриц U, V и S.
[707] В некоторых примерах, блок 524 анализа заметных компонентов может осуществлять этот анализ каждые M выборок, который может возобновляться на основе кадров. В этом отношении, D может изменяться от кадра к кадру. В других примерах, блок 24 анализа заметных компонентов может осуществлять этот анализ более одного раза за кадр, анализируя два или более участков кадра. Соответственно, методы не подлежат ограничению в этом отношении примерами, приведенными в этом изобретении.
[708] Фактически, блок 524 анализа заметных компонентов может анализировать сингулярные значения диагональной матрицы, которая обозначается как матрица 519B S в примере, приведенном на фиг. 40, идентифицирующая значения, имеющие относительное значение, превышающее другие значения диагональной матрицы 519B S. Блок 524 анализа заметных компонентов может идентифицировать значения D, извлекая эти значения для генерации матрицы 525A SDIST и матрицы 525B SBG. Матрица 525A SDIST может представлять диагональную матрицу, содержащую D столбцов, имеющих (N+1)2 исходной матрицы 519B S. В ряде случаев, матрица 525B SBG может представлять матрицу, имеющую (N+1)2-D столбцов, каждый из которых включает в себя (N+1)2 преобразованных коэффициентов сферических гармоник исходной матрицы 519B S. Хотя описана как матрица SDIST, представляющая матрицу, содержащую D столбцов, имеющих (N+1)2 значений исходной матрицы 519B S, блок 524 анализа заметных компонентов может усекать эту матрицу для генерации матрицы SDIST, имеющей D столбцов, имеющих значения D исходной матрицы 519B S, при условии, что матрица 519B S является диагональной матрицей, и (N+1)2 значений D столбцов после D-го значения в каждом столбце часто имеют значение нуль. Хотя описаны в отношении полной матрицы 525A SDIST и полной матрицы 525B SBG, методы можно реализовать в отношении усеченных версий этих матриц 525A SDIST и усеченной версии этой матрицы 525B SBG. Соответственно, методы этого изобретения не подлежат ограничению в этом отношении.
[709] Другими словами, матрица 525A SDIST может иметь размер D-by-(N+1)2, тогда как матрица 525B SBG может иметь размер (N+1)2-D-by-(N+1)2. Матрица 525A SDIST может включать в себя главные компоненты или, другими словами, сингулярные значения, которые определяются как заметные в том смысле, что они являются характерными (DIST) аудиокомпонентами звукового поля, тогда как матрица 525B SBG может включать в себя те сингулярные значения, которые определяются как фоновые (BG) или, другими словами, окружающие или нехарактерные аудиокомпоненты звукового поля. Хотя они показаны как отдельные матрицы 525A и 525B в примере, приведенном на фиг. 40, матрицы 525A и 525B могут указываться как единая матрица с использованием переменной D для обозначения количества столбцов (слева направо) этой единой матрицы, которые представляют матрицу 525 SDIST. В некоторых примерах, переменную D можно задать равным четырем.
[710] Блок 524 анализа заметных компонентов также может анализировать матрицу 519C U для генерации матрицы 525C UDIST и матрицы 525D UBG. Часто, блок 524 анализа заметных компонентов может анализировать матрицу 519B S для идентификации переменной D, генерации матрицы 525C UDIST и матрицы UBG 525B на основании переменной D. Таким образом, после идентификации D столбцов матрицы 519B S, которые являются заметными, блок 524 анализа заметных компонентов может разбивать матрицу 519C U на основании этой определенной переменной D. В этом случае, блок 524 анализа заметных компонентов может генерировать матрицу 525C UDIST для включения D столбцов (слева направо) (N+1)2 преобразованных коэффициентов сферических гармоник исходной матрицы 519C U и матрицы 525D UBG для включения оставшихся (N+1)2-D столбцов (N+1)2 преобразованных коэффициентов сферических гармоник исходной матрицы 519C U. Матрица 525C UDIST может иметь размер M на D, тогда как матрица 525D UBG может иметь размер M на (N+1)2-D. Хотя они показаны как отдельные матрицы 525C и 525D в примере, приведенном на фиг. 40, матрицы 525C и 525D могут указываться как единая матрица с использованием переменной D для обозначения количества столбцов (слева направо) этой единой матрицы, которые представляют матрицу UDIST 525B.
[711] Блок 524 анализа заметных компонентов также может анализировать матрицу 523 VT для генерации матрицы VTDIST 525Eи матрицы 525F VTBG. Часто, блок 524 анализа заметных компонентов может анализировать матрицу 519B S для идентификации переменной D, генерации матрицы 525E VTDIST и матрицы VBG 525F на основании переменной D. Таким образом, после идентификации D столбцов матрицы 519B S, которые являются заметными, блок 254 анализа заметных компонентов может разбивать матрицу 519A V на основании этой определенной переменной D. В этом случае, блок 524 анализа заметных компонентов может генерировать матрицу 525E VTDIST для включения (N+1)2 строк (сверху вниз) значений D исходной матрицы 523 VT и матрицы 525F VTBG для включения оставшихся (N+1)2 строк (N+1)2-D значений исходной матрицы 523 VT. Матрица 525E VTDIST может иметь размер (N+1)2 на D, тогда как матрица VTBG 525D может иметь размер (N+1)2 на (N+1)2-D. Хотя они показаны как отдельные матрицы 525E и 525F в примере, приведенном на фиг. 40, матрицы 525E и 525F могут указываться как единая матрица с использованием переменной D для обозначения количества столбцов (слева направо) этой единой матрицы, которые представляют матрицу 525E VDIST. Блок 524 анализа заметных компонентов может выводить матрицу 525 SDIST, матрицу 525B SBG, матрицу 525C UDIST, матрицу 525D UBG и матрицу 525F VTBG на математический блок 526, также выводя матрицу 525E VTDIST на блок 516 генерации битового потока.
[712] Математический блок 526 может представлять блок, выполненный с возможностью осуществления матричные умножения или любой другой математической операции, которая может осуществляться в отношении одной или более матриц (или векторов). В частности, как показано в примере, приведенном на фиг. 40, математический блок 526 может представлять блок, выполненный с возможностью осуществления матричного умножения для умножения матрицы 525C UDIST на матрицу 525A SDIST для генерации векторов 527 UDIST*SDIST размером M на D. Блок 526 матричной математики также может представлять блок, выполненный с возможностью осуществления матричного умножения для умножения матрицы 525D UBG на матрицу 525B SBG и затем на матрицу 525F VTBG для генерации матрица 525F UBG*SBG*VTBG для генерации коэффициентов 531 сферических гармоник фона размером M на (N+1)2 (которые могут представлять коэффициенты 511 сферических гармоник, представляющие фоновые компоненты звукового поля). Математический блок 526 может выводить векторы 527 UDIST*SDIST и коэффициенты 531 сферических гармоник фона на блок 514 аудиокодирования.
[713] Таким образом, устройство 510 аудиокодирования отличается от устройства 20 аудиокодирования тем, что устройство 510 аудиокодирования включает в себя этот математический блок 526, выполненный с возможностью генерации векторов 527 UDIST*SDIST и коэффициентов 531 сферических гармоник фона путем матричного умножения в конце процесса кодирования. Блок 30 линейного обратимого преобразования устройства 20 аудиокодирования осуществляет умножение матриц U и S для вывода векторов 33 US[k] в относительном начале процесса кодирования, что может облегчать дальнейшие операции, например, переупорядочение, не показано в примере, приведенном на фиг. 40. Кроме того, устройство 20 аудиокодирования, вместо восстановления фонового SHC 531 в конце процесса кодирования, выбирает коэффициенты 47 HOA фона непосредственно из коэффициентов 11 HOA, таким образом, потенциально избегая матричных умножений для восстановления фонового SHC 531.
[714] Блок 514 аудиокодирования может представлять блок, который осуществляет форму кодирования для дополнительного сжатия векторов 527 UDIST*SDIST и коэффициентов 531 сферических гармоник фона. Блок 514 аудиокодирования может действовать по существу, аналогично блоку 40 психоакустического аудиокодера устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. В ряде случаев, этот блок 514 аудиокодирования может представлять один или более экземпляров блока кодирования усовершенствованного аудиокодирования (AAC). Блок 514 аудиокодирования может кодировать каждый столбец или каждую строку векторов 527 UDIST*SDIST. Часто, блок 514 аудиокодирования может вызывать экземпляр блока кодирования AAC для каждой из комбинаций порядков/подпорядков, оставшихся в коэффициентах 531 сферических гармоник фона. Дополнительную информацию о том, как можно кодировать коэффициенты 531 сферических гармоник фона с использованием блока кодирования AAC можно найти в материалах съезда Eric Hellerud, et al., под названием “Encoding Higher Order Ambisonics with AAC”, представленных на 124-ом съезде, 17-20 мая 2008 г., и доступных по адресу: http://ro.uow.edu.au/cgi/viewcontent.cgi?article=8025&context=engpapers. Блок 14 аудиокодирования может выводить кодированную версию векторов 527 UDIST*SDIST (обозначенных “кодированные векторы 515 UDIST*SDIST ”) и кодированную версию коэффициентов 531 сферических гармоник фона (обозначенных “кодированные коэффициенты 515B сферических гармоник фона”) на блок 516 генерации битового потока. В ряде случаев, блок 514 аудиокодирования может аудиокодировать коэффициенты 531 сферических гармоник фона с использованием более низкой целевой битовой скорости, чем используемые для кодирования векторов 527 UDIST*SDIST, таким образом, потенциально сжимая коэффициенты 531 сферических гармоник фона больше по сравнению с векторами 527 UDIST*SDIST.
[715] Блок 516 генерации битового потока представляет блок, который форматирует данные для согласования с известным форматом (который может означать формат, известный устройству декодирования), таким образом, генерируя битовый поток 517. Блок 42 генерации битового потока может действовать, по существу, аналогичным образом описанному выше в отношении блока 42 генерации битового потока устройства 24 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 516 генерации битового потока может включать в себя мультиплексор, который мультиплексирует кодированные векторы 515 UDIST*SDIST, кодированные коэффициенты 515B сферических гармоник фона и матрицу 525E VTDIST.
[716] На Фиг. 40B показана блок-схема, демонстрирующая пример устройства 510B аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 510B аудиокодирования может быть аналогичным устройству 510 аудиокодирования тем, что устройство 510B аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 510B аудиокодирования может быть аналогичным блоку устройства 510 аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения. Блок 512 сжатия аудиосигнала устройства 510B аудиокодирования может отличаться от блока 512 сжатия аудиосигнала устройства 510 аудиокодирования тем, что блок 520 извлечения компонентов звукового поля включает в себя дополнительный блок, обозначенный как блок 528A снижения порядка (“блок 528 снижения порядка”). По этой причине, блок 520 извлечения компонентов звукового поля устройства 510B аудиокодирования обозначается как “блок 520B извлечения компонентов звукового поля”.
[717] Блок 528A снижения порядка представляет блок, выполненный с возможностью осуществления дополнительного снижения порядка коэффициентов 531 сферических гармоник фона. В ряде случаев, блок 528A снижения порядка может поворачивать звуковое поле, представленное коэффициентами 531 сферических гармоник фона для снижения количества коэффициентов 531 сферических гармоник фона, необходимого для представления звукового поля. В ряде случаев, при условии, что коэффициенты 531 сферических гармоник фона представляют фоновые компоненты звукового поля, блок 528A снижения порядка может удалять, исключать или иначе устранять (часто путем обнуления) коэффициенты 531 сферических гармоник фона, соответствующие сферическим базисным функциям более высокого порядка. В этом отношении, блок 528A снижения порядка может осуществлять операции, аналогичные операциям блока 48 выбора фона устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 528A снижения порядка может выводить приведенную версию коэффициентов 531 сферических гармоник фона (обозначенных как “приведенные коэффициенты 529 сферических гармоник фона”) на блок 514 аудиокодирования, который может осуществлять аудиокодирование вышеописанным образом для кодирования приведенных коэффициентов 529 сферических гармоник фона и, таким образом, генерировать кодированные приведенные коэффициенты 515B сферических гармоник фона.
[718] Различные перечисленные ниже пункты могут представлять различные аспекты методов, описанных в этом изобретении.
[719] Пункт 132567-1. Устройство, например, устройство 510 аудиокодирования или устройство 510B аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и представлять множество коэффициентов сферических гармоник как функцию, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V.
[720] Пункт 132567-2. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью генерации битового потока для включения представления из множества коэффициентов сферических гармоник как одного или более векторов матрицы U, матрицы S и матрицы V, включающих в себя их комбинации или их производные.
[721] Пункт 132567-3. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, определять один или более векторов UDIST, включенных в матрицу U, которые описывают характерные компоненты звукового поля.
[722] Пункт 132567-4. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, определять один или более векторов UDIST, включенных в матрицу U, которые описывают характерные компоненты звукового поля, определять один или более векторов SDIST, включенных в матрицу S, которые также описывают характерные компоненты звукового поля, и перемножать один или более векторов UDIST и один или более один или более векторов SDIST для генерации векторов UDIST*SDIST.
[723] Пункт 132567-5. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, определять один или более векторов UDIST, включенных в матрицу U, которые описывают характерные компоненты звукового поля, определять один или более векторов SDIST, включенных в матрицу S, которые также описывают характерные компоненты звукового поля, и перемножать один или более векторов UDIST и один или более один или более векторов SDIST для генерации одного или более векторов UDIST*SDIST, и при этом один или более процессоров дополнительно выполнены с возможностью аудиокодирования одного или более векторов UDIST*SDIST для генерации аудиокодированной версии одного или более векторов UDIST*SDIST.
[724] Пункт 132567-6. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, определять один или более векторов UBG включенный в матрицу U.
[725] Пункт 132567-7. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, анализировать матрицу S для идентификации характерных и фоновых компонентов звукового поля.
[726] Пункт 132567-8. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, анализировать матрицу S для идентификации характерных и фоновых компонентов звукового поля, и определять, на основании анализа матрицы S, один или более векторов UDIST матрицы U, которые описывают характерные компоненты звукового поля, и один или более векторов UBG матрицы U, которые описывают фоновые компоненты звукового поля.
[727] Пункт 132567-9. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, анализировать матрицу S для идентификации характерных и фоновых компонентов звукового поля на основе кадров аудио, и определять, на основании анализа матрицы S для каждого кадра аудио, один или более векторов UDIST матрицы U, которые описывают характерные компоненты звукового поля, и один или более векторов UBG матрицы U, которые описывают фоновые компоненты звукового поля.
[728] Пункт 132567-10. Устройство по пункту 132567-1, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, анализировать матрицу S для идентификации характерных и фоновых компонентов звукового поля, определять, на основании анализа матрицы S, один или более векторов UDIST матрицы U, которые описывают характерные компоненты звукового поля, и один или более векторов UBG матрицы U, которые описывают фоновые компоненты звукового поля, определять, на основании анализа матрицы S, один или более векторов SDIST и один или более векторов SBG матрицы S соответствующих одному или более векторов UDIST и одному или более векторов UBG, и определять, на основании анализа матрицы S, один или более векторов VTDIST и один или более векторов VTBG транспонированной матрицы V соответствующих одному или более векторов UDIST и одному или более векторов UBG.
[729] Пункт 132567-11. Устройство по пункту 132567-10, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, умножать один или более векторов UBG на один или более векторов SBG и затем на один или более векторов VTBG для генерации одного или более векторов UBG*SBG*VTBG, и при этом один или более процессоров дополнительно выполнены с возможностью аудиокодирования векторов UBG*SBG*VTBG для генерации аудиокодированной версии векторов UBG*SBG*VTBG.
[730] Пункт 132567-12. Устройство по пункту 132567-10, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, умножать один или более векторов UBG на один или более векторов SBG и затем на один или более векторов VTBG для генерации одного или более векторов UBG*SBG*VTBG, и осуществлять процесс снижения порядка для исключения тех из коэффициентов одного или более векторов UBG*SBG*VTBG, которые связаны с одним или более порядками сферических гармонических базисных функций и, таким образом, генерировать версию сниженного порядка одного или более векторов UBG*SBG*VTBG.
[731] Пункт 132567-13. Устройство по пункту 132567-10, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, умножать один или более векторов UBG на один или более векторов SBG и затем на один или более векторов VTBG для генерации одного или более векторов UBG*SBG*VTBG, и осуществлять процесс снижения порядка для исключения тех из коэффициентов одного или более векторов UBG*SBG*VTBG, которые связаны с одним или более порядками сферических гармонических базисных функций и, таким образом, генерировать версию сниженного порядка одного или более векторов UBG*SBG*VTBG, и при этом один или более процессоров дополнительно выполнены с возможностью аудиокодирования версии сниженного порядка одного или более векторов UBG*SBG*VTBG для генерации аудиокодированной версии одного или более векторов сниженного порядка UBG*SBG*VTBG.
[732] Пункт 132567-14. Устройство по пункту 132567-10, в котором один или более процессоров дополнительно выполнены с возможностью, при представлении множества коэффициентов сферических гармоник, умножать один или более векторов UBG на один или более векторов SBG и затем на один или более векторов VTBG для генерации одного или более векторов UBG*SBG*VTBG, осуществлять процесс снижения порядка для исключения тех из коэффициентов одного или более векторов UBG*SBG*VTBG, которые связаны с одним или более порядками, большими, чем для одной из сферических гармонических базисных функций и, таким образом, генерировать версию сниженного порядка одного или более векторов UBG*SBG*VTBG, и аудиокодировать версию сниженного порядка одного или более векторов UBG*SBG*VTBG для генерации аудиокодированной версии одного или более векторов сниженного порядка UBG*SBG*VTBG.
[733] Пункт 132567-15. Устройство по пункту 132567-10, в котором один или более процессоров дополнительно выполнены с возможностью генерации битового потока для включения одного или более векторов VTDIST.
[734] Пункт 132567-16. Устройство по пункту 132567-10, в котором один или более процессоров дополнительно выполнены с возможностью генерации битового потока для включения одного или более векторов VTDIST без аудиокодирования одного или более векторов VTDIST.
[735] Пункт 132567-1F. Устройство, например, устройство 510 или 510B аудиокодирования, содержащий один или более процессоров для осуществления разложения на сингулярные значения в отношении многоканальные аудиоданные, представляющие, по меньшей мере, часть звукового поля для генерации матрицы U, представляющей левые сингулярные векторы многоканальных аудиоданных, матрицы S, представляющей сингулярные значения многоканальных аудиоданных, и матрицы V, представляющей правые сингулярные векторы многоканальных аудиоданных, и представления многоканальных аудиоданных как функции, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V.
[736] Пункт 132567-2F. Устройство по пункту 132567-1F, в котором многоканальные аудиоданные содержат множество коэффициентов сферических гармоник.
[737] Пункт 132567-3F. Устройство по пункту 132567-2F, в котором один или более процессоров дополнительно выполнены с возможностью осуществления, согласно любой комбинации пунктов 132567-2-132567-16.
[738] Из каждого из различных описанных выше пунктов, следует, что любое из устройств 510A-510J аудиокодирования может осуществлять способ или иным образом содержать средство для осуществления каждого этапа способа, для которого устройство 510A-510J аудиокодирования выполнено с возможностью осуществления в ряде случаев, это средство может содержать один или более процессоров. В ряде случаев, один или более процессоров может представлять процессор специального назначения, выполняющий инструкции, хранящиеся на долговременном считываемом компьютером носителе данных. Другими словами, различные аспекты методов в каждом из наборов примеров кодирования могут предусматривать долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять способ для осуществления которого предназначено устройство 510A-510J аудиокодирования.
[739] Например, пункт 132567-17 может быть выведен из вышеприведенного пункта 132567-1 как способ, содержащий осуществление разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и представления множества коэффициентов сферических гармоник как функции, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V.
[740] В порядке другого примера, пункт 132567-18 может быть выведен из вышеприведенного пункта 132567-1 как устройство, например, устройство 510B аудиокодирования, содержащее средство для осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и средство для представления множества коэффициентов сферических гармоник как функции, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V.
[741] В порядке еще одного примера, пункт 132567-18 может быть выведен из вышеприведенного пункта 132567-1 как долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять разложение на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и представлять множество коэффициентов сферических гармоник как функцию, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V.
[742] Различные пункты аналогично могут быть выведены из пунктов 132567-2-132567-16 для различных устройств, способов и долговременных считываемых компьютером носителей данных, выведенных как упомянуто выше. То же самое можно осуществлять для различных других пунктов, перечисленных на протяжении этого раскрытия.
[743] Фиг. 4°C показана блок-схема, демонстрирующая пример устройства 51°C аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 51°C аудиокодирования может быть аналогичным устройству 510B аудиокодирования тем, что устройство 51°C аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 51°C аудиокодирования может быть аналогичным блоку устройства 510B аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения.
[744] Блок 512 сжатия аудиосигнала устройства 51°C аудиокодирования однако может отличаться от блока 512 сжатия аудиосигнала устройства 510B аудиокодирования тем, что блок 520 извлечения компонентов звукового поля включает в себя дополнительный блок, обозначенный как блок 532 переупорядочения векторов. По этой причине, блок 520 извлечения компонентов звукового поля устройства 51°C аудиокодирования обозначается как “блок 52°C извлечения компонентов звукового поля ”.
[745] Блок 532 переупорядочения векторов может представлять блок, выполненный с возможностью преупорядочения векторов 527 UDIST*SDIST для генерации переупорядоченных одного или более векторов UDIST*SDIST 533. В этом отношении, блок 532 переупорядочения векторов может действовать аналогично описанному выше в отношении блока 34 переупорядочения устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Блок 52°C извлечения компонентов звукового поля может вызывать блок 532 переупорядочения векторов для преупорядочения векторов 527 UDIST*SDIST, поскольку порядок векторов 527 UDIST*SDIST (где каждый вектор из векторов 527 UDIST*SDIST может представлять один или более характерных монофонических аудиообъектов, присутствующих в звуковом поле) может отличаться от участков аудиоданных по вышеупомянутой причине. Таким образом, при условии, что блок 512 сжатия аудиосигнала, в некоторых примерах, действует на этих участках аудиоданных, в общем случае, именуемых кадрами аудио (которые могут иметь M выборок коэффициентов 511 сферических гармоник, где M, в некоторых примерах, задано равным 1024), позиция векторов, соответствующих этим отдельным монофоническим аудиообъектам, представленных в матрице 519C U из которой выводятся векторы 527 UDIST*SDIST, может различаться от кадра аудио к кадру аудио.
[746] Передача этих векторов 527 UDIST*SDIST непосредственно на блок 514 аудиокодирования без переупорядочения этих векторов 527 UDIST*SDIST от кадра аудио к кадру аудио может снижать степень сжатия, достижимую для некоторых схем сжатия, например, унаследованных схем сжатия, которые действуют лучше, когда монофонические аудиообъекты коррелируют (поканально, что определяется в этом примере порядком векторов 527 UDIST*SDIST относительно друг друга) по кадрам аудио. Кроме того, в отсутствие переупорядочения, кодирование векторов 527 UDIST*SDIST может снижать качество аудиоданных при восстановлении. Например, кодеры AAC, которые могут быть представлены в примере, приведенном на фиг. 4°C блоком 514 аудиокодирования, могут более эффективно сжимать переупорядоченные один или более векторов UDIST*SDIST 533 от кадра к кадру по сравнению со сжатием, достигаемым при непосредственном кодировании векторов 527 UDIST*SDIST от кадра к кадру. Хотя выше приведено описание в отношении кодеров AAC, методы можно осуществлять в отношении любого кодера, который обеспечивает лучшее сжатие, когда монофонические аудиообъекты задаются по кадрам в конкретном порядке или позиции (поканально).
[747] Как более подробно описано ниже, методы могут предусматривать, что устройство 51°C аудиокодирования преупорядочивает один или более векторов (т.е. векторов 527 UDIST*SDIST для генерации переупорядоченных одного или более векторов векторы UDIST*SDIST 533 и, таким образом облегчают сжатие векторов 527 UDIST*SDIST унаследованным аудиокодером, например блок 514 аудиокодирования. Устройство 51°C аудиокодирования может дополнительно осуществлять методы, описанные в этом изобретении для аудиокодирования переупорядоченных одного или более векторов UDIST*SDIST 533 с использованием блока 514 аудиокодирования для генерации кодированной версии 515A переупорядоченных одного или более векторов UDIST*SDIST 533.
[748] Например, блок 52°C извлечения компонентов звукового поля может вызывать блок 532 переупорядочения векторов для преупорядочения одного или более первых векторов 527 UDIST*SDIST из первого кадра аудио, следующего по времени за вторым кадром, которому один или более вторых векторов 527 UDIST*SDIST соответствуют. Хотя описано, что первый кадр аудио следуют по времени за вторым кадром аудио, первый кадр аудио может предшествовать по времени второму кадру аудио. Соответственно, методы не подлежат ограничению примеру, описанному в этом изобретении.
[749] Блок 532 переупорядочения векторов может сначала осуществлять анализ энергии в отношении каждого из первых векторов 527 UDIST*SDIST и вторых векторов 527 UDIST*SDIST, вычислять среднеквадратическую энергию для, по меньшей мере, части (но часто всего) первого кадра аудио и части (но часто всего) второго кадра аудио и, таким образом, генерировать (предполагая D равным четырех) восемь энергий, по одному для каждого из первых векторов 527 UDIST*SDIST первого кадра аудио и по одному для каждого из вторых векторов 527 UDIST*SDIST второго кадра аудио. Затем блок 532 переупорядочения векторов может сравнивать каждую энергию из первых векторов 527 UDIST*SDIST поочередно с каждым из вторых векторов 527 UDIST*SDIST, как описано выше в отношении таблиц 1-4.
[750] Другими словами, при использовании SVD на кадровой основе (или родственных способов, например, KLT и PCA) разложение на сигналах HoA, трудно гарантировать согласованность упорядочения векторов от кадра к кадру. Например, если в лежащем в основе звуковом поле существует два объекта, разложение (которое, когда осуществляется надлежащим образом, может именоваться “идеальным разложением”) может приводить к разделению двух объектов таким образом, что один вектор будет представлять один объект в матрице U. Однако, даже когда разложение может быть обозначено как “идеальное разложение”, векторы могут изменять позицию в матрице U (и, соответственно, в матрице S и V) от кадра к кадру. Кроме того, вполне могут существовать разности фаз, где блок 532 переупорядочения векторов может инвертировать фаза с использованием инверсии фазы (путем скалярного умножения каждого элемента инвертированного вектора на минус или отрицательную единицу). Для подачи этих векторов, покадрово в одну и ту же "машину AAC/аудиокодирования" может потребоваться идентифицировать порядок (или, другими словами, согласовать сигналы), уточнять фазу и применять аккуратную интерполяцию на границах кадра. Без этого, лежащий в основе аудиокодек может создавать чрезвычайно резкие артефакты, в том числе так называемые 'временное размывание' или 'опережающее эхо'.
[751] В соответствии с различными аспектами методов, описанных в этом изобретении, устройство 51°C аудиокодирования может применять множественные методологии для идентификации/согласования векторов, с использованием энергии и кросс-корреляции на границах кадра векторов. Устройство 51°C аудиокодирования также может гарантировать, что изменение фазы на 180 градусов, часто возникающее на границах кадра, корректируется. Блок 532 переупорядочения векторов может применять форма интервала интерполяции плавного увеличения/уменьшения между векторами, чтобы гарантировать плавный переход между кадрами.
[752] Таким образом, устройство аудиокодирования 53°C может переупорядочивать один или более векторов для генерации переупорядоченных одного или более первых векторов и, таким образом, облегчения кодирования унаследованным аудиокодером, причем один или более векторов описывают представляют характерные компоненты звукового поля, и аудиокодирования переупорядоченных одного или более векторов с использованием унаследованного аудиокодера для генерации кодированной версии переупорядоченных одного или более векторов.
[753] Различные аспекты методов, описанных в этом изобретении, могут предусматривать, что устройство 51°°C аудиокодирования действовать в соответствии со следующими пунктами.
[754] Пункт 133143-1A. Устройство, например, устройство 51°C аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью осуществления сравнения энергии между одним или более первых векторов и одним или более вторых векторов для определения переупорядоченных одного или более первых векторов и облегчения выделения одного или обоих из одного или более первых векторов и одного или более вторых векторов, причем один или более первых векторов описывают характерные компоненты звукового поля в первой части аудиоданных, и один или более вторых векторов описывают характерные компоненты звукового поля во второй части аудиоданных.
[755] Пункт 133143-2A. Устройство по пункту 133143-1A, в котором один или более первых векторов не представляют фоновые компоненты звукового поля в первой части аудиоданных, и при этом один или более вторых векторов не представляют фоновые компоненты звукового поля во второй части аудиоданных.
[756] Пункт 133143-3A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью, после осуществления сравнения энергии, осуществления кросс-корреляции между одним или более первыми векторами и одним или более вторыми векторами для идентификации одного или более первых векторов, которые коррелируют с одним или более вторыми векторами.
[757] Пункт 133143-4A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью отбрасывать один или более из вторых векторов на основании сравнения энергии для генерации приведенных одного или более вторых векторов, имеющих меньше векторов, чем один или более вторых векторов, осуществления кросс-корреляции между, по меньшей мере, одним из одного или более первых векторов и приведенными одним или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и переупорядочивать, по меньшей мере, один из одного или более первых векторов на основании кросс-корреляции для генерации переупорядоченных одного или более первых векторов.
[758] Пункт 133143-5A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью отбрасывать один или более из вторых векторов на основании сравнения энергии для генерации приведенных одного или более вторых векторов, имеющих меньше векторов, чем один или более вторых векторов, осуществления кросс-корреляции между, по меньшей мере, одним из одного или более первых векторов и приведенными одним или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, переупорядочивать, по меньшей мере, один из одного или более первых векторов на основании кросс-корреляции для генерации переупорядоченных одного или более первых векторов, и кодировать переупорядоченные один или более первых векторов для генерации аудиокодированной версии переупорядоченных одного или более первых векторов.
[759] Пункт 133143-6A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью отбрасывать один или более из вторых векторов на основании сравнения энергии для генерации приведенных одного или более вторых векторов, имеющих меньше векторов, чем один или более вторых векторов, осуществления кросс-корреляции между, по меньшей мере, одним из одного или более первых векторов и приведенными одним или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, переупорядочивать, по меньшей мере, один из одного или более первых векторов на основании кросс-корреляции для генерации переупорядоченных одного или более первых векторов, кодировать переупорядоченные один или более первых векторов для генерации аудиокодированной версии переупорядоченных одного или более первых векторов, и генерации битового потока для включения кодированной версии переупорядоченных одного или более первых векторов.
[760] Пункт 133143-7A. Устройство по пп. 3A-6A, в котором первая часть аудиоданных содержит первый кадр аудио, имеющий M выборок, причем вторая часть аудиоданных содержит второй кадр аудио, имеющий то же количество, M, выборок, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществлять кросс-корреляцию в отношении последних значений M-Z, по меньшей мере, одного из одного или более первых векторов и первых значений M-Z каждого из приведенных одного или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и при этом Z меньше, чем M.
[761] Пункт 133143-8A. Устройство по пп. 3A-6A, в котором первая часть аудиоданных содержит первый кадр аудио, имеющий M выборок, причем вторая часть аудиоданных содержит второй кадр аудио, имеющий то же количество, M, выборок, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществлять кросс-корреляцию в отношении последних значений M-Y, по меньшей мере, одного из одного или более первых векторов и первых значений M-Z каждого из приведенных одного или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и при этом оба Z и Y меньше M.
[762] Пункт 133143-9A. Устройство по пп. 3A-6A, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, инвертировать, по меньшей мере, один из одного или более первых векторов и одного или более вторых векторов.
[763] Пункт 133143-10A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации одного или более первых векторов и одного или более вторых векторов.
[764] Пункт 133143-11A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и генерации одного или более первых векторов и одного или более вторых векторов как функции одной или более из матрицы U, матрицы S и матрицы V.
[765] Пункт 133143-12A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, осуществления анализа заметности в отношении матрицы S для идентификации одного или более векторов UDIST матрицы U и одного или более векторов SDIST матрицы S, и определения одного или более первых векторов и одного или более вторых векторов путем, по меньшей мере, частичного умножения одного или более векторов UDIST на один или более векторов SDIST.
[766] Пункт 133143-13A. Устройство по пункту 133143-1A, в котором первая часть аудиоданных предшествует по времени второй части аудиоданных.
[767] Пункт 133143-14A. Устройство по пункту 133143-1A, в котором первая часть аудиоданных возникает спустя время после второй части аудиоданных.
[768] Пункт 133143-15A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении сравнения энергии, вычислять среднеквадратическую энергию для каждого из одного или более первых векторов и одного или более вторых векторов, и сравнивать среднеквадратическую энергию, вычисленную для, по меньшей мере, одного из одного или более первых векторов со среднеквадратической энергией, вычисленной для каждого из одного или более вторых векторов.
[769] Пункт 133143-16A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью преупорядочения, по меньшей мере, одного из одного или более первых векторов на основании сравнения энергии для генерации переупорядоченных одного или более первых векторов, и при этом один или более процессоров дополнительно выполнены с возможностью, при переупорядочении первых векторов, применять интервал интерполяции плавного увеличения/уменьшения между одним или более первыми векторами, чтобы гарантировать плавный переход при генерации переупорядоченных одного или более первых векторов.
[770] Пункт 133143-17A. Устройство по пункту 133143-1A, в котором один или более процессоров дополнительно выполнены с возможностью преупорядочения одного или более первых векторов на основании, по меньшей мере, сравнения энергии для генерации переупорядоченных одного или более первых векторов, генерации битового потока для включения переупорядоченных одного или более первых векторов или кодированной версии переупорядоченных одного или более первых векторов, и указания в битовом потоке информации переупорядочения, описывающей, как были переупорядочены один или более первых векторов.
[771] Пункт 133143-18A. Устройство по пункту 133143-1A, в котором сравнение энергии облегчает извлечение одного или обоих из одного или более первых векторов и одного или более вторых векторов для способствования аудиокодированию одного или обоих из одного или более первых векторов и одного или более вторых векторов.
[772] Пункт 133143-1B. Устройство, например, устройство 51°C аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью осуществления кросс-корреляции в отношении одного или более первых векторов и одного или более вторых векторов для определения переупорядоченных одного или более первых векторов и облегчения выделения одного или обоих из одного или более первых векторов и одного или более вторых векторов, причем один или более первых векторов описывают характерные компоненты звукового поля в первой части аудиоданных, и один или более вторых векторов описывают характерные компоненты звукового поля во второй части аудиоданных.
[773] Пункт 133143-2B. Устройство по пункту 133143-1B, в котором один или более первых векторов не представляют фоновые компоненты звукового поля в первой части аудиоданных, и при этом один или более вторых векторов не представляют фоновые компоненты звукового поля во второй части аудиоданных.
[774] Пункт 133143-3B. Устройство по пункту 133143-1B, в котором один или более процессоров дополнительно выполнены с возможностью, до осуществления кросс-корреляции, осуществления сравнения энергии между одним или более первыми векторами и одним или более вторыми векторами для генерации приведенных одного или более вторых векторов, имеющих меньше векторов, чем один или более вторых векторов, и при этом один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществления кросс-корреляции между одним или более первыми векторами и приведенными одним или более вторыми векторами для облегчения аудиокодирования одного или обоих из одного или более первых векторов и одного или более вторых векторов.
[775] Пункт 133143-4B. Устройство по пункту 133143-3B, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении сравнения энергии, вычислять среднеквадратическую энергию для каждого из одного или более первых векторов и одного или более вторых векторов, и сравнивать среднеквадратическую энергию, вычисленную для, по меньшей мере, одного из одного или более первых векторов со среднеквадратической энергией, вычисленной для каждого из одного или более вторых векторов.
[776] Пункт 133143-5B. Устройство по пункту 133143-3B, в котором один или более процессоров дополнительно выполнены с возможностью отбрасывать один или более из вторых векторов на основании сравнения энергии для генерации приведенных одного или более вторых векторов, имеющих меньше векторов, чем один или более вторых векторов, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществления кросс-корреляции между, по меньшей мере, одним из одного или более первых векторов и приведенными одним или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и при этом один или более процессоров дополнительно выполнены с возможностью преупорядочения, по меньшей мере, одного из одного или более первых векторов на основании кросс-корреляции для генерации переупорядоченных одного или более первых векторов.
[777] Пункт 133143-6B. Устройство по пункту 133143-3B, в котором один или более процессоров дополнительно выполнены с возможностью отбрасывать один или более из вторых векторов на основании сравнения энергии для генерации приведенных одного или более вторых векторов, имеющих меньше векторов, чем один или более вторых векторов, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществления кросс-корреляции между, по меньшей мере, одним из одного или более первых векторов и приведенными одним или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и при этом один или более процессоров дополнительно выполнены с возможностью преупорядочивать, по меньшей мере, один из одного или более первых векторов на основании кросс-корреляции для генерации переупорядоченных одного или более первых векторов, и кодировать переупорядоченные один или более первых векторов для генерации аудиокодированной версии переупорядоченных одного или более первых векторов.
[778] Пункт 133143-7B. Устройство по пункту 133143-3B, в котором один или более процессоров дополнительно выполнены с возможностью отбрасывать один или более из вторых векторов на основании сравнения энергии для генерации приведенных одного или более вторых векторов, имеющих меньше векторов, чем один или более вторых векторов, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществления кросс-корреляции между, по меньшей мере, одним из одного или более первых векторов и приведенными одним или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и при этом один или более процессоров дополнительно выполнены с возможностью переупорядочивать, по меньшей мере, один из одного или более первых векторов на основании кросс-корреляции для генерации переупорядоченных одного или более первых векторов, кодировать переупорядоченные один или более первых векторов для генерации аудиокодированной версии переупорядоченных одного или более первых векторов, и генерировать битовый поток для включения кодированной версии переупорядоченных одного или более первых векторов.
[779] Пункт 133143-8B. Устройство по пп. 3B-7B, в котором первая часть аудиоданных содержит первый кадр аудио, имеющий M выборок, причем вторая часть аудиоданных содержит второй кадр аудио, имеющий то же количество, M, выборок, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществлять кросс-корреляцию в отношении последних значений M-Z, по меньшей мере, одного из одного или более первых векторов и первых значений M-Z каждого из приведенных одного или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и при этом Z меньше, чем M.
[780] Пункт 133143-9B. Устройство по пп. 3B-7B, в котором первая часть аудиоданных содержит первый кадр аудио, имеющий M выборок, причем вторая часть аудиоданных содержит второй кадр аудио, имеющий то же количество, M, выборок, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, осуществлять кросс-корреляцию в отношении последних значений M-Y, по меньшей мере, одного из одного или более первых векторов и первых значений M-Z каждого из приведенных одного или более вторых векторов для идентификации одного из приведенных одного или более вторых векторов, которые коррелирует с, по меньшей мере, одним из одного или более первых векторов, и при этом оба Z и Y меньше M.
[781] Пункт 133143-10B. Устройство по пп. 1B, в котором один или более процессоров дополнительно выполнены с возможностью, при осуществлении кросс-корреляции, инвертировать, по меньшей мере, один из одного или более первых векторов и одного или более вторых векторов.
[782] Пункт 133143-11B. Устройство по пункту 133143-1B, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации одного или более первых векторов и одного или более вторых векторов.
[783] Пункт 133143-12B. Устройство по пункту 133143-1B, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и генерации одного или более первых векторов и одного или более вторых векторов как функции одной или более из матрицы U, матрицы S и матрицы V.
[784] Пункт 133143-13B. Устройство по пункту 133143-1B, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, осуществления анализа заметности в отношении матрицы S для идентификации одного или более векторов UDIST матрицы U и одного или более векторов SDIST матрицы S, и определения одного или более первых векторов и одного или более вторых векторов путем, по меньшей мере, частичного умножения одного или более векторов UDIST на один или более векторов SDIST.
[785] Пункт 133143-14B. Устройство по пункту 133143-1B, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и при определении одного или более первых векторов и одного или более вторых векторов, осуществления анализа заметности в отношении матрицы S для идентификации одного или более векторов VDIST матрицы V как, по меньшей мере, один из одного или более первых векторов и одного или более вторых векторов.
[786] Пункт 133143-15B. Устройство по пункту 133143-1B, в котором первая часть аудиоданных предшествует по времени второй части аудиоданных.
[787] Пункт 133143-16B. Устройство по пункту 133143-1B, в котором первая часть аудиоданных возникает спустя время после второй части аудиоданных.
[788] Пункт 133143-17B. Устройство по пункту 133143-1B, в котором один или более процессоров дополнительно выполнены с возможностью преупорядочивать, по меньшей мере, один из одного или более первых векторов на основании кросс-корреляции для генерации переупорядоченных одного или более первых векторов, и, при переупорядочении первых векторов, применять интервал интерполяции плавного увеличения/уменьшения между одним или более первыми векторами, чтобы гарантировать плавный переход при генерации переупорядоченных одного или более первых векторов.
[789] Пункт 133143-18B. Устройство по пункту 133143-1B, в котором один или более процессоров дополнительно выполнены с возможностью преупорядочения одного или более первых векторов на основании, по меньшей мере, кросс-корреляции для генерации переупорядоченных одного или более первых векторов, генерации битового потока для включения переупорядоченных одного или более первых векторов или кодированной версии переупорядоченных одного или более первых векторов, и указания в битовом потоке, как были переупорядочены один или более первых векторов.
[790] Пункт 133143-19B. Устройство по пункту 133143-1B, в котором кросс-корреляция облегчает извлечение одного или обоих из одного или более первых векторов и одного или более вторых векторов для способствования аудиокодированию одного или обоих из одного или более первых векторов и одного или более вторых векторов.
[791] На Фиг. 40D показана блок-схема, демонстрирующая пример устройства 510D аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 510D аудиокодирования может быть аналогичным устройству 51°C аудиокодирования тем, что устройство 510D аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 510D аудиокодирования может быть аналогичным блоку устройства 51°C аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения.
[792] Блок 512 сжатия аудиосигнала устройства 510D аудиокодирования однако может отличаться от блока 512 сжатия аудиосигнала устройства 51°C аудиокодирования тем, что блок 520 извлечения компонентов звукового поля включает в себя дополнительный блок, обозначенный как блок 534 квантования (“блок 534 квантования”). По этой причине, блок 520 извлечения компонентов звукового поля устройства 510D аудиокодирования обозначается как “блок 520D извлечения компонентов звукового поля”.
[793] Блок 534 квантования представляет блок, выполненный с возможностью квантования одного или более векторов 525E VTDIST и/или одного или более векторов 525F VTBG для генерации соответствующих одного или более векторов 525G VTQ_DIST и/или одного или более векторы 525H VTQ_BG. Блок 534 квантования может квантовать (что является членом обработки сигнала для математического округления посредством устранения битов, используемых для представления значения) один или более векторов 525E VTDIST для снижения количества битов, используемых для представления одного или более векторов 525E VTDIST в битовом потоке 517. В некоторых примерах, блок 534 квантования может квантовать 32-битовые значения одного или более векторов 525E VTDIST, заменяя эти 32-битовые значения округленными 16-битовыми значениями для генерации одного или более векторов 525G VTQ_DIST. В этом отношении, блок 534 квантования может действовать аналогично описанному выше в отношении блока 52 квантования устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4.
[794] Квантование такого рода может вносить ошибку в представление звукового поля, которое изменяется согласно грубости квантования. Другими словами, чем больше битов используется для представления одного или более векторов 525E VTDIST, тем меньше ошибка квантования. Ошибку квантования вследствие квантования векторов 525E VTDIST (которая может быть обозначена “EDIST”) можно определить вычитанием одного или более векторов 525E VTDIST из одного или более векторов 525G VTQ_DIST.
[795] В соответствии с методами, описанными в этом изобретении, устройство 510D аудиокодирования может компенсировать одну или более из ошибок квантования EDIST путем проецирования ошибки EDIST на или иного изменения одного или более из векторов 527 UDIST*SDIST или коэффициентов 531 сферических гармоник фона, генерируемых путем умножения одного или более векторов 525D UBG на один или более векторов 525B SBG и затем на один или более векторов 525F VTBG. В некоторых примерах, устройство 510D аудиокодирования может компенсировать только ошибку EDIST в векторах 527 UDIST*SDIST. В других примерах, устройство 510D аудиокодирования может компенсировать только ошибку EBG в коэффициентах сферических гармоник фона. В прочих примерах, устройство 510D аудиокодирования может компенсировать ошибку EDIST как в векторах 527 UDIST*SDIST, так и в коэффициентах сферических гармоник фона.
[796] В ходе эксплуатации, блок 524 анализа заметных компонентов может быть выполнен с возможностью вывода одного или более векторов 525 SDIST, одного или более векторов 525B SBG, одного или более векторов 525C UDIST, одного или более векторов 525D UBG, одного или более векторов 525E VTDIST и одного или более векторов 525F VTBG на математический блок 526. Блок 524 анализа заметных компонентов также может выводить один или более векторов 525E VTDIST на блок 534 квантования. Блок 534 квантования может квантовать один или более векторов 525E VTDIST для генерации одного или более векторов 525G VTQ_DIST. Блок 534 квантования может обеспечивать один или более векторов 525G VTQ_DIST на математический блок 526, также обеспечивая один или более векторов 525G VTQ_DIST на блок 532 переупорядочения векторов (как описано выше). Блок 532 переупорядочения векторов может действовать в отношении одного или более векторов 525G VTQ_DIST аналогично описанному выше в отношении векторов 525E VTDIST.
[797] После приема этих векторов 525-525G (“векторов 525”), математический блок 526 может сначала определять характерные коэффициенты сферических гармоник, которые описывают характерные компоненты звукового поля и коэффициенты сферических гармоник фона, которые описывали фоновые компоненты звукового поля. Блок 526 матричной математики может быть выполнен с возможностью определения характерных коэффициентов сферических гармоник путем умножения одного или более векторов 525C UDIST на один или более векторов 525A SDIST и затем на один или более векторов 525E VTDIST. Математический блок 526 может быть выполнен с возможностью определения коэффициентов сферических гармоник фона путем умножения одного или более векторов 525D UBG на один или более векторов SBG 525A и затем на один или более векторов VTBG 525E.
[798] Затем математический блок 526 может определять один или более скомпенсированных векторов 527’ UDIST*SDIST (которые могут быть аналогичны векторам 527 UDIST*SDIST за исключением того, что эти векторы включают в себя значения для компенсации ошибки EDIST) путем осуществления операции псевдообращения в отношении одного или более векторов 525G VTQ_DIST и затем умножения характерных сферических гармоник на псевдообратное одного или более векторов 525G VTQ_DIST. Блок 532 переупорядочения векторов может действовать вышеописанным образом для генерации переупорядоченных векторов 527’, которые затем аудиокодируются блоком 515A аудиокодирования для генерации аудиокодированных переупорядоченных векторы 515’, опять же, как описано выше.
[799] Затем математический блок 526 может проецировать ошибку EDIST в коэффициенты сферических гармоник фона. Математический блок 526 может, для осуществления этой проекции, определять или иначе выявлять исходные коэффициенты 511 сферических гармоник путем прибавления характерных коэффициентов сферических гармоник к коэффициентам сферических гармоник фона. Затем математический блок 526 может вычитать квантованные характерные коэффициенты сферических гармоник (которые могут генерироваться путем умножения векторов 525C UDIST на векторы 525A SDIST и затем на векторы 525G VTQ_DIST) и коэффициенты сферических гармоник фона из коэффициентов 511 сферических гармоник для определения оставшейся ошибки вследствие квантования векторов 519 VTDIST. Затем математический блок 526 может прибавлять эту ошибку к квантованным коэффициентам сферических гармоник фона для генерации скомпенсированных квантованных коэффициентов 531’ сферических гармоник фона.
[800] В любом случае, блок 528A снижения порядка может осуществлять, как описано выше, сокращение скомпенсированных квантованных коэффициентов 531’ сферических гармоник фона к приведенным коэффициентам 529’ сферических гармоник фона, которые могут аудиокодироваться блоком 514 аудиокодирования вышеописанным образом для генерации аудиокодированных приведенных коэффициентов 515B’ сферических гармоник фона.
[801] Таким образом, методы могут предусматривать, что устройство 510D аудиокодирования квантует один или более первых векторов, например векторы 525E VTDIST, представляющие один или более компонентов звукового поля, и компенсирует ошибку, вносимую вследствие квантования одного или более первых векторов в один или более вторых векторов, например векторов 527 UDIST*SDIST и/или векторов коэффициентов 531 сферических гармоник фона, которые также представляют те же один или более компонентов звукового поля.
[802] Кроме того, методы могут обеспечивать компенсацию этой ошибки квантования в соответствии со следующими пунктами.
[803] Пункт 133146-1B. Устройство, например, устройство 510D аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью квантования одного или более первых векторов, представляющих один или более характерных компонентов звукового поля, и компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют одни и те же один или более характерных компонентов звукового поля.
[804] Пункт 133146-2B. Устройство по пункту 133146-1B, в котором один или более процессоров выполнены с возможностью квантования одного или более векторов из транспонированной матрицы V, генерируемой, по меньшей мере, частично путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[805] Пункт 133146-3B. Устройство по пункту 133146-1B, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и при этом один или более процессоров выполнены с возможностью квантования одного или более векторов из транспонированной матрицы V.
[806] Пункт 133146-4B. Устройство по пункту 133146-1B, в котором один или более процессоров выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, в котором один или более процессоров выполнены с возможностью квантования одного или более векторов из транспонированной матрицы V, и при этом один или более процессоров выполнены с возможностью компенсации ошибки, вносимой вследствие квантования в один или более векторов U*S, вычисленные путем умножения одного или более векторов U матрицы U на один или более векторов S матрицы S.
[807] Пункт 133146-5B. Устройство по пункту 133146-1B, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов UDIST матрицы U, каждый из которых соответствует одному из характерных компонентов звукового поля, определения одного или более векторов SDIST матрицы S, каждый из которых соответствует одному и тому же одному из характерных компонентов звукового поля, и определения одного или более векторов VTDIST транспонированной матрицы V, каждый из которых соответствует одному и тому же одному из характерных компонентов звукового поля,
[808] в котором один или более процессоров выполнены с возможностью квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и при этом один или более процессоров выполнены с возможностью компенсации ошибки, вносимой вследствие квантования в один или более векторов UDIST*SDIST, вычисленных путем умножения одного или более векторов UDIST матрицы U на один или более векторов SDIST матрицы S для генерации одного или более векторов UDIST*SDIST с компенсацией ошибки.
[809] Пункт 133146-6B. Устройство по пункту 133146-5B, в котором один или более процессоров выполнены с возможностью определения характерных коэффициентов сферических гармоник на основании одного или более векторов UDIST, одного или более векторов SDIST и одного или более векторов VTDIST, и осуществления псевдообращения в отношении векторов VTQ_DIST для разделения характерных коэффициентов сферических гармоник на один или более векторов VTQ_DIST и, таким образом, генерации одного или более векторов UC_DIST*SC_DIST с компенсацией ошибки, которые компенсируют, по меньшей мере, частично ошибку, вносимую посредством квантования векторов VTDIST.
[810] Пункт 133146-7B. Устройство по пункту 133146-5B, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования одного или более векторов UDIST*SDISTс компенсацией ошибки.
[811] Пункт 133146-8B. Устройство по пункту 133146-1B, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов UBG матрицы U, которые описывают один или более фоновых компонентов звукового поля, и одного или более векторов UDIST матрицы U, которые описывают один или более характерных компонентов звукового поля, определения одного или более векторов SBG матрицы S, которые описывают один или более фоновых компонентов звукового поля, и одного или более векторов SDIST матрицы S, которые описывают один или более характерных компонентов звукового поля, и определения одного или более векторов VTDIST и один или более векторов VTBG транспонированной матрицы V, причем векторы VTDIST описывают один или более характерных компонентов звукового поля, и VTBG описывают один или более фоновых компонентов звукового поля, в котором один или более процессоров выполнены с возможностью квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и
в котором один или более процессоров дополнительно выполнены с возможностью компенсации, по меньшей мере, части ошибки, вносимой вследствие квантования в коэффициенты сферических гармоник фона, сформированные путем умножения одного или более векторов UBG на один или более векторов SBG и затем на один или более векторов VTBG для генерации коэффициентов сферических гармоник фона с компенсации ошибки.
[812] Пункт 133146-9B. Устройство по пункту 133146-8B, в котором один или более процессоров выполнены с возможностью определения ошибки на основании векторов VTDIST и одного или более векторов UDIST*SDIST, сформированных путем умножения векторов UDIST на векторы SDIST, и прибавления определенной ошибки к коэффициентам сферических гармоник фона для генерации коэффициентов сферических гармоник фона с компенсации ошибки.
[813] Пункт 133146-10B. Устройство по пункту 133146-8B, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования коэффициентов сферических гармоник фона с компенсации ошибки.
[814] Пункт 133146-11B. Устройство по пункту 133146-1B,
[815] в котором один или более процессоров выполнены с возможностью компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля для генерации одного или более вторых векторов с компенсацией ошибки, и при этом один или более процессоров дополнительно выполнены с возможностью генерации битового потока для включения одного или более вторых векторов с компенсацией ошибки и квантованных одного или более первых векторов.
[816] Пункт 133146-12B. Устройство по пункту 133146-1B, в котором один или более процессоров выполнены с возможностью компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля для генерации одного или более вторых векторов с компенсацией ошибки, и при этом один или более процессоров дополнительно выполнены с возможностью аудиокодирования одного или более вторых векторов с компенсацией ошибки, и генерации битового потока для включения аудиокодированных одного или более вторых векторов с компенсацией ошибки и квантованных одного или более первых векторов.
[817] Пункт 133146-1C. Устройство, например, устройство 510D аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью квантования одного или более первых векторов, представляющих один или более характерных компонентов звукового поля, и компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые представляют один или более фоновых компонентов звукового поля.
[818] Пункт 133146-2C. Устройство по пункту 133146-1C, в котором один или более процессоров выполнены с возможностью квантования одного или более векторов из транспонированной матрицы V, генерируемой, по меньшей мере, частично путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[819] Пункт 133146-3C. Устройство по пункту 133146-1C, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и при этом один или более процессоров выполнены с возможностью квантования одного или более векторов из транспонированной матрицы V.
[820] Пункт 133146-4C. Устройство по пункту 133146-1C, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов UDIST матрицы U, каждый из которых соответствует одному из характерных компонентов звукового поля, определения одного или более векторов SDIST матрицы S, каждый из которых соответствует одному и тому же одному из характерных компонентов звукового поля, и определения одного или более векторов VTDIST транспонированной матрицы V, каждый из которых соответствует одному и тому же одному из характерных компонентов звукового поля, в котором один или более процессоров выполнены с возможностью квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и компенсации, по меньшей мере, части ошибки, вносимой вследствие квантования в один или более векторов UDIST*SDIST, вычисленных путем умножения одного или более векторов UDIST матрицы U на один или более векторов SDIST матрицы S для генерации одного или более векторов UDIST*SDIST с компенсацией ошибки.
[821] Пункт 133146-5C. Устройство по пункту 133146-4C, в котором один или более процессоров выполнены с возможностью определения характерных коэффициентов сферических гармоник на основании одного или более векторов UDIST, одного или более векторов SDIST и одного или более векторов VTDIST, и осуществления псевдообращения в отношении векторов VTQ_DIST для разделения характерных коэффициентов сферических гармоник на один или более векторов VTQ_DIST и, таким образом, генерировать один или более векторов UC_DIST*SC_DIST, которые компенсируют, по меньшей мере, частично ошибку, вносимую посредством квантования векторов VTDIST.
[822] Пункт 133146-6C. Устройство по пункту 133146-4C, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования одного или более векторов UDIST*SDIST с компенсацией ошибки.
[823] Пункт 133146-7C. Устройство по пункту 133146-1C, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, представляющих звуковое поле, для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов UBG матрицы U, которые описывают один или более фоновых компонентов звукового поля, и одного или более векторов UDIST матрицы U, которые описывают один или более характерных компонентов звукового поля, определения одного или более векторов SBG матрицы S, которые описывают один или более фоновых компонентов звукового поля, и одного или более векторов SDIST матрицы S, которые описывают один или более характерных компонентов звукового поля, и определения одного или более векторов VTDIST и один или более векторов VTBG транспонированной матрицы V, причем векторы VTDIST описывают один или более характерных компонентов звукового поля, и VTBG описывают один или более фоновых компонентов звукового поля, в котором один или более процессоров выполнены с возможностью квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и при этом один или более процессоров выполнены с возможностью компенсации ошибки, вносимой вследствие квантования в коэффициенты сферических гармоник фона, сформированные путем умножения одного или более векторов UBG на один или более векторов SBG и затем на один или более векторов VTBG для генерации коэффициентов сферических гармоник фона с компенсации ошибки.
[824] Пункт 133146-8C. Устройство по пункту 133146-7C, в котором один или более процессоров выполнены с возможностью определения ошибки на основании векторов VTDIST и одного или более векторов UDIST*SDIST, сформированных путем умножения векторов UDIST на векторы SDIST, и прибавления определенной ошибки к коэффициентам сферических гармоник фона для генерации коэффициентов сферических гармоник фона с компенсации ошибки.
[825] Пункт 133146-9C. Устройство по пункту 133146-7C, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования коэффициентов сферических гармоник фона с компенсации ошибки.
[826] Пункт 133146-10C. Устройство по пункту 133146-1C, в котором один или более процессоров дополнительно выполнены с возможностью компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля для генерации одного или более вторых векторов с компенсацией ошибки, и генерации битового потока для включения одного или более вторых векторов с компенсацией ошибки и квантованных одного или более первых векторов.
[827] Пункт 133146-11C. Устройство по пункту 133146-1C, в котором один или более процессоров дополнительно выполнены с возможностью компенсации ошибки, вносимой вследствие квантования одного или более первых векторов в один или более вторых векторов, которые также представляют те же один или более компонентов звукового поля для генерации одного или более вторых векторов с компенсацией ошибки, аудиокодирования одного или более вторых векторов с компенсацией ошибки, и генерации битового потока для включения аудиокодированных одного или более вторых векторов с компенсацией ошибки и квантованных одного или более первых векторов.
[828] Другими словами, при использовании SVD на кадровой основе (или родственных способов, например, KLT и PCA) разложение на сигналах HoA в целях уменьшения ширины полосы, методы, описанные в этом изобретении, могут предусматривать, что устройство 10D аудиокодирования квантует первые несколько векторов матрицы U (умноженные на соответствующие сингулярные значения матрицы S), а также соответствующие векторы вектора V. Они будут содержать 'фоновые' или ‘характерные’ компоненты звукового поля. Затем методы могут предусматривать, что устройство 510D аудиокодирования кодирует векторы U*S с использованием машины аудиокодирования типа "черный ящик", например кодера AAC. Вектор V может подвергаться скалярному или векторному квантованию.
[829] Кроме того, некоторые из оставшихся векторов в матрице U можно умножать на соответствующие сингулярные значения матрицы S и матрицы V и также кодировать с использованием машины аудиокодирования типа "черный ящик". Они будут содержать 'фоновые' компоненты звукового поля. Простое 16-битовое скалярное квантование векторов V может приводить к служебной нагрузке приблизительно 80 кбит/с для 4-го порядка (25 коэффициентов) и 160 кбит/с для 6-го порядка (49 коэффициентов). Более грубое квантование может приводить к более значительным ошибкам квантования. Методы, описанные в этом изобретении, могут компенсировать ошибку квантования векторов V путем 'проецирования' ошибки квантования вектора V на компоненты переднего плана и фона.
[830] Методы в этом изобретении могут включать в себя вычисление квантованной версии фактического вектора V. Этот квантованный вектор V может именоваться V' (где V'=V+e). Лежащий в основе сигнал HOA, для компонентов переднего плана, которые методы пытаются воссоздать, задается как H_f=USV, где U, S и V содержат только элементы переднего плана. В целях этого рассмотрения, US будет заменена единичным набором векторов U. Таким образом, H_f=UV. При условии, что мы имеем ошибочный V', методы пытаются воссоздать H_f как можно точнее. Таким образом, методы могут предусматривать, что устройство 10D аудиокодирования находит U', таким образом, что H_f=U'V'. Устройство 10D аудиокодирования может использовать методологию псевдообращения, которая позволяет U'=H_f [V']^(-1). С использованием так называемой машины аудиокодирования типа "черный ящик" для кодирования U', методы могут минимизировать ошибку в H, обусловленную так называемым ошибочным вектором V'.
[831] Аналогичным образом, методы также могут предусматривать, что устройство аудиокодирования проецирует ошибку вследствие квантования V в фоновые элементы. Устройство 510D аудиокодирования может быть выполнено с возможностью воссоздания полного сигнала HOA, который является комбинацией сигналов HoA переднего плана и фона, т.е., H=H_f+H_b. Это, опять же, можно смоделировать как H=H_f +e+H_b, вследствие ошибки квантования в V'. Таким образом, вместо подачи H_b на 'аудиокодер типа черного ящика', мы подаем (e+H_b) на аудиокодер, фактически компенсирующий ошибку в V'. На практике, это позволяет компенсировать ошибку только до порядка, определенного устройством 510D аудиокодирования для отправки для фоновых элементов.
[832] На Фиг. 40E показана блок-схема, демонстрирующая пример устройства 510E аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 510E аудиокодирования может быть аналогичным устройству 510D аудиокодирования тем, что устройство 510E аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 510E аудиокодирования может быть аналогичным блоку устройства 510D аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения.
[833] Блок 512 сжатия аудиосигнала устройства 510E аудиокодирования однако может отличаться от блока 512 сжатия аудиосигнала устройства 510D аудиокодирования тем, что математический блок 526 блока 520 извлечения компонентов звукового поля осуществляет дополнительные аспекты методов, описанных в этом изобретении для дополнительного приведения матрица 519A V до включения приведенной версии транспонированной матрицы 519A V в битовый поток 517. По этой причине, блок 520 извлечения компонентов звукового поля устройства 510E аудиокодирования обозначается как “блок 520E извлечения компонентов звукового поля”.
[834] В примере, приведенном на фиг. 40E, блок 528 снижения порядка, вместо пересылки приведенных коэффициентов 529’ сферических гармоник фона на блок 514 аудиокодирования, возвращает приведенные коэффициенты 529’ сферических гармоник фона на математический блок 526. Как упомянуто выше, эти приведенные коэффициенты 529’ сферических гармоник фона могут быть сокращены путем удаления коэффициентов, соответствующих сферическим базисным функциям, имеющим один или более идентифицированных порядков и/или подпорядков. Сниженный порядок приведенных коэффициентов 529’ сферических гармоник фона может быть обозначен переменной NBG.
[835] При условии, что блок 520E извлечения компонентов звукового поля может не осуществлять снижение порядка в отношении переупорядоченных одного или более векторов UDIST*SDIST 533’, порядок этого разложения коэффициентов сферических гармоник, описывающих характерные компоненты звукового поля (который может быть обозначен переменной NDIST) может быть больше порядка фона, NBG. Другими словами, NBG обычно может быть меньше NDIST. Одна возможная причина того, что NBG может быть меньше NDIST, состоит в предположении, что фоновые компоненты не имеют большой направленности, благодаря чему, сферические базисные функции более высокого порядка не требуются, что позволяет снижать порядка и приводит к тому, что NBG меньше NDIST.
[836] При условии, что переупорядоченные один или более векторов 539 VTQ_DIST ранее отправлялись открыто, без аудиокодирования этих векторов 539 в битовом потоке 517, как показано в примерах, приведенных на фиг. 40A-40D, переупорядоченные один или более векторов 539 VTQ_DIST могут потреблять значительную ширину полосы. В порядке одного примера, каждый из переупорядоченных один или более векторов 539 VTQ_DIST, при квантовании в 16-битовые скалярные значения, могут потреблять приблизительно 20 кбит/с для аудиоданных амбиофонии четвертого порядка (где каждый вектор имеет 25 коэффициентов) и 40 кбит/с для аудиоданных амбиофонии шестого порядка (где каждый вектор имеет 49 коэффициентов).
[837] В соответствии с различными аспектами методов, описанных в этом изобретении, блок 520E извлечения компонентов звукового поля может снижать количество битов, которое нужно указывать для коэффициентов сферических гармоник или их разложений, например, переупорядоченных одного или более векторов 539 VTQ_DIST. В некоторых примерах, математический блок 526 может определять, на основании коэффициентов 529’ сферических гармоник сниженного порядка, те из переупорядоченных векторов 539 VTQ_DIST, которые подлежат удалению и рекомендации с коэффициентами 529’ сферических гармоник сниженного порядка, и те из переупорядоченных векторов 539 VTQ_DIST, которые служат для формирования векторов 521 VTSMALL. Таким образом, математический блок 526 может определять порядок коэффициентов 529’ сферических гармоник сниженного порядка, где этот порядок может быть обозначен NBG. Переупорядоченные векторы 539 VTQ_DIST могут иметь порядок, обозначенный переменной NDIST, где NDIST больше, чем порядок NBG.
[838] Затем математический блок 526 может вычленять первые NBG порядков переупорядоченных векторов 539 VTQ_DIST, удалять векторы, указывающие разложенные коэффициенты сферических гармоник, соответствующие сферическим базисным функциям, имеющим порядок, меньший или равный NBG. Эти удаленные переупорядоченные векторы 539 VTQ_DIST затем можно использовать для формирования промежуточных коэффициентов сферических гармоник путем умножения переупорядоченных векторов 533’ UDIST*SDIST, представляющих разложенные версии коэффициентов 511 сферических гармоник, соответствующих сферическим базисным функциям, имеющим порядок, меньший или равный NBG, на удаленные переупорядоченные векторы 539 VTQ_DIST для формирования промежуточных характерных коэффициентов сферических гармоник. Затем математический блок 526 может генерировать модифицированные коэффициенты 537 сферических гармоник фона путем прибавления промежуточных характерных коэффициентов сферических гармоник к коэффициентам 529’ сферических гармоник сниженного порядка. Затем математический блок 526 может передавать эти модифицированные коэффициенты 537 сферических гармоник фона на блок 514 аудиокодирования, который аудиокодирует эти коэффициенты 537 для формирования аудиокодированных модифицированных коэффициентов 515B’ сферических гармоник фона.
[839] Затем математический блок 526 может передавать один или более векторов 521 VTSMALL, которые могут представлять векторы 539, представляющие разложенную форму коэффициентов 511 сферических гармоник, соответствующих сферическим базисным функциям, имеющим порядок, больший NBG и меньший или равный NDIST. В этом отношении, математический блок 526 может осуществлять операции, аналогичные операциям блока 46 приведения коэффициентов устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4. Математический блок 526 может передавать один или более векторов 521 VTSMALL на блок 516 генерации битового потока, который может генерировать битовый поток 517 для включения векторов 521 VTSMALL часто в своей исходной неаудиокодированной форме. При условии, что векторы 521 VTSMALL включает в себя меньше векторов, чем переупорядоченные векторы 539 VTQ_DIST, методы могут облегчать выделение меньшего количества битов переупорядоченным векторам 539 VTQ_DIST за счет указания только векторов 521 VTSMALL в битовом потоке 517.
[840] Хотя они не показаны как квантуемые, в ряде случаев, устройство 510E аудиокодирования может квантовать векторы 525F VTBG. В ряде случаев, например, когда блок 514 аудиокодирования не используется для сжатия коэффициентов сферических гармоник фона, устройство 510E аудиокодирования может квантовать векторы 525F VTBG.
[841] Таким образом, методы могут предусматривать, что устройство 510E аудиокодирования определяет, по меньшей мере, один из одного или более векторов, разложенных из коэффициентов сферических гармоник для рекомбинации с коэффициентами сферических гармоник фона для снижения количества битов которые необходимо выделять одному или более векторам в битовом потоке, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[842] Таким образом, методы могут предусматривать, что устройство 510E аудиокодирования сконфигурировано в соответствии со следующими пунктами.
[843] Пункт 133149-1A. Устройство, например, устройство 510E аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью определения по меньшей мере, один из одного или более векторов, разложенных из коэффициентов сферических гармоник для рекомбинации с коэффициентами сферических гармоник фона для снижения количества битов которые необходимо выделять одному или более векторам в битовом потоке, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[844] Пункт 133149-2A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью генерации сокращенного набора из одного или более векторов путем удаления определенных, по меньшей мере, одного из одного или более векторов из одного или более векторов.
[845] Пункт 133149-3A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью генерации сокращенного набора из одного или более векторов путем удаления определенных, по меньшей мере, одного из одного или более векторов из одного или более векторов, рекомбинации удаленных, по меньшей мере, одного из одного или более векторов с коэффициентами сферических гармоник фона для генерации модифицированных коэффициентов сферических гармоник фона, и генерации битового потока для включения сокращенного набора из одного или более векторов и модифицированных коэффициентов сферических гармоник фона.
[846] Пункт 133149-4A. Устройство по пункту 133149-3A, в котором сокращенный набор из одного или более векторов включен в битовый поток без первоначального аудиокодирования.
[847] Пункт 133149-5A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью генерации сокращенного набора из одного или более векторов путем удаления определенных, по меньшей мере, одного из одного или более векторов из одного или более векторов, рекомбинации удаленных, по меньшей мере, одного из одного или более векторов с коэффициентами сферических гармоник фона для генерации модифицированных коэффициентов сферических гармоник фона, аудиокодирования модифицированных коэффициентов сферических гармоник фона, и генерации битового потока для включения сокращенного набора из одного или более векторов и аудиокодированных модифицированных коэффициентов сферических гармоник фона.
[848] Пункт 133149-6A. Устройство по пункту 133149-1A, в котором один или более векторов содержат векторы, представляющие, по меньшей мере, некоторый аспект одного или более характерных компонентов звукового поля.
[849] Пункт 133149-7A. Устройство по пункту 133149-1A, в котором один или более векторов содержат один или более векторов из транспонированной матрицы V, генерируемой, по меньшей мере, частично путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[850] Пункт 133149-8A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и при этом один или более векторов содержат один или более векторов из транспонированной матрицы V.
[851] Пункт 133149-9A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления снижения порядка в отношении коэффициентов сферических гармоник фона для удаления тех из коэффициентов сферических гармоник фона, которые соответствуют сферическим базисным функциям, имеющим идентифицированный порядок и/или подпорядок, причем коэффициенты сферических гармоник фона соответствуют порядку NBG.
[852] Пункт 133149-10A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления снижения порядка в отношении коэффициентов сферических гармоник фона для удаления тех из коэффициентов сферических гармоник фона, которые соответствуют сферическим базисным функциям, имеющим идентифицированный порядок и/или подпорядок, причем коэффициенты сферических гармоник фона соответствуют порядку NBG, который меньше, чем порядок характерных коэффициентов сферических гармоник, NDIST, и при этом характерные коэффициенты сферических гармоник представляют характерные компоненты звукового поля.
[853] Пункт 133149-11A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления снижения порядка в отношении коэффициентов сферических гармоник фона для удаления тех из коэффициентов сферических гармоник фона, которые соответствуют сферическим базисным функциям, имеющим идентифицированный порядок и/или подпорядок, причем коэффициенты сферических гармоник фона соответствуют порядку NBG, который меньше, чем порядок характерных коэффициентов сферических гармоник, NDIST, и при этом характерные коэффициенты сферических гармоник представляют характерные компоненты звукового поля и не подвергаются снижению порядка.
[854] Пункт 133149-12A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и определения одного или более векторов VTDIST и один или более VTBG транспонированной матрицы V, причем один или более векторов VTDIST описывают один или более характерных компонентов звукового поля, и один или более векторов VTBG описывают один или более фоновых компонентов звукового поля, и при этом один или более векторов включают в себя один или более векторов VTDIST.
[855] Пункт 133149-13A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов VTDIST и одного или более VTBG транспонированной матрицы V, причем один или более векторов VDIST описывают один или более характерных компонентов звукового поля, и один или более векторов VBG описывают один или более фоновых компонентов звукового поля, и квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и при этом один или более векторов включают в себя один или более векторов VTQ_DIST.
[856] Пункт 133149-14A. Устройство по любому из пунктов 133149-12A или 133149-13A, в котором один или более процессоров дополнительно выполнены с возможностью определения одного или более векторов UDIST и одного или более векторов UBG матрицы U, причем один или более векторов UDIST описывают один или более характерных компонентов звукового поля, и один или более векторов UBG описывают один или более фоновых компонентов звукового поля, и определения одного или более векторов SDIST и одного или более векторов SBG матрицы S, причем один или более векторов SDIST описывают один или более характерных компонентов звукового поля, и один или более векторов SBG описывают один или более фоновых компонентов звукового поля.
[857] Пункт 133149-15A. Устройство по пункту 133149-14A, в котором один или более процессоров дополнительно выполнены с возможностью определения коэффициентов сферических гармоник фона как функции одного или более векторов UBG, одного или более векторов SBG и одного или более VTBG, осуществления снижения порядка в отношении коэффициентов сферических гармоник фона для генерации приведенных коэффициентов сферических гармоник фона, имеющих порядок, равный NBG, умножения одного или более UDIST на один или более векторов SDIST для генерации одного или более векторов UDIST*SDIST, удаления определенного, по меньшей мере, одного из одного или более векторов из одного или более векторов для генерации сокращенного набора из одного или более векторов, умножения одного или более векторов UDIST*SDIST на удаленный, по меньшей мере, один из одного или более векторов VTDIST или одного или более векторов VTQ_DIST для генерации промежуточных характерных коэффициентов сферических гармоник, и прибавления промежуточных характерных коэффициентов сферических гармоник к коэффициенту сферической гармоники фона для рекомбинации удаленных, по меньшей мере, одного из одного или более векторов VTDIST или одного или более векторов VTQ_DIST с коэффициентами сферических гармоник фона.
[858] Пункт 133149-16A. Устройство по пункту 133149-14A, в котором один или более процессоров дополнительно выполнены с возможностью определения коэффициентов сферических гармоник фона как функции одного или более векторов UBG, одного или более векторов SBG и одного или более VTBG, осуществления снижения порядка в отношении коэффициентов сферических гармоник фона для генерации приведенных коэффициентов сферических гармоник фона, имеющих порядок, равный NBG, умножения одного или более UDIST на один или более векторов SDIST для генерации одного или более векторов UDIST*SDIST, переупорядочения одного или более векторов UDIST*SDIST для генерации переупорядоченных одного или более векторов UDIST*SDIST, удаления определенного, по меньшей мере, одного из одного или более векторов из одного или более векторов для генерации сокращенного набора из одного или более векторов, умножения переупорядоченных одного или более векторов UDIST*SDIST на удаленный, по меньшей мере, один из одного или более векторов VTDIST или одного или более векторов VTQ_DIST для генерации промежуточных характерных коэффициентов сферических гармоник, и прибавления промежуточных характерных коэффициентов сферических гармоник к коэффициенту сферической гармоники фона для рекомбинации удаленных, по меньшей мере, одного из одного или более векторов VTDIST или одного или более векторов VTQ_DIST с коэффициентами сферических гармоник фона.
[859] Пункт 133149-17A. Устройство по любому из пунктов 133149-15A или 133149-16A, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования коэффициентов сферических гармоник фона после прибавления промежуточных характерных коэффициентов сферических гармоник к коэффициентам сферических гармоник фона, и генерации битового потока для включения аудиокодированных коэффициентов сферических гармоник фона.
[860] Пункт 133149-18A. Устройство по пункту 133149-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, определения одного или более векторов VTDIST и одного или более VTBG транспонированной матрицы V, причем один или более векторов VDIST описывают один или более характерных компонентов звукового поля, и один или более векторов VBG описывают один или более фоновых компонентов звукового поля, квантования одного или более векторов VTDIST для генерации одного или более векторов VTQ_DIST, и переупорядочения одного или более векторов VTQ_DIST для генерации переупорядоченных одного или более векторов VTQ_DIST, и при этом один или более векторов включают в себя переупорядоченные один или более векторов VTQ_DIST.
[861] На Фиг. 40F показана блок-схема, демонстрирующая иллюстративное устройство 510F аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 510F аудиокодирования может быть аналогичным устройству 51°C аудиокодирования тем, что устройство 510F аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 510F аудиокодирования может быть аналогичным блоку устройства 51°C аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения и блок 532 переупорядочения векторов, которые могут действовать аналогично соответствующим блокам устройства 51°C аудиокодирования. В некоторых примерах, устройство 510F аудиокодирования может включать в себя блок 534 квантования, как описано со ссылкой на фиг. 40D и 40E, для квантования одного или более векторов из любых векторов 525C UDIST, векторов 525D UBG, векторов 525E VTDIST и векторов 525J VTBG.
[862] Блок 512 сжатия аудиосигнала устройства 510F аудиокодирования однако может отличаться от блока 512 сжатия аудиосигнала устройства 51°C аудиокодирования тем, что блок 524 анализа заметных компонентов блока 520 извлечения компонентов звукового поля может осуществлять анализ контента для выбора количества компонентов переднего плана, обозначенный как D в контексте фиг. 40A-40J. Другими словами, блок 524 анализа заметных компонентов может действовать в отношении матриц 519 U, S и V вышеописанным образом для идентификации, сгенерированы ли разложенные версии коэффициентов сферических гармоник из синтетических аудиообъектов или из естественной записи с помощью микрофона. Затем блок 524 анализа заметных компонентов может определять D на основании этого синтетического определения.
[863] Кроме того, блок 512 сжатия аудиосигнала устройства 510F аудиокодирования может отличаться от блока 512 сжатия аудиосигнала устройства 51°C аудиокодирования тем, что блок 520 извлечения компонентов звукового поля может включать в себя дополнительный блок, блок 528F снижения порядка и сохранения энергии (проиллюстрированный как “блок 528F снижения порядка и сохранения энергии”). По этим причинам, блок 520 извлечения компонентов звукового поля устройства 510F аудиокодирования обозначается как “блок 520F извлечения компонентов звукового поля”.
[864] Блок 528F снижения порядка и сохранения энергии представляет блок, выполненный с возможностью осуществления снижение порядка фоновых компонентов матрицы 525H VBG, представляющих правые сингулярные векторы из множества коэффициентов 511 сферических гармоник, и при этом сохранения полной энергии (и загрязняющего звукового давления) звукового поля, описанного частично полной матрицей 525H VBG. В этом отношении, блок 528F снижения порядка и сохранения энергии может осуществлять операции, аналогичные описанным выше в отношении блока 48 выбора фона и блока 38 компенсации энергии устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4.
[865] Полная матрица 525H VBG имеет размерность (N+1)2 x (N+1)2 - D, где D представляет количество главных компонентов или, другими словами, сингулярных значений, которые определяются как заметные в том смысле, что они являются характерные аудиокомпоненты звукового поля. Таким образом, полная матрица 525H VBG включает в себя те сингулярные значения, которые определяются как фоновые (BG) или, другими словами, окружающие или нехарактерные аудиокомпоненты звукового поля.
[866] Как описано выше в отношении, например, блока 524 снижения порядка на фиг. 40B-40E, блок 528F снижения порядка и сохранения энергии может удалять, исключать или иначе устранять (часто путем обнуления) фоновых сингулярных значений матрицы 525H VBG, соответствующих сферическим базисным функциям более высокого порядка. Блок 528F снижения порядка и сохранения энергии может выводить приведенную версию матрицы 525H VBG (обозначенной как “матрица 525I VBG’” и именуемой далее “приведенной матрицей 525I VBG’”) на блок 522 транспонирования. Приведенная матрица 525I VBG’ может иметь размерность (ῆ+1)2 x (N+1)2-D, где ῆ<N. Блок 522 транспонирования применяет операцию транспонирования к приведенной матрице 525I VBG’ для генерации и вывода транспонированной приведенной матрицы 525J VTBG’ на математический блок 526, который может действовать для реконструкции фоновых звуковых компонентов звукового поля путем вычисления UBG*SBG*VTBG с использованием матрицы 525D UBG, матрицы 525B SBG, и транспонированной приведенной матрицы 525J VTBG’.
[867] В соответствии с описанными здесь методами, блок 528F снижения порядка и сохранения энергии дополнительно выполнен с возможностью компенсации возможного снижения полной энергии фоновых звуковых компонентов звукового поля, обусловленного снижением порядка полной матрицы 525H VBG для генерации приведенной матрицы 525I VBG’. В некоторых примерах, блок 528F снижения порядка и сохранения энергии компенсирует путем определения коэффициента усиления компенсации в форме значений усиления для применения к каждому из (N+1)2-D столбцов приведенной матрицы 525I VBG’ для увеличения среднеквадратической (RMS) энергии приведенной матрицы 525I VBG’, чтобы они были равны или, по меньшей мере, более приближены к RMS полной матрицы 525H VBG, до вывода приведенной матрицы 525I VBG’ на блок 522 транспонирования.
[868] В ряде случаев, блок 528F снижения порядка и сохранения энергии может определять энергию RMS каждого столбца полной матрицы 525H VBG и энергию RMS каждого столбца приведенной матрицы 525I VBG’, затем определять значение усиления для столбца как отношение первой к последней, как указано в следующем уравнении:
[869] где - значение усиления для столбца, vBG представляет единичный столбец матрицы 525H VBG, и vBG’ представляет соответствующий единичный столбец матрицы 525I VBG’. Это может быть представлено в матричной форме как:
где - вектор RMS, элементы которого обозначают RMS каждого столбца матрицы 525H VBG, - вектор RMS, элементы которого обозначают RMS каждого столбца приведенной матрицы 525I VBG’, и A - вектор значений усиления, имеющий элементы для каждого столбца матрицы 525H VBG. Блок 528F снижения порядка и сохранения энергии применяет скалярное умножение к каждому столбцу приведенной матрицы VBG 525I с использованием соответствующего значения усиления, , или в векторной форме:
,
[870] где представляет приведенную матрицу 525I VBG’, включающую в себя компенсацию энергии. Блок 528F снижения порядка и сохранения энергии может выводить приведенную матрицу 525I VBG’, включающую в себя компенсацию энергии, на блок 522 транспонирования для выравнивания (или приблизительного выравнивания) RMS приведенной матрицы 525I VBG’ с RMS полной матрицы 525H VBG. Выходная размерность приведенной матрицы 525I VBG’, включающей в себя компенсацию энергии, может быть равна (ῆ+1)2x (N+1)2-D.
[871] В некоторых примерах, для определения каждого RMS соответствующих столбцов приведенной матрицы 525I VBG’ и полной матрицы 525H VBG, блок 528F снижения порядка и сохранения энергии может сначала применять рендеризатор опорных коэффициентов сферических гармоник (SHC) к столбцам. Применение рендеризатора опорных SHC блоком 528F снижения порядка и сохранения энергии позволяет определять RMS в области SHC для определения энергии общего звукового поля, описанного каждым столбцом кадра, представленного приведенной матрицей 525I VBG’ и полной матрицей 525H VBG. Таким образом, в таких примерах, блок 528F снижения порядка и сохранения энергии может применять рендеризатор опорных SHC к каждому столбцу полной матрицы 525H VBG и к каждому сокращенному столбцу приведенной матрицы 525I VBG’, определять соответствующие значения RMS для столбца и сокращенного столбца, и определять значение усиления для столбца как отношение значения RMS для столбца к значению RMS для сокращенного столбца. В некоторых примерах, снижение порядка до приведенной матрицы 525I VBG’ обеспечивает постолбцовое совпадение для сохранения энергии. Это можно выразить в псевдокоде следующим образом:
R=ReferenceRenderer;
for m=numDist+1: numChannels
fullV=V(:,m); //берет один столбец V => fullV
reducedV =[fullV(1:numBG); zeros(numChannels-numBG,1)];
alpha=sqrt(sum((fullV'*R).^2)/ sum ((reducedV'*R).^2));
if isnan(alpha) || isinf(alpha), alpha=1; end;
V_out(:,m)=reducedV * alpha;
end
[872] В вышеприведенном псевдокоде, numChannels может представлять (N+1)2 - D, numBG может представлять (ῆ +1)2, V может представлять матрица 525H VBG, и V_out может представлять приведенная матрица 525I VBG’, и R может представлять рендеризатор опорных SHC блока 528F снижения порядка и сохранения энергии. Размерность V может быть равна (N+1)2 x (N+1)2-D, и размерность V_out может быть равна (ῆ+1)2x(N+1)2-D.
[873] В результате, устройство 510F аудиокодирования может, при представлении множества коэффициентов 511 сферических гармоник, реконструировать фоновые звуковые компоненты с использованием матрицы 525I VBG’ сниженного порядка, которая включает в себя компенсацию возможной потери энергии в результате процесса снижения порядка.
[874] На Фиг. 40G показана блок-схема, демонстрирующая иллюстративное устройство 510G аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. В примере, приведенном на фиг. 40G, устройство 510G аудиокодирования включает в себя блок 520F извлечения компонентов звукового поля. В свою очередь, блок 520F извлечения компонентов звукового поля включает в себя блок 524G анализа заметных компонентов.
[875] Блок 512 сжатия аудиосигнала устройства 510G аудиокодирования однако может отличаться от блока 512 сжатия аудиосигнала устройства аудиокодирования 10F тем, что блок 512 сжатия аудиосигнала устройства 510G аудиокодирования включает в себя блок 524G анализа заметных компонентов. Блок 524G анализа заметных компонентов может представлять блок, выполненный с возможностью определения заметности или характерности аудиоданных, представляющих звуковое поле, с использованием информации на основе направленности, связанной с аудиоданными.
[876] Хотя определения на основе энергии могут улучшать рендеризацию звукового поля, разложенного посредством SVD для идентификации характерных аудиокомпонентов звукового поля, определения на основе энергии также могут приводить к тому, что устройство ошибочно идентифицирует фоновые аудиокомпоненты как характерные аудиокомпоненты, в случаях, когда фоновые аудиокомпоненты демонстрируют высокий уровень энергии. Таким образом, разделение характерных и фоновых аудиокомпонентов только на основе энергии может быть ненадежным, поскольку энергетичные (например, более громкие) фоновые аудиокомпоненты могут неправильно идентифицироваться как характерные аудиокомпоненты. Чтобы более надежно различать между характерными и фоновыми аудиокомпонентами звукового поля, различные аспекты методов, описанных в этом изобретении, могут предусматривать, что блок 524G анализа заметных компонентов для осуществления анализа на основе направленности SHC 511 для выделения характерных и фоновых аудиокомпонентов из разложенных версий SHC 511.
[877] Блок 524G анализа заметных компонентов может, в примере, приведенном на фиг. 40H, представлять блок, сконфигурированный или иначе выполненный с возможностью выделения характерных (или переднеплановых) элементов из фоновых элементов, включенных в один или более из матрицы 519 V, матрицы 519B S и матрицы 519C U, аналогично блокам 524 анализа заметных компонентов ранее описанных устройств 510-510F аудиокодирования. Согласно некоторым методам на основе SVD, наиболее энергетичные компоненты (например, первые несколько векторов одной или более из матриц 519-519C V, S и U или матрицы, выведенной из них) можно рассматривать как характерные компоненты. Однако, наиболее энергетичные компоненты (которые представлены векторами) одной или более из матриц 519-519C могут не во всех сценариях представлять наиболее направленные компоненты/сигналы.
[878] В отличие от ранее описанных блоков 524 анализа заметных компонентов, блок 524G анализа заметных компонентов может реализовать один или более аспектов методов, описанных здесь для идентификации элементов переднего плана на основании направленности векторов одной или более из матриц 519-519C или матрицы, выведенной из них. В некоторых примерах, блок 524G анализа заметных компонентов может идентифицировать или выбрать в качестве характерных аудиокомпонентов (где компоненты также могут именоваться “объектами”), один или более векторов на основании энергии и направленности векторов. Например, блок 524G анализа заметных компонентов может идентифицировать те векторы одной или более из матриц 519-519C (или матрицы, выведенной из них) которые демонстрируют высокую энергию и высокую направленность (например, представленную как показатель направленности) в качестве характерных аудиокомпонентов. В результате, если блок 524G анализа заметных компонентов определяет, что конкретный вектор является относительно менее направленным по сравнению с другими векторами одной или более из матриц 519-519C (или матрицы, выведенной из них), то, независимо от уровня энергии, связанного с конкретным вектором, блок 524G анализа заметных компонентов может определить, что конкретный вектор представляет аудиокомпоненты фона (или окружения) звукового поля, представленного SHC 511. В этом отношении, блок 524G анализа заметных компонентов может осуществлять операции, аналогичные описанным выше в отношении блока 44 анализа звукового поля устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4.
[879] В некоторых реализациях, блок 524G анализа заметных компонентов может идентифицировать характерные аудиообъекты (которые, как упомянуто выше, также могут именоваться “компоненты”) на основании направленности, путем осуществления следующих операций. Блок 524G анализа заметных компонентов может умножать (например, с использованием одного или более процессов матричного умножения) матрицу 519A V на матрицу 519B S. Путем перемножения матрицы 519A V и матрицы 519B S, блок 524G анализа заметных компонентов может получать матрицу VS. Дополнительно, блок 524G анализа заметных компонентов может возводить в квадрат (т.е., возводить в степень два), по меньшей мере, некоторые из элементов каждого из векторов (который может быть строкой) матрицы VS. В ряде случаев, блок 524G анализа заметных компонентов может суммировать квадраты элементов каждого вектора, которые связаны с порядком, большим 1. В порядке одного примера, если каждый вектор матрицы включает в себя 25 элементов, блок 524G анализа заметных компонентов может, в отношении каждого вектора, возводить в квадрат элементы каждого вектора, начиная с пятого элемента и заканчивая двадцать пятым элементом, суммируя квадраты элементов для определения показателя направленности (или индикатора направленности). Каждая операция суммирования может давать показатель направленности для соответствующего вектора. В этом примере, блок 524G анализа заметных компонентов может определить, что те элементы каждой строки, которые связаны с порядком, меньшим или равным 1, а именно, элементы с первого по четвертый, в большей степени относятся к величине энергии и в меньшей степени к направленности этих элементов. Таким образом, амбиофония более низкого порядка, связанная с порядком нуль или один, соответствуют сферическим базисным функциям, которые, как показано на фиг. 1 и фиг. 2, не обеспечивают много в отношении направления волны давления, но зато обеспечивают некоторую громкость (которая представляет энергию).
[880] Операции, описанные в вышеприведенном примере, также могут быть выражены согласно следующему псевдокоду. Нижеприведенный псевдокод включает в себя аннотации, в форме операторов комментариев, которые заключены между последовательными экземплярами строк символов “/*” и “*/” (без кавычек).
[U,S,V]=svd(audioframe,'ecom');
VS=V*S;
/* Следующая строка относится к независимому анализу каждой строки, и суммированию значений в первой (в порядке одного примера) строке от пятого элемента до двадцать пятого элемента для определения показателя направленности или метрики направленности для соответствующего вектора. Возвести в квадрат элементы до суммирования. Элементы в каждой строке, которые связаны с порядком, большим 1, связаны с амбиофонией более высокого порядка, и, таким образом, с большей вероятностью являются направленными. */
sumVS=sum(VS(5:end,:).^2,1);
/* Следующая строка относится к сортировке суммы квадратов для генерируемой матрицы VS, и выбору набора наибольших значений (например, трех или четырех наибольших значений) */
[~,idxVS]=sort(sumVS,'descend');
U=U(:,idxVS);
V=V(:,idxVS);
S=S(idxVS,idxVS);
[881] Другими словами, согласно вышеприведенному псевдокоду, блок 524G анализа заметных компонентов может выбирать элементы каждого вектора матрицы VS, разложенной из SHC 511, соответствующего сферической базисной функции, имеющей порядок, больший единицы. Затем блок 524G анализа заметных компонентов может возводить в квадрат эти элементы для каждого вектора матрицы VS, суммировать квадраты элементов для идентификации, вычислять или иначе определять метрику или показатель направленности для каждого вектора матрицы VS. Затем, блок 524G анализа заметных компонентов может сортировать векторы матрицы VS на основании соответствующих метрик направленности каждого из векторов. Блок 524G анализа заметных компонентов может сортировать эти векторы в порядке убывания метрик направленности, таким образом, что векторы с наивысшей соответствующей направленностью являются первыми, и векторы с самой низкой соответствующей направленностью являются последними. Блок 524G анализа заметных компонентов может затем выбирать ненулевой поднабор векторов, имеющих наивысшую относительную метрику направленности.
[882] Согласно некоторым аспектам описанных здесь методов, устройство 510G аудиокодирования, или один или более его компонентов, может идентифицировать или иначе использовать заранее определенное количество векторов матрицы VS в качестве характерных аудиокомпонентов. Например, после выбора элементов с 5 по 25 каждой строки матрицы VS и возведения в квадрат и суммирования выбранных элементов для определения относительной метрики направленности для каждого соответствующего вектора, блок 524G анализа заметных компонентов может реализовать дополнительный выбор среди векторов для идентификации векторов, которые представляют характерные аудиокомпоненты. В некоторых примерах, блок 524G анализа заметных компонентов может выбирать заранее определенное количество векторов матрицы VS, сравнивая показатели направленности векторов. В порядке одного примера, блок 524G анализа заметных компонентов может выбирать четыре вектора, представленные в матрице VS, которые имеют четыре наивысших показателя направленности (и которые являются первыми четырьмя векторами сортированной матрицы VS). В свою очередь, блок 524G анализа заметных компонентов может определить, что четыре выбранных векторов представляют четыре наиболее характерных аудиообъекта, связанных с соответствующим представлением SHC звукового поля.
[883] В некоторых примерах, блок 524G анализа заметных компонентов может переупорядочивать векторы, выведенные из матрицы VS, для отражения характерности четырех выбранных векторов, как описано выше. В одном примере, блок 524G анализа заметных компонентов может переупорядочивать векторы таким образом, что четыре выбранных элемента перемещаются в верхнюю часть матрицы VS. Например, блок 524G анализа заметных компонентов может изменять матрицу VS таким образом, что все четыре выбранных элемента располагаются в первой (или самой верхней) строке результирующей переупорядоченной матрицы VS. Хотя оно описано здесь в отношении блока 524G анализа заметных компонентов, в различных реализациях, переупорядочение могут осуществлять другие компоненты устройства 510G аудиокодирования, например, блок 532 переупорядочения векторов.
[884] Блок 524G анализа заметных компонентов может передавать результирующую матрицу (т.е., матрицу VS, переупорядоченную или нет, что может быть) на блок 516 генерации битового потока. В свою очередь, блок 516 генерации битового потока может использовать матрицу 525K VS для генерации битового потока 517. Например, если блок 524G анализа заметных компонентов переупорядочил матрицу 525K VS, блок 516 генерации битового потока может использовать верхнюю строку переупорядоченной версии матрицы 525K VS как характерные аудиообъекты, например посредством квантования или отбрасывания оставшихся векторов переупорядоченной версии матрицы 525K VS. Посредством квантования оставшихся векторов переупорядоченной версии матрицы 525K VS, блок 16 генерации битового потока может рассматривать оставшиеся векторы как окружающие или фоновые аудиоданные.
[885] В примерах, где блок 524G анализа заметных компонентов не переупорядочивал матрицу 525K VS, блок 516 генерации битового потока может отличать характерные аудиоданные от фоновых аудиоданных, на основании конкретных элементов (например, элементов с 5-го по 25-й) каждой строки матрицы 525K VS, как выбранных блоком 524G анализа заметных компонентов. Например, блок 516 генерации битового потока может генерировать битовый поток 517 посредством квантования или отбрасывания первых четырех элементов каждой строки матрицы 525K VS.
[886] Таким образом, устройство 510G аудиокодирования и/или их компоненты, например, блок 524G анализа заметных компонентов, может реализовать методы этого изобретения для определения или иного использования отношений энергий более высоких и более низких коэффициентов аудиоданных, для различения между характерными аудиообъектами и фоновыми аудиоданными, представляющими звуковое поле. Например, как описано, блок 524G анализа заметных компонентов может использовать отношения энергии на основании значений различных элементов матрицы 525K VS, генерируемой блоком 524H анализа заметных компонентов. Путем объединения данных, обеспеченных матрицей 519A V и матрицей 519B S, блок 524G анализа заметных компонентов может генерировать матрицу 525K VS для обеспечения информации о направленности и полной энергии различных компонентов аудиоданных, в форме векторов и соответствующих данных (например, показателей направленности). В частности, матрица 519A V может обеспечивать информацию, относящуюся к определениям направленности, тогда как матрица 519B S может обеспечивать информацию, относящуюся к определениям полной энергии для компонентов аудиоданных.
[887] В других примерах, блок 524G анализа заметных компонентов может генерировать матрицу 525K VS с использованием переупорядоченных векторов 539 VTDIST. В этих примерах, блок 524G анализа заметных компонентов может определять характерность на основании матрицы 519 V, до любого изменения на основании матрицы 519B S. Другими словами, согласно этим примерам, блок 524G анализа заметных компонентов может определять направленность с использованием только матрицы 519 V, не осуществляя этап генерации матрицы 525K VS. В частности, матрица 519A V может обеспечивать информацию о том, каким образом смешиваются компоненты (например, векторы матрицы 519 V) аудиоданных, и, потенциально, информацию о различных синергетических эффектах данных, переносимых векторами. Например, матрица 519A V может обеспечивать информацию о “направлении прибытия” различных аудиокомпонентов, представленных векторами, например, направлении прибытия каждого аудиокомпонента, пересылаемого на устройство 510G аудиокодирования посредством EigenMike®. Используемый здесь термин “компонент аудиоданных” можно использовать взаимозаменяемо с “элементом” любой из матриц 519 или любых выведенных из них матриц.
[888] Согласно некоторым реализациям методов этого изобретения, блок 524G анализа заметных компонентов может пополнять или дополнять представления SHC посторонней информацией для производства различных описанных здесь определений. В порядке одного примера, блок 524G анализа заметных компонентов может дополнять SHC посторонней информацией для определения заметности различных аудиокомпонентов, представленных в матрицах 519-519C. В порядке другого примера, блок 524G анализа заметных компонентов и/или блок 532 переупорядочения векторов может дополнять HOA посторонними данными для различения между характерными аудиообъектами и фоновыми аудиоданными.
[889] В некоторых примерах, блок 524G анализа заметных компонентов может обнаруживать, что участки (например, характерные аудиообъекты) аудиоданных отображают кейнсианскую энергию. Пример таких характерных объектов может быть связан с человеческим голосом, который модулирует. В случае аудиоданных на основе голоса, которые модулируют, блок 524G анализа заметных компонентов может определить, что энергия модулирующих данных, как отношение к энергиям оставшихся компонентов, остается приблизительно постоянной (например, постоянная в пороговом диапазоне) или приблизительно неподвижной в течение времени. Традиционно, если энергетические характеристики характерных аудиокомпонентов с кейнсианской энергией (например связанных с модулирующим голосам) изменяются от одного кадра аудио к другому, устройство может быть не способно идентифицировать последовательность аудиокомпонентов как единый сигнал. Однако блок 524G анализа заметных компонентов может реализовать методы этого изобретения для определения направленности или апертуры объекта расстояния, представленного как вектор в различных матрицах.
[890] В частности, блок 524G анализа заметных компонентов может определить, что характеристики, например, направленность и/или апертура вряд-ли существенно изменяются по кадрам аудио. Используемый здесь термин апертура представляет отношение коэффициентов более высокого порядка к коэффициентам более низкого порядка, в аудиоданных. Каждая строка матрицы 519A V может включать в себя векторы которые соответствуют конкретному SHC. Блок 524G анализа заметных компонентов может определить, что SHC более низкого порядка (например, связанному с порядком, меньшим или равным 1) свойственно представлять данные окружения, тогда как элементам более высокого порядка свойственно представлять характерные данные. Дополнительно, блок 524G анализа заметных компонентов может определить, что, во многих случаях, SHC более высокого порядка (например, связанные с порядком, большим 1) отображают более высокие энергия, и что отношение энергии SHC более высокого порядка к SHC более низкого порядка остается, по существу, аналогичным (или приблизительно постоянным) от кадра аудио к кадру аудио.
[891] Один или более компонентов блока 524G анализа заметных компонентов может определять характеристики аудиоданных, например, направленность и апертуру, с использованием матрицы 519 V. Таким образом, компоненты устройства 510G аудиокодирования, например, блок 524G анализа заметных компонентов, может реализовать описанные здесь методы для определения заметности и/или отличения характерных аудиообъектов от фонового аудио, с использованием информации на основе направленности. С использованием направленности для определения заметности и/или характерности, блок 524G анализа заметных компонентов может достигать более надежных определений, чем в случаях устройства, выполненного с возможностью определения заметности и/или характерности с использованием только данных на основе энергии. Хотя он описан выше в отношении определений заметности и/или характерности на основе направленности, блок 524G анализа заметных компонентов может реализовать методы этого изобретения для использования направленности помимо других характеристик, например, энергии, для определения заметности и/или характерности конкретных компонентов аудиоданных, которые представлены векторами одной или более из матриц 519-519C (или любой выведенной из них матрицы).
[892] В некоторых примерах, способ включает в себя идентификацию одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник (SHC), связанных с аудиообъектами, на основании направленности, определенной для одного или более из аудиообъектов. В одном примере, способ дополнительно включает в себя определение направленности одного или более аудиообъектов на основании коэффициентов сферических гармоник, связанных с аудиообъектами. В некоторых примерах, способ дополнительно включает в себя осуществление разложения на сингулярные значения в отношении коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник; и представления множества коэффициентов сферических гармоник как функции, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V, причем определение соответствующей направленности одного или более аудиообъектов базируется, по меньшей мере, частично на матрице V.
[893] В одном примере, способ дополнительно включает в себя переупорядочение один или более векторов матрицы V таким образом, что векторы, имеющие более высокий показатель направленности, располагаются над векторами, имеющими более низкий показатель направленности, в переупорядоченной матрице V. В одном примере, способ дополнительно включает в себя определение, что векторы, имеющие более высокий показатель направленности, включают в себя больше информации направленности, чем векторы, имеющие более низкий показатель направленности. В одном примере, способ дополнительно включает в себя умножение матрицы V на матрицу S для генерации матрицы VS, причем матрица VS включает в себя один или более векторов. В одном примере, способ дополнительно включает в себя выбор элементов каждой строки матрицы VS которые связаны с порядком, большим 1, возведение в квадрат каждый из выбранных элементов для формирования соответствующих квадратов элементов, и, для каждой строки матрицы VS, суммирование квадратов всех элементов для определения показателя направленности для соответствующего вектора.
[894] В некоторых примерах, каждая строка матрицы VS включает в себя 25 элементов. В одном примере, выбор элементов каждой строки матрицы VS, связанной с порядком, большим 1, включает в себя выбор всех элементов, начиная с 5-го элемента каждой строки матрицы VS и заканчивая 25-ым элементом каждой строки матрицы VS. В одном примере, способ дополнительно включает в себя выбор поднабора векторов матрицы VS для представления характерных аудиообъектов. В некоторых примерах, выбор поднабора включает в себя выбор четырех векторов матрицы VS, и выбранные четыре вектора имеют четыре наибольших показателя направленности из всех векторов матрицы VS. В одном примере, определение, что выбранный поднабор векторов представляет характерные аудиообъекты, на основании направленности и энергии каждого вектора.
[895] В некоторых примерах, способ включает в себя идентификацию одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник, связанных с аудиообъектами, на основании направленности и энергии, определенной для одного или более из аудиообъектов. В одном примере, способ дополнительно включает в себя определение одного или обоих из направленности и энергии одного или более аудиообъектов на основании коэффициентов сферических гармоник, связанных с аудиообъектами. В некоторых примерах, способ дополнительно включает в себя осуществление разложения на сингулярные значения в отношении коэффициентов сферических гармоник, представляющих звуковое поле для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и представления множества коэффициентов сферических гармоник как функции, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V, причем определение соответствующей направленности одного или более аудиообъектов базируется, по меньшей мере, частично на матрице V, и при этом определение соответствующей энергии одного или более аудиообъектов на основании, по меньшей мере, частично, матрицы S.
[896] В одном примере, способ дополнительно включает в себя умножение матрицы V на матрицу S для генерации матрицы VS, причем матрица VS включает в себя один или более векторов. В некоторых примерах, способ дополнительно включает в себя выбор элементов каждой строки матрицы VS которые связаны с порядком, большим 1, возведение в квадрат каждый из выбранных элементов для формирования соответствующих квадратов элементов, и, для каждой строки матрицы VS, суммирование квадратов всех элементов для генерации показателя направленности для соответствующего вектора матрицы VS. В некоторых примерах, каждая строка матрицы VS включает в себя 25 элементов. В одном примере, выбор элементов каждой строки матрицы VS, связанной с порядком, большим 1, содержит выбор всех элементов, начиная с 5-го элемента каждой строки матрицы VS и заканчивая 25-ым элементом каждой строки матрицы VS. В некоторых примерах, способ дополнительно включает в себя выбор поднабора векторов для представления характерных аудиообъектов. В одном примере, выбор поднабора содержит выбор четырех векторов матрицы VS, и выбранные четыре вектора имеют четыре наибольших показателя направленности из всех векторов матрицы VS. В некоторых примерах, определение, что выбранный поднабор векторов представляет характерные аудиообъекты, на основании направленности и энергии каждого вектора.
[897] В некоторых примерах, способ включает в себя определение, с использованием информации на основе направленности, одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов сферических гармоник. В одном примере, преобразование содержит разложение на сингулярные значения, которое генерирует матрицу U, представляющую левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицу S, представляющую сингулярные значения из множества коэффициентов сферических гармоник, и матрицу V, представляющую правые сингулярные векторы из множества коэффициентов сферических гармоник. В одном примере, преобразование содержит анализ главных компонентов для идентификации характерных компонентов звукового поля и фоновых компонентов звукового поля.
[898] В некоторых примерах, устройство сконфигурировано или иначе выполнено с возможностью осуществления любых описанных здесь методов или любой комбинации методов. В некоторых примерах, на считываемом компьютером носителе данных хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять любые описанные здесь методы или любую комбинацию методов. В некоторых примерах, устройство включает в себя средство для осуществления любых описанных здесь методов или любой комбинации методов.
[899] Таким образом, вышеприведенные аспекты методов могут предусматривать, что устройство 510G аудиокодирования выполнено с возможностью действовать в соответствии со следующими пунктами.
[900] Пункт 134954-1B. Устройство, например, устройство 510G аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью идентификации одного или более характерных аудиообъектов из одного или более коэффициентов сферических гармоник, связанных с аудиообъектами, на основании направленности и энергии, определенной для одного или более из аудиообъектов.
[901] Пункт 134954-2B. Устройство по пункту 134954-1B, в котором один или более процессоров дополнительно выполнены с возможностью определения одного или обоих из направленности и энергии одного или более аудиообъектов на основании коэффициентов сферических гармоник, связанных с аудиообъектами.
[902] Пункт 134954-3B. Устройство по любому из пп. 1B или 2B или их комбинации, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении коэффициентов сферических гармоник, представляющих звуковое поле для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник, и представлять множество коэффициентов сферических гармоник как функцию, по меньшей мере, части одной или более из матрицы U, матрицы S и матрицы V, в котором один или более процессоров выполнены с возможностью определения соответствующей направленности одного или более аудиообъектов на основании, по меньшей мере, частично матрицы V, и при этом один или более процессоров выполнены с возможностью определения соответствующей энергии одного или более аудиообъектов на основании, по меньшей мере, частично, матрицы S.
[903] Пункт 134954-4B. Устройство по пункту 134954-3B, в котором один или более процессоров дополнительно выполнены с возможностью умножения матрицы V на матрицу S для генерации матрицы VS, причем матрица VS включает в себя один или более векторов.
[904] Пункт 134954-5B. Устройство по пункту 134954-4B, в котором один или более процессоров дополнительно выполнены с возможностью выбора элементов каждой строки матрицы VS, которые связаны с порядком, большим 1, возведения в квадрат каждого из выбранных элементов для формирования соответствующих квадратов элементов, и, для каждой строки матрицы VS, суммирования квадратов всех элементов для генерации показателя направленности для соответствующего вектора матрицы VS.
[905] Пункт 134954-6B. Устройство по любому из пп. 5B и 6B или их комбинации, в котором каждая строка матрицы VS включает в себя 25 элементов.
[906] Пункт 134954-7B. Устройство по пункту 134954-6B, в котором один или более процессоров выполнены с возможностью выбора все элементы начиная с 5-го элемента каждой строки матрицы VS и заканчивая 25-ым элементом каждой строки матрицы VS.
[907] Пункт 134954-8B. Устройство по любому из пункта 134954-6B и пункта 134954-7B или их комбинации, в котором один или более процессоров дополнительно выполнены с возможностью выбора поднабора векторов для представления характерных аудиообъектов.
[908] Пункт 134954-9B. Устройство по пункту 134954-8B, в котором один или более процессоров выполнены с возможностью выбора четырех векторов матрицы VS, и при этом выбранные четыре вектора имеют четыре наибольших показателя направленности из всех векторов матрицы VS.
[909] Пункт 134954-10B. Устройство по любому из пункта 134954-8B и пункта 134954-9B или их комбинации, в котором один или более процессоров дополнительно выполнены с возможностью определения, что выбранный поднабор векторов представляет характерные аудиообъекты, на основании направленности и энергии каждого вектора.
[910] Пункт 134954-1C. Устройство, например, устройство 510G аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью определения, с использованием информации на основе направленности, одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления преобразования в отношении множества коэффициентов сферических гармоник.
[911] Пункт 134954-2C. Способ по пункту 134954-1C, в котором преобразование содержит разложение на сингулярные значения, которое генерирует матрицу U, представляющую левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицу S, представляющую сингулярные значения из множества коэффициентов сферических гармоник, и матрицу V, представляющую правые сингулярные векторы из множества коэффициентов сферических гармоник.
[912] Пункт 134954-3C. Способ по пункту 134954-2C, дополнительно содержащий операции согласно любой комбинации пунктов 134954-1A - 134954-12A и пунктов 134954-1B - 134954-9B.
[913] Пункт 134954-4C. Способ по пункту 134954-1C, в котором преобразование содержит анализ главных компонентов для идентификации характерных компонентов звукового поля и фоновых компонентов звукового поля.
[914] На Фиг. 40H показана блок-схема, демонстрирующая иллюстративное устройство 510H аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 510H аудиокодирования может быть аналогичным устройству 510G аудиокодирования тем, что устройство 510H аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 510H аудиокодирования может быть аналогичным блоку устройства 510G аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения и блок 520G извлечения компонентов звукового поля, которые могут действовать аналогично соответствующим блокам устройства 510G аудиокодирования. В некоторых примерах, устройство 510H аудиокодирования может включать в себя блок 534 квантования, как описано со ссылкой на фиг. 40D-40E, для квантования одного или более векторов из любых векторов 525C UDIST, векторов 525D UBG, векторов 525E VTDIST и векторов 525J VTBG.
[915] Блок 512 сжатия аудиосигнала устройства 510H аудиокодирования однако может отличаться от блока 512 сжатия аудиосигнала устройства 510G аудиокодирования тем, что блок 512 сжатия аудиосигнала устройства 510H аудиокодирования включает в себя дополнительный блок, обозначенный как блок 550 интерполяции. Блок 550 интерполяции может представлять блок, который интерполирует подкадры первого кадра аудио из подкадров первого кадра аудио и второго во времени последующего или предыдущего кадра аудио, как более подробно описано ниже со ссылкой на фиг. 45 и 45B. Блок 550 интерполяции может, при осуществлении этой интерполяции, снижать вычислительную сложность (в отношении циклов обработки и/или потребления памяти) путем потенциального снижения степени, в которой блок 518 разложения требуется для разложения SHC 511. В этом отношении, блок 550 интерполяции может осуществлять операции, аналогичные описанным выше в отношении блока 50 пространственно-временной интерполяции устройства 24 аудиокодирования, показанного в примере, приведенном на фиг. 4.
[916] Таким образом, разложение на сингулярные значения, осуществляемое блоком 518 разложения, потенциально требует большого объема ресурсов процессора и/или памяти, и также, в некоторых примерах, занимает много времени для разложения SHC 511, в особенности при увеличении порядка SHC 511. Для сокращения времени и повышения эффективности сжатия SHC 511 (в отношении циклов обработки и/или потребления памяти), методы, описанные в этом изобретении, могут предусматривать интерполяцию одного или более подкадров первого кадра аудио, где каждый из подкадров может представлять разложенные версии SHC 511. Вместо осуществления SVD в отношении всего кадра, методы могут предусматривать, что блок 518 разложения разлагает первый подкадр первого кадра аудио, генерируя матрицу 519’ V.
[917] Блок 518 разложения также может разлагать второй подкадр второго кадра аудио, где этот второй кадр аудио может быть последующим во времени или предыдущим во времени первому кадру аудио. Блок 518 разложения может выводить матрицу 519’ V для этого подкадра второго кадра аудио. Затем блок 550 интерполяции может интерполировать оставшиеся подкадры первого кадра аудио на основании матриц 519’ V, разложенных из первого и второго подкадра, выводить матрицу 519 V, матрицу 519B S и матрицу 519C U, где разложения для оставшихся подкадров можно вычислять на основании SHC 511, матрицы 519A V для первого кадра аудио и интерполированных матриц 519 V для оставшихся подкадров первого кадра аудио. Таким образом, интерполяция позволяет избежать вычисления разложений для оставшихся подкадров первого кадра аудио.
[918] Кроме того, как упомянуто выше, матрица 519C U может не быть непрерывной от кадра к кадру, где характерные компоненты матрицы 519C U, разложенной из первого кадра аудио SHC 511 могут указываться в других строках и/или столбцах, чем в матрице 519C U, разложенной из второго кадра аудио SHC 511. Благодаря осуществлению этой интерполяции, нарушение непрерывности может снижаться при условии, что линейная интерполяция может иметь сглаживающее действие, которое может снижать любые артефакты, вносимые вследствие границ кадра (или, другими словами, сегментирования SHC 511 на кадры). Использование матрицы 519’ V для осуществления этой интерполяции и затем восстановление матрицы 519C U на основании интерполированной матрицы 519’ V из SHC 511 позволяет сглаживать любые эффекты от переупорядочения матрицы 519C U.
[919] В ходе эксплуатации, блок 550 интерполяции может интерполировать один или более подкадров первого кадра аудио из первого разложения, например, матрицы 519’ V, части первого множества коэффициентов 511 сферических гармоник, включенных в первый кадр, и второго разложения, например, матрицы 519’ V, части второго множества коэффициентов 511 сферических гармоник, включенных во второй кадр, для генерации разложенных интерполированных коэффициентов сферических гармоник для одного или более подкадров.
[920] В некоторых примерах, первое разложение содержит первую матрицу 519’ V, представляющую правые сингулярные векторы части первого множества коэффициентов 511 сферических гармоник. Аналогично, в некоторых примерах, второе разложение содержит вторую матрицу 519’ V, представляющую правые сингулярные векторы части второго множества коэффициентов сферических гармоник.
[921] Блок 550 интерполяции может осуществлять временную интерполяцию в отношении одного или более подкадров на основании первой матрицы 519’ V и второй матрицы 519’ V. Таким образом, блок 550 интерполяции может интерполировать во времени, например, второй, третий и четвертый подкадры из четырех полных подкадров для первого кадра аудио на основании матрицы 519’ V, разложенной из первого подкадра первого кадра аудио, и матрицы 519’ V, разложенной из первого подкадра второго кадра аудио. В некоторых примерах, эта временная интерполяция является линейной временной интерполяции, где матрица 519’ V, разложенная из первого подкадра первого кадра аудио, получает больший вес при интерполировании второго подкадра первого кадра аудио, чем при интерполировании четвертого подкадра первого кадра аудио. При интерполировании третьего подкадра, матрицы 519’ V могут получать одинаковый вес. При интерполировании четвертого подкадра, матрица 519’ V, разложенная из первого подкадра второго кадра аудио, может получать больший вес, чем матрица 519’ V, разложенная из первого подкадра первого кадра аудио.
[922] Другими словами, линейная временная интерполяция может взвешивать матрицы 519’ V с учетом близости одного из подкадров первого кадра аудио, подлежащего интерполяции. Для второго подкадра, подлежащего интерполяции, матрица 519’ V, разложенная из первого подкадра первого кадра аудио, получает больший вес с учетом его близости ко второму подкадру, подлежащему интерполяции, чем матрица 519’ V, разложенная из первого подкадра второго кадра аудио. Весовые коэффициенты, по этой причине, могут быть эквивалентны при интерполировании третьего подкадра на основании матриц 519’ V. Весовой коэффициент, применяемый к матрице 519’ V, разложенной из первого подкадра второго кадра аудио, может быть больше, чем применяемый к матрице 519’ V, разложенной из первого подкадра первого кадра аудио, при условии, что четвертый подкадр, подлежащий интерполяции, ближе к первому подкадру второго кадра аудио, чем первый подкадр первого кадра аудио.
[923] Хотя, в некоторых примерах, только первый подкадр каждого кадра аудио используется для осуществления интерполяции, часть первого множества коэффициентов сферических гармоник может содержать два из четырех подкадров первого множества коэффициентов 511 сферических гармоник. В этих и других примерах, часть второго множества коэффициентов 511 сферических гармоник содержит два из четырех подкадров второго множества коэффициентов 511 сферических гармоник.
[924] Как упомянуто выше, единое устройство, например, устройство 510H аудиокодирования, может осуществлять интерполяцию, при этом также разлагая часть первого множества коэффициентов сферических гармоник для генерации первых разложений части первого множества коэффициентов сферических гармоник. В этих и других примерах, блок 518 разложения может разлагать часть второго множества коэффициентов сферических гармоник для генерации вторых разложений части второго множества коэффициентов сферических гармоник. Хотя они описаны в отношении единого устройства, два или более устройств может осуществлять методы, описанные в этом изобретении, где одно из двух устройств осуществляет разложение и другое из устройств осуществляет интерполяцию в соответствии с методами, описанными в этом изобретении.
[925] Другими словами, 3D аудио на основе сферических гармоник может быть параметрическим представление 3D поля давления в отношении ортогональных базисных функций на сфере. Чем выше порядок N представления, тем потенциально выше пространственное разрешение, и, часто, тем больше количество коэффициентов сферических гармоник (SH) (для всего (N+1)2 коэффициентов). Для многих применений, может потребоваться, чтобы сжатие полосы коэффициентов позволяло эффективно передавать и сохранять коэффициенты. Эти методы, предусмотренные в этом изобретении, могут обеспечивать процесс снижения размерности на кадровой основе с использованием разложения на сингулярные значения (SVD). Анализ SVD может разлагать каждый кадр коэффициентов на три матрицы U, S и V. В некоторых примерах, методы могут обрабатывать некоторые из векторов в U как направленные компоненты лежащего в основе звукового поля. Однако, при такой обработке, эти векторы (в U) являются разрывными от кадра к кадру, хотя они представляют один и тот же характерный аудиокомпонент. Эти нарушения непрерывности могут приводить к значительным артефактам, когда компоненты поступают через преобразующие аудиокодеры.
[926] Методы, описанные в этом изобретении, позволяют справиться с этим нарушением непрерывности. Таким образом, методы могут основываться на том наблюдении, что матрицу V можно интерпретировать как ортогональные пространственные оси в области сферических гармоник. Матрица U может представлять проекцию данных сферических гармоник (HOA) в отношении этих базисных функций, где нарушение непрерывности может приписываться базисным функциям (V), которые изменяют каждый кадр, и, таким образом, сами являются разрывными. В этом состоит отличие от аналогичного разложения, например, преобразования Фурье, где базисные функции, в некоторых примерах, постоянны от кадра к кадру. В этом отношении, SVD можно рассматривать как алгоритм преследования совпадения. Методы, описанные в этом изобретении, могут предусматривать, что блок 550 интерполяции поддерживает непрерывность между базисными функциями (V) от кадра к кадру - путем интерполяции между ними.
[927] В некоторых примерах, методы предусматривают, что блок 550 интерполяции разделяет кадр данных SH на четыре подкадра, как описано выше и дополнительно описано ниже со ссылкой на фиг. 45 и 45B. Затем блок 550 интерполяции может вычислять SVD для первого подкадра. Аналогично вычисляется SVD для первого подкадра второго кадра. Для каждого из первого кадра и второго кадра, блок 550 интерполяции может преобразовывать векторы в V в пространственную карту путем проецирования векторов на сферу (с использованием проекционной матрицы, например, T-образной матрицы). Затем блок 550 интерполяции может интерпретировать векторы в V как формы на сфере. Для интерполяции матриц V для трех подкадров между первым подкадром первого кадра и первым подкадром следующего кадра, блок 550 интерполяции затем может интерполировать эти пространственные формы и затем преобразовывать их обратно в SH векторы посредством обратной проекционной матрицы. Методы этого изобретения, таким образом, могут обеспечивать плавный переход между матрицами V.
[928] Таким образом, устройство 510H аудиокодирования может быть выполнено с возможностью осуществления различных аспектов методов, изложенных ниже в отношении следующих пунктов.
[929] Пункт 135054-1A. Устройство, например, устройство 510H аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью интерполяции одного или более подкадров первого кадра из первого разложения части первого множества коэффициентов сферических гармоник, включенных в первый кадр, и второго разложения части второго множества коэффициентов сферических гармоник, включенных во второй кадр, для генерации разложенных интерполированных коэффициентов сферических гармоник для одного или более подкадров.
[930] Пункт 135054-2A. Устройство по пункту 135054-1A, в котором первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы части первого множества коэффициентов сферических гармоник.
[931] Пункт 135054-3A. Устройство по пункту 135054-1A, в котором второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы части второго множества коэффициентов сферических гармоник.
[932] Пункт 135054-4A. Устройство по пункту 135054-1A, в котором первое разложение содержит первую матрицу V, представляющую правые сингулярные векторы части первого множества коэффициентов сферических гармоник, и при этом второе разложение содержит вторую матрицу V, представляющую правые сингулярные векторы части второго множества коэффициентов сферических гармоник.
[933] Пункт 135054-5A. Устройство по пункту 135054-1A, в котором один или более процессоров дополнительно выполнены с возможностью, при интерполировании одного или более подкадров, интерполировать во времени один или более подкадров на основании первого разложения и второго разложения.
[934] Пункт 135054-6A. Устройство по пункту 135054-1A, в котором один или более процессоров дополнительно выполнены с возможностью, при интерполировании одного или более подкадров, проецировать первое разложение в пространственную область для генерации первых проекционных разложений, проецировать второе разложение в пространственную область для генерации вторых проекционных разложений, пространственно интерполировать первые проекционные разложения и вторые проекционные разложения для генерации первого пространственно интерполированного проекционного разложения и второго пространственно интерполированного проекционного разложения, и интерполировать во времени один или более подкадров на основании первого пространственно интерполированного проекционного разложения и второго пространственно интерполированного проекционного разложения.
[935] Пункт 135054-7A. Устройство по пункту 135054-6A, в котором один или более процессоров дополнительно выполнены с возможностью проецировать интерполированные во времени коэффициенты сферических гармоник, обусловленные интерполированием одного или более подкадров, обратно в область сферических гармоник.
[936] Пункт 135054-8A. Устройство по пункту 135054-1A, в котором часть первого множества коэффициентов сферических гармоник содержит единственный подкадр первого множества коэффициентов сферических гармоник.
[937] Пункт 135054-9A. Устройство по пункту 135054-1A, в котором часть второго множества коэффициентов сферических гармоник содержит единственный подкадр второго множества коэффициентов сферических гармоник.
[938] Пункт 135054-10A. Устройство по пункту 135054-1A,
[939] в котором первый кадр делится на четыре подкадра, и
[940] в котором часть первого множества коэффициентов сферических гармоник содержит только первый подкадр первого множества коэффициентов сферических гармоник.
[941] Пункт 135054-11A. Устройство по пункту 135054-1A,
[942] в котором второй кадр делится на четыре подкадра, и
[943] в котором часть второго множества коэффициентов сферических гармоник содержит только первый подкадр второго множества коэффициентов сферических гармоник.
[944] Пункт 135054-12A. Устройство по пункту 135054-1A, в котором часть первого множества коэффициентов сферических гармоник содержит два из четырех подкадров первого множества коэффициентов сферических гармоник.
[945] Пункт 135054-13A. Устройство по пункту 135054-1A, в котором часть второго множества коэффициентов сферических гармоник содержит два из четырех подкадров второго множества коэффициентов сферических гармоник.
[946] Пункт 135054-14A. Устройство по пункту 135054-1A, в котором один или более процессоров дополнительно выполнены с возможностью разложения части первого множества коэффициентов сферических гармоник для генерации первых разложений части первого множества коэффициентов сферических гармоник.
[947] Пункт 135054-15A. Устройство по пункту 135054-1A, в котором один или более процессоров дополнительно выполнены с возможностью разложения части второго множества коэффициентов сферических гармоник для генерации вторых разложений части второго множества коэффициентов сферических гармоник.
[948] Пункт 135054-16A. Устройство по пункту 135054-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении части первого множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы первого множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения первого множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы первого множества коэффициентов сферических гармоник.
[949] Пункт 135054-17A. Устройство по пункту 135054-1A, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении части второго множества коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы второго множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения второго множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[950] Пункт 135054-18A. Устройство по пункту 135054-1A, в котором первое и второе множества коэффициентов сферических гармоник представляет плосковолновое представление звукового поля.
[951] Пункт 135054-19A. Устройство по пункту 135054-1A, в котором первое и второе множества коэффициентов сферических гармоник представляет один или более смешанных друг с другом монофонических аудиообъектов.
[952] Пункт 135054-20A. Устройство по пункту 135054-1A, в котором первое и второе множества коэффициентов сферических гармоник содержат соответствующие первый и второй коэффициенты сферических гармоник, которые представляют трехмерное звуковое поле.
[953] Пункт 135054-21A. Устройство по пункту 135054-1A, в котором первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, больший единицы.
[954] Пункт 135054-22A. Устройство по пункту 135054-1A, в котором первое и второе множества коэффициентов сферических гармоник связаны с, по меньшей мере, одной сферической базисной функцией, имеющей порядок, равный четырем.
[955] Хотя они описаны выше как осуществляемые устройством 510H аудиокодирования, различные устройства аудиодекодирования 24 и 540 также могут осуществлять любой из различных аспектов методов, изложенных выше в отношении пунктов 135054-1A - 135054-22A.
[956] На Фиг. 40I показана блок-схема, демонстрирующая иллюстративное устройство 510I аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 510I аудиокодирования может быть аналогичным устройству 510H аудиокодирования тем, что устройство 510I аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 510I аудиокодирования может быть аналогичным блоку устройства 510H аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения и блок 520 извлечения компонентов звукового поля, которые могут действовать аналогично соответствующим блокам устройства 510H аудиокодирования. В некоторых примерах, устройство аудиокодирования 10I может включать в себя блок квантования 34, как описано со ссылкой на фиг. 3D-3E, для квантования одного или более векторов любой из UDIST 25C, UBG 25D, VTDIST 25E и VTBG 25J.
[957] Однако, хотя и блок 512 сжатия аудиосигнала устройства 510I аудиокодирования, и блок 512 сжатия аудиосигнала устройства аудиокодирования 10H включают в себя блок извлечения компонентов звукового поля, блок 520I извлечения компонентов звукового поля устройства 510I аудиокодирования может включать в себя дополнительный модуль, именуемый блоком 552 сжатия V. Блок 552 сжатия V может представлять блок, выполненный с возможностью сжатия пространственной компоненты звукового поля, т.е., одного или более из векторов 539 VTDIST в этом примере. Таким образом, разложение на сингулярные значения, осуществляемое в отношении SHC может разлагать SHC (представляющий звуковое поле) на энергетические компоненты, представленные векторами матрицы S, временные компоненты, представленные матрицей U, и пространственные компоненты, представленные матрицей V. Блок 552 сжатия V может осуществлять операции, аналогичные описанным выше в отношении блока 52 квантования.
[958] Для примера, предполагается, что векторы 539 VTDIST содержат два вектора-строки, имеющие 25 элементов каждый (что предполагает представление HOA звукового поля четвертого порядка). Хотя описание приведено в отношении двух векторов-строк, любое количество векторов может быть включено в векторы 539 VTDIST вплоть до (n+1)2, где n обозначает порядок представления HOA звукового поля.
[959] Блок 552 сжатия V может принимать векторы 539 VTDIST и осуществлять схему сжатия для генерации сжатого вектора VTDIST представления 539’. Эта схема сжатия могут предусматривать, в общем случае, любую допустимую схему сжатия для сжатия элементов вектора или данных, и не подлежат ограничению примером, более детально описанным ниже.
[960] Блок 552 сжатия V может осуществлять, в порядке примера, схему сжатия, которая включает в себя один или более из преобразования представлений с плавающей запятой каждого элемента векторов 539 VTDIST в целочисленные представления каждого элемента векторов 539 VTDIST, однородного квантования целочисленных представлений векторов 539 VTDIST и категоризации и кодирования квантованных целочисленных представлений векторов 539 VTDIST. Различные один или более процессов этой схемы сжатия могут динамически управляться параметрами для достижения или примерного достижения, в порядке одного примера, целевой битовой скорости для результирующего битового потока 517.
[961] При условии, что каждый из векторов 539 VTDIST ортонормальны друг другу, каждый из векторов 539 VTDIST можно кодировать независимо. В некоторых примерах, как более подробно описано ниже, каждый элемент каждого вектора 539 VTDIST можно кодировать с использованием одного и того же режима кодирования (заданного различными подрежимами).
[962] В любом случае, как упомянуто выше, эта схема кодирования может сначала использовать преобразование представлений с плавающей запятой каждого элемента (которое, в некоторых примерах, является 32-битовым числом с плавающей запятой) каждого из векторов 539 VTDIST в 16-битовое целочисленное представление. Блок 552 сжатия V может осуществлять это преобразование плавающей запятой в целое число путем умножения каждого элемента данного одного из векторов 539 VTDIST на 215, которое, в некоторых примерах, осуществляется посредством сдвига вправо на 15.
[963] Блок 552 сжатия V затем может осуществлять однородное квантование в отношении всех элементов данного одного из векторов 539 VTDIST. Блок 552 сжатия V может идентифицировать размер шага квантования на основании значения, которое может быть обозначено как параметр nbits. Блок 552 сжатия V может динамически определять этот параметр nbits на основании целевой битовой скорости. Блок 552 сжатия V может определять размер шага квантования как функцию этого параметра nbits. В порядке одного примера, блок 552 сжатия V может определять размер шага квантования (обозначенный как “дельта” или “Δ” в этом изобретении) равным 216-nbits. В этом примере, если nbits равно шести, дельта равна 210, и существует 26 уровней квантования. В этом отношении, для элемента v вектора, квантованный элемент vq вектора равен [v/Δ], и -2nbits-1<vq<2nbits-1.
[964] Блок 552 сжатия V затем может осуществлять категоризацию и остаточное кодирование квантованных элементов вектора. В порядке одного примера, блок 552 сжатия V может, для данного квантованного элемента vq вектора, идентифицировать категорию (определяя идентификатор категории cid), которой соответствует этот элемент, с использованием следующего уравнения:
Затем блок 552 сжатия V может кодировать по Хаффману этот индекс категории cid, идентифицируя также знаковый бит, который указывает, имеет ли vq положительное значение или отрицательное значение. Затем блок 552 сжатия V может идентифицировать остаток в этой категории. В порядке одного примера, блок 552 сжатия V может определять этот остаток в соответствии со следующим уравнением:
Затем блок 552 сжатия V может блочно кодировать этот остаток cid-1 битами.
[965] Следующий пример демонстрирует упрощенный пример этого процесса категоризации и остаточного кодирования. Сначала предположим, что nbits равно шести, так что vq [-31,31]. Затем предположим следующее:
Также предположим следующее:
Таким образом, для vq=[6, -17, 0, 0, 3], можно определить следующее:
» cid=3,5,0,0,2
» знак=1,0,x,x,1
» остаток=2,1,x,x,1
» биты для 6=‘0010’+’1’+’10’
» биты для -17=‘00111’+’0’+‘0001’
» биты для 0=‘0’
» биты для 0=‘0’
» биты для 3=‘000’+‘1’+‘1’
» Всего битов=7+10+1+1+5=24
» Среднее количество битов=24/5=4.8
[966] Хотя это не показано в вышеприведенном упрощенном примере, блок 552 сжатия V может выбирать разные кодовые книги Хаффмана для разных значений nbits при кодировании cid. В некоторых примерах, блок 552 сжатия V может обеспечивать разные таблицы хаффмановского кодирования для значений nbits 6, …, 15. Кроме того, блок 552 сжатия V может включать в себя пять разных кодовых книг Хаффмана для каждого из разных значений nbits в пределах 6, …, 15 для всего 50 кодовых книг Хаффмана. В этом отношении, блок 552 сжатия V может включать в себя множество разных кодовых книг Хаффмана для размещения кодирования cid в нескольких разных статистических контекстах.
[967] Для иллюстрации, блок 552 сжатия V может, для каждого из значений nbits, включать в себя первую кодовую книгу Хаффмана для кодирования элементов вектора с первого по четвертый, вторую кодовую книгу Хаффмана для кодирования элементов вектора с пятого по девятый, третью кодовую книгу Хаффмана для кодирования элементов вектора с девятого и выше. Эти первые три кодовые книги Хаффмана можно использовать, когда один из векторов 539 VTDIST подлежащих сжатию, не предсказывается из последующего во времени соответствующего одного из векторов 539 VTDIST и не представляет пространственную информацию синтетического аудиообъекта (заданного, например, первоначально аудиообъектом, подвергнутым импульсно-кодовой модуляции (ИКМ)). Блок 552 сжатия V может дополнительно включать в себя, для каждого из значений nbits, четвертую кодовую книгу Хаффмана для кодирования одного из векторов 539 VTDIST, когда этот один из векторов 539 VTDIST предсказывается из последующего во времени соответствующего одного из векторов 539 VTDIST. Блок 552 сжатия V также может включать в себя, для каждого из значений nbits, пятую кодовую книгу Хаффмана для кодирования одного из векторов 539 VTDIST когда этот один из векторов 539 VTDIST представляет синтетический аудиообъект. Различные кодовые книги Хаффмана можно разрабатывать для каждого из этих разных статистических контекстов, т.е. не предсказанного и не синтетического контекста, предсказанного контекста и синтетического контекста в этом примере.
[968] Нижеследующая таблица демонстрирует выбор таблицы Хаффмана и биты, подлежащие указанию в битовом потоке, чтобы блок снятия сжатия мог выбирать надлежащую таблицу Хаффмана:
В вышеприведенной таблице, режим предсказания (“режим предсказания”) указывает, осуществлялось ли предсказание для текущего вектора, тогда как таблица Хаффмана (“информация HT”) указывает дополнительную информацию кодовой книги (или таблицы) Хаффмана, используемую для выбора одной из таблиц Хаффмана с первой по пятую.
[969] Нижеследующая таблица дополнительно демонстрирует этот процесс выбора таблицы Хаффмана в различных статистических контекстах или сценариях.
В вышеприведенной таблице, столбец “запись” указывает контекст кодирования, когда вектор представляет аудиообъект, который был записан, тогда как столбец “синтетический” указывает контекст кодирования, когда вектор представляет синтетический аудиообъект. Строка “без предсказания” указывает контекст кодирования, когда предсказание не осуществляется в отношении элементов вектора, тогда как строка “с предсказанием” указывает контекст кодирования, когда предсказание осуществляется в отношении элементов вектора. Как показано в этой таблице, блок 552 сжатия V выбирает HT{1, 2, 3}, когда вектор представляет записанный аудиообъект, и предсказание не осуществляется в отношении элементов вектора. Блок 552 сжатия V выбирает HT5, когда аудиообъект представляет синтетический аудиообъект, и предсказание не осуществляется в отношении элементов вектора. Блок 552 сжатия V выбирает HT4, когда вектор представляет записанный аудиообъект, и предсказание осуществляется в отношении элементов вектора. Блок 552 сжатия V выбирает HT5, когда аудиообъект представляет синтетический аудиообъект, и предсказание осуществляется в отношении элементов вектора.
[970] Таким образом, методы могут предусматривать, что устройство сжатия аудиосигнала сжимает пространственный компонент звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[971] На Фиг. 43 показана схема, более детально демонстрирующая блок 552 сжатия V, показанный на фиг. 40I. В примере, приведенном на фиг. 43, блок 552 сжатия V включает в себя блок 600 однородного квантования, блок 602 nbits, блок 604 предсказания, блок 606 режима предсказания (“блок 606 режима предсказания”), блок 608 кодирования категории и остатка, и блок 610 выбора таблицы Хаффмана. Блок 600 однородного квантования представляет блок, выполненный с возможностью осуществления однородного квантования, описанного выше в отношении одного из пространственных компонентов обозначенный как v в примере, приведенном на фиг. 43 (который может представлять любой из векторов 539 VTDIST). Блок 602 nbits представляет блок, выполненный с возможностью определения параметра или значения nbits.
[972] Блок 604 предсказания представляет блок, выполненный с возможностью осуществления предсказания в отношении квантованного пространственного компонента, обозначенного как vq в примере, приведенном на фиг. 43. Блок 604 предсказания может осуществлять предсказание путем осуществления поэлементного вычитания текущего одного из векторов 539 VTDIST из последующего во времени соответствующего одного из векторов 539 VTDIST. Результат этого предсказания может именоваться предсказанным пространственным компонентом.
[973] Блок 606 режима предсказания может представлять блок, выполненный с возможностью выбора режима предсказания. Блок 610 выбора таблицы Хаффмана может представлять блок, выполненный с возможностью выбора надлежащей таблицы Хаффмана для кодирования cid. Блок 606 режима предсказания и блок 610 выбора таблицы Хаффмана могут действовать, в порядке одного примера, в соответствии со следующим псевдокодом:
Для данного nbits, извлечь все таблицы Хаффмана, имеющие nbits
B00=0; B01=0; B10=0; B11=0; // инициализировать для вычисления ожидаемых битов для каждого режима кодирования
for m=1:( количество элементов в векторе)
// вычислять ожидаемое количество битов для элемента вектора v(m)
// без предсказания и с использованием таблицы Хаффмана 5
B00=B00+calculate_bits(v(m), HT5);
// без предсказания и с использованием таблицы Хаффмана {1,2,3}
B01=B01+calculate_bits(v(m), HTq); q в {1,2,3}
// вычислять ожидаемое количество битов для остатка предсказания e(m)
e(m)=v(m) - vp(m); // vp(m): элемент вектора предыдущего кадра
// с предсказанием и с использованием таблицы Хаффмана 4
B10=B10+calculate_bits(e(m), HT4);
// с предсказанием и с использованием таблицы Хаффмана 5
B11=B11+calculate_bits(e(m), HT5);
end
// найти наилучший режим предсказания и таблицу Хаффмана, которые дают минимальное количество битов
// наилучшие режим предсказания и таблица Хаффмана помечены флагами pflag и Htflag, соответственно
[Be, id]=min( [B00 B01 B10 B11] );
Switch id
case 1: pflag=0; HTflag=0;
case 2: pflag=0; HTflag=1;
case 3: pflag=1; HTflag=0;
case 4: pflag=1; HTflag=1;
end
[974] Блок 608 кодирования категории и остатка может представлять блок, выполненный с возможностью осуществления категоризации и остаточного кодирования предсказанного пространственного компонента или квантованного пространственного компонента (когда предсказание запрещено) как более детально описано выше.
[975] Как показано в примере, приведенном на фиг. 43, блок 552 сжатия V может выводить различные параметры или значения для включения либо в битовый поток 517 либо в побочную информацию (которая сама может быть битовым потоком, отдельным от битового потока 517). Предполагая, что информация указывается в битовом потоке 517, блок 552 сжатия V может выводить значение nbits, режим предсказания и информация таблицы Хаффмана на блок 516 генерации битового потока совместно со сжатой версией пространственного компонента (показанной как сжатый пространственный компонент 539’ в примере, приведенном на фиг. 40I), который в этом примере может означать код Хаффмана, выбранный для кодирования cid, знакового бита и блочно кодированного остатка. Значение nbits может указываться один раз в битовом потоке 517 для всех векторов 539 VTDIST, тогда как режим предсказания и информация таблицы Хаффмана могут указываться для каждого из векторов 539 VTDIST. Часть битового потока, которая указывает сжатую версию пространственного компонента, показана в примере, приведенном на фиг. 10B и 10C.
[976] Таким образом, устройство 510H аудиокодирования может осуществлять различные аспекты методов, изложенных ниже в отношении следующих пунктов.
[977] Пункт 141541-1A. Устройство, например, устройство 510H аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[978] Пункт 141541-2A. Устройство по пунктам 141541-1A, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
[979] Пункт 141541-3A. Устройство по любой комбинации пунктов 141541-1A и 141541-2A, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
[980] Пункт 141541-4A. Устройство по любой комбинации пунктов 141541-1A - 141541-3A, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
[981] Пункт 141541-5A. Устройство по пункту 141541-4A, в котором значение содержит значение nbits.
[982] Пункт 141541-6A. Устройство по любой комбинации пунктов 141541-4A и 141541-5A, в котором битовый поток содержит сжатую версию из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и при этом значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
[983] Пункт 141541-7A. Устройство по любой комбинации пунктов 141541-1A - 141541-6A, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
[984] Пункт 141541-8A. Устройство по любой комбинации пунктов 141541-1A - 141541-7A, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
[985] Пункт 141541-9A. Устройство по любой комбинации пунктов 141541-1A - 141541-8A, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления остаточного значения пространственной компоненты.
[986] Пункт 141541-10A. Устройство по любой комбинации пунктов 141541-1A - 141541-9A, в котором устройство содержит устройство аудиокодирования устройство генерации битового потока.
[987] Пункт 141541-12A. Устройство по любой комбинации пунктов 141541-1A - 141541-11A, в котором векторный синтез содержит разложение на сингулярные значения.
[988] Хотя они описаны как осуществляемые устройством 510H аудиокодирования, методы также могут осуществляться любым из устройств 24 и/или 540 аудиодекодирования.
[989] Таким образом, устройство 510H аудиокодирования может дополнительно осуществлять различные аспекты методов, изложенных ниже в отношении следующих пунктов.
[990] Пункт 141541-1D. Устройство, например, устройство 510H аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью генерации битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[991] Пункт 141541-2D. Устройство по пункту 141541-1D, в котором один или более процессоров дополнительно выполнены с возможностью, при генерации битового потока, генерировать битовый поток для включения поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
[992] Пункт 141541-3D. Устройство по любой комбинации пунктов 141541-1D и 141541-2D, в котором один или более процессоров дополнительно выполнены с возможностью, при генерации битового потока, генерировать битовый поток для включения информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
[993] Пункт 141541-4D. Устройство по любой комбинации пунктов 141541-1D - 141541-3D, в котором один или более процессоров дополнительно выполнены с возможностью, при генерации битового потока, генерировать битовый поток для включения поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
[994] Пункт 141541-5D. Устройство по пункту 141541-4D, в котором значение содержит значение nbits.
[995] Пункт 141541-6D. Устройство по любой комбинации пунктов 141541-4D и 141541-5D, в котором один или более процессоров дополнительно выполнены с возможностью, при генерации битового потока, генерировать битовый поток для включения сжатой версии из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и при этом значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
[996] Пункт 141541-7D. Устройство по любой комбинации пунктов 141541-1D - 141541-6D, в котором один или более процессоров дополнительно выполнены с возможностью, при генерации битового потока, генерировать битовый поток для включения кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
[997] Пункт 141541-8D. Устройство по любой комбинации пунктов 141541-1D - 141541-7D, в котором один или более процессоров дополнительно выполнены с возможностью, при генерации битового потока, генерировать битовый поток для включения знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
[998] Пункт 141541-9D. Устройство по любой комбинации пунктов 141541-1D - 141541-8D, в котором один или более процессоров дополнительно выполнены с возможностью, при генерации битового потока, генерировать битовый поток для включения кода Хаффмана для представления остаточного значения пространственной компоненты.
[999] Пункт 141541-10D. Устройство по любой комбинации пунктов 141541-1D - 141541-10D, в котором векторный синтез содержит разложение на сингулярные значения.
[1000] Устройство 510H аудиокодирования может быть дополнительно выполнено с возможностью реализации различных аспектов методов, изложенных в следующих пунктах.
[1001] Пункт 141541-1E. Устройство, например, устройство 510H аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью сжатия пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[1002] Пункт 141541-2E. Устройство по пункту 141541-1E, в котором один или более процессоров дополнительно выполнены с возможностью, при сжатии пространственного компонента, преобразовывать пространственный компонент из представления с плавающей запятой в целочисленное представление.
[1003] Пункт 141541-3E. Устройство по любой комбинации пунктов 141541-1E и 141541-2E, в котором один или более процессоров дополнительно выполнены с возможностью, при сжатии пространственного компонента, динамически определять значение, указывающее размер шага квантования, и квантовать пространственный компонент на основании значения для генерации квантованного пространственного компонента.
[1004] Пункт 141541-4E. Устройство по любой комбинации пп. 1E-3E, в котором один или более процессоров дополнительно выполнены с возможностью, при сжатии пространственного компонента, идентифицировать категорию, которой соответствует пространственная компонента.
[1005] Пункт 141541-5E. Устройство по любой комбинации пунктов 141541-1E - 141541-4E, в котором один или более процессоров дополнительно выполнены с возможностью, при сжатии пространственного компонента, идентифицировать остаточное значение для пространственного компонента.
[1006] Пункт 141541-6E. Устройство по любой комбинации пунктов 141541-1E - 141541-5E, в котором один или более процессоров дополнительно выполнены с возможностью, при сжатии пространственного компонента, осуществлять предсказание в отношении пространственного компонента и последующего пространственного компонента для генерации предсказанного пространственного компонента.
[1007] Пункт 141541-7E. Устройство по любой комбинации пунктов 141541-1E, в котором один или более процессоров дополнительно выполнены с возможностью, при сжатии пространственного компонента, преобразовывать пространственный компонент из представления с плавающей запятой в целочисленное представление, динамически определять значение, указывающее размер шага квантования, квантовать целочисленное представление пространственного компонента на основании значения для генерации квантованного пространственного компонента, идентифицировать категорию, которой соответствует пространственная компонента на основании квантованного пространственного компонента для генерации идентификатора категории, определять знак пространственного компонента, идентифицировать остаточное значение для пространственного компонента на основании квантованного пространственного компонента и идентификатора категории, и генерировать сжатую версию пространственного компонента на основании идентификатора категории, знака и остаточного значения.
[1008] Пункт 141541-8E. Устройство по любой комбинации пунктов 141541-1E, в котором один или более процессоров дополнительно выполнены с возможностью, при сжатии пространственного компонента, преобразовывать пространственный компонент из представления с плавающей запятой в целочисленное представление, динамически определять значение, указывающее размер шага квантования, квантовать целочисленное представление пространственного компонента на основании значения для генерации квантованного пространственного компонента, осуществлять предсказание в отношении пространственного компонента и последующего пространственного компонента для генерации предсказанного пространственного компонента, идентифицировать категорию, которой соответствует предсказанный пространственный компонент, на основании квантованного пространственного компонента для генерации идентификатора категории, определять знак пространственного компонента, идентифицировать остаточное значение для пространственного компонента на основании квантованного пространственного компонента и идентификатора категории, и генерировать сжатую версию пространственного компонента на основании идентификатора категории, знака и остаточного значения.
[1009] Пункт 141541-9E. Устройство по любой комбинации пунктов 141541-1E - 141541-8E, в котором векторный синтез содержит разложение на сингулярные значения.
[1010] Различные аспекты методов могут, кроме того, предусматривать, что устройство 510H аудиокодирования выполнено с возможностью действовать согласно следующим пунктам.
[1011] Пункт 141541-1F. Устройство, например, устройство 510H аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью идентификации кодовой книги Хаффмана для использования, при сжатии текущего пространственного компонента из множества пространственных компонентов на основании порядка текущего пространственного компонента относительно оставшихся из множества пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[1012] Пункт 141541-2F. Устройство по пункту 141541-3F, в котором один или более процессоров дополнительно выполнены с возможностью осуществления любой комбинации этапов, упомянутых в пунктах 141541-1A - 141541-12A, пунктах 141541-1B - 141541-10B, и пунктах 141541-1C - 141541-9C.
[1013] Различные аспекты методов могут, кроме того, предусматривать, что устройство 510H аудиокодирования выполнено с возможностью действовать согласно следующим пунктам.
[1014] Пункт 141541-1H. Устройство, например, устройство 510H аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью определения размера шага квантования, подлежащий использованию при сжатии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[1015] Пункт 141541-2H. Устройство по пункту 141541-1H, в котором один или более процессоров дополнительно выполнены с возможностью, при определении размера шага квантования, определять размер шага квантования на основании целевой битовой скорости.
[1016] Пункт 141541-3H. Устройство по пункту 141541-1H, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одного из множества размеров шага квантования, определения оценки количества битов, используемых для представления пространственного компонента, и определения размера шага квантования на основании разности между оценкой и целевой битовой скоростью.
[1017] Пункт 141541-4H. Устройство по пункту 141541-1H, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одного из множества размеров шага квантования, определения оценки количества битов, используемых для представления пространственного компонента, определения разности между оценкой и целевой битовой скоростью, и определения размера шага квантования путем прибавления разности к целевой битовой скорости.
[1018] Пункт 141541-5H. Устройство по пункту 141541-3H или пункту 141541-4H, в котором один или более процессоров дополнительно выполнены с возможностью, при определении оценки количества битов, вычисления оцененного количества битов, подлежащих генерации для пространственного компонента, при условии, что кодовая книга соответствует целевой битовой скорости.
[1019] Пункт 141541-6H. Устройство по пункту 141541-3H или пункту 141541-4H, в котором один или более процессоров дополнительно выполнены с возможностью, при определении оценки количества битов, вычисления оцененного количества битов, подлежащих генерации для пространственного компонента, при данном режиме кодирования, используемом при сжатии пространственного компонента.
[1020] Пункт 141541-7H. Устройство по пункту 141541-3H или пункту 141541-4H, в котором один или более процессоров дополнительно выполнены с возможностью, при определении оценки количества битов, вычисления первой оценки количества битов, подлежащих генерации для пространственного компонента, при условии, что первый режим кодирования подлежит использованию при сжатии пространственного компонента, вычисления второй оценки количества битов, подлежащих генерации для пространственного компонента, при условии, что второй режим кодирования подлежит использованию при сжатии пространственного компонента, выбора одной из первой оценка и второй оценки, имеющей наименьшее количество битов, подлежащих использованию, как определенной оценки количества битов.
[1021] Пункт 141541-8H. Устройство по пункту 141541-3H или пункту 141541-4H, в котором один или более процессоров дополнительно выполнены с возможностью, при определении оценки количества битов, идентификации идентификатора категории, идентифицирующего категорию, которой соответствует пространственная компонента, идентификации битовой длины остаточного значения для пространственного компонента, которое получилось бы при сжатии пространственного компонента, соответствующего категории, и определения оценки количества битов путем, по меньшей мере, частично, прибавления количества битов, используемых для представления идентификатора категории, к битовой длине остаточного значения.
[1022] Пункт 141541-9H. Устройство по любой комбинации пунктов 141541-1H - 141541-8H, в котором векторный синтез содержит разложение на сингулярные значения.
[1023] Хотя они описаны как осуществляемые устройством 510H аудиокодирования, методы, изложенные выше в пунктах 141541-1H - 141541-9H, также могут осуществляться устройством 540D аудиодекодирования.
[1024] Дополнительно, различные аспекты методов могут предусматривать, что устройство 510H аудиокодирования выполнено с возможностью действовать изложенных в следующих пунктах.
[1025] Пункт 141541-1J. Устройство, например, устройство 510J аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью выбора одного из множества кодовых книг, подлежащих использованию при сжатии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[1026] Пункт 141541-2J. Устройство по пункту 141541-1J, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одной из множества кодовых книг, определения оценки количества битов, используемых для представления пространственного компонента с использованием каждой из множества кодовых книг, и выбора одной из множества кодовых книг, которая привела к определенной оценке, имеющей наименьшее количество битов.
[1027] Пункт 141541-3J. Устройство по пункту 141541-1J, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одной из множества кодовых книг, определения оценки количества битов, используемых для представления пространственного компонента с использованием одной или более из множества кодовых книг, причем одна или более из множества кодовых книг выбрана на основании порядка элементов пространственного компонента, подлежащих сжатию, относительно других элементов пространственного компонента.
[1028] Пункт 141541-4J. Устройство по пункту 141541-1J, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одной из множества кодовых книг, определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент не предсказывается из последующего пространственного компонента.
[1029] Пункт 141541-5J. Устройство по пункту 141541-1J, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одной из множества кодовых книг, определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент предсказывается из последующего пространственного компонента.
[1030] Пункт 141541-6J. Устройство по пункту 141541-1J, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одной из множества кодовых книг, определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент представляет синтетический аудиообъект в звуковом поле.
[1031] Пункт 141541-7J. Устройство по пункту 141541-1J, в котором синтетический аудиообъект содержит аудиообъект, подвергнутый импульсно-кодовой модуляции (ИКМ).
[1032] Пункт 141541-8J. Устройство по пункту 141541-1J, в котором один или более процессоров дополнительно выполнены с возможностью, при выборе одной из множества кодовых книг, определения оценки количества битов, используемых для представления пространственного компонента с использованием одной из множества кодовых книг, подлежащих использованию, когда пространственный компонент представляет записанный аудиообъект в звуковом поле.
[1033] Пункт 141541-9J. Устройство по любой комбинации пп. 1J-8J, в котором векторный синтез содержит разложение на сингулярные значения.
[1034] В каждом из различных вышеописанных случаев, следует понимать, что устройство 510 аудиокодирования может осуществлять способ или иным образом содержать средство для осуществления каждого этапа способа, для которого устройство 510 аудиокодирования выполнено с возможностью осуществления в ряде случаев, это средство может содержать один или более процессоров. В ряде случаев, один или более процессоров может представлять процессор специального назначения, выполняющий инструкции, хранящиеся на долговременном считываемом компьютером носителе данных. Другими словами, различные аспекты методов в каждом из наборов примеров кодирования могут предусматривать долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять способ, для выполнения которого предназначено устройство 510 аудиокодирования.
[1035] На Фиг. 40J показана блок-схема, демонстрирующая иллюстративное устройство 510J аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 510J аудиокодирования может быть аналогичным устройству 510G аудиокодирования тем, что устройство 510J аудиокодирования включает в себя блок 512 сжатия аудиосигнала, блок 514 аудиокодирования и блок 516 генерации битового потока. Кроме того, блок 512 сжатия аудиосигнала устройства 510J аудиокодирования может быть аналогичным блоку устройства 510G аудиокодирования тем, что блок 512 сжатия аудиосигнала включает в себя блок 518 разложения и блок 520 извлечения компонентов звукового поля, которые могут действовать аналогично соответствующим блокам устройства 510I аудиокодирования. В некоторых примерах, устройство 510J аудиокодирования может включать в себя блок 534 квантования, как описано со ссылкой на фиг. 40D-40E, для квантования одного или более векторов из любых векторов 525C UDIST, векторов 525D UBG, векторов 525E VTDIST и векторов 525J VTBG.
[1036] Блок 512 сжатия аудиосигнала устройства 510J аудиокодирования однако может отличаться от блока 512 сжатия аудиосигнала устройства 510G аудиокодирования тем, что блок 512 сжатия аудиосигнала устройства 510J аудиокодирования включает в себя дополнительный блок, обозначенный как блок 550 интерполяции. Блок 550 интерполяции может представлять блок, который интерполирует подкадры первого кадра аудио из подкадров первого кадра аудио и второго во времени последующего или предыдущего кадра аудио, как более подробно описано ниже со ссылкой на фиг. 45 и 45B. Блок 550 интерполяции может, при осуществлении этой интерполяции, снижать вычислительную сложность (в отношении циклов обработки и/или потребления памяти) путем потенциального снижения степени, в которой блок 518 разложения требуется для разложения SHC 511. Блок 550 интерполяции может действовать аналогично описанному выше в отношении блока 550 интерполяции устройств 510H и 510I аудиокодирования, показанных в примерах, приведенных на фиг. 40H и 40I.
[1037] В ходе эксплуатации, блок интерполяции 200 может интерполировать один или более подкадров первого кадра аудио из первого разложения, например, матрицы 19’ V, части первого множества коэффициентов 11 сферических гармоник, включенных в первый кадр, и второго разложения, например, матрицы 19’ V, части второго множества коэффициентов 11 сферических гармоник, включенных во второй кадр, для генерации разложенных интерполированных коэффициентов сферических гармоник для одного или более подкадров.
[1038] Блок 550 интерполяции может получать разложенные интерполированные коэффициенты сферических гармоник для отрезка времени, по меньшей мере, частично, путем осуществления интерполяции в отношении первого разложения первого множества коэффициентов сферических гармоник и второго разложения второго множества коэффициентов сферических гармоник. Блок 554 сглаживания может применять разложенные интерполированные коэффициенты сферических гармоник для сглаживания, по меньшей мере, одного из пространственных компонентов и временных компонентов первого множества коэффициентов сферических гармоник и второго множества коэффициентов сферических гармоник. Блок 554 сглаживания может генерировать сглаженный матрицы 525C’ UDIST, как описано выше со ссылкой на фиг. 37-39. Первое и второе разложения могут означать V1T 556, V2T 556B на фиг. 40J.
[1039] В ряде случаев, VT или другие V-векторы или V-матрицы могут выводиться в квантованной версии для интерполяции. Таким образом, векторы V для интерполяции могут быть идентичны векторам V на декодере, который также осуществляет интерполяцию вектора V, например, для восстановления многомерного сигнала.
[1040] В некоторых примерах, первое разложение содержит первую матрицу 519’ V, представляющую правые сингулярные векторы части первого множества коэффициентов 511 сферических гармоник. Аналогично, в некоторых примерах, второе разложение содержит вторую матрицу 519’ V, представляющую правые сингулярные векторы части второго множества коэффициентов сферических гармоник.
[1041] Блок 550 интерполяции может осуществлять временную интерполяцию в отношении одного или более подкадров на основании первой матрицы 519’ V и второй матрицы 19’ V. Таким образом, блок 550 интерполяции может интерполировать во времени, например, второй, третий и четвертый подкадры из четырех полных подкадров для первого кадра аудио на основании матрицы 519’ V, разложенной из первого подкадра первого кадра аудио, и матрицы 519’ V, разложенной из первого подкадра второго кадра аудио. В некоторых примерах, эта временная интерполяция является линейной временной интерполяции, где матрица 519’ V, разложенная из первого подкадра первого кадра аудио, получает больший вес при интерполировании второго подкадра первого кадра аудио, чем при интерполировании четвертого подкадра первого кадра аудио. При интерполировании третьего подкадра, матрицы 519’ V могут получать одинаковый вес. При интерполировании четвертого подкадра, матрица 519’ V, разложенная из первого подкадра второго кадра аудио, может получать больший вес, чем матрица 519’ V, разложенная из первого подкадра первого кадра аудио.
[1042] Другими словами, линейная временная интерполяция может взвешивать матрицы 519’ V с учетом близости одного из подкадров первого кадра аудио, подлежащего интерполяции. Для второго подкадра, подлежащего интерполяции, матрица 519’ V, разложенная из первого подкадра первого кадра аудио, получает больший вес с учетом его близости ко второму подкадру, подлежащему интерполяции, чем матрица 519’ V, разложенная из первого подкадра второго кадра аудио. Весовые коэффициенты, по этой причине, могут быть эквивалентны при интерполировании третьего подкадра на основании матриц 519’ V. Весовой коэффициент, применяемый к матрице 519’ V, разложенной из первого подкадра второго кадра аудио, может быть больше, чем применяемый к матрице 519’ V, разложенной из первого подкадра первого кадра аудио, при условии, что четвертый подкадр, подлежащий интерполяции, ближе к первому подкадру второго кадра аудио, чем первый подкадр первого кадра аудио.
[1043] В некоторых примерах, блок 550 интерполяции может проецировать первую матрицу 519’ V разложенную из первого подкадра первого кадра аудио в пространственную область для генерации первых проекционных разложений. В некоторых примерах, эта проекция включает в себя проекцию на сферу (например, с использованием проекционной матрицы, например, T-образной матрицы). Затем блок 550 интерполяции может проецировать вторую матрицу 519’ V, разложенную из первого подкадра второго кадра аудио в пространственную область для генерации вторых проекционных разложений. Затем блок 550 интерполяции может пространственно интерполировать (опять же, посредством линейной интерполяции) первые проекционные разложения и вторые проекционные разложения для генерации первого пространственно интерполированного проекционного разложения и второго пространственно интерполированного проекционного разложения. Затем блок 550 интерполяции может интерполировать во времени один или более подкадров на основании первого пространственно интерполированного проекционного разложения и второго пространственно интерполированного проекционного разложения.
[1044] В примерах, когда блок 550 интерполяции проецирует пространственно и затем во времени матрицы 519’ V, блок 550 интерполяции может проецировать интерполированные во времени коэффициенты сферических гармоник, обусловленные интерполированием одного или более подкадров, обратно в область сферических гармоник, таким образом, генерируя матрицу 519 V, матрицу 519B S и матрицу 519C U.
[1045] В некоторых примерах, часть первого множества коэффициентов сферических гармоник содержит единственный подкадр первого множества коэффициентов 511 сферических гармоник. В некоторых примерах, часть второго множества коэффициентов сферических гармоник содержит единственный подкадр второго множества коэффициентов 511 сферических гармоник. В некоторых примерах, этот единственный подкадр, из которого разлагаются матрицы 19’ V, является первым подкадром.
[1046] В некоторых примерах, первый кадр делится на четыре подкадра. В этих и других примерах, часть первого множества коэффициентов сферических гармоник содержит только первый подкадр из множества коэффициентов 511 сферических гармоник. В этих и других примерах, второй кадр делится на четыре подкадра, и часть второго множества коэффициентов 511 сферических гармоник содержит только первый подкадр второго множества коэффициентов 511 сферических гармоник.
[1047] Хотя, в некоторых примерах, только первый подкадр каждого кадра аудио используется для осуществления интерполяции, часть первого множества коэффициентов сферических гармоник может содержать два из четырех подкадров первого множества коэффициентов 511 сферических гармоник. В этих и других примерах, часть второго множества коэффициентов 511 сферических гармоник содержит два из четырех подкадров второго множества коэффициентов 511 сферических гармоник.
[1048] Как упомянуто выше, единое устройство, например, устройство 510J аудиокодирования, может осуществлять интерполяцию, при этом также разлагая часть первого множества коэффициентов сферических гармоник для генерации первых разложений части первого множества коэффициентов сферических гармоник. В этих и других примерах, блок 518 разложения может разлагать часть второго множества коэффициентов сферических гармоник для генерации вторых разложений части второго множества коэффициентов сферических гармоник. Хотя они описаны в отношении единого устройства, два или более устройств может осуществлять методы, описанные в этом изобретении, где одно из двух устройств осуществляет разложение и другое из устройств осуществляет интерполяцию в соответствии с методами, описанными в этом изобретении.
[1049] В некоторых примерах, блок 518 разложения может осуществлять разложение на сингулярные значения в отношении части первого множества коэффициентов 511 сферических гармоник для генерации матрицы 519’ V (а также матрицы 519B’ S и матрицы 519C’ U, которые не показаны для упрощения иллюстрации), представляющей правые сингулярные векторы первого множества коэффициентов 511 сферических гармоник. В этих и других примерах, блок 518 разложения может осуществлять разложение на сингулярные значения в отношении части второго множества коэффициентов 511 сферических гармоник для генерации матрицы 519’ V (а также матрицы 519B’ S и матрицы 519C’ U, которые не показаны для упрощения иллюстрации), представляющей правые сингулярные векторы второго множества коэффициентов сферических гармоник.
[1050] В некоторых примерах, как упомянуто выше, первое и второе множества коэффициентов сферических гармоник представляет плосковолновое представление звукового поля. В этих и других примерах, каждое из первого и второго множества коэффициентов 511 сферических гармоник представляет один или более смешанных друг с другом монофонических аудиообъектов.
[1051] Другими словами, 3D аудио на основе сферических гармоник может быть параметрическим представление 3D поля давления в отношении ортогональных базисных функций на сфере. Чем выше порядок N представления, тем потенциально выше пространственное разрешение, и, часто, тем больше количество коэффициентов сферических гармоник (SH) (для всего (N+1)2 коэффициентов). Для многих применений, может потребоваться, чтобы сжатие полосы коэффициентов позволяло эффективно передавать и сохранять коэффициенты. Эти методы, предусмотренные в этом изобретении, могут обеспечивать процесс снижения размерности на кадровой основе с использованием разложения на сингулярные значения (SVD). Анализ SVD может разлагать каждый кадр коэффициентов на три матрицы U, S и V. В некоторых примерах, методы могут обрабатывать некоторые из векторов в U как направленные компоненты лежащего в основе звукового поля. Однако, при такой обработке, эти векторы (в U) являются разрывными от кадра к кадру, хотя они представляют один и тот же характерный аудиокомпонент. Эти нарушения непрерывности могут приводить к значительным артефактам, когда компоненты поступают через преобразующие аудиокодеры.
[1052] Методы, описанные в этом изобретении, позволяют справиться с этим нарушением непрерывности. Таким образом, методы могут основываться на том наблюдении, что матрицу V можно интерпретировать как ортогональные пространственные оси в области сферических гармоник. Матрица U может представлять проекцию данных сферических гармоник (HOA) в отношении этих базисных функций, где нарушение непрерывности может приписываться базисным функциям (V), которые изменяют каждый кадр, и, таким образом, сами являются разрывными. В этом состоит отличие от аналогичного разложения, например, преобразования Фурье, где базисные функции, в некоторых примерах, постоянны от кадра к кадру. В этом отношении, SVD можно рассматривать как алгоритм преследования совпадения. Методы, описанные в этом изобретении, могут предусматривать, что блок 550 интерполяции поддерживает непрерывность между базисными функциями (V) от кадра к кадру - путем интерполяции между ними.
[1053] В некоторых примерах, методы предусматривают, что блок 550 интерполяции разделяет кадр данных SH на четыре подкадра, как описано выше и дополнительно описано ниже со ссылкой на фиг. 45 и 45B. Затем блок 550 интерполяции может вычислять SVD для первого подкадра. Аналогично вычисляется SVD для первого подкадра второго кадра. Для каждого из первого кадра и второго кадра, блок 550 интерполяции может преобразовывать векторы в V в пространственную карту путем проецирования векторов на сферу (с использованием проекционной матрицы, например, T-образной матрицы). Затем блок 550 интерполяции может интерпретировать векторы в V как формы на сфере. Для интерполяции матриц V для трех подкадров между первым подкадром первого кадра и первым подкадром следующего кадра, блок 550 интерполяции затем может интерполировать эти пространственные формы и затем преобразовывать их обратно в SH векторы посредством обратной проекционной матрицы. Методы этого изобретения, таким образом, могут обеспечивать плавный переход между матрицами V.
[1054] На Фиг. 41-41D показаны блок-схемы, демонстрирующие иллюстративное устройство 540A-540D аудиодекодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для декодирования коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 540A аудиодекодирования может представлять любое устройство, способное декодировать аудиоданные, например, настольный компьютер, портативный компьютер, рабочую станцию, планшет или графический планшет, специализированное звукозаписывающее устройство, сотовый телефон (включая так называемый “смартфоны”), устройство персонального медиапроигрывателя, персональное игровое устройство или устройство любого другого типа, способное декодировать аудиоданные.
[1055] В некоторых примерах, устройство 540A аудиодекодирования осуществляет процесс аудиодекодирования, обратный процессу аудиокодирования, осуществляемому любым из устройств 510 или 510B аудиокодирования за исключением осуществления снижения порядка (как описано выше в отношении примеров, приведенных на фиг. 40B-40J), который, в некоторых примерах, используется устройствами 510B-510J аудиокодирования для облегчения удаления посторонних несущественных данных.
[1056] Хотя оно показано как единое устройство, т.е., устройство 540A в примере, приведенном на фиг. 41, различные компоненты или блоки, упомянутые ниже как включенные в устройство 540A, могут формировать отдельные устройства, внешние по отношению к устройству 540. Другими словами, хотя они описаны в этом изобретении как осуществляемые единым устройством, т.е., устройством 540A в примере, приведенном на фиг. 41, методы могут реализоваться или иначе осуществляться системой, содержащей множественные устройства, причем каждое из этих устройств может включать в себя один или более из различных компонентов или блоков, более подробно описанных ниже. Соответственно, методы не подлежат ограничению в этом отношении примером, приведенным на фиг. 41.
[1057] Как показано в примере, приведенном на фиг. 41, устройство 540A аудиодекодирования содержит блок 542 извлечения, блок 544 аудиодекодирования, математический блок 546 и блок 548 аудиорендеризации. Блок 542 извлечения представляет блок, выполненный с возможностью извлечения кодированных приведенных коэффициентов 515B сферических гармоник фона, кодированных векторов 515A UDIST*SDIST и векторов 525E VTDIST из битового потока 517. Блок 542 извлечения выводит кодированные приведенные коэффициенты 515B сферических гармоник фона и кодированные векторы 515A UDIST*SDIST на блок 544 аудиодекодирования, также выводя и матрицу 525E VTDIST на математический блок 546. В этом отношении, блок 542 извлечения может действовать аналогично блоку 72 извлечения устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5.
[1058] Блок 544 аудиодекодирования представляет блок для декодирования кодированных аудиоданных (часто в соответствии со обратной схемой аудиодекодирования, например, схемой декодирования AAC) для восстановления векторов 527 UDIST*SDIST и приведенных коэффициентов 529 сферических гармоник фона. Блок 544 аудиодекодирования выводит векторы 527 UDIST*SDIST и приведенные коэффициенты 529 сферических гармоник фона на математический блок 546. В этом отношении, блок 544 аудиодекодирования может действовать аналогично блоку 80 психоакустического декодирования устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5.
[1059] Математический блок 546 может представлять блок, выполненный с возможностью осуществления матричного умножения и сложения (а также, в некоторых примерах, любой другой математической операции над матрицами). Математический блок 546 может сначала осуществлять матричное умножение векторов 527 UDIST*SDIST на матрицу 525E VTDIST. Затем математический блок 546 может суммировать результат умножения векторов 527 UDIST*SDIST на матрицу 525E VTDIST с приведенными коэффициентами 529 сферических гармоник фона (которые, опять же, могут означать результат умножения матрицы 525D UBG на матрицу 525B SBG и затем на матрицу 525F VTBG) с результатом матричного умножения векторов 527 UDIST*SDIST на матрицу 525E VTDIST для генерации приведенной версии исходных коэффициентов 11 сферических гармоник, которые обозначается как восстановленные коэффициенты 547 сферических гармоник. Математический блок 546 может выводить восстановленные коэффициенты 547 сферических гармоник на блок 548 аудиорендеризации. В этом отношении, математический блок 546 может действовать аналогично блоку 78 формирования переднего плана и блоку 82 формирования коэффициентов HOA устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5.
[1060] Блок 548 аудиорендеризации представляет блок, выполненный с возможностью рендеризации каналов 549A-549N (“каналов 549”, которые также могут, в общем случае, именоваться “многоканальными аудиоданными 549” или “подводами 549 громкоговорителя ”). Блок 548 аудиорендеризации может применять преобразование (часто выраженное в форме матрицы) к восстановленным коэффициентам 547 сферических гармоник. Поскольку восстановленные коэффициенты 547 сферических гармоник описывают звуковое поле в трех измерениях, восстановленные коэффициенты 547 сферических гармоник представляют аудиоформат, который облегчает рендеризацию многоканальных аудиоданных 549A в режиме, допускающем адаптацию к большинству декодерно-локальных геометрий громкоговорителей (которая может означать геометрию громкоговорителей, которые будут воспроизводить многоканальные аудиоданные 549). Дополнительная информация, касающаяся рендеризации многоканальных аудиоданных 549A, описана выше со ссылкой на фиг. 48.
[1061] Хотя они описаны в контексте многоканальных аудиоданных 549A, которые являются многоканальными аудиоданными 549 объемного звука, блок 48 аудиорендеризации также может осуществлять форму бинаурализации для бинаурализации восстановленных коэффициентов сферических гармоник 549A и, таким образом, генерировать два бинаурально рендеризованных каналов 549. Соответственно, методы не подлежат ограничению формами объемного звука многоканальных аудиоданных, но могут включать в себя бинаурализованные многоканальные аудиоданные.
[1062] Различные перечисленные ниже пункты могут представлять различные аспекты методов, описанных в этом изобретении.
[1063] Пункт 132567-1B. Устройство, например, устройство 540 аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью определения одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник.
[1064] Пункт 132567-2B. Устройство по пункту 132567-1B, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S, причем матрица U и матрица S генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом один или более процессоров дополнительно выполнены с возможностью аудиодекодирования одного или более аудиокодированных векторов UDIST*SDIST для генерации аудиодекодированной версии одного или более аудиокодированных векторов UDIST*SDIST.
[1065] Пункт 132567-3B. Устройство по пункту 132567-1B, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U и матрица S и матрица V генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом один или более процессоров дополнительно выполнены с возможностью аудиодекодирования одного или более аудиокодированных векторов UDIST*SDIST для генерации аудиодекодированной версии одного или более аудиокодированных векторов UDIST*SDIST.
[1066] Пункт 132567-4B. Устройство по пункту 132567-3B, в котором один или более процессоров дополнительно выполнены с возможностью умножения векторов UDIST*SDIST на векторы VTDIST для восстановления тех из множества сферических гармоник, которые представляют характерные компоненты звукового поля.
[1067] Пункт 132567-5B. Устройство по пункту 132567-1B, в котором один или более вторых векторов содержат один или более аудиокодированных векторов UBG*SBG*VTBG которые, до аудиокодирования, генерировались путем умножения векторов UBG, включенных в матрицу U, на векторы SBG, включенные в матрицу S, и затем на векторы VTBG, включенные в транспонированную матрицу V, и при этом матрица S, причем каждая из матрицы U и матрицы V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник.
[1068] Пункт 132567-6B. Устройство по пункту 132567-1B, в котором один или более вторых векторов содержат один или более аудиокодированных векторов UBG*SBG*VTBG которые, до аудиокодирования, генерировались путем умножения векторов UBG, включенных в матрицу U, на векторы SBG, включенные в матрицу S, и затем на векторы VTBG, включенные в транспонированную матрицу V, и при этом матрица S, матрица U и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом один или более процессоров дополнительно выполнены с возможностью аудиодекодирования одного или более аудиокодированных векторов UBG*SBG*VTBG для генерации одного или более аудиодекодированых векторов UBG*SBG*VTBG.
[1069] Пункт 132567-7B. Устройство по пункту 132567-1B, в котором один или более первых векторов содержат один или более аудиокодированных векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом один или более процессоров дополнительно выполнены с возможностью аудиодекодирования одного или более аудиокодированных векторов UDIST*SDIST для генерации одного или более векторов UDIST*SDIST, и умножения векторов UDIST*SDIST на векторы VTDIST для восстановления тех из множества коэффициентов сферических гармоник, которые описывают характерные компоненты звукового поля, причем один или более вторых векторов содержат один или более аудиокодированных векторов UBG*SBG*VTBG которые, до аудиокодирования, генерировались путем умножения векторов UBG, включенных в матрицу U, на векторы SBG, включенные в матрицу S, и затем на векторы VTBG, включенные в транспонированную матрицу V, и при этом один или более процессоров дополнительно выполнены с возможностью аудиодекодирования одного или более аудиокодированных векторов UBG*SBG*VTBG для восстановления, по меньшей мере, части из множества коэффициентов сферических гармоник, которые описывают фоновые компоненты звукового поля, и прибавления множества коэффициентов сферических гармоник, которые описывают характерные компоненты звукового поля, к, по меньшей мере, части из множества коэффициентов сферических гармоник, которые описывают фоновые компоненты звукового поля для генерации реконструированной версии из множества коэффициентов сферических гармоник.
[1070] Пункт 132567-8B. Устройство по пункту 132567-1B, в котором один или более первых векторов содержат один или более векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом один или более процессоров дополнительно выполнены с возможностью определения значения D, указывающего количество векторов, подлежащих извлечению из битового потока, для формирования одного или более векторов UDIST*SDIST и одного или более векторов VTDIST.
[1071] Пункт 132567-9B. Устройство по пункту 132567-10B, в котором один или более первых векторов содержат один или более векторов UDIST*SDIST, которые, до аудиокодирования, сгенерированы путем умножения одного или более аудиокодированных векторов UDIST матрицы U на один или более векторов SDIST матрицы S и один или более векторов VTDIST транспонированной матрицы V, причем матрица U, матрица S и матрица V сгенерированы, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и при этом один или более процессоров дополнительно выполнены с возможностью определения значения D на основе кадров аудио, которое указывает количество векторов, подлежащих извлечению из битового потока, для формирования одного или более векторов UDIST*SDIST и одного или более векторов VTDIST.
[1072] Пункт 132567-1G. Устройство, например, устройство 540 аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью определения одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении многоканальные аудиоданные, представляющие, по меньшей мере, часть звукового поля.
[1073] Пункт 132567-2G. Устройство по пункту 132567-1G, в котором многоканальные аудиоданные содержат множество коэффициентов сферических гармоник.
[1074] Пункт 132567-3G. Устройство по пункту 132567-2G, в котором один или более процессоров дополнительно выполнены с возможностью осуществления любой комбинации пунктов 132567-2B - 132567-9B.
[1075] Из каждого из различных описанных выше пунктов, следует, что любое из устройств 540A-540D аудиодекодирования может осуществлять способ или иным образом содержать средство для осуществления каждого этапа способа, для которого устройства 540A-540D аудиодекодирования выполнены с возможностью осуществления в ряде случаев, это средство может содержать один или более процессоров. В ряде случаев, один или более процессоров может представлять процессор специального назначения, выполняющий инструкции, хранящиеся на долговременном считываемом компьютером носителе данных. Другими словами, различные аспекты методов в каждом из наборов примеров кодирования могут предусматривать долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять способ, для осуществления которого предназначены устройства 540A-540D аудиодекодирования.
[1076] Например, пункт 132567-10B может быть выведен из вышеприведенного пункта 132567-1B как способ, содержащий способ, содержащий: определение одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, которые представляют звуковое поле.
[1077] В порядке другого примера, пункт 132567-11B может быть выведен из вышеприведенного пункта 132567-1B как устройство, например, устройство 540 аудиодекодирования, содержащее средство для определения одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник; и средство для хранения одного или более первых векторов и одного или более вторых векторов.
[1078] В порядке еще одного примера, пункт 132567-12B может быть выведен из вышеприведенного пункта 132567-1B как долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам для определения одного или более первых векторов, описывающих характерные компоненты звукового поля, и одного или более вторых векторов, описывающих фоновые компоненты звукового поля, причем один или более первых векторов и один или более вторых векторов, генерируются, по меньшей мере, путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, включенных в аудиоданные амбиофонии более высокого порядка, которые описывают звуковое поле.
[1079] Различные пункты аналогично могут быть выведены из пунктов 132567-2B - 132567-9B для различных устройств, способов и долговременных считываемых компьютером носителей данных, выведенных как упомянуто выше. То же самое можно осуществлять для различных других пунктов, перечисленных на протяжении этого раскрытия.
[1080] На Фиг. 41B показана блок-схема, демонстрирующая пример устройства 540B аудиодекодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении для декодирования коэффициентов сферических гармоник, описывающих двух- или трехмерных звуковых полей. Устройство 540B аудиодекодирования может быть аналогичным устройству 540 аудиодекодирования, за исключением того, что, в некоторых примерах, блок 542 извлечения может извлекать переупорядоченные векторы 539 VTDIST вместо векторов 525E VTDIST. В других примерах, блок 542 извлечения может извлекать векторы 525E VTDIST и затем переупорядочивать эти векторы 525E VTDIST на основании информации переупорядочения, указанной в битовом потоке или выведенной (посредством анализа других векторов) для определения переупорядоченных векторов 539 VTDIST. В этом отношении, блок 542 извлечения может действовать аналогично блоку 72 извлечения устройства 24 аудиодекодирования, показанного в примере, приведенном на фиг. 5. В любом случае, блок 542 извлечения может выводить переупорядоченные векторы 539 VTDIST на математический блок 546, где процесс, описанный выше в отношении восстановления коэффициентов сферических гармоник, может осуществляться в отношении этих переупорядоченных векторов 539 VTDIST.
[1081] Таким образом, методы могут предусматривать, что устройство 540B аудиодекодирования аудиодекодирует переупорядоченные один или более векторов, представляющих характерные компоненты звукового поля, причем переупорядоченные один или более векторов переупорядочиваются для облегчения сжатия одного или более векторов. В этих и других примерах, устройство 540B аудиодекодирования может рекомбинировать переупорядоченные один или более векторов с переупорядоченными одним или более дополнительными векторами для восстановления коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля. В этих и других примерах, устройство 540B аудиодекодирования может затем восстанавливать множество коэффициентов сферических гармоник на основании коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля и коэффициенты сферических гармоник, представляющие фоновые компоненты звукового поля.
[1082] Таким образом, различные аспекты методов могут предусматривать, что устройство 540B аудиодекодирования выполнено с возможностью декодирования переупорядоченных одного или более векторов согласно следующим пунктам.
[1083] Пункт 133146-1F. Устройство, например, устройство 540B аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью определения количества векторов, соответствующих компонентам в звуковом поле.
[1084] Пункт 133146-2F. Устройство по пункту 133146-1F, в котором один или более процессоров выполнены с возможностью определения количества векторов после осуществления снижения порядка в соответствии с любой комбинацией вышеописанных случаев.
[1085] Пункт 133146-3F. Устройство по пункту 133146-1F, в котором один или более процессоров дополнительно выполнены с возможностью осуществления снижения порядка в соответствии с любой комбинацией вышеописанных случаев.
[1086] Пункт 133146-4F. Устройство по пункту 133146-1F, в котором один или более процессоров выполнены с возможностью определения количества векторов из значения, указанного в битовом потоке, и при этом один или более процессоров дополнительно выполнены с возможностью вычленения битового потока на основании определенного количества векторов для идентификации одного или более векторов в битовом потоке, которые представляют характерные компоненты звукового поля.
[1087] Пункт 133146-5F. Устройство по пункту 133146-1F, в котором один или более процессоров выполнены с возможностью определения количества векторов из значения, указанного в битовом потоке, и при этом один или более процессоров дополнительно выполнены с возможностью вычленения битового потока на основании определенного количества векторов для идентификации одного или более векторов в битовом потоке, которые представляют фоновые компоненты звукового поля.
[1088] Пункт 133143-1C. Устройство, например, устройство 540B аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью преупорядочения переупорядоченные один или более векторов, представляющих характерные компоненты звукового поля.
[1089] Пункт 133143-2C. Устройство по пункту 133143-1C, в котором один или более процессоров дополнительно выполнены с возможностью определения переупорядоченных одного или более векторов, и определения информации переупорядочения, описывающей, как были переупорядочены переупорядоченные один или более векторов, в котором один или более процессоров дополнительно выполнены с возможностью, при переупорядочении переупорядоченных один или более векторов, переупорядочения переупорядоченных одного или более векторов на основании определенной информации переупорядочения.
[1090] Пункт 133143-3C. Устройство по пункту 1C, в котором переупорядоченные один или более векторов содержат один или более переупорядоченных первых векторов согласно любой комбинации по пп. 1A-18A или любой комбинации по пп. 1B-19B, и при этом один или более первых векторов определяются в соответствии со способом согласно любой комбинации по пп. 1A-18A или любой комбинации по пп. 1B-19B.
[1091] Пункт 133143-4D. Устройство, например, устройство 540B аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью аудиодекодирования переупорядоченных одного или более векторов, представляющих характерные компоненты звукового поля, причем переупорядоченные один или более векторов переупорядочиваются для облегчения сжатия одного или более векторов.
[1092] Пункт 133143-5D. Устройство по пункту 133143-4D, в котором один или более процессоров дополнительно выполнены с возможностью рекомбинировать переупорядоченные один или более векторов с переупорядоченными одним или более дополнительными векторами для восстановления коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля.
[1093] Пункт 133143-6D. Устройство по пункту 133143-5D, в котором один или более процессоров дополнительно выполнены с возможностью восстановления множества коэффициентов сферических гармоник на основании коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля и коэффициенты сферических гармоник, представляющие фоновые компоненты звукового поля.
[1094] Пункт 133143-1E. Устройство, например, устройство 540B аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью преупорядочения одного или более векторов для генерации переупорядоченных одного или более первых векторов и, таким образом, облегчения кодирования унаследованным аудиокодером, причем один или более векторов описывают представляют характерные компоненты звукового поля, и аудиокодирования переупорядоченных одного или более векторов с использованием унаследованного аудиокодера для генерации кодированной версии переупорядоченных одного или более векторов.
[1095] Пункт 133143-2E. Устройство по пункту 1E, в котором переупорядоченные один или более векторов содержат один или более переупорядоченных первых векторов согласно любой комбинации по пп. 1A-18A или любой комбинации по пп. 1B-19B, и при этом один или более первых векторов определяются в соответствии со способом согласно любой комбинации по пп. 1A-18A или любой комбинации по пп. 1B-19B.
[1096] Фиг. 41C показана блок-схема, демонстрирующая другое иллюстративное устройство 54°C аудиокодирования. Устройство 54°C аудиодекодирования может представлять любое устройство, способное декодировать аудиоданные, например, настольный компьютер, портативный компьютер, рабочую станцию, планшет или графический планшет, специализированное звукозаписывающее устройство, сотовый телефон (включая так называемый “смартфоны”), устройство персонального медиапроигрывателя, персональное игровое устройство или устройство любого другого типа, способное декодировать аудиоданные.
[1097] В примере, приведенном на фиг. 41C, устройство 54°C аудиодекодирования осуществляет процесс аудиодекодирования, обратный процессу аудиокодирования, осуществляемому любым из устройств 510B-510E аудиокодирования, за исключением осуществления снижения порядка (как описано выше в отношении примеров, приведенных на фиг. 40B-40J), которое, в некоторых примерах, используется устройством 510B-510J аудиокодирования для облегчения удаления посторонних несущественных данных.
[1098] Хотя оно показано как единое устройство, т.е., устройство 54°C в примере, приведенном на фиг. 41C, различные компоненты или блоки, упомянутые ниже как включенные в устройство 540C, могут формировать отдельные устройства, внешние по отношению к устройству 540C. Другими словами, хотя они описаны в этом изобретении как осуществляемые единым устройством, т.е. устройством 54°C в примере, приведенном на фиг. 41C, методы могут реализоваться или иначе осуществляться системой, содержащей множественные устройства, причем каждое из этих устройств может включать в себя один или более из различных компонентов или блоков, более подробно описанных ниже. Соответственно, методы не подлежат ограничению в этом отношении примером, приведенным на фиг. 41C.
[1099] Кроме того, устройство 54°C аудиокодирования может быть аналогичным устройству 540B аудиокодирования. Однако блок 542 извлечения может определять один или более векторов 521 VTSMALL из битового потока 517 вместо переупорядоченных векторов 539 VTQ_DIST или векторов 525E VTDIST (как в случае, описанном в отношении устройства 510 аудиокодирования на фиг. 40). В результате, блок 542 извлечения может передавать векторы 521 VTSMALL на математический блок 546.
[1100] Кроме того, блок 542 извлечения может определять аудиокодированные модифицированные коэффициенты 515B’ сферических гармоник фона из битового потока 517, передавая эти коэффициенты 515B’ на блок 544 аудиодекодирования, который может аудиодекодировать кодированные модифицированные коэффициенты 515B сферических гармоник фона для восстановления модифицированных коэффициентов 537 сферических гармоник фона. Блок 544 аудиодекодирования может передавать эти модифицированные коэффициенты 537 сферических гармоник фона на математический блок 546.
[1101] Затем математический блок 546 может умножать аудиодекодированные (и, возможно, неупорядоченные) векторы 527 UDIST*SDIST’ на один или более векторов 521 VTSMALL для восстановления характерных коэффициентов сферических гармоник более высокого порядка. Затем математический блок 546 может суммировать характерные коэффициенты сферических гармоник более высокого порядка с модифицированными коэффициентами 537 сферических гармоник фона для восстановления множества коэффициентов 511 сферических гармоник или некоторой их производной (которая может быть производной вследствие снижения порядка, осуществляемого на блоке 510E кодера).
[1102] Таким образом, методы могут предусматривать, что устройство 54°C аудиодекодирования определяет, из битового потока, по меньшей мере, один из одного или более векторов, разложенных из коэффициентов сферических гармоник, которые рекомбинировали с коэффициентами сферических гармоник фона для снижения количества битов которые необходимо выделять одному или более векторам в битовом потоке, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[1103] Различные аспекты методов могут, в этом отношении, предусматривать, что устройство 54°C аудиодекодирования, в ряде случаев, выполнено с возможностью определения, из битового потока, по меньшей мере, одного из одного или более векторов, разложенных из коэффициентов сферических гармоник, которые рекомбинировали с коэффициентами сферических гармоник фона, причем коэффициенты сферических гармоник описывают звуковое поле, и при этом коэффициенты сферических гармоник фона описывают один или более фоновых компонентов одного и того же звукового поля.
[1104] В этих и других случаях, устройство 54°C аудиодекодирования выполнено с возможностью получения, из битового потока, первой части коэффициентов сферических гармоник имеющих порядок, равный NBG.
[1105] В этих и других случаях, устройство 54°C аудиодекодирования дополнительно выполнено с возможностью получения, из битового потока, первой аудиокодированной части коэффициентов сферических гармоник, имеющих порядок, равный NBG, и аудиодекодирования аудиокодированной первой части коэффициентов сферических гармоник для генерации первой части коэффициентов сферических гармоник.
[1106] В этих и других случаях, по меньшей мере, один из одного или более векторов содержит один или более векторов VTSMALL, причем один или более векторов VTSMALL определен из транспонированной матрицы V, генерируемой путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник.
[1107] В этих и других случаях, по меньшей мере, один из одного или более векторов содержит один или более векторов VTSMALL, причем один или более векторов VTSMALL определен из транспонированной матрицы V, генерируемой путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и устройство 54°C аудиодекодирования дополнительно выполнено с возможностью получения, из битового потока, одного или более векторов UDIST*SDIST, выводимых из матрицы U и матрицы S, которые обе сгенерированы путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и умножения векторов UDIST*SDIST на векторы VTSMALL.
[1108] В этих и других случаях, по меньшей мере, один из одного или более векторов содержит один или более векторов VTSMALL, причем один или более векторов VTSMALL определен из транспонированной матрицы V, генерируемой путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и устройство 54°C аудиодекодирования дополнительно выполнено с возможностью получения, из битового потока, одного или более векторов UDIST*SDIST, выводимых из матрицы U и матрицы S, которые обе сгенерированы путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, умножения векторов UDIST*SDIST на векторы VTSMALL для восстановления характерных коэффициентов сферических гармоник фона более высокого порядка, и прибавления коэффициентов сферических гармоник фона, которые включают в себя характерные коэффициенты сферических гармоник фона более низкого порядка, к характерным коэффициентам сферических гармоник фона более высокого порядка для восстановления, по меньшей мере, частично, множества коэффициентов сферических гармоник.
[1109] В этих и других случаях, по меньшей мере, один из одного или более векторов содержит один или более векторов VTSMALL, причем один или более векторов VTSMALL определен из транспонированной матрицы V, генерируемой путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, и устройство 54°C аудиодекодирования дополнительно выполнено с возможностью получения, из битового потока, одного или более векторов UDIST*SDIST, выводимых из матрицы U и матрицы S, которые обе сгенерированы путем осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник, умножения векторов UDIST*SDIST на векторы VTSMALL для восстановления характерных коэффициентов сферических гармоник фона более высокого порядка, прибавления коэффициентов сферических гармоник фона, которые включают в себя характерные коэффициенты сферических гармоник фона более низкого порядка, к характерным коэффициентам сферических гармоник фона более высокого порядка для восстановления, по меньшей мере, частично, множества коэффициентов сферических гармоник, и рендеризации восстановленного множества коэффициентов сферических гармоник.
[1110] На Фиг. 41D показана блок-схема, демонстрирующая другое иллюстративное устройство 540D аудиокодирования. Устройство 540D аудиодекодирования может представлять любое устройство, способное декодировать аудиоданные, например, настольный компьютер, портативный компьютер, рабочую станцию, планшет или графический планшет, специализированное звукозаписывающее устройство, сотовый телефон (включая так называемый “смартфоны”), устройство персонального медиапроигрывателя, персональное игровое устройство или устройство любого другого типа, способное декодировать аудиоданные.
[1111] В примере, приведенном на фиг. 41D, устройство 540D аудиодекодирования осуществляет процесс аудиодекодирования, обратный процессу аудиокодирования, осуществляемому любым из устройств 510B-510J аудиокодирования за исключением осуществления снижения порядка (как описано выше в отношении примеров, приведенных на фиг. 40B-40J), который, в некоторых примерах, используется устройствами 510B-510J аудиокодирования для облегчения удаления посторонних несущественных данных.
[1112] Хотя оно показано как единое устройство, т.е. устройство 540D в примере, приведенном на фиг. 41D, различные компоненты или блоки, упомянутые ниже как включенные в устройство 540D, могут формировать отдельные устройства, внешние по отношению к устройству 540D. Другими словами, хотя они описаны в этом изобретении как осуществляемые единым устройством, т.е. устройством 540D в примере, приведенном на фиг. 41D, методы могут реализоваться или иначе осуществляться системой, содержащей множественные устройства, причем каждое из этих устройств может включать в себя один или более из различных компонентов или блоков, более подробно описанных ниже. Соответственно, методы не подлежат ограничению в этом отношении примером, приведенным на фиг. 41D.
[1113] Кроме того, устройство 540D аудиодекодирования может быть аналогичным устройству 540B аудиодекодирования, за исключением того, что устройство 540D аудиодекодирования осуществляет дополнительное снятие сжатия V, в общем случае, обратное сжатию, осуществляемому блоком 552 сжатия V, описанным выше со ссылкой на фиг. 40I. В примере, приведенном на фиг. 41D, блок 542 извлечения включает в себя блок 555 снятия сжатия V который осуществляет это снятие сжатия V сжатых пространственных компонентов 539’, включенных в битовый поток 517 (и, в общем случае, указанных в соответствии с примером, показанным на одной из фиг. 10B и 10C). Блок 555 снятия сжатия V может снимать сжатие векторов 539 VTDIST на основании следующего уравнения:
Другими словами, блок 555 снятия сжатия V может сначала вычленять значение nbits из битового потока 517 и идентифицировать надлежащий набор из пяти таблиц кодов Хаффмана для использования при декодировании кода Хаффмана, представляющего cid. На основании информации режима предсказания и хаффмановского кодирования, указанной в битовом потоке 517, и, возможно, порядка элемента пространственного компонента относительно других элементов пространственного компонента, блок 555 снятия сжатия V может идентифицировать правильную одну из пяти таблиц Хаффмана, заданных для вычлененного значения nbits. С использованием этой таблицы Хаффмана, блок 555 снятия сжатия V может декодировать значение cid из кода Хаффмана. Блок 555 снятия сжатия V может затем вычленять знаковый бит и остаточный блочный код, декодировать остаточный блочный код для идентификации остатка. В соответствии с вышеприведенным уравнением, блок 555 снятия сжатия V может декодировать один из векторов 539 VTDIST.
[1114] Вышеизложенное можно кратко представить в нижеследующей таблице синтаксиса:
[1115] В вышеприведенной таблице синтаксиса, первый оператор переключения с четырьмя случаями (случаями 0-3) обеспечивает возможность определения длины вектора VTDIST в отношении числа коэффициентов. Первый случай, case 0, указывает, что заданы все коэффициенты для векторов VTDIST. Второй случай, case 1, указывает, что заданы только коэффициенты вектора VTDIST, соответствующие порядку, большему, чем MinNumOfCoeffsForAmbHOA, что может обозначать то, что именуется выше (NDIST +1) - (NBG+1). Третий случай, case 2, аналогичен второму случаю, но дополнительно вычитает коэффициенты, идентифицированные NumOfAddAmbHoaChan, который обозначает переменную для указания дополнительных каналов (где “каналы” означают конкретный коэффициент, соответствующий определенному порядку, комбинации подпорядков), соответствующих порядку, который превышает порядок NBG. Четвертый случай, case 3, указывает, что заданы только коэффициенты вектора VTDIST, оставшиеся после удаления коэффициентов, идентифицированных посредством NumOfAddAmbHoaChan.
[1116] После этого оператора переключения, решение, осуществлять ли унифицированное деквантование, принимается в зависимости от NbitsQ (или, как обозначено выше, nbits), которое, если не равно 5, приводит к применению хаффмановского декодирования. Вышеупомянутое значение cid равно двум младшим битам значения NbitsQ. Рассмотренный выше режим предсказания обозначается в вышеприведенной таблице синтаксиса как PFlag, тогда как бит информации HT обозначается в вышеприведенной таблице синтаксиса как CbFlag. Оставшийся синтаксис указывает, как декодирование возникает по существу, аналогичным образом описанному выше.
[1117] Таким образом, методы этого изобретения могут предусматривать, что устройство 540D аудиодекодирования получает битовый поток, содержащий сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник, и снятия сжатия сжатой версии пространственного компонента для получения пространственного компонента.
[1118] Кроме того, методы могут предусматривать, что устройство 540D аудиодекодирования снимает сжатие сжатой версии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[0100] Таким образом, устройство 540D аудиокодирования может осуществлять различные аспекты методов, изложенных ниже в отношении следующих пунктов.
[1119] Пункт 141541-1B. Устройство, содержащее:
[1120] один или более процессоров, выполненных с возможностью получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник, и снятия сжатия сжатой версии пространственного компонента для получения пространственного компонента.
[1121] Пункт 141541-2B. Устройство по пункту 141541-1B, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты, и при этом один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, снимать сжатие сжатой версии пространственного компонента, по меньшей мере, частично, на основании режима предсказания для получения пространственного компонента.
[1122] Пункт 141541-3B. Устройство по любой комбинации пунктов 141541-1B и 141541-2B, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты, и при этом один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, снимать сжатие сжатой версии пространственного компонента, по меньшей мере, частично, на основании информации таблицы Хаффмана.
[1123] Пункт 141541-4B. Устройство по любой комбинации пунктов 141541-1B - 141541-3B, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты, и при этом один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, снимать сжатие сжатой версии пространственного компонента, по меньшей мере, частично, на основании значения.
[1124] Пункт 141541-5B. Устройство по пункту 141541-4B, в котором значение содержит значение nbits.
[1125] Пункт 141541-6B. Устройство по любой комбинации пунктов 141541-4B и 141541-5B, в котором битовый поток содержит сжатую версию из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, при этом значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент, и при этом один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, снимать сжатие множества сжатой версии пространственного компонента, по меньшей мере, частично, на основании значения.
[1126] Пункт 141541-7B. Устройство по любой комбинации пунктов 141541-1B - 141541-6B, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента, и при этом один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, снимать сжатие сжатой версии пространственного компонента, по меньшей мере, частично, на основании кода Хаффмана.
[1127] Пункт 141541-8B. Устройство по любой комбинации пунктов 141541-1B - 141541-7B, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение, и при этом один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, снимать сжатие сжатой версии пространственного компонента, по меньшей мере, частично, на основании знакового бита.
[1128] Пункт 141541-9B. Устройство по любой комбинации пунктов 141541-1B - 141541-8B, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере, частично, кода Хаффмана для представления остаточного значения пространственной компоненты, и при этом один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, снимать сжатие сжатой версии пространственного компонента, по меньшей мере, частично, на основании кода Хаффмана.
[1129] Пункт 141541-10B. Устройство по любой комбинации пунктов 141541-1B - 141541-10B, в котором векторный синтез содержит разложение на сингулярные значения.
[1130] Кроме того, устройство 540D аудиодекодирования может быть выполнено с возможностью осуществления различных аспектов методов, изложенных ниже в отношении следующих пунктов.
[1131] Пункт 141541-1C. Устройство, например, устройство 540D аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью снятия сжатия сжатой версии пространственной компоненты звукового поля, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[1132] Пункт 141541-2C. Устройство по любой комбинации пунктов 141541-1C и 141541-2C, в котором один или более процессоров дополнительно выполнены с возможностью, при снятии сжатия сжатой версии пространственного компонента, получать идентификатор категории, идентифицирующий категорию, к которой был отнесен пространственный компонент при сжатии, получать знак, идентифицирующий, имеет ли пространственный компонент положительное или отрицательное значение, получать остаточное значение, связанное со сжатой версией пространственного компонента, и снимать сжатие сжатой версии пространственного компонента на основании идентификатора категории, знака и остаточного значения.
[1133] Пункт 141541-3C. Устройство по пункту 141541-2C, в котором один или более процессоров дополнительно выполнены с возможностью, при получении идентификатора категории, получать код Хаффмана, представляющий идентификатор категории, и декодировать код Хаффмана для получения идентификатора категории.
[1134] Пункт 141541-4C. Устройство по пункту 141541-3C, в котором один или более процессоров дополнительно выполнены с возможностью, при декодировании кода Хаффмана, идентифицировать таблицу Хаффмана, используемую для декодирования кода Хаффмана, на основании, по меньшей мере, частично, относительной позиции пространственного компонента в векторе, указывающем множество пространственных компонентов.
[1135] Пункт 141541-5C. Устройство по любой комбинации пунктов 141541-3C и 141541-4C, в котором один или более процессоров дополнительно выполнены с возможностью, при декодировании кода Хаффмана, идентифицировать таблицу Хаффмана, используемую для декодирования кода Хаффмана, на основании, по меньшей мере, частично, режима предсказания, используемого при сжатии пространственного компонента.
[1136] Пункт 141541-6C. Устройство по любой комбинации пунктов 141541-3C - 141541-5C, в котором один или более процессоров дополнительно выполнены с возможностью, при декодировании кода Хаффмана, идентифицировать таблицу Хаффмана, используемую для декодирования кода Хаффмана, на основании, по меньшей мере, частично, информации таблицы Хаффмана, связанной со сжатой версией пространственного компонента.
[1137] Пункт 141541-7C. Устройство по пункту 141541-3C, в котором один или более процессоров дополнительно выполнены с возможностью, при декодировании кода Хаффмана, идентифицировать таблицу Хаффмана, используемую для декодирования кода Хаффмана, на основании, по меньшей мере, частично, относительной позиции пространственного компонента в векторе, указывающем множество пространственных компонентов, режим предсказания, используемый при сжатии пространственной компоненты, и информацию таблицы Хаффмана, связанную со сжатой версией пространственного компонента.
[1138] Пункт 141541-8C. Устройство по пункту 141541-2C, в котором один или более процессоров дополнительно выполнены с возможностью, при получении остаточного значения, декодировать блочный код, представляющий остаточное значение, для получения остаточного значения.
[1139] Пункт 141541-9C. Устройство по любой комбинации пунктов 141541-1C - 141541-8C, в котором векторный синтез содержит разложение на сингулярные значения.
[1140] Кроме того, устройство 540D аудиодекодирования может быть выполнено с возможностью осуществления различных аспектов методов, изложенных ниже в отношении следующих пунктов.
[1141] Пункт 141541-1G. Устройство, например, устройство 540D аудиодекодирования, содержащее: один или более процессоров, выполненных с возможностью идентификации кодовой книги Хаффмана для использования, при снятии сжатия сжатой версии текущего пространственного компонента множества сжатых пространственных компонентов на основании порядка сжатой версии текущего пространственного компонента относительно оставшихся из множества сжатых пространственных компонентов, причем пространственный компонент генерируется путем осуществления векторного синтеза в отношении множества коэффициентов сферических гармоник.
[1142] Пункт 141541-2G. Устройство по пункту 141541-1G, в котором один или более процессоров дополнительно выполнены с возможностью осуществления любой комбинации этапов, упомянутых в пунктах 141541-1D - 141541-10D, и пунктах 141541-1E - 141541-9E.
[1143] На Фиг. 42-42C показаны блок-схемы, более детально демонстрирующие блок 528A снижения порядка, показанный в примерах, приведенных на фиг. 40B-40J. На Фиг. 42 показана блок-схема, демонстрирующая блок 528 снижения порядка, который может представлять один пример блока 528A снижения порядка, показанного на фиг. 40B-40J. Блок 528A снижения порядка может принимать или иначе определять целевую битовую скорость 535 и осуществлять снижение порядка в отношении коэффициентов 531 сферических гармоник фона только на основании этой целевой битовой скорости 535. В некоторых примерах, блок 528A снижения порядка может обращаться к таблице или другой структуре данных с использованием целевой битовой скорости 535 для идентификации тех порядков и/или подпорядков, которые подлежат удалению из коэффициентов 531 сферических гармоник фона для генерации приведенных коэффициентов 529 сферических гармоник фона.
[1144] Таким образом, методы могут предусматривать, что устройство аудиокодирования, например устройства аудиокодирования 510B-410J, осуществляют, на основании целевой битовой скорости 535, снижение порядка в отношении множества коэффициентов сферических гармоник или их разложений, например, коэффициентов 531 сферических гармоник фона, для генерации приведенных коэффициентов 529 сферических гармоник или их приведенных разложений, причем множество коэффициентов сферических гармоник представляет звуковое поле.
[1145] В каждом из различных вышеописанных случаев, следует понимать, что устройство 540 аудиодекодирования может осуществлять способ или иным образом содержать средство для осуществления каждого этапа способа, для которого устройство 540 аудиодекодирования выполнено с возможностью осуществления в ряде случаев, это средство может содержать один или более процессоров. В ряде случаев, один или более процессоров может представлять процессор специального назначения, выполняющий инструкции, хранящиеся на долговременном считываемом компьютером носителе данных. Другими словами, различные аспекты методов в каждом из наборов примеров кодирования могут предусматривать долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять способ для осуществления которого предназначено устройство 540 аудиодекодирования.
[1146] На Фиг. 42B показана блок-схема, демонстрирующая блок 528B снижения порядка, который может представлять один пример блока 528A снижения порядка, показанного на фиг. 40B-40J. В примере, приведенном на фиг. 42B, вместо осуществления снижения порядка только на основании целевой битовой скорости 535, блок 528B снижения порядка может осуществлять снижение порядка на основании анализа контента коэффициентов 531 сферических гармоник фона. Блок 528B снижения порядка может включать в себя блок 536A анализа контента, который осуществляет этот анализ контента.
[1147] В некоторых примерах, блок 536A анализа контента может включать в себя блок 536A пространственного анализа, который осуществляет форму анализа контента, именуемого пространственным анализом. Пространственный анализ может предусматривать анализ коэффициентов 531 сферических гармоник фона для идентификации пространственной информации, описывающей форму или другие пространственные свойства фоновых компонентов звукового поля. На основании этой пространственной информации, блок 528B снижения порядка может идентифицировать те порядки и/или подпорядки, которые подлежат удалению из коэффициентов 531 сферических гармоник фона для генерации приведенных коэффициентов 529 сферических гармоник фона.
[1148] В некоторых примерах, блок 536A анализа контента может включать в себя блок 536B анализа диффузии, который осуществляет форму анализа контента, именуемого анализ диффузии. Анализ диффузии могут предусматривать анализ коэффициентов 531 сферических гармоник фона для идентификации информации диффузии, описывающей диффузионность фоновых компонентов звукового поля. На основании этой информации диффузии, блок 528B снижения порядка может идентифицировать те порядки и/или подпорядки, которые подлежат удалению из коэффициентов 531 сферических гармоник фона для генерации приведенных коэффициентов 529 сферических гармоник фона.
[1149] Хотя он показан как включающий в себя блок 536A пространственного анализа и блок 536B анализа диффузии, блок 536A анализа контента может включать в себя только блок пространственного анализа 536, только блок 536B анализа диффузии или и блок 536A пространственного анализа, и блок 536B анализа диффузии. В некоторых примерах, блок 536A анализа контента может осуществлять другие формы анализа контента помимо или вместо одного или обоих из пространственного анализа и анализа диффузии. Соответственно, методы, описанные в этом изобретении, не подлежат ограничению в этом отношении.
[1150] Таким образом, методы могут предусматривать, что устройство аудиокодирования, например устройства 510B-510J аудиокодирования, осуществляет, на основании анализа контента множества коэффициентов сферических гармоник или их разложений, которые описывают звуковое поле, снижение порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[1151] Другими словами, методы могут предусматривать, что устройство, например, устройства 510B-510J аудиокодирования, сконфигурированы в соответствии со следующими пунктами.
[1152] Пункт 133146-1E. Устройство, например, любое из устройств 510B-510J аудиокодирования, содержащее один или более процессоров, выполненных с возможностью осуществления, на основании анализа контента множества коэффициентов сферических гармоник или их разложений, которые описывают звуковое поле, снижения порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[1153] Пункт 133146-2E. Устройство по пункту 133146-1E, в котором один или более процессоров дополнительно выполнены с возможностью, до осуществления снижения порядка, осуществления разложения на сингулярные значения в отношении множества коэффициентов сферических гармоник для идентификации один или более первых векторов, которые описывают характерные компоненты звукового поля и один или более вторых векторов, которые идентифицируют фоновые компоненты звукового поля, и при этом один или более процессоров выполнены с возможностью осуществления снижения порядка в отношении одного или более первых векторов, одного или более вторых векторов или одного или более первых векторов и одного или более вторых векторов.
[1154] Пункт 133146-3E. Устройство по пункту 133146-1E, в котором один или более процессоров дополнительно выполнены с возможностью осуществления анализа контента в отношении множества коэффициентов сферических гармоник или их разложений.
[1155] Пункт 133146-4E. Устройство по пункту 133146-3E, в котором один или более процессоров выполнены с возможностью осуществления пространственного анализа в отношении множества коэффициентов сферических гармоник или их разложений.
[1156] Пункт 133146-5E. Устройство по пункту 133146-3E, в котором осуществление анализа контента содержит осуществление анализа диффузии в отношении множества коэффициентов сферических гармоник или их разложений.
[1157] Пункт 133146-6E. Устройство по пункту 133146-3E, в котором один или более процессоров выполнены с возможностью осуществления пространственного анализа и анализа диффузии в отношении множества коэффициентов сферических гармоник или их разложений.
[1158] Пункт 133146-7E. Устройство по п. 1, в котором один или более процессоров выполнены с возможностью осуществления, на основании анализа контента из множества коэффициентов сферических гармоник или их разложений и целевой битовой скорости, снижения порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[1159] Пункт 133146-8E. Устройство по пункту 133146-1E, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования приведенных коэффициентов сферических гармоник или их разложений.
[1160] Пункт 133146-9E. Устройство по пункту 133146-1E, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования приведенных коэффициентов сферических гармоник или их приведенных разложений, и генерации битового потока для включения приведенных коэффициентов сферических гармоник или их приведенных разложений.
[1161] Пункт 133146-10E. Устройство по пункту 133146-1E, в котором один или более процессоров дополнительно выполнены с возможностью указания одного или более порядков и/или одного или более подпорядков сферических базисных функций, которым соответствуют те из приведенных коэффициентов сферических гармоник или их приведенных разложений в битовом потоке, которые включает в себя приведенные коэффициенты сферических гармоник или их приведенных разложений.
[1162] Пункт 133146-11E. Устройство по пункту 133146-1E, в котором приведенные коэффициенты сферических гармоник или их приведенных разложений имеют меньше значений, чем множество коэффициентов сферических гармоник или их разложений.
[1163] Пункт 133146-12E. Устройство по пункту 133146-1E, в котором один или более процессоров дополнительно выполнены с возможностью удаления тех из множества коэффициентов сферических гармоник или векторов их разложений, имеющих указанный порядок и/или подпорядок, для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[1164] Пункт 133146-13E. Устройство по пункту 133146-1E, в котором один или более процессоров выполнены с возможностью обнуления тех из множества коэффициентов сферических гармоник или тех векторов их разложения, которые имеют указанный порядок и/или подпорядок, для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[1165] На Фиг. 42C показана блок-схема, демонстрирующая блок 528C снижения порядка, который может представлять один пример блока 528A снижения порядка, показанного на фиг. 40B-40J. Блок 528C снижения порядка, показанный на фиг. 42B, по существу, идентичен блоку 528B снижения порядка, но может принимать или иначе определять целевую битовую скорость 535 вышеописанным образом в отношении блока 528A снижения порядка, показанного на фиг. 42, и при этом также осуществлять анализ контента вышеописанным образом в отношении блока 528B снижения порядка, показанного на фиг. 42B. Затем блок 528C снижения порядка может осуществлять снижение порядка в отношении коэффициентов 531 сферических гармоник фона на основании этой целевой битовой скорости 535 и анализа контента.
[1166] Таким образом, методы могут предусматривать, что устройство аудиокодирования, например устройства 510B-510J аудиокодирования, осуществляет анализ контента в отношении множества коэффициентов сферических гармоник или их разложений. При осуществлении снижения порядка, устройства 510B-510J аудиокодирования могут осуществлять, на основании целевой битовой скорости 535 и анализа контента, снижение порядка в отношении множества коэффициентов сферических гармоник или их разложений для генерации приведенных коэффициентов сферических гармоник или их приведенных разложений.
[1167] При условии, что один или более векторов удаляются, устройства 510B-510J аудиокодирования могут указывать количество векторов в битовом потоке как данные управления. Устройства 510B-510J аудиокодирования могут указывать это количество векторов в битовом потоке для облегчения извлечения векторов из битового потока устройством аудиодекодирования.
[1168] На Фиг. 44 показана схема, демонстрирующая иллюстративные операции, осуществляемые устройством аудиокодирования 410D для компенсации ошибки квантования в соответствии с различными аспектами методов, описанных в этом изобретении. В примере, приведенном на фиг. 44, математический блок 526 устройства 510D аудиокодирования показан пунктирным прямоугольником для обозначения, что математические операции могут осуществляться математическим блоком 526 устройства 510D аудиодекодирования.
[1169] Как показано в примере, приведенном на фиг. 44, математический блок 526 может сначала умножать векторы 527 UDIST*SDIST на векторы 525E VTDIST для генерации характерных коэффициентов сферических гармоник (обозначенных как “векторы 630 HDIST”). Затем математический блок 526 может делить векторы 630 HDIST на квантованную версию векторов 525E VTDIST (которые обозначены, опять же, как “векторы 525G VTQ_DIST”). Математический блок 526 может осуществлять это деление путем определения псевдообратного векторов 525G VTQ_DIST и затем умножения векторов HDIST на псевдообратное векторов 525G VTQ_DIST, и выводить версию с компенсации ошибки UDIST*SDIST (которая может сокращенно именоваться “USDIST” или “векторы USDIST”). Версия с компенсации ошибки USDIST может быть обозначена как векторы 527’ US*DIST в примере, приведенном на фиг. 44. Таким образом, методы могут эффективно проецировать ошибку квантования, по меньшей мере, частично, в векторы 527USDIST, генерируя векторы 527’ US*DIST.
[1170] Затем математический блок 526 может вычитать векторы 527’ US*DIST из векторов 527 UDIST*SDIST для определения векторов 634 USERR (которые могут представлять, по меньшей мере, часть ошибки вследствие квантования, проецируемой в векторы 527 UDIST*SDIST). Затем математический блок 526 может умножать векторы 634 USERR на векторы 525G VTQ_DIST для определения векторов 636 HERR. Математически, векторы 636 HERR могут быть эквивалентны векторам 527 USDIST - векторам 527’ US*DIST, результат которого затем умножается на векторы 525E VTDIST. Затем математический блок 526 может суммировать векторы 636 HERR с коэффициентами 531 сферических гармоник фона (обозначенными как векторы 531 HBG в примере, приведенном на фиг. 44), вычисленными путем умножения векторов 525D UBG на векторы 525B SBG и затем на векторы 525F VTBG. Математический блок 526 может прибавлять векторы 636 HERR к векторам 531 HBG, эффективно проецируя, по меньшей мере, часть ошибки квантования в векторы 531 HBG для генерации скомпенсированных векторов 531’ HBG. Таким образом, методы могут проецировать, по меньшей мере, часть ошибки квантования в векторы 531 HBG.
[1171] На Фиг. 45 и 45B показаны схемы, демонстрирующие интерполяцию подкадров из участков двух кадров в соответствии с различными аспектами методов, описанных в этом изобретении. В примере, приведенном на фиг. 45, показаны первый кадр 650 и второй кадр 652. Первый кадр 650 может включать в себя коэффициенты сферических гармоник (“SH[1]”), которые можно разлагать на матрицы U[1], S[1] и V’[1]. Второй кадр 652 может включать в себя коэффициенты сферических гармоник (“SH[2]”). Эти SH[1] и SH[2] могут идентифицировать разные кадры SHC 511, описанного выше.
[1172] В примере, приведенном на фиг. 45B, блок 518 разложения устройства 510H аудиокодирования, показанного в примере, приведенном на фиг. 40H, может разделять каждый из кадров 650 и 652 на четыре соответствующих подкадра 651A-651D и 653A-653D. Затем блок 518 разложения может разлагать первый подкадр 651A (обозначенный как “SH[1,1]”) кадра 650 на матрицы U[1, 1], S[1, 1] и V[1, 1], выводя матрицу 519’ V[1, 1] на блок 550 интерполяции. Затем блок 518 разложения может разлагать второй подкадр 653A (обозначенный как “SH[2,1]”) кадра 652 на матрицы U[1, 1], S[1, 1] и V[1, 1], выводя матрицу 519’ V[2, 1] на блок 550 интерполяции. Блок 518 разложения также может выводить SH[1, 1], SH[1, 2], SH[1, 3] и SH[1, 4] SHC 11 и SH[2, 1], SH[2, 2], SH[2, 3] и SH[2, 4] SHC 511 на блок 550 интерполяции.
[1173] Затем блок 550 интерполяции может осуществлять интерполяции, идентифицированные внизу иллюстрации, показанной в примере, приведенном на фиг. 45B. Таким образом, блок 550 интерполяции может интерполировать V’[1, 2] на основании V’[1, 1] и V’[2, 1]. Блок 550 интерполяции также может интерполировать V’[1, 3] на основании V’[1, 1] и V’[2, 1]. Кроме того, блок 550 интерполяции также может интерполировать V’[1, 4] на основании V’[1, 1] и V’[2, 1]. Эти интерполяции могут предусматривать проекцию V’[1, 1] и V’[2, 1] в пространственную область, как показано в примере, приведенном на фиг. 46-46E, после которой следует временная интерполяция и затем проекция обратно в область сферических гармоник.
[1174] Затем блок 550 интерполяции может выводить U[1, 2]S[1, 2] путем умножения SH[1, 2] на (V’[1, 2])-1, U[1, 3]S[1, 3] путем умножения SH[1, 3] на (V’[1, 3])-1, и U[1, 4]S[1, 4] путем умножения SH[1, 4] на (V’[1, 4])-1. Затем блок 550 интерполяции может преобразовывать кадр разложенную форму, выводя матрицу 519 V, матрицу 519B S и матрицу 519C U.
[1175] На Фиг. 46A-46E показаны схемы, демонстрирующие поперечное сечение проекции одного или более векторов разложенной версии множества коэффициентов сферических гармоник, интерполированных в соответствии с методами, описанными в этом изобретении. Фиг. 46A демонстрирует поперечное сечение проекции одного или более первых векторов первой матрицы 19’ V, разлагаемой из SHC 511 первого подкадра из первого кадра посредством процесса SVD. Фиг. 46B демонстрирует поперечное сечение проекции одного или более вторых векторов второй матрицы 519’ V, разлагаемой из SHC 511 первого подкадра из второго кадра посредством процесса SVD.
[1176] Фиг. 46C демонстрирует поперечное сечение проекции одного или более интерполированных векторов для матрицы 519A V, представляющей второй подкадр из первого кадра, причем эти векторы интерполированы в соответствии с методами, описанными в этом изобретении из матрицы 519’ V, разложенной из первого подкадра первого кадра SHC 511 (т.е. один или более векторов матрицы 519’ V, показанной в примере, приведенном на фиг. 46 в этом примере) и первого подкадра второго кадра SHC 511 (т.е. один или более векторов матрицы 519’ V, показанной в примере, приведенном на фиг. 46B в этом примере).
[1177] Фиг. 46D демонстрирует поперечное сечение проекции одного или более интерполированных векторов для матрицы 519A V, представляющей третий подкадр из первого кадра, причем эти векторы интерполированы в соответствии с методами, описанными в этом изобретении из матрицы 519’ V, разложенной из первого подкадра первого кадра SHC 511 (т.е. один или более векторов матрицы 519’ V, показанной в примере, приведенном на фиг. 46 в этом примере) и первого подкадра второго кадра SHC 511 (т.е. один или более векторов матрицы 519’ V, показанной в примере, приведенном на фиг. 46B в этом примере).
[1178] Фиг. 46E демонстрирует поперечное сечение проекции одного или более интерполированных векторов для матрицы 519A V, представляющей четвертый подкадр из первого кадра, причем эти векторы интерполированы в соответствии с методами, описанными в этом изобретении из матрицы 519’ V, разложенной из первого подкадра первого кадра SHC 511 (т.е. один или более векторов матрицы 519’ V, показанной в примере, приведенном на фиг. 46 в этом примере) и первого подкадра второго кадра SHC 511 (т.е. один или более векторов матрицы 519’ V, показанной в примере, приведенном на фиг. 46B в этом примере).
[1179] На Фиг. 47 показана блок-схема, демонстрирующая, более детально, блок 542 извлечения устройств 540A-540D аудиодекодирования, показанных в примерах, приведенных на фиг. 41-41D. В некоторых примерах, блок 542 извлечения может представлять входной каскад так называемого “встроенного декодера”, который может осуществлять две или более схем декодирование (где путем осуществления этих двух или более схем декодер можно рассматривать как “объединяющий” две или более схем). Как показано в примере, приведенном на фиг. 44, блок 542 извлечения включает в себя мультиплексор 620 и подблоки 622A и 622B извлечения (“подблоки 622 извлечения ”). Мультиплексор 620 идентифицирует матрицы 547-547N кодированных кадрированных SHC, подлежащие отправке на подблок 622A извлечения и подблок 622B извлечения на основании соответствующего указания, генерируются ли соответствующие матрицы 547-547N кодированных кадрированных SHC из синтетического аудиообъекта или записи. Каждый из подблоков 622A извлечения может осуществлять отдельную схему декодирование (которое может именоваться “снятием сжатия”), то есть, в некоторых примерах, адаптированную либо к SHC, генерируемому из синтетического аудиообъекта, либо к SHC, генерируемому из записи. Каждый из подблоков 622A извлечения может осуществлять соответствующую одну из этих схем снятия сжатия для генерации кадров SHC 547, которые выводятся в SHC 547.
[1180] Например, блок 622A извлечения может осуществлять схему снятия сжатия для реконструкции SA из преобладающего сигнала (PS) с использованием следующей формулы:
HOA=DirV x PS,
где DirV - направленный вектор (представляющий различные направления и значения ширины), который может передаваться через побочный канал. Блок 622B извлечения может, в этом примере, осуществлять схему снятия сжатия, которая реконструирует матрицу HOA из PS с использованием следующей формулы:
HOA=sqrt(4π)*Ynm ( тета, фи )*PS,
где Ynm - сферическая гармоническая функция, и информация тета и фи может отправляться через побочный канал.
[1181] В этом отношении, методы предусматривают, что блок 538 извлечения выбирает одну из множества схем снятия сжатия на основании указания, генерируются ли сжатая версия коэффициентов сферических гармоник, представляющих звуковое поле, из синтетического аудиообъекта, и снимает сжатие сжатой версии коэффициентов сферических гармоник с использованием выбранной одной из множества схем снятия сжатия. В некоторых примерах, устройство содержит встроенный декодер.
[1182] На Фиг. 48 показана блок-схема, более детально демонстрирующая блок 48 аудиорендеризации устройства 540A-540D аудиодекодирования, показанного в примерах, приведенных на фиг. 41A-41D. Фиг. 48 демонстрирует преобразование из восстановленных коэффициентов 547 сферических гармоник в многоканальные аудиоданные 549A, совместимые с декодерно-локальной геометрией громкоговорителей. Для некоторых локальных геометрий громкоговорителей (которые, опять же, могут означать геометрию громкоговорителей на декодере), некоторые преобразования, которые гарантируют обратимость, могут приводить к нежелательно низкому качеству аудиоизображения. Таким образом, звуковоспроизведение не всегда приводит к правильной локализации звуков по сравнению с захватываемым аудиосигналом. Для коррекции этого нежелательно низкого качества изображения, методы можно дополнительно дополнять для введения понятия, которое может именоваться “виртуальными громкоговорителями”.
[1183] Вместо требования, чтобы один или более громкоговорителей перемещались или располагались в конкретных или заданных областях пространства, имеющих определенные угловые допуски, установленные стандартом, например, вышеупомянутым ITU-R BS.775-1, вышеописанную конфигурацию можно модифицировать для включения некоторой формы панорамирования, например, амплитудного панорамирования на векторной основе (VBAP), амплитудного панорамирования на основе расстояния или других форм панорамирования. Рассматривая VBAP в целях иллюстрации, VBAP может эффективно вводить так называемые “виртуальные громкоговорители”. VBAP может изменять подвод к одному или более громкоговорителям, благодаря чему, эти один или более громкоговорителей эффективно выводят звук, который воспринимается как исходящий от виртуального громкоговорителя, одно или более из положения и угла которого отличается от, по меньшей мере, одного из положения и/или угла одного или более громкоговорителей, которые поддерживают виртуальный громкоговоритель.
[1184] Для иллюстрации, следующее уравнение для определения подводов громкоговорителя в отношении SHC может выглядеть следующим образом:
[1185] В вышеприведенном уравнении, матрица VBAP имеет размер M строк на N столбцов, где M обозначает количество громкоговорителей (которое равно пяти в вышеприведенном уравнении) и N обозначает количество виртуальных громкоговорителей. Матрицу VBAP можно вычислять как функцию векторов из заданного положения слушателя к каждой из позиций громкоговорителей и векторов из заданного положения слушателя к каждой из позиций виртуальных громкоговорителей. Матрица D в вышеприведенном уравнении может иметь размер N строк на (порядок+1)2 столбцов, где порядок может означать порядок функций SH. Матрица D может представлять следующую матрицу: .
[1186] Матрица g (или вектор, при условии, что существует один единственный столбец) может представлять коэффициент усиления для подводов громкоговорителя для громкоговорителей, размещенных в декодерно-локальной геометрии. В уравнении, матрица g имеет размер M. Матрица A (или вектор, при условии, что существует один единственный столбец) может обозначать SHC 520, и имеет размер (порядок+1)(порядок+1), который также может быть обозначен как (порядок+1)2.
[1187] Фактически, матрица VBAP является матрицей MxN, обеспечивающей так называемую “регулировку коэффициента усиления”, которая разлагается на положение громкоговорителей и позицию виртуальных громкоговорителей. Введение панорамирования, таким образом, может приводить к улучшению воспроизведения многоканального аудиосигнала, что приводит к повышению качества изображения при воспроизведении локальной геометрией громкоговорителей. Кроме того, благодаря включению VBAP в это уравнение, методы могут преодолевать недостатки геометрий громкоговорителей, которые не выравниваются с указанными в различных стандартах.
[1188] На практике, уравнение можно инвертировать и применять для преобразования SHC обратно в многоканальные подводы для конкретной геометрии или конфигурации громкоговорителей, которая, опять же, может именоваться декодерно-локальной геометрией в этом изобретении. Таким образом, уравнение можно инвертировать для решения относительно матрицы g. Инвертированное уравнение может выглядят следующим образом:
[1189] Матрица g может представлять коэффициент усиления громкоговорителя для, в этом примере, каждого из пяти громкоговорителей в конфигурации громкоговорителей 5.1. Положения виртуальных громкоговорителей, используемых в этой конфигурации, может соответствовать положениям, заданным в спецификации или стандарте многоканального формата 5.1. Положение громкоговорителей, которое может поддерживать каждый из этих виртуальных громкоговорителей, можно определить с использованием любого количества известных методов локализации аудиосигнала, многие из которых предусматривают воспроизведение тона, имеющего конкретную частоту, для определения положения каждого громкоговорителя относительно основного блока (например, приемник аудио/видеосигнала (A/V приемника), телевизора, игровой системы, система цифрового видеодиска или других типов основных систем). Альтернативно, пользователь основного блока может вручную указывать положение каждого из громкоговорителей. В любом случае, на основании этих известных положений и возможных углов, основной блок может находить коэффициенты усиления, предполагая идеальную конфигурацию виртуальных громкоговорителей посредством VBAP.
[1190] В этом отношении, устройство или оборудование может осуществлять амплитудное панорамирование на векторной основе или другую форму панорамирования на множестве виртуальных каналов для создания множества каналов, которые стимулируют громкоговорители в декодерно-локальной геометрии излучать звуки, которые воспринимаются как исходящие из виртуальных громкоговорителей, сконфигурированных в другой локальной геометрии. Методы, таким образом, могут предусматривать, что устройство 40 аудиодекодирования осуществляет преобразование на множестве коэффициентов сферических гармоник, например, восстановленных коэффициентов 47 сферических гармоник, для создания множества каналов. Каждый из множества каналов может быть связан с соответствующей отдельной областью пространства. Кроме того, каждый из множества каналов может содержать множество виртуальных каналов, где множество виртуальных каналов может быть связано с соответствующей отдельной областью пространства. Таким образом, устройство может осуществлять амплитудное панорамирование на векторной основе на виртуальных каналах для создания множества канала многоканальных аудиоданных 49.
[1191] На Фиг. 49A-49E(ii) показаны схемы, демонстрирующие соответствующие системы 560A-560C, 567D, 569D, 571E и 573E аудиокодирования, которые могут реализовать различные аспекты методов, описанных в этом изобретении. Как показано в примере, приведенном на фиг. 49A, система 560A аудиокодирования может включать в себя устройство 562 аудиокодирования и устройство 564 аудиодекодирования. Устройство 562 аудиокодирования может быть аналогичным любому из устройств 20 и 510A-510D аудиокодирования, показанным в примере, приведенном на фиг. 4 и 40A-40D, соответственно. Устройство 564 аудиодекодирования может быть аналогичным устройству 24 и 40 аудиодекодирования, показанному в примере, приведенном на фиг. 5 и 41.
[1192] Как описано выше, амбиофония более высокого порядка (HOA) позволяет описывать всю информацию направленности звукового поля на основании пространственного преобразования Фурье. В некоторых примерах, чем выше порядок амбиофонии, N, тем выше пространственное разрешение и тем больше количество коэффициентов сферических гармоник (SH) (N+1)2. Таким образом, более высокий порядок амбиофонии N, в некоторых примерах, приводит к повышенным требованиям к ширине полосы для передачи и хранения коэффициентов. Поскольку требования к ширине полосы HOA достаточно высоки по сравнению, например, с аудиоданными объемного звука 5.1 или 7.1, уменьшение ширины полосы может быть желательно для многих применений.
[1193] В соответствии с методами, описанными в этом изобретении, система 560A аудиокодирования может осуществлять способ на основании отделения характерных элементов (переднего плана) от нехарактерных элементов (фона или окружения) в пространственной звуковой сцене. Это разделение позволяет системе 560A аудиокодирования обрабатывать элементы переднего плана и фона независимо друг от друга. В этом примере, система 560A аудиокодирования использует ту особенность, что элементы переднего плана могут больше привлекать внимание (слушателя) и легче локализуются (опять же, слушателем) по сравнению с фоновыми элементами. В результате, система 560A аудиокодирования может более эффективно сохранять или передавать контент HOA.
[1194] В некоторых примерах, система 560A аудиокодирования может достигать этого разделения путем применения процесса разложения на сингулярные значения (SVD). Процесс SVD может разделять кадр коэффициентов HOA на 3 матрицы (U, S, V). Матрица U содержит левые сингулярные векторы, и матрица V содержит правые сингулярные векторы. Диагональная матрица S содержит неотрицательные, сортированные сингулярные значения на своей диагонали. В общем случае хорошая (или, в ряде случаев, отличная, предполагая неограниченную точность представления коэффициентов HOA) реконструкция коэффициентов HOA будет задана посредством U*S*V'. Реконструируя только подпространство с D наибольшими сингулярными значениями: U(:,1:D)*S(1:D,:)*V', система 560A аудиокодирования может извлекать наиболее заметную пространственную информацию из этого кадра HOA, т.е. звуковые элементы переднего плана (и, возможно некоторые сильные ранние комнатные отражения). Остаток U(:,D+1:end)*S(D+1:end,:)*V' может реконструировать фоновые элементы и реверберацию из контента.
[1195] Система 560A аудиокодирования может определять значение D, которое разделяет два подпространства, путем анализа наклона кривой, созданной уменьшающимися диагональными значениями S: большие сингулярные значения представляют звуки переднего плана, низкие сингулярные значения представляют фоновые значения. Система 560A аудиокодирования может использовать первую и вторую производную кривой сингулярных значений. Система 560A аудиокодирования также может ограничивать число D величиной между единицей и пятью. Альтернативно, система 560A аудиокодирования может предварительно задавать число D, например, значение четыре. В любом случае, оценив число D, система 560A аудиокодирования извлекает подпространства переднего плана и фона из матриц U и S.
[1196] Система 560A аудиокодирования может затем реконструировать коэффициенты HOA фоновой сцены посредством U(:,D+1:end)*S(D+1:end,:)*V', что дает (N+1)2 каналов коэффициентов HOA. Поскольку известно, что фоновые элементы, в некоторых примерах, не столь заметны и не столь локализуемы как элементы переднего плана, система 560A аудиокодирования может усекать порядок каналов HOA. Кроме того, система 560A аудиокодирования может сжимать эти каналы с помощью потерьных или беспотерьных аудиокодеков, например AAC, или, в необязательном порядке, с помощью более агрессивного аудиокодека по сравнению с используемым для сжатия заметных элементов переднего плана. В ряде случаев, для экономии ширины полосы, система 560A аудиокодирования может по-разному передавать элементы переднего плана. Таким образом, система аудиокодирования может передавать левые сингулярные векторы U(:,1:D), сжав их с помощью потерьных или беспотерьных аудиокодеков (например AAC) и передавать эти сжатые левые сингулярные значения совместно с матрицей реконструкции R=S(1:D,:)*V'. R может представлять матрицу D x (N+1)2, которая может различаться по кадрам.
[1197] На стороне приемника системы 560 аудиокодирования, система аудиокодирования может умножать эти две матрицы для реконструкции кадра (N+1)2 каналов HOA. После суммирования друг с другом каналов HOA фона и переднего плана, система 560A аудиокодирования могут рендеризоваться на любую акустическую установку с использованием любого надлежащего рендеризатора амбиофонии. Поскольку методы обеспечивают отделение элементов переднего плана (прямого или характерного звука) от фоновых элементов, слабослышащие могут управлять микшированием элементов переднего плана и фона для увеличения разборчивости. Применимы также другие аудиоэффекты, например динамический компрессор только на элементах переднего плана.
[1198] На Фиг. 49B показана блок-схема, более детально демонстрирующая систему 560B аудиокодирования. Как показано в примере, приведенном на фиг. 49B, система 560B аудиокодирования может включать в себя устройство 566 аудиокодирования и устройство 568 аудиодекодирования. Устройство 566 аудиокодирования может быть аналогичным устройствам 24 и 510E аудиокодирования, показанным в примере, приведенном на фиг. 4 и 40E. Устройство 568 аудиодекодирования может быть аналогичным устройству 24 и 540B аудиодекодирования, показанному в примере, приведенном на фиг. 5 и 41B.
[1199] В соответствии с методами, описанными в этом изобретении, при использовании SVD на кадровой основе (или родственных способов, например, KLT и PCA) разложение на сигналах HoA, в целях уменьшения ширины полосы, устройство 66 аудиокодирования может квантовать первые несколько векторов матрицы U (умноженные на соответствующие сингулярные значения матрицы S), а также соответствующие векторы вектора VT. Они будут содержать 'фоновые' компоненты звукового поля. Методы могут предусматривать, что устройство 566 аудиокодирования кодирует вектор UDIST*SDIST с использованием машины аудиокодирования типа "черный ящик ". Вектор V может подвергаться скалярному или векторному квантованию. Кроме того, некоторые или все из оставшихся векторов в матрице U можно умножать на соответствующие сингулярные значения матрицы S и матрицы V и также кодировать с использованием машины аудиокодирования типа "черный ящик". Они будут содержать 'фоновые' компоненты звукового поля.
[1200] Поскольку самые громкие звуковые компоненты разлагаются на 'компоненты переднего плана', устройство 566 аудиокодирования может снижать порядок амбиофонии 'фоновых' компонентов до использования машины аудиокодирования типа "черный ящик", поскольку (предполагается, что) фон не содержит важного локализуемого контента. В зависимости от порядка амбиофонии компонентов переднего плана, блок 566 аудиокодирования может передавать соответствующий(е) V-вектор(ы), которые могут быть достаточно велики. Например, простое 16-битовое скалярное квантование векторов V будет приводить к служебной нагрузке приблизительно 20 кбит/с для 4-го порядка (25 коэффициентов) и 40 кбит/с для 6-го порядка (49 коэффициентов) для каждого компонента переднего плана. Методы, описанные в этом изобретении, могут обеспечивать способ снижения этой служебной нагрузки V-вектора.
[1201] Для иллюстрации, предположим, что порядок амбиофонии элементов переднего плана равен NDIST, и порядок амбиофонии фоновых элементов равен NBG, как описано выше. Поскольку устройство 566 аудиокодирования может снижать порядок амбиофонии фоновых элементов, как описано выше, NBG может быть меньше NDIST. Длина V-вектора переднего плана, который нужно передавать для реконструкции элементов переднего плана на стороне приемника, имеет длину (NDIST+1)2 для каждого элемента переднего плана, тогда как первые ((NDIST+1)2) - ((NBG+1)2) коэффициентов можно использовать для реконструкции компонентов переднего плана или характерных компонентов вплоть до порядка NBG. С использованием методов, описанных в этом изобретении, устройство 566 аудиокодирования может реконструировать передний план вплоть до порядка NBG и объединять результирующие (NBG+1)2 каналов с каналами фона, с образованием полного звукового поля вплоть до порядка NBG. Затем устройство 566 аудиокодирования может сокращать V-вектор до коэффициентов с индексом выше (NBG+1)2 для передачи, (и эти векторы могут именоваться “VTSMALL”). На стороне приемника, блок 568 аудиодекодирования может реконструировать аудиоканалы переднего плана для порядка амбиофонии, большего NBG, путем умножения элементов переднего плана на векторы VTSMALL.
[1202] На Фиг. 49C показана блок-схема, более детально демонстрирующая систему 56°C аудиокодирования. Как показано в примере, приведенном на фиг. 49C, система 560B аудиокодирования может включать в себя устройство 567 аудиокодирования и устройство 569 аудиодекодирования. Устройство 567 аудиокодирования может быть аналогичным устройствам 20 и 510F аудиокодирования, показанным в примере, приведенном на фиг. 4 и 40F. Устройство 569 аудиодекодирования может быть аналогичным устройствам 24 и 540B аудиодекодирования, показанным в примере, приведенном на фиг. 5 и 41B.
[1203] В соответствии с методами, описанными в этом изобретении, при использовании SVD на кадровой основе (или родственных способов, например, KLT и PCA) разложение на сигналах HoA, в целях уменьшения ширины полосы, устройство 567 аудиокодирования может квантовать первые несколько векторов матрицы U (умноженные на соответствующие сингулярные значения матрицы S), а также соответствующие векторы вектора VT. Они будут содержать 'фоновые' компоненты звукового поля. Методы могут предусматривать, что устройство 567 аудиокодирования кодирует вектор UDIST*SDIST с использованием машины аудиокодирования типа "черный ящик". Вектор V может подвергаться скалярному или векторному квантованию. Кроме того, некоторые или все из оставшихся векторов в матрице U можно умножать на соответствующие сингулярные значения матрицы S и матрицы V и также кодировать с использованием машины аудиокодирования типа "черный ящик". Они будут содержать 'фоновые' компоненты звукового поля.
[1204] Поскольку самые громкие звуковые компоненты разлагаются на 'компоненты переднего плана', устройство 567 аудиокодирования может снижать порядок амбиофонии 'фоновых' компонентов до использования машины аудиокодирования типа "черный ящик", поскольку (предполагается, что) фон не содержит важного локализуемого контента. Устройство 567 аудиокодирования может снижать порядок таким образом, чтобы сохранять полную энергию звукового поля согласно описанным здесь методам. В зависимости от порядка амбиофонии компонентов переднего плана, блок 567 аудиокодирования может передавать соответствующий(е) V-вектор(ы), которые могут быть достаточно велики. Например, простое 16-битовое скалярное квантование векторов V будет приводить к служебной нагрузке приблизительно 20 кбит/с для 4-го порядка (25 коэффициентов) и 40 кбит/с для 6-го порядка (49 коэффициентов) для каждого компонента переднего плана. Методы, описанные в этом изобретении, могут обеспечивать способ снижения этой служебной нагрузки V-вектора(ов).
[1205] Для иллюстрации, предположим, что порядок амбиофонии элементов переднего плана равен и порядок амбиофонии фоновых элементов равен N. Устройство 567 аудиокодирования может снижать порядок амбиофонии фоновых элементов V-вектора(ов) от N до ῆ таким образом, что ῆ<N. Устройство 567 аудиокодирования дополнительно применяет компенсацию для увеличения значений фоновых элементов V-вектора(ов) для сохранения полной энергии звукового поля, описанного посредством SHC. Иллюстративные методы применения компенсации описаны выше со ссылкой на фиг. 40F. На стороне приемника, блок 569 аудиодекодирования может реконструировать фоновые аудиоканалы для порядка амбиофонии.
[1206] Фиг. 49D(i) и 49D(ii) иллюстрируют устройство 567D аудиокодирования и устройство 569D аудиодекодирования, соответственно. Устройство 567D аудиокодирования и устройство 569D аудиодекодирования могут быть выполнены с возможностью осуществления одного или более определений характерности на основе направленности, в соответствии с аспектами этого изобретения. Амбиофония более высокого порядка (HOA) является способом описания всей информации направленности звукового поля на основании пространственного преобразования Фурье. Чем выше порядок амбиофонии N, тем выше пространственное разрешение, тем больше количество коэффициентов сферических гармоник (SH) (N+1)^2, тем больше необходимая ширина полосы для передачи и хранения данных. Поскольку требования к ширине полосы HOA достаточно высоки, для многих применений желательно уменьшение ширины полосы.
[1207] Выше были приведены описания, как SVD (разложение на сингулярные значения) или родственные процессы можно использовать для пространственного сжатия аудиосигнала. Описанные здесь методы представляют улучшенный алгоритм для выбора заметных элементов, то есть элементов переднего плана. После разложения на основе SVD кадра HOA аудио на его матрицы U, S и V, методы основывают выбор K заметных элементов исключительно на первых K каналах матрицы U [ U(:,1:K)*S(1:K,1:K) ]. Это приводит к выбору аудиоэлементов с наивысшей энергией. Однако не гарантируется, что эти элементы также являются направленными. Таким образом, методы относятся к нахождению звуковых элементов, которые имеют высокую энергию и также являются направленными. Это потенциально достигается путем взвешивания матрицы V матрицей S. Затем, для каждой строки этой результирующей матрицы, элементы с более высокими индексами (которые связаны с коэффициентами более высокого порядка HOA) возводятся в квадрат и суммируются, что дает одно значение для каждой строки [sumVS в псевдокоде, описанном со ссылкой на фиг. 40H]. В соответствии с последовательностью операций, представленной в псевдокоде, рассматриваются коэффициенты амбиофонии более высокого порядка начиная с 5-го индекса. Эти значения сортируются согласно их размеру, и индекс сортировки используется для переупорядочения исходных матриц U, S и V, соответственно. Алгоритм сжатия на основе SVD, описанный выше в этом изобретении, затем можно применять без дополнительного изменения.
[1208] На Фиг. 49E(i) и 49E(ii) показана блок-схема, демонстрирующая устройство 571E аудиокодирования и устройство 573E аудиодекодирования, соответственно. Устройство 571E аудиокодирования и устройство 573E аудиодекодирования могут осуществлять различные аспекты методов, описанные выше в отношении примеров, приведенных на фиг. 49-49D(ii), за исключением того, что устройство 571E аудиокодирования может осуществлять разложение на сингулярные значения в отношении матрицы спектральной плотности мощности (PDS) коэффициентов HOA для генерации матрицы S2 и матрицы V. Матрица S2 может обозначать квадрат матрицы S, после чего матрица S2 может подвергаться операции извлечения квадратного корня для получения матрицы S. Устройство 571E аудиокодирования может, в ряде случаев, осуществлять квантование в отношении матрицы V для получения квантованной матрицы V (которая может быть обозначена как матрица V’).
[1209] Устройство 571E аудиокодирования может получать матрицу U, сначала умножая матрицу S на квантованную матрицу V’ для генерации матрицы SV’. Устройство 571E аудиокодирования может затем получать псевдообратную матрицу SV’ и затем умножать коэффициенты HOA на псевдообратную матрицу SV’ для получения матрицы U. Путем осуществления SVD в отношении спектральной плотности мощности коэффициентов HOA вместо самих коэффициентов, устройство 571E аудиокодирования может потенциально снижать вычислительную сложность осуществления SVD в отношении одного или более из циклов процессор и пространства хранения, достигая при этом такой же эффективности аудиокодирования источника, как если бы SVD применялось непосредственно к коэффициентам HOA.
[1210] Устройство 573E аудиодекодирования может быть аналогичным устройствам аудиодекодирования, описанным выше, за исключением того, что устройство 573 аудиодекодирования может реконструировать коэффициенты HOA из разложений коэффициентов HOA, достигаемых путем применения SVD к спектральной плотности мощности коэффициентов HOA, а не непосредственно к коэффициентам HOA.
[1211] На Фиг. 50A и 50B показаны блок-схемы, демонстрирующие один из двух разных подходов для потенциального снижения порядка фонового контента в соответствии с методами, описанными в этом изобретении. Как показано в примере, приведенном на фиг. 50, первый подход может использовать снижение порядка в отношении векторов UBG*SBG*VT для снижения порядка от N до ῆ, где ῆ меньше, чем (<) N. Таким образом, блок 528A снижения порядка, показанный в примерах, приведенных на фиг. 40B-40J, может осуществлять снижение порядка для усечения или иного снижения порядка N векторов UBG*SBG*VT до ῆ, где ῆ меньше, чем (<) N.
[1212] В качестве альтернативного подхода, блок 528A снижения порядка может, как показано в примере, приведенном на фиг. 50B, осуществлять это усечение в отношении VT, устраняя строки до количества (ῆ+1)2, что не проиллюстрировано в примере, приведенном на фиг. 40B для упрощения иллюстрации. Другими словами, блок 528A снижения порядка может удалять один или более порядков матрицы VT для эффективной генерации матрицы VBG. Размер этой матрицы VBG равен (ῆ+1)2 x (N+1)2 - D, где эта матрица VBG затем используется вместо матрицы VT при генерации векторов UBG*SBG*VT, эффективно осуществляя усечение для генерации векторов UBG*SBG*VT размером M x (ῆ+1)2.
[1213] На Фиг. 51 показана блок-схема, демонстрирующая примеры тракта сжатия характерных компонентов устройства 700A аудиокодирования, которое может реализовать различные аспекты методов, описанных в этом изобретении для сжатия коэффициентов 701 сферических гармоник. В примере, приведенном на фиг. 51, тракт сжатия характерных компонентов может означать тракт обработки устройства 700A аудиокодирования, который сжимает характерные компоненты звукового поля, представленного SHC 701. Другой тракт, который может именоваться трактом сжатия фонового компонента, может представлять тракт обработки устройства 700A аудиокодирования, который сжимает фоновые компоненты SHC 701.
[1214] Хотя это не показано для упрощения иллюстрации, тракт сжатия фонового компонента может действовать в отношении непосредственно SHC 701 вместо разложений SHC 701. Это аналогично описанному выше со ссылкой на фиг. 49-49C, за исключением того, что вместо повторной сборки фоновых компонентов из матриц UBG, SBG т VBG и затем осуществления некоторой формы психоакустического кодирования (например, с использованием кодера AAC) этих реконструированных фоновых компонентов, тракт обработки фонового компонента может действовать непосредственно в отношении SHC 701 (как описано выше в отношении устройства 20 аудиокодирования, показанного в примере, приведенном на фиг. 4), сжимая эти фоновые компоненты с использованием психоакустического кодера. Благодаря осуществлению психоакустического кодирования непосредственно в отношении SHC 701, нарушения непрерывности могут снижаться, наряду со снижением вычислительной сложности (в отношении операций, необходимых для сжатия фоновых компонентов) по сравнению с осуществлением психоакустического кодирования в отношении реконструированных фоновых компонентов. Хотя используются термины "характерный" и "фон", термин “заметный” можно использовать вместо “характерный”, и термин “окружение” можно использовать вместо “фон” в этом изобретении.
[1215] В любом случае, коэффициенты 701 сферических гармоник (“SHC 701”) могут содержать матрицу коэффициентов, имеющую размер M x (N+1)2, где M обозначает количество выборок (и, в некоторых примерах, равно 1024) в кадре аудио, и N обозначает наивысший порядок базисной функции, которой соответствуют коэффициенты. Как упомянуто выше, N обычно задается равным четырем (4) для всего 1024x25 коэффициентов. Каждый из SHC 701, соответствующих конкретному порядку, комбинации подпорядков, может именоваться каналом. Например, все M коэффициентов выборки, соответствующих базисной функции первого порядка, нулевого подпорядка, могут представлять канал, тогда как коэффициенты, соответствующие базисной функции нулевого порядка, нулевого подпорядка, могут представлять другой канал, и т.д. SHC 701 также могут именоваться в этом изобретении контентом 701 амбиофонии более высокого порядка (HOA) или сигналом 701 SH.
[1216] Как показано в примере, приведенном на фиг. 51, устройство 700A аудиокодирования включает в себя блок 702 анализа, блок 704 синтеза на векторной основе, блок 706 приведения векторов, блок 708 психоакустического кодирования, блок 710 приведения коэффициентов и блок 712 сжатия (“блок 712 сжатия”). Блок 702 анализа может представлять блок, выполненный с возможностью осуществления анализа в отношении SHC 701 для идентификации характерных компонентов звукового поля (D) 703 и суммарного количества фоновых компонентов (BGTOT) 705. По сравнению с устройствами аудиокодирования, описанными выше, устройство 700A аудиокодирования не осуществляет это определение в отношении разложений SHC 701, но непосредственно в отношении SHC 701.
[1217] Блок 704 синтеза на векторной основе представляет блок, выполненный с возможностью осуществления некоторой формы векторного синтеза в отношении SHC 701, например SVD, KLT, PCA или любого другого векторного синтеза, для генерации, в случаях SVD, матрицы 707 [US], имеющей размер M x (N+1)2, и матрицы 709 [V], имеющей размер (N+1)2 x (N+1)2. Матрица 707 [US] может представлять матрицу, полученную матричным умножением матрицы [U] и матрицы [S], генерируемой путем применения SVD к SHC 701.
[1218] Блок 706 приведения векторов может представлять блок, выполненный с возможностью снижения количества векторов матрицы 707 [US] и матрицы 709 [V] таким образом, что каждый из оставшихся векторов матрицы 707 [US] и матрицы 709 [V] идентифицируют характерный или заметный компонент звукового поля. Блок 706 приведения векторов может осуществлять это приведение на основании количества характерных компонентов D 703. Количество характерных компонентов D 703 может, фактически, представлять массив чисел, где каждое число идентифицирует разные характерные векторы матриц 707 и 709. Блок 706 приведения векторов может выводить приведенную матрицу 711 [US] размером M x D и приведенную матрицу 713 [V] размером (N+1)2 x D.
[1219] Хотя это не показано для упрощения иллюстрации, интерполяция матрицы 709 [V] может происходить до приведения матрицы 709 [V] аналогично тому, что более детально описано выше. Кроме того, хотя это не показано для упрощения иллюстрации, переупорядочения приведенной матрицы 711 [US] и/или приведенной матрицы 712 [V], как более детально описано выше. Соответственно, методы не подлежат ограничению этими и другими отношениями (например, проекцией ошибки или любым другим аспектом вышеприведенных методов, описанных выше, но не показанных в примере, приведенном на фиг. 51).
[1220] Блок 708 психоакустического кодирования представляет блок, выполненный с возможностью осуществления психоакустического кодирования в отношении матрицы 711 [US] для генерации битового потока 715. Блок 710 приведения коэффициентов может представлять блок, выполненный с возможностью снижения количества каналов приведенной матрицы 713 [V]. Другими словами, блок 710 приведения коэффициентов может представлять блок, выполненный с возможностью исключения коэффициентов характерных векторов V (которые образуют приведенную матрицу 713 [V]), имеющих мало или не имеющих информации направленности. Как описано выше, в некоторых примерах, коэффициенты характерных векторов V, соответствующие базисным функциям первого и нулевого порядка (обозначенного выше как NBG), обеспечивают мало информации направленности и, таким образом, могут быть удалены из характерных векторов V (что именуется выше “снижением порядка”). В этом примере, повышенная гибкость может обеспечиваться не только для идентификации этих коэффициентов, которые соответствуют NBG, но и для идентификации дополнительных каналов HOA (которые могут обозначаться переменной TotalOfAddAmbHOAChan) из набора [(NBG+1)2+1, (N+1)2]. Блок 702 анализа может анализировать SHC 701 для определения BGTOT, который может идентифицировать не только (NBG+1)2, но и TotalOfAddAmbHOAChan. Блок 710 приведения коэффициентов затем может удалять коэффициенты, соответствующие (NBG+1)2, и TotalOfAddAmbHOAChan из приведенной матрицы 713 [V] для генерации малой матрицы 717 [V] размером ((N+1)2-(BGTOT) x D.
[1221] Блок 712 сжатия затем может осуществлять вышеупомянутое скалярное квантование и/или хаффмановское кодирование для сжатия малой матрицы 717 [V], выводя сжатую малую матрицу 717 [V] как информацию 719 побочного канала (“информацию 719 побочного канала”). Блок 712 сжатия может выводить информацию 719 побочного канала аналогично показанному в примере, приведенном на фиг. 10-10O(ii). В некоторых примерах, блок генерации битового потока, аналогичный описанным выше, может включать информацию 719 побочного канала в битовый поток 715. Кроме того, хотя оно описано в отношении битового потока 715, устройство 700A аудиокодирования может, как упомянуто выше, включать в себя тракт обработки фонового компонента, который обеспечивает другой битовый поток, где блок генерации битового потока, аналогичный описанным выше, может генерировать битовый поток аналогичный битовому потоку 17, описанному выше, который включает в себя битовый поток 715 и битовый поток, выводимый трактом обработки фонового компонента.
[1222] В соответствии с методами, описанными в этом изобретении, блок 702 анализа может быть выполнен с возможностью определения первого ненулевого набора коэффициентов вектора, т.е. векторов приведенной матрицы 713 [V] в этом примере, подлежащих использованию для представления характерного компонента звукового поля. В некоторых примерах, блок 702 анализа может определить, что все коэффициенты каждого вектора, образующего приведенную матрицу 713 [V] подлежат включению в информацию 719 побочного канала. Таким образом блок 702 анализа может задавать BGTOT равным нулю.
[1223] Устройство 700A аудиокодирования может, таким образом, эффективно действовать обратно описанному выше в отношении таблицы обозначенной как “декодированные векторы”. Кроме того, устройство 700A аудиокодирования может указывать элемент синтаксиса в заголовке единицы доступа (который может включать в себя один или более кадров) какой из множества режимов конфигурации выбран. Хотя он описан как указанный для каждой единицы доступа, блок 702 анализа может указывать этот элемент синтаксиса но покадровой основе или любой другой периодической основе или непериодической основе (например, один раз для всего битового потока). В любом случае, этот элемент синтаксиса может содержать два бита, указывающие, какой из четырех режимов конфигурации был выбран для указания ненулевого набора коэффициентов приведенной матрицы 713 [V] для представления аспектов направленности этого характерного компонента. Элемент синтаксиса может быть обозначен как “codedVVecLength”. Таким образом, устройство 700A аудиокодирования может сигнализировать или иначе указывать в битовом потоке, какой из четырех режимов конфигурации использовался для указания малой матрицы 717 [V] в битовом потоке. Хотя они описаны в отношении четырех режимов конфигурации, методы не подлежат ограничению четырьмя режимами конфигурации, но предусматривают любое количество режимов конфигурации, включающее в себя единичный режим конфигурации или множество режимов конфигурации.
[1224] Различные аспекты методов таким образом, могут предусматривать, что устройство 700A аудиокодирования выполнено с возможностью действовать в соответствии со следующими пунктами.
[1225] Пункт 133149-1F. Устройство, содержащее: один или более процессоров, выполненных с возможностью выбора одного из множества режимов конфигурации, для указания ненулевого набора коэффициентов вектора, причем вектор разложен из множества коэффициентов сферических гармоник, описывающих звуковое поле и представляющих характерный компонент звукового поля, и указания ненулевого набора коэффициентов вектора на основании выбранного одного из множества режимов конфигурации.
[1226] Пункт 133149-2F. Устройство по пункту 133149-1F, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты.
[1227] Пункт 133149-3F. Устройство по пункту 133149-1F, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[1228] Пункт 133149-4F. Устройство по пункту 133149-1F, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник, и не включает в себя, по меньшей мере, один из коэффициентов, соответствующих порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник,
[1229] Пункт 133149-5F. Устройство по пункту 133149-1F, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты за исключением, по меньшей мере, одного из коэффициентов.
[1230] Пункт 133149-6F. Устройство по пункту 133149-1F, в котором один или более процессоров дополнительно выполнены с возможностью указания выбранного одного из множества режимов конфигурации в битовом потоке.
[1231] Пункт 133149-1G. Устройство, содержащее: один или более процессоров, выполненных с возможностью определения одного из множества режимов конфигурации, позволяющего извлекать ненулевой набор коэффициентов вектора в соответствии с один из множества режимов конфигурации, причем вектор разложен из множества коэффициентов сферических гармоник, описывающих звуковое поле и представляющих характерный компонент звукового поля, и извлечения ненулевого набора коэффициентов вектора на основании полученного одного из множества режимов конфигурации.
[1232] Пункт 133149-2G. Устройство по пункту 133149-1G, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты.
[1233] Пункт 133149-3G. Устройство по пункту 133149-1G, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник.
[1234] Пункт 133149-4G. Устройство по пункту 133149-1G, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя те из коэффициентов, которые соответствуют порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник, и не включает в себя, по меньшей мере, один из коэффициентов, соответствующих порядку, превышающему порядок базисной функции, которой соответствуют один или более из множества коэффициентов сферических гармоник,
[1235] Пункт 133149-5G. Устройство по пункту 133149-1G, в котором один из множества режимов конфигурации указывает, что ненулевой набор коэффициентов включает в себя все коэффициенты за исключением, по меньшей мере, одного из коэффициентов.
[1236] Пункт 133149-6G. Устройство по пункту 133149-1G, в котором один или более процессоров дополнительно выполнены с возможностью, при определении одного из множества режимов конфигурации, определять один из множества режимов конфигурации на основании значения, сигнализируемого в битовом потоке.
[1237] На Фиг. 52 показана блок-схема, демонстрирующая другой пример устройства 750A аудиодекодирования, которое может реализовать различные аспекты методов, описанных в этом изобретении, для реконструкции или примерной реконструкции SHC 701. В примере, приведенном на фиг. 52, устройство 750A аудиодекодирования аналогично устройству 540D аудиодекодирования, показанному в примере, приведенном на фиг. 41D, за исключением того, что блок 542 извлечения принимает битовый поток 715’ (который аналогичен битовому потоку 715, описанному выше в отношении примера, приведенного на фиг. 51, за исключением того, что битовый поток 715’ также включает в себя аудиокодированную версию SHCBG 752) и информацию 719 побочного канала. По этой причине, блок извлечения обозначается “блок 542’ извлечения”.
[1238] Кроме того, блок 542’ извлечения отличается от блока 542 извлечения тем, что блок 542’ извлечения включает в себя модифицированную форму блока 555 снятия сжатия V (который показан “блок 555’ снятия сжатия V” в примере, приведенном на фиг. 52). Блок 555’ снятия сжатия V принимает информацию 719 побочного канала и элемент синтаксиса, обозначенный codedVVecLength 754. Блок 542’ извлечения вычленяет codedVVecLength 754 из битового потока 715’ (и, в одном примере, из заголовка единицы доступа, включенного в битовый поток 715’). Блок 555’ снятия сжатия V включает в себя блок 756 конфигурирования режима (“блок 756 конфигурирования режима”) и блок 758 вычленения, выполненный с возможностью действовать в соответствии с любым из вышеописанных режимов 760 конфигурации.
[1239] Блок 756 конфигурирования режима принимает элемент 754 синтаксиса и выбирает один из режимов 760 конфигурации. Затем блок 756 конфигурирования режима конфигурирует блок 758 вычленения выбранным одним из режимов 760 конфигурации. Блок 758 вычленения представляет блок, выполненный с возможностью действовать в соответствии с любым из режимов 760 конфигурации для вычленения сжатой формы малых векторов 717 [V] из информации 719 побочного канала. Блок 758 вычленения может действовать в соответствии с оператором переключения, представленным в нижеследующей таблице.
[1240] В вышеприведенной таблице синтаксиса, первый оператор переключения с четырьмя случаями (случаями 0-3) обеспечивает возможность определения длины каждого вектора малой матрицы717 [V] в отношении количества коэффициентов. Первый случай, case 0, указывает, что заданы все коэффициенты для векторов VTDIST. Второй случай, case 1, указывает, что заданы только коэффициенты вектора VTDIST, соответствующие порядку, большему, чем MinNumOfCoeffsForAmbHOA, что может обозначать то, что именуется выше (NDIST +1) - (NBG+1). Третий случай, case 2, аналогичен второму случаю, но дополнительно вычитает коэффициенты, идентифицированные NumOfAddAmbHoaChan, который обозначает переменную для указания дополнительных каналов (где “каналы” означают конкретный коэффициент, соответствующий определенному порядку, комбинации подпорядков), соответствующих порядку, который превышает порядок NBG. Четвертый случай, case 3, указывает, что заданы только коэффициенты вектора VTDIST, оставшиеся после удаления коэффициентов, идентифицированных посредством NumOfAddAmbHoaChan.
[1241] В этом отношении, устройство 750A аудиодекодирования может действовать в соответствии с методами, описанными в этом изобретении для определения первого ненулевого набора коэффициентов вектора, которые представляют характерный компонент звукового поля, причем вектор разложен из множества коэффициентов сферических гармоник, которые описывают звуковое поле.
[1242] Кроме того, устройство 750A аудиодекодирования может быть выполнено с возможностью действовать в соответствии с методами, описанными в этом изобретении для определения одного из множества режимов конфигурации, позволяющего извлекать ненулевой набор коэффициентов вектора в соответствии с один из множества режимов конфигурации, причем вектор разложен из множества коэффициентов сферических гармоник, описывающих звуковое поле и представляющих характерный компонент звукового поля, и извлечения ненулевого набора коэффициентов вектора на основании полученного одного из множества режимов конфигурации.
[1243] На Фиг. 53 показана блок-схема, демонстрирующая другой пример устройства 570 аудиокодирования, которое может осуществлять различные аспекты методов, описанных в этом изобретении. В примере, приведенном на фиг. 53, устройство 570 аудиокодирования может быть аналогичным одному или более из устройств 510A-510J аудиокодирования (где блок 528A снижения порядка предполагается включенным в блок 20 извлечения компонентов звукового поля, но не показан для упрощения иллюстрации). Однако устройство 570 аудиокодирования может включать в себя более общий блок 572 преобразования, который может содержать блок 518 разложения в некоторых примерах.
[1244] На Фиг. 54 показана блок-схема, демонстрирующая, более детально, иллюстративную реализацию устройства 570 аудиокодирования, показанного в примере, приведенном на фиг. 53. Как показано в примере, приведенном на фиг. 54, блок 572 преобразования устройства 570 аудиокодирования включает в себя блок 654 поворота. Блок 520 извлечения компонентов звукового поля устройства 570 аудиокодирования включает в себя блок 650 пространственного анализа, блок 652 анализа характеристик контента, блок 656 извлечения когерентных компонентов и блок 658 извлечения диффузных компонентов. Блок 514 аудиокодирования устройства 570 аудиокодирования включает в себя машину 660 кодирования AAC и машину 162 кодирования AAC. Блок 516 генерации битового потока устройства 570 аудиокодирования включает в себя мультиплексор (MUX) 164.
[1245] Ширина полосы, измеряемая в битах в секунду, необходимая для представления 3D аудиоданных в форме SHC, может быть недостаточной для использования потребителем. Например, при использовании частота дискретизации 48 кГц, и с тем же разрешением 32 бита, представление SHC четвертого порядка представляет ширину полосы 36 Мбит/с (25x48000x32 бит/с). По сравнению с традиционным аудиокодированием для стереосигналов, которая обычно составляет около 100 кбит/с, этоa большая величина. Методы, реализованные в примере, приведенном на фиг. 54, могут снижать ширину полосы представлений 3D аудио.
[1246] Блок 650 пространственного анализа, блок 652 анализа характеристик контента и блок 654 поворота могут принимать SHC 511. Как описано в другом месте этого раскрытия, SHC 511 может представлять звуковое поле. В примере, приведенном на фиг. 54, блок 650 пространственного анализа, блок 652 анализа характеристик контента и блок 654 поворота могут принимать двадцать пять SHC для представления звукового поля четвертого порядка (n=4).
[1247] Блок 650 пространственного анализа может анализировать звуковое поле, представленное SHC 511, для идентификации характерных компонентов звукового поля и диффузных компонентов звукового поля. Характерные компоненты звукового поля представляют собой звуки, воспринимаемые как приходящие с идентифицируемого направления или иначе отличимые от фоновых или диффузных компонентов звукового поля. Например, звук, генерируемый отдельным музыкальным инструментом, может восприниматься как приходящий с идентифицируемого направления. Напротив, диффузные или фоновые компоненты звукового поля не восприниматься как приходящие с идентифицируемого направления. Например, звук ветра в лесу может быть диффузным компонентом звукового поля.
[1248] Блок 650 пространственного анализа может идентифицировать один или более характерных компонентов в попытке идентифицировать оптимальный угол поворота звукового поля для выравнивания характерных компонентов, имеющих наибольшую энергию, с вертикальной и/или горизонтальной осью (относительно предполагаемого микрофона, который записывал это звуковое поле). Блок 650 пространственного анализа может идентифицировать этот оптимальный угол, благодаря чему, звуковое поле может поворачиваться таким образом, что эти характерные компоненты лучше выравниваются с лежащими в основе сферическими базисными функциями, показанными в примерах, приведенных на фиг. 1 и 2.
[1249] В некоторых примерах, блок 650 пространственного анализа может представлять блок, выполненный с возможностью осуществления формы анализа диффузии для идентификации процента звукового поля, представленного SHC 511, которое включает в себя диффузные звуки (которые могут означать звуки, имеющие низкие уровни направленности или SHC более низкого порядка, то есть SHC 511, имеющий порядок, меньший или равный единице). В порядке одного примера, блок 650 пространственного анализа может осуществлять анализ диффузии аналогично описанному в статье Ville Pulkki, под названием “Spatial Sound Reproduction with Directional Audio Coding”, опубликованной в J. Audio Eng. Soc., Vol. 55, № 6, датированной июнем 2007 г. В ряде случаев, блок 650 пространственного анализа может анализировать только ненулевой поднабор коэффициентов HOA, например, коэффициенты HOA нулевого и первого порядка SHC 511, при осуществлении анализа диффузии для определения процента диффузии.
[1250] Блок 652 анализа характеристик контента может определять, по меньшей мере, частично на основании SHC 511, сгенерированы ли SHC 511 посредством естественной записи звукового поля или созданы искусственно (т.е., синтетически), в порядке одного примера, из аудиообъекта, например объекта ИКМ. Кроме того, блок 652 анализа характеристик контента может затем определять, по меньшей мере, частично на основании того, сгенерированы ли SHC 511 посредством фактической записи звукового поля или из искусственного аудиообъекта, суммарное количество каналов для включения в битовый поток 517. Например, блок 652 анализа характеристик контента может определять, по меньшей мере, частично на основании того, сгенерированы ли SHC 511 из записи фактического звукового поля или из искусственного аудиообъекта, что в битовый поток 517 нужно включать шестнадцать каналы. Каждый из каналов может быть моноканалом. Блок 652 анализа характеристик контента может дополнительно осуществлять определение суммарного количества каналов для включения в битовый поток 517 на основании выходной битовой скорости битового потока 517, например, 1.2 Мбит/с.
[1251] Кроме того, блок 652 анализа характеристик контента может определять, по меньшей мере, частично на основании того, сгенерированы ли SHC 511 из записи фактического звукового поля или из искусственного аудиообъекта, сколько каналов выделять когерентным или, другими словами, характерным компонентам звукового поля и сколько каналов выделять диффузным или, другими словами, фоновым компоненты звукового поля. Например, когда SHC 511 сгенерированы из записи фактического звукового поля с использованием, в порядке одного примера, Eigenmic, блок 652 анализа характеристик контента может выделять три канала когерентным компонентам звукового поля и может выделять оставшиеся каналы диффузным компонентам звукового поля. В этом примере, когда SHC 511 сгенерированы из искусственного аудиообъекта, блок 652 анализа характеристик контента может выделять пять каналов когерентным компонентам звукового поля и может выделять оставшиеся каналы диффузным компонентам звукового поля. Таким образом, блок анализа контента (т.е., блок 652 анализа характеристик контента) может определять тип звукового поля (например, диффузный/направленный и т.д.) и по очереди определять количество когерентных/диффузных компонентов для извлечения.
[1252] Целевая битовая скорость может влиять на количество компонентов и битовую скорость отдельных машин кодирования AAC (например, машин 660, 662 кодирования AAC). Другими словами, блок 652 анализа характеристик контента может дополнительно осуществлять определение, сколько каналов выделять когерентным компонентам и сколько каналов выделять диффузным компонентам на основании выходной битовой скорости битового потока 517, например, 1.2 Мбит/с.
[1253] В некоторых примерах, каналы, выделенные когерентным компонентам звукового поля могут иметь более высокие битовые скорости, чем каналы, выделенные диффузным компонентам звукового поля. Например, максимальная битовая скорость битового потока 517 может быть равна 1.2 Мбит/с. В этом примере, может существовать четыре канала, выделенные когерентным компонентам, и 16 каналов, выделенных диффузным компонентам. Кроме того, в этом примере, каждый из каналов, выделенных когерентным компонентам, может иметь максимальную битовую скорость 64 кбит/с. В этом примере, каждый из каналов, выделенных диффузным компонентам, может иметь максимальную битовую скорость 48 кбит/с.
[1254] Как упомянуто выше, блок 652 анализа характеристик контента может определять сгенерированы ли SHC 511 из записи фактического звукового поля или из искусственного аудиообъекта. Блок 652 анализа характеристик контента может совершать это определение по-разному. Например, устройство 570 аудиокодирования может использовать SHC 4-го порядка. В этом примере, блок 652 анализа характеристик контента может кодировать 24 канала и предсказывать 25-й канал (который может быть представлен как вектор). Блок 652 анализа характеристик контента может применять скаляры к, по меньшей мере, некоторым из 24 каналов и прибавлять результирующие значения для определения 25-го вектора. Кроме того, в этом примере, блок 652 анализа характеристик контента может определять точность предсказанного 25-го канала. В этом примере, если точность предсказанного 25-го канала относительно высока (например, точность превышает конкретный порог), SHC 511, вероятно, генерируется из синтетического аудиообъекта. Напротив, если точность предсказанного 25-го канала относительно низка (например, точность ниже конкретного порога), SHC 511 с большей степенью вероятности представляют записанное звуковое поле. Например, в этом примере, если отношение сигнал/шум (SNR) 25-го канала больше 100 децибел (дБ), SHC 511 с большей степенью вероятности представляют звуковое поле, генерируемое из синтетического аудиообъекта. Напротив, SNR звукового поля, записанного с использованием собственного микрофона, может составлять от 5 до 20 дБ. Таким образом, может осуществлять очевидное различие в отношении SNR между звуковым полем, представленным SHC 511, генерируемыми из фактической прямой записи и из синтетического аудиообъекта.
[1255] Кроме того, блок 652 анализа характеристик контента может выбирать, по меньшей мере, частично на основании того сгенерированы ли SHC 511 из записи фактического звукового поля или из искусственного аудиообъекта, кодовые книги для квантования вектора V. Другими словами, блок 652 анализа характеристик контента может выбирать разные кодовые книги для использования при квантовании вектора V, в зависимости от того, является ли звуковое поле, представленное коэффициентами HOA записанным или синтетическим.
[1256] В некоторых примерах, блок 652 анализа характеристик контента может определять, на повторяющейся основе, сгенерированы ли SHC 511 из записи фактического звукового поля или из искусственного аудиообъекта. В некоторых таких примерах, основой повторения может быть каждый кадр. В других примерах, блок 652 анализа характеристик контента может осуществлять это определение один раз. Кроме того, блок 652 анализа характеристик контента может определять, на повторяющейся основе, суммарное количество каналов и выделение каналов когерентного компонента и каналов диффузного компонента. В некоторых таких примерах, основой повторения может быть каждый кадр. В других примерах, блок 652 анализа характеристик контента может осуществлять это определение один раз. В некоторых примерах, блок 652 анализа характеристик контента может выбирать, на повторяющейся основе, кодовые книги для использования при квантовании вектора V. В некоторых таких примерах, основой повторения может быть каждый кадр. В других примерах, блок 652 анализа характеристик контента может осуществлять это определение один раз.
[1257] Блок 654 поворота может осуществлять операцию поворота коэффициентов HOA. Как рассмотрено в другом месте этого раскрытия (например, со ссылкой на фиг. 55 и 55B), осуществление операция поворота может снижать количество битов, необходимое для представления SHC 511. В некоторых примерах, анализ поворота, осуществляемый блоком поворота 652, является примером анализа разложения на сингулярные значения (“SVD”). Анализ главных компонентов (“PCA”), анализ независимых компонентов (“ICA”) и преобразование Карунена-Лева (“KLT”) являются родственными методами, которые можно применять.
[1258] В примере, приведенном на фиг. 54, блок 656 извлечения когерентных компонентов принимает повернутый SHC 511 от блока 654 поворота. Кроме того, блок 656 извлечения когерентных компонентов извлекает, из повернутых SHC 511, те из повернутых SHC 511, которые связаны с когерентными компонентами звукового поля.
[1259] Кроме того, блок 656 извлечения когерентных компонентов генерирует один или более каналов когерентного компонента. Каждый из каналов когерентного компонента может включать в себя отдельный поднабор повернутых SHC 511, связанных с когерентными коэффициентами звукового поля. В примере, приведенном на фиг. 54, блок 656 извлечения когерентных компонентов может генерировать от одного до 16 каналов когерентного компонента. Количество каналов когерентного компонента, генерируемых блоком 656 извлечения когерентных компонентов, можно определить по количеству каналов, выделенных блоком 652 анализа характеристик контента когерентным компонентам звукового поля. Битовые скорости каналов когерентного компонента, генерируемых блоком 656 извлечения когерентных компонентов, могут определяться блоком 652 анализа характеристик контента.
[1260] Аналогично, в примере, приведенном на фиг. 54, блок 658 извлечения диффузных компонентов принимает повернутый SHC 511 от блока 654 поворота. Кроме того, блок 658 извлечения диффузных компонентов извлекает, из повернутых SHC 511, те из повернутых SHC 511, которые связаны с диффузные компоненты звукового поля.
[1261] Кроме того, блок 658 извлечения диффузных компонентов генерирует один или более каналов диффузного компонента. Каждый из каналов диффузного компонента может включать в себя отдельный поднабор повернутых SHC 511, связанных с диффузными коэффициентами звукового поля. В примере, приведенном на фиг. 54, блок 658 извлечения диффузных компонентов может генерировать от одного до 9 каналов диффузного компонента. Количество каналов диффузного компонента, генерируемых блоком 658 извлечения диффузных компонентов можно определить по количеству каналов, выделенных блоком 652 анализа характеристик контента диффузным компонентам звукового поля. Битовые скорости каналов диффузного компонента, генерируемых блоком 658 извлечения диффузных компонентов, могут определяться блоком 652 анализа характеристик контента.
[1262] В примере, приведенном на фиг. 54, блок 660 кодирования AAC может использовать кодек AAC для кодирования каналов когерентного компонента, генерируемых блоком 656 извлечения когерентных компонентов. Аналогично, блок 662 кодирования AAC может использовать кодек AAC для кодирования каналов диффузного компонента, генерируемых блоком 658 извлечения диффузных компонентов. Мультиплексор 664 (“MUX 664”) может мультиплексировать кодированные каналы когерентного компонента и кодированные каналы диффузного компонента, совместно с побочными данными (например, оптимальный угол, определенный блоком 650 пространственного анализа), для генерации битового потока 517.
[1263] Таким образом, методы могут предусматривать, что устройство 570 аудиокодирования определяет, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[1264] В некоторых примерах, устройство 570 аудиокодирования может определять, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, поднабор коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля. В этих и других примерах, устройство 570 аудиокодирования может генерировать битовый поток для включения поднабора коэффициентов сферических гармоник. Устройство 570 аудиокодирования может, в ряде случаев, аудиокодировать поднабор коэффициентов сферических гармоник, и генерировать битовый потока для включения аудиокодированного поднабора коэффициентов сферических гармоник.
[1265] В некоторых примерах, устройство 570 аудиокодирования может определять, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, поднабор коэффициентов сферических гармоник, представляющих фоновые компоненты звукового поля. В этих и других примерах, устройство 570 аудиокодирования может генерировать битовый поток для включения поднабора коэффициентов сферических гармоник. В этих и других примерах, устройство 570 аудиокодирования может аудиокодировать поднабор коэффициентов сферических гармоник, и генерировать битовый поток для включения аудиокодированного поднабора коэффициентов сферических гармоник.
[1266] В некоторых примерах, устройство 570 аудиокодирования может осуществлять пространственный анализ в отношении коэффициентов сферических гармоник для идентификации угла поворота звукового поля, представленного коэффициентами сферических гармоник и осуществления операции поворота для поворота звукового поля на идентифицированный угол для генерации повернутых коэффициентов сферических гармоник.
[1267] В некоторых примерах, устройство 570 аудиокодирования может определять, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, первый поднабор коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля, и определять, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, второй поднабор коэффициентов сферических гармоник, представляющих фоновые компоненты звукового поля. В этих и других примерах, устройство 570 аудиокодирования может аудиокодировать первый поднабор коэффициентов сферических гармоник, имеющих более высокую целевую битовую скорость, чем используется для аудиокодирования второго поднабора коэффициентов сферических гармоник.
[1268] Таким образом, различные аспекты методов могут предусматривать, что устройство 570 аудиокодирования определяет, генерируются ли SCH 511 из синтетического аудиообъекта, в соответствии со следующими пунктами.
[1269] Пункт 132512-1. Устройство, например, устройство 570 аудиокодирования, содержащее: в котором один или более процессоров дополнительно выполнены с возможностью определения, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[1270] Пункт 132512-2. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, исключения первого вектора из матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, представляющих звуковое поле, для получения приведенной матрицы кадрированных коэффициентов сферических гармоник.
[1271] Пункт 132512-3. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, исключения первого вектора из матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, представляющих звуковое поле, для получения приведенной матрицы кадрированных коэффициентов сферических гармоник, и предсказания вектора приведенной матрицы кадрированных коэффициентов сферических гармоник на основании оставшихся векторов приведенной матрицы кадрированных коэффициентов сферических гармоник.
[1272] Пункт 132512-4. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, исключения первого вектора из матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, представляющих звуковое поле, для получения приведенной матрицы кадрированных коэффициентов сферических гармоник, и предсказания вектора приведенной матрицы кадрированных коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов приведенной матрицы кадрированных коэффициентов сферических гармоник.
[1273] Пункт 132512-5. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, предсказывать вектор матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник.
[1274] Пункт 132512-6. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, предсказывать вектор матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, и вычисления ошибки на основании предсказанного вектора.
[1275] Пункт 132512-7. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, предсказывать вектор матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, и вычисления ошибки на основании предсказанного вектора и соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник.
[1276] Пункт 132512-8. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, предсказывать вектор матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, и вычисления ошибки как суммы абсолютных значений разности предсказанного вектора и соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник.
[1277] Пункт 132512-9. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью, при определении, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта, предсказывать вектор матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник, по меньшей мере, частично, на основании суммы оставшихся векторов матрицы кадрированных коэффициентов сферических гармоник, вычисления ошибки на основании предсказанного вектора и соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник, вычисления отношения на основании энергии соответствующего вектора матрицы кадрированных коэффициентов сферических гармоник и ошибки, и сравнения отношения с порогом для определения, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта.
[1278] Пункт 132512-10. Устройство по любому из пп. 4-9, в котором один или более процессоров дополнительно выполнены с возможностью, при предсказании вектора, предсказывать первый ненулевой вектор матрицы кадрированных коэффициентов сферических гармоник, где хранится, по меньшей мере, часть коэффициентов сферических гармоник.
[1279] Пункт 132512-11. Устройство по любому из пп. 1-10, в котором один или более процессоров дополнительно выполнены с возможностью указания, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта в битовом потоке, где хранятся сжатая версия коэффициентов сферических гармоник.
[1280] Пункт 132512-12. Устройство по пункту 132512-11, в котором указание является единичным битом.
[1281] Пункт 132512-13. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью определения, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, поднабора коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля.
[1282] Пункт 132512-14. Устройство по пункту 132512-13, в котором один или более процессоров дополнительно выполнены с возможностью генерации битового потока для включения поднабора коэффициентов сферических гармоник.
[1283] Пункт 132512-15. Устройство по пункту 132512-13, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования поднабора коэффициентов сферических гармоник, и генерации битового потока для включения аудиокодированного поднабора коэффициентов сферических гармоник.
[1284] Пункт 132512-16. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью определения, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, поднабора коэффициентов сферических гармоник, представляющих фоновые компоненты звукового поля.
[1285] Пункт 132512-17. Устройство по пункту 132512-16, в котором один или более процессоров дополнительно выполнены с возможностью генерации битового потока для включения поднабора коэффициентов сферических гармоник.
[1286] Пункт 132512-18. Устройство по пункту 132512-15, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования поднабора коэффициентов сферических гармоник, и генерации битового потока для включения аудиокодированного поднабора коэффициентов сферических гармоник.
[1287] Пункт 132512-18. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью осуществления пространственного анализа в отношении коэффициентов сферических гармоник для идентификации угла поворота звукового поля, представленного коэффициентами сферических гармоник, и осуществления операции поворота для поворота звукового поля на идентифицированный угол для генерации повернутых коэффициентов сферических гармоник.
[1288] Пункт 132512-20. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью определения, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, первого поднабора коэффициентов сферических гармоник, представляющих характерные компоненты звукового поля, и определения, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, второго поднабора коэффициентов сферических гармоник, представляющих фоновые компоненты звукового поля.
[1289] Пункт 132512-21. Устройство по пункту 132512-20, в котором один или более процессоров дополнительно выполнены с возможностью аудиокодирования первый поднабор коэффициентов сферических гармоник, имеющих более высокую целевую битовую скорость, чем используется для аудиокодирования второго поднабора коэффициентов сферических гармоник.
[1290] Пункт 132512-22. Устройство по пункту 132512-1, в котором один или более процессоров дополнительно выполнены с возможностью осуществления разложения на сингулярные значения в отношении коэффициентов сферических гармоник для генерации матрицы U, представляющей левые сингулярные векторы из множества коэффициентов сферических гармоник, матрицы S, представляющей сингулярные значения из множества коэффициентов сферических гармоник, и матрицы V, представляющей правые сингулярные векторы из множества коэффициентов сферических гармоник.
[1291] Пункт 132512-23. Устройство по пункту 132512-22, в котором один или более процессоров дополнительно выполнены с возможностью определения, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, участков одной или более из матрицы U, матрицы S и матрицы V, представляющих характерные компоненты звукового поля.
[1292] Пункт 132512-24. Устройство по пункту 132512-22, в котором один или более процессоров дополнительно выполнены с возможностью определения, на основании того, генерируются ли коэффициенты сферических гармоник из синтетического аудиообъекта, участков одной или более из матрицы U, матрицы S и матрицы V, представляющих фоновые компоненты звукового поля.
[1293] Пункт 132512-1C. Устройство, например, устройство 570 аудиокодирования, содержащее: один или более процессоров, выполненных с возможностью определения, генерируются ли коэффициенты сферических гармоник, представляющие звуковое поле, из синтетического аудиообъекта на основании отношения, вычисленного как функция, по меньшей мере, энергии вектора коэффициентов сферических гармоник и ошибки, выведенной на основании предсказанной версии вектора коэффициентов сферических гармоник, и вектора коэффициентов сферических гармоник.
[1294] В каждом из различных вышеописанных случаев, следует понимать, что устройство 570 аудиокодирования может осуществлять способ или иным образом содержать средство для осуществления каждого этапа способа, для которого устройство 570 аудиокодирования выполнено с возможностью осуществления в ряде случаев, это средство может содержать один или более процессоров. В ряде случаев, один или более процессоров может представлять процессор специального назначения, выполняющий инструкции, хранящиеся на долговременном считываемом компьютером носителе данных. Другими словами, различные аспекты методов в каждом из наборов примеров кодирования могут предусматривать долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам осуществлять способ, для выполнения которого предназначено устройство 570 аудиокодирования.
[1295] На Фиг. 55 и 55B показаны схемы, демонстрирующие пример осуществления различные аспекты методов, описанных в этом изобретении для поворота звукового поля 640. На Фиг. 55 показана схема, демонстрирующая звуковое поле 640 до поворота в соответствии с различными аспектами методов, описанных в этом изобретении. В примере, приведенном на фиг. 55, звуковое поле 640 включает в себя два положения высокого давления, обозначенные как положение 642A и 642B. Эти положение 642A и 642B (“положения 642”) располагаются вдоль линии 644, которая имеет ненулевой наклон (что является другим способом указания линии, которая не является горизонтальной, поскольку горизонтальные линии имеют нулевой наклон). При условии, что положения 642 имеют координату z помимо координат x и y, могут потребоваться сферические базисные функции более высокого порядка для правильного представления этого звукового поля 640 (поскольку эти сферические базисные функции более высокого порядка описывают верхние и нижние или негоризонтальные участки звукового поля. Вместо приведения звукового поля 640 непосредственно к SHC 511, устройство 570 аудиокодирования может поворачивать звуковое поле 640 пока линия 644, соединяющая положения 642, не станет горизонтальной.
[1296] На Фиг. 55B показана схема, демонстрирующая звуковое поле 640 после поворота, пока линия 644, соединяющая положения 642, не станет горизонтальной. Таким образом, в результате поворота звукового поля 640, SHC 511 можно выводить таким образом, что SHC 511 более высокого порядка задаются равными нулю при условии, что повернутое звуковое поле 640 больше не имеет никаких положений давления (или энергии) с координатами z. Таким образом, устройство 570 аудиокодирования может поворачивать, перемещать или, в более общем случае, регулировать звуковое поле 640 для снижения количества SHC 511, имеющих ненулевые значения. Затем, совместно с различными другими аспектами методов, устройство 570 аудиокодирования может, вместо того, чтобы сигнализировать 32-битовое знаковое число, идентифицирующее, что эти SHC 511 более высокого порядка имеют нулевые значения, сигнализирует в поле битового потока 517, что эти SHC 511 более высокого порядка не сигнализируются. Устройство 570 аудиокодирования также может указывать информацию поворота в битовом потоке 517, указывающую, как было повернуто звуковое поле 640, часто посредством выражения азимута и возвышения вышеописанным образом. Затем устройство извлечения, например, устройство аудиокодирования, может выводить, что эти несигнализируемые SHC 511 имеют нулевое значение и, при воспроизведении звукового поля 640 на основании SHC 511, осуществлять поворот для поворота звукового поля 640, благодаря чему, звуковое поле 640 сходно со звуковым полем 640, показанным в примере, приведенном на фиг. 55. Таким образом, устройство 570 аудиокодирования может снижать количество SHC 511, которое необходимо указывать в битовом потоке 517 в соответствии с методами, описанными в этом изобретении.
[1297] Алгоритм ‘пространственного уплотнения’ можно использовать для определения оптимального поворота звукового поля. В одном варианте осуществления, устройство 570 аудиокодирования может осуществлять алгоритм для итерации по всем возможным комбинациям азимута и возвышения (т.е., комбинациям 1024x512 в вышеприведенном примере), поворачивая звуковое поле для каждой комбинации, и вычисляя количество SHC 511, превышающее пороговое значение. Комбинация возможных азимутов/возвышений, которая создает наименьшее количество SHC 511, превышающее пороговое значение, можно рассматривать как так называемый “оптимальный поворот”. В этой повернутой форме, звуковое поле может требовать наименьшего количества SHC 511 для представления звукового поля и затем может рассматриваться как уплотненное. В ряде случаев, регулировка может содержать этот оптимальный поворот, и информация регулировки, описанная выше, может включать в себя эту информацию поворота (которая может именоваться “оптимальным поворотом”) (в отношении азимутальных углов и углов возвышения).
[1298] В ряде случаев, вместо того, чтобы указывать только азимутальный угол и угол возвышения, устройство 570 аудиокодирования может указывать дополнительные углы в форме, в порядке одного примера, углов Эйлера. Углы Эйлера указывают угол поворота вокруг оси z, упомянутой оси x и упомянутой оси z. Хотя они описаны в этом изобретении в отношении комбинаций азимутальных углов и углов возвышения, методы этого изобретения не подлежат ограничению указанием только азимутальных углов и углов возвышения, но могут включать в себя указание любого количества углов, в том числе трех вышеупомянутых углов Эйлера. В этом смысле, устройство 570 аудиокодирования может поворачивать звуковое поле для снижения количества множества иерархических элементов, которые обеспечивают информацию, имеющую отношение к описанию звукового поля и указывать углы Эйлера как информацию поворота в битовом потоке. Углы Эйлера, как упомянуто выше, могут описывать, как повернуто звуковое поле. При использовании углов Эйлера, устройство извлечения битового потока может вычленять битовый поток для определения информации поворота, которая включает в себя углы Эйлера и, при воспроизведении звукового поля на основании тех из множества иерархических элементов, которые обеспечивают информацию, имеющую отношение к описанию звукового поля, поворачивать звуковое поля на основании углов Эйлера.
[1299] Кроме того, в ряде случаев, вместо явного указания этих углов в битовом потоке 517, устройство 570 аудиокодирования может указывать индекс (который может именоваться “индексом поворота”), связанный с заранее заданными комбинациями одного или более углов, указывающих поворот. Другими словами, информация поворота может, в ряде случаев, включать в себя индекс поворота. В этих случаях, данное значение индекса поворота, например значение нуль, может указывать, что поворот не осуществлялся. Этот индекс поворота можно использовать в связи с таблицей поворота. Таким образом, устройство 570 аудиокодирования может включать в себя таблицу поворота, содержащую элемент для каждой из комбинаций азимутального угла и угла возвышения.
[1300] Альтернативно, таблица поворота может включать в себя элемент для каждого матричного преобразования, представляющий каждую комбинацию азимутального угла и угла возвышения. Таким образом, устройство 570 аудиокодирования может сохранять таблицу поворота, имеющую элемент для каждого матричного преобразования для поворота звукового поля посредством каждой из комбинаций азимутальных углов и углов возвышения. Обычно устройство 570 аудиокодирования принимает SHC 511 и выводит SHC 511’, когда поворот осуществляется, согласно следующему уравнению:
В вышеприведенном уравнении, SHC 511’ вычисляются как функция матрицы кодирования для кодирования звукового поля относительно второй системы координат (EncMat2), матрица инверсии для возвращения SHC 511 обратно в звуковое поле относительно первой системы координат (InvMat1), и SHC 511. EncMat2 имеет размер 25x32, тогда как InvMat2 имеет размер 32x25. SHC 511’ и SHC 511 имеют размер 25, где SHC 511’ может быть дополнительно приведена вследствие удаления тех, которые не указывают заметную аудиоинформацию. EncMat2 может изменяться для каждой комбинации азимутального угла и угла возвышения, тогда как InvMat1 может оставаться статичной в отношении каждой комбинации азимутального угла и угла возвышения. Таблица поворота может включать в себя элемент, хранящий результат умножения каждой отдельной EncMat2 на InvMat1.
[1301] На Фиг. 56 показана схема, демонстрирующая пример звукового поля, захваченного относительно первой системы координат, который затем поворачивается в соответствии с методами, описанными в этом изобретении, для выражения звукового поля относительно второй системы координат. В примере, приведенном на фиг. 56, звуковое поле, окружающее собственный микрофон 646, захватывается, предполагая первую систему координат, которая обозначается осями X1, Y1 и Z1 в примере, приведенном на фиг. 56. SHC 511 описывают звуковое поле в отношении этой первой системы координат. InvMat1 преобразует SHC 511 обратно в звуковое поле, позволяя поворачивать звуковое поле во вторую систему координат, обозначенную осями X2, Y2 и Z2 в примере, приведенном на фиг. 56. Описанная выше EncMat2 может поворачивать звуковое поле и генерировать SHC 511’, описывающий это повернутое звуковое поле относительно второй системы координат.
[1302] В любом случае, вышеприведенное уравнение можно выводить следующим образом. При условии, что звуковое поле записывается в определенной системе координат, таким образом, что фронт считается направлением оси x, 32 позиции микрофонов собственного микрофона (или другие конфигурации микрофонов) задаются в этой системе координат. Поворот звукового поля затем может рассматриваться как поворот этой системы координат. Для предполагаемой системы координат, SHC 511 можно вычислять следующим образом:
В вышеприведенном уравнении, представляют сферические базисные функции в позиции (Posi) i-го микрофона (где i может быть 1-32 в этом примере). Вектор mici обозначает сигнал микрофона для i-го микрофона для времени t. Позиции (Posi) означают позицию микрофона в первой системе координат (т.е. системе координат до поворота в этом примере).
[1303] Вышеприведенное уравнение можно выразить альтернативно в отношении математических выражений, обозначенных выше как:
.
[1304] Для поворота звукового поля (или во второй системе координат), позиция (Posi) будет вычислена во второй системе координат. При условии, что присутствуют исходные сигналы микрофона, звуковое поле можно произвольно поворачивать. Однако исходные сигналы микрофона (mici(t)) часто бывают недоступны. Задача может состоять в том, как извлекать сигналы микрофона (mici(t)) из SHC 511. Если T-образная используется (как в 32-микрофонном собственном микрофоне), решить эту задачу можно, решая следующее уравнение:
Эта InvMat1 может указывать сферические гармонические базисные функции, вычисленные согласно позиции микрофонов, как указано относительно первой системы координат. Это уравнение также может быть выражено как , как упомянуто выше.
[1305] После извлечения сигналов микрофона (mici(t)) в соответствии с вышеприведенным уравнением, сигналы микрофона (mici(t)), описывающие звуковое поле, может поворачиваться для вычисления SHC 511’, соответствующего второй системе координат, что дает следующее уравнение:
EncMat2 указывает сферические гармонические базисные функции из повернутой позиции (Posi’). Таким образом, EncMat2 может эффективно указывать комбинацию азимутального угла и угла возвышения. Таким образом, когда в таблице поворота хранится результат для каждой комбинации азимутальных углов и углов возвышения, таблица поворота эффективно указывает каждую комбинацию азимутальных углов и углов возвышения. Вышеприведенное уравнение также может быть выражено в виде:
,
где представляют второй азимутальный угол и второй угол возвышения, отличающиеся от первых азимутального угла и угла возвышения, представленных как . соответствуют первой системе координат, тогда как соответствуют второй системе координат. Таким образом InvMat1 может соответствовать , тогда как EncMat2 может соответствовать .
[1306] Вышеописанное может представлять более упрощенную версию вычисления без учета операции фильтрации, представленной выше в различных уравнениях, обозначающих вывод SHC 511 в частотной области функцией , которая означает сферическую бесселеву функцию порядка n. Во временной области, функция эта представляет операции фильтрации, относящиеся к конкретному порядку, n. С помощью фильтрации, поворот можно осуществлять для каждого порядка. Для иллюстрации, рассмотрим нижеследующие уравнения:
[1307] Из этих уравнений, повернутый SHC 511’ для порядков осуществляются по отдельности поскольку bn(t) отличаются для каждого порядка. В результате, вышеприведенное уравнение можно преобразовать следующим образом для вычисления повернутых SHC 511’ первого порядка:
При условии наличии трех SHC 511 первого порядка, каждый из векторов SHC 511’ и 511 имеют размер три в вышеприведенном уравнении. Аналогично, для второго порядка, может применяться следующее уравнение:
Опять же, при условии наличия пяти SHC 511 второго порядка, каждый из векторов SHC 511’ и 511 имеют размер пять в вышеприведенном уравнении. Оставшиеся уравнения для других порядков, т.е. третьего и четвертого порядков, могут быть аналогичны описанным выше, следуя одному и тому же шаблону в отношении размеров матриц (в том, что количество строк EncMat2, количество столбцов InvMat1 и размеры векторов SHC 511 и SHC 511’ третьего и четвертого порядка равны количеству подпорядков (m умножить на два плюс 1) каждой из сферических гармонических базисных функций третьего и четвертого порядка.
[1308] Устройство 570 аудиокодирования таким образом, может осуществлять эту операцию поворота в отношении каждой комбинации азимутального угла и угла возвышения в попытке идентификации так называемого оптимального поворота. Устройство 570 аудиокодирования может, после осуществления этой операции поворота, вычислять количество SHC 511’, превышающее пороговое значение. В ряде случаев, устройство 570 аудиокодирования может осуществлять этот поворот для вывода последовательности SHC 511’, которые представляют звуковое поле в течение промежутка времени, например, кадра аудио. Путем осуществления этого поворота для вывода последовательности SHC 511’, которые представляют звуковое поле в течение этого промежутка времени, устройство 570 аудиокодирования может снижать количество операций поворота, подлежащих осуществлению, вместо того, чтобы делать это для каждого набора SHC 511, описывающих звуковое поле в течение промежутков времени, меньших, чем кадр или другая длина. В любом случае, устройство 570 аудиокодирования может сохранять, на протяжении этого процесса, SHC 511’ имеющих наименьшее количество SHC 511’, превышающее пороговое значение.
[1309] Однако осуществление этой операции поворота в отношении каждой комбинации азимутального угла и угла возвышения может требовать большой объем ресурсов процессора или большого времени. В результате, устройство 570 аудиокодирования может не осуществлять так называемую реализацию “грубой силы” алгоритма поворота. Вместо этого, устройство 570 аудиокодирования может осуществлять повороты в отношении поднабора, возможно, известных (статистически) комбинаций азимутального угла и угла возвышения, которые обеспечивают, в общем случае, хорошее уплотнение, осуществляя дополнительные повороты в отношении комбинаций вокруг тех из этого поднабора, которые обеспечивают лучшее уплотнение по сравнению с другими комбинациями в поднаборе.
[1310] В порядке другой альтернативы, устройство 570 аудиокодирования может осуществлять этот поворот в отношении только известного поднабора комбинаций. В порядке другой альтернативы, устройство 570 аудиокодирования может следовать траектории (пространственно) комбинаций, осуществляя повороты в отношении этой траектории комбинаций. В порядке другой альтернативы, устройство 570 аудиокодирования может указывать порог уплотнения, который задает максимальное количество SHC 511’, имеющих ненулевые значения, превышающие пороговое значение. Этот порог уплотнения может эффективно устанавливать точку остановки на поиск, таким образом, что, когда устройство 570 аудиокодирования осуществляет поворот и определяет, что количество SHC 511’, имеющих значение, превышающее установленный порог, меньше или равно (или, в ряде случаев, меньше) порога уплотнения, устройство 570 аудиокодирования останавливает осуществление любых дополнительных операций поворота в отношении оставшихся комбинаций. В порядке еще одной альтернативы, устройство 570 аудиокодирования может обходить иерархически построенное дерево (или другую структуру данных) комбинаций, осуществлять операции поворота в отношении текущей комбинации и обходить дерево вправо или влево (например, для двоичных деревьев) в зависимости от количества SHC 511’, имеющих ненулевое значение, превышающее пороговое значение.
[1311] В этом смысле, каждая из этих альтернатив предусматривают осуществление первой и второй операции поворота и сравнение результата осуществления первой и второй операции поворота для идентификации одной из первый и второй операций поворота, которые дают наименьшее количество SHC 511’, имеющих ненулевое значение, превышающее пороговое значение. Соответственно, устройство 570 аудиокодирования может осуществлять первую операцию поворота на звуковом поле для поворота звукового поля в соответствии с первым азимутальным углом и первым углом возвышения и определять первое количество из множества иерархических элементов, представляющих звуковое поле, повернутое в соответствии с первым азимутальным углом и первым углом возвышения, которые обеспечивают информацию, имеющую отношение к описанию звукового поля. Устройство 570 аудиокодирования также может осуществлять вторую операцию поворота на звуковом поле для поворота звукового поля в соответствии со вторым азимутальным углом и вторым углом возвышения и определять второе количество из множества иерархических элементов, представляющих звуковое поле, повернутое в соответствии со вторым азимутальным углом и вторым углом возвышения, которые обеспечивают информацию, имеющую отношение к описанию звукового поля. Кроме того, устройство 570 аудиокодирования может выбирать первую операцию поворота или вторую операцию поворота на основании сравнения первого количества из множества иерархических элементов и второго количества из множества иерархических элементов.
[1312] В ряде случаев, алгоритм поворота можно осуществлять в отношении промежутка времени, где последующие вызовы алгоритма поворота могут осуществлять операции поворота на основании предыдущих вызовов алгоритма поворота. Другими словами, алгоритм поворота может быть адаптивным на основании предыдущей информации поворота, определенной при повороте звукового поля на протяжении предыдущего промежутка времени. Например, устройство 570 аудиокодирования может поворачивать звуковое поле в течение первого промежутка времени, например, кадра аудио, для идентификации SHC 511’ для этого первого промежутка времени. Устройство 570 аудиокодирования может указывать информацию поворота и SHC 511’ в битовом потоке 517 любым из вышеописанных способов. Эта информация поворота может именоваться первой информацией поворота в том, что она описывает поворот звукового поля в течение первого промежутка времени. Затем устройство 570 аудиокодирования может, на основании этой первой информации поворота, поворачивать звуковое поле в течение второго промежутка времени, например, второго кадра аудио, для идентификации SHC 511’ для этого второго промежутка времени. Устройство 570 аудиокодирования может использовать эту первую информацию поворота при осуществлении второй операции поворота в течение второго промежутка времени для инициализации поиска “оптимальной” комбинации азимутальных углов и углов возвышения, в порядке одного примера. Затем устройство 570 аудиокодирования может указывать SHC 511’ и соответствующую информацию поворота в течение второго промежутка времени (которая может именоваться “второй информацией поворота”) в битовом потоке 517.
[1313] Хотя они описаны выше в отношении нескольких разных способов реализации алгоритма поворота для снижения времени и/или ресурсов обработки, методы можно осуществлять в отношении любого алгоритма, который может снижать или иначе ускорять идентификацию так называемого “оптимального поворота”. Кроме того, методы можно осуществлять в отношении любого алгоритма, который идентифицирует неоптимальные повороты, но которые могут улучшать производительность в других аспектах, часто измеряемых в отношении скорости или процессора или использования других ресурсов.
[1314] На Фиг. 57-57E показаны схемы, демонстрирующие битовые потоки 517A-517E, сформированные в соответствии с методами, описанными в этом изобретении. В примере, приведенном на фиг. 57A, битовый поток 517A может представлять один пример битового потока 517, показанного выше на фиг. 53. Битовый поток 517A включает в себя поле 670 присутствия SHC и поле, где хранятся SHC 511’ (где поле обозначается “SHC 511’”). Поле 670 присутствия SHC может включать в себя бит, соответствующий каждому из SHC 511. SHC 511’ может представлять те из SHC 511, которые задаются в битовом потоке, которых может быть меньше, чем количество SHC 511. Обычно каждый из SHC 511’ является тем из SHC 511, имеющих ненулевые значения. Как упомянуто выше, для представления четвертого порядка любого данного звукового поля, требуется (1+4)2 или 25 SHC. Устранение одного или более из этих SHC и замена SHC с нулевыми значениями единичным битом может экономить 31 бит, которые могут выделяться для более детального выражения других участков звукового поля или иначе удаляться для облегчения эффективного использования ширины полосы.
[1315] В примере, приведенном на фиг. 57B, битовый поток 517B может представлять один пример битового потока 517, показанного выше на фиг. 53. Битовый поток 517B включает в себя информационное поле 672 преобразования (“информацию 672 преобразования”) и поле, где хранятся SHC 511’ (где поле обозначается “SHC 511’”). Информация 672 преобразования, как упомянуто выше, может содержать информацию переноса, информацию поворота и/или любую другую форму информации, обозначающей регулировку звукового поля. В ряде случаев, информация 672 преобразования также может указывать SHC 511 наивысшего порядка, которые задаются в битовом потоке 517B как SHC 511’. Таким образом, информация 672 преобразования может указывать порядок три, который устройство извлечения может понять как указывающий, что SHC 511’ включает в себя SHC 511 вплоть до и включая SHC 511, имеющие порядок три. Устройство извлечения может затем быть выполнено с возможностью обнуления SHC 511, имеющего порядок четыре или более, таким образом, потенциально устраняя явную сигнализацию SHC 511 порядка четыре или более в битовом потоке.
[1316] В примере, приведенном на фиг. 57C, битовый поток 517C может представлять один пример битового потока 517, показанного выше на фиг. 53. Битовый поток 517C включает в себя информационное поле 672 преобразования (“информацию 672 преобразования ”), поле 670 присутствия SHC и поле, где хранятся SHC 511’ (где поле обозначается “SHC 511’”). Вместо того, чтобы быть выполненным с возможностью понимать, SHC 511 какого порядка не сигнализируются, как описано выше со ссылкой на фиг. 57B, поле 670 присутствия SHC может явно сигнализировать, какие из SHC 511 заданы в битовом потоке 517C как SHC 511’.
[1317] В примере, приведенном на фиг. 57D, битовый поток 517D может представлять один пример битового потока 517, показанного выше на фиг. 53. Битовый поток 517D включает в себя поле 674 порядка (“порядок 60”), поле 670 присутствия SHC, флаг 676 азимута (“AZF 676”), флаг 678 возвышения (“ELF 678”), поле 680 азимутального угла (“азимут 680”), поле 682 угла возвышения (“возвышение 682”) и поле, где хранятся SHC 511’ (где, опять же, поле обозначается “SHC 511’”). Поле 674 порядка указывает порядок SHC 511’, т.е. порядок, обозначенный n выше для наивысшего порядка сферической базисной функции, используемой для представления звукового поля. Поле 674 порядка показано как 8-битовое поле, но может иметь различные другие битовые размеры, например, три (которые представляют собой количество битов, необходимое для указания четвертого порядка). Поле 670 присутствия SHC показано как 25-битовое поле. Опять же, однако, поле 670 присутствия SHC может иметь различные другие битовые размеры. Поле 670 присутствия SHC показано как 25-битовое для указания, что поле 670 присутствия SHC может включать в себя один бит для каждого из коэффициентов сферических гармоник, соответствующих представлению четвертого порядка звукового поля.
[1318] Флаг 676 азимута представляет однобитовый флаг, который указывает, присутствует ли поле 680 азимута в битовом потоке 517D. Когда флаг 676 азимута задается равным единице, поле 680 азимута для SHC 511’ присутствует в битовом потоке 517D. Когда флаг 676 азимута задается равным нулю, поле 680 азимута для SHC 511’ отсутствует или иначе не указан в битовом потоке 517D. Аналогично, флаг 678 возвышения представляет однобитовый флаг, который указывает, присутствует ли поле 682 возвышения в битовом потоке 517D. Когда флаг 678 возвышения задается равным единице, поле 682 возвышения для SHC 511’ присутствует в битовом потоке 517D. Когда флаг 678 возвышения задается равным нулю, поле 682 возвышения для SHC 511’ отсутствует или иначе не указан в битовом потоке 517D. Хотя описано, что единица сигнализирует, что соответствующее поле присутствует, и нуль сигнализирует, что соответствующее поле отсутствует, соглашение может быть пересмотрено таким образом, что нуль указывает, что соответствующее поле указывается в битовом потоке 517D, и единица указывает, что соответствующее поле не указывается в битовом потоке 517D. Таким образом, методы, описанные в этом изобретении, не подлежат ограничению в этом отношении.
[1319] Поле 680 азимута представляет 10-битовое поле, которое указывает, при наличии в битовом потоке 517D, азимутальный угол. Хотя оно показано как 10-битовое поле, поле 680 азимута может иметь другие битовые размеры. Поле 682 возвышения представляет 9-битовое поле, которое указывает, при наличии в битовом потоке 517D, угол возвышения. Азимутальный угол и угол возвышения, указанный в полях 680 и 682, соответственно, могут, совместно с флагами 676 и 678, представлять вышеописанную информацию поворота. Эту информацию поворота можно использовать для поворота звукового поля для восстановления SHC 511 в исходной системе координат.
[1320] Поле SHC 511’ показано как переменное поле, которое имеет размер X. Поле SHC 511’ может изменяться вследствие количества SHC 511’, указанного в битовом потоке, которое обозначено полем 670 присутствия SHC. Размер X можно выводить как функцию количества единиц в поле 670 присутствия SHC, умноженного на 32 бита (что является размером каждого SHC 511’).
[1321] В примере, приведенном на фиг. 57E, битовый поток 517E может представлять другой пример битового потока 517, показанного выше на фиг. 53. Битовый поток 517E включает в себя поле 674 порядка (“порядок 60”), поле 670 присутствия SHC, и поле 684 индекса поворота, и поле, где хранятся SHC 511’ (где, опять же, поле обозначается “SHC 511’”). Поле 674 порядка, поле 670 присутствия SHC и поле SHC 511’ может быть, по существу, аналогичным описанному выше. Поле 684 индекса поворота может представлять 20-битовое поле, используемое для указания одной из комбинаций 1024x512 (или, другими словами, 524288) угла возвышения и азимутального угла. В ряде случаев, для указания этого поля 684 индекса поворота можно использовать только 19 битов, и устройство 570 аудиокодирования может указывать дополнительный флаг в битовом потоке для указания, осуществлялась ли операция поворота (и, таким образом, присутствует ли поле 684 индекса поворота в битовом потоке). Это поле 684 индекса поворота указывает вышеупомянутый индекс поворота, который может означать элемент в таблице поворота, общий для устройства 570 аудиокодирования и устройства извлечения битового потока. Эта таблица поворота может, в ряде случаев, хранить разные комбинации азимутальных углов и углов возвышения. Альтернативно, таблица поворота может сохранять вышеописанную матрицу, в которой эффективно хранятся различные комбинации азимутальных углов и углов возвышения в матричной форме.
[1322] На Фиг. 58 показана блок-схема операций, демонстрирующая пример работы устройства 570 аудиокодирования, показанного в примере, приведенном на фиг. 53, при реализации аспектов поворота методов, описанных в этом изобретении. Первоначально, устройство 570 аудиокодирования может выбирать комбинацию азимутального угла и угла возвышения в соответствии с одним или более из различных вышеописанных алгоритмов поворота (800). Затем устройство 570 аудиокодирования может поворачивать звуковое поле согласно выбранному азимутальному углу и углу возвышения (802). Как описано выше, устройство 570 аудиокодирования может сначала выводить звуковое поле из SHC 511 с использованием вышеупомянутой InvMat1. Устройство 570 аудиокодирования также может определять SHC 511’, которые представляют повернутое звуковое поле (804). Хотя оно описано в виде отдельных этапов или операций, устройство 570 аудиокодирования может применять преобразование (которое может представлять результат [EncMat2][InvMat1]), который представляет выбор комбинации азимутального угла и угла возвышения, вывод звукового поля из SHC 511, поворот звукового поля и определение SHC 511’, которые представляют повернутое звуковое поле.
[1323] В любом случае, устройство 570 аудиокодирования затем может вычислять количество определенных SHC 511’, которые больше порогового значения, сравнивать это количество с количеством, вычисленным для предыдущей итерации, в отношении предыдущей комбинации азимутального угла и угла возвышения (806, 808). В первой итерации в отношении первой комбинации азимутального угла и угла возвышения, это сравнение может производиться с заранее заданным предыдущим количеством (которое может быть задано равным нулю). В любом случае, если определенное количество SHC 511’ меньше, чем предыдущее количество (“Да” 808), устройство 570 аудиокодирования сохраняет SHC 511’, азимутальный угол и угол возвышения, часто заменяя предыдущий SHC 511’, азимутальный угол и угол возвышения сохраненные из предыдущей итерации алгоритма поворота (810).
[1324] Если определенное количество SHC 511’ не меньше, чем предыдущее количество (“Нет” 808) или после сохранения SHC 511’, азимутального угла и угла возвышения вместо ранее сохраненных SHC 511’, азимутального угла и угла возвышения, устройство 570 аудиокодирования может определять, закончен ли алгоритм поворота (812). Таким образом, устройство 570 аудиокодирования может, в порядке одного примера, определять, все ли доступные комбинации азимутального угла и угла возвышения оценены. В других примерах, устройство 570 аудиокодирования может определять, удовлетворяются ли другие критерии (например, что все из заданного поднабора комбинаций осуществлены, пройдена ли данная траектория, пройдено ли иерархическое дерево до краевого узла, и т.д.) таким образом, что устройство 570 аудиокодирования закончило осуществление алгоритм поворота. Если не закончило (“Нет” 812), устройство 570 аудиокодирования может осуществлять вышеописанный процесс в отношении другой выбранной комбинации (800-812). Если закончило (“Да” 812), устройство 570 аудиокодирования может указывать сохраненные SHC 511’, азимутальный угол и угол возвышения в битовом потоке 517 одним из различных вышеописанных способов (814).
[1325] На Фиг. 59 показана блок-схема операций, демонстрирующая пример работы устройства 570 аудиокодирования, показанного в примере, приведенном на фиг. 53, при осуществлении аспектов преобразования методов, описанных в этом изобретении. Первоначально, устройство 570 аудиокодирования может выбирать матрицу, которая представляет линейное обратимое преобразование (820). Одним примеров матрицы, которая представляет линейное обратимое преобразование может быть показанная выше матрица, полученная в результате [EncMat1][IncMat1]. Устройство 570 аудиокодирования затем может применять матрицу к звуковому полю для преобразования звукового поля (822). Устройство 570 аудиокодирования также может определять SHC 511’, которые представляют повернутое звуковое поле (824). Хотя оно описано в виде отдельных этапов или операций, устройство 570 аудиокодирования может применять преобразование (которое может представлять результат [EncMat2][InvMat1]), вывод звукового поля из SHC 511, преобразование звуковое поле и определение SHC 511’, которые представляют преобразование звукового поля.
[1326] В любом случае, устройство 570 аудиокодирования затем может вычислять количество определенных SHC 511’, которые больше порогового значения, сравнивать это количество с количеством, вычисленным для предыдущей итерации, в отношении предыдущего применения матрицы преобразования (826, 828). Если определенное количество SHC 511’ меньше, чем предыдущее количество (“Да” 828), устройство 570 аудиокодирования сохраняет SHC 511’ и матрицу (или некоторую их производную, например, индекс, связанный с матрицей), часто заменяя предыдущий SHC 511’ и матрицу (или ее производную), сохраненные из предыдущей итерации алгоритма поворота (830).
[1327] Если определенное количество SHC 511’ не меньше, чем предыдущее количество (“Нет ” 828) или после сохранения SHC 511’ и матрица вместо ранее сохраненных SHC 511’ и матрицы, устройство 570 аудиокодирования может определять, закончен ли алгоритм преобразования (832). Таким образом, устройство 570 аудиокодирования может, в порядке одного примера, определять, все ли доступные преобразование матрицы оценены. В других примерах, устройство 570 аудиокодирования может определять, удовлетворяются ли другие критерии (например, что все из заданного поднабора доступных матриц преобразования осуществлены, пройдена ли данная траектория, пройдено ли иерархическое дерево до краевого узла, и т.д.) таким образом, что устройство 570 аудиокодирования закончило осуществление алгоритма преобразования. Если не закончило (“Нет” 832), устройство 570 аудиокодирования может осуществлять вышеописанный процесс в отношении другой выбранной матрица преобразования (820-832). Если закончило (“Да” 832), устройство 570 аудиокодирования может указывать сохраненные SHC 511’ и матрицу в битовом потоке 517 одним из различных вышеописанных способов (834).
[1328] В некоторых примерах, алгоритм преобразования может осуществлять единичную итерацию, оценивая единичную матрицу преобразования. Таким образом, матрица преобразования может содержать любую матрицу, которая представляет линейное обратимое преобразование. В ряде случаев, линейное обратимое преобразование может преобразовывать звуковое поле из пространственной области в частотную область. Примеры такого линейного обратимого преобразования может включать в себя дискретное преобразование Фурье (DFT). Применение DFT может предусматривать только единичную итерацию и, таким образом, не потребует включать в себя этапы для определения, закончен ли алгоритм преобразования. Соответственно, методы не подлежат ограничению примером, приведенным на фиг. 59.
[1329] Другими словами, одним примером линейного обратимого преобразования является дискретное преобразование Фурье (DFT). DFT может осуществляться на двадцати пяти SHC 511’ для формирования набора из двадцати пяти комплексных коэффициентов. Устройство 570 аудиокодирования также может заполнять нулями двадцать пять SHC 511’, чтобы быть целым кратным 2, чтобы потенциально увеличивать разрешение размера бина DFT, и потенциально иметь более эффективную реализацию DFT, например путем применения быстрого преобразования Фурье (FFT). В ряде случаев, увеличение разрешения DFT помимо 25 точек не всегда требуется. В преобразовательной области, устройство 570 аудиокодирования может применять порог для определения, существует ли какая-либо спектральная энергия в конкретном бине. Устройство 570 аудиокодирования, в этом контексте, затем может отбрасывать или обнулять энергию спектрального коэффициента, которая ниже этого порога, и устройство 570 аудиокодирования может применять обратное преобразование для восстановления SHC 511’, после отбрасывания или обнуления одного или более из SHC 511’. Таким образом, после применения обратного преобразования, коэффициенты ниже порога не присутствуют, и, в результате, для кодирования звукового поля можно использовать меньше битов.
[1330] В одном или более примерах, описанные функции могут быть реализованы в оборудовании, программном обеспечении, программно-аппаратном обеспечении, или любой их комбинации. Будучи реализованы в программном обеспечении, функции могут храниться или передаваться в виде одной или более инструкций или кода на считываемом компьютером носителе и выполняться аппаратным блоком обработки. Считываемые компьютером носители может включать в себя считываемые компьютером носители данных, которые соответствует вещественному носителю, например, носителям данных или средами передачи данных, включающий в себя любую среду, которая облегчает перенос компьютерной программы из одного места в другое, например, согласно протоколу связи. Таким образом, считываемые компьютером носители, в общем случае, могут соответствовать (1) вещественным считываемым компьютером носителям данных, которые являются долговременными или (2) среде передачи данных, например, сигналу или несущей волне. Носителями данных могут быть любые доступные носители, к которым может обращаться один или более компьютеров или один или более процессоров для извлечения инструкций, кода и/или структур данных для реализации методов, описанных в этом изобретении. Компьютерный программный продукт может включать в себя считываемый компьютером носитель.
[1331] В порядке примера, но не ограничения, such считываемые компьютером носители данных может содержать ОЗУ, ПЗУ, ЭСППЗУ, CD-ROM или другое хранилище на основе оптического диска, хранилище на основе магнитного диска, или другие магнитные запоминающие устройства, флэш-память, или любой другой носитель который можно использовать для хранения желаемого программного кода в форме инструкций или структур данных, к которым может обращаться компьютер. Кроме того, любое соединение уместно именовать считываемой компьютером средой. Например, если инструкции передаются с веб-сайта, сервера или другого удаленного источника с использованием коаксиального кабеля, оптоволоконного кабеля, витой пары, цифровой абонентской линии (DSL), или беспроводных технологий, например, инфракрасной, радио и микроволновой, то коаксиальный кабель, оптоволоконный кабель, витая пара, DSL, или беспроводные технологии, например, инфракрасная, радио и микроволновая включаются в определение носителя. Однако следует понимать, что считываемые компьютером носители данных и носители данных не включают в себя соединения, несущие волны, сигналы или другие транзиторные носители, но, вместо этого, относятся к долговременным, вещественным носителям данных. Используемый здесь термин диск, включает в себя компакт-диск (CD), лазерный диск, оптический диск, цифровой универсальный диск (DVD), флоппи-диск и диск Blu-ray, где диски обычно воспроизводят данные магнитными средствами, тогда как диски воспроизводят данные оптическими средствами с помощью лазеров. Комбинации вышеописанных устройств также подлежат включению в объем определения машиночитаемых носителей.
[1332] Инструкции могут выполняться одним или более процессорами, например, одним или более цифровыми сигнальными процессорами (DSP), микропроцессорами общего назначения, специализированными интегральными схемами (ASIC), программируемыми пользователем вентильными матрицами (FPGA), или другими эквивалентными интегральными или дискретными логическими схемами. Соответственно, используемый здесь термин “процессор” может означать любую из вышеприведенных структур или любую другую структуру пригодную для реализации описанных здесь методов. Кроме того, в некоторых аспектах, описанные здесь функциональные возможности могут обеспечиваться в специализированном оборудовании и/или программные модули, сконфигурированные для кодирования и декодирования, или внедрены в комбинированный кодек. Также, методы могут быть полностью реализованы в одной или более схемах или логических элементах.
[1333] Методы этого изобретения можно реализовать в разнообразных устройствах или аппаратах, включающих в себя беспроводную телефонную трубку, интегральную схему (IC) или набор IC (например, чипсет). Различные компоненты, модули или блоки описаны в этом изобретении, чтобы подчеркнуть функциональные аспекты устройств, выполненных с возможностью осуществления раскрытых методов, но не обязательно требуют реализации разными аппаратными блоками. Напротив, как описано выше, различные блоки могут быть объединены в аппаратном блоке кодека или обеспечены совокупностью взаимодействующих аппаратных блоков, включающих в себя один или более процессоров, как описано выше, совместно с пригодным программным обеспечением и/или программно-аппаратным обеспечением.
[1334] Были описаны различные варианты осуществления методов. Эти и другие аспекты методов входят в объем нижеследующей формулы изобретения.
Изобретение относится к средствам для сжатия разложенных представлений звукового поля. Технический результат заключается в повышении эффективности обработки звукового поля. Получают битовый поток, содержащий сжатую версию пространственной компоненты звукового поля. Пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты. 8 н. и 36. з.п. ф-лы, 8 табл., 169 ил.
1. Способ получения битового потока, содержащий этап, на котором:
получают битовый поток, содержащий сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
2. Способ по п. 1, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
3. Способ по п. 1, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
4. Способ по п. 3, в котором поле, указывающее значение, содержит элемент синтаксиса, указывающий режим деквантования.
5. Способ по п. 3,
в котором битовый поток содержит сжатую версию из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и
при этом значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
6. Способ по п. 1, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
7. Способ по п. 1, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
8. Способ по п. 1, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, кода Хаффмана для представления остаточного значения пространственной компоненты.
9. Способ по п. 1, в котором получение битового потока содержит генерацию битового потока с помощью устройства генерации битового потока.
10. Способ по п. 1, в котором получение битового потока содержит получение битового потока с помощью устройства извлечения битового потока.
11. Способ по п. 1, в котором разложение содержит разложение на сингулярные значения.
12. Сконфигурированное для получения битового потока устройство, содержащее:
один или более процессоров, выполненных с возможностью получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
13. Устройство по п. 12, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
14. Устройство по п. 12, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
15. Устройство по п. 14, в котором поле, указывающее значение, содержит элемент синтаксиса, указывающий режим деквантования.
16. Устройство по п. 14,
в котором битовый поток содержит сжатую версию из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и
при этом значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
17. Устройство по п. 12, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
18. Устройство по п. 12, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
19. Устройство по п. 12, в котором сжатая версия пространственной компоненты дополнительно представлена в битовом потоке с использованием, по меньшей мере частично, кода Хаффмана для представления остаточного значения пространственной компоненты.
20. Устройство по п. 12, в котором устройство содержит устройство аудиокодирования и устройство генерации битового потока.
21. Устройство по п. 12, в котором устройство содержит устройство аудиодекодирования.
22. Устройство по п. 12, в котором разложение содержит разложение на сингулярные значения.
23. Устройство для получения битового потока, содержащее:
средство для получения битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты; и
средство для хранения битового потока.
24. Долговременный считываемый компьютером носитель данных, где хранятся инструкции, которые, при выполнении, предписывают одному или более процессорам получать битовый поток, содержащий сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник.
25. Способ генерирования битового потока, содержащий этап, на котором:
генерируют битовый поток, содержащий сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
26. Способ по п. 25, в котором генерация битового потока содержит генерацию битового потока для включения информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
27. Способ по п. 25, в котором генерация битового потока содержит генерацию битового потока для включения поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
28. Способ по п. 27, в котором поле, указывающее значение, содержит элемент синтаксиса, указывающий режим деквантования.
29. Способ по п. 27,
в котором генерация битового потока содержит генерацию битового потока для включения сжатой версии из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и
при этом значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
30. Способ по п. 25, в котором генерация битового потока содержит генерацию битового потока для включения кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
31. Способ по п. 25, в котором генерация битового потока содержит генерацию битового потока для включения знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
32. Способ по п. 25, в котором генерация битового потока содержит генерацию битового потока для включения кода Хаффмана для представления остаточного значения пространственной компоненты.
33. Способ по п. 25, в котором разложение содержит разложение на сингулярные значения.
34. Сконфигурированное для генерации битового потока устройство, содержащее:
один или более процессоров, выполненных с возможностью генерации битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
35. Устройство по п. 34, в котором один или более процессоров выполнены с возможностью генерации битового потока для включения информации таблицы Хаффмана, указывающей таблицу Хаффмана, используемую при сжатии пространственной компоненты.
36. Устройство по п. 34, в котором один или более процессоров выполнены с возможностью генерации битового потока для включения поля, указывающего значение, которое выражает размер шага квантования или его переменную, используемую при сжатии пространственной компоненты.
37. Устройство по п. 36, в котором поле, указывающее значение, содержит элемент синтаксиса, указывающий режим деквантования.
38. Устройство по п. 36,
в котором один или более процессоров выполнены с возможностью генерации битового потока для включения сжатой версии из множества пространственных компонент звукового поля, сжатая версия пространственной компоненты которого включена, и
при этом значение выражает размер шага квантования или его переменную, используемую при сжатии множества пространственных компонент.
39. Устройство по п. 34, в котором один или более процессоров выполнены с возможностью генерации битового потока для включения кода Хаффмана для представления идентификатора категории, который идентифицирует категорию сжатия, которой соответствует пространственная компонента.
40. Устройство по п. 34, в котором один или более процессоров выполнены с возможностью генерации битового потока для включения знакового бита, идентифицирующего, имеет ли пространственная компонента положительное значение или отрицательное значение.
41. Устройство по п. 34, в котором один или более процессоров выполнены с возможностью генерации битового потока для включения кода Хаффмана для представления остаточного значения пространственной компоненты.
42. Устройство по п. 34, в котором разложение содержит разложение на сингулярные значения.
43. Устройство для генерации битового потока, содержащее:
средство для генерации битового потока, содержащего сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты; и
средство для хранения битового потока.
44. Долговременный считываемый компьютером носитель данных, содержащий инструкции, которые, при выполнении, предписывают одному или более процессорам:
генерировать битовый поток, содержащий сжатую версию пространственной компоненты звукового поля, причем пространственная компонента задана в области сферических гармоник и генерируется путем осуществления разложения в отношении множества коэффициентов сферических гармоник, в котором сжатая версия пространственной компоненты представлена в битовом потоке с использованием, по меньшей мере частично, поля, указывающего режим предсказания, используемый при сжатии пространственной компоненты.
СИСТЕМА ПРЕДУПРЕЖДЕНИЯ СТОЛКНОВЕНИЙ ТРАНСПОРТНОГО СРЕДСТВА И СПОСОБ ЕЕ ЭКСПЛУАТАЦИИ | 2014 |
|
RU2665208C2 |
Колосоуборка | 1923 |
|
SU2009A1 |
RU 2011131868 A, 10.02.2013. |
Авторы
Даты
2018-09-25—Публикация
2014-05-29—Подача