JP2014511583A - ワイヤレスディスプレイのためのユーザ入力バックチャネル - Google Patents

ワイヤレスディスプレイのためのユーザ入力バックチャネル Download PDF

Info

Publication number
JP2014511583A
JP2014511583A JP2013550637A JP2013550637A JP2014511583A JP 2014511583 A JP2014511583 A JP 2014511583A JP 2013550637 A JP2013550637 A JP 2013550637A JP 2013550637 A JP2013550637 A JP 2013550637A JP 2014511583 A JP2014511583 A JP 2014511583A
Authority
JP
Japan
Prior art keywords
data
touch
input
user input
source device
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.)
Granted
Application number
JP2013550637A
Other languages
English (en)
Other versions
JP5694568B2 (ja
Inventor
ファン、シャオロン
ラビーンドラン、ビジャヤラクシュミ・アール.
ワン、シャオドン
シャウカット、ファワド
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2014511583A publication Critical patent/JP2014511583A/ja
Application granted granted Critical
Publication of JP5694568B2 publication Critical patent/JP5694568B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04104Multi-touch detection in digitiser, i.e. details about the simultaneous detection of a plurality of touching locations, e.g. multiple fingers or pen and finger
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/16Use of wireless transmission of display information

Abstract

通信セッションの一部として、ワイヤレスソースデバイスが、ワイヤレスシンクデバイスにオーディオおよびビデオデータを送信することができ、ワイヤレスシンクデバイスは、ワイヤレスシンクデバイスにおいて受信されたユーザ入力データをワイヤレスソースデバイスに送信することができる。このようにして、ワイヤレスシンクデバイスのユーザが、ワイヤレスソースデバイスを制御し、ワイヤレスソースデバイスからワイヤレスシンクデバイスに送信されているコンテンツを制御することができる。ワイヤレスシンクデバイスにおいて受信された入力データはマルチタッチジェスチャであり得る。

Description

本出願は、各々の内容全体が参照により本明細書に組み込まれる、
2011年1月21日に出願された米国仮出願第61/435,194号、
2011年2月28日に出願された米国仮出願第61/447,592号、
2011年3月2日に出願された米国仮出願第61/448,312号、
2011年3月7日に出願された米国仮出願第61/450,101号、
2011年3月25日に出願された米国仮出願第61/467,535号、
2011年3月25日に出願された米国仮出願第61/467,543号、
2011年8月3日に出願された米国仮出願第61/514,863号、および
2011年10月7日に出願された米国仮出願第61/544,440号
の利益を主張する。
本開示は、ワイヤレスソースデバイスとワイヤレスシンクデバイスとの間でデータを伝送するための技法に関する。
ワイヤレスディスプレイ(WD:wireless display)またはWi−Fiディスプレイ(WFD:Wi-Fi Display)システムは、ワイヤレスソースデバイスと1つまたは複数のワイヤレスシンクデバイスとを含む。ソースデバイスとシンクデバイスの各々とは、ワイヤレス通信機能をもつモバイルデバイスまたはワイヤードデバイスのいずれかであり得る。ソースデバイスとシンクデバイスとのうちの1つまたは複数は、たとえば、携帯電話、ワイヤレス通信カードを備えたポータブルコンピュータ、携帯情報端末(PDA)、ポータブルメディアプレーヤ、あるいはいわゆる「スマート」フォンおよび「スマート」パッドもしくはタブレット、電子リーダー、または任意のタイプのワイヤレスディスプレイ、ビデオゲームデバイスを含む、ワイヤレス通信機能をもつ他のそのようなデバイス、あるいは他のタイプのワイヤレス通信デバイスを含み得る。ソースデバイスとシンクデバイスとのうちの1つまたは複数は、また、通信機能を含むテレビジョン、デスクトップコンピュータ、モニタ、プロジェクタなどのワイヤードデバイスも含み得る。
ソースデバイスは、特定のメディアシェアセッションに参加しているシンクデバイスのうちの1つまたは複数にオーディオビデオ(AV)データなどのメディアデータを送る。メディアデータは、ソースデバイスのローカルディスプレイとシンクデバイスのディスプレイの各々との両方において再生され得る。より具体的には、参加しているシンクデバイスの各々は、それのスクリーンおよびオーディオ機器上で、受信されたメディアデータをレンダリングする。
本開示では、概して、ワイヤレスシンクデバイスがワイヤレスシンクデバイスと通信することができるシステムについて説明する。通信セッションの一部として、ワイヤレスソースデバイスが、ワイヤレスシンクデバイスにオーディオおよびビデオデータを送信することができ、ワイヤレスシンクデバイスは、ワイヤレスシンクデバイスにおいて受信されたユーザ入力をワイヤレスソースデバイスに送信することができる。このようにして、ワイヤレスシンクデバイスのユーザが、ワイヤレスソースデバイスを制御し、ワイヤレスソースデバイスからワイヤレスシンクデバイスに送信されているコンテンツを制御することができる。
一例では、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する方法が、マルチタッチジェスチャについてのユーザ入力データを取得することと、パケットヘッダを生成することと、ペイロードデータを生成することであって、ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成することと、パケットヘッダとペイロードデータとを備えるデータパケットを生成することと、ワイヤレスソースデバイスにデータパケットを送信することとを含む。
別の例では、ワイヤレスシンクデバイスが、ワイヤレスソースデバイスにユーザ入力データを送信するように構成される。該ワイヤレスシンクデバイスは、命令を記憶するメモリと、命令を実行するように構成された1つまたは複数のプロセッサであって、命令を実行すると、1つまたは複数のプロセッサが、マルチタッチジェスチャについてユーザ入力データを取得することと、パケットヘッダを生成することと、ペイロードデータを生成することであって、ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成することと、パケットヘッダとペイロードデータとを備えるデータパケットを生成することとを行わせる、1つまたは複数のプロセッサとを含む。該ワイヤレスシンクデバイスは、また、ワイヤレスソースデバイスにデータパケットを送信するように構成されたトランスポートユニットも含む。
別の例では、コンピュータ可読記憶媒体が、1つまたは複数のプロセッサによって実行されると、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する方法を実行することを1つまたは複数のプロセッサに行わせる、命令を記憶する。上記方法は、マルチタッチジェスチャについてのユーザ入力データを取得することと、パケットヘッダを生成することと、ペイロードデータを生成することであって、ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成することと、パケットヘッダとペイロードデータとを備えるデータパケットを生成することと、ワイヤレスソースデバイスにデータパケットを送信することとを含む。
別の例では、ワイヤレスシンクデバイスが、ワイヤレスソースデバイスにユーザ入力を送信するように構成される。該ワイヤレスシンクデバイスは、マルチタッチジェスチャについてのユーザ入力データを取得するための手段と、パケットヘッダを生成するための手段と、ペイロードデータを生成するための手段であって、ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成するための手段と、パケットヘッダとペイロードデータとを備えるデータパケットを生成するための手段と、ワイヤレスソースデバイスにデータパケットを送信するための手段とを含む。
別の例では、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する方法が、データパケットヘッダとペイロードデータとを備えるデータパケットを受信することと、第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データとを識別するためにペイロードデータをパースすることと、第1のタッチ入力イベントについてのユーザ入力データと第2のタッチ入力イベントについてのユーザ入力データとをマルチタッチジェスチャとして解釈することとを含む。
別の例では、ワイヤレスソースデバイスが、ワイヤレスシンクデバイスからユーザ入力データを受信するように構成される。該ワイヤレスソースデバイスは、データパケットヘッダとペイロードデータとを備えるデータパケットを受信するためのトランスポートユニットと、命令を記憶するメモリと、命令を実行するように構成された1つまたは複数のプロセッサであって、命令を実行すると、1つまたは複数のプロセッサが、第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データとを識別するためにペイロードデータをパースすることと、第1のタッチ入力イベントについてのユーザ入力データと第2のタッチ入力イベントについてのユーザ入力データとをマルチタッチジェスチャとして解釈することとを行わせる、1つまたは複数のプロセッサとを含む。
別の例では、コンピュータ可読記憶媒体が、1つまたは複数のプロセッサによって実行されると、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する方法を実行することを1つまたは複数のプロセッサに行わせる、命令を記憶する。上記方法は、データパケットヘッダとペイロードデータとを備えるデータパケットを受信することと、第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データとを識別するためにペイロードデータをパースすることと、第1のタッチ入力イベントについてのユーザ入力データと第2のタッチ入力イベントについてのユーザ入力データとをマルチタッチジェスチャとして解釈することとを含む。
別の例では、ワイヤレスソースデバイスが、ワイヤレスシンクデバイスからユーザ入力を受信するように構成される。該ワイヤレスソースデバイスは、データパケットヘッダとペイロードデータとを備えるデータパケットを受信するための手段と、第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データとを識別するためにペイロードデータをパースするための手段と、第1のタッチ入力イベントについてのユーザ入力データと第2のタッチ入力イベントについてのユーザ入力データとをマルチタッチジェスチャとして解釈するための手段とを含む。
本開示の技法を実装し得るソース/シンクシステムの一例を示すブロック図。 2つのシンクデバイスをもつソース/シンクシステムの一例を示すブロック図。 本開示の技法を実装し得るソースデバイスの一例を示す図。 本開示の技法を実装し得るシンクデバイスの一例を示す図。 本開示の技法を実装し得る送信機システムと受信機システムとのブロック図。 本開示の技法に従って機能ネゴシエーションを実行するための例示的なメッセージ転送シーケンスを示す図。 本開示の技法に従って機能ネゴシエーションを実行するための例示的なメッセージ転送シーケンスを示す図。 シンクデバイスにおいて取得されたユーザ入力データをソースデバイスに配信するために使用され得る例示的なデータパケットを示す図。 ソースデバイスとシンクデバイスとの間の機能ネゴシエーションのために使用され得る本開示の技法を示すフローチャート。 ソースデバイスとシンクデバイスとの間の機能ネゴシエーションのために使用され得る本開示の技法を示すフローチャート。 ユーザ入力データをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 ユーザ入力データをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 ユーザ入力データをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 ユーザ入力データをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 タイムスタンプ情報とユーザ入力データとをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 タイムスタンプ情報とユーザ入力データとをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 タイムスタンプ情報とユーザ入力データとをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 タイムスタンプ情報とユーザ入力データとをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 ボイスコマンドを含むデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 ボイスコマンドを含むデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 マルチタッチユーザ入力コマンドをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 マルチタッチユーザ入力コマンドをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 サードパーティデバイスからフォワーディングされたユーザ入力データをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 サードパーティデバイスからフォワーディングされたユーザ入力データをもつデータパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 データパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。 データパケットを送信および受信するために使用され得る本開示の技法を示すフローチャート。
本開示は、概して、ワイヤレスシンクデバイスがワイヤレスシンクデバイスと通信することができるシステムについて説明する。通信セッションの一部として、ワイヤレスソースデバイスが、ワイヤレスシンクデバイスにオーディオおよびビデオデータを送信することができ、ワイヤレスシンクデバイスは、ワイヤレスシンクデバイスにおいて受信されたユーザ入力をワイヤレスソースデバイスに送信することができる。このようにして、ワイヤレスシンクデバイスのユーザが、ワイヤレスソースデバイスを制御し、ワイヤレスソースデバイスからワイヤレスシンクデバイスに送信されているコンテンツを制御することができる。
図1Aは、本開示の技法のうちの1つまたは複数を実装し得る例示的なソース/シンクシステム100を示すブロック図である。図1Aに示すように、システム100は、通信チャネル150を介してシンクデバイス160と通信するソースデバイス120を含む。ソースデバイス120は、オーディオ/ビデオ(A/V)データ121を記憶するメモリと、ディスプレイ122と、スピーカー123と、オーディオ/ビデオエンコーダ124(エンコーダ124とも呼ばれる)と、オーディオ/ビデオ制御モジュール125と、送信機/受信機(TX/RX)ユニット126とを含み得る。シンクデバイス160は、ディスプレイ162と、スピーカー163と、オーディオ/ビデオデコーダ164(デコーダ164とも呼ばれる)と、送信機/受信機ユニット166と、ユーザ入力(UI)デバイス167と、ユーザ入力処理モジュール(UIPM:user input processing module)168とを含み得る。図示したコンポーネントは、ソース/シンクシステム100のための1つの例示的な構成をなすにすぎない。他の構成は、図示したコンポーネントよりも少数のコンポーネントを含み得るか、または図示したコンポーネント以外の追加のコンポーネントを含み得る。
図1Aの例では、ソースデバイス120は、オーディオ/ビデオデータ121のビデオ部分をディスプレイ122上で表示することができ、オーディオ/ビデオデータ121のオーディオ部分をスピーカー123上で出力することができる。オーディオ/ビデオデータ121は、ソースデバイス120にローカルに記憶され、ファイルサーバ、ハードドライブ、外部メモリ、ブルーレイ(登録商標)ディスク、DVD、または他の物理記憶媒体など、外部記憶媒体からアクセスされ得るか、あるいはインターネットなどのネットワーク接続を介してソースデバイス120にストリーミングされ得る。いくつかの事例では、オーディオ/ビデオデータ121は、ソースデバイス120のカメラとマイクロフォンとを介してリアルタイムでキャプチャされ得る。オーディオ/ビデオデータ121は、ムービー、テレビ番組、または音楽など、マルチメディアコンテンツを含み得るが、また、ソースデバイス120によって生成されたリアルタイムコンテンツをも含み得る。そのようなリアルタイムコンテンツは、たとえば、ソースデバイス120上で動作しているアプリケーションによって生成されるか、または、たとえば、ビデオテレフォニーセッションの一部として、キャプチャされたビデオデータであり得る。より詳細に説明するように、そのようなリアルタイムコンテンツは、いくつかの事例では、ユーザが選択するために利用可能なユーザ入力オプションのビデオフレームを含み得る。いくつかの事例では、オーディオ/ビデオデータ121は、ビデオのフレーム上にオーバーレイされたユーザ入力オプションを有するムービーまたはTV番組のビデオフレームなど、異なるタイプのコンテンツの組合せであるビデオフレームを含み得る。
ディスプレイ122とスピーカー123とを介してオーディオ/ビデオデータ121をローカルでレンダリングすることに加えて、ソースデバイス120のオーディオ/ビデオエンコーダ124は、オーディオ/ビデオデータ121を符号化することができ、送信機/受信機ユニット126は、符号化されたデータを通信チャネル150を介してシンクデバイス160に送信することができる。シンクデバイス160の送信機/受信機ユニット166は、符号化されたデータを受信し、オーディオ/ビデオデコーダ164は、符号化されたデータを復号し、復号されたデータをディスプレイ162とスピーカー163とを介して出力する。このようにして、ディスプレイ122とスピーカー123とによってレンダリングされているオーディオおよびビデオデータは、ディスプレイ162とスピーカー163とによって同時にレンダリングされ得る。オーディオデータおよびビデオデータは、フレームで構成されることができ、オーディオフレームは、レンダリングされるときにビデオフレームと時間同期されることができる。
オーディオ/ビデオエンコーダ124およびオーディオ/ビデオデコーダ164は、代替的にMPEG−4、Part10、Advanced Video Coding(AVC)と呼ばれるITU−T H.264規格、またはH.265規格と呼ばれることがある新生の高効率ビデオコーディング(HEVC:high efficiency video coding)規格など、任意の数のオーディオおよびビデオ圧縮規格を実装し得る。多くの他のタイプのプロプライエタリなまたは規格化された圧縮技法も使用され得る。概して、オーディオ/ビデオデコーダ164は、オーディオ/ビデオエンコーダ124の逆のコーディング操作を実行するように構成される。図1Aには示されていないが、いくつかの態様では、A/Vエンコーダ124およびA/Vデコーダ164は、それぞれオーディオエンコーダおよびデコーダと統合されることができ、適切なMUX−DEMUXユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理することができる。
以下でより詳細に説明するように、A/Vエンコーダ124は、上記で説明したビデオ圧縮規格を実装することに加えて、他の符号化機能も実行することができる。たとえば、A/Vエンコーダ124は、A/Vデータ121がシンクデバイス160に送信されるより前に、A/Vデータ121に様々なタイプのメタデータを追加することができる。いくつかの事例では、A/Vデータ121は、符号化された形態でソースデバイス120に記憶されるかまたはソースデバイス120において受信され、したがってA/Vエンコーダ124によるさらなる圧縮を必要としないことがある。
図1Aは、通信チャネル150がオーディオペイロードデータとビデオペイロードデータとを別個に搬送することを示しているが、いくつかの事例では、ビデオペイロードデータとオーディオペイロードデータとは共通のデータストリームの一部であり得ることを理解されたい。適用可能な場合、MUX−DEMUXユニットは、ITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。オーディオ/ビデオエンコーダ124およびオーディオ/ビデオデコーダ164はそれぞれ、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、あるいはそれらの任意の組合せとして実装され得る。オーディオ/ビデオエンコーダ124およびオーディオ/ビデオデコーダ164の各々は、1つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合エンコーダ/デコーダ(コーデック)の一部として統合され得る。したがって、ソースデバイス120およびシンクデバイス160の各々は、本開示の技法のうちの1つまたは複数を実行するように構成された専用の機械を備え得る。
ディスプレイ122およびディスプレイ162は、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、発光ダイオード(LED)ディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なビデオ出力デバイスのいずれかを備え得る。これらまたは他の例では、ディスプレイ122および162は、それぞれ発光型ディスプレイ(emissive display)または透過型ディスプレイ(transmissive display)であり得る。ディスプレイ122およびディスプレイ162はまた、それらが同時に入力デバイスとディスプレイデバイスの両方であるような、タッチディスプレイであり得る。そのようなタッチディスプレイは、ユーザがそれぞれのデバイスにユーザ入力を与えることを可能にする、静電容量式、抵抗式、または他のタイプのタッチパネルであり得る。
スピーカー123は、ヘッドフォン、シングルスピーカーシステム、マルチスピーカーシステム、またはサラウンドサウンドシステムなど、様々なオーディオ出力デバイスのいずれかを備え得る。さらに、ディスプレイ122およびスピーカー123はソースデバイス120の一部として示され、ディスプレイ162およびスピーカー163はシンクデバイス160の一部として示されているが、ソースデバイス120およびシンクデバイス160は、実際には複数のデバイスのシステムであり得る。一例として、ディスプレイ162はテレビジョンであり得、スピーカー163はサラウンドサウンドシステムであり得、デコーダ164は、ディスプレイ162とスピーカー163とにワイヤード接続またはワイヤレス接続された外部ボックスの一部であり得る。他の例では、シンクデバイス160は、タブレットコンピュータまたはスマートフォンなど、単一のデバイスであり得る。さらに他の場合、ソースデバイス120およびシンクデバイス160は、同様のデバイスであり、たとえば、両方がスマートフォン、タブレットコンピュータなどである。この場合、一方のデバイスはソースとして動作し得、他方はシンクとして動作し得る。これらの役割は、後続の通信セッションでは逆になることもある。さらに他の場合、ソースデバイスは、スマートフォン、ラップトップまたはタブレットコンピュータなど、モバイルデバイスを備えることができ、シンクデバイスは、(たとえば、AC電源コードを用いた)より固定型のデバイスを備えることができ、その場合、ソースデバイスは、シンクデバイスを介して大群衆への提示のためにオーディオおよびビデオデータを配信し得る。
送信機/受信機ユニット126および送信機/受信機ユニット166は、それぞれ、様々なミキサ、フィルタ、増幅器、および信号変調のために設計された他のコンポーネント、ならびに、1つまたは複数のアンテナ、およびデータを送受信するために設計された他のコンポーネントを含み得る。通信チャネル150は、概して、ビデオデータをソースデバイス120からシンクデバイス160に送信するのに好適な任意の通信媒体、または様々な通信媒体の集合体を表す。通信チャネル150は、通常、Wi−FiやBluetooth(登録商標)などと同様の比較的短距離の通信チャネルである。ただし、通信チャネル150は、この点において必ずしも限定されるものではなく、無線周波数(RF)スペクトルまたは1つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体、あるいはワイヤレス媒体とワイヤード媒体との任意の組合せを備え得る。他の例では、通信チャネル150は、ワイヤードまたはワイヤレスローカルエリアネットワーク、ワイドエリアネットワーク、あるいはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成することさえある。さらに、通信チャネル150は、ピアツーピアリンクを作り出すためにソースデバイス120とシンクデバイス160とによって使用され得る。ソースデバイス120およびシンクデバイス160は、IEEE802.11規格ファミリーからの規格などの通信プロトコルを使用して通信チャネル150を通じて通信し得る。ソースデバイス120およびシンクデバイス160は、たとえば、ソースデバイス120およびシンクデバイス160が、ワイヤレスアクセスポイントまたはいわゆるホットスポットなど、中間物を使用せずに互いと直接通信するように、Wi−Fi Direct規格に従って通信し得る。ソースデバイス120およびシンクデバイス160はまた、ネットワーク輻輳を回避または低減するためにトンネルドダイレクトリンクセットアップ(TLDS:tunneled direct link setup)を確立することができる。本開示の技法について時にはWi−Fiに関して説明するが、これらの技法の態様は他の通信プロトコルにも適合し得ることが企図される。限定ではなく例として、ソースデバイス120とシンクデバイスとの間のワイヤレス通信は、直交周波数分割多重化(OFDM)技法を利用し得る。これらに限定するものではないが、時分割多元接続(TDMA)、周波数分割多元接続(FDMA)、符号分割多元接続(CDMA)、あるいはOFDM、FDMA、TDMAおよび/またはCDMAの任意の組合せを含む、多種多様な他のワイヤレス通信技法も使用され得る。WiFi DirectおよびTDLSは、比較的短距離の通信セッションをセットアップするように意図されている。ここにおける比較的短距離は、たとえば、70メートル未満を指し得るが、ノイズの多いまたは遮るもののある環境では、デバイス間の距離は、35メートル未満など、さらに短いものであり得る。
ソースデバイス120から受信されたデータを復号およびレンダリングすることに加えて、シンクデバイス160は、また、ユーザ入力デバイス167からユーザ入力を受信することができる。ユーザ入力デバイス167は、たとえば、キーボード、マウス、トラックボールまたはトラックパッド、タッチスクリーン、ボイスコマンド認識モジュール、あるいは他のそのようなユーザ入力デバイスであり得る。UIPM168は、ユーザ入力デバイス167によって受信されたユーザ入力コマンドを、ソースデバイス120が解釈することが可能であるデータパケット構造へとフォーマットする。そのようなデータパケットは、送信機/受信機166によって、通信チャネル150を介してソースデバイス120に送信される。送信機/受信機ユニット126はデータパケットを受信し、A/V制御モジュール125は、ユーザ入力デバイス167によって受信されたユーザ入力コマンドを解釈するためにデータパケットをパースする。データパケット中で受信されたコマンドに基づいて、A/V制御モジュール125は、符号化および送信されているコンテンツを変更することができる。このようにして、シンクデバイス160のユーザが、リモートで、およびソースデバイス120と直接対話することなしに、ソースデバイス120によって送信されているオーディオペイロードデータおよびビデオペイロードデータを制御することができる。シンクデバイス160のユーザがソースデバイス120に送信し得るコマンドのタイプの例は、オーディオおよびビデオデータを巻き戻し、早送りし、一時停止し、および再生するためのコマンド、ならびにズーム、回転、スクロールのためのコマンドなどを含む。また、ユーザは、たとえばオプションのメニューから、選択を行い、その選択をソースデバイス120に送信し得る。
さらに、シンクデバイス160のユーザは、ソースデバイス120上のアプリケーションを起動し、制御することが可能であり得る。たとえば、シンクデバイス160のユーザは、ソースデバイス120に記憶された写真編集アプリケーションを起動し、そのアプリケーションを使用して、ソースデバイス120にローカルに記憶された写真を編集することが可能であり得る。シンクデバイス160は、実際には写真がソースデバイス120上で編集されているのだが、その写真がシンクデバイス160上でローカルで編集されているように見え、感じられる、ユーザエクスペリエンスをユーザにもたらすことができる。そのような構成を使用して、デバイスユーザは、いくつかのデバイスとともに使用するための1つのデバイスの機能を活用することが可能であり得る。たとえば、ソースデバイス120は、大量のメモリとハイエンド処理能力とをもつスマートフォンであり得る。ソースデバイス120のユーザは、スマートフォンを、スマートフォンが通常使用されるすべての設定および状況において使用し得る。しかしながら、ムービーを見るとき、ユーザは、より大きいディスプレイスクリーンをもつデバイス上でムービーを見ることを望み得、その場合、シンクデバイス160は、タブレットコンピュータあるいはさらに大きいディスプレイデバイスまたはテレビジョンであり得る。電子メールを送りたいまたは電子メールに応答したいときには、ユーザは、キーボードを備えたデバイスを使用することを望み得、その場合、シンクデバイス160はラップトップであり得る。どちらの場合にも、ユーザは、シンクデバイスと対話しているが、処理の大半は依然としてソースデバイス120(この例ではスマートフォン)によって実行され得る。この特定の動作コンテキストでは、処理の大半がソースデバイス120によって実行されるので、シンクデバイス160は、シンクデバイス160がソースデバイス120によって行われている処理を行うように求められている場合よりも、より少ないリソースを用いた、より低コストのデバイスであり得る。いくつかの例では、ソースデバイスとシンクデバイスの両方が(タッチスクリーンコマンドなどの)ユーザ入力を受信することが可能であり得、本開示の技法は、所与のセッションにおいてそれらのデバイスの機能をネゴシエートおよび/または識別することによって、二方向対話を容易にし得る。
一部の構成では、A/V制御モジュール125は、ソースデバイス125のオペレーティングシステムによって実行されているオペレーティングシステムプロセスであり得る。しかしながら、他の構成では、A/V制御モジュール125は、ソースデバイス120上で動作しているアプリケーションのソフトウェアプロセスであり得る。そのような構成では、ユーザ入力コマンドは、ソフトウェアプロセスによって解釈されることができ、その結果、シンクデバイス160のユーザは、ソースデバイス120上で動作しているオペレーティングシステムとは対照的に、ソースデバイス120上で動作しているアプリケーションと直接対話している。オペレーティングシステムとは対照的にアプリケーションと直接対話することによって、シンクデバイス160のユーザは、ソースデバイス120のオペレーティングシステムに対してネイティブでないコマンドのライブラリへのアクセスを有し得る。さらに、アプリケーションと直接対話することにより、コマンドが、異なるプラットフォーム上で動作しているデバイスによってより容易に送信され、処理されることが可能になり得る。
ソースデバイス120は、ワイヤレスシンクデバイス160において適用されるユーザ入力に応答することができる。そのような対話型アプリケーション設定では、ワイヤレスシンクデバイス160において適用されるユーザ入力は、通信チャネル150を通じてワイヤレスディスプレイソースに送り戻され得る。一例では、シンクデバイス160が、シンクデバイス160において適用されるユーザ入力をソースデバイス120に送信できるようにするために、ユーザインターフェースバックチャネル(UIBC:user interface back channel)とも呼ばれる逆方向チャネルアーキテクチャが実装され得る。逆方向チャネルアーキテクチャは、ユーザ入力をトランスポートするための上位レイヤメッセージと、シンクデバイス160およびソースデバイス120においてユーザインターフェース機能をネゴシエートするための下位レイヤフレームとを含み得る。UIBCは、シンクデバイス160とソースデバイス120との間のインターネットプロトコル(IP)トランスポートレイヤ上に存在し得る。このようにして、UIBCは、開放型システム間相互接続(OSI)通信モデルにおいてトランスポートレイヤよりも上にあり得る。一例では、OSI通信は、7つのレイヤ(1−物理、2−データリンク、3−ネットワーク、4−トランスポート、5−セッション、6−プレゼンテーション、および7−アプリケーション)を含む。この例では、トランスポートレイヤよりも上にあるとは、レイヤ5、レイヤ6、およびレイヤ7を指す。ユーザ入力データを含んでいるデータパケットの信頼性の高い送信と順次配信とを促進するために、UIBCは、伝送制御プロトコル/インターネットプロトコル(TCP/IP)またはユーザデータグラムプロトコル(UDP)など、他のパケットベース通信プロトコルの上で動作するように構成され得る。UDPおよびTCPは、OSIレイヤアーキテクチャにおいて並列に動作することができる。TCP/IPにより、シンクデバイス160およびソースデバイス120は、パケットロスの場合に再送信技法を実装することが可能になる。
場合によっては、ソースデバイス120に位置するユーザ入力インターフェースとシンクデバイス160に位置するユーザ入力インターフェースとの間にミスマッチが存在し得る。そのようなミスマッチによってもたらされる潜在的な問題を解決し、そのような状況下での良好なユーザエクスペリエンスを促進するために、ユーザ入力インターフェース機能ネゴシエーションが、通信セッションを確立するより前に、または通信セッション全体を通じて様々な時間に、ソースデバイス120とシンクデバイス160との間で行われ得る。このネゴシエーションプロセスの一部として、ソースデバイス120とシンクデバイス160とは、ネゴシエートされたスクリーン解像度に関して同意し得る。シンクデバイス160が、ユーザ入力に関連付けられた座標データを送信するときには、シンクデバイス160は、ディスプレイ162から取得された座標データを、ネゴシエートされたスクリーン解像度に一致するようにスケーリングすることができる。一例では、シンクデバイス160が1280×720解像度を有し、ソースデバイス120が1600×900解像度を有する場合、それらのデバイスは、たとえば、それらのネゴシエートされた解像度として1280×720を使用し得る。ネゴシエートされた解像度は、シンクデバイス160の解像度に基づいて選択され得るが、ソースデバイス120の解像度または何らかの他の解像度も使用され得る。1280×720のシンクデバイスが使用される例では、シンクデバイス160は、取得されたx座標をソースデバイス120に送信するより前に、その座標を1600/1280倍でスケーリングすることができ、同様に、シンクデバイス160は、取得されたy座標をソースデバイス120に送信するより前に、その座標を900/720でスケーリングすることができる。他の構成では、ソースデバイス120は、取得された座標をネゴシエートされた解像度にスケーリングすることができる。そのスケーリングは、シンクデバイス160がソースデバイス120よりも高い解像度のディスプレイを使用するのか、またはその逆であるのかに基づいて、座標範囲を増加または減少させ得る。
さらに、いくつかの事例では、シンクデバイス160における解像度は、通信セッション中に変動し、ディスプレイ122とディスプレイ162との間のミスマッチをもたらす可能性がある。ユーザエクスペリエンスを改善し、適切な機能を保証するために、ソース/シンクシステム100は、スクリーン正規化のための技法を実装することによって、ユーザ対話ミスマッチを低減するまたは防止するための技法を実装し得る。ソースデバイス120のディスプレイ122とシンクデバイス160のディスプレイ162とは、異なる解像度および/または異なるアスペクト比を有し得る。さらに、いくつかの設定では、シンクデバイス160のユーザは、ソースデバイス120から受信されたビデオデータが、シンクデバイス160のディスプレイ162の全部よりも小さい部分をカバーするウィンドウにおいてレンダリングされるように、ソースデバイス120から受信されたビデオデータのためのディスプレイウィンドウをサイズ変更する能力を有し得る。別の例示的な設定では、シンクデバイス160のユーザは、横長モード(landscape mode)または縦長モード(portrait mode)のいずれかでコンテンツを閲覧するオプションを有し得、それらのモードの各々は、ユニークな座標および異なるアスペクト比を有する。そのような状況では、マウスクリックまたはタッチイベントが起こる座標など、シンクデバイス160において受信されたユーザ入力に関連付けられた座標は、その座標への修正なしにソースデバイス120によって処理されることが可能でないことがある。したがって、本開示の技法は、シンクデバイス160において受信されたユーザ入力の座標を、ソースデバイス120に関連付けられた座標にマッピングすることを含み得る。このマッピングは、本明細書では正規化とも呼ばれ、以下でさらに詳細に説明するように、このマッピングはシンクベースまたはソースベースのいずれかであり得る。
シンクデバイス160によって受信されるユーザ入力は、たとえばドライバレベルで、UIモジュール167によって受信され、シンクデバイス160のオペレーティングシステムに渡され得る。シンクデバイス160上のオペレーティングシステムは、ディスプレイ表面上のどこでユーザ入力が行われたかに関連付けられた座標(xSINK,ySINK)を受信することができる。この例では、(xSINK,ySINK)は、マウスクリックまたはタッチイベントが行われたディスプレイ162の座標であり得る。ディスプレイ162上でレンダリングされているディスプレイウィンドウは、ディスプレイウィンドウのサイズを記述するx座標長さ(LDW)とy座標幅(WDW)とを有し得る。ディスプレイウィンドウは、また、ディスプレイウィンドウのロケーションを記述する左上隅座標(aDW,bDW)も有し得る。LDW、WDW、および左上座標(aDW,bDW)に基づいて、ディスプレイウィンドウによってカバーされるディスプレイ162の部分が決定され得る。たとえば、ディスプレイウィンドウの右上隅は座標(aDW+LDW,bDW)に位置し得、ディスプレイウィンドウの左下隅は座標(aDW,bDW+WDW)に位置し得、ディスプレイウィンドウの右下隅は座標(aDW+LDW,bDW+WDW)に位置し得る。シンクデバイス160は、入力がディスプレイウィンドウ内の座標において受信された場合、その入力をUIBC入力として処理することができる。言い換えれば、関連付けられた座標(xSINK,ySINK)を備えた入力は、以下の条件が満たされる場合、UIBC入力として処理され得る。
Figure 2014511583
Figure 2014511583
ユーザ入力がUIBC入力であると決定した後、その入力に関連付けられた座標は、ソースデバイス120に送信されるより前に、UIPM168によって正規化され得る。ディスプレイウィンドウ外にあると決定された入力は、非UIBC入力としてシンクデバイス160によってローカルで処理され得る。
上述のように、入力座標の正規化は、ソースベースまたはシンクベースのいずれかであり得る。シンクベースの正規化を実装するときには、ソースデバイス120は、ディスプレイ122のためのサポートされるディスプレイ解像度(LSRC,WSRC)を、ビデオデータとともにまたはビデオデータとは切り離して、シンクデバイス160に送ることができる。サポートされるディスプレイ解像度は、たとえば、機能ネゴシエーションセッションの一部として送信され得るか、または通信セッション中の別の時間に送信され得る。シンクデバイス160は、ディスプレイ162のためのディスプレイ解像度(LSINK,WSINK)と、ソースデバイス120から受信されたコンテンツを表示するウィンドウのためのディスプレイウィンドウ解像度(LDW,WDW)と、ディスプレイウィンドウのための左上隅座標(aDW,bDW)とを決定することができる。上記で説明したように、ユーザ入力に対応する座標(xSINK,ySINK)がディスプレイウィンドウ内にあると決定されたときには、シンクデバイス160のオペレーティングシステムは、変換関数を使用して座標(xSINK,ySINK)をソース座標(xSRC,ySRC)にマッピングすることができる。(xSINK,ySINK)を(xSRC,ySRC)に変換するための例示的な変換関数は、以下の通りであり得る。
Figure 2014511583
Figure 2014511583
したがって、受信されたユーザ入力に対応する座標を送信するときには、シンクデバイス160は、(xSINK,ySINK)において受信されたユーザ入力のための座標(xSRC,ySRC)を送信することができる。以下でより詳細に説明するように、座標(xSRC,ySRC)は、たとえば、シンクデバイス160において受信されたユーザ入力をUIBCを通じてソースデバイス120に送信するために使用されるデータパケットの一部として送信され得る。入力座標がデータパケット中に含まれるものとして説明される、本開示の他の部分全体にわたって、それらの座標は、ソース/シンクシステム100がシンクベースの正規化を実装する事例において上記で説明したように、ソース座標に変換され得る。
ソース/シンクシステム100がソースベースの正規化を実装するときには、ローカル入力ではなくUIBC入力である(すなわち、ディスプレイウィンドウ外ではなくディスプレイウィンドウ内にある)と決定されたユーザ入力について、上記の計算は、シンクデバイス160ではなくソースデバイス120において実行され得る。そのような計算を容易にするために、シンクデバイス160は、LDW,WDWについての値、ならびにディスプレイウィンドウについてのロケーション情報(たとえばaDW,bDW)、ならびに(xSINK,ySINK)についての座標を、ソースデバイス120に送信することができる。これらの送信された値を使用して、ソースデバイス120は、上記の式3および式4に従って(xSRC,ySRC)についての値を決定することができる。
シンクベースの正規化の他の実装形態では、シンクデバイス160は、ディスプレイ162上のどこでユーザ入力イベントが行われるかではなく、ディスプレイウィンドウ内のどこでユーザ入力イベントが行われるかを記述する、ユーザ入力に関する座標(xDW,yDW)を送信することができる。そのような実装形態では、座標(xDW,yDW)は、(LDW,WDW)に関する値とともにソースデバイスに120に送信され得る。これらの受信された値に基づいて、ソースデバイス120は、以下の変換関数に従って(xSRC,ySRC)を決定することができる。
Figure 2014511583
Figure 2014511583
シンクデバイス160は、以下の関数に基づいてxDWとyDWとを決定することができる。
Figure 2014511583
Figure 2014511583
本開示が、たとえばデータパケットにおいて、ユーザ入力に関連付けられた座標を送信することについて記載するときには、これらの座標の送信は、上記で説明したようにシンクベースまたはソースベースの正規化を含み得、および/あるいはシンクベースまたはソースベースの正規化を実行するのに必要な任意の追加情報を含み得る。
UIBCは、クロスプラットフォームユーザ入力データを含む、様々なタイプのユーザ入力データをトランスポートするように設計され得る。たとえば、ソースデバイス120は、iOS(登録商標)オペレーティングシステムを実行することができ、一方、シンクデバイス160は、Android(登録商標)またはWindows(登録商標)など、別のオペレーティングシステムを実行する。プラットフォームにかかわらず、UIPM168は、A/V制御モジュール125にとって理解可能な形態で、受信されたユーザ入力をカプセル化することができる。多くの異なるタイプのソースデバイスおよびシンクデバイスが、それらが異なるプラットフォーム上で動作するかどうかにかかわらず、プロトコルを利用できるようにするために、いくつかの異なるタイプのユーザ入力フォーマットがUIBCによってサポートされ得る。一般入力フォーマットが定義されることができ、プラットフォーム固有入力フォーマットが両方ともサポートされることができ、したがって、ユーザ入力がUIBCによってソースデバイス120とシンクデバイス160との間で通信され得る方法のフレキシビリティがもたらされる。
図1Aの例では、ソースデバイス120は、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、Wi−Fi対応テレビジョン、またはオーディオおよびビデオデータを送信することが可能な他のデバイスを備えることができる。シンクデバイス160は、同様に、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、Wi−Fi対応テレビジョン、またはオーディオおよびビデオデータを受信し、ユーザ入力データを受信することが可能な他のデバイスを備えることができる。いくつかの事例では、シンクデバイス160は、ディスプレイ162、スピーカー163、UIデバイス167、およびA/Vエンコーダ164が、すべて、別個であるが相互動作可能なデバイスの一部であるような、複数のデバイスのシステムを含み得る。ソースデバイス120は、同様に、単一のデバイスではなく、複数のデバイスのシステムであることができる。
本開示では、ソースデバイスという用語は、概して、オーディオ/ビデオデータを送信しているデバイスを指すために使用され、シンクデバイスという用語は、概して、ソースデバイスからオーディオ/ビデオデータを受信しているデバイスを指すために使用される。多くの場合、ソースデバイス120およびシンクデバイス160は、一方のデバイスがソースとして動作し、他方がシンクとして動作する、同様または同一のデバイスであることができる。さらに、これらの役割は、異なる通信セッションでは逆になることがある。したがって、1つの通信セッションにおけるシンクデバイスは、後続の通信セッションではソースデバイスになり得、その逆もまた同様である。
図1Bは、本開示の技法を実装し得る例示的なソース/シンクシステム101を示すブロック図である。ソース/シンクシステム101は、ソースデバイス120とシンクデバイス160とを含み、それらの各々は、図1Aについて上記で説明した方法で機能し、動作し得る。ソース/シンクシステム101はシンクデバイス180をさらに含む。上記で説明したシンクデバイス160と同様の方法で、シンクデバイス180は、ソースデバイス120からオーディオおよびビデオデータを受信し、確立されたUIBCを通じてソースデバイス120にユーザコマンドを送信し得る。いくつかの構成では、シンクデバイス160とシンクデバイス180とは、互いに独立して動作することができ、ソースデバイス120において出力されるオーディオおよびビデオデータは、シンクデバイス160とシンクデバイス180とにおいて同時に出力され得る。代替構成では、シンクデバイス160は1次シンクデバイスであり得、シンクデバイス180は2次シンクデバイスであり得る。そのような例示的な構成では、シンクデバイス160とシンクデバイス180とは結合されることができ、シンクデバイス160はビデオデータを表示することができ、シンクデバイス180は対応するオーディオデータを出力する。さらに、いくつかの構成では、シンクデバイス160は伝送されたビデオデータのみを出力することができ、シンクデバイス180は伝送されたオーディオデータのみを出力する。
図2は、ソースデバイス220の一例を示すブロック図である。ソースデバイス220は、図1A中のソースデバイス120と同様のデバイスであることができ、ソースデバイス120と同じ方法で動作することができる。ソースデバイス220は、ローカルディスプレイ222と、ローカルスピーカー223と、プロセッサ231と、メモリ232と、トランスポートユニット233と、ワイヤレスモデム234とを含む。図2に示すように、ソースデバイス220は、トランスポート、記憶、および表示のためにA/Vデータを符号化および/または復号する1つまたは複数のプロセッサ(すなわちプロセッサ231)を含み得る。A/Vデータは、たとえばメモリ232において記憶され得る。メモリ232は、A/Vファイル全体を記憶することができ、または、たとえば、別のデバイスまたはソースからストリーミングされた、A/Vファイルの一部分を単純に記憶する、より小さいバッファを備えることができる。トランスポートユニット233は、符号化A/Vデータをネットワークトランスポートのために処理することができる。たとえば、符号化A/Vデータは、プロセッサ231によって処理され、ネットワーク上での通信のためにトランスポートユニット233によってネットワークアクセスレイヤ(NAL:Network Access Layer)ユニットにカプセル化されることができる。NALユニットは、ワイヤレスモデム234によってネットワーク接続を介してワイヤレスシンクデバイスに送られることができる。ワイヤレスモデム234は、たとえば、IEEE802.11規格ファミリーのうちの1つを実装するように構成されたWi−Fiモデムであり得る。
また、ソースデバイス220は、A/Vデータをローカルで処理し、表示することができる。具体的には、ディスプレイプロセッサ235は、ローカルディスプレイ222上で表示されるようにビデオデータを処理することができ、オーディオプロセッサ236は、スピーカー223上での出力のためにオーディオデータを処理することができる。
図1Aのソースデバイス120に関して上記で説明したように、ソースデバイス220は、また、シンクデバイスからユーザ入力コマンドを受信し得る。このようにして、ソースデバイス220のワイヤレスモデム234は、NALユニットなどのカプセル化されたデータパケットを受信し、カプセル化されたデータユニットをカプセル化解除のためにトランスポートユニット233に送る。たとえば、トランスポートユニット233は、NALユニットからデータパケットを抽出することができ、プロセッサ231は、ユーザ入力コマンドを抽出するためにデータパケットをパースすることができる。ユーザ入力コマンドに基づいて、プロセッサ231は、ソースデバイス220によってシンクデバイスに送信されている符号化A/Vデータを調整することができる。このようにして、図1AのA/V制御モジュール125に関して上記で説明した機能は、完全にまたは部分的に、プロセッサ231によって実装され得る。
図2のプロセッサ231は、概して、これらに限定するものではないが、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、他の等価な集積回路またはディスクリート論理回路を含む、多種多様なプロセッサのうちのいずれか、あるいはそれらの何らかの組合せを表す。図2のメモリ232は、これらに限定するものではないが、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュメモリなどを含む、多種多様な揮発性または不揮発性メモリのうちのいずれかを備え得る。メモリ232は、オーディオ/ビデオデータならびに他の種類のデータを記憶するためのコンピュータ可読記憶媒体を備え得る。メモリ232は、本開示で説明する様々な技法を実行することの一部としてプロセッサ231によって実行される命令およびプログラムコードをさらに記憶し得る。
図3に、シンクデバイス360の一例を示す。シンクデバイス360は、図1A中のシンクデバイス160と同様のデバイスであり得、シンクデバイス160と同じ方法で動作し得る。シンクデバイス360は、1つまたは複数のプロセッサ(すなわちプロセッサ331)と、メモリ332と、トランスポートユニット333と、ワイヤレスモデム334と、ディスプレイプロセッサ335と、ローカルディスプレイ362と、オーディオプロセッサ336と、スピーカー363と、ユーザ入力インターフェース376とを含む。シンクデバイス360は、ワイヤレスモデム334において、ソースデバイスから送られたカプセル化されたデータユニットを受信する。ワイヤレスモデム334は、たとえば、IEEE802.11規格ファミリーからの1つまたは複数の規格を実装するように構成されたWi−Fiモデムであり得る。トランスポートユニット333は、カプセル化されたデータユニットをカプセル化解除することができる。たとえば、トランスポートユニット333は、カプセル化されたデータユニットから符号化ビデオデータを抽出し、符号化A/Vデータを、出力のために復号され、レンダリングされるように、プロセッサ331に送ることができる。ディスプレイプロセッサ335は、ローカルディスプレイ362上で表示されるように復号ビデオデータを処理することができ、オーディオプロセッサ336は、スピーカー363上での出力のために復号オーディオデータを処理することができる。
オーディオおよびビデオデータをレンダリングすることに加えて、ワイヤレスシンクデバイス360は、また、ユーザ入力インターフェース376を通じてユーザ入力データを受信することができる。ユーザ入力インターフェース376は、これらに限定するものではないが、タッチディスプレイインターフェース、キーボード、マウス、ボイスコマンドモジュール、(たとえば、カメラベースの入力キャプチャ機能をもつ)ジェスチャキャプチャデバイスを含む、いくつかのユーザ入力デバイスのうちのいずれか、またはいくつかのユーザ入力デバイスのうちの他のユーザ入力デバイスを表すことができる。ユーザ入力インターフェース376を通じて受信されたユーザ入力は、プロセッサ331によって処理され得る。この処理は、本開示で説明する技法に従って、受信されたユーザ入力コマンドを含むデータパケットを生成することを含み得る。生成されると、トランスポートユニット333は、そのデータパケットを、UIBCを通じたワイヤレスソースデバイスへのネットワークトランスポートのために処理し得る。
図3のプロセッサ331は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、他の等価な集積回路またはディスクリート論理回路など、広範囲のプロセッサのうちの1つまたは複数、あるいはそれらの何らかの組合せを備え得る。図3のメモリ332は、これらに限定するものではないが、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュメモリなどを含む、多種多様な揮発性または不揮発性メモリのいずれかを備え得る。メモリ232は、オーディオ/ビデオデータならびに他の種類のデータを記憶するためのコンピュータ可読記憶媒体を備え得る。メモリ332は、本開示で説明する様々な技法を実行することの一部としてプロセッサ331によって実行される命令とプログラムコードとをさらに記憶することができる。
図4に、通信チャネル150を通じて通信するために図1Aの送信機/受信機126と送信機/受信機166とによって使用され得る、例示的な送信機システム410および受信機システム450のブロック図を示す。送信機システム410において、いくつかのデータストリームについてのトラフィックデータがデータソース412から送信(TX)データプロセッサ414に与えられる。各データストリームは、それぞれの送信アンテナを通じて送信され得る。TXデータプロセッサ414は、各データストリームについてのトラフィックデータを、そのデータストリームのために選択された特定のコーディングスキームに基づいてフォーマットし、コーディングし、インターリーブする。
各データストリームについてのコード化データは、直交周波数分割多重化(OFDM)技法を使用してパイロットデータと多重化され得る。これらに限定するものではないが、時分割多元接続(TDMA)、周波数分割多元接続(FDMA)、符号分割多元接続(CDMA)、あるいはOFDM、FDMA、TDMAおよび/またはCDMAの任意の組合せを含む、多種多様な他のワイヤレス通信技法も使用され得る。
図4に一致して、パイロットデータは、通常、既知の方法で処理される既知のデータパターンであり、チャネル応答を推定するために受信機システムにおいて使用され得る。次いで、各データストリームの多重化されたパイロットおよびコード化データは、変調シンボルを提供するために、そのデータストリームに関して選択された特定の変調スキーム(たとえば、2位相シフトキーイング(BPSK)、4位相シフトキーイング(QPSK)、M−PSK、またはM−QAM(直交振幅変調)、ここでMは2のべき乗であり得る)に基づいて変調(たとえば、シンボルマッピング)される。各データストリームについてのデータレート、コーディング、および変調は、メモリ432に結合され得るプロセッサ430によって実行される命令によって決定され得る。
次いで、データストリームに関する変調シンボルがTX MIMOプロセッサ420に与えられ、TX MIMOプロセッサ420はさらに(たとえば、OFDMについて)その変調シンボルを処理し得る。次いで、TX MIMOプロセッサ420は、NT個の変調シンボルストリームをNT個の送信機(TMTR)422a〜422tに与えることができる。いくつかの態様では、TX MIMOプロセッサ420は、データストリームのシンボルと、シンボルがそこから送信されるアンテナとに、ビームフォーミング重みを適用する。
各送信機422は、それぞれのシンボルストリームを受信し、処理して、1つまたは複数のアナログ信号を提供し、さらに、それらのアナログ信号を調整(たとえば、増幅、フィルタ処理、およびアップコンバート)して、MIMOチャネルを通じた送信に適した被変調信号を提供することができる。次いで、送信機422a〜422tからのNT個の被変調信号は、それぞれ、NT個のアンテナ424a〜424tから送信される。
受信機システム450において、送信された被変調信号は、NR個のアンテナ452a〜452rによって受信され、各アンテナ452からの受信信号は、それぞれの受信機(RCVR)454a〜454rに与えられる。受信機454は、それぞれの受信信号を調整(たとえば、フィルタ処理、増幅、およびダウンコンバート)し、調整された信号をデジタル化してサンプルを提供し、さらにそれらのサンプルを処理して、対応する「受信」シンボルストリームを提供する。
次いで、受信(RX)データプロセッサ460は、NR個の受信機454からNR個の受信シンボルストリームを受信し、特定の受信機処理技法に基づいて処理して、NT個の「検出」シンボルストリームを提供する。次いで、RXデータプロセッサ460は、各検出シンボルストリームを復調し、デインターリーブし、復号して、データストリームについてのトラフィックデータを復元する。RXデータプロセッサ460による処理は、送信機システム410におけるTX MIMOプロセッサ420およびTXデータプロセッサ414によって実行される処理と相補的なものである。
メモリ472と結合され得るプロセッサ470は、どのプリコーディング行列を使用すべきかを定期的に決定する。逆方向リンクメッセージは、通信リンクおよび/または受信データストリームに関する様々なタイプの情報を含み得る。次いで、逆方向リンクメッセージは、データソース436からいくつかのデータストリームについてのトラフィックデータをも受信するTXデータプロセッサ438によって処理され、変調器480によって変調され、送信機454a〜454rによって調整され、送信機システム410に送り戻される。
送信機システム410において、受信機システム450からの被変調信号は、アンテナ424によって受信され、受信機422によって調整され、復調器440によって復調され、RXデータプロセッサ442によって処理されて、受信機システム450によって送信された逆方向リンクメッセージが抽出される。次いで、プロセッサ430は、ビームフォーミング重みを決定するためにどのプリコーディング行列を使用すべきかを決定し、次いで、抽出されたメッセージを処理する。
図5Aは、機能ネゴシエーションセッションの一部としてのソースデバイス520とシンクデバイス560との間の例示的なメッセージ転送シーケンスを示すブロック図である。機能ネゴシエーションは、ソースデバイス520とシンクデバイス560との間のより大きい通信セッション確立プロセスの一部として行われ得る。このセッションは、たとえば、基礎をなす接続性規格としてのWi−Fi DirectまたはTDLSによって確立され得る。Wi−Fi DirectまたはTDLSセッションを確立した後、シンクデバイス560は、ソースデバイス520とのTCP接続を開始することができる。TCP接続を確立することの一部として、ソースデバイス520とシンクデバイス560との間の通信セッションを管理するために、リアルタイムストリーミングプロトコル(RTSP:real time streaming protocol)を実行する制御ポートが確立されることができる。
ソースデバイス520は、概して、図1Aのソースデバイス120について上記で説明したのと同じ方法で動作し得、シンクデバイス560は、概して、図1Aのシンクデバイス160について上記で説明したのと同じ方法で動作し得る。ソースデバイス520とシンクデバイス560とが接続を確立した後、ソースデバイス520とシンクデバイス560とは、機能ネゴシエーション交換の一部としてそれらのデバイスの後続の通信セッションのために使用されるべきパラメータのセットを決定し得る。
ソースデバイス520とシンクデバイス560とは、メッセージのシーケンスを通じて機能をネゴシエートし得る。それらのメッセージは、たとえば、リアルタイムストリーミングプロトコル(RTSP)メッセージであり得る。ネゴシエーションの任意の段階において、RTSP要求メッセージの受信側が、RTSP OK以外のRTSPステータスコードを含むRTSP応答で応答することができ、その場合、メッセージ交換は、パラメータの異なるセットを用いて再試行されることができ、または機能ネゴシエーションセッションは終了されることができる。
ソースデバイス520は、シンクデバイス560がサポートするRTSP方法のセットを決定するために、シンクデバイス560に第1のメッセージ(RTSP OPTIONS要求メッセージ)を送ることができる。ソースデバイス520から第1のメッセージを受信すると、シンクデバイス560は、シンク560によってサポートされるRTSP方法をリストする第2のメッセージ(RTSP OPTIONS応答メッセージ)で応答することができる。また、第2のメッセージは、RTSP OKステータスコードを含み得る。
ソースデバイス520に第2のメッセージを送った後に、シンクデバイス560は、ソースデバイス520がサポートするRTSP方法のセットを決定するために、第3のメッセージ(RTSP OPTIONS要求メッセージ)を送ることができる。シンクデバイス560から第3のメッセージを受信すると、ソースデバイス520は、ソースデバイス520によってサポートされるRTSP方法をリストする第4のメッセージ(RTSP OPTIONS応答メッセージ)で応答することができる。また、第4のメッセージはRTSP OKステータスコードを含むことができる。
第4のメッセージを送った後に、ソースデバイス520は、ソースデバイス520にとって関心のある機能のリストを指定するために、第5のメッセージ(RTSP GET_PARAMETER要求メッセージ)を送ることができる。シンクデバイス560は第6のメッセージ(RTSP GET_PARAMETER応答メッセージ)で応答することができる。第6のメッセージはRTSPステータスコードを含み得る。RTSPステータスコードがOKである場合、第6のメッセージは、また、シンクデバイス560によってサポートされる、第5のメッセージ中で指定されたパラメータに対する応答パラメータを含むことができる。シンクデバイス560は、シンクデバイス560がサポートしない第5のメッセージ中のパラメータを無視することができる。
第6のメッセージに基づいて、ソース520は、通信セッションのために使用されるべきパラメータの最適セットを決定することができ、シンクデバイス560に第7のメッセージ(RTSP SET_PARAMETER要求メッセージ)を送ることができる。第7のメッセージは、ソースデバイス520とシンクデバイス560との間の通信セッション中に使用されるべきパラメータセットを含み得る。第7のメッセージは、通信セッションをセットアップするためにRTSP Setup要求中で使用されるべきユニバーサルリソース識別子(URI:Universal Resource Identifier)を記述するwfd−presentation−urlを含むことができる。wfd−presentation−urlは、シンクデバイス560がセッション確立交換中に後のメッセージのために使用できるURIを指定する。このパラメータ中で指定されたwfd−url0値およびwfd−url1値は、第7のメッセージ中のwfd−client−rtp−ports中のrtp−port0値およびrtp−port1値の値に対応することができる。この事例におけるRTPは、概して、UDPの上で動作することができるリアルタイムプロトコルを指す。
第7のメッセージを受信すると、シンクデバイス560は、第7のメッセージ中で指定されたパラメータを設定することが成功したかどうかを示すRTSPステータスコードをもつ、第8のメッセージで応答することができる。上述のように、ソースデバイスとシンクデバイスとの役割は、異なるセッションでは逆になるかまたは変化し得る。通信セッションをセットアップするメッセージの順序は、場合によっては、ソースとして動作するデバイスを定義し、シンクとして動作するデバイスを定義し得る。
図5Bは、機能ネゴシエーションセッションの一部としてのソースデバイス560とシンクデバイス520との間の別の例示的なメッセージ転送シーケンスを示すブロック図である。図5Bのメッセージ転送シーケンスは、図5Aについて上記で説明した転送シーケンスのより詳細な図を与えることを目的とする。図5Bでは、メッセージ「1b.GET_PARAMETER応答」は、サポートされる入力カテゴリー(たとえば一般およびHIDC)のリストとサポートされる入力タイプの複数のリストとを識別するメッセージの一例を示す。サポートされる入力カテゴリーのリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられたリスト(たとえばgeneric_cap_listおよびhidc_cap_list)を有する。図5Bでは、メッセージ「2a.SET_PARAMETER要求」は、サポートされる入力カテゴリー(たとえば一般およびHIDC)の第2のリストと、サポートされるタイプの複数の第2のリストとを識別する、第2のメッセージの一例である。サポートされる入力カテゴリーの第2のリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられた第2のリスト(たとえばgeneric_cap_listおよびhidc_cap_list)を有する。メッセージ「1b.GET_PARAMETER応答」は、シンクデバイス560によってサポートされる入力カテゴリーと入力タイプとを識別する。メッセージ「2a.SET_PARAMETER要求」は、ソースデバイス520によってサポートされる入力カテゴリーと入力タイプとを識別するが、それは、ソースデバイス520によってサポートされるすべての入力カテゴリーおよび入力タイプの包括的なリストではないことがある。代わりに、メッセージ「2a.SET_PARAMETER要求」は、シンクデバイス560によってサポートされるものとしてメッセージ「1b.GET_PARAMETER応答」中で識別された入力カテゴリーおよび入力タイプのみを識別し得る。このようにして、メッセージ「2a.SET_PARAMETER要求」中で識別される入力カテゴリーおよび入力タイプは、メッセージ「1b.GET_PARAMETER応答」中で識別された入力カテゴリーおよび入力タイプのサブセットを構成し得る。
図6は、シンクデバイスによって生成され、ソースデバイスに送信され得る、データパケットの一例を示す概念図である。データパケット600の態様については、図1Aを参照して説明するが、説明する技法は、追加のタイプのソース/シンクシステムに適用可能であり得る。データパケット600は、ペイロードデータ650がそれに後続する、データパケットヘッダ610を含み得る。ペイロードデータ650は、1つまたは複数のペイロードヘッダ(たとえばペイロードヘッダ630)をさらに含み得る。データパケット600は、たとえば、シンクデバイス160のユーザが、ソースデバイス120によって送信されているオーディオ/ビデオデータを制御できるように、図1Aのシンクデバイス160からソースデバイス120に送信され得る。そのような場合、ペイロードデータ650は、シンクデバイス160において受信されたユーザ入力データを含み得る。ペイロードデータ650は、たとえば、1つまたは複数のユーザコマンドを識別し得る。シンクデバイス160は、1つまたは複数のユーザコマンドを受信することができ、受信されたコマンドに基づいて、データパケットヘッダ610とペイロードデータ650とを生成することができる。データパケット600のデータパケットヘッダ610のコンテンツに基づいて、ソースデバイス120は、シンクデバイス160において受信されたユーザ入力データを識別するためにペイロードデータ650をパースすることができる。ペイロードデータ650中に含まれているユーザ入力データに基づいて、ソースデバイス120は、ソースデバイス120からシンクデバイス160に送信されているオーディオおよびビデオデータを何らかの方法で変更し得る。
本開示で使用する「パース」および「パーシング」という用語は、概して、ビットストリームからデータを抽出するためにビットストリームを分析するプロセスを指す。抽出されると、データは、たとえば、ソースデバイス120によって処理されることができる。データを抽出することは、たとえば、ビットストリーム中の情報がどのようにフォーマットされているかを識別することを含み得る。以下でより詳細に説明するように、データパケットヘッダ610は、ソースデバイス120とシンクデバイス160の両方にとって既知である規格化されたフォーマットを定義し得る。ただし、ペイロードデータ650は、多くの可能な方法のうちの1つでフォーマットされ得る。データパケットヘッダ610をパースすることによって、ソースデバイス120は、ペイロードデータ650がどのようにフォーマットされているかを決定することができ、したがって、ソースデバイス120は、ペイロードデータ650から1つまたは複数のユーザ入力コマンドを抽出するためにペイロードデータ650をパースすることができる。これは、ソースシンク通信においてサポートされ得る異なるタイプのペイロードデータの観点からフレキシビリティを与えることができる。以下でより詳細に説明するように、ペイロードデータ650は、ペイロードヘッダ630などの1つまたは複数のペイロードヘッダをも含み得る。そのような場合、ソースデバイス120は、ペイロードヘッダ630についてのフォーマットを決定するためにデータパケットヘッダ610をパースし、次いで、ペイロードデータ650の残りについてのフォーマットを決定するためにペイロードヘッダ630をパースし得る。
図620は、データパケットヘッダ610がどのようにフォーマットされ得るかについての概念図である。行615における番号0〜15は、データパケットヘッダ610内のビットロケーションを識別することを目的としており、データパケットヘッダ610内に含まれている情報を実際に表すことを目的としていない。データパケットヘッダ610は、バージョンフィールド621と、タイムスタンプフラグ622と、予約済みフィールド623と、入力カテゴリーフィールド624と、長さフィールド625と、オプションのタイムスタンプフィールド626とを含む。
図6の例では、バージョンフィールド621は、シンクデバイス160によって実装されている特定の通信プロトコルのバージョンを示し得る3ビットフィールドである。バージョンフィールド621中の値は、データパケットヘッダ610の残りをどのようにパースすべきか、ならびにペイロードデータ650をどのようにパースすべきかを、ソースデバイス120に通知し得る。図6の例では、バージョンフィールド621は、8つの異なるバージョンについてのユニークな識別子を可能にする、3ビットフィールドである。他の例では、より多いまたはより少ないビットがバージョンフィールド621に専用とされ得る。
図6の例では、タイムスタンプフラグ(T)622は、タイムスタンプフィールド626がデータパケットヘッダ610中に存在するか否かを示す1ビットフィールドである。タイムスタンプフィールド626は、ソースデバイス120によって生成され、シンクデバイス160に送信された、マルチメディアデータに基づくタイムスタンプを含んでいる、16ビットフィールドである。タイムスタンプは、たとえば、ビデオのフレームがシンクデバイス160に送信されるより前に、ソースデバイス120によって該ビデオのフレームに割り当てられる、連続値であり得る。タイムスタンプフラグ622は、たとえば、タイムスタンプフィールド626が存在することを示すための「1」を含むことができ、また、タイムスタンプフィールド626が存在しないことを示すための「0」を含むことができる。データパケットヘッダ610をパースし、タイムスタンプフィールド626が存在すると決定すると、ソースデバイス120は、タイムスタンプフィールド626中に含まれるタイムスタンプを処理することができる。データパケットヘッダ610をパースし、タイムスタンプフィールド626が存在しないと決定すると、ソースデバイス120は、データパケットヘッダ610中にタイムスタンプフィールドが存在しないので、長さフィールド625をパースした後にペイロードデータ650をパースし始めることができる。
存在する場合、タイムスタンプフィールド626は、ペイロードデータ650のユーザ入力データが取得されたときにワイヤレスシンクデバイス160において表示されていたビデオデータのフレームを識別するためのタイムスタンプを含むことができる。タイムスタンプは、たとえば、ソースデバイス120がシンクデバイス160にビデオのフレームを送信するより前に、ソースデバイス120によってビデオのフレームに追加され得る。したがって、ソースデバイス120は、ビデオのフレームを生成し、そのフレームのビデオデータ中に、たとえばメタデータとして、タイムスタンプを埋め込むことができる。ソースデバイス120は、タイムスタンプとともに、ビデオフレームをシンクデバイス160に送信することができ、シンクデバイス160は、ビデオのフレームを表示することができる。ビデオのフレームがシンクデバイス160によって表示されている間、シンクデバイス160は、ユーザからユーザコマンドを受信することができる。シンクデバイス160がユーザコマンドをソースデバイス120に転送するためにデータパケットを生成するときには、シンクデバイス160は、ユーザコマンドが受信されたときにシンクデバイス160によって表示されていたフレームのタイムスタンプをタイムスタンプフィールド626中に含めることができる。
タイムスタンプフィールド626がヘッダ中に存在するデータパケット600を受信すると、ワイヤレスソースデバイス120は、ペイロードデータ650のユーザ入力データが取得された時にシンクデバイス160において表示されているビデオのフレームを識別し、タイムスタンプによって識別されるフレームのコンテンツに基づいてユーザ入力データを処理することができる。たとえば、ユーザ入力データが、タッチディスプレイに適用されたタッチコマンド、またはマウスポインタのクリックである場合、ソースデバイス120は、ユーザがディスプレイにタッチコマンドを適用したかまたはマウスをクリックした時に表示されているフレームのコンテンツを決定することができる。いくつかの事例では、ペイロードデータを適切に処理するためにフレームのコンテンツが必要とされ得る。たとえば、ユーザタッチまたはマウスクリックに基づくユーザ入力は、タッチまたはクリックの時にディスプレイ上に何が示されていたかに依存し得る。タッチまたはクリックは、たとえば、アイコンまたはメニューオプションに対応し得る。ディスプレイのコンテンツが変化している事例では、タイムスタンプフィールド626中に存在するタイムスタンプは、タッチまたはクリックを正しいアイコンまたはメニューオプションに整合させるために、ソースデバイス120によって使用され得る。
ソースデバイス120は、追加的にまたは代替的に、タイムスタンプフィールド626中のタイムスタンプを、ビデオの現在レンダリングされているフレームに適用されているタイムスタンプと比較し得る。タイムスタンプフィールド626のタイムスタンプを現在のタイムスタンプと比較することによって、ソースデバイス120は、ラウンドトリップ時間を決定することができる。ラウンドトリップ時間は、概して、フレームがソースデバイス120によって送信された時点から、そのフレームに基づくユーザ入力がシンクデバイス160からソースデバイス120に戻って受信された時点までに経過した時間量に対応する。ラウンドトリップ時間は、ソースデバイス120にシステムレイテンシの指示を与えることができ、ラウンドトリップ時間がしきい値よりも大きい場合、ソースデバイス120は、入力コマンドが古いディスプレイフレームに適用されたという仮定の下で、ペイロードデータ650中に含まれているユーザ入力データを無視し得る。ラウンドトリップ時間がしきい値よりも小さいときには、ソースデバイス120は、ユーザ入力データを処理し、ユーザ入力データに応答して、送信されているオーディオ/ビデオコンテンツを調整し得る。しきい値は、プログラマブルであることができ、異なるタイプのデバイス(または異なるソースシンク組合せ)が、許容可能なラウンドトリップ時間について異なるしきい値を定義するように構成され得る。
図6の例では、予約済みフィールド623は、データパケットヘッダ610とペイロードデータ650とをパースする際にソース120によって使用される情報を含まない8ビットフィールドである。ただし、(バージョンフィールド621中で識別される)特定のプロトコルの将来のバージョンが、予約済みフィールド623を利用し得、その場合、ソースデバイス120は、データパケットヘッダ610をパースするために、および/またはペイロードデータ650をパースするために、予約済みフィールド623中の情報を使用し得る。予約済みフィールド623は、バージョンフィールド621とともに、すでに使用中のフォーマットおよび特徴を根本的に変更することなしに、特徴を拡張し、特徴をデータパケットフォーマットに追加するための機能を潜在的に与える。
図6の例では、入力カテゴリーフィールド624は、ペイロードデータ650中に含まれているユーザ入力データについての入力カテゴリーを識別するための4ビットフィールドである。シンクデバイス160は、入力カテゴリーを決定するためにユーザ入力データをカテゴリー分類し得る。ユーザ入力データをカテゴリー分類することは、たとえば、コマンドがそこから受信されたデバイスに基づくか、またはコマンド自体のプロパティに基づき得る。入力カテゴリーフィールド624の値は、場合によってはデータパケットヘッダ610の他の情報とともに、ペイロードデータ650がどのようにフォーマットされているかをソースデバイス120に対して識別する。このフォーマッティングに基づいて、ソースデバイス120は、シンクデバイス160において受信されたユーザ入力を決定するためにペイロードデータ650をパースすることができる。
図6の例では入力カテゴリー624が4ビットであるので、16個の異なる入力カテゴリーが識別され得る可能性がある。1つのそのような入力カテゴリーは、ペイロードデータ650のユーザ入力データが、ソースデバイス120とシンクデバイス160の両方によって実行されているプロトコルにおいて定義される一般情報要素を使用してフォーマットされていることを示すための、一般入力フォーマットであり得る。一般入力フォーマットは、以下でより詳細に説明するように、シンクデバイス160のユーザがアプリケーションレベルでソースデバイス120と対話することを可能にする、一般情報要素を利用し得る。
別のそのような入力カテゴリーは、ペイロードデータ650のユーザ入力データが、入力データを受信するために使用される入力デバイスのタイプに基づいてフォーマットされていることを示すための、ヒューマンインターフェースデバイスコマンド(HIDC:human interface device command)フォーマットであり得る。デバイスのタイプの例は、キーボード、マウス、タッチ入力デバイス、ジョイスティック、カメラ、(カメラベースの入力デバイスなどの)ジェスチャキャプチャデバイス、および遠隔制御装置を含む。入力カテゴリーフィールド624中で識別され得る他のタイプの入力カテゴリーは、ペイロードデータ650中のユーザデータがシンクデバイス160から出ていないことを示すためのフォワーディング入力フォーマット、またはオペレーティングシステム固有フォーマット、およびペイロードデータ650がボイスコマンドを含むことを示すためのボイスコマンドフォーマットを含む。
長さフィールド625は、データパケット600の長さを示すための16ビットフィールドを備え得る。長さは、たとえば、8ビットの単位で示され得る。データパケット600が16ビットのワードでソースデバイス120によってパースされるとき、データパケット600は16ビットの整数までパディングされ得る。長さフィールド625中に含まれている長さに基づいて、ソースデバイス120は、ペイロードデータ650の終了(すなわちデータパケット600の終了)と新しい後続のデータパケットの開始とを識別することができる。
図6の例で与えられるフィールドの様々なサイズは、単に説明を目的としたものであり、それらのフィールドは、図6に示すものとは異なる数のビットを使用して実装され得ることが意図されている。さらに、データパケットヘッダ610は、上記で説明したすべてのフィールドよりも少数のフィールドを含み得るか、または上記で説明していない追加のフィールドを使用し得ることも企図される。実際、本開示の技法は、パケットの様々なデータフィールドのために使用される実際のフォーマットの観点から、フレキシブルであり得る。
ペイロードデータ650のフォーマッティングを決定するためにデータパケットヘッダ610をパースした後、ソースデバイス120は、ペイロードデータ650中に含まれているユーザ入力コマンドを決定するためにペイロードデータ650をパースすることができる。ペイロードデータ650は、ペイロードデータ650のコンテンツを示すそれ自体のペイロードヘッダ(ペイロードヘッダ630)を有し得る。このようにして、ソースデバイス120は、データパケットヘッダ610のパーシングに基づいてペイロードヘッダ630をパースし、次いで、ペイロードヘッダ630のパーシングに基づいて残りのペイロードデータ650をパースし得る。
たとえば、データパケットヘッダ610の入力カテゴリーフィールド624が、一般入力がペイロードデータ650中に存在することを示す場合、ペイロードデータ650は一般入力フォーマットを有し得る。したがって、ソースデバイス120は、一般入力フォーマットに従ってペイロードデータ650をパースすることができる。一般入力フォーマットの一部として、ペイロードデータ650は、各入力イベントがそれ自体の入力イベントヘッダを有する、一連の1つまたは複数の入力イベントを含むことができる。以下の表1は、入力ヘッダ中に含まれ得るフィールドを識別する。
Figure 2014511583
一般入力イベント(IE:input event)識別情報(ID:identification)フィールドは、入力タイプを識別するための一般入力イベント識別情報を識別する。一般IE IDフィールドは、たとえば、長さが1オクテットであり得、以下の表2から選択された識別情報を含み得る。この例のように、一般IE IDフィールドが8ビットである場合、256個の異なるタイプの入力(0〜255と識別される)が識別可能であり得るが、必ずしも256個の識別情報すべてが関連付けられた入力タイプを必要とするわけではない。上記256個の一部は、シンクデバイス160とソースデバイス120とによって実装されているいかなるプロトコルの将来のバージョンとの将来の使用のためにも予約され得る。表2では、たとえば、一般IE ID9〜255は、関連付けられた入力タイプを有しないが、将来、入力タイプを割り当てられ得る。
入力イベントヘッダ中の長さフィールドは、記述フィールドの長さを識別し、記述フィールドは、ユーザ入力を記述する情報要素を含む。記述フィールドのフォーマッティングは、一般IE IDフィールド中で識別される入力のタイプに依存し得る。したがって、ソースデバイス120は、一般IE IDフィールド中で識別される入力タイプに基づいて記述フィールドのコンテンツをパースし得る。入力イベントヘッダの長さフィールドに基づいて、ソースデバイス120は、ペイロードデータ650中の1つの入力イベントの終了と新しい入力イベントの開始とを決定することができる。以下でより詳細に説明するように、1つのユーザコマンドはペイロードデータ650中で1つまたは複数の入力イベントとして記述され得る。
表2は、それぞれ入力タイプを識別するために使用され得る対応する一般IE IDを用いた、入力タイプの一例を与える。
Figure 2014511583
各入力タイプに関連付けられた記述フィールドは異なるフォーマットを有し得る。左マウスダウン/タッチダウンイベント、左マウスアップ/タッチアップイベント、およびマウス移動/タッチ移動イベントの記述フィールドは、たとえば、以下の表3中で識別される情報要素を含み得るが、他の例では他のフォーマットも使用され得る。
Figure 2014511583
ポインタの数は、入力イベントに関連付けられたタッチまたはマウスクリックの数を識別し得る。各ポインタは、ユニークなポインタIDを有し得る。たとえば、マルチタッチイベントが3本指タッチを含む場合、入力イベントは、それぞれユニークなポインタIDを用いた、3つのポインタを有し得る。各ポインタ(すなわち各指のタッチ)は、そのタッチがどこで行われたかに対応する、対応するx座標およびy座標を有し得る。
単一のユーザコマンドが一連の入力イベントとして記述され得る。たとえば、3本指スワイプが、アプリケーションを閉じるためのコマンドである場合、3本指スワイプは、3つのポインタを用いたタッチダウンイベント、3つのポインタを用いたタッチ移動イベント、および3つのポインタを用いたタッチアップイベントとして、ペイロードデータ650中で記述され得る。タッチダウンイベントの3つのポインタは、タッチ移動イベントおよびタッチアップイベントの3つのポインタと同じポインタIDを有し得る。ソースデバイス120は、それらの3つの入力イベントの組合せを3本指スワイプとして解釈することができる。
キーダウンイベントまたはキーアップイベントの記述フィールドは、たとえば、以下の表4中で識別される情報要素を含み得る。
Figure 2014511583
ズームイベントの記述フィールドは、たとえば、以下の表5中で識別される情報要素を含み得る。
Figure 2014511583
水平スクロールイベントまたは垂直スクロールイベントの記述フィールドは、たとえば、以下の表6中で識別される情報要素を含み得る。
Figure 2014511583
上記の例は、一般入力カテゴリーの場合にペイロードデータがフォーマットされ得るいくつかの例示的な方法を示している。データパケットヘッダ610の入力カテゴリーフィールド624が、フォワーディングされたユーザ入力など、異なる入力カテゴリーを示す場合、ペイロードデータ650は異なる入力フォーマットを有し得る。フォワーディングされたユーザ入力の場合、シンクデバイス160は、サードパーティデバイスからユーザ入力データを受信し、そのユーザ入力データを解釈することなしにその入力をソースデバイス120にフォワーディングし得る。したがって、ソースデバイス120は、フォワーディングされたユーザ入力フォーマットに従ってペイロードデータ650をパースすることができる。たとえば、ペイロードデータ650のペイロードヘッダ630は、ユーザ入力がそこから取得されたサードパーティデバイスを識別するためのフィールドを含み得る。そのフィールドは、たとえば、サードパーティデバイスのインターネットプロトコル(IP)アドレス、MACアドレス、ドメインネーム、または何らかの他のそのような識別子を含み得る。ソースデバイス120は、サードパーティデバイスの識別子に基づいてペイロードデータの残りをパースすることができる。
シンクデバイス160は、一連のメッセージを介してサードパーティデバイスと機能をネゴシエートすることができる。シンクデバイス160は、次いで、機能ネゴシエーションプロセスの一部としてソースデバイス120との通信セッションを確立することの一部としてソースデバイス120にサードパーティデバイスのユニークな識別子を送信することができる。代替的に、シンクデバイス160は、サードパーティデバイスを記述する情報をソースデバイス120に送信し得、その情報に基づいて、ソースデバイス120は、サードパーティデバイスについてのユニークな識別子を決定することができる。サードパーティデバイスを記述する情報は、たとえば、サードパーティデバイスを識別するための情報および/またはサードパーティデバイスの機能を識別するための情報を含み得る。ユニークな識別子がソースデバイス120によって決定されるのかシンクデバイス160によって決定されるのかにかかわらず、シンクデバイス160が、サードパーティデバイスから取得されたユーザ入力をもつデータパケットを送信するときには、シンクデバイス160は、ソースデバイス120がユーザ入力の起点を識別することができるように、ユニークな識別子をデータパケット中に、たとえばペイロードヘッダ中に、含めることができる。
データパケットヘッダ610の入力カテゴリーフィールド624が、ボイスコマンドなど、さらに異なる入力カテゴリーを示す場合、ペイロードデータ650は、さらに異なる入力フォーマットを有することがある。ボイスコマンドの場合、ペイロードデータ650はコード化オーディオを含み得る。ボイスコマンドのオーディオを符号化および復号するためのコーデックが、一連のメッセージを介してソースデバイス120とシンクデバイス160との間でネゴシエートされ得る。ボイスコマンドを送信するために、タイムスタンプフィールド626は音声サンプリング時間値を含み得る。そのような場合、タイムスタンプフラグ622は、タイムスタンプが存在することを示すように設定され得るが、上記で説明したタイムスタンプの代わりに、タイムスタンプフィールド626は、ペイロードデータ650の符号化オーディオについての音声サンプリング時間値を含み得る。
いくつかの例では、ボイスコマンドが、上記で説明したように一般コマンドとして送信され得、その場合、入力カテゴリーフィールド624は、一般コマンドフォーマットを識別するように設定され得、予約済み一般IE IDのうちの1つがボイスコマンドに割り当てられ得る。ボイスコマンドが一般コマンドとして送信される場合、音声サンプリングレートは、データパケットヘッダ610のタイムスタンプフィールド626中に存在し得るか、またはペイロードデータ650中に存在し得る。
キャプチャされたボイスコマンドデータの場合、ボイスデータは、複数の方法でカプセル化され得る。たとえば、ボイスコマンドデータは、コーデックとタイムスタンプとを識別するためにペイロードタイプを提供できるRTPを使用してカプセル化されることができ、そのタイムスタンプは、サンプリングレートを識別するために使用される。RTPデータは、オプションのタイムスタンプを用いてまたは用いずに、上記で説明した一般ユーザ入力フォーマットを使用してカプセル化されることができる。シンクデバイス160は、TPC/IPを使用してソースデバイス120にボイスコマンドデータを搬送する一般入力データを送信することができる。
前に説明したように、座標が、データパケット600などのデータパケットの一部として、たとえばペイロードデータ650中に含まれるとき、その座標は、ネゴシエートされた解像度、ディスプレイウィンドウ座標、正規化座標、またはシンクディスプレイに関連付けられた座標、に基づいてスケーリングされた座標に対応し得る。いくつかの事例では、データパケット中で受信された座標を正規化するためにソースデバイスが使用するために、追加情報がデータパケット中に含まれるかまたは別個に送信され得る。
特定のデータパケットについての入力カテゴリーにかかわらず、データパケットヘッダはアプリケーションレイヤパケットヘッダであり得、データパケットはTCP/IPを通じて送信され得る。TCP/IPは、パケットロスの場合に、シンクデバイス160およびソースデバイス120が再送信技法を実行することを可能にし得る。データパケットは、ソースデバイス120のオーディオデータまたはビデオデータを制御するために、あるいはソースデバイス120上で動作しているアプリケーションを制御するためなどの他の目的で、シンクデバイス160からソースデバイス120に送られ得る。
図7Aは、シンクデバイスとソースデバイスとの間で機能をネゴシエートする例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、本明細書で説明するフローチャートのうちの1つまたは複数における示されたステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図7Aの方法は、シンクデバイス160がソースデバイス120から第1のメッセージを受信する(701)ことを含む。そのメッセージは、たとえば、パラメータ入手要求(get parameter request)を含み得る。第1のメッセージに応答して、シンクデバイス160はソースデバイス120に第2のメッセージを送り得る(703)。第2のメッセージは、たとえば、サポートされる入力カテゴリーの第1のリストとサポートされるタイプの複数の第1のリストとを識別するパラメータ入手応答(get parameter response)を含むことができ、サポートされる入力カテゴリーの第1のリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられた第1のリストを有する。サポートされる入力カテゴリーは、たとえば、図6の入力カテゴリーフィールド624のために使用されるのと同じカテゴリーに対応し得る。上記の表2は、特定の入力カテゴリー(この例では一般入力)のためのサポートされるタイプの一例を表す。シンクデバイス160はソースデバイス120から第3のメッセージを受信し得る(705)。第3のメッセージは、たとえば、パラメータ設定要求(set parameter request)を含み得、パラメータ設定要求は、通信のためのポートと、サポートされる入力カテゴリーの第2のリストと、サポートされるタイプの複数の第2のリストとを識別し、サポートされる入力カテゴリーの第2のリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられた第2のリストを有し、第2のリストのサポートされるタイプの各々は、第1のリストのタイプのサブセットを含む。シンクデバイス160はソースデバイス120に第4のメッセージを送信し得る(707)。第4のメッセージは、たとえば、第2のリストのタイプが有効にされたことを確認するためのパラメータ設定応答(set parameter response)を備え得る。シンクデバイス160はソースデバイス120から第5のメッセージを受信し得る(709)。第5のメッセージは、たとえば、ソースデバイス120とシンクデバイス160との間の通信チャネルが有効にされたことを示す第2のパラメータ設定要求を含み得る。その通信チャネルは、たとえば、ユーザ入力バックチャネル(UIBC:user input back channel)を備え得る。シンクデバイス160はソースデバイス120に第6のメッセージを送信し得る(711)。第6のメッセージは、たとえば、シンクデバイス160による第2のパラメータ設定要求の受信を確認する第2のパラメータ設定応答を含み得る。
図7Bは、シンクデバイスとソースデバイスとの間で機能をネゴシエートする例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図7Bの方法は、ソースデバイス120がシンクデバイス160に第1のメッセージを送信する(702)ことを含む。第1のメッセージは、たとえば、パラメータ入手要求を含むことができる。ソースデバイス120は、シンクデバイス160から第2のメッセージを受信し得る(704)。第2のメッセージは、たとえば、サポートされる入力カテゴリーの第1のリストとサポートされるタイプの複数の第1のリストとを識別するパラメータ入手応答を含むことができ、サポートされる入力カテゴリーの第1のリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられた第1のリストを有する。ソースデバイス120は、シンクデバイス160に第3のメッセージを送信し得る(706)。第3のメッセージは、たとえば、通信のためのポートと、サポートされる入力カテゴリーの第2のリストと、サポートされるタイプの複数の第2のリストとを識別するパラメータ設定要求を含むことができ、サポートされる入力カテゴリーの第2のリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられた第2のリストを有し、第2のリストのサポートされるタイプの各々は、第1のリストのタイプのサブセットを含む。ソースデバイス120は、シンクデバイス160から第4のメッセージを受信し得る(708)。第4のメッセージは、たとえば、第2のリストのタイプが有効にされたことを確認するためのパラメータ設定応答を含むことができる。ソースデバイス120は、シンクデバイス160に第5のメッセージを送信し得る(710)。第5のメッセージは、たとえば、ソースデバイス120とシンクデバイス160との間の通信チャネルが有効にされたことを示す第2のパラメータ設定要求を含むことができる。その通信チャネルは、たとえば、ユーザ入力バックチャネル(UIBC)を含み得る。ソースデバイス120は、シンクデバイス160から第6のメッセージを受信し得る(712)。第6のメッセージは、たとえば、シンクデバイス160による第2のパラメータ設定要求の受信を確認する第2のパラメータ設定応答を含むことができる。
図8Aは、本開示による、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図8Aの方法は、ワイヤレスシンクデバイス160などのワイヤレスシンクデバイスにおいてユーザ入力データを取得する(801)ことを含む。ユーザ入力データは、たとえば、ワイヤレスシンクデバイス360に関して示したユーザ入力インターフェース376など、ワイヤレスシンクデバイス160のユーザ入力コンポーネントを通じて取得され得る。追加的に、シンクデバイス160は、ユーザ入力データを、たとえば、一般、フォワーディングされた、またはオペレーティングシステム固有として、カテゴリー分類し得る。シンクデバイス160は、次いでユーザ入力データに基づいてデータパケットヘッダを生成し得る(803)。データパケットヘッダは、アプリケーションレイヤパケットヘッダであり得る。データパケットヘッダは、フィールドの中でも特に、ユーザ入力データに対応する入力カテゴリーを識別するためのフィールドを備え得る。入力カテゴリーは、たとえば、一般入力フォーマットまたはヒューマンインターフェースデバイスコマンドを備え得る。シンクデバイス160は、さらにデータパケットを生成し(805)、データパケットは、生成されたデータパケットヘッダおよびペイロードデータを含む。一例では、ペイロードデータは、受信されたユーザ入力データを含み得、1つまたは複数のユーザコマンドを識別し得る。シンクデバイス160は、次いで、ワイヤレスソースデバイス(たとえば、図1Aのソースデバイス120または図2のソースデバイス220)に生成されたデータパケットを送信し得る(807)。シンクデバイス160は、たとえば図3に示したようなトランスポートユニット333およびワイヤレスモデム334を含む、データパケットの転送を可能にするコンポーネントを備え得る。シンクデバイス160はTCP/IPを通じてデータパケットを転送し得る。
図8Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図8Bの方法は、データパケットを受信する(802)ことを含み、データパケットは、特に、データパケットヘッダとペイロードデータとを含み得る。ペイロードデータは、たとえば、ユーザ入力データを含み得る。ソースデバイス120は、たとえば図2に関して示したような、トランスポートユニット233およびワイヤレスモデム234を含む、データパケットの転送を可能にする通信コンポーネントを備え得る。ソースデバイス120は、次いで、ペイロードデータ中に含まれているユーザ入力データに関連付けられた入力カテゴリーを決定するために、データパケット中に含まれるデータパケットヘッダをパースし得る(804)。ソースデバイス120は、決定された入力カテゴリーに基づいてペイロードデータを処理し得る(806)。図8Aおよび図8Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとることができ、ソースデバイスにおいてオーディオ/ビデオデータおよびアプリケーションを制御するために使用され得る。
図9Aは、本開示に従ってワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図9Aの方法は、ワイヤレスシンクデバイス160などのワイヤレスシンクデバイスにおいてユーザ入力データを取得する(901)ことを含む。ユーザ入力データは、たとえば、図3に関して示したユーザ入力インターフェース376など、ワイヤレスシンクデバイス160のユーザ入力コンポーネントを通じて取得され得る。シンクデバイス160は、次いでペイロードデータを生成し(903)、ペイロードデータはユーザ入力データを記述し得る。一例では、ペイロードデータは、受信されたユーザ入力データを含むことができ、1つまたは複数のユーザコマンドを識別することができる。シンクデバイス160は、さらにデータパケットを生成し得(905)、データパケットは、データパケットヘッダと生成されたペイロードデータとを備える。シンクデバイス160は、次いで、ワイヤレスソースデバイス(たとえば、図1Aのソースデバイス120または図2のソースデバイス220)に生成されたデータパケットを送信し得る(907)。シンクデバイス160は、たとえば、トランスポートユニット333およびワイヤレスモデム334など、データパケットの転送を可能にするコンポーネントを備え得る。データパケットは、TCP/IPを通じてワイヤレスソースデバイスに送信されることができる。
図9Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図9Bの方法は、シンクデバイス360からデータパケットを受信する(902)ことを含み、データパケットは、特に、データパケットヘッダとペイロードデータとを含み得る。一例では、ペイロードデータは、たとえば、入力タイプ値などのユーザ入力の詳細を記述するデータを備え得る。ソースデバイス120は、たとえば図2に関して示したような、トランスポートユニット233およびワイヤレスモデム234を含む、データパケットの転送を可能にする通信コンポーネントを備え得る。ソースデバイス120は、次いで、ペイロードデータ中の入力タイプフィールド中の入力タイプ値を決定するためにデータパケットをパースし得る(904)。ソースデバイス120は、決定された入力タイプ値に基づいて、ユーザ入力の詳細を記述するデータを処理し得る(906)。図9Aおよび図9Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとり得る。
図10Aは、本開示による、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図10Aの方法は、ワイヤレスシンクデバイス160などのワイヤレスシンクデバイスにおいてユーザ入力データを取得する(1001)ことを含む。ユーザ入力データは、たとえば、図3に関して示したようなユーザ入力インターフェース376など、ワイヤレスシンクデバイス160のユーザ入力コンポーネントを通じて取得され得る。シンクデバイス160は、次いでユーザ入力に基づいてデータパケットヘッダを生成し得る(1003)。データパケットヘッダは、フィールドの中でも特に、タイムスタンプフィールドがデータパケットヘッダ中に存在するかどうかを示すためのタイムスタンプフラグ(たとえば、1ビットフィールド)を備え得る。タイムスタンプフラグは、たとえば、タイムスタンプフィールドが存在することを示すための「1」を含むことができ、タイムスタンプフィールドが存在しないことを示すための「0」を含むことができる。タイムスタンプフィールドは、たとえば、ソースデバイス120によって生成されたタイムスタンプを含んでいる16ビットフィールドであり得、送信より前にビデオデータに追加され得る。シンクデバイス160は、さらにデータパケットを生成し(1005)、データパケットは、生成されたデータパケットヘッダとペイロードデータとを含む。一例では、ペイロードデータは、受信されたユーザ入力データを含み得、1つまたは複数のユーザコマンドを識別し得る。シンクデバイス160は、次いでワイヤレスソースデバイス(たとえば、図1Aのソースデバイス120または図2のソースデバイス220)に生成されたデータパケットを送信し得る(1007)。シンクデバイス160は、たとえば図3に関して示したような、トランスポートユニット333およびワイヤレスモデム334を含む、データパケットの転送を可能にするコンポーネントを備え得る。データパケットは、TCP/IPを通じてワイヤレスソースデバイスに送信されることができる。
図10Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図10Bの方法は、ワイヤレスシンクデバイス160からデータパケットを受信する(1002)ことを含み、データパケットは、特に、データパケットヘッダとペイロードデータとを含み得る。ペイロードデータは、たとえば、ユーザ入力データを含み得る。ソースデバイス120は、たとえば図2に関して示したような、トランスポートユニット233およびワイヤレスモデム234を含む、データパケットの転送を可能にする通信コンポーネントを備え得る。ソースデバイス120は、次いでデータパケット中に含まれるデータパケットヘッダをパースし得る(1004)。ソースデバイス120は、タイムスタンプフィールドがデータパケットヘッダ中に存在するかどうかを決定し得る(1006)。一例では、ソースデバイス120は、データパケットヘッダ中に含まれるタイムスタンプフラグ値に基づいて決定を行うことができる。データパケットヘッダがタイムスタンプフィールドを含む場合、ソースデバイス120は、タイムスタンプフィールド中にあるタイムスタンプに基づいてペイロードデータを処理し得る(1008)。図10Aおよび図10Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとり得、ソースデバイスにおいてオーディオ/ビデオデータを制御するために使用され得る。
図11Aは、本開示による、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図11Aの方法は、ワイヤレスシンクデバイス160などのワイヤレスシンクデバイスにおいてユーザ入力データを取得する(1101)ことを含む。ユーザ入力データは、たとえば、図3に関して示したユーザ入力インターフェース376など、ワイヤレスシンクデバイス160のユーザ入力コンポーネントを通じて取得され得る。シンクデバイス160は、次いでユーザ入力に基づいてデータパケットヘッダを生成し得る(1103)。データパケットヘッダは、フィールドの中でも特に、タイムスタンプフィールドを含むことができる。タイムスタンプフィールドは、たとえば、ワイヤレスソースデバイス120によって生成され、ワイヤレスシンクデバイス160に送信された、マルチメディアデータに基づくタイムスタンプを含む、16ビットフィールドを備え得る。タイムスタンプは、ワイヤレスシンクデバイスに送信されるより前に、ワイヤレスソースデバイス120によってビデオデータのフレームに追加されていることがある。タイムスタンプフィールドは、たとえば、ユーザ入力データがキャプチャされた時にワイヤレスシンクデバイス160において表示されているビデオデータのフレームに関連付けられたタイムスタンプを識別し得る。シンクデバイス160は、データパケットをさらに生成し(1105)、データパケットは、生成されたデータパケットヘッダとペイロードデータとを含む。一例では、ペイロードデータは、受信されたユーザ入力データを含み得、1つまたは複数のユーザコマンドを識別し得る。シンクデバイス160は、次いで、ワイヤレスソースデバイス(たとえば、図1Aのソースデバイス120または図2のソースデバイス220)に生成されたデータパケットを送信し得る(1107)。シンクデバイス160は、たとえば図3に関して示したような、トランスポートユニット333およびワイヤレスモデム334を含む、データパケットの転送を可能にするコンポーネントを備え得る。データパケットはTCP/IPを通じてワイヤレスソースデバイスに送信され得る。
図11Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図11Bの方法は、ワイヤレスシンクデバイス160などのワイヤレスシンクデバイスからデータパケットを受信する(1102)ことを含み、データパケットは、特に、データパケットヘッダとペイロードデータとを含み得る。ペイロードデータは、たとえば、ユーザ入力データを含み得る。ソースデバイス120は、たとえば図2に関して示したような、トランスポートユニット233およびワイヤレスモデム234を含む、データパケットの転送を可能にする通信コンポーネントを備え得る。ソースデバイス120は、次いでデータパケットヘッダ中のタイムスタンプフィールドを識別し得る(1104)。ソースデバイス120は、タイムスタンプフィールド中にあるタイムスタンプに基づいてペイロードデータを処理し得る(1106)。ペイロードデータを処理することの一部として、上記タイムスタンプに基づいて、ソースデバイス120は、ユーザ入力データが取得された時にワイヤレスシンクデバイスにおいて表示されているビデオデータのフレームを識別し、そのフレームのコンテンツに基づいてペイロードデータを解釈することができる。タイムスタンプに基づいてペイロードデータを処理することの一部として、ソースデバイス120は、上記タイムスタンプを、ソースデバイス120によって送信されているビデオの現在のフレームに関する現在のタイムスタンプと比較することができ、上記タイムスタンプと現在のタイムスタンプとの間の時間差がしきい値よりも小さいことに応答して、ペイロードデータ中で記述されたユーザ入力コマンドを実行する、または上記タイムスタンプと現在のタイムスタンプとの間の時間差がしきい値よりも大きいことに応答して、ペイロードデータ中で記述されたユーザ入力コマンドを実行しないことができる。図11Aおよび図11Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとり得、ソースデバイスにおいてオーディオ/ビデオデータを制御するために使用され得る。
図12Aは、本開示による、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図12Aの方法は、ワイヤレスシンクデバイス160などのワイヤレスシンクデバイスにおいてユーザ入力データを取得する(1201)ことを含む。一例では、ユーザ入力データはボイスコマンドデータであり得、ボイスコマンドデータは、たとえば、図3中のユーザ入力インターフェース376中に含まれるボイスコマンド認識モジュールなど、ワイヤレスシンクデバイス160のユーザ入力コンポーネントを通じて取得され得る。シンクデバイス160は、ユーザ入力に基づいてデータパケットヘッダを生成し得る(1203)。シンクデバイス160は、また、ペイロードデータも生成することができ(1205)、ペイロードデータはボイスコマンドデータを含み得る。一例では、ペイロードデータは、また、受信されたユーザ入力データも含み得、1つまたは複数のユーザコマンドを識別し得る。シンクデバイス160は、さらにデータパケットを生成し(1207)、データパケットは、生成されたデータパケットヘッダとペイロードデータとを備える。シンクデバイス160は、次いでワイヤレスソースデバイス(たとえば、図1Aのソースデバイス120または図2のソースデバイス220)に生成されたデータパケットを送信し得る(1209)。シンクデバイス160は、たとえば図3に関して示したような、トランスポートユニット333およびワイヤレスモデム334を含む、データパケットの転送を可能にするコンポーネントを備え得る。データパケットは、TCP/IPを通じてワイヤレスソースデバイスに送信されることができる。
図12Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図12Bの方法は、データパケットを受信する(1202)ことを含み、データパケットは、特に、データパケットヘッダとペイロードデータとを含み得る。ペイロードデータは、たとえば、ボイスコマンドデータなどのユーザ入力データを含み得る。ソースデバイス120は、たとえば図2に関して示したような、トランスポートユニット233およびワイヤレスモデム234を含む、データパケットの転送を可能にする通信コンポーネントを備え得る。ソースデバイス120は、次いで、ペイロードデータがボイスコマンドデータを含むかどうかを決定するために、データパケット中に含まれるペイロードデータをパースし得る(1204)。図12Aおよび図12Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとり得、ソースデバイスにおいてオーディオ/ビデオデータを制御するために使用され得る。
図13Aは、本開示による、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図13Aの方法は、ワイヤレスシンクデバイス160などのワイヤレスシンクデバイスにおいてユーザ入力データを取得する(1301)ことを含む。一例では、ユーザ入力データはマルチタッチジェスチャであり得、マルチタッチジェスチャは、たとえば、UI167または図3のユーザ入力インターフェース376など、ワイヤレスシンクデバイス160のユーザ入力コンポーネントを通じて取得され得る。一例では、マルチタッチジェスチャは、第1のタッチ入力と第2のタッチ入力とを含み得る。シンクデバイス160は、ユーザ入力に基づいてデータパケットヘッダを生成し得る(1303)。シンクデバイス160は、また、ペイロードデータも生成し得(1305)、ペイロードデータは、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付け得る。シンクデバイス160は、さらにデータパケットを生成し得(1307)、データパケットは、生成されたデータパケットヘッダとペイロードデータとを含む。シンクデバイス160は、次いで、ワイヤレスソースデバイス(たとえば、図1Aのソースデバイス120または図2のソースデバイス220)に生成されたデータパケットを送信し得る(1309)。シンクデバイス160は、たとえば図3に関して示したような、トランスポートユニット333およびワイヤレスモデム334を含む、データパケットの転送を可能にするコンポーネントを備え得る。データパケットはTCP/IPを通じてワイヤレスソースデバイスに送信され得る。
図13Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図13Bの方法は、データパケットを受信する(1302)ことを含み、データパケットは、特に、データパケットヘッダとペイロードデータとを含み得る。ペイロードデータは、たとえば、マルチタッチジェスチャなどのユーザ入力データを含み得る。ソースデバイス120は、たとえば図2に示したような、トランスポートユニット233およびワイヤレスモデム234を含む、データパケットの転送を可能にする通信コンポーネントを備え得る。ソースデバイス120は、次いで、ペイロードデータ中に含まれるユーザ入力データを識別するために、データパケット中に含まれるペイロードデータをパースし得る(1304)。一例では、識別されたデータは、第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データとを含み得る。ソースデバイス120は、次いで、第1のタッチ入力イベントについてのユーザ入力データと第2のタッチ入力イベントについてのユーザ入力データとをマルチタッチジェスチャとして解釈し得る(1306)。図13Aおよび図13Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとり得、ソースデバイスにおいてオーディオ/ビデオデータを制御するために使用され得る。
図14Aは、本開示による、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図14Aの方法は、外部デバイスからワイヤレスシンクデバイス360においてユーザ入力データを取得する(1401)ことを含む。一例では、外部デバイスは、シンクデバイスに接続されたサードパーティデバイスであり得る。シンクデバイス160は、ユーザ入力に基づいてデータパケットヘッダを生成し得る(1403)。一例では、データパケットヘッダは、ユーザ入力データをフォワーディングされたユーザ入力データとして識別し得る。シンクデバイス160は、また、ペイロードデータも生成し(1405)、ペイロードデータはユーザ入力データを含み得る。シンクデバイス160は、さらにデータパケットを生成し得(1407)、データパケットは、生成されたデータパケットヘッダとペイロードデータとを含み得る。シンクデバイス160は、次いで、ワイヤレスソースデバイス(たとえば、図1Aのソースデバイス120または図2のソースデバイス220)に生成されたデータパケットを送信し得る(1409)。シンクデバイス160は、たとえば図3に関して示したような、トランスポートユニット333およびワイヤレスモデム334を含む、データパケットの転送を可能にするコンポーネントを備え得る。データパケットはTCP/IPを通じてワイヤレスソースデバイスに送信され得る。
図14Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図14Bの方法は、データパケットを受信する(1402)ことを含み、データパケットは、特に、データパケットヘッダとペイロードデータとを含み得る。ペイロードデータは、たとえば、ユーザ入力データがサードパーティデバイスからフォワーディングされたことを示すフォワーディングされたユーザ入力コマンドなどのユーザ入力データを含み得る。ソースデバイス120は、たとえば図2に関して示したような、トランスポートユニット233およびワイヤレスモデム234を含む、データパケットの転送を可能にする通信コンポーネントを備え得る。ソースデバイス120は、次いでデータパケットヘッダをパースし、ペイロードデータがフォワーディングされたユーザ入力コマンドを含むと決定し得る(1404)。ソースデバイス120は、次いで、フォワーディングされたユーザ入力コマンドに対応するサードパーティデバイスに関連付けられた識別情報を識別するために、データパケット中に含まれるペイロードデータをパースし得る(1406)。ソースデバイス120は、次いで、サードパーティデバイスの識別された識別情報に基づいてペイロードデータを処理し得る(1408)。図14Aおよび図14Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとり得、ソースデバイスにおいてオーディオ/ビデオデータを制御するために使用され得る。
図15Aは、本開示に従ってワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザデータを送信する例示的な方法のフローチャートである。図示した例示的な方法は、シンクデバイス160(図1A)または360(図3)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ332)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ331)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図15Aの方法は、ワイヤレスシンクデバイスにおいてユーザ入力データを取得する(1501)ことを含む。ユーザ入力データは、関連付けられた座標データを有し得る。関連付けられた座標データは、たとえば、マウスクリックイベントのロケーションまたはタッチイベントのロケーションに対応し得る。シンクデバイス160は、次いで、正規化座標データを生成するために、関連付けられた座標データを正規化し得る(1503)。シンクデバイス160は、次いで、正規化座標データを含むデータパケットを生成し得る(1505)。座標データを正規化することは、ディスプレイウィンドウの解像度と、ソースデバイス120のディスプレイ22などのソースのディスプレイの解像度との比に基づいて、関連付けられた座標データをスケーリングすることを含むことができる。ディスプレイウィンドウの解像度は、シンクデバイス160によって決定されることができ、ソースデバイスのディスプレイの解像度は、ソースデバイス120から受信されることができる。シンクデバイス160は、次いで、ワイヤレスソースデバイス120に正規化座標をもつデータパケットを送信し得る(1507)。図15Aの方法の一部として、シンクデバイス160はまた、関連付けられた座標データが、ワイヤレスソースデバイスから受信されているコンテンツのためのディスプレイウィンドウ内にあるかどうかを決定し、たとえば、関連付けられた座標データがディスプレイウィンドウ外にある場合はユーザ入力をローカルで処理し、その入力がディスプレイウィンドウ内にある場合は上述のように座標を正規化することができる。
図15Bは、本開示による、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する例示的な方法のフローチャートである。図示した例示的な方法は、ソースデバイス120(図1A)または220(図2)によって実行され得る。いくつかの例では、コンピュータ可読記憶媒体(たとえば、メモリ232)が、実行されたときに、フローチャート中の図示したステップのうちの1つまたは複数を実行することを1つまたは複数のプロセッサ(たとえば、プロセッサ231)に行わせる、命令、モジュール、またはアルゴリズムを記憶し得る。
図15Bの方法は、ワイヤレスソースデバイスにおいてデータパケットを受信することを含み、データパケットは、関連付けられた座標データをもつユーザ入力データを備える(1502)。関連付けられた座標データは、たとえば、シンクデバイスにおけるマウスクリックイベントのロケーションまたはタッチイベントのロケーションに対応し得る。ソースデバイス120は、次いで、正規化座標データを生成するために、関連付けられた座標データを正規化し得る(1504)。ソースデバイス120は、ディスプレイウィンドウの解像度とソースのディスプレイの解像度との比に基づいて、関連付けられた座標データをスケーリングすることによって、座標データを正規化することができる。ソースデバイス120は、ソースデバイスのディスプレイの解像度を決定することができ、ワイヤレスシンクデバイスからディスプレイウィンドウの解像度を受信することができる。ソースデバイスは、次いで、正規化座標データに基づいてデータパケットを処理し得る(1506)。図15Aおよび図15Bに関して説明したデータパケットは、概して、図6に関して説明したデータパケットの形態をとり得、ソースデバイスにおいてオーディオ/ビデオデータを制御するために使用され得る。
説明を簡単にするために、図7〜図15を参照しながら本開示の態様について別個に説明した。ただし、これらの様々な態様は、別個にだけでなく、互いに関連して組み合わせられ、使用され得ることが企図される。概して、本明細書で説明する機能および/またはモジュールは、ワイヤレスソースデバイスとワイヤレスシンクデバイスのいずれかまたは両方において実装され得る。このようにして、本例で説明したユーザインターフェース機能は、ワイヤレスソースデバイスとワイヤレスシンクデバイスとの間で互換的に使用され得る。
本開示の技法は、ワイヤレスハンドセット、および集積回路(IC)またはICのセット(すなわち、チップセット)を含む、多種多様なデバイスまたは装置において実装され得る。機能的態様を強調するために任意のコンポーネント、モジュールまたはユニットについて説明し、提示したが、それらの任意のコンポーネント、モジュールまたはユニットは、異なるハードウェアユニットによる実現を必ずしも必要とするとは限らない。
したがって、本明細書で説明する技法は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ハードウェアで実装される場合、モジュール、ユニットまたはコンポーネントとして説明した特徴は、集積論理デバイスに一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアで実装される場合、これらの技法は、プロセッサで実行されたとき、上記で説明した方法のうちの1つまたは複数を実行する、命令を備えるコンピュータ可読媒体によって少なくとも部分的に実現され得る。コンピュータ可読媒体は、有形で非一時的なコンピュータ可読記憶媒体を備え得、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読記憶媒体は、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュメモリ、磁気または光学データ記憶媒体などを備え得る。本技法は、追加または代替として、命令またはデータ構造の形態でコードを搬送または通信し、コンピュータによってアクセスされ、読み取られ、および/または実行され得るコンピュータ可読通信媒体によって少なくとも部分的に実現され得る。
コードは、1つまたは複数のデジタル信号プロセッサ(DSP)など、1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、または他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のソフトウェアモジュールまたはハードウェアモジュール内に提供されるか、あるいは複合ビデオコーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素中に十分に実装され得る。
本開示の様々な態様について説明した。これらおよび他の態様は以下の特許請求の範囲内にある。

Claims (72)

  1. ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する方法であって、前記方法は、
    マルチタッチジェスチャについてのユーザ入力データを取得することと、
    パケットヘッダを生成することと、
    ペイロードデータを生成することであって、前記ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成することと、
    前記パケットヘッダと前記ペイロードデータとを備えるデータパケットを生成することと、
    前記ワイヤレスソースデバイスに前記データパケットを送信することと
    を備える、方法。
  2. 前記ペイロードデータが、ポインタの数を識別するためのフィールドを備え、各ポインタがユニークなポインタ識別情報に関連付けられる、請求項1に記載の方法。
  3. ポインタの前記数が2よりも大きい、請求項1に記載の方法。
  4. 前記第1のタッチ入力イベントと前記第2のタッチ入力イベントとが実質的に同時に行われる、請求項1に記載の方法。
  5. 前記第1のタッチ入力イベントが、入力デバイス上にタッチダウンすることと、前記入力デバイスからタッチアップすることと、前記入力デバイス上でタッチを移動することとからなるグループから選択される、請求項1に記載の方法。
  6. 前記ペイロードデータが、
    前記第1のポインタ識別情報に関連付けられた第1のタッチダウン入力と、
    前記第1のポインタ識別情報に関連付けられた第1のタッチ移動入力と、
    前記第1のポインタ識別情報に関連付けられた第1のタッチアップ入力と、
    前記第2のポインタ識別情報に関連付けられた第2のタッチダウン入力と、
    前記第2のポインタ識別情報に関連付けられた第2のタッチ移動入力と、
    前記第2のポインタ識別情報に関連付けられた第2のタッチアップ入力と
    を備える、請求項1に記載の方法。
  7. 前記データパケットヘッダが、前記ユーザ入力データの入力カテゴリーを識別するためのフィールドを備え、前記フィールドが一般入力を識別する、請求項1に記載の方法。
  8. 前記ペイロードデータが、入力記述の長さを識別する長さフィールドを備える、請求項1に記載の方法。
  9. 前記入力記述の前記長さがオクテットの単位で識別される、請求項8に記載の方法。
  10. 前記ペイロードデータが、前記ユーザ入力データの詳細を記述するための記述フィールドを備える、請求項1に記載の方法。
  11. 前記ペイロードデータは、
    前記第1のタッチ入力イベントが行われた座標に対応する第1のx座標および第1のy座標と、
    前記第2のタッチ入力イベントが行われた座標に対応する第2のx座標およびy座標と
    を識別する、請求項1に記載の方法。
  12. 前記第1のx座標、前記第1のy座標、前記第2のx座標、および前記第2のy座標が、前記ワイヤレスシンクデバイスと前記ワイヤレスソースデバイスとの間のビデオストリームのネゴシエートされた解像度に基づく、請求項11に記載の方法。
  13. 前記ユーザ入力データを取得することが、前記ワイヤレスシンクデバイスの入力デバイスを通じて前記ユーザ入力データをキャプチャすることを備える、請求項1に記載の方法。
  14. 前記ユーザ入力データを取得することが、別のワイヤレスシンクデバイスからのフォワーディングされたユーザ入力データを受信することを備える、請求項1に記載の方法。
  15. 前記データパケットヘッダがアプリケーションレイヤパケットヘッダである、請求項1に記載の方法。
  16. 前記データパケットが、前記ワイヤレスソースデバイスのオーディオデータまたはビデオデータを制御するためのものである、請求項1に記載の方法。
  17. 前記データパケットがTCP/IPを通じて送信される、請求項1に記載の方法。
  18. ワイヤレスソースデバイスにユーザ入力データを送信するように構成されたワイヤレスシンクデバイスであって、前記ワイヤレスシンクデバイスは、
    命令を記憶するメモリと、
    前記命令を実行するように構成された1つまたは複数のプロセッサであって、前記命令を実行すると、前記1つまたは複数のプロセッサが、
    マルチタッチジェスチャについてのユーザ入力データを取得することと、
    パケットヘッダを生成することと、
    ペイロードデータを生成することであって、前記ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成することと、
    前記パケットヘッダと前記ペイロードデータとを備えるデータパケットを生成することと
    を行わせる、1つまたは複数のプロセッサと、
    前記ワイヤレスソースデバイスに前記データパケットを送信するように構成されたトランスポートユニットと
    を備える、ワイヤレスシンクデバイス。
  19. 前記ペイロードデータが、ポインタの数を識別するためのフィールドを備え、各ポインタがユニークなポインタ識別情報に関連付けられる、請求項18に記載のデバイス。
  20. ポインタの前記数が2よりも大きい、請求項18に記載のデバイス。
  21. 前記第1のタッチ入力イベントと前記第2のタッチ入力イベントとが実質的に同時に行われる、請求項18に記載のデバイス。
  22. 前記第1のタッチ入力イベントが、入力デバイス上にタッチダウンすることと、前記入力デバイスからタッチアップすることと、前記入力デバイス上でタッチを移動することとからなるグループから選択される、請求項18に記載のデバイス。
  23. 前記ペイロードデータが、
    前記第1のポインタ識別情報に関連付けられた第1のタッチダウン入力と、
    前記第1のポインタ識別情報に関連付けられた第1のタッチ移動入力と、
    前記第1のポインタ識別情報に関連付けられた第1のタッチアップ入力と、
    前記第2のポインタ識別情報に関連付けられた第2のタッチダウン入力と、
    前記第2のポインタ識別情報に関連付けられた第2のタッチ移動入力と、
    前記第2のポインタ識別情報に関連付けられた第2のタッチアップ入力と
    を備える、請求項18に記載のデバイス。
  24. 前記データパケットヘッダが、前記ユーザ入力データの入力カテゴリーを識別するためのフィールドを備え、前記フィールドが一般入力を識別する、請求項18に記載のデバイス。
  25. 前記ペイロードデータが、入力記述の長さを識別する長さフィールドを備える、請求項18に記載のデバイス。
  26. 前記入力記述の前記長さがオクテットの単位で識別される、請求項25に記載のデバイス。
  27. 前記ペイロードデータが、前記ユーザ入力データの詳細を記述するための記述フィールドを備える、請求項18に記載のデバイス。
  28. 前記ペイロードデータは、
    前記第1のタッチ入力イベントが行われた座標に対応する第1のx座標および第1のy座標と、
    前記第2のタッチ入力イベントが行われた座標に対応する第2のx座標およびy座標と
    を識別する、請求項18に記載のデバイス。
  29. 前記第1のx座標、前記第1のy座標、前記第2のx座標、および前記第2のy座標が、前記ワイヤレスシンクデバイスと前記ワイヤレスソースデバイスとの間のビデオストリームのネゴシエートされた解像度に基づく、請求項28に記載のデバイス。
  30. 前記ユーザ入力データを取得することが、前記ワイヤレスシンクデバイスの入力デバイスを通じて前記ユーザ入力データをキャプチャすることを備える、請求項18に記載のデバイス。
  31. 前記ユーザ入力データを取得することが、別のワイヤレスシンクデバイスからのフォワーディングされたユーザ入力データを受信することを備える、請求項18に記載のデバイス。
  32. 前記データパケットヘッダがアプリケーションレイヤパケットヘッダである、請求項18に記載のデバイス。
  33. 前記データパケットが、前記ワイヤレスソースデバイスのオーディオデータまたはビデオデータを制御するためのものである、請求項18に記載のデバイス。
  34. 前記データパケットがTCP/IPを通じて送信される、請求項18に記載のデバイス。
  35. 1つまたは複数のプロセッサによって実行されると、ワイヤレスシンクデバイスからワイヤレスソースデバイスにユーザ入力データを送信する方法を実行することを前記1つまたは複数のプロセッサに行わせる、命令を記憶するコンピュータ可読記憶媒体であって、前記方法は、
    マルチタッチジェスチャについてのユーザ入力データを取得することと、
    パケットヘッダを生成することと、
    ペイロードデータを生成することであって、前記ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成することと、
    前記パケットヘッダと前記ペイロードデータとを備えるデータパケットを生成することと、
    前記ワイヤレスソースデバイスに前記データパケットを送信することと
    を備える、コンピュータ可読記憶媒体。
  36. ワイヤレスソースデバイスにユーザ入力を送信するように構成されたワイヤレスシンクデバイスであって、前記ワイヤレスシンクデバイスは、
    マルチタッチジェスチャについてのユーザ入力データを取得するための手段と、
    パケットヘッダを生成するための手段と、
    ペイロードデータを生成するための手段であって、前記ペイロードデータが、第1のタッチ入力イベントについてのユーザ入力データを第1のポインタ識別情報に関連付け、第2のタッチ入力イベントについてのユーザ入力データを第2のポインタ識別情報に関連付ける、ペイロードデータを生成するための手段と、
    前記パケットヘッダと前記ペイロードデータとを備えるデータパケットを生成するための手段と、
    前記ワイヤレスソースデバイスに前記データパケットを送信するための手段と
    を備える、ワイヤレスシンクデバイス。
  37. ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する方法であって、前記方法は、
    データパケットヘッダとペイロードデータとを備えるデータパケットを受信することと、
    第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、
    第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データと
    を識別するために前記ペイロードデータをパースすることと、
    前記第1のタッチ入力イベントについての前記ユーザ入力データと前記第2のタッチ入力イベントについての前記ユーザ入力データとをマルチタッチジェスチャとして解釈することと
    を備える、方法。
  38. 前記ペイロードデータが、ポインタの数を識別するためのフィールドを備え、各ポインタがユニークなポインタ識別情報に関連付けられる、請求項37に記載の方法。
  39. ポインタの前記数が2よりも大きい、請求項37に記載の方法。
  40. 前記第1のタッチ入力イベントと前記第2のタッチ入力イベントとが、前記ワイヤレスシンクデバイスにおいて実質的に同時に行われる、請求項37に記載の方法。
  41. 前記第1のタッチ入力イベントが、入力デバイス上にタッチダウンすることと、前記入力デバイスからタッチアップすることと、前記入力デバイス上でタッチを移動することとからなるグループから選択される、請求項37に記載の方法。
  42. 前記ペイロードデータが、
    前記第1のポインタ識別情報に関連付けられた第1のタッチダウン入力イベントと、
    前記第1のポインタ識別情報に関連付けられた第1のタッチ移動入力イベントと、
    前記第1のポインタ識別情報に関連付けられた第1のタッチアップ入力イベントと、
    前記第2のポインタ識別情報に関連付けられた第2のタッチダウン入力イベントと、
    前記第2のポインタ識別情報に関連付けられた第2のタッチ移動入力イベントと、
    前記第2のポインタ識別情報に関連付けられた第2のタッチアップ入力イベントと
    を備え、
    前記方法が、
    前記第1のタッチダウン入力イベントと、第1のタッチ移動入力イベントと、第1のタッチアップ入力イベントとを第1のタッチ入力イベントシーケンスとして解釈することと、
    前記第2のタッチダウン入力イベントと、第2のタッチ移動入力イベントと、第2のタッチアップ入力イベントとを第2のタッチ入力イベントシーケンスとして解釈することと、
    前記第1のタッチ入力イベントシーケンスと前記第2のタッチ入力イベントシーケンスとを前記マルチタッチジェスチャとして解釈することと
    をさらに備える、請求項37に記載の方法。
  43. 前記データパケットヘッダが、前記ユーザ入力データの入力カテゴリーを識別するためのフィールドを備え、前記フィールドが一般入力を識別する、請求項37に記載の方法。
  44. 前記ペイロードデータが、入力記述の長さを識別する長さフィールドを備える、請求項37に記載の方法。
  45. 前記入力記述の前記長さがオクテットの単位で識別される、請求項44に記載の方法。
  46. 前記ペイロードデータが、前記ユーザ入力データの詳細を記述するための記述フィールドを備える、請求項37に記載の方法。
  47. 前記ペイロードデータは、
    前記第1のタッチ入力イベントが行われた座標に対応する第1のx座標および第1のy座標と、
    前記第2のタッチ入力イベントが行われた座標に対応する第2のx座標および第2のy座標と
    を識別する、請求項37に記載の方法。
  48. 前記第1のx座標、前記第1のy座標、前記第2のx座標、および前記第2のy座標が、前記ワイヤレスシンクデバイスと前記ワイヤレスソースデバイスとの間のビデオストリームのネゴシエートされた解像度に基づく、請求項47に記載の方法。
  49. 前記ユーザ入力データを取得することが、前記ワイヤレスシンクデバイスの入力デバイスを通じて前記ユーザ入力データをキャプチャすることを含む、請求項37に記載の方法。
  50. 前記ユーザ入力データを取得することが、別のワイヤレスシンクデバイスからのフォワーディングされたユーザ入力データを受信することを含む、請求項37に記載の方法。
  51. 前記データパケットヘッダがアプリケーションレイヤパケットヘッダである、請求項37に記載の方法。
  52. 前記データパケットが、前記ワイヤレスソースデバイスのオーディオデータまたはビデオデータを制御するためのものである、請求項37に記載の方法。
  53. 前記データパケットがTCP/IPを通じて送信される、請求項37に記載の方法。
  54. ワイヤレスシンクデバイスからユーザ入力データを受信するように構成されたワイヤレスソースデバイスであって、前記ワイヤレスソースデバイスは、
    データパケットヘッダとペイロードデータとを備えるデータパケットを受信するためのトランスポートユニットと、
    命令を記憶するメモリと、
    前記命令を実行するように構成された1つまたは複数のプロセッサであって、前記命令を実行すると、前記1つまたは複数のプロセッサが、
    第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、
    第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データと
    を識別するために前記ペイロードデータをパースすることと、
    前記第1のタッチ入力イベントについての前記ユーザ入力データと前記第2のタッチ入力イベントについての前記ユーザ入力データとをマルチタッチジェスチャとして解釈することと
    を行わせる、1つまたは複数のプロセッサと
    を備える、ワイヤレスソースデバイス。
  55. 前記ペイロードデータが、ポインタの数を識別するためのフィールドを備え、各ポインタがユニークなポインタ識別情報に関連付けられる、請求項54に記載のワイヤレスソースデバイス。
  56. ポインタの前記数が2よりも大きい、請求項54に記載のワイヤレスソースデバイス。
  57. 前記第1のタッチ入力イベントと前記第2のタッチ入力イベントとが、前記ワイヤレスシンクデバイスにおいて実質的に同時に行われる、請求項54に記載のワイヤレスソースデバイス。
  58. 前記第1のタッチ入力イベントが、入力デバイス上にタッチダウンすることと、前記入力デバイスからタッチアップすることと、前記入力デバイス上でタッチを移動することとからなるグループから選択される、請求項54に記載のワイヤレスソースデバイス。
  59. 前記ペイロードデータが、
    前記第1のポインタ識別情報に関連付けられた第1のタッチダウン入力イベントと、
    前記第1のポインタ識別情報に関連付けられた第1のタッチ移動入力イベントと、
    前記第1のポインタ識別情報に関連付けられた第1のタッチアップ入力イベントと、
    前記第2のポインタ識別情報に関連付けられた第2のタッチダウン入力イベントと、
    前記第2のポインタ識別情報に関連付けられた第2のタッチ移動入力イベントと、
    前記第2のポインタ識別情報に関連付けられた第2のタッチアップ入力イベントと
    を備え、
    前記方法が、
    前記第1のタッチダウン入力イベントと、前記第1のタッチ移動入力イベントと、前記第1のタッチアップ入力イベントとを第1のタッチ入力イベントシーケンスとして解釈することと、
    前記第2のタッチダウン入力イベントと、前記第2のタッチ移動入力イベントと、前記第2のタッチアップ入力イベントとを第2のタッチ入力イベントシーケンスとして解釈することと、
    前記第1のタッチ入力イベントシーケンスと前記第2のタッチ入力イベントシーケンスとを前記マルチタッチジェスチャとして解釈することと
    をさらに備える、請求項54に記載のワイヤレスソースデバイス。
  60. 前記データパケットヘッダが、前記ユーザ入力データの入力カテゴリーを識別するためのフィールドを備え、前記フィールドが一般入力を識別する、請求項54に記載のワイヤレスソースデバイス。
  61. 前記ペイロードデータが、入力記述の長さを識別する長さフィールドを備える、請求項54に記載のワイヤレスソースデバイス。
  62. 前記入力記述の前記長さがオクテットの単位で識別される、請求項61に記載のワイヤレスソースデバイス。
  63. 前記ペイロードデータが、前記ユーザ入力データの詳細を記述するための記述フィールドを備える、請求項54に記載のワイヤレスソースデバイス。
  64. 前記ペイロードデータは、
    前記第1のタッチ入力イベントが行われた座標に対応する第1のx座標および第1のy座標と、
    前記第2のタッチ入力イベントが行われた座標に対応する第2のx座標および第2のy座標と
    を識別する、請求項54に記載のワイヤレスソースデバイス。
  65. 前記第1のx座標、前記第1のy座標、前記第2のx座標、および前記第2のy座標が、前記ワイヤレスシンクデバイスと前記ワイヤレスソースデバイスとの間のビデオストリームのネゴシエートされた解像度に基づく、請求項64に記載のワイヤレスソースデバイス。
  66. 前記ユーザ入力データを取得することが、前記ワイヤレスシンクデバイスの入力デバイスを通じて前記ユーザ入力データをキャプチャすることを備える、請求項54に記載のワイヤレスソースデバイス。
  67. 前記ユーザ入力データを取得することが、別のワイヤレスシンクデバイスからのフォワーディングされたユーザ入力データを受信することを備える、請求項54に記載のワイヤレスソースデバイス。
  68. 前記データパケットヘッダがアプリケーションレイヤパケットヘッダである、請求項54に記載のワイヤレスソースデバイス。
  69. 前記データパケットが、前記ワイヤレスソースデバイスのオーディオデータまたはビデオデータを制御するためのものである、請求項54に記載のワイヤレスソースデバイス。
  70. 前記データパケットがTCP/IPを通じて送信される、請求項54に記載のワイヤレスソースデバイス。
  71. 1つまたは複数のプロセッサによって実行されると、ワイヤレスソースデバイスにおいてワイヤレスシンクデバイスからユーザ入力データを受信する方法を実行することを前記1つまたは複数のプロセッサに行わせる、命令を記憶するコンピュータ可読記憶媒体であって、前記方法は、
    データパケットヘッダとペイロードデータとを備えるデータパケットを受信することと、
    第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、
    第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データと
    を識別するために前記ペイロードデータをパースすることと、
    前記第1のタッチ入力イベントについての前記ユーザ入力データと前記第2のタッチ入力イベントについての前記ユーザ入力データとをマルチタッチジェスチャとして解釈することと
    を備える、コンピュータ可読記憶媒体。
  72. ワイヤレスシンクデバイスからユーザ入力データを受信するように構成されたワイヤレスソースデバイスであって、前記ワイヤレスソースデバイスは、
    データパケットヘッダとペイロードデータとを備えるデータパケットを受信するための手段と、
    第1のポインタ識別情報を用いた第1のタッチ入力イベントについてのユーザ入力データと、
    第2のポインタ識別情報を用いた第2のタッチ入力イベントについてのユーザ入力データと
    を識別するために前記ペイロードデータをパースするための手段と、
    前記第1のタッチ入力イベントについての前記ユーザ入力データと前記第2のタッチ入力イベントについての前記ユーザ入力データとをマルチタッチジェスチャとして解釈するための手段と
    を備える、ワイヤレスソースデバイス。
JP2013550637A 2011-01-21 2012-01-20 ワイヤレスディスプレイのためのユーザ入力バックチャネル Expired - Fee Related JP5694568B2 (ja)

Applications Claiming Priority (19)

Application Number Priority Date Filing Date Title
US201161435194P 2011-01-21 2011-01-21
US61/435,194 2011-01-21
US201161447592P 2011-02-28 2011-02-28
US61/447,592 2011-02-28
US201161448312P 2011-03-02 2011-03-02
US61/448,312 2011-03-02
US201161450101P 2011-03-07 2011-03-07
US61/450,101 2011-03-07
US201161467543P 2011-03-25 2011-03-25
US201161467535P 2011-03-25 2011-03-25
US61/467,543 2011-03-25
US61/467,535 2011-03-25
US201161514863P 2011-08-03 2011-08-03
US61/514,863 2011-08-03
US201161544440P 2011-10-07 2011-10-07
US61/544,440 2011-10-07
US13/344,377 US9065876B2 (en) 2011-01-21 2012-01-05 User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US13/344,377 2012-01-05
PCT/US2012/022090 WO2012100204A1 (en) 2011-01-21 2012-01-20 User input back channel for wireless displays

Publications (2)

Publication Number Publication Date
JP2014511583A true JP2014511583A (ja) 2014-05-15
JP5694568B2 JP5694568B2 (ja) 2015-04-01

Family

ID=45561131

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013550637A Expired - Fee Related JP5694568B2 (ja) 2011-01-21 2012-01-20 ワイヤレスディスプレイのためのユーザ入力バックチャネル

Country Status (6)

Country Link
US (1) US9065876B2 (ja)
EP (1) EP2666069A1 (ja)
JP (1) JP5694568B2 (ja)
KR (1) KR101603155B1 (ja)
CN (1) CN103392160B (ja)
WO (1) WO2012100204A1 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080045149A1 (en) * 2006-05-26 2008-02-21 Dinesh Dharmaraju Wireless architecture for a traditional wire-based protocol
US9198084B2 (en) * 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
US8667144B2 (en) * 2007-07-25 2014-03-04 Qualcomm Incorporated Wireless architecture for traditional wire based protocol
US8811294B2 (en) 2008-04-04 2014-08-19 Qualcomm Incorporated Apparatus and methods for establishing client-host associations within a wireless network
US9398089B2 (en) 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
US20100205321A1 (en) * 2009-02-12 2010-08-12 Qualcomm Incorporated Negotiable and adaptable periodic link status monitoring
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US9582238B2 (en) * 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
GB201100845D0 (en) 2011-01-18 2011-09-28 Bae Systems Plc Timeslot interoperability between communicating platforms
US20130013318A1 (en) 2011-01-21 2013-01-10 Qualcomm Incorporated User input back channel for wireless displays
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US8964783B2 (en) 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
JP2014064048A (ja) * 2011-01-27 2014-04-10 Panasonic Corp ネットワーク制御システム、ネットワーク制御機器、ネットワーク被制御機器及び機器制御方法
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
GB2491606A (en) * 2011-06-07 2012-12-12 Bae Systems Plc Method of assessing message Interoperability between Platforms
US9106651B2 (en) * 2011-09-19 2015-08-11 Qualcomm Incorporated Sending human input device commands over internet protocol
US9525998B2 (en) * 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
US20160299623A1 (en) * 2012-04-20 2016-10-13 Ambit Microsystems (Shanghai) Ltd Text input method
US9360997B2 (en) 2012-08-29 2016-06-07 Apple Inc. Content presentation and interaction across multiple displays
KR20140081172A (ko) * 2012-12-21 2014-07-01 주식회사 팬택 싱크 장치, 소스 장치, 이들을 포함하는 무선랜 시스템 및 싱크 장치를 제어하는 방법
US9652192B2 (en) * 2013-01-25 2017-05-16 Qualcomm Incorporated Connectionless transport for user input control for wireless display devices
US9197680B2 (en) * 2013-05-23 2015-11-24 Qualcomm Incorporated Establishing and controlling audio and voice back channels of a Wi-Fi display connection
EP3011725B1 (en) * 2013-06-18 2019-12-04 Samsung Electronics Co., Ltd Method and apparatus for controlling content shared between devices in wireless communication system
JP6022076B2 (ja) * 2013-10-15 2016-11-09 株式会社東芝 電子機器および通信制御方法
JP2015080025A (ja) * 2013-10-15 2015-04-23 株式会社東芝 電子機器および通信制御方法
DE112015001020T5 (de) 2014-02-28 2016-12-08 Samsung Electronics Co., Ltd. Verfahren und Vorrichtung zum Wiedergeben von Multimedia-Inhalt in einem Kommunikationssystem
TWI610221B (zh) * 2014-06-18 2018-01-01 緯創資通股份有限公司 螢幕播送方法以及使用該方法的系統與裝置
TWI511104B (zh) * 2014-10-07 2015-12-01 Wistron Corp 互動式電子白板操作方法以及使用該方法的裝置
US20160180804A1 (en) * 2014-12-23 2016-06-23 Intel Corporation Refresh rate control using sink requests
KR102295686B1 (ko) 2015-04-15 2021-08-31 삼성전자주식회사 외부 전자 장치와 하이브리드 통신을 수행하는 전자 장치 및 방법
US20160350061A1 (en) * 2015-05-29 2016-12-01 Qualcomm Incorporated Remote rendering from a source device to a sink device
WO2017051687A1 (ja) 2015-09-25 2017-03-30 株式会社リコー 電子黒板、電子黒板の画像処理方法、及び電子黒板のプログラムを記録した記録媒体
US20180367836A1 (en) * 2015-12-09 2018-12-20 Smartron India Private Limited A system and method for controlling miracast content with hand gestures and audio commands
CN106657950A (zh) * 2016-09-29 2017-05-10 努比亚技术有限公司 一种投影设备管理装置、方法及投影数据分享设备
KR102627056B1 (ko) * 2016-10-13 2024-01-22 엘지디스플레이 주식회사 터치 디스플레이 장치, 터치 구동 회로 및 터치 구동 회로의 구동 방법
US10911557B2 (en) 2017-01-26 2021-02-02 Microsoft Technology Licensing, Llc Miracast source providing network service access for a miracast sink
KR102565180B1 (ko) * 2018-09-20 2023-08-09 엘지디스플레이 주식회사 신호 전송 장치와 이를 이용한 표시장치

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008508600A (ja) * 2004-07-30 2008-03-21 アップル インコーポレイテッド タッチ・センシティブ入力デバイスのためのモード・ベースのグラフィカル・ユーザ・インタフェース
US20080211766A1 (en) * 2007-01-07 2008-09-04 Apple Inc. Multitouch data fusion
JP2009537051A (ja) * 2006-05-12 2009-10-22 マイクロソフト コーポレーション マルチタッチ利用、ジェスチャ及び実装
JP2010182046A (ja) * 2009-02-04 2010-08-19 Sony Corp 情報処理装置、情報処理方法およびプログラム
WO2010120878A2 (en) * 2009-04-14 2010-10-21 Qualcomm Incorporated System and method for controlling mobile devices
US20110107388A1 (en) * 2009-11-02 2011-05-05 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
JP2014507862A (ja) * 2011-01-14 2014-03-27 サムスン エレクトロニクス カンパニー リミテッド ワイファイダイレクト通信方式におけるシンクデバイスからソースデバイスにユーザの入力を送信するための方法及び装置

Family Cites Families (380)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61233849A (ja) 1985-04-08 1986-10-18 Hitachi Ltd デ−タベ−ス排他制御方法
JPH06110424A (ja) 1992-09-30 1994-04-22 Ricoh Co Ltd 販売支援装置
JPH07104722A (ja) 1993-09-30 1995-04-21 Mitsubishi Electric Corp 画像表示システム
JPH07129364A (ja) 1993-10-28 1995-05-19 Mitsubishi Electric Corp 共通画面情報指示検索装置
JP3203939B2 (ja) 1994-02-28 2001-09-04 富士ゼロックス株式会社 描画通信装置
JPH08237628A (ja) 1995-02-24 1996-09-13 Ricoh Co Ltd 通信会議装置
US5835723A (en) 1995-12-28 1998-11-10 Intel Corporation Dynamic assignment of multicast addresses
JP3001410B2 (ja) 1996-03-28 2000-01-24 日本電気テレコムシステム株式会社 自動迂回ルーティング方式
JPH09325923A (ja) 1996-06-06 1997-12-16 Canon Inc 情報処理装置及びその方法及び情報処理システム及びその制御方法
US5828370A (en) 1996-07-01 1998-10-27 Thompson Consumer Electronics Inc. Video delivery system and method for displaying indexing slider bar on the subscriber video screen
TW496058B (en) 1997-07-08 2002-07-21 Ericsson Telefon Ab L M Technique for providing a secure link in a mobile communication system
US6049549A (en) 1997-08-14 2000-04-11 University Of Massachusetts Adaptive media control
US6594699B1 (en) 1997-10-10 2003-07-15 Kasenna, Inc. System for capability based multimedia streaming over a network
US6181713B1 (en) 1997-10-27 2001-01-30 Sun Microsystems, Inc. Selectable depacketizer architecture
ATE226467T1 (de) 1997-12-02 2002-11-15 Two Way Tv Ltd Verfahren und vorrichtung für die eingabe von daten
US6195680B1 (en) 1998-07-23 2001-02-27 International Business Machines Corporation Client-based dynamic switching of streaming servers for fault-tolerance and load balancing
US20020007494A1 (en) 1998-09-28 2002-01-17 Hodge Winston W. Interactive digital program material encoder and system
US6266690B1 (en) 1999-01-27 2001-07-24 Adc Telecommunications, Inc. Enhanced service platform with secure system and method for subscriber profile customization
JP2000278320A (ja) 1999-03-25 2000-10-06 Toshiba Corp 通信システム、通信端末装置、情報サーバ装置、中継装置及び通信方法
JP3917330B2 (ja) 1999-04-06 2007-05-23 三菱電機株式会社 共通鍵共有方法
US6892230B1 (en) 1999-06-11 2005-05-10 Microsoft Corporation Dynamic self-configuration for ad hoc peer networking using mark-up language formated description messages
US6400720B1 (en) 1999-06-21 2002-06-04 General Instrument Corporation Method for transporting variable length and fixed length packets in a standard digital transmission frame
JP4167777B2 (ja) 1999-07-19 2008-10-22 三菱電機株式会社 映像表示装置、映像表示方法および映像を表示するためのプログラムを記録した記録媒体
DE60015983D1 (de) 1999-07-23 2004-12-23 Tepnel Medical Ltd Isolierung von biomolekülen
SE521463C2 (sv) 1999-09-20 2003-11-04 Ericsson Telefon Ab L M Klassificerare i ett IP nätverk med medel för att avgöra huruvida ett transmitterat flöde är ett realtidsflöde eller inte
US6954859B1 (en) 1999-10-08 2005-10-11 Axcess, Inc. Networked digital security system and methods
US6424626B1 (en) 1999-10-29 2002-07-23 Hubbell Incorporated Method and system for discarding and regenerating acknowledgment packets in ADSL communications
US6608841B1 (en) 1999-12-30 2003-08-19 Nokia Networks Oy System and method for achieving robust IP/UDP/RTP header compression in the presence of unreliable networks
US20030031152A1 (en) 2000-02-23 2003-02-13 Wataru Gohda Asynchronous transmission method
JP2001282673A (ja) 2000-03-30 2001-10-12 Canon Inc 画像配信システム及びその制御方法並びに情報処理装置
US6681250B1 (en) 2000-05-03 2004-01-20 Avocent Corporation Network based KVM switching system
US6917976B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Message-based leasing of resources in a distributed computing environment
JP3931531B2 (ja) 2000-06-07 2007-06-20 Kddi株式会社 階層符号化ビデオ配信システム
US6971063B1 (en) 2000-07-28 2005-11-29 Wireless Valley Communications Inc. System, method, and apparatus for portable design, deployment, test, and optimization of a communication network
US7221660B1 (en) 2000-08-08 2007-05-22 E.F. Johnson Company System and method for multicast communications using real time transport protocol (RTP)
JP3338825B2 (ja) 2000-08-22 2002-10-28 エヌイーシービューテクノロジー株式会社 電子プレゼンテーション方法並びにシステム
US7035281B1 (en) 2000-09-13 2006-04-25 Wp Media, Inc. Wireless provisioning device
US6748195B1 (en) 2000-09-29 2004-06-08 Motorola, Inc. Wireless device having context-based operational behavior
JP2002142210A (ja) 2000-10-31 2002-05-17 Dds:Kk 情報提供システム、情報提供方法及び情報提供サーバ
US7099629B1 (en) 2000-11-06 2006-08-29 Qualcomm, Incorporated Method and apparatus for adaptive transmission control in a high data rate communication system
DE60038298T2 (de) 2000-11-08 2009-03-12 Sony Deutschland Gmbh Computer-Software Produkt und Verfahren für eine Kommunikationseinheit und eine Hilfsmitteleinheit für ein nicht kontrolliertes Kommunikationsnetz
JP4754683B2 (ja) 2000-11-22 2011-08-24 三菱電機株式会社 無線アクセスシステムおよび無線アクセス方法
US6785254B2 (en) 2000-12-01 2004-08-31 Motorola, Inc. Wireless communication system incorporating multicast addressing and method for use
JP2002330381A (ja) 2000-12-07 2002-11-15 Matsushita Electric Ind Co Ltd データ再生方法、データ受信端末及びデータ受信方法
RU2003121400A (ru) 2000-12-15 2005-02-10 Квэлкомм Инкорпорейтед (US) Формирование и реализация протокола обмена данными и интерфейса для пересылки сигналов с высокой скоростью передачи данных
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
US20040039934A1 (en) 2000-12-19 2004-02-26 Land Michael Z. System and method for multimedia authoring and playback
KR100398610B1 (ko) 2001-01-30 2003-09-19 한국전자통신연구원 멀티미디어 컨텐츠에 동기화된 메타데이터 전송 장치 및방법
US6784855B2 (en) 2001-02-15 2004-08-31 Microsoft Corporation Methods and systems for a portable, interactive display device for use with a computer
US6963921B1 (en) 2001-02-16 2005-11-08 3Com Corporation Method and apparatus for hardware assisted TCP packet re-assembly
JP2002262341A (ja) 2001-02-28 2002-09-13 Ntt Docomo Inc 無線データ通信システム、無線データ通信システムに用いる親局、無線データ通信方法、及び無線データ通信制御プログラム
US6876857B1 (en) 2001-07-20 2005-04-05 Cisco Technology, Inc. System and method for performing admission control functions in a data network
JP4806871B2 (ja) 2001-08-07 2011-11-02 ソニー株式会社 クライアント端末及びクライアント側情報処理方法、プログラム格納媒体、プログラム、並びに情報提供システム、
BR0212361A (pt) 2001-09-06 2006-11-07 Qualcomm Inc geração e implementação de um protocolo de comunicação e interface para transferência de sinais de taxa de dados elevada
JP3668170B2 (ja) 2001-09-20 2005-07-06 株式会社東芝 無線通信装置
EP1298836B1 (en) 2001-09-28 2007-07-11 Motorola, Inc. Method and device for IP multicast over a broadcast channel
US6947768B2 (en) 2001-09-28 2005-09-20 Kabushiki Kaisha Toshiba Base station apparatus and terminal apparatus
RU2207723C1 (ru) 2001-10-01 2003-06-27 Военный университет связи Способ распределения ресурсов в системе электросвязи с множественным доступом
JP3843797B2 (ja) 2001-10-12 2006-11-08 ソニー株式会社 マルチキャスト階層化システム、配信サーバ、アドレス割り当てサーバ及びマルチキャスト配信方法
JP2003143237A (ja) 2001-11-06 2003-05-16 Mitsubishi Electric Corp ネットワーク装置および移動端末情報システム
US7299304B2 (en) 2001-11-20 2007-11-20 Intel Corporation Method and architecture to support interaction between a host computer and remote devices
US20030110297A1 (en) 2001-12-12 2003-06-12 Tabatabai Ali J. Transforming multimedia data for delivery to multiple heterogeneous devices
US20030126188A1 (en) 2001-12-27 2003-07-03 Zarlink Semiconductor V.N. Inc. Generic header parser providing support for data transport protocol independent packet voice solutions
US7260538B2 (en) 2002-01-08 2007-08-21 Promptu Systems Corporation Method and apparatus for voice control of a television control device
US20030135863A1 (en) 2002-01-17 2003-07-17 Koninklijke Philips Electronics N.V. Targeted scalable multicast based on client bandwidth or capability
US7336602B2 (en) 2002-01-29 2008-02-26 Intel Corporation Apparatus and method for wireless/wired communications interface
EP1333373B1 (en) 2002-01-30 2011-03-09 Hewlett-Packard Company (a Delaware Corporation) Computer and base station
JP2003304523A (ja) 2002-02-08 2003-10-24 Ntt Docomo Inc 情報配信システム、情報配信方法、情報配信サーバ、コンテンツ配信サーバ及び端末
CN1177436C (zh) 2002-02-09 2004-11-24 华为技术有限公司 移动网络中多播用户的管理方法
JP3982288B2 (ja) 2002-03-12 2007-09-26 日本電気株式会社 三次元ウィンドウ表示装置、三次元ウィンドウ表示方法及び三次元ウィンドウ表示プログラム
US7080151B1 (en) 2002-04-01 2006-07-18 Utstarcom, Inc. Method and system for mobile IP home agent redundancy by using home agent control nodes for managing multiple home agents
KR100441589B1 (ko) 2002-04-01 2004-07-23 삼성전자주식회사 Rtp패킷 생성/복원 장치 및 방법
JP2005527920A (ja) 2002-05-07 2005-09-15 アーゴ−テック・コーポレーション 追跡システムおよびそれに関連する方法
US7941149B2 (en) 2002-05-13 2011-05-10 Misonimo Chi Acquistion L.L.C. Multi-hop ultra wide band wireless network communication
JP4000905B2 (ja) 2002-05-22 2007-10-31 ソニー株式会社 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム
US8090869B2 (en) 2002-06-04 2012-01-03 Alcatel Lucent Priority-biased exit queue arbitration with fairness
TWI265697B (en) 2002-06-06 2006-11-01 Ibm Digital contents distribution system, digital contents distribution method, computer readable recording medium storing the program therein, and server and client therefor
US7085420B2 (en) 2002-06-28 2006-08-01 Microsoft Corporation Text detection in continuous tone image segments
EP1376521A1 (en) 2002-06-28 2004-01-02 Deutsche Thomson Brandt Processing video pictures for improving dynamic false contour effect compensation
JP4010199B2 (ja) 2002-07-23 2007-11-21 セイコーエプソン株式会社 表示システム
CN1268122C (zh) 2002-07-23 2006-08-02 精工爱普生株式会社 显示方法及投影机
US7324462B1 (en) 2002-07-25 2008-01-29 3Com Corporation Methods for discovering devices within a wireless network
JP2004086550A (ja) 2002-08-27 2004-03-18 Matsushita Electric Ind Co Ltd 表示画面更新システム
JP3900522B2 (ja) 2002-08-29 2007-04-04 ヤマハ株式会社 コマンド同期確立システムおよび方法
US7328021B1 (en) 2002-09-26 2008-02-05 Sprint Spectrum L.P. Method and system for using a measure of spectral interference to determine whether to output signals to a wireless link
JP4601895B2 (ja) 2002-09-26 2010-12-22 富士通コンポーネント株式会社 切替器及びコンピュータシステム
KR101049754B1 (ko) 2002-09-26 2011-07-19 코닌클리케 필립스 일렉트로닉스 엔.브이. 디지털 정보신호 수신장치
NO319065B1 (no) 2002-10-11 2005-06-13 Telenor Asa Apen aksessnettverks-arkitektur
US20040083284A1 (en) 2002-10-25 2004-04-29 Yuval Ofek System and method for providing data awareness across multiple domains
US7350077B2 (en) 2002-11-26 2008-03-25 Cisco Technology, Inc. 802.11 using a compressed reassociation exchange to facilitate fast handoff
US20040103438A1 (en) 2002-11-27 2004-05-27 Yong Yan Methods and systems for transferring events including multimedia data
TWI239179B (en) 2002-12-03 2005-09-01 Mediatek Inc Channel estimation in orthogonal frequency-division multiplexing (OFDM) systems
JP2004192140A (ja) 2002-12-09 2004-07-08 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP4071613B2 (ja) 2002-12-19 2008-04-02 シャープ株式会社 ネットワーク機器制御システム
US20060146009A1 (en) 2003-01-22 2006-07-06 Hanno Syrbe Image control
JP2004235800A (ja) 2003-01-29 2004-08-19 Evolium Sas 移動無線機のハンドオーバー制御方法、基地局制御装置、及び移動無線機
WO2004073309A1 (ja) 2003-02-14 2004-08-26 Sharp Kabushiki Kaisha ストリーム出力装置及び情報提供装置
JP2004265329A (ja) 2003-03-04 2004-09-24 Toshiba Corp 情報処理装置およびプログラム
JP2004274159A (ja) 2003-03-05 2004-09-30 Toshiba Corp 情報機器及び資源制御方法
GB2399712A (en) 2003-03-17 2004-09-22 Orange Personal Comm Serv Ltd Telecommunications apparatus and method for multiple data type packets
JP3912536B2 (ja) 2003-03-25 2007-05-09 ソニー株式会社 記録方法、記録装置、記録媒体、撮像装置および撮像方法
JP3922571B2 (ja) 2003-03-26 2007-05-30 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US7529823B2 (en) 2003-03-27 2009-05-05 Microsoft Corporation Notifications for shared resources
US20040202249A1 (en) 2003-04-08 2004-10-14 Newsoft Technology Corporation Real-time MPEG video encoding method of maintaining synchronization between video and audio
KR100490429B1 (ko) 2003-04-25 2005-05-17 삼성전자주식회사 피코넷에 대한 디바이스의 결합을 관리하는 시스템 및 방법
JP2005045357A (ja) 2003-07-23 2005-02-17 Hitachi Ltd リモートディスプレイプロトコル、映像表示システム及び端末装置
JP4508570B2 (ja) 2003-07-30 2010-07-21 三洋電機株式会社 リモートコントロールシステム及び情報処理装置
US7373415B1 (en) 2003-07-31 2008-05-13 Yahoo! Inc. System and method for monitoring delivery of digital content, including streaming media
WO2005015943A1 (en) 2003-08-07 2005-02-17 Samsung Electronics Co., Ltd. A/v system available for integrated control and method of controlling the same
GB2405561B (en) 2003-08-28 2006-07-26 Motorola Inc Computer network security system and method for preventing unauthorised access of computer network resources
CN100387069C (zh) 2003-09-10 2008-05-07 华为技术有限公司 蜂窝通信系统在集群业务中分配无线反向信道的方法
JP2007505580A (ja) 2003-09-12 2007-03-08 サイトリックス システムズ, インコーポレイテッド シンクライアントにおいてグラフィカルおよびメディア表示を生成するための方法および装置
KR101015768B1 (ko) 2003-09-13 2011-02-22 삼성전자주식회사 이동통신 시스템에서 방송 컨텐츠 프레임의 동기화 방법
US7411575B2 (en) 2003-09-16 2008-08-12 Smart Technologies Ulc Gesture recognition method and touch system incorporating the same
US8090402B1 (en) 2003-09-26 2012-01-03 Iwao Fujisaki Communication device
US20060008256A1 (en) 2003-10-01 2006-01-12 Khedouri Robert K Audio visual player apparatus and system and method of content distribution using the same
US8437347B2 (en) 2003-10-14 2013-05-07 Qualcomm Incorporated Scalable encoding for multicast broadcast multimedia service
US20050085239A1 (en) 2003-10-21 2005-04-21 Openwave Systems Inc. System and method for mobile-based location information
AU2004307162A1 (en) 2003-10-29 2005-05-12 Qualcomm Incorporated High data rate interface
US20050096086A1 (en) 2003-10-31 2005-05-05 Jaalaa, Inc. Computer interface with both wired and wireless links
JP4350487B2 (ja) 2003-11-06 2009-10-21 Kddi株式会社 無線通信システム、基地局および無線通信端末
JP2005148450A (ja) 2003-11-17 2005-06-09 Casio Comput Co Ltd 表示制御装置およびプログラム
US7706403B2 (en) 2003-11-25 2010-04-27 Telefonaktiebolaget Lm Ericsson (Publ) Queuing delay based rate control
US20050198663A1 (en) 2003-12-18 2005-09-08 Samsung Electronics Co., Ltd. User interface method and system for navigation in networked devices
US7668939B2 (en) 2003-12-19 2010-02-23 Microsoft Corporation Routing of resource information in a network
JP4547906B2 (ja) 2003-12-19 2010-09-22 ソニー株式会社 描画装置および描画方法、プログラム、並びに記録媒体
US7562379B2 (en) 2003-12-22 2009-07-14 Sony Corporation Method and system for wireless digital multimedia presentation
KR101050545B1 (ko) 2003-12-31 2011-07-19 유니버시티 오브 매릴랜드 칼리지 팍 네이버 그래프를 이용한 이종 망간 이동성 관리 방법
KR101121778B1 (ko) 2004-01-06 2012-03-23 삼성전자주식회사 무선으로 영상기기 주변의 기기를 제어하는 방법 및 장치
US7500260B2 (en) 2004-01-07 2009-03-03 D1Athletes.Com, Inc. Motion video indexing mechanism for athlete recruiting architecture
US20050152330A1 (en) 2004-01-12 2005-07-14 Stephens Adrian P. Clock recovery methods and apparatus
JP4203997B2 (ja) 2004-01-15 2009-01-07 株式会社Kddi研究所 センサネットワークにおけるアドレス割当方法
US7868890B2 (en) 2004-02-24 2011-01-11 Qualcomm Incorporated Display processor for a wireless device
KR100601670B1 (ko) 2004-05-03 2006-07-14 삼성전자주식회사 네트워크를 통한 컨텐츠의 제어 방법, 미디어 랜더러 장치및 미디어 소오스 장치
EP1745604B1 (en) 2004-05-05 2011-06-15 Telefonaktiebolaget LM Ericsson (publ) Hsdpa flow control, control frames rtt measurement
EP1596538A1 (en) 2004-05-10 2005-11-16 Sony Ericsson Mobile Communications AB Method and device for bluetooth pairing
US20050266798A1 (en) 2004-05-31 2005-12-01 Seamus Moloney Linking security association to entries in a contact directory of a wireless device
KR100926658B1 (ko) 2004-06-04 2009-11-17 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
JP3797372B2 (ja) 2004-08-20 2006-07-19 セイコーエプソン株式会社 描画命令のフックを利用した画像の転送
US20050283535A1 (en) 2004-06-17 2005-12-22 Michele Covell Method and system for interactive control of media over a network
JP4266188B2 (ja) 2004-06-30 2009-05-20 株式会社東芝 通信システム及びこの通信システムで使用される通信端末装置、及び通信システムで使用される通信方法
US7830826B2 (en) 2004-07-01 2010-11-09 Nokia Corporation Multicast relay for mobile devices
US20060013182A1 (en) 2004-07-19 2006-01-19 Telefonaktiebolaget Lm Ericsson Selective multicarrier CDMA network
US20060028398A1 (en) 2004-07-23 2006-02-09 Willmore Charles E Wireless interactive multi-user display system and method
KR100958490B1 (ko) 2004-07-30 2010-05-17 애플 인크. 사용자 인터페이스 방법, 미디어 항목들을 통해 스크롤하는방법, 디스플레이 및 터치 스크린을 갖는 사용자-조작되는전자 장치 상에서 수행되는 방법, 디스플레이 및 터치감지 입력 장치를 갖는 컴퓨팅 장치 상에서 수행되는 방법,컴퓨팅 시스템, 컴퓨팅 장치, 터치 감지 장치를 통해플로팅 컨트롤을 기동시키는 컴퓨터 구현 방법 및 컴퓨터구현 방법
EP1779347A4 (en) 2004-08-17 2009-06-17 California Inst Of Techn METHOD AND DEVICE FOR NETWORK EXTENSION CONTROL USING A QUEEN CONTROL AND DISTANCE DELAY MEASUREMENTS
JP2006060448A (ja) 2004-08-19 2006-03-02 Nippon Telegr & Teleph Corp <Ntt> スケーラブルマルチキャストコンテンツ配信システムと装置、およびそのレート制御方法と帯域配分方法、およびそのプログラムと記録媒体
JP4612817B2 (ja) 2004-08-20 2011-01-12 キヤノン株式会社 グループ管理装置及び情報処理方法、ならびにコンピュータプログラム及び記録媒体
US7590750B2 (en) 2004-09-10 2009-09-15 Microsoft Corporation Systems and methods for multimedia remoting over terminal server connections
KR100603569B1 (ko) 2004-09-13 2006-07-24 삼성전자주식회사 유무선으로 음성 및 데이터를 서비스하는 통신 단말시스템 및 그 신호 제어 방법
JP2006100885A (ja) 2004-09-28 2006-04-13 Vodafone Kk ストリーミングデータ受信再生端末
US20060068852A1 (en) 2004-09-30 2006-03-30 Doyle Matthew J System for reducing power consumption of a wireless terminal and increasing capacity of a wireless communication system
US8396973B2 (en) 2004-10-22 2013-03-12 Microsoft Corporation Distributed speech service
JP2006121562A (ja) 2004-10-25 2006-05-11 Matsushita Electric Ind Co Ltd 無線通信装置
KR100619949B1 (ko) 2004-10-29 2006-09-13 엘지전자 주식회사 고속 이동통신망에서의 티씨피 흐름 제어방법
US7463622B2 (en) 2004-11-10 2008-12-09 Wei Lu Integrated communication terminal for next generation mobile telecommunications
KR100595695B1 (ko) 2004-11-13 2006-07-03 엘지전자 주식회사 휴대단말기의 모듈러 장치 및 방법
JP2006172423A (ja) 2004-11-18 2006-06-29 Canon Inc 遠隔操作システム、遠隔操作装置、被操作装置、遠隔操作方法、コンピュータプログラム、記憶媒体
JP2006155327A (ja) 2004-11-30 2006-06-15 Hitachi Systems & Services Ltd コンピュータの遠隔操作システム
US7719972B2 (en) 2004-12-03 2010-05-18 Intel Corporation Methods and apparatus for providing an admission control system in a wireless mesh network
KR100601047B1 (ko) 2004-12-16 2006-07-18 한국전자통신연구원 임베디드 시스템에서 동영상 및 스킨 합성 장치 및 그 방법
US7664081B2 (en) 2004-12-22 2010-02-16 Nokia Corporation Wireless gateway for enabling wireless devices to discover and interact with various short-range services/devices
US7565357B2 (en) 2004-12-30 2009-07-21 Alcatel Lucent Multi-sensor communication system
JP2006197401A (ja) 2005-01-14 2006-07-27 Sony Corp 情報処理装置および方法、並びにプログラム
US7768988B2 (en) 2005-02-22 2010-08-03 Intel Corporation Method and apparatus to perform network medium reservation in a wireless network
US8102901B2 (en) 2005-03-01 2012-01-24 Intel Corporation Techniques to manage wireless connections
US7339460B2 (en) 2005-03-02 2008-03-04 Qualcomm Incorporated Method and apparatus for detecting cargo state in a delivery vehicle
US7424267B2 (en) 2005-03-07 2008-09-09 Broadcom Corporation Automatic resource availability using Bluetooth
US20060203805A1 (en) 2005-03-08 2006-09-14 Avaya Technology Corp. Quality-of-service assurance for IP telephony
US20060206339A1 (en) 2005-03-11 2006-09-14 Silvera Marja M System and method for voice-enabled media content selection on mobile devices
JP2006254328A (ja) 2005-03-14 2006-09-21 Nippon Telegr & Teleph Corp <Ntt> 音声映像通信システム
JP4621044B2 (ja) 2005-03-15 2011-01-26 富士通株式会社 負荷分散装置および負荷分散方法
US8769046B2 (en) 2005-03-23 2014-07-01 Qualcomm Incorporated Methods and apparatus for using multiple wireless links with a wireless terminal
US7426395B2 (en) 2005-03-31 2008-09-16 Intel Corporation Techniques to select data rates for a wireless system
JP4405419B2 (ja) 2005-03-31 2010-01-27 株式会社東芝 画面送信装置
KR20080006609A (ko) 2005-04-13 2008-01-16 노키아 코포레이션 스케일링가능성 정보의 코딩, 저장, 및 시그널링
US20060236250A1 (en) 2005-04-14 2006-10-19 Ullas Gargi Data display methods, display systems, network systems, and articles of manufacture
US7590075B2 (en) 2005-04-15 2009-09-15 Dell Products L.P. Systems and methods for managing wireless communication
US20060270417A1 (en) 2005-05-27 2006-11-30 Topseed Technology Corp. Wireless communication system and method for the same
US7911977B2 (en) 2005-05-31 2011-03-22 Cisco Technology, Inc. Designated router assignment per multicast group address/range
HUE030587T2 (en) 2005-06-17 2017-05-29 ERICSSON TELEFON AB L M (publ) Management of communication resources
US20060288008A1 (en) 2005-06-21 2006-12-21 Sukadev Bhattiprolu Append/read lock compatibility in a distributed file system
US20080005348A1 (en) 2005-06-24 2008-01-03 David Kosiba System and method for enabling playlist navigation of digital multimedia content
IL169418A (en) 2005-06-27 2010-11-30 Alvarion Ltd Method and apparatus for dynamic management of wireless communication transmissions
EP2894831B1 (en) 2005-06-27 2020-06-03 Core Wireless Licensing S.a.r.l. Transport mechanisms for dynamic rich media scenes
US20070004387A1 (en) 2005-06-30 2007-01-04 Gadamsetty Uma M Sharing of services between a mobile computer and a wireless device
CN100471114C (zh) 2005-07-01 2009-03-18 萧学文 一种通过移动终端访问电脑资源的方法及系统
US7577125B2 (en) 2005-07-08 2009-08-18 Microsoft Corporation Direct wireless client to client communication
US20070016654A1 (en) 2005-07-13 2007-01-18 Staccato Communications, Inc. Wireless content distribution
JP4555859B2 (ja) 2005-07-13 2010-10-06 日本電信電話株式会社 認証システム、認証方法、証明装置、検証装置、それらのプログラム及び記録媒体
JP4886689B2 (ja) 2005-07-15 2012-02-29 パナソニック株式会社 パケット送信装置
CN102752639B (zh) 2005-07-18 2015-08-05 汤姆森许可贸易公司 使用元数据来处理多个视频流的方法和设备
US20070018844A1 (en) 2005-07-19 2007-01-25 Sehat Sutardja Two way remote control
JP4674502B2 (ja) 2005-07-22 2011-04-20 ソニー株式会社 情報通信システム、情報通信装置及び情報通信方法、並びにコンピュータ・プログラム
JP4408845B2 (ja) 2005-07-27 2010-02-03 シャープ株式会社 映像合成装置及びプログラム
WO2007021269A1 (en) 2005-08-15 2007-02-22 Mitsubishi Electric Research Laboratories Method, apparatus and system for multicast communication in a wireless multi-hop network
US7844442B2 (en) 2005-08-16 2010-11-30 Exent Technologies, Ltd. System and method for providing a remote user interface for an application executing on a computing device
US7733891B2 (en) 2005-09-12 2010-06-08 Zeugma Systems Inc. Methods and apparatus to support dynamic allocation of traffic management resources in a network element
KR100693863B1 (ko) 2005-09-12 2007-03-12 삼성전자주식회사 디스플레이 구동 회로
WO2007033049A2 (en) 2005-09-12 2007-03-22 Skybitz, Inc. System and method for reporting a status of an asset
JP2007108615A (ja) 2005-09-13 2007-04-26 Seiko Epson Corp 電気光学装置、電気光学装置の駆動方法、および電子機器
JP2007082070A (ja) 2005-09-16 2007-03-29 Nippon Telegr & Teleph Corp <Ntt> 無線通信装置
JP4707514B2 (ja) 2005-09-20 2011-06-22 三菱電機株式会社 ビデオストリーム供給システム、ビデオストリーム供給装置、及びビデオストリーム受信装置
US7712670B2 (en) 2005-09-28 2010-05-11 Sauerwein Jr James T Data collection device and network having radio signal responsive mode switching
US8788802B2 (en) 2005-09-29 2014-07-22 Qualcomm Incorporated Constrained cryptographic keys
US8576846B2 (en) 2005-10-05 2013-11-05 Qualcomm Incorporated Peer-to-peer communication in ad hoc wireless network
US7720096B2 (en) 2005-10-13 2010-05-18 Microsoft Corporation RTP payload format for VC-1
JP2007158919A (ja) 2005-12-07 2007-06-21 Fujifilm Corp 画像表示装置及び画像表示方法
US8559350B2 (en) 2005-12-20 2013-10-15 Microsoft Corporation Mechanism to convey discovery information in a wireless network
US7613426B2 (en) 2005-12-20 2009-11-03 Microsoft Corporation Proximity service discovery in wireless networks
EP1802038B1 (en) 2005-12-23 2009-01-07 Sony Deutschland GmbH System and method for improving service and device discovery in a UPnP-based wireless communication network
US9294728B2 (en) 2006-01-10 2016-03-22 Imagine Communications Corp. System and method for routing content
US7333464B2 (en) 2006-02-01 2008-02-19 Microsoft Corporation Automated service discovery and wireless network set-up
JP2007206644A (ja) 2006-02-06 2007-08-16 Seiko Epson Corp 画像表示システム,画像表示方法,画像表示プログラム,記録媒体,データ処理装置,画像表示装置
US8428048B2 (en) 2006-02-21 2013-04-23 Qualcomm Incorporated Multi-program viewing in a wireless apparatus
TW200734913A (en) 2006-03-10 2007-09-16 Inventec Appliances Corp Electronic device and method using displacement sensor to move position displayed on screen
US7519470B2 (en) 2006-03-15 2009-04-14 Microsoft Corporation Location-based caching for mobile devices
JP4585479B2 (ja) 2006-03-30 2010-11-24 株式会社東芝 サーバ装置および映像配信方法
US7675537B2 (en) 2006-03-31 2010-03-09 Polycom, Inc. System, method, and apparatus for extending wireless personal area networks using conferencing connection
JP2007271908A (ja) 2006-03-31 2007-10-18 Victor Co Of Japan Ltd マルチ画像生成装置
US8612619B2 (en) 2006-03-31 2013-12-17 Alcatel Lucent Method and apparatus for improved multicast streaming in wireless networks
ATE513369T1 (de) 2006-04-26 2011-07-15 Qualcomm Inc Drahtlose gerätekommunikation mit mehreren peripheriegeräten
US20070264991A1 (en) 2006-05-15 2007-11-15 Microsoft Corporation Services near me: discovering and connecting to available wireless services utilizing proximity discovery
WO2007140342A2 (en) 2006-05-26 2007-12-06 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
JP2007316405A (ja) 2006-05-26 2007-12-06 Canon Inc マルチ画面表示装置
US20080045149A1 (en) 2006-05-26 2008-02-21 Dinesh Dharmaraju Wireless architecture for a traditional wire-based protocol
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
CN101083825B (zh) 2006-05-30 2011-09-28 株式会社Ntt都科摩 在共存的多种无线网络中进行动态频谱分配的方法及装置
US20070292135A1 (en) 2006-06-09 2007-12-20 Yong Guo Integrated remote control signaling
US7869529B2 (en) 2006-06-14 2011-01-11 Qualcomm Incorporated System, method and computer-readable medium for detection and avoidance (DAA) of victim services in ultra-wideband systems (UWB)
US7696980B1 (en) 2006-06-16 2010-04-13 Logitech Europe S.A. Pointing device for use in air with improved cursor control and battery life
CN100454819C (zh) 2006-06-19 2009-01-21 华为技术有限公司 一种多播服务实现方法
US7881315B2 (en) 2006-06-27 2011-02-01 Microsoft Corporation Local peer-to-peer digital content distribution
US8311172B2 (en) 2006-07-17 2012-11-13 Infineon Technologies Ag Synchronizing high data-rate radio transceivers
US20080018657A1 (en) 2006-07-18 2008-01-24 Bruce Montag System and Method for Managing an Information Handling System Display Presentation
US7860038B2 (en) 2006-08-04 2010-12-28 Microsoft Corporation Wireless support for portable media player devices
US20080046944A1 (en) 2006-08-17 2008-02-21 Lee Hae-Ryong Ubiquitous home media service apparatus and method based on smmd, and home media service system and method using the same
US8773494B2 (en) 2006-08-29 2014-07-08 Microsoft Corporation Techniques for managing visual compositions for a multimedia conference call
JP2008079139A (ja) 2006-09-22 2008-04-03 Ict Solutions:Kk インタラクティブ装置およびインタラクティブ装置の制御方法
KR100885444B1 (ko) 2006-10-20 2009-02-24 엘지전자 주식회사 네트워크에서 디바이스의 출력을 제어하는 방법
US8806562B2 (en) 2006-10-27 2014-08-12 Hewlett-Packard Development Company, L.P. Audio/video component networking system and method
KR20080040930A (ko) 2006-11-06 2008-05-09 삼성전자주식회사 컴퓨터 시스템 및 그 제어방법
US9131486B2 (en) 2006-12-01 2015-09-08 Qualcomm Incorporated Control signal transmission for wireless communication systems
US8630312B2 (en) 2006-12-04 2014-01-14 Samsung Electronics Company, Ltd. System and method for wireless communication of uncompressed video having connection control protocol
US8514835B2 (en) 2007-01-12 2013-08-20 Samsung Electronics Co., Ltd. Hierarchical multicast protocol in a mobile ad-hoc network
WO2008087713A1 (ja) 2007-01-16 2008-07-24 Mitsubishi Electric Corporation クライアント端末、アプリケーション提供サーバ及びアプリケーション提供システム
JP2008191929A (ja) 2007-02-05 2008-08-21 Mitsubishi Electric Corp コンテンツ利用システム、コンテンツ表示装置、端末装置及び利用待ち状況表示方法並びにプログラム
JP4752786B2 (ja) 2007-02-15 2011-08-17 ソニー株式会社 マルチキャスト配信システムおよびマルチキャスト配信方法
JP4765952B2 (ja) 2007-02-15 2011-09-07 ソニー株式会社 マルチキャスト配信システム、クライアント機器、上位ルータ制御装置、コンテンツの表示方法およびプログラム
US7630370B2 (en) 2007-02-28 2009-12-08 Sharp Laboratories Of America, Inc. Overlay join latency reduction using preferred peer list
TWI478584B (zh) 2007-03-08 2015-03-21 Realtek Semiconductor Corp 一種視訊編解碼的方法及其裝置
US20080231595A1 (en) 2007-03-20 2008-09-25 At&T Knowledge Ventures, Lp Remote control apparatus and method of interacting with a multimedia timeline user interface
JP4748086B2 (ja) 2007-03-22 2011-08-17 日本電気株式会社 通信中継装置、リソース解放方法および通信中継装置のプログラム
US20080270532A1 (en) 2007-03-22 2008-10-30 Melodeo Inc. Techniques for generating and applying playlists
US7768536B2 (en) 2007-04-11 2010-08-03 Sony Ericsson Mobile Communications Ab Methods of displaying information at different zoom settings and related devices and computer program products
US8009587B2 (en) 2007-05-01 2011-08-30 Broadcom Corporation System and method of discovery of wireless control device
TW200908760A (en) 2007-05-22 2009-02-16 Nec Corp Signal handover control device, method and program
US8320410B2 (en) 2007-05-23 2012-11-27 Broadcom Corporation Synchronization of media data streams with separate sinks using a relay
JP2008293361A (ja) 2007-05-25 2008-12-04 Canon Inc 画面表示システム、その制御方法、プログラム及び記録媒体
JP4996348B2 (ja) 2007-05-31 2012-08-08 株式会社東芝 映像処理装置及び映像処理方法
US20080307349A1 (en) 2007-06-08 2008-12-11 Microsoft Corporation Sharing a computer display across a network
US20080310391A1 (en) 2007-06-17 2008-12-18 Texas Instruments Incorporated Apparatus for and method of power save traffic control in client/server networks
US7835406B2 (en) 2007-06-18 2010-11-16 Cisco Technology, Inc. Surrogate stream for monitoring realtime media
WO2009000334A1 (en) 2007-06-27 2008-12-31 International Business Machines Corporation System and method for providing a composite display
EP2012461A1 (en) 2007-07-04 2009-01-07 Nokia Siemens Networks Oy Multicast network system
US8601156B2 (en) 2007-07-06 2013-12-03 Qualcomm Incorporated Methods and apparatus related to peer discovery and/or paging in peer to peer wireless communications
US20090010259A1 (en) 2007-07-08 2009-01-08 Alexander Sirotkin Device, system, and method of classification of communication traffic
JP2009021698A (ja) 2007-07-10 2009-01-29 Toshiba Corp 映像表示端末装置、表示切替方法およびプログラム
JP2009033348A (ja) 2007-07-25 2009-02-12 Toshiba Corp ビデオ会議アプリケーションサーバ、ビデオ会議方法およびプログラム
US8667144B2 (en) 2007-07-25 2014-03-04 Qualcomm Incorporated Wireless architecture for traditional wire based protocol
US8190750B2 (en) 2007-08-24 2012-05-29 Alcatel Lucent Content rate selection for media servers with proxy-feedback-controlled frame transmission
US8855192B2 (en) 2007-09-05 2014-10-07 Amimon, Ltd. Device, method and system for transmitting video data between a video source and a video sink
US9239666B2 (en) 2007-09-12 2016-01-19 Citrix Systems, Inc. Methods and systems for maintaining desktop environments providing integrated access to remote and local resources
JP2009071580A (ja) 2007-09-13 2009-04-02 Yamaha Corp 通信装置
EP2037683A1 (en) 2007-09-17 2009-03-18 Alcatel Lucent Process for delivering to a media terminal an adapted video stream by means of an access node
WO2009040918A1 (ja) 2007-09-27 2009-04-02 Panasonic Corporation 動画像符号化装置、動画像符号化方法及びプログラム
US20090089453A1 (en) 2007-09-27 2009-04-02 International Business Machines Corporation Remote visualization of a graphics application
JP5186864B2 (ja) 2007-09-28 2013-04-24 大日本印刷株式会社 振出容器
JP4479776B2 (ja) 2007-10-05 2010-06-09 ソニー株式会社 表示装置および送信装置
CN101849224B (zh) 2007-10-20 2016-04-27 思杰系统有限公司 用于远程处理三维图像数据的方法和系统
US8407605B2 (en) 2009-04-03 2013-03-26 Social Communications Company Application sharing
US8059650B2 (en) 2007-10-31 2011-11-15 Aruba Networks, Inc. Hardware based parallel processing cores with multiple threads and multiple pipeline stages
JP5018515B2 (ja) 2007-11-20 2012-09-05 ソニー株式会社 情報処理装置、情報処理方法、表示制御装置、表示制御方法、およびプログラム
KR101445188B1 (ko) 2007-11-21 2014-10-01 삼성전자주식회사 무선 센서 네트워크에서 비정상적인 프레임 탐지 방법 및이를 위한 시스템
JP4618291B2 (ja) 2007-11-30 2011-01-26 ソニー株式会社 送信装置、受信装置および受信装置における操作情報送信方法
US20090141692A1 (en) 2007-11-30 2009-06-04 Mika Kasslin Optimized ad hoc networking
US8866971B2 (en) 2007-12-17 2014-10-21 Ati Technologies Ulc Method, apparatus and machine-readable medium for apportioning video processing between a video source device and a video sink device
EP2232848A4 (en) 2007-12-20 2012-10-24 Ati Technologies Ulc ADJUSTING VIDEO PROCESSING IN A SYSTEM COMPRISING A VIDEO SOURCE DEVICE AND A VIDEO ACCUMULATION DEVICE
TWI381291B (zh) 2008-01-25 2013-01-01 Primax Electronics Ltd 可降低無線滑鼠耗電之方法
JP5359230B2 (ja) 2008-02-04 2013-12-04 ソニー株式会社 送信装置および伝送データフォーマット決定方法
JP5105171B2 (ja) 2008-02-08 2012-12-19 ソニー株式会社 表示装置、表示方法、供給装置、供給方法、およびプログラム、並びに制御システム
GB2470333B (en) 2008-03-05 2012-05-16 Hewlett Packard Development Co Synchronizing and windowing external content in digital display systems
CN101547143B (zh) 2008-03-28 2012-10-03 华为技术有限公司 一种流媒体业务的切换方法和装置
US8811294B2 (en) 2008-04-04 2014-08-19 Qualcomm Incorporated Apparatus and methods for establishing client-host associations within a wireless network
WO2009132276A2 (en) 2008-04-25 2009-10-29 Interdigital Patent Holdings, Inc. Radio link control status reporting and polling
US20090284476A1 (en) * 2008-05-13 2009-11-19 Apple Inc. Pushing a user interface to a remote device
JP2009284047A (ja) 2008-05-20 2009-12-03 Panasonic Corp ソース装置用アダプタ装置及びソース装置用アダプタ装置の制御方法
US8214857B2 (en) 2008-05-29 2012-07-03 International Business Machines Corporation Generating a combined video stream from multiple input video streams
US8116333B2 (en) 2008-06-30 2012-02-14 Sibeam, Inc. Connection control in a wireless communication system
US8126509B2 (en) 2008-08-01 2012-02-28 Mediatek Inc. Methods for handling packet-switched data transmissions by mobile station with subscriber identity cards and systems utilizing the same
US20100073334A1 (en) 2008-09-25 2010-03-25 Cohen Alexander J E-paper application control based on conformation sequence status
US8517251B2 (en) 2008-08-29 2013-08-27 The Invention Science Fund I, Llc Application control based on flexible interface conformation sequence status
US8466870B2 (en) 2008-08-29 2013-06-18 The Invention Science Fund, I, LLC E-paper application control based on conformation sequence status
US8344870B2 (en) * 2008-10-07 2013-01-01 Cisco Technology, Inc. Virtual dashboard
JP5077181B2 (ja) 2008-10-14 2012-11-21 ソニー株式会社 情報受信装置、情報送信装置および情報通信システム
US20100118200A1 (en) 2008-11-10 2010-05-13 Geoffrey Michael Gelman Signage
WO2010059005A2 (en) 2008-11-24 2010-05-27 Lg Electronics, Inc. Apparatus for receiving a signal and method of receiving a signal
US8558803B2 (en) 2008-11-28 2013-10-15 Samsung Electronics Co., Ltd. Input device for portable terminal and method thereof
US7861004B2 (en) 2008-12-04 2010-12-28 At&T Intellectual Property I, Lp System and method for analyzing data traffic
US10311446B2 (en) 2008-12-05 2019-06-04 Nokia Technologies Oy Method and apparatus for obfuscating context information
US9398089B2 (en) 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
WO2010077046A2 (en) 2008-12-30 2010-07-08 Samsung Electronics Co,. Ltd. Method and apparatus for processing packet
US8743906B2 (en) 2009-01-23 2014-06-03 Akamai Technologies, Inc. Scalable seamless digital video stream splicing
JP5267165B2 (ja) 2009-01-30 2013-08-21 日本電気株式会社 ストリーミング配信システム、その動作制御方法及びプログラム
TW201031149A (en) 2009-02-03 2010-08-16 Acer Inc Instant data sharing system and machine readable medium thereof
US20100205321A1 (en) 2009-02-12 2010-08-12 Qualcomm Incorporated Negotiable and adaptable periodic link status monitoring
US8102849B2 (en) 2009-02-12 2012-01-24 Qualcomm, Incorporated Association procedure to enable multiple multicast streams
CN101847073A (zh) 2009-03-25 2010-09-29 鸿富锦精密工业(深圳)有限公司 便携式电子装置
US8406961B2 (en) 2009-04-16 2013-03-26 Panasonic Corporation Reconfigurable vehicle user interface system
US8742885B2 (en) 2009-05-01 2014-06-03 Apple Inc. Directional touch remote
US8156238B2 (en) 2009-05-13 2012-04-10 Stmicroelectronics, Inc. Wireless multimedia transport method and apparatus
JP5351960B2 (ja) 2009-05-14 2013-11-27 パナソニック株式会社 ビデオデータの伝送方法
JP5367814B2 (ja) 2009-05-14 2013-12-11 パナソニック株式会社 映像データの伝送方法
EP2449788A4 (en) 2009-06-30 2015-05-13 Lg Electronics Inc DATA PROCESSING METHOD FOR THREE DIMENSIONAL IMAGES AND AUDIO / VIDEO SYSTEM
US8605584B2 (en) 2009-07-02 2013-12-10 Qualcomm Incorporated Transmission of control information across multiple packets
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US8687648B2 (en) 2009-07-17 2014-04-01 Qualcomm Incorporated Wireless transmission of data using an available channel of a spectrum
US8378653B2 (en) 2009-08-17 2013-02-19 Texas Instruments Incorporated HDMI driver tail current transistors with current mirror controlled leads
US8355328B2 (en) 2009-08-27 2013-01-15 Broadcom Corporation Dynamic load balancing
KR101576969B1 (ko) 2009-09-08 2015-12-11 삼성전자 주식회사 영상처리장치 및 영상처리방법
KR20110053110A (ko) 2009-11-13 2011-05-19 삼성전자주식회사 디스플레이장치, 클라이언트, 이를 포함하는 영상표시시스템 및 영상표시방법
US8713625B2 (en) 2009-12-01 2014-04-29 Sony Corporation Delivery of captions, content advisory and other data through digital interface
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
US8559340B2 (en) 2009-12-22 2013-10-15 Samsung Electronics Co., Ltd. Method and apparatus for service discovery in Wi-Fi direct network
US20110157470A1 (en) 2009-12-28 2011-06-30 Sadao Tsuruga Receiver, receiving method and output control method
US20110167176A1 (en) 2010-01-06 2011-07-07 Apple Inc. Connecting multiple accessories to a portable computing device
US8543745B2 (en) 2010-01-06 2013-09-24 Apple Inc. Accessory for a portable computing device
US8698845B2 (en) 2010-01-06 2014-04-15 Apple Inc. Device, method, and graphical user interface with interactive popup views
JP5493910B2 (ja) 2010-01-25 2014-05-14 ソニー株式会社 無線通信装置、無線通信方法、通信制御装置、およびプログラム
US9085880B2 (en) 2010-02-01 2015-07-21 Kohler Co. Systems and methods for providing a programmable shower interface
WO2011105815A2 (en) 2010-02-23 2011-09-01 Lg Electronics Inc. A method and an apparatus for session routing in home network system
US8692937B2 (en) 2010-02-25 2014-04-08 Silicon Image, Inc. Video frame synchronization
US20110216829A1 (en) 2010-03-02 2011-09-08 Qualcomm Incorporated Enabling delta compression and modification of motion estimation and metadata for rendering images to a remote display
US10009647B2 (en) 2010-03-02 2018-06-26 Qualcomm Incorporated Reducing end-to-end latency for communicating information from a user device to a receiving device via television white space
US8300667B2 (en) 2010-03-02 2012-10-30 Cisco Technology, Inc. Buffer expansion and contraction over successive intervals for network devices
KR101731844B1 (ko) 2010-05-14 2017-05-02 삼성전자 주식회사 와이파이 디바이스의 와이파이 서비스 제공 방법 및 시스템
US8738783B2 (en) 2010-06-22 2014-05-27 Microsoft Corporation System for interaction of paired devices
US8429707B2 (en) 2010-08-04 2013-04-23 Verizon Patent And Licensing Inc. Method and apparatus for interacting with a set-top box based on sensor events from a user device
US8402498B2 (en) 2010-08-04 2013-03-19 Verizon Patent And Licensing Inc. Method and apparatus for controlling a set-top box based on device events
US20120038825A1 (en) * 2010-08-16 2012-02-16 Uri Kanonich Circuits systems & method for computing over a wireless communication architecture
JP5816829B2 (ja) 2010-08-17 2015-11-18 パナソニックIpマネジメント株式会社 電力管理装置
WO2012048028A1 (en) 2010-10-05 2012-04-12 Citrix Systems, Inc. Gesture support for shared sessions
US8462734B2 (en) 2010-10-20 2013-06-11 Nokia Corporation Wireless docking with out-of-band initiation
US8605048B2 (en) 2010-11-05 2013-12-10 Bluespace Corporation Method and apparatus for controlling multimedia contents in realtime fashion
JP5897792B2 (ja) 2010-12-10 2016-03-30 ソニー株式会社 画像処理装置、画像再生装置、および画像再生システム
JP5811602B2 (ja) 2010-12-16 2015-11-11 ソニー株式会社 画像生成装置、プログラム、画像表示システム、および画像表示装置
US8495686B2 (en) 2010-12-27 2013-07-23 Verizon Patent And Licensing Inc. Method and apparatus for controlling a set top box over a wireless adhoc connection
WO2012099338A2 (ko) 2011-01-18 2012-07-26 엘지전자 주식회사 사용자 입력 전달 방법 및 그를 이용한 장치
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US20130003624A1 (en) 2011-01-21 2013-01-03 Qualcomm Incorporated User input back channel for wireless displays
US8677029B2 (en) 2011-01-21 2014-03-18 Qualcomm Incorporated User input back channel for wireless displays
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US20130013318A1 (en) 2011-01-21 2013-01-10 Qualcomm Incorporated User input back channel for wireless displays
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US8964783B2 (en) * 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US11580155B2 (en) 2011-03-28 2023-02-14 Kodak Alaris Inc. Display device for displaying related digital images
US9712573B2 (en) 2011-09-13 2017-07-18 Qualcomm Incorporated Synchronized wireless display devices
US8887222B2 (en) 2011-09-14 2014-11-11 Qualcomm Incorporated Multicasting in a wireless display system
US20130195119A1 (en) 2011-10-14 2013-08-01 Qualcomm Incorporated Feedback channel for wireless display devices
US9277230B2 (en) 2011-11-23 2016-03-01 Qualcomm Incorporated Display mode-based video encoding in wireless display devices
US9594536B2 (en) 2011-12-29 2017-03-14 Ati Technologies Ulc Method and apparatus for electronic device communication
US8966131B2 (en) * 2012-01-06 2015-02-24 Qualcomm Incorporated System method for bi-directional tunneling via user input back channel (UIBC) for wireless displays
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
KR101335247B1 (ko) 2012-02-21 2013-11-29 주식회사 팬택 원격의 싱크 장치를 표시하는 방법, 이를 위한 소스 장치 및 시스템
KR101892567B1 (ko) 2012-02-24 2018-08-28 삼성전자 주식회사 단말기에서 콘텐츠 이동 방법 및 장치
US9087163B2 (en) 2012-07-11 2015-07-21 Silicon Image, Inc. Transmission of multiple protocol data elements via an interface utilizing a data tunnel
WO2014052856A2 (en) 2012-09-28 2014-04-03 Marvell World Trade Ltd. Enhanced user experience for miracast devices

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008508600A (ja) * 2004-07-30 2008-03-21 アップル インコーポレイテッド タッチ・センシティブ入力デバイスのためのモード・ベースのグラフィカル・ユーザ・インタフェース
JP2009537051A (ja) * 2006-05-12 2009-10-22 マイクロソフト コーポレーション マルチタッチ利用、ジェスチャ及び実装
US20080211766A1 (en) * 2007-01-07 2008-09-04 Apple Inc. Multitouch data fusion
JP2010182046A (ja) * 2009-02-04 2010-08-19 Sony Corp 情報処理装置、情報処理方法およびプログラム
WO2010120878A2 (en) * 2009-04-14 2010-10-21 Qualcomm Incorporated System and method for controlling mobile devices
US20110107388A1 (en) * 2009-11-02 2011-05-05 Samsung Electronics Co., Ltd. Method and apparatus for providing user input back channel in audio/video system
JP2014507862A (ja) * 2011-01-14 2014-03-27 サムスン エレクトロニクス カンパニー リミテッド ワイファイダイレクト通信方式におけるシンクデバイスからソースデバイスにユーザの入力を送信するための方法及び装置

Also Published As

Publication number Publication date
US20130009887A1 (en) 2013-01-10
KR20130115370A (ko) 2013-10-21
WO2012100204A1 (en) 2012-07-26
EP2666069A1 (en) 2013-11-27
KR101603155B1 (ko) 2016-03-14
US9065876B2 (en) 2015-06-23
CN103392160A (zh) 2013-11-13
CN103392160B (zh) 2016-10-26
JP5694568B2 (ja) 2015-04-01

Similar Documents

Publication Publication Date Title
JP6013562B2 (ja) ワイヤレスシンクとワイヤレスソースデバイスとの間で機能をネゴシエートすること
JP6092338B2 (ja) ワイヤレスディスプレイのためのユーザ入力バックチャネル
JP5826860B2 (ja) ワイヤレスディスプレイのためのユーザ入力バックチャネル
JP5694568B2 (ja) ワイヤレスディスプレイのためのユーザ入力バックチャネル
JP5714726B2 (ja) ワイヤレスディスプレイのためのユーザ入力バックチャネル
JP5826861B2 (ja) ワイヤレスディスプレイのためのユーザ入力バックチャネル
US9413803B2 (en) User input back channel for wireless displays
US9582239B2 (en) User input back channel for wireless displays
JP2016021754A (ja) ワイヤレスディスプレイのためのユーザ入力バックチャネル
JP5847846B2 (ja) ワイヤレスディスプレイのためのユーザ入力バックチャネル

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140826

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150204

R150 Certificate of patent or registration of utility model

Ref document number: 5694568

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees