(57)【要約】【課題】  コンテンツの再生制御情報を送信する他の通信装置との間の通信路が切断されたことに基づいてコンテンツの再生を停止できるようにすることで、ユーザの利便性を向上させることが可能な通信装置を提供することを目的とする。【解決手段】  他の通信装置から受信した情報に基づいて外部装置からコンテンツを取得及び再生し、他の通信装置から受信した再生制御情報に基づいてコンテンツの再生を制御する通信装置が、コンテンツを再生している場合に、他の通信装置との間の通信路の切断を検知したことに基づいて、コンテンツの再生を停止する。【選択図】  図４
2019169870.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
外部装置が保持するコンテンツの関連情報を他の通信装置から受信する第一の受信手段と、
前記関連情報に基づいて取得したコンテンツの再生を制御するための制御情報を前記他の通信装置から受信するために、前記他の通信装置との間で通信路を確立する第一の確立手段と、
前記第一の受信手段により受信された前記関連情報に基づいて取得したコンテンツを再生している場合に、前記第一の確立手段により確立された前記通信路の切断を検知する検知手段と、
前記検知手段により前記通信路の切断が検知されたことに基づいて、前記外部装置が保持するコンテンツの再生を停止するための処理を行う停止手段と、
を有することを特徴とする通信装置。
【請求項２】
前記停止手段により前記外部装置が保持するコンテンツの再生を停止するための処理が行われた場合に、前記外部装置が保持するコンテンツの再生を再開するか否かをユーザに選択させる第一の選択手段と、
前記外部装置が保持するコンテンツの再生を再開すると前記第一の選択手段により選択された場合、前記外部装置が保持するコンテンツの再生を再開する第一の再開手段と、
を更に有することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記外部装置が保持するコンテンツの再生を前記通信路が切断された場合に継続するか否かをユーザに選択させる第二の選択手段を更に有し、
前記外部装置が保持するコンテンツの再生を継続しないと前記第二の選択手段により選択された場合、前記停止手段は、前記検知手段により前記通信路の切断が検知されたことに基づいて、前記外部装置が保持するコンテンツの再生を停止するための処理を行い、
前記外部装置が保持するコンテンツの再生を継続すると前記第二の選択手段により選択された場合、前記停止手段による停止のための処理は行われないことを特徴とする請求項１に記載の通信装置。
【請求項４】
前記関連情報に基づいて取得したコンテンツが、再生できるユーザが制限されているコンテンツである場合、前記停止手段は、前記検知手段により前記通信路の切断が検知されたことに基づいて、前記外部装置が保持するコンテンツの再生を停止するための処理を行い、
前記関連情報に基づいて取得したコンテンツが、再生できるユーザが制限されているコンテンツではない場合、前記停止手段による停止のための処理は行われないことを特徴とする請求項１に記載の通信装置。
【請求項５】
前記関連情報に基づいて取得したコンテンツの再生を、前記通信装置が受け付けたユーザ操作に基づいて制御できない場合、前記停止手段は、前記検知手段により前記通信路の切断が検知されたことに基づいて、前記外部装置が保持するコンテンツの再生を停止するための処理を行い、
前記関連情報に基づいて取得したコンテンツの再生を、前記通信装置が受け付けたユーザ操作に基づいて制御できる場合、前記停止手段による停止のための処理は行われないことを特徴とする請求項１に記載の通信装置。
【請求項６】
前記停止手段により前記外部装置が保持するコンテンツの再生を停止するための処理が行われたことに基づいて、前記外部装置が保持するコンテンツの再生を停止したことをユーザに通知する通知手段を更に有することを特徴とする請求項１から５の何れか一項に記載の通信装置。
【請求項７】
前記コンテンツの再生の終了を指示する終了指示を受け付ける受付手段を更に有し、
前記検知手段により前記通信路の切断が検知される前に前記受付手段により前記終了指示を受け付けなかった場合、前記通知手段は、前記停止手段により前記外部装置が保持するコンテンツの再生を停止するための処理が行われたことに基づいて、前記外部装置が保持するコンテンツの再生を停止したことを通知し、
前記検知手段により前記通信路の切断が検知される前に前記受付手段により前記終了指示を受け付けた場合、前記通知手段による通知は行わないことを特徴とする請求項６に記載の通信装置。
【請求項８】
前記検知手段により前記通信路の切断が検知されたことに基づいて、前記他の通信装置との間で通信路の確立を行う第二の確立手段と、
前記第二の確立手段により前記他の通信装置との間で通信路を確立した場合に、前記外部装置が保持するコンテンツの再生を再開する第二の再開手段と、を更に有することを特徴とする請求項１から７の何れか一項に記載の通信装置。
【請求項９】
前記第二の再開手段は、前記第二の確立手段により確立した前記他の通信装置との間の通信路を介して、前記他の通信装置から前記外部装置が保持するコンテンツの再生を再開する指示を受信したことに基づいて、前記外部装置が保持するコンテンツの再生を再開することを特徴とする請求項８に記載の通信装置。
【請求項１０】
前記停止手段は、前記検知手段により前記通信路の切断が検知されたことに基づいて、前記関連情報に基づいて取得したコンテンツの再生を停止するための処理を行うことを特徴とする請求項１から９の何れか一項に記載の通信装置。
【請求項１１】
前記第一の受信手段により受信した前記関連情報に基づいて前記外部装置から取得したコンテンツを再生した後に、前記関連情報に基づいて前記外部装置から取得されたコンテンツとは異なるコンテンツであって前記外部装置が保持するコンテンツを取得し再生するように設定されている場合に、前記停止手段は、前記関連情報に基づいて取得したコンテンツを再生した後に、前記外部装置から取得されるコンテンツの再生を停止するための処理を行うことを特徴とする請求項１から９の何れか一項に記載の通信装置。
【請求項１２】
前記外部装置から取得し、再生したコンテンツを表示する表示部を更に有することを特徴とする請求項１から１１の何れか一項に記載の通信装置。
【請求項１３】
前記外部装置から取得し、再生したコンテンツを他の装置が有する表示部に表示させるように制御する表示制御手段を更に有することを特徴とする請求項１から１１の何れか一項に記載の通信装置。
【請求項１４】
前記検知手段は、前記通信路の切断として、前記他の通信装置との無線通信と、前記無線通信を介した前記他の通信装置とのセッションとの少なくとも一方の切断を検知することを特徴とする請求項１から１３の何れか一項に記載の通信装置。
【請求項１５】
前記無線通信は、ＩＥＥＥ８０２．１１シリーズ規格に準拠した無線通信であることを特徴とする請求項１４に記載の通信装置。
【請求項１６】
前記無線通信は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠した無線通信であることを特徴とする請求項１４または１５に記載の通信装置。
【請求項１７】
前記無線通信は、インフラストラクチャネットワークを介した無線通信であることを特徴とする請求項１４または１５に記載の通信装置。
【請求項１８】
前記第一の受信手段は、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格に準拠した方式に従って、前記関連情報を受信することを特徴とする請求項１から１７の何れか一項に記載の通信装置。
【請求項１９】
前記第一の確立手段により確立した前記通信路が有効かを確認するための要求信号を前記他の通信装置に送信する送信手段と、
前記送信手段により送信した前記要求信号に対する応答である応答信号を前記他の通信装置から受信する第二の受信手段と、を更に有し、
前記送信手段により前記要求信号を送信した場合に、前記要求信号を送信してから所定の時間が経過するまでに前記第二の受信手段により前記応答信号を受信しなかったことに基づいて、前記検知手段は前記通信路の切断を検知することを特徴とする請求項１から１８の何れか一項に記載の通信装置。
【請求項２０】
通信装置の制御方法であって、
外部装置が保持するコンテンツの関連情報を他の通信装置から受信する受信工程と、
前記関連情報に基づいて取得したコンテンツの再生を制御するための制御情報を前記他の通信装置から受信するために、前記他の通信装置との間で通信路を確立する確立工程と、
前記受信工程により受信された前記関連情報に基づいて取得したコンテンツを再生している場合に、前記確立工程により確立された前記通信路の切断を検知する検知工程と、
前記検知工程により前記通信路の切断が検知されたことに基づいて、前記外部装置が保持するコンテンツの再生を停止するための処理を行う停止工程と、
を有することを特徴とする制御方法。
【請求項２１】
コンピュータを請求項１から１９の何れか一項に記載の通信装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツの再生に関する。
【背景技術】
【０００２】
近年、スマートフォンなどの通信装置であって、テレビなどの他の通信装置にクラウドサーバなどの外部装置からコンテンツを取得して再生させる機能をもつ通信装置が存在する。この機能をコンテンツリダイレクト機能という。コンテンツリダイレクト機能では、クラウドサーバが保持するコンテンツのＵＲＬ等の情報を、例えばスマートフォンがテレビに送信する。コンテンツのＵＲＬ等の情報を受信したテレビは、受信した情報に基づいてクラウドサーバからコンテンツを取得し、再生する。
【０００３】
特許文献１には、他の通信装置から受信した情報に基づいて外部装置からコンテンツを取得し、再生している通信装置が、他の通信装置から受信した再生制御情報に基づいてコンテンツの再生を制御することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１６−５２７７５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の通信装置がコンテンツを再生している場合に、他の通信装置との通信路が切断されてしまうと、通信装置は他の通信装置から再生制御情報を受信できなくなってしまう。その結果、ユーザは他の通信装置を利用したコンテンツの再生制御ができなくなってしまうため、ユーザの意図に反してコンテンツの再生が継続されてしまう虞がある。例えば、ユーザがコンテンツの一部分のみを公開する意図でコンテンツを再生している場合、他の通信装置を利用したコンテンツの再生制御ができなくなってしまうと、ユーザの意図しない部分までコンテンツが公開されてしまう虞がある。
【０００６】
上記を鑑み、本発明は、コンテンツの再生制御情報を送信する他の通信装置との間の通信路が切断されたことに基づいてコンテンツの再生を停止できるようにすることで、ユーザの利便性を向上させることが可能な通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の通信装置は、外部装置が保持するコンテンツの関連情報を他の通信装置から受信する第一の受信手段と、前記関連情報に基づいて取得したコンテンツの再生を制御するための制御情報を前記他の通信装置から受信するために、前記他の通信装置との間で通信路を確立する第一の確立手段と、前記第一の受信手段により受信された前記関連情報に基づいて取得したコンテンツを再生している場合に、前記第一の確立手段により確立された前記通信路の切断を検知する検知手段と、前記検知手段により前記通信路の切断が検知されたことに基づいて、前記外部装置が保持するコンテンツの再生を停止するための処理を行う停止手段と、を有する。
【発明の効果】
【０００８】
本発明によれば、コンテンツの再生制御情報を送信する他の通信装置との間の通信路が切断されたことに基づいてコンテンツの再生を停止できるようにすることで、ユーザの利便性を向上させることが可能な通信装置を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】通信装置１０２が参加するネットワークのネットワーク構成を示す図である。
【図２】通信装置１０２のハードウェア構成を示す図である。
【図３】通信装置１０１と通信装置１０２とがコンテンツリダイレクトを実施する際に実行する処理を示すフローチャートである。
【図４】通信装置１０２がコンテンツリダイレクトを実行している場合に、通信装置１０１とのセッションの切断を検知する際に実行する処理を示すフローチャートである。
【図５】通信装置１０２がコンテンツリダイレクトを実行している場合に、通信装置１０１とのセッションの切断を検知した場合に表示する表示画面の一例を示す図である。
【図６】通信装置１０１がコンテンツリダイレクトを実行している場合に、通信装置１０２とのセッションの切断を検知する際に実行する処理を示すフローチャートである。
【図７】通信装置１０２が通信装置１０１とのセッションを切断された後に実行する処理を示すフローチャートである。
【図８】通信装置１０１が通信装置１０２とのセッションを切断された後に実行する処理を示すフローチャートである。
【図９】通信装置１０１が通信装置１０２とのセッションを再確立した際に表示する問合せ画面の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、添付の図面を参照して、本発明を詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１１】
図１に、本実施形態に係る通信装置１０２が参加するネットワークのネットワーク構成を示す。図１のネットワーク１１０上で、各装置は例えばＩＥＥＥ８０２．１１シリーズ規格に準拠した無線通信方式で通信を行う。ＩＥＥＥとは、Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓの略である。
【００１２】
通信装置１０１は、通信装置１０２とＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠した無線通信を行うことができる。この場合、通信装置１０１と通信装置１０２とは、アクセスポイント（ＡＰ）１０３を介さず直接無線通信する。また、通信装置１０１と通信装置１０２とは、ＩＥＥＥ８０２．１１シリーズ規格に準拠したインフラストラクチャネットワーク上で、ＡＰ１０３を介した無線通信を行うこともできる。
【００１３】
なお、ネットワーク１１０上で、各装置はＩＥＥＥ８０２．１１シリーズ規格に準拠した無線通信に加えて、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＮＦＣ、ＵＷＢ、ＺｉｇＢｅｅ、ＭＢＯＡなどの他の無線通信方式に準拠した無線通信も利用してよい。なお、ＵＷＢはＵｌｔｒａ  Ｗｉｄｅ  Ｂａｎｄの略であり、ＭＢＯＡはＭｕｌｔｉ  Ｂａｎｄ  ＯＦＤＭ  Ａｌｌｉａｎｃｅの略である。なお、ＯＦＤＭはＯｒｔｈｏｇｏｎａｌ  Ｆｒｅｑｕｅｎｃｙ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅｘｉｎｇの略である。また、ＮＦＣはＮｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎの略である。ＵＷＢには、ワイヤレスＵＳＢ、ワイヤレス１３９４、ＷｉＮＥＴなどが含まれる。また、有線ＬＡＮなどの有線通信方式に準拠した通信方式も利用してよい。
【００１４】
本実施形態において、通信装置１０１と通信装置１０２とは、例えばＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格に準拠したミラーリングを行う。通信装置１０１（送信装置）は、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格に準拠し、通信装置１０２（受信装置）と表示している画面や再生している音声を共有する。具体的には、送信装置が表示している画面や再生している音声の情報として、画像データや音声データを、ネットワーク１１０を介して受信装置へ伝送することで、送信装置と受信装置とで表示している画面や再生している音声を共有する。これを、ミラーリングという。通信装置１０１は、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格において、自装置が表示している画面あるいは再生している音声の少なくとも一方を送信するソース機器としての役割を担う。また、通信装置１０２は、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格において、ソース機器から送信される画面や音声を受信して再生するシンク機器の役割を担う。通信装置１０１と通信装置１０２とがミラーリングを行う場合、通信装置１０１が表示している画面や再生している音声が、通信装置１０１と通信装置１０２とで共有される。
【００１５】
通信装置１０１は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介したミラーリングに加え、インフラストラクチャネットワークを介したミラーリングを行ってもよい。また、通信装置１０２も同様である。
【００１６】
通信装置１０１と通信装置１０２とが、通信装置１０１をソース機器、通信装置１０２をシンク機器として、例えばＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介したミラーリングを行う場合を説明する。Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介したミラーリングでは、ソース機器は表示している画面や再生している音声の情報として、画像データや音声データのストリームを、ネットワークを介してシンク機器へ直接伝送（ストリーミング）する。なお、本実施形態では画像データはソース機器が表示している画面を符号化したものとし、音声データはソース機器が再生している音声を符号化したものとする。そして、シンク機器は、画像データや音声データのストリームを受信し、ソース機器と同期して再生するものとする。つまり、本実施形態ではミラーリングを行うソース機器とシンク機器とは、表示している画面や再生している音声を共有するものとする。
【００１７】
また、通信装置１０１（ソース機器）と通信装置１０２（シンク機器）とが、インフラストラクチャネットワークを介してミラーリングを行う場合を説明する。インフラストラクチャネットワークを介したミラーリングでは、ソース機器は画像データや音声データのストリームを、ＡＰ１０３を介してシンク機器に伝送する。シンク機器は、ＡＰ１０３を介して画像データや音声データのストリームを受信し、ソース機器と同期して再生する。
【００１８】
また、通信装置１０１と通信装置１０２とは、ミラーリングに代えて、あるいは加えて、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワーク、あるいはインフラストラクチャネットワークを介したコンテンツリダイレクトを行う。コンテンツリダイレクトでは、通信装置１０１は通信装置１０２に、通信装置１０１以外の外部装置からコンテンツを取得させ、通信装置１０２に当該データを再生させる。ここで、外部装置とは例えばクラウドサーバ１０４のことである。このとき、通信装置１０１は、通信装置１０２にコンテンツを外部装置から取得させるために必要な情報を送信する。通信装置１０２が取得するコンテンツは、画像データ、音声データ、動画データ、映像データの何れか一つを含む。なお、映像データとは、音声データと動画データとの両方を含むデータのことである。他に、これらのデータを再生するためのソフトウェアデータや、ＧＵＩデータ、メタデータの少なくとも何れか一つを含んでいてもよい。
【００１９】
通信装置１０１が通信装置１０２に送信する情報とは、外部装置上にあるコンテンツの関連情報である。コンテンツの関連情報は、例えば、外部装置上にあるコンテンツを識別するための識別子や、サービス名、コンテンツの所在情報（ＵＲＩ、ＵＲＬ）、再生開始時間（オフセット）などの情報である。なお、受信するコンテンツの関連情報は、これらの情報の一部であってもよい。コンテンツの識別子とは、コンテンツを一意に決定するための識別子のことである。また、コンテンツの所在情報とは、コンテンツが格納されている格納場所を示す情報である。なお、ＵＲＩはＵｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒの、ＵＲＬはＵｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒの夫々、略である。
【００２０】
通信装置１０１の具体的な例としては、タブレット、スマートフォン、ＰＣ、携帯電話、カメラ、ビデオカメラなどが挙げられるが、これらに限定されない。通信装置１０１は、外部装置が保持しているコンテンツの関連情報を他の通信装置に送信することで、他の通信装置に該コンテンツを取得させ、再生させることができる通信装置であればよい。
【００２１】
また、通信装置１０２の具体的な例としては、タブレット、スマートフォン、ＰＣ、携帯電話、テレビ、テレビ用アダプタ、セットトップボックス、ヘッドマウントディスプレイなどが挙げられる。また他に通信装置１０２の具体的な例として、プロジェクター、ディスプレイ、カーナビゲーション装置などが挙げられるが、これらに限定されない。通信装置１０２は、通信装置１０１から受信した関連情報に基づいて外部装置からコンテンツを取得し、再生することができる通信装置であればよい。
【００２２】
また、通信装置１０１と通信装置１０２とは、コンテンツリダイレクトに加えて、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワーク、あるいはインフラストラクチャネットワークを介したダイレクトストリーミングを行ってもよい。ダイレクトストリーミングでは、通信装置１０１は通信装置１０２に、通信装置１０１が記憶しているコンテンツを送信し、通信装置１０２は当該コンテンツを受信し、再生する。この場合、通信装置１０１は当該データを復号および再符号化することなく、そのままの符号化方式で通信装置１０２に送信することができる。通信装置１０１が記憶しているコンテンツは、画像データ、音声データ、動画データ、映像データの何れか一つを含む。なお、映像データとは、音声データと動画データとの両方を含むデータのことである。他に、これらのデータを再生するためのソフトウェアデータや、ＧＵＩデータ、メタデータの少なくとも何れか一つを含んでいてもよい。
【００２３】
また、通信装置１０１と通信装置１０２とがコンテンツリダイレクトを行っている場合、通信装置１０１が入力されたユーザ操作に基づいた再生制御情報を通信装置１０２に送信することで、通信装置１０２で再生されているコンテンツの再生制御ができる。例えば通信装置１０１と通信装置１０２とがコンテンツリダイレクトを行い、通信装置１０２がコンテンツを再生している場合を想定する。例えば、ユーザが通信装置１０１にコンテンツの再生の一時停止を指示するユーザ操作を入力すると、通信装置１０１から通信装置１０２にコンテンツの再生を一時停止させるための再生制御情報が送信される。通信装置１０２は再生制御情報を受信すると、コンテンツの再生を一時停止する。このように、通信装置１０１と通信装置１０２とがコンテンツリダイレクトを行っている場合、ユーザは通信装置１０１をリモコンのように用いて、通信装置１０２で再生されているコンテンツの再生制御ができる。なお通信装置１０１は、コンテンツの再生制御情報として、一時停止の他に、再生、停止、早送り、巻き戻し、ユーザが指定した再生時間からの再生などの指示を含む再生制御情報を送信してもよい。また、通信装置１０１はコンテンツの再生制御情報として、次のコンテンツの再生開始や、音量の調整、再生速度の調整、字幕の有無、言語の変更などの指示を含む再生制御情報も送信してもよい。通信装置１０１は再生制御情報として、前述した指示の内、少なくとも何れか一つの指示を含む再生制御情報を送信できればよい。通信装置１０１と通信装置１０２とがＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介してコンテンツリダイレクトを行っている場合、通信装置１０１はＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介して再生制御情報を送信する。具体的には、通信装置１０１は、通信装置１０２とＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介してセッションを確立し、確立したセッションを介して再生制御情報を送信する。一方、通信装置１０１がインフラストラクチャネットワークを介してコンテンツリダイレクトを行っている場合、通信装置１０１はインフラストラクチャネットワークを介して再生制御情報を送信する。具体的には、通信装置１０１は、通信装置１０２とインフラストラクチャネットワークを介してセッションを確立し、確立したセッションを介して再生制御情報を送信する。
【００２４】
また、通信装置１０２はコンテンツリダイレクトによって再生するコンテンツの再生を制御する制御機能である再生制御機能を、通信装置１０２本体の入力部や通信装置１０２用のリモコンからの再生制御情報により実行できるように構成されていてもよい。例えば、通信装置１０２がコンテンツを再生しており、通信装置１０２がリモコンを備えている場合、ユーザが通信装置１０２のリモコンを利用してコンテンツの早送りを指示した場合、通信装置１０２はコンテンツを早送りする。通信装置１０２は、再生制御機能として、コンテンツの再生、停止、一時停止、早送り、巻き戻し、ユーザが指定した再生時間からの再生を行えてもよい。また、通信装置１０２は、再生制御機能として、次のコンテンツの再生開始や、音量の調整、再生速度の調整、字幕の有無、言語の変更などが行えてもよい。通信装置１０２は再生制御機能として、前述の機能の内、少なくとも何れか一つの機能を有していればよい。
【００２５】
なお、本実施形態では、通信装置１０１はミラーリングするための通信方式として、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格を用いる。しかしＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格に限らず、ＷｉＤｉやＷｉｒｅｌｅｓｓＨＤといった他の通信方式を用いてもよい。なお、ＷｉＤｉはＩｎｔｅｌ  Ｗｉｒｅｌｅｓｓ  Ｄｉｓｐｌａｙの、ＷｉｒｅｌｅｓｓＨＤはＷｉｒｅｌｅｓｓ  Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎの夫々略である。具体的には、上述のミラーリング、コンテンツリダイレクト、あるいはダイレクトストリーミングの少なくとも何れか一つに相当する無線通信が行える通信方式であればよい。また、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格では、通信装置１０１はＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークあるいはインフラストラクチャネットワークを介してミラーリングを行う。通信装置１０１はミラーリングを行う通信装置１０２とこれらのネットワークを介してＡＳＰセッションを確立し、確立したＡＳＰセッションを介してミラーリングを行うことも可能である。なお、ＡＳＰはＡｐｐｌｉｃａｔｉｏｎ  Ｓｅｒｖｉｃｅ  Ｐｌａｔｆｏｒｍの略である。
【００２６】
図２に、通信装置１０２のハードウェア構成を示す。
【００２７】
通信装置１０２は、記憶部２０１、制御部２０２、機能部２０３、入力部２０４、出力部２０５、通信部２０６、およびアンテナ２０７を備える。
【００２８】
記憶部２０１はＲＯＭやＲＡＭ等の１以上のメモリにより構成され、後述する各種動作を行うためのコンピュータプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。ＲＯＭはＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙの、ＲＡＭはＲａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙの夫々略である。なお、記憶部２０１として、ＲＯＭ、ＲＡＭ等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＤＶＤなどの記憶媒体を用いてもよい。また、記憶部２０１が複数のメモリ等を備えていてもよい。
【００２９】
制御部２０２はＣＰＵやＭＰＵ等の１以上のプロセッサにより構成され、記憶部２０１に記憶されたコンピュータプログラムを実行することにより通信装置１０２全体を制御する。ＣＰＵはＣｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの、ＭＰＵはＭｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔの略であり、コンピュータとして機能する。なお、制御部２０２は、記憶部２０１に記憶されたコンピュータプログラムとＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）との協働により通信装置１０２全体を制御するようにしてもよい。また、制御部２０２がマルチコア等の複数のプロセッサを備え、複数のプロセッサにより通信装置１０２全体を制御するようにしてもよい。
【００３０】
また、制御部２０２が記憶部２０１に記憶されたコンピュータプログラムを実行することで、シンク機器としてのコンテンツリダイレクト機能を実現する。ここで、シンク機器としてのコンテンツリダイレクト機能とは、ソース機器から送られた情報を基にソース機器以外の外部装置から再生したいコンテンツを取得し、再生する機能である。さらに、シンク機器としてのコンテンツリダイレクト機能として、通信装置１０２はソース機器から受信した再生制御情報に基づいて、自装置が行っているコンテンツの再生を制御することができる。また、制御部２０２が記憶部２０１に記憶されたコンピュータプログラムを実行することで、シンク機器としてのミラーリング機能を実現してもよい。シンク機器としてのミラーリング機能とは、ソース機器が表示している画面をキャプチャし符号化した画像データや、再生している音声を符号化した音声データを受信し、復号、再生する機能である。
【００３１】
なお、制御部２０２は、通信装置１０２がコンテンツリダイレクトによってコンテンツを再生している場合に、後述の入力部２０４を介して受け付けたユーザ操作に基づいてコンテンツの再生を制御する再生制御機能を実現してもよい。
【００３２】
また、制御部２０２は、機能部２０３を制御して、撮像やコンテンツの閲覧などの所定の処理を実行する。機能部２０３は、通信装置１０２が所定の処理を実行するためのハードウェアである。例えば、通信装置１０２がカメラである場合、機能部２０３は撮像部であり、撮像処理を行う。
【００３３】
入力部２０４は、ユーザからの各種操作の受付を行う。出力部２０５は、モニタ画面やスピーカーなどを介してユーザに対して各種出力を行う。ここで、出力部２０５による出力とは、画面上への表示や、スピーカーによる音声出力、振動出力などであってもよい。なお、出力部２０５が出力するモニタ画面は、通信装置１０２が備えるモニタ画面である。あるいは、通信装置１０２と接続された他の装置が有するモニタ画面であってもよい。なお、タッチパネルのように入力部２０４と出力部２０５の両方を１つのモジュールで実現するようにしてもよい。入力部２０４、出力部２０５は、夫々通信装置１０２とは別体であってもよい。また、出力部２０５は、画面上への表示や、スピーカーによる音声出力、振動出力などを行うことで、ユーザに対して通知を行う通知部としての機能を実現する。また、入力部２０４と、出力部２０５は、夫々通信装置１０２と一体であってもよいし、別体であってもよい。通信装置１０２は入力部２０４として、例えば通信装置１０２と一体のハードキーやタッチスクリーンなどを有していてもよいし、通信装置１０２と別体のリモコンなどを有していてもよい。また、通信装置１０２は出力部２０５として、例えば通信装置１０２と一体のモニタ画面や光源などを有していてもよいし、通信装置１０２と別体のディスプレイやスピーカーを有していてもよい。
【００３４】
通信部２０６は、ＩＥＥＥ８０２．１１シリーズに準拠した無線通信の制御や、有線ＬＡＮ等の有線通信の制御、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）通信の制御を行う。また、通信部２０６はアンテナ２０７を制御して、無線通信のための無線信号の送受信を行う。通信装置１０２は通信部２０６を介して、画像データや文書データ、映像データ等のコンテンツを通信装置１０１と通信する。
【００３５】
通信装置１０１は通信装置１０２と同様のハードウェア構成を有する。通信装置１０１の、記憶部２０１、機能部２０３、入力部２０４、出力部２０５、通信部２０６、およびアンテナ２０７は、通信装置１０２と同様であるため説明を省略する。制御部２０２についても、通信装置１０２の制御部２０２と同様であるが、違いについて簡単に説明する。
【００３６】
通信装置１０２の制御部２０２は、記憶部２０１に記憶されたコンピュータプログラムを実行することで、ソース機器としてのコンテンツリダイレクト機能を実現する。ソース機器としてのコンテンツリダイレクト機能とは、シンク機器で再生するコンテンツを、シンク機器がソース機器以外の外部装置から取得するために必要な情報をシンク機器に送信する機能である。さらに、ソース機器としてのコンテンツリダイレクト機能として、通信装置１０１はシンク機器で再生されているコンテンツの再生を制御するための再生制御信号をシンク機器に送信することができる。また、通信装置１０１の制御部２０２は、記憶部２０１に記憶されたコンピュータプログラムを実行することで、ソース機器としてのミラーリング機能を実現してもよい。ソース機器としてのミラーリング機能とは、自装置が表示している画面をキャプチャし符号化した画像データや、再生している音声を符号化した音声データをシンク機器に送信する機能である。
【００３７】
なお、通信装置１０１および通信装置１０２は、画像の表示と音声の再生のどちらも行える装置である。しかし、通信装置１０１および通信装置１０２のどちらも、画像の表示あるいは音声の再生の何れか一方しか行えない装置であってもよい。
【００３８】
図３は、通信装置１０１と通信装置１０２とがコンテンツリダイレクトを実施する際に実行する処理を示すフローチャートである。ステップＳ３０１からステップＳ３１５は、通信装置１０１がコンテンツリダイレクトを実施する際に、記憶部２０１に記憶されたコンピュータプログラムを制御部２０２が読み出し、実行することで実現される処理のフローチャートである。またステップＳ３５１からステップＳ３６２は、通信装置１０２がコンテンツリダイレクトを実施する際に、記憶部２０１に記憶されたコンピュータプログラムを制御部２０２が読み出し、実行することで実現される処理のフローチャートである。
【００３９】
なお、図３に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからＦＰＧＡ上に自動的に専用回路を生成すればよい。ＦＰＧＡとは、Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略である。また、ＦＰＧＡと同様にしてＧａｔｅ  Ａｒｒａｙ回路を形成し、ハードウェアとして実現するようにしてもよい。また、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により実現するようにしてもよい。
【００４０】
本フローチャートのステップＳ３０１は、通信装置１０１の電源が入ることで開始される。なお、本フローチャートのステップＳ３０１は、通信装置１０１において所定のアプリケーションが起動したことに応じて開始するようにしてもよい。また、本フローチャートのステップＳ３５１は、通信装置１０２の電源が入ることで開始される。なお、本フローチャートのステップＳ３５１は、通信装置１０２において所定のアプリケーションが起動したことに応じて開始するようにしてもよい。
【００４１】
まず通信装置１０１の制御部２０２は、入力部２０４を介してユーザから画面・音声共有の開始操作が行われたか判定する（ステップＳ３０１）。画面・音声共有の開始操作とは、ユーザによる画面・音声共有を開始するための制御ボタンの押下である。これに限らず、通信装置１０１の制御部２０２は、所定のキーボード操作やマウス操作、タッチ操作、ジョイステック操作等のユーザ操作を開始操作としてもよい。また、通信装置１０１の制御部２０２は、所定のジェスチャーや、リモコンの制御ボタンの押下、所定のコンテンツの再生開始、所定のアプリケーションの立ち上げなどのユーザ操作を開始操作としてもよい。画面・音声共有の開始操作が行われなかったと判定されると（ステップＳ３０１のＮｏ）、通信装置１０１の制御部２０２は再びステップＳ３０１の処理を行う。一方、画面・音声共有の開始操作が行われたと判定されると（ステップＳ３０１のＹｅｓ）、通信装置１０１の制御部２０２はステップＳ３０２の処理を行う。
【００４２】
次に、通信装置１０１と通信装置１０２との間でデバイス探索が行われる。通信装置１０１および通信装置１０２は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠した無線通信を介してミラーリングを行うデバイスを探索する。あるいは、通信装置１０１および通信装置１０２は、インフラストラクチャネットワークを介してミラーリングを行うデバイスを探索してもよい。
【００４３】
本フローチャートにおいて通信装置１０１と通信装置１０２とは、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠した無線通信を介してミラーリングを行うデバイスを探索する（ステップＳ３０２、ステップＳ３５１）。具体的には、まず通信装置１０１の制御部２０２がデバイス発見要求としてＩＥＥＥ８０２．１１シリーズ規格に準拠したＰｒｏｂｅ  Ｒｅｑｕｅｓｔを送信し、通信装置１０２の制御部２０２は応答としてＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅを送信する。これにより通信装置１０１と通信装置１０２とは互いを発見する。なお、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔ／Ｒｅｓｐｏｎｓｅは、夫々送信する装置が逆であってもよい。
【００４４】
通信装置１０１の制御部２０２は発見したデバイスの一覧を出力部２０５であるモニタ画面上に表示する。ユーザは通信装置１０１のモニタ画面上に表示されたデバイスの一覧から、画面・音声共有を行うデバイスを選択する。通信装置１０１の制御部２０２は、ユーザによって選択されたデバイスを、画面・音声共有を行う接続相手装置として選択する（ステップＳ３０３）。なお、本ステップにおける接続相手装置の選択は、過去に画面・音声共有を行ったことがあるデバイスの履歴に基づいて通信装置１０１が行ってもよい。具体的には、通信装置１０１の制御部２０２は、検出されたデバイスの中に、過去に画面・音声共有を行ったことがあるデバイスがある場合、当該デバイスを接続相手装置として選択する。あるいは、通信装置１０１の制御部２０２は、検出したデバイスの中から最も通信装置１０１と距離が近いデバイスを接続相手装置として選択してもよいし、最も通信品質がよいデバイスを接続相手装置として選択してもよい。なお、ステップＳ３０３の接続相手装置の選択を通信装置１０２が行ってもよい。
【００４５】
また、本フローチャートではデバイス探索でＰｒｏｂｅ  Ｒｅｑｕｅｓｔ／Ｒｅｓｐｏｎｓｅを用いたが、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格に基づき、ＩＥＥＥ８０２．１１シリーズ規格に準拠したＢｅａｃｏｎなどの無線信号を用いてもよい。また、通信装置１０１あるいは通信装置１０２は、ＮＦＣ、ＱＲコード（登録商標）、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ（ＢＬＥ）などを利用してデバイス探索を行ってもよい。例えば、通信装置１０１がＮＦＣの通信機能を有しているとき、通信装置１０１と通信装置１０２とのペアリングをＮＦＣタッチ操作で行い、以降の通信はＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格に基づいて行うことも可能である。
【００４６】
ここで、ステップＳ３０４およびステップＳ３５２の処理を行う前に、通信装置１０１と通信装置１０２とは、サービス探索を行ってもよい。サービス探索はＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に基づいて行われ、サービス探索を行うことで通信装置１０１と通信装置１０２との少なくとも一方は相手装置が提供するサービスについての情報を得ることができる。
【００４７】
次に、通信装置１０１の制御部２０２は、ステップＳ３０３で選択された接続相手装置と接続セットアップを行う（ステップＳ３０４）。ここで、ステップＳ３０３において通信装置１０２が接続相手装置として選択されたとする。そのため、通信装置１０２の制御部２０２も通信装置１０１と接続セットアップを行う（ステップＳ３５２）。具体的に、通信装置１０１と通信装置１０２とは、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔの接続処理を行い、その後、ＴＣＰの接続処理を行う。これらの接続処理を行うことで、通信装置１０１と通信装置１０２との間の接続セットアップが完了する。なお、ＴＣＰとはＴｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌの略である。
【００４８】
通信装置１０１および通信装置１０２は、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔの接続処理の方法として、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格あるいはＴＤＬＳ規格から選ぶことができるが、本実施形態ではＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠して行う。なお、ＴＤＬＳはＴｕｎｎｅｌｅｄ  Ｄｉｒｅｃｔ  Ｌｉｎｋ  Ｓｅｔｕｐの略である。
【００４９】
ここで、ステップＳ３０４とステップＳ３５２の詳細な手順について説明する。まず、通信装置１０２が通信装置１０１にＰｒｏｂｅ  Ｒｅｑｕｅｓｔを送信する。Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔを受信した通信装置１０１は、通信装置１０２に対してＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅを送信する。これにより、通信装置１０１と通信装置１０２とは相手装置の存在を確認する。続いて、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠した無線通信においてネットワークを構築する役割を担うＧｒｏｕｐ  Ｏｗｎｅｒ（ＧＯ）となる通信装置を決定するため、通信装置１０１はＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを送信する。この信号には、通信装置１０１のＧＯになりたい度合いを示すＩｎｔｅｎｔ値が含まれる。なお、ＧＯにならなかった通信装置はＣｌｉｅｎｔ（ＣＬ）となり、ＧＯが構築するネットワークに参加する役割を担う。
【００５０】
ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを受信した通信装置１０２は、応答として通信装置１０２のＩｎｔｅｎｔ値を含むＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを送信する。ＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを受信した通信装置１０１は、通信装置１０１と通信装置１０２とのＩｎｔｅｎｔ値の大小を比較し、Ｉｎｔｅｎｔ値が大きかった方の通信装置をＧＯとして決定する。他方、Ｉｎｔｅｎｔ値が小さかった方の通信装置がＣＬとして決定される。
【００５１】
通信装置１０１は、Ｉｎｔｅｎｔ値を比較した結果を含めたＧＯ  Ｎｅｇｏｔｉａｔｉｏｎ  Ｃｏｎｆｉｒｍを通信装置１０２に送信する。本実施形態では、通信装置１０１のＩｎｔｅｎｔ値が通信装置１０２のＩｎｔｅｎｔ値より大きかったため、通信装置１０１がＧＯに、通信装置１０２がＣＬになったものとする。
【００５２】
その後、ＷＰＳ方式を用いて接続やセキュリティに関する情報など、通信装置１０１と通信装置１０２とのネットワーク接続を確立するために必要なパラメータ情報を共有する。なお、ＷＰＳはＷｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ｓｅｔｕｐの略である。そして、交換したパラメータ情報に基づいて、ＣＬである通信装置１０２がＧＯである通信装置１０１へＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｑｕｅｓｔを送信する。当該信号を受信した通信装置１０１は、応答としてＡｓｓｏｃｉａｔｉｏｎ  Ｒｅｓｐｏｎｓｅを送信する。
【００５３】
以上により、通信装置１０１と通信装置１０２との間でＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔの接続処理が完了する。なお、本実施形態において、通信装置１０１をＧＯ、通信装置１０２をＣＬとしたが、逆でもよい。また、ＧＯが送信する各無線信号をＣＬが送信してもよい。この場合、ＣＬが送信する無線信号をＧＯが送信する。また、Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔの接続処理を行うにあたって、通信装置１０１および通信装置１０２は、上記の無線信号の他にＢｅａｃｏｎ、Ｒｅａｓｓｏｃｉａｔｉｏｎメッセージなどを用いてもよい。また通信装置１０１と通信装置１０２は、他にＰ２Ｐ  Ｉｎｖｉｔａｔｉｏｎメッセージ、Ｐｒｏｖｉｓｉｏｎ  Ｄｉｓｃｏｖｅｒｙメッセージなどを用いてもよい。
【００５４】
続いて、通信装置１０１と通信装置１０２との間でＴＣＰ接続を確立する。この接続は通信装置１０１がＴＣＰサーバの、通信装置１０２がＴＣＰクライアントの役割を担い、Ｔｈｒｅｅ−ｗａｙ  ｈａｎｄｓｈａｋｅを行うことで確立される。
【００５５】
このように、通信装置１０１と通信装置１０２の間でＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔの接続処理が完了し、ＴＣＰ接続が確立されたことにより、接続セットアップが完了する。
【００５６】
なお、通信装置１０１と通信装置１０２とがインフラストラクチャネットワークを介してミラーリングを行うデバイスを探索する場合、ステップＳ３０２からステップＳ３０４とステップＳ３５１からステップＳ３５２の処理は以下のように行われる。
【００５７】
インフラストラクチャネットワークを介してミラーリングを行うデバイスの探索は、マルチキャストＤＮＳ（ｍｕｌｔｉｃａｓｔ  ＤＮＳ、ｍＤＮＳ）によって行われる。なお、ＤＮＳとはＤｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍの略である。まず、通信装置１０１が接続しているＡＰ１０３を介して、インフラストラクチャネットワークに参加している他の通信装置に対してＤＮＳパケットをマルチキャスト送信する。通信装置１０１は、ＡＰ１０３を介してミラーリングを行うことができるデバイスから応答を受信することで当該デバイスを検出する。具体的には、通信装置１０１はＡＰ１０３を介して、ＤＮＳレコードを含むＤＮＳパケットを送信する。ＤＮＳレコードは、通信装置１０１がＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格に準拠した無線通信を行うことができる通信装置を指定して探索していることを示す。ＤＮＳレコードにはソース機器を示すＤｉｓｐｌａｙｓｒｃ、またはシンク機器を示すＤｉｓｐｌａｙの何れか一つのサービス名が含まれる。通信装置１０１はミラーリングを行うデバイスとしてシンク機器を探索するので、ＤＮＳレコードとしてはシンク機器を示すｄｉｓｐｌａｙを含める。なお通信装置１０１は、ＤＮＳパケットを任意の送信間隔、任意の送信回数で送信することが可能である。通信装置１０１はデバイスの探索を行う場合、所定の回数に達するまでＤＮＳパケットの送信を繰り返し行うものとする。あるいは、通信装置１０１は所定の時間が経過するまでＤＮＳパケットを繰り返し送信してもよい。また、通信装置１０１は所定の台数の対向機から応答を受信したことに基づいて、ＤＮＳパケットの送信を停止してもよい。
【００５８】
通信装置１０１の制御部２０２はインフラストラクチャネットワークを介してミラーリングを行うデバイスの探索を行うと、探索結果を表示し、接続相手装置の選択が行われる。当該探索結果表示と、接続相手装置の選択とは、ステップＳ３０３と同様に行われる。
【００５９】
続いて通信装置１０１の制御部２０２は選択された接続相手装置（ここでは通信装置１０２）に、ＡＰ１０３経由でｍＤＮＳ問合せを送信する。ここで送信するｍＤＮＳ問合せは、通信装置１０２の能力情報や通信装置１０１と通信装置１０２の通信とで使用するポート番号やホスト名を問合せる信号である。なお、本ｍＤＮＳ問合せで問い合わせる通信装置１０２の能力情報とは、通信装置１０２がシンク機器であるか、ソース機器であるか、あるいはデュアルロール機器であるかなどの情報である。ｍＤＮＳ問合せを受信した通信装置１０２は、自装置の能力情報と、ポート番号、ホスト名を含むｍＤＮＳ応答を通信装置１０１に送信する。本応答を受信した通信装置１０１は、通信装置１０２との接続セットアップを完了する。
【００６０】
通信装置１０１と通信装置１０２が接続セットアップを完了して以降の処理は、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介してミラーリングを行う場合も、インフラストラクチャネットワークを介してミラーリングを行う場合も共通である。
【００６１】
続いて通信装置１０１の制御部２０２は、Ｃａｐａｂｉｌｉｔｙ  Ｎｅｇｏｔｉａｔｉｏｎを行う（ステップＳ３０５）。同様に通信装置１０２の制御部２０２も、Ｃａｐａｂｉｌｉｔｙ  Ｎｅｇｏｔｉａｔｉｏｎを行う（ステップＳ３５３）。Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格においてＣａｐａｂｉｌｉｔｙ  ＮｅｇｏｔｉａｔｉｏｎにはＲＴＳＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）を利用するよう規定されている。ＲＴＳＰは、ストリーミングを制御するためのプロトコルである。また、下位層のトランスポートプロトコルには一般的にＴＣＰが用いられる。Ｃａｐａｂｉｌｉｔｙ  ＮｅｇｏｔｉａｔｉｏｎにはＲＴＳＰ  Ｍ１〜Ｍ４までの所定のメッセージが通信装置１０１と通信装置１０２との間で交換される。通信装置１０１はＲＴＳＰメッセージの交換によって通信装置１０２の能力情報を得て、使用するパラメータを決定し通信装置１０２に通知する。通信装置１０２は、通信装置１０１から通知されたパラメータを設定する。能力情報とは具体的に、例えば画面については、通信装置１０２が対応する画面の解像度やフレームレート、解像度などの情報である。また音声については、通信装置１０２が対応するコーデックやサンプリング周波数などの情報である。Ｃａｐａｂｉｌｉｔｙ  Ｎｅｇｏｔｉａｔｉｏｎの結果、通信装置１０１と通信装置１０２との間で、ミラーリングを行う際に使用する画面や音声の符号化方式の種類や映像の解像度、フレームレートなどが決定される。なお、通信装置１０１と通信装置１０２とが送受信する能力情報はこれらの情報の一部であってもよい。
【００６２】
Ｃａｐａｂｉｌｉｔｙ  Ｎｅｇｏｔｉａｔｉｏｎが完了すると、通信装置１０１の制御部２０２と通信装置１０２の制御部２０２とはＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格のセッションを確立する（ステップＳ３０６、ステップＳ３５４）。Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格では、セッションの確立にはＲＴＳＰ  Ｍ５〜Ｍ７までの所定のメッセージが通信装置１０１と通信装置１０２との間で交換される。これらのＲＴＳＰメッセージの交換により、通信装置１０１と通信装置１０２との間で使用されるポート番号の設定などが行われ、セッションが確立される。
【００６３】
セッションが確立されると、通信装置１０１の制御部２０２はソース機器としてのミラーリング処理を開始し、画面・音声ストリームの送信を開始する（ステップＳ３０７）。本ステップにおいて通信装置１０１の制御部２０２は、ソース機器としてのミラーリング処理として、表示されている画面のキャプチャやキャプチャ画像の符号化、多重化、データ送信処理を行う。なお、通信装置１０１が行うミラーリング処理はこれらの一部の処理であってもよい。
【００６４】
また、通信装置１０２の制御部２０２はシンク機器としてのミラーリング処理を開始し、画面・音声ストリームの受信を開始する（ステップＳ３５５）。本ステップにおいて、通信装置１０２の制御部２０２は、シンク機器としてのミラーリング処理として、データの受信や逆多重化、キャプチャ画像の復号化、復号されたキャプチャ画像の再生処理を行う。なお、通信装置１０２が行うミラーリング処理はこれらの一部の処理であってもよい。
【００６５】
通信装置１０１と通信装置１０２とがステップＳ３０７およびステップＳ３５５の処理を行うことで、通信装置１０１が表示している画面や再生している音声の情報のストリームが通信装置１０２に送信される。通信装置１０２は、送信された画面や音声の情報のストリームを再生することで、通信装置１０１と同じ画面の表示や音声の再生を行う。
【００６６】
続いて、通信装置１０１の制御部２０２は、ユーザによるコンテンツリダイレクトの開始指示を受け付けたか判定する（ステップＳ３０８）。ユーザによるコンテンツリダイレクトの開始指示とは、ユーザがコンテンツのサムネイル画像を選択することを指す。あるいはユーザがコンテンツのＵＲＬを選択したことであってもよいし、ユーザがコンテンツの再生を指示するソフトキーを選択したことであってもよい。あるいは、コンテンツリダイレクトの開始指示とは、所定のアプリケーションの立ち上げや、所定のＷｅｂページの読み込みであってもよいし、Ｗｅｂページが所定の位置までスクロールされたことであってもよい。あるいはＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格のＵＩＢＣに対応している通信装置１０２をユーザが操作し、コンテンツのサムネイル画像の選択などを行ったことに基づいて、通信装置１０１はコンテンツリダイレクトの開始指示を受け付けたと判定してもよい。ＵＩＢＣとはＵｓｅｒ  Ｉｎｐｕｔ  Ｂａｃｋ  Ｃｈａｎｎｅｌのことで、シンク機器である通信装置１０２に入力されたユーザ操作を、ソース機器である通信装置１０１に送信する機能である。コンテンツリダイレクトの開始指示を受け付けてないと判定すると（ステップＳ３０８のＮｏ）、通信装置１０１の制御部２０２はステップＳ３０７の処理を行う。一方、コンテンツリダイレクトの開始指示を受け付けたと判定すると（ステップＳ３０８のＹｅｓ）、通信装置１０１の制御部２０２はステップＳ３０９の処理を行う。
【００６７】
通信装置１０１の制御部２０２は、通信装置１０２にコンテンツリダイレクト機能をサポートしているか問い合わせる（ステップＳ３０９）。通信装置１０１の制御部２０２は、コンテンツリダイレクト機能の問合せに、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲメッセージを利用することができる。当該問合せを受信した通信装置１０２の制御部２０２は、応答としてコンテンツリダイレクト機能への対応の可否を通信装置１０１に通知する（ステップＳ３５６）。また、通信装置１０２の制御部２０２は、応答として、通信装置１０２がコンテンツリダイレクト機能によってコンテンツを再生できるコンテンツ共有サービス名などの情報を通知してもよい。
【００６８】
通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクト機能をサポートしているか、ステップＳ３０９で受信した応答に基づいて判定する（ステップＳ３１０）。通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクト機能をサポートしていないと判定すると（ステップＳ３１０のＮｏ）、ステップＳ３０７の処理を行う。この場合、通信装置１０１と通信装置１０２との少なくとも一方は、ユーザに対して通信装置１０２がコンテンツリダイレクト機能に対応していないことを通知してもよい。一方、通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクト機能をサポートしていると判定すると（ステップＳ３１０のＹｅｓ）、通信装置１０２にコンテンツの関連情報を送信する（ステップＳ３１１）。本フローチャートにおいて、コンテンツとは、ステップＳ３０８で再生指示が出されたコンテンツのことである。通信装置１０１の制御部２０２は、コンテンツの関連情報を送信することで、当該コンテンツの取得と再生とを通信装置１０２に要求する。ここで通信装置１０１が送信するコンテンツの関連情報は、例えばクラウドサーバ１０４上にあるコンテンツを識別するための識別子や、サービス名、コンテンツの所在情報（ＵＲＬ、ＵＲＩ）、再生開始時間（オフセット）などの情報である。なお、通信装置１０１が送信するコンテンツの関連情報は、これらの一部であってもよい。また、通信装置１０１の制御部はコンテンツの関連情報を送信する際、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲメッセージを用いてもよい。
【００６９】
通信装置１０２の制御部２０２は、通信装置１０１からコンテンツの関連情報を受信する（ステップＳ３５７）。そして、通信装置１０２の制御部２０２はコンテンツの関連情報を受信すると、実行中のミラーリング処理を一時停止する（ステップＳ３５８）。同様に通信装置１０１の制御部２０２も、実行中のミラーリング処理を一時停止する（ステップＳ３１２）。通信装置１０１の制御部２０２および通信装置１０２の制御部２０２は、ステップＳ３１１とステップＳ３５７で行われたコンテンツの関連情報の送受信としてのメッセージ交換を契機にミラーリング処理を一時停止する。あるいは、ステップＳ３１１の処理を行った通信装置１０１の制御部２０２が自装置のミラーリング処理を一時停止し、通信装置１０２にミラーリング処理の一時停止を指示する無線信号を送信してもよい。あるいはステップＳ３５７の処理を行った通信装置１０２の制御部２０２が、自装置のミラーリング処理を一時停止し、通信装置１０１にミラーリング処理の一時停止を指示する無線信号を送信してもよい。ミラーリングを実行中にコンテンツリダイレクトを実施する場合、ミラーリング処理を一時停止することにより、通信装置１０１と通信装置１０２とにおけるミラーリングの処理負荷を軽減し、消費電力を抑えることが可能である。
【００７０】
通信装置１０２の制御部２０２はミラーリング処理を一時停止すると、ステップＳ３５７で受信したコンテンツの関連情報に基づいてクラウドサーバ１０４からコンテンツを取得し、再生する（ステップＳ３５９）。本フローチャートにおいて通信装置１０２は、ＡＰ１０３を介してクラウドサーバ１０４からコンテンツを取得する。通信装置１０１の制御部２０２によるコンテンツの受信方法やプロトコルは、コンテンツの種類やサービスの種類によって様々である。例えば通信装置１０１の制御部２０２はＨＬＳ方式やＨＴＴＰのＧＥＴメソッドなどを用いてコンテンツを取得してもよい。ここでＨＬＳとはＨＴＴＰ  Ｌｉｖｅ  Ｓｔｒｅａｍｉｎｇの略であり、ＨＴＴＰはＨｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌの略である。
【００７１】
なお、通信装置１０２の制御部２０２は、コンテンツリダイレクトによりコンテンツを再生している場合、通信装置１０１から受信した再生制御情報に基づいてコンテンツの再生を制御することができる。例えば、通信装置１０２がコンテンツを再生しており、通信装置１０１から一時停止を示す再生制御情報を受信した場合、通信装置１０２は再生しているコンテンツを一時停止する。
【００７２】
通信装置１０１の制御部２０２は、コンテンツリダイレクトを開始すると、シンク機器である通信装置１０２とのセッションの切断を検知するセッション切断検知処理を実行する（ステップＳ３１３）。通信装置１０１が本ステップで実施する処理については、後述の図６で詳細に説明する。また、通信装置１０２の制御部２０２も、コンテンツリダイレクトを開始すると、同様にソース機器である通信装置１０１とのセッションの切断を検知するセッション切断検知処理を実行する（ステップＳ３６０）。通信装置１０２が本ステップで実施する処理については、図４で詳細に説明する。
【００７３】
通信装置１０１の制御部２０２は、ステップＳ３１３でシンク機器とのセッションが切断された場合、シンク機器とのセッションの再確立処理を行う（ステップＳ３１４）。通信装置１０１が本ステップで実施する処理については、後述の図８で詳細に説明する。また、通信装置１０２の制御部２０２も、ステップＳ３６０でソース機器とのセッションが切断されると、ソース機器とのセッションの再確立処理を行う（ステップＳ３６１）。通信装置１０２が本ステップで実施する処理については、後述の図７で詳細に説明する。
【００７４】
通信装置１０１の制御部２０２は、ステップＳ３１４において通信装置１０２とのセッションを再確立し、かつコンテンツリダイレクトによるコンテンツの再生が継続されている場合、ステップＳ３１４の処理を行うと、ステップＳ３１３の処理を再び行う。これは、通信装置１０１の制御部２０２が、ステップＳ３１４において通信装置１０２とのセッションを再確立し、かつコンテンツリダイレクトによるコンテンツの再生を再開する場合も同様である。また、通信装置１０２の制御部２０２は、ステップＳ３６１において通信装置１０１とのセッションを再確立し、かつコンテンツリダイレクトによるコンテンツの再生を継続している場合、ステップＳ３６１の処理を行うと、ステップＳ３５９の処理を再び行う。また、通信装置１０２の制御部２０２がステップＳ３６１において通信装置１０１とのセッションを再確立し、かつコンテンツリダイレクトによるコンテンツの再生を再開する場合も、同様である。
【００７５】
なお、通信装置１０２の制御部２０２は、ステップＳ３６０およびステップＳ３６１と並行して、コンテンツリダイレクトの状態を検知し、通信装置１０１に当該状態を通知してもよい。また、通信装置１０１の制御部２０２は、ステップＳ３１３およびステップＳ３１４と並行して、通信装置１０２からコンテンツリダイレクトの状態についての通知を受信してもよい。ただし、コンテンツリダイレクトの状態の通知の送受信は、通信装置１０１と通信装置１０２とのセッションが接続されている場合に可能である。
【００７６】
通信装置１０２の制御部２０２と通信装置１０１の制御部２０２とは、夫々コンテンツリダイレクトの状態に応じた所定の制御を行ってもよい。例えば通信装置１０２の制御部２０２が、コンテンツが終端まで再生されたことを検知し、通信装置１０１に通知する場合、通信装置１０１と通信装置１０２とは、一時停止していたミラーリングを再開する。あるいは、通信装置１０１と通信装置１０２とは、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠したネットワークを介した通信、もしくはインフラストラクチャネットワークを介した通信を終了してもよい。なお、終端まで再生されたコンテンツの次に再生するコンテンツが決められている場合、通信装置１０１は通信装置１０２に、次に再生するコンテンツの関連情報を送信してもよい。次に再生するコンテンツの関連情報を受信した通信装置１０２は、受信した関連情報に基づいてコンテンツを取得し、再生する。
【００７７】
通信装置１０１の制御部２０２と通信装置１０２の制御部２０２とはミラーリングが終了したかを夫々判定する（ステップＳ３１５、ステップＳ３６２）。なお、通信装置１０１の制御部２０２は、ステップＳ３１４において通信装置１０２とセッションを再確立した際に、通信装置１０２とのミラーリングを再開しなかった場合、本ステップをスキップしてもよい。また、通信装置１０２の制御部２０２も同様に、ステップＳ３６１において通信装置１０１とのセッションを再確立した際に、通信装置１０１とのミラーリングを再開しなかった場合、本ステップをスキップしてもよい。
【００７８】
なお、通信装置１０１の制御部２０２と通信装置１０２の制御部２０２とは、夫々ステップＳ３０７およびステップＳ３５５以降の各ステップにおいて、ミラーリングを終了することができる。なお通信装置１０１の制御部２０２は、ステップＳ３１２以降においてコンテンツリダイレクトを行っている場合に、一時停止していたミラーリングを終了したことに基づいてコンテンツリダイレクトを終了してもよいし、継続してもよい。なお、通信装置１０２の制御部２０２も同様である。
【００７９】
ミラーリングが終了したと判定されると（ステップＳ３１５のＹｅｓ）、通信装置１０１の制御部２０２は図３に示すフローチャートの処理を終了する。同様に、通信装置１０２の制御部２０２もミラーリングを終了したと判定すると（ステップＳ３６２のＹｅｓ）、図３に示すフローチャートの処理を終了する。一方、ミラーリングが終了していないと判定されると（ステップＳ３１５のＮｏ）、通信装置１０１の制御部２０２はステップＳ３０７の処理を行い、一時停止していたミラーリング処理を再開する。また、ミラーリングが終了していないと判定された場合（ステップＳ３６２のＮｏ）、通信装置１０２の制御部２０２はステップＳ３５５の処理を行い、一時停止していたミラーリング処理を再開する。
【００８０】
以上、図３のフローチャートでは通信装置１０１と通信装置１０２とがコンテンツリダイレクトを実施する際に実行する処理を示した。
【００８１】
なお、図３ではコンテンツリダイレクトを実施する場合に、まずミラーリングを開始してからコンテンツリダイレクトを実施するとしたが、これに限らない。通信装置１０１と通信装置１０２とは、ステップＳ３０６およびステップＳ３５４でセッションが確立した後、ミラーリングを開始せずにコンテンツリダイレクトを開始してもよい。具体的には、通信装置１０１は本フローチャートが開始されると、まずステップＳ３０８の判定を行い、Ｙｅｓと判定されるとステップＳ３０２からステップＳ３０６の処理を行う。一方、Ｎｏと判定されると、通信装置１０１は再びステップＳ３０８の処理を行う。この場合、通信装置１０２は、通信装置１０１がステップＳ３０２からステップＳ３０６の処理を行う際に、ステップＳ３５１からステップＳ３５４の処理を行う。また、通信装置１０１はステップＳ３０６でセッションを確立した後、ステップＳ３０９の処理を行う。また、通信装置１０２はステップＳ３５４でセッションを確立した後、ステップＳ３５６の処理を行う。この場合、ステップＳ３１２とステップＳ３５８はスキップされる。また、ステップＳ３１５およびステップＳ３６２の判定は、コンテンツリダイレクトが終了したか、という判定になる。
【００８２】
図４は、通信装置１０２が通信装置１０１とのセッションの切断を検知する場合に、通信装置１０２の記憶部２０１に記憶されたコンピュータプログラムを制御部２０２が読み出し、実行することで実現される処理を示すフローチャートである。図４は、通信装置１０２が図３のステップＳ３６０において実行する処理を示すフローチャートである。
【００８３】
本フローチャートは、通信装置１０２がコンテンツリダイレクトによってコンテンツの再生を開始したことで開始される。あるいは、通信装置１０２がコンテンツの受信を開始したことで開始されてもよい。
【００８４】
まず、通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断されたか判定する（ステップＳ４０１）。本ステップにおいて、通信装置１０２の制御部２０２は、コンテンツリダイレクトによるコンテンツの再生を制御するための再生制御信号をソース機器である通信装置１０１から受信する際に利用するセッションが切断されたか判定する。なお、本実施形態において、通信装置１０１と通信装置１０２とは図３のステップＳ３０６、ステップＳ３５４で確立したセッションを利用して再生制御信号をやり取りしているとする。なお、これに限らず、通信装置１０１と通信装置１０２とは、図３のステップＳ３０６、ステップＳ３５４で確立したセッションとは異なるセッションを介して再生制御信号のやり取りを行ってもよい。
【００８５】
通信装置１０２の制御部２０２は、通信装置１０１とのＲＴＳＰセッションの切断を検知することで、通信装置１０１とのセッションが切断されたと判定する。あるいは、通信装置１０２の制御部２０２は、通信装置１０１とのＴＣＰ接続の切断を検知することで、通信装置１０１とのセッションが切断されたと判定してもよい。
【００８６】
通信装置１０２の制御部２０２は、通信装置１０１と通信装置１０２との間でＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格のキープアライブ要求を用いてＲＴＳＰセッションが切断されたか否かを判定する。Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格において、通信装置１０１と通信装置１０２とは、所定の期間内にキープアライブ要求を送信あるいは受信することで、通信装置１０１と通信装置１０２とのＲＴＳＰセッションが有効かを確認することができる。具体的には、まず通信装置１０１が通信装置１０２とのＲＴＳＰセッションにおけるキープアライブ間隔を設定する。Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格において、通信装置１０１はキープアライブ間隔をＲＴＳＰ  Ｍ６（ＳＥＴＵＰ）応答の中のｔｉｍｅｏｕｔ値で設定する。次に通信装置１０１は、通信装置１０２とのＲＴＳＰセッションが有効であるかを確認するため、通信装置１０２に要求信号としてキープアライブ要求を送信する。Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格において、キープアライブ要求とはＲＴＳＰ  Ｍ１６（ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ）要求のことである。通信装置１０１は、設定したキープアライブ間隔より短い間隔で、通信装置１０２にキープアライブ要求を送信する。通信装置１０２は通信装置１０１からキープアライブ要求を受信すると、応答信号として通信装置１０１にキープアライブ応答を送信する。Ｗｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格において、キープアライブ応答はＲＴＳＰ  Ｍ１６（ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ）応答のことである。なお通信装置１０２の制御部２０２は、設定されたキープアライブ間隔の間に、通信装置１０１から一度もキープアライブ要求を受信しなかった場合、通信装置１０１とのＲＴＳＰセッションが切断されたと判定する。一方、通信装置１０２の制御部２０２は、設定されたキープアライブ間隔の間に、通信装置１０１からキープアライブ要求を受信すると、通信装置１０１とのＲＴＳＰセッションは有効であると判定する。また、通信装置１０１の制御部２０２は、設定したキープアライブ間隔の間に、通信装置１０２から一度もキープアライブ応答を受信しなかった場合、通信装置１０２とのＲＴＳＰセッションが切断されたと判定する。一方、通信装置１０１の制御部２０２は、設定したキープアライブ間隔の間に、通信装置１０２から少なくとも一度キープアライブ応答を受信すると、通信装置１０２がまだ有効であると判定する。なお、通信装置１０１の制御部２０２は、通信装置１０２からどのようなＲＴＳＰ  Ｍ１６応答を受信しても、通信装置１０２がまだアライブであると判定する。なお、キープアライブにおいて、通信装置１０１と通信装置１０２との役割を交換してもよい。
【００８７】
また、通信装置１０２の制御部２０２は、通信装置１０１とのＴＣＰ接続についても、ＴＣＰのキープアライブを行い、通信装置１０２とのＴＣＰ接続が有効であるかを確認することで、通信装置１０１とのＴＣＰ接続が切断されたか否かを判定する。通信装置１０２の制御部２０２は、通信装置１０１とパケットの通信がなくなってからＴＣＰ接続が有効であるかを確認するための要求信号としてキープアライブパケットを送信するまでの時間を予め設定しておく。通信装置１０２の制御部２０２は、通信装置１０１とのパケットの通信がなくなり、予め設定した時間が経過した場合に、通信装置１０１にキープアライブパケットを送信する。通信装置１０２の制御部２０２は、自装置がキープアライブパケットを送信してから所定の時間が経過するまでに、通信装置１０１からキープアライブパケットに対する応答信号である応答パケットを受信したか判定する。所定の時間が経過するまでに通信装置１０１からキープアライブパケットに対する応答を受信した場合は、通信装置１０２の制御部２０２は通信装置１０１とのＴＣＰ接続が有効であると判定する。一方、所定の時間が経過するまでに通信装置１０１から応答パケットを受信しなかった場合、通信装置１０２の制御部２０２は、再度通信装置１０１にキープアライブパケットを送信する。そして、通信装置１０２の制御部２０２は、通信装置１０１から所定の時間が経過するまでに応答パケットを受信したか判定する。通信装置１０２の制御部２０２は、予め決めておいた回数だけ通信装置１０１にキープアライブパケットを送信しても通信装置１０１から応答パケットを受信しなかった場合、通信装置１０１とのＴＣＰ接続は切断されたと判定する。
【００８８】
通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知してから、所定の時間が経過するまでに通信装置１０１とのセッションを再確立できなかった場合、通信装置１０１とのセッションが切断されたと判定してもよい。あるいは、通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知し、所定の回数以上セッションの再確立を試行し、セッションを再確立できなかった場合、通信装置１０１とのセッションが切断されたと判定してもよい。
【００８９】
通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断されていないと判定すると（ステップＳ４０１のＮｏ）、再びステップＳ４０１の判定を行う。一方、通信装置１０１とのセッションが切断されたと判定すると（ステップＳ４０１のＹｅｓ）、通信装置１０１の制御部２０２はステップＳ４０２の処理を行う。
【００９０】
通信装置１０２の制御部２０２は、自装置によるコンテンツの再生制御が可能か判定する（ステップＳ４０２）。通信装置１０２の制御部２０２は、自装置が再生制御機能を有している場合はステップＳ４０２でＹｅｓと判定し、自装置が再生制御機能を有していない場合はステップＳ４０２でＮｏと判定する。通信装置１０２が再生制御機能を有している場合とは、通信装置１０２が入力部２０４を介して受け付けたユーザ操作に基づいてコンテンツの再生を制御できる場合である。例えば通信装置１０２は、入力部２０４としたタッチスクリーンを備えており、かつタッチスクリーンに対して行われたユーザ操作に基づいてコンテンツの再生を制御できる場合、再生制御機能を有していると判定する。あるいは、通信装置１０２がユーザ操作を受け付ける入力部２０４として、通信装置１０２と別体の装置を備えており、その装置を介して受け付けたユーザ操作に基づいてコンテンツの再生を制御できる場合、再生制御機能を有していると判定してもよい。通信装置１０２と別体の装置とは、例えば通信装置１０２に備えられたリモコンである。
【００９１】
通信装置１０２の制御部２０２は、自装置によるコンテンツの再生制御が可能であると判定すると（ステップＳ４０２のＹｅｓ）、ステップＳ４０３の処理を行う。一方、通信装置１０２の制御部２０２は、自装置によるコンテンツの再生制御が可能ではないと判定すると（ステップＳ４０２のＮｏ）、ステップＳ４０６の処理を行う。
【００９２】
通信装置１０２の制御部２０２は、コンテンツの再生を一時停止し、コンテンツリダイレクトの継続を確認するための確認画面を表示する（ステップＳ４０３）。具体的には通信装置１０２の制御部２０２は、確認画面を、出力部２０５を介して表示する。例えば通信装置１０２が出力部２０５として、通信装置１０２と一体のモニタ画面を有している場合、通信装置１０２の制御部２０２はモニタ画面を介して確認画面を表示する。あるいは、例えば通信装置１０２が出力部２０５として、通信装置１０２と別体のディスプレイを有している場合、通信装置１０２の制御部２０２はディスプレイを介して確認画面を表示する。
【００９３】
本ステップで表示する確認画面の一例を図５に示す。確認画面５０１に示すように、通信装置１０２の制御部２０２は、ソース機器である通信装置１０１とのセッションが切断された旨のメッセージとともに、コンテンツの再生を再開するか否かを選択する確認画面を表示する。通信装置１０２は、通信装置１０１とのセッションが切断された旨のメッセージに代えて、あるいは加えて、通信装置１０１からのコンテンツの再生制御ができない旨のメッセージを表示してもよい。また、通信装置１０２はこれらのメッセージに加えて、通信装置１０２によるコンテンツの再生制御が可能である旨のメッセージを表示してもよい。
【００９４】
通信装置１０２はコンテンツリダイレクトによるコンテンツの再生を一時停止し、別の画面に遷移した状態で確認画面５０１を表示する。あるいは通信装置１０２はコンテンツの再生を一時停止した状態で確認画面５０１を表示してもよい。通信装置１０２は、一時停止したコンテンツを表示している場合、確認画面５０１を表示しているコンテンツに重畳して表示する。あるいは、通信装置１０２は、コンテンツを表示している画面から遷移して、確認画面５０１を表示してもよい。あるいは通信装置１０２は、一時停止したコンテンツを表示している場合、コンテンツとは別の表示領域に確認画面５０１を表示するようにしてもよい。
【００９５】
通信装置１０２の制御部２０２は、確認画面を表示すると、コンテンツの再生を再開するか判定する（ステップＳ４０４）。本判定は、ステップＳ４０３で表示した確認画面に対するユーザ操作に基づいて行う。ユーザがコンテンツの再生の再開を選択した場合（図５の確認画面５０１のＯＫを選択した場合）、通信装置１０２の制御部２０２はステップＳ４０４でＹｅｓと判定する。一方、ユーザがコンテンツの再生の再開を選択しなかった場合（図５の確認画面５０１でＣａｎｃｅｌを選択した場合）、通信装置１０２の制御部２０２はステップＳ４０４でＮｏと判定する。なお、通信装置１０２の制御部２０２は、ステップＳ４０３で確認画面を表示してから所定の時間が経過しても、コンテンツの再生を再開するか否かのユーザ操作を受け付けなかった場合、コンテンツの再生を再開しないと自動的に判定する。あるいは、通信装置１０２の制御部２０２は、コンテンツの再生を再開すると判定してもよい。ステップＳ４０３で確認画面を表示してから所定の時間が経過しても、ユーザ操作を受け付けなかった場合、通信装置１０２がコンテンツの再生を再開するか否かは、ユーザ設定によって決められている。あるいは、通信装置１０２にデフォルトで設定されていてもよいし、通信装置１０２がコンテンツリダイレクトを行うために利用しているアプリケーションプログラムによって決められてもよい。なお、通信装置１０２の制御部２０２が確認画面を表示してからコンテンツの再生を再開するか否かを自動的に判定するまでの時間は、ユーザによって設定される。あるいは通信装置１０２にデフォルトで設定されていてもよいし、通信装置１０２がコンテンツリダイレクトを行うために利用しているアプリケーションプログラムによって決められてもよい。
【００９６】
通信装置１０２の制御部２０２はコンテンツの再生を再開しないと判定すると（ステップＳ４０４のＮｏ）、ステップＳ４０７の処理を行う。一方、通信装置１０２の制御部２０２はコンテンツの再生を再開すると判定すると（ステップＳ４０４のＹｅｓ）、ステップＳ４０５の処理を行う。
【００９７】
通信装置１０２の制御部２０２は、ステップＳ４０３において一時停止したコンテンツの再生を再開する（ステップＳ４０５）。そして通信装置１０２の制御部２０２は、コンテンツリダイレクトを継続する（ステップＳ４０６）。具体的には、通信装置１０１の制御部２０２は、クラウドサーバ１０４からのコンテンツの取得と、取得したコンテンツの再生を継続する。なお、ステップＳ４０２において、通信装置１０２によるコンテンツの再生制御が可能であると判定されている場合、通信装置１０２は入力部２０４を介して受け付けたユーザ操作に基づいたコンテンツの再生制御が可能である。そのため、通信装置１０２の制御部２０２は、自装置のリモコンなどを用いてコンテンツの再生制御が可能である旨をユーザに通知してもよい。通信装置１０２の制御部２０２はステップＳ４０６の処理を行うと、本フローチャートのフローを終了する。
【００９８】
一方、ステップＳ４０２において通信装置１０２によるコンテンツの再生制御が可能ではないと判定された場合、通信装置１０２の制御部２０２は、再生しているコンテンツがプライベートコンテンツであるか判定する（ステップＳ４０７）。プライベートコンテンツとは、コンテンツを再生できるユーザに制限がかけられているコンテンツのことである。例えば、特定のユーザのみが再生可能に設定されているコンテンツや、コンテンツの所在情報を知っているユーザのみが再生可能に設定されているコンテンツなどが該当する。また、コンテンツを再生するために、コンテンツを提供するサービスへのログインなどのユーザ認証が必要なコンテンツも該当する。
【００９９】
通信装置１０２の制御部２０２は、図３のステップＳ３５７で通信装置１０１から受信したコンテンツの関連情報に含まれている、コンテンツがプライベートコンテンツであるか否かを示す情報に基づいて、ステップＳ４０７の判定を行う。通信装置１０２の制御部２０２は、受信したコンテンツの関連情報に、コンテンツがプラベートコンテンツであることを示す情報が含まれている場合は、ステップＳ４０７でＹｅｓと判定する。一方、通信装置１０２の制御部２０２は、受信したコンテンツの関連情報に、コンテンツがプライベートコンテンツではないことを示す情報が含まれている場合、ステップＳ４０７でＮｏと判定する。あるいは、通信装置１０２の制御部２０２は、受信したコンテンツの関連情報に、コンテンツがプライベートコンテンツであるか否かを示す情報が含まれていない場合も、ステップＳ４０７でＮｏと判定してもよい。
【０１００】
あるいは、通信装置１０２の制御部２０２は、図３のステップＳ３５９にクラウドサーバ１０４からコンテンツを受信する際に、認証情報を必要とするか否かで判定してもよい。認証情報とは、例えばコンテンツを提供するサーバやサービスへのログイン情報や、クラウドサーバ１０４とのセキュアな通信の確立に必要となるセキュリティ情報などである。あるいは認証情報とは、クラウドサーバ１０４とのセキュアな通信を識別するためのトークン情報であってもよい。なお、通信装置１０２の制御部２０２は、認証情報の要否に限らず、ステップＳ３５９にクラウドサーバ１０４からコンテンツを受信する際に、ユーザを識別するための識別情報を必要とするか否かで判定してもよい。通信装置１０２の制御部２０２は、ステップＳ３５９で認証情報や識別情報を必要とする場合、ステップＳ４０７でＹｅｓと判定する。一方、ステップＳ３５９で認証情報や識別情報を必要としない場合、通信装置１０２の制御部２０２はステップＳ４０７でＮｏと判定する。
【０１０１】
通信装置１０２の制御部２０２は、コンテンツがプライベートコンテンツではないと判定すると（ステップＳ４０７のＮｏ）、ステップＳ４０６の処理を行い、コンテンツリダイレクトを継続する。なお、この場合、ステップＳ４０２でＮｏと判定されていることから、通信装置１０２の制御部２０２は入力部２０４を介して受け付けたユーザ操作に基づいたコンテンツの再生制御は行うことができない。一方、通信装置１０２の制御部２０２は、コンテンツがプライベートコンテンツであると判定すると（ステップＳ４０７のＹｅｓ）、ステップＳ４０８の処理を行う。
【０１０２】
通信装置１０２の制御部２０２は、コンテンツリダイレクトを終了する（ステップＳ４０８）。具体的には、通信装置１０２はクラウドサーバ１０４からのコンテンツの受信を停止し、かつコンテンツリダイレクトによるコンテンツの再生を終了する。あるいは、通信装置１０２の制御部２０２は、クラウドサーバ１０４からのコンテンツの受信は継続し、コンテンツの再生を停止してもよい。この場合、通信装置１０２の制御部２０２は、クラウドサーバ１０４からのコンテンツの受信を継続し、コンテンツをバッファリングしておくことで、セッションを再確立した際にコンテンツを再生が停止された箇所からより速やかに再生することができる。
【０１０３】
通信装置１０２の制御部２０２は、コンテンツリダイレクトが終了したことを表示する（ステップＳ４０９）。通信装置１０２の制御部２０２は、通信装置１０２におけるコンテンツリダイレクトが終了した旨を通知する画面を表示することで、ユーザにコンテンツリダイレクトが終了したことを通知する。なお、通信装置１０２はコンテンツリダイレクトの終了に代えて、あるいは加えて、コンテンツの再生が終了したことを通知してもよい。また、通信装置１０２はコンテンツリダイレクトが終了した原因についても併せて通知してもよい。具体的には、通信装置１０２は、ソース機器である通信装置１０１とのセッションが切断されたことでコンテンツリダイレクトが終了した旨を通知する。あるいは、ステップＳ４０７でＹｅｓと判定された場合、通信装置１０１とのセッションの切断に加えて、あるいは代えて、コンテンツがプライベートコンテンツであったことからコンテンツリダイレクトが終了した旨を通知してもよい。
【０１０４】
このように、通信装置１０２がユーザにコンテンツリダイレクトが終了したことを通知することで、ユーザはコンテンツリダイレクトが終了したことを認識できる。また通信装置１０２が、コンテンツリダイレクトが終了した原因についても併せて通知することで、ユーザはコンテンツリダイレクトが終了した原因を把握することができる。通信装置１０２の制御部２０２は、ステップＳ４０９の処理を行うと、本フローチャートのフローを終了する。
【０１０５】
図４において、通信装置１０２は通信装置１０１とのセッションが切断された場合に、コンテンツリダイレクトを継続するか否かを判定した。具体的には、通信装置１０２は、通信装置１０２によるコンテンツの再生制御が可能か否かと、ユーザ選択あるいはコンテンツがプライベートコンテンツであるか否かと、に基づいてコンテンツリダイレクトを継続するか否かを判定した。これにより、通信装置１０２はユーザの意図に反してコンテンツが再生されてしまうことを防ぐことが可能となる。
【０１０６】
図４において、通信装置１０２はソース機器である通信装置１０１とのセッションが切断された場合に、通信装置１０２によるコンテンツの再生制御が可能かということに加えて、ユーザの選択などに基づいてコンテンツリダイレクトの継続可否を判定した。しかし、通信装置１０２の制御部２０２は、通信装置１０２によるコンテンツの再生制御が可能かということに基づいてコンテンツリダイレクトを継続するか否かを判定してもよい。具体的には、通信装置１０２の制御部２０２は、自装置によるコンテンツの再生制御が可能である場合はコンテンツリダイレクトを継続すると判定し、自装置によるコンテンツの再生制御が不可である場合はコンテンツリダイレクトを継続しないと判定する。これにより、通信装置１０２は、自装置によるコンテンツの再生制御が不可の場合はコンテンツリダイレクトを継続しないことで、ユーザの意図に反してコンテンツが再生されてしまうことを防ぐことが可能となる。
【０１０７】
また、通信装置１０２は、ソース機器とのセッションが切断された場合に、ユーザによる選択に基づいて、コンテンツリダイレクトを継続するか否かの判定を行ってもよい。具体的には、通信装置１０２の制御部２０２は、ステップＳ４０１でソース機器とのセッションが切断されたと判定すると、ステップＳ４０２をスキップし、ステップＳ４０３の処理を行い、確認画面を表示する。通信装置１０２の制御部２０２は、ユーザがコンテンツリダイレクトの継続を選択した場合はコンテンツリダイレクトを継続し、コンテンツリダイレクトの継続を選択しなかった場合はステップＳ４０８の処理を行い、コンテンツリダイレクトを終了する。通信装置１０２はユーザ選択に基づいて、コンテンツリダイレクトを継続するか否かを選択することで、よりユーザの意図に沿ったコンテンツの再生制御が可能となる。
【０１０８】
あるいは、通信装置１０２の制御部２０２は、ソース機器とのセッションが切断された場合に、再生しているコンテンツがプライベートコンテンツであるか否かに基づいて、コンテンツリダイレクトを継続するか否かの判定を行ってもよい。具体的には、通信装置１０２の制御部２０２は、ステップＳ４０１でＹｅｓと判定されると、ステップＳ４０２をスキップし、ステップＳ４０７の処理を行い、コンテンツがプライベートコンテンツであるかを判定する。通信装置１０２の制御部２０２は、コンテンツがプライベートコンテンツである場合はコンテンツリダイレクトを終了し、コンテンツがプライベートコンテンツではない場合はコンテンツリダイレクトを継続する。このように、コンテンツがプライベートコンテンツである場合はコンテンツリダイレクトを終了することで、ユーザが再生したくないコンテンツや、コンテンツの一部分を再生してしまうことを防ぐ。例えばユーザがプライベートコンテンツの一部分のみを公開する目的でコンテンツを再生しており、シンク機器とソース機器とのセッションが切断された場合、ユーザはソース機器を利用したコンテンツの再生制御ができなくなってしまう。そのため、ユーザが公開したくなかった部分までコンテンツが再生されてしまう虞がある。通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断され、かつコンテンツがプライベートコンテンツである場合にコンテンツリダイレクトを停止することで、ユーザの意図に反してコンテンツが再生されてしまうことを防ぐことが可能となる。
【０１０９】
また、通信装置１０２の制御部２０２は、ソース機器とのセッションが切断された場合に、コンテンツを再生するために特定のサービスにログインしているか否かに基づいて、コンテンツリダイレクトを継続するか否かの判定を行ってもよい。具体的には、通信装置１０２の制御部２０２は、ステップＳ４０１でＹｅｓと判定されると、現在再生中のコンテンツを再生するために、特定のサービスにログインしているか判定する。特定のサービスにログインしていると判定すると、通信装置１０２の制御部２０２はステップＳ４０８の処理を行い、コンテンツリダイレクトを終了する。一方、特定のサービスにログインしていないと判定すると、通信装置１０２の制御部２０２はステップＳ４０６の処理を行い、コンテンツリダイレクトを継続する。特定のサービスとは、例えばコンテンツの配信サービスのことで、サービスが提供するコンテンツの受信や再生を行う際にユーザ認証が必要なサービスのことを指す。このようなサービスで提供されるコンテンツは、受信や再生にユーザ認証が必要となるプライベートコンテンツであると考えられるため、特定のサービスにログインしている場合、通信装置１０２はプライベートコンテンツを再生していると考えられる。そのため、通信装置１０１とのセッションが切断され、かつ特定のサービスにログインしている場合、コンテンツリダイレクトを停止することで、ユーザの意図に反してコンテンツが再生されてしまうことを防ぐことが可能となる。なお、コンテンツを再生するためのサービスへのログインを、通信装置１０２ではなく、通信装置１０１が行っていた場合、通信装置１０２の制御部２０２は、通信装置１０１が特定のサービスにログインしていたか否かに基づいて判定する。
【０１１０】
通信装置１０２の制御部２０２は、所定の条件に基づいてコンテンツリダイレクトを継続するか判定する。ここで所定の条件とは、通信装置１０２によるコンテンツの再生制御が可能か、コンテンツがプライベートコンテンツであるか、特定のサービスにログインしているか、あるいはユーザ選択の少なくとも何れか一つのことである。なお、通信装置１０２の制御部２０２は、これらの判定基準を組み合わせてコンテンツリダイレクトを継続するかを判定してもよいし、これらの判定基準とは異なる新たな判定基準を加えてコンテンツリダイレクトを継続するかを判定してもよい。
【０１１１】
図６は、通信装置１０１が通信装置１０２とのセッションの切断を検知する場合に、通信装置１０１の記憶部２０１に記憶されたコンピュータプログラムを制御部２０２が読み出し、実行することで実現される処理を示すフローチャートである。図６は、通信装置１０１が図３のステップＳ３１３において実行する処理を示すフローチャートである。
【０１１２】
本フローチャートは、通信装置１０１がコンテンツリダイレクトを開始し、ミラーリングを一時停止したことで開始される。あるいは、通信装置１０１が通信装置１０２にコンテンツの関連情報を通知したことで開始されてもよい。
【０１１３】
まず、通信装置１０１の制御部２０２は、通信装置１０２とのセッションが切断されたか判定する（ステップＳ６０１）。本ステップにおいて、通信装置１０１の制御部２０２は、コンテンツリダイレクトによるコンテンツの再生を制御するための再生制御信号をシンク機器である通信装置１０２に送信する際に利用するセッションが切断されたか判定する。なお、本実施形態において、通信装置１０１と通信装置１０２とは図３のステップＳ３０６、ステップＳ３５４で確立したセッションを利用して再生制御信号をやり取りしているとする。なお、これに限らず、通信装置１０１と通信装置１０２とは、図３のステップＳ３０６、ステップＳ３５４で確立したセッションとは異なるセッションを介して再生制御信号のやり取りを行ってもよい。
【０１１４】
通信装置１０１の制御部２０２は、通信装置１０２とのセッションの切断を検知してから、所定の時間が経過するまでに通信装置１０２とのセッションを再確立できなかった場合、通信装置１０２とのセッションが切断されたと判定してもよい。あるいは、通信装置１０１の制御部２０２は、通信装置１０２とのセッションの切断を検知し、所定の回数以上セッションの再確立を試行し、セッションを再確立できなかった場合、通信装置１０２とのセッションが切断されたと判定してもよい。
【０１１５】
通信装置１０１の制御部２０２は、通信装置１０２とのＲＴＳＰセッションの切断を検知することで、通信装置１０２とのセッションが切断されたと判定する。あるいは、通信装置１０１の制御部２０２は、通信装置１０２とのＴＣＰ接続の切断を検知することで、通信装置１０２とのセッションが切断されたと判定してもよい。
【０１１６】
通信装置１０１の制御部２０２は、図４のステップＳ４０１の通信装置１０２と同様に、通信装置１０２とのＲＴＳＰセッションが切断されたかを判定する。具体的には、通信装置１０１の制御部２０２は、通信装置１０１と通信装置１０２との間でＷｉ−Ｆｉ  Ｍｉｒａｃａｓｔ規格のキープアライブ要求を用いてＲＴＳＰセッションが切断されたか否かを判定する。
【０１１７】
また、通信装置１０１の制御部２０２は、図４のステップＳ４０１の通信装置１０２と同様に、通信装置１０２とのＴＣＰ接続が切断されたかを、ＴＣＰキープアライブを行うことで判定する。
【０１１８】
通信装置１０１の制御部２０２は、通信装置１０２とのセッションが切断されていないと判定すると（ステップＳ６０１のＮｏ）、再びステップＳ６０１の判定を行う。一方、通信装置１０２とのセッションが切断されたと判定すると（ステップＳ６０１のＹｅｓ）、通信装置１０１の制御部２０２はステップＳ６０２の処理を行う。
【０１１９】
通信装置１０１の制御部２０２は、シンク機器である通信装置１０２によるコンテンツの再生制御が可能かを判定する（ステップＳ６０２）。本ステップの判定は、図３のステップＳ３０９で通信装置１０２に対してコンテンツリダイレクト機能の問合せを行った際に、通信装置１０２から受信した応答に基づいて行う。具体的には、通信装置１０１の制御部２０２は、ステップＳ３０９で通信装置１０２に対してコンテンツリダイレクト機能の問合せを行う際に、通信装置１０２によるコンテンツの再生制御が可能であるかも問い合わせる。通信装置１０２はコンテンツリダイレクト機能の問合せに対する応答に、自装置によるコンテンツの再生制御が可能であるかについての情報も含める。通信装置１０１の制御部２０２は、通信装置１０２から受信した応答に含まれる、通信装置１０２によるコンテンツの再生制御に関する情報に基づいて本ステップの判定を行う。通信装置１０２によるコンテンツの再生制御が可能であると判定した場合（ステップＳ６０２のＹｅｓ）、通信装置１０１の制御部２０２はステップＳ６０３の処理を行う。一方、通信装置１０２によるコンテンツの再生制御が可能ではないと判定した場合（ステップＳ６０２のＮｏ）、通信装置１０１の制御部２０２は本フローチャートのフローを終了する。
【０１２０】
通信装置１０１の制御部２０２は、シンク機器である通信装置１０２によるコンテンツの再生制御が可能であることを通知する（ステップＳ６０３）。具体的には、通信装置１０１の制御部２０２は、シンク機器である通信装置１０２によるコンテンツの再生制御が可能である旨のメッセージを通信装置１０１の出力部２０５を介して表示することで、ユーザに通知する。通信装置１０１の制御部２０２は、本ステップの処理を行うと、本フローチャートのフローを終了する。
【０１２１】
なお、通信装置１０１の制御部２０２は、ステップＳ６０２において、通信装置１０２によるコンテンツの再生制御が可能かという判定を行い、通信装置１０２によるコンテンツの再生制御が可能な場合は、その旨をユーザに通知した。しかし、これに限らず、通信装置１０１の制御部２０２は、ステップＳ６０２の判定を行う前に、通信装置１０２がコンテンツリダイレクトを継続するか判定してもよい。具体的には、通信装置１０１の制御部２０２は、セッションが切断された際に通信装置１０２が再生していたコンテンツがプライベートコンテンツであるかを判定してもよい。あるいは、通信装置１０１の制御部２０２は、セッションが切断された際に通信装置１０２あるいは通信装置１０１が特定のサービスにログインしていたかを判定してもよい。通信装置１０１の制御部２０２は、コンテンツがプライベートコンテンツであった場合、通信装置１０２はコンテンツリダイレクトを継続しないと判定する。通信装置１０１の制御部２０２は、通信装置１０２あるいは通信装置１０１が特定のサービスにログインしていた場合も同様に通信装置１０２はコンテンツリダイレクトを継続しないと判定する。一方、通信装置１０１の制御部２０２は、コンテンツがプライベートコンテンツではなかった場合、通信装置１０２はコンテンツリダイレクトを継続すると判定する。また、通信装置１０１の制御部２０２は、通信装置１０１および通信装置１０２が特定のサービスにログインしていなかった場合も同様に通信装置１０２はコンテンツリダイレクトを継続すると判定する。通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクトを継続すると判定すると、ステップＳ６０２の処理を行う。一方、通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクトを継続しないと判定すると、ステップＳ６０２の判定をスキップし、本フローチャートのフローを終了する。
【０１２２】
図７は、通信装置１０２が通信装置１０１とのセッションを切断された後、通信装置１０２が記憶部２０１に記憶されたコンピュータプログラムを制御部２０２が読み出し、実行することで実現される処理を示すフローチャートである。本フローチャートは、通信装置１０２が図３のステップＳ３６１で実行する処理を示すフローチャートである。
【０１２３】
通信装置１０２の制御部２０２は、通信装置１０１とのセッションを再確立する（ステップＳ７０１）。通信装置１０１と通信装置１０２とのセッションが再確立される際、通信装置１０２は図３のステップＳ３５１〜ステップＳ３５７までの処理の少なくとも一つを行う。また、通信装置１０１も図３のステップＳ３０２〜ステップＳ３１１の内、通信装置１０２が行った処理と対応する処理を行う。通信装置１０２の制御部２０２は、通信装置１０１とのセッションを再確立すると、ステップＳ７０２の処理を行う。
【０１２４】
なお、通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断されてから所定の時間が経過するまでに通信装置１０１とのセッションを再確立できなかった場合、コンテンツリダイレクトを終了する。また、コンテンツリダイレクトを開始する際にミラーリングを一時停止していた場合、ミラーリングも停止する。なお、通信装置１０２の制御部２０２は、所定の時間が経過するまでではなく、通信装置１０１とのセッションの確立を所定の回数、試行してもセッションを再確立できなかった場合に、同様にコンテンツリダイレクトを終了するようにしてもよい。通信装置１０２の制御部２０２は、コンテンツリダイレクトを停止すると、本フローチャートのフローを終了する。
【０１２５】
通信装置１０２の制御部２０２は、自装置が通信装置１０１とのセッションが切断された後もコンテンツリダイレクトを継続していたか判定する（ステップＳ７０２）。通信装置１０２の制御部２０２は、ソース機器とのセッションの切断を検知した後、コンテンツリダイレクトを継続すると判定していたかに基づいて本ステップの判定を行う。本実施形態では、図４のステップＳ４０４でＹｅｓと判定した場合、あるいはステップＳ４０７でＮｏと判定した場合、コンテンツリダイレクトを継続していたと判定する。一方、図４のステップＳ４０４でＮｏと判定した場合、あるいはステップＳ４０７でＹｅｓと判定した場合、コンテンツリダイレクトを継続していなかったと判定する。なお、通信装置１０２がクラウドサーバ１０４からのコンテンツの受信は継続しているが、コンテンツの再生を停止している場合、通信装置１０２の制御部２０２はコンテンツリダイレクトを継続していたと判定してもよい。通信装置１０２の制御部２０２はコンテンツリダイレクトを継続していなかったと判定すると（ステップＳ７０２のＮｏ）、ステップＳ７０５の処理を行う。一方、コンテンツリダイレクトを継続していたと判定すると（ステップＳ７０２のＹｅｓ）、通信装置１０２の制御部２０２はステップＳ７０３の処理を行う。
【０１２６】
通信装置１０２の制御部２０２は、コンテンツリダイレクトの状態を通信装置１０１に通知する（ステップＳ７０３）。具体的には、通信装置１０２の制御部２０２は、実行中のコンテンツリダイレクトにおけるコンテンツの再生に関する状態や、コンテンツの受信に関する状態などの情報を通信装置１０１に通知する。例えば、通信装置１０２はコンテンツを再生中であるので、通信装置１０１にコンテンツを再生中である旨や、併せてコンテンツの名称やコンテンツをどれだけ再生したかを示す時刻情報などの情報を通知する。あるいは、通信装置１０２がコンテンツの再生は停止しているが、クラウドサーバ１０４からのコンテンツの受信を継続中である場合、通信装置１０２の制御部２０２はその旨を通信装置１０１に通知するようにしてもよい。
【０１２７】
なお、通信装置１０２の制御部２０２は、本ステップでＲＴＳＰのメッセージを用いて通信装置１０１に通知する。この場合、通信装置１０２の制御部２０２は、ＲＴＳＰの要求メッセージを利用して通信装置１０１に通知する。あるいは、通信装置１０２の制御部２０２は、通信装置１０１から受信した要求メッセージに対する応答メッセージを利用して通知してもよい。通信装置１０２の制御部２０２が利用する通知方法はこれに限るものではなく、他のプロトコルやメッセージを用いて通知するようにしてもよい。
【０１２８】
通信装置１０２の制御部２０２は、通信装置１０１から再生制御情報を受信し、受信した再生制御情報に基づいてコンテンツの再生制御を行うために必要な処理を行う（ステップＳ７０４）。通信装置１０２の制御部２０２は、図３のステップＳ３５６とステップＳ３５７で行った処理の内、通信装置１０１から再生制御情報を受信し、受信した再生制御情報に基づいたコンテンツの再生制御を行うために必要な処理を行う。なお、通信装置１０１とのセッションを再確立する際に、既に必要な処理を行っている場合、通信装置１０２の制御部２０２は本ステップをスキップしてもよい。
【０１２９】
なお、通信装置１０２の制御部２０２は、通信装置１０１とのセッションを再確立する際に、切断されたセッションと、再確立するセッションとで同じセッション識別子を利用するようにしても良い。セッション識別子とは、セッションを識別するために用いられる識別子であって、セッションの管理などに利用される情報である。例えば、通信装置１０２が通信装置１０１からセッションの確立要求を受信することで、通信装置１０１と通信装置１０２とのセッションの再確立処理が開始されるとする。通信装置１０２が受信した確立要求に含まれるセッションの識別子が、切断されたセッションの識別子と同じである場合、通信装置１０２の制御部２０２はセッションの再確立処理からステップＳ７０４における再生制御の再開までの処理を一部省いてもよい。通信装置１０２の制御部２０２は、一部の処理を省けることで、通信装置１０１からの再生制御の再開までにかかる時間を短縮することができる。
【０１３０】
通信装置１０２の制御部２０２は、ステップＳ７０４の処理を行うと、図３のステップＳ３５９の処理を行い、クラウドサーバ１０４からのコンテンツの受信と再生を引き続き行う。
【０１３１】
なお、ステップＳ７０２において通信装置１０２がコンテンツの再生は停止しているが、コンテンツの受信は継続している場合、通信装置１０２はステップＳ７０２でＹｅｓと判定されたことに応じてコンテンツの再生を再開する。あるいは、通信装置１０２の制御部２０２は、ソース機器である通信装置１０１からのコンテンツの再生指示を受信したことに基づいてコンテンツの再生を再開してもよい。
【０１３２】
一方、通信装置１０２の制御部２０２は、ステップＳ７０５でコンテンツリダイレクトを継続していないと判定すると、コンテンツリダイレクトの状態をソース機器である通信装置１０１に通知する（ステップＳ７０５）。本ステップは、ステップＳ７０３と同様に行われる。なお、本ステップでは、通信装置１０２はコンテンツの受信と再生を停止しているので、その旨を通信装置１０１に通知する。
【０１３３】
続いて通信装置１０２の制御部２０２は、通信装置１０１からコンテンツリダイレクトの再開指示が出されたか判定する（ステップＳ７０６）。通信装置１０２の制御部２０２は、ＲＴＳＰプロトコルを用いて通信装置１０１から再開指示を受信する。あるいは、通信装置１０２の制御部２０２は、ＲＴＳＰとは異なるプロトコルを用いて通信装置１０１から再開指示を受信してもよい。なお、通信装置１０２の制御部２０２は、通信装置１０１とのセッションの再確立後、所定の時間が経過するまでにコンテンツリダイレクトの再開指示を受信しないと、ステップＳ７０６でＮｏと判定する。あるいは、通信装置１０２の制御部２０２は、通信装置１０１からミラーリングの開始指示を受け付けた場合も、同様にステップＳ７０６でＮｏと判定する。通信装置１０２の制御部２０２は、通信装置１０１からコンテンツリダイレクトの再開指示を受けていないと判定すると（ステップＳ７０６のＮｏ）、ステップＳ７０８の処理を行う。一方、通信装置１０２の制御部２０２は、通信装置１０１からコンテンツリダイレクトの再開指示を受けたと判定すると（ステップＳ７０６のＹｅｓ）、ステップＳ７０７の処理を行う。
【０１３４】
通信装置１０２の制御部２０２は、コンテンツリダイレクトの再開処理を行う（ステップＳ７０７）。ここで、通信装置１０２の制御部２０２は、図４のステップＳ４０１で通信装置１０１とのセッションの切断を検知し、コンテンツの再生を停止した場合に、コンテンツを停止した際の時間情報を記憶部２０１に保持しておく。例えば、通信装置１０２がコンテンツを２分３０秒分再生したところでコンテンツの再生を停止した場合、通信装置１０２はコンテンツを２分３０秒まで再生したことを示す時間情報を記憶部２０１に保持しておく。あるいは、通信装置１０２が時間情報を保持しておくのではなく、通信装置１０１が保持しておくようにしてもよい。通信装置１０２はコンテンツリダイレクトを行っている間、通信装置１０１にコンテンツリダイレクトの状態を通知することができる。通信装置１０１は通信装置１０２とのセッションの切断を検知した際に、その直前に通信装置１０２から受信した通知から、通信装置１０２がどこまでコンテンツを再生したかの時間情報を取得し、保持してもよい。そして通信装置１０１はコンテンツリダイレクトの開始指示にその時間情報を含めて送信してもよい。通信装置１０２は受信したコンテンツリダイレクトの開始指示に含まれる時間情報に基づいて、通信装置１０１とのセッションが切断された際に、自装置がコンテンツをどこまで再生していたかを把握することができる。
【０１３５】
通信装置１０２の制御部２０２は、自装置が保持している時間情報から、通信装置１０１とのセッションが切断された際に、自装置がどこまでコンテンツを再生していたかという再生済み時間情報を取得することができる。あるいは、通信装置１０２の制御部２０２は通信装置１０１から送信された再開指示に含まれる時間情報から再生済み時間情報を取得してもよい。通信装置１０２の制御部２０２は、本ステップにおいて、クラウドサーバ１０４からのコンテンツの受信を再開し、かつ再生を停止したコンテンツを再生済み時間情報に基づいて続きから再生する。さらに通信装置１０２の制御部２０２は、ステップＳ７０４と同様に通信装置１０１からの再生制御情報の受信を再開する。通信装置１０２の制御部２０２は、ステップＳ７０７の処理を行うと、図３のステップＳ３５９の処理を行い、クラウドサーバ１０４からのコンテンツの受信と再生を引き続き行う。
【０１３６】
通信装置１０２の制御部２０２は、コンテンツリダイレクトの再開指示を受信しなかったと判定すると、セッションの再確立後、所定の時間が経過するまでに通信装置１０１からミラーリングの開始指示を受信したか判定する（ステップＳ７０８）。通信装置１０２の制御部２０２は、通信装置１０１とのセッションの再確立後、通信装置１０１からミラーリングの開始指示を受信したかに基づいて判定する。なお、通信装置１０２の制御部２０２は、ステップＳ７０６において、既にミラーリングの開始指示を受信した場合、本ステップはＹｅｓと判定する。通信装置１０２の制御部２０２はミラーリングの開始指示を受信しなかったと判定すると（ステップＳ７０８のＮｏ）、本フローチャートのフローを終了する。一方、ミラーリングの開始指示を受信したと判定すると（ステップＳ７０８のＹｅｓ）、通信装置１０２の制御部２０２はステップＳ７０９の処理を行う。
【０１３７】
通信装置１０２の制御部２０２は、ミラーリングの開始処理を行う（ステップＳ７０９）。具体的には、通信装置１０２の制御部２０２は、図３のステップＳ３５５の処理を行い、通信装置１０１から送信される画面・音声ストリーミングの受信処理を行う。通信装置１０２の制御部２０２は、ステップＳ７０９の処理を行うと、本フローチャートのフローを終了する。
【０１３８】
なお、通信装置１０２の制御部２０２は、ミラーリングを再開後、再度通信装置１０１とコンテンツリダイレクトを実施してもよい。
【０１３９】
図８は、通信装置１０１が通信装置１０２とのセッションを切断された後、通信装置１０１が記憶部２０１に記憶されたコンピュータプログラムを制御部２０２が読み出し、実行することで実現される処理を示すフローチャートである。本フローチャートは、通信装置１０１が図３のステップＳ３１４で実行する処理を示すフローチャートである。
【０１４０】
通信装置１０１の制御部２０２は、シンク機器である通信装置１０２とのセッションを再確立する（ステップＳ８０１）。通信装置１０１と通信装置１０２とのセッションが再確立される際、通信装置１０１は図３のステップＳ３０２〜ステップＳ３１１までの処理の少なくとも一つを行う。また、通信装置１０２も図３のステップＳ３５１〜ステップＳ３５７の内、通信装置１０１が行った処理と対応する処理を行う。通信装置１０１の制御部２０２は、通信装置１０２とのセッションを再確立すると、ステップＳ８０２の処理を行う。
【０１４１】
なお、通信装置１０１の制御部２０２は、通信装置１０２とのセッションが切断されてから所定の時間が経過するまでに通信装置１０２とのセッションを再確立できなかった場合、コンテンツリダイレクトを終了する。また、コンテンツリダイレクトを開始する際にミラーリングを一時停止していた場合、ミラーリングも停止する。なお、通信装置１０１の制御部２０２は、所定の時間が経過するまでではなく、通信装置１０２とのセッションの確立を所定の回数、試行してもセッションを再確立できなかった場合に、同様にコンテンツリダイレクトを終了するようにしてもよい。通信装置１０１の制御部２０２は、コンテンツリダイレクトを停止すると、本フローチャートのフローを終了する。
【０１４２】
通信装置１０１の制御部２０２は、通信装置１０２からコンテンツリダイレクトの状態を取得する（ステップＳ８０２）。具体的には、通信装置１０１の制御部２０２は、通信装置１０２が実行しているコンテンツリダイレクトにおけるコンテンツの再生に関する情報や、コンテンツの受信に関する状態などの情報を通信装置１０２から取得する。
【０１４３】
本ステップにおいて、通信装置１０１の制御部２０２は、通信装置１０２から送信されるコンテンツリダイレクトの状態に関する通知を待ち受ける。通信装置１０１の制御部２０２は、通信装置１０２とセッションを再確立してから所定の時間が経過するまでに、通信装置１０２からコンテンツリダイレクトの状態に関する通知を受信した場合は、ステップＳ８０２でＹｅｓと判定する。一方、通信装置１０１の制御部２０２は、通信装置１０２とのセッションを再確立してから所定の時間が経過するまでに、通信装置１０２からコンテンツリダイレクトの状態に関する通知を受信しなかった場合は、ステップＳ８０２でＮｏと判定する。
【０１４４】
あるいは、通信装置１０１の制御部２０２は、通信装置１０２に対してコンテンツリダイレクトの状態に関する通知を送信するように、要求メッセージを送信し、その応答メッセージとしてコンテンツリダイレクトの状態に関する通知を受信してもよい。通信装置１０１の制御部２０２は、通信装置１０２に要求メッセージを送信してから所定の時間が経過するまでに、通信装置１０２からコンテンツリダイレクトの状態に関する通知を受信した場合は、ステップＳ８０２でＹｅｓと判定する。一方、通信装置１０１の制御部２０２は、通信装置１０２とのセッションを再確立してから所定の時間が経過するまでに、通信装置１０２からコンテンツリダイレクトの状態に関する通知を受信しなかった場合は、ステップＳ８０２でＮｏと判定する。
【０１４５】
通信装置１０１の制御部２０２は、シンク機器である通信装置１０２からコンテンツリダイレクトの状態を取得した場合（ステップＳ８０２のＹｅｓ）、ステップＳ８０３の処理を行う。一方、通信装置１０１の制御部２０２は、シンク機器である通信装置１０２からコンテンツリダイレクトの状態を取得しなかった場合（ステップＳ８０２のＮｏ）、再度ステップＳ８０２の処理を行う。
【０１４６】
なお、通信装置１０１の制御部２０２は、通信装置１０２からコンテンツリダイレクトの状態を取得できず、所定の回数ステップＳ８０２の判定を行った場合、本フローチャートのフローを終了する。あるいは、通信装置１０１の制御部２０２は、通信装置１０２とセッションを再確立してから所定の時間が経過するまでに通信装置１０２からコンテンツリダイレクトの状態を取得できなかった場合、本フローチャートのフローを終了してもよい。あるいは、通信装置１０１の制御部２０２は、本フローチャートのフローを終了する代わりに、ステップＳ８０８の処理を行ってもよい。また、通信装置１０１の制御部２０２は、本フローチャートのフローを終了する際に、あるいはステップＳ８０８の処理を行う際に、通信装置１０２におけるコンテンツの再生を停止する停止メッセージを通信装置１０２に送信してもよい。
【０１４７】
通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクトを継続中であるか判定する（ステップＳ８０３）。本ステップの判定は、ステップＳ８０２で取得した通信装置１０２におけるコンテンツリダイレクトの状態に基づいて行われる。通信装置１０１の制御部２０２は、ステップＳ８０３で取得したコンテンツリダイレクトの状態が、セッションが切断される前に再生していたコンテンツを再生中であることを示している場合、本ステップでＹｅｓと判定する。一方、ステップＳ８０３で取得したコンテンツリダイレクトの状態が、セッションが切断される前に再生していたコンテンツの再生していないことを示している場合、本ステップでＮｏと判定する。なお、ステップＳ８０３で取得したコンテンツリダイレクトの状態が、通信装置１０２によるコンテンツの再生は停止しているが、コンテンツの受信は継続していることを示す場合、通信装置１０１の制御部２０２は、本ステップでＹｅｓと判定する。
【０１４８】
なお、通信装置１０１の制御部２０２は、セッションが切断される前に通信装置１０２が再生していたコンテンツの識別情報を含むメッセージを通信装置１０２に送信し、その応答として受信した応答メッセージに基づいて本ステップの判定を行ってもよい。具体的には、通信装置１０１の制御部２０２がコンテンツの識別情報を含むメッセージを送信すると、通信装置１０２はその応答として、識別情報が示すコンテンツの再生状態を含む応答メッセージを通信装置１０１に送信する。通信装置１０２は、コンテンツの再生状態として、ＲＴＳＰの状態であるＲＥＡＤＹ、ＰＬＡＹ、ＲＥＣＯＲＤといった状態を示す情報を応答メッセージに含めてもよい。通信装置１０１の制御部２０２は、受信した応答メッセージに基づいて本ステップの判定を行う。
【０１４９】
通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクトを継続中であると判定すると（ステップＳ８０３のＹｅｓ）、ステップＳ８０４の処理を行う。一方、通信装置１０２がコンテンツリダイレクトを継続中ではないと判定すると（ステップＳ８０３のＮｏ）、通信装置１０１の制御部２０２はステップＳ８０５の処理を行う。
【０１５０】
通信装置１０１の制御部２０２は、通信装置１０２で再生されているコンテンツの再生制御の再開処理を行う（ステップＳ８０４）。通信装置１０１の制御部２０２は、図３のステップＳ３０９からステップＳ３１１の内、通信装置１０２に再生制御情報に対する再生制御情報の送信を再開するために必要な処理を行う。なお、通信装置１０２とのセッションを再確立する際に、既に必要な処理を行っている場合、通信装置１０１の制御部２０２は本ステップをスキップしてもよい。通信装置１０１の制御部２０２は、ステップＳ８０４の処理を行うと、図３のステップＳ３１３の処理を行う。
【０１５１】
なお、ステップＳ８０２において取得したコンテンツリダイレクトの状態が、通信装置１０２がコンテンツの再生の停止と受信の継続を示す場合、通信装置１０１の制御部２０２は、ステップＳ８０４でコンテンツの再生指示を送信してもよい。
【０１５２】
通信装置１０１の制御部２０２は、通信装置１０２がコンテンツリダイレクトを継続中ではないと判定すると、コンテンツリダイレクトを再開するかを問い合わせる問合せ画面を表示する（ステップＳ８０５）。通信装置１０１の制御部２０２は、通信装置１０２とのコンテンツリダイレクトを再開するかユーザに問い合わせる問合せ画面を、出力部２０５を介して表示する。
【０１５３】
図９は、通信装置１０１の制御部２０２がステップＳ８０５で表示する問合せ画面の一例を示す図である。通信装置１０１の制御部２０２は、問合せ画面９０１にあるように、コンテンツの再生を再開するかユーザに問い合わせるようなメッセージを表示する。また、通信装置１０１の制御部２０２は、コンテンツの再生の再開の問合せに加えて、シンク機器である通信装置１０２とのセッションが再確立された旨をメッセージとして表示する。
【０１５４】
図８のフローチャートに戻る。通信装置１０１の制御部２０２は、通信装置１０２とのコンテンツリダイレクトを再開するか判定する（ステップＳ８０６）。通信装置１０１の制御部２０２は、ステップＳ８０５で表示した問合せ画面に対するユーザ操作に基づいて本ステップの判定を行う。通信装置１０１の制御部２０２は、ユーザがコンテンツリダイレクトを再開しないと選択した場合は本ステップにおいてＮｏと判定し、ユーザがコンテンツリダイレクトを再開すると選択した場合は本ステップにおいてＹｅｓと判定する。図９の問合せ画面９０１を例にすると、ユーザがコンテンツの再生を再開するとして、ＯＫを選択した場合、通信装置１０１の制御部２０２はステップＳ８０６でＹｅｓと判定する。一方、ユーザがコンテンツの再生を再開しないとして、Ｃａｎｃｅｌを選択した場合、通信装置１０１の制御部２０２はステップＳ８０６でＮｏと判定する。また、通信装置１０１の制御部２０２は、ステップＳ８０５で問合せ画面を表示してから所定の時間が経過するまでに、コンテンツリダイレクトの再開についてのユーザ操作を受け付けなかった場合、ステップＳ８０６でＮｏと判定してもよい。
【０１５５】
このように、ソース機器とシンク機器とのセッションの再確立後に、コンテンツリダイレクトを再開するかを問い合わせる問合せ画面を通信装置１０１が表示することで、ユーザはコンテンツの再生を再開するかを任意に選択することができる。
【０１５６】
なお、通信装置１０１の制御部２０２は、ステップＳ８０６の判定を、ユーザ操作に基づくのではなく、自動的に行ってもよい。
【０１５７】
通信装置１０１の制御部２０２は、ステップＳ８０６でＹｅｓと判定すると、ステップＳ８０７の処理を行う。一方、通信装置１０１の制御部２０２は、ステップＳ８０６でＮｏと判定すると、ステップＳ８０８の処理を行う。
【０１５８】
通信装置１０１の制御部２０２は、通信装置１０２にコンテンツリダイレクトを再開するための再開指示を送信する（ステップＳ８０７）。通信装置１０１の制御部２０２は、通信装置１０２にコンテンツの受信と再生を再開されるための再開指示を送信する。なお、通信装置１０１は、通信装置１０２とのセッションが切断された際に、通信装置１０２がコンテンツをどこまで再生したかを示す時間情報を記憶部２０１に記憶しておいてもよい。そして、通信装置１０１の制御部２０２は、本ステップで送信する再開指示に記憶部２０１で記憶している時間情報を含めて、通信装置１０２に再開指示を送信してもよい。この場合、通信装置１０２は受信した再開指示に含まれる時間情報に基づいて、通信装置１０１のセッションが切断された際に再生していた続きからコンテンツを再生することができる。通信装置１０１の制御部２０２は、ステップＳ８０７の処理を行うと、ステップＳ８０４の処理を行う。
【０１５９】
一方、ステップＳ８０６でコンテンツリダイレクトを再開しないと判定された場合、通信装置１０１の制御部２０２は、通信装置１０２にミラーリングの開始指示を送信する（ステップＳ８０８）。
【０１６０】
そして通信装置１０１の制御部２０２は、ミラーリングの開始処理を行う（ステップＳ８０９）。具体的には通信装置１０２の制御部２０２は、図３のステップＳ３０７の処理を行い、通信装置１０２に画面・音声ストリーミングを送信する送信処理を行う。通信装置１０１の制御部２０２は、本ステップの処理を行うと、本フローチャートのフローを終了する。
【０１６１】
なお、通信装置１０１の制御部２０２は、ステップＳ８０８の処理を行う前に、通信装置１０２とのミラーリングを開始するかユーザに問い合わせてもよい。ユーザが通信装置１０２とのミラーリングを開始すると選択した場合、通信装置１０１の制御部２０２はステップＳ８０８の処理を行う。一方、ユーザが通信装置１０２とのミラーリングを開始しないと選択した場合、通信装置１０１の制御部２０２は本フローチャートのフローを終了する。
【０１６２】
また、通信装置１０２の制御部２０２も、図７のステップＳ７０６でＮｏと判定された場合に、ユーザに通信装置１０１とのミラーリングを開始するか問い合わせてもよい。ユーザがミラーリングを開始すると選択し、かつステップＳ７０８でＹｅｓと判定した場合、通信装置１０２の制御部２０２はステップＳ７０９の処理を行う。一方、ユーザがミラーリングを開始しないと選択した場合、通信装置１０２の制御部２０２は本フローチャートのフローを終了する。あるいは、ユーザがミラーリングを開始しないと選択し、かつ通信装置１０１からミラーリングの開始指示を受信した場合、通信装置１０２の制御部２０２は、ミラーリングを開始しない旨を含む応答メッセージを通信装置１０２に送信する。応答メッセージを送信した通信装置１０２の制御部２０２は、本フローチャートのフローを終了する。
【０１６３】
あるいは、通信装置１０１の制御部２０２は、ステップＳ８０６でＮｏと判定された場合に、本フローチャートのフローを終了するようにしてもよい。また、通信装置１０２の制御部２０２も、図７のステップＳ７０６でＮｏと判定された場合に、本フローチャートのフローを終了するようにしてもよい。
【０１６４】
また、通信装置１０１の制御部２０２は、ステップＳ８０１でＹｅｓと判定された場合、ステップＳ８０２からステップＳ８０７の何れかのステップにおいて、通信装置１０２にミラーリングの開始指示を送信してもよい。この場合、通信装置１０１の制御部２０２は、通信装置１０２にミラーリングの開始指示を送信すると、ステップＳ８０９の処理を行う。
【０１６５】
以上、図７および図８において、通信装置１０１と通信装置１０２とがセッションを再確立した際に、夫々の通信装置が行う処理を示した。
【０１６６】
なお、本実施形態において、通信装置１０２の制御部２０２は、図４のステップＳ４０８でコンテンツリダイレクトを終了する際に、通信装置１０１とのセッションが切断された際に再生していたコンテンツの再生を停止した。しかし、通信装置１０２が複数のコンテンツを連続で再生するように設定されている場合、通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断された際に再生していたコンテンツの後のコンテンツの再生を停止してもよい。例えば通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断された際に再生していたコンテンツは最後まで再生し、その次のコンテンツの再生を行わず、コンテンツリダイレクトを停止してもよい。また、通信装置１０２の制御部２０２は、複数のコンテンツを連続で再生するように設定されている場合、再生するコンテンツが、ユーザによって再生を指示されたコンテンツであるか否かに基づいて、コンテンツの再生を継続するかを判定してもよい。通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知した際に再生していたコンテンツの後に再生するコンテンツが、ユーザによって再生を指示されたコンテンツである場合、コンテンツの再生を継続してもよい。一方、通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知した際に再生していたコンテンツの後に再生するコンテンツが、ユーザによって再生を指示されたコンテンツではない場合、コンテンツの再生を行わなくてもよい。ユーザによって再生を指示されたコンテンツではないコンテンツとは、例えばコンテンツを提供するサービスによって自動的に再生するように設定されたコンテンツのことである。また、通信装置１０２の制御部２０２は、再生するコンテンツとして、ユーザによって再生を指示されたコンテンツと、そうではないコンテンツとの両方が含まれている場合、ユーザによって再生を指示されたコンテンツのみ再生してもよい。
【０１６７】
本実施形態において、通信装置１０２は通信装置１０１とのセッションが切断されたことを検知した際に、コンテンツリダイレクトを継続するか否かを判定するが、当該判定をユーザによって予め行われた設定に基づいて行ってもよい。通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断された場合にコンテンツリダイレクトを継続するか否かを予め設定しておいてもよい。具体的には通信装置１０２の制御部２０２は、セッションが切断された場合にコンテンツリダイレクトを継続するか否かの設定をユーザから受け付けておき、セッションが切断された際は受け付けておいた設定に基づいてコンテンツリダイレクトの継続を判定する。なお、通信装置１０１と通信装置１０２とのセッションが切断された場合に、コンテンツリダイレクトを継続するか否かの設定を、ユーザは通信装置１０１を用いて設定してもよい。この場合、通信装置１０１の制御部２０２は、図３のステップＳ３１１において通信装置１０２にコンテンツの関連情報を通知する際に、併せて本設定について通知する。あるいは通信装置１０１の制御部２０２は、図３のステップＳ３０９で通信装置１０２にコンテンツリダイレクト機能の問い合わせをする際に、本設定について通知してもよい。あるいは、通信装置１０１の制御部２０２は、図３のステップＳ３５９において通信装置１０２がコンテンツの受信および再生を開始してから、本設定について通知してもよい。
【０１６８】
なお、通信装置１０１と通信装置１０２とのセッションが切断された際にコンテンツリダイレクトを継続するか否かについて、ユーザはコンテンツごとに設定してもよいし、コンテンツの種類ごとに設定してもよい。あるいはユーザはコンテンツリダイレクトを行う際に利用するアプリケーションプログラムごとに設定してもよいし、コンテンツを提供するサービスごとに設定してもよい。
【０１６９】
また、通信装置１０１と通信装置１０２とのセッションが切断された際に、コンテンツリダイレクトを継続するか否かは、通信装置１０２にプリセットされていてもよい。あるいは通信装置１０１にプリセットされていてもよい。あるいは通信装置１０２がコンテンツリダイレクトを行う際に利用するアプリケーションプログラムによって決められてもよい。あるいは、通信装置１０１がコンテンツリダイレクトを行う際に利用するアプリケーションプログラムによって決められてもよい。
【０１７０】
なお、通信装置１０２は、通信装置１０１とのセッションが切断された際にコンテンツリダイレクトを継続するか否かが事前に設定されている場合、図４のステップＳ４０１でＹｅｓと判定した際に、ステップＳ４０２をスキップしてもよい。この場合、通信装置１０２の制御部２０２は、ステップＳ４０１でＹｅｓと判定されると、ステップＳ４０４の処理を行う。ステップＳ４０４において、通信装置１０２の制御部２０２は、コンテンツリダイレクトを継続すると設定されている場合はＹｅｓと判定し、コンテンツリダイレクトを継続しないと設定されている場合はＮｏと判定する。この場合、通信装置１０１の制御部２０２は、図６のステップＳ６０２とステップＳ６０３をスキップしてもよい。
【０１７１】
本実施形態では、通信装置１０２と通信装置１０２とのセッションが切断された場合に、通信装置１０２は自装置によるコンテンツの再生制御が可能か、などに基づいて、コンテンツリダイレクトを継続するか否かを判定した。しかし、これに限らず、通信装置１０２の制御部２０２は、通信装置１０１とのセッションが切断されたことに基づいて、コンテンツリダイレクトを終了してもよい。通信装置１０２の制御部２０２は、図４のステップＳ４０１においてＹｅｓと判定されると、ステップＳ４０８およびステップＳ４０９の処理を行い、図４のフローチャートのフローを終了する。そして、図７のステップＳ７０１の処理を行うと、通信装置１０２の制御部２０２は、ステップＳ７０２をスキップし、ステップＳ７０５の処理を行う。あるいは通信装置１０２の制御部２０２は、ステップＳ７０５をスキップし、ステップＳ７０６の処理を行ってもよい。
【０１７２】
通信装置１０２が通信装置１０１とのセッションの切断を検知したことに基づいて、コンテンツリダイレクトを終了する場合、通信装置１０１の制御部２０２は、図６のステップＳ６０１でＹｅｓと判定した場合にステップＳ６０２をスキップする。この場合に通信装置１０１の制御部２０２は、ステップＳ６０３もスキップする。通信装置１０１の制御部２０２は、図８のステップＳ８０２でＹｅｓと判定すると、ステップＳ８０３をスキップし、ステップＳ８０５の処理を行う。通信装置１０２が図７のステップＳ７０５をスキップする場合、通信装置１０１の制御部２０２は、ステップＳ８０１の処理を行った後、ステップＳ８０２をスキップし、ステップＳ８０５の処理を行う。
【０１７３】
なお、通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知し、コンテンツリダイレクトを終了すると、図３のフローチャートのフローを終了してもよい。この場合、通信装置１０１の制御部２０２も同様に、通信装置１０２とのセッションの切断を検知すると、図３のフローチャートのフローを終了する。
【０１７４】
なお、図４、図７および図６、図８において、通信装置１０１と通信装置１０２とのセッションの切断が、正常な終了処理による切断ではない場合に、通信装置１０１と通信装置１０２とが夫々行う処理について示した。正常な切断処理とは、具体的には、通信装置１０１から通信装置１０２にコンテンツリダイレクトの終了メッセージが出されたことにより行われるセッションの切断処理のことを指す。通信装置１０２は、通信装置１０１からコンテンツリダイレクトの終了メッセージを受信し、その後に通信装置１０１とのセッションの切断を検知した場合、正常な終了処理による切断であると判定する。通信装置１０１は、通信装置１０２にコンテンツリダイレクトの終了メッセージを送信し、その後に通信装置１０２とのセッションの切断を検知した場合、正常な終了処理であると判定する。
【０１７５】
また、通信装置１０２は自装置の入力部２０４を介してユーザからコンテンツリダイレクトの終了指示を受け付け、通信装置１０１にコンテンツリダイレクトの終了指示を送信してもよい。この場合、通信装置１０２は、通信装置１０１にコンテンツリダイレクトの終了指示を送信し、その後に通信装置１０１とのセッションの切断を検知した場合、正常な終了処理であると判定する。あるいは通信装置１０２は、ユーザからコンテンツリダイレクトの終了指示を受け付け、その後に通信装置１０１とのセッションの切断を検知した場合、正常な終了処理であると判定してもよい。また、通信装置１０１は、通信装置１０２からコンテンツリダイレクトの終了指示を受信し、その後に通信装置１０２とのセッションの切断を検知した場合、正常な終了処理であると判定する。
【０１７６】
なお、通信装置１０２の制御部２０２は、コンテンツリダイレクトの終了指示を、通信装置１０１から受信あるいはユーザから受け付けると、自装置でコンテンツの再生が行われている場合は、コンテンツの再生を停止する。そして通信装置１０２の制御部２０２は、通信装置１０１とのセッションを切断する。なお、通信装置１０２がコンテンツリダイレクトでコンテンツを再生するためにアプリケーションプログラムを利用している場合、通信装置１０２の制御部２０２は、通信装置１０１とのセッションを切断してからアプリケーションプログラムを終了してもよい。あるいは通信装置１０２の制御部２０２は、コンテンツの再生を停止してからアプリケーションプログラムを停止してもよい。
【０１７７】
通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知し、正常な処理による切断ではないと判定した場合、図４および図７の処理を行う。同様に通信装置１０１の制御部２０２も、通信装置１０２とのセッションの切断を検知し、正常な処理による切断ではないと判定した場合、図６および図８の処理を行う。
【０１７８】
一方、通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知し、正常な処理による切断であると判定した場合、図３のフローチャートのフローを終了する。なお、通信装置１０２が通信装置１０１から再生制御情報を受信するためのセッションと、通信装置１０１とミラーリングを行うためのセッションとが異なるセッションであるとする。この場合、通信装置１０２の制御部２０２は、通信装置１０１から再生制御情報を受信するためのセッションの切断を検知し、正常な処理による切断であると判定した場合、図３のステップＳ３５５の処理を行い、通信装置１０１とのミラーリングを行ってもよい。なお、通信装置１０２の制御部２０２は、通信装置１０１とのセッションの切断を検知し、正常な処理による切断であると判定した場合、出力部２０５を介してユーザにコンテンツリダイレクトが終了したことを通知しなくてもよい。
【０１７９】
また、本実施形態では、通信装置１０２および通信装置１０１は、夫々相手装置のセッションが切断されたかを判定した。しかしこれに限らず、通信装置１０２および通信装置１０１は、相手装置との無線通信が切断されたかを判定してもよい。この場合、通信装置１０２および通信装置１０１は、相手装置と無線通信の再確立を行う。
【０１８０】
通信装置１０２の制御部２０２は、ｐｉｎｇを行い、通信装置１０１との無線通信が有効かを確認することで、通信装置１０１との無線通信が切断されたかを判定する。具体的には、通信装置１０２の制御部２０２は、通信装置１０１にＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）のｅｃｈｏ要求を送信する。通信装置１０２の制御部２０２は、ｅｃｈｏ要求を送信してから所定の時間が経過するまでに通信装置１０１からｅｃｈｏ要求に対する応答としてｅｃｈｏ応答を受信したか判定する。通信装置１０２の制御部２０２は、所定の時間が経過するまでに通信装置１０１からｅｃｈｏ応答を受信した場合、通信装置１０１との無線通信が有効であると判定する。一方、通信装置１０２の制御部２０２は、所定の時間が経過するまでに通信装置１０１からｅｃｈｏ応答を受信しなかった場合、通信装置１０１との無線通信が切断されていると判定する。なお、通信装置１０２の制御部２０２は、一回のｐｉｎｇで所定の回数ｅｃｈｏ要求の送信を行う。通信装置１０２の制御部２０２は、複数送信したｅｃｈｏ要求の内、少なくとも一つに対するｅｃｈｏ応答を通信装置１０１から受信した場合、通信装置１０１との無線通信が有効であると判定してもよい。あるいは、複数送信したｅｃｈｏ要求に対して通信装置１０１からｅｃｈｏ応答が送信された割合が、所定の割合以上の場合、通信装置１０１との無線通信が有効であると判定してもよい。この場合、通信装置１０２の制御部２０２は、複数送信したｅｃｈｏ要求に対して通信装置１０１からｅｃｈｏ応答が送信された割合が、所定の割合より小さい場合、通信装置１０１との無線通信が切断されていると判定する。
【０１８１】
あるいは通信装置１０２の制御部２０２は、ＩＥＥＥ８０２．１１シリーズ規格に準拠したＢｅａｃｏｎを用いて通信装置１０１との無線通信が切断されたかを判定してもよい。通信装置１０１と通信装置１０２とがＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠した無線通信を行っており、かつ通信装置１０１がＧＯである場合、通信装置１０１は一定の時間毎にＢｅａｃｏｎを送信する。通信装置１０２の制御部２０２は、通信装置１０１から送信されたＢｅａｃｏｎを受信してから所定の時間が経過するまでに、通信装置１０１から新たなＢｅａｃｏｎを受信しなかった場合、通信装置１０１との無線通信が切断されたと判定する。一方、通信装置１０２の制御部２０２は、通信装置１０１から送信されたＢｅａｃｏｎを受信してから所定の時間が経過するまでに、通信装置１０１から新たなＢｅａｃｏｎを受信した場合、通信装置１０１との無線通信は切断されていないと判定する。なお、通信装置１０１の制御部２０２も、通信装置１０２がＧＯである場合に、同様の方法で通信装置１０２との無線通信が切断されたかを判定してもよい。
【０１８２】
通信装置１０２が、ＡＰ１０３が構築したインフラストラクチャネットワークを介して通信装置１０１と無線通信を行っている場合を想定する。この場合、通信装置１０２の制御部２０２は、ＡＰ１０３と通信装置１０２との無線通信が切断された場合に、通信装置１０１との無線通信が切断されたと判定してもよい。具体的には、通信装置１０２の制御部２０２は、ＡＰ１０３から一定の時間毎に送信されるＢｅａｃｏｎを受信してから所定の時間が経過するまでに、ＡＰ１０３から新たなＢｅａｃｏｎを受信しなかった場合、ＡＰ１０３との無線通信が切断されたと判定する。そして通信装置１０２の制御部２０２は、ＡＰ１０３との無線通信が切断されたことに基づいて、ＡＰ１０３を介した通信装置１０１との無線通信も切断されたと判定する。なお、通信装置１０１の制御部２０２も、同様の方法で通信装置１０２との無線通信が切断されたかを判定してもよい。
【０１８３】
あるいは、通信装置１０２の制御部２０２は、ＩＥＥＥ８０２．１１シリーズ規格に準拠したＰｒｏｂｅ  Ｒｅｑｕｅｓｔ／Ｒｅｓｐｏｎｓｅを用いて、通信装置１０１との無線通信が切断されたかを判定してもよい。通信装置１０１とＷｉ−Ｆｉ  Ｄｉｒｅｃｔ規格に準拠した無線通信を行っている場合、通信装置１０２の制御部２０２は、通信装置１０１にＰｒｏｂｅ  Ｒｅｑｕｅｓｔを送信することで、通信装置１０１との無線通信が切断されているかを判定することができる。具体的には、通信装置１０２の制御部２０２は、通信装置１０１にＰｒｏｂｅ  Ｒｅｑｕｅｓｔを送信し、その応答としてＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅを受信したか否かに基づいて、通信装置１０１との無線通信が切断されたか否かを判定する。通信装置１０２の制御部２０２は、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔを送信してから所定の時間が経過するまでに、通信装置１０１からＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅを受信した場合は、通信装置１０１との無線通信は切断されていないと判定する。一方、通信装置１０２の制御部２０２は、Ｐｒｏｂｅ  Ｒｅｑｕｅｓｔを送信してから所定の時間が経過するまでに通信装置１０１からＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅを受信しなかった場合は、通信装置１０１との無線通信が切断されたと判定する。通信装置１０１の制御部２０２も、同様に通信装置１０２にＰｒｏｂｅ  Ｒｅｑｕｅｓｔを送信することで、通信装置１０２との無線通信が札段されているかを判定してもよい。
【０１８４】
なお、通信装置１０２が、ＡＰ１０３が構築したインフラストラクチャネットワークを介して通信装置１０１と無線通信を行っている場合を想定する。この場合、通信装置１０２の制御部２０２は、ＡＰ１０３と通信装置１０２との無線通信が切断された場合に、通信装置１０１との無線通信が切断されたと判定してもよい。具体的には、通信装置１０２の制御部２０２は、ＡＰ１０３にＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅを送信してから所定の時間が経過するまでに、ＡＰ１０３からＰｒｏｂｅ  Ｒｅｓｐｏｎｓｅを受信しなかった場合、ＡＰ１０３との無線通信が切断されたと判定する。そして通信装置１０２の制御部２０２は、ＡＰ１０３との無線通信が切断されたことに基づいて、ＡＰ１０３を介した通信装置１０１との無線通信も切断されたと判定する。なお、通信装置１０１の制御部２０２も、同様の方法で通信装置１０２との無線通信が切断されたかを判定してもよい。
【０１８５】
このように、通信装置１０２と通信装置１０１とは、相手装置との通信路が切断されたかを判定する。通信路とは、セッションと無線通信との少なくとも一方を指す。
【０１８６】
なお、通信装置１０２は出力部２０５としてコンテンツを表示するためのモニタ画面を有していてもよいし、あるいは表示部を有する他の装置にコンテンツを表示させるための信号を出力する信号出力手段を有していてもよい。通信装置１０２がコンテンツを他の装置に表示させる場合、通信装置１０２の制御部２０２はコンテンツの再生として、取得したコンテンツの復号処理を行う。そして通信装置１０２の制御部２０２は、出力部２０５を介して復号したコンテンツを表示させるための信号を他の装置に出力することで、他の装置にコンテンツを表示させるように制御する。
【０１８７】
また、通信装置１０２が他の装置にコンテンツを表示させるように制御する場合、通信装置１０２の制御部２０２は、他の装置に対して行われたユーザ操作に基づいてコンテンツの再生を制御してもよい。
【０１８８】
なお、図３、図４、図６、図７、図８に示した通信装置１０１や通信装置１０２のフローチャートの少なくとも一部または全部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからＦＰＧＡ上に専用回路を生成し、これを利用すればよい。ＦＰＧＡとは、Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略である。また、ＦＰＧＡと同様にしてＧａｔｅ  Ａｒｒａｙ回路を形成し、ハードウェアとして実現するようにしてもよい。また、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により実現するようにしてもよい。
【０１８９】
また、図３、図４、図６、図７、図８に示したフローチャートの各ステップを不図示の複数のＣＰＵもしくは装置で分散して行うようにしてもよい。複数の装置で分散して行う場合、ソース機器についてはソースシステム、シンク機器についてはシンクシステムとして動作する。
【０１９０】
以上、実施形態を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体（記憶媒体）などとしての実施態様をとることが可能である。具体的には、複数の機器（例えば、ホストコンピュータ、インタフェース機器、撮像装置、ｗｅｂアプリケーションなど）から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【０１９１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１９２】
２０１  記憶部
２０２  制御部
２０３  機能部
２０４  入力部
２０５  出力部
２０６  通信部
２０７  アンテナ
【図１】
2019169870.tif 000003
【図２】
2019169870.tif 000004
【図３】
2019169870.tif 000005
【図４】
2019169870.tif 000006
【図５】
2019169870.tif 000007
【図６】
2019169870.tif 000008
【図７】
2019169870.tif 000009
【図８】
2019169870.tif 000010
【図９】
2019169870.tif 000011