KR20150123311A - 구면 조화 계수들의 변환 - Google Patents

구면 조화 계수들의 변환 Download PDF

Info

Publication number
KR20150123311A
KR20150123311A KR1020157026860A KR20157026860A KR20150123311A KR 20150123311 A KR20150123311 A KR 20150123311A KR 1020157026860 A KR1020157026860 A KR 1020157026860A KR 20157026860 A KR20157026860 A KR 20157026860A KR 20150123311 A KR20150123311 A KR 20150123311A
Authority
KR
South Korea
Prior art keywords
sound field
bitstream
hierarchical elements
describing
information
Prior art date
Application number
KR1020157026860A
Other languages
English (en)
Other versions
KR101854964B1 (ko
Inventor
디판잔 센
마틴 제임스 모렐
닐스 귄터 페테르스
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20150123311A publication Critical patent/KR20150123311A/ko
Application granted granted Critical
Publication of KR101854964B1 publication Critical patent/KR101854964B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/018Audio watermarking, i.e. embedding inaudible data in the audio signal
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/11Application of ambisonics in stereophonic audio systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Stereophonic System (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

일반적으로, 구면 조화 계수들을 변환하는 기술들이 설명되어 있다. 하나 이상의 프로세서들을 포함하는 디바이스는 상기 기술들을 수행할 수도 있다. 프로세서들은 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성될 수도 있다. 프로세서들은 또한, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 변환을 역수행하도록 상기 변환 정보에 기초하여 상기 사운드 필드를 변환하도록 구성될 수도 있다.

Description

구면 조화 계수들의 변환{TRANSFORMING SPHERICAL HARMONIC COEFFICIENTS}
이 출원은 2013 년 3 월 1 일자로 출원된 미국 가출원 제 61/771,677 호 및 2013 년 7 월 30 일자로 출원된 미국 가출원 제 61/860,201 호의 이익을 주장한다.
이 개시물은 비디오 코딩, 특히, 코딩된 오디오 데이터를 특정하는 비트스트림들에 관한 것이다.
고차 앰비소닉 (higher order ambisonics; HOA) 신호 (종종 복수의 구면 조화 계수들 (spherical harmonic coefficients; SHC) 또는 다른 계층적 엘리먼트들에 의해 표현됨) 는 사운드 필드 (sound field) 의 3 차원 표현이다. 이 HOA 또는 SHC 표현은, 이 SHC 신호로부터 렌더링된 (rendered) 멀티-채널 오디오 신호를 플레이백 (playback) 하기 위해 이용된 국부적 스피커 기하구조에 독립적인 방식으로 이 사운드 필드를 나타낼 수도 있다. 이 SHC 신호는 5.1 오디오 채널 포맷 또는 7.1 오디오 채널 포맷과 같이, 잘 알려지고 고도로 채택된 멀티-채널 포맷들에 렌더링될 수도 있으므로, 이 SHC 신호는 또한 역호환성 (backwards compatibility) 을 용이하게 할 수도 있다. 그러므로, SHC 표현은 역호환성을 또한 수용하는 사운드 필드의 더욱 양호한 표현을 가능하게 할 수도 있다.
일반적으로, 오디오 데이터를 나타내는 비트스트림에서 오디오 정보를 시그널링하고 오디오 데이터에 대한 변환을 수행하기 위한 다양한 기법들이 설명된다. 일부의 양태들에서는, 고차 앰비소닉 (HOA) 계수들 (또한, 구면 조화 계수들로서 지칭될 수도 있음) 과 같은 복수의 계층적 엘리먼트들 중 비-제로 (non-zero) 서브세트의 어느 것이 비트스트림에 포함되는지를 시그널링하기 위한 기법들이 설명된다. HOA 계수들의 일부가 사운드 필드를 기술하는 것에 관련한 정보를 제공하지 않을 수도 있는 것으로 주어질 시에, 오디오 인코더는 복수의 HOA 계수들을, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 HOA 계수들의 서브세트로 감소시킬 수도 있음으로써, 코딩 효율을 증가시킬 수도 있다. 그 결과, 기법들의 다양한 양태들은 HOA 계수들 및/또는 그 인코딩된 버전들을 포함하는 비트스트림에서, 비트스트림에 실제적으로 포함되는 HOA 계수들 중 그러한 것들 (예컨대, 계수들의 전부는 아니지만, HOA 계수들의 적어도 하나를 포함하는 HOA 계수들의 비-제로 서브세트) 을 특정하는 것을 가능하게 할 수도 있다. HOA 계수들의 서브세트를 식별하는 정보는 위에서 언급된 바와 같이 비트스트림에서, 또는 일부의 사례들에서는 부채널 정보 (side channel information) 에서 특정될 수도 있다.
다른 양태들에서, 비트스트림에서 특정되어야 하는 SHC 의 수를 감소시키도록 SHC 를 변환함으로써 코딩 효율을 증가시키기 위한 기법들이 설명된다. 즉, 기법들은 비트스트림에서 특정되어야 하는 SHC 의 수를 감소시킨 결과로, SHC 에 대한 선형 가역 변환의 일부의 형태를 수행할 수도 있다. 선형 가역 변환의 예들은 회전, 병진, 이산 코사인 변환 (discrete cosine transform; DCT), 이산 푸리에 변환 (discrete Fourier transform; DFT), 및 벡터 기반 분해들을 포함한다. 벡터 기반 분해들은, 구면 조화 도메인으로부터 다른 도메인으로의 SHC 의 변환을 수반할 수도 있다. 벡터 기반 분해의 예들은 특이값 분해 (SVD), 주요 컴포넌트 분석 (PCA) 및 KLT (Karhunen-Loeve transform) 을 포함한다. 다음으로, 기법들은 SHC 에 대하여 수행된 변환을 식별하는 "변환 정보" 를 특정할 수도 있다. 예를 들어, 회전이 SHC 에 대하여 수행될 때, 기법들은 (종종 다양한 회전 각도들의 측면에서) 회전을 식별하는 회전 정보를 특정하는 것을 제공할 수도 있다. SVD 가 또 다른 예로서 수행될 때, 기법들은 SVD 가 수행되었음을 표시하는 플래그 (flag) 를 제공할 수도 있다.
하나의 예에서, 오디오 컨텐츠를 나타내는 비트스트림을 생성하는 방법은, 비트스트림에서, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하는 단계, 및 비트스트림에서, 식별된 복수의 계층적 엘리먼트들을 특정하는 단계를 포함한다.
또 다른 예에서, 오디오 컨텐츠를 나타내는 비트스트림을 생성하도록 구성된 디바이스는, 비트스트림에서, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하고, 비트스트림에서, 식별된 복수의 계층적 엘리먼트들을 특정하도록 구성된 하나 이상의 프로세서들을 포함한다.
또 다른 예에서, 오디오 컨텐츠를 나타내는 비트스트림을 생성하도록 구성된 디바이스는, 비트스트림에서, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하기 위한 수단, 및 비트스트림에서, 식별된 복수의 계층적 엘리먼트들을 특정하기 위한 수단을 포함한다.
또 다른 예에서, 비-일시적인 컴퓨터-판독가능한 저장 매체는 명령들을 저장하고, 상기 명령들은, 실행될 경우, 하나 이상의 프로세서들로 하여금, 비트스트림에서, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하게 하고, 비트스트림에서, 식별된 복수의 계층적 엘리먼트들을 특정하게 한다.
또 다른 예에서, 오디오 컨텐츠를 나타내는 비트스트림을 프로세싱하는 방법은, 비트스트림으로부터, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하는 단계, 및 식별된 복수의 계층적 엘리먼트들을 결정하기 위하여 비트스트림을 파싱하는 단계를 포함한다.
또 다른 예에서, 오디오 컨텐츠를 나타내는 비트스트림을 프로세싱하도록 구성된 디바이스는, 비트스트림으로부터, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하고, 식별된 복수의 계층적 엘리먼트들을 결정하기 위하여 비트스트림을 파싱하도록 구성된 하나 이상의 프로세서들을 포함한다.
또 다른 예에서, 오디오 컨텐츠를 나타내는 비트스트림을 프로세싱하도록 구성된 디바이스는, 비트스트림으로부터, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하기 위한 수단, 및 식별된 복수의 계층적 엘리먼트들을 결정하기 위하여 비트스트림을 파싱하기 위한 수단을 포함한다.
또 다른 예에서, 비-일시적인 컴퓨터-판독가능한 저장 매체는 명령들을 저장하고, 상기 명령들은, 실행될 경우, 하나 이상의 프로세서들로 하여금, 비트스트림으로부터, 비트스트림에 포함되는 사운드 필드를 기술하는 복수의 계층적 엘리먼트들을 식별하게 하고, 식별된 복수의 계층적 엘리먼트들을 결정하기 위하여 비트스트림을 파싱하게 한다.
또 다른 예에서, 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 이루어진 비트스트림을 생성하는 방법은, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 사운드 필드를 변환하는 단계, 및 사운드 필드가 어떻게 변환되었는지를 기술하는 비트스트림에서의 변환 정보를 특정하는 단계를 포함한다.
또 다른 예에서, 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 이루어진 비트스트림을 생성하도록 구성된 디바이스는, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 사운드 필드를 변환하고, 사운드 필드가 어떻게 변환되었는지를 기술하는 비트스트림에서의 변환 정보를 특정하도록 구성된 하나 이상의 프로세서들을 포함한다.
또 다른 예에서, 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 이루어진 비트스트림을 생성하도록 구성된 디바이스는, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 사운드 필드를 변환하기 위한 수단, 및 사운드 필드가 어떻게 변환되었는지를 기술하는 비트스트림에서의 변환 정보를 특정하기 위한 수단을 포함한다.
또 다른 예에서, 비-일시적인 컴퓨터-판독가능한 저장 매체는 명령들을 저장하고, 상기 명령들은, 실행될 경우, 하나 이상의 프로세서들로 하여금, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 사운드 필드를 변환하게 하고, 사운드 필드가 어떻게 변환되었는지를 기술하는 비트스트림에서의 변환 정보를 특정하게 한다.
또 다른 예에서, 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 이루어진 비트스트림을 프로세싱하는 방법은, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하는 단계, 및 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들 중 그러한 것들에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 변환을 반전시키기 위하여 변환 정보에 기초하여 사운드 필드를 변환하는 단계를 포함한다.
또 다른 예에서, 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 이루어진 비트스트림을 프로세싱하도록 구성된 디바이스는, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하고, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들 중 그러한 것들에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 변환을 반전시키기 위하여 변환 정보에 기초하여 사운드 필드를 변환하도록 구성된 하나 이상의 프로세서들을 포함한다.
또 다른 예에서, 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 이루어진 비트스트림을 프로세싱하도록 구성된 디바이스는, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하기 위한 수단, 및 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들 중 그러한 것들에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 변환을 반전시키기 위하여 변환 정보에 기초하여 사운드 필드를 변환하기 위한 수단을 포함한다.
또 다른 예에서, 비-일시적인 컴퓨터-판독가능한 저장 매체는 명령들을 저장하고, 상기 명령들은, 실행될 경우, 하나 이상의 프로세서들로 하여금, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하게 하고, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들 중 그러한 것들에 기초하여 사운드 필드를 재생할 때, 변환 정보에 기초하여 사운드 필드를 변환하게 한다.
기법들의 하나 이상의 양태들의 세부사항들은 첨부한 도면들 및 이하의 설명에서 기재된다. 이 기법들의 다른 특징들, 목적들, 및 장점들은 설명 및 도면들로부터, 그리고 청구항들로부터 명백할 것이다.
도 1 및 도 2 는 다양한 차수 (order) 들 및 하위-차수 (sub-order) 들의 구면 조화 기저 함수 (spherical harmonic basis function) 들을 예시하는 도면들이다.
도 3 은 이 개시물에서 설명된 기법들의 다양한 양태들을 구현할 수도 있는 시스템을 예시하는 도면이다.
도 4a 및 도 4b 는 도 3 의 예에서 도시된 비트스트림 생성 디바이스의 일 예의 구현들을 예시하는 블록도들이다.
도 5a 및 도 5b 는 사운드 필드를 회전시키기 위하여 이 개시물에서 설명된 기법들의 다양한 양태들을 수행하는 예를 예시하는 도면들이다.
도 6 은 제 2 기준 프레임의 측면에서 사운드 필드를 표현하기 위하여, 이 개시물에서 설명된 기법들에 따라 그때에 회전되는 제 1 기준 프레임에 따라 캡처된 일 예의 사운드 필드를 예시하는 도면이다.
도 7a 내지 도 7e 는 이 개시물에서 설명된 기법들에 따라 형성된 비트스트림의 예들을 예시한다.
도 8 은 이 개시물에서 설명된 기법들의 회전 양태들을 수행함에 있어서 도 3 의 비트스트림 생성 디바이스의 일 예의 동작을 예시하는 플로우차트이다.
도 9 는 이 개시물에서 설명된 기법들의 회전 양태들을 수행함에 있어서 도 3 의 예에서 도시된 비트스트림 생성 디바이스의 일 예의 동작을 예시하는 플로우차트이다.
도 10 은 이 개시물에서 설명된 기법들의 다양한 양태들을 수행함에 있어서 추출 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
도 11 은 이 개시물에서 설명된 기법들의 다양한 양태들을 수행함에 있어서 비트스트림 생성 디바이스 및 추출 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
서라운드 사운드 (surround sound) 의 진화는 요즘 엔터테인먼트를 위한 다수의 출력 포맷들을 이용가능하게 하였다. 이러한 서라운드 사운드 포맷들의 예들은 대중적인 5.1 포맷 (다음의 6 개의 채널들: 전방 좌측 (front left; FL), 전방 우측 (front right; FR), 중앙 또는 전방 중앙, 후방 좌측 또는 서라운드 좌측, 후방 우측 또는 서라운드 우측, 및 저주파수 효과들 (low frequency effects; LFE) 을 포함함), 성장하는 7.1 포맷, 및 (예컨대, 초고해상도 텔레비전 (Ultra High Definition Television) 표준과 함께 이용하기 위한) 당면한 22.2 포맷을 포함한다. 추가의 예들은 구면 조화 어레이 (spherical harmonic array) 를 위한 포맷들을 포함한다.
미래의 MPEG 인코더에 대한 입력은 선택적으로 3 개의 가능한 포맷들 중 하나이다: (i) 사전-특정된 위치들에서 라우드스피커들을 통해 플레이되도록 의도되는 전통적인 채널-기반 오디오; (ii) (다른 정보 중에서) 그 장소 좌표들을 포함하는 연관된 메타데이터를 갖는 단일 오디오 객체들에 대한 개별 펄스-코드-변조 (pulse-code-modulation; PCM) 데이터를 포함하는 객체-기반 오디오 (object-based audio); 및 (iii) 구면 조화 기저 함수들의 계수들 (또한, "구면 조화 계수들" 또는 SHC 로 칭해짐) 을 이용하여 사운드 필드를 나타내는 것을 포함하는 장면-기반 오디오 (scene-based audio).
시장에는 다양한 '서라운드-사운드' 포맷들이 있다. 이들은 예를 들어, (스테레오를 넘어서서 거실 내로 진출을 행하는 측면에서 가장 성공적이었던) 5.1 홈 시어터 시스템으로부터 NHK (일본 방송 협회 또는 Japan Broadcasting Corporation) 에 의해 개발된 22.2 시스템까지의 범위이다. 컨텐츠 크리에이터 (content creator) 들 (예컨대, 헐리우드 스튜디오 (Hollywood studios)) 은 영화에 대한 사운드트랙을 한 번 생성하기를 원할 것이고, 각각의 스피커 구성에 대해 그것을 리믹스 (remix) 하기 위한 노력들을 소비하기를 원하지 않을 것이다. 최근, 표준 위원회들은 표준화된 비트스트림으로의 인코딩과, 렌더러 (renderer) 의 장소에서의 스피커 기하구조 및 음향 조건들에 대해 적응가능하고 불가지적 (agnostic) 인 추후의 디코딩을 제공하기 위한 방법들을 고려하고 있었다.
컨텐츠 크리에이터들에 대해 이러한 유연성을 제공하기 위하여, 엘리먼트들의 계층적인 세트가 사운드 필드를 나타내기 위하여 이용될 수도 있다. 엘리먼트들의 계층적인 세트는, 저차 (lower-ordered) 엘리먼트들의 기본 세트가 모델링된 사운드 필드의 전체 표현을 제공하도록 엘리먼트들이 순서화되어 있는 엘리먼트들의 세트를 지칭할 수도 있다. 세트가 고차 엘리먼트들을 포함하도록 신장될수록, 표현은 더욱 상세하게 된다.
엘리먼트들의 계층적인 세트의 하나의 예는 구면 조화 계수들 (SHC) 의 세트이다. 다음의 표현식은 SHC 를 이용하여 사운드 필드의 설명 또는 표현을 입증한다.
Figure pct00001
이 표현식은 사운드 필드의 임의의 포인트
Figure pct00002
에서의 압력
Figure pct00003
이 SHC
Figure pct00004
에 의해 고유하게 표현될 수 있음을 보여준다. 여기서,
Figure pct00005
이고, c 는 음의 속도 (~343 m/s) 이고,
Figure pct00006
는 기준 포인트 (또는 관찰 포인트) 이고,
Figure pct00007
는 차수 n 의 구면 베젤 함수 (spherical Bessel function) 이고,
Figure pct00008
는 차수 n 및 하위차수 m 의 구면 조화 기저 함수들이다. 대괄호 내의 항은, 이산 푸리에 변환 (discrete Fourier transform; DFT), 이산 코사인 변환 (discrete cosine transform; DCT), 또는 웨이블렛 변환 (wavelet transform) 과 같은 다양한 시간-주파수 변환들에 의해 근사화될 수 있는 신호 (즉,
Figure pct00009
) 의 주파수-도메인 표현인 것이 인식될 수 있다. 계층적인 세트들의 다른 예들은 웨이블렛 변환 계수들의 세트들, 및 멀티해상도 기저 함수들의 계수들의 다른 세트들을 포함한다.
도 1 은 제로 차수 (n = 0) 로부터 제 4 차수 (n = 4) 까지의 구면 조화 기저 함수들을 예시하는 도면이다. 알 수 있는 바와 같이, 각각의 차수에 대하여, 예시 목적들의 용이함을 위하여 도 1 의 예에서 도시되어 있지만, 명시적으로 표기되지는 않은 하위차수들 m 의 확장이 있다.
도 2 는 제로 차수 (n = 0) 로부터 제 4 차수 (n = 4) 까지의 구면 조화 기저 함수들을 예시하는 또 다른 도면이다. 도 2 에서, 구면 조화 기저 함수들은 차수 및 하위차수 양자가 도시되어 있는 3 차원 좌표 공간에서 도시되어 있다.
여하튼, SHC
Figure pct00010
는 다양한 마이크로폰 어레이 구성들에 의해 물리적으로 취득 (예컨대, 레코딩) 될 수 있거나, 또는 대안적으로, 이들은 사운드 필드의 채널-기반 또는 객체-기반 설명들로부터 유도될 수 있다. 전자는 인코더로의 장면-기반 오디오 입력을 나타낸다. 예를 들어, 1+24 (25, 그리고 이에 따라, 제 4 차수) 계수들을 포함하는 제 4 차수 표현이 이용될 수도 있다.
이 SHC 들이 객체-기반 설명으로부터 어떻게 유도될 수도 있는지를 예시하기 위하여, 다음의 수학식을 고려하자. 개별적인 오디오 객체에 대응하는 사운드 필드에 대한 계수들
Figure pct00011
은 다음과 같이 표현될 수도 있다.
Figure pct00012
여기서, i 는
Figure pct00013
이고,
Figure pct00014
는 차수 n 의 (제 2 종류의) 구면 한켈 함수 (spherical Hankel function) 이고,
Figure pct00015
는 객체의 장소이다. (예컨대, PCM 스트림에 대해 고속 푸리에 변환을 수행하는 것과 같은 시간-주파수 분석 기법들을 이용하여) 소스 에너지
Figure pct00016
를 주파수의 함수로서 인지하는 것은 우리가 각각의 PCM 객체 및 그 장소를 SHC
Figure pct00017
로 변환하도록 한다. 또한, (상기한 것이 선형 및 직교 분해이므로) 각각의 객체에 대한
Figure pct00018
계수들이 부가적인 것으로 보여질 수 있다. 이러한 방식으로, 다수의 PCM 객체들은 (예컨대, 개별적인 객체들에 대한 계수 벡터들의 합으로서)
Figure pct00019
계수들에 의해 표현될 수 있다. 본질적으로, 이 계수들은 사운드 필드에 대한 정보 (3D 좌표들의 함수로서의 압력) 를 포함하고, 상기한 것은 관찰 포인트
Figure pct00020
근처에서, 개별적인 객체들로부터 전체적인 사운드 필드의 표현으로의 변환을 나타낸다. 나머지 도면들은 객체-기반 및 SHC-기반 오디오 코딩의 문맥에서 이하에서 설명된다.
SHC 들은 PCT 객체들로부터 유도될 수도 있지만, SHC 들은 또한, 다음과 같이 마이크로폰-어레이로부터 유도될 수도 있다:
Figure pct00021
여기서,
Figure pct00022
Figure pct00023
(SHC) 의 시간-도메인 등가물이고, * 는 컨볼루션 연산 (convolution operation) 을 나타내고, <,> 는 내적 (inner product) 을 나타내고,
Figure pct00024
r i 에 종속적인 시간-도메인 필터 함수를 나타내고, m i (t) 는 i 번째 마이크로폰 신호이며, 여기서, i 번째 마이크로폰 트랜스듀서는 반경
Figure pct00025
, 고도각 (elevation angle)
Figure pct00026
및 방위각 (azimuth angle)
Figure pct00027
에서 위치된다. 따라서, 마이크로폰 어레이에서 32 개의 트랜스듀서들이 있고 각각의 마이크로폰이 (mhAcoustics 로부터의 Eigenmike EM32 상의 트랜스듀서들과 같이) r i = a 가 상수가 되도록 구 (sphere) 상에 위치될 경우, 25 개의 SHC 들은 다음과 같이 행렬 연산을 이용하여 유도될 수도 있다:
Figure pct00028
상기 수학식에서의 행렬은 더욱 일반적으로
Figure pct00029
로서 지칭될 수도 있으며, 여기서, 아래첨자 s 는 행렬이 어떤 트랜스듀서 기하구조-세트 s 에 대한 것임을 표시할 수도 있다. (* 에 의해 표시된) 상기 수학식에서의 컨볼루션은, 예를 들어, 출력
Figure pct00030
Figure pct00031
와,
Figure pct00032
행렬의 제 1 행 (row) 및 (벡터 곱셈의 결과가 시계열인 사실을 고려하여, 시간의 함수로서 변동되는) 마이크로폰 신호들의 열 (column) 의 벡터 곱셈 (vector multiplication) 으로부터 기인하는 시계열 (time series) 과의 사이의 컨볼루션의 결과가 되도록, 행-대-행 (row-by-row) 에 기초하고 있다. 연산은 마이크로폰의 트랜스듀서 위치들이 (Eigenmike 트랜스듀서 기하구조와 매우 근접한) 소위 T-설계 기하구조들 내에 있을 때에 가장 정확할 수도 있다. T-설계 기하구조의 하나의 특성은, 기하구조로부터 기인하는
Figure pct00033
행렬이 매우 양호하게 거동된 역 (또는 의사 역 (pseudo inverse)) 을 가지는 것과, 또한, 역이 종종 행렬
Figure pct00034
의 병치 (transpose) 에 의해 매우 양호하게 근사화될 수도 있다는 것일 수도 있다.
Figure pct00035
에 의한 필터링 동작이 무시되어야 할 경우, 이 속성은 SHC (즉, 이 예에서
Figure pct00036
) 로부터의 마이크로폰 신호들의 복구를 허용할 수도 있다. 나머지 도면들은 SHC-기반 오디오-코딩의 문맥에서 이하에서 설명된다.
일반적으로, 이 개시물에서 설명된 기법들은 공간 도메인 변환 및 정합하는 역 변환에 대한 구면 조화 도메인의 이용을 통한 사운드 필드의 지향성 변환 (directional transformation) 에 대한 강건한 접근법을 제공할 수도 있다. 사운드 필드 지향성 변환은 회전, 틸트 (tilt) 및 텀블 (tumble) 에 의하여 제어될 수도 있다. 일부의 사례들에서는, 새로운 계수들을 생성하기 위하여 주어진 차수의 계수들만이 병합되어, 이것은 필터들이 이용될 때에 발생할 수도 있는 것과 같은 차수간 (inter-order) 종속성들이 전혀 없음을 의미한다. 다음으로, 구면 조화 및 공간 도메인 사이의 결과적인 변환은 행렬 연산으로서 표현될 수도 있다. 그 결과, 지향성 변환은, 이 지향성 변환이 동일하게 지향성으로 변환된 렌더러의 이용에 의해 상쇄될 수 있다는 점에서 완전히 가역적일 수도 있다. 이 지향성 변환의 하나의 응용은 기초적인 사운드 필드를 나타내기 위하여 요구된 구면 조화 계수들의 수를 감소시키기 위한 것일 수도 있다. 회전된 사운드 필드를 나타내기 위하여 최고 에너지의 영역을 최소 수의 구면 조화 계수들을 요구하는 사운드 필드 방향과 정렬함으로써 감소가 달성될 수도 있다. 계수들의 수의 훨씬 추가의 감소는 에너지 임계을 채용함으로써 달성될 수도 있다. 이 에너지 임계은 정보의 대응하는 지각가능한 손실 없이 요구된 계수들의 수를 감소시킬 수도 있다. 이것은 중복적인 스펙트럼 정보가 아니라 중복적인 공간 정보를 제거함으로써 구면 조화 기반 오디오 자료의 송신 (또는 저장) 을 요구하는 응용들에 대해 유익할 수도 있다.
도 3 은 구면 조화 계수들을 이용하여 오디오 데이터를 잠재적으로 더욱 효율적으로 나타내기 위하여 이 개시물에서 설명된 기법들을 수행할 수도 있는 시스템 (20) 을 예시하는 도면이다. 도 3 의 예에서 도시된 바와 같이, 시스템 (20) 은 컨텐츠 크리에이터 (22) 및 컨텐츠 소비자 (24) 를 포함한다. 컨텐츠 크리에이터 (22) 및 컨텐츠 소비자 (24) 의 문맥에서 설명되었지만, 기법들은 SHC 들 또는 사운드 필드의 임의의 다른 계층적 표현이 오디오 데이터를 나타내는 비트스트림을 형성하기 위하여 인코딩되는 임의의 상황에서 구현될 수도 있다.
컨텐츠 크리에이터 (22) 는 컨텐츠 소비자 (24) 와 같은 컨텐츠 소비자들에 의한 소비를 위한 멀티-채널 오디오 컨텐츠를 생성할 수도 있는 영화 스튜디오 또는 다른 엔티티를 나타낼 수도 있다. 종종, 이 컨텐츠 크리에이터는 비디오 컨텐츠와 함께 오디오 컨텐츠를 생성한다. 컨텐츠 소비자 (24) 는, 멀티-채널 오디오 컨텐츠로서의 플레이백을 위해 SHC 를 렌더링할 수 있는 임의의 형태의 오디오 플레이백 시스템을 지칭할 수도 있는 오디오 플레이백 시스템을 소유하거나 액세스하는 개인을 나타낸다. 도 3 의 예에서, 컨텐츠 소비자 (24) 는 오디오 플레이백 시스템 (32) 을 포함한다.
컨텐츠 크리에이터 (22) 는 오디오 편집 시스템 (30) 을 포함한다. 오디오 렌더러 (26) 는 스피커 피드들 (또한, "라우드스피커 피드들", "스피커 신호들", 또는 "라우드스피커 신호들" 로서 지칭될 수도 있음) 을 렌더링하거나 이와 다르게 생성하는 오디오 프로세싱 유닛을 나타낼 수도 있다. 각각의 스피커 피드는 멀티-채널 오디오 시스템의 특별한 채널에 대한 음을 재생하는 스피커 피드에 대응할 수도 있다. 도 3 의 예에서, 렌더러 (28) 는 기존의 5.1, 7.1 또는 22.2 서라운드 사운드 포맷들에 대한 스피커 피드들을 렌더링할 수도 있어서, 5.1, 7.1 또는 22.2 서라운드 사운드 스피커 시스템들에서 5, 7 또는 22 개의 스피커들의 각각에 대한 스피커 피드를 생성할 수도 있다. 대안적으로, 렌더러 (28) 는 위에서 논의된 소스 구면 조화 계수들의 속성들이 주어질 시에, 임의의 수의 스피커들을 가지는 임의의 스피커 구성에 대한 소스 구면 조화 계수들로부터 스피커 피드들을 렌더링하도록 구성될 수도 있다. 이러한 방식으로, 오디오 렌더러 (28) 는 도 3 에서 스피커 피드들 (29) 로서 나타내어지는 다수의 스피커 피드들을 생성할 수도 있다.
컨텐츠 크리에이터는 편집 프로세스 동안에, 구면 조화 계수들 (27) ("SHC (27)") 을 렌더링할 수도 있어서, 고충실도 (high fidelity) 를 가지지 않거나 설득력 있는 서라운드 사운드 경험을 제공하지 않는 사운드 필드의 양태들을 식별하기 위한 시도로 렌더링된 스피커 피드들을 청취할 수도 있다. 다음으로, 컨텐츠 크리에이터 (22) 는 (소스 구면 조화 계수들이 위에서 설명된 방식으로 유도될 수도 있는 상이한 객체들의 조작을 통해 종종 간접적으로) 소스 구면 조화 계수들을 편집할 수도 있다. 컨텐츠 크리에이터 (22) 는 구면 조화 계수들 (27) 을 편집하기 위하여 오디오 편집 시스템 (30) 을 채용할 수도 있다. 오디오 편집 시스템 (30) 은 오디오 데이터를 편집할 수 있으며 이 오디오 데이터를 하나 이상의 소스 구면 조화 계수들로서 출력할 수 있는 임의의 시스템을 나타낸다.
편집 프로세스가 완료될 때, 컨텐츠 크리에이터 (22) 는 구면 조화 계수들 (27) 에 기초하여 비트스트림 (31) 을 생성할 수도 있다. 즉, 컨텐츠 크리에이터 (22) 는 이하에서 더욱 상세하게 설명된 바와 같이, 예컨대, 유선 또는 무선 채널일 수도 있는 송신 채널에 걸친 송신을 위해, 비트스트림 (31) 을 생성할 수 있는 임의의 디바이스를 나타낼 수도 있는 비트스트림 생성 디바이스 (36), 데이터 저장 디바이스 등을 포함한다. 일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는, (하나의 예로서 엔트로피 인코딩을 통해) 구면 조화 계수들 (27) 을 대역폭 압축하며 비트스트림 (31) 을 형성하기 위하여 수용된 포맷으로 구면 조화 계수들 (27) 의 엔트로피 인코딩된 버전을 배열하는 인코더를 나타낼 수도 있다. 다른 사례들에서, 비트스트림 생성 디바이스 (36) 는, 하나의 예로서, 멀티-채널 오디오 컨텐츠 또는 그 파생물 (derivative) 들을 압축하기 위하여 기존의 오디오 서라운드 사운드 인코딩 프로세스들의 것들과 유사한 프로세스들을 이용하여 멀티-채널 오디오 컨텐츠 (29) 를 인코딩하는 오디오 인코더 (아마도, MPEG 서라운드 또는 그 파생물과 같은 알려진 오디오 코딩 표준을 준수하는 것) 를 나타낼 수도 있다. 다음으로, 압축된 멀티-채널 오디오 컨텐츠 (29) 는 컨텐츠 (29) 를 대역폭 압축하기 위한 일부의 다른 방법으로 엔트로피 인코딩 또는 코딩될 수도 있고, 비트스트림 (31) 을 형성하기 위하여 합의된 (또는 다시 말해서, 특정된) 포맷에 따라 배열될 수도 있다. 비트스트림 (31) 을 형성하기 위하여 직접적으로 압축되거나, 비트스트림 (31) 을 형성하기 위하여 렌더링되고, 그 다음에 압축되든지 간에, 컨텐츠 크리에이터 (22) 는 비트스트림 (31) 을 컨텐츠 소비자 (24) 에게 송신할 수도 있다.
도 3 에서, 컨텐츠 소비자 (24) 에게 직접적으로 송신되는 것으로 도시되어 있지만, 컨텐츠 크리에이터 (22) 는 비트스트림 (31) 을, 컨텐츠 크리에이터 (22) 및 컨텐츠 소비자 (24) 사이에 위치된 중간 디바이스로 출력할 수도 있다. 이 중간 디바이스는 이 비트스트림을 요청할 수도 있는 컨텐츠 소비자 (24) 로의 더 이후의 전달을 위해 비트스트림 (31) 을 저장할 수도 있다. 중간 디바이스는 파일 서버, 웹 서버, 데스크톱 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 이동 전화, 스마트폰, 또는 오디오 디코더에 의해 더 이후의 취출 (retrieval) 을 위해 비트스트림 (31) 을 저장할 수 있는 임의의 다른 디바이스를 포함할 수도 있다. 이 중간 디바이스는 비트스트림 (31) 을 요청하는 컨텐츠 소비자 (24) 와 같은 가입자들에게 비트스트림 (31) 을 스트리밍 (그리고 아마도, 대응하는 비디오 데이터 비트스트림을 송신하는 것과 함께) 할 수 있는 컨텐츠 전달 네트워크에서 존재할 수도 있다.
대안적으로, 컨텐츠 크리에이터 (22) 는 비트스트림 (31) 을, 컴팩트 디스크, 디지털 비디오 디스크, 고해상도 비디오 디스크 또는 다른 저장 매체들과 같은 저장 매체에 저장할 수도 있고, 이 매체들의 대부분은 컴퓨터에 의해 판독될 수 있고, 그러므로, 컴퓨터-판독가능한 저장 매체들 또는 비-일시적인 (non-transitory) 컴퓨터-판독가능한 저장 매체들로서 지칭될 수도 있다. 이 문맥에서, 송신 채널은 이 매체들에 저장된 컨텐츠가 송신되는 (그리고 소매점들 및 다른 점포-기반 전달 메커니즘을 포함할 수도 있는) 그러한 채널들을 지칭할 수도 있다. 여하튼, 이 개시물의 기법들은 그러므로 도 3 의 예에 대해 이와 관련하여 제한되지 않아야 한다.
도 3 의 예에서 추가로 도시된 바와 같이, 컨텐츠 소비자 (24) 는 오디오 플레이백 시스템 (32) 을 포함한다. 오디오 플레이백 시스템 (32) 은 멀티-채널 오디오 데이터를 플레이백할 수 있는 임의의 오디오 플레이백 시스템을 나타낼 수도 있다. 오디오 플레이백 시스템 (32) 은 다수의 상이한 렌더러들 (34) 을 포함할 수도 있다. 렌더러들 (34) 은 상이한 형태의 렌더링을 각각 제공할 수도 있으며, 여기서, 상이한 형태들의 렌더링은 벡터-기반 진폭 패닝 (vector-base amplitude panning; VBAP) 을 수행하는 다양한 방법들 중 하나 이상, 및/또는 사운드 필드 합성을 수행하는 다양한 방법들 중 하나 이상을 포함할 수도 있다.
오디오 플레이백 시스템 (32) 은 추출 디바이스 (38) 를 더 포함할 수도 있다. 추출 디바이스 (38) 는 비트스트림 생성 디바이스 (36) 의 프로세스와 일반적으로 상반적일 수도 있는 프로세스를 통해 구면 조화 계수들 (27') (구면 조화 계수들 (27) 의 수정된 형태 또는 복제를 나타낼 수도 있는 "SHC (27')") 을 추출할 수 있는 임의의 디바이스를 나타낼 수도 있다. 여하튼, 오디오 플레이백 시스템 (32) 은 구면 조화 계수들 (27') 을 수신할 수도 있고 렌더러들 (34) 중 하나를 선택할 수도 있다. 다음으로, 렌더러들 (34) 중 선택된 하나는 (예시 목적들의 용이함을 위하여 도 3 의 예에서 도시되지 않은, 오디오 플레이백 시스템 (32) 에 전기적으로 또는 아마도 무선으로 결합된 다수의 라우드스피커들에 대응하는) 다수의 스피커 피드들 (35) 을 생성하기 위하여 구면 조화 계수들 (27') 을 렌더링할 수도 있다.
전형적으로, 비트스트림 생성 디바이스 (36) 가 SHC (27) 를 직접적으로 인코딩할 때, 비트스트림 생성 디바이스 (36) 는 SHC (27) 의 전부를 인코딩한다. 사운드 필드의 각각의 표현에 대해 전송된 SHC (27) 의 수는 차수에 종속적이고, (1+n)2/샘플로서 수학적으로 표현될 수도 있으며, 여기서, n 은 다시 차수를 나타낸다. 사운드 필드의 제 4 차수 표현을 달성하기 위하여, 하나의 예로서, 25 개의 SHC 들이 유도될 수도 있다. 전형적으로, SHC 들의 각각은 32-비트 부호 있는 부동 소수점 수 (signed floating point number) 로서 표현된다. 따라서, 사운드 필드의 제 4 차수 표현을 표현하기 위하여, 총 25x32 또는 800 비트들/샘플이 이 예에서 요구된다. 48 kHz 의 샘플링 레이트가 이용될 때, 이것은 800x48,000 또는 38,400,000 비트/초 (bit/second) 를 나타낸다. 일부의 사례들에서, SHC (27) 중 하나 이상은 핵심적인 정보 (컨텐츠 소비자 (24) 에서 재생될 때에 사운드 필드를 설명함에 있어서 가청가능하거나 중요한 오디오 정보를 포함하는 정보를 지칭할 수도 있음) 를 특정하지 않을 수도 있다. SHC (27) 의 이 비-핵심적인 것들을 인코딩하는 것은 (송신 메커니즘의 컨텐츠 전달 네트워크 타입을 가정하면) 송신 채널을 통한 대역폭의 비효율적인 이용으로 귀착될 수도 있다. 이 계수들의 저장을 포함하는 응용에서, 상기한 것은 저장 공간의 비효율적인 이용을 나타낼 수도 있다.
일부의 사례들에서, 비트스트림 (31) 내에 포함되는 SHC (27) 의 서브세트를 식별할 때, 비트스트림 생성 디바이스 (36) 는 SHC (27) 의 대응하는 하나가 비트스트림 (31) 내에 포함되는지 여부를 식별하는 복수의 비트들 중 상이한 하나로 복수의 비트들을 가지는 필드를 특정할 수도 있다. 일부의 사례들에서, 비트스트림 (31) 내에 포함되는 SHC (27) 의 서브세트를 식별할 때, 비트스트림 생성 디바이스 (36) 는
Figure pct00037
비트들과 동일한 복수의 비트들을 가지는 필드를 특정할 수도 있으며, 여기서, n 은 사운드 필드를 기술하는 엘리먼트들의 계층적 세트의 차수를 나타내고, 복수의 비트들의 각각은 SHC (27) 의 대응하는 하나가 비트스트림 (31) 내에 포함되는지 여부를 식별한다.
일부의 사례들에서, 비트스트림 (31) 내에 포함되는 SHC (27) 의 서브세트를 식별할 때, 비트스트림 생성 디바이스 (36) 는 SHC (27) 의 대응하는 하나가 비트스트림 (31) 내에 포함되는지 여부를 식별하는 복수의 비트들 중 상이한 하나로 복수의 비트들을 가지는 비트스트림 (31) 에서의 필드를 특정할 수도 있다. SHC (27) 의 식별된 서브세트를 특정할 때, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서, 복수의 비트들을 가지는 필드 직후에 SHC (27) 의 식별된 서브세트를 특정할 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 SHC (27) 중 하나 이상이 사운드 필드를 기술하는 것에 관련한 정보를 가지는 것으로 추가적으로 결정할 수도 있다. 비트스트림 (31) 내에 포함되는 SHC (27) 의 서브세트를 식별할 때, 비트스트림 생성 디바이스 (36) 는 사운드 필드를 기술하는 것에 관련한 정보를 가지는 SHC (27) 중 결정된 하나 이상이 비트스트림 (31) 내에 포함되는 것을 식별할 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 SHC (27) 중 하나 이상이 사운드 필드를 기술하는 것에 관련한 정보를 가지는 것으로 추가적으로 결정할 수도 있다. 비트스트림 (31) 내에 포함되는 SHC (27) 의 서브세트를 식별할 때, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서, 사운드 필드를 설명함에 있어서 관계 있는 정보를 가지는 SHC (27) 중 결정된 하나 이상이 비트스트림 (31) 내에 포함되는 것을 식별할 수도 있고, 비트스트림 (31) 에서, 사운드 필드를 기술하는 것에 관련하지 않은 정보를 가지는 SHC (27) 중 나머지 것들이 비트스트림 (31) 내에 포함되지 않는 것을 식별할 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 SHC (27) 값들 중 하나 이상이 임계 값 미만인 것으로 결정할 수도 있다. 비트스트림 (31) 내에 포함되는 SHC (27) 의 서브세트를 식별할 때, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서, 이 임계 값을 초과하는 SHC (27) 중 결정된 하나 이상이 비트스트림 (31) 내에 특정되는 것을 식별할 수도 있다. 임계은 종종 제로 (zero) 의 값일 수도 있지만, 실제적인 구현들에 대하여, 임계은 잡음-바닥 (또는 주변 에너지) 을 나타내는 값, 또는 (임계 신호를 종속적으로 만들 수도 있는) 현재의 신호 에너지에 비례하는 일부의 값으로 설정될 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27) 의 수를 감소시키기 위하여 사운드 필드를 조절하거나 변환할 수도 있다. 용어 "조절하는" 은 선형 가역 변환을 나타내는 임의의 행렬 또는 행렬들의 응용을 지칭할 수도 있다. 이 사례들에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드가 어떻게 조절, 또는 다시 말해서, 변환되었는지를 기술하는, 비트스트림 (31) 에서의 조절 정보 (또한, "변환 정보" 로서 지칭될 수도 있음) 를 특정할 수도 있다. 비트스트림에서 추후에 특정되는 SHC (27) 의 서브세트를 식별하는 정보에 추가하여, 이 정보를 특정하는 것으로서 설명되었지만, 기법들의 이 양태는 비트스트림에 포함되는 SHC (27) 의 서브세트를 식별하는 정보를 특정하는 것에 대한 대안으로서 수행될 수도 있다. 그러므로, 기법들은 이와 관련하여 제한되지 않아야 한다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27) 의 수를 감소시키기 위하여 사운드 필드를 회전시킬 수도 있다. 이 사례들에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드가 어떻게 회전되었는지를 기술하는, 비트스트림 (31) 에서의 회전 정보를 특정할 수도 있다. 회전 정보는 (360 도를 시그널링할 수 있는) 방위각 및 (180 도를 시그널링할 수 있는) 고도각을 포함할 수도 있다. 일부의 사례들에서, 방위 값 (azimuth value) 은 하나 이상의 비트들을 포함하고, 전형적으로, 10 비트들을 포함한다. 일부의 사례들에서, 고도 값 (elevation value) 은 하나 이상의 비트들을 포함하고, 전형적으로, 적어도 9 비트들을 포함한다. 이러한 비트들의 선택은 가장 단순한 실시형태에서, (고도 및 방위 양자에 있어서) 180/512 도의 분해능 (resolution) 을 허용한다. 일부의 사례들에서, 변환은 회전을 포함할 수도 있고, 위에서 기술된 변환 정보는 회전 정보를 포함한다. 일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27) 의 수를 감소시키기 위하여 사운드 필드를 변환할 수도 있다. 이 사례들에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드가 어떻게 변환되었는지를 기술하는, 비트스트림 (31) 에서의 변환 정보를 특정할 수도 있다. 일부의 사례들에서, 조절은 변환을 포함할 수도 있고, 위에서 기술된 변환 정보는 변환 정보를 포함한다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 임계 값을 초과하는 비-제로 (non-zero) 값들을 가지는 SHC (27) 의 수를 감소시키기 위하여 사운드 필드를 조절할 수도 있고, 사운드 필드가 어떻게 조절되었는지를 기술하는, 비트스트림 (31) 에서의 조절 정보를 특정할 수도 있다. 일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 임계 값을 초과하는 비-제로 (non-zero) 값들을 가지는 SHC (27) 의 수를 감소시키기 위하여 사운드 필드를 회전시킬 수도 있고, 사운드 필드가 어떻게 회전되었는지를 기술하는, 비트스트림 (31) 에서의 회전 정보를 특정할 수도 있다. 일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 임계 값을 초과하는 비-제로 값들을 가지는 SHC (27) 의 수를 감소시키기 위하여 사운드 필드를 변환할 수도 있고, 사운드 필드가 어떻게 변환되었는지를 기술하는, 비트스트림 (31) 에서의 변환 정보를 특정할 수도 있다.
비트스트림 (31) 내에 포함되는 SHC (27) 의 서브세트를 비트스트림 (31) 에서 식별함으로써, (SCH (27) 중 제로 값인 것들과 같은) 사운드 필드의 기술에 관련한 정보를 포함하지 않는 SHC (27) 의 서브세트가 비트스트림에서 특정되지 않는다는 점, 즉, 비트스트림에 포함되지 않는다는 점에서, 비트스트림 생성 디바이스 (36) 는 대역폭의 더욱 효율적인 이용을 촉진시킬 수도 있다. 또한, 추가적으로 또는 대안적으로, 사운드 필드의 기술에 관련한 정보를 특정하는 SHC (27) 의 수를 감소시키기 위하여 SHC (27) 를 생성할 때에 사운드 필드를 조절함으로써, 비트스트림 생성 디바이스 (36) 는 잠재적으로 더욱 효율적인 대역폭 이용을 다시 또는 추가적으로 제공할 수도 있다. 이러한 방법으로, 비트스트림 생성 디바이스 (31) 는 비트스트림 (31) 에서 특정되도록 요구되는 SHC (27) 의 수를 감소시킬 수도 있음으로써, 비-고정 레이트 (non-fix rate) 시스템들 (몇몇 예들을 제공하기 위하여 타겟 비트레이트를 가지지 않거나 프레임 또는 샘플 당 비트-버젯 (bit-budget) 을 제공하는 오디오 코딩 기법들을 지칭할 수도 있음) 또는 고정 레이트 시스템에서의 대역폭의 사용을 잠재적으로 개선시킬 수도 있어서, 사운드 필드를 기술하는 것에 더욱 관련한 정보에 대한 비트들의 할당으로 잠재적으로 귀착될 수도 있다.
추가적으로 또는 대안적으로, 비트스트림 생성 디바이스 (36) 는 상이한 비트레이트들을 변환된 구면 조화 계수들의 상이한 서브세트들에 배정하기 위하여 이 개시물에서 설명된 기법들에 따라 동작할 수도 있다. 사운드 필드를 변환, 예컨대, 회전시키는 것에 의하여, 비트스트림 생성 디바이스 (36) 는 (사운드 필드의 다양한 공간적 장소들에서의 에너지의 분석을 통해 종종 식별된) 가장 핵심적인 부분들을 Z-축과 같은 축과 정렬할 수도 있어서, 가장 높은 에너지 부분들을 사운드 필드에서 청자 (listener) 위에 설정할 수도 있다. 다시 말해서, 비트스트림 생성 디바이스 (36) 는 최고 에너지를 가지는 사운드 필드의 부분을 식별하기 위하여 사운드 필드의 에너지를 분석할 수도 있다. 사운드 필드의 2 개 이상의 부분들이 높은 에너지를 가질 경우, 비트스트림 생성 디바이스 (36) 는 최고 에너지를 가지는 것을 식별하기 위하여 이 에너지들을 비교할 수도 있다. 다음으로, 비트스트림 생성 디바이스 (36) 는 사운드 필드의 최고 에너지 부분을 Z-축과 정렬하도록 사운드 필드를 회전시키기 위한 하나 이상의 각도들을 식별할 수도 있다.
이 회전 또는 다른 변환은 구면 기저 함수들이 설정되는 기준 프레임의 변환으로서 간주될 수도 있다. 도 2 의 예에서 도시된 것들과 같은 Z-축을 일직선 상하에 있도록 유지하는 것이 아니라, 이 Z-축은 사운드 필드의 최고 에너지 부분의 방향에서의 포인트까지의 하나 이상의 각도들에 의해 변환될 수도 있다. 다음으로, Z-축과 정렬되는 차수 1 및 하위-차수 제로의 구면 기저 함수와 같이, 일부의 지향성 컴포넌트를 가지는 그 기저 함수들이 회전될 수도 있다. 다음으로, 사운드 필드는 이 변환된, 예컨대, 회전된 구면 기저 함수들을 이용하여 표현될 수도 있다. 비트스트림 생성 디바이스 (36) 는 Z-축이 사운드 필드의 최고 에너지 부분과 정렬하도록 이 기준 프레임을 회전시킬 수도 있다. 이 회전은 사운드 필드의 최고 에너지가 그 제로 하위-차수 기저 함수들에 의해 주로 표현되는 것으로 귀착될 수도 있는 반면, 비-제로 하위-차수 기저 함수들은 그 만큼의 핵심적인 정보를 포함하지 않을 수도 있다.
일단 이러한 방식으로 회전되면, 비트스트림 생성 디바이스 (36) 는 변환된 구면 기저 함수들과 연관된 구면 조화 계수들을 지칭하는 변환된 구면 조화 계수들을 결정할 수도 있다. 제로 하위-차수 구면 기저 함수들이 사운드 필드를 주로 나타낼 수도 있는 것으로 주어질 시에, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서 이 제로 하위-차수 변환된 구면 조화 계수들 (제로 하위-차수 기저 함수들에 대응하는 그 변환된 구면 조화 계수들을 지칭할 수도 있음) 을 표현하기 위한 제 1 비트레이트를 배정할 수도 있는 한편, 비트스트림 (31) 에서 비-제로 하위-차수 변환된 구면 조화 계수들 (비-제로 하위-차수 기저 함수들에 대응하는 그 변환된 구면 조화 계수들을 지칭할 수도 있음) 을 표현하기 위한 제 2 비트레이트를 배정할 수도 있으며, 여기서, 이 제 1 비트레이트는 제 2 비트레이트보다 더 크다. 다시 말해서, 제로 하위-차수 변환된 구면 조화 계수들은 사운드 필드의 가장 핵심적인 부분들을 설명하므로, 비트스트림 생성 디바이스 (36) 는 비트스트림에서 이 변환된 계수들을 표현하기 위한 더 높은 비트레이트를 배정할 수도 있는 반면, 비트스트림에서 이 계수들을 표현하기 위한 (더 높은 비트레이트에 비해) 더 낮은 비트레이트를 배정할 수도 있다.
이 비트레이트들을 변환된 구면 조화 계수들 (예컨대, 제로 하위-차수 변환된 구면 조화 계수들) 의 제 1 서브세트 및 변환된 구면 조화 계수들 (예컨대, 비-제로 하위-차수 변환된 구면 조화 계수들) 의 제 2 서브세트로서 지칭될 수도 있는 것에 배정할 때, 비트스트림 생성 디바이스 (36) 는 해닝 윈도우 함수 (Hanning windowing function), 해밍 윈도우 함수 (Hamming windowing function), 직사각형 윈도우 함수 (rectangular windowing function), 또는 삼각형 윈도우 함수 (triangular windowing function) 와 같은 윈도우 함수를 사용할 수도 있다. 변환된 구면 조화 계수들의 제 1 및 제 2 서브세트들에 대하여 설명되었지만, 비트스트림 생성 디바이스 (36) 는 구면 조화 계수들의 2 개, 3 개, 4 개 및 종종 2*n+1 (여기서, n 은 차수를 지칭함) 개에 이르는 서브세트들을 식별할 수도 있다. 전형적으로, 차수에 대한 각각의 하위-차수는 비트스트림 생성 디바이스 (36) 가 상이한 비트레이트를 배정하는 변환된 구면 조화 계수들의 또 다른 서브세트를 나타낼 수도 있다.
이러한 의미에서, 비트스트림 생성 디바이스 (36) 는 차수 및/또는 하위 차수에 기초하여 상이한 비트레이트들을 SHC (27) 중 상이한 것들에 동적으로 배정할 수도 있다. 비트레이트들의 이 동적 할당은 전체적인 타겟 비트레이트의 더욱 양호한 이용을 용이하게 할 수도 있어서, 더 높은 비트레이트들을 변환된 SHC (27) 중의, 사운드 필드의 더욱 핵심적인 부분들을 설명하는 것들에 배정하는 반면, (더 높은 비트레이트들에 비해) 더 낮은 비트레이트들을 변환된 SHC (27) 중의, 사운드 필드의 비교적 덜 핵심적인 부분들 (또한, 다시 말해서, 주변 또는 배경 부분들) 을 설명하는 것들에 배정할 수도 있다.
예시하기 위하여, 도 2 의 예를 다시 한 번 고려한다. 비트스트림 생성 디바이스 (36) 는 윈도우 함수에 기초하여, 비트레이트를 변환된 구면 조화 계수들의 각각의 하위-차수에 배정할 수도 있으며, 여기서, 제 4 (4) 차수에 대하여, 비트스트림 생성 디바이스 (36) 는 변환된 구면 조화 계수들의 9 개 (마이너스 4 로부터 포지티브 4 까지) 상이한 서브세트들을 식별한다. 예를 들어, 비트스트림 생성 디바이스 (36) 는 윈도우 함수에 기초하여, 0 하위-차수 변환된 구면 조화 계수들을 표현하기 위한 제 1 비트레이트, -1/+1 하위-차수 변환된 구면 조화 계수들을 표현하기 위한 제 2 비트레이트, -2/+2 하위-차수 변환된 구면 조화 계수들을 표현하기 위한 제 3 비트레이트, -3/+3 하위-차수 변환된 구면 조화 계수들을 표현하기 위한 제 4 비트레이트, 및 -4/+4 하위-차수 변환된 구면 조화 계수들을 표현하기 위한 제 5 비트레이트를 배정할 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 훨씬 더 거친 방식으로 비트레이트들을 배정할 수도 있으며, 여기서, 비트레이트는 하위-차수뿐만 아니라 차수에 의해서도 변동된다. 더 높은 차수의 구면 기저 함수들이 더 작은 로브 (lobe) 들을 가지는 것으로 주어질 시에, 이 더 높은 차수의 구면 기저 함수들은 사운드 필드의 높은 에너지 부분들을 나타냄에 있어서 그렇게 중요하지 않다. 그 결과, 비트스트림 생성 디바이스 (36) 는 더 낮은 차수 변환된 구면 조화 계수들에 배정된 이 비트레이트에 비해 더 낮은 비트레이트를 더 높은 차수 변환된 구면 조화 계수들에 배정할 수도 있다. 다시, 비트스트림 생성 디바이스 (36) 는 하위-차수-특정 비트레이트들의 배정에 대해 위에서 설명된 것과 유사한 방식으로 윈도우 함수에 기초하여 이 차수-특정 비트레이트들을 배정할 수도 있다.
이와 관련하여, 비트스트림 생성 디바이스 (36) 는 변환된 구면 조화 계수들의 서브세트가 대응하는 구면 기저 함수의 차수 및 하위-차수 중 하나 이상에 기초하여 비트레이트를 변환된 구면 조화 계수들의 적어도 하나의 서브세트에 배정할 수도 있고, 변환된 구면 조화 계수들은 사운드 필드를 변환하는 변환 동작에 따라 변환되었다.
일부의 사례들에서, 변환 동작은 사운드 필드를 회전시키는 회전 동작을 포함한다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 최고 에너지를 가지는 사운드 필드의 부분이 축과 정렬되도록 사운드 필드를 회전시키기 위한 하나 이상의 각도들을 식별할 수도 있으며, 여기서, 변환 동작은 변환된 구면 조화 계수들을 생성하도록 식별된 하나 이상의 각도들만큼 사운드 필드를 회전시키는 회전 동작을 포함할 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 최고 에너지를 가지는 사운드 필드의 부분이 Z-축과 정렬되도록 사운드 필드를 회전시키기 위한 하나 이상의 각도들을 식별할 수도 있으며, 여기서, 변환 동작은 변환된 구면 조화 계수들을 생성하도록, 식별된 하나 이상의 각도들만큼 사운드 필드를 회전시키는 회전 동작을 포함할 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드를 회전시키기 위한 하나 이상의 각도들을 식별하기 위하여 사운드 필드에 대하여 공간 분석을 수행할 수도 있고, 여기서, 변환 동작은 변환된 구면 조화 계수들을 생성하도록, 식별된 하나 이상의 각도들만큼 사운드 필드를 회전시키는 회전 동작을 포함할 수도 있다.
일부의 사례들에서, 비트레이트를 배정할 때, 비트스트림 생성 디바이스 (36) 는 윈도우 함수에 따라, 변환된 구면 조화 계수들의 각각이 대응하는 구면 기저 함수의 차수 및 하위-차수 중 하나 이상에 기초하여 상이한 비트레이트들을 변환된 구면 조화 계수들의 상이한 서브세트들에 동적으로 배정할 수도 있다. 윈도우 함수는 해닝 윈도우 함수, 해밍 윈도우 함수, 직사각형 윈도우 함수 및 삼각형 윈도우 함수 중 하나 이상을 포함할 수도 있다.
일부의 사례들에서, 비트레이트를 배정할 때, 비트스트림 생성 디바이스 (36) 는 제 1 비트레이트를, 제로의 하위-차수를 가지는 구면 기저 함수들의 서브세트에 대응하는 변환된 구면 조화 계수들의 제 1 서브세트에 배정할 수도 있고, 제 2 비트레이트를, 포지티브 1 또는 네거티브 중 어느 하나의 하위-차수를 가지는 구면 기저 함수들의 서브세트에 대응하는 변환된 구면 조화 계수들의 제 2 서브세트에 배정할 수도 있고, 제 1 비트레이트는 제 2 비트레이트보다 더 크다. 이러한 의미에서, 기법들은 SHC (27) 가 대응하는 구면 기저 함수들의 하위-차수에 기초하여 비트레이트들의 동적 배정을 제공할 수도 있다.
일부의 사례들에서, 비트레이트를 배정할 때, 비트스트림 생성 디바이스 (36) 는 제 1 비트레이트를, 1 의 차수를 가지는 구면 기저 함수들의 서브세트에 대응하는 변환된 구면 조화 계수들의 제 1 서브세트에 배정할 수도 있고, 제 2 비트레이트를, 2 의 차수를 가지는 구면 기저 함수들의 서브세트에 대응하는 변환된 구면 조화 계수들의 제 2 서브세트에 배정할 수도 있고, 제 1 비트레이트는 제 2 비트레이트보다 더 크다. 이러한 방법으로, 기법들은 SHC (27) 가 대응하는 구면 기저 함수들의 차수에 기초하여 비트레이트들의 동적 배정을 제공할 수도 있다.
일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 제 1 비트레이트를 이용하여 변환된 구면 조화 계수들의 제 1 서브세트를, 그리고 제 2 비트레이트를 이용하여 변환된 구면 조화 계수들의 제 2 서브세트를 특정하는 비트스트림을 생성할 수도 있다.
일부의 사례들에서, 비트레이트를 배정할 때, 비트스트림 생성 디바이스 (36) 는 변환된 구면 조화 계수들이 대응하는 구면 기저 함수들의 하위-차수가 제로로부터 멀어지도록 이동할수록 점진적으로 감소하는 비트레이트들을 동적으로 배정할 수도 있다.
일부의 사례들에서, 비트레이트를 배정할 때, 비트스트림 생성 디바이스 (36) 는 변환된 구면 조화 계수들이 대응하는 구면 기저 함수들의 차수가 증가할수록 점진적으로 감소하는 비트레이트들을 동적으로 배정할 수도 있다.
일부의 사례들에서, 비트레이트를 배정할 때, 비트스트림 생성 디바이스 (36) 는 변환된 구면 조화 계수들의 서브세트가 대응하는 구면 기저 함수의 차수 및 하위-차수 중 하나 이상에 기초하여 상이한 비트레이트들을 변환된 구면 조화 계수들의 상이한 서브세트들에 동적으로 배정할 수도 있다.
컨텐츠 소비자 (24) 내에서, 다음으로, 추출 디바이스 (38) 는 비트스트림 생성 디바이스 (36) 에 대해 위에서 설명된 것들과 상반적인 기법들의 양태들에 따라 오디오 컨텐츠를 나타내는 비트스트림 (31) 을 프로세싱하는 방법을 수행할 수도 있다. 추출 디바이스 (38) 는 비트스트림 (31) 으로부터, 비트스트림 (31) 내에 포함되는 사운드 필드를 기술하는 SHC (27') 의 서브세트를 결정할 수도 있고, SHC (27') 의 식별된 서브세트를 결정하기 위하여 비트스트림 (31) 을 파싱할 수도 있다.
일부의 사례들에서, 추출 디바이스 (38) 가 비트스트림 (31) 내에 포함되는 SHC (27') 의 서브세트를 식별할 때, 추출 디바이스 (38) 는 SHC (27') 의 대응하는 하나가 비트스트림 (31) 내에 포함되는지 여부를 식별하는 복수의 비트들 중 각각의 하나로 복수의 비트들을 가지는 필드를 결정하기 위하여 비트스트림 (31) 을 파싱할 수도 있다.
일부의 사례들에서, 비트스트림 (31) 내에 포함되는 SHC (27') 의 서브세트를 결정할 때, 추출 디바이스 (38) 는 (n+1)2 비트들과 동일한 복수의 비트들을 가지는 필드를 특정할 수도 있으며, 여기서, 다시 n 은 사운드 필드를 기술하는 엘리먼트들의 계층적인 세트의 차수를 나타낸다. 다시, 복수의 비트들의 각각은 SHC (27') 의 대응하는 하나가 비트스트림 (31) 내에 포함되는지 여부를 식별한다.
일부의 사례들에서, 비트스트림 (31) 내에 포함되는 SHC (27') 의 서브세트를 결정할 때, 추출 디바이스 (38) 는 SHC (27') 중 대응하는 하나가 비트스트림 (31) 내에 포함되는지 여부를 식별하는 복수의 비트들 중 상이한 하나로 복수의 비트들을 가지는 비트스트림 (31) 에서의 필드를 식별하기 위하여 비트스트림 (31) 을 파싱할 수도 있다. SHC (27') 의 식별된 서브세트를 결정하기 위하여 비트스트림 (31) 을 파싱할 때, 추출 디바이스 (38) 는 복수의 비트들을 가지는 필드 이후의 비트스트림 (31) 으로부터 직접적으로 SHC (27') 의 식별된 서브세트를 결정하기 위하여 비트스트림 (31) 을 파싱할 수도 있다.
일부의 사례들에서, 추출 디바이스 (38) 는 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27') 의 수를 감소시키기 위하여 사운드 필드가 어떻게 조절되었는지를 기술하는 조절 정보를 결정하기 위하여 비트스트림 (31) 을 파싱할 수도 있다. 추출 디바이스 (38) 는 이 정보를 오디오 플레이백 시스템 (32) 에 제공할 수도 있고, 이 오디오 플레이백 시스템 (32) 은, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27') 의 서브세트에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 조절을 반전시키기 위하여 조절 정보에 기초하여 사운드 필드를 조절한다.
일부의 사례들에서, 기법들의 위에서 설명된 양태들에 대한 대안으로서 또는 위에서 설명된 양태들과 함께, 추출 디바이스 (38) 는 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27') 의 수를 감소시키기 위해 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 결정하기 위하여 비트스트림 (31) 을 파싱할 수도 있다. 추출 디바이스 (38) 는 이 정보를 오디오 플레이백 시스템 (32) 에 제공할 수도 있고, 이 오디오 플레이백 시스템 (32) 은, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27') 의 서브세트에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 회전을 반전시키기 위하여 회전 정보에 기초하여 사운드 필드를 회전시킨다.
일부의 사례들에서, 기법들의 위에서 설명된 양태들에 대한 대안으로서 또는 위에서 설명된 양태들과 함께, 추출 디바이스 (38) 는 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27') 의 수를 감소시키기 위해 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림 (31) 을 파싱할 수도 있다. 추출 디바이스 (38) 는 이 정보를 오디오 플레이백 시스템 (32) 에 제공할 수도 있고, 이 오디오 플레이백 시스템 (32) 은, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 SHC (27') 의 서브세트에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 변환을 반전시키기 위하여 조절 정보에 기초하여 사운드 필드를 변환한다.
일부의 사례들에서, 기법들의 위에서 설명된 양태들에 대한 대안으로서 또는 위에서 설명된 양태들과 함께, 추출 디바이스 (38) 는 비-제로 값들을 가지는 SHC (27') 의 수를 감소시키기 위해 사운드 필드가 어떻게 조절되었는지를 기술하는 조절 정보를 기술하기 위하여 비트스트림 (31) 을 파싱할 수도 있다. 추출 디바이스 (38) 는 이 정보를 오디오 플레이백 시스템 (32) 에 제공할 수도 있고, 이 오디오 플레이백 시스템 (32) 은, 비-제로 값들을 가지는 SHC (27') 의 서브세트에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 조절을 반전시키기 위하여 조절 정보에 기초하여 사운드 필드를 조절한다.
일부의 사례들에서, 기법들의 위에서 설명된 양태들에 대한 대안으로서 또는 위에서 설명된 양태들과 함께, 추출 디바이스 (38) 는 비-제로 값들을 가지는 SHC (27') 의 수를 감소시키기 위해 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 기술하기 위하여 비트스트림 (31) 을 파싱할 수도 있다. 추출 디바이스 (38) 는 이 정보를 오디오 플레이백 시스템 (32) 에 제공할 수도 있고, 이 오디오 플레이백 시스템 (32) 은, 비-제로 값들을 가지는 SHC (27') 의 서브세트에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 회전을 반전시키기 위하여 회전 정보에 기초하여 사운드 필드를 회전시킨다.
일부의 사례들에서, 기법들의 위에서 설명된 양태들에 대한 대안으로서 또는 위에서 설명된 양태들과 함께, 추출 디바이스 (38) 는 비-제로 값들을 가지는 SHC (27') 의 수를 감소시키기 위해 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 기술하기 위하여 비트스트림 (31) 을 파싱할 수도 있다. 추출 디바이스 (38) 는 이 정보를 오디오 플레이백 시스템 (32) 에 제공할 수도 있고, 이 오디오 플레이백 시스템 (32) 은, 비-제로 값들을 가지는 SHC (27') 중 그러한 것들에 기초하여 사운드 필드를 재생할 때, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행된 변환을 반전시키기 위하여 변환 정보에 기초하여 사운드 필드를 변환한다.
이와 관련하여, 기법들의 다양한 양태들은 비트스트림에 포함되는, 고차 앰비소닉 (HOA) 계수들 (또한, 구면 조화 계수들로서 지칭될 수도 있음) 과 같은 복수의 계층적 엘리먼트들 중 그러한 것들 (비트스트림에 포함되어야 하는 그러한 것들은 "복수의 SHC 의 서브세트" 로서 지칭될 수도 있음) 의 시그널링을 비트스트림으로 가능하게 할 수도 있다. HOA 계수들의 일부가 사운드 필드를 기술하는 것에 관련한 정보를 제공하지 않을 수도 있는 것으로 주어질 시에, 오디오 인코더는 복수의 HOA 계수들을, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 HOA 계수들의 서브세트로 감소시킬 수도 있음으로써, 코딩 효율을 증가시킬 수도 있다. 그 결과, 기법들의 다양한 양태들은 HOA 계수들 및/또는 그 인코딩된 버전들을 포함하는 비트스트림에서, 비트스트림에 실제적으로 포함되는 HOA 계수들 중 그러한 것들 (예컨대, 계수들의 전부는 아니지만, HOA 계수들의 적어도 하나를 포함하는 HOA 계수들의 비-제로 서브세트) 을 특정하는 것을 가능하게 할 수도 있다. HOA 계수들의 서브세트를 식별하는 정보는 위에서 언급된 바와 같이 비트스트림에서, 또는 일부의 사례들에서는 부채널 정보 (side channel information) 에서 특정될 수도 있다.
도 4a 및 도 4b 는 비트스트림 생성 디바이스 (36) 의 일 예의 구현을 예시하는 블록도들이다. 도 4a 의 예에서 예시된 바와 같이, 비트스트림 생성 디바이스 (36A) 로서 나타낸 비트스트림 생성 디바이스 (36) 의 제 1 구현은 공간 분석 유닛 (150), 회전 유닛 (154), 코딩 엔진 (160), 및 멀티플렉서 (multiplexer; MUX) (164) 를 포함한다.
SHC 의 형태로 3D 오디오 데이터를 나타내기 위해 요구된 비트/초의 측면에서의 대역폭은 소비자 이용의 측면에서 그것을 금지하도록 할 수도 있다. 예를 들어, 32 비트/동일 분해능과 함께 48 kHz 의 샘플링 레이트를 이용할 때, 제 4 차수 SHC 표현은 36 메가비트/초 (Mbit/second) 의 대역폭 (25x48000x32 bps) 을 나타낸다. 전형적으로 약 100 킬로비트/초 (kbit/second) 인 스테레오 신호들에 대한 최신 오디오 코딩과 비교할 때, 이것은 큰 수치이다. 도 5 의 예에서 구현된 기법들은 3D 오디오 표현들의 대역폭을 감소시킬 수도 있다.
공간 분석 유닛 (150) 및 회전 유닛 (154) 은 SHC (27) 를 수신할 수도 있다. 이 개시물의 어딘가에서 설명된 바와 같이, SHC (27) 는 사운드 필드를 나타낼 수도 있다. 도 4a 의 예에서, 공간 분석 유닛 (150) 및 회전 유닛 (154) 은 사운드 필드의 제 4 차수 (N=4) 표현에 대한 25 개의 SHC 의 샘플들을 수신할 수도 있다. 전형적으로, 기법들은 임의의 수의 샘플들을 가지는 프레임에 대해 수행될 수도 있지만, 오디오 데이터의 프레임은 1028 샘플들을 포함한다. 공간 분석 유닛 (150) 및 회전 유닛 (154) 은 오디오 데이터의 프레임에 대하여 이하에서 설명된 방식으로 동작할 수도 있다. 오디오 데이터의 프레임에 대한 동작으로서 설명되었지만, 기법들은 단일 샘플 및 전체에 이르는 오디오 데이터를 포함하는 임의의 양의 오디오 데이터에 대하여 수행될 수도 있다.
공간 분석 유닛 (150) 은 사운드 필드의 별개의 컴포넌트들을 식별하며 사운드 필드의 컴포넌트들을 확산시키기 위하여, SHC (27) 에 의해 표현된 사운드 필드를 분석할 수도 있다. 사운드 필드의 별개의 컴포넌트들은, 식별가능한 방향으로부터 나오는 것으로 지각되거나, 이와 다르게, 사운드 필드의 배경 또는 확산 컴포넌트들과는 별개인 음들이다. 예를 들어, 개별적인 악기에 의해 생성된 음은 식별가능한 방향으로부터 나오는 것으로 지각될 수도 있다. 대조적으로, 사운드 필드의 확산 또는 배경 컴포넌트들은 식별가능한 방향으로부터 나오는 것으로 지각되지 않는다. 예를 들어, 숲을 통한 바람의 음은 사운드 필드의 확산 컴포넌트일 수도 있다. 일부의 사례들에서, 별개의 컴포넌트들은 또한, "핵심적 컴포넌트들" 또는 "전경 컴포넌트 (foreground component) 들" 로서 지칭될 수도 있는 반면, 확산 컴포넌트들은 "주변 컴포넌트들" 또는 "배경 컴포넌트들" 로서 지칭될 수도 있다.
전형적으로, 이 별개의 컴포넌트들은 사운드 필드의 식별가능한 장소에서 높은 에너지를 가진다. 공간 분석 유닛 (150) 은 사운드 필드의 이 "높은 에너지" 장소들을 식별할 수도 있어서, 최고 에너지를 가지는 사운드 필드에서의 장소를 결정하기 위하여 각각의 높은 에너지 장소를 분석할 수도 있다. 다음으로, 공간 분석 유닛 (150) 은 대부분의 에너지를 가지는 별개의 컴포넌트들 중 그러한 것들을 Z-축과 같이, (이 사운드 필드를 레코딩하였던 추정된 마이크로폰에 관련된) 축과 정렬하기 위하여 사운드 필드를 회전시키기 위한 최적의 각도를 결정할 수도 있다. 공간 분석 유닛 (150) 은 이 최적의 각도를 식별할 수도 있어서, 사운드 필드는 이 별개의 컴포넌트들이 도 1 및 도 2 의 예들에서 도시된 기초적인 구면 기저 함수들과 더욱 양호하게 정렬하도록 회전될 수도 있다.
일부의 예들에서, 공간 분석 유닛 (150) 은 확산 음들 (낮은 레벨들의 방향 또는 저차 (lower order) SHC 를 가지는 음들을 지칭할 수도 있어서, 1 이하인 차수를 가지는 SHC (27) 중 그것들을 의미함) 을 포함하는 SHC (27) 에 의해 표현된 사운드 필드의 백분율을 식별하기 위하여 확산 분석의 형태를 수행하도록 구성된 유닛을 나타낼 수도 있다. 하나의 예로서, 공간 분석 유닛 (150) 은 2007 년 6 월자의 J. Audio Eng. Soc., Vol. 55, No. 6 에서 출판된 "Spatial Sound Reproduction with Directional Audio Coding (지향성 오디오 코딩에 의한 공간적 음 재생)" 이라는 명칭의, Ville Pulkki 에 의한 논문에서 설명된 것과 유사한 방식으로 확산 분석을 수행할 수도 있다. 일부의 사례들에서, 공간 분석 유닛 (150) 은 확산 백분율을 결정하기 위하여 확산 분석을 수행할 때, SHC (27) 의 제로 및 제 1 차수의 것들과 같이, SHC (27) 계수들의 비-제로 서브세트를 분석하기만 할 수도 있다.
회전 유닛 (154) 은 식별된 최적 각도 (또는 경우에 따라 각도들) 에 기초하여 SHC (27) 의 회전 동작을 수행할 수도 있다. (예컨대, 도 5a 및 도 5b 에 대하여) 이 개시물의 어딘가에서 논의된 바와 같이, 회전 동작을 수행하는 것은 SHC (27) 를 나타내기 위해 요구된 비트들의 수를 감소시킬 수도 있다. 회전 유닛 (154) 은 변환된 구면 조화 계수들 (155) ("변환된 SHC (155)") 을 코딩 엔진 (160) 에 출력할 수도 있다.
코딩 엔진 (160) 은 변환된 SHC (155) 를 대역폭 압축하도록 구성된 유닛을 나타낼 수도 있다. 코딩 엔진 (160) 은 이 개시물에서 설명된 기법들에 따라 상이한 비트레이트들을 변환된 SHC (155) 의 상이한 서브세트들에 배정할 수도 있다. 도 4a 의 예에서 도시된 바와 같이, 코딩 엔진 (160) 은 윈도우 함수 (161) 및 AAC 코딩 유닛들 (163) 을 포함한다. 코딩 엔진 (160) 은 비트레이트들을 AAC 코딩 유닛들 (163) 중 하나 이상에 배정하기 위하여 윈도우 함수 (161) 를 타겟 비트레이트에 적용할 수도 있다. 윈도우 함수들 (161) 은 변환된 SHC (155) 가 대응하는 구면 기저 함수들의 각각의 차수 및/또는 하위-차수에 대한 상이한 비트레이트들을 식별할 수도 있다. 다음으로, 코딩 엔진 (160) 은 식별된 비트레이트들로 AAC 코딩 유닛 (163) 을 구성할 수도 있고, 그 때문에, 코딩 엔진 (160) 은 변환된 SHC (155) 를 상이한 서브세트들로 분할할 수도 있고 이 상이한 서브세트들을 AAC 코딩 유닛들 (163) 의 대응하는 하나에 전달할 수도 있다. 즉, 비트레이트가 제로-하위-차수 (zero-sub-order) 구면 기저 함수들에 대응하는 변환된 SHC (155) 중 그러한 것들에 대해 AAC 코딩 유닛들 (163) 중 하나에서 구성될 경우, 코딩 엔진 (160) 은 제로-하위-차수 구면 기저 함수들에 대응하는 변환된 SHC (127) 중 그러한 것들을 AAC 코딩 유닛들 (163) 중 하나에 전달한다. 다음으로, AAC 코딩 유닛들 (163) 은 변환된 SHC (155) 의 서브세트들에 대해 AAC 를 수행할 수도 있어서, 변환된 SHC (155) 의 상이한 서브세트의 압축된 버전들을 멀티플렉서 (164) 에 출력할 수도 있다. 다음으로, 멀티플렉서 (164) 는 비트스트림 (31) 을 생성하기 위하여 최적의 각도와 함께 이 서브세트들을 멀티플렉싱할 수도 있다.
도 4b 의 예에서 예시된 바와 같이, 비트스트림 생성 디바이스 (36b) 는 공간 분석 유닛 (150), 컨텐츠-특성 분석 유닛 (152), 회전 유닛 (154), 간섭 컴포넌트 추출 유닛 (156), 확산 컴포넌트 추출 유닛 (158), 코딩 엔진들 (160) 및 멀티플렉서 (MUX; 164) 를 포함한다. 비트스트림 생성 디바이스 (36A) 와 유사하지만, 비트스트림 생성 디바이스 (36B) 는 추가적인 유닛들 (152, 156 및 158) 을 포함한다.
컨텐츠-특성 분석 유닛 (152) 은 SHC (27) 에 적어도 부분적으로 기초하여, SHC (27) 가 사운드 필드의 자연스러운 레코딩을 통해 생성되었는지, 또는 하나의 예로서, PCM 객체와 같은 오디오 객체로부터 인위적으로 (즉, 합성에 의해) 생성되었는지 여부를 결정할 수도 있다. 또한, 다음으로, 컨텐츠-특성 분석 유닛 (152) 은 SHC (27) 가 사운드 필드의 실제적인 레코딩을 통해 또는 인위적인 오디오 객체로부터 생성되었는지 여부에 적어도 부분적으로 기초하여, 비트스트림 (31) 에서 포함하기 위한 채널들의 총 수를 결정할 수도 있다. 예를 들어, 컨텐츠-특성 분석 유닛 (152) 은 SHC (27) 가 실제적인 사운드 필드의 레코딩을 통해 또는 인위적인 오디오 객체로부터 생성되었는지 여부에 적어도 부분적으로 기초하여, 비트스트림 (31) 이 16 개의 채널들을 포함해야 하는 것으로 결정할 수도 있다. 채널들의 각각은 모노 채널일 수도 있다. 컨텐츠-특성 분석 유닛 (152) 은 비트스트림 (31) 의 출력 비트레이트, 예컨대, 1.2 Mbps 에 기초하여, 비트스트림 (31) 에서 포함하기 위한 채널들의 총 수의 결정을 추가로 수행할 수도 있다.
게다가, 컨텐츠-특성 분석 유닛 (152) 은 SHC (27) 가 실제적인 사운드 필드의 레코딩으로부터 또는 인위적인 오디오 객체로부터 생성되었는지 여부에 적어도 부분적으로 기초하여, 사운드 필드의 간섭, 또는 다시 말해서, 별개의 컴포넌트들에 얼마나 많은 채널들을 할당할 것인지와, 사운드 필드의 확산, 또는 다시 말해서, 배경 컴포넌트들에 얼마나 많은 채널들을 할당할 것인지를 결정할 수도 있다. 예를 들어, SHC (27) 가 하나의 예로서, Eigenmic 를 이용하여 실제적인 사운드 필드의 레코딩으로부터 생성되었을 때, 컨텐츠-특성 분석 유닛 (152) 은 채널들 중 3 개를 사운드 필드의 간섭 컴포넌트들에 할당할 수도 있고, 나머지 채널들을 사운드 필드의 확산 컴포넌트들에 할당할 수도 있다. 이 예에서, SHC (27) 가 인위적인 오디오 객체로부터 생성되었을 때, 컨텐츠-특성 분석 유닛 (152) 은 채널들 중 5 개를 사운드 필드의 간섭 컴포넌트들에 할당할 수도 있고, 나머지 채널들을 사운드 필드의 확산 컴포넌트들에 할당할 수도 있다. 이러한 방법으로, 컨텐츠 분석 블록 (즉, 컨텐츠-특성 분석 유닛 (152)) 은 사운드 필드의 타입 (예컨대, 확산/지향성 등) 을 결정할 수도 있고, 궁극적으로, 추출하기 위한 간섭/확산 컴포넌트들의 수를 결정할 수도 있다.
타겟 비트 레이트는 컴포넌트들의 수 및 개별적인 AAC 코딩 엔진들 (예컨대, 코딩 엔진들 (160)) 의 비트레이트에 영향을 줄 수도 있다. 다시 말해서, 컨텐츠-특성 분석 유닛 (152) 은 비트스트림 (31) 의 출력 비트레이트, 예컨대, 1.2 Mbps 에 기초하여 얼마나 많은 채널들을 간섭 컴포넌트들에 할당할 것인지와, 얼마나 많은 채널들을 확산 컴포넌트들에 할당할 것인지의 결정을 추가로 수행할 수도 있다.
일부의 예들에서, 사운드 필드의 간섭 컴포넌트들에 할당된 채널들은 사운드 필드의 확산 컴포넌트들에 할당된 채널들보다 더 큰 비트 레이트들을 가질 수도 있다. 예를 들어, 비트스트림 (31) 의 최대 비트레이트는 1.2 Mb/sec 일 수도 있다. 이 예에서는, 간섭 컴포넌트들에 할당된 4 개의 채널들 및 확산 컴포넌트들에 할당된 16 개의 채널들이 있을 수도 있다. 또한, 이 예에서, 간섭 컴포넌트들에 할당된 채널들의 각각은 64 kb/sec 의 최대 비트레이트를 가질 수도 있다. 이 예에서, 확산 컴포넌트들에 할당된 채널들의 각각은 48 kb/sec 의 최대 비트레이트를 가질 수도 있다.
위에서 표시된 바와 같이, 컨텐츠-특성 분석 유닛 (152) 은 SHC (27) 가 실제적인 사운드 필드의 레코딩으로부터 또는 인위적인 오디오 객체로부터 생성되었는지 여부를 결정할 수도 있다. 컨텐츠-특성 분석 유닛 (152) 은 다양한 방법들로 이 결정을 행할 수도 있다. 예를 들어, 비트스트림 생성 디바이스 (36) 는 제 4 차수 SHC 를 이용할 수도 있다. 이 예에서, 컨텐츠-특성 분석 유닛 (152) 은 24 개의 채널들을 코딩할 수도 있고, 제 25 채널 (벡터로서 표현될 수도 있음) 을 예측할 수도 있다. 컨텐츠-특성 분석 유닛 (152) 은 스칼라 (scalar) 들을 24 개의 채널들의 적어도 일부에 적용할 수도 있고, 제 25 벡터를 결정하기 위하여 결과적인 값들을 추가할 수도 있다. 또한, 이 예에서, 컨텐츠-특성 분석 유닛 (152) 은 예측된 제 25 채널의 정확도를 결정할 수도 있다. 이 예에서, 예측된 제 25 채널의 정확도가 상대적으로 높을 경우 (예컨대, 정확도가 특별한 임계을 초과함), SHC (27) 는 합성 오디오 객체로부터 생성될 가능성이 있다. 대조적으로, 예측된 제 25 채널의 정확도가 상대적으로 낮을 경우 (예컨대, 정확도가 특별한 임계 미만임), SHC (27) 는 레코딩된 사운드 필드를 나타낼 가능성이 더 많다. 예를 들어, 이 예에서, 제 25 채널의 신호-대-잡음 비율 (signal-to-noise ratio; SNR) 이 100 데시벨 (decibel; db) 이상일 경우, SHC (27) 는 합성 오디오 객체로부터 생성된 사운드 필드를 나타낼 가능성이 더 많다. 대조적으로, Eigenmike 를 이용하여 레코딩된 사운드 필드의 SNR 은 5 내지 20 db 일 수도 있다. 따라서, 실제적인 직접 레코딩으로부터, 그리고 합성 오디오 객체로부터 생성된 SHC (27) 에 의해 표현된 사운드 필드 사이의 SNR 비율들에 있어서의 분명한 구분이 있을 수도 있다.
또한, 컨텐츠-특성 분석 유닛 (152) 은 SHC (27) 가 실제적인 사운드 필드의 레코딩으로부터 또는 인위적인 오디오 객체로부터 생성되었는지 여부에 적어도 부분적으로 기초하여, V 벡터를 양자화하기 위한 코드북들을 선택할 수도 있다. 다시 말해서, 컨텐츠-특성 분석 유닛 (152) 은 HOA 계수들에 의해 표현된 사운드 필드가 레코딩되는지 또는 합성인지 여부에 따라, V 벡터를 양자화함에 있어서 이용하기 위한 상이한 코드북들을 선택할 수도 있다.
일부의 예들에서, 컨텐츠-특성 분석 유닛 (152) 은 반복에 기초하여, SHC (27) 가 실제적인 사운드 필드의 레코딩으로부터, 또는 인위적인 오디오 객체로부터 생성되었는지 여부를 결정할 수도 있다. 일부의 이러한 예들에서, 반복의 기초는 매 프레임일 수도 있다. 다른 예들에서, 컨텐츠-특성 분석 유닛 (152) 은 이 결정을 한 번 수행할 수도 있다. 또한, 컨텐츠-특성 분석 유닛 (152) 은 반복에 기초하여, 채널들의 총 수와, 간섭 컴포넌트 채널들 및 확산 컴포넌트 채널들의 할당을 결정할 수도 있다. 일부의 이러한 예들에서, 반복의 기초는 매 프레임일 수도 있다. 다른 예들에서, 컨텐츠-특성 분석 유닛 (152) 은 이 결정을 한 번 수행할 수도 있다. 일부의 예들에서, 컨텐츠-특성 분석 유닛 (152) 은 반복에 기초하여, V 벡터를 양자화함에 있어서 이용하기 위한 코드북들을 선택할 수도 있다. 일부의 이러한 예들에서, 반복의 기초는 매 프레임일 수도 있다. 다른 예들에서, 컨텐츠-특성 분석 유닛 (152) 은 이 결정을 한 번 수행할 수도 있다.
회전 유닛 (154) 은 HOA 계수들의 회전 동작을 수행할 수도 있다. (예컨대, 도 5a 및 도 5b 에 대하여) 이 개시물의 어딘가에서 논의된 바와 같이, 회전 동작을 수행하는 것은 SHC (27) 를 나타내기 위해 요구된 비트들의 수를 감소시킬 수도 있다. 일부의 예들에서, 회전 유닛 (152) 에 의해 수행된 회전 분석은 특이값 분해 (singular value decomposition; SVD) 분석의 사례이다. 주요 컴포넌트 분석 (principal component analysis; PCA), 독립 컴포넌트 분석 (independent component analysis; ICA), 및 카루넨-루베 변환 (Karhunen-Loeve Transform; KLT) 은 적용가능할 수도 있는 관련된 기법들이다.
이와 관련하여, 기법들은 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 이루어진 비트스트림을 생성하는 방법을 제공할 수도 있고, 여기서, 제 1 예에서, 방법은, 복수의 계층적 엘리먼트들의 수를 감소시키도록, 사운드 필드를 나타내는 복수의 계층적 엘리먼트들을 구면 조화 도메인으로부터 또 다른 도메인으로 변환하는 것과, 사운드 필드가 어떻게 변환되었는지를 기술하는, 비트스트림에서의 변환 정보를 특정하는 것을 포함한다.
제 2 예에서는, 제 1 예의 방법으로서, 복수의 계층적 엘리먼트들을 변환하는 것은 복수의 계층적 엘리먼트들에 대하여 벡터-기반 변환을 수행하는 것을 포함한다.
제 3 예에서는, 제 2 예의 방법으로서, 벡터-기반 변환을 수행하는 것은 복수의 계층적 엘리먼트들에 대하여 특이값 분해 (SVD), 주요 컴포넌트 분석 (PCA), 및 카루넨-루베 변환 (KLT) 중 하나 이상을 수행하는 것을 포함한다.
제 4 예에서, 디바이스는 복수의 계층적 엘리먼트들의 수를 감소시키도록, 사운드 필드를 나타내는 복수의 계층적 엘리먼트들을 구면 조화 도메인으로부터 또 다른 도메인으로 변환하고, 사운드 필드가 어떻게 변환되었는지를 기술하는, 비트스트림에서의 변환 정보를 특정하도록 구성된 하나 이상의 프로세서들을 포함한다.
제 5 예에서는, 제 4 예의 디바이스로서, 하나 이상의 프로세서들은 복수의 계층적 엘리먼트들을 변환할 때, 복수의 계층적 엘리먼트들에 대하여 벡터-기반 변환을 수행하도록 구성된다.
제 6 예에서는, 제 5 예의 디바이스로서, 하나 이상의 프로세서들은 벡터-기반 변환을 수행할 때, 복수의 계층적 엘리먼트들에 대하여 특이값 분해 (SVD), 주요 컴포넌트 분석 (PCA), 및 카루넨-루베 변환 (KLT) 중 하나 이상을 수행하도록 구성된다.
제 7 예에서, 디바이스는 복수의 계층적 엘리먼트들의 수를 감소시키도록, 사운드 필드를 나타내는 복수의 계층적 엘리먼트들을 구면 조화 도메인으로부터 또 다른 도메인으로 변환하기 위한 수단, 및 사운드 필드가 어떻게 변환되었는지를 기술하는, 비트스트림에서의 변환 정보를 특정하기 위한 수단을 포함한다.
제 8 예에서는, 제 7 예의 디바이스로서, 복수의 계층적 엘리먼트들을 변환하기 위한 수단은 복수의 계층적 엘리먼트들에 대하여 벡터-기반 변환을 수행하기 위한 수단을 포함한다.
제 9 예에서, 제 8 예의 디바이스로서, 벡터-기반 변환을 수행하기 위한 수단은 복수의 계층적 엘리먼트들에 대하여 특이값 분해 (SVD), 주요 컴포넌트 분석 (PCA), 및 카루넨-루베 변환 (KLT) 중 하나 이상을 수행하기 위한 수단을 포함한다.
제 10 예에서, 비-일시적인 컴퓨터-판독가능한 저장 매체는 그 위에 명령들을 저장하였고, 상기 명령은, 실행될 경우, 하나 이상의 프로세서들로 하여금, 복수의 계층적 엘리먼트들의 수를 감소시키도록, 사운드 필드를 나타내는 복수의 계층적 엘리먼트들을 구면 조화 도메인으로부터 또 다른 도메인으로 변환하게 하고, 그리고 사운드 필드가 어떻게 변환되었는지를 기술하는, 비트스트림에서의 변환 정보를 특정하게 한다.
제 11 예에서, 방법은 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드를 기술하는 복수의 계층적 엘리먼트들이 어떻게 구면 조화 도메인으로부터 또 다른 도메인으로 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하는 것과, 복수의 계층적 엘리먼트들에 기초하여 사운드 필드를 재생할 때, 변환된 복수의 계층적 엘리먼트들에 기초하여 복수의 계층적 엘리먼트들을 재구성하는 것을 포함한다.
제 12 예에서는, 제 11 예의 방법으로서, 변환 정보는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 복수의 계층적 엘리먼트들이 벡터-기반 분해를 이용하여 어떻게 변환되었는지를 기술하고, 사운드 필드를 변환하는 것은, 복수의 계층적 엘리먼트들에 기초하여 사운드 필드를 재생할 때, 벡터-기반 분해된 복수의 계층적 엘리먼트들에 기초하여 복수의 계층적 엘리먼트들을 재구성하는 것을 포함한다.
제 13 예에서는, 제 12 예의 방법으로서, 벡터-기반 분해는 특이값 분해 (SVD), 주요 컴포넌트 분석 (PCA), 및 카루넨-루베 변환 (KLT) 중 하나 이상을 포함한다.
제 14 예에서, 디바이스는, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드를 기술하는 복수의 계층적 엘리먼트들이 어떻게 구면 조화 도메인으로부터 또 다른 도메인으로 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하고, 그리고 복수의 계층적 엘리먼트들에 기초하여 사운드 필드를 재생할 때, 변환된 복수의 계층적 엘리먼트들에 기초하여 복수의 계층적 엘리먼트들을 재구성하도록 구성된 하나 이상의 프로세서들을 포함한다.
제 15 예에서는, 제 14 예의 디바이스로서, 변환 정보는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 복수의 계층적 엘리먼트들이 벡터-기반 분해를 이용하여 어떻게 변환되었는지를 기술하고, 하나 이상의 프로세서들은, 사운드 필드를 변환할 시에, 복수의 계층적 엘리먼트들에 기초하여 사운드 필드를 재생할 때, 벡터-기반 분해된 복수의 계층적 엘리먼트들에 기초하여 복수의 계층적 엘리먼트들을 재구성하도록 구성된다.
제 16 예에서는, 제 15 예의 방법으로서, 벡터-기반 분해는 특이값 분해 (SVD), 주요 컴포넌트 분석 (PCA), 및 카루넨-루베 변환 (KLT) 중 하나 이상을 포함한다.
제 17 예에서, 디바이스는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드를 기술하는 복수의 계층적 엘리먼트들이 어떻게 구면 조화 도메인으로부터 또 다른 도메인으로 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하기 위한 수단, 및 복수의 계층적 엘리먼트들에 기초하여 사운드 필드를 재생할 때, 변환된 복수의 계층적 엘리먼트들에 기초하여 복수의 계층적 엘리먼트들을 재구성하기 위한 수단을 포함한다.
제 18 예에서는, 제 17 예의 디바이스로서, 변환 정보는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 복수의 계층적 엘리먼트들이 벡터-기반 분해를 이용하여 어떻게 변환되었는지를 기술하고, 사운드 필드를 변환하기 위한 수단은, 복수의 계층적 엘리먼트들에 기초하여 사운드 필드를 재생할 때, 벡터-기반 분해된 복수의 계층적 엘리먼트들에 기초하여 복수의 계층적 엘리먼트들을 재구성하기 위한 수단을 포함한다.
제 19 예에서는, 제 18 예의 디바이스로서, 벡터-기반 분해는 특이값 분해 (SVD), 주요 컴포넌트 분석 (PCA), 및 카루넨-루베 변환 (KLT) 중 하나 이상을 포함한다.
제 20 예에서, 비-일시적인 컴퓨터-판독가능한 저장 매체는 그 위에 명령들을 저장하고, 상기 명령들은, 실행될 경우, 하나 이상의 프로세서들로 하여금, 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 사운드 필드를 기술하는 복수의 계층적 엘리먼트들이 어떻게 구면 조화 도메인으로부터 또 다른 도메인으로 변환되었는지를 기술하는 변환 정보를 결정하기 위하여 비트스트림을 파싱하게 하고, 그리고 복수의 계층적 엘리먼트들에 기초하여 사운드 필드를 재생할 때, 변환된 복수의 계층적 엘리먼트들에 기초하여 복수의 계층적 엘리먼트들을 재구성하게 한다.
도 4b 의 예에서, 간섭 컴포넌트 추출 유닛 (156) 은 회전 유닛 (154) 으로부터 회전된 SHC (27) 를 수신한다. 또한, 간섭 컴포넌트 추출 유닛 (156) 은 회전된 SHC (27) 로부터, 사운드 필드의 간섭 컴포넌트들과 연관된 회전된 SHC (27) 의 간섭 컴포넌트들을 추출한다.
게다가, 간섭 컴포넌트 추출 유닛 (156) 은 하나 이상의 간섭 컴포넌트 채널들을 생성한다. 간섭 컴포넌트 채널들의 각각은 사운드 필드의 간섭 계수들과 연관된 회전된 SHC (27) 의 상이한 서브세트를 포함할 수도 있다. 도 4b 의 예에서, 간섭 컴포넌트 추출 유닛 (156) 은 1 개로부터 16 개까지의 간섭 컴포넌트 채널들을 생성할 수도 있다. 간섭 컴포넌트 추출 유닛 (156) 에 의해 생성된 간섭 컴포넌트 채널들의 수는 컨텐츠-특성 분석 유닛 (152) 에 의해 사운드 필드의 간섭 컴포넌트들에 할당된 채널들의 수에 의해 결정될 수도 있다. 간섭 컴포넌트 추출 유닛 (156) 에 의해 생성된 간섭 컴포넌트 채널들의 비트레이트들은 컨텐츠-특성 분석 유닛 (152) 에 의해 결정될 수도 있다.
유사하게, 도 4b 의 예에서, 확산 컴포넌트 추출 유닛 (158) 은 회전 유닛 (154) 으로부터 회전된 SHC (27) 를 수신한다. 또한, 확산 컴포넌트 추출 유닛 (158) 은 회전된 SHC (27) 로부터, 사운드 필드의 확산 컴포넌트들과 연관된 회전된 SHC (27) 의 확산 컴포넌트들을 추출한다.
게다가, 확산 컴포넌트 추출 유닛 (158) 은 하나 이상의 확산 컴포넌트 채널들을 생성한다. 확산 컴포넌트 채널들의 각각은 사운드 필드의 확산 계수들과 연관된 회전된 SHC (27) 의 상이한 서브세트를 포함할 수도 있다. 도 4b 의 예에서, 확산 컴포넌트 추출 유닛 (158) 은 1 개로부터 9 개까지의 확산 컴포넌트 채널들을 생성할 수도 있다. 확산 컴포넌트 추출 유닛 (158) 에 의해 생성된 확산 컴포넌트 채널들의 수는 컨텐츠-특성 분석 유닛 (152) 에 의해 사운드 필드의 확산 컴포넌트들에 할당된 채널들의 수에 의해 결정될 수도 있다. 확산 컴포넌트 추출 유닛 (158) 에 의해 생성된 확산 컴포넌트 채널들의 비트레이트들은 컨텐츠-특성 분석 유닛 (152) 에 의해 결정될 수도 있다.
도 4b 의 예에서, 코딩 엔진 (160) 은 확산 및 간섭 컴포넌트들에 대하여 이번에만, 도 4a 의 예에 대하여 위에서 설명된 바와 같이 동작할 수도 있다. 멀티플렉서 (164) ("MUX (164)") 는 비트스트림 (31) 을 생성하기 위하여, 부데이터 (예컨대, 공간 부석 유닛 (150) 에 의해 결정된 최적의 각도) 와 함께, 인코딩된 간섭 컴포넌트 채널들 및 인코딩된 확산 컴포넌트 채널들을 멀티플렉싱할 수도 있다.
도 5a 및 도 5b 는 사운드 필드 (40) 를 회전시키기 위하여 이 개시물에서 설명된 기법들의 다양한 양태들을 수행하는 예를 예시하는 도면들이다. 도 5a 는 이 개시물에서 설명된 기법들의 다양한 양태들에 따라 회전 전의 사운드 필드 (40) 를 예시하는 도면이다. 도 5a 의 예에서, 사운드 필드 (40) 는 장소 (42A 및 42B) 로서 나타낸, 높은 압력의 2 개의 장소들을 포함한다. 이 장소들 (42A 및 42B) ("장소들 (42)") 은 (수직 라인들이 무한 기울기를 가지므로, 수직이 아닌 라인을 지칭하는 또 다른 방법인) 비-무한 기울기를 가지는 라인 (44) 을 따라 존재한다. 장소들 (42) 이 x 및 y 좌표들에 추가하여 z 좌표를 가지는 것으로 주어질 시에, 고차 구면 기저 함수들은 (이 고차 구면 기저 함수들이 사운드 필드의 상부 및 하부, 또는 비-수평 부분들을 설명하므로) 이 사운드 필드 (40) 를 정확하게 나타내도록 요구될 수도 있다. 사운드 필드 (40) 를 SHC 들 (27) 로 직접적으로 감소시키는 것이 아니라, 비트스트림 생성 디바이스 (36) 는 장소들 (42) 을 연결하는 라인 (44) 이 수직이 될 때까지 사운드 필드 (40) 를 회전시킬 수도 있다.
도 5b 는 장소들 (42) 을 연결하는 라인 (44) 이 수직이 될 때까지 회전된 후의 사운드 필드 (40) 를 예시하는 도면이다. 사운드 필드 (40) 를 이러한 방식으로 회전시킨 결과, 회전된 사운드 필드 (40) 가 비-수직 축 (예컨대, X-축 및/또는 Y-축) 을 따라 압력 (또는 에너지) 의 임의의 장소들을 더 이상 가지지 않는 것으로 주어질 시에, SHC (27) 중 비-제로 하위-차수의 것들이 제로들로 특정되도록 SHC (27) 가 유도될 수도 있다. 이러한 방법으로, 비트스트림 생성 디바이스 (36) 는 비-제로 값들을 가지는 회전된 SHC (27) 의 수를 감소시키기 위하여 사운드 필드 (40) 를 회전, 변환, 또는 더욱 일반적으로 조절할 수도 있다. 다음으로, 비트스트림 생성 디바이스 (36) 는 위에서 설명된 바와 같이, 회전된 SHC (27) 중 제로 하위-차수의 것들에 비해, 더 낮은 비트레이트들을 회전된 SHC (27) 의 비-제로 하위-차수의 것들에 할당할 수도 있다. 비트스트림 생성 디바이스 (36) 는 또한, 종종 위에서 설명된 방식으로 방위 및 고도를 표현하는 것을 통해, 사운드 필드 (40) 가 어떻게 회전되었는지를 표시하는, 비트스트림 (31) 에서의 회전 정보를 특정할 수도 있다.
대안적으로 또는 추가적으로, 다음으로, 비트스트림 생성 디바이스 (36) 는 SHC (27) 중 이 더 높은 차수의 것들이 제로 값들을 가지는 것을 식별하는 32-비트 부호 있는 수를 시그널링하는 것이 아니라, 비트스트림 (31) 의 필드에서, SHC (27) 중 이 더 높은 차수의 것들이 시그널링되지 않는 것으로 시그널링할 수도 있다. 이 사례들에서, 추출 디바이스 (38) 는 회전된 SHC (27) 중 이 시그널링되지 않은 것들이 제로 값을 가지는 것을 암시할 수도 있고, SHC (27) 에 기초하여 사운드 필드 (40) 를 재생할 때, 사운드 필드 (40) 가 도 5a 의 예에서 도시된 사운드 필드 (40) 와 유사하도록 사운드 필드 (40) 를 회전시키기 위한 회전을 수행할 수도 있다. 이러한 방법으로, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서 특정되도록 요구된 SHC (27) 의 수를 감소시킬 수도 있거나, 또는 이와 다르게, 회전된 SHC (27) 중 비-제로 하위-차수의 것들과 연관된 비트레이트를 감소시킬 수도 있다.
'공간 밀집 (spatial compaction)' 알고리즘은 사운드 필드의 최적의 회전을 결정하기 위하여 이용될 수도 있다. 하나의 실시형태에서, 비트스트림 생성 디바이스 (36) 는 가능한 방위 및 고도 조합들 (즉, 상기 예에서의 1024x512 조합들) 의 전부를 통해, 각각의 조합에 대한 사운드 필드를 회전시키고 임계 값을 초과하는 SHC (27) 의 수를 계산하는 것을 반복시키기 위한 알고리즘을 수행할 수도 있다. 임계 값을 초과하는 SHC (27) 의 최소 수를 생성하는 방위/고도 후보 조합은 "최적 회전" 으로서 지칭될 수도 있는 것으로서 간주될 수도 있다. 이 회전된 형태에서, 사운드 필드는 사운드 필드를 나타내기 위한 SHC (27) 의 최소 수를 요구할 수도 있고, 다음으로, 밀집된 것으로 간주될 수도 있다. 일부의 사례들에서, 조절은 이 최적의 회전을 포함할 수도 있고, 위에서 설명된 조절 정보는 (방위각 및 고도각의 측면에서) 이 회전 ("최적 회전" 으로 칭해질 수도 있음) 정보를 포함할 수도 있다.
일부의 사례들에서, 방위각 및 고도각을 단지 특정하는 것이 아니라, 비트스트림 생성 디바이스 (36) 는 하나의 예로서, 오일러 각도 (Euler angle) 들의 형태로 추가적인 각도들을 특정할 수도 있다. 오일러 각도들은 Z-축, 이전의 X-축 및 이전의 Z-축 주위의 회전의 각도를 특정한다. 방위각 및 고도각의 조합들에 대하여 이 개시물에서 설명되었지만, 이 개시물의 기법들은 방위각 및 고도각만을 특정하는 것으로 제한되어야 하는 것이 아니라, 위에서 언급된 3 개의 오일러 각도들을 포함하는 임의의 수의 각도들을 특정하는 것을 포함할 수도 있다. 이러한 의미에서, 비트스트림 생성 디바이스 (36) 는 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들의 수를 감소시키기 위하여 사운드 필드를 회전시킬 수도 있고 오일러 각도들을 비트스트림에서의 회전 정보로서 특정할 수도 있다. 위에서 언급된 바와 같이, 오일러 각도들은 사운드 필드가 어떻게 회전되었는지를 기술할 수도 있다. 오일러 각도들을 이용할 때, 비트스트림 추출 디바이스 (38) 는 오일러 각도들을 포함하는 회전 정보를 결정하기 위하여 비트스트림을 파싱할 수도 있고, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 복수의 계층적 엘리먼트들 중 그러한 것들에 기초하여 사운드 필드를 재생할 때, 오일러 각도들에 기초하여 사운드 필드를 회전시킬 수도 있다.
또한, 일부의 사례들에서는, 비트스트림 (31) 에서 이 각도들을 명시적으로 특정하는 것이 아니라, 비트스트림 생성 디바이스 (36) 는 회전을 특정하는 하나 이상의 각도들의 미리 정의된 조합들과 연관된 인덱스 ("회전 인덱스 (rotation index)" 로서 지칭될 수도 있음) 를 특정할 수도 있다. 다시 말해서, 일부의 사례들에서는, 회전 정보가 회전 인덱스를 포함할 수도 있다. 이 사례들에서, 제로의 값과 같은 주어진 회전 인덱스의 값은 회전이 수행되지 않았음을 표시할 수도 있다. 이 회전 인덱스는 회전 테이블과 관련하여 이용될 수도 있다. 즉, 비트스트림 생성 디바이스 (36) 는 방위각 및 고도각의 조합들의 각각에 대한 엔트리 (entry) 를 포함하는 회전 테이블을 포함할 수도 있다.
대안적으로, 회전 테이블은 방위각 및 고도각의 각각의 조합을 나타내는 각각의 행렬 변환들에 대한 엔트리를 포함할 수도 있다. 즉, 비트스트림 생성 디바이스 (36) 는 방위각 및 고도각의 조합들의 각각에 의해 사운드 필드를 회전시키기 위한 각각의 행렬 변환에 대한 엔트리를 가지는 회전 테이블을 저장할 수도 있다. 전형적으로, 비트스트림 생성 디바이스 (36) 는 SHC (27) 를 수신하고, 회전이 수행될 때, 다음의 수학식에 따라 SHC (27') 를 유도한다.
Figure pct00038
상기 수학식에서, SHC (27') 는 제 2 기준 프레임의 측면에서 사운드 필드를 인코딩하기 위한 인코딩 행렬 (EncMat 2 ), 제 1 기준 프레임의 측면에서 SHC (27) 를 다시 사운드 필드으로 반전하기 위한 역 행렬 (InvMat 1 ), 및 SHC (27) 의 함수로서 연산된다. EncMat 2 는 크기가 25x32 인 반면, InvMat 2 는 크기가 32x25 이다. SHC (27') 및 및 SHC (27) 의 양자는 크기가 25 이며, 여기서, SHC (27') 는 핵심적인 오디오 정보를 특정하지 않는 것들의 제거로 인해 추가로 감소될 수도 있다. EncMat 2 는 각각의 동위각 및 고도각 조합에 대해 변동될 수도 있는 반면, InvMat 1 는 각각의 동위각 및 고도각 조합에 대해 정적으로 남아 있을 수도 있다. 회전 테이블은 각각의 상이한 EncMat 2 InvMat 1 에 곱셈한 결과를 저장하는 엔트리를 포함할 수도 있다.
도 6 은 제 2 기준 프레임의 측면에서 사운드 필드를 표현하기 위하여, 이 개시물에서 설명된 기법들에 따라 그때에 회전되는 제 1 기준 프레임에 따라 캡처된 일 예의 사운드 필드를 예시하는 도면이다. 도 6 의 예에서, Eigen-마이크로폰 (Eigen-microphone; 46) 을 둘러싸는 사운드 필드는 도 6 의 예에서 X1, Y1, 및 Z1 축들에 의해 나타낸 제 1 기준 프레임을 가정하여 캡처된다. SHC (27) 는 이 제 1 기준 프레임의 측면에서 사운드 필드를 기술한다. InvMat 1 는 SHC (27) 를 다시 사운드 필드으로 변환하여, 사운드 필드가 도 6 의 예에서 X2, Y2, 및 Z2 축들에 의해 나타낸 제 2 기준 프레임으로 회전되는 것을 가능하게 한다. 위에서 설명된 EncMat 2 는 사운드 필드를 회전시킬 수도 있고, 제 2 기준 프레임의 측면에서 이 회전된 사운드 필드를 기술하는 SHC (27') 를 생성할 수도 있다.
여하튼, 상기 수학식은 다음과 같이 유도될 수도 있다. 전방이 X-축의 방향으로 간주되도록 사운드 필드가 어떤 좌표계로 레코딩되는 것으로 주어질 시에, Eigenmike (또는 다른 마이크로폰 구성들) 의 32 개의 마이크로폰 위치들은 이 기준 좌표계로부터 정의된다. 다음으로, 사운드 필드의 회전은 이 기준 프레임의 회전으로서 간주될 수도 있다. 가정된 기준 프레임에 대하여, SHC (27) 는 다음과 같이 계산될 수도 있다:
Figure pct00039
상기 수학식에서,
Figure pct00040
i 번째 마이크로폰의 위치 (Pos i ) 에서의 구면 기저 함수들을 나타낸다 (여기서, i 는 이 예에서 1 내지 32 일 수도 있음). mic i 벡터는 시간 t 에 대한 i 번째 마이크로폰에 대한 마이크로폰 신호를 나타낸다. 위치들 (Pos i ) 은 제 1 기준 프레임 (즉, 이 예에서의 회전 이전의 기준 프레임) 에서의 마이크로폰의 위치를 지칭한다.
상기 수학식은 위에서 나타낸 수학적 표현들의 측면에서 대안적으로 다음과 같이 표현될 수도 있다:
Figure pct00041
(또는 제 2 기준 프레임에서) 사운드 필드를 회전시키기 위하여, 위치 (Pos i ) 는 제 2 기준 프레임에서 계산될 것이다. 원래의 마이크로폰 신호들이 존재하는 한, 사운드 필드는 임의적으로 회전될 수도 있다. 그러나, 원래의 마이크로폰 신호들 (mic i (t)) 은 종종 이용가능하지 않다. 그래서, 문제는 SHC (27) 로부터 마이크로폰 신호들 (mic i (t)) 을 어떻게 취출할 것인지일 수도 있다. (32 개의 마이크로폰 Eigenmike 에서와 같이) T-설계가 이용될 경우, 이 문제에 대한 해결책은 다음의 수학식을 구함으로써 달성될 수도 있다:
Figure pct00042
InvMat 1 는 제 1 기준 프레임에 관련하여 특정된 바와 같은 마이크로폰들의 위치에 따라 연산된 구면 조화 기저 함수들을 특정할 수도 있다. 이 수학식은 또한, 위에서 언급된 바와 같이
Figure pct00043
로서 표현될 수도 있다.
위에서 "마이크로폰 신호들" 로서 지칭되었지만, 마이크로폰 신호들은 그 자체로는 "마이크로폰 신호들" 이 아니라, 32 개의 마이크로폰 캡슐 위치 t-설계를 이용한 공간 도메인 표현을 지칭할 수도 있다. 또한, 32 개의 마이크로폰 캡슐 위치들에 대해 설명되었지만, 기법들은 16, 64 또는 (2 의 인수가 아닌 것들을 포함하는) 임의의 다른 수를 포함하는, 임의의 수의 마이크로폰 캡슐 위치들에 대하여 수행될 수도 있다.
마이크로폰 신호들 (mic i (t)) 이 상기 수학식에 따라 취출되면, 사운드 필드를 기술하는 마이크로폰 신호들 (mic i (t)) 은 제 2 기준 프레임에 대응하는 SHC (27') 를 연산하기 위하여 회전될 수도 있어서, 다음의 수학식으로 귀착될 수도 있다:
Figure pct00044
EncMat 2 는 회전된 위치 (Pos i ') 로부터 구면 조화 기저 함수들을 특정한다. 이러한 방법으로, EncMat 2 는 방위각 및 고도각의 조합을 효과적으로 특정할 수도 있다. 따라서, 회전 테이블이 방위각 및 고도각의 각각의 조합에 대한
Figure pct00045
의 결과를 저장할 때, 회전 테이블은 방위각 및 고도각의 각각의 조합을 효과적으로 특정한다. 상기 수학식은 또한 다음과 같이 표현될 수도 있다:
Figure pct00046
여기서,
Figure pct00047
Figure pct00048
에 의해 표현된 제 1 방위각 및 고도각과는 상이한 제 2 방위각 및 제 2 고도각을 나타낸다.
Figure pct00049
는 제 1 기준 프레임에 대응하는 반면,
Figure pct00050
는 제 2 기준 프레임에 대응한다. 그러므로, InvMat 1
Figure pct00051
에 대응하는 반면, EncMat 2
Figure pct00052
에 대응할 수도 있다.
상기한 것은 차수 n 의 구면 베젤 함수를 지칭하는
Figure pct00053
함수에 의해 주파수 도메인에서 SHC (27) 의 유도를 나타내는 다양한 수학식들에서 위에서 표현된, 필터링 동작을 고려하지 않는 연산의 더욱 간략화된 버전을 나타낼 수도 있다. 시간 도메인에서, 이
Figure pct00054
함수는 특별한 차수 n 에 특정한 필터링 동작을 나타낸다. 필터링으로, 회전은 차수마다 수행될 수도 있다. 예시하기 위하여, 다음의 수학식들을 고려한다:
Figure pct00055
이러한 필터링 동작들에 대해 설명되었지만, 다양한 예들에서, 기법들은 이 필터링 동작들 없이 수행될 수도 있다. 다시 말해서, 회전의 다양한 형태들은 위에서 언급된 바와 같이, 필터링 동작들을 수행하지 않거나, 또는 이와 다르게 필터링 동작들을 SHC (27) 에 적용하지 않으면서 수행될 수도 있다. 상이한 'n' 개의 SHC 가 이 동작에서 서로 상호동작하지 않으므로, 필터들이 'm' 이 아니라 'n' 에 종속되기만 하는 것으로 주어질 시에, 필터들이 전혀 요구되지 않을 수도 있다. 예를 들어, 윙거 d-행렬 (Winger d-Matrix) 은 회전을 수행하기 위하여 SHC (27) 에 적용될 수도 있으며, 여기서, 윙거 d-행렬의 적용은 필터링 동작들의 적용을 요구하지 않을 수도 있다. SHC (27) 를 다시 마이크로폰 신호들로 변환하지 않는 결과로서, 필터링 동작들이 이 변환에서 요구될 수도 있다. 또한, 'n' 이 'n' 으로 가기만 하는 것으로 고려하면, 회전은 SHC (27) 의 2m+1 의 블록들에 대해 행해지고, 나머지는 제로들일 수도 있다. (아마도 소프트웨어로 된) 더욱 효율적인 메모리 할당을 위하여, 회전은 이 개시물에서 설명된 바와 같이 차수마다 행해질 수도 있다. 또한, 하나의 SHC (27) 만이 있으므로, 그것은 항상 동일하다. 기법들의 다양한 구현들은 (연산들 및/또는 메모리 연산의 측면에서) 효율성을 제공하기 위하여 n=0 에서 SHC (27) 중 이 단일의 하나를 이용할 수도 있다.
이 수학식들로부터, b n (t) 는 서로에 대해 상이하므로, 차수들에 대한 회전된 SHC (27') 가 별도로 행해진다. 그 결과, 상기 수학식은 회전된 SHC (27') 중 제 1 차수의 것들을 연산하기 위하여 다음과 같이 변경될 수도 있다:
Figure pct00056
SHC (27) 중 3 개의 제 1 차수의 것들이 있는 것으로 주어질 시에, SHC (27' 및 27) 벡터들의 각각은 상기 수학식에서 크기가 3 이다. 마찬가지로, 제 2 차수에 대하여, 다음의 수학식이 적용될 수도 있다:
Figure pct00057
다시, SHC (27) 중 5 개의 제 2 차수의 것들이 있는 것으로 주어질 시에, SHC (27' 및 27) 벡터들의 각각은 상기 수학식에서 크기가 5 이다. 다른 차수들, 즉, 제 3 및 제 5 차수들에 대한 나머지 수학식들은 상기 설명된 것과 동일할 수도 있어서, (EncMat2 의 행들의 수, InvMat1 의 열들의 수, 및 제 3 및 제 4 차수 SHC (27) 및 SHC (27') 벡터들의 크기들이 제 3 및 제 4 차수 구면 조화 기저 함수들의 각각의 하위-차수들 (m x 2 플러스 1) 의 수와 동일하다는 점에서) 행렬들의 크기들에 대하여 동일한 패턴을 따를 수도 있다. 제 4 차수 표현인 것으로 설명되었지만, 기법들은 임의의 차수에 적용될 수도 있고 제 4 차수로 제한되지 않아야 한다.
그러므로, 비트스트림 생성 디바이스 (36) 는 소위 최적의 회전을 식별하기 위한 시도로 방위각 및 고도각의 모든 조합에 대하여 이 회전 동작을 수행할 수도 있다. 비트스트림 생성 디바이스 (36) 는 이 회전 동작을 수행한 후에, 임계 값을 초과하는 SHC (27') 의 수를 연산할 수도 있다. 일부의 사례들에서, 비트스트림 생성 디바이스 (36) 는 오디오 프레임과 같은, 시간 기간 동안에 사운드 필드를 나타내는 일련의 SHC (27') 를 유도하기 위하여 이 회전을 수행할 수도 있다. 이 시간 기간 동안에 사운드 필드를 나타내는 일련의 SHC (27') 를 유도하기 위하여 이 회전을 수행함으로써, 비트스트림 생성 디바이스 (36) 는 프레임 또는 다른 길이보다 작은 시간 기간들 동안에 사운드 필드를 기술하는 SHC (27) 의 각각의 세트에 대해 이것을 행하기 위한 것과 비교하여, 수행되어야 할 회전 동작들의 수를 감소시킬 수도 있다. 여하튼, 비트스트림 생성 디바이스 (36) 는 이 프로세스의 전반에 걸쳐, 임계 값보다 더 큰 SHC (27') 의 최소 수를 가지는 SHC (27') 중 그것들을 절약할 수도 있다.
그러나, 방위각 및 고도각의 모든 조합에 대하여 이 회전 동작을 수행하는 것은 프로세서 집약적이거나 시간-소비적일 수도 있다. 그 결과, 비트스트림 생성 디바이스 (36) 는 회전 알고리즘의 이 "브루트 포스 (brute force)" 구현으로서 특징될 수도 있는 것을 수행하지 않을 수도 있다. 실제로, 비트스트림 생성 디바이스 (36) 는 일반적으로 양호한 밀집을 제공하는 방위각 및 고도각의 아마도 알려진 (통계적으로 현명한) 조합들의 서브세트에 대하여 회전들을 수행할 수도 있어서, 서브세트에서의 다른 조합들과 비교하여 더욱 양호한 밀집을 제공하는 이 서브세트 중 그러한 것들 주위의 조합들에 대하여 추가의 회전들을 수행할 수도 있다.
또 다른 대안으로서, 비트스트림 생성 디바이스 (36) 는 조합들의 알려진 서브세트만에 대하여 이 회전을 수행할 수도 있다. 또 다른 대안으로서, 비트스트림 생성 디바이스 (36) 는 조합들의 궤도를 (공간적으로) 따를 수도 있어서, 조합들의 이 궤도에 대하여 회전들을 수행할 수도 있다. 또 다른 대안으로서, 비트스트림 생성 디바이스 (36) 는 임계 값을 초과하는 비-제로 값들을 가지는 SHC (27') 의 최대 수를 정의하는 밀집 임계을 특정할 수도 있다. 이 밀집 임계은 검색에 대한 정지 포인트를 효과적으로 설정할 수도 있어서, 비트스트림 생성 디바이스 (36) 가 회전을 수행하고 설정된 임계을 초과하는 값을 가지는 SHC (27') 의 수가 밀집 임계 이하 (또는 일부의 사례들에서는 그보다 작음) 인 것으로 결정할 때, 비트스트림 생성 디바이스 (36) 는 나머지 조합들에 대한 임의의 추가적인 회전 동작들을 수행하는 것을 정지한다. 또 다른 대안으로서, 비트스트림 생성 디바이스 (36) 는 조합들의 계층적으로 배열된 트리 (또는 다른 데이터 구조) 를 횡단할 수도 있어서, 현재의 조합에 대한 회전 동작들을 수행할 수도 있고 임계 값보다 더 큰 비-제로 값을 가지는 SHC (27') 의 수에 따라 (예컨대, 2 진 트리들에 대해) 트리를 우측 또는 좌측으로 횡단할 수도 있다.
이러한 의미에서, 이 대안들의 각각은 제 1 및 제 2 회전 동작을 수행하는 것과, 임계 값보다 더 큰 비-제로 값을 가지는 SHC (27') 의 최소 수로 귀착되는 제 1 및 제 2 회전 동작들 중 하나를 식별하기 위하여 제 1 및 제 2 회전 동작을 수행한 결과를 비교하는 것을 포함한다. 따라서, 비트스트림 생성 디바이스 (36) 는 제 1 방위각 및 제 1 고도각에 따라 사운드 필드를 회전시키기 위하여 사운드 필드에 대한 제 1 회전 동작을 수행할 수도 있고, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 제 1 방위각 및 제 1 고도각에 따라 회전된 사운드 필드를 나타내는 복수의 계층적 엘리먼트들의 제 1 수를 결정할 수도 있다. 따라서, 비트스트림 생성 디바이스 (36) 는 또한, 제 2 방위각 및 제 2 고도각에 따라 사운드 필드를 회전시키기 위하여 사운드 필드에 대한 제 2 회전 동작을 수행할 수도 있고, 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 제 2 방위각 및 제 2 고도각에 따라 회전된 사운드 필드를 나타내는 복수의 계층적 엘리먼트들의 제 2 수를 결정할 수도 있다. 또한, 비트스트림 생성 디바이스 (36) 는 복수의 계층적 엘리먼트들의 제 1 수 및 복수의 계층적 엘리먼트들의 제 2 수의 비교에 기초하여 제 1 회전 동작 및 제 2 회전 동작을 선택할 수도 있다.
일부의 사례들에서, 회전 알고리즘은 시간의 기간에 대하여 수행될 수도 있으며, 여기서, 회전 알고리즘의 추후의 호출들은 회전 알고리즘의 과거의 호출들에 기초하여 회전 동작들을 수행할 수도 있다. 다시 말해서, 회전 알고리즘은 이전의 시간 기간 동안에 사운드 필드를 회전시킬 때에 결정된 과거의 회전 정보에 기초하여 적응적일 수도 있다. 예를 들어, 비트스트림 생성 디바이스 (36) 는 이 제 1 시간 기간 동안에 SHC (27') 를 식별하기 위하여 제 1 시간 기간, 예컨대, 오디오 프레임 동안에 사운드 필드를 회전시킬 수도 있다. 비트스트림 생성 디바이스 (36) 는 위에서 설명된 방법들 중 임의의 것으로 비트스트림 (31) 에서 회전 정보 및 SHC (27') 를 특정할 수도 있다. 이 회전 정보는 그것이 제 1 시간 기간 동안에 사운드 필드의 회전을 기술한다는 점에서 제 1 회전 정보로서 지칭될 수도 있다. 다음으로, 비트스트림 생성 디바이스 (31) 는 이 제 2 시간 기간 동안에 SHC (27') 를 식별하기 위하여, 이 제 1 회전 정보에 기초하여, 제 2 시간 기간, 예컨대, 제 2 오디오 프레임 동안에 사운드 필드를 회전시킬 수도 있다. 비트스트림 생성 디바이스 (36) 는 하나의 예로서, 방위각 및 고도각의 "최적의" 조합에 대한 검색을 초기화하기 위하여 제 2 시간 기간 동안에 제 2 회전 동작을 수행할 때, 이 제 1 회전 정보를 사용할 수도 있다. 다음으로, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서 제 2 시간 기간 동안의 SHC (27') 및 대응하는 회전 정보 ("제 2 회전 정보" 로서 지칭될 수도 있음) 를 특정할 수도 있다.
프로세싱 시간 및/또는 소비를 감소시키기 위하여 회전 알고리즘을 구현하기 위한 다수의 상이한 방법들에 대하여 위에서 설명되었지만, 기법들은 "최적의 회전" 으로서 지칭될 수도 있는 것의 식별을 감소시키거나, 또는 이와 다르게 가속화할 수도 있는 임의의 알고리즘에 대해 수행될 수도 있다. 또한, 기법들은 최적이 아닌 회전들을 식별하는 임의의 알고리즘에 대하여 수행될 수도 있지만, 속도 또는 프로세서 또는 다른 자원 사용의 측면에서 종종 측정된, 다른 양태들에서의 성능을 개선시킬 수도 있다.
도 7a 내지 도 7e 는 각각 이 개시물에서 설명된 기법들에 따라 형성된 비트스트림들 (31A 내지 31E) 을 예시하는 도면이다. 도 7a 의 예에서, 비트스트림 (31A) 은 상기 도 3 에서 도시된 비트스트림 (31) 의 하나의 예를 나타낼 수도 있다. 비트스트림 (31A) 은 SHC 존재 필드 (50) 와, SHC (27') 를 저장하는 필드 (여기서, 필드는 "SHC (27')" 로 나타냄) 를 포함한다. SHC 존재 필드 (50) 는 SHC (27) 의 각각에 대응하는 비트를 포함할 수도 있다. SHC (27') 는 수에 있어서 SHC (27) 의 수보다 더 작을 수도 있는, 비트스트림에서 특정되는 SHC (27) 중 그러한 것들을 나타낼 수도 있다. 전형적으로, SHC (27') 의 각각은 비-제로 값들을 가지는 SHC (27) 중 그러한 것들이다. 위에서 언급된 바와 같이, 임의의 주어진 사운드 필드의 제 4 차수 표현에 대하여, (1+4)2 또는 25 개의 SHC 가 요구된다. 이 SHC 중 하나 이상을 제거하고 이 제로 값의 SHC 를 단일 비트로 대체하는 것은 31 비트들을 절약할 수도 있고, 이 31 비트들은 사운드 필드의 다른 부분들을 더욱 상세하게 표현하는 것에 할당될 수도 있거나, 또는 이와 다르게 효율적인 대역폭 사용을 용이하게 하기 위하여 제거될 수도 있다.
도 7b 의 예에서, 비트스트림 (31B) 은 상기 도 3 에서 도시된 비트스트림 (31) 의 하나의 예를 나타낼 수도 있다. 비트스트림 (31B) 은 변환 정보 필드 (52) ("변환 정보 (52") 와, SHC (27') 를 저장하는 필드 (여기서, 필드는 "SHC (27')" 로 나타냄) 를 포함한다. 위에서 언급된 바와 같이, 변환 정보 (52) 는 변환 정보, 회전 정보, 및/또는 사운드 필드에 대한 조절을 나타내는 임의의 다른 형태의 정보를 포함할 수도 있다. 일부의 사례들에서, 변환 정보 (52) 는 또한, 비트스트림 (31B) 에서 SHC (27') 로서 특정되는 SHC (27) 의 최고 차수를 특정할 수도 있다. 즉, 변환 정보 (52) 는 3 의 차수를 표시할 수도 있고, 추출 디바이스 (38) 는 이것을, SHC (27') 가 3 의 차수를 가지는 SHC (27) 중 그러한 것들까지 그리고 그러한 것들을 포함하는 SHC (27) 중 그러한 것들을 포함함을 표시하는 것으로서 이해할 수도 있다. 다음으로, 추출 디바이스 (38) 는 4 이상의 차수를 가지는 SHC (27) 를 제로로 설정함으로써, 비트스트림에서 4 이상의 차수의 SHC (27) 의 명시적 시그널링을 잠재적으로 제거하도록 구성될 수도 있다.
도 7c 의 예에서, 비트스트림 (31C) 은 상기 도 3 에서 도시된 비트스트림 (31) 의 하나의 예를 나타낼 수도 있다. 비트스트림 (31C) 은 변환 정보 필드 (52) ("변환 정보 (52"), SHC 존재 필드 (50), 및 SHC (27') 를 저장하는 필드 (여기서, 필드는 "SHC (27')" 로 나타냄) 를 포함한다. SHC (27) 의 어느 차수가 도 7b 에 대하여 위에서 설명된 바와 같이 시그널링되지 않는지를 이해하도록 구성되는 것이 아니라, SHC 존재 필드 (50) 는 SHC (27) 중 어느 것이 비트스트림 (31C) 에서 SHC (27') 로서 특정되는지를 명시적으로 시그널링할 수도 있다.
도 7d 의 예에서, 비트스트림 (31D) 은 상기 도 3 에서 도시된 비트스트림 (31) 의 하나의 예를 나타낼 수도 있다. 비트스트림 (31D) 은 차수 필드 (60) ("차수 (60)"), SHC 존재 필드 (50), 방위 플래그 (62) ("AZF (62)"), 고도 플래그 (64) ("ELF (64"), 방위각 필드 (66) ("방위 (66)"), 고도각 필드 (68) ("고도 (68)"), 및 SHC (27') 를 저장하는 필드 (여기서, 다시, 필드는 "SHC (27')"로 나타냄) 를 포함한다. 차수 필드 (60) 는 SHC (27') 의 차수, 즉, 사운드 필드를 나타내기 위해 이용된 구면 기저 함수의 최고 차수에 대해 상기 n 에 의해 나타낸 차수를 특정한다. 차수 필드 (60) 는 8-비트 필드인 것으로서 도시되어 있지만, 3 (제 4 차수를 특정하기 위해 요구된 비트들의 수임) 과 같은 다른 다양한 비트 크기들일 수도 있다. SHC 존재 필드 (50) 는 25-비트 필드로서 도시되어 있다. 그러나, 다시, SHC 존재 필드 (50) 는 다른 다양한 비트 크기들일 수도 있다. SHC 존재 필드 (50) 가 사운드 필드의 제 4 차수 표현에 대응하는 구면 조화 계수들의 각각에 대해 하나의 비트를 포함할 수도 있음을 표시하기 위하여, SHC 존재 필드 (50) 는 25 비트들로서 도시되어 있다.
방위 플래그 (62) 는 방위 필드 (66) 가 비트스트림 (31D) 에서 존재하는지 여부를 특정하는 1-비트 플래그를 나타낸다. 방위 플래그 (62) 가 1 로 설정될 때, SHC (27') 에 대한 방위 필드 (66) 는 비트스트림 (31D) 에서 존재한다. 방위 플래그 (62) 가 제로로 설정될 때, SHC (27') 에 대한 방위 필드 (66) 는 비트스트림 (31D) 에서 존재하지 않거나, 또는 이와 다르게 특정되지 않는다. 마찬가지로, 고도 플래그 (64) 는 고도 필드 (68) 가 비트스트림 (31D) 에서 존재하는지 여부를 특정하는 1-비트 플래그를 나타낸다. 고도 플래그 (64) 가 1 로 설정될 때, SHC (27') 에 대한 고도 필드 (68) 는 비트스트림 (31D) 에서 존재한다. 고도 플래그 (64) 가 제로로 설정될 때, SHC (27') 에 대한 고도 필드 (68) 는 비트스트림 (31D) 에서 존재하지 않거나, 또는 이와 다르게 특정되지 않는다. 대응하는 필드가 존재하는 1 시그널링과, 대응하는 필드가 존재하지 않는 제로 시그널링으로서 설명되었지만, 제로가 대응하는 필드가 비트스트림 (31D) 에서 특정되는 것으로 특정하고, 1 이 대응하는 필드가 비트스트림 (31D) 에서 특정되지 않는 것으로 특정하도록, 규정이 반전될 수도 있다. 그러므로, 이 개시물에서 설명된 기법들은 이와 관련하여 제한되지 않아야 한다.
방위 필드 (66) 는 비트스트림 (31D) 에서 존재할 때, 방위각을 특정하는 10-비트 필드를 나타낸다. 10-비트 필드로서 도시되었지만, 방위 필드 (66) 는 다른 비트 크기들일 수도 있다. 고도 필드 (68) 는 비트스트림 (31D) 에서 존재할 때, 고도각을 특정하는 9-비트 필드를 나타낸다. 필드들 (66 및 68) 에서 각각 특정된 방위각 및 고도각은 플래그들 (62 및 64) 과 함께, 위에서 설명된 회전 정보를 나타낼 수도 있다. 이 회전 정보는 원래의 기준 프레임에서 SHC (27) 를 복구하도록 사운드 필드를 회전시키기 위하여 이용될 수도 있다.
SHC (27') 필드는 크기 X 인 가변 필드로서 도시되어 있다. SHC (27') 필드는 SHC 존재 필드 (50) 에 의해 나타낸 바와 같이, 비트스트림에서 특정된 SHC (27') 의 수로 인해 변동될 수도 있다. 크기 X 는 SHC 존재 필드 (50) 에서의 1 들의 수 x 32-비트들 (각각의 SHC (27') 의 크기임) 의 함수로서 유도될 수도 있다.
도 7e 의 예에서, 비트스트림 (31E) 은 상기 도 3 에서 도시된 비트스트림 (31) 의 또 다른 예를 나타낼 수도 있다. 비트스트림 (31E) 은 차수 필드 (60) ("차수 (60"), SHC 존재 필드 (50), 회전 인덱스 필드 (70), 및 SHC (27') 를 저장하는 필드 (여기서, 다시, 필드는 "SHC (27')" 로 나타냄) 를 포함한다. 차수 필드 (60), SHC 존재 필드 (50), 및 SHC (27') 필드는 위에서 설명된 것들과 실질적으로 유사할 수도 있다. 회전 인덱스 필드 (70) 는 고도각 및 방위각의 1024x512 (또는, 다시 말해서, 524288) 개의 조합들 중 하나를 특정하기 위하여 이용된 20-비트 필드를 나타낼 수도 있다. 일부의 사례들에서는, 이 회전 인덱스 필드 (70) 를 특정하기 위하여 19-비트들만이 이용될 수도 있고, 비트스트림 생성 디바이스 (36) 는 회전 동작이 수행되었는지 여부 (및 그러므로, 회전 인덱스 필드 (70) 가 비트스트림에서 존재하는지 여부) 를 표시하기 위하여 비트스트림에서 추가적인 플래그를 특정할 수도 있다. 이 회전 인덱스 필드 (70) 는 위에서 언급된 회전 인덱스를 특정하고, 이 회전 인덱스는 비트스트림 생성 디바이스 (36) 및 비트스트림 추출 디바이스 (38) 의 양자에 공통인 회전 테이블에서의 엔트리를 지칭할 수도 있다. 일부의 사례들에서, 이 회전 테이블은 방위각 및 고도각의 상이한 조합들을 저장할 수도 있다. 대안적으로, 회전 테이블은 위에서 설명된 행렬을 저장할 수도 있고, 이것은 방위각 및 고도각의 상이한 조합들을 행렬 형태로 효과적으로 저장한다.
도 8 은 이 개시물에서 설명된 기법들의 회전 양태들을 구현함에 있어서 도 3 의 예에서 도시된 비트스트림 생성 디바이스 (36) 의 일 예의 동작을 예시하는 플로우차트이다. 먼저, 비트스트림 생성 디바이스 (36) 는 위에서 설명된 다양한 회전 알고리즘들 중 하나 이상에 따라 방위각 및 고도각 조합을 선택할 수도 있다 (80). 다음으로, 비트스트림 생성 디바이스 (36) 는 선택된 방위각 및 고도각에 따라 사운드 필드를 회전시킬 수도 있다 (82). 위에서 설명된 바와 같이, 비트스트림 생성 디바이스 (36) 는 위에서 언급된 InvMat 1 를 이용하여 SHC (27) 로부터 사운드 필드를 최초로 유도할 수도 있다. 비트스트림 생성 디바이스 (36) 는 또한, 회전된 사운드 필드를 나타내는 SHC (27') 를 결정할 수도 있다 (84). 별도의 단계들 또는 동작들인 것으로 설명되었지만, 비트스트림 생성 디바이스 (36) 는, SHC (27) 로부터 사운드 필드를 유도하고, 사운드 필드를 회전시키고, 회전된 사운드 필드를 나타내는 SHC (27') 를 결정하는, 방위각 및 고도각 조합의 선택을 나타내는 변환 ([EncMat2][InvMat 1 ] 의 결과를 나타낼 수도 있음) 을 적용할 수도 있다.
여하튼, 다음으로, 비트스트림 생성 디바이스 (36) 는 임계 값보다 더 큰 결정된 SHC (27') 의 수를 연산할 수도 있고, 이 수를 이전의 방위각 및 고도각 조합에 대한 이전의 반복에 대해 연산된 수와 비교할 수도 있다 (86, 88). 제 1 방위각 및 고도각 조합에 대한 제 1 반복에서는, 이 비교가 미리 정의된 이전의 수 (제로로 설정될 수도 있음) 에 대한 것일 수도 있다. 여하튼, SHC (27') 의 결정된 수가 이전 수보다 더 작을 경우 ("예" 88), 비트스트림 생성 디바이스 (36) 는 SHC (27'), 방위각 및 고도각을 저장하고, 회전 알고리즘의 이전 반복으로부터 저장된 이전 SHC (27'), 방위각 및 고도각을 종종 대체한다 (90).
SHC (27') 의 결정된 수가 이전 수보다 더 작지 않을 경우 ("아니오" 88), 또는 이전에 저장된 SHC (27'), 방위각 및 고도각 대신에 SHC (27'), 방위각 및 고도각을 저장한 후에는, 비트스트림 생성 디바이스 (36) 가 회전 알고리즘이 완료되었는지 여부를 결정할 수도 있다 (92). 즉, 비트스트림 생성 디바이스 (36) 는 하나의 예로서, 방위각 및 고도각의 모든 이용가능한 조합이 평가되었는지 여부를 결정할 수도 있다. 다른 예들에서, 비트스트림 생성 디바이스 (36) 는 (조합의 정의된 서브세트의 전부가 수행된 것, 주어진 궤도가 횡단되었는지 여부, 계층적 트리가 리프 노드로 횡단되었는지 여부 등과 같이) 다른 기준들이 충족되는지 여부를 결정할 수도 있어서, 비트스트림 생성 디바이스 (36) 가 회전 알고리즘을 수행하는 것을 완료하였다. 완료되지 않은 경우 ("아니오" 92), 비트스트림 생성 디바이스 (36) 는 또 다른 선택된 조합에 대하여 상기 프로세스를 수행할 수도 있다 (80 내지 92). 완료될 경우 ("예" 92), 비트스트림 생성 디바이스 (36) 는 위에서 설명된 다양한 방법들 중 하나로 비트스트림 (31) 에서 저장된 SHC (27'), 방위각 및 고도각을 특정할 수도 있다 (94).
도 9 는 이 개시물에서 설명된 기법들의 변환 양태들을 수행함에 있어서 도 4 의 예에서 도시된 비트스트림 생성 디바이스 (36) 의 일 예의 동작을 예시하는 플로우차트이다. 먼저, 비트스트림 생성 디바이스 (36) 는 선형 가역 변환을 나타내는 행렬을 선택할 수도 있다 (100). 선형 가역 변환을 나타내는 행렬의 하나의 예는 [EncMat 1 ][IncMat 1 ] 의 결과인 상기 도시된 행렬일 수도 있다. 다음으로, 비트스트림 생성 디바이스 (36) 는 사운드 필드를 변환하기 위하여 행렬을 사운드 필드에 적용할 수도 있다 (102). 비트스트림 생성 디바이스 (36) 는 또한, 회전된 사운드 필드를 나타내는 SHC (27') 를 결정할 수도 있다 (104). 별도의 단계들 또는 동작들인 것으로 설명되었지만, 비트스트림 생성 디바이스 (36) 는, SHC (27) 로부터 사운드 필드를 유도하고, 사운드 필드를 변환하고, 변환 사운드 필드를 나타내는 SHC (27') 를 결정하는 변환 ([EncMat2][InvMat 1 ] 의 결과를 나타낼 수도 있음) 을 적용할 수도 있다.
여하튼, 다음으로, 비트스트림 생성 디바이스 (36) 는 임계 값보다 더 큰 결정된 SHC (27') 의 수를 연산할 수도 있고, 이 수를 변환 행렬의 이전의 적용에 대한 이전의 반복에 대해 연산된 수와 비교할 수도 있다 (106, 108). SHC (27') 의 결정된 수가 이전 수보다 더 작을 경우 ("예" 108), 비트스트림 생성 디바이스 (36) 는 SHC (27') 및 행렬 (또는 행렬과 연관된 인덱스와 같은, 그 일부의 파생물) 을 저장하고, 회전 알고리즘의 이전 반복으로부터 저장된 이전 SHC (27') 및 행렬 (또는 그 파생물) 을 대체한다 (110).
SHC (27') 의 결정된 수가 이전 수보다 더 작지 않을 경우 ("아니오" 108), 또는 이전에 저장된 SHC (27') 및 행렬 대신에 SHC (27') 및 행렬을 저장한 후에는, 비트스트림 생성 디바이스 (36) 가 변환 알고리즘이 완료되었는지 여부를 결정할 수도 있다 (112). 즉, 비트스트림 생성 디바이스 (36) 는 하나의 예로서, 모든 이용가능한 변환 행렬들이 평가되었는지 여부를 결정할 수도 있다. 다른 예들에서, 비트스트림 생성 디바이스 (36) 는 (이용가능한 변환 행렬들의 정의된 서브세트의 전부가 수행된 것, 주어진 궤도가 횡단되었는지 여부, 계층적 트리가 리프 노드로 횡단되었는지 여부 등과 같이) 다른 기준들이 충족되는지 여부를 결정할 수도 있어서, 비트스트림 생성 디바이스 (36) 가 변환 알고리즘을 수행하는 것을 완료하였다. 완료되지 않은 경우 ("아니오" 112), 비트스트림 생성 디바이스 (36) 는 또 다른 선택된 변환 행렬에 대하여 상기 프로세스를 수행할 수도 있다 (100 내지 112). 완료된 경우 ("예" 112), 다음으로, 비트스트림 생성 디바이스 (36) 는 위에서 언급된 바와 같이, SHC (27') 의 상이한 변환된 서브세트들에 대한 상이한 비트레이트들을 식별할 수도 있다 (114). 다음으로, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 을 생성하기 위하여 식별된 비트레이트들을 이용하여 상이한 서브세트들을 코딩할 수도 있다 (116).
일부의 예들에서, 변환 알고리즘은 단일의 변환 행렬을 평가하는 단일 반복을 수행할 수도 있다. 즉, 변환 행렬은 선형 가역 변환을 나타내는 임의의 행렬을 포함할 수도 있다. 일부의 사례들에서, 선형 가역 변환은 사운드 필드를 공간 도메인으로부터 주파수 도메인으로 변환할 수도 있다. 이러한 선형 가역 변환의 예들은 이산 푸리에 변환 (discrete Fourier transform; DFT) 을 포함할 수도 있다. DFT 의 적용은 단일 반복을 포함하기만 할 수도 있고, 그러므로, 변환 알고리즘이 완료되는지 여부를 결정하기 위한 단계들을 반드시 포함하지는 않을 것이다. 따라서, 기법들은 도 9 의 예로 제한되지 않아야 한다.
다시 말해서, 선형 가역 변환의 하나의 예는 이산 푸리에 변환 (DFT) 이다. 25 개의 복소 계수들의 세트를 형성하기 위하여, 25 개의 SHC (27') 가 DFT 에 의해 연산될 수 있다. 비트스트림 생성 디바이스 (36) 는 또한 제로-패딩 (zero-pad) 될 수도 있다. DFT 의 빈 크기 (bin size) 의 분해능을 잠재적으로 증가시키도록 2 의 정수배이어야 할 25 개의 SHC 들 (27') 은 잠재적으로, 예컨대, 고속 푸리에 변환 (fast Fourier transform; FFT) 을 적용하는 것을 통해, DFT 의 더욱 효율적인 구현을 가진다. 일부의 사례들에서, DFT 의 분해능을 25 포인트를 넘어서서 증가시키는 것은 반드시 요구되지는 않는다. 변환 도메인에서, 비트스트림 생성 디바이스 (36) 는 특별한 빈에서 임의의 스펙트럼 에너지가 있는지 여부를 결정하기 위하여 임계을 적용할 수도 있다. 다음으로, 이 문맥에서, 비트스트림 생성 디바이스 (36) 는 이 임계 미만인 스펙트럼 계수 에너지를 폐기하거나 제로-아웃 (zero-out) 할 수도 있고, 비트스트림 생성 디바이스 (36) 는 폐기되거나 제로-아웃된 SHC (27') 중 하나 이상을 가지는 SHC (27') 를 복구하기 위하여 역 변환을 적용할 수도 있다. 즉, 역 변환이 적용된 후, 임계 미만의 계수들은 존재하지 않고, 그 결과, 사운드 필드를 인코딩하기 위하여 더 적은 비트들이 이용될 수도 있다.
또 다른 선형 가역 변환은 "특이값 분해" 로서 지칭되는 것을 수행하는 행렬을 포함할 수도 있다. SVD 에 대하여 설명되었지만, 기법들은 선형적으로 정정되지 않은 데이터의 세트들을 제공하는 임의의 유사한 변환 또는 분해에 대하여 수행될 수도 있다. 또한, 이 개시물에서의 "세트들" 또는 "서브세트들" 에 대한 지칭은 구체적으로 반대로 기재되지 않으면, "비-제로" 세트들 또는 서브세트들을 지칭하도록 일반적으로 의도된 것이고, 소위 "비어 있는 세트 (empty set)" 를 포함하는 세트들의 고전적인 수학적 정의를 지칭하도록 의도된 것은 아니다.
대안적인 변환들은 두문자어 PCA 에 의해 종종 축약되는 주요 컴포넌트 분석 (principal component analysis) 을 포함할 수도 있다. PCA 는 아마도 상관된 변수들의 관찰들의 세트를 주요 컴포넌트들로서 지칭된 선형적으로 상관되지 않은 변수들의 세트로 변환하기 위하여 직교 변환을 채용하는 수학적 절차를 지칭한다. 선형적으로 상관되지 않은 변수들은 서로에 대한 선형 통계적 관계 (또는 종속성) 를 가지지 않는 변수들을 나타낸다. 이 주요 컴포넌트들은 서로에 대한 작은 통계적 상관 정도를 가지는 것으로서 설명될 수도 있다. 여하튼, 소위 주요 컴포넌트들의 수는 원래의 변수들의 수 이하이다. 전형적으로, 변환은 제 1 주요 컴포넌트가 최대의 가능한 분산을 가지는 그러한 방법으로 (또는 다시 말하면, 가능한 한 많은 데이터에 있어서의 가변성을 고려함) 정의되고, 각각의 연속하는 컴포넌트는 궁극적으로, 이 연속적인 컴포넌트가 선행하는 컴포넌트들에 직교하는 (상관되지 않는 것으로 수정될 수도 있음) 제약 하에서 가능한 최고 분산을 가진다. PCA 는 SHC 의 측면에서, SHC 의 압축으로 귀착될 수도 있는 차수-감소의 형태를 수행할 수도 있다. 문맥에 따라, PCA 는 약간의 예를 들면, 이산 카루넨-루베 변환 (Karhunen-Loeve transform), 호텔링 변환 (Hotelling transform), 적합 직교 분해 (proper orthogonal decomposition; POD), 및 고유값 분해 (eigenvalue decomposition; EVD) 와 같은 다수의 상이한 명칭들에 의해 지칭될 수도 있다.
여하튼, SVD 는 SHC 를 변환된 구면 조화 계수들의 2 개 이상의 세트들로 변환하기 위하여 SHC 에 적용되는 프로세스를 나타낸다. 비트스트림 생성 디바이스 (36) 는 소위 V 행렬, S 행렬 및 U 행렬을 생성하기 위하여 SHC (27) 에 대하여 SVD 를 수행할 수도 있다. 선형 대수학에서, SVD 는 다음의 형태로 m-대-n 실수 또는 복소수 행렬 X (여기서, X 는 SHC (11A) 와 같은 멀티-채널 오디오 데이터를 나타낼 수도 있음) 의 인수분해를 나타낼 수도 있다:
X = USV*
U 는 m-대-m 실수 또는 허수 유니타리 행렬 (unitary matrix) 을 나타낼 수도 있으며, 여기서, U 의 m 열들은 멀티-채널 오디오 데이터의 좌특이 벡터들로서 보편적으로 알려져 있다. S 는 대각선 상에 음이 아닌 실수인 수들을 갖는 m-대-n 직사각형 대각 행렬을 나타낼 수도 있으며, 여기서, S 의 대각 값들은 멀티-채널 오디오 데이터의 특이값들로서 보편적으로 알려져 있다. V* (V 의 공액 병치 (conjugate transpose) 를 나타낼 수도 있음) 는 n-대-n 실수 또는 복소 유니타리 행렬을 나타낼 수도 있으며, 여기서, V* 의 n 열들은 멀티-채널 오디오 데이터의 우특이 벡터들로서 보편적으로 알려져 있다.
이 개시물에서 구면 조화 계수들 (27) 을 포함하는 멀티-채널 오디오 데이터에 적용되는 것으로 설명되었지만, 기법들은 멀티-채널 오디오 데이터의 임의의 형태에 적용될 수도 있다. 이러한 방법으로, 비트스트림 생성 디바이스 (36) 는 멀티-채널 오디오 데이터의 좌특이 벡터들을 나타내는 U 행렬, 멀티-채널 오디오 데이터의 특이값들을 나타내는 S 행렬, 및 멀티-채널 오디오 데이터의 우특이 벡터들을 나타내는 V 행렬을 생성하기 위하여, 사운드 필드의 적어도 부분을 나타내는 멀티-채널 오디오 데이터에 대하여 특이값 분해를 수행할 수도 있어서, 멀티-채널 오디오 데이터를 U 행렬, S 행렬 및 V 행렬 중 하나 이상의 적어도 부분의 함수로서 나타낼 수도 있다.
일반적으로, 상기 참조된 SVD 수학적 표현에서의 V* 행렬은 SVD 가 복소수들을 포함하는 행렬들에 적용될 수도 있음을 반영하기 위하여 V 행렬의 공액 병치로서 나타내어진다. 실수들만을 포함하는 행렬들에 적용될 때, V 행렬 (또는 다시 말해서, V* 행렬) 의 복소 공액은 V 행렬과 동일한 것으로 간주될 수도 있다. 이하에서는, 예시 목적들의 용이함을 위하여, V* 행렬이 아니라 V 행렬이 SVD 를 통해 출력되는 결과로 되어, SHC (11A) 는 실수들을 포함한다. V 행렬인 것으로 가정되었지만, 기법들은 복소 계수들을 가지는 SHC (11A) 에 유사한 방식으로 적용될 수도 있으며, 여기서, SVD 의 출력은 V* 행렬이다. 따라서, 기법들은 이와 관련하여 V 행렬을 생성하기 위하여 SVD 의 적용을 제공하는 것으로만 제한되어야 하는 것이 아니라, V* 행렬을 생성하기 위하여 복소 컴포넌트들을 가지는 SHC (11A) 로의 SVD 의 적용을 포함할 수도 있다.
SVD 의 문맥에서, 비트스트림 생성 디바이스 (36) 는 비트스트림에서의 변환 정보를, SVD (또는 더욱 일반적으로, 벡터-기반 변환) 가 SHC (27) 에 적용되었는지 여부, 또는 다른 변환들 또는 변동되는 코딩 방식들이 적용되었는지를 표시하는 하나 이상의 비트들에 의해 정의된 플래그로서 특정할 수도 있다.
따라서, 3 차원 사운드 필드에서는, 음원이 시작하는 그러한 방향들이 가장 중요한 것으로 간주될 수도 있다. 위에서 설명된 바와 같이, 방법론은 주요 에너지가 존재하는 방향을 계산함으로써 사운드 필드를 회전시키기 위하여 제공된다. 다음으로, 이 에너지, 또는 가장 중요한 공간적 장소가 그때에 an0 구면 조화 계수들에서 있도록 회전되는 방법으로, 사운드 필드가 회전될 수도 있다. 이것에 대한 이유는 간단하여, 불필요한 (즉, 주어진 임계 미만인) 구면 조화들을 잘라낼 때, N 구면 조화들인 임의의 주어진 차수 N 에 대한 필요한 구면 조화 계수들의 최소 양이 있을 가능성이 있을 것이다. 심지어 이 감소된 HOA 계수들을 저장하기 위해 요구된 큰 대역폭으로 인해, 다음으로, 데이터 압축의 형태가 요구될 수도 있다. 모든 구면 조화들에 걸쳐 동일한 비트-레이트를 이용할 경우, 계수들의 일부는 지각적으로 투명한 코딩을 생성하기 위한 필요한 것보다 더 많은 비트들을 잠재적으로 이용하고 있는 반면, 다른 구면 조화 계수들은 계수를 지각적으로 투명하게 하기 위하여 충분히 큰 비트레이트를 잠재적으로 이용하지 않는다. 이에 따라, HOA 계수들에 걸쳐 비트레이트를 지능적으로 할당하기 위한 방법이 요구될 수도 있다.
이 개시물에서 설명된 기법들은 구조 조화들의 오디오 데이터 레이트 압축을 위하여, 사운드 필드가 먼저 회전되어, 하나의 예로서, 최대 에너지가 시작하는 방향이 Z-축으로 위치되는 것으로 규정할 수도 있다. 이 회전으로, Yn0 구면 조화 기저 함수들이 Z-축 (상하 축) 에서 지시하는 최대 및 최소 로브들을 가지므로, an0 구면 조화 계수는 최대 에너지를 가질 수도 있다. 구면 조화 기저 함수들의 성질로 인해, 에너지 분포는 an0 계수에서 대량으로 존재할 가능성이 있는 반면, 최소 에너지는 수평 기반 an+/-n 에서 있을 것이고 m 값 ?<m<n 의 다른 계수들에서의 에너지는 m = -n 및 m = 0 사이에서 증가할 것이며 다음으로, m = 0 및 m = n 사이에서 다시 감소할 것이다. 다음으로, 기법들은 더 큰 비트레이트를 an0 계수들에, 그리고 최소 양을 an+/-n 계수들에 배정할 수도 있다. 이러한 의미에서, 기법들은 차수 및/또는 하위-차수마다 변동되는 동적 비트레이트 할당을 제공할 수도 있다. 주어진 차수에 대한 그 사이의 계수들은 중간 비트레이트들을 가질 가능성이 있다. 레이트들을 계산하기 위하여, HOA 신호 내에 포함된 각각의 HOA 차수에 대한 p 개의 포인트들을 가질 수도 있는 윈도우 함수가 이용될 수 있다 (WIN). 레이트들은 하나의 예로서, 높은 비트레이트 및 낮은 비트레이트 사이의 차이의 WIN 인수를 이용하여 적용될 수 있다. 높은 비트레이트 및 낮은 비트레이트는 HOA 신호 내에 포함된 차수들의 차수 마다에 기초하여 정의될 수도 있다. 3 차원들에서의 결과적인 윈도우는 Z-축에서 위를 지시하는 일종의 "대형" 서커스 천막과, 그리고 Z-축에서 아래를 지시하는 그 미러로서의 또 다른 것과 유사할 것이며, 여기서, 이들은 수평 평면에서 미러링된다.
도 10 은 이 개시물에서 설명된 기법들의 다양한 양태들을 수행함에 있어서, 도 3 의 예에서 도시된 추출 디바이스 (38) 와 같은 추출 디바이스의 예시적인 동작을 예시하는 플로우차트이다. 먼저, 추출 디바이스 (38) 는 도 7a 내지 도 7e 의 예들에서 도시된 바와 같이, 비트스트림 (31) 에서 특정될 수도 있는 변환 정보 (52) 를 결정할 수도 있다 (120). 다음으로, 추출 디바이스 (38) 는 위에서 설명된 바와 같이, 변환된 SHC (27) 를 결정할 수도 있다 (122). 다음으로, 추출 디바이스 (38) 는 SHC (27') 를 생성하기 위하여, 결정된 변환 정보 (52) 에 기초하여 변환된 SHC (27) 를 변환할 수도 있다. 일부의 예들에서, 추출 디바이스 (38) 는 변환 정보 (52) 에 기초하여, 이 변환을 효과적으로 수행하는 렌더러를 선택할 수도 있다. 즉, 추출 디바이스 (38) 는 SHC (27') 를 생성하기 위하여, 다음의 수학식에 따라 동작할 수도 있다:
Figure pct00058
상기한 수학식에서, [EncMat][Renderer] 는 양자의 전방 방향들이 정합하도록 동일한 양만큼 렌더러를 변환하기 위하여 이용될 수 있고, 이것에 의하여, 비트스트림 생성 디바이스에서 수행된 회전을 무효화하거나 균형을 맞출 수 있다.
도 11 은 이 개시물에서 설명된 기법들의 다양한 양태들을 수행함에 있어서, 도 3 의 예에서 도시된 비트스트림 생성 디바이스 (36) 와 같은 비트스트림 생성 디바이스와, 도 3 의 예에서 또한 도시된 추출 디바이스 (38) 와 같은 추출 디바이스의 예시적인 동작을 예시하는 플로우차트이다. 먼저, 비트스트림 생성 디바이스 (36) 는 위에서 설명되고 도 7a 내지 도 7e 에 대하여 도시된 다양한 방법들 중 임의의 것으로 비트스트림 (31) 내에 포함되어야 할 SHC (27) 의 서브세트를 식별할 수도 있다 (140). 다음으로, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서 SHC (27) 의 식별된 서브세트를 특정할 수도 있다 (142). 다음으로, 추출 디바이스 (38) 는 비트스트림 (31) 을 얻을 수도 있고, 비트스트림 (31) 에서 특정된 SHC (27) 의 서브세트를 결정할 수도 있고, 비트스트림으로부터 SHC (27) 의 결정된 서브세트를 파싱할 수도 있다.
일부의 예들에서, 비트스트림 생성 디바이스 (36) 및 추출 디바이스 (38) 는 기법들의 이 서브세트 SHC 시그널링 양태들과 함께, 기법들의 다양한 다른 양태들을 수행할 수도 있다. 즉, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서 특정되어야 하는 SHC (27) 의 수를 감소시키기 위하여 SHC (27) 에 대한 변환을 수행할 수도 있다. 다음으로, 비트스트림 생성 디바이스 (36) 는 비트스트림 (31) 에서 이 변환을 수행한 후에 남아 있는 SHC (27) 의 서브세트를 식별할 수도 있고, 비트스트림 (31) 에서 변환 정보 (52) 를 또한 특정하면서, 비트스트림 (31) 에서 이 변환된 SHC (27) 를 특정할 수도 있다. 다음으로, 추출 디바이스 (38) 는 비트스트림 (31) 을 얻을 수도 있고, 변환된 SHC (27) 의 서브세트를 결정할 수도 있고, 비트스트림 (31) 으로부터 변환된 SHC (27) 의 결정된 서브세트를 파싱할 수도 있다. 다음으로, 추출 디바이스 (38) 는 SHC (27') 를 생성하기 위하여 변환 정보에 기초하여 변환된 SHC (27) 를 변환함으로써 (SHC (27') 로서 도시되어 있는) SHC (27) 를 복구할 수도 있다. 따라서, 서로로부터 별도로 도시되었지만, 기법들의 다양한 양태들은 서로 함께 수행될 수도 있다.
예에 따라서는, 본원에서 설명된 방법들 중 임의의 것의 어떤 액트들 또는 이벤트들이 상이한 시퀀스에서 수행될 수 있거나, 추가될 수도 있거나, 병합될 수도 있거나, 또는 함께 배제 (예를 들어, 모든 설명된 액트들 또는 이벤트들이 방법의 실시를 위해 필요한 것은 아님) 될 수도 있다는 것을 이해해야 한다. 또한, 어떤 예들에서는, 액트들 또는 이벤트들이 순차적인 것이 아니라, 예를 들어, 멀티-스레딩된 (multi-threaded) 프로세싱, 인터럽트 프로세싱, 또는 다수의 프로세서들을 통해 동시에 수행될 수도 있다. 게다가, 이 개시물의 어떤 양태들은 명료함의 목적들을 위하여 단일 모듈 또는 유닛에 의해 수행되는 것으로 설명되어 있지만, 이 개시물의 기법들은 비디오 코더와 연관된 유닛들 또는 모듈들의 조합에 의해 수행될 수도 있는 것을 이해해야 한다.
하나 이상의 예들에서는, 설명된 기능들이 하드웨어, 소프트웨어, 펌웨어, 또는 그 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현될 경우, 기능들은 하나 이상의 명령들 또는 코드로서, 컴퓨터-판독가능한 매체 상에 저장되거나 컴퓨터-판독가능한 매체를 통해 송신될 수도 있고, 하드웨어-기반 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터-판독가능한 매체들은 데이터 저장 매체들과 같은 유형의 매체에 대응하는 컴퓨터-판독가능한 저장 매체들, 또는 예를 들어, 통신 프로토콜에 따라 하나의 장소로부터 또 다른 장소로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 통신 매체들을 포함할 수도 있다.
이러한 방식으로, 컴퓨터-판독가능한 매체들은 일반적으로 (1) 비-일시적인 유형의 컴퓨터-판독가능한 저장 매체들, 또는 (2) 신호 또는 반송파와 같은 통신 매체에 대응할 수도 있다. 데이터 저장 매체들은 이 개시물에서 설명된 기법들의 구현을 위한 명령들, 코드 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능한 매체들일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터-판독가능한 매체를 포함할 수도 있다.
제한이 아닌 예로서, 이러한 컴퓨터-판독가능한 저장 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장, 자기 디스크 저장, 또는 다른 자기 저장 디바이스들, 플래시 메모리, 또는 명령들 또는 데이터 구조들의 형태로 희망하는 프로그램 코드를 저장하기 위해 이용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속은 컴퓨터-판독가능한 매체로 적절하게 칭해진다. 예를 들어, 동축 케이블, 광섬유 케이블, 트위스트 페어 (twisted pair), 디지털 가입자 회선 (digital subscriber line; DSL), 또는 무선 기술들 예컨대, 적외선, 라디오 (radio), 및 마이크로파 (microwave) 를 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 명령들이 송신될 경우, 동축 케이블, 광섬유 케이블, 트위스트 페어, DSL, 또는 무선 기술들 예컨대, 적외선, 라디오, 및 마이크로파는 매체의 정의 내에 포함된다.
그러나, 컴퓨터-판독가능한 저장 매체들 및 데이터 저장 매체들은 접속들, 반송파들, 신호들, 또는 다른 순시적 매체 (transient medium) 들을 포함하는 것이 아니라, 그 대신에, 비-순시적인, 유형의 저장 매체들에 관한 것이라는 것을 이해해야 한다. 본원에서 이용된 바와 같은 디스크 (disk) 및 디스크 (disc) 는 컴팩트 디스크 (compact disc; CD), 레이저 디스크 (laser disc), 광학 디스크 (optical disc), 디지털 다기능 디스크 (digital versatile disc; DVD), 플로피 디스크 (floppy disk) 및 블루레이 디스크 (blu-ray disc) 를 포함하고, 여기서, 디스크 (disk) 들은 통상 데이터를 자기적으로 재생하는 반면, 디스크 (disc) 들은 데이터를 레이저로 광학적으로 재생한다. 상기의 조합들은 컴퓨터-판독가능한 매체들의 범위 내에 또한 포함되어야 한다.
명령들은 하나 이상의 디지털 신호 프로세서 (digital signal processor; DSP) 들, 범용 마이크로프로세서들, 주문형 집적 회로 (application specific integrated circuit; ASIC) 들, 필드 프로그래밍가능한 로직 어레이 (field programmable logic array; FPGA) 들, 또는 다른 등가의 통합된 또는 개별 로직 회로부와 같은 하나 이상의 프로세서들에 의해 실행될 수도 있다. 따라서, 본원에서 이용된 바와 같은 용어 "프로세서" 는 상기한 구조 또는 본원에서 설명된 기술들의 구현을 위해 적당한 임의의 다른 구조 중 임의의 것을 지칭할 수도 있다. 게다가, 일부의 양태들에서는, 본원에서 설명된 기능성이 인코딩 및 디코딩을 위해 구성되거나 조합된 코덱 (codec) 내에 통합되는 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공될 수도 있다. 또한, 기법들은 하나 이상의 회로들 또는 로직 엘리먼트들에서 완전히 구현될 수 있다.
이 개시물의 기법들은 무선 핸드셋 (wireless handset), 집적 회로 (integrated circuit; IC) 또는 IC 들의 세트 (예를 들어, 칩 세트) 를 포함하는 광범위한 디바이스들 또는 장치들에서 구현될 수도 있다. 다양한 컴포넌트들, 모듈들, 또는 유닛들은 개시된 기법들을 수행하도록 구성된 디바이스들의 기능적 양태들을 강조하기 위하여 이 개시물에서 설명되어 있지만, 상이한 하드웨어 유닛들에 의한 실현을 반드시 요구하지는 않는다. 오히려, 위에서 설명된 바와 같이, 다양한 유닛들은 코덱 하드웨어 유닛 내에 조합될 수도 있거나, 적당한 소프트웨어 및/또는 펌웨어와 함께, 위에서 설명된 바와 같은 하나 이상의 프로세서들을 포함하는 상호동작하는 하드웨어 유닛들의 집합에 의해 제공될 수도 있다.
개시물의 다양한 양태들이 설명되었다. 이러한 그리고 다른 양태들은 다음의 청구항들의 범위 내에 있다.

Claims (61)

  1. 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 구성되는 비트스트림을 생성하는 방법으로서,
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 변환하는 단계; 및
    상기 비트스트림에서 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  2. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 회전시키는 단계를 포함하고,
    상기 변환 정보를 특정하는 단계는 상기 비트스트림에서 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  3. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 병진시키는 단계를 포함하고,
    상기 변환 정보를 특정하는 단계는 상기 비트스트림에서 상기 사운드 필드가 어떻게 병진되었는지를 기술하는 병진 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  4. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는 임계값을 초과하는 비-제로 (non-zero) 값들을 갖는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 변환하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  5. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 회전시키는 단계를 포함하고,
    상기 변환 정보를 특정하는 단계는 상기 비트스트림에서 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  6. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 회전시키는 단계를 포함하고,
    상기 변환 정보를 특정하는 단계는 상기 비트스트림에서 회전 정보로서 오일러 각도들을 특정하는 단계를 포함하고, 상기 오일러 각도들은 상기 사운드 필드가 어떻게 회전되었는지를 기술하는, 비트스트림을 생성하는 방법.
  7. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는,
    제 1 방위각 및 제 1 고도각에 따라 상기 사운드 필드를 회전시키기 위해 상기 사운드 필드에 대한 제 1 회전 동작을 수행하는 단계;
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 제 1 방위각 및 상기 제 1 고도각에 따라 회전되는 상기 사운드 필드를 나타내는 복수의 계층적 엘리먼트들의 제 1 수를 결정하는 단계;
    제 2 방위각 및 제 2 고도각에 따라 상기 사운드 필드를 회전시키기 위해 상기 사운드 필드에 대한 제 2 회전 동작을 수행하는 단계;
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 제 2 방위각 및 상기 제 2 고도각에 따라 회전되는 상기 사운드 필드를 나타내는 복수의 계층적 엘리먼트들의 제 2 수를 결정하는 단계; 및
    상기 복수의 계층적 엘리먼트들의 제 1 수 및 상기 복수의 계층적 엘리먼트들의 제 2 수의 비교에 기초하여 상기 제 1 회전 동작 또는 상기 제 2 회전 동작을 선택하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  8. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는,
    제 1 시간 지속기간 동안 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 제 1 시간 지속기간 동안 상기 사운드 필드를 회전시키는 단계;
    상기 비트스트림에서 상기 제 1 시간 지속기간 동안 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 제 1 회전 정보를 특정하는 단계;
    상기 제 1 회전 정보에 기초하여 제 2 시간 지속기간의 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 제 2 시간 지속기간 동안 상기 사운드 필드를 회전시키는 단계; 및
    상기 비트스트림에서 상기 제 2 시간 지속기간 동안 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 제 2 회전 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  9. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 복수의 계층적 엘리먼트들에 대한 벡터 기반 분해를 수행하는 단계를 포함하고,
    상기 변환 정보를 특정하는 단계는 상기 비트스트림에서 상기 벡터 기반 분해가 상기 복수의 구면 조화 계수들 (spherical harmonic coefficients) 에 대하여 수행되었음을 기술하는 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  10. 제 9 항에 있어서,
    상기 벡터 기반 분해를 수행하는 단계는 SVD (singular value decomposition), PCA (principal component analysis), 및 KLT (Karhunen-Loeve transform) 중 하나 이상을 수행하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  11. 제 1 항에 있어서,
    상기 사운드 필드를 변환하는 단계는 계층적 엘리먼트들의 수를 감소시키기 위해 구면 조화 도메인으로부터 다른 도메인으로 상기 복수의 계층적 엘리먼트들을 변환하는 단계를 포함하고,
    상기 변환 정보를 특정하는 단계는 상기 비트스트림에서 상기 복수의 계층적 엘리먼트들이 상기 구면 조화 도메인으로부터 상기 다른 도메인으로 변환되었음을 나타내는 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  12. 제 1 항에 있어서,
    변환된 구면 조화 계수들의 서브세트가 대응하는 구면 기저 함수의 차수 및 하위 차수 중 하나 이상에 기초하여 변환된 구면 조화 계수들의 적어도 하나의 서브세트에 비트레이트를 할당하는 단계를 더 포함하고, 상기 변환된 구면 조화 계수들은 사운드 필드를 변환하는 변환 동작에 따라 변환되는, 비트스트림을 생성하는 방법.
  13. 제 12 항에 있어서,
    상기 비트레이트를 할당하는 단계는 윈도우 함수 (windowing function) 에 따라, 상기 변환된 구면 조화 계수들의 각각이 대응하는 상기 구면 기저 함수의 상기 차수 및 상기 하위 차수 중 하나 이상에 기초하여 상기 변환된 구면 조화 계수들의 상이한 서브세트들에 상이한 비트레이트들을 할당하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  14. 제 13 항에 있어서,
    상기 윈도우 함수는 해닝 윈도우 함수 (Hanning windowing function), 해밍 윈도우 함수 (Hamming windowing function), 직사각형 윈도우 함수 (rectangular windowing function), 및 삼각형 윈도우 함수 (triangular windowing function) 중 하나 이상을 포함하는, 비트스트림을 생성하는 방법.
  15. 제 12 항에 있어서,
    제 1 비트레이트를 이용하여 상기 변환된 구면 조화 계수들의 제 1 서브세트를 그리고 제 2 비트레이트를 이용하여 상기 변환된 구면 조화 계수들의 제 2 서브세트를 상기 비트스트림에서 특정하는 단계를 더 포함하는, 비트스트림을 생성하는 방법.
  16. 제 12 항에 있어서,
    상기 비트레이트를 할당하는 단계는 상기 변환된 구면 조화 계수들이 대응하는 구면 기저 함수들의 하위 차수가 제로로부터 멀어질 때 점진적으로 감소하는 비트레이트들을 동적으로 할당하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  17. 제 12 항에 있어서,
    상기 비트레이트를 할당하는 단계는 상기 변환된 구면 조화 계수들이 대응하는 구면 기저 함수들의 차수가 증가할 때 점진적으로 감소하는 비트레이트들을 동적으로 할당하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  18. 제 12 항에 있어서,
    상기 비트레이트를 할당하는 단계는 변환된 구면 조화 계수들의 서브세트가 대응하는 구면 기저 함수의 차수 및 하위 차수 중 하나 이상에 기초하여 상기 변환된 구면 조화 계수들의 상이한 서브세트들에 상이한 비트레이트들을 동적으로 할당하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  19. 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 구성되는 비트스트림을 생성하도록 구성되는 디바이스로서,
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 변환하고, 상기 비트스트림에서 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 특정하도록 구성되는 하나 이상의 프로세서들을 포함하는, 비트스트림을 생성하도록 구성되는 디바이스.
  20. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 회전시키도록 구성되고,
    상기 하나 이상의 프로세서들은 또한, 상기 변환 정보를 특정할 때, 상기 비트스트림에서 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 특정하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  21. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 병진시키도록 구성되고,
    상기 하나 이상의 프로세서들은 또한, 상기 변환 정보를 특정할 때, 상기 비트스트림에서 상기 사운드 필드가 어떻게 병진되었는지를 기술하는 병진 정보를 특정하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  22. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 변환하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  23. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 회전시키도록 구성되고,
    상기 하나 이상의 프로세서들은 또한, 상기 변환 정보를 특정할 때, 상기 비트스트림에서 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 특정하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  24. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 회전시키도록 구성되고,
    상기 하나 이상의 프로세서들은 또한, 상기 변환 정보를 특정할 때, 상기 비트스트림에서 회전 정보로서 오일러 각도들을 특정하도록 구성되고, 상기 오일러 각도들은 상기 사운드 필드가 어떻게 회전되었는지를 기술하는, 비트스트림을 생성하도록 구성되는 디바이스.
  25. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한,
    상기 사운드 필드를 변환할 때, 제 1 방위각 및 제 1 고도각에 따라 상기 사운드 필드를 회전시키기 위해 상기 사운드 필드에 대한 제 1 회전 동작을 수행하고;
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 제 1 방위각 및 상기 제 1 고도각에 따라 회전되는 상기 사운드 필드를 나타내는 복수의 계층적 엘리먼트들의 제 1 수를 결정하고;
    제 2 방위각 및 제 2 고도각에 따라 상기 사운드 필드를 회전시키기 위해 상기 사운드 필드에 대한 제 2 회전 동작을 수행하고;
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 제 2 방위각 및 상기 제 2 고도각에 따라 회전되는 상기 사운드 필드를 나타내는 복수의 계층적 엘리먼트들의 제 2 수를 결정하고;
    상기 복수의 계층적 엘리먼트들의 제 1 수 및 상기 복수의 계층적 엘리먼트들의 제 2 수의 비교에 기초하여 상기 제 1 회전 동작 또는 상기 제 2 회전 동작을 선택하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  26. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한,
    상기 사운드 필드를 변환할 때, 제 1 시간 지속기간 동안 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 제 1 시간 지속기간 동안 상기 사운드 필드를 회전시키고;
    상기 비트스트림에서 상기 제 1 시간 지속기간 동안 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 제 1 회전 정보를 특정하고;
    제 1 회전 정보에 기초하여 제 2 시간 지속기간의 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 제 2 시간 지속기간 동안 상기 사운드 필드를 회전시키고;
    상기 비트스트림에서 상기 제 2 시간 지속기간 동안 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 제 2 회전 정보를 특정하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  27. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 사운드 필드를 변환할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 복수의 계층적 엘리먼트들에 대한 벡터 기반 분해를 수행하도록 구성되고,
    상기 하나 이상의 프로세서들은, 상기 변환 정보를 특정할 때, 상기 비트스트림에서 상기 벡터 기반 분해가 상기 복수의 구면 조화 계수들에 대하여 수행되었음을 기술하는 정보를 특정하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  28. 제 27 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 벡터 기반 분해를 수행할 때, SVD (singular value decomposition), PCA (principal component analysis), 및 KLT (Karhunen-Loeve transform) 중 하나 이상을 수행하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  29. 제 27 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 사운드 필드를 변환할 때, 계층적 엘리먼트들의 수를 감소시키기 위해 구면 조화 도메인으로부터 다른 도메인으로 상기 복수의 계층적 엘리먼트들을 변환하도록 구성되고,
    상기 하나 이상의 프로세서들은, 상기 변환 정보를 특정할 때, 상기 비트스트림에서 상기 복수의 계층적 엘리먼트들이 상기 구면 조화 도메인으로부터 상기 다른 도메인으로 변환되었음을 나타내는 정보를 특정하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  30. 제 19 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 변환된 구면 조화 계수들의 서브세트가 대응하는 구면 기저 함수의 차수 및 하위 차수 중 하나 이상에 기초하여 상기 변환된 구면 조화 계수들의 적어도 하나의 서브세트에 비트레이트를 할당하도록 구성되고,
    상기 변환된 구면 조화 계수들은 사운드 필드를 변환하는 변환 동작에 따라 변환되는, 비트스트림을 생성하도록 구성되는 디바이스.
  31. 제 30 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 비트레이트를 할당할 때, 윈도우 함수에 따라, 상기 변환된 구면 조화 계수들의 각각이 대응하는 상기 구면 기저 함수의 상기 차수 및 상기 하위 차수 중 하나 이상에 기초하여 상기 변환된 구면 조화 계수들의 상이한 서브세트들에 상이한 비트레이트들을 할당하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  32. 제 31 항에 있어서,
    상기 윈도우 함수는 해닝 윈도우 함수, 해밍 윈도우 함수, 직사각형 윈도우 함수, 및 삼각형 윈도우 함수 중 하나 이상을 포함하는, 비트스트림을 생성하도록 구성되는 디바이스.
  33. 제 30 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 제 1 비트레이트를 이용하여 상기 변환된 구면 조화 계수들의 제 1 서브세트를 그리고 제 2 비트레이트를 이용하여 상기 변환된 구면 조화 계수들의 제 2 서브세트를 상기 비트스트림에서 특정하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  34. 제 30 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 비트레이트를 할당할 때, 상기 변환된 구면 조화 계수들이 대응하는 구면 기저 함수들의 하위 차수가 제로로부터 멀어질 때 점진적으로 감소하는 비트레이트들을 동적으로 할당하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  35. 제 30 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 비트레이트를 할당할 때, 상기 변환된 구면 조화 계수들이 대응하는 구면 기저 함수들의 차수가 증가할 때 점진적으로 감소하는 비트레이트들을 동적으로 할당하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  36. 제 30 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 비트레이트를 할당할 때, 상기 변환된 구면 조화 계수들의 서브세트가 대응하는 구면 기저 함수의 차수 및 하위 차수 중 하나 이상에 기초하여 상기 변환된 구면 조화 계수들의 상이한 서브세트들에 상이한 비트레이트들을 동적으로 할당하도록 구성되는, 비트스트림을 생성하도록 구성되는 디바이스.
  37. 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 구성되는 비트스트림을 생성하도록 구성되는 디바이스로서,
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 변환하는 수단; 및
    상기 비트스트림에서 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 특정하는 수단을 포함하는, 비트스트림을 생성하도록 구성되는 디바이스.
  38. 명령들이 저장된 비일시적 컴퓨터 판독가능 저장 매체로서,
    상기 명령들은 실행시 하나 이상의 프로세서들로 하여금:
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드를 변환하게 하고,
    상기 비트스트림에서 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 특정하게 하는, 명령들이 저장된 비일시적 컴퓨터 판독가능 저장 매체.
  39. 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 구성되는 비트스트림을 프로세싱하는 방법으로서,
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계; 및
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 변환을 역수행 (reverse) 하기 위해 상기 변환 정보에 기초하여 상기 사운드 필드를 변환하는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  40. 제 39 항에 있어서,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계는 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 결정하도록 상기 비트스트림을 파싱하는 단계를 포함하고,
    상기 사운드 필드를 변환하는 단계는 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 회전을 역수행하도록 상기 회전 정보에 기초하여 상기 사운드 필드를 회전시키는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  41. 제 39 항에 있어서,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계는 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 병진되었는지를 기술하는 병진 정보를 결정하도록 상기 비트스트림을 파싱하는 단계를 포함하고,
    상기 사운드 필드를 변환하는 단계는 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 병진을 역수행하도록 상기 병진 정보에 기초하여 상기 사운드 필드를 병진시키는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  42. 제 39 항에 있어서,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계는 임계값을 초과하는 비-제로 값들을 갖는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계를 포함하고,
    상기 사운드 필드를 변환하는 단계는 상기 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 변환을 역수행하기 위해 상기 변환 정보에 기초하여 상기 사운드 필드를 변환하는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  43. 제 39 항에 있어서,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계는 임계값을 초과하는 비-제로 값들을 갖는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 결정하도록 상기 비트스트림을 파싱하는 단계를 포함하고,
    상기 사운드 필드를 변환하는 단계는 상기 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 회전을 역수행하도록 상기 회전 정보에 기초하여 상기 사운드 필드를 회전시키는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  44. 제 39 항에 있어서,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계는 오일러 각도들을 포함하는 회전 정보를 결정하도록 상기 비트스트림을 파싱하는 단계를 포함하고, 상기 오일러 각도들은 상기 사운드 필드가 어떻게 회전되었는지를 기술하고,
    상기 사운드 필드를 변환하는 단계는 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 오일러 각도들에 기초하여 상기 사운드 필드를 회전시키는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  45. 제 39 항에 있어서,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 벡터 기반 분해를 이용하여 상기 복수의 계층적 엘리먼트들이 어떻게 분해되었는지를 기술하는 병진 정보를 결정하도록 상기 비트스트림을 파싱하는 단계를 포함하고,
    상기 사운드 필드를 변환하는 단계는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 벡터 기반 분해된 상기 복수의 계층적 엘리먼트들에 기초하여 상기 복수의 계층적 엘리먼트들을 재구성하는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  46. 제 45 항에 있어서,
    상기 벡터 기반 분해는 SVD (singular value decomposition), PCA (principal component analysis), 및 KLT (Karhunen-Loeve transform) 중 하나 이상을 포함하는, 비트스트림을 프로세싱하는 방법.
  47. 제 39 항에 있어서,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 단계는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 복수의 계층적 엘리먼트들이 구면 조화 도메인으로부터 다른 도메인으로 어떻게 변환되었는지를 기술하는 병진 정보를 결정하도록 상기 비트스트림을 파싱하는 단계를 포함하고,
    상기 사운드 필드를 변환하는 단계는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 변환된 상기 복수의 계층적 엘리먼트들에 기초하여 상기 복수의 계층적 엘리먼트들을 재구성하는 단계를 포함하는, 비트스트림을 프로세싱하는 방법.
  48. 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 구성되는 비트스트림을 프로세싱하도록 구성되는 디바이스로서,
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하도록 상기 비트스트림을 파싱하고, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 변환을 역수행하기 위해 상기 변환 정보에 기초하여 상기 사운드 필드를 변환하도록 구성되는 하나 이상의 프로세서들을 포함하는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  49. 제 48 항에 있어서,
    상기 하나 이상의 프로세서들은 또한,
    상기 변환 정보를 결정하도록 상기 비트스트림을 파싱할 때, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성되고;
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 회전을 역수행하도록 상기 회전 정보에 기초하여 상기 사운드 필드를 회전시키도록 구성되는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  50. 제 48 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 변환 정보를 결정하도록 상기 비트스트림을 파싱할 때, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 병진되었는지를 기술하는 병진 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성되고;
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 병진을 역수행하도록 상기 병진 정보에 기초하여 상기 사운드 필드를 병진시키도록 구성되는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  51. 제 48 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 변환 정보를 결정하도록 상기 비트스트림을 파싱할 때, 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성되고,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 임계값을 초과하는 비-제로 값들을 갖는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 변환을 역수행하도록 상기 변환 정보에 기초하여 상기 사운드 필드를 변환하도록 구성되는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  52. 제 48 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 변환 정보를 결정하도록 상기 비트스트림을 파싱할 때, 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 회전되었는지를 기술하는 회전 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성되고,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 임계값을 초과하는 비-제로 값들을 갖는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 회전을 역수행하도록 상기 회전 정보에 기초하여 상기 사운드 필드를 회전시키도록 구성되는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  53. 제 48 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 변환 정보를 결정하도록 상기 비트스트림을 파싱할 때, 오일러 각도들을 포함하는 회전 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성되고, 상기 오일러 각도들은 상기 사운드 필드가 어떻게 회전되었는지를 기술하고,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 임계값을 초과하는 비-제로 값들을 갖는 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 오일러 각도들에 기초하여 상기 사운드 필드를 회전시키도록 구성되는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  54. 제 48 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 변환 정보를 결정하도록 상기 비트스트림을 파싱할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 벡터 기반 분해를 이용하여 상기 복수의 계층적 엘리먼트들이 어떻게 분해되었는지를 기술하는 병진 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성되고,
    상기 하나 이상의 프로세서들은, 상기 사운드 필드를 변환할 때, 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 벡터 기반 분해된 상기 복수의 계층적 엘리먼트들에 기초하여 상기 복수의 계층적 엘리먼트들을 재구성하도록 구성되는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  55. 제 54 항에 있어서,
    상기 벡터 기반 분해는 SVD (singular value decomposition), PCA (principal component analysis), 및 KLT (Karhunen-Loeve transform) 중 하나 이상을 포함하는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  56. 제 54 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 변환 정보를 결정하도록 상기 비트스트림을 파싱할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 복수의 계층적 엘리먼트들이 구면 조화 도메인으로부터 다른 도메인으로 어떻게 변환되었는지를 기술하는 병진 정보를 결정하도록 상기 비트스트림을 파싱하도록 구성되고,
    상기 하나 이상의 프로세서들은 또한, 상기 사운드 필드를 변환할 때, 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 변환된 상기 복수의 계층적 엘리먼트들에 기초하여 상기 복수의 계층적 엘리먼트들을 재구성하도록 구성되는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  57. 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 구성되는 비트스트림을 프로세싱하도록 구성되는 디바이스로서,
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하도록 상기 비트스트림을 파싱하는 수단, 및
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 수행되는 변환을 역수행하도록 상기 변환 정보에 기초하여 상기 사운드 필드를 변환하는 수단을 포함하는, 비트스트림을 프로세싱하도록 구성되는 디바이스.
  58. 명령들이 저장된 비일시적 컴퓨터 판독가능 저장 매체로서,
    상기 명령들은 실행시 하나 이상의 프로세서들로 하여금:
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 결정하도록 상기 비트스트림을 파싱하게 하고;
    상기 사운드 필드를 기술하는 것에 관련한 정보를 제공하는 상기 복수의 계층적 엘리먼트들의 것들에 기초하여 상기 사운드 필드를 재생할 때, 상기 변환 정보에 기초하여 상기 사운드 필드를 변환하게 하는, 비일시적 컴퓨터 판독가능 저장 매체.
  59. 사운드 필드를 기술하는 복수의 계층적 엘리먼트들로 구성되는 비트스트림을 생성하는 방법으로서,
    상기 복수의 계층적 엘리먼트들의 수를 감소시키기 위해 구면 조화 도메인으로부터 다른 도메인으로 사운드 필드를 나타내는 상기 복수의 계층적 엘리먼트들을 변환하는 단계; 및
    상기 비트스트림에서 상기 사운드 필드가 어떻게 변환되었는지를 기술하는 변환 정보를 특정하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  60. 제 59 항에 있어서,
    상기 복수의 계층적 엘리먼트들을 변환하는 단계는 상기 복수의 계층적 엘리먼트들에 대하여 벡터 기반 변환을 수행하는 단계를 포함하는, 비트스트림을 생성하는 방법.
  61. 제 60 항에 있어서,
    상기 벡터 기반 변환을 수행하는 단계는 상기 복수의 계층적 엘리먼트들에 대하여 SVD (singular value decomposition), PCA (principal component analysis), 및 KLT (Karhunen-Loeve transform) 중 하나 이상을 수행하는 단계를 포함하는, 비트스트림을 생성하는 방법.
KR1020157026860A 2013-03-01 2014-02-28 구면 조화 계수들의 변환 KR101854964B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201361771677P 2013-03-01 2013-03-01
US61/771,677 2013-03-01
US201361860201P 2013-07-30 2013-07-30
US61/860,201 2013-07-30
US14/192,829 US9685163B2 (en) 2013-03-01 2014-02-27 Transforming spherical harmonic coefficients
US14/192,829 2014-02-27
PCT/US2014/019468 WO2014134472A2 (en) 2013-03-01 2014-02-28 Transforming spherical harmonic coefficients

Publications (2)

Publication Number Publication Date
KR20150123311A true KR20150123311A (ko) 2015-11-03
KR101854964B1 KR101854964B1 (ko) 2018-05-04

Family

ID=51420957

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020157026859A KR20150123310A (ko) 2013-03-01 2014-02-28 비트스트림들에서의 구면 조화 및/또는 고차 앰비소닉 계수들의 특정
KR1020157026860A KR101854964B1 (ko) 2013-03-01 2014-02-28 구면 조화 계수들의 변환

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020157026859A KR20150123310A (ko) 2013-03-01 2014-02-28 비트스트림들에서의 구면 조화 및/또는 고차 앰비소닉 계수들의 특정

Country Status (10)

Country Link
US (2) US9685163B2 (ko)
EP (2) EP2962298B1 (ko)
JP (2) JP2016510905A (ko)
KR (2) KR20150123310A (ko)
CN (2) CN105027200B (ko)
BR (1) BR112015020892A2 (ko)
ES (1) ES2738490T3 (ko)
HU (1) HUE045446T2 (ko)
TW (2) TWI603631B (ko)
WO (2) WO2014134472A2 (ko)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2665208A1 (en) 2012-05-14 2013-11-20 Thomson Licensing Method and apparatus for compressing and decompressing a Higher Order Ambisonics signal representation
US9685163B2 (en) 2013-03-01 2017-06-20 Qualcomm Incorporated Transforming spherical harmonic coefficients
US9412385B2 (en) * 2013-05-28 2016-08-09 Qualcomm Incorporated Performing spatial masking with respect to spherical harmonic coefficients
US9384741B2 (en) * 2013-05-29 2016-07-05 Qualcomm Incorporated Binauralization of rotated higher order ambisonics
US20140355769A1 (en) 2013-05-29 2014-12-04 Qualcomm Incorporated Energy preservation for decomposed representations of a sound field
US9466305B2 (en) 2013-05-29 2016-10-11 Qualcomm Incorporated Performing positional analysis to code spherical harmonic coefficients
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
EP2879408A1 (en) * 2013-11-28 2015-06-03 Thomson Licensing Method and apparatus for higher order ambisonics encoding and decoding using singular value decomposition
US9502045B2 (en) 2014-01-30 2016-11-22 Qualcomm Incorporated Coding independent frames of ambient higher-order ambisonic coefficients
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
US10770087B2 (en) 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
US9852737B2 (en) 2014-05-16 2017-12-26 Qualcomm Incorporated Coding vectors decomposed from higher-order ambisonics audio signals
US9620137B2 (en) 2014-05-16 2017-04-11 Qualcomm Incorporated Determining between scalar and vector quantization in higher order ambisonic coefficients
US9747910B2 (en) 2014-09-26 2017-08-29 Qualcomm Incorporated Switching between predictive and non-predictive quantization techniques in a higher order ambisonics (HOA) framework
CN107112024B (zh) * 2014-10-24 2020-07-14 杜比国际公司 音频信号的编码和解码
US10452651B1 (en) 2014-12-23 2019-10-22 Palantir Technologies Inc. Searching charts
CN104795064B (zh) * 2015-03-30 2018-04-13 福州大学 低信噪比声场景下声音事件的识别方法
MX2020011754A (es) 2015-10-08 2022-05-19 Dolby Int Ab Codificacion en capas para representaciones de sonido o campo de sonido comprimidas.
FR3050601B1 (fr) * 2016-04-26 2018-06-22 Arkamys Procede et systeme de diffusion d'un signal audio a 360°
MC200186B1 (fr) * 2016-09-30 2017-10-18 Coronal Encoding Procédé de conversion, d'encodage stéréophonique, de décodage et de transcodage d'un signal audio tridimensionnel
WO2019009085A1 (ja) * 2017-07-05 2019-01-10 ソニー株式会社 信号処理装置および方法、並びにプログラム
RU2736418C1 (ru) 2017-07-14 2020-11-17 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Принцип формирования улучшенного описания звукового поля или модифицированного описания звукового поля с использованием многоточечного описания звукового поля
RU2740703C1 (ru) 2017-07-14 2021-01-20 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Принцип формирования улучшенного описания звукового поля или модифицированного описания звукового поля с использованием многослойного описания
RU2736274C1 (ru) 2017-07-14 2020-11-13 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Принцип формирования улучшенного описания звукового поля или модифицированного описания звукового поля с использованием dirac-технологии с расширением глубины или других технологий
US10075802B1 (en) 2017-08-08 2018-09-11 Qualcomm Incorporated Bitrate allocation for higher order ambisonic audio data
US11281726B2 (en) 2017-12-01 2022-03-22 Palantir Technologies Inc. System and methods for faster processor comparisons of visual graph features
US10419138B2 (en) 2017-12-22 2019-09-17 At&T Intellectual Property I, L.P. Radio-based channel sounding using phased array antennas
GB2572650A (en) * 2018-04-06 2019-10-09 Nokia Technologies Oy Spatial audio parameters and associated spatial audio playback
WO2019204214A2 (en) 2018-04-16 2019-10-24 Dolby Laboratories Licensing Corporation Methods, apparatus and systems for encoding and decoding of directional sound sources
SG11202007629UA (en) * 2018-07-02 2020-09-29 Dolby Laboratories Licensing Corp Methods and devices for encoding and/or decoding immersive audio signals
WO2020008112A1 (en) * 2018-07-03 2020-01-09 Nokia Technologies Oy Energy-ratio signalling and synthesis
US20200402521A1 (en) * 2019-06-24 2020-12-24 Qualcomm Incorporated Performing psychoacoustic audio coding based on operating conditions
US11043742B2 (en) 2019-07-31 2021-06-22 At&T Intellectual Property I, L.P. Phased array mobile channel sounding system
KR20220097888A (ko) * 2019-11-04 2022-07-08 퀄컴 인코포레이티드 비트스트림에서 오디오 효과 메타데이터의 시그널링
WO2022096376A2 (en) * 2020-11-03 2022-05-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for audio signal transformation

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9103207D0 (en) 1991-02-15 1991-04-03 Gerzon Michael A Stereophonic sound reproduction system
US5594800A (en) 1991-02-15 1997-01-14 Trifield Productions Limited Sound reproduction system having a matrix converter
AUPO099696A0 (en) 1996-07-12 1996-08-08 Lake Dsp Pty Limited Methods and apparatus for processing spatialised audio
US6021206A (en) 1996-10-02 2000-02-01 Lake Dsp Pty Ltd Methods and apparatus for processing spatialised audio
JPH1118199A (ja) 1997-06-26 1999-01-22 Nippon Columbia Co Ltd 音響処理装置
CA2406926A1 (en) 2000-04-19 2001-11-01 Sonic Solutions Multi-channel surround sound mastering and reproduction techniques that preserve spatial harmonics in three dimensions
FR2847376B1 (fr) * 2002-11-19 2005-02-04 France Telecom Procede de traitement de donnees sonores et dispositif d'acquisition sonore mettant en oeuvre ce procede
US7167176B2 (en) 2003-08-15 2007-01-23 Microsoft Corporation Clustered principal components for precomputed radiance transfer
WO2005109403A1 (en) 2004-04-21 2005-11-17 Dolby Laboratories Licensing Corporation Audio bitstream format in which the bitstream syntax is described by an ordered transveral of a tree hierarchy data structure
US20060247918A1 (en) 2005-04-29 2006-11-02 Microsoft Corporation Systems and methods for 3D audio programming and processing
FR2898725A1 (fr) 2006-03-15 2007-09-21 France Telecom Dispositif et procede de codage gradue d'un signal audio multi-canal selon une analyse en composante principale
US7589725B2 (en) 2006-06-30 2009-09-15 Microsoft Corporation Soft shadows in dynamic scenes
FR2916079A1 (fr) * 2007-05-10 2008-11-14 France Telecom Procede de codage et decodage audio, codeur audio, decodeur audio et programmes d'ordinateur associes
JP5678048B2 (ja) * 2009-06-24 2015-02-25 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ カスケード化されたオーディオオブジェクト処理ステージを用いたオーディオ信号デコーダ、オーディオ信号を復号化する方法、およびコンピュータプログラム
ES2581178T3 (es) * 2009-07-29 2016-09-01 Pharnext Nuevas herramientas de diagnóstico para enfermedad de Alzheimer
EP2539892B1 (fr) * 2010-02-26 2014-04-02 Orange Compression de flux audio multicanal
US9552840B2 (en) * 2010-10-25 2017-01-24 Qualcomm Incorporated Three-dimensional sound capturing and reproducing with multi-microphones
EP2450880A1 (en) 2010-11-05 2012-05-09 Thomson Licensing Data structure for Higher Order Ambisonics audio data
EP2469741A1 (en) * 2010-12-21 2012-06-27 Thomson Licensing Method and apparatus for encoding and decoding successive frames of an ambisonics representation of a 2- or 3-dimensional sound field
CN102333265B (zh) 2011-05-20 2014-02-19 南京大学 一种基于连续声源概念的三维局部空间声场重放方法
EP2541547A1 (en) 2011-06-30 2013-01-02 Thomson Licensing Method and apparatus for changing the relative positions of sound objects contained within a higher-order ambisonics representation
EP2727383B1 (en) * 2011-07-01 2021-04-28 Dolby Laboratories Licensing Corporation System and method for adaptive audio signal generation, coding and rendering
US20140214431A1 (en) * 2011-07-01 2014-07-31 Dolby Laboratories Licensing Corporation Sample rate scalable lossless audio coding
US9460729B2 (en) 2012-09-21 2016-10-04 Dolby Laboratories Licensing Corporation Layered approach to spatial audio coding
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
US9685163B2 (en) 2013-03-01 2017-06-20 Qualcomm Incorporated Transforming spherical harmonic coefficients

Also Published As

Publication number Publication date
US9685163B2 (en) 2017-06-20
US20140249827A1 (en) 2014-09-04
ES2738490T3 (es) 2020-01-23
HUE045446T2 (hu) 2019-12-30
TW201446016A (zh) 2014-12-01
EP2962297A2 (en) 2016-01-06
EP2962298B1 (en) 2019-04-24
TW201503712A (zh) 2015-01-16
WO2014134472A2 (en) 2014-09-04
US20140247946A1 (en) 2014-09-04
CN105027199A (zh) 2015-11-04
US9959875B2 (en) 2018-05-01
CN105027200B (zh) 2019-04-09
EP2962297B1 (en) 2019-06-05
BR112015020892A2 (pt) 2017-07-18
WO2014134462A3 (en) 2014-11-13
WO2014134462A2 (en) 2014-09-04
KR101854964B1 (ko) 2018-05-04
JP2016510905A (ja) 2016-04-11
TWI603631B (zh) 2017-10-21
TWI583210B (zh) 2017-05-11
WO2014134472A3 (en) 2015-03-19
CN105027199B (zh) 2018-05-29
CN105027200A (zh) 2015-11-04
EP2962298A2 (en) 2016-01-06
JP2016513811A (ja) 2016-05-16
KR20150123310A (ko) 2015-11-03

Similar Documents

Publication Publication Date Title
KR101854964B1 (ko) 구면 조화 계수들의 변환
US20220030372A1 (en) Reordering Of Audio Objects In The Ambisonics Domain
KR101723332B1 (ko) 회전된 고차 앰비소닉스의 바이노럴화
AU2015330758B2 (en) Signaling layers for scalable coding of higher order ambisonic audio data
AU2015330759B2 (en) Signaling channels for scalable coding of higher order ambisonic audio data
US20150127354A1 (en) Near field compensation for decomposed representations of a sound field
WO2016004277A1 (en) Reducing correlation between higher order ambisonic (hoa) background channels

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right