(57)【要約】【課題】トランスコード処理を行って外部装置にデータを転送する場合に、通信処理の無駄を回避することが可能な通信装置を提供する。【解決手段】本発明に係る通信装置は、ネットワークを介して外部装置と通信を行う通信手段と、ネットワークを介して外部装置から実行可能な機能情報を取得する取得手段と、所定の機能を実行可能な外部装置に転送するデータのデータ形式を変換する場合に、データの転送先として選択された外部装置が、変換されたデータを受信可能であるか判定し、判定に応じて選択された外部装置と接続するように通信手段を制御する制御手段と、を有する。【選択図】図４
2017062626.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して外部装置と通信を行う通信手段と、
ネットワークを介して外部装置から実行可能な機能情報を取得する取得手段と、
所定の機能を実行可能な外部装置に転送するデータのデータ形式を変換する場合に、データの転送先として選択された外部装置が、前記変換されたデータを受信可能であるか判定し、前記判定に応じて前記選択された外部装置と接続するように前記通信手段を制御する制御手段と、
を有することを特徴とする通信装置。
【請求項２】
前記制御手段は、前記選択された外部装置が前記変換されたデータを受信可能であるかを、前記変換されたデータのデータサイズが変換によって確定する前に判定する、
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記制御手段は、前記選択された外部装置が前記変換されたデータを受信可能であるかを、前記選択された外部装置に転送するデータのデータ形式を変換した場合に予測されるデータサイズを用いて判定する、
ことを特徴とする請求項２に記載の通信装置。
【請求項４】
前記選択された外部装置に転送するデータのデータ形式を変換する変換手段をさらに有し、
前記制御手段は、前記判定に応じて、前記選択された外部装置に転送するデータを変換するように前記変換手段を制御する、
ことを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記制御手段は、前記選択された外部装置と接続した後に、前記変換されたデータを前記通信手段により前記選択された外部装置に転送する、
ことを特徴とする請求項１から４のいずれか１項に記載の通信装置。
【請求項６】
ネットワークを介して外部装置と通信を行う通信手段と、
ネットワークを介して外部装置から実行可能な機能情報を取得する取得手段と、
所定の機能を実行可能な外部装置に転送するデータのデータ形式を変換する変換手段と、
データの転送先として選択された外部装置と接続する前に、前記選択された外部装置に転送するデータを変換するように前記変換手段を制御する制御手段と、
を有することを特徴とする通信装置。
【請求項７】
前記制御手段は、前記選択された外部装置と接続した後に、前記変換されたデータを前記通信手段により前記選択された外部装置に転送するように制御する、
ことを特徴とする請求項６に記載の通信装置。
【請求項８】
前記制御手段は、前記選択された外部装置が前記変換されたデータを受信可能であるかを、前記変換手段により前記選択された外部装置に転送するデータのデータ形式を変換する前に判定する、
ことを特徴とする請求項６又は７に記載の通信装置。
【請求項９】
前記制御手段は、前記選択された外部装置が前記変換されたデータを受信可能であるかを、前記選択された外部装置に転送するデータのデータ形式を変換した場合に予測されるデータサイズを用いて判定する、
ことを特徴とする請求項８に記載の通信装置。
【請求項１０】
前記制御手段は、前記変換手段により前記選択された外部装置に転送するデータのデータ形式を変換した後に、前記所定の機能を実行可能な外部装置の検出を繰り返すように制御する、
ことを特徴とする請求項６から９のいずれか１項に記載の通信装置。
【請求項１１】
前記通信手段は、無線通信においてアクセスポイントとして動作可能である、
ことを特徴とする請求項１から１０のいずれか１項に記載の通信装置。
【請求項１２】
ネットワークを介して外部装置と通信を行う通信手段を有する通信装置の制御方法であって、
取得手段が、ネットワークを介して外部装置から実行可能な機能情報を取得する取得工程と、
所定の機能を実行可能な外部装置に転送するデータのデータ形式を変換する場合に、データの転送先として選択された外部装置が、前記変換されたデータを受信可能であるか判定し、前記判定に応じて前記選択された外部装置と接続するように前記通信手段を制御する制御工程と、
を有することを特徴とする通信装置の制御方法。
【請求項１３】
ネットワークを介して外部装置と通信を行う通信手段を有する通信装置の制御方法であって、
取得手段が、ネットワークを介して外部装置から実行可能な機能情報を取得する取得工程と、
所定の機能を実行可能な外部装置に転送するデータのデータ形式を変換する変換工程と、
制御手段が、データの転送先として選択された外部装置と接続する前に、前記選択された外部装置に転送するデータを変換するように前記変換工程を行う制御手段と、
を有することを特徴とする通信装置の制御方法。
【請求項１４】
コンピュータに、請求項１２又は１３に記載の通信装置の制御方法に係る各ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部装置と通信を行う通信装置およびその制御方法ならびにプログラムに関する。
【背景技術】
【０００２】
無線通信の普及に伴い、デジタルカメラなどの携帯型端末に無線通信機能を搭載して、外部装置に映像ファイル等のデータを送信することが提案されている（特許文献１）。例えば無線ＬＡＮを用いて外部装置にデータを送信する場合、携帯型端末は、まず外部装置の属する無線ＬＡＮネットワークに参加する処理を実行したうえで、外部装置と通信を確立する処理を実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１５２６８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、無線ＬＡＮネットワークへの参加や外部装置との通信を確立する処理を実行した後に、外部装置がその容量等によりデータを受信できないこととなると、それまでの通信処理が無駄になってしまう。さらに、映像ファイル等のデータの形式を変換（トランスコード）して外部装置に送信する場合、消費電力の大きな通信処理と変換処理とを動作させるため、これらの処理の後に外部装置がデータを受信できないこととなると、処理の無駄がより顕著になる。従って、無駄な処理の回避や計算リソースの効率的利用の観点から、外部装置に送信するデータに対する変換処理や外部装置との通信処理を適切に行うことが望まれている。
【０００５】
本発明は、上述の従来技術の問題点に鑑みてなされたものである。即ち、トランスコード処理を行って外部装置にデータを転送する場合に、通信処理の無駄を回避することが可能な通信装置およびその制御方法ならびにプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
この課題を解決するため、例えば本発明の通信装置は以下の構成を備える。すなわち、ネットワークを介して外部装置と通信を行う通信手段と、ネットワークを介して外部装置から実行可能な機能情報を取得する取得手段と、所定の機能を実行可能な外部装置に転送するデータのデータ形式を変換する場合に、データの転送先として選択された外部装置が、変換されたデータを受信可能であるか判定し、判定に応じて選択された外部装置と接続するように通信手段を制御する制御手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、トランスコード処理を行って外部装置にデータを転送する場合に、通信処理の無駄を回避することが可能になる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係る通信装置の一例としてのデジタルカメラの機能構成例を示すブロック図
【図２】本実施形態に係るデジタルカメラの通信機能に係るソフトウェア構成を示すブロック図
【図３】本実施形態に係るネットワーク構成の一例を示す模式図
【図４】実施形態１に係るデジタルカメラ及び外部装置間の動作シーケンスを示す模式図
【図５】実施形態１に係るデータ転送処理の一連の動作を示すフローチャート
【図６】実施形態１に係るデジタルカメラのＧＵＩ画面の一例を示す図
【図７】実施形態２に係るデータ転送処理の動作を示すフローチャート
【発明を実施するための形態】
【０００９】
（実施形態１）
以下、本発明の例示的な実施形態について、図面を参照して詳細に説明する。なお、以下では通信装置の一例として、通信によってデータを送受信可能な任意のデジタルカメラに本発明を適用した例を説明する。しかし、本発明は、デジタルカメラに限らず、通信によってデータを送受信可能な任意の電子機器にも適用可能である。これらの機器には、例えば携帯電話機、ゲーム機、タブレット端末、パーソナルコンピュータ、時計型や眼鏡型の情報端末などが含まれてよい。また、以下では、外部装置の一例としてデジタルカメラとのデータの送受信が可能な任意の携帯電話機を例に説明するが、通信によってデータを送受信可能な上述した任意の電子機器にも適用可能である。
【００１０】
さらに、本実施形態ではＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮシステムを用いた例について説明するが、通信形態は必ずしもＩＥＥＥ８０２．１１準拠の無線ＬＡＮには限らず他の方式であってもよい。即ちワイヤレスＵＳＢ、ＭＢＯＡ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＵＷＢ、ＺｉｇＢｅｅ（登録商標）等の他の無線通信方式を用いてもよい。また、有線ＬＡＮ等の有線通信媒体において実施してもよい。なお、ＭＢＯＡは、Ｍｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略である。また、ＵＷＢは、ワイヤレスＵＳＢ、ワイヤレス１３９４、ＷＩＮＥＴなどが含まれる。
【００１１】
（デジタルカメラ１００の構成）
図１は、本実施形態の通信装置の一例としてデジタルカメラ１００の機能構成例を示すブロック図である。なお、図１に示す機能ブロックの１つ以上は、ＡＳＩＣやプログラマブルロジックアレイ（ＰＬＡ）などのハードウェアによって実現されてもよいし、ＣＰＵやＭＰＵ等のプログラマブルプロセッサがソフトウェアを実行することによって実現されてもよい。また、ソフトウェアとハードウェアの組み合わせによって実現されてもよい。従って、以下の説明において、異なる機能ブロックが動作主体として記載されている場合であっても、同じハードウェアが主体として実現されうる。
【００１２】
撮像部１０１は、撮像光学系、イメージセンサ、デジタル画像処理部等を含み、撮像光学系によりイメージセンサに結像される被写体光学像を光電変換してアナログ信号を生成し、さらに画像処理部によりデジタルデータに変換して画像データを生成する。動画である画像データ（動画データともいう）を扱う場合には、例えば、１フレームが横１９２０画素×縦１０８０画素の画像データを、所定のフレームレート（例えば３０フレーム毎秒）で出力することができる。このような撮像部１０１からの出力はバスを介して伝送され、記憶部１０３に記憶される。
【００１３】
制御部１０２は、例えばＣＰＵあるいはＭＰＵを含み、記憶部１０３に含まれるＲＯＭに格納された制御プログラムを、記憶部１０３に含まれるＲＡＭの作業エリアに展開して実行することにより、デジタルカメラ１００全体を制御する。また、制御部１０２は、ネットワーク上の外部装置との間の通信パラメータの設定、ネットワークへの参加、外部装置との通信の確立等の処理や後述するデータ転送処理の制御を行う。
【００１４】
記憶部１０３は、例えばＲＯＭ、ＲＡＭ、ＨＤＤ、フラッシュメモリ等の各種メモリを含み、制御部１０２が実行する制御プログラムと、通信パラメータ等の各種情報を記憶する。また、記憶部１０３は、デジタルカメラ１００で撮影した動画データや静止画データを記憶するほか、これらのデータをトランスコードしたデータを一時的に記憶する。
【００１５】
通信制御部１０４は、無線通信を行うための制御回路又は機能モジュールを含み、制御部１０２の指示に応じて例えばＩＥＥＥ８０２．１１シリーズに準拠した無線ＬＡＮ通信により制御情報や、動画データ等の転送対象のデータの送受信を行う。
【００１６】
表示部１０５は、例えばＬＣＤ又はＬＥＤパネルからなるモニタを含み、更にタッチパネル式の入力素子を含むパネルであってもよい。表示部１０５は、記憶部１０３に記憶された動画データ又はデジタルカメラ１００の操作のための操作画面（メニュー画面）等の視覚で認知可能な情報の出力、若しくはスピーカなどの音声出力の少なくとも一方を行うことができる。
【００１７】
データ変換部１０６は、処理回路又は機能ブロックを含み、記憶部１０３に記憶された画像ファイル（動画データや静止画データのファイル）を異なるデータ形式に変換（トランスコード）して、記憶部１０３又は通信制御部１０４に出力する（データ変換手段）。例えば、ＭＰＥＧ形式とＭＯＶ形式の動画データの相互変換、ＪＰＥＧ形式とＰＮＧ形式の静止画データの相互変換や、動画データや静止画データの画素数又は解像度を変更する処理を含む。データ変換部１０６は、例えばトランスコーダと呼ばれる専用のハードウェアによって構成されてもよいし、制御部１０２がデータ変換部１０６の機能を代替してもよい。
【００１８】
無線通信部１０７は、アンテナ１０８を制御するとともに無線通信を行うための制御回路又は制御モジュールを含み、無線通信を行うための信号出力等を制御する。
【００１９】
操作部１０９は、各種ボタンやタッチパネル等を含み、ユーザが各種ボタンやメニュー画面から各種入力等を行ってデジタルカメラ１００を操作する。操作部１０９は検出したユーザ入力を制御部１０２に送信する。
【００２０】
（通信制御機能に係る機能ブロックの構成）
図２は、本実施形態の通信制御機能を実現する、一例としてのソフトウェアによる機能ブロック２０１の機能構成例を示すブロック図である。機能ブロック２０１の通信制御機能は、デジタルカメラ１００が備えるハードウェアおよびソフトウェアにより実現される。
【００２１】
ディスカバリ制御部２０２は、通信相手となる外部装置を検索して機器発見（Ｄｅｖｉｃｅ  Ｄｉｓｃｏｖｅｒｙ）処理を行う。また、ＧＯネゴシエーション制御部２０３は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔプロトコル仕様に基づくＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ処理を行って、外部装置との間でどちらが無線ＬＡＮアクセスポイント（又は無線ＬＡＮステーション）の役割を果たすかを決定する。なお、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔでは、無線ＬＡＮアクセスポイント機能を提供する通信装置をＰ２Ｐグループオーナー（以下、ＧＯともいう）、無線ＬＡＮステーション機能を提供する通信装置をＰ２Ｐクライアント（以下、ＣＬともいう）という。デジタルカメラ１００がＧＯまたは無線ＬＡＮアクセスポイントとなる場合は後述する無線ＬＡＮアクセスポイント機能制御部２１１が起動される。一方、デジタルカメラ１００がＣＬまたは無線ＬＡＮステーションとなる場合は後述する無線ＬＡＮステーション機能制御部２１０が起動される。このＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ処理に係るプロトコルはＷｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様で規定されているため詳細は省略する。Ｗｉ−Ｆｉ  ＤｉｒｅｃｔではＧＯが形成したネットワークをＰ２Ｐグループという。本実施形態でもネットワークのことをＰ２Ｐグループという場合があり、これらを同一の意味で説明する。なお、Ｐ２Ｐグループオーナー（ＧＯ）、Ｐ２Ｐクライアント（ＣＬ）および役割が未決定の通信装置群をまとめて、Ｐ２Ｐデバイスという。
【００２２】
ＤＨＣＰクライアント制御部２０４は、ＤＨＣＰクライアントの機能を提供し、ＧＯネゴシエーション制御部２０３においてデジタルカメラ１００の役割が無線ＬＡＮステーションとなる場合に起動される。また、ＤＨＣＰサーバ制御部２０５は、ＤＨＣＰサーバの機能を提供し、ＧＯネゴシエーション制御部２０３においてデジタルカメラ１００の役割が無線ＬＡＮアクセスポイントとなる場合に起動される。
【００２３】
ＷＰＳエンローリ制御部２０６は、無線ＬＡＮの通信のために必要な通信パラメ―タを、他のＷＰＳレジストラ装置から受信する。ＤＨＣＰクライアント制御部２０４と同様に、デジタルカメラ１００の役割が無線ＬＡＮステーションとなる場合に動作する。ＷＰＳレジストラ制御部２０７は、無線ＬＡＮの通信のために必要な通信パラメータを、他のＷＰＳエンローリ装置に提供する。ＤＨＣＰサーバ制御部２０５と同様に、デジタルカメラ１００の役割が無線ＬＡＮアクセスポイントとなる場合に動作する。なお、ＷＰＳレジストラによって提供される通信パラメータは、例えばネットワーク識別子としてのＳＳＩＤ、暗号鍵、暗号方式、認証鍵、認証方式等のパラメータである。
【００２４】
無線ＬＡＮパケット受信部２０８及び無線ＬＡＮパケット送信部２０９は、上位レイヤの通信プロトコルを含むあらゆるパケットの送受信を実行する。無線ＬＡＮステーション機能制御部２１０は、デジタルカメラ１００が無線ＬＡＮステーションとして動作する場合の認証処理、暗号処理等を実行して、無線ＬＡＮアクセスポイントとして動作する装置が形成する無線ネットワークに参加する。
【００２５】
無線ＬＡＮアクセスポイント機能制御部２１１は、デジタルカメラ１００が無線ＬＡＮアクセスポイント機能として動作する場合に、無線ネットワークを形成し、認証処理、暗号処理および外部装置の管理処理等を実行する。無線ＬＡＮステーション機能制御部２１０および無線ＬＡＮアクセスポイント機能制御部２１１は、どちらか一方が動作可能であるが、同時に動作可能でもある。
【００２６】
パケットルーティング制御部２１２は、無線ＬＡＮアクセスポイント機能制御部２１１が動作しているときに、通信パケットをブリッジおよびルーティングする。
【００２７】
データ記憶部２１３は、ソフトウェアプログラムおよび、無線ＬＡＮパラメータや、上述したＤＨＣＰアドレステーブルおよびＡＲＰテーブル等の各種テーブルを記憶する。
【００２８】
サービスディスカバリ制御部２１４は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ特有のサービスディスカバリ機能を実現する。サービスディスカバリ機能は、ＩＥＥＥ８０２．１１ｕで定められた、管理フレームの一部であるアクションフレームを送受信することにより、外部装置で実行可能な機能情報（即ちサービス情報）を取得する。具体的には、サービスディスカバリ制御部２１４は、制御信号としてのＳＤ  Ｑｕｅｒｙを送信し、ＳＤ  Ｒｅｓｐｏｎｓｅをその応答として受信する。もしくは、サービスディスカバリ制御部２１４は外部装置からのＳＤ  Ｑｕｅｒｙを受信し、その応答としてＳＤ  Ｒｅｓｐｏｎｓｅを送信する。ＳＤ  Ｒｅｓｐｏｎｓｅにはサービスの種類を示す情報が含まれており、この応答を送信した装置の提供するサービスの種類、例えばファイル転送サービス、印刷サービス、動画像ストリーミングサービス等が示される。
【００２９】
Ｐ２Ｐインビテーション制御部２１５は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格で定められたＩｎｖｉｔａｔｉｏｎ機能を制御する。このＩｎｖｉｔａｔｉｏｎ機能についてはＷｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に規定されているため省略するが、ＧＯもしくはＣＬが役割の決まっていないＰ２ＰデバイスをＰ２Ｐクライアントとして接続を促す機能である。
【００３０】
サービス提供部２１６は、アプリケーションレイヤのファイル転送サービスを提供する。アプリケーションレイヤは、ＯＳＩ参照モデルにおける第５層以上の上位レイヤにおけるサービス提供層をさす。ファイル転送サービスでは、ＨＴＴＰプロトコルを利用して各種要求応答の送受信処理や、転送ファイルの送受信処理を行う。
【００３１】
サービス利用部２１７は、外部装置のアプリケーションレイヤのファイル転送サービス提供部によって提供されるサービスを利用する。
【００３２】
セッション管理部２１８は、ファイル転送サービスにおける論理的な接続を管理する。ファイル転送サービスを利用する場合は、転送するファイルの情報（転送ファイル情報）を含む制御信号としてセッション生成要求を外部装置に送信し、その応答を受信する。ファイル転送サービスを提供する場合は、転送ファイル情報を受信し、この転送ファイル情報の内容に基づいてセッション生成の可否を判定し応答する。転送ファイル情報は、例えば転送するファイルの数や、合計サイズ、ファイル名で構成される情報である。セッション管理部２１８は、セッション生成が可能と判定された場合は、無線レイヤでの接続処理を実行する。なお、セッション管理に関わる情報のやりとりは、ファイルを転送するためのいわゆる制御情報の送受信として行われ、例えばＩＥＥＥ８０２．１１で定められた、管理フレームの一部であるパブリックアクションフレームを利用して行われる。
【００３３】
なお、図２に示す全ての機能ブロックはソフトウェアによって提供されるものに限らず、少なくとも一部がハードウェアによって提供されるようにしてもよい。そして、各機能ブロックは、相互関係を有し、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが更に複数の機能を行うブロックに分かれてもよい。さらに、アプケリーションレイヤにおけるファイル転送サービスは、そのサービスを提供する装置と、そのサービスを利用する装置とによって実現される。本実施形態における一例ではサービスを利用する装置はデジタルカメラ１００であるが、サービスを提供する装置は、上述した他の機器であってよい。
【００３４】
図３は、デジタルカメラ１００と、外部装置である携帯電話機３００とから構成される無線ネットワーク３０１の例を示している。いずれの装置も、図２を参照して説明した機能ブロック２０１の通信制御機能を実現するハードウェアおよびソフトウェア（例えば、図１に示すもの）を有する。デジタルカメラ１００と携帯電話機３００は、形成された無線ネットワーク３０１に参加し、例えばＩＥＥＥ８０２．１１シリーズに準拠した無線通信を確立する。
【００３５】
（動画転送処理に係る動作シーケンス）
次に、デジタルカメラ１００が、記憶部１０３に格納されている動画ファイルを変換し、当該変換した動画を転送先の携帯電話機３００に転送する場合の装置間の動作シーケンスについて、図４を参照して説明する。なお、図４の例では、デジタルカメラ１００がファイル転送サービスを利用する送信側の通信装置であり、携帯電話機３００は、ファイル転送サービスを提供する受信側の通信装置として動作する。
【００３６】
Ｓ４０１において、デジタルカメラ１００は、ユーザ操作による画像転送モードの開始指示を、操作部１０９を介して受け付ける。画像転送モードの開始指示に対応するユーザ操作は、デジタルカメラ１００を操作するための様々な操作であってよく、例えば撮影した画像データや動画データの閲覧を開始する操作を画像転送モードの開始指示としてよい。
【００３７】
Ｓ４０２において、デジタルカメラ１００は、ファイル転送サービスを提供している通信装置を検索するための要求信号（ファイル転送サービス検索要求）を送信する。また、デジタルカメラ１００は、Ｓ４０２の処理と並行して、転送対象となるファイルを選択するユーザ操作を受け付ける。なお、ファイルを選択するユーザ操作は図６（ａ）において後述する。なお、ファイル転送サービス検索要求やセッション生成要求に係る情報等の制御信号の送受信は、通信装置間で定めた特定の周波数帯（チャンネルともいわれる）のもと、上述した管理フレームの一部であるアクションフレームを使用して行われる。
【００３８】
Ｓ４０３において、携帯電話機３００は、Ｓ４０２で送信された要求信号に対する応答信号（検出応答）をデジタルカメラ１００に送信する。そして、Ｓ４０４において、検出応答を受信したデジタルカメラ１００は、複数の機器の中から接続先として携帯電話機３００を選択する機器選択の指示を、操作部１０９を介して受け付ける。
【００３９】
Ｓ４０５において、デジタルカメラ１００は、送信する動画ファイルの、トランスコード後の仮のファイルサイズ（即ち仮の動画ファイルのデータサイズ）を携帯電話機３００に送信する。動画ファイルに対するトランスコード処理には所定の処理時間を要するため、本実施形態では、トランスコード処理を行う前に、仮のファイルサイズを予測してその予測結果を送信する。このようにすることにより、トランスコード処理を実行してファイルサイズの確定を待つことなく、送信する動画ファイルのデータ量に対する受信装置側の許容可否を動画転送モード開始後の短時間で（早い段階で）確認することができる。仮のファイルサイズの予測は、例えばファイルサイズやファイル形式の属性（例えばビットレート）を用いて行う。例えば、ファイルサイズが１００ＭＢであってビットレートが３２Ｍｂｐｓである動画ファイルを８Ｍｂｐｓに変換する場合、ファイルサイズがおおよそ1／４になることが想定される。この場合、デジタルカメラ１００は、ビットレート比からトランスコード後の予測ファイルサイズを算出し、携帯電話機３００に送信する。例えば上記の例であれば、予測されるトランスコード後のファイルサイズを２５ＭＢとして携帯電話機３００に送信する。なお、予測のためのアルゴリズムは種々の方法が考えられる。例えば上述のビットレート比の他、トランスコード前後の圧縮形式と、ファイルサイズの変化量を対応付けたテーブルなどを記憶部１０２に有していてもよい。
【００４０】
なお、デジタルカメラ１００は、トランスコード後のデータ形式（ファイル形式ともいう）を様々な方法で決定することができる。例えば、Ｓ４０３において受信する検出応答に、携帯電話機３００が処理可能なデータ形式が含まれており、デジタルカメラ１００は携帯電話機３００から受信した検出応答に示されたデータ形式に基づいてトランスコード後のデータ形式を決定してもよい。或いは、デジタルカメラ１００は、所定のデータ形式にトランスコード後のデータ形式を予め関連付けて記憶部１０３に保持し、選択されたファイルのデータ形式に応じてトランスコードする形式を決定するようにしてもよい。また、ユーザが操作部１０９に含まれる設定メニュー等を介して予め設定したトランスコード後のデータ形式を用いるようにしてもよい。
【００４１】
Ｓ４０６において、仮ファイルサイズの通知を受信した携帯電話機３００は、デジタルカメラ１００から送信されるファイルが受信可能なサイズであることを判定する。携帯電話機３００は、ファイルを受信可能であると判定した場合、デジタルカメラ１００に対して、通知されたファイルサイズを受信可能であることを示す応答信号（成功応答）を送信する。
【００４２】
Ｓ４０７において、携帯電話機３００から成功応答を受信したデジタルカメラ１００は、制御部１０２により記憶部１０３から送信する動画ファイルを順次読み出してトランスコード処理を開始して、変換後のデータを記憶部１０３に保存する。
【００４３】
Ｓ４０８において、デジタルカメラ１００は、トランスコード処理の終了後に再び携帯電話機３００を検出するためにＳ４０２、Ｓ４０３と同様にファイル転送サービスを検索するための要求信号を送信し、Ｓ４０９においてその応答信号を受信する。
【００４４】
Ｓ４１０において、デジタルカメラ１００は、携帯電話機３００とファイル転送サービスを実行するための接続を確立するため、転送するファイルの情報を示す転送ファイル情報を付加したセッション生成のための要求信号（セッション生成要求）を送信する。デジタルカメラ１００が携帯電話機３００との無線ＬＡＮの接続処理を行う前に転送ファイル情報を送信することにより、携帯電話機３００はどのようなファイルが転送されるのか事前に認識することができる。セッション生成要求の転送ファイル情報には実際に転送されるトランスコード後のファイルの情報を付加する。ファイルの情報は、例えば「ファイル数：１、合計サイズ：２０ＭＢ、ファイル名：ＴＲＳ＿０００１．ＭＰ４」となる。ファイル名は、例えばトランスコードを行う動画ファイルのファイル名ではなく、トランスコードによって生成された動画ファイルのファイル名であってユニークなものである。ファイル名には、更にトランスコードするたびに加算した数字を付与してもよいし、送信する時の日時および時間を付与してもよい。
【００４５】
Ｓ４１１において、携帯電話機３００は、セッション生成要求信号に対する応答信号（成功応答）をデジタルカメラ１００に送信する。
【００４６】
Ｓ４１２において、デジタルカメラ１００は、携帯電話機３００との間で、無線レイヤの接続処理を実施する。本実施形態では、無線レイヤでの接続処理は、例えばＷｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠した接続処理である。すなわちデジタルカメラ１００または携帯電話機３００のどちらか一方がＰ２Ｐグループオーナー（ＧＯ）となり、他方がＰ２Ｐクライアント（ＣＬ）となる。ＣＬはＧＯが構築した無線ネットワークに参加することによってネットワークを形成する。なお、ネットワークへの参加はＣＬに限定されるものではなく、無線ネットワークを構築した時点でＧＯはネットワークに参加するものとしてよい。
【００４７】
Ｓ４１３において、デジタルカメラ１００は、無線レイヤの接続確立後に（即ちネットワークの参加中に）ファイル転送サービスの所定の開始処理を実施する。具体的には、ＤＨＣＰによるＩＰアドレスの設定処理や、ファイル転送サービスにおけるＨＴＴＰ転送に必要な詳細情報を携帯電話機３００から取得する処理を行う。
【００４８】
Ｓ４１４において、デジタルカメラ１００は、Ｓ４１０で送信した転送ファイル情報に基づいて、携帯電話機３００に対する動画ファイルの送信処理を行う。さらに、Ｓ４１５において、デジタルカメラ１００は、ファイル転送サービスの所定の終了処理を行う。具体的には、Ｓ４１３の転送サービス開始処理において生成した情報やトランスコード後の動画ファイルの削除又は設定を解除する処理を行う。
【００４９】
Ｓ４１６において、デジタルカメラ１００は、携帯電話機３００とのファイル転送サービスの論理的な接続を終了させるための要求信号（セッション終了要求）を送信する。Ｓ４１７において、セッション終了要求を受信した携帯電話機３００は、デジタルカメラ１００に成功応答を送信する。
【００５０】
Ｓ４１８において、デジタルカメラ１００は、携帯電話機３００との無線レイヤの接続を切断する処理を行う。本実施形態では、無線レイヤでの切断処理は、例えば前述したＷｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠した切断処理である。そして、デジタルカメラ１００は、変換した動画を転送する一連のシーケンスを終了する。
【００５１】
なお、本実施形態では、Ｓ４０５で送信するトランスコード後の仮ファイルサイズを、ファイルサイズとビットレートとに基づいて決定するようにした。しかし、動画のデータによって通常よりも圧縮率が低い場合、このようにして求めた仮ファイルサイズを超える可能性がある。このため、所定の係数を用いることによって、仮ファイルサイズを超えないように値を設定してもよい。また、同様にＳ４０５で送信する仮ファイルサイズは、実際には動画をデジタルカメラ１００および携帯電話機３００で保存する必要があるため、上記決定したサイズに加えて、種々の状況を考慮してもよい。例えば、新規にフォルダを作成した場合や、ファイルのクラスタサイズを超えた場合なども考慮に入れることができる。その場合はクラスタサイズへの切り上げを行い、さらにファイルをひとつ追加する場合のクラスタサイズ分をサイズに加算する。
【００５２】
なお、トランスコード後の動画ファイルを送信する例を説明したが、トランスコードを実施せずに画像ファイルや動画ファイルを送信する場合には、Ｓ４０５からＳ４１１までの部分を省くことができる。
【００５３】
（データ転送処理に係る一連の動作）
次に、ファイル転送サービスを利用して記憶部１０３に格納されている動画ファイルを携帯電話機３００に送信する、デジタルカメラ１００のデータ転送処理に係る一連の動作を図５を参照して説明する。なお、図５に示す各ステップは、記憶部１０３に含まれるＲＯＭに記憶されたプログラムを記憶部１０３に含まれるＲＡＭに展開し、制御部１０２が実行することにより各部を制御する。
【００５４】
Ｓ５０１において、制御部１０２は、操作部１０９を介して表示部１０５に表示されている動画の画像転送モード開始の指示を受信すると、Ｓ５０２において、ファイル転送サービスの検索要求を送信する。また、制御部１０２は、Ｓ５０２の処理と並行して、転送対象となるファイルを選択するユーザ操作を操作部１０９を介して受信し、転送対象のファイルを特定する。転送するファイルを特定するユーザ操作については、図６（ａ）において後述する。
【００５５】
Ｓ５０３において、制御部１０２は、ファイル転送サービスの検索要求に対する検出応答をアンテナ１０８を介して受信して、当該検出応答に基づいてサービスを提供可能な外部装置の検出処理を行う。より具体的には、制御部１０２は、検出応答を送信した外部装置を、例えば機器ＩＤ等の外部装置の識別子により特定するとともに、ユーザが識別可能な情報（例えば機器名称等）を表示部１０５に表示する。
【００５６】
Ｓ５０４において、Ｓ５０３において表示した識別可能な情報を、ユーザが操作部１０９を介して選択したことに応じて、制御部１０２は、選択された外部装置（例えば携帯電話機３００）を特定する。
【００５７】
Ｓ５０５において、制御部１０２は、携帯電話機３００に送信するために選択された動画ファイルについてトランスコード処理可能かを判定する。具体的には、制御部１０２は、トランスコード処理の対象となる動画ファイルのビットレートが所定の閾値の範囲内か、又はデジタルカメラ１００で撮影した動画であるか等の基準に基づきトランスコード処理の可否を判定する。制御部１０２は、トランスコード処理が可能であると判定した場合、処理をＳ５１１に進める。一方、トランスコード処理が可能でないと判定した場合、トランスコードを行わずにセッション生成処理を行うため処理をＳ５０６に進める。
【００５８】
次に、制御部１０２がＳ５０５においてトランスコード処理が可能であると判定した場合について説明する。Ｓ５１１において、制御部１０２は、選択された動画ファイルをトランスコード処理するか否かを判定する。具体的には、送信しようとする動画ファイルをトランスコード処理するか否かを示すユーザ操作を、操作部１０９を介して受信する。なお、当該ユーザ操作については、図６（ｂ）において後述する。制御部１０２は、受信したユーザ操作がトランスコードを行わないことを示す場合は、処理をＳ５０６に進め、トランスコード処理を行うことを示す場合には処理をＳ５１２に進める。
【００５９】
Ｓ５１２において、制御部１０２は、トランスコード処理を実行した場合に想定される仮のファイルサイズを携帯電話機３００に送信する。このとき、送信される仮のファイルサイズは、例えばＳ４０５において上述した方法によって決定される。
【００６０】
Ｓ５１３において、制御部１０２は、転送するファイルに対する受信可否を示す応答（受信可否応答）を携帯電話機３００から受信する。そして、Ｓ５１４において、制御部１０２は、選択された外部装置（携帯電話機３００）が転送しようとするファイルを受信可能であるかを判定する。具体的には、制御部１０２は、受信した受信可否応答が受信可能であることを示す場合、携帯電話機３００がトランスコード処理後の動画データを受信可能であると判定する。一方、制御部１０２は、受信可否応答が受信不可を示す場合に、携帯電話機３００が当該動画データを受信可能でないと判定する。制御部１０２は、携帯電話機３００が動画ファイルを受信できないと判定した場合、処理をＳ５１８に進めて、表示部１０５にエラーを示す表示を表示させる。Ｓ５１８では、制御部１０２はエラー表示の後に所定のユーザ操作を受け付けると、エラー表示を消去し、外部装置と接続処理を行わずに本一連の処理を終了する。一方、Ｓ５１４において、携帯電話機３００がファイルを受信可能である場合、処理をＳ５１５に進める。
【００６１】
Ｓ５１５において、制御部１０２は、データ変換部１０６に対してトランスコード処理を行わせる。そして、制御部１０２は、トランスコード処理された動画ファイルが生成されるとこの動画を取得する。
【００６２】
Ｓ５１６において、制御部１０２は、Ｓ５０２と同様にサービス検索処理を行い、更にＳ５１７においてＳ５０３と同様に外部装置検出処理を行なう。ここでは、トランスコード処理に一定の時間を要するため、接続処理を行う直前においても外部装置が検出されるかを判定する。このようにすることにより、外部装置を検出できない状態に変化した場合に、接続処理を開始して失敗する処理の無駄を軽減することができる。なお、本実施形態の例では、制御部１０２は、Ｓ５０４において選択した外部装置（即ち携帯電話機３００）が変わらず存在し、当該外部装置を検出するものとして処理をＳ５０６に進める。
【００６３】
次に、Ｓ５０５においてトランスコード処理が可能でないと判定した場合、及び、Ｓ５１４において選択した外部装置でファイルの受信が可能であると判定された場合の処理について説明する。
【００６４】
Ｓ５０６において、制御部１０２は、ファイル転送サービスのセッション生成処理を実行する。具体的には、制御部１０２は、転送ファイル情報を付加したセッション生成要求を携帯電話機３００に送信し、その後、当該携帯電話機３００から検出応答を受信する。
【００６５】
Ｓ５０７において、制御部１０２は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠した無線レイヤの接続処理を行い、更にＤＨＣＰによるＩＰアドレス設定処理、ファイル転送サービスにおけるＨＴＴＰ転送に必要な詳細情報の取得処理を実行する。
【００６６】
Ｓ５０８において、制御部１０２は、Ｓ５０６において送信した転送ファイル情報に基づき、データ転送に係る動画ファイルを携帯電話機３００に送信する。制御部１０２は、携帯電話機３００に動画ファイルの送信を完了すると、図４において上述したファイル転送サービスの終了処理を行う。
【００６７】
Ｓ５０９において、制御部１０２は、セッション終了処理を行う。具体的には、制御部１０２は、セッション終了要求を携帯電話機３００に送信し、携帯電話機３００からその応答として応答信号を受信する。
【００６８】
Ｓ５１０において、制御部１０２は、上述したセッション終了処理を完了すると、無線レイヤの切断処理を行う。即ち、制御部１０２は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ仕様に準拠した無線レイヤの切断処理を行う。制御部１０２は、無線レイヤの切断処理を終了すると、データ転送処理に係る一連の動作を終了する。
【００６９】
（動画転送に係る表示部１０５の表示例）
次に、ファイル転送サービスを利用する際に制御部１０２が表示部１０５に表示する画面の一例を、図６を参照して説明する。図６（ａ）には、転送する動画ファイルを特定する際の画面例を示している。図６（ａ）の例では、例えば動画６０１は画面中央に表示されており、ユーザがこの動画を再生するための再生指示を行うアイコンと共に表示されている。なお、この動画６０１は例えば複数の動画ファイルからユーザが選択した１つの動画ファイルであってよい。さらに、動画６０１のファイルを外部装置に送信するための送信ボタン６０２が例えば動画６０１の下に表示され、送信ボタン６０２が押下されると表示されている動画が転送される動画ファイルとして特定される。
【００７０】
図６（ｂ）は、上述したＳ５１１において、トランスコード処理するか否かを選択するユーザ操作を受け付ける画面例を示している。制御部１０２は、動画６０１をトランスコード可能であると判定した後に、ダイアログ６０３を表示部１０５に表示する。そして、動画ファイルをトランスコードして送信するためのボタン６０４と、トランスコードを行わずにそのまま送信するためのボタン６０５とを表示する。その後、制御部１０２は、何れかのユーザ操作が入力されると、ユーザ操作に応じて動画を送信する。
【００７１】
なお、上述した本実施形態では、送信する動画ファイルのトランスコード処理を行う構成を例に説明した。しかし、送信するファイルが静止画であり、そのリサイズ処理やフィルタ処理を行う場合にも上述した一連の処理を適用可能である。この場合、動画ファイルのトランスコード処理の代わりに、静止画に対する画像処理を行うようにすればよい。
【００７２】
また、本実施形態では、１つの動画ファイルを送信する例に説明したが、複数のファイルを対象にしてもよいし、複数の動画ファイルと静止画ファイルとを含んだ複数の画像ファイルを対象にしてもよい。送信する複数のファイルのうち、複数のトランスコード処理を要する場合には、それぞれのトランスコード処理に応じた仮のファイルサイズを求め、その合計したサイズを、Ｓ４０５における仮ファイルサイズ送信で送信するようにすればよい。このようにすれば、ユーザが個々の静止画ファイルや動画ファイルを１つ１つ個別に送る場合と比べて、複数の静止画や動画を少ない操作で容易に送信することができる。
【００７３】
さらに、本実施形態では、データ変換部１０６によりトランスコード処理を行うものとして説明したが、デジタルカメラ１００は、トランスコード処理を外部の装置で実行させ、トランスコード後のファイルを取得して、携帯電話機３００に転送してもよい。このようにすれば、トランスコード処理のバリエーションの増加やデジタルカメラ１００の処理負担の分散を行うことができる。
【００７４】
以上説明したように、本実施形態では、外部装置との接続を行う前に外部装置と制御情報を送受信して、トランスコード後のファイルを受信可能か判定するようにした。このようにすることにより、トランスコード処理を行って外部装置にデータを転送する場合に、通信処理の無駄を回避することができる。換言すれば、動画ファイルをトランスコード処理と接続処理を行った後に、外部装置が受信できない事態を回避することができる。また、トランスコード処理を無線通信の接続処理の前に行うようにした。このようにすることにより、トランスコード処理と接続処理との同時実行による処理負荷の増大を抑制し、他の動作により多くの計算資源を割り当てることできる。
【００７５】
また、動画ファイルをトランスコード処理する前に仮のファイルサイズを予測し、制御情報を用いて外部装置に送信するようにした。このようにすることにより、トランスコード処理の実行の無駄を低減すると共に、動画転送処理の早い段階（即ち短時間）で外部装置がトランスコードされた動画ファイルを受信可能であるかを判定することができる。
【００７６】
（実施形態２）
次に実施形態２について説明する。実施形態２では、動画ファイルのトランスコード処理を完了して外部装置に送信する際に、外部装置の再検出ができなかった場合の処理について説明する。本実施形態に係るデジタルカメラの構成は、図１に示したデジタルカメラ１００の構成と同一であり、また、本実施形態に係るデータ転送処理の一連の動作は、Ｓ５１６以降の外部装置検出処理に係る一部のステップを除き実施形態１の動作と同一である。このため、同一の構成及びステップについては同一の符号を付して重複する説明は省略し、相違点について重点的に説明する。
【００７７】
以下、図７を参照して、本実施形態に係るデータ転送処理の一連の動作について説明する。なお、図７では、実施形態１におけるＳ５１６（サービス検索処理）以降の処理について、選択された外部装置（携帯電話機３００）を再度検出できなかった場合の処理を示している。即ち、制御部１０２は、Ｓ５０１〜Ｓ５１６の処理を実施形態１と同様に実行する。
【００７８】
Ｓ７０１において、制御部１０２は、Ｓ５１７と同様に外部装置検出処理を行う。すなわち、制御部１０２は、Ｓ５１６において送信したファイル転送サービスの検索要求に対する検出応答をアンテナ１０８を介して受信し、当該検出応答に基づいてサービスを提供可能な外部装置の検出処理を行う。
【００７９】
Ｓ７０２において、制御部１０２は、Ｓ５０４で選択された外部装置（即ち携帯電話機３００）が検出できたかを判定する。具体的には、制御部１０２は、受信した検出応答に係る外部装置の識別子（例えば機器ＩＤ等）とＳ５０４で選択された外部装置の識別子とを比較して、これらの識別子が一致する場合に選択された外部装置が検出できたと判定する。制御部１０２は、選択された外部装置を検出したと判定した場合、処理をＳ５０６に進め、選択された外部装置を検出したと判定しない場合、処理をＳ７０３に進める。制御部１０２は、処理をＳ５０６に進める場合、実施形態１に示したＳ５０６以降の処理を更に行ってデータ転送処理に係る一連の動作を終了する。
【００８０】
Ｓ７０３において、即ち選択された外部装置が検出されなかった場合において、制御部１０２は、予め定められた所定の時間に渡って待機する。そして、Ｓ７０４において、制御部１０２は、選択された外部装置の再検出を行うか否かを判定する。具体的には、制御部１０２は、例えばＳ７０１における外部装置検出処理の試行回数をカウントして、検出処理を行った回数が所定の閾値以下であれば再検出を行うように判定する。或いは、制御部１０２は、再検出を行うか否かを示すユーザ操作を促す表示を表示部１０５に表示し、操作部１０９を介して当該ユーザ操作を入力したことに応じて外部装置の再検出を行うか否かを判定してもよい。制御部１０２は、再検出を行うと判定した場合、再び外部装置検出処理を行うために再びＳ７０１に処理を戻す。一方、再検出を行わないと判定した場合、ファイルを転送する外部装置が見つからない状態であるため、動画ファイルの転送を中止してデータ転送処理の一連の動作を終了する。なお、制御部１０２は、Ｓ７０１における最初の検出処理で外部装置を検出できなかった場合に、表示部１０５にエラー表示を表示し、当該表示と並行して検出処理を繰り返すようにしてもよい。このようにすることで、ユーザの操作負担を過度に増加することなく、外部装置の検出を継続することができる。
【００８１】
なお、Ｓ７０４において再検出を行う場合にＳ７０１に処理を戻すようにしたが、Ｓ５１３に処理を戻して、再度仮ファイルサイズの送信を繰り返すようにしてもよい。このようにすれば、選択された外部装置は、ネットワークに再接続した場合に要求信号を受信し、応答信号を送信できるようになる。
【００８２】
また、Ｓ７０１において外部装置が検出されなかった場合に、Ｓ７０３及びＳ７０４の再検出処理を行うか否かをユーザが選択できるようにしても良い。
【００８３】
以上のように、本実施形態によれば、トランスコード処理の後に外部装置が検出できなかった場合に外部装置の再検出処理を所定の時間間隔で繰り返すようにした。このようにすることにより、一度検出された外部装置が再度検出できなかった場合に容易に外部装置を検出してデータ転送処理を継続することできる。
【００８４】
（その他の実施形態）
本発明は、上述した実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2017062626.tif 000003
【図２】
2017062626.tif 000004
【図３】
2017062626.tif 000005
【図４】
2017062626.tif 000006
【図５】
2017062626.tif 000007
【図６】
2017062626.tif 000008
【図７】
2017062626.tif 000009