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