IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ テンセント・アメリカ・エルエルシーの特許一覧

特表2024-511731アセット再使用の頻度によって優先される没入型メディアストリーミング方法、装置、およびコンピュータプログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-15
(54)【発明の名称】アセット再使用の頻度によって優先される没入型メディアストリーミング方法、装置、およびコンピュータプログラム
(51)【国際特許分類】
   H04N 21/258 20110101AFI20240308BHJP
【FI】
H04N21/258
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023554896
(86)(22)【出願日】2022-10-27
(85)【翻訳文提出日】2023-09-07
(86)【国際出願番号】 US2022048025
(87)【国際公開番号】W WO2023081053
(87)【国際公開日】2023-05-11
(31)【優先権主張番号】63/276,536
(32)【優先日】2021-11-05
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/971,057
(32)【優先日】2022-10-21
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【弁理士】
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】アリアンヌ・ハインズ
(72)【発明者】
【氏名】ロヒト・アビシェーク
(72)【発明者】
【氏名】ステファン・ウェンガー
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164GA03
5C164SA26S
5C164SC11P
5C164TA08S
5C164UA31S
5C164UD44S
5C164YA10
(57)【要約】
没入型プレゼンテーションのための没入型メディアデータを受信するステップと、没入型プレゼンテーションのための没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を取得するステップと、メディアアセットの特性をアセット情報に基づいて解析するステップであって、特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、没入型プレゼンテーションに含まれるシーンのセットの中でそれぞれのメディアアセットが使用される回数を示す頻度とを含む、ステップと、メディアアセットのそれぞれと関連付けられるアセットタイプ及び頻度に基づいてメディアアセットをあるシーケンスに順序付けるステップと、メディアアセットの順序付けられたシーケンスに基づいて没入型プレゼンテーションのための没入型メディアデータをストリーミングするステップと、を含む、少なくとも1つのプロセッサによって実行されるメディアストリームの没入型メディア配信を最適化するためにメディアをパッケージングすることが提供される。
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサによって実行される、没入型メディア配信を最適化するためにメディアをパッケージングするための方法であって、前記方法は、
没入型プレゼンテーションのための没入型メディアデータを受信するステップと、
前記没入型プレゼンテーションのための前記没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を取得するステップと、
前記メディアアセットの特性を前記アセット情報に基づいて解析するステップであって、前記特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、前記没入型プレゼンテーションに含まれる前記シーンのセットの中で前記それぞれのメディアアセットが使用される回数を示す頻度とを含む、ステップと、
前記メディアアセットのそれぞれと関連付けられる前記アセットタイプ及び前記頻度に基づいて前記メディアアセットをあるシーケンスに順序付けるステップと
を含む、方法。
【請求項2】
前記メディアアセットの前記シーケンスは、最初に前記アセットタイプによって順序付けられ、次に頻度を増減することによって順序付けられる、請求項1に記載の方法。
【請求項3】
前記没入型メディアデータが1つ以上のシーンを含み、前記1つ以上のシーンは、時限シーン、非時限シーン、又は時限シーンと非時限シーンとの組合せである、請求項1に記載の方法。
【請求項4】
前記アセット情報は前記それぞれのメディアアセットのベース表示とアセット拡張層のセットとを含み、前記アセット拡張層のセットが前記メディアアセットの前記特性に対応する属性情報を含み、
前記アセット拡張層のセットが前記メディアアセットの前記ベース表示に適用される場合、前記それぞれのメディアアセットの前記ベース表示は、前記メディアアセットの前記ベース表示を含むベース層でサポートされない特徴を含むように拡張される、請求項1に記載の方法。
【請求項5】
前記メディアアセットの前記シーケンスを、ネットワーク上での表示及びストリーミングのための個々のパケットに分離するステップと、
前記メディアアセットの前記順序付けられたシーケンスに基づいて前記没入型プレゼンテーションのための前記没入型メディアデータをストリーミングするステップと
を更に含む、請求項1に記載の方法。
【請求項6】
シーンの複雑さに基づいて、前記シーンのセット内の前記シーンに対応する前記没入型メディアデータのフォーマットが没入型メディア配信前に第1のフォーマットから第2のフォーマットに変換されるべきかどうかを決定するステップと、
前記シーンに対応する前記没入型メディアデータが変換されるべきであるという決定に基づいて、前記没入型メディアデータのソース又は前記没入型メディアデータのクライアントが前記第1のフォーマットから前記第2のフォーマットへの変換を実行するべきであるかどうかを決定するステップと
を更に含む、請求項1に記載の方法。
【請求項7】
前記それぞれのメディアアセットが既にストリーミングされたかどうかを決定するステップと、
前記それぞれのメディアアセットが既にストリーミングされたと決定される場合、前記メディアアセットの前記シーケンス内で前記それぞれのメディアアセットを置き換えるプロキシを作成するステップと
を更に含む、請求項1に記載の方法。
【請求項8】
没入型メディア配信を最適化するためにメディアをパッケージングするためのデバイスであって、前記デバイスは、
コンピュータプログラムコードを記憶するように構成される少なくとも1つのメモリと、
前記コンピュータプログラムコードを読み取り、前記コンピュータプログラムコードによって命令されるように動作するように構成される少なくとも1つのプロセッサであって、前記コンピュータプログラムコードが、
没入型プレゼンテーションのための没入型メディアデータを前記少なくとも1つのプロセッサに受信させるように構成される受信コードと、
前記没入型プレゼンテーションのための前記没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を前記少なくとも1つのプロセッサに取得させるように構成される取得コードと、
前記メディアアセットの特性を前記アセット情報に基づいて前記少なくとも1つのプロセッサに解析させるように構成される解析コードであって、前記特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、前記没入型プレゼンテーションに含まれる前記シーンのセットの中で前記それぞれのメディアアセットが使用される回数を示す頻度とを含む、解析コードと、
前記メディアアセットのそれぞれと関連付けられる前記アセットタイプ及び前記頻度に基づいて前記少なくとも1つのプロセッサに前記メディアアセットをあるシーケンスに順序付けさせるように構成されるシーケンシングコードと
を含む、少なくとも1つのプロセッサと
を備える、デバイス。
【請求項9】
前記メディアアセットの前記順序付けられたシーケンスは、最初に前記アセットタイプによって順序付けられ、次に頻度を増加又は減少させることによって順序付けられる、請求項8に記載のデバイス。
【請求項10】
前記没入型メディアデータが1つ以上のシーンを含み、前記1つ以上のシーンは、時限シーン、非時限シーン、又は時限シーンと非時限シーンとの組合せである、請求項8に記載のデバイス。
【請求項11】
前記アセット情報は、前記それぞれのメディアアセットのベース表示とアセット拡張層のセットとを含み、前記アセット拡張層のセットは、前記メディアアセットの前記特性に対応する属性情報を含み、
前記アセット拡張層のセットが前記メディアアセットの前記ベース表示に適用される場合、前記それぞれのメディアアセットの前記ベース表示は、前記メディアアセットの前記ベース表示を含むベース層でサポートされない特徴を含むように拡張される、請求項8に記載のデバイス。
【請求項12】
前記コンピュータプログラムコードは、
前記少なくとも1つのプロセッサに、前記メディアアセットの前記順序付けられたシーケンスを、ネットワーク上での表示及びストリーミングのための個々のパケットに分離させるように構成される分離コードと、
前記少なくとも1つのプロセッサに、前記メディアアセットの前記順序付けられたシーケンスに基づいて前記没入型プレゼンテーションのために前記没入型メディアデータをストリーミングさせるように構成されるストリーミングコードと
を更に含む、請求項8に記載のデバイス。
【請求項13】
前記コンピュータプログラムコードは、
シーンの複雑さに基づいて、前記シーンのセット内の前記シーンに対応する前記没入型メディアデータのフォーマットが前記没入型メディア配信の前に第1のフォーマットから第2のフォーマットに変換されるべきかどうかを前記少なくとも1つのプロセッサに決定させるように構成されるフォーマット決定コードと、
前記シーンに対応する前記没入型メディアデータが変換されるべきであるという決定に基づいて、前記没入型メディアデータのソース又は前記没入型メディアデータのクライアントが前記第1のフォーマットから前記第2のフォーマットへの変換を実行するべきであるかどうかを前記少なくとも1つのプロセッサに決定させるように構成される変換決定コードと
を更に含む、請求項8に記載のデバイス。
【請求項14】
前記コンピュータプログラムコードは、
前記それぞれのメディアアセットが既にストリーミングされたかどうかを前記少なくとも1つのプロセッサに決定させるように構成される決定コードと、
前記それぞれのメディアアセットが既にストリーミングされたと決定される場合、前記メディアアセットの前記順序付けられたシーケンス内で前記それぞれのメディアアセットを置き換えるプロキシを前記少なくとも1つのプロセッサに作成させるように構成されるプロキシ作成コードと
を更に含む、請求項8に記載のデバイス。
【請求項15】
没入型メディア配信を最適化するためにメディアをパッケージングするためのデバイスの少なくとも1つのプロセッサによって実行されるときに、前記少なくとも1つのプロセッサに、
没入型プレゼンテーションのための没入型メディアデータを受信させ、
前記没入型プレゼンテーションのための前記没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を取得させ、
前記メディアアセットの特性を前記アセット情報に基づいて解析させ、前記特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、前記没入型プレゼンテーションに含まれる前記シーンのセットの中で前記それぞれのメディアアセットが使用される回数を示す頻度とを含み、
前記メディアアセットのそれぞれと関連付けられる前記アセットタイプ及び前記頻度に基づいて前記メディアアセットをあるシーケンスに順序付けさせる
命令を記憶する、非一時的コンピュータ可読媒体。
【請求項16】
前記メディアアセットの前記順序付けられたシーケンスは、最初に前記アセットタイプによって順序付けられ、次に頻度を増加又は減少させることによって順序付けられる、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項17】
前記命令は、更に、前記少なくとも1つのプロセッサに、
前記メディアアセットの前記順序付けられたシーケンスを、ネットワーク上での表示及びストリーミングのための個々のパケットに分離させ、
前記メディアアセットの前記順序付けられたシーケンスに基づいて前記没入型プレゼンテーションのために前記没入型メディアデータをストリーミングさせる、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項18】
前記アセット情報は、前記それぞれのメディアアセットのベース表示とアセット拡張層のセットとを含み、前記アセット拡張層のセットは、前記メディアアセットの前記特性に対応する属性情報を含み、
前記アセット拡張層のセットが前記メディアアセットの前記ベース表示に適用される場合、前記それぞれのメディアアセットの前記ベース表示は、前記メディアアセットの前記ベース表示を含むベース層でサポートされない特徴を含むように拡張される、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項19】
前記命令は、更に、前記少なくとも1つのプロセッサに、
シーンの複雑さに基づいて、前記シーンのセット内の前記シーンに対応する前記没入型メディアデータのフォーマットが没入型メディア配信前に第1のフォーマットから第2のフォーマットに変換されるべきかどうかを決定させ、
前記シーンに対応する前記没入型メディアデータが変換されるべきであるという決定に基づいて、前記没入型メディアデータのソース又は前記没入型メディアデータのクライアントが前記第1のフォーマットから前記第2のフォーマットへの変換を実行するべきであるかどうかを決定させる、請求項15に記載の非一時的コンピュータ可読媒体。
【請求項20】
前記命令は、更に、前記少なくとも1つのプロセッサに、
前記それぞれのメディアアセットが既にストリーミングされたかどうかを決定させ、
前記それぞれのメディアアセットが既にストリーミングされたと決定される場合、前記メディアアセットの前記順序付けられたシーケンス内で前記それぞれのメディアアセットを置き換えるプロキシを作成させる、請求項15に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
この出願は、2021年11月5日に出願された米国仮特許出願第63/276,536号及び2022年10月21日に出願された米国特許出願第17/971,057号に基づくとともに、これらの出願の優先権を主張し、それらの開示はその全体が参照により本願に組み入れられる。
【0002】
本開示は、ビデオ、オーディオ、幾何学的(3D)オブジェクト、触覚、関連するメタデータ、又はクライアントプレゼンテーションデバイスのための他のコンテンツを含む、メディアを配信するシステム及びネットワークのためのアーキテクチャ、構造、及び構成要素に一般に関連する実施形態を説明する。幾つかの実施形態は、異種没入型及びインタラクティブなクライアントプレゼンテーションデバイスへのメディアコンテンツの配信のためのシステム、構造、及びアーキテクチャに関する。
【背景技術】
【0003】
没入型メディアは、一般に、メディアの体験において物理的に存在している、すなわち、時限2次元(2D)ビデオ及び対応するオーディオのために既存の(例えば、「レガシー」)商用ネットワークにわたって配信されているものを超えているユーザの知覚を生み出す又は強化するために、任意の又は全ての人間の感覚システム(例えば、視覚、聴覚、体性感覚、嗅覚、及び場合によっては味覚)を刺激するメディアを指し、そのような時限メディアは「レガシーメディア」としても知られている。また、没入型メディアは、動力学及び物理法則のデジタルシミュレーションを介して物理世界を作成又は模倣することによって現実世界又は仮想世界を描写するシーン内に物理的に存在するというユーザによる知覚を生み出すべく任意又は全ての人間の感覚システムを刺激しようとするメディアとして定義されてもよい。
【0004】
ヘッドマウントディスプレイ、拡張現実メガネ、ハンドヘルドコントローラ、マルチビューディスプレイ、触覚グローブ、ゲーム機、ホログラフィックディスプレイ、及び他の形態の体積測定ディスプレイを含む、幾つかの没入型メディア対応デバイスが消費者市場に導入されている(又は出現する準備ができている)。これらのデバイスの可用性にもかかわらず、商用ネットワークを介した没入型メディアの配信のためのコヒーレントなエンドツーエンドのエコシステムは実現されていない。
【0005】
関連技術では、商用ネットワークを介した没入型メディアの配信のためのコヒーレントなエンドツーエンドのエコシステムを実現することに対する障害の1つは、没入型ディスプレイ用のそのような配信ネットワークのエンドポイントとして機能するクライアントデバイスが全て非常に多様であることである。レガシーメディアの配信のみを目的として設計されたネットワークとは異なり、多様なディスプレイクライアント(すなわち、異種クライアント)をサポートしなければならないネットワークは、そのようなネットワークが適応プロセスを使用してメディアを各ターゲットディスプレイ及び対応するアプリケーションに適したフォーマットに変換する前に、クライアントの各能力の詳細、及び配信されるべきメディアのフォーマットに関するかなりの量の情報を必要とする。そのようなネットワークは、少なくとも、ネットワークが入力メディアソースをターゲットディスプレイ及びアプリケーションに適したフォーマットに有意に適合させる方法を確認するために、各ターゲットディスプレイの特性及び取り込まれたメディアの複雑さを記述する情報にアクセスする必要がある。
【0006】
したがって、異種没入型メディアを効率的に表示して様々なクライアントにストリーミングするための方法が必要とされる。
【発明の概要】
【課題を解決するための手段】
【0007】
実施形態によれば、没入型メディアプレゼンテーションを含む少なくとも1つのシーンのセットのためのメディアアセットを配信するシステムを最適化するための方法が提供され、メディアアセットは、頻度及びアセットタイプなどのメディアアセット特性に基づいて順序付けられる。
【0008】
本開示の一態様によれば、少なくとも1つのプロセッサによって実行される、没入型メディア配信を最適化するためにメディアをパッケージングするための方法が提供される。方法は、没入型プレゼンテーションのための没入型メディアデータを受信するステップと、没入型プレゼンテーションのための没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を取得するステップと、メディアアセットの特性をアセット情報に基づいて解析するステップであって、特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、没入型プレゼンテーションに含まれるシーンのセットの中でそれぞれのメディアアセットが使用される回数を示す頻度とを含む、ステップと、メディアアセットのそれぞれと関連付けられるアセットタイプ及び頻度に基づいてメディアアセットをあるシーケンスに順序付けるステップとを含む。
【0009】
本開示の他の態様によれば、コンピュータプログラムコードを記憶するように構成される少なくとも1つのメモリと、コンピュータプログラムコードを読み取り、コンピュータプログラムコードによって命令されるように動作するように構成される少なくとも1つのプロセッサとを含む、没入型メディア配信を最適化するためにメディアをパッケージングするためのデバイス(又は装置)が提供される。コンピュータプログラムコードは、没入型プレゼンテーションのための没入型メディアデータを少なくとも1つのプロセッサに受信させるように構成される受信コード少なくとも1つのプロセッサに受信させるように構成される受信コードと、没入型プレゼンテーションのための没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を少なくとも1つのプロセッサに取得させるように構成される取得コードと、メディアアセットの特性をアセット情報に基づいて少なくとも1つのプロセッサに解析させるように構成される解析コードであって、特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、没入型プレゼンテーションに含まれるシーンのセットの中でそれぞれのメディアアセットが使用される回数を示す頻度とを含む、解析コードと、メディアアセットのそれぞれと関連付けられるアセットタイプ及び頻度に基づいて少なくとも1つのプロセッサにメディアアセットをあるシーケンスに順序付けさせるように構成されるシーケンシングコードとを含む。
【0010】
本開示の他の態様によれば、没入型メディア配信を最適化するためのデバイスの、少なくとも1つのプロセッサによって実行される命令を記憶する非一時的コンピュータ可読媒体が提供される。命令は、少なくとも1つのプロセッサに、没入型プレゼンテーションのための没入型メディアデータを受信させ、没入型プレゼンテーションのための没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を取得させ、メディアアセットの特性をアセット情報に基づいて解析させ、特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、没入型プレゼンテーションに含まれるシーンのセットの中でそれぞれのメディアアセットが使用される回数を示す頻度とを含み、メディアアセットのそれぞれと関連付けられるアセットタイプ及び頻度に基づいてメディアアセットをあるシーケンスに順序付けさせる。
【0011】
更なる実施形態は、以下の説明に記載され、一部は、説明から明らかになり、及び/又は本開示の提示された実施形態の実施によって実現することができる。
【図面の簡単な説明】
【0012】
図1A】実施形態に係る、クライアントへの配信のためのネットワークを介したメディアの流れの概略図である。
図1B】再使用ロジック意思決定プロセスを示すワークフローである。
図2A】実施形態に係る、クライアントにメディアを配信する前にネットワークがメディアを変換すべきかどうかを決定するために意思決定プロセスが採用されるネットワークを介したメディアの流れの概略図である。
図2B】実施形態に係る、アセット再使用ロジックを用いたメディア変換意思決定プロセスを示すワークフローである。
図3A】実施形態に係る、時限没入型メディアの表示及びストリーミングのためのデータモデルの概略図である。
図3B】実施形態に係る、時限没入型メディアの順序付けられた表示及びストリーミングのデータモデルの概略図である。
図4A】実施形態に係る、非時限没入型メディアの表示及びストリーミングのためのデータモデルの概略図である。
図4B】実施形態に係る、非時限没入型メディアの順序付けられた表示及びストリーミングのためのデータモデルの概略図である。
図5】実施形態に係る、自然メディア合成プロセスの概略図である。
図6】実施形態に係る、合成メディアインジェスト作成プロセスの一例の概略図である。
図7】実施形態に係る、コンピュータシステムの概略図である。
図8】実施形態に係る、ネットワークメディア配信システムの概略図である。
図9】実施形態に係る、没入型メディア配信プロセスの例示的なワークフローの概略図である。
図10】実施形態に係る、メディア適応プロセスシステムのシステム図である。
図11A】実施形態に係る、例示的な配信フォーマット作成プロセスの概略図である。
図11B】実施形態に係る、頻度及びアセットタイプ順序付けを伴う例示的な配信フォーマット作成プロセスの概略図である。
図12】実施形態に係る、例示的なパケット化プロセスの概略図である。
図13】実施形態に係る、構成要素間の通信フローの一例を示すシーケンス図である。
図14A】実施形態に係る、メディア再使用解析器の方法を示すワークフローである。
図14B】実施形態に係る、プレゼンテーションにおけるシーンに関する固有アセットのリストのセットの一例である。
図15】実施形態に係る、メディア再使用解析器のためのコンピュータコードの一例のブロック図である。
【発明を実施するための形態】
【0013】
例示的な実施形態の以下の詳細な説明は、添付図面を参照する。異なる図面における同じ参照番号は、同じ又は同様の要素を識別することができる。
【0014】
前述の開示は、例示及び説明を提供しているが、網羅的であることも、実装形態を厳密に開示の形態に限定することも意図されていない。修正形態及び変形形態が上記の開示に照らして可能であり、又は実装形態の実践から取得されてもよい。更に、一実施形態の1つもしくは複数の特徴又は構成要素は、別の実施形態(又は別の実施形態の1つもしくは複数の特徴)に組み込まれてもよく、又は組み合わされてもよい。更に、以下に提供される動作の流れ図及び説明では、1つ以上の動作が省略されてもよく、1つ以上の動作が追加されてもよく、1つ以上の動作が(少なくとも部分的に)同時に行われてもよく、1つ以上の動作の順序が入れ替えられてもよいことを理解されたい。
【0015】
本明細書に記載のシステム及び/又は方法が、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアとの組合せの異なる形態で実装されてもよいことは明らかとなり得る。これらのシステム及び/又は方法を実装するために使用される実際の専用の制御ハードウェア又はソフトウェアコードは、実装形態を限定するものではない。したがって、本明細書ではシステム及び/又は方法の動作及び挙動は、特定のソフトウェアコードを参照することなく説明された。ソフトウェア及びハードウェアは、本明細書の説明に基づいてシステム及び/又は方法を実装するように設計され得ることが理解される。
【0016】
特定の特徴の組合せが、特許請求の範囲に記載され、及び/又は本明細書に開示されていても、これらの組合せは、可能な実装形態の開示を限定することを意図されたものではない。実際、これらの特徴の多くは、特許請求の範囲に具体的に記載されておらず、及び/又は本明細書に開示されていない方法で組み合わされ得る。以下に列挙されている各従属請求項は1つの請求項のみに直接従属し得るが、可能な実装形態の開示は、請求項セット内の他の全ての請求項との組合せにおいて各従属請求項を含む。
【0017】
以下で説明される提案された機能は、別々に使用されるか、又は任意の順序で組み合わされてもよい。更に、実施形態は、処理回路(例えば、1つ以上のプロセッサ又は1つ以上の集積回路)によって実施されてもよい。一例において、1つ以上のプロセッサは、非一時的コンピュータ可読媒体に記憶されるプログラムを実行する。
【0018】
本明細書で使用される要素、動作、又は命令は、そのようなものとして明示的に記載されていない限り、重要又は必須であると解釈されてはならない。また、本明細書で使用される場合、冠詞「a」及び「an」は、1つ以上の項目を含むことを意図されており、「1つ以上」と交換可能に使用されてもよい。1つの項目のみが対象とされる場合、「1つ」という用語又は同様の言葉が使用される。また、本明細書で使用される場合、「有する(has)」、「有する(have)」、「有する(having)」、「含む(include)」、「含む(including)」などの用語は、非限定的な用語であることを意図している。更に、「に基づいて」という語句は、特に明記されない限り、「に少なくとも部分的に基づいて」を意味することが意図されている。更に、「[A]及び[B]のうちの少なくとも一方」或いは「[A]又は[B]のうちの少なくとも一方」などの表示は、Aのみ、Bのみ、又はAとBの両方を含むものとして理解されるべきである。
【0019】
本開示の例示的な実施形態は、没入型メディア対応プレゼンテーションデバイスに配信するために、メディアデータの複雑さに基づいてメディアアセットを解析及び変換するための方法及びデバイスを提供する。没入型メディア対応プレゼンテーションデバイスは、没入型メディアにアクセスし、解釈し、プレゼンテーションするのに十分なリソース及び能力を備えていることを指すことができる。そのようなデバイスは、それらがサポートすることができる(ネットワークによって提供される)メディアの量及びフォーマットに関して異種である。同様に、メディアは、そのようなメディアを大規模に配信するために必要なネットワークリソースの量及び種類に関して異種である。「大規模」は、ネットワークを介したレガシービデオ及びオーディオメディア(例えば、Netflix、Hulu、Comcastサブスクリプション、Spectrumサブスクリプションなど)と同等の配信を達成するサービスプロバイダによるメディアの配信を指すことができる。対照的に、ラップトップディスプレイ、テレビ、及びモバイルハンドセットディスプレイなどのレガシープレゼンテーションデバイスは、それらのデバイスの全てが、それらの主要なビジュアルメディアフォーマットとして2D矩形ビデオ又は静止画像を消費する矩形ディスプレイスクリーンから構成されるので、それらの能力において均一である。レガシープレゼンテーションデバイスで一般的に使用されるビジュアルメディアフォーマットの幾つかは、例えば、高効率ビデオコーディング/H.265、アドバンストビデオコーディング/H.264、及び多用途ビデオコーディング/H.266を含むことができる。
【0020】
前述したように、ネットワークを介した没入型メディアの配信のためのエンドポイントとして機能するクライアントデバイスは全て非常に多様である。それらのうちの幾つかは特定の没入型メディアフォーマットをサポートしているが、他のものはサポートしていない。それらのうちの幾つかは、旧式のラスタベースのフォーマットから没入型体験を作り出すことができるが、他のものは不可能である。この問題に対抗するために、ネットワークを介した任意のメディアの配信は、メディアを入力又はネットワークインジェストメディアフォーマットから配信メディアフォーマットに再フォーマットするメディア配信システム及びアーキテクチャを採用することができ、その配信メディアフォーマットは、ターゲットのクライアントデバイス及びそのアプリケーションによって取り込まれるのに適しているだけでなく、ネットワークを介してストリーミングされるのにも役立つ。したがって、取り込まれたメディアを使用してネットワークによって実行される2つのプロセス、すなわち、1)メディアをフォーマットAから、ターゲットクライアントデバイスによって取り込まれるのに適したフォーマットBに変換するプロセス、すなわち、特定のメディアフォーマットを取り込むクライアントデバイスの能力に基づいて変換するプロセス、及び2)ストリーミングされるメディアを準備するプロセスが存在し得る。
【0021】
実施形態では、メディアのストリーミングは、メディアのフラグメント化及び/又はパケット化を広く指し、それにより、メディアの時間的又は空間的構造のいずれか又は両方に従って論理的に編成及びシーケンス化された連続した小さいサイズのチャンクでネットワークを介してメディアを配信することができる。フォーマットAからフォーマットBへのメディアの変換(「トランスコーディング」と呼ばれることもある)は、クライアントデバイスにメディアを配信する前に、通常はネットワーク又はサービスプロバイダによって実行されるプロセスであってもよい。そのようなトランスコーディングは、フォーマットBが、ターゲットクライアントデバイスによって取り込まれ得る好ましいフォーマット又は唯一のフォーマットである、又は商用ネットワークなどの制約のあるリソースを介した配信により適しているという事前知識に基づいて、フォーマットAからフォーマットBにメディアを変換することから構成され得る。多くの場合、全てではないが、メディアを変換するステップと、ストリーミングされるメディアを準備するステップの両方が、メディアがネットワークからターゲットクライアントデバイスによって受信及び処理され得る前に必要である。
【0022】
メディアを変換(又は転換)し、ストリーミング用にメディアを準備することは、メディアをクライアントデバイスに配信する前に、ネットワークによって取り込まれたメディアに作用するプロセスのステップである。処理(すなわち、ストリーミングのための変換及び準備)の結果は、配信メディアフォーマット、又は単に配信フォーマットと呼ばれるメディアフォーマットである。これらのステップは、所与のメディアデータオブジェクトに対して実行される場合、クライアントがそのようなメディアの変換及びストリーミングを複数回トリガする複数の機会のために変換及び/又はストリーミングされたメディアオブジェクトを必要とすることを示す情報にネットワークがアクセスできる場合、1回だけ実行されるべきである。すなわち、メディアの変換及びストリーミングのためのデータの処理及び転送は、一般に、潜在的にかなりの量のネットワーク及び/又は計算リソースを消費する必要があるレイテンシの発生源と見なされる。したがって、クライアントがそのキャッシュに記憶されているか、又はクライアントに対してローカルに記憶されている特定のメディアデータオブジェクトを既に有している可能性があるときを示すための情報にアクセスすることができないネットワーク設計は、そのような情報にアクセスすることができるネットワークに対して準最適に実行される。
【0023】
異種クライアントをサポートする理想的なネットワークは、入力メディアフォーマットから特定のターゲットフォーマットに適合されたアセットの幾つかが同様の表示ターゲットのセットにわたって再使用され得るという事実を活用すべきである。すなわち、ターゲットディスプレイに適したフォーマットに変換されると、幾つかのアセットは、同様の適応要件を有する幾つかのそのようなディスプレイにわたって再使用することができる。したがって、実施形態によれば、そのような理想的なネットワークは、例えば、レガシーネットワークにおけるコンテンツ配信ネットワーク(CDN)の使用と同様に、適応されたアセットを相対的にエリアに記憶するためにキャッシュ機構を使用することができる。
【0024】
没入型メディアは、シーン記述としても知られるシーングラフによって記述されるシーンに編成され得る。実施形態では、シーン(コンピュータグラフィックスとの関連でのシーン)は、オブジェクト(例えば、3Dアセット)、オブジェクト属性、及びその設定内のオブジェクトの相互作用に関して空間又は時間のいずれかによって境界付けられる特定の設定を記述する視覚的、音響的、及び物理学ベースの特性を含む他のメタデータの集合である。シーングラフは、ベクトルベースのグラフィック編集アプリケーション及び最新のコンピュータゲームによって一般的に使用される一般的なデータ構造であり、グラフィックシーンの論理的かつしばしば(必ずしもそうとは限らない)空間的表示を配置する。シーングラフは、グラフ構造内のノード及び頂点の集合から構成され得る。ノードは、視覚的、音声的、触覚的、嗅覚的、味覚的、又は関連する処理情報の論理的、空間的、又は時間的表示に関する情報で構成され得る。各ノードは、最大で1つの出力エッジ、0つ以上の入力エッジ、及びそれに接続された少なくとも1つのエッジ(入力又は出力のいずれか)を有するものとする。属性又はオブジェクト属性は、(例えば、別のノードに関して)規範的形式又はより複雑な形式のいずれかでそのノードの特定の特性又は特徴を記述するために使用されるノードに関連付けられたメタデータを指す。シーングラフの範囲は、プレゼンテーションの一部、例えば、アクター及び映画などのプレゼンテーションの一部である建物内の特定の場所で行われるイベントである特定の設定を含むビジュアル、オーディオ、及び他の形態の没入型アセットを記述することである。単一のプレゼンテーションを含む全てのシーンのリストは、シーンのマニフェストに定式化されてもよい。
【0025】
適応されたアセットを記憶するためにキャッシュ機構を使用することの更なる利点は、コンテンツを配信する必要がある前に事前に準備されたコンテンツについて、素材の明細を作成できることである。素材の明細は、プレゼンテーション全体に使用される全てのアセット、及びプレゼンテーション内の様々なシーンの中で各アセットが使用される頻度を識別する。理想的なネットワークは、特定のプレゼンテーションのアセット要件を満たすために使用され得るキャッシュされたリソースの存在の知識を有するべきである。同様に、一連のシーンをプレゼンテーションしているクライアントデバイスは、複数のシーンにわたって使用される任意の所与のアセットの頻度に関する知識を有することを望む場合がある。例えば、メディアアセット(メディアオブジェクトとしても知られる)が、クライアントデバイスによって処理される、又は処理される複数のシーンにわたって複数回参照される場合、クライアントデバイスは、その特定のアセットを必要とする最後のシーンがクライアントデバイスによってプレゼンテーションされるまで、そのアセットをキャッシュリソースから破棄することを避けるべきである。本開示の実施形態では、メディア「オブジェクト」及びメディア「アセット」という用語は交換可能に使用することができ、両方ともメディアデータの特定のフォーマットの特定のインスタンスを指す。
【0026】
レガシーメディアプレゼンテーションデバイスの場合、配信フォーマットは、プレゼンテーションを作成するためにクライアントプレゼンテーションデバイスによって最終的に使用される「プレゼンテーションフォーマット」と同等又は十分に同等であり得る。すなわち、プレゼンテーションメディアフォーマットは、そのプロパティ(例えば、解像度、フレームレート、ビット深度、色域など)がクライアントプレゼンテーションデバイスの能力に密接に調整されているメディアフォーマットである。配信対プレゼンテーションフォーマットの例は、ネットワークによって解像度(3840画素列×2160画素行)の超高解像度(UHD)クライアントデバイスに配信される高解像度(HD)映像信号(1920画素列×1080画素行)を含む。前述した例では、UHDクライアントデバイスは、HD配信フォーマットに超解像処理を施して、映像信号の解像度をHDからUHDに上げることになる。したがって、クライアントデバイスによってプレゼンテーションされる最終的な信号フォーマットは、この例ではUHD信号である「プレゼンテーションフォーマット」であるが、HD信号は配信フォーマットを含む。この例では、HD信号配信フォーマットは、両方の信号が直線ビデオフォーマットであることからUHD信号プレゼンテーションフォーマットに非常に類似しており、HDフォーマットをUHDフォーマットに変換するプロセスは、比較的簡単であり、ほとんどのレガシーメディアクライアントデバイス上で実行するのが容易である。
【0027】
幾つかの実施形態では、クライアントデバイスのための好ましいプレゼンテーションフォーマットは、ネットワークによって受信されるインジェストフォーマットとは大きく異なり得る。それにもかかわらず、クライアントデバイスは、メディアをインジェストフォーマットからクライアントデバイスによるプレゼンテーションに適した必要なプレゼンテーションフォーマットに変換するのに十分な計算、記憶、及び帯域幅リソースにアクセスすることができる。このシナリオでは、ネットワークは、取り込まれたメディアをフォーマットAからフォーマットBに再フォーマット又はトランスコーディングするステップをバイパスすることができるが、これは単に、クライアントデバイスが、ネットワークが事前にそうする必要なしに全てのメディア変換を実行するのに十分なリソースにアクセスできるからである。しかしながら、ネットワークは、メディアがネットワークを介してクライアントデバイスにストリーミングされ得るように、インジェストメディアを断片化及びパッケージングするステップを依然として実行することができる。
【0028】
幾つかの実施形態では、取り込まれたメディアは、クライアントの好ましいプレゼンテーションフォーマットとは大きく異なる場合があり、クライアントデバイスは、メディアをインジェストフォーマットから好ましいプレゼンテーションフォーマットに変換するのに十分な計算、記憶、及び/又は帯域幅リソースにアクセスできない場合がある。そのようなシナリオでは、ネットワークは、インジェストフォーマットから、クライアントデバイスに代わってクライアントの好ましいプレゼンテーションフォーマットと同等又はほぼ同等のフォーマットへの変換の一部又は全部を実行することによってクライアントを支援することができる。幾つかのアーキテクチャ設計では、クライアントデバイスに代わってネットワークによって提供されるそのような支援は、一般に分割レンダリングと呼ばれる。
【0029】
図1Aは、幾つかの実施形態に係る、クライアントへの配信のためのネットワークを介するメディアフロープロセス100の概略図である。図1Aは、フォーマットA(以下、「インジェストメディアフォーマットA」)のメディアの処理例を示す。処理(すなわち、メディアフロープロセス100)は、ネットワーククラウド又はエッジデバイス(以下、「ネットワークデバイス104」)によって行われ又は実行され、クライアント、例えばクライアントデバイス108に配信され得る。幾つかの実施形態では、同じ処理は、手動プロセス又はクライアントデバイスによって事前に実行されてもよい。ネットワークデバイス104は、インジェストメディアモジュール101と、ネットワーク処理モジュール102(以下、「処理モジュール102」)と、配信モジュール103とを含むことができる。クライアントデバイス108は、レンダリングモジュール106及びプレゼンテーションモジュール107を含むことができる。
【0030】
まず、ネットワークデバイス104は、コンテンツプロバイダなどから取り込まれたメディアを受信する。インジェストメディアモジュール101は、インジェストメディアフォーマットAに記憶された、取り込まれたメディアを取得する。ネットワーク処理モジュール102は、取り込まれたメディアの任意の必要な変換又は調整を実行して、メディアの潜在的な代替表示を作成する。すなわち、処理モジュール102は、インジェストメディア内のメディアオブジェクトのための配信フォーマットを作成する。前述したように、配信フォーマットは、メディアを配信フォーマットBにフォーマットすることによってクライアントに配信することができるメディアフォーマットである。配信フォーマットBは、クライアントデバイス108にストリーミングされる準備ができているフォーマットである。処理モジュール102は、特定のメディアオブジェクトがクライアントデバイス108に既にストリーミングされているかどうかを決定するための意思決定プロセスを実行する最適化再使用ロジック121を含むことができる。処理モジュール102及び最適化再使用ロジック121の動作は、図1Bを参照して詳細に説明される。
【0031】
メディアフォーマットA及びBは、特定のメディアフォーマット仕様の同じシンタックスに従う表示であってもなくてもよいが、フォーマットBは、ネットワークプロトコルを介したメディアの配信を容易にする方式に調整される可能性が高い。ネットワークプロトコルは、例えば、コネクション型プロトコル(TCP)又はコネクションレス型プロトコル(UDP)であってもよい。配信モジュール103は、ネットワーク接続105を介してネットワークデバイス104からクライアントデバイス108にストリーミング可能メディア(すなわち、メディアフォーマットB)をストリーミングする。
【0032】
クライアントデバイス108は、配信メディアを受け取り、必要に応じてレンダリングモジュール106を介してプレゼンテーションのためにメディアを準備する。レンダリングモジュール106は、ターゲットとされているクライアントデバイス108に応じて、初歩的又は同様に洗練されたものであり得る幾つかのレンダリング機能にアクセスすることができる。レンダリングモジュール106は、プレゼンテーションフォーマットCでプレゼンテーションメディアを作成する。プレゼンテーションフォーマットCは、第3のフォーマット仕様に従って表示されてもされなくてもよい。したがって、プレゼンテーションフォーマットCは、メディアフォーマットA及び/又はBと同じであっても異なっていてもよい。レンダリングモジュール106は、プレゼンテーションフォーマットCをプレゼンテーションモジュール107へ出力し、プレゼンテーションモジュールは、クライアントデバイス108のディスプレイ(又は同様のもの)内にプレゼンテーションメディアをプレゼンテーションすることができる。
【0033】
本開示の実施形態は、ネットワークからクライアントにアセットをパッケージングしてストリーミングするシーケンス順序を計算するためにネットワークによって用いられる意思決定プロセスを容易にする。この場合、プレゼンテーションを構成する1つ以上のシーンのセットにわたって利用される全てのアセットは、メディア再使用解析器によって解析されて、プレゼンテーションを構成する全てのシーンにわたって各アセットが使用される頻度を決定する。したがって、特定のシーンのアセットがパッケージングされてクライアントにストリーミングされる順序は、プレゼンテーションを構成するシーンのセットにわたって各アセットが使用される頻度に基づくことができる。
【0034】
実施形態は、没入型メディアシーンを解析して、ネットワーク又はクライアントによって使用されるときに、フォーマットAからフォーマットBへのメディアオブジェクトの変換が完全にネットワークによって実行されるべきか、完全にクライアントによって実行されるべきか、又は両方の混合を介して(どのアセットがクライアント又はネットワークによって変換されるべきかの指示と共に)実行されるべきかに関する指示を提供する意思決定プロセスをサポートするために使用され得る十分な情報を取得する機構又はプロセスの必要性に対処する。そのような没入型メディアデータ複雑度解析器は、自動化されたコンテキストでクライアント又はネットワークのいずれかによって、又は例えば人間がシステム又はデバイスを操作することによって手動で使用することができる。
【0035】
実施形態によれば、入力没入型メディアソースを特定のエンドポイントクライアントデバイスに適合させるプロセスは、同じ入力没入型メディアソースを特定のクライアントエンドポイントデバイス上で実行されている特定のアプリケーションに適合させるプロセスと同じ又は同様であり得る。したがって、入力メディアソースをエンドポイントデバイスの特性に適合させる問題は、特定の入力メディアソースを特定のアプリケーションの特性に適合させる問題と同じ複雑さである。
【0036】
図1Bは、実施形態による、処理モジュール102のワークフローである。より具体的には、図1Bのワークフローは、特定のメディアオブジェクトがクライアントデバイス108に既にストリーミングされているかどうかを決定するための意思決定プロセスを支援するために最適化再使用ロジック121によって実行される再使用ロジックの意思決定プロセスである。
【0037】
S101では、配信メディア作成プロセスを実行する。したがって、再使用ロジック意思決定プロセスも開始する。S102において、現在のメディアオブジェクトが既にクライアントデバイス108にストリーミングされたかどうかを決定するために条件ロジックが実行される。最適化再使用ロジック121は、メディアオブジェクトが既にクライアントにストリーミングされているかどうかを決定するために、プレゼンテーションのための固有のアセットのリストにアクセスすることができる。現在のメディアオブジェクトが既にストリーミングされている場合、処理はS103に進む。S103において、クライアントが現在のメディアオブジェクトを既に受信しており、ローカルキャッシュ又は他のキャッシュからメディアオブジェクトのコピーにアクセスすべきであることを識別するためのインジケータ(後に「プロキシ」とも呼ばれる)が作成される。その後、処理は、現在のメディアオブジェクトについて終了する(S104)。
【0038】
メディアオブジェクトが過去にストリーミングされていないと決定された場合、処理はS105に進む。S105において、処理モジュール102は、変換及び/又は配信のためにメディアオブジェクトを準備し続け、メディアオブジェクトのための配信フォーマットが作成される。その後、S104に進み、処理を終了する。
【0039】
図2Aは、ネットワークを介して取り込まれたメディアを処理するための論理ワークフローである。図2Aに示すワークフローは、実施形態によるメディア変換意思決定プロセス200を示す。メディア変換意思決定プロセス200は、クライアントデバイスにメディアを配信する前にネットワークがメディアを変換すべきかどうかを決定するために用いられる。メディア変換意思決定プロセス200は、ネットワーク内の手動又は自動プロセスを介して処理することができる。
【0040】
フォーマットAで表されるインジェストメディアは、コンテンツプロバイダによってネットワークに提供される。S201において、メディアは、コンテンツプロバイダからネットワークによって取り込まれる。次に、S202において、まだ知られていない場合、ターゲットクライアントの属性が取得される。属性は、ターゲットクライアントの処理能力を記述する。
【0041】
S203において、ネットワーク(又はクライアント)が、取り込まれたメディアの変換を支援すべきかどうかが決定される。特に、メディアがターゲットクライアントにストリーミングされる前に、取り込まれたメディア内に含まれるメディアアセットのいずれかに対するフォーマット変換(例えば、フォーマットAからフォーマットBへの1つ以上のメディアオブジェクトの変換)があるかどうかが決定される。S203の意思決定プロセスは、手動で(すなわち、デバイスオペレータなどによって)行われてもよく、自動化された処理であってもよい。S203における意思決定プロセスは、メディアがその元の取り込まれたフォーマットAでストリーミングされ得るかどうか、又はクライアントによるメディアのプレゼンテーションを容易にするために異なるフォーマットBに変換されなければならないかどうかの決定に基づくことができる。そのような決定は、(すなわち、メディアをクライアントにストリーミングする前にインジェストメディアの変換が必要であるかどうか、又はメディアをクライアントに直接その元のインジェストフォーマットAでストリーミングする必要があるかどうかを決定するために)最適な選択を行うための意思決定プロセスを支援するように、インジェストメディアの態様又は特徴を記述する情報へのアクセスを必要とする場合がある。
【0042】
ネットワーク(又はクライアント)がいずれかのメディアアセットの変換を支援すべきであると決定される場合(S203でYES)、プロセス200はS204に進む。
【0043】
S204において、取り込まれたメディアは、メディアをフォーマットAからフォーマットBに変換して、変換されたメディア205を生成する。変換後のメディア205を出力し、S206に進む。S206において、入力メディアは、メディアをクライアントにストリーミングするための準備プロセスを受ける。この場合、変換メディア205(すなわち、入力メディア)がストリーミングされるように準備される。
【0044】
没入型メディアのストリーミングは、特にそのようなメディアが「フレームベース」ではなく「シーンベース」である場合、比較的初期段階であり得る。例えば、フレームベースのメディアのストリーミングは、ビデオのフレームのストリーミングと同等となり得ることができ、各フレームは、シーン全体の完全なピクチャ又はクライアントによってプレゼンテーションされるオブジェクト全体の完全なピクチャを捕捉する。フレームのシーケンスは、それらの圧縮形式からクライアントによって再構成され、視聴者にプレゼンテーションされると、没入型プレゼンテーション全体又はプレゼンテーションの一部を含むビデオシーケンスを作成する。フレームベースのストリーミングの場合、フレームがネットワークからクライアントにストリーミングされる順序は、所定の仕様(例えば、汎用オーディオビジュアルサービスのためのITU-T勧告H.264アドバンストビデオコーディング等)と一致し得る。しかしながら、シーンは、それ自体が互いに独立していてもよい個々のアセットから構成されてもよいので、メディアのシーンベースのストリーミングは、フレームベースのストリーミングとは異なる。所与のシーンベースのアセットは、特定のシーン内で、又は一連のシーンにわたって複数回使用することができる。クライアント、又は任意の所与のレンダラが特定のアセットを再構築するのに費やす必要がある時間量は、アセットのサイズ、レンダリングを実行する計算リソースの可用性、及びアセットの全体的な複雑さを記述する他の属性を含むがこれらに限定されない多くの要因に依存し得る。シーンベースのストリーミングをサポートするクライアントは、シーン内のアセットごとのレンダリングの一部又は全部が、シーンのプレゼンテーションのいずれかが開始できる前に完了することを必要とする場合がある。したがって、アセットがネットワークからクライアントにストリーミングされる順序は、システムの全体的な性能に影響を及ぼす可能性がある。
【0045】
フォーマットAから別のフォーマット(例えば、フォーマットB)へのメディアの変換は、完全にネットワークによって、完全にクライアントによって、又はネットワークとクライアントとの両方の間で共同で行われ得る。分割レンダリングでは、クライアントとネットワークの両方が行わなければならない作業を特徴付ける完全な情報を有するように、メディアフォーマットを記述する属性の辞書が必要とされ得ることが明らかになる。更に、例えば、利用可能な計算リソース、利用可能なストレージリソース、及び帯域幅へのアクセスに関して、クライアントの能力の属性を提供する辞書が同様に必要とされ得る。更に、インジェストメディアフォーマットの計算、記憶、又は帯域幅の複雑さのレベルを特徴付ける機構が必要とされ、その結果、ネットワークとクライアントが一緒に、又は単独で、ネットワークがクライアントにメディアを配信するための分割レンダリングプロセスを採用するかどうか、又はいつ採用するかを決定することができる。
【0046】
ネットワーク(又はクライアント)がいずれのメディアアセットの変換も支援すべきでない(又は支援する必要がない)と決定される場合(S203でNO)、プロセス200はS206に進む。S206において、メディアはストリーミングのために準備される。この場合、取り込まれたデータ(すなわち、元の形態のメディア)がストリーミングされるように準備される。
【0047】
最後に、メディアデータがストリーミング可能なフォーマットになると、S206で準備されたメディアがクライアントにストリーミングされる(S207)。幾つかの実施形態では、(図1Bを参照して説明したように)メディアのプレゼンテーションを完了するためにクライアントによって必要とされるか、又は必要とされる特定のメディアオブジェクトの変換及び/又はストリーミングが回避され得る場合、クライアントのメディアのプレゼンテーションを完了するために必要とされ得るメディアオブジェクトへのアクセス又は利用可能性をクライアントが依然として有すると仮定して、ネットワークは、インジェストメディアの変換及び/又はストリーミングをスキップすることができる(すなわち、S204~S207)。クライアントがその最大限の能力で実行する能力を促進するために、シーンベースのアセットがネットワークからクライアントにストリーミングされる順序に関して、ネットワークがクライアントのパフォーマンスを向上させるためにそのような順序を決定できるように、ネットワークが十分な情報を備えることが望ましい場合がある。例えば、特定のプレゼンテーションにおいて複数回使用されるアセットの反復的な変換及び/又はストリーミングステップを回避するのに十分な情報を有するそのようなネットワークは、このように設計されていないネットワークよりも最適に実行することができる。同様に、クライアントへのアセットの配信を「インテリジェントに」順序付けることができるネットワークは、クライアントがその十分な潜在力で実行する能力を促進することができる(すなわち、エンドユーザにとってより楽しむことができる体験を作り出すために)。
【0048】
図2Bは、実施形態に係るアセット再使用ロジック210によるメディア変換意思決定プロセスである。メディア変換意思決定プロセス200と同様に、アセット再使用ロジック210を用いたメディア変換意思決定プロセスは、ネットワークを介してインジェストメディアを処理し、クライアントにメディアを配信する前にネットワークがメディアを変換すべきかどうか決定するために、2つの意思決定プロセスを用いる。
【0049】
フォーマットAで表されるインジェストメディアは、コンテンツプロバイダによってネットワークに提供される。その後、S221~222が実行され、S221~222はS201~S202と同様である(図2Aに示す)。S221において、メディアは、コンテンツプロバイダからネットワークによって取り込まれる。次に、S202において、まだ知られていない場合、ターゲットクライアントの属性が取得される。属性は、ターゲットクライアントの処理能力を記述する。
【0050】
ネットワークが既に特定のメディアオブジェクト又は現在のメディアオブジェクトをストリーミングしたと決定される場合(S223でYES)、プロセスはS224に進む。S224において、クライアントが既にストリーミングされたオブジェクトのローカルコピーを使用すべきであることを示すために、既にストリーミングされたメディアオブジェクトを置き換えるプロキシが作成される。
【0051】
ネットワークが特定のメディアオブジェクトを既にストリーミングしていないと決定された場合(S223でNO)、処理はS225に進む。S225において、ネットワーク又はクライアントが、S221において、取り込まれたメディア内に含まれるメディアアセットのいずれかに対して任意のフォーマット変換を実行すべきかどうかが決定される。例えば、変換は、メディアがクライアントにストリーミングされる前に、特定のメディアオブジェクトをフォーマットAからフォーマットBに変換することを含むことができる。S225で行われる処理は、図2Aに示すSS203で行われる処理と同様であり得る。
【0052】
メディアアセットがネットワークにより変換されるべきと決定される場合(S225でYES)、S226へ進む。S226において、メディアオブジェクトは、フォーマットAからフォーマットBに変換される。次に、変換されたメディアは、クライアントにストリーミングされるように準備される(S227)。
【0053】
メディアアセットがネットワークにより変換されるべきでないと決定される場合(S225でNO)、S227へ進む。次に、S227において、メディアオブジェクトは、クライアントにストリーミングされるように準備される。
【0054】
最後に、メディアデータがストリーミング可能なフォーマットになると、S227で準備されたメディアがクライアントにストリーミングされる(S228)。図2BのS225-S228で実行される処理は、図2Aに示すS203-S207で実行される処理と同様であり得る。
【0055】
メディアのストリーミング可能フォーマットは、時限又は非時限の異種没入型メディアであってもよい。図3Aは、異種没入型メディアのストリーミング可能フォーマットの時限メディア表示300の例を示す。時限没入型メディアは、N個のシーンのセットを含むことができる。時限メディアは、例えば、特定のクロックに従った開始時間及び終了時間で、時間によって順序付けられたメディアコンテンツである。図4は、異種没入型メディアのストリーミング可能フォーマットの非時限メディア表示400の例を示す。非時限メディアは、(例えば、1人又は複数のユーザによって行われたアクションに従って実現されるインタラクティブな体験の場合のような)空間的、論理的、又は時間的関係によって編成されたメディアコンテンツである。
【0056】
図3Aは、時限メディアのための時限シーンを示し、図4は、非時限メディアのための非時限シーンを示す。時限シーン及び非時限シーンは、様々なシーン表示又はシーン記述によって具体化することができる。図3図4は両方とも、特定のクライアントエンドポイントの能力に一致するようにソースインジェストメディアフォーマットから適合された単一の例示的な包含メディアフォーマットを採用する。すなわち、包含するメディアフォーマットは、クライアントデバイスにストリーミング可能な配信フォーマットである。包含するメディアフォーマットは、その構造において、多種多様なメディア属性に対応するのに十分にロバスト性が高く、各層がメディアのプレゼンテーションに寄与する顕著な情報の量に基づいて、それぞれを階層化することができる。
【0057】
図3Aに示すように、時限メディア表示300は、シーン情報301のリストを含む時限シーンマニフェスト300Aを含む。シーン情報301は、シーン情報301を構成する処理情報及びメディアアセットの種類を別々に記述する構成要素302のリストを示す。例えば、アセットリストやその他の処理情報である。構成要素302のリストは、アセットのタイプ(例えば、図3Aに示すように、プロキシ視覚及びオーディオアセット)に対応するプロキシアセット308を指す。構成要素302は、他のシーンで既に使用されたことがない固有アセットのリストを指す。例えば、(時限)シーン1に関する固有アセット307のリストが図3Aに示されている。構成要素302はまた、ベース層304及び属性拡張層305を含むアセット303を指す。ベース層は、計算リソース、アセットをレンダリングするのに必要な時間、及び/又はネットワークを介してアセットを送信するのに必要な時間を最小限に抑えるように定式化できるアセットの公称表示である。この例示的な実施形態では、ベース層304のそれぞれは、プレゼンテーションを含むシーンのセットにわたってアセットが使用された回数を示す数的頻度メトリックを指す。拡張層は、アセットのベース層表示に適用されると、ベース層でサポートされない可能性がある機能又は能力を含むようにベース層を拡張する情報のセットであってもよい。
【0058】
図3Bは、頻度3030を減少させることによって順序付けられた時限メディア表示を示す。この時限メディア表示は、図3Aに示されているものと同じ表示であるが、図3Bのアセット3033は、各アセットタイプ内のアセットタイプと降順頻度値によりリストで順序付けられる。時限シーンマニフェスト303Aは、シーン情報3031のリストを含む。シーン情報3031のリストは、シーン情報3031のリストを含む処理情報及びメディアアセットのタイプを別々に記述する構成要素3032のリストを指す。例えば、アセットリストやその他の処理情報である。構成要素3032は、アセットのタイプ(例えば、図3Bに示すように、プロキシ視覚及びオーディオアセット)に対応するプロキシアセット3038を参照できる。構成要素3032は、ベース層3034及び属性拡張層3035を更に示すアセット3033を指す。ベース層3034のそれぞれは、対応する頻度メトリックにおける降順値に従って順序付けられる。他のシーンで既に使用されたことがない固有アセット3037のリストも提供される。
【0059】
図4に示すように、非時限メディア及び複雑度表示400はシーン情報401を含む。シーン情報401は、(クロック、タイマなどに従って)開始及び終了時間/継続時間と関連付けられない。非時限シーンマニフェスト(図示せず)は、シーン1.0に分岐することができる他のシーンがないシーン1.0を参照することができる。シーン情報401は、シーン情報401を構成する処理情報及びメディアアセットの種類を別々に記述する構成要素402のリストを指す。構成要素402は、視角アセット、オーディオアセット、触覚アセット、及び時限アセット(アセット403と総称する)を指す。アセット403は、ベース層404並びに属性拡張層405及び406を更に指す。この例示的な実施形態では、ベース層404のそれぞれは、プレゼンテーションを構成するシーンのセットにわたってアセットが使用された回数を示す数的頻度値を指す。シーン情報401はまた、非時限メディアソースのためのものである他の非時限シーン(すなわち、図4では非時限シーン2.1~2.4として参照される)及び/又は時限メディアシーン(すなわち、図4において時限シーン3.0として参照される)のためのものであるシーン情報407を指すことができる。図4の例では、非時限没入型メディアは、5つのシーンのセット(同期及び非時限の両方を含む)を含む。固有アセット408のリストは、より高次の(例えば、親)シーンで既に使用されたことがない特定のシーンに関連付けられた固有アセットを識別する。図4に示す固有アセット408のリストは、非時限シーン2.3の固有アセットを含む。
【0060】
図4Bは、非時限メディア及び順序付き複雑度表示4040を示す。非時限シーンマニフェスト(図示せず)は、シーン1.0に分岐することができる他のシーンがないシーン1.0を参照する。シーン情報4041には、クロックに応じた開始時間及び終了時間が関連付けられない。シーン情報4041はまた、シーン情報4041を構成する処理情報及びメディアアセットのタイプを別々に記述する構成要素4042のリストを指す。構成要素4042は、視角アセット、オーディオアセット、触覚アセット、及び時限アセット(アセット4043と総称することもある)を指す。アセット4043は、ベース層4044並びに属性拡張層4045及び4046を更に指す。この例示的な実施形態では、触覚アセット4043は頻度値を増加させることによって編成され、オーディオアセット4043は頻度値を減少させることによって編成される。また、シーン情報4041は、非時限メディア用の他の非時限シーン情報4041を指す。シーン情報4041は、時限メディアのための他の時限シーン情報4047も指す。固有アセット4048のリストは、より高次の(例えば、親)シーンで既に使用されたことがない特定のシーンに関連付けられた固有アセットを識別する。
【0061】
包含するメディアフォーマットに従ってストリーミングされるメディアは、レガシービジュアル及びオーディオメディアに限定されない。包含するメディアフォーマットは、機械と相互作用して人間の視覚、音、味、触覚、及び匂いを刺激する信号を生成することができる任意のタイプのメディア情報を含むことができる。図3図4に示すように、包含するメディアフォーマットに従ってストリーミングされるメディアは、時限メディアもしくは非時限メディア、又は両方の混合であってもよい。包含するメディアフォーマットは、ベース層及び拡張層アーキテクチャを使用して、メディアオブジェクトの階層表示を可能にすることによって、ストリーミング可能である。
【0062】
幾つかの実施形態では、別個のベース層及び拡張層は、各シーン内のメディアオブジェクトに対する多重解像度又は多重モザイク化解析技術の適用によって計算される。この計算技術は、ラスタベースの視覚フォーマットに限定されない。
【0063】
幾つかの実施形態では、幾何学的オブジェクトのプログレッシブ表示は、ウェーブレット解析技術を使用して計算されたオブジェクトの多重解像度表示であり得る。
【0064】
幾つかの実施形態では、階層化表示メディアフォーマットにおいて、拡張層は、ベース層に異なる属性を適用することができる。例えば、1つ以上の拡張層は、ベース層によって表される視覚物体の表面の材料特性を改良することができる。
【0065】
幾つかの実施形態では、層状表示メディアフォーマットでは、属性は、例えば、表面を滑らかなテクスチャから多孔質テクスチャに、又はつや消しの表面から光沢のある表面に変更することによって、ベース層によって表されるオブジェクトの表面のテクスチャを精緻化することができる。
【0066】
幾つかの実施形態では、階層化表示メディアフォーマットにおいて、シーン内の1つ以上の視覚オブジェクトの表面は、ランバート面から光線追跡可能な面に変更されてもよい。
【0067】
幾つかの実施形態では、階層化表示メディアフォーマットにおいて、ネットワークは、クライアントがシーンの名目プレゼンテーションを作成することができるようにベース層表示をクライアントに配信することができ、クライアントは、ベース層の解像度又は他の特性を改良するために追加の拡張層の送信を待つ。
【0068】
実施形態では、拡張層内の属性の解像度又は精緻化情報は、ベース層内のオブジェクトの解像度と明示的に結合されない。更に、包含するメディアフォーマットは、プレゼンテーションデバイス又はマシンによってプレゼンテーション又は作動され得る任意のタイプの情報メディアをサポートすることができ、それによって異種クライアントエンドポイントへの異種メディアフォーマットのサポートを可能にする。幾つかの実施形態では、メディアフォーマットを配信するネットワークは、最初にクライアントエンドポイントに問い合わせてクライアントの能力を決定する。問い合わせに基づいて、クライアントがメディア表示を有意に取り込むことができない場合、ネットワークは、クライアントによってサポートされていない属性の層を除去することができる。幾つかの実施形態では、クライアントがメディア表示を有意に取り込むことができない場合、ネットワークは、メディアをその現在のフォーマットからクライアントエンドポイントに適したフォーマットに適合させることができる。例えば、ネットワークは、ネットワークベースのメディア処理プロトコルを使用して、立体的なビジュアルメディアアセットを同じ視角アセットの2D表示に変換することによってメディアを適応させることができる。幾つかの実施形態では、ネットワークは、適切なフォーマットにメディアを再フォーマットするためにニューラルネットワーク(NN)プロセスを採用することによって、又は任意選択的にクライアントエンドポイントによって必要とされるビューを合成することによって、メディアを適合させることができる。
【0069】
完全な(又は部分的に完全な)没入型体験(ライブストリーミングイベント、ゲーム、又はオンデマンドアセットの再生)のためのシーンのマニフェストは、プレゼンテーションを作成するためにレンダリング及び取り込みに必要な最小限の量の情報を含むシーンによって編成される。シーンのマニフェストは、クライアントによって要求された没入体験の全体についてレンダリングされる個々のシーンのリストを含む。各シーンには、シーンジオメトリのストリーミング可能なバージョンに対応するシーン内の幾何学的オブジェクトの1つ以上の表示が関連付けられる。シーンの一実施形態は、シーンの幾何学的オブジェクトの低解像度バージョンを指すことができる。同じシーンの別の実施形態は、同じシーンの幾何学的オブジェクトの更なる詳細を追加する、又はモザイク化を増加させるために、シーンの低解像度表示のための拡張層を参照することができる。前述したように、各シーンは、シーンの幾何学的オブジェクトの詳細を漸進的に増加させるために1つ以上の拡張層を有することができる。シーン内で参照されるメディアオブジェクトの各層は、リソースがネットワーク内でアクセスされ得る場所のアドレスを指すトークン(例えば、ユニフォームリソース識別子(URI))に関連付けられ得る。そのようなリソースは、コンテンツがクライアントによってフェッチされ得るコンテンツ配信ネットワーク(CDN)に類似している。幾何学的オブジェクトの表示のためのトークンは、ネットワーク内の位置又はクライアント内の位置を指してもよい。すなわち、クライアントは、そのリソースがネットワークベースのメディア処理のためにネットワークに利用可能であることをネットワークにシグナリングしてもよい。
【0070】
実施形態によれば、シーン(時限又は非時限)は、多平面画像(MPI)又は多球面画像(MSI)としてシーングラフによって具現化され得る。MPI及びMSI技術の両方は、自然コンテンツ(すなわち1つ以上のカメラから同時に捕捉された現実世界の画像)についてディスプレイに依存しないシーン表示の作成を支援する技術の例である。一方、シーングラフ技術は、合成表示の形態で自然画像とコンピュータ生成画像の両方を表すために使用され得る。しかしながら、そのような表示は、コンテンツが1つ以上のカメラによって自然なシーンとして捕捉される場合に作成するために特に計算集約的である。自然に捕捉されたコンテンツのシーングラフ表示は、時間と計算の両方が集中して作成され、ターゲットの没入型クライアントディスプレイの視錐台を満たすのに十分かつ適切な数のビューを補間するために後で使用できる合成表示を作成するために、写真測量又はディープラーニング又はその両方の技術を用いた自然画像の複雑な解析を必要とする。その結果、そのような合成表示は、リアルタイム配信を必要とするユースケースを考慮してリアルタイムで実際に作成することができないため、自然コンテンツを表示するための候補として考慮するには非現実的である。したがって、コンピュータ生成画像の最良の表示は、合成モデルでシーングラフを使用することである。これは、コンピュータ生成画像が3Dモデリングプロセス及びツールを使用して作成され、合成モデルでシーングラフを使用すると、コンピュータ生成画像の最良の表示が得られるからである。
【0071】
図5は、実施形態に係る、自然メディア合成プロセス500の一例を示す。自然メディア合成プロセス500は、自然シーンからのインジェストフォーマットを、異種クライアントエンドポイントにサービスを提供するネットワークのインジェストフォーマットとして使用することができる表示に変換する。破線510の左側は、自然メディア合成プロセス500のコンテンツ捕捉部分である。破線510の右側は、自然メディア合成プロセス500のインジェストフォーマット合成(自然画像用)である。
【0072】
図5に示すように、第1のカメラ501は、単カメラレンズを用いて、例えば人物(すなわち、図5に示すアクター)のシーンを捕捉する。第2のカメラ502は、リング状の物体の周囲に5つのカメラレンズを装着して、5つの発散する視野でシーンを捕捉する。図5に示す第2のカメラ502の配置は、VRアプリケーション用の全方向コンテンツを捕捉するために一般的に使用される例示的な配置である。第3のカメラ503は、球の内径部に7個のカメラレンズを装着することで、7個の視野が収束するシーンを捕捉する。第3のカメラ503の配置は、光照射野又はホログラフィック没入型ディスプレイのための光照射野を捕捉するために一般的に使用される例示的な配置である。実施形態は、図5に示す構成に限定されない。第2のカメラ502及び第3のカメラ503は、複数のカメラレンズを含んでもよい。
【0073】
自然画像コンテンツ509は、第1のカメラ501、第2のカメラ502、及び第3のカメラ503から出力され、合成器504への入力となる。合成器504は、キャプチャNNモデル508を生成するために、訓練画像506の集合を使用するNN訓練505を使用することができる。訓練画像506は、事前定義されてもよく、又は前の合成処理から記憶されてもよい。NNモデル(例えば、キャプチャNNモデル508)は、元の信号によって明示的に提供されなかった視覚信号の新しいビューの補間を含むことができる改善された視覚出力に到達するために視覚信号に適用される明確に定義された数学的演算で使用される重み(すなわち、数値)を定義するパラメータ及びテンソル(例えば、行列)の集合である。
【0074】
幾つかの実施形態では、NN訓練505の代わりに写真測量プロセスを実施することができる。キャプチャNNモデル508が自然メディア合成プロセス500中に作成される場合、キャプチャNNモデル508は、自然メディアコンテンツのインジェストフォーマット507におけるアセットのうちの1つになる。インジェストフォーマット507は、例えば、MPIやMSIであってもよい。インジェストフォーマット507は、メディアアセットも含み得る。
【0075】
図6は、実施形態に係る、合成メディアインジェスト作成プロセス600の一例を示す。合成メディアインジェスト作成プロセス600は、例えばコンピュータ生成画像などの合成メディア用のインジェストメディアフォーマットを作成する。
【0076】
図6に示すように、カメラ601は、シーンの点群602を取り込むことができる。カメラ601は、例えばLIDARカメラであってもよい。コンピュータ603は、例えば、共通ゲートウェイインタフェース(CGI)ツール、3Dモデリングツール、又は別のアニメーションプロセスを使用して、合成コンテンツ(すなわち、異種クライアントエンドポイントにサービスするネットワークのインジェストフォーマットとして使用することができる合成シーンの表示)を作成する。コンピュータ603は、ネットワークを介してCGIアセット604を作成することができる。更に、センサ605Aは、シーン内のアクター605に装着されてもよい。センサ605Aは、例えば、センサが取り付けられたモーションキャプチャスーツであってもよい。センサ605Aは、アクター605の動きのデジタル記録を捕捉して、アニメーション化された動きデータ606(又はMoCapデータ)を生成する。点群602、CGIアセット604、及び動きデータ606からのデータは、合成メディアインジェストフォーマット608を作成する合成器607への入力として提供される。幾つかの実施形態では、合成器607は、NN及び訓練データを使用してNNモデルを作成し、合成メディアインジェストフォーマット608を生成することができる。
【0077】
自然コンテンツ及びコンピュータ生成(すなわち、合成)コンテンツの両方を、コンテナに保存することができる。コンテナは、シーングラフ及びシーンのレンダリングに必要な全てのメディアリソースを含む全ての自然、全ての合成、又は合成と自然のシーンの混合を表す情報を記憶及び交換するための直列化フォーマットを含むことができる。コンテンツの直列化プロセスは、データ構造又はオブジェクト状態を、記憶(例えば、ファイル又はメモリバッファ)又は送信(例えば、ネットワーク接続リンクを介して)し、同じ又は異なるコンピュータ環境で後で再構築することができるフォーマットに変換することを含む。結果として得られた一連のビットが直列化フォーマットに従って再読み取りされると、元のオブジェクトの意味的に同一のクローンを作成するためにそれが使用され得る。
【0078】
自然コンテンツとコンピュータ生成(すなわち、合成)コンテンツの両方の最適な表示の2分法は、自然に捕捉されたコンテンツの最適なインジェストフォーマットが、コンピュータ生成コンテンツ又はリアルタイム配信アプリケーションに必須ではない自然コンテンツの最適なインジェストフォーマットとは異なることを示唆している。したがって、実施形態によれば、ネットワークは、例えば物理カメラを使用して自然に作成されるかコンピュータによって作成されるかにかかわらず、視覚的に没入可能なメディアのための複数のインジェストフォーマットをサポートするのに十分にロバスト性が高いことを目標とする。
【0079】
OTOYによるORBX、PixarによるUniversal Scene Description、及びKhronos 3D Groupによって書かれたGraphics Language Transmission Format 2.0(glTF2.0)仕様などの技術は、コンピュータ生成技術を使用して作成される視覚的没入型メディア、又は自然景観の対応する合成表示を作成するために深層学習又は写真測量技術が使用される自然に捕捉されたコンテンツを表すのに適したフォーマットとしてシーングラフを具現化する(すなわち、リアルタイム配信アプリケーションには必須ではない)。
【0080】
OTOYによるORBXは、レイトレース可能、レガシー(フレームベース)、立体及び他のタイプの、合成又はベクトルベースのビジュアルフォーマットを含む時限又は非時限の任意のタイプのビジュアルメディアをサポートすることができる幾つかのシーングラフ技術のうちの1つである。ORBXは、メッシュ、点群及びテクスチャ用の自由に利用可能な及び/又はオープンソースフォーマットをネイティブにサポートするので、他のシーングラフとは異なる。ORBXは、シーングラフ上で動作する複数のベンダ技術にわたる交換を容易にすることを目的として意図的に設計されたシーングラフである。更に、ORBXは、豊富な素材システム、オープンシェーダ言語のサポート、ロバスト性が高いカメラシステム、及びLuaスクリプトのサポートを提供する。ORBXはまた、没入型デジタル体験アライアンス(IDEA)によって使用料無料の条件でライセンスのために公開された没入型技術メディアフォーマットの基礎でもある。メディアのリアルタイム配信の状況では、自然なシーンのORBX表示を作成及び配信する能力は、カメラによって捕捉されたデータの複雑な解析及び同じデータの合成表示への合成を実行するための計算リソースの利用可能性の関数である。
【0081】
PixarによるUSDは、ビジュアルエフェクトやプロのコンテンツ制作で広く用いられているシーングラフである。USDは、Nvidiaのグラフィック処理ユニット(GPU)を用いた3Dモデル作成及びレンダリングのための開発者向けツールセットであるNvidiaのOmniverseプラットフォームに組み込まれる。Apple及びPixarによって公開されたUSDのサブセットは、AppleのARKitによってサポートされているUSDZと呼ばれる。
【0082】
glTF2.0は、Khronos 3D Groupが記述したGraphics Language Transmission Format仕様のバージョンである。このフォーマットは、PNG及びJPEG画像フォーマットを含む、一般にシーン内の静的(非時限)オブジェクトをサポートすることができる単純なシーングラフフォーマットをサポートする。glTF2.0は、単純なアニメーションをサポートしており、これは、glTFプリミティブを使用して記述された基本形状、すなわち幾何学的オブジェクトの並進、回転及びスケーリングのサポートを含む。glTF2.0は、時限メディアをサポートしておらず、したがって、ビデオメディア入力もオーディオメディア入力もサポートしていない。
【0083】
没入型視覚メディアのシーン表示のためのこれらの設計は、例えば提供されているにすぎず、入力没入型メディアソースをクライアントエンドポイントデバイスの特定の特性に適したフォーマットに適合させるプロセスを指定するその能力において開示された主題を限定するものではない。更に、上記の例示的なメディア表示のいずれか又は全ては、錐台の特定の寸法に基づいて特定のディスプレイの視錐台を満たすために特定のビューの選択を可能にするか又は容易にするNNモデルを訓練し作成するために深層学習技術を使用するか、又は使用することができる。特定のディスプレイの視錐台のために選択されるビューは、シーン表示で明示的に提供される既存のビューから、例えばMSI又はMPI技術から補間されてもよい。ビューはまた、特定の仮想カメラ位置、フィルタ、又はこれらのレンダリングエンジンの仮想カメラの記述に基づいて、レンダリングエンジンから直接レンダリングされてもよい。
【0084】
本開示の方法及びデバイスは、自然に(例えば、1つ以上のカメラを用いて)取り込まれるか、又はコンピュータ生成技術を使用して作成されるメディアのリアルタイム又はオンデマンド(例えば、非リアルタイム)配信の要件を十分に満たすことができる、比較的小さいが周知の没入型メディアインジェストフォーマットのセットがあることを考慮するのに十分にロバスト性が高い。
【0085】
NNモデル又はネットワークベースのレンダリングエンジンのいずれかの使用による没入型メディアインジェストフォーマットからのビューの補間は、高度なネットワーク技術(例えば、モバイルネットワーク用の5G)として更に容易になり、光ファイバケーブルは固定ネットワークに配備される。これらの高度なネットワーク技術は、そのような高度なネットワークインフラストラクチャがますます大量の視覚情報の伝送及び配信をサポートすることができるため、商用ネットワークの容量及び能力を高める。マルチアクセスエッジコンピューティング(MEC)、ソフトウェア定義ネットワーク(SDN)、及びネットワーク機能仮想化(NFV)などのネットワークインフラ管理技術は、商用ネットワークサービスプロバイダが、特定のネットワークリソースに対する需要の変化に適応するように、例えば、ネットワークスループット、ネットワーク速度、往復遅延、及び計算リソースに対する需要の動的な増減に応答するように、それらのネットワークインフラを柔軟に構成することを可能にする。更に、動的ネットワーク要件に適応するこの固有の能力は、同様に、異種クライアントエンドポイント用の潜在的に異種のビジュアルメディアフォーマットを有する様々な没入型メディアアプリケーションをサポートするために、没入型メディアインジェストフォーマットを適切な配信フォーマットに適応させるネットワークの能力を容易にする。
【0086】
没入型メディアアプリケーション自体はまた、ゲームの状態でリアルタイム更新に応答するために著しく低いネットワーク待ち時間を必要とするゲームアプリケーション、ネットワークのアップリンク部分及びダウンリンク部分の両方に対して対称的なスループット要件を有するテレプレゼンスアプリケーション、及びデータを消費しているクライアントのエンドポイントのディスプレイのタイプに応じてダウンリンクリソースに対する需要が増加する可能性のある受動的閲覧アプリケーションを含む、ネットワークリソースに対する様々な要件を有してもよい。一般に、任意の消費者向けアプリケーションは、記憶、計算、及び電力のための様々なオンボードクライアント機能、並びに同様に特定のメディア表示のための様々な要件を有する様々なクライアントエンドポイントによってサポートされ得る。
【0087】
したがって、本開示の実施形態は、十分に装備されたネットワーク、すなわち、最新のネットワークの特性の一部又は全てを使用するネットワークが、デバイス内で指定された特徴に従って複数のレガシー及び没入型メディア対応デバイスを同時にサポートできるようにする。したがって、本明細書に記載の没入型メディア配信方法及びプロセスは、メディアの配信のためのリアルタイム及びオンデマンドのユースケースの両方に実用的なメディアインジェストフォーマットを活用する柔軟性、レガシー及び没入型メディア対応クライアントエンドポイントの両方の自然及びコンピュータ生成コンテンツの両方をサポートする柔軟性、並びに時限メディア及び非時限メディアの両方をサポートする柔軟性を提供する。本方法及びプロセスはまた、クライアントエンドポイントの機能及び能力に基づいて、並びにアプリケーションの要件に基づいて、ソースメディアインジェストフォーマットを適切な配信フォーマットに動的に適応させる。これにより、配信フォーマットがIPベースのネットワーク上でストリーミング可能であることが保証され、ネットワークは、レガシー及び没入型メディア対応デバイスの両方を含み得る複数の異種クライアントエンドポイントに同時にサービスすることができる。更に、実施形態は、シーン境界に沿った配信メディアの編成を容易にする例示的なメディア表示フレームワークを提供する。
【0088】
前述の改善を提供する、本開示の実施形態による異種没入型メディア配信のエンドツーエンド実装は、以下で更に詳細に説明される図3図16の詳細な説明に記載される処理及び構成要素に従って達成される。
【0089】
前述した異種没入型メディアを表示及びストリーミングするための技術は、コンピュータ可読命令を使用してコンピュータソフトウェアとしてソース及び宛先の両方に実装され、1つ以上の非一時的コンピュータ可読媒体に、又は具体的に構成された1つ以上のハードウェアプロセッサによって物理的に記憶されてもよい。図7は、開示された主題の特定の実施形態を実施するのに適したコンピュータシステム(700)を示す。
【0090】
コンピュータソフトウェアは、コンピュータ中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)などによって、直接、又はインタープリテーション、マイクロコードの実行などを介して実行され得る命令を含むコードを作成するために、アセンブリ、コンパイル、リンクなどの機構の適用を受け得る、任意の適切な機械コード又はコンピュータ言語を使用してコーディングされ得る。
【0091】
命令は、例えばパーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲーミングデバイス、及びモノのインターネットデバイスなどを含む様々なタイプのコンピュータ又はその構成要素上で実行され得る。
【0092】
コンピュータシステム700について図7に示された構成要素は、本質的に例示的なものであり、本開示の実施形態を実装するコンピュータソフトウェアの使用範囲又は機能に関するいかなる制限も示唆するものではない。構成要素の形態は、コンピュータシステム700の例示的な実施形態に示された構成要素のいずれか1つ又は組合せに関するいかなる依存関係又は要件も有すると解釈されるべきでない。
【0093】
コンピュータシステム700は、特定のヒューマンインタフェース入力デバイスを含み得る。そのようなヒューマンインタフェース入力デバイスは、例えば、(キーストローク、スワイプ、データグローブの動きなどの)触覚入力、(音声、拍手などの)オーディオ入力、(ジェスチャなどの)視覚入力、嗅覚入力を介して、1人又は複数の人間のユーザによる入力に応答することができる。ヒューマンインタフェースデバイスを用いて、音声(発話、音楽、周囲音など)、画像(スキャン画像、静止画像カメラから取得される写真画像など)、ビデオ(二次元ビデオ、立体ビデオを含む三次元ビデオなど)など、人間による意識的な入力に必ずしも直接関係ない特定のメディアを取り込むこともできる。
【0094】
入力ヒューマンインタフェースデバイスは、キーボード701、トラックパッド702、マウス703、スクリーン709(例えば、タッチスクリーン、データグローブ、ジョイスティック704、マイクロフォン705、カメラ706、及びスキャナ707であってもよい)のうちの1つ以上を含むことができる(それぞれのうちのただ1つが示されている)。
【0095】
コンピュータシステム700はまた、特定のヒューマンインタフェース出力デバイスも含み得る。そのようなヒューマンインタフェース出力デバイスは、例えば、触覚出力、音、光、及び嗅覚/味覚を通して、1人又は複数の人間ユーザの感覚を刺激していることがある。そのようなヒューマンインタフェース出力デバイスは、触知出力デバイス(例えば、スクリーン709、データグローブ、又はジョイスティック704による触覚フィードバックであるが、入力デバイスとして機能しない触覚フィードバックデバイスも存在し得る)、音声出力デバイス(例えば、スピーカ708、ヘッドホン)、視覚出力デバイス(CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン709などであり、それぞれがタッチスクリーン入力機能を有するか、又は有さず、それぞれが触覚フィードバック機能を有するか、又は有さず、これらのうちの幾つかは、ステレオ出力、仮想現実メガネ、ホログラフィックディスプレイ、及びスモークタンクなどの手段を介して二次元視覚出力又は三次元出力以上の出力を出力することができる)、及びプリンタを含むことができる。
【0096】
また、コンピュータシステム700は、人間がアクセス可能な記憶デバイス、及びCD/DVDなどの媒体710を有するCD/DVDROM/RW711を含む光学媒体、サムドライブ712、リムーバブルハードドライブ又はソリッドステートドライブ713、テープ及びフロッピーディスクなどのレガシー磁気媒体、セキュリティドングルなどの専用ROM/ASIC/PLDベースのデバイスなどのそれらの関連媒体を含むこともできる。
【0097】
また、本開示の主題に関連して使用される「コンピュータ可読媒体」という用語が伝送媒体、搬送波、又は他の一時的信号を包含しないことも当業者は理解すべきである。
【0098】
また、コンピュータシステム700は、1つ以上の通信ネットワーク714へのインタフェース715も含み得る。ネットワーク714は、例えば、無線、有線、光であってもよい。ネットワーク714は更に、ローカル、広域、都市、車両及び産業、リアルタイム、遅延耐性などであってよい。ネットワーク714の例には、イーサネット、ワイヤレスLANなどのローカルエリアネットワーク、GSM、3G、4G、5G、LTEなどを含むセルラーネットワーク、ケーブルTV、衛星TV、及び地上波ブロードキャストTVを含むTVの有線又はワイヤレスの広域デジタルネットワーク、CANBusを含む車両及び産業用などが含まれる。特定のネットワーク714は、通常、(例えば、コンピュータシステム700のUSBポートなどの)特定の汎用データポート又は周辺バス716に取り付けられた外部ネットワークインタフェースアダプタ(例えば、グラフィックスアダプタ725)を必要とし、他のネットワークは、通常、以下に記載されるシステムバスに取り付けることによってコンピュータシステム700のコアに組み込まれる(例えば、PCコンピュータシステムへのイーサネットインタフェース又はスマートフォンコンピュータシステムへのセルラーネットワークインタフェース)。これらのネットワーク714のいずれかを使用して、コンピュータシステム700は、他のエンティティと通信し得る。そのような通信は、例えば、ローカル又は広域デジタルネットワークを使用する他のコンピュータシステムに対して、単方向、受信のみ(例えば、放送TV)、単方向送信のみ(例えば、特定のCANbusデバイスへのCANbus)、又は双方向であり得る。特定のプロトコル及びプロトコルスタックは、上記で説明したように、それらのネットワーク及びネットワークインタフェースのそれぞれで使用され得る。
【0099】
前述のヒューマンインタフェースデバイス、人間がアクセス可能な記憶デバイス、及びネットワークインタフェースは、コンピュータシステム700のコア717に取り付けられてもよい。
【0100】
コア717は、1つ以上の中央処理ユニット(CPU)718、グラフィック処理ユニット(GPU)719、フィールドプログラマブルゲートエリア(FPGA)720の形態の専用プログラマブル処理ユニット、特定のタスク用のハードウェアアクセラレータ721などを含むことができる。これらのデバイスは、読取り専用メモリ(ROM)723、ランダムアクセスメモリ(RAM)724、内部のユーザがアクセスできないハードドライブ、SSDなどの内部の大容量ストレージ722と共に、システムバス726を介して接続されてもよい。幾つかのコンピュータシステムでは、システムバス726は、追加のCPU、GPUなどによる拡張を可能にするために、1つ以上の物理プラグの形態でアクセス可能であり得る。周辺デバイスは、コアのシステムバス726に直接取り付けることも、周辺バス716を介して取り付けることもできる。周辺バス用のアーキテクチャには、PCI、USBなどが含まれる。
【0101】
CPU718、GPU719、FPGA720、及びアクセラレータ721は、組み合わせて前述のマシンコード(又はコンピュータコード)を構成することができる特定の命令を実行することができる。そのコンピュータコードは、ROM723又はRAM724に記憶され得る。移行データはまた、RAM724に記憶されてもよく、一方、永久データは、例えば内部大容量ストレージ722に記憶されてもよい。メモリデバイスのいずれかへの高速記憶及び検索は、1つ以上のCPU718、GPU719、大容量ストレージ722、ROM723、RAM724などと密接に関連し得るキャッシュメモリの使用によって可能にされ得る。
【0102】
コンピュータ可読媒体は、様々なコンピュータ実施動作を実行するためのコンピュータコードを有し得る。媒体及びコンピュータコードは、本開示の目的のために特別に設計及び構築されてもよく、又はそれらは周知の種類のものであり、コンピュータソフトウェア技術の当業者に利用可能であってもよい。
【0103】
限定ではなく、例として、コンピュータシステム700のアーキテクチャを有するコンピュータシステム、特にコア717は、1つ以上の有形のコンピュータ可読媒体で具現化されたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果として機能を提供することができる。そのようなコンピュータ可読媒体は、前述のようなユーザアクセス可能な大容量記憶装置、並びにコア内部大容量ストレージ722又はROM723などの非一時的な性質のコア717の特定の記憶装置に関連付けられた媒体であり得る。本開示の様々な実施形態を実装するソフトウェアは、そのようなデバイスに記憶され、コア717によって実行され得る。コンピュータ可読媒体は、特定のニーズに応じて、1つ以上のメモリデバイス又はチップを含み得る。ソフトウェアは、コア717、及び具体的にはその中の(CPU、GPU、FPGAなどを含む)プロセッサに、RAM724に記憶されたデータ構造を定義することと、ソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を変更することとを含む、本明細書に記載された特定のプロセス、又は特定のプロセスの特定の部分を実行させることができる。加えて、又は代替として、コンピュータシステムは、回路(例えば、アクセラレータ721)にハードワイヤードされた、又は他の方法で具現化されたロジックの結果として機能性を提供してもよく、この回路はソフトウェアの代わりに、又はソフトウェアと共に動作して、本明細書に記載された特定プロセス、又は特定プロセスの特定の部分を実行し得る。ソフトウェアへの参照は、ロジックを包含することができ、その逆も同様である。コンピュータ可読媒体への言及は、実行のためのソフトウェアを記憶する回路(集積回路(IC)など)、実行のためのロジックを具体化する回路、又はこれらの両方を包含し得る。本開示は、ハードウェアとソフトウェアの任意の適切な組合せを包含する。
【0104】
図7に示す構成要素の数及び配置は、一例として提供されている。実際には、入力ヒューマンインタフェースデバイスは、追加の構成要素、より少ない構成要素、異なる構成要素、又は図7に示すものとは異なる配置の構成要素を含むことができる。これに加えて又は代えて、入力ヒューマンインタフェースデバイスの構成要素のセット(例えば、1つ以上の構成要素)は、入力ヒューマンインタフェースデバイスの構成要素の別のセットによって実行されるものとして説明される1つ以上の機能を実行することができる。
【0105】
実施形態では、図1図6及び図8図15の動作又はプロセスのいずれか1つは、図7に示す要素のいずれか1つによって、又はそれを使用して実施することができる。
【0106】
図8は、複数の異種クライアントエンドポイントにサービスを提供する例示的なネットワークメディア配信システム800を示す。すなわち、システム800は、クライアントエンドポイントとして様々なレガシー及び異種没入型メディア対応ディスプレイをサポートする。システム800は、コンテンツ取得モジュール801、コンテンツ準備モジュール802、及び送信モジュール803を含むことができる。
【0107】
コンテンツ取得モジュール801は、例えば、図6及び/又は図5に記載された実施形態を使用してソースメディアを捕捉又は作成する。コンテンツ準備モジュール802は、送信モジュール803を使用してネットワークメディア配信システムに送信されるインジェストフォーマットを作成する。ゲートウェイ804は、顧客宅内機器にサービスして、ネットワークのための様々なクライアントエンドポイントへのネットワークアクセスを提供することができる。また、セットトップボックス805は、ネットワークサービスプロバイダによる集約コンテンツへのアクセスを提供するための顧客宅内機器として機能することもできる。無線復調器806は、例えば、モバイルハンドセットディスプレイ813で示されるように、モバイルデバイスのためのモバイルネットワークアクセスポイントとして機能し得る。システム800のこの特定の実施形態では、レガシー2Dテレビ807は、ゲートウェイ804、セットトップボックス805、又はWiFi(ルータ)808のうちの1つに直接接続されるように示されている。ラップトップ2Dディスプレイ809(すなわち、レガシー2Dディスプレイを有するコンピュータ又はラップトップ)は、WiFi(ルータ)808に接続されたクライアントエンドポイントとして示されている。頭部装着型2D(ラスタベース)ディスプレイ810もWiFi(ルータ)808に接続されている。ゲートウェイ804のうちの一方に接続されたレンチキュラー光照射野ディスプレイ811が示されている。レンチキュラー光照射野ディスプレイ811は、1つ以上のGPU811A、記憶デバイス811B、及び光線ベースのレンチキュラー光学技術を使用して複数のビューを作成する視覚プレゼンテーション構成要素811Cを含むことができる。セットトップボックス805に接続されたホログラフィックディスプレイ812が示されている。ホログラフィックディスプレイ812は、1つ以上のCPU812A、GPU812B、記憶デバイス812C、及び視覚化構成要素812Dを含むことができる。視覚化構成要素812Dは、フレネルパターン、波ベースのホログラフィックデバイス/ディスプレイであってもよい。拡張現実(AR)ヘッドセット814は、無線復調器806に接続されて示されている。ARヘッドセット814は、GPU814A、記憶デバイス814B、バッテリ814C、及び体積視覚プレゼンテーション構成要素814Dを含むことができる。高密度光照射野ディスプレイ815は、WiFi(ルータ)808に接続されているものとして示されている。高密度光照射野ディスプレイ815は、1つ以上のGPU815A、CPU815B、記憶デバイス815C、視線追跡デバイス815D、カメラ815E、及び高密度光線ベースの光照射野パネル815Fを含むことができる。
【0108】
図8に示す構成要素の数及び配置は、一例として提供されている。実際には、システム800は、追加の構成要素、より少ない構成要素、異なる構成要素、又は図8に示すものとは異なる配置の構成要素を含むことができる。これに加えて又は代えて、システム800の構成要素のセット(例えば、1つ以上の構成要素)は、デバイス又はそれぞれのディスプレイの構成要素の別のセットによって実行されるものとして説明される1つ以上の機能を実行することができる。
【0109】
図9は、図8に前述したようにレガシー及び異種没入型メディア対応ディスプレイにサービスを提供することができる没入型メディア配信プロセス900の例示的なワークフローを示す。ネットワークによって実行される没入型メディア配信プロセス900は、例えば、特定の没入型メディアクライアントエンドポイントによる消費(図10を参照して説明したように)のためにメディアを適応させるネットワークのプロセスの前に、メディアインジェストフォーマットで表される特定のメディアに関する適応情報を提供することができる。
【0110】
没入型メディア配信プロセス900は、破線912の左側の没入型メディア生成と、破線912の右側の没入型メディアネットワーク配信の2つの部分に分けることができる。没入型メディア制作及び没入型メディアネットワーク配信は、ネットワーク又はクライアントデバイスによって実行されてもよい。
【0111】
まず、メディアコンテンツ901は、それぞれネットワーク(又はクライアントデバイス)又はコンテンツソースから作成又は取得される。データを作成又は取得するための方法は、例えば、それぞれ天然及び合成コンテンツについて図5及び図6に具体化される。次いで、作成されたコンテンツ901は、ネットワークインジェストフォーマット作成プロセス902を使用してインジェストフォーマットに変換される。ネットワークインジェスト作成プロセス902はまた、それぞれ天然及び合成コンテンツについて図5及び図6に具体化される。インジェストフォーマットはまた、例えばメディア再使用解析器911(図10及び図14Aを参照して後で詳述する)からの複数のシーンにわたって潜在的に再使用されるアセットに関する情報を記憶するために更新されてもよい。インジェストフォーマットは、ネットワークに送信され、インジェストメディアストレージ903(すなわち、記憶デバイス)に記憶される。幾つかの実施形態では、記憶デバイスは、没入型メディアコンテンツ制作者のネットワーク内にあってもよく、没入型メディアネットワーク配信920のためにリモートでアクセスされてもよい。クライアント及びアプリケーション固有の情報は、任意選択的に、リモートストレージデバイス、クライアント固有情報904において利用可能である。幾つかの実施形態では、クライアント固有情報904は、代替クラウドネットワークに遠隔に存在してもよく、ネットワークに送信されてもよい。
【0112】
その後、ネットワークオーケストレータ905が実行される。ネットワークオーケストレーションは、ネットワークの主要なタスクを実行するための情報の主要なソース及びシンクとして機能する。ネットワークオーケストレータ905は、ネットワークの他の構成要素と統一された形式で実装されてもよい。ネットワークオーケストレータ905は、クライアントデバイスの特性に従ってメディアの全ての処理及び配信を容易にするために、クライアントデバイスとの双方向メッセージプロトコルを更に使用するプロセスであってもよい。更に、双方向プロトコルは、異なる配信チャネル(例えば、制御プレーンチャネル及び/又はデータプレーンチャネル)にわたって実装されてもよい。
【0113】
図9に示すように、ネットワークオーケストレータ905は、クライアントデバイス908の特徴及び属性に関する情報を受信する。ネットワークオーケストレータ905は、クライアントデバイス908上で現在実行されているアプリケーションに関する要件を収集する。この情報は、クライアント固有情報904から取得することができる。幾つかの実施形態では、情報は、クライアントデバイス908に直接問い合わせることによって取得することができる。クライアントデバイスが直接照会されるとき、クライアントデバイス908がネットワークオーケストレータ905と直接通信することができるように、双方向プロトコルが存在し、動作可能であると仮定される。
【0114】
ネットワークオーケストレータ905はまた、メディア適応及びフラグメンテーションモジュール910(これは図10に記載される)を開始してそれと通信してもよい。インジェストメディアがメディア適応及びフラグメンテーションモジュール910によって適応及び断片化されると、メディアは、配信用に準備されたメディア909などのメディア間記憶デバイスに転送されてもよい。配信メディアが準備されて配信用に準備されたメディア909である記憶デバイスに記憶されると、ネットワークオーケストレータ905は、クライアントデバイス908が「プッシュ」要求を介して配信メディア及び記述情報906を受信するか、又はクライアントデバイス908が配信用に準備された記憶されたメディア909から配信メディア及び記述情報906の「プル」要求を開始できることを保証する。情報は、クライアントデバイス908のネットワークインタフェース908Bを介して「プッシュ」又は「プル」され得る。「プッシュされた」又は「プルされた」配信メディア及び記述情報906は、配信メディアに対応する記述情報であってもよい。
【0115】
幾つかの実施形態では、ネットワークオーケストレータ905は、双方向メッセージインタフェースを使用して、クライアントデバイス908によって「プッシュ」要求を実行するか、又は「プル」要求を開始する。クライアントデバイス908は、任意選択的に、GPU908C(又はCPU)を使用することができる。
【0116】
そして、配信メディアフォーマットは、クライアントデバイス908が備える記憶デバイス又はストレージキャッシュ908Dに記憶される。最後に、クライアントデバイス908は、視覚化構成要素908Aを介してメディアを視覚的にプレゼンテーションする。
【0117】
没入型メディアをクライアントデバイス908にストリーミングするプロセス全体を通して、ネットワークオーケストレータ905は、クライアント進捗状況及び状況フィードバックチャネル907を介してクライアントの進捗状況を監視する。幾つかの実施形態では、ステータスの監視は、双方向通信メッセージインタフェースを介して実行されてもよい。
【0118】
図10は、例えば、メディア適応及びフラグメンテーションモジュール910によって実行されるメディア適応プロセス1000の一例を示す。メディア適応プロセス1000を実行することにより、取り込まれたソースメディアは、クライアントの要件(例えば、クライアントデバイス908)に一致するように適切に適応され得る。
【0119】
図10に示すように、メディア適応プロセス1000は、クライアントデバイス908のための適切な配信フォーマットへのインジェストメディアの適応を容易にする複数の構成要素を含む。図10に示された構成要素は、例示として見なされるべきである。実際には、メディア適応プロセス1000は、図10に示されたものよりも追加の構成要素、より少ない構成要素、異なる構成要素、又は異なる配置の構成要素を含むことができる。これに加えて又は代えて、メディア適応プロセス1000の構成要素のセット(例えば、1つ以上の構成要素)は、別の構成要素のセットによって実行されるものとして説明される1つ以上の機能を果たすことができる。
【0120】
図10において、適応モジュール1001は、ネットワーク上の現在のトラフィック負荷を追跡するためにネットワーク状態1005の入力を受信する。前述したように、適応モジュール1001はまた、ネットワークオーケストレータ905から情報を受信する。情報は、クライアントの錐台のジオメトリをインジェスト没入型メディアの補間機能にマッピングするのを助けるために、クライアントデバイス908の属性及び機能の説明、アプリケーションの機能及び説明、アプリケーションの現在の状態、及びクライアントNNモデル(利用可能な場合)を含むことができる。そのような情報は、双方向メッセージインタフェースによって取得することができる。適応モジュール1001は、適応された出力が、生成されると、クライアント適応メディア1006を記憶するための記憶デバイスに記憶されることを保証する。
【0121】
メディア再使用解析器911は、事前に、又はメディアの配信のためのネットワーク自動化プロセスの一部として実行され得るオプションのプロセスであり得る。メディア再使用解析器911は、インジェストメディアフォーマット及びアセットを記憶デバイス(1002)に記憶することができる。次いで、インジェストメディアフォーマット及びアセットは、記憶デバイス(1002)から適応モジュール1001に送信されてもよい。
【0122】
適応モジュール1001は、ロジックコントローラ1001Fによって制御されてもよい。また、適応モジュール1001は、特定のインジェストソースメディアをクライアントに適したフォーマットに適応させるために、レンダラ1001B又はプロセッサ1001Cを使用することもできる。プロセッサ1001Cは、NNベースのプロセッサであり得る。プロセッサ1001Cは、NNモデル1001Aを用いる。このようなプロセッサ1001Cとしては、例えば、MPIやMSIに記載されているようなDeepview NNモデルジェネレータが挙げられる。メディアが2Dフォーマットであるが、クライアントが3Dフォーマットを有さなければならない場合、プロセッサ1001Cは、メディアに描写されたシーンの立体表示を導出するために2D映像信号から高度に相関付けられた画像を使用するプロセスを呼び出すことができる。
【0123】
レンダラ1001Bは、音響物理学、光物理学、視覚的知覚、音声知覚、数学、及びソフトウェア開発に関連する分野の選択的な混合に基づいて、ソフトウェアベース(又はハードウェアベース)のアプリケーション又はプロセスであってもよく、入力シーングラフ及びアセットコンテナが与えられると、ターゲットデバイス上でのプレゼンテーションに適した、又はシーングラフ内のレンダリングターゲットノードの属性によって指定される所望の特性に適合する(通常は)視覚信号及び/又は音声信号を発する。視覚ベースのメディアアセットの場合、レンダラは、ターゲット表示に適した、又は中間アセット(例えば、別の容器に再パッケージングされ、グラフィックスパイプラインの一連のレンダリングプロセスで使用される)としての記憶に適した視覚信号を発することができる。オーディオベースのメディアアセットの場合、レンダラは、マルチチャネルラウドスピーカ及び/又はバイノーラル化されたヘッドホンでプレゼンテーションするために、又は別の(出力)コンテナに再パッケージングするために、音声信号を発することができる。レンダリング装置は、例えば、ソース及びクロスプラットフォームゲームエンジンのリアルタイムレンダリング機能を含む。レンダラは、シーングラフノードに対して行われる動的入力及び可変状態変更を処理するために、ランタイムにおいてレンダラによって実行することができるスクリプト言語(すなわち、解釈されたプログラミング言語)を含むことができる。動的入力及び可変状態の変化は、空間的及び時間的なオブジェクトトポロジ(物理的な力、制約、逆運動学、変形、衝突を含む)、並びにエネルギー伝搬及び輸送(光、音)のレンダリング及び評価に影響を及ぼし得る。空間的及び時間的なオブジェクトトポロジの評価は、出力を抽象的なものから具体的なものに移行させる結果(例えば、ウェブページの文書オブジェクトモデルの評価と同様)を生成する。
【0124】
レンダラ1001Bは、例えば、適応モジュール1001と直接に相互作用するように修正されるOTOY Octaneレンダラの修正バージョンであってもよい。幾つかの実施形態では、レンダラ1001Bは、シーンの照明が現実に忠実になるように3次元シーンをレンダリングするコンピュータグラフィックス方法(例えば、経路追跡)を実装する。幾つかの実施形態では、レンダラ1001Bは、シェダーを用いることができる(すなわち、シェーディング(画像内の適切なレベルの光、暗さ、及び色の生成)に元々使用されていたが、今ではコンピュータグラフィックスの特殊効果、シェーディングとは無関係のビデオの後処理、及びグラフィックスとは無関係の他の機能の様々な分野における様々な特殊な機能を果たすタイプのコンピュータプログラム)。
【0125】
適応モジュール1001は、インジェストメディアのフォーマット及びクライアントデバイス908が必要とするフォーマットに基づく圧縮及び解凍の必要性に応じて、メディア圧縮器1001D及びメディア解凍器1001Eをそれぞれ使用してメディアコンテンツの圧縮及び解凍を実行することができる。メディア圧縮器1001Dはメディアエンコーダであってもよく、メディア解凍器1001Eはメディアデコーダであってもよい。圧縮及び解凍を実行した後(必要な場合)、適応モジュール1001は、ストリーミング又は配信に最適なクライアント適応メディア1006をクライアントデバイス908に出力する。クライアント適応メディア1006は、適合メディアを記憶するための記憶デバイスに記憶されてもよい。
【0126】
図11は、配信フォーマット作成プロセス1100の一例を示す。図11に示すように、配信フォーマット作成プロセス1100は、メディア適応プロセス1000から出力され、クライアント適応メディア1006として記憶されたメディアをパッケージングする適応メディアパッケージングモジュール1103を含む。メディアパッケージングモジュール1103は、クライアント適応メディア1006からの適応メディアをロバスト性が高い配信フォーマット1104にフォーマットする。配信形式は、例えば、図3又は図4に示す形式であってもよい。情報マニフェスト1104Aは、クライアントデバイス908にシーンデータアセット1104Bのリストを提供することができる。シーンデータアセット1104Bのリストはまた、各アセットがプレゼンテーションを構成するシーンのセットにわたって使用される頻度を記述するメタデータを含んでもよい。シーンデータアセット1104Bのリストは、視角アセット、オーディオアセット、及び触覚アセットのリストを示し、それぞれ対応するメタデータを伴う。この例示的な実施形態では、シーンデータアセット1104Bのリスト内の各アセットは、プレゼンテーションを構成する全てのシーンにわたって特定のアセットが使用された回数を示す数的頻度値を含むメタデータを参照する。
【0127】
図11Bは、順序付けられた頻度プロセス1110を用いた配信フォーマット作成を示す。順序付けられた頻度プロセス1110を用いた配信フォーマット作成は、図11Aのものと同様の構成要素を含む。したがって、図11Bを参照して本明細書では繰り返し説明する。メディアパッケージングモジュール11043は、メディアパッケージングモジュール1103と同様である。しかしながら、メディアパッケージングモジュール11043は、頻度に基づいてシーンデータアセット11044Bのリスト内のアセットを順序付ける。例えば、シーンデータアセット11044Bのリスト内の視覚アセットは頻度を増加させることによって順序付けられてもよく、シーンデータアセット1104Bのリスト内の音声及び触覚アセットは頻度を減少させることによって順序付けられてもよい。図11Bに示すように、配信フォーマット11044のアセットは、最初にアセットタイプによって順序付けられ、次に、例えば、アセットタイプに基づく昇順又は降順のいずれかの頻度値で、プレゼンテーション全体にわたってアセットが使用される頻度によって順序付けられる(すなわち、視覚、触覚、音声など)。情報マニフェスト11044Aは、クライアントデバイス908に、受信することが期待できるシーンデータアセット11044Bのリストと、プレゼンテーション全体を構成するシーンのセットにわたって全てのアセットが使用される頻度を示すオプションのメタデータとを提供する。シーンデータアセット1104Bのリストは、視角アセット、オーディオアセット、及び触覚アセットのリストを含み、それぞれが対応するメタデータを有する。
【0128】
メディアは、ストリーミングの前に更にパケット化されてもよい。図12は、例示的なパケット化プロセス1200を示す。パケット化システム1200は、パケット化器1202を備える。パケット化器1202は、(図12に示すように)シーンデータアセット1104B(又は11044B)のリストを入力メディア1201として受信してもよい。幾つかの実施形態では、クライアント適応メディア1006又は配信フォーマット1104は、パケット化器1202に入力される。パケット化器1202は、入力メディア1201を、ネットワーク上のクライアントデバイス908へのプレゼンテーションやストリーミングに適した個別のパケット1203に分離する。
【0129】
図13は、実施形態に係る構成要素間のデータ及び通信フローの一例を示すシーケンス図である。図13のシーケンス図は、インジェストフォーマットの特定の没入型メディアを特定の没入型メディアクライアントエンドポイントのためのストリーミング可能で適切な配信フォーマットに適合させるネットワークのものである。データと通信の流れは以下の通りである。
【0130】
クライアントデバイス908は、ネットワークオーケストレータ905に対するメディア要求1308を開始する。幾つかの実施形態では、要求は、クライアントデバイスのネットワーク配信インタフェースに対して行われてもよい。メディア要求1308は、クライアントデバイス908によって要求されるメディアを識別するための情報を含む。メディア要求は、例えば、ユニフォームリソースネーム(URN)又は別の標準的な命名法によって識別することができる。次いで、ネットワークオーケストレータ905は、プロファイル要求1309でメディア要求1308に応答する。プロファイルは、クライアントが現在利用可能なリソースに関する情報(クライアントの現在の動作状態を特徴付けるための計算、記憶、バッテリ充電率、及び他の情報を含む)を提供することを要求する1309。プロファイル要求1309はまた、そのようなNNモデルがクライアントエンドポイントで利用可能である場合、クライアントのプレゼンテーションシステムの特徴に一致するように正しいメディアビューを抽出又は補間するためにNN推論のためにネットワークによって使用され得る1つ以上のNNモデルをクライアントが提供することを要求する。
【0131】
次いで、クライアントデバイス908は、クライアントトークン、アプリケーショントークン、及び1つ以上のNNモデルトークン(そのようなNNモデルトークンがクライアントエンドポイントで利用可能である場合)として提供されるネットワークオーケストレータ905へのクライアントデバイス908からの応答1310を伴う。そして、ネットワークオーケストレータ905は、セッションIDトークン1311をクライアントデバイスに提供する。次いで、ネットワークオーケストレータ905は、インジェストメディアサーバ1303にインジェストメディア1312を要求する。インジェストメディアサーバ1303は、例えば、インジェストメディアストレージ903又はインジェストメディアフォーマット及び記憶デバイス1002のアセットを含むことができる。インジェストメディア1312の要求はまた、要求1308で識別されたメディアのURN又は他の標準名を含んでもよい。インジェストメディアサーバ1303は、インジェストメディアトークンを含む応答1313でインジェストメディア1312要求に応答する。次いで、ネットワークオーケストレータ905は、呼び出し1314において応答1313からのメディアトークンをクライアントデバイス908に提供する。次いで、ネットワークオーケストレータ905は、要求1315において、適応及びフラグメンテーションモジュール910にインジェストメディアトークン、クライアントトークン、アプリケーショントークン、及びNNモデルトークンを提供することによって、要求されたメディアに対するアダプテーションプロセスを開始する。適応及びフラグメンテーションモジュール910は、インジェストメディアアセットへのアクセスを要求する要求1316においてインジェストメディアトークンをインジェストメディアサーバ1303に提供することによってインジェストメディアへのアクセスを要求する。
【0132】
インジェストメディアサーバ1303は、適応及びフラグメンテーションモジュール910に対する応答1317において、インジェストメディアアクセストークンを用いて要求1316に応答する。次いで、適応及びフラグメンテーションモジュール910は、メディア適応プロセス1000が、応答1313において作成及び送信されたセッションIDトークンに対応するクライアント、アプリケーション、及びNN推論モデルのために、インジェストメディアアクセストークンに位置するインジェストメディアを適応させることを要求する。適応及びフラグメンテーションモジュール910からメディア適応プロセス1000への要求1318が行われる。要求1318は、必要なトークン及びセッションIDを含む。メディア適応プロセス1000は、更新応答1319において適応メディアアクセストークン及びセッションIDをネットワークオーケストレータ905に提供する。次いで、ネットワークオーケストレータ905は、インタフェース呼び出し1320において、メディアパッケージングモジュール11043に、適合されたメディアアクセストークン及びセッションIDを提供する。メディアパッケージングモジュール11043は、応答1321内のパッケージングされたメディアアクセストークン及びセッションIDと共に、応答1321をネットワークオーケストレータ905に提供する。次に、メディアパッケージングモジュール11043は、応答1322において、セッションID用のパッケージングされたアセット、URN、及びパッケージングされたメディアアクセストークンを、記憶されるパッケージングされたメディアサーバ1307に提供する。続いて、クライアントデバイス908は、応答1321で受信されたパッケージ化メディアアクセストークンに対応するメディアアセットのストリーミングを開始するために、パッケージ化メディアサーバ1307に対する要求1323を実行する。最後に、クライアントデバイス908は、他の要求を実行し、メッセージ1324内のステータス更新をネットワークオーケストレータ905に提供する。
【0133】
図14Aは、図9に示されたメディア再使用解析器911のためのワークフローを例示する。メディア再使用解析器911は、メディアデータに含まれるシーンのオブジェクトの一意性に関するメタデータを解析する。
【0134】
S1401において、メディアデータは、例えば、コンテンツプロバイダ又はコンテンツソースから取得される。S1402では、初期化を行う。具体的には、イテレータ「i」を0に初期化する。イテレータは、例えば、カウンタであってもよい。プレゼンテーション(図3及び/又は図4に示すように、)を含む全てのシーンの中で発生した固有のアセットを識別する、各シーンの固有のアセット1420(図14Bに示す)のリストのセットも初期化される。
【0135】
S1403において、イテレータ「i」の値がプレゼンテーションを含むシーンの総数N未満であるかどうかを決定するために決定プロセスが実行される。イテレータ「i」の値がプレゼンテーションを含むシーンの数Nに等しい(又はそれより大きい)場合(S1403でNO)、処理はS1404に進み、そこで再使用解析が終了する(すなわち、プロセスは終了する)。イテレータ「i」の値がプレゼンテーションを含むシーン数N未満である場合(S1403でYES)、処理はS1405に進む。S1405では、イテレータ「j」の値を0に設定する。
【0136】
続いて、S1406において、イテレータ「j」の値が現在のシーンにおけるメディアアセットの総数X(メディアオブジェクトとも呼ばれる)未満であるかどうかを決定するために決定プロセスが行われる。イテレータ「j」の値がシーンsのメディアアセットの総数Xに等しい(又はそれより大きい)場合(S1406でNO)、処理はS1407に進み、イテレータ「i」が1だけインクリメントされた後、S1403に戻る。イテレータ「j」の値がシーンsのメディアアセットの総数X未満であれば(S1406でYES)、処理はS1408に進む。
【0137】
S1408において、メディアアセットの特徴は、現在のメディアアセットが既に使用されたかどうかを決定するために、現在のシーン(すなわち、シーンs)の前のシーンから既に解析されたアセットと比較される。
【0138】
現在のメディアアセットが固有のアセットとして識別されている場合(S1408でNO)、すなわち、現在のメディアアセットが、より小さいイテレータ「i」の値に関連付けられたシーンで既に解析されていない場合、処理はS1409に進む。S1409で、現在のシーン(すなわち、シーンs)に対応する固有アセット1420のリストのセットに固有アセットエントリを作成する。固有のアセットエントリにも固有の識別子が割り当てられ、アセットがシーン0~N-1にわたって使用された回数(例えば、頻度)は1に設定される。その後、処理がS1411へ進む。
【0139】
現在のメディアアセットがシーンsの前に1つ以上のシーンで使われたアセットとして識別された場合(S1408でYES)、処理はS1409に進む。S1410で、現在のメディアアセットがシーン0からN-1にわたって使用された回数は、現在のシーン(すなわち、シーンs)に対応する固有アセットのリストのセット1420で1だけインクリメントされる。その後、処理がS1411へ進む。
【0140】
S1411において、イテレータ「j」の値が1だけインクリメントされる。その後、処理がS1406に戻る。
【0141】
幾つかの実施形態では、メディア再使用解析器911は、クライアント、例えばクライアントデバイス108に、クライアントが、アセットがシーンのセットで使用される各インスタンス(アセットがクライアントに配信された最初の後)についてアセットのコピーを使用すべきであることを更にシグナリングすることができる。
【0142】
図13図14を参照して説明したシーケンス図及びワークフローのステップは、実施形態におけるデータ及び通信フローの構成を限定することを意図するものではないことに留意されたい。例えば、ステップのうちの1つ以上が同時に実行されてもよく、データが記憶されてもよく、及び/又は図13図14Aのフローなどに明示的に示されていない方向に流れてもよい。
【0143】
図14Bは、実施形態に係る、プレゼンテーションの完了時に全てのシーンについてS1402で初期化された(及び潜在的にS1409~S1410で更新された)固有アセット1420のリストの一例である。固有アセット1420のリストのセット内の固有アセットのリストは、ネットワーク又はクライアントデバイスによって事前に識別されてもよく、又は事前定義されてもよい。固有アセットのリストのセット1420は、アセットを構成するメディアのタイプ(例えば、メッシュ、オーディオ、又はボリューム)のインジケータ、アセットの固有識別子、及びアセットがプレゼンテーション全体を構成するシーンのセットにわたって使用される回数を含む、プレゼンテーション全体に対して固有であるアセットを記述する情報のエントリのサンプルリストを示す。一例として、シーンN-1の場合、シーンN-1に必要な全てのアセットがシーン1及びシーン2でも使用されるアセットとして識別されているため、そのリストに含まれるアセットはない。
【0144】
図15は、実施形態に係る、没入型メディア配信を最適化するためにメディアをパッケージングするためのコンピュータコード1500の一例のブロック図である。実施形態では、コンピュータコードは、例えば、プログラムコード又はコンピュータプログラムコードであってもよい。本開示の実施形態によれば、コンピュータプログラムコードを記憶するメモリを有する少なくとも1つのプロセッサを含む装置/デバイスを提供することができる。コンピュータプログラムコードは、少なくとも1つのプロセッサによって実行されると、本開示の任意の数の態様を実行するように構成されてもよい。
【0145】
図15に示すように、コンピュータコード1500は、受信コード1510、取得コード1520、解析コード1530、シーケンシングコード1540、及びストリーミングコード1550を含むことができる。
【0146】
受信コード1510は、少なくとも1つのプロセッサに没入型プレゼンテーションのための没入型メディアデータを受信させるよう構成される。
【0147】
取得コード1520は、少なくとも一方のプロセッサに、没入型プレゼンテーションのための没入型メディアデータに含まれるシーンのセットに対応するメディアアセットに関連付けられたアセット情報を取得させるように構成される。
【0148】
解析コード1530は、少なくとも一方のプロセッサに、アセット情報に基づいてメディアアセットの特性を解析させるように構成され、特性は、それぞれのメディアアセットに関連付けられたアセットタイプと、没入型プレゼンテーションに含まれるシーンのセットの中でそれぞれのメディアアセットが使用された回数を示す頻度とを含む。
【0149】
シーケンシングコード1540は、少なくとも1つのプロセッサに、各メディアアセットに関連付けられたアセットタイプ及び頻度に基づいてメディアアセットをシーケンスに順序付けさせるように構成される。
【0150】
ストリーミングコード1550は、少なくとも一方のプロセッサに、メディアアセットの順序付けられたシーケンスに基づいて没入型プレゼンテーションのために没入型メディアデータをストリーミングさせるように構成される。
【0151】
図15はコードの例示的なブロックを示しているが、幾つかの実装形態では、装置/デバイスは、図15に示されたものよりも追加のブロック、より少ないブロック、異なるブロック、又は異なる配置のブロックを含むことができる。これに加えて又は代えて、装置/デバイスのブロックのうちの2つ以上が組み合わされてもよい。言い換えれば、図15はコードの別個のブロックを示しているが、様々なコード命令は別個である必要はなく、混在する可能性がある。
【0152】
本開示は幾つかの例示的な実施形態を記載しているが、本開示の範囲内に入る変更、置換、及び様々な代替の均等物が存在する。したがって、当業者は、本明細書では明示的に示されていないか、又は記載されていないが、本開示の原理を具体化し、したがってその趣旨及び範囲内にある多数のシステム及び方法を考案できることが理解され得る。
【符号の説明】
【0153】
100 メディアフロープロセス
101 インジェストメディアモジュール
102 処理モジュール
103 配信モジュール
104 ネットワークデバイス
105 ネットワーク接続
106 レンダリングモジュール
107 プレゼンテーションモジュール
108 クライアントデバイス
121 最適化再使用ロジック
200 メディア変換意思決定プロセス
205 メディア
210 アセット再使用ロジック
300 時限メディア表示
300A 時限シーンマニフェスト
301 シーン情報
302 構成要素
303 アセット
303A 時限シーンマニフェスト
304 ベース層
305 属性拡張層
307 固有アセット
308 プロキシアセット
400 非時限メディア及び複雑度表示
401 シーン情報
402 構成要素
403 アセット
404 ベース層
405 属性拡張層
407 シーン情報
408 固有アセット
500 自然メディア合成プロセス
501 第1のカメラ
502 第2のカメラ
503 第3のカメラ
504 合成器
505 ニューラルネットワーク(NN)訓練
506 訓練画像
507 インジェストフォーマット
508 キャプチャNNモデル
509 自然画像コンテンツ
510 破線
600 合成メディアインジェスト作成プロセス
601 カメラ
602 点群
603 コンピュータ
604 共通ゲートウェイインタフェース(CGI)アセット
605 アクター
605A センサ
606 動きデータ
607 合成器
608 合成メディアフォーマット
648 システムバス
700 コンピュータシステム
701 キーボード
702 トラックパッド
703 マウス
704 ジョイスティック
705 マイクロフォン
706 カメラ
707 スキャナ
708 スピーカ
709 スクリーン
710 CD/DVDなどの媒体
712 サムドライブ
713 リムーバブルハードドライブ又はソリッドステートドライブ
714 ネットワーク
715 ネットワークインタフェース
716 周辺バス
717 コア
718 コンピュータ中央処理ユニット(CPU)
719 グラフィック処理ユニット(GPU)
720 フィールドプログラマブルゲートエリア(FPGA)
721 ハードウェアアクセラレータ
722 内部大容量ストレージ
723 読取り専用メモリ(ROM)
724 ランダムアクセスメモリ(RAM)
725 グラフィックスアダプタ
726 システムバス
800 ネットワークメディア配信システム
801 コンテンツ取得モジュール
802 コンテンツ準備モジュール
802 送信モジュール
804 ゲートウェイ
805 セットトップボックス
806 無線復調器
807 レガシー2次元(2D)テレビ
808 WiFi(ルータ)
809 ラップトップ2Dディスプレイ
810 頭部装着型2Dディスプレイ
811 レンチキュラー光照射野ディスプレイ
811A GPU
811B 記憶デバイス
811C 視覚プレゼンテーション構成要素
812 ホログラフィックディスプレイ
812A CPU
812B GPU
812C 記憶デバイス
812D 視覚化構成要素
813 モバイルハンドセットディスプレイ
814 拡張現実(AR)ヘッドセット
814A GPU
814B 記憶デバイス
814C バッテリ
814D 体積視覚プレゼンテーション構成要素
815 高密度光照射野ディスプレイ
815A GPU
815B CPU
815C 記憶デバイス
815D 視線追跡デバイス
815E カメラ
815F 光照射野パネル
900 没入型メディア配信プロセス
901 コンテンツ
902 ネットワークインジェスト作成プロセス
903 インジェストメディアストレージ
904 クライアント固有情報
905 ネットワークオーケストレータ
906 配信メディア及び記述情報
907 クライアント進捗状況及び状況フィードバックチャネル
908 クライアントデバイス
908A 視覚化構成要素
908B ネットワークインタフェース
908C GPU
908D 記憶デバイス又はストレージキャッシュ
909 配信用に準備されたメディア
910 メディア適応及びフラグメンテーションモジュール
911 メディア再使用解析器
912 破線
1000 メディア適応プロセス
1001 適応モジュール
1001A NNモデル
1001B レンダラ
1001C プロセッサ
1001D メディア圧縮器
1001E メディア解凍器
1001F ロジックコントローラ
1002 記憶デバイス
1005 ネットワーク状態
1006 クライアント適応メディア
1100 配信フォーマット作成プロセス
1103 メディアパッケージングモジュール
1104 配信フォーマット
1104A 情報マニフェスト
1104B シーンデータアセット
1110 頻度プロセス
1200 パケット化プロセス、パケット化システム
1201 入力メディア
1202 パケット化器
1203 パケット
1303 インジェストメディアサーバ
1307 メディアサーバ
1308 メディア要求
1309 プロファイル要求
1310 応答
1311 セッションIDトークン
1312 インジェストメディア
1313 応答
1314 呼び出し
1315 要求
1316 要求
1317 応答
1318 要求
1319 更新応答
1320 インタフェース呼び出し
1321 応答
1322 応答
1323 要求
1324 メッセージ
1420 固有アセット
1500 コンピュータコード
1510 受信コード
1520 取得コード
1530 解析コード
1540 シーケンシングコード
1550 ストリーミングコード
3030 頻度
3031 シーン情報
3032 構成要素
3033 アセット
3034 ベース層
3035 属性拡張層
3037 固有アセット
3038 プロキシアセット
4040 順序付き複雑度表示
4041 シーン情報
4042 構成要素
4043 アセット
4044 ベース層
4045 属性拡張層
4047 時限シーン情報
4048 固有アセット
11043 メディアパッケージングモジュール
11044 配信フォーマット
11044A 情報マニフェスト
11044B シーンデータアセット
図1A
図1B
図2A
図2B
図3A
図3B
図4A
図4B
図5
図6
図7
図8
図9
図10
図11A
図11B
図12
図13
図14A
図14B
図15
【手続補正書】
【提出日】2023-09-07
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサによって実行される、没入型メディア配信を最適化するためにメディアをパッケージングするための方法であって、前記方法は、
没入型プレゼンテーションのための没入型メディアデータを受信するステップと、
前記没入型プレゼンテーションのための前記没入型メディアデータに含まれるシーンのセットに対応するメディアアセットと関連付けられるアセット情報を取得するステップと、
前記メディアアセットの特性を前記アセット情報に基づいて解析するステップであって、前記特性が、それぞれのメディアアセットと関連付けられるアセットタイプと、前記没入型プレゼンテーションに含まれる前記シーンのセットの中で前記それぞれのメディアアセットが使用される回数を示す頻度とを含む、ステップと、
前記メディアアセットのそれぞれと関連付けられる前記アセットタイプ及び前記頻度に基づいて前記メディアアセットをあるシーケンスに順序付けるステップと
を含む、方法。
【請求項2】
前記メディアアセットの前記シーケンスは、最初に前記アセットタイプによって順序付けられ、次に頻度を増減することによって順序付けられる、請求項1に記載の方法。
【請求項3】
前記没入型メディアデータが1つ以上のシーンを含み、前記1つ以上のシーンは、時限シーン、非時限シーン、又は時限シーンと非時限シーンとの組合せである、請求項1に記載の方法。
【請求項4】
前記アセット情報は前記それぞれのメディアアセットのベース表示とアセット拡張層のセットとを含み、前記アセット拡張層のセットが前記メディアアセットの前記特性に対応する属性情報を含み、
前記アセット拡張層のセットが前記メディアアセットの前記ベース表示に適用される場合、前記それぞれのメディアアセットの前記ベース表示は、前記メディアアセットの前記ベース表示を含むベース層でサポートされない特徴を含むように拡張される、請求項1に記載の方法。
【請求項5】
前記メディアアセットの前記シーケンスを、ネットワーク上での表示及びストリーミングのための個々のパケットに分離するステップと、
前記メディアアセットの前記順序付けられたシーケンスに基づいて前記没入型プレゼンテーションのための前記没入型メディアデータをストリーミングするステップと
を更に含む、請求項1に記載の方法。
【請求項6】
シーンの複雑さに基づいて、前記シーンのセット内の前記シーンに対応する前記没入型メディアデータのフォーマットが没入型メディア配信前に第1のフォーマットから第2のフォーマットに変換されるべきかどうかを決定するステップと、
前記シーンに対応する前記没入型メディアデータが変換されるべきであるという決定に基づいて、前記没入型メディアデータのソース又は前記没入型メディアデータのクライアントが前記第1のフォーマットから前記第2のフォーマットへの変換を実行するべきであるかどうかを決定するステップと
を更に含む、請求項1に記載の方法。
【請求項7】
前記それぞれのメディアアセットが既にストリーミングされたかどうかを決定するステップと、
前記それぞれのメディアアセットが既にストリーミングされたと決定される場合、前記メディアアセットの前記シーケンス内で前記それぞれのメディアアセットを置き換えるプロキシを作成するステップと
を更に含む、請求項1に記載の方法。
【請求項8】
没入型メディア配信を最適化するためにメディアをパッケージングするためのデバイスであって、請求項1から7のいずれか一項に記載の方法を実施するように構成される処理回路を備えるデバイス。
【請求項9】
少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに、請求項1から7のいずれか一項に記載の方法を行わせるように構成されたコンピュータプログラム。
【国際調査報告】