KR20180061218A - 객체-기반의 오디오로부터 hoa로의 컨버전 - Google Patents

객체-기반의 오디오로부터 hoa로의 컨버전 Download PDF

Info

Publication number
KR20180061218A
KR20180061218A KR1020187009766A KR20187009766A KR20180061218A KR 20180061218 A KR20180061218 A KR 20180061218A KR 1020187009766 A KR1020187009766 A KR 1020187009766A KR 20187009766 A KR20187009766 A KR 20187009766A KR 20180061218 A KR20180061218 A KR 20180061218A
Authority
KR
South Korea
Prior art keywords
audio
loudspeaker
vector
location
individual
Prior art date
Application number
KR1020187009766A
Other languages
English (en)
Other versions
KR102032072B1 (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 KR20180061218A publication Critical patent/KR20180061218A/ko
Application granted granted Critical
Publication of KR102032072B1 publication Critical patent/KR102032072B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/308Electronic adaptation dependent on speaker or headphone connection
    • 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/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 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/02Systems employing more than two channels, e.g. quadraphonic of the matrix type, i.e. in which input signals are combined algebraically, e.g. after having been phase shifted with respect to each other
    • 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/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/173Transcoding, i.e. converting between two coded representations avoiding cascaded coding-decoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/01Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved
    • 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)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Stereophonic System (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

디바이스는 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득한다. 오디오 신호는 시간 인터벌에 대응한다. 추가하여, 디바이스는 오디오 객체에 대한 공간 벡터의 표현을 획득하고, 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초한다. 디바이스는, 오디오 객체의 오디오 신호 및 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성한다. 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응한다.

Description

객체-기반의 오디오로부터 HOA로의 컨버전
본 출원은 2015 년 10 월 8 일에 출원된 미국 가특허출원 제 62/239,043 호의 이익을 주장하며, 이것의 전체 내용은 참조로서 본원에 포함된다.
기술 분야
본 개시물은 오디오 데이터 및, 보다 구체적으로는 고차 앰비소닉 오디오 데이터의 코딩에 관한 것이다.
고차 앰비소닉스 (higher-order ambisonics; HOA) 신호 (종종, 복수의 구면 조화 계수들 (SHC) 또는 다른 계층 엘리먼트들로 표현됨) 는 사운드필드의 3 차원 표현이다. HOA 또는 SHC 표현은, SHC 신호로부터 렌더링되는 멀티-채널 오디오 신호를 재생하는데 사용된 로컬 스피커 지오메트리와 독립적인 방식으로 사운드필드를 표현할 수도 있다. SHC 신호는 또한, SHC 신호가 널리 공지되고 많이 채택된 멀티-채널 포맷들, 예컨대 5.1 오디오 채널 포맷 또는 7.1 오디오 채널 포맷으로 렌더링될 수도 있기 때문에, 이전 버전과의 호환성 (backwards compatibility) 을 용이하게 할 수도 있다. SHC 표현은 따라서, 이전 버전과의 호환성을 또한 수용하는 더 좋은 사운드필드의 표현을 가능하게 할 수도 있다.
하나의 예에서, 본 개시물은 코딩된 오디오 비트스트림을 디코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 코딩된 오디오 비트스트림을 저장하도록 구성된 메모리; 및 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고, 하나 이상의 프로세서들은: 코딩된 오디오 비트스트림으로부터 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 것으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하고; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 것으로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하고; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 것으로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하도록 구성된다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 인코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 저장하도록 구성된 메모리로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 메모리; 및 상기 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고, 상기 하나 이상의 프로세서들은: 상기 오디오 객체의 상기 오디오 신호 및 상기 오디오 객체의 상기 가상의 소스 로케이션을 나타내는 데이터를 수신하고; 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하고; 그리고 코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하도록 구성된다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 디코딩하기 위한 방법을 기재하며, 그 방법은, 상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 단계로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하는 단계; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 단계로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하는 단계; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 단계로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하는 단계를 포함한다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 인코딩하기 위한 방법을 기재하며, 그 방법은, 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하는 단계로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하는 단계; 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하는 단계; 및 상기 코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하는 단계를 포함한다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 디코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 수단으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하는 수단; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 수단으로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하는 수단; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 수단으로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하는 수단을 포함한다.
또 다른 예에서, 본 개시물은 코딩된 오디오 비트스트림을 인코딩하기 위한 디바이스를 기재하며, 그 디바이스는, 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하는 수단으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하는 수단; 및 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하는 수단을 포함한다.
또 다른 예에서, 본 개시물은 명령들을 저장하는 컴퓨터 판독가능 저장 매체를 기재하며, 명령들은 실행될 때 디바이스의 하나 이상의 프로세서들로 하여금: 상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하게 하는 것으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하게 하고; 상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하게 하는 것으로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하게 하고; 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하게 하는 것으로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하게 하는 한다.
또 다른 예에서, 명령들을 저장하는 컴퓨터 판독가능 저장 매체를 기재하며, 명령들은 실행될 때 디바이스의 하나 이상의 프로세서들로 하여금: 오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하게 하는 것으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하게 하고; 상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하게 하며; 그리고 상기 코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하게 한다.
본 개시물의 하나 이상의 예들의 세부사항들은 첨부되는 도면들 및 하기의 설명들에서 기술된다. 다른 특성들, 목적들 및 이점들은 상세한 설명, 도면, 및 청구범위로부터 명확해질 것이다.
도 1 은 본 개시물에 설명된 기법들의 다양한 양태들을 수행할 수도 있는 시스템을 예시하는 다이어그램이다.
도 2 는 다양한 차수들 및 서브-차수들의 구면 조화 기본 함수들을 예시하는 다이어그램이다.
도 3 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 4 는 본 개시물의 하나 이상의 기법들에 따른, 도 3 에 도시된 오디오 인코딩 디바이스의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 5 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 6 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛의 예시의 구현을 예시하는 다이어그램이다.
도 7 은 이상적인 구면 설계 포지션들의 예시의 세트를 나타내는 테이블이다.
도 8 은 이상적인 구면 설계 포지션들의 다른 예시의 세트를 나타내는 테이블이다.
도 9 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛의 예시의 구현을 예시하는 블록도이다.
도 10 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 11 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛의 예시의 구현을 예시하는 블록도이다.
도 12 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛의 대안의 구현을 예시하는 블록도이다.
도 13 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스가 객체-기반 오디오 데이터를 인코딩하도록 구성되는 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 14 는 본 개시물의 하나 이상의 기법들에 따른, 객체-기반 오디오 데이터에 대한 벡터 인코딩 유닛 (68C) 의 예시의 구현을 예시하는 블록도이다.
도 15 는 VBAP 를 예시하는 개념도이다.
도 16 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스가 객체-기반 오디오 데이터를 디코딩하도록 구성되는 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 17 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스가 공간 벡터들을 양자화하도록 구성되는 오디오 인코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 18 은 본 개시물의 하나 이상의 기법들에 따른, 도 17 에 도시된 오디오 인코딩 디바이스의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스의 예시의 구현을 예시하는 블록도이다.
도 19 는 본 개시물의 하나 이상의 기법들에 따른, 렌더링 유닛 (210) 의 예시의 구현을 예시하는 블록도이다.
도 20 은 본 개시물의 하나 이상의 기법들에 따른, 자동차 스피커 재생 환경을 예시한다.
도 21 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작을 예시하는 흐름도이다.
도 22 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 23 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 24 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 25 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 26 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 27 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다.
도 28 은 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다.
도 29 는 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다.
오늘날 서라운드 사운드의 발전은 엔터테인먼트에 대한 많은 출력 포맷들을 이용가능 하게 만들었다. 이러한 소비자 서라운드 사운드 포맷들의 예들은 주로, 그들이 소정의 기하학적 좌표들에서 라우드스피커들로의 피드들을 암시적으로 지정한다는 점에서 '채널' 기반이다. 소비자 서라운드 사운드 포맷들은 대중적인 5.1 포맷 (이것은 다음의 6 개의 채널들을 포함한다: 전방 좌측 (FL), 전방 우측 (FR), 센터 또는 전방 중앙, 후면 좌측 또는 서라운드 좌측, 후면 우측 또는 서라운드 우측, 및 저 주파수 효과들 (LFE)), 성장하는 7.1 포맷, (예를 들어, 초고화질 텔레비전 표준과 함께 사용하기 위한) 7.1.4 포맷 및 22.2 포맷과 같은 높이 스피커들을 포함하는 다양한 포맷들을 포함한다. 비-소비자 포맷들은 종종 '서라운드 어레이들' 로 칭해지는 (대칭 및 비-대칭적 지오메트리들의) 임의의 개수의 스피커들을 포괄할 수 있다. 이러한 어레이의 일 예는 트렁케이트된 (truncated) 정십이면체의 코너들 상의 좌표들에 포지셔닝된 32 개의 라우드스피커들을 포함한다.
오디오 인코더들은 다음 3 개의 가능한 포맷들 중 하나에서 입력을 수신할 수도 있다: (i) 미리-지정된 포지션들에서 라우드스피커들을 통해 플레이되어야 하는 것을 의미하는 (위에서 논의된 바와 같은) 전통적인 채널-기반의 오디오; (ii) (다른 정보 중에서) 그들의 로케이션 좌표들을 포함하는 연관된 메타데이터를 갖는 단일 오디오 객체들에 대한 이산 펄스-코드-변조 (PCM) 데이터를 수반하는 객체-기반의 오디오; 및 (iii) 구면 조화 기저 함수들의 계수들 (또한, "구면 조화 계수들", 또는 SHC, "고차 앰비소닉스" 또는 HOA, 및 "HOA 계수들" 로 지칭됨) 을 사용하여 사운드필드를 표현하는 것을 수반하는 장면-기반의 오디오. 일부 예들에서, 오디오 객체에 대한 로케이션 좌표들은 방위각 및 고도각을 지정할 수 있다. 일부 예들에서, 오디오 객체에 대한 로케이션 좌표들은 방위각, 고도각, 및 반경을 지정할 수 있다.
일부 예들에서, 인코더는 수신된 오디오 데이터를 그것이 수신되었던 포맷으로 인코딩할 수도 있다. 예를 들어, 전통적인 7.1 채널-기반 오디오를 수신하는 인코더는, 디코더에 의해 재생될 수도 있는, 비트스트림으로 채널-기반 오디오를 인코딩할 수도 있다. 그러나, 일부 예들에서 5.1 재생 능력들을 갖는 (하지만, 7.1 재생 능력들을 갖지 않는) 디코더들에서 플레이백을 인에이블하기 위해, 인코더는 또한, 비트스트림에서 7.1 채널-기반 오디오의 5.1 버전을 포함할 수도 있다. 일부 예들에서, 인코더가 비트스트림에서 오디오의 다중 버전들을 포함하는 것이 바람직하지 않을 수도 있다. 일 예로서, 비트스트림에서 오디오의 다중 버전을 포함하는 것은 비트스트림의 사이즈를 증가시키고, 따라서 비트스트림을 저장하는데 필요한 저장량 및/또는 송신하는데 필요한 대역폭의 양을 증가시킬 수도 있다. 다른 예로서, 콘텐트 생성자들 (예를 들어, 헐리우드 스튜디오들) 은 무비용 사운드트랙을 한 번 생산하기를 원하고, 각각의 스피커 구성에 대해 그것을 리믹스하기 위한 노력을 소모하지 않을 것이다. 이와 같이, 표준화된 비트스트림으로의 인코딩을 위해 제공하고, (렌더러를 수반하는) 재생의 로케이션에서 음향 컨디션들 및 스피커 지오메트리 (및 수) 에 적응되고 구속받지 않는 후속의 디코딩을 제공하는 것이 바람직할 수도 있다.
일부 예들에서, 임의의 스피커 구성을 갖는 오디오를 재생시키도록 오디오 디코더를 인에이블하기 위해, 오디오 인코더는 입력 오디오를 인코딩을 위한 단일 포맷으로 컨버팅할 수도 있다. 예를 들어, 오디오 인코더는 멀티-채널 오디오 데이터 및/또는 오디오 객체들을 엘리먼트들의 계층적 세트로 컨버팅하고, 결과의 엘리먼트들의 세트를 비트스트림으로 인코딩할 수도 있다. 엘리먼트들의 계층적 세트는, 하위-차수의 엘리먼트들의 기본 세트가 모델링된 사운드필드의 전체 표현을 제공하도록 엘리먼트들이 오더링되어 있는 엘리먼트들의 세트를 지칭할 수도 있다. 이 세트는 고차 엘리먼트들을 포함하도록 확장되기 때문에, 표현은 더 상세해지고, 해상도를 증가시킨다.
엘리먼트들의 계층적 세트의 일 예는, 고차 앰비소닉스 (HOA) 계수들로도 지칭될 수도 있는, 구면 조화 계수들 (SHC) 의 세트이다. 이하의 식 (1) 은 SHC 를 사용하는 사운드필드의 설명 또는 표현을 예시한다.
Figure pct00001
(1)
식 (1) 은 시간 t 에서 사운드필드의 임의의 포인트
Figure pct00002
에서의 압력
Figure pct00003
이, SHC,
Figure pct00004
에 의해 고유하게 표현될 수 있다는 것을 보여준다. 여기서, k=ω/c, c 는 사운드의 속도 (~343 m/s) 이고,
Figure pct00005
는 레퍼런스 포인트 (또는, 관측 포인트) 이고,
Figure pct00006
는 차수 n 의 구면 베셀 (Bessel) 함수이며,
Figure pct00007
는 차수 n 및 하위차수 m 의 구면 조화 기저 함수들이다. 꺽쇠 괄호들 내의 항은 이산 푸리에 변환 (DFT), 이산 코사인 변환 (DCT), 또는 웨이블릿 변환과 같은, 다양한 시간-주파수 변환들에 의해 근사화될 수 있는 신호의 주파수-도메인 표현 (즉,
Figure pct00008
) 인 것을 인식할 수 있다. 계층적 세트들의 다른 예들은 웨이블릿 변환 계수들의 세트들 및 멀티레졸루션 기저 함수들의 계수들의 다른 세트들을 포함한다. 간략함을 위해, 본 개시물은 이하에서 HOA 계수들을 참조하여 설명된다. 그러나, 이 기법들은 다른 계층적 세트들에 동등하게 적용 가능할 수도 있다는 것이 인지되어야 한다.
그러나, 일부 예들에서, 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하는 것이 바람직하지 않을 수도 있다. 예를 들어, 오디오 인코더가 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하였으면, 결과의 비트스트림은 HOA 계수들을 프로세싱할 수 없는 오디오 디코더들 (예를 들어, 멀티-채널 오디오 데이터 및 오디오 객체들 중 하나 또는 양자 모두를 단지 프로세싱할 수 있는 오디오 디코더들) 과 이전 버전으로 호환 가능하지 않을 수도 있다. 이와 같이, 결과의 비트스트림이 임의의 스피커 구성을 갖고 오디오 데이터를 재생시키도록 오디오 디코더를 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들과의 이전 버전과의 호환성을 인에이블하도록 오디오 인코더가 수신된 오디오 데이터를 인코딩하는 것이 바람직할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 수신된 오디오 데이터를 HOA 계수들로 컨버팅하고 결과의 HOA 계수들을 비트스트림에서 인코딩하는 것과 대조적으로, 오디오 인코더는, 비트스트림에서, 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보와 함께 그 원래의 포맷으로 수신된 오디오 데이터를 인코딩할 수도 있다. 예를 들어, 오디오 인코더는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 결정하고, 하나 이상의 SPV들의 표현 및 수신된 오디오 데이터의 표현을 비트스트림에서 인코딩할 수도 있다. 일부 예들에서, 하나 이상의 SPV들 중 특정 SPV 의 표현은 코드북에서 특정 SPV 에 대응하는 인덱스일 수도 있다. 공간 포지셔닝 벡터들은 소스 라우드스피커 구성 (즉, 수신된 오디오 데이터가 재생을 위해 의도되는 라우드스피커 구성) 에 기초하여 결정될 수도 있다. 이 방식에서, 오디오 인코더는 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키도록 오디오 디코더를 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 오디오 디코더들과의 이전 버전과의 호환성을 인에이블하는 비트스트림을 출력할 수도 있다.
오디오 디코더는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보와 함께 오디오 데이터를 그 원래의 포맷으로 포함하는 비트스트림을 수신할 수도 있다. 예를 들어, 오디오 디코더는 5.1 포맷으로 멀티-채널 오디오 데이터 및 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 수신할 수도 있다. 하나 이상의 공간 포지셔닝 벡터들을 사용하여, 오디오 디코더는 5.1 포맷의 오디오 데이터로부터 HOA 사운드필드를 생성할 수도 있다. 예를 들어, 오디오 디코더는 멀티-채널 오디오 신호 및 공간 포지셔닝 벡터들에 기초하여 HOA 계수들의 세트를 생성할 수도 있다. 오디오 디코더는, 로컬 라우드스피커 구성에 기초하여 HOA 사운드필드를 렌더링하거나, 또는 다른 디바이스가 렌더링하게 할 수도 있다. 이 방식에서, HOA 계수들을 프로세싱할 수 있는 오디오 디코더는 임의의 스피커 구성으로 멀티채널 오디오 데이터를 재생시키면서 또는 HOA 계수들을 프로세싱할 수 없는 오디오 디코더들과의 이전 버전과의 호환성을 인에이블할 수도 있다.
위에서 논의된 바와 같이, 오디오 인코더는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 결정 및 인코딩할 수도 있다. 그러나, 일부 예들에서, 비트스트림이 하나 이상의 공간 포지셔닝 벡터들의 표시를 포함하지 않는 경우 오디오 디코더가 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키는 것이 바람직할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코더는 인코딩된 오디오 데이터 및 소스 라우드스피커 구성의 표시 (즉, 인코딩된 오디오 데이터가 재생을 위해 의도되는 라우드스피커 구성의 표시) 를 수신하고, 소스 라우드스피커 구성의 표시에 기초하여 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 공간 포지셔닝 벡터 (SPV) 들을 생성할 수도 있다. 일부 예들에서, 예컨대 인코딩된 오디오 데이터가 5.1 포맷의 멀티-채널 오디오 데이터인 경우에서, 소스 라우드스피커 구성의 표시는, 인코딩된 오디오 데이터가 5.1 포맷의 멀티-채널 오디오 데이터라는 것을 나타낼 수도 있다.
공간 포지셔닝 벡터들을 사용하여, 오디오 디코더는 오디오 데이터로부터 HOA 사운드필드를 생성할 수도 있다. 예를 들어, 오디오 디코더는 멀티-채널 오디오 신호 및 공간 포지셔닝 벡터들에 기초하여 HOA 계수들의 세트를 생성할 수도 있다. 오디오 디코더는 로컬 라우드스피커 구성에 기초하여 HOA 사운드필드를 렌더링하거나, 또는 다른 디바이스가 렌더링하게 할 수도 있다. 이 방식에서, 오디오 디코더는 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키도록 오디오 디코더를 인에이블하면서, 또한 공간 포지셔닝 벡터들을 생성 및 인코딩하지 않을 수도 있는 오디오 인코더들과의 이전 버전과의 호환성을 인에이블하는 비트스트림을 출력할 수도 있다.
위에서 논의된 바와 같이, 오디오 코더 (즉, 오디오 인코더 또는 오디오 디코더) 는 인코딩된 오디오 데이터의 HOA 사운드필드로의 컨버전을 인에이블하는 공간 포지셔닝 벡터들을 획득 (즉, 생성, 결정, 취출, 수신, 등) 할 수도 있다. 일부 예들에서, 공간 포지셔닝 벡터들은 오디오 데이터의 대략 "완벽한" 복원을 인에이블하는 목표를 갖고 획득될 수도 있다. 공간 포지셔닝 벡터들은, 공간 포지셔닝 벡터들이, 입력된 N-채널 오디오 데이터를, 오디오 데이터의 N-채널들로 다시 컨버팅되는 경우, 입력된 N-채널 오디오 데이터와 대략 동등한 HOA 사운드필드로 컨버팅하는데 사용되는 오디오 데이터의 대략 "완벽한" 복원을 인에이블하는 것으로 고려될 수도 있다.
대략 "완벽한" 복원을 인에이블하는 공간 포지셔닝 벡터들을 획득하기 위해, 오디오 코더는 각각의 벡터에 대해 사용할 계수들의 수 N HOA 를 결정할 수도 있다. HOA 사운드필드가 식들 (2) 및 (3) 에 따라 표현되고, 렌더링 매트릭스 D 로 HOA 사운드필드를 렌더링하는 것에서 비롯되는 N-채널 오디오가 식들 (4) 및 (5) 에 따라 표현되면, 대략 "완벽한" 복원은, 계수들의 수가 입력된 N-채널 오디오 데이터에서의 채널들의 수보다 크거나 또는 동일하도록 선택되는 경우 가능할 수도 있다.
Figure pct00009
Figure pct00010
다시 말하면, 대략 "완벽한" 복원은 식 (6) 이 충족되는 경우 가능할 수도 있다.
Figure pct00011
다시 말하면, 대략 "완벽한" 복원은, 입력 채널들의 수 (N) 가 각각의 공간 포지셔닝 벡터에 대해 사용된 계수들의 수 (N HOA ) 보다 작거나 이와 동일한 경우 가능할 수도 있다.
오디오 코더는 계수들의 선택된 수를 갖는 공간 포지셔닝 벡터들을 획득할 수도 있다. HOA 사운드필드 (H) 는 식 (7) 에 따라 표현될 수도 있다.
Figure pct00012
식 (7) 에서, 채널 i 에 대한 H i 는 식 (8) 에 도시된 바와 같이 채널 i 에 대한 공간 포지셔닝 벡터 (V i ) 의 트랜스포즈 및 채널 (i) 에 대한 오디오 채널 (C i ) 의 곱일 수도 있다.
Figure pct00013
H i 는 식 (9) 에 도시된 바와 같이 채널-기반 오디오 신호 (
Figure pct00014
) 를 생성하도록 렌더링될 수도 있다.
Figure pct00015
식 (9) 는, 식 (10) 또는 식 (11) 이 참인 경우 참을 유지할 수도 있고, 식 (11) 에 대한 제 2 솔루션은 단수형인 것으로 인해 제거된다.
Figure pct00016
또는
Figure pct00017
식 (10) 또는 식 (11) 이 참이면, 채널-기반 오디오 신호 (
Figure pct00018
) 는 식들 (12)-(14) 에 따라 표현될 수도 있다.
Figure pct00019
Figure pct00020
이와 같이, 대략 "완벽한" 복원을 인에이블하기 위해, 오디오 코더는 식들 (15) 및 (16) 을 충족시키는 공간 포지셔닝 벡터들을 획득할 수도 있다.
Figure pct00021
완결을 위해, 다음은 상기 식들을 충족시키는 공간 포지셔닝 벡터들이 대략 "완벽한" 복원을 인에이블한다는 증거이다. 식 (17) 에 따라 표현된 소정의 N-채널 오디오에 대해, 오디오 코더는 식들 (18) 및 (19) 에 따라 표현될 수도 있는 공간 포지셔닝 벡터들을 획득할 수도 있고, 여기서 D 는 N-채널 오디오 데이터의 소스 라우드스피커 구성에 기초하여 결정된 소스 렌더링 매트릭스이고,
Figure pct00022
은 N 개의 엘리먼트들을 포함하고, i 번째 엘리먼트는 다른 엘리먼트들이 0 인 엘리먼트이다.
Figure pct00023
오디오 코더는 식 (20) 에 따라 공간 포지셔닝 벡터들 및 N-채널 오디오 데이터에 기초하여 HOA 사운드필드 (H) 를 생성할 수도 있다.
Figure pct00024
오디오 코더는 식 (21) 에 따라 HOA 사운드필드 (H) 를 N-채널 오디오 데이터 (
Figure pct00025
) 로 다시 컨버팅할 수도 있고, 여기서 D 는 N-채널 오디오 데이터의 소스 라우드스피커 구성에 기초하여 결정된 소스 렌더링 매트릭스이다.
Figure pct00026
위에서 논의된 바와 같이, "완벽한" 복원은,
Figure pct00027
이 대략
Figure pct00028
와 동등한 경우 달성된다. 식들 (22)-(26) 에서 이하에 도시된 바와 같이,
Figure pct00029
Figure pct00030
와 대략 동등하고, 따라서 대략 "완벽한" 복원이 가능할 수도 있다:
Figure pct00031
Figure pct00032
렌더링 매트릭스와 같은 매트릭스들은 다양한 방식들로 프로세싱될 수도 있다. 예를 들어, 매트릭스는 로우들, 컬럼들, 벡터들, 또는 다른 방식들로 프로세싱 (예를 들어, 저장, 추가, 곱셈, 취출 등) 될 수도 있다.
도 1 은 본 개시물에 설명된 기법들의 다양한 양태들을 수행할 수도 있는 시스템 (2) 을 예시하는 다이어그램이다. 도 1 에 도시된 바와 같이, 시스템 (2) 은 콘텐트 생성자 시스템 (4) 및 콘텐트 소비자 시스템 (6) 을 포함한다. 콘텐트 생성자 시스템 (4) 및 콘텐트 소비자 시스템 (6) 의 맥락에서 설명되었지만, 본 기법들은, 오디오 데이터가 인코딩되어 오디오 데이터를 나타내는 비트스트림을 형성하는 임의의 맥락에서 구현될 수도 있다. 더욱이, 콘텐트 생성자 디바이스 (4) 는, 약간의 예들을 제공하기 위해 핸드셋 (또는 셀룰러 폰), 태블릿 컴퓨터, 스마트 폰, 또는 데스크톱 컴퓨터를 포함하는, 본 개시물에 설명된 기법들을 구현할 수 있는 컴퓨팅 디바이스, 또는 컴퓨팅 디바이스들의 임의의 형태를 포함할 수도 있다. 유사하게, 콘텐트 소비자 시스템 (6) 은, 약간의 예들을 제공하기 위해 핸드셋 (또는 셀룰러 폰), 태블릿 컴퓨터, 스마트 폰, 셋-톱 박스, AV-수신기, 무선 스피커, 또는 데스크톱 컴퓨터를 포함하는, 본 개시물에 설명된 기법들을 구현할 수 있는 컴퓨팅 디바이스, 또는 컴퓨팅 디바이스들의 임의의 형태를 포함할 수도 있다.
콘텐트 생성자 시스템 (4) 은 다양한 콘텐트 생성자들, 예컨대 무비 스튜디오들, 텔레비전 스튜디오들, 인터넷 스트리밍 서비스들, 또는 콘텐트 소비자 시스템들, 예컨대 콘텐트 소비자 시스템 (6) 의 오퍼레이터들에 의한 소비를 위해 오디오 콘텐트를 생성할 수도 있는 다른 엔티티에 의해 동작될 수도 있다. 종종, 콘텐트 생성자는 비디오 콘텐트와 연관되어 오디오 콘텐트를 생성한다. 콘텐트 소비자 시스템 (6) 은 개인에 의해 동작될 수도 있다. 일반적으로, 콘텐트 소비자 시스템 (6) 은 멀티-채널 오디오 콘텐트를 출력할 수 있는 오디오 재생 시스템의 임의의 형태를 지칭할 수도 있다.
콘텐트 생성자 시스템 (4) 은, 수신된 오디오 데이터를 비트스트림으로 인코딩할 수도 있는, 오디오 인코딩 디바이스 (14) 를 포함한다. 오디오 인코딩 디바이스 (14) 는 다양한 소스들로부터 오디오 데이터를 수신할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 는 라이브 오디오 데이터 (10) 및/또는 미리-생성된 오디오 데이터 (12) 를 획득할 수도 있다. 오디오 인코딩 디바이스 (14) 는 라이브 오디오 데이터 (10) 및/또는 미리-생성된 오디오 데이터 (12) 를 다양한 포맷들로 수신할 수도 있다. 일 예로서, 오디오 인코딩 디바이스 (14) 는 라이브 오디오 데이터 (10) 를 하나 이상의 마이크로폰들 (8) 로부터 HOA 계수들, 오디오 객체들, 또는 멀티-채널 오디오 데이터로서 수신할 수도 있다. 다른 예로서, 오디오 인코딩 디바이스 (14) 는 미리-생성된 오디오 데이터 (12) 를 HOA 계수들, 오디오 객체들, 또는 멀티-채널 오디오 데이터로서 수신할 수도 있다.
위에서 언급된 바와 같이, 오디오 인코딩 디바이스 (14) 는 일 예로서 유선 또는 무선 채널일 수도 있는 송신 채널, 데이터 저장 디바이스 등을 거쳐, 송신을 위해, 수신된 오디오 데이터를 비트스트림, 예컨대 비트스트림 (20) 으로 인코딩할 수도 있다. 일부 예들에서, 콘텐트 생성자 시스템 (4) 은 인코딩된 비트스트림 (20) 을 콘텐트 소비자 시스템 (6) 으로 직접 송신한다. 다른 예들에서, 인코딩된 비트스트림은 또한, 디코딩 및/또는 재생을 위해 콘텐트 소비자 시스템 (6) 에 의한 나중의 액세스를 위해 저장 매체 또는 파일 서버 위에 저장될 수도 있다.
위에서 논의된 바와 같이, 일부 예들에서 수신된 오디오 데이터는 HOA 계수들을 포함할 수도 있다. 그러나, 일부 예들에서, 수신된 오디오 데이터는 멀티-채널 오디오 데이터 및/또는 객체 기반 오디오 데이터와 같은, HOA 계수들 외의 포맷들로 오디오 데이터를 포함할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 수신된 오디오 데이터를 인코딩을 위한 단일 포맷으로 컨버팅할 수도 있다. 예를 들어, 위에서 논의된 바와 같이, 오디오 인코딩 디바이스 (14) 는 멀티-채널 오디오 데이터 및/또는 오디오 객체들을 HOA 계수들로 컨버팅하고, 비트스트림 (20) 에서 결과의 HOA 계수들을 인코딩할 수도 있다. 이 방식에서, 오디오 인코딩 디바이스 (14) 는 임의의 스피커 구성으로 오디오 데이터를 재생시키도록 콘텐트 소비자 시스템을 인에이블할 수도 있다.
그러나, 일부 예들에서, 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하는 것이 바람직하지 않을 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 가 모든 수신된 오디오 데이터를 HOA 계수들로 컨버팅하였으면, 결과의 비트스트림은 HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들 (예를 들어, 멀티-채널 오디오 데이터 및 오디오 객체들 중 하나 또는 양자 모두를 단지 프로세싱할 수 있는 콘텐트 소비자 시스템들) 과 이전 버전으로 호환 가능하지 않을 수도 있다. 이와 같이, 결과의 비트스트림이 임의의 스피커 구성으로 오디오 데이터를 재생시키도록 콘텐트 소비자 시스템을 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들과의 이전 버전과의 호환성을 인에이블하도록, 오디오 인코딩 디바이스 (14) 가 수신된 오디오 데이터를 인코딩하는 것이 바람직할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 수신된 오디오 데이터를 HOA 계수들로 컨버팅하고 결과의 HOA 계수들을 비트스트림에서 인코딩하는 것과 대조적으로, 오디오 인코딩 디바이스 (14) 는 비트스트림 (20) 에서 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보와 함께 수신된 오디오 데이터를 그 원래의 포맷으로 인코딩할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 는 인코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 하나 이상의 공간 포지셔닝 벡터 (SPV) 들을 결정하고, 하나 이상의 SPV들의 표현 및 수신된 오디오 데이터의 표현을 비트스트림 (20) 에서 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 상기의 식들 (15) 및 (16) 을 충족시키는 하나 이상의 공간 포지셔닝 벡터들을 결정할 수도 있다. 이 방식에서, 오디오 인코딩 디바이스 (14) 는 임의의 스피커 구성으로 수신된 오디오 데이터를 재생시키도록 콘텐트 소비자 시스템을 인에이블하면서 또한, HOA 계수들을 프로세싱할 수 없는 콘텐트 소비자 시스템들과의 이전 버전과의 호환성을 인에이블하는 비트스트림을 출력할 수도 있다.
콘텐트 소비자 시스템 (6) 은 비트스트림 (20) 에 기초하여 라우드스피커 피드들 (26) 을 생성할 수도 있다. 도 1 에 도시된 바와 같이, 콘텐트 소비자 시스템 (6) 은 오디오 디코딩 디바이스 (22) 및 라우드스피커들 (24) 을 포함할 수도 있다. 라우드스피커들 (24) 은 또한 로컬 라우드스피커들로 지칭될 수도 있다. 오디오 디코딩 디바이스 (22) 는 비트스트림 (20) 을 디코딩할 수도 있다. 일 예로서, 오디오 디코딩 디바이스 (22) 는 비트스트림 (20) 을 디코딩하여, 디코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보 및 오디오 데이터를 복원할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22) 는 비트스트림 (20) 을 디코딩하여 오디오 데이터를 복원할 수도 있고, 디코딩된 오디오 데이터의 HOA 계수들로의 컨버전을 인에이블하는 정보를 로컬하게 결정할 수도 있다. 예를 들어, 오디오 디코딩 디바이스 (22) 는 상기의 식들 (15) 및 (16) 을 충족시키는 하나 이상의 공간 포지셔닝 벡터들을 결정할 수도 있다.
임의의 경우에서, 오디오 디코딩 디바이스 (22) 는 정보를 사용하여 디코딩된 오디오 데이터를 HOA 계수들로 컨버팅할 수도 있다. 예를 들어, 오디오 디코딩 디바이스 (22) 는 SPV들을 사용하여 디코딩된 오디오 데이터를 HOA 계수들로 컨버팅하고, HOA 계수들을 렌더링할 수도 있다. 일부 예들에서, 오디오 디코딩 디바이스는, 라우드스피커들 (24) 중 하나 이상을 도출할 수도 있는 라우드스피커 피드들 (26) 을 출력하도록 결과의 HOA 계수들을 렌더링할 수도 있다. 일부 예들에서, 오디오 디코딩 디바이스는, 라우드스피커들 (24) 중 하나 이상을 도출할 수도 있는 라우드스피커 피드들 (26) 을 출력하도록 HOA 계수들을 렌더링할 수도 있는 외부 렌더 (미도시) 로 결과의 HOA 계수들을 출력할 수도 있다. 다른 말로, HOA 사운드필드는 라우드스피커들 (24) 에 의해 재생된다. 다양한 예들에서, 라우드스피커들 (24) 은 차량, 홈, 극장, 콘서트 장소, 또는 기타 로케이션들일 수 있다.
오디오 인코딩 디바이스 (14) 및 오디오 디코딩 디바이스 (22) 각각은 다양한 적합한 회로부 중 임의의 것, 예컨대 마이크로프로세서들을 포함하는 하나 이상의 집적 회로들, 디지털 신호 프로세서 (DSP) 들, 주문형 집적 회로들 (ASIC) 들, 필드 프로그램가능 게이트 어레이 (FPGA) 들, 이산 로직, 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 임의의 조합들로서 구현될 수도 있다. 이 기법들이 부분적으로 소프트웨어에서 구현되는 경우, 디바이스는 그 소프트웨어에 대한 명령들을 적합한, 비일시적 컴퓨터 판독가능 매체에 저장할 수도 있고, 본 개시물의 기법들을 수행하기 위해 하나 이상의 프로세서들을 사용하는 통합된 회로부와 같은 하드웨어에서 그 명령들을 실행할 수도 있다.
도 2 는 제로 차수 (n = 0) 에서 제 4 차수 (n = 4) 까지의 구면 조화 기저 함수들을 예시하는 다이어그램이다. 알 수 있는 바와 같이, 각각의 차수에 대해, 예시 용이의 목적들을 위해 도 1 의 예에는 도시되지만 명시적으로는 언급되지 않은 서브차수들 (m) 의 확장이 존재한다.
SHC
Figure pct00033
는 다양한 마이크로폰 어레이 구성들에 의해 물리적으로 획득될 (예컨대, 레코딩될) 수 있거나, 또는 대안으로, 그들은 사운드필드의 채널-기반의 또는 객체-기반의 설명들로부터 도출될 수 있다. SHC 는 장면-기반의 오디오를 나타내며, 여기서, SHC 는 더 효율적인 송신 또는 저장을 촉진할 수도 있는 인코딩된 SHC 를 획득하기 위해 오디오 인코더에 입력될 수도 있다. 예를 들어, (1+4)2 (25, 따라서, 제 4 차수) 계수들을 수반하는 제 4-차수 표현이 사용될 수도 있다.
위에서 언급한 바와 같이, SHC 는 마이크로폰 어레이를 사용한 마이크로폰 레코딩으로부터 도출될 수도 있다. SHC 가 마이크로폰 어레이들로부터 도출될 수 있는 방법의 다양한 예들은 『Poletti, M., "Three-Dimensional Surround Sound Systems Based on Spherical Harmonics," J. Audio Eng. Soc., Vol. 53, No. 11, 2005 November, pp. 1004-1025 』에서 설명된다.
SHC들이 어떻게 객체-기반의 설명으로부터 도출될 수 있는지를 예시하기 위해, 다음 식을 고려한다. 개별의 오디오 객체에 대응하는 사운드필드에 대한 계수들
Figure pct00034
은 식 (27) 에 도시된 바와 같이 표현될 수도 있고:
여기서, i 는
Figure pct00035
이고,
Figure pct00036
는 차수 n 의 (제 2 종의) 구면 Hankel 함수이고,
Figure pct00037
는 객체의 로케이션이다.
Figure pct00038
(27)
(예를 들어, PCM 스트림에 고속 푸리에 변환을 수행하는 것과 같은, 시간-주파수 분석 기법들을 사용하여) 객체 소스 에너지 g(ω) 를 주파수의 함수로서 알면, 우리는 각각의 PCM 객체 및 대응하는 로케이션을 SHC
Figure pct00039
로 컨버팅할 수 있다. 또한, (상기의 것은 선형 및 직교 분해이기 때문에) 각각의 객체에 대한
Figure pct00040
계수들이 가산적인 것으로 보여질 수 있다. 이 방식으로, 다수의 PCM 객체들은
Figure pct00041
계수들에 의해 (예를 들어, 개별의 객체들에 대한 계수 벡터들의 합계로서) 표현될 수 있다. 본질적으로, 계수들은 사운드필드에 관한 정보 (3D 좌표들의 함수로서의 압력) 을 포함하며, 상기의 것은 관측 포인트
Figure pct00042
근처에서, 개별의 객체들로부터 전체 사운드필드의 표현으로의 변환을 나타낸다.
도 3 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 3 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 오디오 인코딩 디바이스 (14A) 로 라벨링된다. 오디오 인코딩 디바이스 (14A) 는 오디오 인코딩 유닛 (51), 비트스트림 생성 유닛 (52A), 및 메모리 (54) 를 포함한다. 다른 예들에서, 오디오 인코딩 디바이스 (14A) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14A) 는 오디오 인코딩 유닛 (51) 을 포함하지 않을 수도 있고, 또는 오디오 인코딩 유닛 (51) 은 하나 이상의 유선 또는 무선 접속들을 통해 오디오 인코딩 디바이스 (14A) 에 접속될 수도 있는 별개의 디바이스로 구현될 수도 있다.
오디오 신호 (50) 는 오디오 인코딩 디바이스 (14A) 에 의해 수신된 입력 오디오 신호를 나타낼 수도 있다. 일부 예들에서, 오디오 신호 (50) 는 소스 라우드스피커 구성을 위한 멀티-채널 오디오 신호일 수도 있다. 예를 들어, 도 3 에 도시된 바와 같이, 오디오 신호 (50) 는 채널 C1 내지 채널 CN 으로서 표기된 오디오 데이터의 N 개의 채널들을 포함할 수도 있다. 일 예로서, 오디오 신호 (50) 는 5.1 의 소스 라우드스피커 구성에 대한 6-채널 오디오 신호 (즉, 전방-좌측 채널, 센터 채널, 전방-우측 채널, 서라운드 백 좌측 채널, 서라운드 백 우측 채널, 및 저-주파수 효과들 (LFE) 채널) 일 수도 있다. 다른 예로서, 오디오 신호 (50) 는 7.1 의 소스 라우드스피커 구성에 대한 8-채널 오디오 신호 (즉, 전방-좌측 채널, 센터 채널, 전방-우측 채널, 서라운드 백 좌측 채널, 서라운드 좌측 채널, 서라운드 백 우측 채널, 서라운드 우측 채널, 및 저-주파수 효과들 (LFE) 채널) 일 수도 있다. 다른 예들, 예컨대 24-채널 오디오 신호 (예를 들어, 22.2), 9-채널 오디오 신호 (예를 들어, 8.1), 및 채널들의 임의의 다른 조합이 가능하다.
일부 예들에서, 오디오 인코딩 디바이스 (14A) 는, 오디오 신호 (50) 를 코딩된 오디오 신호 (62) 로 인코딩하도록 구성될 수도 있는 오디오 인코딩 유닛 (51) 을 포함할 수도 있다. 예를 들어, 오디오 인코딩 유닛 (51) 은 오디오 신호 (50) 를 양자화, 포맷, 또는 다르게는 압축하여 오디오 신호 (62) 를 생성할 수도 있다. 도 3 의 예에 도시된 바와 같이, 오디오 인코딩 유닛 (51) 은 오디오 신호 (50) 의 채널들 C1-CN 을 코딩된 오디오 신호 (62) 의 채널들 C'1-C'N 로 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 유닛 (51) 은 오디오 CODEC 으로서 지칭될 수도 있다.
소스 라우드스피커 셋업 정보 (48) 는 소스 라우드스피커 셋업에서 라우드스피커들의 수 (예를 들어, N) 및 소스 라우드스피커 셋업에서 라우드스피커들의 포지션들을 지정할 수도 있다. 일부 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 방위각 및 고도의 형태 (예를 들어,
Figure pct00043
) 로 소스 라우드스피커들의 포지션들을 나타낼 수도 있다. 일부 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 미리-정의된 셋업 (예를 들어, 5.1, 7.1, 22.2) 의 형태로 소스 라우드스피커들의 포지션들을 나타낼 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14A) 는 소스 라우드스피커 셋업 정보 (48) 에 기초하여 소스 렌더링 포맷 (D) 를 결정할 수도 있다. 일부 예들에서, 소스 렌더링 포맷 (D) 는 매트릭스로서 표현될 수도 있다.
비트스트림 생성 유닛 (52A) 은 하나 이상의 입력들에 기초하여 비트스트림을 생성하도록 구성될 수도 있다. 도 3 의 예에서, 비트스트림 생성 유닛 (52A) 은 라우드스피커 포지션 정보 (48) 및 오디오 신호 (50) 를 비트스트림 (56A) 으로 인코딩하도록 구성될 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52A) 은 압축 없이 오디오 신호를 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52A) 은 오디오 신호 (50) 를 비트스트림 (56A) 으로 인코딩할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52A) 은 압축한 오디오 신호를 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52A) 은 코딩된 오디오 신호 (62) 를 비트스트림 (56A) 으로 인코딩할 수도 있다.
일부 예들에서, 라우드스피커 포지션 정보 (48) 를 비트스트림 (56A) 으로, 비트스트림 생성 유닛 (52A) 은 소스 라우드스피커 셋업에서 라우드스피커들의 수 (예를 들어, N) 및 소스 라우드스피커 셋업의 라우드스피커들의 포지션들을 방위각 및 고도 (예를 들어,
Figure pct00044
) 의 형태로 인코딩 (예를 들어, 시그널링) 할 수도 있다. 추가로 일부 예들에서, 비트스트림 생성 유닛 (52A) 은, 오디오 신호 (50) 를 HOA 사운드필드로 컨버팅하는 경우 얼마나 많은 HOA 계수들이 사용될지의 표시 (예를 들어, N HOA ) 를 결정 및 인코딩할 수도 있다. 일부 예들에서, 오디오 신호 (50) 는 프레임들로 분할될 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52A) 은 각각의 프레임에 대해 소스 라우드스피커 셋업에서 라우드스피커들의 수 및 소스 라우드스피커 셋업의 라우드스피커들의 포지션들을 시그널링할 수도 있다. 일부 예들에서, 예컨대 현재의 프레임에 대한 소스 라우드스피커 셋업이 이전의 프레임에 대한 소스 라우드스피커 셋업과 동일한 경우에서, 비트스트림 생성 유닛 (52A) 은 현재의 프레임에 대한 소스 라우드스피커 셋업의 라우드스피커들의 포지션들 및 소스 라우드스피커 셋업에서 라우드스피커들의 수를 시그널링하는 것을 생략할 수도 있다.
동작 시에, 오디오 인코딩 디바이스 (14A) 는 오디오 신호 (50) 를 6-채널 멀티-채널 오디오 신호로서 수신하고, 라우드스피커 포지션 정보 (48) 를 5.1 미리정의된 셋업의 형태로 소스 라우드스피커들의 포지션들의 표시로서 수신할 수도 있다. 위에서 논의된 바와 같이, 비트스트림 생성 유닛 (52A) 은 라우드스피커 포지션 정보 (48) 및 오디오 신호 (50) 를 비트스트림 (56A) 으로 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52A) 은 6-채널 멀티-채널 (오디오 신호 (50)) 의 표현, 및 인코딩된 오디오 신호가 5.1 오디오 신호라는 표시 (소스 라우드스피커 포지션 정보 (48)) 를 비트스트림 (56A) 으로 인코딩할 수도 있다.
위에서 논의된 바와 같이, 일부 예들에서 오디오 인코딩 디바이스 (14A) 는 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 를 오디오 디코딩 디바이스로 직접 송신할 수도 있다. 다른 예들에서, 오디오 인코딩 디바이스 (14A) 는 디코딩 및/또는 재생을 위해 오디오 디코딩 디바이스에 의한 나중의 액세스를 위해, 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 을 저장 매체 또는 파일 서버 상에 저장할 수도 있다. 도 3 의 예에서, 메모리 (54) 는 오디오 인코딩 디바이스 (14A) 에 의한 출력 이전에 비트스트림 (56A) 의 적어도 일부를 저장할 수도 있다. 다시 말해, 메모리 (54) 는 비트스트림 (56A) 의 전부 또는 비트스트림 (56A) 의 부분을 저장할 수도 있다.
따라서, 오디오 인코딩 디바이스 (14A) 는, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 멀티-채널 오디오 신호 (50)) 를 수신하고; 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합하여, 멀티-채널 오디오 신호를 나타내는 고차 앰비소닉 (HOA) 계수들의 세트를 나타내는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터들을 획득하며; 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56A)) 에서, 멀티-채널 오디오 신호 (예를 들어, 코딩된 오디오 신호 (62)) 의 표현 및 복수의 공간 포지셔닝 벡터들 (예를 들어, 라우드스피커 포지션 정보 (48)) 의 표시를 인코딩하도록 구성된 하나 이상의 프로세서들을 포함할 수도 있다. 또한, 오디오 인코딩 디바이스 (14A) 는, 코딩된 오디오 비트스트림을 저장하도록 구성된, 하나 이상의 프로세서들에 전기적으로 커플링된 메모리 (예를 들어, 메모리 (54)) 를 포함할 수도 있다.
도 4 는 본 개시물의 하나 이상의 기법들에 따른, 도 3 에 도시된 오디오 인코딩 디바이스 (14A) 의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 4 에 도시된 오디오 디코딩 디바이스 (22) 의 예시의 구현은 22A 로 라벨링된다. 도 4 의 오디오 디코딩 디바이스 (22) 의 구현은 메모리 (200), 디멀티플렉싱 유닛 (202A), 오디오 디코딩 유닛 (204), 벡터 생성 유닛 (206), HOA 생성 유닛 (208A), 및 렌더링 유닛 (210) 을 포함한다. 다른 예들에서, 오디오 디코딩 디바이스 (22A) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 베이스 또는 위성 디바이스에서 구현될 수도 있고, 하나 이상의 유선 또는 무선 접속들을 통해 오디오 디코딩 디바이스 (22A) 에 접속될 수도 있다.
메모리 (200) 는 인코딩된 오디오 데이터, 예컨대 비트스트림 (56A) 을 획득할 수도 있다. 일부 예들에서, 메모리 (200) 는 오디오 인코딩 디바이스로부터 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 를 직접 수신할 수도 있다. 다른 예들에서, 인코딩된 오디오 데이터가 저장될 수도 있고, 메모리 (200) 는 저장 매체 또는 파일 서버로부터 인코딩된 오디오 데이터 (즉, 비트스트림 (56A)) 를 획득할 수도 있다. 메모리 (200) 는 비트스트림 (56A) 에 대한 액세스를 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들, 예컨대 디멀티플렉싱 유닛 (202) 에 제공할 수도 있다.
디멀티플렉싱 유닛 (202A) 은 비트스트림 (56A) 을 디멀티플렉싱하여, 코딩된 오디오 데이터 (62) 및 소스 라우드스피커 셋업 정보 (48) 를 획득할 수도 있다. 디멀티플렉싱 유닛 (202A) 은 획득된 데이터를 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들에 제공할 수도 있다. 예를 들어, 디멀티플렉싱 유닛 (202A) 은 코딩된 오디오 데이터 (62) 를 오디오 디코딩 유닛 (204) 에 제공하고, 소스 라우드스피커 셋업 정보 (48) 를 벡터 생성 유닛 (206) 에 제공할 수도 있다.
오디오 디코딩 유닛 (204) 은 코딩된 오디오 신호 (62) 를 오디오 신호 (70) 로 디코딩하도록 구성될 수도 있다. 예를 들어, 오디오 디코딩 유닛 (204) 은 오디오 신호 (62) 를 역양자화, 역포맷, 또는 다르게는 압축해제하여 오디오 신호 (70) 를 생성할 수도 있다. 도 4 의 예에 도시된 바와 같이, 오디오 디코딩 유닛 (204) 은 오디오 신호 (62) 의 채널들 C'1-C'N 을 디코딩된 오디오 신호 (70) 의 채널들 C'1-C'N 로 디코딩할 수도 있다. 일부 예들에서, 예컨대 오디오 신호 (62) 가 무손실 코딩 기법을 사용하여 코딩되는 경우에서, 오디오 신호 (70) 는 도 3 의 오디오 신호 (50) 와 대략 동등할 수도 있다. 일부 예들에서, 오디오 디코딩 유닛 (204) 은 오디오 CODEC 으로서 지칭될 수도 있다. 오디오 디코딩 유닛 (204) 은 디코딩된 오디오 신호 (70) 를 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들, 예컨대 HOA 생성 유닛 (208A) 에 제공할 수도 있다.
벡터 생성 유닛 (206) 은 하나 이상의 공간 포지셔닝 벡터들을 생성하도록 구성될 수도 있다. 예를 들어, 도 4 의 예에서 도시된 바와 같이, 벡터 생성 유닛 (206) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 생성할 수도 있다. 일부 예들에서, 공간 포지셔닝 벡터 (72) 는 고차 앰비소닉스 (HOA) 도메인에 있을 수도 있다. 일부 예들에서, 공간 포지셔닝 벡터 (72) 를 생성하기 위해, 벡터 생성 유닛 (206) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 소스 렌더링 포맷 (D) 을 결정할 수도 있다. 결정된 소스 렌더링 포맷 (D) 을 사용하여, 벡터 생성 유닛 (206) 은 상기의 식들 (15) 및 (16) 을 충족시키도록 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 벡터 생성 유닛 (206) 은 공간 포지셔닝 벡터들 (72) 을 오디오 디코딩 디바이스 (22A) 의 하나 이상의 컴포넌트들, 예컨대 HOA 생성 유닛 (208A) 에 제공할 수도 있다.
HOA 생성 유닛 (208A) 은 멀티-채널 오디오 데이터 및 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드를 생성하도록 구성될 수도 있다. 예를 들어, 도 4 의 예에 도시된 바와 같이, HOA 생성 유닛 (208A) 은 디코딩된 오디오 신호 (70) 및 공간 포지셔닝 벡터들 (72) 에 기초하여 HOA 계수들 (212A) 의 세트를 생성할 수도 있다. 일부 예들에서, HOA 생성 유닛 (208A) 은 이하의 식 (28) 에 따라 HOA 계수들 (212A) 의 세트를 생성할 수도 있고, 여기서 H 는 HOA 계수들 (212A) 을 나타내고, C i 는 디코딩된 오디오 신호 (70) 를 나타내며,
Figure pct00045
는 공간 포지셔닝 벡터들 (72) 의 트랜스포즈를 나타낸다.
Figure pct00046
(28)
HOA 생성 유닛 (208A) 은 생성된 HOA 사운드필드를 하나 이상의 다른 컴포넌트들에 제공할 수도 있다. 예를 들어, 도 4 의 예에 도시된 바와 같이, HOA 생성 유닛 (208A) 은 HOA 계수들 (212A) 을 렌더링 유닛 (210) 에 제공할 수도 있다.
렌더링 유닛 (210) 은 HOA 사운드필드를 렌더링하여 복수의 오디오 신호들을 생성하도록 구성될 수도 있다. 일부 예들에서, 렌더링 유닛 (210) 은 HOA 사운드필드의 HOA 계수들 (212A) 을 렌더링하여 복수의 로컬 라우드스피커들, 예컨대 도 1 의 라우드스피커들 (24) 에서 재생을 위한 오디오 신호들 (26A) 을 생성할 수도 있다. 복수의 로컬 라우드스피커들이 L 개의 라우드스피커들을 포함하는 경우, 오디오 신호들 (26A) 은 라우드스피커들 1 내지 L 를 통한 재생을 위해 각기 의도되는 채널들 (C1 내지 CL) 을 포함할 수도 있다.
렌더링 유닛 (210) 은, 복수의 로컬 라우드스피커들의 포지션들을 나타낼 수도 있는, 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 오디오 신호들 (26A) 을 생성할 수도 있다. 일부 예들에서, 로컬 라우드스피커 셋업 정보 (28) 는 로컬 렌더링 포맷 (
Figure pct00047
) 의 형태에 있을 수도 있다. 일부 예들에서, 로컬 렌더링 포맷 (
Figure pct00048
) 은 로컬 렌더링 매트릭스일 수도 있다. 일부 예들에서, 예컨대 로컬 라우드스피커 셋업 정보 (28) 가 로컬 라우드스피커들 각각의 방위각 및 고도의 형태로 있는 경우에서, 렌더링 유닛 (210) 은 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 로컬 렌더링 포맷 (
Figure pct00049
) 을 결정할 수도 있다. 일부 예들에서, 렌더링 유닛 (210) 은 식 (29) 에 따라 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 오디오 신호들 (26A) 을 생성할 수도 있고, 여기서
Figure pct00050
는 오디오 신호들 (26A) 을 나타내고, H 는 HOA 계수들 (212A) 을 나타내며,
Figure pct00051
는 로컬 렌더링 포맷 (
Figure pct00052
) 의 트랜스포즈를 나타낸다.
Figure pct00053
(29)
일부 예들에서, 로컬 렌더링 포맷 (
Figure pct00054
) 은 공간 포지셔닝 벡터들 (72) 을 결정하는데 사용된 소스 렌더링 포맷 (D) 과는 상이할 수도 있다. 일 예로서, 복수의 로컬 라우드스피커들의 포지션들은 복수의 소스 라우드스피커들의 포지션들과는 상이할 수도 있다. 다른 예로서, 복수의 로컬 라우드스피커들에서 라우드스피커들의 수는 복수의 소스 라우드스피커들에서 라우드스피커들의 수와 상이할 수도 있다. 다른 예로서, 복수의 로컬 라우드스피커들의 포지션들 양자 모두는 복수의 소스 라우드스피커들의 포지션들과 상이할 수도 있고, 복수의 로컬 라우드스피커들에서 라우드스피커들의 수는 복수의 소스 라우드스피커들에서 라우드스피커들의 수와 상이할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22A) 는 코딩된 오디오 비트스트림을 저장하도록 구성된 메모리 (예를 들어, 메모리 (200)) 를 포함할 수도 있다. 오디오 디코딩 디바이스 (22A) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 코딩된 오디오 신호 (62)) 의 표현을 획득하고; 소스 라우드스피커 구성 (예를 들어, 공간 포지셔닝 벡터들 (72)) 에 기초하는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터 (SPV) 들의 표현을 획득하며; 멀티-채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드 (예를 들어, HOA 계수들 (212A)) 를 생성하도록 구성되고, 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 더 포함할 수도 있다.
도 5 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 5 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 오디오 인코딩 디바이스 (14B) 로 라벨링된다. 오디오 인코딩 디바이스 (14B) 는 오디오 인코딩 유닛 (51), 비트스트림 생성 유닛 (52A), 및 메모리 (54) 를 포함한다. 다른 예들에서, 오디오 인코딩 디바이스 (14B) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14B) 는 오디오 인코딩 유닛 (51) 을 포함하지 않을 수도 있고, 또는 오디오 인코딩 유닛 (51) 은 하나 이상의 유선 또는 무선 접속들을 통해 오디오 인코딩 디바이스 (14B) 에 접속될 수도 있다.
공간 포지셔닝 벡터들의 표시를 인코딩하지 않고 코딩된 오디오 신호 (62) 및 라우드스피커 포지션 정보 (48) 를 인코딩할 수도 있는 도 3 의 오디오 인코딩 디바이스 (14A) 와 대조적으로, 오디오 인코딩 디바이스 (14B) 는 공간 포지셔닝 벡터들을 결정할 수도 있는 벡터 인코딩 유닛 (68) 을 포함한다. 일부 예들에서, 벡터 인코딩 유닛 (68) 은 라우드스피커 포지션 정보 (48) 에 기초하여 공간 포지셔닝 벡터들을 결정하고, 비트스트림 생성 유닛 (52B) 에 의한 비트스트림 (56B) 으로의 인코딩을 위해 공간 벡터 표현 데이터 (71A) 를 출력할 수도 있다.
일부 예들에서, 벡터 인코딩 유닛 (68) 은 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성할 수도 있다. 일 예로서, 벡터 인코딩 유닛 (68) 은 (예를 들어, 라우드스피커 포지션 정보 (48) 에 기초하여) 동적으로 생성되는 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성할 수도 있다. 동적으로 생성된 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성하는 벡터 인코딩 유닛 (68) 의 일 예의 추가적인 상세들은 도 6 내지 도 8 을 참조하여 이하에서 논의된다. 다른 예로서, 벡터 인코딩 유닛 (68) 은 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성할 수도 있다. 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로서 벡터 표현 데이터 (71A) 를 생성하는 벡터 인코딩 유닛 (68) 의 일 예의 추가적인 상세들은 도 9 를 참조하여 이하에서 논의된다.
비트스트림 생성 유닛 (52B) 은 비트스트림 (56B) 에서 공간 벡터 표현 데이터 (71A) 및 코딩된 오디오 신호 (60) 를 나타내는 데이터를 포함할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52B) 은 또한, 비트스트림 (56B) 에서 라우드스피커 포지션 정보 (48) 를 나타내는 데이터를 포함할 수도 있다. 도 5 의 예에서, 메모리 (54) 는 오디오 인코딩 디바이스 (14B) 에 의한 출력 이전에 비트스트림 (56B) 의 적어도 일부를 저장할 수도 있다.
따라서, 오디오 인코딩 디바이스 (14B) 는, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 멀티-채널 오디오 신호 (50)) 를 수신하고; 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합하여, 멀티-채널 오디오 신호를 나타내는 고차 앰비소닉 (HOA) 계수들의 세트를 나타내는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터들을 획득하며; 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56B)) 에서, 멀티-채널 오디오 신호 (예를 들어, 코딩된 오디오 신호 (62)) 의 표현 및 복수의 공간 포지셔닝 벡터들 (예를 들어, 공간 벡터 표현 데이터 (71A)) 의 표시를 인코딩하도록 구성된 하나 이상의 프로세서들을 포함할 수도 있다. 또한, 오디오 인코딩 디바이스 (14B) 는, 코딩된 오디오 비트스트림을 저장하도록 구성된, 하나 이상의 프로세서들에 전기적으로 커플링된 메모리 (예를 들어, 메모리 (54)) 를 포함할 수도 있다.
도 6 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛 (68) 의 예시의 구현을 예시하는 다이어그램이다. 도 6 의 예에서, 벡터 인코딩 유닛 (68) 의 예시의 구현은 벡터 인코딩 유닛 (68A) 으로 라벨링된다. 도 6 의 예에서, 벡터 인코딩 유닛 (68A) 은 렌더링 포맷 유닛 (110), 벡터 생성 유닛 (112), 메모리 (114), 및 표현 유닛 (115) 을 포함한다. 또한, 도 6 의 예에서 도시된 바와 같이, 렌더링 포맷 유닛 (110) 은 소스 라우드스피커 셋업 정보 (48) 를 수신한다.
렌더링 포맷 유닛 (110) 은 소스 라우드스피커 셋업 정보 (48) 를 사용하여 소스 렌더링 포맷 (116) 을 결정한다. 소스 렌더링 포맷 (116) 은 HOA 계수들의 세트를 소스 라우드스피커 셋업 정보 (48) 에 의해 설명된 방식으로 배열된 라우드스피커들에 대한 라우드스피커 피드들의 세트로 렌더링하기 위한 렌더링 매트릭스일 수도 있다. 렌더링 포맷 유닛 (110) 은 다양한 방식들로 소스 렌더링 포맷 (116) 을 결정할 수도 있다. 예를 들어, 렌더링 포맷 유닛 (110) 은 『ISO/IEC 23008-3, "Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 3 : 3D audio," First Edition, 2015』 (iso.org 에서 이용 가능함) 에서 설명된 기법을 사용할 수도 있다.
렌더링 포맷 유닛 (110) 이 ISO/IEC 23008-3 에서 설명된 기법을 사용하는 예에서, 소스 라우드스피커 셋업 정보 (48) 는 소스 라우드스피커 셋업에서 라우드스피커들의 방향들을 지정하는 정보를 포함한다. 설명의 용이함을 위해, 본 개시물은 소스 라우드스피커 셋업에서 라우드스피커들을 "소스 라우드스피커들" 로서 지칭할 수도 있다. 따라서, 소스 라우드스피커 셋업 정보 (48) 는 L 개의 라우드스피커 방향들을 지정하는 데이터를 포함할 수도 있고, 여기서 L 은 소스 라우드스피커들의 수이다. L 개의 라우드스피커 방향들을 지정하는 데이터는
Figure pct00055
로 표기될 수도 있다. 소스 라우드스피커들의 방향들을 지정하는 데이터는 구면 좌표들의 쌍들로서 표현될 수도 있다. 따라서, 구면각
Figure pct00056
을 갖고,
Figure pct00057
이다.
Figure pct00058
는 경사각을 나타내고,
Figure pct00059
는 방위각을 나타내며, 이것은 라디안 (rad) 으로 표현될 수도 있다. 이 예에서, 렌더링 포맷 유닛 (110) 은, 소스 라우드스피커들이 음향 스윗 스폿 (sweet spot) 에서 센터링된, 구면 배열을 갖는다는 것을 가정할 수도 있다.
이 예에서, 렌더링 포맷 유닛 (110) 은, 이상적인 구면 설계 포지션들의 세트 및 HOA 차수에 기초하여,
Figure pct00060
로 표기된, 모드 매트릭스를 결정할 수도 있다. 도 7 은 이상적인 구면 설계 포지션들의 예시의 세트를 나타낸다. 도 8 은 이상적인 구면 설계 포지션들의 다른 예시의 세트를 나타내는 테이블이다. 이상적인 구면 설계 포지션들은
Figure pct00061
로 표기될 수도 있고, 여기서 S 는 이상적인 구면 설계 포지션들의 수이고,
Figure pct00062
이다. 모드 매트릭스는,
Figure pct00063
Figure pct00064
이도록 정의될 수도 있고,
Figure pct00065
이며, 여기서
Figure pct00066
는 실수 값의 구면 조화 계수들
Figure pct00067
을 유지한다. 일반적으로, 실수 값의 구면 조화 계수들
Figure pct00068
은 식들 (30) 및 (31) 에 따라 표현될 수도 있다.
Figure pct00069
여기서
Figure pct00070
식들 (30) 및 (31) 에서, 르장드르 함수
Figure pct00071
는, 르장드르 다항식
Figure pct00072
을 갖고 Condon-Shortley 위상 항
Figure pct00073
없이, 이하의 식 (32) 에 따라 정의될 수도 있다.
Figure pct00074
도 7 은 이상적인 구면 설계 포지션들에 대응하는 엔트리들을 갖는 예시의 테이블 (130) 을 제시한다. 도 7 의 예에서, 테이블 (130) 의 각 로우는 미리정의된 라우드스피커 포지션에 대응하는 엔트리이다. 테이블 (130) 의 컬럼 (131) 은 라우드스피커들에 대한 이상적인 방위각들을 각도로 지정한다. 테이블 (130) 의 컬럼 (132) 은 라우드스피커들에 대한 이상적인 고도들을 각도로 지정한다. 테이블 (130) 의 컬럼들 (133 및 134) 은 라우드스피커들에 대한 방위각들의 허용 가능한 범위들을 각도로 지정한다. 테이블 (130) 의 컬럼들 (135 및 136) 은 라우드스피커들의 고도각들의 허용 가능한 범위들을 각도로 지정한다.
도 8 은 이상적인 구면 설계 포지션들에 대응하는 엔트리들을 갖는 다른 예시의 테이블 (140) 의 일부를 나타낸다. 도 8 에 도시되지 않았으나, 테이블 (140) 은 900 개의 엔트리들을 포함하고, 각각은 라우드스피커 로케이션의 상이한 방위각,
Figure pct00075
, 및 고도,
Figure pct00076
를 지정한다. 도 8 의 예에서, 오디오 인코딩 디바이스 (14) 는 테이블 (140) 에서 엔트리의 인덱스를 시그널링함으로써 소스 라우드스피커 셋업에서 라우드스피커의 포지션을 지정할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14) 는, 인덱스 값 (46) 을 시그널링함으로써 소스 라우드스피커 셋업에서 라우드스피커가 방위각 1.967778 라디안 및 고도 0.428967 라디안이라는 것을 지정할 수도 있다.
도 6 의 예로 돌아가, 벡터 생성 유닛 (112) 은 소스 렌더링 포맷 (116) 을 획득할 수도 있다. 벡터 생성 유닛 (112) 은 소스 렌더링 포맷 (116) 에 기초하여 공간 벡터들 (118) 의 세트를 결정할 수도 있다. 일부 예들에서, 벡터 생성 유닛 (112) 에 의해 생성된 공간 벡터들의 수는 소스 라우드스피커 셋업에서 라우드스피커들의 수와 동일하다. 예를 들어, 소스 라우드스피커 셋업에서 N 개의 라우드스피커들이 존재하면, 벡터 생성 유닛 (112) 은 N 개의 공간 벡터들을 결정할 수도 있다. 소스 라우드스피커 셋업에서 각각의 라우드스피커 (n) 에 대해 (여기서, n 은 1 내지 N 의 범위임), 라우드스피커에 대한 공간 벡터는
Figure pct00077
와 동일할 수도 있다. 이 식에서, D 는 매트릭스로서 표현된 소스 렌더링 포맷이고 N 과 동일한 수의 엘리먼트들의 단일 로우로 이루어진 매트릭스이다 (즉, A n 은 N-차원 벡터이다). A n 에서 각각의 엘리먼트는, 그 값이 1 과 동일한 하나의 엘리먼트를 제외하고, 0 과 동일하다. 1 과 동일한 엘리먼트의 A n 내의 포지션의 인덱스는 n 과 동일하다. 따라서, n 이 1 과 동일한 경우, A n 은 [1,0,0,...,0] 과 동일하고; n 이 2 와 동일한 경우, A n 은 [0,1,0,...,0] 와 동일하고; 등등이다.
메모리 (114) 는 코드북 (120) 을 저장할 수도 있다. 메모리 (114) 는 벡터 인코딩 유닛 (68A) 과는 별개일 수도 있고, 오디오 인코딩 디바이스 (14) 의 일반적인 메모리의 부분을 형성할 수도 있다. 코드북 (120) 은 엔트리들의 세트를 포함하고, 이 엔트리들 각각은 개별의 코드-벡터 인덱스를 공간 벡터들 (118) 의 세트의 개별의 공간 벡터에 맵핑한다. 다음의 테이블은 예시의 코드북이다. 이 테이블에서, 각각의 개별의 로우는 개별의 엔트리에 대응하고, N 은 라우드스피커들의 수를 나타내며, D 는 매트릭스로서 표현된 소스 렌더링 포맷을 나타낸다.
Figure pct00078
소스 라우드스피커 셋업의 각각의 개별의 라우드스피커에 대해, 표현 유닛 (115) 은 개별의 라우드스피커에 대응하는 코드-벡터 인덱스를 출력한다. 예를 들어, 표현 유닛 (115) 은 제 1 채널에 대응하는 코드-벡터 인덱스가 2 라는 것, 제 2 채널에 대응하는 코드-벡터 인덱스가 4 와 동일하다는 것, 등을 나타내는 데이터를 출력할 수도 있다. 코드북 (120) 의 복사본을 갖는 디코딩 디바이스는 소스 라우드스피커 셋업의 라우드스피커들에 대한 공간 벡터를 결정하도록 코드-벡터 인덱스들을 사용할 수 있다. 따라서, 코드-벡터 인덱스들은 공간 벡터 표현 데이터의 유형이다. 위에서 논의된 바와 같이, 비트스트림 생성 유닛 (52B) 은 비트스트림 (56B) 에서 공간 벡터 표현 데이터 (71A) 를 포함할 수도 있다.
또한, 일부 예들에서 표현 유닛 (115) 은 소스 라우드스피커 셋업 정보 (48) 를 획득하고, 공간 벡터 표현 데이터 (71A) 에서 소스 라우드스피커들의 로케이션들을 나타내는 데이터를 포함할 수도 있다.
다른 예들에서, 표현 유닛 (115) 은 공간 벡터 표현 데이터 (71A) 에서 소스 라우드스피커들의 로케이션들을 나타내는 데이터를 포함하지 않는다. 차라리, 적어도 일부 이러한 예들에서, 소스 라우드스피커들의 로케이션들은 오디오 디코딩 디바이스 (22) 에서 미리구성될 수도 있다.
표현 유닛 (115) 이 공간 벡터 표현 데이터 (71A) 에서 소스 라우드스피커의 로케이션들을 나타내는 데이터를 포함하는 예들에서, 표현 유닛 (115) 은 소스 라우드스피커들의 로케이션들을 다양한 방식들로 나타낼 수도 있다. 일 예에서, 소스 라우드스피커 셋업 정보 (48) 는 서라운드 사운드 포맷, 예컨대 5.1 포맷, 7.1 포맷, 또는 22.2 포맷을 지정한다. 이 예에서, 소스 라우드스피커 셋업의 라우드스피커들 각각은 미리정의된 로케이션에 있다. 따라서, 표현 유닛 (114) 은, 공간 표현 데이터 (115) 에서, 미리정의된 서라운드 사운드 포맷을 나타내는 데이터를 포함할 수도 있다. 미리정의된 서라운드 사운드 포맷에서 라우드스피커들이 미리정의된 포지션들에 있기 때문에, 미리정의된 서라운드 사운드 포맷을 나타내는 데이터는 오디오 디코딩 디바이스 (22) 가 코드북 (120) 에 일치하는 코드북을 생성하기에 대해 충분할 수도 있다.
다른 예에서, ISO/IEC 23008-3 은 상이한 라우드스피커 레이아웃들에 대한 복수의 CICP 스피커 레이아웃 인덱스 값들을 정의한다. 이 예에서, 소스 라우드스피커 셋업 정보 (48) 는 ISO/IEC 23008-3 에서 지정된 바와 같이, CICP 스피커 레이아웃 인덱스 (CICPspeakerLayoutIdx) 를 지정한다. 렌더링 포맷 유닛 (110) 은 이 CICP 스피커 레이아웃 인덱스에 기초하여 소스 라우드스피커 셋업에서 라우드스피커들의 로케이션들을 결정할 수도 있다. 따라서, 표현 유닛 (115) 은, 공간 벡터 표현 데이터 (71A) 에서, CICP 스피커 레이아웃 인덱스의 표시를 포함할 수도 있다.
다른 예에서, 소스 라우드스피커 셋업 정보 (48) 는 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 수 및 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 로케이션들을 지정한다. 이 예에서, 렌더링 포맷 유닛 (110) 은 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 수 및 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 로케이션들에 기초하여 소스 렌더링 포맷을 결정할 수도 있다. 이 예에서, 소스 라우드스피커 셋업에서 라우드스피커들의 임의의 로케이션들은 다양한 방식들로 표현될 수도 있다. 예를 들어, 표현 유닛 (115) 은, 공간 벡터 표현 데이터 (71A) 에서, 소스 라우드스피커 셋업에서 라우드스피커들의 구면 좌표들을 포함할 수도 있다. 다른 예에서, 오디오 인코딩 디바이스 (20) 및 오디오 디코딩 디바이스 (24) 는 복수의 미리정의된 라우드스피커 포지션들에 대응하는 엔트리들을 갖는 테이블로 구성될 수도 있다. 도 7 및 도 8 은 이러한 테이블들의 예들이다. 이 예에서, 차라리 공간 벡터 표현 데이터 (71A) 가 라우드스피커들의 구면 좌표들을 더 지정하는 것 보다는, 공간 벡터 표현 데이터 (71A) 는 대신에, 테이블에서 엔트리들의 인덱스 값들을 나타내는 데이터를 포함할 수도 있다. 인덱스 값을 시그널링하는 것은 구면 좌표들을 시그널링하는 것보다 더 효율적일 수도 있다.
도 9 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 인코딩 유닛 (68) 의 예시의 구현을 예시하는 블록도이다. 도 9 의 예에서, 벡터 인코딩 유닛 (68) 의 예시의 구현은 벡터 인코딩 유닛 (68B) 으로 라벨링된다. 도 9 의 예에서, 공간 벡터 유닛 (68B) 은 코드북 라이브러리 (150) 및 선택 유닛 (154) 을 포함한다. 코드북 라이브러리 (150) 는 메모리를 사용하여 구현될 수도 있다. 코드북 라이브러리 (150) 는 하나 이상의 미리정의된 코드북들 (152A-152N) (총괄하여, "코드북들 (152")) 을 포함한다. 코드북들 (152) 의 각각의 개별 코드북은 하나 이상의 엔트리들의 세트를 포함한다. 각각의 개별 엔트리는 개별의 코드-벡터 인덱스를 개별의 공간 벡터에 맵핑한다.
코드북들 (152) 의 각각의 개별의 코드북은 상이한 미리정의된 소스 라우드스피커 셋업에 대응한다. 예를 들어, 코드북 라이브러리 (150) 의 제 1 코드북은 2 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응할 수도 있다. 이 예에서, 코드북 라이브러리 (150) 의 제 2 코드북은 5.1 서라운드 사운드 포맷에 대한 표준 로케이션들에서 배열된 5 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응한다. 또한, 이 예에서, 코드북 라이브러리 (150) 의 제 3 코드북은 7.1 서라운드 사운드 포맷에 대한 표준 로케이션들에서 배열된 7 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응한다. 이 예에서, 코드북 라이브러리 (100) 의 제 4 코드북은 22.2 서라운드 사운드 포맷에 대한 표준 로케이션들에서 배열된 22 개의 라우드스피커들로 이루어진 소스 라우드스피커 셋업에 대응한다. 다른 예들은 이전의 예에서 언급된 것들보다 더 많은, 더 적은, 또는 상이한 코드북들을 포함할 수도 있다.
도 9 의 예에서, 선택 유닛 (154) 은 소스 라우드스피커 셋업 정보 (48) 를 수신한다. 일 예에서, 소스 라우드스피커 정보 (48) 는 5.1, 7.1, 22.2, 및 다른 것들과 같은, 미리정의된 서라운드 사운드 포맷을 식별하는 정보로 이루어지거나 또는 이를 포함할 수도 있다. 다른 예에서, 소스 라우드스피커 정보 (48) 는 미리정의된 수 및 배열의 라우드스피커들의 다른 유형을 식별하는 정보로 이루어지거나 또는 이를 포함한다.
선택 유닛 (154) 은, 소스 라우드스피커 셋업 정보에 기초하여, 코드북들 (152) 중 어느 것이 오디오 디코딩 디바이스 (24) 에 의해 수신된 오디오 신호들에 적용 가능한지를 식별한다. 도 9 의 예에서, 선택 유닛 (154) 은, 오디오 신호들 (50) 중 어느 것이 식별된 코드북에서 어느 엔트리들에 대응하는지를 나타내는 공간 벡터 표현 데이터 (71A) 를 출력한다. 예를 들어, 선택 유닛 (154) 은 오디오 신호들 (50) 의 각각에 대한 코드-벡터 인덱스를 출력할 수도 있다.
일부 예들에서, 벡터 인코딩 유닛 (68) 은 도 6 의 미리정의된 코드북 접근법 및 도 9 의 동적 코드북 접근법의 하이브리드를 이용한다. 예를 들어, 본 개시물의 다른 곳에서 설명된 바와 같이, 채널-기반 오디오가 사용되는 경우, 각각의 개별의 채널은 소스 라우드스피커 셋업의 개별의 라우드스피커에 대응하고 벡터 인코딩 유닛 (68) 은 소스 라우드스피커 셋업의 각각의 개별의 라우드스피커에 대한 개별의 공간 벡터를 결정한다. 이러한 예들의 일부, 예컨대 채널-기반 오디오가 사용되는 경우에서, 벡터 인코딩 유닛 (68) 은 하나 이상의 미리정의된 코드북들을 사용하여 소스 라우드스피커 셋업의 특정 라우드스피커들의 공간 벡터들을 결정할 수도 있다. 벡터 인코딩 유닛 (68) 은 소스 라우드스피커 셋업에 기초하여 소스 렌더링 포맷을 결정하고, 소스 렌더링 포맷을 사용하여 소스 라우드스피커 셋업의 다른 라우드스피커들에 대한 공간 벡터들을 결정할 수도 있다.
도 10 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 5 에 도시된 오디오 디코딩 디바이스 (22) 의 예시의 구현은 오디오 디코딩 디바이스 (22B) 로 라벨링된다. 도 10 의 오디오 디코딩 디바이스 (22) 의 구현은 메모리 (200), 디멀티플렉싱 유닛 (202A), 오디오 디코딩 유닛 (204), 벡터 디코딩 유닛 (207), HOA 생성 유닛 (208A), 및 렌더링 유닛 (210) 을 포함한다. 다른 예들에서, 오디오 디코딩 디바이스 (22B) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 베이스 또는 위성 디바이스에서 구현될 수도 있고, 하나 이상의 유선 또는 무선 접속들을 통해 오디오 디코딩 디바이스 (22B) 에 접속될 수도 있다.
공간 포지셔닝 벡터들의 표시를 수신하지 않고 라우드스피커 포지션 정보 (48) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 생성할 수도 있는 도 4 의 오디오 디코딩 디바이스 (22A) 와 대조적으로, 오디오 디코딩 디바이스 (22B) 는 수신된 공간 벡터 표현 데이터 (71A) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있는 벡터 디코딩 유닛 (207) 을 포함한다.
일부 예들에서, 벡터 디코딩 유닛 (207) 은 공간 벡터 표현 데이터 (71A) 에 의해 표현된 코드북 인덱스들에 기초하여 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 일 예로서, 벡터 디코딩 유닛 (207) 은 (예를 들어, 라우드스피커 포지션 정보 (48) 에 기초하여) 동적으로 생성되는 코드북에서의 인덱스들로부터 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 동적으로 생성된 코드북의 인덱스들로부터 공간 포지셔닝 벡터들을 결정하는 벡터 디코딩 유닛 (207) 의 일 예의 추가적인 상세들은 도 11 을 참조하여 이하에서 논의된다. 다른 예로서, 벡터 디코딩 유닛 (207) 은 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로부터 공간 포지셔닝 벡터들 (72) 을 결정할 수도 있다. 미리-결정된 소스 라우드스피커 셋업들에 대한 공간 포지셔닝 벡터들을 포함하는 코드북에서의 인덱스들로부터 공간 포지셔닝 벡터들을 결정하는 벡터 디코딩 유닛 (207) 의 일 예의 추가적인 상세들은 도 12 를 참조하여 이하에서 논의된다.
임의의 경우에서, 벡터 디코딩 유닛 (207) 은 공간 포지셔닝 벡터들 (72) 을 오디오 디코딩 디바이스 (22B) 의 하나 이상의 다른 컴포넌트들, 예컨대 HOA 생성 유닛 (208A) 에 제공할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22B) 는 코딩된 오디오 비트스트림을 저장하도록 구성된 메모리 (예를 들어, 메모리 (200)) 를 포함할 수도 있다. 오디오 디코딩 디바이스 (22B) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 코딩된 오디오 신호 (62)) 의 표현을 획득하고; 소스 라우드스피커 구성 (예를 들어, 공간 포지셔닝 벡터들 (72)) 에 기초하는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터 (SPV) 들의 표현을 획득하며; 멀티-채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드 (예를 들어, HOA 계수들 (212A)) 를 생성하도록 구성되고, 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 더 포함할 수도 있다.
도 11 은 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛 (207) 의 예시의 구현을 예시하는 블록도이다. 도 11 의 예에서, 벡터 디코딩 유닛 (207) 의 예시의 구현은 벡터 디코딩 유닛 (207A) 으로 라벨링된다. 도 11 의 예에서, 벡터 디코딩 유닛 (207) 은 렌더링 포맷 유닛 (250), 벡터 생성 유닛 (252), 메모리 (254), 및 복원 유닛 (256) 을 포함한다. 다른 예들에서, 벡터 디코딩 유닛 (207) 은 더 많은, 더 적은, 또는 상이한 컴포넌트들을 포함할 수도 있다.
렌더링 포맷 유닛 (250) 은 도 6 의 렌더링 포맷 유닛 (110) 의 것과 유사한 방식으로 동작할 수도 있다. 렌더링 포맷 유닛 (110) 과 함께, 렌더링 포맷 유닛 (250) 은 소스 라우드스피커 셋업 정보 (48) 를 수신할 수도 있다. 일부 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 비트스트림으로부터 획득된다. 다른 예들에서, 소스 라우드스피커 셋업 정보 (48) 는 오디오 디코딩 디바이스 (22) 에서 미리구성된다. 또한, 렌더링 포맷 유닛 (110) 과 같이, 렌더링 포맷 유닛 (250) 은 소스 렌더링 포맷 (258) 을 생성할 수도 있다. 소스 렌더링 포맷 (258) 은 렌더링 포맷 유닛 (110) 에 의해 생성된 소스 렌더링 포맷 (116) 에 일치할 수도 있다.
벡터 생성 유닛 (252) 은 도 6 의 벡터 생성 유닛 (112) 의 것과 유사한 방식으로 동작할 수도 있다. 벡터 생성 유닛 (252) 은 소스 렌더링 포맷 (258) 을 사용하여, 공간 벡터들 (260) 의 세트를 결정할 수도 있다. 공간 벡터들 (260) 은 벡터 생성 유닛 (112) 에 의해 생성된 공간 벡터들 (118) 에 일치할 수도 있다. 메모리 (254) 는 코드북 (262) 을 저장할 수도 있다. 메모리 (254) 는 벡터 디코딩 유닛 (206) 과는 별개일 수도 있고, 오디오 디코딩 디바이스 (22) 의 일반적인 메모리의 부분을 형성할 수도 있다. 코드북 (262) 은 엔트리들의 세트를 포함하고, 이 엔트리들 각각은 개별의 코드-벡터 인덱스를 공간 벡터들 (260) 의 세트의 개별의 공간 벡터에 맵핑한다. 코드북 (262) 은 도 6 의 코드북 (120) 에 일치할 수도 있다.
복원 유닛 (256) 은 소스 라우드스피커 셋업의 특정 라우드스피커들에 대응하는 것으로서 식별된 공간 벡터들을 출력할 수도 있다. 예를 들어, 복원 유닛 (256) 은 공간 벡터들 (72) 을 출력할 수도 있다.
도 12 는 본 개시물의 하나 이상의 기법들에 따른, 벡터 디코딩 유닛 (207) 의 대안의 구현을 예시하는 블록도이다. 도 12 의 예에서, 벡터 디코딩 유닛 (207) 의 예시의 구현은 벡터 디코딩 유닛 (207B) 으로 라벨링된다. 벡터 디코딩 유닛 (207) 은 코드북 라이브러리 (300) 및 복원 유닛 (304) 을 포함한다. 코드북 라이브러리 (300) 는 메모리를 사용하여 구현될 수도 있다. 코드북 라이브러리 (300) 는 하나 이상의 미리정의된 코드북들 (302A-302N) (총괄하여, "코드북들 (302")) 을 포함한다. 코드북들 (302) 의 각각의 개별 코드북은 하나 이상의 엔트리들의 세트를 포함한다. 각각의 개별 엔트리는 개별의 코드-벡터 인덱스를 개별의 공간 벡터에 맵핑한다. 코드북 라이브러리 (300) 는 도 9 의 코드북 라이브러리 (150) 에 일치할 수도 있다.
도 12 의 예에서, 복원 유닛 (304) 은 소스 라우드스피커 셋업 정보 (48) 를 획득한다. 도 9 의 선택 유닛 (154) 과 유사한 방식으로, 복원 유닛 (304) 은 소스 라우드스피커 셋업 정보 (48) 를 사용하여, 코드북 라이브러리 (300) 에서 적용 가능한 코드북을 식별할 수도 있다. 복원 유닛 (304) 은 소스 라우드스피커 셋업 정보의 라우드스피커들에 대한 적용 가능한 코드북에서 지정된 공간 벡터들을 출력할 수도 있다.
도 13 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 가 객체-기반 오디오 데이터를 인코딩하도록 구성되는 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 13 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 14C 로 라벨링된다. 도 13 의 예에서, 오디오 인코딩 디바이스 (14C) 는 벡터 인코딩 유닛 (68C), 비트스트림 생성 유닛 (52C), 및 메모리 (54) 를 포함한다.
도 13 의 예에서, 벡터 인코딩 유닛 (68C) 은 소스 라우드스피커 셋업 정보 (48) 를 획득한다. 또한, 벡터 인코딩 유닛 (58C) 은 오디오 객체 포지션 정보 (350) 를 획득한다. 오디오 객체 포지션 정보 (350) 는 오디오 객체의 가상 포지션을 지정한다. 벡터 인코딩 유닛 (68B) 은 소스 라우드스피커 셋업 정보 (48) 및 오디오 객체 포지션 정보 (350) 를 사용하여, 오디오 객체에 대한 공간 벡터 표현 데이터 (71B) 를 결정한다. 이하에서 상세히 설명된 도 14 는 벡터 인코딩 유닛 (68C) 의 예시의 구현을 설명한다.
비트스트림 생성 유닛 (52C) 은 오디오 객체에 대한 오디오 신호 (50B) 를 획득한다. 비트스트림 생성 유닛 (52C) 은 비트스트림 (56C) 에서 공간 벡터 표현 데이터 (71B) 및 오디오 신호 (50C) 를 나타내는 데이터를 포함할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52C) 은 MP3, AAC, 보비스 (Vorbis), FLAC, 및 오푸스 (Opus) 와 같은 알려진 오디오 압축 포맷을 사용하여 오디오 신호 (50B) 를 인코딩할 수도 있다. 일부 경우들에서, 비트스트림 생성 유닛 (52C) 은 오디오 신호 (50B) 를 하나의 압축 포맷에서 다른 포맷으로 트랜스코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14C) 는 도 3 및 도 5 의 오디오 인코딩 유닛 (51) 과 같은 오디오 인코딩 유닛을 포함하여, 오디오 신호 (50B) 를 압축 및/또는 트랜스코딩할 수도 있다. 도 13 의 예에서, 메모리 (54) 는 오디오 인코딩 디바이스 (14C) 에 의한 출력 전에 비트스트림 (56C) 의 적어도 일부들을 저장한다.
따라서, 오디오 인코딩 디바이스 (14C) 는 시간 인터벌 동안 오디오 객체의 오디오 신호 (예를 들어, 오디오 신호 (50B)) 및 오디오 객체의 가상 소스 로케이션을 나타내는 데이터 (예를 들어, 오디오 객체 포지션 정보 (350)) 저장하도록 구성된 메모리를 포함한다. 또한, 오디오 인코딩 디바이스 (14C) 는 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함한다. 하나 이상의 프로세서들은, 오디오 객체에 대한 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터 (예를 들어, 소스 라우드스피커 셋업 정보 (48)) 에 기초하여, HOA 도메인에서 오디오 객체의 공간 벡터를 결정하도록 구성된다. 또한, 일부 예들에서 오디오 인코딩 디바이스 (14C) 는, 비트스트림에서, 공간 벡터를 나타내는 데이터 및 오디오 신호를 나타내는 데이터를 포함할 수도 있다. 일부 예들에서, 오디오 신호를 나타내는 데이터는 HOA 도메인에서 데이터의 표현이 아니다. 또한, 일부 예들에서, 시간 인터벌 동안 오디오 신호를 포함하는 사운드필드를 설명하는 HOA 계수들의 세트는 오디오 신호 곱하기 공간 벡터의 트랜스포즈와 동일하다.
부가적으로, 일부 예들에서 공간 벡터 표현 데이터 (71B) 는 소스 라우드스피커 셋업에서 라우드스피커들의 로케이션들을 나타내는 데이터를 포함할 수도 있다. 비트스트림 생성 유닛 (52C) 은 비트스트림 (56C) 에서 소스 라우드스피커 셋업의 라우드스피커들의 로케이션들을 나타내는 데이터를 포함할 수도 있다. 다른 예들에서, 비트스트림 생성 유닛 (52C) 은 비트스트림 (56C) 에서 소스 라우드스피커 셋업의 라우드스피커들의 로케이션들을 나타내는 데이터를 포함하지 않는다.
도 14 는 본 개시물의 하나 이상의 기법들에 따른, 객체-기반 오디오 데이터에 대한 벡터 인코딩 유닛 (68C) 의 예시의 구현을 예시하는 블록도이다. 도 14 의 예에서, 벡터 인코딩 유닛 (68C) 은 렌더링 포맷 유닛 (400), 중간 벡터 유닛 (402), 벡터 완결 유닛 (404), 이득 결정 유닛 (406), 및 양자화 유닛 (408) 을 포함한다.
도 14 의 예에서, 렌더링 포맷 유닛 (400) 은 소스 라우드스피커 셋업 정보 (48) 를 획득한다. 렌더링 포맷 유닛 (400) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 소스 렌더링 포맷 (410) 을 결정한다. 렌더링 포맷 유닛 (400) 은 본 개시물의 다른 곳에서 제공된 예들 중 하나 이상에 따라 소스 렌더링 포맷 (410) 을 결정할 수도 있다.
도 14 의 예에서, 중간 벡터 유닛 (402) 은 소스 렌더링 포맷 (410) 에 기초하여 중간 공간 벡터들 (412) 의 세트를 결정한다. 중간 공간 벡터들 (412) 의 세트의 각각의 개별의 중간 공간 벡터는 소스 라우드스피커 셋업의 개별의 라우드스피커에 대응한다. 예를 들어, 소스 라우드스피커 셋업에서 N 개의 라우드스피커들이 존재하면, 중간 벡터 유닛 (402) 은 N 개의 중간 공간 벡터들을 결정한다. 소스 라우드스피커 셋업에서 각각의 라우드스피커 n 에 대해 (여기서, n 은 1 내지 N 의 범위임), 라우드스피커에 대한 중간 공간 벡터는
Figure pct00079
와 동일할 수도 있다. 이 식에서, D 는 매트릭스로서 표현된 소스 렌더링 포맷이고 A n N 과 동일한 수의 엘리먼트들의 단일 로우로 이루어진 매트릭스이다. A n 에서의 각각의 엘리먼트는, 그 값이 1 과 동일한 하나의 엘리먼트를 제외하고 0 과 동일하다. 1 과 동일한 엘리먼트의 A n 내의 포지션의 인덱스는 n 과 동일하다.
또한, 도 14 의 예에서, 이득 결정 유닛 (406) 은 소스 라우드스피커 셋업 정보 (48) 및 오디오 객체 로케이션 데이터 (49) 를 획득한다. 오디오 객체 로케이션 데이터 (49) 는 오디오 객체의 가상 로케이션을 지정한다. 예를 들어, 오디오 객체 로케이션 데이터 (49) 는 오디오 객체의 구면 좌표들을 지정할 수도 있다. 도 14 의 예에서, 이득 결정 유닛 (406) 은 이득 팩터들 (416) 의 세트를 결정한다. 이득 팩터들 (416) 의 세트의 각각의 개별의 이득 팩터는 소스 라우드스피커 셋업의 개별의 라우드스피커에 대응한다. 이득 결정 유닛 (406)은 벡터 기반 진폭 패닝 (vector base amplitude panning; VBAP) 을 사용하여, 이득 팩터들 (416) 을 결정할 수도 있다. VBAP 는 청취 포지션으로부터 라우드스피커들의 동일한 거리가 가정되는 경우의 임의의 라우드스피커 셋업으로 가상 오디오 소스들을 배치하는데 사용될 수도 있다. Pulkki 의, 『"Virtual Sound Source Positioning Using Vector Base Amplitude Panning," Journal of Audio Engineering Society, Vol. 45, No. 6, June 1997』은 VBAP 의 설명을 제공한다.
도 15 는 VBAP 를 예시하는 개념도이다. VBAP 에서, 3 개의 스피커들에 의해 출력된 오디오 신호에 적용된 이득 팩터들은, 오디오 신호가 3 개의 라우드스피커들 사이의 액티브 삼각형 (452) 내에 위치된 가상의 소스 포지션 (450) 에서 나온다는 것을, 리스너를 속여 감지하게 한다. 가상의 소스 포지션 (450) 은 오디오 객체의 로케이션 좌표들로 나타낸 포지션일 수 있다. 예를 들어, 도 15 의 예에서 가상 소스 포지션 (450) 은 라우드스피커 (454B) 보다 라우드스피커 (454A) 에 더 가깝다. 따라서, 라우드스피커 (454A) 에 대한 이득 팩터는 라우드스피커 (454B) 에 대한 이득 팩터보다 더 클 수도 있다. 더 많은 수들의 라우드스피커들을 갖거나 또는 2 개의 라우드스피커들을 갖는 다른 예들이 가능하다.
VBAP 는 기하학적 접근을 사용하여 이득 팩터들 (416) 을 계산한다. 각각의 오디오 객체에 대해 3 개의 라우드스피커들이 사용되는 도 15 와 같은 예들에서, 3 개의 라우드스피커들은 삼각형으로 배열되어 벡터 베이스를 형성한다. 각각의 벡터 베이스는 단위 길이로 표준화된 카테시안 좌표들로 주어진 라우드스피커 수들 (k, m, n) 및 라우드스피커 포지션 벡터들 (I k , I m I n ) 에 의해 식별된다. 라우드스피커들 (k, m, n) 에 대한 벡터 베이스는 다음에 의해 정의될 수도 있다:
Figure pct00080
오디오 객체의 원하는 방향
Figure pct00081
은 방위각 (
Figure pct00082
) 및 고도각 (
Figure pct00083
) 으로서 주어질 수도 있다.
Figure pct00084
는 오디오 객체의 로케이션 좌표일 수 있다. 카테시안 좌표들의 가상 소스의 단위 길이 포지션 벡터
Figure pct00085
는 따라서 다음에 의해 정의된다:
Figure pct00086
가상 소스 포지션은 벡터 베이스 및 이득 팩터들
Figure pct00087
을 갖고 다음에 의해 표현될 수도 있다
Figure pct00088
벡터 기반 매트릭스를 인버팅함으로써, 요구된 이득 팩터들은 다음에 의해 연산될 수 있다:
Figure pct00089
사용될 벡터 베이스는 식 (36) 에 따라 결정된다. 먼저, 이득들은 모든 벡터 베이스들에 대해 식 (36) 에 따라 계산된다. 후속으로, 각각의 벡터 베이스에 대해, 이득 팩터들에 대한 최소값은
Figure pct00090
Figure pct00091
에 의해 평가된다.
Figure pct00092
이 최고 값을 갖는 벡터 베이스가 사용된다. 일반적으로, 이득 팩터들은 네거티브이도록 허용되지 않는다. 청취 룸의 음향에 따라, 이득 팩터들은 에너지 보존을 위해 표준화될 수도 있다.
도 14 의 예에서, 벡터 완결 유닛 (404) 은 이득 팩터들 (416) 을 획득한다. 벡터 완결 유닛 (404) 은, 중간 공간 벡터들 (412) 및 이득 팩터들 (416) 에 기초하여, 오디오 객체에 대한 공간 벡터 (418) 를 생성한다. 일부 예들에서, 벡터 완결 유닛 (404) 은 다음의 식을 사용하여 공간 벡터를 결정한다:
Figure pct00093
상기 식에서, V 는 공간 벡터이고, N 은 소스 라우드스피커 셋업에서의 라우드스피커들의 수이고, g i 는 라우드스피커 i 에 대한 이득 팩터이며, I i 은 라우드스피커 i 에 대한 중간 공간 벡터이다. 이득 결정 유닛 (406) 이 3 개의 라우드스피커들을 갖는 VBAP 를 사용하는 일부 예들에서, 이득 팩터들 (g i ) 중 단지 3 개가 넌-제로이다.
따라서, 벡터 완결 유닛 (404) 이 식 (37) 을 사용하여 공간 벡터 (418) 를 결정하는 예에서, 공간 벡터 (418) 는 복수의 피연산자들의 합에 동일하다. 복수의 피연산자들의 각각의 개별의 피연산자는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응한다. 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 복수의 라우드스피커 로케이션 벡터들은 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함한다. 또한, 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 개별의 라우드스피커 로케이션에 대응하는 피연산자는 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하다. 이 예에서, 개별의 라우드스피커 로케이션에 대한 이득 팩터는 개별의 라우드스피커 로케이션에서 오디오 신호에 대한 개별의 이득을 나타낸다.
따라서, 이 예에서, 공간 벡터 (418) 는 복수의 피연산자들의 합과 동일하다. 복수의 피연산자들의 각각의 개별의 피연산자는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응한다. 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 복수의 라우드스피커 로케이션 벡터들은 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함한다. 또한, 개별의 라우드스피커 로케이션에 대응하는 피연산자는 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하다. 이 예에서, 개별의 라우드스피커 로케이션에 대한 이득 팩터는 개별의 라우드스피커 로케이션에서 오디오 신호에 대한 개별의 이득을 나타낸다.
요약하면, 일부 예들에서, 비디오 인코딩 유닛 (68C) 의 렌더링 포맷 유닛 (400) 은 소스 라우드스피커 로케이션들에서 라우드스피커들에 대한 라우드스피커 피드들로 HOA 계수들의 세트를 렌더링하기 위한 렌더링 포맷을 결정할 수 있다. 또한, 벡터 완결 유닛 (404) 은 복수의 라우드스피커 로케이션 벡터들을 결정할 수 있다. 복수의 라우드스피커 위치 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응할 수 있다. 복수의 라우드스피커 로케이션 벡터를 결정하기 위해, 이득 결정 유닛 (406) 은, 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대하여, 오디오 객체의 로케이션 좌표들에 기초하여 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정할 수 있다. 개별의 라우드스피커 로케이션에 대한 이득 팩터는 개별의 라우드스피커 로케이션에서의 오디오 신호에 대한 개별의 이득을 나타낼 수 있다. 또한, 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 오디오 객체의 로케이션 좌표들에 기초하여, 중간 벡터 유닛 (402) 을 결정하는 것은 렌더링 포맷에 기초하여 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터를 결정할 수 있다. 벡터 완결 유닛 (404) 은 공간 벡터를 복수의 피연산자들의 합으로서 결정할 수 있으며, 복수의 피연산자들의 각각의 개별의 피연산자는 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응한다. 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 개별의 라우드스피커 로케이션에 대응하는 피연산자는 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터와 동등하다.
양자화 유닛 (408) 은 오디오 객체에 대한 공간 벡터를 양자화한다. 예를 들어, 양자화 유닛 (408) 은 본 개시물의 다른 곳에서 설명된 벡터 양자화 기법들에 따라 공간 벡터를 양자화할 수도 있다. 예를 들어, 양자화 유닛 (408) 은 도 17 과 관련하여 설명된 스칼라 양자화, 호프만 코딩을 갖는 스칼라 양자화, 또는 벡터 양자화 기법들을 사용하여 공간 벡터 (418) 를 양자화할 수도 있다. 따라서, 비트스트림 (70C) 에 포함되는 공간 벡터를 나타내는 데이터는 양자화된 공간 벡터이다.
위에서 논의된 바와 같이, 공간 벡터 (418) 는 복수의 피연산자들의 합과 동일하거나 또는 동등할 수도 있다. 본 개시물의 목적을 위해, (1) 제 1 엘리먼트의 값이 제 2 엘리먼트의 값과 수학적으로 동일한 것, (2) (예를 들어, 비트 심도, 레지스터 한계들, 부동 소수점 표현, 고정 소수점 표현, 바이너리-코딩된 십진법 표현 등으로 인해) 라운딩되는 경우의 제 1 엘리먼트의 값이, (예를 들어, 비트 심도, 레지스터 한계들, 부동-소수점 표현, 고정 소수점 표현, 바이너리-코딩된 십진법 표현 등으로 인해) 라운딩 되는 경우의 제 2 엘리먼트의 값과 동일한 것, 또는 (3) 제 1 엘리먼트의 값이 제 2 엘리먼트의 값과 동일한 것 중 어느 하나가 참인 경우, 제 1 엘리먼트는 제 2 엘리먼트와 동등한 것으로 간주될 수도 있다.
도 16 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스 (22) 가 객체-기반 오디오 데이터를 디코딩하도록 구성되는 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 16 에 도시된 오디오 디코딩 디바이스 (22) 의 예시의 구현은 22C 로 라벨링된다. 도 16 의 예에서, 오디오 디코딩 디바이스 (22C) 는 메모리 (200), 디멀티플렉싱 유닛 (202C), 오디오 디코딩 유닛 (66), 벡터 디코딩 유닛 (209), HOA 생성 유닛 (208B), 및 렌더링 유닛 (210) 을 포함한다. 일반적으로, 메모리 (200), 디멀티플렉싱 유닛 (202C), 오디오 디코딩 유닛 (66), HOA 생성 유닛 (208B), 및 렌더링 유닛 (210) 은 도 10 의 예의 메모리 (200), 디멀티플렉싱 유닛 (202B), 오디오 디코딩 유닛 (204), HOA 생성 유닛 (208A), 및 렌더링 유닛 (210) 과 관련하여 설명된 것과 유사한 방식으로 동작할 수도 있다. 다른 예들에서, 도 14 와 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현은 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 베이스 또는 위성 디바이스에서 구현될 수도 있다.
도 16 의 예에서, 오디오 디코딩 디바이스 (22C) 는 비트스트림 (56C) 을 획득한다. 비트스트림 (56C) 은 오디오 객체의 인코딩된 객체-기반 오디오 신호 및 오디오 객체의 공간 벡터를 나타내는 데이터를 포함할 수도 있다. 도 16 의 예에서, 객체-기반 오디오 신호는 HOA 도메인에서의 데이터에 기초, 데이터로부터 도출, 또는 데이터를 나타내지 않는다. 그러나, 오디오 객체의 공간 벡터는 HOA 도메인에 있다. 도 16 의 예에서, 메모리 (200) 는 비트스트림 (56C) 의 적어도 일부들을 저장하도록 구성되고, 따라서 오디오 객체의 공간 벡터를 나타내는 데이터 및 오디오 객체의 오디오 신호를 나타내는 데이터를 저장하도록 구성된다.
디멀티플렉싱 유닛 (202C) 은 비트스트림 (56C) 으로부터 공간 벡터 표현 데이터 (71B) 를 획득할 수도 있다. 공간 벡터 표현 데이터 (71B) 는 각각의 오디오 객체에 대한 공간 벡터들을 나타내는 데이터를 포함한다. 따라서, 디멀티플렉싱 유닛 (202C) 은, 비트스트림 (56C) 으로부터 오디오 객체의 오디오 신호를 나타내는 데이터를 획득할 수도 있고, 비트스트림 (56C) 으로부터 오디오 객체에 대한 공간 벡터를 나타내는 데이터를 획득할 수도 있다. 예들에서, 예컨대 공간 벡터들을 나타내는 데이터가 양자화되는 경우에서, 벡터 디코딩 유닛 (209) 은 공간 벡터들을 역 양자화하여, 오디오 객체들의 공간 벡터들 (72) 을 결정할 수도 있다.
HOA 생성 유닛 (208B) 은 그 후, 도 10 과 관련하여 설명된 방식으로 공간 벡터들 (72) 을 사용할 수도 있다. 예를 들어, HOA 생성 유닛 (208B) 은 공간 벡터들 (72) 및 오디오 신호 (70) 에 기초하여 HOA 사운드필드, 예컨대 HOA 계수들 (212B) 을 생성할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22B) 는 비트스트림을 저장하도록 구성된 메모리 (58) 를 포함한다. 부가적으로, 오디오 디코딩 디바이스 (22B) 는 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함한다. 하나 이상의 프로세서들은, 비트스트림에서의 데이터에 기초하여, 오디오 객체의 오디오 신호를 결정하도록 구성되고, 오디오 신호는 시간 인터벌에 대응한다. 또한, 하나 이상의 프로세서들은 비트스트림에서의 데이터에 기초하여, 오디오 객체에 대한 공간 벡터를 결정하도록 구성된다. 이 예에서, 공간 벡터는 HOA 도메인에서 정의된다. 또한, 일부 예들에서, 하나 이상의 프로세서들은 오디오 객체의 오디오 신호 및 공간 벡터를 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수들 (212B) 의 세트로 컨버팅한다. 본 개시물의 다른 곳에서 설명된 바와 같이, HOA 생성 유닛 (208B) 은, HOA 계수들의 세트가 오디오 신호 곱하기 공간 벡터의 트랜스포즈와 동등하도록 HOA 계수들의 세트를 결정할 수도 있다.
도 16 의 예에서, 렌더링 유닛 (210) 은 도 10 의 렌더링 유닛 (210) 과 유사한 방식으로 동작할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 렌더링 포맷 (예를 들어, 로컬 렌더링 매트릭스) 를 HOA 계수들 (212B) 에 적용함으로써 복수의 오디오 신호들 (26) 을 생성할 수도 있다. 복수의 오디오 신호들 (26) 의 각각의 개별의 오디오 신호는 도 1 의 라우드스피커들 (24) 과 같은 복수의 라우드스피커들에서 개별의 라우드스피커에 대응할 수도 있다.
일부 예들에서, 렌더링 유닛 (210B) 은 로컬 라우드스피커 셋업의 로케이션들을 나타내는 정보 (28) 에 기초하여 로컬 렌더링 포맷을 적응시킬 수도 있다. 렌더링 유닛 (210B) 은 도 19 와 관련하여 이하에서 설명된 방식으로 로컬 렌더링 포맷을 적응시킬 수도 있다.
도 17 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스 (14) 가 공간 벡터들을 양자화하도록 구성되는 오디오 인코딩 디바이스 (14) 의 예시의 구현을 예시하는 블록도이다. 도 17 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현은 14D 로 라벨링된다. 도 17 의 예에서, 오디오 인코딩 디바이스 (14D) 는 벡터 인코딩 유닛 (68D), 양자화 유닛 (500), 비트스트림 생성 유닛 (52D), 및 메모리 (54) 를 포함한다.
도 17 의 예에서, 벡터 인코딩 유닛 (68D) 은 도 5 및/또는 도 13 과 관련하여 전술된 것과 유사한 방식으로 동작할 수도 있다. 예를 들어, 오디오 인코딩 디바이스 (14D) 가 채널-기반 오디오를 인코딩하고 있으면, 벡터 인코딩 유닛 (68D) 은 소스 라우드스피커 셋업 정보 (48) 를 획득할 수도 있다. 벡터 인코딩 유닛 (68) 은 소스 라우드스피커 셋업 정보 (48) 에 의해 지정된 라우드스피커들의 포지션들에 기초하여 공간 벡터들의 세트를 결정할 수도 있다. 오디오 인코딩 디바이스 (14D) 가 객체-기반 오디오를 인코딩하고 있으면, 벡터 인코딩 유닛 (68D) 은 소스 라우드스피커 셋업 정보 (48) 에 추가하여 오디오 객체 포지션 정보 (350) 를 획득할 수도 있다. 오디오 객체 포지션 정보 (49) 는 오디오 객체의 가상 소스 로케이션을 지정할 수도 있다. 이 예에서, 공간 벡터 유닛 (68D) 은, 도 13 의 예에 도시된 벡터 인코딩 유닛 (68C) 이 오디오 객체에 대한 공간 벡터를 결정하는 동일한 방식으로 오디오 객체에 대한 공간 벡터를 결정할 수도 있다. 일부 예들에서, 공간 벡터 유닛 (68D) 은 채널-기반 오디오 및 객체-기반 오디오 양자 모두에 대한 공간 벡터들을 결정하도록 구성된다. 다른 예들에서, 벡터 인코딩 유닛 (68D) 은 채널-기반 오디오 또는 객체-기반 오디오 중 단지 하나에 대한 공간 벡터들을 결정하도록 구성된다.
오디오 인코딩 디바이스 (14D) 의 양자화 유닛 (500) 은 벡터 인코딩 유닛 (68C) 에 의해 결정된 공간 벡터들을 양자화한다. 양자화 유닛 (500) 은 다양한 양자화 기법들을 사용하여 공간 벡터를 양자화할 수도 있다. 양자화 유닛 (500) 은 단지 단일 양자화 기법을 수행하도록 구성될 수도 있고, 또는 다중 양자화 기법들을 수행하도록 구성될 수도 있다. 양자화 유닛 (500) 이 다중 양자화 기법들을 수행하도록 구성되는 예들에서, 양자화 유닛 (500) 은 양자화 기법들 중 어느 것을 사용할지를 나타내는 데이터를 수신할 수도 있고, 또는 양자화 기법들 중 어느 것을 적용할지를 내부적으로 결정할 수도 있다.
일 예시의 양자화 기법에서, 공간 벡터는 채널에 대한 벡터 인코딩 유닛 (68D) 에 의해 생성될 수도 있고 또는 객체 (i) 는 V i 로 표기된다. 이 예에서, 양자화 유닛 (500) 은,
Figure pct00094
Figure pct00095
와 동등하도록 중간 공간 벡터
Figure pct00096
를 계산할 수도 있고, 여기서
Figure pct00097
은 양자화 스텝 사이즈일 수도 있다. 또한, 이 예에서, 양자화 유닛 (500) 은 중간 공간 벡터
Figure pct00098
를 양자화할 수도 있다. 중간 공간 벡터
Figure pct00099
의 양자화된 버전은
Figure pct00100
로 표기될 수도 있다. 또한, 양자화 유닛 (500) 은
Figure pct00101
를 양자화할 수도 있다.
Figure pct00102
의 양자화된 버전은
Figure pct00103
로 표기될 수도 있다. 양자화 유닛 (500) 은 비트스트림 (56D) 에 포함을 위해
Figure pct00105
을 출력할 수도 있다. 따라서, 양자화 유닛 (500) 은 오디오 신호 (50D) 에 대한 양자화된 벡터 데이터의 세트를 출력할 수도 있다. 오디오 신호 (50C) 에 대한 양자화된 벡터 데이터의 세트는
Figure pct00106
Figure pct00107
을 포함할 수도 있다.
양자화 유닛 (500) 은 다양한 방식들로 중간 공간 벡터
Figure pct00108
를 양자화할 수도 있다. 일 예에서, 양자화 유닛 (500) 은 스칼라 양자화 (SQ) 를 중간 공간 벡터
Figure pct00109
에 적용할 수도 있다. 다른 예시의 양자화 기법에서, 양자화 유닛 (200) 은 허프만 코딩을 갖는 스칼라 양자화를 중간 공간 벡터
Figure pct00110
에 적용할 수도 있다. 다른 예시의 양자화 기법에서, 양자화 유닛 (200) 은 벡터 양자화를 중간 공간 벡터
Figure pct00111
에 적용할 수도 있다. 양자화 유닛 (200) 이 스칼라 양자화 기법, 스칼라 양자화 플러스 허프만 코딩 기법, 또는 벡터 양자화 기법을 적용하는 예들에서, 오디오 디코딩 디바이스 (22) 는 양자화된 공간 벡터를 역 양자화할 수도 있다.
개념적으로, 스칼라 양자화에서, 수 라인은 복수의 대역들로 분할되고, 대역들 각각은 상이한 스칼라 값에 대응한다. 양자화 유닛 (500) 이 스칼라 양자화를 중간 공간 벡터
Figure pct00112
에 적용하는 경우, 양자화 유닛 (500) 은 개별의 엘리먼트에 의해 지정된 값을 포함하는 대역에 대응하는 스칼라 값으로 중간 공간 벡터
Figure pct00113
의 각각의 개별의 엘리먼트를 대체한다. 설명의 용이함을 위해, 본 개시물은 공간 벡터들의 엘리먼트들에 의해 지정된 값들을 포함하는 대역들에 대응하는 스칼라 값들을 "양자화된 값들" 로서 지칭할 수도 있다. 이 예에서, 양자화 유닛 (500) 은 양자화된 값들을 포함하는 양자화된 공간 벡터
Figure pct00114
를 출력할 수도 있다.
스칼라 양자화 플러스 허프만 코딩 기법은 스칼라 양자화 기법과 유사할 수도 있다. 그러나, 양자화 유닛 (500) 은 부가적으로, 양자화된 값들 각각에 대한 허프만 코드를 결정한다. 양자화 유닛 (500) 은 공간 벡터의 양자화된 값들을 대응하는 허프만 코드들로 대체한다. 따라서, 양자화된 공간 벡터
Figure pct00115
의 각각의 엘리먼트는 허프만 코드를 지정한다. 허프만 코딩은, 엘리먼트들 각각이 데이터 압축을 증가시킬 수도 있는 고정 길이 값 대신에 가변 길이 값으로서 표현되는 것을 허용한다. 오디오 디코딩 디바이스 (22D) 는 허프만 코드들에 대응하는 양자화된 값들을 결정하고 양자화된 값들을 그 원래의 비트 심도들에 재저장함으로써 공간 벡터의 역 양자화된 버전을 결정할 수도 있다.
양자화 유닛 (500) 이 중간 공간 벡터
Figure pct00116
에 벡터 양자화를 적용하는 적어도 일부 예들에서, 양자화 유닛 (500) 은 중간 공간 벡터
Figure pct00117
를 더 낮은 디멘전의 별개의 서브공간에서 값들의 세트로 변환할 수도 있다. 설명의 용이함을 위해, 본 개시물은 더 낮은 디멘전의 별개의 서브공간을 "감소된 디멘전 세트" 로서 그리고 공간 벡터의 원래의 디멘전들을 "풀 디멘전 세트" 로서 지칭할 수도 있다. 예를 들어, 풀 디멘전 세트는 22 개의 디멘전들로 이루어질 수도 있고 감소된 디멘전 세트는 8 개의 디멘전들로 이루어질 수도 있다. 따라서, 이 경우에서, 양자화 유닛 (500) 은 중간 공간 벡터
Figure pct00118
를 22 개의 값들의 세트로부터 8 개의 값들의 세트로 변환한다. 이 변환은 공간 벡터의 상위-디멘전 공간으로부터 하위 디멘전의 서브 공간으로의 프로젝션의 형태를 취할 수도 있다.
양자화 유닛 (500) 이 벡터 양자화를 적용하는 적어도 일부 예들에서, 양자화 유닛 (500) 은 엔트리들의 세트를 포함하는 코드북으로 구성된다. 코드북은 미리정의되거나 또는 동적으로 결정될 수도 있다. 코드북은 공간 벡터들의 통계적 분석에 기초할 수도 있다. 코드북에서의 각각의 엔트리는 하위-디멘전 서브공간에서의 포인트를 나타낸다. 풀 디멘전 세트로부터 감소된 디멘전 세트로 공간 벡터를 변환한 후에, 양자화 유닛 (500) 은 변환된 공간 벡터에 대응하는 코드북 엔트리를 결정할 수도 있다. 코드북에서의 코드북 엔트리들 중에서, 변환된 공간 벡터에 대응하는 코드북 엔트리는 변환된 공간 벡터에 의해 지정된 포인트에 가장 가까운 포인트를 지정한다. 일 예에서, 양자화 유닛 (500) 은 식별된 코드북 엔트리에 의해 지정된 벡터를 양자화된 공간 벡터로서 출력한다. 다른 예에서, 양자화 유닛 (200) 은 변환된 공간 벡터에 대응하는 코드북 엔트리의 인덱스를 지정하는 코드-벡터 인덱스의 형태로 양자화된 공간 벡터를 출력한다. 예를 들어, 변환된 공간 벡터에 대응하는 코드북 엔트리가 코드북에서 8 번째 엔트리이면, 코드-벡터 인덱스는 8 과 동일할 수도 있다. 이 예에서, 오디오 코딩 디바이스 (22) 는 코드북에서 대응하는 엔트리를 검색함으로써 코드-벡터 인덱스를 역 양자화할 수도 있다. 오디오 디코딩 디바이스 (22D) 는 풀 디멘전 세트에 있지만 감소된 디멘전 세트에 있지 않은 공간 벡터의 컴포넌트들이 0 과 동일하다고 가정함으로써 공간 벡터의 역 양자화된 버전을 결정할 수도 있다.
도 17 의 예에서, 오디오 인코딩 디바이스 (14D) 의 비트스트림 생성 유닛 (52D) 은 양자화 유닛 (200) 으로부터 양자화된 공간 벡터들 (204) 을 획득하고, 오디오 신호들 (50C) 을 획득하며, 비트스트림 (56D) 을 출력한다. 오디오 인코딩 디바이스 (14D) 가 채널-기반 오디오를 인코딩하고 있는 예들에서, 비트스트림 생성 유닛 (52D) 은 각각의 개별의 채널에 대한 오디오 신호 및 양자화된 공간 벡터를 획득할 수도 있다. 오디오 인코딩 디바이스 (14) 가 객체-기반 오디오를 인코딩하고 있는 예들에서, 비트스트림 생성 유닛 (52D) 은 각각의 개별의 객체에 대한 오디오 신호 및 양자화된 공간 벡터를 획득할 수도 있다. 일부 예들에서, 비트스트림 생성 유닛 (52D) 은 더 좋은 데이터 압축을 위해 오디오 신호들 (50C) 을 인코딩할 수도 있다. 예를 들어, 비트스트림 생성 유닛 (52D) 은 MP3, AAC, 보비스, FLAC, 및 오푸스와 같은 알려진 오디오 압축 포맷을 사용하여 오디오 신호들 (50C) 각각을 인코딩할 수도 있다. 일부 경우들에서, 비트스트림 생성 유닛 (52C) 은 오디오 신호들 (50C) 을 하나의 압축 포맷에서 다른 포맷으로 트랜스코딩할 수도 있다. 비트스트림 생성 유닛 (52D) 은 인코딩된 오디오 신호들을 동반하는 메타데이터로서 비트스트림 (56C) 에서 양자화된 공간 벡터들을 포함할 수도 있다.
따라서, 오디오 인코딩 디바이스 (14D) 는, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 멀티-채널 오디오 신호 (50)) 를 수신하고; 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합하여, 멀티-채널 오디오 신호를 나타내는 고차 앰비소닉 (HOA) 계수들의 세트를 나타내는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터들을 획득하며; 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56D)) 에서, 멀티-채널 오디오 신호 (예를 들어, 오디오 신호 (50C)) 의 표현 및 복수의 공간 포지셔닝 벡터들 (예를 들어, 양자화된 벡터 데이터 (554)) 의 표시를 인코딩하도록 구성된 하나 이상의 프로세서들을 포함할 수도 있다. 또한, 오디오 인코딩 디바이스 (14A) 는, 코딩된 오디오 비트스트림을 저장하도록 구성된, 하나 이상의 프로세서들에 전기적으로 커플링된 메모리 (예를 들어, 메모리 (54)) 를 포함할 수도 있다.
도 18 은 본 개시물의 하나 이상의 기법들에 따른, 도 17 에 도시된 오디오 인코딩 디바이스 (14) 의 예시의 구현과의 사용을 위한 오디오 디코딩 디바이스 (22) 의 예시의 구현을 예시하는 블록도이다. 도 18 에 도시된 오디오 디코딩 디바이스 (22) 의 구현은 오디오 디코딩 디바이스 (22D) 로 라벨링된다. 도 10 과 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현과 유사하게, 도 18 에서의 오디오 디코딩 디바이스 (22) 의 구현은 메모리 (200), 디멀티플렉싱 유닛 (202D), 오디오 디코딩 유닛 (204), HOA 생성 유닛 (208C), 및 렌더링 유닛 (210) 을 포함한다.
도 10 과 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현들과 대조적으로, 도 18 과 관련하여 설명된 오디오 디코딩 디바이스 (22) 의 구현은 벡터 디코딩 유닛 (207) 대신에 역 양자화 유닛 (550) 을 포함할 수도 있다. 다른 예들에서, 오디오 디코딩 디바이스 (22D) 는 더 많은, 더 적은, 또는 상이한 유닛들을 포함할 수도 있다. 예를 들어, 렌더링 유닛 (210) 은 별개의 디바이스, 예컨대 라우드스피커, 헤드폰 유닛, 또는 오디오 기반 또는 위성 디바이스에서 구현될 수도 있다.
메모리 (200), 디멀티플렉싱 유닛 (202D), 오디오 디코딩 유닛 (204), HOA 생성 유닛 (208C), 및 렌더링 유닛 (210) 은 도 10 의 예와 관련하여 본 개시물의 다른 곳에서 설명된 것과 동일한 방식으로 동작할 수도 있다. 그러나, 디멀티플렉싱 유닛 (202D) 은 비트스트림 (56D) 으로부터 양자화된 벡터 데이터 (554) 의 세트들을 획득할 수도 있다. 양자화된 벡터 데이터의 각각의 개별의 세트는 오디오 신호들 (70) 의 개별의 신호에 대응한다. 도 18 의 예에서, 양자화된 벡터 데이터 (554) 의 세트들은 V' 1 내지 V' N 으로 표기된다. 역 양자화 유닛 (550) 은 양자화된 벡터 데이터 (554) 의 세트들을 사용하여, 역 양자화된 공간 벡터들 (72) 을 결정할 수도 있다. 역 양자화 유닛 (550) 은 역 양자화된 공간 벡터들 (72) 을 오디오 디코딩 디바이스 (22D) 의 하나 이상의 컴포넌트들, 예컨대 HOA 생성 유닛 (208C) 에 제공할 수도 있다.
역 양자화 유닛 (550) 은 양자화된 벡터 데이터 (554) 의 세트들을 사용하여 다양한 방식들로 역 양자화된 벡터들을 결정할 수도 있다. 일 예에서, 양자화된 벡터 데이터의 각각의 세트는 오디오 신호
Figure pct00119
에 대한 양자화된 공간 벡터
Figure pct00120
양자화된 양자화 스텝 사이즈
Figure pct00121
를 포함한다. 이 예에서, 역 양자화 유닛 (550) 은 양자화된 공간 벡터
Figure pct00122
양자화된 양자화 스텝 사이즈
Figure pct00123
에 기초하여 역 양자화된 공간 벡터
Figure pct00124
를 결정할 수도 있다. 예를 들어, 역 양자화 유닛 (550) 은
Figure pct00125
이도록, 역 양자화된 공간 벡터
Figure pct00126
를 결정할 수도 있다. 역 양자화된 공간 벡터
Figure pct00127
및 오디오 신호
Figure pct00128
에 기초하여, HOA 생성 유닛 (208C) 은 HOA 도메인 표현을
Figure pct00129
Figure pct00130
로서 결정할 수도 있다. 본 개시물의 다른 곳에서 설명된 바와 같이, 렌더링 유닛 (210) 은 로컬 렌더링 포맷
Figure pct00131
을 획득할 수도 있다. 또한, 라우드스피커 피드들 (80) 은
Figure pct00132
로 표기될 수도 있다. 렌더링 유닛 (210C) 은
Figure pct00133
로서 라우드스피커 피드들 (26) 을 생성할 수도 있다.
따라서, 오디오 디코딩 디바이스 (22D) 는 코딩된 오디오 비트스트림 (예를 들어, 비트스트림 (56D)) 을 저장하도록 구성된 메모리 (예를 들어, 메모리 (200)) 를 포함할 수도 있다. 오디오 디코딩 디바이스 (22D) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호 (예를 들어, 라우드스피커 포지션 정보 (48) 에 대한 코딩된 오디오 신호 (62)) 의 표현을 획득하고; 소스 라우드스피커 구성 (예를 들어, 공간 포지셔닝 벡터들 (72)) 에 기초하는 고차 앰비소닉스 (HOA) 도메인에서 복수의 공간 포지셔닝 벡터 (SPV) 들의 표현을 획득하며; 멀티-채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드 (예를 들어, HOA 계수들 (212C)) 를 생성하도록 구성되고, 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 더 포함할 수도 있다.
도 19 는 본 개시물의 하나 이상의 기법들에 따른, 렌더링 유닛 (210) 의 예시의 구현을 예시하는 블록도이다. 도 19 에 예시된 바와 같이, 렌더링 유닛 (210) 은 리스너 로케이션 유닛 (610), 라우드스피커 포지션 유닛 (612), 렌더링 포맷 유닛 (614), 메모리 (615), 및 라우드스피커 피드 생성 유닛 (616) 을 포함할 수도 있다.
리스너 로케이션 유닛 (610) 은 도 1 의 라우드스피커들 (24) 과 같은, 복수의 라우드스피커들의 리스너의 로케이션을 결정하도록 구성될 수도 있다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 리스너의 로케이션을 주기적으로 (예를 들어, 1 초, 5 초, 10 초, 30 초, 1 분, 5 분, 10 분 등 마다) 결정할 수도 있다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 리스너에 의해 포지셔닝된 디바이스에 의해 생성된 신호에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 디바이스들의 일부 예들은 모바일 컴퓨팅 디바이스들, 비디오 게임 제어기들, 원격 제어들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 디바이스를 포함하지만 이에 제한되지는 않는다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 하나 이상의 센서들에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 디바이스들의 일부 예들은 카메라들, 마이크로폰들, (예를 들어, 퍼니처, 비히클 시트들에 임베딩되거나 부착된) 압력 센서들, 안전벨트 센서들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 센서를 포함하지만 이에 제한되지는 않는다. 리스너 로케이션 유닛 (610) 은 렌더링 유닛 (210) 의 하나 이상의 다른 컴포넌트들, 예컨대 렌더링 포맷 유닛 (614) 에 리스너의 포지션의 표시 (618) 를 제공할 수도 있다.
라우드스피커 포지션 유닛 (612) 은 도 1 의 라우드스피커들 (24) 과 같은 복수의 로컬 라우드스피커들의 포지션들의 표현을 획득하도록 구성될 수도 있다. 일부 예들에서, 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (28) 에 기초하여 복수의 로컬 라우드스피커들의 포지션들의 표현을 결정할 수도 있다. 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (28) 를 광범위한 소스들로부터 획득할 수도 있다. 일 예로서, 사용자/리스너는 오디오 디코딩 유닛 (22) 의 사용자 인터페이스를 통해 로컬 라우드스피커 셋업 정보 (28) 를 수동으로 입력할 수도 있다. 다른 예로서, 라우드스피커 포지션 유닛 (612) 은, 복수의 로컬 라우드스피커들로 하여금, 다양한 톤들을 방출하게 하고 마이크로폰을 이용하여 톤들에 기초한 로컬 라우드스피커 셋업 정보를 결정하게 할 수도 있다. 다른 예로서, 라우드스피커 포지션 유닛 (612) 은 하나 이상의 카메라들로부터 이미지들을 수신하고, 이미지 인식을 수행하여 이미지들에 기초한 로컬 라우드스피커 셋업 정보 (28) 를 결정할 수도 있다. 라우드스피커 포지션 유닛 (612) 은 복수의 로컬 라우드스피커들의 포지션들의 표현 (620) 을 렌더링 유닛 (210) 의 하나 이상의 다른 컴포넌트들, 예컨대 렌더링 포맷 유닛 (614) 에 제공할 수도 있다. 다른 예로서, 로컬 라우드스피커 셋업 정보 (28) 는 오디오 디코딩 유닛 (22) 으로 (예를 들어, 공장에서) 미리-프로그래밍될 수도 있다. 예를 들어, 라우드스피커들 (24) 이 비히클에 집적되는 경우, 로컬 라우드스피커 셋업 정보 (28) 는 비히클의 제조자 및/또는 라우드스피커들 (24) 의 인스톨러에 의해 오디오 디코딩 유닛 (22) 안에 미리-프로그래밍될 수도 있다.
렌더링 포맷 유닛 (614) 은 복수의 로컬 라우드스피커들의 포지션들의 표현 (예를 들어, 로컬 재생산 레이아웃) 및 복수의 로컬 라우드스피커들의 리스너의 포지션에 기초하여 로컬 렌더링 포맷 (622) 을 생성하도록 구성될 수도 있다. 일부 예들에서, 렌더링 포맷 유닛 (614) 은, HOA 계수들 (212) 이 라우드스피커 피드들로 렌더링되고 복수의 로컬 라우드스피커들을 통해 재생되는 경우, 음향 "스윗 스폿" 이 리스너의 포지션에 또는 부근에 위치되도록 로컬 렌더링 포맷 (622) 을 생성할 수도 있다. 일부 예들에서, 로컬 렌더링 포맷 (622) 을 생성하기 위해, 렌더링 포맷 유닛 (614) 은 로컬 렌더링 매트릭스 (
Figure pct00134
) 를 생성할 수도 있다. 렌더링 포맷 유닛 (614) 은 로컬 렌더링 포맷 (622) 을 렌더링 유닛 (210) 의 하나 이상의 다른 컴포넌트들, 예컨대 라우드스피커 피드 생성 유닛 (616) 및/또는 메모리 (615) 에 제공할 수도 있다.
메모리 (615) 는 로컬 렌더링 포맷, 예컨대 로컬 렌더링 포맷 (622) 을 저장하도록 구성될 수도 있다. 로컬 렌더링 포맷 (622) 이 로컬 렌더링 매트릭스 (
Figure pct00135
) 를 포함하는 경우, 메모리 (615) 는 로컬 렌더링 매트릭스 (
Figure pct00136
) 를 저장하도록 구성될 수도 있다.
라우드스피커 피드 생성 유닛 (616) 은 복수의 로컬 라우드스피커들의 개별의 로컬 라우드스피커에 각각 대응하는 복수의 출력 오디오 신호들로 HAO 계수들을 렌더링하도록 구성될 수도 있다. 도 19 의 예에서, 라우드스피커 피드 생성 유닛 (616) 은, 결과의 라우드스피커 피드들 (26) 이 복수의 로컬 라우드스피커들을 통해 재생되는 경우, 음향 "스윗 스폿" 이 리스너 로케이션 유닛 (610) 에 의해 결정된 바와 같이 리스너의 포지션에 또는 부근에 위치되도록 로컬 렌더링 포맷 (622) 에 기초하여 HOA 계수들을 렌더링할 수도 있다. 일부 예들에서, 라우드스피커 피드 생성 유닛 (616) 은 식 (35) 에 따라 라우드스피커 피드들 (26) 을 생성할 수도 있고, 여기서
Figure pct00137
는 라우드스피커 피드들 (26) 을 나타내고, H 는 HOA 계수들 (212) 이며,
Figure pct00138
는 로컬 렌더링 매트릭스의 트랜스포즈이다.
Figure pct00139
도 20 은 본 개시물의 하나 이상의 기법들에 따른, 자동차 스피커 재생 환경을 예시한다. 도 20 에 예시된 바와 같이, 일부 예들에서, 오디오 디코딩 디바이스 (22) 는 비히클, 예컨대 자동차 (2000) 에 포함될 수도 있다. 일부 예들에서, 비히클 (2000) 은 하나 이상의 탑승자 센서들을 포함할 수도 있다. 비히클 (2000) 에 포함될 수도 있는 탑승자 센서들의 예들은, 안전벨트 센서들, 및 비히클 (2000) 의 시트들 안에 집적된 압력 센서들을 포함하지만, 반드시 이에 제한되지는 않는다.
도 21 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작을 예시하는 흐름도이다. 도 21 의 기법들은 도 1, 도 3, 도 5, 도 13, 및 도 17 의 오디오 인코딩 디바이스 (14) 와 같은 오디오 인코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 21 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 인코딩 디바이스 (14) 는 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호를 수신할 수도 있다 (2102). 예를 들어, 오디오 인코딩 디바이스 (14) 는 5.1 서라운드 사운드 포맷에서 (즉, 5.1 의 소스 라우드스피커 구성에 대해) 오디오 데이터의 6-채널들을 수신할 수도 있다. 위에서 논의된 바와 같이, 오디오 인코딩 디바이스 (14) 에 의해 수신된 멀티-채널 오디오 신호는 도 1 의 라이브 오디오 데이터 (10) 및/또는 미리-생성된 오디오 데이터 (12) 를 포함할 수도 있다.
오디오 인코딩 디바이스 (14) 는, 소스 라우드스피커 구성에 기초하여, 멀티-채널 오디오 신호와 결합 가능한 고차 앰비소닉스 (HOA) 에서 복수의 공간 포지셔닝 벡터들을 획득하여, 멀티-채널 오디오 신호를 나타내는 HOA 사운드필드를 생성할 수도 있다 (2104). 일부 예들에서, 복수의 공간 포지셔닝 벡터들은 멀티채널 오디오 신호와 결합 가능하여 상기의 식 (20) 에 따라 멀티-채널 오디오 신호를 나타내는 HOA 사운드필드를 생성할 수도 있다.
오디오 인코딩 디바이스 (14) 는, 코딩된 오디오 비트스트림에서, 멀티-채널 오디오 신호의 표현 및 복수의 공간 포지셔닝 벡터들의 표시를 인코딩할 수도 있다 (2016). 일 예로서, 오디오 인코딩 디바이스 (14A) 의 비트스트림 생성 유닛 (52A) 은 코딩된 오디오 데이터 (62) 의 표현 및 라우드스피커 포지션 정보 (48) 의 표현을 비트스트림 (56A) 에서 인코딩할 수도 있다. 다른 예로서, 오디오 인코딩 디바이스 (14B) 의 비트스트림 생성 유닛 (52B) 은 코딩된 오디오 데이터 (62) 의 표현 및 공간 벡터 표현 데이터 (71A) 를 비트스트림 (56B) 에서 인코딩할 수도 있다. 다른 예로서, 오디오 인코딩 디바이스 (14D) 의 비트스트림 생성 유닛 (52D) 은 오디오 신호 (50C) 의 표현 및 양자화된 벡터 데이터 (554) 의 표현을 비트스트림 (56D) 에서 인코딩할 수도 있다.
도 22 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 22 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 22 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 코딩된 오디오 비트스트림을 획득할 수도 있다 (2202). 일 예로서, 오디오 디코딩 디바이스 (22) 는, 유선 또는 무선 채널일 수도 있는 송신 채널, 데이터 저장 디바이스 등을 통해 비트스트림을 획득할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22) 는 저장 매체 또는 파일 서버로부터 비트스트림을 획득할 수도 있다.
오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 소스 라우드스피커 구성에 대한 멀티-채널 오디오 신호의 표현을 획득할 수도 있다 (2204). 예를 들어, 오디오 디코딩 유닛 (204) 은, 비트스트림으로부터, 5.1 서라운드 사운드 포맷에서 (즉, 5.1 의 소스 라우드스피커에 대해) 오디오 데이터의 6-채널들을 획득할 수도 있다.
오디오 디코딩 디바이스 (22) 는 소스 라우드스피커 구성에 기초하는 고차 앰비소닉스 (HOA) 에서 복수의 공간 포지셔닝 벡터들의 표현을 획득할 수도 있다 (2206). 일 예로서, 오디오 디코딩 디바이스 (22A) 의 벡터 생성 유닛 (206) 은 소스 라우드스피커 셋업 정보 (48) 에 기초하여 공간 포지셔닝 벡터들 (72) 을 생성할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22B) 의 벡터 디코딩 유닛 (207) 은 공간 벡터 표현 데이터 (71A) 로부터, 소스 라우드스피커 셋업 정보 (48) 에 기초하는 공간 포지셔닝 벡터들 (72) 을 디코딩할 수도 있다. 다른 예로서, 오디오 디코딩 디바이스 (22D) 의 역 양자화 유닛 (550) 은, 소스 라우드스피커 셋업 정보 (48) 에 기초하는, 공간 포지셔닝 벡터들 (72) 을 생성하도록 양자화된 벡터 데이터 (554) 를 역 양자화할 수도 있다.
오디오 디코딩 디바이스 (22) 는 멀티채널 오디오 신호 및 복수의 공간 포지셔닝 벡터들에 기초하여 HOA 사운드필드를 생성할 수도 있다 (2208). 예를 들어, HOA 생성 유닛 (208A) 은 상기의 식 (20) 에 따라 멀티-채널 오디오 신호 (70) 및 공간 포지셔닝 벡터들 (72) 에 기초하여 HOA 계수들 (212A) 을 생성할 수도 있다.
오디오 디코딩 디바이스 (22) 는 HOA 사운드필드를 렌더링하여 복수의 오디오 신호들을 생성할 수도 있다 (2210). 예를 들어, (오디오 디코딩 디바이스 (22) 에 포함되거나 또는 포함되지 않을 수도 있는) 렌더링 유닛 (210) 은 로컬 렌더링 구성 (예를 들어, 로컬 렌더링 포맷) 에 기초하여 복수의 오디오 신호들을 생성하도록 HOA 계수들의 세트를 렌더링할 수도 있다. 일부 예들에서, 렌더링 유닛 (210) 은 상기의 식 (21) 에 따라, HOA 계수들의 세트를 렌더링할 수도 있다.
도 23 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 23 의 기법들은 도 1, 도 3, 도 5, 도 13, 및 도 17 의 오디오 인코딩 디바이스 (14) 와 같은 오디오 인코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 23 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 인코딩 디바이스 (14) 는 오디오 객체의 오디오 신호 및 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신할 수도 있다 (2230). 부가적으로, 오디오 인코딩 디바이스 (14) 는, 오디오 객체에 대한 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, HOA 도메인에서 오디오 객체의 공간 벡터를 결정할 수도 있다 (2232). 부가적으로, 도 23 의 예에서, 오디오 인코딩 디바이스 (14) 는, 코딩된 오디오 비트스트림에서, 공간 벡터를 나타내는 오디오 신호 및 데이터의 객체-기반의 표현을 포함할 수 있다.
도 24 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 24 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 24 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반 표현을 획득할 수도 있다 (2250). 이 예에서, 오디오 신호는 시간 인터벌에 대응한다. 부가적으로, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체에 대한 공간 벡터의 표현을 획득할 수도 있다 (2252). 이 예에서, 공간 벡터는 HOA 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초한다.
더욱이, HOA 생성 유닛 (208B)(또는 오디오 디코딩 디바이스 (22) 의 다른 유닛) 은 오디오 객체의 오디오 신호 및 공간 벡터를 시간 인터벌 동안 사운드필드를 설명하는 HOA 계수들의 세트로 컨버팅할 수도 있다 (2254). 더욱이, 도 24 의 예에서는, 오디오 디코딩 디바이스 (22) 는 HOA 계수들의 세트에 렌더링 포맷을 적용함으로써 복수의 오디오 신호들을 생성할 수 있다 (2256). 이 예에서, 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응한다.
도 25 는 본 개시물의 하나 이상의 기법들에 따른, 오디오 인코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 25 의 기법들은 도 1, 도 3, 도 5, 도 13, 및 도 17 의 오디오 인코딩 디바이스 (14) 와 같은 오디오 인코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 인코딩 디바이스 (14) 외의 구성들을 갖는 오디오 인코딩 디바이스들이 도 25 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 인코딩 디바이스 (14) 는 코딩된 오디오 비트스트림에서, 시간 인터벌 동안 하나 이상의 오디오 신호들의 세트의 객체-기반 또는 채널-기반 표현을 포함할 수도 있다 (2300). 또한, 오디오 인코딩 디바이스 (14) 는 라우드스피커 로케이션들의 세트에 기초하여, HOA 도메인에서 하나 이상의 공간 벡터들의 세트를 결정할 수도 있다 (2302). 이 예에서, 공간 벡터들의 세트의 각각의 개별의 공간 벡터는 오디오 신호들의 세트에서 개별의 오디오 신호에 대응한다. 또한, 이 예에서, 오디오 인코딩 디바이스 (14) 는 공간 벡터들의 양자화된 버전들을 나타내는 데이터를 생성할 수도 있다 (2304). 부가적으로, 이 예에서, 오디오 인코딩 디바이스 (14) 는, 코딩된 오디오 비트스트림에서, 공간 벡터들의 양자화된 버전들을 나타내는 데이터를 포함할 수도 있다 (2306).
도 26 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 26 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 디코딩 디바이스 (22) 외의 구성들을 갖는 오디오 디코딩 디바이스들이 도 26 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 코딩된 오디오 비트스트림으로부터, 시간 인터벌 동안 하나 이상의 오디오 신호들의 세트의 객체-기반 또는 채널-기반 표현을 획득할 수도 있다 (2400). 부가적으로, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 하나 이상의 공간 벡터들의 세트의 양자화된 버전들을 나타내는 데이터를 획득할 수도 있다 (2402). 이 예에서, 공간 벡터들의 세트의 각각의 개별의 공간 벡터는 오디오 신호들의 세트의 개별의 오디오 신호에 대응한다. 또한, 이 예에서 공간 벡터들 각각은 HOA 도메인에 있고 라우드스피커 로케이션들의 세트에 기초하여 연산된다.
도 27 은 본 개시물의 하나 이상의 기법들에 따른, 오디오 디코딩 디바이스의 예시의 동작들을 예시하는 흐름도이다. 도 27 의 기법들은 도 1, 도 4, 도 10, 도 16, 및 도 18 의 오디오 디코딩 디바이스 (22) 와 같은 오디오 디코딩 디바이스의 하나 이상의 프로세서들에 의해 수행될 수도 있지만, 오디오 디코딩 디바이스 (22) 외의 구성들을 갖는 오디오 디코딩 디바이스들이 도 27 의 기법들을 수행할 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 오디오 디코딩 디바이스 (22) 는 고차 앰비소닉스 (HOA) 사운드필드를 획득할 수도 있다 (2702). 예를 들어, 오디오 디코딩 디바이스 (22) 의 HOA 생성 유닛 (예를 들어, HOA 생성 유닛 (208A/208B/208C)) 은 HOA 계수들 (예를 들어, HOA 계수들 (212A/212B/212C)) 을 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 에 제공할 수도 있다.
오디오 디코딩 디바이스 (22) 는 복수의 로컬 라우드스피커들의 포지션들의 표현을 획득할 수도 있다 (2704). 예를 들어, 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 의 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (예를 들어, 로컬 라우드스피커 셋업 정보 (28)) 에 기초하여 복수의 로컬 라우드스피커들의 포지션들의 표현을 결정할 수도 있다. 위에서 논의된 바와 같이, 라우드스피커 포지션 유닛 (612) 은 로컬 라우드스피커 셋업 정보 (28) 를 광범위한 소스들로부터 획득할 수도 있다.
오디오 디코딩 디바이스 (22) 는 리스너의 로케이션을 주기적으로 결정할 수도 있다 (2706). 예를 들어, 일부 예들에서, 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 의 리스너 로케이션 유닛 (610) 은 리스너에 의해 포지셔닝된 디바이스에 의해 생성된 신호에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 센서들의 일부 예들은 모바일 컴퓨팅 디바이스들, 비디오 게임 제어기들, 원격 제어들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 센서를 포함하지만 이에 제한되지는 않는다. 일부 예들에서, 리스너 로케이션 유닛 (610) 은 하나 이상의 센서들에 기초하여 리스너의 로케이션을 결정할 수도 있다. 리스너 로케이션 유닛 (610) 에 의해 사용되어 리스너의 로케이션을 결정할 수 있는 디바이스들의 일부 예들은 카메라들, 마이크로폰들, (예를 들어, 퍼니처, 비히클 시트들에 임베딩되거나 부착된) 압력 센서들, 안전벨트 센서들, 또는 리스너의 포지션을 나타낼 수도 있는 임의의 다른 디바이스를 포함하지만 이에 제한되지는 않는다.
오디오 디코딩 디바이스 (22) 는, 리스너의 로케이션 및 복수의 로컬 라우드스피커 포지션들에 기초하여, 로컬 렌더링 포맷을 주기적으로 결정할 수도 있다 (2708). 예를 들어, 오디오 디코딩 디바이스 (22) 의 렌더링 유닛 (210) 의 렌더링 포맷 유닛 (614) 은, HOA 사운드필드가 라우드스피커 피드들로 렌더링되고 복수의 로컬 라우드스피커들을 통해 재생되는 경우, 음향 "스윗 스폿" 이 리스너의 포지션에 또는 부근에 위치되도록 로컬 렌더링 포맷을 생성할 수도 있다. 일부 예들에서, 로컬 렌더링 포맷을 생성하기 위해, 렌더링 포맷 유닛 (614) 은 로컬 렌더링 매트릭스 (
Figure pct00140
) 를 생성할 수도 있다.
오디오 디코딩 디바이스 (22) 는, 로컬 렌더링 포맷에 기초하여, HOA 사운드필드를 복수의 로컬 라우드스피커들의 개별의 로컬 라우드스피커에 각각 대응하는 복수의 출력 오디오 신호들로 렌더링할 수도 있다 (2710). 예를 들어, 라우드스피커 피드 생성 유닛 (616) 은 상기의 식 (35) 에 따라 라우드스피커 피드들 (26) 을 생성하도록 HOA 계수들을 렌더링할 수도 있다.
일 예에서, 멀티-채널 오디오 신호 (예를 들어,
Figure pct00141
) 를 인코딩하기 위해, 오디오 인코딩 디바이스 (14) 는 소스 라우드스피커 구성에서 라우드스피커들의 수 (예를 들어, N), 멀티-채널 오디오 신호에 기초하여 HOA 사운드필드를 생성하는 경우 사용될 HOA 계수들의 수 (예를 들어, N HOA ), 및 소스 라우드스피커 구성에서 라우드스피커들의 포지션들 (예를 들어,
Figure pct00142
) 를 결정할 수도 있다. 이 예에서, 오디오 인코딩 디바이스 (14) 는 비트스트림에서 N, N HOA , 및
Figure pct00143
을 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 각각의 프레임에 대해 N, N HOA , 및
Figure pct00144
을 비트스트림에서 인코딩할 수도 있다. 일부 예들에서, 이전의 프레임이 동일한 N, N HOA , 및
Figure pct00145
을 사용하면, 오디오 인코딩 디바이스 (14) 는 현재의 프레임에 대해 비트스트림에서 N, N HOA , 및
Figure pct00146
을 인코딩하는 것을 생략할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 N, N HOA , 및
Figure pct00147
에 기초하여 렌더링 매트릭스 (D 1 ) 을 생성할 수도 있다. 일부 예들에서, 필요하면, 오디오 인코딩 디바이스 (14) 는 하나 이상의 공간 포지셔닝 벡터들 (예를 들어,
Figure pct00148
Figure pct00149
) 을 생성 및 사용할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 멀티-채널 오디오 신호 (예를 들어,
Figure pct00150
) 양자화하여, 양자화된 멀티채널 오디오 신호 (예를 들어,
Figure pct00151
) 를 생성하고, 양자화된 멀티-채널 오디오 신호를 비트스트림에서 인코딩할 수도 있다.
오디오 디코딩 디바이스 (22) 는 비트스트림을 수신할 수도 있다. 소스 라우드스피커 구성에서 수신된 라우드스피커들의 수 (예를 들어, N), 멀티-채널 오디오 신호에 기초하여 HOA 사운드필드를 생성하는 경우 사용될 HOA 계수들의 수 (예를 들어, N HOA ), 및 소스 라우드스피커 구성에서 라우드스피커들의 포지션들 (예를 들어,
Figure pct00152
) 에 기초하여, 오디오 디코딩 디바이스 (22) 는 렌더링 매트릭스 (D 2 ) 를 생성할 수도 있다. 일부 예들에서, D 2 는, D 2 가 수신된 N, N HOA , 및
Figure pct00153
(즉, 소스 라우드스피커 구성) 에 기초하여 생성되는 한, D 1 와 동일하지 않을 수도 있다. D 2 에 기초하여, 오디오 디코딩 디바이스 (22) 는 하나 이상의 공간 포지셔닝 벡터들 (예를 들어,
Figure pct00154
) 을 계산할 수도 있다. 하나 이상의 공간 포지셔닝 벡터들 및 수신된 오디오 신호 (예를 들어,
Figure pct00155
) 에 기초하여,오디오 디코딩 디바이스 (22) 는
Figure pct00156
Figure pct00157
로서 HOA 도메인 표현을 생성할 수도 있다. 로컬 라우드스피커 구성 (즉, 디코더에서 라우드스피커들의 수 및 포지션들)(예를 들어,
Figure pct00158
Figure pct00159
) 에 기초하여, 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스 (D 3 ) 를 생성할 수도 있다. 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스에 생성된 HOA 도메인 표현을 곱함으로써 (예를 들어,
Figure pct00160
) 로컬 라우드스피커들에 대한 스피커 피드들 (예를 들어,
Figure pct00161
) 을 생성할 수도 있다.
다른 예에서, 멀티-채널 오디오 신호 (예를 들어,
Figure pct00162
) 를 인코딩하기 위해, 오디오 인코딩 디바이스 (14) 는 소스 라우드스피커 구성에서의 라우드스피커들의 수 (예를 들어, N), 멀티-채널 오디오 신호에 기초하여 HOA 사운드필드를 생성하는 경우 사용될 HOA 계수들의 수 (예를 들어, N HOA ), 및 소스 라우드스피커 구성에서 라우드스피커들의 포지션들 (예를 들어,
Figure pct00163
) 을 결정할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 N, N HOA , 및
Figure pct00164
에 기초하여 렌더링 매트릭스 (D 1 ) 을 생성할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 하나 이상의 공간 포지셔닝 벡터들 (예를 들어,
Figure pct00165
Figure pct00166
) 을 계산할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 공간 포지셔닝 벡터들을
Figure pct00167
로서 표준화하고, ISO/IEC 23008-3 에서 (예를 들어, (SQ, SQ+Huff, VQ) 과 같은 벡터 양자화 방법들을 사용하여)
Figure pct00168
Figure pct00169
로 양자화하며,
Figure pct00170
Figure pct00171
를 비트스트림에서 인코딩할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (14) 는 멀티-채널 오디오 신호 (예를 들어,
Figure pct00172
) 를 양자화하여 양자화된 멀티-채널 오디오 신호 (예를 들어,
Figure pct00173
) 를 생성하고, 양자화된 멀티-채널 오디오 신호를 비트스트림에서 인코딩할 수도 있다.
오디오 디코딩 디바이스 (22) 는 비트스트림을 수신할 수도 있다.
Figure pct00174
Figure pct00175
에 기초하여, 오디오 디코딩 디바이스 (22) 는 공간 포지셔닝 벡터들을
Figure pct00176
Figure pct00177
에 의해 복원할 수도 있다. 하나 이상의 공간 포지셔닝 벡터들 (예를 들어,
Figure pct00178
) 및 수신된 오디오 신호 (예를 들어,
Figure pct00179
) 에 기초하여, 오디오 디코딩 디바이스 (22) 는
Figure pct00180
로서 HOA 도메인 표현을 생성할 수도 있다. 로컬 라우드스피커 구성 (즉, 디코더에서 라우드스피커들의 수 및 포지션들)(예를 들어,
Figure pct00181
Figure pct00182
) 에 기초하여, 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스 (D 3 ) 를 생성할 수도 있다. 오디오 디코딩 디바이스 (22) 는 로컬 렌더링 매트릭스에 생성된 HOA 도메인 표현을 곱함으로써 (예를 들어,
Figure pct00183
) 로컬 라우드스피커들에 대한 스피커 피드들 (예를 들어,
Figure pct00184
) 을 생성할 수도 있다.
도 28 은 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다. 도 28 의 예에서, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하며, 이 오디오 신호는 시간 인터벌에 대응한다 (2800). 또한, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체에 대한 공간 벡터의 표현을 획득한다 (2802). 공간 벡터는 HOA 도메인에서 정의되고 복수의 라우드스피커 로케이션들에 기초한다.
도 28 의 예에서, 오디오 디코딩 디바이스 (22) 는, 공간 벡터 및 오디오 객체의 오디오 신호에 기초하여, 복수의 오디오 신호들을 생성한다 (2804). 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응한다. 일부 예들에서, 오디오 디코딩 디바이스 (22) 는 하나 이상의 카메라들로부터 이미지들을 획득하고, 이미지들에 기초하여 로컬 라우드스피커 셋업 정보를 결정하며, 로컬 라우드스피커 셋업 정보는 복수의 로컬 라우드스피커들의 포지션들을 나타낸다.
복수의 오디오 신호들을 생성하는 부분으로서, 오디오 디코딩 디바이스 (22) 는 오디오 객체의 오디오 신호 및 공간 벡터를 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수의 세트로 변환할 수있다. 또한, 오디오 디코딩 디바이스 (22) 는 HOA 계수들의 세트에 렌더링 포맷을 적용함으로써 복수의 오디오 신호들을 생성할 수 있다. 이미지들에 기초하여 결정된 로컬 라우드스피커 셋업 정보는 렌더링 포맷의 형태일 수 있다. 일부 예들에서, 복수의 라우드스피커 로케이션들은 제 1 복수의 라우드스피커 로케이션들이고, 렌더링 포맷은 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서 라우드스피커들에 대한 오디오 신호들로 HOA 계수들의 세트를 렌더링하기 위한 것이다
도 29 는 본 개시물의 기법에 따른, 코딩된 오디오 비트스트림을 디코딩하기 위한 예시의 동작을 예시하는 흐름도이다. 도 28 의 예에서, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하며, 이 오디오 신호는 시간 인터벌에 대응한다 (2900). 또한, 오디오 디코딩 디바이스 (22) 는, 코딩된 오디오 비트스트림으로부터, 오디오 객체에 대한 공간 벡터의 표현을 획득한다 (2902). 공간 벡터는 HOA 도메인에서 정의되고 복수의 라우드스피커 로케이션들에 기초한다.
도 29 의 예에서, 오디오 디코딩 디바이스 (22) 는, 오디오 객체에 대한 공간 벡터 및 오디오 객체의 오디오 신호에 기초하여, HOA 사운드필드를 생성한다 (2904). 오디오 디코딩 디바이스 (22) 는 본 개시물의 다른 곳에 제공된 예들에 따라 HOA 사운드필드를 생성할 수 있다. 일부 예들에서, 복수의 라우드스피커 로케이션들은 소스 라우드스피커 구성이다. 일부 예들에서, 복수의 라우드스피커 로케이션들은 로컬 라우드스피커 구성이다. 더욱이, 일부 예들에서, HOA 사운드필드는 복수의 로컬 라우드스피커들에 의해 재생된다.
전술된 다양한 경우들 각각에서, 오디오 인코딩 디바이스 (14) 는, 오디오 인코딩 디바이스 (14) 가 수행하도록 구성되는 방법을 수행하거나 다르게는 이 방법의 각 단계를 수행하기 위한 수단을 포함할 수도 있다는 것으로 이해되어야 한다. 일부 경우들에서, 수단은 하나 이상의 프로세서들을 포함할 수도 있다. 일부 경우들에서, 하나 이상의 프로세서들은 비-일시적 컴퓨터 판독가능 저장 매체에 저장된 명령들의 방식에 의해 구성된 특수 목적의 프로세서를 나타낼 수도 있다. 다시 말하면, 인코딩 예들의 세트들 각각에서 기법들의 다양한 양태들은 명령들이 저장되어 있는 비일시적 컴퓨터 판독가능 저장 매체에 대해 제공할 수도 있고, 이 명령들은 실행되는 경우, 하나 이상의 프로세서들로 하여금 오디오 인코딩 디바이스 (14) 가 수행하도록 구성된 방법을 수행하게 한다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그 임의의 조합으로 구현될 수도 있다. 소프트웨어에서 구현되는 경우, 이 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장되거나 이를 통해 송신될 수도 있고, 하드웨어 기반 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터 판독가능 매체는, 데이터 저장 매체와 같은 유형의 매체에 대응하는, 컴퓨터 판독가능 저장 매체를 포함할 수도 있다. 데이터 저장 매체는 본 개시물에 설명된 기법들의 구현을 위한 명령들, 코드 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 매체를 포함할 수도 있다.
유사하게, 전술된 다양한 경우들 각각에서, 오디오 디코딩 디바이스 (22) 는, 오디오 디코딩 디바이스 (22) 가 수행하도록 구성되는 방법을 수행하거나 다르게는 이 방법의 각 단계를 수행하기 위한 수단을 포함할 수도 있다는 것으로 이해되어야 한다. 일부 경우들에서, 수단은 하나 이상의 프로세서들을 포함할 수도 있다. 일부 경우들에서, 하나 이상의 프로세서들은 비일시적 컴퓨터 판독가능 저장 매체에 저장된 명령들의 방식으로 구성된 특수 목적의 프로세서를 나타낼 수도 있다. 다시 말하면, 인코딩 예들의 세트들 각각에서 본 기법들의 다양한 양태들은, 실행되는 경우, 하나 이상의 프로세서들로 하여금 오디오 디코딩 디바이스 (24) 가 수행하도록 구성된 방법을 수행하게 하는 명령들이 저장되어 있는 비일시적 컴퓨터 판독가능 저장 매체를 제공할 수도 있다.
비제한적인 예로서, 이러한 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장 디바이스, 자기 디스크 저장 디바이스, 또는 다른 자기 저장 디바이스, 플래시 메모리, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수 있으며 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 그러나, 컴퓨터 판독가능 저장 매체 및 데이터 저장 매체는 접속들, 반송파들, 신호들, 또는 다른 일시적 매체들을 포함하지 않고, 대신에 비일시적인, 유형의 저장 매체에 관한 것으로 이해되어야 한다. 본원에서 사용된 디스크 (disk) 와 디스크 (disc) 는, 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크, 및 블루레이 디스크를 포함하며, 여기서 디스크 (disk) 들은 통상 자기적으로 데이터를 재생하는 반면, 디스크 (disc) 들은 레이저들을 이용하여 광학적으로 데이터를 재생한다. 상기의 조합들이 또한, 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령들은, 하나 이상의 디지털 신호 프로세서 (DSP) 들, 범용 마이크로프로세서들, 주문형 집적 회로 (ASIC) 들, 필드 프로그램가능 로직 어레이 (FPGA) 들, 또는 다른 등가의 집적 또는 이산 로직 회로부와 같은, 하나 이상의 프로세서들에 의해 실행될 수도 있다. 따라서, 본원에서 사용되는 바와 같은 용어 "프로세서" 는 상기의 구조 또는 본원에 설명된 기법들의 구현에 적합한 임의의 다른 구조 중 임의의 것을 지칭할 수도 있다. 또한, 일부 양태들에서, 본원에 설명된 기능성은 인코딩 및 디코딩을 위해 구성된 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공될 수도 있고, 또는 결합형 코덱에 통합될 수도 있다. 또한, 본 기법들은 하나 이상의 회로들 또는 로직 엘리먼트들에서 완전히 구현될 수 있다.
본 개시물의 기법들은 무선 핸드셋, 집적 회로 (IC), 또는 IC 들의 세트 (예를 들어, 칩 세트) 를 포함하는 광범위한 디바이스들 또는 장치들에서 구현될 수도 있다. 개시된 기법들을 수행하도록 구성된 디바이스들의 기능적 양태를 강조하기 위해 다양한 컴포넌트들, 모듈들, 또는 유닛들이 본 개시물에서 설명되었지만, 반드시 상이한 하드웨어 유닛들에 의해 실현될 필요는 없다. 차라리, 전술된 바와 같이 다양한 유닛들은 적합한 소프트웨어 및/또는 펌웨어와 관련되어, 전술된 하나 이상의 프로세서들을 포함하는, 상호 동작적인 하드웨어 유닛들의 집합에 의해 제공되고 또는 코덱 하드웨어 유닛에 결합될 수도 있다.
본 기법들의 다양한 양태들이 설명되었다. 본 기법들의 이들 및 다른 양태들이 다음의 청구범위 내에 있다.

Claims (30)

  1. 코딩된 오디오 비트스트림을 디코딩하는 디바이스로서,
    코딩된 오디오 비트스트림을 저장하도록 구성된 메모리; 및
    상기 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고,
    상기 하나 이상의 프로세서들은,
    상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 것으로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하고;
    상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 것으로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하고;
    상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 것으로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하도록 구성되는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  2. 제 1 항에 있어서,
    상기 하나 이상의 프로세서들은,
    하나 이상의 카메라들로부터 이미지들을 획득하고; 그리고
    상기 이미지들에 기초하여 로컬 라우드스피커 셋업 정보를 결정하도록 구성되고,
    상기 로컬 라우드스피커 셋업 정보는 복수의 로컬 라우드스피커들의 포지션들을 나타내는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  3. 제 2 항에 있어서,
    상기 하나 이상의 프로세서들은,
    상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터를 상기 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수들의 세트로 컨버팅하고; 그리고
    상기 HOA 계수들의 세트에 렌더링 포맷을 적용함으로써 상기 복수의 오디오 신호들을 생성하는 것으로서, 상기 로컬 라우드스피커 셋업 정보는 상기 렌더링 포맷의 형태인, 상기 복수의 오디오 신호들을 생성하도록 구성되는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  4. 제 1 항에 있어서,
    상기 하나 이상의 프로세서들은,
    상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터를 상기 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수들의 세트로 컨버팅하고; 그리고
    상기 HOA 계수들의 세트에 렌더링 포맷을 적용함으로써 상기 복수의 오디오 신호들을 생성하도록 구성되는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  5. 제 4 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 오디오 신호 및 상기 공간 벡터를 상기 HOA 계수들의 세트로 컨버팅하는 부분으로서, 상기 하나 이상의 프로세서들이 상기 HOA 계수들의 세트를 결정하여 상기 HOA 계수들의 세트가 상기 오디오 신호 곱하기 상기 공간 벡터의 트랜스포즈 (transpose) 와 동등하도록 구성되는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  6. 제 4 항에 있어서,
    상기 오디오 객체는 제 1 오디오 객체이고, 상기 공간 벡터들은 제 1 공간 벡터이고, 그리고
    상기 하나 이상의 프로세서들은,
    상기 코딩된 오디오 비트스트림으로부터, 복수의 객체-기반의 표현들을 획득하는 것으로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현이며, 상기 복수의 오디오 객체들은 상기 제 1 오디오 객체를 포함하는, 상기 복수의 객체-기반의 표현들을 획득하고;
    상기 코딩된 오디오 비트스트림으로부터, 복수의 공간 벡터 표현들을 획득하는 것으로서, 상기 복수의 표현들의 각각의 개별의 공간 벡터 표현은 상기 복수의 오디오 객체들의 개별의 오디오 객체에 대한 공간 벡터의 개별의 표현이고, 상기 복수의 공간 벡터 표현들의 각각의 개별의 공간 벡터 표현은 HOA 도메인에서 정의되고 상기 제 1 복수의 라우드스피커 로케이션들에 기초하며, 상기 복수의 공간 벡터 표현들은 상기 제 1 오디오 객체에 대한 공간 벡터의 표현을 포함하는, 상기 복수의 공간 벡터 표현들을 획득하고;
    상기 복수의 오디오 객체들 중 각각의 개별의 오디오 객체에 대해, 상기 개별의 오디오 객체에 대한 HOA 계수들의 개별의 세트를 결정하여, 상기 개별의 오디오 객체에 대한 상기 HOA 계수들의 세트가 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 공간 벡터의 트랜스포즈와 동등하도록 하고; 그리고
    상기 복수의 오디오 객체들에 대한 HOA 계수들의 세트들의 합에 기초하여 상기 사운드 필드를 설명하는 상기 HOA 계수들의 세트를 결정하도록 구성되는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  7. 제 4 항에 있어서,
    상기 공간 벡터는 복수의 피연산자들의 합과 동등하고,
    상기 복수의 피연산자들의 각각의 개별의 피연산자는, 상기 제 1 복수의 라우드스피커의 로케이션들의 개별의 라우드스피커 로케이션에 대응하고;
    상기 제 1 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해,
    복수의 라우드스피커 로케이션 벡터들은 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함하고,
    상기 개별의 라우드스피커 로케이션에 대응하는 상기 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하고, 그리고
    상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터는 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  8. 제 7 항에 있어서,
    1 에서 N 까지의 범위인 각각의 값 n 에 대해, 상기 제 1 복수의 라우드스피커 로케이션들의 n 번째 라우드스피커 로케이션 벡터는 제 1 매트릭스, 제 2 매트릭스, 및 제 3 매트릭스의 곱셈에서 비롯되는 매트릭스의 트랜스포즈와 동등하고, 상기 제 1 매트릭스는 복수의 라우드스피커 포지션들에서 라우드스피커 포지션들의 수와 수에서 동등한 엘리먼트들의 단일의 개별의 로우로 이루어지고, 상기 엘리먼트들의 개별의 로우의 n 번째 엘리먼트는 1 과 동등하고 상기 개별의 로우의 상기 n 번째 엘리먼트 외의 엘리먼트들은 0 과 동등하고, 상기 제 2 매트릭스는 렌더링 매트릭스 및 상기 렌더링 매트릭스의 트랜스포즈의 곱셈에서 비롯되는 매트릭스의 역이고, 상기 제 3 매트릭스는 상기 렌더링 매트릭스와 동등하며, 상기 렌더링 매트릭스는 상기 제 1 복수의 라우드스피커 로케이션들에 기초하고, 그리고 N 은 상기 제 1 복수의 라우드스피커 로케이션들에서의 라우드스피커 로케이션들의 수에 동등한, 코딩된 오디오 비트스트림을 디코딩하는 디바이스.
  9. 코딩된 오디오 비트스트림을 인코딩하는 디바이스로서,
    오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 저장하도록 구성된 메모리로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 메모리; 및
    상기 메모리에 전기적으로 커플링된 하나 이상의 프로세서들을 포함하고,
    상기 하나 이상의 프로세서들은,
    상기 오디오 객체의 상기 오디오 신호 및 상기 오디오 객체의 상기 가상의 소스 로케이션을 나타내는 데이터를 수신하고;
    상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하고; 그리고
    코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  10. 제 9 항에 있어서,
    상기 하나 이상의 프로세서들은,
    하나 이상의 카메라들로부터 이미지들을 획득하고; 그리고
    상기 이미지들에 기초하여 상기 라우드스피커 로케이션들을 결정하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  11. 제 9 항에 있어서,
    상기 하나 이상의 프로세서들은 상기 공간 벡터를 양자화하도록 구성되고, 그리고
    상기 공간 벡터를 나타내는 데이터는 양자화된 상기 공간 벡터를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  12. 제 9 항에 있어서,
    상기 시간 인터벌 동안 상기 오디오 신호를 포함하는 사운드 필드를 설명하는 고차 앰비소닉스 (HOA) 계수들의 세트는 상기 오디오 신호 곱하기 상기 공간 벡터의 트랜스포즈와 동등한, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  13. 제 9 항에 있어서,
    상기 오디오 객체는 제 1 오디오 객체이고, 상기 공간 벡터는 제 1 공간 벡터이고, 그리고
    상기 하나 이상의 프로세서들은,
    상기 코딩된 오디오 비트스트림에서, 복수의 객체-기반의 표현들을 포함하는 것으로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현이며, 상기 복수의 오디오 객체들은 상기 제 1 오디오 객체를 포함하는, 상기 복수의 객체-기반의 표현들을 포함하고; 그리고
    상기 복수의 오디오 객체들의 각각의 개별의 오디오 객체에 대해:
    상기 개별의 오디오 객체의 개별의 가상의 소스 로케이션을 표시하는 데이터 및 상기 복수의 라우드스피커 로케이션들을 표시하는 데이터에 기초하여, 상기 개별의 오디오 객체에 대한 개별의 공간 벡터의 표현을 결정하는 것으로서, 상기 개별의 오디오 객체에 대한 상기 개별의 공간 벡터는 HOA 도메인에서 정의되고, 상기 개별의 오디오 객체에 대한 HOA 계수들의 개별의 세트는 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 상기 개별의 공간 벡터의 트랜스포즈와 동등한, 상기 개별의 공간 벡터의 표현을 결정하고; 그리고
    코딩된 오디오 비트스트림에서, 상기 개별의 오디오 객체에 대한 상기 개별의 공간 벡터의 표현을 포함하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  14. 제 9 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 공간 벡터를 결정하는 부분으로서, 상기 하나 이상의 프로세서들이:
    고차 앰비소닉스 (HOA) 계수들의 세트를 상기 라우드스피커 로케이션들에서의 라우드스피커들에 대한 라우드스피커 피드들로 렌더링하기 위한 렌더링 포맷을 결정하고;
    복수의 라우드스피커 로케이션 벡터들을 결정하는 것으로서,
    상기 복수의 라우드스피커 로케이션 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 그리고
    상기 하나 이상의 프로세서들은, 상기 복수의 라우드스피커 로케이션 벡터들을 결정하는 부분으로서, 상기 복수의 라우드스피커 로케이션 벡터들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 하나 이상의 프로세서들이,
    상기 오디오 객체의 로케이션 좌표들에 기초하여, 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정하는 것으로서, 상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터가 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 상기 이득 팩터를 결정하고, 그리고
    상기 렌더링 포맷에 기초하여, 상기 개별의 라우드스피커 로케이션에 대응하는 상기 라우드스피커 로케이션 벡터를 결정하도록 구성되는, 상기 복수의 라우드스피커 로케이션 벡터들을 결정하고; 그리고
    복수의 피연산자들의 합으로서 상기 공간 벡터를 결정하는 것으로서, 상기 복수의 피연산자들의 각각의 개별의 피연산자는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 상기 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 개별의 라우드스피커 로케이션에 대응하는 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터와 동등한, 상기 공간 벡터를 결정하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  15. 제 14 항에 있어서,
    상기 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 하나 이상의 프로세서들은 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정하기 위해 벡터 기반 진폭 플래닝 (vector base amplitude planning; VBAP) 을 사용하도록 구성되는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  16. 제 9 항에 있어서,
    1 에서 N 까지의 범위인 각각의 값 n 에 대해, 제 1 복수의 라우드스피커 로케이션들의 n 번째 라우드스피커 로케이션 벡터는 제 1 매트릭스, 제 2 매트릭스, 및 제 3 매트릭스의 곱셈에서 비롯되는 매트릭스의 트랜스포즈와 동등하고, 상기 제 1 매트릭스는 복수의 라우드스피커 포지션들에서 라우드스피커 포지션들의 수와 수에서 동등한 엘리먼트들의 단일의 개별의 로우로 이루어지고, 상기 엘리먼트들의 개별의 로우의 n 번째 엘리먼트는 1 과 동등하고 상기 개별의 로우의 상기 n 번째 엘리먼트 외의 엘리먼트들은 0 과 동등하고, 상기 제 2 매트릭스는 렌더링 매트릭스 및 상기 렌더링 매트릭스의 트랜스포즈의 곱셈에서 비롯되는 매트릭스의 역이고, 상기 제 3 매트릭스는 상기 렌더링 매트릭스와 동등하며, 상기 렌더링 매트릭스는 상기 제 1 복수의 라우드스피커 로케이션들에 기초하고, 그리고 N 은 상기 제 1 복수의 라우드스피커 로케이션들에서의 라우드스피커 로케이션들의 수에 동등한, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  17. 제 9 항에 있어서,
    상기 오디오 신호를 캡처하도록 구성된 마이크로폰을 더 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 디바이스.
  18. 코딩된 오디오 비트스트림을 디코딩하는 방법으로서,
    상기 코딩된 오디오 비트스트림으로부터, 오디오 객체의 오디오 신호의 객체-기반의 표현을 획득하는 단계로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 오디오 신호의 객체-기반의 표현을 획득하는 단계;
    상기 코딩된 오디오 비트스트림으로부터, 상기 오디오 객체에 대한 공간 벡터의 표현을 획득하는 단계로서, 상기 공간 벡터는 고차 앰비소닉스 (Higher-Order Ambisonics, HOA) 도메인에서 정의되고 제 1 복수의 라우드스피커 로케이션들에 기초하는, 상기 공간 벡터의 표현을 획득하는 단계;
    상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터에 기초하여, 복수의 오디오 신호들을 생성하는 단계로서, 상기 복수의 오디오 신호들의 각각의 개별의 오디오 신호는 상기 제 1 복수의 라우드스피커 로케이션들과 상이한 제 2 복수의 라우드스피커 로케이션들에서의 복수의 로컬 라우드스피커들에서 개별의 라우드스피커에 대응하는, 상기 복수의 오디오 신호들을 생성하는 단계를 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  19. 제 18 항에 있어서,
    하나 이상의 카메라들로부터 이미지들을 획득하는 단계; 및
    상기 이미지들에 기초하여 로컬 라우드스피커 셋업 정보를 결정하는 단계로서, 상기 로컬 라우드스피커 셋업 정보는 상기 로컬 라우드스피커들의 포지션들을 나타내는, 상기 로컬 라우드스피커 셋업 정보를 결정하는 단계를 더 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  20. 제 19 항에 있어서,
    상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터를 상기 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수들의 세트로 컨버팅하는 단계; 및
    상기 HOA 계수들의 세트에 렌더링 포맷을 적용함으로써 상기 복수의 오디오 신호들을 생성하는 단계로서, 상기 로컬 라우드스피커 셋업 정보는 상기 렌더링 포맷의 형태인, 상기 복수의 오디오 신호들을 생성하는 단계를 더 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  21. 제 18 항에 있어서,
    상기 방법은 상기 오디오 객체의 상기 오디오 신호 및 상기 공간 벡터를 상기 시간 인터벌 동안 사운드 필드를 설명하는 HOA 계수들의 세트로 컨버팅하는 단계를 더 포함하고; 그리고
    상기 복수의 오디오 신호들을 생성하는 단계는 상기 HOA 계수들의 세트에 렌더링 포맷을 적용하는 단계를 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  22. 제 21 항에 있어서,
    상기 오디오 신호 및 상기 공간 벡터를 상기 HOA 계수들의 세트로 컨버팅하는 단계는, 상기 HOA 계수들의 세트가 상기 오디오 신호 곱하기 상기 공간 벡터의 트랜스포즈와 동등하도록, 상기 HOA 계수들의 세트를 결정하는 단계를 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  23. 제 21 항에 있어서,
    상기 오디오 객체는 제 1 오디오 객체이고, 상기 공간 벡터는 제 1 공간 벡터이고, 그리고 상기 방법은,
    상기 코딩된 오디오 비트스트림으로부터, 복수의 객체-기반의 표현들을 획득하는 단계로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현이며, 상기 복수의 오디오 객체들은 상기 제 1 오디오 객체를 포함하는, 상기 복수의 객체-기반의 표현들을 획득하는 단계;
    상기 코딩된 오디오 비트스트림으로부터, 복수의 공간 벡터 표현들을 획득하는 단계로서, 상기 복수의 표현들의 각각의 개별의 공간 벡터 표현은 상기 복수의 오디오 객체들의 개별의 오디오 객체에 대한 공간 벡터의 개별의 표현이고, 상기 복수의 공간 벡터 표현들의 각각의 개별의 공간 벡터 표현은 HOA 도메인에서 정의되고 상기 제 1 복수의 라우드스피커 로케이션들에 기초하며, 상기 복수의 공간 벡터 표현들은 상기 제 1 오디오 객체에 대한 공간 벡터의 표현을 포함하는, 상기 복수의 공간 벡터 표현들을 획득하는 단계;
    상기 복수의 오디오 객체들 중 각각의 개별의 오디오 객체에 대해, 상기 개별의 오디오 객체에 대한 HOA 계수들의 개별의 세트를 결정하여, 상기 개별의 오디오 객체에 대한 상기 HOA 계수들의 세트가 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 공간 벡터의 트랜스포즈와 동등하도록 하는 단계; 및
    상기 복수의 오디오 객체들에 대한 HOA 계수들의 세트들의 합에 기초하여 상기 사운드 필드를 설명하는 상기 HOA 계수들의 세트를 결정하는 단계를 더 포함하는, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  24. 제 21 항에 있어서,
    상기 공간 벡터는 복수의 피연산자들의 합과 동등하고,
    상기 복수의 피연산자들의 각각의 개별의 피연산자는, 상기 제 1 복수의 라우드스피커의 로케이션들의 개별의 라우드스피커 로케이션에 대응하고;
    상기 제 1 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해,
    복수의 라우드스피커 로케이션 벡터들은 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터를 포함하고,
    상기 개별의 라우드스피커 로케이션에 대응하는 상기 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대한 라우드스피커 로케이션 벡터와 동등하고, 그리고
    상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터는 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  25. 제 18 항에 있어서,
    1 에서 N 까지의 범위인 각각의 값 n 에 대해, 제 1 복수의 라우드스피커 로케이션들의 n 번째 라우드스피커 로케이션 벡터는 제 1 매트릭스, 제 2 매트릭스, 및 제 3 매트릭스의 곱셈에서 비롯되는 매트릭스의 트랜스포즈와 동등하고, 상기 제 1 매트릭스는 복수의 라우드스피커 포지션들에서 라우드스피커 포지션들의 수와 수에서 동등한 엘리먼트들의 단일의 개별의 로우로 이루어지고, 상기 엘리먼트들의 개별의 로우의 n 번째 엘리먼트는 1 과 동등하고 상기 개별의 로우의 상기 n 번째 엘리먼트 외의 엘리먼트들은 0 과 동등하고, 상기 제 2 매트릭스는 렌더링 매트릭스 및 상기 렌더링 매트릭스의 트랜스포즈의 곱셈에서 비롯되는 매트릭스의 역이고, 상기 제 3 매트릭스는 상기 렌더링 매트릭스와 동등하며, 상기 렌더링 매트릭스는 상기 제 1 복수의 라우드스피커 로케이션들에 기초하고, 그리고 N 은 상기 제 1 복수의 라우드스피커 로케이션들에서의 라우드스피커 로케이션들의 수에 동등한, 코딩된 오디오 비트스트림을 디코딩하는 방법.
  26. 코딩된 오디오 비트스트림을 인코딩하는 방법으로서,
    오디오 객체의 오디오 신호 및 상기 오디오 객체의 가상의 소스 로케이션을 나타내는 데이터를 수신하는 단계로서, 상기 오디오 신호는 시간 인터벌에 대응하는, 상기 데이터를 수신하는 단계;
    상기 오디오 객체에 대한 상기 가상의 소스 로케이션을 나타내는 데이터 및 복수의 라우드스피커 로케이션들을 나타내는 데이터에 기초하여, 고차 앰비소닉스 (HOA) 도메인에서 상기 오디오 객체의 공간 벡터를 결정하는 단계; 및
    상기 코딩된 오디오 비트스트림에서, 상기 공간 벡터를 나타내는 상기 오디오 신호 및 데이터의 객체-기반의 표현을 포함하는 단계를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법.
  27. 제 26 항에 있어서,
    하나 이상의 카메라들로부터 이미지들을 획득하는 단계; 및
    상기 이미지들에 기초하여 상기 라우드스피커 로케이션들을 결정하는 단계를 더 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법.
  28. 제 26 항에 있어서,
    상기 시간 인터벌 동안 상기 오디오 신호를 포함하는 사운드 필드를 설명하는 고차 앰비소닉스 (HOA) 계수들의 세트는 상기 오디오 신호 곱하기 상기 공간 벡터의 트랜스포즈와 동등한, 코딩된 오디오 비트스트림을 인코딩하는 방법.
  29. 제 26 항에 있어서,
    상기 오디오 객체는 제 1 오디오 객체이고, 상기 공간 벡터는 제 1 공간 벡터이고, 그리고 상기 방법은,
    상기 코딩된 오디오 비트스트림에서, 복수의 객체-기반의 표현들을 포함하는 단계로서, 상기 복수의 객체-기반의 표현들의 각각의 개별의 객체-기반의 표현은 복수의 오디오 객체들의 개별의 오디오 객체의 개별의 표현이며, 상기 복수의 오디오 객체들은 상기 제 1 오디오 객체를 포함하는, 상기 복수의 객체-기반의 표현들을 포함하는 단계;
    상기 복수의 오디오 객체들의 각각의 개별의 오디오 객체에 대해:
    상기 개별의 오디오 객체의 개별의 가상의 소스 로케이션을 표시하는 데이터 및 상기 복수의 라우드스피커 로케이션들을 표시하는 데이터에 기초하여, 상기 개별의 오디오 객체에 대한 개별의 공간 벡터의 표현을 결정하는 단계로서, 상기 개별의 오디오 객체에 대한 상기 개별의 공간 벡터는 HOA 도메인에서 정의되고, 상기 개별의 오디오 객체에 대한 HOA 계수들의 개별의 세트는 상기 개별의 오디오 객체의 오디오 신호 곱하기 상기 개별의 오디오 객체에 대한 상기 개별의 공간 벡터의 트랜스포즈와 동등한, 상기 개별의 공간 벡터의 표현을 결정하는 단계; 및
    상기 코딩된 오디오 비트스트림에서, 상기 개별의 오디오 객체에 대한 상기 개별의 공간 벡터의 표현을 포함하는 단계를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법.
  30. 제 26 항에 있어서,
    상기 공간 벡터를 결정하는 단계는:
    고차 앰비소닉스 (HOA) 계수들의 세트를 상기 라우드스피커 로케이션들에서의 라우드스피커들에 대한 라우드스피커 피드들로 렌더링하기 위한 렌더링 포맷을 결정하는 단계;
    복수의 라우드스피커 로케이션 벡터들을 결정하는 단계로서,
    상기 복수의 라우드스피커 로케이션 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 그리고
    상기 복수의 라우드스피커 로케이션 벡터들을 결정하는 단계는, 상기 복수의 라우드스피커 로케이션 벡터들의 각각의 개별의 라우드스피커 로케이션 벡터에 대해,
    상기 오디오 객체의 로케이션 좌표들에 기초하여, 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터를 결정하는 단계로서, 상기 개별의 라우드스피커 로케이션에 대한 상기 이득 팩터가 상기 개별의 라우드스피커 로케이션에서의 상기 오디오 신호에 대한 개별의 이득을 나타내는, 상기 이득 팩터를 결정하는 단계; 및
    상기 렌더링 포맷에 기초하여, 상기 개별의 라우드스피커 로케이션에 대응하는 상기 라우드스피커 로케이션 벡터를 결정하는 단계를 포함하는, 상기 복수의 라우드스피커 로케이션 벡터들을 결정하는 단계; 및
    복수의 피연산자들의 합으로서 상기 공간 벡터를 결정하는 단계로서, 상기 복수의 피연산자들의 각각의 개별의 피연산자는 상기 복수의 라우드스피커 로케이션들의 개별의 라우드스피커 로케이션에 대응하고, 상기 복수의 라우드스피커 로케이션들의 각각의 개별의 라우드스피커 로케이션에 대해, 상기 개별의 라우드스피커 로케이션에 대응하는 피연산자는 상기 개별의 라우드스피커 로케이션에 대한 이득 팩터 곱하기 상기 개별의 라우드스피커 로케이션에 대응하는 라우드스피커 로케이션 벡터와 동등한, 상기 공간 벡터를 결정하는 단계를 포함하는, 코딩된 오디오 비트스트림을 인코딩하는 방법.
KR1020187009766A 2015-10-08 2016-09-16 객체-기반의 오디오로부터 hoa로의 컨버전 KR102032072B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562239043P 2015-10-08 2015-10-08
US62/239,043 2015-10-08
US15/266,910 US9961475B2 (en) 2015-10-08 2016-09-15 Conversion from object-based audio to HOA
US15/266,910 2016-09-15
PCT/US2016/052251 WO2017062160A1 (en) 2015-10-08 2016-09-16 Conversion from object-based audio to hoa

Publications (2)

Publication Number Publication Date
KR20180061218A true KR20180061218A (ko) 2018-06-07
KR102032072B1 KR102032072B1 (ko) 2019-10-14

Family

ID=57043009

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187009766A KR102032072B1 (ko) 2015-10-08 2016-09-16 객체-기반의 오디오로부터 hoa로의 컨버전

Country Status (6)

Country Link
US (1) US9961475B2 (ko)
EP (1) EP3360343B1 (ko)
JP (1) JP2018534848A (ko)
KR (1) KR102032072B1 (ko)
CN (1) CN108141689B (ko)
WO (1) WO2017062160A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210390964A1 (en) * 2015-07-30 2021-12-16 Dolby Laboratories Licensing Corporation Method and apparatus for encoding and decoding an hoa representation
US10332530B2 (en) 2017-01-27 2019-06-25 Google Llc Coding of a soundfield representation
US10972859B2 (en) * 2017-04-13 2021-04-06 Sony Corporation Signal processing apparatus and method as well as program
CN110800048B (zh) 2017-05-09 2023-07-28 杜比实验室特许公司 多通道空间音频格式输入信号的处理
US10674301B2 (en) * 2017-08-25 2020-06-02 Google Llc Fast and memory efficient encoding of sound objects using spherical harmonic symmetries
US10999693B2 (en) 2018-06-25 2021-05-04 Qualcomm Incorporated Rendering different portions of audio data using different renderers
WO2021127286A1 (en) * 2019-12-18 2021-06-24 Dolby Laboratories Licensing Corporation Audio device auto-location
WO2021180310A1 (en) 2020-03-10 2021-09-16 Telefonaktiebolaget Lm Ericsson (Publ) Representation and rendering of audio objects

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140226823A1 (en) * 2013-02-08 2014-08-14 Qualcomm Incorporated Signaling audio rendering information in a bitstream
KR20150032718A (ko) * 2012-07-19 2015-03-27 톰슨 라이센싱 다채널 오디오 신호들의 렌더링을 향상시키기 위한 방법 및 디바이스

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4676140B2 (ja) 2002-09-04 2011-04-27 マイクロソフト コーポレーション オーディオの量子化および逆量子化
EP2094032A1 (en) 2008-02-19 2009-08-26 Deutsche Thomson OHG Audio signal, method and apparatus for encoding or transmitting the same and method and apparatus for processing the same
US8964994B2 (en) 2008-12-15 2015-02-24 Orange Encoding of multichannel digital audio signals
GB2476747B (en) * 2009-02-04 2011-12-21 Richard Furse Sound system
EP2389016B1 (en) 2010-05-18 2013-07-10 Harman Becker Automotive Systems GmbH Individualization of sound signals
EP2450880A1 (en) 2010-11-05 2012-05-09 Thomson Licensing Data structure for Higher Order Ambisonics audio data
KR101642208B1 (ko) 2011-12-23 2016-07-22 인텔 코포레이션 동적 메모리 성능 스로틀링
EP2637427A1 (en) * 2012-03-06 2013-09-11 Thomson Licensing Method and apparatus for playback of a higher-order ambisonics audio signal
US9190065B2 (en) 2012-07-15 2015-11-17 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for three-dimensional audio coding using basis function coefficients
US9288603B2 (en) 2012-07-15 2016-03-15 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for backward-compatible audio coding
US20140086416A1 (en) 2012-07-15 2014-03-27 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for three-dimensional audio coding using basis function coefficients
US9473870B2 (en) 2012-07-16 2016-10-18 Qualcomm Incorporated Loudspeaker position compensation with 3D-audio hierarchical 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
CN105009207B (zh) * 2013-01-15 2018-09-25 韩国电子通信研究院 处理信道信号的编码/解码装置及方法
US9609452B2 (en) * 2013-02-08 2017-03-28 Qualcomm Incorporated Obtaining sparseness information for higher order ambisonic audio renderers
CN104982042B (zh) 2013-04-19 2018-06-08 韩国电子通信研究院 多信道音频信号处理装置及方法
CN105191354B (zh) * 2013-05-16 2018-07-24 皇家飞利浦有限公司 音频处理装置及其方法
WO2014187988A2 (en) * 2013-05-24 2014-11-27 Dolby International Ab Audio encoder and decoder
US9883312B2 (en) 2013-05-29 2018-01-30 Qualcomm Incorporated Transformed higher order ambisonics audio data
EP3503096B1 (en) 2013-06-05 2021-08-04 Dolby International AB Apparatus for decoding audio signals and method for decoding audio signals
US10580417B2 (en) * 2013-10-22 2020-03-03 Industry-Academic Cooperation Foundation, Yonsei University Method and apparatus for binaural rendering audio signal using variable order filtering in frequency domain
US9489955B2 (en) 2014-01-30 2016-11-08 Qualcomm Incorporated Indicating frame parameter reusability for coding vectors
US20150243292A1 (en) * 2014-02-25 2015-08-27 Qualcomm Incorporated Order format signaling for higher-order ambisonic audio data
US10063207B2 (en) * 2014-02-27 2018-08-28 Dts, Inc. Object-based audio loudness management
US10134403B2 (en) * 2014-05-16 2018-11-20 Qualcomm Incorporated Crossfading between higher order ambisonic signals
US9852737B2 (en) 2014-05-16 2017-12-26 Qualcomm Incorporated Coding vectors decomposed from higher-order ambisonics audio signals
JP6732739B2 (ja) * 2014-10-01 2020-07-29 ドルビー・インターナショナル・アーベー オーディオ・エンコーダおよびデコーダ
US9875745B2 (en) 2014-10-07 2018-01-23 Qualcomm Incorporated Normalization of ambient higher order ambisonic audio data
TWI744341B (zh) * 2016-06-17 2021-11-01 美商Dts股份有限公司 使用近場/遠場渲染之距離聲相偏移

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150032718A (ko) * 2012-07-19 2015-03-27 톰슨 라이센싱 다채널 오디오 신호들의 렌더링을 향상시키기 위한 방법 및 디바이스
US20140226823A1 (en) * 2013-02-08 2014-08-14 Qualcomm Incorporated Signaling audio rendering information in a bitstream

Also Published As

Publication number Publication date
US9961475B2 (en) 2018-05-01
KR102032072B1 (ko) 2019-10-14
CN108141689B (zh) 2020-06-23
EP3360343A1 (en) 2018-08-15
JP2018534848A (ja) 2018-11-22
EP3360343B1 (en) 2019-12-11
CN108141689A (zh) 2018-06-08
US20170105085A1 (en) 2017-04-13
WO2017062160A1 (en) 2017-04-13

Similar Documents

Publication Publication Date Title
KR102122672B1 (ko) 공간 벡터들의 양자화
US9747911B2 (en) Reuse of syntax element indicating vector quantization codebook used in compressing vectors
KR102032072B1 (ko) 객체-기반의 오디오로부터 hoa로의 컨버전
KR101723332B1 (ko) 회전된 고차 앰비소닉스의 바이노럴화
EP3400598B1 (en) Mixed domain coding of audio
KR102032073B1 (ko) 채널 기반의 오디오로부터 hoa로의 컨버전
WO2015175998A1 (en) Spatial relation coding for higher order ambisonic coefficients

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant