KR101756612B1 - 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시 - Google Patents

벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시 Download PDF

Info

Publication number
KR101756612B1
KR101756612B1 KR1020167023092A KR20167023092A KR101756612B1 KR 101756612 B1 KR101756612 B1 KR 101756612B1 KR 1020167023092 A KR1020167023092 A KR 1020167023092A KR 20167023092 A KR20167023092 A KR 20167023092A KR 101756612 B1 KR101756612 B1 KR 101756612B1
Authority
KR
South Korea
Prior art keywords
vector
syntax element
bitstream
quantization
unit
Prior art date
Application number
KR1020167023092A
Other languages
English (en)
Other versions
KR20160114637A (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 KR20160114637A publication Critical patent/KR20160114637A/ko
Application granted granted Critical
Publication of KR101756612B1 publication Critical patent/KR101756612B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • 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/002Dynamic bit allocation
    • 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • 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
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R5/00Stereophonic arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/002Non-adaptive circuits, e.g. manually adjustable or static, for enhancing the sound image or the spatial distribution
    • 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
    • G10L2019/0001Codebooks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2499/00Aspects covered by H04R or H04S not otherwise provided for in their subgroups
    • H04R2499/10General applications
    • H04R2499/15Transducers incorporated in visual displaying devices, e.g. televisions, computer displays, laptops
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Mathematical Physics (AREA)
  • Stereophonic System (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

일반적으로, 벡터들을 디코딩하기 위한 프레임 파라미터 재사용성을 표시하는 기법들이 설명된다. 프로세서 및 메모리를 포함하는 디바이스가 본 기법들을 수행할 수도 있다. 프로세서는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터를 포함하는 비트스트림을 획득하도록 구성될 수도 있다. 비트스트림은 벡터를 압축할 때 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자를 더 포함할 수도 있다. 메모리는 비트스트림을 저장하도록 구성될 수도 있다.

Description

벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시{INDICATING FRAME PARAMETER REUSABILITY FOR CODING VECTORS}
본 출원은 다음 미국 가출원들: "COMPRESSION OF DECOMPOSED REPRESENTATIONS OF A SOUND FIELD"란 발명의 명칭으로 2014년 1월 30일에 출원된 미국 가출원 번호 제 61/933,706호; "COMPRESSION OF DECOMPOSED REPRESENTATIONS OF A SOUND FIELD"란 발명의 명칭으로 2014년 1월 30일에 출원된 미국 가출원 번호 제 61/933,714호; "INDICATING FRAME PARAMETER REUSABILITY FOR DECODING SPATIAL VECTORS"란 발명의 명칭으로 2014년 1월 30일에 출원된 미국 가출원 번호 제 61/933,731호; "IMMEDIATE PLAY-OUT FRAME FOR SPHERICAL HARMONIC COEFFICIENTS"란 발명의 명칭으로 2014년 3월 7일에 출원된 미국 가출원 번호 제 61/949,591호; "FADE-IN/FADE-OUT OF DECOMPOSED REPRESENTATIONS OF A SOUND FIELD"란 발명의 명칭으로 2014년 3월 7일에 출원된 미국 가출원 번호 제 61/949,583호; "CODING V-VECTORS OF A DECOMPOSED HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 5월 16일에 출원된 미국 가출원 번호 제 61/994,794호; "INDICATING FRAME PARAMETER REUSABILITY FOR DECODING SPATIAL VECTORS"란 발명의 명칭으로 2014년 5월 28일에 출원된 미국 가출원 번호 제 62/004,147호; "IMMEDIATE PLAY-OUT FRAME FOR SPHERICAL HARMONIC COEFFICIENTS AND FADE-IN/FADE-OUT OF DECOMPOSED REPRESENTATIONS OF A SOUND FIELD"란 발명의 명칭으로 2014년 5월 28일에 출원된 미국 가출원 번호 제 62/004,067호; "CODING V-VECTORS OF A DECOMPOSED HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 5월 28일에 출원된, 미국 가출원 번호 제 62/004,128호; "CODING V-VECTORS OF A DECOMPOSED HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 7월 1일에 출원된, 미국 가출원 번호 제 62/019,663호; "CODING V-VECTORS OF A DECOMPOSED HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 7월 22일에 출원된, 미국 가출원 번호 제 62/027,702호; "CODING V-VECTORS OF A DECOMPOSED HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 7월 23일에 출원된, 미국 가출원 번호 제 62/028,282호; "IMMEDIATE PLAY-OUT FRAME FOR SPHERICAL HARMONIC COEFFICIENTS AND FADE-IN/FADE-OUT OF DECOMPOSED REPRESENTATIONS OF A SOUND FIELD"란 발명의 명칭으로 2014년 7월 25일에 출원된 미국 가출원 번호 제 62/029,173호; "CODING V-VECTORS OF A DECOMPOSED HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 8월 1일에 출원된, 미국 가출원 번호 제 62/032,440호; "SWITCHED V-VECTOR QUANTIZATION OF A HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 9월 26일에 출원된 미국 가출원 번호 제 62/056,248호; "PREDICTIVE VECTOR QUANTIZATION OF A DECOMPOSED HIGHER ORDER AMBISONICS (HOA) AUDIO SIGNAL"란 발명의 명칭으로 2014년 9월 26일에 출원된 미국 가출원 번호 제 62/056,286호; 및 "TRANSITIONING OF AMBIENT HIGHER-ORDER AMBISONIC COEFFICIENTS"란 발명의 명칭으로 2015년 1월 12일에 출원된 미국 가출원 번호 제 62/102,243호의 이익을 주장하며, 전술한 리스트된 미국 가출원들의 각각이 그들 각각의 전체로 본원에서 개시된 것처럼 참조로 포함된다.
기술 분야
본 개시물은 오디오 데이터, 좀더 구체적으로는, 고-차수 앰비소닉 오디오 데이터의 코딩에 관한 것이다.
고차 앰비소닉스 (higher-order ambisonics; HOA) 신호 (종종 복수의 구면 고조파 계수들 (spherical harmonic coefficients; SHC) 또는 다른 계층적 엘리먼트들에 의해 표현됨) 는 음장의 3차원의 표현이다. HOA 또는 SHC 표현은 음장을, SHC 신호로부터 렌더링되는 멀티-채널 오디오 신호를 플레이백하는데 사용되는 로컬 스피커 기하학적 구조 (local speaker geometry) 와 독립적 방법으로 표현할 수도 있다. SHC 신호는 또한 SHC 신호가 5.1 오디오 채널 포맷 또는 7.1 오디오 채널 포맷과 같은, 널리 공지된 그리고 많이 채택된 멀티-채널 포맷들로 렌더링될 수도 있기 때문에, 역방향 호환성 (backwards compatibility) 을 용이하게 할 수도 있다. 따라서 SHC 표현은 역방향 호환성을 또한 수용하는 더 나은 음장의 표현을 가능하게 할 수도 있다.
일반적으로, 고-차수 앰비소닉스 오디오 데이터의 코딩을 위한 기법들이 설명된다. 고-차수 앰비소닉스 오디오 데이터는 1보다 큰 차수를 가지는 구면 고조파 기저 함수에 대응하는 적어도 하나의 구면 고조파 계수를 포함할 수도 있다.
일 양태에서, 효율적인 비트 사용의 방법은 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터를 포함하는 비트스트림을 획득하는 단계를 포함한다. 비트스트림은 벡터를 압축하는데 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자를 더 포함한다.
다른 양태에서, 효율적인 비트 사용을 수행하도록 구성된 디바이스는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터를 포함하는 비트스트림을 획득하도록 구성된 하나 이상의 프로세서들을 포함한다. 비트스트림은 벡터를 압축하는데 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자를 더 포함한다. 본 디바이스는 비트스트림을 저장하도록 구성된 메모리를 포함한다.
다른 양태에서, 효율적인 비트 사용을 수행하도록 구성된 디바이스는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터를 포함하는 비트스트림을 획득하는 수단을 포함한다. 비트스트림은 벡터를 압축하는데 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자를 더 포함한다. 디바이스는 또한 표시자를 저장하는 수단을 포함한다.
다른 양태에서, 비일시성 컴퓨터-판독가능 저장 매체는, 실행될 때, 하나 이상의 프로세서들로 하여금, 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터를 포함하는 비트스트림을 획득하도록 하는 명령들을 저장하고 있으며, 상기 비트스트림은 벡터를 압축하는데 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자를 더 포함한다.
본 기법들의 하나 이상의 양태들의 세부 사항들은 첨부도면 및 아래의 상세한 설명에서 개시된다. 본 기법들의 다른 특징들, 목적들, 및 이점들은 설명 및 도면들로부터, 그리고 청구범위로부터 명백히 알 수 있을 것이다.
도 1 은 여러 차수들 및 하위-차수들의 구면 고조파 (spherical harmonic) 기저 함수들을 예시하는 다이어그램이다.
도 2 는 본 개시물에서 설명하는 기법들의 여러 양태들을 수행할 수도 있는 시스템을 예시하는 다이어그램이다.
도 3 은 본 개시물에서 설명하는 기법들의 여러 양태들을 수행할 수도 있는 도 2 의 예에 나타낸 오디오 인코딩 디바이스의 일 예를 좀더 자세하게 예시하는 블록도이다.
도 4 는 도 2 의 오디오 디코딩 디바이스를 좀더 자세하게 예시하는 블록도이다.
도 5a 는 본 개시물에서 설명되는 벡터-기반 합성 기법들의 여러 양태들을 수행할 때에 오디오 인코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
도 5b 는 본 개시물에서 설명되는 코딩 기법들의 여러 양태들을 수행할 때에 오디오 인코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
도 6a 는 본 개시물에서 설명하는 기법들의 여러 양태들을 수행할 때에 오디오 디코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
도 6b 는 본 개시물에서 설명되는 코딩 기법들의 여러 양태들을 수행할 때에 오디오 디코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
도 7 은 압축된 공간 구성요소들을 규정하는 비트스트림의 프레임들을 좀더 자세하게 예시하는 다이어그램이다.
도 8 은 압축된 공간 구성요소들을 규정할 수도 있는 비트스트림 또는 부 채널 정보의 부분을 좀더 자세하게 예시하는 다이어그램이다.
오늘날 서라운드 사운드의 발전은 엔터테인먼트에 대한 많은 출력 포맷들을 이용가능하게 하였다. 이러한 소비자 서라운드 사운드 포맷들의 예들은 그들이 라우드스피커들에의 공급들을 어떤 기하학적인 좌표들로 암시적으로 규정한다는 점에서 주로 '채널' 기반이다. 소비자 서라운드 사운드 포맷들은 (다음 6개의 채널들: 전면 좌측 (FL), 전면 우측 (FR), 중심 또는 전면 중앙, 후면 좌측 또는 서라운드 좌측, 후면 우측 또는 서라운드 우측, 및 저주파수 효과들 (LFE) 을 포함하는) 인기 있는 5.1 포맷, 성장하는 7.1 포맷, 및 (예컨대, 초고화질 텔레비전 표준 (Ultra High Definition Television standard) 과 함께 사용하기 위한) 22.2 포맷 및 7.1.4 포맷과 같은, 높이 스피커들을 포함하는 다양한 포맷들을 포함한다. 비-소비자 포맷들은 '서라운드 어레이들' 로서 종종 불리는 임의 개수의 스피커들을 (대칭 및 비-대칭 기하학적 구조들로) 포괄할 수 있다. 이러한 어레이의 일 예는 트렁케이트된 (truncated) 20면체의 모서리들 상의 좌표들 상에 위치되는 32 개의 라우드스피커들을 포함한다.
미래 MPEG 인코더에의 입력은 옵션적으로 다음 3개의 가능한 포맷들 중 하나이다: (i) (위에서 설명한 바와 같이) 사전-규정된 위치들에서 라우드스피커들을 통해서 플레이되어야 하는 전통적인 채널-기반의 오디오; (ii) (다른 정보 중에서) 그들의 로케이션 좌표들을 포함하는 연관된 메타데이터를 가진 단일 오디오 오브젝트들에 대한 이산 펄스-코드-변조 (PCM) 데이터를 수반하는 오브젝트-기반의 오디오; 및 (iii) 구면 고조파 기저 함수들의 계수들 (또한, "구면 고조파 계수들", 또는 SHC, "고-차수 앰비소닉스" 또는 HOA, 및 "HOA 계수들" 라 함) 을 이용하여 음장을 표현하는 것을 수반하는 장면-기반의 오디오. 미래 MPEG 인코더는 2013년 1월, 스위스, 제네바에서 배포되며, 그리고 http://mpeg.chiariglione.org/sites/default/files/files/standards/parts/docs/w13411.zip 에서 입수가능한, ISO/IEC (International Organization for Standardization/International Electrotechnical Commission) JTC1/SC29/WG11/N13411 에 의한, "Call for Proposals for 3D Audio" 란 제목으로 된 문서에 좀더 자세히 설명되었을 수도 있다.
시장에서는 여러 '서라운드-사운드' 채널-기반 포맷들이 있다. 그들은 예를 들어, (스테레오를 넘어서 거실들로 잠식해 들어가는 관점에서 가장 성공적이었던) 5.1 홈 시어터 시스템으로부터, NHK (Nippon Hoso Kyokai 또는 일본 방송 협회 (Japan Broadcasting Corporation)) 에 의해 개발된 22.2 시스템에 이른다. 콘텐츠 생성자들 (예컨대, 할리우드 스튜디오들) 은 영화용 사운드트랙을 한번 제작하고, 각각의 스피커 구성을 위해 그것을 재믹싱하는데 노력을 들이지 않기를 원할 것이다. 최근, 표준들 개발 조직들은 표준화된 비트스트림으로의 인코딩, 및 스피커 기하학적 구조 (및 개수) 및 (렌더러를 포함한) 플레이백의 로케이션에서의 음향 조건들에 적응가능하고 독립적인 후속 디코딩을 제공할 방법들을 고려하고 있다.
콘텐츠 생성자들에게 이러한 유연성을 제공하기 위해, 음장을 표현하는데 엘리먼트들의 계층적 세트가 사용될 수도 있다. 엘리먼트들의 계층적 세트는 낮은-차수의 엘리먼트들의 기본적인 세트가 모델링된 음장의 풀 표현을 제공하도록 엘리먼트들이 차수화된 엘리먼트들의 세트를 지칭할 수도 있다. 그 세트가 고-차수 엘리먼트들을 포함하도록 확장되므로, 그 표현이 좀더 상세해져, 해상도를 증가시킨다.
엘리먼트들의 계층적 세트의 일 예는 구면 고조파 계수들의 세트 (SHC) 이다. 다음 수식은 음장의 설명 또는 표현을 SHC 를 이용하여 설명한다:
Figure 112016082128710-pct00001
수식은 시간 t 에서 음장의 임의의 지점
Figure 112016082128710-pct00002
에서의 압력
Figure 112016082128710-pct00003
이, SHC,
Figure 112016082128710-pct00004
에 의해 고유하게 표현될 수 있다는 것을 나타낸다. 여기서, k=ω/c, c 는 사운드의 속도 (~343 m/s) 이고,
Figure 112016082128710-pct00005
는 참조의 지점 (또는, 관측 지점) 이고,
Figure 112016082128710-pct00006
는 차수 n 의 구면 Bessel 함수이고, 그리고
Figure 112016082128710-pct00007
는 차수 n 및 하위차수 m 의 구면 고조파 기저 함수들이다. 꺽쇠 괄호들 내 항은 이산 푸리에 변환 (DFT), 이산 코사인 변환 (DCT), 또는 웨이블릿 변환과 같은, 여러 시간-주파수 변환들에 의해 근사화될 수 있는 신호의 주파수-도메인 표현 (즉,
Figure 112016082128710-pct00008
) 인 것을 알 수 있다. 계층적 세트들의 다른 예들은 웨이블릿 변환 계수들의 세트들 및 다중해상도 기저 함수들의 계수들의 다른 세트들을 포함한다.
도 1 은 제로 차수 (n = 0) 로부터 제 4 차수 (n = 4) 까지의 구면 고조파 기저 함수들을 예시하는 다이어그램이다. 볼 수 있는 바와 같이, 각각의 차수에 대해, 예시의 용이 목적을 위해 도 1 의 예에 나타내지만 명시적으로 표시되지 않은 하위차수들 m 의 확장이 존재한다.
SHC
Figure 112016082128710-pct00009
는 여러 마이크로폰 어레이 구성들에 의해 물리적으로 획득될 (예컨대, 기록될) 수 있거나, 또는 이의 대안으로, 그들은 음장의 채널-기반의 또는 오브젝트-기반의 설명들로부터 유도될 수 있다. SHC 는 장면-기반의 오디오를 나타내며, 여기서, SHC 는 좀더 효율적인 송신 또는 저장을 증진할 수도 있는 인코딩된 SHC 를 획득하기 위해 오디오 인코더에 입력될 수도 있다. 예를 들어, (1+4)2 (25, 따라서, 제 4 차수) 계수들을 수반하는 제 4-차수 표현이 사용될 수도 있다.
위에서 언급한 바와 같이, SHC 는 마이크로폰 어레이를 이용한 마이크로폰 리코딩으로부터 유도될 수도 있다. SHC 가 마이크로폰 어레이들로부터 유도될 수 있는 방법의 여러 예들은 2005년 11월, J. Audio Eng. Soc., Vol. 53, No. 11, pp. 1004-1025, Poletti, M., "Three-Dimensional Surround Sound Systems Based on Spherical Harmonics" 에 설명되어 있다.
SHC들이 어떻게 오브젝트-기반의 설명으로부터 유도될 수 있는지를 예시하기 위해, 다음 방정식을 고려한다. 개개의 오디오 오브젝트에 대응하는 음장에 대한 계수들
Figure 112016082128710-pct00010
은 다음과 같이 표현될 수도 있다:
Figure 112016082128710-pct00011
여기서, i 는
Figure 112016082128710-pct00012
이고,
Figure 112016082128710-pct00013
는 차수 n 의 (제 2 종의) 구면 Hankel 함수이고,
Figure 112016082128710-pct00014
는 오브젝트의 로케이션이다. (예컨대, PCM 스트림에 관해 고속 푸리에 변환을 수행하는 것과 같은, 시간-주파수 분석 기법들을 이용하여) 오브젝트 소스 에너지 g(ω) 를 주파수의 함수로서 아는 것은 우리가 각각의 PCM 오브젝트 및 그의 로케이션을 SHC
Figure 112016082128710-pct00015
로 변환가능하게 한다. 또, (상기가 선형 및 직교 분해이므로) 각각의 오브젝트에 대한
Figure 112016082128710-pct00016
계수들이 누적되는 것으로 표시될 수 있다. 이러한 방법으로, 다수의 PCM 오브젝트들은
Figure 112016082128710-pct00017
계수들에 의해 (예컨대, 개개의 오브젝트들에 대한 계수 벡터들의 합계로서) 표현될 수 있다. 본질적으로, 계수들은 음장에 관한 정보 (3D 좌표들의 함수로서의 압력) 을 포함하며, 상기는 관측 지점
Figure 112016082128710-pct00018
근처에서, 개개의 오브젝트들로부터 전체 음장의 표현으로의 변환을 나타낸다. 나머지 도면들은 오브젝트-기반 및 SHC-기반 오디오 코딩의 상황에서 아래에서 설명된다.
도 2 는 본 개시물에서 설명하는 기법들의 여러 양태들을 수행할 수도 있는 시스템 (10) 을 예시하는 다이어그램이다. 도 2 의 예에 나타낸 바와 같이, 시스템 (10) 은 콘텐츠 생성자 디바이스 (12) 및 콘텐츠 소비자 디바이스 (14) 를 포함한다. 콘텐츠 생성자 디바이스 (12) 및 콘텐츠 소비자 디바이스 (14) 의 상황에서 설명되지만, 이 기법들은 (HOA 계수들로서 또한 지칭될 수도 있는) SHC들 또는 음장의 임의의 다른 계층적 표현이 오디오 데이터를 나타내는 비트스트림을 형성하기 위해 인코딩되는 임의의 상황에서 구현될 수도 있다. 더욱이, 콘텐츠 생성자 디바이스 (12) 는 몇개의 예들을 제공하자면, 핸드셋 (또는, 셀룰러폰), 태블릿 컴퓨터, 스마트 폰, 또는 데스크탑 컴퓨터를 포함한, 본 개시물에서 설명하는 기법들을 구현하는 것이 가능한 임의 유형의 컴퓨팅 디바이스를 나타낼 수도 있다. 이와 유사하게, 콘텐츠 소비자 디바이스 (14) 는 몇개의 예들을 제공하자면 핸드셋 (또는, 셀룰러폰), 태블릿 컴퓨터, 스마트 폰, 셋-탑 박스, 또는 데스크탑 컴퓨터를 포함한, 본 개시물에서 설명하는 기법들을 구현하는 것이 가능한 임의 유형의 컴퓨팅 디바이스를 나타낼 수도 있다.
콘텐츠 생성자 디바이스 (12) 는 콘텐츠 소비자 디바이스 (14) 와 같은 콘텐츠 소비자들의 조작자에 의한 소비를 위해 멀티-채널 오디오 콘텐츠를 발생할 수도 있는 영화 스튜디오 또는 다른 엔터티에 의해 동작될 수도 있다. 일부 예들에서, 콘텐츠 생성자 디바이스 (12) 는 HOA 계수들 (11) 을 압축하기를 원하는 개개의 사용자에 의해 동작될 수도 있다. 종종, 콘텐츠 생성자는 비디오 콘텐츠와 함께 오디오 콘텐츠를 발생시킨다. 콘텐츠 소비자 디바이스 (14) 는 개개인에 의해 동작될 수도 있다. 콘텐츠 소비자 디바이스 (14) 는 멀티-채널 오디오 콘텐츠로서 플레이백을 위한 SHC 를 렌더링하는 것이 가능한 임의 유형의 오디오 플레이백 시스템을 지칭할 수도 있는 오디오 플레이백 시스템 (16) 을 포함할 수도 있다.
콘텐츠 생성자 디바이스 (12) 는 오디오 편집 시스템 (18) 을 포함한다. 콘텐츠 생성자 디바이스 (12) 는 라이브 리코딩들 (7) 을 (HOA 계수들로서 직접 포함하는) 여러 포맷들로, 그리고 콘텐츠 생성자 디바이스 (12) 가 오디오 편집 시스템 (18) 을 이용하여 편집할 수도 있는 오디오 오브젝트들 (9) 을 획득한다. 콘텐츠 생성자는 편집 프로세스 동안, 추가로 편집할 필요가 있는 음장의 여러 양태들을 식별하려는 시도로 렌더링된 스피커 피드들을 청취하는 오디오 오브젝트들 (9) 로부터 HOA 계수들 (11) 을 렌더링할 수도 있다. 콘텐츠 생성자 디바이스 (12) 는 그후 (잠재적으로는, 소스 HOA 계수들이 위에서 설명된 방법으로 유도될 수도 있는 오디오 오브젝트들 (9) 중 상이한 하나의 조작을 통해서 간접적으로) HOA 계수들 (11) 을 편집할 수도 있다. 콘텐츠 생성자 디바이스 (12) 는 HOA 계수들 (11) 을 발생시키기 위해 오디오 편집 시스템 (18) 을 채용할 수도 있다. 오디오 편집 시스템 (18) 은 오디오 데이터를 편집하여 오디오 데이터를 하나 이상의 소스 구면 고조파 계수들로서 출력하는 것이 가능한 임의의 시스템을 나타낸다.
편집 프로세스가 완료될 때, 콘텐츠 생성자 디바이스 (12) 는 HOA 계수들 (11) 에 기초하여 비트스트림 (21) 을 발생시킬 수도 있다. 즉, 콘텐츠 생성자 디바이스 (12) 는 비트스트림 (21) 을 발생시키는 본 개시물에서 설명하는 기법들의 여러 양태들에 따라서 HOA 계수들 (11) 을 인코딩하거나 또는 아니면 압축하도록 구성된 디바이스를 나타내는 오디오 인코딩 디바이스 (20) 를 포함한다. 오디오 인코딩 디바이스 (20) 는 일 예로서, 유선 또는 무선 채널, 데이터 저장 디바이스, 또는 기타 등등일 수도 있는 송신 채널을 통한 송신을 위해 비트스트림 (21) 을 발생시킬 수도 있다. 비트스트림 (21) 은 HOA 계수들 (11) 의 인코딩된 버전을 나타낼 수도 있으며, 1차 비트스트림 및 부 채널 정보로서 지칭될 수도 있는 다른 부 비트스트림 (side bitstream) 을 포함할 수도 있다.
아래에서 좀더 자세하게 설명되지만, 오디오 인코딩 디바이스 (20) 는 벡터-기반 합성 또는 방향-기반 합성에 기초하여 HOA 계수들 (11) 을 인코딩하도록 구성될 수도 있다. 벡터-기반 분해 방법론 또는 방향-기반 분해 방법론을 수행할지 여부를 결정하기 위해, 오디오 인코딩 디바이스 (20) 는 HOA 계수들 (11) 에 적어도 부분적으로 기초하여, HOA 계수들 (11) 이 음장의 자연스러운 리코딩 (예컨대, 라이브 리코딩 7) 을 통해서 발생되었는지 또는 일 예로서, PCM 오브젝트와 같은, 오디오 오브젝트들 (9) 로부터 인공적으로 (즉, 합성적으로) 발생되었는지 여부를 결정할 수도 있다. HOA 계수들 (11) 이 오디오 오브젝트들 (9) 로부터 발생되었을 때, 오디오 인코딩 디바이스 (20) 는 방향-기반 분해 방법론을 이용하여 HOA 계수들 (11) 을 인코딩할 수도 있다. HOA 계수들 (11) 이 예를 들어, eigenmike 를 이용하여 라이브로 캡쳐되었을 때, 오디오 인코딩 디바이스 (20) 는 벡터-기반 분해 방법론에 기초하여 HOA 계수들 (11) 을 인코딩할 수도 있다. 상기 차이 (distinction) 는 벡터-기반의 또는 방향-기반 분해 방법론이 채용될 수도 있는 경우의 일 예를 나타낸다. 자연스러운 리코딩들, 인공적으로 발생된 콘텐츠 또는 2개의 혼합물 (하이브리드 콘텐츠) 에 대해 어느 하나 또는 양쪽이 유용할 수도 있는 다른 경우들이 있을 수도 있다. 더욱이, HOA 계수들의 단일 시간-프레임을 코딩하는데 양쪽의 방법론들을 동시에 사용하는 것이 또한 가능하다.
예시의 목적을 위해, HOA 계수들 (11) 이 라이브로 캡쳐되었다고 또는 아니면 라이브 리코딩 7 과 같은 라이브 리코딩들을 나타낸다고 오디오 인코딩 디바이스 (20) 가 결정한다고 가정하면, 오디오 인코딩 디바이스 (20) 는 선형 가역 변환 (linear invertible transform; LIT) 의 적용을 수반하는 벡터-기반 분해 방법론을 이용하여 HOA 계수들 (11) 을 인코딩하도록 구성될 수도 있다. 선형 가역 변환의 일 예는 "특이 값 분해" (또는, "SVD") 로서 지칭된다. 이 예에서, 오디오 인코딩 디바이스 (20) 는 HOA 계수들 (11) 의 분해된 버전을 결정하기 위해 SVD 를 HOA 계수들 (11) 에 적용할 수도 있다. 오디오 인코딩 디바이스 (20) 는 그후 HOA 계수들 (11) 의 분해된 버전의 재배열을 촉진할 수도 있는 여러 파라미터들을 식별하기 위해, HOA 계수들 (11) 의 분해된 버전을 분석할 수도 있다. 오디오 인코딩 디바이스 (20) 는 그후 식별된 파라미터들을 이용하여 HOA 계수들 (11) 의 분해된 버전을 재배열할 수도 있으며, 여기서, 이러한 재배열은, 이하에서 더 자세히 설명하는 바와 같이, 그 변환이 HOA 계수들의 프레임들 (여기서, 프레임은 HOA 계수들 (11) 의 M 개의 샘플들을 포함할 수도 있으며 M 은 일부 예들에서, 1024 로 설정된다) 을 가로질러 HOA 계수들을 재배열할 수도 있다는 점을 고려하면, 코딩 효율을 향상시킬 수도 있다. HOA 계수들 (11) 의 분해된 버전을 재배열한 후, 오디오 인코딩 디바이스 (20) 는 음장의 포그라운드 (또는, 즉, 독특한, 지배적인 또는 현저한) 구성요소들을 나타내는 HOA 계수들 (11) 의 분해된 버전을 선택할 수도 있다. 오디오 인코딩 디바이스 (20) 는 포그라운드 구성요소들을 나타내는 HOA 계수들 (11) 의 분해된 버전을 오디오 오브젝트 및 연관된 방향 정보로서 규정할 수도 있다.
오디오 인코딩 디바이스 (20) 는 음장의 하나 이상의 백그라운드 (또는, 즉, 주변) 구성요소들을 나타내는 HOA 계수들 (11) 을 적어도 부분적으로 식별하기 위해, HOA 계수들 (11) 에 대해 음장 분석을 수행할 수도 있다. 오디오 인코딩 디바이스 (20) 는 일부 예들에서, 백그라운드 구성요소들이 단지 (예컨대, 제 2 또는 더 높은-차수 구형 기저 함수들에 대응하는 HOA 계수들 (11) 이 아닌, 제로 및 1차 구형 기저 함수들에 대응하는 HOA 계수들 (11) 과 같은) HOA 계수들 (11) 의 임의의 주어진 샘플의 서브세트만을 포함할 수도 있다는 점을 고려하면, 백그라운드 구성요소들에 대해서, 에너지 보상을 수행할 수도 있다. 차수-감소가 수행될 때, 즉, 오디오 인코딩 디바이스 (20) 가 차수 감소를 수행하는 것에 기인하는 전체 에너지에서의 변화를 보상하기 위해 HOA 계수들 (11) 의 나머지 백그라운드 HOA 계수들을 증대시킬 수도 (예컨대, 그로부터/그에 에너지를 감산/가산할 수도) 있다.
오디오 인코딩 디바이스 (20) 는 다음에, 백그라운드 구성요소들을 나타내는 HOA 계수들 (11) 의 각각 및 포그라운드 오디오 오브젝트들의 각각에 대해서 (MPEG 서라운드, MPEG-AAC, MPEG-USAC 또는 음향심리 인코딩의 다른 알려진 형태들과 같은) 음향심리 인코딩의 유형을 수행할 수도 있다. 오디오 인코딩 디바이스 (20) 는 포그라운드 방향 정보에 대해 내삽의 유형을 수행하고 그후 그 내삽된 포그라운드 방향 정보에 대해 차수 감소를 수행하여, 차수 감소된 포그라운드 방향 정보를 발생시킬 수도 있다. 오디오 인코딩 디바이스 (20) 는 일부 예들에서, 차수 감소된 포그라운드 방향 정보에 대해 양자화를 추가로 수행하여, 코딩된 포그라운드 방향 정보를 출력할 수도 있다. 일부의 경우, 양자화는 스칼라/엔트로피 양자화를 포함할 수도 있다. 오디오 인코딩 디바이스 (20) 는 그후 인코딩된 백그라운드 구성요소들, 인코딩된 포그라운드 오디오 오브젝트들, 및 양자화된 방향 정보를 포함시키기 위해 비트스트림 (21) 을 형성할 수도 있다. 오디오 인코딩 디바이스 (20) 는 그후 비트스트림 (21) 을 콘텐츠 소비자 디바이스 (14) 로 송신하거나 또는 아니면 출력할 수도 있다.
도 2 에서 콘텐츠 소비자 디바이스 (14) 로 직접 송신되는 것으로 나타내지만, 콘텐츠 생성자 디바이스 (12) 는 비트스트림 (21) 을 콘텐츠 생성자 디바이스 (12) 와 콘텐츠 소비자 디바이스 (14) 사이에 위치된 중간 디바이스로 출력할 수도 있다. 중간 디바이스는 이 비트스트림을 요청할 수도 있는 콘텐츠 소비자 디바이스 (14) 에게의 추후 전달을 위해 비트스트림 (21) 을 저장할 수도 있다. 중간 디바이스는 파일 서버, 웹 서버, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 모바일 폰, 스마트 폰, 또는 오디오 디코더에 의한 추후 취출을 위해 비트스트림 (21) 을 저장하는 것이 가능한 임의의 다른 디바이스를 포함할 수도 있다. 중간 디바이스는 비트스트림 (21) 을 (그리고, 어쩌면, 대응하는 비디오 데이터 비트스트림을 송신하는 것과 함께) 비트스트림 (21) 을 요청하는 콘텐츠 소비자 디바이스 (14) 와 같은, 가입자들에게 스트리밍하는 것이 가능한 콘텐츠 전달 네트워크에 상주할 수도 있다.
이의 대안으로, 콘텐츠 생성자 디바이스 (12) 는 비트스트림 (21) 을, 대부분이 컴퓨터에 의해 판독가능하고 따라서 컴퓨터-판독가능 저장 매체들 또는 비일시성 컴퓨터-판독가능 저장 매체들로서 지칭될 수도 있는, 컴팩트 디스크, 디지털 비디오 디스크, 고화질 비디오 디스크 또는 다른 저장 매체들과 같은, 저장 매체에 저장할 수도 있다. 이 상황에서, 송신 채널은 매체들에 저장된 콘텐츠가 송신되는 채널들을 지칭할 수도 있다 (그리고, 소매점들 및 다른 저장-기반의 전달 메커니즘을 포함할 수도 있다). 어쨌든, 본 개시물의 기법들은 따라서 이 점에서 도 2 의 예에 한정되지 않아야 한다.
도 2 의 예에서 추가로 나타낸 바와 같이, 콘텐츠 소비자 디바이스 (14) 는 오디오 플레이백 시스템 (16) 을 포함한다. 오디오 플레이백 시스템 (16) 은 멀티-채널 오디오 데이터를 플레이백하는 것이 가능한 임의의 오디오 플레이백 시스템을 나타낼 수도 있다. 오디오 플레이백 시스템 (16) 은 다수의 상이한 렌더러들 (22) 을 포함할 수도 있다. 렌더러들 (22) 은 상이한 유형의 렌더링을 각각 제공할 수도 있으며, 여기서, 상이한 유형들의 렌더링은 벡터-기반 진폭 패닝 (VBAP) 을 수행하는 여러 방법들 중 하나 이상, 및/또는 음장 합성을 수행하는 여러 방법들 중 하나 이상을 포함할 수도 있다. 본원에서 사용될 때, "A 및/또는 B" 는 "A 또는 B", 또는 "A 및 B" 양쪽을 의미한다.
오디오 플레이백 시스템 (16) 은 오디오 디코딩 디바이스 (24) 를 더 포함할 수 있다. 오디오 디코딩 디바이스 (24) 는 비트스트림 (21) 으로부터 HOA 계수들 (11') 을 디코딩하도록 구성된 디바이스를 나타낼 수도 있으며, 여기서, HOA 계수들 (11') 은 HOA 계수들 (11) 과 유사하지만 손실있는 동작들 (예컨대, 양자화) 및/또는 송신 채널을 통한 송신으로 인해 상이할 수도 있다. 즉, 오디오 디코딩 디바이스 (24) 는 비트스트림 (21) 에 규정된 포그라운드 방향 정보를 역양자화할 수도 있지만, 또한 비트스트림 (21) 에 규정된 포그라운드 오디오 오브젝트들 및 백그라운드 구성요소들을 나타내는 인코딩된 HOA 계수들에 대해 음향심리 디코딩을 수행할 수도 있다. 오디오 디코딩 디바이스 (24) 는 추가로, 디코딩된 포그라운드 방향 정보에 대해 내삽을 수행하고 그후 그 디코딩된 포그라운드 오디오 오브젝트들 및 내삽된 포그라운드 방향 정보에 기초하여 포그라운드 구성요소들을 나타내는 HOA 계수들을 결정할 수도 있다. 오디오 디코딩 디바이스 (24) 는 그후 포그라운드 구성요소들을 나타내는 결정된 HOA 계수들 및 백그라운드 구성요소들을 나타내는 디코딩된 HOA 계수들에 기초하여 HOA 계수들 (11') 을 결정할 수도 있다.
오디오 플레이백 시스템 (16) 은 HOA 계수들 (11') 을 얻기 위해 비트스트림 (21) 을 디코딩한 후, HOA 계수들 (11') 을 렌더링하여 라우드스피커 피드들 (25) 을 출력할 수도 있다. 라우드스피커 피드들 (25) 은 (용이한 예시의 목적을 위해 도 2 의 예에 도시되지 않은) 하나 이상의 라우드스피커들을 구동할 수도 있다.
적합한 렌더러를 선택하기 위해, 또는, 일부 경우, 적합한 렌더러를 발생시키기 위해, 오디오 플레이백 시스템 (16) 은 다수의 라우드스피커들 및/또는 라우드스피커들의 공간 기하학적 구조를 나타내는 라우드스피커 정보 (13) 를 획득할 수도 있다. 일부의 경우, 오디오 플레이백 시스템 (16) 은 참조 마이크로폰을 이용하여 라우드스피커 정보 (13) 를 획득하고 라우드스피커 정보 (13) 를 동적으로 결정하는 방법으로 라우드스피커들을 구동할 수도 있다. 다른 경우들에서, 또는 라우드스피커 정보 (13) 의 동적 결정과 함께, 오디오 플레이백 시스템 (16) 은 오디오 플레이백 시스템 (16) 과 인터페이스하여 라우드스피커 정보 (13) 를 입력하도록 사용자에게 프롬프트할 수도 있다.
오디오 플레이백 시스템 (16) 은 그후 라우드스피커 정보 (13) 에 기초하여 오디오 렌더러들 (22) 중 하나를 선택할 수도 있다. 일부의 경우, 오디오 플레이백 시스템 (16) 은 어떤 오디오 렌더러들 (22) 도 라우드스피커 정보 (13) 에 규정된 것에 대한 어떤 임계치 유사성 척도 (라우드스피커 기하학적 구조의 관점에서) 내에 있지 않을 때, 라우드스피커 정보 (13) 에 기초하여 오디오 렌더러들 (22) 중 하나를 발생시킬 수도 있다. 오디오 플레이백 시스템 (16) 은 일부 경우, 기존 오디오 렌더러들 (22) 중 하나를 선택하려고 먼저 시도함이 없이, 라우드스피커 정보 (13) 에 기초하여 오디오 렌더러들 (22) 중 하나를 발생시킬 수도 있다.
도 3 은 본 개시물에서 설명하는 기법들의 여러 양태들을 수행할 수도 있는 도 2 의 예에 나타낸 오디오 인코딩 디바이스 (20) 의 일 예를 좀더 자세하게 예시하는 블록도이다. 오디오 인코딩 디바이스 (20) 는 콘텐츠 분석 유닛 (26), 벡터-기반 분해 유닛 (27) 및 방향-기반 분해 유닛 (28) 을 포함한다. 아래에서 간단히 설명되지만, 오디오 인코딩 디바이스 (20) 및 HOA 계수들을 압축하거나 또는 아니면 인코딩하는 여러 양태들에 관한 더 많은 정보는 "INTERPOLATION FOR DECOMPOSED REPRESENTATIONS OF A SOUND FIELD"란 발명의 명칭으로, 2014년 5월 29일에 출원된, 국제 특허 출원 공개 번호 WO 2014/194099호에서 입수가능하다.
콘텐츠 분석 유닛 (26) 은 HOA 계수들 (11) 의 콘텐츠를 분석하여 HOA 계수들 (11) 이 라이브 리코딩 또는 오디오 오브젝트로부터 발생된 콘텐츠를 나타내는지 여부를 식별하도록 구성된 유닛을 나타낸다. 콘텐츠 분석 유닛 (26) 은 HOA 계수들 (11) 이 실제 음장의 리코딩으로부터 또는 인공적인 오디오 오브젝트로부터 발생되었는지 여부를 결정할 수도 있다. 일부의 경우, 프레임으로 된 HOA 계수들 (11) 이 리코딩으로부터 발생되었을 때, 콘텐츠 분석 유닛 (26) 은 HOA 계수들 (11) 을 벡터-기반 분해 유닛 (27) 으로 전달한다. 일부의 경우, 프레임으로 된 HOA 계수들 (11) 이 합성 오디오 오브젝트로부터 발생되었을 때, 콘텐츠 분석 유닛 (26) 은 HOA 계수들 (11) 을 방향-기반 합성 유닛 (28) 으로 전달한다. 방향-기반 합성 유닛 (28) 은 HOA 계수들 (11) 의 방향-기반 합성을 수행하여 방향-기반 비트스트림 (21) 을 발생시키도록 구성된 유닛을 나타낼 수도 있다.
도 3 의 예에 나타낸 바와 같이, 벡터-기반 분해 유닛 (27) 은 선형 가역 변환 (LIT) 유닛 (30), 파라미터 계산 유닛 (32), 재정리 유닛 (34), 포그라운드 선택 유닛 (36), 에너지 보상 유닛 (38), 음향심리 오디오 코더 유닛 (40), 비트스트림 발생 유닛 (42), 음장 분석 유닛 (44), 계수 감소 유닛 (46), 백그라운드 (BG) 선택 유닛 (48), 시공간적 내삽 유닛 (50), 및 양자화 유닛 (52) 을 포함할 수도 있다.
선형 가역 변환 (LIT) 유닛 (30) 은 HOA 계수들 (11) 을 HOA 채널들의 유형으로 수신하며, 각각의 채널은 (HOA[k] 로서 표시될 수도 있으며, 여기서 k 는 샘플들의 현재의 프레임 또는 블록을 표시할 수도 있는) 구형 기저 함수들의 주어진 차수, 서브-차수와 연관된 계수의 블록 또는 프레임을 나타낸다. HOA 계수들 (11) 의 매트릭스는 치수들 D: M x (N+1)2 을 가질 수도 있다.
즉, LIT 유닛 (30) 은 특이 값 분해로서 지칭되는 분석의 유형을 수행하도록 구성된 유닛을 나타낼 수도 있다. SVD 에 대해 설명되지만, 본 개시물에서 설명하는 기법들은 선형으로 비상관된, 에너지 압축된 출력의 세트들을 제공하는 임의의 유사한 변환 또는 분해에 대해서 수행될 수도 있다. 또한, 본 개시물에서 "세트들" 에 대한 참조는 구체적으로 반대로 언급되지 않는 한 비-제로 세트들을 지칭하는 것으로 일반적으로 의도되며, 소위 "빈 (empty) 세트" 를 포함하는 세트들의 고전 (classical) 수학적 정의를 지칭하는 것으로 의도되지 않는다.
대안적인 변환은 "PCA" 로서 종종 지칭되는 주요 구성요소 분석을 포함할 수도 있다. PCA 는 어쩌면 상관된 변수들의 관측들의 세트를 주요 구성요소들로서 지칭되는 선형으로 비상관된 변수들의 세트로 변환시키기 위해 직교 변환을 채용하는 수학적 프로시저를 지칭한다. 선형으로 비상관된 변수들은 서로에 대해 선형 통계적 관계 (또는, 의존) 를 가지지 않는 변수들을 나타낸다. 주요 구성요소들은 서로에 대해 작은 정도의 통계적 상관을 갖는 것으로 설명될 수도 있다. 어쨌든, 소위 주요 구성요소들의 개수는 원래 변수들의 개수보다 적거나 또는 동일하다. 일부 예들에서, 변환은, 제 1 주요 구성요소가 최대 가능한 (또는, 즉, 가능한 한 많은 데이터에서의 변동성을 차지하는) 분산을 가지며 그 다음으로 각각의 다음 구성요소가, 다음에 이어지는 구성요소가 선행하는 구성요소들에 직교하다 (이것은 그와 비상관된 것으로 달리 말해질 수도 있다) 는 제약 하에서 가능한 최고 분산을 가지는 방식으로 정의된다. PCA 는 HOA 계수들 (11) 의 관점에서 HOA 계수들 (11) 의 압축을 초래할 수도 있는 차수-감소의 유형을 수행할 수도 있다. 상황에 따라서, PCA 는 몇 개의 예들을 들면, 이산 Karhunen-Loeve 변환, Hotelling 변환, 적합 직교 분해 (POD), 및 고유치 분해 (EVD) 와 같은, 다수의 상이한 이름들로 지칭될 수도 있다. 오디오 데이터를 압축하는 기본적인 목표에 도움이 되는 이러한 동작들의 성질들은 멀티채널 오디오 데이터의 ' 에너지 압축' 및 '비상관' 이다.
어쨌든, 예의 목적을 위해 LIT 유닛 (30) 이 ("SVD" 로서 또한 지칭될 수도 있는) 특이 값 분해를 수행한다고 가정하면, LIT 유닛 (30) 은 HOA 계수들 (11) 을 변환된 HOA 계수들의 2개 이상의 세트들로 변환할 수도 있다. 변환된 HOA 계수들의 "세트들" 은 변환된 HOA 계수들의 벡터들을 포함할 수도 있다. 도 3 의 예에서, LIT 유닛 (30) 은 HOA 계수들 (11) 에 대해 SVD 를 수행하여, 소위 V 매트릭스, S 매트릭스, 및 U 매트릭스를 발생시킬 수도 있다. SVD 는, 선형 대수학에서, y 곱하기 z (y-by-z) 실수 또는 복소수 매트릭스 X (여기서, X 는 HOA 계수들 (11) 과 같은, 멀티-채널 오디오 데이터를 나타낼 수도 있다) 의 인수분해를 다음 형태로 나타낼 수도 있다:
X = USV*
U 는 y 곱하기 y 실수 또는 복소수 유니터리 매트릭스 (unitary matrix) 을 나타낼 수도 있으며, 여기서, U 의 y 칼럼들은 멀티-채널 오디오 데이터의 좌측-특이 벡터들로서 알려져 있다. S 는 대각선 상에 비-음의 실수들을 가지는 y 곱하기 z (y-by-z) 직사각형의 대각선 매트릭스를 나타낼 수도 있으며, 여기서, S 의 대각선 값들은 멀티-채널 오디오 데이터의 특이 값들로서 알려져 있다. (V 의 켤레 전치를 표시할 수도 있는) V* 는 z 곱하기 z 실수 또는 복소수 유니터리 매트릭스를 나타낼 수도 있으며, 여기서, V* 의 z 칼럼들은 멀티-채널 오디오 데이터의 우측-특이 벡터들로서 알려져 있다.
HOA 계수들 (11) 을 포함하는 멀티-채널 오디오 데이터에 적용되는 것으로 본 개시물에서 설명되지만, 이 기법들은 임의 유형의 멀티-채널 오디오 데이터에 적용될 수도 있다. 이러한 방법으로, 오디오 인코딩 디바이스 (20) 는 적어도 음장의 일부분을 나타내는 멀티-채널 오디오 데이터에 대해서 특이 값 분해를 수행하여, 멀티-채널 오디오 데이터의 좌측-특이 벡터들을 나타내는 U 매트릭스, 멀티-채널 오디오 데이터의 특이 값들을 나타내는 S 매트릭스 및 멀티-채널 오디오 데이터의 우측-특이 벡터들을 나타내는 V 매트릭스를 발생시킬 수도 있으며, 멀티-채널 오디오 데이터를 U 매트릭스, S 매트릭스 및 V 매트릭스의 하나 이상 중 적어도 일부분의 함수로서 나타낼 수도 있다.
일부 예들에서, 아래에서 참조되는 SVD 수학적 수식에서 V* 매트릭스는 SVD 가 복소수들을 포함하는 매트릭스들에 적용될 수도 있다는 점을 반영하기 위해 V 매트릭스의 켤레 전치로서 표시된다. 단지 실수들만을 포함하는 매트릭스들에 적용될 때, V 매트릭스의 켤레 복소수 (또는, 즉, V* 매트릭스) 는 V 매트릭스의 전치인 것으로 간주될 수도 있다. 아래에서는, 용이한 예시 목적을 위해, V* 매트릭스보다는, V 매트릭스가 SVD 를 통해서 출력되는 결과로 HOA 계수들 (11) 이 실수들을 포함한다고 가정된다. 더욱이, 본 개시물에서 V 매트릭스로서 표시되지만, V 매트릭스에 대한 참조는 적당한 경우 V 매트릭스의 전치를 지칭하는 것으로 이해되어야 한다. V 매트릭스인 것으로 가정되지만, 이 기법들은 복소 계수들을 가지는 HOA 계수들 (11) 과 유사한 방식으로 적용될 수도 있으며, 여기서, SVD 의 출력은 V* 매트릭스이다. 따라서, 본 기법들은 이 점에서, 단지 V 매트릭스를 발생시키기 위한 SVD 의 적용을 허용하는데만 한정되지 않아야 하며, V* 매트릭스를 발생시키기 위한 복소수 구성요소들을 가지는 HOA 계수들 (11) 에의 SVD 의 적용을 포함할 수도 있다.
어쨌든, LIT 유닛 (30) 은 고-차수 앰비소닉스 (HOA) 오디오 데이터 (여기서, 앰비소닉스 오디오 데이터는 HOA 계수들 (11) 의 블록들 또는 샘플들 또는 임의의 다른 유형의 멀티-채널 오디오 데이터를 포함한다) 의 각각의 블록 (프레임으로 지칭될 수도 있음) 에 대해 블록-방식 유형의 SVD 를 수행할 수도 있다. 위에서 언급한 바와 같이, 변수 M 은 샘플들에서 오디오 프레임의 길이를 표시하기 위해 사용될 수도 있다. 예를 들어, 오디오 프레임이 1024 개의 오디오 샘플들을 포함할 때, M 은 1024 와 동일하다. M 에 대한 전형적인 값에 대해서 설명되지만, 본 개시물의 기법들은 M 에 대한 전형적인 값에 한정되지 않아야 한다. LIT 유닛 (30) 은 따라서 M 곱하기 (N+1)2 HOA 계수들을 가지는 HOA 계수들 (11) 의 블록에 대해 블록-방식 SVD 를 수행할 수도 있으며, 여기서, N 은, 또한, HOA 오디오 데이터의 차수를 표시한다. LIT 유닛 (30) 은 SVD 를 통해서, V 매트릭스, S 매트릭스, 및 U 매트릭스를 발생시킬 수도 있으며, 여기서, 매트릭스들의 각각은 위에서 설명된 개개의 V, S 및 U 매트릭스들을 나타낼 수도 있다. 이러한 방법으로, 선형 가역 변환 유닛 (30) 은 HOA 계수들 (11) 에 대해 SVD 를 수행하여, 치수들 D: M x (N+1)2 를 가지는 (S 벡터들과 U 벡터들의 결합된 버전을 나타낼 수도 있는) US[k] 벡터들 (33) 및 치수들 D: (N+1)2 x (N+1)2 를 가지는 V[k] 벡터들 (35) 을 출력할 수도 있다. US[k] 매트릭스에서의 개개의 벡터 엘리먼트들은 또한
Figure 112016082128710-pct00019
로서 지칭될 수도 있으며, 반면 V[k] 매트릭스의 개개의 벡터들은 또한
Figure 112016082128710-pct00020
로서 지칭될 수도 있다.
U, S 및 V 매트릭스들의 분석은 매트릭스들이 X 로 위에서 나타낸 기본적인 음장의 공간 및 시간 특성들을 운반하거나 또는 나타낸다는 것을 보일 수도 있다. (길이 M 샘플들의) U 에서의 N 개의 벡터들의 각각은, 서로에 직교하며 (방향 정보로서 또한 지칭될 수도 있는) 임의의 공간 특성들로부터 분리되어 있는 정규화된 분리된 오디오 신호들을 (M 샘플들로 표현된 시간 기간에 대한) 시간의 함수로서 나타낼 수도 있다. 공간 형태 및 위치 (r, 쎄타(theta), 파이(phi)) 폭을 나타내는, 공간 특성들은 V 매트릭스 (길이 (N+1)2 각각) 에서, 개개의 i 번째 벡터들,
Figure 112016082128710-pct00021
로 대신 표시될 수도 있다. v(i)(k) 벡터들의 각각의 개개의 엘리먼트들은 연관된 오디오 오브젝트에 대한 음장의 형태 및 방향을 기술하는 HOA 계수를 나타낼 수도 있다. U 매트릭스 및 V 매트릭스의 벡터들 양쪽은 그들의 자승 평균 평방근 에너지들이 1 과 동일하도록 정규화된다. U 에서의 오디오 신호들의 에너지는 따라서 S 에서 대각선 엘리먼트들에 의해 표현된다. U 와 S 를 곱하여 (개개의 벡터 엘리먼트들
Figure 112016082128710-pct00022
을 가지는) US[k] 를 형성하는 것은, 따라서 실제 (true) 에너지들을 가지는 오디오 신호를 나타낸다. (U 에서) 오디오 시간-신호들, (S 에서) 그들의 에너지들 및 (V 에서) 그들의 공간 특성들을 분리시키는 SVD 분해의 능력은 본 개시물에서 설명하는 기법들의 여러 양태들을 지원할 수도 있다. 또, US[k] 와 V[k] 의 벡터 곱셈에 의해 기본적인 HOA[k] 계수들, X 를 합성하는 모델은, 이 문서 전반에 걸쳐서 사용되는 용어 "벡터-기반 분해" 를 야기시킨다.
HOA 계수들 (11) 에 대해 직접 수행되는 것으로 설명되지만, LIT 유닛 (30) 은 HOA 계수들 (11) 의 유도체들에 선형 가역 변환을 적용할 수도 있다. 예를 들어, LIT 유닛 (30) 은 HOA 계수들 (11) 로부터 유도된 전력 스펙트럼 밀도 매트릭스에 대해 SVD 를 적용할 수도 있다. 전력 스펙트럼 밀도 매트릭스는 PSD 로서 표시될 수도 있으며, 아래에 뒤따르는 의사-코드에서 약술한 바와 같은, hoaFrame 으로의 hoaFrame 의 전치의 매트릭스 곱셈을 통해서 획득될 수도 있다. hoaFrame 표기는 HOA 계수들 (11) 의 프레임을 지칭한다.
LIT 유닛 (30) 은 SVD (svd) 를 PSD 에 적용한 후, S[k]2 매트릭스 (S_squared) 및 V[k] 매트릭스를 획득할 수도 있다. S[k]2 매트릭스는 사각형으로 된 S[k] 매트릭스를 표시할 수도 있으며, 그 때문에, LIT 유닛 (30) 은 제곱근 동작을 S[k]2 매트릭스에 적용하여, S[k] 매트릭스를 얻을 수도 있다. LIT 유닛 (30) 은 일부 경우, V[k] 매트릭스에 대해 양자화를 수행하여, (V[k]' 매트릭스로서 표시될 수도 있는) 양자화된 V[k] 매트릭스를 획득할 수도 있다. LIT 유닛 (30) 은 S[k] 매트릭스에 양자화된 V[k]' 매트릭스를 먼저 곱함으로써 U[k] 매트릭스를 획득하여, SV[k]' 매트릭스를 획득할 수도 있다. LIT 유닛 (30) 은 다음으로 SV[k]' 매트릭스의 유사-역원 (pinv) 을 획득하고 그후 HOA 계수들 (11) 에 SV[k]' 매트릭스의 유사-역원을 곱하여, U[k] 매트릭스를 획득할 수도 있다. 전술한 것은 다음 의사-코드로 표현될 수도 있다:
PSD = hoaFrame'*hoaFrame;
[V, S_squared] = svd(PSD',econ');
S = sqrt(S_squared);
U = hoaFrame * pinv(S*V');
계수들 자신보다는, HOA 계수들의 전력 스펙트럼 밀도 (PSD) 에 대해 SVD 를 수행함으로써, LIT 유닛 (30) 은 프로세서 사이클들 및 저장 공간 중 하나 이상의 관점에서 SVD 를 수행하는 계산 복잡성을 잠재적으로 감소시키는 한편, SVD 가 HOA 계수들에 직접 적용된 것처럼 동일한 소스 오디오 인코딩 효율을 달성할 수도 있다. 즉, 상기 설명된 PSD-유형 SVD 는 SVD 가 F*F 매트릭스 (여기서, F 는 HOA 계수들의 개수) 상에서 이루어지기 때문에, M 이 프레임 길이, 즉, 1024 또는 더 이상의 샘플들인, M * F 매트릭스에 비해, 잠재적으로 더 적은 계산 요구적일 수도 있다. SVD 의 복잡성은 지금은, HOA 계수들 (11) 보다는 PSD 에의 적용을 통해서, HOA 계수들 (11) 에 적용될 때 O(M*L2) 와 비교하여 (여기서, O(*) 는 컴퓨터-과학 분야에 공통된 계산 복잡성의 big-O 표기를 나타낸다), 대략 O(L3) 일 수도 있다.
이 점에서, LIT 유닛 (30) 은 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터 (예컨대, 위에서 V-벡터) 를 획득하기 위해 고-차수 앰비소닉 오디오 데이터 (11) 에 대해 분해를 수행하거나 또는 아니면 고-차수 앰비소닉 오디오 데이터 (11) 를 분해할 수도 있다. 분해는 SVD, EVD 또는 임의의 다른 유형의 분해를 포함할 수도 있다.
파라미터 계산 유닛 (32) 은 상관 파라미터 (R), 방향 성질들 파라미터들 (θ, φ, r), 및 에너지 성질 (e) 과 같은, 여러 파라미터들을 계산하도록 구성된 유닛을 나타낸다. 현재의 프레임에 대한 파라미터들의 각각은 R[k], θ[k], φ[k], r[k] 및 e[k] 로서 표시될 수도 있다. 파라미터 계산 유닛 (32) 은 US[k] 벡터들 (33) 에 대해 에너지 분석 및/또는 상관 (또는, 소위 교차-상관) 을 수행하여, 파라미터들을 식별할 수도 있다. 파라미터 계산 유닛 (32) 은 또한 이전 프레임에 대한 파라미터들을 결정할 수도 있으며, 여기서 이전 프레임 파라미터들은 US[k-1] 벡터 및 V[k-1] 벡터들의 이전 프레임에 기초하여 R[k-1], θ[k-1], φ[k-1], r[k-1] 및 e[k-1] 로 표시될 수도 있다. 파라미터 계산 유닛 (32) 은 현재의 파라미터들 (37) 및 이전 파라미터들 (39) 을 재정리 유닛 (34) 으로 출력할 수도 있다.
SVD 분해는, US[k-1][p] 벡터로서 (또는, 대안적으로는,
Figure 112016082128710-pct00023
로서) 표시될 수도 있는, US[k-1] 벡터들 (33) 에서의 p-번째 벡터에 의해 표시되는 오디오 신호/오브젝트가 US[k][p] 벡터들 (33) 로서 (또는, 대안적으로는,
Figure 112016082128710-pct00024
로서) 또한 표시될 수도 있는, US[k] 벡터들 (33) 에서의 p-번째 벡터에 의해 표시되는, (시간에 맞춰 진행된) 동일한 오디오 신호 /오브젝트일 것을 보장하지 않는다. 파라미터 계산 유닛 (32) 에 의해 계산된 파라미터들은 그들의 자연스러운 평가 또는 시간 경과에 따른 연속성을 표시하기 위해 오디오 오브젝트들을 재정리하는데 재정리 유닛 (34) 에 의해 사용될 수도 있다.
즉, 재정리 유닛 (34) 은 파라미터들 (37) 의 각각을 제 1 US[k] 벡터들 (33) 과 비교하여, 제 2 US[k-1] 벡터들 (33) 에 대한 파라미터들 (39) 의 각각에 대해 턴-와이즈 (turn-wise) 할 수도 있다. 재정리 유닛 (34) 은 US[k] 매트릭스 (33) 및 V[k] 매트릭스 (35) 내 여러 벡터들을 현재의 파라미터들 (37) 및 이전 파라미터들 (39) 에 기초하여 (일 예로서, Hungarian 알고리즘을 이용하여) 재정리하여, (수학적으로
Figure 112016082128710-pct00025
로서 표시될 수도 있는) 재정리된 US[k] 매트릭스 (33') 및 (수학적으로
Figure 112016082128710-pct00026
로서 표시될 수도 있는) 재정리된 V[k] 매트릭스 (35') 를 포그라운드 사운드 (또는, 지배적인 사운드 - PS) 선택 유닛 (36) ("포그라운드 선택 유닛 (36)") 및 에너지 보상 유닛 (38) 으로 출력할 수도 있다.
음장 분석 유닛 (44) 은 목표 비트레이트 (41) 를 잠재적으로 달성하도록 HOA 계수들 (11) 에 대해 음장 분석을 수행하도록 구성된 유닛을 나타낼 수도 있다. 음장 분석 유닛 (44) 은 그 분석에, 및/또는 수신된 목표 비트레이트 (41) 에 기초하여, (주변 또는 백그라운드 채널들의 총 개수 (BGTOT) 및 포그라운드 채널들 또는, 즉, 지배적인 채널들의 개수의 함수일 수도 있는) 음향심리 코더 인스턴스화들의 총 개수를 결정할 수도 있다. 음향심리 코더 인스턴스화들의 총 개수는 numHOATransportChannels 로서 표시될 수 있다.
또한, 음장 분석 유닛 (44) 은 또한 목표 비트레이트 (41) 를 잠재적으로 달성하기 위해, 포그라운드 채널들의 총 개수 (nFG) (45), 백그라운드 (또는, 즉, 주변) 음장의 최소 차수 (NBG 또는, 대안적으로, MinAmbHOAorder), 백그라운드 음장의 최소 차수를 나타내는 실수 채널들의 대응하는 개수 (nBGa = (MinAmbHOAorder + 1)2), 및 (도 3 의 예에서 일괄하여 백그라운드 채널 정보 (43) 로서 표시될 수도 있는) 전송할 추가적인 BG HOA 채널들의 인덱스들 (i) 을 결정할 수도 있다. 백그라운드 채널 정보 (42) 는 또한 주변 채널 정보 (43) 로서 지칭될 수도 있다. numHOATransportChannels - nBGa 로부터 남은 채널들의 각각은, "추가적인 백그라운드/주변 채널", "활성 벡터-기반 지배적인 채널", "활성 방향 기반 지배적인 신호" 또는 "완전히 비활성적" 일 수도 있다. 일 양태에서, 채널 유형들은 2 비트 (예컨대, 00: 방향 기반 신호; 01: 벡터-기반 지배적인 신호; 10: 추가적인 주변 신호; 11: 비활성 신호) 신택스 엘리먼트로서 ("ChannelType" 으로서) 표시될 수도 있다. 백그라운드 또는 주변 신호들의 총 개수, nBGa 는, (MinAmbHOAorder +1)2 + 그 프레임에 대한 비트스트림에서 채널 유형으로 나타나는 (상기 예에서의) 인덱스 10 의 횟수로 주어질 수도 있다.
어쨌든, 음장 분석 유닛 (44) 은 목표 비트레이트 (41) 에 기초하여, 백그라운드 (또는, 즉, 주변) 채널들의 개수 및 포그라운드 (또는, 즉, 지배적인) 채널들의 개수를 선택할 수도 있으며, 목표 비트레이트 (41) 가 상대적으로 더 높을 때 (예컨대, 목표 비트레이트 (41) 가 512 Kbps 와 동일하거나 또는 더 많을 때) 더 많은 백그라운드 및/또는 포그라운드 채널들을 선택할 수도 있다. 일 양태에서, numHOATransportChannels 는 8 로 설정될 수도 있으며, 한편 MinAmbHOAorder 는 비트스트림의 헤더 섹션에서 1 로 설정될 수도 있다. 이 시나리오에서, 매 프레임에서, 4개의 채널들이 음장의 백그라운드 또는 주변 부분을 표현하는데 담당될 수도 있지만, 다른 4 개의 채널들은 프레임 단위로, 채널의 유형에 따라서 변할 수 있다 - 예컨대, 추가적인 백그라운드/주변 채널 또는 포그라운드/지배적인 채널로서 사용될 수 있다. 포그라운드/지배적인 신호들은 위에서 설명한 바와 같이 벡터-기반 또는 방향 기반 신호들 중 하나일 수 있다.
일부의 경우, 프레임에 대한 벡터-기반의 지배적인 신호들의 총 개수는 그 프레임의 비트스트림에서 ChannelType 인덱스가 01 인 횟수로 주어질 수도 있다. 상기 양태에서, (예컨대, 10 의 ChannelType 에 대응하는) 모든 추가적인 백그라운드/주변 채널에 대해, (처음 4개를 넘어서는) 가능한 HOA 계수들 중 어느 HOA 계수의 대응하는 정보가 그 채널에 표시될 수도 있다. 제 4 차수 HOA 콘텐츠에 대한, 정보는 HOA 계수들 5-25 를 표시하는 인덱스일 수도 있다. 처음 4개의 주변 HOA 계수들 1-4 는 minAmbHOAorder 가 1 로 설정될 때는 언제나 전송될 수도 있으며, 따라서 오디오 인코딩 디바이스는 단지 5-25 의 인덱스를 가지는 추가적인 주변 HOA 계수 중 하나만을 표시해야 할 수도 있다. 정보는 따라서 "CodedAmbCoeffIdx" 로서 표시될 수도 있는, (제 4 차수 콘텐츠에 대해) 5 비트 신택스 엘리먼트를 이용하여 전송될 수 있다.
예시하기 위하여, 일 예로서 minAmbHOAorder 가 1 로 설정되고 6 의 인덱스를 가지는 추가적인 주변 HOA 계수가 비트스트림 (21) 을 통해서 전송된다고 가정한다. 이 예에서, 1 의 minAmbHOAorder 는 주변 HOA 계수들이 1, 2, 3 및 4 의 인덱스를 갖는다는 것을 나타낸다. 오디오 인코딩 디바이스 (20) 는 주변 HOA 계수들이 이 예에서 (minAmbHOAorder + 1)2 또는 4 보다 작거나 또는 동일한 인덱스를 가지기 때문에 주변 HOA 계수들을 선택할 수도 있다. 오디오 인코딩 디바이스 (20) 는 비트스트림 (21) 에서 1, 2, 3 및 4 의 인덱스들과 연관된 주변 HOA 계수들을 규정할 수도 있다. 오디오 인코딩 디바이스 (20) 는 또한 비트스트림에서 6 의 인덱스를 가지는 추가적인 주변 HOA 계수를 10 의 ChannelType 을 가지는 additionalAmbientHOAchannel 로서 규정할 수도 있다. 오디오 인코딩 디바이스 (20) 는 CodedAmbCoeffIdx 신택스 엘리먼트를 이용하여 인덱스를 규정할 수도 있다. 실제적인 이유로, CodedAmbCoeffIdx 엘리먼트는 1-25 중에서 인덱스들 모두를 규정할 수도 있다. 그러나, minAmbHOAorder 가 1 로 설정되기 때문에, 오디오 인코딩 디바이스 (20) 는 (처음 4개의 인덱스들이 minAmbHOAorder 신택스 엘리먼트를 통해서 비트스트림 (21) 에 규정된 것으로 알려져 있기 때문에) 처음 4개의 인덱스들 중 임의의 인덱스를 규정하지 않을 수도 있다. 어쨌든, 오디오 인코딩 디바이스 (20) 가 (처음 4개에 대한) minAmbHOAorder 및 (추가적인 주변 HOA 계수에 대한) CodedAmbCoeffIdx 를 통해서 5개의 주변 HOA 계수들을 규정하기 때문에, 오디오 인코딩 디바이스 (20) 는 1, 2, 3, 4 및 6 의 인덱스를 가지는 주변 HOA 계수들과 연관된 대응하는 V-벡터 엘리먼트들을 규정하지 않을 수도 있다. 그 결과, 오디오 인코딩 디바이스 (20) 는 엘리먼트들 [5, 7:25] 을 가지는 V-벡터를 규정할 수도 있다.
제 2 양태에서, 포그라운드/지배적인 신호들의 모두는 벡터-기반의 신호들이다. 이 제 2 양태에서, 포그라운드/지배적인 신호들의 총 개수는 nFG = numHOATransportChannels - [(MinAmbHOAorder +1)2 + additionalAmbientHOAchannel 의 각각] 으로 주어질 수도 있다.
음장 분석 유닛 (44) 은 백그라운드 채널 정보 (43) 및 HOA 계수들 (11) 을 백그라운드 (BG) 선택 유닛 (36) 으로, 백그라운드 채널 정보 (43) 를 계수 감소 유닛 (46) 및 비트스트림 발생 유닛 (42) 으로, 그리고 nFG (45) 를 포그라운드 선택 유닛 (36) 으로 출력한다.
백그라운드 선택 유닛 (48) 은 백그라운드 채널 정보 (예컨대, 백그라운드 음장 (NBG) 및 개수 (nBGa) 및 전송할 추가적인 BG HOA 채널들의 인덱스들 (i)) 에 기초하여 백그라운드 또는 주변 HOA 계수들 (47) 을 결정하도록 구성된 유닛을 나타낼 수도 있다. 예를 들어, NBG 가 1 과 동일할 때, 백그라운드 선택 유닛 (48) 은 1 과 동일하거나 또는 미만인 차수를 가지는 오디오 프레임의 각각의 샘플에 대해 HOA 계수들 (11) 을 선택할 수도 있다. 백그라운드 선택 유닛 (48) 은 이 예에서, 그후 인덱스들 (i) 중 하나를 추가적인 BG HOA 계수들로서 식별된 인덱스를 가지는 HOA 계수들 (11) 을 선택할 수도 있으며, nBGa 가 도 2 및 도 4 의 예에 나타낸 오디오 디코딩 디바이스 (24) 와 같은, 오디오 디코딩 디바이스로 하여금, 비트스트림 (21) 으로부터 백그라운드 HOA 계수들 (47) 을 파싱하도록 하기 위해서 비트스트림 (21) 에 규정되도록, 비트스트림 발생 유닛 (42) 에 제공된다. 백그라운드 선택 유닛 (48) 은 그후 주변 HOA 계수들 (47) 을 에너지 보상 유닛 (38) 으로 출력할 수도 있다. 주변 HOA 계수들 (47) 은 치수들 D: M x [(NBG+1)2 + nBGa] 을 가질 수도 있다. 주변 HOA 계수들 (47) 은 또한 "주변 HOA 계수들 (47)" 로서 지칭될 수도 있으며, 여기서, 주변 HOA 계수들 (47) 의 각각은 음향심리 오디오 코더 유닛 (40) 에 의해 인코딩될 별개의 주변 HOA 채널 (47) 에 대응한다.
포그라운드 선택 유닛 (36) 은 (포그라운드 벡터들을 식별하는 하나 이상의 인덱스들을 나타낼 수도 있는) nFG (45) 에 기초하여 음장의 포그라운드 또는 특유한 구성요소들을 나타내는 재정리된 US[k] 매트릭스 (33') 및 재정리된 V[k] 매트릭스 (35') 를 선택하도록 구성된 유닛을 나타낼 수도 있다. 포그라운드 선택 유닛 (36) 은 (재정리된 US[k]1, …, nFG (49), FG1, …, nfG[k] (49), 또는
Figure 112016082128710-pct00027
(49) 로서 표시될 수도 있는) nFG 신호들 (49) 을 음향심리 오디오 코더 유닛 (40) 으로 출력할 수도 있으며, 여기서, nFG 신호들 (49) 은 치수들 D: M x nFG 을 가지며 각각 모노-오디오 오브젝트들을 나타낼 수도 있다. 포그라운드 선택 유닛 (36) 은 또한 음장의 포그라운드 구성요소들에 대응하는 재정리된 V[k] 매트릭스 (35') (또는,
Figure 112016082128710-pct00028
(35')) 를 시공간적 내삽 유닛 (50) 으로 출력할 수도 있으며, 여기서, 포그라운드 구성요소들에 대응하는 재정리된 V[k] 매트릭스 (35') 의 서브세트는 치수들 D: (N+1)2 x nFG 를 가지는 (
Figure 112016082128710-pct00029
로서 수학적으로 표시될 수도 있는) 포그라운드 V[k] 매트릭스 (51k) 로서 표시될 수도 있다.
에너지 보상 유닛 (38) 은 백그라운드 선택 유닛 (48) 에 의한 HOA 채널들 중 여러 HOA 채널의 제거로 인한 에너지 손실을 보상하기 위해 주변 HOA 계수들 (47) 에 대해 에너지 보상을 수행하도록 구성된 유닛을 나타낼 수도 있다. 에너지 보상 유닛 (38) 은 재정리된 US[k] 매트릭스 (33'), 재정리된 V[k] 매트릭스 (35'), nFG 신호들 (49), 포그라운드 V[k] 벡터들 (51k) 및 주변 HOA 계수들 (47) 중 하나 이상에 대해 에너지 분석을 수행하고 그후 에너지 분석에 기초하여 에너지 보상을 수행하여 에너지 보상된 주변 HOA 계수들 (47') 을 발생시킬 수도 있다. 에너지 보상 유닛 (38) 은 에너지 보상된 주변 HOA 계수들 (47') 을 음향심리 오디오 코더 유닛 (40) 으로 출력할 수도 있다.
시공간적 내삽 유닛 (50) 은 k 번째 프레임에 대한 포그라운드 V[k] 벡터들 (51k) 및 포그라운드 이전 프레임 (따라서, k-1 표기) 에 대한 V[k-1] 벡터들 (51k-1) 을 수신하고 시공간적 내삽을 수행하여 내삽된 포그라운드 V[k] 벡터들을 발생시키도록 구성된 유닛을 나타낼 수도 있다. 시공간적 내삽 유닛 (50) 은 nFG 신호들 (49) 을 포그라운드 V[k] 벡터들 (51k) 과 재결합하여 재정리된 포그라운드 HOA 계수들을 복원할 수도 있다. 시공간적 내삽 유닛 (50) 은 그후 재정리된 포그라운드 HOA 계수들을 내삽된 V[k] 벡터들로 나눠서, 내삽된 nFG 신호들 (49') 을 발생시킬 수도 있다. 시공간적 내삽 유닛 (50) 은, 또한 오디오 디코딩 디바이스 (24) 와 같은, 오디오 디코딩 디바이스가 내삽된 포그라운드 V[k] 벡터들을 발생시켜 포그라운드 V[k] 벡터들 (51k) 을 복원할 수 있도록 내삽된 포그라운드 V[k] 벡터들을 발생시키는데 사용된 포그라운드 V[k] 벡터들 (51k) 을 출력할 수도 있다. 내삽된 포그라운드 V[k] 벡터들을 발생시키는데 사용되는 포그라운드 V[k] 벡터들 (51k) 은 나머지 포그라운드 V[k] 벡터들 (53) 로서 표시된다. 동일한 V[k] 및 V[k-1] 이 (내삽된 벡터들 V[k] 을 생성하기 위해) 인코더 및 디코더에서 사용되도록 보장하기 위해, 벡터들의 양자화된/역양자화된 버전들이 인코더 및 디코더에서 사용될 수도 있다.
동작 시, 시공간적 내삽 유닛 (50) 은 제 1 프레임에 포함된 제 1 복수의 HOA 계수들 (11) 의 부분의 제 1 분해, 예컨대, 포그라운드 V[k] 벡터들 (51k) 및 제 2 프레임에 포함된 제 2 복수의 HOA 계수들 (11) 의 부분의 제 2 분해, 예컨대, 포그라운드 V[k] 벡터들 (51k-1) 로부터 제 1 오디오 프레임의 하나 이상의 서브-프레임들을 내삽하여, 하나 이상의 서브-프레임들에 대해, 분해된 내삽된 구면 고조파 계수들을 발생시킬 수도 있다.
일부 예들에서, 제 1 분해는 HOA 계수들 (11) 의 부분의 우측-특이 벡터들을 나타내는 제 1 포그라운드 V[k] 벡터들 (51k) 을 포함한다. 이와 유사하게, 일부 예들에서, 제 2 분해는 HOA 계수들 (11) 의 부분의 우측-특이 벡터들을 나타내는 제 2 포그라운드 V[k] 벡터들 (51k) 을 포함한다.
다시 말해서, 구면 고조파들-기반의 3D 오디오는 구 상의 직교 기저 함수들의 관점에서 3D 압력 장의 파라미터 표현일 수도 있다. 그 표현의 차수 N 이 더 높을 수록, 잠재적으로 공간 해상도가 더 높아지며 그리고 종종 (총 (N+1)2 계수들에 대한) 구면 고조파들 (SH) 계수들의 개수가 더 커진다. 많은 응용들에 있어, 계수들을 효율적으로 전송하고 저장할 수 있도록 하기 위해서 계수들의 대역폭 압축이 요구될 수도 있다. 본 개시물에서 알려주는 기법들은 특이 값 분해 (SVD) 를 이용한 프레임-기반, 차원수 감소 프로세스를 제공할 수도 있다. SVD 분석은 계수들의 각각의 프레임을 3개의 매트릭스들 U, S 및 V 로 분해할 수도 있다. 일부 예들에서, 이 기법들은 US[k] 매트릭스에서의 벡터들 중 일부를 기본적인 음장의 포그라운드 구성요소들로서 취급할 수도 있다. 그러나, 이와 같이 취급될 때, (US[k] 매트릭스에서의) 벡터들은, 설령 그들이 동일한 특유의 오디오 성분을 나타내더라도, 프레임들간에 불연속적이다. 불연속들은 구성요소들이 변환-오디오-코더들을 통해서 공급될 때 유의한 아티팩트들을 초래할 수도 있다.
일부 양태들에서, 시공간적 내삽은 V 매트릭스가 구면 고조파들 도메인에서 직교 공간 축들로서 해석될 수 있다는 관측에 의존할 수도 있다. U[k] 매트릭스는 기저 함수들의 관점에서 구면 고조파들 (HOA) 데이터의 투영을 나타낼 수도 있으며, 여기서, 불연속성은 매 프레임 마다 변하는 직교 공간 축 (V[k]) 에 기인할 수 있으며 - 따라서 그들 스스로 불연속적이다. 이것은 푸리에 변환과 같은, 일부 다른 분해들과는 다르며, 여기서 기저 함수들이 일부 예들에서, 프레임들 간에 일정하다. 이들 용어들에서, SVD 는 매칭 추적 알고리즘으로서 간주될 수도 있다. 시공간적 내삽 유닛 (50) 은 프레임들간에, 그들간에 내삽함으로써, 기저 함수들 (V[k]) 사이에, 연속성을 잠재적으로 유지하기 위해, 내삽을 수행할 수도 있다.
위에서 언급한 바와 같이, 내삽은 샘플들에 대해 수행될 수도 있다. 이 경우는 서브-프레임들이 샘플들의 단일 세트를 포함할 때에 상기 설명에서 일반화된다. 샘플들을 통한 그리고 서브-프레임들을 통한 내삽 양쪽의 경우, 내삽 동작은 다음 방정식의 유형을 취할 수도 있다:
Figure 112016082128710-pct00030
상기 방정식에서, 내삽은 일 양태에서 인접 프레임들 k 및 k-1 로부터의 V-벡터들을 나타낼 수 있는 단일 V-벡터 v(k-1) 로부터 단일 V-벡터 v(k) 에 대해 수행될 수도 있다. 상기 방정식에서, l 는, 내삽이 수행중인 해상도를 나타내며, 여기서, l 는 정수 샘플을 나타낼 수도 있으며 l = 1, …, T 를 나타낼 수도 있다 (여기서, T 는 내삽이 수행중이며 출력된 내삽된 벡터들,
Figure 112016082128710-pct00031
이 요구되는 샘플들의 길이이며 또한 그 프로세스의 출력이 벡터들의 l 를 발생시킨다는 것을 나타낸다). 대안적으로, l 는 다수의 샘플들로 이루어지는 서브-프레임들을 나타낼 수 있다. 예를 들어, 프레임이 4개의 서브-프레임들로 분할될 때, l 는 서브-프레임들의 각각의 하나에 대해 1, 2, 3 및 4 의 값들을 포함할 수도 있다. l 의 값은 내삽 동작이 디코더에서 복제될 수 있도록, 비트스트림을 통해서 "CodedSpatialInterpolationTime" 로 불리는 필드로서 시그널링될 수도 있다. w(l) 는 내삽 가중치들의 값들을 포함할 수도 있다. 내삽이 선형일 때, w(l) 는 0 과 1 사이에서 선형적으로 그리고 단조적으로 (monotonically) l 의 함수로서 변할 수도 있다. 다른 경우, w(l) 는 0 과 1 사이에서 비선형적이지만 그러나 (올림 코사인 (raised cosine) 의 1/4 사이클과 같은) 단조 방식으로 l 의 함수로서 변할 수도 있다. 함수, w(l) 는, 함수들의 몇개의 상이한 가능성들 사이에 인덱싱될 수도 있으며, 동일한 내삽 동작이 디코더에서 복제될 수 있도록 "SpatialInterpolationMethod" 로 불리는 필드로서 비트스트림에서 시그널링될 수도 있다. w(l) 가 0 에 가까운 값을 가질 때, 출력,
Figure 112016082128710-pct00032
은, v(k-1) 에 의해 크게 가중되거나 또는 영향을 받을 수도 있다. 반면 w(l) 가 1 에 가까운 값을 가질 때, 그것은 출력,
Figure 112016082128710-pct00033
이, v(k-1) 에 의해 크게 가중되거나 또는 영향을 받도록 보장한다.
계수 감소 유닛 (46) 은 백그라운드 채널 정보 (43) 에 기초하여 나머지 포그라운드 V[k] 벡터들 (53) 에 대해 계수 감소를 수행하여 감소된 포그라운드 V[k] 벡터들 (55) 을 양자화 유닛 (52) 으로 출력하도록 구성된 유닛을 나타낼 수도 있다. 감소된 포그라운드 V[k] 벡터들 (55) 은 치수들 D: [(N+1)2 - (NBG+1)2-BGTOT] x nFG 를 가질 수도 있다.
계수 감소 유닛 (46) 은 이 점에서, 나머지 포그라운드 V[k] 벡터들 (53) 에서의 계수들의 개수를 감소시키도록 구성된 유닛을 나타낼 수도 있다. 다시 말해서, 계수 감소 유닛 (46) 은 거의 없거나 전혀 없는 방향 정보를 가지는 (나머지 포그라운드 V[k] 벡터들 (53) 을 형성하는) 포그라운드 V[k] 벡터들에서의 계수들을 제거하도록 구성된 유닛을 나타낼 수도 있다. 위에서 설명된 바와 같이, 일부 예들에서, (NBG 로서 표시될 수도 있는) 제 1 및 제로 차수 기저 함수들에 대응하는 별개의, 또는, 즉, 포그라운드 V[k] 벡터들의 계수들은 적은 방향 정보를 제공하며, 따라서 ("계수 감소" 로서 지칭될 수도 있는 프로세스를 통해서) 포그라운드 V-벡터들로부터 제거될 수 있다. 이 예에서, [(NBG +1)2+1, (N+1)2] 의 세트로부터, NBG 에 대응하는 계수들을 식별할 뿐만 아니라 (변수 TotalOfAddAmbHOAChan 에 의해 표시될 수도 있는) 추가적인 HOA 채널들을 식별하기 위해 더 큰 유연성이 제공될 수도 있다. 음장 분석 유닛 (44) 은 HOA 계수들 (11) 을 분석하여, (NBG+1)2 뿐만 아니라 백그라운드 채널 정보 (43) 로서 일괄하여 지칭될 수도 있는 TotalOfAddAmbHOAChan 을 식별하는, BGTOT, 을 결정할 수도 있다. 계수 감소 유닛 (46) 은 그후 나머지 포그라운드 V[k] 벡터들 (53) 로부터 (NBG+1)2 및 TotalOfAddAmbHOAChan 에 대응하는 계수들을 제거하여, 감소된 포그라운드 V[k] 벡터들 (55) 로서 또한 지칭될 수도 있는 사이즈 ((N+1)2 - (BGTOT) x nFG 의 더 작은 차원 V[k] 매트릭스 (55) 를 발생시킬 수도 있다.
즉, 공개번호 제 WO 2014/194099호에 언급한 바와 같이, 계수 감소 유닛 (46) 은 부 채널 정보 (57) 에 대한 신택스 엘리먼트들을 발생시킬 수도 있다. 예를 들어, 계수 감소 유닛 (46) 은 복수의 구성 모드들 중 어느 모드가 선택되었는지를 표시하는 신택스 엘리먼트를 (하나 이상의 프레임들을 포함할 수도 있는) 액세스 유닛의 헤드에 규정할 수도 있다. 액세스 유닛 단위로 규정되는 것으로 설명되지만, 계수 감소 유닛 (46) 은 프레임 단위 또는 (전체 비트스트림에 대해 한번과 같은) 임의의 다른 주기적인 단위 또는 비-주기적인 단위로 신택스 엘리먼트를 규정할 수도 있다. 어쨌든, 신택스 엘리먼트는 특유한 구성요소의 방향 양태들을 나타내기 위해 그 감소된 포그라운드 V[k] 벡터들 (55) 의 계수들의 비-제로 세트를 규정하는데 3개의 구성 모드들 중 어느 구성 모드가 선택되는지를 표시하는 2 비트들을 포함할 수도 있다. 신택스 엘리먼트는 "CodedVVecLength" 로서 표시될 수도 있다. 이와 같이, 계수 감소 유닛 (46) 은 비트스트림 (21) 에 그 감소된 포그라운드 V[k] 벡터들 (55) 을 규정하는데 3개의 구성 모드들 중 어느 구성 모드가 사용되었는지를 비트스트림에서 시그널링하거나 또는 아니면 규정할 수도 있다.
예를 들어, 3개의 구성 모드들이 (이 문서에서 추후에 참조되는) VVecData 에 대한 신택스 테이블에 제시될 수도 있다. 그 예에서, 구성 모드들은 다음과 같다: (모드 0), 완전한 V-벡터 길이가 VVecData 필드에서 송신된다; (모드 1), 주변 HOA 계수들에 대한 계수들의 최소 개수와 연관되는 V-벡터의 엘리먼트들 및 추가적인 HOA 채널들을 포함한 V-벡터의 모든 엘리먼트들이 송신되지 않는다; 및 (모드 2), 주변 HOA 계수들에 대한 계수들의 최소 개수와 연관되는 V-벡터의 엘리먼트들이 송신되지 않는다. VVecData 의 신택스 테이블은 스위치 (switch) 및 케이스 (case) 스테이트먼트와 함께 모드들을 예시한다. 3개의 구성 모드들에 대해 설명되지만, 본 기법들은 3개의 구성 모드들에 한정되지 않아야 하며 단일 구성 모드 또는 복수의 모드들을 포함한, 임의 개수의 구성 모드들을 포함할 수도 있다. 공개번호 제 WO 2014/194099호는 4개의 모드들을 가진 상이한 예를 제공한다. 계수 감소 유닛 (46) 은 또한 부 채널 정보 (57) 에서의 다른 신택스 엘리먼트로서 플래그 (63) 를 규정할 수도 있다.
양자화 유닛 (52) 은 감소된 포그라운드 V[k] 벡터들 (55) 을 압축하여 코딩된 포그라운드 V[k] 벡터들 (57) 을 발생시키기 위해 임의 유형의 양자화를 수행하여 코딩된 포그라운드 V[k] 벡터들 (57) 을 비트스트림 발생 유닛 (42) 으로 출력하도록 구성된 유닛을 나타낼 수도 있다. 동작 시, 양자화 유닛 (52) 은 음장의 공간 구성요소, 즉, 이 예에서는, 감소된 포그라운드 V[k] 벡터들 (55) 중 하나 이상을 압축하도록 구성된 유닛을 압축하도록 구성된 유닛을 나타낼 수도 있다. 예의 목적들을 위해, 감소된 포그라운드 V[k] 벡터들 (55) 은 계수 감소의 결과로서, (음장의 제 4 차수 HOA 표현을 암시하는) 25 개 미만인 엘리먼트들 각각을 가지는 2개의 로우 벡터들을 포함하는 것으로 가정된다. 2개의 로우 벡터들에 대해 설명되지만, 임의 개수의 벡터들이 (n+1)2 까지 그 감소된 포그라운드 V[k] 벡터들 (55) 에 포함될 수도 있으며, 여기서, n 은 음장의 HOA 표현의 차수를 나타낸다. 더욱이, 스칼라 및/또는 엔트로피 양자화를 수행하는 것으로 아래에서 설명되지만, 양자화 유닛 (52) 은 감소된 포그라운드 V[k] 벡터들 (55) 의 압축을 초래하는 임의 유형의 양자화를 수행할 수도 있다.
양자화 유닛 (52) 은 감소된 포그라운드 V[k] 벡터들 (55) 을 수신하고 압축 방식을 수행하여 코딩된 포그라운드 V[k] 벡터들 (57) 을 발생시킬 수도 있다. 압축 방식은 벡터 또는 데이터의 엘리먼트들을 압축하는 임의의 상상가능한 압축 방식을 일반적으로 수반할 수도 있으며, 아래에서 좀더 자세하게 설명된 예에 한정되지 않아야 한다. 양자화 유닛 (52) 은 일 예로서, 감소된 포그라운드 V[k] 벡터들 (55) 의 각각의 엘리먼트의 부동 소수점 표현들을 감소된 포그라운드 V[k] 벡터들 (55) 의 각각의 엘리먼트의 정수 표현들로 변환하는 것, 감소된 포그라운드 V[k] 벡터들 (55) 의 정수 표현들의 균일한 양자화, 및 나머지 포그라운드 V[k] 벡터들 (55) 의 양자화된 정수 표현들의 범주화 및 코딩 중 하나 이상을 포함하는 압축 방식을 수행할 수도 있다.
일부 예들에서, 압축 방식의 하나 이상의 프로세스들 중 몇 개는, 일 예로서, 최종 비트스트림 (21) 에 대한 목표 비트레이트 (41) 를 달성하거나 또는 거의 달성하기 위해 파라미터들에 의해 동적으로 제어될 수도 있다. 감소된 포그라운드 V[k] 벡터들 (55) 의 각각이 서로에 대해 직교하다고 가정하면, 감소된 포그라운드 V[k] 벡터들 (55) 의 각각은 독립적으로 코딩될 수도 있다. 일부 예들에서, 아래에서 좀더 자세히 설명하는 바와 같이, 각각의 감소된 포그라운드 V[k] 벡터들 (55) 의 각각의 엘리먼트는 (여러 서브-모드들에 의해 정의된) 동일한 코딩 모드를 이용하여 코딩될 수도 있다.
공개 번호 제 WO 2014/194099호에 설명된 바와 같이, 양자화 유닛 (52) 은 감소된 포그라운드 V[k] 벡터들 (55) 을 압축하기 위해 스칼라 양자화 및/또는 Huffman 인코딩을 수행하여, 부 채널 정보 (57) 로서 또한 지칭될 수도 있는 코딩된 포그라운드 V[k] 벡터들 (57) 을 출력할 수도 있다. 부 채널 정보 (57) 는 나머지 포그라운드 V[k] 벡터들 (55) 을 코딩하는데 사용되는 신택스 엘리먼트들을 포함할 수도 있다.
더욱이, 스칼라 양자화의 유형에 대해서 설명되지만, 양자화 유닛 (52) 은 벡터 양자화 또는 임의의 다른 유형의 양자화를 수행할 수도 있다. 일부의 경우, 양자화 유닛 (52) 은 벡터 양자화와 스칼라 양자화 사이에 스위칭할 수도 있다. 상기 설명된 스칼라 양자화 동안, 양자화 유닛 (52) 은 (프레임-대-프레임에서와 같이 연속적인) 2개의 연속적인 V-벡터들 사이의 차이를 계산하고 그 차이 (또는, 즉, 잔차) 를 코딩할 수도 있다. 이 스칼라 양자화는 이전에 규정된 벡터 및 차이 신호에 기초하여 예측 코딩하는 유형을 나타낼 수도 있다. 벡터 양자화는 이러한 차이 코딩을 수반하지 않는다.
다시 말해서, 양자화 유닛 (52) 은 입력 V-벡터 (예컨대, 감소된 포그라운드 V[k] 벡터들 (55) 중 하나) 를 수신하고 상이한 유형들의 양자화를 수행하여, 입력 V-벡터를 입력하는데 사용될 양자화의 유형들 중 하나를 선택할 수도 있다. 양자화 유닛 (52) 은 일 예로서, 벡터 양자화, Huffman 코딩에 의하지 않는 스칼라 양자화 및 Huffman 코딩에 의한 스칼라 양자화를 수행할 수도 있다.
이 예에서, 양자화 유닛 (52) 은 벡터 양자화 모드에 따라서 입력 V-벡터를 벡터 양자화하여, 벡터-양자화된 V-벡터를 발생시킬 수도 있다. 벡터 양자화된 V-벡터는 입력 V-벡터를 표시하는 벡터-양자화된 가중 값들을 포함할 수도 있다. 벡터-양자화된 가중 값들은, 일부 예들에서, 양자화 코드워드들의 양자화 코드북에서 양자화 코드워드 (즉, 양자화 벡터) 를 가리키는 하나 이상의 양자화 인덱스들로서 표현될 수도 있다. 양자화 유닛 (52) 은, 벡터 양자화를 수행하도록 구성될 때, 코드 벡터들 (63) ("CV (63)") 에 기초하여 감소된 포그라운드 V[k] 벡터들 (55) 의 각각을 코드 벡터들의 가중 총합으로 분해할 수도 있다. 양자화 유닛 (52) 은 코드 벡터들 (63) 중 선택된 코드 벡터들의 각각에 대해 가중 값들을 발생시킬 수도 있다.
양자화 유닛 (52) 은 다음으로, 가중 값들의 선택된 서브세트를 발생시키기 위해 가중 값들의 서브세트를 선택할 수도 있다. 예를 들어, 양자화 유닛 (52) 은 가중 값들의 세트로부터 Z 최대-크기 가중 값들을 선택하여, 가중 값들의 선택된 서브세트를 발생시킬 수도 있다. 일부 예들에서, 양자화 유닛 (52) 은 그 선택된 가중 값들을 재정리하여, 가중 값들의 선택된 서브세트를 발생시킬 수도 있다. 예를 들어, 양자화 유닛 (52) 은 선택된 가중 값들을 최고-크기 가중 값에서 시작하여 최저-크기 가중 값에서 끝나는 크기에 기초하여 재정리할 수도 있다.
벡터 양자화를 수행할 때, 양자화 유닛 (52) 은 양자화 코드북 중에서 Z-구성요소 벡터를 선택하여 Z 가중 값들을 표시할 수도 있다. 다시 말해서, 양자화 유닛 (52) 은 Z 가중 값들을 벡터 양자화하여, Z 가중 값들을 표시하는 Z-구성요소 벡터를 발생시킬 수도 있다. 일부 예들에서, Z 는 단일 V-벡터를 표시하기 위해 양자화 유닛 (52) 에 의해 선택된 가중 값들의 개수에 대응할 수도 있다. 양자화 유닛 (52) 은 Z 가중 값들을 표시하기 위해 선택된 Z-구성요소 벡터를 표시하는 데이터를 발생시키고, 이 데이터를 비트스트림 발생 유닛 (42) 로, 코딩된 가중치들 (57) 로서 제공할 수도 있다. 일부 예들에서, 양자화 코드북은 인덱싱된 복수의 Z-구성요소 벡터들을 포함할 수도 있으며, Z-구성요소 벡터를 표시하는 데이터는 선택된 벡터를 가리키는 양자화 코드북으로의 인덱스 값일 수도 있다. 이러한 예들에서, 디코더는 인덱스 값을 디코딩하기 위해, 유사하게 인덱스된 양자화 코드북을 포함할 수도 있다.
수학적으로, 감소된 포그라운드 V[k] 벡터들 (55) 의 각각은 다음 수식에 기초하여 표현될 수도 있다:
Figure 112016082128710-pct00034
(1)
여기서,
Figure 112016082128710-pct00035
는 코드 벡터들 (
Figure 112016082128710-pct00036
) 의 세트에서의 j번째 코드 벡터를 표시하며,
Figure 112016082128710-pct00037
는 가중치들 (
Figure 112016082128710-pct00038
) 의 세트에서의 j번째 가중치를 나타내며,
Figure 112016082128710-pct00039
는 V-벡터 코딩 유닛 (52) 에 의해 표현되고, 분해되고, 및/또는 코딩되고 있는 V-벡터에 대응하며, J 는 V 를 표현하는데 사용되는 코드 벡터들의 개수 및 가중치들의 개수를 표시한다. 수식 (1) 의 우변은 가중치들 (
Figure 112016082128710-pct00040
) 의 세트 및 코드 벡터들 (
Figure 112016082128710-pct00041
) 의 세트를 포함하는 코드 벡터들의 가중 총합을 표시할 수도 있다.
일부 예들에서, 양자화 유닛 (52) 은 다음 방정식에 기초하여 가중 값들을 결정할 수도 있다:
Figure 112016082128710-pct00042
(2)
여기서,
Figure 112016082128710-pct00043
는 코드 벡터들 (
Figure 112016082128710-pct00044
) 의 세트에서의 k번째 코드 벡터의 전치를 나타내며,
Figure 112016082128710-pct00045
는 양자화 유닛 (52) 에 의해 표시되고, 분해되고, 및/또는 코딩되고 있는 V-벡터에 대응하며,
Figure 112016082128710-pct00046
는 가중치들 (
Figure 112016082128710-pct00047
) 의 세트에서의 k번째 가중치를 나타낸다.
25 개의 가중치들 및 25 개의 코드 벡터들이 V-벡터,
Figure 112016082128710-pct00048
를 표시하는데 사용되는 예를 고려한다. 이러한
Figure 112016082128710-pct00049
의 분해는 다음과 같이 쓸 수도 있다:
Figure 112016082128710-pct00050
(3)
여기서,
Figure 112016082128710-pct00051
는 코드 벡터들 (
Figure 112016082128710-pct00052
) 의 세트에서의 j번째 코드 벡터를 표시하며,
Figure 112016082128710-pct00053
는 가중치들 (
Figure 112016082128710-pct00054
) 의 세트에서의 j번째 가중치를 표시하며,
Figure 112016082128710-pct00055
는 양자화 유닛 (52) 에 의해 표시되고, 분해되고, 및/또는 코딩되고 있는 V-벡터에 대응한다.
코드 벡터들 (
Figure 112016082128710-pct00056
) 의 세트가 직교한 예들에서, 다음 수식이 적용될 수도 있다:
Figure 112016082128710-pct00057
(4)
이러한 예들에서, 방정식 (3) 의 우변은 다음과 같이 단순화될 수도 있다:
Figure 112016082128710-pct00058
(5)
여기서,
Figure 112016082128710-pct00059
는 코드 벡터들의 가중 총합에서의 k번째 가중치에 대응한다.
방정식 (3) 에서 사용되는 코드 벡터들의 예시적인 가중 총합에 대해, 양자화 유닛 (52) 은 (방정식 (2) 와 유사한) 방정식 (5) 을 이용하여 코드 벡터들의 가중 총합에서의 가중치들의 각각에 대해 가중 값들을 계산할 수도 있으며, 최종 가중치들은 다음과 같이 나타낼 수도 있다:
Figure 112016082128710-pct00060
(6)
양자화 유닛 (52) 이 5개의 최대치들 가중 값들 (즉, 최대 값들 또는 절대값들을 가지는 가중치들) 을 선택하는 예를 고려한다. 양자화될 가중 값들의 서브세트는 다음과 같이 나타낼 수도 있다:
Figure 112016082128710-pct00061
(7)
가중 값들의 서브세트가 그들의 대응하는 코드 벡터들과 함께 다음 수식에 나타낸 바와 같이, V-벡터를 추정하는 코드 벡터들의 가중 총합을 형성하는데 사용될 수도 있다:
Figure 112016082128710-pct00062
(8)
여기서,
Figure 112016082128710-pct00063
는 코드 벡터들 (
Figure 112016082128710-pct00064
) 의 서브세트에서의 j번째 코드 벡터를 표시하며,
Figure 112016082128710-pct00065
는 가중치들 (
Figure 112016082128710-pct00066
) 의 서브세트에서의 j번째 가중치를 표시하며,
Figure 112016082128710-pct00067
는 양자화 유닛 (52) 에 의해 분해되고 및/또는 코딩되고 있는 V-벡터에 대응하는 추정된 V-벡터에 대응한다. 수식 (1) 의 우변은 가중치들 (
Figure 112016082128710-pct00068
) 의 세트 및 코드 벡터들 (
Figure 112016082128710-pct00069
) 의 세트를 포함하는 코드 벡터들의 가중 총합을 표시할 수도 있다.
양자화 유닛 (52) 은 가중 값들의 서브세트를 양자화하여, 다음과 같이 나타낼 수도 있는 양자화된 가중 값들을 발생시킬 수도 있다:
Figure 112016082128710-pct00070
(9)
양자화된 가중 값들이 그들의 대응하는 코드 벡터들과 함께 다음 수식에 나타낸 바와 같이, 추정된 V-벡터의 양자화된 버전을 표시하는 코드 벡터들의 가중 총합을 형성하기 위해 사용될 수도 있다:
Figure 112016082128710-pct00071
(10)
여기서,
Figure 112016082128710-pct00072
는 코드 벡터들 (
Figure 112016082128710-pct00073
) 의 서브세트에서의 j번째 코드 벡터를 표시하며,
Figure 112016082128710-pct00074
는 가중치들 (
Figure 112016082128710-pct00075
) 의 서브세트에서의 j번째 가중치를 표시하며,
Figure 112016082128710-pct00076
는 양자화 유닛 (52) 에 의해 분해되고 및/또는 코딩되고 있는 V-벡터에 대응하는 추정된 V-벡터에 대응한다. 수식 (1) 의 우변은 가중치들 (
Figure 112016082128710-pct00077
) 의 세트 및 코드 벡터들 (
Figure 112016082128710-pct00078
) 의 세트를 포함하는 코드 벡터들의 서브세트의 가중 총합을 표시할 수도 있다.
(위에서 설명된 것과 대체로 동등한) 전술한 것의 대안적인 수정 (restatement) 은 다음과 같을 수도 있다. V-벡터들은 코드 벡터들의 미리 정의된 세트에 기초하여 코딩될 수도 있다. V-벡터들을 코딩하기 위해, 각각의 V-벡터는 코드 벡터들의 가중 총합으로 분해된다. 코드 벡터들의 가중 총합은 미리 정의된 코드 벡터들 및 연관된 가중치들의 k 개의 쌍들로 이루어진다:
Figure 112016082128710-pct00079
(11)
여기서,
Figure 112016082128710-pct00080
는 미리 정의된 코드 벡터들 (
Figure 112016082128710-pct00081
) 의 세트에서의 j번째 코드 벡터를 표시하며,
Figure 112016082128710-pct00082
는 미리 정의된 가중치들 (
Figure 112016082128710-pct00083
) 의 세트에서의 j번째 실수 값의 가중치를 표시하며,
Figure 112016082128710-pct00084
는 최고 7 일 수 있는, 가수들의 인덱스에 대응하며,
Figure 112016082128710-pct00085
는 코딩될 V-벡터에 대응한다.
Figure 112016082128710-pct00086
의 선택은 인코더에 의존한다. 인코더가 2개 이상의 코드 벡터들의 가중 총합을 선택하면, 인코더가 선택할 수 있는 미리 정의된 코드 벡터들의 총 개수는 (N+1)2 이며, 여기서, 미리 정의된 코드 벡터들은 2014년 07월 25일로 기재된, 그리고 문서 번호 ISO/IEC DIS 23008-3 로 식별되는, ISO/IEC JTC 1/SC 29/WG 11 에 의한, "Information technology - High effeciency coding and media delivery in heterogeneous environments - Part 3: 3D audio"란 표제로 된, 3D 오디오 표준의 테이블들 F.3 내지 F.7 로부터 HOA 확장 계수들로서 유도된다. N 이 4 일 때, 32 개의 미리 정의된 방향들을 가지는 상기 언급된 3D 오디오 표준의 부속서 F.5 에서의 테이블이 사용된다. 모든 경우들에서, 가중치들
Figure 112016082128710-pct00087
의 절대값들은 상기 언급된 3D 오디오 표준의 테이블 F.12 에서의 테이블의 제 1
Figure 112016082128710-pct00088
칼럼들에서 발견되어 연관된 로우 개수 인덱스로 시그널링되는 미리 정의된 가중값들
Figure 112016082128710-pct00089
에 대해 벡터-양자화된다.
가중치들
Figure 112016082128710-pct00090
의 개수 부호들은 다음과 같이 별개로 코딩된다
Figure 112016082128710-pct00091
(12)
다시 말해서, 값
Figure 112016082128710-pct00092
를 시그널링한 후, V-벡터는
Figure 112016082128710-pct00093
미리 정의된 코드 벡터들
Figure 112016082128710-pct00094
를 가리키는
Figure 112016082128710-pct00095
인덱스들, 미리 정의된 가중 코드북에서
Figure 112016082128710-pct00096
양자화된 가중치들
Figure 112016082128710-pct00097
을 가리키는 하나의 인덱스, 및
Figure 112016082128710-pct00098
개수 부호 값들
Figure 112016082128710-pct00099
로 인코딩된다:
Figure 112016082128710-pct00100
(13)
인코더가 하나의 코드 벡터의 가중 총합을 선택하면, 상기 언급된 3D 오디오 표준의 테이블 F.8 로부터 유도된 코드북이 상기 언급된 3D 오디오 표준의 테이블 F.11 의 테이블에서 절대 가중값들
Figure 112016082128710-pct00101
과 조합하여 사용되며, 여기서, 이들 테이블들의 양쪽이 아래에 나타낸다. 또한, 가중값
Figure 112016082128710-pct00102
의 개수 부호는 별개로 코딩될 수도 있다. 양자화 유닛 (52) 은 위에서 언급된 테이블들 F.3 내지 F.12 에 개시된 전술한 코드북들 중 어느 코브둑이 ("CodebkIdx" 로서 아래에 표시될 수도 있는) 코드북 인덱스 신택스 엘리먼트를 이용하여, 입력 V-벡터를 코딩하는데 사용되는지를 시그널링할 수도 있다. 양자화 유닛 (52) 은 또한 입력 V-벡터를 스칼라 양자화하여, 스칼라-양자화된 V-벡터를 Huffman 코딩 없이 출력 스칼라-양자화된 V-벡터를 발생시킬 수도 있다. 양자화 유닛 (52) 은 Huffman 코딩 스칼라 양자화 모드에 따라서 입력 V-벡터를 추가로 스칼라 양자화하여, Huffman-코딩된 스칼라-양자화된 V-벡터를 발생시킬 수도 있다. 예를 들어, 양자화 유닛 (52) 은 입력 V-벡터를 스칼라 양자화하여 스칼라-양자화된 V-벡터를 발생시키고, 스칼라-양자화된 V-벡터를 Huffman 코딩하여 출력 Huffman-코딩된 스칼라-양자화된 V-벡터를 발생시킬 수도 있다.
일부 예들에서, 양자화 유닛 (52) 은 예측된 벡터 양자화의 유형을 수행할 수도 있다. 양자화 유닛 (52) 은 (양자화 모드를 표시하는, 하나 이상의 비트들, 예컨대, NbitsQ 신택스 엘리먼트에 의해 식별되는 것 처럼) 예측이 벡터 양자화를 위해 수행되는지 여부를 표시하는 하나 이상의 비트들 (예컨대, PFlag 신택스 엘리먼트) 을 비트스트림 (21) 에 규정함으로써, 벡터 양자화가 예측되는지 여부를 식별할 수도 있다.
예측된 벡터 양자화를 예시하기 위해, 양자화 유닛 (42) 은 벡터 (예컨대, v-벡터) 의 코드 벡터-기반의 분해에 대응하는 가중 값들 (예컨대, 가중 값 크기들) 을 수신하고, 수신된 가중 값들에 기초하여 그리고 복원된 가중 값들 (예컨대, 하나 이상의 이전 또는 후속 오디오 프레임들로부터의 복원된 가중 값들) 에 기초하여 예측 가중 값들을 발생시키고, 그리고 예측 가중 값들의 세트들을 벡터-양자화하도록 구성될 수도 있다. 일부의 경우, 예측 가중 값들의 세트에서의 각각의 가중 값은 단일 벡터의 코드-벡터-기반의 분해에 포함된 가중 값에 대응할 수도 있다.
양자화 유닛 (52) 은 벡터의 이전 또는 후속 코딩으로부터 가중 값 및 가중된 복원된 가중 값을 수신할 수도 있다. 양자화 유닛 (52) 은 가중 값 및 가중된 복원된 가중 값에 기초하여 예측 가중 값을 발생시킬 수도 있다. 양자화 유닛 (42) 은 가중 값에서 가중된 복원된 가중 값을 감산하여, 예측 가중 값을 발생시킬 수도 있다. 예측 가중 값은 대안적으로, 예를 들어, 잔차, 예측 잔차, 잔차 가중 값, 가중 값 차이, 에러, 또는 예측 에러로서 지칭될 수도 있다.
가중 값은 대응하는 가중 값,
Figure 112016082128710-pct00103
의 크기 (또는, 절대값) 인
Figure 112016082128710-pct00104
로서 표시될 수도 있다. 이와 같이, 가중 값은 대안적으로 가중 값 크기로서 또는 가중 값의 크기로서 지칭될 수도 있다. 가중 값,
Figure 112016082128710-pct00105
는, i번째 오디오 프레임에 대한 가중 값들의 순서정렬된 서브세트로부터 j번째 가중 값에 대응한다. 일부 예들에서, 가중 값들의 순서정렬된 서브세트는 가중 값들의 크기에 기초하여 순서화된 (예컨대, 최대 크기로부터 최소 크기까지 순서화된) 벡터 (예컨대, v-벡터) 의 코드 벡터-기반의 분해에서 가중 값들의 서브세트에 대응할 수도 있다.
가중된 복원된 가중 값은 대응하는 복원된 가중 값,
Figure 112016082128710-pct00106
의 크기 (또는, 절대값) 에 대응하는
Figure 112016082128710-pct00107
항을 포함할 수도 있다. 복원된 가중 값,
Figure 112016082128710-pct00108
은, (i-1)번째 오디오 프레임에 대한 복원된 가중 값들의 순서정렬된 서브세트에서 j번째 복원된 가중 값에 대응한다. 일부 예들에서, 복원된 가중 값들의 순서정렬된 서브세트 (또는, 세트) 는 복원된 가중 값들에 대응하는 양자화된 예측 가중 값들에 기초하여 발생될 수도 있다.
양자화 유닛 (42) 은 또한 가중 인자,
Figure 112016082128710-pct00109
를 포함한다. 일부 예들에서,
Figure 112016082128710-pct00110
이며, 이 경우 가중된 복원된 가중 값이
Figure 112016082128710-pct00111
로 감소될 수도 있다. 다른 예들에서,
Figure 112016082128710-pct00112
이다. 예를 들어,
Figure 112016082128710-pct00113
는 다음 방정식에 기초하여 결정될 수도 있다:
Figure 112016082128710-pct00114
여기서, I 는
Figure 112016082128710-pct00115
를 결정하는데 사용되는 오디오 프레임들의 개수에 대응한다. 이전 방정식에서 나타낸 바와 같이, 가중 인자는, 일부 예들에서, 복수의 상이한 오디오 프레임들로부터의 복수의 상이한 가중 값들에 기초하여 결정될 수도 있다.
또한, 예측된 벡터 양자화를 수행하도록 구성될 때, 양자화 유닛 (52) 은 다음 방정식에 기초하여 예측 가중 값을 발생시킬 수도 있다:
Figure 112016082128710-pct00116
여기서,
Figure 112016082128710-pct00117
는 i번째 오디오 프레임에 대한 가중 값들의 순서정렬된 서브세트로부터 j번째 가중 값에 대한 예측 가중 값에 대응한다.
양자화 유닛 (52) 은 예측 가중 값 및 예측된 벡터 양자화 (PVQ) 코드북에 기초하여, 양자화된 예측 가중 값을 발생시킨다. 예를 들어, 양자화 유닛 (52) 은 양자화된 예측 가중 값을 발생시키기 위해, 코딩될 벡터에 대해 또는 코딩될 프레임에 대해 발생된 다른 예측 가중 값들과 조합하여 예측 가중 값을 벡터 양자화할 수도 있다.
양자화 유닛 (52) 은 PVQ 코드북에 기초하여 예측 가중 값 (620) 을 벡터 양자화할 수도 있다. PVQ 코드북은 복수의 M-구성요소 후보 양자화 벡터들을 포함할 수도 있으며, 양자화 유닛 (52) 은 Z 예측 가중 값들을 표시하기 위해 후보 양자화 벡터들 중 하나를 선택할 수도 있다. 일부 예들에서, 양자화 유닛 (52) 은 양자화 에러를 최소화하는 (예컨대, 최소 자승 에러를 최소화하는) 후보 양자화 벡터를 PVQ 코드북으로부터 선택할 수도 있다.
일부 예들에서, PVQ 코드북은 엔트리들의 각각이 양자화 코드북 인덱스 및 대응하는 M-구성요소 후보 양자화 벡터를 포함하는 복수의 엔트리들을 포함할 수도 있다. 양자화 코드북에서의 인덱스들의 각각은 복수의 M-구성요소 후보 양자화 벡터들의 개개의 하나에 대응할 수도 있다.
양자화 벡터들의 각각에서의 구성요소들의 개수는 단일 v-벡터를 표시하도록 선택된 가중치들의 개수 (즉, Z) 에 의존할 수도 있다. 일반적으로, Z-구성요소 후보 양자화 벡터들을 가지는 코드북에 대해, 양자화 유닛 (52) 은 한번에 Z 예측 가중 값들을 벡터 양자화하여 단일 양자화된 벡터를 발생시킬 수도 있다. 양자화 코드북에서의 엔트리들의 개수는 가중 값들을 벡터 양자화하는데 사용되는 비트-레이트에 의존할 수도 있다.
양자화 유닛 (52) 이 예측 가중 값을 벡터 양자화할 때, 양자화 유닛 (52) 은 PVQ 코드북으로부터 Z-구성요소 벡터를 Z 예측 가중 값들을 표시하는 양자화 벡터로 선택할 수도 있다. 양자화된 예측 가중 값은 i번째 오디오 프레임에 대한 j번째 예측 가중 값의 벡터-양자화된 버전에 추가로 대응할 수도 있는, i번째 오디오 프레임에 대한 Z-구성요소 양자화 벡터의 j번째 구성요소에 대응할 수도 있는,
Figure 112016082128710-pct00118
로서 표시될 수도 있다.
예측된 벡터 양자화를 수행하도록 구성될 때, 양자화 유닛 (52) 은 또한 양자화된 예측 가중 값 및 가중된 복원된 가중 값에 기초하여, 복원된 가중 값을 발생시킬 수도 있다. 예를 들어, 양자화 유닛 (52) 은 가중된 복원된 가중 값을 양자화된 예측 가중 값에 가산하여, 복원된 가중 값을 발생시킬 수도 있다. 가중된 복원된 가중 값은 위에서 설명된 가중된 복원된 가중 값과 동일할 수도 있다. 일부 예들에서, 가중된 복원된 가중 값은 복원된 가중 값의 가중된 및 지연된 버전일 수도 있다.
복원된 가중 값은 대응하는 복원된 가중 값,
Figure 112016082128710-pct00119
의 크기 (또는, 절대값) 에 대응하는
Figure 112016082128710-pct00120
로서 표현될 수도 있다. 복원된 가중 값,
Figure 112016082128710-pct00121
은, (i-1)번째 오디오 프레임에 대한 복원된 가중 값들의 순서정렬된 서브세트로부터 j번째 복원된 가중 값에 대응한다. 일부 예들에서, 양자화 유닛 (52) 은 예측 코딩되는 가중 값의 부호를 표시하는 데이터를 별개로 코딩할 수도 있으며, 디코더는 이 정보를 이용하여, 복원된 가중 값의 부호를 결정할 수도 있다.
양자화 유닛 (52) 은 다음 방정식에 기초하여, 복원된 가중 값을 발생시킬 수도 있다:
Figure 112016082128710-pct00122
여기서,
Figure 112016082128710-pct00123
는 i번째 오디오 프레임에 대한 가중 값들의 순서정렬된 서브세트 (예컨대, M-구성요소 양자화 벡터의 j번째 구성요소) 로부터 j번째 가중 값에 대한 양자화된 예측 가중 값에 대응하며,
Figure 112016082128710-pct00124
는 (i-1)번째 오디오 프레임에 대한 가중 값들의 순서정렬된 서브세트로부터 j번째 가중 값에 대한 복원된 가중 값의 크기에 대응하며,
Figure 112016082128710-pct00125
는 가중 값들의 순서정렬된 서브세트로부터 j번째 가중 값에 대한 가중 인자에 대응한다.
양자화 유닛 (52) 은 복원된 가중 값에 기초하여, 지연된 복원된 가중 값을 발생시킬 수도 있다. 예를 들어, 양자화 유닛 (52) 은 복원된 가중 값을 하나의 오디오 프레임 만큼 지연시켜, 지연된 복원된 가중 값을 발생시킬 수도 있다.
양자화 유닛 (52) 은 또한 지연된 복원된 가중 값 및 가중 인자에 기초하여, 가중된 복원된 가중 값을 발생시킬 수도 있다. 예를 들어, 양자화 유닛 (52) 은 지연된 복원된 가중 값을 가중 인자으로 곱하여, 가중된 복원된 가중 값을 발생시킬 수도 있다.
이와 유사하게, 양자화 유닛 (52) 은 지연된 복원된 가중 값 및 가중 인자에 기초하여, 가중된 복원된 가중 값을 발생시킨다. 예를 들어, 양자화 유닛 (52) 은 지연된 복원된 가중 값을 가중 인자로 곱하여, 가중된 복원된 가중 값을 발생시킬 수도 있다.
PVQ 코드북로부터 Z-구성요소 벡터를 Z 예측 가중 값들에 대한 양자화 벡터로 선택하는 것에 응답하여, 양자화 유닛 (52) 은, 일부 예들에서, 선택된 Z-구성요소 벡터 자체를 코딩하는 대신, 그 선택된 Z-구성요소 벡터에 대응하는 (PVQ 코드북으로부터의) 인덱스를 코딩할 수도 있다. 인덱스는 양자화된 예측 가중 값들의 세트를 표시할 수도 있다. 이러한 예들에서, 디코더 (24) 는 PVQ 코드북과 유사한 코드북을 포함할 수도 있으며, 디코더 코드북에서의 대응하는 Z-구성요소 벡터로의 인덱스를 맵핑함으로써, 양자화된 예측 가중 값들을 표시하는 인덱스를 디코딩할 수도 있다. Z-구성요소 벡터에서의 구성요소들의 각각은 양자화된 예측 가중 값에 대응할 수도 있다.
벡터 (예컨대, V-벡터) 를 스칼라 양자화하는 것은 벡터의 구성요소들의 각각을 다른 구성요소들과는 개별적으로 및/또는 독립적으로 양자화하는 것을 포함할 수도 있다. 예를 들어, 다음 예시적인 V-벡터를 고려한다:
Figure 112016082128710-pct00126
이 예시적인 V-벡터를 스칼라 양자화하기 위해, 구성요소들의 각각은 개별적으로 양자화될 (즉, 스칼라-양자화될) 수도 있다. 예를 들어, 양자화 단계가 0.1 이면, 0.23 구성요소는 0.2 로 양자화될 수도 있으며, 0.31 구성요소는 0.3 으로 양자화될 수도 있으며, 기타등등으로 양자화될 수도 있다. 스칼라-양자화된 구성요소들은 일괄하여 스칼라-양자화된 V-벡터를 형성할 수도 있다.
다시 말해서, 양자화 유닛 (52) 은 감소된 포그라운드 V[k] 벡터들 (55) 의 주어진 하나의 엘리먼트들의 모두에 대해 균일한 스칼라 양자화를 수행할 수도 있다. 양자화 유닛 (52) 은 NbitsQ 신택스 엘리먼트로서 표시될 수도 있는 값에 기초하여, 양자화 단계 사이즈를 식별할 수도 있다. 양자화 유닛 (52) 은 목표 비트레이트 (41) 에 기초하여, 이 NbitsQ 신택스 엘리먼트를 동적으로 결정할 수도 있다. NbitsQ 신택스 엘리먼트는 또한 아래에 재현된 ChannelSideInfoData 신택스 테이블에서 언급된 바와 같이 양자화 모드를 식별할 수도 있지만, 또한 단계 사이즈를 스칼라 양자화하기 위한 목적들을 위해 식별할 수도 있다. 즉, 양자화 유닛 (52) 은 양자화 단계 사이즈를 이 NbitsQ 신택스 엘리먼트의 함수로서 결정할 수도 있다. 일 예로서, 양자화 유닛 (52) 은 (본 개시물에서 "delta" 또는 "Δ" 로서 표시된) 양자화 단계 사이즈를 216- NbitsQ 와 동일하게 결정할 수도 있다. 이 예에서, NbitsQ 신택스 엘리먼트의 값이 6 과 동일할 때, delta 는 210 와 동일하며, 26 개의 양자화 레벨들이 존재한다. 이 점에서, 벡터 엘리먼트 v 에 대해, 양자화된 벡터 엘리먼트
Figure 112016082128710-pct00127
는 [v/Δ] 및 -2NbitsQ -1 < vq < 2NbitsQ-1 와 동일하다.
양자화 유닛 (52) 은 그후 양자화된 벡터 엘리먼트들의 범주화 및 잔차 코딩을 수행할 수도 있다. 일 예로서, 양자화 유닛 (52) 은, 주어진 양자화된 벡터 엘리먼트
Figure 112016082128710-pct00128
에 대해, 이 엘리먼트가 대응하는 카테고리를 (카테고리 식별자 cid 를 결정함으로써) 다음 방정식을 이용하여 식별할 수도 있다:
Figure 112016082128710-pct00129
양자화 유닛 (52) 은 그후 이 카테고리 인덱스 cid 를 Huffman 코딩할 수도 있으며, 한편,
Figure 112016082128710-pct00130
가 양의 값 또는 음의 값인지 여부를 표시하는 부호 비트를 또한 식별할 수도 있다. 양자화 유닛 (52) 은 다음으로, 이 카테고리에서 잔차를 식별할 수도 있다. 일 예로서, 양자화 유닛 (52) 은 다음 방정식에 따라서 이 잔차를 결정할 수도 있다:
Figure 112016082128710-pct00131
양자화 유닛 (52) 은 그후 cid-1 비트들로 이 잔차를 블록 코딩할 수도 있다.
양자화 유닛 (52) 은, 일부 예들에서, cid 를 코딩할 때 NbitsQ 신택스 엘리먼트의 상이한 값들에 대해 상이한 Huffman 코드 북들을 선택할 수도 있다. 일부 예들에서, 양자화 유닛 (52) 은 NbitsQ 신택스 엘리먼트 값들 6, …, 15 에 대해 상이한 Huffman 코딩 테이블을 제공할 수도 있다. 더욱이, 양자화 유닛 (52) 은 총 50 개의 Huffman 코드 북들에 대해 6, …, 15 의 범위인 상이한 NbitsQ 신택스 엘리먼트 값들의 각각에 대해, 5개의 상이한 Huffman 코드 북들을 포함할 수도 있다. 이 점에서, 양자화 유닛 (52) 은 다수의 상이한 통계적 상황들에서 cid 의 코딩을 수용하기 위해 복수의 상이한 Huffman 코드 북들을 포함할 수도 있다.
예시하기 위하여, 양자화 유닛 (52) 은, NbitsQ 신택스 엘리먼트 값들의 각각에 대해, 벡터 엘리먼트들 1 내지 4 를 코딩하기 위한 제 1 Huffman 코드 북, 벡터 엘리먼트들 5 내지 9 를 코딩하기 위한 제 2 Huffman 코드 북, 벡터 엘리먼트들 9 및 이상을 코딩하기 위한 제 3 Huffman 코드 북을 포함할 수도 있다. 이들 처음 3개의 Huffman 코드 북들은 압축될 감소된 포그라운드 V[k] 벡터들 (55) 중 하나가 감소된 포그라운드 V[k] 벡터들 (55) 중 시간적으로 후속 대응하는 하나로부터 예측되지 않고 합성 오디오 오브젝트의 공간 정보 (예를 들어, 펄스부호 변조된 (PCM) 오디오 오브젝트에 의해 원래 정의된 것) 를 표시하지 않을 때 사용될 수도 있다. 양자화 유닛 (52) 은 추가적으로, NbitsQ 신택스 엘리먼트 값들의 각각에 대해, 이 감소된 포그라운드 V[k] 벡터들 (55) 중 하나가 감소된 포그라운드 V[k] 벡터들 (55) 중 시간적으로 후속 대응하는 하나로부터 예측될 때, 감소된 포그라운드 V[k] 벡터들 (55) 중 하나를 코딩하기 위한 제 4 Huffman 코드 북을 포함할 수도 있다. 양자화 유닛 (52) 은 또한, NbitsQ 신택스 엘리먼트 값들의 각각에 대해, 이 감소된 포그라운드 V[k] 벡터들 (55) 중 하나가 합성 오디오 오브젝트를 표시할 때, 감소된 포그라운드 V[k] 벡터들 (55) 중 하나를 코딩하기 위한 제 5 Huffman 코드 북을 포함할 수도 있다. 여러 Huffman 코드 북들이 이 예에서, 이들 상이한 통계적 상황들, 즉, 비-예측 및 비-합성 상황, 예측된 상황 및 합성 상황의 각각에 대해 전개될 수도 있다.
다음 테이블은 압축해제 유닛이 적합한 Huffman 테이블을 선택하도록 하기 위해서 비트스트림에 규정될 Huffman 테이블 선택 및 비트들을 예시한다:
Figure 112016082128710-pct00132
상기 테이블에서, 예측 모드 ("Pred 모드") 는 현재의 벡터에 대해 예측이 수행되었는지 여부를 표시하며, 한편 Huffman 테이블 ("HT 정보") 은 Huffman 테이블들 1 내지 5 중 하나를 선택하는 사용되는 추가적인 Huffman 코드 북 (또는, 테이블) 정보를 나타낸다. 예측 모드는 또한 아래에서 설명되는 PFlag 신택스 엘리먼트로서 표현될 수도 있으며, 한편 HT 정보는 아래에서 설명되는 CbFlag 신택스 엘리먼트에 의해 표현될 수도 있다.
다음 테이블은 이 Huffman 테이블 선택 프로세스 주어진 여러 통계적 컨텍스트들 또는 시나리오들을 추가로 예시한다.
Figure 112016082128710-pct00133
상기 테이블에서, "리코딩" 칼럼은 벡터가 리코딩된 오디오 오브젝트를 표시할 때의 코딩 상황을 표시하며, 한편, "합성 (Synthetic)" 칼럼은 벡터가 합성 오디오 오브젝트를 표시할 때에 대한 코딩 상황을 표시한다. "W/O 예측 (Pred)" 로우는 벡터 엘리먼트들에 대해 예측이 수행되지 않을 때의 코딩 상황을 표시하며, 한편, "예측에 의해 (With Pred)" 로우는 벡터 엘리먼트들에 대해 예측이 수행될 때의 코딩 상황을 표시한다. 이 테이블에 나타낸 바와 같이, 양자화 유닛 (52) 은 벡터가 리코딩된 오디오 오브젝트를 표시하고 벡터 엘리먼트들에 대해 예측이 수행되지 않을 때 HT{1, 2, 3} 를 선택한다. 양자화 유닛 (52) 은 오디오 오브젝트가 합성 오디오 오브젝트를 표시하며 벡터 엘리먼트들에 대해 예측이 수행되지 않을 때 HT5 를 선택한다. 양자화 유닛 (52) 은 벡터가 리코딩된 오디오 오브젝트를 표시하며 예측이 벡터 엘리먼트들에 대해 예측이 수행될 때 HT4 를 선택한다. 양자화 유닛 (52) 은 오디오 오브젝트가 합성 오디오 오브젝트를 표시하며 벡터 엘리먼트들에 대해 예측이 수행될 때 HT5 를 선택한다.
양자화 유닛 (52) 은 출력 스위칭된-양자화된 V-벡터로서 사용할, 비-예측된 벡터-양자화된 V-벡터, 예측된 벡터-양자화된 V-벡터, 비-Huffman-코딩된 스칼라-양자화된 V-벡터, 및 Huffman-코딩된 스칼라-양자화된 V-벡터 중 하나를, 본 개시물에서 설명되는 기준들의 임의의 조합에 기초하여 선택할 수도 있다. 일부 예들에서, 양자화 유닛 (52) 은 벡터 양자화 모드 및 하나 이상의 스칼라 양자화 모드들을 포함하는 양자화 모드들의 세트로부터 양자화 모드를 선택하고, 그 선택된 모드에 기초하여 (또는, 그에 따라서) 입력 V-벡터를 양자화할 수도 있다. 양자화 유닛 (52) 은 그후 (예컨대, 가중 값들 또는 그의 표시하는 비트들의 관점에서) 비-예측된 벡터-양자화된 V-벡터, (예컨대, 에러 값들 또는 그의 표시하는 비트들의 관점에서) 예측된 벡터-양자화된 V-벡터, 비-Huffman-코딩된 스칼라-양자화된 V-벡터 및 Huffman-코딩된 스칼라-양자화된 V-벡터 중 선택된 하나를, 비트스트림 발생 유닛 (52) 에, 코딩된 포그라운드 V[k] 벡터들 (57) 로서 제공할 수도 있다. 양자화 유닛 (52) 은 또한 양자화 모드를 표시하는 신택스 엘리먼트들 (예컨대, NbitsQ 신택스 엘리먼트) 및 도 4 및 도 7 의 예에 대해 아래에서 좀더 자세히 설명되는 바와 같이 V-벡터를 역양자화하거나 또는 아니면 복원하는데 사용되는 임의의 다른 신택스 엘리먼트들을 제공할 수도 있다.
오디오 인코딩 디바이스 (20) 내에 포함되는 음향심리 오디오 코더 유닛 (40) 은 음향심리 오디오 코더의 다수의 인스턴스들을 나타낼 수도 있으며, 이의 각각은 에너지 보상된 주변 HOA 계수들 (47') 및 내삽된 nFG 신호들 (49') 의 각각의 상이한 오디오 오브젝트 또는 HOA 채널을 인코딩하여 인코딩된 주변 HOA 계수들 (59) 및 인코딩된 nFG 신호들 (61) 을 발생시키는데 사용된다. 음향심리 오디오 코더 유닛 (40) 은 인코딩된 주변 HOA 계수들 (59) 및 인코딩된 nFG 신호들 (61) 을 비트스트림 발생 유닛 (42) 으로 출력할 수도 있다.
오디오 인코딩 디바이스 (20) 내에 포함된 비트스트림 발생 유닛 (42) 은 (디코딩 디바이스에 의해 알려진 포맷을 지칭할 수도 있는) 기지의 포맷을 따르도록 데이터를 포맷하여, 벡터-기반 비트스트림 (21) 을 발생시키는 유닛을 나타낸다. 즉, 비트스트림 (21) 은 위에서 설명된 방법으로 인코딩되어 있는 인코딩된 오디오 데이터를 나타낼 수도 있다. 비트스트림 발생 유닛 (42) 은 일부 예들에서, 코딩된 포그라운드 V[k] 벡터들 (57), 인코딩된 주변 HOA 계수들 (59), 인코딩된 nFG 신호들 (61) 및 백그라운드 채널 정보 (43) 를 수신할 수도 있는 멀티플렉서를 나타낼 수도 있다. 비트스트림 발생 유닛 (42) 은 그후 코딩된 포그라운드 V[k] 벡터들 (57), 인코딩된 주변 HOA 계수들 (59), 인코딩된 nFG 신호들 (61) 및 백그라운드 채널 정보 (43) 에 기초하여, 비트스트림 (21) 을 발생시킬 수도 있다. 이러한 방법으로, 비트스트림 발생 유닛 (42) 은 이에 의해 도 7 의 예에 대해 아래에서 좀더 자세히 설명되는 바와 같이 비트스트림 (21) 을 획득하기 위해 벡터들 (57) 을 비트스트림 (21) 에 규정할 수도 있다. 비트스트림 (21) 은 1차 또는 메인 비트스트림 및 하나 이상의 부 채널 비트스트림들을 포함할 수도 있다.
도 3 의 예에서는 나타내지 않았지만, 오디오 인코딩 디바이스 (20) 는 또한 현재의 프레임이 방향-기반 합성 또는 벡터-기반 합성을 이용하여 인코딩되는지 여부에 기초하여 오디오 인코딩 디바이스 (20) 로부터 출력된 비트스트림 출력을 (예컨대, 방향-기반 비트스트림 (21) 과 벡터-기반 비트스트림 (21) 사이에) 스위칭하는 비트스트림 출력 유닛을 포함할 수도 있다. 비트스트림 출력 유닛은 방향-기반 합성이 (HOA 계수들 (11) 이 합성 오디오 오브젝트로부터 발생되었다고 검출한 결과로서) 수행되었는지 여부 또는 벡터-기반 합성이 (HOA 계수들이 기록되었다고 검출한 결과로서) 수행되었는지 여부를 나타내는 콘텐츠 분석 유닛 (26) 에 의해 출력된 신택스 엘리먼트에 기초하여 스위칭을 수행할 수도 있다. 비트스트림 출력 유닛은 비트스트림들 (21) 의 개개의 하나와 함께 현재의 프레임에 대해 수행되는 스위치 또는 현재의 인코딩을 나타내는 올바른 헤더 신택스를 규정할 수도 있다.
더욱이, 위에서 언급한 바와 같이, 음장 분석 유닛 (44) 은 (때로는 BGTOT 가 2개 이상의 (시간에서) 인접한 프레임들에 걸쳐서 일정하거나 또는 동일하게 유지할 수도 있지만) 프레임 단위로 변할 수도 있는 BGTOT 주변 HOA 계수들 (47) 을 식별할 수도 있다. BGTOT 에서의 변화는 감소된 포그라운드 V[k] 벡터들 (55) 로 표현된 계수들에 대해 변화들을 초래할 수도 있다. BGTOT 에서의 변화는 (또한, 때로는 BGTOT 가 2개 이상의 (시간에서) 인접한 프레임들에 걸쳐서 일정하거나 또는 동일하게 유지할 수도 있지만) 프레임 단위로 변하는 ("주변 HOA 계수들" 로서 또한 지칭될 수도 있는) 백그라운드 HOA 계수들을 초래할 수도 있다. 이 변화들은 종종 추가적인 주변 HOA 계수들의 추가 또는 제거, 및 감소된 포그라운드 V[k] 벡터들 (55) 로부터의 계수들의 대응하는 제거 또는 감소된 포그라운드 V[k] 벡터들 (55) 에의 계수들의 추가로 표현되는 음장의 양태들에 대해 에너지의 변화를 초래한다.
그 결과, 음장 분석 유닛 (44) 은 주변 HOA 계수들이 프레임들 간에 변하는 시점을 추가로 결정하고, (변화가 주변 HOA 계수의 "전이" 로서 또는 주변 HOA 계수의 "전이" 로서 또한 지칭될 수도 있는) 음장의 주변 구성요소들을 나타내는데 사용되는 관점에서 주변 HOA 계수에 대한 변화를 나타내는 플래그 또는 다른 신택스 엘리먼트를 발생시킬 수도 있다. 특히, 계수 감소 유닛 (46) 은 (AmbCoeffTransition 플래그 또는 AmbCoeffIdxTransition 플래그로서 표시될 수도 있는) 플래그를 발생시켜, 그 플래그가 (가능한 한 부 채널 정보의 일부로서) 비트스트림 (21) 에 포함될 수 있도록 그 플래그를 비트스트림 발생 유닛 (42) 에 제공할 수도 있다.
계수 감소 유닛 (46) 은 주변 계수 전이 플래그를 규정하는 것에 더하여, 또한 감소된 포그라운드 V[k] 벡터들 (55) 이 발생되는 방법을 수정할 수도 있다. 일 예에서, 주변 HOA 주변 계수들 중 하나가 현재의 프레임 동안 전이 중이라고 결정하자 마자, 계수 감소 유닛 (46) 은 전이 중인 주변 HOA 계수에 대응하는 감소된 포그라운드 V[k] 벡터들 (55) 의 V-벡터들의 각각에 대해 ("벡터 엘리먼트" 또는 "엘리먼트" 로서 또한 지칭될 수도 있는) 벡터 계수를 규정할 수도 있다. 또, 전이 중인 주변 HOA 계수는 백그라운드 계수들의 총 개수 BGTOT 에 추가하거나 또는 그로부터 제거될 수도 있다. 따라서, 백그라운드 계수들의 총 개수에서의 최종 변화는 주변 HOA 계수가 비트스트림에 포함되는지 여부, 및 V-벡터들의 대응하는 엘리먼트가 위에서 설명된 제 2 및 제 3 구성 모드들에서 비트스트림에 규정된 V-벡터들을 위해 포함되는지 여부에 영향을 미친다. 계수 감소 유닛 (46) 이 에너지에서의 변화들을 극복하기 위해 감소된 포그라운드 V[k] 벡터들 (55) 을 규정할 수 있는 방법에 관한 더 많은 정보는 "TRANSITIONING OF AMBIENT HIGHER_ORDER AMBISONIC COEFFICIENTS" 란 발명의 명칭으로, 2015년 1월 12일에 출원된, 미국 출원 번호 제 14/594,533호에서 제공된다.
도 4 는 도 2 의 오디오 디코딩 디바이스 (24) 를 좀더 자세하게 예시하는 블록도이다. 도 4 의 예에 나타낸 바와 같이, 오디오 디코딩 디바이스 (24) 는 추출 유닛 (72), 방향성-기반 복원 유닛 (90) 및 벡터-기반 복원 유닛 (92) 을 포함할 수도 있다. 아래에서 설명되지만, 오디오 디코딩 디바이스 (24) 및 HOA 계수들을 분해하거나 또는 아니면 디코딩하는 여러 양태들에 관한 더 많은 정보는 "INTERPOLATION FOR DECOMPOSED REPRESENTATIONS OF A SOUND FIELD"란 발명의 명칭으로, 2014년 5월 29일에 출원된 국제 특허 출원 공개 번호 제 WO 2014/194099호에서 입수가능하다.
추출 유닛 (72) 은 비트스트림 (21) 을 수신하여 HOA 계수들 (11) 의 여러 인코딩된 버전들 (예컨대, 방향-기반 인코딩된 버전 또는 벡터-기반의 인코딩된 버전) 을 추출하도록 구성된 유닛을 나타낼 수도 있다. 추출 유닛 (72) 은 HOA 계수들 (11) 이 여러 방향-기반의 또는 벡터-기반의 버전들을 통해서 인코딩되었는지 여부를 표시하는 위에서 언급된 신택스 엘리먼트로부터 결정할 수도 있다. 방향-기반 인코딩이 수행되었을 때, 추출 유닛 (72) 은 HOA 계수들 (11) 의 방향-기반 버전 및 (도 4 의 예에서 방향-기반 정보 (91) 로서 표시된) 인코딩된 버전과 연관된 신택스 엘리먼트들을 추출하여, 방향 기반의 정보 (91) 를 방향-기반 복원 유닛 (90) 으로 전달할 수도 있다. 방향-기반 복원 유닛 (90) 은 방향-기반 정보 (91) 에 기초하여 HOA 계수들을 HOA 계수들 (11') 의 유형으로 복원하도록 구성된 유닛을 나타낼 수도 있다. 비트스트림 및 비트스트림 내 신택스 엘리먼트들의 배열이 도 7a 내지 도 7j 의 예에 대해 아래에서 좀더 자세히 설명된다.
HOA 계수들 (11) 이 벡터-기반 합성을 이용하여 인코딩되었다고 신택스 엘리먼트가 표시할 때, 추출 유닛 (72) 은 (코딩된 가중치들 (57) 및/또는 인덱스들 (63) 또는 스칼라 양자화된 V-벡터들을 포함할 수도 있는) 코딩된 포그라운드 V[k] 벡터들 (57), 인코딩된 주변 HOA 계수들 (59) 및 (인코딩된 nFG 신호들 (61) 로서 또한 지칭될 수도 있는) 대응하는 오디오 오브젝트들 (61) 을 추출할 수도 있다. 오디오 오브젝트들 (61) 은 각각 벡터들 (57) 중 하나에 대응한다. 추출 유닛 (72) 은 코딩된 포그라운드 V[k] 벡터들 (57) 을 V-벡터 복원 유닛 (74) 으로, 그리고 인코딩된 주변 HOA 계수들 (59) 을 인코딩된 nFG 신호들 (61) 과 함께 음향심리 디코딩 유닛 (80) 으로 전달할 수도 있다.
코딩된 포그라운드 V[k] 벡터들 (57) 을 추출하기 위해, 추출 유닛 (72) 은 다음 ChannelSideInfoData (CSID) 신택스 테이블에 따라서 신택스 엘리먼트들을 추출할 수도 있다.
테이블 - ChannelSideInfoData(i) 의 신택스
Figure 112016082128710-pct00134
상기 테이블에 대한 의미들은 다음과 같다.
이 페이로드는 i-번째 채널에 대한 부수 정보를 유지한다. 페이로드의 사이즈 및 데이터는 채널의 유형에 의존한다.
ChannelType [i] 이 엘리먼트는 테이블 (95) 에 정의되는 i-번째 채널의 유형을 저장한다.
ActiveDirsIds [i] 이 엘리먼트는 부속서 F.7 로부터의 900 개의 미리 정의된, 균일하게 분포된 지점들의 인덱스를 이용하여 활성 방향 신호의 방향을 나타낸다. 코드 워드 0 은 방향 신호의 끝을 시그널링하는데 사용된다.
PFlag [i] i-번째 채널의 벡터-기반의 신호와 연관된 [[스칼라-양자화된 V-벡터의 Huffman 디코딩에 사용되는]] (이중 브라켓 [[ ]] 은 그 안의 내용이 삭제된 것임을 나타낸다) 예측 플래그.
CbFlag [i] i-번째 채널의 벡터-기반의 신호와 연관된 스칼라-양자화된 V-벡터의 Huffman 디코딩에 사용되는 코드북 플래그.
CodebkIdx [i] i-번째 채널의 벡터-기반의 신호와 연관된 벡터-양자화된 V-벡터를 역양자화하는데 사용되는 특정의 코드북을 시그널링한다 .
NbitsQ [i] 이 인덱스는 i-번째 채널의 벡터-기반의 신호와 연관된 데이터의 Huffman 디코딩에 사용되는 Huffman 테이블을 결정한다. 코드 워드 5 는 균일한 8비트 역양자화기의 사용을 결정한다. 2개의 MSB들 00 은 이전 프레임 (k-1) 의 NbitsQ[i], PFlag[i] 및 CbFlag[i] 데이터를 재사용하는 것을 결정한다.
bA , bB NbitsQ[i] 필드의 msb (bA) 및 제 2 msb (bB).
uintC NbitsQ[i] 필드의 나머지 2 비트들의 코드 워드.
NumVecIndices 벡터-양자화된 V 벡터를 역양자화하는데 사용되는 벡터들의 개수.
AddAmbHoaInfoChannel (i) 이 페이로드는 추가적인 주변 HOA 계수들에 대한 정보를 유지한다.
CSID 신택스 테이블에 따라서, 추출 유닛 (72) 은 채널의 유형을 표시하는 ChannelType 신택스 엘리먼트를 먼저 획득할 수도 있다 (예컨대, 여기서, 제로의 값은 방향-기반의 신호를 시그널링하고, 1 의 값은 벡터-기반의 신호를 시그널링하고, 2 의 값은 추가적인 주변 HOA 신호를 시그널링한다). ChannelType 신택스 엘리먼트에 기초하여, 추출 유닛 (72) 은 3개의 경우들 사이에 스위칭할 수도 있다.
본 개시물에서 설명하는 기법들의 일 예를 예시하기 위해 케이스 1 에 집중하면, 추출 유닛 (72) 은 NbitsQ 신택스 엘리먼트 (즉, 상기 예시적인 CSID 신택스 테이블에서의 bA 신택스 엘리먼트) 의 최상위 비트 및 NbitsQ 신택스 엘리먼트 (즉, 상기 예시적인 CSID 신택스 테이블에서의 bB 신택스 엘리먼트) 의 제 2 최상위 비트를 획득할 수도 있다. NbitsQ(k)[i] 의 (k)[i] 는 NbitsQ 신택스 엘리먼트가 i 번째 전송 채널의 k 번째 프레임에 대해 획득된다는 것을 표시할 수도 있다. NbitsQ 신택스 엘리먼트는 HOA 계수들 (11) 에 의해 표시되는 음장의 공간 구성요소를 양자화하는데 사용되는 양자화 모드를 표시하는 하나 이상의 비트들을 표시할 수도 있다. 공간 구성요소는 또한 본 개시물에서 V-벡터로서 또는 코딩된 포그라운드 V[k] 벡터들 (57) 로서 지칭될 수도 있다.
상기 예시적인 CSID 신택스 테이블에서, NbitsQ 신택스 엘리먼트는 (NbitsQ 신택스 엘리먼트에 대해 제로 내지 3 의 값이 예약되거나 또는 미사용됨에 따라), 대응하는 VVecData 필드에 규정된 벡터를 압축하는데 사용되는 12 개의 양자화 모드들 중 하나를 표시하기 위해 4 비트를 포함할 수도 있다. 12 개의 양자화 모드들은 아래에 나타낸 다음을 포함한다:
0-3: 예약됨
4: 벡터 양자화
5: Huffman 코딩에 의하지 않은 스칼라 양자화
6: Huffman 코딩에 의한 6-비트 스칼라 양자화
7: Huffman 코딩에 의한 7-비트 스칼라 양자화
8: Huffman 코딩에 의한 8-비트 스칼라 양자화
… …
16: Huffman 코딩에 의한 16-비트 스칼라 양자화
위에서, 6-16 의 NbitsQ 신택스 엘리먼트의 값은, 스칼라 양자화뿐만 아니라, 스칼라 양자화의 양자화 스텝 사이즈가 Huffman 코딩으로 수행된다는 것을 표시한다. 이 점에서, 양자화 모드는 벡터 양자화 모드, Huffman 코딩에 의하지 않은 스칼라 양자화 모드 및 Huffman 코딩에 의한 스칼라 양자화 모드를 포함할 수도 있다.
상기 예시적인 CSID 신택스 테이블을 다시 참조하면, 추출 유닛 (72) 은 bA 신택스 엘리먼트를 bB 신택스 엘리먼트와 결합할 수도 있으며, 여기서, 이 조합은 상기 예시적인 CSID 신택스 테이블에 나타낸 바와 같이 가산 (추가) 일 수도 있다. 결합된 bA/bB 신택스 엘리먼트는 벡터를 압축하는데 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자를 나타낼 수도 있다. 추출 유닛 (72) 은 다음으로 그 결합된 bA/bB 신택스 엘리먼트를 제로의 값과 비교한다. 결합된 bA/bB 신택스 엘리먼트가 제로의 값을 가질 때, 추출 유닛 (72) 은 i 번째 전송 채널의 현재의 k 번째 프레임에 대한 양자화 모드 정보 (즉, 상기 예시적인 CSID 신택스 테이블에서의 양자화 모드를 표시하는 NbitsQ 신택스 엘리먼트) 가 i 번째 전송 채널의 k-1 번째 프레임의 양자화 모드 정보와 동일하다고 결정할 수도 있다. 다시 말해서, 표시자는, 제로 값으로 설정될 때, 이전 프레임으로부터의 적어도 하나의 신택스 엘리먼트를 재사용하는 것을 표시한다.
추출 유닛 (72) 은 유사하게, i 번째 전송 채널의 현재의 k 번째 프레임에 대한 예측 정보 (즉, 이 예에서 예측이 벡터 양자화 또는 스칼라 양자화 동안 수행되는지 여부를 표시하는 PFlag 신택스 엘리먼트) 가 i 번째 전송 채널의 k-1 번째 프레임의 예측 정보와 동일하다고 결정한다. 추출 유닛 (72) 은 또한 i 번째 전송 채널의 현재의 k 번째 프레임에 대한 Huffman 코드북 정보 (즉, V-벡터를 복원하는데 사용되는 Huffman 코드북을 표시하는 CbFlag 신택스 엘리먼트) 가 i 번째 전송 채널의 k-1 번째 프레임의 Huffman 코드북 정보와 동일하다고 결정할 수도 있다. 추출 유닛 (72) 은 또한 i 번째 전송 채널의 현재의 k 번째 프레임에 대한 벡터 양자화 정보 (즉, V-벡터를 복원하는데 사용되는 벡터 양자화 코드북을 표시하는 CodebkIdx 신택스 엘리먼트 및 V-벡터를 복원하는데 사용되는 코드 벡터들의 개수를 표시하는 NumVecIndices 신택스 엘리먼트) 가 i 번째 전송 채널의 k-1 번째 프레임의 벡터 양자화 정보와 동일하다고 결정할 수도 있다.
결합된 bA/bB 신택스 엘리먼트가 제로의 값을 가지지 않을 때, 추출 유닛 (72) 은 i 번째 전송 채널의 k 번째 프레임에 대한 양자화 모드 정보, 예측 정보, Huffman 코드북 정보 및 벡터 양자화 정보가 i 번째 전송 채널의 k-1 번째 프레임의 것들과 동일하지 않다고 결정할 수도 있다. 그 결과, 추출 유닛 (72) 은 NbitsQ 신택스 엘리먼트 (즉, 상기 예시적인 CSID 신택스 테이블에서의 uintC 신택스 엘리먼트) 의 최하위 비트들을 획득하고, bA, bB 및 uintC 신택스 엘리먼트를 결합하여 NbitsQ 신택스 엘리먼트를 획득할 수도 있다. 이 NbitsQ 신택스 엘리먼트에 기초하여, 추출 유닛 (72) 은, NbitsQ 신택스 엘리먼트가 벡터 양자화, PFlag, CodebkIdx, 및 NumVecIndices 신택스 엘리먼트들을 시그널링하는 시점, 또는, NbitsQ 신택스 엘리먼트가 Huffman 코딩에 의한 스칼라 양자화, PFlag 및 CbFlag 신택스 엘리먼트들을 시그널링하는 시점을 획득할 수도 있다. 이러한 방법으로, 추출 유닛 (72) 은 V-벡터를 복원하는데 사용되는 전술한 신택스 엘리먼트들을 추출하여, 이들 신택스 엘리먼트들을 벡터-기반 복원 유닛 (72) 으로 파싱할 수도 있다.
추출 유닛 (72) 은 다음으로, i 번째 전송 채널의 k 번째 프레임으로부터 V-벡터를 추출할 수도 있다. 추출 유닛 (72) 은 CodedVVecLength 로 표시되는 신택스 엘리먼트를 포함하는 HOADecoderConfig 컨테이너를 획득할 수도 있다. 추출 유닛 (72) 은 HOADecoderConfig 컨테이너로부터 CodedVVecLength 를 파싱할 수도 있다. 추출 유닛 (72) 은 다음 VVecData 신택스 테이블에 따라서 V-벡터를 획득할 수도 있다.
Figure 112016082128710-pct00135
Figure 112016082128710-pct00136
VVec(k)[i] 이것은 i-번째 채널에 대해 k-번째 HOAframe() 에 대한 V 벡터이다.
VVecLength 이 변수는 읽어낼 벡터 엘리먼트들의 개수를 표시한다.
VVecCoeffId 이 벡터는 송신된 V 벡터 계수들의 인덱스들을 포함한다.
VecVal 0 과 255 사이의 정수 값.
aVal VVectorData 의 디코딩 동안 사용되는 임시의 변수.
huffVal Huffman-디코딩될, Huffman 코드 워드.
SgnVal 이것은 디코딩 동안 사용되는 코딩된 부호 값이다.
intAddVal 이것은 디코딩 동안 사용되는 추가적인 정수 값이다.
NumVecIndices 벡터-양자화된 V 벡터를 역양자화하는데 사용되는 벡터들의 개수.
WeightIdx 벡터-양자화된 V 벡터를 역양자화하는데 사용되는 WeightValCdbk 에서의 인덱스.
nBitsW 벡터-양자화된 V 벡터를 디코딩하기 위해 WeightIdx 를 판독하기 위한 필드 사이즈.
WeightValCbk 양의 실수 값의 가중 계수들의 벡터를 포함하는 Huffman 코드 워드. 단지 NumVecIndices 가 > 1 이면 필요하다. 256 개의 엔트리들을 가지는 WeightValCdbk 가 제공된다.
WeightValPredCdbk 예측 가중 계수들의 벡터를 포함하는 코드북. 단지 NumVecIndices 가 > 1 이면 필요하다. 256 개의 엔트리들을 가지는 WeightValPredCdbk 가 제공된다.
WeightValAlpha V-벡터 양자화의 예측 코딩 모드에 대해 사용되는 예측 코딩 계수들.
VvecIdx 벡터-양자화된 V 벡터를 역양자화하는데 사용되는, VecDict 에 대한 인덱스.
nbitsIdx 벡터-양자화된 V 벡터를 디코딩하기 위해 VvecIdx 를 판독하기 위한 필드 사이즈.
WeightVal 벡터-양자화된 V 벡터를 디코딩하기 위한 실수 값의 가중 계수.
전술한 신택스 테이블에서, 추출 유닛 (72) 은 NbitsQ 신택스 엘리먼트의 값이 4 와 동일한 (또는, 즉, 벡터 역양자화가 V-벡터를 복원하는데 사용된다는 것을 시그널링하는) 지 여부를 결정할 수도 있다. NbitsQ 신택스 엘리먼트의 값이 4 와 동일할 때, 추출 유닛 (72) 은 NumVecIndices 신택스 엘리먼트의 값을 1 의 값과 비교할 수도 있다. NumVecIndices 의 값이 1 과 동일할 때, 추출 유닛 (72) 은 VecIdx 신택스 엘리먼트를 획득할 수도 있다. VecIdx 신택스 엘리먼트는 벡터 양자화된 V-벡터를 역양자화하는데 사용되는 VecDict 에 대한 인덱스를 표시하는 하나 이상의 비트들을 나타낼 수도 있다. 추출 유닛 (72) 은 제로-번째 엘리먼트가 VecIdx 신택스 엘리먼트의 값 플러스 1 로 설정된 상태에서, VecIdx 어레이를 인스턴스화할 수도 있다. 추출 유닛 (72) 은 또한 SgnVal 신택스 엘리먼트를 획득할 수도 있다. SgnVal 신택스 엘리먼트는 V-벡터의 디코딩 동안 사용되는 코딩된 부호 값을 표시하는 하나 이상의 비트들을 나타낼 수도 있다. 추출 유닛 (72) 은 WeightVal 어레이를 인스턴스화하고, 제로-번째 엘리먼트를 SgnVal 신택스 엘리먼트의 값의 함수로서 설정할 수도 있다.
NumVecIndices 신택스 엘리먼트의 값이 1 의 값과 동일하지 않을 때, 추출 유닛 (72) 은 WeightIdx 신택스 엘리먼트를 획득할 수도 있다. WeightIdx 신택스 엘리먼트는 벡터 양자화된 V-벡터를 역양자화하는데 사용되는 WeightValCdbk 어레이에서의 인덱스를 표시하는 하나 이상의 비트들을 나타낼 수도 있다. WeightValCdbk 어레이는 양의 실수 값의 가중 계수들의 벡터를 포함하는 코드북을 나타낼 수도 있다. 추출 유닛 (72) 은 다음으로, nbitsIdx 를 HOAConfig 컨테이너에 규정된 (일 예로서 비트스트림 (21) 의 시작부분에 규정된) NumOfHoaCoeffs 신택스 엘리먼트의 함수로서 결정할 수도 있다. 추출 유닛 (72) 은 그후 NumVecIndices 를 통해서 반복하여 비트스트림 (21) 으로부터 VecIdx 신택스 엘리먼트를 획득하고, 각각의 획득된 VecIdx 신택스 엘리먼트로 VecIdx 어레이 엘리먼트들을 설정할 수도 있다.
추출 유닛 (72) 은 비트스트림 (21) 으로부터의 신택스 엘리먼트들의 추출과 비관련되는 tmpWeightVal 변수 값들을 결정하는 것을 포함하는, 다음 PFlag 신택스 비교를 수행하지 않는다. 이와 같이, 추출 유닛 (72) 은 다음으로, WeightVal 신택스 엘리먼트를 결정하는데 사용하기 위한 SgnVal 신택스 엘리먼트를 획득할 수도 있다.
NbitsQ 신택스 엘리먼트의 값이 (Huffman 디코딩에 의하지 않는 스칼라 역양자화가 V-벡터를 복원하는데 사용된다는 것을 시그널링하는) 5 와 동일할 때, 추출 유닛 (72) 은 0 으로부터 VVecLength 까지 반복하여, aVal 변수를 비트스트림 (21) 으로부터 획득된 VecVal 신택스 엘리먼트로 설정한다. VecVal 신택스 엘리먼트는 0 과 255 사이의 정수를 표시하는 하나 이상의 비트들을 나타낼 수도 있다.
NbitsQ 신택스 엘리먼트의 값이 (Huffman 디코딩에 의한 NbitsQ-비트 스칼라 역양자화가 V-벡터를 복원하는데 사용된다는 것을 시그널링하는) 6 이상일 때, 추출 유닛 (72) 은 0 으로부터 VVecLength 까지 반복하여, huffVal, SgnVal, 및 intAddVal 신택스 엘리먼트들 중 하나 이상을 획득한다. huffVal 신택스 엘리먼트는 Huffman 코드 워드를 표시하는 하나 이상의 비트들을 나타낼 수도 있다. intAddVal 신택스 엘리먼트는 디코딩 동안 사용되는 추가적인 정수 값들을 표시하는 하나 이상의 비트들을 나타낼 수도 있다. 추출 유닛 (72) 은 이들 신택스 엘리먼트들을 벡터-기반 복원 유닛 (92) 에 제공할 수도 있다.
벡터-기반 복원 유닛 (92) 은 HOA 계수들 (11') 을 복원하기 위해, 벡터-기반의 합성 유닛 (27) 에 대해 위에서 설명된 동작들과는 반대인 동작을 수행하도록 구성된 유닛을 나타낼 수도 있다. 벡터 기반의 복원 유닛 (92) 은 V-벡터 복원 유닛 (74), 시공간적 내삽 유닛 (76), 포그라운드 포뮬레이션 유닛 (78), 음향심리 디코딩 유닛 (80), HOA 계수 포뮬레이션 유닛 (82), 페이드 유닛 (770), 및 재정리 유닛 (84) 을 포함할 수도 있다. 페이드 유닛 (770) 의 파선들은 페이드 유닛 (770) 이 벡터-기반 복원 유닛 (92) 에 포함되는 관점에서, 옵션적인 유닛일 수도 있다는 것을 표시한다.
V-벡터 복원 유닛 (74) 은 인코딩된 포그라운드 V[k] 벡터들 (57) 로부터 V-벡터들을 복원하도록 구성된 유닛을 나타낼 수도 있다. V-벡터 복원 유닛 (74) 은 양자화 유닛 (52) 의 방법과는 반대인 방법으로 동작할 수도 있다.
V-벡터 복원 유닛 (74) 은, 즉, V-벡터들을 복원하기 위해 다음 의사 코드에 따라서 동작할 수도 있다:
Figure 112016082128710-pct00137
Figure 112016082128710-pct00138
상기 의사 코드에 따라서, V-벡터 복원 유닛 (74) 은 i 번째 전송 채널의 k 번째 프레임에 대한 NbitsQ 신택스 엘리먼트를 획득할 수도 있다. NbitsQ 신택스 엘리먼트가 (또한, 벡터 양자화가 수행되었다는 것을 시그널링하는) 4 와 동일할 때, V-벡터 복원 유닛 (74) 은 NumVecIndicies 신택스 엘리먼트를 1 과 비교할 수도 있다. NumVecIndicies 신택스 엘리먼트는, 위에서 설명한 바와 같이, 벡터-양자화된 V-벡터를 역양자화하는데 사용되는 벡터들의 개수를 표시하는 하나 이상의 비트들을 나타낼 수도 있다. NumVecIndicies 신택스 엘리먼트의 값이 1 과 동일할 때, V-벡터 복원 유닛 (74) 은 그후 제로로부터 VVecLength 신택스 엘리먼트의 값까지 반복하여, idx 변수를 VVecCoeffId 로, 그리고 VVecCoeffId 번째 V-벡터 엘리먼트
Figure 112016082128710-pct00139
를 [900] [VecIdx[0]][idx] 로 식별되는 VecDict 엔트리로 곱한 WeightVal 로 설정할 수도 있다. 다시 말해서, NumVvecIndicies 의 값이 1 과 동일할 때, 벡터 코드북 HOA 확장 계수들은 테이블 F.11 에 나타낸 8x1 가중값들의 코드북과 연계하여, 테이블 F.8 로부터 유도된다.
NumVecIndicies 신택스 엘리먼트의 값이 1 과 동일하지 않을 때, V-벡터 복원 유닛 (74) 은 cdbLen 변수를, 벡터들의 개수를 표시하는 변수인 O 로 설정할 수도 있다. cdbLen 신택스 엘리먼트는 코드 벡터들의 사전 또는 코드북에서 엔트리들의 개수를 표시한다 (여기서, 이 사전은 전술한 의사 코드에서 "VecDict" 로서 표시되며, 벡터 양자화된 V-벡터를 디코딩하는데 사용되는, HOA 확장 계수들의 벡터들을 포함하는 cdbLen 코드북 엔트리들을 가지는 코드북을 나타낸다). HOA 계수들 (11) 의 ("N" 으로 표시된) 차수가 4 와 동일할 때, V-벡터 복원 유닛 (74) 은 cdbLen 변수를 32 로 설정할 수도 있다. V-벡터 복원 유닛 (74) 은 다음으로, 제로로부터 O 까지 반복하여, TmpVVec 어레이를 제로로 설정할 수도 있다. 이 반복들 동안, v-벡터 복원 유닛 (74) 은 또한, 제로로부터 NumVecIndecies 신택스 엘리먼트의 값까지 반복하여, TempVVec 어레이의 m 번째 엔트리를 VecDict 의 [cdbLen][VecIdx[j]][m] 엔트리로 곱한 j 번째 WeightVal 과 동일하게 설정할 수도 있다.
V-벡터 복원 유닛 (74) 은 다음 의사 코드에 따라서 WeightVal 을 유도할 수도 있다:
Figure 112016082128710-pct00140
전술한 의사 코드에서, V-벡터 복원 유닛 (74) 은 제로로부터 NumVecIndices 신택스 엘리먼트의 값까지 반복하여, PFlag 신택스 엘리먼트의 값이 제로와 동일한지 여부를 먼저 결정할 수도 있다. PFlag 신택스 엘리먼트가 제로와 동일할 때, V-벡터 복원 유닛 (74) 은 tmpWeightVal 변수를 결정하여, tmpWeightVal 변수를 WeightValCdbk 코드북의 [CodebkIdx][WeightIdx] 엔트리와 동일하게 설정할 수도 있다. PFlag 신택스 엘리먼트의 값이 제로와 동일하지 않을 때, V-벡터 복원 유닛 (74) 은 tmpWeightVal 변수를, WeightValPredCdbk 코드북의 [CodebkIdx][WeightIdx] 엔트리 플러스 i 번째 전송 채널의 k-1 번째 프레임의 tempWeightVal 로 곱한 WeightValAlpha 변수와 동일하게 설정할 수도 있다. WeightValAlpha 변수는 오디오 인코딩 및 디코딩 디바이스들 (20 및 24) 에서 정적으로 정의될 수도 있는, 위에서 언급된 알파 값을 지칭할 수도 있다. V-벡터 복원 유닛 (74) 은 그후 WeightVal 를 추출 유닛 (72) 에 의해 획득된 SgnVal 신택스 엘리먼트 및 tmpWeightVal 변수의 함수로서 획득할 수도 있다.
V-벡터 복원 유닛 (74) 은 즉, 가중 값 코드북 (비-예측된 벡터 양자화에 대해 "WeightValCdbk" 로서 그리고 예측된 벡터 양자화에 대해 "WeightValPredCdbk" 로서 표시되며, 이 양쪽은 (전술한 VVectorData(i) 신택스 테이블에서 "CodebkIdx" 신택스 엘리먼트로 표시된) 코드북 인덱스 및 (전술한 VVectorData(i) 신택스 테이블에서 "WeightIdx" 신택스 엘리먼트로 표시된) 가중 인덱스 중 하나 이상에 기초하여 인덱싱된 다차원의 테이블을 나타낼 수도 있다) 에 기초하여, V-벡터를 복원하는데 사용되는 각각의 대응하는 코드 벡터에 대한 가중 값을 유도할 수도 있다. 이 CodebkIdx 신택스 엘리먼트는 아래 ChannelSideInfoData(i) 신택스 테이블에서 나타낸 바와 같이, 부 채널 정보의 부분에 정의될 수도 있다.
상기 의사 코드의 나머지 벡터 양자화 부분은, V-벡터의 엘리먼트들을 정규화하기 위한 FNorm 의 계산, 및 뒤이어서, FNorm 로 곱한 TmpVVec[idx] 와 동일한 V-벡터 엘리먼트
Figure 112016082128710-pct00141
의 계산에 관한 것이다. V-벡터 복원 유닛 (74) 은 idx 변수를 VVecCoeffID 의 함수로서 획득할 수도 있다.
NbitsQ 가 5 와 동일할 때, 균일한 8 비트 스칼라 역양자화가 수행된다. 이에 반해, 6 이상의 NbitsQ 값은 Huffman 디코딩의 적용을 초래할 수도 있다. 위에서 언급된 cid 값은 NbitsQ 값의 2개의 최하위 비트들과 동일할 수도 있다. 예측 모드는 상기 신택스 테이블에 PFlag 로서 표시되며, 한편 Huffman 테이블 정보 비트는 상기 신택스 테이블에 CbFlag 로 표시된다. 나머지 신택스는 어떻게 디코딩이 위에서 설명된 방법과 실질적으로 유사한 방법으로 발생하는지를 규정한다.
음향심리 디코딩 유닛 (80) 은 인코딩된 주변 HOA 계수들 (59) 및 인코딩된 nFG 신호들 (61) 을 디코딩하여 에너지 보상된 주변 HOA 계수들 (47') 및 (내삽된 nFG 오디오 오브젝트들 (49') 로서 또한 지칭될 수도 있는) 내삽된 nFG 신호들 (49') 을 발생시키기 위해 도 3 의 예에 나타낸 음향심리 오디오 코더 유닛 (40) 과 반대인 방법으로 동작할 수도 있다. 음향심리 디코딩 유닛 (80) 은 에너지 보상된 주변 HOA 계수들 (47') 을 페이드 유닛 (770) 으로, 그리고 nFG 신호들 (49') 을 포그라운드 포뮬레이션 유닛 (78) 으로 전달할 수도 있다.
시공간적 내삽 유닛 (76) 은 시공간적 내삽 유닛 (50) 에 대해 위에서 설명한 방법과 유사한 방법으로 동작할 수도 있다. 시공간적 내삽 유닛 (76) 은 감소된 포그라운드 V[k] 벡터들 (55k) 을 수신하고 포그라운드 V[k] 벡터들 (55k) 및 감소된 포그라운드 V[k-1] 벡터들 (55k-1) 에 대해 시공간적 내삽을 수행하여 내삽된 포그라운드 V[k] 벡터들 (55k'') 을 발생시킬 수도 있다. 시공간적 내삽 유닛 (76) 은 내삽된 포그라운드 V[k] 벡터들 (55k'') 을 페이드 유닛 (770) 으로 포워딩할 수도 있다.
추출 유닛 (72) 은 또한 주변 HOA 계수들 중 하나가 전이 중인 시점을 나타내는 신호 (757) 를 페이드 유닛 (770) 으로 출력할 수도 있으며, 그 페이드 유닛은 그후 SHCBG (47') (여기서, SHCBG (47') 는 또한 "주변 HOA 채널들 (47')" 또는 "주변 HOA 계수들 (47')" 로서 표시될 수도 있다) 및 내삽된 포그라운드 V[k] 벡터들 (55k'') 의 엘리먼트들 중 어느 것이 페이드-인되거나 또는 페이드-아웃되는지를 결정할 수도 있다. 일부 예들에서, 페이드 유닛 (770) 은 주변 HOA 계수들 (47') 및 내삽된 포그라운드 V[k] 벡터들 (55k'') 의 엘리먼트들의 각각에 대해 반대로 동작할 수도 있다. 즉, 페이드 유닛 (770) 은 주변 HOA 계수들 (47') 의 대응하는 하나에 대해 페이드-인 또는 페이드-아웃, 또는 페이드-인 또는 페이드-아웃 양쪽을 수행할 수도 있지만, 내삽된 포그라운드 V[k] 벡터들 (55k'') 의 엘리먼트들의 대응하는 하나에 대해 페이드-인 또는 페이드-아웃 또는 페이드-인 및 페이드-아웃 양쪽을 수행할 수도 있다. 페이드 유닛 (770) 은 조정된 주변 HOA 계수들 (47'') 을 HOA 계수 포뮬레이션 유닛 (82) 으로, 그리고, 조정된 포그라운드 V[k] 벡터들 (55k''') 을 포그라운드 포뮬레이션 유닛 (78) 으로 출력할 수도 있다. 이 점에서, 페이드 유닛 (770) 은 예컨대, 주변 HOA 계수들 (47') 및 내삽된 포그라운드 V[k] 벡터들 (55k'') 의 엘리먼트들의 유형인, HOA 계수들 또는 그의 유도체들의 여러 양태들에 대해 페이드 동작을 수행하도록 구성된 유닛을 나타낸다.
포그라운드 포뮬레이션 유닛 (78) 은 포그라운드 HOA 계수들 (65) 을 발생시키기 위해 조정된 포그라운드 V[k] 벡터들 (55k''') 및 내삽된 nFG 신호들 (49') 에 대해 매트릭스 곱셈을 수행하도록 구성된 유닛을 나타낼 수도 있다. 이 점에서, 포그라운드 포뮬레이션 유닛 (78) 은 (내삽된 nFG 신호들 (49') 을 표시하는 다른 방식인) 오디오 오브젝트들 (49') 을 벡터들 (55k''') 과 결합하여, HOA 계수들 (11') 의 포그라운드 또는, 즉, 지배적인 양태들을 복원할 수도 있다. 포그라운드 포뮬레이션 유닛 (78) 은 조정된 포그라운드 V[k] 벡터들 (55k''') 에 의한 내삽된 nFG 신호들 (49') 의 매트릭스 곱셈을 수행할 수도 있다.
HOA 계수 포뮬레이션 유닛 (82) 은 HOA 계수들 (11') 을 획득하기 위해 포그라운드 HOA 계수들 (65) 을 조정된 주변 HOA 계수들 (47'') 에 결합하도록 구성된 유닛을 나타낼 수도 있다. 프라임 표기는 HOA 계수들 (11') 이 HOA 계수들 (11) 과 유사하지만 동일하지 않을 수도 있다는 것을 반영한다. HOA 계수들 (11 및 11') 사이의 차이들은 손실되는 전송 매체, 양자화 또는 다른 손실되는 동작들을 통한 송신으로 인해 손실을 초래할 수도 있다.
도 5a 는 본 개시물에서 설명되는 벡터-기반 합성 기법들의 여러 양태들을 수행할 때에, 도 3 의 예에 나타낸 오디오 인코딩 디바이스 (20) 와 같은, 오디오 인코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다. 먼저, 오디오 인코딩 디바이스 (20) 는 HOA 계수들 (11) 을 수신한다 (106). 오디오 인코딩 디바이스 (20) 는 LIT 유닛 (30) 을 호출할 수도 있으며, 그 LIT 유닛은 HOA 계수들에 대해 LIT 를 적용하여 변환된 HOA 계수들을 출력할 수도 있다 (예컨대, SVD 의 경우, 변환된 HOA 계수들은 US[k] 벡터들 (33) 및 V[k] 벡터들 (35) 을 포함할 수도 있다) (107).
오디오 인코딩 디바이스 (20) 는 다음으로, US[k] 벡터들 (33), US[k-1] 벡터들 (33), V[k] 및/또는 V[k-1] 벡터들 (35) 의 임의의 조합에 대해 상기 설명된 분석을 수행하여 여러 파라미터들을 위에서 설명된 방법으로 식별하기 위해 파라미터 계산 유닛 (32) 을 호출할 수도 있다. 즉, 파라미터 계산 유닛 (32) 은 변환된 HOA 계수들 (33/35) 의 분석에 기초하여 적어도 하나의 파라미터를 결정할 수도 있다 (108).
오디오 인코딩 디바이스 (20) 는 그후 재정리 유닛 (34) 을 호출할 수도 있으며, 그 재정리 유닛은 위에서 설명한 바와 같이, 파라미터에 기초하여 (또한, SVD 의 상황에서, US[k] 벡터들 (33) 및 V[k] 벡터들 (35) 을 지칭할 수도 있는) 변환된 HOA 계수들을 재정리하여, 재정리된 변환된 HOA 계수들 (33'/35') (또는, 즉, US[k] 벡터들 (33') 및 V[k] 벡터들 (35')) 을 발생시킬 수도 있다 (109). 오디오 인코딩 디바이스 (20) 는 전술한 동작들 또는 후속 동작들 중 임의의 동작 동안, 음장 분석 유닛 (44) 을 또한 호출할 수도 있다. 음장 분석 유닛 (44) 은 위에서 설명한 바와 같이, HOA 계수들 (11) 및/또는 변환된 HOA 계수들 (33/35) 에 대해서 음장 분석을 수행하여, (도 3 의 예에서 백그라운드 채널 정보 (43) 로서 일괄하여 표시될 수도 있는) 전송할 포그라운드 채널들의 총 개수 (nFG) (45), 백그라운드 음장의 차수 (NBG) 및 추가적인 BG HOA 채널들의 개수 (nBGa) 및 인덱스들 (i) 를 결정할 수도 있다 (109).
오디오 인코딩 디바이스 (20) 는 또한 백그라운드 선택 유닛 (48) 을 호출할 수도 있다. 백그라운드 선택 유닛 (48) 은 백그라운드 채널 정보 (43) 에 기초하여 백그라운드 또는 주변 HOA 계수들 (47) 을 결정할 수도 있다 (110). 오디오 인코딩 디바이스 (20) 는 포그라운드 선택 유닛 (36) 을 추가로 호출할 수도 있으며, 이 포그라운드 선택 유닛은 음장의 포그라운드 또는 특유한 구성요소들을 나타내는 재정리된 US[k] 벡터들 (33') 및 재정리된 V[k] 벡터들 (35') 을 (포그라운드 벡터들을 식별하는 하나 이상의 인덱스들을 나타낼 수도 있는) nFG (45) 에 기초하여 선택할 수도 있다 (112).
오디오 인코딩 디바이스 (20) 는 에너지 보상 유닛 (38) 을 호출할 수도 있다. 에너지 보상 유닛 (38) 은 주변 HOA 계수들 (47) 에 대해 에너지 보상을 수행하여, 백그라운드 선택 유닛 (48) 에 의한 HOA 계수들의 여러 HOA 계수들의 제거로 인한 에너지 손실을 보상하고 (114), 이에 따라서 에너지 보상된 주변 HOA 계수들 (47') 을 발생시킬 수도 있다.
오디오 인코딩 디바이스 (20) 는 또한 시공간적 내삽 유닛 (50) 을 호출할 수도 있다. 시공간적 내삽 유닛 (50) 은 재정리된 변환된 HOA 계수들 (33'/35') 에 대해 시공간적 내삽을 수행하여 ("내삽된 nFG 신호들 (49')" 로서 또한 지칭될 수도 있는) 내삽된 포그라운드 신호들 (49') 및 ("V[k] 벡터들 (53)" 로서 또한 지칭될 수도 있는) 나머지 포그라운드 방향 정보 (53) 를 획득할 수도 있다 (116). 오디오 인코딩 디바이스 (20) 는 그후 계수 감소 유닛 (46) 을 호출할 수도 있다. 계수 감소 유닛 (46) 은 백그라운드 채널 정보 (43) 에 기초하여 나머지 포그라운드 V[k] 벡터들 (53) 에 대해 계수 감소를 수행하여, (감소된 포그라운드 V[k] 벡터들 (55) 로서 또한 지칭될 수도 있는) 감소된 포그라운드 방향 정보 (55) 를 획득할 수도 있다 (118).
오디오 인코딩 디바이스 (20) 는 그후 양자화 유닛 (52) 을 호출하여, 위에서 설명된 방법으로, 감소된 포그라운드 V[k] 벡터들 (55) 을 압축하여, 코딩된 포그라운드 V[k] 벡터들 (57) 을 발생시킬 수도 있다 (120).
오디오 인코딩 디바이스 (20) 는 또한 음향심리 오디오 코더 유닛 (40) 을 호출할 수도 있다. 음향심리 오디오 코더 유닛 (40) 은 내삽된 nFG 신호들 (49') 및 에너지 보상된 주변 HOA 계수들 (47') 의 각각의 벡터를 음향심리 코딩하여, 인코딩된 주변 HOA 계수들 (59) 및 인코딩된 nFG 신호들 (61) 을 발생시킬 수도 있다. 오디오 인코딩 디바이스는 그후 비트스트림 발생 유닛 (42) 을 호출할 수도 있다. 비트스트림 발생 유닛 (42) 은 코딩된 포그라운드 방향 정보 (57), 코딩된 주변 HOA 계수들 (59), 코딩된 nFG 신호들 (61) 및 백그라운드 채널 정보 (43) 에 기초하여, 비트스트림 (21) 을 발생시킬 수도 있다.
도 5b 는 본 개시물에서 설명되는 코딩 기법들을 수행할 때에 오디오 인코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다. 도 3 의 예에 나타낸 오디오 인코딩 디바이스 (20) 의 비트스트림 발생 유닛 (42) 은 본 개시물에서 설명하는 기법들을 수행하도록 구성된 일 예시적인 유닛을 나타낼 수도 있다. 비트스트림 발생 유닛 (42) 은 프레임의 양자화 모드가 ("제 2 프레임" 으로서 표시될 수도 있는) 시간적으로 이전 프레임의 양자화 모드와 동일한지 여부를 결정할 수도 있다 (314). 이전 프레임에 대해 설명되었지만, 본 기법들은 시간적으로 후속 프레임들에 대해 수행될 수도 있다. 프레임은 하나 이상의 전송 채널들의 부분을 포함할 수도 있다. 전송 채널의 부분은 일부 페이로드 (예컨대, 도 7 의 예에서의 VVectorData 필드들 (156)) 와 함께, (ChannelSideInfoData 신택스 테이블에 따라서 형성된) ChannelSideInfoData 를 포함할 수도 있다. 페이로드들의 다른 예들은 AddAmbientHOACoeffs 필드들을 포함할 수도 있다.
양자화 모드들이 동일할 때 ("예" 316), 비트스트림 발생 유닛 (42) 은 비트스트림 (21) 에 양자화 모드의 부분을 규정할 수도 있다 (318). 양자화 모드의 부분은 bA 신택스 엘리먼트 및 bB 신택스 엘리먼트를 포함하지만 uintC 신택스 엘리먼트를 포함하지 않을 수도 있다. bA 신택스 엘리먼트는 NbitsQ 신택스 엘리먼트의 최상위 비트를 표시하는 비트를 나타낼 수도 있다. bB 신택스 엘리먼트는 NbitsQ 신택스 엘리먼트의 제 2 최상위 비트를 표시하는 비트를 나타낼 수도 있다. 비트스트림 발생 유닛 (42) 은 bA 신택스 엘리먼트 및 bB 신택스 엘리먼트의 각각의 값을 제로로 설정함으로써, 비트스트림 (21) 에서의 양자화 모드 필드 (즉, 일 예로서 NbitsQ 필드) 가 uintC 신택스 엘리먼트를 포함하지 않는다는 것을 시그널링할 수도 있다. 이 제로 값 bA 신택스 엘리먼트 및 bB 신택스 엘리먼트의 시그널링은 또한 이전 프레임으로부터의 NbitsQ 값, PFlag 값, CbFlag 값, 및 CodebkIdx 값이 현재의 프레임의 동일한 신택스 엘리먼트들에 대한 대응하는 값들로서 사용된다는 것을 표시한다.
양자화 모드들이 동일하지 않을 때 ("아니오" 316), 비트스트림 발생 유닛 (42) 은 비트스트림 (21) 에 전체 양자화 모드를 표시하는 하나 이상의 비트들을 규정할 수도 있다 (320). 즉, 비트스트림 발생 유닛 (42) 은 비트스트림 (21) 에 bA, bB 및 uintC 신택스 엘리먼트들을 규정한다. 비트스트림 발생 유닛 (42) 은 또한 양자화 모드에 기초하여 양자화 정보를 규정할 수도 있다 (322). 이 양자화 정보는 벡터 양자화 정보, 예측 정보, 및 Huffman 코드북 정보와 같은, 양자화에 관련된 임의의 정보를 포함할 수도 있다. 벡터 양자화 정보는 일 예로서, CodebkIdx 신택스 엘리먼트 및 NumVecIndices 신택스 엘리먼트 중 하나 (또는, 양쪽) 를 포함할 수도 있다. 예측 정보는 일 예로서, PFlag 신택스 엘리먼트를 포함할 수도 있다. Huffman 코드북 정보는 일 예로서, CbFlag 신택스 엘리먼트를 포함할 수도 있다.
이 점에서, 본 기법들은 오디오 인코딩 디바이스 (20) 가 음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림 (21) 을 획득하도록 구성될 수 있게 할 수도 있다. 공간 구성요소는 복수의 구면 고조파 계수들에 대해 벡터 기반의 합성을 수행함으로써 발생될 수도 있다. 비트스트림은 헤더 필드의 하나 이상의 비트들을 재사용할지 여부에 대한, 이전 프레임으로부터의, 표시자를 더 포함할 수도 있다.
다시 말해서, 본 기법들은 오디오 인코딩 디바이스 (20) 가, 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터 (57) 를 포함하는 비트스트림 (21) 을 획득하도록 구성될 수 있게 할 수도 있다. 비트스트림 (21) 은 벡터를 압축하는데 (예컨대, 양자화하는데) 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자 (예컨대, NbitsQ 신택스 엘리먼트의 bA/bB 신택스 엘리먼트들) 를 더 포함할 수도 있다.
도 6a 는 본 개시물에서 설명하는 기법들의 여러 양태들을 수행할 때에, 도 4 에 나타낸 오디오 디코딩 디바이스 (24) 와 같은, 오디오 디코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다. 먼저, 오디오 디코딩 디바이스 (24) 는 비트스트림 (21) 을 수신할 수도 있다 (130). 비트스트림을 수신하자 마자, 오디오 디코딩 디바이스 (24) 는 추출 유닛 (72) 을 호출할 수도 있다. 논의의 목적들을 위해, 벡터-기반의 복원이 수행된다는 것을 비트스트림 (21) 이 표시한다고 가정하면, 추출 유닛 (72) 은 비트스트림을 파싱하여 상기 언급된 정보를 취출하고, 그 정보를 벡터-기반 복원 유닛 (92) 으로 전달할 수도 있다.
다시 말해서, 추출 유닛 (72) 은 비트스트림 (21) 으로부터 위에서 설명된 방법으로 (또한, 코딩된 포그라운드 V[k] 벡터들 (57) 로서 또한 지칭될 수도 있는) 코딩된 포그라운드 방향 정보 (57), 코딩된 주변 HOA 계수들 (59) 및 (코딩된 포그라운드 nFG 신호들 (59) 또는 코딩된 포그라운드 오디오 오브젝트들 (59) 로서 또한 지칭될 수도 있는) 코딩된 포그라운드 신호들을 취출할 수도 있다 (132).
오디오 디코딩 디바이스 (24) 는 역양자화 유닛 (74) 을 추가로 호출할 수도 있다. 역양자화 유닛 (74) 은 코딩된 포그라운드 방향 정보 (57) 를 엔트로피 디코딩하여 역양자화하여 감소된 포그라운드 방향 정보 (55k) 를 획득할 수도 있다 (136). 오디오 디코딩 디바이스 (24) 는 또한 음향심리 디코딩 유닛 (80) 을 호출할 수도 있다. 음향심리 오디오 디코딩 유닛 (80) 은 인코딩된 주변 HOA 계수들 (59) 및 인코딩된 포그라운드 신호들 (61) 을 디코딩하여, 에너지 보상된 주변 HOA 계수들 (47') 및 내삽된 포그라운드 신호들 (49') 을 획득할 수도 있다 (138). 음향심리 디코딩 유닛 (80) 은 에너지 보상된 주변 HOA 계수들 (47') 을 페이드 유닛 (770) 으로, 그리고 nFG 신호들 (49') 을 포그라운드 포뮬레이션 유닛 (78) 으로 전달할 수도 있다.
오디오 디코딩 디바이스 (24) 는 다음으로 시공간적 내삽 유닛 (76) 을 호출할 수도 있다. 시공간적 내삽 유닛 (76) 은 재정리된 포그라운드 방향 정보 (55k') 를 수신하고 감소된 포그라운드 방향 정보 (55k/55k-1) 에 대해 시공간적 내삽을 수행하여, 내삽된 포그라운드 방향 정보 (55k'') 을 발생시킬 수도 있다 (140). 시공간적 내삽 유닛 (76) 은 내삽된 포그라운드 V[k] 벡터들 (55k'') 을 페이드 유닛 (770) 으로 포워딩할 수도 있다.
오디오 디코딩 디바이스 (24) 는 페이드 유닛 (770) 을 호출할 수도 있다. 페이드 유닛 (770) 은 에너지 보상된 주변 HOA 계수들 (47') 이 전이 중인 시점을 나타내는 (예컨대, 추출 유닛 (72) 으로부터의) 신택스 엘리먼트들 (예컨대, AmbCoeffTransition 신택스 엘리먼트) 을 수신하거나 또는 아니면 획득할 수도 있다. 페이드 유닛 (770) 은, 전이 신택스 엘리먼트들 및 유지된 전이 상태 정보에 기초하여, 에너지 보상된 주변 HOA 계수들 (47') 을 페이드-인 또는 페이드-아웃하여, 조정된 주변 HOA 계수들 (47'') 을 HOA 계수 포뮬레이션 유닛 (82) 으로 출력할 수도 있다. 페이드 유닛 (770) 은 또한, 신택스 엘리먼트들 및 유지된 전이 상태 정보에 기초하여, 내삽된 포그라운드 V[k] 벡터들 (55k'') 의 대응하는 하나 이상의 엘리먼트들을 페이드-아웃 또는 페이드-인하여, 조정된 포그라운드 V[k] 벡터들 (55k''') 을 포그라운드 포뮬레이션 유닛 (78) 으로 출력할 수도 있다 (142).
오디오 디코딩 디바이스 (24) 는 포그라운드 포뮬레이션 유닛 (78) 을 호출할 수도 있다. 포그라운드 포뮬레이션 유닛 (78) 은 조정된 포그라운드 방향 정보 (55k''') 에 의한 nFG 신호들 (49') 의 매트릭스 곱셈을 수행하여, 포그라운드 HOA 계수들 (65) 을 획득할 수도 있다 (144). 오디오 디코딩 디바이스 (24) 는 또한 HOA 계수 포뮬레이션 유닛 (82) 을 호출할 수도 있다. HOA 계수 포뮬레이션 유닛 (82) 은 HOA 계수들 (11') 을 획득하기 위해 포그라운드 HOA 계수들 (65) 을 조정된 주변 HOA 계수들 (47'') 에 가산할 수도 있다 (146).
도 6b 는 본 개시물에서 설명되는 코딩 기법들을 수행할 때에 오디오 디코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다. 도 4 의 예에 나타낸 오디오 인코딩 디바이스 (24) 의 추출 유닛 (72) 은 본 개시물에서 설명되는 기법들을 수행하도록 구성된 일 예시적인 유닛을 나타낼 수도 있다. 비트스트림 추출 유닛 (72) 은 프레임의 양자화 모드가 ("제 2 프레임" 으로서 표시될 수도 있는) 시간적으로 이전 프레임의 양자화 모드와 동일한지 여부를 표시하는 비트들을 획득할 수도 있다 (362). 또, 이전 프레임에 대해 설명되었지만, 본 기법들은 시간적으로 후속 프레임들에 대해 수행될 수도 있다.
양자화 모드들이 동일할 때 ("예" 364), 추출 유닛 (72) 은 비트스트림 (21) 으로부터 양자화 모드의 부분을 획득할 수도 있다 (366). 양자화 모드의 부분은 bA 신택스 엘리먼트 및 bB 신택스 엘리먼트를 포함하지만 uintC 신택스 엘리먼트를 포함하지 않을 수도 있다. 추출 유닛 (42) 은 또한 현재의 프레임에 대한 NbitsQ 값, PFlag 값, CbFlag 값, CodebkIdx 값, 및 NumVertIndices 값의 값들을 이전 프레임에 대해 설정된 NbitsQ 값, PFlag 값, CbFlag 값, CodebkIdx 값, 및 NumVertIndices 값의 값들과 동일하게 설정할 수도 있다 (368).
양자화 모드들이 동일하지 않을 때 ("아니오" 364), 추출 유닛 (72) 은 비트스트림 (21) 으로부터 전체 양자화 모드를 표시하는 하나 이상의 비트들을 획득할 수도 있다. 즉, 추출 유닛 (72) 은 비트스트림 (21) 으로부터 bA, bB 및 uintC 신택스 엘리먼트들을 획득한다 (370). 추출 유닛 (72) 은 또한 양자화 모드에 기초하여 양자화 정보를 표시하는 하나 이상의 비트들을 획득할 수도 있다 (372). 도 5b 와 관련하여 위에서 언급한 바와 같이, 양자화 정보는 벡터 양자화 정보, 예측 정보, 및 Huffman 코드북 정보와 같은, 양자화에 관련된 임의의 정보를 포함할 수도 있다. 벡터 양자화 정보는 일 예로서, CodebkIdx 신택스 엘리먼트 및 NumVecIndices 신택스 엘리먼트 중 하나 (또는, 양쪽) 를 포함할 수도 있다. 예측 정보는 일 예로서, PFlag 신택스 엘리먼트를 포함할 수도 있다. Huffman 코드북 정보는 일 예로서, CbFlag 신택스 엘리먼트를 포함할 수도 있다.
이 점에서, 본 기법들은 오디오 디코딩 디바이스 (24) 가 음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림 (21) 을 획득하도록 구성될 수 있게 할 수도 있다. 공간 구성요소는 복수의 구면 고조파 계수들에 대해 벡터 기반의 합성을 수행함으로써 발생될 수도 있다. 비트스트림은 헤더 필드의 하나 이상의 비트들을 재사용할지 여부에 대한, 이전 프레임으로부터의, 표시자를 더 포함할 수도 있다.
다시 말해서, 본 기법들은 오디오 디코딩 디바이스 (24) 가 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터 (57) 를 포함하는 비트스트림 (21) 을 획득하도록 구성될 수 있게 할 수도 있다. 비트스트림 (21) 은 벡터를 압축하는데 (예컨대, 양자화하는데) 사용되는 정보를 표시하는 적어도 하나의 신택스 엘리먼트를 이전 프레임으로부터 재사용할지 여부에 대한 표시자 (예컨대, NbitsQ 신택스 엘리먼트의 bA/bB 신택스 엘리먼트들) 를 더 포함할 수도 있다.
도 7 은 본 개시물에서 설명하는 기법들의 여러 양태들에 따라서 규정된 예시적인 프레임들 (249S 및 249T) 을 예시하는 다이어그램이다. 도 7 의 예에 나타낸 바와 같이, 프레임 (249S) 은 ChannelSideInfoData (CSID) 필드들 (154A-154D), HOAGainCorrectionData (HOAGCD) 필드들, VVectorData 필드들 (156A 및 156B) 및 HOAPredictionInfo 필드들을 포함한다. CSID 필드 (154A) 는 01 의 값으로 설정된 ChannelType 신택스 엘리먼트 ("ChannelType") (269) 와 함께, 10 의 값으로 설정된 uintC 신택스 엘리먼트 ("uintC") (267), 1 의 값으로 설정된 bb 신택스 엘리먼트 ("bB") (266) 및 0 의 값으로 설정된 bA 신택스 엘리먼트 ("bA") (265) 를 포함한다.
uintC 신택스 엘리먼트 (267), bB 신택스 엘리먼트 (266) 및 bA 신택스 엘리먼트 (265) 는 함께 NbitsQ 신택스 엘리먼트 (261) 를 형성하며, 여기서, bA 신택스 엘리먼트 (265) 는 최상위 비트를 형성하며, bB 신택스 엘리먼트 (266) 는 제 2 최상위 비트를 형성하며, 그리고 uintC 신택스 엘리먼트 (267) 는 NbitsQ 신택스 엘리먼트 (261) 의 최하위 비트들을 형성한다. NbitsQ 신택스 엘리먼트 (261) 는 위에서 언급한 바와 같이, 고-차수 앰비소닉 오디오 데이터를 인코딩하는데 사용되는 양자화 모드 (예컨대, 벡터 양자화 모드, Huffman 코딩 모드에 의하지 않은 스칼라 양자화, 및 Huffman 코딩 모드에 의한 스칼라 양자화 중 하나) 를 표시하는 하나 이상의 비트들을 나타낼 수도 있다.
CSID 신택스 엘리먼트 (154A) 는 또한 여러 신택스 테이블들에서 위에서 언급된, PFlag 신택스 엘리먼트 (300) 및 CbFlag 신택스 엘리먼트 (302) 를 포함한다. PFlag 신택스 엘리먼트 (300) 는 제 1 프레임 (249S) 의 HOA 계수들 (11) 에 의해 표현되는 음장의 공간 구성요소의 코딩된 엘리먼트 (여기서, 또한 공간 구성요소는 V-벡터를 지칭할 수도 있다) 가 제 2 프레임 (예컨대, 이 예에서 이전 프레임) 으로부터 예측되는지 여부를 표시하는 하나 이상의 비트들을 나타낼 수도 있다. CbFlag 신택스 엘리먼트 (302) 는 Huffman 코드북들 (또는, 즉, 테이블들) 중 어느 코드북이 공간 구성요소의 엘리먼트들 (또는, 즉, V-벡터 엘리먼트들) 을 인코딩하는데 사용되는지를 식별할 수도 있는 Huffman 코드북 정보를 표시하는 하나 이상의 비트들을 나타낼 수도 있다.
CSID 필드 (154B) 는 bB 신택스 엘리먼트 (266) 및 bB 신택스 엘리먼트 (265) 를 ChannelType 신택스 엘리먼트 (269) 와 함께 포함하며, 이들 각각은 도 7 의 예에서 대응하는 값들 0 및 0 및 01 로 설정된다. CSID 필드들 (154C 및 154D) 의 각각은 3 의 값 (112) 을 가지는 ChannelType 필드 (269) 를 포함한다. CSID 필드들 (154A-154D) 의 각각은 전송 채널들 1, 2, 3 및 4 의 개개의 하나에 대응한다. 실제로, 각각의 CSID 필드 (154A-154D) 는 대응하는 페이로드가 (대응하는 ChannelType 이 제로와 동일할 때) 방향-기반 신호들인지, (대응하는 ChannelType 이 1 과 동일할 때) 벡터-기반의 신호들인지, (대응하는 ChannelType 이 2 와 동일할 때) 추가적인 주변 HOA 계수인지, 또는 (ChannelType 이 3 과 동일할 때) 공백 (empty) 인지 여부를 표시한다.
도 7 의 예에서, 프레임 (249S) 은 (ChannelType 신택스 엘리먼트들 (269) 이 CSID 필드들 (154A 및 154B) 에서 1 과 동일하다고 가정하면) 2개의 벡터-기반의 신호들 및 (ChannelType (269) 이 CSID 필드들 (154C 및 154D) 에서 3 과 동일하다고 가정하면) 2개의 공백 (empty) 을 포함한다. 더욱이, 오디오 인코딩 디바이스 (20) 는 1 로 설정되는 PFlag 신택스 엘리먼트 (300) 에 의해 표시된 바와 같은 예측을 채용하였다. 또, PFlag 신택스 엘리먼트 (300) 에 의해 표시된 바와 같은 예측은 예측이 압축된 공간 구성요소들 v1-vn 의 대응하는 필드에 대해 수행되었는지 여부를 표시하는 예측 모드 표시를 지칭한다. PFlag 신택스 엘리먼트 (300) 가 1 로 설정될 때, 오디오 인코딩 디바이스 (20) 는 스칼라 양자화에 대해, 이전 프레임으로부터의 벡터 엘리먼트와 현재의 프레임의 대응하는 벡터 엘리먼트 사이의 차이, 또는, 벡터 양자화에 대해, 이전 프레임으로부터의 가중치와 현재의 프레임의 대응하는 가중치 사이의 차이를 취함으로써 예측을 채용할 수도 있다.
오디오 인코딩 디바이스 (20) 는 또한 프레임 (249S) 에서의 제 2 전송 채널의 CSID 필드 (154B) 에 대한 NbitsQ 신택스 엘리먼트 (261) 에 대한 값이 이전 프레임, 예를 들어, 도 7 의 예에서 프레임 (249T) 의 제 2 전송 채널의 CSID 필드 (154B) 에 대한 NbitsQ 신택스 엘리먼트 (261) 의 값과 동일한다고 결정하였다. 그 결과, 오디오 인코딩 디바이스 (20) 는 이전 프레임 (249T) 에서 제 2 전송 채널의 NbitsQ 신택스 엘리먼트 (261) 의 값이 프레임 (249S) 에서 제 2 전송 채널의 NbitsQ 신택스 엘리먼트 (261) 에 대해 재사용된다는 것을 시그널링하기 위해 bA 신택스 엘리먼트 (265) 및 bB 신택스 엘리먼트 (266) 의 각각에 대해 제로의 값을 규정하였다. 그 결과, 오디오 인코딩 디바이스 (20) 는 위에서 식별된 다른 신택스 엘리먼트와 함께, 프레임 (249S) 에서 제 2 전송 채널에 대해 uintC 신택스 엘리먼트 (267) 를 규정하는 것을 회피할 수도 있다.
도 8 은 본원에서 설명되는 기법들에 따른, 적어도 하나의 비트스트림의 하나 이상의 채널들에 대한 예시적인 프레임들을 예시하는 다이어그램이다. 비트스트림 (450) 은 하나 이상의 채널들을 각각 포함할 수도 있는 프레임들 (810A-810H) 을 포함한다. 비트스트림 (450) 은 도 7 의 예에 나타낸 비트스트림 (21) 의 일 예일 수도 있다. 도 8 의 예에서, 오디오 디코딩 디바이스 (24) 는 상태 정보를 유지하고, 현재의 프레임 k 를 디코딩하는 방법을 결정하기 위해 상태 정보를 업데이트한다. 오디오 디코딩 디바이스 (24) 는 config (814), 및 프레임들 (810B-810D) 로부터의 상태 정보를 이용할 수도 있다.
다시 말해서, 오디오 인코딩 디바이스 (20) 는 비트스트림 발생 유닛 (42) 내에, 예를 들어, 비트스트림 발생 유닛 (42) 이 상태 머신 (402) 에 기초하여 프레임들 (810A-810E) 의 각각에 대한 신택스 엘리먼트들을 규정할 수도 있다는 점에서, 프레임들 (810A-810E) 의 각각을 인코딩하기 위한 상태 정보를 유지하는 상태 머신 (402) 을 포함할 수도 있다.
오디오 디코딩 디바이스 (24) 는 유사하게, 비트스트림 추출 유닛 (72) 내에, 예를 들어, 상태 머신 (402) 에 기초하여 신택스 엘리먼트들 (이의 일부는 비트스트림 (21) 에 명시적으로 규정되지 않는다) 을 출력하는 유사한 상태 머신 (402) 을 포함할 수도 있다. 오디오 디코딩 디바이스 (24) 의 상태 머신 (402) 은 오디오 인코딩 디바이스 (20) 의 상태 머신 (402) 의 방법과 유사한 방법으로 동작할 수도 있다. 이와 같이, 오디오 디코딩 디바이스 (24) 의 상태 머신 (402) 은 상태 정보를 유지하고, config (814) 그리고, 도 8 의 예에서는 프레임들 (810B-810D) 의 디코딩에 기초하여 상태 정보를 업데이트할 수도 있다. 상태 정보에 기초하여, 비트스트림 추출 유닛 (72) 은 상태 머신 (402) 에 의해 유지된 상태 정보에 기초하여 프레임 (810E) 을 추출할 수도 있다. 상태 정보는 오디오 인코딩 디바이스 (20) 가 프레임 (810E) 의 여러 전송 채널들을 디코딩할 때 이용할 수도 있는 다수의 암시적인 신택스 엘리먼트들을 제공할 수도 있다.
전술한 기법들은 임의 개수의 상이한 상황들 및 오디오 생태계들에 대해 수행될 수도 있다. 다수의 예시적인 상황들이 아래에 설명되지만, 본 기법들은 예시적인 상황들에 한정되지 않아야 한다. 일 예시적인 오디오 생태계는 오디오 콘텐츠, 영화 스튜디오들, 음악 스튜디오들, 게이밍 오디오 스튜디오들, 채널 기반 오디오 콘텐츠, 코딩 엔진들, 게임 오디오 시스템들, 게임 오디오 코딩 / 렌더링 엔진들, 및 전달 시스템들을 포함할 수도 있다.
영화 스튜디오들, 음악 스튜디오들, 및 게이밍 오디오 스튜디오들은 오디오 콘텐츠를 수신할 수도 있다. 일부 예들에서, 오디오 콘텐츠는 획득의 출력을 나타낼 수도 있다. 영화 스튜디오들은 채널 기반 오디오 콘텐츠를 (예컨대, 2.0, 5.1, 및 7.1 에서) 예컨대, 디지털 오디오 워크스테이션 (DAW) 을 이용함으로써 출력할 수도 있다. 음악 스튜디오들은 채널 기반 오디오 콘텐츠를 (예컨대, 2.0, 및 5.1 에서) 예컨대, DAW 를 이용함으로써 출력할 수도 있다. 어느 경우에나, 코딩 엔진들은 전달 시스템들에 의한 출력을 위해 채널 기반 오디오 콘텐츠 기반의 하나 이상의 코덱들 (예컨대, AAC, AC3, Dolby True HD, Dolby 디지털 플러스, 및 DTS 마스터 오디오) 을 수신하여 인코딩할 수도 있다. 게이밍 오디오 스튜디오들은 하나 이상의 게임 오디오 시스템들을, 예컨대, DAW 를 이용함으로써 출력할 수도 있다. 게임 오디오 코딩 / 렌더링 엔진들은 전달 시스템들에 의한 출력을 위해 오디오 시스템들을 채널 기반 오디오 콘텐츠로 코딩하고 및/또는 렌더링할 수도 있다. 본 기법들이 수행될 수도 있는 다른 예시적인 상황은 브로드캐스트 리코딩 오디오 오브젝트들, 전문 오디오 시스템들, 소비자 온-디바이스 캡쳐, HOA 오디오 포맷, 온-디바이스 렌더링, 소비자 오디오, TV 및 부속물들, 및 카 오디오 시스템들을 포함할 수도 있는 오디오 생태계를 포함한다.
브로드캐스트 리코딩 오디오 오브젝트들, 전문 오디오 시스템들, 및 소비자 온-디바이스 캡쳐는 그들의 출력을 HOA 오디오 포맷을 이용하여 모두 코딩할 수도 있다. 이러한 방법으로, 오디오 콘텐츠는 HOA 오디오 포맷을 이용하여, 온-디바이스 렌더링, 소비자 오디오, TV, 및 부속물들, 및 카 오디오 시스템들을 이용하여 플레이백될 수도 있는 단일 표현으로 코딩될 수도 있다. 다시 말해서, 오디오 콘텐츠의 단일 표현은 오디오 플레이백 시스템 (16) 과 같은, (즉, 5.1, 7.1, 등과 같은 특정의 구성을 필요로 하는 것과는 반대로) 일반적인 오디오 플레이백 시스템에서 플레이백될 수도 있다.
본 기법들이 수행될 수도 있는 상황의 다른 예들은 획득 엘리먼트들, 및 플레이백 엘리먼트들을 포함할 수도 있는 오디오 생태계를 포함한다. 획득 엘리먼트들은 유선 및/또는 무선 획득 디바이스들 (acquisition devices) (예컨대, 아이겐 (Eigen) 마이크로폰들), 온-디바이스 서라운드 사운드 캡쳐, 및 모바일 디바이스들 (예컨대, 스마트폰들 및 태블릿들) 을 포함할 수도 있다. 일부 예들에서, 유선 및/또는 무선 획득 디바이스들은 유선 및/또는 무선 통신 채널(들)을 통해서 모바일 디바이스에 커플링될 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 모바일 디바이스가 음장을 획득하는데 사용될 수도 있다. 예를 들어, 모바일 디바이스는 유선 및/또는 무선 획득 디바이스들 및/또는 온-디바이스 서라운드 사운드 캡쳐 (예컨대, 모바일 디바이스에 통합된 복수의 마이크로폰들) 를 통해서 음장을 획득할 수도 있다. 모바일 디바이스는 그후 플레이백 엘리먼트들 중 하나 이상에 의한 플레이백을 위해 그 획득된 음장을 HOA 계수들로 코딩할 수도 있다. 예를 들어, 모바일 디바이스의 사용자는 라이브 이벤트 (예컨대, 미팅, 회의, 연극, 콘서트, 등) 을 리코딩하여 (그의 음장을 획득하여), 그 리코딩을 HOA 계수들로 코딩할 수도 있다.
모바일 디바이스는 또한 플레이백 엘리먼트들 중 하나 이상을 이용하여, HOA 코딩된 음장을 플레이백할 수도 있다. 예를 들어, 모바일 디바이스는 HOA 코딩된 음장을 디코딩하고, 플레이백 엘리먼트들 중 하나 이상이 음장을 재생하도록 하는 신호를 플레이백 엘리먼트들 중 하나 이상으로 출력할 수도 있다. 일 예로서, 모바일 디바이스는 무선 및/또는 무선 통신 채널들을 이용하여, 하나 이상의 스피커들 (예컨대, 스피커 어레이들, 사운드 바들, 등) 로 그 신호를 출력할 수도 있다. 다른 예로서, 모바일 디바이스는 도킹 솔루션들을 이용하여, 그 신호를 하나 이상의 도킹 스테이션들 및/또는 하나 이상의 도킹된 스피커들 (예컨대, 사운드 시스템들 in 스마트 차들 및/또는 홈들) 로 출력할 수도 있다. 다른 예로서, 모바일 디바이스는 헤드폰 렌더링을 이용하여, 예컨대, 실제적인 바이노럴 사운드를 생성하기 위해 그 신호를 헤드폰들의 세트로 출력할 수도 있다.
일부 예들에서, 특정의 모바일 디바이스가 3D 음장을 획득할 뿐만 아니라 그 동일한 3D 음장을 추후에 플레이백할 수도 있다. 일부 예들에서, 모바일 디바이스는 플레이백을 위해, 3D 음장을 획득하고, 3D 음장을 HOA 로 인코딩하고, 그리고 인코딩된 3D 음장을 하나 이상의 다른 디바이스들 (예컨대, 다른 모바일 디바이스들 및/또는 다른 비-모바일 디바이스들) 로 송신할 수도 있다.
본 기법들이 수행될 수도 있는 또 다른 상황은 오디오 콘텐츠, 게임 스튜디오들, 코딩된 오디오 콘텐츠, 렌더링 엔진들, 및 전달 시스템들을 포함할 수도 있는 오디오 생태계를 포함한다. 일부 예들에서, 게임 스튜디오들은 HOA 신호들의 편집을 지원할 수도 있는 하나 이상의 DAW들을 포함할 수도 있다. 예를 들어, 하나 이상의 DAW들은 하나 이상의 게임 오디오 시스템들과 동작하도록 (예컨대, 그들과 작업하도록) 구성될 수도 있는 HOA 플러그인들 및/또는 툴들을 포함할 수도 있다. 일부 예들에서, 게임 스튜디오들은 HOA 를 지원하는 새로운 시스템 포맷들을 출력할 수도 있다. 어쨌든, 게임 스튜디오들은 전달 시스템들에 의한 플레이백을 위해, 코딩된 오디오 콘텐츠를 음장을 렌더링할 수도 있는 렌더링 엔진들로 출력할 수도 있다.
이 기법들은 또한 예시적인 오디오 획득 디바이스들에 대해 수행될 수도 있다. 예를 들어, 이 기법들은 3D 음장을 리코딩하도록 집합하여 구성되는 복수의 마이크로폰들을 포함할 수도 있는 아이겐 (Eigen) 마이크로폰에 대해 수행될 수도 있다. 일부 예들에서, 아이겐 마이크로폰의 복수의 마이크로폰들은 대략 4cm 의 반경을 가지는 실질적으로 구형인 볼의 표면 상에 로케이트될 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (20) 는 마이크로폰으로부터 직접 비트스트림 (21) 을 출력하기 위해 아이겐 마이크로폰에 통합될 수도 있다.
다른 예시적인 오디오 획득 상황은 하나 이상의 아이겐 마이크로폰들과 같은 하나 이상의 마이크로폰들로부터 신호를 수신하도록 구성될 수도 있는 프로덕션 트럭을 포함할 수도 있다. 프로덕션 트럭은 또한 도 3 의 오디오 인코더 (20) 와 같은 오디오 인코더를 포함할 수도 있다.
모바일 디바이스는 또한, 일부 경우, 3D 음장을 리코딩하도록 종합하여 구성된 복수의 마이크로폰들을 포함할 수도 있다. 다시 말해서, 복수의 마이크로폰은 X, Y, Z 다이버시티를 가질 수도 있다. 일부 예들에서, 모바일 디바이스는 모바일 디바이스의 하나 이상의 다른 마이크로폰들에 대해 X, Y, Z 다이버시티를 제공하도록 회전될 수도 있는 마이크로폰을 포함할 수도 있다. 모바일 디바이스는 또한 도 3 의 오디오 인코더 (20) 와 같은 오디오 인코더를 포함할 수도 있다.
러기다이즈드 (ruggedized) 비디오 캡쳐 디바이스는 3D 음장을 리코딩하도록 더 구성될 수도 있다. 일부 예들에서, 러기다이즈드 비디오 캡쳐 디바이스는 활동에 참가하는 사용자의 헬멧에 부착될 수도 있다. 예를 들어, 러기다이즈드 비디오 캡쳐 디바이스는 사용자 급류 래프팅의 헬멧에 부착될 수도 있다. 이러한 방법으로, 러기다이즈드 비디오 캡쳐 디바이스는 사용자 주변의 모든 액션 (예컨대, 사용자 뒤에서 부서지는 물, 사용자의 전면에서 말하고 있는 다른 래프터, 등) 을 나타내는 3D 음장을 캡쳐할 수도 있다.
이 기법들은 또한 3D 음장을 리코딩하도록 구성될 수도 있는 부속물 향상된 (accessory enhanced) 모바일 디바이스에 대해 수행될 수도 있다. 일부 예들에서, 모바일 디바이스는 하나 이상의 부속물들의 추가에 따라, 위에서 설명된 모바일 디바이스들과 유사할 수도 있다. 예를 들어, 아이겐 마이크로폰은 부속물 향상된 모바일 디바이스를 형성하기 위해 위에서 언급된 모바일 디바이스에 부착될 수도 있다. 이러한 방법으로, 부속물 향상된 모바일 디바이스는 단지 부속물 향상된 모바일 디바이스에 통합된 사운드 캡쳐 구성요소들을 이용하는 것보다 더 높은 품질 버전의 3D 음장을 캡쳐할 수도 있다.
본 개시물에서 설명하는 기법들의 여러 양태들을 수행할 수도 있는 예시적인 오디오 플레이백 디바이스들이 아래에서 추가로 설명된다. 본 개시물의 하나 이상의 기법들에 따르면, 스피커들 및/또는 사운드 바들은 임의의 임의의 구성으로 배열될 수도 있지만 여전히 3D 음장을 플레이백할 수도 있다. 더욱이, 일부 예들에서, 헤드폰 플레이백 디바이스들은 유선 또는 무선 접속을 통해서 디코더 (24) 에 커플링될 수도 있다. 본 개시물의 하나 이상의 기법들에 따르면, 음장의 단일 포괄 표현 (generic representation) 이 스피커들, 사운드 바들, 및 헤드폰 플레이백 디바이스들의 임의의 조합 상에서 음장을 렌더링하기 위해 이용될 수도 있다.
다수의 상이한 예시적인 오디오 플레이백 환경들이 또한 본 개시물에서 설명하는 기법들의 여러 양태들을 수행하는데 적합할 수도 있다. 예를 들어, 5.1 스피커 플레이백 환경, 2.0 (예컨대, 스테레오) 스피커 플레이백 환경, 풀 높이 전면 라우드스피커들을 가지는 9.1 스피커 플레이백 환경, 22.2 스피커 플레이백 환경, 16.0 스피커 플레이백 환경, 자동차 스피커 플레이백 환경, 및 이어 버드 플레이백 환경을 가지는 모바일 디바이스가 본 개시물에서 설명하는 기법들의 여러 양태들을 수행하는데 적합한 환경들일 수도 있다.
본 개시물의 하나 이상의 기법들에 따르면, 음장의 단일 포괄 표현이 전술한 플레이백 환경들 중 임의의 환경 상에서 음장을 렌더링하기 위해 이용될 수도 있다. 게다가, 본 개시물의 기법들은 위에서 설명된 것과는 다른 플레이백 환경들 상에서의 플레이백을 위해 렌더러가 포괄 표현으로부터 음장을 렌더링가능하게 한다. 예를 들어, 설계 고려사항들이 7.1 스피커 플레이백 환경에 따른 스피커들의 적합한 배치를 방해하면 (예컨대, 우측 서라운드 스피커를 배치하는 것이 가능하지 않으면), 본 개시물의 기법들은 플레이백이 6.1 스피커 플레이백 환경 상에서 달성될 수 있도록 렌더가 다른 6 개의 스피커들을 보상가능하게 한다.
더욱이, 사용자는 헤드폰들을 착용한 상태에서 스포츠 게임을 볼 수도 있다. 본 개시물의 하나 이상의 기법들에 따르면, 스포츠 게임의 3D 음장이 획득될 수 있으며 (예컨대, 하나 이상의 아이겐 마이크로폰들이 야구 경기장 내 및/또는 둘레에 배치될 수도 있으며), 3D 음장에 대응하는 HOA 계수들이 획득되어 디코더로 송신될 수도 있으며, 디코더가 HOA 계수들에 기초하여 3D 음장을 복원하여 복원된 3D 음장을 렌더러로 출력할 수도 있으며, 렌더러가 플레이백 환경의 유형 (예컨대, 헤드폰들) 에 관한 표시를 획득하여 복원된 3D 음장을 헤드폰들이 스포츠 게임의 3D 음장의 표현을 출력시키는 신호들로 렌더링할 수도 있다.
위에서 설명된 여러 경우들의 각각에서, 오디오 인코딩 디바이스 (20) 가 방법을 수행하거나 또는 아니면 오디오 인코딩 디바이스 (20) 가 수행되도록 구성되는 방법의 각각의 단계를 수행하는 수단을 포함할 수도 있는 것으로 이해되어야 한다. 일부의 경우, 수단은 하나 이상의 프로세서들을 포함할 수도 있다. 일부의 경우, 하나 이상의 프로세서들은 비일시성 컴퓨터-판독가능 저장 매체에 저장된 명령들에 의해 구성되는 특수 목적 프로세서를 나타낼 수도 있다. 다시 말해서, 인코딩 예들의 세트들 각각에서 본 기법들의 여러 양태들은, 실행될 때, 하나 이상의 프로세서들로 하여금, 오디오 인코딩 디바이스 (20) 가 수행하도록 구성되어 있는 방법을 수행하도록 하는 명령들을 저장하고 있는 비일시성 컴퓨터-판독가능 저장 매체를 제공할 수도 있다.
하나 이상의 예들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되는 경우, 그 기능들은 하나 이상의 명령들 또는 코드로서, 컴퓨터-판독가능 매체 상에 저장되거나 또는 컴퓨터-판독가능 매체를 통해서 송신될 수도 있으며, 하드웨어-기반의 프로세싱 유닛에 의해 실행될 수도 있다. 컴퓨터-판독가능 매체는 데이터 저장 매체들과 같은, 유형의 매체에 대응하는 컴퓨터-판독가능 저장 매체들을 포함할 수도 있다. 데이터 저장 매체는 본 개시물에서 설명하는 기법들의 구현을 위한 명령들, 코드 및/또는 데이터 구조들을 취출하기 위해 하나 이상의 컴퓨터들 또는 하나 이상의 프로세서들에 의해 액세스될 수 있는 임의의 가용 매체들일 수도 있다. 컴퓨터 프로그램 제품은 컴퓨터-판독가능 매체를 포함할 수도 있다.
이와 유사하게, 위에서 설명된 여러 경우들 각각에서, 오디오 디코딩 디바이스 (24) 가 방법을 수행하거나 또는 아니면 오디오 디코딩 디바이스 (24) 가 수행하도록 구성되는 방법의 각각의 단계를 수행하는 수단을 포함할 수도 있는 것으로 이해되어야 한다. 일부의 경우, 수단은 하나 이상의 프로세서들을 포함할 수도 있다. 일부의 경우, 하나 이상의 프로세서들은 비일시성 컴퓨터-판독가능 저장 매체에 저장된 명령들에 의해 구성되는 특수 목적 프로세서를 나타낼 수도 있다. 다시 말해서, 인코딩 예들의 세트들의 각각에서 본 기법들의 여러 양태들은 실행될 때, 하나 이상의 프로세서들로 하여금, 오디오 디코딩 디바이스 (24) 가 수행하도록 구성되어 있는 방법을 수행가능하게 하는 명령들을 저장하고 있는 비일시성 컴퓨터-판독가능 저장 매체를 제공할 수도 있다.
일 예로서, 이에 한정하지 않고, 이런 컴퓨터-판독가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광디스크 스토리지, 자기디스크 스토리지, 또는 다른 자기 저장 디바이스들, 플래시 메모리, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 그러나, 컴퓨터-판독가능 저장 매체 및 데이터 저장 매체는 접속부들, 캐리어 파들, 신호들, 또는 다른 일시성 매체를 포함하지 않고, 그 대신, 비-일시성 유형의 저장 매체로 송신되는 것으로 해석되어야 한다. 디스크 (disk) 및 디스크 (disc) 는, 본원에서 사용할 때, 컴팩트 디스크 (CD), 레이저 디스크, 광 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크 및 Blu-ray 디스크를 포함하며, 디스크들 (disks) 은 데이터를 자기적으로 보통 재생하지만, 디스크들 (discs) 은 레이저로 데이터를 광학적으로 재생한다. 앞에서 언급한 것들의 결합들이 또한 컴퓨터-판독가능 매체들의 범위 내에 포함되어야 한다.
명령들은 하나 이상의 디지털 신호 프로세서들 (DSP들), 범용 마이크로프로세서들, 주문형 집적회로들 (ASIC들), 필드 프로그래밍가능 로직 어레이들 (FPGA들), 또는 다른 등가의 집적 또는 이산 로직 회로와 같은, 하나 이상의 프로세서들에 의해 실행될 수도 있다. 따라서, 용어 "프로세서" 는, 본원에서 사용될 때 전술한 구조 중 임의의 구조 또는 본원에서 설명하는 기법들의 구현에 적합한 임의의 다른 구조를 지칭할 수도 있다. 게다가, 일부 양태들에서, 본원에서 설명하는 기능은 인코딩 및 디코딩을 위해 구성되는 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공되거나, 또는 결합된 코덱에 포함될 수도 있다. 또한, 이 기법들은 하나 이상의 회로들 또는 로직 엘리먼트들로 전적으로 구현될 수 있다.
본 개시물의 기법들은 무선 핸드셋, 집적 회로 (IC) 또는 IC들의 세트 (예컨대, 칩 세트) 를 포함한, 매우 다양한 디바이스들 또는 장치들로 구현될 수도 있다. 개시한 기법들을 수행하도록 구성되는 디바이스들의 기능적 양태들을 강조하기 위해서 여러 구성요소들, 모듈들, 또는 유닛들이 본 개시물에서 설명되지만, 상이한 하드웨어 유닛들에 의한 실현을 반드시 필요로 하지는 않는다. 대신, 위에서 설명한 바와 같이, 여러 유닛들이 코덱 하드웨어 유닛에 결합되거나 또는 적합한 소프트웨어 및/또는 펌웨어와 함께, 위에서 설명한 바와 같은 하나 이상의 프로세서들을 포함한, 상호작용하는 하드웨어 유닛들의 컬렉션으로 제공될 수도 있다.
본 기법들의 여러 양태들이 설명되었다. 본 기법들의 이들 및 다른 실시형태들은 다음 청구항들의 범위 이내이다.

Claims (52)

  1. 효율적인 비트 사용의 방법으로서,
    음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림을 획득하는 단계를 포함하고,
    상기 음장의 상기 공간 구성요소는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터에 의해 표현되며,
    상기 비트스트림은 상기 벡터에 대해 예측이 수행되었는지 여부를 나타내는 예측 모드를 표시하는 신택스 엘리먼트를, 이전 프레임으로부터, 재사용할지 여부에 대한 표시자를 더 포함하는, 효율적인 비트 사용의 방법.
  2. 제 1 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 양자화 모드를 표시하는 제 2 신택스 엘리먼트의 하나 이상의 비트들을 포함하는, 효율적인 비트 사용의 방법.
  3. 제 2 항에 있어서,
    상기 제 2 신택스 엘리먼트의 상기 하나 이상의 비트들은, 제로 값으로 설정될 때, 상기 이전 프레임으로부터의 상기 제 1 신택스 엘리먼트를 재사용하는 것을 표시하는, 효율적인 비트 사용의 방법.
  4. 제 2 항에 있어서,
    상기 양자화 모드는 벡터 양자화 모드를 포함하는, 효율적인 비트 사용의 방법.
  5. 제 2 항에 있어서,
    상기 양자화 모드는 허프만 코딩에 의하지 않은 스칼라 양자화 모드를 포함하는, 효율적인 비트 사용의 방법.
  6. 제 2 항에 있어서,
    상기 양자화 모드는 허프만 코딩에 의한 스칼라 양자화 모드를 포함하는, 효율적인 비트 사용의 방법.
  7. 제 2 항에 있어서,
    상기 표시자는 상기 제 2 신택스 엘리먼트의 최상위 비트 및 상기 제 2 신택스 엘리먼트의 제 2 최상위 비트를 포함하는, 효율적인 비트 사용의 방법.
  8. 제 1 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 허프만 테이블을 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용의 방법.
  9. 제 1 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터가 대응하는 압축 카테고리를 식별하는 카테고리 식별자를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용의 방법.
  10. 제 1 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터의 엘리먼트가 양의 값 또는 음의 값인지 여부를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용의 방법.
  11. 제 1 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 코드 벡터들의 개수를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용의 방법.
  12. 제 1 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 벡터 양자화 코드북을 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용의 방법.
  13. 제 1 항에 있어서,
    상기 벡터의 압축된 버전은 상기 벡터의 엘리먼트의 잔차 값을 표시하기 위해 허프만 코드를 적어도 부분적으로 이용하여 상기 비트스트림에 표시되는, 효율적인 비트 사용의 방법.
  14. 제 1 항에 있어서,
    상기 벡터를 획득하기 위해 고-차수 앰비소닉 오디오 데이터를 분해하는 단계; 및
    상기 비트스트림을 획득하기 위해 상기 벡터를 상기 비트스트림에 규정하는 단계를 더 포함하는, 효율적인 비트 사용의 방법.
  15. 제 1 항에 있어서,
    상기 비트스트림으로부터, 상기 벡터에 대응하는 오디오 오브젝트를 획득하는 단계; 및
    고-차수 앰비소닉 오디오 데이터를 복원하기 위해 상기 오디오 오브젝트와 상기 벡터를 결합하는 단계를 더 포함하는, 효율적인 비트 사용의 방법.
  16. 제 1 항에 있어서,
    상기 벡터의 상기 압축은 상기 벡터의 양자화를 포함하는, 효율적인 비트 사용의 방법.
  17. 효율적인 비트 사용을 수행하도록 구성된 디바이스로서,
    음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림을 획득하도록 구성된 하나 이상의 프로세서들로서, 상기 음장의 상기 공간 구성요소는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터에 의해 표현되며, 상기 비트스트림은 상기 벡터에 대해 예측이 수행되었는지 여부를 나타내는 예측 모드를 표시하는 신택스 엘리먼트를, 이전 프레임으로부터, 재사용할지 여부에 대한 표시자를 더 포함하는, 상기 하나 이상의 프로세서들; 및
    상기 비트스트림을 저장하도록 구성된 메모리를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  18. 제 17 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 양자화 모드를 표시하는 제 2 신택스 엘리먼트의 하나 이상의 비트들을 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  19. 제 18 항에 있어서,
    상기 제 2 신택스 엘리먼트의 상기 하나 이상의 비트들은, 제로 값으로 설정될 때, 상기 이전 프레임으로부터의 상기 제 1 신택스 엘리먼트를 재사용하는 것을 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  20. 제 18 항에 있어서,
    상기 양자화 모드는 벡터 양자화 모드를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  21. 제 18 항에 있어서,
    상기 양자화 모드는 허프만 코딩에 의하지 않은 스칼라 양자화 모드를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  22. 제 18 항에 있어서,
    상기 양자화 모드는 허프만 코딩에 의한 스칼라 양자화 모드를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  23. 제 18 항에 있어서,
    상기 표시자는 상기 제 2 신택스 엘리먼트의 최상위 비트 및 상기 제 2 신택스 엘리먼트의 제 2 최상위 비트를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  24. 제 17 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 허프만 테이블을 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  25. 제 17 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터가 대응하는 압축 카테고리를 식별하는 카테고리 식별자를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  26. 제 17 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터의 엘리먼트가 양의 값 또는 음의 값인지 여부를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  27. 제 17 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 코드 벡터들의 개수를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  28. 제 17 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 벡터 양자화 코드북을 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  29. 제 17 항에 있어서,
    상기 벡터의 압축된 버전은 상기 벡터의 엘리먼트의 잔차 값을 표시하기 위해 허프만 코드를 적어도 부분적으로 이용하여 상기 비트스트림에 표시되는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  30. 제 17 항에 있어서,
    상기 하나 이상의 프로세서들은 상기 벡터를 획득하기 위해 고-차수 앰비소닉 오디오 데이터를 분해하고, 그리고 상기 비트스트림을 획득하기 위해 상기 벡터를 상기 비트스트림에 규정하도록 더 구성되는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  31. 제 17 항에 있어서,
    상기 하나 이상의 프로세서들은 상기 비트스트림으로부터, 상기 벡터에 대응하는 오디오 오브젝트를 획득하고, 그리고 고-차수 앰비소닉 오디오 데이터를 복원하기 위해 상기 오디오 오브젝트를 상기 벡터와 결합하도록 더 구성되는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  32. 제 17 항에 있어서,
    상기 벡터의 상기 압축은 상기 벡터의 양자화를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  33. 효율적인 비트 사용을 수행하도록 구성된 디바이스로서,
    음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림을 획득하는 수단으로서, 상기 음장의 상기 공간 구성요소는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터에 의해 표현되며, 상기 비트스트림은 상기 벡터에 대해 예측이 수행되었는지 여부를 나타내는 예측 모드를 표시하는 신택스 엘리먼트를, 이전 프레임으로부터, 재사용할지 여부에 대한 표시자를 더 포함하는, 상기 획득하는 수단; 및
    상기 표시자를 저장하는 수단을 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  34. 제 33 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 양자화 모드를 표시하는 제 2 신택스 엘리먼트의 하나 이상의 비트들을 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  35. 제 34 항에 있어서,
    상기 제 2 신택스 엘리먼트의 상기 하나 이상의 비트들은, 제로 값으로 설정될 때, 상기 이전 프레임으로부터의 상기 제 1 신택스 엘리먼트를 재사용하는 것을 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  36. 제 34 항에 있어서,
    상기 양자화 모드는 벡터 양자화 모드를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  37. 제 34 항에 있어서,
    상기 양자화 모드는 허프만 코딩에 의하지 않은 스칼라 양자화 모드를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  38. 제 34 항에 있어서,
    상기 양자화 모드는 허프만 코딩에 의한 스칼라 양자화 모드를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  39. 제 34 항에 있어서,
    상기 표시자는 상기 제 2 신택스 엘리먼트의 최상위 비트 및 상기 제 2 신택스 엘리먼트의 제 2 최상위 비트를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  40. 제 33 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 허프만 테이블을 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  41. 제 33 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터가 대응하는 압축 카테고리를 식별하는 카테고리 식별자를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  42. 제 33 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터의 엘리먼트가 양의 값 또는 음의 값인지 여부를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  43. 제 33 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 코드 벡터들의 개수를 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  44. 제 33 항에 있어서,
    상기 신택스 엘리먼트는 제 1 신택스 엘리먼트이고, 상기 표시자는 상기 벡터를 압축할 때 사용되는 벡터 양자화 코드북을 표시하는 제 2 신택스 엘리먼트를 상기 이전 프레임으로부터 재사용할지 여부를 표시하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  45. 제 33 항에 있어서,
    상기 벡터의 압축된 버전은 상기 벡터의 엘리먼트의 잔차 값을 표시하기 위해 허프만 코드를 적어도 부분적으로 이용하여 상기 비트스트림에 표시되는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  46. 제 33 항에 있어서,
    상기 벡터를 획득하기 위해 고-차수 앰비소닉 오디오 데이터를 분해하는 수단; 및
    상기 비트스트림을 획득하기 위해 상기 벡터를 상기 비트스트림에 규정하는 수단을 더 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  47. 제 33 항에 있어서,
    상기 비트스트림으로부터, 상기 벡터에 대응하는 오디오 오브젝트를 획득하는 수단; 및
    고-차수 앰비소닉 오디오 데이터를 복원하기 위해 상기 오디오 오브젝트와 상기 벡터를 결합하는 수단을 더 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  48. 제 33 항에 있어서,
    상기 벡터의 상기 압축은 상기 벡터의 양자화를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  49. 명령들을 저장하고 있는 비일시성 컴퓨터-판독가능 저장 매체로서,
    상기 명령들은, 실행될 때, 하나 이상의 프로세서들로 하여금,
    음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림을 획득하도록 하며,
    상기 음장의 상기 공간 구성요소는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터에 의해 표현되며,
    상기 비트스트림은 상기 벡터에 대해 예측이 수행되었는지 여부를 나타내는 예측 모드를 표시하는 적어도 하나의 신택스 엘리먼트를, 이전 프레임으로부터, 재사용할지 여부에 대한 표시자를 더 포함하는, 비일시성 컴퓨터-판독가능 저장 매체.
  50. 효율적인 비트 사용을 수행하도록 구성된 디바이스로서,
    음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림을 획득하도록 구성된 하나 이상의 프로세서들로서, 상기 음장의 상기 공간 구성요소는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터에 의해 표현되며, 상기 비트스트림은 상기 벡터를 압축할 때 사용되는 허프만 테이블을 표시하는 신택스 엘리먼트를, 이전 프레임으로부터, 재사용할지 여부에 대한 표시자를 더 포함하는, 상기 하나 이상의 프로세서들; 및
    상기 비트스트림을 저장하도록 구성된 메모리를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  51. 효율적인 비트 사용을 수행하도록 구성된 디바이스로서,
    음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림을 획득하도록 구성된 하나 이상의 프로세서들로서, 상기 음장의 상기 공간 구성요소는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터에 의해 표현되며, 상기 비트스트림은 상기 벡터를 압축할 때 사용되는 벡터 양자화 코드북을 표시하는 신택스 엘리먼트를, 이전 프레임으로부터, 재사용할지 여부에 대한 표시자를 더 포함하는, 상기 하나 이상의 프로세서들; 및
    상기 비트스트림을 저장하도록 구성된 메모리를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
  52. 효율적인 비트 사용을 수행하도록 구성된 디바이스로서,
    음장의 공간 구성요소의 압축된 버전을 포함하는 비트스트림을 획득하도록 구성된 하나 이상의 프로세서들로서, 상기 음장의 상기 공간 구성요소는 구면 고조파들 도메인에서의 직교 공간 축을 나타내는 벡터에 의해 표현되며, 상기 비트스트림은 상기 벡터를 압축할 때 사용되는 양자화 모드를 표시하는 신택스 엘리먼트를, 이전 프레임으로부터, 재사용할지 여부에 대한 표시자를 더 포함하고, 상기 표시자는 상기 신택스 엘리먼트의 하나 이상의 비트들을 포함하는, 상기 하나 이상의 프로세서들; 및
    상기 비트스트림을 저장하도록 구성된 메모리를 포함하는, 효율적인 비트 사용을 수행하도록 구성된 디바이스.
KR1020167023092A 2014-01-30 2015-01-30 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시 KR101756612B1 (ko)

Applications Claiming Priority (37)

Application Number Priority Date Filing Date Title
US201461933731P 2014-01-30 2014-01-30
US201461933706P 2014-01-30 2014-01-30
US201461933714P 2014-01-30 2014-01-30
US61/933,714 2014-01-30
US61/933,706 2014-01-30
US61/933,731 2014-01-30
US201461949591P 2014-03-07 2014-03-07
US201461949583P 2014-03-07 2014-03-07
US61/949,583 2014-03-07
US61/949,591 2014-03-07
US201461994794P 2014-05-16 2014-05-16
US61/994,794 2014-05-16
US201462004128P 2014-05-28 2014-05-28
US201462004067P 2014-05-28 2014-05-28
US201462004147P 2014-05-28 2014-05-28
US62/004,128 2014-05-28
US62/004,147 2014-05-28
US62/004,067 2014-05-28
US201462019663P 2014-07-01 2014-07-01
US62/019,663 2014-07-01
US201462027702P 2014-07-22 2014-07-22
US62/027,702 2014-07-22
US201462028282P 2014-07-23 2014-07-23
US62/028,282 2014-07-23
US201462029173P 2014-07-25 2014-07-25
US62/029,173 2014-07-25
US201462032440P 2014-08-01 2014-08-01
US62/032,440 2014-08-01
US201462056286P 2014-09-26 2014-09-26
US201462056248P 2014-09-26 2014-09-26
US62/056,248 2014-09-26
US62/056,286 2014-09-26
US201562102243P 2015-01-12 2015-01-12
US62/102,243 2015-01-12
US14/609,190 US9489955B2 (en) 2014-01-30 2015-01-29 Indicating frame parameter reusability for coding vectors
US14/609,190 2015-01-29
PCT/US2015/013818 WO2015116952A1 (en) 2014-01-30 2015-01-30 Indicating frame parameter reusability for coding vectors

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020177018248A Division KR102095091B1 (ko) 2014-01-30 2015-01-30 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시

Publications (2)

Publication Number Publication Date
KR20160114637A KR20160114637A (ko) 2016-10-05
KR101756612B1 true KR101756612B1 (ko) 2017-07-10

Family

ID=53679595

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020167023093A KR101798811B1 (ko) 2014-01-30 2015-01-30 주변 고-차수 앰비소닉 계수들의 독립적인 프레임들의 코딩
KR1020177018248A KR102095091B1 (ko) 2014-01-30 2015-01-30 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시
KR1020167023092A KR101756612B1 (ko) 2014-01-30 2015-01-30 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020167023093A KR101798811B1 (ko) 2014-01-30 2015-01-30 주변 고-차수 앰비소닉 계수들의 독립적인 프레임들의 코딩
KR1020177018248A KR102095091B1 (ko) 2014-01-30 2015-01-30 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시

Country Status (19)

Country Link
US (6) US9502045B2 (ko)
EP (2) EP3100265B1 (ko)
JP (5) JP6208373B2 (ko)
KR (3) KR101798811B1 (ko)
CN (4) CN110827840B (ko)
AU (1) AU2015210791B2 (ko)
BR (2) BR112016017589B1 (ko)
CA (2) CA2933901C (ko)
CL (1) CL2016001898A1 (ko)
ES (1) ES2922451T3 (ko)
HK (1) HK1224073A1 (ko)
MX (1) MX350783B (ko)
MY (1) MY176805A (ko)
PH (1) PH12016501506B1 (ko)
RU (1) RU2689427C2 (ko)
SG (1) SG11201604624TA (ko)
TW (3) TWI595479B (ko)
WO (2) WO2015116949A2 (ko)
ZA (1) ZA201605973B (ko)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9667959B2 (en) 2013-03-29 2017-05-30 Qualcomm Incorporated RTP payload format designs
US9466305B2 (en) 2013-05-29 2016-10-11 Qualcomm Incorporated Performing positional analysis to code spherical harmonic coefficients
US9502044B2 (en) 2013-05-29 2016-11-22 Qualcomm Incorporated Compression of decomposed representations of a sound field
US9502045B2 (en) 2014-01-30 2016-11-22 Qualcomm Incorporated Coding independent frames of ambient higher-order ambisonic coefficients
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
KR102428794B1 (ko) 2014-03-21 2022-08-04 돌비 인터네셔널 에이비 고차 앰비소닉스(hoa) 신호를 압축하는 방법, 압축된 hoa 신호를 압축 해제하는 방법, hoa 신호를 압축하기 위한 장치, 및 압축된 hoa 신호를 압축 해제하기 위한 장치
EP2922057A1 (en) * 2014-03-21 2015-09-23 Thomson Licensing Method for compressing a Higher Order Ambisonics (HOA) signal, method for decompressing a compressed HOA signal, apparatus for compressing a HOA signal, and apparatus for decompressing a compressed HOA signal
US9852737B2 (en) 2014-05-16 2017-12-26 Qualcomm Incorporated Coding vectors decomposed from higher-order ambisonics audio signals
US9620137B2 (en) 2014-05-16 2017-04-11 Qualcomm Incorporated Determining between scalar and vector quantization in higher order ambisonic coefficients
US10770087B2 (en) 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
US9736606B2 (en) 2014-08-01 2017-08-15 Qualcomm Incorporated Editing of higher-order ambisonic audio data
US9747910B2 (en) 2014-09-26 2017-08-29 Qualcomm Incorporated Switching between predictive and non-predictive quantization techniques in a higher order ambisonics (HOA) framework
US20160093308A1 (en) * 2014-09-26 2016-03-31 Qualcomm Incorporated Predictive vector quantization techniques in a higher order ambisonics (hoa) framework
US9961467B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from channel-based audio to HOA
UA123399C2 (uk) * 2015-10-08 2021-03-31 Долбі Інтернешнл Аб Багаторівневе кодування стиснених представлень звуку або звукового поля
US10249312B2 (en) * 2015-10-08 2019-04-02 Qualcomm Incorporated Quantization of spatial vectors
CN108140392B (zh) * 2015-10-08 2023-04-18 杜比国际公司 用于压缩声音或声场表示的分层编解码
US9961475B2 (en) 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from object-based audio to HOA
US9959880B2 (en) * 2015-10-14 2018-05-01 Qualcomm Incorporated Coding higher-order ambisonic coefficients during multiple transitions
US10142755B2 (en) * 2016-02-18 2018-11-27 Google Llc Signal processing methods and systems for rendering audio on virtual loudspeaker arrays
US10108359B2 (en) * 2016-10-20 2018-10-23 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for efficient cache buffering in a system having parity arms to enable hardware acceleration
US10891962B2 (en) 2017-03-06 2021-01-12 Dolby International Ab Integrated reconstruction and rendering of audio signals
JP7055595B2 (ja) * 2017-03-29 2022-04-18 古河機械金属株式会社 Iii族窒化物半導体基板、及び、iii族窒化物半導体基板の製造方法
US20180338212A1 (en) * 2017-05-18 2018-11-22 Qualcomm Incorporated Layered intermediate compression for higher order ambisonic audio data
US10075802B1 (en) 2017-08-08 2018-09-11 Qualcomm Incorporated Bitrate allocation for higher order ambisonic audio data
US11070831B2 (en) * 2017-11-30 2021-07-20 Lg Electronics Inc. Method and device for processing video signal
US10999693B2 (en) 2018-06-25 2021-05-04 Qualcomm Incorporated Rendering different portions of audio data using different renderers
CN109101315B (zh) * 2018-07-04 2021-11-19 上海理工大学 基于包簇框架的云数据中心资源分配方法
DE112019004193T5 (de) * 2018-08-21 2021-07-15 Sony Corporation Audiowiedergabevorrichtung, audiowiedergabeverfahren und audiowiedergabeprogramm
CN112740325B (zh) 2018-08-21 2024-04-16 杜比国际公司 即时播放帧(ipf)的生成、传输及处理的方法、设备及系统
GB2577698A (en) * 2018-10-02 2020-04-08 Nokia Technologies Oy Selection of quantisation schemes for spatial audio parameter encoding
CA3122164C (en) 2018-12-07 2024-01-02 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus, method and computer program for encoding, decoding, scene processing and other procedures related to dirac based spatial audio coding using diffuse compensation
US20200402523A1 (en) * 2019-06-24 2020-12-24 Qualcomm Incorporated Psychoacoustic audio coding of ambisonic audio data
TW202123220A (zh) 2019-10-30 2021-06-16 美商杜拜研究特許公司 使用方向性元資料之多通道音頻編碼及解碼
US10904690B1 (en) * 2019-12-15 2021-01-26 Nuvoton Technology Corporation Energy and phase correlated audio channels mixer
GB2590650A (en) * 2019-12-23 2021-07-07 Nokia Technologies Oy The merging of spatial audio parameters
CN116348951A (zh) * 2020-07-30 2023-06-27 弗劳恩霍夫应用研究促进协会 用于编码音频信号或用于解码经编码音频场景的设备、方法及计算机程序
CN111915533B (zh) * 2020-08-10 2023-12-01 上海金桥信息股份有限公司 一种基于低动态范围的高精图像信息提取方法
US11743670B2 (en) 2020-12-18 2023-08-29 Qualcomm Incorporated Correlation-based rendering with multiple distributed streams accounting for an occlusion for six degree of freedom applications
CN115346537A (zh) * 2021-05-14 2022-11-15 华为技术有限公司 一种音频编码、解码方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130028427A1 (en) 2010-04-13 2013-01-31 Yuki Yamamoto Signal processing apparatus and signal processing method, encoder and encoding method, decoder and decoding method, and program

Family Cites Families (143)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1159034B (it) 1983-06-10 1987-02-25 Cselt Centro Studi Lab Telecom Sintetizzatore vocale
US5012518A (en) 1989-07-26 1991-04-30 Itt Corporation Low-bit-rate speech coder using LPC data reduction processing
EP0520068B1 (en) 1991-01-08 1996-05-15 Dolby Laboratories Licensing Corporation Encoder/decoder for multidimensional sound fields
US5757927A (en) 1992-03-02 1998-05-26 Trifield Productions Ltd. Surround sound apparatus
US5790759A (en) 1995-09-19 1998-08-04 Lucent Technologies Inc. Perceptual noise masking measure based on synthesis filter frequency response
US5819215A (en) 1995-10-13 1998-10-06 Dobson; Kurt Method and apparatus for wavelet based data compression having adaptive bit rate control for compression of digital audio or other sensory data
JP3849210B2 (ja) 1996-09-24 2006-11-22 ヤマハ株式会社 音声符号化復号方式
US5821887A (en) 1996-11-12 1998-10-13 Intel Corporation Method and apparatus for decoding variable length codes
US6167375A (en) 1997-03-17 2000-12-26 Kabushiki Kaisha Toshiba Method for encoding and decoding a speech signal including background noise
US6263312B1 (en) 1997-10-03 2001-07-17 Alaris, Inc. Audio compression and decompression employing subband decomposition of residual signal and distortion reduction
AUPP272698A0 (en) 1998-03-31 1998-04-23 Lake Dsp Pty Limited Soundfield playback from a single speaker system
EP1018840A3 (en) 1998-12-08 2005-12-21 Canon Kabushiki Kaisha Digital receiving apparatus and method
US6370502B1 (en) 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
US6782360B1 (en) * 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US20020049586A1 (en) 2000-09-11 2002-04-25 Kousuke Nishio Audio encoder, audio decoder, and broadcasting system
JP2002094989A (ja) 2000-09-14 2002-03-29 Pioneer Electronic Corp ビデオ信号符号化装置及びビデオ信号符号化方法
US20020169735A1 (en) 2001-03-07 2002-11-14 David Kil Automatic mapping from data to preprocessing algorithms
GB2379147B (en) 2001-04-18 2003-10-22 Univ York Sound processing
US20030147539A1 (en) 2002-01-11 2003-08-07 Mh Acoustics, Llc, A Delaware Corporation Audio system based on at least second-order eigenbeams
US7262770B2 (en) 2002-03-21 2007-08-28 Microsoft Corporation Graphics image rendering with radiance self-transfer for low-frequency lighting environments
US8160269B2 (en) 2003-08-27 2012-04-17 Sony Computer Entertainment Inc. Methods and apparatuses for adjusting a listening area for capturing sounds
ATE543179T1 (de) 2002-09-04 2012-02-15 Microsoft Corp Entropische kodierung mittels anpassung des kodierungsmodus zwischen niveau- und lauflängenniveau-modus
FR2844894B1 (fr) 2002-09-23 2004-12-17 Remy Henri Denis Bruno Procede et systeme de traitement d'une representation d'un champ acoustique
US6961696B2 (en) * 2003-02-07 2005-11-01 Motorola, Inc. Class quantization for distributed speech recognition
US7920709B1 (en) 2003-03-25 2011-04-05 Robert Hickling Vector sound-intensity probes operating in a half-space
JP2005086486A (ja) 2003-09-09 2005-03-31 Alpine Electronics Inc オーディオ装置およびオーディオ処理方法
US7433815B2 (en) 2003-09-10 2008-10-07 Dilithium Networks Pty Ltd. Method and apparatus for voice transcoding between variable rate coders
KR100556911B1 (ko) * 2003-12-05 2006-03-03 엘지전자 주식회사 무선 동영상 스트리밍 서비스를 위한 동영상 데이터의 구조
US7283634B2 (en) 2004-08-31 2007-10-16 Dts, Inc. Method of mixing audio channels using correlated outputs
US7630902B2 (en) * 2004-09-17 2009-12-08 Digital Rise Technology Co., Ltd. Apparatus and methods for digital audio coding using codebook application ranges
FR2880755A1 (fr) 2005-01-10 2006-07-14 France Telecom Procede et dispositif d'individualisation de hrtfs par modelisation
KR100636229B1 (ko) * 2005-01-14 2006-10-19 학교법인 성균관대학 신축형 부호화를 위한 적응적 엔트로피 부호화 및 복호화방법과 그 장치
US7271747B2 (en) 2005-05-10 2007-09-18 Rice University Method and apparatus for distributed compressed sensing
ATE378793T1 (de) 2005-06-23 2007-11-15 Akg Acoustics Gmbh Methode zur modellierung eines mikrofons
US8510105B2 (en) 2005-10-21 2013-08-13 Nokia Corporation Compression and decompression of data vectors
WO2007048900A1 (fr) 2005-10-27 2007-05-03 France Telecom Individualisation de hrtfs utilisant une modelisation par elements finis couplee a un modele correctif
US8190425B2 (en) 2006-01-20 2012-05-29 Microsoft Corporation Complex cross-correlation parameters for multi-channel audio
US8379868B2 (en) 2006-05-17 2013-02-19 Creative Technology Ltd Spatial audio coding based on universal spatial cues
US8712061B2 (en) 2006-05-17 2014-04-29 Creative Technology Ltd Phase-amplitude 3-D stereo encoder and decoder
US8345899B2 (en) 2006-05-17 2013-01-01 Creative Technology Ltd Phase-amplitude matrixed surround decoder
US20080004729A1 (en) 2006-06-30 2008-01-03 Nokia Corporation Direct encoding into a directional audio coding format
DE102006053919A1 (de) 2006-10-11 2008-04-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen einer Anzahl von Lautsprechersignalen für ein Lautsprecher-Array, das einen Wiedergaberaum definiert
US7663623B2 (en) 2006-12-18 2010-02-16 Microsoft Corporation Spherical harmonics scaling
JP2008227946A (ja) * 2007-03-13 2008-09-25 Toshiba Corp 画像復号装置
US9015051B2 (en) 2007-03-21 2015-04-21 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Reconstruction of audio channels with direction parameters indicating direction of origin
US8908873B2 (en) 2007-03-21 2014-12-09 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method and apparatus for conversion between multi-channel audio formats
WO2008127536A2 (en) * 2007-04-12 2008-10-23 Thomson Licensing Methods and apparatus for video usability information (vui) for scalable video coding (svc)
US7885819B2 (en) 2007-06-29 2011-02-08 Microsoft Corporation Bitstream syntax for multi-process audio decoding
WO2009007639A1 (fr) 2007-07-03 2009-01-15 France Telecom Quantification apres transformation lineaire combinant les signaux audio d'une scene sonore, codeur associe
CN101884065B (zh) 2007-10-03 2013-07-10 创新科技有限公司 用于双耳再现和格式转换的空间音频分析和合成的方法
JP5419714B2 (ja) 2008-01-16 2014-02-19 パナソニック株式会社 ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法
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
RU2565008C2 (ru) 2008-03-10 2015-10-10 Фраунхофер-Гезелльшафт цур Фёрдерунг дер ангевандтен Форшунг Е.Ф. Устройство и метод для обработки аудио сигнала, содержащего переходный сигнал
US8219409B2 (en) 2008-03-31 2012-07-10 Ecole Polytechnique Federale De Lausanne Audio wave field encoding
EP2287836B1 (en) 2008-05-30 2014-10-15 Panasonic Intellectual Property Corporation of America Encoder and encoding method
CN102089634B (zh) 2008-07-08 2012-11-21 布鲁尔及凯尔声音及振动测量公司 重建声学场
EP2169670B1 (en) * 2008-09-25 2016-07-20 LG Electronics Inc. An apparatus for processing an audio signal and method thereof
GB0817950D0 (en) 2008-10-01 2008-11-05 Univ Southampton Apparatus and method for sound reproduction
JP5697301B2 (ja) 2008-10-01 2015-04-08 株式会社Nttドコモ 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、動画像復号プログラム、及び動画像符号化・復号システム
US8207890B2 (en) 2008-10-08 2012-06-26 Qualcomm Atheros, Inc. Providing ephemeris data and clock corrections to a satellite navigation system receiver
US8391500B2 (en) 2008-10-17 2013-03-05 University Of Kentucky Research Foundation Method and system for creating three-dimensional spatial audio
FR2938688A1 (fr) 2008-11-18 2010-05-21 France Telecom Codage avec mise en forme du bruit dans un codeur hierarchique
EP2374123B1 (fr) 2008-12-15 2019-04-10 Orange Codage perfectionne de signaux audionumeriques multicanaux
EP2374124B1 (fr) 2008-12-15 2013-05-29 France Telecom Codage perfectionne de signaux audionumériques multicanaux
EP2205007B1 (en) 2008-12-30 2019-01-09 Dolby International AB Method and apparatus for three-dimensional acoustic field encoding and optimal reconstruction
GB2476747B (en) 2009-02-04 2011-12-21 Richard Furse Sound system
EP2237270B1 (en) 2009-03-30 2012-07-04 Nuance Communications, Inc. A method for determining a noise reference signal for noise compensation and/or noise reduction
GB0906269D0 (en) 2009-04-09 2009-05-20 Ntnu Technology Transfer As Optimal modal beamformer for sensor arrays
WO2011022027A2 (en) 2009-05-08 2011-02-24 University Of Utah Research Foundation Annular thermoacoustic energy converter
CN102227696B (zh) 2009-05-21 2014-09-24 松下电器产业株式会社 触感处理装置
ES2690164T3 (es) 2009-06-25 2018-11-19 Dts Licensing Limited Dispositivo y método para convertir una señal de audio espacial
WO2011041834A1 (en) 2009-10-07 2011-04-14 The University Of Sydney Reconstruction of a recorded sound field
WO2011044898A1 (en) * 2009-10-15 2011-04-21 Widex A/S Hearing aid with audio codec and method
PL2491555T3 (pl) * 2009-10-20 2014-08-29 Fraunhofer Ges Forschung Wielotrybowy kodek audio
EP2510515B1 (en) 2009-12-07 2014-03-19 Dolby Laboratories Licensing Corporation Decoding of multichannel audio encoded bit streams using adaptive hybrid transformation
CN102104452B (zh) 2009-12-22 2013-09-11 华为技术有限公司 信道状态信息反馈方法、信道状态信息获得方法及设备
TWI557723B (zh) * 2010-02-18 2016-11-11 杜比實驗室特許公司 解碼方法及系統
WO2011104463A1 (fr) 2010-02-26 2011-09-01 France Telecom Compression de flux audio multicanal
AU2011226143B9 (en) 2010-03-10 2015-03-19 Dolby International Ab Audio signal decoder, audio signal encoder, method for decoding an audio signal, method for encoding an audio signal and computer program using a pitch-dependent adaptation of a coding context
AU2011231565B2 (en) 2010-03-26 2014-08-28 Dolby International Ab Method and device for decoding an audio soundfield representation for audio playback
US9053697B2 (en) 2010-06-01 2015-06-09 Qualcomm Incorporated Systems, methods, devices, apparatus, and computer program products for audio equalization
US9357229B2 (en) * 2010-07-28 2016-05-31 Qualcomm Incorporated Coding motion vectors in video coding
NZ587483A (en) 2010-08-20 2012-12-21 Ind Res Ltd Holophonic speaker system with filters that are pre-configured based on acoustic transfer functions
WO2012025580A1 (en) 2010-08-27 2012-03-01 Sonicemotion Ag Method and device for enhanced sound field reproduction of spatially encoded audio input signals
US9084049B2 (en) 2010-10-14 2015-07-14 Dolby Laboratories Licensing Corporation Automatic equalization using adaptive frequency-domain filtering and dynamic fast convolution
US9552840B2 (en) 2010-10-25 2017-01-24 Qualcomm Incorporated Three-dimensional sound capturing and reproducing with multi-microphones
EP2450880A1 (en) * 2010-11-05 2012-05-09 Thomson Licensing Data structure for Higher Order Ambisonics audio data
KR101401775B1 (ko) 2010-11-10 2014-05-30 한국전자통신연구원 스피커 어레이 기반 음장 합성을 이용한 음장 재생 장치 및 방법
EP2469741A1 (en) * 2010-12-21 2012-06-27 Thomson Licensing Method and apparatus for encoding and decoding successive frames of an ambisonics representation of a 2- or 3-dimensional sound field
FR2969805A1 (fr) * 2010-12-23 2012-06-29 France Telecom Codage bas retard alternant codage predictif et codage par transformee
US20120163622A1 (en) 2010-12-28 2012-06-28 Stmicroelectronics Asia Pacific Pte Ltd Noise detection and reduction in audio devices
US8809663B2 (en) 2011-01-06 2014-08-19 Hank Risan Synthetic simulation of a media recording
US9008176B2 (en) * 2011-01-22 2015-04-14 Qualcomm Incorporated Combined reference picture list construction for video coding
US20120189052A1 (en) * 2011-01-24 2012-07-26 Qualcomm Incorporated Signaling quantization parameter changes for coded units in high efficiency video coding (hevc)
CA2833868C (en) 2011-04-21 2019-08-20 Samsung Electronics Co., Ltd. Apparatus for quantizing linear predictive coding coefficients, sound encoding apparatus, apparatus for de-quantizing linear predictive coding coefficients, sound decoding apparatus, and electronic device therefor
EP2541547A1 (en) 2011-06-30 2013-01-02 Thomson Licensing Method and apparatus for changing the relative positions of sound objects contained within a higher-order ambisonics representation
US8548803B2 (en) 2011-08-08 2013-10-01 The Intellisis Corporation System and method of processing a sound signal including transforming the sound signal into a frequency-chirp domain
US9641951B2 (en) 2011-08-10 2017-05-02 The Johns Hopkins University System and method for fast binaural rendering of complex acoustic scenes
EP2560161A1 (en) 2011-08-17 2013-02-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Optimal mixing matrices and usage of decorrelators in spatial audio processing
EP2592845A1 (en) 2011-11-11 2013-05-15 Thomson Licensing Method and Apparatus for processing signals of a spherical microphone array on a rigid sphere used for generating an Ambisonics representation of the sound field
EP2592846A1 (en) 2011-11-11 2013-05-15 Thomson Licensing Method and apparatus for processing signals of a spherical microphone array on a rigid sphere used for generating an Ambisonics representation of the sound field
US9584912B2 (en) 2012-01-19 2017-02-28 Koninklijke Philips N.V. Spatial audio rendering and encoding
EP2665208A1 (en) 2012-05-14 2013-11-20 Thomson Licensing Method and apparatus for compressing and decompressing a Higher Order Ambisonics signal representation
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
KR102201034B1 (ko) 2012-07-16 2021-01-11 돌비 인터네셔널 에이비 오디오 재생을 위한 오디오 음장 표현을 렌더링하는 방법 및 장치
EP2688066A1 (en) 2012-07-16 2014-01-22 Thomson Licensing Method and apparatus for encoding multi-channel HOA audio signals for noise reduction, and method and apparatus for decoding multi-channel HOA audio signals for noise reduction
US9473870B2 (en) 2012-07-16 2016-10-18 Qualcomm Incorporated Loudspeaker position compensation with 3D-audio hierarchical coding
EP2688065A1 (en) * 2012-07-16 2014-01-22 Thomson Licensing Method and apparatus for avoiding unmasking of coding noise when mixing perceptually coded multi-channel audio signals
KR102201713B1 (ko) 2012-07-19 2021-01-12 돌비 인터네셔널 에이비 다채널 오디오 신호들의 렌더링을 향상시키기 위한 방법 및 디바이스
US9479886B2 (en) 2012-07-20 2016-10-25 Qualcomm Incorporated Scalable downmix design with feedback for object-based surround codec
US9761229B2 (en) 2012-07-20 2017-09-12 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for audio object clustering
JP5967571B2 (ja) 2012-07-26 2016-08-10 本田技研工業株式会社 音響信号処理装置、音響信号処理方法、及び音響信号処理プログラム
PL2915166T3 (pl) 2012-10-30 2019-04-30 Nokia Technologies Oy Sposób i urządzenie do kwantyzacji odpornego wektora
US9336771B2 (en) 2012-11-01 2016-05-10 Google Inc. Speech recognition using non-parametric models
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
US9913064B2 (en) 2013-02-07 2018-03-06 Qualcomm Incorporated Mapping virtual speakers to physical speakers
US9883310B2 (en) 2013-02-08 2018-01-30 Qualcomm Incorporated Obtaining symmetry information for higher order ambisonic audio renderers
EP2765791A1 (en) 2013-02-08 2014-08-13 Thomson Licensing Method and apparatus for determining directions of uncorrelated sound sources in a higher order ambisonics representation of a sound field
US9609452B2 (en) 2013-02-08 2017-03-28 Qualcomm Incorporated Obtaining sparseness information for higher order ambisonic audio renderers
US10178489B2 (en) 2013-02-08 2019-01-08 Qualcomm Incorporated Signaling audio rendering information in a bitstream
US9338420B2 (en) 2013-02-15 2016-05-10 Qualcomm Incorporated Video analysis assisted generation of multi-channel audio data
US9959875B2 (en) 2013-03-01 2018-05-01 Qualcomm Incorporated Specifying spherical harmonic and/or higher order ambisonics coefficients in bitstreams
BR112015021520B1 (pt) 2013-03-05 2021-07-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V Aparelho e método para criar um ou mais sinais do canal de saída de áudio dependendo de dois ou mais sinais do canal de entrada de áudio
US9197962B2 (en) 2013-03-15 2015-11-24 Mh Acoustics Llc Polyhedral audio system based on at least second-order eigenbeams
US9170386B2 (en) 2013-04-08 2015-10-27 Hon Hai Precision Industry Co., Ltd. Opto-electronic device assembly
EP2800401A1 (en) 2013-04-29 2014-11-05 Thomson Licensing Method and Apparatus for compressing and decompressing a Higher Order Ambisonics representation
US9502044B2 (en) 2013-05-29 2016-11-22 Qualcomm Incorporated Compression of decomposed representations of a sound field
US9384741B2 (en) 2013-05-29 2016-07-05 Qualcomm Incorporated Binauralization of rotated higher order ambisonics
US9466305B2 (en) 2013-05-29 2016-10-11 Qualcomm Incorporated Performing positional analysis to code spherical harmonic coefficients
CN105264595B (zh) * 2013-06-05 2019-10-01 杜比国际公司 用于编码和解码音频信号的方法和装置
US9830918B2 (en) 2013-07-05 2017-11-28 Dolby International Ab Enhanced soundfield coding using parametric component generation
TWI631553B (zh) 2013-07-19 2018-08-01 瑞典商杜比國際公司 將以<i>L</i><sub>1</sub>個頻道為基礎之輸入聲音訊號產生至<i>L</i><sub>2</sub>個揚聲器頻道之方法及裝置,以及得到一能量保留混音矩陣之方法及裝置,用以將以輸入頻道為基礎之聲音訊號混音以用於<i>L</i><sub>1</sub>個聲音頻道至<i>L</i><sub>2</sub>個揚聲器頻道
US20150127354A1 (en) 2013-10-03 2015-05-07 Qualcomm Incorporated Near field compensation for decomposed representations of a sound field
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
US9502045B2 (en) 2014-01-30 2016-11-22 Qualcomm Incorporated Coding independent frames of ambient higher-order ambisonic coefficients
US20150264483A1 (en) 2014-03-14 2015-09-17 Qualcomm Incorporated Low frequency rendering of higher-order ambisonic audio data
US9620137B2 (en) 2014-05-16 2017-04-11 Qualcomm Incorporated Determining between scalar and vector quantization in higher order ambisonic coefficients
US10770087B2 (en) 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
US9852737B2 (en) 2014-05-16 2017-12-26 Qualcomm Incorporated Coding vectors decomposed from higher-order ambisonics audio signals
US10142642B2 (en) 2014-06-04 2018-11-27 Qualcomm Incorporated Block adaptive color-space conversion coding
US20160093308A1 (en) 2014-09-26 2016-03-31 Qualcomm Incorporated Predictive vector quantization techniques in a higher order ambisonics (hoa) framework
US9747910B2 (en) 2014-09-26 2017-08-29 Qualcomm Incorporated Switching between predictive and non-predictive quantization techniques in a higher order ambisonics (HOA) framework

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130028427A1 (en) 2010-04-13 2013-01-31 Yuki Yamamoto Signal processing apparatus and signal processing method, encoder and encoding method, decoder and decoding method, and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Andrew Wabnitz, et al. Time domain reconstruction of spatial sound fields using compressed sensing. IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). 2011. pp.465-468.

Also Published As

Publication number Publication date
RU2016130323A3 (ko) 2018-08-30
RU2689427C2 (ru) 2019-05-28
JP2017507351A (ja) 2017-03-16
TW201537561A (zh) 2015-10-01
PH12016501506A1 (en) 2017-02-06
BR112016017283B1 (pt) 2022-09-06
RU2016130323A (ru) 2018-03-02
KR20170081296A (ko) 2017-07-11
WO2015116949A2 (en) 2015-08-06
BR112016017589A8 (pt) 2021-06-29
TWI603322B (zh) 2017-10-21
CN110827840A (zh) 2020-02-21
TW201535354A (zh) 2015-09-16
JP6542295B2 (ja) 2019-07-10
AU2015210791A1 (en) 2016-06-23
AU2015210791B2 (en) 2018-09-27
TW201738880A (zh) 2017-11-01
JP2017201413A (ja) 2017-11-09
SG11201604624TA (en) 2016-08-30
US20170032798A1 (en) 2017-02-02
US9489955B2 (en) 2016-11-08
CN111383645B (zh) 2023-12-01
CA2933901A1 (en) 2015-08-06
HK1224073A1 (zh) 2017-08-11
US9502045B2 (en) 2016-11-22
US9747911B2 (en) 2017-08-29
CN111383645A (zh) 2020-07-07
BR112016017589B1 (pt) 2022-09-06
TWI618052B (zh) 2018-03-11
US20150213805A1 (en) 2015-07-30
JP6542296B2 (ja) 2019-07-10
US20170032799A1 (en) 2017-02-02
CN105917408B (zh) 2020-02-21
CN106415714B (zh) 2019-11-26
JP2017201412A (ja) 2017-11-09
US9653086B2 (en) 2017-05-16
WO2015116952A1 (en) 2015-08-06
US9747912B2 (en) 2017-08-29
KR101798811B1 (ko) 2017-11-16
PH12016501506B1 (en) 2017-02-06
JP2017509012A (ja) 2017-03-30
CN105917408A (zh) 2016-08-31
BR112016017283A2 (ko) 2017-08-08
CN110827840B (zh) 2023-09-12
JP6169805B2 (ja) 2017-07-26
TWI595479B (zh) 2017-08-11
US20170032797A1 (en) 2017-02-02
ES2922451T3 (es) 2022-09-15
CA2933901C (en) 2019-05-14
WO2015116949A3 (en) 2015-09-24
MX350783B (es) 2017-09-18
BR112016017589A2 (pt) 2017-08-08
CA2933734C (en) 2020-10-27
JP2017215590A (ja) 2017-12-07
EP3100264A2 (en) 2016-12-07
EP3100265B1 (en) 2022-06-22
KR20160114638A (ko) 2016-10-05
US20150213809A1 (en) 2015-07-30
US9754600B2 (en) 2017-09-05
CL2016001898A1 (es) 2017-03-10
CA2933734A1 (en) 2015-08-06
KR102095091B1 (ko) 2020-03-30
EP3100265A1 (en) 2016-12-07
CN106415714A (zh) 2017-02-15
US20170032794A1 (en) 2017-02-02
MX2016009785A (es) 2016-11-14
ZA201605973B (en) 2017-05-31
JP6208373B2 (ja) 2017-10-04
KR20160114637A (ko) 2016-10-05
MY176805A (en) 2020-08-21
JP6542297B2 (ja) 2019-07-10

Similar Documents

Publication Publication Date Title
KR101756612B1 (ko) 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시
KR102032021B1 (ko) 고차 앰비소닉스 오디오 신호들로부터 분해된 벡터들의 코딩
KR101958529B1 (ko) 주변 고-차수 앰비소닉 계수들의 전이
KR102329373B1 (ko) 고차 앰비소닉 오디오 신호들로부터 분해된 코딩 벡터들에 대한 코드북들 선택
EP3143615B1 (en) Determining between scalar and vector quantization in higher order ambisonic coefficients
KR20170010792A (ko) 고차 앰비소닉 계수들의 폐쇄 루프 양자화

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant