KR20170010367A - 고차 앰비소닉 신호들간의 크로스페이딩 - Google Patents

고차 앰비소닉 신호들간의 크로스페이딩 Download PDF

Info

Publication number
KR20170010367A
KR20170010367A KR1020167032935A KR20167032935A KR20170010367A KR 20170010367 A KR20170010367 A KR 20170010367A KR 1020167032935 A KR1020167032935 A KR 1020167032935A KR 20167032935 A KR20167032935 A KR 20167032935A KR 20170010367 A KR20170010367 A KR 20170010367A
Authority
KR
South Korea
Prior art keywords
shcs
peripheral
unit
audio
cross
Prior art date
Application number
KR1020167032935A
Other languages
English (en)
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 KR20170010367A publication Critical patent/KR20170010367A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/002Dynamic bit allocation

Landscapes

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

Abstract

일반적으로, 구면 조화 계수들의 세트들을 크로스페이딩 (crossfading) 하기 위한 기법들이 설명된다. 메모리 및 프로세서를 포함하는 오디오 인코딩 디바이스 또는 오디오 디코딩 디바이스가 그 기법들을 수행하도록 구성될 수도 있다. 메모리는 구면 조화 계수 (SHC) 들의 제 1 세트 및 SHC 들의 제 2 세트를 저장하도록 구성될 수도 있다. SHC 들의 제 1 세트는 제 1 음장을 기술한다. SHC 들의 제 2 세트는 제 2 음장을 기술한다. 프로세서는 크로스페이딩된 SHC 들의 제 1 세트를 획득하기 위하여 상기 SHC들의 제 1 세트와 상기 SHC들의 제 2 세트 사이에 크로스페이딩하도록 구성될 수도 있다.

Description

고차 앰비소닉 신호들간의 크로스페이딩{CROSSFADING BETWEEN HIGHER ORDER AMBISONIC SIGNALS}
본원은 하기 미국 가출원들의 혜택을 주장한다:
2014년 5월 16일자로 출원되고, 발명의 명칭이 “CROSSFADING BETWEEN HIGHER ORDER AMBISONIC SIGNALS” 인 미국 가출원 번호 61/994,763;
2014년 5월 28일로 출원되고, 발명의 명칭이 “CROSSFADING BETWEEN HIGHER ORDER AMBISONIC SIGNALS” 인 미국 가출원 번호 62/004,076; 및
2015년 2월 19일자로 출원되고, 발명의 명칭이 “CROSSFADING BETWEEN HIGHER ORDER AMBISONIC SIGNALS” 인 미국 가출원 번호 62/118,434,
앞서 열거된 미국 가출원들의 각각은 마치 그들 각각의 전부가 본원에 제시되는 것처럼 참조에 의해 원용된다.
기술 분야
본 개시물은 오디오 데이터, 좀더 구체적으로는, 고차 앰비소닉오디오 데이터의 코딩에 관한 것이다.
고차 앰비소닉스 (higher-order ambisonics; HOA) 신호 (종종 복수의 구면 조화 계수들 (spherical harmonic coefficients; SHC) 또는 다른 계층적 엘리먼트들에 의해 표현됨) 는 음장의 3차원적 표현이다. HOA 또는 SHC 표현은, SHC 신호로부터 렌더링되는 멀티-채널 오디오 신호를 플레이백하는데 사용되는 로컬 스피커 기하학적 구조 (local speaker geometry) 와 상관 없는 방식으로 이 음장을 표현할 수도 있다. 이 SHC 신호는 또한 이 SHC 신호가 5.1 오디오 채널 포맷 또는 7.1 오디오 채널 포맷과 같은, 널리 공지된 그리고 많이 채택된 멀티-채널 포맷들로 렌더링될 수도 있으므로, 역방향 호환성 (backwards compatibility) 을 용이하게 할 수도 있다. 따라서, SHC 표현은 역방향 호환성도 수용하는 더 나은 음장의 표현을 가능하게 할 수도 있다.
개요
일반적으로, 주변 HOA 계수 (ambient HOA coefficient) 들간의 크로스페이딩 (crossfading) 을 위한 기법들이 설명된다. 예를 들어, 에너지 보상된 도메인에서 주변 HOA 계수들의 현재 세트와 주변 HOA 계수들의 이전 세트 사이의 크로스페이딩을 위한 기법들이 설명된다. 이런 식으로, 본 개시의 기법들은 주변 HOA 계수들의 이전 세트와 주변 HOA 계수들의 현재 세트 사이의 천이를 매끄럽게할 수도 있다.
일 양태에서, 방법은 크로스페이딩된 주변 구면 조화 계수 (SHC) 들의 제 1 세트를 획득하기 위하여 디바이스에 의해, 주변 SHC 들의 제 1 세트와 주변 SHC 들의 제 2 세트 사이에 크로스페이딩하는 단계를 포함하고, SHC 들의 제 1 세트는 제 1 음장을 기술하고 SHC 들의 제 2 세트는 제 2 음장을 기술한다.
또 다른 양태에서, 디바이스는, 하나 이상의 프로세서들; 및 크로스페이딩된 주변 SHC 들의 제 1 세트를 획득하기 위하여 주변 SHC 들의 제 1 세트와 주변 SHC 들의 제 2 세트 사이에 크로스페이딩하도록 하나 이상의 프로세서들에 의해 실행가능한 적어도 하나의 모듈을 포함하고, SHC 들의 제 1 세트는 제 1 음장을 기술하고 SHC 들의 제 2 세트는 제 2 음장을 기술한다.
또 다른 양태에서, 디바이스는 주변 SHC들의 제 1 세트를 획득하는 수단으로서, SHC 들의 제 1 세트는 제 1 음장을 기술하는, 상기 주변 SHC들의 제 1 세트를 획득하는 수단; 주변 SHC들의 제 2 세트를 획득하는 수단으로서, SHC 들의 제 2 세트는 제 2 음장을 기술하는, 상기 주변 SHC들의 제 2 세트를 획득하는 수단; 및 크로스페이딩된 주변 SHC 들의 제 1 세트를 획득하기 위하여 주변 SHC 들의 제 1 세트와 주변 SHC 들의 제 2 세트 사이에 크로스페이딩하는 수단을 포함한다.
또 다른 양태에서, 컴퓨터 판독가능 저장 매체는 명령들을 저장하고, 그 명령들은, 실행될 때, 디바이스의 하나 이상의 프로세서들로 하여금, 크로스페이딩된 주변 SHC 들의 제 1 세트를 획득하기 위하여 주변 SHC 들의 제 1 세트와 주변 SHC 들의 제 2 세트 사이에 크로스페이딩하게 하고, SHC 들의 제 1 세트를 제 1 음장을 기술하고 SHC 들의 제 2 세트는 제 2 음장을 기술한다.
또 다른 양태에서, 방법은 크로스페이딩된 SHC 들의 제 1 세트를 획득하기 위하여 디바이스에 의해, 구면 조화 계수 (SHC) 들의 제 1 세트와 SHC 들의 제 2 세트 사이에 크로스페이딩하는 단계를 포함하고, SHC 들의 제 1 세트는 제 1 음장을 기술하고 SHC 들의 제 2 세트는 제 2 음장을 기술한다.
또 다른 양태에서, 오디오 디코딩 디바이스는 구면 조화 계수 (SHC) 들의 제 1 세트와 SHC 들의 제 2 세트를 저장하도록 구성된 메모리를 포함하고, SHC 들의 제 1 세트는 제 1 음장을 기술하고 SHC 들의 제 2 세트는 제 2 음장을 기술한다. 오디오 디코딩 디바이스는, 크로스페이딩된 주변 SHC 들의 제 1 세트를 획득하기 위하여 SHC 들의 제 1 세트와 SHC 들의 제 2 세트 사이에 크로스페이딩하도록 구성된 하나 이상의 프로세서들을 더 포함한다.
또 다른 양태에서, 오디오 인코딩 디바이스는 구면 조화 계수 (SHC) 들의 제 1 세트와 SHC 들의 제 2 세트을 저장하도록 구성된 메모리를 포함하고, SHC 들의 제 1 세트는 제 1 음장을 기술하고 SHC 들의 제 2 세트는 제 2 음장을 기술한다. 오디오 인코딩 디바이스는 또한, 크로스페이딩된 SHC 들의 제 1 세트를 획득하기 위하여 SHC 들의 제 1 세트와 SHC 들의 제 2 세트 사이에 크로스페이딩하도록 구성된 하나 이상의 프로세서들을 포함한다.
또 다른 양태에서, 장치는 구면 조화 계수 (SHC) 들의 제 1 세트와 SHC 들의 제 2 세트를 저장하는 수단으로서, SHC 들의 제 1 세트는 제 1 음장을 기술하고 SHC 들의 제 2 세트는 제 2 음장을 기술하는, 상기 SHC 들을 저장하는 수단, 및 크로스페이딩된 SHC 들의 제 1 세트를 획득하기 위하여 SHC 들의 제 1 세트와 SHC 들의 제 2 세트 사이에 크로스페이딩하는 수단을 포함한다.
본 기법들의 하나 이상의 양태들의 상세들은 첨부 도면 및 아래의 설명에 제시되어 있다. 이들 기법들의 다른 특징, 목적 및 이점들은 상세한 설명 및 도면, 그리고 특허청구범위로부터 분명해질 것이다.
도 1 은 여러 차수 (order) 들 및 하위-차수 (sub-order) 들의 구면 조화 기저 함수 (spherical harmonic basis function) 들을 예시하는 도면이다.
도 2 는 본 개시에서 설명하는 기법들의 여러 양태들을 수행할 수도 있는 시스템을 예시하는 도면이다.
도 3 은 본 개시에서 설명하는 기법들의 여러 양태들을 수행할 수도 있는 도 2 의 예에 나타낸 오디오 인코딩 디바이스의 일 예를 보다 자세하게 예시하는 블록도이다.
도 4 는 도 2 의 오디오 디코딩 디바이스를 보다 자세하게 예시하는 블록도이다.
도 5 는 본 개시에서 설명되는 벡터 기반 합성 기법들의 여러 양태들을 수행할 때에 오디오 인코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
도 6 은 본 개시에서 설명되는 기법들의 여러 양태들을 수행함에 있어서 오디오 인코딩 디바이스의 예시적인 동작을 예시하는 플로우차트이다.
도 7 및 도 8은 압축된 공간 구성요소들을 지정할 수도 있는 비트스트림을 보다 자세하게 예시하는 도면이다.
도 9는 압축된 공간 구성요소들을 지정할 수도 있는 비트스트림의 일 부분을 보다 자세하게 예시하는 도면이다.
도 10은 여기에 기재된 바처럼 시공간적 내삽 (spatio-temporal interpolation) 을 획득하기 위한 기법들의 표현을 예시한다.
도 11은 여기에 기재된 기법들에 따른 다차원 신호를 위한 순차적인 SVD 블록들을 위한 인위 (artificial) US 매트릭스들, 즉 US1 및 US2 를 예시하는 블록도이다.
도 12는 본 개시에 기재된 기법들에 따라 특이 값 분해 및 시공간 성분들의 평활화를 사용하여 고차 앰비소닉스 (HOA) 신호의 후속 프레임들의 분해를 예시하는 블록도이다.
도 13은 본원에서 설명하는 하나 이상의 기법들을 수행하도록 구성된 하나 이상의 오디오 인코더 및 오디오 디코더를 예시하는 도면이다.
도 14 는 도 3의 예에 보여진 오디오 인코딩 디바이스의 크로스페이드 유닛을 보다 자세하게 예시하는 블록도이다.
상세한 설명
오늘날 서라운드 사운드의 발전은 엔터테인먼트에 대한 많은 출력 포맷들을 이용가능하게 하였다. 이러한 소비자 서라운드 사운드 포맷들의 예들은 그들이 라우드스피커들에의 공급들을 소정 기하학적인 좌표들에서 암시적으로 지정한다는 점에서 주로 '채널' 기반이다. 소비자 서라운드 사운드 포맷들은 (다음 6개의 채널들: 전면 좌측 (FL), 전면 우측 (FR), 중앙 또는 전면 중앙, 후면 좌측 또는 서라운드 좌측, 후면 우측 또는 서라운드 우측, 및 저주파수 효과들 (LFE) 을 포함하는) 대중적인 5.1 포맷, 증가하고 있는 7.1 포맷, 및 (예컨대, 초고화질 텔레비전 표준 (Ultra High Definition Television standard) 과 함께 사용하기 위한) 22.2 포맷 및 7.1.4 포맷과 같은, 하이트 스피커 (height speaker) 들을 포함하는 다양한 포맷들을 포함한다. 비-소비자 포맷들은 '서라운드 어레이들' 로서 종종 불리는 (대칭 및 비-대칭 기하학적 구조의) 임의 개수의 스피커들을 포괄할 수 있다. 이러한 어레이의 일 예는 절두형 20면체 (truncated icosahedron) 의 모서리들 상의 좌표들 상에 위치되는 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 시스템에 이른다. 콘텐츠 창작자들 (예컨대, 할리우드 스튜디오들) 은 영화용 사운드트랙을 한번 제작하고, 각각의 스피커 구성을 위해 그것을 재믹싱하는데 노력을 들이지 않기를 원할 것이다. 최근, 표준 개발 조직들은 표준화된 비트스트림으로의 인코딩, 그리고 스피커 기하학적 구조 (및 개수) 및 (렌더러를 포함한) 플레이백의 로케이션에서의 음향 조건들에 대해 독립적 (agnostic) 이고 적응가능한 후속 디코딩을 제공할 방법들을 고려하고 있다.
콘텐츠 창작자들에게 이러한 유연성을 제공하기 위해, 음장을 표현하는데 엘리먼트들의 계층적 세트가 사용될 수도 있다. 엘리먼트들의 계층적 세트는 저차의 엘리먼트들의 기본적인 세트가 모델링된 음장의 전체 표현을 제공하도록 엘리먼트들이 차수화된 엘리먼트들의 세트를 나타낼 수도 있다. 그 세트는 고차 엘리먼트들을 포함하도록 확장되므로, 그 표현이 더욱 상세해져, 해상도를 증가시킨다.
엘리먼트들의 계층적 세트의 일 예는 구면 조화 계수 (SHC) 들의 세트이다. 다음 수식은 SHC 를 이용한 음장의 설명 또는 표현을 보여준다:
Figure pct00001
수식은 시간 t 에서 음장의 임의의 지점
Figure pct00002
에서의 압력
Figure pct00003
이,
Figure pct00004
에 의해 고유하게 표현될 수 있다는 것을 나타낸다. 여기서,
Figure pct00005
c 는 소리의 속도 (~343 m/s) 이고,
Figure pct00006
는 기준 지점 (또는, 관측 지점) 이고,
Figure pct00007
는 차수 n 의 구면 Bessel 함수이고, 그리고
Figure pct00008
는 차수 n 및 하위 차수 m 의 구면 조화 기저 함수들이다. 꺽쇠 괄호들 내 항은 이산 푸리에 변환 (DFT), 이산 코사인 변환 (DCT), 또는 웨이블릿 변환과 같은, 여러 시간-주파수 변환들에 의해 근사화될 수 있는 신호의 주파수-도메인 표현 (즉,
Figure pct00009
) 인 것을 알 수 있다. 계층적 세트들의 다른 예들은 웨이블릿 변환 계수들의 세트들 및 다중해상도 기저 함수들의 계수들의 다른 세트들을 포함한다.
도 1 은 제로 차수 (n = 0) 로부터 제 4 차수 (n = 4) 까지의 구면 조화 기저 함수들을 예시하는 다이어그램이다. 알 수 있는 바와 같이, 각각의 차수에 대해, 예시를 용이하게 하는 목적을 위해 도 1 의 예에 나타내지만 명시적으로 언급되지 않은 하위차수들 m 의 확장이 존재한다.
Figure pct00010
는 여러 마이크로폰 어레이 구성들에 의해 물리적으로 획득될 (예컨대, 레코딩될) 수 있거나, 또는 이의 대안으로, 그들은 음장의 채널-기반의 또는 오브젝트-기반의 설명들로부터 유도될 수 있다. 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 pct00011
은 다음과 같이 표현될 수도 있다:
Figure pct00012
여기서, i 는
Figure pct00013
이고,
Figure pct00014
는 차수 n 의 (제 2 종의) 구면 Hankel 함수이고,
Figure pct00015
는 오브젝트의 로케이션이다. (예컨대, PCM 스트림에 관해 고속 푸리에 변환을 수행하는 것과 같은, 시간-주파수 분석 기법들을 이용하여) 오브젝트 소스 에너지
Figure pct00016
를 주파수의 함수로서 아는 것은 우리가 각각의 PCM 오브젝트 및 그 대응하는 로케이션을
Figure pct00017
로 전환가능하게 한다. 또, (상기가 선형 및 직교 분해이므로) 각각의 오브젝트에 대한
Figure pct00018
계수들이 가산된다는 것이 보여질 수 있다. 이러한 방법으로, 다수의 PCM 오브젝트들은
Figure pct00019
계수들에 의해 (예컨대, 개개의 오브젝트들에 대한 계수 벡터들의 합계로서) 표현될 수 있다. 본질적으로, 계수들은 음장에 관한 정보 (3D 좌표들의 함수로서의 압력) 을 포함하며, 상기는 관측 지점
Figure pct00020
근처에서, 개개의 오브젝트들로부터 전체 음장의 표현으로의 변환을 나타낸다. 나머지 도면들은 오브젝트-기반 및 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) 는 (HOA 계수들로서 직접 포함하는) 여러 포맷들의 라이브 레코딩들 (7), 그리고 콘텐츠 창작자 디바이스 (12) 가 오디오 편집 시스템 (18) 을 이용하여 편집할 수도 있는 오디오 오브젝트들 (9) 을 획득한다. 마이크로폰 (5) 은 라이브 레코딩들 (7) 을 캡처할 수도 있다. 콘텐츠 창작자는 편집 프로세스 동안, 오디오 오브젝트들 (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) 을 포함할 수도 있다.
도 2에 콘텐츠 소비자 디바이스 (14) 로 직접 송신되는 것으로 도시되었지만, 콘텐츠 창작자 디바이스 (12) 는 콘텐츠 창작자 디바이스 (12) 와 콘텐츠 소비자 디바이스 (14) 사이에 배치된 중간 디바이스로 비트스트림 (21) 을 출력할 수도 있다. 중간 디바이스는 이 비트스트림을 요청할 수도 있는 콘텐츠 소비자 디바이스 (14) 로의 추후 전달을 위해 비트스트림 (21) 을 저장할 수도 있다. 중간 디바이스는 파일 서버, 웹 서버, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터, 모바일 폰, 스마트 폰, 또는 오디오 디코더에 의한 추후 취출을 위해 비트스트림 (21) 을 저장하는 것이 가능한 임의의 다른 디바이스를 포함할 수도 있다. 중간 디바이스는 비트스트림 (21) 을 요청하는 콘텐츠 소비자 디바이스 (14) 와 같은, 가입자들에게 비트스트림 (21) 을 (그리고, 어쩌면, 대응하는 비디오 데이터 비트스트림을 송신하는 것과 함께) 스트리밍하는 것이 가능한 콘텐츠 전달 네트워크에 상주할 수도 있다.
이의 대안으로, 콘텐츠 창작자 디바이스 (12) 는 비트스트림 (21) 을 컴팩트 디스크, 디지털 비디오 디스크, 고화질 비디오 디스크 또는 다른 저장 매체들과 같은 저장 매체에 저장할 수도 있으며, 이들의 대부분은 컴퓨터에 의해 판독가능하고 따라서 컴퓨터-판독가능 저장 매체들 또는 비일시적 컴퓨터-판독가능 저장 매체들로서 지칭될 수도 있다. 이 상황에서, 송신 채널은 매체들에 저장된 콘텐츠가 송신되는 채널들을 나타낼 수도 있다 (그리고, 소매점 (retail store) 및 다른 저장-기반의 전달 메커니즘을 포함할 수도 있다). 어쨌든, 본 개시물의 기법들은 따라서 이 점에서 도 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) 과 유사하지만 손실 동작들 (예컨대, 양자화) 및/또는 송신 채널을 통한 송신으로 인해 상이할 수도 있다. 오디오 플레이백 시스템 (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) 은 렌더링된 라우드스피커 피드 (25) 들을 플레이백할 수도 있다.
도 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), 재배열 유닛 (reorder unit; 34), 포어그라운드 선택 유닛 (foreground selection unit; 36), 에너지 보상 유닛 (38), 음향심리 오디오 코더 유닛 (psychoacoustic audio coder unit; 40), 비트스트림 발생 유닛 (42), 음장 분석 유닛 (44), 계수 감소 유닛 (46), 백그라운드 (BG) 선택 유닛 (48), 시공간적 내삽 유닛 (50), 및 양자화 유닛 (52) 을 포함할 수도 있다.
선형 가역 변환 (LIT) 유닛 (30) 은 HOA 계수들 (11) 을 HOA 채널들의 형태에서 수신하며, 각각의 채널은 (HOA[k] 로서 표시될 수도 있으며, 여기서 k 는 샘플들의 현재의 프레임 또는 블록을 표시할 수도 있는) 구면 기저 함수들의 주어진 차수, 하위 차수와 연관된 계수의 블록 또는 프레임을 나타낸다. HOA 계수들 (11) 의 매트릭스는 차원 (dimension) 들
Figure pct00021
을 가질 수도 있다.
즉, LIT 유닛 (30) 은 특이 값 분해로서 지칭되는 분석의 형태를 수행하도록 구성된 유닛을 나타낼 수도 있다. SVD 에 대해 설명되지만, 본 개시에서 설명하는 기법들은 선형으로 비상관된, 에너지 집중화된 출력 (energy compacted output) 의 세트들을 제공하는 임의의 유사한 변환 또는 분해에 대해서 수행될 수도 있다. 또한, 본 개시물서 "세트들" 에 대한 언급은 구체적으로 다르게 진술되지 않는 한 비-제로 세트들을 지칭하는 것으로 일반적으로 의도되며, 소위 "빈 (empty) 세트" 를 포함하는 세트들의 고전 (classical) 수학적 정의를 나타내는 것으로 의도되지 않는다. 대안적인 변환은 "PCA" 로서 종종 지칭되는 주요 구성요소 분석을 포함할 수도 있다. 상황에 따라서, PCA 는 몇 개의 예들을 들면, 이산 Karhunen-Loeve 변환, Hotelling 변환, 적합 직교 분해 (POD), 및 고유치 분해 (EVD) 와 같은, 다수의 상이한 이름들로 지칭될 수도 있다. 오디오 데이터를 압축하는 기본적인 목표에 도움이 되는 이러한 동작들의 성질들은 멀티채널 오디오 데이터의 '에너지 집중' (energy compaction) 및 '역상관' (decorrelation) 이다.
어쨌든, 예의 목적을 위해 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) 과 같은, 멀티-채널 오디오 데이터를 나타낼 수도 있다) 의 요소분해 (factorization) 를 다음 형태로 나타낼 수도 있다:
Figure pct00022
U 는 y 곱하기 y 실수 또는 복소수 유니테리 매트릭스 (unitary matrix) 을 나타낼 수도 있으며, 여기서, U 의 y 칼럼들은 멀티-채널 오디오 데이터의 좌측-특이 벡터들로서 알려져 있다. S 는 대각선 상에 비-음의 실수들을 가지는 y 곱하기 z (y-by-z) 직사각형의 대각선 매트릭스를 나타낼 수도 있으며, 여기서, S 의 대각선 값들은 멀티-채널 오디오 데이터의 특이 값들로서 알려져 있다. (V 의 켤레 전치를 표기할 수도 있는) V* 는 z 곱하기 z 실수 또는 복소수 유니테리 매트릭스를 나타낼 수도 있으며, 여기서, V* 의 z 칼럼들은 멀티-채널 오디오 데이터의 우측-특이 벡터들로서 알려져 있다.
일부 예들에서, 아래에서 참조되는 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 계수들 (11) 에 대해 SVD 를 수행하여, 차원들
Figure pct00023
을 가지는 (S 벡터들과 U 벡터들의 결합된 버전을 나타낼 수도 있는) US[k] 벡터들 (33) 및 차원들
Figure pct00024
을 가지는 V[k] 벡터들 (35) 을 출력할 수도 있다. US[k] 매트릭스에서의 개개의 벡터 엘리먼트들은 또한
Figure pct00025
로서 지칭될 수도 있으며, 반면 V[k] 매트릭스의 개개의 벡터들은 또한
Figure pct00026
로서 지칭될 수도 있다.
U, S 및 V 매트릭스들의 분석은 매트릭스들이 위에서 X 로 나타낸 기본적인 음장의 공간 및 시간 특성들을 지니거나 또는 나타낸다는 것을 드러낼 수도 있다. (길이 M 샘플들의) U 에서의 N 개의 벡터들의 각각은 정규화된 분리된 오디오 신호들을 (M 샘플들에 의해 표현된 시간 기간에 대한) 시간의 함수로서 나타낼 수도 있고, 이들 오디오 신호들은 서로에 직교하며 (방향 정보로서 또한 지칭될 수도 있는) 임의의 공간 특성들로부터 분리되었다. 공간 형상 및 위치 (r, 쎄타(theta), 파이(phi)) 를 나타내는, 공간 특성들은 V 매트릭스 (길이 (N+1)2 의 각각) 에서, 개개의 i 번째 벡터들
Figure pct00027
로 대신 표시될 수도 있다.
Figure pct00028
벡터들의 각각의 개개의 엘리먼트들은 연관된 오디오 오브젝트에 대한 음장의 (폭을 포함하는) 형상 및 위치를 기술하는 HOA 계수를 나타낼 수도 있다. U 매트릭스 및 V 매트릭스의 벡터들 양쪽 모두는 그들의 자승 평균 평방근 에너지들이 1 과 동일하도록 정규화된다. U 에서의 오디오 신호들의 에너지는 따라서 S 에서 대각선 엘리먼트들에 의해 표현된다. 따라서, U 와 S 를 곱하여 (개개의 벡터 엘리먼트들
Figure pct00029
을 가지는) US[k] 를 형성하는 것은, 에너지들을 가지는 오디오 신호를 나타낸다. (U 에서) 오디오 시간-신호들, (S 에서) 그들의 에너지들 및 (V 에서) 그들의 공간 특성들을 분리시키는 SVD 분해의 능력은 본 개시에서 설명하는 기법들의 여러 양태들을 지원할 수도 있다. 또, US[k] 와 V[k] 의 벡터 곱셈에 의해 기본적인 HOA[k] 계수들, X 를 합성하는 모델은, 이 문서 전반에 걸쳐서 사용되는 용어 "벡터 기반 분해" 를 낳는다.
HOA 계수들 (11) 에 대해 직접 수행되는 것으로 설명되지만, LIT 유닛 (30) 은 HOA 계수들 (11) 의 유도체 (derivative) 들에 선형 가역 변환을 적용할 수도 있다. 예를 들어, LIT 유닛 (30) 은 HOA 계수들 (11) 로부터 유도된 전력 스펙트럼 밀도 매트릭스에 대해 SVD 를 적용할 수도 있다. 계수들 자신보다는, HOA 계수들의 전력 스펙트럼 밀도 (PSD) 에 대해 SVD 를 수행함으로써, LIT 유닛 (30) 은 프로세서 사이클들 및 저장 공간 중 하나 이상의 관점에서 SVD 를 수행하는 계산 복잡성을 잠재적으로 감소시키는 한편, SVD 가 HOA 계수들에 직접 적용된 것처럼 동일한 소스 오디오 인코딩 효율을 달성할 수도 있다.
파라미터 계산 유닛 (32) 은 상관 파라미터 (R), 방향 성질들 파라미터들
Figure pct00030
, 및 에너지 성질 (e) 과 같은, 여러 파라미터들을 계산하도록 구성된 유닛을 나타낸다. 현재의 프레임에 대한 파라미터들의 각각은
Figure pct00031
Figure pct00032
로서 표시될 수도 있다. 파라미터 계산 유닛 (32) 은 US[k] 벡터들 (33) 에 대해 에너지 분석 및/또는 상관 (또는, 소위 교차-상관) 을 수행하여, 파라미터들을 식별할 수도 있다. 파라미터 계산 유닛 (32) 은 또한 이전 프레임에 대한 파라미터들을 결정할 수도 있으며, 여기서 이전 프레임 파라미터들은 US[k-1] 벡터 및 V[k-1] 벡터들의 이전 프레임에 기초하여
Figure pct00033
Figure pct00034
로 표시될 수도 있다. 파라미터 계산 유닛 (32) 은 현재의 파라미터들 (37) 및 이전 파라미터들 (39) 을 재배열 유닛 (34) 으로 출력할 수도 있다.
파라미터 계산 유닛 (32) 에 의해 계산된 파라미터들은 그들의 자연스러운 평가 또는 경시적 연속성을 표시하기 위해 오디오 오브젝트들을 재배열하기 위해 재배열 유닛 (34) 에 의해 사용될 수도 있다. 재배열 유닛 (34) 은 제 1 US[k] 벡터들 (33) 로부터의 파라미터들 (37) 의 각각을, 제 2 US[k-1] 벡터들 (33) 에 대한 파라미터들 (39) 의 각각에 대해 순번별로 (turn-wise) 비교할 수도 있다. 재배열 유닛 (34) 은 US[k] 매트릭스 (33) 및 V[k] 매트릭스 (35) 내 여러 벡터들을 현재의 파라미터들 (37) 및 이전 파라미터들 (39) 에 기초하여 (일 예로서, Hungarian 알고리즘을 이용하여) 재배열하여, (수학적으로
Figure pct00035
로서 표시될 수도 있는) 재배열된 US[k] 매트릭스 (33') 및 (수학적으로
Figure pct00036
로서 표시될 수도 있는) 재배열된 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 비트 신택스 엘리먼트를 이용하여 전송될 수 있다. 어쨌든, 음장 분석 유닛 (44) 은 백그라운드 채널 정보 (43), US[k] 벡터 (33), 및 V[k] 벡터 (35) 를, BG 선택 유닛 (48B) 과 같은 벡터 기반 합성 유닛 (27B) 의 하나 이상의 다른 구성요소들에 출력한다.
백그라운드 선택 유닛 (48) 은 백그라운드 채널 정보 (예컨대, 백그라운드 음장 (NBG) 및 전송할 추가적인 BG HOA 채널들의 인덱스들 (i) 및 개수 (nBGa)) 에 기초하여 백그라운드 또는 주변 VBG[k] 벡터들 (35BG)을 결정하도록 구성된 유닛을 나타낼 수도 있다. 예를 들어, NBG 가 1 과 동일할 때, 백그라운드 선택 유닛 (48) 은 VBG[k] 벡터들 (35BG) 로서 1 과 동일하거나 또는 미만인 차수를 가지는 오디오 프레임의 각각의 샘플에 대해 V[k] 벡터들 (35) 을 선택할 수도 있다. 백그라운드 선택 유닛 (48) 은 이 예에서, 그후 인덱스들 (i) 중 하나에 의해 추가적인 VBG[k] 벡터들 (35BG) 로서 식별된 인덱스를 가지는 V[k] 벡터들 (35) 을 선택할 수도 있으며, nBGa 가 도 4 의 예에 나타낸 오디오 디코딩 디바이스 (24) 와 같은, 오디오 디코딩 디바이스로 하여금, 비트스트림 (21) 으로부터 BG HOA 계수들 (47) 을 파싱하는 것을 가능하게 하기 위해서 비트스트림 (21) 에 지정되도록 비트스트림 발생 유닛 (42) 에 제공된다. 백그라운드 선택 유닛 (48) 은 그후 VBG[k] 벡터들 (35BG) 을 에너지 보상 유닛 (38) 과 같은 크로스페이드 유닛 (66) 의 하나 이상의 다른 구성요소들로 출력할 수도 있다. VBG [k] 벡터들 (35BG) 은 차원들
Figure pct00037
을 가질 수도 있다. 일부 예들에서, BG 선택 유닛 (48) 은 그후 US[k] 벡터들 (33) 을 에너지 보상 유닛 (38) 과 같은 크로스페이드 유닛 (66) 의 하나 이상의 다른 구성요소들로 출력할 수도 있다.
에너지 보상 유닛 (38) 은 백그라운드 선택 유닛 (48) 에 의한 V[k] 벡터들 (35) 중 여러 벡터들의 제거로 인한 에너지 손실을 보상하기 위해 VBG[k] 벡터들 (35BG) 에 대해 에너지 보상을 수행하도록 구성된 유닛을 나타낼 수도 있다. 에너지 보상 유닛 (38) 은 재배열된 US[k] 매트릭스 (33'), 재배열된 V[k] 매트릭스 (35'), nFG 신호들 (49), 포어그라운드 V[k] 벡터들 (51k) 및 VBG[k] 벡터들 (35BG) 중 하나 이상에 대해 에너지 분석을 수행하고 그후 이 에너지 분석에 기초하여 에너지 보상을 수행하여 에너지 보상된 VBG[k] 벡터들 (35BG') 을 발생시킬 수도 있다. 에너지 보상 유닛 (38) 은 에너지 보상된 VBG[k] 벡터들 (35BG') 을 매트릭스 매스 유닛 (matrix math unit; 64) 과 같은 벡터 기반 합성 유닛 (27) 의 하나 이상의 다른 컴포넌트들로 출력할 수도 있다. 일부 예들에서, 에너지 보상 유닛 (38) 은 그후 US[k] 벡터들 (33) 을 매트릭스 매스 유닛 (64) 과 같은 크로스페이드 유닛 (66) 의 하나 이상의 다른 구성요소들로 출력할 수도 있다.
매트릭스 매스 유닛 (64) 은 하나 이상의 매트릭스들에 대해 임의의 다양한 동작들을 수행하도록 구성된 유닛을 나타낼 수도 있다. 도 3의 예에서, 매트릭스 매스 유닛 (64) 은 에너지 보상된 주변 HOA 계수들 (47') 을 얻기 위하여 에너지 보상된 VBG[k] 벡터들 (35') 로 US[k] 벡터들 (33) 을 곱하도록 구성될 수도 있다. 매트릭스 매스 유닛 (64) 은 결정된 에너지 보상된 주변 HOA 계수들 (47') 을 크로스 페이드 유닛 (66) 과 같은 벡터 기반 합성 유닛 (27) 의 하나 이상의 다른 컴포넌트들로 제공할 수도 있다. 에너지 보상된 주변 HOA 계수들 (47') 은 차원들
Figure pct00038
Figure pct00039
을 가질 수도 있다.
크로스페이드 유닛 (66) 은 신호들간의 크로스페이딩을 수행하도록 구성된 유닛을 나타낼 수도 있다. 가령, 크로스페이드 유닛 (66) 은 프레임 k 에 대하여 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (47'') 을 결정하기 위하여 프레임 k의 에너지 보상된 주변 HOA 계수들 (47') 과 이전 프레임 k-1 의 에너지 보상된 주변 HOA 계수들 (47') 사이에서 크로스페이딩할 수도 있다. 크로스페이드 유닛 (66) 은 프레임 k에 대해 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (47'') 을, 심리음?e 오디오 코더 유닛 (40) 과 같은 벡터 기반 합성 유닛 (27) 의 하나 이상의 다른 구성요소들에 출력할 수도 있다.
일부 예들에서, 크로스페이드 유닛 (66) 은 프레임 k-1 의 에너지 보상된 주변 HOA 계수들 (47') 의 일 부분에 기초하여 프레임 k 의 에너지 보상된 주변 HOA 계수들 (47') 의 일 부분을 수정함으로써 프레임 k 의 에너지 보상된 HOA 계수들 (47') 과 이전 프레임 k-1 의 에너지 보상된 주변 HOA 계수들 (47') 사이에 크로스페이딩할 수도 있다. 일부 예들에서, 크로스페이드 유닛 (66) 은 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (47'') 을 결정할 때 계수들의 일 부분을 제거할 수도 있다. 크로스페이드 유닛 (66) 의 추가 상세들은 도 14를 참조하여 아래에서 제공된다.
포어그라운드 선택 유닛 (36) 은 (포어그라운드 벡터들을 식별하는 하나 이상의 인덱스들을 나타낼 수도 있는) nFG 45에 기초한 음장의 포어그라운드 또는 이산 구성요소들을 나타내는 재배열된 US[k] 매트릭스 (33') 및 재배열된 V[k] 매트릭스 (35') 를 선택하도록 구성된 유닛을 나타낼 수도 있다. 포어그라운드 선택 유닛 (36) 은 재배열된 US[k]1, …, nFG (49), FG 1 , …, nfG[k] (49), 또는
Figure pct00040
(49) 로서 표기될 수도 있는) nFG 신호들 (49) 를 음향심리 오디오 코더 유닛 (40) 으로 출력할 수도 있고, 여기서 nFG 신호 (49) 는 차원들
Figure pct00041
를 가질 수도 있고, 각각은 모노-오디오 오브젝트들을 나타낸다. 포어그라운드 선택 유닛 (36) 은 또한 음장의 포어그라운드 구성요소들에 대응하는 재배열된 V[k] 매트릭스 (35') (또는,
Figure pct00042
(35')) 를 시공간적 내삽 유닛 (50) 으로 출력할 수도 있으며, 여기서, 포어그라운드 구성요소들에 대응하는 재배열된 V[k] 매트릭스 (35') 의 서브세트는 차원들 D: (N+1)2 x nFG 를 가지는 (
Figure pct00043
로서 수학적으로 표시될 수도 있는) 포어그라운드 V[k] 매트릭스 (51k) 로서 표기될 수도 있다.
시공간적 내삽 유닛 (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 부분을 제 1 오디오 프레임 및 제 2 시간적으로 후속하는 또는 선행하는 오디오 프레임의 일부 다른 부분들로부터 내삽하는 유닛을 나타낼 수도 있다. 일부 예들에서, 부분들은 서브 프레임들로서 표기될 수도 있고, 여기서 서브 프레임에 대해 수행되는 내삽은 도 45 내지 46e 를 참조하여 아래에서 보다 상세하게 설명된다. 다른 예들에서, 시공간적 내삽 유닛 (50) 은 도 37 내지 도 39 를 참조하여 더 상세히 설명되는 바처럼, 이전 프레임의 샘플들의 일부 마지막 숫자 및 후속 프레임의 샘플들의 일부 첫번째 숫자에 대해 동작할 수도 있다. 시공간적 내삽 유닛 (50) 은, 이 내삽을 수행함에 있어서, 내삽된 V[k] 벡터들만을 발생시키는데 사용되는 그러한 포어그라운드 V[k] 벡터들 (51k) 만이 포어그라운드 V[k] 벡터들 (51k) 의 서브세트를 나타내므로, 비트스트림 (21) 에서 지정될 것이 요구되는 포어그라운드 V[k] 벡터들 (51k) 의 샘플들의 수를 감소시킬 수도 있다. 즉, (비트스트림 (21) 에서 지정된 포어그라운드 V[k] 벡터들 (51k) 의 수를 감소시킴으로써) HOA 계수들 (11) 의 압축을 잠재적으로 보다 효율적으로 만들기 위하여, 본 개시에 설명된 기법들의 다양한 양태들은 제 1 오디오 프레임의 하나 이상의 부분들의 내삽을 제공할 수도 있고, 여기서 그 부분들의 각각은 HOA 계수들 (11) 의 분해된 버전들을 나타낼 수도 있다.
시공간적 내삽은 많은 혜택들을 낳을 수도 있다. 먼저, nFG 신호들 (49) 은, SVD 또는 다른 LIT 가 수행되는 블록별 성질에 기인하여 프레임간에 연속적이지 않을 수도 있다. 즉, LIT 유닛 (30) 이 프레임 단위 기반으로 SVD 를 적용함으로 고려하면, 소정 불연속성이 US[k] 매트릭스 (33) 및 V[k] 매트릭스 (35) 의 재배열되지 않은 성질에 의한 예의 증거로서 결과적인 변환된 HOA 계수들에 존재할 수도 있다. 이 내삽을 수행하는 것에 의해, 내삽이 프레임 경계 (또는 즉, 프레임들로의 HOA 계수들 (11) 의 세그먼트화) 에 기인하여 도입되는 임의의 아티팩트들을 잠재적으로 감소시키는 평활화 효과를 가질 수도 있다는 점을 고려하면 불연속성이 감소될 수도 있다. 포어그라운드 V[k] 벡터들 (51k) 을 사용하여 이 내삽을 수행하고 다음으로 복원된 재배열된 HOA 계수들로부터 내삽된 포어그라운드 V[k] 벡터들 (51k) 에 기초하여 내삽된 nFG 신호들 (49') 을 생성하는 것은, nFG 신호들 (49) 를 재배열하는 것뿐만 아니라 프레임 단위 동작에 기인한 적어도 일부 효과들을 매끄럽게 할 수도 있다.
동작시, 시공간적 내삽 유닛 (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] 매트릭스에서 벡터들 중 일부를 기본적인 음장의 포어그라운드 구성요소들로서 취급할 수도 있다. 그러나, 이와 같이 취급될 때, (U S[k] 매트릭스에서의) 이들 벡터들은, 설령 그들이 동일한 이산 오디오 성분을 나타내더라도, 프레임들간에 불연속적이다. 이들 불연속성들은 구성요소들이 변환-오디오-코더들을 통해서 공급될 때 현저한 아티팩트들에 이를 수도 있다.
본 개시에 설명된 기법들은 이 불연속성을 다룰 수도 있다. 즉, 기법들은 V 매트릭스가 구면 조화 도메인에서 직교 공간 축들로서 해석될 수 있다는 관찰에 기초할 수도 있다. U[k] 매트릭스는 그러한 기저 함수들의 관점에서 구면 조화 (HOA) 데이터의 투영을 나타낼 수도 있으며, 여기서, 불연속성은, 매 프레임 변화하고- 따라서 자체 불연속적인 직교 공간 축 (V[k]) 에 기인할 수 있다. 이것은 푸리에 변환과 같은, 유사한 분해들과는 다르며, 여기서 기저 함수들이 일부 예들에서, 프레임들 간에 일정하다. 이들 용어들에서, SVD 는 매칭 추적 알고리즘으로서 간주될 수도 있다. 본 개시에 설명된 기법들은 시공간적 내삽 유닛 (50) 이 프레임간의 기저 함수들 (V[k]) 사이의 연속성을, 그들 사이에서 내삽함으로써, 유지하는 것을 가능하게 할 수도 있다.
위에 언급된 바처럼, 내삽은 샘플들에 대하여 수행될 수도 있다. 이 경우는 서브프레임들이 샘플들의 단일 세트를 포함할 때에 상기 설명에서 일반화된다. 샘플들을 통한 그리고 서브프레임들을 통한 내삽의 경우 양쪽 모두에서, 내삽 동작은 다음 방정식의 형태를 취할 수도 있다:
Figure pct00044
상기 방정식에서, 내삽은 일 실시형태에서 인접 프레임들 kk-1 로부터의 V-벡터들을 나타낼 수 있는 단일 V-벡터
Figure pct00045
로부터 단일 V-벡터
Figure pct00046
에 대해 수행될 수도 있다. 상기 방정식에서, l 는, 내삽이 수행중인 해상도를 나타내며, 여기서, l 는 정수 샘플을 나타낼 수도 있으며 l = 1, …, T 이다 (여기서, T 는 내삽이 수행중이며 출력된 내삽된 벡터들
Figure pct00047
이 요구되는 샘플들의 길이이며 또한 이 프로세스의 출력이 이들 벡터들의 l 를 산출한다는 것을 나타낸다). 대안적으로, l 는 다수의 샘플들로 이루어지는 서브프레임들을 나타낼 수 있다. 예를 들어, 프레임이 4개의 서브프레임들로 분할될 때, l 는 서브프레임들의 각각의 하나에 대해 1, 2, 3 및 4 의 값들을 포함할 수도 있다. l 의 값은 내삽 동작이 디코더에서 복제될 수 있도록, 비트스트림을 통해서 "CodedSpatialInterpolationTime" 로 불리는 필드로서 시그널링될 수도 있다.
Figure pct00048
는 내삽 가중치들의 값들을 포함할 수도 있다. 내삽이 선형일 때,
Figure pct00049
l 의 함수로서 0 과 1 사이에서 선형적으로 그리고 단조적으로 (monotonically) 변할 수도 있다. 다른 경우,
Figure pct00050
l 의 함수로서 0 과 1 사이에서 비선형적이지만 그러나 (상승 코사인 (raised cosine) 의 1/4 사이클과 같은) 단조 방식으로 변할 수도 있다. 함수,
Figure pct00051
는, 함수들의 몇개의 상이한 가능성들 사이에 인덱싱될 수도 있으며, 동일한 내삽 동작이 디코더에 의해 복제될 수 있도록 "SpatialInterpolationMethod" 로 불리는 필드로서 비트스트림에서 시그널링될 수도 있다.
Figure pct00052
가 0 에 가까운 값을 가질 때, 출력
Figure pct00053
는,
Figure pct00054
에 의해 크게 가중되거나 또는 영향을 받을 수도 있다. 반면
Figure pct00055
가 1 에 가까운 값을 가질 때, 그것은 출력
Figure pct00056
이,
Figure pct00057
에 의해 크게 가중되거나 또는 영향을 받도록 보장한다.
계수 감소 유닛 (46) 은 백그라운드 채널 정보 (43) 에 기초하여 나머지 포어그라운드 V[k] 벡터들 (53) 에 대해 계수 감소를 수행하여 감소된 포어그라운드 V[k] 벡터들 (55) 을 양자화 유닛 (52) 으로 출력하도록 구성된 유닛을 나타낼 수도 있다. 감소된 포어그라운드 V[k] 벡터들 (55) 은 차원들
Figure pct00058
를 가질 수도 있다. 계수 감소 유닛 (46) 은 이 점에서, 나머지 포어그라운드 V[k] 벡터들 (53) 에서의 계수들의 수를 감소시키도록 구성된 유닛을 나타낼 수도 있다. 다시 말해서, 계수 감소 유닛 (46) 은 방향 정보가 거의 없거나 전혀 없는 (나머지 포어그라운드 V[k] 벡터들 (53) 을 형성하는) 포어그라운드 V[k] 벡터들에서의 계수들을 제거하도록 구성된 유닛을 나타낼 수도 있다. 일부 예들에서, (NBG 로서 표기될 수도 있는) 제 1 및 제로 차수 기저 함수들에 대응하는 별개의, 또는, 즉, 포어그라운드 V[k] 벡터들의 계수들은 방향 정보를 거의 제공하지 않으며, 따라서 ("계수 감소" 로서 지칭될 수도 있는 프로세스를 통해서) 포어그라운드 V-벡터들로부터 제거될 수 있다. 2이 예에서,
Figure pct00059
의 세트로부터, NBG 에 대응하는 계수들을 식별할 뿐만 아니라 (변수 TotalOfAddAmbHOAChan 에 의해 표시될 수도 있는) 추가적인 HOA 채널들을 식별하기 위해 더 큰 유연성이 제공될 수도 있다.
양자화 유닛 (52) 은 감소된 포어그라운드 V[k] 벡터들 (55) 을 압축하여 코딩된 포어그라운드 V[k] 벡터들 (57) 을 발생시키기 위해 임의 형태의 양자화를 수행하여, 코딩된 포어그라운드 V[k] 벡터들 (57) 을 비트스트림 발생 유닛 (42) 으로 출력하도록 구성된 유닛을 나타낼 수도 있다. 동작 시, 양자화 유닛 (52) 은 음장의 공간 구성요소, 즉, 이 예에서는, 감소된 포어그라운드 V[k] 벡터들 (55) 중 하나 이상을 압축하도록 구성된 유닛을 압축하도록 구성된 유닛을 나타낼 수도 있다. 양자화 유닛 (52) 는 “NbitsQ” 로 표기되는 양자화 모드 신택스에 의해 표시되는 바처럼, 하기 12개 양자화 모드들 중 어느 하나를 수행할 수도 있다:
NbitsQ 값 양자화 모두의 타입
0-3: 예약됨
4: 벡터 양자화
5: Huffman 코딩 없는 스칼라 양자화
6: Huffman 코딩있는 6-비트 스칼라 양자화
7: Huffman 코딩있는 7-비트 스칼라 양자화
8: Huffman 코딩있는 8-비트 스칼라 양자화
… …
16: Huffman 코딩있는 16-비트 스칼라 양자화
양자화 유닛 (52) 은 또한, 이전 타입들의 양자화 모드들 중 어느 것의 예측된 버전들을 수행할 수도 있고, 여기서 이전 프레임의 V-벡터의 엘리먼트 (또는 벡터 양자화가 수행될 때 가중치) 와 현재 프레임의 V-벡터의 엘리먼트 (또는 벡터 양자화가 수행될 때 가중치) 사이에 차이가 결정된다. 다음으로, 양자화 유닛 (52) 은 현재 프레임 자체의 V-벡터의 엘리먼트의 값보다는 현재 프레임 및 이전 프레임의 엘리먼트들 또는 가중치들 간의 차이을 양자화할 수도 있다.
양자화 유닛 (52) 은 감소된 포어그라운드 V[k]벡터들 (55) 의 다수의 코딩된 버전들을 얻기 위하여 감소된 포어그라운드 V[k] 벡터들 (55) 의 각각에 대해 다수의 형태의 양자화를 수행할 수도 있다. 양자화 유닛 (52) 은 코딩된 포어그라운드 V[k] 벡터 (57) 로서 감소된 포어그라운드 V[k] 벡터들 (55) 의 코딩된 버전들 중 하나를 선택할 수도 있다. 양자화 유닛 (52) 은, 즉, 본 개시에 논의된 기준들 중 임의의 조합에 기초하여 출력 스위치된 양자화 V-벡터로서 사용할 비예측 벡터 양자화 V-벡터, 예측된 벡터-양자화 V-벡터, 비-Huffman-코딩된 스칼라-양자화 V-벡터, 및 Huffman-코딩된 스칼라-양자화 V-벡터 중 하나를 선택할 수도 있다. 일부 예들에서, 양자화 유닛 (52) 은, 벡터 양자화 모드 및 하나 이상의 스칼라 양자화 모드들을 포함하는 양자화 모드들의 세트로부터 양자화 모두를 선택하고, 선택된 모드에 기초하여 (또는 에 따라) 입력 V-벡터를 양자화할 수도 있다. 다음으로, 양자화 유닛 (52) 은 비예측 벡터 양자화 V-벡터 (예를 들어, 가중치 값 또는 이를 나타내는 비트들의 측면에서), 예측 벡터 양자화 V-벡터 (예를 들어, 에러 값 또는 이를 나타내는 비트들의 측면에서), 비-호프만 코딩된 스칼라 양자화 V-벡터 및 Huffman 코딩된 스칼라 양자화 V-벡터 중 선택된 하나를 코딩된 포어그라운드 V[k]벡터들 (57) 로서 비트스트림 발생 유닛 (52) 에 제공할 수도 있다. 양자화 유닛 (52) 은 또한, 양자화 모드를 나타내는 신택스 엘리먼트들 (예를 들어, NbitsQ 신택스 엘리먼트) 및 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호에서 제공된다.
도 14 는 도 3의 예에 보여진 오디오 인코딩 디바이스(20) 의 크로스페이드 유닛 (66) 을, 보다 자세하게, 예시하는 블록도이다. 크로스페이드 유닛 (66) 은 믹서 유닛 (70), 프레이밍 유닛 (71) 및 지연 유닛 (72) 을 포함할 수도 있다. 도 14는 크로스페이드 유닛 (66) 의 일 예만을 예시하고 다른 구성들이 가능하다. 가령, 프레이밍 유닛 (71) 은, 에너지 보상된 주변 HOA 계수들 (47') 이 믹서 유닛 (70) 에 의해 수신되기 전에 제 3 부분 (75) 이 제거되도록 믹서 유닛 (70) 전에 배치될 수도 있다.
믹서 유닛 (70) 은 복수의 신호들을 단일 신호로 결합하도록 구성된 유닛을 나타낼 수도 있다. 가령, 믹서 유닛 (70) 은 제 1 신호와 제 2 신호를 결합하여 수정된 신호를 생성할 수도 있다. 믹서 유닛 (70) 은 제 2 신호를 페이드 아웃하는 동안 제 1 신호를 페이드 인함으로써 제 1 신호와 제 2 신호를 결합할 수도 있다. 믹서 유닛 (70) 은 부분들을 페이드 인 및 아웃하기 위하여 임의의 다양한 기능들을 적용할 수도 있다. 일 예로서, 믹서 유닛 (70) 은 제 1 신호를 페이드 인하기 위해 선형 함수를 적용하고 제 2 신호를 페이드 아웃하기 위해 선형 함수를 적용할 수도 있다. 다른 예로서, 믹서 유닛 (70) 은 제 1 신호를 페이드 인하기 위해 지수 함수를 적용하고 제 2 신호를 페이드 아웃하기 위해 지수 함수를 적용할 수도 있다. 일부 예들에서, 믹서 (70) 는 상이한 함수들을 신호들에 적용할 수도 있다. 가령, 믹서 유닛 (70) 은 제 1 신호를 페이드 인하기 위해 선형 함수를 적용하고 제 2 신호를 페이드 아웃하기 위해 지수 함수를 적용할 수도 있다. 일부 예들에서, 믹서 유닛 (70) 은 신호의 일 부분을 페이드 인 또는 아웃함으로써 신호를 페이드 인 또는 아웃할 수도 있다. 어느 경우든, 믹서 유닛은 프레이밍 유닛 (71) 과 같은 크로스페이드 유닛 (66) 의 하나 이상의 다른 컴포넌트들에 수정된 신호를 출력할 수도 있다.
프레이밍 유닛 (71) 은 하나 이상의 특정 차원들을 피팅 (fitting) 하기 위하여 입력 신호를 프레임화하도록 구성된 유닛을 나타낼 수도 있다. 입력 신호의 차원들 중 하나 이상이 특정 차원들 중 하나 이상보다 더 큰 것과 같은 일부 예들에서, 프레이밍 유닛 (71) 은 입력 신호의 일 부분, 예를 들어, 특정 차원들을 초과하는 부분을 제거함으로써 프레임화된 출력 신호를 발생시킬 수도 있다. 가령, 특정 차원들은 1024 X 4 이고 입력 신호의 1280 X 4의 차원를 갖는 경우에, 프레이밍 유닛 (71) 은 입력 신호의 256 X 4 부분을 제거함으로써 프레임화된 출력 신호를 발생시킬 수도 있다. 일부 예들에서, 프레이밍 유닛 (71) 은 도 3의 음향심리 오디오 코더 유닛 (40) 과 같은 오디오 인코딩 디바이스 (20) 의 하나 이상의 다른 컴포넌트들에 프레임화된 출력 신호를 출력할 수도 있다. 일부 예들에서, 프레이밍 유닛 (71) 은 지연 유닛 (72) 과 같은 크로스페이드 유닛 (66) 의 하나 이상의 다른 컴포넌트들에 입력 신호의 제거된 부분을 출력할 수도 있다.
지연 유닛 (72) 은 나중의 사용을 위해 신호를 저장하도록 구성된 유닛을 나타낼 수도 있다. 가령, 지연 유닛 (72) 은 제 1 시간에, 제 1 신호를 저장하고, 제 2 나중 시간에, 제 1 신호를 출력하도록 구성될 수도 있다. 이런 식으로, 지연 유닛 (72) 은 선입선출 (FIFO) 버퍼로서 동작할 수도 있다. 지연 유닛 (72) 은, 제 2 나중 시간에, 믹서 유닛 (70) 과 같은 크로스페이드 유닛 (66) 의 하나 이상의 다른 컴포넌트들에 제 1 신호를 출력할 수도 있다.
위에 논의된 바처럼, 크로스페이드 유닛 (66) 은 현재 프레임 (예를 들어, 프레임 k) 의 에너지 보상된 주변 HOA 계수들 (47') 을 수신하고, 이전 프레임의 에너지 보상된 주변 HOA 계수들 (47') 과 현재 프레임의 에너지 보상된 주변 HOA 계수들 (47') 을 크로스페이딩하고, 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (47'') 을 출력할 수도 있다. 도 14에 예시된 바처럼, 에너지 보상된 주변 HOA 계수들 (47') 은 제 1 부분 (73), 제 2 부분 (74) 및 제 3 부분 (75) 을 포함할 수도 있다.
본 개시의 하나 이상의 기법들에 따르면, 크로스페이드 유닛 (66) 의 믹서 유닛 (70) 은 현재 프레임의 에너지 보상된 주변 HOA 계수들 (47') 의 제 1 부분 (73) 및 이전 프레임의 에너지 보상된 주변 HOA 계수들 (47') 의 제 3 부분 (76) 을 결합하여 (예를 들어, 이들 사이에 크로스페이딩하여) 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 을 발생시킬 수도 있다. 믹서 유닛 (70) 은 발생된 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 을 프레이밍 유닛 (71) 에 출력할 수도 있다. 믹서 유닛 (70) 이 이전 프레임의 에너지 보상된 주변 HOA 계수들 (47') 의 제 3 부분 (76) 을 이용할 때, 이 예에서, 크로스페이드 유닛 (66) 이 현재 프레임을 처리하기 전에 동작중에 있었다고 가정될 수 있다. 그래서, 이전 프레임의 US 매트릭스와 현재 프레임의 US 매트릭스 그리고 이전 프레임의 V 매트릭스와 현재 프레임의 V 매트릭스를 따로따로 크로스페이딩하는 것과 반대로, 믹서 유닛 (70) 은 에너지 보상된 도메인에서 크로스페이딩할 수도 있다. 이런 식으로, 본 개시에 따른 기법들은 크로스페이드 유닛 (66) 의 계산상 부하, 전력 소비 및/또는 복잡성을 감소시킬 수도 있다.
프레이밍 유닛 (71) 은, 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 의 차원들이 현재 프레임의 차원들을 초과하면, 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 로부터 제 3 부분 (75) 을 제거함으로써 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (47'') 을 결정할 수도 있다. 가령, 현재 프레임에 대한 차원들이 1024 X 4 이고 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 의 차원이 1280 X 4 인 경우, 프레이밍 유닛 (71) 은 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 로부터 제 3 부분 (75) (예를 들어, 256 X 4 부분) 을 제거함으로써 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (47'') 을 결정할 수도 있다. 프레이밍 유닛 (71) 은 (예를 들어, 후속 프레임의 에너지 보상된 주변 HOA 계수들 (47') 을 크로스페이딩할 때 믹서 유닛 (70) 에 의해) 미래의 사용을 위해 지연 유닛 (72) 에 제 3 부분 (75) 을 출력할 수도 있다. 프레이밍 유닛 (71) 은 결정된 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (47'') 을 도 3의 음향심리 오디오 코더 유닛 (40) 에 출력할 수도 있다. 이런 식으로, 크로스페이드 유닛 (66) 은 이전 프레임과 현재 프레임 사이의 천이를 매끄럽게할 수도 있다.
일부 예들에서, 크로스페이드 유닛 (66) 은 HOA 계수들의 임의의 2개의 세트 사이에서 크로스페이딩할 수도 있다. 일 예로서, 크로스페이드 유닛 (66) 은 HOA 계수들의 제 1 세트와 HOA 계수들의 제 2 세트 사이에서 크로스페이딩할 수도 있다. 또 다른 예로서, 크로스페이드 유닛 (66) 은 HOA 계수들의 현재 세트와 HOA 계수들의 이전 세트 사이에서 크로스페이딩할 수도 있다.
도 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 계수들 (11') 의 형태의 HOA 계수들을 복원하도록 구성된 유닛을 나타낼 수도 있다.
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-벡터 복원 유닛 (74) 은 인코딩된 포어그라운드 V[k] 벡터들 (57) 로부터 V-벡터들을 복원하도록 구성된 유닛을 나타낼 수도 있다. V-벡터 복원 유닛 (74) 은 양자화 유닛 (52) 의 방법과는 반대인 방법으로 동작할 수도 있다.
음향심리 디코딩 유닛 (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] 벡터들 (55 k ) 을 수신하고 포어그라운드 V[k] 벡터들 (55 k ) 및 감소된 포어그라운드 V[k-1] 벡터들 (55 k -1) 에 대해 시공간적 내삽을 수행하여 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 을 발생시킬 수도 있다. 시공간적 내삽 유닛 (76) 은 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 을 페이드 유닛 (770) 으로 포워딩할 수도 있다.
추출 유닛 (72) 은 또한 주변 HOA 계수들 중 하나가 천이 중인 시점을 나타내는 신호 (757) 를 페이드 유닛 (770) 으로 출력할 수도 있으며, 그 페이드 유닛은 그후 SHCBG (47') (여기서, SHCBG (47') 는 또한 "주변 HOA 채널들 (47')" 또는 "주변 HOA 계수들 (47')" 로서 표시될 수도 있다) 및 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 의 엘리먼트들 중 어느 것이 페이드 인되거나 또는 페이드 아웃되는지를 결정할 수도 있다. 일부 예들에서, 페이드 유닛 (770) 은 주변 HOA 계수들 (47') 및 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 의 엘리먼트들의 각각에 대해 반대로 동작할 수도 있다. 즉, 페이드 유닛 (770) 은 주변 HOA 계수들 (47') 의 대응하는 하나에 대해 페이드 인 또는 페이드 아웃, 또는 페이드 인 또는 페이드 아웃 양쪽 모두를 수행할 수도 있는 한편, 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 의 엘리먼트들의 대응하는 하나에 대해 페이드 인 또는 페이드 아웃 또는 페이드 인 및 페이드 아웃 양쪽 모두를 수행할 수도 있다. 페이드 유닛 (770) 은 조정된 주변 HOA 계수들 (47'') 을 HOA 계수 포뮬레이션 유닛 (82) 으로, 그리고, 조정된 포어그라운드 V[k] 벡터들 (55 k ''') 을 포어그라운드 포뮬레이션 유닛 (78) 으로 출력할 수도 있다. 이 점에서, 페이드 유닛 (770) 은 예컨대, 주변 HOA 계수들 (47') 및 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 의 엘리먼트들의 형태인, HOA 계수들 또는 그의 유도체들의 여러 양태들에 대해 페이드 동작을 수행하도록 구성된 유닛을 나타낸다.
포어그라운드 포뮬레이션 유닛 (78) 은 포어그라운드 HOA 계수들 (65) 을 발생시키기 위해 조정된 포어그라운드 V[k] 벡터들 (55 k ''') 및 내삽된 nFG 신호들 (49') 에 대해 매트릭스 곱셈을 수행하도록 구성된 유닛을 나타낼 수도 있다. 이 점에서, 포어그라운드 포뮬레이션 유닛 (78) 은 (내삽된 nFG 신호들 (49') 을 표시하는 다른 방식인) 오디오 오브젝트들 (49') 을 벡터들 (55 k ''') 과 결합하여, HOA 계수들 (11') 의 포어그라운드 또는, 즉, 지배적인 양태들을 복원할 수도 있다. 포어그라운드 포뮬레이션 유닛 (78) 은 조정된 포어그라운드 V[k] 벡터들 (55 k ''') 에 의한 내삽된 nFG 신호들 (49') 의 매트릭스 곱셈을 수행할 수도 있다.
HOA 계수 포뮬레이션 유닛 (82) 은 HOA 계수들 (11') 을 획득하기 위해 포어그라운드 HOA 계수들 (65) 을 조정된 주변 HOA 계수들 (47'') 에 결합하도록 구성된 유닛을 나타낼 수도 있다. 프라임 표기는 HOA 계수들 (11') 이 HOA 계수들 (11) 과 유사하지만 동일하지 않을 수도 있다는 것을 반영한다. HOA 계수들 (11 및 11') 사이의 차이들은 손실 전송 매체, 양자화 또는 다른 손실 동작들을 통한 송신으로 인해 손실을 초래할 수도 있다.
도 5 는 본 개시물에서 설명되는 벡터 기반 합성 기법들의 여러 양태들을 수행할 때에, 도 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 계수들의 제거로 인한 에너지 손실을 보상하고, 위에 설명된 방식으로 에너지 보상된 주변 HOA 계수들 (47') 을 크로스페이딩할 수도 있다 (114).
오디오 인코딩 디바이스 (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) 을 발생시킬 수도 있다.
도 6 는 본 개시물에서 설명되는 기법들의 여러 양태들을 수행할 때에, 도 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) 를 엔트로피 디코딩하고 탈양자화하여 감소된 포어그라운드 방향 정보 (55 k ) 를 획득할 수도 있다 (136). 오디오 디코딩 디바이스 (24) 는 또한 음향심리 디코딩 유닛 (80) 을 호출할 수도 있다. 음향심리 오디오 디코딩 유닛 (80) 은 인코딩된 주변 HOA 계수들 (59) 및 인코딩된 포어그라운드 신호들 (61) 을 디코딩하여, 에너지 보상된 주변 HOA 계수들 (47') 및 내삽된 포어그라운드 신호들 (49') 을 획득할 수도 있다 (138). 음향심리 디코딩 유닛 (80) 은 에너지 보상된 주변 HOA 계수들 (47') 을 페이드 유닛 (770) 으로 그리고 nFG 신호들 (49') 을 포어그라운드 포뮬레이션 유닛 (78) 으로 보낼 수도 있다.
오디오 디코딩 디바이스 (24) 는 다음으로 시공간적 내삽 유닛 (76) 을 호출할 수도 있다. 시공간적 내삽 유닛 (76) 은 재배열된 포어그라운드 방향 정보 (55 k ') 를 수신하고 감소된 포어그라운드 방향 정보 (55 k /55 k -1) 에 대해 시공간적 내삽을 수행하여, 내삽된 포어그라운드 방향 정보 (55 k '') 을 발생시킬 수도 있다 (140). 시공간적 내삽 유닛 (76) 은 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 을 페이드 유닛 (770) 으로 포워딩할 수도 있다.
오디오 디코딩 디바이스 (24) 는 페이드 유닛 (770) 을 호출할 수도 있다. 페이드 유닛 (770) 은 에너지 보상된 주변 HOA 계수들 (47') 이 천이 중인 시점을 나타내는 (예컨대, 추출 유닛 (72) 으로부터의) 신택스 엘리먼트들 (예컨대, AmbCoeffTransition 신택스 엘리먼트) 을 수신하거나 또는 아니면 획득할 수도 있다. 페이드 유닛 (770) 은, 천이 신택스 엘리먼트들 및 유지된 천이 상태 정보에 기초하여, 에너지 보상된 주변 HOA 계수들 (47') 을 페이드 인 또는 페이드 아웃하여, 조정된 주변 HOA 계수들 (47'') 을 HOA 계수 포뮬레이션 유닛 (82) 으로 출력할 수도 있다. 페이드 유닛 (770) 은 또한, 신택스 엘리먼트들 및 유지된 천이 상태 정보에 기초하여, 내삽된 포어그라운드 V[k] 벡터들 (55 k '') 의 대응하는 하나 이상의 엘리먼트들을 페이드 아웃 또는 페이드 인하여, 조정된 포어그라운드 V[k] 벡터들 (55 k ''') 을 포어그라운드 포뮬레이션 유닛 (78) 으로 출력할 수도 있다 (142).
오디오 디코딩 디바이스 (24) 는 포어그라운드 포뮬레이션 유닛 (78) 을 호출할 수도 있다. 포어그라운드 포뮬레이션 유닛 (78) 은 조정된 포어그라운드 방향 정보 (55 k ''') 에 의한 nFG 신호들 (49') 의 매트릭스 곱셈을 수행하여, 포어그라운드 HOA 계수들 (65) 을 획득할 수도 있다 (144). 오디오 디코딩 디바이스 (24) 는 또한 HOA 계수 포뮬레이션 유닛 (82) 을 호출할 수도 있다. HOA 계수 포뮬레이션 유닛 (82) 은 HOA 계수들 (11') 을 획득하기 위해 포어그라운드 HOA 계수들 (65) 을 조정된 주변 HOA 계수들 (47'') 에 가산할 수도 있다 (146).
도 7은 도 2 내지 도 4의 예에 도시된 비트스트림 (21) 의 일 부분 (250) 을 예시하는 도면이다. 도 7의 예에 도시된 부분 (250) 은 비트스트림 (21) 의 HOAConfig 부분 (250) 으로 지칭될 수도 있고, HOAOrder 필드, MinAmbHoaOrder 필드, 방향 정보 필드 (253), CodedSpatialInterpolationTime 필드 (254), SpatialInterpolationMethod 필드 (255), CodedVVecLength 필드 (256) 및 이득 정보 필드 (257) 로 지칭될 수도 있다. 도 7의 예에 도시된 바처럼, CodedSpatialInterpolationTime 필드 (254) 는 3 비트 필드를 포함할 수도 있고, SpatialInterpolationMethod 필드 (255) 는 1 비트 필드를 포함할 수도 있고, CodedVVecLength 필드 (256) 는 2 비트 필드를 포함할 수도 있다.
부분 (250) 은 또한, SingleLayer 필드 (240) 및 FrameLengthFactor 필드 (242) 를 포함한다. SingleLayer 필드 (240) 는 다수의 계층들이 HOA 계수들의 코딩된 버전을 나타내는데 사용되는지 여부 또는 단일 계층이 HOA 계수들의 코딩된 버전을 나타내는데 사용되는지 여부를 나타내는 하나 이상의 비트들을 표현할 수도 있다. FramelengthFactor 필드 (242) 는 도 12를 참조하여 아래에서 더 자세하게 논의되는 프레임 길이 팩터를 나타내는 하나 이상의 비트들을 표현한다.
도 8 은 본 개시에 기재된 기법들의 다양한 양태들에 따라 지정되는 예시적인 프레임들 (249S 및 249T) 을 예시하는 도면이다. 도 8의 예에서, 프레임들 (249S 및 249T) 각각은 4개의 전송 채널들 (275A-275D) 을 포함한다. 전송 채널 (275A) 은 ChannelSideInfoData (154A) 및 HOAGainCorrectionData 를 나타내는 헤더 비트들을 포함한다. 전송 채널 (275A) 은 또한, VVectorData (156A) 를 나타내는 페이로드 비트들을 포함한다. 전송 채널 (275B) 은 ChannelSideInfoData (154B) 및 HOAGainCorrectionData 를 나타내는 헤더 비트들을 포함한다. 전송 채널 (275B) 은 또한, VVectorData (156B) 를 나타내는 페이로드 비트들을 포함한다. 전송 채널들 (275C 및 275D) 은 프레임 (249S) 에 이용되지 않는다. 프레임 (275T) 은 전송 채널들 (275A-275D) 의 측면에서 프레임 (249S) 에 실질적으로 유사하다.
도 9는 본원에 기재된 기법들에 따라 적어도 하나의 비트스트림의 하나 이상의 채널들에 대한 예시적인 프레임들을 예시하는 도면이다. 비트스트림 (450) 은 하나 이상의 채널들을 각각 포함할 수도 있는 프레임들 (810A-810H) 을 포함한다. 비트스트림 (450) 은 도 9 의 예에 나타낸 비트스트림 (21) 의 일 예일 수도 있다. 도 9 의 예에서, 오디오 디코딩 디바이스 (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) 은 상태 정보를 유지하며, 구성 (814) 그리고, 도 9 의 예에서, 프레임들 (810B-810D) 의 디코딩에 기초하여 상태 정보를 업데이트할 수도 있다. 상태 정보에 기초하여, 비트스트림 추출 유닛 (72) 은 상태 머신 (402) 에 의해 유지된 상태 정보에 기초하여 프레임 (810E) 을 추출할 수도 있다. 상태 정보는 오디오 인코딩 디바이스 (20) 가 프레임 (810E) 의 여러 전송 채널들을 디코딩할 때 이용할 수도 있는 다수의 암시적인 신택스 엘리먼트들을 제공할 수도 있다.
도 10은 여기에 기재된 바처럼 시공간적 내삽 (spatio-temporal interpolation) 을 획득하기 위한 기법들의 표현을 예시한다. 도 3의 예에 보여진 오디오 인코딩 디바이스 (20) 의 시공간적 내삽 유닛 (50) 은 보다 상세하게 아래에 기재된 바처럼 시공간적 내삽을 수행할 수도 있다. 시공간 내삽은 공간 및 시간 차원들 양자 모두에서 더 높은 해상도 공간 성분들을 획득하는 것을 포함할 수도 있다. 공간 성분들은 고차 앰비소닉 (higher-order ambisonic; HOA) 계수들로 구성된 다차원 신호의 직교 분해에 기초할 수도 있다 (또는, 여기서 HOA 계수들은 "구면 조화 계수들" 로도 지칭될 수도 있다).
예시된 그래프에서, 벡터들 V1 및 V2 은 다차원 신호의 2개 상이한 공간 성분들의 대응하는 벡터들을 나타낸다. 공간 성분들은 다차원 신호의 블록 방식 (block-wise) 분해에 의해 획득될 수도 있다. 일부 예들에서, 공간 성분들은, 고차 앰비소닉스 (HOA) 오디오 데이터의 (프레임을 지칭할 수도 있는) 각각의 블록에 관하여 SVD 의 블록 방식 형태를 수행하는 것으로부터 비롯된다 (여기서 이 앰비소닉스 오디오 데이터는 블록들, 샘플들, 또는 임의의 다른 형태의 다채널 오디오 데이터를 포함한다). 변수 M 은 샘플들에서 오디오 프레임의 길이를 표시하는데 사용될 수도 있다.
따라서, V1 및 V2 는 HOA 계수들 (11) 의 순차적인 블록들에 대해 포어그라운드 V[k] 벡터들 (51k) 및 포어그라운드 V[k-1] 벡터들 (51k-1) 의 대응하는 벡터들을 나타낼 수도 있다. V1 는, 가령, 제 1 프레임 (k-1) 에 대해 포어그라운드 V[k-1] 벡터들 (51k-1) 의 제 1 벡터를 나타내는 한편, V2 는 제 2 그리고 후속 프레임 (k) 에 대해 포어그라운드 V[k] 벡터들 (51k) 의 제 1 벡터를 나타낼 수도 있다. V1 및 V2 는 다차원 신호에 포함된 단일 오디오 오브젝트를 위한 공간 성분을 나타낼 수도 있다.
각각의 x 에 대해 내삽된 벡터들 Vx 은, 내삽된 벡터들 Vx 이 시간 (및, 따라서, 일부 경우들에서는 공간) 성분을 평활화하기 위해 적용될 수도 있는 다차원 신호의 시간 성분에 대한 시간 세그먼트들 또는 "시간 샘플들" 의 수, x 에 따라 V1 및 V2 를 가중함으로써 획득된다. 위에 기재된 바처럼, SVD 합성을 가정하면, nFG 신호들 (49) 을 평활화하는 것은, 대응하는 내삽된 Vx 로 각각의 시간 샘플 벡터 (예를 들어, HOA 계수들 (11) 의 샘플) 의 벡터 분할 (vector division) 을 행함으로써 획득될 수도 있다. 즉, US[n] = HOA[n] * Vx[n]-1, 여기서 이것은 열 벡터 (column vector) 에 의해 승산된 행 벡터 (row vector) 를 나타내며, 따라서 US 에 대해 스칼라 엘리먼트를 산출한다. Vx[n]-1 은 Vx[n] 의 슈도인버스 (pseudoinverse) 로서 획득될 수도 있다.
V1 및 V2 의 가중에 관하여, V1 은, V2 가 V1에 시간적으로 후속하여 일어나는 것에 기인하여, 시간 치원을 따라 비례적으로 낮게 가중된다. 즉, 포어그라운드 V[k-1] 벡터들 (51k-1) 이 분해의 공간 성분들이지만, 시간적으로 순차적인 포어그라운드 V[k] 벡터들 (51k) 은 시간이 흐름에 따라 공간 성분의 상이한 값을 나타낸다. 따라서, x 가 t 를 따라 증가함에 따라, V1 의 가중치는 감소되는 반면, V2 의 가중치는 커진다. 여기서 d1 및 d2 는 가중치들을 나타낸다.
도 11은 여기에 기재된 기법들에 따른 다차원 신호를 위한 순차적인 SVD 블록들을 위한 인위 US 매트릭스들, 즉 US1 및 US2 를 예시하는 블록도이다. 내삽된 V-벡터들은 원래 다차원 신호를 복구하기 위하여 인위 US 매트릭스들의 행 벡터들에 적용될 수도 있다. 보다 구체적으로, 시공간 내삽 유닛 (50) 은, U2 매트릭스의 도 11의 예에 보여진 바처럼 제 1 K/2 샘플들로서 nFG 신호들의 K/2 샘플들 대신에 사용될 수도 있는, K/2 내삽된 샘플들을 획득하기 위하여 (포어그라운드 HOA 계수들로 표시될 수도 있는) 포어그라운드 V[k] 벡터들 (51k) 에 의해 nFG 신호들 (49) 을 곱한 결과에 내삽된 포어그라운드 V[k] 벡터들 (53) 의 슈도인버스를 곱할 수도 있다.
도 12는 본 개시에 기재된 기법들에 따라 특이 값 분해 및 시공간 성분들의 평활화를 사용하여 고차 앰비소닉스 (HOA) 신호의 후속 프레임들의 분해를 예시하는 블록도이다. (또한 프레임 n 및 프레임 n+1 으로서 표기될 수도 있는) 프레임 n-1 및 프레임 n 은 시간적으로 후속하는 프레임들을 나타내며, 각각의 프레임은 1024 시간 세그먼트들을 포함하고 HOA 오더가 4이며, (4+1)2 = 25 계수들을 낳는다. 프레임 n-1 및 프레임 n 에서 인위적으로 평활화된 U-매트릭스들인 US 매트릭스들은 예시된 바처럼 내삽된 V-벡터들의 적용에 의해 획득될 수도 있다. 각각의 회색 로우 (row) 또는 칼럼 (column) 벡터들은 하나의 오디오 오브젝트를 나타낸다.
액티브 벡터 기반 신호들의 HOA 표현을 컴퓨팅
순시 C VECk X VECk 에 표현된 벡터 기반 신호들의 각각을 취하고 그것을 그의 대응하는 (탈양자화된) 공간 벡터 V VECk 와 곱함으로써 생성된다. 각각의 V VECk M VECk 에서 표현된다. 따라서, 오더 N HOA 신호, 그리고 M 벡터 기반 신호들에 대해, M 개 벡터 기반 신호들이 있을 것이며, 이들의 각각은 프레임 길이 P 에 의해 주어지는 차원을 가질 것이다. 따라서, 이들 신호들은 X VECkmn, n=0,..P-1; m=0,..M-1 로서 표현될 수 있다. 이에 대응하여, 차원 (N+1) 2 M개 공간 벡터들 V VECk 이 있을 것이다. 이것들은 M VECkml, l=0,..,(N+1) 2-1 ;m=0,..,M-1 로서 표현될 수도 있다. 각각의 벡터 기반 신호를 위한 HOA 표현 C VECkm 는 다음에 의해 주어지는 매트릭스 벡터 곱셈이다:
Figure pct00060
이는 (N+1)2 X P 의 매트릭스를 산출한다. 완전한 HOA 표현은 다음과 같이 각각의 벡터 기반 신호의 기여를 합산함으로써 주어진다:
Figure pct00061
V-벡터들의 시공간적 내삽
하지만, 매끄러운 시공간 연속성을 유지하기 위하여, 위의 연산은 프레임 길이 P-B 의 부분에 대해서만 수행된다. 그 대신에 HOA 매트릭스의 제 1 B 샘플들은, 현재 M VECkm 및 이전 값들 M VECk-1m 로부터 도출된, M VECkml 의 내삽된 세트, m=0,..,M-1;l=0,..,(N+1) 2 를 이용하여 수행된다. 이것은 다음과 같이 각각의 시간 샘플 p 에 대한 벡터를 도출할 때 더 높은 시간 밀도 공간 벡터에 귀결된다:
Figure pct00062
각각의 시간 샘플 p 에 대해, (N+1)2 차원의 새로운 HOA 벡터가 다음과 같이 계산된다:
Figure pct00063
이들, 제 1 B 샘플들은 이전 섹션의 P-B 샘플들로 증강되어, m번째 벡터 기반 신호의 완전한 HOA 표현, C VECkm 에 귀결된다.
디코더 (예를 들어, 도 5의 예에 나타낸 오디오 디코딩 디바이스 (24)) 에서, 어떤 별개의, 포어그라운드 또는 벡터 기반 지배적 사운드에 대해, 이전 프레임으로부터의 V-벡터 및 현재 프레임으로부터의 V-벡터가 특정 시간 세그먼트에 대해 고 해상도 (시간적으로) 내삽된 V-벡터를 산출하기 위하여 선형 (또는 비선형) 내삽을 이용하여 내삽될 수도 있다. 시공간 내삽 유닛 (76) 은 이 내삽을 수행할 수도 있고, 여기서 시공간 내삽 유닛 (76) 은 그 특정 시간 세그먼트에 대해 HOA 매트릭스를 산출하기 위하여 고 해상도 내삽된 V-벡터와 현재 프레임에 있는 US 벡터를 곱할 수도 있다.
대안적으로, 시공간 내삽 유닛 (76) 은 제 1 HOA 매트릭스를 생성하기 위하여 현재 프레임의 V-벡터와 US 벡터를 곱할 수도 있다. 디코더는 추가적으로, 제 2 HOA 매트릭스를 생성하기 위하여 이전 프레임으로부터 V-벡터와 US 벡터를 곱할 수도 있다. 다음으로 시공간 내삽 유닛 (76) 은, 특정 시간 세그먼트에 대해 제 1 및 제 2 HOA 매트릭스들에 선형 (또는 비선형) 내삽을 적용할 수도 있다. 이 내삽의 출력은 내삽된 V-벡터와 US 벡터의 승산의 것에 매칭될 수도 있으며, 공통 입력 매트릭스들/벡터들을 제공한다.
일부 예들에서, 내삽이 수행될 시간 세그먼트의 사이즈는 프레임 길이의 함수로서 달라질 수도 있다. 즉, 오디오 인코딩 디바이스 (20) 는 소정 프레임 길이에 대해 동작가능하게 구성되거나 또는 다수의 상이한 프레임 길이들에 대해 동작하도록 구성가능할 수도 있다. 오디오 인코딩 디바이스 (20) 가 지원할 수도 있는 예시적인 프레임 길이들은 768, 1024, 2048 및 409 를 포함한다. 상이한 프레임 길이들은 가능한 세그먼트 길이들의 상이한 세트들을 초래할 수도 있다 (여기서 시간 세그먼트는 샘플들의 수 측면에서 지정될 수도 있다). 하기 표는 (변수 L 로 표기될 수도 있는) 프레임 길이의 함수로서 달라지는 가능한 시간 세그먼트들 길이들의 상이한 세트들을 명시한다.
Figure pct00064
이전의 표에서, 신택스 엘리먼트 “CodedSpatialInterpolationTime” 는 공간 내삽 시간을 나타내는 하나 이상의 비트들을 표현한다. 변수 L 은 위에서 언급된 바처럼 프레임 길이를 표기한다. 768 의 프레임 길이에 대해, 가능한 시간 세그먼트 길이들은, 이 예에서, 0, 32, 64, 128, 256, 384, 512 및 768 의 세트에 의해 정의된다. 현재 프레임에 사용된 하나의 값은 CodedSpatialInterpolationTime 신택스 엘리먼트의 값에 의해 지정되고, 여기서 0 의 값은 0 의 시간 세그먼트 길이를 나타내고 1 의 값은 32의 시간 세그먼트 길이를 나타내고 기타 등등이다. 1024 의 프레임 길이에 대해, 가능한 시간 세그먼트 길이들은, 이 예에서, 0, 64, 128, 256, 384, 512, 768 및 1024 의 세트에 의해 정의된다. 현재 프레임에 사용된 하나의 값은 CodedSpatialInterpolationTime 신택스 엘리먼트의 값에 의해 지정되고, 여기서 0 의 값은 0 의 시간 세그먼트 길이를 나타내고 1 의 값은 64의 시간 세그먼트 길이를 나타내고 기타 등등이다. 2048 의 프레임 길이에 대해, 가능한 시간 세그먼트 길이들은, 0, 128, 256, 512, 768, 1024, 1536 및 2048 의 세트에 의해 정의된다. 현재 프레임에 사용된 하나의 값은 CodedSpatialInterpolationTime 신택스 엘리먼트의 값에 의해 지정되고, 여기서 0 의 값은 0 의 시간 세그먼트 길이를 나타내고 1 의 값은 128의 시간 세그먼트 길이를 나타내고 기타 등등이다. 4096 의 프레임 길이에 대해, 가능한 시간 세그먼트 길이들은, 이 예에서, 0, 256, 512, 1024, 1536, 2048, 3072 및 4096 의 세트에 의해 정의된다. 현재 프레임에 사용된 하나의 값은 CodedSpatialInterpolationTime 신택스 엘리먼트의 값에 의해 지정되고, 여기서 0 의 값은 0 의 시간 세그먼트 길이를 나타내고 1 의 값은 256의 시간 세그먼트 길이를 나타내고 기타 등등이다.
오디오 인코딩 디바이스 (20) 의 시공간적 내삽 유닛 (50) 은 프레임 길이 L 에 의해 식별되는 대응하는 세트로부터 선택된 다수의 상이한 시간 세그먼트들에 대해 내삽을 수행할 수도 있다. 시공간적 내삽 유닛 (50) 은 (예를 들어, 신호 대 잡음 비의 측면에서) 프레임 경계를 가로질러 천이를 충분히 매끄럽게 하고, (내삽이 전력, 복잡성, 동작 등의 측면에서 상대적으로 값비싼 동작일 수도 있음을 고려하면) 최소 수의 샘플들을 필요로 하는 시간 세그먼트를 선택할 수도 있다.
시공간적 내삽 유닛 (50) 은 프레임 길이 L 를 임의의 수의 상이한 방식으로 획득할 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (20) 는 미리설정된 프레임 레이트로 구성된다 (이는 HOA 계수들 (11) 을 인코딩하기 위하여 오디오 인코딩 디바이스 (20) 를 구성하는 부분으로서 하드 코딩 또는, 즉 정적으로 구성되거나, 또는 수동적으로 구성될 수도 있다). 일부 예들에서, 오디오 인코딩 디바이스 (20) 는 음향심리 오디오 코더 유닛 (40) 의 코어 코더 프레임 길이에 기초하여 프레임 길이를 지정할 수도 있다. 코어 코더 프레임 길이에 관한 더 많은 정보는 “Information technology - MPEG audio technologies - Part 3: Unified speech and audio coding” 이란 제목의, ISO/IEC 23003-3:2012 에 있는 “coreCoderFrameLength” 의 논의에 대해서 찾아볼 수도 있다.
코어 코더 프레임 길이에 기초하여 결정될 때, 오디오 인코딩 디바이스 (20) 는 하기 표를 참조할 수도 있다:
Figure pct00065
앞의 표에서, 오디오 인코딩 디바이스 (20) 는, 위의 표의 첫번째 칼럼에 명시된 코어 코더 프레임 길이를 곱할 팩터를 표시하는 (신택스 엘리먼트 “FrameLengthFactor” 로 표기되는) 하나 이상의 비트들을 설정할 수도 있다. 오디오 인코딩 디바이스 (20) 는 다양한 코딩 기준에 기초하여 1, 1/2 및 1/4 의 프레임 길이 팩터들 중 하나를 선택할 수도 있거나, 또는 다양한 팩터들 중 각각에서 코딩 프레임들에서의 시도들에 기초하여 팩터들 중 하나를 선택할 수도 있다. 오디오 인코딩 디바이스 (20) 는 예를 들어, 코어 코더 프레임 길이가 4096 이라고 결정할 수도 있고 1, 1/2 또는 1/4 의 프레임 길이 팩터를 선택할 수도 있다. 오디오 인코딩 디바이스 (20) 는 (도 7의 예에 대해 아래에서 나타내는) 비트스트림 (21) 의 HOAConfig 부분에서의 프레임 길이 팩터를 시그널링할 수도 있고, 여기서 00 (2진) 의 값은 1의 프레임 길이 팩터를 나타내고, 01 (2진) 의 값은 1/2 의 프레임 길이 팩터를 나타내고, 10 (2진) 의 값은 1/4 의 프레임 길이 팩터를 나타낸다. 오디오 인코딩 디바이스 (20) 는 또한, 코어 코더 프레임 길이 곱하기 프레임 길이 팩터 (예를 들어, 1, 1/2, 또는 1/4) 로서 프레임 길이 L 을 결정할 수도 있다.
이 점에 있어서, 오디오 인코딩 디바이스 (20) 는, 프레임 길이 (L) 를 나타내는 하나 이상의 비트들 그리고 시공간적 내삽 시간 (예를 들어, codedSpatioInterpolationTime 신택스 엘리먼트) 을 나타내는 하나 이상의 비트들에 적어도 부분적으로 기초하여, 시간 세그먼트를 획득할 수도 있다. 오디오 인코딩 디바이스 (20) 는 또한, 제 1 복수의 구면 조화 계수들의 제 1 분해 및 제 2 복수의 구면 조화 계수들의 제 2 분해에 대해 내삽을 수행하는 것에 적어도 부분적으로 기초하여, 시간 세그먼트에 대한 분해 내삽된 구면 조화 계수들을 획득할 수도 있다.
오디오 디코딩 디바이스 (24) 는 오디오 인코딩 디바이스 (20) 에 대해 위에서 설명된 것들과 실질적으로 유사한 동작들을 수행할 수도 있다. 특히, 오디오 디코딩 디바이스 (24) 의 시공간적 내삽 유닛 (76) 은 프레임 길이 팩터 (예를 들어, frameLengthFactor 신택스 엘리먼트) 및 (또한 음향심리 오디오 인코딩 유닛 (40) 에 의해 비트스트림 (21) 에서 지정될 수도 있는) 코어 코더 프레임 길이를 나타내는 하나 이상의 비트들의 함수로서 프레임 길이를 획득할 수도 있다. 시공간적 내삽 유닛 (76) 은 또한, 시공간적 내삽 시간 (예를 들어, CodedSpatialInterpolationTime 신택스 엘리먼트) 를 나타내는 하나 이상의 비트들을 획득할 수도 있다. 시공간적 내삽 유닛 (76) 은 시간 세그먼트 길이를 식별하는 것에 대한 키들로서 codedSpatialInterpolationTim 신택스 엘리먼트 및 프레임 길이 L 를 사용하여 위에서 언급된 표에서 룩업을 수행할 수도 있다. 다음으로, 오디오 디코딩 디바이스 (24) 는 획득된 시간 세그먼트에 대해 위에서 설명된 방식으로 내삽을 수행할 수도 있다.
이 점에 있어서, 오디오 디코딩 디바이스 (24) 는, 프레임 길이 (L) 를 나타내는 하나 이상의 비트들 그리고 시공간적 내삽 시간 (예를 들어, codedSpatioInterpolationTime 신택스 엘리먼트) 을 나타내는 하나 이상의 비트들에 적어도 부분적으로 기초하여, 시간 세그먼트를 획득할 수도 있다. 오디오 디코딩 디바이스 (24) 는 또한, 제 1 복수의 구면 조화 계수들의 제 1 분해 및 제 2 복수의 구면 조화 계수들의 제 2 분해에 대해 내삽을 수행하는 것에 적어도 부분적으로 기초하여, 시간 세그먼트에 대한 분해 내삽된 구면 조화 계수들을 획득할 수도 있다.
도 13은 본원에서 설명하는 하나 이상의 기법들을 수행하도록 구성된 하나 이상의 오디오 인코더 및 오디오 디코더를 예시하는 도면이다. 위에 언급된 바처럼, SVD 는 HOA-신호 압축 시스템을 위한 기초로서 이용될 수도 있다. 일부 예들에서, HOA 신호 H 는 USV' ('는 매트릭스의 전치이다) 로 분해될 수도 있다. 일부 예들에서, US 및 V 매트릭스들의 첫번째 몇개 로우들이 백그라운드 신호들 (예를 들어, 주변 신호들) 로서 정의될 수도 있고, US 및 V 매트릭스들의 첫번째 몇개 칼럼들이 포어그라운드 신호들로서 정의될 수도 있다. 일부 예들에서, 백그라운드 및 포어그라운드 신호들은 유사한 방식으로 크로스페이딩될 수도 있다. 하지만, 백그라운드 및 포어그라운드 신호들을 유사하게 크로스페이딩하는 것은 불필요한 계산들이 수행되는 것을 초래할 수도 있다. 수행되는 계산들을 감소시키고 시스템의 다른 양태들을 개선시키기 위하여, 본 개시는 백그라운드 신호를 위한 새로운 크로스페이딩 알고리즘을 설명한다.
일부 시스템들에서, US 매트릭스 및 V 매트릭스는 US_C 매트릭스 (예를 들어, 크로스페이딩된 US 매트릭스) 및 V_C 매트릭스 (예를 들어, 크로스페이딩된 V 매트릭스) 로 각각 따로 크로스페이딩된다. 다음으로, 크로스페이딩된 HOA 신호 H_C 는 US_C*V_C' 로서 복원될 수도 있다. 본 개시의 하나 이상의 기법들에 따르면, 원래 HOA 신호 H 는 USV' 로서 (예를 들어, 크로스페이딩 전에) 복원될 수도 있다. 다음으로, 크로스페이딩은 본 개시 전체에 걸쳐 설명된 바처럼, HOA 도메인에서 수행될 수도 있다.
위에 언급된 바처럼, 프레임의 길이 (또는 즉, 샘플들의 수) 는 (예를 들어, 코어 코더 프레임 길이의 함수로서) 달라질 수도 있다. 시공간적 내삽 시간들의 상이한 세트들과 함께 프레임 길이에서의 차이는 위에서 설명된 바처럼 크로스페이딩에 영향을 미칠 수도 있다. 일반적으로, CodedSpatialInterpolationTime 신택스 엘리먼트에 의해 식별되는 시공간적 내삽 시간 및 프레임 길이 L 는 크로스페이딩될 샘플들의 수를 명시할 수도 있다. 도 13의 예에 나타낸 바처럼, U 매트릭스의 사이즈는 (L+SpatialInterpolationTime)*25 이고, 여기서 SpatialInterpolationTime 변수는 도 12에 대해 위에서 논의된 표를 사용하여 L 및 CodedSpatialInterpolationTime 신택스 엘리먼트의 함수로서 획득되는 공간적 내삽 시간을 표기한다. SpatialInterpolationTime 에 대한 예시적인 값은, L 이 1024 와 같고 CodedSpatialInterpolationTime 신택스 엘리먼트의 값이 3과 같을 때 256 일 수도 있다. 아래에서 예시의 목적을 위해 논의될 바처럼, SpatialInterpolationTime 에 대한 또 다른 값은, L 이 2048 와 같고 CodedSpatialInterpolationTime 신택스 엘리먼트의 값이 3과 같을 때 512 일 수도 있다. 이 예시적인 예 하에서, L+SpatialInterpolationTime 는 2048+512 또는 2560 와 같다.
어쨌든, 백그라운드 HOA 계수들은 이 예에서 차원 2560*4 를 갖는다. 그러므로, 크로스페이드는 이전 프레임의 샘플들 (예를 들어, 512 샘플들) 의 SptailInterpolationTime 수 와 현재 프레임의 샘플들 (에를 들어, 512 샘플들) 의 제 1 SptailInterpolationTime 수 사이에서 일어난다. 그러므로, 출력은, AAC 또는 USAC 코딩되는 L 샘플들이다. 따라서, V-벡터들을 시공간적으로 내삽하는데 사용되는 SpatialInterpolationTime 는 또한, 크로스페이딩이 수행되는 샘플들의 수를 식별할 수도 있다. 이런 식으로, 크로스페이딩 지속시간은 FrameLength 를 나타내는 하나 이상의 비트들 및 시공간적 내삽 시간을 나타내는 하나 이상의 비트들에 의해 영향받을 수도 있다.
더욱이, 에너지 보상 유닛 (38) 은 에너지 보상된 VBG[k]벡터들 (35BG') 을 발생시키기 위하여 VBG[k]벡터들 (35BG) 에 윈도잉 함수를 적용함으로써 주변 HOA 계수들 (47') 을 생성시키기 위해 에너지 보상을 수행할 수도 있다. 윈도잉 함수는 프레임 길이와 같은 길이를 갖는 윈도잉 함수를 포함할 수도 있다. 이 점에 있어서, 에너지 보상 유닛 (38) 은, 프레임 길이 팩터 (예를 들어, FrameLengthFactor 신택스 엘리먼트) 를 나타내는 하나 이상의 비트들에 대해 적어도 부분적으로, 획득되는 에너지 보상을 위해 동일한 프레임 길이 L 를 사용할 수도 있다.
크로스페이드 유닛 (66) 의 믹서 유닛 (70) 은 현재 프레임의 에너지 보상된 주변 HOA 계수들 (47') 의 제 1 부분 (73) 및 이전 프레임의 에너지 보상된 주변 HOA 계수들 (47') 의 제 3 부분 (76) 을 결합하여 (예를 들어, 이들 사이에 크로스페이딩하여) 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 을 발생시킬 수도 있다. 믹서 유닛 (70) 은 발생된 중간 크로스페이딩된 에너지 보상된 주변 HOA 계수들 (77) 을 프레이밍 유닛 (71) 에 출력할 수도 있다. 믹서 유닛 (70) 이 이전 프레임의 에너지 보상된 주변 HOA 계수들 (47') 의 제 3 부분 (76) 을 이용할 때, 이 예에서, 크로스페이드 유닛 (66) 이 현재 프레임을 처리하기 전에 동작중에 있었다고 가정될 수 있다. 그래서, 이전 프레임의 US 매트릭스와 현재 프레임의 US 매트릭스 그리고 이전 프레임의 V 매트릭스와 현재 프레임의 V 매트릭스를 따로따로 크로스페이딩하는 것과 반대로, 믹서 유닛 (70) 은 에너지 보상된 도메인에서 크로스페이딩할 수도 있다. 이런 식으로, 본 개시에 따른 기법들은 크로스페이드 유닛 (66) 의 계산상 부하, 전력 소비 및/또는 복잡성을 감소시킬 수도 있다.
전술한 기법들은 임의의 수의 상이한 상황들 및 오디오 에코시스템들에 대해 수행될 수도 있다. 다수의 예시적인 상황들이 아래에서 설명되었지만, 그 기법들은 그 예시적인 상황들에 한정되지 않아야 한다. 일 예시적인 오디오 에코시스템은 오디오 콘텐츠, 영화 스튜디오들, 음악 스튜디오들, 게이밍 오디오 스튜디오들, 채널 기반 오디오 콘텐츠, 코딩 엔진들, 게임 오디오 스템들, 게임 오디오 코딩/렌더링 엔진들 및 전달 시스템들을 포함할 수도 있다.
영화 스튜디오들, 음악 스튜디오들, 및 게이밍 오디오 스튜디오들이 오디오 콘텐츠를 수신할 수도 있다. 일부 예들에서, 오디오 콘텐츠는 획득 (acquisition) 의 출력을 나타낼 수도 있다. 영화 스튜디오들은, 이를테면 디지털 오디오 워크스테이션 (DAW) 을 이용하여, (예를 들어, 2.0, 5.1, 및 7.1 에서) 채널 기반 오디오 콘텐츠를 출력할 수도 있다. 음악 스튜디오들은, 이를테면 DAW 을 이용하여, (예를 들어, 2.0, 및 5.1 에서) 채널 기반 오디오 콘텐츠를 출력할 수도 있다. 어떤 경우든, 코딩 엔진들은, 전달 시스템들에 의한 출력을 위해 하나 이상의 코덱들 (예를 들어, AAC, AC3, Dolby True HD, Dolby Digital Plus, 및 DTS Master Audio) 에 기초하여 채널 기반 오디오 콘텐츠를 수신 및 인코딩할 수도 있다. 게이밍 오디오 스튜디오들은, 이를테면 DAW 를 이용하여, 하나 이상의 게임 오디오 스템들을 출력할 수도 있다. 게임 오디오 코딩/렌더링 엔진들은, 전달 시스템들에 의한 출력을 위해 채널 기반 오디오 콘텐츠로 오디오 스템들을 코딩 및 또는 렌더링할 수도 있다. 그 기법들이 수행될 수도 있는 또 다른 예시적인 상황은, 브로드캐스트 레코딩 오디오 오브젝트들, 전문 오디오 시스템들, 소비자 온-디바이스 캡처, HOA 오디오 포맷, 온-디바이스 렌더링, 소비자 오디오, TV 및 액세서리, 그리고 카 오디오 시스템들을 포함할 수도 있는 오디오 에코시스템을 포함한다.
브로드캐스트 레코딩 오디오 오브젝트들, 전문 오디오 시스템들, 및 소비자 온-디바이스 캡처는 그들의 출력을 HOA 오디오 포맷을 이용하여 모두 코딩할 수도 있다. 이러한 방법으로, 오디오 콘텐츠는, 온-디바이스 렌더링, 소비자 오디오, TV, 및 액세서리들, 및 카 오디오 시스템들을 이용하여 플레이백될 수도 있는 단일 표현으로 HOA 오디오 포맷을 이용하여 코딩될 수도 있다. 즉, 오디오 콘텐츠의 단일 표현은 오디오 플레이백 시스템 (16) 과 같은 일반 오디오 플레이백 시스템에서 (즉, 5.1, 7.1 등과 같은 특정 구성을 필요로 하는 것과 반대로) 플레이백될 수도 있다.
본 기법들이 수행될 수도 있는 상황의 다른 예들은, 획득 엘리먼트들, 및 플레이백 엘리먼트들을 포함할 수도 있는 오디오 에코시스템을 포함한다. 획득 엘리먼트들은 유선 및/또는 무선 획득 디바이스들 (acquisition devices) (예컨대, 아이겐 (Eigen) 마이크로폰들), 온-디바이스 서라운드 사운드 캡처, 및 모바일 디바이스들 (예컨대, 스마트폰들 및 태블릿들) 을 포함할 수도 있다. 일부 예들에서, 유선 및/또는 무선 획득 디바이스들은 유선 및/또는 무선 통신 채널(들) 을 통해 모바일 디바이스에 연결될 수도 있다.
본 개시의 하나 이상의 기법들에 따르면, 모바일 디바이스는 음장을 획득하는데 사용될 수도 있다. 가령, 모바일 디바이스는 유선 및/또는 무선 획득 디바이스들 및/또는 온-디바이스 서라운드 사운드 캡처 (예컨대, 모바일 디바이스에 통합된 복수의 마이크로폰들) 를 통해서 음장을 획득할 수도 있다. 모바일 디바이스는 그 후 플레이백 엘리먼트들 중 하나 이상에 의한 플레이백을 위해 그 획득된 음장을 HOA 계수들로 코딩할 수도 있다. 가령, 모바일 디바이스의 사용자는 라이브 이벤트 (예를 들어, 미팅, 컨퍼런스, 연극, 콘서트 등) 을 레코딩 (라이브 이벤트의 음장을 획득) 하고 그 리코딩을 HOA 계수들로 코딩할 수도 있다.
모바일 디바이스는 또한, HOA 코딩된 음장을 플레이백하기 위하여 플레이백 엘리먼트들 중의 하나 이상을 이용할 수도 있다. 가령, 모바일 디바이스는 HOA 코딩된 음장을 디코딩하고, 플레이백 엘리먼트들 중의 하나 이상으로 하여금 음장을 재현하게 하는 신호를 플레이백 엘리먼트들 중의 하나 이상으로 출력할 수도 있다. 일 예로서, 모바일 디바이스는, 신호를 하나 이상의 스피커들 (예를 들어, 스피커 어레이, 사운드 바 등) 로 출력하기 위하여 무선 및/또는 무선 통신 채널들을 이용할 수도 있다. 또 다른 예로서, 모바일 디바이스는 하나 이상의 도킹 스테이션들 및/또는 하나 이상의 도킹된 스피커들 (예를 들어, 스마트 카 및/또는 가정에 있는 사운드 시스템들) 로 신호를 출력하기 위하여 도킹 솔루션들을 이용할 수도 있다. 또 다른 예로서, 모바일 디바이스는, 예를 들어, 현실적인 바이오럴 사운드를 생성하기 위하여, 헤드폰들의 세트로 신호를 출력하는데 헤드폰 렌더링을 이용할 수도 있다.
일부 예들에서, 특정 모바일 디바이스는 3D 음장을 획득할 뿐만 아니라 나중에 동일한 3D 음장을 플레이백할 수도 있다. 일부 예들에서, 모바일 디바이스는 3D 음장을 획득하고, 3D 음장을 HOA 로 인코딩하고, 플레이백을 위해 인코딩된 3D 음장을 하나 이상의 다른 디바이스들 (예를 들어, 다른 모바일 디바이스들 및/또는 다른 비모바일 디바이스들) 로 송신할 수도 있다.
본 기법들이 수행될 수도 있는 또 다른 상황은, 오디오 콘텐츠, 게임 스튜디오들, 코딩된 오디오 콘텐츠, 렌더링 엔진들, 및 전달 시스템들을 포함할 수도 있는 오디오 에코시스템을 포함한다. 일부 예들에서, 게임 스튜디오들은, HOA 신호들의 편집을 지원할 수도 있는 하나 이상의 DAW 들을 포함할 수도 있다. 가령, 하나 이상의 DAW 들은, 하나 이상의 게임 오디오 시스템들과 동작 (예를 들어, 작동) 하도록 구성될 수도 있는 HOA 플러그인들 및/또는 툴들을 포함할 수도 있다. 일부 예들에서, 게임 스튜디오들은 HOA 를 지원하는 새로운 스템 포맷 (stem format) 들을 출력할 수도 있다. 어느 경우든, 게임 스튜디오들은, 전달 시스템들에 의한 플레이백을 위해 음장을 렌더링할 수도 있는 렌더링 엔진들로 코딩된 오디오 콘텐츠를 출력할 수도 있다.
이 기법들은 또한 예시적인 오디오 획득 디바이스들에 대해 수행될 수도 있다. 예를 들어, 이 기법들은 3D 음장을 레코딩하도록 집합적으로 구성되는 복수의 마이크로폰들을 포함할 수도 있는 아이겐 (Eigen) 마이크로폰에 대해 수행될 수도 있다. 일부 예들에서, 아이겐 마이크로폰의 복수의 마이크로폰들은, 대략 4cm 의 반경을 갖는 실질적으로 구형 볼의 표면에 위치될 수도 있다. 일부 예들에서, 오디오 인코딩 디바이스 (20) 는 마이크로폰으로부터 직접 비트스트림 (21) 을 출력하기 위하여 아이겐 마이크로폰내에 통합될 수도 있다.
다른 예시적인 오디오 획득 상황은 하나 이상의 아이겐 마이크로폰들과 같은 하나 이상의 마이크로폰들로부터 신호를 수신하도록 구성될 수도 있는 프로덕션 트럭 (production truck) 을 포함할 수도 있다. 프로덕션 트럭은 또한, 도 3의 오디오 인코더 (20) 와 같은 오디오 인코더를 포함할 수도 있다.
모바일 디바이스는 또한, 일부 경우, 3D 음장을 레코딩하도록 집합적으로 구성된 복수의 마이크로폰들을 포함할 수도 있다. 다른 말로, 복수의 마이크로폰은 X, Y, Z 다이버시티 (diversity) 를 가질 수도 있다. 일부 예들에서, 모바일 디바이스는 모바일 디바이스의 하나 이상의 다른 마이크로폰들에 대해 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 (compact disc), 레이저 디스크 (laser disc), 광 디스크 (optical disc), DVD (digital versatile disc), 플로피 디스크 (floppy disk) 및 블루레이 디스크 (Blu-ray disc) 를 포함하며, 여기서, 디스크 (disk) 는 보통 데이터를 자기적으로 재생하지만, 디스크 (disc) 는 레이저를 이용하여 광학적으로 데이터를 재생한다. 또한, 상기의 조합은 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
명령들은 하나 이상의 프로세서, 이를테면 하나 이상의 DSP (digital signal processor), 범용 마이크로프로세서, ASIC (application specific integrated circuit), FPGA (field programmable logic array), 또는 다른 등가 집적 또는 이산 로직 회로에 의해 실행될 수도 있다. 따라서, 본원에 사용된 용어 "프로세서" 는 전술한 구조 중 임의의 것 또는 본원에 설명된 기법들의 구현에 적합한 임의의 다른 구조를 지칭할 수도 있다. 추가로, 일부 양태들에서, 여기서 설명된 기능은 인코딩 및 디코딩을 위해 구성된 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공되거나 또는 결합된 코덱에 포함될 수도 있다. 또한, 그 기법들은 하나 이상의 회로 또는 로직 엘리먼트들에서 완전히 구현될 수 있다.
본 개시의 기법들은 무선 핸드셋, 집적 회로 (IC) 또는 IC 들의 세트 (예를 들면, 칩 세트) 를 포함하여, 광범위하게 다양한 디바이스들 또는 장치들에서 구현될 수도 있다. 다양한 컴포넌트들, 모듈들 또는 유닛들이, 개시된 기술들을 수행하도록 구성된 디바이스들의 기능적인 양태들을 강조하기 위하여 본 개시에 설명되었지만, 상이한 하드웨어 유닛들에 의한 실현을 반드시 필요로 하는 것은 아니다. 오히려, 상술된 바처럼, 다양한 유닛들이 코덱 하드웨어 유닛에 결합될 수도 있거나, 또는 적합한 소프트웨어 및/또는 펌웨어와 함께, 상술된 하나 이상의 프로세서들을 포함하는 연동적인 (interoperative) 하드웨어 유닛들의 집합에 의해 제공될 수도 있다.
본 기법들의 다양한 양태들이 설명되었다. 본 기법들의 이들 및 다른 양태들은 다음의 청구항들의 범위 내에 있다.

Claims (27)

  1. 크로스페이딩된 구면 조화 계수 (SHC) 들의 제 1 세트를 획득하기 위하여 디바이스에 의해, SHC 들의 제 1 세트와 SHC 들의 제 2 세트 사이에 크로스페이딩하는 단계를 포함하고, 상기 SHC 들의 제 1 세트는 제 1 음장을 기술하고 상기 SHC 들의 제 2 세트는 제 2 음장을 기술하는, 방법.
  2. 제 1 항에 있어서,
    상기 SHC들의 제 1 세트는, 1 보다 큰 차수를 갖는 기저 함수들에 대응하는 SHC들을 포함하고,
    상기 SHC들의 제 2 세트는, 1 보다 큰 차수를 갖는 기저 함수들에 대응하는 SHC들을 포함하는, 방법.
  3. 제 1 항에 있어서,
    상기 SHC들의 제 1 세트는 주변 SHC 들의 제 1 세트를 포함하고,
    상기 SHC들의 제 2 세트는 주변 SHC 들의 제 2 세트를 포함하는, 방법.
  4. 제 3 항에 있어서,
    상기 주변 SHC들의 제 1 세트는 에너지 보상된 주변 SHC 들의 제 1 세트이고,
    상기 주변 SHC들의 제 2 세트는 에너지 보상된 주변 SHC 들의 제 2 세트인, 방법.
  5. 제 3 항에 있어서,
    상기 주변 SHC들의 제 1 세트에 대응하는 SHC들의 분해를 획득하는 단계;
    백그라운드 채널 정보에 기초하여, 상기 분해의 서브세트를 선택하는 단계;
    에너지 보상된 분해를 결정하기 위하여 상기 분해의 서브세트에 대해 에너지 보상을 수행하는 단계; 및
    상기 에너지 보상된 분해에 기초하여 에너지 보상된 주변 SHC 들의 제 1 세트를 결정하는 단계를 더 포함하는, 방법.
  6. 제 5 항에 있어서,
    상기 에너지 보상을 수행하는 단계는, 적어도 부분적으로, 프레임 길이를 나타내는 하나 이상의 비트들의, 함수로서 획득되는 윈도잉 함수를 이용하여 상기 에너지 보상을 수행하는 단계를 포함하는, 방법.
  7. 제 3 항에 있어서,
    상기 주변 SHC들의 제 1 세트는 현재 프레임에 대응하고,
    상기 주변 SHC들의 제 2 세트는 이전 프레임에 대응하는, 방법.
  8. 제 3 항에 있어서,
    크로스페이딩하는 단계는 상기 주변 SHC들의 제 2 세트의 일 부분에 기초하여 상기 주변 SHC 들의 제 1 세트의 일 부분을 수정하는 단계를 포함하는, 방법.
  9. 제 3 항에 있어서,
    상기 디바이스는 오디오 디코더이고, 상기 방법은, 상기 크로스페이딩된 주변 SHC들의 표현 및 상기 크로스페이딩된 주변 SHC들에 대응하는 크로스페이딩된 포어그라운드 SHC들의 표현을 포함하는 비트스트림을 획득하는 단계를 더 포함하는, 방법.
  10. 제 3 항에 있어서,
    상기 디바이스는 오디오 디코더이고, 상기 방법은, 주변 SHC들의 제 1 세트, 주변 SHC들의 제 2 세트, 및 상기 크로스페이딩된 주변 SHC들에 대응하는 크로스페이딩된 포어그라운드 SHC들의 표현을 포함하는 비트스트림을 획득하는 단계를 더 포함하는, 방법.
  11. 구면 조화 계수 (SHC) 들의 제 1 세트와 SHC 들의 제 2 세트를 저장하도록 구성된 메모리로서, 상기 SHC 들의 제 1 세트는 제 1 음장을 기술하고 상기 SHC 들의 제 2 세트는 제 2 음장을 기술하는, 상기 메모리, 및
    크로스페이딩된 주변 SHC 들의 제 1 세트를 획득하기 위하여 상기 SHC 들의 제 1 세트와 상기 SHC 들의 제 2 세트 사이에 크로스페이딩하도록 구성된 하나 이상의 프로세서들
    을 포함하는, 오디오 디코딩 디바이스.
  12. 제 11 항에 있어서,
    상기 SHC들의 제 1 세트는, 1 보다 큰 차수를 갖는 기저 함수들에 대응하는 SHC들을 포함하고,
    상기 SHC들의 제 2 세트는, 1 보다 큰 차수를 갖는 기저 함수들에 대응하는 SHC들을 포함하는, 오디오 디코딩 디바이스.
  13. 제 11 항에 있어서,
    상기 SHC들의 제 1 세트는 주변 SHC 들의 제 1 세트를 포함하고,
    상기 SHC들의 제 2 세트는 주변 SHC 들의 제 2 세트를 포함하는, 오디오 디코딩 디바이스.
  14. 제 13 항에 있어서,
    상기 주변 SHC들의 제 1 세트는 에너지 보상된 주변 SHC 들의 제 1 세트이고,
    상기 주변 SHC들의 제 2 세트는 에너지 보상된 주변 SHC 들의 제 2 세트인, 오디오 디코딩 디바이스.
  15. 제 13 항에 있어서,
    상기 주변 SHC들의 제 1 세트는 현재 프레임에 대응하고,
    상기 주변 SHC들의 제 2 세트는 이전 프레임에 대응하는, 오디오 디코딩 디바이스.
  16. 제 13 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 주변 SHC들의 제 2 세트의 일 부분에 기초하여 상기 주변 SHC 들의 제 1 세트의 일 부분을 적어도 수정함으로써 크로스페이딩하도록 구성되는, 오디오 디코딩 디바이스.
  17. 제 11 항에 있어서,
    상기 크로스페이딩된 주변 SHC들의 제 1 세트로부터 렌더링된 스피커 피드들에 기초하여 상기 제 1 및 제 2 음장들을 재생하도록 구성된 스피커를 더 포함하는, 오디오 디코딩 디바이스.
  18. 구면 조화 계수 (SHC) 들의 제 1 세트와 SHC 들의 제 2 세트를 저장하도록 구성된 메모리로서, 상기 SHC 들의 제 1 세트는 제 1 음장을 기술하고 상기 SHC 들의 제 2 세트는 제 2 음장을 기술하는, 상기 메모리, 및
    크로스페이딩된 SHC 들의 제 1 세트를 획득하기 위하여 상기 SHC 들의 제 1 세트와 상기 SHC 들의 제 2 세트 사이에 크로스페이딩하도록 구성된 하나 이상의 프로세서들
    을 포함하는, 오디오 인코딩 디바이스.
  19. 제 18 항에 있어서,
    상기 SHC들의 제 1 세트는, 1 보다 큰 차수를 갖는 기저 함수들에 대응하는 SHC들을 포함하고,
    상기 SHC들의 제 2 세트는, 1 보다 큰 차수를 갖는 기저 함수들에 대응하는 SHC들을 포함하는, 오디오 인코딩 디바이스.
  20. 제 18 항에 있어서,
    상기 SHC들의 제 1 세트는 주변 SHC 들의 제 1 세트를 포함하고,
    상기 SHC들의 제 2 세트는 주변 SHC 들의 제 2 세트를 포함하는, 오디오 인코딩 디바이스.
  21. 제 20 항에 있어서,
    상기 주변 SHC들의 제 1 세트는 에너지 보상된 주변 SHC 들의 제 1 세트이고,
    상기 주변 SHC들의 제 2 세트는 에너지 보상된 주변 SHC 들의 제 2 세트인, 오디오 인코딩 디바이스.
  22. 제 20 항에 있어서,
    상기 하나 이상의 프로세서들은 또한, 상기 주변 SHC들의 제 1 세트에 대응하는 SHC들의 분해를 획득하고, 백그라운드 채널 정보에 기초하여, 상기 분해의 서브세트를 선택하고, 상기 분해의 서브세트에 대해 에너지 보상을 수행하여 에너지 보상된 분해를 결정하고, 상기 에너지 보상된 분해에 기초하여 에너지 보상된 주변 SHC 들의 제 1 세트를 결정하도록 구성되는, 오디오 인코딩 디바이스.
  23. 제 22 항에 있어서,
    상기 하나 이상의 프로세서들은, 적어도 부분적으로, 프레임 길이를 나타내는 하나 이상의 비트들의, 함수로서 획득되는 윈도잉 함수를 이용하여 상기 에너지 보상을 수행하도록 구성되는, 오디오 인코딩 디바이스.
  24. 제 20 항에 있어서,
    상기 주변 SHC들의 제 1 세트는 현재 프레임에 대응하고,
    상기 주변 SHC들의 제 2 세트는 이전 프레임에 대응하는, 오디오 인코딩 디바이스.
  25. 제 20 항에 있어서,
    상기 하나 이상의 프로세서들은, 상기 주변 SHC들의 제 2 세트의 일 부분에 기초하여 상기 주변 SHC 들의 제 1 세트의 일 부분을 적어도 수정함으로써 크로스페이딩하도록 구성되는, 오디오 인코딩 디바이스.
  26. 제 18 항에 있어서,
    상기 SHC들의 제 1 및 제 2 세트들을 나타내는 오디오 데이터를 캡처하도록 구성된 마이크로폰을 더 포함하는, 오디오 인코딩 디바이스.
  27. 구면 조화 계수 (SHC) 들의 제 1 세트와 SHC 들의 제 2 세트를 저장하는 수단으로서, 상기 SHC 들의 제 1 세트는 제 1 음장을 기술하고 상기 SHC 들의 제 2 세트는 제 2 음장을 기술하는, 상기 저장하는 수단, 및
    크로스페이딩된 SHC 들의 제 1 세트를 획득하기 위하여 상기 SHC 들의 제 1 세트와 상기 SHC 들의 제 2 세트 사이에 크로스페이딩하는 수단
    을 포함하는, 장치.
KR1020167032935A 2014-05-16 2015-05-15 고차 앰비소닉 신호들간의 크로스페이딩 KR20170010367A (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201461994763P 2014-05-16 2014-05-16
US61/994,763 2014-05-16
US201462004076P 2014-05-28 2014-05-28
US62/004,076 2014-05-28
US201562118434P 2015-02-19 2015-02-19
US62/118,434 2015-02-19
US14/712,854 2015-05-14
US14/712,854 US10134403B2 (en) 2014-05-16 2015-05-14 Crossfading between higher order ambisonic signals
PCT/US2015/031195 WO2015176005A1 (en) 2014-05-16 2015-05-15 Crossfading between higher order ambisonic signals

Publications (1)

Publication Number Publication Date
KR20170010367A true KR20170010367A (ko) 2017-01-31

Family

ID=53298603

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167032935A KR20170010367A (ko) 2014-05-16 2015-05-15 고차 앰비소닉 신호들간의 크로스페이딩

Country Status (6)

Country Link
US (1) US10134403B2 (ko)
EP (1) EP3143617B1 (ko)
JP (1) JP2017519417A (ko)
KR (1) KR20170010367A (ko)
CN (1) CN106471578B (ko)
WO (1) WO2015176005A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9961475B2 (en) * 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from object-based audio to HOA
US9961467B2 (en) * 2015-10-08 2018-05-01 Qualcomm Incorporated Conversion from channel-based audio to HOA
US10249312B2 (en) 2015-10-08 2019-04-02 Qualcomm Incorporated Quantization of spatial vectors
WO2018201113A1 (en) * 2017-04-28 2018-11-01 Dts, Inc. Audio coder window and transform implementations
US10887717B2 (en) * 2018-07-12 2021-01-05 Sony Interactive Entertainment Inc. Method for acoustically rendering the size of sound a source
US11830507B2 (en) * 2018-08-21 2023-11-28 Dolby International Ab Coding dense transient events with companding
JP7449184B2 (ja) 2020-07-13 2024-03-13 日本放送協会 音場モデリング装置及びプログラム
CN116324980A (zh) * 2020-09-25 2023-06-23 苹果公司 声道、对象和hoa音频内容的无缝可扩展解码

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000267686A (ja) * 1999-03-19 2000-09-29 Victor Co Of Japan Ltd 信号伝送方式及び復号化装置
GB2410164A (en) * 2004-01-16 2005-07-20 Anthony John Andrews Sound feature positioner
CN101578865A (zh) * 2006-12-22 2009-11-11 高通股份有限公司 用于内容自适应视频帧切割及非一致存取单元编码的技术
JP5773540B2 (ja) * 2009-10-07 2015-09-02 ザ・ユニバーシティ・オブ・シドニー 記録された音場の再構築
US8473084B2 (en) * 2010-09-01 2013-06-25 Apple Inc. Audio crossfading
FR2969805A1 (fr) * 2010-12-23 2012-06-29 France Telecom Codage bas retard alternant codage predictif et codage par transformee
ES2665944T3 (es) * 2010-12-24 2018-04-30 Huawei Technologies Co., Ltd. Aparato para realizar una detección de actividad de voz
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
EP2782094A1 (en) * 2013-03-22 2014-09-24 Thomson Licensing Method and apparatus for enhancing directivity of a 1st order Ambisonics signal
US20140355769A1 (en) 2013-05-29 2014-12-04 Qualcomm Incorporated Energy preservation for decomposed representations of a sound field
US9922656B2 (en) 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
CN111179950B (zh) * 2014-03-21 2022-02-15 杜比国际公司 对压缩的高阶高保真立体声(hoa)表示进行解码的方法和装置以及介质

Also Published As

Publication number Publication date
US10134403B2 (en) 2018-11-20
EP3143617B1 (en) 2020-08-26
CN106471578A (zh) 2017-03-01
CN106471578B (zh) 2020-03-31
WO2015176005A1 (en) 2015-11-19
US20150332683A1 (en) 2015-11-19
JP2017519417A (ja) 2017-07-13
EP3143617A1 (en) 2017-03-22

Similar Documents

Publication Publication Date Title
US10176814B2 (en) Higher order ambisonics signal compression
KR101756612B1 (ko) 벡터들을 코딩하기 위한 프레임 파라미터 재사용성의 표시
KR102032021B1 (ko) 고차 앰비소닉스 오디오 신호들로부터 분해된 벡터들의 코딩
KR101962000B1 (ko) 고차 앰비소닉 (hoa) 백그라운드 채널들 간의 상관의 감소
CN106575506B (zh) 用于执行高阶立体混响音频数据的中间压缩的装置和方法
KR102329373B1 (ko) 고차 앰비소닉 오디오 신호들로부터 분해된 코딩 벡터들에 대한 코드북들 선택
KR20160136361A (ko) 음장들의 디스크립션들로의 오디오 채널들의 삽입
CN106471578B (zh) 用于较高阶立体混响信号之间的交叉淡化的方法和装置
EP3143618B1 (en) Closed loop quantization of higher order ambisonic coefficients
KR102077412B1 (ko) 다중 트랜지션들 동안 고차 앰비소닉 계수들의 코딩
KR101818877B1 (ko) 고차 앰비소닉 오디오 렌더러들에 대한 희소성 정보의 획득
KR101941764B1 (ko) 고차 앰비소닉 오디오 렌더러들에 대한 대칭성 정보의 획득