以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
1.第1の実施の形態(マルチシンク・トポロジを構築する例)
2.第2の実施の形態(無線通信方式を加味した上位レイヤの設定や変更を行う例)
3.応用例
<1.第1の実施の形態>
[通信システムの構成例]
図1は、本技術の第1の実施の形態における通信システム10のシステム構成例を示すブロック図である。図1では、P2P(Peer to Peer)ダイレクト通信を用いたマルチシンク・トポロジ環境の無線接続を行うことができる通信システムの一例を示す。
通信システム10は、ソース機器(情報処理装置)100と、第1シンク機器(情報処理装置)200と、第2シンク機器(情報処理装置)300とを備える。また、図1では、通信システム10は、ソース機器100から送信されるデータ(例えば、画像データや音声データ)を第1シンク機器200および第2シンク機器300が受信する通信システムの一例である。
また、ソース機器100、第1シンク機器200、第2シンク機器300は、無線通信機能を備える送受信機器(情報処理装置)である。例えば、ソース機器100、第1シンク機器200、第2シンク機器300は、無線通信機能を備える表示装置(例えば、パーソナルコンピュータ)や携帯型の情報処理装置(例えば、スマートフォン、タブレット端末)である。また、例えば、ソース機器100、第1シンク機器200、第2シンク機器300は、IEEE(Institute of Electrical and Electronics Engineers)802.11、IEEE802.15、IEEE802.16、3GPP(3rd Generation Partnership Project)仕様(例えば、W−CDMA(Wideband Code Division Multiple Access)、GSM(登録商標)(Global System for Mobile Communications)、WiMAX(Worldwide Interoperability for Microwave Access)、WiMAX2、LTE(Long Term Evolution)、LTE−A(Advanced))、LAA(Licensed Assisted Access using LTE)に準拠した無線通信装置である。そして、ソース機器100、第1シンク機器200、第2シンク機器300は、無線通信機能を利用して各種情報のやりとりを行うことができる。
ここで、第1シンク機器200、第2シンク機器300は、ソース機器100から送信されるデータを受信する機器である。このため、ソース機器100および第2シンク機器300間のやりとりは、ソース機器100および第1シンク機器200間のやりとりと同等である。そこで、本技術の実施の形態では、ソース機器100および第2シンク機器300間のやりとりの説明を省略し、主に、ソース機器100および第1シンク機器200間のやりとり(例えば、接続方法)を例にして説明する。また、本技術の実施の形態では、ソース機器100および第1シンク機器200は、無線LAN(Local Area Network)を用いた無線通信を行う場合の例について説明する。
この無線LANとして、例えば、Infrastructureモード(Wi−Fi Infrastructureモード)、Wi−Fi(Wireless Fidelity) Direct、TDLS(Tunneled Direct Link Setup)、アドホックネットワーク、メッシュネットワークを用いることができる。また、通信システム10に用いられる近距離無線AV(Audio Visual)伝送通信として、例えば、Wi−Fi CERTIFIED Miracast(技術仕様書名:Wi−Fi Display)を用いることができる。なお、Wi−Fi CERTIFIED Miracastは、Wi−Fi DirectやTDLSの技術を利用して、一方の端末で再生される音声や表示画像を他の端末に送信し、他の端末でも同様にその音声、画像データを出力させるミラーリング技術である。
また、Wi−Fi CERTIFIED Miracastでは、TCP/IP(Transmission Control Protocol/Internet Protocol)上でUIBC(User Input Back Channel)を実現している。UIBCは、一方の端末から他方の端末へマウスやキーボード等の入力機器の操作情報を送信する技術である。なお、Wi−Fi CERTIFIED Miracastの代わりに、他のリモートデスクトップソフトウェア(例えば、VNC(Virtual Network Computing))を適用するようにしてもよい。
ここで、Wi−Fi CERTIFIED Miracastでは、画像(映像)を、例えば、H.264を用いて圧縮・展開することが定められている。また、例えば、Wi−Fi CERTIFIED Miracastでは、H.264を送信側で調整することができる。なお、H.264に限らず、例えば、H.265(例えば、HEVC(high efficiency video coding)、SHVC(scalable video coding extensions of high efficiency video coding))、MPEG(Moving Picture Experts Group)4、JPEG(Joint 1Photographic Experts Group)2000にも対応することができる。また、例えば、1ライン以上を束ねて圧縮したり、2ライン以上を2×2以上のマクロブロックに分割して圧縮・展開を行うラインベースコーデック(例えば、Wavelet、DCT(Discrete Cosine Transform))にも対応することができる。また、例えば、特定の符号量領域(Pictureまたは複数ラインの束またはマクロブロック等)の前符号量領域との差分を求めることでDCTやWavelet等の圧縮を行わずに伝送レートを減らすコーデックにも対応することができる。また、非圧縮で画像(映像)を送信・受信するようにしてもよい。
また、例えば、ソース機器100は、撮像動作により生成された画像データおよび音声データを送信対象とすることができる。また、例えば、ソース機器100は、記憶部(例えば、ハードディスク)に保存されているコンテンツ(例えば、画像データおよび音声データからなるコンテンツ)を送信対象とすることができる。なお、ソース機器100、第1シンク機器200、第2シンク機器300として、カメラを搭載した電子機器(例えば、パソコン、ゲーム機、スマートフォン、タブレット端末)を用いるようにしてもよい。また、ソース機器100、第1シンク機器200、第2シンク機器300として、表示部を備える他の電子機器(例えば、撮像装置、ゲーム機、スマートフォン、タブレット端末)を用いるようにしてもよい。また、ソース機器100がテザリング機能を備える場合には、無線または有線ネットワークを介してISP(Internet Services Provider)に保存されたコンテンツを送信対象とするようにしてもよい。
例えば、ソース機器100の撮像動作により生成された画像データが第1シンク機器200に送信され、その画像データに基づく画像11が第1シンク機器200の表示部251に表示される。
また、図1では、P2Pダイレクト接続により、無線通信を利用してソース機器100が直接通信することができる範囲を情報伝達範囲15として示す。この情報伝達範囲15は、ソース機器100を基準とした場合における情報伝達範囲(サービス範囲)である。
[マルチシンク・トポロジの構築例]
次に、マルチシンク・トポロジの構築方法について説明する。
図2は、本技術の基礎となるソース機器41、シンク機器42およびシンク機器43の通信処理例を示すシーケンスチャートである。具体的には、図2には、P2Pダイレクト接続からマルチシンク・トポロジ環境を構築するまでの基本的な流れを示す。図2では、ソース機器41が、シンク機器42とP2Pダイレクト通信で接続している環境において、シンク機器43がグループに参入する場合の例を示す。
図2に示すように、ソース機器41をP2P GO(グループオーナー)21とし、シンク機器42をP2Pクライアント22とするグループ20が形成されているものとする。すなわち、ソース機器41は既にP2P GO21として、シンク機器42(P2Pクライアント22)と接続済である。また、シンク機器43は、P2Pダイレクト接続が可能なP2Pデバイス23であるものとする。
最初に、ソース機器41からシンク機器43にInvitation Request処理を行う(24)。または、シンク機器43からソース機器41にProvision Discovery処理を行うようにしてもよい。
このように、Invitation Request処理が行われると(24)、シンク機器43からソース機器41にInvitation Response処理が返信される(25)。また、ソース機器41およびシンク機器43間で、WPS(Wi-Fi Protected Setup)実行(26)、4−way handshake(認証手続き)(27)が行われる。
これらの各処理によって、ソース機器41は、シンク機器43を新たなP2Pクライアント31として接続する。これにより、ソース機器41をP2P GO29とし、シンク機器42およびシンク機器43をP2Pクライアント30、31とするグループ28が形成される。
続いて、ソース機器41は、シンク機器42およびシンク機器43のそれぞれとの間で、お互いにサービスディスカバリー(32、33)を行うことにより、マルチシンク・トポロジを構築する。
このように、トポロジが構築された後に、ソース機器41からシンク機器42またはシンク機器43に送信されて表示されるコンテンツは、同じコンテンツ(画像)でもよく、異なるコンテンツ(画像)でもよい。例えば、シンク機器42には、ソース機器41に表示された画像をそのまま送信し、シンク機器43には、ソース機器41の記憶部に保存されているコンテンツを送信することもできる。
[ソース機器(情報処理装置)の構成例]
図3は、本技術の第1の実施の形態におけるソース機器(情報処理装置)100の機能構成例を示すブロック図である。
ソース機器100は、アンテナ110と、無線通信部120と、制御信号受信部130と、制御部140と、画像・音声信号生成部150と、画像・音声圧縮部160と、ストリーム送信部170と、操作受付部180と、表示部190とを備える。
無線通信部120は、制御部140の制御に基づいて、無線通信を利用して、他の情報処理装置(例えば、第1シンク機器200)との間で各情報(例えば、画像データおよび音声データ)の送受信をアンテナ110を介して行うものである。例えば、画像データの送信処理が行われる場合には、画像・音声信号生成部150により生成された画像データが画像・音声圧縮部160により圧縮され、この圧縮された画像データ(画像ストリーム)が無線通信部120を経由してアンテナ110から送信される。
また、無線通信部120は、複数の周波数チャネルを利用して、他の情報処理装置(例えば、第1シンク機器200)との間で各情報の送受信を行うことが可能であるものとする。本技術の第1の実施の形態では、無線通信部120が、2.4GHz、5GHz、60GHzの3種類の周波数チャネルを同時または選択した周波数のみを送受信可能な機能を備える例を示す。このように、ソース機器が、複数の周波数チャネルを送受信可能な機能を備える場合には、シンク機器(例えば、第1シンク機器200)は、各ソース機器にどの周波数チャネルを使用させるかを制御することができる。
制御信号受信部130は、無線通信部120により受信された各情報のうちから、他の情報処理装置(例えば、第1シンク機器200)から送信された制御信号(例えば、第1シンク機器200とのやりとりの情報)を取得するものである。そして、制御信号受信部130は、その取得された制御信号を制御部140に出力する。
制御部140は、ソース機器100から送信される各情報に関する制御を行うものである。例えば、制御部140は、制御信号受信部130により受信された制御信号に基づいて、画像・音声信号生成部150および画像・音声圧縮部160に対する制御を行う。例えば、制御部140は、送信対象となる画像データの解像度や音声のチャネル数を変更させるための制御や、送信対象となる画像データの画像領域を変更させるための制御を行う。すなわち、制御部140は、制御信号受信部130により受信された制御信号に基づいて、送信対象となるストリームの伝送制御を行う。このストリームの伝送制御は、例えば、データ伝送速度制御、スケーラビリティ伝送レート制御である。
また、制御部140は、無線通信を利用してシンク機器との間でデータの送受信が行われている際における電波伝搬状況(リンク電波伝搬状況)を測定する機能を備え、その測定結果(電波伝搬測定情報)をシンク機器に送信するようにしてもよい。
ここで、電波伝搬測定情報は、例えば、シンク機器との回線品質が、画像データおよび音声データの送受信を行うことができる品質であるか否かを判断する際に用いられる情報である。また、電波伝搬測定情報は、例えば、ストリームの伝送制御を行う際に用いられる。
ここで、データ伝送速度は、主に、通信路を占有する率を意味し、通信速度や通信容量の意味を含むものとする。また、解像度は、例えば、画像データの画枠(縦・横のピクセル数)、画像データのビットレート(圧縮率)等の要素から構成される画質の指標と定義する。また、画質の指標としては、ストリームのスループットを用いることができる。また、音声のチャネル数は、モノラル(1.0ch)、ステレオ(2.0ch)、5.1ch、 6.1ch、 9.1ch、ハイレゾ(ハイレゾリューションオーディオ(High-Resolution Audio))等の音声の記録再生方法の意味を含むものとする。また、音声のチャネル数は、音声データのビットレート(圧縮率)やチャネル数等の要素から構成される音質の指標と定義する。また、音質の指標としては、ストリームのスループットを用いることができる。
また、制御部140は、データレート制御では安定化することができない状態を改善させるための制御を行う。例えば、制御部140は、シンク機器(例えば、第1シンク機器200)との情報のやりとりにより、シンク機器のシステム性能情報を把握する。ここで、システム性能情報は、例えば、シンク機器のシステムに関する性能情報である。例えば、システム性能情報は、使用可能な周波数チャネル、解像度、TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)である。また、システム性能情報は、例えば、暗号化方法の対応、SD(Standard Definition)/HD(High Definition)/4K対応、低消費電力モードの対応のそれぞれを示す情報である。例えば、制御部140は、シンク機器が低消費電力モードに対応しているか否かに応じて、通信システム10のシステム全体の安定度をさらに向上させるストリームの伝送制御方法を選ぶことができる。
例えば、制御部140は、第1シンク機器200との情報のやりとりの中に、ソース機器100がモバイル機器であるかどうかの情報を入れるものとする。例えば、ソース機器100に関するCapability情報に、ソース機器100がモバイル機器であるかどうかの情報を含めることができる。また、第1シンク機器200は、ソース機器100がモバイル機器であることを把握すると、他に接続した情報処理装置との関連に基づいて、ソース機器100を動作させる必要がないと判断することができる。このように、ソース機器100を動作させる必要がないと判断された場合には、ソース機器100は、第1シンク機器200から送信停止コマンドを受信する。そして、制御部140は、その送信停止コマンドを把握すると、画像・音声信号生成部150と、画像・音声圧縮部160と、ストリーム送信部170とのそれぞれの機能の電源を一定時間ダウンさせることができる。また、制御部140は、無線通信部120についても間欠受信(第1シンク機器200からコマンドを受信できる程度に定期的に起き上がり、他は電源をダウンさせるモード)に移行することができる。
画像・音声信号生成部150は、制御部140の制御に基づいて、出力対象となるデータ(画像データ、音声データ)を生成するものであり、生成されたデータを画像・音声圧縮部160に出力する。例えば、画像・音声信号生成部150は、撮像部(図示せず)および音声取得部(図示せず)を備える。この撮像部(例えば、レンズ、撮像素子、信号処理回路)は、被写体を撮像して画像(画像データ)を生成するものである。また、音声取得部(例えば、マイク)は、その画像データの生成時における周囲の音声を取得するものである。このように生成されたデータは、他の情報処理装置(例えば、第1シンク機器200)への送信対象となる。
画像・音声圧縮部160は、制御部140の制御に基づいて、画像・音声信号生成部150により生成されたデータ(画像データおよび音声データ)を圧縮(エンコード)するものである。そして、画像・音声圧縮部160は、その圧縮されたデータ(画像データおよび音声データ)をストリーム送信部170に出力する。なお、画像・音声圧縮部160は、ソフトウェアによるエンコードの実行により実現するようにしてもよく、ハードウエアによるエンコードの実行により実現するようにしてもよい。また、画像・音声圧縮部160は、コーデックとして機能することを想定しているが、非圧縮の画像または音声を扱えるものとする。さらに、画像・音声圧縮部160は、スケーラブル・コーデックとしても機能するものとする。ここで、スケーラブル・コーデックは、例えば、受信側の情報処理装置(シンク機器)の解像度やネットワーク環境等に応じて、自在に適応することができるコーデックを意味する。
ストリーム送信部170は、制御部140の制御に基づいて、画像・音声圧縮部160により圧縮されたデータ(画像データおよび音声データ)をストリームとして無線通信部120を経由してアンテナ110から送信する送信処理を行うものである。
操作受付部180は、ユーザにより行われた操作入力を受け付ける操作受付部であり、例えば、キーボード、マウス、ゲームパッド、タッチパネル、カメラ、マイクである。なお、操作受付部180および表示部190については、使用者がその指を表示面に接触または近接することにより操作入力を行うことが可能なタッチパネルを用いて一体で構成することができる。
表示部190は、例えば、画像・音声信号生成部150により生成された画像を表示する表示部である。なお、表示部190として、各種の表示パネルを用いることができる。例えば、有機EL(Electro Luminescence)、クリスタルLED(Light Emitting Diode)ディスプレイ(Crystal LED Display)、LCD(Liquid Crystal Display)を用いることができる。
なお、ソース機器100は、上述した各部以外にも、音声出力部等を備えることができるが、これらについては、図3での図示を省略する。また、ソース機器100が、送信対象となる画像データおよび音声データを生成する例を示すが、ソース機器100は、送信対象となる画像データおよび音声データを外部装置から取得するようにしてもよい。例えば、ソース機器100は、マイクロフォン付きのWebカメラから、送信対象となる画像データおよび音声データを取得するようにしてもよい。また、ソース機器100は、ソース機器100の内部、外部にかかわらず、記憶装置(例えば、ハードディスク)に保存されているコンテンツ(例えば、画像データおよび音声データからなるコンテンツ)を送信対象とするようにしてもよい。この場合に、その記憶装置に保存されているコンテンツが圧縮済のコンテンツである場合も想定される。この場合に、その圧縮済のコンテンツが、通信システム10で採用されている規格で定義されたエンコード方式で圧縮されている場合には、その圧縮済のコンテンツを復号(デコード)せずにそのまま送信するようにしてもよい。
ソース機器100の音声出力部(図示せず)は、例えば、画像・音声信号生成部150により生成された音声を出力する音声出力部(例えば、スピーカ)である。なお、画像については、ソース機器およびシンク機器の双方から出力することもできるが、音声については何れか一方のみから出力することが好ましい。
[シンク機器(情報処理装置)の構成例]
図4は、本技術の第1の実施の形態における第1シンク機器(情報処理装置)200の機能構成例を示すブロック図である。なお、第2シンク機器300の機能構成(無線通信に関する機能構成)については、第1シンク機器200と略同様であるため、ここでの説明を省略する。
第1シンク機器200は、アンテナ210と、無線通信部220と、ストリーム受信部230と、画像・音声展開部240と、画像・音声出力部250と、ユーザ情報取得部260と、制御部270と、制御信号送信部280と、管理情報保持部290とを備える。
無線通信部220は、制御部270の制御に基づいて、無線通信を利用して、他の情報処理装置(例えば、ソース機器100)との間で各情報(例えば、画像データおよび音声データ)の送受信をアンテナ210を介して行うものである。例えば、画像データの受信処理が行われる場合には、アンテナ210により受信された画像データが、無線通信部220、ストリーム受信部230を経由して画像・音声展開部240により展開(復号)される。そして、その展開された画像データが画像・音声出力部250に供給され、その展開された画像データに応じた画像が画像・音声出力部250から出力される。すなわち、その展開された画像データに応じた画像が表示部251に表示される。
また、無線通信部220は、複数の周波数チャネルを利用して、他の情報処理装置(例えば、ソース機器100)との間で各情報の送受信を行うことが可能であるものとする。本技術の第1の実施の形態では、無線通信部220が、2.4GHz、5GHz、60GHzの3種類の周波数チャネルを同時または選択した周波数のみを送受信可能な機能を備える例を示す。すなわち、無線通信部220は、第1の周波数帯を用いる通信と、第1の周波数帯よりも高速なデータ伝送速度の第2の周波数帯を用いる通信とを行うことが可能である。また、制御部270は、各ソース機器との無線通信に、複数の周波数チャネルのうちのどの周波数チャネルを使用させるかを制御することができる。また、ソース機器100の制御部140は、各シンク機器との無線通信に、複数の周波数チャネルのうちのどの周波数チャネルを使用させるかを制御することができる。
なお、ソース機器100および第1シンク機器200間のリンクと、ソース機器100および第2シンク機器300間のリンクとは同一の周波数チャネルとするようにしてもよく、異なる周波数チャネルとするようにしてもよい。
また、本技術の第1の実施の形態では、無線通信部220が、2.4GHz、5GHz、60GHzの3種類の周波数チャネルを送受信可能な機能を備える例を示すが、これに限定されない。例えば、無線通信部220が、他の周波数チャネルや、2または4以上の周波数チャネルを送受信可能な機能を備えるようにしてもよい。
ストリーム受信部230は、制御部270の制御に基づいて、無線通信部220により受信された各情報のうちから、各ソース機器とのやりとりの情報およびストリーム(例えば、画像ストリーム、音声ストリーム)を受信するものである。そして、ストリーム受信部230は、受信したコマンド情報を制御部270に出力し、受信したストリームを画像・音声展開部240および制御部270に出力する。
ここで、各ソース機器とのやりとりの情報は、ソース機器(例えば、ソース機器100)から送信される情報であり、例えば、第1シンク機器200のシステム性能情報の取得要求を含む。このシステム性能情報は、例えば、使用可能な周波数チャネル、解像度、TCP、UDPや、暗号化方法の対応、SD/HD/4K対応、低消費電力モードの対応のそれぞれを示す情報である。
また、ストリーム受信部230は、無線通信を利用してシンク機器との間でデータの送受信が行われている際における電波伝搬状況(リンク電波伝搬状況)を測定する機能を備える。そして、ストリーム受信部230は、その測定結果(電波伝搬測定情報)を制御部270に出力する。
画像・音声展開部240は、制御部270の制御に基づいて、他の情報処理装置(例えば、ソース機器100)から送信されたストリーム(画像データおよび音声データ)を展開(デコード)するものである。そして、画像・音声展開部240は、その展開されたデータ(画像データおよび音声データ)を画像・音声出力部250に出力する。なお、画像・音声展開部240は、ソフトウェアによるデコードの実行により実現するようにしてもよく、ハードウエアによるデコードの実行により実現するようにしてもよい。また、画像・音声展開部240は、コーデックとして機能することを想定しているが、非圧縮の画像または音声を扱えるものとする。また、画像・音声展開部240は、スケーラブル・コーデックとしても機能するものとする。
画像・音声出力部250は、表示部251および音声出力部252を備える。
表示部251は、画像・音声展開部240により展開された画像データに基づく各画像を表示する表示部である。なお、表示部251として、例えば、有機ELパネル、クリスタルLEDディスプレイ、LCDパネル等の表示パネルを用いることができる。なお、表示部251として、使用者がその指を表示面に接触または近接することにより操作入力を行うことが可能なタッチパネルを用いるようにしてもよい。
音声出力部252は、画像・音声展開部240により展開された音声データに基づく各種音声(表示部251に表示された画像に関する音声等)を出力する音声出力部(例えば、スピーカ)である。ここで、音声の出力方法としては、例えば、中央チャネル(メイン画像)に割り当てられたソース機器の音声のみをスピーカから再生して周辺チャネル(サブ画像)に割り当てられたソース機器の音声を再生しない方法を用いることができる。また、他の音声の出力方法として、例えば、中央チャネルに割り当てられたソース機器の音声の音量をメインにして、周辺チャネルに割り当てられたソース機器の音声の音量を下げて再生する方法を用いることができる。なお、これら以外の音声の出力方法を用いるようにしてもよい。
ユーザ情報取得部260は、ユーザに関する情報(ユーザ情報)を取得するものであり、その取得されたユーザ情報を制御部270に出力する。例えば、ユーザ情報取得部260は、ユーザが表示方法を直接設定することができる操作受付部(キーボード、マウス、リモコン、ゲームパッド、タッチパネル)からの入力を受け付けることによりユーザ情報を取得することができる。なお、操作受付部は、例えば、表示部251に表示される画像における任意の領域を指定するための操作部材である。また、例えば、ユーザ情報取得部260は、カメラ、マイク、各種センサ(例えば、ジャイロセンサ、人体を感知するセンサ)等のようにユーザの意図を把握することができるデバイスからの入力を受け付けることによりユーザ情報を取得することができる。
例えば、ユーザ情報取得部260は、無線通信を利用して他の情報処理装置(例えば、ソース機器100)から受信したストリームに基づく情報が画像・音声出力部250から出力されている際におけるユーザ動作により生じるユーザ情報を取得する。このユーザ情報は、例えば、表示部251に表示されている画像に関するユーザ動作により生じるユーザ情報である。例えば、ユーザ情報は、表示部251に表示されている画像に関するユーザ操作に基づいて生成される情報である。
例えば、ユーザ情報取得部260は、表示部に付属する撮像部(省略)により生成された画像データを取得してユーザ情報を生成することができる。また、例えば、ユーザ情報取得部260は、外部装置(例えば、各センサ、ウェアラブルデバイス)により取得される情報(例えば、位置情報、識別情報)を取得してユーザ情報を生成するようにしてもよい。
制御部270は、ストリーム受信部230により取得された各情報を管理情報保持部290に保持させ、管理情報保持部290に保持されている管理情報に基づいて各ソース機器を管理するものである。また、制御部270は、複数のソース機器から送信されるストリームをシステム全体で安定度が向上するようにストリームの伝送制御を行う。
例えば、制御部270は、ユーザ情報取得部260により取得されたユーザ情報と、管理情報保持部290に保持されている管理情報とに基づいてストリームの伝送制御を行う。具体的には、制御部270は、管理情報保持部290に保持されている管理情報に基づいて、ストリームの伝送制御を行うための制御信号をソース機器毎に生成する。そして、制御部270は、その生成された制御信号を制御信号送信部280に出力する。例えば、制御部270は、ユーザ情報および管理情報に基づいて、表示部251に表示される画像の解像度を変更し、この解像度と同等の送信レートを各ソース機器に要求するための制御信号を生成する。また、例えば、制御部270は、ユーザ情報および管理情報に基づいて、表示部251における画像の表示領域を決定するための制御信号を生成する。また、例えば、制御部270は、ユーザ情報および管理情報に基づいて、表示部251における画像のサイズを決定するための制御信号を生成する。
また、制御部270は、ユーザ情報および管理情報に基づいて、使用する周波数チャネルと解像度を設定するための制御を行う。例えば、制御部270は、無線通信部220が備える複数の周波数チャネルについて、使用する周波数チャネルをソース機器毎に設定する。また、制御部270は、周波数チャネル毎に、消費電力モードが異なる場合には、それぞれのモードを把握し、モバイル機器の消費電力をケアした周波数チャネルを設定することができるようにする。すなわち、制御部270は、第1の周波数帯に関する第1の消費電力モードと、第1の周波数帯よりも高速なデータ伝送速度の第2の周波数帯に関する第2の消費電力モードを別々に設定することができる。
制御信号送信部280は、制御部270から出力された制御信号を無線通信部220、アンテナ210を介して、他の無線通信装置に送信する送信処理を行うものである。
[Wi−Fi CERTIFIED Miracast仕様コマンドを用いたやりとりの通信例]
図5は、本技術の第1の実施の形態におけるソース機器100および第1シンク機器200間における通信処理例を示すシーケンスチャートである。図5では、RTSPプロトコルを用いたやりとりの通信例を示す。
例えば、図5の点線の矩形400内に示すように、ソース機器100から第1シンク機器200に送信される「RTSP M3 Request」(RTSP GET_PARAMETER Request)メッセージと、これに応答して第1シンク機器200からソース機器100に送信される「RTSP M3 Response」(RTSP GET_PARAMETER Response)メッセージとを用いることができる。
一方、ソース機器100から第1シンク機器200に適宜送信するようにしてもよい。例えば、「RTSP M3 Request」(RTSP GET_PARAMETER Request)メッセージと、「RTSP M3 Response」(RTSP GET_PARAMETER Response)メッセージとのやりとりを省略し、ソース機器100から第1シンク機器200に送信されるメッセージに管理情報を含めて、ソース機器100から第1シンク機器200に管理情報を送信し、第1シンク機器200が情報を選択して管理情報保持部290(図4に示す)に保持するようにしてもよい。また、コンテンツプロテクション設定を行う場合、M3 Response後にリンクプロテクションセットアップを行い、その後、M4以上のメッセージに関する秘話性を確保したまま、通信を行ってもよい。
ここで、ソース機器100が、RTSP M3 Responseとして第1シンク機器200から受信する情報は、次の(1)乃至(11)の各情報とすることができる。
(1)Audio format(s) supported by the WFD Sink.
(2)video format(s) support by the WFD Sink.
(3)3D formats supported by the WFD Sink.
(4)The HDCP system 2.0/2.1/2.2 support/control port.
(5)Available EDID information of display attached to the WFD Sink.
(6)Coupled WFD Sink information.
(7)RTP port(s) the WFD Sink(s) listen on.
(8)Supports I2C commands and port number.
(9)UIBC capability supported.
(10)WFD Source uses this parameter to obtain the connector type currently active on the WFD Sink.
(11)Indicate the support for standby and resume control using RTSP.
なお、図5では、図1に示すソース機器100および第2シンク機器300の接続シーケンスについて説明をしたが、ソース機器100および第2シンク機器300の接続シーケンスにおいても同様の接続シーケンスが行われる。
[ソース機器の動作例]
図6は、本技術の第1の実施の形態におけるソース機器100によるマルチシンク接続処理の処理手順の一例を示すフローチャートである。
図6では、P2Pダイレクト接続を用いた環境において、P2Pダイレクト接続からマルチシンク・トポロジ環境を構築するまでの基本的な動作例を示す。
最初に、ソース機器100の制御部140は、グループに参入するシンク機器の存在を検出した場合には、接続数を複数にして送信することが可能であるか否かを判断する(ステップS801)。なお、既に複数のシンク機器が接続されている場合には、さらに接続数を追加して送信することが可能であるか否かが判断される(ステップS801)。接続数を複数にして送信することが不可能である場合には(ステップS801)、マルチシンク接続処理の動作を終了する。
接続数を複数にして送信することが可能である場合には(ステップS801)、制御部140は、マルチシンク伝送方式能力に関する情報のやりとりをシンク機器との間で行う(ステップS802)。
続いて、制御部140は、接続対象となるシンク機器にメディアデータを送信するための通信経路(例えば、パスの数)およびデータ伝送フォーマットを決定する(ステップS803)。ここで、メディアデータは、ソース機器からシンク機器への送信対象となるデータであり、例えば、画像データ、音声データ、制御データの少なくとも1つである。また、例えば、制御部140は、シンク機器との間でやりとりされるIE(Information Element)に含まれる内容に基づいて、Infra(Infrastructure)モード、TDLSモード、P2Pモードの何れかを通信経路として決定することができる。また、例えば、制御部140は、シンク機器との間でやりとりされるIE(Information Element)に含まれる内容に基づいて、その通信経路において使用されるデータ伝送フォーマットを決定することができる。なお、ここで示す決定内容は一例であり、他の通信経路、他のデータ伝送フォーマットを決定するようにしてもよい。
[マルチシンク・トポロジ環境を構築する場合の通信例]
図7は、本技術の第1の実施の形態における通信システム10を構成する各機器間における通信処理例を示すシーケンスチャートである。
図7では、Wi−Fi CERTIFIED Miracastに代表されるP2Pダイレクト接続を用いた環境において、P2Pダイレクト接続からマルチシンク・トポロジ環境を構築するまでの基本的な流れを示す。
また、図7では、ソース機器100が第1シンク機器200とP2Pダイレクト通信で接続している環境において、第2シンク機器300がグループ参入する場合の例を示す。
なお、図7に示す処理(402、403)は、図6に示す処理(ステップS801)に対応する。また、図7に示す処理(404)は、図6に示す処理(ステップS802)に対応する。また、図7に示す処理(405、406)は、図6に示す処理(ステップS803)に対応する。
なお、図7に示す例では、ソース機器100の処理の流れがP2Pダイレクト接続とは異なる。このため、以下では、その異なる点を中心にして説明する。
ソース機器100は、GOとしてP2Pクライアント(第1シンク機器200)と接続済であるものとする(401)。また、ソース機器100は、第1シンク機器200が利用可能な伝送フォーマットとして第1フォーマットを用いて画像伝送を行うものとする(401)。
この場合に、第2シンク機器300がグループに参入する場合には、ソース機器100は、第2シンク機器300にInvitation Request処理を行う(402)。なお、第2シンク機器300からソース機器100にProvision Discovery処理を行うようにしてもよい。ただし、ここでは、ソース機器100がInvitation Request処理を行う例について説明する。
ソース機器100から第2シンク機器300にInvitation Request処理が行われると(402)、第2シンク機器300からソース機器100にInvitation Response処理を返信する(403)。この場合に、ソース機器100は、接続中の第1シンク機器200だけでなく、新たな第2シンク機器300と接続するため、同時接続台数が2以上の台数であることを第2シンク機器300に対し、デバイス情報またはサービス情報として通知する。
この通知方法としては、次の(a)乃至(d)のうちの少なくとも1つのやりとりにより行うことができるものとする。
(a)P2P IE(Information Element)
(b)WFD IE(Information Element)
(c)ASP(Application Service Platform)(例えば、ASPのフォーマットコマンドで新規フォーマット)
(d)UPnP(Universal Plug and Play)標準でのプロトコル
また、Invitation Response処理(403)により、ソース機器100は、第2シンク機器300を新たなP2Pクライアントとして接続し、アソシエーション処理(404)を行う。このアソシエーション処理は、Group Formation処理、例えば、4−way handshake、IPアサイン等の処理である。
また、ソース機器100および第2シンク機器300は、お互いにサービスディスカバリーを行う(405)。本処理によって把握した情報を参考に、ソース機器100をソース機器とし、第1シンク機器200および第2シンク機器300をシンク機器とするマルチシンク・トポロジを構築する(406乃至408)。
例えば、ソース機器100は、P2Pダイレクト回線毎に安定したデータ伝送を行うため、2つのデータパス(第1シンク機器200および第2シンク機器300のそれぞれの送信分)を生成することを決定することができる。そして、ソース機器100は、2つのデータパスを利用してメディアデータ(画像データや音声データ)を送信する(409)。
このように、マルチシンク・トポロジが構築される。この構築後には、ソース機器100から第1シンク機器200または第2シンク機器300に送信されて表示されるコンテンツは、同じコンテンツ(画像)でもよく、異なるコンテンツ(画像)でもよい。例えば、第1シンク機器200には、ソース機器100に表示された画像をそのまま送信し、第2シンク機器300には、ソース機器100の記憶部に保存されているコンテンツを送信するようにしてもよい。また、ソース機器100から第1シンク機器200または第2シンク機器300には、画像データのみ、または、音声データのみを送信するようにしてもよい。
ここで、上述したデバイス情報またはサービス情報を用いてやりとりするCapability情報として、次の(A)乃至(C)の各情報をやりとりすることができる(例えば、図7に示す405)。これらの各情報は、例えば、ソース機器がシンク機器へ送信する情報、または、ソース機器がシンク機器から受け取る情報として、やりとりされる。
(A)シンク機器がメディア伝送に使用するデータ伝送フォーマットの種類(例えば、シンク機器のDecode能力)
(B)新規参入するシンク機器が使用可能なデータ伝送フォーマットへの切替を許可するか否か(例えば、解像度、画質または音質、画像停止・再生または音声停止・再生等の設定変更を行っても正常動作する機能の有無。また、この情報を受け付けるタイミングがCapability Negotiation時、画像伝送または音声伝送の途中で可能か否か)
(C)ソース機器が使用可能なHDCP(High-bandwidth Digital Content Protection system)の暗号鍵の数(例えば、ソース機器がHDCPを使用する必要があるときに、ソース機器が複数の暗号鍵を管理する機能の有無)
ソース機器100は、このように取得された各情報により特定される条件(例えば、能力、機能の有無)に基づいて、画像データまたは音声データを生成するための、共有するグループを把握し、最小限のデータパスを生成する。
[ソース機器の動作例]
図8は、本技術の第1の実施の形態におけるソース機器100によるマルチシンク接続処理の処理手順の一例を示すフローチャートである。図8には、マルチシンク・トポロジにおいて、最小限のデータパスを生成するためのマルチシンク接続処理の一例を示す。具体的には、ソース機器100が第1シンク機器200と接続している環境において、新たに第2シンク機器300が接続する場合のソース機器100のマルチシンク接続処理の一例を示す。
最初に、ソース機器100の制御部140は、第1シンク機器200と接続中に、第2シンク機器300にInvitation Requstパケットを送信する(ステップS811)。これにより、ソース機器100は、第2シンク機器300に対し、ソース機器100との接続を招待する旨を通知する。
続いて、ソース機器100の制御部140は、第2シンク機器300が第1フォーマットに対応しているか否かを確認する(ステップS812)。ここで、第1フォーマットは、ソース機器100に接続中の第1シンク機器200が使用している画像伝送フォーマットであるものとする。
例えば、ソース機器100の制御部140は、上述した(a)乃至(d)の何れか1つ、または、複数の情報を用いて、第2シンク機器300が第1フォーマットに対応しているか否かを確認することができる。
第2シンク機器300が第1フォーマットに対応している場合には(ステップS812)、制御部140は、HDCPセッションキーを更新する(ステップS813)。なお、HDCPセッションキーの更新は、HDCPが必要な場合に行われる。
続いて、制御部140は、第1シンク機器200および第2シンク機器300に第1フォーマットを用いて、コンテンツを送信する(ステップS814)。
第2シンク機器300が第1フォーマットに未対応である場合には(ステップS814)、制御部140は、第1シンク機器200が他の機器からの要求に応じて、各種の切替(または、フォールバック)を許可しているか否かを確認する(ステップS815)。その切替は、例えば、解像度の切替、画像圧縮方式の切替、画質の切替、画像のOnOff、音質の切替、音声圧縮方式の切替、音声のOnOff等である。
例えば、ソース機器100は、第1シンク機器200と接続する際のCapability Negotiationで、事前にその確認を行うことができる。また、例えば、ソース機器100は、新たなシンク機器が接続される毎にその確認を行うようにしてもよい。
また、例えば、第1シンク機器200および第2シンク機器300の性能が異なる場合には、各種の切替(または、フォールバック)を許可しないことが好ましいことも想定される。例えば、第1シンク機器200が4K解像度に対応する機器であるのに対し、第2シンク機器300がHD(High Definition)に対応する機器である場合を想定する。この場合に、ソース機器100が、4K解像度に対応する画像を伝送する場合には、第1シンク機器200の解像度をHDに落としたくないと考えるユーザも存在すると想定される。そこで、制御部140は、第1シンク機器200および第2シンク機器300の性能、環境等に基づいて、各種の切替(または、フォールバック)を許可するか否かを確認するようにしてもよい(ステップS815)。
第1シンク機器200が各種の切替(または、フォールバック)を許可している場合には(ステップS815)、制御部140は、第1シンク機器200および第2シンク機器300の双方が対応可能な共通フォーマット(第2フォーマット)を選択する(ステップS816)。そして、制御部140は、HDCPが必要な場合には、HDCPセッションキーの更新を行う(ステップS816)。
続いて、制御部140は、第1シンク機器200および第2シンク機器300に第2フォーマットを用いて、コンテンツを送信する(ステップS817)。
なお、このように伝送されるパケット(点線の矩形90)については、マルチキャストまたはユニキャストの何れか、または、適宜、切り替えても両方で送信するようにしてもよい。
第1シンク機器200が各種の切替(または、フォールバック)を許可していない場合には(ステップS815)、制御部140は、第1シンク機器200および第2シンク機器300に異なるフォーマットで伝送できるか否かを確認する(ステップS818)。
ここで、第1シンク機器200および第2シンク機器300に異なるフォーマットで伝送する場合には、シンク機器の台数分だけ異なるメディアデータ(例えば、画像データ、音声データ、制御データ)を生成する必要がある。このため、ソース機器100の制御部140は、自装置が特定の能力を備えるか否かを判断する。例えば、制御部140は、シンク機器の台数だけのメディアデータの圧縮能力があるか否か、複数のデータパスを管理する能力があるか否か(セッションの暗号化等の処理や伝送速度が要求パフォーマンスを満たすか否かの確認も含む)を判断する。また、送信対象のメディアデータがプレミアムコンテンツである場合には、複数のメディアデータの暗号化を行うことができる否かの確認を行うようにする。
第1シンク機器200および第2シンク機器300に異なるフォーマットで伝送できる場合には(ステップS818)、制御部140は、第1シンク機器200および第2シンク機器300のそれぞれに異なるフォーマットを指定する処理を行う(ステップS819)。例えば、第1シンク機器200には第1フォーマットを指定し、第2シンク機器300には第2フォーマットを指定することができる。
続いて、制御部140は、第1シンク機器200および第2シンク機器300のそれぞれに異なるフォーマットを用いて、コンテンツを送信する(ステップS820)。例えば、制御部140は、第1シンク機器200には第1フォーマットを用いて送信を行い、第2シンク機器300には第2フォーマットを用いて送信を行うことができる(ステップS820)。
第1シンク機器200および第2シンク機器300に異なるフォーマットで伝送できない場合には(ステップS818)、第1シンク機器200および第2シンク機器300の何れか一方のみに送信することができる。そこで、制御部140は、接続対象となるシンク機器を決定する(ステップS821)。
例えば、制御部140は、シンク機器の優先度に基づいて、接続対象となるシンク機器を決定することができる(ステップS821)。この優先度として、例えば、シンク機器のIntent Valueを用いることができる。また、Intent Valueに類似した優先度設定情報を新設し、やりとりしてもよい。また、例えば、送信対象となるコンテンツの種類、ソース機器およびシンク機器の組み合わせに基づいて、接続対象となるシンク機器を決定するようにしてもよい。例えば、送信対象となるコンテンツが映画である場合には、シンク機器の表示部のサイズを優先度(サイズが大きくなるに応じて優先度が高い)として、接続対象となるシンク機器を決定することができる。
第2シンク機器300との接続を優先すると判断された場合には(ステップS821)、制御部140は、第1シンク機器200との接続を切断させる切断処理を行う(ステップS822)。続いて、制御部140は、第2シンク機器300との接続を開始し、第2フォーマットを用いて第2シンク機器300への送信を行う(ステップS823)。
また、第1シンク機器200との接続を優先すると判断された場合には(ステップS821)、制御部140は、第2シンク機器300との接続を切断させる切断処理を行う(ステップS824)。すなわち、ソース機器100および第2シンク機器300の接続処理により、第2シンク機器300との接続が無線層では接続されているため、切断処理を行う。なお、ステップS811乃至S824は、請求の範囲に記載の情報処理方法における制御、コンピュータに実行させる制御の一例である。
このように、ソース機器100の制御部140は、第1シンク機器200との間でメディア伝送を行っている間に第2シンク機器300との間で新たにメディア伝送を行うことができる。ここで、メディア伝送は、例えば、Wi−Fi CERTIFIED Miracast仕様に従って他の機器との間で行うリアルタイム画像伝送やリアルタイム音声伝送である。また、第2シンク機器300が新たに参入する場合には、ソース機器100の制御部140は、機器発見処理(例えば、Deivce Descovery、Service Descovery)または能力確認処理(例えば、Capability Negotiation)において、各情報(例えば、上述した(A)乃至(C)のうちの少なくとも1つ)のやりとりを行う。そして、ソース機器100の制御部140は、その情報に基づいて、第1シンク機器200および第2シンク機器300のそれぞれにメディア伝送を行うための通信経路と、メディア伝送を行う際に用いるデータ伝送フォーマットとのうちの少なくとも1つを決定する。
例えば、ソース機器100の制御部140は、やりとりされた情報と、ソース機器100が備える符号化処理に関する能力およびその処理可能数の少なくとも1つとに基づいて、通信経路またはデータ伝送フォーマットを決定することができる。また、例えば、HDCPによる暗号化が必要な場合には、ソース機器100の制御部140は、やりとりされた情報と、ソース機器100が備える符号化処理に関する能力およびその処理可能数の少なくとも1つと、ソース機器100が備えるHDCPの暗号鍵の処理に関する能力およびその処理可能数の少なくとも1つとに基づいて、通信経路またはデータ伝送フォーマットを決定することができる。
また、ソース機器100の制御部140は、そのやりとりされた情報に基づいて、第1シンク機器200および第2シンク機器300のそれぞれとの間でメディア伝送を行うことができるか否かを判断することができる。そして、ソース機器100の制御部140は、それぞれとの間でメディア伝送を行うことができないと判断された場合には、相手機器を第1シンク機器200から第2シンク機器300に切り替えることができる。
ここで、上述した確認方法として、Probe RequestやProbe Responseのペイロード部分にWFD IEをカプセル化させた例、制御可能なDeivce DescoveryまたはService Descoveryの制御方法の例について説明する。
図9乃至図13は、本技術の第1の実施の形態における通信システム10を構成する各機器間によりやりとりされるWFD IEフォーマットの一例を示す図である。
図14は、本技術の第1の実施の形態における通信システム10を構成する各機器間によりやりとりされるASP(Application Service Platform)用の新規メッセージの一例を示す図である。
図9乃至図13に示すWFD IEは、通信システム10を構成する各機器間でP2P接続によりやりとりすることができる。また、図9乃至図13に示すWFD IEは、通信システム10を構成する各機器間で、アクセスポイント(例えば、図18に示すアクセスポイント500)を経由してやりとりすることができる。ここでは、アクセスポイントを経由する例について説明する。例えば、ソース機器100は、アクセスポイントを経由して、第2シンク機器300へProbe Requestを送信し、P2P接続可能な装置をサーチする。
例えば、第2シンク機器300がP2P接続可能な装置である場合には、アクセスポイントを経由して、Probe Responseを受信することにより、P2P接続で使用する周波数チャネルを検出することが可能となる。ここでは、第2シンク機器300がP2P接続可能な機器であることを想定し、Probe Responseを受信できたことを前提にして説明する。
上述した処理によって、ソース機器100は、第2シンク機器300とP2P接続するための周波数チャネルを把握し、P2P接続のコネクションを確立する。
P2P接続のコネクションを確立後、ソース機器100は、第2シンク機器300とTCPコネクションまたはRTSPコネクションのリンクを確立した後に、上述した(a)乃至(d)のうちの少なくとも1つのやりとりを行う。
例えば、Probe RequestやProbe Responseのペイロード部分にWFD IEをカプセル化させ、やりとりする方法について説明する。
上述した(b)のWFD IEを用いたフォーマット例を、図9乃至図13に示す。図9乃至図11は、既にMiracast Release1で割り当てられているフォーマットである。ただし、図11に示すSubelement ID(11)に、新規のビットを割り当てる。具体的には、このSubelement ID(11)に対応する新規Fieldについては、図12、図13に示す。
図13において、New Device Informationフィールドの[5:0]は、第2シンク機器300がP2P接続において、最適な周波数チャネルを判断するための情報である。
上述した(a)乃至(c)の何れか1つを用いたシーケンスの過程で、ソース機器100は、各情報を把握することにより、第2シンク機器300とのP2P接続において、最適な周波数チャネルを判断することができる。例えば、TDLS方式を用いて、第2シンク機器300とアクセスする場合、アクセスポイントおよび第2シンク機器300間のアソシエイトされた周波数情報(図13に示す[23:14]のフィールド)を用いることができる。また、例えば、第2シンク機器300の無線回線のコンカレント情報(図13に示す[5:2]のフィールド)を用いることができる。このコンカレント情報は、例えば、同じ周波数チャネルの時分割接続、違う周波数チャネルの時分割接続、同じ周波数チャネルの同時接続、違う周波数チャネルの同時接続等の接続形態が可能か否かの情報である(図13に示す[5:2]のフィールド)。また、例えば、無線機能としての端末能力(図13に示す[13:8]のフィールド)を用いることができる。
ここで、コンカレント機能について説明する。コンカレント機能は、例えば、ソース機器が、1つ以上のシンク機器にコンカレントセッションを構築可能な機能を意味する。また、コンカレント機能は、例えば、シンク機器が、1つ以上のソース機器にコンカレントセッションを構築可能な機能を意味する。
また、コンカレント機能は、例えば、全てのP2Pデバイスが、Wi−Fi Infraモードで同一のIPサブネットに接続されているときに、2つ以上のソース機器とWi−Fi InfraモードでIPネットワーク上にコンカレントセッションを構築できる機能を意味する。また、コンカレント機能は、例えば、全てのP2Pデバイスが、Wi−Fi Infraモードで同一のIPサブネットに接続されているときに、2つ以上のシンク機器とWi−Fi InfraモードでIPネットワーク上にコンカレントセッションを構築できる機能を意味する。
また、コンカレント機能は、例えば、シンク機器が、同一のチャネルで2つ以上のソース機器とP2Pコネクション上でコンカレントセッションを構築できる機能を意味する。また、コンカレント機能は、例えば、ソース機器が、同一のチャネルで2つ以上のシンク機器とP2Pコネクション上でコンカレントセッションを構築できる機能を意味する。
また、コンカレント機能は、例えば、シンク機器が、サポートされたシンク機器最大接続数とコンカレントセッション接続可能残数等の情報を通知する機能を意味する。また、また、コンカレント機能は、例えば、ソース機器が、サポートされたソース機器最大接続数とコンカレントセッション接続可能残数等の情報を通知する機能を意味する。
また、コンカレント機能は、例えば、同時利用可能なコンカレントセッションのシンク機器数を通知することができる定義をする。また、コンカレント機能は、例えば、同時利用可能なコンカレントセッションのソース機器数を通知することができる定義をする。
また、アクセスポイントおよび第2シンク機器300間がEthernet(登録商標)ケーブルやUSB(Universal Serial Bus)ケーブル・コネクタのように有線接続またはコネクタ接続されている場合もある。この場合、第2シンク機器300が、アクセスポイントとの接続が有線であること(図13に示す[1:0])と、P2P接続用無線を備えるか否かとをソース機器100に通知する。これにより、ソース機器100は、最適な周波数チャネルを判断することができる。例えば、第2シンク機器300が、有線回線にのみ対応する場合には、P2P接続へ移行せずにそのままアクセスポイントと接続する。一方、第2シンク機器300が、無線回線にも対応する場合には、サポートする周波数チャネルの1つを選択して接続することが可能である。
以上が、Probe RequestやProbe Responseのペイロード部分にWFD IEをカプセル化させた例であるが、本技術はこれに限定されない。
例えば、Wi−Fi Direct ServicesのDisplay Servieを使う場合には、ASP準拠のメッセージを介してデバイス間でService Capability情報を交換することができる。具体的には、WFD IEに含まれる情報を、4bit毎に区切って16進数にしたものをtext stringとしたものを送受信する。さらに、WFD IEに含まれる情報は現時点の仕様に限らない。例えば、図14に示すService Capability情報をペイロードに含むようにしてもよい。
また、図8では、ソース機器100が、一度接続した第2シンク機器300との接続を4つの判断基準(図8に示すステップS812、S815、S818、S821)に基づいて、切断するか否かを判断する例を示すが、これに限定されない。例えば、最初の判断の時点で、第2シンク機器300との接続を行うべきか否かを判断することができれば、無駄な接続を行わなくてもよい。そこで、この例を図15に示す。
[ソース機器の動作例]
図15は、本技術の第1の実施の形態におけるソース機器100によるマルチシンク接続処理の処理手順の一例を示すフローチャートである。なお、図15は、図8の変形例であるため、図8と共通する処理手順には図8と同一の符号を付してこれらの説明の一部を省略する。
ソース機器100の制御部140は、第2シンク機器300にInvitation Requstパケットを送信する(ステップS811)。そして、制御部140は、第2シンク機器300との接続前の情報通知により、4つの判断基準(図8に示すステップS812、S815、S818、S821)に該当するか否かを判断する(ステップS830)。
そして、4つの判断基準の何れかに該当する場合には(ステップS830)、ステップS812に進む。一方、4つの判断基準の何れにも該当しない場合には(ステップS830)、マルチシンク接続処理の動作を終了する。
このように、第2シンク機器300との接続前の情報通知により、4つの判断基準に該当するか否かを事前に判断する処理(ステップS830)を行うことにより、一度、ソース機器100と接続した後に情報のやりとりを行い、その結果、該当する処理がないため、切断する等の無駄な接続処理、切断処理を行うことを防止することができる。
ここで、ソース機器100が、接続前に第2シンク機器300の能力を把握する方法として、例えば、P2P IE、WFD IE等の情報を含めて、ビーコンまたはProbe Requestメッセージをやりとりする方法を用いることができる。
このように、ソース機器100の制御部140は、やりとりされた情報に基づいて、第2シンク機器300との間でメディア伝送を行うことができるか否かを判断することができる。そして、ソース機器100の制御部140は、第2シンク機器300との間でメディア伝送を行うことができないと判断された場合には、第2シンク機器300との接続処理を行わない。これにより、第2シンク機器300が無駄に接続処理や切断処理を行うことなく、接続前に接続可能か否かを判断することができる。また、上述した4つの判断基準(図8に示すステップS812、S815、S818、S821)に基づく判断およびそれに関する情報のやりとりは、新たなシンク機器が参入するタイミングで行うようにしてもよい。また、上述した4つの判断基準(図8に示すステップS812、S815、S818、S821)に基づく判断およびその判断に関する情報のやりとりは、図5に示すメッセージングにおいて、何れかで確認作業を行うようにしてもよい。例えば、その判断に関する情報のやりとりを、図5の点線の矩形400内に示すメッセージにより事前に行うようにしてもよい。
ここで、上述したように、第2シンク機器300がソース機器100に接続することができないことも想定される。このような場合には、ソース機器100または第2シンク機器300は、相手機器との接続ができない旨をポップアップ画面等の通知手段を用いてユーザに通知することが好ましい。そこで、この通知例を図16に示す。また、第2シンク機器300がソース機器100に接続することができた場合にも、その旨をポップアップ画面等の通知手段を用いてユーザに通知するようにしてもよい。そこで、この通知例を図17に示す。
[相手機器との接続ができない旨をユーザに通知する例]
図16は、本技術の第1の実施の形態におけるソース機器100および第2シンク機器300に表示される通知画面の一例を示す図である。
図16のaは、ソース機器100の表示部190に表示される通知画面420を示す。また、図16のbは、第2シンク機器300の表示部301に表示される通知画面425を示す。これらの通知画面420、425は、例えば、ポップアップ画面として表示することができる。また、これらの通知画面420、425を確認した場合には、ユーザは、確認ボタン421、426を押下することにより、通知画面420、425を消去することができる。なお、確認ボタン421、426が押下された後に、再接続をするための操作画面を表示するようにしてもよく、接続が失敗した原因を表示する画面を表示するようにしてもよい。
このように、ソース機器100の制御部140は、第2シンク機器300との間でメディア伝送を行うことができないと判断された場合には、その旨を通知するための通知情報(例えば、通知画面420、425)をユーザに提供することができる。なお、その通知情報を伝送する方法として、例えば、次の(N1)乃至(N3)の何れか1つで伝送するようにしてもよく、適宜、最適な方式を選択するようにしてもよい。
(N1)ソース画像(例えば、Wi−Fi CERTIFIED Miracast仕様に従ってソース機器からシンク機器に送信される画像)に通知情報(例えば、通知画面420、425)を重畳させたものをエンコードして伝送する伝送方法
(N2)ソース画像と通知情報とを別々にエンコードして伝送する伝送方法(例えば、ソース画像を動画とし、通知情報を静止画として伝送するようにしてもよい)
(N3)ソース画像と通知情報とを制御データとして伝送する伝送方法(例えば、HTTP(HyperText Transfer Protocol)、XML(Extensible Markup Language)、WebSocketを利用して伝送することができる)
[相手機器との接続が成功した旨をユーザに通知する例]
図17は、本技術の第1の実施の形態におけるソース機器100および第2シンク機器300に表示される通知画面の一例を示す図である。
図17のaは、ソース機器100の表示部190に表示される通知画面430を示す。また、図17のbは、第2シンク機器300の表示部301に表示される通知画面435を示す。これらの通知画面430、435は、例えば、ポップアップ画面として表示することができる。また、これらの通知画面430、435を確認した場合には、ユーザは、確認ボタン431、436を押下することにより、通知画面430、435を消去することができる。
このように、ソース機器100の制御部140は、能力確認処理において、第2シンク機器300との間で新たにメディア伝送を行うための接続処理に関する通知情報(例えば、図16、図17に示す通知画面)をユーザに提供することができる。これにより、トポロジ変更をユーザに通知することができる。
また、ソース機器100の制御部140は、ポップアップ(例えば、図16、図17に示す通知画面)は、第1シンク機器200に送信する画像または音声とは別に管理を行うことができる。この場合には、ソース機器100の制御部140は、ユーザ設定または所定規則に基づいて、ポップアップを表示させるための情報を、第1シンク機器200に送信するようにしてもよく、送信しないようにしてもよい。
このように、ソース機器100の制御部140は、能力確認処理において、メディア伝送の対象となる画像情報(例えば、図16、図17に示す牛の画像)と、通知情報(例えば、図16、図17に示す通知画面)とを異なる管理とすることができる。これにより、接続途中で第1シンク機器200とは関係ないポップアップを表示させないことができ、リアルタイム性が必要な医療機器や車載機器でも、通常のサービスを提供することができる。
なお、本技術は、これらに限定されない。例えば、図7、図8、図15では、ソース機器100は、第2シンク機器300に対し、Invitation Requestパケットを送信する例を示したが、これに限定されない。例えば、第2シンク機器300からソース機器100に対し、Provision Requestパケットを送信することにより接続を要求するようにしてもよい。
また、本技術の第1の実施の形態では、シンク機器が2台の場合の例を示したが、台数には制限がないものとする。また、ユーザへの通知として、通知画面(例えば、図16、図17に示す通知画面)を表示する代わりに、または、通知画面の表示とともに、その旨のメッセージを音声出力するようにしてもよい。また、振動による通知やその他の通知手段を用いてユーザへの通知を行うようにしてもよい。
<2.第2の実施の形態>
本技術の第2の実施の形態では、無線通信方式を加味した上位レイヤの設定や変更を行う例を示す。具体的には、マルチキャストやユニキャスト等のデータリンク層(第2層、レイヤ2)の処理に応じて、画像、音声等のパラメータ設定を柔軟に設定することができる。これにより、使用周波数チャネル、帯域、伝送方法(マルチキャスト、ユニキャスト)による伝送効率を向上させることができる。
なお、本技術の第2の実施の形態における情報処理装置の構成については、図1等に示すソース機器100、第1シンク機器200、第2シンク機器300と略同一である。このため、本技術の第1の実施の形態と共通する部分については、本技術の第1の実施の形態と同一の符号を付してこれらの説明の一部を省略する。
[無線通信方式の取得例]
ここでは、図7を参照して説明する。例えば、図7に示す例において、ソース機器100は、第1シンク機器200および第2シンク機器300と接続が行われる下位レイヤのプロトコルを把握する。例えば、上述した(a)乃至(d)のうちの少なくとも1つの情報のやりとりにより、下位レイヤのプロトコルを取得することができる。この処理により、ソース機器100は、マルチシンク・トポロジにより送信するための無線通信方式を把握することができる。
[Infra(Infrastructure)モードを設定する場合のデータ伝送例]
図18は、本技術の第2の実施の形態における通信システム61を構成する機器間でやりとりされる情報と無線通信方式との関係を模式的に示す図である。
アクセスポイント500は、無線LAN(例えば、Wi−Fi)のアクセスポイント(Access Point)である。例えば、アクセスポイント500は、IEEE802.11規格のInfraモードの機能を有する。そして、アクセスポイント500は、1または複数の情報処理装置(例えば、ソース機器、シンク機器)に接続される。
また、アクセスポイント500は、有線回線(例えば、Ethernet(登録商標))を経由して他の情報処理装置(例えば、サーバ)と接続することができる。例えば、アクセスポイント500は、ネットワークを経由して他の情報処理装置と接続することができる。
本技術の第2の実施の形態では、アクセスポイント500と、ソース機器100、第1シンク機器200、第2シンク機器300とは、無線LAN(例えば、IEEE802.11a/b/g/n/ac/adに相当する無線LAN)を用いて接続する例を示す。
図18のaには、アクセスポイント500を経由してソース機器100とシンク機器(第1シンク機器200、第2シンク機器300)とが接続される通信システム61の構成例を示す。すなわち、各機器においてInfraモードを設定する場合の例を示す。
図18のbには、アクセスポイント500を経由して、ソース機器100およびシンク機器(第1シンク機器200、第2シンク機器300)間でやりとりされるパケット511乃至518を時系列で簡略化して示す。
図18のaに示す例では、ソース機器100およびアクセスポイント500間のデータ伝送(501)として、第1シンク機器200、第2シンク機器300宛のデータがやりとりされる。具体的には、ソース機器100およびアクセスポイント500間で、図18のbに示すパケット511、513、ACK512、514のやりとりが行われる。
なお、パケット511、513を表す矩形内には、IEEE802.11のパケットフォーマットを用いたMACヘッダの設定内容を示す。具体的には、パケット511、513を表す矩形内には、MACヘッダにおけるAddress1乃至3の内容を簡略化して示す。なお、パケット511、513内では、ソース機器100をSrcで表し、第1シンク機器200をSink1で表し、第2シンク機器300をSink2で表す。また、これ以降で示すパケット515、517、523、525についても同様であるものとする。
具体的には、ソース機器100からアクセスポイント500へ送信されるパケット511は、ソース機器100から第1シンク機器200宛のパケットである。また、ソース機器100からアクセスポイント500へ送信されるパケット513は、ソース機器100から第2シンク機器300宛のパケットである。これらのパケット511、513は、例えば、アグリゲーションされて1パケットになって送信される。
アクセスポイント500は、パケット511を受信すると、パケットにエラーがないかを確認後、ブロックACK512をソース機器100に対して返信する。
次に、アクセスポイント500は、パケット511の宛先を確認し、第1シンク機器200に対してパケット515を送信する。第1シンク機器200は、受信したパケット515にエラーがないかを確認後、ブロックACK(または、シングルACK)516をアクセスポイント500に対して返信する。
また、アクセスポイント500は、第2シンク機器300に対しても同様に、パケット517、518のやりとりを行う。
また、図18のaに示す例では、アクセスポイント500およびシンク機器(第1シンク機器200、第2シンク機器300)間で、図18のbに示すパケット511、513、ACK512、514のやりとりが行われる(502、503)。
例えば、ソース機器100が第1シンク機器200および第2シンク機器300宛に異なるメディアデータ(画像データまたは音声データ)を送信している場合には、無駄な処理はない。ただし、ソース機器100が第1シンク機器200および第2シンク機器300宛に同一のメディアデータを送信している場合には、ソース機器100およびアクセスポイント500間が同じ無線伝搬特性にもかかわらず、同一のメディアデータを2回データ伝送していることになる。
この場合には、ソース機器100およびアクセスポイント500間のデータ伝送(501)は、中継データとして1回のデータ伝送にし、アクセスポイント500でマルチキャストに変換してもらうことが考えられる。例えば、アクセスポイント500から第1シンク機器200にマルチキャストでデータ伝送し、アクセスポイント500から第2シンク機器300にマルチキャストでデータ伝送することが考えられる。また、例えば、アクセスポイント500でコピーしてもらい、ユニキャストとしてアクセスポイント500から第1シンク機器200にデータ伝送し、アクセスポイント500から第2シンク機器300にデータ伝送することが考えられる。このようにデータ伝送を行うことにより、無線帯域を有効利用することができる。
[P2Pモードを設定する場合のデータ伝送例]
図19は、本技術の第2の実施の形態における通信システム62を構成する機器間でやりとりされる情報と無線通信方式との関係を模式的に示す図である。図19には、ソース機器およびシンク機器間にアクセスポイントを経由しないWi−Fi P2Pの無線通信方式を用いる例を示す。
図19のaには、ソース機器100とシンク機器(第1シンク機器200、第2シンク機器300)とがダイレクトにP2P接続される通信システム62の構成例を示す。すなわち、各機器においてP2Pモードを設定する場合の例を示す。
図19のbには、ソース機器100およびシンク機器(第1シンク機器200、第2シンク機器300)間でやりとりされるパケット523乃至526を時系列で簡略化して示す。
図19のaに示す例では、ソース機器100およびアクセスポイント500間のデータ伝送(521)として、第1シンク機器200、第2シンク機器300宛のデータがやりとりされる。具体的には、ソース機器100およびアクセスポイント500間で、図19のbに示すパケット523、525、ACK524、526のやりとりが行われる。
図19のaに示す例では、ソース機器100から第1シンク機器200へ送信されるパケット523は、ユニキャストパケットである。また、ソース機器100は、ユニキャストパケット523に対するブロックACKパケット(または、ACKパケット)524をソース機器100に対して返信する。
また、ソース機器100は、第2シンク機器300に対しても同様に、パケット525、526のやりとりを行う。
[TDLSモードを設定する場合のデータ伝送例]
図20は、本技術の第2の実施の形態における通信システム63を構成する機器間でやりとりされる情報と無線通信方式との関係を模式的に示す図である。
図20に示す例では、ソース機器100、第1シンク機器200、第2シンク機器300、アクセスポイント500の全ての機器がTDLSに対応している場合の例を示す。このため、図20に示す例では、画像データまたは音声データについてはアクセスポイント500を経由させずにダイレクトに送受信させ、互いの設定情報等の制御データについてはアクセスポイント500を経由して送受信させることができる。すなわち、各機器においてTDLSモードを設定する場合の例を示す。
図18乃至図20に示すように、無線通信方式の違いにより、無線におけるパケット量が異なる。例えば、同一のデータを送信する場合には、図19に示す無線通信方式よりも、図18に示す無線通信方式の方が無線伝送効率が悪いと考えられる。
このため、例えば、図20に示す例のように、全ての機器がTDLSに対応している場合には、画像データまたは音声データについてはアクセスポイント500を経由させずにダイレクトに送受信できるように設定変更を行う。ただし、この場合に、互いの端末設定情報等の制御データのみは、アクセスポイント500を経由させて送受信するようにしてもよい。
このようにすることにより、図20に示す例では、メディア伝送に関する無線帯域利用効率は、図19に示す例と同等となり、ソース機器およびシンク機器間をダイレクトに伝送できることになる。
このように、無線通信方式や、送受信されるデータ(例えば、図18、図19に示すパケット511乃至518、523乃至526)に応じて、画像データまたは音声データのパス数を設定や変更することができる。すなわち、それぞれの環境に応じて、画像データまたは音声データのパス数を設定や変更することができる。
そこで、無線通信方式を切り替える例を図21に示す。図21では、WFD IE情報を用いる例を示す。
[ソース機器の動作例]
図21は、本技術の第2の実施の形態におけるソース機器100による無線通信方式の切替処理の処理手順の一例を示すフローチャートである。
最初に、ソース機器100の制御部140は、第2シンク機器300に接続要求を行う(ステップS851)。この場合に、制御部140は、接続中の第1シンク機器200からWFD IE情報を受信する。
なお、図21では、ソース機器100から第2シンク機器300に接続要求を行う例を示すが、第2シンク機器300からソース機器100に接続要求を行うようにしてもよい。この場合に、第2シンク機器300は、Infraモードを用いてアクセスポイント経由でソース機器100に接続要求するようにしてもよい。また、第2シンク機器300は、ソース機器100にダイレクト接続により接続要求をするようにしてもよい。また、本技術の第2の実施の形態では、ソース機器100と第1シンク機器200とがInfraモードを用いてアクセスポイント500経由で接続している環境を例にして説明する。
制御部140は、ソース機器100が属するグループを構成する全ての機器がTDLSに未対応であるか否かを判断する(ステップS852)。少なくとも1台がTDLSに未対応である場合には(ステップS852)、制御部140は、第1シンク機器200および第2シンク機器300への送信は同一のフォーマットで行うか否かを判断する(ステップS853)。
第1シンク機器200および第2シンク機器300への送信が、宛先によってメディアが異なる場合(例えば、宛先によって画像データおよび音声データの少なくとも1つが異なる場合)、または、画像データおよび音声データの少なくとも1つを別のフォーマットで伝送している場合には(ステップS853)、無線通信方式の切替処理の動作を終了する。
第1シンク機器200および第2シンク機器300への送信が、宛先にかかわらずメディアが同一であり(例えば、宛先にかかわらず画像データおよび音声データが同一である)、かつ、画像データおよび音声データを同一フォーマットで伝送している場合には(ステップS853)、制御部140は、アクセスポイント500が、効率的に伝送可能なパケット方式に変換可能であるか否かを判断する(ステップS857)。
例えば、図18のaに示す例において、ソース機器100が第1シンク機器200および第2シンク機器300に送信するデータ(画像データまたは音声データ)が同一である場合を想定する。この場合に、ソース機器100は、図18のbに示すパケット511を、PDUが2つのシンク機器用にアグリゲートされたパケットではなく、マルチキャスト動作のように、2つのシンク機器の共有パケットとして1つのPDU(Protocol Data Unit)とすることができる。そして、ソース機器100は、その共有パケットをアクセスポイント500に送信する。また、アクセスポイント500は、その共有パケットを第1シンク機器200および第2シンク機器300にコピーして転送する。
このパケット転送方式を用いる場合には、アクセスポイント500が第1シンク機器200および第2シンク機器300にマルチキャストパケットを送信することにより、さらに無線帯域利用効率を高めることができる。
そこで、例えば、制御部140は、アクセスポイント500がそのパケット転送方式を用いることが可能であるか否かを判断することができる(ステップS857)。
アクセスポイント500が、効率的に伝送可能なパケット方式に変換可能である場合には(ステップS857)、制御部140は、アクセスポイント500への送信パケットを各シンク機器への送信用で共通化する(ステップS858)。すなわち、制御部140は、アクセスポイント500への送信パケットを、第1シンク機器200および第2シンク機器300への送信用で共通化する(ステップS858)。このように共通化された送信パケットは、アクセスポイント500から第1シンク機器200および第2シンク機器300に送信される。この場合に、アクセスポイント500は、送信パケットをマルチキャストで送信するようにしてもよく、マルチプルユニキャストで送信するようにしてもよい。
全ての機器がTDLSに対応している場合には(ステップS852)、制御部140は、判断基準を満たすか否かを判断する(ステップS854)。例えば、制御部140は、送信に関する遅延時間が、Wi−Fi CERTIFIED Miracast規格に満たないか否かを判断基準として用いることができる。
なお、ここでは、送信に関する遅延時間が、Wi−Fi CERTIFIED Miracast規格に満たないか否かを判断基準とする例を示すが、本技術は、これに限定されない。
例えば、制御部140は、InfraモードからTDLSモードまたはP2Pモードに切替えることにより、メディア伝送の安定性を向上させることができるか否かを判断基準として用いることができる。
また、例えば、他の情報を判断基準にするようにしてもよい。例えば、伝送品質、サービス品質、機器品質を判断基準とすることができる。
伝送品質は、例えば、伝送帯域、伝送エラー頻度、安定性、遅延時間、スループット、伝搬状況(例えば、RSSI値)、フレーム落ち、SIR(Signal to Interference Ratio)、SINR(Signal-to-Interference Noise Ratio)、RSSI(Received Signal Strength Indicator)である。
また、機器品質は、例えば、解像度/音質、画像・音声コーデックの種類、3D機能の有無、コンテンツプロテクションの有無、ディスプレイ機器の表示サイズ、トポロジ情報、使用可能なプロトコル、これらのプロトコルの設定情報(ポート情報等)、接続インターフェース情報(コネクタタイプ等)、水平同期・垂直同期の位置、ソース機器の性能プライオリティ要求情報、低消費電力モードへの対応可否等のモード制御テーブル返答、無線での送信最大スループットまたは受信可能な最大スループット、CPU(Central Processing Unit)パワー、電池残量、電源供給情報等である。
このように、InfraモードからTDLSモードまたはP2Pモードに切替えることにより、メディア伝送の安定性を向上させることができる判断基準として、これらのうちの少なくとも1つ以上を用いることができる。
例えば、判断基準を満たさない場合(メディア伝送の安定性を向上させることができない場合)には(ステップS854)、制御部140は、TDLSに対応している機器との間でTDLS接続に切り替え、TDLS接続でメディア伝送を行う(ステップS855)。
また、判断基準を満たす場合(メディア伝送の安定性を向上させることができる場合)には(ステップS854)、制御部140は、現在のマルチシンク伝送方式を利用して送信処理を継続して行う(ステップS856)。
なお、ソース機器に接続されるシンク機器の台数が増加するのに応じて、メディア伝送の安定性を向上させることができる可能性が低くなることが想定される。このため、ソース機器に接続されるシンク機器の台数が増加するのに応じて、ステップS855に進む可能性が高まると想定される。
このように、ソース機器100の制御部140は、第1シンク機器200との間で画像伝送に使用している無線通信方式を取得し、その無線通信方式と上述したやりとりされた情報とに基づいて、通信経路およびデータ伝送フォーマットを決定することができる。
例えば、第1シンク機器200がInfraモードの無線通信方式を使用している場合を想定する。この場合には、ソース機器100の制御部140は、第1シンク機器200および第2シンク機器300のそれぞれの無線通信方式としてTDLSモードまたはP2Pモードの無線通信方式を設定することができる。
なお、図21では、InfraモードからTDLSモードに変更する例について説明したが、本技術はこれに限定されない。例えば、Infraモード、TDLSモード、P2Pモードのそれぞれにおいて、切替前のモードおよび切替後のモードのうちの何れかが選択された場合には対応可能であるものとする。
このように、新たなシンク機器が接続することによりマルチシンク・トポロジを形成する際に、Infrastructue接続なのか、TDLS接続またはダイレクト接続なのかを把握する。これにより、ソース機器100は、そのトポロジに応じたパケット伝送を適切に選択または変更することができる。
ここで、上述したように、ソース機器100は、第1シンク機器200および第2シンク機器300との接続が行われる下位レイヤのプロトコルを把握することができる。例えば、WFD IE以外にも、P2P IE、ASP(例えば、ASPのフォーマットコマンドで新規フォーマット)、UPnP標準でのプロトコルのうちの少なくとも1つのやりとりによる通知方法により把握することができるものとする。
これらの処理により、ソース機器100は、マルチシンク・トポロジにより送信するための無線通信方式を把握することができる。このように、本技術の第2の実施の形態では、Probe RequestやProbe Responseのペイロード部分にWFD IEをカプセル化させる等の例を示すが、本技術はこれらに限定されない。
例えば、Wi−Fi Direct ServicesのDisplay Servieを使う場合には、ASPというモジュールを介してデバイス間でservice capability情報を交換することができる。具体的には、WFD IEに含まれる情報を、4bit毎に区切って16進数にしたものをtext stringとしたものを送受信する。さらに、WFD IEに含まれる情報は現時点の仕様に限らない。例えば、図14に示すservice capability情報をペイロードに含んでもよい。
また、例えば、Wi−Fi Infrastructureモードで接続する機器は、同一のIPサブネットに接続されている機器(例えば、Wi−Fi CERTIFIED Miracast仕様の機器)のみを機器発見するようにしてもよい。また、例えば、コンカレント機能を備える機器については、Wi−Fi Infrastructureモードで接続する機器は、P2Pでは同一チャネルのコンカレント処理を行うデバイスとすることができる。
[新たなシンク機器をユーザに通知する例]
図22は、本技術の第2の実施の形態におけるソース機器100および第1シンク機器200に表示される通知画面の一例を示す図である。
図22のaは、ソース機器100の表示部190に表示される通知画面600を示す。また、図22のbは、第1シンク機器200の表示部251に表示される通知画面605を示す。これらの通知画面600、605は、例えば、ポップアップ画面として表示することができる。
ここで、上述した各処理において、第2シンク機器300がソース機器100に接続する場合には、ソース機器100は、第2シンク機器300からの接続要求をポップアップ画面等により表示してユーザにその旨を通知することが好ましい。
ただし、ソース機器100の表示される表示画面は、そのまま既に接続している第1シンク機器200に画像として送信されてしまう可能性がある。そこで、ソース機器100の制御部140は、ユーザ設定または所定規則に基づいて、表示部190の制御を切り替えるようにする。
例えば、ソース機器100の制御部140は、第1シンク機器200に接続している状況においても、他の機器からの接続要求を受信したときに、接続するか否かの判断をユーザが行うための通知画面600を表示部190に表示させることができる。これにより、ユーザは、通知画面600を確認することにより、他の機器からの接続要求を受信したことを把握することができる。
また、ソース機器100の制御部140は、通知画面600における操作ボタン601、602を用いてユーザ操作を受け付けることができる。そして、ソース機器100の制御部140は、操作ボタン601、602を用いたユーザ操作に基づいて、他の機器の接続に関する制御を行うことができる。
また、例えば、ソース機器100の制御部140は、接続中の第1シンク機器200の表示部251にも通知画面605を表示させることができる。これにより、ソース機器100および第1シンク機器200の双方のユーザは、通知画面600、605を確認することにより、他の機器からの接続要求を受信したことを共有することができる。
また、ソース機器100の制御部140は、通知画面605における操作ボタン606、607を用いてユーザ操作を受け付けることができる。そして、ソース機器100の制御部140は、操作ボタン606、607を用いたユーザ操作に基づいて、他の機器の接続に関する制御を行うことができる。
また、上述したように、ソース機器100の制御部140は、ポップアップ(通知画面600、605)は、第1シンク機器200に送信する画像または音声とは別に管理を行うことができる。この場合には、ソース機器100の制御部140は、ユーザ設定または所定規則に基づいて、第1シンク機器200に送信するようにしてもよく、送信しないようにしてもよい。
例えば、ゲーム機器や車載モニタ等のように、瞬時の反応が必要な情報を表示してその操作が必要となるソース機器の場合には、ポップアップを表示しないようにしてもよい。そこで、ソース機器100の制御部140は、ユーザ設定または所定規則に基づいて、ポップアップ(通知画面600)を表示しないようにすることもできる。
また、ソース機器100から第2シンク機器300に接続要求を行う場合には、接続要求に必要なユーザインターフェースを、現在送信中の第1シンク機器200には送信しないように設定することもできる。
[ソース機器の負荷を軽減する処理例]
次に、ソース機器100の負荷を軽減するための処理例について説明する。
[第1の処理例]
図23は、本技術の第2の実施の形態におけるソース機器100、第1シンク機器200および第2シンク機器300間でやりとりされる情報と各機器に表示される画像との関係を時系列で示す図である。なお、各機器間でやりとりされる情報については、図24を参照して詳細に説明する。
図24は、本技術の第2の実施の形態におけるソース機器100、第1シンク機器200および第2シンク機器300の通信処理例を示すシーケンスチャートである。
図23および図24には、第1シンク機器200とのやりとりで使用している第1フォーマットに第2シンク機器300が未対応であり、第2シンク機器300が対応している第2フォーマットへの変更が第1シンク機器200により許可されている場合の例を示す。
図23のaには、ソース機器100が第1フォーマットを用いて第1シンク機器200に画像データ541を送信する場合の例(図24に示す546に対応)を示す。
図23のbには、ソース機器100が第1フォーマットを用いて第1シンク機器200に画像データ542を送信するとともに、第2シンク機器300との間で情報のやりとり543を行う場合の例(図24に示す547乃至551に対応)を示す。
図23のcには、ソース機器100が第2フォーマットを用いて第1シンク機器200および第2シンク機器300に画像データ544、545を送信する場合の例(図24に示す552乃至556に対応)を示す。
図24に示す例において、ソース機器100が第2シンク機器300にCapability Negotiationをやりとりする処理(547乃至550)までは、図7に示す例と略同様である。
これらの各処理により、ソース機器100は、第1シンク機器200とのやりとりに使用している第1フォーマットに第2シンク機器300が対応していないことを把握することができる。また、ソース機器100は、第2シンク機器300が対応している第2フォーマットへの切替(または、フォールバック)が第1シンク機器200により許可されていることを把握することができる。
ここで、ソース機器100が第1シンク機器200および第2シンク機器300に対して同一のデータを送信する場合を想定する。この場合に、ソース機器100は、第2シンク機器300に送信パラメータの設定を行う前に、第1シンク機器200のパラメータ変更を行うことにより、ソース機器100が処理するデータ圧縮機能(画像または音声エンコーダ)を1つで行うことができる。ここで示すパラメータ変更は、例えば、解像度、画質、画像OnOff、音質、音声OnOff等の切替(またはフォールバック)を意味する。
そこで、ソース機器100は、第2シンク機器300に対して送信パラメータの設定(Get_Parameterの送信)を行う前に、第1シンク機器200に対してCapability Re−negotiation処理を開始する(551)。
また、ソース機器100は、Capability Re−negotiation処理(551)の後に、第1シンク機器200に対して第2フォーマットで画像データを送信する(552)。続いて、ソース機器100は、第2シンク機器300との間で各情報のやりとりを行い(553乃至555)、第2シンク機器300に対して第2フォーマットで画像データを送信する(556)。
このように、ソース機器100の制御部140は、機器発見処理または能力確認処理において、第1シンク機器200が使用している第1フォーマットを第2シンク機器300が使用可能な第2フォーマットに切り替えることができる。この場合に、ソース機器100の制御部140は、第1シンク機器200が使用するデータ伝送フォーマットを第2フォーマットに切り替えた後に、第2シンク機器300が使用するデータ伝送フォーマットとして第2フォーマットを設定する。
このように、既に接続された第1シンク機器200のフォーマットを、新規参入する第2シンク機器300のフォーマットに合わせる場合に、第1シンク機器200のフォーマットを前もって変更させることができる。これにより、ソース機器100の負荷を軽減させることができる。すなわち、ソース機器100が切替のための無駄な処理を使う必要がなく、ハードウェア資産を効率的に利用することができる。また、ソース機器100がAV Encoderを1チャネル分しか備えない環境でも切替を適切に行うことができる。
なお、本技術は、これらに限定されないものとする。例えば、上述したパラメータ変更を行うときに、プレミアムコンテンツの暗号を1つにして暗号後のデータストリームを異なるシンク機器に送信するようにしてもよい。
[第2の処理例]
図25は、本技術の第2の実施の形態におけるソース機器100、第1シンク機器200および第2シンク機器300間でやりとりされる情報と各機器に表示される画像との関係を時系列で示す図である。なお、各機器間でやりとりされる情報については、図26を参照して詳細に説明する。
図26は、本技術の第2の実施の形態におけるソース機器100、第1シンク機器200および第2シンク機器300の通信処理例を示すシーケンスチャートである。
図25および図26には、第1シンク機器200とのやりとりに使用している第1フォーマットに第2シンク機器300が未対応であり、第2シンク機器300が対応している第2フォーマットへの変更が第1シンク機器200により許可されていない場合の例を示す。
図25のaには、ソース機器100が第1フォーマットを用いて第1シンク機器200に画像データ561を送信する場合の例(図26に示す566に対応)を示す。
図25のbには、ソース機器100が第1フォーマットを用いて第1シンク機器200に画像データ562を送信するとともに、第2シンク機器300との間で情報のやりとり563を行う場合の例(図26に示す567乃至573に対応)を示す。
図25のcには、ソース機器100が、第1フォーマットを用いて第1シンク機器200に画像データ564を送信し、第2フォーマットを用いて第2シンク機器300に画像データ565を送信する場合の例(図26に示す574に対応)を示す。
図26において、ソース機器100が第2シンク機器300にCapability Negotiationをやりとりする処理(567乃至569)までは、図7に示す例と略同様である。
これらの各処理により、ソース機器100は、第1シンク機器200とのやりとりに使用している第1フォーマットに第2シンク機器300が対応していないことを把握することができる。また、ソース機器100は、第2シンク機器300が対応している第2フォーマットへの切替(または、フォールバック)が第1シンク機器200により許可されていないことを把握することができる。これにより、ソース機器100は、第1シンク機器200および第2シンク機器300のそれぞれに異なるフォーマットで画像伝送を行う必要があることを把握することができる。
このように、ソース機器100は、第1シンク機器200および第2シンク機器300のフォーマットを別々にする必要がある。そこで、以下では、ソース機器100が、第1シンク機器200および第2シンク機器300のそれぞれに異なるフォーマットを設定する例を示す。
例えば、ソース機器100は、第1シンク機器200との間で既に画像伝送を行っている。このため、ソース機器100および第2シンク機器300間のCapability Negotiation時に(570)、ソース機器100は、第2シンク機器300から受信したCapabilityの中から第1シンク機器200への画像伝送に既に使用している第1フォーマットを外して、第2シンク機器300にSet_Parameterコマンドを送信する(571)。
また、例えば、ソース機器100は、第2シンク機器300へCapability Negotiationコマンドを送信(570)する前に、ソース機器100および第1シンク機器200間の第1フォーマットに関する情報を第2シンク機器300に通知する。この通知方法として、例えば、ソース機器100からのビーコンまたは第2シンク機器300からのProbe Requestへの応答コマンドに、P2P IE、または、WFD IEの情報を含ませて送信することにより通知する通知方法を用いることができる。これにより、ソース機器100および第1シンク機器200間の第1フォーマットに関する情報を第2シンク機器300、第2シンク機器300が把握することができる。
[第3の処理例]
図27は、本技術の第2の実施の形態におけるソース機器100、第1シンク機器200および第2シンク機器300間でやりとりされる情報と各機器に表示される画像との関係を時系列で示す図である。なお、各機器間でやりとりされる情報については、図28を参照して詳細に説明する。
図28および図29は、本技術の第2の実施の形態におけるソース機器100、第1シンク機器200および第2シンク機器300の通信処理例を示すシーケンスチャートである。なお、図29は、図28の変形例であるため、図28と共通する部分には、同一の符号を付して示す。
図27乃至図29には、ソース機器100が第1シンク機器200および第2シンク機器300のうちの何れか一方にのみ接続が可能な場合の例を示す。
図27のaには、ソース機器100が第1フォーマットを用いて第1シンク機器200に画像データ581を送信する場合の例(図28に示す585に対応)を示す。
図27のbには、ソース機器100が第1フォーマットを用いて第1シンク機器200に画像データ582を送信するとともに、第2シンク機器300との間で情報のやりとり583を行う場合の例(図28に示す586乃至593に対応)を示す。
図27のcには、ソース機器100が、第2フォーマットを用いて第2シンク機器300に画像データ584を送信する場合の例(図28に示す594に対応)を示す。
図28において、ソース機器100および第2シンク機器300間でAssoc./4−way Handshake/IP Assignmentをやりとりする処理(586乃至588)までは、図7に示す例と略同様である。
ここで、ソース機器100は、第1シンク機器200および第2シンク機器300のうちの何れか一方にのみ接続が可能である。この例では、第1シンク機器200との接続を切断し、第2シンク機器300との間で画像伝送を行う例を示す。
ソース機器100は、第1シンク機器200との切断処理を行うため、TearDownコマンドをやりとりする(589)。このやりとりにより、ソース機器100は、第1シンク機器200との切断が終了する。この切断の終了後、ソース機器100は、第2シンク機器300との接続処理を開始するため、パラメータ設定(Set_Parameterコマンド)を行う(590、591)。
なお、ソース機器100は、パラメータ設定(Set_Parameterコマンド)を行った時点では、メディアデータ(画像または音声)の転送を開始していない。そこで、図29に示すように、第1シンク機器200とのTearDownコマンドのやりとり(596)を行う前に、第2シンク機器300に向けてパラメータ設定(Set_Parameter)コマンドのやりとり(595)を行うようにしてもよい。
図29に示すやりとりを行うことにより、第2シンク機器300へのパラメータ設定を確実に行った後に、第1シンク機器200との切断処理を行うことができる。これにより、ソース機器100が、第1シンク機器200とは切断したが、第2シンク機器300とは接続できないという状態になることを避けることができる。
このように、ソース機器100の制御部140は、画像伝送の相手機器を第1シンク機器200から第2シンク機器300に切り替える場合に、第2シンク機器300へのパラメータ設定処理が終了した後に第1シンク機器200への切断処理を行うことができる。このように、第2シンク機器300との接続を確立してから第1シンク機器200を切断することにより、切替時間を短縮させることができる。
[画像伝送を行うシンク機器をユーザ操作により選択する例]
図30は、本技術の第2の実施の形態におけるソース機器100および第1シンク機器200に表示される選択画面の一例を示す図である。
図30のaは、ソース機器100の表示部190に表示される選択画面610を示す。また、図30のbは、第1シンク機器200の表示部251に表示される選択画面615を示す。これらの選択画面610、615は、例えば、ポップアップ画面として表示することができる。
このように、ソース機器100の制御部140は、画像伝送の相手機器を第1シンク機器200から第2シンク機器300に切り替える場合に、その旨を通知するための通知情報(例えば、選択画面610、615)をユーザに提供することができる。そして、ユーザは、その通知情報に基づいて、所望のシンク機器を選択することができる。これにより、ユーザの意向に応じて、接続を開始することができる。
図27乃至図29に示す例では、ソース機器100が、第1シンク機器200との接続を切断し、第2シンク機器300との間で画像伝送を行う例を示した。ただし、画像伝送を行うシンク機器については、ユーザ操作により選択するようにしてもよい。ここで、ユーザが第1シンク機器200および第2シンク機器300の双方に接続しようとする場合に、ユーザの意図に反して、何れか一方のみに接続した旨のメッセージが出力されると、ユーザに不快感を与える可能性がある。そのため、他方に接続することができない理由を表示するようにしてもよい。このように、ユーザが原因を把握することにより、トポロジを理解していないユーザでもスムーズな対応を迅速に行うことができる。
例えば、第1シンク機器200とのTearDownコマンドのやりとりを行う前、または、第2シンク機器300とのパラメータ設定の前に、ソース機器100は、図30のaに示すように、選択画面610をポップアップ表示させることができる。
選択画面610は、どちらのシンク機器へ送信したいかをソース機器100を操作するユーザに選択させるための画面である。
また、ソース機器100の制御部140は、表示部190に表示させた選択画面610を第1シンク機器200に送信し、第1シンク機器200の表示部251に選択画面615を表示させることができる。この場合には、第1シンク機器200を操作するユーザが選択画面615を操作することにより、第1シンク機器200からUIBCを用いてソース機器100の選択を促し、操作することができる。
また、ソース機器100は、シンク機器への伝送を切り替える際に、解像度、画質、画像OnOff、音質、音声OnOff等の切替(または、フォールバック)が発生することをポップアップにより表示するようにしてもよい。また、ソース機器100は、切断されるシンク機器の表示部にその旨のポップアップを表示するようにしてもよい。
このように、本技術の第2の実施の形態によれば、接続するシンク機器を切り替える場合において、切替時間を短縮することができる。
ここで、例えば、複数の受信向け情報処理装置が存在するマルチキャストする接続形態となる接続トポロジを想定する。この接続トポロジでは、サーバに代表されるソース機器が各シンク機器の受信能力を把握し、ソース機器の主導により設定することが多い。また、シンク機器がソース機器へ解像度を要求し、ソース機器はネットワーク帯域を気にせずに伝送を行う環境となる接続形態も存在する。これに関連する技術として、例えば、MPEG−DASH(Dynamic Adaptive Streaming over HTTP)が提案されている。
一方、下位レイヤのプロトコルにおいては、特に無線通信においては、エラーレートが高くなる可能性があるため、シンク機器が多ければ多いほど、マルチキャスト通信が使われる可能性が高い。マルチキャスト通信は、シンク機器にとってはベストエフォートであり、環境に大きく影響される。ここで、IEEE802.11aaの規格では、無線伝送の効率化を行っている。また、今後は、Wi−Fi CERTIFIED Miracastに代表されるP2Pダイレクト接続について、複数台のシンク機器(マルチシンク・トポロジ)への対応が重要となる。
例えば、マルチシンク・トポロジにおいて、新規参入する機器の画像または音声に関するCapabilityが、既にサービス中のメディア伝送とフォーマットが一致しないことも想定される。この場合には、新規参入する機器は、今までのCapability Negotiationとは異なる新たな処理手順が必要になる。
また、例えば、無線通信方式として、Infraモード、TDLSモード、P2Pモード等が存在する環境では、画像または音声等のメディア伝送トポロジやパケット生成をどのように行い、効率よく伝送を行うかということが重要となる。
また、例えば、ソース機器の機器性能を効率的に利用することと、マルチシンク・トポロジでのメディア伝送品質との双方を満たすことが重要となる。
これに対して、本技術の実施の形態では、マルチシンク・トポロジにおいて、新規参入する機器の画像または音声キャパビリティが様々な状況においても、システムパフォーマンスを最大限にするための設定方法を実現することができる。
また、無線通信方式がInfraモード、TDLSモード、P2Pモード等の様々な環境においても、画像または音声等のメディア伝送トポロジやパケット生成を状況に応じて、設定または変更を行い、効率よく伝送を行うことができる。すなわち、マルチシンク・トポロジ構築時に生じる無線伝送の非効率さを解決する設定変更または通信方式切替を適切に行うことができる。
また、設定変更または通信方式切替時には、通知画面を表示することによりユーザに適切に通知することができる。
また、ソース機器の機器性能を効率的に利用することと、マルチシンク・トポロジでのメディア伝送品質との双方を満たすための処理方法を実現することができる。すなわち、本技術の実施の形態では、情報処理装置(ソース機器、シンク機器)を適切に無線接続することができる。
また、例えば、シンク機器が追加される際に、接続中のメディア伝送フォーマットの種別等を通知することができる。
また、例えば、マルチシンク・トポロジにおいて、新規参入する機器の画像または音声Capabilityが既にサービス中のメディア伝送とフォーマットが一致しない場合を想定する。この場合には、新規参入する機器は、今までのCapability Negotiationとは異なる、接続のための新たな情報を取得することができる。また、例えば、既にソース機器と通信接続を行っているシンク機器が受信するフォーマットを変更させ、新たに追加されるシンク機器のSet_Parameter(M4コマンド)のやりとりを行うことができる。
また、本技術の実施の形態におけるソース機器100、第1シンク機器200、第2シンク機器300は、各分野において使用される機器に適用することができる。例えば、自動車内で使用される機器(例えば、カーナビゲーション装置、スマートフォン)に適用することができる。例えば、自動車の前側の席にソース機器100を設置し、自動車の後部座席に第1シンク機器200および第2シンク機器300を設置することができる。そして、後部座席のユーザによる操作により、ソース機器100からの画像および音声を第1シンク機器200または第2シンク機器300により楽しむことができる。また、例えば、教育分野でも適用可能である。例えば、教室内で講師がソース機器100を使用し、学生が第1シンク機器200および第2シンク機器300を使用する。また、講義を聞きに来る学生は、所有するシンク機器を教室に入る毎にソース機器100に接続してソース機器100からの画像および音声を利用することができる。これにより、各学生の学力向上に利用することができる。
<3.応用例>
本開示に係る技術は、様々な製品へ応用可能である。例えば、ソース機器(情報処理装置)100、第1シンク機器(情報処理装置)200、第2シンク機器(情報処理装置)300は、スマートフォン、タブレットPC(Personal Computer)、ノートPC、携帯型ゲーム端末若しくはデジタルカメラなどのモバイル端末、テレビジョン受像機、プリンタ、デジタルスキャナ若しくはネットワークストレージなどの固定端末、又はカーナビゲーション装置などの車載端末として実現されてもよい。また、ソース機器(情報処理装置)100、第1シンク機器(情報処理装置)200、第2シンク機器(情報処理装置)300は、スマートメータ、自動販売機、遠隔監視装置又はPOS(Point Of Sale)端末などの、M2M(Machine To Machine)通信を行う端末(MTC(Machine Type Communication)端末ともいう)として実現されてもよい。さらに、ソース機器(情報処理装置)100、第1シンク機器(情報処理装置)200、第2シンク機器(情報処理装置)300は、これら端末に搭載される無線通信モジュール(例えば、1つのダイで構成される集積回路モジュール)であってもよい。
[3−1.第1の応用例]
図31は、本開示に係る技術が適用され得るスマートフォン900の概略的な構成の一例を示すブロック図である。スマートフォン900は、プロセッサ901、メモリ902、ストレージ903、外部接続インタフェース904、カメラ906、センサ907、マイクロフォン908、入力デバイス909、表示デバイス910、スピーカ911、無線通信インタフェース913、アンテナスイッチ914、アンテナ915、バス917、バッテリー918及び補助コントローラ919を備える。
プロセッサ901は、例えばCPU(Central Processing Unit)又はSoC(System on Chip)であってよく、スマートフォン900のアプリケーションレイヤ及びその他のレイヤの機能を制御する。メモリ902は、RAM(Random Access Memory)及びROM(Read Only Memory)を含み、プロセッサ901により実行されるプログラム及びデータを記憶する。ストレージ903は、半導体メモリ又はハードディスクなどの記憶媒体を含み得る。外部接続インタフェース904は、メモリーカード又はUSB(Universal Serial Bus)デバイスなどの外付けデバイスをスマートフォン900へ接続するためのインタフェースである。
カメラ906は、例えば、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子を有し、撮像画像を生成する。センサ907は、例えば、測位センサ、ジャイロセンサ、地磁気センサ及び加速度センサなどのセンサ群を含み得る。マイクロフォン908は、スマートフォン900へ入力される音声を音声信号へ変換する。入力デバイス909は、例えば、表示デバイス910の画面上へのタッチを検出するタッチセンサ、キーパッド、キーボード、ボタン又はスイッチなどを含み、ユーザからの操作又は情報入力を受け付ける。表示デバイス910は、液晶ディスプレイ(LCD)又は有機発光ダイオード(OLED)ディスプレイなどの画面を有し、スマートフォン900の出力画像を表示する。スピーカ911は、スマートフォン900から出力される音声信号を音声に変換する。
無線通信インタフェース913は、IEEE802.11a、11b、11g、11n、11ac及び11adなどの無線LAN標準のうちの1つ以上をサポートし、無線通信を実行する。無線通信インタフェース913は、インフラストラクチャーモードにおいては、他の装置と無線LANアクセスポイントを介して通信し得る。また、無線通信インタフェース913は、アドホックモード又はWi−Fi Direct等のダイレクト通信モードにおいては、他の装置と直接的に通信し得る。なお、Wi−Fi Directでは、アドホックモードとは異なり2つの端末の一方がアクセスポイントとして動作するが、通信はそれら端末間で直接的に行われる。無線通信インタフェース913は、典型的には、ベースバンドプロセッサ、RF(Radio Frequency)回路及びパワーアンプなどを含み得る。無線通信インタフェース913は、通信制御プログラムを記憶するメモリ、当該プログラムを実行するプロセッサ及び関連する回路を集積したワンチップのモジュールであってもよい。無線通信インタフェース913は、無線LAN方式に加えて、近距離無線通信方式、近接無線通信方式又はセルラ通信方式などの他の種類の無線通信方式をサポートしてもよい。アンテナスイッチ914は、無線通信インタフェース913に含まれる複数の回路(例えば、異なる無線通信方式のための回路)の間でアンテナ915の接続先を切り替える。アンテナ915は、単一の又は複数のアンテナ素子(例えば、MIMOアンテナを構成する複数のアンテナ素子)を有し、無線通信インタフェース913による無線信号の送信及び受信のために使用される。また、IEEE802.16、3GPP仕様(例えば、W−CDMA、GSM、WiMAX、WiMAX2、LTE、LTE−A)等の公衆回線に接続するための無線通信インターフェースの機能を有し、公衆回線と通信し得る。
なお、図31の例に限定されず、スマートフォン900は、複数のアンテナ(例えば、無線LAN用のアンテナ及び近接無線通信方式用のアンテナ、公衆回線通信用アンテナなど)を備えてもよい。その場合に、アンテナスイッチ914は、スマートフォン900の構成から省略されてもよい。
バス917は、プロセッサ901、メモリ902、ストレージ903、外部接続インタフェース904、カメラ906、センサ907、マイクロフォン908、入力デバイス909、表示デバイス910、スピーカ911、無線通信インタフェース913及び補助コントローラ919を互いに接続する。バッテリー918は、図中に破線で部分的に示した給電ラインを介して、図31に示したスマートフォン900の各ブロックへ電力を供給する。補助コントローラ919は、例えば、スリープモードにおいて、スマートフォン900の必要最低限の機能を動作させる。
図31に示したスマートフォン900において、図3を用いて説明した制御部140、図4を用いて説明した制御部270は、無線通信インタフェース913において実装されてもよい。また、これら機能の少なくとも一部は、プロセッサ901又は補助コントローラ919において実装されてもよい。
なお、スマートフォン900は、プロセッサ901がアプリケーションレベルでアクセスポイント機能を実行することにより、無線アクセスポイント(ソフトウェアAP)として動作してもよい。また、無線通信インタフェース913が無線アクセスポイント機能を有していてもよい。
[3−2.第2の応用例]
図32は、本開示に係る技術が適用され得るカーナビゲーション装置920の概略的な構成の一例を示すブロック図である。カーナビゲーション装置920は、プロセッサ921、メモリ922、GPS(Global Positioning System)モジュール924、センサ925、データインタフェース926、コンテンツプレーヤ927、記憶媒体インタフェース928、入力デバイス929、表示デバイス930、スピーカ931、無線通信インタフェース933、アンテナスイッチ934、アンテナ935及びバッテリー938を備える。
プロセッサ921は、例えばCPU又はSoCであってよく、カーナビゲーション装置920のナビゲーション機能及びその他の機能を制御する。メモリ922は、RAM及びROMを含み、プロセッサ921により実行されるプログラム及びデータを記憶する。
GPSモジュール924は、GPS衛星から受信されるGPS信号を用いて、カーナビゲーション装置920の位置(例えば、緯度、経度及び高度)を測定する。センサ925は、例えば、ジャイロセンサ、地磁気センサ及び気圧センサなどのセンサ群を含み得る。データインタフェース926は、例えば、図示しない端子を介して車載ネットワーク941に接続され、車速データなどの車両側で生成されるデータを取得する。
コンテンツプレーヤ927は、記憶媒体インタフェース928に挿入される記憶媒体(例えば、CD又はDVD)に記憶されているコンテンツを再生する。入力デバイス929は、例えば、表示デバイス930の画面上へのタッチを検出するタッチセンサ、ボタン又はスイッチなどを含み、ユーザからの操作又は情報入力を受け付ける。表示デバイス930は、LCD又はOLEDディスプレイなどの画面を有し、ナビゲーション機能又は再生されるコンテンツの画像を表示する。スピーカ931は、ナビゲーション機能又は再生されるコンテンツの音声を出力する。
無線通信インタフェース933は、IEEE802.11a、11b、11g、11n、11ac及び11adなどの無線LAN標準のうちの1つ以上をサポートし、無線通信を実行する。無線通信インタフェース933は、インフラストラクチャーモードにおいては、他の装置と無線LANアクセスポイントを介して通信し得る。また、無線通信インタフェース933は、アドホックモード又はWi−Fi Direct等のダイレクト通信モードにおいては、他の装置と直接的に通信し得る。無線通信インタフェース933は、典型的には、ベースバンドプロセッサ、RF回路及びパワーアンプなどを含み得る。無線通信インタフェース933は、通信制御プログラムを記憶するメモリ、当該プログラムを実行するプロセッサ及び関連する回路を集積したワンチップのモジュールであってもよい。無線通信インタフェース933は、無線LAN方式に加えて、近距離無線通信方式、近接無線通信方式又はセルラ通信方式などの他の種類の無線通信方式をサポートしてもよい。アンテナスイッチ934は、無線通信インタフェース933に含まれる複数の回路の間でアンテナ935の接続先を切り替える。アンテナ935は、単一の又は複数のアンテナ素子を有し、無線通信インタフェース933による無線信号の送信及び受信のために使用される。
なお、図32の例に限定されず、カーナビゲーション装置920は、複数のアンテナを備えてもよい。その場合に、アンテナスイッチ934は、カーナビゲーション装置920の構成から省略されてもよい。
バッテリー938は、図中に破線で部分的に示した給電ラインを介して、図32に示したカーナビゲーション装置920の各ブロックへ電力を供給する。また、バッテリー938は、車両側から給電される電力を蓄積する。
図32に示したカーナビゲーション装置920において、図3を用いて説明した制御部140、図4を用いて説明した制御部270は、無線通信インタフェース933において実装されてもよい。また、これら機能の少なくとも一部は、プロセッサ921において実装されてもよい。
また、本開示に係る技術は、上述したカーナビゲーション装置920の1つ以上のブロックと、車載ネットワーク941と、車両側モジュール942とを含む車載システム(又は車両)940として実現されてもよい。車両側モジュール942は、車速、エンジン回転数又は故障情報などの車両側データを生成し、生成したデータを車載ネットワーク941へ出力する。
なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
また、上述の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、CD(Compact Disc)、MD(MiniDisc)、DVD(Digital Versatile Disc)、メモリカード、ブルーレイディスク(Blu-ray(登録商標)Disc)等を用いることができる。
なお、本明細書に記載された効果はあくまで例示であって、限定されるものではなく、また、他の効果があってもよい。
なお、本技術は以下のような構成もとることができる。
(1)
他の情報処理装置との間でメディア伝送を行う無線通信部と、
第1情報処理装置との間で前記メディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、機器発見処理または能力確認処理において、前記第1情報処理装置および前記第2情報処理装置のそれぞれに前記メディア伝送を行うための通信経路または当該メディア伝送を行う際に用いるデータ伝送フォーマットを決定するための情報をやりとりする制御を行う制御部と
を具備する情報処理装置。
(2)
前記制御部は、前記第1情報処理装置が前記メディア伝送に使用するデータ伝送フォーマットの種類と、前記第2情報処理装置が使用可能な前記データ伝送フォーマットへの切替を前記第1情報処理装置が許可するか否かと、前記情報処理装置が使用可能なHDCPの暗号鍵の数とのうちの少なくとも1つを、前記情報としてやりとりする制御を行う前記(1)に記載の情報処理装置。
(3)
前記制御部は、前記能力確認処理において、前記第2情報処理装置との間で新たに前記メディア伝送を行うための接続処理に関する通知情報をユーザに提供する前記(1)または(2)に記載の情報処理装置。
(4)
前記制御部は、前記メディア伝送の対象となる画像情報と、前記通知情報とを異なる管理とする前記(3)に記載の情報処理装置。
(5)
前記制御部は、前記やりとりされた情報に基づいて、前記第2情報処理装置との間で前記メディア伝送を行うことができるか否かを判断し、前記第2情報処理装置との間で前記メディア伝送を行うことができないと判断された場合には、前記第2情報処理装置との接続処理を行わない前記(1)から(4)のいずれかに記載の情報処理装置。
(6)
前記制御部は、前記第2情報処理装置との間で前記メディア伝送を行うことができないと判断された場合には、その旨を通知するための通知情報をユーザに提供する前記(5)に記載の情報処理装置。
(7)
前記制御部は、前記機器発見処理または前記能力確認処理において、前記第1情報処理装置が使用している第1データ伝送フォーマットを前記第2情報処理装置が使用可能な第2データ伝送フォーマットに切り替える場合に、前記第1情報処理装置が使用するデータ伝送フォーマットを前記第2データ伝送フォーマットに切り替えた後に、前記第2情報処理装置が使用するデータ伝送フォーマットとして前記第2データ伝送フォーマットを設定する前記(1)から(6)のいずれかに記載の情報処理装置。
(8)
前記制御部は、前記第1情報処理装置との間で前記メディア伝送に使用している無線通信方式を取得し、前記取得された無線通信方式と前記やりとりされた情報とに基づいて、前記通信経路および前記データ伝送フォーマットを決定する前記(1)から(7)のいずれかに記載の情報処理装置。
(9)
前記制御部は、前記第1情報処理装置がInfrastructureモードの無線通信方式を使用している場合には、前記第1情報処理装置および前記第2情報処理装置のそれぞれの無線通信方式としてTDLSモードまたはP2Pモードの無線通信方式を設定する前記(8)に記載の情報処理装置。
(10)
前記制御部は、前記やりとりされた情報と、前記情報処理装置が備える符号化処理に関する能力およびその処理可能数の少なくとも1つと、前記情報処理装置が備えるHDCPの暗号鍵の処理に関する能力およびその処理可能数の少なくとも1つとに基づいて、前記通信経路および前記データ伝送フォーマットを決定する前記(1)から(9)のいずれかに記載の情報処理装置。
(11)
前記制御部は、前記やりとりされた情報に基づいて、前記第1情報処理装置および前記第2情報処理装置のそれぞれとの間で前記メディア伝送を行うことができるか否かを判断し、前記第1情報処理装置および前記第2情報処理装置のそれぞれとの間で前記メディア伝送を行うことができないと判断された場合には、前記メディア伝送を行う相手機器を前記第1情報処理装置から前記第2情報処理装置に切り替える前記(1)から(5)のいずれかに記載の情報処理装置。
(12)
前記制御部は、前記メディア伝送を行う相手機器を前記第1情報処理装置から前記第2情報処理装置に切り替える場合に、前記第2情報処理装置へのパラメータ設定処理が終了した後に前記第1情報処理装置への切断処理を行う前記(11)に記載の情報処理装置。
(13)
前記制御部は、前記メディア伝送を行う相手機器を前記第1情報処理装置から前記第2情報処理装置に切り替える場合に、その旨を通知するための通知情報をユーザに提供する前記(11)または(12)に記載の情報処理装置。
(14)
前記無線通信部は、Wi−Fi(Wireless Fidelity) CERTIFIED Miracast仕様に従って前記他の情報処理装置との間で前記メディア伝送を行う前記(1)から(13)のいずれかに記載の情報処理装置。
(15)
第1情報処理装置との間でメディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、機器発見処理または能力確認処理において、前記第1情報処理装置および前記第2情報処理装置のそれぞれに前記メディア伝送を行うための通信経路または当該メディア伝送を行う際に用いるデータ伝送フォーマットを決定するための情報をやりとりする制御を行う情報処理方法。
(16)
第1情報処理装置との間でメディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、機器発見処理または能力確認処理において、前記第1情報処理装置および前記第2情報処理装置のそれぞれに前記メディア伝送を行うための通信経路または当該メディア伝送を行う際に用いるデータ伝送フォーマットを決定するための情報をやりとりする制御をコンピュータに実行させるプログラム。
また、本技術は以下のような構成もとることができる。
(C1)
他の情報処理装置との間でメディア伝送を行う無線通信部と、
第1情報処理装置との間で前記メディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、機器発見処理または能力確認処理において、前記第1情報処理装置が使用している第1データ伝送フォーマットを前記第2情報処理装置が使用可能な第2データ伝送フォーマットに切り替える場合に、前記第1情報処理装置が使用するデータ伝送フォーマットを前記第2データ伝送フォーマットに切り替えた後に、前記第2情報処理装置が使用するデータ伝送フォーマットとして前記第2データ伝送フォーマットを設定する制御を行う制御部と
を具備する情報処理装置。
(C2)
他の情報処理装置との間でメディア伝送を行う無線通信部と、
第1情報処理装置との間で前記メディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、機器発見処理において、前記第1情報処理装置および前記第2情報処理装置のそれぞれに前記メディア伝送を行うための通信経路または当該メディア伝送を行う際に用いるデータ伝送フォーマットを決定するための情報をやりとりし、前記やりとりされた情報に基づいて、前記第2情報処理装置との間で前記メディア伝送を行うことができないと判断された場合には、前記第2情報処理装置との接続処理を行わないように制御を行う制御部と
を具備する情報処理装置。
(C3)
他の情報処理装置との間でメディア伝送を行う無線通信部と、
第1情報処理装置との間で前記メディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、前記第1情報処理装置との間で前記メディア伝送に使用している無線通信方式を取得し、機器発見処理または能力確認処理において、前記第1情報処理装置および前記第2情報処理装置のそれぞれに前記メディア伝送を行うための通信経路または当該メディア伝送を行う際に用いるデータ伝送フォーマットを決定するための情報をやりとりし、前記取得された無線通信方式と前記やりとりされた情報とに基づいて、前記通信経路および前記データ伝送フォーマットを決定する制御を行う制御部と
を具備する情報処理装置。
(C4)
他の情報処理装置との間でメディア伝送を行う無線通信部と、
第1情報処理装置との間で前記メディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、機器発見処理または能力確認処理において、前記第1情報処理装置および前記第2情報処理装置のそれぞれに前記メディア伝送を行うための通信経路または当該メディア伝送を行う際に用いるデータ伝送フォーマットを決定するための情報をやりとりし、前記やりとりされた情報と、自装置が備える符号化処理に関する能力およびその処理可能数の少なくとも1つと、自装置が備えるHDCPの暗号鍵の処理に関する能力およびその処理可能数の少なくとも1つとに基づいて、前記通信経路および前記データ伝送フォーマットを決定する制御を行う制御部と
を具備する情報処理装置。
(C5)
他の情報処理装置との間でメディア伝送を行う無線通信部と、
第1情報処理装置との間で前記メディア伝送を行っている間に第2情報処理装置との間で新たに前記メディア伝送を行う場合に、機器発見処理または能力確認処理において、前記第1情報処理装置および前記第2情報処理装置のそれぞれに前記メディア伝送を行うための通信経路または当該メディア伝送を行う際に用いるデータ伝送フォーマットを決定するための情報をやりとりし、前記やりとりされた情報に基づいて、前記第1情報処理装置および前記第2情報処理装置のそれぞれとの間で前記メディア伝送を行うことができないと判断された場合には、前記第2情報処理装置へのパラメータ設定処理が終了した後に前記第1情報処理装置への切断処理を行うことにより、前記メディア伝送を行う相手機器を前記第1情報処理装置から前記第2情報処理装置に切り替える制御を行う制御部と
を具備する情報処理装置。
(C6)
前記無線通信部は、Wi−Fi(Wireless Fidelity) CERTIFIED Miracast仕様に従って前記他の情報処理装置との間で前記メディア伝送を行う前記(C1)から(C5)のいずれかに記載の情報処理装置。