JP6230453B2 - 撮像装置及びその制御方法 - Google Patents

撮像装置及びその制御方法 Download PDF

Info

Publication number
JP6230453B2
JP6230453B2 JP2014054184A JP2014054184A JP6230453B2 JP 6230453 B2 JP6230453 B2 JP 6230453B2 JP 2014054184 A JP2014054184 A JP 2014054184A JP 2014054184 A JP2014054184 A JP 2014054184A JP 6230453 B2 JP6230453 B2 JP 6230453B2
Authority
JP
Japan
Prior art keywords
storage
command
monitoring camera
control unit
mount
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.)
Active
Application number
JP2014054184A
Other languages
English (en)
Other versions
JP2015176499A (ja
Inventor
崇博 岩崎
崇博 岩崎
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 JP2014054184A priority Critical patent/JP6230453B2/ja
Priority to CN201580013868.8A priority patent/CN106233262B/zh
Priority to US15/126,547 priority patent/US10162546B2/en
Priority to PCT/JP2015/000920 priority patent/WO2015141141A1/en
Publication of JP2015176499A publication Critical patent/JP2015176499A/ja
Application granted granted Critical
Publication of JP6230453B2 publication Critical patent/JP6230453B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/661Transmitting camera control signals through networks, e.g. control via the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • H04N5/772Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera the recording apparatus and the television camera being placed in the same enclosure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/907Television signal recording using static stores, e.g. storage tubes or semiconductor memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/79Processing of colour television signals in connection with recording
    • H04N9/80Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • H04N9/804Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
    • H04N9/8042Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/695Control of camera direction for changing a field of view, e.g. pan, tilt or based on tracking of objects

Description

本発明は、外部のストレージにデータを退避可能な撮像装置及びその制御方法に関する。
近年、大容量化、高機能化したストレージをIPネットワーク上に構築し、ホスト機器をマウントすることで利用可能なネットワークストレージシステムが利用されている。これに合わせて、ネットワークストレージにアクセスするプロトコルには様々なものが存在する。例えばNFS(Network File System)、SMB、CIFS(Common Internet File System)、或いはCDMI(Cloud Data Management Interface)が知られている。これら様々なストレージへのアクセスを同一のプロトコルで扱うためのアイデアが開示されている(特許文献1)。
また、従来、クライアント機器へ撮像画像を送信する撮像装置において、クライアント機器から撮像装置の設定変更や、画像の配信の開始を指示するコマンド群が実装されてきた。昨今、そのようなコマンド群の例として、ONVIF(Open Network Video Interface Forum)により策定された規格によって定義されるものが知られている(非特許文献1)。
前述のコマンド群には、クライント機器から、撮像装置にストレージをマウントさせるコマンドが含まれている。また撮像装置のデータをマウントしたストレージに出力させるコマンドが含まれている。前者のコマンドとしてSetStorageConfigurationコマンド、後者のコマンドとしてExportVideosが定義されている。
特開2003−241903号公報
ONVIF Specification(http://www.ovnif.org/specs/DocMap.html)
従来、前述のようなコマンド群を利用してクライアント機器から、ホスト機器に外部のネットワークストレージをマウントさせようとする場合、クライアント機器の使用者は、多くの情報を予め入手し、マウント時に入力する必要があった。例えば、ホスト機器がマウント可能なプロトコル、ホスト機器がマウントしようとするローカルパス、或いはホスト機器がアクセス可能なネットワークストレージ等の情報を入力する必要があり、煩雑であるという課題があった。またこれらの情報はホスト機器の管理者以外は知りえない場合があり、前述のコマンド群によってホスト機器から外部ストレージにデータを退避させたい一般ユーザからは設定が困難な場合があるという課題があった。
上記課題を解決するために、本発明に係る撮像装置は、ネットワーク上にマウントされた複数のストレージとデータの送受信が可能な撮像装置であって、前記複数のストレージについて、データの送受信の処理の種別毎に優先順位を保持する保持手段と、特定のストレージをマウントする指示を受けつける第一のインターフェースと、任意のストレージをマウントする指示を受け付ける第二のインターフェースと、データの送信または受信に関する処理の開始の指示を受け付ける第三のインターフェースと、前記第一のインターフェースによって受け付けた指示に基づいて前記複数のストレージから前記特定のストレージをマウントする、または、前記第二のインターフェースによって受け付けた指示および前記第三のインターフェースによって受け付けた指示に基づいて、前記第三のインターフェースによって受け付けた指示が示す処理の種別に対応する優先順位を参照して前記複数のストレージから選択したストレージをマウントするマウント手段とを備えることを特徴とする。
以上、説明したように、本発明によれば、撮像装置に外部のネットワークストレージをマウントさせようとする場合に、ユーザはマウントに関連する様々な情報の入力を必ずしも行う必要がなく、管理者以外のユーザでも簡便に外部のネットワークストレージを利用することが可能となる。
本発明の第1、第2の実施例における撮像システムの構成を説明するためのシステム構成図である。 本発明の第1、第2の実施例における撮像システムを構成する撮像装置、クライアント装置の内部構成を示すブロック図である。 本発明の第1、第2の実施例における監視カメラが保持するパラメータ概要図である。 本発明の第1、第2の実施例におけるパラメータ詳細図である。 本発明の第1、第2の実施例におけるコマンド詳細図である。 本発明の第1、第2の実施例におけるコマンド詳細図である。 本発明の第1、第2の実施例におけるコマンド詳細図である。 本発明の第1、第2の実施例における監視カメラとクライアント装置における典型的なコマンドシーケンス図である。 本発明の第1、第2の実施例における監視カメラとクライアント装置における典型的なコマンドシーケンス図である。 本発明の第1、第2の実施例における監視カメラとクライアント装置における典型的なコマンドシーケンス図である。 本発明の第1、第2の実施例における監視カメラとクライアント装置に関するシーケンス図である。 本発明の第1、第2の実施例における監視カメラとクライアント装置に関するシーケンス図である。 本発明の第1、第2の実施例における監視カメラとクライアント装置に関するシーケンス図である。 本発明の第1、第2の実施例における監視カメラが保持するアクセス手段種別優先度テーブルである。 本発明の第1、第2の実施例におけるクライアント装置のStorageOperation画面である。 本発明の第1、第2の実施例におけるクライアント装置の図15に示すStorageOperation画面の表示処理の振舞いを示すフローチャートである。 本発明の第1、第2の実施例におけるクライアント装置の図15に示すStorageOperation画面の表示処理の振舞いを示すフローチャートである。 本発明の第1、第2の実施例におけるクライアント装置の図15に示すStorageOperation画面の表示処理の振舞いを示すフローチャートである。 本発明の第1、第2の実施例におけるクライアント装置の図15に示すStorageOperation画面の表示処理の振舞いを示すフローチャートである。
以下に、添付の図面を参照して本発明の実施の形態を説明する。
図1は、本発明の第1の実施例における、撮像装置であるところの監視カメラ1000とクライアント装置2000とで構成される撮像システムを説明するためのシステム構成図である。2000は、本発明における外部機器を示すクライアント装置である。監視カメラ1000とクライアント装置2000は、IPネットワーク網1500を介して相互に通信可能な状態に接続されている。
1100はIPネットワーク網1500上に接続されているネットワークアタッチトストレージ(Network Attached Storage)である。ネットワークアタッチトストレージ1100を以降NASと省略する。NAS1100は、例えばCIFS(Common Internet File System)やNFS(Network File System)、SMB等のインターフェースを備え、監視カメラ1000がマウントしてアクセス可能な状態で接続されている。
1200はインターネット1600、いわゆるクラウドを介して利用可能なクラウドストレージである。クラウドストレージ1200は、例えばCDMI(Cloud Data Management Interface)を備え、監視カメラ1000がマウントしてアクセス可能な状態で接続されている。
クライアント装置2000は、監視カメラ1000に対して、後述する撮像パラメータ変更や、映像ストリーミング開始等の各種コマンドを送信する。監視カメラ1000は、それらのコマンドに対するレスポンスや映像ストリーミングをクライアント装置2000に送信する。
図2(a)は、監視カメラ1000の内部構成を示す図である。
図2(a)において、1001は制御部であり、監視カメラ1000の全体の制御を行う。制御部1001は例えばCPUで構成される。
1002は記憶部である。記憶部1002は、主に制御部1001が実行するプログラム格納領域、プログラム実行中のワーク領域、後述する撮像部1003が生成する画像データの格納領域等、様々なデータの格納領域として使用される。
1003は撮像部である。撮像部1003は、監視カメラ1000の撮像光学系により結像された被写体の像を撮像して取得したアナログ信号をデジタルデータに変換し、撮像画像として記憶部1002に出力する。撮像画像が記憶部1002に出力されたとき、制御部1001は撮像部1003から画像取得イベントを受信する。
1004は圧縮符号化部である。圧縮符号化部1004は、撮像部1003が出力した撮像画像に対してJPEG或いはH.264等の形式に基づき圧縮符号化処理を行うことで画像データを生成し、記憶部1002に出力する。
1005は通信部である。通信部1005は、各制御コマンドを外部機器から受信する場合、また各制御コマンドに対するレスポンスを外部機器へ送信する場合に使用される。外部機器からコマンドを受信した場合、制御部1001は通信部1005からコマンド受信イベントを受信する。
1006は撮像制御部である。撮像制御部1006は、制御部1001が入力するパン、チルト、或いはズームの値に従って、撮像部1003の撮像範囲をチルト駆動、パン駆動、或いはズーム駆動に変更させるために使用される。
1007は内部記憶媒体である。内部記憶媒体1007は、制御部1001がデータの退避等に使用可能なストレージであり、例えばSDメモリカード、USBドライブ、ハードディスクドライブ上に構築されているファイルシステムによって構成される。
図2(b)は、クライアント装置2000の内部構成を示す図である。
図2(b)において、2001は制御部である。制御部2001は例えばCPUで構成され、クライアント装置2000の全体の制御を行う。
2002は記憶部である。記憶部2002は、主に制御部2001が実行するプログラム格納領域、プログラム実行中のワーク領域等、様々なデータの格納領域として使用される。
2003は表示部である。表示部2003は、例えばLCD、有機ELディスプレイ等で構成され、クライアント装置2000の使用者に対して、後述の配信画像設定画面を含む様々な設定画面や、監視カメラ1000から受信する映像のビューワ、各種メッセージ等を表示する。
2004は入力部である。入力部2004は、例えばボタン、十字キー、タッチパネル、マウス等で構成され、使用者による画面操作の内容を制御部2001に通知する。
2005は復号部である。復号部2005は、通信部2006を介して受信された圧縮符号化されている画像データをJPEG,或いはH.264等の形式に基づいて復号化し、記憶部2002に展開する。
2006は通信部である。通信部2006は、各制御コマンドを監視カメラ2000に対して送信する場合、また各制御コマンドに対するレスポンスや、映像ストリームを監視カメラ1000から受信する場合に使用される。
以上、図2を参照し監視カメラ1000とクライアント装置2000の内部構成について説明したが、図2に示す処理ブロックは、本発明における監視カメラ、クライアント装置の好適な実施形態の一例を説明したものでありこの限りではない。音声入力部、音声出力部、画像解析処理部を備えるなど、本発明の要旨の範囲内で、種々の変形及び変更が可能である。
本実施例にて使用するコマンド、パラメータ等の名称と内容を以下に説明する。
尚、以降の説明においてVideoSourceConfigurationをVSC、VideoEncoderConfigurationをVECと省略することがある。
図3は、本実施例における監視カメラ1000が保持するパラメータの構造を図示している。
3100は、監視カメラ1000が保持するMediaProfileである。MediaProfileとは、監視カメラ1000の映像配信に必要な各種設定項目を関連づけて記憶部1002に記憶するためのパラメータセットである。MediaProfileは、MediaProfileのIDであるProfileTokenと、後述するVSC、VECを含む各種設定項目へのリンクを保持する。監視カメラ1000は、MediaProfileを複数保持することができる。
VideoSource3110とは、監視カメラ1000が備える撮像部1003の性能を示すパラメータの集合体である。VideoSource3110は、VideoSource3110のIDであるVideoSourceTokenと、撮像部1003が出力可能な画像データの解像度を示すResolutionを含む。
VideoSourceConfiguration3120とは、監視カメラ1000が備えるVideoSource3110をMediaProfileに関連付けるパラメータの集合体である。VSCは、VideoSourceのIDを示すVideoSourceTokenや、撮像部1003が出力した画像の切り出しサイズ、及び切り出し位置を指定するBoundsを保持するが、本例では言及しない。
VideoEncoderConfiguration3130とは、画像データの圧縮符号化に関する圧縮符号化部1004の設定をMediaProfileに関連付けるパラメータの集合体である。VECは、VECのIDであるToken、圧縮符号化方式を指定するType、出力画像の解像度を指定するResolutionを含む。VECはさらに圧縮符号化品質を指定するQuality、出力画像の最大フレームレートを指定するFramerateLimit、及び最大ビットレートを指定するBitrateLimit等をも含む可能性があるが、本例では言及しない。
例えば、図3のMediaProfile3100では、監視カメラ1000は、VideoSource3100、及びVSC3120の内容に基づいて出力される画像データを、VEC3130に設定される圧縮符号化方式等のパラメータに従って圧縮符号化する。さらに圧縮符号化された画像データを、通信部1005を介してクライアント装置2000を含む、外部機器に配信する。
3140は、StorageConfigurationである。以降の説明においてStorageConfigurationを以後SCと省略する。SC3140は、監視カメラ1000が利用可能な各種ストレージにアクセスするための情報を保持するパラメータ集合体である。SC3140の詳細は後述する。
3150は、RecordingInformationである。RecordingInformation3150は、監視カメラ1000が記憶部1003に保持する録画用のファイルを抽象化したRecordingに関する情報を保持する構造体である。RecordingInformation3150は、Recordingを特定するRecordingTokenを保持する。即ちRecordingTokenは、記憶部1003における録画ファイルであると言える。
図4は、監視カメラ1000とクライアント装置2000の間で送受信される各コマンド引数、パラメータの詳細を図示している。
図4(a)は、SCの内容を示している。SCは、SCのIDであるStorageTokenを含むDeviceEntityを含む。StorageTokenは、監視カメラ1000が保持するSCを一意に特定可能な情報である。またStorageにアクセスするための詳細情報を保持するStorageConfigurationData構造体を保持する。StorageConfigurationDataの詳細は後述する。
図4(b)は、StorageConfigurationData構造体の内容を示している。
LocalPathは、当該SCにおいて指定されている外部ストレージを、監視カメラ1000内にマウントする際の、マウント先情報を保持する。監視カメラがファイルシステムを保持している場合は、例えば「/mnt/cifs1」のようなマウント先ディレクトリのパスであってもよい。或いは、例えば「E」のようなマウントされたストレージを一意に特定可能なドライブ名、或いはドライブ記号であってもよい。LocalPathを監視カメラ側で特定可能な場合、本情報は省略される場合がある。
StorageUriは、当該SCによってマウントされる外部ストレージのアドレスを保持する。例えば、IPアドレスやホスト名によって指定されるURI(Uniform Resource Identifier)「//cifs_server/disk1/share/」が使用される。また監視カメラが備えるSDカードをマウントする場合、SDカードドライブを示すデバイスファイルのパス、例えば「/dev/sdcard/1」などが使用される。その他、後述のアクセス手段種別typeに応じて、様々なURIが指定可能である。マウントする外部ストレージのアドレスを監視カメラ側で特定可能な場合、本情報は省略される場合がある。
Userは、StorageUriによって指定されている外部ストレージにアクセスするための、ユーザ名とパスワードから成る認証情報を保持する。Userの詳細は後述する。認証情報が不要な外部ストレージがマウントされる場合、本情報は省略される場合がある。
typeは、外部ストレージのアクセス手段種別を選択する情報である。typeは、後述の「StorageType」に説明されるアクセス手段種別のリストから、当該SCでマウントされる外部ストレージの種別を示す情報を保持する。
図4(c)は、図4(b)においてUserとして参照されるUserCredentials構造体の内容を示している。
Usernameは、StorageUriによって指定されている外部ストレージにアクセスするための、ユーザ名を保持する。
Passwordは、StorageUriによって指定されている外部ストレージにアクセスするための、パスワードを保持する。パスワード不要の外部ストレージにアクセスする場合、本情報は省略される可能性がある。
図4(d)は、前述のtypeによって使用されるストレージへのアクセス種別のリストである。
NFSは、Network File Systemを指す。NFSは、RFC 1094、RFC 1813、RFC 3530等で定義されており、UNIX(登録商標)で標準的に利用される分散ファイルシステムおよびそのプロトコルである。
SMBは、幅広く使用されているファイル共有サービスプロトコルである。
CIFSは、Common Internet File Systemを指す。前述のSMBを拡張したもので、ネットワーク上でファイルシステムへのアクセスを提供する際に使用される標準プロトコルである。
CDMIは、Cloud Data Management Interfaceを指す。ストレージのクラウドサービスを提供する際の標準プロトコルである。
SDCARDは、SDメモリカードを指す。監視カメラが備える内部記憶媒体1007の一種類であり、内部記憶媒体をマウントする際に指定される。
AUTOは、マウントするストレージをクライアント装置2000では特定しない場合に指定される選択肢である。AUTOのSCが指定された場合、監視カメラ1000は、別途定められている優先順位やアルゴリズムに従って、適切なストレージを選択して使用する。
図4(e)は、SCOption構造体の内容を示している。
typeは、図4(d)で説明したアクセス手段種別の1つを保持し、監視カメラがマウント可能なストレージのアクセス手段種別をリストする。
図5、図6及び図7は、本発明に関連するコマンド、及びそのレスポンスの詳細を示す図である。
図5は、GetSCsコマンドの詳細を示している。(1)は、クライアント装置2000が監視カメラ1000へ送信するGetSCsコマンドの内容を示している。(2)は、監視カメラ1000がクライアント装置2000へ返送するGetSCsレスポンスの内容を示している。GetSCsコマンドによって、クライント装置2000は、監視カメラ1000が保持しているSCのリストを取得することができる。図5の例では、監視カメラ1000は、5000〜5003まで4つのSCを返送している。
5000は、StorageToken=storage1、type=AUTOのSCである。本SCが使用された場合、データを入出力するストレージを監視カメラ1000が選択することになる。
5001は、StorageToken=storage2、type=CIFSのSCである。本SCが使用された場合、監視カメラ1000は「//cifs_server/disk1/share/」で特定されるCIFSプロトコルを使用した外部ストレージにデータを入出力する。
5002は、StorageToken=storage3、type=CDMIのSCである。本SCが使用された場合、監視カメラ1000は「//cdmi:1024/service/export/」で特定されるCDMIプロトコルを使用したクラウドサービスストレージにデータを入出力する。
5003は、StorageToken=storage4、type=SDCARDのSCである。本SCが使用された場合、監視カメラ1000は「/dev/sdcard/1」で特定されるSDカードの内部記憶媒体1007にデータを入出力する。
図6は、GetSCOptionsコマンドの詳細を示している。(1)は、クライアント装置2000が監視カメラ1000へ送信するGetSCOptionsコマンドの内容を示している。(2)は、監視カメラ1000がクライアント装置2000へ返送するGetSCOptionsレスポンスの内容を示している。GetSCOptionsコマンドによって、クライント装置2000は、監視カメラ1000が対応しているアクセス手段種別のリストを取得することができる。図6の例では、監視カメラ1000は、CIFS、CDMI、SDCARD、及びAUTOのアクセス手段種別に対応していることを示している。
図7は、SetSCコマンドの詳細を示している。(1)は、クライアント装置2000が監視カメラ1000へ送信するSetSCコマンドの内容を示している。(2)は、監視カメラ1000がクライアント装置2000へ返送するSetSCレスポンスの内容を示している。SetSCコマンドによって、クライント装置2000は、監視カメラ1000に対して、SCの内容を更新するよう要求する。図7の例では、クライアント装置2000は、StorageToken=storage1のSCのtypeをAUTOとするよう要求している。
図8、図9及び図10は、監視カメラ1000とクライアント装置2000における典型的なコマンドシーケンスを示している。
図8は、監視カメラ1000とクライアント装置2000における、接続からパラメータ設定までの典型的なコマンドシーケンスである。
6000は、ネットワーク機器接続のトランザクションである。クライアント装置2000は、ネットワーク機器を接続するためのProbeコマンドをユニキャスト、或いはマルチキャストでネットワークに送信する。ネットワークに接続されている監視カメラ1000は、コマンド受け付け可能となったことを示すProbeMatchレスポンスをクライアント装置2000へ返送する。
6001は、Subscribeのトランザクションである。このコマンドによって、クライアント装置2000は、監視カメラ1000に対してイベント配信を行うよう指示する。
6002は、GetServicesコマンドのトランザクションである。クライアント装置2000は、PrlbeMatchを返送した監視カメラ1000に対して、サポートしている機能を取得するべくGetServicesコマンドを送信する。監視カメラ1000は、GetServicesレスポンスを返送し、自己のサポートする機能の一覧をクライアント装置2000へ提供する。
6003は、GetProfilesコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、監視カメラ1000が保持するMediaProfile3100のリストを取得する。
6004は、GetVideoSourcesコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、監視カメラ1000が保持するVideoSource3110のリストを取得する。
6005は、GetVSCsコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、監視カメラ1000が保持するVSC3120のリストを取得する。
6006は、GetVECsコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、監視カメラ1000が保持するVEC3130のリストを取得する。
6007は、GetConfigurationsコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、監視カメラ1000が保持する撮像制御部1006に関する設定値群を取得する。
6008は、GetVECOptionsコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、監視カメラ1000が受付可能なVECの各パラメータに対する設定範囲や選択肢を取得する。
6009は、CreateProfileコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、監視カメラ1000に新たなMediaProfileを作成し、そのProfileTokenを得る。本コマンド処理後、監視カメラ1000は、MediaProfileに何らかの変更があったことをネットワーク上のクライアント装置に通知するべくMediaProfile変更通知イベントを送信する。
6010、6011は、AddVSCコマンド、AddVECコマンドの各トランザクションである。これらのコマンドにおいてそれぞれのIDを指定することにより、クライアント装置2000は、指定したMediaProfileに所望のVSC、或いはVECを関連付けることができる。これらのコマンド処理後、監視カメラ1000は、MediaProfileに何らかの変更があったことをネットワーク上のクライアント装置に通知するべくMediaProfile変更通知イベントを送信する。
6012は、SetVECコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、6008で取得した情報に基づき、VECの各パラメータを変更する。本コマンド処理後、監視カメラ1000は、VECに何らかの変更があったことをネットワーク上のクライアント装置に通知するべくVEC変更通知イベントを送信する。
図9は、監視カメラ1000とクライアント装置2000における、画像配信の典型的なコマンドシーケンスである。
6020は、GetStreamUriコマンドのトランザクションである。このコマンドにより、クライアント装置2000は、指定したMediaProfileの設定に基づいて監視カメラ1000が配信ストリームを取得するためのアドレス(URI)を取得する。
6021は、DESCRIBEコマンドのトランザクションである。6010において取得したURIを使用してこのコマンドを実行することにより、クライアント装置2000は、監視カメラ1000がストリーム配信するコンテンツの情報を要求し取得する。
6022は、SETUPコマンドのトランザクションである。6020において取得したURIを使用してこのコマンドを実行することにより、クライアント装置2000と監視カメラ1000の間で、セッション番号を含むストリームの伝送方法が共有される。
6023は、PLAYコマンドのトランザクションである。6022において取得したセッション番号を使用してこのコマンドを実行することにより、クライアント装置2000は、監視カメラ1000に対してストリームの開始を要求する。
6024は、配信ストリームである。監視カメラ1000は、6023において開始を要求されたストリームを、6022において共有された伝送方法によって配信する。
6025は、TEARDOWNコマンドのトランザクションである。6022において取得したセッション番号を使用してこのコマンドを実行することにより、クライアント装置2000は、監視カメラ1000に対してストリームの停止を要求する。
図10は、監視カメラ1000とクライアント装置2000における、ストレージに関するパラメータ設定、及びストレージへのアクセスに関する典型的なコマンドシーケンスである。
6050は、GetServiceCapabilitiesコマンドのトランザクションである。GetServiceCapabilitiesコマンドは、監視カメラ1000がサポートする機能を示す機能情報を返送するよう指示するコマンドである。本機能情報には、監視カメラ1000がSC関連コマンドに対応するどうかを示す情報が含まれる。SCを最大いくつまで保持可能かどうかを示す情報も含まれることがある。
6051は、図5において説明したGetSCsコマンドのトランザクションである。
6052は、図6において説明したGetSCOptionsコマンドのトランザクションである。
6053は、CreateSCsコマンドのトランザクションである。本コマンドによりクライアント装置2000は、監視カメラ1000に対して新たなSCを作成するよう要求する。監視カメラ1000は、作成した新たなSCのStorageTokenを本コマンドのレスポンスにおいて通知する。
6054は、GetSCコマンドのトランザクションである。本コマンドにおいてStorageTokenを指定することにより、クライアント装置2000は、監視カメラ1000が保持する特定のSCの設定内容を取得する。
6055は、図7において説明したSetSCコマンドのトランザクションである。監視カメラ1000は、本コマンドで指定されたストレージのマウントを実施する。本コマンドの処理の詳細は後述する。本コマンド処理後、監視カメラ1000は、SCに何らかの変更があったことをネットワーク上のクライアント装置に通知するべくSC変更通知イベントを送信する。
6056は、BackupSystemコマンドのトランザクションである。本コマンドによってクライアント装置2000は、特定のデータを特定のストレージにバックアップするよう監視カメラ1000に要求する。本コマンドを受信した監視カメラ1000は、BackupSytemレスポンスをクライアント装置2000へ返送する際、BackupTokenを返送する。続いて監視カメラ1000は、指定されたストレージに、バックアップデータを転送する。バックアップ完了後、監視カメラ1000は、コマンドの実行が完了したことをネットワーク上のクライアント装置に通知するべくBackup完了イベントを送信する。
6057は、Restoreコマンドのトランザクションである。本コマンドによってクライアント装置2000は、特定のバックアップデータを監視カメラ1000内にリストアするよう監視カメラ1000に要求する。本コマンドおいてクライアント装置2000は、6056のトランザクションで取得したBackupTokenを指定する。本コマンドを受信した監視カメラ1000は、記憶部1002を参照して、BackupTokenに関連付けられているバックアップデータと、バックアップ先のStorageTokenを取得し、バックアップ先ストレージからバックアップデータを読み出しリストアを行う。リストア完了後、監視カメラ1000は、コマンドの実行が完了したことをネットワーク上のクライアント装置に通知するべくRestore完了イベントを送信する。
6058は、ExportVideosコマンドのトランザクションである。本コマンドによってクライアント装置2000は、コマンドの引数で指定される映像データを特定のストレージにバックアップするよう監視カメラ1000に要求する。本コマンドを受信した監視カメラ1000は、ExportVideosレスポンスをクライアント装置2000へ返送する。続いて監視カメラ1000は、指定されたストレージに、映像データを転送する。転送完了後、監視カメラ1000は、コマンドの実行が完了したことをネットワーク上のクライアント装置に通知するべくExport完了イベントを送信する。
6059は、Archiveコマンドのトランザクションである。本コマンドによってクライアント装置2000は、コマンドの引数で指定されるデータを特定のストレージに圧縮して保存するよう監視カメラ1000に要求する。本コマンドを受信した監視カメラ1000は、Archiveレスポンスをクライアント装置2000へ返送する。続いて監視カメラ1000は、指定されたデータを圧縮し、指定されたストレージに転送する。転送完了後、監視カメラ1000は、コマンドの実行が完了したことをネットワーク上のクライアント装置に通知するべくArchive完了イベントを送信する。
6060は、RemoveSCコマンドのトランザクションである。監視カメラ1000は、本コマンドで指定されたストレージのアンマウントを実施する。監視カメラ1000は、引数で指定されているStorageTokenから特定されるSCを参照し、当該ストレージのアンマウント処理を行う。例えばUnix(登録商標)システムにおけるunmountコマンドと同等の処理を実施する。本コマンド処理後、監視カメラ1000は、SCに何らかの変更があったことをネットワーク上のクライアント装置に通知するべくSC変更通知イベントを送信する。
図11、図12及び図13は監視カメラ1000の内部処理の流れを示すフローチャートである。
図11は、SetSCコマンド受信時の監視カメラ1000の処理の流れを示すフローチャートである。
ステップS7000において制御部1001は、SetSCコマンドの引数で指定されたSCの内容をStorageTokenと関連付けて記憶部1002に保存する。
ステップS7001において制御部1001は、SCのTypeを判別する。TypeがCIFSであった場合、制御部1001は処理をステップS7002に移す。TypeがCDMIであった場合、制御部1001は処理をステップS7003に移す。TypeがSDCARDであった場合、制御部1001は処理をステップS7004に移す。TypeがAUTOであった場合、制御部1001は処理をステップS7006に移す。
ステップS7002において制御部1001はCIFSマウント処理を実行する。具体的には、SCに含まれるLocalPathの値を監視カメラ1000の記憶部1002におけるマウントポイント、StorageUriの値をCIFSサービスアドレスとして使用し、マウントを実施する。その際、SCに含まれるUsername、及びPasswordが認証情報として使用される。この結果、本ストレージへのアクセスはCIFSサーバーであるNAS1100に対して実施されることとなる。続いて、制御部1001は処理をステップS7005に移す。
ステップS7003において制御部1001はCDMIマウント処理を実行する。具体的には、SCに含まれるLocalPathの値を監視カメラ1000の記憶部1002におけるマウントポイント、StorageUriの値をCMDIがサポートされているクラウドストレージサービスのアドレスとして使用し、マウントを実施する。その際、SCに含まれるUsername、及びPasswordが認証情報として使用される。この結果、本ストレージへのアクセスはCDMIサーバーであるクラウドストレージ1200に対して実施されることとなる。続いて、制御部1001は処理をステップS7005に移す。
ステップS7004において制御部1001はSDCARDマウント処理を実行する。具体的には、SCに含まれるLocalPathの値を監視カメラ1000の記憶部1002におけるマウントポイント、StorageUriの値を監視カメラ1000におけるSDカードのデバイスファイルであるとして、マウントを実施する。この結果、本ストレージへのアクセスは内部記憶媒体1007、即ちSDカードに対して実施されることとなる。続いて、制御部1001は処理をステップS7005に移す。
ステップS7005において、ステップS7002、S7003、或いはS7004のマウント処理においてエラーが発生したかどうかを判定する。エラーの発生は、例えば存在しないStorageUriが指定された場合、パスワードが誤っていた場合などが考えられる。エラーが発生していた場合、制御部1001は処理をステップS7007に移す。エラーが発生していなかった場合、制御部1001は処理をステップS7006に移す。
ステップS7006において制御部1001は、クライアント装置2000に対して正常応答レスポンスを送信し、本処理を終了させる。
ステップS7007において制御部1001は、クライアント装置2000に対してエラーレスポンスを送信し、本処理を終了させる。
図12はBackupSystemコマンド、ExportVideosコマンド、或いはArchiveコマンドを受信した場合の、監視カメラ1000の振舞いを示すフローチャートである。
ステップS7100において制御部1001は、記憶部1002を参照し、コマンド引数において指定されているStorageTokenに関連付けられているSCのTypeを取得する。
ステップS7101において制御部1001は、TypeがAUTOかどうかを判定する。TypeがAUTOであった場合は、制御部1001は処理をステップS7110に移す。
ステップS7102において制御部1001は、当該SCに含まれるLocalPathを取得する。
ステップS7103において制御部1001は、ステップS7102において取得したLocalPathに対して、BackupSystem、ExportVideos、或いはArchive各コマンドの処理を実行する。
受信したコマンドがBackupSystemであった場合、制御部1001は記憶部1002内の所定のシステムデータをステップS7102で取得したLocalPathに出力する。また制御部1001は、BackupTokenを生成し、転送先のStorageToken、及び転送データを関連付けて記憶部1002に記憶する。BackupTokenは、前述のRestoreコマンドによってクライアント装置2000によって使用され、監視カメラ1000がRestore対象のBackupデータを一意に特定するために使用するものである。受信したコマンドがExportVideosであった場合、制御部1001は記憶部1002内の所定の映像データをステップS7102で取得したLocalPathに出力する。受信したコマンドがArchiveであった場合、制御部1001は記憶部1002内の所定のデータに対して圧縮処理を行い、ステップS7102で取得したLocalPathに出力する。本ステップの処理の結果、ステップS7002、S7003、或いはS7004でマウントした外部ストレージに対してデータが出力される。
ステップS7103において制御部1001は、レスポンス送信処理を実行する。本処理において制御部1001は、通信部1005を介して正常レスポンスをクライアント装置2000に対して送信する。尚、受信したコマンドがExportSystemコマンドであった場合は、ステップS7103において生成されたBackupTokenを正常レスポンスに添えてクライアント装置2000に対して送信する。その後、制御部1001は本コマンドの処理を終了させる。
ステップS7110において制御部1001は、ストレージ選択処理を実行する。ストレージ選択処理の詳細は後述する。
ステップS7111において制御部1001は、ストレージ選択処理においてエラーが発生したかどうかを判定する。エラーが発生していた場合、制御部1001は処理をステップS7112に移す。エラーが発生していない場合は、ストレージ選択処理において出力されたSCを、本コマンド処理に置いて入力されているSCであるとしてステップS7102に処理を進める。
ステップS7112において制御部1001は、エラーレスポンス送信処理を実行する。本処理において制御部1001は、通信部1005を介してエラーレスポンスをクライアント装置2000に対して送信する。その後、制御部1001は本コマンドの処理を終了させる。
図13は、制御部1001のストレージ選択処理の振舞いを示すフローチャートである。
ステップS7200において制御部1001は、記憶部1002を参照し、マウント済みのストレージの有無を判定する。マウント済みのストレージがない場合、制御部1001は処理をステップS7210に進める。マウント済みのストレージが存在する場合は、制御部1001は処理をステップS7201に進める。
ステップS7201において制御部1001は、記憶部1002を参照し、マウント済みストレージの情報を取得する。続いて制御部1001は、予め定められたアクセス手段種別優先順位に基づいて、マウント済みストレージのうち最も優先順位の高いストレージを選択する。アクセス手段種別優先順位に関する説明は後述する。
ステップS7202において制御部1001は、ステップS7201において選択されたストレージのStorageTokenをストレージ選択処理の出力として、本処理を終了させる。
ステップS7210において制御部1001は、エラーをストレージ選択処理の出力として、本処理を終了させる。
前述のアクセス手段種別優先順位は、さまざまな形態により実施可能である。
図14はアクセス手段種別優先順位に関する情報を例示する図である。
図14(a)はアクセス手段種別優先順位の一例を示している。受信コマンド毎に、StorageTypeによって優先順位を決める方法である。例えば受信しているコマンドがBackupSystemであった場合、ステップS7201においては、マウント済みストレージのうち、SDCARD、CDMI、CIFSの順で選択される。
図14(b)はアクセス手段優先順位の別の実施形態を示している。受信コマンド毎に、StorageTokenによって優先順位を決める方法である。例えば受信しているコマンドがExportVideosであった場合、ステップS7201においては、マウント済みストレージのうち、StorageTokenがStorage2、Storage3、Storage1の優先順位で選択される。
別のアクセス手段優先順位の実施形態として、受信コマンド毎に、SDカードやUSBドライブを含む内部記憶媒体1007を優先するか、NAS1100やクラウドストレージ1200を含む外部ストレージを優先するかをアクセス手段優先順位としてもよい。
上記に説明するアクセス手段種別優先度は、予め監視カメラ1000の記憶部1002に保持されていてもよい。或いは当該優先順位を設定するためのコマンドをサポートし、クライアント装置2000から設定可能なようにしてもよい。StorageTokenによって優先順位を決める方法である。
また、各ストレージの空き容量に基づいて動的に優先順位を決定するように実装してもよい。ステップS7201においては、例えば制御部1001がLinux(登録商標)システムのdfに相当するコマンドを実行することでマウント済みストレージの空き容量を取得し、空き容量の多さに応じてストレージの優先順位を決定してもよい。このようにすることで、各ストレージの空き容量をなるべく確保するように制御することができる。
図15は、クライアント装置2000において、監視カメラ1000のストレージ設定の変更、及びストレージへのアクセスを操作するユーザインターフェースである、StorageOperation画面である。
図16、図17、図18及び図19は、本画面に関するクライアント装置2000の振舞いを示すフローチャートである。
8000は、ストレージに関する操作を選択するOperation選択ドロップダウンリストである。GetServiceCapabilitiesコマンドのトランザクション6050の結果に応じて、監視カメラ1000がサポートするストレージ操作コマンドをリストする。ストレージ操作コマンドとはBackupSystem、Restore、ExportVideos、及びArchiveに代表されるコマンド群である。ストレージ操作コマンドに加えて、MountとUnmountをリストする。Mountは、選択したストレージをマウントするSetSCコマンドのトランザクション6055が実行され、Unmountは、選択したストレージをアンマウントするRemoveSCコマンドのトランザクション6060が実行される。
8001は、Operation Target ID選択ドロップダウンリストである。8000で選択されたコマンドの対象となるストレージのIDがリスト表示され、本リストで選択されているIDを対象として8001で選択されているコマンドが実行される。
8002はストレージタイプ選択/表示エリアである。8003はLocalPath指定/表示エリアである。8004はStorageUri指定/表示エリアである。8005はUsername指定/表示エリアである。8006はPassword指定/表示エリアである。8002〜8006は、8001でStorageTokenが選択されている場合は当該StorageTokenで特定されるSCの各設定内容が表示される。8001で「新規」が選択されている場合は、8000で指定されているストレージ操作コマンドが実行される前に、8002〜8006においてユーザが入力した情報を使用して、新しくストレージがマウントされることとなる。
8007は、ストレージ操作コマンドによってストレージに転送されるデータを入力する、対象データ選択エリアである。
8008は、実行ボタンである。本ボタンの押下により、8001に選択されているコマンドが実行される。
8009は、キャンセルボタンである。本ボタンの押下により、本画面が終了される。
図16は、StorageOperation画面の処理に関する制御部2001のフローチャートを示している。
ステップS9000において制御部2001は、表示部2003に対して図15に説明したStorageOperation画面全体を表示させる。
ステップS9001において制御部2001は、6050のトランザクションを実行し、対象の監視カメラ1000がサポートしているコマンドをOperation選択ドロップダウンリスト8000に表示する。
ステップS9002において制御部2001は、6052のトランザクションを実行し、対象の監視カメラ1000がサポートしているStorageTypeを、ストレージタイプ選択/表示エリア8002に表示する。
ステップS9003において制御部2001は、表示部2003に対してLocalPath指定/表示エリア8003、StorageUri指定/表示エリア8004、Username指定/表示エリア8005、及びPassword指定/表示エリア8006を表示する。さらに対象データ選択エリア8007、実行ボタン8008、及びキャンセルボタン8009を表示させる。
ステップS9004において制御部2001は、6051のトランザクションを実行し、監視カメラ1000から取得したStorageTokenのリスト、及び「新規」の選択肢を、OperationTargetID選択ドロップダウンリスト8001に表示させる。
ステップS9005において制御部2001は、入力部2004からのユーザ操作イベント、及び通信部2005からのイベント受信イベントを待つ。8000において、Restore以外が選択された場合、制御部2001は処理をステップS9004に移す。8000において、Restoreが選択された場合、制御部2001は処理をステップS9006に移す。8001において、StorageTokenのいずれかが選択された場合、制御部2001は処理をステップS9010に移す。8000において、BackupSystem、ExportVideos、或いはArchiveが選択されている状態で、Invokeボタンが押下された場合、制御部2001は処理をステップS9020に処理を移す。8000において、Mountが選択されている状態で、Invokeボタンが押下された場合、制御部2001は処理をステップS9030に処理を移す。8000において、Unmountが選択されている状態で、Invokeボタンが押下された場合、制御部2001は処理をステップS9040に処理を移す。8000においてRestoreが選択されている状態でInvokeボタンが押下された場合、制御部2002は、8001において選択されているBakcupTokenを使用し、6056のトランザクションを実行し、処理をステップS9004に移す。
ステップS9006において制御部2001は、6056のトランザクションを実行した際に取得したBackupTokenを記憶部2002から取得し、OperationTargetID選択ドロップダウンリスト8001に表示させる。その後制御部2001は処理をステップS9004に戻す。
ステップS9010において制御部2001は、6054のトランザクションを実行し、取得したSCの内容を、8002〜8007に表示する。その後制御部2001は処理をステップS9004に戻す。
ステップS9020において制御部2001は、8001において「新規」が選択されているかどうかを判定する。新規が選択されている場合、制御部2001は処理をステップS9021へ、新規以外が選択されている場合はステップS9022へ処理を移す。
ステップS9021において制御部2001は、6053のトランザクションを実行して新しいSCを生成し、StorageTokenを取得する。続いて制御部2001は処理をステップS9023に処理を移す。
ステップS9022において制御部2001は、8001において選択されているStoargeTokenを取得し、処理をステップS9024に移す。
ステップS9023において制御部2001は、ステップS9021において取得したStorageTokenと共に、8002〜8006においてユーザが入力している情報を使用して6055のトランザクションを実行する。尚、8002において「AUTO」が選択されている場合は、8003〜8006の情報は不要であり使用されない。
ステップS9024において制御部2001は、ステップS9021或いはステップS9022において取得したStorageTokenに対して、8000で選択されている内容に応じて、6056、6058、或いは6059のトランザクションを実行する。
ステップS9025において制御部2001は、ステップS9024において6056のトランザクションを実行した場合は、監視カメラ1000から返送されたBackupTokenを記憶部2003に記憶させる。
ステップS9026において制御部2001は、各コマンドの実行完了イベントの受信を待つ。コマンド実行完了イベントを受信した場合制御部2001は処理をステップS9004に移す。
ステップS9030において制御部2001は、8001において「新規」が選択されているかどうかを判定する。新規が選択されている場合、制御部2001は処理をステップS9031へ、新規以外が選択されている場合はステップS9004へ処理を移す。
ステップS9031において制御部2001は、6053のトランザクションを実行して新しいSCを生成し、StorageTokenを取得する。
ステップS9032において制御部2001は、ステップS9031において取得したStorageTokenに対して、6055のトランザクションを実行する。
ステップS9033において制御部2001は、各コマンドの実行完了イベントの受信を待つ。コマンド実行完了イベントを受信した場合制御部2001は処理をステップS9004に移す。
ステップS9040において制御部2001は、8001において「新規」が選択されているかどうかを判定する。新規が選択されている場合、制御部2001は処理をステップS9041へ、新規以外が選択されている場合はステップS9004へ処理を移す。
ステップS9041において制御部2001は、8001において選択されているStorageTokenに対して、6060のトランザクションを実行する。
ステップS9042において制御部2001は、各コマンドの実行完了イベントの受信を待つ。コマンド実行完了イベントを受信した場合制御部2001は処理をステップS9004に移す。
以上、説明したように、本実施例1によれば、ネットワーク上にマウントされた複数のストレージとデータの送受信が可能な撮像装置であって、ストレージのマウントに必要な詳細情報とともに特定のストレージをマウントする指示を受けつける第一のインターフェースと、ストレージのマウントに必要な詳細情報の少なくとも一部を省略して任意のストレージをマウントする指示を受け付ける第二のインターフェースとを備えることを特徴とする撮像装置を提供することが可能となる。
また、本実施例1によれば、クライアント装置が撮像装置に外部のネットワークストレージをマウントさせようとする場合に、監視カメラユーザはマウントに関連する様々な情報の入力を必ずしも行う必要がなく、管理者以外のユーザでも簡便に外部ストレージを利用することが可能となる。
実施例1において、ストレージタイプの選択肢としてAUTOを提供する監視カメラに言及しながら本発明の実施の形態を説明した。
しかしながら、実施例1の監視カメラ1000は、ストレージの詳細を省略して、タイプがAUTOであるストレージが指定された場合、マウント済みのストレージがあるかどうかを判定し、マウント済みのストレージがない場合は、エラーを出力するよう制御している。即ち、AUTOタイプ使用の前提条件として、何らかの外部ストレージが事前にマウントされている必要があった。しかし、必ずしもこの限りではない。
マウント済みのストレージが存在しない場合は、ストレージ選択処理において何らかのストレージを自動でマウントし、使用可能な状態にして、実施例1の前提条件を不要とするようにしてもよい。
また、外部ストレージではなく、監視カメラ1000の記憶部1002上のファイルをストレージとして使用するようにしてもよい。
以上の点を考慮した本発明の第2の実施例を以下に説明する。尚、実施例1と同じ部分については詳細な説明を省略する。
図1は、本発明の第1の実施例における、撮像装置であるところの監視カメラ1000とクライアント装置2000とで構成される撮像システムを説明するためのシステム構成図である。
図2は、監視カメラ1000、及びクライアント装置2000の内部構成を示す図である。
図3は、本実施例における監視カメラ1000が保持するパラメータの構造を図示している。
図4は、監視カメラ1000とクライアント装置2000の間で送受信される各コマンド引数、パラメータの詳細を図示している。
図5、図6及び図7は、本発明に関連するコマンド、及びそのレスポンスの詳細を示す図である。
図8、図9及び図10は、監視カメラ1000とクライアント装置2000における典型的なコマンドシーケンスを示している。
図11、図12及び図13は監視カメラ1000の内部処理の流れを示すフローチャートである。
図14はアクセス手段種別優先順位に関する情報を例示する図である。
図15は、クライアント装置2000において、監視カメラ1000のストレージ設定の変更、及びストレージへのアクセスを操作するユーザインターフェースである。
図16は、StorageOperation画面の処理に関する制御部2001のフローチャートを示している。
図13は、制御部1001のストレージ選択処理の振舞いを示すフローチャートである。
ステップS7200において制御部1001は、記憶部1002を参照し、マウント済みのストレージの有無を判定する。マウント済みのストレージがない場合、制御部1001は、記録部1002を参照し、RecordingInformation3150を取得する。取得したRecordingInformationに含まれるRecordingTokenを本処理において選択されたストレージとして出力する。
図12のステップS7102において、選択されたストレージがRecordingであった場合は、制御部1001は、当該Recordingによって抽象化されている記憶部1002上の実態のファイルのパスを取得する。
ステップS7103において制御部1001は、ステップS7102において取得したファイルパスに対して、BackupSystem、ExportVideos、或いはArchive各コマンドの処理を実行する。この結果、記憶部1002に記憶されているファイル、即ちRecordingに対してストレージ操作コマンドが実行される。
尚、クライアント装置2000についても、RecordingTokenをストレージ操作コマンドの対象として指定できるようにしてもよい。
図16のステップS9004において制御部2001は、6051のトランザクションを実行し、監視カメラ1000から取得したStorageTokenのリストを取得する。加えて、制御部2001は、GetRecordingsコマンドを実行し、対象の監視カメラ1000が保持するRecordingのリストを取得する。制御部2001は、取得したStorageTokenとRecordingToken、及び「新規」の選択肢を、OperationTargetID選択ドロップダウンリスト8001に表示させる。
以上、説明した第2の実施形態によれば、撮像装置に外部ストレージがマウントされていない状況に置いて、クライアント装置が撮像装置に外部のネットワークストレージをマウントさせようとする場合でも、監視カメラユーザはマウントに関連する様々な情報の入力を必ずしも行う必要がなく、管理者以外のユーザでも簡便に外部ストレージを利用することが可能となる。
また、撮像装置内部の記憶装置上に存在するファイル、即ちRecordingをストレージ操作コマンドの対象とすることにより、あらゆる外部ストレージにアクセスできない状況においても、ストレージ操作コマンドを簡便にしようすることができる。
なお、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
以上、本発明をその好適な実施例に基づいて詳述してきたが、本発明はこれら特定の実施例に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
例えば
1)図11のSetSCコマンドの処理において、TypeがAUTOであった場合はマウント処理を実行しないようにしているがこの限りではない。いずれのストレージもマウントされていなければ、このタイミングで予め設定されているアクセス可能なストレージを自動でマウントして、当該SCの使用に備えるようにしてもよい。
2)図4(d)において、代表的なStorateTypeを6種類リストしているがこの限りではない。例えばFTP(File Transfer Protocol)や、内部記憶媒体としてUSBドライブ、BD−Rドライブ等、マウント可能な様々なストレージ種別が含まれても良い。
3)ExportVideosコマンドのトランザクション6058において、クライアント装置2000がどのようにExport対象の映像データを指定するかについては、様々な指定の方法が考えられる。例えば、監視カメラ1000が保持するMediaProfile3100を特定するProfileTokenを指定し、MediaProfileの設定内容に従ってストリームされる映像データをExport対象としてもよい。或いは、RecordingInformation3150のRecordingTokenによって特定される監視カメラ1000が保持する録画ファイルをExport対象として指定できるようにしてもよい。
4)Archiveコマンドのトランザクション6059においては、監視カメラ1000がデータの圧縮を実施するようにしているが、監視カメラではなくストレージ側で圧縮するようなシステムとしてもよい。
1000 監視カメラ
1001 制御部
2000 クライアント装置

Claims (6)

  1. ネットワーク上にマウントされた複数のストレージとデータの送受信が可能な撮像装置であって、
    前記複数のストレージについて、データの送受信の処理の種別毎に優先順位を保持する保持手段と、
    特定のストレージをマウントする指示を受けつける第一のインターフェースと、
    任意のストレージをマウントする指示を受け付ける第二のインターフェースと、
    データの送信または受信に関する処理の開始の指示を受け付ける第三のインターフェースと、
    前記第一のインターフェースによって受け付けた指示に基づいて前記複数のストレージから前記特定のストレージをマウントする、または、前記第二のインターフェースによって受け付けた指示および前記第三のインターフェースによって受け付けた指示に基づいて、前記第三のインターフェースによって受け付けた指示が示す処理の種別に対応する優先順位を参照して前記複数のストレージから選択したストレージをマウントするマウント手段と
    を備えることを特徴とする撮像装置。
  2. 前記保持手段は前記優先順位に関する複数のストレージの其々をマウントするために必要な詳細情報を記憶していることを特徴とする請求項1に記載の撮像装置。
  3. 前記第二のインターフェースの指示に基づくストレージとデータの送受信を行う際に、マウント済みのストレージが存在しない場合は、所定のストレージをマウントし、当該所定のストレージについてデータの送受信を行うことを特徴とする請求項1または2に記載の撮像装置。
  4. 前記所定のストレージとは、前記撮像装置の内部に記憶されているファイルであることを特徴とする請求項に記載の撮像装置。
  5. 前記第一のインターフェースは、前記撮像装置の内部に記憶されているファイルをマウントの対象として指定可能であることを特徴とする請求項1乃至4のいずれか1項に記載の撮像装置。
  6. ネットワーク上にマウントされた複数のストレージとデータの送受信が可能で、前記複数のストレージについて、データの送受信の処理の種別毎に優先順位を保持する保持手段を備える撮像装置の制御方法であって、
    特定のストレージをマウントする指示を受けつける第一の工程と、
    任意のストレージをマウントする指示を受け付ける第二の工程
    データの送信または受信に関する処理の開始の指示を受け付ける第三の工程と、
    前記第一の工程で受け付けた指示に基づいて前記複数のストレージから前記特定のストレージをマウントする、または、前記第二の工程で受け付けた指示および前記第三の工程で受け付けた指示に基づいて、前記第三の工程で受け付けた指示が示す処理の種別に対応する優先順位を参照して前記複数のストレージから選択したストレージをマウントするマウント工程と
    を備えることを特徴とする撮像装置の制御方法。
JP2014054184A 2014-03-17 2014-03-17 撮像装置及びその制御方法 Active JP6230453B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014054184A JP6230453B2 (ja) 2014-03-17 2014-03-17 撮像装置及びその制御方法
CN201580013868.8A CN106233262B (zh) 2014-03-17 2015-02-24 摄像设备以及摄像设备的控制方法
US15/126,547 US10162546B2 (en) 2014-03-17 2015-02-24 Imaging apparatus and method of controlling the apparatus
PCT/JP2015/000920 WO2015141141A1 (en) 2014-03-17 2015-02-24 Imaging apparatus and method of controlling the apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014054184A JP6230453B2 (ja) 2014-03-17 2014-03-17 撮像装置及びその制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017202090A Division JP6513160B2 (ja) 2017-10-18 2017-10-18 撮像装置及びその制御方法

Publications (2)

Publication Number Publication Date
JP2015176499A JP2015176499A (ja) 2015-10-05
JP6230453B2 true JP6230453B2 (ja) 2017-11-15

Family

ID=54144132

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014054184A Active JP6230453B2 (ja) 2014-03-17 2014-03-17 撮像装置及びその制御方法

Country Status (4)

Country Link
US (1) US10162546B2 (ja)
JP (1) JP6230453B2 (ja)
CN (1) CN106233262B (ja)
WO (1) WO2015141141A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6305110B2 (ja) 2014-02-28 2018-04-04 キヤノン株式会社 撮像装置、及び撮像システム
CN106993057A (zh) * 2017-05-24 2017-07-28 郑州云海信息技术有限公司 一种管理文件资源共享的方法及装置
TWI663861B (zh) * 2017-06-21 2019-06-21 友訊科技股份有限公司 利用onvif標準傳輸訊息以辨識出網路攝影機並提昇傳輸品質之方法
JP6968610B2 (ja) * 2017-08-01 2021-11-17 キヤノン株式会社 撮像装置、情報処理方法及びプログラム

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6510520B1 (en) * 1998-06-26 2003-01-21 Fotonation, Inc. Secure storage device for transfer of digital camera data
JP2002330383A (ja) * 2001-04-26 2002-11-15 Toshiba Corp デジタルカメラとその制御方法
JP2003241903A (ja) 2002-02-14 2003-08-29 Hitachi Ltd 記憶制御装置、ストレージシステム、及びその制御方法
JP4571455B2 (ja) * 2003-07-29 2010-10-27 株式会社リコー 画像形成装置、情報処理方法、情報処理プログラム、記録媒体、及び分散ファイルシステム
US7933033B2 (en) * 2003-07-29 2011-04-26 Ricoh Company, Ltd. Image forming apparatus, image processing method, image processing program and recording medium
US7773128B2 (en) * 2004-06-10 2010-08-10 Canon Kabushiki Kaisha Imaging apparatus
JP2006165851A (ja) * 2004-12-06 2006-06-22 Sony Corp 撮像装置
JP2006165942A (ja) * 2004-12-07 2006-06-22 Sony Corp 携帯電子機器、情報処理方法、並びにプログラム
JP5111898B2 (ja) * 2007-03-09 2013-01-09 株式会社日立製作所 ファイル管理方法及び計算機システム
JP5075454B2 (ja) * 2007-04-11 2012-11-21 株式会社東芝 記録装置および記録方法
WO2009032712A2 (en) * 2007-08-29 2009-03-12 Nirvanix, Inc. Method and system for moving requested files from one storage location to another
JP2009081730A (ja) * 2007-09-26 2009-04-16 Toshiba Corp 記憶装置および記憶方法
JP5300276B2 (ja) * 2008-01-28 2013-09-25 アルパイン株式会社 データ処理装置及び論理ドライブのマウント方法
JP5473290B2 (ja) * 2008-10-15 2014-04-16 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP5500883B2 (ja) * 2009-06-23 2014-05-21 キヤノン株式会社 画像読取装置及びその制御方法とそのプログラム
JP2011029915A (ja) * 2009-07-24 2011-02-10 Murata Machinery Ltd ネットワーク複合機
US8051113B1 (en) * 2009-09-17 2011-11-01 Netapp, Inc. Method and system for managing clustered and non-clustered storage systems
US9244969B1 (en) * 2010-06-30 2016-01-26 Emc Corporation Virtual disk recovery
US9497257B1 (en) * 2010-06-30 2016-11-15 EMC IP Holding Company LLC File level referrals
US20120158806A1 (en) * 2010-12-20 2012-06-21 Verizon Patent And Licensing Inc. Provisioning network-attached storage
JP5875463B2 (ja) * 2012-05-21 2016-03-02 キヤノン株式会社 撮像装置、マスク画像設定方法、および、プログラム
WO2014021779A1 (en) * 2012-07-30 2014-02-06 Agency For Science, Technology And Research Servers and methods for controlling a server
JP6097507B2 (ja) * 2012-09-03 2017-03-15 キヤノン株式会社 通信制御装置、及びその制御方法
JP6116163B2 (ja) * 2012-09-10 2017-04-19 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
US8990408B1 (en) * 2014-01-09 2015-03-24 Wowza Media Systems, LLC Providing control information to a multimedia server
US9354994B2 (en) * 2014-02-18 2016-05-31 International Business Machines Corporation Preemptive relocation of failing data

Also Published As

Publication number Publication date
US20170090810A1 (en) 2017-03-30
US10162546B2 (en) 2018-12-25
WO2015141141A1 (en) 2015-09-24
CN106233262A (zh) 2016-12-14
JP2015176499A (ja) 2015-10-05
CN106233262B (zh) 2019-08-02

Similar Documents

Publication Publication Date Title
JP6305110B2 (ja) 撮像装置、及び撮像システム
KR101468787B1 (ko) 네트워크를 통한 미디어 서버의 원격 제어 시스템 및 그 방법
JP6103999B2 (ja) 画像データ送信装置、画像データ受信装置、画像データ送信方法、画像データ受信方法、及びプログラム
JP5799259B2 (ja) 電子機器およびコンピュータプログラム
US20180332137A1 (en) Information processing apparatus, system, information processing method, and program
JP6230453B2 (ja) 撮像装置及びその制御方法
US9680885B2 (en) Information processing apparatus and terminal device that communicate with each other
US8769041B2 (en) Document generation apparatus, document generation system, document upload method, and storage medium
WO2015109872A1 (zh) 基于samba的快速访问和控制播放共享媒体文件方法
US10678569B2 (en) Enhanced virtual desktop infrastructures
US9998504B2 (en) Remote support system, information processing apparatus, image processing apparatus, methods of controlling these, and storage medium
JP2015095686A (ja) 撮像装置、撮像システム、撮像装置の制御方法、撮像システムの制御方法、及びプログラム
US11265475B2 (en) Image capturing apparatus, client apparatus, method for controlling image capturing apparatus, method for controlling client apparatus, and non-transitory computer-readable storage medium
JP6513160B2 (ja) 撮像装置及びその制御方法
JP6287335B2 (ja) 端末装置、情報処理システム、情報送信方法及びプログラム
JP2014107590A (ja) 撮像装置、撮像システム、撮像装置の制御方法およびプログラム
JP6452458B2 (ja) データ管理装置、データ管理方法、およびプログラム
JP6214221B2 (ja) 撮像装置、クライアント装置、撮像システム、撮像装置の制御方法、クライアント装置の制御方法、および撮像システムの制御方法
JP6529635B2 (ja) 撮像装置、撮像方法、及びプログラム
TW201426333A (zh) 網路資料儲存系統、裝置及其方法
US20190320086A1 (en) System, information processing apparatus, control method for information processing apparatus, and program
CN113505328A (zh) 文件传输方法、装置、电子设备和计算机可读存储介质
JP2017229094A (ja) 撮像装置、撮像システム、撮像装置の制御方法、撮像システムの制御方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170714

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171017

R151 Written notification of patent or utility model registration

Ref document number: 6230453

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151