(57)【要約】【課題】最適なコーデックと多地点接続装置を選択し、トランスコーディングを行うこと。【解決手段】分散ハッシュテーブル技術によりハッシュ空間上に割り当てられて構成されるオーバレイネットワークが用いられるビデオ会議システムに適用される。第１の映像／音声処理装置１０は、処理可能なコーデックの情報を記憶する第１の記憶部と、第１の記憶部に記憶されたコーデックの情報に基づいて、第１のコーデックでデータをコーデックする映像処理部５と音声処理部６と、を備える。そして、第１のＭＣＵ５０は、隣り合うノードで処理可能なコーデックの情報を記憶する第２の記憶部と、第２の記憶部に記憶され、隣り合うノードで処理可能なコーデックの情報に基づいて、第１のコーデックで処理されたデータを、第２のコーデックにトランスコーディングする映像トランスコード部と、音声トランスコード部５２と、を備える。【選択図】図８
2009159504.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのノードが、分散ハッシュテーブル技術によりハッシュ空間上に割り当てられて構成されるオーバレイネットワークが用いられ、前記ノードには、データをコーデックする複数のデータ処理装置と、前記複数のデータ処理装置でコーデックされたデータを他のコーデックにトランスコーディングする多地点接続装置が含まれるビデオ会議システムにおいて、
前記データ処理装置は、
処理可能なコーデックの情報を記憶する第１の記憶部と、
前記第１の記憶部に記憶されたコーデックの情報に基づいて、第１のコーデックでデータをコーデックするデータ処理部と、を備え、
前記多地点接続装置は、
隣り合う前記ノードで処理可能なコーデックの情報を記憶する第２の記憶部と、
前記第２の記憶部に記憶され、前記隣り合うノードで処理可能なコーデックの情報に基づいて、前記第１のコーデックで処理されたデータを、第２のコーデックにトランスコーディングするトランスコード部を備えることを特徴とする
ビデオ会議システム。
【請求項２】
請求項１記載のビデオ会議システムにおいて、
前記データ処理装置は、
他のデータ処理装置で処理可能なコーデックの情報及び前記多地点接続装置でトランスコーディング可能なコーデックの情報を前記第１の記憶部に記憶し、
前記第１の記憶部に記憶された、前記他のデータ処理装置で処理可能なコーデックの情報及び前記多地点接続装置でトランスコーディング可能なコーデックの情報に基づいて、前記多地点接続装置を選択することを特徴とする
ビデオ会議システム。
【請求項３】
請求項２記載のビデオ会議システムにおいて、
前記多地点接続装置は、
前記第２の記憶部に、前記隣り合うノードに配置される前記データ処理装置が処理可能なコーデックの情報と、他の多地点接続装置がトランスコーディング可能なコーデックの情報を記憶することを特徴とする
ビデオ会議システム。
【請求項４】
少なくとも１つのノードが、分散ハッシュテーブル技術によりハッシュ空間上に割り当てられて構成されるオーバレイネットワークが用いられ、前記ノードには、データをコーデックする複数のデータ処理装置と、前記複数のデータ処理装置でコーデックされたデータを他のコーデックにトランスコーディングする多地点接続装置が含まれるビデオ会議方法において、
前記データ処理装置は、
処理可能なコーデックの情報を記憶し、
前記記憶されたコーデックの情報に基づいて、第１のコーデックでデータをコーデックし、
前記多地点接続装置は、
隣り合う前記ノードで処理可能なコーデックの情報を記憶し、
前記隣り合うノードで処理可能なコーデックの情報に基づいて、前記第１のコーデックで処理されたデータを、第２のコーデックにトランスコーディングすることを特徴とする
ビデオ会議方法。
【請求項５】
少なくとも１つのノードが、分散ハッシュテーブル技術によりハッシュ空間上に割り当てられて構成されるオーバレイネットワークが用いられ、前記ノードには、データをコーデックする複数のデータ処理装置と、前記複数のデータ処理装置でコーデックされたデータを他のコーデックにトランスコーディングする多地点接続装置が含まれるプログラムにおいて、
前記データ処理装置は、
処理可能なコーデックの情報を記憶する第１の記憶処理と、
前記記憶されたコーデックの情報に基づいて、第１のコーデックでデータをコーデックするコーデック処理と、を行い、
前記多地点接続装置は、
隣り合う前記ノードで処理可能なコーデックの情報を記憶する第２の記憶処理と、
前記第２の記憶処理によって記憶され、前記隣り合うノードで処理可能なコーデックの情報に基づいて、前記第１のコーデックでコーデックされたデータを、第２のコーデックにトランスコーディングするトランスコード処理と、を行うことを特徴とする
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、処理可能なコーデックが異なる複数の装置間でデータを送受信する場合に、適切なコーデックにトランスコーディングするビデオ会議システム、ビデオ会議方法及びプログラムに関する。
【背景技術】
【０００２】
従来、例えば、離れた場所で同時に開催される会議を円滑に進めるため、互いの会議室に設置されたビデオ会議システムを用いて、話者が相互に発言したり、話者の様子を映し出したりすることが可能なビデオ会議システムが用いられている。このビデオ会議システムは、互いの会議室の様子を映したり、話者の発言内容を放音したりすることが可能な複数の映像／音声処理装置を備える。
【０００３】
映像／音声処理装置は、会議中の音声を収音するマイクロホンと、話者を撮影するカメラと、マイクロホンで収音した話者の音声に所定の処理を施す信号処理部と、他の会議室で発話する話者の様子を映し出す表示部と、話者の発話内容を放音するスピーカ等を備える。それぞれの会議室に設置された映像／音声処理装置は、通信回線を介して接続される。そして、記録した映像／音声データを互いに送受信することによって、それぞれの会議室の様子を表示し、発話内容を放音する。
【０００４】
そして、複数の拠点に設置された複数のビデオ会議システムで処理できるコーデックにデータをトランスコーディングする多地点接続装置（以下、単にＭＣＵ（Multi-point Control Unit）とも称する。）が用いられている。ＭＣＵを用いることによって、多地点に設置された映像／音声処理装置から構成されるビデオ会議システムによって、ビデオ会議を実現できる。そして、複数の映像／音声処理装置で扱えるコーデックが異なる場合、ＭＣＵが送受信するデータをトランスコーディングすることによって、送受信したデータを互いの装置間で利用できる。
【０００５】
特許文献１には、ＭＣＵを用いて親端末の映像を子端末に通知する技術について開示されている。
【特許文献１】特開２０００−２３１２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、ＭＣＵでトランスコーディングを行う場合における処理の負荷は重いため、リアルタイムでデータ送受信する場合に支障を来す場合がある。また、伝送されたデータのコーデックをトランスコーディングするため、画質や音質の劣化が発生してしまう。全ての映像／音声処理装置のコーデック情報を予め知ることができればトランスコーディング処理が少なくなるようにコーデックを選択することも可能である。しかし、全ての映像／音声処理装置で使用可能な全てのコーデック情報を管理するために管理サーバ等を準備すると、コストが発生してしまうため得策ではない。また、トランスコーディングの処理は、負荷がかかるため、できるだけトランスコーディングを行わなくてすむことが望ましい。
【０００７】
本発明はこのような状況に鑑みて成されたものであり、最適なコーデックを選択して、トランスコーディングを行うことを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、少なくとも１つのノードが、分散ハッシュテーブル技術によりハッシュ空間上に割り当てられて構成されるオーバレイネットワークが用いられ、ノードには、データをコーデックする複数のデータ処理装置と、複数のデータ処理装置でコーデックされたデータを他のコーデックにトランスコーディングする多地点接続装置が含まれる場合に適用される。そして、データ処理装置は、処理可能なコーデックの情報を記憶し、記憶されたコーデックの情報に基づいて、第１のコーデックでデータをコーデックする。また、多地点接続装置は、隣り合うノードで処理可能なコーデックの情報を記憶し、隣り合うノードで処理可能なコーデックの情報に基づいて、第１のコーデックで処理されたデータを、第２のコーデックにトランスコーディングする。
【０００９】
このようにしたことで、各ノードに配置される映像／音声処理装置毎に利用可能なコーデックを選択し、多地点接続装置でデータをトランスコーディングすることが可能となる。
【発明の効果】
【００１０】
本発明によれば、オーバレイネットワークを利用して、映像／音声処理装置が利用可能なコーデックと多地点接続装置がトランスコーディング可能なコーデック情報とを管理しているため、適切な多地点接続装置を選択し、処理負荷が少ないトランスコーディングを行うことができるという効果がある。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の一実施の形態例について、添付図面を参照して説明する。本実施の形態例では、映像データと音声データの処理を行う映像／音声処理システムとして、遠隔地間で映像データと音声データをリアルタイムで送受信可能なビデオ会議システム１００に適用した例として説明する。ビデオ会議システム１００は、例えば、多地点で同時に会議を行う会議システムとして用いられる。
【００１２】
まず、ビデオ会議システム１００が実現されるネットワークの構成例について、図１を参照して説明する。映像／音声処理装置とＭＣＵはノードとしてオーバレイネットワークを構成する。そして、映像／音声処理装置とＭＣＵは、隣り合うノードのコーデック情報を保持する。
【００１３】
図１（ａ）は、ビデオ会議システム１００のネットワークの構成例を示す図である。ビデオ会議システム１００は、互いに通信回線で接続される多地点のノードで構成される。
ビデオ会議システム１００は、第１の映像／音声処理装置１０〜第４の映像／音声処理装置４０と、第１のＭＣＵ５０と、第２のＭＣＵ６０から構成される。第１の映像／音声処理装置１０〜第４の映像／音声処理装置４０と、第１のＭＣＵ５０と、第２のＭＣＵ６０は、オーバレイネットワークを構成する。ＭＣＵは、映像／音声処理装置が処理可能なコーデックの情報と、他のＭＣＵがトランスコーディング可能なコーデックの情報を保持する。このため、例えば、多地点で同時にビデオ会議を行う際、ＭＣＵは、各映像／音声処理装置が使用可能な最適なコーデックを選択して、トランスコーディングすることができる。
【００１４】
図１（ｂ）は、各ＭＣＵがトランスコーディング可能なコーデックの例を示す図である。
第１のＭＣＵ５０が処理可能なコーデックは、Ｈ．２６４，ＭＰＥＧ（Moving Picture Experts Group）４，ＭＰＥＧ２である。
第２のＭＣＵ６０が処理可能なコーデックは、ＭＰＥＧ４，ＭＰＥＧ２，ＭＰＥＧ１である。
【００１５】
図１（ｃ）は、各映像／音声処理装置が処理可能なコーデック（圧縮符号化方式）の例を示す図である。
第１の映像／音声処理装置１０が処理可能なコーデックは、Ｈ．２６４である。
第２の映像／音声処理装置２０が処理可能なコーデックは、Ｈ．２６４，ＭＰＥＧ４である。
第３の映像／音声処理装置３０が処理可能なコーデックは、ＭＰＥＧ４，ＭＰＥＧ２である。
第４の映像／音声処理装置４０が処理可能なコーデックは、ＭＰＥＧ２である。
【００１６】
本実施の形態に係るビデオ会議システム１００は、ネットワークに接続されたすべてのノード（ピアノード）が動的にその役割を変えられる、ピア・ツー・ピア（以降Ｐ２Ｐと称する）と呼ばれる接続形態を採用することを特徴としている。
従来のクライアント・サーバ型のシステムで、サーバが一括して保有していたデータは、Ｐ２Ｐを用いたシステムにおいては各ピアノードに分散して保存される。つまり、データの保存場所の検索はピアノード同士が協力して行う。
【００１７】
データの保存場所の検索技術としては、例えば分散ハッシュテーブル（以下、ＤＨＴ：Distributed Hash Tableと称する）が知られている。ＤＨＴでは、データから生成されたハッシュ値と近いハッシュ値を持つノードに、データの実体の保存場所情報が登録される。このとき、データのハッシュ値生成とノードのハッシュ値生成には、同じハッシュ関数が使われる。そして、データの実態の保存場所情報が登録された各ノードにおいて、データのハッシュ値とデータの実態の保存場所情報との組が、テーブル（ハッシュテーブル）として保持される。
【００１８】
ハッシュ値は、元となるデータが異なれば全く違う値となるため、データの保存場所情報が登録される先も、ネットワーク上に分散される。つまり、ハッシュテーブルが各ピアノードに分散して配置されるため、各ピアノードにかかる負荷も分散される。
【００１９】
データの検索を行う場合には、データのハッシュ値を算出してそのハッシュ値をキーに検索すればよい。ＤＨＴでは、ネットワークを構成するすべてのノードに、近傍のノードへのルートが記されたルーティングテーブルを予め備えさせており、そのルーティングテーブルにおいては、各ノード間の距離が、各ノードのハッシュ値で表現されている。
【００２０】
ネットワーク上のいずれかのノードに登録されたデータを参照したい場合は、まずそのデータのハッシュ値を求め、自ノード内のルーティングテーブルの中で、データのハッシュ値と最も近いハッシュ値を持つノードに対して、検索要求を投げかける。検索要求を受け取ったノードがデータの保存場所情報を所持していない場合は、今度は検索要求を受け取ったノードが、自ノード内のルーティングテーブルの中の、データのハッシュ値と最も近いハッシュ値を持つノードに対して、検索要求を投げかける。このような動作が繰り返されることにより検索範囲が縮まっていき、最終的に、検索したいデータの保存場所情報を得ることが可能となる。検索したいデータの保存場所情報が分かれば、その情報を基に実際のデータを取得することができる。つまり、ＤＨＴの技術を利用して構築されたオーバレイネットワーク上では、データの実体がどこにあるかを意識することなく、データ実体にアクセスすることが可能となる。
【００２１】
このように、ＤＨＴでは、ハッシュ値で示された各ピアノード間の距離に基づいてルーティングが行われるため、ＩＰネットワーク上に設けられたセグメントを意識する必要がなくなる。つまり、ＩＰ層よりも上の層でルーティングを行うＤＨＴを用いて、オーバレイネットワークを構築することが可能となる。
【００２２】
次に、ビデオ会議システム１００の内部構成例について、図２を参照して説明する。
図２は、第１の映像／音声処理装置１０と第１のＭＣＵ５０が接続される場合の構成例を示す図である。図示しないが、第１の映像／音声処理装置１０と第１のＭＣＵ５０は、例えば、イントラネット等の通信回線によって他の複数台の映像／音声処理装置やＭＣＵが接続されうる。
【００２３】
第１の映像／音声処理装置１０は、話者を撮影して、アナログ映像データを生成する撮像部１と、撮像部１から供給されるアナログ映像データをディジタル映像データに変換するアナログ／ディジタル（Ａ／Ｄ：Analog/Digital）変換部１１と、を備える。
【００２４】
撮像部１は、レンズ部１ａを備えており、レンズ部１ａを介して入射した像光をＣＣＤ（Charge Coupled Device）撮像素子１ｂの撮像面に結像させる構成としている。撮像部１によって生成されたアナログ映像データは、アナログ／ディジタル変換部１１に供給される。
【００２５】
また、第１の映像／音声処理装置１０は、ディジタル映像データを所定のコーデックで符号／復号化する映像処理部５と、映像処理部５から供給されるディジタル映像データをアナログ映像データに変換するディジタル／アナログ変換部１２と、ディジタル／アナログ変換部１２から供給されるアナログ映像データをアンプ（不図示）で増幅し、映像を表示する表示部３と、を備える。映像処理部５は、記憶部１７（後述の図３を参照）から読み出したコーデックの情報に基づいて、ディジタル映像データを所定のコーデックで符号／復号化する。
【００２６】
また、第１の映像／音声処理装置１０は、話者が発話する音声を収音してアナログ音声データを生成するマイクロホン２と、マイクロホン２から供給されるアナログ音声データを、アンプ（不図示）で増幅し、ディジタル音声データに変換するアナログ／ディジタル変換部１３と、を備える。
【００２７】
また、第１の映像／音声処理装置１０は、ディジタル音声データを所定のコーデックで符号／復号化する音声処理部６と、音声処理部６から供給されるディジタル音声データをアナログ音声データに変換するディジタル／アナログ変換部１４と、ディジタル／アナログ変換部１４から供給されるアナログ音声データをアンプ（不図示）で増幅し、放音するスピーカ４と、を備える。音声処理部６は、記憶部１７（後述の図３を参照）から読み出したコーデックの情報に基づいて、ディジタル音声データを所定のコーデックで符号／復号化する。
【００２８】
また、第１の映像／音声処理装置１０は、隣り合う映像／音声処理装置、ＭＣＵに対して、ディジタル映像データとディジタル音声データを送受信するためのインタフェースとなる複数個のネットワークインタフェース７を備える。ネットワークインタフェース７は、ディジタル映像データとディジタル音声データをパケットに分割し、所定の伝送プロトコルで他の映像／音声処理装置、ＭＣＵに伝送する。また、他の映像／音声処理装置、ＭＣＵから受け取ったパケットを結合し、元のディジタル映像データとディジタル音声データを生成する。
【００２９】
第１のＭＣＵ５０は、第１の映像／音声処理装置１０から受け取るディジタル映像データを所定のコーデックにトランスコーディングする映像トランスコード部５１と、第１の映像／音声処理装置１０から受け取るディジタル音声データを所定のコーデックにトランスコーディングする音声トランスコード部５２と、を備える。
【００３０】
また、第１のＭＣＵ５０は、隣り合う映像／音声処理装置、ＭＣＵに対して、ディジタル映像データとディジタル音声データを送受信するためのインタフェースとなる複数個のネットワークインタフェース５３を備える。ネットワークインタフェース５３は、ディジタル映像データとディジタル音声データをパケットに分割し、所定の伝送プロトコルで他の映像／音声処理装置、ＭＣＵにパケットを伝送する。また、他の映像／音声処理装置、ＭＣＵから受け取ったパケットを結合し、元のディジタル映像データとディジタル音声データを生成する。
【００３１】
映像処理部５で符号化されたディジタル映像データは、ネットワークインタフェース７を介して、隣り合う映像／音声処理装置、ＭＣＵに送られる。また、隣り合う映像／音声処理装置、ＭＣＵから受け取るディジタル映像データは、ネットワークインタフェース７を介して映像処理部５に送られる。
【００３２】
また、各映像／音声処理装置で収音され、生成されたディジタル音声データは、他の映像／音声処理装置から供給されるディジタル音声データと混合され、他の映像／音声処理装置、ＭＣＵに送出される。こうして、映像／音声処理装置とＭＣＵが互いに接続されるため、拠点間での映像と音声がリアルタイムで再生される。接続される回線は、全二重通信であるため、各拠点に散在する話者は、互いの様子を見ながら同時に通話することができる。
【００３３】
次に、映像／音声処理装置の構成例について、図３を参照して説明する。
ここでは、第１の映像／音声処理装置１０の内部構成例について説明する。ただし、図２において既に説明した箇所と同一の箇所については、詳細な説明を省略する。また、第２の映像／音声処理装置２０〜第４の映像／音声処理装置４０の内部構成例については、第１の映像／音声処理装置１０の内部構成例と同様であるため、詳細な説明を省略する。
【００３４】
第１の映像／音声処理装置１０は、各部を制御する制御部１６と、ディジタル映像データとディジタル音声データを記憶したり、映像処理部５と音声処理部６が処理可能なコーデックの情報を記憶したりする記憶部１７と、ユーザからの入力操作を受け付け、処理を実行させる入力部１８と、を備える。入力部１８は、マウス、キーボード、タッチパネル等の入力装置が含まれる。また、以下の説明において、コーデックの情報とは、例えば、ＭＰＥＧ４などのコーデックの名称を指し、コーデックするとは、コーデックの情報から定まるコーデックを用いて（例えば、ＭＰＥＧ４）、符号化、復号化処理を行うことを意味する。
【００３５】
第１の映像／音声処理装置１０は、他の映像／音声処理装置とＭＣＵから、処理可能なコーデック情報の送出が要求された場合、第１の映像／音声処理装置１０が処理可能なコーデック情報や、他の映像／音声処理装置が処理可能なコーデック情報と、ＭＣＵがトランスコーディング可能なコーデック情報を、他の映像／音声処理装置とＭＣＵに送出する。一方、第１の映像／音声処理装置１０は、他の映像／音声処理装置が処理可能なコーデック情報と、ＭＣＵがトランスコーディング可能なコーデック情報について、他の映像／音声処理装置とＭＣＵから取得する。取得した他の映像／音声処理装置が処理可能なコーデック情報と、ＭＣＵがトランスコーディング可能なコーデック情報は、記憶部１７に記憶される。また、記憶部１７には、第１の映像／音声処理装置１０を識別するためのユニークな識別情報（以下、ＩＤ（Identification）情報と称する。）が記憶される。
【００３６】
次に、ＭＣＵの構成例について、図４を参照して説明する。
ここでは、第１のＭＣＵ５０の内部構成例について説明する。ただし、図２において既に説明した箇所と同一の箇所については、詳細な説明を省略する。また、第２のＭＣＵ６０の内部構成例については、第１のＭＣＵ５０の内部構成例と同様であるため、詳細な説明を省略する。
【００３７】
第１のＭＣＵ５０は、各部を制御する制御部５４と、通過するディジタル映像データとディジタル音声データを一時的に記憶したり、隣り合う映像／音声処理装置が処理可能なコーデックを記憶したり、第１のＭＣＵ５０がトランスコーディング可能なコーデックを記憶したりする記憶部５５と、を備える。また、記憶部５５には、第１のＭＣＵ５０を識別するためのユニークなＩＤ情報が記憶される。
【００３８】
第１のＭＣＵ５０は、隣り合う映像／音声処理装置、ＭＣＵで処理可能なコーデックを予め記憶部５５に記憶する。また、記憶部５５には、通過するパケットをディジタル映像データとディジタル音声データに戻して、トランスコーディングするため記憶する場合がある。このため、第１のＭＣＵ５０は、受け取ったディジタル映像データとディジタル音声データに対して、最適なコーデックにトランスコーディングできる。
【００３９】
第１のＭＣＵ５０は、隣り合う映像／音声処理装置やＭＣＵと所定の周期で情報を交換する。交換する情報には、ビデオ会議システム１００に新しく組み込まれた映像／音声処理装置やＭＣＵのＩＤ情報や、映像／音声処理装置で処理可能なコーデックの情報が含まれる。第１のＭＣＵ５０は、これらの情報を基にして、最適なコーデックを選択し、映像トランスコード部５１と音声トランスコード部５２を用いて、記憶部５５に一時記憶されたディジタル映像データとディジタル音声データのコーデックを他のコーデックにトランスコーディングする。このとき、映像トランスコード部５１と音声トランスコード部５２は、例えば、ＭＰＥＧ２でコーデックされたディジタル映像データとディジタル音声データを、ＭＰＥＧ４にトランスコーディングする。トランスコーディングが不要なデータである場合、第１のＭＣＵ５０は、パケットで伝送されるディジタル映像データとディジタル音声データに処理を加えることなく通過させる。
【００４０】
次に、ビデオ会議システム１００を構成するネットワークに新たなノード（映像／音声処理装置やＭＣＵ)を追加する場合の構成例について、図５を参照して説明する。
【００４１】
図５では、ビデオ会議システム１００に第ｎの映像／音声処理装置１１０と、第ｍのＭＣＵ１２０を追加した場合の例を示す図である。
【００４２】
第１の映像／音声処理装置１０に隣り合うノードは、第２の映像／音声処理装置２０と第ｍのＭＣＵ１２０である。ビデオ会議システム１００に、第ｍのＭＣＵ１２０が追加されると、第ｍのＭＣＵ１２０で処理可能なコーデックの情報が第１の映像／音声処理装置１０と第２のＭＣＵ６０に伝送される。第１の映像／音声処理装置１０と、第２の映像／音声処理装置２０が処理可能なコーデック情報と、第ｍのＭＣＵ１２０がトランスコーディング可能なコーデック情報は、第１の映像／音声処理装置１０が保持する第１のコーデック管理テーブルに記憶される。第１のコーデック管理テーブル１５は、第１の映像／音声処理装置１０が備える記憶部１７に所定の領域を確保して構成されるテーブルである。
【００４３】
同様に、第２の映像／音声処理装置２０に隣り合うノードは、第１の映像／音声処理装置１０と第３の映像／音声処理装置３０である。本例では、第１の映像／音声処理装置１０と、第２の映像／音声処理装置２０と、第３の映像／音声処理装置３０が処理可能なコーデック情報が、第２の映像／音声処理装置２０が保持する第２のコーデック管理テーブル２５に記憶される。第２のコーデック管理テーブル２５も、第２の映像／音声処理装置２０が備える記憶部１７に所定の領域を確保して構成されるテーブルである。
【００４４】
オーバレイネットワークではサーバ側で大きなデータベースを持つことなく、大規模ネットワークに適用できるように構成されるため、全てのノードのコーデック情報を一元管理するわけではない。しかし、オーバレイネットワークに参加しているノードのコーデック情報は、ノード間の情報をたどっていけば、目的のコーデック情報に辿りつくことが可能である。そして、ユーザが利用する際には、仮想的にコーデック情報を一元管理したサーバがあるかのように利用できる。
【００４５】
次に、ノードの初期化処理の例について、図６を参照して説明する。ノードの初期化処理は、ビデオ会議システム１００を構成するネットワークに新たなノード（映像／音声処理装置やＭＣＵ)を追加する場合に、追加されたノードのコーデック情報を取得する処理である。オーバレイネットワークによって構成されるビデオ会議システム１００では、あるノードは、分散ハッシュの技術を利用して、扱うことが可能なコーデックの情報を他のノードに保存する。また、あるノードは、自ノードで管理すべきコーデック情報を、他のノードから受信して、コーデック情報を管理する。
【００４６】
以下の説明では、ここで、ビデオ会議システム１００に参加するｉ番目の映像／音声処理装置を、第ｉの映像／音声処理装置とし、ｊ番目のＭＣＵを第ｊのＭＣＵとしている。また、ビデオ会議システム１００に参加済みのノードとは、オーバレイネットワークに参加するノードを意味する。このノードは、オーバレイネットワークのコンフィグレーションによって変わる。例えば、隣り合う一つのノードの情報を管理するという設定の場合、隣り合うノードのみである。また、隣り合うn個のノード情報を管理するという設定の場合、隣り合うn個のノードである。
【００４７】
始めに、第ｉの映像／音声処理装置又は第ｊのＭＣＵが新たに参加すると、隣り合うノードに本ノードのＩＤ情報を通知する（ステップＳ１）。ビデオ会議システム１００に参加済みのノードは、第ｉの映像／音声処理装置又は第ｊのＭＣＵのＩＤ情報を取得する。そして、ビデオ会議システム１００に参加済みのノードは、正常にＩＤ情報を取得した旨を示すＯＫレスポンスを第ｉの映像／音声処理装置又は第ｊのＭＣＵに通知する（ステップＳ２）。
【００４８】
次に、第ｉの映像／音声処理装置が処理可能なコーデック情報又は第ｊのＭＣＵがトランスコーディング可能なコーデック情報を、隣り合うノードに通知する（ステップＳ３）。ビデオ会議システム１００に参加済みのノードは、正常にコーデック情報を取得した旨を示すＯＫレスポンスを、第ｉの映像／音声処理装置又は第ｊのＭＣＵに通知する（ステップＳ４）。
【００４９】
次に、第ｉの映像／音声処理装置又は第ｊのＭＣＵは、隣り合うノードから本ノードで管理すべきコーデック情報を受信する用意ができた旨を通知する（ステップＳ５）。ビデオ会議システム１００に参加済みのノードは、本ノードの受信要求を正常に取得した旨を示すＯＫレスポンスを、第ｉの映像／音声処理装置又は第ｊのＭＣＵに通知する（ステップＳ６）。以降の処理については、後述の図７を参照して説明する。
【００５０】
このような処理を経て、例えば、第１のＭＣＵ５０は、記憶部５５に、隣り合うノードに配置される第ｎの映像／音声処理装置１１０が処理可能なコーデックの情報と、第２のＭＣＵ６０がトランスコーディング可能なコーデックの情報を記憶する。
【００５１】
次に、多地点で同時に会議を行う場合に、最適なコーデックとＭＣＵを選択する処理の例について、図７を参照して説明する。本例では、特に、第１の映像／音声処理装置１０が行う処理に注目して説明する。
【００５２】
始めに、第１の映像／音声処理装置１０は、ビデオ会議システム１００に参加済みのノードに対して、第２の映像／音声処理装置２０が処理可能なコーデック情報を取得する取得要求を行う（ステップＳ１１）。ビデオ会議システム１００に参加済みのノードは、第２の映像／音声処理装置２０が処理可能なコーデック情報を第１の映像／音声処理装置１０に通知すると共に、取得要求に対して正常に通知を行った旨を示すＯＫレスポンスを第１の映像／音声処理装置１０に通知する（ステップＳ１２）。
【００５３】
次に、第１の映像／音声処理装置１０は、ビデオ会議システム１００に参加済みのノードに対して、第３の映像／音声処理装置３０が処理可能なコーデック情報を取得する取得要求を行う（ステップＳ１３）。ビデオ会議システム１００に参加済みのノードは、第３の映像／音声処理装置３０が処理可能なコーデック情報を第１の映像／音声処理装置１０に通知すると共に、取得要求に対して正常に通知を行った旨を示すＯＫレスポンスを第１の映像／音声処理装置１０に通知する（ステップＳ１４）。
【００５４】
次に、第１の映像／音声処理装置１０は、ビデオ会議システム１００に参加済みのノードに対して、第４の映像／音声処理装置４０が処理可能なコーデック情報を取得する取得要求を行う（ステップＳ１５）。ビデオ会議システム１００に参加済みのノードは、第４の映像／音声処理装置４０が処理可能なコーデック情報を第１の映像／音声処理装置１０に通知すると共に、取得要求に対して正常に通知を行った旨を示すＯＫレスポンスを第１の映像／音声処理装置１０に通知する（ステップＳ１６）。
【００５５】
こうして、第１の映像／音声処理装置１０は、ステップＳ１２，１４，１６で通知された各映像／音声処理装置が処理可能なコーデックの情報及び多地点接続装置でトランスコーディング可能なコーデックの情報を記憶部１７に記憶させる。なお、ある端末（本例では、第１の映像／音声処理装置１０）が２つ以上先のノードのコーデック情報を取得する場合、隣り合うノード同士でバケツリレーのようにしてコーデック情報を引き渡す。一般的に、自端末で管理しておらず、他の端末が管理している端末（本例では、音声処理装置、ＭＣＵ）の情報（本例では、コーデック情報）を取得する場合、まず、他の端末が管理している端末の位置情報を取得する。そして、自端末は、取得した位置情報から、他の端末が管理している端末を特定し、情報を取得する。
【００５６】
次に、第１の映像／音声処理装置１０は、取得した第２の映像／音声処理装置２０〜第４の映像／音声処理装置４０が処理可能なコーデック情報に基づいて、ＭＣＵが行うトランスコーディングの負荷が最小となるように最適なコーデックを選択する（ステップＳ１７）。このとき、第１の映像／音声処理装置１０は、第１の映像／音声処理装置１０〜第４の映像／音声処理装置４０で最もよく使われているコーデックを選択する。このため、多数の映像／音声処理装置で使われるコーデックについては、トランスコーディングする必要がなくなり、少数の映像／音声処理装置で使われるコーデックをトランスコーディングするだけでよい。この結果、ビデオ会議システム１００全体の処理量が減少する。
【００５７】
次に、第１の映像／音声処理装置１０は、ビデオ会議システム１００に参加済みのノードに対して、全てのＭＣＵのＩＤ情報と、これらＭＣＵがトランスコーディング可能なコーデック情報を取得する取得要求を行う（ステップＳ１８）。ビデオ会議システム１００に参加済みのノードは、全てのＭＣＵのＩＤ情報と、これらＭＣＵがトランスコーディング可能なコーデック情報を第１の映像／音声処理装置１０に通知すると共に、取得要求に対して正常に通知を行った旨を示すＯＫレスポンスを第１の映像／音声処理装置１０に通知する（ステップＳ１９）。
【００５８】
第１の映像／音声処理装置１０は、全てのＭＣＵのＩＤ情報を参照して、記憶部１７に記憶された他の映像／音声処理装置で処理可能なコーデックの情報とＭＣＵでトランスコーディング可能なコーデックの情報に基づいて、トランスコーディングさせる多地点接続装置を選択する（ステップＳ２０）。
こうして、トランスコーディングの必要がある場合は、ＭＣＵの機能一覧から最適なＭＣＵを選択し、多地点会議を行うことができる。
【００５９】
次に、トランスコーディングの負荷が最小となるように最適なＭＣＵを選択する処理の例について、図８を参照して説明する。本例では、第１の映像／音声処理装置１０がｎ個の映像／音声処理装置と、ｍ個のＭＣＵから最適なＭＣＵを選択する処理について説明する。
【００６０】
始めに、第１の映像／音声処理装置１０は、ｎ個の映像／音声処理装置が利用可能なコーデック情報を取得する（ステップＳ２１）。
【００６１】
次に、第１の映像／音声処理装置１０は、ｎ個の映像／音声処理装置で共通に処理できるコーデックがあるか否かを判別する（ステップＳ２２）。ｎ個の映像／音声処理装置で共通に処理できるコーデックがある場合、トランスコーディングを行う必要がないため、処理を終了する。
【００６２】
一方、ｎ個の映像／音声処理装置で共通に処理できるコーデックがない場合、ＭＣＵを識別する変数ｊを“１”に初期化する（ステップＳ２３）。以下、第ｊのＭＣＵを、ｊ番目のＭＣＵと称する。第ｊのＭＣＵは、図７の処理で取得した全てのＭＣＵのＩＤ情報から定まる。
【００６３】
次に、第１の映像／音声処理装置１０は、ｊ番目のＭＣＵがトランスコーディング可能なコーデック情報を取得する（ステップＳ２４）。
そして、第１の映像／音声処理装置１０は、映像／音声処理装置を識別する変数ｉを“１”に初期化する（ステップＳ２５）。以下、第ｉのＭＣＵを、ｉ番目のＭＣＵと称する。第ｊのＭＣＵは、図７の処理で取得した全ての映像／音声処理装置のＩＤ情報から定まる。
【００６４】
次に、第１の映像／音声処理装置１０は、ｊ番目のＭＣＵと、ｉ番目の映像／音声処理装置が共通して処理できるコーデックがあるか否かを判別する（ステップＳ２６）。処理できるコーデックがない場合、ステップＳ３０に処理を移す。
【００６５】
一方、処理できるコーデックがある場合、第１の映像／音声処理装置１０は、変数ｉが定数ｎより大きいか否かを判別する（ステップＳ２７）。
変数ｉが定数ｎ以下である場合、第１の映像／音声処理装置１０は、変数ｉを“１”増加し（ステップＳ２８）、ステップＳ２６の処理に移す。
【００６６】
一方、変数ｉが定数ｎより大きい場合、第１の映像／音声処理装置１０は、ｊ番目のＭＣＵが、ｉ番目の映像／音声処理装置と共通に処理できるコーデックがあることを、記憶部１７１７に記憶する（ステップＳ２９）。
【００６７】
次に、第１の映像／音声処理装置１０は、変数ｊが定数ｍより大きいか否かを判別する（ステップＳ３０）。
変数ｊが定数ｍ以下である場合、第１の映像／音声処理装置１０は、変数ｊを“１”増加し（ステップＳ３１）、ステップＳ２４の処理に移す。
【００６８】
一方、変数ｊが定数ｍより大きい場合、第１の映像／音声処理装置１０は、変換処理が可能なＭＣＵから、トランスコーディングが少なくなるＭＣＵを選択し（ステップＳ３２）、処理を終了する。
【００６９】
このようにして、映像／音声処理装置間で共通に利用できるコーデックがある場合は、そのコーデックを使用する。また、共通に利用できるコーデックがない場合は、映像／音声処理装置とＭＣＵで共通に利用できるコーデックを調べ、全ての映像／音声処理装置で一つ以上利用できるコーデックがある場合は、そのＭＣＵを使用する。
【００７０】
以上説明した本実施の形態によれば、オーバレイネットワークを利用して、映像／音声処理装置が利用可能なコーデックとＭＣＵがトランスコーディング可能なコーデック情報といる大量の情報を管理し、取得することが可能となる。会議システム１００では、オーバレイネットワークに参加する全ノードが処理可能なコーデック情報を一元管理するためのサーバが設置されていない。しかしながら、オーバレイネットワークを利用することで、従来のサーバ／クライアントシステムと同様の利便性を確保する点に特徴がある。このため、ビデオ会議システム１００に加わるノードが多くなる場合であっても、最適なコーデックにトランスコーディングすることが可能なＭＣＵを選択できる。この結果、トランスコーディングの負荷が減少し、ビデオ会議システム１００全体で行われる各ノードの処理量が減少するという効果がある。
【００７１】
また、トランスコーディングの負荷が小さくなるようにコーデックを選択できる。例えば、４個の映像／音声処理装置のうち、３個の映像／音声処理装置が共通のコーデック（例えば、ＭＰＥＧ４）であり、１個の映像／音声処理装置が異なるコーデック（例えば、ＭＰＥＧ２）である場合を想定する。このとき、多くの映像／音声処理装置が共通して処理できるコーデック（ＭＰＥＧ４）を用いることで、ＭＰＥＧ２とＭＰＥＧ４をトランスコーディングすることができる。このため、ＭＣＵが行うトランスコーディングの負荷は、ＭＰＥＧ２を処理する映像／音声処理装置に対してだけであるため、ビデオ会議システム１００全体の処理負荷が減少するという効果がある。
【００７２】
また、ＭＣＵがトランスコーディング可能なコーデックを取得した上で、最適なＭＣＵを選択することができる。このため、従来、新しく映像／音声処理装置を追加する度に、コーデック情報やＭＣＵを選択しなければならなかったが、自動化して行える。この結果、ユーザはコーデックやＭＣＵの設定に煩わされなくなるという効果がある。
【００７３】
なお、上述した実施の形態例では、双方向に音声を送受信するテレビ会議システムに適用した例として説明したが、双方向通信を用いるシステムであれば、例えば、電話での音声通信等に適用してもよい。
【００７４】
また、上述した実施の形態例における一連の処理は、ハードウェアにより実行することができるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムを、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに所望のソフトウェアを構成するプログラムをインストールして実行させる。
【００７５】
また、上述した実施の形態例の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵ等の制御装置）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【００７６】
この場合のプログラムコードを供給するための記録媒体としては、例えば、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ（Compact Disc）−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【００７７】
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施の形態例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（Operating System）などが実際の処理の一部又は全部を行い、その処理によって上述した実施の形態例の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００７８】
【図１】本発明の一実施の形態例におけるビデオ会議システムのネットワーク構成例を示す説明図である。
【図２】本発明の一実施の形態例におけるビデオ会議システムの内部構成例を示すブロック図である。
【図３】本発明の一実施の形態例における映像／音声処理装置の内部構成例を示すブロック図である。
【図４】本発明の一実施の形態例におけるＭＣＵの内部構成例を示すブロック図である。
【図５】本発明の一実施の形態例における多地点におけるビデオ会議システムのネットワークの構成例を示す説明図である。
【図６】本発明の一実施の形態例におけるノードを初期化する処理の例を示すシーケンス図である。
【図７】本発明の一実施の形態例における最適なコーデックとＭＣＵを選択する処理の例を示すシーケンス図である。
【図８】本発明の一実施の形態例におけるトランスコーディングの負荷が最小となるように、最適なＭＣＵを選択する処理の例を示すフローチャートである。
【符号の説明】
【００７９】
１…撮像部、２…マイクロホン、３…表示部、４…スピーカ、５…映像処理部、６…音声処理部、７…ネットワークインタフェース、１０…第１の映像／音声処理装置、１１…アナログ／ディジタル変換部、１２…ディジタル／アナログ変換部、１３…アナログ／ディジタル変換部、１４…ディジタル／アナログ変換部、１５…第１のコーデック管理テーブル、１６…制御部、１７…記憶部、１８…入力部、２０…第２の映像／音声処理装置、２５…第２のコーデック管理テーブル、３０…第３の映像／音声処理装置、４０…第４の映像／音声処理装置、５０…第１のＭＣＵ、５１…映像トランスコード部、５２…音声トランスコード部、５３…制御部、５４…記憶部、５５…ネットワークインタフェース、６０…第２のＭＣＵ、１００…ビデオ会議システム
【図１】
2009159504.tif 000003
【図２】
2009159504.tif 000004
【図３】
2009159504.tif 000005
【図４】
2009159504.tif 000006
【図５】
2009159504.tif 000007
【図６】
2009159504.tif 000008
【図７】
2009159504.tif 000009
【図８】
2009159504.tif 000010