JP5723905B2 - 共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え - Google Patents

共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え Download PDF

Info

Publication number
JP5723905B2
JP5723905B2 JP2013020695A JP2013020695A JP5723905B2 JP 5723905 B2 JP5723905 B2 JP 5723905B2 JP 2013020695 A JP2013020695 A JP 2013020695A JP 2013020695 A JP2013020695 A JP 2013020695A JP 5723905 B2 JP5723905 B2 JP 5723905B2
Authority
JP
Japan
Prior art keywords
data stream
time data
zone
real
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013020695A
Other languages
English (en)
Other versions
JP2013137781A (ja
Inventor
ヴァン・ウィー,デイヴィッド
ブロディ,ポール・ジェイ
Original Assignee
ソーシャル・コミュニケーションズ・カンパニー
ヴァン・ウィー,デイヴィッド
ブロディ,ポール・ジェイ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソーシャル・コミュニケーションズ・カンパニー, ヴァン・ウィー,デイヴィッド, ブロディ,ポール・ジェイ filed Critical ソーシャル・コミュニケーションズ・カンパニー
Publication of JP2013137781A publication Critical patent/JP2013137781A/ja
Application granted granted Critical
Publication of JP5723905B2 publication Critical patent/JP5723905B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1827Network arrangements for conference optimisation or adaptation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality

Description

対面してのコミュニケーションが実際的でないとき、人々は多くの場合、1つ以上の技
術的解決法を利用して通信の必要を満たす。これらの解決法は通常、対面コミュニケーシ
ョンの1つ以上の態様をシミュレートするように設計されている。従来からの電話技術シ
ステムは、通話者間の音声通信を可能にする。インスタントメッセージング(「チャット
」ともいう)通信システムは、ユーザが、インスタント・メッセージ・サーバによって相
互接続されているインスタント・メッセージ・コンピュータ・クライアントを介して、リ
アルタイムでテキストメッセージをやりとりすることを可能にする。インスタント・メッ
セージング・システムの中にはさらに、ユーザを仮想環境において、(「アバタと呼ばれ
る」)ユーザ制御可能なグラフィックオブジェクトによって表現させるものもある。対話
型仮想現実通信システムは、遠隔地にいるユーザ同士が、複数のリアルタイムチャネルを
介して通信し、共用3次元仮想空間においてその個々のアバタを操作することにより相互
に対話することを可能にする。
アバタベースの仮想現実通信システムへの関心は、高処理能力および高帯域幅ネットワ
ーク接続を有するコンピューティングシステムがますます入手しやすくなるにつれて高ま
っている。このような仮想現実システムの主要な目標は、ユーザが、オーディオストリー
ム、映像ストリーム、テキスト・チャット・ストリームといったリアルタイム・データ・
ストリームを使用して対話し、通信することのできる仮想空間を作成することである。仮
想空間は通常、その空間の視覚的形状、その視覚的形状にマップされる色およびテクスチ
ャ、その空間内でユーザがどのようにして行動するかを制御する衝突特性、およびその空
間の、残響特性や吸音特性といった聴覚特性を記述するコンピュータグラフィックス仕様
によって定義される。
典型的な仮想現実システムにおいて、ユーザはそれぞれ、システムによってサポートさ
れているリアルタイム・データ・ストリームの1つ以上のソース、シンク、またはソース
とシンクの両方であるインターフェースを介して通信する。デフォルト設定で、仮想現実
システムは通常、グローバル切換え規則、ローカルユーザ設定、および仮想空間内のオブ
ジェクトの特性において指定される条件に従って、仮想空間において表現される各ソース
を仮想空間において表現されるあらゆるシンクに接続する。これらの条件は通常、オブジ
ェクト間の相対距離として指定される。例えば、システムの中には、アバタ間の分離距離
が最大閾値距離を超える場合に、リアルタイム・データ・ストリーム接続が確立されない
ように構成されているものもある。加えて、オブジェクトの中には、データ・ストリーム
がどのようにレンダリングされるかに影響を及ぼすように設計されているものもある。例
えば、スクリーンオブジェクトは、特定の方向からの視界および音を遮る。他のオブジェ
クトの中には、ユーザのアバタがこれらのオブジェクトの対話領域内にあるときに、ユー
ザのアバタと関連付けられている対話の領域に影響を及ぼすように設計されているものも
ある。例えば、演壇(podium)アダプタオブジェクトは、仮想演壇の対話空間内にあるア
バタの音声対話空間のサイズを増大させ、テーブル・アダプタ・オブジェクトは、仮想テ
ーブルに着席しているすべてのアバタの対話空間を、その仮想テーブルにまたがる共通対
話空間に畳み込む。
一態様において、本発明は、仮想領域を共用するネットワークノード間のリアルタイム
・データ・ストリーム接続を切り換える方法を特色とする。この方法によれば、仮想領域
仕様が記憶される。仮想領域仕様は、個々のリアルタイム・データ・ストリーム型のソー
スとそのリアルタイム・データ・ストリーム型のシンクの間の個々の接続を仮想領域にお
ける位置によって(を使って)それぞれ定義する、1つ以上の切換え規則の記述を含む。
1つ以上のリアルタイム・データ・ストリーム接続が、リアルタイム・データ・ストリー
ム型のうちの1つ以上におけるソースおよびシンクのうちの少なくとも1つとそれぞれが
関連付けられている個々のオブジェクトと関連付けられたネットワークノード間で確立さ
れる。リアルタイム・データ・ストリーム接続は、1つ以上の切換え規則、オブジェクト
と関連付けられた個々のソースおよびシンク、ならびに仮想領域におけるオブジェクトの
個々の位置に基づいて確立される。
別の態様において、本発明は、仮想領域を共用するネットワークノード間のリアルタイ
ム・データ・ストリーム接続を切り換える装置を特色とする。この装置は、コンピュータ
可読メモリと処理装置とを含む。コンピュータ可読メモリは、個々のリアルタイム・デー
タ・ストリーム型のソースとそのリアルタイム・データ・ストリーム型のシンクの間の個
々の接続を仮想領域における位置によってそれぞれ定義する1つ以上の切換え規則の記述
を備える仮想領域仕様を記憶するように動作可能である。処理装置は、リアルタイム・デ
ータ・ストリーム型のうちの1つ以上におけるソースおよびシンクのうちの少なくとも1
つとそれぞれが関連付けられている個々のオブジェクトと関連付けられたネットワークノ
ード間で、1つ以上の切換え規則、オブジェクトと関連付けられた個々のソースおよびシ
ンク、ならびに仮想領域におけるオブジェクトの個々の位置に基づいて、1つ以上のリア
ルタイム・データ・ストリーム接続を確立するように動作可能である。
別の態様において、本発明は、コンピュータによって実行されると、そのコンピュータ
に、個々のリアルタイム・データ・ストリーム型のソースとそのリアルタイム・データ・
ストリーム型のシンクの間の個々の接続を仮想領域における位置によってそれぞれ定義す
る1つ以上の切換え規則の記述を備える仮想領域仕様を記憶することと、リアルタイム・
データ・ストリーム型のうちの1つ以上におけるソースおよびシンクのうちの少なくとも
1つとそれぞれが関連付けられている個々のオブジェクトと関連付けられたネットワーク
ノード間で、1つ以上の切換え規則、オブジェクトと関連付けられた個々のソースおよび
シンク、ならびに仮想領域におけるオブジェクトの個々の位置に基づいて、1つ以上のリ
アルタイム・データ・ストリーム接続を確立することと、を含む動作を行わせるコンピュ
ータ可読命令を記憶する、1つ以上のコンピュータ可読媒体を特色とする。
別の態様において、本発明は、仮想領域を構築する方法を特色とする。ユーザ入力に応
答して、仮想領域のモデルが表示モニタにおいて作成される。このモデルは、表示モニタ
に提示される仮想領域の形状要素(幾何学的要素)を含む。ユーザ入力に応答して、1つ
以上の切換え規則がこの仮想領域のモデルと関連付けられる。切換え規則はそれぞれ、個
々のリアルタイム・データ・ストリーム型のソースとそのリアルタイム・データ・ストリ
ーム型のシンクの間の個々の接続を仮想領域における位置によって定義する。仮想領域の
モデルおよび1つ以上の関連付けられた切換え規則を記述する仮想領域仕様が生成される
。仮想領域仕様は、コンピュータ可読記憶媒体に記憶される。
別の態様において、本発明は、仮想領域を共用するネットワークノード間でリアルタイ
ム・データ・ストリーム接続を切り換えるネットワークスイッチを特色とする。このネッ
トワークスイッチは、コンピュータ可読メモリと処理装置とを含む。コンピュータ可読メ
モリは、個々のリアルタイム・データ・ストリーム型のソースとそのリアルタイム・デー
タ・ストリーム型のシンクの間の個々の接続を仮想領域における位置によってそれぞれ定
義する1つ以上の切換え規則の記述を含む仮想領域仕様を記憶するように動作可能である
。またコンピュータ可読メモリは、ネットワーク宛先までの経路を記述するネットワーク
トポロジ情報を含む表を記憶するようにも動作可能である。処理装置は、仮想領域におけ
る個々の位置およびリアルタイム・データ・ストリーム型のうちの1つ以上におけるソー
スおよびシンクのうちの少なくとも1つとそれぞれが関連付けられているネットワークノ
ード間でリアルタイム・データ・ストリーム・パケットを転送するように動作可能である
。処理装置は、ネットワークトポロジ情報および1つ以上の切換え規則に基づいて1つ以
上のリアルタイム・データ・ストリーム・パケットを転送する。
本発明の各実施形態は、以下の特徴のうちの1つ以上を含み得る。
仮想領域仕様は通常、仮想領域における1つ以上のゾーンの記述を含む。1つ以上の切
換え規則は通常、各ゾーンの1つ以上と、(i)そのゾーンをソースとする個々のリアル
タイム・データ・ストリーム型、および(ii)個々のリアルタイム・データ・ストリー
ム型のシンクであるゾーンの個々の1つとを関連付ける。リアルタイム・データ・ストリ
ーム接続を確立するプロセスは通常、ゾーンの1つ以上との関連で第1のオブジェクトお
よび第2のオブジェクトの位置を確認すること、ならびに確認された位置に基づいて1つ
以上のリアルタイム・データ・ストリーム接続を確立することを含む。リアルタイム・デ
ータ・ストリーム接続を確立するプロセスはさらに、オブジェクトの所与の1つによって
占有されているすべてのゾーンを識別すること、および(1つ以上の切換え規則が、識別
されたゾーンと関連付ける)目標のリアルタイム・データ・ストリーム型のセットを決定
すること、を含んでいてもよい。また、リアルタイム・データ・ストリーム接続を確立す
るプロセスは、1つ以上の切換え規則によって定義される、目標セット内のリアルタイム
・データ・ストリーム型のそれぞれのソースであり、目標セット内のリアルタイム・デー
タ・ストリーム型のそれぞれのシンクであるゾーンの1つ以上に含まれる、所与のオブジ
ェクトを除くオブジェクトのそれぞれを確認すること、それぞれが、(i)確認されたオ
ブジェクトと関連付けられているネットワークノードの1つ以上をソースとする、および
(ii)確認されたオブジェクトと関連付けられているネットワークノードの1つ以上を
シンクとする、の少なくとも一方である接続可能なリアルタイム・データ・ストリームの
セットを決定すること、ならびに接続可能なリアルタイム・データ・ストリームのセット
と関連付けられているソースとシンクとのマッチングに基づいて、必要なリアルタイム・
データ・ストリーム・データのセットを決定することをさらに含んでいてもよい。
切換え規則の少なくとも1つは、個々のソース役割識別子をリアルタイム・データ・ス
トリーム型の所与の1つと関連付けてもよく、リアルタイム・データ・ストリーム接続を
確立するプロセスは、そのソース役割識別子と、その所与のリアルタイム・データ・スト
リーム型のソースと関連付けられたオブジェクトの1つ以上と個々に関連付けられた役割
識別子との比較に基づいて、リアルタイム・データ・ストリーム接続の1つ以上を確立す
ることを含んでいてもよい。
切換え規則の少なくとも1つは、個々のシンク役割識別子をリアルタイム・データ・ス
トリーム型の所与の1つと関連付けてもよく、リアルタイム・データ・ストリーム接続を
確立するプロセスは、そのシンク役割識別子と、そのリアルタイム・データ・ストリーム
型のシンクと関連付けられたオブジェクトの1つ以上と個々に関連付けられた役割識別子
との比較に基づいて、リアルタイム・データ・ストリーム接続の1つ以上を確立すること
を含んでいてもよい。
リアルタイム・データ・ストリーム接続を確立するプロセスはさらに、ソースのそれぞ
れと、仮想領域において相互に規定の距離内にある個々のオブジェクトと関連付けられて
いるシンクの適合するものとの接続だけを可能にする少なくとも1つの近接性ポリシ規則
に基づくものとすることもできる。
オブジェクトレジスタが保持されていてもよい。オブジェクトレジスタは通常、仮想領
域内の各オブジェクトごとに、個々のオブジェクト識別子、オブジェクトと関連付けられ
たネットワークノードとのネットワーク接続を確立させることを可能にする接続データ、
ならびに、オブジェクトと個々に関連付けられているすべてのリアルタイム・データ・ス
トリームのソース型およびシンク型を識別するインターフェースデータを含む。オブジェ
クトレジスタは通常、仮想領域内のオブジェクトと関連付けられているネットワークノー
ドの1つ以上に送られる。インターフェースデータは、ネットワークノードの所与の1つ
から受け取られ得る。インターフェースデータは通常、所与のネットワークノードと関連
付けられた各オブジェクトごとに、その所与のネットワークノードと関連付けられている
すべてのリアルタイム・データ・ストリーム・ソース型およびリアルタイム・データ・ス
トリーム・シンク型のリストを含む。オブジェクトレジスタは通常、所与のネットワーク
ノードから受け取られるインターフェースデータで更新される。更新されたオブジェクト
レジスタは通常、オブジェクトレジスタに記載されたオブジェクトと関連付けられている
1つ以上の他の各ネットワークノードに送信される。
ネットワークノードの所与の1つに指定のリアルタイム・データ・ストリーム・データ
のセットを配信するリアルタイム・データ・ストリーム処理トポロジが決定されてもよい
。仮想領域仕様は、仮想領域の1つ以上のゾーンにおける1つ以上のリアルタイム・デー
タ・ストリーム型のストリーム属性値を指定してもよい。リアルタイム・データ・ストリ
ーム・トポロジを決定するプロセスは通常、仮想領域仕様によって指定される1つ以上の
ストリーム属性値に基づいて、リアルタイム・データ・ストリーム処理トポロジを選択す
ることを含む。
仮想領域仕様は、第1のリアルタイム・データ・ストリーム型に第1のストリーム優先
度属性値を割り当て、第2のリアルタイム・データ・ストリーム型に、第1のストリーム
優先度属性値とは異なる第2のストリーム優先度属性値を割り当てることができ、リアル
タイム・データ・ストリーム処理トポロジを選択するプロセスは、ストリーム処理トポロ
ジとして、異なる第1のストリーム優先度属性値と第2のストリーム優先度属性値に従っ
て、第1のリアルタイム・データ・ストリーム型と第2のリアルタイム・データ・ストリ
ーム型に異なる優先度を付けるトポロジを選択することを含んでいてもよい。
仮想領域仕様は、第1のリアルタイム・データ・ストリーム型に第1のストリームトポ
ロジ属性値を割り当て、第2のリアルタイム・データ・ストリーム型に、第1のストリー
ムトポロジ属性値とは異なる第2のストリームトポロジ属性値を割り当てることができ、
リアルタイム・データ・ストリーム処理トポロジを選択するプロセスは、異なる第1のス
トリームトポロジ属性値と第2のストリームトポロジ属性値に従って、第1のリアルタイ
ム・データ・ストリーム型と第2のリアルタイム・データ・ストリーム型に異なるストリ
ーム処理トポロジを選択することを含んでいてもよい。第1のリアルタイム・データ・ス
トリーム型に選択されるストリーム処理トポロジは、混合ストリーム形式で所与のネット
ワークノードに第1の型のリアルタイム・データ・ストリームのそれぞれを配信してもよ
く、第2のリアルタイム・データ・ストリーム型に選択されるストリーム処理トポロジは
、非混合ストリーム形式で所与のネットワークノードに第2の型のリアルタイム・データ
・ストリームのそれぞれを配信してもよい。
リアルタイム・データ・ストリーム接続を確立するプロセスは、それぞれが個々のリン
ク帯域幅を有し、1つ以上のリアルタイム・データ・ストリームの個々の送信セットを搬
送する個々のリンクを介した、1つ以上のリアルタイム・データ・ストリーム接続を作成
することを含んでいてもよい。
仮想領域仕様は、1つ以上のリアルタイム・データ・ストリーム型のそれぞれに1つ以
上の個々の帯域幅レベルを割り当ててもよく、接続を作成するプロセスは、仮想領域仕様
によって1つ以上のリアルタイム・データ・ストリーム型に個々に割り当てられた1つ以
上の帯域幅レベルに基づくものとすることができる。仮想領域仕様は、1つ以上のリアル
タイム・データ・ストリーム型のそれぞれに個々の最小帯域幅レベルを割り当ててもよく
、接続を作成するプロセスは、各リンクごとの個々の最小リンク帯域幅レベルを、仮想領
域仕様によって1つ以上のリアルタイム・データ・ストリーム型に個々に割り当てられた
1つ以上の最小帯域幅レベルに基づいて決定すること、およびその個々のリンク帯域幅が
決定された個々の最小リンク帯域幅レベルに適合するリンクだけを作成することを含んで
いてもよい。仮想領域仕様は、1つ以上のリアルタイム・データ・ストリーム型のそれぞ
れに、複数の帯域幅レベルの個々のセットを割り当ててもよく、接続を作成するプロセス
は、仮想領域仕様によって割り当てられた帯域幅レベルに少なくとも部分的に基づいて決
定される第1の候補リンク帯域幅レベルでリンクの所与の1つを作成しようと試みること
、および第1の候補リンク帯域幅レベルで所与のリンクを作成するのに失敗したことに応
答して、所与のリンクを、仮想領域仕様によって割り当てられた帯域幅レベルに少なくと
も部分的に基づいて決定される第2の候補リンク帯域幅レベルで作成しようと試みること
を含んでいてもよい。
仮想領域仕様は、1つ以上のリアルタイム・データ・ストリーム型のそれぞれに個々の
ストリーム優先度属性値を割り当ててもよく、接続を作成するプロセスは、各リンクごと
に、仮想領域仕様によって1つ以上のリアルタイム・データ・ストリーム型に個々に割り
当てられた1つ以上のストリーム優先度属性値に少なくとも部分的に基づいて、個々の送
信セット内の1つ以上のリアルタイム・データ・ストリームに個々のリンク帯域幅を割り
振ることを含んでいてもよい。
ネットワークノードの所与の1つに指定のリアルタイム・データ・ストリーム・データ
のセットを配信するリアルタイム・データ・ストリーム処理トポロジが決定されてもよい
。このプロセスでは、所与のネットワークノードおよび仮想領域内のオブジェクトと関連
付けられたその他のネットワークノードの1つ以上の帯域幅能力が判定され、見出された
帯域幅能力に基づいてストリーム処理トポロジが選択される。
本発明の他の特徴および利点は、図面および特許請求の範囲を含めて、以下の説明を読
めば明らかになる。
共用仮想領域の2次元描写を提示するグラフィカル・ユーザ・インターフェースを含むネットワークノードの一実施形態を示す概略図である。 ネットワークノードがピア・ツー・ピア・アーキテクチャで通信する共用仮想領域通信環境の一実施形態を示す概略図である。 ネットワークノードがサーバ仲介型アーキテクチャで通信する共用仮想領域通信環境の一実施形態を示す概略図である。 3つのネットワークノードのソースとシンクの間の例示的なリアルタイム・データ・ストリーム接続のセットを含む共用仮想領域通信環境の一実施形態を示すブロック図である。 ソースのセット例とシンクのセット例とを含むネットワークノードの一実施形態を示すブロック図である。 個々のリアルタイム・データ・ストリーム切換え規則と関連付けられているゾーンを含む仮想領域の斜視図を示すグラフィカル・ユーザ・インターフェースの一実施形態を示す概略図である。 図5に示す3次元仮想領域の平面図を示すグラフィカル・ユーザ・インターフェースの一実施形態を示す概略図である。 共用仮想領域通信環境の一実施形態における、1つのエリア・サーバ・ネットワーク・ノードと他の2つのエリア・クライアント・ネットワーク・ノードとに接続されたエリア・クライアント・ネットワーク・ノードの一実施形態を示すブロック図である。 図7に示す共用仮想領域通信環境の一実施形態を示す概略図である。 エリア・クライアント・ネットワーク・ノードおよびエリア・サーバ・ネットワーク・ノードによって実行される方法の一実施形態を示す流れ図である。 ストリーム切換えマネージャの一実施形態がエリアサーバから受け取られる構成データを処理するための方法の一実施形態を示す流れ図である。 仮想領域に4つのアバタオブジェクトが取り込まれている図6に示す仮想領域を示す平面図である。 エリア・クライアント・ネットワーク・ノードに必要なデータ・ストリーム・データを配信するリアルタイム・データ・ストリーム接続を決定する方法の一実施形態を示す流れ図である。 仮想領域を共用するネットワークノード間でリアルタイム・データ・ストリーム接続を切り換える方法の一実施形態を示す流れ図である。 仮想領域を共用するネットワークノード間でリアルタイム・データ・ストリーム接続を切り換える方法の一実施形態を示す流れ図である。 拡張リンク管理機能を備えるネットワークアダプタを含むホストシステムを示すブロック図である。 図15に示すネットワークアダプタの一実施形態を示すブロック図である。 エリア・クライアント・ネットワーク・ノードに必要なデータ・ストリーム・データを配信する1つ以上のリアルタイム・データ・ストリーム処理トポロジを決定する方法の一実施形態を示す流れ図である。 リアルタイム・データ・ストリーム処理トポロジの一実施形態を示す概略図である。 リアルタイム・データ・ストリーム処理トポロジの一実施形態を示す概略図である。 リアルタイム・データ・ストリーム処理トポロジの一実施形態を示す概略図である。 リアルタイム・データ・ストリーム処理トポロジの一実施形態を示す概略図である。 リアルタイム・データ・ストリーム処理トポロジの一実施形態を示す概略図である。 仮想領域仕様で定義される切換え規則に従ってリアルタイム・データ・ストリーム接続を管理するネットワークスイッチの一実施形態を含む共用仮想領域通信環境の一実施形態を示すブロック図である。
以下の説明では、類似の参照符号を使用して類似の要素を識別する。さらに、図面は、
例示的実施形態の主要な特徴を図式的に説明するためのものである。図面は、実際の実施
形態のあらゆる特徴を図示するためのものでも、図示される要素の相対的寸法を示すため
のものでもなく、縮尺通りには描かれていない。
I.概説
本明細書で示す実施形態は、共用仮想領域通信環境においてリアルタイム・データ・ス
トリーム接続を切り換えるシステムおよび方法を提供する。これらの実施形態は、共用仮
想領域を介して通信するネットワークノード間でリアルタイム・データ・ストリームを接
続するための切換え規則を、仮想領域の仕様に明示的に結び付けることを可能にする。
これらの実施形態は、仮想領域の設計者が、仮想領域の形および外観のみならず、交信
者がリアルタイム・データ・ストリームを介して相互に接続し合うやり方も制御すること
を可能にする。このようにして、領域設計者は、特定の通信目的のための、または特定の
通信環境(個人空間、画廊、コンサートホール、講堂、会議室、クラブハウスなど)のた
めの仮想領域を共用する交信者間で行われるリアルタイム・データ・ストリーム接続を最
適化することができる。
加えて、仮想領域内の各場所に自動切換え規則を結び付けることにより、これらの実施
形態は、仮想空間内のオブジェクトの属性および特性に基づいて接続を確立し、終了する
システム、ならびに信号処理機能をストリームの経路指定、接続および切断の各機能と絡
み合わせるシステムに比べて、交信者ノードの接続および切断の際に伴う複雑さを低減し
、システムのスケーラビリティを増大させる。
II.用語の定義
「仮想領域」とは、コンピュータで管理される空間または場面の表現である。仮想領域
は、2次元表現とすることも、3次元表現とすることもできる。多くの場合、仮想領域は
、物理的な実世界空間をシミュレートするように設計される。例えば、従来のコンピュー
タモニタを使用すると、仮想領域は、3次元コンピュータ生成空間の2次元グラフィック
として可視化され得る。しかし仮想領域は、切換え規則を実施するための関連する可視化
を必要としない。
「仮想領域仕様」とは、共用仮想領域通信環境を作成する際に使用される仮想領域記述
である。
「ゾーン」とは、共用仮想領域を介して通信するネットワークノード間でリアルタイム
・データ・ストリームを切り換える(経路指定する、接続する、切断するなど)ための少
なくとも1つの規則と関連付けられている仮想領域の一区域である。
「交信者」とは、共用仮想領域通信セッションにおいて通信し、または別のやり方で共
用仮想領域通信セッションに参加する人である。
「オブジェクト」とは、ある仮想領域において、その仮想領域の形状から分離されてい
る任意の種類の個別要素である。オブジェクトは通常、仮想領域の属性および特性から分
離され、区別される属性または特性を有する。
「アバタ」とは、仮想領域において交信者を表すオブジェクトである。
仮想領域における「位置」とは、仮想領域におけるある点またはエリアまたはボリュー
ムの場所をいう。点は通常、仮想領域内のある箇所を定義する単一の2次元または3次元
座標セット(x,y,zなど)によって表される。エリアは通常、仮想領域内の閉じた2
次元形の境界を定義する3つ以上の同一平面上の頂点の3次元座標によって表される。ボ
リュームは通常、仮想領域内の3次元形の閉じた境界を定義する4つ以上の非同一平面上
の頂点の3次元座標によって表される。
「ネットワークノード」とは、通信ネットワークにおける連結または接続点である。ネ
ットワークノードの例には、それだけに限らないが、端末、コンピュータ、ネットワーク
スイッチなどが含まれる。
「コンピュータ」とは、一時的に、または永続的に機械可読媒体上に記憶されている機
械可読命令(ソフトウェアなど)に従ってデータを処理する機械である。特定のタスクを
実行するこのような命令のセットを、プログラムまたはソフトウェアプログラムと呼ぶ。
「リアルタイム・データ・ストリーム」とは、連続した流れとして構造化され、処理さ
れる、遅延なしで、またはごくわずかな遅延しか伴わずに受け取られるように設計されて
いるデータである。リアルタイム・データ・ストリームには、音声、映像、ユーザの動き
、表情およびその他の物理的現象のディジタル表現、ならびに、例えば、アバタ運動命令
、テキストチャット、リアルタイム・データ・フィード(センサデータ、機械制御命令、
取引ストリーム、株式相場情報提供など)およびファイル転送などを含む、高速伝送、高
速実行、または高速伝送と高速実行の両方から利益が得られるコンピューティング環境内
のデータが含まれる。
「データソース」(本明細書では単に「ソース」という)とは、データを発生する機器
、機器の一部(コンピュータなど)、またはソフトウェアのいずれかである。
「データシンク」(本明細書では単に「シンク」という)とは、データを受け取る機器
、機器の一部(コンピュータなど)、またはソフトウェアのいずれかである。
「切換え規則」とは、1つ以上のリアルタイム・データ・ソースと1つ以上のリアルタ
イム・データ・シンクを接続し、または切断するために満たされなければならない1つ以
上の条件を指定する命令である。
「ストリームミックス」とは、同じ型(音声、映像、チャット、動きデータなど)の2
つ以上のリアルタイム・データ・ストリームの組み合わせである。
「送受信スイッチ」とは、あるネットワークノード(クライアント、サーバ、ネットワ
ーク機器など)からアナログまたはディジタル信号を受信し、その受信信号(または受信
信号のコピー)を1つ以上の他のネットワークノードに送信することによって、ネットワ
ークノードを相互接続するネットワーク機器である。
「ストリーム処理トポロジ」とは、リアルタイム・データ・ストリーム(それぞれ、混
合ストリームとすることも、非混合ストリームとすることもできる)を1つ以上のネット
ワークノードに配信するためのネットワーク経路の編成である。
III.序論
本明細書で示す実施形態は、共用仮想領域通信環境においてリアルタイム・データ・ス
トリームを切り換えるシステムおよび方法を提供する。交信者は通常、そのような環境に
、2次元および3次元の可視化機能を有する通信ソフトウェアプログラムの個々のコピー
を実行する個々のネットワークノードからアクセスする。通信ソフトウェアプログラムは
、個々のネットワークノードにおいて仮想領域の個々のビューを提示するクライアントプ
ロセスを制御し、他のネットワークノードとのリアルタイム・データ・ストリーム接続を
確立する。交信者は通常、仮想領域において、個々のアバタによって表され、これらのア
バタは、交信者によってその個々のネットワークノードにおいて入力される入力コマンド
に応答して仮想領域を動き回る。仮想領域の交信者のビューは通常、交信者のアバタの視
点から提示され、そのことにより、交信者によって体験される没入のレベルが高まる。各
交信者は通常、自分のアバタの周りの仮想領域のあらゆる部分を見ることができる。
図1に、表示モニタ12、コンピュータマウス14、キーボード16、スピーカ18、
20、およびマイクロホン22を含むコンピュータシステムによって実施されるネットワ
ークノード10の一実施形態を示す。表示モニタ12は、グラフィカル・ユーザ・インタ
ーフェース24を表示する。グラフィカル・ユーザ・インターフェース24は、複数のウ
ィンドウ、アイコン、およびポインタ26を含むことのできるウィンドウズ(登録商標)
ベースのグラフィカル・ユーザ・インターフェースである。図示の実施形態では、グラフ
ィカル・ユーザ・インターフェース24は、画廊を表す共用3次元仮想領域28の2次元
描写を提示している。各交信者は、仮想領域28において、個々のアバタ30、32、3
4によって表され、各アバタは、個々の役割(学芸員、画家、来訪者など)を持つ場合も
ある。
以下で詳細に説明するように、仮想領域28は、仮想領域28においてアバタ30〜3
4によって表されるネットワークノード間のリアルタイム・データ・ストリームの切換え
を制御する個々の規則と関連付けられているゾーン36、38、40、42、44を含む
。(典型的な通信セッションの間、図1の各ゾーン36〜44の境界を定める破線は交信
者から見えないが、そのようなゾーン境界と関連付けられた視覚的手掛かりがあってもよ
い。)切換え規則は、ネットワークノードのそれぞれで実行される各ローカル接続プロセ
スが、仮想領域28のゾーン36〜44における交信者のアバタ30〜34の場所に基づ
いて、どのようにしてその他のネットワークノードとの通信を確立するか指図する。
通信セッションの間、交信者ネットワークノードはそれぞれ、リアルタイム・データ・
ストリーム(動きデータ・ストリーム、オーディオ・データ・ストリーム、チャット・デ
ータ・ストリーム、ファイル転送データ・ストリーム、映像データ・ストリームなど)の
個々のセットを生成する。例えば、各交信者は、仮想領域28における自分のアバタの動
きを制御する動きデータ・ストリームを生成する1つ以上の入力装置(コンピュータマウ
ス14、キーボード16など)を操作する。加えて、ネットワークノード10の近傍にお
いてローカルで生成される交信者の音声およびその他の音も、マイクロホン22によって
取り込まれる。マイクロホン22は、リアルタイム・オーディオ・ストリームに変換され
るオーディオ信号を生成する。オーディオストリームの個々のコピーが、仮想領域28に
おいてアバタで表されているその他のネットワークノードに送信される。これら他のネッ
トワークノードにおいてローカルで生成される音は、リアルタイムオーディオ信号に変換
され、ネットワークノード10に送信される。ネットワークノード10は、受信したロー
カルで生成されたオーディオストリームを、スピーカ18、20によってレンダリングさ
れるオーディオ信号に変換する。動きデータ・ストリームおよびオーディオストリームは
、各交信者ノードからその他の交信者ネットワークノードに、直接送信されても、間接的
に送信されてもよい。ストリーム処理トポロジによっては、交信者ネットワークノードは
それぞれ、その他の交信者ネットワークノードによって送信されるリアルタイム・データ
・ストリームのコピーを受信する。他のストリーム処理トポロジにおいては、交信者ネッ
トワークノードの1つ以上が、他の各ネットワークノードをソースとする(またはそこか
ら発せられる)リアルタイム・データ・ストリームから得られる1つ以上のストリームミ
ックスを受信する場合もある。
図2Aは、3つのネットワークノード52、54、56がピア・ツー・ピア・アーキテ
クチャで通信ネットワーク58によって相互接続されている共用仮想領域通信環境50の
一実施形態の概略図である。通信ネットワーク58は、ローカル・エリア・ネットワーク
(LAN)とすることも、グローバル通信ネットワーク(インターネットなど)とするこ
ともできる。ネットワークノード52〜56は、個々のコンピュータによって表されてい
る。
このアーキテクチャにおいて、ネットワークノード52〜56はそれぞれ、仮想領域に
おけるアバタの動きといった状態変化を、その他の各ネットワークノードに送信する。ネ
ットワークノードのうちの1つ(通常は、通信セッションを開始するネットワークノード
)は、エリアサーバとして動作する。図示の実施形態において、ネットワークノード52
は、エリアサーバの役割を負っている。エリア・サーバ・ネットワーク・ノード52は、
グローバル状態情報を維持し、その他のネットワークノード54、56のためのデータサ
ーバとして働く。グローバル状態情報は、仮想領域にあるすべてのオブジェクトと仮想領
域における各オブジェクトの個々の場所のリストを含む。エリア・サーバ・ネットワーク
・ノード52は、その他のネットワークノード54、56にグローバル状態情報を周期的
に送る。また、エリア・サーバ・ネットワーク・ノード52は、通信セッションへの参加
を要求する他のネットワークノードの登録、およびこれらのノードへの初期設定情報の送
信も行う。このプロセスにおいて、エリア・サーバ・ネットワーク・ノード52は、各参
加ネットワークノードに、仮想領域仕様60のコピーを送信し、この仮想領域仕様は、ロ
ーカルで記憶されていても、リモートデータベースに記憶されていてもよい。またエリア
・サーバ・ネットワーク・ノード52は、通信障害が発生した場合に、他のネットワーク
ノード54、56が、グローバル状態に同期することができるようにもする。
以下で詳細に説明するように、仮想領域仕様60は、仮想領域の形状要素(幾何学的要
素)の記述およびネットワークノード間のリアルタイムストリーム接続を制御する1つ以
上の切換え規則を含む。形状要素の記述は、ネットワークノード52〜56上で動作する
それぞれの通信アプリケーションが、それぞれの表示モニタ上の交信者に仮想領域の個別
のビューを提示することを可能にする。切換え規則は、ネットワークノード52〜56の
それぞれで実行されている接続プロセスが、仮想領域における交信者のアバタの場所に基
づいて、その他のネットワークノードとの通信をどのようにして確立するか指図する。
図2Bは、ネットワークノード52〜56(このアーキテクチャでは「エリア・クライ
アント・ネットワーク・ノード」という)が、エリアサーバ64によって仲介されるアー
キテクチャにおいて通信する共用仮想領域通信環境62の一実施形態の概略図である。こ
の実施形態において、エリアサーバ64は、図2Aに示すピア・ツー・ピア・アーキテク
チャの実施形態でネットワークノード52によって行われたエリアサーバ機能を引き受け
る。これに関して、エリアサーバ64は、グローバル状態情報を維持し、エリア・クライ
アント・ネットワーク・ノード52〜56のためにデータサーバとして働く。以下で詳細
に説明するように、このアーキテクチャは、エリア・クライアント・ノード52〜56間
のリアルタイム・データ・ストリーム切換えが、ピア・ツー・ピア・トポロジ、エリアサ
ーバ64がネットワークノード52〜56の間で通信仲介者として動作する完全なサーバ
仲介型トポロジ、ピア・ツー・ピア・トポロジと完全なサーバ仲介型トポロジの態様を組
み合わせたハイブリッドトポロジを含む、様々なトポロジとして処理されることを可能に
する。
図3に、共用仮想領域通信環境の一実施形態における3つのネットワークノード52〜
56のソースとシンクの間のリアルタイム・データ・ストリーム接続のセットの例を示す
。説明を容易にするために、図3の矢印はそれぞれ1つ以上のリアルタイム・データ・ス
トリームの個々のセットを表すものとする。本明細書に示す各実施形態によれば、図3に
示す接続は、共用仮想領域の仕様で定義されている切換え規則、共用仮想領域における交
信者のアバタの場所、およびネットワークノード52〜56のそれぞれで利用できる特定
のソースおよびシンクに基づいて確立される。
図4に、ソースのセット例66とシンクのセット例68を含むネットワークノード52
の例示的実施形態を示す。各ソースは、データを発生するネットワークノード52の機器
または構成要素であり、各シンクは、データを受け取るネットワークノード52の機器ま
たは構成要素である。ソースのセット66は、オーディオソース70(マイクロホンとい
ったオーディオ取込み機器など)、映像ソース72(ビデオカメラといった映像取込み機
器など)、チャットソース74(キーボードといったテキスト取込み機器など)、動きデ
ータソース76(コンピュータマウスといったポインティングデバイスなど)、「その他
の」ソース78(ファイル共用ソースや、カスタマイズ・リアルタイム・データ・ストリ
ームのソースなど)を含む。シンクのセット68は、オーディオシンク80(スピーカや
ヘッドホンといったオーディオレンダリング機器など)、映像シンク82(表示モニタと
いった映像レンダリング機器など)、チャットシンク84(表示モニタといったテキスト
レンダリング機器など)、動きデータシンク86(表示モニタといった動きレンダリング
機器など)、および「その他の」シンク88(共用ファイルを印刷するプリンタ、前述の
もの以外のリアルタイム・データ・ストリームをレンダリングする機器、分析またはカス
タマイズ表示のためにリアルタイムストリームを処理するソフトウェアなど)を含む。
図4に示すネットワークノードの実施形態によって例示するように、ネットワークノー
ドはそれぞれ、潜在的に、多種多様なソースおよびシンクを利用することができる。領域
設計者がソースとシンクの間でどのようにして接続が確立されるか制御できるようにする
ことによって、本明細書で示す実施形態は、各交信者が仮想領域において通信し、また別
のやり方で対話する際の各交信者の知覚体験を領域設計者が大いに制御することを可能に
する。このようにして、領域設計者は、特定の通信目的または特定の通信環境(画廊、コ
ンサートホール、講堂、会議室、クラブハウスなど)のための仮想領域を最適化すること
ができる。
IV.仮想領域の指定
A.序論
共用仮想領域は、仮想領域の形状要素と、ネットワークノード間のリアルタイムストリ
ーム接続を制御する1つ以上の切換え規則の記述を含む仕様によって定義される。
仮想領域の形状要素は通常、仮想領域の物理的形状および衝突形状を含む。物理的形状
は、仮想領域の形を記述する。物理的形状は通常、三角形、四辺形、または多角形の面で
構成される。仮想領域のより現実的な外観を創り出すために、物理的形状に色およびテク
スチャがマップされる。照明効果は、例えば、視覚的形状に照明をペイントし、照明の近
くのテクスチャ、色、または強度を修正することなどによって与えられる。衝突形状は、
各オブジェクトが仮想領域において動くことのできるやり方を決定する不可視の面を記述
する。衝突形状は、視覚的形状と同一空間を占めていてもよく、視覚的形状のより単純な
近似に対応していてもよく、設計者のアプリケーション特有の要件に関連していてもよい
切換え規則は通常、仮想領域における位置による(を使った)リアルタイム・データ・
ストリームのソースとシンクを接続する条件の記述を含む。各規則は通常、その規則が適
用されるリアルタイム・データ・ストリーム型、およびその規則が適用される仮想領域に
おける1つ以上の場所を定義する属性を含む。実施形態によっては、規則はそれぞれ、任
意選択で、必要なソースの役割、必要なシンクの役割、ストリームの優先度レベル、およ
び要求されるストリーム処理トポロジを指定する1つ以上の属性を含み得る。実施形態に
よっては、仮想領域の特定の部分についての明示的な切換え規則が定義されていない場合
、仮想領域のその部分に、1つ以上の暗黙的な、またはデフォルトの切換え規則が適用さ
れ得る。1つの例示的なデフォルト切換え規則は、ポリシ規則に従って、あらゆるソース
をある領域内のあらゆる適合するシンクに接続するというものである。ポリシ規則は、エ
リアクライアント間のすべての接続にグローバルに適用されてもよく、個々のエリアクラ
イアントとの個々の接続だけに適用されてもよい。ポリシ規則の一例は、ソースと、仮想
領域において相互に規定の距離(または半径)内にある個々のオブジェクトと関連付けら
れている適合するシンクとの接続だけを許可する近接性ポリシ規則である。
B.仮想領域を指定するやり方の例
1.仮想領域の形状要素の指定
仮想領域の形状要素を指定するには、多種多様な3次元グラフィックス設計ツールおよ
びゲームレベルの設計エディタが使用され得る。一般に、仮想領域の形状要素の仕様は、
それだけに限らないが、VRML(http://www.web3d.org/x3d
/specifications/vrmlなど参照)、X3D(http://www
.web3d.org/x3d/specifications/x3dなど参照)、C
OLLADA(http://www.COLLADA.orgなど参照)、およびU3
D(http://www.w3.orgなど参照)を含む任意の種類の3次元記述言語
で記述することができる。
実施形態によっては、仮想領域仕様は、COLLADAに従って仮想領域の形状要素を
記述し、COLLADAは、「タグ」または「要素」(すなわち「<」と「>」で囲まれ
た単語)および「属性」(すなわち属性名=“値”)を含むXMLベースのディジタル資
産交換スキーマである。これらの実施形態の中には、仮想領域の形状要素のCOLLAD
A記述が、SketchUp(米国カリフォルニア州マウンテンビュー所在のグーグル社
(Google Inc)から入手できる)や、Maya、または3ds Max(どち
らも、米国カリフォルニア州サンラファエル所在のオートデスク社(Autodesk)
から入手できる)といった3次元グラフィックスツールを使用して作成されるものもある
2.仮想領域と関連付けられる切換え規則の指定
a.概説
実施形態によっては、仮想領域仕様は、以下のCOLLADAスキーマのXMLベース
の拡張に従って仮想領域と関連付けられている切換え規則を記述する。以下に提示するモ
デルは、COLLADA−Digital Asset Schema Release
1.4.1 April 2006 specification(http://w
ww.khronos.org/collada/から入手できる)への拡張案として記
述されている。この拡張を本明細書では、「COLLADAストリーム参照」と呼ぶ。
b.COLLADAストリーム参照
COLLADAストリーム参照に従って定義される切換え規則は、通常、システムレベ
ルで定義されているソースおよびシンクを参照する。実施形態によっては、COLLAD
Aの基礎をなすXMLシステムの拡張性機能を使用して、アプリケーション特有のストリ
ーム型が記述される。他の実施形態の中には、サポートされるストリーム型がシステムに
おいて更新されるものもある。COLLADAストリーム参照は、領域開発者が、所与の
領域のための新しいストリーム型を定義することを可能にする。これらの場合、交信者の
システムがある領域に参入するときに未知のストリーム型に遭遇する場合、システムは、
開発者指定の方法を起動して、そのストリーム型を処理し、交信者のシステム内で適切な
ストリーム処理を構成するのに必要な情報でシステムを更新する。
通常、「音声」といったストリームソース型と、実際のローカル・ストリーム・ソース
(特定のマイクロホンなど)およびそのソースと関連付けられている任意の信号処理また
は他のストリーム処理プラグイン(圧縮プログラム/リミッタや、音声に基づいてアバタ
の動きを生成する動きデータ・ストリーム・ソースなど)の間には接続が生じる。型「音
声」は通常、システムによって、各設計者がその型を独自に定義することを必要とするの
ではなく、どんな領域設計者でも使用することができるように定義されている。他方、選
択され、または必要とされる特定のプラグインを指定することが、アプリケーション設計
の一般的な部分である。COLLADAストリーム参照は、交信者が、音声などのストリ
ームソース型を、マイクロホン、記録または音源に割り当てると共に、ハンドラ内のプラ
グインを定義することを可能にする。
同様の状況がシンクに影響を及ぼす。「音声」などのストリーム型のためのシンクは通
常、システムレベル(ヘッドセットやスピーカなど)において確立される。交信者または
領域設計者によって追加のプラグインが指定される場合もある(距離ベースのフェーダレ
ベルや相対的場所に基づくステレオパンなど)。
各ゾーン、およびストリームのソースとシンクを各ゾーンに関して接続するための規則
を記述するCOLLADAストリーム参照の各要素を以下に定義する。
i.<zone_mesh>
<zone_mesh>タグは、ゾーンの境界を定義する。
(1)序論
基本形状メッシュを記述するのに十分な情報を含み、または参照する。
(2)概念
<zone_mesh>の定義は、完全な記述(<source>、<vertice
s>、<polygons>など)ではなく、単にその形を導き出すための別の<geo
metry>を指し示してもよいことを除いて、<mesh>と同一である。後者の場合
は通常、その<geometry>の凸包を、(任意選択のconvex_hull_o
f属性によって表示される)ゾーン境界として使用するために計算する必要があることを
意味する。
これは非常に有用である。というのは、ストリーム処理に<mesh>(レンダリング
に使用されたものなど)を再利用して、文書サイズを最小限に抑え、元の<mesh>へ
のリンクを維持することを可能にするからである。この意味で、<zone_mesh>
は、物理学エンジンに使用されるCOLLADA<convex_mesh>要素に類似
したものである。
必要なボリューム属性は、ゾーンが、メッシュボリュームの内側であるか、それとも外
側であるかを表示する。
<convex_mesh>を記述する最小限のやり方は、これの各頂点を(<ver
tices>要素およびこれに対応するソースによって)指定し、インポータにその点群
の凸包を計算させることである。
(3)属性
<zone_mesh>要素は以下の属性を有する。
Figure 0005723905
(4)関連要素
<convex_mesh>要素は以下の要素に関連する。
発生数 スキーマにおいて定義される要素数
親要素 形状
子要素 以下の項を参照されたい。
その他 なし
(5)子要素
子要素は、存在する場合には、<source>、<vertices>、プリミティ
ブ要素、<extra>の順序で表されなければならない(プリミティブ要素は、<li
nes>、<linestrips>、<polygons>、<polylist>、
<triangles>、<trifans>、または<tristrips>の任意の
組み合わせ)。
Figure 0005723905
(6)例
以下に基本<zone_mesh>要素の一例を示す。
Figure 0005723905
以下に<zone_mesh>要素の別の例を示す。
Figure 0005723905
ii.<stream>
<stream>タグは<zone>内の切換え規則を定義する。
<stream>要素は、以下の属性を有する。
Figure 0005723905
iii.<sink>
<sink>タグは、ゾーンごと、ユーザ役割ごとのストリームの宛先を定義する<s
tream>の子要素である。
<sink>要素は、以下の属性を有する。
Figure 0005723905
c.COLLADAストリーム参照 例1
以下は、2つのゾーン、zonename1およびzonename2の記述例である

Figure 0005723905
この例において、<geometry>要素は、場面(仮想の部屋など)内のボリュー
ムの形を記述するCOLLADA要素である。<zone_mesh>要素は、前述のよ
うな、ゾーン境界と既存のメッシュの間の関係を定めるCOLLADAストリーム参照要
素である。<library_zones>要素は、ゾーン「zonename1」とゾ
ーン「zonename2」を含む<zone>要素のセットを宣言する。
zonename1の境界は、URI「#myArbitraryMesh」で参照さ
れる<geometry>によって計算される凸包の内部ボリュームに対応する。zon
ename2の境界は、「anotherMesh」で定義される形状メッシュに対応す
る。
zonename1と関連付けられている第1の切換え規則は、zonename1を
ソースとする各音声データ・ストリームの1つのコピーが、音声データ・ストリームを受
け取る(sink)ことができ且つ「participant(参加者)」役割属性を有
するzonename1内の各オブジェクトに送られると規定している。また第1の切換
え規則は、zonename1をソースとする各音声データ・ストリームのコピーが、音
声データ・ストリームを受け取ることができ且つ「moderator(仲介者)」役割
属性を有するzonename2内の各オブジェクトに送られるとも規定している。zo
nename1と関連付けられている第2の切換え規則は、zonename1をソース
とする各チャット・データ・ストリームの1つのコピーが、チャット・データ・ストリー
ムを受け取ることのできるzonename1内の各オブジェクトに送られると規定して
いる。zonename1と関連付けられている第3の切換え規則は、zonename
1をソースとする、「moderator」役割属性と関連付けられた各オーディオ・デ
ータ・ストリームの1つのコピーが、オーディオ・データ・ストリームを受け取ることが
でき且つ仲介者役割属性と関連付けられていないzonename1内の各オブジェクト
に送られると規定している。
d.COLLADAストリーム参照 例2
以下は、2つのゾーン、StageZoneおよびAudienceZoneを含むコ
ンサートホールをモデル化した仮想領域のCOLLADAストリーム参照記述の一例であ
る。
Figure 0005723905
この例において、StageZoneの境界は、「StageMesh」によって定義
される形状メッシュに対応する。AudienceZoneの境界は、「RoomMes
h」によって定義される形状メッシュに対応する。
StageZoneと関連付けられている切換え規則は、StageZoneをソース
とする、「lead_singer(リードボーカル)」属性と関連付けられている各音
声データ・ストリームの1つのコピーが、音声データ・ストリームを受け取ることができ
且つ「audience(観客)」役割属性を有するAudienceZone内の各オ
ブジェクトに送られると規定している。音声データ・ストリームの各コピーは、優先度レ
ベル1で、直接ストリーム処理トポロジの設定で送られることになっている。またこの切
換え規則は、StageZoneをソースとする、「lead_singer」属性と関
連付けられている各音声データ・ストリームのコピーが、音声データ・ストリームを受け
取ることができ且つ「all_performers(すべての演者)」役割属性を有す
るStageZone内の各オブジェクトに送られるとも規定している。
AudienceZoneと関連付けられている第1の切換え規則は、Audienc
eZoneをソースとする各音声データ・ストリームの1つのコピーが、音声データ・ス
トリームを受け取ることのできるAudienceZone内の各オブジェクトに、優先
度レベル2で送られると規定している。AudienceZoneと関連付けられている
第2の切換え規則は、AudienceZoneをソースとする各チャット・データ・ス
トリームの1つのコピーが、サーバミックスの設定で、チャット・データ・ストリームを
受け取ることのできるAudienceZone内の各オブジェクトに送られると規定し
ている。
C.仮想領域仕様の作成
図5に、仮想領域の仕様を作成するための3次元グラフィック設計ツールのグラフィカ
ル・ユーザ・インターフェース90の一実施形態を示す。グラフィカル・ユーザ・インタ
ーフェース90は、描画領域92、メニュー94、およびツールバー96を含む。
メニュー94は、描画ツール、コマンド、および設定へのアクセスを可能にする。図5
Aに示すメニューセットの例94は、File(ファイル)、Edit(編集)、Vie
w(表示)、Viewpoint(視点)、Draw(描画)、Tools(ツール)、
Windows(登録商標)(ウィンドウ)、およびHelp(ヘルプ)を含む。また、
メニューセット94は、仮想領域における各ゾーンおよびストリーム接続を定義するツー
ルへのアクセスを可能にするSococo Zonesメニュー98も含む。これらのツ
ールは、3次元グラフィック設計ツールの不可欠な構成要素とすることもでき、またはS
ketchUp(米国カリフォルニア州マウンテンビュー所在のグーグル社から入手でき
る)、Maya、または3ds Max(どちらも、米国カリフォルニア州サンラファエ
ル所在のオートデスク社から入手できる)といった3次元グラフィックスツールへのプラ
グイン拡張の一部として提供されてもよい。
ツールバー96は、ユーザ定義可能なツールおよびコントロールのセットを含む。図5
に示すツールバーセットの例96は、SketchUp6の3次元グラフィックス設計ソ
フトウェア・アプリケーション・プログラムといった、3次元グラフィック設計ツールに
おいて通常見られるツールおよびコマンドに対応するものである。
描画領域92は、領域設計者が仮想領域の3次元モデルを作成するところである。図5
において、グラフィカル・ユーザ・インターフェース90の描画領域92には、3次元仮
想領域100の斜視図が示されている。図6において、グラフィカル・ユーザ・インター
フェース90の描画領域92には、仮想領域100の平面図が示されている。仮想領域1
00の各形状要素(壁、天井、床、柱、ベンチ、照明器具など)は通常、SketchU
p6の3次元グラフィックス設計ソフトウェア・アプリケーション・プログラムといった
、3次元グラフィック設計ツールにおいて通常見られる標準的なツールおよびコマンドを
使用して定義される。
図5および図6に示すように、形状要素に加えて、仮想領域100はさらに、破線境界
で囲まれたゾーン101、102、104、106、108、110、112も含む。ゾ
ーン101〜112はそれぞれ、1つ以上の個々のリアルタイム・データ・ストリーム切
換え規則と関連付けられている。ゾーン102〜112は、Sococo Zonesメ
ニュー98を介してアクセス可能なツールおよびコマンドを使用して指定される。実施形
態によっては、領域設計者は、標準3次元グラフィックス設計ツールを使用してゾーン1
01〜112のそれぞれの境界を指定し、次いで、Sococo Zones設計ツール
の1つ以上を選択して、その境界を個々の<zone_mesh>タグと関連付け、その
<zone_mesh>タグの属性を指定することができる。これらの実施形態の中には
、Sococo Zones設計ツールがユーザを誘導して、各ゾーンが前述のCOLL
ADAストリーム参照仕様(<zone>タグ、<stream>タグ、<sink>タ
グなど)を使用して表現されるように各ゾーンを定義するプロセスを行わせるものもある
V.第1のシステムアーキテクチャ実施形態
A.全般的システム概要
交信者は通常、それぞれのネットワークノードから共用仮想領域通信環境にアクセスす
る。これらのネットワークノードはそれぞれ、通常は、汎用コンピュータシステムまたは
専用通信コンピュータシステム(または「コンソール」)によって実施される。各ネット
ワークノードは、各ネットワークノードにおいて仮想領域のそれぞれのビューを提示し、
他のネットワークノードとのリアルタイム・データ・ストリーム接続を確立する通信プロ
セスを実行する。
図7に、ネットワークノード52〜56(このアーキテクチャでは「エリア・クライア
ント・ネットワーク・ノード」または単に「エリアクライアント」と呼ぶ)とエリアサー
バ64が、通信ネットワーク58によって相互接続されている、サーバ仲介型共用仮想領
域通信環境120の一実施形態を示す。この実施形態において、エリア・クライアント・
ネットワーク・ノード52〜56はそれぞれ、エリア・クライアント・サーバ・ネットワ
ーク・ノード52と関連して後述する種類の個々のコンピュータシステムによって実施さ
れる。またエリアサーバ64も、後述する同じ種類の汎用コンピュータシステムによって
実施される。
図7に示すように、エリア・クライアント・ネットワーク・ノード52は、処理装置1
22、システムメモリ124、および処理装置122をコンピュータシステムの様々な構
成要素に結合するシステムバス126を含むコンピュータシステムによって実施される。
処理装置122は、1つ以上のデータプロセッサを含んでいてもよく、各データプロセッ
サは、様々な市販のコンピュータプロセッサのいずれか1つの形のものとすることができ
る。システムメモリ124は、コンピュータシステムのためのスタートアップルーチンを
含む基本入出力システム(BIOS)を記憶する読取り専用メモリ(ROM)、およびラ
ンダム・アクセス・メモリ(RAM)を含み得る。システムバス126は、メモリバス、
周辺バスまたはローカルバスとすることができ、PCI、VESA、Microchan
nel、ISA、およびEISAを含む様々なバスプロトコルのいずれかと適合するもの
とすることができる。また、コンピュータシステムは、システムバス126に接続され、
データ、データ構造、およびコンピュータ実行可能命令のための不揮発性または永続記憶
を提供する1つ以上のコンピュータ可読媒体ディスクを含む、永続記憶装置128(ハー
ドドライブ、フロッピー(登録商標)ドライブ、CD−ROMドライブ、磁気テープドラ
イブ、フラッシュ・メモリ・デバイス、ディジタル・ビデオ・ディスクなど)も含む。交
信者は、1つ以上の入力装置130(1つ以上のキーボード、コンピュータマウス、マイ
クロホン、カメラ、ジョイスティック、Wiiデバイスといった身体動作センサ、タッチ
パッドなど)を使用してコンピュータシステムと対話する(コマンドまたはデータを入力
するなど)ことができる。情報は、表示コントローラ134によって制御される表示モニ
タ132上で交信者に提示される2次元グラフィカル・ユーザ・インターフェース(GU
I)または3次元GUIのいずれかを介して提示され得る。また、コンピュータシステム
は、スピーカやプリンタといった周辺出力装置を含んでいてもよい。コンピュータシステ
ムは、(「ネットワーク・インターフェース・カード」またはNICともいう)ネットワ
ークアダプタ136を介して他のエリア・クライアント・ネットワーク・ノード54、5
6およびエリアサーバ64に接続する。
システムメモリ124には、オペレーティングシステム140(米国ワシントン州レッ
ドモンド所在のマイクロソフト社(Microsoft Corporation)から
入手できるWindows(登録商標)XP オペレーティングシステムなど)、通信ア
プリケーション142、GUIドライバ144、およびデータ146を含む(ただし必ず
しもこれらに限定されない)いくつかのプログラムモジュールが記憶され得る。データ1
46の種類の例には、入力データ、出力データ、およびレジストリ(または構成データベ
ース)148といったプログラムデータなどが含まれる。
オペレーティングシステム140は、コンピュータシステム上で実行時実行環境を作成
するための基本オペレーティング・システム・サービス(メモリ管理、プロセスおよびス
レッド管理、セキュリティ、入力/出力、プロセス間通信など)を提供するエグゼクティ
ブ(executive)を含む。レジストリ148は通常、システムを起動し構成するのに必要
なパラメータ、オペレーティングシステム140の動作を制御するシステム規模のソフト
ウェア設定、セキュリティデータベース、およびユーザごとのプロファイル設定という情
報を含む。ネイティブ・オペレーティング・システム(OS)アプリケーション・プログ
ラミング・インターフェース(API)150が、エグゼクティブの基本オペレーティン
グ・システム・サービスを、通信アプリケーション142および他のユーザアプリケーシ
ョンに提示する。本明細書で使用する場合、「サービス」(または「サービスモジュール
」)という用語は、1つ以上の機能のセットを提供するオペレーティングシステムの構成
要素をいう。
実施形態によっては、通信アプリケーション142は、表示モニタ132上の仮想領域
および仮想領域内のオブジェクトの個々のビューの表示を制御するプロセス、ならびにエ
リア・クライアント・ネットワーク・ノード52とその他のエリア・クライアント・ネッ
トワーク・ノード54、56およびエリアサーバ64の間のリアルタイム・データ・スト
リームの切換えを制御するプロセスを含む。通信アプリケーション142は、GUIドラ
イバ144およびユーザ入力130とインターフェースして、仮想領域のビューを提示し
、交信者に、通信アプリケーション142の動作を制御させる。
通信アプリケーション142の実施形態は、どんな特定のハードウェア、ファームウェ
ア、またはソフトウェア構成にも限定されない、1つ以上の個別モジュール(またはデー
タ処理コンポーネント)によって実施され得る。一般にこれらのモジュールは、ディジタ
ル電子回路(ディジタル信号プロセッサ(DSP)といった特定用途向け集積回路など)
や、コンピュータハードウェア、ファームウェア、デバイスドライバ、またはソフトウェ
アを含む、任意のコンピューティング環境またはデータ処理環境において実施され得る。
実施形態によっては、これらのモジュールの機能が組み合わされて単一のデータ処理コン
ポーネントとされる。実施形態によっては、これらのモジュールの1つ以上のそれぞれの
個々の機能が、複数のデータ処理コンポーネントの個々のセットによって実行される。実
装形態によっては、通信アプリケーション142の各実施形態によって実行される方法を
実施するプロセス命令(コンピュータソフトウェアといった機械可読コードなど)、およ
び通信アプリケーション142が生成するデータが、1つ以上の機械可読媒体に記憶され
る。これらの命令およびデータを目に見える形で実施するのに適した記憶装置には、例え
ば、EPROM、EEPROM、フラッシュ・メモリ・デバイスといった半導体メモリデ
バイスや、内蔵式ハードディスク、取り外し可能ハードディスクといった磁気ディスク、
光磁気ディスク、DVD−ROM/RAM、およびCD−ROM/RAMなどを含む、あ
らゆる形の不揮発性コンピュータ可読メモリが含まれる。通信アプリケーション142の
実施形態は、パーソナルコンピュータ機器(デスクトップコンピュータ、モバイルコンピ
ュータ、通信機器など)、ネットワーク機器(サーバコンピュータ、ルータ、スイッチ、
ハブなど)、ゲームコンソール、ケーブルテレビおよびハイブリッド・セットトップ・ボ
ックス、モデムを含む多種多様な電子機器のいずれか1つとして実施され得る。
また、システムメモリ124に記憶される実行環境は、リアルタイム・データ・ストリ
ームを送受信するためのネットワーク・トランスポート・プロトコル152のセットも含
む。
実施形態によっては、ネットワーク58を介した通信は、伝送制御プロトコル/インタ
ーネットプロトコル(TCP/IP)に従って行われる。このプロトコルのTCP部分は
、搬送機能を提供して、メッセージをより小さいパケットに分割し、通信ネットワークの
他端においてそれらのパケットを再組立てし、経路上で失われたパケットを再送信する。
このプロトコルのIP部分は、経路指定機能を提供して、データパケットに宛先ネットワ
ークと宛先ネットワークにおける目標ノードのアドレスを割り当てる。TCP/IPプロ
トコルを使用して送られる各データパケットは、TCPおよびIP情報を含むヘッダ部分
を含む。IPプロトコルは、通信スタックの上位層へのパケット受渡しを保証するもので
はない。他方、TCPプロトコルは、シーケンス内パケット受渡しが保証される、接続指
向のエンドツーエンド搬送サービスを提供する。このようにして、TCPプロトコルは、
信頼性の高いトランスポート層接続を提供する。
他の実施形態には、ネットワーク58を介した通信が、ユーザ・データグラム・プロト
コル/インターネットプロトコル(UDP/IP)に従って行われるものもある。UDP
は、高信頼性の配信が必要とされない条件下で、TCPの代わりに使用され得る。例えば
UDP/IPは、再送信する時間がない、またはデータ品質全般の低下は許容可能である
、のいずれかの理由で失われたデータパケットが単に無視される、リアルタイムのオーデ
ィオおよび映像トラフィックに使用され得る。
実施形態の中には、Java(登録商標)メディアフレームワーク(JMF)を使用す
るものもあり、JMFは、デバイス取込み、符号化、復号、レンダリング、およびリアル
タイム・トランスポート・プロトコル(RTP)をサポートする。エリア・クライアント
・ネットワーク・ノード52〜56間でRTPデータを送受信する際には、ピア・ツー・
ピア・ネットワーキング・フレームワーク、TCPソケットを単独で、もしくはUDPと
組み合わせて使用する集中サーバ、またはマルチキャストプロトコルを含む様々なネット
ワークプロトコルが使用され得る。
また実行環境は、ハードウェアのリンクレベルおよびアクセスプロトコルも含み、これ
らのプロトコルは、開放型システム間相互接続(OSI)参照モデルのデータリンク層お
よび物理層に対応し得る。
図示の実施形態において、エリア・クライアント・ネットワーク・ノード52〜56と
エリアサーバ64の間の通信は、TCP/IPプロトコルに従って行われる。これらの実
施形態では、コンピュータシステムは、TCP/IPを使用して通信する前に、その各ネ
ットワークインターフェースのそれぞれについてIPアドレスを決定する。このプロセス
は、サーバにコンタクトして、そのネットワークインターフェースの1つ以上のIPアド
レスを動的に獲得することを伴い得る。コンピュータシステムは、動的ホスト構成プロト
コル(DHCP)を使用して、DHCPサーバにIPアドレスを求める要求を発し得る。
これに関して、コンピュータシステムは、システム起動時に、表示されるネットワークイ
ンターフェースのためのIPアドレスの割振りを要求するDHCP要求パケットをブロー
ドキャストする。DHCP要求パケットを受け取ると、DHCPサーバは、表示されるネ
ットワークインターフェースで使用するためにコンピュータシステムにIPアドレスを割
り振る。次いでコンピュータシステムは、サーバからの応答に含まれるIPアドレスを、
IPプロトコルを使用して通信するときにそのネットワークインターフェースと関連付け
るべきIPアドレスとして記憶する。
B.例示的システムアーキテクチャ
図8に、エリア・クライアント・ネットワーク・ノード52〜56がエリアサーバ64
によって仲介されるアーキテクチャにおいて通信し合う、図7に示すサーバ仲介型共用仮
想領域通信環境120の一実施形態160を示す。
エリアサーバ64は、グローバル状態情報を保持し、エリア・クライアント・ネットワ
ーク・ノード52〜56のデータサーバとして働く。エリアサーバによって保持されるグ
ローバル状態情報の中には、仮想領域の現在の仕様180、仮想領域にあるオブジェクト
の現在のレジスタ182、エリアサーバ64によって現在生成されている任意のストリー
ムミックスのリスト184がある。
前述のように、仮想領域仕様180は、仮想領域の形状要素および1つ以上の切換え規
則の記述を含む。切換え規則はそれぞれ、個々のリアルタイム・データ・ストリーム型の
ソースとそのリアルタイム・データ・ストリーム型のシンクの間の個々の接続を、仮想領
域における位置を使って定義する。実施形態によっては、仮想領域の形状要素は、COL
LADA−Digital Asset Schema Release 1.4.1仕
様に従って記述され、切換え規則は、前述の提案するCOLLADAストリーム参照仕様
に従って記述される。
オブジェクトレジスタ182は通常、仮想領域内の各オブジェクトごとに、個々のオブ
ジェクト識別子(オブジェクトを一意に識別するラベルなど)、オブジェクトと関連付け
られているネットワークノードとネットワーク接続が確立されることを可能にする接続デ
ータ(IPアドレスなど)、およびオブジェクトと関連付けられているリアルタイムデー
タのソースおよびシンク(オブジェクトと関連付けられているネットワークノードのソー
スおよびシンクなど)を識別するインターフェースデータを含む。また、オブジェクトレ
ジスタ182は通常、各オブジェクトごとに、1つ以上の任意選択の役割識別子も含み、
これらの役割識別子は、交信者またはエリアサーバ64によってオブジェクトに明示的に
割り当てられる場合もあり、オブジェクトの他の属性から推論される場合もある。また、
実施形態によっては、オブジェクトレジスタ182は、エリア・クライアント・ネットワ
ーク・ノード52〜56から受け取られるリアルタイムの動きデータ・ストリームの解析
からエリアサーバ64によって決定される仮想領域における各オブジェクトの現在位置も
含む。これに関して、エリアサーバ64は、エリア・クライアント・ノード52〜56か
らリアルタイムの動きデータ・ストリームを受け取り、動きデータに基づいて仮想領域に
おいて参入し、退出し、動き回る交信者のアバタおよび他のオブジェクトを追跡する。エ
リアサーバ64は、追跡されるオブジェクトの現在の場所に従ってオブジェクトレジスタ
182を更新する。
図8に示す実施形態において、エリア・クライアント・ネットワーク・ノード52は、
通信モジュール162、3次元可視化エンジン164、チャットエンジン165、および
オーディオ処理エンジン166を含む、通信アプリケーション142の一実施形態を含む
(図7参照)。その他のネットワークノード54、56はそれぞれ、通常、エリア・クラ
イアント・ネットワーク・ノード52に関連して説明したのと同じまたは同様の通信アプ
リケーション142の一実施形態を含む。
通信モジュール162は、エリア・クライアント・ネットワーク・ノード52と、その
他のエリア・クライアント・ネットワーク・ノード54、56およびエリアサーバ64の
間のリアルタイム・データ・ストリームの切換えを制御する。通信モジュール162は、
ストリーム切換えマネージャ168および帯域幅モニタ170を含む。ストリーム切換え
マネージャ168は、エリア・クライアント・ネットワーク・ノード52と関連付けられ
たアバタおよび他のオブジェクトの仮想領域への参入および仮想領域からの退出を処理す
る。またストリーム切換えマネージャ168は、エリア・クライアント・ネットワーク・
ノード52と、その他のエリア・クライアント・ネットワーク・ノード54、56および
エリアサーバ64の間でリアルタイム・データ・ストリームをどのようにして切り換える
(経路指定する、接続する、切断するなど)べきか、も自動的に決定する。ストリーム切
換えマネージャ168は、これらの決定を、仮想領域仕様に含まれる切換え規則、仮想領
域におけるアバタおよび他のオブジェクトの現在の場所、ならびに仮想領域内のアバタお
よび他のオブジェクトと関連付けられているリアルタイム・データ・ストリーム型に基づ
いて行う。また、実施形態によっては、ストリーム切換えマネージャ168は、これらの
決定に際して、エリア・クライアント・ネットワーク・ノード52、他のネットワークノ
ード54、56、またはエリアサーバ64のいずれかのアップロードおよびダウンロード
の帯域幅制約条件も考慮する。加えて、ストリーム切換えマネージャ168は、現在の接
続のセットを、イベント(アップロードまたはダウンロード帯域幅の障害や、仮想領域へ
の参入および仮想領域からの退出を求める要求など)に応答して、または周期的に、また
は、イベントに応答して、と、周期的に、の両方で再評価する。現在の接続の再評価の結
果として、ストリーム切換えマネージャ168は、例えば、エリアサーバ64からのスト
リームミックスを要求する、エリアサーバからのストリームミックスを削除する、その他
のエリア・クライアント・ネットワーク・ノード54、56の1つ以上との1つ以上の直
接リンクを切断する、またはその他のエリア・クライアント・ネットワーク・ノード54
、56の1つ以上との1つ以上の直接リンクを構成する、のいずれかの措置を講じる。
リアルタイム・データ・ストリーム接続の切換えを管理する過程において、ストリーム
切換えマネージャ168は、インターフェースデータ186、ゾーンリスト188、およ
び現在仮想領域内にあるオブジェクトの位置192を含む構成データセットを維持する。
インターフェースデータ186は、エリア・クライアント・ネットワーク・ノード52と
関連付けられた各オブジェクトごとに、そのオブジェクトと関連付けられているリアルタ
イム・データ・ストリーム型のすべてのソースおよびシンクの個々のリストを含む。ゾー
ンリスト188は、エリア・クライアント・ネットワーク・ノード52と関連付けられた
アバタによって現在占有されている仮想領域内のすべてのゾーンのレジスタである。交信
者が最初に仮想領域に参入するとき、ストリーム切換えマネージャ168は通常、現在オ
ブジェクト位置データベース192を、エリアサーバ64からダウンロードされる位置初
期設定情報で初期設定する。その後、ストリーム切換えマネージャ168は、現在のオブ
ジェクト位置データベース192を、例えば、コンピュータマウス171、エリア・クラ
イアント・ネットワーク・ノード54、56、およびエリアサーバ64の1つ以上などか
ら受け取られるリアルタイムの動きデータ・ストリームの解析から決定される仮想領域に
おけるオブジェクトの現在位置で更新する。実施形態によっては、オブジェクト位置19
2は、オブジェクトレジスタ190に組み込まれる。また、ストリーム切換えマネージャ
168によって維持される構成データは、オブジェクトレジスタ182、ストリーム・ミ
ックス・リスト184および仮想領域仕様180のそれぞれのコピー190、194、1
96も含む。これらのコピー190、194、196は通常、エリアサーバ64からダウ
ンロードされ、これらのデータのローカルキャッシュを表す。
3次元可視化エンジン164は、表示モニタ132上に、仮想領域と仮想領域内にある
任意のオブジェクトのビューを提示する。このプロセスにおいて、3次元可視化エンジン
164は、仮想領域仕様データ196、オブジェクトレジスタ190、および現在オブジ
ェクト位置データベース192を読み取る。また、実施形態によっては、3次元可視化エ
ンジン164は、仮想領域において交信者のアバタをレンダリングするのに必要な画像を
含む交信者アバタデータベース198も読み取る。この情報に基づき、3次元可視化エン
ジン164は、仮想領域における交信者のアバタの視点(位置と向き)からの仮想領域お
よび仮想領域内のオブジェクトの透視図表現(すなわち画像)を生成する。次いで3次元
可視化エンジン164は、仮想領域の透視図表現を表示モニタ132上にレンダリングす
る。実施形態によっては、3次元可視化エンジン164は、交信者のアバタの可視性を、
表示モニタ132上に見える仮想領域の部分に対してやり取りされ、処理され、レンダリ
ングされる必要のあるデータ量を制限するように決定する。
実施形態によっては、3次元可視化エンジン164はさらに、仮想領域の平面図表現を
生成するように動作可能である。これらの実施形態において、交信者は、3次元可視化エ
ンジン164に、仮想領域の透視図表現と仮想領域の平面図表現の一方または両方を表示
モニタ132上にレンダリングするように指図し得る。
交信者は、提示される仮想領域のビューまたは仮想領域内のアバタの位置を、入力装置
(コンピュータマウス171など)から通信モジュール162にコマンドを送信すること
によって制御することができる。3次元可視化エンジン164は、仮想領域のビューおよ
び仮想領域内のオブジェクトの位置を、現在オブジェクト位置データベース192内の更
新された位置に従って更新し、仮想領域のグラフィック表現の更新バージョンを表示モニ
タ132上にレンダリングし直す。3次元可視化エンジン164は、レンダリングされた
画像を、周期的に更新してもよく、仮想領域内のオブジェクトの1つ以上の動きに応答し
てのみ更新してもよい。
チャットエンジン165は、エリア・クライアント・ネットワーク・ノード52のロー
カルテキスト入力装置(キーボードなど)から受け取られる発信チャット(テキスト)メ
ッセージと、他のエリア・クライアント・ネットワーク・ノード54、56から受け取ら
れる着信チャットストリームのためのインターフェースを提供する。チャットエンジン1
65は、交信者によりテキスト入力装置を介して入力されるチャット(テキスト)メッセ
ージを、その他のネットワークノード54、56に送信することのできるリアルタイム・
チャット・ストリームに変換する。またチャットエンジン165は、着信チャットストリ
ームの、表示モニタ132上にレンダリングすることのできるテキスト信号への変換も行
う。
オーディオ処理エンジン166は、交信者のヘッドセット176内のスピーカ172、
174によってレンダリングされるオーディオ信号を生成し、ヘッドセット176内のマ
イクロホン178によって生成されるオーディオ信号を、その他のエリア・クライアント
・ネットワーク・ノード54、56に送ることのできるリアルタイム・オーディオ・スト
リームに変換する。
VI.リアルタイム・データ・ストリームの自動切換え
A.序論
前述のように、共用仮想領域は、仮想領域の形状要素、およびネットワークノード間の
リアルタイムストリーム接続を制御する1つ以上の切換え規則の記述を含む仕様によって
定義される。切換え規則は通常、仮想領域における位置によるリアルタイム・データ・ス
トリームのソースとシンクを接続する条件の記述を含む。各規則は通常、その規則が適用
されるリアルタイム・データ・ストリーム型を定義する属性と、その規則が適用される仮
想領域内の1つ以上の場所を含む。実施形態によっては、規則はそれぞれ、任意選択で、
必要とされるソースの役割、必要とされるシンクの役割、必要とされるストリームの優先
度レベル、および必要とされる、または好ましいストリームトポロジを規定する1つ以上
の属性を含み得る。
切換え規則は、仮想領域へのオブジェクトの参入、仮想領域内でのオブジェクトの移動
、および仮想領域からのオブジェクトの退出に際して関与する。
B.仮想領域への参入
図9に、エリアクライアント(この項では「参入エリアクライアント」という)が仮想
領域に参入するための方法の一実施形態を示す。
交信者が、エリア・クライアント・ネットワーク・ノード上で通信アプリケーション1
42(図7参照)を起動して通信セッションを開始する(図9、ブロック200)。通信
アプリケーション142は、交信者に、交信者がアプリケーション142と対話するため
のグラフィカル・ユーザ・インターフェースを提示する。グラフィカル・ユーザ・インタ
ーフェースは通常、交信者に、共用仮想領域にログインするための選択肢を与える。
共用仮想領域にログインするためのコマンドを受け取ったことに応答して、通信アプリ
ケーション142は、エリアサーバ64にログインメッセージを送る(図9、ブロック2
02)。ログインメッセージは通常、交信者を識別し、認証するためのログイン情報を含
む。
エリアサーバ64は、ログインメッセージに含まれるログイン情報を認証し(図9、ブ
ロック204)、エリアクライアントにその結果を通知する(図9、ブロック206)。
認証に成功した場合(図9、ブロック207)、通信アプリケーション142はエリア
サーバ64にインターフェースデータを送信する(図9、ブロック209)。インターフ
ェースデータは、その領域に参入しようとする各オブジェクトごとに、そのオブジェクト
と個々に関連付けられているすべてのリアルタイム・データ・ストリームのソース型およ
びシンク型の識別を含む。認証に失敗した場合(図9、ブロック207)、通信アプリケ
ーション142は、ログインセッションを停止し、交信者にログイン試行の失敗を通知す
る(図9、ブロック208)。
エリアサーバ64は、参入するエリアクライアントと関連付けられているオブジェクト
、ならびにこれらのオブジェクトと関連付けられているリアルタイム・データ・ストリー
ムのソース型およびシンク型を含めるようにオブジェクトレジスタ190(図8参照)を
更新する(図9、ブロック210)。エリアサーバ64は、参入するエリアクライアント
に構成データを送信する(図9、ブロック212)。構成データは、仮想領域仕様180
(図8参照)のコピー、および更新されたオブジェクトレジスタ182(図8参照)のコ
ピーを含む。実施形態によっては、構成データはさらに、ストリーム・ミックス・リスト
184(図8参照)のコピーも含み、ストリーム・ミックス・リスト184は、現在エリ
アサーバ64によって生成されているエリアクライアントのリアルタイム・データ・スト
リームの混合(または組み合わせ)を識別する。またエリアサーバ64は、更新されたオ
ブジェクトレジスタ182の個々のコピーを、仮想領域内のオブジェクトと関連付けられ
ている他のエリアクライアントにも送信する(図9、ブロック214)。前述のように、
エリアサーバ64は、エリア・クライアント・ノード52〜56からリアルタイムの動き
データ・ストリームを受け取り、動きデータに基づいて交信者のアバタおよび仮想領域に
出入りする他のオブジェクトを追跡し、追跡されるオブジェクトの現在の場所に従ってオ
ブジェクトレジスタ182を更新する。エリアサーバ64は、更新されたオブジェクトレ
ジスタ182を、仮想領域にあるオブジェクトと関連付けられているエリアクライアント
に周期的に送信する。
参入するエリア・クライアント・ネットワーク・ノード上で実行されている通信アプリ
ケーション142は、仮想領域仕様およびオブジェクトレジスタを、以下に詳細に説明す
るように処理する(図9、ブロック216)。次いで通信アプリケーション142は、参
入するエリア・クライアント・ネットワーク・ノードと、オブジェクトレジスタに記載さ
れているその他のエリアクライアントの1つ以上の間の1つ以上のリアルタイム・データ
・ストリーム接続を、仮想領域仕様で定義されている切換え規則と、受け取ったオブジェ
クトレジスタ182のコピーに記載されているオブジェクトと関連付けられている個々の
ソースおよびシンクと、仮想領域におけるオブジェクトの個々の位置とに基づいて確立す
る(図9、ブロック218)。これらの接続を確立するプロセスにおいて、通信アプリケ
ーション142は、参入するエリア・クライアント・ネットワーク・ノード上で利用可能
なそのリアルタイム・データ・ストリームの取込み、再生、ストリーミング、および変換
を可能にする構成モジュールを開始し、構成する。これらの構成要素には通常、チャット
エンジン165、オーディオ処理エンジン166、およびその他の構成要素(ローカル映
像取込み機器から受け取られる映像データを符号化し、リモート・ネットワーク・ノード
から受け取られるリアルタイム映像ストリームパケットを復号する映像処理エンジンなど
)を含む。
C.必要なリアルタイム・データ・ストリーム接続のセットを決定するための構成データ
の処理
図10は、必要なリアルタイム・データ・ストリーム接続のセットを決定するために、
ストリーム切換えマネージャ168(図8)の一実施形態が、図9の方法のブロック21
6でエリアサーバ64から受け取られる構成データを処理する際に従う方法の一実施形態
の流れ図である。前述のように、構成データは、仮想領域仕様180(図8参照)のコピ
ー、および更新されたオブジェクトレジスタ182(図8参照)のコピーを含む。実施形
態によっては、構成データはさらに、現在エリアサーバ64によって生成されているエリ
ア・クライアント・リアルタイム・データ・ストリームの混合(または組み合わせ)を識
別するストリーム・ミックス・リスト184(図8参照)を含む。
ストリーム切換えマネージャ168は、ローカル・オブジェクト・レジスタ190(図
8参照)を、エリアサーバ64から受け取られるオブジェクトレジスタ182のコピーで
初期設定する(図10、ブロック220)。また、ストリーム切換えマネージャ168は
、エリアサーバ64から受け取られるストリーム・ミックス・リスト184のコピーでロ
ーカル・ストリーム・ミックス・リスト194も初期設定する(図10、ブロック222
)。ストリーム切換えマネージャ168はさらに、エリアサーバ64から受け取られる仮
想領域仕様180のコピーでローカル仮想領域仕様キャッシュ196(図8参照)も初期
設定する(図10、ブロック224)。
ストリーム切換えマネージャ168は、仮想領域仕様196および仮想領域における交
信者のアバタの場所から、占有ゾーンのリスト188(図8参照)を構築する(図10、
ブロック226)。このプロセスにおいて、ストリーム切換えマネージャ168は、仮想
領域におけるアバタの現在位置の座標を含む現在オブジェクト位置データベース192か
ら仮想領域における交信者のアバタの現在位置を検索する。これらの座標は、コンピュー
タマウス171といった入力装置から受け取られるリアルタイムの動きデータ・ストリー
ムから決定される。次いでストリーム切換えマネージャ168は、交信者のアバタの現在
位置を仮想領域仕様196におけるゾーン定義と比較する。ストリーム切換えマネージャ
168は、交信者のアバタの現在位置と同一空間を占める仮想領域仕様内のすべてのゾー
ンから占有ゾーンのリスト188をまとめる。例えば、実施形態によっては、占有ゾーン
のリスト188は、そのメッシュが交信者のアバタの現在位置を含むすべてのゾーンから
なる。
ストリーム切換えマネージャ168は、占有ゾーンのリスト内の各ゾーンに定義される
目標リアルタイム・データ・ストリーム型のセットを決定する(図10、ブロック228
)。次いでストリーム切換えマネージャ168は、目標リアルタイム・データ・ストリー
ム型のセット、仮想領域におけるオブジェクトの位置、および仮想領域仕様で定義されて
いる切換え規則から、必要なリアルタイム・データ・ストリーム・データのセットを決定
する(図10、ブロック230)。
例示的実施形態の中には、ストリーム切換えマネージャ168が、1つ以上の切換え規
則によって、目標セット内のリアルタイム・データ・ストリーム型のそれぞれのソースで
あり、目標セット内のリアルタイム・データ・ストリーム型のそれぞれのシンクであると
定義されている各ゾーンの1つ以上に含まれる、所与のオブジェクトを除く各オブジェク
トのそれぞれを確認するものもある。ストリーム切換えマネージャ168は、確認された
オブジェクトに基づいて、接続可能なリアルタイム・データ・ストリームのセットを決定
する。接続可能なストリームはそれぞれ、(i)確認されたオブジェクトと関連付けられ
ているネットワークノードの1つ以上をソースとするものと、(ii)確認されたオブジ
ェクトと関連付けられているネットワークノードの1つ以上をシンクとするものの少なく
とも1つである。次いでストリーム切換えマネージャ168は、接続可能なリアルタイム
・データ・ストリームのセットと関連付けられているソースとシンクのマッチングに基づ
いて、必要なリアルタイム・データ・ストリーム・データのセットを決定する。
これらの実施形態の中には、必要なリアルタイム・データ・ストリーム・データのセッ
トが、切換え規則およびエリア・クライアント・ネットワーク・ノード上で利用可能なシ
ンクに従って交信者のアバタによって占有されるゾーンに供給することのできるリアルタ
イム・データ・ストリームに対応するものもある。これらの実施形態において、ストリー
ム切換えマネージャ168は、関連付けられたネットワークノードがシンクとすることの
できる占有ゾーンに定義されるシンクのそれぞれを決定し、次いで、仮想領域における他
のオブジェクトの位置、および切換え規則に基づいて、それらのシンクのすべてのソース
を決定する。このプロセスにおいて、ストリーム切換えマネージャ168は、交信者のア
バタと関連付けられる、交信者のアバタによって占有されているゾーンのいずれかのシン
ク型として定義されるすべてのリアルタイムシンク型(オーディオ、チャット、映像、動
きデータなど)から、目標リアルタイム・データ・ストリーム型のセットをまとめる。次
いでストリーム切換えマネージャ168は、切換え規則から、目標リアルタイム・データ
・ストリーム型がそれぞれそのソースとすることのできるすべての目標ソースゾーンを決
定する。ストリーム切換えマネージャ168は、オブジェクトレジスタ190および現在
オブジェクト位置データベース192から、切換え規則に従って、それらの現在位置を目
標リアルタイム・データ・ストリーム型の1つ以上のソースとすることのできる目標ソー
スゾーン内のすべてのオブジェクトを識別する。ストリーム切換えマネージャ168は、
オブジェクトレジスタ190内の識別されたオブジェクトと関連付けられる接続データか
ら、必要なリアルタイム・データ・ストリーム・データのセットをまとめる。
一説明例として、図11に、4つのアバタオブジェクトA、B、C、Dが読み込まれて
いるときの、仮想画廊領域100(図5、図6など参照)の平面図を示す。アバタAおよ
びアバタBはゾーン101に位置し、アバタCおよびアバタDはゾーン108に位置して
いる。この説明例では、以下のとおりであるものとする。
アバタA〜Dはそれぞれ、音声、映像、およびチャットの各ソース型および各シンク
型と関連付けられている。
ゾーン101の切換え規則は、
ゾーン101内のアバタと関連付けられている各音声ソースは、ゾーン101内の
あらゆる音声シンクに接続されるべきであり、
ゾーン101内のアバタと関連付けられている各映像ソースは、ゾーン101内の
あらゆる映像シンクに接続されるべきであり、
ゾーン101内のアバタと関連付けられている各チャットソースは、ゾーン101
内のあらゆるチャットシンクに接続されるべきである
と規定している。
ゾーン108の切換え規則は、ゾーン108内のアバタと関連付けられている各音声
ソースは、ゾーン108内のあらゆる音声シンクに接続されるべきであるとのみ規定して
いる。
ストリーム切換えマネージャ168は、ゾーン切換え規則に加えて、仮想領域におい
て相互に指定の距離(または半径)r以内にある個々のオブジェクトと関連付けられて
いる適合するシンクとソースの接続だけを許容する近接性ポリシ規則を実施する。
この例において、ゾーン切換え規則および近接性ポリシ規則は、アバタA、B、C、お
よびD間の接続をどのようにして確立するか決定する個々の切換え条件を提供する。
動作に際して、アバタAと関連付けられているエリア・クライアント・ノード上で動作
するストリーム切換えマネージャ168のインスタンスは、アバタBが、アバタAの周り
の、指定の距離rで定義される近接ゾーン232内に位置しているときはいつでも、ア
バタBと関連付けられているエリア・クライアント・ノードをソースとするリアルタイム
の音声、映像、およびチャットのストリームに接続されるよう要求するはずである。同様
に、アバタBと関連付けられているエリア・クライアント・ノード上で動作するストリー
ム切換えマネージャ168のインスタンスは、アバタAが、アバタBから指定の距離r
内に位置しているときはいつでも、アバタAと関連付けられているエリア・クライアント
・ノードをソースとするリアルタイムの音声、映像、およびチャットのストリームに接続
されるよう要求するはずである。アバタBは現在アバタAの近接ゾーン232の外部にあ
り、逆もまた同様であるため、アバタAおよびアバタBと関連付けられたノードは、図1
1に示す現在の例示的状態においては相互に接続されないはずである。
ゾーン108は音声接続だけを許容するため、アバタCと関連付けられているエリア・
クライアント・ノード上で動作するストリーム切換えマネージャ168のインスタンスは
、(近接性ポリシ規則で指定されている近接条件が満たされるものと仮定すると)アバタ
Dと関連付けられているエリア・クライアント・ノードをソースとするリアルタイム音声
ストリームだけに接続されるよう要求するはずである。同様に、アバタDと関連付けられ
ているエリア・クライアント・ノード上で動作するストリーム切換えマネージャ168の
インスタンスは、(近接性ポリシ規則で指定されている近接条件が満たされるものと仮定
すると)アバタCと関連付けられているエリア・クライアント・ノードをソースとするリ
アルタイム音声ストリームだけに接続されるよう要求するはずである。
ゾーン101およびゾーン108の切換え規則は、ゾーン101とゾーン108の間の
接続を許容しないため、アバタAおよびアバタBと関連付けられているソースおよびシン
クは、近接性ポリシ規則で指定されている近接条件が満たされる場合でさえも、アバタC
およびアバタDと関連付けられているソースおよびシンクのいずれにも接続されないはず
である。
実施形態によっては、エリアクライアント52〜56の少なくとも1つは、ネットワー
ク58への接続を可能にし、さらに、図10の方法を実行するのに必要な機能を含むエリ
ア・クライアント・ストリーム切換えマネージャ168の機能の1つ以上を果たすように
構成されているネットワークアダプタ(イーサネット(登録商標)・インターフェース・
カードなど)を含む。
D.リアルタイム・データ・ストリーム接続の確立
1.必要なリアルタイム・データ・ストリーム接続の決定
例示的実施形態の中には、ネットワークノード52が共用仮想領域内の他のネットワー
クノードとの協調的通信セッションに参加するのを可能にするリアルタイム・データ・ス
トリーム・データのセットをストリーム切換えマネージャ168が決定した(図10、ブ
ロック230)後で、ストリーム切換えマネージャ168が、エリア・クライアント・ネ
ットワーク・ノード52への必要なデータ・ストリーム・データの配信を行わせる結果を
生じるリアルタイム・データ・ストリーム接続を決定するものもある。
これらの実施形態の中には、ストリーム切換えマネージャ168が、所与のネットワー
クノードの帯域幅能力に少なくとも部分的に基づいて、所与のネットワークノードにリア
ルタイム・データ・ストリームのセットを配信するリアルタイム・データ・ストリーム処
理トポロジを決定するものもある。このプロセスにおいて、ストリーム切換えマネージャ
168は、非混合リアルタイム・データ・ストリームと、リアルタイム・データ・ストリ
ームの組み合わせから得られるストリームミックスとからリアルタイム・データ・ストリ
ームのそれぞれを受け取るべき個々の形を決定する。また、ストリーム切換えマネージャ
168は、直接ピア・ツー・ピア・ネットワーク経路と、その他のネットワークノードの
1つ以上によって仲介されるネットワーク経路からリアルタイムストリームのそれぞれを
受け取るためのネットワーク経路も決定する。ストリーム処理トポロジが決定された後で
、ストリーム切換えマネージャ168は、決定されたストリーム処理トポロジに従って、
所与のネットワークノードと他のネットワークノードのそれぞれの間のリアルタイム・デ
ータ・ストリーム接続を確立する。
図12に、必要なデータ・ストリーム・データをエリア・クライアント・ネットワーク
・ノードに配信するリアルタイム・データ・ストリーム接続のトポロジを決定する方法の
一実施形態を示す。
この方法によれば、ストリーム切換えマネージャ168は、エリア・クライアント・ネ
ットワーク・ノード52が、その他のエリア・クライアント・ネットワーク・ノードから
直接、必要なリアルタイム・データ・ストリーム・データのセット240を受け取るのに
十分な帯域幅を有するかどうか判定する(図12、ブロック242)。このプロセスにお
いて、その他のエリア・クライアント・ネットワーク・ノードは、エリア・クライアント
・ネットワーク・ノード52にリンク要求を送信する。リンク要求は、エリア・クライア
ント・ネットワーク・ノード52に必要とされる個々のリアルタイム・データ・ストリー
ムのセットを送信するための個々の帯域幅要件を表示する(以下の第V.D.2項参照)
。ストリーム切換えマネージャ168は、必要な直接接続を確立するのに必要とされる全
体帯域幅を、帯域幅モニタ170(図8参照)によって現在エリア・クライアント・ネッ
トワーク・ノード52が利用可能であると報告されているダウンロード帯域幅と比較する
利用可能な帯域幅が、少なくとも、全体の必要帯域幅と等しい場合、ストリーム切換え
マネージャ168は、必要なリアルタイム・データ・ストリーム・データを提供するその
他のエリア・クライアント・ノードと直接接続を確立する(図12、ブロック244)。
このプロセスにおいて、通信アプリケーション142およびこれに関連付けられる実行時
環境は、エリア・クライアント・ネットワーク・ノード52と、その他のエリア・クライ
アント・ネットワーク・ノード54、56の1つ以上およびエリアサーバ64の間に、ソ
ケット(TCPソケットや、性能を向上させるように最適化された専用リアルタイムソケ
ットなど)を作成する。作成されるソケットは通常、各リアルタイム・データ・ストリー
ム型ごとに、リアルタイム・データ・ストリームを搬送する1ソケットと、関連付けられ
るリアルタイム・データ・ストリーム・パケットの送受信と関連付けられている制御情報
(サービス品質情報など)を搬送する1ソケットを含む。通信アプリケーション142は
、リアルタイム・データ・ストリームの記録、およびクライアント・ユーザ・インターフ
ェースへのこれらのレンダリングを含めて、リアルタイム・データ・ストリームを処理し
、符号化する。例えば、ローカルで生成されるオーディオデータ、映像データ、およびチ
ャットデータは通常、取り込まれ、符号化され、パケット(RTPパケットなど)に分割
されて、ネットワーク58に送出される。
利用可能な帯域幅が必要な帯域幅より小さい場合(図12、ブロック242)、ストリ
ーム切換えマネージャ168は、ストリーム・ミックス・リスト194(図8参照)をチ
ェックして、必要なリアルタイム・データ・ストリーム・データを提供するストリームミ
ックスが、現在エリアサーバ64によって生成されているかどうか判定する(図12、ブ
ロック246)。必要なストリームミックスが利用できる場合、ストリーム切換えマネー
ジャ168は、エリアサーバ64との、エリアサーバ64からエリア・クライアント・ネ
ットワーク・ノード52に必要なリアルタイム・データ・ストリーム・ミックスのコピー
を送信するための接続を確立する(図12、ブロック248)。必要なストリームミック
スが利用できない場合、ストリーム切換えマネージャ168は、エリアサーバ64にスト
リームミックス要求を送る(図12、ブロック250).
実施形態によっては、エリアサーバ64は、エリアクライアントのストリーム切換えマ
ネージャ168の機能の1つ以上を果たす。これらの実施形態において、エリアサーバ6
4は、ネットワークノード52〜54の間に1つ以上のリアルタイム・データ・ストリー
ム接続を確立し、その場合ネットワークノード52〜56は、リアルタイム・データ・ス
トリーム型の1つ以上のソースおよびシンクの少なくとも1つとそれぞれが関連付けられ
ている個々のオブジェクトと関連付けられている。エリアサーバ64は、それら1つ以上
のリアルタイム・データ・ストリーム接続を、図10および図12の方法の一方または両
方に従い、1つ以上の切換え規則、オブジェクトと関連付けられた個々のソースおよびシ
ンク、ならびに仮想領域におけるオブジェクトの個々の位置に基づいて確立する。
2.リアルタイム・データ・ストリーム接続
a.序論
実施形態によっては、ネットワークノード間の接続は、リンクとチャネルの2層におい
て確立される。
あるノードから別のノードまで直接送信するための少なくとも1つのストリームがある
ときにはいつでも、2つのネットワークノード間でリンクが確立される。リンクは通常、
一方向であり、送信側によって要求され、受信側によって受け入れられ、または拒否され
る。拒否された場合でも、エリアサーバとの(それぞれ)上りと下りのリンクを介して通
信が可能な場合もある(本明細書で示すように、混合され、または送受信される)。各リ
ンクは、リアルタイム通信のために2つのノードによって割り振られる全帯域幅を表す。
この割振りは、利用可能な全体のネットワーク帯域幅、その時々に望ましい帯域幅の品質
、およびリンク数に基づいて動的に決定される。リンクの追加および削除は、進行する動
的プロセスである。複合領域内の、すなわち領域から領域への移動は、リンクの接続およ
び切断が、進行中のシステム挙動において重要な役割を果たす例である。
各リンクは、個々のリアルタイム・データ・ストリームを搬送するチャネルに分割され
る。チャネルは、各リンクに割り振られている全体帯域幅内の個々のストリームに割り振
られる。チャネル帯域幅は、全体リンク帯域幅、ならびにリンク内のチャネルの数および
優先度の変化に基づいて動的に変更することができる。チャネルの活動化および非活動化
は、ネットワークノードのリンク層によって2つのノード間の所望の帯域幅を変更するの
に使用され得る情報を提供する。またこの情報は、リンクに割り振られる帯域幅のレベル
を設定するためにノード間で共用されてもよい。
これらの実施形態によって提供される接続フレームワークは、送信側と受信側のネット
ワークノードが、2つのノード間でその時々に必要とされるストリームセットに利用可能
な帯域幅を、各ノードごとのすべてのリンクの間の帯域幅の要件との関連でどのように使
用すべきか動的に決定することを可能にする。音声チャネルのビット伝送速度を低減また
は増大させる一方で、同時に行われるファイル転送または映像フィードのために確保され
る帯域幅の量を増大または減少させるというのが、この割振り決定プロセスの例である。
またこの接続フレームワークは、受信側ネットワークノードが、サーバミックスか、それ
とも個別ストリーム伝送かを、リンク内の利用可能な帯域幅に基づいて決定することも可
能にする。
システム設定は、仮想領域仕様によって任意選択で変更され、リンクおよびチャネルの
相対的帯域幅割振り、ならびにストリーム型およびトポロジの優先度を決定するためのパ
ラメータを提供する。これらの可変的、動的要件のために、ネットワークノードとエリア
サーバ(または他の高帯域幅中間ノード)の間の上りおよび下りリンクは通常、ローカル
帯域幅に高い優先度を有する。というのは、これらのリンクは、様々なノード間でリンク
およびチャネルを送信するのに必要とされ得るからである。仮想領域設計者は、所与のノ
ードにおけるリンク、チャネルまたはリンクとチャネル両方の帯域幅制限を理由として、
そのノードによって実行することのできない仮想領域を作成することも可能である。
帯域幅は、多くの場合、(CPU時間、ハードディスク空間、グラフィックレンダリン
グ能力などと比較して)乏しいリソースである。ノード接続をリンクおよびリンク内のチ
ャネルに階層化することにより、仮想領域設計者、ならびにシステム管理者は、帯域幅が
飽和状態にあるときに、1つ以上のリアルタイムセッションに関与する任意の所与のノー
ドがどのように応答するか制御することが可能になる。階層化により、個々のリンクを、
最小と最大の帯域幅のために能動的に管理することが可能になる。また階層化により、(
エリアサーバを介して接続を要求するのに比べて)どのノードがリンクを受信するかの選
択を制御することも可能になる。
一説明例において、第1のネットワークノードと第2のネットワークノードが共用仮想
領域を介して通信するものと仮定する。第1のノードと第2のノードはそれぞれ、他方に
音声ストリームおよび動きデータ・ストリームを要求する。この必要を満たすために、第
1のノードと第2のノードはそれぞれ、エリアサーバと個々の上りリンクを確立し、この
リンクは、音声チャネルと動きデータチャネルに分割される。エリアサーバは、第1のネ
ットワークノードおよび第2のネットワークノードから受け取る音声ストリームを送受信
し、第1のネットワークノードおよび第2のネットワークノードから受け取る動きデータ
・ストリームを混合する。エリアサーバは、第1のネットワークノードおよび第2のネッ
トワークノードと個々の下りリンクを確立し、個々の下りリンクにおいて割り振られた音
声チャネルおよび動きデータチャネルで音声ストリームおよび動きデータ・ストリームを
送信する。第1のノードおよび第2のノードは、接続されている間、ファイル転送を行っ
てもよく、その場合ファイル転送は、リンク内で新しいチャネルを必要とするはずである
。妥当なデータ転送速度では十分な帯域幅を利用できない場合、送信側は、そのビット伝
送速度をより低品質の音声通話用のものに落とし、エリアサーバリンクを介してファイル
転送ストリームを送受信することもでき、あるいは、第1のネットワークノードおよび第
2のネットワークノードの個々のシステム設定における論理、または仮想領域仕様によっ
て指定される挙動に従ってチャネルおよびリンクを調整することもできる。
第3のネットワークノードがこの仮想領域への参入を要求する場合、第1のネットワー
クノードと第2のネットワークノードはそれぞれ、第3のネットワークノードからの音声
ストリームおよび動きデータ・ストリームを必要として、第3のネットワークノードは、
帯域幅が許容する、第1のネットワークノードと第2のネットワークノードのそれぞれか
らの音声ストリームおよび動きデータ・ストリームを必要とすることになる。第3のネッ
トワークノードから直接必要なストリームを受け取るための最小限の帯域幅が利用できな
い場合、第1のネットワークノードおよび第2のネットワークノードは、エリアサーバま
での上りリンク帯域幅、サーバからの下りリンク帯域幅、またはこれら両方を増大させる
。あるいは、第1のネットワークノードおよび第2のネットワークノードは、1つ以上の
サーバミックスを必要とすることになる。それでもなお仮想領域仕様によって必要とされ
るすべての接続を行うのに十分な帯域幅が生じない場合には、第3のネットワークノード
はこの仮想領域への参入を阻止され、または第1のノードと第2のノードの一方もしくは
両方が、リアルタイムセッションから削除されることもあり、その場合、削除されたネッ
トワークノードは、再試行し、またはより高速なネットワーク接続によって接続すること
が必要になる場合もある。
その後、第3のネットワークノードが仮想領域を退出するとき、第1、第2および第3
のネットワークノードはそれぞれ、第1のネットワークノードとの接続に割り振られたリ
ンクおよび帯域幅を切断し、解放する必要があり、このため、第1のネットワークノード
と第2のネットワークノードにより、利用可能な帯域幅のこれらの間のリンクへの再割り
振りが行われる場合もある。
実施形態によっては、第1のネットワークノードおよび第2のネットワークノードは、
帯域幅を第3のネットワークノードに割り振る前に、相互に確立している各リンクに優先
度を付けることができる。実施形態によっては、仮想領域仕様の切換え規則が各接続に優
先度を付ける。例えば、仮想領域設計によっては、ある特定の役割特性(仲介者など)と
関連付けられたネットワークノードが、他のネットワークノードより高い接続優先度を有
し、したがって、常に仮想領域にリンクすることができる。他の仮想領域設計では、各接
続が個々の接続の経過時間によってランク付けされ、より古い接続がより新しい接続より
高くランク付けされる場合もある。これらの仮想領域では、最も古い接続と関連付けられ
たノードが、通信セッションから最後に削除されることになる。
b.リンクの作成
図13に、前項で説明した種類のリンクによってリンクが確立される、仮想領域を共用
するネットワークノード間でリアルタイム・データ・ストリーム接続を切り換える方法の
例示的実施形態を示す。図13の方法は通常、仮想領域を共用する他のネットワークノー
ドによって必要とされるリアルタイム・データ・ストリームの1つ以上のソースであるネ
ットワークノードのそれぞれのストリーム切換えマネージャ168によって行われる。
1つ以上の受信側ネットワークノードのそれぞれについて、ストリーム切換えマネージ
ャ168は、1つ以上のリアルタイム・データ・ストリームの個々の送信セットを送信す
るための、それぞれが個々のリンク帯域幅を有する個々のリンクを決定する(図13、ブ
ロック440)。各リンクは通常、送信側ネットワークノードの個々の1つから受信側ネ
ットワークノードの個々の1つまでの個々の一方向リンクである。しかし、実施形態によ
っては、各リンクの1つ以上を、双方向(半二重や全二重などの)リンクとすることもで
きる。
各リンクごとに、ストリーム切換えマネージャ168は、個々の送信セット内の1つ以
上のリアルタイム・データ・ストリームに個々に割り振られた1つ以上のチャネル間で個
々のリンク帯域幅を配分し、個々の送信セット内の1つ以上のリアルタイム・データ・ス
トリームを、個々に割り振られたチャネルを介して個々の受信側ネットワークノードに送
信する(図13、ブロック442)。実施形態によっては、ストリーム切換えマネージャ
168は、個々の帯域幅を、個々の受信側ネットワークノードと関連付けられている少な
くとも1つの属性に基づいて決定された量で割り振る。この属性は、受信側ネットワーク
ノードと関連付けられたアバタによって占有される仮想領域内の位置、受信側ネットワー
クノードと関連付けられたリンク優先度レベル、受信側ネットワークノードと関連付けら
れたアバタに割り当てられた役割識別子という属性例のいずれかに対応し得る。実施形態
によっては、個々のリンク帯域幅の配分は、個々の送信セット内の1つ以上のリアルタイ
ム・データ・ストリームと個々に関連付けられた1つ以上のストリーム優先度レベルに基
づくものである。
実施形態によっては、各リンクごとに、ストリーム切換えマネージャ168は、個々の
送信セット内の1つ以上のリアルタイム・データ・ストリームのそれぞれについて、1つ
以上の個々の帯域幅レベルを確認し、確認された帯域幅レベルに基づいてリンクに個々の
帯域幅を割り振る。実施形態によっては、ストリーム切換えマネージャ168は、これら
の帯域幅レベルを、送信側ネットワークノードのシステムレベル設定をチェックし、仮想
領域仕様に、共用仮想領域の各ゾーンのいずれかに含まれる任意のストリーム型に割り当
てられる帯域幅レベルがあるかどうかチェックすることによって確認する。各リアルタイ
ム・データ・ストリーム型は通常、少なくとも1つのシステムレベルの帯域幅レベルと関
連付けられている。例えば、エリア・クライアント・ネットワーク・ノードはそれぞれ、
通常、音声ストリームのための異なる圧縮レベルを提供する音声コーデック、および映像
ストリームのための異なる圧縮レベルを提供する映像コーデックを含む。これらのコーデ
ックはそれぞれ、通常は、デフォルトの低(好ましい、または目標の)圧縮レベルから高
圧縮レベルまでの個々の圧縮レベル範囲を提供するように設定され得る。仮想領域仕様は
、1つ以上のリアルタイム・データ・ストリーム型のそれぞれについて1つ以上の領域特
有の帯域幅レベルを指定し得る。これらのレベルには、好ましい帯域幅レベル、最小帯域
幅レベル、および好ましい帯域幅レベルと最小帯域幅レベルの間の1つ以上の帯域幅レベ
ルが含まれ得る。
実施形態によっては、各リンクごとに、ストリーム切換えマネージャ168は、個々の
送信セット内のリアルタイム・データ・ストリームのそれぞれについての個々の最小帯域
幅レベルを識別し、1つ以上の識別された個々の最小帯域幅レベルから個々の最小リンク
帯域幅レベルを計算する。ストリーム切換えマネージャ168は通常、リンクが利用でき
る帯域幅が、定義される期間にわたって個々の最小リンク帯域幅レベルに適応することが
できないという判定に応答して、リンクのいずれかを削除する。
実施形態によっては、各リンクごとに、ストリーム切換えマネージャ168は、個々の
送信セット内のリアルタイム・データ・ストリームの1つ以上のそれぞれについて、個々
の第1の好ましい帯域幅レベル(デフォルトの帯域幅レベルなど)から個々の第2の好ま
しい帯域幅レベル(最小帯域幅レベルなど)まで順序付けされた個々の優先階層における
少なくとも2つの個々の帯域幅レベルを識別する。ストリーム切換えマネージャ168は
、識別された第1の好ましい帯域幅レベルに少なくとも部分的に基づいて個々の目標リン
ク帯域幅レベルを計算し、識別された第2の好ましい帯域幅レベルに少なくとも部分的に
基づいて個々のフォールバックリンク帯域幅レベルを計算する。受信側ネットワークノー
ドのそれぞれについて、ストリーム切換えマネージャ168は、目標リンク帯域幅レベル
での受信側ネットワークノードへの個々のリンクを確立しようと試みる。このプロセスに
おいて、ストリーム切換えマネージャ168は、目標リンク帯域幅レベルを、個々の送信
セットを送信するのに利用可能な現在の帯域幅の量と比較する。また受信側ネットワーク
ノードも、目標リンク帯域幅レベルを、個々の送信セットを受信するのに利用可能な現在
の帯域幅の量と比較する。目標リンク帯域幅レベルで受信側ネットワークノードまでの個
々のリンクを確立するのに失敗したことに応答して、ストリーム切換えマネージャ168
は、受信側ネットワークノードまでの個々のリンクを、フォールバックリンク帯域幅レベ
ルで確立しようと試みる。
図14に、前項で説明した各実施形態の例示的実施方法を示す。この実施形態によれば
、ストリーム切換えマネージャ168は、各リンク(図14、ブロック444)ごとに、
現在の個々の候補リンク帯域幅レベルと、1つ以上の任意選択の個々のフォールバック候
補リンク帯域幅レベルとを決定する(図14、ブロック446)。ストリーム切換えマネ
ージャ168は、現在のリンクを、現在の個々の候補リンク帯域幅レベルで確立しようと
試みる(図14、ブロック448)。リンクが確立された場合(図14、ブロック450
)、ストリーム切換えマネージャ168は、次のリンクを処理する(図14、ブロック4
44)。そうでない場合、ストリーム切換えマネージャ168は、現在のリンクに利用可
能な他の候補リンク帯域幅レベルがあるかどうか判定する(図14、ブロック452)。
利用可能な他の候補リンク帯域幅レベルがある場合、ストリーム切換えマネージャ168
は、現在の個々の候補リンク帯域幅レベルを次のより低リンク帯域幅レベルに変更し(図
14、ブロック454)、現在のリンクをその新しい候補リンク帯域幅レベルで確立しよ
うと試みる(図14、ブロック448)。次の候補リンク帯域幅レベルがない場合(図1
4、ブロック452)、ストリーム切換えマネージャ168は、現在のリンクについてエ
ラーを報告し、このプロセスを次のリンクのために繰り返す(図14、ブロック444)
リンクのいずれかを確立するのに失敗したことに応答して、それらのリンクが宛先指定
された相手側の受信側ネットワークノードは、既存の帯域幅制約条件に適応しようとして
、送信データセット内の少なくとも1つの任意選択のリアルタイム・データ・ストリーム
を削除しようと試みることができる。あるいは、そのような受信側ネットワークノードは
、その他のネットワークノードの1つ以上によって仲介される個々のネットワーク経路を
介して必要なリアルタイム・データ・ストリーム・データを提供するリンクを確立しよう
と試みることもできる。例えば、受信側ネットワークノードは、必要なリアルタイム・デ
ータ・ストリーム・データを非混合形式または混合形式で提供するエリアサーバ64にリ
ンクを要求する。
実施形態によっては、リンクがセキュリティ保護される。セキュアなリンクは、認証、
完全性および秘密保持というセキュリティ特性のうちの1つ以上を備え得る。認証リンク
は、(ベリサイン(Verisign)によって提供されるものなど、公開鍵インフラス
トラクチャの一部として配信される証明書を評価するといった)認証技法を使用して、各
ノードが、詐称ノードではなく、既知の他のノードに実際に接続していることを保証する
ことができる。(SHAアルゴリズムと関連付けられたセキュアなハッシュ法プロセスを
使用するといった)完全性の技法は、送信と受信の間にリンクコンテンツに加えられた変
更が検出されるよう保証するのに使用される。(送信前にAES暗号化アルゴリズムを用
いてリンクコンテンツを暗号化し、共有鍵に基づいて使用前にリンクコンテンツを暗号解
読するといった)秘密保持の技法は、リンクのコンテンツが、盗聴者によって容易に理解
されないようにするのに役立つ。これらの技法は、個々の通信セッションのための所望の
セキュリティ特性を達成するように選択的に組み合わされてもよい。セキュアなリンクが
用いられるとき、システム設定およびアプリケーション設計パラメータは、セキュアなリ
ンクを確立することに伴う追加オーバーヘッドに対応するように調整され得る。例えばリ
ンクは、帯域幅が利用可能になった場合にそのリンクを再確立する必要が生じないように
、より長時間にわたって低い帯域幅で(0帯域幅にさえも)保持される。
c.拡張リンク管理機能を有する例示的実施形態
第V.D.2項で説明しているストリーム切換えマネージャ168の拡張リンク管理機
能は、ディジタル電子回路(ディジタル信号プロセッサ(DSP)といった特定用途向け
集積回路など)や、コンピュータハードウェア、ファームウェア、デバイスドライバ、ま
たはソフトウェアを含む、任意のコンピューティングまたはデータ処理環境において実施
され得る。実施形態によっては、これらの機能は、ネットワークアダプタやネットワーク
スイッチといった専用ハードウェアモジュールとして実施される。そのようなモジュール
の実施形態は、リンク作成、リンク経路指定、所与のネットワークノードから送信される
複数のリンク間での帯域幅割振り、および所与のリンク内のチャネル間の帯域幅の管理と
いう各拡張リンク管理機能のいずれかの加速された性能を提供するように構成され得る。
図15に、拡張リンク管理機能を備えるネットワークアダプタ462が動作し得る例示
的適用環境460を示す。ネットワークアダプタ462は、ホストシステム464内に組
み込まれ、ホストシステム464は、通信コントローラ466と、媒体アクセス制御(M
AC)インターフェース468とを含む。ネットワークアダプタ462は、ホストシステ
ム464とネットワーク媒体470との間で送信を行う。ネットワーク媒体470は、ホ
ストシステム464から1つ以上の他のネットワークノード472までのリンクを確立す
るための物理媒体である。電線、ファイバ、および自由空間における電磁波がネットワー
ク媒体の種類の3つの例である。
ホストシステム464およびその他のネットワークノード472はそれぞれ、ネットワ
ークに接続する任意の種類の機器またはシステム(パーソナルコンピュータ、コンピュー
タワークステーション、ネットワークスイッチ、ネットワークハブ、ネットワークリピー
タなど)とすることができる。ホスト通信コントローラ466は、ホストシステム464
がネットワーク媒体470へのアクセスを共用することを可能にする。MACインターフ
ェース468は、通信コントローラ466をネットワークアダプタ462に接続する。M
ACインターフェースの種類の一例が、パラレル通信コントローラ466との通信をサポ
ートするパラレルインターフェースを提供するメディア独立インターフェース(MII)
である。MACインターフェースの種類の別の例が、シリアル通信コントローラ466と
のシリアル通信をサポートするIEEE802.03準拠の汎用シリアルインターフェー
ス(GPSI)である。
図16に、ホスト・インターフェース・ポート474、ネットワーク媒体インターフェ
ースポート476、処理装置478、送受信機480、およびメモリ482を含むネット
ワークアダプタ462の一実施形態を示す。ホスト・インターフェース・ポート474は
、MACインターフェース468に接続することができる。ネットワーク媒体インターフ
ェースポート476は、ネットワーク媒体470に接続することができる。図示の実施形
態では、ネットワーク媒体インターフェースポート476は、送受信機480とネットワ
ーク媒体470の間の物理インターフェースを提供する。
処理装置478は通常、ホストシステム464および1つ以上の他のネットワークノー
ド472が正しいフレーム形式およびプロトコルを用いて通信するよう保証すること(た
だし必ずしもこれに限定されない)を含むMAC層機能を果たすMAC処理装置である。
加えて、処理装置478は、第V.D.2項で説明されているリンクおよびチャネル管理
機能を果たすように動作可能である。これらの機能を果たすのに役立つように、処理装置
478は、メモリ482に、仮想領域仕様のコピー484、リンク表486、およびチャ
ネル表488を記憶する。本明細書で説明しているように、仮想領域仕様484は、リン
クおよびチャネルの管理に影響を及ぼす、ストリーム型ごとの好ましい、最小、および中
間の各帯域幅レベル、ストリーム型優先度、ストリーム処理トポロジ優先度、ならびに仮
想領域を共用する各ネットワークノードと関連付けられているオブジェクト(アバタなど
)に割り当てられた役割識別子というパラメータ値のいずれかを含み得る。リンク表48
6は、その他のネットワークノード472との間で確立されている現在のリンク、および
現在のリンク間での帯域幅の割振りのリストを含む。チャネル表488は、現在のリンク
のそれぞれについて、リンクを介して送信されるリアルタイム・データ・ストリームに割
り振られている個々のチャネル、およびそのリンク内の個々のチャネル間での帯域幅の割
振りのリストを含む。
3.リアルタイム・データ・ストリーム接続の管理
図17に、必要なデータ・ストリーム・データをエリア・クライアント・ネットワーク
・ノードに配信するリアルタイム・データ・ストリーム接続を決定する方法の一実施形態
を示す。このプロセスにおいて、エリアサーバ64は、必要なリアルタイム・データ・ス
トリーム・データをエリア・クライアント・ネットワーク・ノード52に提供する最適な
ストリーム処理トポロジを決定する。
エリアサーバ64は、現在のストリーム処理トポロジに従って、エリア・クライアント
・ネットワーク・ノード間の接続を管理する(図17、ブロック251)。これに関して
、エリアサーバ64は、仮想領域の定義を含むグローバル状態データと、仮想領域内のす
べてのアバタおよびその他のオブジェクトの現在のオブジェクト状態データとを管理する
。このプロセスにおいて、エリアサーバ64は、仮想領域内のオブジェクトを追跡し、実
施形態によっては、エリアサーバ64は、エリア・クライアント・ネットワーク・ノード
のリアルタイム同期に使用される最新履歴データキャッシュを保持する。またエリアサー
バ64は、仮想領域へのオブジェクトの参入、仮想領域からのオブジェクトの退出、およ
び帯域幅障害に応答した接続の再評価も行う。
要求側エリア・クライアント・ネットワーク・ノードからリアルタイム・データ・スト
リーム・データを求める要求を受け取った(図17、ブロック252)ことに応答して、
エリアサーバ64は、オブジェクトレジスタ190(図8参照)内のオブジェクトと関連
付けられているエリア・クライアント・ネットワーク・ノードの帯域幅能力を見出す(図
17、ブロック254)。実施形態によっては、エリア・クライアント・ネットワーク・
ノードはそれぞれ、エリアサーバ64に、その現在のアップロード帯域幅容量およびその
現在のダウンロード帯域幅容量を、動的に、または周期的に送信する。
エリアサーバ64は、要求側エリア・クライアント・ネットワーク・ノードに、リアル
タイム・データ・ストリーム・データを配信するリアルタイム・データ・ストリーム処理
トポロジを選択する(図17、ブロック256)。エリアサーバ64は通常、エリア・ク
ライアント・ネットワーク・ノードの見出された帯域幅能力に基づいてトポロジを選択す
る。実施形態によっては、エリアサーバ64は、要求側ネットワークノードおよびその他
のネットワークノードが最大数の非混合リアルタイム・データ・ストリームを受け取るス
トリーム処理トポロジを選択する。そのような非混合リアルタイム・データ・ストリーム
は、エリア・クライアント・ネットワーク・ノードがストリームを、より高品質で、より
深い没入体験または特定の用途目的(5.1オーディオ処理や特殊なアバタの動きなど)
を実現するためのローカル処理(アバタをステレオ音場空間によりリアルに配置するため
のオーディオ・ステレオ・パン処理またはフェーダエンベロープ処理の一方または両方な
ど)を各ストリームに適用することもできるようにレンダリングすることを可能にする。
実施形態によっては、仮想領域仕様は、仮想領域の1つ以上のゾーン内の1つ以上のリ
アルタイム・データ・ストリーム型のストリーム属性値を指定する。これらの実施形態に
おいて、エリアサーバ64は、仮想領域仕様で指定される1つ以上のストリーム属性値に
基づいてストリーム処理トポロジを選択する。例示的仮想領域設計の中には、仮想領域仕
様が、第1のリアルタイム・データ・ストリーム型に第1のストリーム優先度属性値を割
り当て、第2のリアルタイム・データ・ストリーム型に、第1のストリーム優先度属性値
とは異なる第2のストリーム優先度属性値を割り当てるものもある。例えば、前述の第2
のCOLLADAストリーム参照の例では、StageZoneをソースとする、「le
ad_singer」役割属性と関連付けられた音声ストリームに優先度レベル1が割り
当てられ、他方AudienceZoneをソースとする音声ストリームは、優先度レベ
ル2と関連付けられている。これらの種類の仮想領域設計仕様に関して、エリアサーバ6
4は、異なる第1のストリーム優先度属性値と第2のストリーム優先度属性値とに従って
、第1のリアルタイム・データ・ストリーム型と第2のリアルタイム・データ・ストリー
ム型とに異なる優先度を付けるストリーム処理トポロジを選択しようと試みる。例えば、
帯域幅利用制約に遭遇する第2のCOLLADAストリーム参照の例に関しては、エリア
サーバ64は、StageZoneをソースとするlead_singer音声ストリー
ムのストリームミックスを作成し、送信する前に、AudienceZoneをソースと
する音声ストリームのストリームミックスを作成し、送信するはずである。
例示的領域設計の中には、仮想領域仕様が、第1のリアルタイム・データ・ストリーム
型に第1のストリームトポロジ属性値を割り当て、第2のリアルタイム・データ・ストリ
ーム型に、第1のストリームトポロジ属性値とは異なる第2のストリームトポロジ属性値
を割り当てるものもある。例えば、前述の第2のCOLLADAストリーム参照の例では
、StageZoneをソースとし、lead_singer役割属性と関連付けられて
いる音声ストリームに、「direct(直接)」というトポロジ属性値が割り当てられ
、他方AudienceZoneをソースとするチャットストリームは、「server
_mix(サーバミックス)」というトポロジ属性値と関連付けられている。これらの種
類の仮想領域設計仕様に関して、エリアサーバ64は、異なる第1のストリームトポロジ
属性値と第2のストリームトポロジ属性値とに従って、第1のリアルタイム・データ・ス
トリーム型と第2のリアルタイム・データ・ストリーム型とに異なるストリーム処理トポ
ロジを選択しようと試みる。例えば、場合によっては、エリアサーバ64は、第1のリア
ルタイム・データ・ストリーム型については、所与のネットワークノードおよびその他の
ネットワークノードの1つ以上に、混合ストリーム形式で第1の型のリアルタイム・デー
タ・ストリームのそれぞれを配信するストリーム処理トポロジ(第2のCOLLADAス
トリーム参照の例におけるAudienceZoneをソースとするチャットストリーム
など)を選択し、第2のリアルタイム・データ・ストリーム型については、所与のネット
ワークノードおよびその他のネットワークノードの1つ以上に、非混合ストリーム形式で
第2の型のリアルタイム・データ・ストリームを配信するストリーム処理トポロジ(第2
のCOLLADAストリーム参照の例における、StageZoneをソースとし、le
ad−singer役割属性と関連付けられた音声ストリームなど)を選択する。
エリアサーバ64は、エリアクライアントと折衝してストリーム処理トポロジを選択さ
れたトポロジに再構成する(図17、ブロック258)。このプロセスにおいて、エリア
サーバ64は、エリアクライアントと折衝して、エリアクライアントと、任意選択で、要
求側エリア・クライアント・ネットワーク・ノードに必要なデータ・ストリーム・データ
を配信するエリアサーバ64との間で1組の接続を確立する。場合によっては、エリアサ
ーバ64は、各エリアクライアントに、要求側のエリア・クライアント・ノードまで中継
され、または他のリアルタイム・データ・ストリームと組み合わされて、要求側エリア・
クライアント・ネットワーク・ノードに必要なリアルタイム・データ・ストリーム・デー
タを配信するストリームミックスとされる1つ以上のリアルタイム・データ・ストリーム
を求める個々の要求を送る。
選択されたトポロジがエリアサーバ64からのストリームを必要としない場合(図17
、ブロック260)、エリアサーバ64は、現在のストリーム処理トポロジに従ってエリ
ア・クライアント・ネットワーク・ノード間の接続を管理する(図17、ブロック251
)。例えば、場合によっては(図22など参照)、選択されたトポロジは、エリア・クラ
イアント・ネットワーク・ノードの1つ以上から直接要求側エリア・クライアント・ネッ
トワーク・ノードに必要なリアルタイム・データ・ストリーム・データを配信し、エリア
サーバ64がそのデータを送信する必要を生じさせない。
選択されたトポロジがエリアサーバ64からのストリームを必要とする場合(図17、
ブロック260)、領域は、ストリーム・ミックス・リスト184(図8参照)から、必
要なサーバストリームが利用できるかどうか(すなわち、現在生成されているかどうか)
判定する(図17、ブロック262)。必要なサーバストリームは、その他のエリア・ク
ライアント・ネットワーク・ノードの1つによって供給されるリアルタイム・データ・ス
トリームのコピーとすることもでき、エリアサーバ64が、要求側エリア・クライアント
・ネットワーク・ノード以外のエリア・クライアント・ネットワーク・ノードのそれぞれ
から受け取っている2つ以上のリアルタイム・データ・ストリームから現在生成されてい
るストリームミックスとすることもできる。必要なストリームが利用できる場合(図17
、ブロック262)、エリアサーバ64は、要求側エリア・クライアント・ネットワーク
・ノードに必要なサーバストリームのコピーを送信し(図17、ブロック270)、現在
のストリーム処理トポロジに従ってエリアクライアント接続を管理する(図17、ブロッ
ク251)。
必要なストリームが利用できない場合(図17、ブロック262)、エリアサーバ64
は、必要なサーバストリームを獲得する(図17、ブロック264)。このプロセスにお
いて、エリアサーバ64は、その他のエリア・クライアント・ネットワーク・ノードの1
つから受け取られるリアルタイム・データ・ストリームのコピーを生成してもよく、要求
側エリア・クライアント・ネットワーク・ノード以外のエリア・クライアント・ネットワ
ーク・ノードのそれぞれから受け取られる2つ以上のリアルタイム・データ・ストリーム
からストリームミックスを生成してもよい。新しいストリームミックスが生成される場合
(図17、ブロック266)、エリアサーバ64は、ストリーム・ミックス・リスト18
4を更新し(図17、ブロック268)、要求側エリアクライアントに必要なサーバスト
リームを送信し(図17、ブロック270)、現在のストリーム処理トポロジに従ってエ
リアクライアント接続を管理する(図17、ブロック251)。新しいストリームミック
スが生成されない場合(図17、ブロック266)、エリアサーバ64は、要求側エリア
クライアントに必要なサーバストリームを送信し(図17、ブロック270)、現在のス
トリーム処理トポロジに従ってエリアクライアント接続を管理する(図17、ブロック2
51)。
4.リアルタイム・データ・ストリーム処理トポロジの例
本項では、図17に示す方法のブロック256でエリアサーバ64によって選択され得
るストリーム処理トポロジの例を説明する。
a.サーバ混合ストリーム処理トポロジの例
図18に、エリアサーバ64が、エリア・クライアント・ネットワーク・ノード52〜
56からそれぞれ、リアルタイム・データ・ストリームのセット282、284、286
を受け取るリアルタイム・データ・ストリーム処理トポロジの一実施形態を示す。これら
のデータ・ストリームのセット282〜286は、共用仮想領域内のオブジェクトを、仮
想領域仕様および各オブジェクトの位置に従って接続するのに必要なすべてのリアルタイ
ム・データ・ストリームを含む。これらのストリームはそれぞれ、エリアクライアント5
2〜56によってパケットに分割される。各パケットは、パケットのソースを識別するソ
ース識別子フィールド、順序付け番号、その他の情報を含むヘッダを含む。
エリアサーバ64は、受け取られたデータ・ストリームのセット282〜286から個
々のストリームミックスのセット288、290、292を生成し、各セット288〜2
92は、エリア・クライアント・ノード52〜56の個々の1つによって必要とされるリ
アルタイム・データ・ストリーム型(オーディオ、映像、チャット、動きデータなど)を
含む。このプロセスにおいて、エリアサーバ64は、着信リアルタイム・データ・ストリ
ーム・パケットを、型(映像、オーディオ、チャット、動きデータ、制御など)ごと、ソ
ース識別子ごとに分け、順序番号によってパケットを再組立てする。次いでエリアサーバ
64は、同じ型のストリームをストリームミックスの個々の1つに組み合わせ、個々のス
トリームミックスのセット288〜292を、エリア・クライアント・ネットワーク・ノ
ード52〜56の個々の1つに送信する。
図19に示すピア・ツー・ピア・トポロジと比べて、トポロジ280は、各エリアクラ
イアントごとに必要とされるネットワーク接続数を低減し、それによって各エリアクライ
アントおよびそのネットワークにかかる負荷が低減される。しかし、エリアサーバ64に
かかる負荷は増大する。
b.ピア・ツー・ピア・クライアント混合ストリーム処理トポロジの例
図19に、エリア・クライアント・ネットワーク・ノード52〜56がそれぞれ、その
他のエリア・クライアント・ネットワーク・ノード52〜56のそれぞれに、必要なリア
ルタイム・データ・ストリームのそれぞれの個々のコピーを送信するピア・ツー・ピア・
リアルタイム・データ・ストリーム処理トポロジの一実施形態を示す。よって、図19に
示す例において、エリアクライアント52は、エリアクライアント54に第1のストリー
ムセット302を、エリアクライアント56に第2のストリームセット304を送信し、
エリアクライアント54は、エリアクライアント52に第1のストリームセット306を
、エリアクライアント56に第2のストリームセット308を送信し、エリアクライアン
ト56は、エリアクライアント52に第1のストリームセット310を、エリアクライア
ント54に第2のストリームセット312を送信する。これらのストリーム302〜31
2は、共用仮想領域内のオブジェクトを、仮想領域仕様および各オブジェクトの位置に従
って接続するのに必要なすべてのリアルタイム・データ・ストリームを含む。各ストリー
ムはそれぞれパケットに分割され、各パケットは、パケットのソースを識別するソース識
別子フィールド、順序付け番号、およびその他の情報を含むヘッダを含む。
エリア・クライアント・ネットワーク・ノード52〜56はそれぞれ、必要なリアルタ
イム・データ・ストリーム型(オーディオ、映像、チャット、動きデータなど)ごとに、
その他のエリア・クライアント・ネットワーク・ノードから受け取られるリアルタイム・
データ・ストリームから個々のストリームミックスを生成する。このプロセスにおいて、
各エリアクライアントは、着信リアルタイム・データ・ストリーム・パケットを、型(映
像、オーディオ、チャット、動きデータ、制御など)ごと、ソース識別子ごとに分け、順
序番号によってパケットを再組立てする。次いで各エリアクライアントは、レンダリング
時にリアルタイム・データ・ストリーム間の同期を維持するために、相関関係を有するタ
イムスタンプおよびソースIDにより、再組立てされたパケットストリームを順序付けす
る。
トポロジ300のスケーラビリティは、エリア・クライアント・ネットワーク・ノード
における重いアップロード要件により制約を受ける。またトポロジ300は、図19に示
すように、ユニキャスト送信を使用して必要なリアルタイム・データ・ストリームが送ら
れるときには、ネットワークにも重い負荷をかける。実施形態によっては、ローカルネッ
トワーク負荷は、その他のネットワークノードにマルチキャストストリームのコピーを配
信する1つ以上のスイッチに対し、必要なデータ・ストリームの各々の単一の個別マルチ
キャスト送信を送るようにエリア・クライアント・ネットワーク・ノード52〜56のそ
れぞれを構成することによって軽減される。
c.ピア・ツー・ピア・クライアント混合ストリーム処理トポロジの例
図20に、4つのエリア・クライアント・ネットワーク・ノード52〜56および32
2の間の接続を最小限にするピア・ツー・ピア・リアルタイム・データ・ストリーム処理
トポロジ320の一実施形態を示す。トポロジ320において、エリア・クライアント・
ネットワーク・ノード52〜56、322はそれぞれ、他の2つのエリア・クライアント
・ネットワーク・ノード52〜56、322のそれぞれに、必要なリアルタイム・データ
・ストリームのそれぞれの個々のコピーを送信する。よって、図20に示す例において、
エリアクライアント52はエリアクライアント56に第1のストリームセット324を、
エリアクライアント322に第2のストリームセット326を送信し、エリアクライアン
ト54はエリアクライアント322に第1のストリームセット328を、エリアクライア
ント56に第2のストリームセット330を送信し、エリアクライアント56はエリアク
ライアント52に第1のストリームセット332を、エリアクライアント54に第2のス
トリーム334を送信し、エリアクライアント322はエリアクライアント52に第1の
ストリームセット336を、エリアクライアント54に第2のストリーム338を送信す
る。加えて、エリアクライアント52〜56、322はそれぞれ、その他のエリアクライ
アントの1つから受け取られるリアルタイム・データ・ストリームのセットをエリアクラ
イアントの別の1つへ中継する送受信スイッチとしても働く。詳細には、エリアクライア
ント52は、エリアクライアント322からのストリームセット336のコピー340を
エリアクライアント56に中継し、エリアクライアント54は、エリアクライアント56
からのストリームセット334のコピー342をエリアクライアント322に中継し、エ
リアクライアント56は、エリアクライアント52からのストリームセット324のコピ
ー344をエリアクライアント54に中継し、エリアクライアント322は、エリアクラ
イアント54からのストリームセット328のコピー346をエリアクライアント52に
中継する。これらのストリームセット324〜346は、共用仮想領域内のオブジェクト
を、仮想領域仕様および各オブジェクトの位置に従って接続するのに必要とされるすべて
のリアルタイム・データ・ストリームを含む。これらのストリームはそれぞれ、パケット
に分割され、各パケットは、パケットのソースを識別するソース識別子フィールド、順序
付け番号、およびその他の情報を含むヘッダを含む。
エリア・クライアント・ネットワーク・ノード52〜56、322はそれぞれ、必要な
リアルタイム・データ・ストリーム型(オーディオ、映像、チャット、動きデータなど)
ごとに、その他のエリア・クライアント・ネットワーク・ノードから受け取られるリアル
タイム・データ・ストリームから個々のストリームミックスを生成する。このプロセスに
おいて、各エリアクライアントは、着信リアルタイム・データ・ストリーム・パケットを
、型(映像、オーディオ、チャット、動きデータ、制御など)ごと、ソース識別子ごとに
分け、順序番号によってパケットを再組立てする。次いで各エリアクライアントは、レン
ダリング時にリアルタイム・データ・ストリーム間の同期を維持するために、相関関係を
有するタイムスタンプおよびソースIDにより、再組立てされたパケットストリームを順
序付けする。
トポロジ320のスケーラビリティは、エリア・クライアント・ネットワーク・ノード
における重いアップロード要件により制約を受ける。またトポロジ320は、図20に示
すように、ユニキャスト送信を使用して必要なリアルタイム・データ・ストリームが送ら
れるときには、ネットワークにも重い負荷をかける。実施形態によっては、ローカルネッ
トワーク負荷は、複製された必要なデータ・ストリームの各々の単一の個別マルチキャス
ト送信を、その他のネットワークノードにマルチキャストストリームのコピーを配信する
1つ以上のスイッチに送るよう各エリア・クライアント・ネットワーク・ノード52〜5
6、322を構成することによって低減される。
d.サーバ仲介型クライアント混合ストリーム処理トポロジの例
図21に、エリアサーバ64が、エリア・クライアント・ネットワーク・ノード52〜
56間でリアルタイム・データ・ストリームを中継する送受信スイッチとして働く、サー
バ仲介型リアルタイム・データ・ストリーム処理トポロジ350の一実施形態を示す。ト
ポロジ350において、エリア・クライアント・ネットワーク・ノード52〜56はそれ
ぞれ、必要なリアルタイム・データ・ストリームの個々のセット352、354、356
をエリアサーバ64にアップロードし、エリアサーバ64は、アップロードされたストリ
ームの必要なコピーを、エリア・クライアント・ネットワーク・ノード52〜56に、そ
れらの個々の要件に従って中継する。よって、図21に示す例で、エリアサーバ64は、
エリアクライアント52によってアップロードされたストリームセット352の個々のコ
ピー358、360をその他の各エリアクライアント54、56に送信し、エリアクライ
アント54によってアップロードされたストリームセット354の個々のコピー362、
364をその他の各エリアクライアント52、56に送信し、エリアクライアント56に
よってアップロードされたストリームセット356の個々のコピー366、368をその
他の各エリアクライアント52、54に送信する。各ストリームセット358〜368は
、共用仮想領域内のオブジェクトを、仮想領域仕様および各オブジェクトの位置に従って
接続するのに必要とされるすべてのリアルタイム・データ・ストリームを含む。これらの
ストリームはそれぞれパケットに分割され、各パケットは、パケットのソースを識別する
ソース識別子フィールド、順序付け番号、およびその他の情報を含むヘッダを含む。
エリア・クライアント・ネットワーク・ノード52〜56はそれぞれ、必要なリアルタ
イム・データ・ストリーム型(オーディオ、映像、チャット、動きデータなど)ごとに、
エリア・サーバ・ネットワーク・ノード64から受け取られるリアルタイム・データ・ス
トリームから個々のストリームミックスを生成する。このプロセスにおいて、各エリアク
ライアントは、着信リアルタイム・データ・ストリーム・パケットを、型(映像、オーデ
ィオ、チャット、動きデータ、制御など)ごと、ソース識別子ごとに分け、順序番号によ
ってパケットを再組立てする。次いで各エリアクライアントは、レンダリング時にリアル
タイム・データ・ストリーム間の同期を維持するために、相関関係を有するタイムスタン
プおよびソースIDにより、再組立てされたパケットストリームを順序付けする。
e.動的ストリーム処理トポロジの例
実施形態によっては、エリアサーバ64は、指定のリアルタイム・データ・ストリーム
のセットを所与のネットワークノードに配信するリアルタイム・データ・ストリーム処理
トポロジを動的に決定する。このプロセスにおいて、エリアサーバ64は、ストリーム処
理トポロジとして、中央ネットワークノードを介して第1のセット内のネットワークノー
ド間でリアルタイム・データ・ストリームを切り換えること、および第2のセット内のネ
ットワークノード間で、直接ピア・ツー・ピア・リアルタイム・データ・ストリーム接続
を介してリアルタイム・データ・ストリームを切り換えることを伴うトポロジを選択する
。第1のノードセットは、第2のノードセットと異なっていてもよい。前述のように、各
ネットワークノードは、仮想領域における個々の位置と関連付けられた少なくとも1つの
オブジェクトと、リアルタイム・データ・ストリーム型の1つ以上のソースおよびシンク
の少なくとも1つを有する。エリアサーバ64は、1つ以上の切換え規則、および決定さ
れたリアルタイム・データ・ストリーム処理トポロジに基づき、第1のセット内のネット
ワークノード間でリアルタイム・データ・ストリーム・パケットを転送する。
図22に、前述のストリーム処理トポロジの要素を動的に組み合わせるリアルタイム・
データ・ストリーム処理トポロジ370の一実施形態を示す。詳細には、図22に示す例
示的トポロジにおいて、エリア・クライアント・ネットワーク・ノード52〜56は、必
要に応じて、ピア・ツー・ピア接続と、エリアサーバ64がエリア・クライアント・ネッ
トワーク・ノード間の送受信スイッチを作動させるサーバ仲介型接続との動的組み合わせ
によって、必要なリアルタイム・データ・ストリームを受け取る。
トポロジ370において、エリア・クライアント・ネットワーク・ノード52〜56は
それぞれ、必要なリアルタイム・データ・ストリームの個々のセット372、374、3
76を、エリアサーバ64にアップロードする。図22に示す例において、エリアサーバ
64は、エリアクライアント52によってアップロードされたストリームセット372の
コピー378を、エリアクライアント54に中継し、エリアクライアント54によってア
ップロードされたストリームセット374の各コピー380、382を、その他のエリア
クライアント52、56のそれぞれに中継し、エリアクライアント56によってアップロ
ードされたストリームセット376のコピー384をエリアクライアント54に中継する
。加えてエリアクライアント52は、必要なストリームセット386を、エリアクライア
ント54から直接受け取り、エリアクライアント56は、必要なストリームセット388
を、エリアクライアント52から直接受け取る。各ストリームセット378〜388は、
共用仮想領域内のオブジェクトを、仮想領域仕様および各オブジェクトの位置に従って接
続するのに必要とされるすべてのリアルタイム・データ・ストリームを含む。これらのス
トリームはそれぞれパケットに分割され、各パケットは、パケットのソースを識別するソ
ース識別子フィールド、順序付け番号、およびその他の情報を含むヘッダを含む。
エリア・クライアント・ネットワーク・ノード52〜56はそれぞれ、必要なリアルタ
イム・データ・ストリーム型(オーディオ、映像、チャット、動きデータなど)ごとに、
その他のエリア・クライアント・ネットワーク・ノードから受け取られるリアルタイム・
データ・ストリームから個々のストリームミックスを生成する。このプロセスにおいて、
各エリアクライアントは、着信リアルタイム・データ・ストリーム・パケットを、型(映
像、オーディオ、チャット、動きデータ、制御など)ごと、ソース識別子ごとに分け、順
序番号によってパケットを再組立てする。次いで各エリアクライアントは、レンダリング
時にリアルタイム・データ・ストリーム間の同期を維持するために、相関関係を有するタ
イムスタンプおよびソースIDにより、再組立てされたパケットストリームを順序付けす
る。
トポロジ370は、エリア・クライアント・ネットワーク・ノード52〜56上で利用
できる帯域幅を、各エリア・クライアント・ネットワーク・ノード52〜56が最大数の
非混合リアルタイム・データ・ストリームを受け取るように最適化させることを可能にす
る。
VII.第2のシステムアーキテクチャ実施形態
図23に、エリア・クライアント・ネットワーク・ノード52〜56、エリア・サーバ
・ネットワーク・ノード64の一実施形態402、およびネットワークスイッチ404を
含む共用仮想領域通信環境400の一実施形態を示す。共用仮想領域通信環境400の各
要素の構造および動作は、エリアサーバ64およびクライアント通信アプリケーション1
42(図7参照)の少なくとも1つのリアルタイム・データ・ストリーム切換え機能の1
つ以上がネットワークスイッチ404に組み込まれ、ネットワークスイッチ404が、前
述の方法の1つ以上に従って自動リアルタイム・データ・ストリーム切換えを行うことが
可能になっていることを除いて、前述の共用通信環境の各要素の構造および動作と同じで
ある。
ネットワークスイッチ404は、メモリ405と、少なくとも1つコンピュータプロセ
ッサを含む処理装置407と、ネットワークスイッチ404がエリア・クライアント・ネ
ットワーク・ノード54、56およびエリアサーバ402に接続するためのネットワーク
アダプタ403と、を含むコンピュータネットワーキング機器である。動作に際して、ネ
ットワークスイッチ404は、データパケットを検査し、各パケットのソースを決定し、
各パケットを個々の宛先に転送することによって各ネットワークセグメントを接続する。
各パケットごとに、ネットワークスイッチは、宛先およびソースのハードウェアアドレス
を、ネットワークセグメントおよびアドレスの表と比較する。セグメントが同じである場
合、パケットは削除される。そうでない場合、ネットワークスイッチ404は、そのパケ
ットを適正なセグメントに転送する。ネットワークスイッチ404は通常、パケット転送
のための好ましい経路を含む転送表409に基づいて、パケットの転送先となるネットワ
ーク宛先を決定する。ネットワークスイッチ404は通常、ネットワークスイッチ404
の近くにあるネットワーク宛先への経路を含む経路指定表411に経路指定アルゴリズム
を適用することによって、転送表409を生成する。転送表409および経路指定表41
1内の各経路は通常、ネットワークスイッチ404とネットワーク宛先の間のネットワー
クトポロジを記述する情報によって指定される。ネットワークスイッチ404は、不良な
パケットまたは正しく整列されていないパケットは転送しない。ネットワークスイッチ4
04は、物理層、データリンク層、ネットワーク層、およびトランスポート層を含むOS
I階層の1つ以上において動作し得る。ネットワークスイッチ404の例示的実装形態に
は、ネットワークスイッチ、ネットワークルータ、ネットワークハブなどが含まれる(た
だし必ずしもこれらに限定されない)。
実施形態によっては、ネットワークスイッチ404は、仮想領域を共用するネットワー
クノード間でリアルタイム・データ・ストリーム接続を切り換える。ネットワークアダプ
タ403は、エリアサーバ402から仮想領域仕様406を受け取る。仮想領域仕様40
6は、個々のリアルタイム・データ・ストリーム型のソースとそのリアルタイム・データ
・ストリーム型のシンクの間の個々の接続を仮想領域における位置によってそれぞれ定義
する1つ以上の切換え規則の記述を含む。コンピュータ可読メモリ405は、仮想領域仕
様406と、経路指定表411および転送表409の一方または両方を記憶し、表409
、411はそれぞれ、ネットワーク宛先までの経路を記述するネットワークトポロジ情報
を含む。処理装置407は、ネットワークノード52〜56の2つ以上の間でリアルタイ
ム・データ・ストリーム・パケットを転送し、ネットワークノード52〜56はそれぞれ
、仮想領域における個々の位置、ならびにリアルタイム・データ・ストリーム型の1つ以
上のソースおよびシンクの少なくとも1つと関連付けられている。処理装置407は、1
つ以上のリアルタイム・データ・ストリーム・パケットを、ネットワークトポロジ情報お
よび1つ以上の切換え規則に基づいて転送する。
実施形態によっては、ネットワークスイッチは、エリア・クライアント・ストリーム切
換えマネージャ168の機能の1つ以上を果たす。これらの実施形態において、処理装置
407は、ネットワークノード52〜54間で1つ以上のリアルタイム・データ・ストリ
ーム接続を確立し、ネットワークノード52〜56は、リアルタイム・データ・ストリー
ム型の1つ以上のソースおよびシンクの少なくとも1つとそれぞれが関連付けられている
個々のオブジェクトと関連付けられている。処理装置407は、それら1つ以上のリアル
タイム・データ・ストリーム接続を、図10および図12〜14の方法の一方または両方
に従い、1つ以上の切換え規則、オブジェクトと関連付けられた個々のソースおよびシン
ク、ならびに仮想領域におけるオブジェクトの個々の位置に基づいて確立する。
実施形態によっては、ネットワークスイッチ404は、エリア・サーバ・ネットワーク
・ノードの機能の1つ以上を果たす。詳細には、ネットワークスイッチ404は、エリア
サーバ64(図8など参照)のリアルタイム・データ・ストリーム切換え機能の一部また
は全部を果たす。これに関して、ネットワークスイッチ404は、エリアサーバ64から
構成データを受け取る。構成データは、仮想領域仕様180(図8参照)のコピー、およ
びオブジェクトレジスタ182(図8参照)のコピーを含む。ネットワークスイッチ40
4は、仮想領域仕様180のコピーでローカル仮想領域仕様キャッシュ406を初期設定
し、オブジェクトレジスタ182のコピーでローカル・オブジェクト・レジスタ408を
初期設定する。ネットワークスイッチ404は、周期的に、またはイベント(アバタの動
きなど)に応答して、または、周期的に、と、イベントに応答して、の両方で、エリアク
ライアント52〜56から受け取られる動きデータに基づき、仮想領域において参入し、
退出し、動き回る交信者のアバタおよびその他のオブジェクトを追跡することにより得ら
れる情報で、ローカル・オブジェクト・レジスタ408を更新する。ネットワークスイッ
チ404は、図17の方法に従ってエリア・クライアント・ネットワーク・ノード52〜
56に必要なデータ・ストリーム・データを配信するリアルタイム・データ・ストリーム
接続を決定する。このプロセスは、エリア・クライアント・ネットワーク・ノード52〜
56に必要なリアルタイム・データ・ストリーム・データを提供する最適なストリーム処
理トポロジを決定することを含む。
実施形態によっては、ネットワークスイッチ404は、所与のネットワークノードに指
定のリアルタイム・データ・ストリームのセットを配信するリアルタイム・データ・スト
リーム処理トポロジを動的に決定する。このプロセスにおいて、処理装置407は、スト
リーム処理トポロジとして、中央ネットワークノードを介して第1のセット内のネットワ
ークノードのそれぞれの間でリアルタイム・データ・ストリームを切り換えること、およ
び(通常は第1のセットと異なる)第2のセット内のネットワークノードのそれぞれの間
で、直接ピア・ツー・ピア・リアルタイム・データ・ストリーム接続を介してリアルタイ
ム・データ・ストリームを切り換えることを伴うトポロジを選択する。前述のように、各
ネットワークノードは、仮想領域における個々の位置、ならびにリアルタイム・データ・
ストリーム型の1つ以上のソースおよびシンクの少なくとも1つと関連付けられている。
処理装置407は、1つ以上の切換え規則、および決定されたリアルタイム・データ・ス
トリーム処理トポロジに基づき、第1のセット内のネットワークノード間でリアルタイム
・データ・ストリーム・パケットを転送する。
VIII.結論
本明細書で示す実施形態は、各共用仮想領域通信環境においてリアルタイム・データ・
ストリーム接続を切り換えるシステムおよび方法を提供するものである。これらの実施形
態は、共用仮想領域を介して通信するネットワークノード間でリアルタイム・データ・ス
トリームを接続するための切換え規則を、仮想領域の仕様に明示的に結び付けることを可
能にする。これらの実施形態は、仮想領域の設計者が、仮想領域の形および外観のみなら
ず、交信者がリアルタイム・データ・ストリームを介して相互に接続するやり方も制御す
ることを可能にする。加えて、仮想領域内の各場所に自動切換え規則を結び付けることに
より、これらの実施形態は、仮想領域内のオブジェクトの属性および特性に基づいて接続
を確立し、終了するシステム、ならびに信号処理機能をストリームの経路指定、接続およ
び切断の各機能と絡み合わせるシステムに比べて、交信者ノードの接続および切断の際に
伴う複雑さを低減し、システムのスケーラビリティを増大させる。
特許請求の範囲内には他の実施形態も含まれるものである。
52 エリア・クライアント・ネットワーク・ノード
54 エリア・クライアント・ネットワーク・ノード
56 エリア・クライアント・ネットワーク・ノード
58 通信ネットワーク
64 エリアサーバ
162 通信モジュール
164 3次元可視化エンジン
165 チャットエンジン
166 オーディオ処理エンジン
168 ストリーム切換えマネージャ
170 帯域幅モニタ
171 コンピュータマウス
172 スピーカ
174 スピーカ
176 ヘッドセット
178 マイクロホン
180 仮想領域仕様
182 オブジェクトレジスタ
184 ストリームミックスのリスト
186 インターフェースデータ
188 ゾーンリスト
190 オブジェクトレジスタ
192 現在のオブジェクト位置データベース
194 ストリーム・ミックス・リスト
196 仮想領域仕様
198 交信者アバタデータベース

Claims (27)

  1. 仮想領域(28)のゾーン(36〜44)と切換え規則とを規定する仮想領域仕様(60、180)に基づいて、各オブジェクト(30〜34)と関連付けられたネットワークノード(52、54、56、64、404)間での1つまたは複数のリアルタイム・データ・ストリーム接続を管理するステップであって、前記切換え規則は、前記ゾーン(36〜44)のうちの指定されたソースゾーンと関連付けられた個々のリアルタイム・データ・ストリーム型のソース(66)を、前記ゾーン(36〜44)のうちの指定されたシンクゾーンと関連付けられた前記リアルタイム・データ・ストリーム型のシンク(68)と接続するための命令を規定する、管理するステップ、
    を含み、
    前記ゾーン(36〜44)の各々は、個々の幾何学的境界と関連付けられ、前記オブジェクト(30〜34)の各々は、1つまたは複数のリアルタイム・データ・ストリーム型のソースおよびシンクのうちの少なくとも一方と関連付けられ且つ前記ゾーン(36〜44)のうちの対応するゾーン内に位置し、前記ネットワークノード(52、54、56、64、404)のうちの特定のネットワークノード間の各リアルタイム・データ・ストリーム接続の管理は、前記切換え規則、前記特定のネットワークノード(52、54、56、64、404)とそれぞれ関連付けられた前記オブジェクト(30〜34)のうちの特定のオブジェクトと関連付けられたそれぞれのソース(66)およびシンク(68)、および各特定のオブジェクト(30〜34)が配置される対応するゾーン(36〜44)、のうちの1つまたは複数に基づいている、方法。
  2. 前記切換え規則は、前記個々のリアルタイム・データ・ストリーム型のソースゾーンおよびシンクゾーンの両方として、前記ゾーン(36〜44)のうちの特定のゾーンを指定し、
    前記管理するステップは、前記個々のリアルタイム・データ・ストリーム型のソース(66)を有し且つ前記特定のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、前記リアルタイム・データ・ストリーム型のシンク(68)を有し且つ前記特定のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、の間のリアルタイム・データ・ストリーム接続を管理することを含む、
    請求項1に記載の方法。
  3. 前記切換え規則は、所与のリアルタイム・データ・ストリーム型のソースゾーンとして、前記ゾーン(36〜44)のうちの第1のゾーンを指定し、前記所与のリアルタイム・データ・ストリーム型のシンクゾーンとして、前記ゾーン(36〜44)のうちの第2のゾーンを指定し、
    前記管理するステップは、前記所与のリアルタイム・データ・ストリーム型のソース(66)を有し且つ前記第1のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、前記所与のリアルタイム・データ・ストリーム型のシンク(68)を有し且つ前記第2のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、の間のリアルタイム・データ・ストリーム接続を管理することを含む、
    請求項1に記載の方法。
  4. 前記第1のゾーンの幾何学的境界は、前記第2のゾーンの幾何学的境界の外側にある、請求項3に記載の方法。
  5. 前記切換え規則は、第2の所与のリアルタイム・データ・ストリーム型のソースゾーンおよびシンクゾーンの両方として、前記第1のゾーンを指定し、
    前記管理するステップは、前記第2の所与のリアルタイム・データ・ストリーム型のソース(66)を有し且つ前記第1のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、前記第2の所与のリアルタイム・データ・ストリーム型のシンク(68)を有し且つ前記第1のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、の間のリアルタイム・データ・ストリーム接続を管理することを含む、
    請求項4に記載の方法。
  6. 前記切換え規則は、前記第2のゾーン内にあって特定の役割と関連付けられた第1の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第1のゾーンをソースとする前記第1の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリームの接続を指定する、請求項5に記載の方法。
  7. 前記切換え規則は、前記第1のゾーン内にあって第2の特定の役割と関連付けられた前記第2の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第1のゾーンをソースとする前記第2の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリームの接続を指定する、請求項6に記載の方法。
  8. 前記切換え規則は、第3の所与のリアルタイム・データ・ストリーム型のソースゾーンおよびシンクゾーンの両方として、前記第2のゾーンを指定し、
    前記管理するステップは、前記第3の所与のリアルタイム・データ・ストリーム型のソース(66)を有し且つ前記第2のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、前記第3の所与のリアルタイム・データ・ストリーム型のシンク(68)を有し且つ前記第2のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、の間のリアルタイム・データ・ストリーム接続を管理することを含む、
    請求項5に記載の方法。
  9. 第1および第2の所与のリアルタイム・データ・ストリーム型は同じであり、前記第3の所与のリアルタイム・データ・ストリーム型は、前記第1および第2の所与のリアルタイム・データ・ストリーム型とは異なる、請求項8に記載の方法。
  10. 前記切換え規則は、前記第2のゾーン内にあって第2の役割と関連付けられた第1の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第1のゾーンをソースとする第1の役割と関連付けられた前記第1の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリームの接続を指定し、
    前記切換え規則は、前記第1のゾーン内にあって第3の役割と関連付けられた前記第1の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第1のゾーンをソースとする前記第1の役割と関連付けられた前記第2の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリームの接続を指定し、
    前記切換え規則は、前記第2のゾーン内にあって前記第2の役割と関連付けられた前記第3の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第2のゾーンをソースとする前記第2の役割と関連付けられた前記第3の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリームの接続を指定する、
    請求項8に記載の方法。
  11. 前記切換え規則は、第3の所与のリアルタイム・データ・ストリーム型のソースゾーンとして前記第2のゾーンを指定し、前記第3の所与のリアルタイム・データ・ストリーム型のシンクゾーンとして、前記第1のゾーンを指定し、
    前記管理するステップは、前記第3の所与のリアルタイム・データ・ストリーム型のソース(66)を有し且つ前記第2のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、前記第3の所与のリアルタイム・データ・ストリーム型のシンク(68)を有し且つ前記第1のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、の間のリアルタイム・データ・ストリーム接続を管理することを含む、
    請求項5に記載の方法。
  12. 前記切換え規則は、前記第2のゾーン内にあって第1の役割と関連付けられた第1の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第1のゾーンをソースとする前記第1の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリームの接続を指定し、
    前記切換え規則は、前記第1のゾーン内にあって第2の役割と関連付けられた前記第1の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第1のゾーンをソースとする前記第2の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリームの接続を指定し、
    前記切換え規則は、前記第1のゾーン内にあって前記第2の役割と関連付けられた前記第3の所与のリアルタイム・データ・ストリーム型の任意のシンク(68)に対する、前記第2のゾーンをソースとする前記第1の役割と関連付けられた前記第3の所与のリアルタイム・データ・ストリーム型の任意のデータ・ストリーム接続を指定する、
    請求項11に記載の方法。
  13. 前記第2のゾーンをソースゾーンとして指定し且つ前記第1のゾーンをシンクゾーンとして指定する任意の切換え規則を、前記仮想領域(28)の仕様が含まない、請求項3に記載の方法。
  14. 前記第2のゾーンの幾何学的境界は、前記第1のゾーンの幾何学的境界の内側にある、請求項3に記載の方法。
  15. 前記切換え規則は、第2の所与のリアルタイム・データ・ストリーム型のソースゾーンおよびシンクゾーンの両方として前記第2のゾーンを指定し、
    前記管理するステップは、前記第2の所与のリアルタイム・データ・ストリーム型のソース(66)を有し且つ前記第2のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、前記第2の所与のリアルタイム・データ・ストリーム型のシンク(68)を有し且つ前記第2のゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、の間のリアルタイム・データ・ストリーム接続を管理することを含む、
    請求項14に記載の方法。
  16. 前記第2のゾーンをソースゾーンとして指定し、前記第1のゾーンをシンクゾーンとして指定する任意の切換え規則を、前記仮想領域(28)の仕様が含まない、請求項15に記載の方法。
  17. 前記管理するステップは、前記個々のリアルタイム・データ・ストリーム型のソース(66)を有し且つ前記指定されたソースゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、前記リアルタイム・データ・ストリーム型のシンク(68)を有し且つ前記指定されたシンクゾーン内に配置されたオブジェクト(30〜34)と関連付けられた前記ネットワークノード(52、54、56、64、404)のそれぞれと、を接続することを含む、請求項1乃至16のいずれか一項に記載の方法。
  18. 前記オブジェクト(30〜34)のうちの複数のオブジェクトを、前記ゾーン(36〜44)のうちの対応するゾーンの内外に、ユーザ入力に応答して移動するステップをさらに含む、請求項1乃至17のいずれか一項に記載の方法。
  19. 前記オブジェクト(30〜34)は、前記ネットワークノード(52、54、56、64、404)のうちの対応するネットワークノードを操作する交信者をそれぞれ表すアバタである、請求項1乃至18のいずれか一項に記載の方法。
  20. 役割属性値は、前記指定されたソースゾーンと関連付けられた前記個々のリアルタイム・データ・ストリーム型のソース(66)の特定の役割を識別し、
    前記管理するステップは、前記特定の役割と関連付けられた前記指定されたソースゾーンと関連付けられた前記個々のリアルタイム・データ・ストリーム型のソース(66)のうちの複数を識別することと、該識別されたソース(66)と、前記指定されたシンクゾーンと関連付けられた前記リアルタイム・データ・ストリーム型のシンク(68)のうちの対応するシンクと、の接続を管理することと、を含む、
    請求項1乃至19のいずれか一項に記載の方法。
  21. 前記管理するステップは、前記指定されたソースゾーンと関連付けられた前記個々のリアルタイム・データ・ストリーム型のソース(66)と、前記指定されたシンクゾーンと関連付けられた前記リアルタイム・データ・ストリーム型のシンク(68)と、の接続を、前記指定されたソースゾーンおよび前記指定されたシンクゾーンのうちの少なくとも一方と関連付けられたストリーム優先度属性値に基づいて、前記仮想領域(28)と関連付けられたソース(66)とシンク(68)との間の他の接続との関連において、優先度付けすることを含む、請求項1乃至20のいずれか一項に記載の方法。
  22. 前記管理するステップは、前記指定されたソースゾーンと関連付けられた前記個々のリアルタイム・データ・ストリーム型のソース(66)と、前記指定されたシンクゾーンと関連付けられた前記リアルタイム・データ・ストリーム型のシンク(68)と、の接続を、前記指定されたソースゾーンおよび前記指定されたシンクゾーンのうちの少なくとも一方と関連付けられたネットワーク経路トポロジ属性値に基づいて管理することを含む、請求項1乃至21のいずれか一項に記載の方法。
  23. 前記経路トポロジ属性値は、サーバ仲介型経路トポロジを識別し、前記管理するステップは、サーバ仲介型ネットワークリンクにわたって管理された接続を指示することを含む、請求項22に記載の方法。
  24. 前記経路トポロジ属性値は、直接経路トポロジを識別し、前記管理するステップは、ピア・ツー・ピア・ネットワークリンクにわたって管理された接続を指示することを含む、請求項22に記載の方法。
  25. 前記管理するステップは、所与の切換え規則にしたがって、前記指定されたソースゾーンと関連付けられた前記個々のリアルタイム・データ・ストリーム型のソース(66)と、前記指定されたシンクゾーンと関連付けられた前記リアルタイム・データ・ストリーム型のシンク(68)と、の接続に対する帯域幅の割り当てを、前記指定されたソースゾーンおよび前記指定されたシンクゾーンのうちの少なくとも一方と関連付けられた帯域幅属性値に基づいて管理することを含む、請求項22に記載の方法。
  26. コンピュータによって実行される場合に、該コンピュータに、請求項1乃至25のいずれか一項に記載の方法を実行させるためのコンピュータ可読命令を格納するコンピュータ可読媒体。
  27. 請求項1乃至25のいずれか一項に記載の方法を実行する装置。
JP2013020695A 2007-10-24 2013-02-05 共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え Expired - Fee Related JP5723905B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/923,629 US7769806B2 (en) 2007-10-24 2007-10-24 Automated real-time data stream switching in a shared virtual area communication environment
US11/923,629 2007-10-24

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010531139A Division JP5200109B2 (ja) 2007-10-24 2008-10-16 共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え

Publications (2)

Publication Number Publication Date
JP2013137781A JP2013137781A (ja) 2013-07-11
JP5723905B2 true JP5723905B2 (ja) 2015-05-27

Family

ID=40579933

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2010531139A Expired - Fee Related JP5200109B2 (ja) 2007-10-24 2008-10-16 共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え
JP2013020695A Expired - Fee Related JP5723905B2 (ja) 2007-10-24 2013-02-05 共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2010531139A Expired - Fee Related JP5200109B2 (ja) 2007-10-24 2008-10-16 共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え

Country Status (9)

Country Link
US (6) US7769806B2 (ja)
EP (1) EP2208313A4 (ja)
JP (2) JP5200109B2 (ja)
KR (1) KR101511403B1 (ja)
CN (1) CN102007730B (ja)
HK (1) HK1153061A1 (ja)
IL (1) IL205287A0 (ja)
MY (1) MY152413A (ja)
WO (1) WO2009055305A1 (ja)

Families Citing this family (114)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101496387B (zh) 2006-03-06 2012-09-05 思科技术公司 用于移动无线网络中的接入认证的系统和方法
US8570859B1 (en) * 2006-07-21 2013-10-29 Sprint Spectrum L.P. Hybrid mesh network
GB0703974D0 (en) * 2007-03-01 2007-04-11 Sony Comp Entertainment Europe Entertainment device
US9009603B2 (en) 2007-10-24 2015-04-14 Social Communications Company Web browser interface for spatial communication environments
US7769806B2 (en) 2007-10-24 2010-08-03 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US8407605B2 (en) 2009-04-03 2013-03-26 Social Communications Company Application sharing
US9357025B2 (en) 2007-10-24 2016-05-31 Social Communications Company Virtual area based telephony communications
US11876707B2 (en) * 2007-10-24 2024-01-16 Sococo, Inc. Routing virtual area based communications
US8397168B2 (en) 2008-04-05 2013-03-12 Social Communications Company Interfacing with a spatial virtual communication environment
US8804627B2 (en) * 2007-12-19 2014-08-12 Qualcomm Incorporated Method and apparatus for improving performance of erasure sequence detection
US8584024B2 (en) 2008-02-01 2013-11-12 International Business Machines Corporation Avatar cloning in a virtual world
US8797377B2 (en) 2008-02-14 2014-08-05 Cisco Technology, Inc. Method and system for videoconference configuration
US20090234948A1 (en) * 2008-03-11 2009-09-17 Garbow Zachary A Using Multiple Servers to Divide a Virtual World
US9514444B2 (en) 2009-01-15 2016-12-06 Sococo, Inc. Encapsulating virtual area based communicant assemblies
CN102084354A (zh) 2008-04-05 2011-06-01 社会传播公司 基于共享虚拟区域通信环境的装置和方法
US20090265642A1 (en) * 2008-04-18 2009-10-22 Fuji Xerox Co., Ltd. System and method for automatically controlling avatar actions using mobile sensors
US10037565B2 (en) * 2008-07-24 2018-07-31 International Business Machines Corporation System and method for prioritization of rendering policies in virtual environments
TW201008249A (en) * 2008-08-11 2010-02-16 Acer Inc Processing apparatus and processing methods for image quality
US8694658B2 (en) 2008-09-19 2014-04-08 Cisco Technology, Inc. System and method for enabling communication sessions in a network environment
EP2347341A1 (en) * 2008-10-14 2011-07-27 Hewlett-Packard Development Company, L.P. Managing event traffic in a network system
US9015599B2 (en) * 2008-10-16 2015-04-21 At&T Intellectual Property I, L.P. Devices, methods and computer-readable media for providing control of switching between media presentation screens
US8156054B2 (en) 2008-12-04 2012-04-10 At&T Intellectual Property I, L.P. Systems and methods for managing interactions between an individual and an entity
CN102362269B (zh) 2008-12-05 2016-08-17 社会传播公司 实时内核
US20130283169A1 (en) 2012-04-24 2013-10-24 Social Communications Company Voice-based virtual area navigation
US9288242B2 (en) 2009-01-15 2016-03-15 Social Communications Company Bridging physical and virtual spaces
US9853922B2 (en) 2012-02-24 2017-12-26 Sococo, Inc. Virtual area communications
US9319357B2 (en) 2009-01-15 2016-04-19 Social Communications Company Context based virtual area creation
US9065874B2 (en) 2009-01-15 2015-06-23 Social Communications Company Persistent network resource and virtual area associations for realtime collaboration
EP2384565B1 (en) * 2009-01-30 2018-09-26 Hewlett-Packard Development Company, L.P. Methods and systems for establishing collaborative communications between devices using ambient audio
US8659637B2 (en) 2009-03-09 2014-02-25 Cisco Technology, Inc. System and method for providing three dimensional video conferencing in a network environment
US10482428B2 (en) * 2009-03-10 2019-11-19 Samsung Electronics Co., Ltd. Systems and methods for presenting metaphors
US9489039B2 (en) 2009-03-27 2016-11-08 At&T Intellectual Property I, L.P. Systems and methods for presenting intermediaries
US8659639B2 (en) 2009-05-29 2014-02-25 Cisco Technology, Inc. System and method for extending communications between participants in a conferencing environment
US8386930B2 (en) * 2009-06-05 2013-02-26 International Business Machines Corporation Contextual data center management utilizing a virtual environment
SG176724A1 (en) * 2009-06-25 2012-01-30 Astrazeneca Ab Method for treating a patient at risk for developing an nsaid-associated ulcer
US8615713B2 (en) * 2009-06-26 2013-12-24 Xerox Corporation Managing document interactions in collaborative document environments of virtual worlds
US9082297B2 (en) 2009-08-11 2015-07-14 Cisco Technology, Inc. System and method for verifying parameters in an audiovisual environment
US8402098B2 (en) * 2009-08-13 2013-03-19 Clark C. Dircz System and method for intelligence gathering and analysis
US8271905B2 (en) 2009-09-15 2012-09-18 International Business Machines Corporation Information presentation in virtual 3D
JP5393380B2 (ja) * 2009-09-29 2014-01-22 沖電気工業株式会社 信号処理装置及びプログラム、並びに、通信システム
US8655964B2 (en) * 2009-12-14 2014-02-18 At&T Intellectual Property I, Lp Unified location and presence, communication across real and virtual worlds
US8463918B2 (en) * 2010-01-22 2013-06-11 Microsoft Corporation Loss tolerant protocol for remoting desktop graphics
US9137338B2 (en) 2010-01-22 2015-09-15 Microsoft Technology Licensing, Llc Multi-link remote protocol
US8782237B2 (en) 2010-01-28 2014-07-15 Intel Corporation Audio/video streaming in a topology of devices
US20110209183A1 (en) * 2010-02-25 2011-08-25 Samsung Electronics Co., Ltd. Method and apparatus for transmitting data based on audio/video interface
US9225916B2 (en) 2010-03-18 2015-12-29 Cisco Technology, Inc. System and method for enhancing video images in a conferencing environment
US9313452B2 (en) 2010-05-17 2016-04-12 Cisco Technology, Inc. System and method for providing retracting optics in a video conferencing environment
EP3425954B1 (en) * 2010-06-18 2024-04-03 LG Electronics Inc. Method for transmitting buffer status report from terminal to base station in a wireless communication system and apparatuses therefor
US20120016926A1 (en) * 2010-07-15 2012-01-19 Vivox Inc. Scalable techniques for providing real-time per-avatar streaming data in virtual reality systems that employ per-avatar rendered environments
US9172979B2 (en) 2010-08-12 2015-10-27 Net Power And Light, Inc. Experience or “sentio” codecs, and methods and systems for improving QoE and encoding based on QoE experiences
WO2012021173A2 (en) 2010-08-12 2012-02-16 Net Power And Light Inc. System architecture and methods for experiential computing
WO2012021902A2 (en) 2010-08-13 2012-02-16 Net Power And Light Inc. Methods and systems for interaction through gestures
US8639809B2 (en) * 2010-08-20 2014-01-28 International Business Machines Corporation Predictive removal of runtime data using attribute characterizing
US20120050456A1 (en) * 2010-08-27 2012-03-01 Cisco Technology, Inc. System and method for producing a performance via video conferencing in a network environment
US20120060101A1 (en) * 2010-08-30 2012-03-08 Net Power And Light, Inc. Method and system for an interactive event experience
US8896655B2 (en) 2010-08-31 2014-11-25 Cisco Technology, Inc. System and method for providing depth adaptive video conferencing
US8599934B2 (en) 2010-09-08 2013-12-03 Cisco Technology, Inc. System and method for skip coding during video conferencing in a network environment
WO2012034044A2 (en) * 2010-09-11 2012-03-15 Social Communications Company Relationship based presence indicating in virtual area contexts
US8949717B2 (en) * 2010-10-18 2015-02-03 Yehonatan Rafael Maor Method of controlling avatars
US8429704B2 (en) 2010-10-21 2013-04-23 Net Power And Light, Inc. System architecture and method for composing and directing participant experiences
US8599865B2 (en) 2010-10-26 2013-12-03 Cisco Technology, Inc. System and method for provisioning flows in a mobile network environment
US8699457B2 (en) 2010-11-03 2014-04-15 Cisco Technology, Inc. System and method for managing flows in a mobile network environment
US8730297B2 (en) 2010-11-15 2014-05-20 Cisco Technology, Inc. System and method for providing camera functions in a video environment
US8902244B2 (en) 2010-11-15 2014-12-02 Cisco Technology, Inc. System and method for providing enhanced graphics in a video environment
US9338394B2 (en) 2010-11-15 2016-05-10 Cisco Technology, Inc. System and method for providing enhanced audio in a video environment
US9143725B2 (en) 2010-11-15 2015-09-22 Cisco Technology, Inc. System and method for providing enhanced graphics in a video environment
US8542264B2 (en) 2010-11-18 2013-09-24 Cisco Technology, Inc. System and method for managing optics in a video environment
US8723914B2 (en) 2010-11-19 2014-05-13 Cisco Technology, Inc. System and method for providing enhanced video processing in a network environment
US9111138B2 (en) 2010-11-30 2015-08-18 Cisco Technology, Inc. System and method for gesture interface control
US9276972B2 (en) 2010-12-14 2016-03-01 Microsoft Technology Licensing, Llc Real-time media optimization over remoted sessions
US8692862B2 (en) 2011-02-28 2014-04-08 Cisco Technology, Inc. System and method for selection of video data in a video conference environment
WO2012118917A2 (en) 2011-03-03 2012-09-07 Social Communications Company Realtime communications and network browsing client
WO2012135231A2 (en) 2011-04-01 2012-10-04 Social Communications Company Creating virtual areas for realtime communications
US8670019B2 (en) 2011-04-28 2014-03-11 Cisco Technology, Inc. System and method for providing enhanced eye gaze in a video conferencing environment
US8786631B1 (en) 2011-04-30 2014-07-22 Cisco Technology, Inc. System and method for transferring transparency information in a video environment
US8934026B2 (en) 2011-05-12 2015-01-13 Cisco Technology, Inc. System and method for video coding in a dynamic environment
US8860779B2 (en) * 2011-05-23 2014-10-14 Broadcom Corporation Two-way audio and video communication utilizing segment-based adaptive streaming techniques
US8793215B2 (en) 2011-06-04 2014-07-29 Recommind, Inc. Systems and methods for publishing datasets
WO2013016161A1 (en) * 2011-07-22 2013-01-31 Social Communications Company Communicating between a virtual area and a physical space
EP2745462B1 (en) 2011-08-18 2021-10-20 Pfaqutruma Research LLC Systems and methods of virtual world interaction
WO2013039748A2 (en) * 2011-09-16 2013-03-21 Social Communications Company Capabilities based management of virtual areas
US8947493B2 (en) 2011-11-16 2015-02-03 Cisco Technology, Inc. System and method for alerting a participant in a video conference
WO2013078062A1 (en) * 2011-11-23 2013-05-30 Social Communications Company Creating and managing virtual areas
US8682087B2 (en) 2011-12-19 2014-03-25 Cisco Technology, Inc. System and method for depth-guided image filtering in a video conference environment
WO2013119802A1 (en) * 2012-02-11 2013-08-15 Social Communications Company Routing virtual area based communications
US8924939B2 (en) * 2012-05-09 2014-12-30 International Business Machines Corporation Streams debugging within a windowing condition
WO2013181026A1 (en) 2012-06-02 2013-12-05 Social Communications Company Interfacing with a spatial virtual communications environment
US9816370B2 (en) * 2012-09-19 2017-11-14 Honeywell International Inc. System and method for optimizing an operation of a sensor used with wellbore equipment
JP2014060647A (ja) * 2012-09-19 2014-04-03 Sony Corp 情報処理システム及びプログラム
US9419866B2 (en) * 2012-11-01 2016-08-16 Huawei Technologies Co., Ltd. Method, node, and monitoring center detecting network fault
US9940404B2 (en) * 2013-10-01 2018-04-10 Aaron Scott Dishno Three-dimensional (3D) browsing
US20180225885A1 (en) * 2013-10-01 2018-08-09 Aaron Scott Dishno Zone-based three-dimensional (3d) browsing
EP3056027B1 (en) * 2013-10-08 2019-07-31 Iotic Labs Limited Method and apparatus for providing internet of things data
US9660836B2 (en) * 2014-05-06 2017-05-23 Lattice Semiconductor Corporation Network topology discovery
US9584344B2 (en) 2014-05-09 2017-02-28 Lattice Semiconductor Corporation Stream creation with limited topology information
TWI578243B (zh) * 2015-09-21 2017-04-11 Yun Qi Management Method of Digital Assets Share and Expected Transfer
US10191877B2 (en) * 2015-12-22 2019-01-29 Intel Corporation Architecture for software defined interconnect switch
CN105721469B (zh) * 2016-02-18 2019-09-20 腾讯科技(深圳)有限公司 音频数据处理方法、服务器、客户端以及系统
US10530818B2 (en) * 2016-03-30 2020-01-07 Sony Interactive Entertainment Inc. Server-based sound mixing for multiuser voice chat system
CN106362400A (zh) * 2016-10-12 2017-02-01 大连文森特软件科技有限公司 具有在线编辑功能的vr游戏系统
USD852813S1 (en) * 2017-03-01 2019-07-02 Sylvan Grenfell Rudduck Display screen with a graphical user interface
CN108573519B (zh) 2017-03-14 2022-02-11 阿里巴巴集团控股有限公司 三维图形文件生成和在客户端展示三维图形的方法及装置
CN107480246B (zh) * 2017-08-10 2021-03-12 北京中航安通科技有限公司 一种关联人员的识别方法及装置
US10582159B2 (en) * 2017-11-06 2020-03-03 Blue Jeans Network, Inc. System and methods for aggregated meeting joining for video conferences with built in resilience to allow for a common meeting experience
US10922438B2 (en) 2018-03-22 2021-02-16 Bank Of America Corporation System for authentication of real-time video data via dynamic scene changing
US11362889B2 (en) * 2018-10-15 2022-06-14 Cdw Llc System and method for automated information technology services management
US11855834B2 (en) 2020-06-02 2023-12-26 Apple Inc. Traffic sink interface
US11838336B2 (en) * 2020-08-27 2023-12-05 Varty Inc. Virtual events-based social network
US11606364B2 (en) 2020-09-15 2023-03-14 Meta Platforms Technologies, Llc Artificial reality collaborative working environments
US11854230B2 (en) 2020-12-01 2023-12-26 Meta Platforms Technologies, Llc Physical keyboard tracking
CN116208433A (zh) 2021-11-30 2023-06-02 富联精密电子(天津)有限公司 虚拟会议室的音频处理方法、装置及存储介质
TWI807504B (zh) * 2021-11-30 2023-07-01 新加坡商鴻運科股份有限公司 虛擬會議室之音訊處理方法、裝置及存儲介質
CN114095557B (zh) * 2022-01-21 2022-04-12 腾讯科技(深圳)有限公司 数据处理方法、装置、设备以及介质
US20240031530A1 (en) * 2022-07-20 2024-01-25 Katmai Tech Inc. Using zones in a three-dimensional virtual environment for limiting audio and video

Family Cites Families (396)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5414801A (en) 1991-06-11 1995-05-09 Virtus Corporation Computerized method and apparatus using containment relationships to represent objects in a three-dimensional space, and for moving therethrough
US5745711A (en) 1991-10-23 1998-04-28 Hitachi, Ltd. Display control method and apparatus for an electronic conference
US6608636B1 (en) 1992-05-13 2003-08-19 Ncr Corporation Server based virtual conferencing
US5675746A (en) 1992-09-30 1997-10-07 Marshall; Paul S. Virtual reality generator for use with financial information
US5471318A (en) 1993-04-22 1995-11-28 At&T Corp. Multimedia communications network
US5689641A (en) 1993-10-01 1997-11-18 Vicor, Inc. Multimedia collaboration system arrangement for routing compressed AV signal through a participant site without decompressing the AV signal
US5491743A (en) 1994-05-24 1996-02-13 International Business Machines Corporation Virtual conference system and terminal apparatus therefor
US5627978A (en) 1994-12-16 1997-05-06 Lucent Technologies Inc. Graphical user interface for multimedia call set-up and call handling in a virtual conference on a desktop computer conferencing system
US5874960A (en) 1995-07-05 1999-02-23 Microsoft Corporation Method and system for sharing applications between computer systems
CA2180891C (en) 1995-07-12 2010-01-12 Junichi Rekimoto Notification of updates in a three-dimensional virtual reality space sharing system
US5737533A (en) 1995-10-26 1998-04-07 Wegener Internet Projects Bv System for generating a virtual reality scene in response to a database search
US6219045B1 (en) 1995-11-13 2001-04-17 Worlds, Inc. Scalable virtual world chat client-server system
US5880731A (en) 1995-12-14 1999-03-09 Microsoft Corporation Use of avatars with automatic gesturing and bounded interaction in on-line chat session
US5960173A (en) 1995-12-22 1999-09-28 Sun Microsystems, Inc. System and method enabling awareness of others working on similar tasks in a computer work environment
US5793365A (en) 1996-01-02 1998-08-11 Sun Microsystems, Inc. System and method providing a computer user interface enabling access to distributed workgroup members
US5889843A (en) 1996-03-04 1999-03-30 Interval Research Corporation Methods and systems for creating a spatial auditory environment in an audio conference system
EP0795991A1 (en) * 1996-03-11 1997-09-17 Hewlett-Packard Company Communications system
FI102867B (fi) 1996-03-20 1999-02-26 Helsingin Puhelin Oyj Menetelmä ja laitteisto virtuaalitodellisuuden ja reaalimaailman kytke miseksi toisiinsa reaaliaikaisen tietoliikenneyhteyden, kuten esimerki ksi puhelinyhteyden muodostamiseksi
US6323857B1 (en) * 1996-04-19 2001-11-27 U.S. Philips Corporation Method and system enabling users to interact, via mutually coupled terminals, by reference to a virtual space
US6304893B1 (en) 1996-07-01 2001-10-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system
JP3685877B2 (ja) 1996-07-19 2005-08-24 富士通株式会社 通信装置
US6570587B1 (en) 1996-07-26 2003-05-27 Veon Ltd. System and method and linking information to a video
JP3139615B2 (ja) * 1996-08-08 2001-03-05 日本電信電話株式会社 3次元仮想空間音通信方法とその装置
US6275490B1 (en) 1996-08-21 2001-08-14 Netspeak Corporation Method and apparatus for establishing communications from browser application
US6421047B1 (en) 1996-09-09 2002-07-16 De Groot Marc Multi-user virtual reality system for simulating a three-dimensional environment
US6862625B1 (en) 1996-09-27 2005-03-01 Avaya Technology Corp. Method and apparatus for real time network communication
US5764916A (en) 1996-09-27 1998-06-09 Ichat, Inc. Method and apparatus for real time communication over a computer network
US6057856A (en) 1996-09-30 2000-05-02 Sony Corporation 3D virtual reality multi-user interaction with superimposed positional information display for each user
US5926179A (en) 1996-09-30 1999-07-20 Sony Corporation Three-dimensional virtual reality space display processing apparatus, a three-dimensional virtual reality space display processing method, and an information providing medium
US5890172A (en) 1996-10-08 1999-03-30 Tenretni Dynamics, Inc. Method and apparatus for retrieving data from a network using location identifiers
US6785708B1 (en) 1996-10-30 2004-08-31 Avaya Inc. Method and apparatus for synchronizing browse and chat functions on a computer network
US7263526B1 (en) 1996-10-30 2007-08-28 Avaya Technology Corp. Method and apparatus for embedding chat functions in a web page
US5982372A (en) 1996-11-14 1999-11-09 International Business Machines Corp. Visual metaphor for shortcut navigation in a virtual world
US6335927B1 (en) 1996-11-18 2002-01-01 Mci Communications Corporation System and method for providing requested quality of service in a hybrid network
US7145898B1 (en) 1996-11-18 2006-12-05 Mci Communications Corporation System, method and article of manufacture for selecting a gateway of a hybrid communication system architecture
US6119166A (en) 1997-03-28 2000-09-12 International Business Machines Corporation Controlling communications with local applications using a browser application
US7379961B2 (en) 1997-04-30 2008-05-27 Computer Associates Think, Inc. Spatialized audio in a three-dimensional computer-based scene
US6014145A (en) 1997-07-07 2000-01-11 International Business Machines Corporation Navagation with optimum viewpoints in three-dimensional workspace interactive displays having three-dimensional objects with collision barriers
JP3753207B2 (ja) 1997-08-11 2006-03-08 富士ゼロックス株式会社 共同作業支援システムおよび共同作業支援方法
US6567980B1 (en) 1997-08-14 2003-05-20 Virage, Inc. Video cataloger system with hyperlinked output
US6005578A (en) 1997-09-25 1999-12-21 Mindsphere, Inc. Method and apparatus for visual navigation of information objects
US5862625A (en) * 1997-09-25 1999-01-26 Parker; Barbara A. Expandable-portable trellis systems with hydro application
GB9721667D0 (en) 1997-10-14 1997-12-10 Philips Electronics Nv Virtual environment navigation aid
GB9722343D0 (en) 1997-10-22 1997-12-17 British Telecomm Distributed virtual environment
JPH11177628A (ja) 1997-12-15 1999-07-02 Mitsubishi Electric Corp 広域環境用3次元仮想空間共有システム
JP3855430B2 (ja) 1998-01-23 2006-12-13 ソニー株式会社 情報処理装置および方法、情報処理システム、並びに記録媒体
US6833863B1 (en) 1998-02-06 2004-12-21 Intel Corporation Method and apparatus for still image capture during video streaming operations of a tethered digital camera
US6396509B1 (en) 1998-02-21 2002-05-28 Koninklijke Philips Electronics N.V. Attention-based interaction in a virtual environment
US6275493B1 (en) 1998-04-02 2001-08-14 Nortel Networks Limited Method and apparatus for caching switched virtual circuits in an ATM network
US6426778B1 (en) 1998-04-03 2002-07-30 Avid Technology, Inc. System and method for providing interactive components in motion video
US6380952B1 (en) 1998-04-07 2002-04-30 International Business Machines Corporation System for continuous display and navigation in a virtual-reality world
EP0950956A1 (en) * 1998-04-17 1999-10-20 BRITISH TELECOMMUNICATIONS public limited company Computer network
US6362817B1 (en) 1998-05-18 2002-03-26 In3D Corporation System for creating and viewing 3D environments using symbolic descriptors
US5999206A (en) 1998-05-22 1999-12-07 Futaba Denshi Kogyo Kabushiki Kaisha Device for expanding light-amount correction dynamic range
US5999208A (en) 1998-07-15 1999-12-07 Lucent Technologies Inc. System for implementing multiple simultaneous meetings in a virtual reality mixed media meeting room
US6119147A (en) 1998-07-28 2000-09-12 Fuji Xerox Co., Ltd. Method and system for computer-mediated, multi-modal, asynchronous meetings in a virtual space
US6731314B1 (en) 1998-08-17 2004-05-04 Muse Corporation Network-based three-dimensional multiple-user shared environment apparatus and method
JP2000076487A (ja) 1998-09-03 2000-03-14 Sony Corp 情報処理装置および方法、並びに提供媒体
US8332478B2 (en) 1998-10-01 2012-12-11 Digimarc Corporation Context sensitive connected content
JP3826604B2 (ja) 1998-10-16 2006-09-27 富士ゼロックス株式会社 プレゼンテーション資料のシナリオ生成装置およびシナリオ生成方法
US6389458B2 (en) 1998-10-30 2002-05-14 Ideaflood, Inc. Method, apparatus and system for directing access to content on a computer network
WO2005015880A1 (en) 1998-12-29 2005-02-17 Tpresence, Inc. Computer network architecture for persistent, distributed virtual environments
US6370565B1 (en) 1999-03-01 2002-04-09 Sony Corporation Of Japan Method of sharing computation load within a distributed virtual environment system
US7168048B1 (en) 1999-03-24 2007-01-23 Microsoft Corporation Method and structure for implementing a layered object windows
US7007235B1 (en) 1999-04-02 2006-02-28 Massachusetts Institute Of Technology Collaborative agent interaction control and synchronization system
US6388688B1 (en) 1999-04-06 2002-05-14 Vergics Corporation Graph-based visual navigation through spatial environments
GB2349055B (en) * 1999-04-16 2004-03-24 Mitel Corp Virtual meeting rooms with spatial audio
US6763371B1 (en) 1999-05-10 2004-07-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for collaborative communication in a communication network
US7006616B1 (en) 1999-05-21 2006-02-28 Terayon Communication Systems, Inc. Teleconferencing bridge with EdgePoint mixing
US7222309B2 (en) 1999-06-02 2007-05-22 Earthlink, Inc. System and method of a web browser with integrated features and controls
US7308080B1 (en) 1999-07-06 2007-12-11 Nippon Telegraph And Telephone Corporation Voice communications method, voice communications system and recording medium therefor
US6292188B1 (en) 1999-07-28 2001-09-18 Alltrue Networks, Inc. System and method for navigating in a digital information environment
KR19990078775A (ko) 1999-08-06 1999-11-05 신유진 3차원 가상 현실 공간에서의 전자 상거래 시스템 및 그 방법
US6636242B2 (en) 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
US6480191B1 (en) 1999-09-28 2002-11-12 Ricoh Co., Ltd. Method and apparatus for recording and playback of multidimensional walkthrough narratives
US6772195B1 (en) 1999-10-29 2004-08-03 Electronic Arts, Inc. Chat clusters for a virtual world application
JP2001195491A (ja) 1999-11-02 2001-07-19 Matsushita Electric Works Ltd 住空間関連商品の販売支援方法と課金方法及びそのためのシステムと記録媒体
US7581191B2 (en) 1999-11-15 2009-08-25 Xenogen Corporation Graphical user interface for 3-D in-vivo imaging
JP2001154966A (ja) * 1999-11-29 2001-06-08 Sony Corp コンピュータ・ネットワーク上で構築・提供される共有仮想空間上で複数ユーザが参加可能な仮想会話を支援する会話支援システム及び会話支援方法、並びに、プログラム記憶媒体
US7028267B1 (en) 1999-12-07 2006-04-11 Microsoft Corporation Method and apparatus for capturing and rendering text annotations for non-modifiable electronic content
US6708172B1 (en) 1999-12-22 2004-03-16 Urbanpixel, Inc. Community-based shared multiple browser environment
US20060184886A1 (en) 1999-12-22 2006-08-17 Urbanpixel Inc. Spatial chat in a multiple browser environment
US6721741B1 (en) 2000-01-24 2004-04-13 Friskit, Inc. Streaming media search system
KR100694028B1 (ko) 2000-01-25 2007-03-12 삼성전자주식회사 멀티미디어 파일 작성용 저작장치 및 방법
US7689696B2 (en) 2000-01-31 2010-03-30 Telecommunication Systems, Inc. System and method for re-directing requests from browsers for communications over non-IP based networks
US6559863B1 (en) 2000-02-11 2003-05-06 International Business Machines Corporation System and methodology for video conferencing and internet chatting in a cocktail party style
US20010034740A1 (en) 2000-02-14 2001-10-25 Andruid Kerne Weighted interactive grid presentation system and method for streaming a multimedia collage
US7240093B1 (en) 2000-02-29 2007-07-03 Microsoft Corporation Use of online messaging to facilitate selection of participants in game play
KR100369640B1 (ko) 2000-03-03 2003-01-29 신유진 3차원 가상 현실 공간에서의 박람회 개최 시스템 및 그방법
US6396837B1 (en) 2000-03-03 2002-05-28 3Com Corporation Method and system for mapping virtual connections to asymmetric digital subscriber line latency paths
US7111060B2 (en) 2000-03-14 2006-09-19 Aep Networks, Inc. Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network-connected web browser
US7392306B1 (en) 2000-04-07 2008-06-24 Aol Llc Instant messaging client having an embedded browser
JP3345600B2 (ja) 2000-04-10 2002-11-18 コナミ株式会社 ゲームシステムおよびコンピュータ読取可能な記憶媒体
US6728356B1 (en) 2000-04-14 2004-04-27 Lucent Technologies Inc. Method and apparatus for providing telephony services by switch-based processing of media streams
US8996705B2 (en) 2000-04-17 2015-03-31 Circadence Corporation Optimization of enhanced network links
US7124164B1 (en) 2001-04-17 2006-10-17 Chemtob Helen J Method and apparatus for providing group interaction via communications networks
JP4325075B2 (ja) 2000-04-21 2009-09-02 ソニー株式会社 データオブジェクト管理装置
KR100382854B1 (ko) 2000-05-04 2003-05-09 주식회사 쿼터뷰 아바타행위 기록/재생을 이용한 메시지전달 시스템 및 방법
US6784901B1 (en) 2000-05-09 2004-08-31 There Method, system and computer program product for the delivery of a chat message in a 3D multi-user environment
US20060067500A1 (en) 2000-05-15 2006-03-30 Christofferson Frank C Teleconferencing bridge with edgepoint mixing
IL136408A0 (en) 2000-05-28 2001-06-14 Kaufman Yosef A jigsaw puzzle system
US20010037367A1 (en) * 2000-06-14 2001-11-01 Iyer Sridhar V. System and method for sharing information via a virtual shared area in a communication network
US6714222B1 (en) 2000-06-21 2004-03-30 E2 Home Ab Graphical user interface for communications
JP4657631B2 (ja) 2000-07-28 2011-03-23 株式会社ソニー・コンピュータエンタテインメント 情報提供システム、方法及びコンピュータプログラム
JP3633888B2 (ja) * 2000-07-28 2005-03-30 株式会社ソニー・コンピュータエンタテインメント 情報提供システム、方法及びコンピュータプログラム
US20020026388A1 (en) 2000-08-01 2002-02-28 Chris Roebuck Method of distributing a product, providing incentives to a consumer, and collecting data on the activities of a consumer
US7054508B2 (en) 2000-08-03 2006-05-30 Canon Kabushiki Kaisha Data editing apparatus and method
JP2002149580A (ja) 2000-11-15 2002-05-24 Canon Inc サーバ装置、ユーザ端末装置、仮想空間システム、ユーザ情報配信方法、ユーザ情報表示方法、ユーザ情報配信表示方法、及び記憶媒体
CA2419151C (en) 2000-08-25 2009-09-08 British Telecommunications Public Limited Company Audio data processing
KR20020017558A (ko) 2000-08-31 2002-03-07 김종민 가상 공간 상에서의 북마킹 시스템 및 방법
JP2002083320A (ja) 2000-09-07 2002-03-22 Sony Corp 仮想会話支援システム及び仮想会話支援、並びに記憶媒体
US7036082B1 (en) 2000-09-21 2006-04-25 Nortel Networks Limited Controlling communications through a virtual reality environment
US7203741B2 (en) 2000-10-12 2007-04-10 Peerapp Ltd. Method and system for accelerating receipt of data in a client-to-client network
JP2002123479A (ja) 2000-10-17 2002-04-26 Hitachi Ltd ディスク制御装置およびそのキャッシュ制御方法
JP2002123478A (ja) 2000-10-17 2002-04-26 Isao:Kk チャットシステム、チャット情報処理装置、チャット情報処理方法、および、記録媒体
GB2368223B (en) 2000-10-17 2004-01-07 Hewlett Packard Co Associating parties with communication sessions
US20020083193A1 (en) 2000-11-03 2002-06-27 Henry Terefenko Parallel network data transmission
AU2001238104A1 (en) 2000-11-17 2002-05-27 Wheretheheckisit.Com, Llp Virtual directory
US20030177187A1 (en) 2000-11-27 2003-09-18 Butterfly.Net. Inc. Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications
US20020116458A1 (en) 2000-12-14 2002-08-22 Jonathan Bricklin Web-based dating service
US20020075305A1 (en) 2000-12-18 2002-06-20 Beaton Brian F. Graphical user interface for a virtual team environment
US7925703B2 (en) 2000-12-26 2011-04-12 Numedeon, Inc. Graphical interactive interface for immersive online communities
WO2002057917A2 (en) 2001-01-22 2002-07-25 Sun Microsystems, Inc. Peer-to-peer network computing platform
JP2002224447A (ja) 2001-01-31 2002-08-13 Square Co Ltd ビデオゲーム装置およびその制御方法、ならびにビデオゲームのプログラムおよびそのプログラムを記録したコンピュータ読取り可能な記録媒体。
US7904194B2 (en) 2001-02-09 2011-03-08 Roy-G-Biv Corporation Event management systems and methods for motion control systems
US7076503B2 (en) 2001-03-09 2006-07-11 Microsoft Corporation Managing media objects in a database
US20080059571A1 (en) * 2001-03-14 2008-03-06 Khoo Soon H Displaying Advertising Messages in the Unused Portion and During a Context Switch Period of a Web Browser Display Interface
US20020165922A1 (en) 2001-04-13 2002-11-07 Songxiang Wei Application based screen sampling
US20020178072A1 (en) 2001-05-24 2002-11-28 International Business Machines Corporation Online shopping mall virtual association
US20020188959A1 (en) 2001-06-12 2002-12-12 Koninklijke Philips Electronics N.V. Parallel and synchronized display of augmented multimedia information
US20030002634A1 (en) 2001-06-29 2003-01-02 Virad Gupta Event notification in a unified message system using an event notification server
US7133900B1 (en) 2001-07-06 2006-11-07 Yahoo! Inc. Sharing and implementing instant messaging environments
US7203753B2 (en) 2001-07-31 2007-04-10 Sun Microsystems, Inc. Propagating and updating trust relationships in distributed peer-to-peer networks
WO2003015057A1 (en) 2001-08-09 2003-02-20 Information Decision Technologies Llc Augmented reality-based firefighter training system and method
US20030043200A1 (en) 2001-08-09 2003-03-06 Urbanpixel Inc Interactive multi-level mapping in a multiple browser environment
JP2003058482A (ja) 2001-08-14 2003-02-28 Fujitsu Ltd エリアチャットルーム提供方法,端末側エリアチャット処理方法,エリアチャットルーム提供処理プログラム記録媒体,エリアチャットルーム提供装置
JP2003067317A (ja) * 2001-08-30 2003-03-07 Fuji Xerox Co Ltd メッセージ交換方法、コンピュータ、管理装置、記録媒体
US7660875B2 (en) 2001-08-31 2010-02-09 Sony Corporation Bidirectional remote communication via browser plug-in
US20030065558A1 (en) 2001-09-12 2003-04-03 Cameron Shaw Method and apparatus for multi-vendor powered business portal with intelligent service promotion and user profile gathering
US7284201B2 (en) 2001-09-20 2007-10-16 Koninklijke Philips Electronics N.V. User attention-based adaptation of quality level to improve the management of real-time multi-media content delivery and distribution
US20030077561A1 (en) 2001-10-18 2003-04-24 Abraham Alsop Web server for printable whiteboards
US7415502B2 (en) 2001-11-16 2008-08-19 Sbc Technology Resources, Inc. Method and system for intelligent routing based on presence detection
US7673246B2 (en) 2001-12-12 2010-03-02 Canon Kabushiki Kaisha Image information processing apparatus and method, virtual space presentation apparatus, information administration apparatus, and control methods thereof
US7644144B1 (en) 2001-12-21 2010-01-05 Microsoft Corporation Methods, tools, and interfaces for the dynamic assignment of people to groups to enable enhanced communication and collaboration
KR100453225B1 (ko) 2001-12-26 2004-10-15 한국전자통신연구원 3차원 가상 현실 구현을 위한 클라이언트 시스템과 이를이용한 가상 현실 구현 방법
WO2003058518A2 (en) 2002-01-07 2003-07-17 Stephen James Crampton Method and apparatus for an avatar user interface system
AUPR989802A0 (en) 2002-01-09 2002-01-31 Lake Technology Limited Interactive spatialized audiovisual system
US7058896B2 (en) 2002-01-16 2006-06-06 Silicon Graphics, Inc. System, method and computer program product for intuitive interactive navigation control in virtual environments
JP3829722B2 (ja) 2002-01-23 2006-10-04 ソニー株式会社 情報処理装置および方法、並びにプログラム
US7051049B2 (en) 2002-02-21 2006-05-23 International Business Machines Corporation Real-time chat and conference contact information manager
US7689667B2 (en) 2002-02-21 2010-03-30 International Business Machines Corporation Protocol to fix broken links on the world wide web
US7336779B2 (en) 2002-03-15 2008-02-26 Avaya Technology Corp. Topical dynamic chat
US20030177019A1 (en) 2002-03-18 2003-09-18 Santos Richard A. System and method for visual representation of an electroni community
US20040128350A1 (en) 2002-03-25 2004-07-01 Lou Topfl Methods and systems for real-time virtual conferencing
US7263660B2 (en) 2002-03-29 2007-08-28 Microsoft Corporation System and method for producing a video skim
US7418664B2 (en) 2002-04-03 2008-08-26 Microsoft Corporation Application sharing single document sharing
US7062712B2 (en) 2002-04-09 2006-06-13 Fuji Xerox Co., Ltd. Binding interactive multichannel digital document system
US7483945B2 (en) 2002-04-19 2009-01-27 Akamai Technologies, Inc. Method of, and system for, webcasting with just-in-time resource provisioning, automated telephone signal acquisition and streaming, and fully-automated event archival
US7036089B2 (en) 2002-04-23 2006-04-25 Hewlett-Packard Development Company, L.P. Distribution of application windows in a computing device display
US7711847B2 (en) 2002-04-26 2010-05-04 Sony Computer Entertainment America Inc. Managing users in a multi-user network game environment
US7016978B2 (en) 2002-04-29 2006-03-21 Bellsouth Intellectual Property Corporation Instant messaging architecture and system for interoperability and presence management
US6976846B2 (en) 2002-05-08 2005-12-20 Accenture Global Services Gmbh Telecommunications virtual simulator
US7640300B2 (en) 2002-06-10 2009-12-29 Microsoft Corporation Presence and notification system for maintaining and communicating information
US8161411B2 (en) 2003-04-25 2012-04-17 Apple Inc. Graphical user interface for browsing, searching and presenting media items
GB2391420A (en) 2002-07-25 2004-02-04 Samsung Electronics Co Ltd Method for serving audio and image communication in web browser using session initiation protocol
KR20040011825A (ko) 2002-07-30 2004-02-11 김동현 인터넷 망을 기반으로 한 가상백화점 관리 시스템 및 그관리 방법
US7802008B2 (en) * 2002-08-12 2010-09-21 Matsushita Electric Industrial Co., Ltd. Quality of service management in network gateways
US20040210634A1 (en) 2002-08-23 2004-10-21 Miguel Ferrer Method enabling a plurality of computer users to communicate via a set of interconnected terminals
US7844662B2 (en) 2002-10-17 2010-11-30 At&T Intellectual Property Ii, L.P. Merging instant messaging (IM) chat sessions
US7035942B2 (en) 2002-09-17 2006-04-25 Bellsouth Intellectual Property Corp. Server-based message protocol translation
US7434167B2 (en) 2002-09-30 2008-10-07 Microsoft Corporation Accessibility system and method
US6724416B1 (en) 2002-10-01 2004-04-20 Jianxin Liu Image transceiving telephone with integrated digital camera
JP2004135051A (ja) 2002-10-10 2004-04-30 Sony Corp 情報処理システム、サービス提供装置および方法、情報処理装置および方法、記録媒体、並びにプログラム
KR20050061548A (ko) * 2002-10-21 2005-06-22 코닌클리케 필립스 일렉트로닉스 엔.브이. 사용자 그룹 또는 사용자에게 미디어 컨텐츠를 제공하는방법 및 시스템
US8176186B2 (en) 2002-10-30 2012-05-08 Riverbed Technology, Inc. Transaction accelerator for client-server communications systems
WO2004045154A1 (en) 2002-11-13 2004-05-27 Intel Corporation Multi-modal web interaction over wireless network
US7636755B2 (en) 2002-11-21 2009-12-22 Aol Llc Multiple avatar personalities
US7386799B1 (en) * 2002-11-21 2008-06-10 Forterra Systems, Inc. Cinematic techniques in avatar-centric communication during a multi-user online simulation
US7298834B1 (en) 2002-11-22 2007-11-20 3Com Corporation System and method for large capacity conference calls
US7676542B2 (en) 2002-12-02 2010-03-09 Sap Ag Establishing a collaboration environment
US7474741B2 (en) 2003-01-20 2009-01-06 Avaya Inc. Messaging advise in presence-aware networks
US20040158610A1 (en) 2003-02-10 2004-08-12 Davis Joel A. Client proxying for instant messaging
US20040179039A1 (en) 2003-03-03 2004-09-16 Blattner Patrick D. Using avatars to communicate
JP2004272579A (ja) 2003-03-07 2004-09-30 Toshiba Corp オンラインサービス提供システム、コミュニケーション管理装置とそのプログラム、ならびにコミュニケーション管理方法
US7200675B2 (en) 2003-03-13 2007-04-03 Microsoft Corporation Summary-based routing for content-based event distribution networks
CA2525939C (en) 2003-05-16 2015-09-22 Picasa, Inc. Networked chat and media sharing systems and methods
US8347313B2 (en) 2003-05-21 2013-01-01 Resilient Networks, Inc. Method and apparatus for automating organization of processes
JP4331203B2 (ja) 2003-06-04 2009-09-16 株式会社ソニー・コンピュータエンタテインメント ピアツーピアネットワークのためのコンテンツ分散型オーバーレイネットワーク
US8001187B2 (en) 2003-07-01 2011-08-16 Apple Inc. Peer-to-peer active content sharing
US7467356B2 (en) 2003-07-25 2008-12-16 Three-B International Limited Graphical user interface for 3d virtual display browser using virtual display windows
DE602004026232D1 (de) 2003-09-16 2010-05-06 Research In Motion Ltd Verfahren zur Erzeugung einer Peer-to-Peer-Sofortmitteilungslösung ohne die Verwendung eines Instant-Messaging-Servers
US7503006B2 (en) 2003-09-25 2009-03-10 Microsoft Corporation Visual indication of current voice speaker
US7813488B2 (en) 2003-09-29 2010-10-12 Siemens Enterprise Communications, Inc. System and method for providing information regarding an identity's media availability
US20050080866A1 (en) 2003-10-14 2005-04-14 Kent Larry G. Selectively displaying time indications for instant messaging (IM) messages
US8528003B2 (en) 2003-10-27 2013-09-03 Yahoo! Inc. Communication among browser windows
US7975035B2 (en) 2003-12-01 2011-07-05 International Business Machines Corporation Method and apparatus to support application and network awareness of collaborative applications using multi-attribute clustering
ITPI20030101A1 (it) 2003-12-05 2005-06-06 Cdc Srl Metodo ed apparato per la gestione della globalita'
US7305438B2 (en) 2003-12-09 2007-12-04 International Business Machines Corporation Method and system for voice on demand private message chat
US7433885B2 (en) 2003-12-15 2008-10-07 Quantum Matrix Holdings, Llc System and method for multi-dimensional organization, management, and manipulation of data
US7734691B2 (en) 2003-12-18 2010-06-08 International Business Machines Corporation Providing collaboration services to a wireless device
JP2005182331A (ja) 2003-12-18 2005-07-07 Sony Corp 情報処理システム、サービス提供装置および方法、情報処理装置および方法、並びに、プログラムおよび記録媒体
US7707503B2 (en) 2003-12-22 2010-04-27 Palo Alto Research Center Incorporated Methods and systems for supporting presentation tools using zoomable user interface
US7852997B2 (en) 2004-01-28 2010-12-14 Managed Inventions, Llc Internet telephony communications adapter for web browsers
EP1719081B1 (en) 2004-01-30 2013-09-04 Telefonaktiebolaget L M Ericsson (Publ) Prioritising data elements of a data stream
US7478402B2 (en) 2004-02-12 2009-01-13 Microsoft Corporation Configurable message pipelines
US7800614B2 (en) 2004-02-17 2010-09-21 Oracle America, Inc. Efficient communication in a client-server scene graph system
US7985138B2 (en) 2004-02-17 2011-07-26 International Business Machines Corporation SIP based VoIP multiplayer network games
KR100566263B1 (ko) 2004-03-26 2006-03-29 삼성전자주식회사 스케쥴 내용에 따라 메신저 상태 정보를 변경하는 메신저서비스 제공 시스템 및 방법
JP2005286749A (ja) 2004-03-30 2005-10-13 Matsushita Electric Ind Co Ltd 映像復号化装置およびそれを用いた映像伝送システム
US7808900B2 (en) 2004-04-12 2010-10-05 Samsung Electronics Co., Ltd. Method, apparatus, and medium for providing multimedia service considering terminal capability
US20060031779A1 (en) 2004-04-15 2006-02-09 Citrix Systems, Inc. Selectively sharing screen data
US7908663B2 (en) 2004-04-20 2011-03-15 Microsoft Corporation Abstractions and automation for enhanced sharing and collaboration
JP2005326987A (ja) 2004-05-13 2005-11-24 Sony Corp オーディオ信号伝送システム、オーディオ信号伝送方法、サーバー、ネットワーク端末装置、プログラム及び記録媒体
US7546342B2 (en) 2004-05-14 2009-06-09 Microsoft Corporation Distributed hosting of web content using partial replication
US7529690B2 (en) 2004-05-22 2009-05-05 Altaf Hadi System and method for delivering real time remote buying, selling, meeting, and interacting in a virtual reality environment
US7860922B2 (en) 2004-08-18 2010-12-28 Time Warner, Inc. Method and device for the wireless exchange of media content between mobile devices based on content preferences
US20060048064A1 (en) 2004-08-31 2006-03-02 Microsoft Corporation Ambient display of data in a user interface
US7707249B2 (en) 2004-09-03 2010-04-27 Open Text Corporation Systems and methods for collaboration
US7945619B1 (en) 2004-09-20 2011-05-17 Jitendra Chawla Methods and apparatuses for reporting based on attention of a user during a collaboration session
US7995064B2 (en) 2004-10-12 2011-08-09 Imvu, Inc. Computer-implemented chat system having dual channel communications and self-defining product structures
US7342587B2 (en) 2004-10-12 2008-03-11 Imvu, Inc. Computer-implemented system and method for home page customization and e-commerce support
US7711681B2 (en) 2004-11-05 2010-05-04 Accenture Global Services Gmbh System for distributed information presentation and interaction
EP1820159A1 (en) 2004-11-12 2007-08-22 MOK3, Inc. Method for inter-scene transitions
KR20060060788A (ko) 2004-11-30 2006-06-05 전경열 캐릭터를 이용한 가상현실 시스템 및 가상현실 구현방법
ATE443308T1 (de) 2005-01-26 2009-10-15 Alcatel Lucent Verfahren zum absetzen eines notrufes in einem lokalen informationsnetz, endgerät, netzübergänge und servereinrichtung für ein solches verfahren
US7460495B2 (en) 2005-02-23 2008-12-02 Microsoft Corporation Serverless peer-to-peer multi-party real-time audio communication system and method
EP1710973A1 (en) 2005-04-06 2006-10-11 Alcatel Specific stream redirection of a multimedia telecommunication
US20060242235A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Presence monitoring in a serverless peer-to-peer system
US20060244818A1 (en) 2005-04-28 2006-11-02 Comotiv Systems, Inc. Web-based conferencing system
US7506264B2 (en) 2005-04-28 2009-03-17 International Business Machines Corporation Method and apparatus for presenting navigable data center information in virtual reality using leading edge rendering engines
US20070064851A1 (en) 2005-09-02 2007-03-22 Sbc Knowledge Ventures Lp Method for synchronizing a customer edge router or customer premise equipment associated therewith
US7396281B2 (en) 2005-06-24 2008-07-08 Disney Enterprises, Inc. Participant interaction with entertainment in real and virtual environments
KR100686382B1 (ko) 2005-07-08 2007-02-22 엔에이치엔(주) 싱크 서버를 이용한 메신저 알림 시스템 및 방법
US7734692B1 (en) 2005-07-22 2010-06-08 Oracle America, Inc. Network collaboration system with private voice chat
US8588210B2 (en) 2005-07-22 2013-11-19 Motorola Solutions, Inc. Method and apparatus for floor control in a communication system
US20070050838A1 (en) 2005-08-25 2007-03-01 Derek Liu Multi-protocol game engine
US7925000B2 (en) 2005-08-29 2011-04-12 Avaya Inc. Managing held telephone calls from a remote telecommunications terminal
JP2007072739A (ja) 2005-09-07 2007-03-22 Hitachi Communication Technologies Ltd 多地点会議システム、多地点会議装置およびクライアント端末
WO2007033354A2 (en) 2005-09-13 2007-03-22 Spacetime3D, Inc. System and method for providing three-dimensional graphical user interface
US20080214204A1 (en) 2005-11-01 2008-09-04 Jorey Ramer Similarity based location mapping of mobile comm facility users
US9454735B2 (en) 2005-09-26 2016-09-27 Nokia Corporation Integrating data with a contact
US20070077993A1 (en) 2005-09-30 2007-04-05 Midgley Timothy M Method and apparatus for collecting user game play data and crediting users in a gaming environment
US20070094325A1 (en) * 2005-10-21 2007-04-26 Nucleoid Corp. Hybrid peer-to-peer data communication and management
US20070098238A1 (en) 2005-10-31 2007-05-03 Pere Obrador Imaging methods, imaging systems, and articles of manufacture
US7827288B2 (en) 2005-12-08 2010-11-02 International Business Machines Corporation Model autocompletion for composite services synchronization
US20070133436A1 (en) 2005-12-09 2007-06-14 Sun Microsystems, Inc. Audio bridge for network conferencing
US7489772B2 (en) 2005-12-30 2009-02-10 Nokia Corporation Network entity, method and computer program product for effectuating a conference session
JP4643454B2 (ja) 2006-01-10 2011-03-02 株式会社東芝 動画像復号装置及び動画像復号方法
US8266214B2 (en) 2006-01-24 2012-09-11 Simulat, Inc. System and method for collaborative web-based multimedia layered platform with recording and selective playback of content
US7643436B2 (en) 2006-02-01 2010-01-05 Sun Microsystems, Inc. Apparatus and method for combining network conferences that are not co-located
US8185437B2 (en) 2007-07-12 2012-05-22 Utbk, Inc. Systems and methods to provide communication connections via partners
US20070184855A1 (en) 2006-02-03 2007-08-09 Research In Motion Limited Visual representation of contact location
US20070192427A1 (en) 2006-02-16 2007-08-16 Viktors Berstis Ease of use feature for audio communications within chat conferences
US20080086696A1 (en) 2006-03-03 2008-04-10 Cadcorporation.Com Inc. System and Method for Using Virtual Environments
JP4617268B2 (ja) 2006-03-14 2011-01-19 キヤノン株式会社 記憶装置および記憶装置の処理方法
US20070220111A1 (en) 2006-03-15 2007-09-20 Andrew Lin Personal communications browser client for remote use in enterprise communications
US20070286366A1 (en) 2006-03-17 2007-12-13 Scott Deboy Chat presence system
US7567844B2 (en) 2006-03-17 2009-07-28 Honeywell International Inc. Building management system
US8478859B2 (en) 2006-03-22 2013-07-02 Cisco Technology, Inc. Providing an aggregate reachability status
DE102007010127A1 (de) 2006-03-22 2007-10-04 Mediatek Inc. Verfahren zum Verbessern der Leistung der Dienste eines Multi-Task Systems und ein entsprechendes Multi-Task System
US20070233785A1 (en) 2006-03-30 2007-10-04 International Business Machines Corporation Communicating using collaboration spaces
AU2006341412B2 (en) 2006-03-31 2011-06-16 Heulab Pte Ltd Instant message for a virtual learning community
US8199761B2 (en) 2006-04-20 2012-06-12 Nokia Corporation Communications multiplexing with packet-communication networks
KR20070105088A (ko) 2006-04-25 2007-10-30 함현주 캐릭터를 기반으로 하는 쇼핑몰 시스템 및 운영방법
US20080052373A1 (en) 2006-05-01 2008-02-28 Sms.Ac Systems and methods for a community-based user interface
US8223186B2 (en) 2006-05-31 2012-07-17 Hewlett-Packard Development Company, L.P. User interface for a video teleconference
US20080091692A1 (en) 2006-06-09 2008-04-17 Christopher Keith Information collection in multi-participant online communities
US7643459B2 (en) 2006-06-16 2010-01-05 Alcatel-Lucent Usa Inc. Methods, devices and architectures for establishing peer-to-peer sessions
US20070291034A1 (en) 2006-06-20 2007-12-20 Dones Nelson C System for presenting a navigable virtual subway system, and method for operating and using the same
US7734705B1 (en) 2006-06-21 2010-06-08 Wheeler Jr Roland E System and method for flexibly managing heterogeneous message delivery
US20070299778A1 (en) * 2006-06-22 2007-12-27 Microsoft Corporation Local peer-to-peer digital content distribution
US7680480B2 (en) 2006-07-20 2010-03-16 Avaya Inc. Determining user availability based on a past event
US7680098B2 (en) 2006-07-20 2010-03-16 Avaya Inc. Determining group availability on different communication media
US8295206B2 (en) 2006-07-20 2012-10-23 Avaya Inc. Rule-based system for determining user availability
US7616624B2 (en) 2006-07-20 2009-11-10 Avaya Inc. Determining user availability based on the expected duration of a new event
US8869027B2 (en) 2006-08-04 2014-10-21 Apple Inc. Management and generation of dashboards
US20080033941A1 (en) 2006-08-07 2008-02-07 Dale Parrish Verfied network identity with authenticated biographical information
US7991401B2 (en) 2006-08-08 2011-08-02 Samsung Electronics Co., Ltd. Apparatus, a method, and a system for animating a virtual scene
US8743703B2 (en) 2006-08-22 2014-06-03 Centurylink Intellectual Property Llc System and method for tracking application resource usage
US8374092B2 (en) 2006-08-28 2013-02-12 Cisco Technology, Inc. Technique for protecting against failure of a network element using multi-topology repair routing (MTRR)
US8726195B2 (en) 2006-09-05 2014-05-13 Aol Inc. Enabling an IM user to navigate a virtual world
US7958453B1 (en) 2006-09-29 2011-06-07 Len Bou Taing System and method for real-time, multi-user, interactive and collaborative environments on the web
US20080208605A1 (en) 2006-10-20 2008-08-28 Citrix Systems, Inc. Systems and methods for responding to the occurrence of an event
CN101170572A (zh) 2006-10-23 2008-04-30 日电(中国)有限公司 基于p2p sip技术实现的多媒体网络通信系统
US20080098123A1 (en) 2006-10-24 2008-04-24 Microsoft Corporation Hybrid Peer-to-Peer Streaming with Server Assistance
EP2098010A1 (en) 2006-11-30 2009-09-09 WANLESS, James Andrew A method and system for providing automated real-time contact information
US7765259B2 (en) 2006-12-05 2010-07-27 Avaya Inc. System and method for aggregation of user conversations and visualizing personal communications map
US8706169B2 (en) 2006-12-28 2014-04-22 Yahoo! Inc. Interface overlay
US8654954B2 (en) 2007-01-03 2014-02-18 Alcatel Lucent System and method for controlling access to conference calls
US8554868B2 (en) 2007-01-05 2013-10-08 Yahoo! Inc. Simultaneous sharing communication interface
US7696992B2 (en) 2007-01-16 2010-04-13 Motorola, Inc. Method and apparatus to facilitate multi-setting virtual reality experiences
CN101237336B (zh) 2007-02-01 2011-10-05 华为技术有限公司 进行多方通信的方法、系统及装置
US9530142B2 (en) 2007-02-13 2016-12-27 Claudia Juliana Minsky Method and system for creating a multifunctional collage useable for client/server communication
US20080209075A1 (en) 2007-02-22 2008-08-28 Yahoo! Inc. Synchronous delivery of media content and real-time communication for online dating
WO2008106196A1 (en) 2007-03-01 2008-09-04 Sony Computer Entertainment America Inc. Virtual world avatar control, interactivity and communication interactive messaging
US20080215994A1 (en) 2007-03-01 2008-09-04 Phil Harrison Virtual world avatar control, interactivity and communication interactive messaging
JP2010533006A (ja) 2007-03-01 2010-10-21 ソニー コンピュータ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー 仮想世界とコミュニケーションを取るためのシステムおよび方法
GB0703974D0 (en) 2007-03-01 2007-04-11 Sony Comp Entertainment Europe Entertainment device
US8437281B2 (en) 2007-03-27 2013-05-07 Cisco Technology, Inc. Distributed real-time data mixing for conferencing
US8135018B1 (en) 2007-03-29 2012-03-13 Qurio Holdings, Inc. Message propagation in a distributed virtual world
FR2914523B1 (fr) 2007-03-30 2009-09-25 Thales Sa Procede et systeme de routage multipologie.
US20080250115A1 (en) 2007-04-04 2008-10-09 Vaidy Iyer Enterprise Notification System
US20080252637A1 (en) 2007-04-14 2008-10-16 Philipp Christian Berndt Virtual reality-based teleconferencing
US8601386B2 (en) * 2007-04-20 2013-12-03 Ingenio Llc Methods and systems to facilitate real time communications in virtual reality
US20080263460A1 (en) 2007-04-20 2008-10-23 Utbk, Inc. Methods and Systems to Connect People for Virtual Meeting in Virtual Reality
US20080262911A1 (en) 2007-04-20 2008-10-23 Utbk, Inc. Methods and Systems to Search in Virtual Reality for Real Time Communications
US20080262910A1 (en) 2007-04-20 2008-10-23 Utbk, Inc. Methods and Systems to Connect People via Virtual Reality for Real Time Communications
US8000328B1 (en) * 2007-05-22 2011-08-16 Qurio Holdings, Inc. Filtering messages in a distributed virtual world based on virtual space properties
US7840668B1 (en) 2007-05-24 2010-11-23 Avaya Inc. Method and apparatus for managing communication between participants in a virtual environment
US20080301557A1 (en) 2007-06-04 2008-12-04 Igor Kotlyar Systems, methods and software products for online dating
WO2009000028A1 (en) 2007-06-22 2008-12-31 Global Coordinate Software Limited Virtual 3d environments
EP2179549B1 (en) 2007-08-09 2012-03-21 Markport Limited Network resource management
JP5163007B2 (ja) * 2007-08-15 2013-03-13 ソニー株式会社 ズームレンズ及び撮像装置
US20090077475A1 (en) * 2007-09-17 2009-03-19 Areae, Inc. System for providing virtual spaces with separate places and/or acoustic areas
US8243116B2 (en) 2007-09-24 2012-08-14 Fuji Xerox Co., Ltd. Method and system for modifying non-verbal behavior for social appropriateness in video conferencing and other computer mediated communications
US20090089685A1 (en) 2007-09-28 2009-04-02 Mordecai Nicole Y System and Method of Communicating Between A Virtual World and Real World
US8245241B2 (en) 2007-10-02 2012-08-14 International Business Machines Corporation Arrangements for interactivity between a virtual universe and the world wide web
US8209384B2 (en) 2007-10-23 2012-06-26 Yahoo! Inc. Persistent group-based instant messaging
US8930472B2 (en) 2007-10-24 2015-01-06 Social Communications Company Promoting communicant interactions in a network communications environment
US8407605B2 (en) 2009-04-03 2013-03-26 Social Communications Company Application sharing
US20090288007A1 (en) 2008-04-05 2009-11-19 Social Communications Company Spatial interfaces for realtime networked communications
US9357025B2 (en) 2007-10-24 2016-05-31 Social Communications Company Virtual area based telephony communications
US8732236B2 (en) 2008-12-05 2014-05-20 Social Communications Company Managing network communications between network nodes and stream transport protocol
US7844724B2 (en) 2007-10-24 2010-11-30 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US7769806B2 (en) 2007-10-24 2010-08-03 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US20090112997A1 (en) 2007-10-25 2009-04-30 Cisco Technology, Inc. Utilizing Presence Data Associated with Web Item
US20090113314A1 (en) 2007-10-30 2009-04-30 Dawson Christopher J Location and placement of avatars in virtual worlds
US20090128567A1 (en) 2007-11-15 2009-05-21 Brian Mark Shuster Multi-instance, multi-user animation with coordinated chat
JP5258020B2 (ja) 2008-01-25 2013-08-07 インターナショナル・ビジネス・マシーンズ・コーポレーション 通信を制御する技術
US8739180B2 (en) 2008-01-25 2014-05-27 International Business Machines Corporation Processing of MTOM messages
US8584024B2 (en) 2008-02-01 2013-11-12 International Business Machines Corporation Avatar cloning in a virtual world
CN101499080A (zh) 2008-02-01 2009-08-05 网秦无限(北京)科技有限公司 在移动终端上快捷获取信息服务的方法和系统
US20090222742A1 (en) 2008-03-03 2009-09-03 Cisco Technology, Inc. Context sensitive collaboration environment
US20090234948A1 (en) 2008-03-11 2009-09-17 Garbow Zachary A Using Multiple Servers to Divide a Virtual World
US8605863B1 (en) 2008-03-18 2013-12-10 Avaya Inc. Method and apparatus for providing state indication on a telephone call
KR101467767B1 (ko) 2008-03-31 2014-12-03 엘지전자 주식회사 단말기 및 이것의 인스턴트 메시징 서비스 수행 방법
US8531447B2 (en) 2008-04-03 2013-09-10 Cisco Technology, Inc. Reactive virtual environment
US8312380B2 (en) 2008-04-04 2012-11-13 Yahoo! Inc. Local map chat
CN102084354A (zh) 2008-04-05 2011-06-01 社会传播公司 基于共享虚拟区域通信环境的装置和方法
US20120246582A1 (en) 2008-04-05 2012-09-27 Social Communications Company Interfacing with a spatial virtual communications environment
US20090259948A1 (en) 2008-04-15 2009-10-15 Hamilton Ii Rick A Surrogate avatar control in a virtual universe
FI123499B (fi) 2008-05-05 2013-06-14 Sensinode Oy Menetelmä ja laite viestien prosessoimiseksi
US9268454B2 (en) 2008-05-14 2016-02-23 International Business Machines Corporation Trigger event based data feed of virtual universe data
US8248404B2 (en) 2008-05-19 2012-08-21 International Business Machines Corporation Event determination in a virtual universe
US8042051B2 (en) 2008-05-30 2011-10-18 International Business Machines Corporation Apparatus for navigation and interaction in a virtual meeting place
US20090307189A1 (en) 2008-06-04 2009-12-10 Cisco Technology, Inc. Asynchronous workflow participation within an immersive collaboration environment
US8365076B2 (en) 2008-06-10 2013-01-29 International Business Machines Corporation System for concurrently managing multiple avatars
US7576542B1 (en) * 2008-06-26 2009-08-18 General Electric Co. System and apparatus for providing electrical and cooling interconnections in a magnetic resonance imaging (MRI) system
US20100058202A1 (en) 2008-08-28 2010-03-04 Mohamed Rostom Method system and program product for providing enabling an interactive and social search engine
US8082245B2 (en) 2008-09-11 2011-12-20 International Business Machines Corporation Providing location information within a virtual world
US9384469B2 (en) 2008-09-22 2016-07-05 International Business Machines Corporation Modifying environmental chat distance based on avatar population density in an area of a virtual world
US8468253B2 (en) 2008-12-02 2013-06-18 At&T Intellectual Property I, L.P. Method and apparatus for multimedia collaboration using a social network system
EP2377089A2 (en) 2008-12-05 2011-10-19 Social Communications Company Managing interactions in a network communications environment
KR20110106869A (ko) 2008-12-05 2011-09-29 소우셜 커뮤니케이션즈 컴퍼니 퍼베이시브 실시간 프레임워크
CN102362269B (zh) 2008-12-05 2016-08-17 社会传播公司 实时内核
US20100162121A1 (en) 2008-12-22 2010-06-24 Nortel Networks Limited Dynamic customization of a virtual world
US8542232B2 (en) 2008-12-28 2013-09-24 Avaya Inc. Method and apparatus for monitoring user attention with a computer-generated virtual environment
US20100169796A1 (en) 2008-12-28 2010-07-01 Nortel Networks Limited Visual Indication of Audio Context in a Computer-Generated Virtual Environment
US20110004701A1 (en) 2008-12-29 2011-01-06 Debashish Panda Provisioning highly available services for integrated enterprise and communication
US9064023B2 (en) 2008-12-29 2015-06-23 Avaya Inc. Providing web content in the context of a virtual environment
US20100169799A1 (en) 2008-12-30 2010-07-01 Nortel Networks Limited Method and Apparatus for Enabling Presentations to Large Numbers of Users in a Virtual Environment
US8424075B1 (en) 2008-12-31 2013-04-16 Qurio Holdings, Inc. Collaborative firewall for a distributed virtual environment
US9065874B2 (en) 2009-01-15 2015-06-23 Social Communications Company Persistent network resource and virtual area associations for realtime collaboration
US8453062B2 (en) 2009-02-13 2013-05-28 International Business Machines Corporation Virtual world viewer
US20100228560A1 (en) 2009-03-04 2010-09-09 Avaya Inc. Predictive buddy list-reorganization based on call history information
US8275623B2 (en) 2009-03-06 2012-09-25 At&T Intellectual Property I, L.P. Method and apparatus for analyzing discussion regarding media programs
US8499085B2 (en) 2009-03-16 2013-07-30 Avaya, Inc. Advanced availability detection
US8386255B2 (en) 2009-03-17 2013-02-26 Avaya Inc. Providing descriptions of visually presented information to video teleconference participants who are not video-enabled
US20100246570A1 (en) 2009-03-24 2010-09-30 Avaya Inc. Communications session preparation method and apparatus
JP5669418B2 (ja) 2009-03-30 2015-02-12 アバイア インク. グラフィカルな接続表示を用いて通信セッションを要求する来入するリクエストを管理するシステムと方法。
US20100262550A1 (en) 2009-04-08 2010-10-14 Avaya Inc. Inter-corporate collaboration overlay solution for professional social networks
US8396960B2 (en) 2009-05-08 2013-03-12 Canon Kabushiki Kaisha Efficient network utilization using multiple physical interfaces
US8051195B1 (en) 2009-06-04 2011-11-01 Qurio Holdings, Inc. Method and system for providing data streams in a virtual environment
US20100325206A1 (en) 2009-06-18 2010-12-23 Umeshwar Dayal Providing collaborative business intelligence
US8442189B2 (en) 2009-06-22 2013-05-14 Avaya Inc. Unified communications appliance
US7921150B1 (en) 2009-10-23 2011-04-05 Eastman Kodak Company Method for viewing videos on distributed networks
US8924261B2 (en) 2009-10-30 2014-12-30 Etsy, Inc. Method for performing interactive online shopping
US20110169927A1 (en) 2010-01-13 2011-07-14 Coco Studios Content Presentation in a Three Dimensional Environment
US20110231781A1 (en) 2010-03-19 2011-09-22 International Business Machines Corporation System and method for virtual object sharing and management in virtual worlds
US8689307B2 (en) 2010-03-19 2014-04-01 Damaka, Inc. System and method for providing a virtual peer-to-peer environment
JP5204155B2 (ja) 2010-06-21 2013-06-05 株式会社スクウェア・エニックス ビデオゲームシステム
WO2012034044A2 (en) 2010-09-11 2012-03-15 Social Communications Company Relationship based presence indicating in virtual area contexts
US8863256B1 (en) 2011-01-14 2014-10-14 Cisco Technology, Inc. System and method for enabling secure transactions using flexible identity management in a vehicular environment
US9270784B2 (en) 2011-02-16 2016-02-23 Masque Publishing, Inc. Peer-to-peer communications
WO2012135231A2 (en) 2011-04-01 2012-10-04 Social Communications Company Creating virtual areas for realtime communications
US8612279B2 (en) 2011-06-27 2013-12-17 Cisco Technology, Inc. Ad hoc generation of work item entity for geospatial entity based on symbol manipulation language-based workflow item
EP2745462B1 (en) 2011-08-18 2021-10-20 Pfaqutruma Research LLC Systems and methods of virtual world interaction
US8935328B2 (en) 2011-09-15 2015-01-13 Ramakrishna J Tumuluri System and method for collaborative 3D visualization and real-time interaction on a computer network
WO2013039748A2 (en) 2011-09-16 2013-03-21 Social Communications Company Capabilities based management of virtual areas
US9311160B2 (en) 2011-11-10 2016-04-12 Verizon Patent And Licensing Inc. Elastic cloud networking
WO2013078062A1 (en) 2011-11-23 2013-05-30 Social Communications Company Creating and managing virtual areas
WO2013119802A1 (en) 2012-02-11 2013-08-15 Social Communications Company Routing virtual area based communications
EP2785007B1 (en) 2013-03-28 2015-09-16 British Telecommunications public limited company Managing streamed communication
US9137162B2 (en) 2013-07-23 2015-09-15 Sap Se Network traffic routing optimization
US11245588B2 (en) 2013-10-30 2022-02-08 Micro Focus Llc Modifying realized topologies
WO2015094039A1 (en) 2013-12-18 2015-06-25 Telefonaktiebolaget L M Ericsson (Publ) Method and network node for selecting a media processing unit

Also Published As

Publication number Publication date
US11595460B2 (en) 2023-02-28
US20090113066A1 (en) 2009-04-30
MY152413A (en) 2014-09-30
US20120159354A1 (en) 2012-06-21
US20180020032A1 (en) 2018-01-18
EP2208313A1 (en) 2010-07-21
US10659511B2 (en) 2020-05-19
IL205287A0 (en) 2010-12-30
EP2208313A4 (en) 2013-09-11
CN102007730B (zh) 2014-09-03
KR101511403B1 (ko) 2015-04-10
US9762641B2 (en) 2017-09-12
US7769806B2 (en) 2010-08-03
US8578044B2 (en) 2013-11-05
HK1153061A1 (en) 2012-03-16
CN102007730A (zh) 2011-04-06
JP2011502305A (ja) 2011-01-20
US20230208902A1 (en) 2023-06-29
US20200336529A1 (en) 2020-10-22
KR20100096110A (ko) 2010-09-01
US20100268843A1 (en) 2010-10-21
JP2013137781A (ja) 2013-07-11
JP5200109B2 (ja) 2013-05-15
WO2009055305A1 (en) 2009-04-30

Similar Documents

Publication Publication Date Title
US11595460B2 (en) Automated real-time data stream switching in a shared virtual area communication environment
JP5232239B2 (ja) 共用仮想領域通信環境における自動化されたリアルタイム・データ・ストリーム切換え
US11418440B2 (en) Routing virtual area based communications
US7197126B2 (en) Human communication system
US20110173263A1 (en) Directing An Attendee Of A Collaboration Event To An Endpoint
EP3962038B1 (en) Spatially aware multimedia router system and method
US20110179157A1 (en) Event Management System For Creating A Second Event
TWI492592B (zh) 在共享虛擬區通訊環境中之自動化即時資料串流交換技術
WO2009136905A1 (en) Communications prior to a scheduled event

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140627

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150227

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150330

R150 Certificate of patent or registration of utility model

Ref document number: 5723905

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees