JP2019114989A - 通信装置、制御方法、およびプログラム - Google Patents

通信装置、制御方法、およびプログラム Download PDF

Info

Publication number
JP2019114989A
JP2019114989A JP2017248477A JP2017248477A JP2019114989A JP 2019114989 A JP2019114989 A JP 2019114989A JP 2017248477 A JP2017248477 A JP 2017248477A JP 2017248477 A JP2017248477 A JP 2017248477A JP 2019114989 A JP2019114989 A JP 2019114989A
Authority
JP
Japan
Prior art keywords
communication
communication device
search
source device
mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017248477A
Other languages
English (en)
Inventor
裕彦 猪膝
Hirohiko Inohiza
裕彦 猪膝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017248477A priority Critical patent/JP2019114989A/ja
Priority to KR1020180161533A priority patent/KR102439933B1/ko
Priority to US16/224,294 priority patent/US10912013B2/en
Publication of JP2019114989A publication Critical patent/JP2019114989A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/08Access restriction or access information delivery, e.g. discovery data delivery
    • H04W48/14Access restriction or access information delivery, e.g. discovery data delivery using user query or user detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/08Testing, supervising or monitoring using real traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Abstract

【課題】 ユーザによって選択された他の通信装置が複数の探索方法で検出された通信装置であることに応じて、通信装置が他の通信装置との通信方法の選択に関する処理を行うことで、通信装置の処理負荷を軽減することを目的とする。【解決手段】 ユーザが選択した他の通信装置が、無線ネットワークを構築する構築装置を介する探索方法と、構築装置を介さない探索方法との両方の探索方法で重複して検出された通信装置であることに応じて、通信装置が該他の通信装置と構築装置を介して通信するか、あるいは直接無線通信するか選択する。あるいは該他の通信装置が異なる探索方法で重複して検出された通信装置であることに応じて、通信装置が該他の通信装置との通信の状態などの基づいた通知を行う。【選択図】 図3

Description

本発明は、通信方法の選択に関する。
近年、Wi−Fi AllianceによってWi−Fi Miracast R2(Release2)規格が策定された。Wi−Fi Miracast R2規格では、送信装置が表示している画面や再生している音声の情報として、画像データや音声データを受信装置へ伝送することで、表示している画面や再生している音声を送信装置と受信装置とで共有することができる。
Wi−Fi Miracast R2規格では、送信装置および受信装置は、Wi−Fi Direct規格(Wi−Fi Peer−to−Peer仕様)に準拠して対向機を探索し、無線通信を確立する。また、Wi−Fi Miracast R2規格では、アクセスポイント(AP)経由で対向機を探索し、無線通信を確立するインフラストラクチャ機能が規定された。
特許文献1には、通信装置がWi−Fi Direct規格に準拠した探索と、インフラストラクチャ機能による探索とを行い、同一の対向機を検出することが開示されている。
特開2016−54407号公報
Wi−Fi Direct規格に準拠した探索と、インフラストラクチャ機能による探索とで同一の対向機を検出した場合、通信装置は検出された対向機と何れの通信方法でも通信することができる。そのため、特許文献1には、異なる探索方法で同一の対向機を検出した場合、どちらの通信方法で通信するか判定し、判定結果に基づいて探索結果の表示を行う通信装置が開示されている。また、ユーザは表示された探索結果から通信を行う対向機を選択することが開示されている。しかし、このような通信装置は、ユーザが選択した対向機以外の対向機についても通信方法の判定を行うため、必要以上に処理負荷がかかってしまう。
上記を鑑み、本発明は、ユーザによって選択された他の通信装置が複数の探索方法で検出された通信装置であることに応じて、通信装置が他の通信装置との通信方法の選択に関する処理を行うことで、通信装置の処理負荷を軽減することを目的とする。
上記課題を解決するため、本発明の通信装置は、他の通信装置と直接無線通信する第一の通信手段と、無線ネットワークを構築する構築装置を介して他の通信装置と通信する第二の通信手段と、前記第一の通信手段により通信する他の通信装置を、前記構築装置を介さずに探索する第一の探索手段と、前記第二の通信手段により通信する他の通信装置を、前記構築装置を介して探索する第二の探索手段と、前記第一の探索手段による探索と前記第二の探索手段による探索との少なくとも一方で検出された他の通信装置の内、前記第一の通信手段あるいは前記第二の通信手段により通信する他の通信装置を選択するユーザ操作を受け付ける第一の受付手段と、前記ユーザ操作により選択された他の通信装置が前記第一の探索手段による探索と前記第二の探索手段による探索とで重複して検出された他の通信装置であることに応じて、該他の通信装置と前記第一の通信手段で通信するか、あるいは前記第二の通信手段で通信するかを、該他の通信装置との通信の状態と、前記通信装置に関する情報と、該他の通信装置に関する情報との少なくとも一つに基づいて選択する選択手段と、を有する。
また、本発明の他の側面の通信装置は、他の通信装置と直接無線通信する第一の通信手段と、無線ネットワークを構築する構築装置を介して他の通信装置と通信する第二の通信手段と、前記第一の通信手段により通信する他の通信装置を、前記構築装置を介さずに探索する第一の探索手段と、前記第二の通信手段により通信する他の通信装置を、前記構築装置を介して探索する第二の探索手段と、前記第一の探索手段による探索と前記第二の探索手段による探索との少なくとも一方で検出された他の通信装置の内、前記第一の通信手段あるいは前記第二の通信手段により通信する他の通信装置を選択する第一のユーザ操作を受け付ける第一の受付手段と、前記第一のユーザ操作により選択された他の通信装置と前記第一の通信手段あるいは前記第二の通信手段の何れで通信するかをユーザに選択させる場合、該他の通信装置が前記第一の探索手段による探索と前記第二の探索手段による探索とで重複して検出された他の通信装置であることに応じて、該他の通信装置との通信の状態と、前記通信装置に関する情報と、該他の通信装置に関する情報との少なくとも一つに基づいた通知を行う通知手段と、を有する。
本発明によれば、ユーザによって選択された他の通信装置が複数の探索方法で検出された通信装置であることに応じて、通信装置が他の通信装置との通信方法の選択に関する処理を行うことで、通信装置の処理負荷を軽減することができる。
ソース機器101が参加するネットワークのネットワーク構成を示す図である。 ソース機器101のハードウェア構成を示す図である。 ソース機器101がシンク機器102を探索し、ミラーリングを行う際に実行する処理を示すフローチャートである。 ソース機器101が通信品質に基づいて通信モードを選択する際に実行する処理を示すフローチャートである。 ソース機器101におけるシンク機器102の探索結果の表示画面の一例を示す図である。 ソース機器101が検出したシンク機器102とP2Pモードでミラーリングを行う際に行われる処理を示すシーケンス図である。 ソース機器101が検出したシンク機器102とインフラモードでミラーリングを行う際に行われる処理を示すシーケンス図である。 ソース機器101がP2Pモードによる探索とインフラモードによる探索とを同時に行う場合に、インフラモードでミラーリングを行う際に行われる処理を示すシーケンス図である。 ソース機器101がインフラモードを使用する他の通信アプリケーションを実行しているかということに基づいて通信モードを選択する際に実行する処理を示すフローチャートである。 ソース機器101が参加するネットワークのネットワーク構成を示す別の図である。 ソース機器101がコンテンツリダイレクトの実行可否に基づいて通信モードを選択する際に行われる処理を示すフローチャートである。 ソース機器101が通信可能な周波数帯域に基づいて通信モードを選択する際に実行する処理を示すフローチャートである。 ソース機器101が通信可能な周波数帯域に基づいて通信モードを選択する際に実行する処理を示す別のフローチャートである。 ソース機器101がシンク機器102を探索し、ミラーリングを行う際に実行する処理を示す別のフローチャートである。 ソース機器101がシンク機器102を探索した結果として表示する表示画面の別の一例を示す図である。
以下、添付の図面を参照して実施形態を詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は以下の構成に限定されるものではない。
<実施形態1>
図1に、本実施例に係るソース機器101が参加するネットワークのネットワーク構成を示す。図1の各装置は、IEEE802.11シリーズ規格に準拠した無線通信方式で通信を行う。IEEEとは、Institute of Electrical and Electronics Engineersの略である。
ソース機器101は、シンク機器102とIEEE802.11シリーズ規格に準拠した無線ネットワークであるインフラストラクチャネットワーク上で、AP(アクセスポイント)103を介して無線通信を行う。これをインフラモードと呼ぶ。またソース機器101は、シンク機器102とWi−Fi Direct規格に準拠した無線通信も行うことができる。これをP2P(Peer to Peer)モードと呼ぶ。ソース機器101とシンク機器102とは、AP103を介さず直接通信する。
なお、各装置はIEEE802.11シリーズ規格に準拠した無線通信に加えて、Bluetooth(登録商標)、NFC、UWB、ZigBee(登録商標)、MBOAなどの他の無線通信方式に準拠した無線通信も利用してもよい。なお、UWBはUltra Wide Bandの略であり、MBOAはMulti Band OFDM Allianceの略である。また、NFCはNear Field Communicationの略である。UWBには、ワイヤレスUSB、ワイヤレス1394、WiNETなどが含まれる。また、有線LANなどの有線通信方式に準拠した通信方式も利用してよい。
本実施形態のソース機器101(送信装置)はWi−Fi Miracast R2(Release2)規格に準拠し、シンク機器102(受信装置)と表示している画面や再生している音声を共有する。具体的には、送信装置が表示している画面や再生している音声の情報として画像データや音声データを、ネットワークを介して受信装置へ伝送することで、表示している画面や再生している音声を送信装置と受信装置とで共有する。これを、ミラーリングという。ソース機器101とシンク機器102とがミラーリングを行う場合、ソース機器101が表示している画面や再生している音声が、ソース機器101とシンク機器102とで共有される。
ソース機器101の具体的な例としては、タブレット、スマートフォン、PC、携帯電話、カメラ、ビデオカメラ等の画像入力装置が挙げられるが、後述のハードウェア構成及びモジュール構成を満たすものであれば、これらに限定されない。ソース機器101は、自装置が表示している画面あるいは再生している音声の少なくとも一方を他の通信装置に送信することができる通信装置であればよい。
また、シンク機器102の具体的な例としては、タブレット、スマートフォン、PC、携帯電話、テレビ、テレビ用アダプタ、セットトップボックス、ヘッドマウントディスプレイなどが挙げられる。また他にシンク機器102の具体的な例として、プロジェクター、ディスプレイ、カーナビゲーション装置などが挙げられるが、後述のハードウェア構成及びモジュール構成を満たすものであれば、これらに限定されない。シンク機器102は、他の通信装置が表示している画面あるいは再生している音声の少なくとも一方を受信し、再生することができる通信装置であればよい。
ソース機器101は、Wi−Fi Miracast R2規格に準拠しているので、Wi−Fi Direct規格に準拠したネットワークを介したミラーリングに加え、インフラストラクチャネットワークを介したミラーリングを行うことができる。また、シンク機器102も同様である。
ソース機器101とシンク機器102とが、Wi−Fi Direct規格に準拠したネットワークを介したミラーリング(P2Pモードでのミラーリング)を行う場合を説明する。Wi−Fi Direct規格に基づいたミラーリングでは、ソース機器101は表示している画面や再生している音声の情報として、画像データや音声データのストリームを、ネットワークを介してシンク機器102へ直接伝送(ストリーミング)する。なお、画像データはソース機器101が表示している画面を符号化したものであり、音声データはソース機器101が再生している音声を符号化したものである。そして、シンク機器102は、画像データや音声データのストリームを受信し、ソース機器101と同期して再生する。つまり、ミラーリングを行うソース機器101とシンク機器102とは、表示している画面や再生している音声を共有する。
また、ソース機器101とシンク機器102とが、インフラストラクチャネットワークを介してミラーリング(インフラモードでのミラーリング)を行う場合を説明する。インフラストラクチャネットワークを介したミラーリングでは、ソース機器101は画像データや音声データのストリームを、AP103を介してシンク機器102に伝送する。シンク機器102は、AP103を介して画像データや音声データのストリームを受信し、ソース機器101と同期して再生する。
また、ソース機器101とシンク機器102とはミラーリングに加えて、あるいは代えて、Wi−Fi Direct規格に準拠したネットワーク、あるいはインフラストラクチャネットワークを介したコンテンツリダイレクトを行ってもよい。コンテンツリダイレクトでは、ソース機器101はシンク機器102に、ソース機器101以外の外部装置からデータを取得させ、シンク機器102に当該データを再生させる。このとき、ソース機器101は、シンク機器102にデータを外部装置から取得させるために必要な情報を送信する。シンク機器102が取得するデータとは、例えばコンテンツのことであり、画像データ、文書データ、音声データ、映像データの何れか一つを含む。他に、これらのデータを再生するためのソフトウェアデータや、GUIデータ、メタデータの少なくとも何れか一つを含んでいてもよい。
ソース機器101がシンク機器102に送信する情報とは、外部装置上にあるコンテンツの関連情報である。コンテンツの関連情報は、例えば、外部装置上にあるコンテンツを識別するための識別子や、サービス名、コンテンツの所在情報(URI、URL)、再生開始時間(オフセット)などの情報である。なお、受信するコンテンツの関連情報は、これらの情報の一部であってもよい。コンテンツの識別子とは、コンテンツを一意に決定するための識別子のことである。また、URIはUniform Resource Identifierの、URLはUniform Resource Locatorの夫々、略である。
また、ソース機器101とシンク機器102とはミラーリングに加えて、あるいは代えて、Wi−Fi Direct規格に準拠したネットワーク、あるいはインフラストラクチャネットワークを介したダイレクトストリーミングを行ってもよい。ダイレクトストリーミングでは、ソース機器101はシンク機器102に、ソース機器101が記憶しているデータを送信し、シンク機器102は当該データを受信し、再生する。この場合ソース機器101は当該データを復号および再符号化することなく、そのままの符号化方式でシンク機器102に送信することができる。ここで、シンク機器102が受信するデータとは、例えばコンテンツのことである。
なお、図1ではソース機器101とシンク機器102がミラーリングするための通信方式として、Wi−Fi Miracast R2規格を用いるものとした。しかしWi−Fi Miracast R2規格に限らず、WiDiやApple AirPlayといった他の通信方式を用いてもよい。なお、WiDiはIntel Wireless Displayの略である。具体的には、上述のミラーリング、コンテンツリダイレクト、あるいはダイレクトストリーミングの少なくとも何れか一つに相当する無線通信が行える通信方式であればよい。また、Wi−Fi Miracast R2規格では、ソース機器101はWi−Fi Direct規格に準拠したネットワークあるいはインフラストラクチャネットワークを介してミラーリングを行うが、これに限らずASPを用いることも可能である。なお、ASPはApplication Service Platformの略である。
図2に、ソース機器101のハードウェア構成を示す。
ソース機器101は、記憶部201、制御部202、機能部203、入力部204、出力部205、通信部206、およびアンテナ207を備える。
記憶部201はROMやRAM等の1以上のメモリにより構成され、後述する各種動作を行うためのコンピュータプログラムや、無線通信のための通信パラメータ等の各種情報を記憶する。ROMはRead Only Memoryの、RAMはRandom Access Memoryの夫々略である。なお、記憶部201として、ROM、RAM等のメモリの他に、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、DVDなどの記憶媒体を用いてもよい。また、記憶部201が複数のメモリ等を備えていてもよい。
制御部202はCPUやMPU等の1以上のプロセッサにより構成され、記憶部201に記憶されたコンピュータプログラムを実行することによりソース機器101全体を制御する。CPUはCentral Processing Unitの、MPUはMicro Processing Unitの略であり、コンピュータとして機能する。なお、制御部202は、記憶部201に記憶されたプログラムとOS(Operating System)との協働によりソース機器101全体を制御するようにしてもよい。また、制御部202がマルチコア等の複数のプロセッサを備え、複数のプロセッサによりソース機器101全体を制御するようにしてもよい。
また、制御部202は記憶部201に記憶されたコンピュータプログラムを実行することで、P2P探索機能、およびインフラストラクチャ探索機能(以下、インフラ探索機能)を実現する。ここで、P2P探索機能とは、ソース機器101がWi−Fi Direct規格に準拠した無線通信を介してミラーリングを行う相手装置である対向機を探索する機能である。つまり、P2Pモードで対向機を探索する機能である。また、インフラ探索機能とは、ソース機器101がインフラストラクチャネットワークを介してミラーリングを行う相手装置である対向機を探索する機能である。つまり、インフラモードで対向機を探索する機能である。なお、ソース機器101はミラーリングに加えて、あるいは代えて、コンテンツリダイレクトやダイレクトストリーミングを行う対向機を探索してもよい。
また、制御部202は記憶部201に記憶されたコンピュータプログラムを実行することで、P2P探索機能による探索や、インフラ探索機能による探索によって検出した他の通信装置との通信方法を選択する選択機能を実現する。ここで選択される通信方法は、Wi−Fi Direct規格に準拠して通信する(P2Pモードで通信する)通信方法か、インフラストラクチャネットワークを介して通信する(インフラモードで通信する)通信方法である。ソース機器101は、P2P探索機能による探索と、インフラ探索機能による探索とで重複して検出された他の通信装置と通信を行う際に、選択機能によって選択された通信方法で通信する。
あるいは、当該選択機能は、単に推奨する通信方法を選択するものであってもよい。この場合ソース機器101は、P2P探索機能による探索とインフラ探索機能による探索とで他の通信装置が重複して検出された場合に、選択手段により選択された通信方法をユーザに通知する。そして、ユーザによってソース機器101が何れの通信方法で当該他の通信装置と通信するかが決定される。
選択機能による通信方法の選択は、ソース機器101が行うP2Pモードのよる通信の状態やインフラモードによる通信の状態に基づいて決定される。ここで通信の状態とは、例えばソース機器101が行うP2Pモードやインフラモードによる通信の通信品質や、使用する周波数帯域等のことである。あるいは選択機能による通信方法の選択は、ソース機器101に関する情報に基づいて行われてもよい。ソース機器101に関する情報とは、具体的にはソース機器101の能力情報である。ここでソース機器101の能力情報とは、例えばソース機器101がコンテンツリダイレクトを実行可能かということである。あるいは、ソース機器101に関する情報とは、ソース機器101の状態情報のことであってもよい。ここでソース機器101の状態情報とは、例えばソース機器101がインフラモードを使用するアプリケーションを実行しているかという情報である。また、選択機能による通信方法の選択は、シンク機器102に関する情報に基づいて行われてもよい。
また、制御部202は、記憶部201に記憶されたコンピュータプログラムを実行することで、ソース機器としてのミラーリング機能を実現する。ここで、ソース機器としてのミラーリング機能とは、自装置が表示している画面をキャプチャし符号化した画像データや、再生している音声を符号化した音声データをシンク機器に送信する機能である。また、制御部202は記憶部201に記憶されたコンピュータプログラムを実行することで、ソース機器としてのミラーリング機能に加えて、あるいは代えて、コンテンツリダイレクト機能やダイレクトストリーミング機能を実現してもよい。ソース機器としてのコンテンツリダイレクト機能とは、シンク機器で再生するコンテンツを、シンク機器がソース機器以外の外部装置から取得するために必要な情報をシンク機器に送信する機能である。また、ソース機器としてのダイレクトストリーミング機能とは、記憶部201に記憶されたコンテンツをシンク機器に送信する機能である。
また、制御部202は、機能部203を制御して、撮像やコンテンツの閲覧などの所定の処理を実行する。機能部203は、ソース機器101が所定の処理を実行するためのハードウェアである。例えば、ソース機器101がカメラである場合、機能部203は撮像部であり、撮像処理を行う。このとき、ソース機器101は、撮像部が生成したデータを、後述の出力部205によって画面上に表示し、制御部202のミラーリング機能によって他の通信装置に送信することでミラーリングを実行することができる。あるいは、ソース機器101の記憶部201に記憶されているデータを出力部205によって画面上に表示し、同様にミラーリングを実行してもよい。
入力部204は、ユーザからの各種操作の受付を行う。出力部205は、モニタ画面やスピーカーなどを介してユーザに対して各種出力を行う。ここで、出力部205による出力とは、画面上への表示や、スピーカーによる音声出力、振動出力などであってもよい。なお、出力部205が出力するモニタ画面は、ソース機器101が備えるモニタ画面である。あるいは、ソース機器101と接続された他の装置が有するモニタ画面であってもよい。なお、タッチパネルのように入力部204と出力部205の両方を1つのモジュールで実現するようにしてもよい。入力部204、出力部205は、夫々ソース機器101とは別体であってもよい。
通信部206は、IEEE802.11シリーズ規格に準拠した無線通信の制御や、有線LAN等の有線通信の制御、IP(Internet Protocol)通信の制御を行う。また、通信部206は選択機能によって選択された通信方法に基づいて、アンテナ207を介して、無線通信のための無線信号の送受信を行う。ソース機器101は通信部206を介して、画像データや文書データ、映像データ等のコンテンツをシンク機器102と通信する。また通信部206として使用される通信チップがサポートする機能に応じて、P2Pモードやインフラモードによる対向機の探索や通信を時分割で切り替えて実行することや、両方を同時に実行することも可能である。
シンク機器102はソース機器101と同様のハードウェア構成を有する。シンク機器102の記憶部201、機能部203、入力部204、出力部205、通信部206、およびアンテナ207はソース機器101と同様であるため説明を省略する。
シンク機器102の制御部202はCPUやMPU等の1以上のプロセッサにより構成され、記憶部201に記憶されたコンピュータプログラムを実行することによりシンク機器102全体を制御する。CPUやMPUは、コンピュータとして機能する。なお、制御部202は、記憶部201に記憶されたプログラムとOS(Operating System)との協働によりシンク機器102全体を制御するようにしてもよい。また、制御部202がマルチコア等の複数のプロセッサを備え、複数のプロセッサによりシンク機器102全体を制御するようにしてもよい。
また、制御部202は記憶部201に記憶されたコンピュータプログラムを実行することで、P2P探索機能、およびインフラストラクチャ探索機能(以下、インフラ探索機能)を実現する。ここで、P2P探索機能とは、シンク機器102がWi−Fi Direct規格に準拠した無線通信を介してミラーリングを行う相手装置である対向機を探索する機能である。つまり、P2Pモードで対向機を探索する機能である。また、インフラ探索機能とは、シンク機器102がインフラストラクチャネットワークを介してミラーリングを行う相手装置である対向機を探索する機能である。つまり、インフラモードで対向機を探索する機能である。なお、シンク機器102はミラーリングに加えて、あるいは代えて、コンテンツリダイレクトやダイレクトストリーミングを行う対向機を探索してもよい。
また、制御部202は記憶部201に記憶されたコンピュータプログラムを実行することで、P2P探索機能による探索や、インフラ探索機能による探索によって検出した他の通信装置との通信方法を選択する選択機能を実現する。ここで選択される通信方法は、Wi−Fi Direct規格に準拠して通信する(P2Pモードで通信する)通信方法か、インフラストラクチャネットワークを介して通信する(インフラモードで通信する)通信方法である。シンク機器102は、P2P探索機能による探索と、インフラ探索機能による探索とで重複して検出された他の通信装置と通信を行う際に、選択機能によって選択された通信方法で通信する。
あるいは当該選択機能は、単に推奨する通信方法を選択するものであってもよい。この場合シンク機器102は、P2P探索機能による探索とインフラ探索機能による探索とで他の通信装置が重複して検出された場合に、選択手段により選択された通信方法をユーザに通知する。そして、ユーザによってシンク機器102が何れの通信方法で当該他の通信装置と通信するかが決定される。
また、制御部202は、記憶部201に記憶されたコンピュータプログラムを実行することで、シンク機器としてのミラーリング機能を実現する。ここで、シンク機器としてのミラーリング機能とは、ソース機器が表示している画面をキャプチャし符号化した画像データや、再生している音声を符号化した音声データを受信し、復号、再生する機能である。また、制御部202は記憶部201に記憶されたコンピュータプログラムを実行することで、シンク機器としてのミラーリング機能に加えて、あるいは代えて、コンテンツリダイレクト機能やダイレクトストリーミング機能を実現してもよい。シンク機器としてのコンテンツリダイレクト機能とは、ソース機器から送られた情報を基にソース機器以外の外部装置から再生したいコンテンツを取得し、再生する機能である。また、シンク機器としてのダイレクトストリーミング機能とは、ソース機器から送信されるコンテンツを受信し、再生する機能である。
なお、ソース機器101およびシンク機器102は、画像の表示と音声の再生のどちらも行える装置である。しかし、ソース機器101およびシンク機器102のどちらも、画像の表示あるいは音声の再生の何れか一方しか行えない装置であってもよい。
図3は、ソース機器101がシンク機器102を探索し、ミラーリングを開始する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートを示す。
本フローチャートでは、ソース機器101がミラーリングを行う対向機を探索するが、これに限らず、シンク機器102がミラーリングを行う対向機を探索してもよい。
なお、図3に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
本フローチャートの処理は、ソース機器101において、ミラーリングを行う所定のアプリケーションが起動したことに基づいて開始される。あるいはソース機器101の電源が投入されたことにより開始してもよい。あるいはソース機器101が、AP103が構築するインフラストラクチャネットワークに参加したことに基づいて開始してもよい。あるいはソース機器101がシンク機器102とWi−Fi Direct規格に準拠したネットワークを確立したことに基づいて開始してもよい。
まずソース機器101の制御部202は、ユーザからミラーリングの開始操作を受け付ける(ステップS301)。本ステップでユーザが行うミラーリングの開始操作の例として、ソース機器101のモニタ画面上に表示されたミラーリング開始ボタンの押下が挙げられる。しかし、これに限らず所定のキーボード操作やマウス操作、タッチ操作、ジョイスティック操作などのユーザ操作をミラーリング開始操作としてもよい。また、所定のジェスチャーや、リモコンの制御ボタンの押下、所定のコンテンツの再生開始、所定のアプリケーション立ち上げ等のユーザ操作をミラーリングの開始操作としても良い。
続いてソース機器101の制御部202は、P2Pモードとインフラモードによるシンク機器102の探索を行う(ステップS302)。具体的には、ソース機器101の制御部202は、P2P探索機能とインフラ探索機能によりミラーリングを行う対向機を探索する。本ステップにおけるシンク機器102の探索は、P2Pモードによる探索と、インフラモードによる探索を並行して行う。ソース機器101は、通信部206として使用している通信チップがサポートする機能に応じて、後述する図6や図7のシーケンス図にあるように2つのモードの探索を時分割で切り替えることで行う。あるいは、ソース機器101は、通信部206として使用している通信チップがサポートする機能に応じて、図8のシーケンス図にあるように2つのモードの探索を同時に実行してもよい。なお、本ステップにおいてソース機器101は、P2Pモードによるシンク機器102の探索と、インフラモードによるシンク機器102の探索とを順番に行ってもよい。この場合、ソース機器101は、P2Pモードによるシンク機器102の探索と、インフラモードによるシンク機器102の探索とのどちらを先に行ってもよい。
P2Pモードによるシンク機器102の探索は、Wi−Fi Miracast R2規格に準拠し、ビーコン(Beacon)やプローブ要求/応答(Probe Request/Response)などのフレームの送受信によって行われる。各フレームには、デバイス情報などのサブエレメントを含む情報エレメントWFD IE(Wi−Fi Display Information Element)が含まれる。例えば、ソース機器101はWFD IEとして、自装置がソース機器であることを示すサブエレメントを含み、当該WFD IEを含むビーコンやプローブ要求、プローブ応答を送信する。なお、ビーコンやプローブ要求、プローブ応答を送信する装置がシンク機器であった場合、自分がシンク機器であることを示すサブエレメントを含むWFD IEを送信する。また、ビーコンやプローブ要求、プローブ応答を送信する装置が、ソース機器としての役割と、シンク機器としての役割との両方を行える場合、デュアルロール機器であることを示すサブエレメントを含むWFD IEを送信する。
一方インフラモードによる探索は、Wi−Fi Miracast R2規格に準拠し、マルチキャストDNS(multicast DNS、mDNS)によって行われる。なお、DNSとはDomain Name Systemの略である。具体的には、ソース機器101が接続しているAP103を介して、インフラストラクチャネットワークに参加している他の通信装置に対してDNSパケットをマルチキャスト送信することにより行われる。ソース機器101は、AP103を介してミラーリングを行うことができる対向機から応答を受信することで対向機を検出する。
具体的には、ソース機器101はAP103を介して、PTR(Pointer)レコード、SRV(Service)レコード、TXT(Text)レコードなどのDNSレコードを含むDNSパケットを送信する。DNSレコードは、ソース機器101がWi−Fi Miracast R2規格に準拠した無線通信を行うことができる通信装置を指定して探索していることを示す。具体的には、DNSレコードにはソース機器を示すDisplaysrc、またはシンク機器を示すDisplayの何れか一つのサービス名が含まれる。ソース機器101はミラーリングを行う対向機としてシンク機器102を探索するので、DNSレコードとしてはシンク機器102を示すdisplayを含める。
またソース機器101は、DNSパケットを任意の送信間隔、任意の送信回数で送信することが可能である。ソース機器101は対向機の探索を行う場合、所定の回数に達するまでDNSパケットの送信を繰り返し行うものとする。あるいは、ソース機器101は所定の時間が経過するまでDNSパケットを繰り返し送信してもよい。また、ソース機器101は所定の台数の対向機から応答を受信したことに基づいて、DNSパケットの送信を停止してもよい。
ソース機器101の制御部202はP2Pモードとインフラモードとによる対向機の探索処理を行うと、探索結果の表示を行う(ステップS303)。ここで図5は、ソース機器101がシンク機器102を探索した結果として表示する表示画面の一例を示す図である。探索結果画面501にはステップS303で検出したシンク機器102の情報として、機器名が表示される。また、探索結果画面501において、ステップS303で検出したシンク機器102の情報として通信品質の情報を表示してもよい。この場合、ソース機器101は、ステップS303でシンク機器102の探索を行った際に、ソース機器101とシンク機器102との通信品質を取得する。ソース機器101による通信品質の取得については、後述のステップS308で説明する。また、ソース機器101は探索結果画面501において、シンク機器102との通信で利用可能な通信モード(P2Pモードあるいはインフラモード)を表示してもよい。
なお、探索結果画面501が表示されるタイミングは、対向機が検出されたタイミングである。具体的には、ソース機器101の制御部202は、ステップS302で行う対向機の探索において、探索を終了する前に探索結果画面501を表示し、探索結果画面501の表示と並行して対向機の探索を行う。また、探索結果画面501は、新たな対向機を検出したタイミングで、表示を更新する。あるいは、探索結果画面501の更新は、所定の時間間隔で定期的に行われてもよい。また、探索結果画面501のリスト中の対向機の表示順序は、検出された順序でも良いし、電波強度の強い順序であっても良いし、ソース機器101から距離が近い順であってもよい。
あるいは、ソース機器101の制御部202は、ステップS302における対向機の探索が終了してから探索結果画面501の表示を行ってもよい。
次にソース機器101の制御部202は、ユーザが探索処理をキャンセルしたか判定する(ステップS304)。ユーザが探索処理をキャンセルしたと判定された場合(ステップS304のYes)、ソース機器101の制御部202は探索処理を中断し、本フローチャートの処理を終了する。一方、ユーザが探索処理をキャンセルしなかったと判定された場合(ステップS305のNo)、ソース機器101の制御部202はステップS305の処理を行う。
ソース機器101の制御部202は、ユーザが検出されたシンク機器から特定のシンク機器を選択したか判定する(ステップS305)。本ステップにおいて、ユーザは特定のシンク機器と接続する際の通信モードを選択する必要はない。本判定は、ユーザが所定の時間内に探索結果画面501に表示されたシンク機器のリストから特定のシンク機器を選択したか、ということに基づいて行われる。ユーザが所定の時間内に特定のシンク機器を選択したと判定すると(ステップS305のYes)、ソース機器101の制御部202はステップS306の処理を行う。一方、ユーザが所定の時間内に特定のシンク機器を選択しなかったと判定すると(ステップS305のNo)、ソース機器101の制御部202はステップS302の処理を行う。
あるいは、ユーザが探索結果画面501の「その他」を選択した場合、ソース機器101の制御部202は特定のシンク機器が選択されなかったと判定してもよい。もしくは、探索結果画面501に「再探索」など、シンク機器の探索を再度行えるような表示されている場合、当該表示をユーザが選択したことに基づいて、ソース機器101の制御部202は特定のシンク機器が選択されなかったと判定してもよい。
また、ユーザによるシンク機器の選択操作の有無以外にも、ソース機器101の制御部202は、例えば過去に接続したことのあるシンク機器がシンク機器の探索結果に含まれるか否かに基づいて判定を行ってもよい。具体的にはソース機器101の制御部202は、記憶部201に記憶されたシンク機器との接続履歴と探索結果とを比較し、一致するシンク機器がある場合はシンク機器が選択されたと判定する。また、ソース機器101の制御部202は、記憶部201に記憶されたシンク機器との接続履歴と探索結果とで一致するシンク機器がない場合は、シンク機器が選択されなかったと判定してもよい。本ステップの判定は、これらの条件を組み合わせて行われてもよい。
ソース機器101の制御部202は、ステップS306で選択されたシンク機器がステップS302においてP2Pモードとインフラモードの双方で検出されたか判定する(ステップS306)。選択されたシンク機器がP2Pモードとインフラモードとの双方で検出されなかった場合(ステップS306のNo)、ソース機器101の制御部202はステップS307の処理を行う。選択されたシンク機器がP2Pモードとインフラモードとの双方で検出されなかった場合とは、つまりP2Pモードあるいはインフラモードの何れか一方の通信モードでのみ検出された場合である。一方、ステップS306で選択されたシンク機器がP2Pモードとインフラモードとの双方で検出された場合(ステップS306のYes)、ソース機器101の制御部202はステップS308の処理を行う。
ソース機器101の制御部202は、選択されたシンク機器が検出された通信モードでミラーリングを行うと選択し(ステップS307)、ステップS309の処理を行う。
一方、ステップS308において、ソース機器101の制御部202は選択されたシンク機器とミラーリングを行う際の通信モードをP2Pモードとインフラモードとのどちらにすべきかを所定の条件に基づいて選択する選択処理を行う。ステップS308でソース機器101の制御部202が行う処理については、図4で説明する。
図4は、ソース機器101が通信品質に基づいて通信モードを選択する際に記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートを示す。
なお、図4に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
まずソース機器101の制御部202は、選択されたシンク機器とのP2Pモードとインフラモードにおける通信品質を取得する(ステップS401)。P2Pモードでは、ソース機器101がシンク機器から無線フレームを直接受信し、RSSIや、CINRを測定することにより、通信品質を取得できる。なお、RSSIはReceived Signal Strength Indicatorの略であり、受信電界強度を指す。また、CINRはCarrier to Interference and Noise Ratioの略であり、搬送波電力対干渉雑音電力比を指す。インフラモードでは、ソース機器101がAP103から無線フレームを受信し、ソース機器101とAP103間のRSSIやCINRを測定する。更にAP103とシンク機器102間のRSSIやCINRの情報を、ソース機器がAP103からマネジメントフレームを使用して取得することで、AP103を介したソース機器101とシンク機器102間の通信品質を取得することができる。なお、ソース機器101の制御部202はステップS302において、P2Pモードとインフラモードにおける通信品質を取得してもよい。その場合、本ステップはスキップされる。
ソース機器101の制御部202は、二つの通信モードの通信品質に基づいて、通信品質の良い通信モードを、ミラーリングを行う際の通信モードとして選択する(ステップS402)。本ステップにおいて、ソース機器101の制御部202は、インフラモードにおける通信品質として、ソース機器101とAP103間の通信品質を利用する。あるいは、ソース機器101の制御部202は、ソース機器101とAP103間の通信品質と、シンク機器102とAP103間の通信品質とを比較し、通信品質の悪い方をインフラモードにおける通信品質として利用してもよい。
ソース機器101の制御部202は、ステップS305において選択されたシンク機器とミラーリングを行う際の通信モードが選択されると、図4のフローチャートの処理を終了する。
ソース機器101の制御部202は、ステップS308の処理を行うと、ステップS309の処理を行う。
なお、図3のフローチャートでは、ソース機器101の制御部202は、探索結果として表示されたシンク機器のリストから、特定のシンク機器が選択されてから、ミラーリングを行う際の通信モードを選択した。しかしこれに限らず、ソース機器101の制御部202は探索結果の表示を行う前に、ミラーリングを行う際の通信モードを選択してもよい。具体的には、ソース機器101の制御部202はステップS302でシンク機器102の探索を行い、検出したシンク機器に対してステップS306からステップS308の処理を行う。次に、ソース機器101の制御部202は、ステップS303の処理を行う。なお、本ステップはステップS302におけるシンク機器102の探索と並行して行われてもよい。ステップS303における表示の一例は、図5に示すとおりである。なお、ステップS306においてP2Pモードとインフラモードの双方で検出されたと判定されたシンク機器は、ステップS308で選択された通信モードと、その通信品質のみ表示する。ステップS303の処理を行ったソース機器101の制御部202は、ステップS304の判定を行う。ソース機器101の制御部202は、ステップS304でYesと判定された場合は本フローチャートを終了し、ステップS304でNoと判定された場合はステップS305の処理を行う。また、ソース機器101の制御部202は、ステップS305でNoと判定された場合はステップS302の処理を行い、ステップS305でYesと判定された場合はステップS309の処理を行う。
ソース機器101の制御部202は、ステップS305で選択されたシンク機器と、ステップS307あるいはステップS308で選択された通信モードに基づいた接続セットアップを行う(ステップS309)。選択されたシンク機器とP2Pモードによってミラーリングを行うと選択された場合、ソース機器101の制御部202は、Wi−Fi Direct規格に準拠した無線通信を確立するための接続セットアップを行う。また、選択されたシンク機器とインフラモードによってミラーリングを行うと選択された場合、ソース機器101の制御部202は、インフラストラクチャネットワークを介したミラーリングを行うための接続セットアップを行う。これらの接続セットアップは、Wi−Fi Miracast R2規格に準拠して行われる。
まず、ステップS305で選択されたシンク機器と、ソース機器101がWi−Fi Direct規格に準拠した無線通信を確立するための接続セットアップを行う場合を説明する。この場合、接続セットアップには、Wi−Fi Miracast R2規格に基づき、ビーコン(Beacon)、プローブ要求/応答(Probe Request/Response)などのフレームを利用する。また、アソシエーション要求/応答(Association Request/Response)、再アソシエーション要求/応答(Reassociation Request/Response)などのフレームも利用してよい。また、GO(Group Owner)ネゴシエーション要求/応答/確認(GO Negotiation Request/Response/Confirm)などのフレームも利用してよい。さらに、P2Pインビテーション要求/応答(P2P Invitation Request/Response)を利用してもよい。また、プロビジョンディスカバリ要求/応答(Provision Discovery Request/Response)を利用してもよい。Wi−Fi Direct規格に準拠した無線通信を確立するための接続セットアップについては、後述の図6で詳細に説明する。
次に、ステップS305で選択されたシンク機器と、ソース機器101がインフラストラクチャネットワークを介したミラーリングを行うための接続セットアップを行う場合を説明する。この場合、接続セットアップには、Wi−Fi Miracast R2規格に基づき、ソース機器101が接続しているAPを介してインフラストラクチャネットワークにDNSパケットを送信することで行われる。当該DNSパケットには、SRVレコード、TXTレコードなどのDNSレコードが含まれる。各レコードには、ソース機器を示すdisplaysrcまたはシンク機器を示すdisplayの何れか一つのサービス名が含まれる。インフラストラクチャネットワークを介したミラーリングを行うための接続セットアップの詳細については、後述の図7で詳細に説明する。
続いてソース機器101の制御部202は、ステップS305で選択されたシンク機器と能力交換(Capability Negotiation)を行う(ステップS310)。Wi−Fi Miracast R2規格では、能力交換(Capability Negotiation)にはRTSP(Real Time Streaming Protocol)を利用するよう規定されている。RTSPはストリーミングを制御するためのプロトコルであり、下位層のトランスポートプロトコルとしては一般的にTCP(Transmission Control Protocol)が用いられる。能力交換(Capability Negotiation)にはRTSP M1〜RTSP M4までの所定のメッセージが、ソース機器101と選択されたシンク機器との間で交換される。このRTSPメッセージの交換によって、ソース機器101はシンク機器の能力情報を得て、使用するパラメータを決定し、シンク機器へ通知する。シンク機器は、通知されたパラメータを設定する。具体的に能力情報とは、例えば画面については、対応する画面の解像度、フレームレート、コーデックなどの情報である。また音声については、対応するコーデックやサンプリング周波数などの情報である。本ステップの能力交換の結果、ソース機器101と選択されたシンク機器との間でミラーリング時に使用する画像データや音声データの符号化方式の種類や画像の解像度、フレームレートなどのパラメータが決定される。なお、送受信する能力情報は、これらの情報の一部であってもよい。例えば画像の解像度については、まずソース機器101からシンク機器に、シンク機器の解像度に対する問合せを含むM3メッセージが送信される。シンク機器は当該M3メッセージへの応答として、シンク機器が有する画面の解像度に関する情報を含んだメッセージをソース機器101に送信する。当該メッセージを受信したソース機器101は、シンク機器の画面の解像度に基づいて、シンク機器に送信する画像の解像度を決定する。
能力交換(Capability Negotiation)の処理を行うと、ソース機器101の制御部202は、ステップS305で選択されたシンク機器とセッションを確立する(ステップS311)。Wi−Fi Miracast R2規格では、セッションの確立にはRTSP M5〜M7までの所定のメッセージがソース機器101と選択されたシンク機器との間で交換される。これらのRTSPメッセージの交換によって、使用するポート番号の設定などが行われ、セッションが確立される。なお、セッション確立に際して、ソース機器101とシンク機器とはコンテンツリダイレクトなどの他の機能で使用するポート番号を設定してもよい。また、複数のポート番号が設定されてもよい。
ソース機器101の制御部202は、ステップS311まで処理を行うと、通信部206を介してシンク機器へ、自装置が表示している画面の画像データや、再生している音声の音声データのストリーミングを送信する(ステップS312)。ソース機器101は、シンク機器へ画像データや音声データのストリーミングの送信を開始することで、ミラーリングを開始する。Wi−Fi Miracast R2規格では、映像ストリーミング用のプロトコルとしてRTP(Real−time Transport Protocol)を用いる。RTPは動画像や音声などのマルチメディアデータを、ネットワークを介してリアルタイムに送受信するためのプロトコルであり、下位層のトランスポートプロトコルとしてUDPやTCPを利用する。
ソース機器101の制御部202は、画像データや音声データのストリーミングを開始すると本フローチャートの処理を終了する。
以上、図3のフローチャートの処理により、ソース機器101はP2Pモードによる探索とインフラモードによる探索との双方で検出したシンク機器とミラーリングを行う際、ユーザに通信モードを選択させることがなく、ミラーリングを開始できる。そのため、ユーザは二つの通信モードで重複して検出されたシンク機器とミラーリングを行う際、通信モードの選択操作を行わなくてよい。また、ソース機器101が自動的に通信モードを選択することで、ユーザは通信モードを選択するための特別な知識を有さなくてもよくなるため、ユーザの負担軽減が可能となる。
図6は、ソース機器101が検出したシンク機器102とP2Pモードでミラーリングを行う際に行われる処理を示すシーケンス図である。
本シーケンスにおいて、ソース機器101はP2Pモードによるシンク機器102の探索と、インフラモードによるシンク機器102の探索とを時分割で切り替えて行うことで、2つの通信モードによるシンク機器102の探索を並行して行う。
ソース機器101はユーザからミラーリング開始操作を受け付ける(ステップS601)。ソース機器101はミラーリング開始操作を受け付けたことに基づいて、シンク機器102の探索を行う。
まず、ソース機器101がインフラモードによってシンク機器の探索を行う場合について説明する。ソース機器101はAP103経由でインフラストラクチャネットワークに参加している他の通信装置にmDNS問合せ(mDNS query)を送信する(ステップS602)。mDNS問合せは、ソース機器101が探索している対向機についての情報が含まれる信号である。いま、ソース機器101は対向機としてシンク機器を探索しているので、mDNS問合せにはシンク機器としての機能を有する対向機を探索するためのサービス名displayが含まれる。なお、ソース機器としての機能を有する対向機を探索する場合、mDNS問合せにはサービス名displaysrcが含まれることになる。
AP103を介してmDNS問合せを受信した他の通信装置の内、探索されている対向機と一致する対向機は、mDNS応答(mDNS response)を、mDNS問い合わせを送信した装置に送信する。いま、ソース機器101はmDNS問合せを送信することでシンク機器としての機能を有する対向機を探索している。当該mDNS問合せを受信したシンク機器102は、シンク機器としての機能を有しているので、ソース機器101にmDNS応答を送信する。
ソース機器101はmDNS応答を受信することで、インフラモードで通信可能な対向機を検出する。そしてソース機器101は検出した対向機のリストを表示することで、対向機の探索結果を表示する(ステップS604)。本シーケンスではソース機器101はシンク機器102を検出したので、シンク機器102を検出した対向機として表示する。
続いて、ソース機器101がP2Pモードによってシンク機器の探索を行う場合について説明する。ソース機器101は、WFD IEを含むProbeリクエストを送信する(ステップS605)。
シンク機器102はWFD IEを含むProbeリクエストを受信すると、Wi−Fi Miracast R2規格に対応したデバイスであるので、応答としてWFD IEを含むProbeレスポンスを送信する(ステップS606)。ソース機器101はシンク機器102からProbeレスポンスを受信することで、P2Pモードで通信可能な対向機を検出する。本シーケンスにおいて、ソース機器101はインフラモードによる探索において、すでにシンク機器102を検出しているので、探索結果の表示は更新しない。あるいは、ソース機器101がステップS604で行う表示で、通信可能な通信モードや通信品質などを表示している場合、表示を更新してもよい。また、インフラモードによる探索より先にP2Pモードによる探索で対向機を検出した場合は、ステップS604の処理を行う。
ソース機器101は、ユーザからシンク機器102の選択を受け付ける(ステップS607)。シンク機器102はP2Pモードによる探索と、インフラモードによる探索との双方で検出されているので、ソース機器101は自動的に通信モードを選択する。本シーケンスでは、P2Pモードの通信品質が、インフラモードの通信品質より良かったことから、P2Pモードが選択される。そのため、ソース機器101はシンク機器102とP2Pモードでミラーリングを行うための接続セットアップを開始する。
P2Pモードでミラーリングを行う場合、ソース機器101とシンク機器102とはWi−Fi Direct規格に準拠した無線通信を介してミラーリングを行う。Wi−Fi Direct規格に準拠した通信では、通信装置同士がAPを介することなく直接無線通信する。また、Wi−Fi Direct規格に準拠した通信を行う通信装置には、夫々GOあるいはCLという役割が与えられる。GOはWi−Fi Direct規格に準拠したGroup Ownerのことであり、ネットワークを構築する役割の機器である。また、Wi−Fi Direct規格に準拠した無線通信において、GOが構築するネットワークに参加する機器をCL(Client)という。
ソース機器101は、シンク機器102とGOを決定するため、シンク機器102に役割決定要求としてGOネゴシエーション要求を送信する(ステップS608)。この信号にはソース機器101のGOになりたい度合いを示すインテント値が含まれる。
GOネゴシエーション要求に対する応答として、シンク機器102はGOネゴシエーション応答を送信する(ステップS609)。この信号には、シンク機器102のGOになりたい度合いを示すインテント値が含まれる。GOネゴシエーション応答を受信したソース機器101は、ソース機器101とシンク機器102とのインテント値の大小を比較し、インテント値が大きかった方の通信装置をGOとして決定する。他方、インテント値が小さかった方の通信装置がCLとして決定される。
ソース機器101は、インテント値を比較した結果を含めたGOネゴシエーション確認をシンク機器102に送信する(ステップS610)。本実施形態では、シンク機器102のインテント値がソース機器101のインテント値より大きかったことから、シンク機器102がGOとなったとする。
シンク機器102はソース機器101とのWi−Fi Direct規格に準拠した通信においてGOとなったことから、WFD IEを含んだビーコンを送信する(ステップS611)。
その後、ソース機器101とシンク機器102は認証パケットを送受信することで、無線通信を確立してもよいか確認する(ステップS612、ステップS613)。そして、ソース機器101はシンク機器102へアソシエーション要求を送信する(ステップS614)。シンク機器102は、受信したアソシエーション要求に対する応答として、アソシエーション応答を送信する(ステップS615)。
ソース機器101は、シンク機器102と能力交換(Capability Negotiation)を行う(ステップS616)。能力交換(Capability Negotiation)ではRTSP M1〜M4までの所定のメッセージが、ソース機器101と対向機であるシンク機器102の間で交換される。このRTSPメッセージの交換によって、ソース機器101はシンク機器102の能力情報を得て、使用するパラメータを決定し、シンク機器102へ通知する。シンク機器102は、通知されたパラメータを設定する。
ソース機器101は、シンク機器102とRTSP M5〜M7までの所定のメッセージを交換することで、セッションを確立する(ステップS617)。ソース機器101はシンク機器102とセッションを確立すると、シンク機器102へ自装置が表示している画面の画像データや、再生している音声の音声データのストリーミングを送信する(ステップS618)。
以上、図6のシーケンスではソース機器101がP2Pモードによる探索と、インフラモードによる探索の双方で検出されたシンク機器102がミラーリングを行う対向機として選択された場合に、自動的に通信モードとしてP2Pモードを選択した。そして、ソース機器101はシンク機器102とP2Pモードによる接続セットアップを行い、P2Pモードによるミラーリングを開始した。
図7は、ソース機器101が検出したシンク機器102とインフラモードでミラーリングを行う際に行われる処理を示すシーケンス図である。
本シーケンスにおいて、ソース機器101はP2Pモードによるシンク機器102の探索と、インフラモードによるシンク機器102の探索とを時分割で切り替えて行うことで、2つの通信モードによるシンク機器102の探索を並行して行う。
ステップS701からステップS706は、夫々図6のステップS601からステップS606と同様である。
ソース機器101は、ユーザからシンク機器102の選択を受け付ける(ステップS707)。シンク機器102はP2Pモードによる探索と、インフラモードによる探索との双方で検出されているので、ソース機器101は自動的に通信モードを選択する。本シーケンスでは、インフラモードの通信品質が、P2Pモードの通信品質より良かったことから、インフラモードが選択される。そのため、ソース機器101はシンク機器102とインフラモードでミラーリングを行うための接続セットアップを開始する。
インフラモードでミラーリングを行う場合、ソース機器101とシンク機器102とはインフラストラクチャネットワークを介してミラーリングを行う。
ソース機器101はシンク機器102に対して、AP103経由でmDNS問合せを送信する(ステップS708)。本ステップで送信するmDNS問合せは、シンク機器102の能力情報やソース機器101とシンク機器102の通信とで使用するポート番号やホスト名を問合せる信号である。本ステップで問い合わせるシンク機器102の能力情報とは、シンク機器102がシンク機器であるか、ソース機器であるか、あるいはデュアルロール機器であるかなどの情報である。
mDNS問合せを受信したシンク機器102は、自装置の能力情報と、ポート番号、ホスト名を含むmDNS応答をソース機器101に送信する(ステップS709)。本応答を受信したソース機器101は、シンク機器102との接続セットアップを完了する。
ステップS710からステップS712は、図6のステップS616からステップS618と同様である。
以上、図7のシーケンスではソース機器101がP2Pモードによる探索と、インフラモードによる探索の双方で検出されたシンク機器102がミラーリングを行う対向機として選択された場合に、自動的に通信モードとしてインフラモードを選択した。そして、ソース機器101はシンク機器102とインフラモードによる接続セットアップを行い、インフラモードによるミラーリングを開始した。
図8は、ソース機器101がP2Pモードによる探索とインフラモードによる探索とを同時に行う場合に、インフラモードでミラーリングを行う際に行われる処理を示すシーケンス図である。
本シーケンスのソース機器101は、P2Pモードによるシンク機器102の探索と、インフラモードによるシンク機器102の探索とを同時に行うことで、2つの通信モードによるシンク機器102の探索を並行して行う。
また本シーケンスにおいて、ソース機器101はシンク機器104と、インフラストラクチャネットワーク上で、AP103を介して無線通信を行う。
ソース機器101はユーザからミラーリング開始操作を受け付ける(ステップS601)。ソース機器101はミラーリング開始操作を受け付けたことに基づいて、シンク機器102の探索を行う。
本シーケンスのソース機器101は、P2Pモードによる探索と、インフラモードによる探索を同時に行うことができる。そのため、P2Pモードによる探索で利用するProbeリクエストの送信(ステップS802)と、インフラモードによる探索で利用するmDNS問合せの送信(ステップS803)を同時に行う。
シンク機器102はProbeリクエストを受信すると、Wi−Fi Miracast R2規格に対応したデバイスであるので、応答としてWFD IEを含むProbeレスポンスを送信する(ステップS804)。ソース機器101はシンク機器102からProbeレスポンスを受信したことで、シンク機器102を対向機として検出し、探索結果としてシンク機器102を表示する(ステップS805)。
シンク機器104は、mDNS問合せを受信すると、シンク機器としての機能を有しているので、ソース機器101にmDNS応答を送信する(ステップS806)。ソース機器101はシンク機器104からmDNS応答を受信したことで、シンク機器104を対向機として検出し、探索結果としてシンク機器104を表示する(ステップS807)。
また、シンク機器102は、mDNS問合せを受信すると、シンク機器としての機能を有しているので、ソース機器101にmDNS応答を送信する(ステップS808)。ソース機器101はシンク機器102からmDNS応答を受信するが、ステップS805で既にシンク機器102を対向機として表示しているので、表示の更新は行わない。あるいは、探索結果を表示する際に対向機との通信で利用可能な通信モードや、通信品質を表示している場合は、探索結果の表示を更新してもよい。
ソース機器101は、ユーザからシンク機器104の選択を受け付ける(ステップS809)。シンク機器104はインフラモードによる探索で検出されているので、ソース機器101は通信モードとしてインフラモードを選択する。ソース機器101はシンク機器104とインフラモードでミラーリングを行うための接続セットアップを開始する。
ステップS810からステップS814は、図7のステップS708からステップS712と同様である。ただし、ソース機器101が接続セットアップなどを行い、ミラーリングを開始する相手装置はシンク機器104である。
以上、図8のシーケンスではソース機器101がP2Pモードによる探索と、インフラモードによる探索を行い、複数の対向機を検出した。
本実施形態では、ソース機器101がP2Pモードによる探索と、インフラモードによる探索とを行い、両方の通信モードで同じシンク機器を検出した場合、ソース機器101が検出したシンク機器との通信モードを自動的に決定した。これにより、ユーザは自分でシンク機器との通信モードを決定する必要がなくなるため、ユーザの負担が軽減される。また、本実施形態では、検出されたシンク機器102の内、P2Pモードによる探索とインフラモードによる探索との両方で検出され、かつユーザが選択したシンク機器102についてのみ通信モードの選択処理を行った。P2Pモードによる探索とインフラモードによる探索との両方で検出された全てのシンク機器102について通信モードの選択処理を行わないことで、ソース機器101は余計な処理を行わなくてよくなる。また、これによりソース機器101の省電力性が向上する。
<実施形態2>
本実施例では、ソース機器101がインフラモードを使用する他の通信アプリケーション(以下、通信アプリ)を実行しているか否かに基づいて通信モードを選択する。
本実施形態に係るソース機器101が参加するネットワークのネットワーク構成は、実施形態1の図1と同様である。また、本実施形態に係るソース機器101のハードウェア構成は、実施形態1の図2と同様である。また、本実施形態に係るソース機器101がシンク機器102を探索し、ミラーリングを行う際に実行する処理を示すフローチャートは図3と同様である。また、本実施形態に係るソース機器101がシンク機器102の探索結果として表示する表示画面の一例は図5と同様である。
図9は、ソース機器101が他の通信アプリを実行しているかということに基づいて通信モードを選択する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートを示す。
本フローチャートの処理は、図3のステップS308の処理に該当する。
ソース機器101の制御部202は、自装置がインフラモードを使用する他の通信アプリを実行しているか判定する(ステップS901)。インフラモードを使用する他の通信アプリとしては、例えばE−mailやWebブラウザなどのアプリケーションがあげられる。あるいは、インフラモードを使用する他の通信アプリは、ミラーリングを行うアプリケーションであってもよい。なお、他の通信アプリとは、ソース機器101が図3のフローチャートの処理を行うために利用しているアプリケーション以外のアプリケーションのことを指す。インフラモードを使用する他の通信アプリを実行していると判定されると(ステップS901のYes)、ソース機器101の制御部202はステップS902の処理を行う。一方、インフラモードを使用する他の通信アプリを実行していないと判定されると(ステップS901のNo)、ソース機器101の制御部202はステップS903の処理を行う。
ソース機器101の制御部202は、通信モードとしてインフラモードを選択し(ステップS902)、本フローチャートの処理を終了する。また、ステップS903およびステップS904は、夫々実施形態1の図4のステップS401およびステップS402と同様である。
本実施形態では、ソース機器101がインフラモードを使用する他の通信アプリケーションを実行している場合、通信モードとしてインフラモードを選択することで、ミラーリングを行う際にソース機器101が他の通信アプリの通信を切断することがなくなる。
なお、本実施形態では、ソース機器101の制御部202は、ソース機器101がインフラモードを使用する他の通信アプリを実行しているか、ということに基づいて通信モードの選択を行った。しかし、これに限らず、ソース機器101の制御部202は、シンク機器102がインフラモードを使用する他の通信アプリを実行しているか、ということに基づいて通信モードの選択を行ってもよい。具体的には、ソース機器101の制御部202は、シンク機器102がインフラモードを使用する他の通信アプリを実行している場合は、図9のステップS901においてYesと判定し、通信モードとしてインフラモードを選択する。一方、シンク機器102がインフラモードを使用する他の通信アプリを実行していない場合、ソース機器101の制御部202は図9のステップS901においてNoと判定し、ステップS903およびステップS904の処理を行う。シンク機器102がインフラモードを使用する他の通信アプリを実行している場合、通信モードとしてインフラモードを選択することで、ミラーリングを行う際にシンク機器102が他の通信アプリの通信を切断することがなくなる。
また、本実施形態において、ソース機器101の制御部202は、ソース機器101とシンク機器102との少なくとも一方がインフラモードを使用する通信アプリを実行しているか、ということに基づいて通信モードの選択を行ってもよい。具体的には、ソース機器101の制御部202は、ソース機器101とシンク機器102との少なくとも一方がインフラモードを使用する通信アプリを実行している場合、図9のステップS901においてYesと判定する。そしてソース機器101の制御部202は、通信モードとしてインフラモードを選択する。一方、ソース機器101の制御部202は、ソース機器101とシンク機器102の両方がインフラモードを使用する通信アプリを実行していない場合、ステップS901においてNoと判定し、ステップS903およびステップS904の処理を行う。ソース機器101とシンク機器102の何れかがインフラモードを使用する他の通信アプリを実行している場合、通信モードとしてインフラモードを選択することで、当該機器がミラーリングを行う際に他のアプリケーションの通信を切断することがなくなる。また、ソース機器101とシンク機器102との両方がインフラモードを使用する他の通信アプリを実行している場合、通信モードとしてインフラモードを選択することで、両機器がミラーリングを行う際に他のアプリケーションの通信を切断することがなくなる。
なお、本実施形態において、ソース機器101はインフラモードを利用する他の通信アプリを実行しているか、ということに基づいて通信モードを選択した。しかしこれに限らず、ソース機器101は、図3の処理を行うために利用しているアプリケーションも含めて、インフラモードを利用する通信アプリを実行しているか、ということに基づいて判定を行ってもよい。この場合、ソース機器101が図3の処理を行うために利用しているアプリケーションは、P2Pモードでのミラーリングと、インフラモードでのミラーリングとの両方を実行可能である。ソース機器101は、図3の処理を行うために利用しているアプリケーションも含めて、インフラモードを利用する通信アプリを実行している場合、ステップS901でYesと判定する。また、ソース機器101は行うために利用しているアプリケーションも含めて、インフラモードを利用する通信アプリを実行していない場合、ステップS901でNoと判定する。
<実施形態3>
本実施例では、ソース機器・シンク機器がWi−Fi Display仕様のコンテンツリダイレクト機能を実行可能か否か、に応じて通信モードを選択する例について説明する。コンテンツリダイレクト機能は、コンテンツをソース機器以外から取得してシンク機器に表示させる指示情報をソース機器がシンク機器へ送信し、シンク機器がコンテンツをソース機器以外からAPを介して取得して表示する機能である。
本実施形態に係るソース機器101のハードウェア構成は、実施形態1の図2と同様である。また、本実施形態に係るソース機器101がシンク機器102を探索し、ミラーリングを行う際に実行する処理を示すフローチャートは図3と同様である。また、本実施形態に係るソース機器101がシンク機器102の探索結果として表示する表示画面の一例は図5と同様である。
図10は本実施形態に係るソース機器101が参加するネットワークのネットワーク構成を示す別の図である。
ソース機器101、シンク機器102、およびAP103は図1と同様である。本実施形態のAP103はルータ機能を備えており、ソース機器101およびシンク機器102はAP103を介してクラウドサーバ105と通信することができる。
本実施形態のソース機器101およびシンク機器102はコンテンツリダイレクトを実行可能である。コンテンツリダイレクトを実行した場合、ソース機器101はシンク機器102にAP103を介してクラウドサーバ105からコンテンツを取得させ、シンク機器102に取得したデータを再生させることができる。このとき、ソース機器101はシンク機器102に、コンテンツの識別子などの情報を送信し、シンク機器102はソース機器101から受信した情報に基づいてクラウドサーバ105からコンテンツを取得する。ソース機器101とシンク機器102とがミラーリングを行っている場合、コンテンツリダイレクトの開始や終了を行うことができる。
なお、ソース機器101がクラウドサーバ105からコンテンツを取得し、シンク機器102とミラーリングを行うことで、クラウドサーバ105にあるコンテンツをシンク機器102で表示することも可能である。
図11は、ソース機器101がコンテンツリダイレクトの実行可否に基づいて通信モードを選択する際に記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートを示す。
本フローチャートの処理は、図3のステップS308の処理に該当する。
ソース機器101の制御部202は、コンテンツリダイレクトが実行可能かどうかを判定する(ステップS1101)。本判定はソース機器101と、シンク機器102とがコンテンツリダイレクトに対応している機器であるか、ということに基づいて判定する。この場合、ソース機器101の制御部202は、ソース機器101とシンク機器102との両方がコンテンツリダイレクトを実行可能な場合、ステップS1101でYesと判定する。また、ソース機器101の制御部202は、ソース機器101とシンク機器102との少なくとも一方がコンテンツリダイレクトを実行可能でない場合、ステップS1101でNoと判定する。あるいは、ソース機器101の制御部202は、単にソース機器101がコンテンツリダイレクトに対応している機器であるかということに基づいて判定してもよい。この場合、ソース機器101の制御部202は、ソース機器101がコンテンツリダイレクトに対応している機器である場合、ステップS1101でYesと判定する。また、ソース機器101の制御部202は、ソース機器101がコンテンツリダイレクトに対応していない機器である場合、ステップS1101でNoと判定する。もしくはソース機器101がコンテンツリダイレクトに対応した機器である場合、ソース機器101の制御部202は、単にシンク機器102がコンテンツリダイレクトに対応している機器であるかということに基づいて判定してもよい。この場合、ソース機器101の制御部202は、シンク機器102がコンテンツリダイレクトに対応した機器である場合、ステップS1101でYesと判定する。また、ソース機器101の制御部202は、シンク機器102がコンテンツリダイレクトに対応した機器でない場合、ステップS1101でNoと判定する。また、ソース機器101の制御部202は、ソース機器101で実行されているアプリケーションが、コンテンツリダイレクトに対応しているか、ということに基づいて判定してもよい。この場合、ソース機器101で実行されているアプリケーションがコンテンツリダイレクトに対応している場合、ソース機器101の制御部202は、ステップS1101でYesと判定する。また、ソース機器101で実行されているアプリケーションがコンテンツリダイレクトに対応していない場合、ソース機器101の制御部202は、ステップS1101でNoと判定する。コンテンツリダイレクトが実行可能である場合(ステップS1101のYes)、ソース機器101の制御部202は通信モードとしてインフラモードを選択し(ステップS1102)、本フローチャートを終了する。一方、コンテンツリダイレクトが実行可能でない場合(ステップS1101のNo)、ソース機器101の制御部202は通信モードとしてP2Pモードを選択し(ステップS1103)、本フローチャートを終了する。
なお、ステップS1101でNoと判定された場合、ソース機器101の制御部202は、図4のステップS401およびステップS402の処理を行ってもよい。
本実施形態では、コンテンツリダイレクトを実行可能な場合、ソース機器101は通信モードとしてインフラモードを選択する。コンテンツリダイレクトを行う場合、シンク機器は必ずAP103を介してクラウドサーバ105と通信を行うことになる。よって、コンテンツリダイレクトを行う可能性がある場合、ソース機器101が通信モードとしてインフラモードを選択することで、コンテンツリダイレクトを実行した場合でもシンク機器102における通信モードの切り替えを抑制できる。これにより、シンク機器102が通信モードを切り替えることで発生する通信の切断による画像表示の途切れを抑制することができる。またコンテンツリダイレクトを行う可能性がない場合、ソース機器101が通信モードとしてP2Pモードを選択することで、低遅延のミラーリングを実行することができる。
あるいは、本実施形態において、ソース機器101の制御部202は、コンテンツリダイレクトが実行可能でないと判定された場合、通信品質のよい通信モードを選択してもよい。具体的には、ソース機器101の制御部202は、ステップS1101でNoと判定された場合、図4のステップS401およびステップS402の処理を行ってもよい。
以上のように、コンテンツリダイレクトの実行可否に基づいてソース機器101が通信モードを選択することにより、画像表示の途切れの抑制や低遅延の実現を達成する通信モードを適切に選択することができる。
<実施形態4>
本実施例では、ソース機器101がP2Pモードやインフラモードで使用する周波数帯域に応じて通信モードを選択する。
本実施形態に係るソース機器101が参加するネットワークのネットワーク構成は、実施形態1の図1と同様である。また、本実施形態に係るソース機器101のハードウェア構成は、実施形態1の図2と同様である。また、本実施形態に係るソース機器101がシンク機器102を探索し、ミラーリングを行う際に実行する処理を示すフローチャートは図3と同様である。また、本実施形態に係るソース機器101がシンク機器102の探索結果として表示する表示画面の一例は図5と同様である。
図12は、ソース機器101が通信可能な周波数帯域に基づいて通信モードを選択する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理のフローチャートを示す。
本フローチャートの処理は、図3のステップS308の処理に該当する。
ソース機器101の制御部202は、P2Pモードおよびインフラモードで使用する周波数帯域の情報を取得する(ステップS1201)。夫々の通信モードで使用する周波数帯域の情報は、ソース機器101が通信部206の周波数チャネルを切り替えながら、シンク機器102から送信される無線フレームを受信することで取得することができる。
ソース機器101の制御部202はステップS1201で取得した周波数帯域の情報に基づいて、一方の通信モードで使用する周波数帯域が5GHz帯で、かつ他方の通信モードで使用する周波数帯域が2.4GHz帯であるか判定する(ステップS1202)。一方の通信モードで使用する周波数帯域が5GHz帯で、かつ他方の通信モードで使用する周波数帯域が2.4GHz帯であると判定されると(ステップS1202のYes)、ソース機器101の制御部202はステップS1203の処理を行う。一方、どちらの通信モードでも使用する周波数帯域が5GHz帯である場合、あるいはどちらの通信モードも5GHz帯を使用していない場合(ステップS1202のNo)、ソース機器101の制御部202はステップS1204の処理を行う。
一方の通信モードで使用する周波数帯域が5GHz帯で、もう一方の通信モードで使用する周波数帯域が2.4GHz帯である場合、ソース機器101の制御部202は、使用する周波数帯域が5GHz帯である通信モードを選択する(ステップS1203)。ソース機器101の制御部202は、ステップS1203の処理を行うと、本フローチャートの処理を終了する。
ステップS1204およびステップS1205の処理は、夫々実施形態1の図4のステップS401およびステップS402と同様である。
以上、図12では、一方の通信モードで使用する周波数帯域が5GHz帯で、他方の通信モードで使用する周波数帯域が2.4GHz帯である場合、ソース機器101は使用する周波数帯域が5GHz帯である通信モードを選択した。5GHz帯は2.4GHz帯と比較してより高いデータレートを実現可能であるため、ソース機器101は周波数帯域として5GHz帯を使用する通信モードを選択することで高精細なストリーミングを実現することができる。
図13はソース機器101が通信可能な周波数帯域に基づいて通信モードを選択する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理の別のフローチャートを示す。
具体的には、本フローチャートにおいてソース機器101は周波数帯域の情報に基づいて通信モードを選択するものの、DFS機能の実行が必要な周波数帯域の使用を避けることができる。DFSとは、Dynamic Frequency Selectionの略である
DFS機能とは、特定の周波数帯域において実行が義務付けられている機能であって、周波数帯域に含まれる周波数チャネルの使用前に当該周波数チャネルが利用可能かどうかスキャンを行うなどの機能である。例えば5.3GHz帯や5.6GHz帯について、国によってはこれらの周波数帯域を使用する際に、アクセスポイントがDFS機能を実行することが義務付けられている。
ソース機器101の制御部202は、P2Pモードおよびインフラモードで使用する周波数帯域の情報を取得する(ステップS1301)。本ステップにおいてソース機器101は、図12のステップS1201と同様の方法で周波数帯域の情報を取得する。
ソース機器101の制御部202は、一方の通信モードで使用する周波数帯域がDFS機能の実行を要求する周波数帯域であり、かつ他方の通信モードで使用する周波数帯域がDFS機能の実行を要求しない周波数帯域であるか判定する(ステップS1302)。本フローチャートにおいて、DFS機能の実行を要求する周波数帯域とは、5.3GHz帯もしくは5.6GHz帯である。また、本フローチャートにおいて、DFS機能の実行を要求しない周波数帯域とは、5.2GHz帯である。一方の通信モードがDFS機能の実行を要求する周波数帯域を使用し、かつ他方の通信モードがDFS機能の実行を要求しない周波数帯域を使用する場合(ステップS1302のYes)、ソース機器101の制御部202はステップS1303の処理を行う。両方の通信モードがDFS機能の実行を要求する周波数帯域を使用する場合、あるいは両方の通信モードがDFS機能の実行を要求しない周波数帯域を使用する場合(ステップS1302のNo)、ステップS1304の処理を行う。
ソース機器101の制御部202は、DFS機能の実行を要求しない周波数帯域(ここでは5.2GHz帯)を使用する通信モードとして選択し(ステップS1303)、本フローチャートの処理を終了する。
ステップS1304およびステップS1305の処理は、夫々実施形態1の図4のステップS401およびステップS402と同様である。
なお、5.2GHz帯、5.3GHz帯および5.6GHz帯は、図12の5GHz帯に含まれる周波数帯域である。
なお、図13のフローチャートにおいて、ソース機器101の制御部202は、一方の通信モードが使用する周波数帯域がDFS機能の実行を要求し、他方の通信モードで使用する周波数帯域がDFS機能の実行を要求しないかに基づいて判定を行った。しかし、これに限らず、ソース機器101の制御部202は、インフラモードで使用する周波数帯域がDFS機能の実行を要求するかしないかに基づいて判定を行ってもよい。インフラモードで使用する周波数帯域がDFS機能の実行を要求する周波数帯域であると判定された場合、ソース機器101の制御部202は、通信モードとしてP2Pモードを選択する。一方、インフラモードで使用する周波数帯域がDFS機能の実行を要求しない周波数帯域であると判定された場合、ソース機器101の制御部202は、ステップS1304およびステップS1305の処理を行う。
以上、図13では、一方の通信モードが使用する周波数帯域がDFS機能の実行を要求し、他方の通信モードで使用する周波数帯域がDFS機能の実行を要求しない場合、ソース機器101はDFS機能の実行を要求しない通信モードを選択した。本フローチャートでは、DFS機能を実行させないことで、周波数帯域のスキャンや周波数チャネルの切り替えに伴い発生する通信の途切れを防ぐ。
なお、図12のフローチャートにおいて、両方の通信モードが使用する周波数帯域が5GHz帯であるため、ステップS1202でNoと判定された場合、ソース機器101の制御部202は、図13の処理を行ってもよい。この場合、ソース機器101の制御部202は、図13のステップS1301をスキップし、ステップS1302から処理を行ってもよい。
また、図12のフローチャートにおいて、ステップS1202でYesと判定された場合、周波数帯域として5GHz帯を使用する通信モードが、DFS機能の実行を要求する周波数帯域であるか否かに基づいて、ステップS1203の処理を変更してもよい。まず、一方の通信モードで使用する周波数帯域が2.4GHzで、もう一方の通信モードで使用する周波数帯域が5GHz帯に含まれ、かつDFS機能の実行を要求する周波数帯域である場合を想定する。この場合、ソース機器101の制御部202は、ステップS1203において、使用する周波数帯域が2.4GHzの通信モードを使用する通信モードを選択する。一方、一方の通信モードで使用する周波数帯域が2.4GHzで、もう一方の周波数帯域が5GHz帯に含まれ、かつDFS機能の実行を要求しない周波数帯域である場合を想定する。この場合、ソース機器101の制御部202は、ステップS1203において使用する周波数帯域が5GHz帯に含まれ、かつDFS機能の実行を要求しない周波数帯域である通信モードを選択する。
<実施形態5>
本実施例では、ソース機器101がミラーリングを行う際に、選択した通信モードに基づいてユーザに通知を行う。
本実施形態に係るソース機器101が参加するネットワークのネットワーク構成は、実施形態1の図1と同様である。また、本実施形態に係るソース機器101のハードウェア構成は、実施形態1の図2と同様である。
図14は、ソース機器101がシンク機器102を探索し、ミラーリングを開始する際に、記憶部201に記憶されたコンピュータプログラムを制御部202が読み出し、実行することで実現される処理の別のフローチャートを示す。
本フローチャートでは、ソース機器101がミラーリングを行う対向機を探索するが、これに限らず、シンク機器102がミラーリングを行う対向機を探索してもよい。
なお、図14に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
本フローチャートの処理は、ソース機器101において、ミラーリングを行う所定のアプリケーションが起動したことに基づいて開始される。あるいはソース機器101の電源が投入されたことにより開始してもよい。あるいはソース機器101が、AP103が構築するインフラストラクチャネットワークに参加したことに基づいて開始してもよい。あるいはソース機器101がシンク機器102とWi−Fi Direct規格に準拠したネットワークを確立したことに基づいて開始してもよい。
まず、ソース機器101の制御部202は、ユーザからミラーリングの開始操作を受け付ける(ステップS1401)。本ステップは、図3のステップS301と同様である。
続いてソース機器101の制御部202は、P2Pモードとインフラモードによる対向機(シンク機器102)の探索を行う(ステップS1402)。本ステップは、図3のステップS302と同様である。
ソース機器101の制御部202は、インフラモードおよびP2Pモードによるシンク機器102の探索を行うと、検出されたシンク機器102がインフラモードおよびP2Pモードの双方で検出されたか判定する(ステップS1403)。検出されたシンク機器102が、インフラモードおよびP2Pモードの双方で検出された場合(ステップS1403のYes)、ソース機器101の制御部202はステップS1405の処理を行う。一方、検出されたシンク機器102がインフラモードあるいはP2Pモードのどちらか一方でのみ検出された場合(ステップS1403のNo)、ソース機器101の制御部202はステップS1404の処理を行う。
ソース機器101の制御部202は、シンク機器102が検出された通信モードを、ユーザに推奨する通信モードとして選択し(ステップS1404)、ステップS1406の処理を行う。
ソース機器101の制御部202は、ユーザに推奨するシンク機器102との通信モードを選択する(ステップS1405)。本ステップは、図3のステップS308と同様である。本ステップは、図4のフローチャートに従って処理される。あるいは、ソース機器101の制御部202は、図9、図11、図12、図13の何れかのフローチャートに従って処理してもよいし、これらを組み合わせてユーザに推奨する通信モードを選択してもよい。ステップS1405の処理を行うと、ソース機器101の制御部202はステップS1406の処理を行う。
ソース機器101の制御部202は、ステップS1404あるいはステップS1405で行った推奨する通信モードの選択に基づいて、ステップS1402で行ったシンク機器の探索の結果を表示する(ステップS1406)。
図15にソース機器101がシンク機器102を探索した結果として表示する表示画面の別の一例を示す図である。探索結果画面1501には、ステップS1402で行ったシンク機器102の探索の結果として、検出されたシンク機器102の機器名が表示される。また、探索結果画面1501には、ステップS1404あるいはステップS1405で選択された通信モードに基づいた表示がされる。例えば、ソース機器101の制御部202は、P2Pモードとインフラモードで重複して検出され、ステップS1405でインフラモードが選択されたシンク機器102については、インフラモードを推奨することを示すためインフラモードを強調して表示する。あるいは、ソース機器101の制御部202は、インフラモードとP2Pモードとの両方で検出されたシンク機器102について、ステップS1405で選択された通信モードのみを表示してもよい。あるいは、ソース機器101の制御部202は、インフラモードとP2Pモードとの両方で検出されたシンク機器102について、ステップS1405で選択されなかった通信モードについて、ユーザが選択できないようにグレーアウトして表示してもよい。
なお、インフラモードあるいはP2Pモードの何れか一方でのみ検出されたシンク機器102については、ソース機器101の制御部202は、選択可能な通信モードとしてシンク機器102が検出された通信モードのみを表示する。あるいは、シンク機器102が検出されなかった方の通信モードは、表示をグレーアウトさせ通信モードとして選択できないようにしてもよい。
ソース機器101の制御部202は、ユーザがシンク機器102の探索をキャンセルしたか判定する(ステップS1407)。本ステップは、図3のステップS304と同様である。ユーザがシンク機器102の探索をキャンセルしたと判定すると(ステップS1407のYes)、ソース機器101の制御部202は本フローチャートの処理を終了する。一方、ユーザがシンク機器102の探索をキャンセルしなかったと判定すると(ステップS1407のNo)、ソース機器101の制御部202はステップS1408の処理を行う。
続いて、ソース機器101の制御部202は、ユーザがミラーリングを行うシンク機器102と、当該シンク機器102とミラーリングを行う際の通信モードを選択する選択処理が行われたか判定する(ステップS1408)。ユーザは、ステップS1406で表示された探索結果画面1501から、ミラーリングを行うシンク機器102と、当該シンク機器102との通信モードを選択する。なお、ユーザがステップS1405で選択された通信モードとは異なる通信モードを選択した場合、ユーザに選択した通信モードで通信を行うのか問合せを行ってもよい。
ステップS1409からステップS1412の処理は、図3のステップS309からステップS312と同様である。なおソース機器101の制御部202は、ステップS1408でユーザが選択した通信モードに基づいて、ステップS1409からステップS1412の処理を行う。
なお、本実施形態において、ソース機器101の制御部202は、P2P探索機能による探索とインフラ探索機能による探索との両方の探索で検出されたシンク機器102に対して、通信モードの選択を行い、選択した通信モードを考慮して探索結果を表示した。しかしこれに限らず、ソース機器101の制御部202は、ステップS1402の処理を行った後、ステップ図3のステップS303の処理を行ってもよい。具体的には、ソース機器101の制御部202は、P2P探索機能による探索とインフラ探索機能による探索との少なくとも何れか一方の探索で検出されたシンク機器102について探索結果に表示する。この場合に、ソース機器101の制御部202は、検出したシンク機器102について、P2P探索機能によって検出されたか、あるいはインフラ探索機能によって検出されたかを表示しなくてもよい。あるいはソース機器101の制御部202は、検出したシンク機器102の機器名のみ表示してもよい。ソース機器101の制御部202は、図3のステップS303の処理を行うと、ステップS304の処理を行う。ステップS304でユーザがシンク機器102の探索をキャンセルしなかったと判定すると、ソース機器101の制御部202はステップS305の判定を行う。ステップS305でユーザがシンク機器102を選択したと判定すると、ソース機器101の制御部202はステップS306の判定を行う。ソース機器101の制御部202は、ステップS305でユーザが選択したシンク機器102が、インフラ探索機能による探索とP2P探索機能による探索との両方で検出されたシンク機器であると判定すると、ステップS308の処理を行う。ステップS305で選択されたシンク機器102との通信モードを選択すると、ソース機器101の制御部202はユーザに対して、ステップS308で選択された通信モードを選択することを推奨する旨をユーザに通知するための表示を行う。さらに、ソース機器101の制御部202は、インフラモードとP2Pモードとの何れで選択されたシンク機器102と通信するかをユーザに選択させるための表示を行う。ユーザが通信モードを選択すると、ソース機器101の制御部202は、選択された通信モードでステップS1409からステップS1412の処理を行う。
これにより、ユーザは選択されたシンク機器102との通信で推奨される通信モードを認識できるため、シンク機器102との通信モードを選択しやすくなる。また、ソース機器101はP2Pモードによる探索とインフラモードによる探索との両方で検出され、かつユーザによって選択されたシンク機器102に対してのみ通信モードの選択処理を行うことになる。そのためソース機器101は、P2Pモードによる探索とインフラモードによる探索との両方で検出されたシンク機器102の全てに対して選択処理を行わないため、ソース機器101は余計な処理を行わなくてよくなる。そのためソース機器101の省電力性が向上する。
以上、本実施形態では、P2Pモードとインフラモードとの双方で検出されたシンク機器102に対して、ミラーリングを行う際の通信モードとして推奨する通信モードをソース機器101が自動的に選択した。これにより、ユーザは二つの通信モードで検出されたシンク機器102とミラーリングを行う際、通信モードを簡単に選択できるようになる。また、本実施形態では、ユーザが通信モードを選択することができるため、推奨の通信モードではない通信モードでミラーリングを行いたい場合にも対応できる。
なお、本実施形態では、ソース機器101の制御部202は、P2P探索機能による探索と、インフラ探索機能による探索との両方の探索で検出されたシンク機器102について、通信モードの選択を行った。しかし、これに限らず、ソース機器101の制御部202は、シンク機器102のP2Pモードとインフラモードとについて、夫々の通信品質をユーザに通知してもよい。他に、ソース機器101の制御部202は、シンク機器102のP2Pモードとインフラモードとについて、夫々の通信周波数をユーザに通知してもよい。
また、ソース機器101は、ユーザがシンク機器102を選択すると、ユーザが選択したシンク機器102とステップS1405で選択した通信モードで通信しても良いか問い合わせるようにしてもよい。具体的には、ソース機器101は、ステップS1406で、図3のステップS303と同様に探索結果を表示する。そして、ステップS1408でユーザがシンク機器102を選択すると、ソース機器101は選択されたシンク機器102がインフラ探索機能による探索と、P2P探索機能による探索との両方で検出されたシンク機器であるか判定する。選択されたシンク機器102が両方の探索機能による探索で検出されたシンク機器であった場合、ソース機器101は選択されたシンク機器102とステップS1405で選択された通信モードで通信しても良いかユーザに問い合わせる。ユーザがステップS1405で選択された通信モードでシンク機器102と通信してもよいと選択すると、ステップS1405で選択された通信モードでステップS1409以降の処理を行う。一方、ユーザがステップS1405で選択された通信モードでシンク機器102と通信しないと選択すると、ソース機器101はステップS1406の処理を行い、探索結果を再度表示する。あるいは、ユーザがステップS1405で選択された通信モードでシンク機器102と通信しないと選択した場合、ソース機器101はステップS1405で選択されなかった通信モードでステップS1409以降の処理を行ってもよい。なお、この場合、ステップS1403からステップS1405の処理は、ステップS1408でユーザが選択したシンク機器102に対してのみ行ってもよい。
なお、実施形態1、2、3、および4、において、図3のステップS308で行われる処理は、図4、図9、図11、図12、図13の何れかであるとした。しかしこれに限らずソース機器101は図4、図9、図11、図12、図13にある処理を組み合わせて、ステップS308の処理を行ってもよい。
なお、実施形態1、2、3、4、及び5において、ソース機器101はシンク機器102の探索を行い、検出したシンク機器102とミラーリングを開始した。しかし、これに限らず、ソース機器101は検出したシンク機器102とコンテンツリダイレクトやダイレクトストリーミングを開始してもよい。この場合、ソース機器101は、コンテンツリダイレクトやダイレクトストリーミングの開始操作を受け付けることで(図3のステップS301、図14のステップS1401)、P2Pモードやインフラモードによるシンク機器102の探索を行う。また、ソース機器101はシンク機器102とのセッションを確立すると(図3のステップS311、図14のステップS1411)、コンテンツリダイレクトやダイレクトストリーミングを開始する。
また、実施形態1、2、3、4、及び5において、ソース機器101がシンク機器102を探索し、シンク機器102とのセッションを確立した。しかしこれに限らず、シンク機器102がソース機器101を探索し、セッションを確立してもよい。具体的には図3のステップS301からステップS311においてソース機器101が行う処理を、シンク機器102が行ってもよい。この場合、ステップS312において、シンク機器102はソース機器101から送信される画像や音声のストリーミングを受信する。また、図14のステップS1401からステップS1411においてソース機器101が行う処理を行ってもよい。この場合、ステップS1412において、シンク機器102はソース機器101から送信される画像や音声のストリーミングを受信する。
なお、実施形態1、2、3、4、及び5において、ソース機器101はインフラモードでシンク機器102を探索する際、mDNSを利用して対向機の探索を行った。しかし、これに限らずSSDP(Simple Service Discovery Protocol)を利用して対向機の探索を行うUPnP(Universal Plug and Play)を利用してもよい。つまり、APを介して他の通信装置が提供するサービスを探索する通信規格を利用してシンク機器102の探索を行ってもよい。あるいは、ソース機器101はP2Pモードでシンク機器102を探索する際、Wi−Fi Direct規格に準拠してシンク機器102を探索し、検出したシンク機器102と無線通信を確立した。しかし、これに限らず、BluetoothやZigBeeなどAPを介さない無線通信を行うことができる他の無線通信規格に準拠してシンク機器102を探索し、検出したシンク機器102と無線通信を確立してもよい。
また、実施形態1、2、3、4、及び5において、ソース機器101はP2Pモードによりシンク機器102を探索する場合、Wi−Fi Miracast R2規格に準拠したシンク機器102を探索する。しかしこれだけではなく、ソース機器101は、Wi−Fi Miracast R1規格を含めたWi−Fi Miracast規格に準拠したシンク機器102を探索してもよい。
なお、実施形態1、2、3、4、5において、ソース機器101がAPと通信しており、検出したシンク機器102とP2Pモードで通信する場合、ソース機器101はユーザにAPとの通信が切断されることを通知してもよい。あるいは、ソース機器101はユーザにAPとの通信を切断してもよいか問い合わせを行ってもよい。ユーザがAPとの通信を切断してもよいと選択した場合、ソース機器101はAPとの通信を切断し、シンク機器102とP2Pモードで通信する。一方、ユーザがAPとの通信を切断してはいけないと選択し、シンク機器102がインフラモードによる探索でも検出されている場合、ソース機器101はシンク機器102とインフラモードで通信する。ユーザがAPとの通信を切断してはいけなと選択し、シンク機器102がインフラモードによる探索で検出されていない場合、ソース機器101はユーザに違うシンク機器を選択するように促す。
なお、実施形態1、2、3、4、5において、ソース機器101がAPと通信しており、検出したシンク機器102とP2Pモードで通信する場合、ソース機器101はシンク機器102との通信が切断された後、自動的に再度APと通信を行ってもよい。あるいは、シンク機器102がAPと通信しており、ソース機器101からP2Pモードによる通信を要求された場合、シンク機器102はソース機器101との通信が切断された後、自動的に再度APとの通信を行ってもよい。
なお、図3、図4、図9、図11、図12、図13、図14に示したソース機器101のフローチャートの少なくとも一部または全部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのコンピュータプログラムからFPGA上に専用回路を生成し、これを利用すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。図6、図7、図8に示したシーケンス図においても同様である。
また、図3、図4、図9、図11、図12、図13、図14に示したフローチャートや、図6、図7、図8に示したシーケンス図の各ステップを不図示の複数のCPUもしくは装置で分散して行うようにしてもよい。
以上、実施形態を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)などとしての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーションなど)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201 記憶部
202 制御部
203 機能部
204 入力部
205 出力部
206 通信部
207 アンテナ

Claims (27)

  1. 他の通信装置と直接無線通信する第一の通信手段と、
    無線ネットワークを構築する構築装置を介して他の通信装置と通信する第二の通信手段と、
    前記第一の通信手段により通信する他の通信装置を、前記構築装置を介さずに探索する第一の探索手段と、
    前記第二の通信手段により通信する他の通信装置を、前記構築装置を介して探索する第二の探索手段と、
    前記第一の探索手段による探索と前記第二の探索手段による探索との少なくとも一方で検出された他の通信装置の内、前記第一の通信手段あるいは前記第二の通信手段により通信する他の通信装置を選択するユーザ操作を受け付ける第一の受付手段と、
    前記ユーザ操作により選択された他の通信装置が前記第一の探索手段による探索と前記第二の探索手段による探索とで重複して検出された他の通信装置であることに応じて、該他の通信装置と前記第一の通信手段で通信するか、あるいは前記第二の通信手段で通信するかを、該他の通信装置との通信の状態と、前記通信装置に関する情報と、該他の通信装置に関する情報との少なくとも一つに基づいて選択する選択手段と、
    を有することを特徴とする通信装置。
  2. 前記選択手段により選択した通信手段で該他の通信装置と通信するように制御する制御手段を更に有することを特徴とする請求項1に記載の通信装置。
  3. 前記選択手段は、該他の通信装置との前記第一の通信手段による通信の品質と、該他の通信装置との前記第二の通信手段による通信の品質とに基づいて、通信の品質のよい方の通信手段で通信すると選択することを特徴とする請求項1または2に記載の通信装置。
  4. 前記選択手段は、該他の通信装置との前記第一の通信手段による通信で使用する周波数帯域と、該他の通信装置との前記第二の通信手段による通信で使用する周波数帯域とに基づいて、前記第一の通信手段で通信するか、あるいは前記第二の通信手段で通信するかを選択することを特徴とする請求項1または2に記載の通信装置。
  5. 前記選択手段は、該他の通信装置との前記第一の通信手段による通信で使用する周波数帯域と、該他の通信装置との前記第二の通信手段による通信で使用する周波数帯域とにおいて、一方の通信手段による通信で使用する周波数帯域が5GHz帯で、他方の通信手段による通信で使用する周波数帯域が2.4GHz帯である場合、使用する周波数帯域が5GHz帯である通信手段で通信すると選択することを特徴とする請求項4に記載の通信装置。
  6. 前記選択手段は、該他の通信装置との前記第一の通信手段による通信で使用する周波数帯域と、該他の通信装置との前記第二の通信手段による通信で使用する周波数帯域とにおいて、一方の通信手段による通信で使用する周波数帯域が5GHz帯に含まれる5.2GHz帯で、他方の通信手段による通信で使用する周波数帯域が5GHz帯に含まれる5.3GHz帯あるいは5.6GHz帯である場合、使用する周波数帯域が5.2GHz帯である通信手段で通信すると選択することを特徴とする請求項4に記載の通信装置。
  7. 前記選択手段は、前記通信装置が前記第一の通信手段あるいは前記第二の通信手段により通信するアプリケーションを既に実行している場合、該通信手段で通信すると選択することを特徴とする請求項1または2に記載の通信装置。
  8. 前記選択手段は、該他の通信装置とは異なる外部装置が記憶するコンテンツの関連情報を前記通信装置が送信することで、該他の通信装置に前記コンテンツを取得させることが可能である場合、前記第二の通信手段で通信すると選択することを特徴とする請求項1または2に記載の通信装置。
  9. 前記選択手段は、該他の通信装置とは異なる外部装置が記憶するコンテンツの関連情報を前記通信装置から受信することで該他の通信装置が前記コンテンツを取得することが可能である場合、前記第二の通信手段で通信すると選択することを特徴とする請求項1、2または8の何れか一項に記載の通信装置。
  10. 前記選択手段により選択した通信手段により通信する該他の通信装置に、前記通信装置が表示している画面の画像データと再生している音声の音声データとの少なくとも一方を送信する送信手段を更に有することを特徴とする請求項1から9の何れか一項に記載の通信装置。
  11. 他の通信装置と直接無線通信する第一の通信手段と、
    無線ネットワークを構築する構築装置を介して他の通信装置と通信する第二の通信手段と、
    前記第一の通信手段により通信する他の通信装置を、前記構築装置を介さずに探索する第一の探索手段と、
    前記第二の通信手段により通信する他の通信装置を、前記構築装置を介して探索する第二の探索手段と、
    前記第一の探索手段による探索と前記第二の探索手段による探索との少なくとも一方で検出された他の通信装置の内、前記第一の通信手段あるいは前記第二の通信手段により通信する他の通信装置を選択する第一のユーザ操作を受け付ける第一の受付手段と、
    前記第一のユーザ操作により選択された他の通信装置と前記第一の通信手段あるいは前記第二の通信手段の何れで通信するかをユーザに選択させる場合、該他の通信装置が前記第一の探索手段による探索と前記第二の探索手段による探索とで重複して検出された他の通信装置であることに応じて、該他の通信装置との通信の状態と、前記通信装置に関する情報と、該他の通信装置に関する情報との少なくとも一つに基づいた通知を行う通知手段と、
    を有することを特徴とする通信装置。
  12. 前記受付手段により受け付けた前記第一のユーザ操作により選択された該他の通信装置と、前記第一の通信手段により通信するか、あるいは前記第二の通信手段により通信するか選択する第二のユーザ操作を受け付ける第二の受付手段と、
    前記第二の受付手段により受け付けた前記第二のユーザ操作により選択された通信手段で該他の通信装置と通信するように制御する制御手段と、
    を更に有することを特徴とする請求項11に記載の通信装置。
  13. 前記通知手段は、該他の通信装置との前記第一の通信手段による通信の品質と、該他の通信装置との前記第二の通信手段による通信の品質とに基づいて、通信の品質のよい方の通信手段をユーザに通知することを特徴とする請求項11または12に記載の通信装置。
  14. 前記通知手段は、該他の通信装置との前記第一の通信手段による通信で使用する周波数帯域と、該他の通信装置との前記第二の通信手段による通信で使用する周波数帯域とに基づいて、前記第一の通信手段、あるいは前記第二の通信手段で通信するようユーザに通知することを特徴とする請求項11または12に記載の通信装置。
  15. 前記通知手段は、該他の通信装置との前記第一の通信手段による通信で使用する周波数帯域と、該他の通信装置との前記第二の通信手段による通信で使用する周波数帯域とにおいて、一方の通信手段による通信で使用する周波数帯域が5GHz帯で、他方の通信手段による通信で使用する周波数帯域が2.4GHz帯である場合、使用する周波数帯域が5GHz帯である通信手段で通信するようユーザに通知することを特徴とする請求項14に記載の通信装置。
  16. 前記通知手段は、該他の通信装置との前記第一の通信手段による通信で使用する周波数帯域と、該他の通信装置との前記第二の通信手段による通信で使用する周波数帯域とにおいて、一方の通信手段による通信で使用する周波数帯域が5GHz帯に含まれる5.2GHz帯で、他方の通信手段による通信で使用する周波数帯域が5GHz帯に含まれる5.3GHz帯あるいは5.6GHz帯である場合、使用する周波数帯域が5.2GHz帯である通信手段で通信するようユーザに通知することを特徴とする請求項14に記載の通信装置。
  17. 前記通知手段は、前記通信装置が前記第一の通信手段あるいは前記第二の通信手段により通信するアプリケーションを既に実行している場合、該通信手段で通信するようユーザに通知することを特徴とする請求項11または12に記載の通信装置。
  18. 前記通知手段は、該他の通信装置とは異なる外部装置が記憶するコンテンツの関連情報を前記通信装置が送信することで該他の通信装置に前記コンテンツを取得させることが可能である場合、前記第二の通信手段で通信するようユーザに通知することを特徴とする請求項11または12に記載の通信装置。
  19. 前記通知手段は、該他の通信装置とは異なる外部装置が記憶するコンテンツの関連情報を前記通信装置から受信することで該他の通信装置が前記コンテンツを取得することが可能である場合、前記第二の通信手段で通信するようユーザに通知することを特徴とする請求項11、12、または18の何れか一項に記載の通信装置。
  20. 前記第二の受付手段により受け付けた前記第二のユーザ操作に基づく通信手段により通信する該他の通信装置に、前記通信装置が表示している画面の画像データと再生している音声の音声データとの少なくとも一方を送信する送信手段と、
    を更に有することを特徴とする請求項11から19の何れか一項に記載の通信装置。
  21. 前記第一の通信手段は、Wi−Fi Direct規格に準拠して他の通信装置と直接無線通信することを特徴とする請求項1から20の何れか一項に記載の通信装置。
  22. 前記第二の通信手段は、IEEE802.11シリーズ規格に準拠したインフラストラクチャネットワークを構築するアクセスポイントを介して他の通信装置と通信することを特徴とする請求項1から21の何れか一項に記載の通信装置。
  23. 前記第一の探索手段による探索は、Wi−Fi Miracast R2(Release2)規格に準拠して、Wi−Fi Display Information Element(WFD IE)を含むプローブ要求を送信することで行われることを特徴とする請求項1から22の何れか一項に記載の通信装置。
  24. 前記第二の探索手段は、multicast Domain Name System(mDNS)によって他の通信装置を探索することを特徴とする請求項1から23の何れか一項に記載の通信装置。
  25. 通信装置の制御方法であって、
    直接無線通信する他の通信装置を、無線ネットワークを構築する構築装置を介さずに探索する第一の探索工程と、
    前記構築装置を介して通信する他の通信装置を、前記構築装置を介して探索する第二の探索工程と、
    前記第一の探索工程による探索と前記第二の探索工程による探索との少なくとも一方で検出された他の通信装置の内、前記直接無線通信による通信あるいは前記構築装置を介した通信を行う他の通信装置を選択するユーザ操作を受け付ける受付工程と、
    前記ユーザ操作により選択された他の通信装置が前記第一の探索工程による探索と前記第二の探索工程による探索との両方で検出された他の通信装置であることに応じて、該他の通信装置との通信の状態と、前記通信装置に関する情報と、該他の通信装置に関する情報との少なくとも一つに基づいて、該他の通信装置と直接無線通信するか、あるいは前記他の通信装置と前記構築装置を介して通信するかを選択する選択工程と、
    を有することを特徴とする制御方法。
  26. 通信装置の制御方法であって、
    直接無線通信する他の通信装置を、無線ネットワークを構築する構築装置を介さずに探索する第一の探索工程と、
    前記構築装置を介して通信する他の通信装置を、前記構築装置を介して探索する第二の探索工程と、
    前記第一の探索工程による探索と前記第二の探索工程による探索との少なくとも一方で検出された他の通信装置の内、前記直接無線通信による通信あるいは前記構築装置を介した通信を行う他の通信装置を選択するユーザ操作を受け付ける受付工程と、
    前記ユーザ操作により選択された他の通信装置と直接無線通信するか、あるいは前記構築装置を介して通信するかをユーザに選択させる場合、該他の通信装置が前記第一の探索工程による探索と前記第二の探索工程による探索とで重複して検出された他の通信装置であることに応じて、該他の通信装置との通信の状態と、前記通信装置に関する情報と、該他の通信装置に関する情報との少なくとも一つに基づいた通知を行う通知工程と、
    を有することを特徴とする制御方法。
  27. コンピュータを請求項1から24の何れか一項に記載の通信装置の各手段として機能させるためのプログラム。
JP2017248477A 2017-12-25 2017-12-25 通信装置、制御方法、およびプログラム Pending JP2019114989A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017248477A JP2019114989A (ja) 2017-12-25 2017-12-25 通信装置、制御方法、およびプログラム
KR1020180161533A KR102439933B1 (ko) 2017-12-25 2018-12-14 통신장치, 제어방법, 기억매체 및 프로그램
US16/224,294 US10912013B2 (en) 2017-12-25 2018-12-18 Communication apparatus, control method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017248477A JP2019114989A (ja) 2017-12-25 2017-12-25 通信装置、制御方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2019114989A true JP2019114989A (ja) 2019-07-11

Family

ID=66949054

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017248477A Pending JP2019114989A (ja) 2017-12-25 2017-12-25 通信装置、制御方法、およびプログラム

Country Status (3)

Country Link
US (1) US10912013B2 (ja)
JP (1) JP2019114989A (ja)
KR (1) KR102439933B1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10849171B2 (en) * 2015-11-19 2020-11-24 Sony Corporation Device and method for maintaining a security level
JP7199825B2 (ja) * 2018-04-26 2023-01-06 キヤノン株式会社 通信システム、制御方法、及びプログラム
KR20200084587A (ko) * 2019-01-03 2020-07-13 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
KR20210123927A (ko) * 2020-04-06 2021-10-14 엘지전자 주식회사 무선 디바이스

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110090833A1 (en) 2009-10-21 2011-04-21 Nokia Corporation Group addressed frame delivery in wireless networks
US8417286B2 (en) * 2010-01-06 2013-04-09 Rfaxis, Inc. Transmit-receive radio frequency front end integrated circuits for laptop computer applications
EP2537099B1 (en) 2010-02-15 2016-01-06 Telefonaktiebolaget L M Ericsson (PUBL) Network node for detecting a communication device
US20120179737A1 (en) 2010-05-27 2012-07-12 Victor Baranov System and method for searching for mobile devices, and for establishing connections and data exchange between the mobile devices
KR101762607B1 (ko) * 2011-02-11 2017-07-31 삼성전자 주식회사 휴대 단말기 및 그의 무선 장치 탐색 방법
US8934437B2 (en) * 2012-05-11 2015-01-13 Intel Corporation Apparatus and method to establish a device-to-device (D2D) connection in a 3GPP-LTE network using a distributed channel scan
JP6253250B2 (ja) 2013-05-01 2017-12-27 キヤノン株式会社 通信装置、通信装置の制御方法、プログラム
KR101542922B1 (ko) * 2013-05-31 2015-08-10 동국대학교 산학협력단 파라미터에 기반하는 m2m 통신 네트워크 구성
JP2015036900A (ja) * 2013-08-13 2015-02-23 キヤノン株式会社 情報処理装置およびその制御方法、プログラム
KR20160045062A (ko) * 2013-08-20 2016-04-26 엘지전자 주식회사 직접 통신을 이용한 타 기기의 원격 제어 방법 및 이를 위한 장치
KR102071579B1 (ko) 2013-09-02 2020-01-30 삼성전자주식회사 화면 미러링을 이용한 서비스 제공 방법 및 그 장치
JP6179397B2 (ja) * 2013-12-27 2017-08-16 ブラザー工業株式会社 接続管理プログラム、情報処理装置および情報処理装置の制御方法
JP6405162B2 (ja) * 2014-09-03 2018-10-17 キヤノン株式会社 通信装置、その制御方法、およびプログラム
WO2017043775A1 (ko) * 2015-09-09 2017-03-16 엘지전자 주식회사 Wfd에서 메타데이터를 전송하는 방법 및 장치
JP6579882B2 (ja) * 2015-09-24 2019-09-25 キヤノン株式会社 通信装置、制御方法、及びプログラム

Also Published As

Publication number Publication date
US20190200281A1 (en) 2019-06-27
KR20190077221A (ko) 2019-07-03
KR102439933B1 (ko) 2022-09-05
US10912013B2 (en) 2021-02-02

Similar Documents

Publication Publication Date Title
KR102400856B1 (ko) 통신장치, 제어방법, 및 프로그램
KR102439933B1 (ko) 통신장치, 제어방법, 기억매체 및 프로그램
WO2016163181A1 (ja) 情報処理装置、情報処理方法およびプログラム
US11435973B2 (en) Communication apparatus, communication method, and storage medium
US10075517B2 (en) Display apparatus and control method thereof
EP3376771A1 (en) Communication apparatus, communication system, communication method, and program
US11457267B2 (en) Communication apparatus, communication method, and storage medium
US10649723B2 (en) Communication device, control method, and storage medium
WO2017018042A1 (ja) 情報処理装置及び情報処理方法、並びにソース機器
KR102436891B1 (ko) 통신장치, 제어 방법, 프로그램 및 기억매체
JP2019215762A (ja) 通信装置、制御方法、および、プログラム
KR20180121379A (ko) 통신 장치, 제어 방법, 프로그램 및 기록매체
JP7146473B2 (ja) 通信装置、通信方法、およびプログラム
JP6783524B2 (ja) 通信装置、制御方法、および、プログラム
JP2017037531A (ja) 通信装置及びその制御方法ならびにプログラム
JP7118764B2 (ja) 通信装置、制御方法、およびプログラム
JP2019169870A (ja) 通信装置、制御方法、およびプログラム
JP2017085246A (ja) 通信装置およびその制御方法、通信システムとプログラム