特許第5938106号(P5938106)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インテル・コーポレーションの特許一覧

<>
  • 特許5938106-強化型ワイヤレスディスプレイ 図000002
  • 特許5938106-強化型ワイヤレスディスプレイ 図000003
  • 特許5938106-強化型ワイヤレスディスプレイ 図000004
  • 特許5938106-強化型ワイヤレスディスプレイ 図000005
  • 特許5938106-強化型ワイヤレスディスプレイ 図000006
  • 特許5938106-強化型ワイヤレスディスプレイ 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5938106
(24)【登録日】2016年5月20日
(45)【発行日】2016年6月22日
(54)【発明の名称】強化型ワイヤレスディスプレイ
(51)【国際特許分類】
   H04N 21/426 20110101AFI20160609BHJP
   H04N 21/431 20110101ALI20160609BHJP
   H04N 19/20 20140101ALI20160609BHJP
   H04N 21/436 20110101ALI20160609BHJP
   H04N 19/507 20140101ALI20160609BHJP
【FI】
   H04N21/426
   H04N21/431
   H04N19/20
   H04N21/436
   H04N19/507
【請求項の数】23
【全頁数】16
(21)【出願番号】特願2014-548742(P2014-548742)
(86)(22)【出願日】2011年12月20日
(65)【公表番号】特表2015-505208(P2015-505208A)
(43)【公表日】2015年2月16日
(86)【国際出願番号】US2011065993
(87)【国際公開番号】WO2013095354
(87)【国際公開日】20130627
【審査請求日】2014年7月2日
(73)【特許権者】
【識別番号】591003943
【氏名又は名称】インテル・コーポレーション
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】リップマン、ジャスティン
(72)【発明者】
【氏名】イ、チャオファ、エル.
【審査官】 古川 哲也
(56)【参考文献】
【文献】 特開2009−224847(JP,A)
【文献】 特表2003−513538(JP,A)
【文献】 特開2007−311957(JP,A)
【文献】 特開2009−246415(JP,A)
【文献】 特開2010−237726(JP,A)
【文献】 特開2011−040808(JP,A)
【文献】 国際公開第2009/102010(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 − 21/858
H04N 19/00 − 19/98
(57)【特許請求の範囲】
【請求項1】
デバイスソースによって実行される方法であって、
前記デバイスソースでのグラフィカル表示を、マルチメディアデータストリーム、オペレーティングシステムデスクトップデータストリーム、及びポインティングデバイスデータストリームを含む複数のデータストリームに分解することと、
送信に向けて前記複数のデータストリームを別個に独立して符号化することと、
前記符号化された複数のデータストリームを送信することと、
画像ブロックへの画像変更を検出することと、
前記検出された画像変更を含む更新を送信することと、
を含み、
前記検出することでは、並列化グラフィカル処理ユニットベースのアルゴリズムを用いて2つの連続したフレームを比較し、
前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームについては、それぞれ、オンデマンドで、前記符号化されたデータストリーム、および、前記検出された画像変更を含む更新により送信する、方法。
【請求項2】
前記複数のデータストリームに前記分解することは、前記デバイスソースでのオペレーティングシステムデスクトップマネージャから独立して処理される、請求項1に記載の方法。
【請求項3】
前記送信することは、前記マルチメディアデータストリームにはリアルタイムプロトコルを採用し、前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームには伝送制御プロトコル又はユーザーデータグラムプロトコルを採用する、請求項1または2に記載の方法。
【請求項4】
前記検出することは、前記2つの連続したフレームの個々のセルを比較する前記並列化グラフィカル処理ユニットベースのアルゴリズムを含む、請求項1から3のいずれか一項に記載の方法。
【請求項5】
フレームを、動的な数のピクセルを含むブロックに分割することを更に含み、前記動的な数のピクセルは、一のフレームに合わせるように調整される、請求項1から4のいずれか一項に記載の方法。
【請求項6】
前記検出することは、セル変更が前記並列化グラフィカル処理ユニットベースのアルゴリズムによって検出されると停止される、請求項1から5のいずれか一項に記載の方法。
【請求項7】
1つ又は複数のプロセッサと、
前記1つ又は複数のプロセッサ向けに構成されるメモリと、
を備え、
前記メモリは、
グラフィカル表示を、マルチメディアデータストリーム、オペレーティングシステムデスクトップデータストリーム、及びポインティングデバイスデータストリームを含む複数のデータストリームに分解する更新ユニットであって、並列化グラフィカル処理ユニットベースのアルゴリズムを用いて、2つの連続したフレームを比較することによって画像ブロックへの画像変更を検出する、更新ユニットと、
前記複数のデータストリームを独立して符号化するマルチストリームエンコーダーと、
異なる通信プロトコルを実施して、前記符号化された複数のデータストリームを送信する通信レイヤと、
を備え
前記通信レイヤは、
前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームについては、それぞれ、オンデマンドで、前記符号化されたデータストリーム、および、前記検出された画像変更を含む更新により送信する、デバイスソース。
【請求項8】
前記更新ユニットは、該デバイスソースでのオペレーティングシステムデスクトップマネージャから独立して前記複数のデータストリームの前記分解を処理する、請求項に記載のデバイスソース。
【請求項9】
前記更新ユニットは、前記2つの連続したフレームの個々のセルを比較することによって前記画像変更を検出する、請求項7または8に記載のデバイスソース。
【請求項10】
前記更新ユニットは、セル変更が前記並列化グラフィカル処理ユニットベースのアルゴリズムによって検出されると検出を停止する、請求項7から9のいずれか一項に記載のデバイスソース。
【請求項11】
前記更新ユニットは、フレームを、動的な数のピクセルを含むブロックに分割し、前記動的な数のピクセルは、一のフレームに合わせるように調整される、
請求項から1のいずれか一項に記載のデバイスソース。
【請求項12】
前記通信レイヤは、前記マルチメディアデータストリームにはリアルタイムプロトコルを採用し、前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームには伝送制御プロトコル又はユーザーデータグラムプロトコルを採用する、請求項7から11のいずれか一項に記載のデバイスソース。
【請求項13】
ディスプレイデバイスであって、
1つ又は複数のプロセッサと、
前記1つ又は複数のプロセッサ向けに構成されるメモリと、
を備え、
前記メモリは、
デバイスソースでのグラフィカル表示から分解された、マルチメディアデータストリーム、オペレーティングシステムデスクトップデータストリーム、及びポインティングデバイスデータストリームを含む複数のデータストリームを受信する更新ユニット及びフレームバッファを有し
前記更新ユニット及びフレームバッファは、検出される更新を現在のフレームバッファに統合し、
前記検出される更新は、並列化グラフィカル処理ユニットベースのアルゴリズムを用いて2つの連続したフレームを比較することによって前記デバイスソースにより検出される画像ブロックへの画像変更を含み、
前記更新ユニット及びフレームバッファは、前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームについては、それぞれ、オンデマンドで、データストリーム、および、前記検出される画像変更を含む更新を受信する、ディスプレイデバイス。
【請求項14】
前記更新ユニット及びフレームバッファは、前記デバイスソースでのオペレーティングシステムデスクトップマネージャから独立して処理された前記複数のデータストリームを受信する、請求項1に記載のディスプレイデバイス。
【請求項15】
前記更新ユニット及び前記フレームバッファは、一のフレームに合わせるように調整される動的な数のピクセルを受信する、請求項13または14に記載のディスプレイデバイス。
【請求項16】
前記更新ユニットおよび前記フレームバッファは、オペレーティングシステムデスクトップの指定された領域についての前記検出される更新を優先的に前記現在のフレームバッファに統合する、請求項13から15のいずれか一項に記載のディスプレイデバイス。
【請求項17】
前記デバイスソースで独立して符号化され送信された前記複数のデータストリームを復号化するマルチストリームデコーダーを更に備える、請求項13から16のいずれか一項に記載のディスプレイデバイス。
【請求項18】
前記マルチメディアデータストリームにはリアルタイムプロトコルを採用し、前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームには伝送制御プロトコル又はユーザーデータグラムプロトコルを採用する通信レイヤを更に備える、請求項13から17のいずれか一項に記載のディスプレイデバイス。
【請求項19】
方法をコンピュータに実行させるプログラムであって、
前記方法は、
デバイスソースでのグラフィカル表示を、マルチメディアデータストリーム、オペレーティングシステムデスクトップデータストリーム、及びポインティングデバイスデータストリーム含む複数のデータストリームに分解することと、
前記複数のデータストリームを別個に独立して符号化することと、
前記符号化された複数のデータストリームを送信することと、
表示する画像ブロックへの画像変更を検出することであって、前記画像変更は、2つの連続したフレームを比較することによって検出されることと、
前記検出された画像変更を含む更新を送信することと、
前記検出された画像変更を、ィスプレイデバイスでの現在の表示に統合することと、
含み、
前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームについては、それぞれ、オンデマンドで、前記符号化されたデータストリーム、および、前記検出された画像変更を含む更新により送信する、プログラム。
【請求項20】
記複数のデータストリームに前記分解することは、前記デバイスソースでのオペレーティングシステムデスクトップマネージャから独立して処理される、請求項19に記載のプログラム。
【請求項21】
前記符号化された複数のデータストリームを送信することは、前記マルチメディアデータストリームにはリアルタイムプロトコルを採用し、前記オペレーティングシステムデスクトップデータストリーム及び前記ポインティングデバイスデータストリームには伝送制御プロトコル又はユーザーデータグラムプロトコルを採用する、請求項19または20に記載のプログラム。
【請求項22】
前記検出することは、前記2つの連続したフレームの個々のセルを比較する並列化グラフィカル処理ユニットベースのアルゴリズムを含む、請求項19から21のいずれか一項に記載のプログラム。
【請求項23】
フレームを、動的な数のピクセルを含むブロックに分割することを更に含み、前記動的な数のピクセルは、一のフレームに合わせるように調整される、請求項19から2のいずれか一項に記載のプログラム。
【発明の詳細な説明】
【背景技術】
【0001】
ワイヤレスディスプレイ(WiDi)技術は、パーソナルコンピューター(PC)等のデバイスから別のデバイス(例えば、ワイヤレスディスプレイユニット)へのコンテンツ共有を可能にするビデオ技術の一例である。デバイスからのコンテンツは、ワイヤレスチャネルを介して、テレビ(TV)、別のPCディスプレイ/画面、又は他のWiDi対応デバイス等のワイヤレスディスプレイユニットに送信することができる。一実施態様では、デバイスからのデスクトップ全体が捕捉され、ワイヤレスディスプレイユニットに連続して転送される。連続したフレームバッファをディスプレイユニットに提供するシステムでは、デスクトップ全体が静的である場合、データ送信において冗長性が生じるおそれがある。換言すれば、連続符号化ストリームは、デスクトップ全体が変更されていない場合であっても高いネットワーク利用率をもたらすおそれがある。
【0002】
伝送中、ストリームベースの不可逆符号化メカニズムがノイズアーチファクトをもたらすおそれがあり、このアーチファクトは、オペレーティングシステム(OS)デスクトップグラフィックスを表示するとき、ユーザーの目に見え、不良なユーザー体験を提供するおそれがある。このために、オペレーティングシステム(OS)デスクトップグラフィックスをリモートに表示して、よりよい視覚的体験及び対話体験をユーザーに提供するWiDiの能力を更に強化することができる。この強化により、ネットワークオーバーヘッドを低減することができ、ネットワーク状況が最適化される。
【0003】
詳細な説明は、添付図を参照して記載する。図中、参照符号の最も左側の桁(複数の場合もある)は、その参照符号が最初に現れる図を識別する。同じ符号が、同様の特徴及び構成要素を参照するのに図面全体を通して用いられる。
【図面の簡単な説明】
【0004】
図1】複数のデータストリームが符号化される強化型ワイヤレスディスプレイ(WiDi)を実施するシステムの一例を示す図である。
図2】強化型ワイヤレスディスプレイ(WiDi)複数データストリーム符号化を実施するデバイスソースの一例を示す図である。
図3】複数のデータストリームを受信するディスプレイデバイスの一例を示す図である。
図4】複数のデータストリームへのグラフィカル表示の分解を実施する更新ユニットデバイスを示す図である。
図5】強化型ワイヤレスディスプレイ(WiDi)の様々なレイヤを含むグラフィカル表示を示す図である。
図6】並列化グラフィックス処理ユニット(GPU)ベースのアルゴリズムを用いる強化型ワイヤレスディスプレイ(WiDi)の方法の一例を示すフローチャートである。
【発明を実施するための形態】
【0005】
デバイスソースでのソフトウェアベースの実施態様は、グラフィカル表示を複数のデータストリーム(すなわち、様々なレイヤ)に分解する能力を提供する。複数のデータストリームは、マルチメディアデータストリームと、オペレーティングシステム(OS)デスクトップデータストリームと、マウス(ポインティングデバイス)データストリームとを含むことができる。複数のデータストリームは、デバイスソースによって独立して符号化し送信することができる。同様に、ディスプレイデバイスは、受信した複数のデータストリームを独立して復号化する。さらに、画像変更(例えば、OSデスクトップバックグラウンド)に関する更新は、検出された変更セルに基づく更新の送信に制限することができる。例えば、フレームは、k個のセルに分割することができ、セルはN×M個のピクセルを含む。この例では、変更セル(複数の場合もある)は、並列化グラフィックス処理ユニット(GPU)ベースのアルゴリズムを用いて2つの連続したフレームのセルを比較することによって検出することができる。検出された変更セル(複数の場合もある)は、ディスプレイデバイスの現在のバッファフレームに送信し、統合することができる。したがって、ネットワークの最適化が得られる。
【0006】
以下の詳細な説明では、本発明の完全な理解を提供するために、多くの特定の詳細が記載される。しかしながら、これらの特定の詳細なしでも本発明を実施可能なことが当業者には理解されよう。他の場合、既知の方法、手順、構成要素、及び回路は、本発明を曖昧にしないように詳述されていない。
【0007】
以下の詳細な説明の幾つかの部分は、コンピューターメモリ内のデータビット又は二進デジタル信号に対する演算のアルゴリズム的表現及び象徴的表現に関して提示される。これらのアルゴリズム的な説明及び表現は、データ処理分野の当業者が、他の当業者に仕事の本質を伝えるのに用いる技法とすることができる。
【0008】
別途指定のある場合を除き、以下の考察から明らかなように、本明細書全体を通して、例えば「処理」、「コンピューティング」、「計算」、「特定」等の用語を利用する考察が、コンピューティングシステムのレジスタ及び/又はメモリ内の電子的数量等の物理的数量として表されるデータを操作し、及び/又はコンピューティングシステムのメモリ、レジスタ、他のそのような情報記憶装置、若しくは伝送デバイス内の物理的数量として同様に表される他のデータに変換するコンピューターすなわちコンピューティングシステム又は同様の電子コンピューティングデバイスの動作及び/又はプロセスを指すことが理解される。数量を指定しない("a" or "an")用語は、本明細書に用いられる場合、1つ又は2つ以上として定義される。複数という用語は、本明細書に用いられる場合、2つ又は3つ以上として定義される。別という用語は、本明細書に用いられる場合、少なくとも2つ目又は3つ目以上として定義される。含む(including)及び/又は有するという用語は、本明細書に用いられる場合、含む、備える(comprising)として定義されるが、これに限定されない。結合されるという用語は、本明細書で用いられる場合、任意の所望の形態で、例えば、機械的に、電子的に、デジタル的に、直接、ソフトウェアにより、ハードウェア等により、動作可能に結合されることとして定義される。
【0009】
実施形態は、様々なデバイス及びシステム、例えば、ビデオデバイス、オーディオデバイス、オーディオ−ビデオ(A/V)デバイス、セットトップボックス(STB)、ブルーレイディスク(BD)プレーヤー、BDレコーダー、デジタルビデオディスク(DVD)プレーヤー、高精細(HD)DVDプレーヤー、DVDレコーダー、HD DVDレコーダー、パーソナルビデオレコーダー(PVR)、ブロードキャストHD受信機、ビデオソース、オーディオソース、ビデオシンク、オーディオシンク、ステレオチューナー、ブロードキャスト無線受信機、ディスプレイ、フラットパネルディスプレイ、パーソナルメディアプレーヤー(PMP)、デジタルビデオカメラ(DVC)、デジタルオーディオプレーヤー、スピーカー、オーディオ受信機、オーディオ増幅器、データソース、データシンク、デジタルスチルカメラ(DSC)、パーソナルコンピューター(PC)、デスクトップコンピューター、モバイルコンピューター、ラップトップコンピューター、ノート型コンピューター、タブレットコンピューター、サーバーコンピューター、ハンドヘルドコンピューター、ハンドヘルドデバイス、個人情報端末(PDA)デバイス、ハンドヘルドPDAデバイス、オンボードデバイス、オフボードデバイス、ハイブリッドデバイス、車両デバイス、非車両デバイス、モバイルデバイス又はポータブルデバイス、消費者デバイス、非モバイルデバイス又は非ポータブルデバイス、ワイヤレス通信局、ワイヤレス通信デバイス、ワイヤレスAP、有線ルータ又はワイヤレスルータ、有線モデム又はワイヤレスモデム、有線ネットワーク又はワイヤレスネットワーク、ワイヤレスエリアネットワーク、ワイヤレスビデオエリアネットワーク(WVAN)、ローカルエリアネットワーク(LAN)、WLAN、PAN、WPAN、既存のワイヤレスHDTM及び/又はワイヤレスギガビットアライアンス(WGA)仕様及び/又はそれらの将来のバージョン及び/又は派生物に従って動作するデバイス及び/又はネットワーク、既存のIEEE802.11(IEEE802.11−2007:ワイヤレスLANメディアアクセス制御(MAC)及び物理層(PHY)仕様)規格及び改正、802.11ad(「IEEE802.11規格」)、IEEE802.16規格、及び/又はそれらの将来のバージョン及び/又は派生物に従って動作するデバイス及び/又はネットワーク、上記ネットワークの一部であるユニット及び/又はデバイス、単方向及び/又は双方向無線通信システム、セルラ無線電話通信システム、ワイヤレスディスプレイ(WiDi)デバイス、セルラ電話、ワイヤレス電話、パーソナル通信システム(PCS)デバイス、ワイヤレス通信デバイスを組み込んだPDAデバイス、モバイル又はポータブル全地球測位システム(GPS)デバイス、GPS受信機、GPS送受信機、又はGPSチップを組み込んだデバイス、RFID要素又はRFIDチップを組み込んだデバイス、多入力多出力(MIMO)送受信機又は多入力多出力(MIMO)デバイス、単入力多出力(SIMO)送受信機又は単入力多出力(SIMO)デバイス、多入力単出力(MISO)送受信機又は多入力単出力(MISO)デバイス、1つ又は複数の内部アンテナ及び/又は外部アンテナを有するデバイス、デジタルビデオブロードキャスト(DVB)デバイス又はデジタルビデオブロードキャスト(DVB)システム、マルチ規格無線デバイス又はマルチ規格無線システム、有線ハンドヘルドデバイス又はワイヤレスハンドヘルドデバイス、ワイヤレスアプリケーションプロトコル(WAP)デバイス等と併せて用いることができる。
【0010】
幾つかの実施形態は、1つ又は複数のタイプのワイヤレス通信信号及び/又はワイヤレス通信システム、例えば、無線周波数(RF)、WiFi、WiMax、超広帯域(UWB)等と併せて用いることができる。他の実施形態を様々な他のデバイス、システム、及び/又はネットワークで用いることができる。
【0011】
幾つかの実施形態は、適する距離制限ワイヤレス通信ネットワーク又は短距離ワイヤレス通信ネットワーク、例えば、「ピコネット」、例えばワイヤレスエリアネットワーク、WVAN、WPAN等と併せて用いることができる。
【0012】
システム例 図1は、複数のデータストリームを用いてグラフィカル表示を表現する強化型ワイヤレスディスプレイ(WiDi)を実施するシステム環境の一例100のシステムレベル概観を示す。一実施態様では、グラフィカル表示は、マルチメディアデータストリーミング(例えば、ビデオ及びオーディオ)、オペレーティングシステム(OS)デスクトップデータストリーミング(例えば、デスクトップバックグラウンド)、及びマウス(ポインティングデバイス)データストリーミング等の様々なレイヤに分解される。グラフィカル表示は、WiDiアダプター106を用いてデバイスソース102からディスプレイデバイス104に送信することができる。一実施態様では、デバイスソース102は、ラップトップコンピューター、タブレットコンピューター、スマートフォン等の様々なデバイスを含むことができる。さらに、上述したように、デバイスソース102は他のデバイスを含むとして理解される。
【0013】
デバイスソース102は、WiDiデータ送信を強化するソフトウェアベースの実施態様を含むことができる。例えば、デバイスソース102は、グラフィカル表示の様々なレイヤを独立して符号化し送信するように構成することができる。この例では、デバイスソース102は、マルチメディアデータストリーム、オペレーティングシステム(OS)デスクトップデータストリーム、及びマウス(ポインティングデバイス)データストリームを独立して送信することができる。一実施態様では、エンドユーザーは、様々なレイヤから、ディスプレイデバイス104に表示される1つ又は複数の組み合わせを選択することができる。WiDiアダプター106は、選択されたレイヤを受信することができる。さらに、WiDiアダプター106は、更新を、ディスプレイデバイス104の現在の表示に統合することができる。更新は、ディスプレイデバイス104において送信する必要があるデバイスソース102での画像変更を含むことができる。WiDiアダプター106は、1つ又は複数のワイヤレスチャネル108を通して、送信された様々なレイヤ(すなわち、複数のデータストリーム)を受信することができる。1つ又は複数のワイヤレスチャネル108は、1つ又は複数のIEEE規格下で規定される変調(複数の場合もある)を含むことができる。一実施態様では、HDテレビ(HDTV)等のディスプレイデバイス104は、高精細マルチメディア入力(HDMI(登録商標))接続等の接続110によってWiDiアダプター106に接続することができる。他の実施態様では、HDTVユニット又は他のディスプレイデバイス等のWiDi技術対応デバイスは、WiDi技術を直接組み込むことができる。換言すれば、WiDiアダプター106は、ディスプレイデバイス104に直接一体化することができる。
【0014】
デバイス例 図2は、グラフィカル表示で複数のデータストリームを独立して符号化し送信することによって強化型WiDiを実施するデバイスソースの一例102である。デバイスソース102は1つ又は複数のプロセッサであるプロセッサ200を含む。プロセッサ200は、単一の処理ユニット又は幾つかの処理ユニットとすることができ、それらは全て、単一又は複数の計算ユニット又はマルチコアを含むことができる。1または複数のプロセッサ200は、1つ又は複数のマイクロプロセッサ、マイクロコンピューター、マイクロコントローラー、デジタル信号プロセッサ、中央演算処理装置、状態機械、論理回路、及び/又は動作命令に基づいて信号を操作する任意のデバイスとして実施することができる。能力の中でも特に、1または複数のプロセッサ200は、メモリ202又は他のコンピューター可読記憶媒体に記憶されたコンピューター可読命令又はプロセッサアクセス可能命令をフェッチし実行するように構成することができる。
【0015】
メモリ202は、命令を記憶するコンピューター可読記憶媒体の一例であり、命令は、上述した様々な機能を実行するために1または複数のプロセッサ200によって実行される。例えば、メモリ202は一般に、揮発性メモリ及び不揮発性メモリ(例えば、RAM、ROM等)の両方を含むことができる。メモリ202は、本明細書ではメモリ又はコンピューター可読記憶媒体と呼ぶことができる。メモリ202は、コンピューター可読のプロセッサ実行可能なプログラム命令をコンピュータープログラムコードとして記憶することが可能であり、コンピュータープログラムコードは、本明細書の実施態様において説明される動作及び機能を実行するように構成される特定のマシンとしてプロセッサ(複数の場合もある)200によって実行されてよい。
【0016】
メモリ202は、1つ又は複数のオペレーティングシステム204を含むことができ、1つ又は複数のアプリケーション206を記憶することができる。1または複数のオペレーティングシステム204は、パーソナルコンピューター、オーディオビデオデバイス等のために実施される様々な既知のオペレーティングシステム及び将来のオペレーティングシステムの1つとすることができる。アプリケーション206は、予め構成/インストールされたアプリケーション及びダウンロード可能なアプリケーションを含むことができる。さらに、メモリ202は、インストールされたアプリケーション及びダウンロードされたアプリケーションを記憶するためのデータ208を含むことができる。メモリ202は表示データ210を含み、表示データ210は、視覚的ディスプレイユニットを含み、視覚的ディスプレイユニットは、複数のデータストリームによって定義される画像表現(すなわち、グラフィカル表示)を示すことができる。複数のデータストリームは、更新ユニット212によって独立して処理することができる様々なレイヤを含むことができる。一実施態様では、更新ユニット212は、並列化GPUベースのアルゴリズムを実施して、連続したフレーム間で変更された1または複数のセルを検出することができる。さらに、更新ユニット212はグラフィカル表示を複数のデータストリームに分解することができる。
【0017】
一実施態様では、複数のデータストリームは、WiDiマルチストリームエンコーダー214を用いて送信することができ、このエンコーダー214は、複数のデータストリームに異なるトランスポート技法を用いる。例えば、マルチメディアデータストリームは、H264規格エンコーダーを用いることができ、常時オンストリーミング手法を採用する。他方、オペレーティングシステム(OS)デスクトップアプリケーションデータストリーム及びマウス(ポインティングデバイス)データストリームは、需要に応じて(オンデマンド)送信することができる。換言すれば、複数のデータストリームは、サービス品質(QoS)の異なるレベルを有するように別個に扱われ、システム性能及びネットワーク性能を最適化しながら、全体的なユーザー体験を最大化する。他の実施態様では、複数のデータストリームの処理(例えば、分解)は、デバイスソース102でのオペレーティングシステム(OS)デスクトップマネージャから独立している。
【0018】
一実施態様では、WiDiマルチストリームエンコーダー214は、更新ユニット212によって生成される複数のデータストリームを別個に及び独立して、符号化しパケット化するように構成することができる。符号化されパケット化された複数のデータストリームは、1つ又は複数の通信レイヤ216に送信されてよく、通信レイヤ216において、更なる情報が追加されてよい。レイヤは、リアルタイム通信プロトコル(RTC)/伝送制御プロトコル(TCP)/ユーザーデータグラムプロトコル(UDP)及び媒体アクセス制御(MAC)レイヤを含むことができ、そこで、更なる情報(例えば、ヘッダ及びデータ)が追加される。WiFiドライバーモジュール218は、複数のデータストリームを1または複数の通信レイヤ216から受信することができる。WiFiドライバーモジュール218は、無線220に向けて構成することができる。特に、WiFiドライバーモジュール218は、無線220の送信機222に向けて構成することができる。送信機222はアンテナ224に結合される。デバイスソース102が、無線220以外の他の通信インターフェース(図示せず)を包含可能なことを理解されたい。
【0019】
実施形態は、ソフトウェア実施を提供する。例えば、更新ユニット212は、メモリ202に存在するソフトウェアアプリケーションとして実施することができる。したがって、無線220の変更等のハードウェア実施を回避することができる。或る特定の実施態様では、更新ユニット212及びWiDiマルチストリームエンコーダー214は、同じプラットフォームに存在する。
【0020】
本明細書に記載のデバイスソース102は、幾つかの実施態様に適する単なる一例であり、本明細書に記載のプロセス、構成要素、及び特徴を実施することができる環境、アーキテクチャ、及びフレームワークの使用又は機能の範囲としてのいかなる限定も示唆することを意図されない。
【0021】
概して、図を参照して説明したいかなる機能も、ソフトウェア、ハードウェア(例えば、固定論理回路)、又はこれらの実施態様の組み合わせを用いて実施することができる。プログラムコードは、1つ又は複数のコンピューター可読メモリデバイス又は他のコンピューター可読記憶装置に記憶することができる。したがって、本明細書に記載のプロセス及び構成要素はコンピュータープログラム製品によって実施することができる。
【0022】
上述したように、コンピューター記憶媒体は、コンピューター可読命令、データ構造、プログラムモジュール、又は他のデータ等の情報を記憶する任意の方法又は技術で実施される、揮発性媒体及び不揮発性媒体、並びにリムーバブル媒体及び非リムーバブル媒体を含む。コンピューター記憶媒体は、限定ではなく、RAM、ROM、EEPROM、フラッシュメモリ若しくは他のメモリ技術、CD−ROM、デジタル汎用ディスク(DVD)若しくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置若しくは他の磁気記憶装置、又はコンピューティングデバイスによるアクセスについての情報の記憶に用いることができる任意の他の媒体を含む。
【0023】
WiDiアダプター/WiDi対応デバイス例 図3は、デバイスソース102から送信された複数のデータストリームを受信するディスプレイデバイスの一例104である。一実施態様では、ディスプレイデバイスはWiDiアダプター106を含む(すなわち、ディスプレイデバイス104に一体化される)。ディスプレイデバイス104は1つ又は複数のプロセッサであるプロセッサ302を含むことができる。1または複数のプロセッサ302は、単一のプロセッサユニット又は幾つかの処理ユニットとすることができ、それらは全て、単一又は複数の計算ユニット又はマルチコアを含むことができる。1または複数のプロセッサ302は、1つ又は複数のマイクロプロセッサ、マイクロコンピューター、マイクロコントローラー、デジタル信号プロセッサ、中央演算処理装置、状態機械、論理回路、及び/又は動作命令に基づいて信号を操作する任意のデバイスとして実施することができる。他の能力の中でも特に、1または複数のプロセッサ302は、メモリ304又は他のコンピューター可読記憶媒体に記憶されたコンピューター可読命令又はプロセッサアクセス可能命令をフェッチし実行するように構成することができる。
【0024】
メモリ304は、命令を記憶するコンピューター可読記憶媒体の一例であり、命令は、上述した様々な機能を実行するためにプロセッサ(複数の場合もある)302によって実行される。例えば、メモリ304は一般に、揮発性メモリ及び不揮発性メモリ(例えば、RAM、ROM等)の両方を含むことができる。メモリ304は、本明細書ではメモリ又はコンピューター可読記憶媒体と呼ぶことができる。メモリ304は、コンピューター可読のプロセッサ実行可能なプログラム命令をコンピュータープログラムコードとして記憶することが可能であり、コンピュータープログラムコードは、本明細書で実施態様において説明される動作及び機能を実行するように構成される特定のマシンとしてプロセッサ(複数の場合もある)302によって実行することができる。
【0025】
メモリ304は、1つ又は複数のオペレーティングシステム306を含むことができ、1つ又は複数のアプリケーション308を記憶することができる。オペレーティングシステム(複数の場合もある)306は、パーソナルコンピューター、オーディオビデオデバイス等に実施される様々な既知のオペレーティングシステム及び将来のオペレーティングシステムの1つとすることができる。アプリケーション308は、予め構成/インストールされたアプリケーション及びダウンロード可能なアプリケーションを含むことができる。加えて、メモリ304はデータ310を含むことができる。
【0026】
ディスプレイデバイス104は無線312を含むことができる。無線312は、受信機316に結合される1つ又は複数のアンテナ314を含む。デバイスソース102から送信された、符号化されパケット化された複数のデータストリームは、受信機316によって受信される。受信された複数のデータストリームは、様々な通信レイヤ318を通して渡すことができる。マルチストリームデコーダー320は、複数のデータストリームを処理(復号化)し、復号化された複数のデータストリームを更新ユニット/フレームバッファ322に渡し、表示データ324に表示する。
【0027】
本明細書に記載のコンピューティングデバイスの一例300は、幾つかの実施態様に適する単なる一例であり、本明細書に記載のプロセス、構成要素、及び特徴を実施することができる環境、アーキテクチャ、及びフレームワークの使用又は機能の範囲としてのいかなる限定も示唆することを意図されない。
【0028】
概して、図を参照して説明したいかなる機能も、ソフトウェア、ハードウェア(例えば、固定論理回路)、又はこれらの実施態様の組み合わせを用いて実施することができる。プログラムコードは、1つ又は複数のコンピューター可読メモリデバイス又は他のコンピューター可読記憶装置に記憶することができる。したがって、本明細書に記載のプロセス及び構成要素はコンピュータープログラム製品によって実施することができる。
【0029】
上述したように、コンピューター記憶媒体は、コンピューター可読命令、データ構造、プログラムモジュール、又は他のデータ等の情報を記憶する任意の方法又は技術で実施される、揮発性媒体及び不揮発性媒体、並びにリムーバブル媒体及び非リムーバブル媒体を含む。コンピューター記憶媒体は、限定ではなく、RAM、ROM、EEPROM、フラッシュメモリ若しくは他のメモリ技術、CD−ROM、デジタル汎用ディスク(DVD)若しくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置若しくは他の磁気記憶装置、又はコンピューティングデバイスによるアクセスについての情報の記憶に用いることができる任意の他の媒体を含む。
【0030】
更新ユニットデバイス例 図4は、更新ユニットデバイスを示す図を示す。一実施態様では、更新ユニット212は、表示データ210におけるグラフィカル表示を様々なレイヤ(すなわち、複数のデータストリーム)に分解するように構成することができる。複数のデータストリームは、マルチメディアデータストリーム400(例えば、ビデオ及びオーディオ)と、オペレーティングシステム(OS)デスクトップデータストリーム402(例えば、デスクトップバックグラウンド)と、マウス(ポインティングデバイス)データストリーム404とを含むことができる。複数のデータストリームの1つ又は複数の組み合わせをディスプレイデバイス104に送信することができる。例えば、ユーザーは、ディスプレイデバイス104に表示するマルチメディアデータストリーム400を選択する。この例では、オペレーティングシステム(OS)デスクトップデータストリーム402及びマウス(ポインティングデバイス)データストリーム404の送信は一時中断される。オペレーティングシステム(OS)デスクトップデータストリーム402及びマウスデータストリーム404を送信しないことにより、ネットワーク負荷を最適化することができ、デバイスソース102及びディスプレイデバイス104での消費電力を低減することができる。
【0031】
別の場合、ユーザーは、オペレーティングシステム(OS)デスクトップデータストリーム402及びマウス(ポインティングデバイス)データストリーム404を、ディスプレイデバイス104でのマルチメディアデータストリーム400と共に追加することを選ぶことができる。この実施態様では、表示データ210における画像変更がない(例えば、静的なオペレーティングシステム(OS)デスクトップ)にもかかわらず、オペレーティングシステム(OS)データストリーム402及びマウス(ポインティングデバイス)データストリーム404を連続して送信することは、高いネットワーク利用率をもたらすおそれがある。このために、更新ユニット212は、画像表示の部分的な更新又は部分的な変更を送信して、データ処理及び消費電力を節減するように構成することができる。一実施態様では、表示データ210において特定のグラフィカル表示画像を定義するフレームは、N×Mピクセルサイズのk個のセルに分割される。通常、フレームバッファ406に記憶された2つの連続したフレームは、k個のセルによってカバーされる合計エリアを含まないことがある部分的な更新又は変更を含むことがある。換言すれば、k個のセルの一部は、部分的な更新をカバーすることがある。部分的な更新を特定するために、2つの記憶された連続フレーム(例えば、現在のフレームと以前のフレーム)の間のk個のセルは、変更された特定のセル(複数の場合もある)を検出することによって比較することができる。変更されたセルの検出は、GPU408に構成される並列化GPUベースのアルゴリズムを用いて実施することができる。
【0032】
一実施態様では、GPU408は、連続したフレーム間での並列比較を実施するn個のコア(図示せず)を含むことができる。例えば、k個のセルのフレームを比較するGPU408のn個のコアを所与として、k個全てのセルが比較されるまで、比較アルゴリズムのn個のインスタンスが実行される。GPU408は追跡アレイ(図示せず)を実施して、変更されたセル(複数の場合もある)を検出することができる。例えば、追跡アレイは、変更が検出される都度、ビット1に更新される。他の実施態様では、GPU408は、変更が検出されると比較を終了するように構成することができる。
【0033】
一実施態様では、GPU408は、動的なN×Mピクセル寸法を処理するように構成することができる。動的なN×Mピクセル寸法は、特定の単一のフレームに合うように調整することができ、それにより、より原子的な更新を可能にするとともに、破損フレーム又は損失フレームの影響を制限する。他の実施態様では、GPU408は、ユーザーが画面を見ることができる方法を所与として、デスクトップオペレーティングシステム(OS)画面の特定の領域の更新に重要性を割り当てるように構成することができる。例えば、OSデスクトップデータストリーム400によって定義される特定の領域は、デスクトップオペレーティングシステム(OS)画面の中央部分を含むことができる。この例では、GPU408は、デスクトップオペレーティングシステム(OS)画面の中央部分におけるセル変更を、領域の残りの部分(例えば、デスクトップオペレーティングシステム(OS)画面の境界線)を検出する前にまず検出するように構成することができる。
【0034】
グラフィカル表示例 図5は、ディスプレイデバイス104に表示することができる様々なレイヤを示すグラフィカル表示の一例500である。一実施態様では、表示データ210は、ビデオ400、デスクトップオペレーティングシステム(OS)アプリケーション402、及びマウス(ポインティングデバイス)404等の3つのレイヤに分解することができる。上述したように、ユーザーは、ディスプレイデバイス104に表示する、レイヤの1つ又は複数の組み合わせを選択することができる。例えば、ビデオ400を、ディスプレイデバイス104でのビデオストリーミングに選択することができる。この例では、ビデオ400は、捕捉され(ビデオ捕捉502により)、符号化され(WiDiマルチストリームエンコーダー214により)、送信機222によって独立してディスプレイデバイス104に送信される。一実施態様では、ビデオ400の符号化は、HDTVブロードキャストアプリケーション等のデジタル圧縮ビデオの全ての形態をカバーするH264規格ハードウェアベースの符号化(例えば、H264ビデオフォーマット)を用いることができる。この実施態様では、ビデオ400は、送信機222を通してストリーミングされる場合、RTPをトランスポートプロトコルとして用いることができる。ビデオ400に必要なコード変換及びQOSは、デスクトップオペレーティングシステム(OS)アプリケーション402のディスプレイから間接的に変更し、符号化し、提示することができ、ビデオ400から独立してストリーミングされる。
【0035】
デスクトップオペレーティングシステム(OS)アプリケーション402は、オペレーティングシステム(OS)デスクトップデータストリームを含むことができ、このストリームは、まずグラフィカル表示を、N×Mピクセル(例えば、N×Mピクセル)を含む格子構造に分割することによって符号化される。N×Mピクセルは、表示コンテンツに基づいて動的に調整することができる。小型フレームでのワイヤレス競合を低減し、圧縮を最大化するために、N及びMの値は、ネットワークの状況を所与として最適な性能に向けて動的に調整されるように選ぶことができる。一実施態様では、デスクトップオペレーティングシステム(OS)アプリケーション402は、需要に応じて、捕捉され(デスクトップ及びアプリケーション捕捉504により)、送信機222を通してディスプレイデバイス104に移送される。換言すれば、定義可能なQOS及びフレーム更新率を所与として、変更されたスクリーンの指定されたセルを送信することができ、QOS及びフレーム更新率はビデオ400から独立して指定することができる。
【0036】
一実施態様では、マウス(ポインティングデバイス)404は、ユーザーのマウス(ポインティングデバイス)の移動を含むことができ、この移動はデカルト座標として送信される(送信機222により)。この実施態様では、移動は、マウス移動捕捉506によって捕捉することができる。ネットワークオーバーヘッドを低減し、性能を上げるために(小型フレームサイズ及びワイヤレス競合の増大に伴う問題を所与として)、マウス(ポインティングデバイス)座標点を含むデータフレームは、所望の解像度及び所望のユーザー体験又はQOSを所与として送信することができる。点間の補間を用いて、TCPではなくUDPが用いられる場合のフレーム損失を所与として、信頼性向上のオーバーヘッドを低減することができる。マウス移動捕捉506、デスクトップ及びアプリケーション捕捉504、並びにビデオ捕捉502は全て、更新ユニット212によって実施することができる。
【0037】
プロセス例 図6は、ディスプレイデバイスへの独立した複数のデータストリーミングを含む強化型WiDiのプロセスの一例600を示す。方法が説明される順序は、限定として解釈される意図はなく、説明される方法ブロックのうちの任意の数の方法ブロックを任意の順序で組み合わせて、この方法又は代替の方法を実施することができる。さらに、本明細書に記載の主題の趣旨及び範囲から逸脱せずに、個々のブロックを方法から削除することができる。さらに、方法は、本発明の範囲から逸脱せずに、任意の適するハードウェア、ソフトウェア、ファームウェア、又はそれらの組み合わせで実施することができる。
【0038】
ブロック602において、グラフィカル表示の分解が実行される。一実施態様では、表示データ(例えば、表示データ210)でのグラフィカル表示は、複数のデータストリーム(すなわち、様々なレイヤ)を含むように分解される。複数のデータストリームは、マルチメディアデータストリーム、オペレーティングシステム(OS)デスクトップデータストリーム、及びマウス(ポインティングデバイス)データストリームを含むことができる。
【0039】
ブロック604において、送信に向けて、複数のデータストリームのそれぞれは、独立して符号化される。一実施態様では、WiDiマルチストリームエンコーダー(例えば、WiDiマルチストリームエンコーダー214)は、複数のデータストリームを独立して符号化することができる。例えば、マルチメディアデータストリームは、オペレーティングシステム(OS)デスクトップデータストリーム及びマウス(ポインティングデバイス)データストリームとは別個に符号化される。
【0040】
ブロック606において、符号化された複数のデータストリームの送信が実行される。一実施態様では、複数のデータストリームは通信レイヤ(例えば、通信レイヤ(複数の場合もある)216)を通して送信される。例えば、マルチメディアデータストリームは、H264規格ハードウェア及びRTPプロトコルを用いて送信される。他方、オペレーティングシステム(OS)デスクトップデータストリーム及びマウス(ポインティングデバイス)データストリームは、需要に応じて、又はUDP/TCPプロトコルを用いて送信される。
【0041】
ブロック608において、画像ブロックへの画像変更の検出が実行される。一実施態様では、画像は、k個のセル(すなわち、ブロック)に分割されるフレームを含む。k個のセルは合計でN×M個のピクセルを含むことができる。2つの連続したフレーム間のk個のブロックは、更新ユニット構成要素(例えば、更新ユニット212)に含まれる並列化GPUベースのアルゴリズムを用いて比較し、画像変更を定義するセル(複数の場合もある)の厳密な位置を特定することができる。検出されたセルは、デバイスソース(例えば、デバイスソース102)で次に送信される更新を含むことができる。別の実施態様では、N×Mピクセルは、ネットワークの状況に従って動的に調整することができる。
【0042】
ブロック610において、検出された画像変更を含む更新の送信が実行される。一実施態様では、N×Mピクセルは、画像変更(すなわち、変更されたセル)が単一のデータフレームに嵌まり、より原子的な更新を可能にするとともに破損フレーム又は損失フレームの影響を制限する(to limit)ことを保証するように動的に調整される。このために、送信中、TCPに加えてUDPを実施することができ、その理由は、単一フレームの損失が全体の画面更新に大きく影響しないためである。他の実施態様では、原子的な更新は、ユーザーが画面を見ることができる方法を所与として、重要性を特定の領域(例えば、デスクトップオペレーティングシステム(OS)画面)の更新に割り当てることによって実施することができる。例えば、ユーザーは、画面の中央領域に、デスクトップオペレーティングシステム(OS)画面の周縁領域又は外側領域(例えば、デスクトップオペレーティングシステム(OS)画面の下にあるクロック)よりも頻繁に気付く傾向を有する。このために、セル変更が更新ユニット212によって検出される場合、最も目に付くポイントを含む中央領域を、より高い優先度で送信することができる。
【0043】
ブロック612において、検出された画像変更をディスプレイデバイスの現在の表示に統合することが実行される。一実施態様では、検出された更新はマルチストリームデコーダー構成要素(例えば、マルチストリームデコーダー322)によって受信される。検出された更新は、更新を、更新ユニット/フレームバッファ構成要素322に記憶された現在のバッファフレームに一体化することによって統合することができる。統合された更新は、デバイスソース104の表示データ324に表示することができる。
【0044】
本発明による実現について、特定の実施形態の文脈の中で説明した。これらの実施形態は例示を意味し、限定を意味しない。多くの変形、変更、追加、及び改善が可能である。したがって、単一の事例として本明細書に記載される構成要素に、複数の事例を提供することができる。様々な構成要素、動作、及びデータストア間の境界はいくらか任意的なものであり、特定の動作が、特定の例示的な構成の文脈の中で示される。機能の他の割り振りが考えられ、以下の特許請求の範囲の範囲内にあることができる。最後に、様々な構成で離散した構成要素として提示される構造及び機能は、組み合わせられた構造又は構成要素として実施することも可能である。これら及び他の変形、変更、追加、及び改善は、以下の特許請求の範囲において規定される本発明の範囲内にあることができる。
図1
図2
図3
図4
図5
図6