(57)【特許請求の範囲】
【請求項１】
プロセッサユニットと
前記プロセッサユニットに接続されたシステムメモリであって、前記プロセッサユニットにより実行されるプログラムを備える前記システムメモリとを備え、前記プログラムは、
第１の形式の入力メディアストリームを受信する第１のメディアミキサと、第２の形式の入力メディアストリームを受信する第２のメディアミキサと、
第１のミキシング動作に従って複数の入力メディアストリームのルーティングするための前記第１のメディアミキサの第１のミキシングアルゴリズムと、第２のミキシング動作に従って第２の形式の複数の入力メディアストリームのルーティングするための前記第２のメディアミキサの第２のミキシングアルゴリズムと、
複数の出力ストリームを生成するそれぞれの前記入力メディアストリームを接続するために前記ミキシングアルゴリズム内の少なくとも１つの前記第１のミキシング動作または前記第２のミキシング動作の少なくとも１つを修正するための命令を含むプロトコルインタフェースであって、それぞれの出力ストリームは単一の識別子により識別されるプロトコルインターフェースと
を備え、
前記プロトコルインターフェースは、さらに、前記入力メディアストリームの前記出力メディアストリームとの配線を複数の参加者に通知する命令をさらに含み、前記プロトコルインターフェースは、前記出力ストリームの特定の１つを参加者にルーティングする要求を受信する命令をさらに含み、前記要求は、前記出力ストリームの前記特定の１つの前記単一の識別子を含む、
ことを特徴とするコンピュータ実施メディア制御システム。
【請求項２】
前記プロトコルインタフェースは、実体に送信されたメディアストリームを一意に識別するためにまたは前記実体から受信されたメディアストリームを一意に識別するために、前記第１のミキシング動作、または、前記第２のミキシング動作の少なくとも１つを修正するための１つまたは複数の命令を含むことを特徴とする請求項１に記載のシステム。
【請求項３】
前記プロトコルインタフェースは、ミキサポートまたはＩＰ管理機能を除く出力ストリームへの前記メディアミキサの複数の前記入力メディアストリームを接続するために、前記第１のミキシング動作、または、前記第２のミキシング動作の少なくとも１つを修正するための１つまたは複数の命令を含むことを特徴とする請求項１に記載のシステム。
【請求項４】
前記プロトコルインタフェースは、ポリシに基づいて実体への接続情報を明らかにするための１つまたは複数の命令を含むことを特徴とする請求項１に記載のシステム。
【請求項５】
前記プロトコルインタフェースは、セッションから主要参加者を削除するまたは前記セッションに最新の参加者を追加することにより、前記セッションへの参加を変更するための１つまたは複数の命令を含むことを特徴とする請求項１に記載のシステム。
【請求項６】
前記プロトコルインタフェースは、前記セッションへの参加における変更を主要参加者に通知するための１つまたは複数の命令を含むことを特徴とする請求項５に記載のシステム。
【請求項７】
前記プロトコルインタフェースは、前記セッションに最新の参加者の入力メディアストリームを追加するための、および前記主要参加者に最新の参加者のアイデンティティを提示するための１つまたは複数の命令を含むことを特徴とする請求項５に記載のシステム。
【請求項８】
前記プロトコルインタフェースは、経路、接続およびフィルタの１つまたは複数と関連する最新の制御拡張上で動作するための１つまたは複数の命令を含むことを特徴とする請求項１に記載のシステム。
【請求項９】
前記プロトコルインタフェースおよび前記ミキシングアルゴリズムは、メディア制御ユニット内で利用されることを特徴とする請求項１に記載のシステム。
【請求項１０】
プロセッサユニットと、
前記プロセッサユニットに接続されたシステムメモリであって、前記システムメモリは、前記プロセッサユニットにより実行されるプログラムを備え、前記プログラムは、
エンドポイントを出力するためにルーティングするための一意に識別可能な出力メディアストリームに、第１の形式のメディアストリームと第２の形式のメディアストリームの入力メディアストリームをルーティングするメディア制御ユニットの第１と第２のミキシングアルゴリズムと、
出力メディアストリームへの前記入力メディアストリームの接続をルーティングの前記出力エンドポイントへ通知し、前記少なくとも１つの入力メディアストリームを出力エンドポイントへルーティングするための要求に基づき、前記出力メディアストリームへの前記少なくとも１つの入力メディアストリームの接続を変更するために、少なくとも１つの前記第１のミキシングアルゴリズム、または、前記第２のミキシングアルゴリズムを修正するための１つまたは複数の命令を有するプロトコルインタフェースと
を備えたことを特徴とするコンピュータ実施メディア制御システム。
【請求項１１】
前記第１の形式のメディアストリームは、音声ストリームであり、及び、前記第２の形式のメディアストリームは、ビデオストリームであり、前記第１及び第２のミキシングアルゴリズムは、前記プロトコルインタフェースを介して修正された時に、前記少なくとも１つのオーディオストリームの出力エンドポイントへの音声ミキシング動作を変更する音声ミキシングアルゴリズムを含み、前記第１の第２の前記ミキシングアルゴリズムは、前記プロトコルインタフェースを介して修正された時に少なくとも１つの出力エンドポイントへの映像ミキシング動作を変更する映像ミキシングアルゴリズムを含むことを特徴とする請求項１０に記載のシステム。
【請求項１２】
前記プロトコルインタフェースは、１つのエンドポイントから別のエンドポイントに対して、１つのエンドポイントから複数のエンドポイントに対して、複数のエンドポイントから単一のエンドポイントに対して、または複数のエンドポイントから複数のエンドポイントに対して、前記入力ストリームをルーティングするために第１の及び第２の前記ミキシングアルゴリズムを修正するための１つまたは複数の命令を含むことを特徴とする請求項１０に記載のシステム。
【請求項１３】
メディアストリームを管理するプロセッサにより実行されるコンピュータ実施方法であって、前記方法は、
前記複数のエンドポイントを有する会議セッション内で、前記複数のエンドポイントのそれぞれから複数の種類の少なくとも２つの入力メディアを受信するステップと、
ミキシングアルゴリズムによって規定されたミキシング動作に従って、それぞれのエンドポイントに出力メディアストリームを生成するために、会議セッションの少なくとも１つの入力メディアストリームを接続するステップであって、前記少なくとも１つの入力メディアストリームは、メディアストリームの複数の形式から選択される、ステップと、
前記エンドポイントのそれぞれと会議セッションのメディア状態を通信するステップ、前記メディア状態は、前記入力メディアストリームの前記出力メディアストリームへの前記接続を示す、ステップと、
前記エンドポイントの第１の１つにより受信された特定の出力メディアストリームを識別する要求を受信するステップと、前記要求は、特定の出力メディアストリームは、前記エンドポイントの第２の１つにより受信されることを要求する受信するステップと、
プロトコルの命令を用いて、前記ミキシングアルゴリズムをアクセスするステップと、
最新のミキシング動作により前記入力メディアストリームを再接続するために前記プロトコルを用いて、前記ミキシングアルゴリズムを変更するステップと
を含むことを特徴とする方法。
【請求項１４】
ＸＭＬファイルまたはＣＣＣＰコマンドを用いて前記ミキシングアルゴリズムへの変更を指定するステップを含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
前記プロトコルを用いて、前記入力ストリームがエンドポイントに送信された、またはエンドポイントから受信されたことを一意に識別するステップをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１６】
前記プロトコルを用いて、ポートおよびＩＰデータに関連する機能を除外する他のエンドポイントにより他の入力ストリームの混合を含むために出力でのエンドポイントの前記入力メディアストリームの再接続を指定するステップをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１７】
前記プロトコルを用いて、対応するエンドポイントの特定の出力メディアストリームへのエンドポイントの前記入力メディアストリームの接続を指定するステップをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１８】
前記プロトコルを用いて、セッション参加者への前記接続の通信を指定するステップをさらに含むことを特徴とする請求項１３の方法。
【請求項１９】
前記プロトコルを用いて、セッションポリシに基づいてセッション参加者への接続の通信を指定するステップをさらに含むことを特徴とする請求項１８に記載の方法。
【請求項２０】
前記プロトコルを用いて、セッションリーダーにより前記会議セッションの参加者混合の変更を指定するステップをさらに含むことを特徴とする請求項１３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メディア制御のためのメディアミックス配線プロトコルに関する。
【背景技術】
【０００２】
多くの会議システムが同一のメディアタイプ（例えば映像）の１つまたは複数のストリームを提供し始めるように、会議クライアントは、相互に操作可能な方式の会議システムによって提供されるような１つまたは複数のストリームを表現できる必要がある。ＳＤＰ（ＲＦＣ４５６６において記載されているようなセッション記述プロトコル）メディアラインおよびＳＤＰメディアコンテンツをグループ化するような機構は、この目的を達成する際にさらに支援する。但し、もし会議クライアントがどのようにこれらのストリームを表現すべきであるかの情況を理解しなければ、会議クライアントは、クライアントが認識していないストリームを表現することができないかもしれない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
従来のＭＣＵ（ｍｕｔｌｐｌｅ ｃｏｎｔｒｏｌ ｕｎｉｔ：多地点接続装置、以下ＭＣＵ）アーキテクチャは、実体が指定されるようなメディアを伝送することができる、または経時的に指定されるようなメディアを受信することができるように、ＭＣＵのミキサ内のメディアミックスを修正するための効率的で柔軟なプロトコルが不足している。ある作業部会は、ミキサ（例えば、「プロンプトを再生し」「ＤＴＭＦを期待し」「このメディアを再生する」など）の機能の制御により、上述の不足を解決することに取り組んでいる。但し、一方では、ミキサの機能を制御するまたは模倣する試みは、有効な機能性に限定されている。
【課題を解決するための手段】
【０００４】
以下、本明細書に記述された、いくつかの新しい実施形態の基本認識を提供するために、簡易化された発明の概要を提示する。この発明の概要は、他方面にわたる概要ではなく、主要な／重要な構成要素を識別するようにまたはその範囲の輪郭を描くようには意図されていない。唯一の目的は、後ほど提示されるより多くの詳細な説明の前置きとして簡易化された形式のいくつかの概念を提示することである。
【０００５】
開示されたアーキテクチャは、メディアストリームを接続し、ＭＣＵ内のミキシング動作を指定するための効率的で柔軟なプロトコルを提供する。したがって、実体は、指定されるようにメディアを伝送することができるし、または経時的に指定されるようにメディアを受信することができる。プロトコルは、ミキサ自体の機能性に対処せずに、メディアを混合するための修正へのコアアルゴリズムを明らかにする機能を提供する。
【０００６】
プロトコルは、以下の手段を指定することによりメディア接続を容易にする。実体に送信されるまたは実体から受信されるメディアストリームを一意に識別するための手段と、ポートおよび他のＩＰ指定に対処する必要なしに、（他の同一物により）ミキサへ送信された他の指定されたストリームの混合を含むためにミキサから生ずるメディアストリームを実体が接続する手段と、（他の同一物に送信された）ミキサから送信された特定のストリームにおいて出現するためにミキサへ送信されたメディアストリームを実体が接続する手段と、ミキサのローカルポリシに基づいた接続を閲覧することを可能にされた参加者に各種メディアストリームの接続を通信する手段と、会議リーダーが別の実体（参加者）からのストリームを含むために主要参加者の混合を変更することができる手段であって、会議のすべての参加者が別の実体の同一物を知覚することができる手段。
【０００７】
前述の関連する目的を完成するために、ある例示の態様が、以下の説明および添付された図面に関連して本明細書に記述される。但し、これらの態様は、本明細書に開示された原理の様々な方法のわずかを利用することができる以外に、そのような態様および等価物をすべて含むように意図されるということを示す。図面に関連して検討すれば、以下の詳細な説明から、他の有利性および新規の機能が明らかになるであろう。
【図面の簡単な説明】
【０００８】
【図１】ミキシングアルゴリズム動作を修正するための、コンピュータ実施メディア制御システムを示す図である。
【図２】メディア制御ユニットがコアミキシングアルゴリズムへの変更に基づいて入力ストリームを混合するためのメディアミキサコンポーネントを含む、メディアシステムを示す図である。
【図３】ミキシングアルゴリズム動作を修正するための代替システムを示す図である。
【図４】ミキシングアルゴリズムレベルで入力ストリームを出力ストリームに接続するための典型的なミキサ示す図である。
【図５】ミキシング動作にアクセスすることができ、かつミキシング動作をコアミキシングアルゴリズムで修正することができるプロトコルのための典型的なスキーマ定義を示す図である。
【図６】メディアストリームを管理する方法を示す図である。
【図７】セッションメディアストリームに再接続するためにメディアミキサのコアミキシングアルゴリズムを処理する方法を示す図である。
【図８】セッションメディアストリームに再接続するためにメディアミキサのコアミキシングアルゴリズムを処理する方法を示す図である。
【図９】開示されたプロトコルアーキテクチャに従ってコアミキシングアルゴリズムレベルでメディアストリーム接続を実行するために実施可能なコンピューティングシステムを示すブロック図である。
【図１０】アクセスプロトコルを用いてコアミキシングアルゴリズムにアクセスするための典型的なクライアントサーバコンピューティング環境の概略を示すブロック図である。
【発明を実施するための形態】
【０００９】
開示されるアーキテクチャは、メディアミキサ、例えば、ＭＣＵのコアミキシングアルゴリズムにアクセスし処理するためのプロトコルを提供する。これは、ネットワークベースの実施というよりはむしろ、クライアントベースの実施にも適用し、ユーザはクライアントレベルの音声および映像のコアミクシングを処理することができる。
【００１０】
図面はここで参照され、全体にわたって同じ参照番号は、同じ構成要素の参照に用いられる。以下の説明において、説明の目的のために、多数の特定の詳細が、その十分な理解を与えるために説明される。但し、これらの特定の詳細はなくても新しい実施形態を実施できることは明白であろう。他の実例において、周知の構成および装置はその説明を容易にするためにブロック図の型で示される。
【００１１】
図１は、ミキシングアルゴリズム動作を修正するための、コンピュータ実施メディア制御システム１００を図示している。システム１００は、１つまたは複数のミキシング動作１０８に従って入力メディアストリーム１０６を混合するためのメディアミキサ１０４の１つまたは複数のミキシングアルゴリズム１０２を含む。ミキサ１０４は、論理構成体であり、同一形式（例えば音声）のメディアストリームのセットを受信し、特異的な方式でメディアを結合し、単独出力または複数出力（例えばセッション参加者（複数可））への結果を再分配する。システム１００は、さらに、１つまたは複数の特定の出力メディアストリーム１１４を生成し、入力メディアストリーム１０６を接続するためにミキシングアルゴリズム１０２（複数可）のミキシング動作１０８を修正するための１つまたは複数の命令１１２を含むプロトコルインタフェース１１０も含む。
【００１２】
プロトコルインタフェース１１０の１つまたは複数の命令１１２は、実体に送信されたメディアストリームを一意に識別する、または実体から受信されたメディアストリームを一意に識別するミキシング動作１０８（複数可）をもたらし、ミキサポートまたはＩＰ管理機能を除外する特定の出力ストリームにメディアミキサへの入力メディアストリームを接続し、ポリシに基づいた実体に接続情報を明らかにするために、ミキシングアルゴリズム１０２の修正を容易にする。例えば、ポリシは、管理者によって生成され課されたエンタープライズポリシになりえる。
【００１３】
プロトコルインタフェース１１０の１つまたは複数の命令１１２は、セッションからの多くの主要参加者の少なくとも１人を削除するまたはセッションに新規の参加者を追加することにより、参加者によるセッションの参加において変更することも容易にする。プロトコルインタフェース１１０は、セッションへの参加の変更を主要参加者に通知するための１つまたは複数の命令１１２を含む。例えば、主要参加者Ａ、ＢおよびＣが会議中であり、参加者Ａが参加者Ｂの映像ストリームを閲覧することを要求した場合、参加者Ａが参加者Ｂを見ていることを参加者Ｃには知らせない。但し、参加者Ａが参加者Ｂのメディアストリームを見ていることは参加者Ｂに知らせることができる。プロトコルインタフェース１１０は、セッションに新規の参加者の入力メディアストリームを追加するための、および主要参加者に新規の参加者の実体情報を提示するための、１つまたは複数の命令１１２を含む。
【００１４】
１つの実施例において、プロトコルインタフェース１１０は、ミキシング動作１０８（複数可）を生成するためにミキシングアルゴリズム１０２と対話するための新規の命令セットを含む。代替実施において、１つまたは複数の命令１１２は、ミキシング動作１０８（複数可）を生成するための既存の制御セットに対する拡張を含む。新規の命令セットおよび／または制御拡張は、ルーティング、接続およびフィルタの１つまたは複数のスキーマ要素を含むスキーマに基づく。
【００１５】
図２は、メディア制御ユニット２０２がコアミキシングアルゴリズムへの変更に基づいて入力ストリームを混合するためのメディアミキサコンポーネント２０４を含む、メディアシステム２００を図示している。ここで、メディアミキサコンポーネント２０４は、同一形式の出力メディアストリーム２１０に接続（またはルーティング）するための第１の型の入力メディアストリーム２０８（複数可）（例えば音声）を受信するための第１のミキサ２０６と、同一形式の出力メディアストリーム２１６に接続（あるいはルーティング）するための第２の型の入力メディアストリーム２１４（複数可）（例えば映像）を受信するための第２のミキサ２１２との２つのミキサを含む。第１のメディアミキサ２０６は、第１のミキシング動作２２０を生成するための第１のミキシングアルゴリズム２１８を含む。
【００１６】
第１のメディアミキサ２０６の第１のミキシングアルゴリズム２１８に命令１１２の１つまたは複数を通信する場合、ユーザは、プロトコルインタフェース１１０を介して第１のミキシング動作２２０を変更するために第１のミキシングアルゴリズム２１８を処理することができる。同様に、第２のメディアミキサ２１２は、第２のミキシング動作２２４の生成のための第２のミキシングアルゴリズム２２２を含む。第２のメディアミキサ２１２の第２のミキシングアルゴリズム２２２に命令１１２の１つまたは複数を通信する場合、ユーザは、プロトコルインタフェース１１０を介して第２のミキシング動作２２４を変更するために第２のミキシングアルゴリズム２２２を処理することができる。
【００１７】
１つまたは複数の命令１１２は、入力ストリーム（２０８および２１４）を所望のとおり接続するためにミキシングアルゴリズム１０２の修正を容易にする。１つまたは複数の命令１１２は、実体に送信されたメディアストリームを一意に識別するまたは実体から受信されたメディアストリームを一意に識別し、ミキサポートまたはＩＰ管理機能を除外する特定の出力ストリームにメディアミキサへの入力メディアストリームを接続し、ポリシに基づいた実体に接続情報を明らかにするために、ミキシング動作（複数可）（２２０および２２４）を管理する。
【００１８】
システム２００は、ポイントからポイント、ポイントから複数ポイント、複数ポイントから複数ポイント、および複数ポイントから単一のポイントに対して、単一の入力ストリーム（例えば、ストリーム２０８および２１４（複数可））の接続を容易にする。システム２００は、例えば、ネットワークノード（例えばサーバ）として、および／またはクライアントコンピューティングシステム上のクライアントとして、利用することができる。
【００１９】
図３は、ミキシングアルゴリズム動作を修正するための代替システム３００を図示している。システム３００は、入力メディアストリーム３０６を受信して、修正されるミキシング動作に従って入力ストリーム３０６を出力メディアストリーム３０８にルーティングするメディアミキサ３０４を有するメディア制御ユニット３０２を含む。より具体的には、メディアミキサ３０４は、入力ストリーム３０６に音声を混合するための音声ミキシングアルゴリズム３１０、および入力メディアストリーム３０６に映像を混合するための映像ミキシングアルゴリズム３１２を含む。メディアミキサ３０４は、管理インタフェース３１４からのプロトコル命令１１２を処理するためのプロトコルインタフェース１１０を含む。言いかえれば、ユーザは、コア音声ミキシングアルゴリズム３１０および／またはコア映像ミキシングアルゴリズム３１２を修正するために、プロトコルインタフェース１１０を介して１つまたは複数の命令１１２を送信するために管理インタフェース３１４を介して対話することができる。
【００２０】
ミキシングアルゴリズム（３１０と３１２）は、出力メディアストリーム３０８に入力メディアストリーム３０６をルーティングするためのルーティングコンポーネント３１６によって処理されるミキシング動作を生成する。ルーティングコンポーネント３１６は、音声ミキシングアルゴリズム３１０から生成された音声ミキシング動作３１８、および映像ミキシングアルゴリズム３１２からの映像ミキシング動作３２０を受信して処理する。言いかえれば、入力メディアストリーム３０６は、出力実体への混合出力メディアストリーム３０８としてルーティングするための音声および／または映像信号と混合されることができる。
【００２１】
ポリシコンポーネント３２２は、混合がどのようにして行われるべきであるか、および混合が受信する実体やソースユーザなどに基づいて実行されるかを、調整することができる１つまたは複数のポリシを受信し処理する。ポリシコンポーネント３２２は、セッションの動作を管理するセッションポリシサーバを含むことができる。
【００２２】
図４は、ミキシングアルゴリズムレベルで出力ストリームに入力ストリームを接続するための典型的なミキサ１０４を図示している。ミキサ１０４は、入力（またはミキサへの）メディアストリーム４００を受信し、出力（またはミキサからの）メディアストリーム４０２を生成するために映像ミキシングアルゴリズム３１０および音声ミキシングアルゴリズム３２０に従って入力ストリーム４００を混合する。ミキシングアルゴリズム（３１０および３２０）の修正がプロトコルインタフェース１１０を介して生じる場合がある。
【００２３】
入力ストリーム４００は、ユーザおよびメディアストリームの型のためのＩＤ（ｉｄｅｎｔｉｔｙ：識別、以下ＩＤ）情報（例えば、ユーザＩＤ（ユーザＩＤ＝ｘｘ）、メディアストリームＩＤ（ＩＤ＝ｘｘ））で識別することができる。この例において、入力メディアストリームタイプＩＤ＝３０、ＩＤ＝３１、およびＩＤ＝３２およびユーザＩＤ＝２は、それぞれ第２のセッション参加者の（またはエンドポイントの）主音声ストリーム、主映像ストリームおよび二次映像ストリームのためのものでありえる。同様に、入力メディアストリームタイプＩＤ＝２４およびＩＤ＝３１は、第３のセッション参加者の（またはエンドポイントの）主音声ストリームおよび主映像ストリームのためのユーザＩＤ＝３にそれぞれ関連づけられる。他の入力ストリーム４００は、会議セッションの一部になりえる。
【００２４】
「ラベル」パラメータは、ミキサ１０４間のメディアストリームを識別する。あらかじめ示されたように、（特定ユーザとエンドポイントから）ミキサ１０４への入力ストリーム４００は、会議データモデル内のＩＤによって識別される。ラベルは会議データモデルを通じてユニークである。ＩＤはデータモデル内のエンドポイントメディアエレメント内でユニークであり、会議サーバによって生成される。
【００２５】
ラベル＝１０がすべてのセッション参加者に提供されたすべての音声入力ストリームからの音声ストリーム混合を含んでいるストリームであり、ラベル＝１１は映像混合を含み、ラベル＝１２はアクティブになった音声である映像ストリームの代替の混合であると見なす。ミキサ１０４は、参加者からラベル＝１１およびラベル＝１２の出力ストリームの両方への受信映像ストリーム４００を混合する。これはミキサモデルの一例であり、他のミキサモデルは、別の入力ストリームで解釈することができる。但し、プロトコルインタフェース１１０の導入は、開示されたアーキテクチャに従ってミキシングアルゴリズムの修正を容易にする。プロトコルインタフェース１１０は、例えばＸＭＬおよび／またはＣＣＣＰ（Ｃｅｎｔｒａｌｉｚｅｄ  Ｃｏｎｆｅｒｅｎｃｅ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ：集中型会議コントロールプロトコル）コマンドを介してミキシングアルゴリズム（３１０および３２０）への変更または修正を受信することができる。
【００２６】
図５は、コアミキシングアルゴリズムでミキシング動作をアクセス／修正することができるプロトコルのための典型的なスキーマ定義５００を図示している。スキーマ定義５００は、以下の通りにすることができる。１つの実施例において、スキーマは、集中型の会議（ＸＣＯＮ）データモデル内で規定される制御から新規の制御拡張（例えば、ルーティング、接続、フィルタを規定する。スキーマ定義５００への新しく追加される構成要素は、”＃＃”と共に以下のツリー表示で参照され、ミキサへの入力のために５０２、およびミキサの出力として５０４として限定される。
【００２７】
!<conference-info>
|
|--!<users>
|     |--....
|     |--!<user>
|     |    |--....
|     |    |--....
|     |    |
|     |    |--!<endpoint>
|     |    |      |--....
|     |    |      |--....
|     |    |      |
|     |    |      |--!<media> 
|     |    |      |    |--<type>
|     |    |      |    |--<display-text>
|     |    |      |    |--<label>
|     |    |      |    |--<src-id>
|     |    |      |    |--<status>
|     |    |      |    |--<to-mixer>*
|     |    |      |    |      |--<floor>*
|     |    |      |    |      |--<controls>*
|     |    |      |    |      |      |--<route>##
|     |    |      |    |      |      |     |--<wire>##
|     |    |      |    |      |      |     |     |--<filter>##
|     |    |      |    |      |     ...
|     |    |      |    |--<from-mixer>*
|     |    |      |    |      |--<floor>*
|     |    |      |    |      |--<controls>*
|     |    |      |    |      |      |--<route>##
|     |    |      |    |      |      |     |--<wire>##
|     |    |      |    |      |      |     |     |--<filter>##
【００２８】
以下は、プロトコルアーキテクチャがメディア接続を容易にする方法を示す一連の例である。そのようなスキーマ内に含まれるデータは、以下の例において示される。ＭＣＵ上で提供された会議ｓｉｐ：ｃｏｎｆ２３３＠ｅｘａｍｐｌｅ．ｃｏｍのためのメディア状態を持つ会議セッションを以下のように見なす。
ｈｔｔｐｓ：／／Ｍｃｕ５５．ｃｏｍｐａｎｙ．ｃｏｍ：４４４／ＭＣＵ．
【００２９】
<users>
<user entity="sip:foo@example.com">
<endpoint entity="sip:foo@example.com;gr=14837492"> 
<media id="12">
<!-this is the default stream for foo@example.com--> 
<type>audio</type> 
<status>sendrecv</status> 
<label>1111/label> 
<status>sendrecv</status> 
</media> 
<media id="34">
<!-this is the stream where foo@example.com wants to manipulate the mixing routes-->
<type>audio</type>
<status>recvonly</status>
<label>abcdl23</label>
<!-Note: No media routes defined here-->
</media> 
</endpoint>
</user> 
<user entity="sip:barl@contoso.com">
<endpoint entity="sip:barl@contoso.com;gr=14837492"> 
<media id="56">
<!-this is the default stream for foo@example.com--> 
<type>audio</type> 
<status>sendrecv</status> 
<label>efghl23</label> 
</media> 
</endpoint> 
</user> 
<user entity="sip:bar2@fabrikam.com">
<endpoint entity="sip:bar2@fabrikam.com;gr=67432333"> 
<media id="78">
<type>audio</type> 
<status>sendrecv</status> 
<label>ijkl456</label> 
</media> 
</endpoint> 
</user> 
</users>
【００３０】
以下は参加者のためのメディアルートの修正のためのＣＣＣＰコマンド（複数可）の一例である。実体ｓｉｐ：ｆｏｏ＠ｅｘａｍｐｌｅ．ｃｏｍがストリームに基づいてメディアルーティングを修正したいものと見なす。実体は、以下のＣＣＣＰコマンド「ｍｏｄｉｆｙＥｎｄｐｏｉｎｔＭｅｄｉａ」の発行によりそのようにしてもよい。以下の一例は、ｂａｒｌ＠ｃｏｎｔｏｓｏ．ｃｏｍおよびｂａｒ２＠ｆａｂｒｉｋａｍ．ｃｏｍからストリームを受信するために、ｆｏｏ＠ｅｘａｍｐｌｅ．ｃｏｍが行なう要求を示す。
【００３１】
<request 
requestld="1" 
from="client" 
to="MCU"
(xmlns spec was here)
<modifyEndpointMedia>
<endpointKeys 
confEntity=sip:conf233@example.com
userEntity="sip:foo@example.com" 
endpointEntity="sip:foo@example.com;gr=14837492"/> 
<media id="34" 
xmlns="urn:ietf:params:xml:ns:conference-info"> 
<type>audio</type> 
<status>recvonly</status>
<label>abcdl23</label> 
<from-mixer>
<controls>
<!-Note: Modified routing table-->
<route>
<wire user- 
entity="sip:barl@contoso.com" endpoint- 
entity="sip:barl@contoso.com;gr=4940254792" label="efghl23">
<filter>dtmf</filter> 
</wire> 
<wire user- 
entity="sip:bar2@fabrikam.com" endpoint-
entity="sip:bar2@fabrikam.com;gr=67432333" label="ijkl456">
<filter>dtmf</filter> 
</wire> 
</route> 
</controls> 
</from-mixer > 
</media>
</modifyEndpointMedia> 
</request>
【００３２】
応答は以下の通りにすることができる。
【００３３】
<response 
requestId="l" 
from="MCU" 
to="Client" 
code="success" 
(xmlns spec was here) 
<modifyEndpointMedia/> 
</response>
【００３４】
会議セッション（参加者のためのメディア経路）の最新の状態は、以下に示されるような状態通知を用いて、会議において他の参加者に通信することができる、または最新のＣＣＣＰコマンドを用いてポーリングすることができる。以下は通知オプションの一例である。
【００３５】
<users>
<user entity="sip:foo@example.com">
<endpoint entity="sip:foo@example.com;gr=14837492"> 
<media id="12">
<type>audio</type> 
<status>sendrecv</status> 
<label>111K/label> 
<status>sendrecv</status> 
</media> 
<media id="34">
<type>audio</type> 
<status>recvonly</status> 
<label>abcdl23</label> 
<from-mixer>
<controls>
<!-Note: Modified routing table in C3P notification-->
<route>
<wire user- 
entity="sip:barl@contoso.com" endpoint- 
entity="sip:barl@contoso.com;gr=4940254792" label="efghl23">
<filter>dtmf</filter>
</wire> 
<wire user- 
entity="sip:bar2@fabrikam.com" endpoint- 
entity="sip:bar2@fabrikam.com;gr=67432333" label="ijkl456">
<filter>dtmf</filter>
</wire> 
</route> 
</controls> 
</from-mixer> 
</media> 
</endpoint> 
</user> 
<user entity="sip:barl@contoso.com">
<endpoint entity="sip:barl@contoso.com;gr=14837492"> 
<media id="56">
<type>audio</type> 
<status>sendrecv</status> 
<label>efghl23</label> 
</media> 
</endpoint> 
</user> 
<user entity="sip:bar2@fabrikam.com">
<endpoint entity="sip:bar2@fabrikam.com;gr=67432333"> 
<media id="78">
<type>audio</type> 
<status>sendrecv</status> 
<label>ijkl456</label> 
</media> 
</endpoint> 
</user> 
</users>
【００３６】
ポーリングオプションに関して、以前の通知オプションでサイズの考察がある場合および／または秘話機能を必要とする要素をフィルタリングするシステムの機能がない場合、ポーリング機構は接続経路を取り出すために用いることができる。その機構は、特定のエンドポイントストリームを見ているユーザおよびエンドポイント（セッション参加者）のリストを戻す。下記の一例は、ｂａｒｌ＠ｃｏｎｔｏｓｏ．ｃｏｍのためのメディアウォッチャー状態およびメディアｉｄ＝５６でエンドポイントｓｉｐ：ｂａｒｌ＠ｃｏｎｔｏｓｏ．ｃｏｍ；ｇｒ＝４９４０２５４７９２を取り出すために用いることができるコマンドを示す。ｆｏｏ＠ｅｘａｍｐｌｅ．ｃｏｍがストリームを見る実体のみであるので、そのユーザ実体とエンドポイントの情報が戻される。
【００３７】
<request 
requestId="1" 
from="Client" 
to="MCU"
(xmlns spec was here) 
<getMediaWatchers> 
<endpointKeys 
confEntity="sip:conf233@example.com" 
userEntity="sip:barl@contoso.com" 
endpointEntity=sip:barl@contoso.com;gr=4940254792/> 
</getMediaWatchers> 
</request>
【００３８】
応答は以下の通りにすることができる。
【００３９】
<response 
requestId="l" 
from="MCU" 
to="Client" 
code="success" 
<getMediaWatchers> 
<users>
<user entity="sip:foo@example.com">
<endpoint 
entity="sip:foo@example.com;gr=14837492"/> 
<!−Note: There are no other XML elements returned under endpoint or user or users. -->
</user> 
</users>
</getMediaWatchers> 
</response>
【００４０】
以下は、参加者のセッション混合を達成する主要なメディア経路を修正するための典型的なＣＣＣＰコマンドである。
【００４１】
<request 
requestId="1" 
from="Client" 
to="MCU"
(xmlns spec was here) 
<modifyEntityState> 
<entityKeys 
confEntity=sip:conf233@example.com 
entityView="sip:srivats@microsoft.com;gruu;opaque=app:conf:audio-video:id:f63ad350e41f46798244bda6630db317" 
/>
<media label="main-video" 
xmlns="urn:ietf:params:xml:ns:conference-info"> 
<from-mixer>
<controls>
<!-Note: Modified routing table--> 
<route>
<wire user- 
entity="sip:barl@contoso.com" endpoint- 
entity="sip:barl@contoso.com;gr=4940254792" label="efghl23">
<filter>dtmf</filter> 
</wire> 
</route> 
</controls> 
</from-mixer> 
</media>
</modifyEntityState> 
</request>
【００４２】
応答は以下の通りにすることができる。
【００４３】
<response 
requestId="l" 
from="MCU" 
to="Client" 
code="success"
(xmlns spec was here)
<modifyEntityState/> 
</response>
【００４４】
以下は主要なメディア経路の通知の一例である。会議の最新の状態は、以下で示されるような状況通知を用いて、会議セッションの他の参加者に通信することができる。
【００４５】
<msci:entity-view ci:state="full" 
entity="sip:srivats@microsoft.com;gruu;opaque=app:conf:audio- 
video:id:f63ad350e41f46798244bda6630db317"> 
<msci:entity-capabilities> 
<msav:capabilities>
<msav:supports-audio>false</msav:supports-audio> 
<msav:supports-video>true</msav:supports-video> 
</msav:capabilities> 
</msci:entity-capabilities> 
<msci:entity-state> 
<msci:media>
<entry label="main-video"> 
<type>video</type> 
<status>sendrecv</status> 
<msci:modal-parameters> 
<msci:video-parameters>
<msav:video-mode>dominant-speaker-switched</msav:video-mode>
</msci:video-parameters> 
</msci:modal-parameters> 
<controls> 
<route>
<wire user-entity="sip:barl@contoso.com" endpoint- 
entity="sip:barl@contoso.com;gr=4940254792"
label="efghl23">
<filter/> 
</wire> 
</route> 
</controls> 
</entry>
<entry label="panoramic-video"> 
<type>panoramic-video</type> 
<status>sendrecv</status> 
</entry> 
</msci:media> 
</msci:entity-state> 
</msci:entity-view>
【００４６】
プライバシーに対する懸念に関して、プロトコル命令は、メディアがローカルポリシに基づいて会議で他の参加者にどのように接続されるかを伝達することができる。この情報を得る参加者が接続されたメディアを受信することを認められるか否かを、ローカル会議サーバポリシは考慮に入れることができる。
【００４７】
通知オプションを適応するために、（リソースの状態の加入者に通知する目的の通知要求を生成する利用者エージェントとしてＲＦＣ３２６５およびＲＦＣ４３５３において規定された）通知者は、通知が送信されているのに基づいてある要素をフィルタリングする。プライバシーの考慮がない場合、通知者は、すべての参加者にこの情報を送信することができるし、または情報を全く送信しないことを選択してもよい。
【００４８】
以下は、開示されたアーキテクチャの新たな態様を実行するための典型的な方法の一連のフローチャート表現の典型である。説明の簡易さを目的に、例えば、本明細書に示された１つまたは複数の方法がフローチャートまたはフローダイヤグラムの形式で一連の作用として示され記述されるが、いくつかの作用が、それに従って、異なる順序でおよび／または本明細書に示され記述された他の作用と同時に発生してもよいように、方法が作用の順序により限定されないことは理解され認識されるべきである。例えば、当業者は、状態図などのような一連の相互関係を持つ状態または事象として方法を代わりに表現することができることを理解し認識するであろう。さらに、方法の中で図示されたすべての作用が、新たな実施例のために必要とされるとは限らない。
【００４９】
図６は、メディアストリームを管理する方法を図示している。ステップ６００において、会議セッションの入力メディアストリームは、ミキシングアルゴリズムによって規定されたミキシング動作によるエンドポイントに接続される。ステップ６０２において、命令のプロトコルを用いてミキシングアルゴリズムにアクセスする。ステップ６０４において、最新のミキシング動作に従って入力メディアストリームを再接続するためにプロトコルを用いてミキシングアルゴリズムを変更する。
【００５０】
図７は、セッションメディアストリームを再接続するためにメディアミキサのコアミキシングアルゴリズムを処理する方法を図示している。ステップ７００において、プロトコルを用いてコアミキシングアルゴリズム（複数可）にアクセスすることができる。ステップ７０２において、エンドポイントに送信された、またはエンドポイントから受信された、入力ストリームを、プロトコルを用いて一意に識別することができる。ステップ７０４において、状況に応じて、プロトコルを用いて、ポートおよびＩＰデータと関連する機能を除く他のエンドポイントにより、他の入力ストリームの混合を含む出力のエンドポイントの入力メディアストリームの再接続を指定する。ステップ７０６において、状況に応じて、プロトコルを用いて、対応するエンドポイントの特定の出力メディアストリームにエンドポイントの入力メディアストリームを接続することを指定する。
【００５１】
図８は、セッションメディアストリームを再接続するためにメディアミキサのコアミキシングアルゴリズムを処理する方法を示している。ステップ８００において、プロトコルを用いてコアミキシングアルゴリズム（複数可）にアクセスすることができる。ステップ８０２において、プロトコルを用いてセッション参加者への接続の通信を指定する。ステップ８０４において、プロトコルを用いて、セッションポリシに基づいて、セッション参加者への接続の通信を指定する。ステップ８０６において、プロトコルを用いて、セッションリーダーにより会議セッションの参加者混合の変更を指定する。
【００５２】
このアプリケーションにおいて用いられるように、用語「コンポーネント」および「システム」は、コンピュータ関連の実体を指し、ハードウェア、ハードウェアとソフトウェアとの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかを指すように意図されている。例えば、コンポーネントは、プロセッサ上で実行する処理、プロセッサ、ハードディスクドライブ、複数の記憶ドライブ（光学のおよび／または磁気の記憶媒体、オブジェクト、実行ファイル、実行スレッド、プログラムおよび／またはコンピュータでありえるが、限定的ではない。図を通じて、サーバ上で作動するアプリケーションとサーバとの両方は、コンポーネントになりえる。１つまたは複数のコンポーネントは、処理および／または実行スレッド内に存在することができ、コンポーネントを１つのコンピュータに配置するおよび／または２つ以上のコンピュータ間で分散させることができる。
【００５３】
ここで図９を参照すると、開示されたプロトコルアーキテクチャに従ってコアミキシングアルゴリズムレベルにてメディアストリーム接続を実行するために実施可能なコンピューティングシステム９００のブロック図が示されている。その様々な態様のために付加的な文脈を提供するために、図９および以下の説明は、様々な態様を実行することができる好適なコンピューティングシステム９００の簡潔な概要を提供することを意図している。上述の説明が、１つまたは複数のコンピュータ上で実行できるコンピュータ実行可能な命令の一般的な文脈である一方で、当業者は、他のプログラムモジュールと組み合わせておよび／またはハードウェアとソフトウェアとを組み合わせて、新しい実施形態も実行することができることを認識するであろう。
【００５４】
一般に、プログラムモジュールは、特定のタスクを実行するまたは特定の抽象データ型を実行する、ルーチン、プログラム、コンポーネント、データ構造などを含む。さらに、当業者は、１つまたは複数の関連づけられる装置に効果的に結合することができる、パーソナルコンピュータ、携帯型のコンピュータ装置、マイクロプロセッサベースのまたはプログラミング可能な家電だけでなく、シングルプロセッサまたはマルチプロセッサコンピュータシステム、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成で創造性のある方法を実施することができることを認識するであろう。
【００５５】
図示する態様も、通信網を介してリンクされる遠隔処理装置によってあるタスクが実行される分散コンピューティング環境で実施することができる。分散コンピューティング環境において、プログラムモジュールは、ローカルと遠隔の記憶デバイスの両方に配置することができる。
【００５６】
コンピュータは、典型的には様々なコンピュータ読み取り可能な媒体を含む。コンピュータ読み取り可能な媒体は、コンピュータによってアクセスすることができ、揮発性・不揮発性の媒体、リムーバブル・非リムーバブルメディアを含むあらゆる有効な媒体でありえる。限定ではなく一例として、コンピュータ読み取り可能な媒体は、コンピュータ記憶装置の媒体および通信媒体を含むことができる。コンピュータ記憶装置の媒体は、コンピュータ読み取り可能の命令、データ構造、プログラムモジュールまたは他のデータなどのような情報を記憶するための任意の方法または技術で実現された、揮発性、不揮発性、リムーバブル・非リムーバブル媒体を含む。コンピュータ記憶装置の媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（ｄｉｇｉｔａｌ ｖｉｄｅｏ ｄｅｓｋ：ディジタル映像ディスク）もしくは他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置デバイス、または所望の情報を格納するために用いることができコンピュータによってアクセスされることができる他の媒体を含むが、限定的ではない。
【００５７】
再び図９を参照すると、様々な態様を実行するための典型的なコンピューティングシステム９００は、処理装置９０４、システムメモリ９０６およびシステムバス９０８を有するコンピュータ９０２を含む。システムバス９０８は、処理装置９０４へのシステムメモリ９０６を含むがこれに限定されないシステムコンポーネントのためのインタフェースを提供する。処理装置９０４は、市販で入手可能な様々なプロセッサのいずれかでありえる。デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャも、処理装置９０４として利用してもよい。
【００５８】
システムバス９０８は、様々な市販で入手可能なバスアーキテクチャのいずれかを用いて、メモリーバス（メモリ・コントローラの有無に関わらず）、周辺バスおよびローカルバスにさらに相互に接続できるいくつかの型のバス構造のいずれかでありえる。システムメモリ９０６は、不揮発性メモリ（ＮＯＮ−ＶＯＬ）９１０および／または揮発性メモリ９１２（例えばＲＡＭ（ｒａｎｄｏｍ ａｃｃｅｓｓ ｍｅｍｏｒｙ：ランダムアクセスメモリ、以下ＲＡＭ））を含むことができる。ＢＩＯＳ（ｂａｓｉｃ ｉｎｐｕｔ／ｏｕｐｕｔ ｓｙｓｔｅｍ：基本入出力システム、以下ＢＩＯＳ）は、不揮発性メモリ９１０（例えばＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、など）において格納することができ、ＢＩＯＳは、起動の間などでコンピュータ９０２内の要素間の情報を転送することを支援する基本ルーチンである。揮発性メモリ９１２は、データをキャッシュに入れるためのスタティックＲＡＭなどのような高速ＲＡＭをさらに含むことができる。
【００５９】
コンピュータ９０２は、さらに、ＨＤＤ（ｈａｒｄ ｄｉｓｃ ｄｒｉｖｅ：内蔵ハードディスクドライブ、以下ＨＤＤ）９１４（例えばＥＩＤＥ、ＳＡＴＡ）を含み、内蔵ＨＤＤ９１４は、相応のシャーシ、磁気ＦＤＤ（ｆｌｏｐｐｙ ｄｉｓｃ ｄｒｉｖｅ：フロッピーディスクドライブ、以下ＦＤＤ）９１６（例えばリムーバブルなディスケット９１８から読み書きする）および光ディスク駆動装置９２０（例えば、ＣＤ−ＲＯＭディスク９２２を読み取るまたは、ＤＶＤなどのような他の高容量光学媒体から読み書きする）で外用のために構成されてもよい。ＨＤＤ９１４、ＦＤＤ９１６および光ディスク駆動装置９２０は、ＨＤＤインタフェース９２４、ＦＤＤインタフェース９２６および光ドライブインタフェース９２８によってシステムバス９０８にそれぞれ接続することができる。外付け型ドライブの実現のためのＨＤＤインタフェース９２４は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ：ユニバーサルシリアルバス、以下ＵＳＢ）およびＩＥＥＥ１３９４インタフェース技術のうちの少なくとも１つまたは両方を含むことができる。
【００６０】
ドライブおよび関連するコンピュータ読み取り可能な媒体は、データ、データ構造、コンピュータ実行可能命令などの不揮発性記憶装置を備える。コンピュータ９０２にとって、ドライブと媒体は、適切なデジタル形式でいかなるデータの記憶装置にも適応する。上述のコンピュータ読み取り可能な媒体の説明は、ＨＤＤ、リムーバブルな磁気ディスケット（例えばＦＤＤ）、およびＣＤまたはＤＶＤなどのようなリムーバブルな光学媒体を指すが、ジップドライブ、磁気カセット、フラッシュメモリカード、カートリッジなどのようなコンピュータにより読取り可能な他の型の媒体も典型的なオペレーティング環境で用いられてもよく、さらに、いかなるそのような媒体も、開示されたアーキテクチャの新しい方法を実行するためのコンピュータ実行可能命令を含んでもよいことは当業者によって当然理解されるものである。
【００６１】
多くのプログラムモジュールは、オペレーティングシステム９３０、１つまたは複数のアプリケーションプログラム９３２、他のプログラムモジュール９３４およびプログラムデータ９３６を含んで、ドライブおよび揮発性メモリ９１２に格納することができる。１つまたは複数のアプリケーションプログラム９３２、他のプログラムモジュール９３４およびプログラムデータ９３６は、例えば、ミキシングアルゴリズム１０２、メディアミキサ１０４、入力メディアストリーム１０６、ミキシング動作１０８、プロトコルインタフェース１１０、プロトコル命令１１２、出力メディアストリーム１１４、音声ミキシングアルゴリズム３１０、映像ミキシングアルゴリズム３２０、入力メディアストリーム４００、出力メディアストリーム４０２、およびスキーマ５００を含むことができる。
【００６２】
オペレーティングシステム、アプリケーション、モジュールおよび／またはデータのすべてまたは一部も揮発性メモリ９１２内のキャッシュに入れることができる。様々な市販で入手可能なオペレーティングシステムまたはオペレーティングシステムの組み合わせにより、開示されたアーキテクチャを実現することができることは認識されるべきである。
【００６３】
ユーザは、例えばキーボード９３８、マウス９４０などのようなポインティングデバイスといった、１つまたは複数の有線／無線入力装置を通じてコンピュータ９０２へコマンドと情報とを入力することができる。他の入力装置（図示せず）は、マイクロホン、ＩＲリモートコントロール、ジョイスティック、ゲームパッド、スタイラスペン、タッチスクリーンなどを含んでもよい。これらおよび他の入力装置は、システムバス９０８に接続される入力装置インタフェース９４２を通じて処理装置９０４に多くの場合接続されるが、パラレルポート、ＩＥＥＥ１３９４シリアルポート、ゲームポート、ＵＳＢポート、ＩＲインタフェースなどのような他のインタフェースによっても接続することができる。
【００６４】
モニタ９４４または他の型のディスプレイ装置も、映像アダプタ９４６などのようなインタフェースを介してシステムバス９０８に接続される。モニタ９４４に加えて、コンピュータは、典型的にはスピーカ、プリンタなどのような他の周辺出力装置（図示せず）を含む。
【００６５】
コンピュータ９０２は、リモートコンピュータ９４８（複数可）などのような１つまたは複数のリモートコンピュータへの有線および／または無線通信を介した論理的接続を用いて、ネットワーク化された環境内で作動してもよい。リモートコンピュータ９４８（複数可）は、ワークステーション、サーバコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサベースの娯楽機器、ピア装置または他の共通ネットワークノードでもよく、簡潔さの目的のためにメモリ／記憶装置９５０のみを図示しているが、典型的には、コンピュータ９０２に関連して記述された多数またはすべての構成要素を含む。描写された論理的接続は、ＬＡＮ（ｌｏｃａｌ ａｒｅａ ｎｅｔｗｏｒｋ：ローカルエリアネットワーク、以下ＬＡＮ）９５２および／または例えばＷＡＮ（ｗｉｄｅ ａｒｅａ ｎｅｔｗｏｒｋ：広域ネットワーク、以下ＷＡＮ）９５４といったより大きなネットワークへの有線／無線接続を含む。そのようなＬＡＮとＷＡＮのネットワーキング環境は、オフィスと会社において普通のことであり、イントラネットなどのような企業規模のコンピュータネットワークを容易にし、その全部は例えばインターネットといったグローバル通信ネットワークに接続してもよい。
【００６６】
ＬＡＮネットワーキング環境において用いられる時、コンピュータ９０２は、有線および／または無線通信ネットワークインタフェースまたはアダプタ９５６を通じてＬＡＮ９５２に接続される。アダプタ９５６は、ＬＡＮ９５２への有線および／または無線通信を容易にすることができ、アダプタ９５６の無線機能と通信するためにワイヤレスアクセスポイントを含んでもよい。
【００６７】
ＷＡＮネットワーキング環境において用いられる時、コンピュータ９０２は、モデム９５８を含むことができるか、またはＷＡＮ９５４上の通信サーバに接続されるか、またはインターネットによるなどしてＷＡＮ９５４上の通信を確立するための他の手段を有する。モデム９５８は内部または外部、および有線および／または無線装置であり、入力装置インタフェース９４２を介してシステムバス９０８に接続される。ネットワーク化された環境において、コンピュータ９０２あるいはその部分に関連して表されたプログラムモジュールは、遠隔のメモリ／記憶装置９５０に格納することができる。示されたネットワーク接続がコンピュータ間の通信リンクを確立する典型的で他の手段を用いることができることは十分に理解されるだろう。
【００６８】
コンピュータ９０２は、有線および無線デバイスまたは無線通信（例えば、ＩＥＥＥ８０２．１１無線経由の変調方式）に効果的に配置された無線デバイスなどのような標準規格のＩＥＥＥ８０２ファミリーを用いる実体で、例えば、プリンタ、スキャナ、デスクトップおよび／またはポータブルコンピュータ、ＰＤＡ（ｐｅｒｓｏｎａｌ ｄｉｇｉｔａｌ ａｓｓｉｓｔａｎｔ：携帯情報端末）、通信衛星、無線で検知できるタグで関連づけた装置の任意の部分または位置（例えばキオスク端末、新聞売店、洗面所）、および電話により通信することが実施可能である。これは、少なくともワイファイ（またはワイヤレスフィデリティ）、ワイマックスおよびブルートゥース（商標）の無線技術を含む。したがって、その通信は、少なくとも２つの装置間の従来のネットワークまたは単純にアドホック通信のような定義済みの構成になりえる。ワイファイネットワークは、セキュアな、確実で、高速の無線接続性を提供するために、ＩＥＥＥ８０２．１１ｘ（ａ、ｂ、ｇなど）と呼ばれる無線技術を用いる。ワイファイネットワークは、互いにコンピュータに、インターネットに、有線ネットワーク（ＩＥＥＥ８０２．３に関連したメディアと機能を用いる）に接続するために用いることができる。
【００６９】
ここで図１０を参照すると、アクセスプロトコルを用いて、コアミキシングアルゴリズムにアクセスするための、典型的なクライアントサーバコンピューティング環境１０００の概略ブロック図が示されている。環境１０００は、１つまたは複数のクライアント１００２（複数可）を含む。クライアント１００２（複数可）は、ハードウェアおよび／またはソフトウェア（例えばスレッド、処理、コンピュータ装置）になりえる。例えば、クライアント１００２（複数可）は、クッキーおよび／または関連づけられる文脈の情報を収容することができる。
【００７０】
環境１０００は、１つまたは複数のサーバ１００４（複数可）を含む。サーバ１００４（複数可）は、ハードウェアおよび／またはソフトウェア（例えばスレッド、処理、コンピュータ装置）にもなりえる。例えば、サーバ１００４は、アーキテクチャの利用により変換を実行するためにスレッドを収容することができる。クライアント１００２とサーバ１００４との間の可能な１つの通信は、２つ以上のコンピュータ処理間で伝送されるのに適応したデータパケットの型にすることができる。例えば、データパケットは、クッキーおよび／または関連づけられる文脈の情報を含んでもよい。環境１０００は、クライアント１００２（複数可）とサーバ１００４（複数可）との間の通信を容易にするために利用することができる通信フレームワーク１００６（例えばインターネットなどのようなグローバル通信ネットワーク）を含む。
【００７１】
通信は、有線（光ファイバを含む）および／または無線技術を介して容易にできる。クライアント１００２（複数可）は、クライアント１００２（複数可）に対してローカルに情報（例えばクッキーおよび／または関連づけられる文脈の情報）を格納するために利用することができる１つまたは複数のクライアントデータ記憶装置１００８に効果的に接続される。同様に、サーバ１００４（複数可）は、サーバ１００４に対してローカルに情報を格納するために利用することができる１つまたは複数のサーバデータ記憶装置１０１０（複数可）に効果的に接続される。
【００７２】
サーバ１００４（複数可）は、例えば、ミキシングアルゴリズム１０２、メディアミキサ１０４、入力メディアストリーム１０６、ミキシング動作１０８、プロトコルインタフェース１１０、プロトコル命令１１２、出力メディアストリーム１１４、メディア制御ユニット２０２、メディアミキサコンポーネント２０４、メディアミキサ（２０６および２１２）、ミキシングアルゴリズム（２１８および２２２）および対応するミキシング動作（２２０および２２４）、音声ミキシングアルゴリズム３１０、映像ミキシングアルゴリズム３２０、入力メディアストリーム４００、出力メディアストリーム４０２およびスキーマ５００を含むことができる。クライアント１００２（複数可）は、ＭＣＵ以外は、サーバ１００４（複数可）用に記述された実体のいくつかまたはすべてをも含むことができ、それは典型的にはネットワークベースの実体である。
【００７３】
以上に記述されたものは、開示されたアーキテクチャの例を含む。もちろんコンポーネントおよび／または方法のすべての考えられる組み合わせを記述することはできないが、当業者は、さらに多数の組み合わせと置換とが可能であることを当然理解されよう。したがって、新規のアーキテクチャは、添付された請求項の精神および範囲内に収まる限り、改造、修正および変形物をすべて包含するように意図される。更に、用語「含む（ｉｎｃｌｕｄｅｓ）」は詳細な説明または請求項のいずれかにおいて用いられる限り、当該用語は、請求項で暫定的な用語として利用される際に用語「備える（ｃｏｍｐｒｉｓｉｎｇ）」と解釈されるように、「備える（ｃｏｍｐｒｉｓｉｎｇ）」と同様の方式で包括的になるように意図される。
【図１】
0005405494.tif 000002
【図２】
0005405494.tif 000003
【図３】
0005405494.tif 000004
【図４】
0005405494.tif 000005
【図５】
0005405494.tif 000006
【図６】
0005405494.tif 000007
【図７】
0005405494.tif 000008
【図８】
0005405494.tif 000009
【図９】
0005405494.tif 000010
【図１０】
0005405494.tif 000011