KR20230145448A - 오디오 객체들의 클러스터링 - Google Patents
오디오 객체들의 클러스터링 Download PDFInfo
- Publication number
- KR20230145448A KR20230145448A KR1020237031407A KR20237031407A KR20230145448A KR 20230145448 A KR20230145448 A KR 20230145448A KR 1020237031407 A KR1020237031407 A KR 1020237031407A KR 20237031407 A KR20237031407 A KR 20237031407A KR 20230145448 A KR20230145448 A KR 20230145448A
- Authority
- KR
- South Korea
- Prior art keywords
- category
- audio
- audio object
- rendering metadata
- assigned
- Prior art date
Links
- 238000009877 rendering Methods 0.000 claims abstract description 435
- 238000000034 method Methods 0.000 claims abstract description 174
- 230000005236 sound signal Effects 0.000 claims description 58
- 230000008569 process Effects 0.000 description 83
- 230000006870 function Effects 0.000 description 76
- 239000011159 matrix material Substances 0.000 description 12
- 238000012545 processing Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000002238 attenuated effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241000238631 Hexapoda Species 0.000 description 1
- 206010021403 Illusion Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/11—Positioning of individual sound objects, e.g. moving airplane, within a sound field
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Stereophonic System (AREA)
Abstract
오디오 객체들을 클러스터링하기 위한 방법은 복수의 오디오 객체들을 식별하는 단계 - 복수의 오디오 객체들 중의 각각의 오디오 객체는 각각의 공간적 위치 정보 및 각각의 렌더링 메타데이터를 나타내는 각각의 메타데이터와 연관됨 - 를 포함할 수 있다. 방법은 복수의 오디오 객체들 중의 오디오 객체들을 렌더링 메타데이터의 복수의 카테고리들 중의 렌더링 메타데이터의 카테고리들에 할당하는 단계 - 렌더링 메타데이터의 적어도 하나의 카테고리는 보존될 렌더링 메타데이터의 복수의 타입들을 포함함 - 를 포함할 수 있다. 방법은 렌더링 메타데이터의 각각의 카테고리에 대한 복수의 오디오 객체 클러스터들의 할당을 결정하는 단계를 포함할 수 있다. 방법은 공간적 위치 정보를 나타내는 메타데이터에 기초하여 그리고 렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 복수의 오디오 객체들 중의 오디오 객체들을 할당된 복수의 오디오 객체 클러스터들로 렌더링하는 단계를 포함할 수 있다.
Description
관련 출원들에 대한 상호 참조
본 출원은 다음의 우선권 출원들, 즉, 2021년 2월 20일자로 출원된 국제 특허 출원 번호 PCT/CN2021/077110; 2021년 3월 24일자로 출원된 미국 가특허 출원 제63/165,220호, 2021년 6월 2일자로 출원된 미국 가특허 출원 제63/202,227호, 및 2021년 6월 8일자로 출원된 유럽 특허 출원 제21178179.4호에 대한 우선권을 주장하며, 이들은 본 명세서에 참조로 포함된다.
기술 분야
본 개시내용은 오디오 객체들(audio objects)을 클러스터링하기 위한 시스템들, 방법들 및 매체들에 관한 것이다.
공간적으로 위치된 오디오 콘텐츠를 제시할 수 있는 오디오 콘텐츠 제시 디바이스들은 점점 더 대중화되고 있다. 예를 들어, 그러한 오디오 콘텐츠 제시 디바이스들은 청취자의 3차원 환경 내의 다양한 공간적 위치들(spatial positions)에 있는 것으로 인지되는 오디오 콘텐츠를 제시할 수 있다. 일부 기존의 오디오 콘텐츠 제시 방법들 및 디바이스들은 일부 조건들 하에서 수용가능한 성능을 제공하지만, 개선된 방법들 및 디바이스들이 바람직할 수 있다.
표기법 및 명명법
청구항들을 포함한 본 개시내용 전체에 걸쳐, 용어들 "스피커(speaker)", "확성기(loudspeaker)" 및 "오디오 재생 트랜스듀서(audio reproduction transducer)"는 임의의 사운드-방출 트랜스듀서(sound-emitting transducer)(또는 트랜스듀서들의 세트)를 나타내기 위해 동의어로 이용된다. 전형적인 헤드폰들의 세트는 2개의 스피커를 포함한다. 스피커는 단일의 공통 스피커 피드 또는 다수의 스피커 피드들에 의해 구동될 수 있는 다수의 트랜스듀서들(예를 들어, 우퍼(woofer) 및 트위터(tweeter))를 포함하도록 구현될 수 있다. 일부 예들에서, 스피커 피드(들)는 상이한 트랜스듀서들에 결합된 상이한 회로 브랜치들에서 상이한 처리를 겪을 수 있다.
청구항들을 포함한 본 개시내용 전체에 걸쳐, 신호 또는 데이터에 "∼에 대해(on)" 동작을 수행(예를 들어, 신호 또는 데이터를 필터링, 스케일링, 변환, 또는 그에 이득을 적용하는)한다는 표현은, 넓은 의미에서, 신호 또는 데이터에 대해, 또는 신호 또는 데이터의 처리된 버전에 대해(예를 들어, 그것에 대한 동작의 수행 이전에 예비 필터링 또는 전처리를 겪은 신호의 버전에 대해) 직접 동작을 수행하는 것을 나타내기 위해 이용된다.
청구항들을 포함한 본 개시내용 전체에 걸쳐, "시스템"이라는 표현은 디바이스, 시스템, 또는 서브시스템을 나타내기 위해 넓은 의미로 이용된다. 예를 들어, 디코더를 구현하는 서브시스템은 디코더 시스템이라고 지칭될 수 있고, 그러한 서브시스템을 포함하는 시스템(예를 들어, 서브시스템이 M개의 입력들을 생성하고 다른 X-M개의 입력들이 외부 소스로부터 수신되는, 다수의 입력들에 응답하여 X개의 출력 신호들을 생성하는 시스템)이 또한 디코더 시스템이라고 지칭될 수 있다.
청구항들을 포함한 본 개시내용 전체에 걸쳐, 용어 "프로세서"는 넓은 의미에서 데이터(예를 들어, 오디오, 또는 비디오 또는 기타의 이미지 데이터)에 대한 동작들을 수행하도록 (예를 들어, 소프트웨어 또는 펌웨어로) 프로그래밍가능하거나 기타의 방식으로 구성가능한 시스템 또는 디바이스를 나타내기 위해 이용된다. 프로세서들의 예들은 필드-프로그래밍가능 게이트 어레이(또는 다른 구성가능한 집적 회로 또는 칩셋), 오디오 또는 다른 사운드 데이터에 대해 파이프라인형 처리를 수행하도록 프로그래밍되고/되거나 다른 방식으로 구성되는 디지털 신호 프로세서, 프로그래밍가능 범용 프로세서 또는 컴퓨터, 및 프로그래밍가능 마이크로프로세서 칩 또는 칩셋을 포함한다.
청구항들을 포함한 본 개시내용 전체에 걸쳐, 용어 "클러스터" 또는 "클러스터들"은 오디오 객체들의 클러스터를 의미하는 데 이용된다. "클러스터" 및 "오디오 객체 클러스터"라는 용어들은 동의어이고 상호교환가능하게 이용될 수 있는 것으로 이해되어야 한다. 오디오 객체들의 클러스터는, 유사한 공간적 위치 및/또는 유사한 렌더링 메타데이터를 갖는 오디오 객체들과 같은, 하나 이상의 유사한 속성을 갖는 오디오 객체들의 조합이다. 일부 경우들에서, 오디오 객체는 단일 클러스터에 할당될 수 있는 반면, 다른 경우들에서, 오디오 객체는 다수의 클러스터들에 할당될 수 있다.
본 개시내용의 적어도 일부 양태들은 방법들을 통해 구현될 수 있다. 일부 방법들은 복수의 오디오 객체들을 식별하는 단계 - 복수의 오디오 객체들 중의 각각의 오디오 객체는 각각의 공간적 위치 정보 및 각각의 렌더링 메타데이터를 나타내는 각각의 메타데이터와 연관됨 - 를 포함할 수 있다. 일부 방법들은 복수의 오디오 객체들 중의 오디오 객체들을 렌더링 메타데이터의 복수의 카테고리들 중의 렌더링 메타데이터의 카테고리들에 할당하는 단계 - 렌더링 메타데이터의 적어도 하나의 카테고리는 보존될 렌더링 메타데이터의 복수의 타입들을 포함함 - 를 포함할 수 있다. 일부 방법들은 렌더링 메타데이터의 각각의 카테고리에 대한 복수의 오디오 객체 클러스터들의 할당을 결정하는 단계 - 오디오 객체 클러스터는 유사한 속성들을 갖는 복수의 오디오 객체들 중의 하나 이상의 오디오 객체를 포함함 - 를 포함할 수 있다. 일부 방법들은 공간적 위치 정보를 나타내는 메타데이터에 기초하여 그리고 렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 복수의 오디오 객체들 중의 오디오 객체들을 할당된 복수의 오디오 객체 클러스터들로 렌더링하는 단계를 포함할 수 있다.
일부 예들에서, 렌더링 메타데이터의 카테고리들은 바이패스 모드 카테고리(bypass mode category) 및 가상화 카테고리(virtualization category)를 포함한다. 일부 예들에서, 가상화 카테고리에 포함된 렌더링 메타데이터의 복수의 타입들은 머리 중심(head center)으로부터 오디오 객체까지의 거리를 각각 나타내는 가상화의 복수의 타입들을 포함한다.
일부 예들에서, 렌더링 메타데이터의 카테고리들은 구역 카테고리(zone category) 또는 스냅 카테고리(snap category) 중 하나를 포함한다.
일부 예들에서, 렌더링 메타데이터의 제1 카테고리에 할당된 오디오 객체는 렌더링 메타데이터의 제2 카테고리에 할당된 복수의 오디오 객체 클러스터들 중의 오디오 객체 클러스터에 할당되는 것이 금지된다.
일부 예들에서, 렌더링 메타데이터의 각각의 카테고리에 대한 복수의 오디오 객체 클러스터들의 할당을 결정하는 단계는, (i) 렌더링 메타데이터의 각각의 카테고리에 대한 초기 복수의 오디오 객체 클러스터들의 초기 할당을 결정하는 단계; (ii) 공간적 위치 정보를 나타내는 메타데이터에 기초하여 그리고 렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 오디오 객체들을 초기 복수의 오디오 객체 클러스터들에 할당하는 단계; (iii) 렌더링 메타데이터의 각각의 카테고리에 대해, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용(category cost)을 결정하는 단계; (iv) 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 비용에 적어도 부분적으로 기초하여 렌더링 메타데이터의 각각의 카테고리에 대한 초기 복수의 오디오 객체 클러스터들의 업데이트된 할당을 결정하는 단계; 및 (iv) 중지 기준에 도달할 때까지 (ii) - (iv)를 반복하는 단계를 포함한다. 일부 예들에서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 렌더링 메타데이터의 카테고리에 할당된 오디오 객체 클러스터들의 위치들 및 렌더링 메타데이터의 카테고리에 할당된 오디오 객체 클러스터들에 할당된 오디오 객체들의 위치들에 기초한다. 일부 예들에서, 카테고리 비용은, 오디오 객체가 할당된 오디오 객체 클러스터의 좌측 대 우측 배치(left versus right placement)에 대한 오디오 객체의 좌측 대 우측 배치에 기초한다. 일부 예들에서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 오디오 객체들의 라우드니스(loudness)에 기초한다. 일부 예들에서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 오디오 객체가 할당된 오디오 객체 클러스터에 대한 오디오 객체의 거리에 기초한다. 일부 예들에서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 오디오 객체가 할당된 오디오 객체 클러스터의 렌더링 메타데이터의 타입에 대한 오디오 객체의 렌더링 메타데이터의 타입의 유사성에 기초한다. 일부 예들에서, 방법들은 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 비용에 기초하여 전역 비용(global cost)을 결정하는 단계를 포함할 수 있고, 초기 복수의 오디오 객체 클러스터들의 업데이트된 할당은 전역 비용에 기초한다. 일부 예들에서, 업데이트된 할당을 결정하는 단계는, 렌더링 메타데이터의 복수의 카테고리들 중의 렌더링 메타데이터의 적어도 하나의 카테고리에 할당된 오디오 객체 클러스터들의 수를 변경하는 단계를 포함한다. 일부 예들에서, 방법들은 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 비용에 기초하여 전역 비용을 결정하는 단계를 더 포함할 수 있고, 오디오 객체 클러스터들의 수는 전역 비용에 기초하여 결정된다. 일부 예들에서, 오디오 객체 클러스터들의 수를 결정하는 단계는, 추가될 수 있는 오디오 객체 클러스터들의 최대 수를 나타내는 오디오 객체 클러스터들의 수에 관한 제약에 따라 전역 비용을 최소화하는 단계를 포함한다.
일부 예들에서, 복수의 오디오 객체들 중의 오디오 객체들을 할당된 복수의 오디오 객체 클러스터들로 렌더링하는 단계는, 오디오 객체가 할당되는 렌더링 메타데이터의 카테고리에 할당된 하나 이상의 오디오 객체 클러스터로 렌더링될 때 복수의 오디오 객체들 중의 각각의 오디오 객체에 대한 객체-대-클러스터 이득(object-to-cluster gain)을 결정하는 단계를 포함한다. 일부 예들에서, 렌더링 메타데이터의 복수의 카테고리들 중의 제1 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들은, 렌더링 메타데이터의 복수의 카테고리들 중의 제2 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들과 별개로 결정된다. 일부 예들에서, 렌더링 메타데이터의 복수의 카테고리들 중의 제1 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들은, 렌더링 메타데이터의 복수의 카테고리들 중의 제2 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들과 공동으로 결정된다.
본 명세서에 설명된 동작들, 기능들 및/또는 방법들 중 일부 또는 전부는 하나 이상의 비일시적 매체 상에 저장된 명령어들(예를 들어, 소프트웨어)에 따라 하나 이상의 디바이스에 의해 수행될 수 있다. 그러한 비일시적 매체는, 랜덤 액세스 메모리(RAM) 디바이스들, 판독 전용 메모리(ROM) 디바이스들 등을 포함하지만 그것으로 제한되지 않는, 본 명세서에서 설명된 것들과 같은 메모리 디바이스들을 포함할 수 있다. 따라서, 본 개시내용에서 설명된 주제의 일부 혁신적인 양태들은 소프트웨어가 저장된 하나 이상의 비일시적 매체를 통해 구현될 수 있다.
본 개시내용의 적어도 일부 양태들은 장치를 통해 구현될 수 있다. 예를 들어, 하나 이상의 디바이스는, 적어도 부분적으로, 본 명세서에 개시된 방법들을 수행할 수 있다. 일부 구현들에서, 장치는 인터페이스 시스템 및 제어 시스템을 갖는 오디오 처리 시스템이거나 이를 포함한다. 제어 시스템은 하나 이상의 범용 단일 또는 멀티 칩 프로세서, 디지털 신호 프로세서(DSP)들, 주문형 집적 회로(ASIC)들, 필드 프로그래밍가능 게이트 어레이(FPGA)들 또는 다른 프로그래밍가능 로직 디바이스들, 이산 게이트들 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 이들의 조합을 포함할 수 있다.
본 개시내용은 다양한 기술적 이점들을 제공한다. 예를 들어, 공간적 위치 정보 뿐만 아니라 오디오 객체가 렌더링될 방식을 나타내는 렌더링 메타데이터와 연관될 수 있는 오디오 객체들은, 렌더링 메타데이터들의 상이한 카테고리들에 걸쳐 렌더링 메타데이터를 보존하는 방식으로 클러스터링될 수 있다. 일부 경우에, 렌더링 메타데이터는 렌더링 메타데이터의 동일한 카테고리 내에서 오디오 객체들을 클러스터링할 때 보존되지 않을 수 있다. 렌더링 메타데이터의 카테고리에 기초하여 렌더링 메타데이터를 보존하는 하이브리드 접근법을 이용하여 오디오 객체들을 클러스터링함으로써, 본 명세서에 설명된 기술들은, 오디오 신호를 렌더링할 때 공간적 왜곡을 줄일 뿐만 아니라 그러한 오디오 신호를 송신하는데 요구되는 대역폭을 감소시키는 클러스터링된 오디오 객체들을 갖는 오디오 신호가 생성되는 것을 허용한다. 그러한 오디오 신호는 유리하게는 오디오 신호와 연관된 오디오 콘텐츠의 생성자의 의도에 더 충실할 수 있다.
본 명세서에 설명된 주제의 하나 이상의 구현의 세부사항들은 첨부 도면들 및 아래의 설명에 개시된다. 다른 특징들, 양태들 및 이점들은 설명, 도면들 및 청구항들로부터 명백해질 것이다. 이하의 도면들의 상대적인 치수들은 축척비율대로 그려진 것은 아닐 수 있다는 점에 유의한다.
도 1a 및 도 1b는 일부 구현들에 따른, 렌더링 메타데이터 및 공간적 포지셔닝 메타데이터에 기초한 오디오 객체들의 예시적인 클러스터들의 표현들을 도시한다.
도 2는 일부 구현들에 따른, 렌더링 메타데이터를 보존하면서 공간적 포지셔닝 메타데이터에 기초하여 오디오 객체들을 클러스터링하기 위한 프로세스의 예를 도시한다.
도 3은 일부 구현들에 따른, 클러스터들의 할당을 결정하기 위한 프로세스의 예를 도시한다.
도 4는 일부 구현들에 따른, 할당된 클러스터들에 오디오 객체들을 할당하기 위한 프로세스의 예를 도시한다.
도 5는 본 개시내용의 다양한 양태들을 구현할 수 있는 장치의 컴포넌트들의 예들을 나타내는 블록도를 도시한다.
다양한 도면들에서의 유사한 참조 번호들 및 명칭들은 유사한 요소들을 나타낸다.
도 2는 일부 구현들에 따른, 렌더링 메타데이터를 보존하면서 공간적 포지셔닝 메타데이터에 기초하여 오디오 객체들을 클러스터링하기 위한 프로세스의 예를 도시한다.
도 3은 일부 구현들에 따른, 클러스터들의 할당을 결정하기 위한 프로세스의 예를 도시한다.
도 4는 일부 구현들에 따른, 할당된 클러스터들에 오디오 객체들을 할당하기 위한 프로세스의 예를 도시한다.
도 5는 본 개시내용의 다양한 양태들을 구현할 수 있는 장치의 컴포넌트들의 예들을 나타내는 블록도를 도시한다.
다양한 도면들에서의 유사한 참조 번호들 및 명칭들은 유사한 요소들을 나타낸다.
공간적으로 위치된 오디오 콘텐츠를 제시할 수 있는 오디오 콘텐츠 제시 디바이스들은 (확성기들 또는 헤드폰들을 통해 제시되든 간에) 점점 더 대중화되고 있다. 예를 들어, 그러한 오디오 콘텐츠 제시 디바이스들은 청취자의 3차원 환경 내의 다양한 공간적 위치들에 있는 것으로 인지되는 오디오 콘텐츠를 제시할 수 있다. 그러한 오디오 콘텐츠는 고정된 공간적 위치에서 렌더링될 오디오 콘텐츠를 포함하는 "오디오 베드들(audio beds)", 및 변화하는 공간적 위치들에서 및/또는 변화하는 시간 지속기간들 동안 렌더링될 수 있는 오디오 콘텐츠를 포함하는 "오디오 객체들"을 포함하는 오디오 포맷으로 인코딩될 수 있다. 예를 들어, 오디오 객체는, 움직이는 객체(예를 들어, 버징 곤충(buzzing insect), 움직이는 차량 등), 움직이는 기기(예를 들어, 마칭 밴드(marching band)에서의 움직이는 기기 등)로부터의 음악, 또는 제 위치에서 움직일 수 있는 다른 오디오 콘텐츠와 연관된 사운드 효과를 나타낼 수 있다.
각각의 오디오 객체는, 오디오 객체가 어떻게 렌더링될지를 기술하는 메타데이터(일반적으로, 본 명세서에서는 "렌더링 메타데이터"라고 지칭됨) 및/또는 렌더링시에 오디오 객체가 인지될 공간적 위치(일반적으로, 본 명세서에서는 "공간적 위치 메타데이터"라고 지칭됨)와 연관될 수 있다. 예를 들어, 공간적 위치 메타데이터는, 오디오 객체가 렌더링시에 청취자에 의해 인지될 3차원(3D) 공간 내의 위치를 나타낼 수 있다. 공간적 위치 메타데이터는 오디오 객체의 방위각 위치 및/또는 오디오 객체의 고도 위치를 명시할 수 있다. 다른 예로서, 렌더링 메타데이터는 오디오 객체가 렌더링될 방식을 나타낼 수 있다. 헤드폰 렌더링 모드에 대한 렌더링 메타데이터의 예시적인 타입들은 스피커 렌더링 모드에 대한 렌더링 메타데이터의 타입들과 상이할 수 있다는 점에 유의해야 한다. 일부 구현들에서, 렌더링 메타데이터는 렌더링 메타데이터의 카테고리와 연관될 수 있다. 예를 들어, 헤드폰 렌더링 모드와 연관된 메타데이터를 렌더링하는 것은 제1 카테고리에 할당된 오디오 객체들을 렌더링할 때 룸 가상화(room virtualization)가 적용되지 않는 "바이패스 모드"에 대응하는 제1 카테고리, 및 제2 카테고리에 할당된 오디오 객체들을 렌더링할 때 룸 가상화 기술들이 적용되는 "룸 가상화" 카테고리에 대응하는 제2 카테고리와 연관될 수 있다. 이 예를 더 계속하면, 일부 실시예들에서, 렌더링 메타데이터의 카테고리는 카테고리 내의 렌더링 메타데이터의 타입들을 가질 수 있다. 더 특정한 예로서, 렌더링 메타데이터의 "룸 가상화" 카테고리와 연관된 렌더링 메타데이터는, 청취자의 머리로부터 오디오 객체가 렌더링될 룸 내의 위치까지의 상대적 거리를 각각 나타낼 수 있는, "근거리(near)", "중간(middle)", 및 "원거리(far)" 등의, 렌더링 메타데이터의 다수의 타입들을 가질 수 있다. 다른 예로서, 스피커 렌더링 모드와 연관된 렌더링 메타데이터는, 포인트-소스 타입 렌더링(point-source type rendering)을 달성하기 위해 오디오 객체가 특정 스피커에게 렌더링되어야 함을 나타내는 "스냅(snap)" 모드에 대응하는 렌더링 메타데이터의 제1 카테고리, 및 오디오 객체가 특정 그룹의 스피커들에 포함된 특정 스피커들에게 렌더링되지 않아야 한다는 것을 나타내는 "구역-마스크(zone-mask)" 모드(본 명세서에서는 일반적으로 "구역 마스크"라고 지칭됨)에 대응하는 렌더링 메타데이터의 제2 카테고리와 연관될 수 있다. 더 구체적인 예로서, 일부 실시예들에서, 렌더링 메타데이터의 "스냅" 카테고리는 특정 스피커들에 대응하는 렌더링 메타데이터의 타입들을 포함할 수 있다. 일부 실시예들에서, 렌더링 메타데이터의 "스냅" 카테고리는 2진 값을 포함할 수 있고, 여기서, 렌더링 메타데이터가 "1" 또는 "예(yes)"("스냅"이 인에이블되어야 한다는 것을 나타냄)인 것에 응답하여, 오디오 객체는 가장 가까운 스피커에 의해 렌더링될 수 있다. 다른 더 특정한 예로서, 렌더링 메타데이터의 "구역-마스크" 카테고리는, 오디오 객체를 렌더링하는 데 이용되지 않는 스피커들의 상이한 그룹들에 대응하는 렌더링 메타데이터의 타입들(예를 들어, "좌측 서라운드(left side surround) 및 우측 서라운드(right side surround)", "좌측 및 우측" 등)을 포함할 수 있다. 일부 실시예들에서, 렌더링 메타데이터의 "구역-마스크" 카테고리는 오디오 객체가 렌더링될 하나 이상의 스피커(예를 들어, "앞(front)", "뒤(back)" 등)를 나타낼 수 있고, 다른 스피커들은 오디오 객체의 렌더링으로부터 배제되거나 금지될 것이다.
공간적 위치 메타데이터 또는 렌더링 메타데이터이든 간에, 오디오 객체와 연관된 메타데이터는 오디오 콘텐츠 생성자에 의해 명시될 수 있고, 따라서 오디오 콘텐츠 생성자의 예술적 욕구(artistic wishes)를 나타낼 수 있다. 따라서, 오디오 콘텐츠 생성자의 예술적 욕구를 충실하게 표현하기 위해 공간적 위치 메타데이터 및/또는 렌더링 메타데이터를 보존하는 것이 중요할 수 있다. 그러나, 영화 또는 텔레비전 쇼에 대한 사운드트랙에서와 같은 일부 경우들에서, 오디오 콘텐츠는 수십 또는 수백 개의 오디오 객체를 포함할 수 있다. 따라서, 오디오 객체들을 포함하도록 포맷팅된 오디오 콘텐츠는 크기가 크고 상당히 복잡할 수 있다. 따라서, 렌더링을 위해 그러한 오디오 콘텐츠를 송신하는 것은 어려울 수 있고, 상당한 대역폭을 요구할 수 있다. 증가된 대역폭 요건들은, 영화관 등에 비해 집에서 그러한 오디오 콘텐츠를 시청하거나 청취할 때 대역폭 고려사항들에 의해 더 제약될 수 있는, 집에서의 그러한 오디오 콘텐츠의 시청자들 또는 청취자들에게 특히 문제가 될 수 있다.
오디오 콘텐츠 복잡성을 감소시키기 위해, 오디오 객체들은, 위치(예를 들어, 방위각 위치 및/또는 고도 위치)에서 비교적 가까운 오디오 객체들이 동일한 오디오 객체 클러스터에 할당되도록, 공간적 포지셔닝 메타데이터에 적어도 부분적으로 기초하여 클러스터링될 수 있다. 그 다음, 오디오 객체 클러스터가 송신 및/또는 렌더링될 수 있다. 오디오 객체 클러스터와 연관된 총 메타데이터(aggregate metadata)를 이용하여 동일한 오디오 객체 클러스터에 할당된 오디오 객체들을 렌더링함으로써, 공간적 복잡성이 감소될 수 있고, 그에 의해 오디오 신호를 송신 및/또는 렌더링하기 위한 대역폭을 감소시킬 수 있다.
그러나, 렌더링 메타데이터, 및 각각의 오디오 객체가 할당된 렌더링 메타데이터의 카테고리들에 관계없이 오디오 객체들을 클러스터링하는 것은 지각적 불연속성들(perceptual discontinuities)을 생성할 수 있다. 예를 들어, 렌더링 메타데이터의 "바이패스 모드" 카테고리에 할당된 오디오 객체를 렌더링 메타데이터의 "룸 가상화" 카테고리와 연관된 클러스터에 할당하는 것은, 클러스터에 할당된 오디오 객체 및 다른 오디오 객체들이 유사한 방위각 및/또는 고도 공간적 위치들과 연관되어 있더라도, 지각적 왜곡들(perceptual distortions)을 야기할 수 있다. 특히, 오디오 객체는, 렌더링 메타데이터의 "룸 가상화" 카테고리와 연관된 클러스터에 할당됨으로써, 머리 관련 전달 함수(head-related transfer function)(HRTF)를 이용하여 변환을 겪어 소스로부터 청취자의 귀까지의 전파 경로들을 시뮬레이션할 수 있다. HRTF 변환은, 예를 들어, 오디오 객체의 렌더링과 연관된 음색 변화(timbre change)를 도입함으로써, 및/또는 오디오 콘텐츠의 몇몇 프레임들이 상이한 카테고리에 할당되는 경우들에서 시간적 불연속성들을 도입함으로써, 오디오 객체의 지각적 품질을 왜곡시킬 수 있다. 더욱이, 제1 오디오 객체가 오디오 콘텐츠 생성자에 의해 "바이패스 모드" 카테고리에 할당되었기 때문에, 오디오 객체들의 "룸 가상화" 카테고리들에 할당된 오디오 객체들에 적용될 HRTF를 이용하여 제1 오디오 객체를 렌더링하는 것은, 제1 오디오 객체가 오디오 콘텐츠 생성자의 의도에 충실하지 않은 방식으로 렌더링되게 할 수 있다.
렌더링 메타데이터의 카테고리들을 엄격하게 보존하고/보존하거나 렌더링 메타데이터의 특정 카테고리 내의 렌더링 메타데이터의 타입들을 엄격하게 보존하는 방식으로 오디오 객체들을 클러스터링하는 것도 또한 결과들을 가질 수 있다. 예를 들어, 엄격하게 보존된 렌더링 메타데이터로 오디오 객체들을 클러스터링하는 것은, 비교적 많은 수의 클러스터를 요구할 수 있고, 이것은 오디오 신호의 복잡성을 증가시키고 오디오 신호 인코딩 및 송신을 위해 더 높은 대역폭을 요구할 수 있다. 대안적으로, 엄격하게 보존된 렌더링 메타데이터로 그리고 제한된 수의 클러스터들로 오디오 객체들을 클러스터링하는 것은, 동일한 렌더링 메타데이터를 갖지만 서로 비교적 멀리 위치된 2개의 오디오 객체들이 동일한 클러스터로 렌더링되게 함으로써, 공간적 왜곡을 야기할 수 있다.
본 명세서에서 설명된 기술들, 시스템들, 방법들 및 매체들은, 렌더링 메타데이터의 특정 카테고리 또는 렌더링 메타데이터의 카테고리 내의 렌더링 메타데이터의 타입과 연관된 오디오 객체들이 다른 경우들에서의 렌더링 메타데이터의 상이한 카테고리 또는 렌더링 메타데이터의 상이한 타입과 연관된 오디오 객체들과 클러스터링되는 것을 허용하면서, 일부 경우들에서 렌더링 메타데이터의 카테고리들을 보존하는 오디오 객체 클러스터들을 할당 및/또는 생성하는 것을 설명한다. 본 명세서에 설명된 기술들, 시스템들, 방법들 및 매체들은, 오디오 객체들을 클러스터링함으로써 공간적 복잡성이 감소되는 것을 허용함으로써, 그러한 오디오 객체들을 송신 및/또는 렌더링하는 데 요구되는 대역폭을 감소시키면서 또한 일부 경우들에서는 렌더링 메타데이터를 보존하고 다른 경우들에서는 렌더링 메타데이터를 보존하지 않음으로써 렌더링된 오디오 객체들의 지각적 품질을 개선할 수 있다. 특히, 오디오 객체들을 오디오 객체 클러스터들에 할당할 때 렌더링 메타데이터 카테고리 또는 타입의 이용에 있어서 융통성을 허용함으로써, 클러스터링 동안에 엄격한 렌더링 메타데이터 제약들에 의해 생성되는 공간적 왜곡이 감소되거나 제거되면서, 그러한 오디오 콘텐츠를 송신하는데 요구되는 대역폭의 감소를 가져오는 오디오 콘텐츠 복잡성의 감소를 여전히 달성할 수 있다. 오디오 객체 클러스터는 유사한 속성들을 갖는 오디오 객체들과 연관된 것으로 간주될 수 있고, 여기서, 유사한 속성들은 유사한 공간적 위치들 및/또는 유사한 렌더링 메타데이터(예를 들어, 동일한 렌더링 메타데이터 카테고리, 동일한 렌더링 메타데이터 타입 등)를 포함할 수 있다. 공간적 위치들에서의 유사성은, 오디오 객체와 오디오 객체가 할당되는 클러스터의 중심 사이의 거리(예를 들어, 유클리드 거리(Euclidean distance), 및/또는 임의의 다른 적절한 거리 메트릭)에 기초하여 결정될 수 있다. 오디오 객체들이 다수의 오디오 객체 클러스터들로 렌더링될 수 있는 실시예들에서, 오디오 객체는 다수의 가중치들과 연관될 수 있고, 각각의 가중치는 오디오 객체 클러스터에 대응하며, 가중치는 오디오 객체가 특정 클러스터로 렌더링되는 정도를 나타낸다. 이 예를 계속하면, 오디오 객체가 특정 오디오 객체 클러스터로부터 비교적 멀리 있는(예를 들어, 오디오 객체와 연관된 공간적 위치가 오디오 객체 클러스터와 연관된 중심으로부터 비교적 멀리 있는) 경우에, 오디오 객체 클러스터와 연관된 가중치는 비교적 작을 수 있다(예를 들어, 0에 가깝거나 동일). 일부 실시예들에서, 2개의 오디오 객체들은, 각각의 오디오 객체가 특정 오디오 객체 클러스터로 렌더링되는 정도를 나타내는 2개의 오디오 객체들 각각과 연관된 가중치들의 유사성에 기초하여 유사한 속성들을 갖는 것으로 간주될 수 있다.
일부 구현들에서, 오디오 객체 클러스터들은, 렌더링 메타데이터의 특정 카테고리(예를 들어, "바이패스 모드")에 할당된 오디오 객체들이 렌더링 메타데이터의 다른 카테고리들(예를 들어, "가상화 모드")에 할당된 오디오 객체들을 갖는 클러스터들에 할당되는 것이 금지되도록 생성될 수 있다. 일부 그러한 구현들에서, 렌더링 메타데이터의 특정 카테고리 내의 오디오 객체들은, 특정 카테고리 내의 렌더링 메타데이터의 동일한 타입을 갖는 오디오 객체들 및/또는 특정 카테고리 내의 렌더링 메타데이터의 상이한 타입을 갖는 오디오 객체들을 갖는 클러스터들에 할당될 수 있다. 예를 들어, 일부 구현들에서, "가상화 모드" 카테고리에 할당되고 "근거리"의 렌더링 메타데이터의 타입(예를 들어, 제1 오디오 객체가 청취자의 머리에 비교적 근거리인 것으로서 렌더링되어야 한다는 것을 나타냄)을 갖는 제1 오디오 객체는, "가상화 모드" 카테고리에 할당되고 "중간"의 렌더링 메타데이터의 타입(예를 들어, 제2 오디오 객체가 소스로부터 청취자의 머리까지 중간 거리 범위 내로서 렌더링되어야 한다는 것을 나타냄)을 갖는 제2 오디오 객체를 포함하는 클러스터에 할당될 수 있다. 이 예를 계속하면, 일부 구현들에서, 제1 오디오 객체는, "가상화 모드" 카테고리에 할당되고 "원거리"의 렌더링 메타데이터 타입(예를 들어, 제3 오디오 객체가 청취자의 머리로부터 비교적 원거리인 것으로서 렌더링되어야 한다는 것을 나타냄)을 갖는 제3 오디오 객체를 포함하는 클러스터에 할당되는 것이 금지될 수 있다.
도 1a는 렌더링 메타데이터의 특정 카테고리에 할당된 오디오 객체들이 렌더링 메타데이터의 다른 카테고리들에 할당된 오디오 객체들과 클러스터링되는 것이 허용되지 않는 오디오 객체들의 클러스터링의 표현의 예(100)를 도시한다.
예(100)에서, 렌더링 메타데이터의 2개의 카테고리가 있다. 카테고리(102)(도 1a에서 "카테고리 1"로 표시됨)는 "바이패스 모드" 렌더링 메타데이터와 연관된 오디오 객체들에 대응한다. 카테고리(104)(도 1a에서 "카테고리 2"로 표시됨)는 "가상화 모드" 렌더링 메타데이터와 연관된 오디오 객체들에 대응한다. 렌더링 메타데이터의 "가상화 모드" 카테고리는, 청취자의 머리로부터 "근거리", "중간", 및/또는 "원거리" 거리들과 같은, 렌더링 메타데이터의 다양한 잠재적 타입들을 가질 수 있다. 따라서, 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당된 오디오 객체는, 도 1a에 도시되고 각각의 오디오 객체에 적용된 음영의 타입에 의해 도 1a에 도시된 바와 같이 "근거리", "중간", 또는 "원거리" 중 하나로부터 선택되는 렌더링 메타데이터 타입을 가질 수 있다.
도 1a는 오디오 객체들과 연관된 공간적 위치 메타데이터에 기초하여 그리고 오디오 객체들과 연관된 렌더링 메타데이터의 카테고리들에 기초하여 클러스터링된 오디오 객체들(예를 들어, 오디오 객체(106))의 그룹을 도시한다. 할당된 클러스터는 각각의 오디오 객체를 나타내는 원 내의 숫자로서 표시된다. 예를 들어, 오디오 객체(106)는 도 1a에 도시된 바와 같이 클러스터 "1"에 할당되었다. 다른 예로서, 카테고리(104) 내에서, 오디오 객체(108)는 클러스터 "4"에 할당되었다.
도 1a의 예(100)에서, 렌더링 메타데이터의 카테고리는 오디오 객체 클러스터들의 생성시에 엄격하게 보존된다. 예를 들어, 렌더링 메타데이터의 "바이패스 모드" 카테고리에 할당된 오디오 객체들은 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당된 클러스터들에 할당되는 것이 금지된다. 유사하게, 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당된 오디오 객체들은 렌더링 메타데이터의 "바이패스 모드" 카테고리에 할당된 클러스터들에 할당되는 것이 금지된다.
도 1a의 예(100)에서, 렌더링 메타데이터의 특정 카테고리에 할당된 오디오 객체들은 렌더링 메타데이터의 동일한 카테고리에 할당되지만 카테고리 내의 렌더링 메타데이터의 상이한 타입을 갖는 다른 오디오 객체들과 클러스터링될 수 있다. 예를 들어, 카테고리(104) 내에서, "가상화 모드" 카테고리 내의 렌더링 메타데이터의 "근거리" 타입과 연관된 오디오 객체(110)는, 각각이 "가상화 모드" 카테고리 내의 렌더링 메타데이터의 "중간" 타입과 연관된 오디오 객체들(112 및 114)과 클러스터링될 수 있다. 다른 예로서, 카테고리(104) 내에서, 렌더링 메타데이터의 "가상화 모드" 카테고리 내의 렌더링 메타데이터의 "중간" 타입과 연관된 오디오 객체(116)는, 각각이 렌더링 메타데이터의 "가상화 모드" 카테고리 내의 렌더링 메타데이터의 "원거리" 타입과 연관된 오디오 객체들(118 및 120)과 클러스터링될 수 있다.
예(100)에 도시된 오디오 객체들의 클러스터링은 클러스터링 알고리즘 또는 기술의 결과일 수 있다는 점에 유의해야 한다. 예를 들어, 예(100)에 도시된 오디오 객체들의 클러스터링은 도 2의 프로세스(200)와 관련하여 도시되고 이하에서 설명되는 기술들을 이용하여 생성될 수 있다. 일부 구현들에서, 도 1a에 도시된 각각의 카테고리에 할당된 다수의 오디오 객체 클러스터들 및/또는 각각의 클러스터의 공간적 중심 위치는 최적화 알고리즘 또는 기술을 이용하여 결정될 수 있다. 예를 들어, 오디오 객체 클러스터들의 할당은 도 3의 프로세스(300)와 관련하여 도시되고 이하에서 설명되는 기술들을 이용하여 최적의 할당을 생성하도록 반복적으로 결정될 수 있다. 추가적으로, 일부 구현들에서, 특정 클러스터들에 대한 오디오 객체들의 할당은, 도 4의 프로세스(400)와 관련하여 이하에서 설명되는 바와 같이, 특정 클러스터로 렌더링될 때 오디오 객체의 비율 또는 이득을 기술하는 객체-대-클러스터 이득들을 결정함으로써 달성될 수 있다.
대조적으로, 도 1b는 렌더링 메타데이터의 특정 카테고리에 할당된 오디오 객체들이 일부 경우들에 렌더링 메타데이터의 다른 카테고리들에 할당된 클러스터들에 할당되는 것이 허용되는 오디오 객체들의 클러스터링의 표현의 예(150)를 도시한다.
도 1b에 도시된 바와 같이, 렌더링 메타데이터의 특정 카테고리에 할당된 오디오 객체들은 렌더링 메타데이터의 상이한 카테고리에 할당된 클러스터에 할당되도록 허용될 수 있다. 예를 들어, 각각이 "가상화 모드" 카테고리에 할당된 오디오 객체들(152 및 154)은 "바이패스 모드" 카테고리(예를 들어, 도 1b의 카테고리(102))에 할당된 클러스터들에 할당된다. 다른 예로서, 각각이 "바이패스 모드" 카테고리에 할당된 오디오 객체들(156 및 158)은 "가상화 모드" 카테고리(예를 들어, 도 1b의 카테고리(104))에 할당된 클러스터들에 할당된다.
도 1a 및 도 1b는 단일 클러스터에 할당된 각각의 오디오 객체를 도시하고 있지만, 도 2 및 도 4와 관련하여 이하에서 설명되는 바와 같이, 오디오 객체는 다수의 클러스터들에 할당되거나 렌더링될 수 있다는 점에 유의해야 한다. 특정 오디오 객체가 특정 클러스터에 할당 및/또는 렌더링되는 정도는 일반적으로 본 명세서에서는 "객체-대-클러스터 이득"이라고 지칭된다. 예를 들어, 오디오 객체 j 및 클러스터 c에 대해, 1의 객체-대-클러스터 이득은 오디오 객체 j가 클러스터 c에 완전히 할당 또는 렌더링된다는 것을 나타낸다. 다른 예로서, 0.5의 객체-대-클러스터 이득은 오디오 객체 j가 0.5의 이득으로 클러스터 c에 할당 또는 렌더링되고, 오디오 객체 j와 연관된 나머지 신호는 다른 클러스터들로 렌더링된다는 것을 나타낸다. 또 다른 예로서, 0의 객체-대-클러스터 이득은 오디오 객체 j가 클러스터 c에 할당 또는 렌더링되지 않음을 나타낸다.
도 2는 일부 실시예들에 따른, 렌더링 메타데이터의 상이한 카테고리들에 클러스터들을 할당하고, 할당된 클러스터들에 오디오 객체들을 할당하기 위한 프로세스(200)의 예를 도시한다. 프로세스(200)는 오디오 콘텐츠 생성자에 의해 제공되는 오디오 객체들 및 연관된 메타데이터에 기초하여 오디오 신호를 인코딩하는 서버와 같은 다양한 디바이스들 상에서 수행될 수 있다. 프로세스(200)는 일반적으로 오디오 콘텐츠의 단일 프레임에 대한 프로세스를 설명한다는 점에 유의해야 한다. 그러나, 일부 실시예들에서, 프로세스(200)의 블록들은 오디오 콘텐츠의 하나 이상의 다른 프레임에 대해 반복되어, 예를 들어, 입력 오디오 신호의 압축된 버전인 전체 출력 오디오 신호를 생성할 수 있다는 것을 이해해야 한다. 일부 구현들에서, 프로세스(200)의 하나 이상의 블록이 생략될 수 있다. 추가적으로, 일부 구현들에서, 프로세스(200)의 2개 이상의 블록들은 실질적으로 병렬로 수행될 수 있다. 프로세스(200)의 블록들은 도 2에 도시된 순서로 제한되지 않는 임의의 순서로 수행될 수 있다.
프로세스(200)는 202에서 오디오 객체들의 그룹을 식별함으로써 시작할 수 있고, 여기서, 각각의 오디오 객체는 공간적 위치 메타데이터 및 렌더링 메타데이터와 연관된다. 오디오 객체들의 그룹에서의 오디오 객체들은 입력 오디오 신호의 특정 프레임에 대해 식별될 수 있다. 오디오 객체들은, 예를 들어, 입력 오디오 신호의 프레임과 관련된 리스트 또는 테이블에 액세스함으로써 식별될 수 있다. 공간적 위치 메타데이터는 오디오 객체의 렌더링과 연관된 공간적 위치 정보(예를 들어, 3D 공간에서의 위치)를 나타낼 수 있다. 예를 들어, 공간적 위치 정보는 오디오 객체의 방위각 및/또는 고도 위치를 나타낼 수 있다. 다른 예로서, 공간적 위치 정보는 데카르트 좌표들(예를 들어, (x, y, z) 좌표들)의 공간적 위치를 나타낼 수 있다. 렌더링 메타데이터는 오디오 객체가 렌더링될 방식을 나타낼 수 있다.
204에서, 프로세스(200)는 각각의 오디오 객체를 렌더링 메타데이터의 카테고리에 할당할 수 있다. 헤드폰 렌더링 모드에 대한 렌더링 메타데이터의 예시적인 카테고리들은 렌더링 메타데이터의 "바이패스 모드" 카테고리 및 렌더링 메타데이터의 "가상화 모드" 카테고리를 포함한다. 스피커 렌더링 모드에 대한 렌더링 메타데이터의 예시적인 카테고리들은 렌더링 메타데이터의 "스냅 모드" 카테고리 및 렌더링 메타데이터의 "구역-마스크" 카테고리를 포함한다. 렌더링 메타데이터의 카테고리 내에서, 렌더링 메타데이터는 렌더링 메타데이터의 타입과 연관될 수 있다.
일부 구현들에서, 렌더링 메타데이터의 적어도 하나의 카테고리는 렌더링 메타데이터의 하나 이상(예를 들어, 2개, 3개, 5개, 10개 등)의 타입을 포함할 수 있다. 헤드폰 렌더링 모드에서의 렌더링 메타데이터의 "가상화 모드" 카테고리 내의 렌더링 메타데이터의 예시적인 타입들은 "근거리", "중간", 및 "원거리" 가상화를 포함한다. 렌더링 메타데이터의 "가상화 모드" 카테고리 내의 렌더링 메타데이터의 타입은, 렌더링 메타데이터에 표시된 가상화를 생성하기 위해 오디오 객체에 적용될 특정 HRTF를 나타낼 수 있다는 점에 유의해야 한다. 예를 들어, "근거리" 가상화에 대응하는 렌더링 메타데이터는 제1 HRTF가 이용될 것임을 명시할 수 있는 반면, "중간" 가상화에 대응하는 렌더링 메타데이터는 제2 HRTF가 이용될 것임을 명시할 수 있다. 렌더링 메타데이터의 "스냅" 카테고리 내의 렌더링 메타데이터의 예시적인 타입들은, 스냅이 인에이블될 것인지의 여부를 나타내는 2진 값 및/또는 오디오 객체가 렌더링될 스피커들의 특정 식별자들(예를 들어, "좌측 스피커", "우측 스피커", 또는 임의의 다른 특정 스피커)을 포함할 수 있다. 렌더링 메타데이터의 "구역-마스크" 카테고리 내의 렌더링 메타데이터의 예시적인 타입들은, "좌측 서라운드 및 우측 서라운드", "좌측 스피커 및 우측 스피커", 또는 오디오 객체를 렌더링하는 것에 포함되거나 이로부터 배제될 하나 이상의 스피커를 나타내는 스피커들의 임의의 다른 적절한 조합을 포함한다.
206에서, 프로세스(200)는 렌더링 메타데이터의 각각의 카테고리에 대한 클러스터들의 할당을 결정할 수 있다. 프로세스(200)는 각각의 카테고리에 할당된 클러스터들의 수가 블록(202)에서 식별되고 임의의 적절한 제약들을 받는 오디오 객체들의 그룹에서의 오디오 객체들을 최적으로 포괄하도록 렌더링 메타데이터의 각각의 카테고리에 대한 클러스터들의 할당을 결정할 수 있다. 예를 들어, 프로세스(200)는 렌더링 메타데이터의 모든 카테고리들에 걸친 클러스터들의 총 수가 미리 정해진 클러스터들의 최대 수(일반적으로 본 명세서에서 Mtotal로 표현됨) 이하가 되도록 클러스터들의 할당을 결정할 수 있다. 일부 실시예들에서, 렌더링 메타데이터의 모든 카테고리들에 걸친 미리 결정된 클러스터들의 최대 수는, 미리 결정된 클러스터들의 최대 수를 갖는 인코딩된 오디오 신호를 송신하는 데 필요한 대역폭과 같은 다양한 기준들 또는 요건들에 기초하여 결정될 수 있다.
다른 예로서, 프로세스(200)는 각각의 클러스터에 할당될 오디오 객체들과 연관된 비용 함수들에 적어도 부분적으로 기초하여 클러스터들의 할당을 반복적으로 최적화함으로써 클러스터들의 할당을 결정할 수 있다. 일부 실시예들에서, 비용 함수들은, 클러스터의 중심에 대한 특정 클러스터에 할당된 오디오 객체의 거리, (예를 들어, 오디오 콘텐츠 생성자에 의해 표시된) 오디오 객체의 의도된 라우드니스에 대한 특정 클러스터로 렌더링될 때의 오디오 객체의 라우드니스 등의 다양한 기준들을 나타낼 수 있다. 비용 함수에 포함될 수 있는 다양한 기준들이 도 3과 관련하여 이하에서 더 상세히 설명된다. 일부 구현들에서, 클러스터들은 특정 카테고리에 할당된 오디오 객체들이 상이한 카테고리에 할당된 클러스터들에 할당되는 것이 허용되지 않을 것이라는 가정하에 할당될 수 있다. 렌더링 메타데이터의 각각의 카테고리에 대한 오디오 객체 클러스터들의 할당을 결정하기 위한 프로세스의 예는 도 3과 관련하여 도시되고 이하에서 설명된다는 점에 유의해야 한다.
208에서, 프로세스(200)는 공간적 위치 메타데이터 및 렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 할당된 클러스터들에 오디오 객체들을 할당 및/또는 렌더링할 수 있다. 공간적 위치 메타데이터에 기초하여 할당된 클러스터에 오디오 객체들을 할당 및/또는 렌더링하는 것은, 할당된 클러스터들의 공간적 위치들에 대한 오디오 객체들의 공간적 위치(예를 들어, 고도 및/또는 방위각 위치, 데카르트 좌표 위치 등)에 기초하여 오디오 객체들을 클러스터들에 할당하는 것을 포함할 수 있다. 예를 들어, 일부 실시예들에서, 프로세스(200)는, 유사한 공간적 위치들을 갖는 오디오 객체들이 동일한 클러스터에 할당되도록, 공간적 위치 메타데이터에 기초하여 그리고 각각의 할당된 클러스터의 중심에 기초하여 할당된 클러스터들에 오디오 객체들을 할당 및/또는 렌더링할 수 있다. 일부 실시예들에서, 오디오 객체들의 공간적 위치들의 유사성은, 오디오 객체와 연관된 공간적 위치 메타데이터에서 표시된 공간적 위치와 클러스터의 중심 사이의 거리(예를 들어, 유클리드 거리 등)에 기초하여 결정될 수 있다.
렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 할당된 클러스터들에 오디오 객체들을 할당 및/또는 렌더링하는 것은, 렌더링 메타데이터의 동일한 카테고리와 연관된 클러스터에 오디오 객체를 할당함으로써 렌더링 메타데이터의 카테고리를 보존하는 것을 포함할 수 있다. 예를 들어, 일부 실시예들에서, 프로세스(200)는, 도 1a와 관련하여 도시되고 위에서 설명된 바와 같이, 렌더링 메타데이터의 제1 카테고리(예를 들어, "바이패스 모드")에 할당된 오디오 객체가 렌더링 메타데이터의 제2 카테고리(예를 들어, "가상화 모드")에 할당된 클러스터에 할당 및/또는 렌더링되는 것이 금지되도록, 할당된 클러스터들에 오디오 객체들을 할당할 수 있다. 일부 구현들에서, 렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 할당된 클러스터들에 오디오 객체들을 할당 및/또는 렌더링하는 것은, 오디오 객체가 렌더링 메타데이터의 상이한 카테고리와 연관된 클러스터에 할당되는 것을 허용하는 것을 포함할 수 있다. 예를 들어, 일부 실시예들에서, 프로세스(200)는, 도 1b와 관련하여 도시되고 위에서 설명된 바와 같이, 렌더링 메타데이터의 제1 카테고리(예를 들어, "바이패스 모드")에 할당된 오디오 객체가 렌더링 메타데이터의 제2 카테고리(예를 들어, "가상화 모드")에 할당된 오디오 객체 클러스터에 할당되는 것이 허용되도록, 할당된 오디오 객체 클러스터들에 오디오 객체들을 할당 및/또는 렌더링할 수 있다. 예로써, 오디오 객체의 교차-카테고리 할당(cross-category assignment)은, (예를 들어, 오디오 객체들의 위치들에 대한 오디오 객체 클러스터들의 위치들로 인해) 오디오 객체의 교차-카테고리 할당이 공간적 왜곡을 감소시키는 경우에 바람직할 수 있다. 오디오 객체의 교차-카테고리 할당은, 렌더링 메타데이터의 상이한 카테고리와 연관된 오디오 객체 클러스터로 렌더링될 때 오디오 객체의 인지된 품질에서 음색 변화들을 도입할 수 있다는 점에 유의해야 한다. 다른 예로서, 일부 실시예들에서, 프로세스(200)는, 도 1a 및 도 1b의 카테고리(104)와 관련하여 도시된 바와 같이, 렌더링 메타데이터의 특정 카테고리 내의 렌더링 메타데이터의 제1 타입(예를 들어, "근거리" 가상화)과 연관된 오디오 객체가 렌더링 메타데이터의 제2 타입(예를 들어, "중간" 가상화)과 연관된 다른 오디오 객체들과 클러스터링되는 것이 허용되도록 오디오 객체들을 할당할 수 있다. 다양한 제약들에 따라 할당된 오디오 객체 클러스터들에 오디오 객체들을 할당 및/또는 렌더링하기 위한 예시적 프로세스가 도 4와 관련하여 도시되고 이하에서 설명된다는 점에 유의해야 한다.
오디오 객체를 특정 클러스터에 할당 및/또는 렌더링하는 것은, 오디오 객체 클러스터의 일부로서 렌더링될 때 객체에 적용될 이득을 나타내는 오디오 객체-대-클러스터 이득을 결정하는 것을 포함할 수 있다. 특정 오디오 객체 j 및 오디오 객체 클러스터 c에 대해, 오디오 객체-대-클러스터 이득은 일반적으로 본 명세서에서는 로 표기된다. 전술된 바와 같이, 오디오 객체 j는 다수의 오디오 객체 클러스터들로 렌더링될 수 있고, 여기서, 특정 오디오 객체 j에 대한 및 특정 클러스터 c에 대한 오디오 객체-대-클러스터 이득은 오디오 객체 j를 클러스터 c의 일부로서 렌더링할 때 오디오 객체에 적용되는 이득을 나타낸다는 점에 유의해야 한다. 일부 구현들에서, 이득 는 0 내지 1의 범위 내에 있을 수 있고, 여기서, 값은 오디오 객체 j를 오디오 객체 클러스터 c로 렌더링할 때 적용될 오디오 객체 j에 대한 입력 오디오 신호의 비율을 나타낸다. 일부 구현들에서, 모든 클러스터들 c에 관한 특정 오디오 객체 j에 대한 이득들의 합은 1이며, 이것은 오디오 객체 j와 연관된 입력 오디오 신호 전체가 클러스터들에 걸쳐 분산되어야 한다는 것을 나타낸다.
도 3은 일부 구현들에 따른, 렌더링 메타데이터의 다수의 카테고리들에 걸쳐서 클러스터들의 할당을 생성하기 위한 프로세스(300)의 예를 도시한다. 프로세스(300)의 블록들은, 입력 오디오 신호에 포함된 오디오 객체들에 기초하여 인코딩된 오디오 신호를 생성하는 서버와 같은 임의의 적절한 디바이스 상에서 구현될 수 있다. 프로세스(300)는 일반적으로 오디오 콘텐츠의 단일 프레임과 관련된 프로세스를 설명하지만, 일부 실시예들에서 프로세스(300)의 블록들은 오디오 콘텐츠의 하나 이상의 다른 프레임에 대해 반복되어, 예를 들어, 오디오 콘텐츠의 다수의 프레임들에 대한 할당들을 클러스터링할 수 있다는 것이 이해되어야 함에 유의해야 한다. 일부 구현들에서, 프로세스(300)의 하나 이상의 블록이 생략될 수 있다. 추가적으로, 일부 구현들에서, 프로세스(300)의 2개 이상의 블록들은 실질적으로 병렬로 수행될 수 있다. 프로세스(300)의 블록들은 도 3에 도시된 순서로 제한되지 않는 임의의 순서로 수행될 수 있다.
일반적으로, 프로세스(300)는 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 초기 할당으로 시작할 수 있다. 일부 구현들에서, 프로세스(300)는 초기 할당으로 시작한 후에 렌더링 메타데이터의 카테고리들에 클러스터들을 최적으로 할당하기 위해 아래에 설명되는 블록들(304-318)을 통해 반복적으로 루프할 수 있다. 일부 구현들에서, 할당은 렌더링 메타데이터의 각각의 카테고리에 대한 비용 함수들을 결합하는 전역 비용 함수를 최소화함으로써 최적화될 수 있다. 렌더링 메타데이터의 카테고리에 대한 비용 함수는 일반적으로 본 명세서에서 "카테고리 내 비용 함수(intra-category cost function)"라고 지칭된다. 렌더링 메타데이터의 카테고리에 대한 카테고리 내 비용 함수는 블록들(304-318)을 통한 현재 반복 동안 렌더링 메타데이터의 카테고리에 할당된 특정 클러스터들에 대한 오디오 객체들의 할당과 연관된 비용을 나타낼 수 있다. 일부 구현들에서, 카테고리 내 비용 함수는 블록(314)과 관련하여 후술하는 바와 같이 대응하는 카테고리 내 페널티 함수(intra-category penalty function)에 기초할 수 있다. 카테고리 내 페널티 함수는 블록들(304-310)과 관련하여 후술하는 바와 같이 하나 이상의 카테고리 내 페널티 항(intra-category penalty term)에 의존할 수 있다. 각각의 카테고리 내 페널티 항은 본 명세서에서 일반적으로 로서 표현되는 특정 오디오 객체 j 및 클러스터 c에 대한 오디오 객체-대-클러스터 이득에 차례로 의존할 수 있다. 객체-대-클러스터 이득은 (예를 들어, 블록(312)과 관련하여 후술하는 바와 같이) 렌더링 메타데이터의 특정 카테고리에 대한 총 그룹 내 페널티 함수(total intra-group penalty function)를 최소화함으로써 결정될 수 있으며, 카테고리와 연관된 총 그룹 내 페널티 함수는 개별 카테고리 내 페널티 항들의 합이다. 즉, 프로세스(300)는 블록들(304-318)을 통한 현재 반복 동안 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 현재 할당에 대해, 프로세스(300)의 블록들(304-312)을 통해 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 내 페널티 함수들을 최소화하는 객체-대-클러스터 이득들을 결정할 수 있다. 객체-대-클러스터 이득들은 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 내 비용 함수들을 결정하는 데 이용될 수 있다. 이어서, 카테고리 내 비용 함수들을 결합하여 전역 비용 함수를 생성할 수 있다. 이어서, 클러스터들은 전역 비용 함수를 최소화함으로써 재할당될 수 있다.
프로세스(300)는 302에서 렌더링 메타데이터의 카테고리에 대한 클러스터들의 초기 할당을 결정함으로써 시작할 수 있으며, 여기서 렌더링 메타데이터의 각각의 카테고리에는 클러스터들의 서브세트가 할당된다. 일부 구현들에서, 클러스터들은, 할당된 클러스터들의 총 수가, 본 명세서에서 일반적으로 Mtotal로 표현된, 미리 결정된 클러스터들의 최대 수 이하가 되도록 할당될 수 있다. 예를 들어, 렌더링 메타데이터의 제1 카테고리에는 m개의 클러스터가 할당되고 렌더링 메타데이터의 제2 카테고리에는 n개의 클러스터가 할당되는 경우에, m+n ≤ Mtotal이다. Mtotal은 클러스터링될 오디오 객체들의 총 수, 클러스터링된 오디오 객체들에 기초하여 인코딩된 오디오 신호를 송신하기 위한 가용 대역폭 등과 같은, 임의의 적절한 기준들에 기초하여 결정될 수 있다. 예를 들어, Mtotal은 인코딩된 오디오 신호를 Mtotal 클러스터들로 송신하기 위한 대역폭이 임계 대역폭 미만이도록 결정될 수 있다. 일부 구현들에서, 적어도 하나의 클러스터가 렌더링 메타데이터의 각각의 카테고리에 할당될 수 있다.
프로세스(300)는 각각의 초기에 할당된 클러스터에 대한 중심을 결정할 수 있다. 예를 들어, 일부 구현들에서, 클러스터의 중심은 클러스터와 연관된 렌더링 메타데이터의 카테고리에 할당된 가장 지각적으로 두드러진 오디오 객체들에 기초하여 결정될 수 있다. 더 특정한 예로서, m개의 클러스터가 초기에 할당되는 렌더링 메타데이터의 제1 카테고리(예를 들어, "바이패스 모드")에 대해, m개의 클러스터 각각에 대한 중심은 렌더링 메타데이터의 제1 카테고리에 할당된 오디오 객체들의 지각적 특징(perceptual salience)에 적어도 부분적으로 기초하여 결정될 수 있다. 예를 들어, 일부 구현들에서, 렌더링 메타데이터의 제1 카테고리에 할당된 m개의 가장 지각적으로 두드러진 오디오 객체가 식별될 수 있다. m개의 가장 지각적으로 두드러진 오디오 객체는 그들의 라우드니스, 렌더링 메타데이터의 제1 카테고리에 할당된 다른 오디오 객체들로부터의 공간적 거리, 렌더링 메타데이터의 제1 카테고리에서의 오디오 객체들과 연관된 음색의 차이들 등과 같은 다양한 기준들에 기초하여 식별될 수 있다. 일부 구현들에서, 오디오 객체들의 지각적 특징은 오디오 객체들 사이의 차이들에 기초하여 결정될 수 있다. 예를 들어, 스피치 콘텐츠를 포함하는 오디오 객체들의 경우, 2개의 오디오 객체는, 2개의 오디오 객체와 연관된 스피치 콘텐츠가 상이한 언어들로 된 경우에 서로 지각적으로 두드러지도록 결정될 수 있다. 렌더링 메타데이터의 각각의 카테고리에 할당된 오디오 객체 클러스터들의 중심들은 유사한 방식으로 결정될 수 있다.
304에서, 프로세스(300)는, 렌더링 메타데이터의 카테고리들 각각에 대해, 카테고리에서의 초기에 할당된 오디오 객체 클러스터들에 할당되거나 렌더링된 오디오 객체들의 위치들과 초기에 할당된 오디오 객체 클러스터들의 위치들(예를 들어, 중심 위치들) 사이의 차이를 나타내는 제1 카테고리 내 페널티 항을 생성할 수 있다.
오디오 객체 j의 위치는 일반적으로 본 명세서에서는 라고 지칭된다. 일부 구현들에서, 오디오 객체 j의 위치는 오디오 콘텐츠 생성자에 의해 명시된다. 클러스터 c의 위치는 일반적으로 본 명세서에서 로 지칭된다. 클러스터 c의 위치는, 블록(302)과 관련하여 전술한 바와 같이, 클러스터 c의 중심의 위치를 나타낼 수 있다.
하나 이상의 클러스터로 렌더링된 후의 오디오 객체 j의 재구성된 위치는 일반적으로 본 명세서에서 라고 지칭된다. 를 계산하기 위한 수학식의 예는 다음과 같이 주어진다:
일부 구현들에서, , 및 는 하나 이상의 클러스터로 렌더링될 때 오디오 객체 j의 공간적 위치를 나타내는 3차원 벡터일 수 있다. 공간적 위치는 데카르트 좌표들로 표현될 수 있다.
제1 카테고리 내 페널티 항은 하나 이상의 클러스터에 할당되거나 렌더링될 때의 오디오 객체들의 위치와 오디오 객체들의 원래의 위치 사이의 총 차이를 나타낼 수 있다(일반적으로 본 명세서에서 라고 지칭됨). 하나 이상의 클러스터로 렌더링될 때의 오디오 객체들의 위치와 오디오 객체들의 원래의 위치들 사이의 총 차이를 나타내는 제1 카테고리 내 페널티 항을 결정하기 위한 예시적인 수학식은 다음과 같이 주어진다:
전술한 제1 카테고리 내 페널티 항 및 블록들(306-310)과 관련하여 후술하는 다른 카테고리 내 페널티 항들과 관련하여, 카테고리 내 페널티 항들은 일반적으로 단일 오디오 객체 j와 관련하여 설명된다는 점에 유의해야 한다. 카테고리 내 페널티 항들은 각각의 오디오 객체에 대해 계산될 수 있고, 렌더링 메타데이터의 특정 카테고리에 할당된 오디오 객체들 모두에 대해 합이 계산될 수 있다.
306에서, 프로세스(300)는, 렌더링 메타데이터의 카테고리들 각각에 대해, 카테고리에서의 초기에 할당된 클러스터들에 할당되거나 렌더링된 오디오 객체들과 카테고리에서의 클러스터들 사이의 거리를 나타내는 제2 카테고리 내 페널티 항을 생성할 수 있다. 제2 카테고리 내 비용은 일반적으로 본 명세서에서 라고 지칭된다. 제2 카테고리 내 비용 는 오디오 객체 j와 오디오 객체 j가 할당된 클러스터 c 사이의 거리 측정에 기초하여 결정될 수 있다. 를 계산하기 위한 예시적인 수학식은 다음과 같이 주어진다:
상기의 수학식에서, 는 오디오 객체 j의 위치와 클러스터 c의 위치 사이의 거리를 나타낸다. 우측 구역에서의 클러스터로 렌더링될 때 좌측 구역에 위치된 오디오 객체(또는 그 반대)는 지각적 아티팩트들을 생성할 것이기 때문에, 오디오 객체 j의 위치와 클러스터 c의 위치 사이의 거리는, 바이노럴 렌더링(binaural rendering)에서 상이한 방위각 반구(azimuthal hemisphere)에 위치한 클러스터 c로의 오디오 객체 j의 할당에 대해 효과적으로 페널티를 주는 수정된 거리이다. 오디오 객체 j와 클러스터 c 사이의 수정된 거리를 계산하기 위한 예시적인 수학식은 다음과 같이 주어진다:
상기의 수학식에서, 는 다음과 같이 주어지는 3×3 대각 행렬을 나타낼 수 있다:
위에서, 는 오디오 객체 j와 클러스터 c의 위치가 상이한 좌측/우측 구역들에 있는지에 따라 달라질 수 있다. 의 값을 결정하기 위한 수학식의 예는 다음과 같이 주어진다:
위에서, xj 및 xc는 각각 오디오 객체 위치 및 클러스터 위치의 x 좌표들을 나타낸다. 위에서, a는 0과 1 사이의 상수이다.
308에서, 프로세스(300)는, 렌더링 메타데이터의 카테고리들 각각에 대해, 렌더링 메타데이터의 카테고리에 할당된 다양한 클러스터들에 할당되거나 렌더링될 때 오디오 객체들에 대한 라우드니스의 보존을 나타내는 제3 카테고리 내 페널티 항을 생성할 수 있다. 즉, 제3 카테고리 내 페널티 항은 다양한 클러스터들로 렌더링될 때 오디오 객체들의 에너지 또는 진폭의 변화를 나타낼 수 있으며, 에너지 또는 진폭은 청취자에 의해 라우드니스로서 인지된다. 따라서, 제3 카테고리 내 페널티 항을 최소화함으로써, 부스팅되거나 감쇠된 진폭(따라서, 부스팅되거나 감쇠된 라우드니스)을 갖는 오디오 객체를 렌더링함으로써 도입되는 지각적 아티팩트들이 최소화될 수 있다. 제3 카테고리 내 페널티 항은 일반적으로 본 명세서에서 이라고 지칭된다. 제3 카테고리 내 페널티 항을 계산하기 위한 수학식의 예는 다음과 같이 주어진다:
일부 구현들에서, 310에서, 프로세스(300)는 오디오 객체들과 연관된 렌더링 메타데이터의 타입과 오디오 객체들이 할당되거나 렌더링되는 클러스터들의 렌더링 메타데이터의 타입들 사이의 불일치를 나타내는 제4 카테고리 내 페널티 항을 생성할 수 있다. 블록(310)은 카테고리 내에 렌더링 메타데이터의 다수의 타입들을 포함하지 않는 렌더링 메타데이터의 카테고리들에 대해 생략될 수 있다는 점에 유의해야 한다. 예를 들어, 제4 카테고리 내 페널티 항은 렌더링 메타데이터의 "바이패스 모드" 카테고리에 대해 계산되지 않을 수 있다.
예로써, 헤드폰 렌더링 경우에서, 제4 카테고리 내 항은 오디오 객체의 렌더링 메타데이터의 "가상화 모드" 카테고리와 연관된 가상화의 타입(예를 들어, "근거리", "중간" 또는 "원거리")과 오디오 객체가 할당되거나 렌더링되는 하나 이상의 클러스터의 가상화의 타입 사이의 불일치를 나타낼 수 있다. 사실상, 제4 카테고리 내 페널티 항은, 예를 들어, 가상화의 특정 타입(예를 들어, "근거리", "중간" 또는 "원거리")을 갖는 오디오 객체를 가상화의 상이한 타입과 연관된 클러스터에 할당하는 것에 페널티를 줄 수 있다. 일부 구현들에서, 페널티 양은 가상화의 상이한 타입들 사이의 거리에 의존할 수 있다. 예를 들어, 가상화의 "근거리" 타입을 갖는 제1 오디오 객체를 가상화의 "원거리" 타입과 연관된 클러스터에 할당하는 것은, 가상화의 "근거리" 타입을 갖는 제2 오디오 객체를 가상화의 "중간" 타입과 연관된 클러스터에 할당하는 것에 비해 더 큰 페널티와 연관될 수 있다. 제4 카테고리 내 페널티 항(일반적으로 본 명세서에서 라고 지칭됨)을 계산하기 위한 수학식의 예는 다음과 같다:
위에서 주어진 수학식에서, 는 오디오 객체 j 및 클러스터 c에 대한 가상화의 타입들의 다양한 조합들에 대한 페널티 가중치들을 정의하는 행렬 U의 요소를 나타낼 수 있다. 행렬 U의 각각의 행은 오디오 객체와 연관된 가상화의 타입을 나타낼 수 있고, 행렬 U의 각각의 열은 오디오 객체가 할당되거나 렌더링된 클러스터와 연관된 가상화의 타입을 나타낼 수 있다. 예를 들어, 행렬 요소 [HRM(j), HRM(c)]는, 가상화의 타입 HRM(c)를 갖는 c를 갖는 클러스터에 할당되거나 렌더링될 때 HRM(j)에 의해 표시된 오디오 객체 j의 가상화의 타입에 대한 페널티 가중치를 나타낼 수 있다. 일부 구현들에서, 행렬 U는 대칭적일 수 있어서, 가상화의 제1 타입을 갖는 클러스터에 할당되거나 렌더링될 때 가상화의 타입을 갖는 오디오 객체에 대한 것과 동일한 페널티 가중치가 가상화의 제2 타입을 갖는 클러스터에 할당되거나 렌더링될 때 가상화의 제1 타입을 갖는 오디오 객체에 대해 이용된다. 일부 구현들에서, 행렬 U의 대각선은, 오디오 객체와 연관된 가상화의 타입과 클러스터와 연관된 가상화의 타입의 유사성을 나타내는 0일 수 있다. 이용될 수 있는 행렬 U의 특정 예는 다음과 같다:
312에서, 프로세스(300)는, 오디오 객체와 연관된 렌더링 메타데이터의 카테고리에 할당된 클러스터 및 각각의 오디오 객체에 대해, 객체-대-클러스터 이득을 결정할 수 있다. 객체-대-클러스터 이득은, 오디오 객체와 연관된 렌더링 메타데이터의 카테고리에 대응하는 카테고리 페널티 함수를 최소화함으로써 결정될 수 있다. 예를 들어, 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 오디오 객체에 대해, 렌더링 메타데이터의 "바이패스 모드" 카테고리에 할당된 하나 이상의 클러스터에 대해 오디오 객체에 대한 객체-대-클러스터 이득들이 결정될 수 있다. 다른 예로서, 렌더링 메타데이터의 "가상화 모드" 카테고리와 연관된 오디오 객체에 대해, 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당된 하나 이상의 클러스터에 대해 오디오 객체에 대한 객체-대-클러스터 이득들이 결정될 수 있다.
렌더링 메타데이터의 특정 카테고리에 대한 카테고리 페널티 함수는 블록들(304-310)에서 결정된 카테고리 내 페널티 항들 중 임의의 것의 합(예를 들어, 가중된 합)으로서 결정될 수 있다. 예를 들어, 일부 구현들에서, 렌더링 메타데이터의 "가상화 모드" 카테고리에 대한 카테고리 페널티 함수는 블록(304)에서 결정된 제1 카테고리 내 페널티 항, 블록(306)에서 결정된 제2 카테고리 내 페널티 항, 블록(308)에서 결정된 제3 카테고리 내 페널티 항, 및/또는 블록(310)에서 결정된 제4 카테고리 내 페널티 항의 가중된 합일 수 있다. 블록들(304-310)에서 결정된 카테고리 내 페널티 항들의 가중된 합인(그리고 일부 구현들에서는 렌더링 메타데이터의 "가상화 모드" 카테고리에 대한 카테고리 페널티 함수로서 이용될 수 있는) 카테고리 페널티 함수에 대한 수학식의 예가 다음과 같이 주어진다:
일부 구현들에서, 오디오 객체들과 연관된 렌더링 메타데이터의 타입과 오디오 객체가 할당되거나 렌더링되는 클러스터들의 렌더링 메타데이터의 타입들 사이의 불일치를 나타내는 페널티 항을 포함하지 않는 카테고리 페널티 함수가 계산될 수 있다. 예를 들어, 그러한 카테고리 페널티 함수는 "바이패스 모드" 카테고리에 대해 결정될 수 있다. 일부 구현들에서, 그러한 카테고리 페널티 함수는 블록(304)에서 결정된 제1 카테고리 내 페널티 항, 블록(306)에서 결정된 제2 카테고리 내 페널티 항, 및/또는 블록(308)에서 결정된 제3 카테고리 내 페널티 항의 가중된 합일 수 있다. 블록들(304-308)에서 결정된 (그리고 일부 구현들에서 렌더링 메타데이터의 "바이패스 모드" 카테고리에 대한 카테고리 페널티 함수로서 이용될 수 있는) 카테고리 내 페널티 항들의 가중된 합인 카테고리 페널티 함수에 대한 수학식의 예가 다음과 같이 주어진다:
카테고리 페널티 함수 의 계산을 위해 위에서 주어진 예에서, 카테고리 페널티 함수는 제4 카테고리 내 페널티 항 를 0으로 설정함으로써 카테고리 페널티 함수 로부터 도출될 수 있다는 점에 유의해야 한다.
전술한 예시적인 카테고리 페널티 함수들은 단지 예시적인 것이라는 점에 유의해야 한다. 일부 구현들에서, 카테고리 페널티 함수는 제1 카테고리 내 페널티 항 및 제2 카테고리 내 페널티 항, 제2 카테고리 내 페널티 항 및 제4 카테고리 내 페널티 항 등과 같은 임의의 적절한 카테고리 내 페널티의 가중된 합일 수 있다.
전술한 바와 같이, 렌더링 메타데이터의 특정 카테고리와 연관된 주어진 오디오 객체 j에 대해, (예를 들어, 벡터의 요소들로서 표시된) 하나 이상의 클러스터로 렌더링될 때 오디오 객체 j에 대한 이득들을 나타내는 객체-대-클러스터 이득들의 벡터는 렌더링 메타데이터의 카테고리와 연관된 카테고리 페널티 함수를 최소화함으로써 결정될 수 있다. 예를 들어, 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 오디오 객체에 대해, 객체-대-클러스터 이득들은 "바이패스 모드" 카테고리 페널티 함수(예를 들어, 상기의 수학식에서의 )를 최소화함으로써 결정될 수 있다. 라고 지칭되는 오디오 객체 j에 대한 이득 벡터는 연관된 카테고리 페널티 함수 E를 최소화함으로써 계산될 수 있다. 예를 들어, 수학식 를 풀 수 있고, 여기서 E는 오디오 객체 j와 연관된 렌더링 메타데이터의 카테고리에 대한 카테고리 비용 함수이다.
314에서, 프로세스(300)는, 렌더링 메타데이터의 각각의 카테고리에 대해, 렌더링 메타데이터의 카테고리와 연관된 오디오 객체들의 객체-대-클러스터 이득들에 기초하여 카테고리 내 비용 함수를 계산할 수 있다. 일부 구현들에서, 카테고리 내 비용 함수는 렌더링 메타데이터의 카테고리 내의 오디오 객체들의 라우드니스에 기초하여 결정될 수 있다. 추가적으로 또는 대안적으로, 일부 구현들에서, 카테고리 내 비용 함수는 대응하는 카테고리 내 페널티 함수(예를 들어, 전술한 바와 같은 및/또는 등)에 기초하여 결정될 수 있다. 카테고리 내 페널티 함수 E에 기초하여 결정된 카테고리 내 비용 함수를 계산하기 위한 예시적인 수학식은 다음과 같이 주어진다.
위에서 주어진 수학식에서, 는 오디오 객체 j의 부분적 라우드니스를 나타낸다. 카테고리 내 비용 함수는, 1) (예를 들어, 블록(304)에서 전술한 제1 카테고리 내 페널티 항에 기초하는) 오디오 객체 클러스터들에 할당된 오디오 객체들의 위치들에 대한 오디오 객체 클러스터들의 위치들; 2) (예를 들어, 블록(306)에서 전술한 제2 카테고리 내 페널티 항에 기초하는) 오디오 객체가 할당된 클러스터의 좌측 대 우측 배치에 대한 오디오 객체의 좌측 대 우측 배치; 3) (예를 들어, 블록(306)에서 전술한 제2 카테고리 내 페널티 항에 기초하는) 오디오 객체가 할당된 클러스터에 대한 오디오 객체의 거리; 4) (예를 들어, 블록(308)에서 전술한 제3 카테고리 내 페널티 항에 기초하는) 오디오 객체들의 라우드니스; 및/또는 5) (예를 들어, 블록(310)에서 전술한 제4 카테고리 내 페널티 항에 기초하는) 오디오 객체가 할당된 클러스터와 연관된 렌더링 메타데이터의 타입에 대한 오디오 객체와 연관된 렌더링 메타데이터의 타입의 유사성의 임의의 조합에 적어도 부분적으로 기초할 수 있다는 점에 유의해야 한다.
일부 구현들에서, 카테고리 내 비용 함수는 오디오 객체와 클러스터 사이의 위치 차이들의 라우드니스 가중된 합으로서 결정될 수 있다. 위치 차이들에 기초하여 카테고리 내 비용 함수를 계산하기 위한 예시적인 수학식은 다음에 의해 주어진다:
카테고리 내 비용 함수가 렌더링 메타데이터의 각각의 카테고리에 대해 결정될 수 있다는 것에 유의해야 한다. 예를 들어, 제1 카테고리 내 비용 함수 l1은 렌더링 메타데이터의 "가상화 모드" 카테고리에 대해 결정될 수 있고, 제2 카테고리 내 비용 함수 l2는 렌더링 메타데이터의 "바이패스 모드" 카테고리에 대해 결정될 수 있다. 유사하게, 스피커 렌더링 모드에서 렌더링을 위한 오디오 객체들을 클러스터링할 때, 구역-마스크 카테고리, 스냅 카테고리 등에 대한 카테고리 내 비용 함수들이 계산될 수 있다.
316에서, 프로세스(300)는 렌더링 메타데이터의 상이한 카테고리들에 걸쳐 카테고리 비용 함수들을 결합하는 전역 비용 함수를 계산할 수 있다. 예를 들어, 전역 비용 함수는 렌더링 메타데이터의 "가상화 모드" 카테고리와 연관된 제1 카테고리 비용 함수(예를 들어, 위에 주어진 예에서 l1) 및 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 제2 카테고리 비용 함수(예를 들어, 위에 주어진 예에서 l2)를 결합할 수 있다. 전역 비용 함수(일반적으로 본 명세서에서는 이라고 지칭됨)를 계산하기 위한 예시적인 수학식은 다음과 같이 주어진다:
위에서 주어진 수학식에서, α는 렌더링 메타데이터의 각각의 카테고리의 가중치 또는 중요도를 나타내는 가중 상수이다.
318에서, 프로세스(300)는 블록(316)에서 결정된 전역 비용 함수에 적어도 부분적으로 기초하여 렌더링 메타데이터의 카테고리들에 클러스터들을 재할당할 수 있다. 예를 들어, 일부 구현들에서, 프로세스(300)는 전역 비용 함수 을 최소화하는 각각의 카테고리에 대한 클러스터들의 수를 선택함으로써 클러스터들을 재할당할 수 있다. 더 특정한 예로서, 일부 구현들에서, 프로세스(300)는 렌더링 메타데이터의 제1 카테고리에 할당될 클러스터의 수 m 및 렌더링 메타데이터의 제2 카테고리에 할당될 클러스터의 수 n을 선택할 수 있다.
일부 구현들에서, 현재 프레임에서 렌더링 메타데이터의 특정 카테고리에 할당될 클러스터들의 수는 (예를 들어, 이전 프레임에 적용된 프로세스(300)의 결과로서) 이전 프레임에서 렌더링 메타데이터의 특정 카테고리에 할당된 클러스터들의 수와 상이할 수 있다. 일부 구현들에서, 이전 프레임에 대한 현재 프레임에 할당된 클러스터들의 수의 변화는 이전 프레임에 대한 현재 프레임에서 표시된 오디오 객체들의 상이한 수의 결과, 이전 프레임에 대한 현재 프레임에서 표시된 활성 오디오 객체들의 상이한 수의 결과, 및/또는 오디오 신호의 프레임들에 걸친 활성 오디오 객체들의 공간적 위치의 변화들의 결과일 수 있다. 예로서, m개의 클러스터는 현재 프레임에서의 렌더링 메타데이터의 제1 카테고리에 할당될 수 있고, 여기서 m'개의 클러스터는 이전 프레임에서의 렌더링 메타데이터의 제1 카테고리에 할당되었다. 렌더링 메타데이터의 상이한 카테고리들에 할당된 오디오 객체들을 포함하는 2개의 중첩 신호가 현재 프레임에 추가되고, 현재 프레임에서 제1 카테고리에 할당될 가용 프리 클러스터가 없는 경우, 렌더링 아티팩트들이 도입될 수 있다. 렌더링 메타데이터의 임의의 카테고리에 이전에 할당되지 않았던 추가적인 클러스터들을 추가함으로써 렌더링 메타데이터의 특정 카테고리에 추가적인 클러스터들을 추가하는 것은, 렌더링 메타데이터의 특정 카테고리에 할당된 오디오 객체들이 렌더링 아티팩트들을 도입하지 않으면서 더 정확하게 클러스터링되게 할 수 있다.
일부 구현들에서, 이전 프레임에서의 렌더링 메타데이터의 제1 카테고리에 할당된 m'개의 클러스터, 이전 프레임에서의 렌더링 메타데이터의 제2 카테고리에 할당된 n'개의 클러스터, 현재 프레임에서의 렌더링 메타데이터의 제1 카테고리에 할당된 m개의 클러스터, 및 현재 프레임에서의 렌더링 메타데이터의 제2 카테고리에 할당된 n개의 클러스터가 주어지면, 렌더링 메타데이터의 제1 카테고리 및 렌더링 메타데이터의 제2 카테고리에 대한 클러스터들의 증가는 각각, 다음과 같이 주어진다:
및
렌더링 메타데이터의 제1 카테고리 또는 렌더링 메타데이터의 제2 카테고리에 대한 할당을 위해 가용한 클러스터들의 수는 으로 주어질 수 있다. 일부 구현들에서, 프로세스(300)는 및 이도록 을 최소화함으로써 렌더링 메타데이터의 제1 카테고리 및 렌더링 메타데이터의 제2 카테고리에 클러스터들을 재할당할 수 있다. 프로세스(300)는 (예를 들어, 오디오 객체와 연관된 렌더링 메타데이터의 카테고리 이외의 렌더링 메타데이터의 카테고리와 연관된 클러스터에 대한) 오디오 객체들의 교차-카테고리 할당이 허용되지 않는 경우에 이러한 제약들에 따라 클러스터들을 재할당할 수 있다는 점에 유의해야 한다.
예로써, Mtotal이 21이고(예를 들어, 렌더링 메타데이터의 모든 카테고리에 걸쳐 최대 21개의 클러스터가 할당될 수 있음), m'이 11이고 n'이 10인 경우, mfree는 0인데, 그 이유는 이기 때문이다. 이 예를 계속하면, 프로세스(300)는 이후 블록(318)에서, 할당을 위한 가용 클러스터들이 존재하지 않기 때문에, m도 n도 증가되지 않을 수 있다고 결정할 수 있다. 특정 예로서, (예를 들어, 이라는 기준을 만족시키기 위해) m이 13으로 설정되고 n이 8로 설정되면, Δm은 2이고 Δn은 0이다. 그러나, Δm+Δn=2이기 때문에, 이는 mfree(0임)보다 더 크고, 프로세스(300)는 13이 현재 프레임에 대한 m의 유효 값이 아니라고 결정할 수 있다.
상기의 예들은 렌더링 메타데이터의 2개의 카테고리를 설명하지만, 동일 기술들이 렌더링 메타데이터의 임의의 적절한 수의 카테고리(예를 들어, 3개, 4개 등)에 적용될 수 있다는 점에 유의해야 한다. 예를 들어, 프로세스(300)는 및 이도록 을 최소화할 수 있다.
이어서, 프로세스(300)는 블록(304)으로 루프백할 수 있다. 프로세스(300)는 중지 기준들에 도달할 때까지 블록들(304-318)을 통해 루프할 수 있다. 중지 기준들의 예들은 블록(316)에서 결정된 전역 비용 함수의 최소치에 도달했다는 것, 미리 결정된 임계값보다 많은 반복들이 블록들(304-318)을 통해 수행되었다는 것 등의 결정을 포함한다. 일부 구현들에서, 중지 기준에 도달할 때까지 블록들(304-318)을 통해 루핑한 결과로서 결정된 할당은 "최적의 할당"이라고 지칭될 수 있다.
프로세스(300)의 블록들이 입력 오디오 신호의 특정 프레임에 대한 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 할당을 결정하기 위해 수행될 수 있다는 것에 유의해야 한다. 프로세스(300)의 블록들은 입력 오디오 신호의 다른 프레임들에 대해 반복되어 입력 오디오 신호의 다른 프레임들에 대한 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 할당을 결정할 수 있다. 예를 들어, 일부 구현들에서, 프로세스(300)는 입력 오디오 신호의 각각의 프레임에 대해, 입력 오디오 신호의 하나 걸러 프레임에 대해, 또는 이와 유사한 것에 대해 프로세스(300)의 블록들을 반복할 수 있다.
도 4는 일부 구현들에 따른, 오디오 객체들을 클러스터들로 렌더링하기 위한 프로세스(400)의 예를 도시한다. 프로세스(400)의 블록들은, 입력 오디오 신호에 포함된 오디오 객체들에 기초하여 인코딩된 오디오 신호를 생성하는 서버와 같은 임의의 적절한 디바이스 상에서 구현될 수 있다. 프로세스(400)는 일반적으로 오디오 콘텐츠의 단일 프레임과 관련된 프로세스를 설명하지만, 일부 실시예들에서, 프로세스(400)의 블록들은 오디오 콘텐츠의 하나 이상의 다른 프레임에 대해 반복되어, 예를 들어, 입력 오디오 신호의 압축된 버전인 전체 출력 오디오 신호를 생성할 수 있다는 것이 이해되어야 함에 유의해야 한다. 일부 구현들에서, 프로세스(400)의 하나 이상의 블록이 생략될 수 있다. 추가적으로, 일부 구현들에서, 프로세스(400)의 2개 이상의 블록은 실질적으로 병렬로 수행될 수 있다. 프로세스(400)의 블록들은 도 4에 도시된 순서로 제한되지 않는 임의의 순서로 수행될 수 있다.
프로세스(400)는 402에서 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 할당을 획득함으로써 시작할 수 있다. 예를 들어, 할당은 렌더링 메타데이터의 각각의 카테고리에 할당된 클러스터들의 수를 나타낼 수 있다. 더 특정한 예로서, 할당은 렌더링 메타데이터의 제1 카테고리(예를 들어, 렌더링 메타데이터의 "바이패스 모드" 카테고리)에 할당된 클러스터들의 제1 수 및 렌더링 메타데이터의 제2 카테고리(예를 들어, 렌더링 메타데이터의 "가상화 모드" 카테고리)에 할당된 클러스터들의 제2 수를 나타낼 수 있다. 렌더링 메타데이터의 다른 카테고리들은, 스피커 렌더링 모드에서, 렌더링 메타데이터의 "스냅" 카테고리, 렌더링 메타데이터의 "구역-마스크" 카테고리 등을 포함할 수 있다. 일부 구현들에서, 클러스터들의 할당은 각각의 클러스터의 중심 위치를 더 나타낼 수 있다. 일부 구현들에서, 블록(404)에서 객체-대-클러스터 이득들을 결정하는 데 이용되는 페널티 함수를 계산하는 데 있어서 각각의 클러스터의 중심 위치가 이용될 수 있다.
일부 구현들에서, 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 할당은 다양한 제약들 또는 기준들에 따른(예를 들어, 클러스터들의 최대 수에 따른) 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 최적의 할당을 결정하는 최적화 프로세스의 결과일 수 있다. 렌더링 메타데이터의 카테고리들에 대한 클러스터들의 할당을 결정하기 위한 예시적인 프로세스는 도 3과 관련하여 도시되고 위에서 설명되었다.
렌더링 메타데이터의 카테고리들에 대한 클러스터들의 할당은 입력 오디오 신호의 개별 프레임들에 대해 특정될 수 있다는 점에 유의해야 한다. 예를 들어, 획득된 할당은 m'개의 클러스터가 입력 오디오 신호의 제1 프레임에 대한 렌더링 메타데이터의 제1 카테고리에 할당될 것이고, m개의 클러스터가 입력 오디오 신호의 제2 프레임에 대한 렌더링 메타데이터의 제1 카테고리에 할당될 것임을 나타낼 수 있다. 입력 오디오 신호의 제1 프레임 및 입력 오디오 신호의 제2 프레임은 연속 프레임들일 수 있거나 연속 프레임들이 아닐 수 있다.
404에서, 프로세스(400)는, 입력 오디오 신호의 프레임에서의 각각의 오디오 객체에 대해, 오디오 객체와 연관된 렌더링 메타데이터의 카테고리에 할당된 클러스터들에 대한 객체-대-클러스터 이득들을 결정할 수 있다. 예를 들어, 오디오 객체가 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관되고 m개의 클러스터가 렌더링 메타데이터의 "바이패스 모드" 카테고리에 할당된 경우에, 프로세스(400)는 렌더링 메타데이터의 "바이패스 모드" 카테고리에 할당된 m개의 클러스터로 렌더링될 때 오디오 객체에 대한 객체-대-클러스터 이득들을 결정할 수 있다. 특정 클러스터로 렌더링된 특정 오디오 객체에 대한 객체-대-클러스터 이득들은 0일 수 있고, 이는 오디오 객체가 그 클러스터에 할당되거나 렌더링되지 않는다는 것을 나타낸다는 점에 유의해야 한다.
일부 구현들에서, 프로세스(400)는 개별적으로 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 페널티 함수들을 최소화함으로써 객체-대-클러스터 이득들을 결정할 수 있다. 개별적으로 렌더링 메타데이터의 각각의 카테고리에 대한 페널티 함수들을 최소화함으로써 객체-대-클러스터 이득들을 결정하는 것은 렌더링 메타데이터의 제1 카테고리와 관련된 오디오 객체를 렌더링 메타데이터의 제2 카테고리에 할당된 클러스터에 할당 또는 렌더링하는 것을 금지할 것이며, 렌더링 메타데이터의 제1 카테고리는 렌더링 메타데이터의 제2 카테고리와 상이하다는 점에 유의해야 한다. 예를 들어, 그러한 구현들에서, 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 오디오 객체는 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당된 클러스터에 할당 및/또는 렌더링되는 것이 금지될 것이다. 그러한 클러스터링의 예는 도 1a와 관련하여 도시되고 위에서 설명된다.
일부 구현들에서, 카테고리 페널티 함수들은 도 3의 블록(312)과 관련하여 설명된 카테고리 페널티 함수들일 수 있다. 예를 들어, 카테고리 페널티 함수들은 프로세스(300)의 블록들의 반복들과 관련하여 중지 기준에 도달할 때 최종 할당에 대해 결정된 최종 카테고리 페널티 함수들일 수 있다. 특정 예로서, (예를 들어, 헤드폰 렌더링 모드 경우에서, 그리고 렌더링 메타데이터의 "가상화 모드" 카테고리에 대해) 4개의 카테고리 내 페널티 항이 결정되는 경우에서, 카테고리 페널티 함수는 (도 3의 블록(312)과 관련하여 설명된 바와 같이) 다음과 같을 수 있다:
다른 특정 예로서, (예를 들어, 헤드폰 렌더링 모드 경우에서 그리고 렌더링 메타데이터의 "바이패스 모드" 카테고리에 대해) 3개의 카테고리 내 페널티 항이 결정되는 경우에서, 카테고리 페널티 함수는 (도 3의 블록(312)과 관련하여 설명된 바와 같이) 다음과 같을 수 있다:
예로써, 헤드폰 렌더링 모드 경우에서, 프로세스(400)는 (예를 들어, 블록(402)에서 획득된 할당에서 표시된 바와 같이) "바이패스 모드" 카테고리와 연관된 제1 페널티 함수 및 "바이패스 모드" 카테고리에 할당된 클러스터들을 최소화함으로써 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 오디오 객체들의 제1 세트에 대한 객체-대-클러스터 이득들의 제1 세트를 결정할 수 있다. 이 예를 계속하면, 프로세스(400)는 (예를 들어, 블록(402)에서 획득된 할당에서 표시된 바와 같이) "가상화 모드" 카테고리와 연관된 제2 페널티 함수 및 "가상화 모드" 카테고리에 할당된 클러스터들을 최소화함으로써 렌더링 메타데이터의 "가상화 모드" 카테고리와 연관된 오디오 객체들의 제2 세트에 대한 객체-대-클러스터 이득들의 제2 세트를 결정할 수 있다.
대안적으로, 일부 구현들에서, 프로세스(400)는 (예를 들어, 렌더링 메타데이터의 모든 카테고리들을 고려하는) 공동 페널티 함수를 최소화함으로써 객체-대-클러스터 이득들을 결정할 수 있다. 그러한 구현들에서, 렌더링 메타데이터의 제1 카테고리와 연관된 오디오 객체는 렌더링 메타데이터의 제2 카테고리에 할당된 클러스터에 할당 또는 렌더링될 수 있으며, 여기서 렌더링 메타데이터의 제1 카테고리는 렌더링 메타데이터의 제2 카테고리와 상이하다. 예를 들어, 그러한 구현들에서, 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 오디오 객체는 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당된 클러스터에 할당 및/또는 렌더링될 수 있다. 그러한 클러스터의 예는 도 1b와 관련하여 도시되고 위에서 설명된다.
공동 페널티 함수를 나타내는 예시적인 수학식은 다음과 같다:
상기의 수학식에서, EP, ED 및 EN은 각각 블록들(304, 306 및 308)에서 설명된 제1 페널티 항, 제2 페널티 항 및 제3 페널티 항을 나타낸다. 따라서, EP, ED 및 EN은 도 3의 블록들(304, 306 및 308)과 관련하여 전술한 기술들을 이용하여 그리고 렌더링 메타데이터의 모든 카테고리들에 걸친 오디오 객체들 및 클러스터들을 고려하여 결정될 수 있다. 블록(312)과 관련하여 전술한 것과 유사하게, w'P, w'D, w'N, 및 w'G는 전체 공동 페널티 함수에 대한 각각의 페널티 항의 상대적 중요도를 나타낸다.
는 다음을 나타낸다: 1) 렌더링 메타데이터의 제2 카테고리에 할당된 클러스터에 대한 제1 카테고리와 연관된 오디오 객체의 할당 또는 렌더링 사이의 불일치와 연관된 페널티; 및 2) 오디오 객체의 렌더링 메타데이터의 타입과 오디오 객체가 할당되거나 렌더링되는 클러스터의 렌더링 메타데이터의 타입 사이의 불일치와 연관된 페널티(여기서, 오디오 객체와 클러스터의 렌더링 메타데이터의 타입들은 렌더링 메타데이터의 동일한 카테고리 내에 있음). 예로써, 헤드폰 렌더링 경우에서, 는 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당 및/또는 렌더링되는 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 오디오 객체에 대한 페널티를 나타낼 수 있다. 이 예를 계속하면, 는, 추가적으로 또는 대안적으로, 주로 가상화의 "중간" 또는 "원거리" 타입과 연관되는 클러스터에 할당되는 가상화의 "근거리" 타입과 연관된 오디오 객체에 대한 페널티를 나타낼 수 있다. 를 결정하기 위한 예시적인 수학식은 다음과 같이 주어진다:
상기의 수학식에서, U는 렌더링 모드 mode(c)와 연관된 클러스터에 할당 및/또는 렌더링되는 렌더링 모드 mode(j)와 연관된 오디오 객체 j의 페널티를 나타내는 행렬을 나타낸다. 예로써, 헤드폰 렌더링 경우에서, 모드들의 예들(예를 들어, mode(j) 및 mode(c)의 예시적인 값들)은 "바이패스 모드", "근거리" 가상화, "중간" 가상화, 및 "원거리" 가상화를 포함할 수 있다. 헤드폰 렌더링 경우에서, U는 4×4 행렬일 수 있고, 여기서, 행은 오디오 객체와 연관된 모드를 나타내고, 열은 오디오 객체가 할당되거나 렌더링되는 클러스터와 연관된 모드를 나타낸다. 보다 특정한 예로서, 일부 구현들에서, U의 처음 3개의 행들 및 열들은 가상화의 상이한 타입들(예를 들어, "근거리", "중간", 및 "원거리")에 대응할 수 있고, U의 네 번째 행 및 열은 바이패스 모드에 대응할 수 있다. 그러한 행렬 U의 예는 다음과 같다:
상기의 예시적인 U 행렬에 나타낸 바와 같이, 렌더링 메타데이터의 "바이패스 모드" 카테고리와 연관된 오디오 객체는, (U의 마지막 행에서의 1들로 표시된 바와 같은) 렌더링 메타데이터의 "가상화 모드" 카테고리에 할당된 클러스터에 할당될 때 강하게 페널티를 받을 수 있다. 유사하게, 렌더링 메타데이터의 "가상화 모드" 카테고리의 임의의 타입(예를 들어, 가상화의 "근거리", 중간", 및/또는 "원거리" 타입 중 임의의 것)과 연관된 오디오 객체들은, (U의 마지막 열에서의 1들에 의해 표시된 바와 같은) 렌더링 메타데이터의 "바이패스 모드" 카테고리에 할당된 클러스터에 할당될 때 강하게 페널티를 받을 수 있다. 즉, 오디오 객체들의 교차-카테고리 할당 또는 렌더링은 렌더링 메타데이터의 동일한 카테고리 내의 렌더링 메타데이터의 다른 타입들에 대한 오디오 객체들의 할당 또는 렌더링보다 비교적 더 페널티를 받는다. 예로써, 가상화의 "근거리" 타입과 연관된 오디오 객체는 페널티 0.3을 갖는 가상화의 "중간" 타입과 연관된 클러스터에 할당되고, 페널티 0.7을 갖는 가상화의 "원거리" 타입과 연관된 클러스터에 할당되고, 페널티 1을 갖는 "바이패스 모드" 렌더링 메타데이터와 연관된 교차-카테고리 클러스터에 할당될 수 있다.
406에서, 프로세스(400)는 (예를 들어, 블록(404)에서 결정된 바와 같이) 각각의 오디오 객체에 대한 객체-대-클러스터 이득들에 기초하여 출력 오디오 신호를 생성할 수 있다. 출력 오디오 신호는, 각각의 오디오 객체에 대해 결정된 객체-대-클러스터 이득들에 따라 하나 이상의 클러스터에 할당되거나 렌더링된 각각의 오디오 객체를 포함할 수 있다. 특정 클러스터 c에 대한 출력 오디오 신호(일반적으로 본 명세서에서 라고 지칭됨)의 생성을 위한 예시적인 수학식은 다음과 같다:
상기의 수학식에 나타낸 바와 같이, 입력 오디오 신호 에 표시된 j개의 오디오 객체 클러스터가 반복되고, 각각은 객체-대-클러스터 이득 에 기초하여 하나 이상의 클러스터 c로 렌더링된다.
프로세스(400)의 블록들은 입력 오디오 신호의 하나 이상의 다른 프레임에 대해 반복될 수 있으며, 따라서 입력 오디오 신호의 하나 이상의 다른 프레임에서 표시된 오디오 객체들은 다양한 클러스터들에 할당 또는 렌더링되어, 입력 오디오 신호의 다수의 프레임들(예를 들어, 입력 오디오 신호의 모든 프레임들)을 포함하는 전체 출력 오디오 신호를 생성할 수 있다는 점에 유의해야 한다. 일부 구현들에서, 전체 출력 오디오 신호는 저장되고, 렌더링 등을 위해 디바이스(예를 들어, 모바일 디바이스, 텔레비전, 스피커들 등과 같은 사용자 디바이스)에 송신될 수 있다.
도 5는 본 개시내용의 다양한 양태들을 구현할 수 있는 장치의 컴포넌트들의 예를 도시하는 블록도이다. 본 명세서에 제공된 다른 도면들에서와 같이, 도 5에 도시된 요소들의 타입들 및 수들은 단지 예로써 제공된다. 다른 구현들은 더 많은, 더 적은 및/또는 상이한 타입들 및 수들의 요소들을 포함할 수 있다. 일부 예들에 따르면, 장치(500)는 본 명세서에 개시된 방법들 중 적어도 일부를 수행하도록 구성될 수 있다. 일부 구현들에서, 장치(500)는 텔레비전, 오디오 시스템의 하나 이상의 컴포넌트, 모바일 디바이스(예를 들어, 셀룰러 전화), 랩톱 컴퓨터, 태블릿 디바이스, 스마트 스피커, 또는 다른 타입의 디바이스일 수 있거나, 이들을 포함할 수 있다.
일부 대안적인 구현들에 따르면, 장치(500)는 서버일 수 있거나 서버를 포함할 수 있다. 일부 그러한 예들에서, 장치(500)는 인코더일 수 있거나 인코더를 포함할 수 있다. 따라서, 일부 경우들에서, 장치(500)는 홈 오디오 환경과 같은 오디오 환경 내에서 이용하도록 구성되는 디바이스일 수 있는 반면, 다른 경우들에서, 장치(500)는 "클라우드", 예를 들어, 서버에서 이용하도록 구성되는 디바이스일 수 있다.
이 예에서, 장치(500)는 인터페이스 시스템(505) 및 제어 시스템(510)을 포함한다. 인터페이스 시스템(505)은, 일부 구현들에서, 오디오 환경의 하나 이상의 다른 디바이스와 통신하도록 구성될 수 있다. 오디오 환경은, 일부 예들에서, 홈 오디오 환경일 수 있다. 다른 예들에서, 오디오 환경은 사무실 환경, 자동차 환경, 기차 환경, 거리 또는 인도 환경, 공원 환경 등과 같은 다른 타입의 환경일 수 있다. 인터페이스 시스템(505)은, 일부 구현들에서, 오디오 환경의 오디오 디바이스들과 제어 정보 및 연관된 데이터를 교환하도록 구성될 수 있다. 제어 정보 및 연관된 데이터는, 일부 예들에서, 장치(500)가 실행하고 있는 하나 이상의 소프트웨어 애플리케이션에 관련될 수 있다.
인터페이스 시스템(505)은, 일부 구현들에서, 콘텐츠 스트림을 수신하거나 제공하도록 구성될 수 있다. 콘텐츠 스트림은 오디오 데이터를 포함할 수 있다. 오디오 데이터는 오디오 신호들을 포함할 수 있지만, 이에 제한되지 않을 수 있다. 일부 예들에서, 오디오 데이터는 채널 데이터 및/또는 공간적 메타데이터와 같은 공간적 데이터를 포함할 수 있다. 일부 예들에서, 콘텐츠 스트림은 비디오 데이터 및 비디오 데이터에 대응하는 오디오 데이터를 포함할 수 있다.
인터페이스 시스템(505)은 하나 이상의 네트워크 인터페이스 및/또는 하나 이상의 외부 디바이스 인터페이스(예컨대, 하나 이상의 범용 직렬 버스(USB) 인터페이스)를 포함할 수 있다. 일부 구현들에 따르면, 인터페이스 시스템(505)은 하나 이상의 무선 인터페이스를 포함할 수 있다. 인터페이스 시스템(505)은 하나 이상의 마이크로폰, 하나 이상의 스피커, 디스플레이 시스템, 터치 센서 시스템 및/또는 제스처 센서 시스템과 같은, 사용자 인터페이스를 구현하기 위한 하나 이상의 디바이스를 포함할 수 있다. 일부 예들에서, 인터페이스 시스템(505)은 제어 시스템(510)과 도 5에 도시된 선택적인 메모리 시스템(515)과 같은 메모리 시스템 사이의 하나 이상의 인터페이스를 포함할 수 있다. 그러나, 제어 시스템(510)은 일부 경우들에서 메모리 시스템을 포함할 수 있다. 인터페이스 시스템(505)은, 일부 구현들에서, 환경 내의 하나 이상의 마이크로폰으로부터 입력을 수신하도록 구성될 수 있다.
제어 시스템(510)은, 예를 들어, 범용 단일 또는 멀티 칩 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 필드 프로그래밍가능 게이트 어레이(FPGA) 또는 다른 프로그래밍가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 및/또는 이산 하드웨어 컴포넌트들을 포함할 수 있다.
일부 구현들에서, 제어 시스템(510)은 하나보다 많은 디바이스에 상주할 수 있다. 예를 들어, 일부 구현들에서, 제어 시스템(510)의 일부는 본 명세서에 도시된 환경들 중 하나 내의 디바이스에 상주할 수 있고, 제어 시스템(510)의 다른 부분은 서버, 모바일 디바이스(예를 들어, 스마트폰 또는 태블릿 컴퓨터) 등과 같은, 환경 외부에 있는 디바이스에 상주할 수 있다. 다른 예들에서, 제어 시스템(510)의 일부는 하나의 환경 내의 디바이스에 상주할 수 있고, 제어 시스템(510)의 다른 부분은 환경의 하나 이상의 다른 디바이스에 상주할 수 있다. 예를 들어, 제어 시스템(510)의 일부는 서버와 같은 클라우드 기반 서비스를 구현하는 디바이스에 상주할 수 있고, 제어 시스템(510)의 다른 부분은 다른 서버, 메모리 디바이스 등과 같은, 클라우드 기반 서비스를 구현하는 다른 디바이스에 상주할 수 있다. 인터페이스 시스템(505)은 또한, 일부 예들에서, 하나보다 많은 디바이스에 상주할 수 있다.
일부 구현들에서, 제어 시스템(510)은 본 명세서에 개시된 방법들을 적어도 부분적으로 수행하도록 구성될 수 있다. 일부 예들에 따르면, 제어 시스템(510)은 오디오 객체들을 클러스터링하는 방법들을 구현하도록 구성될 수 있다.
본 명세서에 설명된 방법들 중 일부 또는 전부는 하나 이상의 비일시적 매체에 저장된 명령어들(예를 들어, 소프트웨어)에 따라 하나 이상의 디바이스에 의해 수행될 수 있다. 그러한 비일시적 매체는, 랜덤 액세스 메모리(RAM) 디바이스들, 판독 전용 메모리(ROM) 디바이스들 등을 포함하지만 이것으로 제한되지 않는, 본 명세서에서 설명된 것들과 같은 메모리 디바이스들을 포함할 수 있다. 하나 이상의 비일시적 매체는, 예를 들어, 도 5에 도시된 선택적인 메모리 시스템(515) 및/또는 제어 시스템(510)에 상주할 수 있다. 따라서, 본 개시내용에서 설명된 주제의 다양한 혁신적 양태들은 소프트웨어가 저장된 하나 이상의 비일시적 매체에서 구현될 수 있다. 소프트웨어는, 예를 들어, 렌더링 메타데이터의 다양한 카테고리들에 대한 클러스터들의 할당을 결정하고, 오디오 객체들을 할당된 클러스터들에 할당 또는 렌더링하는 등을 위한 명령어들을 포함할 수 있다. 소프트웨어는, 예를 들어, 도 5의 제어 시스템(510)과 같은 제어 시스템의 하나 이상의 컴포넌트들에 의해 실행가능할 수 있다.
일부 예들에서, 장치(500)는 도 5에 도시된 선택적인 마이크로폰 시스템(520)을 포함할 수 있다. 선택적인 마이크로폰 시스템(520)은 하나 이상의 마이크로폰을 포함할 수 있다. 일부 구현들에서, 마이크로폰들 중 하나 이상은 스피커 시스템의 스피커, 스마트 오디오 디바이스 등과 같은 다른 디바이스의 일부이거나 그와 연관될 수 있다. 일부 예들에서, 장치(500)는 마이크로폰 시스템(520)을 포함하지 않을 수 있다. 그러나, 일부 그러한 구현들에서, 장치(500)는 그럼에도 불구하고 인터페이스 시스템(510)을 통해 오디오 환경 내의 하나 이상의 마이크로폰에 대한 마이크로폰 데이터를 수신하도록 구성될 수 있다. 일부 그러한 구현들에서, 장치(500)의 클라우드 기반 구현은, 인터페이스 시스템(510)을 통해 오디오 환경 내의 하나 이상의 마이크로폰으로부터 마이크로폰 데이터 또는 마이크로폰 데이터에 적어도 부분적으로 대응하는 잡음 메트릭을 수신하도록 구성될 수 있다.
일부 구현들에 따르면, 장치(500)는 도 5에 도시된 선택적인 확성기 시스템(525)을 포함할 수 있다. 선택적인 확성기 시스템(525)은 본 명세서에서 "스피커들" 또는, 보다 일반적으로, "오디오 재생 트랜스듀서들"이라고도 지칭될 수 있는, 하나 이상의 확성기를 포함할 수 있다. 일부 예들(예를 들어, 클라우드 기반 구현들)에서, 장치(500)는 확성기 시스템(525)을 포함하지 않을 수 있다. 일부 구현들에서, 장치(500)는 헤드폰들을 포함할 수 있다. 헤드폰들은 헤드폰 잭을 통해 또는 무선 접속(예를 들어, BLUETOOTH)을 통해 장치(500)에 접속 또는 결합될 수 있다.
본 개시내용의 일부 양태들은 개시된 방법들의 하나 이상의 예를 수행하도록 구성된(예를 들어, 프로그래밍된) 시스템 또는 디바이스, 및 개시된 방법들 또는 그 단계들의 하나 이상의 예를 구현하기 위한 코드를 저장하는 유형의 컴퓨터 판독가능 매체(예를 들어, 디스크)를 포함한다. 예를 들어, 일부 개시된 시스템은, 개시된 방법 또는 그 단계들의 실시예를 포함한, 데이터에 대한 다양한 동작들 중 임의의 것을 수행하도록 소프트웨어 또는 펌웨어로 프로그래밍된 및/또는 다른 방식으로 구성된 프로그래밍가능 범용 프로세서, 디지털 신호 프로세서, 또는 마이크로프로세서이거나 이를 포함할 수 있다. 그러한 범용 프로세서는 입력 디바이스, 메모리, 및 어써트된 데이터에 응답하여 개시된 방법들(또는 그 단계들)의 하나 이상의 예를 수행하도록 프로그래밍되어 있는(및/또는 다른 방식으로 구성되어 있는) 처리 서브시스템을 포함하는 컴퓨터 시스템일 수 있거나 그를 포함할 수 있다.
일부 실시예들은 개시된 방법들의 하나 이상의 예의 수행을 포함하여, 오디오 신호(들)에 대해 요구되는 처리를 수행하도록 구성되는(예를 들어, 프로그래밍되고 다른 방식으로 구성되는) 구성가능한(예를 들어, 프로그래밍가능한) 디지털 신호 프로세서(DSP)로서 구현될 수 있다. 대안적으로, 개시된 시스템들(또는 그 요소들)의 실시예들은 개시된 방법들의 하나 이상의 예를 포함하는 다양한 동작들 중 임의의 것을 수행하도록 소프트웨어 또는 펌웨어로 프로그래밍 및/또는 다른 방식으로 구성되는 범용 프로세서(예를 들어, 입력 디바이스 및 메모리를 포함할 수 있는 개인용 컴퓨터(PC) 또는 다른 컴퓨터 시스템 또는 마이크로프로세서)로서 구현될 수 있다. 대안적으로, 본 발명의 시스템의 일부 실시예들의 요소들은 개시된 방법들의 하나 이상의 예를 수행하도록 구성된(예를 들어, 프로그래밍된) 범용 프로세서 또는 DSP로서 구현되고, 시스템은 또한 다른 요소들(예를 들어, 하나 이상의 확성기 및/또는 하나 이상의 마이크로폰)을 포함한다. 개시된 방법들의 하나 이상의 예를 수행하도록 구성된 범용 프로세서는 입력 디바이스(예를 들어, 마우스 및/또는 키보드), 메모리, 및 디스플레이 디바이스에 결합될 수 있다.
본 개시내용의 다른 양태는 개시된 방법들 또는 그 단계들의 하나 이상의 예를 수행하기 위한 코드(예를 들어, 수행하도록 실행가능한 코더)를 저장하는 컴퓨터 판독가능 매체(예를 들어, 디스크 또는 다른 유형의 저장 매체)이다.
본 개시내용의 특정 실시예들 및 본 개시내용의 응용들이 본 명세서에 설명되어 있지만, 본 명세서에 설명되고 청구된 본 개시내용의 카테고리를 벗어나지 않고서 본 명세서에 설명된 실시예들 및 응용들에 대한 많은 변형들이 가능하다는 것이 본 기술분야의 통상의 기술자에게는 명백할 것이다. 본 개시내용의 특정 형태들이 도시되고 설명되었지만, 본 개시내용은 설명되고 도시된 특정 실시예들 또는 설명된 특정 방법들로 제한되지 않는다는 것을 이해해야 한다.
열거된 예시적인 실시예들:
예 1. 오디오 객체들을 클러스터링하기 위한 방법으로서, 복수의 오디오 객체들을 식별하는 단계 - 오디오 객체는 공간적 위치 정보 및 렌더링 메타데이터를 나타내는 메타데이터와 연관됨 -; 복수의 오디오 객체들 중의 오디오 객체들을 렌더링 메타데이터의 복수의 카테고리들 중의 렌더링 메타데이터의 카테고리들에 할당하는 단계 - 렌더링 메타데이터의 적어도 하나의 카테고리는 보존될 렌더링 메타데이터의 복수의 타입들을 포함함 -; 렌더링 메타데이터의 각각의 카테고리에 대한 복수의 오디오 객체 클러스터들의 할당을 결정하는 단계 - 오디오 객체 클러스터는 유사한 속성들을 갖는 복수의 오디오 객체들 중의 하나 이상의 오디오 객체를 포함함 -; 공간적 위치 정보를 나타내는 메타데이터에 기초하여 그리고 렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 복수의 오디오 객체들 중의 오디오 객체들을 할당된 복수의 오디오 객체 클러스터들로 렌더링하는 단계를 포함하는, 방법.
예 2. 예 1의 방법으로서, 렌더링 메타데이터의 카테고리들은 바이패스 모드 카테고리 및 가상화 카테고리를 포함하는, 방법.
예 3. 예 2의 방법으로서, 가상화 카테고리에 포함된 렌더링 메타데이터의 복수의 타입들은 머리 중심으로부터 오디오 객체까지의 거리를 각각 나타내는 가상화의 복수의 타입들을 포함하는, 방법.
예 4. 예 1의 방법으로서, 렌더링 메타데이터의 카테고리들은 구역 카테고리 또는 스냅 카테고리 중 하나를 포함하는, 방법.
예 5. 예 1 내지 예 4 중 어느 하나의 방법으로서, 렌더링 메타데이터의 제1 카테고리에 할당된 오디오 객체는 렌더링 메타데이터의 제2 카테고리에 할당된 복수의 오디오 객체 클러스터들 중의 오디오 객체 클러스터에 할당되는 것이 금지되는, 방법.
예 6. 예 1 내지 예 5 중 어느 하나의 방법으로서, 할당된 복수의 오디오 객체 클러스터들 중의 각각의 오디오 객체 클러스터와 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호를 송신하는 단계를 더 포함하고, 오디오 신호는 렌더링 메타데이터의 제1 카테고리에 할당된 오디오 객체가 렌더링 메타데이터의 제2 카테고리와 연관된 오디오 객체 클러스터에 할당되는 오디오 객체 클러스터들과 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호보다 적은 공간적 왜곡을 갖는, 방법.
예 7. 예 1 내지 예 6 중 어느 하나의 방법으로서, 렌더링 메타데이터의 각각의 카테고리에 대한 복수의 오디오 객체 클러스터들의 할당을 결정하는 단계는, (i) 렌더링 메타데이터의 각각의 카테고리에 대한 초기 복수의 오디오 객체 클러스터들의 초기 할당을 결정하는 단계; (ii) 공간적 위치 정보를 나타내는 메타데이터에 기초하여 그리고 렌더링 메타데이터의 카테고리들에 대한 오디오 객체들의 할당들에 기초하여 오디오 객체들을 초기 복수의 오디오 객체 클러스터들에 할당하는 단계; (iii) 렌더링 메타데이터의 각각의 카테고리에 대해, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계; (iv) 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 비용에 적어도 부분적으로 기초하여 렌더링 메타데이터의 각각의 카테고리에 대한 초기 복수의 오디오 객체 클러스터들의 업데이트된 할당을 결정하는 단계; 및 (iv) 중지 기준에 도달할 때까지 (ii) - (iv)를 반복하는 단계를 포함하는, 방법.
예 8. 예 7의 방법으로서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 렌더링 메타데이터의 카테고리에 할당된 오디오 객체 클러스터들의 위치들 및 렌더링 메타데이터의 카테고리에 할당된 오디오 객체 클러스터들에 할당된 오디오 객체들의 위치들에 기초하는, 방법.
예 9. 예 8의 방법으로서, 카테고리 비용은, 오디오 객체가 할당된 오디오 객체 클러스터의 좌측 대 우측 배치에 대한 오디오 객체의 좌측 대 우측 배치에 기초하는, 방법.
예 10. 예 7 내지 예 9 중 어느 하나의 방법으로서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 오디오 객체들의 라우드니스에 기초하는, 방법.
예 11. 예 7 내지 예 10 중 어느 하나의 방법으로서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 오디오 객체가 할당된 오디오 객체 클러스터에 대한 오디오 객체의 거리에 기초하는, 방법.
예 12. 예 7 내지 예 11 중 어느 하나의 방법으로서, 초기 복수의 오디오 객체 클러스터들에 대한 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계는, 오디오 객체가 할당된 오디오 객체 클러스터의 렌더링 메타데이터의 타입에 대한 오디오 객체의 렌더링 메타데이터의 타입의 유사성에 기초하는, 방법.
예 13. 예 7 내지 예 12 중 어느 하나의 방법으로서, 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 비용에 기초하여 전역 비용을 결정하는 단계를 더 포함하고, 초기 복수의 오디오 객체 클러스터들의 업데이트된 할당은 전역 비용에 기초하는, 방법.
예 14. 예 12의 방법으로서, 중지 기준에 도달할 때까지 (ii) - (iv)를 반복하는 단계는, 전역 비용의 최소치가 달성된 것을 결정하는 단계를 포함하는, 방법.
예 15. 예 7 내지 예 14 중 어느 하나의 방법으로서, 업데이트된 할당을 결정하는 단계는, 렌더링 메타데이터의 복수의 카테고리들 중의 렌더링 메타데이터의 적어도 하나의 카테고리에 할당된 오디오 객체 클러스터들의 수를 변경하는 단계를 포함하는, 방법.
예 16. 예 15의 방법으로서, 렌더링 메타데이터의 각각의 카테고리에 대한 카테고리 비용에 기초하여 전역 비용을 결정하는 단계를 더 포함하고, 오디오 객체 클러스터들의 수는 전역 비용에 기초하여 결정되는, 방법.
예 17. 예 16의 방법으로서, 오디오 객체 클러스터들의 수를 결정하는 단계는, 추가될 수 있는 오디오 객체 클러스터들의 최대 수를 나타내는 오디오 객체 클러스터들의 수에 관한 제약에 따라 전역 비용을 최소화하는 단계를 포함하는, 방법.
예 18. 예 1 내지 예 17 중 어느 하나의 방법으로서, 복수의 오디오 객체들 중의 오디오 객체들을 할당된 복수의 오디오 객체 클러스터들로 렌더링하는 단계는, 오디오 객체가 할당되는 렌더링 메타데이터의 카테고리에 할당된 하나 이상의 오디오 객체 클러스터로 렌더링될 때 복수의 오디오 객체들 중의 각각의 오디오 객체에 대한 객체-대-클러스터 이득을 결정하는 단계를 포함하는, 방법.
예 19. 예 18의 방법으로서, 렌더링 메타데이터의 복수의 카테고리들 중의 제1 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들은, 렌더링 메타데이터의 복수의 카테고리들 중의 제2 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들과 별개로 결정되는, 방법.
예 20. 예 18의 방법으로서, 렌더링 메타데이터의 복수의 카테고리들 중의 제1 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들은, 렌더링 메타데이터의 복수의 카테고리들 중의 제2 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들과 공동으로 결정되는, 방법.
예 21. 예 1 내지 예 20 중 어느 하나의 방법으로서, 할당된 복수의 오디오 객체 클러스터들 중의 각각의 오디오 객체 클러스터에 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호를 송신하는 단계를 더 포함하고, 오디오 신호를 송신하는 단계는 복수의 오디오 객체들 중의 각각의 오디오 객체에 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호보다 적은 대역폭을 요구하는, 방법.
예 22. 예 1 내지 예 21 중 어느 하나의 방법을 구현하도록 구성되는 장치.
예 23. 예 1 내지 예 21 중 어느 하나의 방법을 구현하도록 구성되는 시스템.
예 24. 소프트웨어가 저장되어 있는 하나 이상의 비일시적 매체로서, 소프트웨어는 예 1 내지 예 21 중 어느 하나의 방법을 수행하도록 하나 이상의 디바이스를 제어하기 위한 명령어들을 포함하는, 하나 이상의 비일시적 매체.
Claims (24)
- 오디오 객체들을 클러스터링하기 위한 방법으로서,
복수의 오디오 객체들을 식별하는 단계 - 상기 복수의 오디오 객체들 중의 오디오 객체는 각각의 공간적 위치 정보 및 각각의 렌더링 메타데이터를 나타내는 각각의 메타데이터와 연관됨 -;
상기 복수의 오디오 객체들 중의 오디오 객체들을 렌더링 메타데이터의 복수의 카테고리들 중의 렌더링 메타데이터의 카테고리들에 할당하는 단계 - 렌더링 메타데이터의 적어도 하나의 카테고리는 보존될 렌더링 메타데이터의 복수의 타입들을 포함함 -;
렌더링 메타데이터의 각각의 카테고리에 대한 복수의 오디오 객체 클러스터들의 할당을 결정하는 단계 - 오디오 객체 클러스터는 유사한 속성들을 갖는 상기 복수의 오디오 객체들 중의 하나 이상의 오디오 객체를 포함함 -;
공간적 위치 정보를 나타내는 메타데이터에 기초하여 그리고 상기 렌더링 메타데이터의 카테고리들에 대한 상기 오디오 객체들의 할당들에 기초하여 상기 복수의 오디오 객체들 중의 오디오 객체들을 할당된 복수의 오디오 객체 클러스터들로 렌더링하는 단계를 포함하는, 방법. - 제1항에 있어서,
상기 렌더링 메타데이터의 카테고리들은 바이패스 모드 카테고리 및 가상화 카테고리를 포함하는, 방법. - 제2항에 있어서,
상기 가상화 카테고리에 포함된 상기 렌더링 메타데이터의 복수의 타입들은 머리 중심으로부터 상기 오디오 객체까지의 거리를 각각 나타내는 가상화의 복수의 타입들을 포함하는, 방법. - 제1항에 있어서,
상기 렌더링 메타데이터의 카테고리들은 구역 카테고리 또는 스냅 카테고리 중 하나를 포함하는, 방법. - 제1항 내지 제4항 중 어느 한 항에 있어서,
렌더링 메타데이터의 제1 카테고리에 할당된 오디오 객체는 렌더링 메타데이터의 제2 카테고리에 할당된 복수의 오디오 객체 클러스터들 중의 오디오 객체 클러스터에 할당되는 것이 금지되는, 방법. - 제1항 내지 제5항 중 어느 한 항에 있어서,
상기 할당된 복수의 오디오 객체 클러스터들 중의 각각의 오디오 객체 클러스터와 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호를 송신하는 단계를 더 포함하고, 상기 오디오 신호는 렌더링 메타데이터의 제1 카테고리에 할당된 오디오 객체가 렌더링 메타데이터의 제2 카테고리와 연관된 오디오 객체 클러스터에 할당되는 오디오 객체 클러스터들과 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호보다 적은 공간적 왜곡을 갖는, 방법. - 제1항 내지 제6항 중 어느 한 항에 있어서,
렌더링 메타데이터의 각각의 카테고리에 대한 상기 복수의 오디오 객체 클러스터들의 할당을 결정하는 단계는,
(i) 렌더링 메타데이터의 각각의 카테고리에 대한 초기 복수의 오디오 객체 클러스터들의 초기 할당을 결정하는 단계;
(ii) 공간적 위치 정보를 나타내는 메타데이터에 기초하여 그리고 상기 렌더링 메타데이터의 카테고리들에 대한 상기 오디오 객체들의 할당들에 기초하여 상기 오디오 객체들을 상기 초기 복수의 오디오 객체 클러스터들에 할당하는 단계;
(iii) 렌더링 메타데이터의 각각의 카테고리에 대해, 상기 초기 복수의 오디오 객체 클러스터들에 대한 상기 오디오 객체들의 할당의 카테고리 비용을 결정하는 단계;
(iv) 렌더링 메타데이터의 각각의 카테고리에 대한 상기 카테고리 비용에 적어도 부분적으로 기초하여 렌더링 메타데이터의 각각의 카테고리에 대한 상기 초기 복수의 오디오 객체 클러스터들의 업데이트된 할당을 결정하는 단계; 및
(iv) 중지 기준에 도달할 때까지 (ii) - (iv)를 반복하는 단계를 포함하는, 방법. - 제7항에 있어서,
상기 초기 복수의 오디오 객체 클러스터들에 대한 상기 오디오 객체들의 할당의 상기 카테고리 비용을 결정하는 단계는, 상기 렌더링 메타데이터의 카테고리에 할당된 오디오 객체 클러스터들의 위치들 및 상기 렌더링 메타데이터의 카테고리에 할당된 상기 오디오 객체 클러스터들에 할당된 오디오 객체들의 위치들에 기초하는, 방법. - 제8항에 있어서,
상기 카테고리 비용은, 상기 오디오 객체가 할당된 오디오 객체 클러스터의 좌측 대 우측 배치에 대한 오디오 객체의 좌측 대 우측 배치에 기초하는, 방법. - 제7항 내지 제9항 중 어느 한 항에 있어서,
상기 초기 복수의 오디오 객체 클러스터들에 대한 상기 오디오 객체들의 할당의 상기 카테고리 비용을 결정하는 단계는, 상기 오디오 객체들의 라우드니스에 기초하는, 방법. - 제7항 내지 제10항 중 어느 한 항에 있어서,
상기 초기 복수의 오디오 객체 클러스터들에 대한 상기 오디오 객체들의 할당의 상기 카테고리 비용을 결정하는 단계는, 상기 오디오 객체가 할당된 오디오 객체 클러스터에 대한 오디오 객체의 거리에 기초하는, 방법. - 제7항 내지 제11항 중 어느 한 항에 있어서,
상기 초기 복수의 오디오 객체 클러스터들에 대한 상기 오디오 객체들의 할당의 상기 카테고리 비용을 결정하는 단계는, 상기 오디오 객체가 할당된 오디오 객체 클러스터의 렌더링 메타데이터의 타입에 대한 오디오 객체의 렌더링 메타데이터의 타입의 유사성에 기초하는, 방법. - 제7항 내지 제12항 중 어느 한 항에 있어서,
렌더링 메타데이터의 각각의 카테고리에 대한 상기 카테고리 비용에 기초하여 전역 비용을 결정하는 단계를 더 포함하고, 상기 초기 복수의 오디오 객체 클러스터들의 상기 업데이트된 할당은 상기 전역 비용에 기초하는, 방법. - 제12항에 있어서,
상기 중지 기준에 도달할 때까지 (ii) - (iv)를 반복하는 단계는, 상기 전역 비용의 최소치가 달성된 것을 결정하는 단계를 포함하는, 방법. - 제7항 내지 제14항 중 어느 한 항에 있어서,
상기 업데이트된 할당을 결정하는 단계는, 상기 렌더링 메타데이터의 복수의 카테고리들 중의 렌더링 메타데이터의 적어도 하나의 카테고리에 할당된 오디오 객체 클러스터들의 수를 변경하는 단계를 포함하는, 방법. - 제15항에 있어서,
렌더링 메타데이터의 각각의 카테고리에 대한 상기 카테고리 비용에 기초하여 전역 비용을 결정하는 단계를 더 포함하고, 상기 오디오 객체 클러스터들의 수는 상기 전역 비용에 기초하여 결정되는, 방법. - 제16항에 있어서,
상기 오디오 객체 클러스터들의 수를 결정하는 단계는, 추가될 수 있는 오디오 객체 클러스터들의 최대 수를 나타내는 상기 오디오 객체 클러스터들의 수에 관한 제약에 따라 상기 전역 비용을 최소화하는 단계를 포함하는, 방법. - 제1항 내지 제17항 중 어느 한 항에 있어서,
상기 복수의 오디오 객체들 중의 오디오 객체들을 상기 할당된 복수의 오디오 객체 클러스터들로 렌더링하는 단계는, 상기 오디오 객체가 할당되는 렌더링 메타데이터의 카테고리에 할당된 하나 이상의 오디오 객체 클러스터로 렌더링될 때 상기 복수의 오디오 객체들 중의 각각의 오디오 객체에 대한 객체-대-클러스터 이득을 결정하는 단계를 포함하는, 방법. - 제18항에 있어서,
상기 렌더링 메타데이터의 복수의 카테고리들 중의 제1 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들은, 상기 렌더링 메타데이터의 복수의 카테고리들 중의 제2 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들과 별개로 결정되는, 방법. - 제18항에 있어서,
상기 렌더링 메타데이터의 복수의 카테고리들 중의 제1 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들은, 상기 렌더링 메타데이터의 복수의 카테고리들 중의 제2 카테고리에 할당된 오디오 객체들에 대한 객체-대-클러스터 이득들과 공동으로 결정되는, 방법. - 제1항 내지 제20항 중 어느 한 항에 있어서,
상기 할당된 복수의 오디오 객체 클러스터들 중의 각각의 오디오 객체 클러스터에 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호를 송신하는 단계를 더 포함하고, 상기 오디오 신호를 송신하는 단계는 상기 복수의 오디오 객체들 중의 각각의 오디오 객체에 연관된 공간적 정보 및 이득 정보를 포함하는 오디오 신호보다 적은 대역폭을 요구하는, 방법. - 장치로서, 제1항 내지 제21항 중 어느 한 항의 방법을 구현하도록 구성되는 장치.
- 시스템으로서, 제1항 내지 제21항 중 어느 한 항의 방법을 구현하도록 구성되는 시스템.
- 소프트웨어가 저장되어 있는 하나 이상의 비일시적 매체로서, 상기 소프트웨어는 제1항 내지 제21항 중 어느 한 항의 방법을 수행하도록 하나 이상의 디바이스를 제어하기 위한 명령어들을 포함하는, 하나 이상의 비일시적 매체.
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2021077110 | 2021-02-20 | ||
CNPCT/CN2021/077110 | 2021-02-20 | ||
US202163165220P | 2021-03-24 | 2021-03-24 | |
US63/165,220 | 2021-03-24 | ||
US202163202227P | 2021-06-02 | 2021-06-02 | |
US63/202,227 | 2021-06-02 | ||
EP21178179.4 | 2021-06-08 | ||
EP21178179 | 2021-06-08 | ||
PCT/US2022/016388 WO2022177871A1 (en) | 2021-02-20 | 2022-02-15 | Clustering audio objects |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230145448A true KR20230145448A (ko) | 2023-10-17 |
Family
ID=80623980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237031407A KR20230145448A (ko) | 2021-02-20 | 2022-02-15 | 오디오 객체들의 클러스터링 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240187807A1 (ko) |
EP (1) | EP4295587A1 (ko) |
JP (1) | JP2024506943A (ko) |
KR (1) | KR20230145448A (ko) |
WO (1) | WO2022177871A1 (ko) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2630754C2 (ru) * | 2013-05-24 | 2017-09-12 | Долби Интернешнл Аб | Эффективное кодирование звуковых сцен, содержащих звуковые объекты |
CN112802496A (zh) * | 2014-12-11 | 2021-05-14 | 杜比实验室特许公司 | 元数据保留的音频对象聚类 |
-
2022
- 2022-02-15 US US18/547,006 patent/US20240187807A1/en active Pending
- 2022-02-15 EP EP22706719.6A patent/EP4295587A1/en active Pending
- 2022-02-15 KR KR1020237031407A patent/KR20230145448A/ko unknown
- 2022-02-15 WO PCT/US2022/016388 patent/WO2022177871A1/en active Application Filing
- 2022-02-15 JP JP2023549829A patent/JP2024506943A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022177871A1 (en) | 2022-08-25 |
US20240187807A1 (en) | 2024-06-06 |
JP2024506943A (ja) | 2024-02-15 |
EP4295587A1 (en) | 2023-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230353970A1 (en) | Method, apparatus or systems for processing audio objects | |
EP2954703B1 (en) | Determining renderers for spherical harmonic coefficients | |
KR102633077B1 (ko) | 음성 처리 장치 및 방법, 그리고 기록 매체 | |
US11943605B2 (en) | Spatial audio signal manipulation | |
EP2926570A1 (en) | Image generation for collaborative sound systems | |
US11221821B2 (en) | Audio scene processing | |
KR102643841B1 (ko) | 정보 처리 장치 및 방법, 그리고 프로그램 | |
US11483669B2 (en) | Spatial audio parameters | |
KR20230145448A (ko) | 오디오 객체들의 클러스터링 | |
CN116965062A (zh) | 对音频对象进行聚类 | |
US10779106B2 (en) | Audio object clustering based on renderer-aware perceptual difference | |
WO2018017394A1 (en) | Audio object clustering based on renderer-aware perceptual difference | |
CN115167803A (zh) | 一种音效的调节方法、装置、电子设备及存储介质 |