(57)【要約】【課題】カメラの制御権の有効活用を図る。【解決手段】カメラ１００が接続されたカメラ制御サーバ１１０と、カメラ制御サーバ１１０を介してカメラ１００を制御可能な複数のカメラ制御クライアント１４０とがネットワークを介して接続され、カメラ制御サーバ１１０はカメラ１００を制御するための制御権を要求しているカメラ制御クライアント１４０に制御権を順次付与し、制御権を獲得した一つのカメラ制御クライアント１４０のみがカメラ１００を制御できるようにしたカメラ制御システムにおいて、制御権が付与されているカメラ制御クライアント１４０の制御権を、他のカメラ制御クライアント１４０に移転できるようにした。これにより、自他カメラ制御クライアント間において、制御権を有効に利用することができる。【選択図】図１
2009017221.tif 000002
【特許請求の範囲】
【請求項１】
カメラが接続されたカメラ制御サーバと、前記カメラ制御サーバを介して前記カメラを制御可能な複数のカメラ制御クライアントとがネットワークを介して接続され、前記カメラ制御サーバは前記カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与し、制御権を獲得した一つのカメラ制御クライアントのみが前記カメラを制御できるようにしたカメラ制御システムであって、
制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理手段を有することを特徴とするカメラ制御システム。
【請求項２】
カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与するカメラ制御サーバであって、
制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理手段を有することを特徴とするカメラ制御サーバ。
【請求項３】
前記制御権管理手段は、制御権が付与されているカメラ制御クライアントから制御権の譲渡要求があった場合に、その制御権を他のカメラ制御クライアントに移転することを特徴とする請求項２に記載のカメラ制御サーバ。
【請求項４】
制御権が付与されたカメラ制御クライアントは、制御可能時間だけ前記カメラを制御することができ、
前記制御権管理手段は、前記他のカメラ制御クライアントに制御権を移転するとき、前記制御可能時間の残り時間分の制御権を移転することを特徴とする請求項２又は３に記載のカメラ制御サーバ。
【請求項５】
前記他のカメラ制御クライアントが制御権を要求している場合は、前記制御可能時間の残り時間を、前記制御可能時間に加算して制御権を移転することを特徴とする請求項４に記載のカメラ制御サーバ。
【請求項６】
制御権を要求しているカメラ制御クライアントの情報を、制御権が付与されているカメラ制御クライアントに送信する制御権要求クライアント情報送信手段を有することを特徴とする請求項２〜５のいずれか１項に記載のカメラ制御サーバ。
【請求項７】
前記カメラが撮影する映像を受信しているカメラ制御クライアントの情報を、制御権が付与されているカメラ制御クライアントに送信する映像受信クライアント情報送信手段を有することを特徴とする請求項２〜６のいずれか１項に記載のカメラ制御サーバ。
【請求項８】
カメラ制御サーバにカメラを制御するための制御権を要求し、前記カメラ制御サーバから制御権が付与された場合に前記カメラを制御することができるカメラ制御クライアントであって、
前記カメラ制御サーバに対して、他のカメラ制御クライアントへの制御権の譲渡要求を行う制御権譲渡要求手段を有することを特徴とするカメラ制御クライアント。
【請求項９】
前記カメラ制御サーバに対して、制御権を要求しているカメラ制御クライアントの情報を要求する制御権要求クライアント情報要求手段と、
前記カメラ制御サーバから、制御権を要求しているカメラ制御クライアントの情報を受信する制御権要求クライアント情報受信手段とを有することを特徴とする請求項８に記載のカメラ制御クライアント。
【請求項１０】
前記制御権要求クライアント情報受信手段が受信したカメラ制御クライアントの情報からいずれかのカメラ制御クライアントを選択可能とする第一の選択手段を有し、
前記制御権譲渡要求手段は、前記第一の選択手段の選択結果に基き制御権の譲渡要求を行うことを特徴とする請求項９に記載のカメラ制御クライアント。
【請求項１１】
前記カメラ制御サーバに対して、前記カメラが撮影する映像を受信しているカメラ制御クライアントの情報を要求する映像受信クライアント情報要求手段と、
前記カメラ制御サーバから、前記カメラが撮影する映像を受信しているカメラ制御クライアントの情報を受信する映像受信クライアント情報受信手段とを有することを特徴とする請求項８〜１０のいずれか１項に記載のカメラ制御クライアント。
【請求項１２】
前記映像受信クライアント情報受信手段が受信したカメラ制御クライアントの情報からいずれかのカメラ制御クライアントを選択可能とする第二の選択手段を有し、
前記制御権譲渡要求手段は、前記第二の選択手段の選択結果に基き制御権の譲渡要求を行うことを特徴とする請求項１１に記載のカメラ制御クライアント。
【請求項１３】
カメラが接続されたカメラ制御サーバと、前記カメラ制御サーバを介して前記カメラを制御可能な複数のカメラ制御クライアントとがネットワークを介して接続され、前記カメラ制御サーバは前記カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与し、制御権を獲得した一つのカメラ制御クライアントのみが前記カメラを制御できるようにしたカメラ制御システムにおける制御権の管理方法であって、
制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理ステップを有することを特徴とする制御権の管理方法。
【請求項１４】
カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与するカメラ制御サーバを制御するためのプログラムであって、
制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理手段としてコンピュータを機能させるためのプログラム。
【請求項１５】
カメラ制御サーバにカメラを制御するための制御権を要求し、前記カメラ制御サーバから制御権が付与された場合に前記カメラを制御するカメラ制御クライアントを制御するためのプログラムであって、
前記カメラ制御サーバに対して、他のカメラ制御クライアントへの制御権の譲渡要求を行う制御権譲渡要求手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＴＶ会議システム或いは監視システム等に用いて好適なカメラ制御システム、制御権の管理方法及びプログラムに関する。
【背景技術】
【０００２】
従来より、ＴＶ会議システムや監視システムのように、遠隔地等から映像入力装置を制御することが可能なカメラ制御システムがある。この種の装置においては、映像入力装置の数が監視者の数に比して多く、複数台のカメラを一人の監視者が制御するのが一般的であった。そのため、複数の監視者が同時に一台の映像入力装置を制御するような場面は想定していなかった。
【０００３】
近年、インターネット等の普及により、一台の映像入力装置によって取り込まれた映像を複数のユーザが閲覧できるようにしたり、当該映像入力装置を複数のユーザから制御できるようにしたりしたいという要求が高まっている。このような場合には、遠隔地等からの映像入力装置に対する複数の制御要求を管理する機構が必要となる。つまり、一台の映像入力装置を複数のユーザによって制御しようとした場合、複数のユーザ間で制御要求の衝突が発生することは明らかであり、当該映像入力装置の操作に対する権限を適切に管理、制御する必要がある。
【０００４】
このような技術動向に鑑み、特許文献１、特許文献２、特許文献３においては、カメラに対する制御要求及び制御権を管理し、カメラ制御権を要求した各ユーザが時間の経過に従って順次カメラの制御権を獲得し、カメラの制御を可能となる技術が開示されている。
【０００５】
【特許文献１】特開平１０−４２２７８号公報
【特許文献２】特開平１０−１３６３４７号公報
【特許文献３】特開平１０−３０４２３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、遠隔地等からネットワークを介して多数のユーザが一つのカメラにアクセスし、カメラを制御できる状況においては、カメラ制御権を要求したユーザの都合の良いときにカメラ制御権を獲得できるとは限らない。例えばカメラ制御権を獲得したタイミングがカメラ制御権を獲得したユーザにとって都合が悪いときには、カメラを制御できない場合がある。このような場合、このユーザは獲得した制御権を放棄することになるが、制御権を一旦放棄してしまうと、再度制御権を要求しその順番が得られるまでは制御権は得られない。
【０００７】
本発明は係る実情に鑑みてなされたものであり、制御権を有効に活用できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明のカメラ制御システムは、カメラが接続されたカメラ制御サーバと、前記カメラ制御サーバを介して前記カメラを制御可能な複数のカメラ制御クライアントとがネットワークを介して接続され、前記カメラ制御サーバは前記カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与し、制御権を獲得した一つのカメラ制御クライアントのみが前記カメラを制御できるようにしたカメラ制御システムであって、制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理手段を有することを特徴とする。
また、本発明のカメラ制御サーバは、カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与するカメラ制御サーバであって、制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理手段を有することを特徴とする。
また、本発明のカメラ制御クライアントは、カメラ制御サーバにカメラを制御するための制御権を要求し、前記カメラ制御サーバから制御権が付与された場合に前記カメラを制御することができるカメラ制御クライアントであって、前記カメラ制御サーバに対して、他のカメラ制御クライアントへの制御権の譲渡要求を行う制御権譲渡要求手段を有することを特徴とする。
また、本発明の制御権の管理方法は、カメラが接続されたカメラ制御サーバと、前記カメラ制御サーバを介して前記カメラを制御可能な複数のカメラ制御クライアントとがネットワークを介して接続され、前記カメラ制御サーバは前記カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与し、制御権を獲得した一つのカメラ制御クライアントのみが前記カメラを制御できるようにしたカメラ制御システムにおける制御権の管理方法であって、制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理ステップを有することを特徴とする。
また、本発明のプログラムは、カメラを制御するための制御権を要求しているカメラ制御クライアントに制御権を付与するカメラ制御サーバを制御するためのプログラムであって、制御権が付与されているカメラ制御クライアントの制御権を、他のカメラ制御クライアントに移転する制御権管理手段としてコンピュータを機能させるためのプログラムである。
また、本発明のプログラムは、カメラ制御サーバにカメラを制御するための制御権を要求し、前記カメラ制御サーバから制御権が付与された場合に前記カメラを制御するカメラ制御クライアントを制御するためのプログラムであって、前記カメラ制御サーバに対して、他のカメラ制御クライアントへの制御権の譲渡要求を行う制御権譲渡要求手段としてコンピュータを機能させるためのプログラムである。
【発明の効果】
【０００９】
本発明によれば、カメラの制御権を獲得したカメラ制御クライアントのユーザが、その獲得した制御権を他のカメラ制御クライアントに移転することができる。具体的には、カメラの制御権を獲得後、その制御可能時間を残している場合に、該制御権を他のカメラ制御クライアントに移転することができる。これにより、カメラ制御クライアント間において、制御権を有効に利用することができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の好適な実施の形態を図面を用いて説明する。図１は本実施の形態に係るカメラ制御システムの構成を示すブロック図である。
【００１１】
図１において、１２０はカメラ制御サーバ装置であり、撮像装置であるカメラ１００とカメラ１００を制御するカメラ制御サーバ１１０とからなる。１３０はネットワークであり、ＬＡＮ、ＷＡＮ或いはインターネット等である。１４０−１、１４０−２、１４０−３、１４０−４はパーソナルコンピュータ（ＰＣ）等からなるカメラ制御クライアント（以下、単にカメラ制御クライアント１４０と称する場合もある）である。カメラ制御クライアント１４０は、遠隔地からカメラ制御命令を出し、カメラ制御サーバ１１０を介してカメラ１００を制御することができる。
【００１２】
カメラ制御サーバ装置１２０において、１００はカメラであり、パン、チルト、ズーム等、映像視点を外部からのカメラ制御命令により制御可能に構成されている。１１０はカメラ制御サーバであり、カメラ１００からの映像データを取り込み、カメラ制御クライアント１４０への出力を行うとともに、カメラ制御クライアント１４０からのカメラ制御命令を受けてカメラ１００を制御する。以下、カメラ制御サーバ１１０の構成について説明する。
【００１３】
カメラ制御サーバ１１０において、１１１はカメラ制御部であり、遠隔地にあるカメラ制御クライアント１４０からのカメラ制御命令に応じてカメラ１００を制御する。１１２は制御権管理部であり、カメラ制御クライアント１４０からのカメラ１００のカメラ制御権（以下、制御権）の要求を管理し、これらカメラ制御クライアント１４０に対して制御権を順次付与するように管理する。１１３はメッセージ送受信部であり、ネットワーク１３０を介してカメラ制御クライアント１４０からのメッセージを受信するとともに、これらカメラ制御クライアント１４０に対してメッセージを送信する。１１４は映像送信部であり、カメラ１００から取得した映像を、ネットワーク１３０を介して複数のカメラ制御クライアント１４０に送信する。
【００１４】
次にカメラ制御クライアント１４０において、１４１はメッセージ送受信部であり、ネットワーク１３０を介してカメラ制御サーバ装置１２０とメッセージのやり取りをする。１４２は表示部であり、カメラ制御サーバ装置１２０から受信した映像データや制御状態等を表示する。１４３は操作入力部であり、カメラ制御サーバ装置１２０に対するカメラ制御権の獲得要求指示や、カメラ１００のパン角、チルト角、ズーム値の変更指示等を入力する。１４４は映像受信部であり、ネットワーク１３０を介してカメラ制御サーバ装置１２０から送信される映像データの受信を行う。
【００１５】
以上説明したカメラ制御サーバ装置１２０、ネットワーク１３０及びカメラ制御クライアント１４０により、本実施の形態に係るカメラ制御システムが構成される。本カメラ制御システムでおける動作概要を説明すると、カメラ制御クライアント１４０は、カメラ制御サーバ装置１２０からの映像データを受信して映像を表示する。カメラ制御クライアント１４０はまた、制御権の獲得要求をカメラ制御サーバ装置１２０に送信して、カメラ制御サーバ装置１２０から制御権が付与されることによりカメラ１００の制御を行うことができる。ここでは、カメラ１００の制御は同時に複数のカメラ制御クライアント１４０で行われないように、換言すれば、制御権を獲得した一つのカメラ制御クライアント１４０のみがカメラ１００を制御できるように、排他制御されているものとする。また基本的に、制御権を獲得したカメラ制御クライアント１４０は、予め定められている制御可能時間だけカメラ１００を制御することができるものとする。
【００１６】
なお、本図においては、カメラ制御クライアント１４０を４台図示したが、複数台あれば、その台数は限定されるものではない。また、カメラ制御サーバ装置１２０を１台のみ図示したが、同様の構成を有するカメラ制御サーバ装置が複数台あっても構わない。
【００１７】
次に図２は本実施の形態に係るカメラ制御サーバ装置１２０とカメラ制御クライアント１４０のシステム構成を詳細に示すブロック図である。
【００１８】
まずカメラ制御サーバ装置１２０の構成について説明する。カメラ制御サーバ装置１２０において、２０１はビデオカメラであり、図１に示したカメラ１００に相当する。２０２はカメラ制御回路であり、ビデオカメラ２０１のパン、チルト及びズーム倍率を制御する。
【００１９】
２０３はビデオキャプチャであり、ビデオカメラ２０１からの映像データを取り込む。詳細には、ビデオカメラ２０１からのＮＴＳＣ等の映像信号を取り込み、Ａ／Ｄ変換後、データ圧縮して、ネットワークインタフェース２０４からカメラ制御サーバ装置１２０にアクセスしているカメラ制御クライアント１４０に出力する。ここでビデオキャプチャ２０３での映像圧縮方式としては、例えばＭｏｔｉｏｎＪＰＥＧ等があるが、他の圧縮方式であっても構わない。
【００２０】
２０４はネットワークインタフェース（ネットワークＩ／Ｆ）であり、ビデオキャプチャ２０３が取り込んだ映像データをネットワーク１３０上に配信する。
【００２１】
２０６はＣＰＵであり、カメラ制御サーバ装置１２０の全体を制御するための管理手段として機能する。ＣＰＵ２０６は、例えばネットワークインタフェース２０４を通じてカメラ制御命令を受け取り、カメラ制御回路２０２にカメラのパン、チルト及びズームの制御を実行させる。
【００２２】
２０５は主記憶装置であり、詳細は後述する識別子バッファ２０５−１、待ちバッファリスト２０５−２及び送信先テーブル２０５−３を含む。２０７はハードディスク等で構成される二次記憶装置であり、カメラ制御サーバ装置１２０を制御する制御プログラムを格納する。
【００２３】
２０９はタイマであり、ＣＰＵ２０６の指示に基づいて時間を計時し、タイムアウトが発生すると、ＣＰＵ２０６に対してイベントを発生させ、ビデオカメラ２０１の制御を希望しているカメラ制御クライアント１４０への制御権管理に利用させる。２０８はシステムバスであり、上述したカメラ制御サーバ装置１２０に含まれる各要素を接続する。
【００２４】
ここで、主記憶装置２０５上のデータ構成について説明する。主記憶装置２０５において、識別子バッファ２０５−１は、現在制御権を与えているカメラ制御クライアント１４０の識別子を記録保持する。
【００２５】
待ちバッファリスト２０５−２は、制御権を要求しているカメラ制御クライアント１４０の識別子を管理する。例えば、あるカメラ制御クライアント１４０が制御権を獲得しているときに、他のカメラ制御クライアント１４０が制御権を要求をした場合、この制御権を要求したカメラ制御クライアント１４０の識別子を待ちバッファリスト２０５−２に追加登録する。また、識別子バッファ２０５−１に登録された識別子を持つカメラ制御クライアント１４０が制御権を喪失したとき、待ちバッファリスト２０５−２に登録された識別子のうちの最初に登録された識別子を識別子バッファ２０５−１に登録する。このとき、新たに識別子バッファリスト２０５−１に登録した識別子を待ちバッファリスト２０５−２から削除する。即ち、待ちバッファリスト２０５−２は、カメラ制御クライアント１４０の識別子を管理するキュー（ＦＩＦＯ）として動作する。
【００２６】
送信先テーブル２０５−３は、カメラ制御サーバ装置１２０で撮影した映像データを送信するカメラ制御クライアント１４０の識別子を管理する。カメラ制御クライアント１４０は、初期化処理で自身の識別子をカメラ制御サーバ装置１２０に送信する。カメラ制御サーバ装置１２０は、受信したカメラ制御クライアント１４０の識別子を送信先テーブル２０５−３に登録する。カメラ制御サーバ装置１２０は、送信先テーブル２０５−３に登録された識別子を持つカメラ制御クライアント１４０に対して、ビデオカメラ２０１からの映像データを送信する。また、カメラ制御クライアント１４０は、アプリケーションを終了するとき、その終了処理において、カメラ制御サーバ装置１２０に対して映像データの送信の停止を依頼する。この場合、カメラ制御サーバ装置１２０では、その依頼を受け、カメラ制御サーバ装置１２０の送信先テーブル２０５−３から、終了するカメラ制御クライアント１４０の識別子を削除する。
【００２７】
次にカメラ制御クライアント１４０の詳細な構成について説明する。なお、本実施の形態においては、カメラ制御クライアント１４０を４台設置しているが、これらの構成及び動作処理は全て同じであるものとする。
【００２８】
カメラ制御クライアント１４０において、２２４はネットワークインタフェース（ネットワークＩ／Ｆ）であり、カメラ制御サーバ装置１２０からネットワーク１３０に出力された圧縮映像データを受信する。２２２はＣＰＵであり、ネットワークインタフェース２２４で受信した圧縮映像データを伸長し、ビットマップディスプレイ２２１上に撮像画像を表示する。
【００２９】
２２１はビットマップディスプレイであり、例えば図３に示すようなユーザインタフェース画面３０１を表示する。２２６はハードディスク等で構成される二次記憶装置であり、ＣＰＵ２２２が二次記憶装置２２６に記憶されたプログラムを実行することによって、図３のような画面を構成するウィンドウシステムを稼動させることが可能となっている。
【００３０】
２２３はＲＡＭ等によって構成される主記憶装置であり、二次記憶装置２２６に記憶されたプログラムを展開するものであり、必要に応じて適宜プログラムを主記憶装置２２３から呼び出す。主記憶装置２２３は、詳細は後述する譲渡先バッファリスト２２３−１を含む。
【００３１】
２２５はポインティングデバイスであるマウスであり、図３に示したようなユーザインタフェース画面３０１上でのカーソルの移動操作や、ドラッグ操作等を行うときに用いる。これにより、カメラ制御サーバ装置１２０にあるビデオカメラ２０１の制御を、遠隔地にいるカメラ制御クライアント１４０を操作するユーザに実行させるようにしている。
【００３２】
２２８はタイマであり、ＣＰＵ２２２の指示に基づいて時間を計時する。２２７はシステムバスであり、上述したカメラ制御クライアント１４０に含まれる各要素を接続する。
【００３３】
ここで、カメラ制御クライアント１４０の主記憶装置２２３上のデータ構成について説明する。主記憶装置２２３において、譲渡先バッファリスト２２３−１は、カメラ制御サーバ装置１２０が接続しているカメラ制御クライアント１４０の全てのクライアント識別子、又は識別可能な情報を一時的に記録保持するために利用する。クライアント識別子、又は識別可能な情報を保持することにより、カメラ制御クライアント１４０は、他のカメラ制御クライアント１４０に制御権及び制御要求権を譲渡する際、ユーザに譲渡先となるカメラ制御クライアント１４０を指定させることができる。
【００３４】
次に図３は、カメラ制御クライアント１４０のビットマップディスプレイ２２１上に表示されるユーザインタフェース画面の一例を示した図である。この画面では、カメラ制御サーバ装置１２０で撮影した映像を表示するとともに、カメラ制御クライアント１４０上で行うカメラ１００の制御に関する操作や制御権に関する操作のためのユーザインタフェースを提供する。
【００３５】
図３において、３０１はカメラ制御クライアント１４０において表示されるユーザインタフェース画面を示す。３０２はビデオカメラ２０１で撮影した映像データを表示する表示領域であり、カメラ制御サーバ装置１２０から送信される映像データを表示する。
【００３６】
３０３、３０４及び３０５はスクロールバーであり、ユーザはスクロールバー３０３、３０４及び３０５を利用して、カメラ制御サーバ装置１２０のビデオカメラ２０１を制御する。
【００３７】
スクロールバー３０３は撮像方向を左右に制御するためのカメラ制御命令を発行するスクロールバー及び移動ボタンで構成され、スクロールバー３０４は撮像方向を上下に制御するためのカメラ制御命令を発行するスクロールバー及び移動ボタンで構成される。スクロールバー３０３及び３０４はまた、図に参照されるように、左右上下方向の制御可能な範囲、その範囲における現在の方向をユーザが認識できるような構成となっている。スクロールバー３０５はズーム倍率を変更するスクロールバー及びボタンで構成され、図に参照されるように、倍率が変更可能な範囲、現在の倍率をユーザが認識できるような構成となっている。ユーザはマウスを使い、これらのスクロールバー３０３、３０４及び３０５を操作することで、撮像方向を上下左右に制御したり、ズーム倍率を変更したりすることができる。
【００３８】
３０６、３０７及び３０８に示すボタンは、それぞれ制御権要求ボタン、制御権放棄ボタン及び制御権譲渡ボタンであり、制御権に関する操作を行うためのボタンである。
【００３９】
制御権要求ボタン３０６は制御権を要求するためのボタンであり、ユーザが操作するカメラ制御クライアント１４０が制御権を獲得していない場合には、カメラ制御サーバ装置１２０に制御権を要求するメッセージを送信する。
【００４０】
制御権放棄ボタン３０７は獲得した制御権を放棄するためのボタンであり、制御権獲得中に操作を中断しようとする場合に押下することで、カメラ制御サーバ装置１２０に制御権を放棄するメッセージを送信する。
【００４１】
制御権譲渡ボタン３０８は制御権を譲渡するためのボタンである。制御権譲渡ボタン３０８は、制御権を他のカメラ制御クライアント（制御権を要求し待ち状態であるカメラ制御クライアント１４０やカメラ制御サーバ装置１２０から映像データを受信しているカメラ制御クライアント１４０）に、制御可能時間の残り時間分を含めて制御権を譲渡するとき等に利用する。
【００４２】
３０９は対象となるカメラ制御サーバ装置１２０の制御権の状態を表示するための表示領域であり、操作しているカメラ制御クライアント１４０が制御権を獲得しているのか、要求しているのか等の状態を表示する領域である。
【００４３】
次に図４はカメラ制御クライアント１４０のビットマップディスプレイ２２１上に表示されるユーザインタフェース画面３０１のうちの制御権の状態を表示するウィンドウの一例について示した図である。詳しくは、ユーザインタフェース画面３０１における、制御権状態を表示する表示領域３０９の状態と、制御権に関する操作を行うためのボタン（制御権要求ボタン３０６、制御権放棄ボタン３０７及び制御権譲渡ボタン３０８）の状態とを示した例である。
【００４４】
表示領域３０９に表示される制御権の状態は、カメラ制御クライアント１４０における制御権についての状態であり、「制御権なし」、「制御権あり」、「制御権要求中」の３つの状態が存在する。また、制御権に関する操作を行うためのボタン３０６〜３０８は、制御権の状態に合わせて、操作可能なボタンは有効化され、操作不能なボタンは無効化されるようにする。有効化されているボタンを押下した場合には、カメラ制御サーバ装置１２０に対して、そのボタンに応じた制御権獲得要求メッセージ、制御権放棄メッセージ、制御権譲渡メッセージを送信することができる。
【００４５】
図４（ａ）に示す４１０は、制御権なしの場合の表示例であり、表示領域３０９には、「制御権なし」を示すアイコン表示４１４がされる。この場合、ユーザインタフェース画面３０１では、制御権要求ボタン３０６を有効化し、制御権放棄ボタン３０７と制御権譲渡ボタン３０８を無効化する。
【００４６】
図４（ｂ）に示す４２０は、制御権要求待ちの状態の表示例である。４２０において表示領域３０９には、「制御権要求中」のアイコン表示４２４がされ、更に待ちバッファリスト２０５−２の３番目であることを示すアイコン表示４２５がされる。この場合、既に制御権を要求している状態になっているため、制御権要求ボタン３０６を無効化し、制御権放棄ボタン３０７と制御権譲渡ボタン３０８を有効化する。これにより、制御権要求の待ちバッファリスト２０５−２での待ち権利を放棄又は譲渡する場合の指定を可能にすることができる。
【００４７】
図４（ｃ）に示す４３０は、制御権を獲得した後の表示例である。４３０において表示領域３０９には、「制御権あり」のアイコン表示４３４がされ、更に制御可能時間の残り時間を示す表示４３５がされる。この場合、制御権をもっている間は、再度制御権要求をしないため、制御権要求ボタン３０６を無効化し、制御権放棄ボタン３０７と制御権譲渡ボタン３０８を有効化する。
【００４８】
図４（ｄ）に示す４４０は、制御権を譲渡する場合の表示例であり、制御権譲渡ボタン３０８を押下したときの状態を示す。この場合、制御権譲渡ボタン３０８の下には、制御権を譲渡可能なクライアントの識別子一覧を表示し、譲渡先を選択可能にしている。これ以外の、制御権要求ボタン３０６の無効化、制御権放棄ボタン３０７等の有効化、「制御権あり」のアイコン表示４４４、制御可能時間の残り時間を示す表示４４５については、制御権譲渡ボタン３０８を押下する直前の表示のままになっている。なお、図４（ｄ）における制御権譲渡ボタン３０８と譲渡先の指定の画面は一例であり、表示方法を限定するものではない。
【００４９】
以下、図５のフローチャートを参照して、カメラ制御サーバ装置１２０の動作を説明する。なお、この制御を実行する制御プログラムは二次記憶装置２０７に記憶されており、実行時に主記憶装置２０５にロードされ、ＣＰＵ２０６によって実行されるものとする。
【００５０】
まずステップＳ５１０において、ＣＰＵ２０６は、ビデオカメラ２０１のパン、チルト等の角度やズーム倍率を特定の初期位置に設定するため初期化処理を行う。
【００５１】
次にステップＳ５２０において、ＣＰＵ２０６は、イベントの発生を待ち、何らかのイベントが発生するとステップＳ５３０に進む。ステップＳ５３０以降においては、イベントの種類に応じた処理を行う。
【００５２】
ステップＳ５３０において、ＣＰＵ２０６は、ステップＳ５２０において発生したイベントがカメラ制御クライアント１４０からのカメラ制御命令であるか否かを判断する。カメラ制御命令と判断した場合はステップＳ５３１に進み、そうでない場合はステップＳ５４０に進む。
【００５３】
ステップＳ５３１において、ＣＰＵ２０６は、カメラ制御命令を送信したカメラ制御クライアント１４０の識別子が識別子バッファ２０５−１に登録している識別子と一致するか否かを判断する。一致すればステップＳ５３２に進み、カメラ制御命令に従ってカメラ制御を実行する。一致しなければ、カメラ制御命令を破棄し、カメラ制御を実行せずステップＳ５２０に戻る。
【００５４】
次にステップＳ５４０において、ＣＰＵ２０６は、ステップＳ５２０において発生したイベントがカメラ制御権獲得要求イベントであるか否かを判断する。カメラ制御権獲得要求イベントと判断した場合はステップＳ５４１に進み、そうでない場合はステップＳ５５０に進む。
【００５５】
ステップＳ５４１において、ＣＰＵ２０６は、カメラ制御中フラグがＯＮされているかどうか、即ち、その制御対象のビデオカメラ２０１が制御されているかどうかを判断する。制御されているときはステップＳ５４２に進み、制御権を要求したカメラ制御クライアント１４０の識別子を待ちバッファリスト２０５−２に追加登録する。
【００５６】
ステップＳ５４１において、ビデオカメラ２０１が制御されていないと判断した場合はステップＳ５４３に進み、そのビデオカメラ２０１が制御中であることを示す制御中フラグをＯＮにしてステップＳ５４４に進む。
【００５７】
ステップＳ５４４において、ＣＰＵ２０６は、タイマ２０９をリセットし、次にステップＳ５４５において、その制御を受け付けたカメラ制御クライアント１４０の識別子を識別子バッファ２０５−１に登録する。そしてステップＳ５４６において、ＣＰＵ２０６は、そのカメラ制御クライアント１４０に制御権が獲得できたことを通知し、ステップＳ５２０に戻る。
【００５８】
次にステップＳ５５０において、ＣＰＵ２０６は、ステップＳ５２０において発生したイベントがタイマ２０９によるイベントであるか否かを判断する。タイマ２０９によるイベントであると判断した場合はステップＳ５５１に進み、そうでない場合はステップＳ５６０に進む。ここでいうタイマ２０９によるイベントは、制御権を獲得しているカメラ制御クライアント１４０のカメラ制御可能時間の経過を通知するものである。
【００５９】
ステップＳ５５１において、ＣＰＵ２０６は、カメラ制御可能時間を使い切った旨、即ち、現在カメラ制御権を獲得しているカメラ制御クライアント１４０に制御権喪失通知を送り、制御権を強制的に奪ってステップＳ５５２に進む。
【００６０】
ステップＳ５５２において、ＣＰＵ２０６は、待ちバッファリスト２０５−２に登録されている制御権の獲得待ち状態にあるカメラ制御クライアント１４０があるかどうか調べる。制御権の獲得待ち状態にあるカメラ制御クライアント１４０がなければステップＳ５５３に進み、カメラ制御フラグをＯＦＦにし、ビデオカメラ２０１の撮影状態を特定の初期位置に戻すように制御して、ステップＳ５２０に戻る。
【００６１】
一方、ステップＳ５５２で制御権獲得待ちのカメラ制御クライアント１４０がある場合はステップＳ５５４に進む。ステップＳ５５４において、ＣＰＵ２０６は、待ちバッファリスト２０５−１の先頭に記録されている識別子に対応するカメラ制御クライアント１４０を、次に制御権を与えるカメラ制御クライアント１４０とし、識別子バッファ２０５−１に登録する。
【００６２】
ステップＳ５５５において、ＣＰＵ２０６は、その新たに制御権を獲得したカメラ制御クライアント１４０のカメラ制御可能時間を監視するために、タイマ２０９を初期化して計時を開始する。そしてステップＳ５５６に進み、次に制御権を与える識別子のカメラ制御クライアント１４０へ制御権が獲得できたことを通知し、ステップＳ５２０に戻る。
【００６３】
次にステップＳ５６０において、ＣＰＵ２０６は、ステップＳ５２０において発生したイベントがカメラ制御権放棄イベントであるか否かを判断する。カメラ制御権放棄イベントであった場合はステップＳ５５２に進み、そうでない場合はステップＳ５７０に進む。カメラ制御権放棄イベントは、ビデオカメラ２０１を制御するカメラ制御クライアント１４０が、制御可能時間を残したまま、制御権を中止する場合に発行するメッセージである。ステップＳ５５２以降は、制御可能時間を経過した場合と同様の処理を行う。
【００６４】
次にステップＳ５７０において、ＣＰＵ２０６は、ステップＳ５２０において発生したイベントがカメラ制御権譲渡イベントであるか否かを判断する。カメラ制御権譲渡イベントである場合はステップＳ５７１に進み、そうでない場合はステップＳ５８０に進む。
【００６５】
ステップＳ５７１において、ＣＰＵ２０６は、カメラ制御権譲渡イベントを発行したカメラ制御クライアント１４０がカメラ制御サーバ装置１２０のビデオカメラ２０１を制御しているか否かを判断する。制御している場合はステップＳ５７２に進み、制御中でなければステップＳ５７７に進む。
【００６６】
ステップＳ５７２において、ＣＰＵ２０６は、制御権の譲渡先として指定されたカメラ制御クライアント１４０が待ちバッファリスト２０５−２にいるかをチェックする。譲渡先のカメラ制御クライアント１４０が待ちバッファリスト２０５−２に存在して制御権要求を待つ状態であった場合には、制御権を譲渡（移転）するため、ステップＳ５７３に進む。
【００６７】
ステップＳ５７３において、ＣＰＵ２０６は、譲渡先であるカメラ制御クライアント１４０の識別子を識別子バッファ２０５−１に記録する。その後、ステップＳ５７４に進み、ＣＰＵ２０６は、制御権要求を待つカメラ制御クライアント１４０を管理する待ちバッファリスト２０５−２から譲渡先のカメラ制御クライアント１４０の識別子を削除して、ステップＳ５５５に進む。そしてステップＳ５５５において、ＣＰＵ２０６は、新たに制御権を獲得したカメラ制御クライアント１４０の制御可能時間の監視のために、タイマ２０９を初期化して計時を開始する。ここでタイマ２０９が計時する時間は、制御可能時間に、制御権を譲渡するカメラ制御クライアント１４０の制御可能時間の残り時間を加算した時間である。その後、ステップＳ５５６に進み、譲渡先のカメラ制御クライアント１４０に制御権獲得通知メッセージを送付して制御権の譲渡処理を完了し、ステップＳ５２０に戻る。
【００６８】
一方、ステップＳ５７２におけるカメラ制御クライアント１４０が待ちバッファリスト２０５−２に存在しない場合はステップＳ５７５に進む。
【００６９】
ステップＳ５７５において、ＣＰＵ２０６は、カメラ制御サーバ装置１２０が映像を送信するカメラ制御クライアント１４０の識別子を管理する送信先テーブル２０５−３に譲渡先のカメラ制御クライアント１４０の識別子が保持されているか否かを判断する。送信先テーブル２０５−３に存在した場合は、映像受信中であったカメラ制御クライアント１４０に制御権を譲渡するため、ステップＳ５５６に進む。ステップＳ５５６において、ＣＰＵ２０６は、譲渡先カメラ制御クライアント１４０に制御権獲得通知メッセージを送付して制御権の譲渡処理を完了し、ステップＳ５２０に戻る。一方、ステップＳ５７５において送信先テーブル２０５−３に存在しない場合は、ステップＳ５７６に進み、ＣＰＵ２０６は、指定を行ったカメラ制御クライアント１４０に対して譲渡先が不明である旨を通知をして、ステップＳ５２０に戻る。
【００７０】
またステップＳ５７１においてカメラ制御権譲渡イベントを発行したカメラ制御クライアント１４０がカメラ制御サーバ装置１２０のビデオカメラ２０１を制御していない場合はステップＳ５７７に進む。ステップＳ５７７において、ＣＰＵ２０６は、譲渡先に指定したカメラ制御クライアント１４０が制御中かどうかを判断する。制御中であれば、制御権要求待ちのカメラ制御クライアント１４０からの譲渡に相当し、ステップＳ５７３に進む。制御中で無ければ、ステップＳ５７８に進む。ステップＳ５７８において、ＣＰＵ２０６は、待ちバッファリスト２０５−２の識別子を譲渡先のカメラ制御クライアント１４０の識別子に変更し、制御権要求の待ち状態の譲渡を完了し、ステップＳ５２０に戻る。なお、以上で説明したステップＳ５７０でカメラ制御権譲渡のイベントであった場合において実行される一連の処理は、本発明でいう制御権管理手段による処理に対応する。
【００７１】
次にステップＳ５８０において、ＣＰＵ２０６は、ステップＳ５２０において発生したイベントが他のカメラ制御クライアント１４０に関する情報取得であるか否かを判断する。該情報取得である場合は、ステップＳ５８１に進み、そうでない場合はステップＳ５９０に進む。
【００７２】
ステップＳ５８１において、ＣＰＵ２０６は、制御権を要求し待ち状態にある待ちバッファリスト２０５−２に登録された全てのカメラ制御クライアント１４０の識別子情報と、送信先テーブル２０５−３に登録されたカメラ制御サーバ装置１２０からの映像を受信する全てのカメラ制御クライアント１４０の識別子情報とを、制御権を獲得しているカメラ制御クライアント１４０に送信する。これにより、制御権を獲得しているカメラ制御クライアント１４０は、制御権を譲渡する際に譲渡可能なカメラ制御クライアント１４０の一覧表示を表示することができる。なお、制御権を獲得していないカメラ制御クライアント１４０が情報取得を要求した場合は、同様の情報がカメラ制御サーバ装置１２０により送信される。なお、ステップＳ５８１の処理は、本発明でいう制御権要求クライアント情報送信手段及び映像受信クライアント情報送信手段による処理に対応する。
【００７３】
次にステップＳ５９０において、ＣＰＵ２０６は、ステップＳ５２０において発生したイベントがカメラ制御クライアント１４０の起動及び終了に伴う映像送信開始要求及び映像送信停止イベントであるか否かを判断する。該映像送信開始要求及び映像送信停止イベントである場合はステップＳ５９１に進み、そうでない場合はステップＳ５２０に戻る。
【００７４】
ステップＳ５９１において、ＣＰＵ２０６は、送信先テーブル２０５−３を更新する。カメラ制御サーバ装置１２０が受信したメッセージがカメラ制御クライアント１４０の起動時に送られる映像送信開始要求メッセージの場合は、ステップＳ５９１で送信先テーブル２０５−３にカメラ制御クライアント１４０の識別子を追加登録する。またカメラ制御クライアント１４０の終了時に送られる映像送信停止要求メッセージの場合は、ステップＳ５９１で送信先テーブル２０５−３からカメラ制御クライアント１４０の識別子を削除する。
【００７５】
次に図６のフローチャートを参照して、カメラ制御クライアント１４０の動作を説明する。なお、この制御を実行する制御プログラムは二次記憶装置２２６に記憶されており、実行時に記憶手段として機能する主記憶装置２２３にロードされ、ＣＰＵ２２２によって実行されるものとする。
【００７６】
まずステップＳ６０１０において、ＣＰＵ２２２は、各種パラメータ、フラグ、映像送信要求メッセージの送信等の初期化処理を実行する。
【００７７】
次にＳ６０２０において、ＣＰＵ２２２は、イベントの発生を待ち、何らかのイベントが発生するとＳ６０３０に進む。ステップＳ６０３０以降においては、イベントの種類に応じた処理を行う。
【００７８】
ここでステップＳ６０２０において発生するイベントには、カメラ制御クライアント１４０のユーザインタフェースを介してユーザから指定される操作と、カメラ制御サーバ装置１２０から送られてくるメッセージ受信がある。
【００７９】
カメラ制御クライアント１４０を操作するユーザからの指定操作には、ステップＳ６０３０で処理するカメラ制御命令、ステップＳ６０４０で処理するカメラ制御権獲得要求、ステップＳ６０５０で処理するカメラ制御権放棄がある。更には、ステップＳ６０７０で処理するカメラ制御権譲渡、ステップＳ６０８０で処理する他クライアント情報取得、ステップＳ６１２０で処理するクライアント終了処理がある。
【００８０】
カメラ制御サーバ装置１２０から送られてくるメッセージには、ステップＳ６０６０で処理する制御権の待ち情報通知、ステップＳ６０８５で処理する他クライアント情報通知、ステップＳ６０９０で処理する制御権の譲渡先不明通知がある。更には、ステップＳ６１００で処理するカメラ制御権獲得通知、ステップＳ６１１０で処理するカメラ制御権喪失通知がある。以下、図６の処理フローに従って説明する。
【００８１】
次にステップＳ６０３０において、ＣＰＵ２２２は、ステップＳ６０２０で発生したイベントがカメラ制御命令であるか否かを判断する。カメラ制御命令である場合はステップＳ６０３１に進み、そうでない場合はステップＳ６０４０に進む。
【００８２】
ステップＳ６０３１において、ＣＰＵ２２２は、制御権獲得フラグがＯＮとなっているか、即ちカメラ制御クライアント１４０自身がビデオカメラ２０１の制御権を獲得しているのか否かを判断する。フラグがＯＮであれば、ステップＳ６０３２に進み、カメラ制御サーバ装置１２０へカメラ制御命令を送信し、ステップＳ６０２０に戻る。一方、ステップＳ６０３１において、フラグがＯＮでないと判断した場合はステップＳ６０２０に戻る。
【００８３】
次にステップＳ６０４０において、ＣＰＵ２２２は、ステップＳ６０２０で発生したイベントがカメラ制御権獲得要求イベントであるか否かを判断する。カメラ制御権獲得要求イベントである場合はステップＳ６０４１に進み、そうでない場合はステップＳ６０５０に進む。
【００８４】
ステップＳ６０４１において、ＣＰＵ２２２は、制御権獲得フラグがＯＮとなっているか、即ちカメラ制御クライアント１４０自身がビデオカメラ２０１の制御権を獲得しているのか否かを判断する。制御権フラグがＯＮ、即ちビデオカメラ２０１の制御権を獲得している場合はステップＳ６０２０のイベント待ち状態に戻る。制御権フラグがＯＦＦ、即ち制御権を獲得していない場合は、ステップＳ６０４２に進み、カメラ制御権要求メッセージをカメラ制御サーバ装置１２０に送信し、ステップＳ６０２０に戻る。
【００８５】
次にステップＳ６０５０において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントがカメラ制御権放棄イベントであるか否かを判断する。カメラ制御権放棄イベントである場合はステップＳ６０５１に進み、そうでない場合はステップＳ６０６０に進む。
【００８６】
ステップＳ６０５１において、ＣＰＵ２２２は、制御権獲得フラグがＯＮとなっているか、即ちカメラ制御クライアント１４０自身がビデオカメラ２０１の制御権を獲得しているのか否かを判断する。制御権フラグがＯＮ、即ちビデオカメラ２０１の制御権を獲得している場合はステップＳ６０５２に進み、カメラ制御権放棄メッセージをカメラ制御サーバ装置１２０に送信し、ステップＳ６０２０に戻る。一方、制御権フラグがＯＦＦ、即ち制御権を獲得していない場合は、ステップＳ６０２０のイベント待ち状態に戻る。
【００８７】
次にステップＳ６０６０において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントが待ち情報通知イベントであるか否かを判断する。待ち情報通知イベントであればステップＳ６０６１に進み、そうでなければステップＳ６０７０に進む。
【００８８】
ステップＳ６０６１において、ＣＰＵ２２２は、現時点でのカメラ制御権要求待ち時間及びカメラ制御権要求待ちのカメラ制御クライアント１４０の数等のカメラ制御権に関する待ち情報をビットマップディスプレイ２２１上に表示し、ステップＳ６０２０に戻る。
【００８９】
次にステップＳ６０７０において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントがカメラ制御権譲渡イベントであるか否かを判断する。カメラ制御権譲渡イベントである場合はステップＳ６０７１に進み、そうでない場合はステップＳ６０８０に進む。
【００９０】
ステップＳ６０７１において、ＣＰＵ２２２は、カメラ制御権譲渡メッセージをカメラ制御サーバ装置１２０に送信し、ステップＳ６０２０に戻る。カメラ制御が譲渡可能かどうかの判断はカメラ制御サーバ装置１２０で行う。なお、ステップＳ６０７１の処理は、本発明でいう制御権譲渡要求手段による処理に対応する。
【００９１】
次にステップＳ６０８０において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントが他クライアント情報取得イベントであるか否かを判断する。該情報取得イベントである場合はステップＳ６０８１に進み、そうでない場合はステップＳ６０９０に進む。
【００９２】
ステップＳ６０８１において、ＣＰＵ２２２は、制御権を譲渡することが可能なカメラ制御クライアント１４０の識別子一覧等、他クライアント情報の要求メッセージをカメラ制御サーバ装置１２０に送信し、ステップＳ６０２０に戻る。なお、ステップＳ６０８０及びステップＳ６０８１の処理は、本発明でいう制御権要求クライアント情報要求手段及び映像受信クライアント情報要求手段による処理に対応する。
【００９３】
次にステップＳ６０８５において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントが他クライアント情報通知イベントであるか否かを判断する。該情報通知イベントである場合はステップＳ６０８６に進み、そうでなければステップＳ６０９０に進む。
【００９４】
ステップＳ６０８６において、ＣＰＵ２２２は、制御権を譲渡することが可能なカメラ制御クライアント１４０の識別子一覧等、他クライアント情報を受信し画面上に表示し、ステップＳ６０２０に戻る。なお、ステップＳ６０８５及びステップＳ６０８６の処理は、本発明でいう制御権要求クライアント情報受信手段及び映像受信クライアント情報受信手段による処理に対応する。
【００９５】
次にステップＳ６０９０において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントが譲渡先不明通知イベントであるか否かを判断する。譲渡先不明通知イベントである場合はステップＳ６０９１に進み、そうでない場合はステップＳ６１００に進む。
【００９６】
ステップＳ６０９１において、ＣＰＵ２２２は、他のカメラ制御クライアント１４０の情報を再度表示して制御権の譲渡先指定画面に戻すようにして、ステップＳ６０２０に戻る。
【００９７】
図４（ｄ）に示した４４０は、制御権を譲渡する場合のユーザインタフェースの表示例である。４４０において、制御権譲渡ボタン３０８を押下した状態は、図６のカメラ制御クライアント１４０の処理フローにおけるステップＳ６０８６の他クライアント情報を表示する場合に対応している。ここで、制御権譲渡ボタン３０８の下には、譲渡可能なカメラ制御クライアント１４０の識別子一覧が表示されている。この場合において、表示された一覧から譲渡先を選択して指定したときに、この選択結果に基きカメラ制御権譲渡の操作とみなし、図６におけるステップＳ６０７０でＹＥＳとなる場合、即ちカメラ制御権譲渡の処理を行うようにしてもよい。なお、ここで説明した処理は、本発明でいう第一の選択手段及び第二の選択手段による処理に対応する。
【００９８】
次にステップＳ６１００において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントがカメラ制御権獲得通知イベントであるか否かを判断する。カメラ制御権獲得通知イベントである場合はステップＳ６１０１に進み、そうでない場合はステップＳ６１１０に進む。
【００９９】
ステップＳ６１０１において、ＣＰＵ２２２は、制御権フラグをＯＮにして、ビデオカメラ２０１の制御権を獲得できたことを記録し、ステップＳ６０２０に戻る。
【０１００】
次にステップＳ６１２０において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントがカメラ制御権喪失通知イベントであるか否かを判断する。カメラ制御権喪失イベントである場合はステップＳ６１１１に進み、そうでない場合はステップＳ６１２０に進む。
【０１０１】
ステップＳ６１１１において、ＣＰＵ２２２は、制御権フラグをＯＦＦにして、ビデオカメラ２０１の制御権を喪失したことを記録し、ステップＳ６０２０に戻る。
【０１０２】
次にステップＳ６１２０において、ＣＰＵ２２２は、ステップＳ６０２０において発生したイベントがクライアント終了イベントであるか否かを判断する。クライアント終了イベントである場合はステップＳ６１２１に進み、そうでない場合はステップＳ６０２０に戻る。
【０１０３】
ステップＳ６１２１において、ＣＰＵ２２２は、制御権獲得フラグがＯＮとなっているか、即ちカメラ制御クライアント１４０自身がビデオカメラ２０１の制御権を獲得しているのか否かを判断する。制御権フラグがＯＮ、即ち制御権を獲得している場合はステップＳ６１２２に進み、カメラ制御権放棄メッセージをカメラ制御サーバ装置１２０に送信する。そしてステップＳ６１２３に進み、映像送信停止要求メッセージを送信して、ネットワーク切断等の終了処理を行い、本制御プログラムを終了する。一方、ステップＳ６１２１において制御権獲得フラグがＯＦＦの場合は、ステップＳ６１２３に進み、上述同様の終了処理を行い、本制御プログラムを終了する。
【０１０４】
以上のように、本実施の形態では、複数のカメラ制御クライアント１４０にビデオカメラ２０１の制御権を順次付与するカメラ制御システムにおいて、カメラ制御クライアント１４０間で制御権を移転することを可能とした。即ち、制御権を獲得しているカメラ制御クライアント１４０の制御権を、制御権を要求し待ち状態である他のカメラ制御クライアント１４０やカメラ制御サーバ装置１２０から映像を受信している他のカメラ制御クライアント１４０に移転することを可能にした。これにより、自他カメラ制御クライアント１４０において制御権を有効に活用することができる。詳しくは、制御可能時間の残り時間分の制御権を自他カメラ制御クライアント１４０において譲渡し合うことができ、制御権の有効利用を図ることができる。具体的には、例えば制御権を獲得したタイミングが制御権を獲得したユーザにとって都合が悪いときに、他のユーザに制御権を譲渡し、該他のユーザから都合の良いときに制御権を譲渡してもらう等の運用が可能となり、制御権を有効活用できる。
【０１０５】
なお、本発明を実現するために、上述した実施形態の機能を実現するソフトウェアのプログラムコード（コンピュータプログラム）を記録した記憶媒体を用いても良い。この場合には記憶媒体をシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによって本発明の目的が達成される。
【０１０６】
この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０７】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１０８】
また、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）等が実際の処理の一部又は全部を行う場合も含まれることは言うまでもない。
【０１０９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。この場合には、書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行ってもよい。
【図面の簡単な説明】
【０１１０】
【図１】本発明の実施の形態に係るカメラ制御システムの構成を示す図である。
【図２】本発明の実施の形態に係るカメラ制御サーバ装置及びカメラ制御クライアントのシステム構成を示す図である。
【図３】本発明の実施の形態に係るカメラ制御クライアントにおいて表示されるユーザインタフェース画面の一例を示す図である。
【図４】本発明の実施の形態に係るカメラ制御クライアントにおいて表示されるユーザインタフェース画面上の制御権の状態に係る表示例を説明するための図である。
【図５】本発明の実施の形態に係るカメラ制御サーバ装置の動作を説明するためのフローチャートである。
【図６】本発明の実施の形態に係るカメラ制御クライアントの動作を説明するためのフローチャートである。
【符号の説明】
【０１１１】
１００  カメラ
１１０  カメラ制御サーバ
１１１  カメラ制御部
１１２  制御権管理部
１１３  メッセージ送受信部
１１４  映像送信部
１２０  カメラ制御サーバ装置
１３０  ネットワーク
１４０  カメラ制御クライアント
１４１  メッセージ送受信部
１４２  表示部
１４３  操作入力部
１４４  映像受信部
２０１  ビデオカメラ
２０２  カメラ制御回路
２０３  ビデオキャプチャ
２０４  ネットワークインタフェース
２０５  主記憶装置
２０５−１  識別子バッファ
２０５−２  待ちバッファリスト
２０５−３  送信先テーブル
２０６  ＣＰＵ
２０７  二次記憶装置
２０８  システムバス
２０９  タイマ
２２１  ビットマップディスプレイ
２２２  ＣＰＵ
２２３  主記憶装置
２２３−１  譲渡先バッファ
２２４  ネットワークインタフェース
２２５  マウス
２２６  二次記憶装置
２２７  システムバス
２２８  タイマ
【図１】
2009017221.tif 000003
【図２】
2009017221.tif 000004
【図３】
2009017221.tif 000005
【図４】
2009017221.tif 000006
【図５】
2009017221.tif 000007
【図６】
2009017221.tif 000008