KR102032072B1 - 객체-기반의 오디오로부터 hoa로의 컨버전 - Google Patents
객체-기반의 오디오로부터 hoa로의 컨버전Info
- Publication number
- KR102032072B1 KR102032072B1 KR1020187009766A KR20187009766A KR102032072B1 KR 102032072 B1 KR102032072 B1 KR 102032072B1 KR 1020187009766 A KR1020187009766 A KR 1020187009766A KR 20187009766 A KR20187009766 A KR 20187009766A KR 102032072 B1 KR102032072 B1 KR 102032072B1
- Authority
- KR
- South Korea
- Prior art keywords
- audio
- loudspeaker
- audio object
- location
- vector
- Prior art date
Links
- 238000006243 chemical reaction Methods 0.000 title description 12
- 239000013598 vector Substances 0.000 claims abstract description 492
- 230000005236 sound signal Effects 0.000 claims abstract description 270
- 238000009877 rendering Methods 0.000 claims description 165
- 238000000034 method Methods 0.000 claims description 154
- 239000011159 matrix material Substances 0.000 claims description 65
- 238000013139 quantization Methods 0.000 description 70
- 238000010586 diagram Methods 0.000 description 40
- 230000006870 function Effects 0.000 description 12
- 238000013461 design Methods 0.000 description 9
- 230000011664 signaling Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 5
- 238000003491 array Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 235000009508 confectionery Nutrition 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 229910052709 silver Inorganic materials 0.000 description 2
- 239000004332 silver Substances 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/308—Electronic adaptation dependent on speaker or headphone connection
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/20—Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S3/00—Systems employing more than two channels, e.g. quadraphonic
- H04S3/02—Systems employing more than two channels, e.g. quadraphonic of the matrix type, i.e. in which input signals are combined algebraically, e.g. after having been phase shifted with respect to each other
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/173—Transcoding, i.e. converting between two coded representations avoiding cascaded coding-decoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/01—Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/11—Application of ambisonics in stereophonic audio systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- Stereophonic System (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
디바이스는 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득한다. 오디오 신호는 시간 인터벌에 대응한다. 추가하여, 디바이스는 오디오 객체에 대한 공간 벡터의 표현을 획득하고, 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초한다. 디바이스는, 오디오 객체의 오디오 신호 및 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성한다. 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응한다.
Description
본 출원은 2015 년 10 월 8 일에 출원된 미국 가특허출원 제 62/239,043 호의 이익을 주장하며, 이것의 전체 내용은 참조로서 본원에 포함된다.
기술 분야
본 개시물은 오디오 데이터 및, 보다 구체적으로는 고차 앰비소닉 오디오 데이터의 코딩에 관한 것이다.
고차 앰비소닉스 (higher-order ambisonics; HOA) 신호 (종종, 복수의 구면 조화 계수들 (SHC) 또는 다른 계층 엘리먼트들로 표현됨) 는 사운드필드의 3 차원 표현이다. HOA 또는 SHC 표현은, SHC 신호로부터 렌더링되는 멀티-채널 오디오 신호를 재생하는데 사용된 로컬 스피커 지오메트리와 독립적인 방식으로 사운드필드를 표현할 수도 있다. SHC 신호는 또한, SHC 신호가 널리 공지되고 많이 채택된 멀티-채널 포맷들, 예컨대 5.1 오디오 채널 포맷 또는 7.1 오디오 채널 포맷으로 렌더링될 수도 있기 때문에, 이전 버전과의 호환성 (backwards compatibility) 을 용이하게 할 수도 있다. SHC 표현은 따라서, 이전 버전과의 호환성을 또한 수용하는 더 좋은 사운드필드의 표현을 가능하게 할 수도 있다.
하나의 예에서, 본 개시물은 코딩된 오디오 비트스트림을 디코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 코딩된 오디오 비트스트림을 저장하도록 구성된 메모리; 및 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고, 하나 이상의 프로세서들은: 코딩된 오디오 비트스트림으로부터 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 것으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하고; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 것으로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하고; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 것으로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하도록 구성된다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 인코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 저장하도록 구성된 메모리로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 메모리; 및 상기 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고, 상기 하나 이상의 프로세서들은: 상기 오디오 객체의 상기 오디오 신호 및 상기 오디오 객체의 상기 가상의 소스 로케이션을 나타내는 데이터를 수신하고; 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하고; 그리고 코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하도록 구성된다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 디코딩하기 위한 방법을 기재하며, 그 방법은, 상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 단계로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하는 단계; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 단계로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하는 단계; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 단계로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하는 단계를 포함한다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 인코딩하기 위한 방법을 기재하며, 그 방법은, 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하는 단계로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하는 단계; 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하는 단계; 및 상기 코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하는 단계를 포함한다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 디코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 수단으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하는 수단; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 수단으로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하는 수단; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 수단으로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하는 수단을 포함한다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 인코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하는 수단으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하는 수단; 및 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하는 수단을 포함한다.
또 다른 예에서, 본 개시물은 명령들을 저장하는 컴퓨터 판독가능 저장 매체를 기재하며, 명령들은 실행될 때 디바이스의 하나 이상의 프로세서들로 하여금: 상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하게 하는 것으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하게 하고; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하게 하는 것으로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하게 하고; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하게 하는 것으로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하게 하는 한다.
또 다른 예에서, 명령들을 저장하는 컴퓨터 판독가능 저장 매체를 기재하며, 명령들은 실행될 때 디바이스의 하나 이상의 프로세서들로 하여금: 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하게 하는 것으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하게 하고; 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하게 하며; 그리고 상기 코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하게 한다.
본 개시물의 하나 이상의 예들의 세부사항들은 첨부되는 도면들 및 하기의 설명들에서 기술된다. 다른 특성들, 목적들 및 이점들은 상세한 설명, 도면, 및 청구범위로부터 명확해질 것이다.
도 1 은 본 개시물에 설명된 기법들의 다양한 양태들을 수행할 수도 있는 시스템을 예시하는 다이어그램이다.
도 2 는 다양한 차수들 및 서브-차수들의 구면 조화 기본 함수들을 예시하는 다이어그램이다.
도 3 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 4 는 본 개시물의 하나 이상의 기법들에 따른, 도 3 에 도시된 오디오 인코딩 디바이스의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 5 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 6 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛의 예시의 구현을 예시하는 다이어그램이다.
도 7 은 이상적인 구면 설계 포지션들의 예시의 세트를 나타내는 테이블이다.
도 8 은 이상적인 구면 설계 포지션들의 다른 예시의 세트를 나타내는 테이블이다.
도 9 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛의 예시의 구현을 예시하는 블록도이다.
도 10 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 11 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛의 예시의 구현을 예시하는 블록도이다.
도 12 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛의 대안의 구현을 예시하는 블록도이다.
도 13 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스가 객체-기반 오디오 데이터를 인코딩하도록 구성되는 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 14 는 본 개시물의 하나 이상의 기법들에 따른, 객체-기반 오디오 데이터에 대한 벡터 인코딩 유닛 (68C) 의 예시의 구현을 예시하는 블록도이다.
도 15 는 VBAP 를 예시하는 개념도이다.
도 16 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스가 객체-기반 오디오 데이터를 디코딩하도록 구성되는 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 17 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스가 공간 벡터들을 양자화하도록 구성되는 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 18 은 본 개시물의 하나 이상의 기법들에 따른, 도 17 에 도시된 오디오 인코딩 디바이스의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 19 는 본 개시물의 하나 이상의 기법들에 따른, 렌더링 유닛 (210) 의 예시의 구현을 예시하는 블록도이다.
도 20 은 본 개시물의 하나 이상의 기법들에 따른, 자동차 스피커 재생 환경을 예시한다.
도 21 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작을 예시하는 흐름도이다.
도 22 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 23 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 24 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 25 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 26 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 27 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 28 은 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다.
도 29 는 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다.
도 2 는 다양한 차수들 및 서브-차수들의 구면 조화 기본 함수들을 예시하는 다이어그램이다.
도 3 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 4 는 본 개시물의 하나 이상의 기법들에 따른, 도 3 에 도시된 오디오 인코딩 디바이스의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 5 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 6 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛의 예시의 구현을 예시하는 다이어그램이다.
도 7 은 이상적인 구면 설계 포지션들의 예시의 세트를 나타내는 테이블이다.
도 8 은 이상적인 구면 설계 포지션들의 다른 예시의 세트를 나타내는 테이블이다.
도 9 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛의 예시의 구현을 예시하는 블록도이다.
도 10 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 11 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛의 예시의 구현을 예시하는 블록도이다.
도 12 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛의 대안의 구현을 예시하는 블록도이다.
도 13 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스가 객체-기반 오디오 데이터를 인코딩하도록 구성되는 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 14 는 본 개시물의 하나 이상의 기법들에 따른, 객체-기반 오디오 데이터에 대한 벡터 인코딩 유닛 (68C) 의 예시의 구현을 예시하는 블록도이다.
도 15 는 VBAP 를 예시하는 개념도이다.
도 16 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스가 객체-기반 오디오 데이터를 디코딩하도록 구성되는 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 17 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스가 공간 벡터들을 양자화하도록 구성되는 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 18 은 본 개시물의 하나 이상의 기법들에 따른, 도 17 에 도시된 오디오 인코딩 디바이스의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 19 는 본 개시물의 하나 이상의 기법들에 따른, 렌더링 유닛 (210) 의 예시의 구현을 예시하는 블록도이다.
도 20 은 본 개시물의 하나 이상의 기법들에 따른, 자동차 스피커 재생 환경을 예시한다.
도 21 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작을 예시하는 흐름도이다.
도 22 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 23 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 24 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 25 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 26 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 27 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 28 은 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다.
도 29 는 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다.
오늘날 서라운드 사운드의 발전은 엔터테인먼트에 대한 많은 출력 포맷들을 이용가능 하게 만들었다. 이러한 소비자 서라운드 사운드 포맷들의 예들은 주로, 그들이 소정의 기하학적 좌표들에서 라우드스피커들로의 피드들을 암시적으로 지정한다는 점에서 '채널' 기반이다. 소비자 서라운드 사운드 포맷들은 대중적인 5.1 포맷 (이것은 다음의 6 개의 채널들을 포함한다: 전방 좌측 (FL), 전방 우측 (FR), 센터 또는 전방 중앙, 후면 좌측 또는 서라운드 좌측, 후면 우측 또는 서라운드 우측, 및 저 주파수 효과들 (LFE)), 성장하는 7.1 포맷, (예를 들어, 초고화질 텔레비전 표준과 함께 사용하기 위한) 7.1.4 포맷 및 22.2 포맷과 같은 높이 스피커들을 포함하는 다양한 포맷들을 포함한다. 비-소비자 포맷들은 종종 '서라운드 어레이들' 로 칭해지는 (대칭 및 비-대칭적 지오메트리들의) 임의의 개수의 스피커들을 포괄할 수 있다. 이러한 어레이의 일 예는 트렁케이트된 (truncated) 정십이면체의 코너들 상의 좌표들에 포지셔닝된 32 개의 라우드스피커들을 포함한다.
오디오 인코더들은 다음 3 개의 가능한 포맷들 중 하나에서 입력을 수신할 수도 있다: (i) 미리-지정된 포지션들에서 라우드스피커들을 통해 플레이되어야 하는 것을 의미하는 (위에서 논의된 바와 같은) 전통적인 채널-기반의 오디오; (ii) (다른 정보 중에서) 그들의 로케이션 좌표들을 포함하는 연관된 메타데이터를 갖는 단일 오디오 객체들에 대한 이산 펄스-코드-변조 (PCM) 데이터를 수반하는 객체-기반의 오디오; 및 (iii) 구면 조화 기저 함수들의 계수들 (또한, "구면 조화 계수들", 또는 SHC, "고차 앰비소닉스" 또는 HOA, 및 "HOA 계수들" 로 지칭됨) 을 사용하여 사운드필드를 표현하는 것을 수반하는 장면-기반의 오디오. 일부 예들에서, 오디오 객체에 대한 로케이션 좌표들은 방위각 및 고도각을 지정할 수 있다. 일부 예들에서, 오디오 객체에 대한 로케이션 좌표들은 방위각, 고도각, 및 반경을 지정할 수 있다.
일부 예들에서, 인코더는 수신된 오디오 데이터를 그것이 수신되었던 포맷으로 인코딩할 수도 있다. 예를 들어, 전통적인 7.1 채널-기반 오디오를 수신하는 인코더는, 디코더에 의해 재생될 수도 있는, 비트스트림으로 채널-기반 오디오를 인코딩할 수도 있다. 그러나, 일부 예들에서 5.1 재생 능력들을 갖는 (하지만, 7.1 재생 능력들을 갖지 않는) 디코더들에서 플레이백을 인에이블하기 위해, 인코더는 또한, 비트스트림에서 7.1 채널-기반 오디오의 5.1 버전을 포함할 수도 있다. 일부 예들에서, 인코더가 비트스트림에서 오디오의 다중 버전들을 포함하는 것이 바람직하지 않을 수도 있다. 일 예로서, 비트스트림에서 오디오의 다중 버전을 포함하는 것은 비트스트림의 사이즈를 증가시키고, 따라서 비트스트림을 저장하는데 필요한 저장량 및/또는 송신하는데 필요한 대역폭의 양을 증가시킬 수도 있다. 다른 예로서, 콘텐트 생성자들 (예를 들어, 헐리우드 스튜디오들) 은 무비용 사운드트랙을 한 번 생산하기를 원하고, 각각의 스피커 구성에 대해 그것을 리믹스하기 위한 노력을 소모하지 않을 것이다. 이와 같이, 표준화된 비트스트림으로의 인코딩을 위해 제공하고, (렌더러를 수반하는) 재생의 로케이션에서 음향 컨디션들 및 스피커 지오메트리 (및 수) 에 적응되고 구속받지 않는 후속의 디코딩을 제공하는 것이 바람직할 수도 있다.
일부 예들에서, 임의의 스피커 구성을 갖는 오디오를 재생시키도록 오디오 디코더를 인에이블하기 위해, 오디오 인코더는 입력 오디오를 인코딩을 위한 단일 포맷으로 컨버팅할 수도 있다. 예를 들어, 오디오 인코더는 멀티-채널 오디오 데이터 및/또는 오디오 객체들을 엘리먼트들의 계층적 세트로 컨버팅하고, 결과의 엘리먼트들의 세트를 비트스트림으로 인코딩할 수도 있다. 엘리먼트들의 계층적 세트는, 하위-차수의 엘리먼트들의 기본 세트가 모델링된 사운드필드의 전체 표현을 제공하도록 엘리먼트들이 오더링되어 있는 엘리먼트들의 세트를 지칭할 수도 있다. 이 세트는 고차 엘리먼트들을 포함하도록 확장되기 때문에, 표현은 더 상세해지고, 해상도를 증가시킨다.
엘리먼트들의 계층적 세트의 일 예는, 고차 앰비소닉스 (HOA) 계수들로도 지칭될 수도 있는, 구면 조화 계수들 (SHC) 의 세트이다. 이하의 식 (1) 은 SHC 를 사용하는 사운드필드의 설명 또는 표현을 예시한다.
(1)
식 (1) 은 시간 t 에서 사운드필드의 임의의 포인트 에서의 압력 이, SHC, 에 의해 고유하게 표현될 수 있다는 것을 보여준다. 여기서, k=ω/c, c 는 사운드의 속도 (~343 m/s) 이고, 는 레퍼런스 포인트 (또는, 관측 포인트) 이고, 는 차수 n 의 구면 베셀 (Bessel) 함수이며, 는 차수 n 및 하위차수 m 의 구면 조화 기저 함수들이다. 꺽쇠 괄호들 내의 항은 이산 푸리에 변환 (DFT), 이산 코사인 변환 (DCT), 또는 웨이블릿 변환과 같은, 다양한 시간-주파수 변환들에 의해 근사화될 수 있는 신호의 주파수-도메인 표현 (즉, ) 인 것을 인식할 수 있다. 계층적 세트들의 다른 예들은 웨이블릿 변환 계수들의 세트들 및 멀티레졸루션 기저 함수들의 계수들의 다른 세트들을 포함한다. 간략함을 위해, 본 개시물은 이하에서 HOA 계수들을 참조하여 설명된다. 그러나, 이 기법들은 다른 계층적 세트들에 동등하게 적용 가능할 수도 있다는 것이 인지되어야 한다.
그러나, 일부 예들에서, 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하는 것이 바람직하지 않을 수도 있다. 예를 들어, 오디오 인코더가 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하였으면, 결과의 비트스트림은 HOA 계수들을 프로세싱할 수 없는 오디오 디코더들 (예를 들어, 멀티-채널 오디오 데이터 및 오디오 객체들 중 하나 또는 양자 모두를 단지 프로세싱할 수 있는 오디오 디코더들) 과 이전 버전으로 호환 가능하지 않을 수도 있다. 이와 같이, 결과의 비트스트림이 임의의 스피커 구성을 갖고 오디오 데이터를 재생시키도록 오디오 디코더를 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들과의 이전 버전과의 호환성을 인에이블하도록 오디오 인코더가 수신된 오디오 데이터를 인코딩하는 것이 바람직할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 수신된 오디오 데이터를 HOA 계수들로 컨버팅하고 결과의 HOA 계수들을 비트스트림에서 인코딩하는 것과 대조적으로, 오디오 인코더는, 비트스트림에서, 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보와 함께 그 원래의 포맷으로 수신된 오디오 데이터를 인코딩할 수도 있다. 예를 들어, 오디오 인코더는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 결정하고, 하나 이상의 SPV들의 표현 및 수신된 오디오 데이터의 표현을 비트스트림에서 인코딩할 수도 있다. 일부 예들에서, 하나 이상의 SPV들 중 특정 SPV 의 표현은 코드북에서 특정 SPV 에 대응하는 인덱스일 수도 있다. 공간 포지셔닝 벡터들은 소스 라우드스피커 구성 (즉, 수신된 오디오 데이터가 재생을 위해 의도되는 라우드스피커 구성) 에 기초하여 결정될 수도 있다. 이 방식에서, 오디오 인코더는 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키도록 오디오 디코더를 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 오디오 디코더들과의 이전 버전과의 호환성을 인에이블하는 비트스트림을 출력할 수도 있다.
오디오 디코더는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보와 함께 오디오 데이터를 그 원래의 포맷으로 포함하는 비트스트림을 수신할 수도 있다. 예를 들어, 오디오 디코더는 5.1 포맷으로 멀티-채널 오디오 데이터 및 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 수신할 수도 있다. 하나 이상의 공간 포지셔닝 벡터들을 사용하여, 오디오 디코더는 5.1 포맷의 오디오 데이터로부터 HOA 사운드필드를 생성할 수도 있다. 예를 들어, 오디오 디코더는 멀티-채널 오디오 신호 및 공간 포지셔닝 벡터들에 기초하여 HOA 계수들의 세트를 생성할 수도 있다. 오디오 디코더는, 로컬 라우드스피커 구성에 기초하여 HOA 사운드필드를 렌더링하거나, 또는 다른 디바이스가 렌더링하게 할 수도 있다. 이 방식에서, HOA 계수들을 프로세싱할 수 있는 오디오 디코더는 임의의 스피커 구성으로 멀티채널 오디오 데이터를 재생시키면서 또는 HOA 계수들을 프로세싱할 수 없는 오디오 디코더들과의 이전 버전과의 호환성을 인에이블할 수도 있다.
위에서 논의된 바와 같이, 오디오 인코더는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 결정 및 인코딩할 수도 있다. 그러나, 일부 예들에서, 비트스트림이 하나 이상의 공간 포지셔닝 벡터들의 표시를 포함하지 않는 경우 오디오 디코더가 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키는 것이 바람직할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코더는 인코딩된 오디오 데이터 및 소스 라우드스피커 구성의 표시 (즉, 인코딩된 오디오 데이터가 재생을 위해 의도되는 라우드스피커 구성의 표시) 를 수신하고, 소스 라우드스피커 구성의 표시에 기초하여 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 공간 포지셔닝 벡터 (SPV) 들을 생성할 수도 있다. 일부 예들에서, 예컨대 인코딩된 오디오 데이터가 5.1 포맷의 멀티-채널 오디오 데이터인 경우에서, 소스 라우드스피커 구성의 표시는, 인코딩된 오디오 데이터가 5.1 포맷의 멀티-채널 오디오 데이터라는 것을 나타낼 수도 있다.
공간 포지셔닝 벡터들을 사용하여, 오디오 디코더는 오디오 데이터로부터 HOA 사운드필드를 생성할 수도 있다. 예를 들어, 오디오 디코더는 멀티-채널 오디오 신호 및 공간 포지셔닝 벡터들에 기초하여 HOA 계수들의 세트를 생성할 수도 있다. 오디오 디코더는 로컬 라우드스피커 구성에 기초하여 HOA 사운드필드를 렌더링하거나, 또는 다른 디바이스가 렌더링하게 할 수도 있다. 이 방식에서, 오디오 디코더는 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키도록 오디오 디코더를 인에이블하면서, 또한 공간 포지셔닝 벡터들을 생성 및 인코딩하지 않을 수도 있는 오디오 인코더들과의 이전 버전과의 호환성을 인에이블하는 비트스트림을 출력할 수도 있다.
위에서 논의된 바와 같이, 오디오 코더 (즉, 오디오 인코더 또는 오디오 디코더) 는 인코딩된 오디오 데이터의 HOA 사운드필드로의 컨버전을 인에이블하는 공간 포지셔닝 벡터들을 획득 (즉, 생성, 결정, 취출, 수신, 등) 할 수도 있다. 일부 예들에서, 공간 포지셔닝 벡터들은 오디오 데이터의 대략 "완벽한" 복원을 인에이블하는 목표를 갖고 획득될 수도 있다. 공간 포지셔닝 벡터들은, 공간 포지셔닝 벡터들이, 입력된 N-채널 오디오 데이터를, 오디오 데이터의 N-채널들로 다시 컨버팅되는 경우, 입력된 N-채널 오디오 데이터와 대략 동등한 HOA 사운드필드로 컨버팅하는데 사용되는 오디오 데이터의 대략 "완벽한" 복원을 인에이블하는 것으로 고려될 수도 있다.
대략 "완벽한" 복원을 인에이블하는 공간 포지셔닝 벡터들을 획득하기 위해, 오디오 코더는 각각의 벡터에 대해 사용할 계수들의 수 N HOA 를 결정할 수도 있다. HOA 사운드필드가 식들 (2) 및 (3) 에 따라 표현되고, 렌더링 매트릭스 D 로 HOA 사운드필드를 렌더링하는 것에서 비롯되는 N-채널 오디오가 식들 (4) 및 (5) 에 따라 표현되면, 대략 "완벽한" 복원은, 계수들의 수가 입력된 N-채널 오디오 데이터에서의 채널들의 수보다 크거나 또는 동일하도록 선택되는 경우 가능할 수도 있다.
다시 말하면, 대략 "완벽한" 복원은 식 (6) 이 충족되는 경우 가능할 수도 있다.
다시 말하면, 대략 "완벽한" 복원은, 입력 채널들의 수 (N) 가 각각의 공간 포지셔닝 벡터에 대해 사용된 계수들의 수 (N HOA ) 보다 작거나 이와 동일한 경우 가능할 수도 있다.
오디오 코더는 계수들의 선택된 수를 갖는 공간 포지셔닝 벡터들을 획득할 수도 있다. HOA 사운드필드 (H) 는 식 (7) 에 따라 표현될 수도 있다.
식 (7) 에서, 채널 i 에 대한 H i 는 식 (8) 에 도시된 바와 같이 채널 i 에 대한 공간 포지셔닝 벡터 (V i ) 의 트랜스포즈 및 채널 (i) 에 대한 오디오 채널 (C i ) 의 곱일 수도 있다.
H i 는 식 (9) 에 도시된 바와 같이 채널-기반 오디오 신호 () 를 생성하도록 렌더링될 수도 있다.
식 (9) 는, 식 (10) 또는 식 (11) 이 참인 경우 참을 유지할 수도 있고, 식 (11) 에 대한 제 2 솔루션은 단수형인 것으로 인해 제거된다.
또는
식 (10) 또는 식 (11) 이 참이면, 채널-기반 오디오 신호 () 는 식들 (12)-(14) 에 따라 표현될 수도 있다.
이와 같이, 대략 "완벽한" 복원을 인에이블하기 위해, 오디오 코더는 식들 (15) 및 (16) 을 충족시키는 공간 포지셔닝 벡터들을 획득할 수도 있다.
완결을 위해, 다음은 상기 식들을 충족시키는 공간 포지셔닝 벡터들이 대략 "완벽한" 복원을 인에이블한다는 증거이다. 식 (17) 에 따라 표현된 소정의 N-채널 오디오에 대해, 오디오 코더는 식들 (18) 및 (19) 에 따라 표현될 수도 있는 공간 포지셔닝 벡터들을 획득할 수도 있고, 여기서 D 는 N-채널 오디오 데이터의 소스 라우드스피커 구성에 기초하여 결정된 소스 렌더링 매트릭스이고, 은 N 개의 엘리먼트들을 포함하고, i 번째 엘리먼트는 다른 엘리먼트들이 0 인 엘리먼트이다.
오디오 코더는 식 (20) 에 따라 공간 포지셔닝 벡터들 및 N-채널 오디오 데이터에 기초하여 HOA 사운드필드 (H) 를 생성할 수도 있다.
오디오 코더는 식 (21) 에 따라 HOA 사운드필드 (H) 를 N-채널 오디오 데이터 () 로 다시 컨버팅할 수도 있고, 여기서 D 는 N-채널 오디오 데이터의 소스 라우드스피커 구성에 기초하여 결정된 소스 렌더링 매트릭스이다.
위에서 논의된 바와 같이, "완벽한" 복원은, 이 대략 와 동등한 경우 달성된다. 식들 (22)-(26) 에서 이하에 도시된 바와 같이, 은 와 대략 동등하고, 따라서 대략 "완벽한" 복원이 가능할 수도 있다:
렌더링 매트릭스와 같은 매트릭스들은 다양한 방식들로 프로세싱될 수도 있다. 예를 들어, 매트릭스는 로우들, 컬럼들, 벡터들, 또는 다른 방식들로 프로세싱 (예를 들어, 저장, 추가, 곱셈, 취출 등) 될 수도 있다.
도 1 은 본 개시물에 설명된 기법들의 다양한 양태들을 수행할 수도 있는 시스템 (2) 을 예시하는 다이어그램이다. 도 1 에 도시된 바와 같이, 시스템 (2) 은 콘텐트 생성자 시스템 (4) 및 콘텐트 소비자 시스템 (6) 을 포함한다. 콘텐트 생성자 시스템 (4) 및 콘텐트 소비자 시스템 (6) 의 맥락에서 설명되었지만, 본 기법들은, 오디오 데이터가 인코딩되어 오디오 데이터를 나타내는 비트스트림을 형성하는 임의의 맥락에서 구현될 수도 있다. 더욱이, 콘텐트 생성자 디바이스 (4) 는, 약간의 예들을 제공하기 위해 핸드셋 (또는 셀룰러 폰), 태블릿 컴퓨터, 스마트 폰, 또는 데스크톱 컴퓨터를 포함하는, 본 개시물에 설명된 기법들을 구현할 수 있는 컴퓨팅 디바이스, 또는 컴퓨팅 디바이스들의 임의의 형태를 포함할 수도 있다. 유사하게, 콘텐트 소비자 시스템 (6) 은, 약간의 예들을 제공하기 위해 핸드셋 (또는 셀룰러 폰), 태블릿 컴퓨터, 스마트 폰, 셋-톱 박스, AV-수신기, 무선 스피커, 또는 데스크톱 컴퓨터를 포함하는, 본 개시물에 설명된 기법들을 구현할 수 있는 컴퓨팅 디바이스, 또는 컴퓨팅 디바이스들의 임의의 형태를 포함할 수도 있다.
콘텐트 생성자 시스템 (4) 은 다양한 콘텐트 생성자들, 예컨대 무비 스튜디오들, 텔레비전 스튜디오들, 인터넷 스트리밍 서비스들, 또는 콘텐트 소비자 시스템들, 예컨대 콘텐트 소비자 시스템 (6) 의 오퍼레이터들에 의한 소비를 위해 오디오 콘텐트를 생성할 수도 있는 다른 엔티티에 의해 동작될 수도 있다. 종종, 콘텐트 생성자는 비디오 콘텐트와 연관되어 오디오 콘텐트를 생성한다. 콘텐트 소비자 시스템 (6) 은 개인에 의해 동작될 수도 있다. 일반적으로, 콘텐트 소비자 시스템 (6) 은 멀티-채널 오디오 콘텐트를 출력할 수 있는 오디오 재생 시스템의 임의의 형태를 지칭할 수도 있다.
콘텐트 생성자 시스템 (4) 은, 수신된 오디오 데이터를 비트스트림으로 인코딩할 수도 있는, 오디오 인코딩 디바이스 (14) 를 포함한다. 오디오 인코딩 디바이스 (14) 는 다양한 소스들로부터 오디오 데이터를 수신할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 는 라이브 오디오 데이터 (10) 및/또는 미리-생성된 오디오 데이터 (12) 를 획득할 수도 있다. 오디오 인코딩 디바이스 (14) 는 라이브 오디오 데이터 (10) 및/또는 미리-생성된 오디오 데이터 (12) 를 다양한 포맷들로 수신할 수도 있다. 일 예로서, 오디오 인코딩 디바이스 (14) 는 라이브 오디오 데이터 (10) 를 하나 이상의 마이크로폰들 (8) 로부터 HOA 계수들, 오디오 객체들, 또는 멀티-채널 오디오 데이터로서 수신할 수도 있다. 다른 예로서, 오디오 인코딩 디바이스 (14) 는 미리-생성된 오디오 데이터 (12) 를 HOA 계수들, 오디오 객체들, 또는 멀티-채널 오디오 데이터로서 수신할 수도 있다.
위에서 언급된 바와 같이, 오디오 인코딩 디바이스 (14) 는 일 예로서 유선 또는 무선 채널일 수도 있는 송신 채널, 데이터 저장 디바이스 등을 거쳐, 송신을 위해, 수신된 오디오 데이터를 비트스트림, 예컨대 비트스트림 (20) 으로 인코딩할 수도 있다. 일부 예들에서, 콘텐트 생성자 시스템 (4) 은 인코딩된 비트스트림 (20) 을 콘텐트 소비자 시스템 (6) 으로 직접 송신한다. 다른 예들에서, 인코딩된 비트스트림은 또한, 디코딩 및/또는 재생을 위해 콘텐트 소비자 시스템 (6) 에 의한 나중의 액세스를 위해 저장 매체 또는 파일 서버 위에 저장될 수도 있다.
위에서 논의된 바와 같이, 일부 예들에서 수신된 오디오 데이터는 HOA 계수들을 포함할 수도 있다. 그러나, 일부 예들에서, 수신된 오디오 데이터는 멀티-채널 오디오 데이터 및/또는 객체 기반 오디오 데이터와 같은, HOA 계수들 외의 포맷들로 오디오 데이터를 포함할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 수신된 오디오 데이터를 인코딩을 위한 단일 포맷으로 컨버팅할 수도 있다. 예를 들어, 위에서 논의된 바와 같이, 오디오 인코딩 디바이스 (14) 는 멀티-채널 오디오 데이터 및/또는 오디오 객체들을 HOA 계수들로 컨버팅하고, 비트스트림 (20) 에서 결과의 HOA 계수들을 인코딩할 수도 있다. 이 방식에서, 오디오 인코딩 디바이스 (14) 는 임의의 스피커 구성으로 오디오 데이터를 재생시키도록 콘텐트 소비자 시스템을 인에이블할 수도 있다.
그러나, 일부 예들에서, 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하는 것이 바람직하지 않을 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 가 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하였으면, 결과의 비트스트림은 HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들 (예를 들어, 멀티-채널 오디오 데이터 및 오디오 객체들 중 하나 또는 양자 모두를 단지 프로세싱할 수 있는 콘텐트 소비자 시스템들) 과 이전 버전으로 호환 가능하지 않을 수도 있다. 이와 같이, 결과의 비트스트림이 임의의 스피커 구성으로 오디오 데이터를 재생시키도록 콘텐트 소비자 시스템을 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들과의 이전 버전과의 호환성을 인에이블하도록, 오디오 인코딩 디바이스 (14) 가 수신된 오디오 데이터를 인코딩하는 것이 바람직할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 수신된 오디오 데이터를 HOA 계수들로 컨버팅하고 결과의 HOA 계수들을 비트스트림에서 인코딩하는 것과 대조적으로, 오디오 인코딩 디바이스 (14) 는 비트스트림 (20) 에서 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보와 함께 수신된 오디오 데이터를 그 원래의 포맷으로 인코딩할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 결정하고, 하나 이상의 SPV들의 표현 및 수신된 오디오 데이터의 표현을 비트스트림 (20) 에서 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 상기의 식들 (15) 및 (16) 을 충족시키는 하나 이상의 공간 포지셔닝 벡터들을 결정할 수도 있다. 이 방식에서, 오디오 인코딩 디바이스 (14) 는 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키도록 콘텐트 소비자 시스템을 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들과의 이전 버전과의 호환성을 인에이블하는 비트스트림을 출력할 수도 있다.
콘텐트 소비자 시스템 (6) 은 비트스트림 (20) 에 기초하여 라우드스피커 피드들 (26) 을 생성할 수도 있다. 도 1 에 도시된 바와 같이, 콘텐트 소비자 시스템 (6) 은 오디오 디코딩 디바이스 (22) 및 라우드스피커들 (24) 을 포함할 수도 있다. 라우드스피커들 (24) 은 또한 로컬 라우드스피커들로 지칭될 수도 있다. 오디오 디코딩 디바이스 (22) 는 비트스트림 (20) 을 디코딩할 수도 있다. 일 예로서, 오디오 디코딩 디바이스 (22) 는 비트스트림 (20) 을 디코딩하여, 디코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보 및 오디오 데이터를 복원할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22) 는 비트스트림 (20) 을 디코딩하여 오디오 데이터를 복원할 수도 있고, 디코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보를 로컬하게 결정할 수도 있다. 예를 들어, 오디오 디코딩 디바이스 (22) 는 상기의 식들 (15) 및 (16) 을 충족시키는 하나 이상의 공간 포지셔닝 벡터들을 결정할 수도 있다.
임의의 경우에서, 오디오 디코딩 디바이스 (22) 는 정보를 사용하여 디코딩된 오디오 데이터를 HOA 계수들로 컨버팅할 수도 있다. 예를 들어, 오디오 디코딩 디바이스 (22) 는 SPV들을 사용하여 디코딩된 오디오 데이터를 HOA 계수들로 컨버팅하고, HOA 계수들을 렌더링할 수도 있다. 일부 예들에서, 오디오 디코딩 디바이스는, 라우드스피커들 (24) 중 하나 이상을 도출할 수도 있는 라우드스피커 피드들 (26) 을 출력하도록 결과의 HOA 계수들을 렌더링할 수도 있다. 일부 예들에서, 오디오 디코딩 디바이스는, 라우드스피커들 (24) 중 하나 이상을 도출할 수도 있는 라우드스피커 피드들 (26) 을 출력하도록 HOA 계수들을 렌더링할 수도 있는 외부 렌더 (미도시) 로 결과의 HOA 계수들을 출력할 수도 있다. 다른 말로, HOA 사운드필드는 라우드스피커들 (24) 에 의해 재생된다. 다양한 예들에서, 라우드스피커들 (24) 은 차량, 홈, 극장, 콘서트 장소, 또는 기타 로케이션들일 수 있다.
오디오 인코딩 디바이스 (14) 및 오디오 디코딩 디바이스 (22) 각각은 다양한 적합한 회로부 중 임의의 것, 예컨대 마이크로프로세서들을 포함하는 하나 이상의 집적 회로들, 디지털 신호 프로세서 (DSP) 들, 주문형 집적 회로들 (ASIC) 들, 필드 프로그램가능 게이트 어레이 (FPGA) 들, 이산 로직, 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 임의의 조합들로서 구현될 수도 있다. 이 기법들이 부분적으로 소프트웨어에서 구현되는 경우, 디바이스는 그 소프트웨어에 대한 명령들을 적합한, 비일시적 컴퓨터 판독가능 매체에 저장할 수도 있고, 본 개시물의 기법들을 수행하기 위해 하나 이상의 프로세서들을 사용하는 통합된 회로부와 같은 하드웨어에서 그 명령들을 실행할 수도 있다.
도 2 는 제로 차수 (n = 0) 에서 제 4 차수 (n = 4) 까지의 구면 조화 기저 함수들을 예시하는 다이어그램이다. 알 수 있는 바와 같이, 각각의 차수에 대해, 예시 용이의 목적들을 위해 도 1 의 예에는 도시되지만 명시적으로는 언급되지 않은 서브차수들 (m) 의 확장이 존재한다.
SHC 는 다양한 마이크로폰 어레이 구성들에 의해 물리적으로 획득될 (예컨대, 레코딩될) 수 있거나, 또는 대안으로, 그들은 사운드필드의 채널-기반의 또는 객체-기반의 설명들로부터 도출될 수 있다. SHC 는 장면-기반의 오디오를 나타내며, 여기서, SHC 는 더 효율적인 송신 또는 저장을 촉진할 수도 있는 인코딩된 SHC 를 획득하기 위해 오디오 인코더에 입력될 수도 있다. 예를 들어, (1+4)2 (25, 따라서, 제 4 차수) 계수들을 수반하는 제 4-차수 표현이 사용될 수도 있다.
위에서 언급한 바와 같이, SHC 는 마이크로폰 어레이를 사용한 마이크로폰 레코딩으로부터 도출될 수도 있다. SHC 가 마이크로폰 어레이들로부터 도출될 수 있는 방법의 다양한 예들은 『Poletti, M., "Three-Dimensional Surround Sound Systems Based on Spherical Harmonics," J. Audio Eng. Soc., Vol. 53, No. 11, 2005 November, pp. 1004-1025 』에서 설명된다.
SHC들이 어떻게 객체-기반의 설명으로부터 도출될 수 있는지를 예시하기 위해, 다음 식을 고려한다. 개별의 오디오 객체에 대응하는 사운드필드에 대한 계수들 은 식 (27) 에 도시된 바와 같이 표현될 수도 있고:
여기서, i 는 이고, 는 차수 n 의 (제 2 종의) 구면 Hankel 함수이고, 는 객체의 로케이션이다.
(27)
(예를 들어, PCM 스트림에 고속 푸리에 변환을 수행하는 것과 같은, 시간-주파수 분석 기법들을 사용하여) 객체 소스 에너지 g(ω) 를 주파수의 함수로서 알면, 우리는 각각의 PCM 객체 및 대응하는 로케이션을 SHC 로 컨버팅할 수 있다. 또한, (상기의 것은 선형 및 직교 분해이기 때문에) 각각의 객체에 대한 계수들이 가산적인 것으로 보여질 수 있다. 이 방식으로, 다수의 PCM 객체들은 계수들에 의해 (예를 들어, 개별의 객체들에 대한 계수 벡터들의 합계로서) 표현될 수 있다. 본질적으로, 계수들은 사운드필드에 관한 정보 (3D 좌표들의 함수로서의 압력) 을 포함하며, 상기의 것은 관측 포인트 근처에서, 개별의 객체들로부터 전체 사운드필드의 표현으로의 변환을 나타낸다.
도 3 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 3 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 오디오 인코딩 디바이스 (14A) 로 라벨링된다. 오디오 인코딩 디바이스 (14A) 는 오디오 인코딩 유닛 (51), 비트스트림 생성 유닛 (52A), 및 메모리 (54) 를 포함한다. 다른 예들에서, 오디오 인코딩 디바이스 (14A) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14A) 는 오디오 인코딩 유닛 (51) 을 포함하지 않을 수도 있고, 또는 오디오 인코딩 유닛 (51) 은 하나 이상의 유선 또는 무선 접속들을 통해 오디오 인코딩 디바이스 (14A) 에 접속될 수도 있는 별개의 디바이스로 구현될 수도 있다.
오디오 신호 (50) 는 오디오 인코딩 디바이스 (14A) 에 의해 수신된 입력 오디오 신호를 나타낼 수도 있다. 일부 예들에서, 오디오 신호 (50) 는 소스 라우드스피커 구성을 위한 멀티-채널 오디오 신호일 수도 있다. 예를 들어, 도 3 에 도시된 바와 같이, 오디오 신호 (50) 는 채널 C1 내지 채널 CN 으로서 표기된 오디오 데이터의 N 개의 채널들을 포함할 수도 있다. 일 예로서, 오디오 신호 (50) 는 5.1 의 소스 라우드스피커 구성에 대한 6-채널 오디오 신호 (즉, 전방-좌측 채널, 센터 채널, 전방-우측 채널, 서라운드 백 좌측 채널, 서라운드 백 우측 채널, 및 저-주파수 효과들 (LFE) 채널) 일 수도 있다. 다른 예로서, 오디오 신호 (50) 는 7.1 의 소스 라우드스피커 구성에 대한 8-채널 오디오 신호 (즉, 전방-좌측 채널, 센터 채널, 전방-우측 채널, 서라운드 백 좌측 채널, 서라운드 좌측 채널, 서라운드 백 우측 채널, 서라운드 우측 채널, 및 저-주파수 효과들 (LFE) 채널) 일 수도 있다. 다른 예들, 예컨대 24-채널 오디오 신호 (예를 들어, 22.2), 9-채널 오디오 신호 (예를 들어, 8.1), 및 채널들의 임의의 다른 조합이 가능하다.
일부 예들에서, 오디오 인코딩 디바이스 (14A) 는, 오디오 신호 (50) 를 코딩된 오디오 신호 (62) 로 인코딩하도록 구성될 수도 있는 오디오 인코딩 유닛 (51) 을 포함할 수도 있다. 예를 들어, 오디오 인코딩 유닛 (51) 은 오디오 신호 (50) 를 양자화, 포맷, 또는 다르게는 압축하여 오디오 신호 (62) 를 생성할 수도 있다. 도 3 의 예에 도시된 바와 같이, 오디오 인코딩 유닛 (51) 은 오디오 신호 (50) 의 채널들 C1-CN 을 코딩된 오디오 신호 (62) 의 채널들 C'1-C'N 로 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 유닛 (51) 은 오디오 CODEC 으로서 지칭될 수도 있다.
소스 라우드스피커 셋업 정보 (48) 는 소스 라우드스피커 셋업에서 라우드스피커들의 수 (예를 들어, N) 및 소스 라우드스피커 셋업에서 라우드스피커들의 포지션들을 지정할 수도 있다. 일부 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 방위각 및 고도의 형태 (예를 들어, ) 로 소스 라우드스피커들의 포지션들을 나타낼 수도 있다. 일부 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 미리-정의된 셋업 (예를 들어, 5.1, 7.1, 22.2) 의 형태로 소스 라우드스피커들의 포지션들을 나타낼 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14A) 는 소스 라우드스피커 셋업 정보 (48) 에 기초하여 소스 렌더링 포맷 (D) 를 결정할 수도 있다. 일부 예들에서, 소스 렌더링 포맷 (D) 는 매트릭스로서 표현될 수도 있다.
비트스트림 생성 유닛 (52A) 은 하나 이상의 입력들에 기초하여 비트스트림을 생성하도록 구성될 수도 있다. 도 3 의 예에서, 비트스트림 생성 유닛 (52A) 은 라우드스피커 포지션 정보 (48) 및 오디오 신호 (50) 를 비트스트림 (56A) 으로 인코딩하도록 구성될 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52A) 은 압축 없이 오디오 신호를 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52A) 은 오디오 신호 (50) 를 비트스트림 (56A) 으로 인코딩할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52A) 은 압축한 오디오 신호를 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52A) 은 코딩된 오디오 신호 (62) 를 비트스트림 (56A) 으로 인코딩할 수도 있다.
일부 예들에서, 라우드스피커 포지션 정보 (48) 를 비트스트림 (56A) 으로, 비트스트림 생성 유닛 (52A) 은 소스 라우드스피커 셋업에서 라우드스피커들의 수 (예를 들어, N) 및 소스 라우드스피커 셋업의 라우드스피커들의 포지션들을 방위각 및 고도 (예를 들어, ) 의 형태로 인코딩 (예를 들어, 시그널링) 할 수도 있다. 추가로 일부 예들에서, 비트스트림 생성 유닛 (52A) 은, 오디오 신호 (50) 를 HOA 사운드필드로 컨버팅하는 경우 얼마나 많은 HOA 계수들이 사용될지의 표시 (예를 들어, N HOA ) 를 결정 및 인코딩할 수도 있다. 일부 예들에서, 오디오 신호 (50) 는 프레임들로 분할될 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52A) 은 각각의 프레임에 대해 소스 라우드스피커 셋업에서 라우드스피커들의 수 및 소스 라우드스피커 셋업의 라우드스피커들의 포지션들을 시그널링할 수도 있다. 일부 예들에서, 예컨대 현재의 프레임에 대한 소스 라우드스피커 셋업이 이전의 프레임에 대한 소스 라우드스피커 셋업과 동일한 경우에서, 비트스트림 생성 유닛 (52A) 은 현재의 프레임에 대한 소스 라우드스피커 셋업의 라우드스피커들의 포지션들 및 소스 라우드스피커 셋업에서 라우드스피커들의 수를 시그널링하는 것을 생략할 수도 있다.
동작 시에, 오디오 인코딩 디바이스 (14A) 는 오디오 신호 (50) 를 6-채널 멀티-채널 오디오 신호로서 수신하고, 라우드스피커 포지션 정보 (48) 를 5.1 미리정의된 셋업의 형태로 소스 라우드스피커들의 포지션들의 표시로서 수신할 수도 있다. 위에서 논의된 바와 같이, 비트스트림 생성 유닛 (52A) 은 라우드스피커 포지션 정보 (48) 및 오디오 신호 (50) 를 비트스트림 (56A) 으로 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52A) 은 6-채널 멀티-채널 (오디오 신호 (50)) 의 표현, 및 인코딩된 오디오 신호가 5.1 오디오 신호라는 표시 (소스 라우드스피커 포지션 정보 (48)) 를 비트스트림 (56A) 으로 인코딩할 수도 있다.
위에서 논의된 바와 같이, 일부 예들에서 오디오 인코딩 디바이스 (14A) 는 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 를 오디오 디코딩 디바이스로 직접 송신할 수도 있다. 다른 예들에서, 오디오 인코딩 디바이스 (14A) 는 디코딩 및/또는 재생을 위해 오디오 디코딩 디바이스에 의한 나중의 액세스를 위해, 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 을 저장 매체 또는 파일 서버 상에 저장할 수도 있다. 도 3 의 예에서, 메모리 (54) 는 오디오 인코딩 디바이스 (14A) 에 의한 출력 이전에 비트스트림 (56A) 의 적어도 일부를 저장할 수도 있다. 다시 말해, 메모리 (54) 는 비트스트림 (56A) 의 전부 또는 비트스트림 (56A) 의 부분을 저장할 수도 있다.
따라서, 오디오 인코딩 디바이스 (14A) 는, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 멀티-채널 오디오 신호 (50)) 를 수신하고; 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합하여, 멀티-채널 오디오 신호를 나타내는 고차 앰비소닉 (HOA) 계수들의 세트를 나타내는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터들을 획득하며; 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56A)) 에서, 멀티-채널 오디오 신호 (예를 들어, 코딩된 오디오 신호 (62)) 의 표현 및 복수의 공간 포지셔닝 벡터들 (예를 들어, 라우드스피커 포지션 정보 (48)) 의 표시를 인코딩하도록 구성된 하나 이상의 프로세서들을 포함할 수도 있다. 또한, 오디오 인코딩 디바이스 (14A) 는, 코딩된 오디오 비트스트림을 저장하도록 구성된, 하나 이상의 프로세서들에 전기적으로 커플링된 메모리 (예를 들어, 메모리 (54)) 를 포함할 수도 있다.
도 4 는 본 개시물의 하나 이상의 기법들에 따른, 도 3 에 도시된 오디오 인코딩 디바이스 (14A) 의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 4 에 도시된 오디오 디코딩 디바이스 (22) 의 예시의 구현은 22A 로 라벨링된다. 도 4 의 오디오 디코딩 디바이스 (22) 의 구현은 메모리 (200), 디멀티플렉싱 유닛 (202A), 오디오 디코딩 유닛 (204), 벡터 생성 유닛 (206), HOA 생성 유닛 (208A), 및 렌더링 유닛 (210) 을 포함한다. 다른 예들에서, 오디오 디코딩 디바이스 (22A) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 베이스 또는 위성 디바이스에서 구현될 수도 있고, 하나 이상의 유선 또는 무선 접속들을 통해 오디오 디코딩 디바이스 (22A) 에 접속될 수도 있다.
메모리 (200) 는 인코딩된 오디오 데이터, 예컨대 비트스트림 (56A) 을 획득할 수도 있다. 일부 예들에서, 메모리 (200) 는 오디오 인코딩 디바이스로부터 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 를 직접 수신할 수도 있다. 다른 예들에서, 인코딩된 오디오 데이터가 저장될 수도 있고, 메모리 (200) 는 저장 매체 또는 파일 서버로부터 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 를 획득할 수도 있다. 메모리 (200) 는 비트스트림 (56A) 에 대한 액세스를 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들, 예컨대 디멀티플렉싱 유닛 (202) 에 제공할 수도 있다.
디멀티플렉싱 유닛 (202A) 은 비트스트림 (56A) 을 디멀티플렉싱하여, 코딩된 오디오 데이터 (62) 및 소스 라우드스피커 셋업 정보 (48) 를 획득할 수도 있다. 디멀티플렉싱 유닛 (202A) 은 획득된 데이터를 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들에 제공할 수도 있다. 예를 들어, 디멀티플렉싱 유닛 (202A) 은 코딩된 오디오 데이터 (62) 를 오디오 디코딩 유닛 (204) 에 제공하고, 소스 라우드스피커 셋업 정보 (48) 를 벡터 생성 유닛 (206) 에 제공할 수도 있다.
오디오 디코딩 유닛 (204) 은 코딩된 오디오 신호 (62) 를 오디오 신호 (70) 로 디코딩하도록 구성될 수도 있다. 예를 들어, 오디오 디코딩 유닛 (204) 은 오디오 신호 (62) 를 역양자화, 역포맷, 또는 다르게는 압축해제하여 오디오 신호 (70) 를 생성할 수도 있다. 도 4 의 예에 도시된 바와 같이, 오디오 디코딩 유닛 (204) 은 오디오 신호 (62) 의 채널들 C'1-C'N 을 디코딩된 오디오 신호 (70) 의 채널들 C'1-C'N 로 디코딩할 수도 있다. 일부 예들에서, 예컨대 오디오 신호 (62) 가 무손실 코딩 기법을 사용하여 코딩되는 경우에서, 오디오 신호 (70) 는 도 3 의 오디오 신호 (50) 와 대략 동등할 수도 있다. 일부 예들에서, 오디오 디코딩 유닛 (204) 은 오디오 CODEC 으로서 지칭될 수도 있다. 오디오 디코딩 유닛 (204) 은 디코딩된 오디오 신호 (70) 를 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들, 예컨대 HOA 생성 유닛 (208A) 에 제공할 수도 있다.
벡터 생성 유닛 (206) 은 하나 이상의 공간 포지셔닝 벡터들을 생성하도록 구성될 수도 있다. 예를 들어, 도 4 의 예에서 도시된 바와 같이, 벡터 생성 유닛 (206) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 생성할 수도 있다. 일부 예들에서, 공간 포지셔닝 벡터 (72) 는 고차 앰비소닉스 (HOA) 도메인에 있을 수도 있다. 일부 예들에서, 공간 포지셔닝 벡터 (72) 를 생성하기 위해, 벡터 생성 유닛 (206) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 소스 렌더링 포맷 (D) 을 결정할 수도 있다. 결정된 소스 렌더링 포맷 (D) 을 사용하여, 벡터 생성 유닛 (206) 은 상기의 식들 (15) 및 (16) 을 충족시키도록 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 벡터 생성 유닛 (206) 은 공간 포지셔닝 벡터들 (72) 을 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들, 예컨대 HOA 생성 유닛 (208A) 에 제공할 수도 있다.
HOA 생성 유닛 (208A) 은 멀티-채널 오디오 데이터 및 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드를 생성하도록 구성될 수도 있다. 예를 들어, 도 4 의 예에 도시된 바와 같이, HOA 생성 유닛 (208A) 은 디코딩된 오디오 신호 (70) 및 공간 포지셔닝 벡터들 (72) 에 기초하여 HOA 계수들 (212A) 의 세트를 생성할 수도 있다. 일부 예들에서, HOA 생성 유닛 (208A) 은 이하의 식 (28) 에 따라 HOA 계수들 (212A) 의 세트를 생성할 수도 있고, 여기서 H 는 HOA 계수들 (212A) 을 나타내고, C i 는 디코딩된 오디오 신호 (70) 를 나타내며, 는 공간 포지셔닝 벡터들 (72) 의 트랜스포즈를 나타낸다.
(28)
HOA 생성 유닛 (208A) 은 생성된 HOA 사운드필드를 하나 이상의 다른 컴포넌트들에 제공할 수도 있다. 예를 들어, 도 4 의 예에 도시된 바와 같이, HOA 생성 유닛 (208A) 은 HOA 계수들 (212A) 을 렌더링 유닛 (210) 에 제공할 수도 있다.
렌더링 유닛 (210) 은 HOA 사운드필드를 렌더링하여 복수의 오디오 신호들을 생성하도록 구성될 수도 있다. 일부 예들에서, 렌더링 유닛 (210) 은 HOA 사운드필드의 HOA 계수들 (212A) 을 렌더링하여 복수의 로컬 라우드스피커들, 예컨대 도 1 의 라우드스피커들 (24) 에서 재생을 위한 오디오 신호들 (26A) 을 생성할 수도 있다. 복수의 로컬 라우드스피커들이 L 개의 라우드스피커들을 포함하는 경우, 오디오 신호들 (26A) 은 라우드스피커들 1 내지 L 를 통한 재생을 위해 각기 의도되는 채널들 (C1 내지 CL) 을 포함할 수도 있다.
렌더링 유닛 (210) 은, 복수의 로컬 라우드스피커들의 포지션들을 나타낼 수도 있는, 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 오디오 신호들 (26A) 을 생성할 수도 있다. 일부 예들에서, 로컬 라우드스피커 셋업 정보 (28) 는 로컬 렌더링 포맷 () 의 형태에 있을 수도 있다. 일부 예들에서, 로컬 렌더링 포맷 () 은 로컬 렌더링 매트릭스일 수도 있다. 일부 예들에서, 예컨대 로컬 라우드스피커 셋업 정보 (28) 가 로컬 라우드스피커들 각각의 방위각 및 고도의 형태로 있는 경우에서, 렌더링 유닛 (210) 은 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 로컬 렌더링 포맷 () 을 결정할 수도 있다. 일부 예들에서, 렌더링 유닛 (210) 은 식 (29) 에 따라 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 오디오 신호들 (26A) 을 생성할 수도 있고, 여기서 는 오디오 신호들 (26A) 을 나타내고, H 는 HOA 계수들 (212A) 을 나타내며, 는 로컬 렌더링 포맷 () 의 트랜스포즈를 나타낸다.
(29)
일부 예들에서, 로컬 렌더링 포맷 () 은 공간 포지셔닝 벡터들 (72) 을 결정하는데 사용된 소스 렌더링 포맷 (D) 과는 상이할 수도 있다. 일 예로서, 복수의 로컬 라우드스피커들의 포지션들은 복수의 소스 라우드스피커들의 포지션들과는 상이할 수도 있다. 다른 예로서, 복수의 로컬 라우드스피커들에서 라우드스피커들의 수는 복수의 소스 라우드스피커들에서 라우드스피커들의 수와 상이할 수도 있다. 다른 예로서, 복수의 로컬 라우드스피커들의 포지션들 양자 모두는 복수의 소스 라우드스피커들의 포지션들과 상이할 수도 있고, 복수의 로컬 라우드스피커들에서 라우드스피커들의 수는 복수의 소스 라우드스피커들에서 라우드스피커들의 수와 상이할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22A) 는 코딩된 오디오 비트스트림을 저장하도록 구성된 메모리 (예를 들어, 메모리 (200)) 를 포함할 수도 있다. 오디오 디코딩 디바이스 (22A) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 코딩된 오디오 신호 (62)) 의 표현을 획득하고; 소스 라우드스피커 구성 (예를 들어, 공간 포지셔닝 벡터들 (72)) 에 기초하는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터 (SPV) 들의 표현을 획득하며; 멀티-채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드 (예를 들어, HOA 계수들 (212A)) 를 생성하도록 구성되고, 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 더 포함할 수도 있다.
도 5 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 5 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 오디오 인코딩 디바이스 (14B) 로 라벨링된다. 오디오 인코딩 디바이스 (14B) 는 오디오 인코딩 유닛 (51), 비트스트림 생성 유닛 (52A), 및 메모리 (54) 를 포함한다. 다른 예들에서, 오디오 인코딩 디바이스 (14B) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14B) 는 오디오 인코딩 유닛 (51) 을 포함하지 않을 수도 있고, 또는 오디오 인코딩 유닛 (51) 은 하나 이상의 유선 또는 무선 접속들을 통해 오디오 인코딩 디바이스 (14B) 에 접속될 수도 있다.
공간 포지셔닝 벡터들의 표시를 인코딩하지 않고 코딩된 오디오 신호 (62) 및 라우드스피커 포지션 정보 (48) 를 인코딩할 수도 있는 도 3 의 오디오 인코딩 디바이스 (14A) 와 대조적으로, 오디오 인코딩 디바이스 (14B) 는 공간 포지셔닝 벡터들을 결정할 수도 있는 벡터 인코딩 유닛 (68) 을 포함한다. 일부 예들에서, 벡터 인코딩 유닛 (68) 은 라우드스피커 포지션 정보 (48) 에 기초하여 공간 포지셔닝 벡터들을 결정하고, 비트스트림 생성 유닛 (52B) 에 의한 비트스트림 (56B) 으로의 인코딩을 위해 공간 벡터 표현 데이터 (71A) 를 출력할 수도 있다.
일부 예들에서, 벡터 인코딩 유닛 (68) 은 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성할 수도 있다. 일 예로서, 벡터 인코딩 유닛 (68) 은 (예를 들어, 라우드스피커 포지션 정보 (48) 에 기초하여) 동적으로 생성되는 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성할 수도 있다. 동적으로 생성된 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성하는 벡터 인코딩 유닛 (68) 의 일 예의 추가적인 상세들은 도 6 내지 도 8 을 참조하여 이하에서 논의된다. 다른 예로서, 벡터 인코딩 유닛 (68) 은 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성할 수도 있다. 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성하는 벡터 인코딩 유닛 (68) 의 일 예의 추가적인 상세들은 도 9 를 참조하여 이하에서 논의된다.
비트스트림 생성 유닛 (52B) 은 비트스트림 (56B) 에서 공간 벡터 표현 데이터 (71A) 및 코딩된 오디오 신호 (60) 를 나타내는 데이터를 포함할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52B) 은 또한, 비트스트림 (56B) 에서 라우드스피커 포지션 정보 (48) 를 나타내는 데이터를 포함할 수도 있다. 도 5 의 예에서, 메모리 (54) 는 오디오 인코딩 디바이스 (14B) 에 의한 출력 이전에 비트스트림 (56B) 의 적어도 일부를 저장할 수도 있다.
따라서, 오디오 인코딩 디바이스 (14B) 는, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 멀티-채널 오디오 신호 (50)) 를 수신하고; 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합하여, 멀티-채널 오디오 신호를 나타내는 고차 앰비소닉 (HOA) 계수들의 세트를 나타내는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터들을 획득하며; 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56B)) 에서, 멀티-채널 오디오 신호 (예를 들어, 코딩된 오디오 신호 (62)) 의 표현 및 복수의 공간 포지셔닝 벡터들 (예를 들어, 공간 벡터 표현 데이터 (71A)) 의 표시를 인코딩하도록 구성된 하나 이상의 프로세서들을 포함할 수도 있다. 또한, 오디오 인코딩 디바이스 (14B) 는, 코딩된 오디오 비트스트림을 저장하도록 구성된, 하나 이상의 프로세서들에 전기적으로 커플링된 메모리 (예를 들어, 메모리 (54)) 를 포함할 수도 있다.
도 6 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛 (68) 의 예시의 구현을 예시하는 다이어그램이다. 도 6 의 예에서, 벡터 인코딩 유닛 (68) 의 예시의 구현은 벡터 인코딩 유닛 (68A) 으로 라벨링된다. 도 6 의 예에서, 벡터 인코딩 유닛 (68A) 은 렌더링 포맷 유닛 (110), 벡터 생성 유닛 (112), 메모리 (114), 및 표현 유닛 (115) 을 포함한다. 또한, 도 6 의 예에서 도시된 바와 같이, 렌더링 포맷 유닛 (110) 은 소스 라우드스피커 셋업 정보 (48) 를 수신한다.
렌더링 포맷 유닛 (110) 은 소스 라우드스피커 셋업 정보 (48) 를 사용하여 소스 렌더링 포맷 (116) 을 결정한다. 소스 렌더링 포맷 (116) 은 HOA 계수들의 세트를 소스 라우드스피커 셋업 정보 (48) 에 의해 설명된 방식으로 배열된 라우드스피커들에 대한 라우드스피커 피드들의 세트로 렌더링하기 위한 렌더링 매트릭스일 수도 있다. 렌더링 포맷 유닛 (110) 은 다양한 방식들로 소스 렌더링 포맷 (116) 을 결정할 수도 있다. 예를 들어, 렌더링 포맷 유닛 (110) 은 『ISO/IEC 23008-3, "Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 3 : 3D audio," First Edition, 2015』 (iso.org 에서 이용 가능함) 에서 설명된 기법을 사용할 수도 있다.
렌더링 포맷 유닛 (110) 이 ISO/IEC 23008-3 에서 설명된 기법을 사용하는 예에서, 소스 라우드스피커 셋업 정보 (48) 는 소스 라우드스피커 셋업에서 라우드스피커들의 방향들을 지정하는 정보를 포함한다. 설명의 용이함을 위해, 본 개시물은 소스 라우드스피커 셋업에서 라우드스피커들을 "소스 라우드스피커들" 로서 지칭할 수도 있다. 따라서, 소스 라우드스피커 셋업 정보 (48) 는 L 개의 라우드스피커 방향들을 지정하는 데이터를 포함할 수도 있고, 여기서 L 은 소스 라우드스피커들의 수이다. L 개의 라우드스피커 방향들을 지정하는 데이터는 로 표기될 수도 있다. 소스 라우드스피커들의 방향들을 지정하는 데이터는 구면 좌표들의 쌍들로서 표현될 수도 있다. 따라서, 구면각 을 갖고, 이다. 는 경사각을 나타내고, 는 방위각을 나타내며, 이것은 라디안 (rad) 으로 표현될 수도 있다. 이 예에서, 렌더링 포맷 유닛 (110) 은, 소스 라우드스피커들이 음향 스윗 스폿 (sweet spot) 에서 센터링된, 구면 배열을 갖는다는 것을 가정할 수도 있다.
이 예에서, 렌더링 포맷 유닛 (110) 은, 이상적인 구면 설계 포지션들의 세트 및 HOA 차수에 기초하여, 로 표기된, 모드 매트릭스를 결정할 수도 있다. 도 7 은 이상적인 구면 설계 포지션들의 예시의 세트를 나타낸다. 도 8 은 이상적인 구면 설계 포지션들의 다른 예시의 세트를 나타내는 테이블이다. 이상적인 구면 설계 포지션들은 로 표기될 수도 있고, 여기서 S 는 이상적인 구면 설계 포지션들의 수이고, 이다. 모드 매트릭스는, 이도록 정의될 수도 있고, 이며, 여기서 는 실수 값의 구면 조화 계수들 을 유지한다. 일반적으로, 실수 값의 구면 조화 계수들 은 식들 (30) 및 (31) 에 따라 표현될 수도 있다.
여기서
식들 (30) 및 (31) 에서, 르장드르 함수 는, 르장드르 다항식 을 갖고 Condon-Shortley 위상 항 없이, 이하의 식 (32) 에 따라 정의될 수도 있다.
도 7 은 이상적인 구면 설계 포지션들에 대응하는 엔트리들을 갖는 예시의 테이블 (130) 을 제시한다. 도 7 의 예에서, 테이블 (130) 의 각 로우는 미리정의된 라우드스피커 포지션에 대응하는 엔트리이다. 테이블 (130) 의 컬럼 (131) 은 라우드스피커들에 대한 이상적인 방위각들을 각도로 지정한다. 테이블 (130) 의 컬럼 (132) 은 라우드스피커들에 대한 이상적인 고도들을 각도로 지정한다. 테이블 (130) 의 컬럼들 (133 및 134) 은 라우드스피커들에 대한 방위각들의 허용 가능한 범위들을 각도로 지정한다. 테이블 (130) 의 컬럼들 (135 및 136) 은 라우드스피커들의 고도각들의 허용 가능한 범위들을 각도로 지정한다.
도 8 은 이상적인 구면 설계 포지션들에 대응하는 엔트리들을 갖는 다른 예시의 테이블 (140) 의 일부를 나타낸다. 도 8 에 도시되지 않았으나, 테이블 (140) 은 900 개의 엔트리들을 포함하고, 각각은 라우드스피커 로케이션의 상이한 방위각, , 및 고도, 를 지정한다. 도 8 의 예에서, 오디오 인코딩 디바이스 (14) 는 테이블 (140) 에서 엔트리의 인덱스를 시그널링함으로써 소스 라우드스피커 셋업에서 라우드스피커의 포지션을 지정할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 는, 인덱스 값 (46) 을 시그널링함으로써 소스 라우드스피커 셋업에서 라우드스피커가 방위각 1.967778 라디안 및 고도 0.428967 라디안이라는 것을 지정할 수도 있다.
도 6 의 예로 돌아가, 벡터 생성 유닛 (112) 은 소스 렌더링 포맷 (116) 을 획득할 수도 있다. 벡터 생성 유닛 (112) 은 소스 렌더링 포맷 (116) 에 기초하여 공간 벡터들 (118) 의 세트를 결정할 수도 있다. 일부 예들에서, 벡터 생성 유닛 (112) 에 의해 생성된 공간 벡터들의 수는 소스 라우드스피커 셋업에서 라우드스피커들의 수와 동일하다. 예를 들어, 소스 라우드스피커 셋업에서 N 개의 라우드스피커들이 존재하면, 벡터 생성 유닛 (112) 은 N 개의 공간 벡터들을 결정할 수도 있다. 소스 라우드스피커 셋업에서 각각의 라우드스피커 (n) 에 대해 (여기서, n 은 1 내지 N 의 범위임), 라우드스피커에 대한 공간 벡터는 와 동일할 수도 있다. 이 식에서, D 는 매트릭스로서 표현된 소스 렌더링 포맷이고 N 과 동일한 수의 엘리먼트들의 단일 로우로 이루어진 매트릭스이다 (즉, A n 은 N-차원 벡터이다). A n 에서 각각의 엘리먼트는, 그 값이 1 과 동일한 하나의 엘리먼트를 제외하고, 0 과 동일하다. 1 과 동일한 엘리먼트의 A n 내의 포지션의 인덱스는 n 과 동일하다. 따라서, n 이 1 과 동일한 경우, A n 은 [1,0,0,...,0] 과 동일하고; n 이 2 와 동일한 경우, A n 은 [0,1,0,...,0] 와 동일하고; 등등이다.
메모리 (114) 는 코드북 (120) 을 저장할 수도 있다. 메모리 (114) 는 벡터 인코딩 유닛 (68A) 과는 별개일 수도 있고, 오디오 인코딩 디바이스 (14) 의 일반적인 메모리의 부분을 형성할 수도 있다. 코드북 (120) 은 엔트리들의 세트를 포함하고, 이 엔트리들 각각은 개별의 코드-벡터 인덱스를 공간 벡터들 (118) 의 세트의 개별의 공간 벡터에 맵핑한다. 다음의 테이블은 예시의 코드북이다. 이 테이블에서, 각각의 개별의 로우는 개별의 엔트리에 대응하고, N 은 라우드스피커들의 수를 나타내며, D 는 매트릭스로서 표현된 소스 렌더링 포맷을 나타낸다.
소스 라우드스피커 셋업의 각각의 개별의 라우드스피커에 대해, 표현 유닛 (115) 은 개별의 라우드스피커에 대응하는 코드-벡터 인덱스를 출력한다. 예를 들어, 표현 유닛 (115) 은 제 1 채널에 대응하는 코드-벡터 인덱스가 2 라는 것, 제 2 채널에 대응하는 코드-벡터 인덱스가 4 와 동일하다는 것, 등을 나타내는 데이터를 출력할 수도 있다. 코드북 (120) 의 복사본을 갖는 디코딩 디바이스는 소스 라우드스피커 셋업의 라우드스피커들에 대한 공간 벡터를 결정하도록 코드-벡터 인덱스들을 사용할 수 있다. 따라서, 코드-벡터 인덱스들은 공간 벡터 표현 데이터의 유형이다. 위에서 논의된 바와 같이, 비트스트림 생성 유닛 (52B) 은 비트스트림 (56B) 에서 공간 벡터 표현 데이터 (71A) 를 포함할 수도 있다.
또한, 일부 예들에서 표현 유닛 (115) 은 소스 라우드스피커 셋업 정보 (48) 를 획득하고, 공간 벡터 표현 데이터 (71A) 에서 소스 라우드스피커들의 로케이션들을 나타내는 데이터를 포함할 수도 있다.
다른 예들에서, 표현 유닛 (115) 은 공간 벡터 표현 데이터 (71A) 에서 소스 라우드스피커들의 로케이션들을 나타내는 데이터를 포함하지 않는다. 차라리, 적어도 일부 이러한 예들에서, 소스 라우드스피커들의 로케이션들은 오디오 디코딩 디바이스 (22) 에서 미리구성될 수도 있다.
표현 유닛 (115) 이 공간 벡터 표현 데이터 (71A) 에서 소스 라우드스피커의 로케이션들을 나타내는 데이터를 포함하는 예들에서, 표현 유닛 (115) 은 소스 라우드스피커들의 로케이션들을 다양한 방식들로 나타낼 수도 있다. 일 예에서, 소스 라우드스피커 셋업 정보 (48) 는 서라운드 사운드 포맷, 예컨대 5.1 포맷, 7.1 포맷, 또는 22.2 포맷을 지정한다. 이 예에서, 소스 라우드스피커 셋업의 라우드스피커들 각각은 미리정의된 로케이션에 있다. 따라서, 표현 유닛 (114) 은, 공간 표현 데이터 (115) 에서, 미리정의된 서라운드 사운드 포맷을 나타내는 데이터를 포함할 수도 있다. 미리정의된 서라운드 사운드 포맷에서 라우드스피커들이 미리정의된 포지션들에 있기 때문에, 미리정의된 서라운드 사운드 포맷을 나타내는 데이터는 오디오 디코딩 디바이스 (22) 가 코드북 (120) 에 일치하는 코드북을 생성하기에 대해 충분할 수도 있다.
다른 예에서, ISO/IEC 23008-3 은 상이한 라우드스피커 레이아웃들에 대한 복수의 CICP 스피커 레이아웃 인덱스 값들을 정의한다. 이 예에서, 소스 라우드스피커 셋업 정보 (48) 는 ISO/IEC 23008-3 에서 지정된 바와 같이, CICP 스피커 레이아웃 인덱스 (CICPspeakerLayoutIdx) 를 지정한다. 렌더링 포맷 유닛 (110) 은 이 CICP 스피커 레이아웃 인덱스에 기초하여 소스 라우드스피커 셋업에서 라우드스피커들의 로케이션들을 결정할 수도 있다. 따라서, 표현 유닛 (115) 은, 공간 벡터 표현 데이터 (71A) 에서, CICP 스피커 레이아웃 인덱스의 표시를 포함할 수도 있다.
다른 예에서, 소스 라우드스피커 셋업 정보 (48) 는 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 수 및 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 로케이션들을 지정한다. 이 예에서, 렌더링 포맷 유닛 (110) 은 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 수 및 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 로케이션들에 기초하여 소스 렌더링 포맷을 결정할 수도 있다. 이 예에서, 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 로케이션들은 다양한 방식들로 표현될 수도 있다. 예를 들어, 표현 유닛 (115) 은, 공간 벡터 표현 데이터 (71A) 에서, 소스 라우드스피커 셋업에서 라우드스피커들의 구면 좌표들을 포함할 수도 있다. 다른 예에서, 오디오 인코딩 디바이스 (20) 및 오디오 디코딩 디바이스 (24) 는 복수의 미리정의된 라우드스피커 포지션들에 대응하는 엔트리들을 갖는 테이블로 구성될 수도 있다. 도 7 및 도 8 은 이러한 테이블들의 예들이다. 이 예에서, 차라리 공간 벡터 표현 데이터 (71A) 가 라우드스피커들의 구면 좌표들을 더 지정하는 것 보다는, 공간 벡터 표현 데이터 (71A) 는 대신에, 테이블에서 엔트리들의 인덱스 값들을 나타내는 데이터를 포함할 수도 있다. 인덱스 값을 시그널링하는 것은 구면 좌표들을 시그널링하는 것보다 더 효율적일 수도 있다.
도 9 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛 (68) 의 예시의 구현을 예시하는 블록도이다. 도 9 의 예에서, 벡터 인코딩 유닛 (68) 의 예시의 구현은 벡터 인코딩 유닛 (68B) 으로 라벨링된다. 도 9 의 예에서, 공간 벡터 유닛 (68B) 은 코드북 라이브러리 (150) 및 선택 유닛 (154) 을 포함한다. 코드북 라이브러리 (150) 는 메모리를 사용하여 구현될 수도 있다. 코드북 라이브러리 (150) 는 하나 이상의 미리정의된 코드북들 (152A-152N) (총괄하여, "코드북들 (152")) 을 포함한다. 코드북들 (152) 의 각각의 개별 코드북은 하나 이상의 엔트리들의 세트를 포함한다. 각각의 개별 엔트리는 개별의 코드-벡터 인덱스를 개별의 공간 벡터에 맵핑한다.
코드북들 (152) 의 각각의 개별의 코드북은 상이한 미리정의된 소스 라우드스피커 셋업에 대응한다. 예를 들어, 코드북 라이브러리 (150) 의 제 1 코드북은 2 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응할 수도 있다. 이 예에서, 코드북 라이브러리 (150) 의 제 2 코드북은 5.1 서라운드 사운드 포맷에 대한 표준 로케이션들에서 배열된 5 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응한다. 또한, 이 예에서, 코드북 라이브러리 (150) 의 제 3 코드북은 7.1 서라운드 사운드 포맷에 대한 표준 로케이션들에서 배열된 7 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응한다. 이 예에서, 코드북 라이브러리 (100) 의 제 4 코드북은 22.2 서라운드 사운드 포맷에 대한 표준 로케이션들에서 배열된 22 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응한다. 다른 예들은 이전의 예에서 언급된 것들보다 더 많은, 더 적은, 또는 상이한 코드북들을 포함할 수도 있다.
도 9 의 예에서, 선택 유닛 (154) 은 소스 라우드스피커 셋업 정보 (48) 를 수신한다. 일 예에서, 소스 라우드스피커 정보 (48) 는 5.1, 7.1, 22.2, 및 다른 것들과 같은, 미리정의된 서라운드 사운드 포맷을 식별하는 정보로 이루어지거나 또는 이를 포함할 수도 있다. 다른 예에서, 소스 라우드스피커 정보 (48) 는 미리정의된 수 및 배열의 라우드스피커들의 다른 유형을 식별하는 정보로 이루어지거나 또는 이를 포함한다.
선택 유닛 (154) 은, 소스 라우드스피커 셋업 정보에 기초하여, 코드북들 (152) 중 어느 것이 오디오 디코딩 디바이스 (24) 에 의해 수신된 오디오 신호들에 적용 가능한지를 식별한다. 도 9 의 예에서, 선택 유닛 (154) 은, 오디오 신호들 (50) 중 어느 것이 식별된 코드북에서 어느 엔트리들에 대응하는지를 나타내는 공간 벡터 표현 데이터 (71A) 를 출력한다. 예를 들어, 선택 유닛 (154) 은 오디오 신호들 (50) 의 각각에 대한 코드-벡터 인덱스를 출력할 수도 있다.
일부 예들에서, 벡터 인코딩 유닛 (68) 은 도 6 의 미리정의된 코드북 접근법 및 도 9 의 동적 코드북 접근법의 하이브리드를 이용한다. 예를 들어, 본 개시물의 다른 곳에서 설명된 바와 같이, 채널-기반 오디오가 사용되는 경우, 각각의 개별의 채널은 소스 라우드스피커 셋업의 개별의 라우드스피커에 대응하고 벡터 인코딩 유닛 (68) 은 소스 라우드스피커 셋업의 각각의 개별의 라우드스피커에 대한 개별의 공간 벡터를 결정한다. 이러한 예들의 일부, 예컨대 채널-기반 오디오가 사용되는 경우에서, 벡터 인코딩 유닛 (68) 은 하나 이상의 미리정의된 코드북들을 사용하여 소스 라우드스피커 셋업의 특정 라우드스피커들의 공간 벡터들을 결정할 수도 있다. 벡터 인코딩 유닛 (68) 은 소스 라우드스피커 셋업에 기초하여 소스 렌더링 포맷을 결정하고, 소스 렌더링 포맷을 사용하여 소스 라우드스피커 셋업의 다른 라우드스피커들에 대한 공간 벡터들을 결정할 수도 있다.
도 10 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 5 에 도시된 오디오 디코딩 디바이스 (22) 의 예시의 구현은 오디오 디코딩 디바이스 (22B) 로 라벨링된다. 도 10 의 오디오 디코딩 디바이스 (22) 의 구현은 메모리 (200), 디멀티플렉싱 유닛 (202A), 오디오 디코딩 유닛 (204), 벡터 디코딩 유닛 (207), HOA 생성 유닛 (208A), 및 렌더링 유닛 (210) 을 포함한다. 다른 예들에서, 오디오 디코딩 디바이스 (22B) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 베이스 또는 위성 디바이스에서 구현될 수도 있고, 하나 이상의 유선 또는 무선 접속들을 통해 오디오 디코딩 디바이스 (22B) 에 접속될 수도 있다.
공간 포지셔닝 벡터들의 표시를 수신하지 않고 라우드스피커 포지션 정보 (48) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 생성할 수도 있는 도 4 의 오디오 디코딩 디바이스 (22A) 와 대조적으로, 오디오 디코딩 디바이스 (22B) 는 수신된 공간 벡터 표현 데이터 (71A) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있는 벡터 디코딩 유닛 (207) 을 포함한다.
일부 예들에서, 벡터 디코딩 유닛 (207) 은 공간 벡터 표현 데이터 (71A) 에 의해 표현된 코드북 인덱스들에 기초하여 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 일 예로서, 벡터 디코딩 유닛 (207) 은 (예를 들어, 라우드스피커 포지션 정보 (48) 에 기초하여) 동적으로 생성되는 코드북에서의 인덱스들로부터 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 동적으로 생성된 코드북의 인덱스들로부터 공간 포지셔닝 벡터들을 결정하는 벡터 디코딩 유닛 (207) 의 일 예의 추가적인 상세들은 도 11 을 참조하여 이하에서 논의된다. 다른 예로서, 벡터 디코딩 유닛 (207) 은 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로부터 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로부터 공간 포지셔닝 벡터들을 결정하는 벡터 디코딩 유닛 (207) 의 일 예의 추가적인 상세들은 도 12 를 참조하여 이하에서 논의된다.
임의의 경우에서, 벡터 디코딩 유닛 (207) 은 공간 포지셔닝 벡터들 (72) 을 오디오 디코딩 디바이스 (22B) 의 하나 이상의 다른 컴포넌트들, 예컨대 HOA 생성 유닛 (208A) 에 제공할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22B) 는 코딩된 오디오 비트스트림을 저장하도록 구성된 메모리 (예를 들어, 메모리 (200)) 를 포함할 수도 있다. 오디오 디코딩 디바이스 (22B) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 코딩된 오디오 신호 (62)) 의 표현을 획득하고; 소스 라우드스피커 구성 (예를 들어, 공간 포지셔닝 벡터들 (72)) 에 기초하는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터 (SPV) 들의 표현을 획득하며; 멀티-채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드 (예를 들어, HOA 계수들 (212A)) 를 생성하도록 구성되고, 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 더 포함할 수도 있다.
도 11 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛 (207) 의 예시의 구현을 예시하는 블록도이다. 도 11 의 예에서, 벡터 디코딩 유닛 (207) 의 예시의 구현은 벡터 디코딩 유닛 (207A) 으로 라벨링된다. 도 11 의 예에서, 벡터 디코딩 유닛 (207) 은 렌더링 포맷 유닛 (250), 벡터 생성 유닛 (252), 메모리 (254), 및 복원 유닛 (256) 을 포함한다. 다른 예들에서, 벡터 디코딩 유닛 (207) 은 더 많은, 더 적은, 또는 상이한 컴포넌트들을 포함할 수도 있다.
렌더링 포맷 유닛 (250) 은 도 6 의 렌더링 포맷 유닛 (110) 의 것과 유사한 방식으로 동작할 수도 있다. 렌더링 포맷 유닛 (110) 과 함께, 렌더링 포맷 유닛 (250) 은 소스 라우드스피커 셋업 정보 (48) 를 수신할 수도 있다. 일부 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 비트스트림으로부터 획득된다. 다른 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 오디오 디코딩 디바이스 (22) 에서 미리구성된다. 또한, 렌더링 포맷 유닛 (110) 과 같이, 렌더링 포맷 유닛 (250) 은 소스 렌더링 포맷 (258) 을 생성할 수도 있다. 소스 렌더링 포맷 (258) 은 렌더링 포맷 유닛 (110) 에 의해 생성된 소스 렌더링 포맷 (116) 에 일치할 수도 있다.
벡터 생성 유닛 (252) 은 도 6 의 벡터 생성 유닛 (112) 의 것과 유사한 방식으로 동작할 수도 있다. 벡터 생성 유닛 (252) 은 소스 렌더링 포맷 (258) 을 사용하여, 공간 벡터들 (260) 의 세트를 결정할 수도 있다. 공간 벡터들 (260) 은 벡터 생성 유닛 (112) 에 의해 생성된 공간 벡터들 (118) 에 일치할 수도 있다. 메모리 (254) 는 코드북 (262) 을 저장할 수도 있다. 메모리 (254) 는 벡터 디코딩 유닛 (206) 과는 별개일 수도 있고, 오디오 디코딩 디바이스 (22) 의 일반적인 메모리의 부분을 형성할 수도 있다. 코드북 (262) 은 엔트리들의 세트를 포함하고, 이 엔트리들 각각은 개별의 코드-벡터 인덱스를 공간 벡터들 (260) 의 세트의 개별의 공간 벡터에 맵핑한다. 코드북 (262) 은 도 6 의 코드북 (120) 에 일치할 수도 있다.
복원 유닛 (256) 은 소스 라우드스피커 셋업의 특정 라우드스피커들에 대응하는 것으로서 식별된 공간 벡터들을 출력할 수도 있다. 예를 들어, 복원 유닛 (256) 은 공간 벡터들 (72) 을 출력할 수도 있다.
도 12 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛 (207) 의 대안의 구현을 예시하는 블록도이다. 도 12 의 예에서, 벡터 디코딩 유닛 (207) 의 예시의 구현은 벡터 디코딩 유닛 (207B) 으로 라벨링된다. 벡터 디코딩 유닛 (207) 은 코드북 라이브러리 (300) 및 복원 유닛 (304) 을 포함한다. 코드북 라이브러리 (300) 는 메모리를 사용하여 구현될 수도 있다. 코드북 라이브러리 (300) 는 하나 이상의 미리정의된 코드북들 (302A-302N) (총괄하여, "코드북들 (302")) 을 포함한다. 코드북들 (302) 의 각각의 개별 코드북은 하나 이상의 엔트리들의 세트를 포함한다. 각각의 개별 엔트리는 개별의 코드-벡터 인덱스를 개별의 공간 벡터에 맵핑한다. 코드북 라이브러리 (300) 는 도 9 의 코드북 라이브러리 (150) 에 일치할 수도 있다.
도 12 의 예에서, 복원 유닛 (304) 은 소스 라우드스피커 셋업 정보 (48) 를 획득한다. 도 9 의 선택 유닛 (154) 과 유사한 방식으로, 복원 유닛 (304) 은 소스 라우드스피커 셋업 정보 (48) 를 사용하여, 코드북 라이브러리 (300) 에서 적용 가능한 코드북을 식별할 수도 있다. 복원 유닛 (304) 은 소스 라우드스피커 셋업 정보의 라우드스피커들에 대한 적용 가능한 코드북에서 지정된 공간 벡터들을 출력할 수도 있다.
도 13 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 가 객체-기반 오디오 데이터를 인코딩하도록 구성되는 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 13 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 14C 로 라벨링된다. 도 13 의 예에서, 오디오 인코딩 디바이스 (14C) 는 벡터 인코딩 유닛 (68C), 비트스트림 생성 유닛 (52C), 및 메모리 (54) 를 포함한다.
도 13 의 예에서, 벡터 인코딩 유닛 (68C) 은 소스 라우드스피커 셋업 정보 (48) 를 획득한다. 또한, 벡터 인코딩 유닛 (58C) 은 오디오 객체 포지션 정보 (350) 를 획득한다. 오디오 객체 포지션 정보 (350) 는 오디오 객체의 가상 포지션을 지정한다. 벡터 인코딩 유닛 (68B) 은 소스 라우드스피커 셋업 정보 (48) 및 오디오 객체 포지션 정보 (350) 를 사용하여, 오디오 객체에 대한 공간 벡터 표현 데이터 (71B) 를 결정한다. 이하에서 상세히 설명된 도 14 는 벡터 인코딩 유닛 (68C) 의 예시의 구현을 설명한다.
비트스트림 생성 유닛 (52C) 은 오디오 객체에 대한 오디오 신호 (50B) 를 획득한다. 비트스트림 생성 유닛 (52C) 은 비트스트림 (56C) 에서 공간 벡터 표현 데이터 (71B) 및 오디오 신호 (50C) 를 나타내는 데이터를 포함할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52C) 은 MP3, AAC, 보비스 (Vorbis), FLAC, 및 오푸스 (Opus) 와 같은 알려진 오디오 압축 포맷을 사용하여 오디오 신호 (50B) 를 인코딩할 수도 있다. 일부 경우들에서, 비트스트림 생성 유닛 (52C) 은 오디오 신호 (50B) 를 하나의 압축 포맷에서 다른 포맷으로 트랜스코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14C) 는 도 3 및 도 5 의 오디오 인코딩 유닛 (51) 과 같은 오디오 인코딩 유닛을 포함하여, 오디오 신호 (50B) 를 압축 및/또는 트랜스코딩할 수도 있다. 도 13 의 예에서, 메모리 (54) 는 오디오 인코딩 디바이스 (14C) 에 의한 출력 전에 비트스트림 (56C) 의 적어도 일부들을 저장한다.
따라서, 오디오 인코딩 디바이스 (14C) 는 시간 인터벌 동안 오디오 객체의 오디오 신호 (예를 들어, 오디오 신호 (50B)) 및 오디오 객체의 가상 소스 로케이션을 나타내는 데이터 (예를 들어, 오디오 객체 포지션 정보 (350)) 저장하도록 구성된 메모리를 포함한다. 또한, 오디오 인코딩 디바이스 (14C) 는 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함한다. 하나 이상의 프로세서들은, 오디오 객체에 대한 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터 (예를 들어, 소스 라우드스피커 셋업 정보 (48)) 에 기초하여, HOA 도메인에서 오디오 객체의 공간 벡터를 결정하도록 구성된다. 또한, 일부 예들에서 오디오 인코딩 디바이스 (14C) 는, 비트스트림에서, 공간 벡터를 나타내는 데이터 및 오디오 신호를 나타내는 데이터를 포함할 수도 있다. 일부 예들에서, 오디오 신호를 나타내는 데이터는 HOA 도메인에서 데이터의 표현이 아니다. 또한, 일부 예들에서, 시간 인터벌 동안 오디오 신호를 포함하는 사운드필드를 설명하는 HOA 계수들의 세트는 오디오 신호 곱하기 공간 벡터의 트랜스포즈와 동일하다.
부가적으로, 일부 예들에서 공간 벡터 표현 데이터 (71B) 는 소스 라우드스피커 셋업에서 라우드스피커들의 로케이션들을 나타내는 데이터를 포함할 수도 있다. 비트스트림 생성 유닛 (52C) 은 비트스트림 (56C) 에서 소스 라우드스피커 셋업의 라우드스피커들의 로케이션들을 나타내는 데이터를 포함할 수도 있다. 다른 예들에서, 비트스트림 생성 유닛 (52C) 은 비트스트림 (56C) 에서 소스 라우드스피커 셋업의 라우드스피커들의 로케이션들을 나타내는 데이터를 포함하지 않는다.
도 14 는 본 개시물의 하나 이상의 기법들에 따른, 객체-기반 오디오 데이터에 대한 벡터 인코딩 유닛 (68C) 의 예시의 구현을 예시하는 블록도이다. 도 14 의 예에서, 벡터 인코딩 유닛 (68C) 은 렌더링 포맷 유닛 (400), 중간 벡터 유닛 (402), 벡터 완결 유닛 (404), 이득 결정 유닛 (406), 및 양자화 유닛 (408) 을 포함한다.
도 14 의 예에서, 렌더링 포맷 유닛 (400) 은 소스 라우드스피커 셋업 정보 (48) 를 획득한다. 렌더링 포맷 유닛 (400) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 소스 렌더링 포맷 (410) 을 결정한다. 렌더링 포맷 유닛 (400) 은 본 개시물의 다른 곳에서 제공된 예들 중 하나 이상에 따라 소스 렌더링 포맷 (410) 을 결정할 수도 있다.
도 14 의 예에서, 중간 벡터 유닛 (402) 은 소스 렌더링 포맷 (410) 에 기초하여 중간 공간 벡터들 (412) 의 세트를 결정한다. 중간 공간 벡터들 (412) 의 세트의 각각의 개별의 중간 공간 벡터는 소스 라우드스피커 셋업의 개별의 라우드스피커에 대응한다. 예를 들어, 소스 라우드스피커 셋업에서 N 개의 라우드스피커들이 존재하면, 중간 벡터 유닛 (402) 은 N 개의 중간 공간 벡터들을 결정한다. 소스 라우드스피커 셋업에서 각각의 라우드스피커 n 에 대해 (여기서, n 은 1 내지 N 의 범위임), 라우드스피커에 대한 중간 공간 벡터는 와 동일할 수도 있다. 이 식에서, D 는 매트릭스로서 표현된 소스 렌더링 포맷이고 A n 은 N 과 동일한 수의 엘리먼트들의 단일 로우로 이루어진 매트릭스이다. A n 에서의 각각의 엘리먼트는, 그 값이 1 과 동일한 하나의 엘리먼트를 제외하고 0 과 동일하다. 1 과 동일한 엘리먼트의 A n 내의 포지션의 인덱스는 n 과 동일하다.
또한, 도 14 의 예에서, 이득 결정 유닛 (406) 은 소스 라우드스피커 셋업 정보 (48) 및 오디오 객체 로케이션 데이터 (49) 를 획득한다. 오디오 객체 로케이션 데이터 (49) 는 오디오 객체의 가상 로케이션을 지정한다. 예를 들어, 오디오 객체 로케이션 데이터 (49) 는 오디오 객체의 구면 좌표들을 지정할 수도 있다. 도 14 의 예에서, 이득 결정 유닛 (406) 은 이득 팩터들 (416) 의 세트를 결정한다. 이득 팩터들 (416) 의 세트의 각각의 개별의 이득 팩터는 소스 라우드스피커 셋업의 개별의 라우드스피커에 대응한다. 이득 결정 유닛 (406)은 벡터 기반 진폭 패닝 (vector base amplitude panning; VBAP) 을 사용하여, 이득 팩터들 (416) 을 결정할 수도 있다. VBAP 는 청취 포지션으로부터 라우드스피커들의 동일한 거리가 가정되는 경우의 임의의 라우드스피커 셋업으로 가상 오디오 소스들을 배치하는데 사용될 수도 있다. Pulkki 의, 『"Virtual Sound Source Positioning Using Vector Base Amplitude Panning," Journal of Audio Engineering Society, Vol. 45, No. 6, June 1997』은 VBAP 의 설명을 제공한다.
도 15 는 VBAP 를 예시하는 개념도이다. VBAP 에서, 3 개의 스피커들에 의해 출력된 오디오 신호에 적용된 이득 팩터들은, 오디오 신호가 3 개의 라우드스피커들 사이의 액티브 삼각형 (452) 내에 위치된 가상의 소스 포지션 (450) 에서 나온다는 것을, 리스너를 속여 감지하게 한다. 가상의 소스 포지션 (450) 은 오디오 객체의 로케이션 좌표들로 나타낸 포지션일 수 있다. 예를 들어, 도 15 의 예에서 가상 소스 포지션 (450) 은 라우드스피커 (454B) 보다 라우드스피커 (454A) 에 더 가깝다. 따라서, 라우드스피커 (454A) 에 대한 이득 팩터는 라우드스피커 (454B) 에 대한 이득 팩터보다 더 클 수도 있다. 더 많은 수들의 라우드스피커들을 갖거나 또는 2 개의 라우드스피커들을 갖는 다른 예들이 가능하다.
VBAP 는 기하학적 접근을 사용하여 이득 팩터들 (416) 을 계산한다. 각각의 오디오 객체에 대해 3 개의 라우드스피커들이 사용되는 도 15 와 같은 예들에서, 3 개의 라우드스피커들은 삼각형으로 배열되어 벡터 베이스를 형성한다. 각각의 벡터 베이스는 단위 길이로 표준화된 카테시안 좌표들로 주어진 라우드스피커 수들 (k, m, n) 및 라우드스피커 포지션 벡터들 (I k , I m 및 I n ) 에 의해 식별된다. 라우드스피커들 (k, m, 및 n) 에 대한 벡터 베이스는 다음에 의해 정의될 수도 있다:
오디오 객체의 원하는 방향 은 방위각 () 및 고도각 () 으로서 주어질 수도 있다. 는 오디오 객체의 로케이션 좌표일 수 있다. 카테시안 좌표들의 가상 소스의 단위 길이 포지션 벡터 는 따라서 다음에 의해 정의된다:
가상 소스 포지션은 벡터 베이스 및 이득 팩터들 을 갖고 다음에 의해 표현될 수도 있다
벡터 기반 매트릭스를 인버팅함으로써, 요구된 이득 팩터들은 다음에 의해 연산될 수 있다:
사용될 벡터 베이스는 식 (36) 에 따라 결정된다. 먼저, 이득들은 모든 벡터 베이스들에 대해 식 (36) 에 따라 계산된다. 후속으로, 각각의 벡터 베이스에 대해, 이득 팩터들에 대한 최소값은 에 의해 평가된다. 이 최고 값을 갖는 벡터 베이스가 사용된다. 일반적으로, 이득 팩터들은 네거티브이도록 허용되지 않는다. 청취 룸의 음향에 따라, 이득 팩터들은 에너지 보존을 위해 표준화될 수도 있다.
도 14 의 예에서, 벡터 완결 유닛 (404) 은 이득 팩터들 (416) 을 획득한다. 벡터 완결 유닛 (404) 은, 중간 공간 벡터들 (412) 및 이득 팩터들 (416) 에 기초하여, 오디오 객체에 대한 공간 벡터 (418) 를 생성한다. 일부 예들에서, 벡터 완결 유닛 (404) 은 다음의 식을 사용하여 공간 벡터를 결정한다:
상기 식에서, V 는 공간 벡터이고, N 은 소스 라우드스피커 셋업에서의 라우드스피커들의 수이고, g i 는 라우드스피커 i 에 대한 이득 팩터이며, I i 은 라우드스피커 i 에 대한 중간 공간 벡터이다. 이득 결정 유닛 (406) 이 3 개의 라우드스피커들을 갖는 VBAP 를 사용하는 일부 예들에서, 이득 팩터들 (g i ) 중 단지 3 개가 넌-제로이다.
따라서, 벡터 완결 유닛 (404) 이 식 (37) 을 사용하여 공간 벡터 (418) 를 결정하는 예에서, 공간 벡터 (418) 는 복수의 피연산자들의 합에 동일하다. 복수의 피연산자들의 각각의 개별의 피연산자는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응한다. 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 복수의 라우드스피커 로케이션 벡터들은 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함한다. 또한, 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 개별의 라우드스피커 로케이션에 대응하는 피연산자는 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하다. 이 예에서, 개별의 라우드스피커 로케이션에 대한 이득 팩터는 개별의 라우드스피커 로케이션에서 오디오 신호에 대한 개별의 이득을 나타낸다.
따라서, 이 예에서, 공간 벡터 (418) 는 복수의 피연산자들의 합과 동일하다. 복수의 피연산자들의 각각의 개별의 피연산자는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응한다. 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 복수의 라우드스피커 로케이션 벡터들은 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함한다. 또한, 개별의 라우드스피커 로케이션에 대응하는 피연산자는 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하다. 이 예에서, 개별의 라우드스피커 로케이션에 대한 이득 팩터는 개별의 라우드스피커 로케이션에서 오디오 신호에 대한 개별의 이득을 나타낸다.
요약하면, 일부 예들에서, 비디오 인코딩 유닛 (68C) 의 렌더링 포맷 유닛 (400) 은 소스 라우드스피커 로케이션들에서 라우드스피커들에 대한 라우드스피커 피드들로 HOA 계수들의 세트를 렌더링하기 위한 렌더링 포맷을 결정할 수 있다. 또한, 벡터 완결 유닛 (404) 은 복수의 라우드스피커 로케이션 벡터들을 결정할 수 있다. 복수의 라우드스피커 위치 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응할 수 있다. 복수의 라우드스피커 로케이션 벡터를 결정하기 위해, 이득 결정 유닛 (406) 은, 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대하여, 오디오 객체의 로케이션 좌표들에 기초하여 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정할 수 있다. 개별의 라우드스피커 로케이션에 대한 이득 팩터는 개별의 라우드스피커 로케이션에서의 오디오 신호에 대한 개별의 이득을 나타낼 수 있다. 또한, 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 오디오 객체의 로케이션 좌표들에 기초하여, 중간 벡터 유닛 (402) 을 결정하는 것은 렌더링 포맷에 기초하여 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터를 결정할 수 있다. 벡터 완결 유닛 (404) 은 공간 벡터를 복수의 피연산자들의 합으로서 결정할 수 있으며, 복수의 피연산자들의 각각의 개별의 피연산자는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응한다. 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 개별의 라우드스피커 로케이션에 대응하는 피연산자는 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터와 동등하다.
양자화 유닛 (408) 은 오디오 객체에 대한 공간 벡터를 양자화한다. 예를 들어, 양자화 유닛 (408) 은 본 개시물의 다른 곳에서 설명된 벡터 양자화 기법들에 따라 공간 벡터를 양자화할 수도 있다. 예를 들어, 양자화 유닛 (408) 은 도 17 과 관련하여 설명된 스칼라 양자화, 호프만 코딩을 갖는 스칼라 양자화, 또는 벡터 양자화 기법들을 사용하여 공간 벡터 (418) 를 양자화할 수도 있다. 따라서, 비트스트림 (70C) 에 포함되는 공간 벡터를 나타내는 데이터는 양자화된 공간 벡터이다.
위에서 논의된 바와 같이, 공간 벡터 (418) 는 복수의 피연산자들의 합과 동일하거나 또는 동등할 수도 있다. 본 개시물의 목적을 위해, (1) 제 1 엘리먼트의 값이 제 2 엘리먼트의 값과 수학적으로 동일한 것, (2) (예를 들어, 비트 심도, 레지스터 한계들, 부동 소수점 표현, 고정 소수점 표현, 바이너리-코딩된 십진법 표현 등으로 인해) 라운딩되는 경우의 제 1 엘리먼트의 값이, (예를 들어, 비트 심도, 레지스터 한계들, 부동-소수점 표현, 고정 소수점 표현, 바이너리-코딩된 십진법 표현 등으로 인해) 라운딩 되는 경우의 제 2 엘리먼트의 값과 동일한 것, 또는 (3) 제 1 엘리먼트의 값이 제 2 엘리먼트의 값과 동일한 것 중 어느 하나가 참인 경우, 제 1 엘리먼트는 제 2 엘리먼트와 동등한 것으로 간주될 수도 있다.
도 16 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스 (22) 가 객체-기반 오디오 데이터를 디코딩하도록 구성되는 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 16 에 도시된 오디오 디코딩 디바이스 (22) 의 예시의 구현은 22C 로 라벨링된다. 도 16 의 예에서, 오디오 디코딩 디바이스 (22C) 는 메모리 (200), 디멀티플렉싱 유닛 (202C), 오디오 디코딩 유닛 (66), 벡터 디코딩 유닛 (209), HOA 생성 유닛 (208B), 및 렌더링 유닛 (210) 을 포함한다. 일반적으로, 메모리 (200), 디멀티플렉싱 유닛 (202C), 오디오 디코딩 유닛 (66), HOA 생성 유닛 (208B), 및 렌더링 유닛 (210) 은 도 10 의 예의 메모리 (200), 디멀티플렉싱 유닛 (202B), 오디오 디코딩 유닛 (204), HOA 생성 유닛 (208A), 및 렌더링 유닛 (210) 과 관련하여 설명된 것과 유사한 방식으로 동작할 수도 있다. 다른 예들에서, 도 14 와 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현은 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 베이스 또는 위성 디바이스에서 구현될 수도 있다.
도 16 의 예에서, 오디오 디코딩 디바이스 (22C) 는 비트스트림 (56C) 을 획득한다. 비트스트림 (56C) 은 오디오 객체의 인코딩된 객체-기반 오디오 신호 및 오디오 객체의 공간 벡터를 나타내는 데이터를 포함할 수도 있다. 도 16 의 예에서, 객체-기반 오디오 신호는 HOA 도메인에서의 데이터에 기초, 데이터로부터 도출, 또는 데이터를 나타내지 않는다. 그러나, 오디오 객체의 공간 벡터는 HOA 도메인에 있다. 도 16 의 예에서, 메모리 (200) 는 비트스트림 (56C) 의 적어도 일부들을 저장하도록 구성되고, 따라서 오디오 객체의 공간 벡터를 나타내는 데이터 및 오디오 객체의 오디오 신호를 나타내는 데이터를 저장하도록 구성된다.
디멀티플렉싱 유닛 (202C) 은 비트스트림 (56C) 으로부터 공간 벡터 표현 데이터 (71B) 를 획득할 수도 있다. 공간 벡터 표현 데이터 (71B) 는 각각의 오디오 객체에 대한 공간 벡터들을 나타내는 데이터를 포함한다. 따라서, 디멀티플렉싱 유닛 (202C) 은, 비트스트림 (56C) 으로부터 오디오 객체의 오디오 신호를 나타내는 데이터를 획득할 수도 있고, 비트스트림 (56C) 으로부터 오디오 객체에 대한 공간 벡터를 나타내는 데이터를 획득할 수도 있다. 예들에서, 예컨대 공간 벡터들을 나타내는 데이터가 양자화되는 경우에서, 벡터 디코딩 유닛 (209) 은 공간 벡터들을 역 양자화하여, 오디오 객체들의 공간 벡터들 (72) 을 결정할 수도 있다.
HOA 생성 유닛 (208B) 은 그 후, 도 10 과 관련하여 설명된 방식으로 공간 벡터들 (72) 을 사용할 수도 있다. 예를 들어, HOA 생성 유닛 (208B) 은 공간 벡터들 (72) 및 오디오 신호 (70) 에 기초하여 HOA 사운드필드, 예컨대 HOA 계수들 (212B) 을 생성할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22B) 는 비트스트림을 저장하도록 구성된 메모리 (58) 를 포함한다. 부가적으로, 오디오 디코딩 디바이스 (22B) 는 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함한다. 하나 이상의 프로세서들은, 비트스트림에서의 데이터에 기초하여, 오디오 객체의 오디오 신호를 결정하도록 구성되고, 오디오 신호는 시간 인터벌에 대응한다. 또한, 하나 이상의 프로세서들은 비트스트림에서의 데이터에 기초하여, 오디오 객체에 대한 공간 벡터를 결정하도록 구성된다. 이 예에서, 공간 벡터는 HOA 도메인에서 정의된다. 또한, 일부 예들에서, 하나 이상의 프로세서들은 오디오 객체의 오디오 신호 및 공간 벡터를 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수들 (212B) 의 세트로 컨버팅한다. 본 개시물의 다른 곳에서 설명된 바와 같이, HOA 생성 유닛 (208B) 은, HOA 계수들의 세트가 오디오 신호 곱하기 공간 벡터의 트랜스포즈와 동등하도록 HOA 계수들의 세트를 결정할 수도 있다.
도 16 의 예에서, 렌더링 유닛 (210) 은 도 10 의 렌더링 유닛 (210) 과 유사한 방식으로 동작할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 렌더링 포맷 (예를 들어, 로컬 렌더링 매트릭스) 를 HOA 계수들 (212B) 에 적용함으로써 복수의 오디오 신호들 (26) 을 생성할 수도 있다. 복수의 오디오 신호들 (26) 의 각각의 개별의 오디오 신호는 도 1 의 라우드스피커들 (24) 과 같은 복수의 라우드스피커들에서 개별의 라우드스피커에 대응할 수도 있다.
일부 예들에서, 렌더링 유닛 (210B) 은 로컬 라우드스피커 셋업의 로케이션들을 나타내는 정보 (28) 에 기초하여 로컬 렌더링 포맷을 적응시킬 수도 있다. 렌더링 유닛 (210B) 은 도 19 와 관련하여 이하에서 설명된 방식으로 로컬 렌더링 포맷을 적응시킬 수도 있다.
도 17 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 가 공간 벡터들을 양자화하도록 구성되는 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 17 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 14D 로 라벨링된다. 도 17 의 예에서, 오디오 인코딩 디바이스 (14D) 는 벡터 인코딩 유닛 (68D), 양자화 유닛 (500), 비트스트림 생성 유닛 (52D), 및 메모리 (54) 를 포함한다.
도 17 의 예에서, 벡터 인코딩 유닛 (68D) 은 도 5 및/또는 도 13 과 관련하여 전술된 것과 유사한 방식으로 동작할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14D) 가 채널-기반 오디오를 인코딩하고 있으면, 벡터 인코딩 유닛 (68D) 은 소스 라우드스피커 셋업 정보 (48) 를 획득할 수도 있다. 벡터 인코딩 유닛 (68) 은 소스 라우드스피커 셋업 정보 (48) 에 의해 지정된 라우드스피커들의 포지션들에 기초하여 공간 벡터들의 세트를 결정할 수도 있다. 오디오 인코딩 디바이스 (14D) 가 객체-기반 오디오를 인코딩하고 있으면, 벡터 인코딩 유닛 (68D) 은 소스 라우드스피커 셋업 정보 (48) 에 추가하여 오디오 객체 포지션 정보 (350) 를 획득할 수도 있다. 오디오 객체 포지션 정보 (49) 는 오디오 객체의 가상 소스 로케이션을 지정할 수도 있다. 이 예에서, 공간 벡터 유닛 (68D) 은, 도 13 의 예에 도시된 벡터 인코딩 유닛 (68C) 이 오디오 객체에 대한 공간 벡터를 결정하는 동일한 방식으로 오디오 객체에 대한 공간 벡터를 결정할 수도 있다. 일부 예들에서, 공간 벡터 유닛 (68D) 은 채널-기반 오디오 및 객체-기반 오디오 양자 모두에 대한 공간 벡터들을 결정하도록 구성된다. 다른 예들에서, 벡터 인코딩 유닛 (68D) 은 채널-기반 오디오 또는 객체-기반 오디오 중 단지 하나에 대한 공간 벡터들을 결정하도록 구성된다.
오디오 인코딩 디바이스 (14D) 의 양자화 유닛 (500) 은 벡터 인코딩 유닛 (68C) 에 의해 결정된 공간 벡터들을 양자화한다. 양자화 유닛 (500) 은 다양한 양자화 기법들을 사용하여 공간 벡터를 양자화할 수도 있다. 양자화 유닛 (500) 은 단지 단일 양자화 기법을 수행하도록 구성될 수도 있고, 또는 다중 양자화 기법들을 수행하도록 구성될 수도 있다. 양자화 유닛 (500) 이 다중 양자화 기법들을 수행하도록 구성되는 예들에서, 양자화 유닛 (500) 은 양자화 기법들 중 어느 것을 사용할지를 나타내는 데이터를 수신할 수도 있고, 또는 양자화 기법들 중 어느 것을 적용할지를 내부적으로 결정할 수도 있다.
일 예시의 양자화 기법에서, 공간 벡터는 채널에 대한 벡터 인코딩 유닛 (68D) 에 의해 생성될 수도 있고 또는 객체 (i) 는 V i 로 표기된다. 이 예에서, 양자화 유닛 (500) 은, 가 와 동등하도록 중간 공간 벡터 를 계산할 수도 있고, 여기서 은 양자화 스텝 사이즈일 수도 있다. 또한, 이 예에서, 양자화 유닛 (500) 은 중간 공간 벡터 를 양자화할 수도 있다. 중간 공간 벡터 의 양자화된 버전은 로 표기될 수도 있다. 또한, 양자화 유닛 (500) 은 를 양자화할 수도 있다. 의 양자화된 버전은 로 표기될 수도 있다. 양자화 유닛 (500) 은 비트스트림 (56D) 에 포함을 위해 및 을 출력할 수도 있다. 따라서, 양자화 유닛 (500) 은 오디오 신호 (50D) 에 대한 양자화된 벡터 데이터의 세트를 출력할 수도 있다. 오디오 신호 (50C) 에 대한 양자화된 벡터 데이터의 세트는 및 을 포함할 수도 있다.
양자화 유닛 (500) 은 다양한 방식들로 중간 공간 벡터 를 양자화할 수도 있다. 일 예에서, 양자화 유닛 (500) 은 스칼라 양자화 (SQ) 를 중간 공간 벡터 에 적용할 수도 있다. 다른 예시의 양자화 기법에서, 양자화 유닛 (200) 은 허프만 코딩을 갖는 스칼라 양자화를 중간 공간 벡터 에 적용할 수도 있다. 다른 예시의 양자화 기법에서, 양자화 유닛 (200) 은 벡터 양자화를 중간 공간 벡터 에 적용할 수도 있다. 양자화 유닛 (200) 이 스칼라 양자화 기법, 스칼라 양자화 플러스 허프만 코딩 기법, 또는 벡터 양자화 기법을 적용하는 예들에서, 오디오 디코딩 디바이스 (22) 는 양자화된 공간 벡터를 역 양자화할 수도 있다.
개념적으로, 스칼라 양자화에서, 수 라인은 복수의 대역들로 분할되고, 대역들 각각은 상이한 스칼라 값에 대응한다. 양자화 유닛 (500) 이 스칼라 양자화를 중간 공간 벡터 에 적용하는 경우, 양자화 유닛 (500) 은 개별의 엘리먼트에 의해 지정된 값을 포함하는 대역에 대응하는 스칼라 값으로 중간 공간 벡터 의 각각의 개별의 엘리먼트를 대체한다. 설명의 용이함을 위해, 본 개시물은 공간 벡터들의 엘리먼트들에 의해 지정된 값들을 포함하는 대역들에 대응하는 스칼라 값들을 "양자화된 값들" 로서 지칭할 수도 있다. 이 예에서, 양자화 유닛 (500) 은 양자화된 값들을 포함하는 양자화된 공간 벡터 를 출력할 수도 있다.
스칼라 양자화 플러스 허프만 코딩 기법은 스칼라 양자화 기법과 유사할 수도 있다. 그러나, 양자화 유닛 (500) 은 부가적으로, 양자화된 값들 각각에 대한 허프만 코드를 결정한다. 양자화 유닛 (500) 은 공간 벡터의 양자화된 값들을 대응하는 허프만 코드들로 대체한다. 따라서, 양자화된 공간 벡터 의 각각의 엘리먼트는 허프만 코드를 지정한다. 허프만 코딩은, 엘리먼트들 각각이 데이터 압축을 증가시킬 수도 있는 고정 길이 값 대신에 가변 길이 값으로서 표현되는 것을 허용한다. 오디오 디코딩 디바이스 (22D) 는 허프만 코드들에 대응하는 양자화된 값들을 결정하고 양자화된 값들을 그 원래의 비트 심도들에 재저장함으로써 공간 벡터의 역 양자화된 버전을 결정할 수도 있다.
양자화 유닛 (500) 이 중간 공간 벡터 에 벡터 양자화를 적용하는 적어도 일부 예들에서, 양자화 유닛 (500) 은 중간 공간 벡터 를 더 낮은 디멘전의 별개의 서브공간에서 값들의 세트로 변환할 수도 있다. 설명의 용이함을 위해, 본 개시물은 더 낮은 디멘전의 별개의 서브공간을 "감소된 디멘전 세트" 로서 그리고 공간 벡터의 원래의 디멘전들을 "풀 디멘전 세트" 로서 지칭할 수도 있다. 예를 들어, 풀 디멘전 세트는 22 개의 디멘전들로 이루어질 수도 있고 감소된 디멘전 세트는 8 개의 디멘전들로 이루어질 수도 있다. 따라서, 이 경우에서, 양자화 유닛 (500) 은 중간 공간 벡터 를 22 개의 값들의 세트로부터 8 개의 값들의 세트로 변환한다. 이 변환은 공간 벡터의 상위-디멘전 공간으로부터 하위 디멘전의 서브 공간으로의 프로젝션의 형태를 취할 수도 있다.
양자화 유닛 (500) 이 벡터 양자화를 적용하는 적어도 일부 예들에서, 양자화 유닛 (500) 은 엔트리들의 세트를 포함하는 코드북으로 구성된다. 코드북은 미리정의되거나 또는 동적으로 결정될 수도 있다. 코드북은 공간 벡터들의 통계적 분석에 기초할 수도 있다. 코드북에서의 각각의 엔트리는 하위-디멘전 서브공간에서의 포인트를 나타낸다. 풀 디멘전 세트로부터 감소된 디멘전 세트로 공간 벡터를 변환한 후에, 양자화 유닛 (500) 은 변환된 공간 벡터에 대응하는 코드북 엔트리를 결정할 수도 있다. 코드북에서의 코드북 엔트리들 중에서, 변환된 공간 벡터에 대응하는 코드북 엔트리는 변환된 공간 벡터에 의해 지정된 포인트에 가장 가까운 포인트를 지정한다. 일 예에서, 양자화 유닛 (500) 은 식별된 코드북 엔트리에 의해 지정된 벡터를 양자화된 공간 벡터로서 출력한다. 다른 예에서, 양자화 유닛 (200) 은 변환된 공간 벡터에 대응하는 코드북 엔트리의 인덱스를 지정하는 코드-벡터 인덱스의 형태로 양자화된 공간 벡터를 출력한다. 예를 들어, 변환된 공간 벡터에 대응하는 코드북 엔트리가 코드북에서 8 번째 엔트리이면, 코드-벡터 인덱스는 8 과 동일할 수도 있다. 이 예에서, 오디오 코딩 디바이스 (22) 는 코드북에서 대응하는 엔트리를 검색함으로써 코드-벡터 인덱스를 역 양자화할 수도 있다. 오디오 디코딩 디바이스 (22D) 는 풀 디멘전 세트에 있지만 감소된 디멘전 세트에 있지 않은 공간 벡터의 컴포넌트들이 0 과 동일하다고 가정함으로써 공간 벡터의 역 양자화된 버전을 결정할 수도 있다.
도 17 의 예에서, 오디오 인코딩 디바이스 (14D) 의 비트스트림 생성 유닛 (52D) 은 양자화 유닛 (200) 으로부터 양자화된 공간 벡터들 (204) 을 획득하고, 오디오 신호들 (50C) 을 획득하며, 비트스트림 (56D) 을 출력한다. 오디오 인코딩 디바이스 (14D) 가 채널-기반 오디오를 인코딩하고 있는 예들에서, 비트스트림 생성 유닛 (52D) 은 각각의 개별의 채널에 대한 오디오 신호 및 양자화된 공간 벡터를 획득할 수도 있다. 오디오 인코딩 디바이스 (14) 가 객체-기반 오디오를 인코딩하고 있는 예들에서, 비트스트림 생성 유닛 (52D) 은 각각의 개별의 객체에 대한 오디오 신호 및 양자화된 공간 벡터를 획득할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52D) 은 더 좋은 데이터 압축을 위해 오디오 신호들 (50C) 을 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52D) 은 MP3, AAC, 보비스, FLAC, 및 오푸스와 같은 알려진 오디오 압축 포맷을 사용하여 오디오 신호들 (50C) 각각을 인코딩할 수도 있다. 일부 경우들에서, 비트스트림 생성 유닛 (52C) 은 오디오 신호들 (50C) 을 하나의 압축 포맷에서 다른 포맷으로 트랜스코딩할 수도 있다. 비트스트림 생성 유닛 (52D) 은 인코딩된 오디오 신호들을 동반하는 메타데이터로서 비트스트림 (56C) 에서 양자화된 공간 벡터들을 포함할 수도 있다.
따라서, 오디오 인코딩 디바이스 (14D) 는, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 멀티-채널 오디오 신호 (50)) 를 수신하고; 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합하여, 멀티-채널 오디오 신호를 나타내는 고차 앰비소닉 (HOA) 계수들의 세트를 나타내는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터들을 획득하며; 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56D)) 에서, 멀티-채널 오디오 신호 (예를 들어, 오디오 신호 (50C)) 의 표현 및 복수의 공간 포지셔닝 벡터들 (예를 들어, 양자화된 벡터 데이터 (554)) 의 표시를 인코딩하도록 구성된 하나 이상의 프로세서들을 포함할 수도 있다. 또한, 오디오 인코딩 디바이스 (14A) 는, 코딩된 오디오 비트스트림을 저장하도록 구성된, 하나 이상의 프로세서들에 전기적으로 커플링된 메모리 (예를 들어, 메모리 (54)) 를 포함할 수도 있다.
도 18 은 본 개시물의 하나 이상의 기법들에 따른, 도 17 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 18 에 도시된 오디오 디코딩 디바이스 (22) 의 구현은 오디오 디코딩 디바이스 (22D) 로 라벨링된다. 도 10 과 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현과 유사하게, 도 18 에서의 오디오 디코딩 디바이스 (22) 의 구현은 메모리 (200), 디멀티플렉싱 유닛 (202D), 오디오 디코딩 유닛 (204), HOA 생성 유닛 (208C), 및 렌더링 유닛 (210) 을 포함한다.
도 10 과 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현들과 대조적으로, 도 18 과 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현은 벡터 디코딩 유닛 (207) 대신에 역 양자화 유닛 (550) 을 포함할 수도 있다. 다른 예들에서, 오디오 디코딩 디바이스 (22D) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 기반 또는 위성 디바이스에서 구현될 수도 있다.
메모리 (200), 디멀티플렉싱 유닛 (202D), 오디오 디코딩 유닛 (204), HOA 생성 유닛 (208C), 및 렌더링 유닛 (210) 은 도 10 의 예와 관련하여 본 개시물의 다른 곳에서 설명된 것과 동일한 방식으로 동작할 수도 있다. 그러나, 디멀티플렉싱 유닛 (202D) 은 비트스트림 (56D) 으로부터 양자화된 벡터 데이터 (554) 의 세트들을 획득할 수도 있다. 양자화된 벡터 데이터의 각각의 개별의 세트는 오디오 신호들 (70) 의 개별의 신호에 대응한다. 도 18 의 예에서, 양자화된 벡터 데이터 (554) 의 세트들은 V' 1 내지 V' N 으로 표기된다. 역 양자화 유닛 (550) 은 양자화된 벡터 데이터 (554) 의 세트들을 사용하여, 역 양자화된 공간 벡터들 (72) 을 결정할 수도 있다. 역 양자화 유닛 (550) 은 역 양자화된 공간 벡터들 (72) 을 오디오 디코딩 디바이스 (22D) 의 하나 이상의 컴포넌트들, 예컨대 HOA 생성 유닛 (208C) 에 제공할 수도 있다.
역 양자화 유닛 (550) 은 양자화된 벡터 데이터 (554) 의 세트들을 사용하여 다양한 방식들로 역 양자화된 벡터들을 결정할 수도 있다. 일 예에서, 양자화된 벡터 데이터의 각각의 세트는 오디오 신호 에 대한 양자화된 공간 벡터 및 양자화된 양자화 스텝 사이즈 를 포함한다. 이 예에서, 역 양자화 유닛 (550) 은 양자화된 공간 벡터 및 양자화된 양자화 스텝 사이즈 에 기초하여 역 양자화된 공간 벡터 를 결정할 수도 있다. 예를 들어, 역 양자화 유닛 (550) 은 이도록, 역 양자화된 공간 벡터 를 결정할 수도 있다. 역 양자화된 공간 벡터 및 오디오 신호 에 기초하여, HOA 생성 유닛 (208C) 은 HOA 도메인 표현을 로서 결정할 수도 있다. 본 개시물의 다른 곳에서 설명된 바와 같이, 렌더링 유닛 (210) 은 로컬 렌더링 포맷 을 획득할 수도 있다. 또한, 라우드스피커 피드들 (80) 은 로 표기될 수도 있다. 렌더링 유닛 (210C) 은 로서 라우드스피커 피드들 (26) 을 생성할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22D) 는 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56D)) 을 저장하도록 구성된 메모리 (예를 들어, 메모리 (200)) 를 포함할 수도 있다. 오디오 디코딩 디바이스 (22D) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 코딩된 오디오 신호 (62)) 의 표현을 획득하고; 소스 라우드스피커 구성 (예를 들어, 공간 포지셔닝 벡터들 (72)) 에 기초하는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터 (SPV) 들의 표현을 획득하며; 멀티-채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드 (예를 들어, HOA 계수들 (212C)) 를 생성하도록 구성되고, 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 더 포함할 수도 있다.
도 19 는 본 개시물의 하나 이상의 기법들에 따른, 렌더링 유닛 (210) 의 예시의 구현을 예시하는 블록도이다. 도 19 에 예시된 바와 같이, 렌더링 유닛 (210) 은 리스너 로케이션 유닛 (610), 라우드스피커 포지션 유닛 (612), 렌더링 포맷 유닛 (614), 메모리 (615), 및 라우드스피커 피드 생성 유닛 (616) 을 포함할 수도 있다.
리스너 로케이션 유닛 (610) 은 도 1 의 라우드스피커들 (24) 과 같은, 복수의 라우드스피커들의 리스너의 로케이션을 결정하도록 구성될 수도 있다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 리스너의 로케이션을 주기적으로 (예를 들어, 1 초, 5 초, 10 초, 30 초, 1 분, 5 분, 10 분 등 마다) 결정할 수도 있다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 리스너에 의해 포지셔닝된 디바이스에 의해 생성된 신호에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 디바이스들의 일부 예들은 모바일 컴퓨팅 디바이스들, 비디오 게임 제어기들, 원격 제어들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 디바이스를 포함하지만 이에 제한되지는 않는다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 하나 이상의 센서들에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 디바이스들의 일부 예들은 카메라들, 마이크로폰들, (예를 들어, 퍼니처, 비히클 시트들에 임베딩되거나 부착된) 압력 센서들, 안전벨트 센서들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 센서를 포함하지만 이에 제한되지는 않는다. 리스너 로케이션 유닛 (610) 은 렌더링 유닛 (210) 의 하나 이상의 다른 컴포넌트들, 예컨대 렌더링 포맷 유닛 (614) 에 리스너의 포지션의 표시 (618) 를 제공할 수도 있다.
라우드스피커 포지션 유닛 (612) 은 도 1 의 라우드스피커들 (24) 과 같은 복수의 로컬 라우드스피커들의 포지션들의 표현을 획득하도록 구성될 수도 있다. 일부 예들에서, 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 복수의 로컬 라우드스피커들의 포지션들의 표현을 결정할 수도 있다. 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (28) 를 광범위한 소스들로부터 획득할 수도 있다. 일 예로서, 사용자/리스너는 오디오 디코딩 유닛 (22) 의 사용자 인터페이스를 통해 로컬 라우드스피커 셋업 정보 (28) 를 수동으로 입력할 수도 있다. 다른 예로서, 라우드스피커 포지션 유닛 (612) 은, 복수의 로컬 라우드스피커들로 하여금, 다양한 톤들을 방출하게 하고 마이크로폰을 이용하여 톤들에 기초한 로컬 라우드스피커 셋업 정보를 결정하게 할 수도 있다. 다른 예로서, 라우드스피커 포지션 유닛 (612) 은 하나 이상의 카메라들로부터 이미지들을 수신하고, 이미지 인식을 수행하여 이미지들에 기초한 로컬 라우드스피커 셋업 정보 (28) 를 결정할 수도 있다. 라우드스피커 포지션 유닛 (612) 은 복수의 로컬 라우드스피커들의 포지션들의 표현 (620) 을 렌더링 유닛 (210) 의 하나 이상의 다른 컴포넌트들, 예컨대 렌더링 포맷 유닛 (614) 에 제공할 수도 있다. 다른 예로서, 로컬 라우드스피커 셋업 정보 (28) 는 오디오 디코딩 유닛 (22) 으로 (예를 들어, 공장에서) 미리-프로그래밍될 수도 있다. 예를 들어, 라우드스피커들 (24) 이 비히클에 집적되는 경우, 로컬 라우드스피커 셋업 정보 (28) 는 비히클의 제조자 및/또는 라우드스피커들 (24) 의 인스톨러에 의해 오디오 디코딩 유닛 (22) 안에 미리-프로그래밍될 수도 있다.
렌더링 포맷 유닛 (614) 은 복수의 로컬 라우드스피커들의 포지션들의 표현 (예를 들어, 로컬 재생산 레이아웃) 및 복수의 로컬 라우드스피커들의 리스너의 포지션에 기초하여 로컬 렌더링 포맷 (622) 을 생성하도록 구성될 수도 있다. 일부 예들에서, 렌더링 포맷 유닛 (614) 은, HOA 계수들 (212) 이 라우드스피커 피드들로 렌더링되고 복수의 로컬 라우드스피커들을 통해 재생되는 경우, 음향 "스윗 스폿" 이 리스너의 포지션에 또는 부근에 위치되도록 로컬 렌더링 포맷 (622) 을 생성할 수도 있다. 일부 예들에서, 로컬 렌더링 포맷 (622) 을 생성하기 위해, 렌더링 포맷 유닛 (614) 은 로컬 렌더링 매트릭스 () 를 생성할 수도 있다. 렌더링 포맷 유닛 (614) 은 로컬 렌더링 포맷 (622) 을 렌더링 유닛 (210) 의 하나 이상의 다른 컴포넌트들, 예컨대 라우드스피커 피드 생성 유닛 (616) 및/또는 메모리 (615) 에 제공할 수도 있다.
메모리 (615) 는 로컬 렌더링 포맷, 예컨대 로컬 렌더링 포맷 (622) 을 저장하도록 구성될 수도 있다. 로컬 렌더링 포맷 (622) 이 로컬 렌더링 매트릭스 () 를 포함하는 경우, 메모리 (615) 는 로컬 렌더링 매트릭스 () 를 저장하도록 구성될 수도 있다.
라우드스피커 피드 생성 유닛 (616) 은 복수의 로컬 라우드스피커들의 개별의 로컬 라우드스피커에 각각 대응하는 복수의 출력 오디오 신호들로 HAO 계수들을 렌더링하도록 구성될 수도 있다. 도 19 의 예에서, 라우드스피커 피드 생성 유닛 (616) 은, 결과의 라우드스피커 피드들 (26) 이 복수의 로컬 라우드스피커들을 통해 재생되는 경우, 음향 "스윗 스폿" 이 리스너 로케이션 유닛 (610) 에 의해 결정된 바와 같이 리스너의 포지션에 또는 부근에 위치되도록 로컬 렌더링 포맷 (622) 에 기초하여 HOA 계수들을 렌더링할 수도 있다. 일부 예들에서, 라우드스피커 피드 생성 유닛 (616) 은 식 (35) 에 따라 라우드스피커 피드들 (26) 을 생성할 수도 있고, 여기서 는 라우드스피커 피드들 (26) 을 나타내고, H 는 HOA 계수들 (212) 이며, 는 로컬 렌더링 매트릭스의 트랜스포즈이다.
도 20 은 본 개시물의 하나 이상의 기법들에 따른, 자동차 스피커 재생 환경을 예시한다. 도 20 에 예시된 바와 같이, 일부 예들에서, 오디오 디코딩 디바이스 (22) 는 비히클, 예컨대 자동차 (2000) 에 포함될 수도 있다. 일부 예들에서, 비히클 (2000) 은 하나 이상의 탑승자 센서들을 포함할 수도 있다. 비히클 (2000) 에 포함될 수도 있는 탑승자 센서들의 예들은, 안전벨트 센서들, 및 비히클 (2000) 의 시트들 안에 집적된 압력 센서들을 포함하지만, 반드시 이에 제한되지는 않는다.
도 21 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작을 예시하는 흐름도이다. 도 21 의 기법들은 도 1, 도 3, 도 5, 도 13, 및 도 17 의 오디오 인코딩 디바이스 (14) 와 같은 오디오 인코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 21 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 인코딩 디바이스 (14) 는 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호를 수신할 수도 있다 (2102). 예를 들어, 오디오 인코딩 디바이스 (14) 는 5.1 서라운드 사운드 포맷에서 (즉, 5.1 의 소스 라우드스피커 구성에 대해) 오디오 데이터의 6-채널들을 수신할 수도 있다. 위에서 논의된 바와 같이, 오디오 인코딩 디바이스 (14) 에 의해 수신된 멀티-채널 오디오 신호는 도 1 의 라이브 오디오 데이터 (10) 및/또는 미리-생성된 오디오 데이터 (12) 를 포함할 수도 있다.
오디오 인코딩 디바이스 (14) 는, 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합 가능한 고차 앰비소닉스 (HOA) 에서 복수의 공간 포지셔닝 벡터들을 획득하여, 멀티-채널 오디오 신호를 나타내는 HOA 사운드필드를 생성할 수도 있다 (2104). 일부 예들에서, 복수의 공간 포지셔닝 벡터들은 멀티채널 오디오 신호와 결합 가능하여 상기의 식 (20) 에 따라 멀티-채널 오디오 신호를 나타내는 HOA 사운드필드를 생성할 수도 있다.
오디오 인코딩 디바이스 (14) 는, 코딩된 오디오 비트스트림에서, 멀티-채널 오디오 신호의 표현 및 복수의 공간 포지셔닝 벡터들의 표시를 인코딩할 수도 있다 (2016). 일 예로서, 오디오 인코딩 디바이스 (14A) 의 비트스트림 생성 유닛 (52A) 은 코딩된 오디오 데이터 (62) 의 표현 및 라우드스피커 포지션 정보 (48) 의 표현을 비트스트림 (56A) 에서 인코딩할 수도 있다. 다른 예로서, 오디오 인코딩 디바이스 (14B) 의 비트스트림 생성 유닛 (52B) 은 코딩된 오디오 데이터 (62) 의 표현 및 공간 벡터 표현 데이터 (71A) 를 비트스트림 (56B) 에서 인코딩할 수도 있다. 다른 예로서, 오디오 인코딩 디바이스 (14D) 의 비트스트림 생성 유닛 (52D) 은 오디오 신호 (50C) 의 표현 및 양자화된 벡터 데이터 (554) 의 표현을 비트스트림 (56D) 에서 인코딩할 수도 있다.
도 22 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 22 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 22 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 코딩된 오디오 비트스트림을 획득할 수도 있다 (2202). 일 예로서, 오디오 디코딩 디바이스 (22) 는, 유선 또는 무선 채널일 수도 있는 송신 채널, 데이터 저장 디바이스 등을 통해 비트스트림을 획득할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22) 는 저장 매체 또는 파일 서버로부터 비트스트림을 획득할 수도 있다.
오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호의 표현을 획득할 수도 있다 (2204). 예를 들어, 오디오 디코딩 유닛 (204) 은, 비트스트림으로부터, 5.1 서라운드 사운드 포맷에서 (즉, 5.1 의 소스 라우드스피커에 대해) 오디오 데이터의 6-채널들을 획득할 수도 있다.
오디오 디코딩 디바이스 (22) 는 소스 라우드스피커 구성에 기초하는 고차 앰비소닉스 (HOA) 에서 복수의 공간 포지셔닝 벡터들의 표현을 획득할 수도 있다 (2206). 일 예로서, 오디오 디코딩 디바이스 (22A) 의 벡터 생성 유닛 (206) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 생성할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22B) 의 벡터 디코딩 유닛 (207) 은 공간 벡터 표현 데이터 (71A) 로부터, 소스 라우드스피커 셋업 정보 (48) 에 기초하는 공간 포지셔닝 벡터들 (72) 을 디코딩할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22D) 의 역 양자화 유닛 (550) 은, 소스 라우드스피커 셋업 정보 (48) 에 기초하는, 공간 포지셔닝 벡터들 (72) 을 생성하도록 양자화된 벡터 데이터 (554) 를 역 양자화할 수도 있다.
오디오 디코딩 디바이스 (22) 는 멀티채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드를 생성할 수도 있다 (2208). 예를 들어, HOA 생성 유닛 (208A) 은 상기의 식 (20) 에 따라 멀티-채널 오디오 신호 (70) 및 공간 포지셔닝 벡터들 (72) 에 기초하여 HOA 계수들 (212A) 을 생성할 수도 있다.
오디오 디코딩 디바이스 (22) 는 HOA 사운드필드를 렌더링하여 복수의 오디오 신호들을 생성할 수도 있다 (2210). 예를 들어, (오디오 디코딩 디바이스 (22) 에 포함되거나 또는 포함되지 않을 수도 있는) 렌더링 유닛 (210) 은 로컬 렌더링 구성 (예를 들어, 로컬 렌더링 포맷) 에 기초하여 복수의 오디오 신호들을 생성하도록 HOA 계수들의 세트를 렌더링할 수도 있다. 일부 예들에서, 렌더링 유닛 (210) 은 상기의 식 (21) 에 따라, HOA 계수들의 세트를 렌더링할 수도 있다.
도 23 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 23 의 기법들은 도 1, 도 3, 도 5, 도 13, 및 도 17 의 오디오 인코딩 디바이스 (14) 와 같은 오디오 인코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 23 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 인코딩 디바이스 (14) 는 오디오 객체의 오디오 신호 및 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신할 수도 있다 (2230). 부가적으로, 오디오 인코딩 디바이스 (14) 는, 오디오 객체에 대한 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, HOA 도메인에서 오디오 객체의 공간 벡터를 결정할 수도 있다 (2232). 부가적으로, 도 23 의 예에서, 오디오 인코딩 디바이스 (14) 는, 코딩된 오디오 비트스트림에서, 공간 벡터를 나타내는 오디오 신호 및 데이터의 객체-기반의 표현을 포함할 수 있다.
도 24 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 24 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 24 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반 표현을 획득할 수도 있다 (2250). 이 예에서, 오디오 신호는 시간 인터벌에 대응한다. 부가적으로, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체에 대한 공간 벡터의 표현을 획득할 수도 있다 (2252). 이 예에서, 공간 벡터는 HOA 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초한다.
더욱이, HOA 생성 유닛 (208B)(또는 오디오 디코딩 디바이스 (22) 의 다른 유닛) 은 오디오 객체의 오디오 신호 및 공간 벡터를 시간 인터벌 동안 사운드필드를 설명하는 HOA 계수들의 세트로 컨버팅할 수도 있다 (2254). 더욱이, 도 24 의 예에서는, 오디오 디코딩 디바이스 (22) 는 HOA 계수들의 세트에 렌더링 포맷을 적용함으로써 복수의 오디오 신호들을 생성할 수 있다 (2256). 이 예에서, 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응한다.
도 25 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 25 의 기법들은 도 1, 도 3, 도 5, 도 13, 및 도 17 의 오디오 인코딩 디바이스 (14) 와 같은 오디오 인코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 25 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 인코딩 디바이스 (14) 는 코딩된 오디오 비트스트림에서, 시간 인터벌 동안 하나 이상의 오디오 신호들의 세트의 객체-기반 또는 채널-기반 표현을 포함할 수도 있다 (2300). 또한, 오디오 인코딩 디바이스 (14) 는 라우드스피커 로케이션들의 세트에 기초하여, HOA 도메인에서 하나 이상의 공간 벡터들의 세트를 결정할 수도 있다 (2302). 이 예에서, 공간 벡터들의 세트의 각각의 개별의 공간 벡터는 오디오 신호들의 세트에서 개별의 오디오 신호에 대응한다. 또한, 이 예에서, 오디오 인코딩 디바이스 (14) 는 공간 벡터들의 양자화된 버전들을 나타내는 데이터를 생성할 수도 있다 (2304). 부가적으로, 이 예에서, 오디오 인코딩 디바이스 (14) 는, 코딩된 오디오 비트스트림에서, 공간 벡터들의 양자화된 버전들을 나타내는 데이터를 포함할 수도 있다 (2306).
도 26 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 26 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 디코딩 디바이스 (22) 외의 구성들을 갖는 오디오 디코딩 디바이스들이 도 26 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 코딩된 오디오 비트스트림으로부터, 시간 인터벌 동안 하나 이상의 오디오 신호들의 세트의 객체-기반 또는 채널-기반 표현을 획득할 수도 있다 (2400). 부가적으로, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 하나 이상의 공간 벡터들의 세트의 양자화된 버전들을 나타내는 데이터를 획득할 수도 있다 (2402). 이 예에서, 공간 벡터들의 세트의 각각의 개별의 공간 벡터는 오디오 신호들의 세트의 개별의 오디오 신호에 대응한다. 또한, 이 예에서 공간 벡터들 각각은 HOA 도메인에 있고 라우드스피커 로케이션들의 세트에 기초하여 연산된다.
도 27 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 27 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 디코딩 디바이스 (22) 외의 구성들을 갖는 오디오 디코딩 디바이스들이 도 27 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 고차 앰비소닉스 (HOA) 사운드필드를 획득할 수도 있다 (2702). 예를 들어, 오디오 디코딩 디바이스 (22) 의 HOA 생성 유닛 (예를 들어, HOA 생성 유닛 (208A/208B/208C)) 은 HOA 계수들 (예를 들어, HOA 계수들 (212A/212B/212C)) 을 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 에 제공할 수도 있다.
오디오 디코딩 디바이스 (22) 는 복수의 로컬 라우드스피커들의 포지션들의 표현을 획득할 수도 있다 (2704). 예를 들어, 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 의 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (예를 들어, 로컬 라우드스피커 셋업 정보 (28)) 에 기초하여 복수의 로컬 라우드스피커들의 포지션들의 표현을 결정할 수도 있다. 위에서 논의된 바와 같이, 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (28) 를 광범위한 소스들로부터 획득할 수도 있다.
오디오 디코딩 디바이스 (22) 는 리스너의 로케이션을 주기적으로 결정할 수도 있다 (2706). 예를 들어, 일부 예들에서, 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 의 리스너 로케이션 유닛 (610) 은 리스너에 의해 포지셔닝된 디바이스에 의해 생성된 신호에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 센서들의 일부 예들은 모바일 컴퓨팅 디바이스들, 비디오 게임 제어기들, 원격 제어들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 센서를 포함하지만 이에 제한되지는 않는다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 하나 이상의 센서들에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 디바이스들의 일부 예들은 카메라들, 마이크로폰들, (예를 들어, 퍼니처, 비히클 시트들에 임베딩되거나 부착된) 압력 센서들, 안전벨트 센서들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 디바이스를 포함하지만 이에 제한되지는 않는다.
오디오 디코딩 디바이스 (22) 는, 리스너의 로케이션 및 복수의 로컬 라우드스피커 포지션들에 기초하여, 로컬 렌더링 포맷을 주기적으로 결정할 수도 있다 (2708). 예를 들어, 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 의 렌더링 포맷 유닛 (614) 은, HOA 사운드필드가 라우드스피커 피드들로 렌더링되고 복수의 로컬 라우드스피커들을 통해 재생되는 경우, 음향 "스윗 스폿" 이 리스너의 포지션에 또는 부근에 위치되도록 로컬 렌더링 포맷을 생성할 수도 있다. 일부 예들에서, 로컬 렌더링 포맷을 생성하기 위해, 렌더링 포맷 유닛 (614) 은 로컬 렌더링 매트릭스 () 를 생성할 수도 있다.
오디오 디코딩 디바이스 (22) 는, 로컬 렌더링 포맷에 기초하여, HOA 사운드필드를 복수의 로컬 라우드스피커들의 개별의 로컬 라우드스피커에 각각 대응하는 복수의 출력 오디오 신호들로 렌더링할 수도 있다 (2710). 예를 들어, 라우드스피커 피드 생성 유닛 (616) 은 상기의 식 (35) 에 따라 라우드스피커 피드들 (26) 을 생성하도록 HOA 계수들을 렌더링할 수도 있다.
일 예에서, 멀티-채널 오디오 신호 (예를 들어, ) 를 인코딩하기 위해, 오디오 인코딩 디바이스 (14) 는 소스 라우드스피커 구성에서 라우드스피커들의 수 (예를 들어, N), 멀티-채널 오디오 신호에 기초하여 HOA 사운드필드를 생성하는 경우 사용될 HOA 계수들의 수 (예를 들어, N HOA ), 및 소스 라우드스피커 구성에서 라우드스피커들의 포지션들 (예를 들어, ) 를 결정할 수도 있다. 이 예에서, 오디오 인코딩 디바이스 (14) 는 비트스트림에서 N, N HOA , 및 을 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 각각의 프레임에 대해 N, N HOA , 및 을 비트스트림에서 인코딩할 수도 있다. 일부 예들에서, 이전의 프레임이 동일한 N, N HOA , 및 을 사용하면, 오디오 인코딩 디바이스 (14) 는 현재의 프레임에 대해 비트스트림에서 N, N HOA , 및 을 인코딩하는 것을 생략할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 N, N HOA , 및 에 기초하여 렌더링 매트릭스 (D 1 ) 을 생성할 수도 있다. 일부 예들에서, 필요하면, 오디오 인코딩 디바이스 (14) 는 하나 이상의 공간 포지셔닝 벡터들 (예를 들어, ) 을 생성 및 사용할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 멀티-채널 오디오 신호 (예를 들어, ) 양자화하여, 양자화된 멀티채널 오디오 신호 (예를 들어, ) 를 생성하고, 양자화된 멀티-채널 오디오 신호를 비트스트림에서 인코딩할 수도 있다.
오디오 디코딩 디바이스 (22) 는 비트스트림을 수신할 수도 있다. 소스 라우드스피커 구성에서 수신된 라우드스피커들의 수 (예를 들어, N), 멀티-채널 오디오 신호에 기초하여 HOA 사운드필드를 생성하는 경우 사용될 HOA 계수들의 수 (예를 들어, N HOA ), 및 소스 라우드스피커 구성에서 라우드스피커들의 포지션들 (예를 들어, ) 에 기초하여, 오디오 디코딩 디바이스 (22) 는 렌더링 매트릭스 (D 2 ) 를 생성할 수도 있다. 일부 예들에서, D 2 는, D 2 가 수신된 N, N HOA , 및 (즉, 소스 라우드스피커 구성) 에 기초하여 생성되는 한, D 1 와 동일하지 않을 수도 있다. D 2 에 기초하여, 오디오 디코딩 디바이스 (22) 는 하나 이상의 공간 포지셔닝 벡터들 (예를 들어, ) 을 계산할 수도 있다. 하나 이상의 공간 포지셔닝 벡터들 및 수신된 오디오 신호 (예를 들어, ) 에 기초하여,오디오 디코딩 디바이스 (22) 는 로서 HOA 도메인 표현을 생성할 수도 있다. 로컬 라우드스피커 구성 (즉, 디코더에서 라우드스피커들의 수 및 포지션들)(예를 들어, 및 ) 에 기초하여, 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스 (D 3 ) 를 생성할 수도 있다. 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스에 생성된 HOA 도메인 표현을 곱함으로써 (예를 들어, ) 로컬 라우드스피커들에 대한 스피커 피드들 (예를 들어, ) 을 생성할 수도 있다.
다른 예에서, 멀티-채널 오디오 신호 (예를 들어, ) 를 인코딩하기 위해, 오디오 인코딩 디바이스 (14) 는 소스 라우드스피커 구성에서의 라우드스피커들의 수 (예를 들어, N), 멀티-채널 오디오 신호에 기초하여 HOA 사운드필드를 생성하는 경우 사용될 HOA 계수들의 수 (예를 들어, N HOA ), 및 소스 라우드스피커 구성에서 라우드스피커들의 포지션들 (예를 들어, ) 을 결정할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 N, N HOA , 및 에 기초하여 렌더링 매트릭스 (D 1 ) 을 생성할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 하나 이상의 공간 포지셔닝 벡터들 (예를 들어, ) 을 계산할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 공간 포지셔닝 벡터들을 로서 표준화하고, ISO/IEC 23008-3 에서 (예를 들어, (SQ, SQ+Huff, VQ) 과 같은 벡터 양자화 방법들을 사용하여) 를 로 양자화하며, 및 를 비트스트림에서 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 멀티-채널 오디오 신호 (예를 들어, ) 를 양자화하여 양자화된 멀티-채널 오디오 신호 (예를 들어, ) 를 생성하고, 양자화된 멀티-채널 오디오 신호를 비트스트림에서 인코딩할 수도 있다.
오디오 디코딩 디바이스 (22) 는 비트스트림을 수신할 수도 있다. 및 에 기초하여, 오디오 디코딩 디바이스 (22) 는 공간 포지셔닝 벡터들을 에 의해 복원할 수도 있다. 하나 이상의 공간 포지셔닝 벡터들 (예를 들어, ) 및 수신된 오디오 신호 (예를 들어, ) 에 기초하여, 오디오 디코딩 디바이스 (22) 는 로서 HOA 도메인 표현을 생성할 수도 있다. 로컬 라우드스피커 구성 (즉, 디코더에서 라우드스피커들의 수 및 포지션들)(예를 들어, 및 ) 에 기초하여, 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스 (D 3 ) 를 생성할 수도 있다. 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스에 생성된 HOA 도메인 표현을 곱함으로써 (예를 들어, ) 로컬 라우드스피커들에 대한 스피커 피드들 (예를 들어, ) 을 생성할 수도 있다.
도 28 은 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다. 도 28 의 예에서, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하며, 이 오디오 신호는 시간 인터벌에 대응한다 (2800). 또한, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체에 대한 공간 벡터의 표현을 획득한다 (2802). 공간 벡터는 HOA 도메인에서 정의되고 복수의 라우드스피커 로케이션들에 기초한다.
도 28 의 예에서, 오디오 디코딩 디바이스 (22) 는, 공간 벡터 및 오디오 객체의 오디오 신호에 기초하여, 복수의 오디오 신호들을 생성한다 (2804). 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응한다. 일부 예들에서, 오디오 디코딩 디바이스 (22) 는 하나 이상의 카메라들로부터 이미지들을 획득하고, 이미지들에 기초하여 로컬 라우드스피커 셋업 정보를 결정하며, 로컬 라우드스피커 셋업 정보는 복수의 로컬 라우드스피커들의 포지션들을 나타낸다.
복수의 오디오 신호들을 생성하는 부분으로서, 오디오 디코딩 디바이스 (22) 는 오디오 객체의 오디오 신호 및 공간 벡터를 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수의 세트로 변환할 수있다. 또한, 오디오 디코딩 디바이스 (22) 는 HOA 계수들의 세트에 렌더링 포맷을 적용함으로써 복수의 오디오 신호들을 생성할 수 있다. 이미지들에 기초하여 결정된 로컬 라우드스피커 셋업 정보는 렌더링 포맷의 형태일 수 있다. 일부 예들에서, 복수의 라우드스피커 로케이션들은 제 1 복수의 라우드스피커 로케이션들이고, 렌더링 포맷은 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서 라우드스피커들에 대한 오디오 신호들로 HOA 계수들의 세트를 렌더링하기 위한 것이다
도 29 는 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다. 도 28 의 예에서, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하며, 이 오디오 신호는 시간 인터벌에 대응한다 (2900). 또한, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체에 대한 공간 벡터의 표현을 획득한다 (2902). 공간 벡터는 HOA 도메인에서 정의되고 복수의 라우드스피커 로케이션들에 기초한다.
도 29 의 예에서, 오디오 디코딩 디바이스 (22) 는, 오디오 객체에 대한 공간 벡터 및 오디오 객체의 오디오 신호에 기초하여, HOA 사운드필드를 생성한다 (2904). 오디오 디코딩 디바이스 (22) 는 본 개시물의 다른 곳에 제공된 예들에 따라 HOA 사운드필드를 생성할 수 있다. 일부 예들에서, 복수의 라우드스피커 로케이션들은 소스 라우드스피커 구성이다. 일부 예들에서, 복수의 라우드스피커 로케이션들은 로컬 라우드스피커 구성이다. 더욱이, 일부 예들에서, HOA 사운드필드는 복수의 로컬 라우드스피커들에 의해 재생된다.
전술된 다양한 경우들 각각에서, 오디오 인코딩 디바이스 (14) 는, 오디오 인코딩 디바이스 (14) 가 수행하도록 구성되는 방법을 수행하거나 다르게는 이 방법의 각 단계를 수행하기 위한 수단을 포함할 수도 있다는 것으로 이해되어야 한다. 일부 경우들에서, 수단은 하나 이상의 프로세서들을 포함할 수도 있다. 일부 경우들에서, 하나 이상의 프로세서들은 비-일시적 컴퓨터 판독가능 저장 매체에 저장된 명령들의 방식에 의해 구성된 특수 목적의 프로세서를 나타낼 수도 있다. 다시 말하면, 인코딩 예들의 세트들 각각에서 기법들의 다양한 양태들은 명령들이 저장되어 있는 비일시적 컴퓨터 판독가능 저장 매체에 대해 제공할 수도 있고, 이 명령들은 실행되는 경우, 하나 이상의 프로세서들로 하여금 오디오 인코딩 디바이스 (14) 가 수행하도록 구성된 방법을 수행하게 한다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그 임의의 조합으로 구현될 수도 있다. 소프트웨어에서 구현되는 경우, 이 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장되거나 이를 통해 송신될 수도 있고, 하드웨어 기반 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터 판독가능 매체는, 데이터 저장 매체와 같은 유형의 매체에 대응하는, 컴퓨터 판독가능 저장 매체를 포함할 수도 있다. 데이터 저장 매체는 본 개시물에 설명된 기법들의 구현을 위한 명령들, 코드 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 매체를 포함할 수도 있다.
유사하게, 전술된 다양한 경우들 각각에서, 오디오 디코딩 디바이스 (22) 는, 오디오 디코딩 디바이스 (22) 가 수행하도록 구성되는 방법을 수행하거나 다르게는 이 방법의 각 단계를 수행하기 위한 수단을 포함할 수도 있다는 것으로 이해되어야 한다. 일부 경우들에서, 수단은 하나 이상의 프로세서들을 포함할 수도 있다. 일부 경우들에서, 하나 이상의 프로세서들은 비일시적 컴퓨터 판독가능 저장 매체에 저장된 명령들의 방식으로 구성된 특수 목적의 프로세서를 나타낼 수도 있다. 다시 말하면, 인코딩 예들의 세트들 각각에서 본 기법들의 다양한 양태들은, 실행되는 경우, 하나 이상의 프로세서들로 하여금 오디오 디코딩 디바이스 (24) 가 수행하도록 구성된 방법을 수행하게 하는 명령들이 저장되어 있는 비일시적 컴퓨터 판독가능 저장 매체를 제공할 수도 있다.
비제한적인 예로서, 이러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장 디바이스, 자기 디스크 저장 디바이스, 또는 다른 자기 저장 디바이스, 플래시 메모리, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 그러나, 컴퓨터 판독가능 저장 매체 및 데이터 저장 매체는 접속들, 반송파들, 신호들, 또는 다른 일시적 매체들을 포함하지 않고, 대신에 비일시적인, 유형의 저장 매체에 관한 것으로 이해되어야 한다. 본원에서 사용된 디스크 (disk) 와 디스크 (disc) 는, 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크, 및 블루레이 디스크를 포함하며, 여기서 디스크 (disk) 들은 통상 자기적으로 데이터를 재생하는 반면, 디스크 (disc) 들은 레이저들을 이용하여 광학적으로 데이터를 재생한다. 상기의 조합들이 또한, 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령들은, 하나 이상의 디지털 신호 프로세서 (DSP) 들, 범용 마이크로프로세서들, 주문형 집적 회로 (ASIC) 들, 필드 프로그램가능 로직 어레이 (FPGA) 들, 또는 다른 등가의 집적 또는 이산 로직 회로부와 같은, 하나 이상의 프로세서들에 의해 실행될 수도 있다. 따라서, 본원에서 사용되는 바와 같은 용어 "프로세서" 는 상기의 구조 또는 본원에 설명된 기법들의 구현에 적합한 임의의 다른 구조 중 임의의 것을 지칭할 수도 있다. 또한, 일부 양태들에서, 본원에 설명된 기능성은 인코딩 및 디코딩을 위해 구성된 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공될 수도 있고, 또는 결합형 코덱에 통합될 수도 있다. 또한, 본 기법들은 하나 이상의 회로들 또는 로직 엘리먼트들에서 완전히 구현될 수 있다.
본 개시물의 기법들은 무선 핸드셋, 집적 회로 (IC), 또는 IC 들의 세트 (예를 들어, 칩 세트) 를 포함하는 광범위한 디바이스들 또는 장치들에서 구현될 수도 있다. 개시된 기법들을 수행하도록 구성된 디바이스들의 기능적 양태를 강조하기 위해 다양한 컴포넌트들, 모듈들, 또는 유닛들이 본 개시물에서 설명되었지만, 반드시 상이한 하드웨어 유닛들에 의해 실현될 필요는 없다. 차라리, 전술된 바와 같이 다양한 유닛들은 적합한 소프트웨어 및/또는 펌웨어와 관련되어, 전술된 하나 이상의 프로세서들을 포함하는, 상호 동작적인 하드웨어 유닛들의 집합에 의해 제공되고 또는 코덱 하드웨어 유닛에 결합될 수도 있다.
본 기법들의 다양한 양태들이 설명되었다. 본 기법들의 이들 및 다른 양태들이 다음의 청구범위 내에 있다.
Claims (30)
- 코딩된 오디오 비트스트림을 디코딩하는 디바이스로서,
코딩된 오디오 비트스트림을 저장하도록 구성된 메모리; 및
상기 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고,
상기 하나 이상의 프로세서들은,
상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 표현을 포함하는 객체-기반의 표현을 획득하는 것으로서, 상기 오디오 객체의 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 표현을 포함하는 객체-기반의 표현을 획득하고;
상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 것으로서, 상기 오디오 객체에 대한 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하고;
상기 오디오 객체에 대한 HOA 계수들의 세트를 결정하는 것으로서, 상기 오디오 객체에 대한 상기 HOA 계수들의 세트가 상기 오디오 객체의 상기 오디오 신호 곱하기 개별의 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈 (transpose) 와 동등하도록, 상기 HOA 계수들의 세트를 결정하고, 그리고
상기 오디오 객체에 대한 상기 HOA 계수들의 세트에 렌더링 포맷을 적용하여 복수의 렌더링된 오디오 신호들을 생성하는 것으로서, 상기 복수의 렌더링된 오디오 신호들의 각각의 개별의 렌더링된 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 렌더링된 오디오 신호들을 생성하도록 구성되는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스. - 제 1 항에 있어서,
상기 하나 이상의 프로세서들은,
하나 이상의 카메라들로부터 이미지들을 획득하고; 그리고
상기 이미지들에 기초하여 로컬 라우드스피커 셋업 정보를 결정하도록 구성되고,
상기 로컬 라우드스피커 셋업 정보는 복수의 로컬 라우드스피커들의 포지션들을 나타내는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스. - 제 2 항에 있어서,
상기 로컬 라우드스피커 셋업 정보는 상기 렌더링 포맷의 형태인, 코딩된 오디오 비트스트림을 디코딩하는 디바이스. - 제 1 항에 있어서,
상기 오디오 객체는 제 1 오디오 객체이고, 그리고
상기 하나 이상의 프로세서들은,
상기 코딩된 오디오 비트스트림으로부터, 복수의 객체-기반의 표현들을 획득하는 것으로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현인, 상기 복수의 객체-기반의 표현들을 획득하고,
상기 복수의 오디오 객체들의 각각의 개별의 오디오 객체에 대해:
상기 코딩된 오디오 비트스트림으로부터, 상기 개별의 오디오 객체에 대한 공간 벡터의 표현을 획득하는 것으로서, 상기 개별의 오디오 객체에 대한 상기 공간 벡터는 상기 HOA 도메인에서 정의되고 상기 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 개별의 오디오 객체에 대한 공간 벡터의 표현을 획득하고; 그리고
상기 개별의 오디오 객체에 대한 HOA 계수들의 세트를 결정하는 것으로서, 상기 개별의 오디오 객체에 대한 상기 HOA 계수들의 세트가 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈와 동등하도록, 상기 HOA 계수들의 세트를 결정하고,
상기 복수의 오디오 객체들에 대한 상기 HOA 계수들의 세트들의 합에 기초하여 사운드 필드를 설명하는 상기 HOA 계수들의 세트를 결정하고, 그리고
상기 사운드 필드를 설명하는 상기 HOA 계수들의 세트에 렌더링 포맷을 적용하여 제 2 복수의 렌더링된 오디오 신호들을 생성하는 것으로서, 상기 제 2 복수의 렌더링된 오디오 신호들의 각각의 개별의 렌더링된 오디오 신호가 상기 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 렌더링된 오디오 신호들을 생성하도록 구성되는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스. - 제 1 항에 있어서,
상기 오디오 객체에 대한 상기 공간 벡터는 복수의 피연산자들의 합과 동등하고,
상기 복수의 피연산자들의 각각의 개별의 피연산자는, 상기 제 1 복수의 라우드스피커의 로케이션들의 개별의 라우드스피커 로케이션에 대응하고;
상기 제 1 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해,
복수의 라우드스피커 로케이션 벡터들은 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함하고,
상기 개별의 라우드스피커 로케이션에 대응하는 상기 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하고, 그리고
상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터는 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 객체의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스. - 제 5 항에 있어서,
1 에서 N 까지의 범위인 각각의 값 n 에 대해, 상기 제 1 복수의 라우드스피커 로케이션들의 n 번째 라우드스피커 로케이션 벡터는 제 1 매트릭스, 제 2 매트릭스, 및 제 3 매트릭스의 곱셈에서 비롯되는 매트릭스의 트랜스포즈와 동등하고, 상기 제 1 매트릭스는 복수의 라우드스피커 포지션들에서 라우드스피커 포지션들의 수와 수에서 동등한 엘리먼트들의 단일의 개별의 로우로 이루어지고, 상기 엘리먼트들의 개별의 로우의 n 번째 엘리먼트는 1 과 동등하고 상기 개별의 로우의 상기 n 번째 엘리먼트 외의 엘리먼트들은 0 과 동등하고, 상기 제 2 매트릭스는 렌더링 매트릭스 및 상기 렌더링 매트릭스의 트랜스포즈의 곱셈에서 비롯되는 매트릭스의 역이고, 상기 제 3 매트릭스는 상기 렌더링 매트릭스와 동등하며, 상기 렌더링 매트릭스는 상기 제 1 복수의 라우드스피커 로케이션들에 기초하고, 그리고 N 은 상기 제 1 복수의 라우드스피커 로케이션들에서의 라우드스피커 로케이션들의 수에 동등한, 코딩된 오디오 비트스트림을 디코딩하는 디바이스. - 코딩된 오디오 비트스트림을 인코딩하는 디바이스로서,
오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 저장하도록 구성된 메모리로서, 상기 오디오 객체의 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 메모리; 및
상기 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고,
상기 하나 이상의 프로세서들은,
상기 오디오 객체의 상기 오디오 신호 및 상기 오디오 객체의 상기 가상의 소스 로케이션을 나타내는 데이터를 수신하고;
상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체에 대한 공간 벡터를 결정하는 것으로서, 상기 오디오 객체에 대한 HOA 계수들의 세트가 상기 오디오 객체의 상기 오디오 신호 곱하기 상기 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈와 동등한, 상기 오디오 객체에 대한 공간 벡터를 결정하고; 그리고
코딩된 오디오 비트스트림에서, 상기 오디오 객체에 대한 상기 공간 벡터를 나타내는 데이터 및 상기 오디오 객체의 오디오 신호의 객체-기반의 표현을 포함하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 7 항에 있어서,
상기 하나 이상의 프로세서들은,
하나 이상의 카메라들로부터 이미지들을 획득하고; 그리고
상기 이미지들에 기초하여 상기 라우드스피커 로케이션들을 결정하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 7 항에 있어서,
상기 하나 이상의 프로세서들은 상기 오디오 객체에 대한 상기 공간 벡터를 양자화하도록 구성되고, 그리고
상기 오디오 객체에 대한 상기 공간 벡터를 나타내는 데이터는 상기 오디오 객체에 대한 양자화된 상기 공간 벡터를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 7 항에 있어서,
상기 오디오 객체는 제 1 오디오 객체이고,
상기 하나 이상의 프로세서들은:
상기 코딩된 오디오 비트스트림에서, 복수의 객체-기반의 표현들을 포함하는 것으로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현인, 상기 복수의 객체-기반의 표현들을 포함하고; 그리고
상기 복수의 오디오 객체들의 각각의 개별의 오디오 객체에 대해:
상기 개별의 오디오 객체의 개별의 가상의 소스 로케이션을 표시하는 데이터 및 상기 복수의 라우드스피커 로케이션들을 표시하는 데이터에 기초하여, 상기 개별의 오디오 객체에 대한 공간 벡터의 표현을 결정하는 것으로서, 상기 개별의 오디오 객체에 대한 상기 공간 벡터는 HOA 도메인에서 정의되고, 상기 개별의 오디오 객체에 대한 HOA 계수들의 세트는 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈와 동등한, 상기 공간 벡터의 표현을 결정하고; 그리고
코딩된 오디오 비트스트림에서, 상기 개별의 오디오 객체에 대한 상기 공간 벡터의 표현을 포함하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 7 항에 있어서,
상기 하나 이상의 프로세서들은, 상기 오디오 객체에 대한 상기 공간 벡터를 결정하는 부분으로서, 상기 하나 이상의 프로세서들이:
HOA 계수들을 상기 라우드스피커 로케이션들에서의 라우드스피커들에 대한 라우드스피커 피드들로 렌더링하기 위한 렌더링 포맷을 결정하고;
복수의 라우드스피커 로케이션 벡터들을 결정하는 것으로서,
상기 복수의 라우드스피커 로케이션 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 그리고
상기 하나 이상의 프로세서들은, 상기 복수의 라우드스피커 로케이션 벡터들을 결정하는 부분으로서, 상기 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 하나 이상의 프로세서들이,
상기 오디오 객체의 로케이션 좌표들에 기초하여, 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정하는 것으로서, 상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터가 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 객체의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 상기 이득 팩터를 결정하고, 그리고
상기 렌더링 포맷에 기초하여, 상기 개별의 라우드스피커 로케이션에 대응하는 상기 라우드스피커 로케이션 벡터를 결정하도록 구성되는, 상기 복수의 라우드스피커 로케이션 벡터들을 결정하고; 그리고
복수의 피연산자들의 합으로서 상기 오디오 객체에 대한 상기 공간 벡터를 결정하는 것으로서, 상기 복수의 피연산자들의 각각의 개별의 피연산자는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 상기 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 개별의 라우드스피커 로케이션에 대응하는 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터와 동등한, 상기 공간 벡터를 결정하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 11 항에 있어서,
상기 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 하나 이상의 프로세서들은 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정하기 위해 벡터 기반 진폭 플래닝 (vector base amplitude planning; VBAP) 을 사용하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 11 항에 있어서,
1 에서 N 까지의 범위인 각각의 값 n 에 대해, 상기 복수의 라우드스피커 로케이션들의 n 번째 라우드스피커 로케이션 벡터는 제 1 매트릭스, 제 2 매트릭스, 및 제 3 매트릭스의 곱셈에서 비롯되는 매트릭스의 트랜스포즈와 동등하고, 상기 제 1 매트릭스는 복수의 라우드스피커 포지션들에서 라우드스피커 포지션들의 수와 수에서 동등한 엘리먼트들의 단일의 개별의 로우로 이루어지고, 상기 엘리먼트들의 개별의 로우의 n 번째 엘리먼트는 1 과 동등하고 상기 개별의 로우의 상기 n 번째 엘리먼트 외의 엘리먼트들은 0 과 동등하고, 상기 제 2 매트릭스는 렌더링 매트릭스 및 상기 렌더링 매트릭스의 트랜스포즈의 곱셈에서 비롯되는 매트릭스의 역이고, 상기 제 3 매트릭스는 상기 렌더링 매트릭스와 동등하며, 상기 렌더링 매트릭스는 제 1 복수의 라우드스피커 로케이션들에 기초하고, 그리고 N 은 상기 복수의 라우드스피커 로케이션들에서의 라우드스피커 로케이션들의 수에 동등한, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 7 항에 있어서,
상기 오디오 객체의 상기 오디오 신호를 캡처하도록 구성된 마이크로폰을 더 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 코딩된 오디오 비트스트림을 디코딩하는 방법으로서,
상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 표현을 포함하는 객체-기반의 표현을 획득하는 단계;
상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 단계로서, 상기 오디오 객체에 대한 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하는 단계;
상기 오디오 객체에 대한 HOA 계수들의 세트를 결정하는 단계로서, 상기 오디오 객체에 대한 상기 HOA 계수들의 세트가 상기 오디오 객체의 상기 오디오 신호 곱하기 개별의 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈와 동등하도록, 상기 HOA 계수들의 세트를 결정하는 단계; 및
상기 오디오 객체에 대한 상기 HOA 계수들의 세트에 렌더링 포맷을 적용하여 복수의 렌더링된 오디오 신호들을 생성하는 단계로서, 상기 복수의 렌더링된 오디오 신호들의 각각의 개별의 렌더링된 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 렌더링된 오디오 신호들을 생성하는 단계를 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법. - 제 15 항에 있어서,
하나 이상의 카메라들로부터 이미지들을 획득하는 단계; 및
상기 이미지들에 기초하여 로컬 라우드스피커 셋업 정보를 결정하는 단계로서, 상기 로컬 라우드스피커 셋업 정보는 상기 로컬 라우드스피커들의 포지션들을 나타내는, 상기 로컬 라우드스피커 셋업 정보를 결정하는 단계를 더 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법. - 제 16 항에 있어서,
상기 로컬 라우드스피커 셋업 정보는 상기 렌더링 포맷의 형태인, 코딩된 오디오 비트스트림을 디코딩하는 방법. - 제 15 항에 있어서,
상기 오디오 객체는 제 1 오디오 객체이고, 그리고
상기 방법은,
상기 코딩된 오디오 비트스트림으로부터, 복수의 객체-기반의 표현들을 획득하는 단계로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현이며, 상기 복수의 오디오 객체들은 상기 제 1 오디오 객체를 포함하는, 상기 복수의 객체-기반의 표현들을 획득하는 단계;
상기 복수의 오디오 객체들의 각각의 개별의 오디오 객체에 대해:
상기 코딩된 오디오 비트스트림으로부터, 상기 개별의 오디오 객체에 대한 공간 벡터의 표현을 획득하는 단계로서, 상기 오디오 객체에 대한 상기 공간 벡터는 상기 HOA 도메인에서 정의되고 상기 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 개별의 오디오 객체에 대한 공간 벡터의 표현을 획득하는 단계; 및
상기 개별의 오디오 객체에 대한 HOA 계수들의 개별의 세트를 결정하는 단계로서, 상기 개별의 오디오 객체에 대한 상기 HOA 계수들의 세트가 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈와 동등하도록, 상기 HOA 계수들의 개별의 세트를 결정하는 단계;
상기 복수의 오디오 객체들에 대한 HOA 계수들의 세트들의 합에 기초하여 사운드 필드를 설명하는 상기 HOA 계수들의 세트를 결정하는 단계; 및
상기 사운드 필드를 설명하는 상기 HOA 계수들의 세트에 렌더링 포맷을 적용하여 제 2 복수의 렌더링된 오디오 신호들을 생성하는 단계로서, 상기 제 2 복수의 렌더링된 오디오 신호들의 각각의 개별의 렌더링된 오디오 신호는 상기 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 제 2 복수의 렌더링된 오디오 신호들을 생성하는 단계를 더 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법. - 제 15 항에 있어서,
상기 오디오 객체에 대한 상기 공간 벡터는 복수의 피연산자들의 합과 동등하고,
상기 복수의 피연산자들의 각각의 개별의 피연산자는, 상기 제 1 복수의 라우드스피커의 로케이션들의 개별의 라우드스피커 로케이션에 대응하고;
상기 제 1 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해,
복수의 라우드스피커 로케이션 벡터들은 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함하고,
상기 개별의 라우드스피커 로케이션에 대응하는 상기 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하고, 그리고
상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터는 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 객체의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 코딩된 오디오 비트스트림을 디코딩하는 방법. - 제 19 항에 있어서,
1 에서 N 까지의 범위인 각각의 값 n 에 대해, 제 1 복수의 라우드스피커 로케이션들의 n 번째 라우드스피커 로케이션 벡터는 제 1 매트릭스, 제 2 매트릭스, 및 제 3 매트릭스의 곱셈에서 비롯되는 매트릭스의 트랜스포즈와 동등하고, 상기 제 1 매트릭스는 복수의 라우드스피커 포지션들에서 라우드스피커 포지션들의 수와 수에서 동등한 엘리먼트들의 단일의 개별의 로우로 이루어지고, 상기 엘리먼트들의 개별의 로우의 n 번째 엘리먼트는 1 과 동등하고 상기 개별의 로우의 상기 n 번째 엘리먼트 외의 엘리먼트들은 0 과 동등하고, 상기 제 2 매트릭스는 렌더링 매트릭스 및 상기 렌더링 매트릭스의 트랜스포즈의 곱셈에서 비롯되는 매트릭스의 역이고, 상기 제 3 매트릭스는 상기 렌더링 매트릭스와 동등하며, 상기 렌더링 매트릭스는 상기 제 1 복수의 라우드스피커 로케이션들에 기초하고, 그리고 N 은 상기 제 1 복수의 라우드스피커 로케이션들에서의 라우드스피커 로케이션들의 수에 동등한, 코딩된 오디오 비트스트림을 디코딩하는 방법. - 코딩된 오디오 비트스트림을 인코딩하는 방법으로서,
오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하는 단계로서, 상기 오디오 객체의 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하는 단계;
상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체에 대한 공간 벡터를 결정하는 단계로서, 상기 오디오 객체에 대한 HOA 계수들의 세트가 상기 오디오 객체의 상기 오디오 신호 곱하기 상기 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈와 동등한, 상기 오디오 객체에 대한 공간 벡터를 결정하는 단계; 및
상기 코딩된 오디오 비트스트림에서, 상기 오디오 객체에 대한 상기 공간 벡터를 나타내는 데이터 및 상기 오디오 객체의 상기 오디오 신호의 객체-기반의 표현을 포함하는 단계를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법. - 제 21 항에 있어서,
하나 이상의 카메라들로부터 이미지들을 획득하는 단계; 및
상기 이미지들에 기초하여 상기 라우드스피커 로케이션들을 결정하는 단계를 더 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법. - 제 21 항에 있어서,
상기 오디오 객체는 제 1 오디오 객체이고, 그리고
상기 방법은,
상기 코딩된 오디오 비트스트림에서, 복수의 객체-기반의 표현들을 포함하는 단계로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현인, 상기 복수의 객체-기반의 표현들을 포함하는 단계;
상기 복수의 오디오 객체들의 각각의 개별의 오디오 객체에 대해:
상기 개별의 오디오 객체의 개별의 가상의 소스 로케이션을 표시하는 데이터 및 상기 복수의 라우드스피커 로케이션들을 표시하는 데이터에 기초하여, 상기 개별의 오디오 객체에 대한 공간 벡터의 표현을 결정하는 단계로서, 상기 개별의 오디오 객체에 대한 상기 공간 벡터는 HOA 도메인에서 정의되고, 상기 개별의 오디오 객체에 대한 HOA 계수들의 세트는 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 상기 공간 벡터의 트랜스포즈와 동등한, 상기 공간 벡터의 표현을 결정하는 단계; 및
상기 코딩된 오디오 비트스트림에서, 상기 개별의 오디오 객체에 대한 상기 개별의 공간 벡터의 표현을 포함하는 단계를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법. - 제 21 항에 있어서,
상기 오디오 객체에 대한 상기 공간 벡터를 결정하는 단계는:
HOA 계수들을 상기 라우드스피커 로케이션들에서의 라우드스피커들에 대한 라우드스피커 피드들로 렌더링하기 위한 렌더링 포맷을 결정하는 단계;
복수의 라우드스피커 로케이션 벡터들을 결정하는 단계로서,
상기 복수의 라우드스피커 로케이션 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 그리고
상기 복수의 라우드스피커 로케이션 벡터들을 결정하는 단계는, 상기 복수의 라우드스피커 로케이션 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터에 대해,
상기 오디오 객체의 로케이션 좌표들에 기초하여, 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정하는 단계로서, 상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터가 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 객체의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 상기 이득 팩터를 결정하는 단계; 및
상기 렌더링 포맷에 기초하여, 상기 개별의 라우드스피커 로케이션에 대응하는 상기 라우드스피커 로케이션 벡터를 결정하는 단계를 포함하는, 상기 복수의 라우드스피커 로케이션 벡터들을 결정하는 단계; 및
복수의 피연산자들의 합으로서 상기 오디오 객체에 대한 상기 공간 벡터를 결정하는 단계로서, 상기 복수의 피연산자들의 각각의 개별의 피연산자는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 상기 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 개별의 라우드스피커 로케이션에 대응하는 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터와 동등한, 상기 공간 벡터를 결정하는 단계를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법. - 제 7 항에 있어서,
이미지들을 캡처하도록 구성된 하나 이상의 카메라들을 더 포함하고,
상기 하나 이상의 프로세서들은 또한 상기 이미지들에 기초하여 상기 라우드스피커 로케이션들을 결정하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 제 7 항에 있어서,
상기 복수의 로컬 라우드스피커들을 더 포함하고, 상기 복수의 로컬 라우드스피커들은 상기 복수의 렌더링된 오디오 신호들에 기초하여 사운드필드를 재생하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스. - 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562239043P | 2015-10-08 | 2015-10-08 | |
US62/239,043 | 2015-10-08 | ||
US15/266,910 | 2016-09-15 | ||
US15/266,910 US9961475B2 (en) | 2015-10-08 | 2016-09-15 | Conversion from object-based audio to HOA |
PCT/US2016/052251 WO2017062160A1 (en) | 2015-10-08 | 2016-09-16 | Conversion from object-based audio to hoa |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180061218A KR20180061218A (ko) | 2018-06-07 |
KR102032072B1 true KR102032072B1 (ko) | 2019-10-14 |
Family
ID=57043009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020187009766A KR102032072B1 (ko) | 2015-10-08 | 2016-09-16 | 객체-기반의 오디오로부터 hoa로의 컨버전 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9961475B2 (ko) |
EP (1) | EP3360343B1 (ko) |
JP (1) | JP2018534848A (ko) |
KR (1) | KR102032072B1 (ko) |
CN (1) | CN108141689B (ko) |
WO (1) | WO2017062160A1 (ko) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12087311B2 (en) * | 2015-07-30 | 2024-09-10 | Dolby Laboratories Licensing Corporation | Method and apparatus for encoding and decoding an HOA representation |
US10332530B2 (en) * | 2017-01-27 | 2019-06-25 | Google Llc | Coding of a soundfield representation |
KR102490786B1 (ko) * | 2017-04-13 | 2023-01-20 | 소니그룹주식회사 | 신호 처리 장치 및 방법, 그리고 프로그램 |
CN110800048B (zh) | 2017-05-09 | 2023-07-28 | 杜比实验室特许公司 | 多通道空间音频格式输入信号的处理 |
US10674301B2 (en) * | 2017-08-25 | 2020-06-02 | Google Llc | Fast and memory efficient encoding of sound objects using spherical harmonic symmetries |
US10999693B2 (en) * | 2018-06-25 | 2021-05-04 | Qualcomm Incorporated | Rendering different portions of audio data using different renderers |
CN114787918A (zh) * | 2019-12-17 | 2022-07-22 | 索尼集团公司 | 信号处理装置、方法和程序 |
WO2021127286A1 (en) * | 2019-12-18 | 2021-06-24 | Dolby Laboratories Licensing Corporation | Audio device auto-location |
EP4118523A1 (en) | 2020-03-10 | 2023-01-18 | Telefonaktiebolaget LM ERICSSON (PUBL) | Representation and rendering of audio objects |
CN118138980A (zh) * | 2022-12-02 | 2024-06-04 | 华为技术有限公司 | 场景音频解码方法及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140226823A1 (en) | 2013-02-08 | 2014-08-14 | Qualcomm Incorporated | Signaling audio rendering information in a bitstream |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4676140B2 (ja) | 2002-09-04 | 2011-04-27 | マイクロソフト コーポレーション | オーディオの量子化および逆量子化 |
EP2094032A1 (en) | 2008-02-19 | 2009-08-26 | Deutsche Thomson OHG | Audio signal, method and apparatus for encoding or transmitting the same and method and apparatus for processing the same |
US8964994B2 (en) | 2008-12-15 | 2015-02-24 | Orange | Encoding of multichannel digital audio signals |
GB2476747B (en) * | 2009-02-04 | 2011-12-21 | Richard Furse | Sound system |
EP2389016B1 (en) | 2010-05-18 | 2013-07-10 | Harman Becker Automotive Systems GmbH | Individualization of sound signals |
EP2450880A1 (en) | 2010-11-05 | 2012-05-09 | Thomson Licensing | Data structure for Higher Order Ambisonics audio data |
CN104115229B (zh) | 2011-12-23 | 2017-03-08 | 英特尔公司 | 动态存储器性能调节 |
EP2637427A1 (en) * | 2012-03-06 | 2013-09-11 | Thomson Licensing | Method and apparatus for playback of a higher-order ambisonics audio signal |
US20140086416A1 (en) | 2012-07-15 | 2014-03-27 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for three-dimensional audio coding using basis function coefficients |
US9288603B2 (en) | 2012-07-15 | 2016-03-15 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for backward-compatible audio coding |
US9190065B2 (en) | 2012-07-15 | 2015-11-17 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for three-dimensional audio coding using basis function coefficients |
US9473870B2 (en) | 2012-07-16 | 2016-10-18 | Qualcomm Incorporated | Loudspeaker position compensation with 3D-audio hierarchical coding |
EP2875511B1 (en) * | 2012-07-19 | 2018-02-21 | Dolby International AB | Audio coding for improving the rendering of multi-channel audio signals |
EP2743922A1 (en) | 2012-12-12 | 2014-06-18 | Thomson Licensing | Method and apparatus for compressing and decompressing a higher order ambisonics representation for a sound field |
CN108806706B (zh) * | 2013-01-15 | 2022-11-15 | 韩国电子通信研究院 | 处理信道信号的编码/解码装置及方法 |
US9609452B2 (en) * | 2013-02-08 | 2017-03-28 | Qualcomm Incorporated | Obtaining sparseness information for higher order ambisonic audio renderers |
CN104982042B (zh) | 2013-04-19 | 2018-06-08 | 韩国电子通信研究院 | 多信道音频信号处理装置及方法 |
RU2667630C2 (ru) * | 2013-05-16 | 2018-09-21 | Конинклейке Филипс Н.В. | Устройство аудиообработки и способ для этого |
CA3163664A1 (en) * | 2013-05-24 | 2014-11-27 | Dolby International Ab | Audio encoder and decoder |
US20140355769A1 (en) | 2013-05-29 | 2014-12-04 | Qualcomm Incorporated | Energy preservation for decomposed representations of a sound field |
WO2014195190A1 (en) | 2013-06-05 | 2014-12-11 | Thomson Licensing | Method for encoding audio signals, apparatus for encoding audio signals, method for decoding audio signals and apparatus for decoding audio signals |
WO2015060654A1 (ko) * | 2013-10-22 | 2015-04-30 | 한국전자통신연구원 | 오디오 신호의 필터 생성 방법 및 이를 위한 파라메터화 장치 |
US9502045B2 (en) | 2014-01-30 | 2016-11-22 | Qualcomm Incorporated | Coding independent frames of ambient higher-order ambisonic coefficients |
US20150243292A1 (en) * | 2014-02-25 | 2015-08-27 | Qualcomm Incorporated | Order format signaling for higher-order ambisonic audio data |
US10063207B2 (en) * | 2014-02-27 | 2018-08-28 | Dts, Inc. | Object-based audio loudness management |
US10134403B2 (en) * | 2014-05-16 | 2018-11-20 | Qualcomm Incorporated | Crossfading between higher order ambisonic signals |
US9852737B2 (en) | 2014-05-16 | 2017-12-26 | Qualcomm Incorporated | Coding vectors decomposed from higher-order ambisonics audio signals |
KR20220066996A (ko) * | 2014-10-01 | 2022-05-24 | 돌비 인터네셔널 에이비 | 오디오 인코더 및 디코더 |
US9875745B2 (en) | 2014-10-07 | 2018-01-23 | Qualcomm Incorporated | Normalization of ambient higher order ambisonic audio data |
WO2017218973A1 (en) * | 2016-06-17 | 2017-12-21 | Edward Stein | Distance panning using near / far-field rendering |
-
2016
- 2016-09-15 US US15/266,910 patent/US9961475B2/en active Active
- 2016-09-16 KR KR1020187009766A patent/KR102032072B1/ko active IP Right Grant
- 2016-09-16 WO PCT/US2016/052251 patent/WO2017062160A1/en active Application Filing
- 2016-09-16 CN CN201680058050.2A patent/CN108141689B/zh active Active
- 2016-09-16 EP EP16774760.9A patent/EP3360343B1/en active Active
- 2016-09-16 JP JP2018517745A patent/JP2018534848A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140226823A1 (en) | 2013-02-08 | 2014-08-14 | Qualcomm Incorporated | Signaling audio rendering information in a bitstream |
Also Published As
Publication number | Publication date |
---|---|
EP3360343B1 (en) | 2019-12-11 |
US9961475B2 (en) | 2018-05-01 |
CN108141689B (zh) | 2020-06-23 |
WO2017062160A1 (en) | 2017-04-13 |
CN108141689A (zh) | 2018-06-08 |
KR20180061218A (ko) | 2018-06-07 |
JP2018534848A (ja) | 2018-11-22 |
EP3360343A1 (en) | 2018-08-15 |
US20170105085A1 (en) | 2017-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102122672B1 (ko) | 공간 벡터들의 양자화 | |
KR102032072B1 (ko) | 객체-기반의 오디오로부터 hoa로의 컨버전 | |
EP3100265B1 (en) | Indicating frame parameter reusability for coding vectors | |
KR101723332B1 (ko) | 회전된 고차 앰비소닉스의 바이노럴화 | |
EP3400598B1 (en) | Mixed domain coding of audio | |
KR102032073B1 (ko) | 채널 기반의 오디오로부터 hoa로의 컨버전 | |
EP3165001A1 (en) | Reducing correlation between higher order ambisonic (hoa) background channels | |
WO2016033480A2 (en) | Intermediate compression for higher order ambisonic audio data | |
US20150243292A1 (en) | Order format signaling for higher-order ambisonic audio data | |
EP3143618B1 (en) | Closed loop quantization of higher order ambisonic coefficients | |
US20200120438A1 (en) | Recursively defined audio metadata |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |