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