(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-04
(45)【発行日】2024-01-15
(54)【発明の名称】空間認識型マルチメディアルータシステムおよび方法
(51)【国際特許分類】
H04N 7/15 20060101AFI20240105BHJP
H04L 67/131 20220101ALI20240105BHJP
【FI】
H04N7/15 120
H04N7/15
H04L67/131
【外国語出願】
(21)【出願番号】P 2021138812
(22)【出願日】2021-08-27
【審査請求日】2022-01-18
(32)【優先日】2020-08-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520509030
【氏名又は名称】ティーエムアールダブリュー ファウンデーション アイピー エスエーアールエル
(74)【代理人】
【識別番号】100114775
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100202751
【氏名又は名称】岩堀 明代
(74)【代理人】
【識別番号】100208580
【氏名又は名称】三好 玲奈
(74)【代理人】
【識別番号】100191086
【氏名又は名称】高橋 香元
(72)【発明者】
【氏名】セヴァト,イエルリ
【審査官】鈴木 順三
(56)【参考文献】
【文献】米国特許出願公開第2019/0310757(US,A1)
【文献】国際公開第2010/065848(WO,A2)
【文献】特開2019-082997(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/14 - 7/173
H04N 21/00 - 21/858
H04L 67/00 - 67/75
(57)【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサおよびメモリを備えた少なくとも1つのメディアサーバコンピュータを備え、前記少なくとも1つのメディアサーバコンピュータは
、空間分析メディアサーバ(SAMS)として構成され、それぞれのユーザに関連付けられたクライアント装置からの着信マルチメディアストリーム
、ユーザ優先度データ、および空間定位データを含む着信データを受信して分析し、かつ前記クライアント装置から受信した前記着信データに基づいて個々のクライアント装置のために発信マルチメディアストリームを適合させるように構成されており、前記着信マルチメディアストリームは少なくとも1つの仮想環境内からの要素を含み、かつ前記発信マルチメディアストリームは、
前記ユーザ優先度データおよび、前記少なくとも1つの仮想環境
における、前記ユーザの対応するユーザグラフィック表現と
前記少なくとも1つの仮想環境内での前記着信マルチメディアストリームのソースとの空間的関係を記述する
前記空間定位データに基づいて前記個々のクライアント装置のために適合されていることを特徴とするマルチメディアルータシステム。
【請求項2】
前記少なくとも1つの仮想環境は、ネットワークを介して前記少なくとも1つのメディアサーバコンピュータに接続された少なくとも1つの専用サーバコンピュータでホストされているかピアツーピアインフラでホストされており、かつ前記少なくとも1つのメディアサーバコンピュータを経由して中継される、請求項1に記載のシステム。
【請求項3】
前記少なくとも1つの仮想環境は実世界位置の仮想レプリカを含み、前記実世界位置は、さらなるデータを前記実世界位置の前記仮想レプリカに提供する複数のセンサを備える、請求項1
または2に記載のシステム。
【請求項4】
前記少なくとも1つのメディアサーバコンピュータは、前記着信データを別個のタイルを含むモザイクの形態で組み合わせるようにさらに構成されており、ここではユーザグラフィック表現の個々のマルチメディアストリームがストリームされる、請求項1
乃至3のいずれか一項に記載のシステム。
【請求項5】
前記少なくとも1つのメディアサーバコンピュータは、多地点制御装置(MCU)、クラウドメディアミキサーまたはクラウド3Dレンダラーとして構成されている、請求項1
乃至4のいずれか一項に記載のシステム。
【請求項6】
前記少なくとも1つのメディアサーバコンピュータは各クライアント装置の着信データを分析および処理し、かつユーザ優先度および、前記対応するユーザグラフィック表現と前記着信マルチメディアストリームの前記ソースとの前記空間的関係を決定するように構成されている、請求項1
乃至5のいずれか一項に記載のシステム。
【請求項7】
前記発信マルチメディアストリームを適合させることは、前記1つ以上の受信側クライアント装置のために帯域幅および計算リソース利用を最適化することを含む、請求項1
乃至6のいずれか一項に記載のシステム。
【請求項8】
前記発信マルチメディアストリームを適合させることは、一時的な特徴、空間特徴、品質もしくは色特徴またはそれらの組み合わせを適合させることを含む、請求項1
乃至7のいずれか一項に記載のシステム。
【請求項9】
空間分析メディアサーバ(SAMS)として構成された少なくとも1つのメディアサーバコンピュータによって
、それぞれのユーザと関連付けられた複数のクライアント装置からの着信マルチメディアストリーム
、ユーザ優先度データおよび、仮想環境における対応するユーザグラフィック表現と前記少なくとも1つの仮想環境内での前記着信マルチメディアストリームのソースとの空間的関係を記述する空間定位データを含む着信データを受信する工
程と、
前記仮想環境内からのグラフィカル要素を含む前記複数のクライアント装置からの前記着信データを分析する工程と、
前記複数のクライアント装置から受信した前記着信データ
の前記ユーザ優先度データ、および前記空間定位データに基づいて発信マルチメディアストリームを適合させる工程と、
前記適合された発信マルチメディアストリームを1つ以上の受信側クライアント装置に転送する工程であって、前記適合された発信マルチメディアストリームは、前記1つ以上の受信側クライアント装置のユーザに表示されるように構成されている工程と
を含む、マルチメディアルーティング方法。
【請求項10】
前記着信データを別個のタイルを含むモザイクの形態で組み合わせることをさらに含み、ここでは前記ユーザグラフィック表現の個々のマルチメディアストリームがストリームされる、請求項
9に記載の方法。
【請求項11】
ユーザ優先度および、前記対応するユーザグラフィック表現と前記着信マルチメディアストリームの前記ソースとの前記空間的関係を決定することをさらに含む、請求項
9または10に記載の方法。
【請求項12】
前記発信マルチメディアストリームを適合させることは、前記1つ以上の受信側クライアント装置のために帯域幅および計算リソース利用を最適化することを含む、請求項
9乃至11のいずれか一項に記載の方法。
【請求項13】
前記発信マルチメディアストリームを適合させることは、一時的な特徴、空間特徴、品質もしくは色特徴またはそれらの組み合わせを適合させることを含む、請求項
9乃至12のいずれか一項に記載の方法。
【請求項14】
プロセッサおよびメモリを備えた少なくとも1つのメディアサーバコンピュータに、
請求項9乃至13のいずれか一項に記載の方法を行わせるように構成された命令がそこに記憶されているコンピュータ
で読み取り可能な記録読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、本出願と同時に出願された「仮想環境において仮想の存在との対話を可能にするシステムおよび方法(System and Method Enabling Interactions in Virtual Environments with Virtual Presence)」という発明の名称の同時係属中の米国特許出願第17/006,327号に関し、これは参照により本明細書に組み込まれる。
【0002】
本開示は一般にコンピュータシステムに関し、より具体的にはマルチメディアルータシステムおよび方法に関する。
【背景技術】
【0003】
ビデオ会議は複数のユーザ間でのリモート通信を可能にし、複数の位置にいる人々のための比較的低コストであり、かつ高速な通信ツールになりつつある。ビデオ会議は最近では、ブロードバンドネットワークの広範囲な展開、ビデオ圧縮技術の進歩、ならびにより低いインフラ要求および低コストでのウェブベースのビデオ通信を実行するための手法の高可用性により一般的になっている。
【0004】
例えば、ビデオ会議を可能にするそのような手法の1つは、各クライアント装置がマルチメディアストリームを全ての他のクライアント装置に送信するメッシュ(ピアツーピア)インフラである。これはどんな中間インフラも必要としない低コストソリューションの代表であるが、高速帯域幅の過負荷およびクライアント装置の限られた処理能力により、結果としてスケーラビリティが低下する。
【0005】
別の手法例は多地点制御装置(MCU:multipoint control unit)であり、これは、中央メディアサーバに実装されている場合、クライアント装置からマルチメディアストリームの全てを受信し、それらのストリームの全てをデコードし、かつ1つのストリームに組み合わせ、これを再エンコードして全てのクライアント装置に送信し、このようにしてピアツーピアモデルに関連する待ち時間および帯域幅問題を減らす。しかしMCU実装は複雑になる傾向があり、メディアサーバからの多くの計算リソースを必要とする。
【0006】
別の手法例はSFU(selective forwarding unit)であり、これはWebリアルタイム通信(WebRTC)ビデオ会議規格で使用されている。WebRTC規格は一般に、ビデオ通信エンドポイントに接続するためのプラグインの必要性を回避しながら、音声呼出し、ビデオチャットおよびピアツーピア(P2P)ファイル共有アプリケーションなどのブラウザ間アプリケーションをサポートする。中央メディアサーバコンピュータに実装することができるSFUは、そのサーバにおいて集中的なメディア処理(例えば、デコードおよび再エンコード)を行うことなくビデオストリーム内のビデオパケットを複数の参加者装置にルーティングするように構成されたソフトウェアプログラムを備える。従って、SFUはネットワークを通じてクライアント装置からエンコードされたメディアストリームの全てを受信し、次いでそれらのストリームを、その後のデコードおよび表示のためにそれぞれの参加者のクライアント装置に選択的に転送する。SFUの転送の選択性は、マルチメディアストリームの転送に関連する帯域幅の最適化に使用することができる複数のパラメータに基づいていてもよく、それにより、より高い体感品質(QoE)がもたらされる。例えばSFUは、受信したマルチメディアストリームから話している参加者を特定してもよく、かつ聞いている参加者に高ビットレートマルチメディアストリームを転送してもよく、他方でSFUは、聞いている参加者の低ビットレートマルチメディアストリームを他の参加者に送信してもよく、それによりある程度の帯域幅およびQoEの向上を達成する。
【0007】
典型的なビデオ会議ツールの限界の1つは、上記手法などによる中央メディアまたはルーティングサーバまたは参加しているクライアント装置のいずれかの帯域幅および処理能力の限界を考えた場合の限られたスケーラビリティである。従って必要とされているものは、関連する参加者のために高いQoEを維持しながら、マルチメディアルーティングおよび転送動作の間にネットワーク帯域幅および計算リソースのさらなる最適化を可能にする新規な手法である。
【発明の概要】
【0008】
本概要は、単純化された形態での選択された概念を紹介するために提供されており、これは発明を実施するための形態において以下でさらに説明されている。本概要は特許請求されている主題の重要な特徴を特定するためのものでもなければ、特許請求されている主題の範囲を決定するのを助けるものとして使用されるものでもない。
【0009】
本開示の一態様では、空間認識型マルチメディアルータシステムが提供される。空間認識型マルチメディアルータシステムは、少なくとも1つのプロセッサと、クライアント装置間でのデータ交換を管理するデータ交換管理モジュールを実行する命令を記憶しているメモリとを備えた少なくとも1つのメディアサーバコンピュータを備える。一実施形態では本システムは、複数のクライアント装置のユーザの1つ以上のグラフィック表現(ユーザグラフィック表現ともいう)へのアクセスを可能にする、少なくとも1つのメディアサーバコンピュータに接続された少なくとも1つの仮想環境を実行する1つ以上の計算装置をさらに備える。複数のマルチメディアストリーム(例えば、2Dビデオストリーム、3Dビデオストリーム、音声ストリーム、そのようなストリームの組み合わせまたは他のメディアストリーム)が、仮想環境内の仮想要素および少なくとも1つのクライアント装置からの入力データを考慮して仮想環境内から生成される。従って入力データは受信され、複数の仮想要素およびクライアント装置の対応するユーザの少なくとも1つのグラフィック表現を含む仮想環境内で組み合わせられる。複数のクライアント装置はネットワークを介して少なくとも1つのメディアサーバコンピュータに接続されており、マルチメディアストリームを含むデータを少なくとも1つのメディアサーバコンピュータに送信するように構成されている。
【0010】
少なくとも1つのメディアサーバは、クライアント装置から着信マルチメディアストリームを含む着信データを受信して分析し、かつ着信データに基づいて個々のクライアント装置のために発信マルチメディアストリームを適合させるように構成されている。着信マルチメディアストリームは少なくとも1つの仮想環境内からの要素を含む。発信マルチメディアストリームは、例えばユーザ優先度データおよび、例えば少なくとも1つの仮想環境内での対応するユーザグラフィック表現と着信マルチメディアストリームのソースとの間の空間的関係を記述する空間定位データに基づいて個々のクライアント装置のために適合されている。
【0011】
一実施形態では、少なくとも1つのメディアサーバコンピュータは、クライアント装置からのマルチメディアストリームを含む着信データを分析および処理すること、および少なくとも1つの仮想環境内からの要素を含む複数のクライアント装置から受信した着信データに基づいて発信マルチメディアストリームの転送を評価および最適化することを含むデータ交換管理を行う。着信データは、ユーザ優先度データおよび対応するユーザグラフィック表現と着信マルチメディアストリームとの空間的関係に関連づけられている。
【0012】
いくつかの実施形態では、少なくとも1つの仮想環境は、ネットワークを介して少なくとも1つのメディアサーバコンピュータに接続された少なくとも1つの専用サーバコンピュータでホストされている。他の実施形態では、少なくとも1つの仮想環境はピアツーピアインフラでホストされており、少なくとも1つのメディアサーバコンピュータを経由して中継される。仮想環境はユーザが互いに対話することができるリアルタイムビデオ通信をホストするために使用することができ、特に会議、仕事、教育、買い物、エンターテイメントおよびービス提供のために使用することができる。いくつかの実施形態では、仮想環境は実世界位置の仮想レプリカであり、ここでは実世界位置はさらなるデータを実世界位置の仮想レプリカに提供する複数のセンサを備える。
【0013】
いくつかの実施形態では、少なくとも1つのメディアサーバコンピュータはルーティングトポロジーを使用する。他の実施形態では、少なくとも1つのメディアサーバコンピュータはメディア処理トポロジーを使用する。他の実施形態では、少なくとも1つのメディアサーバコンピュータは転送サーバトポロジーを使用する。他の実施形態では、少なくとも1つのメディアサーバコンピュータは、他の好適なマルチメディアサーバルーティングトポロジー、メディア処理および転送サーバトポロジーまたは他の好適なサーバトポロジーを使用する。
【0014】
少なくとも1つのメディアサーバコンピュータがルーティングトポロジーを使用する一実施形態では、少なくとも1つのメディアサーバコンピュータは、SFUトポロジー、TURN(Traversal Using Relay NAT)、SAMS(spatially analyzed media server)トポロジーまたはいくつかの他のマルチメディアサーバルーティングトポロジーを使用する。
【0015】
少なくとも1つのメディアサーバコンピュータがメディア処理トポロジーを使用する一実施形態では、少なくとも1つのメディアサーバコンピュータは、圧縮、暗号化、再暗号化、復号、デコード、組み合わせ、改良、混合、向上、拡張、計算、操作、エンコードまたはそれらの組み合わせを含む着信データに対する1つ以上の動作を行うように構成されている。さらなる実施形態では、着信データの組み合わせは別個のタイルを含むモザイクの形態で行われ、ここではユーザグラフィック表現の個々のマルチメディアストリームがストリームされる。
【0016】
少なくとも1つのメディアサーバコンピュータが転送サーバトポロジーを使用する一実施形態では、少なくとも1つのメディアサーバコンピュータは、多地点制御装置(MCU)またはクラウドメディアミキサーまたはクラウド3Dレンダラーとして構成されている。
【0017】
SAMSとして構成されている少なくとも1つのメディアサーバコンピュータの一実施形態では、少なくとも1つのメディアサーバコンピュータは、ユーザ優先度および空間的関係(例えば、対応するユーザグラフィック表現と着信マルチメディアストリームのソースとの空間的関係)に関して各クライアント装置の着信データを分析および処理するように構成されている。そのような実施形態では、少なくとも1つのメディアサーバコンピュータはさらに、そのようなデータに基づいてユーザ優先度および/または空間的関係を決定するように構成されていてもよい。着信データは特定の実施形態では、メタデータ、優先度データ、データクラス、空間構造データ、シーングラフ、3次元位置、向きもしくは移動情報、話し手もしくは聞き手ステータスデータ、可用性ステータスデータ、画像データ、スケーラブルビデオコーデックベースのビデオまたはそれらの組み合わせのうち1つ以上を含む。さらなる実施形態では、発信マルチメディアストリームを適合させること(例えば、SAMSを実装している少なくとも1つのメディアサーバコンピュータによって実行される)は、1つ以上の受信側クライアント装置のために帯域幅および計算リソース利用を最適化することを含む。発信マルチメディアストリームを適合させることは、一時的な特徴、空間特徴、品質もしくは色特徴またはそれらの組み合わせを適合させることも含んでもよい。なおさらなる実施形態では、SAMSは一時的な特徴、空間特徴、品質および色特徴のためにメディアを修正、アップスケールまたはダウンスケールすることにより、発信データストリームの各受信側クライアント装置への転送を最適化する。
【0018】
本開示の別の態様では、空間認識型マルチメディアルータ方法が提供される。空間認識型マルチメディアルータ方法は、少なくとも1つのメディアサーバコンピュータのメモリに、複数のクライアント装置間でのデータ交換を管理するクライアント装置データ交換管理モジュールを実行するデータおよび命令を提供する工程を含む。本方法は、少なくとも1つのメディアサーバコンピュータによって、複数のクライアント装置からの着信マルチメディアストリームを含む着信データを受信する工程により進行し、ここでは着信データはユーザ優先度データおよび空間定位データに関連づけられている。例えば空間定位データは、例えば対応するユーザグラフィック表現と着信マルチメディアストリームの1つ以上のソースとの空間的関係を記述していてもよい。その後に本方法は、データ交換管理モジュールによってデータ交換管理を行う工程により継続する。一実施形態では、データ交換管理は、仮想環境内からのグラフィカル要素を含む複数のクライアント装置からの着信データを分析および/または処理すること、および複数のクライアント装置から受信した着信データに基づいて発信マルチメディアストリームを適合させることを含む。本方法は、適合された発信マルチメディアストリームを1つ以上の受信側クライアント装置に転送する工程により終了し、ここでは適合された発信マルチメディアストリームは、1つ以上の受信側クライアント装置において(例えば、ユーザグラフィック表現により表されているユーザに)表示されるように構成されている。
【0019】
いくつかの実施形態では、本方法は、発信マルチメディアストリームを転送する際に、ルーティングトポロジー、メディア処理トポロジー、転送サーバトポロジー、他の好適なマルチメディアサーバルーティングトポロジー、メディア処理および転送サーバトポロジーまたは他の好適なサーバトポロジーを利用することをさらに含む。
【0020】
いくつかの実施形態では、ルーティングトポロジーにおいて少なくとも1つのメディアサーバコンピュータは、SFUトポロジー、TURN、SAMSまたは別のマルチメディアサーバルーティングトポロジーを使用する。
【0021】
いくつかの実施形態では、メディア処理トポロジーにおいて少なくとも1つのメディアサーバコンピュータは、着信データに対して圧縮、暗号化、再暗号化、復号、デコード、組み合わせ、改良、混合、向上、拡張、計算、操作、エンコードまたはそれらの組み合わせを含む1つ以上のメディア処理動作を行うように構成されている。
【0022】
いくつかの実施形態では、本方法は転送サーバトポロジーを利用する際に、多地点制御装置(MCU)、クラウドメディアミキサーおよびクラウド3Dレンダラーのうちの1つ以上を利用することをさらに含む。
【0023】
SAMS構成を用いるいくつかの実施形態では、本方法は、ユーザ優先度および空間的関係(例えば、対応するユーザグラフィック表現と着信マルチメディアストリームのソースとの距離関係または他の空間的関係)に関して各クライアント装置の着信データを分析および処理することをさらに含む。そのような実施形態では、本方法は、そのようなデータに基づいてユーザ優先度および/または空間的関係を決定することをさらに含んでいてもよい。着信データは、メタデータ、優先度データ、データクラス、空間構造データ、シーングラフ、3次元位置、向きもしくは移動情報、話し手もしくは聞き手ステータスデータ、可用性ステータスデータ、画像データおよびスケーラブルビデオコーデックベースのビデオまたはそれらの組み合わせのうちの1つ以上を含む。
【0024】
いくつかの実施形態では、発信マルチメディアストリームを適合させること(例えば、SAMSを実装している少なくとも1つのメディアサーバコンピュータによって実行される)は、1つ以上の受信側クライアント装置のために帯域幅および計算リソース利用を最適化することを含む。発信マルチメディアストリームを適合させることは、一時的な特徴、空間特徴、品質もしくは色特徴またはそれらの組み合わせを適合させることも含んでもよい。さらなる実施形態では、SAMSは一時的な特徴、空間特徴、品質および色特徴のためにメディアを修正、アップスケールまたはダウンスケールすることにより、発信データストリームの各受信側クライアント装置への転送を最適化する。
【0025】
本開示の別の態様では、コンピュータ可読媒体は、1つ以上の計算装置に本明細書に記載されている技術のいずれかを行わせるように構成されたそこに記憶された命令を有する。一実施形態では、少なくとも1つのコンピュータ可読媒体は、プロセッサおよびメモリを備えた少なくとも1つのメディアサーバコンピュータに、少なくとも1つのメディアサーバコンピュータによって複数のクライアント装置からの着信マルチメディアストリームを含む着信データを受信する工程であって、着信データは、1つ以上のユーザグラフィック表現と少なくとも1つの仮想環境の少なくとも1つの要素との空間的関係を記述している空間定位データに関連づけられている工程と、複数のクライアント装置からの着信データを分析する工程と、複数のクライアント装置から受信した着信データに基づいて発信マルチメディアストリームを適合させる工程と、適合された発信マルチメディアストリームを受信側クライアント装置に転送する工程であって、適合された発信マルチメディアストリームは受信側クライアント装置において表示されるように構成されている工程とを含む工程を行わせるように構成された命令をそこに記憶している。
【0026】
上記概要は本開示の全ての態様の包括的なリストを含んでいない。本開示は、上に要約されている様々な態様の全ての好適な組み合わせ、ならびに以下の発明を実施するための形態に開示されているものおよび特に本出願と共に提出されている特許請求の範囲の箇所に示されているものから実施することができる全てのシステムおよび方法を含むことが意図されている。そのような組み合わせは、上記概要に具体的に記載されていない利点を有する。本発明の他の特徴および利点は、添付の図面および以下に続く発明を実施するための形態から明らかになるであろう。
【0027】
本開示の特定の特徴、態様および利点は、以下の説明および添付の図面に関してより良く理解されるであろう。
【図面の簡単な説明】
【0028】
【
図1】従来のSFUルーティングトポロジーの概略図を示す。
【
図2】一実施形態に係る空間認識型マルチメディアルータシステムの概略図を示す。
【
図3】一実施形態に係る、SAMSとして構成された少なくとも1つのメディアサーバコンピュータを備えたシステムの概略図を示す。
【
図4B】一実施形態に係る、本開示のSAMSトポロジーを用いている仮想環境内で話しているユーザからの発信メディアストリームの転送の概略図を示す。
【
図5A】一実施形態に係る、SAMSが複数のクライアント装置のメディアストリームを組み合わせている使用シナリオの概略図を示す。
【
図5B】一実施形態に係る、SAMSが複数のクライアント装置のメディアストリームを組み合わせている使用シナリオの概略図を示す。
【
図6】一実施形態に係る本開示の空間認識型マルチメディアルータ方法のブロック図を示す。
【発明を実施するための形態】
【0029】
以下の説明では、様々な実施形態を例示として示す図面を参照する。また様々な実施形態をいくつかの例を参照することにより以下で説明する。当然のことながら、当該実施形態は特許請求されている主題の範囲から逸脱することなく設計および構造における変化を含んでもよい。
【0030】
本開示は、複数のクライアント装置から入力データを受信し、かつ入力データに対してデータ交換管理を実行するように構成された空間認識型マルチメディアルータシステムおよび方法を提供する。入力データを受信して、複数の仮想要素およびクライアント装置の対応するユーザの少なくとも1つのグラフィック表現を含む仮想環境内で組み合わせる。仮想環境は、ユーザが互いに対話することができるリアルタイムビデオ通信をホストするために使用することができ、特に会議、仕事、教育、買い物、エンターテイメントおよびサービス提供のために使用することができる。データ交換管理は、クライアント装置からの少なくともマルチメディアストリーム(例えば、2Dビデオストリーム、3Dビデオストリーム、音声ストリーム、そのようなストリームの組み合わせまたは他のメディアストリーム)を含む着信データを分析および処理すること、および少なくとも1つの仮想環境内からの要素を含む複数のクライアント装置から受信した着信データに基づいて発信マルチメディアストリームの転送を評価および最適化することを含む。着信データはユーザ優先度データおよび、対応するユーザグラフィック表現と着信マルチメディアストリームとの空間的関係に関連づけられている。従って、本開示のシステムおよび方法は、受信側クライアント装置の最適な選択が行われるように、入力データおよび発信マルチメディアストリームの転送を同時に最適化しながら、クライアント装置によって受信されたマルチメディアストリームのルーティングが仮想環境内で行われるのを可能にし、同時に帯域幅および計算リソースの効率を可能にする。これらの効率により、本開示の空間認識型マルチメディアルータシステムおよび方法は、仮想環境にアクセスしている多数(例えば、数百もしくは数千)のユーザを含むマルチユーザビデオ会議の処理のための実行可能かつ有効な選択肢となることができる。
【0031】
図1は、従来のSFUルーティングトポロジー100の概略図を示す。
【0032】
例示的な従来のSFUルーティングトポロジー100は、リアルタイムビデオアプリケーションにおけるビデオ転送を提供するために、少なくとも1つのプロセッサ104とSFU108を実行するコンピュータプログラムを記憶しているメモリ106とを備えた少なくとも1つのメディアサーバコンピュータ102を備える。複数のクライアント装置110はSFU108を介してリアルタイムで通信することができ、SFU108は、1つ以上のパラメータに基づいてリアルタイムトランスポートプロトコル(RTP)ビデオパケットを含む発信メディアストリームをクライアント装置110に転送する。例えばクライアント装置Bは、クライアント装置Aとのリアルタイム通信中の現在の話し手を表してもよい。クライアント装置Bは、例えば1つのメディアストリームが高解像度(B)112で送信され、かつ1つのメディアストリームが低解像度(B)114で送信される2つ以上のメディアストリームをクライアント装置Aに送信する。さらにこの例では、クライアント装置Aも、高解像度(A)116の1つのメディアストリームおよび低解像度(A)118の1つのメディアストリームなどの2つ以上のメディアストリームをクライアント装置Bに送信してもよい。クライアント装置Bはクライアント装置Aから低解像度(A)118メディアストリームを受信してもよく、その際にクライアント装置Aはその瞬間にクライアント装置Bのユーザの話を聞いているだけの受動的ユーザによって使用されていてもよい。他方でクライアント装置Aはクライアント装置からBから高解像度(B)112メディアストリームを受信してもよく、その際にクライアント装置Bのユーザは現在話している能動的ユーザであってもよい。少なくとも1つのメディアサーバコンピュータ102および2つ以上のクライアント装置110は、1つ以上の有線もしくは無線通信ネットワーク(例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、パス、リンクならびにルータ、ゲートウェイ、ファイアウォールおよびスイッチなどのあらゆる中間ノードのネットワークハードウェア)などのネットワークを介して接続されていてもよい。ビデオアプリケーションは、例えばマルチパーティビデオ会議アプリケーションを実行するためのWebRTC規格を利用していてもよい。
【0033】
SFUルーティングトポロジー100は、「クライアント装置110のステータスに関わらず各メディアストリームを各クライアント装置110に転送しなければならない」、「メディアストリームに対するデータ動作などのメディア修正(例えば、拡張、向上、組み合わせなど)を可能にしない」、および「限られたパラメータを考慮して発信メディアストリームを優先順位付けおよび最適化し、本システムのための準最適なネットワーク帯域幅およびリソース最適化をもたらし、最終的にマルチメディアストリームと同時に対話してそれを見ることができるユーザの数を制限する」などの限界を含んでいてもよい。最後に、従来のSFUルーティングトポロジー100は、仮想環境においてビデオ通信および社会的対話などの対話を可能にするのに最適なものではない。
【0034】
図2は、一実施形態に係る空間認識型マルチメディアルータシステム200の概略図を示す。
【0035】
空間認識型マルチメディアルータシステム200は、少なくとも1つのプロセッサ204と、ネットワーク212を介して少なくとも1つのメディアサーバコンピュータ202に接続されたクライアント装置210間でのデータ交換を管理するデータ交換管理モジュール208を実行する命令を記憶しているメモリ206とを備えた少なくとも1つのメディアサーバコンピュータ202を備える。空間認識型マルチメディアルータシステム200は、仮想環境214において複数のクライアント装置210のユーザ216の1つ以上のユーザグラフィック表現へのアクセスを可能にする、少なくとも1つのメディアサーバコンピュータ202に接続された少なくとも1つの仮想環境サーバ220をさらに備えていてもよい。複数のマルチメディアストリームは、1人以上のユーザ216からのライブフィードデータを取得するカメラ218により得られたマルチメディアストリームおよび仮想環境内からのグラフィカル要素を含む仮想環境214内から生成される。
【0036】
少なくとも1つのメディアサーバコンピュータ202は、複数のクライアント装置210から受信した入力データの記憶、処理、ルーティングおよび転送などの本明細書に開示されている技術を行うためのリソース(例えば、ネットワークアクセス能力と共に少なくとも1つのプロセッサ204およびメモリ206)を含むサーバ計算装置である。少なくとも1つのメディアサーバコンピュータ202は、仮想環境214内からのグラフィカル要素を含むクライアント装置210からのマルチメディアストリームを含む着信データを分析および処理すること、および発信マルチメディアストリームを適合させることを含むデータ交換管理モジュール208によるクライアント装置データ交換管理を行う。一実施形態ではこれは、複数のクライアント装置210から受信した着信データに基づいて発信マルチメディアストリームの転送を評価および最適化することを含む。発信マルチメディアストリームは、着信データ(例えばユーザ優先度データ)および、例えば少なくとも1つの仮想環境内での対応するユーザグラフィック表現と着信マルチメディアストリームのソースとの間の空間的関係を記述する空間定位データに基づいて個々のクライアント装置のために適合されている。一実施形態では、着信データは、1つ以上のユーザグラフィック表現と少なくとも1つの仮想環境214の少なくとも1つの要素との空間的関係に関連づけられている。
【0037】
少なくとも1つの仮想環境214は、いくつかの実施形態では、実世界位置の仮想レプリカである。実世界位置は、仮想環境214を介して実世界データを実世界位置の仮想レプリカに提供する複数のセンサを備えていてもよい。センサはキャプチャされたデータを、ネットワーク212を介して仮想環境サーバ220に送信してもよく、これを少なくとも1つのメディアサーバ202により利用して、実世界要素の対応する仮想レプリカを少なくとも1つの仮想環境において更新、エンリッチおよび同期してもよい。さらに1つ以上のメディアサーバ202はさらに、実世界データを仮想データにより拡張するためにセンサによってキャプチャされた実世界データと仮想環境214における仮想データとを仮想環境214の中にマージするように構成されていてもよい。
【0038】
本開示において「エンリッチする」という用語は、マルチソースデータに基づいてさらなる特性を仮想レプリカに与える行為を記述するために使用される。仮想レプリカをエンリッチすることは、仮想レプリカに以前に存在していなかった可能性のある1つ以上の新しい形態のデータで仮想レプリカを更新するという特殊な形態とみなしてもよい。例えば仮想レプリカをエンリッチするとは、複数の装置にあるセンシング機構からキャプチャされた実世界データを提供することを指してもよい。さらなる実世界データは、例えばビデオデータ、温度データ、リアルタイムエネルギー消費データ、リアルタイム水消費データ、速度または加速度データなどを含んでもよい。
【0039】
一実施形態では、少なくとも1つの仮想環境214は、仮想環境214を実行する少なくとも1つのプロセッサ222とメモリ224とを備えた少なくとも1つの仮想環境サーバコンピュータ220でホストされている。別の実施形態では、少なくとも1つの仮想環境214はピアツーピア(P2P)インフラでホストされており、少なくとも1つのメディアサーバコンピュータ202を経由して複数のクライアント装置210に中継される。
【0040】
少なくとも1つの仮想環境214の配置は、会議(例えば仮想の会議室として)、仕事(例えば仮想のオフィス空間として)、教育(例えば仮想の教室として)、買い物(例えば仮想の店として)、エンターテイメント(例えば、カラオケ、イベントホールまたはアリーナ、劇場、ナイトクラブ、競技場またはスタジアム、博物館、クルーズ船、ビデオゲームなど)およびサービス提供(例えば、ホテル、旅行業者またはレストランの予約または注文、政府機関サービスなど)などのための1つ以上のテーマに関連づけられていてもよい。同じおよび/または異なるテーマからの仮想環境214の組み合わせは、仮想環境クラスタを形成してもよく、これは数百またはさらには数千もの仮想環境を含んでいてもよい(例えば、複数の仮想の教室は仮想の学校の一部であってもよい)。仮想環境214は、仮想環境214のテーマに関連づけられた物理的配置および外観を含む2Dもしくは3D仮想環境であってもよく、これはユーザの嗜好または必要性に応じてユーザによってカスタマイズされていてもよい。ユーザは、仮想環境214内に挿入して2次元もしくは3次元の仮想環境214とグラフィック的に組み合わせることができるグラフィック表現を介して、仮想環境214にアクセスしてもよい。
【0041】
少なくとも1つの仮想環境サーバコンピュータ220またはP2Pインフラによって、仮想環境214のそれぞれに対応するリソース(例えば、メモリ、ネットワークおよび計算能力)を提供してもよい。少なくとも1つの仮想環境214は、クライアント装置210によりグラフィカルユーザインタフェースを介して1人以上のユーザ216によってアクセスされてもよい。グラフィカルユーザインタフェースは、選択された仮想環境214を実行し、かつそこで複数の対話を可能にするために必要なアプリケーションデータおよび命令を提供する、例えばWebRTC規格を用いたダウンロード可能なクライアントアプリケーションまたはウェブブラウザアプリケーションに含まれていてもよい。さらに仮想環境214はそれぞれ1人(つ)以上の人間もしくは人工知能(AI)ホスト、またはそれらの対応するユーザグラフィック表現を介して必要なデータおよび/またはサービスを提供することにより仮想環境214内のユーザを補助することができるアシスタントを含んでいてもよい。例えば人間またはAI銀行員は、ユーザの必要に応じてプレゼンテーション、フォーム、リストなどの形態で必要な情報を提供することにより仮想の銀行のユーザを補助してもよい。
【0042】
いくつかの実施形態では、ユーザグラフィック表現は、バックグラウンドが除去されたユーザアップロード写真またはサードパーティーソース写真などの1つ以上の入力画像から構築され得るユーザ3D仮想カットアウト、あるいはリアルタイム2D、ステレオ、奥行き画像もしくはビデオデータ、ユーザのリアルタイムビデオストリームを含むカメラにより得られたライブビデオストリームデータフィード中の3Dビデオデータ、バックグラウンドが除去されていないビデオまたはバックグラウンドが除去されたビデオなどの入力データに基づいて生成され得る、バックグラウンドが除去されたユーザリアルタイム3D仮想カットアウトである。いくつかの実施形態では、ユーザグラフィック表現をレンダリングし、かつ多角形構造を用いて表示してもよい。そのような多角形構造は、ビデオをサポートするための仮想のフレームとして使用される四角形構造またはより複雑な3D構造であってもよい。さらに他の実施形態では、ユーザグラフィック表現の1つ以上を仮想環境214内の3次元座標に挿入してそこでグラフィック的に組み合わせる。
【0043】
本開示では、「ユーザ3D仮想カットアウト」という用語は、ユーザアップロード写真またはサードパーティーソース2D写真から構築されたユーザの仮想レプリカを指す。ユーザ3D仮想カットアウトは、入力データとしてユーザアップロード写真またはサードパーティーソース2D写真を用いて、バックグラウンドが除去されたユーザの3Dメッシュもしくは3Dポイントクラウドを生成するマシンビジョン技術による3D仮想再構築プロセスを経て作成される。本開示では、「ユーザリアルタイム3D仮想カットアウト」という用語は、カメラにより得られ、かつユーザバックグラウンドが除去された後のリアルタイム2Dもしくは3Dライブビデオストリームデータフィードに基づくユーザの仮想レプリカを指す。ユーザリアルタイム3D仮想カットアウトは、バックグラウンドが除去されたユーザの3Dメッシュもしくは3Dポイントクラウドを生成することにより入力データとしてユーザライブデータフィードを用いるマシンビジョン技術による3D仮想再構築プロセスを経て作成される。本開示では、「バックグラウンドが除去されたビデオ」という用語は、そのユーザのみが見ることができるようにバックグラウンド除去プロセスがそのビデオに対して行われている、クライアント装置にストリームされ、かつ次いで受信側クライアント装置上に多角形構造を利用して表示されるビデオを指す。本開示では、「バックグラウンドが除去されていないビデオ」という用語は、ユーザおよびユーザのバックグラウンドが見えるようにそのビデオがカメラキャプチャを忠実に表している、クライアント装置にストリームされ、かつ次いで受信側クライアント装置上に多角形構造を利用して表示されるビデオを指す。
【0044】
P2Pインフラは、好適なアプリケーションプログラミングインタフェース(API)を介して仮想環境214においてクライアント装置210間のリアルタイム通信を可能にし、そのリアルタイム対話および同期を可能にする好適なP2P通信プロトコルを使用していてもよい。好適なP2P通信プロトコルの例はWebRTC通信プロトコルであってもよく、これは規格、プロトコルおよびJavaScript APIの集まりであり、これは組み合わせでピアクライアント装置210間でのP2P音声、ビデオおよびデータ共有を可能にする。P2Pインフラを使用するクライアント装置210は、例えば1つ以上のレンダリングエンジンを用いてライブセッションのリアルタイム3Dレンダリングを行ってもよい。例示的なレンダリングエンジンはWebGLに基づく3Dエンジンであってもよく、これはプラグインを使用することなくあらゆる適合可能なウェブブラウザ内で2Dおよび3DグラフィックスをレンダリングするためのJavaScript APIであり、少なくとも1つのクライアント装置210の1つ以上のプロセッサ(例えば、1つ以上のグラフィック処理装置(GPU))による物理学および画像処理および効果の使用の加速を可能にする。さらにP2Pインフラを使用するクライアント装置210は、1つ以上の好適なコンピュータビジョンライブラリーによる画像およびビデオ処理ならびに機械学習コンピュータビジョン技術を行ってもよい。好適なコンピュータビジョンライブラリーの例はOpenCVであってもよく、これは主にリアルタイムコンピュータビジョンタスクのために構成されたプログラミング機能のライブラリーである。
【0045】
いくつかの実施形態では、少なくとも1つのメディアサーバコンピュータ202はルーティングトポロジーを使用する。別の実施形態では、少なくとも1つのメディアサーバコンピュータ202はメディア処理トポロジーを使用する。別の実施形態では、少なくとも1つのメディアサーバコンピュータ202は転送サーバトポロジーを使用する。別の実施形態では、少なくとも1つのメディアサーバコンピュータ202は、他の好適なマルチメディアサーバルーティングトポロジー、メディア処理および転送サーバトポロジーまたは他の好適なサーバトポロジーを使用する。少なくとも1つのメディアサーバコンピュータ202によって使用されるトポロジーは、クライアント装置および/または少なくとも1つのメディアサーバコンピュータの処理能力ならびに利用されているネットワークインフラの能力に依存していてもよい。
【0046】
いくつかの実施形態では、メディア処理トポロジーにおいて少なくとも1つのメディアサーバコンピュータ202は、圧縮、暗号化、再暗号化、復号、デコード、組み合わせ、改良、混合、向上、拡張、計算、操作、エンコードまたはそれらの組み合わせを含む、着信データに対する1つ以上のメディア処理動作を行うように構成されている。従って少なくとも1つのメディアサーバコンピュータ202は、メディア処理トポロジーにおいて、着信データをルーティングおよび転送するだけでなく、クライアント装置210への発信マルチメディアストリームを向上させるかそれ以外の方法で修正することができる複数のメディア処理動作を行うようにも構成されている。
【0047】
いくつかの実施形態では、転送サーバトポロジーにおいて少なくとも1つのメディアサーバコンピュータ202は、多地点制御装置(MCU)またはクラウドメディアミキサーまたはクラウド3Dレンダラーとして構成されている。MCUとして、少なくとも1つのメディアサーバコンピュータ202はクライアント装置からのマルチメディアストリームの全てを受信し、かつそれらのストリームの全てをデコードして1つのストリームに組み合わせ、これを再エンコードして全てのクライアント装置210に送信するように構成されている。クラウドメディアミキサーとして少なくとも1つのメディアサーバコンピュータ202は、各種クライアント装置210および少なくとも1つの仮想環境214などから異なるマルチメディアソース(例えば、音声およびビデオ)を選択し、かつクライアント装置210のために処理された出力マルチメディアストリームを作成するためにフッテージおよび/または特殊効果を追加すると共に、入力データマルチメディアストリームを混合するように構成されている。視覚的効果は、例えば単純な混合およびワイプから手の込んだ効果にまで及んでもよい。クラウド3Dレンダラーとして少なくとも1つのメディアサーバコンピュータ202は、多くのコンピュータ計算により仮想環境からの3Dシーンを計算して最終的なアニメ化されたマルチメディアストリームを生成し、これをクライアント装置210に送り返すように構成されている。
【0048】
ルーティングトポロジーにおいて少なくとも1つのメディアサーバコンピュータ202は、マルチメディアストリームをどこに(例えば、クライアント装置210の1つ以上のうちのどれに)送信するかを決定するように構成されており、これは最良の経路であるインタフェースを選択するためのインターネットプロトコル(IP)ルーティングテーブルを介して行うことができる。ルーティングテーブルにおけるそのようなルーティングの決定は、受信側クライアント装置210の最適な選択が行われるように優先度データおよび対応するユーザグラフィック表現と着信マルチメディアストリームとの空間的関係を考慮するデータ交換管理モジュール208に記憶されている規則に基づいていてもよい。いくつかの実施形態ではルーティングトポロジーとして、少なくとも1つのメディアサーバコンピュータは、SFUトポロジー、TURNトポロジー、SAMSまたはいくつかの他のマルチメディアサーバルーティングトポロジーを使用する。
【0049】
図1を参照しながら説明されているようなSFUは、WebRTCビデオ会議規格で使用されており、これは一般にビデオ通信エンドポイントに接続するためにプラグインの必要性を回避しながら、音声呼出し、ビデオチャットおよびP2Pファイル共有アプリケーションなどのブラウザ間アプリケーションをサポートしている。SFUは、デコードおよび再エンコードすること、クライアント装置からエンコードされたメディアストリームの全てを受信すること、および次いでデコードおよび提示のためにそれらのストリームをそれぞれの参加者に選択的に転送することなどの集中的なメディア処理動作を行うことなく、ビデオストリーム内のビデオパケットを複数の参加者装置にルーティングおよび転送するように構成されたソフトウェアプログラムを備える。
【0050】
少なくとも1つのメディアサーバコンピュータ202がクライアント装置210間の接続を確立することができない状況において好適であり得るTURNトポロジーは、STUN(Session Traversal Utilities for NAT)の拡張版であり、NATはネットワークアドレス変換(Network Address Translation)を表す。NATは、トラフィックルーティング装置を横切って通過している間にパケットのIPヘッダ内のネットワークアドレス情報を修正することによりインターネットプロトコル(IP)アドレス空間を別のものに再マップする方法である。従って、NATはプライベートIPアドレスアクセスをインターネットなどのネットワークに与えることができ、かつルーティング装置などの単一の装置がインターネットとプライベートネットワークとの間のエージェントとして機能するのを可能にする。NATは対照的であっても非対称的であってもよい。クライアント装置に接続するための最良のパスを見つけるように構成されているICE(Interactive Connectivity Establishment)と呼ばれるフレームワークは、対称的もしくは非対称的NATが必要とされ得るか否かを決定してもよい。対称的NATは、プライベートからパブリックに、そしてパブリックからプライベートにIPアドレスを変換するというジョブを行うだけでなくポートの変換も行う。他方で非対称的NATは、STUNサーバを使用してクライアントがそれらのパブリックIPアドレスおよびその後ろのNATの種類を発見するのを可能にし、これを使用して接続を確立してもよい。多くの場合、STUNを接続セットアップ中にのみ使用してもよく、そのセッションが確立されるとすぐに、データはクライアント装置間を流れ始めることができる。TURNは対称的NATの場合に使用してもよく、処理データおよび/または未処理データがクライアント装置間で中継されている間は接続が確立された後にメディアパス内に残っていてもよい。
【0051】
図3は、一実施形態に係る、SAMS302として構成された少なくとも1つのメディアサーバコンピュータを備えたシステム300の概略図を示す。
図3のいくつかの要素は
図2と同様の要素を指し、従って同じ符号を使用している場合がある。
【0052】
SAMS302は、各クライアント装置の着信データ304を分析および処理するように構成されている。着信データ304はいくつかの実施形態では、ユーザ優先度および、仮想環境における対応するユーザグラフィック表現とマルチメディアストリームとの距離関係に関するものであってもよい。着信データ302は、メタデータ306、優先度データ308、データクラス310、空間構造データ312、シーングラフ(図示せず)、位置、向きもしくは移動データを含む3次元データ314、ユーザ可用性ステータスデータ(例えば、能動的もしくは受動的ステータス)316、画像データ318、メディア320およびスケーラブルビデオコーデック(SVC)ベースのビデオデータ322またはそれらの組み合わせのうちの1つ以上を含む。SVCベースのビデオデータ322は、クライアント装置によって解像度ごとに各ストリームの2つ以上のストリームを送信することを必要とすることなく異なる解像度を含むデータを送信するのを可能にしてもよい。
【0053】
着信データ304はクライアント装置によって送信され、クライアント装置は仮想環境において実行されるクライアント装置によって実行されているアプリケーションの文脈において、着信データ動作324およびデータ転送最適化326を行うためにSAMS302によって使用される着信データ304を生成する。従ってSAMS302は、仮想環境に関する情報、ユーザグラフィック表現間の距離関係、可用性ステータスなどを記憶することを必要としなくてもよく、その理由は、仮想環境において実行されているアプリケーションに関して、これらのデータはクライアント装置によって送信された着信データに既に含められているからであり、これによりSAMS302のための処理効率が高まる。マルチメディアストリームをクライアント装置に送信する前に、SAMS302はそのリソースをデータ動作、ルーティングおよび転送の最適化にのみに集中させることができるため、これらの効率によりSAMS302は、仮想環境にアクセスしている多数(例えば、数百もしくは数千)のユーザを含むマルチユーザビデオ会議の処理のための実行可能かつ有効な選択肢になることができる。代わりとして着信データ304は、データ転送計算が既に行われている予め処理された空間転送ガイダンスを含んでいてもよい。この状況では、SAMS302はこのガイダンスを使用して、さらなる計算を行うことなくマルチメディアストリームをクライアント装置に送信することができる。
【0054】
いくつかの実施形態では、SAMSを実行する少なくとも1つのメディアサーバコンピュータによって実行される着信データ動作326は、着信データに対する圧縮、暗号化、再暗号化、復号、改良、混合、向上、拡張、計算、操作、エンコードまたはそれらの組み合わせを含んでもよい。これらの着信データ動作326は、ユーザグラフィック表現の優先度およびマルチメディアストリームのソースおよび残りのユーザグラフィック表現とのその空間的関係(例えば距離関係)に応じてクライアントインスタンスごとに行ってもよい。
【0055】
いくつかの実施形態では、SAMSを実行する少なくとも1つのメディアサーバコンピュータによって実行されるデータ転送最適化326は、1つ以上の受信側クライアント装置のために帯域幅および計算リソース利用を最適化することを含む。さらなる実施形態では、SAMSは一時的な特徴、空間特徴、品質および色特徴のためにメディアを修正、アップスケールまたはダウンスケールすることにより、発信データストリームの各受信側クライアント装置への転送を最適化する。一時的な特徴のための着信データのそのような修正、アップスケールまたはダウンスケールは、例えばフレームレートの変更を含んでもよく、空間特徴は例えば画像サイズを指してもよく、品質は例えば異なる圧縮またはエンコードに基づく品質を指し、色は例えば色解像度および範囲を指す。これらの動作は、そのような着信データに対する特定の受信側クライアント装置のユーザの空間、3次元向き、距離および優先度関係に基づいて行われ、帯域幅および計算リソースの最適化に寄与してもよい。
【0056】
優先度データは、例えば話し手もしくは聞き手ステータスデータに関連づけられており、ここでは話し手からの1つ以上のマルチメディアストリームは、聞き手のマルチメディアストリームよりも高い優先度スコアを有する。空間的関係は、仮想のマルチメディアストリームのソースおよび残りのユーザグラフィック表現に対するユーザグラフィック表現の距離および向きの直接相関を関連づけることを含む。従って空間的関係は、より高い解像度またはより向上したマルチメディアストリームを、仮想のマルチメディアストリームのソースにより近く、かつそちらに面しているユーザグラフィック表現に提供すること、およびより低い解像度またはあまり向上していないマルチメディアストリームを、マルチメディアストリームのソースから遠く、かつそちらに部分的に面しているか全く面していないユーザグラフィック表現に提供することを関連づける。任意の程度の顔および頭の向きでマルチメディアストリームのソースに部分的に面しているユーザグラフィック表現およびユーザによって受信されたマルチメディアストリームの品質において直接的効果を有するマルチメディアストリームのソースからのあらゆる距離などの中間的なあらゆる組み合わせも適用することができる。
【0057】
マルチメディアストリームのソースは例えば、仮想環境内で行われている仮想ビデオ会議で話しているユーザ、仮想環境内での討論または会議に関わっているパネリスト、少なくとも1人のユーザが話し手であるウェビナー、エンターテイメントイベント、ショーなどであってもよい。話している(例えば、スピーチ、ウェビナー、会議などを行っている)ユーザの例において、複数のユーザが仮想環境内に位置して話し手の話を聞いていてもよい。ユーザのうちの何人かは話し手の方を向いていても部分的に向いているか向いていなくてもよく、これは各ユーザの優先度、従って受信されるマルチメディアストリームの品質に影響を与える。但し他の実施形態では、マルチメディアストリームは他のユーザグラフィック表現に由来するものでは、むしろ仮想アニメーション、拡張現実仮想オブジェクト、イベントもしくは場所から予め録画されたビデオまたはライブビデオ、アプリケーショングラフィック表現、ビデオゲームなどの他のマルチメディアソースに由来するものであってもよく、ここではデータ動作は、そのようなマルチメディアストリームに対する特定の受信側クライアント装置ユーザの空間、3次元向き、距離および優先度関係に基づいて行われる。
【0058】
図4Aは、一実施形態に係る本開示のSAMSトポロジーを用いることができる仮想環境404の概略図を示す。
【0059】
仮想環境404は5つのユーザグラフィック表現402、すなわちユーザグラフィック表現A~Eを含み、ここではユーザグラフィック表現Aは話し手を表し、ユーザグラフィック表現B~Eは4人の聞き手を表し、それぞれが仮想環境404の異なる3D座標位置に位置し、かつ異なる視点(PoV)と共に異なる顔および頭の向きを有する。各ユーザグラフィック表現402は、仮想環境404に接続され、かつ
図3を参照しながら開示されているSAMS302などの本開示のSAMSトポロジーを用いている少なくとも1つのメディアサーバコンピュータに接続されたクライアント装置を介して仮想環境404において対話している対応するユーザに関連づけられている。
【0060】
ユーザグラフィック表現Aが話している間、ユーザグラフィック表現B~Eは、異なる3D座標と共にそれらの個々の向き(例えば同じまたは異なる向き)および対応するPoVで互いに向き合っていてもよい。例えば、ユーザグラフィック表現Bはユーザグラフィック表現Aのより近くに位置し、かつユーザグラフィック表現Aを直視しており、ユーザグラフィック表現Cはユーザグラフィック表現Bよりも僅かに遠くに位置し、かつユーザグラフィック表現Aの方向を部分的に見ており、ユーザグラフィック表現Dはユーザグラフィック表現Aから最も遠くに位置し、かつユーザグラフィック表現Aの方向を部分的に見ている可能性があり、ユーザグラフィック表現Eはユーザグラフィック表現Bと同じ位ユーザグラフィック表現Aの近くにいるが、ユーザグラフィック表現Aとは異なる方向を見ている可能性がある。
【0061】
従って、SAMSは5つのユーザグラフィック表現のそれぞれからの着信データをキャプチャし、入力データ動作およびデータ転送最適化を行い、かつ得られたマルチメディアストリームを5つのクライアント装置に選択的に送信する。従って、各クライアント装置はそれら自身の入力データを送信し、かつそれに応じて1つ以上のマルチメディアストリーム(例えば4つのマルチメディアストリーム、
図4Aの互いのユーザグラフィック表現のうちの1つ)を受信し、各受信されるマルチメディアストリームは最適な帯域幅および計算リソースを達成するために、そのような着信データに対する特定の受信側クライアント装置のユーザの空間、3次元向き、距離および優先度関係に基づいて対応するユーザグラフィック表現のために個々に適合されている(例えば、管理および最適化されている)。
【0062】
図4Bは、一実施形態に係る、本開示のSAMS406トポロジーを用いている
図4Aの仮想環境404の5つのユーザグラフィック表現からの適合された発信メディアストリームの転送の概略図を示す。SAMS406は、
図4Aのユーザグラフィック表現に対応するクライアント装置408からのマルチメディアストリームを含む着信データを分析して最適化し、かつ
図4Aの少なくとも1つの仮想環境404内からの要素を含む複数のクライアント装置408から受信した着信データに基づいて発信マルチメディアストリームの転送を評価および最適化してもよい。前記データ動作および最適化は、SAMS406のデータ交換管理モジュール410によって行ってもよい。
【0063】
各クライアント装置408はそれ自身の入力データをSAMS402に送信し、それに応じて他のクライアント装置408の4つのマルチメディアストリームを受信する。従って、クライアント装置Aは話し手によって使用されているので、高優先度データを有する着信メディアストリームをSAMS402に送信し、かつ4つのより低い優先度のマルチメディアストリームB~Eを対応する4つのクライアント装置408から受信する。
【0064】
ユーザグラフィック表現Bはユーザグラフィック表現Aのより近くに位置し、かつユーザグラフィック表現Aを直視しているため、クライアント装置Bは、残りのユーザと比較した場合に最も高い解像度でクライアントAからマルチメディアストリームを受信し、かつ残りのマルチメディアストリームC~Eをそれぞれユーザグラフィック表現C~Eとの空間的関係に基づくそれら独自の解像度で受信し、かつそれ自身の対応するマルチメディアストリームBを送信する。
【0065】
クライアント装置Cは、ユーザグラフィック表現Cがユーザグラフィック表現Bよりも僅かに遠くに位置し、かつユーザグラフィック表現Aの方向を部分的に見ているため、クライアント装置Aから3番目に最も高い解像度を受信し、残りのマルチメディアストリームB~Eをそれぞれユーザグラフィック表現B~Eとの空間的関係に基づいてそれら独自の解像度で受信し、かつそれ自身の対応するマルチメディアストリームCを送信する。
【0066】
クライアント装置Dは、対応するユーザグラフィック表現Dがユーザグラフィック表現Aから最も遠くに位置し、かつユーザグラフィック表現Aの方向を部分的に見ているため、クライアント装置Aから最も低い解像度を受信し、残りのマルチメディアストリームB、CおよびEをそれぞれユーザグラフィック表現B、CおよびEとの空間的関係に基づいてそれら独自の解像度で受信し、かつそれ自身の対応するマルチメディアストリームDを送信する。
【0067】
クライアント装置Eは、ユーザグラフィック表現Eがユーザグラフィック表現Bと同じ位ユーザグラフィック表現Aの近くにいるがユーザグラフィック表現Aとは異なる方向を向いている可能性があるため、2番目に最も高い解像度を受信し、残りのマルチメディアストリームB~Dをそれぞれユーザグラフィック表現B~Dとの空間的関係に基づいてそれら独自の解像度で受信し、かつそれ自身の対応するマルチメディアストリームEを送信する。但しSAMS402の構成に応じて、たとえユーザグラフィック表現Eがユーザグラフィック表現Aから僅かに目をそらしているとしても、クライアント装置Eもクライアント装置Bと同じ解像度を受信してもよい。これは、たとえユーザグラフィック表現Eがユーザグラフィック表現Aを直視していない可能性があるとしても、ユーザグラフィック表現Eが仮想世界404内で自身の見方を突然変えてユーザグラフィック表現Aの方を見る可能性があり、ユーザグラフィック表現Aからのマルチメディアストリームがない場合またはユーザグラフィック表現Aからのマルチメディアストリームが互いに近い距離にあるにも関わらず低解像度である場合に、対応するクライアント装置Eの体感品質が乱れたり非最適なものになったりする場合があるからである。従って本実施形態では、クライアント装置Bによって受信されたものと同じ解像度とみなすほうがより効率的であり得る。
【0068】
本明細書から理解できるように、残りの4つのユーザグラフィック表現402から各ユーザグラフィック表現402によって受信されるマルチメディアストリームも、他のユーザグラフィック表現のマルチメディアストリームに対する対応するユーザグラフィック表現の空間、3次元向き、距離および優先度関係について個々に管理および最適化されている。従って、マルチメディアストリームが対応するクライアント装置408に関連している場合、クライアント装置408のそれぞれが残りの4つのクライアント装置から個々のマルチメディアストリームを受信する。
【0069】
いくつかの実施形態では、ユーザグラフィック表現402がマルチメディアソース、すなわち
図4Aに示されているようなユーザAからからあまりに遠くに位置している場合、ユーザグラフィック表現402は、マルチメディアソースからマルチメディアストリームを受信しているSAMS406によって取っておいてもよい。SAMS406がそれに応じて構成されている場合には、これを例えばユーザグラフィック表現Dに適用してもよい。
【0070】
いくつかの実施形態では、マルチメディアストリームは他のユーザグラフィック表現に由来するものではなく、むしろ仮想アニメーション、拡張現実仮想オブジェクト、イベントもしくは場所から予め録画されたビデオまたはライブビデオ、アプリケーショングラフィック表現、ビデオゲームなどの他のマルチメディアソースに由来するものであってもよい。これらの実施形態では、マルチメディアストリームはなお適合可能であり、受信したマルチメディアストリームソースのマルチメディアストリームに対する例えば対応するユーザグラフィック表現の空間、3次元向き、距離および優先度関係について個々に管理および最適化されていてもよい。他の実施形態では、マルチメディアストリームはユーザグラフィック表現と他のマルチメディアソースとの組み合わせに由来するものである。
【0071】
図5A~
図5Bは、一実施形態に係るSAMSが複数のクライアント装置のメディアストリームを組み合わせている概略図を示す。SAMSが複数のクライアント装置のメディアストリームを組み合わせるように構成することができる一実施形態では、SAMSはモザイクの形態でストリームを組み合わせることができる。モザイクは別個の仮想タイルを含む仮想のフレームであってもよく、ここではユーザグラフィック表現の個々のマルチメディアストリームがストリームされる。モザイクは、マルチメディアストリームソースおよび残りのユーザグラフィック表現とのクライアント装置のユーザグラフィック表現の距離関係に応じてクライアント装置ごとに調整されていてもよい。
【0072】
図5Aでは、7つのユーザグラフィック表現502が仮想環境504内で対話しており、ユーザグラフィック表現Aは話し手であり、残りのユーザグラフィック表現B~Gはユーザグラフィック表現Aの話を聞いている。ユーザグラフィック表現GおよびFはユーザグラフィック表現Aに比較的近いことが分かり、ユーザグラフィック表現EおよびBはユーザグラフィック表現Aから比較的遠くに位置している可能性があり、ユーザグラフィック表現DおよびCはユーザグラフィック表現Aから最も遠くに位置している可能性がある。
【0073】
図5Bは、ユーザグラフィック表現Gの視点から仮想環境504において対応するユーザグラフィック表現502からの個々のマルチメディアストリームのそれぞれをストリームする別個の仮想タイル508、すなわち仮想タイルA~Fを含むモザイク506の形態で組み合わせられているマルチメディアストリームを示す。ユーザグラフィック表現Gの視点からは仮想タイルAは、ユーザグラフィック表現Aが話し手であるという理由からその発信メディアストリームのためにより高い優先度を有するので、最も高い解像度である限りより大きなものであってもよく、ユーザグラフィック表現Gはユーザグラフィック表現Fにも非常に近いので、仮想タイルFは2番目に最も高い解像度である限り2番目に最も大きいものであってもよく、ユーザグラフィック表現B~Eは同等に小さくてもよく、かつ互いの中で同じもしくは同様の比較的低い解像度を有していてもよい。いくつかの実施形態では、SAMS406は同じモザイク506を全てのクライアント装置に送信してもよく、クライアント装置は、仮想環境におけるそれらの位置および向きに関連し得ない不必要なタイルを切り取ることにより進行してもよい。
【0074】
図6は、一実施形態に係る本開示のトポロジーの空間認識型マルチメディアルータ方法600のブロック図を示す。方法600は、
図2~
図3のシステム200および300を参照しながら開示されているようなシステムに実装されていてもよい。
【0075】
方法600は、少なくとも1つのメディアサーバコンピュータのメモリに、複数のクライアント装置間でのデータ交換を管理するクライアント装置データ交換管理モジュールを実行するデータおよび命令を提供することにより工程602で開始する。
【0076】
次いで工程604では、本方法600は、少なくとも1つのメディアサーバコンピュータによって複数のクライアント装置から少なくともマルチメディアストリームを含む着信データを受信することにより進行する。前記着信データはユーザ優先度データおよび、対応するユーザグラフィック表現と着信マルチメディアストリームとの空間的関係に関連づけられている。
【0077】
工程606では、方法600は、データ交換管理モジュールによってクライアント装置データ交換管理を行うことにより進行する。データ交換管理は、仮想環境内からのグラフィカル要素を含む複数のクライアント装置からの着信データを分析および処理すること、および複数のクライアント装置から受信した着信データに基づいて発信マルチメディアストリームの転送を評価および最適化することを含んでもよい。
【0078】
最後に工程608では、方法600はデータ交換管理に基づいて対応するマルチメディアストリームをクライアント装置に転送することにより進行してもよく、このマルチメディアストリームを少なくとも1つのクライアント装置のユーザのユーザグラフィック表現に表示させる。
【0079】
いくつかの実施形態では、方法600は、発信マルチメディアストリームを転送する際に、ルーティングトポロジー、メディア処理トポロジー、転送サーバトポロジー、他の好適なマルチメディアサーバルーティングトポロジー、メディア処理および転送サーバトポロジーまたは他の好適なサーバトポロジーを利用することをさらに含む。
【0080】
さらなる実施形態では、ルーティングトポロジーとして少なくとも1つのメディアサーバコンピュータは、SFUトポロジー、TURN、SAMS、またはマルチメディアサーバルーティングトポロジーを使用する。
【0081】
さらなる実施形態では、メディア処理トポロジーとして少なくとも1つのメディアサーバコンピュータは、圧縮、暗号化、再暗号化、復号、デコード、組み合わせ、改良、混合、向上、拡張、計算、操作、エンコードまたはそれらの組み合わせを含む着信データに対する1つ以上の動作を行うように構成されている。
【0082】
さらなる実施形態では、転送サーバトポロジーを利用する際に、方法600はMCU、クラウドメディアミキサーおよびクラウド3Dレンダラーのうちの1つ以上を利用することをさらに含む。
【0083】
いくつかの実施形態では、SAMSとして少なくとも1つのメディアサーバコンピュータは、ユーザ優先度および対応するユーザグラフィック表現とマルチメディアストリームとの距離関係に関して各クライアント装置の着信データを分析および処理するように構成されている。着信データは、メタデータ、優先度データ、データクラス、空間構造データ、3次元位置、向きもしくは移動情報、話し手もしくは聞き手ステータスデータ、可用性ステータスデータ、画像、メディア、およびスケーラブルビデオコーデックベースのビデオまたはそれらの組み合わせのうちの1つ以上を含む。いくつかの実施形態では、SAMSを実行している少なくとも1つのメディアサーバコンピュータによって実行される発信マルチメディアストリームの転送を最適化することは、1つ以上の受信側クライアント装置のために帯域幅および計算リソース利用を最適化することを含む。
【0084】
いくつかの実施形態では、SAMSは、一時的な特徴、空間特徴、品質および色特徴のためにメディアを修正、アップスケールまたはダウンスケールすることにより、発信データストリームの各受信側クライアント装置への転送を最適化する。
【0085】
1つ以上のコンピュータに本明細書に記載されている方法のいずれかを行わせるように構成されたそこに命令が記憶されているコンピュータ可読媒体についても説明する。本明細書で使用される「コンピュータ可読媒体」という用語は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報を記憶することができるあらゆる方法または技術において実装される揮発性および不揮発性の取外し可能および取外し不可能な媒体を含む。一般に本明細書に記載されている計算装置の機能は、ハードウェアまたはソフトウェア命令に具体化されている計算ロジックに実装されていてもよく、これはC、C++、COBOL、JAVA(登録商標)、PHP、Perl、Python、Ruby、HTML、CSS、JavaScript、VBSCRIPT、ASPX、およびC#などのMicrosoft.NET(商標)言語などのプログラミング言語で記述することができる。計算ロジックは実行可能なプログラムにコンパイルされているか、解釈されるプログラミング言語で記述されていてもよい。一般に本明細書に記載されている機能は、より大きな処理能力を提供するために複製するか、他のモジュールとマージするか、あるいはサブモジュールに分割することができるロジックモジュールとして実装することができる。計算ロジックは、任意の種類のコンピュータ可読媒体(例えば、メモリまたは記憶媒体などの非一時的媒体)あるいはコンピュータ記憶装置に記憶し、かつ1つ以上の汎用もしくは専用プロセッサに記憶して実行することができ、このようにして本明細書に記載されている機能を提供するように構成された専用計算装置を作り出す。
【0086】
特定の実施形態について説明し、かつ添付の図面に図示してきたが、当然のことながらそのような実施形態は広範な本発明の単に例示であってそれを限定するものではなく、様々な他の修正を当業者が思い付くことができるため、本発明は図示および説明されている特定の構成および配置に限定されない。従って、上記説明は本発明を限定するものではなく例示とみなされるべきである。