(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-24
(45)【発行日】2025-02-03
(54)【発明の名称】デバイスにおけるメディア処理の方法、装置及びプログラム
(51)【国際特許分類】
H04S 7/00 20060101AFI20250127BHJP
G06F 3/16 20060101ALI20250127BHJP
G10L 19/00 20130101ALI20250127BHJP
【FI】
H04S7/00 300
G06F3/16 500
G10L19/00 312F
G10L19/00 330B
(21)【出願番号】P 2023519958
(86)(22)【出願日】2022-06-02
(86)【国際出願番号】 US2022072702
(87)【国際公開番号】W WO2023278924
(87)【国際公開日】2023-01-05
【審査請求日】2023-03-30
(32)【優先日】2021-07-01
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-05-23
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】ジュン・ティアン
(72)【発明者】
【氏名】シャオジョン・シュ
(72)【発明者】
【氏名】シャン・リュウ
【審査官】間宮 嘉誉
(56)【参考文献】
【文献】米国特許出願公開第2013/0077631(US,A1)
【文献】国際公開第2020/201620(WO,A1)
【文献】国際公開第2020/008890(WO,A1)
【文献】D. Y., Jang et al.,Standardization of MPEG-I Immersive Audio and Related Technologies,Electronic and Telecommunications Trends,KR,ETRI,2022年06月02日,Vol.37, No.3,pp.52-63,[online],[retrieved on 2024-05-27],Retrieved from the Internet: <URL: https://ettrends.etri.re.kr/ettrends/196/0905196006/0905196006.html#!po=75.0000>,http://dx.doi.org/10.22648/ETRI.2022.J.370306
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/16
G06T 9/00- 9/40
G10L 13/00-13/10
G10L 19/00-99/00
H04S 1/00- 7/00
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
デバイスにおけるメディア処理の方法であって、
アプリケーションにおけるオーディオシーン内の関心空間についての階層化記述に関連付けられ
、オーディオコンテンツを含むオーディオ入力を受信するステップであって、前記関心空間は複数の部分空間を含み、前記階層化記述は第1の層と第2の層とを含み、前記第1の層は、前記複数の部分空間内の2つ以上の部分空間の共通の属性値である第1の値を有する共通ノードを有し、前記第2の層は、前記複数の部分空間のそれぞれにそれぞれ関連付けられた個別のノードを有する、ステップと、
前記デバイスのプロセッサによって、前記階層化記述に基づいて前記関心空間の前記複数の部分空間を決定するステップと、
前記プロセッサによって、前記オーディオシーン
内を移動可能な対象
が前記オーディオシーンにおいて位置
する前記関心空間に
基づき、前記オーディオ入力
に含まれる前記オーディオコンテンツに基づいてオーディオ出力をレンダリングするステップと
を含む方法。
【請求項2】
前記複数の部分空間は、少なくとも位置属性、向き属性、及びサイズ属性によって定義される矩形ボックスである、請求項1に記載の方法。
【請求項3】
前記共通ノードは属性についての名前を特定し、前記第1の値は前記属性の属性値であり、前記複数の部分空間を決定する前記ステップは、
前記第1の層内の前記共通ノードから、前記複数の部分空間内の部分空間についての前記属性の前記属性値として前記第1の値を読み出すステップを含む、請求項1に記載の方法。
【請求項4】
前記共通ノードは属性の名前と前記属性のサブフィールドのインデックスとを特定し、前記第1の値は前記属性の前記サブフィールドについてのサブフィールド属性値であり、前記複数の部分空間を決定する前記ステップは、
前記第1の層内の前記共通ノードから、前記複数の部分空間内の部分空間の前記属性の前記サブフィールドについての前記サブフィールド属性値として前記第1の値を読み出すステップを含む、請求項1に記載の方法。
【請求項5】
前記第1の値を有する前記共通ノードは、前記複数の部分空間に共通であり、前記複数の部分空間を決定する前記ステップは、
前記第1の層内の前記共通ノードから、前記複数の部分空間のそれぞれについての属性の属性値として前記第1の値を読み出すステップをさらに含む、請求項1に記載の方法。
【請求項6】
前記第1の値を有する前記共通ノードは、前記複数の部分空間のサブセットに共通であ り、前記複数の部分空間を決定する前記ステップは、
第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、前記第1の層内の前記共通ノードから、前記第1の部分空間についての前記属性の属性値として前記第1の値を読み出すステップと、
第2の個別のノード内の前記属性に関連付けられた第2の値の存在を受けて、第2の部分空間に関連付けられた前記第2の個別のノードから、前記第2の部分空間についての前記属性に関連付けられた前記第2の値を読み出すステップとをさらに含む、請求項1に記載の方法。
【請求項7】
前記第1の値を有する前記共通ノードは、前記複数の部分空間のサブセットに共通であり、前記複数の部分空間を決定する前記ステップは、
第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、前記第1の層内の前記共通ノードから、前記第1の部分空間の前記属性の属性値として前記第1の値を読み出すステップと、
第2の部分空間に関連付けられた第2の個別のノードから、前記第2の部分空間の前記属性に関連付けられた差分値を読み出すステップと、
前記第1の値と前記差分値とに基づいて、前記第2の部分空間の前記属性についての第2の値を計算するステップとをさらに含む、請求項1に記載の方法。
【請求項8】
前記オーディオ入力と前記オーディオ入力のメタデータとしての前記関心空間の前記階層化記述とを搬送するビットストリームを受信するステップと、
前記オーディオ入力と前記関心空間の前記階層化記述とを取得するために前記ビットストリームをデコードするステップと
をさらに含む、請求項1に記載の方法。
【請求項9】
前記オーディオシーンの前記対象の前記位置が前記関心空間の外側にあることを受けて、レンダリングするステップなしに、前記オーディオ入力を無視するステップ
をさらに含む、請求項1に記載の方法。
【請求項10】
請求項1から9のいずれか一項に記載の方法を実行するように構成された処理回路を含む、メディア処理の装置。
【請求項11】
少なくとも1つのプロセッサによって実行されたときに、前記少なくとも1つのプロセッサに、請求項1から9のいずれか一項に記載の方法を実行させる命令を備える、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本開示は、2021年7月1日に出願された米国仮特許出願第63/217,442号「Layered Description of Space of Interest」の優先権の利益を主張し、その全体が参照により本明細書に組み込まれる。
【0002】
本開示は、一般に、オーディオ処理に関する実施形態を説明する。
【背景技術】
【0003】
本明細書において提供される背景技術の説明は、本開示の文脈を大まかに提示することを目的としている。現在名前があげられている発明者の研究は、当該の研究がこの背景技術の項に記載されている程度まで、及びさもなければ出願時に従来技術として適格ではない可能性がある説明の態様は、本開示に対する従来技術として、明示的にも黙示的にも認められない。
【0004】
仮想現実又は拡張現実のアプリケーションでは、ユーザにアプリケーションの仮想世界における存在感を持たせるために、アプリケーションの仮想シーン内のオーディオは、仮想シーンの関連する仮想図形から来る音によって、現実世界にあるかのように認識される。いくつかの例では、現実世界におけるユーザの物理的な動きは、アプリケーション内の仮想シーンにおいて一致する動きを有すると認識される。さらに、重要なことに、ユーザは、現実的であると認識され、現実世界におけるユーザの体験に一致するオーディオを使用して仮想シーンと対話することができる。
【発明の概要】
【課題を解決するための手段】
【0005】
本開示の態様は、オーディオ処理のための方法及び装置を提供する。いくつかの例では、メディア処理のための装置は処理回路を含む。処理回路は、オーディオシーン内の関心空間についての階層化記述に関連付けられたオーディオ入力を受信する。関心空間は、複数の部分空間を含む。階層化記述は、第1の層と第2の層とを含む。第1の層は、複数の部分空間のうちの2つ以上の部分空間の共通の属性値である第1の値を有する共通ノードを有する。第2の層は、複数の部分空間のそれぞれにそれぞれ関連付けられた個別のノードを有する。処理回路は、階層化記述に基づいて関心空間の複数の部分空間を決定し、オーディオシーンの対象の位置が関心空間内にあることを受けて、オーディオ入力に基づいてオーディオ出力をレンダリングする。
【0006】
いくつかの例では、複数の部分空間は、少なくとも位置属性、向き属性、及びサイズ属性によって定義される矩形ボックスである。
【0007】
本開示のいくつかの態様によれば、共通ノードは属性について名前を特定し、第1の値は属性の属性値であり、処理回路は、第1の層内の共通ノードから、複数の部分空間内の部分空間についての属性の属性値として第1の値を読み出すことができる。
【0008】
本開示のいくつかの態様によれば、共通ノードは属性の名前とその属性のサブフィールドのインデックスとを特定し、第1の値はその属性のそのサブフィールドについてのサブフィールド属性値であり、処理回路は、第1の層内の共通ノードから、複数の部分空間内の部分空間の属性のサブフィールドについてのサブフィールド属性値として第1の値を読み出す。
【0009】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間に共通であり、処理回路は、第1の層内の共通ノードから、複数の部分空間のそれぞれについての属性の属性値として第1の値を読み出す。
【0010】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間のサブセットに共通である。処理回路は、第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、第1の層内の共通ノードから、第1の部分空間についての属性の属性値として第1の値を読み出す。さらに、処理回路は、第2の個別のノード内の属性に関連付けられた第2の値の存在を受けて、第2の部分空間に関連付けられた第2の個別のノードから、第2の部分空間についての属性に関連付けられた第2の値を読み出す。
【0011】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間のサブセットに共通である。処理回路は、第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、第1の層内の共通ノードから、第1の部分空間の属性の属性値として第1の値を読み出す。さらに、処理回路は、第2の部分空間に関連付けられた第2の個別のノードから、第2の部分空間の属性に関連付けられた差分値を読み出し、第1の値と差分値とに基づいて第2の部分空間の属性についての第2の値を計算する。
【0012】
いくつかの例では、処理回路は、オーディオ入力とオーディオ入力のメタデータとしての関心空間の階層化記述とを搬送するビットストリームを受信し、オーディオ入力と関心空間の階層化記述とを取得するためにビットストリームをデコードする。
【0013】
いくつかの例では、処理回路は、オーディオシーンの対象の位置が関心空間の外側にあることを受けて、レンダリングするステップなしに、オーディオ入力を無視する。
【0014】
本開示の態様はまた、コンピュータによって実行されたとき、コンピュータにオーディオ処理のための方法を実行させる命令を記憶する、非一時的コンピュータ可読媒体も提供する。
【0015】
開示される主題のさらなる特徴、性質、及びさまざまな利点は、以下の詳細な説明及び添付の図面からより明らかになるであろう。
【図面の簡単な説明】
【0016】
【
図1】いくつかの例における6自由度(6DoF)を使用する環境を示す図を示す。
【
図2】本開示の一実施形態に係るメディアシステムのブロック図を示す。
【
図3】いくつかの例における渓谷シーンと称されるオーディオシーンを示す。
【
図4】渓谷シーンにおける関心空間についての記述を示す。
【
図5】本開示の一実施形態に係る関心空間の階層化記述のためのシンタックスを示す。
【
図6】いくつかの例における関心空間についての階層化記述を示す。
【
図7】本開示の一実施形態に係る関心空間の階層化記述のためのシンタックスを示す。
【
図8】いくつかの例における関心空間についての階層化記述を示す。
【
図9】いくつかの例における関心空間についての階層化記述を示す。
【
図10】いくつかの例における関心空間についての階層化記述を示す。
【
図11】本開示のいくつかの実施形態に係るプロセスの概要を示すフローチャートを示す。
【
図12】本開示のいくつかの実施形態に係るプロセスの概要を示すフローチャートを示す。
【
図13】本開示のいくつかの実施形態に係るプロセスの概要を示すフローチャートを示す。
【
図14】一実施形態に係るコンピュータシステムの概略図である。
【発明を実施するための形態】
【0017】
本開示の態様は、オーディオシーンの関心空間のための記述技法を提供する。具体的には、記述技法は、オーディオシーン内の関心空間の階層化記述を提供することができる。オーディオシーン内の関心空間の階層化記述は、オーディオ符号化、伝送、及びレンダリングのための関心空間のコンパクト化された情報を提供することができる。
【0018】
一般に、オーディオシーンは、いくつかの支配的な音源によって特徴付けられる意味的に一貫した音声セグメントである。したがって、オーディオシーンは音源の集合としてモデル化されることができる。いくつかの例では、オーディオシーンは、音源の集合のいくつかによって支配される。オーディオシーン内の関心空間は、オーディオシーン内で考慮中の関心空間の境界によって定義されることができる。オーディオシーンの関心空間は、オーディオ符号化、処理、レンダリングなどに利用されることができる。
【0019】
本開示のいくつかの態様によれば、いくつかの技術は、没入型メディアと称されるデジタルシミュレーションを通じて物理世界を作成又は模倣しようと試みる。没入型メディア処理は、「没入型オーディオ」、「没入型ビデオ」、及び「システムサポート」を含む、MPEG-I(Moving Picture Expert Group Immersive)規格一式など、没入型メディア規格に従って実施されることができる。没入型メディア規格は、VR又はAR表示をサポートすることができ、ユーザは、空間ナビゲーション(x,y,z)とユーザの頭の向き(ヨー,ピッチ,ロール)とを含む6自由度(6DoF)を使用して環境をナビゲートし、対話することができる。
【0020】
図1は、いくつかの例における6自由度(6DoF)を使用する環境を示す図を示している。6自由度(6DoF)は、空間ナビゲーション(x,y,z)とユーザの頭の向き(ヨー,ピッチ,ロール)とで表されることができる。
【0021】
本開示の一態様によれば、没入型メディアは、ユーザが仮想世界に実際に存在しているという感覚を与えるために使用されることができる。いくつかの例では、シーンのオーディオは、関連する視覚的図形から来る音によって、現実世界にあるかのように認識される。たとえば、音は、シーン内で正しい位置及び距離で認識される。現実世界におけるユーザの物理的な動きは、仮想世界のシーンにおいて一致する動きを有すると認識される。さらに、ユーザは、シーンと対話し、現実的で、現実世界におけるユーザの体験に一致すると認識される音を引き起こすことができる。
【0022】
一般に、関心領域(ROI)は、特定の目的のために特定されたデータセット内のサンプルを含む。ROIの概念は、医用撮像、地理情報システム、コンピュータビジョン及び光学文字認識など、多くのアプリケーション領域で使用されることができる。
【0023】
オーディオシーンでは、特定のオーディオ目的のために関心空間が記述されることができる。オーディオシーンの関心空間は、オーディオシーンの空間においてオーディオ効果を生じさせることができるオーディオソースに関連付けられることができる。いくつかの例では、関心空間は、オーディオ・シーン・プロデューサによって定義されることができる。オーディオ・シーン・プロデューサは、3次元(3D)空間内の関心空間を定義し、オーディオ入力を、関心空間においてオーディオ効果を生じさせることができるオーディオソースとして定義することができる。オーディオ入力及び関心空間の記述は、オーディオエンコーダに提供されることができる。オーディオエンコーダは、オーディオ入力をビットストリームにエンコードすることができ、関心空間は、エンコードされたオーディオに関連付けられたメタデータとして含まれることができる。ビットストリームは、クライアントデバイスに提供されることができる。クライアントデバイスは、ビットストリームからオーディオコンテンツをデコードすることができ、関心空間に従ってオーディオをレンダリングする。たとえば、ゲームプレーヤが仮想世界内で関心空間内に移動したとき、関心空間に関連付けられたオーディオコンテンツが再生される。
【0024】
図2は本開示の一実施形態に係るメディアシステム(200)のブロック図を示している。メディアシステム(200)は、没入型メディアアプリケーション、拡張現実(AR)アプリケーション、仮想現実アプリケーション、ビデオ・ゲーム・アプリケーション、スポーツ・ゲーム・アニメーション・アプリケーション、テレビ会議及びテレプレゼンスアプリケーション、メディア・ストリーミング・アプリケーションなど、さまざまな使用アプリケーションで使用されることができる。
【0025】
メディアシステム(200)は、メディア・サーバ・デバイス(210)と、
図2に示されるメディア・クライアント・デバイス(260A)及び(260B)など、ネットワーク(図示せず)によって接続されることができる複数のメディア・クライアント・デバイスとを含む。一例では、メディア・サーバ・デバイス(210)は、オーディオコーディング及びビデオコーディング機能を有する1又は複数のデバイスを含むことができる。一例では、メディア・サーバ・デバイス(210)は、デスクトップコンピュータ、ラップトップコンピュータ、サーバコンピュータ、タブレットコンピュータなど、単一のコンピューティングデバイスを含む。別の例では、メディア・サーバ・デバイス(210)は、データセンタ、サーバファームなどを含む。メディア・サーバ・デバイス(210)は、ビデオ及びオーディオコンテンツを受信し、適切なメディアコーディング規格に従ってビデオコンテンツ及びオーディオコンテンツを1又は複数のエンコードされたビットストリームに圧縮することができる。エンコードされたビットストリームは、ネットワークを介してメディア・クライアント・デバイス(260A)及び(260B)に配信されることができる。
【0026】
メディア・クライアント・デバイス(たとえば、メディア・クライアント・デバイス(260A)及び(260B))は、メディアアプリケーションのためのビデオコーディング及びオーディオコーディング機能を有する1又は複数のデバイスをそれぞれ含む。一例では、メディア・クライアント・デバイスはデスクトップコンピュータ、ラップトップコンピュータ、サーバコンピュータ、タブレットコンピュータ、ウェアラブル・コンピューティング・デバイス、ヘッド・マウント・ディスプレイ(HMD)デバイスなどのコンピューティングデバイスを含む。メディア・クライアント・デバイスは、適切なメディアコーディング規格に従って、エンコードされたビットストリームをデコードすることができる。デコードされたビデオコンテンツ及びオーディオコンテンツはメディア再生に使用されることができる。
【0027】
メディア・サーバ・デバイス(210)は、任意の適当な技術を用いて実施されることができる。
図2の例では、メディア・サーバ・デバイス(210)は、互いに連結された処理回路(230)とインタフェース回路(211)とを含む。
【0028】
処理回路(230)は1又は複数の中央処理装置(CPU)、1又は複数のグラフィックス処理装置(GPU)、特定用途向け集積回路など、任意の適当な処理回路を含むことができる。
図2の例では、処理回路(230)は、オーディオエンコーダ(240)、ビデオエンコーダ(図示せず)など、さまざまなエンコーダを含むように構成されることができる。一例では、1又は複数のCPU及び/又はGPUがソフトウェアを実行してオーディオエンコーダ(240)として機能することができる。別の例では、オーディオエンコーダ(240)は、特定用途向け集積回路を使用して実施されることができる。
【0029】
インタフェース回路(211)は、メディア・サーバ・デバイス(210)をネットワークとインタフェースで接続することができる。インタフェース回路(211)は、ネットワークから信号を受信する受信部と、信号をネットワークに送信する送信部とを含むことができる。たとえば、インタフェース回路(211)は、エンコードされたビットストリームを搬送する信号を、ネットワークを介して、メディア・クライアント・デバイス(260A)、メディア・クライアント・デバイス(260B)など、他のデバイスに送信することができる。インタフェース回路(211)は、メディア・クライアント・デバイス(260A)及び(260B)など、メディア・クライアント・デバイスから信号を受信することができる。
【0030】
ネットワークは、イーサネット接続、光ファイバ接続、WiFi接続、セルラネットワーク接続など、有線及び/又は無線接続を介してメディア・サーバ・デバイス(210)及びメディア・クライアント・デバイス(たとえば、メディア・クライアント・デバイス(260A)及び(260B))と適切に連結される。ネットワークはネットワーク・サーバ・デバイス、ストレージデバイス、ネットワークデバイスなどを含むことができる。ネットワークの構成要素は有線及び/又は無線接続を介して一緒に適切に連結される。
【0031】
メディア・クライアント・デバイス(たとえば、メディア・クライアント・デバイス(260A)及び(260B))は、コード化されたビットストリームをデコードするようにそれぞれ構成される。一例では、各メディア・クライアント・デバイスは、表示可能なビデオフレームのシーケンスを再構築するためにビデオデコーディングを実行することができ、再生するためのオーディオ信号を生成するためにオーディオデコーディングを実行することができる。
【0032】
メディア・クライアント・デバイス(260A)及び(260B)など、メディア・クライアント・デバイスは、任意の適切な技術を使用して実施されることができる。
図2の例では、メディア・クライアント・デバイス(260A)が示されているが、ユーザAによって使用されることができるユーザ機器としてイヤホンを有するヘッド・マウント・ディスプレイ(HMD)には限定されず、メディア・クライアント・デバイス(260B)が示されているが、ユーザBによって使用されるスマートフォンには限定されない。
【0033】
図2において、メディア・クライアント・デバイス(260A)は、
図2に示されるようにインタフェース回路(261A)、及び一緒に連結された処理回路(270A)を含み、メディア・クライアント・デバイス(260B)は、
図2に示されようにインタフェース回路(261B)、及び一緒に連結された処理回路(270B)を含む。
【0034】
インタフェース回路(261A)は、メディア・クライアント・デバイス(260A)をネットワークとインタフェースで接続することができる。インタフェース回路(261A)は、ネットワークから信号を受信する受信部と、信号をネットワークに送信する送信部とを含むことができる。たとえば、インタフェース回路(261A)は、ネットワークから、エンコードされたビットストリームを搬送する信号など、データを搬送する信号を受信することができる。
【0035】
処理回路(270A)はCPU、GPU、特定用途向け集積回路など、適切な処理回路を含むことができる。処理回路(270A)は、オーディオデコーダ(271A)、レンダラ(272A)など、さまざまな構成要素を含むように構成されることができる。
【0036】
いくつかの例では、オーディオデコーダ(271A)は、オーディオコンテンツがエンコードされた方式に適したデコーディングツールを選択することによって、エンコードされたビットストリーム内のオーディオコンテンツをデコードすることができる。さらに、レンダラ(272A)は、エンコードされたビットストリームからデコードされたオーディオコンテンツから、メディア・クライアント・デバイス(260A)に適した最終のデジタル産物を生成することができる。なお、処理回路(270A)は、さらなるオーディオ処理のために、ミキサ、後処理回路など、他の適切な構成要素(図示せず)を含むことができる。
【0037】
同様に、インタフェース回路(261B)は、メディア・クライアント・デバイス(260B)をネットワークとインタフェースで接続することができる。インタフェース回路(261B)は、ネットワークから信号を受信する受信部と、信号をネットワークに送信する送信部とを含むことができる。たとえば、インタフェース回路(261B)は、ネットワークから、エンコードされたビットストリームを搬送する信号など、データを搬送する信号を受信することができる。
【0038】
処理回路(270B)はCPU、GPU、特定用途向け集積回路など、適切な処理回路を含むことができる。処理回路(270B)は、オーディオデコーダ(271B)、レンダラ(272B)など、さまざまな構成要素を含むように構成されることができる。
【0039】
いくつかの例では、オーディオデコーダ(271B)は、オーディオコンテンツがエンコードされた方式に適したデコーディングツールを選択することによって、エンコードされたビットストリーム内のオーディオコンテンツをデコードすることができる。さらに、レンダラ(272B)は、エンコードされたビットストリームからデコードされたオーディオコンテンツから、メディア・クライアント・デバイス(260B)に適した最終のデジタル産物を生成することができる。なお、処理回路(270A)は、さらなるオーディオ処理のために、ミキサ、後処理回路など、他の適切な構成要素(図示せず)を含むことができる。
【0040】
本開示のいくつかの態様によれば、オーディオシーン内の関心空間の階層化記述が、メディアシステム(200)において使用される。メディア・サーバ・デバイス(210)、メディア・クライアント・デバイス(たとえば、メディア・クライアント・デバイス(260A)及び(260B))は、オーディオシーン内の関心空間の階層化記述を処理することができる。たとえば、処理回路(230)、処理回路(270A)、及び処理回路(270B)などは、オーディオシーンの関心空間の階層化記述に基づいてオーディオシーンの関心空間を決定することができる。
【0041】
いくつかの例では、メディア・サーバ・デバイス(210)は、オーディオシーンについて、オーディオソース(201)(たとえば、オーディオ・インジェクション・サーバ、オーディオ・シーン・プロデューサ・デバイスなど)からオーディオ入力とオーディオシーン内の関心空間の階層化記述とを受信する。いくつかの例では、オーディオソース(201)は、デスクトップコンピュータ、ラップトップコンピュータ、サーバコンピュータ、タブレットコンピュータなど、コンピューティング回路を含む。コンピューティング回路は、オーディオシーンについてのオーディオ入力を生成、及びオーディオシーン内の関心空間の階層化記述を生成することができる。オーディオシーンについてのオーディオ入力とオーディオシーン内の関心空間の階層化記述とは、メディア・サーバ・デバイス(210)に提供されることができる。
【0042】
いくつかの実施形態では、メディア・サーバ・デバイス(210)は、メディア・クライアント・デバイスへ送信すべきそれぞれのメディアコンテンツを決定し、メディアコンテンツをビットストリームにエンコードし、ビットストリームをメディア・クライアント・デバイスへ送信することができる。いくつかの例では、メディア・サーバ・デバイス(210)は、アプリケーション(たとえば、ゲームシーン、VRシーンなど)内のシーン情報など、メディア・クライアント・デバイス(260A)によって提供される情報に基づいて、メディア・クライアント・デバイス(260A)のためのオーディオコンテンツを決定することができる。メディア・サーバ・デバイス(210)は、シーン(オーディオ処理の用語ではオーディオシーンと称される)についてのオーディオ入力をオーディオコンテンツとして決定することができる。メディア・サーバ・デバイス(210)は、オーディオコンテンツを他の適切な情報と共にビットストリームにエンコードすることができる。一例では、エンコードされたオーディオシーンについてのオーディオコンテンツと、オーディオシーンの関心空間の階層化記述とが、ビットストリームによって搬送されることができる。オーディオシーンの関心空間の階層化記述は、オーディオコンテンツについてのメタデータとすることができる。メディア・サーバ・デバイス(210)は、ビットストリームをメディア・クライアント・デバイス(260A)に送信することができる。なお、いくつかの例では、エンコードされたオーディオコンテンツと、オーディオシーンの関心空間の階層化記述とが、別々に送信されることができる。
【0043】
メディア・クライアント・デバイス(260A)が、エンコードされたオーディオコンテンツと、オーディオシーンの関心空間の階層化記述とを受信したとき、オーディオデコーダ(271A)はオーディオコンテンツをデコードすることができる。レンダラ(272A)は、オーディオシーンの関心空間に基づいて、オーディオコンテンツから、メディア・クライアント・デバイス(260A)に適した最終デジタル産物を生成することができる。たとえば、アプリケーション内の対象がオーディオシーンの関心空間内に移動したとき、レンダラ(272A)はオーディオコンテンツをレンダリングすることができる。一例では、対象が関心空間から外に移動したとき、オーディオコンテンツは無視され、レンダリングされない。
【0044】
いくつかの例では、関心空間は不規則な形状を有し得る。説明を容易にするために、関心空間は、規則的な形状の複数の領域(部分空間とも称される)の組合せとして表されることができる。いくつかの部分空間のそれぞれは、属性を使用して表されることができる。本開示のいくつかの態様によれば、これらの部分空間のいくつかは、いくつかの属性値を共有し得る。いくつかの例では、オーディオシーンの関心空間の階層化記述は、部分空間の個別の属性値から、2つ以上の部分空間の共有される属性値を別個の層内に記述することができ、したがって、関心空間の記述がよりコンパクト化されることができる。
【0045】
以下の説明では、関心空間を記述するための規則的な形状の部分空間として矩形ボックスが使用される。なお、いくつかの例では、球、円柱、立方体など、他の規則的な形状が使用されることができる。
【0046】
図3は、いくつかの例における渓谷シーンと称されるオーディオシーンを示している。オーディオシーンでは、関心空間は1又は複数の矩形ボックスによって指定されることができる。
図3の例では、渓谷シーン内の関心空間(310)は、4つの重なり合う矩形ボックス(301)~(304)を使用して記述されることができる。
【0047】
いくつかの例では、各矩形ボックスは、識別子(id)属性、位置属性、向き属性、及びサイズ属性の4つの属性を使用して定義されることができる。
【0048】
矩形ボックスの識別子属性は、矩形ボックスを示す値を有することができる。たとえば、矩形ボックス(301)は識別子「box:Box1」によって特定されることができ、矩形ボックス(302)は識別子「box:Box2」によって特定されることができ、矩形ボックス(303)は識別子「box:Box3」によって特定されることができ、矩形ボックス(304)は識別子「box:Box4」によって特定されることができる。
【0049】
いくつかの例では、矩形ボックスの位置属性は、x、y、zに対応するなどの、3D空間内の矩形ボックスの中心位置の座標に対応する3つの値を含むことができる。一例では、インデックス「1」を有する第1の値は中心位置のx座標に対応し、インデックス「2」を有する第2の値は中心位置のy座標に対応し、インデックス「3」を有する第3の値は中心位置のz座標に対応する。
【0050】
いくつかの例では、矩形ボックスの向き属性は、矩形ボックスの中心位置でのX軸、Y軸、及びZ軸に沿った回転角度に対応する3つの値を含むことができる。一例では、インデックス「1」を有する第1の値は矩形ボックスの中心位置におけるY軸に沿った回転角度に対応し、インデックス「2」を有する第2の値は矩形ボックスの中心位置におけるX軸に沿った回転角度に対応し、インデックス「3」を有する第3の値は矩形ボックスの中心位置におけるZ軸に沿った回転角度に対応する。
【0051】
いくつかの例では、矩形ボックスのサイズ属性は、X軸、Y軸、及びZ軸に沿った辺長に対応する3つの値を含むことができる。一例では、インデックス「1」を有する第1の値はX軸に沿った矩形ボックスの辺長に対応し、インデックス「2」を有する第2の値はY軸に沿った矩形ボックスの辺長に対応し、インデックス「3」を有する第3の値はZ軸に沿った矩形ボックスの辺長に対応する。
【0052】
図4は、渓谷シーンにおける関心空間(310)についての記述(400)を示している。記述(400)は、矩形ボックス(301)~(304)のそれぞれについての個別のノードを含む。具体的には、記述(400)は、矩形ボックス(301)についての記述ノード(401)と、矩形ボックス(302)についての記述ノード(402)と、矩形ボックス(303)についての記述ノード(403)と、矩形ボックス(304)についての記述ノード(404)とを含む。
【0053】
なお、矩形ボックス(301)~(304)は、矩形ボックス(301)~(304)についての個別のノード内に別々に列挙された同じ(共通の)属性値を有している。
【0054】
本開示のいくつかの態様は、オーディオシーンの関心空間の階層化記述を提供する。階層化記述は、共通の属性値のための第1の層と、非共通の属性値のための第2の層とを含むことができる。階層化記述では、2つ以上の部分空間(たとえば、矩形ボックス)の共通の属性値は第1の層内に明示的に列挙されることができる。共通の属性値は、部分空間のすべての関連する記述について1回示されることができる。他の非共通の属性値は、第2の層内に別々に列挙されることができる。階層化記述は、記述(400)よりもコンパクト化されることができる。
【0055】
いくつかの実施形態では、共通の属性値についての記述の第1の層が最初に提示され、その後にそれぞれ個別の矩形ボックスの非共通の属性値についての記述の第2の層が続くことができる。記述の第1の層は、共通の属性値をそれぞれ記述する1又は複数の共通ノードを含むことができる。記述の第2の層は、矩形ボックスそれぞれについての個別のノードを含むことができる。共通ノード内に共通の属性値として提示される共通の属性値は、たとえば、重複しない情報を伴い、必要でない限り、矩形ボックスについての個別のノード内に再び列挙されない。各矩形ボックスの空間記述については、既に共通ノード内にある共通の属性値は列挙されない。代わりに、矩形ボックスは、デフォルトで、共通ノード内に列挙された共通属性値を共有する。
【0056】
図5は、本開示の一実施形態に係る関心空間の階層化記述のためのシンタックス(500)を示している。シンタックスは、矩形ボックスのうちの2つ以上によって共有される共通の属性値についての記述の第1の層(510)と、個別の矩形ボックスの非共通の属性値についての記述のための第2の層(520)とを含む。
【0057】
第1の層(510)は複数の共通ノードを含む。各共通ノードは、共通の属性値について、属性を特定するための名前(たとえば、(511)によって示される)と、値(たとえば、(512)によって示される)とを含むことができる。
【0058】
一例では、関心空間の4つの矩形ボックスは「20.0 2.50 15.0」などの同じサイズを有し、
図6は、シンタックス(500)を使用して同じサイズの4つの矩形ボックスを有する関心空間についての階層化記述(600)を示している。階層化記述(600)は、矩形ボックスのうちの2つ以上によって共有される共通ノードについての記述の第1の層(610)と、それぞれ個別の矩形ボックスの非共通の属性値についての記述の第2の層(620)とを含む。
【0059】
具体的には、第1の層(610)は共通ノードを含む。共通ノードは、サイズ属性を特定するための名前「size」(たとえば、(611)によって示される)を有し、矩形ボックスのサイズである共通の属性値を指定するための値(たとえば、(612)によって示される)「20.0 2.50 15.0」を有する。第2の層(620)は、位置属性及び向き属性などのそれぞれ個別の矩形ボックスの非共通の属性値についての記述を含む。たとえば、第2の層(620)は、4つの矩形ボックスそれぞれについての4つの個別のノードを含む。
【0060】
図6の例では、個別のノードは、サイズ属性を含まない。「box:Box1」、「box:Box2」、「box:Box3」、「box:Box4」によって特定される矩形ボックスは、サイズ属性についてのサイズ属性値「20.0 2.50 15.0」を読み出すために共通ノードを参照することができる。
【0061】
いくつかの例では、属性は複数のサブフィールドを有し得る。たとえば、矩形ボックスのサイズ属性は、X軸に沿った辺長の第1のサブフィールド、Y軸に沿った辺長の第2のサブフィールド、及びZ軸に沿った辺長の第3のサブフィールドを有する。いくつかの例では、2つ以上の矩形ボックスはサイズ属性全体は共有しないが、サイズ属性の1又は複数のサブフィールドを共有することができる。
【0062】
一例では、
図3の渓谷シーン例及び
図4の記述において、関心空間(310)の4つの矩形ボックス(301)~(304)は、同じ高さ2.5(Y軸に沿った辺長)を有し、それはサイズ属性の第2のサブフィールドである。一例では、矩形ボックス(301)~(304)の高さ情報(Y軸に沿った辺長)は、共通の属性(たとえば、共通のサブフィールド属性)と見なされることができ、一度だけ示されることができる。
【0063】
別の例では、4つの矩形ボックス(301)~(304)は、向き属性のいくつかのサブフィールドを共有する。具体的には、4つの矩形ボックス(301)~(304)は、向き属性の第2のサブフィールド値(たとえば、「0」)と第3のサブフィールド値(たとえば、「0」)とを共有する。一例では、向き属性の第2のサブフィールドと第3のサブフィールドとは、向き属性の共通のサブフィールドと見なされることができ、すべての矩形ボックス(301)~(304)について一度示される。
【0064】
一実施形態では、関心空間の階層化記述は、共通の属性値及び/又は共通のサブフィールド属性値についての記述の第1の層と、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての記述の第2の層とを含むことができる。たとえば、共通の、属性のサブフィールドは、第1の層で共通ノード(一例では親レベルとも称される)内に列挙されることができる。共通ノードは、属性の名前、共通のサブフィールドについてのインデックス、及び共通のサブフィールド属性値についての値を含むことができる。関心空間の階層化記述では、矩形ボックスについて、属性のサブフィールドが共通ノードに既に列挙されている場合、矩形ボックス内の属性のサブフィールド値は、第2の層において、矩形ボックスに関連付けられた個別のノード内に、列挙されない。代わりに、一例では、矩形ボックスの属性は、デフォルトで、共通ノード内に列挙された共通のサブフィールド属性値を共有する。
【0065】
図7は、本開示の一実施形態に係る関心空間の階層化記述のためのシンタックス(700)を示している。シンタックスは、矩形ボックスのうちの2つ以上によって共有される共通の属性値及び/又は共通のサブフィールド属性値についての記述の第1の層(710)と、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての記述のための第2の層(720)とを含む。
【0066】
第1の層(710)は複数の共通ノードを含む。各共通ノードは、属性を特定するための名前(たとえば、(711)によって示される)と、サブフィールドを特定するためのインデックス(たとえば、(713)によって示される)と、共通のサブフィールド属性値についての値(たとえば、(712)によって示される)とを含むことができる。
【0067】
図8は、シンタックス(700)による、4つの矩形ボックス(301)~(304)を有する関心空間(310)についての階層化記述(800)を示している。階層化記述(800)は、矩形ボックスのうちの2つ以上によって共有される共通ノードについての記述の第1の層(810)と、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての記述の第2の層(820)とを含む。
【0068】
具体的には、第1の層(810)は、向き属性のサブフィールドについての第1の共通ノードと、サイズ属性のサブフィールドについての第2の共通ノードとを含む。第1の共通ノードは、向き属性を特定するための名前「orientation」(たとえば、(811)によって示される)を有し、第2のサブフィールドと第3のサブフィールドとを特定するためのインデックス「2 3」(たとえば、(813)によって示される)を有し、共通のサブフィールド属性値を指定するための値「0.00 0.00」(たとえば、(812)によって示される)を有する。したがって、第1の共通ノードは、向き属性の第2のサブフィールドの共通の値は「0.00」であり、向きの第3のサブフィールドの共通の値は「0.00」であると列挙する。
【0069】
同様に、第2の共通ノードは、サイズ属性を特定するための名前「size」を有し、第2のサブフィールドを特定するためのインデックス「2」を有し、共通のサブフィールド属性値を指定するために値「2.50」を有する。したがって、第2の共通ノードは、サイズ属性の第2のサブフィールドの共通の値は「2.50」であると列挙する。
【0070】
第2の層(820)は、位置属性、向き属性、及びサイズ属性など、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての記述を含む。
図8の例では、第2の層(820)は、4つの矩形ボックスそれぞれについての4つの個別のノードを含む。4つの矩形ボックスは、共通ノード内の情報を共有する。個別のノードごとに、向き属性は、第1のサブフィールド値を含み、第2のサブフィールド値と第3のサブフィールド値とは含まない。向き属性の第2のサブフィールド値と第3のサブフィールド値とは、第1の層(810)内の第1の共通ノードから読み出されることができる。
【0071】
第2の層(820)ではまた、それぞれのノードについて、サイズ属性は、第1のサブフィールド値と第3のサブフィールド値とを含み、第2のサブフィールド値は含まない。サイズ属性の第2のサブフィールド値は、第1の層(810)内の第2の共通ノードから読み出されることができる。
【0072】
なお、
図8の例では、第1の共通ノード及び第2の共通ノード内の情報は、4つの矩形ボックスのすべてによって共有される。いくつかの実施形態では、第1の層の共通ノード内の情報は、第2の層内の個別のノードのすべてによって共有される必要はない。
【0073】
一実施形態では、関心空間の階層化記述は、部分空間(たとえば、矩形ボックス)についての個別のノードのサブセットによって共有される共通の属性値及び/又は共通のサブフィールド属性値についての記述の第1の層と、個別の部分空間(たとえば、矩形ボックス)の非共通の属性値及び/又は非共通のサブフィールド属性値についての記述の第2の層とを含むことができる。部分空間が第1の層の共通ノード内で指定された共通の属性値を共有しない場合、第2の層内にあって部分空間に関連付けられた個別のノードは、共通の属性値とは異なる個別の属性値を列挙することができる。
【0074】
第2の層では、矩形ボックスについて、属性値が共通ノードに列挙されたものと同じである場合は、属性は列挙されず、矩形ボックスの属性値が共通の属性と異なる場合は、矩形ボックスの属性値が列挙されることができる。
【0075】
一例では、矩形ボックス(301)は、X軸に沿った辺長「19.23」を有する他の3つの矩形ボックス(302)~(304)とは異なる、X軸に沿った辺長「29.66」を有する。
【0076】
図9は、シンタックス(700)による、4つの矩形ボックス(301)~(304)を有する関心空間(310)についての階層化記述(900)を示している。階層化記述(900)は、矩形ボックスのうちの2つ以上によって共有される共通の属性値についての共通ノードの記述の第1の層(910)と、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての個別のノードの記述の第2の層(920)とを含む。
【0077】
具体的には、第1の層(910)は、向き属性のサブフィールドについての第1の共通ノードと、サイズ属性のサブフィールドについての第2の共通ノードとを含む。第1の共通ノードは、向き属性を特定するための名前「orientation」を有し、第2のサブフィールドと第3のサブフィールドとを特定するためのインデックス「2 3」を有し、共通のサブフィールド属性値を指定するための値「0.00 0.00」を有する。したがって、第1の共通ノードは、向き属性の第2のサブフィールドの共通の値は「0.00」であり、向きの第3のサブフィールドの共通の値は「0.00」であると列挙する。
【0078】
さらに、第2の共通ノードは、サイズ属性を特定するための名前「size」を有し、第1のサブフィールドと第2のサブフィールドとを特定するためのインデックス「1 2」を有し、矩形ボックス(302)~(304)など、矩形ボックスのサブセットについての共通のサブフィールド属性値を指定するための値「19.23 2.50」を有する。したがって、第2の共通ノードは、サイズ属性の第1のサブフィールド及び第2のサブフィールドの共通の値は「19.23 2.50」であると列挙する。
【0079】
第2の層(920)は、位置属性、向き属性、及びサイズ属性など、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての個別のノードの記述を含む。第2の層(920)では、それぞれのノードについて、向き属性は、第1のサブフィールド値を含み、第2のサブフィールド値と第3のサブフィールド値とは含まない。向き属性の第2のサブフィールド値と第3のサブフィールド値とは、第1の層内の第1の共通ノードから読み出されることができる。
【0080】
第2の層(920)において、矩形ボックスのサブセットに関連付けられた個別のノード(たとえば、box:Box2、box:Box3、box:Box4)について、サイズ属性は、第3のサブフィールド値を含み、第1のサブフィールド値と第2のサブフィールド値とは含まない。サイズ属性の第1のサブフィールド値と第2のサブフィールド値とは、第1の層(910)内の第2の共通ノードを参照されることができ、第1の層(910)内の第2の共通ノードから読み出されることができる。
【0081】
第2の層(920)では、矩形ボックスについての個別のノード(たとえば、box:Box1)において、サイズ属性は、第1のサブフィールド値、第2のサブフィールド、及び第3のサブフィールド値を含む。たとえば、矩形ボックス「box:Box1」のサイズ属性は、(921)によって示されるように、全3つのサブフィールド値「29.66 2.50 20.47」で列挙される。したがって、個別のノード内の情報が共通ノード内の情報を上書きすることができる。
【0082】
一実施形態では、関心空間の階層化記述は、部分空間(たとえば、矩形ボックス)についての個別のノードのサブセットによって共有される共通の属性値及び/又は共通のサブフィールド属性値についての記述の第1の層と、個別の部分空間(たとえば、矩形ボックス)の非共通の属性値及び/又は非共通のサブフィールド属性値についての記述の第2の層とを含むことができる。部分空間が第1の層の共通ノード内で指定された共通の属性値を共有しない場合、第2の層内にあって部分空間に関連付けられた個別のノードは、部分空間の非共通の属性値と第1の層内の共通の属性値との差である差分値を列挙することができる。
【0083】
第2の層では、矩形ボックスについて、属性値が共通ノード内に列挙されたものと同じである場合、属性値は列挙されず、矩形ボックスの属性値が共通の属性値と異なる場合、矩形ボックスの属性値と共通の属性値との間の差が列挙されることができる。
【0084】
一例では、矩形ボックス(301)は、X軸に沿った辺長「19.23」を有する他の3つの矩形ボックス(302)~(304)とは異なる、X軸に沿った辺長「29.66」を有する。辺長「19.23」に対する辺長「29.66」の差は「10.43」である。
【0085】
図10は、シンタックス(700)による、4つの矩形ボックス(301)~(304)を有する関心空間(310)の階層化記述(1000)を示している。階層化記述(1000)は、矩形ボックスのうちの2つ以上によって共有される共通ノードについての記述の第1の層(1010)と、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての記述の第2の層(1020)とを含む。
【0086】
具体的には、第1の層(1010)は、向き属性のサブフィールドについての第1の共通ノードと、サイズ属性のサブフィールドについての第2の共通ノードとを含む。第1の共通ノードは、向き属性を特定するための名前「orientation」を有し、第2のサブフィールドと第3のサブフィールドとを特定するためのインデックス「2 3」を有し、共通のサブフィールド属性値を指定するための値「0.00 0.00」を有する。したがって、第1の共通ノードは、向き属性の第2のサブフィールドの共通の値は「0.00」であり、向きの第3のサブフィールドの共通の値は「0.00」であると列挙する。
【0087】
さらに、第2の共通ノードは、サイズ属性を特定するための名前「size」を有し、第1のサブフィールドと第2のサブフィールドとを特定するためのインデックス「1 2」を有し、矩形ボックス(302)~(304)など、矩形ボックスのサブセットについての共通のサブフィールド属性値を指定するための値「19.23 2.50」を有する。したがって、第2の共通ノードは、サイズ属性の第1のサブフィールド及び第2のサブフィールドの共通の値は「19.23 2.50」であると列挙する。
【0088】
第2の層(1020)は、位置属性、向き属性、及びサイズ属性など、個別の矩形ボックスの非共通の属性値及び/又は非共通のサブフィールド属性値についての個別のノードの記述を含む。第2の層(1020)では、各個別のノードにおいて、向き属性は、第1のサブフィールド値を含み、第2のサブフィールド値と第3のサブフィールド値とは含まない。向き属性の第2のサブフィールド値と第3のサブフィールド値とは、第1の層(1010)内の第1の共通ノードから読み出されることができる。
【0089】
第2の層(1020)では、矩形ボックスのサブセットについての個別のノード(たとえば、box:Box2、box:Box3、box:Box4)において、サイズ属性は、第3のサブフィールド値を含み、第1のサブフィールド値と第2のサブフィールド値とは含まない。サイズ属性の第1のサブフィールド値と第2のサブフィールド値とは、第1の層(1010)内の第2の共通ノードを参照されることができ、第1の層(1010)内の第2の共通ノードから読み出されることができる。
【0090】
第2の層(1020)では、矩形ボックス(たとえば、box:Box1)に関連付けられた個別のノードにおいて、サイズ属性は、第1のサブフィールド差分値、第2のサブフィールド差分値、及び第3のサブフィールド値を含む。たとえば、矩形ボックス「box:Box1」のサイズ属性は、(1021)によって示されるように、「10.43 0.00 20.47」のように列挙される。第2の共通ノードをチェックすることによって、「box:Box1」のサイズ属性の第1のサブフィールド値は、「19.23」と「10.43」との合計で29.66に等しくなるように復元されることができ、「box:Box1」のサイズ属性の第2のサブフィールド値は、「2.5」と「0」との合計で2.5に等しくなるように復元されることができる。
【0091】
図11は、本開示の一実施形態に係るプロセス(1100)の概要を示すフローチャートを示している。プロセス(1100)は、オーディオ・ソース・デバイス(201)など、オーディオ・ソース・デバイスによって実行されることができる。いくつかの実施形態では、プロセス(1100)はソフトウェア命令の中で実施され、したがって、処理回路がソフトウェア命令を実行したときに処理回路がプロセス(1100)を実行する。プロセスは(S1101)から開始し、(S1110)に進む。
【0092】
(S1110)において、関心空間についての複数の部分空間のうちの2つ以上の部分空間が、属性について共通の属性値を有すると決定される。
【0093】
いくつかの例では、複数の部分空間は矩形ボックスである。各矩形ボックスは、少なくとも位置属性、向き属性、及びサイズ属性によって定義されることができる。
【0094】
(S1120)において、関心空間の階層化記述の第1の層内に共通ノードが形成される。共通モードは、属性についての共通の属性値を含む。
【0095】
(S1130)において、2つ以上の部分空間に関連付けられた個別のノードそれぞれから属性が削除される。個別のノードは、関心空間の階層化記述の第2の層内にある。
【0096】
一例では、共通ノードは、属性についての名前及び共通の属性値を特定する。共通の属性値は、2つ以上の部分空間に関連付けられた個別のノードから削除されることができる。
【0097】
別の例では、共通ノードは、属性の名前、属性のサブフィールドのインデックス、及び共通のサブフィールド属性値としての共通の属性値を特定する。共通のサブフィールド属性値は、2つ以上の部分空間に関連付けられた個別のノードから削除されることができる。
【0098】
いくつかの例では、共通ノードは複数の部分空間に共通である。共通の属性値は、複数の部分空間に関連付けられた個別のノードのそれぞれから削除されることができる。
【0099】
いくつかの例では、共通ノードは複数の部分空間のサブセットに共通である。共通の属性値は、複数の部分空間のサブセットに関連付けられた個別のノードのそれぞれから削除されることができる。サブセット内にない部分空間については、サブセットに関連付けられた個別のノードは、属性について、共通の属性値とは異なる属性値を含むことができる。
【0100】
いくつかの例では、共通ノードは複数の部分空間のサブセットに共通である。共通の属性値は、複数の部分空間のサブセットに関連付けられた個別のノードのそれぞれから削除されることができる。サブセット内にない部分空間については、サブセットに関連付けられた個別のノードは、属性について、共通の属性値に対する(部分空間の)特定の属性値の差分値を含むことができる。
【0101】
次いで、プロセスは(S1199)に進み、終了する。
【0102】
プロセス(1100)は、適切に適合されることができる。プロセス(1100)のステップは、修正及び/又は省略されることができる。追加のステップが追加されることができる。任意の適切な実施順序が使用されることができる。
【0103】
図12は、本開示の一実施形態に係るプロセス(1200)の概要を示すフローチャートを示している。プロセス(1200)は、メディア・サーバ・デバイス(210)など、メディア・サーバ・デバイスによって実行されることができる。いくつかの実施形態では、プロセス(1200)はソフトウェア命令の中で実施され、したがって、処理回路がソフトウェア命令を実行したときに処理回路がプロセス(1200)を実行する。プロセスは(S1201)から開始し、(S1210)に進む。
【0104】
(S1210)において、オーディオシーンについてのオーディオ入力とオーディオ入力に関連付けられた関心空間の階層化記述が受信される。関心空間は、複数の部分空間を含む。階層化記述は、第1の層と第2の層とを含む。第1の層は、複数の部分空間のうちの2つ以上の部分空間の共通の属性値である第1の値を有する共通ノードを含む。第2の層は、複数の部分空間にそれぞれ関連付けられた個別のノードを含む。
【0105】
いくつかの例では、複数の部分空間は矩形ボックスである。各矩形ボックスは、少なくとも位置属性、向き属性、及びサイズ属性によって定義されることができる。
【0106】
(S1220)において、階層化記述に基づいて、関心空間の複数の部分空間が決定される。
【0107】
一例では、共通ノードは属性についての名前を特定し、第1の値は属性の属性値である。第1の値は、複数の部分空間のうちの部分空間についての属性の属性値として、第1の層内の共通ノードから読み出されることができる。
【0108】
別の例では、共通ノードは属性の名前と属性のサブフィールドのインデックスとを特定し、第1の値は属性のサブフィールドについてのサブフィールド属性値である。第1の値は、複数の部分空間のうちの部分空間の属性のサブフィールドについてのサブフィールド属性値として、第1の層内の共通ノードから読み出されることができる。
【0109】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間に共通である。第1の値は、複数の部分空間のそれぞれについての属性の属性値として、第1の層内の共通ノードから読み出されることができる。
【0110】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間のサブセットに共通である。第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、第1の層内の共通ノードから、第1の部分空間についての属性の属性値として第1の値が読み出される。さらに、第2の個別のノード内の属性に関連付けられた第2の値の存在を受けて、第2の部分空間に関連付けられた第2の個別のノードから、第2の部分空間の属性に関連付けられた第2の値が読み出される。
【0111】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間のサブセットに共通である。第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、第1の層内の共通ノードから、第1の部分空間の属性の属性値として第1の値が読み出される。さらに、第2の部分空間に関連付けられた第2の個別のノードから、第2の部分空間の属性との差分値が読み出される。次いで、第2の部分空間の属性についての第2の値が、第1の値と差分値との合計など、第1の値と差分値とに基づいて計算される。
【0112】
(S1230)において、クライアントデバイスから提供された情報に応じて、オーディオ入力と関心空間の階層化記述とを搬送するビットストリームがクライアントデバイスに送信される。一例では、クライアントデバイスから提供される情報は、オーディオシーンへのシーンチェンジを示す。別の例では、クライアントデバイスから提供される情報は、関心空間内への移動など、関心空間に関連付けられているアプリケーション内の対象による移動を示す。
【0113】
次いで、プロセスは(S1299)に進み、終了する。
【0114】
プロセス(1200)は、適切に適合されることができる。プロセス(1200)のステップは、修正及び/又は省略されることができる。追加のステップが追加されることができる。任意の適切な実施順序が使用されることができる。
【0115】
図13は、本開示の一実施形態に係るプロセス(1300)の概要を示すフローチャートを示している。プロセス(1300)は、メディア・クライアント・デバイス(260A)、メディア・クライアント・デバイス(260B)など、メディア・クライアント・デバイスによって実行されることができる。いくつかの実施形態では、プロセス(1300)はソフトウェア命令の中で実施され、したがって、処理回路がソフトウェア命令を実行したときに処理回路がプロセス(1300)を実行する。プロセスは(S1301)から開始し、(S1310)に進む。
【0116】
(S1310)において、オーディオシーン内の関心空間についての階層化記述に関連付けられたオーディオ入力が受信される。関心空間は、複数の部分空間を含む。階層化記述は、第1の層と第2の層とを含む。第1の層は、複数の部分空間のうちの2つ以上の部分空間の共通の属性値である第1の値を有する共通ノードを有する。第2の層は、複数の部分空間のそれぞれにそれぞれ関連付けられた個別のノードを有する。
【0117】
いくつかの例では、オーディオ入力と関心空間の階層化記述(たとえば、オーディオ入力のメタデータとして)とを搬送するビットストリームが受信される。オーディオ入力と関心空間の階層化記述とを得るために、ビットストリームがデコードされる。
【0118】
いくつかの例では、複数の部分空間は矩形ボックスである。各矩形ボックスは、少なくとも位置属性、向き属性、及びサイズ属性によって定義されることができる。
【0119】
(S1320)において、階層化記述に基づいて、関心空間の複数の部分空間が決定される。
【0120】
一例では、共通ノードは属性についての名前を特定し、第1の値は属性の属性値である。第1の値は、複数の部分空間のうちの部分空間についての属性の属性値として、第1の層内の共通ノードから読み出されることができる。
【0121】
別の例では、共通ノードは属性の名前と属性のサブフィールドのインデックスとを特定し、第1の値は属性のサブフィールドについてのサブフィールド属性値である。第1の値は、複数の部分空間のうちの部分空間の属性のサブフィールドについてのサブフィールド属性値として、第1の層内の共通ノードから読み出されることができる。
【0122】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間に共通である。第1の値は、複数の部分空間のそれぞれについての属性の属性値として、第1の層内の共通ノードから読み出されることができる。
【0123】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間のサブセットに共通である。第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、第1の層内の共通ノードから、第1の部分空間についての属性の属性値として第1の値が読み出される。さらに、第2の個別のノード内の属性に関連付けられた第2の値の存在を受けて、第2の部分空間に関連付けられた第2の個別のノードから、第2の部分空間の属性に関連付けられた第2の値が読み出される。
【0124】
いくつかの例では、第1の値を有する共通ノードは、複数の部分空間のサブセットに共通である。第1の部分空間に関連付けられた第1の個別のノードが属性についての値を欠いていることを受けて、第1の層内の共通ノードから、第1の部分空間の属性の属性値として第1の値が読み出される。さらに、第2の部分空間に関連付けられた第2の個別のノードから、第2の部分空間の属性との差分値が読み出される。次いで、第2の部分空間の属性についての第2の値が、第1の値と差分値とに基づいて計算される。
【0125】
(S1330)において、オーディオシーンの対象の位置が関心空間内にあることを受けて、オーディオ入力に基づいてオーディオ出力がレンダリングされる。たとえば、オーディオシーンは、ゲームアプリケーションにおけるゲームシーンに対応し、オーディオシーンの対象は、ゲームアプリケーションにおけるゲームプレーヤである。ゲームプレーヤがゲームシーンの関心空間に移動するのを受けて、オーディオ出力がレンダリングされることができる。いくつかの例では、オーディオシーンの対象の位置が関心空間の外側にあることを受けて、レンダリングするステップなしに、オーディオ入力は無視されることができる。
【0126】
次いで、プロセスは(S1399)に進み、終了する。
【0127】
プロセス(1300)は、適切に適合されることができる。プロセス(1300)のステップは、修正及び/又は省略されることができる。追加のステップが追加されることができる。任意の適切な実施順序が使用されることができる。
【0128】
上述の技法は、コンピュータ可読命令を使用してコンピュータソフトウェアとして実施され、1又は複数のコンピュータ可読媒体に物理的に記憶されることができる。たとえば、
図14は、開示されている主題の特定の実施形態を実施するのに適したコンピュータシステム(1400)を示している。
【0129】
コンピュータソフトウェアは、1又は複数のコンピュータ中央処理装置(CPU)、グラフィックス処理装置(GPU)などによって、直接又は、インタプリテーション、マイクロコード実行などを介して実行されることができる命令を含むコードを生成するために、アセンブリ、コンパイル、リンク、又は同様のメカニズムの対象となり得る任意の適切なマシンコード又はコンピュータ言語を使用して符号化されることができる。
【0130】
命令は、たとえば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、モノのインターネットデバイスなどを含む、さまざまなタイプのコンピュータ又はその構成要素上で実行されることができる。
【0131】
コンピュータシステム(1400)に関して
図14に示されている構成要素は、本質的に例示であり、本開示の実施形態を実施するコンピュータソフトウェアの使用又は機能の範囲に関するいかなる限定も示唆することを意図されていない。また、構成要素の構成は、コンピュータシステム(1400)の例示的な実施形態に示される構成要素のいずれか1つ又は組合せに関するいかなる依存性又は要件も有するものとして解釈されるべきではない。
【0132】
コンピュータシステム(1400)は、特定のヒューマンインタフェース入力デバイスを含み得る。このようなヒューマンインタフェース入力デバイスは、たとえば、触覚入力(キーストローク、スワイプ、データグローブの動きなど)、オーディオ入力(声、拍手など)、視覚入力(ジェスチャーなど)、嗅覚入力(図示せず)を介して、1又は複数の人間のユーザによる入力に応答し得る。ヒューマン・インタフェース・デバイスは、オーディオ(発話、音楽、周囲音など)、画像(スキャン画像、静止画カメラから取得された写真画像など)、ビデオ(2次元ビデオ、立体ビデオを含む3次元ビデオなど)など、人間による意識的な入力に必ずしも直接関連しない特定の媒体をキャプチャするために使用されることもできる。
【0133】
入力ヒューマン・インタフェース・デバイスは、キーボード(1401)、マウス(1402)、トラックパッド(1403)、タッチスクリーン(1410)、データグローブ(図示せず)、ジョイスティック(1405)、マイク(1406)、スキャナ(1407)、カメラ(1408)のうちの1又は複数(おのおの1つのみが図示される)を含み得る。
【0134】
コンピュータシステム(1400)はまた、特定のヒューマンインタフェース出力デバイスも含み得る。このようなヒューマンインタフェース出力デバイスは、たとえば触覚出力、音、光、及び匂い/味を介して、1又は複数の人間のユーザの感覚を刺激し得る。このようなヒューマンインタフェース出力デバイスは、触覚出力デバイス(たとえば、タッチスクリーン(1410)、データグローブ(図示せず)、又はジョイスティック(1405)による触覚フィードバック、ただし入力デバイスとしての役割をしない触覚フィードバックデバイスもあるとすることができる)、オーディオ出力デバイス(たとえば、スピーカ(1409)、ヘッドフォン(図示せず))、視覚出力デバイス(たとえば、それぞれタッチスクリーン入力機能あり又はなし、それぞれ触覚フィードバック機能あり又はなしの、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーン、を含むスクリーン(1410)で、これらのうちのいくつかは、立体出力などの手段を介して2次元視覚出力又は3次元を超える出力を出力でき得るものもある、仮想現実メガネ(図示せず)、ホログラフィックディスプレイ及びスモークタンク(図示せず))、及びプリンタ(図示せず)を含み得る。
【0135】
コンピュータシステム(1400)はまた、人間がアクセス可能なストレージデバイス、並びにCD/DVD又は同様の媒体(1421)を有するCD/DVD ROM/RW(1420)を含む光学メディア、サムドライブ(1422)、リムーバブル・ハード・ドライブ又はソリッド・ステート・ドライブ(1423)、テープ及びフロッピーディスクなどのレガシー磁気媒体(図示せず)、セキュリティドングルなどの専用のROM/ASIC/PLDベースのデバイス(図示せず)など、それらの関連媒体も含むことができる。
【0136】
当業者はまた、現在開示されている主題に関連して使用される「コンピュータ可読媒体」という用語は、伝送媒体、搬送波、又は他の一時的な信号を包含しないことを理解すべきである。
【0137】
また、コンピュータシステム(1400)はまた、1又は複数の通信ネットワーク(1455)へのインタフェース(1454)も含むことができる。ネットワークは、たとえば、無線、有線、光とすることができる。ネットワークはさらに、ローカル、広域、メトロポリタン、車両及び産業用、リアルタイム、遅延耐性などとすることができる。ネットワークの例は、イーサネットなどのローカル・エリア・ネットワークと、無線LANと、GSM、3G、4G、5G、LTEなどを含むセルラネットワークと、ケーブルTV、衛星TV、地上波放送TVを含むTV有線又は無線ワイド・エリア・デジタル・ネットワークと、CANBusを含む車両及び産業用と、などを含む。特定のネットワークは一般に、特定の汎用データポート又は周辺バス(1449)(たとえば、コンピュータシステム(1400)のUSBポートなど)に接続された外部ネットワーク・インタフェース・アダプタを必要とし、他のものは一般に、以下に説明されるようにシステムバスへの接続によってコンピュータシステム(1400)のコアに統合される(たとえば、PCコンピュータシステムへのイーサネットインタフェース又はスマートフォン・コンピュータ・システムへのセルラ・ネットワーク・インタフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム(1400)は他のエンティティと通信することができる。このような通信は、単方向受信のみ(たとえば、TV放送)、単方向送信のみ(たとえば、特定のCANbusデバイスへのCANbus)、又はたとえば、ローカル又はワイド・エリア・デジタル・ネットワークを使用する他のコンピュータシステムとの双方向とすることができる。特定のプロトコル及びプロトコルスタックは、上述のように、それらのネットワーク及びネットワークインタフェースのそれぞれで使用されることができる。
【0138】
前述のヒューマン・インタフェース・デバイス、人間がアクセス可能なストレージデバイス、及びネットワークインタフェースは、コンピュータシステム(1400)のコア(1440)に接続されることができる。
【0139】
コア(1440)は、1又は複数の中央処理装置(CPU)(1441)、グラフィックス処理装置(GPU)(1442)、フィールド・プログラマブル・ゲート・エリア(FPGA)(1443)の形態の専用プログラマブル処理装置、特定のタスク用のハードウェアアクセラレータ(1444)、グラフィックスアダプタ(1450)などを含むことができる。これらのデバイスは、読み取り専用メモリ(ROM)(1445)、ランダム・アクセス・メモリ(1446)、ユーザがアクセスできない内部ハードドライブ、SSDなどの内部大容量ストレージ(1447)と共に、システムバス(1448)を介して接続され得る。いくつかのコンピュータシステムでは、システムバス(1448)は、追加のCPU、GPUなどによる拡張を可能にするために、1又は複数の物理プラグの形態でアクセスされることができる。周辺デバイスは、コアのシステムバス(1448)に直接接続されるか、又は周辺バス(1449)を介して接続されることができる。一例では、スクリーン(1410)はグラフィックスアダプタ(1450)に接続されることができる。周辺バスのためのアーキテクチャは、PCI、USBなどを含む。
【0140】
CPU(1441)、GPU(1442)、FPGA(1443)、及びアクセラレータ(1444)は、組み合わせて前述のコンピュータコードを構成することができる特定の命令を実行することができる。そのコンピュータコードは、ROM(1445)又はRAM(1446)に記憶されることができる。過渡的データはまたRAM(1446)に記憶されることもできるが、一方で、永続データは、たとえば内部大容量ストレージ(1447)に記憶されることができる。1又は複数のCPU(1441)、GPU(1442)、大容量ストレージ(1447)、ROM(1445)、RAM(1446)などと密接に関連付けられることができるキャッシュメモリの使用を介して、メモリデバイスのいずれへの高速記憶及び読み出しも可能にされることができる。
【0141】
コンピュータ可読媒体は、さまざまなコンピュータ実施動作を実行するためのコンピュータコードを有することができる。媒体及びコンピュータコードは、本開示の目的のために特別に設計及び構築されたものとすることができるか、又はそれらは、コンピュータソフトウェア技術の当業者に周知で利用可能な種類のものとすることができる。
【0142】
限定の目的ではなく一例として、アーキテクチャ、具体的にはコア(1440)を有するコンピュータシステム(1400)は、1又は複数の有形のコンピュータ可読媒体で具現化されたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果として機能を提供することができる。このようなコンピュータ可読媒体は、上記で紹介されたようなユーザがアクセス可能な大容量ストレージ、及びコア内部大容量ストレージ(1447)又はROM(1445)などの非一時的な性質のコア(1440)の特定のストレージ、と関連付けられた媒体とすることができる。本開示のさまざまな実施形態を実施するソフトウェアは、このようなデバイスに記憶され、コア(1440)によって実行されることができる。コンピュータ可読媒体は、特定の必要性に応じて、1又は複数のメモリデバイス又はチップを含むことができる。ソフトウェアは、コア(1440)、及び具体的にはその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM(1446)に記憶されたデータ構造を定義すること、及びソフトウェアによって定義されたプロセスに従ってこのようなデータ構造を修正することを含む、本明細書に記載の特定のプロセス、又は特定のプロセスの特定の部分を実行させることができる。加えて、又は代替として、コンピュータシステムは、本明細書に記載の特定のプロセス、又は特定のプロセスの特定の部分を実行するためにソフトウェアの代わりに又はそれと一緒に動作することができる回路に配線されるか又は他の方法で具現化された論理(たとえば、アクセラレータ(1444))の結果としての機能を提供することができる。必要に応じて、ソフトウェアへの言及はロジックを包含することができ、その逆も同様である。必要に応じて、コンピュータ可読媒体への言及は、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のためのロジックを具現化する回路、又はこれらの両方を包含することができる。本開示は、ハードウェアとソフトウェアとの任意の適切な組合せを包含する。
【0143】
本開示は、いくつかの例示的実施形態を説明してきたが、本開示の範囲内にある変更、並べ替え、及びさまざまな代替の同等物が存在する。したがって、当業者は、本明細書に明示的に示されていないか又は記載されていないが、本開示の原理を具現化し、したがって、その趣旨及び範囲内にある多数のシステム及び方法を考案できることが理解されよう。
【符号の説明】
【0144】
200 メディアシステム
201 オーディオソース、オーディオ・ソース・デバイス
210 メディア・サーバ・デバイス
211 インタフェース回路
230 処理回路
240 オーディオエンコーダ
260A メディア・クライアント・デバイス
260B メディア・クライアント・デバイス
261A インタフェース回路
261B インタフェース回路
270A 処理回路
270B 処理回路
271A オーディオデコーダ
271B オーディオデコーダ
272A レンダラ
272B レンダラ
301 長方形のボックス
302 長方形のボックス
303 長方形のボックス
304 長方形のボックス
310 関心空間
400 記述
401 記述ノード
402 記述ノード
403 記述ノード
404 記述ノード
500 シンタックス
510 第1の層
511 属性を特定するための名前
512 値
520 第2の層
600 階層化記述
610 第1の層
611 サイズ属性を特定するための名前
620 第2の層
621 値
700 シンタックス
710 第1の層
711 属性を特定するための名前
712 値
713 サブフィールドを特定するためのインデックス
720 第2の層
800 階層化記述
810 第1の層
811 向き属性を特定するための名前
812 値
813 第2のサブフィールドと第3のサブフィールドとを特定するためのインデックス
820 第2の層
900 階層化記述
910 第1の層
920 第2の層
1000 階層化記述
1010 第1の層
1020 第2の層
1100 プロセス
1200 プロセス
1300 プロセス
1400 コンピュータシステム
1401 キーボード
1402 マウス
1403 トラックパッド
1405 ジョイスティック
1406 マイク
1407 スキャナ
1408 カメラ
1409 スピーカ
1410 タッチスクリーン
1420 CD/DVD ROM/RW
1421 CD/DVD又は同様の媒体
1422 サムドライブ
1423 リムーバブル・ハード・ドライブ又はソリッド・ステート・ドライブ
1440 コア
1441 中央処理装置(CPU)
1442 グラフィックス処理装置(GPU)
1443 フィールド・プログラマブル・ゲート・エリア(FPGA)
1444 ハードウェアアクセラレータ
1445 読み取り専用メモリ(ROM)
1446 ランダム・アクセス・メモリ
1447 内部大容量ストレージ
1448 システムバス
1449 周辺バス
1450 グラフィックスアダプタ
1454 インタフェース
1455 通信ネットワーク