JP2005341396A - 映像通信装置、映像通信方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体 - Google Patents

映像通信装置、映像通信方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
JP2005341396A
JP2005341396A JP2004159702A JP2004159702A JP2005341396A JP 2005341396 A JP2005341396 A JP 2005341396A JP 2004159702 A JP2004159702 A JP 2004159702A JP 2004159702 A JP2004159702 A JP 2004159702A JP 2005341396 A JP2005341396 A JP 2005341396A
Authority
JP
Japan
Prior art keywords
video
camera
control information
camera control
connection destination
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
JP2004159702A
Other languages
English (en)
Other versions
JP4510519B2 (ja
JP2005341396A5 (ja
Inventor
Takahiro Kurosawa
貴弘 黒澤
Tomoaki Kawai
智明 河合
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004159702A priority Critical patent/JP4510519B2/ja
Publication of JP2005341396A publication Critical patent/JP2005341396A/ja
Publication of JP2005341396A5 publication Critical patent/JP2005341396A5/ja
Application granted granted Critical
Publication of JP4510519B2 publication Critical patent/JP4510519B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Studio Devices (AREA)

Abstract

【課題】 インターネット上に流通している膨大な数のカメラサーバを制御するカメラ制御情報やカメラサーバの制御権を複数組み合わせて、カメラサーバを適切にかつ簡便に制御できるようにする。
【解決手段】 複数の映像クリップから接続先カメラ情報を抽出する接続先抽出手段と、上記映像クリップからカメラ制御情報を抽出する制御情報抽出手段と、上記制御情報抽出手段によって抽出されたカメラ制御情報を、上記接続先抽出手段によって抽出された接続先のカメラ装置に適用するカメラ制御適用手段とを設け、ネットワーク50上に配置されたカメラサーバ101、102への選択的なアクセス、及びカメラ制御を簡便に行うことができるようにする。
【選択図】 図1

Description

本発明は映像通信装置、映像通信方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体に関し、特に、カメラ装置などのライブ映像ソースの制御情報を反映して作成された複数の映像データを組み合わせて映像クリップを作成するために用いて好適な技術に関する。
近年、インターネットが広く普及し始め、インターネットによって多くの情報やサービスが提供されている。一方、映像のデジタル化、圧縮技術の進展に伴い、従来のような大容量の通信回線ではなく伝送速度の低い通信回線においても映像を送ることが可能になった。このような技術の進展により、インターネットによる映像配信が提案されている。
上記のような映像配信サービスを行う場合においては、撮影したライブ映像を、インターネットなどの通信インフラストラクチャを使って配信するとともに、撮影のためのカメラ設定やカメラ操作などを指示する技術が用いられている。また、上記映像配信に加えて、パン、チルト、ズーム、逆光補正といったカメラ制御を、ネットワークを介して行っている。
さらに、カメラ制御によって撮像される領域に関しても制限することが可能になっている。例えば、特権ユーザでは、カメラに備わるズーム機能のすべてを利用できるが、通常ユーザは、ズーム機能の一部(たとえば、テレ端を使い切れない)のみ利用可能とするような制限である。パン機能やチルト機能についても同様である。上記インターネットを利用して映像配信する技術として、例えば、特許文献1が提案されている。
特開2002−199377号公報
インターネット上でサービスされている膨大な数のカメラ制御可能なカメラサーバの映像情報を映像クリップとして提供する場合、映像情報に付帯するカメラ制御情報(パン、チルト、ズーム、あるいは、制御権などの情報)が適切に利用できないという問題があった。あるいは、利用できた場合でも、そこに含まれるカメラ制御情報を相互に組み合わせて利用することが困難である問題があった。
また、携帯電話端末などのように、限られたユーザインターフェースしか備えていない機器では、複雑なカメラ制御情報を入力することが困難である問題もあった。
本発明は、このような問題にかんがみてなされたものであり、インターネット上に流通している膨大な数のカメラサーバを制御するカメラ制御情報やカメラサーバの制御権を複数組み合わせて、カメラサーバを適切にかつ簡便に制御できるようにすることを目的とする。
本発明の映像通信装置は、複数の映像クリップを保持する映像通信装置であって、上記映像クリップから接続先カメラ情報を抽出する接続先抽出手段と、上記映像クリップからカメラ制御情報を抽出する制御情報抽出手段と、上記制御情報抽出手段によって抽出されたカメラ制御情報を、上記接続先抽出手段によって抽出された接続先のカメラ装置に適用するカメラ制御適用手段とを備えることを特徴としている。
本発明の映像通信方法は、複数の映像クリップを保持する映像通信装置における映像通信方法であって、上記映像クリップから接続先カメラ情報を抽出する接続先抽出工程と、上記映像クリップからカメラ制御情報を抽出する制御情報抽出工程と、上記制御情報抽出工程によって抽出されたカメラ制御情報を、上記接続先抽出工程によって抽出された接続先のカメラ装置に適用するカメラ制御適用工程とを有することを特徴としている。
本発明のコンピュータプログラムは、複数の映像クリップを保持する映像通信装置における映像通信方法をコンピュータに実行させるプログラムであって、上記映像クリップから接続先カメラ情報を抽出する接続先抽出工程と、上記映像クリップからカメラ制御情報を抽出する制御情報抽出工程と、上記制御情報抽出工程によって抽出されたカメラ制御情報を、上記接続先抽出工程によって抽出された接続先のカメラ装置に適用するカメラ制御適用工程とをコンピュータに実行させることを特徴としている。
本発明の記録媒体は、上記に記載のコンピュータプログラムを記録したことを特徴としている。
本発明によれば、カメラ制御情報を含む映像クリップを複数保持する映像通信装置において、上記保持する映像クリップを相互に適用できるようにしたので、ネットワーク上に配置された膨大な数のカメラサーバ(映像ソース)への選択的なアクセスを容易に行うことができるようにするとともに、カメラ制御を簡便に行うようにすることができる。これにより、ネットワーク上のカメラサーバの制御を、簡便なユーザインターフェースにより行うことを可能となし、携帯電話端末のように、限られたユーザインターフェースしか備えていない機器においても、複雑なカメラ制御情報を入力することができる。また、膨大な数のカメラサーバの一覧性を改善することが可能になる。
以下に、本発明の映像通信装置、映像通信方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体の実施の形態を説明する。最初に、本発明の背景技術を説明する。
[第三世代携帯電話技術]
従来の携帯電話サービスよりも高い電波利用効率と通信帯域を備えた携帯電話サービスとして、第三世代(3G)の携帯電話サービスが提供されるようになっている。
第三世代(3G)の携帯電話では、電話通話しながらインターネットアクセスなどのデータ通信が可能となっている。例えば、あるサービスでは、マルチアクセスと呼ばれる接続形態を用意しており、これを利用することで、ウェブブラウジングなどのデータ通信を行いながら、電話通話を可能にしている。
さらに、第三世代携帯電話端末では、端末自体の処理能力も強化されており、これまでPC(パーソナルコンピュータ)などで行っていた作業を、携帯電話端末で処理することが可能になっている。例えば、メールやウェブブラウジング及び映像送受信などの機能を実装している携帯電話端末が提供されている。
また、第三世代携帯電話サービスでは、映像配信のサービスも行われている。
[MPEG-4コーデック]
動体通信網に接続する携帯情報端末から広帯域インターネットに接続するパーソナルコンピュータまでの映像送受信端末の広がりを受けて、数十kpbsから数十Mbpsの広いビットレートをカバーする高圧縮符号化効率、及び、無線やインターネットなどの伝送路誤りに対する強い耐性などを備えた動画像圧縮符号化方式として、ISOで1999年にMPEG-4が制定されている。
第三世代(3G)携帯電話サービスでは、携帯電話端末(ビジュアル端末)間でこのMPEG-4を用いて相互に映像を送受信するサービスを提供している。
[携帯電話向けMPEG-4クリップ技術]
携帯電話端末に映像クリップ(ファイル)を表示する技術がすでに提供されている。
これらのサービスでは、MPEG-4コーデックなどで圧縮符号化された映像データ(映像クリップあるいは映像ファイル)をサーバに保存し、携帯電話端末に内蔵するデータ通信機能を使ってサーバからダウンロードした上で、同じく携帯電話端末に内蔵するデコーダを使って映像を携帯電話端末の画面に表示する。
また、これらの映像クリップのデータフォーマットは、マイクロソフト社のASF (Advanced Streaming Format) 形式や、ISO標準のMP4形式(ISO/IEC14496-1 Amd1 MPEG-4システム Version2) など、インターネットやパーソナルコンピュータなどで広く普及している形式に準拠している。また、これらのサービスでは、いずれも映像クリップのデータ量の上限が決められている。
[映像クリップへのリンクやコマンドの関連付け技術]
マイクロソフト社のASF (Advanced Streaming Format) 形式や Apple社 QuickTime File Formatなどでは、映像クリップにURLなどのハイパーリンク機能を関連付けることができる。
例えば、ASFでは、"Script Command Object"を定義することが可能であり、このオブジェクト内に、ASFファイル再生時のタイムラインに同期するように設定したリンク情報をリストできる。さらに、ASFでは、ScriptCommand Objectの名前のとおり、リンク情報ばかりでなく、スクリプトなどのコマンド情報も記述可能となっている。
[映像クリップへのカメラ制御シーケンス組み込み技術]
ここでは、映像クリップが生成された時点でのカメラ制御情報シーケンスを、映像クリップの時系列に沿って、映像内容と同期するよう映像クリップに組み込む方法が示されている。さらに、そのカメラ制御情報シーケンスを、映像クリップ再生時点でカメラサーバに適用し、カメラ制御情報シーケンスに沿って制御したライブ映像を取得する方法が示されている。
以下、本発明の映像通信装置、映像通信方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体の実施の形態を、図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態では、ネットワーク上に配置された多数のカメラサーバのライブ映像から生成したカメラ制御情報付き映像クリップを複数組み合わせて利用する例について説明する。
この中で、複数の映像クリップを管理するビューワ上で、ある映像クリップAに別の映像クリップBを適用すると、映像クリップAの映像ソースであるカメラサーバ101、102に接続した上で、映像クリップBに含まれるカメラ制御情報を用いてカメラ制御し、適用時点でのカメラサーバ101、102のライブ映像を取得する点に特徴がある。
図1は、本発明を用いた実施の形態の典型的な利用形態を示した図である。図1において、ライブ映像通信システムによる第1のカメラサーバ101、第2のカメラサーバ102である。200はネットワーク50に接続されたパーソナルコンピュータなどにインストールされたビューワ(viewer:さまざまなデータファイルの内容を表示するソフトウェア。)である。
第1及び第2のカメラサーバ101、102とビューワ200とはそれぞれネットワーク50に接続され、ビューワ200からネットワーク50を介してリクエストがカメラサーバ101、102へ送られ、これが受け入れられるとカメラサーバ101、102からビューワ200へ映像データが配送され、ビューワ200でカメラ映像を表示することが可能となる。
また、ビューワ200からカメラ制御コマンドがカメラサーバ101、102へ送られ、カメラのズーム、パン、チルトなどの操作が可能となる。さらに、ネットワーク50上には、中継サーバ300が置かれビューワ200とカメラサーバ101、102との通信を中継することがある。
さらに、400は本実施の形態による映像変換サーバであり、カメラサーバ101、102が提供する映像データを携帯電話端末向けに変換した上で、携帯電話向けに中継する。また、500は本実施の形態のネットワーク50と携帯電話回線網550とを仲介するゲートウェイであり、601は、本実施の形態のビューワ200を搭載した第1の携帯電話端末、602は第2の携帯電話端末である。
このゲートウェイ500を介して、本実施の形態のネットワーク50に接続された機器と携帯電話端末601及び602とが通信可能となる。なお、携帯電話端末601、602上のビューワプログラムは、典型的には、工場出荷時にインストールされるが、Java(登録商標)プログラムのように実行時(利用時)にダウンロードされて実行される形態であってもよい。
図1のネットワーク50は、企業あるいは組織内で運用されるイントラネットである場合もあり、広く世界をつないでいるインターネットである場合もある。また、中継サーバ300や映像変換サーバ400は、典型的には、インターネットイクスチェンジ(IX)やデータセンター(IDC : Internet Data Center)に配置され、通信負荷の軽減を図るよう設計される。
図2は、映像変換サーバ400を構成可能なハードウェア構成の一例を示したものであり、サーバ向けコンピュータにより構成される。より詳細には、プログラムやデータを格納する記憶装置、ネットワーク50と接続するためのネットワークI/F410、プログラムによる各種の処理を実行するCPU420などからなる。記憶装置は、主記憶装置となるRAM431、フラッシュメモリやHD装置などからなる二次記憶装置432、及びプログラムを媒体からロードするためのFD装置434等から構成される。
また、図示しないが、設定などを行うための入出力装置を備える場合もある。具体的には、ディスプレイを接続する表示装置、キーボードやマウスなどのコントローラなどである。
図3は、第1のカメラサーバ101、第2のカメラサーバ102を構成可能なハードウェア構成の一例を示した図である。
図3に示したように、本実施の形態においては、実際に撮像を行うカメラ装置110とコンピュータシステム120とにより構成されている。より詳細に説明すると、上記コンピュータシステム120は、プログラムやデータを格納する記憶装置、映像データを取り込むための映像キャプチャボード126、カメラ装置にコマンドを送るためのシリアルI/F127、ネットワーク50と接続するためのネットワークI/F122、プログラムによる各種の処理を実行するCPU121等からなる。
記憶装置は、主記憶装置となるメモリ(RAM)123、フラッシュメモリやHD装置などからなる二次記憶装置124、及びプログラムを媒体からロードするためのFD装置125などから構成される。
また、図示しないが、設定などを行うための入出力装置を備える場合もある。具体的には、ディスプレイを接続する表示装置、キーボードやマウスなどのコントローラなどである。さらに、図示しないが、第1及び第2のカメラサーバ101、102は、カメラ装置110とコンピュータシステム120とが一体化されたサーバ内蔵型ネットワークカメラで構成されてもよい。
図4は、ビューワ200を動作させるハードウェア構成615の一例を示したブロック図であり、本実施の形態においては携帯電話端末を使ってビューワを動作させる場合について説明している。より詳細に説明すると、プログラムやデータを格納する記憶装置610、携帯電話網と接続するための無線通信I/F620、プログラムによる各種の処理を実行するCPU630、及び周辺コントローラ631、表示コントローラ632等からなる。記憶装置610は、主記憶装置となるRAM、フラッシュメモリなどからなる。
周辺装置は、携帯電話端末601、602上に配置されたボタン類641やスイッチ類642などの入力装置、ディスプレイなどの表示出力装置650、及びマイクロフォンやスピーカなどの音声入出力装置660を含む。
図5は、プログラムの構成する部分を模式化した図であり、カメラサーバ101、102内にはカメラの制御を司るカメラ制御サーバ1011と映像の配送を司る映像サーバ1012の2つのモジュールを含む。
同様に、携帯電話端末601(602)上で動作するビューワ200内にはカメラ制御コマンドの発行やカメラ状態通知に対応するカメラ制御部2001、映像クリップの表示を担当する映像表示部2002、ならびに、複数の映像クリップを識別管理するための映像クリップ管理部2003を含む。
さらに、映像変換サーバ400には、カメラ制御コマンド列(以下、PTZシーケンスと呼ぶ)を解釈し、第1及び第2のカメラサーバ101、102にカメラ制御命令を発行するカメラ制御部4001、第1及び第2のカメラサーバ101、102から映像を取得し、携帯電話向けに変換し、さらに、それを携帯電話網向け映像クリップに編集するモジュール(映像取得部4002、映像変換部4003、映像送信部4004)がそれぞれ含まれる。
図6は、携帯電話上で映像クリップを再生表示する映像クリップビューワ200の動作の流れを示すフローチャートである。
処理が開始されると、最初のステップS601で、先ず、映像変換サーバ400の識別子を入手する。これは、ユーザが直接キー操作により識別子を入力するのでもよいし、メールやウェブページに含まれる識別子を選択するのであってもよい。また、この場合の識別子は、典型的には、映像変換サーバ400を識別するURLである。
続いて、ステップS602で、映像変換サーバ400が接続すべき第1及び第2のカメラサーバ101、102の識別子、上記第1及び第2のカメラサーバ101、102に指示するカメラ制御用のPTZシーケンス、及びユーザ識別子やパスワードなどアクセス制御用のユーザ識別情報を入手する。
上記第1及び第2のカメラサーバ101、102識別子やPTZシーケンスは、ユーザが直接キー操作によりカメラ制御コマンドを構成するよう入力するのでもよいし、メールやウェブページに含まれる第1及び第2のカメラサーバ101、102識別子やPTZシーケンスを選択するようにしてもよい。
また、PTZシーケンスは、空であっても構わない。この場合、カメラ制御を伴わない第1及び第2のカメラサーバ101、102の現状の映像クリップを意味する。また、ユーザ識別情報は、通常、ユーザが直接キー操作により入力するが、空であっても構わない。この場合、通常ユーザとしてのカメラサーバ101、102への接続を意味する。
続いて、ステップS603に進み、ゲートウェイ500を経由して、入手した映像変換サーバ400の識別子に基づき映像変換サーバ400の映像送信部4004に接続する。さらに、次のステップS604で、携帯電話ビューワ200は、映像変換サーバ400に映像クリップを要求する。この要求は、要求する映像クリップの作成方法の指定などを含み、典型的には、HTTPプロトコルに則り送信される。
この際、PTZシーケンスを入手している場合には、そのPTZシーケンスを映像変換サーバ400に送信する。この要求及びPTZシーケンスの送信は、HTTP接続のGETメソッドでURLに組み込んでもよいし、HTTP接続のPOSTメソッドで送信されてもよい。ここでは、POSTメソッドで送信される場合について説明する。
例えば、以下の通りである。なお、実際には、URLエンコードが適用されるが、以下では、説明の都合上URLエンコードを適用していない部分もある。
POST /getvideoclip/ HTTP/1.1
Host: 202.28.30.208:8080
User-Agent: MozilePhone/2.0 C2101V(c100)
Pragma: no-cache

Videoencodeparam=QCIF:fps15.0:bps64000:intraframe5:me8
cameraservers=webview://vb101_4.x-zone.canon.co.jp:34560+34561+34562
PTZ=HZ15_30S3_40S4_40P-10_20
moviesizemax=240kbytes
notifyto=mailto:riyousha3@mailserver.usersite.co.jp
userid=331245
userpw=15215294
ただし、『videoencodeparam=』に続く部分は、映像変換サーバ400が上記第1及び第2のカメラサーバ101、102から受け取ったソース映像を携帯電話向けにエンコードする際のパラメータ情報を指示するものである。また、『cameraservers=』に続く部分は、映像変換サーバ400が接続する第1及び第2のカメラサーバ101、102を指定している。
また、『PTZ=』に続く部分は、映像変換サーバ400が第1及び第2のカメラサーバ101、102に関して実行すべきカメラ制御のコマンドを並べたPTZシーケンスを指定している。また、『moviesizemax=』に続く部分は、携帯電話端末あるいは携帯電話網が規定する映像クリップの最大サイズを指定している。また、『notifyto=』に続く部分は、映像クリップ作成時に通知すべき連絡先である。典型的には、携帯電話端末ユーザのメイルアドレスを指定する。また、『userid=』と『userpw=』とに続く部分は、それぞれ、ユーザ識別子とパスワードとである。
この中で、PTZシーケンスの構成要素は、以下のような意味を持つ。nは、数値データ(正負あり)である。
Pn パン(水平方向カメラ制御)指定.
Tn チルト(垂直方向カメラ制御)指定.
Zn ズーム指定.
Bn 逆光補正.逆光補正のON/OFF.
H ホームポジション指定.
Sn プリセット位置指定.n番目のプリセット位置.
Cn カメラサーバ接続切換え指定.n番目のカメラサーバ.
Kn カメラサーバ内カメラ切換え指定.n番目のカメラ.
_n 時間経過指定.0.1秒単位.
続いて、ステップS605で、映像変換サーバ400からのレスポンスを待つ。そして、レスポンスを受け取ったらステップS606に進み、上記映像変換サーバ400から受け取ったレスポンスを解釈して携帯電話端末の表示装置に表示する。この表示は、例えば図15(a)の通りである。図15は、再生すべき映像クリップを選択するための表示の一例である。
次に、ステップS607において、直ぐに取得可能であるか否かを判断する。この判断の結果、映像変換サーバ400からのレスポンスが、何らかの理由からすぐに映像を生成できないことを示す内容であった場合には、ステップS608に進む。反対に、映像をすぐに生成できたことを示す内容であった場合には、ステップS609に進む。
ステップS608では、映像変換サーバ400からのメール通知を待受ける。メール通知は、例えば、SMTP (Simple Mail Transfer Protocol)によるが、SMS(Short Message Service)であってもよい。メール通知を受け取った場合には、そのメール内容を映像変換サーバ400からのレスポンスとして表示し、ステップS609に進む。例えば、図15−(b)の通りである。
また、ステップS609では、レスポンスに含まれる映像クリップの一つを選択し、ダウンロードして再生表示する。ここでは、ダウンロード完了を待っているが、映像クリップの再生表示処理は、ダウンロード完了を待たず、表示再生可能な映像クリップデータが揃った時点で、再生表示処理を開始してもよい。
なお、携帯電話ビューワでの映像クリップ表示中に、携帯電話端末ユーザがクリックした場合には、クリック時点に表示中の映像データ(映像区間、または映像セグメントと呼ぶことがある)に対応するリンク情報が映像クリップから抽出され、携帯電話端末に備わるブラウザ機能を使って、そのリンク情報が示すリンク先情報にアクセスする。リンク先情報へのアクセスでは、典型的には、カメラ制御を可能とする専用ビューワを起動するが、携帯電話端末の設定によっては、設定されたアクションを行う場合もある。例えば、アクセスされたリンク情報をメール添付したメールの発信である。
図14は、第1及び第2のカメラサーバ101、102と通信しライブ映像の表示ならびにカメラ制御を行うライブ映像ビューワ200の動作の流れを説明するフローチャートである。
ステップS651においては、起動時に指示された第1及び第2のカメラサーバ101、102を構成する映像サーバのアドレス及び接続ポートの情報に従い、映像サーバへ接続する。ここで、接続以降の処理を行うための動作プログラム(実現方法としては、スレッドあるいはプロセスの起動となる)が起動され、このプログラムは終了までステップS661の処理を繰り返す。ステップS661では、映像サーバからの映像データが届くたびにそれを受け取り表示する。
次に、メインのプログラムはステップS652に進み、同じく起動時に指示されたカメラ制御サーバのアドレス及び接続ポートの情報に従い、カメラ制御サーバへ接続する。そして、これ以降メインプログラムはユーザからの操作要求を受け付け、実行するメインループへ続く。
先ず、ステップS653でユーザの操作をキーボタン操作などから受け取る。これがカメラ制御に関する場合にはステップS654でカメラ制御サーバへコマンドを発行する。また、映像サーバに関する場合にはステップS655で映像サーバへコマンドを発行する。
また、ユーザの操作がビューワ200の状態を変更する操作(例えば、表示サイズの変更操作など)の場合にはステップS656で内部状態を更新する。そして、ユーザの操作が終了の場合には、ステップS657でビューワ200の動作に関連する各プログラムを順次終了する。ステップS654〜ステップS657の処理が完了するとステップS653へ戻り、ユーザの操作入力を待つ。
第1及び第2の携帯電話端末601、602上で動作するライブ映像ビューワ200は、携帯電話端末の出荷時に備わるソフトウェアとして実装される場合もあるが、Java(登録商標)プログラムのようにネットワーク50からダウンロードして実装されるソフトウェアである場合もある。
図7は、第1及び第2のカメラサーバ101、102内のカメラ制御サーバの動作を示したフローチャートである。
カメラ制御サーバは、起動した時に、先ず、ステップS701で特定のファイル(OSによっては、レジストリなどのシステムデータベース)から第1及び第2のカメラ制御サーバ101、102の動作設定情報を読み出して、それに基づき動作を開始する。ここで、クライアントであるビューワプログラムや映像変換サーバ400からのリクエストを受け付けるポートを開き、続いて、ステップS702のリクエスト受付状態に入る。
上記リクエスト受付状態に入った後、ステップS7021においてリクエスト受け付けの有無を判定する。そして、リクエストが有った場合にはステップS7022に進み、上記受け付けたリクエストが接続リクエストか否かを判定する(ステップS703)。この判定の結果、否ならばステップS7031に進んで接続拒否のエラーコードを返し、その後、ステップS702に戻る。
一方、ステップS703の判定の結果、可ならば、ステップS704に進んで接続処理を行い、クライアントからのコマンドの受付処理を行うスレッドを生成し、クライアントの登録を行ってから、ステップS702に戻る。
一方、生成されたスレッドでは、ステップS707で対応するクライアントからのコマンドの受付を行う。そして、コマンドが届いたならば、それを受け付け、カメラ操作を行う主プログラムへ受け渡す。
主プログラムは、ステップS702でこれを受ける。そして、ステップS7021の判定の結果、操作コマンドに対してはステップS705へ分岐し、操作コマンドを発行したスレッドが接続しているクライアントの権限に応じてカメラ操作を行って、その結果(操作が成功か失敗かを示すコードなど)をカメラ操作要求を受け付けたクライアント対応のスレッドへ伝える。
このクライアント対応のスレッドは、ステップS708で結果をクライアントへ送り返す。主プログラム部分では、ステップS706でカメラの操作により変化した状態(たとえば、パン・チルト・ズームの値、及び、禁止エリア検出の有無などを含むカメラ状態情報など)をすべてのクライアント対応のスレッドに伝える。各クライアント対応のスレッドはステップS709でカメラ制御状態の変化をクライアントへ通達する。
そして、クライアント対応のスレッドはクライアントから接続終了のコマンドを受けたならば、それを主プログラムへ通達し、さらにステップS710で自身のスレッドを終了する。
なお、操作コマンドの扱いにおいては、具体的な操作コマンドの発行の前に、カメラ操作権の割り当て要求を必要とすることも可能である。これは複数の人間がカメラの操作を要求するような状況での混乱を無くす。
この場合、先ず、クライアントからはカメラ操作権獲得の要求コマンドが発行され、これに対して、カメラ制御サーバは現在のカメラ制御権の割り当て状態から、拒絶・割り当て・順番待ちを選びクライアントへ返答する。
カメラ制御権は前もって定められた特定の時間か、クライアントが接続を終了するまでの短いほうの時間で剥奪され、次の順番待ちの人に割り当てられる。順番待ち人数はやはり前もって定められた人数(たとえば5人)に制限され、それ以上のリクエストは拒絶される。
クライアントは、カメラ制御権が獲得されてから剥奪されるまでの間だけ、操作コマンドを発行する。カメラ制御サーバはカメラ制御権が付与されているクライアントからの操作コマンドのみを受け付ける。
また、特権ユーザからの接続に関しては、優先的にカメラ操作権を割り当てられる点、及び、操作コマンドが、禁止エリアを含む撮像領域へのカメラ制御であっても許可される点などが、通常ユーザからの接続とは異なる。
図8は、第1及び第2のカメラサーバ101、102内の映像サーバの動作を示した流れ図である。映像サーバは、先ず、起動時にステップS801で特定のファイル(OSによってはレジストリなどのシステムデータベース)から映像サーバの動作設定情報を読み出して、それに基づき動作を開始する。ここで、映像の獲得と符号化と蓄積を行うスレッドを生成し(最初このスレッドは休止状態)、クライアントであるビューワプログラムや映像変換サーバ400からのリクエストを受け付けるポートを開き、続いて、ステップS802のリクエスト受付状態に入る。
そして、ステップS8021の判定の結果、リクエストが入力されたらステップS8022に進み、リクエストを受け付ける。次に、上記受け付けたリクエストの接続可否の判定をステップS803で行う。この判定の結果、接続否ならばステップS8031に進み、接続拒否のエラーコードを返し、その後、ステップS802に戻る。
一方、ステップS803の判定の結果、接続可ならば、ステップS804に進んで接続処理を行い、クライアントごとのセッションを識別するためのセッション識別子を生成するとともに、クライアントからのコマンドの受付処理を行うスレッドを生成する。また、接続リクエストを発行したクライアントのアクセス権情報などに則してクライアントの登録を行い、その後、ステップS802に戻る。
なお、この際、リクエスト内容がライブ映像への接続であり、かつ、映像の獲得と符号化を行うスレッドが休止状態ならば、ステップS802に戻る前に、動作開始を指示する。生成されたクライアント対応のスレッドでは、ステップS807で対応するクライアントからのコマンドの受付を行う。コマンドが届いたならば、それを受け付け、映像処理を行う主プログラムへ受け渡す。
主プログラムはステップS802でこれを受け、ステップS8021の判定の結果、操作コマンドに対してはステップS805へ進み、映像の獲得や符号化・送信などに関する設定の変更操作を行って、その結果(操作の成功か失敗を示すコード)をコマンド要求を受け付けたクライアント対応のスレッドへ伝える。
クライアント対応のスレッドはステップS808で、この結果をクライアントへ送り返す。主プログラム部分では、ステップS804からの映像の獲得と符号化を行うスレッドへの動作開始の指示により、ステップS806では前もって設定された時間間隔で映像データを、映像キャプチャボードを使って獲得し、これを圧縮データに変換する。さらに、この圧縮データを、ライブ映像に接続しているすべてのクライアント対応のスレッドに伝える(ステップS8061)。
各クライアント対応のスレッドはステップS809で、クライアントからの次映像フレーム送信要求の有無を判定し、要求があるならば、圧縮データをクライアントへ配送する。この際、禁止エリアが検出されている場合には、登録されているクライアント情報に照らして、特権ユーザの接続以外には、禁止エリアに該当しているため圧縮データを配信しない旨(禁止エリア検出通知)を通知する。
そして、ライブ映像に接続しているクライアント対応のスレッドが、クライアントからの次映像フレーム送信要求(これはクライアントでの圧縮映像データの受け取り完了に対して、送り返されるのが一般的である)を受け取った場合には映像フレーム送信要求のフラグを設定する。また、クライアントから接続終了のコマンドを受けたならば、それを主プログラムへ通達し、さらにステップS810で自身のスレッドを終了する。
図9は、携帯電話端末において、接続すべき第1及び第2のカメラサーバ101、102の識別子、ならびに、その第1及び第2のカメラサーバ101、102に指示するカメラ制御用のPTZシーケンスを作成する時の動作の流れを示すフローチャートである。ここで得られた第1及び第2のカメラサーバ101、102の識別子、ならびに、カメラ制御用のPTZシーケンスは、ステップS602へ送られる。
最初のステップS901で、携帯電話内に保持されているカメラ制御情報付き映像クリップを複数取得する。これらの映像クリップは、ネットワーク50からのダウンロード、メールへの添付、あるいは、メモリカードからのコピー、などの経路から得られ携帯電話に保持されている。
続いて、ステップS902で、接続先となる第1及び第2のカメラサーバ101、102を指定するための映像クリップを選択する。典型的には、一つの映像クリップを選択する(図15−(a))。これを映像クリップAする。
続いて、ステップS903で、カメラ制御情報を抽出するための映像クリップを選択する(図15−(b))。典型的には、映像クリップA,Bのうちのいずれか一つの映像クリップを選択するが、複数の映像クリップを選択して、それらの映像クリップに組み込まれたカメラ制御情報を組み合わせて利用してもよい。
複数の映像クリップを選択した場合には、その選択の順に、映像クリップB1〜映像クリップBnとする。そして、ステップS904で、上記で選択された映像クリップAに組み込まれたカメラ接続情報を取り出す。
例えば、映像クリップAの映像時系列に沿って、以下のようなカメラ制御情報が組み込まれていた場合、ここから抽出されるカメラ接続情報は、IPアドレスとして「202.228.185.20」、ポート番号として、「65310+65311」である。
映像クリップB1:
t=0.0秒.
http://clipserver1.com/runviewer?a=202.228.185.20、p=65310+65311、K3P-200T30Z50
t=1.2秒.
http://clipserver1.com/runviewer?a=202.228.185.20、p=65310+65311、P-80T45Z50
t=1.7秒.
http://clipserver1.com/runviewer?a=202.228.185.20、p=65310+65311、P40T60Z50
t=2.3秒.
http://clipserver1.com/runviewer?a=202.228.185.20、p=65310+65311、P10T150Z7
t=2.5秒.
http://clipserver1.com/runviewer?a=202.228.185.20、p=65310+65311、P10T150Z36
t=2.8秒.
(映像クリップA終了).
続いて、ステップS905で、映像クリップB1〜映像クリップBnに組み込まれたカメラ制御情報から、カメラ制御用のPTZシーケンスを取り出す。例えば、映像クリップB1〜映像クリップB3の映像時系列(t=秒で示す)に沿って、それぞれ以下のようなカメラ制御情報が組み込まれていた場合(n=3の場合)、ここで抽出されるカメラ制御用のPTZシーケンスは、『HZ15_30S3_40S4_25P-10_20Z-15S3_15S4_40P-10_20H_3P10_1P5_1P5_1P5_1P5_1P5S4_10P-20_20H_5P-60_3P5_3P5_3P5』となる。なお、この中で、PTZシーケンスの構成要素は、図6のフローチャートを参照しながらしながら説明した通りである。
映像クリップB1:
t=0.0秒.
http://clipserver1.com/runviewer?a=162.61.5.22、p=6513+6514、HZ15
t=3.0秒.
http://clipserver1.com/runviewer?a=162.61.5.22、p=6513+6514、S3
t=7.0秒.
(映像クリップB1終了).
映像クリップB2:
t=0.0秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、S4
t=2.5秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P-10
t=4.5秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、Z-15S3
t=6.0秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、S4
t=10.0秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P-10
t=12.0秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、H
t=12.3秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P10
t=12.4秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P5
t=12.5秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P5
t=12.6秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P5
t=12.7秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P5
t=12.8秒.
http://clipserver1.com/runviewer?a=201.218.187.23、p=6513+6514、P5
(映像クリップB2終了).
映像クリップB3:
t=0.0秒.
http://clipserver1.com/runviewer?a=150.122.43.154、p=6513+6514、S4
t=1.0秒.
http://clipserver1.com/runviewer?a=150.122.43.154、p=6513+6514、P-20
t=3.0秒.
http://clipserver1.com/runviewer?a=150.122.43.154、p=6513+6514、H
t=3.5秒.
http://clipserver1.com/runviewer?a=150.122.43.154、p=6513+6514、P-60
t=3.8秒.
http://clipserver1.com/runviewer?a=150.122.43.154、p=6513+6514、P5
t=4.1秒.
http://clipserver1.com/runviewer?a=150.122.43.154、p=6513+6514、P5
t=4.4秒.
http://clipserver1.com/runviewer?a=150.122.43.154、p=6513+6514、P5
(映像クリップB3終了).
そして、ステップS906で、得られたカメラ接続情報とPTZシーケンスとを、ステップS602へと引渡し処理を終了する。上記の例では、ステップS604で、以下のような映像クリップ要求が生成される。
POST /getvideoclip/ HTTP/1.1
Host: 202.28.30.208:8080
User-Agent: MozilePhone/2.0 C2101V(c100)
Pragma: no-cache

videoencodeparam=QCIF:fps15.0:bps64000:intraframe5:me8
cameraservers=webview://202.228.185.20:65310+65311
PTZ=HZ15_30S3_40S4_25P-10_20Z-15S3_15S4_40P-
10_20H_3P10_1P5_1P5_1P5_1P5_1P5S4_10P-20_20H_5P-60_3P5_3P5_3P5
moviesizemax=240kbytes
notifyto=mailto:riyousha3@mailserver.usersite.co.jp
userid=331245
userpw=15215294
図10は、第1及び第2のカメラサーバ101、102の用いる設定値、すなわち、カメラ制御サーバや映像サーバが読み出す動作設定情報を特定のファイル(OSによってはレジストリなどのシステムデータベース)に設定する第1及び第2のカメラサーバ101、102の設定プログラムの表示画面の一例を示した図であり、カメラ制御サーバ101、102、映像変換サーバ400、動画品質、接続制限事項などに関する各種のパラメータ(後述)を設定できるようになっている。OKボタン1000を押すと、設定した値が特定のファイルあるいはレジストリに書き込まれ、キャンセルすると書き込まれずに終了する。
図11は、図10の第1及び第2のカメラサーバ101、102の設定プログラムの動作を示すフローチャートである。
設定プログラムは起動時には、先ず、ステップS1101でカメラ制御サーバ及び映像サーバに関する設定情報を格納した特定のファイル(OSによってはレジストリなどのシステムデータベース)から設定情報を読み出し、内部データに設定する。以降、ユーザの操作入力を受け取り、実施するループを繰り返す。
次に、ステップ1102でユーザの操作入力を待ち、入力があればそれを受け取り、続いてステップ1103で入力された値が適正範囲内であるかチェックし、そのチェック結果が適正であるか否かをステップS11031で判定する。
ステップS11031の判定の結果、適正でなければステップ1104でエラーメッセージを出力するとともに、値を戻してからユーザの入力待ちであるステップS1102へ戻る。
また、ステップS11031の判定の結果、適正範囲内であるならば、ステップS11032に進み、内部データを更新してから、ステップS1102に戻る(ここで設定できる値には次の項目がある。
すなわち、カメラ制御の通信用のTCPポート番号、カメラと接続するCOM(シリアル)ポート、シャッタースピード、カメラ制御関連のログ情報の有無とログファイル名、映像関連の通信用のTCPポート番号、ログ情報の有無とログファイル名、映像をキャプチャする時間間隔を規定するフレームレートと圧縮の品質を決めるQ-Factor、圧縮の元データの画面サイズ、1つのクライアントビューワ200の最大接続時間、カメラ制御に関する制御権の順番待ち人数、1つのビューワ200の制御権保持占有時間、映像とカメラ制御に関する接続可能な最大クライアント数など)。
ユーザからの入力がOKボタンの場合には、ステップS1102からステップS1105に進み、更新された内部データをカメラ制御サーバ及び映像サーバに関する設定情報を格納する特定のファイルなどへ書き出す。
次に、ステップS1106で変更を反映するために第1及び第2のカメラサーバ101、102を再起動するかを尋ねるパネルを出す。再起動する場合にはステップS1107でカメラ制御サーバや映像サーバなどを再起動して、ステップS1108で設定プログラムを終了する。再起動しない場合にはステップS1106から直接ステップS1108に進み、終了する。また、ステップS1102でのユーザの入力がキャンセルボタンである場合には、ステップS1102から直接ステップS1108に進み、処理を終了する。
図12は、映像変換サーバ400における映像データの大まかな流れを、模式化した図である。第1及び第2のカメラサーバ101、102から送信されたソース映像データ(Motion JPEG、QVGAサイズ320x240)は、映像変換サーバ400の第1及び第2のカメラサーバ101、102向け通信スタックを経由して受信され、JPEGデコーダに渡され、続いて、携帯電話向けに設定されたMPEG-4 エンコーダに渡され、携帯電話向け映像データ(MPEG-4 simpleprofile、 QCIFサイズ176x144、 64Kbps)に加工された上で、映像クリップとして、携帯電話網向けの通信スタックを経由して、携帯電話ビューワ200へと送信される。
図13は、映像変換サーバ400の動作を示したフローチャートである。
映像変換サーバ400は、先ず、起動時にステップS1301で特定のファイル(OSによってはレジストリなどのシステムデータベース)から映像変換サーバ400の動作設定情報を読み出して、それに基づき動作を開始する。ここで、クライアントである携帯電話ビューワプログラムからのリクエストを受け付ける通信ポートを開き、続いて、ステップS1302のリクエスト受付状態に入る。
リクエスト(HTTPリクエストのメッセージなど)が受け付けられたら、S1302を抜け、ステップS1303で接続の可否の判定を行う。この判定の結果、接続が否ならばステップS13031に進み、接続拒否のエラーコードを返し、その後ステップS1302に戻る。
また、ステップS1303の判定の結果、接続が可ならば、ステップS1304に進んで接続処理を行う。本実施の形態においては接続処理として、クライアントとの情報の受渡しを行うクライアント対応スレッドを生成し、クライアントの登録を行い、その後ステップS1302に戻る。
上記ステップS1304で生成されたクライアント対応スレッドでは、ステップS1311で対応するクライアントからのリクエストを読み込み、内容を解析する。リクエストは、典型的には、HTTPリクエストとして、映像変換サーバ400に渡される。なお、HTTPリクエストには、POSTメソッドが使われる場合もあり、GETメソッドが利用される場合もある。
次に、ステップS1312で、リクエスト内容から、エンコードパラメータ情報(映像変換パラメータ)、第1及び第2のカメラサーバ101、102への接続情報(ソース映像情)、PTZシーケンス、映像クリップの最大サイズ(映像クリップ上限値)、通知先情報(通知先アドレス)、及び、ユーザ識別子やパスワードなどユーザ識別情報を取り出す。これらは、それぞれ『videoencodeparam=』『cameraservers=』『PTZ=』『moviesizemax=』『notifyto=』『userid=』『userpw=』の値として指示されている。
映像変換パラメータは、変換用コーデックの選択やそのコーデックへのパラメータ、及び、コーデック入力用/出力用のデータ形式などを記述している。ソース映像情報とは、例えば、ライブ映像を提供する第1及び第2のカメラサーバ101、102のネットワークアドレスとポート番号などの通信属性情報である。通知先アドレスとは、典型的には、ユーザの携帯電話端末を指定したメイルアドレスである。
次に、ステップS1313で、HTTPリクエストに対するHTTPレスポンスとして、『すぐに映像を生成できないので、しばらくしてメール連絡します』との旨を示す情報を返す。
次に、ステップS1314で、ソース映像情報及びユーザ識別情報に従って、映像取得部4002を初期化する。具体的には、ソース映像を提供する第1及び第2のカメラサーバ101、102に接続し、ソース映像取得を開始する。
そして、次にステップS1315に進み、映像変換パラメータに従って映像変換部4003を初期化する。この映像変換部4003は、MPEG-4エンコーダなどから構成される。そして、その後ステップS1316に進み、映像送信部4004を初期化する。この際、映像送信部4004に映像クリップ上限値、及び通知先アドレスを指示する。
さらに、ステップS1317に進み、映像取得部4002から映像変換部4003へ、映像変換部4003から映像送信部4004へとそれぞれの処理データが受渡しされるように相互の関連付けを行った上で、カメラ制御部が、PTZシーケンスにしたがって第1及び第2のカメラサーバ101、102のカメラ制御を行う。
次に、ステップS1318に進み、映像取得部4002、映像変換部4003、映像送信部4004の後処理を行う。次に、ステップS1319に進み、クライアント対応スレッドを終了する。
次に、映像変換サーバ400の中で機能している映像取得部4002、映像変換部4003、映像送信部4004、カメラ制御部について順次説明する。
映像取得部4002は、先ず、初期化時に受け取ったソース映像情報及びユーザ識別情報に従って、ライブ映像を提供する第1及び第2のカメラサーバ101、102に接続する。そして、カメラサーバから映像データを取得し、取得時のタイムスタンプを付与して映像データを映像変換部4003へ渡す。本実施の形態における第1及び第2のカメラサーバ101、102は、映像データをMotion JPEG形式で提供するので、タイムスタンプが付与されるのは、個々のJPEGデータである。また、第1及び第2のカメラサーバ101、102から禁止エリア検出を通知された場合には、映像データに代えて禁止エリア検出通知を映像変換部4003へ渡す。
次に、映像変換部4003では、先ず、初期化時に受け取ったコーデックへのパラメータ、及び、コーデック入力用/出力用のデータ形式などをMPEG-4エンコーダに設定する。そして、映像取得部4002から受け取ったソース映像データを、コーデック入力用のデータ形式及び画像サイズに整えてからMPEG-4エンコーダに入力し、その処理結果を、映像送信部4004へ渡す。本実施の形態における映像変換部4003では、JPEG形式のソース映像データを、予め、QCIFサイズかつYUV411形式に整えてからMPEG-4コーデックへ入力し、生成されたMPEG-4データ(I-frameまたはP-frame)を映像送信部4004へ受け渡す。この際、映像取得部4002で付与されたタイムスタンプも併せてMPEG-4コーデックへ入力される。
なお、映像取得部4002から禁止エリア検出が通知されている場合には、カメラ制御を制限された領域であって映像を表示できない旨を示す合成画面を、ソース映像データに代えて、MPEG-4コーデックへ入力する。
次に、映像送信部4004では、先ず、初期化時に受け取った映像クリップ上限値にしたがってメモリ領域を確保する。そして、映像変換部4003が生成した携帯電話向け映像データを受取り、確保したメモリ領域に保持する。
さらに、映像送信部4004では、禁止エリア検出通知を受け取った時点で、メモリ領域の利用率をも加味した上で、映像クリップの分割点を決定する。そして、分割点と判断した場合には、携帯電話向け映像クリップのデータフォーマットに準拠したヘッダー情報を前置して、メモリ領域に保持している映像データをファイルとして保存し、メモリ領域を再利用する。これによって、映像クリップが複数のファイルに分割保存される。
また、映像送信部4004では、映像取得部4002で得られるカメラ制御状態情報を受け取り、時間軸に沿って保持する。そして、予め設定されている時間周期でカメラ制御状態情報から、カメラ制御状態情報に相当するカメラ制御シーケンス(PTZシーケンス)を生成して、そのPTZシーケンスをパラメータとする専用ビューワ200の起動支持をリンク情報として映像クリップに組み込む。
典型的には、隣接するカメラ制御状態情報の差分からPTZシーケンスを構成するが、PTZシーケンス初期値を指定する場合やプリセット位置やホームポジションなどと一致する場合には、絶対値指定を指示する。この際、図14に示すように、ある映像データの区間(映像セグメント)に対応するリンク情報には、時間軸を逆方向に過剰な長さのカメラ制御シーケンスを割り当てる。すなわち、映像クリップ中で隣接するリンク情報には、重複したカメラ制御シーケンスが冗長に割り当てられることになる。
そして、カメラ制御部からPTZシーケンスの終了を通知された時点で、メモリ領域に保持している映像データの残りを同様にファイルとして保存した上で、それまでに保存している複数の映像クリップへのリンク情報を埋め込んだ携帯電話端末への通知情報を作成し、初期化時に受け取った通知先アドレスへ通知する。これによって、通知情報を受け取った携帯電話端末から各映像クリップへのダウンロード要求を可能とする。なお、映像送信部4004は、HTTPサーバ機能を備えており、携帯電話端末からのHTTP利用の映像クリップのダウンロード要求に対応する。
次に、カメラ制御部では、PTZシーケンスを解釈して、第1及び第2のカメラサーバ101、102に送るべきカメラ制御コマンドを作成し、PTZシーケンスに指示されたタイミングで作成したカメラ制御コマンドを第1及び第2のカメラサーバ101、102に送信することで、第1及び第2のカメラサーバ101、102のカメラ制御を行う。そして、PTZシーケンスを解釈し終えた時点で、PTZシーケンスの終了を映像送信部4004に通知する。
以上の構成で、携帯電話端末601、602上に実装された映像クリップビューワ200を使うユーザは、映像変換サーバ400に映像クリップを要求することができる。そして、映像変換サーバの機能により、映像クリップが作成された時点のカメラ制御状態情報を、映像クリップ再生ユーザが利用可能となる。
特に、本実施の形態の映像クリップビューワ200では、複数の映像クリップを管理して、ある映像クリップAに別の映像クリップBを適用することで、映像クリップAの映像ソースである第1及び第2のカメラサーバ101、102に接続した上で、映像クリップBに含まれるカメラ制御情報を用いてカメラ制御し、適用時点での第1及び第2のカメラサーバ101、102のライブ映像を取得する点に特徴がある。
本実施の形態では、映像変換サーバ400を介して第1及び第2のカメラサーバ101、102へ間接的にアクセスする例について説明しているが、ビューワ200は、ステップ602で得られた情報(カメラ接続情報ならびにカメラ制御情報)に基づいて、直接第1及び第2のカメラサーバ101、102へアクセスしてもよい。
本実施の形態では、携帯電話網とネットワーク50とを結ぶゲートウェイとは独立に、ネットワーク50上に映像変換サーバ400が実装される例について説明しているが、映像変換サーバが、ゲートウェイの一部として実装されてもよい。また、映像変換サーバとゲートウェイとが、VPN(Virtual Private Network)なども含めて専用線で接続されるような接続形態も容易に想像できる。
また、本実施の形態では、HTTP通信を用いて、携帯電話ビューワ200と映像変換サーバとが通信する例について説明しているが、この通信は、SMTP (Simple Mail Transfer Protocol) を用いた通信であってもよい。また、携帯電話ビューワ200と映像変換サーバ400とのHTTP通信やSMTP通信は、SSL(Secure Socket Layer)などの併用により、安全な通信経路を利用してもよい。
[第2の実施の形態]
本実施の形態は、携帯電話ではなくPC環境でドラッグアンドドロップで適用する場合について説明する。
第2の実施の形態では、第1の実施の形態同様、インターネット上に配置されたカメラサーバから取得したライブ映像を映像クリップに変換して送信する例について説明する。特に、本実施の形態では、接続先カメラサーバ101、102、ならびに、そのカメラサーバに要求するカメラ制御コマンドの抽出元となる映像クリップを、携帯電話端末に代えて、PCなど制約の少ないコンピュータを用いて選択する点に特徴がある。
本実施の形態では、ネットワーク50の接続形態やハードウェア構成、及び、各ソフトウェアの動作の多くは、第1の実施の形態で説明した通りである。ただし、図9で示した映像クリップビューワ200の動作が、第1の実施の形態と異なる。
本実施の形態では、映像クリップビューワ200がPCなどの制約の少ない環境上で動作しており、GUIを用いた操作によって、映像クリップの選択ならびに再生制御が行われる点で、第1の実施の形態と異なる。
図16は、第2の実施の形態の映像クリップビューワ200の映像クリップ選択処理の動作の流れを示すフローチャートである。
図16に示したように、最初のステップS1601で、パーソナルコンピュータ内に保持されているカメラ制御情報付き映像クリップを複数取得する。これらの映像クリップは、ネットワーク50からのダウンロード、メールへの添付、あるいは、メモリカードからのコピー、などの経路からPC内のビューワ200へ取得される。
続いて、ステップS1602で、カメラ制御情報を抽出するための映像クリップを選択する。典型的には、一つの映像クリップを選択するが、複数の映像クリップを選択して、それらの映像クリップに組み込まれたカメラ制御情報を連続して利用してもよい。これらを映像クリップB1〜映像クリップBnとする。
続いて、ステップS1603では、接続先となる第1及び第2のカメラサーバ101、102を指定するための映像クリップ(映像クリップA)を選択する。典型的には、ステップS1602で選択した映像クリップB1〜映像クリップBnを、映像クリップAへドラッグアンドドロップする(図17)。
そして、ステップS1604で、上記で選択された映像クリップAに組み込まれたカメラ接続情報を取り出す。続いて、ステップS1605で、映像クリップB1〜映像クリップBnに組み込まれたカメラ制御情報から、カメラ制御用のPTZシーケンスを取り出す。そして、ステップS1606で、得られたカメラ接続情報とPTZシーケンスとを、映像クリップビューワ200の本体処理へと引渡し処理を終了する。
以上の構成で、パーソナルコンピュータなどコンピュータ上に実装された映像クリップビューワ200を使うユーザは、映像変換サーバ400に映像クリップを要求することができる。そして、映像変換サーバ400の機能により、映像クリップが作成された時点のカメラ制御状態情報を、映像クリップ再生ユーザが利用可能となる。
本実施の形態では、映像クリップから抽出したカメラ制御情報を、再び映像クリップを作成するために利用しているが、これは、映像クリップの作成に限定されない。例えば、抽出したカメラ制御情報のPTZシーケンスを利用して、ライブ映像配信中の第1及び第2のカメラサーバ101、102を制御することも容易に想像できる。例えば、ライブ映像配信中のビューワ200に、映像クリップをドラッグアンドドロップする操作によって実現してもよい。
さらに、ライブ映像配信中の第1及び第2のカメラサーバ101、102の制御に用いる場合には、抽出したカメラ制御情報のPTZシーケンスによる自動制御に加えて、ユーザが自動制御に割り込んで、カメラ制御用のPTZシーケンスを、早送り、逆送り、停止、再生など操作することが考えられる。あるいは、自動制御を一時停止して、ユーザの好みに応じて、PTZシーケンスを手動制御してもよい(図18)。この場合、ユーザ操作によるライブ制御と、PTZシーケンスによる自動制御とを、相互に排他制御するような実施も容易に想像できる。
(本発明の他の実施の形態)
上述した実施の形態の機能を実現するべく各種のデバイスを動作させるように、上記各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、上記実施の形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記録する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施の形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施の形態の機能が実現される場合にもかかるプログラムコードは本発明の実施の形態に含まれる。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合にも本発明に含まれる。
本発明を適用した実施の形態の典型的な利用形態を示した図である。 映像変換サーバのハードウェア構成の一例を示した構成図である。 カメラサーバのハードウェア構成の一例を示した構成図である。 ビューワを動作させるハードウェア構成の一例を示した構成図である。 プログラムの構成する部分を模式化した図である。 携帯電話における映像クリップビューワの動作の流れを示すフローチャートである。 カメラサーバ内のカメラ制御サーバの動作を示したフローチャートである。 カメラサーバ内の映像サーバの動作を示したフローチャートである。 携帯電話端末上でカメラサーバ識別子ならびにカメラ制御情報を作成する動作を示したフローチャートである。 カメラサーバの設定画面例を示した図である。 カメラサーバの設定プログラムの動作を示すフローチャートである。 映像変換サーバ400における映像データの流れを模式化した図である。 映像変換サーバの動作を示したフローチャートである。 ライブ映像ビューワの流れを示すフローチャートである。 携帯電話端末上で映像クリップ選択画面例を示した図である。 第2の実施の形態の映像クリップ選択処理の動作の流れを示すフローチャートである。 第2の実施の形態を示し、ドラッグアンドドロップ画面の一例を示した図である。 第2の実施の形態を示し、自動制御割り込み時の画面の一例を示した図である。
符号の説明
50 ネットワーク
101 第1のカメラサーバ
102 第2のカメラサーバ
200 ビューワ
300 中継サーバ
400 映像変換サーバ
500 ゲートウェイ
550 携帯電話回線網
601 第1の携帯電話端末
602 第2の携帯電話端末

Claims (18)

  1. 複数の映像クリップを保持する映像通信装置であって、
    上記複数の映像クリップのうちの第1の映像クリップから接続先カメラ情報を抽出する接続先抽出手段と、
    上記第1の映像クリップとは異なる第2の映像クリップからカメラ制御情報を抽出する制御情報抽出手段と、
    上記制御情報抽出手段によって抽出されたカメラ制御情報を、上記接続先抽出手段によって抽出された接続先のカメラ装置に適用するカメラ制御適用手段とを備えることを特徴とする映像通信装置。
  2. 上記制御情報抽出手段は、上記カメラ制御情報を複数の映像クリップから抽出し、得られた各映像クリップのカメラ制御情報を組み合わせて利用することを特徴とする請求項1に記載の映像通信装置。
  3. 上記接続先抽出手段と上記制御情報抽出手段は、上記制御情報抽出手段の入力となる映像クリップを、上記接続先抽出手段の入力となる映像クリップへとドラッグアンドドロップすることで入力映像クリップを決定することを特徴とする請求項1に記載の映像通信装置。
  4. 上記カメラ制御適用手段は、上記接続先抽出手段によって得られた接続先カメラ情報と、上記制御情報抽出手段によって得られたカメラ制御情報とを、上記映像クリップを生成する際に適用することを特徴とする請求項1〜3の何れか1項に記載の映像通信装置。
  5. 上記カメラ制御適用手段は、上記接続先抽出手段によって得られた接続先カメラ情報と、上記制御情報抽出手段によって得られたカメラ制御情報とを、ライブ映像配信開始に際して適用することを特徴とする請求項1〜3の何れか1項に記載の映像通信装置。
  6. 上記カメラ制御適用手段は、上記制御情報抽出手段によって得られたカメラ制御情報を、既存ライブ映像配信に適用することを特徴とする請求項1〜3の何れか1項に記載の映像通信装置。
  7. 上記制御情報抽出手段によって得られたカメラ制御情報を使って行う自動制御を一時停止することで、ユーザ自身によるカメラ制御が自動制御に割り込むようにしたを特徴とする請求項1〜6の何れか1項に記載の映像通信装置。
  8. 上記制御情報抽出手段によって得られたカメラ制御情報を使って行う自動制御と、ユーザ自身によるカメラ制御とを排他的に実行することを特徴とする請求項1〜6の何れか1項に記載の映像通信装置。
  9. 複数の映像クリップを保持する映像通信装置における映像通信方法であって、
    上記複数の映像クリップのうちの第1の映像クリップから接続先カメラ情報を抽出する接続先抽出工程と、
    上記第1の映像クリップとは異なる映像クリップからカメラ制御情報を抽出する制御情報抽出工程と、
    上記制御情報抽出工程によって抽出されたカメラ制御情報を、上記接続先抽出工程によって抽出された接続先のカメラ装置に適用するカメラ制御適用工程とを有することを特徴とする映像通信方法。
  10. 上記制御情報抽出工程においては、上記カメラ制御情報を複数の映像クリップから抽出し、得られた各映像クリップのカメラ制御情報を組み合わせて利用することを特徴とする請求項9に記載の映像通信方法。
  11. 上記接続先抽出工程と上記制御情報抽出工程は、上記制御情報抽出工程の入力となる映像クリップを、上記接続先抽出工程の入力となる映像クリップへとドラッグアンドドロップすることで入力映像クリップを決定することを特徴とする請求項9に記載の映像通信方法。
  12. 上記カメラ制御適用工程においては、上記接続先抽出工程によって得られた接続先カメラ情報と、上記制御情報抽出工程によって得られたカメラ制御情報とを、上記映像クリップを生成する際に適用することを特徴とする請求項9〜11の何れか1項に記載の映像通信方法。
  13. 上記カメラ制御適用工程においては、上記接続先抽出工程によって得られた接続先カメラ情報と、上記制御情報抽出工程によって得られたカメラ制御情報とを、ライブ映像配信開始に際して適用することを特徴とする請求項9〜11の何れか1項に記載の映像通信方法。
  14. 上記カメラ制御適用工程においては、上記制御情報抽出工程によって得られたカメラ制御情報を、既存ライブ映像配信に適用することを特徴とする請求項9〜11の何れか1項に記載の映像通信方法。
  15. 上記制御情報抽出工程によって得られたカメラ制御情報を使って行う自動制御を一時停止することで、ユーザ自身によるカメラ制御が自動制御に割り込むようにしたを特徴とする請求項9〜14の何れか1項に記載の映像通信方法。
  16. 上記制御情報抽出工程によって得られたカメラ制御情報を使って行う自動制御と、ユーザ自身によるカメラ制御とを排他的に実行することを特徴とする請求項9〜14の何れか1項に記載の映像通信方法。
  17. 複数の映像クリップを保持する映像通信装置における映像通信方法をコンピュータに実行させるプログラムであって、
    上記複数の映像クリップのうちの第1の映像クリップから接続先カメラ情報を抽出する接続先抽出工程と、
    上記第1の映像クリップとは異なる第2の映像クリップからカメラ制御情報を抽出する制御情報抽出工程と、
    上記制御情報抽出工程によって抽出されたカメラ制御情報を、上記接続先抽出工程によって抽出された接続先のカメラ装置に適用するカメラ制御適用工程とをコンピュータに実行させることを特徴とするコンピュータプログラム。
  18. 上記請求項17に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
JP2004159702A 2004-05-28 2004-05-28 映像通信装置、映像通信方法及びコンピュータプログラム Expired - Lifetime JP4510519B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004159702A JP4510519B2 (ja) 2004-05-28 2004-05-28 映像通信装置、映像通信方法及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004159702A JP4510519B2 (ja) 2004-05-28 2004-05-28 映像通信装置、映像通信方法及びコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2005341396A true JP2005341396A (ja) 2005-12-08
JP2005341396A5 JP2005341396A5 (ja) 2007-07-05
JP4510519B2 JP4510519B2 (ja) 2010-07-28

Family

ID=35494419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004159702A Expired - Lifetime JP4510519B2 (ja) 2004-05-28 2004-05-28 映像通信装置、映像通信方法及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP4510519B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012054727A (ja) * 2010-08-31 2012-03-15 Kochi Univ Of Technology カメラ映像配信システム
WO2013132828A1 (ja) * 2012-03-05 2013-09-12 パナソニック株式会社 通信システムおよび中継装置
JP2014155139A (ja) * 2013-02-13 2014-08-25 Mega Chips Corp カメラ装置および画像記録システム

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10136345A (ja) * 1996-11-01 1998-05-22 Matsushita Electric Ind Co Ltd 情報提供システム
JP2002084445A (ja) * 2000-09-08 2002-03-22 Canon Inc 携帯電話を用いてカメラを制御する方法
JP2003150153A (ja) * 2001-11-13 2003-05-23 Roland Corp 映像再生装置
JP2003299056A (ja) * 2002-03-29 2003-10-17 Canon Inc 映像処理装置、映像配信システム、映像処理方法、プログラム及び記録媒体
JP2004128570A (ja) * 2002-09-30 2004-04-22 Mega Chips Corp コンテンツ作成実演システム及びコンテンツ作成実演方法
JP2004248069A (ja) * 2003-02-14 2004-09-02 Canon Inc 映像通信システム
JP2004304651A (ja) * 2003-03-31 2004-10-28 Canon Inc 情報処理装置、携帯情報端末、情報処理方法、プログラム及び記録媒体
JP2004336126A (ja) * 2003-04-30 2004-11-25 Canon Inc 映像通信装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10136345A (ja) * 1996-11-01 1998-05-22 Matsushita Electric Ind Co Ltd 情報提供システム
JP2002084445A (ja) * 2000-09-08 2002-03-22 Canon Inc 携帯電話を用いてカメラを制御する方法
JP2003150153A (ja) * 2001-11-13 2003-05-23 Roland Corp 映像再生装置
JP2003299056A (ja) * 2002-03-29 2003-10-17 Canon Inc 映像処理装置、映像配信システム、映像処理方法、プログラム及び記録媒体
JP2004128570A (ja) * 2002-09-30 2004-04-22 Mega Chips Corp コンテンツ作成実演システム及びコンテンツ作成実演方法
JP2004248069A (ja) * 2003-02-14 2004-09-02 Canon Inc 映像通信システム
JP2004304651A (ja) * 2003-03-31 2004-10-28 Canon Inc 情報処理装置、携帯情報端末、情報処理方法、プログラム及び記録媒体
JP2004336126A (ja) * 2003-04-30 2004-11-25 Canon Inc 映像通信装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012054727A (ja) * 2010-08-31 2012-03-15 Kochi Univ Of Technology カメラ映像配信システム
WO2013132828A1 (ja) * 2012-03-05 2013-09-12 パナソニック株式会社 通信システムおよび中継装置
JPWO2013132828A1 (ja) * 2012-03-05 2015-07-30 パナソニックIpマネジメント株式会社 通信システムおよび中継装置
JP2014155139A (ja) * 2013-02-13 2014-08-25 Mega Chips Corp カメラ装置および画像記録システム

Also Published As

Publication number Publication date
JP4510519B2 (ja) 2010-07-28

Similar Documents

Publication Publication Date Title
US8692897B2 (en) Method of generating moving picture information
JP4026944B2 (ja) 映像発信装置及びその制御方法
KR100654783B1 (ko) 화상배신방법
US9497373B2 (en) Remote controlled studio camera system
US20030171938A1 (en) Network conferencing system, attendance authentication method and presentation method
US20030208536A9 (en) Network conferencing system, equipment management method and data presentation method
US20040117445A9 (en) Network conferencing system and proceedings preparation method, and conference management server and proceedings preparation method
WO2005001654A2 (en) Interface for media publishing
WO2006097937A2 (en) A method for a clustered centralized streaming system
JPWO2007055206A1 (ja) 通信装置、通信方法、通信システム、プログラム、および、コンピュータ読み取り可能な記録媒体
WO2006042159A2 (en) Interactive video collaboration framework
JP4717408B2 (ja) 映像配信システム及び方法
JP2006101009A (ja) 撮像装置、映像表示装置と映像配信システム及びその制御方法
JP2004193979A (ja) 映像配信システム
JP4401672B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP4510519B2 (ja) 映像通信装置、映像通信方法及びコンピュータプログラム
KR20000054715A (ko) 인터넷상의 동영상컨텐츠 서비스시스템과 그 방법, 및동영상파일의 생성 및 전송방법과 그 기록매체
JP4261934B2 (ja) 映像クリップ生成装置、映像クリップ生成方法、プログラム及び記憶媒体
JP2004343175A (ja) 映像中継装置
JP4250449B2 (ja) 映像通信システム、映像通信装置、端末及び端末のカメラ制御方法
JP4791213B2 (ja) 通信装置、通信方法及びプログラム
JP2006211524A (ja) 映像表示装置、映像処理装置の制御方法、プログラム、及び記憶媒体
JP2006222720A (ja) 映像通信システム、情報処理装置、映像通信方法及びそのプログラム
JP2003299062A (ja) 映像変換装置およびその方法
JP2017212644A (ja) 通信装置、システム、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070522

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100329

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

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

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

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4510519

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

Year of fee payment: 4