(57)【要約】      （修正有）【課題】通信装置間の通信接続を維持しながら、通信経路を変える通信装置、通信システム、通信装置の制御方法、及び、プログラムを提供する。【解決手段】通信装置は、第１の通信方式で通信する第１の通信手段と、第１の通信方式とは異なる第２の通信方式で通信する第２の通信手段と、外部装置との通信接続に第１の通信方式を使用する第１の通信接続と第２の通信方式を使用する第２の通信接続とがある状態で第１の通信方式の通信経路を変更する場合、定められた要求を第２の通信接続によって外部装置に送信するよう第２の通信手段を制御し、第１の通信方式の通信経路が変更された外部装置との第３の通信接続を確立するよう制御する制御手段と、を有する。【選択図】図３
2019186724.tif 000002
【特許請求の範囲】
【請求項１】
第１の通信方式で通信する第１の通信手段と、
前記第１の通信方式とは異なる第２の通信方式で通信する第２の通信手段と、
外部装置との通信接続に前記第１の通信方式を使用する第１の通信接続と前記第２の通信方式を使用する第２の通信接続とがある状態で前記第１の通信方式の通信経路を変更する場合、定められた要求を前記第２の通信接続によって前記外部装置に送信するよう前記第２の通信手段を制御し、前記第１の通信方式の通信経路が変更された前記外部装置との第３の通信接続を確立するよう制御する制御手段と、
を有する通信装置。
【請求項２】
前記外部装置との通信にＭＰＴＣＰ（Ｍｕｌｔｉｐａｔｈ  ＴＣＰ）が使われ、
前記定められた要求は、ＭＰＴＣＰの通信接続から前記第１の通信接続を除外する除外要求と、ＭＰＴＣＰの通信接続に前記第３の通信接続を追加する追加要求と、を含む請求項１記載の通信装置。
【請求項３】
前記第１の通信接続の通信経路は、前記通信装置と前記外部装置とが直接通信する通信経路であり、
前記第３の通信接続の通信経路は、前記通信装置と前記外部装置とが中継装置を介して通信する通信経路である請求項２記載の通信装置。
【請求項４】
前記中継装置との前記第１の通信方式を使用する通信接続が確立された場合、前記制御手段は、前記追加要求を前記第２の通信接続によって前記外部装置に送信するよう前記第２の通信手段を制御する請求項３記載の通信装置。
【請求項５】
前記制御手段は、前記中継装置の情報を前記外部装置に送信するよう前記第２の通信手段を制御する請求項３又は４記載の通信装置。
【請求項６】
前記第３の通信接続での通信のために前記中継装置によって前記第１の通信手段に割り当てられたネットワークアドレスが、前記第２の通信手段に割り当てられたネットワークアドレスと一致する場合、前記制御手段は、前記追加要求を前記外部装置に送信しない請求項３乃至５何れか１項記載の通信装置。
【請求項７】
前記第１の通信接続の通信経路は、前記通信装置と前記外部装置とが中継装置を介して通信する通信経路であり、
前記第３の通信接続の通信経路は、前記通信装置と前記外部装置とが直接通信する通信経路である請求項１又は２記載の通信装置。
【請求項８】
前記第１の通信手段の通信経路を変更する場合とは、前記第１の通信接続による前記外部装置との通信ができなくなった場合、定められた操作を受け付けた場合、及び、前記第３の通信接続の確立が可能になった場合の何れかの場合である請求項１乃至７何れか１項記載の通信装置。
【請求項９】
前記通信装置は、スマートフォンである請求項１乃至８何れか１項記載の通信装置。
【請求項１０】
第１の通信方式で通信する第３の通信手段と、
前記第１の通信方式とは異なる第２の通信方式で通信する第４の通信手段と、
外部装置との通信接続に前記第１の通信方式を使用する第１の通信接続と前記第２の通信方式を使用する第２の通信接続とがある状態で前記第２の通信接続によって定められた要求を受信した場合、前記外部装置との通信接続から前記第１の通信接続を除外し、前記定められた要求に含まれる情報に基づいて、前記第１の通信方式の通信経路が変更された前記外部装置との第３の通信接続を確立するよう制御する制御手段と、
を有する通信装置。
【請求項１１】
前記外部装置との通信にＭＰＴＣＰが使われ、
前記定められた要求は、除外要求と追加要求とを含み、
前記制御手段は、前記除外要求を受信した場合、ＭＰＴＣＰの通信接続から前記第１の通信接続を除外し、前記追加要求を受信した場合、前記追加要求に含まれる前記外部装置のネットワークアドレスに基づいて、前記第３の通信接続を確立し、ＭＰＴＣＰの通信接続に前記第３の通信接続を追加するよう制御する請求項１０記載の通信装置。
【請求項１２】
前記第１の通信接続の通信経路は、前記通信装置と前記外部装置とが直接通信する通信経路であり、
前記第３の通信接続の通信経路は、前記通信装置と前記外部装置とが中継装置を介して通信する通信経路である請求項１１記載の通信装置。
【請求項１３】
前記通信装置をアクセスポイントとして動作させてネットワークを形成する形成手段を更に有し、
前記第１の通信接続の通信経路は、前記形成手段によって形成された前記ネットワークで、前記通信装置と前記外部装置とが直接通信する通信経路であり、
前記外部装置から前記除外要求を受信した場合、前記通信装置のアクセスポイントとしての動作を停止させる停止手段を更に有する請求項１２記載の通信装置。
【請求項１４】
前記外部装置から前記中継装置の情報を受信した場合、前記制御手段は、受信した前記中継装置の情報に基づいて、前記第３の通信接続を確立するよう前記第１の通信手段を制御する請求項１２又は１３記載の通信装置。
【請求項１５】
前記第３の通信接続での通信のために前記中継装置によって前記第３の通信手段に割り当てられたネットワークアドレスが、前記第４の通信手段に割り当てられたネットワークアドレスと一致する場合、前記制御手段は、ＭＰＴＣＰの通信接続に前記第３の通信接続を追加しない請求項１２乃至１４何れか１項記載の通信装置。
【請求項１６】
前記第１の通信接続の通信経路は、前記通信装置と前記外部装置とが中継装置を介して通信する通信経路であり、
前記第３の通信接続の通信経路は、前記通信装置と前記外部装置とが直接通信する通信経路である請求項１１記載の通信装置。
【請求項１７】
前記外部装置から前記除外要求を受信した場合、前記通信装置をアクセスポイントとして動作させてネットワークを形成する形成手段を更に有し、
前記第３の通信接続の通信経路は、前記形成手段によって形成されたネットワークで、前記通信装置と前記外部装置とが直接通信する通信経路である請求項１６記載の通信装置。
【請求項１８】
前記外部装置から前記除外要求を受信した場合、前記制御手段は、前記第１の通信接続を切断する請求項１６又は１７記載の通信装置。
【請求項１９】
前記外部装置との通信接続に、前記第１の通信接続、及び、前記第３の通信接続の少なくとも何れかがある場合、アプリケーションを前記第１の通信方式に対応する第１の動作モードにし、前記外部装置との通信接続に、前記第１の通信接続、及び、前記第３の通信接続がなく、前記第２の通信接続がある場合、前記アプリケーションを前記第２の通信方式に対応する第２の動作モードにするアプリケーション制御手段を更に有する請求項１０乃至１８何れか１項記載の通信装置。
【請求項２０】
前記通信装置は、撮像装置である請求項１０乃至１９何れか１項記載の通信装置。
【請求項２１】
前記第１の通信方式は無線ＬＡＮである請求項１乃至２０何れか１項記載の通信装置。
【請求項２２】
前記第２の通信方式はＢｌｕｅｔｏｏｔｈ（登録商標）である請求項１乃至２１何れか１項記載の通信装置。
【請求項２３】
第１の通信装置と、第２の通信装置と、を有する通信システムであって、
前記第１の通信装置は、
第１の通信方式で通信する第１の通信手段と、
前記第１の通信方式とは異なる第２の通信方式で通信する第２の通信手段と、
前記第２の通信装置との通信接続に前記第１の通信方式を使用する第１の通信接続と前記第２の通信方式を使用する第２の通信接続とがある状態で前記第１の通信方式の通信経路を変更する場合、定められた要求を前記第２の通信接続によって前記第２の通信装置に送信するよう前記第２の通信手段を制御し、前記第１の通信方式の通信経路が変更された前記第２の通信装置との第３の通信接続を確立するよう制御する第１の制御手段と、
を有し、
前記第２の通信装置は、
前記第１の通信方式で通信する第３の通信手段と、
前記第２の通信方式で通信する第４の通信手段と、
前記第１の通信装置との通信接続に前記第１の通信方式を使用する前記第１の通信接続と前記第２の通信方式を使用する前記第２の通信接続とがある状態で前記第２の通信接続によって前記定められた要求を受信した場合、前記第１の通信装置との通信接続から前記第１の通信接続を除外し、前記定められた要求に含まれる情報に基づいて、前記第３の通信接続を確立するよう制御する第２の制御手段と、
を有する通信システム。
【請求項２４】
第１の通信方式で通信する第１の通信手段と、
前記第１の通信方式とは異なる第２の通信方式で通信する第２の通信手段と、
を有する通信装置の制御方法であって、
外部装置との通信接続に前記第１の通信方式を使用する第１の通信接続と前記第２の通信方式を使用する第２の通信接続とがある状態で前記第１の通信方式の通信経路を変更する場合、定められた要求を前記第２の通信接続によって前記外部装置に送信するよう前記第２の通信手段を制御し、前記第１の通信方式の通信経路が変更された前記外部装置との第３の通信接続を確立するよう制御する通信装置の制御方法。
【請求項２５】
第１の通信方式で通信する第３の通信手段と、
前記第１の通信方式とは異なる第２の通信方式で通信する第４の通信手段と、
を有する通信装置の制御方法であって、
外部装置との通信接続に前記第１の通信方式を使用する第１の通信接続と前記第２の通信方式を使用する第２の通信接続とがある状態で前記第２の通信接続によって定められた要求を受信した場合、外部装置との通信接続から前記第１の通信接続を除外し、前記定められた要求に含まれる情報に基づいて、前記第１の通信方式の通信経路を変更した前記外部装置との第３の通信接続を確立するよう制御する通信装置の制御方法。
【請求項２６】
コンピュータを、請求項１乃至２２何れか１項記載の通信装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信システム、通信装置の制御方法、及び、プログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラ等の撮像装置に無線通信機能を搭載し、スマートフォンやタブレット等の通信装置と直接あるいは間接的に通信することが行われている。非特許文献１では、デジタルカメラがカメラアクセスポイントモード及びインフラストラクチャモードの二つのモードを備えた通信システムが開示されている。カメラアクセスポイントモードは、デジタルカメラがアクセスポイントとしてスマートフォンと直接通信接続する動作モードである。インフラストラクチャモードは、外部のアクセスポイントを介してデジタルカメラとスマートフォンとが通信接続する動作モードである。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“Ｃａｍｅｒａ  Ｃｏｎｎｅｃｔ”、［ｏｎｌｉｎｅ］、キヤノン、［平成３０年３月３０日日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｃｗｅｂ．ｃａｎｏｎ．ｊｐ／ｅｏｓ／ｓｏｆｔｗａｒｅ／ｃｃ．ｈｔｍｌ＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、非特許文献１の技術は、一方のモードでの通信経路の通信接続が確立している場合に、もう一方のモードの通信経路に変更する場合、デジタルカメラとスマートフォンの間の通信が一時的に断絶する。
例えば、自宅等のアクセスポイントが存在する環境において、デジタルカメラとスマートフォンをアクセスポイント介して通信接続している状態（インフラストラクチャモード）で、ユーザがデジタルカメラとスマートフォンを持って移動する場合がある。この場合に、ユーザがアクセスポイントの通信可能な範囲を出てしまうと、スマートフォンとデジタルカメラ間の通信接続が断絶する。このため、ユーザは、スマートフォンとデジタルカメラをカメラアクセスポイントモードで接続しなおす必要がある。通信接続が断絶したとき、デジタルカメラ内の画像データをスマートフォンに転送していたり、デジタルカメラが撮影している映像をスマートフォンにストリーミングしていたりする場合、データの転送やストリーミングが中断する。
同様に、デジタルカメラとスマートフォンがカメラアクセスポイントモードで直接接続している状態で、スマートフォンをインターネット通信するためにアクセスポイントに接続しなおすと、デジタルカメラとの通信が断絶する。この場合、ユーザは、デジタルカメラをスマートフォンと同じアクセスポイントに通信接続し、インフラストラクチャモードでスマートフォンとの通信接続を再開する必要がある。
【課題を解決するための手段】
【０００５】
本発明の通信装置は、第１の通信方式で通信する第１の通信手段と、前記第１の通信方式とは異なる第２の通信方式で通信する第２の通信手段と、外部装置との通信接続に前記第１の通信方式を使用する第１の通信接続と前記第２の通信方式を使用する第２の通信接続とがある状態で前記第１の通信方式の通信経路を変更する場合、定められた要求を前記第２の通信接続によって前記外部装置に送信するよう前記第２の通信手段を制御し、前記第１の通信方式の通信経路が変更された前記外部装置との第３の通信接続を確立するよう制御する制御手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、通信装置間の通信接続を維持しながら、通信経路を変えることができる。
【図面の簡単な説明】
【０００７】
【図１】通信システムの構成の一例を示す図である。
【図２】スマートフォンとデジタルカメラとの通信接続の例を示す図である。
【図３】通信経路を変更する処理の一例を示すフローチャートである。
【図４】スマートフォンとデジタルカメラとの通信接続の例を示す図である。
【図５】通信経路を変更する処理の一例を示すフローチャートである。
【図６】スマートフォンとデジタルカメラとの通信接続の例を示す図である。
【発明を実施するための形態】
【０００８】
図１を参照して、通信システム１について説明する。図１は、通信システム１の構成の一例を示す図である。通信システム１は、スマートフォン１００Ａとデジタルカメラ１００Ｂとを有する。
スマートフォン１００Ａは、Ｂｌｕｅｔｏｏｔｈ（登録商標）機能と無線ＬＡＮ機能とを有する。スマートフォン１００Ａは、ＣＰＵ１０１Ａとメモリ１０２Ａと不揮発性メモリ１０３Ａと表示部１０４Ａと操作部１０５Ａとバッテリ１０６Ａと３Ｇ／４Ｇ通信部１０７ＡとＢｌｕｅｔｏｏｔｈ通信部１０８Ａと無線ＬＡＮ部１０９Ａとを有する。また、スマートフォン１００Ａは、これらの各部を接続するシステムバス１１０Ａを有する。システムバス１１０Ａに接続される各部は、システムバス１１０Ａを介して互いにデータのやりとりを行うことができる。スマートフォン１００Ａは、第１の通信装置の一例である。
ＣＰＵ１０１Ａは、スマートフォン１００Ａ全体の制御を司る。ＣＰＵ１０１Ａは、スマートフォン１００Ａの各部を制御し、ユーザの操作や設定に応じて、通話・インターネット上のデータへのアクセス等を行う。
メモリ１０２Ａは、書き換え可能なメモリであり、スマートフォン１００Ａを制御するプログラムの実行する際の作業領域等として使用される。また、メモリ１０２Ａは、３Ｇ／４Ｇ通信部１０７Ａや無線ＬＡＮ部１０９Ａから受信するデジタルコンテンツデータや、表示部１０４Ａが表示するための映像データを保存するためのバッファとしても使用される。メモリ１０２Ａは、例えばＲＡＭ（半導体素子を利用した揮発性のメモリ）等からなる。
【０００９】
不揮発性メモリ１０３Ａは、スマートフォン１００Ａを制御するプログラム、及び、画像データや文字データ・その他のデータ等のプログラムを実行する際に使用されるデータを格納する。また、不揮発性メモリ１０３Ａは、スマートフォン１００Ａで動作するＷｅｂブラウザ、動画再生プレーヤ等のアプリケーションプログラムを格納する。また、不揮発性メモリ１０３Ａは、スマートフォン１００Ａのユーザ設定情報等、電源サイクルを超えて保持する必要のあるデータを格納する。メモリ１０３Ａは、例えばフラッシュメモリやＥＥＰＲＯＭ等からなる。
ＣＰＵ１０１Ａは、不揮発性メモリ１０３Ａに記憶されたプログラムをメモリ１０２Ａに展開して実行することで、図３や図５のスマートフォン１００Ａの処理や、スマートフォン１００Ａの各種の機能等が実現される。スマートフォン１００Ａに電源が投入されると、ＣＰＵ１０１Ａは不揮発性メモリ１０３Ａからプログラムを読み込み、スマートフォン１００Ａの制御を開始する。不揮発性メモリ１０３Ａは、記憶媒体の一例である。
【００１０】
表示部１０４Ａは、ＣＰＵ１０１Ａの制御に基づいて、画像やＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）からなる画面等を表示する。表示部１０４Ａは、例えば、液晶表示装置（ＬＣＤ）とそれをコントロールするＬＣＤドライバユニットとで構成される。ＣＰＵ１０１Ａは、プログラムに従い表示制御信号を生成し、映像信号を生成して表示部１０４Ａに出力するようにスマートフォン１００Ａの各部を制御する。表示部１０４Ａは出力された映像信号に基づいて映像を表示する。
操作部１０５Ａは、ユーザの指示をスマートフォン１００Ａに伝えるために使用される。操作部１０５Ａは、複数のボタンとタッチパネル等から構成される。操作部１０５Ａはボタンの押下や、タッチパネルが検出する座標情報等をＣＰＵ１０１Ａに通知する。
バッテリ１０６Ａは、スマートフォン１００Ａが動作するための電力を供給するためのユニットである。バッテリ１０６Ａは、充電可能な二次電池からなるユニットで、図示しない外部電源装置からの電力により充電することができる。
【００１１】
３Ｇ／４Ｇ通信部１０７Ａは、スマートフォン１００Ａと移動体通信網１００Ｄとの間の音声通信及びデータ通信を司るユニットである。３Ｇ／４Ｇ通信部１０７Ａは、無線通信を行うためのアンテナと無線信号を処理するための通信コントローラとから構成され、Ｗ−ＣＤＭＡ（ＵＭＴＳ）及びＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）にしたがった無線通信を実現する。本実施形態では、３Ｇ／４Ｇ通信部１０７Ａは、ＣＰＵ１０１Ａの制御に基づいて移動体通信網１００Ｄを構成する基地局の一つと接続する。そして、３Ｇ／４Ｇ通信部１０７Ａは、移動体通信網１００Ｄに接続された他のスマートフォンや、インターネット１００Ｅ上の端末等と音声通信やデータ通信を行う。
Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａは、Ｂｌｕｅｔｏｏｔｈによる無線通信を実現するための通信ユニットである。Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａは、無線通信のためのアンテナと無線信号を処理するため変復調回路や通信コントローラとから構成される。Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａは、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することにより、Ｂｌｕｅｔｏｏｔｈ規格に従った無線通信を実現する。本実施形態では、Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａは、後述のデジタルカメラ１００ＢのＢｌｕｅｔｏｏｔｈ通信部１１１Ｂとペアリングし、スマートフォン１００Ａとデジタルカメラ１００Ｂ間で直接通信する際に利用される。Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａは、第２の通信手段の一例である。Ｂｌｕｅｔｏｏｔｈは、第２の通信方式の一例である。
【００１２】
無線ＬＡＮ部１０９Ａは、Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａより高速な無線通信を実現するための通信ユニットである。無線ＬＡＮ部１０９Ａは、無線通信のためのアンテナと無線信号を処理するための通信コントローラとから構成され、ＩＥＥＥ８０２．１１ａ・ｂ・ｇ・ｎ・ａｃに従った無線通信を実現する。無線ＬＡＮ部１０９Ａは、無線ＬＡＮアクセスポイント１００Ｃ等に接続するために無線ＬＡＮクライアントとして動作するクライアントモードで動作する。本実施形態では、後述のデジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂとの間等でデータ通信を行う際に利用される。無線ＬＡＮ部１０９Ａは、第１の通信手段の一例である。無線ＬＡＮは、第１の通信方式の一例である。
【００１３】
デジタルカメラ１００Ｂは、Ｂｌｕｅｔｏｏｔｈ機能と無線ＬＡＮ機能とを有する。デジタルカメラ１００Ｂは、ＣＰＵ１０１Ｂとメモリ１０２Ｂと不揮発性メモリ１０３Ｂと操作部１０４Ｂと表示部１０５Ｂと記憶媒体Ｉ／Ｆ１０６Ｂと撮像部１０８Ｂと画像処理部１０９Ｂとバッテリ１１０Ｂとを有する。また、デジタルカメラ１００Ｂは、Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂと無線ＬＡＮ部１１２Ｂとを有する。また、デジタルカメラ１００Ｂは、これらの各部を接続するシステムバス１１３Ｂを有する。システムバス１１３Ｂに接続される各部は、システムバス１１３Ｂを介して互いにデータのやりとりを行うことができる。デジタルカメラ１００Ｂは、第２の通信装置の一例であり、撮像装置の一例である。
【００１４】
ＣＰＵ１０１Ｂは、デジタルカメラ１００Ｂ全体の制御を司る。ＣＰＵ１０１Ｂは、デジタルカメラ１００Ｂの各部を制御し、ユーザの操作や設定に応じて画像の記録等を行う。
メモリ１０２Ｂは、書き換え可能なメモリであり、デジタルカメラ１００Ｂを制御するプログラムの実行する際の作業領域等として使用される。メモリ１０２Ｂは、例えばＲＡＭ（半導体素子を利用した揮発性のメモリ）等からなる。
不揮発性メモリ１０３Ｂは、デジタルカメラ１００Ｂを制御するプログラム、及び、画像データや音声データ・その他のデータ等のプログラムを実行する際に使用されるデータを格納する。また、不揮発性メモリ１０３Ｂは、デジタルカメラ１００Ｂのユーザ設定情報等、電源サイクルを超えて保持する必要のあるデータを格納する。不揮発性メモリ１０３Ｂは、例えばフラッシュメモリやＥＥＰＲＯＭ等からなる。
ＣＰＵ１０１Ｂは、不揮発性メモリ１０３Ｂに記憶されたプログラムをメモリ１０２Ｂに展開して実行することで、図３や図５のデジタルカメラ１００Ｂの処理や、デジタルカメラ１００Ｂの各種の機能等が実現される。デジタルカメラ１００Ｂに電源が投入されると、ＣＰＵ１０１Ｂは不揮発性メモリ１０３Ｂからプログラムを読み込み、デジタルカメラ１００Ｂの制御を開始する。不揮発性メモリ１０３Ｂは、記憶媒体の一例である。
【００１５】
操作部１０４Ｂは、ユーザの指示をデジタルカメラ１００Ｂに伝えるために使用する。操作部１０４Ｂは、複数のボタンやダイヤル等より構成される。
表示部１０５Ｂは、ＣＰＵ１０１Ｂの制御に基づいて、画像やＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成する画面等を表示する。表示部１０５Ｂは、例えば、液晶表示装置（ＬＣＤ）とそれをコントロールするＬＣＤドライバユニットとで構成される。ＣＰＵ１０１Ｂは、プログラムに従い表示制御信号を生成し、映像信号を生成して表示部１０５Ｂに出力するようにデジタルカメラ１００Ｂの各部を制御する。表示部１０５Ｂは出力された映像信号に基づいて映像を表示する。
記憶媒体Ｉ／Ｆ１０６Ｂは、メモリカード等の記憶媒体１０７Ｂを装着するためのインターフェースである。記憶媒体Ｉ／Ｆ１０６Ｂは、ＣＰＵ１０１Ｂの制御に基づき、記憶媒体Ｉ／Ｆ１０６Ｂに装着された記憶媒体１０７Ｂからのデータの読み出しや、記憶媒体１０７Ｂに対するデータの書き込みを行う。
記憶媒体１０７Ｂは、撮影した画像データを保持するための書き換え可能な不揮発性メモリである。記憶媒体１０７Ｂには、例えば、ＳＤカードやコンパクトフラッシュ（登録商標）カードが用いられる。
撮像部１０８Ｂは、ＣＰＵ１０１Ｂの制御に基づいて、映像（光）を電気的な映像信号に変換し、映像信号をシステムバス１１３Ｂに出力する。撮像部１０８Ｂは、例えば、光学レンズユニットと絞り・ズーム・フォーカス等を制御する光学系、及び、光学レンズユニットを経て導入された光（映像）を電気的な映像信号に変換するための撮像素子等で構成される。撮像素子としては、一般的には、ＣＭＯＳを利用したＣＭＯＳ撮像素子（ＣＭＯＳイメージセンサー）や、ＣＣＤを利用したＣＣＤ撮像素子（ＣＣＤイメージセンサー）が利用される。
【００１６】
画像処理部１０９Ｂは、ＣＰＵ１０１Ｂの制御に基づいて、不揮発性メモリ１０３Ｂや記憶媒体１０７Ｂに格納された画像データや、撮像部１０８Ｂが出力する映像信号に対して各種画像処理を施す。画像処理部１０９Ｂが行う画像処理には、Ａ／Ｄ変換処理、Ｄ／Ａ変換処理、画像データの符号化処理、圧縮処理、デコード処理、拡大／縮小処理（リサイズ）、ノイズ低減処理、色変換処理、顔検出処理等が含まれる。画像処理部１０９Ｂを、特定の画像処理を施すための専用の回路ブロックで構成してもよい。また、画像処理の種別によっては画像処理部１０９Ｂを用いずにＣＰＵ１０１Ｂがプログラムに従って画像処理を施すことも可能である。
バッテリ１１０Ｂは、デジタルカメラ１００Ｂが動作するための電力を供給するユニットである。バッテリ１１０Ｂは、充電可能な二次電池からなるユニットで、図示しない外部のバッテリ充電器により充電することができる。
【００１７】
Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂは、Ｂｌｕｅｔｏｏｔｈによる無線通信を実現するための通信ユニットである。Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂは、無線通信のためのアンテナと無線信号を処理するため変復調回路と通信コントローラとから構成される。Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂは、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することによりＢｌｕｅｔｏｏｔｈ規格に従った無線通信を実現する。本実施形態では、Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂは、前述のスマートフォン１００ＡのＢｌｕｅｔｏｏｔｈ通信部１０８Ａとペアリングし、スマートフォン１００Ａとデジタルカメラ１００Ｂ間で直接通信する際に利用される。Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂは、第４の通信手段の一例である。
無線ＬＡＮ部１１２Ｂは、Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂより高速な無線通信を実現するための通信ユニットである。無線ＬＡＮ部１１２Ｂは、無線通信のためのアンテナと無線信号を処理するための通信コントローラとから構成され、ＩＥＥＥ８０２．１１ａ・ｂ・ｇ・ｎ・ａｃに従った無線通信を実現する。無線ＬＡＮ部１１２Ｂは、クライアントモード及びアクセスポイントモードの二つの動作モードを備えている。クライアントモードは、無線ＬＡＮアクセスポイント１００Ｃ等の無線ＬＡＮアクセスポイントに接続するために無線ＬＡＮクライアントとして動作するモードである。アクセスポイントモードは、他の無線ＬＡＮクライアントからの接続を受け付けるために無線ＬＡＮアクセスポイントとして動作するモードである。本実施形態では、無線ＬＡＮ部１１２Ｂは、前述のスマートフォン１００Ａの無線ＬＡＮ部１０９Ａとの間等で、データ通信を行う際に利用される。ＣＰＵ１０１Ｂは、無線ＬＡＮ部１１２Ｂを制御して、無線ＬＡＮ部１１２Ｂをアクセスポイントモードにし、ネットワークを形成することができる。このネットワークを形成する処理は、形成処理の一例である。無線ＬＡＮ部１１２Ｂは、第３の通信手段の一例である。アクセスポイントをＡＰとも呼ぶ。
【００１８】
無線ＬＡＮアクセスポイント１００Ｃは、スマートフォン１００Ａの無線ＬＡＮ部１０９Ａやデジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂと無線ＬＡＮ通信する機能を備える。無線ＬＡＮアクセスポイント１００Ｃは、中継装置の一例である。
移動体通信網１００Ｄは、スマートフォン１００Ａの３Ｇ／４Ｇ通信部１０７Ａが接続することのできる携帯電話事業者によるネットワーク通信網である。移動体通信網１００Ｄは、多数の基地局・基地局間ネットワーク・インターネットとのゲートウェイ等から構成される。スマートフォン１００Ａは移動体通信網１００Ｄを介して他のスマートフォンやインターネット上の端末・サーバと通信を行うことができる。
インターネット１００Ｅは、移動体通信網１００Ｄと接続されている。本実施形態では、インターネット１００Ｅは、無線ＬＡＮアクセスポイント１００Ｃとも接続されている。
【００１９】
次に、図２を参照して、スマートフォン１００Ａとデジタルカメラ１００Ｂとの通信経路（トポロジ）を説明する。図２は、スマートフォン１００Ａとデジタルカメラ１００Ｂとの通信経路の例を示す図である。なお、通信経路の構成を接続形態とも呼ぶ。スマートフォン１００Ａとデジタルカメラ１００ＢとはＭＰＴＣＰ（Ｍｕｌｔｉｐａｔｈ  ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ））で通信を行う。ＭＰＴＣＰは、複数のＴＣＰ接続をまとめて１つのＴＣＰ接続として扱う技術である。
まず、図２（Ａ）を参照して、スマートフォン１００Ａとデジタルカメラ１００Ｂと、が無線ＬＡＮアクセスポイント１００Ｃを介さず、無線ＬＡＮで直接通信接続している状態を説明する。図２（Ａ）の状態では、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間のＭＰＴＣＰのリンク２０３に、ＴＣＰ接続２０１とＴＣＰ接続２０２とが含まれる。ＭＰＴＣＰのリンク２０３は、ＭＰＴＣＰの通信接続の一例である。
【００２０】
ＴＣＰ接続２０１は、無線ＬＡＮ部１０９Ａと無線ＬＡＮ部１１２Ｂとを使用してスマートフォン１００Ａとデジタルカメラ１００Ｂとが無線ＬＡＮで直接通信する通信経路でのＴＣＰの通信接続である。ＴＣＰ接続２０１は、プロトコルスタックにおいて、無線ＬＡＮ部１０９Ａと無線ＬＡＮ部１１２Ｂとの無線ＬＡＮの通信接続２０１Ａの上で成立する。通信接続２０１Ａは、無線ＬＡＮを使用するネットワークインタフェース層の通信を表す。図２（Ａ）の状態において、デジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂは、アクセスポイントモードで動作している。スマートフォン１００Ａの無線ＬＡＮ部１０９Ａは、無線ＬＡＮアクセスポイントとして動作する無線ＬＡＮ部１１２Ｂに接続することにより、ＴＣＰ接続２０１が確立する。そして、スマートフォン１００Ａの無線ＬＡＮ部１０９Ａは、スマートフォン１００Ａとデジタルカメラ１００Ｂとが無線ＬＡＮを利用して直接通信することができる。この無線ＬＡＮではインターネットプロトコル（ＩＰ）を使った通信が可能である。図２（Ａ）では、デジタルカメラ１００Ｂはカメラアクセスポイントモードである。このため、デジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂは、アクセスポイントモードで動作する。
【００２１】
ＴＣＰ接続２０２は、Ｂｌｕｅｔｏｏｔｈ通信部１０８ＡとＢｌｕｅｔｏｏｔｈ通信部１１１Ｂとを使用してスマートフォン１００Ａとデジタルカメラ１００ＢとがＢｌｕｅｔｏｏｔｈで直接通信する通信経路でのＴＣＰの通信接続である。ＴＣＰ接続２０２は、Ｂｌｕｅｔｏｏｔｈ通信部１０８ＡとＢｌｕｅｔｏｏｔｈ通信部１１１ＢとのＢｌｕｅｔｏｏｔｈの通信の上で確立している。図２（Ａ）の状態において、スマートフォン１００ＡのＢｌｕｅｔｏｏｔｈ通信部１０８Ａとデジタルカメラ１００ＢのＢｌｕｅｔｏｏｔｈ通信部１１１Ｂとは、ペアリングしており、ＴＣＰ接続２０２が確立している。スマートフォン１００Ａとデジタルカメラ１００Ｂとは、Ｂｌｕｅｔｏｏｔｈを利用しても直接通信することができる。Ｂｌｕｅｔｏｏｔｈでは、ＩＰ  ｏｖｅｒ  Ｂｌｕｅｔｏｏｔｈ技術を用いてインターネットプロトコル（ＩＰ）による通信を行うことができる。ＴＣＰ接続２０２は、第２の通信接続の一例である。
スマートフォン１００Ａとデジタルカメラ１００Ｂとは、ＴＣＰ接続２０１及びＴＣＰ接続２０２の両方を利用して、ＭＰＴＣＰにより通信することができる。
【００２２】
次に、図２（Ｂ）を参照して、スマートフォン１００Ａとデジタルカメラ１００Ｂとが無線ＬＡＮアクセスポイント１００Ｃを介して、無線ＬＡＮで通信接続している状態を説明する。図２（Ｂ）の状態では、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間のＭＰＴＣＰのリンク２０３に、ＴＣＰ接続２０４とＴＣＰ接続２０２とが含まれる。
ＴＣＰ接続２０４は、無線ＬＡＮ部１０９Ａと無線ＬＡＮ部１１２Ｂとを使用してスマートフォン１００Ａとデジタルカメラ１００Ｂとが無線ＬＡＮアクセスポイント１００Ｃを介して無線ＬＡＮで通信する通信経路でのＴＣＰの通信接続である。ＴＣＰ接続２０４は、プロトコルスタックにおいて、無線ＬＡＮの通信接続２０４Ａ及び無線ＬＡＮの通信接続２０４Ｂの上で成立する。通信接続２０４Ａ、２０４Ｂは、無線ＬＡＮを使用するネットワークインタフェース層の通信を表す。スマートフォン１００Ａの無線ＬＡＮ部１０９Ａは、無線ＬＡＮクライアントとして無線ＬＡＮアクセスポイント１００Ｃとの通信接続２０４Ａを確立し、無線ＬＡＮアクセスポイント１００Ｃと通信可能な状態となっている。また、デジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂは、クライアントモードで動作することで無線ＬＡＮアクセスポイント１００Ｃとの通信接続２０４Ｂを確立し、無線ＬＡＮアクセスポイント１００Ｃと通信可能な状態となっている。そして、スマートフォン１００Ａとデジタルカメラ１００Ｂは無線ＬＡＮアクセスポイント１００Ｃを介して無線ＬＡＮで相互に通信することができる。図２（Ｂ）では、デジタルカメラ１００Ｂはインフラストラクチャモードである。このため、デジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂは、クライアントモードで動作する。
図２（Ｂ）のＴＣＰ接続２０２は、図２（Ａ）と同様である。スマートフォン１００Ａとデジタルカメラ１００Ｂとは、ＴＣＰ接続２０４及びＴＣＰ接続２０２の両方を利用して、ＭＰＴＣＰにより通信することができる。
【００２３】
次に、図３を参照して、スマートフォン１００Ａとデジタルカメラ１００Ｂとの無線ＬＡＮの通信経路を図２（Ａ）に示す状態から図２（Ｂ）に示す状態から変更する処理について説明する。図３は、スマートフォン１００Ａとデジタルカメラ１００Ｂとの無線ＬＡＮの接続経路を変更する処理の一例を示すフローチャートである。図３のフローチャート３００Ａは、スマートフォン１００Ａの処理であり、フローチャート３００Ｂは、デジタルカメラ１００Ｂの処理である。図３の処理開始前におけるＭＰＴＣＰのリンク２０３は、図２（Ａ）を参照して説明した状態であるものとする。図３の処理において、図２（Ａ）に示すＴＣＰ接続２０１は、第１の通信接続の一例である。図３の処理において、図２（Ｂ）に示すＴＣＰ接続２０４は、第３の通信接続の一例である。
【００２４】
Ｓ３０１Ａにおいて、ＣＰＵ１０１Ａは、無線ＬＡＮの通信経路を変更するか否かを判定する。より具体的には、ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが接続する無線ＬＡＮアクセスポイントを変更するか否かを判定する。表示部１０４Ａに表示される図示しない設定メニュー等のＧＵＩにおいて、ユーザが操作部１０５Ａを通じて定められた操作をした場合、ＣＰＵ１０１Ａは、アクセスポイントを変更すると判定する。また、無線ＬＡＮ部１０９Ａが定められた無線ＬＡＮアクセスポイントと通信可能な状態になった場合、ＣＰＵ１０１Ａは、アクセスポイントを変更すると判定する。例えば、スマートフォン１００Ａとデジタルカメラ１００Ｂを持つユーザが帰宅し、自宅の無線ＬＡＮアクセスポイント１００Ｃと通信可能な状態となった場合、ＣＰＵ１０１Ａは、アクセスポイントを変更すると判定する。定められた無線ＬＡＮアクセスポイントの情報は、無線ＬＡＮ部１０９Ａや不揮発性メモリ１０３Ａ等が保持する。ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが接続するアクセスポイントを変更すると判定した場合、図４（Ａ）に示すように、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間の無線ＬＡＮのＴＣＰ接続２０１を切断し、処理をＳ３０２Ａに進める。無線ＬＡＮでのＴＣＰ接続２０１が切断されると、ＢｌｕｅｔｏｏｔｈのＴＣＰ接続２０２のみが残る。ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが接続するアクセスポイントを変更しないと判定した場合、再度、Ｓ３０１Ａを実行する。本実施形態では、変更先の無線ＬＡＮアクセスポイントを無線ＬＡＮアクセスポイント１００Ｃとする。
【００２５】
Ｓ３０２Ａにおいて、ＣＰＵ１０１Ａは、ＭＰＴＣＰのリンク２０３によって、除外要求をデジタルカメラ１００Ｂに送信するようＢｌｕｅｔｏｏｔｈ通信部１０８Ａを制御する。除外要求の送信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。Ｓ３０２Ａの除外要求は、無線ＬＡＮでのＴＣＰ接続２０１をＭＰＴＣＰのリンク２０３から除外するコマンド（ＴＣＰ  ｏｐｔｉｏｎ）であり、より具体的には、ＲＦＣ６８２４で定義されているＲＥＭＯＶＥ＿ＡＤＤＲである。ＣＰＵ１０１Ａは、除外要求として、ＲＥＭＯＶＥ＿ＡＤＤＲと共に、無線ＬＡＮ部１０９Ａに割り当てられているＩＰアドレスをデジタルカメラ１００Ｂに送信する。この除外要求がデジタルカメラ１００Ｂで処理（後述のＳ３０２Ｂ）されると、デジタルカメラ１００Ｂがメモリ１０２Ｂ等で管理するＭＰＴＣＰのリンク２０３から無線ＬＡＮでのＴＣＰ接続２０１が除外される。また、ＣＰＵ１０１Ａは、メモリ１０２Ａ等で管理するＭＰＴＣＰのリンク２０３から無線ＬＡＮでのＴＣＰ接続２０１を除外する処理を行う。これにより、図４（Ｂ）に示すように、ＭＰＴＣＰのリンク２０３は、ＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２によって構成されることになる。ＩＰアドレスは、ネットワークアドレスの一例である。
Ｓ３０３Ａにおいて、ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが無線ＬＡＮアクセスポイント１００Ｃとの無線ＬＡＮの通信接続２０４Ａを確立するよう制御する。より具体的には、ＣＰＵ１０１Ａは、操作部１０５Ａが受け付けたユーザの指示や、不揮発性メモリ１０３Ａに格納されている接続情報に基づいて、無線ＬＡＮアクセスポイント１００Ｃと通信接続２０４Ａを確立するよう制御する。接続情報には、ＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  ＩＤｅｎｔｉｆｉｅｒ）及びパスワードが含まれる。ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが無線ＬＡＮアクセスポイント１００Ｃとの通信接続２０４Ａが確立した場合、処理をＳ３０４Ａに進め、通信接続２０４Ａが確立しない場合、再度Ｓ３０３Ａを実行する。
図４（Ｃ）に示すように、通信接続２０４Ａが確立すると、スマートフォン１００Ａと無線ＬＡＮアクセスポイント１００Ｃ間の無線ＬＡＮ通信が可能となる。ただし、ＭＰＴＣＰのリンク２０３は、図４（Ｂ）の状態と同様に、ＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２のみで構成されている。
【００２６】
Ｓ３０４Ａにおいて、ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａに割り当てるＩＰアドレスを決定する。より具体的には、操作部１０５Ａが受け付けたユーザの操作によって無線ＬＡＮ部１０９Ａで使用する固定ＩＰアドレスが予め指定されていれば、ＣＰＵ１０１Ａは、この固定ＩＰアドレスを使用する。また、固定ＩＰアドレスの指定がなければ、ＣＰＵ１０１Ａは、ＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）を用いて無線ＬＡＮ部１０９Ａに割り当てられるＩＰアドレスを取得する。また、ＤＨＣＰを用いてＩＰアドレスが決定できない場合は、ＣＰＵ１０１Ａは、ＡＰＩＰＡ（Ａｕｔｏｍａｔｉｃ  Ｐｒｉｖａｔｅ  ＩＰ  Ａｄｄｒｅｓｓｉｎｇ）を用いてＩＰアドレスを決定する。
Ｓ３０５Ａにおいて、ＣＰＵ１０１Ａは、Ｓ３０４Ａで決定したＩＰアドレスが、Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａで使用しているＩＰアドレスと重複するか否かを判定する。ＣＰＵ１０１Ａは、重複すると判定した場合は処理をＳ３０６Ａに進め、重複していないと判定した場合は、処理をＳ３０８Ａに進める。
Ｓ３０６Ａにおいて、ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａの設定を変更し、無線ＬＡＮ部１０９Ａと無線ＬＡＮアクセスポイント１００Ｃとの通信接続２０４Ａを切断する。
Ｓ３０７Ａにおいて、ＣＰＵ１０１Ａは、表示部１０４Ａに無線ＬＡＮによる通信接続が確立できない旨のメッセージを表示し、図３のフローチャート３００Ａの処理を終了する。
【００２７】
Ｓ３０８Ａにおいて、ＣＰＵ１０１Ａは、Ｓ３０４Ａで決定したＩＰアドレスを無線ＬＡＮ部１０９Ａに割り当てる。また、ＣＰＵ１０１Ａは、Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａを制御して無線ＬＡＮ部１０９Ａが接続している無線ＬＡＮアクセスポイント１００Ｃの情報をデジタルカメラ１００Ｂに送信する。無線ＬＡＮアクセスポイント１００Ｃの情報には、例えば、無線ＬＡＮアクセスポイント１００ＣのＳＳＩＤや接続パスワードが含まれる。この送信には、ＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２を用いてもよいし、ＳＰＰ（Ｓｅｒｉａｌ  Ｐｏｒｔ  Ｐｒｏｆｉｌｅ）のような他のＢｌｕｅｔｏｏｔｈ上の通信を用いてもよい。
Ｓ３０９Ａにおいて、ＣＰＵ１０１Ａは、ＭＰＴＣＰのリンク２０３によって、追加要求をデジタルカメラ１００Ｂに送信するようＢｌｕｅｔｏｏｔｈ通信部１０８Ａを制御する。追加要求の送信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。追加要求は、無線ＬＡＮでの通信接続２０４をＭＰＴＣＰに追加するコマンド（ＴＣＰ  ｏｐｔｉｏｎ）であり、より具体的には、ＲＦＣ６８２４で定義されているＡＤＤ＿ＡＤＤＲである。ＣＰＵ１０１Ａは、追加要求として、ＡＤＤ＿ＡＤＤＲと共に、Ｓ３０４Ａで決定した無線ＬＡＮ部１０９ＡのＩＰアドレスをデジタルカメラ１００Ｂに送信する。Ｓ３０２Ａで送信する除外要求、及び、Ｓ３０９Ａで送信する追加要求は、定められた要求の一例である。この定められた要求は、除外要求と追加要求とを含む。
【００２８】
Ｓ３１０Ａにおいて、ＣＰＵ１０１Ａは、Ｓ３１４Ｂの処理に対応して、無線ＬＡＮ部１０９Ａを使用して、無線ＬＡＮでのＴＣＰ接続２０４の確立を行う。そして、ＣＰＵ１０１Ａは、無線ＬＡＮでのＴＣＰ接続２０４が確立したか否かを判定する。ＣＰＵ１０１Ａは、無線ＬＡＮでのＴＣＰ接続２０４が確立したと判定した場合、処理をＳ３１１Ａに進め、無線ＬＡＮでのＴＣＰ接続２０４が確立していないと判定した場合、処理をＳ３０９Ａに進める。
Ｓ３１１Ａにおいて、ＣＰＵ１０１Ａは、メモリ１０２Ａ等で管理するＭＰＴＣＰのリンク２０３に、無線ＬＡＮでのＴＣＰ接続２０４を追加する処理を行う。その後、ＣＰＵ１０１Ａは、図３のフローチャート３００Ａの処理を終了する。フローチャート３００Ａの処理は、第１の制御処理の一例である。
【００２９】
次に説明する図３のフローチャート３００Ｂは、図２（Ａ）で示した通信経路から図２（Ｂ）で示した通信経路に変更するためのデジタルカメラ１００Ｂの処理を示す。
Ｓ３０１Ｂにおいて、ＣＰＵ１０１Ｂは、スマートフォン１００ＡとのＭＰＴＣＰのリンク２０３によって、ＭＰＴＣＰのリンク２０３からの無線ＬＡＮでのＴＣＰ接続２０１を除外する除外要求を受信したか否かを判定する。除外要求の受信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。除外要求は、Ｓ３０２Ａにおいてスマートフォン１００Ａが送信する。ＣＰＵ１０１Ｂは、除外要求を受信したと判定した場合、処理をＳ３０２Ｂに進め、除外要求を受信していないと判定した場合、再度Ｓ３０１Ｂを実行する。
Ｓ３０２Ｂにおいて、ＣＰＵ１０１Ｂは、メモリ１０２Ｂ等で管理するＭＰＴＣＰのリンク２０３から無線ＬＡＮでのＴＣＰ接続２０１を除外する処理を行う。これにより、図４（Ｂ）に示すように、ＭＰＴＣＰのリンク２０３はＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２によって構成されることになる。
【００３０】
Ｓ３０３Ｂにおいて、ＣＰＵ１０１Ｂは、無線ＬＡＮ部１１２Ｂのアクセスポイント機能を無効にし、無線ＬＡＮ部１１２Ｂをクライアントモードに変更する。図４（Ｂ）の符号４０２は、無線ＬＡＮ部１１２Ｂのアクセスポイント機能が無効になったことを表す。Ｓ３０３Ｂの処理は、デジタルカメラ１００Ｂのアクセスポイントとしての動作を停止させる停止処理の一例である。
Ｓ３０４Ｂにおいて、ＣＰＵ１０１Ｂは、ＭＰＴＣＰ上で通信しているデジタルカメラ１００Ｂのアプリケーションの動作モードを、低速通信に適するモード（低速通信モード）に変更する。このアプリケーションは、デジタルカメラ１００Ｂで動作する。ＣＰＵ１０１Ｂは、例えば、アプリケーションがデジタルカメラ１００Ｂの撮影する映像をスマートフォン１００Ａにストリーミングしている場合、ストリーミングの解像度を低下させたり、フレームレートを低下させたりする。低速通信モードは、Ｂｌｕｅｔｏｏｔｈに対応する第２の動作モードの一例である。Ｓ３０４Ｂの処理は、ＭＰＴＣＰのリンク２０３に無線ＬＡＮのＴＣＰ接続２０１がなく、ＢｌｕｅｔｏｏｔｈのＴＣＰ接続２０２がある場合に、アプリケーションを低速通信モードにするアプリケーション制御処理の一例である。
Ｓ３０５Ｂにおいて、ＣＰＵ１０１Ｂは、Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂが無線ＬＡＮアクセスポイントの接続情報をスマートフォン１００Ａから受信することを待つ。接続情報はＳ３０８Ａの処理で、スマートフォン１００Ａが送信する。ＣＰＵ１０１Ｂは、定められた時間内に無線ＬＡＮアクセスポイントの接続情報を受信した場合、処理をＳ３０６Ｂに進め、受信しなかった場合、処理をＳ３０７Ｂに進める。
【００３１】
Ｓ３０６Ｂにおいて、ＣＰＵ１０１Ｂは、Ｓ３０５Ｂで受信した接続情報に基づいて、無線ＬＡＮ部１１２Ｂが無線ＬＡＮアクセスポイント１００Ｃとの無線ＬＡＮの通信接続２０４Ｂを確立するよう制御する。この接続情報はＳ３０８Ａでスマートフォン１００Ａが送信した情報である。したがって、デジタルカメラ１００Ｂは、図４（Ｄ）の通信接続２０４Ｂのように、スマートフォン１００Ａが接続している無線ＬＡＮアクセスポイント１００Ｃに接続に行くことになる。
Ｓ３０７Ｂにおいて、ＣＰＵ１０１Ｂは、デジタルカメラ１００Ｂを無線ＬＡＮアクセスポイント１００Ｃに接続するための操作を要求するメッセージを含んだＧＵＩを表示部１０５Ｂに表示する。
Ｓ３０８Ｂにおいて、ＣＰＵ１０１Ｂは、操作部１０４Ｂを介して、ユーザによって無線ＬＡＮアクセスポイント１００Ｃに接続するための設定が行われることを待つ。ＣＰＵ１０１Ｂは、例えば、操作部１０４Ｂを介して、接続する無線ＬＡＮアクセスポイント１００ＣのＳＳＩＤや接続パスワードが入力されることを待つ。そして、ＣＰＵ１０１Ｂは、無線ＬＡＮアクセスポイント１００Ｃに接続するための設定を受け付けた後、次の処理を行う。すなわち、ＣＰＵ１０１Ｂは、受け付けた設定に基づいて、無線ＬＡＮ部１１２Ｂを無線ＬＡＮアクセスポイント１００Ｃに接続して、通信接続２０４Ｂを確立する。ＣＰＵ１０１Ｂは、通信接続２０４Ｂが確立した場合、処理をＳ３０９Ｂに進め、通信接続２０４Ｂが確立しなかった場合、再度Ｓ３０８を実行する。
【００３２】
Ｓ３０９Ｂにおいて、ＣＰＵ１０１Ｂは、無線ＬＡＮ部１１２Ｂに割り当てるＩＰアドレスを決定する。より具体的には、操作部１０４Ｂを介して無線ＬＡＮ部１１２Ｂで使用する固定ＩＰアドレスが予め指定されていれば、ＣＰＵ１０１Ｂは、この固定ＩＰアドレスを使用する。また、固定ＩＰアドレスの指定がなければ、ＣＰＵ１０１Ｂは、ＤＨＣＰを用いて無線ＬＡＮ部１１２Ｂに割り当てられるＩＰアドレスを取得する。また、ＤＨＣＰを用いてＩＰアドレスが決定できない場合は、ＣＰＵ１０１Ｂは、ＡＰＩＰＡを用いてＩＰアドレスを決定する。
Ｓ３１０Ｂにおいて、ＣＰＵ１０１Ｂは、Ｓ３０９Ｂで決定したＩＰアドレスが、Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂで使用しているＩＰアドレスと重複するか否かを判定する。ＣＰＵ１０１Ｂは、重複すると判定した場合、処理をＳ３１１Ｂに進め、重複していないと判定した場合、処理をＳ３１３Ｂに進める。
Ｓ３１１Ｂにおいて、ＣＰＵ１０１Ｂは、無線ＬＡＮ部１１２Ｂの設定を変更し、無線ＬＡＮの通信接続２０４Ｂを切断する。
Ｓ３１２Ｂにおいて、ＣＰＵ１０１Ｂは、表示部１０５Ｂに無線ＬＡＮによるスマートフォン１００Ａとの通信接続が確立できない旨のメッセージを表示し、フローチャート３００Ｂの処理を終了する。
【００３３】
Ｓ３１３Ｂにおいて、ＣＰＵ１０１Ｂは、Ｓ３０９Ｂで決定したＩＰアドレスを無線ＬＡＮ部１１２Ｂに割り当てる。また、ＣＰＵ１０１Ｂは、ＭＰＴＣＰのリンク２０３によって追加要求を受信したか否かを判定する。追加要求の受信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。追加要求は、Ｓ３０９Ａにおいてスマートフォン１００Ａが送信するものである。ＣＰＵ１０１Ｂは、追加要求を受信したと判定した場合、処理をＳ３１４Ｂへ進め、追加要求を受信していないと判定した場合、フローチャート３００Ｂの処理を終了する。ただし、ＣＰＵ１０１Ｂは、追加要求を受信していないと判定した場合、追加要求を受信するまで、所定の時間、待ってもよい。
Ｓ３１４Ｂにおいて、ＣＰＵ１０１Ｂは、Ｓ３１３Ｂで受信した追加要求（ＡＤＤ＿ＡＤＤＲ）で指定されたＩＰアドレスに対して、無線ＬＡＮ部１１２Ｂによって、無線ＬＡＮでのＴＣＰ接続２０４の確立を試みる。ＣＰＵ１０１Ｂは、無線ＬＡＮでのＴＣＰ接続２０４が確立した場合、処理をＳ３１６Ｂに進め、確立しない場合、処理をＳ３１５Ｂに進める。
【００３４】
Ｓ３１５Ｂにおいて、ＣＰＵ１０１Ｂは、表示部１０５Ｂに無線ＬＡＮによるスマートフォン１００Ａとの通信接続が確立できない旨のメッセージを表示し、フローチャート３００Ｂの処理を終了する。
Ｓ３１６において、ＣＰＵ１０１Ｂは、メモリ１０２Ｂ等で管理するＭＰＴＣＰのリンク２０３に、無線ＬＡＮでのＴＣＰ接続２０４を追加する処理を行う。これにより、ＣＰＵ１０１Ｂは、ＭＰＴＣＰでの通信にＡＤＤ＿ＡＤＤＲコマンドで指定されたＩＰアドレスを使用するようになる。そして、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間の通信経路は、図２（Ｂ）に示す状態になる。
Ｓ３１７Ｂにおいて、ＣＰＵ１０１Ｂは、Ｓ３０４Ｂで低速通信用に変更したアプリケーションの動作モードを元の高速通信に適する動作モード（高速通信モード）に戻す。ＣＰＵ１０１Ｂは、例えば、アプリケーションがデジタルカメラ１００Ｂの撮影する映像をスマートフォン１００Ａにストリーミングしている場合は、低下させたストリーミングの解像度やフレームレートを元に戻す。高速通信モードは、無線ＬＡＮに対応する第１の動作モードの一例である。Ｓ３１７Ｂの処理は、ＭＰＴＣＰのリンク２０３に無線ＬＡＮのＴＣＰ接続２０１又はＴＣＰ接続２０４がある場合に、アプリケーションを高速通信モードにするアプリケーション制御処理の一例である。
図３のフローチャート３００Ｂの処理は、第２の制御処理の一例である。
【００３５】
図３のフローチャート３００Ａ、３００Ｂによれば、図２（Ａ）の状態から図２（Ｂ）の状態に、ＭＰＴＣＰのリンク２０３を維持しながら遷移することができる。したがって、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間で、ストリーミングやデータ転送をしていた場合でも、この通信を中断することなく、デジタルカメラ１００Ｂをカメラアクセスポイントモードからインフラストラクチャモードに変更できる。
【００３６】
次に、図５を参照して、スマートフォン１００Ａとデジタルカメラ１００Ｂとの無線ＬＡＮの接続経路を図２（Ｂ）に示す状態から図２（Ａ）に示す状態に変更する処理について説明する。図５は、スマートフォン１００Ａとデジタルカメラ１００Ｂとの無線ＬＡＮの接続経路を変更する処理の一例を示すフローチャートである。図５のフローチャート５００Ａは、スマートフォン１００Ａの処理であり、フローチャート５００Ｂは、デジタルカメラ１００Ｂの処理である。図５の処理開始前におけるＭＰＴＣＰのリンク２０３は、図２（Ｂ）を参照して説明した状態であるものとする。図５の処理において、図２（Ｂ）に示すＴＣＰ接続２０４は、第１の通信接続の一例である。図５の処理において、図２（Ａ）に示すＴＣＰ接続２０１は、第３の通信接続の一例である。
【００３７】
Ｓ５０１Ａにおいて、ＣＰＵ１０１Ａは、無線ＬＡＮの通信経路を変更するか否かを判定する。より具体的には、ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが接続する無線ＬＡＮアクセスポイントを変更するか否かを判定する。表示部１０４Ａに表示される図示しない設定メニュー等のＧＵＩにおいて、ユーザが操作部１０５Ａを通じて定められた操作をした場合、ＣＰＵ１０１Ａは、アクセスポイントを変更すると判定する。また、スマートフォン１００Ａと無線ＬＡＮアクセスポイント１００Ｃとの距離が離れて無線ＬＡＮ部１０９Ａが無線ＬＡＮアクセスポイント１００Ｃと無線ＬＡＮでの通信ができなくなることがある。このように、無線ＬＡＮ部１０９Ａが無線ＬＡＮアクセスポイント１００Ｃと無線ＬＡＮでの通信ができなくなった場合、ＣＰＵ１０１Ａは、アクセスポイントを変更すると判定する。この場合の例として、無線ＬＡＮアクセスポイント１００Ｃを介した無線ＬＡＮでのＴＣＰ接続２０４が確立した状態で、ユーザがスマートフォン１００Ａとデジタルカメラ１００Ｂを持ち出し、無線ＬＡＮアクセスポイント１００Ｃとの距離が離れた場合がある。ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが接続するアクセスポイントを変更すると判定した場合、次の処理を行う。すなわち、ＣＰＵ１０１Ａは、図６（Ａ）に示すように、スマートフォン１００Ａと無線ＬＡＮアクセスポイント１００Ｃとの間の無線ＬＡＮの通信接続２０４Ａを切断し、処理をＳ５０２Ａに進める。通信接続２０４Ａを切断が切断すると、無線ＬＡＮでのＴＣＰ接続２０４が切断されて、ＢｌｕｅｔｏｏｔｈのＴＣＰ接続２０２のみが残る。ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが接続するアクセスポイントを変更しないと判定した場合、再度、Ｓ５０１Ａを実行する。
【００３８】
Ｓ５０２Ａにおいて、ＣＰＵ１０１Ａは、ＭＰＴＣＰのリンク２０３によって、除外要求をデジタルカメラ１００Ｂに送信するようＢｌｕｅｔｏｏｔｈ通信部１０８Ａを制御する。除外要求の送信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。Ｓ５０２Ａで送信する除外要求は、無線ＬＡＮでのＴＣＰ接続２０４をＭＰＴＣＰのリンク２０３から除外するコマンド（ＴＣＰ  ｏｐｔｉｏｎ）であり、より具体的には、ＲＦＣ６８２４で定義されているＲＥＭＯＶＥ＿ＡＤＤＲである。ＣＰＵ１０１Ａは、除外要求として、ＲＥＭＯＶＥ＿ＡＤＤＲと共に、無線ＬＡＮ部１０９Ａに割り当てられているＩＰアドレスをデジタルカメラ１００Ｂに送信する。この除外要求がデジタルカメラ１００Ｂで処理（後述のＳ５０２Ｂ）されると、デジタルカメラ１００Ｂがメモリ１０２Ｂ等で管理するＭＰＴＣＰのリンク２０３から無線ＬＡＮでのＴＣＰ接続２０４が除外される。また、ＣＰＵ１０１Ａは、メモリ１０２Ａ等で管理するＭＰＴＣＰのリンク２０３から無線ＬＡＮでのＴＣＰ接続２０４を除外する処理を行う。これにより、図６（Ｂ）に示すように、ＭＰＴＣＰのリンク２０３は、ＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２によって構成されることになる。
Ｓ５０３Ａにおいて、ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａが無線ＬＡＮアクセスポイントとなるデジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂとの無線ＬＡＮの通信接続２０１Ａを確立するよう制御する。ここで、スマートフォン１００Ａの不揮発性メモリ１０２Ａにはデジタルカメラ１００Ｂの無線ＬＡＮ部１１２Ｂが無線ＬＡＮアクセスポイントとして動作するときの接続情報が格納されている。この状態で、後述するＳ５０５Ｂにおいて無線ＬＡＮ部１１２Ｂがアクセスポイントモードとしての動作を開始すると、無線ＬＡＮ部１０９Ａと無線ＬＡＮ部１１２Ｂとの無線ＬＡＮの通信接続２０１Ａが自動的に確立する。ＣＰＵ１０１Ａは、無線ＬＡＮの通信接続２０１Ａが確立した場合、処理をＳ５０４Ａに進める。この場合、図６（Ｄ）に示すように、スマートフォン１００Ａとデジタルカメラ１００Ｂ間の無線ＬＡＮ通信が可能となる。また、ＭＰＴＣＰのリンク２０３は、図６（Ｂ）と同様に、ＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２のみで構成される。ＣＰＵ１０１Ａは、無線ＬＡＮの通信接続２０１Ａが確立しない場合、再度Ｓ５０３Ａを実行する。
【００３９】
Ｓ５０４Ａにおいて、ＣＰＵ１０１Ａは、無線ＬＡＮ部１０９Ａに割り当てるＩＰアドレスを決定する。より具体的には、無線ＬＡＮ部１０９Ａはアクセスポイントモードとして動作する無線ＬＡＮ部１１２Ｂに接続している。このため、ＣＰＵ１０１Ａは、デジタルカメラ１００Ｂで動作するＤＨＣＰサーバから、無線ＬＡＮ部１０９Ａに割り当てるＩＰアドレスを取得する。デジタルカメラ１００Ｂで動作するＤＨＣＰサーバは、Ｂｌｕｅｔｏｏｔｈ通信部１０８Ａが使用しているＩＰアドレスを把握している。したがって、このＤＨＣＰサーバは、Ｂｌｕｅｔｏｏｔｈ通信部１０８ＡのＩＰアドレスと重複しないように無線ＬＡＮ部１０９Ａに割り当てるＩＰアドレスを決定できる。そして、ＣＰＵ１０１Ａは、決定したＩＰアドレスを無線ＬＡＮ部１０９Ａに割り当てる。
Ｓ５０５Ａにおいて、ＣＰＵ１０１Ａは、ＭＰＴＣＰのリンク２０３によって、追加要求をデジタルカメラ１００Ｂに送信するようＢｌｕｅｔｏｏｔｈ通信部１０８Ａを制御する。追加要求の送信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。Ｓ５０５Ａの追加要求は、無線ＬＡＮでのＴＣＰ接続２０１をＭＰＴＣＰに追加するコマンド（ＴＣＰ  ｏｐｔｉｏｎ）であり、より具体的には、ＲＦＣ６８２４で定義されているＡＤＤ＿ＡＤＤＲである。ＣＰＵ１０１Ａは、追加要求として、ＡＤＤ＿ＡＤＤＲと共に、Ｓ５０４Ａで決定した無線ＬＡＮ部１０９ＡのＩＰアドレスをデジタルカメラ１００Ｂに送信する。
【００４０】
Ｓ５０６Ａにおいて、ＣＰＵ１０１Ａは、後述するＳ５１２Ｂで送信されるエラー通知を受信したか否かを判定する。この判定では、一定時間エラー通知を待つような構成にしてもよい。ＣＰＵ１０１Ａは、エラー通知を受信したと判定した場合、処理をＳ５０７Ａに進め、エラー通知を受信していないと判定した場合、処理をＳ５０８Ａに進める。
Ｓ５０７Ａにおいて、ＣＰＵ１０１Ａは、表示部１０４Ａに無線ＬＡＮでのＴＣＰ接続２０１が確立できない旨のメッセージを表示して、フローチャート５００Ａの処理を終了する。
Ｓ５０８Ａにおいて、ＣＰＵ１０１Ａは、Ｓ５０９Ｂの処理に対応して、無線ＬＡＮ部１０９Ａを使用して、無線ＬＡＮでのＴＣＰ接続２０１の確立を行う。そして、ＣＰＵ１０１Ａは、無線ＬＡＮでのＴＣＰ接続２０１が確立したか否かを判定する。ＣＰＵ１０１Ａは、無線ＬＡＮでのＴＣＰ接続２０１が確立したと判定した場合、処理をＳ５０９Ａに進め、無線ＬＡＮでのＴＣＰ接続２０１が確立していないと判定した場合、処理をＳ５０７Ａに進める。
Ｓ５０９Ａにおいて、ＣＰＵ１０１Ａは、メモリ１０２Ａ等で管理するＭＰＴＣＰのリンク２０３に、無線ＬＡＮでのＴＣＰ接続２０１を追加する処理を行う。その後、ＣＰＵ１０１Ａは、図３のフローチャート３００Ａの処理を終了する。
【００４１】
次に説明する図５のフローチャート５００Ｂは、図２（Ｂ）で示した通信経路から図２（Ａ）で示した通信経路に変更するためのデジタルカメラ１００Ｂの処理を示す。
Ｓ５０１Ｂにおいて、ＣＰＵ１０１Ｂは、スマートフォン１００ＡとのＭＰＴＣＰのリンク２０３によって、ＭＰＴＣＰのリンク２０３からの無線ＬＡＮでのＴＣＰ接続２０４を除外する除外要求を受信したか否かを判定する。除外要求の受信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。除外要求は、Ｓ５０２Ａにおいてスマートフォン１００Ａが送信するものである。ＣＰＵ１０１Ｂは、除外要求を受信したと判定した場合、処理をＳ５０２Ｂに進め、除外要求を受信していないと判定した場合、再度Ｓ５０１Ｂを実行する。
Ｓ５０２Ｂにおいて、ＣＰＵ１０１Ｂは、メモリ１０２Ｂ等で管理するＭＰＴＣＰのリンク２０３から無線ＬＡＮでのＴＣＰ接続２０４を除外する処理を行う。これにより、図６（Ｂ）に示すように、ＭＰＴＣＰのリンク２０３はＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２によって構成されることになる。
【００４２】
Ｓ５０３Ｂにおいて、ＣＰＵ１０１Ｂは、図６（Ｂ）に示すように、無線ＬＡＮ部１１２Ｂを制御して、無線ＬＡＮの通信接続２０４Ｂを切断するよう制御する。
Ｓ５０４Ｂの処理は、図３のＳ３０４Ｂと同様である。
Ｓ５０５Ｂにおいて、ＣＰＵ１０１Ｂは、無線ＬＡＮ部１１２Ｂのアクセスポイント機能を有効にし、無線ＬＡＮ部１１２Ｂをアクセスポイントモードに変更する。図６（Ｃ）の符号６０４は、無線ＬＡＮ部１１２Ｂのアクセスポイント機能が有効であることを表す。
【００４３】
Ｓ５０６Ｂにおいて、ＣＰＵ１０１Ｂは、アクセスポイントモードとして動作する無線ＬＡＮ部１１２Ｂが、無線ＬＡＮの接続要求を受信したか否かを判定する。ＣＰＵ１０１Ｂは、有効な接続情報（ＳＳＩＤ・パスワード）を有する無線ＬＡＮ接続要求を受信したと判定した場合、図６（Ｄ）に示すように、無線ＬＡＮの通信接続２０１Ａを確立し、処理をＳ５０７Ｂに進める。なお、この際にスマートフォン１００Ａで動作するＤＨＣＰクライアントからアドレス割り当て要求があった場合、ＣＰＵ１０１Ｂは、次の処理を行う。すなわち、ＣＰＵ１０１Ｂは、ＤＨＣＰに従って、Ｂｌｕｅｔｏｏｔｈ通信部１１１ＢのＩＰアドレス、及び、Ｂｌｕｅｔｏｏｔｈ通信部１０８ＡのＩＰアドレスとは異なるＩＰアドレスをスマートフォン１００Ａの無線ＬＡＮ部１０９Ａに割り当てる。ＣＰＵ１０１Ｂは、有効な接続情報を有する無線ＬＡＮ接続要求を受信していないと判定した場合、再度Ｓ５０６Ｂを実行する。
Ｓ５０７Ｂにおいて、ＣＰＵ１０１Ｂは、ＭＰＴＣＰのリンク２０３によって追加要求を受信したか否かを判定する。追加要求の受信には、ＭＰＴＣＰのリンク２０３に含まれるＢｌｕｅｔｏｏｔｈでのＴＣＰ接続２０２が使われる。追加要求は、Ｓ５０５Ａにおいてスマートフォン１００Ａが送信する。ＣＰＵ１０１Ｂは、追加要求を受信したと判定した場合、処理をＳ５０８Ｂへ進め、追加要求を受信していないと判定した場合、フローチャート５００Ｂの処理を終了する。ただし、ＣＰＵ１０１Ｂは、追加要求を受信していないと判定した場合、追加要求を受信するまで、所定の時間、待ってもよい。
【００４４】
Ｓ５０８Ｂにおいて、ＣＰＵ１０１Ｂは、Ｓ５０７Ｂで受信した追加要求（ＡＤＤ＿ＡＤＤＲコマンド）で指定されたＩＰアドレスが、Ｓ５０６Ｂでスマートフォン１００Ａに割り当てたＩＰアドレスと一致するか否かを判定する。ＣＰＵ１０１Ｂは、一致すると判定した場合は処理をＳ５０９Ｂに進め、一致しないと判定した場合、処理をＳ５１２Ｂに進める。なお、Ｓ５０６ＢにおいてＣＰＵ１０１ＢがＤＨＣＰによりスマートフォン１００ＡにＩＰアドレスを割り当てていない場合は、Ｓ５０８ＢにおいてＣＰＵ１０１Ｂは処理をＳ５０９Ｂに進める。
Ｓ５０９Ｂにおいて、ＣＰＵ１０１Ｂは、Ｓ５０７Ｂで受信した追加要求（ＡＤＤ＿ＡＤＤＲ）で指定されたＩＰアドレスに対して、無線ＬＡＮ部１１２Ｂによって、無線ＬＡＮでのＴＣＰ接続２０１の確立を試みる。ＣＰＵ１０１Ｂは、無線ＬＡＮでのＴＣＰ接続２０１が確立した場合、処理をＳ５１０Ｂに進め、確立しない場合、処理をＳ５１２Ｂに進める。
Ｓ５１０Ｂにおいて、ＣＰＵ１０１Ｂは、メモリ１０２Ｂ等で管理するＭＰＴＣＰのリンク２０３に、無線ＬＡＮでのＴＣＰ接続２０１を追加する処理を行う。これにより、ＣＰＵ１０１Ｂは、ＭＰＴＣＰでの通信にＡＤＤ＿ＡＤＤＲコマンドで指定されたＩＰアドレスを使用するようになる。そして、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間の通信経路は、図２（Ａ）に示す状態になる。
【００４５】
Ｓ５１１Ｂの処理は、図３のＳ３１７Ｂと同様である。
Ｓ５１２Ｂにおいて、ＣＰＵ１０１Ｂは、表示部１０５Ｂに無線ＬＡＮでのＴＣＰ接続２０１が確立できない旨のメッセージを表示する。また、ＣＰＵ１０１Ｂは、エラーが発生した旨の通知を、Ｂｌｕｅｔｏｏｔｈ通信部１１１Ｂを介してスマートフォン１００Ａに送信する。
Ｓ５１３Ｂおいて、ＣＰＵ１０１Ｂは、Ｓ５０５Ｂで有効にした無線アクセスポイント機能を無効にし、フローチャート５００Ｂの処理を終了する。
【００４６】
図５のフローチャート５００Ａ、５００Ｂによれば、図２（Ｂ）の状態から図２（Ａ）の状態に、ＭＰＴＣＰのリンク２０３を維持しながら遷移することができる。したがって、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間で、ストリーミングやデータ転送をしていた場合でも、この通信を中断することなく、デジタルカメラ１００Ｂをインフラストラクチャモードからカメラアクセスポイントモードに変更できる。
【００４７】
以上説明したように、本実施形態では、無線ＬＡＮの通信経路を変更する場合、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間で、ＢｌｕｅｔｏｏｔｈのＴＣＰ接続２０２を維持しながら、ＴＣＰ接続２０２で除外要求と追加要求の送受信をする。そして、この送受信によって、無線ＬＡＮのＴＣＰ接続２０１をＴＣＰ接続２０４にしたり無線ＬＡＮのＴＣＰ接続２０４をＴＣＰ接続２０１にしたりして、無線ＬＡＮの通信経路を変更する。したがって、ＭＰＴＣＰのリンク２０３を維持しながら、無線ＬＡＮの通信経路を変更できる。また、ＢｌｕｅｔｏｏｔｈのＴＣＰ接続２０２を維持できるため、アプリケーションレベルの通信を維持できる。このため、アプリケーションレベルの通信を維持した状態で、無線ＬＡＮの通信経路を変更できる。アプリケーションレベルの通信には、例えば、撮影データのストリーミングや撮影済みデータの転送が挙げられる。
また、本実施形態では、ＭＰＴＣＰによる通信接続を維持しながら、デジタルカメラ１００Ｂをインフラストラクチャモードからカメラアクセスポイントモードに変更したり、カメラアクセスポイントモードからインフラストラクチャモードに変更したりできる。したがって、ＭＰＴＣＰ上に構築されたアプリケーションレベルの通信を維持したまま、スマートフォン１００Ａとデジタルカメラ１００Ｂとの間のトポロジの変更を実現することができる。
また、本実施形態では、ＭＰＴＣＰのリンク２０３に応じて、ＣＰＵ１０１Ｂは、アプリケーションの動作モードを変更する。したがって、アプリケーションの動作が、自動的に、ＭＰＴＣＰのリンク２０３に応じた通信速度に対応する動作になり、ユーザの利便性が向上する。
【００４８】
上記の実施形態では、スマートフォン１００Ａとデジタルカメラ１００Ｂとが無線ＬＡＮで直接通信する場合に、デジタルカメラ１００Ｂをアクセスポイントとする構成を説明した。しかし、この構成に限定されるものではない。例えば、スマートフォン１００Ａとデジタルカメラ１００Ｂとが無線ＬＡＮで直接通信する場合に、アドホック接続モード（Ａｄｈｏｃ）やＷｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）等の無線ＬＡＮの機器間接続技術を使用してもよい。
また、上記の実施形態では、ＭＰＴＣＰでの通信に、無線ＬＡＮとＢｌｕｅｔｏｏｔｈを使用する。しかし、Ｂｌｕｅｔｏｏｔｈの代わりに、Ｚｉｇｂｅｅ（登録商標）やＺ−Ｗａｖｅ（登録商標）等、他の近距離無線通信技術を用いてもよい。
また、上記の実施形態では通信システム１はスマートフォン１００Ａとデジタルカメラ１００Ｂとを有する。ただし、スマートフォン１００Ａの代わりに、パーソナルコンピュータ、タブレットコンピュータ、ＰＤＡ、メディアプレーヤ、ゲーム機、デジタルカメラ等の他の通信装置を使用してもよい。また、デジタルカメラ１００Ｂの代わりに、パーソナルコンピュータ、タブレットコンピュータ、ＰＤＡ、メディアプレーヤ、ゲーム機、スマートフォン等、他の通信装置を使用してもよい。
【００４９】
（その他の実施形態）
本発明は、上述した実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５０】
以上、本発明を実施形態と共に説明したが、上記実施形態は本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
例えば、スマートフォン１００Ａやデジタルカメラ１００Ｂのハードウェア構成として、ＣＰＵは複数存在してもよく、複数のＣＰＵが各装置のＨＤＤ等に記憶されているプログラムに基づき処理を実行するようにしてもよい。また、スマートフォン１００Ａやデジタルカメラ１００Ｂのハードウェア構成として、ＣＰＵに替えてＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いることとしてもよい。ソフトウェア構成の一部は、スマートフォン１００Ａやデジタルカメラ１００Ｂのハードウェアとして実装されてもよい。
【００５１】
以上、上述した実施形態によれば、通信装置間の通信接続を維持しながら、通信経路を変えることができる。
【符号の説明】
【００５２】
１００Ａ  スマートフォン
１０１Ａ  ＣＰＵ
１０８Ａ  Ｂｌｕｅｔｏｏｔｈ通信部
１０９Ａ  無線ＬＡＮ部
１００Ｂ  デジタルカメラ
１０１Ｂ  ＣＰＵ
１１１Ｂ  Ｂｌｕｅｔｏｏｔｈ通信部
１１２Ｂ  無線ＬＡＮ部
【図１】
2019186724.tif 000003
【図２】
2019186724.tif 000004
【図３】
2019186724.tif 000005
【図４】
2019186724.tif 000006
【図５】
2019186724.tif 000007
【図６】
2019186724.tif 000008