JP2006018809A - リアルタイムマルチメディア情報の効率的なルーティング - Google Patents

リアルタイムマルチメディア情報の効率的なルーティング Download PDF

Info

Publication number
JP2006018809A
JP2006018809A JP2005152312A JP2005152312A JP2006018809A JP 2006018809 A JP2006018809 A JP 2006018809A JP 2005152312 A JP2005152312 A JP 2005152312A JP 2005152312 A JP2005152312 A JP 2005152312A JP 2006018809 A JP2006018809 A JP 2006018809A
Authority
JP
Japan
Prior art keywords
connector
data
information
received
audio
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.)
Granted
Application number
JP2005152312A
Other languages
English (en)
Other versions
JP4738058B2 (ja
Inventor
Qianbo Huai
ファイ キアンボ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006018809A publication Critical patent/JP2006018809A/ja
Application granted granted Critical
Publication of JP4738058B2 publication Critical patent/JP4738058B2/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/148Interfacing a video terminal to a particular transmission medium, e.g. ISDN
    • 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/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/152Multipoint control units therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】 リアルタイムのマルチメディア情報を効率的にルーティングするシステムを提供する。
【解決手段】 メッセージのルーティングのために最適化された特殊目的コンポーネントであるマルチコントロールユニットコネクタを設定および使用することにより、リアルタイムのマルチメディア情報を含んだメッセージを効率的にルーティングする。コンピューティングデバイスは、複数のコネクタを使用して、そのコンピューティングデバイスのリソースまたは他のコンピューティングデバイスとの接続を同時に動的に作成することができる。コネクタは、ミキサ、リフレクタ、またはセレクタなど、動作のモードも有することができる。これら各種のモードと役割を使用することにより、このシステムを使用して、異種のコンピューティングデバイスのユーザに意味をなす提示をするためにマルチメディア情報を組み合わせ、効率的にルーティングすることができる。
【選択図】 図4

Description

本発明は、一般にはデータ通信ネットワークに関し、より詳細には、データ通信ネットワーク中でリアルタイムのマルチメディア情報を効率的にルーティングするための統一されたアーキテクチャを提供し、使用することに関する。
リアルタイム通信を可能にするためにコンピューティングデバイスが使用されることが増えている。一例として、ユーザは、コンピューティングデバイスを使用して、1人または複数の他のユーザとの会話に参加することができる。会話への参加は、オーディオ、ビデオ、またはその両方などの電子情報の送信または受信を伴う場合がある。そのような会話の参加者は、文書、プレゼンテーション用スライド、あるいは他の形態の電子情報などの他の媒体形式を送信または受信する場合もある。このマルチメディアの電子情報と、特にオーディオおよびビデオ情報は、RTP(リアルタイムトランスポートプロトコル)などのプロトコルを使用して送信することができる。RTPは、インターネットで提案される標準プロトコルであり、その仕様「RFC3550」は、<www.ietf.org/rfc/rfc3550.txt>で入手することができる。複数参加者の会議に関連する、インターネットで提案される標準の仕様である「RFC3551」は、<www.ietf.org/rfc/rfc3551.txt>で得ることができる。これらの仕様は、参照によりその全体が本明細書に組み込まれる。RTPは、SIP(セッション開始プロトコル)やRTSP(リアルタイムストリーミングプロトコル)などの他のプロトコルとともに使用することができる。SIPは、コンピューティングデバイス間のセッションを管理するために必要なシグナリングと他の機能を提供するために使用することができる。RTPとRTSPは、オーディオ情報やビデオ情報などの情報を搬送するために使用することができる。
オーディオ情報およびビデオ情報は、ユニキャスト、マルチキャスト、ブロードキャスト、およびフラッディング(flooding)通信モデルを含む各種のネットワーク通信モデルで、上記(および他の)プロトコルを使用して、コンピューティングデバイスから他のコンピューティングデバイスに送信することができる。
ユニキャストの通信モデルは、2地点間通信とも称され、コンピューティングデバイスから別のコンピューティングデバイスにメッセージを送信するために使用することができる。ユニキャストの通信モデルでは、送信者と受信者の間に一対一の関連付けがあることができる。従来のユニキャスト通信モデルでは、本質的に、2つのみのコンピューティングデバイスがメッセージの交換をするので、複数の参加者が同時に会話に参加することができない場合がある。しかし、コンピューティングデバイス同士をつないで、ユニキャスト通信モデルで接続された2つのコンピューティングデバイスの1つが、第3のコンピューティングデバイスにメッセージを転送し、それにより2つの別個のユニキャスト接続を確立することが可能な場合がある。そのような場合、第3の参加者のコンピューティングデバイスは、2つの他の参加者のコンピューティングデバイスから別々にオーディオ情報を受信することになるので、同時に話をしている会話の2人の参加者は、第3の参加者には異なる時に話しているように聞こえる場合がある。一例として、AがBとの会話に参加しており、そのためAのコンピューティングデバイスとBのコンピューティングデバイスが接続されているとする。Cも会話に参加できるように、BのコンピューティングデバイスとCのコンピューティングデバイスの間に第2の接続を追加することができる。ユニキャストの通信モデルでは、AとBが同時に話すと、Cには、まずBの声が聞こえ、その後Aの声が聞こえる。これが生じるのは、Aからのオーディオ情報を含んだメッセージがBのコンピューティングデバイスに送信され、Bのコンピューティングデバイスが、そのメッセージを処理せずにCのコンピューティングデバイスに転送するためである。しかし、コンピューティングデバイスを同時に接続することが可能な他のコンピューティングデバイスの数が、コンピューティングリソースのために限られる場合がある。さらに、コンピューティングデバイス同士が接続されて長いチェーンを形成している場合には、ネットワーク遅延のために、チェーンの一端からもう一端に移動する情報のタイミングがずれる場合がある。
マルチキャストの通信モデルは、1つのコンピューティングデバイスから複数の他のコンピューティングデバイスに同時にメッセージを送信するために使用することができる。この通信モデルは、送信元のコンピューティングデバイスからメッセージを受信し、そのメッセージをすべての接続された受信側コンピューティングデバイスに転送する、転送役のコンピューティングデバイスを含む。したがって、転送コンピューティングデバイスと複数の受信側コンピューティングデバイスの間に一対多の関連付けがある。転送役のコンピューティングデバイスが受信側のコンピューティングデバイスとの間でメッセージを受信し、送信するので、マルチキャストの通信モデルでは、ユニキャストの通信モデルについて上記で指摘したのと同様の理由で、多数のユーザに同時にサービスすることができない場合がある。具体的には、転送役のコンピューティングデバイスに、多数のメッセージに送れずに対応していくだけの処理能力や他のコンピューティングリソースが十分にない場合がある。
ブロードキャストの通信モデルも、ブロードキャストを行う1つの通信デバイスから受信側の複数のコンピューティングデバイスに同時に情報を送信するために使用することができる。ブロードキャストの通信モデルでは、ブロードキャストを行うコンピューティングデバイスは、受信側のコンピューティングデバイスを認識する必要すらない。実際、送信元のコンピューティングデバイスは、受信側のコンピューティングデバイスを知らないか、または、どのコンピューティングデバイスがそのメッセージを受信し、処理するのかを問題としないので、ブロードキャストの通信モデルを使用して送信元のコンピューティングデバイスから送信されるメッセージは、受信側のコンピューティングデバイスの宛先アドレスを含まなくてさえよい。メッセージをブロードキャストするには、ブロードキャストコンピューティングデバイスは、そのメッセージが最終的に受信されるかどうかに関係なく、単にそのデバイスが接続されたネットワークにメッセージを送信すればよい。ネットワークに接続された他のコンピューティングデバイスは、ブロードキャスト元のコンピューティングデバイスから送信されたメッセージを処理することを選択しても、無視することを選択してもよい。一例として、コンピューティングデバイスAが、接続されたネットワーク内でメッセージをブロードキャストした場合、同じくそのネットワークに接続されたコンピューティングデバイスBは、そのメッセージを処理することを選択することができる。それに対し、同じネットワークに接続されたコンピューティングデバイスCは、コンピューティングデバイスAからブロードキャストされたメッセージを無視することを選択することができる。ブロードキャストの通信モデルでは、コンピューティングデバイスから送信されたメッセージは、ネットワークに接続されたすべてのデバイスを横断するとは限らない。例として、プロキシサーバ、ネットワークアドレス変換器、ルータ、ゲートウェイ、および、ネットワークトラフィックをルーティングするか、ネットワークを相互接続する他のデバイスは、宛先アドレスを含まないメッセージは処理しなくてよい。その結果、ブロードキャストを行うコンピューティングデバイスから送信されたメッセージは、意図されるすべての受信者に到達するとは限らない。
フラッディング通信モデルは、送信元のコンピューティングデバイスから、その送信元コンピューティングデバイスに知られているすべての他のコンピューティングデバイスに情報を送信するために使用することができる。そのような接続されたコンピューティングデバイスはそれぞれ、ユニキャストの通信モデルを使用して相互とメッセージを交換することができる。フラッディングモデルに伴う問題は、複数のデバイスから同じ情報がコンピューティングデバイスに到達する可能性があり、また、予防策を取らない場合には、同じ情報がシステム中を複数回、あるいは無限に移動する可能性があることである。一例として、コンピューティングデバイスAがコンピューティングデバイスBとCにメッセージを転送し、コンピューティングデバイスBがコンピューティングデバイスCとAにメッセージを転送し、コンピューティングデバイスCがコンピューティングデバイスAおよびBにメッセージを転送する場合、コンピューティングデバイスAから送信されたメッセージは、コンピューティングデバイスBに二度到達することになる。すなわち、コンピューティングデバイスAから一度直接到達し、コンピューティングデバイスAから受信したメッセージを転送するコンピューティングデバイスCからもう一度到達する。これは、非効率的なネットワークリソースの使用法である。
上記の通信モデルは、通例、統一されたアーキテクチャを持たない。統一されたアーキテクチャとは、コンピューティングデバイスの役割があらかじめクライアントまたはサーバとして選択されるアーキテクチャである。統一されていないアーキテクチャを使用するコンピューティングデバイスは、一般に、メッセージを効率的にルーティングするために各自の役割を動的に変更することができない。
上記で挙げた通信モデルは、多数の参加者が接続した時には、メッセージのルーティングが非効率的になる可能性があり、あるいは、例えばコンピューティングリソースの制約のために多数の参加者に対応することができない場合がある。このため、ネットワークリソースを効率的に使用して、異種のコンピューティングデバイスのユーザに対して意味をなす提示をするためにマルチメディア情報を操作し、ルーティングする効果的な手法があれば、非常に有用であると思われる。
本発明は、このような状況に鑑みてなされたもので、その目的とするところは、リアルタイムマルチメディア情報の効率的なルーティングを実現するシステムを提供することにある。
リアルタイムのマルチメディア情報を効率的にルーティングするシステムが提供される。このシステムは、マルチメディア情報を含んだメッセージなどのメッセージをルーティングするために最適化されたコンピューティングシステムの特殊目的コンポーネントであるマルチコントロールユニット(「MCU」)コネクタを設定および使用することにより、リアルタイムのマルチメディア情報を含むメッセージを効率的にルーティングする。コンピューティングデバイスは、複数のMCUコネクタを使用して、そのコンピューティングデバイスのリソース(カメラ、マイクロフォン、スピーカなど)または他のコンピューティングデバイスとの接続を同時に動的に作成することができる。VoIP(Voice over Internet Protocol)、ストリーミングマルチメディアプレーヤ、あるいはメッセージのルーティングを必要とするアプリケーションなど、コンピューティングデバイスのMCUコネクタを使用するアプリケーションは、MCUコネクタの役割を設定することができる。アプリケーションは、MCUコネクタのアプリケーションプログラムインタフェースを使用して、クライアント、サーバ、またはクライアント/サーバとして動作するようにMCUコネクタの役割を設定することができる。役割を指定することにより、コンピューティングデバイスは、例えば1つのコンピューティングデバイスが同時に多数の接続に対応する必要がないように、メッセージを効率的にルーティングすることができる。MCUコネクタは、ミキサ、リフレクタ、セレクタなど、動作のモードも有することができる。これらのモードは、コネクタが、受信したメッセージを転送する前に処理する方式を定義することができる。これら各種のモードと役割を使用することにより、このシステムを使用して、異種のコンピューティングデバイスのユーザに対して意味をなすように提示するためにマルチメディア情報を組み合わせ、効率的にルーティングすることができる。
以下、図面を参照して本発明を適用できる実施形態を詳細に説明する。一実施形態では、リアルタイムのマルチメディア情報の効率的なルーティングのシステムが提供される。このシステムは、マルチコントロールユニット(「MCU」)コネクタを設定および使用することにより、リアルタイムのマルチメディア情報を含むメッセージを効率的にルーティングする。マルチコントロールユニット(「MCU」)コネクタは、マルチメディア情報を含んだメッセージなどのメッセージをルーティングするために最適化されたコンピューティングシステムの特殊目的コンポーネントである。コンピューティングデバイスは、複数のMCUコネクタを使用して、そのコンピューティングデバイスのリソース(カメラ、マイクロフォン、スピーカなど)、または他のコンピューティングデバイスとの複数の接続を同時に生成する。したがって、MCUコネクタは、物理的なクロスバーに似た方式で論理接続を動的に作成することを可能にする。VoIP(Voice over Internet Protocol)、ストリーミングマルチメディアプレーヤ、あるいはメッセージのルーティングを必要とするアプリケーションなど、コンピューティングデバイスのMCUコネクタを使用するアプリケーションは、MCUコネクタの役割を設定することができる。MCUコネクタの役割は、そのMCUコネクタがどのように動作するかを定義することができる。アプリケーションは、MCUコネクタのアプリケーションプログラムインタフェース(「API」)を使用して、MCUコネクタの役割をクライアント、サーバ、またはクライアント/サーバに設定することができる。
メッセージを作成または消費するアプリケーションは、MCUコネクタの役割をクライアントに設定することができる。メッセージを作成または消費するアプリケーションの例には、一般には、例えばMICROSOFT MESSENGER、VoIPクライアント、SIPクライアントが含まれる。従来サーバアプリケーションと呼ばれる一部のアプリケーションも、それらのアプリケーションがメッセージの作成または消費を要求する際には、クライアントとして動作するようにMCUコネクタを設定することができる。一例として、ゲートウェイまたはプロキシサーバは、クライアントからのメッセージを消費し、サーバに送信するメッセージを作成するので、クライアントとして動作するようにMCUコネクタを設定することができる。ゲートウェイは、一般には、1つのネットワークから別のネットワークへの情報を橋渡し、または変換し、そのため、1つのネットワークに対してはクライアントとなり、別のネットワークに対してはサーバとなる。同様に、プロキシサーバは、一般に、サーバに対してはクライアントとして機能し、クライアントに対してはサーバとして機能する。クライアントとして動作するMCUコネクタは、自身のアクティブなすべての入力を、自身のアクティブな各出力にルーティングすることができる。アクティブな入力または出力とは、メッセージを作成または消費している別のコネクタまたはコンピューティングデバイスに接続された入力または出力である。一例として、VoIPアプリケーションは、スピーカあるいはヘッドセットのアクティブな入力で受信されるすべての到着メッセージを再生し、マイクロフォンやオーディオファイルなどからのすべてのオーディオ入力を含んだメッセージをアクティブな出力に送信することができる。別の例は、従来の電話システムとVoIPシステムの間でオーディオを変換するゲートウェイである。ゲートウェイは、電話システムまたはVoIPシステムからオーディオ情報を受信し、その情報を、他のシステムに許容されるメッセージ(または信号)に変換するので、MCUコネクタをクライアントとして動作するように設定することができる。MCUコネクタがクライアントとして動作している時、そのコネクタは、着信するメッセージの内容に関連する処理は一切行わなくてよい。
アプリケーションは、メッセージ内容を処理し、他のコンピューティングデバイスにルーティングする際には、MCUコネクタの役割をサーバに設定することができる。一例として、アプリケーションが会話への複数の参加者からオーディオおよびビデオ情報を受信する場合、アプリケーションは、受信したオーディオを処理し、適切なビデオソースを選択し、受信したオーディオとビデオを他のコンピューティングデバイスにルーティングする必要がある場合がある。オーディオの処理には、例えば、同時に話している参加者のオーディオが、連続した発話ではなく、同時の発話として聞こえるようにオーディオを「混合」することが含まれる。したがって、2つのコンピューティングデバイスで実行されるアプリケーションは、3者による会話への2人の参加者からのそれぞれのオーディオ情報およびビデオ情報を、MCUコネクタがサーバとして動作している第3のコンピューティングデバイスに送信することができる。そのMCUコネクタは、そのMCUコネクタに関連付けられたコンピューティングデバイスを使用する第3の参加者に対して混合されたオーディオを再生する前、またオーディオ情報を別のコンピューティングデバイスに転送する前にオーディオ情報を混合するか、または、最後の話者に関連するビデオ情報を選択することもできる。一例として、A、B、Cが会話に参加しており、Aが最初に話し、その後BとCが同時に話した場合、Aには、BとCからの混合されたオーディオが聞こえ、Bには、Aのオーディオが聞こえた後にCの音声が聞こえ、Cには、Aの音声が聞こえた後にBのオーディオが聞こえることになる。また、Aは、BまたはCのビデオ情報(またはその両方)を受信し、Bは、Aのビデオ情報を受信した後にCのビデオ情報を受信し、Cは、Aのビデオ情報を受信した後にBのビデオ情報を受信する。このように、サーバとして動作している時、MCUコネクタは、メッセージをルーティングする際にマルチメディア情報を処理または選択する。
アプリケーションは、メッセージを作成または消費する必要があり、それと同時に、クライアントとして動作している他のMCUコネクタにメッセージをルーティングする必要がある時に、MCUコネクタの役割をクライアント/サーバに設定することができる。一例として、VoIPを利用した電話機を会話に招待するVoIPアプリケーションは、VoIPアプリケーションに対してはクライアントとして動作し、VoIPを利用した電話機に対してはサーバとして動作することができる。したがって、クライアント/サーバとして動作するMCUコネクタは、クライアント様の動作とサーバ様の動作の両方を行う。
MCUコネクタは、追加的に、ミキサモード、リフレクタモード、またはセレクタモードで動作することができる。ミキサモードでは、MCUコネクタは、上記でサーバとして動作するMCUコネクタの例との関連で述べたように、オーディオを混合し、ビデオを選択することにより、オーディオ情報を処理することができる。ビデオは、例えば、大きなウィンドウの上に重ねた小さなウィンドウで相互と並べて画像を配置する、画像をタイル表示する、あるいは、画像を重ね合わせることにより、混合することができる。リフレクタモードでは、MCUコネクタは、オーディオを混合せずに、受信したメッセージを直接転送することができる。一例として、A、B、Cが会話に参加しており、Aが初めに話し、その後BとCが同時に話した場合、Aは、MCUコネクタがメッセージを転送した通りの順序でBのオーディオとCのオーディオを受信する。セレクタモードでは、MCUコネクタは、入力の1つを選択し、その他の入力は無視することができる。一例として、A、B、Cが会話に参加しており、Aが最初に話し、その後BとCが同時に話した場合、Aは、BまたはCからのメッセージのみを受信し、その他のメッセージは受信しないことができる。セレクタモードは、ビデオに、より一般的に用いられることができる。
一実施形態では、セレクタは、情報の特性に基づいてオーディオ情報またはビデオ情報を選択するように設定することができる。一例として、一番大きな声で話している参加者のオーディオとビデオを選択することができる。
一実施形態では、混合と選択を併せて行うことができる。一例として、大規模な会話または電子教室の状況で、司会者(例えば教師)と質問をしている参加者(例えば生徒)のオーディオ情報とビデオ情報を混合するようにMCUコネクタを設定することができる。
アプリケーションは、MCUコネクタコンポーネントを使用してメッセージをルーティングすることにより、コンピューティングデバイスをクライアント、サーバ、またはその両方に設定して、1つのコンピューティングデバイスまたはあらかじめ選択された複数のコンピューティングデバイスがメッセージのルーティングに必要とされないようにすることにより、マルチメディアメッセージのルートを動的に選択することができる。したがって、複数のコンピューティングデバイスをクライアント、サーバ、またはその両方として使用することができ、会話または他のアプリケーションセッションの進行中にその役割とモードを動的に選択することができるので、マルチメディアメッセージを効率的にルーティングすることができる。
次いで図を参照すると、図1は、リアルタイムのマルチメディア情報を効率的にルーティングするシステムの一実施形態を表すブロック図である。システムは、複数のコンピューティングデバイス102と、ネットワーク104を備える。ネットワーク104は、例えばイントラネット、インターネット、あるいは他の形態のネットワークである。コンピューティングデバイスは、ネットワークに接続されることができる。コンピューティングデバイスは、私設接続108などを介して独自に相互に接続することもできる。このシステムは、ゲートウェイ109と、接続112を介してゲートウェイに接続されたデバイス110も備えることができる。ゲートウェイは、例えば、VoIP電話デバイスと、ネットワークに接続されたコンピューティングデバイス間でメッセージまたは信号をブリッジまたは変換するデバイスである。ゲートウェイは、接続111を介してネットワークに接続することができる。このシステムの各種のネットワーク接続は、有線、無線、またはその組み合わせとすることができる。各種のネットワーク接続は、TCP/IP(Transport Control Protocol/Internet Protocol)やUDP(ユーザデータグラムプロトコル)などの各種プロトコルを使用することができる。
図2は、図1のコンピューティングデバイスの一実施形態を表すブロック図である。コンピューティングデバイス202は、オーディオコンポーネント204、ビデオコンポーネント206、ドキュメントコンポーネント208、およびMCUコネクタ(「コネクタ」)コンポーネント210を備える。オーディオコンポーネントは、オーディオ情報を処理することができる。一例として、オーディオコンポーネントは、マイクロフォンからオーディオ信号を受け取り、スピーカでオーディオ信号を再生することができる。オーディオコンポーネントは、コネクタコンポーネントの指示に従って、オーディオ信号を混合することもできる。一例として、オーディオコンポーネントは、マイクロフォンから受け取ったオーディオ信号を、コネクタが接続された他のコンピューティングデバイスから受信したメッセージに含まれるオーディオ情報と混合することができる。
ビデオコンポーネントは、ビデオ信号を処理することができる。一例として、ビデオコンポーネントは、ビデオカメラからビデオを受け取り、画面にビデオを再生することができる。ビデオコンポーネントは、複数のソースからのビデオ画像を重ね合わせる、あるいは、ビデオ画像の中にビデオ画像を埋め込むことによりビデオを混合するなどの他の機能も行ってよい。
ドキュメントコンポーネントは、他の形態の電子情報を処理することができる。一例として、ドキュメントコンポーネントは、参加者によるワードプロセッシング文書の操作を記録し、ネットワークを通じてその操作を他の参加者に転送することができる。同様に、ドキュメントコンポーネントは、他のユーザが文書に行う操作を受け取り、その操作を、コンピューティングデバイスに接続されたスクリーンに表示することができる。
コネクタコンポーネントは、オーディオ接続やビデオ接続など、各種形態の接続を作成および設定することができる。コンピューティングデバイスは、複数のコネクタコンポーネント(図示せず)を備えてよい。コネクタコンポーネントは、例えばオーディオ情報やビデオ情報を混合する他のコンポーネントを使用することができる。コネクタコンポーネントについては、図3との関連で下記でさらに説明する。
図3は、図2のコネクタコンポーネントの一実施形態を表すブロック図である。コネクタコンポーネントは、入力304、305、306、307など複数の入力を備える。コネクタは、出力308、309、310、311など複数の出力も備える。これらの入力および出力を使用して、コンピューティングデバイスを含む他のデバイスに接続して情報を送受信する。コネクタコンポーネントは、複数の方式で設定することができる。一例として、入力304を、すべての入力信号を出力308、309、310、311に転送するように設定することができる。入力307も同様に設定することができる。入力305は、入力を一切転送しないように設定することができる。入力306は、適切な方式(図示せず)で入力を転送するように、情報の処理中などに動的に設定することができる。一例として、入力306は、受信されるビデオ情報の送り手も現在の話者である場合だけ、受信したビデオ情報を、コネクタコンポーネントの出力に接続されたデバイスに転送するように構成することができる。
コネクタコンポーネントは、複数のメソッドとプロパティを公開するAPIを有し、アプリケーションが、コネクタコンポーネントが生成するイベント通知を受け取るために自身を登録できるようにする。「プラットフォーム」機能のセット(メソッド、プロパティ、およびイベント)が、デバイスのメディアスタックを使用することに関連する。メディアスタックは、オーディオとビデオの入力と出力を提供する。一例として、スタックは、マイクロフォンあるいはカメラからの入力と、スピーカおよびビデオスクリーンへの出力を提供することができる。サーバおよびクライアント、また実際には、参加者に使用されるコンピューティングデバイスはいずれも、互換性のある同様のメディアスタックを使用することができる。このプラットフォーム機能は、アプリケーションがコネクタに問い合わせて、そのデバイスで利用することができる入力または出力を判定することも可能にすることができる。このプラットフォーム機能を使用することにより、アプリケーションは、例えば、そのデバイスを使用する参加者からオーディオおよびビデオ入力を受け取り、他の参加者から受け取ったオーディオとビデオをデバイス上で再生することができる。コネクタはこれらの機能のためのAPIを有するので、アプリケーション開発者は、複数のベンダによって製造されるそうした入力装置または出力装置をどのように制御するかを知る必要がない。
アプリケーションは、コネクタコンポーネントのAPIを使用して、接続を動的に追加または削除することができる。一例として、アプリケーションプログラムは、追加的な参加者が会話に加わると接続を追加し、参加者が会話を離れると接続を削除することができる。
コネクタコンポーネントのAPIは、メッセージのルーティングとモード選択に関連する機能も有する。ルートは、コネクタに指定された役割(クライアント、サーバ、またはクライアント/サーバ)に基づいて、または指定されたルートに基づいて、オーディオおよびビデオについてアプリケーションによって構成することができる。APIを使用して、コネクタコンポーネントのモードをミキサ、リフレクタ、またはセレクタモードに選択することができる。
図4は、複数のコネクタを使用するシステムの一実施形態を表すブロック図である。このシステムは、コンピューティングデバイスA402、コンピューティングデバイスB404、およびコンピューティングデバイスC406の3つのコンピューティングデバイスを備える。これらのコンピューティングデバイスは、通信リンク410を介してインターネット408などのネットワークに接続することができる。各コンピューティングデバイスは、1つまたは複数のコネクタを備える。図の実施形態では、コンピューティングデバイスA、B、およびCは、それぞれコネクタ416、418、420を有する。図の実施形態では、コンピューティングデバイスAとBはクライアントに設定され、コンピューティングデバイスCは、サーバとして設定されている。サーバのコネクタは、ミキサモードで動作するように設定されている。コネクタ416と418は、クライアントとして動作しており、それぞれ2つの入力と出力を有するものと図示される。その2つのコネクタそれぞれの入力の1つは、そのコネクタのコンピューティングデバイスに結合されたマイクロフォンからの入力である。CDプレーヤ、ジュークボックス、MP3プレーヤ、および実際には任意のオーディオソースなど、オーディオ入力の他のソースも可能である。この2つのコネクタそれぞれの第2の入力は、例えばネットワークを通じて受け取られる他のコンピューティングデバイスからの入力である(「ネットワーク入力」)。2つのコネクタそれぞれの出力の1つは、そのコネクタのコンピューティングデバイスのスピーカに結合される。受信機、増幅器、ヘッドフォン、オーディオレコーダなどを含む、任意のオーディオ出力をスピーカの代わりに使用することができる。2つのコネクタそれぞれの第2の出力は、コネクタからの出力を、そのコネクタのコンピューティングデバイスが接続された他のコンピューティングデバイスに送信する(「ネットワーク出力」)。コンピューティングデバイスCのコネクタは、ミキサモードで動作するサーバとして設定されており、3つの入力と3つの出力を有する。このコネクタの3つの入力は、それぞれマイクロフォン、コンピューティングデバイスA(「ネットワーク入力A」)、およびコンピューティングデバイスB(「ネットワーク入力B」)から情報を受け取る。このコネクタの3つの出力は、それぞれスピーカ、コンピューティングデバイスA(「ネットワーク出力A」)、およびコンピューティングデバイスB(「ネットワーク出力B」)に情報を送信する。図のコンピューティングデバイスCのコネクタは、この他の入力および出力(図示せず)も有することができる。コンピューティングデバイスは、さらに追加的なコネクタ(これも図示せず)を有することができる。
図の構成は、図の3つのコンピューティングデバイスそれぞれを使用する参加者間の3者会話で使用することができる。参加者A、B、Cが、それぞれコンピューティングデバイスA、B、Cを使用して、共にオンライン会話に参加しているとする。コネクタAは、参加者Aから受け取った音声情報をネットワーク出力にルーティングし、ネットワーク入力を介して他のコンピューティングデバイスから受け取った情報は、スピーカにルーティングすることができる。同様に、コネクタBは、マイクロフォン入力を介して参加者Bから受け取る情報をそのネットワーク出力にルーティングし、ネットワーク入力を介して他のコンピューティングデバイスから受け取る情報をスピーカ出力にルーティングすることができる。コネクタCは、ミキサモードでサーバとして動作しており、そのマイクロフォン入力から受け取る情報と、2つのネットワーク入力それぞれから受け取る情報を混合してからネットワーク出力に転送する。一例として、このコネクタは、マイクロフォン入力を介して参加者Cから受け取った情報と、ネットワーク入力Aを介して参加者Aから受け取った情報を混合し、混合した情報を、ネットワーク出力Bを介して参加者Bのコンピューティングデバイスに転送する。同様に、このコネクタは、参加者Cから受け取る情報と、ネットワーク入力Bを介して参加者Bから受け取る情報を混合して、混合した情報をネットワーク出力Aを介して参加者Aに転送する。コネクタCは、また、ネットワーク入力AおよびBを介して参加者AおよびBから受け取る情報を混合し、混合した情報をスピーカ出力に転送する。この際、3人の参加者はそれぞれ、他の2人の参加者から混合されたオーディオ情報を受信する。
このシステムは、同じように構成されたビデオコネクタ(図示せず)も有することができる。そのような場合、コンピューティングデバイスCのビデオコネクタは、セレクタモードに設定することができ、話をしている参加者のビデオ情報を他の2人の参加者それぞれのために選択し、最後に話をした者のビデオ情報を、現在話している参加者のために選択することができる。ビデオコネクタは、マイクロフォン入力の代わりに(またはマイクロフォン入力に加えて)カメラ入力を有することができ、スピーカ出力ではなく、さらにモニタ出力を有することができる。システムは、ミキサモードなど他のビデオモードに設定することもできる。
適切に設定されたビデオコネクタおよびオーディオコネクタを使用することにより、システムは、参加者の必要性に適合して、リアルタイムのマルチメディア情報を効率的にルーティングすることができる。一例として、コンピューティングデバイスAを使用している参加者Aが、コンピューティングデバイスCを使用している参加者Cと会話をしている場合、コンピューティングデバイスAおよびCのコネクタは、クライアントモードで動作することができる。参加者Cが参加者Bを会話に招待すると、コンピューティングデバイスCのコネクタは、動的に役割とモードを変えてミキサモードでサーバとして動作することができる。したがって、コンピューティングデバイスA、B、Cはいずれも、3人のユーザ全員に情報をルーティングすることが可能な第4のコンピューティングデバイスに接続する必要はない。
図5は、接続作成ルーチンの一実施形態を説明する流れ図である。このルーチンは、コネクタコンポーネントによって行われ、ルートを設定する。コネクタのルートは、どの入力がどの出力に接続され、したがってコネクタの入力と出力の間に接続を形成しているかを表す。ルーチンはブロック502で開始し、ここで、役割(role)、オーディオのルート(audio_route)、およびビデオのルート(video_route)の指示を、パラメータとして受け取る。ルートは、ルーチンのパラメータで指定される役割とルートに基づいて設定することができる。ブロック504で、ルーチンは、指示された役割に基づいてコネクタを設定する。一例として、指示された役割がクライアントである場合、ルーチンは、受信されるすべての入力をすべての出力に転送するようにコネクタを設定することができる。ブロック506で、ルーチンは、受け取られたパラメータの指示に従って、すべてのオーディオ接続を作成する。ブロック508で、ルーチンは、受け取られたパラメータの指示に従って、すべてのビデオ接続を作成する。ルーチンは、例えばルーチンのパラメータでルートが指定された時に、オーディオ接続とビデオ接続を作成する必要がある場合がある。コネクタを使用するアプリケーションは、マルチメディア情報の特殊化された扱いが望ましい場合に、オーディオのルートとビデオのルートを指定することができる。一例として、複数の参加者を有する電話会議アプリケーションは、参加者の数がより少ないVoIPアプリケーションとは異なる形で情報をルーティングすることを求める場合がある。さらなる例として、それらのアプリケーションは、一部の参加者に対してはテレビ会議を可能にしたいが、他の参加者には可能にしたくない場合がある(例えば参加者のコンピューティングデバイスの能力に応じて)。オーディオのルートは、例えば、(コンピュータデバイスに直接関連付けられたマイクロフォンではなく)接続されたビデオカメラに関連付けられたマイクロフォンを使用し、そのビデオカメラをコネクタのネットワーク出力に接続することを指定することができる。ビデオルートは、ビデオカメラの出力をコネクタの出力にも接続することを指定することができる。ブロック510で、ルーチンは呼び出し元に戻る。
図6は、オーディオミキサモードとビデオセレクタモードで動作するコネクタによって行われるルートルーチンの一実施形態を説明する流れ図である。このルーチンは、コネクタがオーディオのミキサモードで動作している時と、ビデオのセレクタモードで動作している時にどのようにオーディオメッセージとビデオメッセージをルーティングするかを判定する。ルーチンは、ブロック602で開始する。ブロック604で、ルーチンは、会話の第1の参加者を選択する。ブロック606で、ルーチンは、選択された参加者以外のすべての参加者からのすべてのオーディオ入力を混合する。一例として、AがBおよびCと会話をしており、Aが選択された参加者である場合、ルーチンは、BおよびCからのオーディオ入力を混合する。AにはAのオーディオ情報が分かるので、Aのオーディオは、混合する必要はない。さらに、Aのオーディオが混合され、Aに戻されると、ネットワーク遅延のために、Aは、送信してから短い時間の後に送信されたオーディオ情報Aを受信する可能性があり、それがAの側の混乱につながる可能性がある。ブロック608で、ルーチンは、ブロック506で混合されたオーディオを選択された参加者に送信する。上記の例を続けると、ルーチンは、BとCの混合されたオーディオをAに送信する。
ブロック610で、ルーチンは、選択された参加者以外で一番最後に話をした参加者のビデオ信号を、選択された参加者に送信することができる。一例として、AがBおよびCと会話をしており、BがAの前に話をし、Aが現在話をしている場合、Aは、オーディオ信号を受信せず(Aが話しているため)、Bのビデオ信号(BがAの前に話したため)を受信する。これに対し、Aが現在話をしているので、BおよびCは、Aのオーディオ信号およびビデオ信号を受信する。一実施形態では、ブロック610で、参加者のビデオ情報を混合することができる。一例として、すべての話者のビデオ情報をタイル表示することができる。ビデオ情報のタイル表示には、参加者からのビデオ情報を隣接するウィンドウに配置することが含まれる。
ブロック612で、ルーチンは、現在話者でない次の参加者を選択する。ブロック614で、ルーチンは、それ以上参加者がいないかどうかを判定する。いない場合、ルーチンはブロック616に進む。いる場合、ルーチンは、ブロック606に進む。ブロック616で、ルーチンは、呼び出し元に戻る。
図7は、リフレクタモードで動作するコネクタによって行われるルートルーチンの一実施形態を説明する流れ図である。このルーチンは、コネクタがリフレクタモードで動作している際にどのようにオーディオメッセージおよびビデオメッセージをルーティングするかを判定する。ルーチンは、ブロック702で開始する。ブロック704で、ルーチンは、現在話している参加者でない、会話の第1の参加者を選択する。ブロック706で、ルーチンは、話者のオーディオメッセージを選択された参加者に送信する。ブロック708で、ルーチンは、話者のビデオメッセージを選択された参加者に送信する。複数の話者がいる場合、それら話者からのオーディオおよびビデオは、順次送信することができる。一例として、参加者A、B、Cが会話をしており、BとCが同時に話している場合、Aは、Cのオーディオおよびビデオより前にBのオーディオおよびビデオを受信することができる。ブロック710で、ルーチンは、現在の話者でない次の参加者を選択する。ブロック712で、ルーチンは、それ以上選択する参加者がいないかどうかを判定する。いない場合、ルーチンはブロック714に進む。いる場合、ルーチンは、ブロック706に進む。ブロック714で、ルーチンは、その呼び出し元に戻る。
図8は、セレクタモードで動作するコネクタによって行われるルートルーチンの一実施形態を説明する流れ図である。このルーチンは、コネクタがセレクタモードで動作している時のオーディオメッセージとビデオメッセージのルーティング方式を判定する。ルーチンはブロック802で開始する。ブロック804で、ルーチンは、現在話をしている参加者でない第1の参加者を選択する。ブロック806で、ルーチンは、話者からのオーディオメッセージを選択された参加者に送信する。ブロック808で、ルーチンは、話者からのビデオメッセージを選択された参加者に送信する。セレクタモードでは、1人の参加者からのオーディオまたはビデオ情報のみを送信および受信することができる。一例として、参加者A、B、Cが会話をしており、BとCが同時に話している場合に、Aは、Bのオーディオ情報とビデオ情報だけを受け取ることができる。ブロック810で、ルーチンは、現在の話者でない次の参加者を選択する。ブロック812で、ルーチンは、それ以上参加者がいないかどうかを判定する。それ以上いない場合、ルーチンは、ブロック814に進む。いる場合、ルーチンは、ブロック806に進む。ブロック814で、ルーチンは、呼び出し元に戻る。
一実施形態では、ビデオ情報を選択するためにセレクタモードを使用することができる。そのような場合は、ビデオ情報を選択することができる一方で、オーディオ情報を混合することができる。したがって、ブロック806で、すべての参加者からのオーディオを混合し、転送することができる。
会話の参加者は、各種形態のコンピューティングデバイスを使用することができる。例として、ビデオ会議の参加者の一人は、パーソナルコンピュータを使用し、第2の参加者は、携帯電話を使用し、第3の参加者は、オーディオ情報とビデオ情報の送受信が可能な何らかの他の形態のコンピューティングデバイスを使用することができる。パーソナルコンピュータを使用する参加者は、会話中にオーディオ情報とビデオ情報を送受信することを望む可能性がある。これに対し、携帯電話を使用する参加者は、オーディオ情報の受信のみを希望する場合がある。そして、オーディオ情報とビデオ情報の送受信が可能なコンピューティングデバイス(ビデオ電話など)を使用する参加者も、オーディオ情報とビデオ情報の送受信を希望する可能性がある。
リアルタイムのマルチメディア情報を効率的にルーティングするシステムが実装されるコンピューティングデバイスは、中央演算処理装置、メモリ、入力装置(キーボードやポインティングデバイスなど)、出力装置(表示装置)、および記憶装置(ディスクドライブなど)を含むことができる。メモリと記憶装置は、セキュリティシステムを実施する命令を保持することが可能なコンピュータ可読媒体である。また、データ構造およびメッセージ構造は、記憶することも、通信リンク上の信号などデータ送信媒体を介して送信することもできる。インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、2地点間ダイヤルアップ接続など、各種の通信リンクを使用してよい。
図1に、リアルタイムのマルチメディア情報を効率的にルーティングするシステムを実施することが可能な適切な動作環境の例を示す。この動作環境は、適切な動作環境の一例に過ぎず、システムの使用または機能の範囲について限定を示唆するものではない。使用に適する可能性がある他のよく知られるコンピューティングシステム、環境、および構成には、パーソナルコンピュータ、サーバコンピュータ、「スマート」携帯電話を含むハンドヘルドあるいはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサを利用したシステム、設定可能な家庭電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスを含む分散コンピューティング環境などがある。
リアルタイムのマルチメディア情報を効率的にルーティングするシステムは、1つまたは複数のコンピュータまたは他のデバイスによって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的な状況で説明することができる。一般に、プログラムモジュールには、特定のタスクを行うか、特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。通例、プログラムモジュールの機能は、各種の実施形態で必要に応じて組み合わせることも分散することもできる。
前述から、例示の目的で本発明の具体的な実施形態を説明したが、本発明の主旨および範囲から逸脱せずに、各種の変更を加えてよいことは理解されよう。したがって、本発明は、頭記の特許請求の範囲以外によっては限定されない。
リアルタイムのマルチメディア情報を効率的にルーティングするシステムの実施形態を示すブロック図である。 図1のコンピューティングデバイスの実施形態を表すブロック図である。 図2のコネクタの実施形態を示すブロック図である。 複数のコネクタを使用するシステムの実施形態を示すブロック図である。 接続作成の実施形態を示す流れ図である。 ミキサモードで動作するコネクタによって行われるルートルーチンの実施形態を説明する流れ図である。 リフレクタモードで動作するコネクタによって行われるルートルーチンの実施形態を説明する流れ図である。 セレクタモードで動作するコネクタによって行われるルートルーチンの実施形態を説明する流れ図である。
符号の説明
402 コンピューティングデバイスA
404 コンピューティングデバイスB
406 コンピューティングデバイスC
408 インターネット
410 通信リンク
416、418、420 コネクタ

Claims (33)

  1. リアルタイムのマルチメディア情報のルーティングに関連するアプリケーションプログラムインタフェースを実施する命令を有するコンピュータ読み取り可能な記録媒体であって、前記命令は、
    入力と出力との間のルートを表す接続を作成するために、他のソフトウェアコンポーネントに接続することが可能なソフトウェアコンポーネントと、
    モードを設定するコンポーネントと、
    入力でデータを受け取るコンポーネントと、
    設定された前記モードに基づいて、受け取った前記データの処理を行うコンポーネントと、
    処理された前記データを、前記データが受け取られた前記入力に指示された出力に転送するコンポーネントと
    を備えたことを特徴とするコンピュータ読み取り可能な記録媒体。
  2. 前記モードがミキサに設定された時、前記処理は、指示された前記出力に転送するために複数の入力を混合することを含むことを特徴とする請求項1に記載のコンピュータ読み取り可能な記録媒体。
  3. 前記出力に対して複数の入力が指示されることを特徴とする請求項2に記載のコンピュータ読み取り可能な記録媒体。
  4. 受け取られた前記データがオーディオである時、前記混合は、オーディオ情報を組み合わせることを含むことを特徴とする請求項2に記載のコンピュータ読み取り可能な記録媒体。
  5. 前記組み合わせることは、前記データが生成された時間の指示を分析することを含むことを特徴とする請求項4に記載のコンピュータ読み取り可能な記録媒体。
  6. 受け取られた前記データがビデオである時、前記混合は、ビデオ情報を組み合わせることを含むことを特徴とする請求項2に記載のコンピュータ読み取り可能な記録媒体。
  7. 前記組み合わせることは、入力でデータとして受け取られたビデオ情報を、別の入力でデータとして受け取られたビデオ情報の内側に表示されるウィンドウ内に配置することを含むことを特徴とする請求項6に記載のコンピュータ読み取り可能な記録媒体。
  8. 前記組み合わせることは、入力でデータとして受け取られたビデオ情報を、別の入力でデータとして受け取られたビデオ情報に隣接して配置することを含むことを特徴とする請求項6に記載のコンピュータ読み取り可能な記録媒体。
  9. 前記モードがリフレクタに設定された時、前記処理は、受け取った前記データを指示される前記出力に転送することを含むことを特徴とする請求項1に記載のコンピュータ読み取り可能な記録媒体。
  10. 前記モードがセレクタに設定された時、前記処理は、1つの入力で受け取られるデータを転送し、他の入力で受け取られるデータを無視することを含むことを特徴とする請求項1に記載のコンピュータ読み取り可能な記録媒体。
  11. リアルタイムのマルチメディア情報をルーティングするコンピュータシステムによって行われる方法であって、前記コンピュータシステムは、ソフトウェアコンポーネントに接続することが可能なソフトウェアとして実施されるコネクタを有し、前記方法は、
    入力と出力を指定するルーティング情報を受け取るステップと、
    モードの指示を受け取るステップと、
    前記ルーティング情報と前記モードに基づいて前記コネクタを設定するステップと、
    前記設定に基づいて前記コネクタの入力で受け取られるデータを前記コネクタの出力に転送するステップと
    を備えることを特徴とする方法。
  12. 指示された前記モードに基づいて、受け取られた前記データを処理するステップを含むことを特徴とする請求項11に記載の方法。
  13. 前記モードがミキサである時、前記処理するステップは、受け取られた前記データを混合するステップを含むことを特徴とする請求項12に記載の方法。
  14. オーディオ情報を混合するステップを含むことを特徴とする請求項13に記載の方法。
  15. 同時に話をする複数の参加者のオーディオ情報を含むデータが受信された時、話者のコンピューティングデバイスに転送されるデータは、前記話者を除くすべての参加者のオーディオ情報を含むことを特徴とする請求項14に記載の方法。
  16. 同時に話をする複数の参加者のオーディオ情報を含むデータが受信された時、1人の参加者のコンピューティングデバイスに転送されるデータは、すべての話者のオーディオ情報を含むことを特徴とする請求項14に記載の方法。
  17. 前記参加者は現在話をしていないことを特徴とする請求項16に記載の方法。
  18. ビデオ情報を混合するステップを含むことを特徴とする請求項13に記載の方法。
  19. 話者のコンピューティングデバイスに転送されるビデオ情報は、以前の話者のコンピューティングデバイスから受け取られるビデオ情報を含むことを特徴とする請求項18に記載の方法。
  20. 前記モードは指示されないことを特徴とする請求項11に記載の方法。
  21. 役割の指示を受け取るステップを含むことを特徴とする請求項11に記載の方法。
  22. デフォルトのルーティング情報は、指示された前記役割に基づいて設定されることを特徴とする請求項21に記載の方法。
  23. 無音を含むデータは転送されないことを特徴とする請求項11に記載の方法。
  24. リアルタイムのマルチメディア情報をルーティングするシステムであって、前記システムは、ソフトウェアコンポーネントに接続することが可能なソフトウェアとして実施されたコネクタを有し、
    入力と出力を指定するルーティング情報を受け取るコンポーネントと、
    モードの指示を受け取るコンポーネントと、
    前記ルーティング情報と前記モードとに基づいて前記コネクタを設定するコンポーネントと、
    前記設定に基づいて、前記コネクタの入力で受け取られるデータを前記コネクタの出力に転送するコンポーネントと
    を備えたことを特徴とするシステム。
  25. ビデオコネクタとオーディオコネクタを有することを特徴とする請求項24に記載のシステム。
  26. 前記ビデオコネクタとオーディオコネクタに異なるモードの指示が受け取られることを特徴とする請求項25に記載のシステム。
  27. 前記オーディオコネクタに指示される前記モードはミキサであり、前記ビデオコネクタに指示される前記モードはセレクタであることを特徴とする請求項26に記載のシステム。
  28. 参加者のオーディオ情報を混合することを含むことを特徴とする請求項27に記載のシステム。
  29. 話者のコンピューティングデバイスに転送されるオーディオ情報を含むデータは、前記話者を以外のすべての参加者のオーディオ情報を含んだデータを含むことを特徴とする請求項28に記載のシステム。
  30. 前記話者以外のすべての参加者のために、前記話者のビデオ情報を選択し、転送することを含むことを特徴とする請求項27に記載のシステム。
  31. 最後の話者のビデオ情報が、前記話者に転送するために選択されることを特徴とする請求項30に記載のシステム。
  32. TCP/IPプロトコルを用いてデータを受信および転送することを特徴とする請求項24に記載のシステム。
  33. ユーザデータグラムプロトコルを使用してデータを受信および転送することを特徴とする請求項24に記載のシステム。
JP2005152312A 2004-05-27 2005-05-25 リアルタイムマルチメディア情報の効率的なルーティング Expired - Fee Related JP4738058B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/856,262 2004-05-27
US10/856,262 US8296366B2 (en) 2004-05-27 2004-05-27 Efficient routing of real-time multimedia information

Publications (2)

Publication Number Publication Date
JP2006018809A true JP2006018809A (ja) 2006-01-19
JP4738058B2 JP4738058B2 (ja) 2011-08-03

Family

ID=34939778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005152312A Expired - Fee Related JP4738058B2 (ja) 2004-05-27 2005-05-25 リアルタイムマルチメディア情報の効率的なルーティング

Country Status (5)

Country Link
US (1) US8296366B2 (ja)
EP (1) EP1601160A3 (ja)
JP (1) JP4738058B2 (ja)
KR (1) KR101149987B1 (ja)
CN (1) CN1703021B (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257641B1 (en) * 2000-03-30 2007-08-14 Microsoft Corporation Multipoint processing unit
US8296366B2 (en) 2004-05-27 2012-10-23 Microsoft Corporation Efficient routing of real-time multimedia information
US7986954B1 (en) 2004-06-25 2011-07-26 Nortel Networks Limited Wireless communication network having a broadcast system for information distribution
US20080301561A1 (en) * 2005-08-30 2008-12-04 David Bain Apparatus and method for automation of multimedia-enabled correspondence management systems (MCMS)
CN101179480B (zh) * 2006-11-07 2010-05-12 中兴通讯股份有限公司 一种转发流媒体的方法
AU2008202703B2 (en) * 2007-06-20 2012-03-08 Mcomms Design Pty Ltd Apparatus and method for providing multimedia content
US20110019662A1 (en) 2007-06-28 2011-01-27 Rebelvox Llc Method for downloading and using a communication application through a web browser
US8180029B2 (en) 2007-06-28 2012-05-15 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
US11095583B2 (en) 2007-06-28 2021-08-17 Voxer Ip Llc Real-time messaging method and apparatus
US9178916B2 (en) 2007-06-28 2015-11-03 Voxer Ip Llc Real-time messaging method and apparatus
US20090251441A1 (en) * 2008-04-03 2009-10-08 Livescribe, Inc. Multi-Modal Controller
US10142124B2 (en) * 2012-05-24 2018-11-27 Infineon Technologies Ag System and method to transmit data over a bus system
EP3029569A1 (en) 2014-11-07 2016-06-08 AstraZeneca UK Limited Systems for allowing annotation in real time
EP3523938A1 (en) * 2016-10-10 2019-08-14 GN Audio A/S A real time communication system
US11968268B2 (en) 2019-07-30 2024-04-23 Dolby Laboratories Licensing Corporation Coordination of audio devices

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0654322A (ja) * 1992-07-28 1994-02-25 Fujitsu Ltd 多地点制御装置を用いたtv会議の画像データ適応制御方式
US20010042131A1 (en) * 2000-04-14 2001-11-15 John Mathon System for handling information and information transfers in a computer network
US6501739B1 (en) * 2000-05-25 2002-12-31 Remoteability, Inc. Participant-controlled conference calling system
US20040117507A1 (en) * 2002-11-13 2004-06-17 (Nokia Corporation) Arranging synchronization session

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5003532A (en) * 1989-06-02 1991-03-26 Fujitsu Limited Multi-point conference system
US5206721A (en) * 1990-03-08 1993-04-27 Fujitsu Limited Television conference system
US5999173A (en) * 1992-04-03 1999-12-07 Adobe Systems Incorporated Method and apparatus for video editing with video clip representations displayed along a time line
US6675386B1 (en) 1996-09-04 2004-01-06 Discovery Communications, Inc. Apparatus for video access and control over computer network, including image correction
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
US6519540B1 (en) * 1994-10-04 2003-02-11 Iris Technologies, Inc. Signal router with cross-point view graphical interface
KR0138862B1 (ko) 1994-12-14 1998-05-15 양승택 다자간 음성 및 영상회의를 위한 선택적 음성 합성모듈의 구현장치
US5930446A (en) * 1995-04-08 1999-07-27 Sony Corporation Edition system
GB2301747A (en) * 1995-06-02 1996-12-11 Dsc Communications Remotely programmable subscriber terminal in a wireless telecommunications system
US5760767A (en) * 1995-10-26 1998-06-02 Sony Corporation Method and apparatus for displaying in and out points during video editing
US6343313B1 (en) * 1996-03-26 2002-01-29 Pixion, Inc. Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability
US5867653A (en) * 1996-04-18 1999-02-02 International Business Machines Corporation Method and apparatus for multi-cast based video conferencing
US5781188A (en) * 1996-06-27 1998-07-14 Softimage Indicating activeness of clips and applying effects to clips and tracks in a timeline of a multimedia work
US5886734A (en) * 1997-01-28 1999-03-23 Videoserver, Inc. Apparatus and method for storage and playback of video images and audio messages in multipoint videoconferencing
CA2202688C (en) * 1997-04-15 2005-07-26 Microsoft Corporation Method and system for representing hierarchical time-based data structures and to extract information therefrom
US6400378B1 (en) * 1997-09-26 2002-06-04 Sony Corporation Home movie maker
US5999966A (en) * 1997-10-07 1999-12-07 Mcdougall; Floyd Control network-directed video conferencing switching system and method
JPH11175761A (ja) * 1997-12-05 1999-07-02 Sony Corp 情報処理装置および方法、並びに提供媒体
DE69913592T2 (de) * 1998-03-31 2004-06-24 Fuji Photo Film Co. Ltd. Bildaufzeichnungsgerät
US6038425A (en) * 1998-08-03 2000-03-14 Jeffrey; Ross A. Audio/video signal redistribution system
JP4207099B2 (ja) * 1998-09-29 2009-01-14 ソニー株式会社 画像編集装置及びその方法
US6600725B1 (en) * 1998-12-16 2003-07-29 At&T Corp. Apparatus and method for providing multimedia conferencing services with selective information services
US6571255B1 (en) * 1999-04-16 2003-05-27 Robert Gonsalves Modification of media with common attributes on a digital nonlinear editing system
US6650745B1 (en) * 1999-06-10 2003-11-18 Avaya Technologies Corp. Method and apparatus for dynamically exchanging data among participants to a conference call
US6657975B1 (en) 1999-10-25 2003-12-02 Voyant Technologies, Inc. Large-scale, fault-tolerant audio conferencing over a hybrid network
US6657983B1 (en) * 1999-10-29 2003-12-02 Nortel Networks Limited Scheduling of upstream traffic in a TDMA wireless communications system
US6594773B1 (en) * 1999-11-12 2003-07-15 Microsoft Corporation Adaptive control of streaming data in a graph
US6891798B1 (en) * 2000-02-02 2005-05-10 Cisco Technology, Inc. Estimating equivalent bandwidth capacity for a network transport device using on-line measurements
US6606112B1 (en) * 2000-03-16 2003-08-12 Tandberg Telecom As Composite-video generation from different-rate constituents
US7257641B1 (en) * 2000-03-30 2007-08-14 Microsoft Corporation Multipoint processing unit
US7007098B1 (en) * 2000-08-17 2006-02-28 Nortel Networks Limited Methods of controlling video signals in a video conference
US8977683B2 (en) * 2000-12-26 2015-03-10 Polycom, Inc. Speakerphone transmitting password information to a remote device
US7864938B2 (en) * 2000-12-26 2011-01-04 Polycom, Inc. Speakerphone transmitting URL information to a remote device
US7032020B2 (en) * 2001-03-30 2006-04-18 Intel Corporation System and method for determining segment and link bandwidth capacities
US8934382B2 (en) * 2001-05-10 2015-01-13 Polycom, Inc. Conference endpoint controlling functions of a remote device
US8976712B2 (en) * 2001-05-10 2015-03-10 Polycom, Inc. Speakerphone and conference bridge which request and perform polling operations
US7161939B2 (en) * 2001-06-29 2007-01-09 Ip Unity Method and system for switching among independent packetized audio streams
CN1422078A (zh) * 2001-11-22 2003-06-04 丽台科技股份有限公司 视频会议系统
US8102984B2 (en) * 2001-12-31 2012-01-24 Polycom Inc. Speakerphone and conference bridge which receive and provide participant monitoring information
US20050213726A1 (en) * 2001-12-31 2005-09-29 Polycom, Inc. Conference bridge which transfers control information embedded in audio information between endpoints
US8885523B2 (en) * 2001-12-31 2014-11-11 Polycom, Inc. Speakerphone transmitting control information embedded in audio information through a conference bridge
US8223942B2 (en) * 2001-12-31 2012-07-17 Polycom, Inc. Conference endpoint requesting and receiving billing information from a conference bridge
US7787605B2 (en) * 2001-12-31 2010-08-31 Polycom, Inc. Conference bridge which decodes and responds to control information embedded in audio information
US7742588B2 (en) * 2001-12-31 2010-06-22 Polycom, Inc. Speakerphone establishing and using a second connection of graphics information
US8144854B2 (en) * 2001-12-31 2012-03-27 Polycom Inc. Conference bridge which detects control information embedded in audio information to prioritize operations
US7404001B2 (en) * 2002-03-27 2008-07-22 Ericsson Ab Videophone and method for a video call
US7362349B2 (en) * 2002-07-10 2008-04-22 Seiko Epson Corporation Multi-participant conference system with controllable content delivery using a client monitor back-channel
US7310355B1 (en) * 2002-08-23 2007-12-18 Digeo, Inc. Apparatus and method for powering a network device
US7533403B1 (en) * 2002-08-23 2009-05-12 Vulcan Ventures, Inc. Apparatus and method for distributing audio and video content using existing network wiring
JP2004336258A (ja) * 2003-05-02 2004-11-25 Sony Corp データ処理装置およびその方法
US20050062843A1 (en) * 2003-09-22 2005-03-24 Bowers Richard D. Client-side audio mixing for conferencing
US7558221B2 (en) * 2004-02-13 2009-07-07 Seiko Epson Corporation Method and system for recording videoconference data
US8296366B2 (en) 2004-05-27 2012-10-23 Microsoft Corporation Efficient routing of real-time multimedia information
US7554998B2 (en) * 2005-01-11 2009-06-30 Telefonaktiebolaget Lm Ericsson (Publ) Interference-based routing in a wireless mesh network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0654322A (ja) * 1992-07-28 1994-02-25 Fujitsu Ltd 多地点制御装置を用いたtv会議の画像データ適応制御方式
US20010042131A1 (en) * 2000-04-14 2001-11-15 John Mathon System for handling information and information transfers in a computer network
US6501739B1 (en) * 2000-05-25 2002-12-31 Remoteability, Inc. Participant-controlled conference calling system
US20040117507A1 (en) * 2002-11-13 2004-06-17 (Nokia Corporation) Arranging synchronization session

Also Published As

Publication number Publication date
US20050278763A1 (en) 2005-12-15
KR20060046064A (ko) 2006-05-17
JP4738058B2 (ja) 2011-08-03
EP1601160A3 (en) 2007-10-10
KR101149987B1 (ko) 2012-06-01
CN1703021B (zh) 2011-01-26
US8296366B2 (en) 2012-10-23
CN1703021A (zh) 2005-11-30
EP1601160A2 (en) 2005-11-30

Similar Documents

Publication Publication Date Title
JP4738058B2 (ja) リアルタイムマルチメディア情報の効率的なルーティング
JP5185631B2 (ja) マルチメディア会議方法および信号
US10826957B2 (en) Instant communications system having established communication channels between communication devices
US8773493B2 (en) Mobile communication terminal and method for converting mode of multiparty video call thereof
US11805158B2 (en) Method and system for elevating a phone call into a video conferencing session
US20220321631A1 (en) Instant communications system having established communication channels between communication devices
US7801134B2 (en) VoIP system, VoIP server and client, and multicast packet communication method
US20070133436A1 (en) Audio bridge for network conferencing
US20130097333A1 (en) Methods and apparatuses for unified streaming communication
US8385234B2 (en) Media stream setup in a group communication system
US20090019112A1 (en) Audio and video conferencing using multicasting
US8121057B1 (en) Wide area voice environment multi-channel communications system and method
US20050122389A1 (en) Multi-conference stream mixing
US20220021846A1 (en) System and method for scalable media switching conferencing
JP2023521507A (ja) セッション作成方法、電子機器、および可読記憶媒体
JP2021521741A (ja) 複数のビデオ会議用端末を用いてビデオ会議を提供することが可能なビデオ会議サーバ及びそのオーディオエコー除去方法
JP2009194661A (ja) 会議端末装置
CN107666396B (zh) 一种多终端会议处理方法及装置
US7469293B1 (en) Using additional information provided in session requests
WO2009014777A1 (en) Communication system for oil and gas platforms
JP2006238258A (ja) 多地点会議システム及び多地点会議方法
WO2022092126A1 (ja) 秘匿性会話可能なWeb会議システム
Karsten et al. MBone: The Multicasting Backbone
KR20020085931A (ko) 논리링 방식의 인터넷에서의 다자간 음성통신방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101207

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: 20110419

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110426

R150 Certificate of patent or registration of utility model

Ref document number: 4738058

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees