(57)【特許請求の範囲】
【請求項１】
通信装置に命令を送信して前記通信装置を制御する制御装置であって、
前記通信装置から前記通信装置が実行中の動作に応じた通知を受信する受信手段と、
前記受信手段が受信した通知に基づき、前記通信装置が実行し得る複数の動作の夫々について、前記通信装置に対して所定の命令を送信できるか否かを判断する判断手段と、を備えることを特徴とする制御装置。
【請求項２】
前記受信手段が受信する通知の種別と、前記通信装置に対して所定の命令を送信できるか否かの情報と、を関連付ける命令テーブルを記憶する記憶手段をさらに備え、
前記判断手段は、前記受信手段が受信する通知の種別と、前記命令テーブルと、に基づいて、前記通信装置に対して所定の命令を送信できるか否かを判断することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記通信装置を制御するための制御画面を表示手段に表示させる表示制御手段をさらに備え、
前記表示制御手段は、前記判断手段が前記通信装置に対して送信できないと判断する命令である禁止命令をユーザが指示するとき、前記禁止命令を前記通信装置に送信せず、ユーザの指示を実行できない旨を前記表示手段に表示させることを特徴とする請求項１又は２に記載の制御装置。
【請求項４】
前記通信装置を制御するための制御画面を表示手段に表示させる表示制御手段をさらに備え、
前記表示制御手段は、前記判断手段が前記通信装置に対して送信できないと判断する命令である禁止命令と、前記判断手段が前記通信装置に対して送信できると判断する命令と、を区別できるように前記表示手段に表示させることを特徴とする請求項１又は２に記載の制御装置。
【請求項５】
前記所定の命令の一つは、前記通信装置が保持する画像データを取得する命令であることを特徴とする請求項１乃至４のいずれか１項に記載の制御装置。
【請求項６】
前記通信装置は撮像装置であり、
前記所定の命令の一つは、リモート撮影の命令であることを特徴とする請求項１乃至５のいずれか１項に記載の制御装置。
【請求項７】
前記判断手段は、前記受信手段が受信した通知が示す動作と関連する動作については、当該動作を指示する命令を送信できると判断することを特徴とする請求項１乃至６のいずれか１項に記載の制御装置。
【請求項８】
通信装置と、前記通信装置に命令を送信して前記通信装置を制御する制御装置と、を備える通信システムであって、
前記通信装置から前記通信装置が実行中の動作に応じた通知を受信する受信手段と、
前記受信手段が受信した通知に基づき、前記通信装置が実行し得る複数の動作の夫々について、前記通信装置に対して所定の命令を送信できるか否かを判断する判断手段と、を備えることを特徴とする通信システム。
【請求項９】
通信装置に命令を送信して前記通信装置を制御する制御装置の制御方法であって、
前記通信装置から前記通信装置が実行中の動作に応じた通知を受信する受信ステップと、
前記受信ステップで受信した通知に基づき、前記通信装置が実行し得る複数の動作の夫々について、前記通信装置に対して所定の命令を送信できるか否かを判断する判断ステップと、を備えることを特徴とする制御装置の制御方法。
【請求項１０】
通信装置に命令を送信して前記通信装置を制御する制御装置を制御するためのプログラムであって、
前記通信装置から前記通信装置が実行中の動作に応じた通知を受信する受信ステップと、
前記受信ステップで受信した通知に基づき、前記通信装置が実行し得る複数の動作の夫々について、前記通信装置に対して所定の命令を送信できるか否かを判断する判断ステップと、をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、通信システム、制御装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
デジタルカメラ等の通信装置とパーソナルコンピュータ（以降ではＰＣという）とを接続して、通信装置から画像を取得したり、通信装置の機能を制御したりするシステムが以前から提案されている。近年、スマートフォン等の携帯端末の普及に伴い、様々な機器からデジタルカメラ等の通信装置の制御を行いたいという要望が高まっている。
なお、特許文献１では、デジタルカメラ等の画像撮影デバイスを接続して、画像撮影デバイスを制御可能なＰＣが開示されている。特許文献１のＰＣは、画像撮影デバイス上で撮影設定値を設定した後に、画像撮影デバイスから撮影設定値変更項目リストを受け取る。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１３６８３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
動画記録中等によりデジタルカメラのＣＰＵ（Central Processing Unit）の処理負荷が高い場合を考える。この場合、ＰＣからデジタルカメラに命令を送信しても、デジタルカメラがこの命令を処理する余裕がなく、命令を実行できなかったり、デジタルカメラが実行中の動画記録等に影響を与えたりするおそれがある。一方、デジタルカメラが動画記録中等の場合にＰＣからの命令を一切受け付けないようするのでは、デジタルカメラの利便性が下がる。
そこで、本発明は、デジタルカメラ等の通信装置の処理負荷が高い場合であっても、ＰＣ等の制御装置による制御が必要以上に制限されることを抑えて、通信装置及び制御装置の利便性を向上させることを目的とする。
【課題を解決するための手段】
【０００５】
本発明の制御装置は、通信装置に命令を送信して前記通信装置を制御する制御装置であって、前記通信装置から前記通信装置が実行中の動作に応じた通知を受信する受信手段と、前記受信手段が受信した通知に基づき、前記通信装置が実行し得る複数の動作の夫々について、前記通信装置に対して所定の命令を送信できるか否かを判断する判断手段と、を備えることを特徴とする。
【発明の効果】
【０００６】
本発明の制御装置は、通信装置からの制御の制限に関する通知に基づいて、通信装置に対して所定の命令を送信できるか否かが判断される。したがって、制御装置による制御が必要以上に制限されることを抑えて、通信装置及び制御装置の利便性を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】デジタルカメラのハードウェア構成を示すブロック図である。
【図２】携帯端末のハードウェア構成を示すブロック図である。
【図３】通信システムの構成を示す概念図である。
【図４】携帯端末のソフトウェア構成とデジタルカメラとの関係を示す図である。
【図５】携帯端末がデジタルカメラに命令を送信するときのシーケンス図である。
【図６Ａ】携帯端末の画面例であって、処理選択画面の図である。
【図６Ｂ】携帯端末の画面例であって、カメラ制御画面の図である。
【図６Ｃ】携帯端末の画面例であって、デジタルカメラが動画記録中のときの第１実施形態におけるカメラ制御画面の図である。
【図６Ｄ】携帯端末の画面例であって、デジタルカメラが動画記録中のときの第２実施形態におけるカメラ制御画面の図である。
【図７】第１実施形態におけるデジタルカメラ及び携帯端末の処理の流れの例を示すシーケンス図である。
【図８】第１実施形態及び第２実施形態における命令テーブルの構成を示す図である。
【図９】第２実施形態におけるデジタルカメラ及び携帯端末の処理の流れの例を示すシーケンス図である。
【図１０】第３実施形態における命令テーブルの構成を示す図である。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明の好適な実施形態について説明する。
＜第１実施形態＞
（デジタルカメラのハードウェア構成）
はじめに、図１を参照して、本実施形態のデジタルカメラ３０１を説明する。図１は、デジタルカメラ３０１のハードウェア構成を示すブロック図である。デジタルカメラ３０１は通信装置の一例であり、本実施形態では一眼レフデジタルカメラである。
【０００９】
デジタルカメラ３０１は、図１に示す各部から構成される。
１０１は、撮影レンズである。
１０２は、ＡＦ（オートフォーカス）駆動回路である。ＡＦ駆動回路１０２は、例えばＤＣモータやステッピングモータによって構成され、マイクロコンピュータ１２３の制御によって撮影レンズ１０１のフォーカスレンズ位置を変化させることによりピントを合わせる。
１０３は、ズーム駆動回路である。ズーム駆動回路１０３は、例えばＤＣモータやステッピングモータによって構成され、マイクロコンピュータ１２３の制御によって撮影レンズ１０１の変倍レンズ位置を変化させることにより撮影レンズ１０１の焦点距離を変化させる。
【００１０】
１０４は、絞りである。
１０５は、絞り駆動回路である。絞り駆動回路１０５は、絞り１０４を駆動する。駆動されるべき量はマイクロコンピュータ１２３によって算出され、光学的な絞り値を変化させる。
１０６は、主ミラーであり、撮影レンズ１０１から入射した光束をファインダ側と撮像素子側とに切替える。主ミラー１０６は、撮影時以外には、光束を反射させてファインダ部へ導くように配されているが、撮影時には、撮像素子１１２へと光束を導くように上方に跳ね上がり光束中から待避する。また、主ミラー１０６は、その中央部が光の一部を透過できるようにハーフミラーとなっており、光束の一部を透過させて、焦点検出を行うためのセンサに入射させる。
【００１１】
１０７は、サブミラーであり、主ミラー１０６から透過してきた光束を反射させ焦点検出を行うためのセンサ（焦点検出回路１０９内に配置されている）に導く。
１０８は、ファインダを構成するペンタプリズムである。ファインダは、他にピント板、アイピースレンズ（不図示）等によって構成される。
１０９は、焦点検出回路である。主ミラー１０６の中央部を透過し、サブミラー１０７で反射した光束は、焦点検出回路１０９の内部に配置された光電変換を行うためのセンサに至る。フォーカス演算に用いるデフォーカス量は、センサの出力を演算することによって求められる。マイクロコンピュータ１２３は、演算結果を評価してＡＦ駆動回路１０２に指示し、フォーカスレンズを駆動させる。
【００１２】
１１０は、フォーカルプレーンシャッタである。
１１１は、シャッタ駆動回路であり、フォーカルプレーンシャッタ１１０を駆動する。シャッタの開口時間はマイクロコンピュータ１２３によって制御される。
１１２は、撮像素子である。撮像素子１１２には、ＣＣＤやＣＭＯＳセンサ等が用いられ、撮影レンズ１０１によって結像された被写体像を電気信号に変換する。
１１３は、クランプ回路である。
１１４は、ＡＧＣ（Automatic Gain Control）回路である。クランプ回路１１３やＡＧＣ回路１１４は、Ａ／Ｄ変換をする前の基本的なアナログ信号処理を行い、マイクロコンピュータ１２３により、クランプレベルやＡＧＣ基準レベルの変更が行われる。
１１５は、Ａ／Ｄ変換器である。Ａ／Ｄ変換器１１５は撮像素子１１２のアナログ出力信号をデジタル信号に変換する。
【００１３】
１１６は、映像・音声信号処理回路であり、ゲートアレイ等のロジックデバイスにより実現される。映像・音声信号処理回路１１６は、デジタル化された画像データに、フィルター処理、色変換処理、ガンマ処理を行うと共に、ＪＰＥＧ等の圧縮処理を行い、メモリコントローラ１１９に出力する。また、映像・音声信号処理回路１１６は、マイク１３２、又は、音声ライン入力１３３からの音声信号の圧縮処理を行い、メモリコントローラ１１９に出力する。また、映像・音声信号処理回路１１６は、撮像素子１１２からの映像信号や、メモリコントローラ１１９から逆に入力される画像データを、ＥＶＦ駆動回路１１７を通してＥＶＦモニタ１１８に出力できる。また、映像・音声信号処理回路１１６は、必要に応じて撮像素子１１２の信号の露出情報やホワイトバランス等の情報をマイクロコンピュータ１２３に出力することが可能である。それらの情報を基にマイクロコンピュータ１２３はホワイトバランスやゲイン調整の指示を行う。さらに、映像・音声信号処理回路１１６は、マイク１３２、又は、音声ライン入力１３３からの音声データを、Ｄ／Ａ変換器１３５を通してスピーカ１３６に出力できる。映像・音声信号処理回路１１６の機能切り替えは、マイクロコンピュータ１２３の指示により行われる。
連続撮影動作の場合においては、一旦、未処理画像のままバッファメモリ１２２に撮影データを格納し、メモリコントローラ１１９を通して未処理の画像データを読み出し、映像・音声信号処理回路１１６にて画像処理や圧縮処理を行い、連続撮影を行う。連像撮影枚数は、バッファメモリ１２２の大きさに左右される。
【００１４】
１１７は、ＥＶＦ（電子ビューファインダ）駆動回路である。
１１８は、ＥＶＦモニタである。
１１９は、メモリコントローラである。メモリコントローラ１１９は、映像・音声信号処理回路１１６から入力された未処理のデジタル画像・音声データをバッファメモリ１２２に格納し、処理済みのデジタル画像・音声データをメモリ１２０に格納する。また、メモリコントローラ１１９は、逆にバッファメモリ１２２やメモリ１２０から画像・音声データを映像・音声信号処理回路１１６に出力する。また、メモリコントローラ１１９は、ＰＣ等と接続可能な外部Ｉ／Ｆ１２１を介してメモリ１２０に記憶されている画像・音声を出力できる。
１２０は、メモリである。メモリ１２０は取り外し可能であってもよい。
【００１５】
１２１は、コンピュータ等と接続可能な外部Ｉ／Ｆ（インタフェース）である。外部Ｉ／Ｆ１２１は、ＰＣ、携帯情報端末、及び、後述する携帯端末３０２等の外部機器との通信に使われる。なお、外部Ｉ／Ｆ１２１は、通信回路を備えたカメラとの通信にも使われ、カメラ同士で各種情報や画像データの送受信を行うことができる。
１２２は、バッファメモリである。
【００１６】
１２３は、マイクロコンピュータである。
１２４は、操作部材である。操作部材１２４は、マイクロコンピュータ１２３に操作部材１２４の状態を伝え、マイクロコンピュータ１２３は操作部材１２４の変化に応じて各部をコントロールする。
１２５は、第１スイッチである。
１２６は、第２スイッチである。第１スイッチ１２５及び第２スイッチ１２６は、レリーズボタンの操作でオンオフするスイッチであり、それぞれ操作部材１２４の入力スイッチのうちの１つである。第１スイッチ１２５のみオンの状態はレリーズボタン半押し状態であり、この状態でオートフォーカスの動作を行ったり、測光動作を行ったりする。第１スイッチ１２５及び第２スイッチが共にオンの状態はレリーズボタンの全押し状態であり、画像を記録するためのレリーズボタンオン状態である。この状態で撮影が行われる。また第１スイッチ１２５及び第２スイッチがオン状態の間は、連続撮影動作が行われる。操作部材１２４には、他に、ＩＳＯ設定ボタン、画像サイズ設定ボタン、画質設定ボタン、情報表示ボタン等不図示のスイッチが接続されており、スイッチの状態が検出されている。
【００１７】
１２７は、液晶駆動回路である。
１２８は、外部液晶表示部材である。
１２９は、ファインダ内液晶表示部材である。
液晶駆動回路１２７は、マイクロコンピュータ１２３の表示内容命令に従って、外部液晶表示部材１２８やファインダ内液晶表示部材１２９を駆動する。また、ファインダ内液晶表示部材１２９には、不図示のＬＥＤ等のバックライトが配置されており、そのＬＥＤも液晶駆動回路１２７で駆動される。マイクロコンピュータ１２３は撮影前に設定されているＩＳＯ感度、画像サイズ、画質に応じた、画像サイズの予測値データをもとに、メモリコントローラ１１９を通して、メモリの容量を確認した上で撮影可能残数を演算することができる。液晶駆動回路１２７は、必要に応じて、演算された撮影可能残数を外部液晶表示部材１２８及びファインダ内液晶表示部材１２９に表示させられる。
【００１８】
１３０は、不揮発性メモリ（ＥＥＰＲＯＭ）であり、カメラに電源が入れられていない状態でも、データを保存することができる。
１３１は、電源部であり、各ＩＣや駆動系に必要な電源を供給する。
１３２は、マイクである。
１３３は、音声のライン入力である
１３４は、Ａ／Ｄ変換器である。Ａ／Ｄ変換器１３４はマイク１３２、又は、音声ライン入力１３３のアナログ出力信号をデジタル信号に変換する。
１３５は、Ｄ／Ａ変換器である。Ｄ／Ａ変換器１３５はデジタル信号をアナログ出力信号に変換する。
１３６は、スピーカである。
【００１９】
次に、図２を参照して、本実施形態の制御装置の一例である携帯端末３０２を説明する。図２は、携帯端末３０２のハードウェア構成を示すブロック図である。携帯端末３０２の例として、いわゆるスマートフォン等の携帯電話、タブレットデバイス、ＰＤＡ（Personal Digital Assistant）、携帯型ＡＶプレイヤー、電子ブック、電子辞書等が挙げられる。なお、制御装置として、携帯端末３０２の代わりにＰＣ等を用いてもよい。
【００２０】
（携帯端末のハードウェア構成）
携帯端末３０２は、図２に示す各部から構成される。
２００は、ＣＰＵであり、携帯端末３０２で実行される処理を統括的に制御する。
２０１は、フラッシュメモリであり、内蔵カメラ２０３により撮像されたデジタル写真画像や動画像等の各種コンテンツ、及び、ＣＰＵ２００が実行する各種制御プログラムや各種アプリケーションプログラム等を記憶する。
２０２は、ＲＡＭであり、ＣＰＵ２００の作業領域として用いられ、ＣＰＵ２００が処理するコンテンツ等の各種データや、各種アプリケーションのプログラムを一時的に格納する。なお、ＲＡＭ２０２は記憶手段の一例である。
２０３は、内蔵カメラである。２０４は、マイクである。
【００２１】
２０５は、スピーカである。２０６は、イヤホンである。イヤホン２０６及びスピーカ２０５は、フラッシュメモリ２０１等に記憶された音声信号、又は通信部２１３、外部Ｉ／Ｆ２１４等から入力された音声信号を出力する。
２０７は、ＧＰＳ（Global Positioning System）センサである。
２０８は、電子コンパスである。
２１０は、タッチパネルであり、アプリケーションの実行により写真やＧＵＩが表示された状態において、ユーザのタッチ操作を検出し、ＣＰＵ２００へ伝える。タッチパネル２１０の動作方式としては、例えば抵抗被膜方式や静電容量方式が用いられるが、その他の方式が用いられてもよい。タッチパネル２１０は、例えば、写真表示アプリケーションの実行中に、ユーザが写真を選択して全画面表示をしたり、ピンチインやピンチアウトによる画像の拡大や縮小をしたりすることを可能にする。
【００２２】
２１１は、液晶表示部である。液晶表示部２１１は、例えばＴＦＴ（Thin Film Transistor）等のＬＣＤ（liquid crystal display）やＯＥＬＤ（Organic Electro-Luminescence Display）である。液晶表示部２１１は、いわゆるＧＵＩを表示する。液晶表示部２１１はタッチパネル２１０と一体的に設けられている。なお、液晶表示部２１１は表示手段の一例である。
２１２は、スイッチであり、例えば電源スイッチ、起動ボタン等、タッチパネル２１０では入力できないユーザの操作等を受け付け、入力信号をＣＰＵ２００へ伝える。
２１３は、通信部であり、インターネットやＬＡＮ（Local Area Network）等のネットワークを介して、他の機器との間で通信処理を行う。通信部２１３は、無線ＬＡＮモジュールを有してもよいし、ＷＷＡＮ（Wireless Wide Area Network）モジュールを有してもよい。
【００２３】
２１４は、外部Ｉ／Ｆ（インタフェース）である。外部Ｉ／Ｆ２１４は、例えばＵＳＢ（Universal Serial Bus）やＨＤＭＩ（登録商標）（High-Definition Multimedia Interface）等の各種規格に準じて、データのやり取りを行う。
２１５は、携帯端末３０２用の電源である。電源２１５には、一般的にリチウムイオン電池等の充電型の電源が用いられている。
なお、携帯端末３０２は、通話用のアンテナや通話用の通信モジュール等を有していてもよい。
【００２４】
（通信システムの構成）
次に、図３を参照して、本実施形態の通信システムについて説明する。図３は、本実施形態の通信システムの構成を示す概念図である。本実施形態の通信システムは、デジタルカメラ３０１と携帯端末３０２とアクセスポイント３０３とを備える。デジタルカメラ３０１と携帯端末３０２とは、アクセスポイント３０３を介して、無線ＬＡＮで接続する。
なお、デジタルカメラ３０１と携帯端末３０２との間の通信は、本実施形態のようにアクセスポイント３０３等を介してのインフラストラクチャー接続に限定されるものではない。デジタルカメラ３０１と携帯端末３０２との間の通信は、アドホックネットワーク等を用いた直接接続であってもよい。また、デジタルカメラ３０１又は携帯端末３０２の一方が簡易的なアクセスポイントとなり、デジタルカメラ３０１と携帯端末３０２との間で、インフラストラクチャー接続によって直接通信を確立してもよい。
【００２５】
（携帯端末のソフトウェア構成）
次に、図４を参照して、携帯端末３０２のソフトウェア構成を説明する。図４は、携帯端末のソフトウェア構成とデジタルカメラ３０１との関係を示す図である。携帯端末３０２は、デジタルカメラ３０１を制御するカメラ制御アプリケーション４０１を備える。ユーザは、例えばインターネット上の所定のサーバからカメラ制御アプリケーション４０１をダウンロードし、携帯端末３０２にインストールすることが可能である。カメラ制御アプリケーション４０１は、アプリケーション本体４０２とカメラ制御ＳＤＫ４０３とを備える。
【００２６】
カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１との通信モジュールである。カメラ制御アプリケーション４０１がインストールされた携帯端末３０２によるデジタルカメラ３０１との直接の通信は、カメラ制御ＳＤＫ４０３を介して行われる。すなわち、カメラ制御ＳＤＫ４０３は、主としてデジタルカメラ３０１との通信を担うソフトウェアプログラムである。カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１のベンダからアプリケーション開発者に提供されることを想定している。アプリケーション開発者は、カメラ制御アプリケーション４０１のインストールが想定される携帯端末３０２に応じて、携帯端末のＯＳ向けに提供されるカメラ制御ＳＤＫ４０３をカメラ制御アプリケーション４０１に組み込むか否かを決定する。
アプリケーション本体４０２は、カメラ制御アプリケーション４０１の動作の全体を管理し、デジタルカメラ３０１との通信以外の機能、例えばユーザ操作の受け付け、ＧＵＩの表示、カメラ制御アプリケーション４０１の起動・終了等を行う。
【００２７】
（一般的な処理シーケンス）
次に、図５を参照して、デジタルカメラ３０１と携帯端末３０２とが通信接続したときの一般的な処理のシーケンスを説明する。図５は、携帯端末３０２がデジタルカメラ３０１にオペレーションを送信するときのシーケンス図である。図５のシーケンス図では、携帯端末３０２とデジタルカメラ３０１との間での通信接続は確立しているものとする。
ステップＳ５０１において、アプリケーション本体４０２は、制御したい内容に対応するカメラ制御ＳＤＫ４０３のアプリケーションプログラミングインタフェース（以下、ＡＰＩという）をコールし、カメラ制御ＳＤＫ４０３に処理を依頼する。
【００２８】
ステップＳ５０２において、カメラ制御ＳＤＫ４０３は、アプリケーション本体４０２からのＡＰＩコールを受けると、コールされたＡＰＩの処理内容に適したカメラ制御プロトコルのオペレーションＩＤを特定する。そして、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１にオペレーションを送信する。
ステップＳ５０３において、デジタルカメラ３０１は、カメラ制御ＳＤＫ４０３からのオペレーションを受信すると、要求されたオペレーションＩＤに対応するカメラの制御を実行する。すなわち、デジタルカメラ３０１は、携帯端末３０２からのオペレーションを実行する。
【００２９】
ここでオペレーションについて説明する。オペレーションとは、デジタルカメラ３０１に対する制御コマンドである。オペレーションは、主にデジタルカメラ３０１が有する画像を送信させるオペレーションと、デジタルカメラ３０１の撮影機能を制御するオペレーションとに分類される。デジタルカメラ３０１が有する画像を送信させるオペレーションとしては、例えばデジタルカメラ３０１が保持する画像データを携帯端末３０２等の外部装置に送信させる「画像取得」がある。撮影機能を制御するオペレーションとしては、例えばデジタルカメラ３０１に静止画撮影動作を行わせる「レリーズ」がある。レリーズによりリモート撮影が可能になる。その他、デジタルカメラ３０１から携帯端末３０２等の外部装置にいわゆるライブビュー画像を送信する「ＰＣ  ＬｉｖｅＶｉｅｗ」（ＰＣＬＶ）、デジタルカメラ３０１に動画撮影動作を行わせる「動画記録」等がある。また、デジタルカメラ３０１の設定を変更する「設定値変更」がある。レリーズのオペレーションには、レリーズ開始要求及びレリーズ停止要求がある。ＰＣＬＶのオペレーションには、ＰＣＬＶ開始要求、ＰＣＬＶ画像取得要求及びＰＣＬＶ停止要求がある。動画記録のオペレーションには、動画記録開始要求及び動画記録終了要求がある。なお、以降ではＰＣＬＶにより送信されるライブビュー画像をＰＣＬＶ画像ともいう。
【００３０】
このように、デジタルカメラ３０１は、カメラ制御ＳＤＫ４０３からのオペレーションによって制御される。しかし、デジタルカメラ３０１は、動画記録中等によりデジタルカメラ３０１のＣＰＵ処理負荷が高い場合、携帯端末３０２用にＰＣＬＶ画像を作成して送信することや、携帯端末３０２への画像送信等ができないことがある。
そこで、本実施形態のカメラ制御ＳＤＫ４０３は、制御モードに応じてデジタルカメラ３０１に対して送信できるオペレーションを異ならせるようにする。制御モードには、動画記録中モードと通常モードとがある。動画記録中モードは、複数あるデジタルカメラ３０１の動作状態のうち、デジタルカメラ３０１の動作状態が動画記録中のときの制御モードである。通常モードは、デジタルカメラ３０１の動作状態が動画記録中以外のときの制御モードである。
【００３１】
カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１から制御禁止通知を受信することで、制御モードを切り替える。カメラ制御ＳＤＫ４０３は、種別が「通常」である制御禁止通知を受信すると通常モードになり、種別が「動画記録中」である制御禁止通知を受信すると動画記録中モードになる。なお、後述の通り、カメラ制御ＳＤＫ４０３がデジタルカメラ３０１に接続要求を送信した直後は、種別が「通常」である制御禁止通知を受信したときと同様に、通常モードになるものとする。
【００３２】
次に、カメラ制御ＳＤＫ４０３が、デジタルカメラ３０１に送信できる命令及び送信できない命令を判断する方法を説明する。なお、この判断の方法は判断手段による処理の一例である。
携帯端末３０２のＲＡＭ２０２には、図８に示す命令テーブル８０１が記憶される。命令テーブル８０１は、カメラ制御ＳＤＫ４０３がデジタルカメラ３０１から受信する制御禁止通知の種別と、カメラ制御ＳＤＫ４０３がデジタルカメラ３０１に所定のオペレーションを送信できるか否かの情報とが関連付けられたテーブルである。図８に示すように、オペレーションとしては、レリーズ、ＰＣＬＶ、動画記録、画像取得、及び、設定値変更がある。また、図８の「○」はオペレーションを送信できることを表し、「×」はオペレーションを送信できないことを表す。なお、「×」となっているオペレーションは、本発明における禁止命令である。
図８から分かるように、カメラ制御ＳＤＫ４０３は、「通常」である制御禁止通知を受信したときは、通常モードであり、命令テーブル８０１を参照して、命令テーブル８０１に示す全てのオペレーションを送信できると判断する。また、カメラ制御ＳＤＫ４０３は、「動画記録中」である制御禁止通知を受信したときは、動画記録中モードであり、命令テーブル８０１を参照して、動画記録のオペレーションのみ送信でき、その他のオペレーションを送信できないと判断する。
【００３３】
（処理シーケンス）
次に、図７を参照して、デジタルカメラ３０１と携帯端末３０２とが通信接続した際の処理を説明する。図７は、デジタルカメラ３０１及び携帯端末３０２の処理の流れの例を示すシーケンス図である。図７の処理は、カメラ制御アプリケーション４０１が起動した携帯端末３０２とデジタルカメラ３０１との間で通信接続が確立したときに開始する。なお、本処理におけるデジタルカメラ３０１の処理は、マイクロコンピュータ１２３が、入力信号やプログラムにしたがってデジタルカメラ３０１の各部を制御することにより実現される。また、本処理における携帯端末３０２の処理は、ＣＰＵ２００が、入力信号やプログラムにしたがって携帯端末３０２の各部を制御することにより実現される。
以下の処理において実際の主体はアプリケーション本体４０２又はカメラ制御ＳＤＫ４０３を読み込んだＣＰＵ２００である。しかし、理解を容易にするために、カメラ制御アプリケーション４０１に含まれるアプリケーション本体４０２による処理とカメラ制御ＳＤＫ４０３による処理とを分けて説明する。
【００３４】
ステップＳ７０１において、アプリケーション本体４０２は、カメラ制御ＳＤＫ４０３にデジタルカメラ３０１との接続を要求する。
ステップＳ７０２において、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１に対して、デバイス情報の取得要求を送信する。デジタルカメラ３０１は、デバイス情報の取得要求を受信する。
ステップＳ７０３において、デジタルカメラ３０１は、デバイス情報を携帯端末３０２に送信する。このデバイス情報には、デジタルカメラ３０１が対応するオペレーション、有効なイベント、有効なプロパティが含まれる。カメラ制御ＳＤＫ４０３は、デバイス情報を受信する。
【００３５】
ここで、イベントについて説明する。イベントとは、デジタルカメラ３０１で発生した情報を携帯端末３０２等の外部装置に通知するための情報である。イベントの例として、デジタルカメラ３０１の設定値がデジタルカメラ３０１側で変更された場合のイベントや、デジタルカメラ３０１側の操作で撮影が行われた場合のイベントが挙げられる。
次に、プロパティについて説明する。プロパティとは、デジタルカメラ３０１の設定値（パラメータ）であり、例えば絞り値、シャッタースピード値、ＩＳＯ感度等が挙げられる。
【００３６】
ステップＳ７０４において、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１に対し接続要求を送信する。デジタルカメラ３０１は、接続要求を受信する。カメラ制御ＳＤＫ４０３は、接続要求の送信直後は、通常モードで動作する。したがって、カメラ制御ＳＤＫ４０３は、必要に応じて図８の命令テーブル８０１を参照して、デバイス情報で受信したデジタルカメラ３０１が対応する全てのオペレーションをデジタルカメラ３０１に送信できると判断する。なお、このオペレーションは、本発明における命令に相当する。
ステップＳ７０５において、デジタルカメラ３０１は、接続要求を受信すると、デジタルカメラ３０１内の全てのプロパティ値をイベントとして発行し、携帯端末３０２に対してイベント発生通知を送信する。カメラ制御ＳＤＫ４０３は、イベント発生通知を受信する。
ステップＳ７０６において、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１にイベント取得要求を送信する。デジタルカメラ３０１は、イベント取得要求を受信すると、デジタルカメラ３０１内の全ての設定値をプロパティ値としてカメラ制御ＳＤＫ４０３に送信する。
ステップＳ７０７において、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１から受信したイベント内容を確認し、デジタルカメラ３０１の設定値をプロパティ値としてアプリケーション本体４０２に通知する。アプリケーション本体４０２は、デジタルカメラ３０１の設定値を受け取る。
以後、デジタルカメラ３０１内で設定値が変わると、ステップＳ７０５からステップＳ７０７のシーケンスで、デジタルカメラ３０１からアプリケーション本体４０２に設定値が通知される。
【００３７】
次に、図６Ａを参照して、デジタルカメラ３０１を制御するための画面を説明する。
図６Ａは、ユーザがカメラ制御アプリケーション４０１を起動したときに、アプリケーション本体４０２が携帯端末３０２の液晶表示部２１１に表示させる処理選択画面６００Ａの図である。処理選択画面６００Ａは、カメラ制御アプリケーション４０１の起動と共に表示してもよく、アプリケーション本体４０２が、図７のステップＳ７０７の通知を受けた後に表示してもよい。
処理選択画面６００Ａは、ＧＵＩ画面であり、画像取得ボタン６０１及びカメラ制御ボタン６０２が含まれる。画像取得ボタン６０１は、デジタルカメラ３０１から携帯端末３０２に画像を送信する処理を開始するためのボタンである。カメラ制御ボタン６０２は、携帯端末３０２からデジタルカメラ３０１を遠隔制御するためのモードに移行するためのボタンである。
【００３８】
カメラ制御ボタン６０２がユーザにより押下されると、アプリケーション本体４０２は携帯端末３０２の液晶表示部２１１に、図６Ｂに示すカメラ制御画面６００Ｂを表示し、携帯端末３０２からデジタルカメラ３０１を制御できるようになる。カメラ制御画面６００Ｂは、ライブビュー領域６１１、静止画撮影ボタン６１２、動画撮影ボタン６１３、ライブビューボタン６１４、露出補正ボタン６１５及びカメラ状態表示領域６１６を備える。カメラ制御画面６００ＢにはＰＣＬＶ画像（ライブビュー画像）が表示される。また、カメラ制御画面６００Ｂから、静止画撮影、動画撮影及び露出補正の制御ができる。
【００３９】
ライブビュー領域６１１は、デジタルカメラ３０１から受信するＰＣＬＶ画像を表示するための領域である。
静止画撮影ボタン６１２は、デジタルカメラ３０１に静止画撮影を指示するためのボタンである。
動画撮影ボタン６１３は、デジタルカメラ３０１に動画記録の開始を指示するためのボタンである。なお、動画記録中に動画撮影ボタン６１３が押下された場合は、携帯端末３０２はデジタルカメラ３０１に動画記録の終了を指示する。
【００４０】
ライブビューボタン６１４は、デジタルカメラ３０１からＰＣＬＶ画像を取得してライブビュー領域６１１に表示するか否かを設定するためのボタンである。ＯＮ状態の場合、携帯端末３０２はデジタルカメラ３０１からＰＣＬＶ画像を取得し、ライブビュー領域６１１に表示する。ＯＦＦ状態の場合、携帯端末３０２はデジタルカメラ３０１からＰＣＬＶ画像を取得せず、ライブビュー領域６１１は非表示状態となる。
露出補正ボタン６１５は、デジタルカメラ３０１に露出補正を指示するためのボタンであり、ユーザにより押下されると補正値の候補（例えば−２〜＋２）が表示され、ユーザは所望の補正値を設定できる。
カメラ状態表示領域６１６は、デジタルカメラ３０１の状態を表示する領域であり、デジタルカメラ３０１から通知された状態を表示する。
【００４１】
次に、ユーザの操作により、図６Ａに示す処理選択画面６００Ａのカメラ制御ボタン６０２が押下された場合について、図７を参照して説明する。
ステップＳ７０８において、アプリケーション本体４０２は、図６Ｂに示すカメラ制御画面６００Ｂを液晶表示部２１１に表示させる。そして、アプリケーション本体４０２は、ＰＣＬＶ開始要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３にＰＣＬＶ開始要求を送る。
ステップＳ７０９において、カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、通常モードであるためＰＣＬＶ開始要求のオペレーションを送信できると判断する。そして、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１にＰＣＬＶ開始要求を送信する。デジタルカメラ３０１は、ＰＣＬＶ開始要求を受信すると、ＰＣＬＶ画像の作成を開始する。
【００４２】
ステップＳ７１０において、アプリケーション本体４０２は、ＰＣＬＶ画像取得要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３にＰＣＬＶ画像取得要求を送る。
ステップＳ７１１において、カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、通常モードであるためＰＣＬＶ画像取得要求のオペレーションを送信できると判断する。そして、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１に対してＰＣＬＶ画像取得要求を送信する。デジタルカメラ３０１はＰＣＬＶ画像取得要求を受信すると、カメラ制御ＳＤＫ４０３にＰＣＬＶ画像を送信する。カメラ制御ＳＤＫ４０３は受信したＰＣＬＶ画像をアプリケーション本体４０２に送る。アプリケーション本体４０２は、ＰＣＬＶ画像を受け取り、ライブビュー領域６１１に表示する。
【００４３】
次に、ステップＳ７１１の後に、ユーザの操作により、図６Ｂに示すカメラ制御画面６００Ｂの動画撮影ボタン６１３が押下された場合について、図７を参照して説明する。
ユーザの操作により動画撮影ボタン６１３が押下されると、ステップＳ７１２において、アプリケーション本体４０２は、動画記録開始要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３に動画記録開始要求を送る。
ステップＳ７１３において、カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、通常モードであるため動画記録開始要求のオペレーションを送信できると判断する。そして、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１に動画記録開始要求を送信する。デジタルカメラ３０１は、動画記録開始要求を受信する。
【００４４】
ステップＳ７１４において、デジタルカメラ３０１は、携帯端末３０２へのカメラ設定値の変更イベント等、全てのイベント通知処理を停止する。そして、デジタルカメラ３０１は、動画記録を開始し、動作状態が動画記録中になる。
ステップＳ７１５において、デジタルカメラ３０１は、現在の動作状態が動画記録中のため、携帯端末３０２に種別が「動画記録中」の制御禁止通知を送信する。カメラ制御ＳＤＫ４０３は、種別が「動画記録中」の制御禁止通知を受信すると、カメラ制御ＳＤＫ４０３の制御モードを動画記録中モードに切り替える。なお、デジタルカメラ３０１が制御禁止通知を送信する処理は、送信手段による処理の一例である。また、カメラ制御ＳＤＫ４０３が制御禁止通知を受信する処理は、受信手段による処理の一例である。
【００４５】
ステップＳ７１６において、アプリケーション本体４０２は、ＰＣＬＶ画像取得要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３にＰＣＬＶ画像取得要求を送る。カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、動画記録中モードであるためＰＣＬＶ画像取得要求のオペレーションを送信できないと判断し、デジタルカメラ３０１にＰＣＬＶ画像取得要求を送信しない。
ステップＳ７１７において、カメラ制御ＳＤＫ４０３は、アプリケーション本体４０２に対して「ＢＵＳＹ」を返す。アプリケーション本体４０２は、カメラ制御ＳＤＫ４０３から「ＢＵＳＹ」を受け取ると、図６Ｃに示すカメラ制御画面６００Ｃのように、ライブビュー領域６１１の表示をグレーアウトする。そして、アプリケーション本体４０２は、カメラ状態表示領域６１６に「ＢＵＳＹ」を一定時間（例えば３秒間）表示する。なお、ステップＳ７１６は表示制御手段による処理の一例である。
【００４６】
次に、ステップＳ７１７の後に、ユーザの操作により、図６Ｃに示すカメラ制御画面６００Ｃの露出補正ボタン６１５が押下された場合について、図７を参照して説明する。
ステップＳ７１８において、アプリケーション本体４０２は、設定値変更要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３に露出値の設定値変更要求を送る。カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、動画記録中モードであるため設定値変更のオペレーションを送信できないと判断し、露出値の設定値変更要求を送信しない。
ステップＳ７１９において、カメラ制御ＳＤＫ４０３は、アプリケーション本体４０２に対して「ＢＵＳＹ」を返す。アプリケーション本体４０２は、カメラ制御ＳＤＫ４０３から「ＢＵＳＹ」を受け取ると、カメラ状態表示領域６１６に「ＢＵＳＹ」を一定時間（例えば３秒間）表示する。
【００４７】
次に、ステップＳ７１９の後に、ユーザの操作により、図６Ｃに示すカメラ制御画面６００Ｃの動画撮影ボタン６１３が押下された場合について、図７を参照して説明する。
ステップＳ７２０において、アプリケーション本体４０２は、動画記録終了要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３に動画記録終了要求を送る。
ステップＳ７２１において、カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、動画記録中モードであるため動画記録終了要求のオペレーションを送信できると判断する。そして、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１に対して、動画記録終了要求を送信する。デジタルカメラ３０１は、動画記録終了要求を受信する。
【００４８】
ステップＳ７２２において、デジタルカメラ３０１は、動画記録を終了する。
ステップＳ７２３において、デジタルカメラ３０１は、携帯端末３０２に制御禁止解除通知を送信する。制御禁止解除通知は、種別が「通常」の制御禁止通知である。カメラ制御ＳＤＫ４０３は、制御禁止解除通知を受信すると、カメラ制御ＳＤＫ４０３の制御モードを通常モードに切り替える。
ステップＳ７２４からステップＳ７２６において、アプリケーション本体４０２は、デジタルカメラ３０１の設定値を受け取る。なお、ステップＳ７２４からステップＳ７２６までの処理は、上述のステップＳ７０５からステップＳ７０７までの処理と同様のため詳しい説明を省略する。
【００４９】
ステップＳ７２７において、アプリケーション本体４０２は、ＰＣＬＶ画像取得要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３にＰＣＬＶ画像取得要求を送る。
ステップＳ７２８において、カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、通常モードであるためＰＣＬＶ画像取得要求のオペレーションを送信できると判断する。そして、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１に対してＰＣＬＶ画像取得要求を送信する。デジタルカメラ３０１はＰＣＬＶ画像取得要求を受信すると、カメラ制御ＳＤＫ４０３にＰＣＬＶ画像を送信する。カメラ制御ＳＤＫ４０３は受信したＰＣＬＶ画像をアプリケーション本体４０２に送る。アプリケーション本体４０２は、ＰＣＬＶ画像を受け取り、ライブビュー領域６１１に表示して、ＰＣＬＶが再開する。
【００５０】
次に、ステップＳ７２８の後に、ユーザの操作により、図６Ｂに示すカメラ制御画面６００Ｂの露出補正ボタン６１５で露出値が変更される操作がされた場合について、図７を参照して説明する。
ステップＳ７２９において、アプリケーション本体４０２は、設定値変更要求のＡＰＩをコールすることで、カメラ制御ＳＤＫ４０３に露出値の設定値変更要求を送る。
ステップＳ７３０において、カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照して、通常モードであるため設定値変更要求のオペレーションを送信できると判断する。そして、カメラ制御ＳＤＫ４０３は、デジタルカメラ３０１に対して、露出値の設定値変更要求を送信する。デジタルカメラ３０１は、露出値の設定値変更要求を受信し、デジタルカメラ３０１の露出値の設定を指定された値に変更する。
【００５１】
以上のように、携帯端末３０２は、デジタルカメラ３０１が動画記録中か否かに応じて、デジタルカメラ３０１に送信できるオペレーションを変え、ＣＰＵ処理負荷の高い動画記録中にはオペレーションを制限して、ＣＰＵ処理負荷が増えることを避けられる。ただし、デジタルカメラ３０１が動画記録中のときでも、動画記録のオペレーションを送信できるようにしている。これにより、デジタルカメラ３０１がＣＰＵ処理負荷の高い動画記録中であっても、携帯端末３０２から動画記録を終了させる制御ができる。したがって、携帯端末３０２によるデジタルカメラ３０１の制御が必要以上に制限されることを抑えて、通信装置及び制御装置の利便性を向上させることができる。また、デジタルカメラ３０１に接続する携帯端末３０２に最適な制御機能を提供できる。
【００５２】
＜第２実施形態＞
第１実施形態では、カメラ制御ＳＤＫ４０３がアプリケーション本体４０２からの設定変更要求等を受けたときに、カメラ制御ＳＤＫ４０３がデジタルカメラ３０１に所定のオペレーションを送信できるか否かを判断する例について説明した。しかし、第１実施形態の構成では、ユーザが図６Ｂのカメラ制御画面６００Ｂで実行できない制御に対応するボタン等を操作した後に、この操作に対応する制御を実行できるか否か判断されることになる。このため、カメラ制御画面６００Ｂでは、実行できない制御に対応するボタン等は操作できないようすることで、ユーザに分かりやすいインタフェースにできる。
そこで、本実施形態では、デジタルカメラ３０１からカメラ制御ＳＤＫ４０３が制御禁止通知を受けたときに、カメラ制御ＳＤＫ４０３が送信できないオペレーションをアプリケーション本体４０２に通知する。アプリケーション本体４０２は、通知されたオペレーションの制御に対応するボタン等をユーザが操作できないようにする。
【００５３】
以下、本実施形態について詳細に説明する。なお、本実施形態における第１実施形態と共通する部分は、説明を簡略化又は省略し、本実施形態に特有の部分を中心に説明する。
図９を参照して、デジタルカメラ３０１と携帯端末３０２とが通信接続した際の処理を説明する。図９は、デジタルカメラ３０１及び携帯端末３０２の処理の流れの例を示すシーケンス図である。
ステップＳ９０１からステップＳ９１５において、アプリケーション本体４０２が図６Ｂのカメラ制御画面６００Ｂの表示をする。また、動画撮影ボタン６１３が押された後に、デジタルカメラ３０１は、カメラ制御ＳＤＫ４０３に、種別が「動画記録中」の制御禁止通知を送信する。なお、ステップＳ９０１からステップＳ９１５までの処理は、図７のステップＳ７０１からステップＳ７１５までの処理と同等のため詳しい説明を省略する。
【００５４】
ステップＳ９１６において、カメラ制御ＳＤＫ４０３は、ＲＡＭ２０２に格納されている図８の命令テーブル８０１を参照し、種別が「動画記録中」の制御禁止通知を受信したときに送信できないオペレーションに対応するＡＰＩを選定する。カメラ制御ＳＤＫ４０３は、選定したＡＰＩをアプリケーション本体４０２に通知する。送信できないオペレーションとして通知されるＡＰＩは、レリーズ、ＰＣＬＶ、画像取得、及び、設定値変更のオペレーションについてのＡＰＩである。また、カメラ制御ＳＤＫ４０３は、オペレーションを送信できない理由をアプリケーション本体４０２に通知する。ステップＳ９１６の場合のオペレーションを送信できない理由は、デジタルカメラ３０１が動画記録中、というものである。
【００５５】
ステップＳ９１７において、アプリケーション本体４０２は、図６Ｄに示すカメラ制御画面６００Ｄのように、送信できないオペレーションに対応する操作ボタンをグレーアウトして表示する。すなわち、アプリケーション本体４０２は、レリーズに対応する静止画撮影ボタン６１２、ＰＣＬＶに対応するライブビューボタン６１４及びライブビュー領域６１１、並びに、設定値変更に対応する露出補正ボタン６１５をグレーアウトして表示する。そして、グレーアウトされたボタンは操作できないようにする。また、アプリケーション本体４０２は、カメラ制御画面６００Ｄのカメラ状態表示領域６１６に「動画記録中」のメッセージを表示する。
こうして、デジタルカメラ３０１に送信できるオペレーションに対応するボタンと、デジタルカメラ３０１に送信できないオペレーションに対応するボタンとを区別できるようなカメラ制御画面６００Ｄが表示される。このように、送信できないオペレーションに対応する項目をグレーアウトすることにより、ユーザは実行できない制御を認識できる。
【００５６】
ステップＳ９１８からステップＳ９２１において、ユーザにより動画撮影ボタン６１３が押されて、デジタルカメラ３０１は、動画記録を終了する。また、デジタルカメラ３０１は、カメラ制御ＳＤＫ４０３に禁止解除通知を送信する。ステップＳ９１８からステップＳ９２１までの処理は、図７のステップＳ７２０からステップＳ７２３までの処理と同等のため詳しい説明を省略する。
ステップＳ９２２において、制御禁止解除通知を受信したカメラ制御ＳＤＫ４０３は、アプリケーション本体４０２に制御禁止解除通知を送る。アプリケーション本体４０２は制御禁止解除通知を受ける。
ステップＳ９２３において、アプリケーション本体４０２は、実行できないオペレーションとしてグレーアウトしていたボタンのグレーアウトを解除し、グレーアウトしていたボタンを操作できるようにする。こうして、アプリケーション本体４０２は、図６Ｂに示す通常のカメラ制御画面６００Ｂの表示に戻す。カメラ状態表示領域６１６はメッセージなしの状態にする。これにより、ユーザは制御の禁止が解除されたことを認識できる。
【００５７】
なお、ステップＳ９２２及びステップＳ９２３の代わりに、次に説明するステップＳ９２２Ａ及びＳ９２３Ａの処理としてもよい。
制御禁止解除通知は、種別が「通常」の制御禁止通知である。そこで、ステップＳ９２２Ａにおいて、カメラ制御ＳＤＫ４０３は、図８の命令テーブル８０１を参照し、種別が「通常」の制御禁止通知を受信したときに送信できないオペレーションに対応するＡＰＩを選定する。ここで、命令テーブル８０１から分かるように、種別が「通常」の制御禁止通知を受信したときは、命令テーブル８０１に示す全てのオペレーションについて、デジタルカメラ３０１に送信できる。そこで、カメラ制御ＳＤＫ４０３は、送信できないオペレーションに対応するＡＰＩがない旨を、アプリケーション本体４０２に通知する。カメラ制御ＳＤＫ４０３は、送信できないオペレーションに対応するＡＰＩがない旨の通知を、カメラ制御アプリケーション４０１が起動したときにも行うようにしてもよい。
ステップＳ９２３Ａにおいて、送信できないオペレーションに対応するＡＰＩがない旨の通知を受けたアプリケーション本体４０２は、ステップＳ９２３と同様に、実行できないオペレーションとしてグレーアウトしていたボタンのグレーアウトを解除する。そして、アプリケーション本体４０２は、グレーアウトしていたボタンを操作できるようにする。こうして、アプリケーション本体４０２は、図６Ｂに示す通常のカメラ制御画面６００Ｂの表示に戻す。カメラ状態表示領域６１６はメッセージなしの状態にする。これにより、ユーザは制御の禁止が解除されたことを認識できる。
【００５８】
ステップＳ９２４からＳ９３０において、アプリケーション本体４０２は、デジタルカメラ３０１の設定値を受け取る。そして、アプリケーション本体４０２はデジタルカメラ３０１のプロパティ値を受け取り、ＰＣＬＶ画像取得要求がデジタルカメラ３０１に送信される。その後、ユーザにより、図６Ｂに示すカメラ制御画面６００Ｂの露出補正ボタン６１５で露出値の変更の操作がされると、デジタルカメラ３０１に露出補正の設定値変更要求が送信される。なお、ステップＳ９２４からＳ９３０までの処理は、図７のステップＳ７２４からＳ７３０までの処理と同様のため詳しい説明を省略する。
【００５９】
このように、本実施形態では、図６Ｄに示すカメラ制御画面６００Ｄのようにデジタルカメラ３０１に送信できないオペレーションに対応する操作ボタンはグレーアウトされる。したがって、ユーザは携帯端末３０２から実行できない制御を認識できる。また、本実施形態では、第１実施形態と同様に、携帯端末３０２及びデジタルカメラ３０１の利便性が向上し、デジタルカメラ３０１に接続する携帯端末３０２に最適な制御機能を提供できる。
【００６０】
＜第３実施形態＞
上記の実施形態では、デジタルカメラ３０１の処理負荷が高い例として、ＣＰＵ処理負荷の高い動画記録の例を挙げた。しかし、デジタルカメラ３０１の処理負荷の高い他の例として、カードアクセス負荷が高い静止画の連写、並びに、ＣＰＵ及びカードアクセスの負荷が共に高い動画のトランスコード等を挙げることができる。
そこで、本実施形態では、デジタルカメラ３０１の動作状態が動画記録中、静止画の連写中及び動画のトランスコード中のときに、携帯端末３０２によるデジタルカメラ３０１の制御が制限される例を説明する。なお、以下では、本実施形態における上記の実施形態と共通する部分の説明を簡略化又は省略し、本実施形態に特有の部分を中心に説明する。
【００６１】
デジタルカメラ３０１が静止画の連写撮影を行う場合、デジタルカメラ３０１は、カメラ制御ＳＤＫ４０３に、種別が「連写中」の制御禁止通知を送信する。デジタルカメラ３０１が動画のトランスコードを行う場合、デジタルカメラ３０１は、カメラ制御ＳＤＫ４０３に種別が「トランスコード中」の制御禁止通知を送信する。デジタルカメラ３０１が動画記録を行う場合、デジタルカメラ３０１は、上記の実施形態と同様に、カメラ制御ＳＤＫ４０３に種別が「動画記録中」の制御禁止通知を送信する。
【００６２】
本実施形態では、図８に示す命令テーブル８０１の代わりに、図１０に示す命令テーブル８０２が使われる。命令テーブル８０２には、図８の命令テーブル８０１に示すオペレーションの他に、トランスコードのオペレーションが追加されている。トランスコードのオペレーションには、トランスコード開始要求及びトランスコード終了要求がある。また、命令テーブル８０２には、図８の命令テーブル８０１に示す制御禁止通知種別の他に、「連写中」及び「トランスコード中」が追加されている。
カメラ制御ＳＤＫ４０３は、種別が「通常」の制御禁止通知を受信したとき、命令テーブル８０２を参照して、命令テーブル８０２に示す全てのオペレーションを送信できると判断する。また、カメラ制御ＳＤＫ４０３は、種別が「動画記録中」の制御禁止通知を受信したとき、命令テーブル８０２を参照して、動画記録のオペレーションのみ送信でき、その他のオペレーションを送信できないと判断する。また、カメラ制御ＳＤＫ４０３は、種別が「連写中」の制御禁止通知を受信したとき、命令テーブル８０２を参照して、レリーズ及びＰＣＬＶのオペレーションのみ送信でき、その他のオペレーションを送信できないと判断する。また、カメラ制御ＳＤＫ４０３は、種別が「トランスコード中」の制御禁止通知を受信したとき、命令テーブル８０２を参照して、トランスコードのオペレーションのみ送信でき、その他のオペレーションを送信できないと判断する。
【００６３】
以上のように、携帯端末３０２は、デジタルカメラ３０１の動作状態が負荷の高い状態か否かに応じて、デジタルカメラ３０１に送信できるオペレーションを変える。デジタルカメラ３０１が動作状態の負荷の高い状態のとき、携帯端末３０２から少なくとも負荷の高い動作状態を停止させるための制御ができる。したがって、携帯端末３０２によるデジタルカメラ３０１の制御が必要以上に制限されることを抑えて、通信装置及び制御装置の利便性を向上させることができる。また、デジタルカメラ３０１に接続する携帯端末３０２に最適な制御機能を提供できる。
【００６４】
＜その他の実施形態＞
カメラ制御ＳＤＫ４０３からデジタルカメラ３０１に送信されるオペレーションの種類は、上述のものに限定されるものではない。また、制御禁止通知の種別も、図８の命令テーブル８０１や図１０の命令テーブル８０２に記載のものに限定されるものではない。
本発明は、上記の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
以上、本発明を実施形態と共に説明したが、上記実施形態は本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００６５】
３０１  デジタルカメラ
３０２  携帯端末
４０１  カメラ制御アプリケーション
４０２  アプリケーション本体
４０３  カメラ制御ＳＤＫ
【図１】
0006618303.tif 000002
【図２】
0006618303.tif 000003
【図３】
0006618303.tif 000004
【図４】
0006618303.tif 000005
【図５】
0006618303.tif 000006
【図６Ａ】
0006618303.tif 000007
【図６Ｂ】
0006618303.tif 000008
【図６Ｃ】
0006618303.tif 000009
【図６Ｄ】
0006618303.tif 000010
【図７】
0006618303.tif 000011
【図８】
0006618303.tif 000012
【図９】
0006618303.tif 000013
【図１０】
0006618303.tif 000014