JP2005129068A - コンピューティングデバイスからコンテンツをプロジェクトするためのシステムおよび方法 - Google Patents

コンピューティングデバイスからコンテンツをプロジェクトするためのシステムおよび方法 Download PDF

Info

Publication number
JP2005129068A
JP2005129068A JP2004310059A JP2004310059A JP2005129068A JP 2005129068 A JP2005129068 A JP 2005129068A JP 2004310059 A JP2004310059 A JP 2004310059A JP 2004310059 A JP2004310059 A JP 2004310059A JP 2005129068 A JP2005129068 A JP 2005129068A
Authority
JP
Japan
Prior art keywords
content
display device
computing device
alternative display
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004310059A
Other languages
English (en)
Inventor
Andrew J Fuller
ジェイ.フラー アンドルー
Ravipal S Soin
エス.ソワン ラビパル
Ronald O Zink
オー.ツィンク ロナルド
Todd R Manion
アール.マニオン トッド
William Mak
マーク ウィリアム
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2005129068A publication Critical patent/JP2005129068A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

【課題】 無線により代替表示デバイスがコンピューティングデバイスからコンテンツを受信できるような、コンピューティングデバイスからコンテンツをプロジェクトするためのシステムおよび方法を提供する。
【解決手段】 ケーブル経由でコンピューティングデバイスを物理的に接続する負担をユーザから取り除くシステムおよび方法を実施する。表示デバイスに送信されるコンテンツは、付近にある他の複数のコンピューティングデバイスのうちいくつかのコンピューティングデバイスから同時にまたは別々に表示される。汎用のメカニズムおよび対応するユーザインターフェースがコンピューティングデバイスとして使用される。このコンピューティングデバイスがコンテンツの配信先であるデバイスを発見し、配信を受け入れる。また、このコンピューティングデバイスがコンテンツの伝送を開始する。
【選択図】 図3

Description

本発明は、コンピューティングデバイスからコンテンツをプロジェクトするためのシステムおよび方法に関するものである。更に詳述すると、本発明は例えば、コンピューティングデバイスから、プロジェクタなど代替えのディスプレイにコンテンツをワイヤレス方式でプロジェクトすること、を可能にするシステム、方法、およびユーザインターフェースに関する。
コンテンツをサードパーティデバイスに送信して操作または描画を行うために、パーソナルコンピュータおよびラップトップコンピュータ、タブレットコンピュータ、ノートブックコンピュータ、サブノートコンピュータ、およびハンドヘルドコンピューティングデバイスなどの携帯型/モバイルコンピューティングデバイス、さらには携帯型/モバイルコンピューティングデバイスの他の現在の変更形態および未来の変更形態が、ときどき使用される。本明細書では、このような携帯型またはモバイルコンピューティングデバイスは、単に「モバイルコンピューティングデバイス」または「モバイルデバイス」と呼ばれ、限定されることはない。例えば、モバイルデバイスは、会議などの状況で、ディスプレイ、例えば大型表示面などにプレゼンテーションを表示するために、例えば会議環境においてプロジェクタまたはモニタに表示するために使用されることができる。現在のところ、このような状況が発生した場合、モバイルコンピュータを使用してプレゼンテーションを行うユーザは、携帯型/モバイルコンピュータをケーブル経由で物理的にプロジェクタまたはプロジェクタをコントロールする中間電子システムに接続する。しかし、ラップトップユーザは、会議室でプレゼンテーションを行いたい場合、プロジェクタコントロール装置近くに陣取り、VGA、場合によってはプレゼンテーション用のオーディオケーブルを入れ替えなければならない。コードは、通常、長さが足りないため、人々はプレゼンテーションのときにラップトップの電源プラグを差し込めるコンセントに十分近い位置にいる人を求めてあちこち移動するので椅子取りゲームが生じる。その後、ユーザは、新たな発表者がプロジェクタディスプレイのコントロール権を奪う毎にスクリーン解像度および/またはオーディオ設定を調整しなければならない。さらに、ユーザは、理想的には、自分の表示を会議室のプロジェクタだけでなく、会議室の様々な出席者のラップトップにもプロジェクトすることを望む。
しかし、ケーブルを物理的に接続する必要があるということは、様々な理由から望ましいことではない。まず、モバイルコンピューティングデバイスを使用するユーザは、モバイルコンピューティングデバイスがモバイルコンピューティングデバイスを接続できること、およびモバイルコンピューティングデバイスを接続する方法も知っている、つまり、そのモバイルコンピューティングデバイスがプロジェクタのケーブルを受け入れるためのコネクタまたはポートを備えていること、さらにそのような接続+あいまいなキーストロークの何らかの組合せ(例えば、ファンクションキー+F5キー)で携帯型またはモバイルコンピューティングデバイスの出力をモバイルコンピューティングデバイスの通常のディスプレイからポートに切り替えることを知っている必要がある。第2に、1つまたは複数の物理的ステップが計算プロセスに持ち込まれるといつでも、プロセスの完了に要する時間が長引く。例えば、ユーザはモバイルデバイスをケーブルのところに持ってきて、ケーブルを接続し、簡単に外れないように接続をしっかりと固定しなければならない。さらに、オスコネクタおよびメスコネクタのコンポーネントが物理的コンポーネントである限り、誤用および通常の摩耗や裂けが生じる。例えば、コネクタのピンは折れ曲がったり、損傷したり、金属疲労が生じるといったことが多々あり、そうなったら、コネクタコンポーネントは、オスであろうとメスであろう、もはや正常には機能し得ない。
さらに、最終的にプロジェクタに送られるコンテンツ/データは、会議出席者のコンピュータに同時に表示されることはできない。無線技術は市場において急速に勢いを増しているが、今のところ、プロジェクタなどのディスプレイにより無線データを受信するための汎用メカニズムはない。さらに、モバイルデバイスが無線で、コンテンツをプロジェクタなどのディスプレイに送信するための汎用メカニズムもない。さらに、サードパーティのコンピューティングデバイスがコンテンツを受信するための汎用メカニズムもない。
そのため、当業では、無線技術をプロジェクタに付加し、モバイルユーザ向けにアクセスを容易にし、複数のモバイルユーザを共同会議のため同じルームに呼び集めて、有線によるソルーションだと実用的でない継ぎ目のない接続を可能にする必要がある。さらに、当業では、ケーブル配線にかかわる諸問題を解消することで、距離が長くなっても信号の劣化を起こすことなく、プロジェクタの設置を容易にし、整然と配置できるようにする必要がある。さらに、当業では、例えば人々がそのモバイルデバイスからプレゼンテーションを行う場合、複数のモバイルデバイスソース(mobile device sources)を切り替える必要がある。またさらに、ユーザが使用可能な無線プロジェクタまたは他のコンピュータを見つけ、設定を変更または有効にし、指定されたコンテンツをそれらに接続することができるようにするメカニズムおよび対応するユーザインターフェースを実現することが望ましいであろう。同様に、受信側では、他のコンピュータのユーザがソースモバイルコンピュータ(source mobile computer)からの「プロジェクトされた(projected)」コンテンツ/データを受け付けるためのメカニズムおよび対応するユーザインターフェースを備えると望ましいであろう。
当業の上で指摘された欠点を鑑みて、本発明では、代替表示デバイスがコンピューティングデバイスから無線によりコンテンツを受信できるようにし、ユーザがケーブルを介してコンピューティングデバイスを物理的に接続するという負担を解消するシステムおよび方法を提示する。
本発明によれば、代替表示デバイスがコンピューティングデバイスから無線によりコンテンツを受信できる。これにより、ユーザがケーブルを介してコンピューティングデバイスを物理的に接続するという負担を解消する。
本発明の他の態様では、表示デバイスに送信されることができるコンテンツは、また、付近にある他の複数のコンピューティングデバイスのうちからいくつかのコンピューティングデバイスに同時にまたは別々に表示されることもできる。様々な実施形態において、本発明は、適切な場合にコンテンツの配信を受け付け、コンテンツの伝送を開始するため、コンピューティングデバイスがコンテンツの配信先とすることができるデバイスの発見を行うための汎用メカニズムおよび対応するユーザインターフェースを含む。
本発明の他の利点および特徴については、以下において詳細に説明する。
本発明を適用した実施形態として、無線によりコンテンツをプロジェクトするためのシステムおよび方法について、図面を参照しながら説明していく。
概要
本発明は、プロジェクタまたは大型表示モニタなどの表示デバイスがコンピューティングデバイスからコンテンツを無線で受け取るようにできるシステムおよび方法を対象としており、これによりユーザはケーブルを介してコンピューティングデバイスを物理的に接続する負担を免れる。他の態様では、表示デバイスに送信されることができるコンテンツは、また、付近にある他の複数のコンピューティングデバイスのうちからいくつかのコンピューティングデバイスに同時にまたは別々に表示されることもできる。様々な実施形態において、プロジェクタは無線機能が装備され、それによりコンピューティングデバイスは無線で順番にプロジェクタへ、例えば共同会議および会議プレゼンテーションに役立つコンテンツを送信することができる。ケーブル配線の問題は解消されるため、プロジェクタは設置しやすくなり、距離が著しくあってもコンテンツの劣化はなく、また複数のコンピューティングデバイスソース間の切り換えもない。したがって、コンテンツの提示者は、無線技術の信号送受信機能の範囲内でより機動性を高められ、しかも「プロジェクタの近く」または「壁コンセントの近く」などの物理的位置に結びつけられない。
定義
以下の定義は、本明細書で使用される1つまたは複数の用語を考慮する際に考慮されなければならないが、当業者によって理解されるように、用語のより広い意味を限定することを意図するものではない。
Wi−Fi(無線忠実度(Wireless Fidelity)):Wi−Fi技術では、無線技術を使用してネットワーキングを実現する。Wi−Fiネットワークは、無認可の2.4〜5GHz帯で動作し、データを11Mbpsで転送する能力があるが、通常、実際のデータスループットは7Mbpsである。このため、パフォーマンスは、多くのオフィスで使用されている基本的な10Base−T有線Ethernet(登録商標)ネットワークに類似している。本発明による他の表示デバイスとしては、プロジェクタおよびコンピュータ業界における無線通信の最も一般的な形態である、Wi−Fi802.11b技術によるものがある。
ピアツーピア(Peer-to-Peer)(アドホック(Ad Hoc)):1つまたは複数のコンピュータが、同じ無線機能を備えるプロジェクタを共有することができる無線構成。ピアツーピアとは、それぞれのプロジェクタのユーザが同じ機能を利用し、それぞれのユーザがプロジェクタとの(または理論的には互いに)通信セッションを開始できることを意味している。アドホックとは、「これのために(for this)」または「この目的専用の(for this purpose only)」を意味するラテン語であり、プレゼンテーションルームを出入りするモバイル無線コンピュータの場合のように、一時的なまたは自然発生的な配置を意味する。この配置ではすべてのユーザが平等なアクセスを行うことができ、したがって共同会議または共有プレゼンテーションが可能である。
代替表示デバイス(alternate display device)、またはプロジェクタデバイス:プロジェクタデバイスでは、ターミナルサービス(Terminal Service)とUPnPの両方を使用する。このデバイスは、MRMデバイスがデバイスをコントロールし、ターミナルサービスを介して接続を確立するために使用する方法を公開する。これは、実際のプロジェクタまたはプロジェクタにフックされているラップトップなどの他のデバイスとすることもできる。
RA:リモートアシスタンス(Remote Assistance)。
ターミナルサービス(TS):ターミナルサービス(Terminal Service)は、ユーザのスクリーンを「ストリーミング(stream)」するために使用されるプロトコルを受け持つ。
UPnPデバイスホストおよびコントロールポイント:デバイスの発見にユニバーサルプラグ&プレイ(UPnP)プロトコルが使用される。さらに、デバイスは、UPnPデバイスホストサービス内でホストされる。
RDP Salem層(RDP Salem Layer):RDP Salem層では、接続の確立に使用されるリモートアシスタンス(Remote Assistance)「チケット(ticket)」を認識する。
TS用のSalem層:Salem層は、リモートアシスタンスの現在のチケット生成層(ticket generation layer)である。
ネットワーク接続および分散環境の例
当業者であれば、本発明は、コンピュータまたは他のクライアントまたはサーバデバイスとの接続で実施されることができ、これらは、コンピュータネットワークの一部として、または分散コンピューティング環境内に配備されることができることは明白であろう。この点に関して、本発明は任意の個数メモリまたは記憶装置ユニットを備える任意のコンピュータシステムまたは環境、および任意の個数の記憶装置ユニットまたはボリュームにわたって実行される任意の個数のアプリケーションおよびプロセスに関係し、これらは、本発明によるコンテンツの無線伝送に関して使用されることができる。本発明は、サーバコンピュータおよびクライアントコンピュータがリモートまたはローカルの記憶装置を備えるネットワーク環境または分散コンピューティング環境内に配備されている環境に適用することができる。本発明は、さらに、リモートまたはローカルサービスに関して情報を収集し、受信し、送信するためのプログラミング言語機能、インタプリタおよび実行機能を備えるスタンドアロンのコンピューティングデバイスにも適用されることができる。デジタル媒体のネットワークソースは今まで以上増え続けているが、本発明は、特に、ネットワークまたは分散コンピューティング環境で動作するコンピューティングデバイスに関係し、したがって本発明による伝送手法はこれらの環境において非常に効果的に適用されることができる。
分散コンピューティング(distributed computing)では、コンピューティングデバイスとシステムとの間のデータ交換によりコンピュータリソースおよびサービスの共有を実現する。これらのリソースおよびサービスは、情報の交換、キャッシュ格納、およびファイルのディスク格納を含む。分散コンピューティングではネットワーク接続を利用しているため、クライアントは自らの集団的パワーと記憶装置を活用して企業全体を利することができる。この点に関して、様々なデバイスに、本発明を利用し無線でコンテンツをプロジェクトする機能と関わりのあるアプリケーション、オブジェクトまたはリソースが考えられる。
図2Aは、ネットワーク接続または分散コンピューティング環境の概略図である。分散コンピューティング環境は、コンピューティングオブジェクト(computing objects)10a、10bなど、およびコンピューティングオブジェクトまたはデバイス110a、110b、110cなどを含む。これらのオブジェクトは、プログラム、メソッド、データストア、プログラム可能ロジックなどを備えることができる。オブジェクトは、PDA、オーディオ/ビデオデバイス、MP3プレーヤ、パーソナルコンピュータなどの同じまたは異なる複数のデバイスの一部を含むことができる。それぞれのオブジェクトは、通信ネットワーク14を使用して他のオブジェクトと通信することができる。このネットワークは、それ自体、図2Aのシステムにサービスを提供する他のコンピューティングオブジェクトおよびコンピューティングデバイスを含むことができ、それ自体、複数の相互接続されたネットワークを代表することができる。本発明の他の態様によれば、オブジェクト10a、10bなど、または110a、110b、110cなどはそれぞれ、APIなどのインターフェースを使用することが可能なアプリケーション、または他のオブジェクトソフトウェア、ファームウェア、および/またはハードウェアを含み、本発明による無線コンテンツプロジェクションプロセスを要求または使用することができる。
さらに、110cなどのオブジェクトは、他のコンピューティングデバイス10a、10bなどまたは110a、110bなどでホストされることができることも十分理解できるであろう。したがって、提示されている物理環境は接続されているデバイスをコンピュータとして例示することができるが、そのような例示は単に例であって、物理環境はそれとは別に、PDA、テレビ、MP3プレーヤなどの様々なデジタルデバイス、インターフェース、COMオブジェクトなどのソフトウェアオブジェクトまたは媒体利用と関連して使用されることができるデバイスを含むものとして示されるか、または説明されることができる。
分散コンピューティング環境をサポートする様々なシステム、コンポーネントおよびネットワーク構成がある。例えば、コンピューティングシステムは、ローカルネットワークまたは広域分散ネットワークにより、有線または無線システムで1つに接続されることが可能である。現在、ネットワークの多くが、広域分散コンピューティングのためのインフラストラクチャを備え、異なる多数のネットワークを包含するインターネットに結合されている。本発明による無線コンテンツプロジェクションの実現に付随して行われる通信の例に対しどのようなインフラストラクチャでも使用されることができる。
ホームネットワーキング環境では、電源供給ライン、データ(無線および有線の両方)、音声(例えば電話)、および娯楽媒体など、独自のプロトコルをそれぞれサポートすることができる少なくとも4つの異なるネットワークトランスポート媒体がある。照明スイッチおよび照明器具などのほとんどの家庭用コントロールデバイスでは、接続に電源供給ラインを使用できる。データサービスは、ブロードバンド(例えば、DSLまたはケーブルモデム)として家庭に入り、無線(例えば、HomeRFまたは802.11B)または有線(例えば、HomePNA、Cat 5、Ethernet(登録商標)、さらには電源供給ライン)による接続を使用して家庭内でアクセス可能である。音声トラフィックは、有線(例えば、Cat 3)または無線(例えば、携帯電話)として家庭に入り、Cat 3配線を利用して家庭内に分配されることができる。娯楽媒体、つまりその他のグラフィックデータは、衛星またはケーブルを経由して家庭に入ることができ、通常、同軸ケーブルを使用して家庭内に分配される。IEEE 1394およびDVIは、さらに、媒体デバイスのクラスタ用のデジタル相互接続でもある。これらのネットワーク環境およびプロトコル標準として存在することができる他のネットワーク環境はすべて、相互接続されることで、インターネットを使用して外部世界に接続されることができるイントラネットなどのネットワークを形成することができる。つまり、データの格納および伝送に関して様々な異種のソースが存在し、その結果、先へ進むとコンピューティングデバイスは、本発明により無線コンテンツ伝送メカニズムを要求または使用する、プログラムオブジェクトに付随してアクセスまたは使用されるデータなどのデータを共有する手段を必要とする。
インターネットは、一般に、コンピュータネットワーキングの分野においてよく知られている、TCP/IPプロトコルスイートを使用するネットワークおよびゲートウェイの集合体を指す。TCP/IPは、「Transmission Control Protocol/Internet Protocol(伝送コントロールプロトコル/インターネットプロトコル)」の頭字語である。インターネットは、ユーザがネットワークを経由して情報を対話操作し、共有することを可能にするネットワーキングプロトコルを実行するコンピュータにより相互接続された地理的に分散されているリモートコンピュータネットワークの一システムとして説明されることができる。このような広く分散している情報の共有であることから、インターネットなどのリモートネットワークはオープンシステムへとここまでは一般的に発展しており、そのため開発者たちは、本質的に制限なしで、専用のオペレーションまたはサービスを実行するソフトウェアプリケーションを設計することができる。
したがって、ネットワークインフラストラクチャは、クライアント/サーバ、ピアツーピア、またはハイブリッドアーキテクチャなどの多数のネットワークトポロジを可能にしている。「クライアント」は、関係しない他のクラスまたはグループのサービスを使用するクラスまたはグループのメンバである。したがって、計算実行時には、クライアントは、他のプログラムにより提供されるサービスを要求する、1つのプロセスである、つまり大まかにいって一組の命令である。クライアントプロセスでは、他のプログラムまたはサービス自体に関する作業詳細をいっさい「知る(know)」ことなく要求されたサービスを利用する。クライアント/サーバアーキテクチャ、特にネットワーク接続システムでは、クライアントは、通常、他のコンピュータ、例えば、サーバにより提供される共有ネットワークリソースにアクセスするコンピュータである。図2Aの例では、コンピュータ110a、110bなどは、クライアントとしてみなされることができ、コンピュータ10a、10bなどは、サーバ10a、10bなどがクライアントコンピュータ110a、110bなどにおいてその後複製されるデータを保持するサーバとしてみなされることができるが、どのようなコンピュータであっても状況に応じてクライアントサーバ、またはその両方としてみなされることができる。例えば、コンピュータ110aは、ラップトップとし、コンピューティングデバイス10a、10bなどは、リモートメディアデバイスまたは代替表示デバイスとすることができる。これらのコンピューティングデバイスはいずれも、本発明によりコンテンツを無線で送信/受信することと関連することができるデータを処理しているか、またはサービスまたはタスクを要求している可能性がある。
サーバは、通常、インターネットなどリモートまたはローカルネットワーク経由でアクセス可能なリモートコンピュータシステムである。クライアントプロセスは、第1のコンピュータシステム内でアクティブであり、サーバプロセスは、第2のコンピュータシステム内でアクティブであって、互いに通信媒体を介して通信しあうという方法で、分散機能を実現し、複数のクライアントがサーバの情報収集機能を利用できるようにする。本発明に従って利用されるソフトウェアオブジェクトは、複数のコンピューティングデバイスまたはオブジェクトにまたがって分散されることができる。
クライアントおよびサーバは、プロトコル層によって提供される機能を使用して互いに通信する。例えば、HyperText Transfer Protocol(HTTP)はWorld Wide Web(WWW)、つまり「Web」と共に使用される共通プロトコルである。例えば、リモートデスクトッププロトコル(RDP(Remote Desktop Protocol))は、リモートコンピューティングに使用される共通プロトコルである。通常、インターネットプロトコル(IP)アドレスなどのコンピュータネットワークアドレスまたはURL(Universal Resource Locator)などの他の参照は、サーバまたはクライアントコンピュータを互いに識別させるために使用されることができる。ネットワークアドレスは、URLアドレスと呼ばれることができる。通信は、通信媒体を介して提供されることができ、例えば、クライアントおよびサーバは、大容量通信用のTCP/IPコネクションを介して互いに結合されることができる。
したがって、図2Aは、本発明が使用されることができる、サーバがネットワーク/バスを介してクライアントコンピュータと通信している、ネットワーク接続または分散環境例を例示している。より詳しくは、本発明により、多数のサーバ10a、10bなどは、LAN、WAN、イントラネット、インターネットなどとすることができる、通信ネットワーク/バス14を介して相互接続され、携帯型コンピュータ、ハンドヘルドコンピュータ、シン(thin)クライアント、ネットワーク接続アプライアンス(networked appliance)、またはVCR、TV、オーブン、照明、暖房などその他のデバイスなど多数のクライアントまたはリモートコンピューティングデバイス110a、110b、110c、110d、110eなどを備える。したがって、本発明は、格納、作成、ユーザインターフェース、描画などに至ったときに媒体機能を持つコンピュータデバイスに適用することができると考えられる。
通信ネットワーク/バス14がインターネットであるネットワーク環境では、例えば、サーバ10a、10bなどは、クライアント110a、110b、110c、110d、110eなどがHTTPなどの多数の知られているプロトコルのどれかを介して通信する相手であるWebサーバとすることができる。サーバ10a、10bなどは、さらに、クライアント110a、110b、110c、110d、110eとして使用することもでき、これは分散コンピューティング環境の特性である。
通信は、適宜、有線または無線でよい。クライアントデバイス110a、110b、110c、110d、110eなどは、通信ネットワーク/バス14を介して通信してもしなくてもよく、独立の通信がそれらに関連付けられることができる。例えば、TVまたはVCRの場合、そのコントロールに対するネットワーク接続された態様であってもなくてもよい。それぞれのクライアントコンピュータ110a、110b、110c、110d、110eなどおよびサーバコンピュータ10a、10bなどは、様々アプリケーションプログラムモジュールまたはオブジェクト135が備えられ、また様々な種類の格納要素またはオブジェクトとの接続またはそれらへのアクセスの機能が備えられ、それを介して、ファイルまたはデータストリームが格納されたり、そこへファイルまたはデータストリームの一部がダウンロードされたり、送信されたり、または移行されたりすることができる。コンピュータ10a、10b、110a、110bなどの1つまたは複数は、本発明により処理されたデータを格納するためのデータベースまたはメモリ20などの、データベース20またはその他の格納要素のメンテナンスおよび更新を行う役割を持つことができる。したがって、本発明は、コンピュータネットワーク/バス14にアクセスしそれを対話操作することができるクライアントコンピュータ110a、110bなどおよびクライアントコンピュータ110a、110bなどおよびその他の類似のデバイスおよびデータベース20を対話操作することができるサーバコンピュータ10a、10bなどを含むコンピュータネットワーク環境内で使用されることができる。
コンピューティングデバイスの例
図2Bおよび以下の説明は、本発明が実施されることができる関係する適当なコンピューティング環境について簡潔に述べた一般的な説明であることが意図されている。しかし、ハンドヘルドコンピューティングデバイス、携帯型コンピューティングデバイス、その他のコンピューティングデバイス、およびあらゆる種類のコンピューティングオブジェクトは、本発明に関係する使用について、つまりその媒体がコンピューティング環境で使用されることができる任意の場所で、考察されていることは理解されるであろう。以下ではホスト例として汎用コンピュータが説明されているが、これは一例にすぎず、本発明はネットワーク/バス相互運用性および対話性を持つシンクライアントで実施されることができる。したがって、本発明は、非常にごくわずかの、または最小限のクライアントリソースがかかわるネットワーク接続されホストされているサービスの環境で、例えば、クライアントデバイスが単に、アプライアンス内に置かれたオブジェクトなどネットワーク/バスへのインターフェースとしてのみ使用されるネットワーク接続環境で実施されることができる。本質的に、データまたはコンテンツが格納されることができる、またはデータが取り出される、または他のコンピュータに送信されることができる任意の場所が、本発明によるコンテンツ無線配信のオペレーションのための望ましい、または好適な環境である。
必要というわけではないけれども、本発明は、オペレーティングシステムを介して、デバイスまたはオブジェクトのサービスの開発者が使用できるように実施されるか、かつ/または本発明によるコンテンツの無線配信に関して動作するアプリケーションソフトウェア内に組み込まれることもできる。ソフトウェアは、クライアントワークステーション、サーバ、またはその他のデバイスなどの1つまたは複数のコンピュータにより実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的な状況において説明されることができる。一般に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。通常、プログラムモジュールの機能は、様々な実施形態で説明されているように、組み合わされるか、または分散されることができる。さらに、当業者であれば、本発明が他のコンピュータシステム構成およびプロトコルで実施されることが可能であることを理解するであろう。本発明と共に使用するのに適していると思われる他のよく知られているコンピューティングシステム、環境、および/または構成としては、これらに限定はしないが、パーソナルコンピュータ(PC)、現金自動預け払い機、サーバコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースシステム、プログラム可能家電製品、ネットワークPC、アプライアンス、照明、環境コントロール要素、ミニコンピュータ、メインフレームコンピュータなどがある。また、本発明は、通信ネットワーク/バスまたはその他のデータ伝送媒体を通じてリンクされているリモート処理デバイスによりタスクが実行される分散コンピューティング環境で実施されることもできる。分散コンピューティング環境では、プログラムモジュールは、メモリ記憶デバイスなどのローカルとリモートの両方のコンピュータ記憶媒体内に配置されることができ、クライアントノードは、順にサーバノードとして動作することができる。
そこで、図2Bは、本発明を適用することができる好適なコンピューティングシステム環境100の一例を示している。しかし、上記のことから明らかなように、コンピューティングシステム環境100は好適なコンピューティング環境の一例にしかすぎず、また本発明の使用または機能性の範囲に関して何らかの制限のあることを示唆することを意図しているものではない。コンピューティング環境100は、オペレーティング環境例100に例示されている1つのコンポーネントまたはその組合せに関係する何らかの依存関係または要求条件がその環境にあるものと解釈すべきでない。
図2Bを参照すると本発明を実施するシステム例は、汎用コンピューティングデバイスをコンピュータ110の形で備えている。コンピュータ110が備えるコンポーネントとしては、それらに限定はしないが、処理ユニット120、システムメモリ130、およびシステムメモリを備える様々なシステムコンポーネントを処理ユニット120に結合するシステムバス121などがある。システムバス121には、メモリバスまたはメモリコントローラ、周辺機器バス、および様々なバスアーキテクチャを使用するローカルバスを含む数種類のバス構造がありえる。例えば、このようなアーキテクチャとしては、限定はしないが、Industry Standard Architecture(ISA)バス、Micro Channel Architecture(MCA)バス、Enhanced ISA(EISA)、Video Electronics Standards Association(VESA)ローカルバス、および(Mezzanineバスとも呼ばれる)Peripheral Component Interconnect(PCI)バスがある。
コンピュータ110は通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ110によってアクセスされることができる媒体であればどのような媒体でも使用可能であり、揮発性および不揮発性媒体、取り外し可能および取り外し不可能媒体を含む。例えば、コンピュータ可読媒体は、限定はしないが、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造体、プログラムモジュール、またはその他のデータなどの情報を格納する方法または技術で実施される揮発性および不揮発性、取り外し可能および取り外し不可能媒体を含む。コンピュータ記憶媒体としては、限定はしないが、RAM、ROM、EEPROM、フラッシュメモリまたはその他のメモリ技術、CDROM、デジタル多目的ディスク(DVD)またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶デバイス、または目的の情報を格納するために使用されることができるコンピュータ110によりアクセスされることができるその他の媒体がある。通信媒体は、通常、コンピュータ可読命令、データ構造体、プログラムモジュール、または搬送波もしくはその他のトランスポートメカニズムなどの変調データ信号によるその他のデータを具現するものであり、任意の情報配信媒体を含む。「変調データ信号(modulated data signal)」という用語は、信号内の情報を符号化する方法によりその特性のうち1つまたは複数が設定または変更された信号を意味する。例えば、通信媒体としては、限定はしないが、有線ネットワークまたは直接配線接続などの有線媒体、および、音響、RF、赤外線、およびその他の無線媒体などの無線媒体がある。上記のいずれの組合せもコンピュータ可読媒体の範囲に収まらなければならない。
システムメモリ130は、読み取り専用メモリ(ROM)131およびランダムアクセスメモリ(RAM)132などの揮発性および/または不揮発性メモリの形態のコンピュータ記憶媒体を備える。起動時などにコンピュータ110内の要素間の情報伝送を助ける基本ルーチンを含む基本入出力システム133(BIOS)は、通常、ROM 131に格納される。通常、RAM 132は、処理装置120に直接アクセス可能な、かつ/または処理装置120によって現在操作されているデータおよび/またはプログラムモジュールを格納する。例えば、限定はしないが、図2Bは、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、およびプログラムデータ137を例示している。
コンピュータ110はさらに、その他の取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータ記憶媒体を備えることもできる。例にすぎないが、図2Bは、取り外し不可能な不揮発性磁気媒体の読み書きを行うハードディスクドライブ141、取り外し可能な不揮発性磁気ディスク152の読み書きを行う磁気ディスクドライブ151、およびCD−ROMまたはその他の光媒体などの取り外し可能な不揮発性光ディスク156の読み書きを行う光ディスクドライブ155を示している。オペレーティング環境例で使用されることができる他の取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータ記憶媒体としては、磁気テープカセット、フラッシュメモリカード、デジタル多目的ディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROMなどがある。ハードディスクドライブ141は、通常、インターフェース140などの取り外し不可能なメモリインターフェースを介してシステムバス121に接続され、磁気ディスクドライブ151および光ディスクドライブ155は、通常、インターフェース150などの取り外し可能なメモリインターフェースによりシステムバス121に接続される。
図2Bに示されている上記のドライブおよび関連コンピュータ記憶媒体は、コンピュータ110用のコンピュータ可読命令、データ構造体、プログラムモジュール、およびその他のデータを格納する機能を備える。例えば、図2Bでは、ハードディスクドライブ141は、オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147を格納するものとして例示されている。これらのコンポーネントは、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、およびプログラムデータ137と同じである場合もあれば異なる場合もあることに注意されたい。異なるコピーであることを最低でも示すため、オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147は、ここで異なる番号を与えられている。ユーザは、キーボード162、およびマウス、トラックボール、またはタッチパッドと一般に呼ばれるポインティングデバイス161などの入力デバイスを介してコンピュータ110にコマンドおよび情報を入力できる。他の入力デバイス(図に示されていない)としては、マイク、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどがある。これらの入力デバイスおよびその他の入力デバイスは、システムバス121に結合されているユーザ入力インターフェース160を介して処理ユニット120に接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などの他のインターフェースおよびバス構造により接続されることもできる。Northbridgeなどのグラフィックスインターフェース182も、システムバス121に接続されることができる。Northbridgeは、CPU、またはホスト処理ユニット120と通信するチップセットであり、アクセラレーテッドグラフィクスポート(AGP)通信機能を受け持つ。1つまたは複数のグラフィックス処理ユニット(GPU)184は、グラフィックスインターフェース182と通信することができる。この点に関して、GPU 184は、一般に、レジスタ記憶装置などのオンチップメモリ記憶装置を備え、GPU 184はビデオメモリ186と通信するが、本発明のアプリケーション変数が影響を受ける場合がある。しかし、GPU 184は、コプロセッサの一例にすぎず、したがって様々な補助処理デバイスがコンピュータ110に組み込まれることができ、ピクセルおよび頂点シェーダなどの様々な手続きシェーダ(procedural shaders)を含むことができる。モニタ191またはその他の種類の表示デバイスも、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続され、このインターフェースがさらにビデオメモリ186と通信することができる。モニタ191に加えて、コンピュータはさらにスピーカ197およびプリンタ196などの他の周辺出力デバイスも備えることができ、これらは出力周辺インターフェース195を介して接続されることができる。
コンピュータ110は、リモートコンピュータ180などの1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク接続または分散環境で動作することもできる。リモートコンピュータ180は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、またはその他の共通ネットワークノードとすることができ、通常は、コンピュータ110に関係する上述の要素の多くまたはすべてを含むが、メモリ記憶デバイス181だけが図2Bに例示されている。図2Bに示されている論理接続は、ローカルエリアネットワーク(LAN)171およびワイドエリアネットワーク(WAN)173を含むが、他のネットワーク/バスを含むこともできる。このようなネットワーキング環境は、家庭、オフィス、企業全体にわたるコンピュータネットワーク、イントラネット、およびインターネットでは一般的なものである。
LANネットワーキング環境で使用される場合、コンピュータ110はネットワークインターフェースまたはアダプタ170を介してLAN 171に接続される。WANネットワーキング環境で使用される場合、コンピュータ110は、通常、モデム172またはインターネットなどのWAN 173上で通信を確立するためのその他の手段を備える。モデム172は、内蔵でも外付けでもよいが、ユーザ入力インターフェース160またはその他の適切なメカニズムを介してシステムバス121に接続されることができる。ネットワーク接続環境では、コンピュータ110またはその一部に関して示されているプログラムモジュールは、リモートメモリ記憶デバイスに格納されることができる。例えば、図2Bは、リモートアプリケーションプログラム185をメモリデバイス181に格納しているように例示している。図に示されているネットワーク接続は例であり、コンピュータ間の通信リンクを確立するのに他の手段が使用可能であることは理解されるであろう。
代替(alternate)デバイスの例
上述のように、本発明は、一方のコンピューティングデバイスから他方のコンピューティングデバイスのディスプレイに無線でコンテンツをプロジェクト(project)することが望ましいと考えられる任意のデバイスに適用される。したがって、図2Cおよび以下の説明は、図2Bの一般的説明を補足する意味がある。したがって、ハンドヘルドコンピューティングデバイス、携帯型コンピューティングデバイス、その他のコンピューティングデバイス、およびあらゆる種類のコンピューティングオブジェクトは、本発明に関係する使用について、つまりデバイスが代替ディスプレイに無線でコンテンツを配信することを望むことができる任意の場所で、考察されていることは理解されるであろう。したがって、以下で説明する汎用リモートコンピュータは一例にすぎず、本発明はネットワーク/バス相互運用性および対話性を持つ任意のクライアントで実施されることができる。したがって、本発明は、非常にごくわずかの、または最小限のクライアントリソースがかかわるネットワーク接続されホストされているサービスの環境で、例えば、クライアントデバイスが単に、アプライアンス内に置かれたオブジェクトなどネットワーク/バスへのインターフェースとしてのみ使用されるネットワーク接続環境で実施されることができる。
必要というわけではないけれども、本発明は、一部は、オペレーティングシステムを介して、デバイスまたはオブジェクトのサービスの開発者が使用できるように実施されるか、かつ/または本発明のコンポーネントに関して動作するアプリケーションソフトウェア内に組み込まれることもできる。ソフトウェアは、クライアントワークステーション、サーバ、またはその他のデバイスなどの1つまたは複数のコンピュータにより実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的な状況において説明されることができる。当業者であれば、本発明が他のコンピュータシステム構成およびプロトコルで実施されることが可能であることを理解するであろう。
このように、図2Cは、本発明を実施する好適なコンピューティングシステム環境100aの一例を示しているが、上記のことから明らかなように、コンピューティングシステム環境100aはメディアデバイスの好適なコンピューティング環境の一例にしかすぎず、また本発明の使用または機能性の範囲に関して何らかの制限のあることを示唆することは意図されていない。オペレーティング環境例100aに示されている1つのコンポーネントまたはその組合せに関係する依存関係または要求条件がコンピューティング環境100にあるものと解釈すべきでない。
図2Cを参照すると本発明を実施するリモートデバイス例は、汎用コンピューティングデバイスをコンピュータ110aの形で備えている。コンピュータ110aが備えるコンポーネントとしては、限定はしないが、処理ユニット120a、システムメモリ130a、およびシステムメモリを備える様々なシステムコンポーネントを処理ユニット120aに結合するシステムバス121aなどがある。システムバス121aには、メモリバスまたはメモリコントローラ、周辺機器バス、および様々なバスアーキテクチャを使用するローカルバスを含む数種類のバス構造がありえる。
コンピュータ110aは通常、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ110aによりアクセスされることができる使用可能な媒体とすることができる。例えば、限定はしないが、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造体、プログラムモジュール、またはその他のデータなどの情報を格納する方法または技術で実施される揮発性および不揮発性、取り外し可能および取り外し不可能媒体を含む。コンピュータ記憶媒体としては、それらに限定されないが、RAM、ROM、EEPROM、フラッシュメモリまたはその他のメモリ技術、CDROM、デジタル多目的ディスク(DVD)またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶デバイス、または目的の情報を格納するために使用されることができるコンピュータ110によりアクセスされることができるその他の媒体がある。通信媒体は、通常、コンピュータ可読命令、データ構造体、プログラムモジュール、または搬送波もしくはその他のトランスポートメカニズムなどの変調データ信号によるその他のデータを具現するものであり、任意の情報配信媒体を含む。
システムメモリ130aは、読み取り専用メモリ(ROM)および/またはランダムアクセスメモリ(RAM)などの揮発性および/または不揮発性メモリの形態のコンピュータ記憶媒体を含むことができる。起動時などにコンピュータ110内の要素間の情報伝送を助ける基本ルーチンを含む基本入出力システム(BIOS)は、通常、メモリ310aに格納されることができる。通常、メモリ130aには、処理ユニット120aに直接アクセス可能な、かつ/または処理ユニット120aにより現在操作されているデータおよび/またはプログラムモジュールも格納する。例えば、限定はしないが、メモリ130aは、オペレーティングシステム、アプリケーションプログラム、その他のプログラムモジュール、およびプログラムデータも格納することができる。
コンピュータ110aはさらに、その他の取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータ記憶媒体を備えることもできる。例えば、コンピュータ110aは、取り外し不可能な不揮発性磁気媒体の読み書きを行うハードディスクドライブ、取り外し可能な不揮発性磁気ディスクの読み書きを行う磁気ディスクドライブ、およびCD−ROMまたはその他の光媒体などの取り外し可能な不揮発性光ディスクの読み書きを行う光ディスクドライブを備えることも可能である。オペレーティング環境例で使用されることができる他の取り外し可能/取り外し不可能な揮発性/不揮発性コンピュータ記憶媒体としては、限定はしないが、磁気テープカセット、フラッシュメモリカード、デジタル多目的ディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROMなどがある。ハードディスクドライブは、通常、インターフェースなどの取り外し不可能なメモリインターフェースを介してシステムバス121aに接続され、磁気ディスクドライブまたは光ディスクドライブは、通常、インターフェースなどの取り外し可能なメモリインターフェースによりシステムバス121に接続される。
ユーザは、キーボード、およびマウス、トラックボール、またはタッチパッドと一般に呼ばれるポインティングデバイスなどの入力デバイスを介してコンピュータ110aにコマンドおよび情報を入力できる。他の入力デバイスとしては、マイク、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどがある。これらの入力デバイスやその他の入力デバイスは、システムバス121aに結合されているユーザ入力140aおよび関連するインターフェースを介して処理装置120aに接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などの他のインターフェースおよびバス構造により接続されることもできる。グラフィックスサブシステムも、システムバス121aに接続されることができる。モニタまたはその他の種類の表示デバイスも、出力インターフェース150aなどのインターフェースを介してシステムバス121aに接続され、このインターフェースがさらにビデオメモリと通信することができる。モニタの他に、コンピュータはさらにスピーカおよびプリンタなどの他の周辺出力デバイスも備えることができ、これらは出力インターフェース150aを介して接続されることができる。
コンピュータ110aは、リモートコンピュータ170aなどの1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク接続または分散環境内で動作することができ、さらにそれらのリモートコンピュータはデバイス110aと異なる媒体機能を備えることができる。リモートコンピュータ170aは、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、またはその他の共通ネットワークノード、またはリモート媒体消費もしくは伝送デバイスとすることができ、パーソナルコンピュータ110aに関係する上述の要素の多くまたはすべてを含むことができる。図2Cに示されている論理接続は、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)などのネットワーク171aを含むが、他のネットワーク/バスを含むこともできる。このようなネットワーキング環境は、家庭、オフィス、企業全体にわたるコンピュータネットワーク、イントラネット、およびインターネットでは一般的なものである。
LANネットワーキング環境で使用される場合、コンピュータ110aはネットワークインターフェースまたはアダプタを介してLAN 171aに接続される。WANネットワーキング環境で使用される場合、コンピュータ110aは、通常、モデムまたはインターネットなどのWAN上で通信を確立するための他の手段を備える。モデムは、内蔵でも外付けでもよいが、入力140aのユーザ入力インターフェースまたはその他の適切なメカニズムを介してシステムバス121aに接続されることができる。ネットワーク接続環境では、コンピュータ110aまたはその一部に関して示されているプログラムモジュールは、リモートメモリ記憶デバイスに格納されることができる。図に示され説明されているネットワーク接続は例であり、コンピュータ間に通信リンクを確立するのにその他の手段を使用できることは理解されるであろう。
分散コンピューティングフレームワークまたはアーキテクチャの例
パーソナルコンピューティングとインターネットとの収斂をにらんで、様々な分散コンピューティングフレームワークが開発されてきており、また開発中でもある。個人および企業ユーザに対しても同様に、アプリケーションおよびコンピューティングデバイス用の継ぎ目なく相互運用が可能なWeb対応インターフェースが提供され、コンピューティング活動はますます、Webブラウザまたはネットワーク指向になってきている。
例えば、MICROSOFT(登録商標)の管理コードプラットフォーム、つまり.NETは、サーバ、構成要素であるサービス、例えば、Webベースのデータ記憶域およびダウンロード可能なデバイスソフトウェアを含む。一般的に言って、.NETプラットフォームは、(1)あらゆる種類のコンピューティングデバイスを連携動作させ、ユーザ情報を全コンピューティングデバイス上で自動的に更新させ、同期させることができ、(2)HTMLの代わりにXMLを多用することにより可能になる、Webページ用のインタラクティブ機能が増強され、(3)例えば電子メール、またはOffice.NETなどのソフトウェアなど様々なアプリケーションの管理面の中心的出発点からユーザへの製品およびサービスのカスタマイズされたアクセスおよび配信を特徴とするオンラインサービスを提供し、(4)情報へのアクセス効率および容易さを高めるだけでなく、ユーザとデバイス間の情報の同期処理も改善する一括集中データ記憶装置を備え、(5)電子メール、ファクス、および電話機などの様々な通信媒体を統合することができ、(6)開発者のためには、再使用可能なモジュールを作成することで、生産性を向上し、プログラミングの誤り件数を低減するための機能を備え、(7)他の多くのクロスプラットフォームおよび言語統合機能をも備える。
本明細書ではコンピューティングデバイス上に常駐するソフトウェアと関連して実施例が説明されているが、本発明の1つまたは複数の部分は、さらに、オペレーティングシステム、アプリケーションプログラミングインターフェース(API)または「仲介者(middle man)」オブジェクト、コントロールオブジェクト、ハードウェア、ファームウェア、中間言語命令またはオブジェクトなどを介して実施されることもでき、したがって、本発明の方法は、NETコードなどの管理コードにより使用可能にされる言語およびサービスのすべてに、含まれるか、サポートされるか、またはアクセスされることができ、また他の分散コンピューティングフレームワークでもそうである。
リモートデスクトッププロトコル(Remote Desktop Protocol)およびターミナルサーバ(Terminal Server)セッションの概要
マイクロソフト社のリモートデスクトッププロトコル(RDP)は、ホストからリモート媒体消費デバイスへの媒体利用をポートするために使用されることができるプロトコルの一例である。RDPは、サーバ上で実行中のWindows(登録商標)ベースのアプリケーション用にネットワーク接続経由のリモート表示および入力機能を備える。RDPは、様々な種類のネットワークトポロジおよび複数のLANプロトコルをサポートするように設計されている。
サーバ上で、RDPはそれ専用のビデオドライバを使用して表示出力を描画するが、そのためにプロトコルを使用して描画情報(rendering information)をネットワークパケットにまとめ、ネットワーク経由でクライアントに送信する。クライアントでは、RDPは描画データ(rendering data)を受信して、パケットを解釈し、対応するグラフィックスデバイスインターフェースAPI呼び出しを行う。入力パスについては、クライアントのマウスおよびキーボードイベントがクライアントからサーバにリダイレクトされる。サーバでは、RDPは、それ専用の仮想キーボードおよびマウスドライバを使用して、キーボードおよびマウスイベントを受け取る。限定されない特徴の観点からは、RDPは、暗号化、帯域幅低減機能、ローミング切断、クリップボードマッピング、プリントリダイレクション(print redirection)、仮想チャネル、リモートコントロール、ネットワーク負荷分散を含む。
ターミナルサーバは、Windows(登録商標)NT Serverなどのサーバの拡張としてのリモートコンピューティング環境を提供する。単にシンクライアントであれば、ユーザはサーバデスクトップオペレーティングシステムおよびアプリケーションをサーバから完全に切り離して利用することができる。ターミナルサーバでは、ユーザは、様々な種類のデスクトップ(A)サードパーティのハードウェアベンダにより販売されているWindows(登録商標)ベース端末と一般に呼ばれる安価なハードウェア、(B)ローカルデスクトップ環境内でターミナルサーバクライアントをウィンドウとして実行することによりWindows(登録商標)95またはMicrosoft Windows(登録商標)NT WorkstationなどのWindows(登録商標)デスクトップオペレーティングシステム、および(C)Xベースの端末、UNIX(登録商標)ベースのデスクトップ、さらにはApple Macintosh、MS−DOS、およびその他のネットワーク接続コンピュータ(アドオンソフトウェアを通じて)のうちのどれかからWindows(登録商標)ベースのアプリケーションにアクセスすることが可能になる。
ターミナルサーバは、ターミナルサーバマルチユーザコア、リモートデスクトッププロトコル(RDP)、およびシンクライアントソフトウェアの3つのメインコンポーネントを備える。
ターミナルサーバは、他のデバイス上で複数の同時クライアントセッションをホストする機能を備えるマルチユーザサーバコアである。ターミナルサーバは、様々なWindows(登録商標)ベースのハードウェアおよび非Windows(登録商標)ベースのハードウェア上で実行中の互換性のあるマルチユーザクライアントデスクトップを直接ホストすることができる。標準のWindows(登録商標)ベースのアプリケーションは、ターミナルサーバ上で実行するのに修正を必要とせず、クライアントデスクトップを管理するために標準のすべてのWindows(登録商標)NTベースの管理インフラストラクチャおよび技術が使用されることができる。このようにして、企業はWindows(登録商標)環境により提供されるアプリケーションおよびツールの豊富な選択肢を利用することができる。
RDPは、シンクライアントがネットワーク経由でターミナルサーバと通信できるようにするターミナルサーバのプロトコルである。このプロトコルは、国際標準マルチチャネル会議プロトコルであるITU(国際電気通信連合)T.120プロトコルに基づいている。RDPは、高帯域企業環境向けにチューニングされており、暗号化されたセッションもサポートする。
シンクライアントコンポーネント(thin client protocol)は、Windows(登録商標)ユーザインターフェースをWindows(登録商標)ベースの端末デバイスおよびパーソナルコンピュータを含む様々な種類のデスクトップハードウェア上に送る、つまり表示するソフトウェアである。
ターミナルサーバのオブジェクトマネージャは、異なるセッションのアプリケーションおよびシステムプログラムが衝突しないように規定する。1つのセッション内で作成されるすべてのオブジェクト名に、それを作成した個々のセッションに関連付けられた一意的な識別子番号(Session ID)が付加される。ターミナルサーバサービスは、まったくプロトコル独立であり、RDP、またはCitrixのICAなどのサードパーティのアドオンプロトコルを使用して機能することができる。
RDPは、サーバからのシリアルデバイス通信およびプレゼンテーションデータだけでなく暗号化されたクライアントマウスおよびキーボードデータを電送するための独立した仮想チャネルを利用できるようにするマルチチャネル対応プロトコルである。仮想チャネルは、機能強化をターミナルサービスアプリケーションに付加するために使用されることができるソフトウェア拡張機能である。機能強化の例として、特殊な種類のハードウェア、オーディオ、またはターミナルサービス RDPによって提供されるコア機能へのその他の追加のサポートがある。RDPは、複数の仮想チャネルの多重化された管理を行う。
仮想チャネルアプリケーションは、クライアントサイドコンポーネントサーバサイドコンポーネントの2つの部分を備える。サーバサイドコンポーネントは、ターミナルサーバ上で実行される実行可能プログラムである。クライアントサイドコンポーネントは、ターミナルサービスクライアントプログラムが実行するときにクライアントコンピュータ上のメモリにロードされるDLLである。
仮想チャネルは、RDPプロトコルとは独立に、機能強化をターミナルサービスクライアントに付加することができる。仮想チャネルサポートがあるため、クライアントまたはサーバソフトウェア、またはRDPプロトコルを更新する必要なしに、新しい機能を追加することができる。
他のいくつの機能もT.120標準定義の一部であり、例えば、アプリケーションから複数のパーティへのデータ配信が「リアルタイム」で行えるマルチポイントデータ配信がある。マルチキャスト対応配信では、データ伝送の信頼できる配信サービスが可能である。顧客向けにパフォーマンスを高めると同時に、ネットワークインフラストラクチャの負荷を低減する。RDPは、さらに多くの機能を構築する際に基になる拡張可能ベースを備えているので、接続を目的とする場合に有利である。これは、一部は、RDPがマルチポイント伝送機能を備えるだけでなくデータ伝送用に最大64000までの独立チャネルを提供することが理由である。
RDPは、ISDN、POTSなどの様々な種類のネットワークトポロジ、およびIPX、Netbios、TCP/IPなどの多数のLANプロトコルをサポートするように設計されている。
RDPスタックを通じてデータの送受信を行うことにかかわる活動は、本質的に、今日の一般的なLANネットワーキング用の7層OSI(開放型システム相互接続)と同じである。送信すべきアプリケーションまたはサービスからのデータは、プロトコルスタックを通じて受け渡され、セクションに分割され、チャネルに振り分けられ、暗号化され、ラップされ、フレーム化され、パッケージされてネットワークプロトコルに送られ、最後にアドレス指定され、有線でクライアントに送られる。
返されるデータは、逆の順序で同じ道を辿り、パケットはアドレスを剥ぎ取られ、ラップが取り除かれ、暗号解読され、というように続き、最後にデータがアプリケーションに届けられ使用される。第4層と第7層との間でプロトコルスタックの修正がいくつか発生し、そこではデータが暗号化され、ラップされてフレーム化され、チャネルに振り分けられ、優先順位設定される。
RDPを使用すると都合がよいのは、プロトコルスタックの処理の複雑さが取り去られ、アプリケーション開発者から見えなくなることである。アプリケーション開発者は、単にアプリケーションを書くだけでよく、ターミナルサーバおよびそのクライアント接続により実施されるRDPがその残りを片づけてくれる。
起動すると、ターミナルサーバは、コアオペレーティングシステムをブートし、ロードし、ターミナルサーバサービスが起動され、セッション接続の待機を開始する。それぞれの接続には、ターミナルサーバに対し個々のセッションを表す一意的なセッション識別子つまり「SessionID」が与えられ、セッション内で作成されたそれぞれのプロセスに、その名前空間と他のセッション名前空間とを区別する関連するSessionIDが「タグ付け(tagged)」される。ユーザがターミナルサービス対応コンピュータにログオンすると、一意的セッションIDで識別される、そのユーザについてセッションが開始される。ターミナルサービスクライアントへのログオン毎に別々のセッションIDを受け取るので、ユーザは、同時に複数のコンピュータ、例えばオフィスのコンピュータと家庭のコンピュータにログオンしているのと似た状況に置かれる。
コンソール(ターミナルサーバキーボード、マウス、およびビデオ)セッションは、最初にロードすべきものであり、特殊なケースのクライアント接続として処理され、SessionID0が割り当てられる。コンソールセッションは、通常のシステムセッションとして開始し、構成済みのディスプレイドライバ、マウスドライバ、およびキーボードドライバがロードされる。
コンソールセッションの作成後、ターミナルサーバサービスは、セッションマネージャを呼び出して、クライアント接続を待機する2つ(デフォルト)のアイドルクライアントセッションを作成する。アイドルセッションを作成するために、セッションマネージャはクライアントサーバランタイムサブシステムのプロセスを実行し、新しいSessionIDがそのプロセスに割り当てられる。
コンソールセッションとは異なり、クライアントセッションは、ディスプレイ、キーボード、およびマウス用に別々のドライバをロードをするように構成される。新しいディスプレイドライバは、リモートデスクトッププロトコル(RDP)ディスプレイデバイスドライバであり、マウスおよびキーボードドライバはRDPドライバで置き換えられる。これらのドライバにより、RDPクライアントセッションはリモートから使用できると共に対話操作が可能になる。最後に、ターミナルサーバは、さらに、TCPポート上のRDPクライアント接続を待機する、RDPプロトコル用のコネクションリスナスレッド(connection listener thread)を呼び出す。異なるSessionIDを持つプロセスは、他のセッションのデータへのアクセスを防止される。
本発明の一実施例では、クライアントはTCPポートを通じてターミナルサーバへの接続を開始する。ターミナルサーバRDPリスナスレッドは、セッション要求を検出し、新しいセッション要求を処理するための新しいRDPスタックインスタンスを作成する。リスナスレッドは、受け取ったセッションを新しいRDPスタックインスタンスに受け渡し、さらに接続の試みがないか監視するためTCPポート上で待機し続ける。それぞれのRDPスタックは、クライアントセッションがセッション構成詳細のネゴシエーションを処理するために接続されると作成される。
ユーザログオンの後、デスクトップ、または単一アプリケーションモードであればアプリケーションが、ユーザのために表示される。ユーザが実行するアプリケーションを選択すると、マウスコマンドがターミナルサーバに渡され、選択されたアプリケーションが新しい仮想メモリ空間内で起動する。
ユーザがセッションの切断を決定しても、プロセスおよびすべての仮想メモリ空間は残り、他のプロセスに物理メモリが必要になった場合に物理ディスクにページオフされる。RDPの利点として他に、ユーザがセッションに対して要求した内容に応じてセッションスクリーン解像度を変更できるという点が挙げられる。例えば、ユーザがすでに、800×600の解像度でターミナルサーバセッションに接続してから、切断し、その後、640×480の解像度しかサポーとしていない別のコンピュータに移動して、既存のセッションに再接続した場合、デスクトップは新しい解像度に対応して描画される。
ログオフは、通常、実施が非常に簡単である。ユーザがいったんセッションからログオフすると、SessionIDに関連付けられているすべてのプロセスは終了し、そのセッションに割り当てられているメモリがあればメモリは解放される。
コンテンツを無線で送受信するシステムおよび方法
本発明の一態様では、プロジェクタまたは大型表示モニタなどの表示デバイスは無線技術を組み込むことがきで、表示デバイスはモバイルコンピューティングデバイスからコンテンツ/データを受信することができる。したがって、ユーザはモバイルデバイスをケーブルに物理的に接続する必要はあり得ない。他の態様では、モバイルデバイスから表示デバイスに送信されるコンテンツ/データは、会議出席者のコンピューティングデバイス上に同時に表示されることができる。無線技術は、プロジェクタ市場で急速に勢いを増している。Wi−Fiなどの無線機能を組み込んで製造されたプロジェクタを使用すると、「アドホック」モードでは、モバイルユーザはコンテンツを提供するために簡単にアクセスできるようになる。このようなプロジェクタを利用すると、共同会議のため複数のモバイルユーザを同じルーム、または無線技術を利用できる十分な近さのルームに集めることができる。さらに、本発明では、有線ソリューションが実用的でない場合でも容易に接続できる、つまりケーブル配線上の問題が解消される。
したがって、本発明では、プロジェクタは整然と簡単に設置でき、かなりの距離にわたって信号の損失または劣化はない。本発明では、例えば、複数の人々が自分のラップトップでプレゼンテーションを行う場合に、複数のPCソースを切り換えて使用することも容易である。さらに、発表者は、ルームの中で、あるいは無線技術の能力の範囲内であればルームの中でなくても、機動性を高めることができ、プロジェクタの近くや壁コンセントの近くに陣取る必要はない。本発明の一実施形態では、モバイルデバイスのオペレーティングシステムでプロジェクタまたはその他のモバイルデバイスにプロジェクトすることができるWi−Fiなどの無線技術を組み込むことにより、モバイルデバイスはソフトウェアまたはハードウェアをさらにモバイルデバイスにインストールしなくても無線でプロジェクトすることができる。
本発明の一実施形態では、プロジェクタに組み込まれている無線技術を活用し、ユニバーサルプラグ&プレイ(UPnP)を使用して、発見すべきプロジェクタの存在、ユーザの携帯型/モバイルコンピュータを広告し、プロジェクタをコントロールする。本発明では、ターミナルサービス(Terminal Service)セッションを使用して、ディスプレイをユーザのマシンに接続することができる。
本発明を利用すると携帯型/モバイルコンピュータ駆動プロジェクタと他の携帯型/モバイルコンピュータのディスプレイとの間の統合性を容易に高められる。無線機能をプロジェクタに付加すると、モバイルユーザのアクセスが容易になり、共同会議のため多数のモバイルユーザを同じ1つのルームに集めることで、有線ソリューションが実用的ではない場合の接続を容易に行うことがきる。ケーブル配線上の問題は解消され、したがって、プロジェクタは整然と容易に設置することができ、長い距離にわたって信号の損失はない。特に複数の人々が自分のラップトップからプレゼンテーションを行う場合に複数のPCソースをかなり容易に切り換えて使用することができ、発表者はルームの中での機動性を高めることができ、プロジェクタの近く、または壁コンセントの近くに陣取る必要はない。
本発明による無線技術の主要な利点の1つは、複数の発表者がいる1つのルームの中に見られ、そこでは各発表者はすでに自分のラップトップのプラグをプロジェクタ接続部に差し込み、終了する毎に引き抜いている、つまり、本発明を使用すれば、ケーブルの切り換えなしで共同グループプレゼンテーションを実現できるということである。本発明により対応できる3つのシナリオは、鏡、拡張モニタ、および1:Nを含む。鏡シナリオの例では、Melissaが会議室にはいると、自分のラップトップを会議モードに設定する。そのマシンは、会議室内のプロジェクタを発見する。無線で、自分のラップトップ上のスライドショーをそのままプロジェクタにプロジェクトする。スライドの表示が完了した後、他の会議出席者がプロジェクタを使用できるように、自分はプロジェクタから切断する。本明細書では多くの例が取り上げられており、そのいずれも本発明を限定するものとみなすべきではない。例えば、拡張シナリオは、1:1または1:nのいずれかのプロジェクション状況(projection circumstance)で達成されることができる。ミラーシナリオ(mirror scenario)も、1:1および1:nのプロジェクション状況で達成されることができる、つまり、排他的なシナリオでないということである。
通常の拡張モニタシナリオで、Patrickはクライアントの会議室に入るときに自分のラップトップを会議モードに設定する。そのマシンは、会議室内の無線プロジェクタを発見する。プロジェクタを拡張マルチモニタ方式で使用されるように有効にすると、プロジェクタは、Patrickのラップトップがメモを表示している間にプレゼンテーションを表示する。実際には、Patrickの表示は分割されるため、第2のモニタとして使用されることができる。
通常の1:Nシナリオでは、Fredは、全員、例えばオペレーティングシステムの中にまたはアプリケーションとして本発明によるソフトウェアを含むラップトップ、または他のコンピューティングデバイスを持つ同僚と空港のロビーで会う。そこで、Fredは、自分のスライドを同僚たち全員のラップトップ、および/または利用できるものがあればプロジェクタに簡単にプロジェクトすることができる。
したがって、本発明のソリューションは、ユーザが使用可能な無線プロジェクタまたはその他のコンピュータを発見し、設定を行い、それらに接続することができる単純なユーザインターフェース(UI)を表す。さらに、本発明は、他のコンピュータのユーザが送信元携帯型/モバイルコンピュータから「プロジェクトされた(projected)」コンテンツ/データを受け付けるためのUIを含む。
図3は、本発明による無線プロジェクトアプリケーションを起動するシーケンス例を示している。例えば、300において、プロジェクションのためのユーザ対話操作の例は、本発明のソフトウェア機能(software functionality)をインスタンス化(instantiate)することから始まる。これは、デバイスの起動時に、またはプロジェクション要求(projection request)を開始する一環として実行することができる。限定されない例として、ユーザは「スタート」メニューの下にあるメニュー位置、またはトップレベルもしくはサイドバーなどの使いやすいUIを介して本発明を開始することができる。310において、ユーザはマシンを「プレゼンテーション」モードに設定する。プレゼンテーションモードは、プレゼンテーション中にオペレーティングシステムにより呼び出される他のタスクに影響を及ぼすことがあり、例えば、通知をオフにしたり、スクリーンのブランキングをオフにしたり、他のソースからのオーディオを禁止したり、電源の方式を変更したり、デスクトップのバックグラウンドを変更したりなどする。図3に例示されていない限定されない実施形態では、トップレベルまたは使いやすいUIが用意され、1つまたは複数のディスプレイが見つかった場合、ディスプレイバー部が現れる。これが現れると、本発明でプロジェクト用の既存のディスプレイを発見する時間を確保するためプレゼンテーションモードが選択された後、マシンは所定の時間の間、例えば30秒間ディスカバリモード(discovery mode)に入ることができる。320において、ユーザは、コンテンツをプロジェクト(project)したいか否かUIを介して問い合わせされる。「Yes」と答えるとマシンは330でディスカバリステート(discovery state)に入る。「No」であれば、ソフトウェアは終了し、ステップ300または310に戻る。340において、ディスプレイ(例えば、プロジェクタ)のリストが表示されるダイアログボックスが現れる。一実施形態では、他のラップトップに関して、発表者(presenter)はラップトップディスプレイのリスト(list of laptop display)を受け取らないが、むしろ、発表者は会議名/パスワード付きで仮想会議を作成し、他の人々は参加するためにそれらを使用する。350において、ユーザは、コンテンツを表示するディスプレイ、例えばプロジェクタを選択する。一実施形態では、上と同様、他の人のラップトップに関して、ユーザは他の人のラップトップを選択しないが、むしろ、会議名/パスワード付きで仮想会議を作成し、他の人々はそれらを使用する。発見は、さらに、ユーザ介入なしでバックグラウンドで行わせることもできる。
ディスカバリプロセス(discovery process)はすべてのプロジェクタおよびラップトップを返すことができるが、表示に利用できない場合(つまり、現在他のプロジェクションで使用中)もある。本発明により、これらは使用中であることを示す指標(インディケーション(indication))を含む、例えば、「使用中(busy)」アイコンと共に表示内で灰色表示になる。このダイアログボックスの一部として、ユーザは最近使った(MRU:Most Recently Used)プロジェクタリストから選択するか、またはプロジェクタを発見することなくURLまたはIPアドレスを指定することも含むプロジェクタの名前を直接入力するかのいずれかを選択することができる。ユーザに対しては、さらに、プロジェクションを設定(構成)する(configure)ためのオプションも表示される。
代替ディスプレイ、例えばプロジェクタが選択された後、プロジェクションを開始することができる。UI要素、例えばサイドバーなどのトップレベルまたは使いやすいUIの一部が使用可能であれば、ユーザはそれを使ってプロジェクションから切断したり、かつ/またはさらに多くの人々をプロジェクションに加えたりできる。例えば、一実施形態では、サイドバーなどのトップレベルまたは使いやすいUIのフライアウト部分により、ユーザはプレゼンテーションに入っている人を調べて、接続を切断することも可能であるが、さらに追加することはできない。この実施形態では、ユーザが追加されることを望んでいる場合、そのユーザは参加のため会議名/パスワードを使ってプレゼンテーションを選択する。ダイアログボックス、例えば、表示サイドバーは、プロジェクションのステータス、接続切断およびプロジェクションリストへの人の追加ができるか否かを表示する。
本発明のアーキテクチャは、図4Aおよび4Bに例示されている。本発明による会議室プロジェクタ技術では、UPnPおよびターミナルサービスという2つの重要技術を組み合わせている。本発明によるこれら2つの技術を使用することで、ユーザはプロジェクタを発見し、リモートでプロジェクタをコントロールし、アプリケーション(Desktop、PowerPointなど)をプロジェクトし、デスクトップを分割表示デバイスに対して拡張することができる。図4Aおよび図4Bは、本発明による会議室multimon(MRM)サービスのアーキテクチャ全体を示している。最下位レベルには、ユニバーサルプラグ&プレイコンポーネントUPnPおよびターミナルサービスTS1およびTS2およびリモートアシスタンスRA1およびRA2コンポーネントが構築されているオペレーティングシステムがある。MRMでは、本発明で扱われている問題を解決するために両方の技術を使用する。ユニバーサルプラグ&プレイは、プロジェクタデバイスを発見し、コントロールするために使用される。ターミナルサービスおよびリモートアシスタンスは、表示描画に使用される。
図4Aおよび図4Bは、さらに、本発明で2つの部分をどのように組み込むか、つまり一方の部分がコントロールに使用され(MRM送信側)、他方の部分が送信側のスクリーンを実際に表示するために使用されることを示している。
送信側(図4A)は、デバイスをコントロールし、発見するサービスSSを介して機能を提供する。これは、ユニバーサルプラグ&プレイにより定義されているメカニズムを使用して行う。さらに、送信側は、ターミナルサービスサーバTS1を含む。このサーバを介して、送信側のスクリーン情報がターミナルサービスクライアントTS2、つまり代替表示デバイスに分配される。
図4Aのコントロールポイントでは、ラップトップ、プロジェクタ、モニタなどを含むことができる、図4Bの会議室プロジェクタデバイスの発見、コントロール、およびそれへのプロジェクションを行う。会議室プロジェクタデバイスは、ユニバーサルプラグ&プレイを使用して、自分をネットワーク上に広告する。これは、ターミナルサービスクライアントTS2を使用して、図4Aのコントロールポイント内のターミナルサービスサーバTS1に「接続」する。次に、ターミナルサービスサーバTS1からスクリーンを説明する情報を受け取る。
図5は、代替表示デバイスに接続するプロセスに関係する流れ図の例を示す。500で、コントロールポイント(またはMRM)は、代替表示デバイスを発見する。これは、1)この場合このタイプのすべてのデバイスが要求に応答することになるがその特定のデバイスについてのユニバーサルプラグ&プレイ探索を発行すること、または2)デバイスが自分を広告するのを監視して待機することにより実現されることができる。コントロールポイントでは、特定のデバイスが判明すると、510においてデバイスのサービスドキュメントをダウンロードする。
次に、送信側とデバイスは、互いの接続をセットアップする。520で、リモートアシスタンス層の適切なAPIを呼び出すことによりターミナルサービスクライアントに対し「チケット」が生成される。このチケットは、送信側に接続する方法に関する情報、および接続のモード(プロジェクション、拡張デスクトップ、特定アプリケーションの表示など)を提示する。次に、530において、デバイスのUPnP ProjectorService DSがチケットと共に呼び出される。つまり、送信側はチケットをデバイスに送信する。その後、デバイスは、540でOS2上のリモートアシスタンス層または他の受信側にチケットを受け渡す。550において、チケットはデコードされ、ターミナルサービスクライアントTS2に渡される。560において、ターミナルサービスクライアントTS2は、サーバTS1に接続し、接続を確立する。570において、送信側のスクリーンデータがRDPを介してデバイス上に描画される。
図6は、代替表示デバイスをコントロールするプロセスに関係する流れ図の例を示す。ユーザが、600において、代替表示デバイスに接続すると、代替表示デバイスは、610で個人の接続を識別する「SessionToken」を返す。与えられた時点において、ある個人が代替表示デバイスを「所有(own)」している。つまり、最初は、代替表示デバイスにプロジェクションのための接続を指示する個人が1人だけいる。さらに、このトークンは、代替表示デバイスをコントロールするためにも使用される。このトークンを使用することで、ユーザは、620で切断し、630でセッションの表示設定を変更/検索(change/retrieve)し、640で所有権を移し、かつ/またはその接続650を「ブラックアウト(black out)」することができる。
1:1プロジェクションでは、プロジェクタコントロールポイントが、SALEM層APIなどのAPIを使用して、接続を確立するためのチケットを生成する。1:Nプロジェクションおよび他の拡張モニタプロジェクションについては、一実施形態では、プロジェクタはターミナルサービス層からの通信およびコラボレーションAPI(collaboration APl)を使用し、複数のクライアントがマルチシャドウイングセッション(multi-shadowing session)に参加できるようにする。このAPIは、さらに、クライアントをシャドウイングセッションに招待し、招待を解除するための手段も備える。ユーザコントロールポイントの目的は、ユーザが接続のために選択できる使用可能な代替表示デバイスのリストを表示することである。
上述のように、本発明は、無線設定で会議室プロジェクタを発見する機能、ラップトップ表示をプロジェクタにプロジェクトする機能(鏡1:1)、WinCEベースのプロジェクタがない場合でもラップトップ表示をプロジェクタにプロジェクトおよび/または会議出席者にプロジェクトする機能(1:m)、およびラップトップ上の話し手のメモと共にスライドショーをプロジェクタに表示する機能(拡張multi−mon)を提供する。上述のように、本発明は、さらに、プロジェクションのためのユーザ対話操作を容易にするユーザインターフェースを提供するものであり、ユーザインターフェースメカニズムの態様について、これから詳述する。
本発明によれば、ユーザには、プロジェクションを設定(構成)するオプションを用意している。設定UI(構成UI)(configuration UI)は、プロジェクション用のパスワードの設定、クローニングモード(cloning mode)vs. 拡張モード(extended mode)の選択、スクリーン解像度(screen resolution)の選択、およびビデオ、またはオーディオとビデオの選択のいずれかをユーザが行えるようにする本発明によるダイアログボックス上の「Options」ボタンから起動することができる。一実施形態の既定では、システムはクローニングモードに設定され、スクリーン解像度は現在のシステム設定に設定され、「audio and video」が選択されている。
一態様では、本発明のユーザインターフェースにより、ユーザは自分のラップトップに「プロジェクト」したいか、「他人がプロジェクトできるように」したいかを指示することができる。ユーザが「他人がプロジェクトできるようにする」を選択した場合、マシンは「発見可能(available for discovery)」状態(state)に入り、つまり、マシンは使用可能であることをブロードキャストし始め、使用可能な代替表示デバイスを探しているホストは、マシンが使用可能であることを示す指標(インディケーション(indication))を受け取る。それとは別に、自分のラップトップに送りたい誰かからユーザが通知を受け取った場合、ユーザは受け付けるよう求められる。「Yes」が選択され、プロジェクションがパスワードで保護されている場合、ユーザはパスワードの入力が求められる。
プロジェクションが開始されると、プロジェクションを示すクライアントプロジェクションウィンドウが現れる。一実施形態では、ウィンドウは、2つの入力要素(例えば、ボタン)を含む。つまり、切断(disconnect)するための要素と、設定(構成)(configuration)するための要素である。設定(構成)により、ユーザはオーディオをオフにしたり、他の人々にディスプレイを見つけさせたりすることができ、これにより送信側はコンテンツの他の可能な受信側を発見することができる。切断ボタンを使用すると、現在のプロジェクションセッションは終了し、プロジェクションウィンドウは消える。限定されない一実施形態では、発表者(presenter)は、プロジェクションを見ているのがどのユーザであるかを通知されない。限定されない他の実施形態では、プロジェクション中ポインタがレーザの赤色の点になり、発表者にとって、プロジェクション上のアイテムを強調表示するための容易な手法となる。
図7A〜図7Hは、本発明による様々なユーザインターフェースのシナリオを示す限定されないスクリーンショット例を示している。図7Aは、本発明による代替表示デバイスにプロジェクトされるスクリーンの例700aを示している。図7Bは、ユーザが送信側または受信側として会議への参加について尋ねられているところを示すスクリーンショット例700bを示す。図7Cは、ユーザがリストから代替表示デバイスを選択するところを示すスクリーンショット例700cを示す。図7Dは、ユーザに追加表示オプションが表示されているところを示すスクリーンショット例700dを示している。図7Eは、サイドバーなどのトップレベルまたは使いやすいUIが用意されている場合のプロジェクタにおけるバー部分のフライアウトシナリオを例示するスクリーンショット例700eを示す。図7Fは、ポインタデバイスがレーザ光点になった、代替表示デバイス上のプロジェクション表示を示すスクリーンショット例700fの例を示している。図7Gは、会議出席者が発表者に参加を要請されるところを示すスクリーンショット例700gを示している。図7Hは、ユーザがプロジェクションのコンテンツを描画するためのプロジェクションウィンドウを受け入れ、その受信を開始するところを表すスクリーンショット例700hを示す。
ユーザがディスプレイにプロジェクトできるようにサービスが構成されている場合、サービスは、登録済みUPnPプロジェクタデバイスを見つけ、現在の状態についてクエリを実行し、セッションへの接続およびセッションからの切断を確立するためTSチケットを作成するために使用されることができる。
MRMは、TSとインターフェースする必要はない。一実施形態では、接続を確立することは、UPnP APIを通じて実行される。リモートディスプレイの接続の切断およびコントロールでは、接続呼び出しから返されたセッショントークンを使用する。単にステータス情報を検索するだけであれば、プロジェクタ上でセッションデータを使用する必要はない。(例えば、プロジェクタステータス、解像度など)。
さらに、公開されているUIは描画を行い、現在のデバイス設定(例えば、DPI、解像度)の下で表示する。その結果、サイズは、DPIおよび解像度が異なるマシンであっても一定である。UIは、ユーザが縦置き、横置きの向きのウィンドウ管理上の問題に取り組まずに済むように提示される。したがって、様々な実施形態において、プロジェクトされるスクリーンはデバイスのアスペクト比に収まる。
以下は、本発明の一実施形態によりプロジェクションシナリオをサポートするために使用されるメソッドの限定されないサブセット例である。
(1)Connect ([in] BSTR bstrTicket, [in] BSTR bstrUser, [out, retval] BSTR *pbstrSession)
このメソッドは、ターミナルサービスチケットおよびユーザの名前をアプリケーションに渡し、発信元マシンへ戻る接続を確立しようとする。これは、デバイスをコントロールするために使用されることができるセッション文字列を返す。一実施形態では、そのデバイスを誰も使用していなかった場合、接続の確立と共に初期状態は0(Available)から1(Connecting)へ、さらに3(InUse)に遷移する。デバイスが使用中であった場合、これは、即座にユーザによってコントロールされることはない。セッションから切断するには、Disconnectメソッドが呼び出され、セッション文字列がこのメソッドから返される。
(2)Disconnect ([in] BSTR bstrSession)
このメソッドは、文字列パラメータによって指示されるセッションを切断する。この値は、Connectメソッドから返された文字列と同じである。一実施形態では、この状態は、接続が停止され、デバイスが既定の設定に戻るときに、3(InUse)から2(Disconnecting)と0(Available)に遷移する。
内部変数が更新された後、変数A_CurrentUser、A_NextUser、A_UserCount、およびA_UserListに対するイベントが発生する。TS−network−protocolは、ネットワークが途絶した場合に接続が再接続されるようにできるauto−reconnectと呼ばれる機能を持つことに注意されたい。
(3)SetDisplayMode ([in] BSTR bstrSession, [in] long DisplayMode)
このメソッドは、セッションパラメータが現在デバイスによるコントロール中であるユーザのパラメータと一致する場合に表示モードを変更する。
(4)SetResolution ([in] BSTR bstrSession, [in] long width, [in] long height, [in] long colorDepth)
このメソッドは、セッションの解像度を設定する。
(5)GetUserName ([in] long position, [out] BSTR * pbstrUser)
このメソッドは、ユーザの名前を取得(検索)する。
一実施形態では、プロパティに関して、以下の限定されない機能が実施される。
(1)get_A_State([out, retval] long *pState)
これは、デバイスの現在状態を取得(検索)し、一実施形態では、有効な値は以下の通りである。
DISPLAYSTATE_AVAILABLE=0、
DISPLAYSTATE_CONNECTING=1、
DISPLAYSTATE_DISCONNECTING=2、
DISPLAYSTATE_INUSE=3、
DISPLAYSTATE_INITIALIZING=4。
既定値は0である。0以外の値は、デバイスが使用中であり、接続の試みがないことを示す。
(2)get_A_DisplayMode([out, retval] long *pDisplayMode)
これは、デバイスの現在の表示モードを取得(検索)する。
(3)get_A_CurrentUser([out, retval] BSTR *pbstrUser)
これは、コントロール権を持つ現在のユーザの現在の名前を取得(検索)する。
(4)get_A_MaxUsers([out, retval] long *pcUsers)
これは、デバイスが取り扱えるユーザの最大人数を取得(検索)する。
(5)get_A_Width([out, retval] long *pWidth)
これは、現在の水平解像度を取得(検索)する。一実施形態では、この値は800から変数MAXINTまでとすることができ、既定値は1024である。SetResolutionは、この値を変更するために使用することができる。
(6)get_A_Height([out, retval] long *pHeight)
これは、現在の垂直解像度を取得(検索)する。一実施形態では、この値は600からMAXINTまでとすることができ、既定値は768である。SetResolutionは、この値を変更するために使用することができる。
(7)get_A_ColorDepth([out, retval] long *pColorDepth)
これは、色に対する1ピクセル当たりのビット数である。一実施形態では、この値は、8、16、24、32のいずれかとすることができる。既定値は32であり、SetResolutionはこの値を変更するのに使用することができる。
本発明は、任意選択で、様々な既存のアクセサビリティインフラストラクチャ(accessibility infrastructures)およびユーザインターフェースと組み合わせされることができる。例えば、Robertに機動性障害があるが、首の下にモータコントロール機能を用意していない場合、Robertは、たぶん、電子ポインティングデバイスと共にスクリーン上のキーボードを使用して、自分のコンピューティングの目的を達成する、つまり、キーボードショートカットを、大型フォントを使用して、プロジェクタディスプレイを選択することができる。したがって、本発明の一実施形態では、プロジェクションの出力は、スクリーンリーダーから読み込まれることができる。そこで、Robertに対し、すべての特徴、特にマウス多用するアクション、例えば、本発明によるプロジェクタおよびラップトップディスプレイを選択することを含むすべての機能にアクセスするキーボードが用意される。キーボードアクセラレータ(例えば、キーショートカット、)も、メニュー項目およびコントロールに用意される。一実施形態では、論理的キーボードナビゲーション順序は、ダイアログボックス内で、また類似のオブジェクトグループに対し使用される。この意味で、「論理」は、通常、左から右、上から下であるというのに等しく、これにより、言語/文化に応じて国際ユーザ向けに変更することができる。
一実施形態において、色単独ではアイテムの区別に使用されず、色と共に伝達される情報もまた色なしで使用可能である。システム設定に関しては、様々な実施形態において、本発明はできる限り色に対するコントロールパネル設定をサポートし、そうでない場合は、ユーザは色をカスタマイズすることができる。画像は、標準の前景色と背景色を使用して描画される。また、アクセサビィリティコントロールパネル(Accessibility Control Panel)でハイコントラストフラグがセットされた場合、テキストおよびコントロールの背後にあるビットマップ化された画像または他の複雑な背景は省かれ、画像は複数の色ではなくモノクロで描画され、アプリケーション特有の色はコントロールパネル(Control Panel)を通じて定義されている標準のシステム色で置き換えられ、可能な最も少ない色の組合せが使用される。オブジェクトは、コントロールパネル(Control Panel)で選択されたサイズ(つまり、スクリーン測定基準)を使用して描画される。また、線が描画される場合、固定値を使用するのではなく適切な幅が判別される。さらに、様々な実施形態において、どのカスタムコントロールもアクティブなアクセシビリティプロパティを含む。
距離(distance)があったり、障害(obstruction)があると、無線のパフォーマンスが低下する可能性がある。したがって、本発明の様々な実施形態では、信号品質を示す本発明のUIメカニズムを介してアイコンが表示される。障害、距離、および維持すべきデータレートに対応して、信号品質の所定数のレベルを表示することができる。
本発明は、さらに、国際言語および多言語ユーザインターフェース(MUI)手法と組み合わせることができ、それにより、外国人ユーザによって所有されているデバイスにコンテンツを配信する場合に、任意選択によりその外国人ユーザの言語に応じてコンテンツが表示される。
本発明のプロジェクションは、IPネットワーク上の存在に基づいており、有線でも無線でもよい。例えば、有線の場合、Josephは、自分のオフィスにおり(有線)、ラップトップ(有線または無線のいずれかにより接続されている)を持つ、そのオフィスにいるゲストにスライドデッキをプロジェクトして見せることを望んでいる。本発明は、単にモバイルデバイスだけでなく、任意のコンピューティングデバイス、PCまたはその他のものに適用されることに注意されたい。
様々な実施形態において、1:1プロジェクションは発見、代替表示デバイスへの接続、およびデータの伝送を含む。発見(discovery)は、ユーザによって開始されるか、またはユーザが何らかのタスクを実行している間に、またはシステムがアイドル状態であるなどのときに、バックグラウンドで自動的に実行することができる。1:1プロジェクションは、拡張されるか、またはミラー化されることができる。拡張の場合、代替ディスプレイ上でプレゼンテーションをナビゲートできるようにするUIがある。例えば、PowerPointのプレゼンテーションがプロジェクタに表示されるようにしておいて、ラップトップのスクリーン上に話し手のメモを表示しながら次のスライドに移りたい場合がある。この場合、ラップトップのスクリーン上でUIを使用してスライド上の何かをハイライト表示するか、または次のスライドに進むことができる。したがって、本発明では、送信側が描画側に表示されたくない送信側の表示の一部(例えば、メモ)がありえるようなシナリオを考慮しており、またデータの通常のプロジェクションの一部として描画側の一部でないが、描画側では明白であるようにプロジェクションに追加される、送信側の表示の一部がありえるシナリオも考慮している。
様々な実施形態において、1:nプロジェクションは、進行中のプレゼンテーションのネットワークへの通知を含む。規則は、プレゼンテーションに関連付けられることができ、修正可能/拡大可能である。規則の例として、(A)プレゼンテーションに参加/表示することができる人々、(B)プレゼンテーションのパスワードまたは他の認証、(C)表示者側のプレゼンテーションの注釈および/または注釈の記録/格納、および(D)コンテンツ権利管理規則の強制、例えば、スライドの印刷スクリーンを取得(検索)しないことを強制する機能がある。
プロジェクションは、さらに、ネットワーク上にプレゼンテーションが存在することをブロードキャストする機能も含むが、ただし、ネットワーク上に実際に存在する人々にブロードキャストするのではない。非UPnPベースの発見も、他の実施形態で実行することができる。発見は、上述のようにIPを介して実行することができるが、発見は、任意のプロトコルを使用して実行することもできる。つまり、プレゼンテーションが行われているか否かを調べるため、マシンは直接にpingを実することができる。
ユーザの活動の一環として、一実施形態では、ユーザは「View Presentation」モードに入り、ネットワーク全体にわたって進行中のプレゼンテーションのリストを表示することができる。受信側は、プレゼンテーションに関係する通知、例えば、プレゼンテーションが近々ある、または誰かが特に、その受信側に対しプレゼンテーションすることを望んでいるという通知を受け取る場合もある。
本発明は、さらに、プレゼンテーションのコントロール権を他の接続ユーザに移転する機能を含み、それにより、ユーザはプレゼンテーションのコントロール権を他の人に移転することができる。上述したように、プレゼンテーションのコントロール権を受け取ることができる人、およびコントロールのレベルなどに関してプレゼンテーションを所有する人により割り当てられた管理権利があり得る。プレゼンテーションを現在表示している人々のリストを公開するユーザの活動は、権限がある場合に誰かを追加または削除する機能を含む。本発明では、さらに、様々な度合いのコントロールにより同時に複数のプレゼンテーションに出席できることも考慮している、つまり、規則が、プレゼンテーション毎に割り当てられる。
本発明は、さらに、可能な場合に1:1および1:nのプロジェクションシナリオを組み合わせる機能を含む。プロジェクタなどの代替え表示デバイスはそれぞれのプレゼンテーションのために代替表示デバイスの使用を望むデバイスのキューを持つことができるため、本発明は、デバイスによりプレゼンテーションのキュー操作を管理するメカニズムを含む。アプリケーションがプレゼンテーションの中でモードを開始することができる。つまり、新しいプレゼンテーションを表示または開始することができる。
上述のように、本発明は、実際に提示されるもの、つまりオーディオとビデオ、オーディオのみ、またはビデオのみを構成する機能を含む。一実施形態では、本発明は、さらに、「レーザポインタ」機能も備える、つまり、ユーザは、「レーザポインティング」などの補充表示効果に対応する補助入力メカニズムを介してプレゼンテーション時に進行中のプレゼンテーション内の何かを一時的にハイライト表示することができる。例えば、マウスの動きは、軌跡のあるレーザポインタをまねたものに変換されることができる。
他の実施形態では、本発明は、公開の態様および非公開の態様を含むコンテンツのリモートプレゼンテーションをコントロールするシステムおよび方法を提示する。この点に関して、本発明では、表示するためクライアントデバイス(他のラップトップ、プロジェクタなど)に送信される(つまり、リモートアクセスされる、ブロードキャストされる、または他の何らかの手段で伝送される)ことを意図されているプレゼンテーションの公開コンテンツと、公開コンテンツがリモート操作されるその操作元のサーバコンピューティングデバイス上にその機能を保存する、例えば、表示されることが意図されているプレゼンテーションの非公開コンテンツとを区別する。本発明のユーザインターフェースの一実施形態では、デフォルトとして、TabletPCコンテキスト内のジャーナルへの「印刷(printing)」などのパブリッシュ活動の前にまたは同時に生成または変更されるコンテンツは、公開コンテンツであり、パブリッシュ活動の後にコンテンツに対し加えられる変更(例えば、注釈、ハイライト表示、他の追加、公開コンテンツのマスキング、削除など)は非公開コンテンツの基礎となる。本発明のユーザインターフェースの他の実施形態では、ユーザはコンテンツに関して何らかのアクションを実行することができ、またそのアクションにより追加、マスク、または削除されるその結果のコンテンツの一部または全部を非公開であると指定することができる。その結果、コンテンツのリモート操作中に、クライアントデバイスは公開コンテンツのみを表示するが、非公開コンテンツは表示のためサーバデバイスに残る。
都合のよいことに、サーバデバイスで非公開コンテンツを含むプレゼンテーションは、クライアントデバイスの表示とそのまま同期している、例えば、スライドショーが描画されているときに、サーバデバイスのスライドが変化すると、それに応じて、クライアントデバイスでのスライドも変化する。また、発表者は、本発明のユーザインターフェースメカニズムを介してクライアントデバイスに送信される静的な公開コンテンツの表示をコントロールすることができる一方で、サーバコンピューティングデバイス上に非公開コンテンツを表示する機能を保持する(例えば、PowerPointスライドショーのページアップ/ページダウンまたは他の類似コマンドを入力することにより)と有益である。
この点に関して、PowerPoint、Journal、Excel、Word、XML、HTMLなどのソフトウェアを使用してコンテンツを提示するときに、発表者は、通常、自分の背をスクリーンに向けている。例えば、聴衆が発表者が話しているのと同じ資料を見ているようにするのはやっかいな場合があり、話し手は別の人に公開スライドデッキを進めるようお願いする必要があったり、あるいは話し手がデッキを進める場合には、話し手はときおりスクリーンに視線を戻してデッキが正しい位置にあることを確認しなければならず、プレゼンテーションの流れを台無しにする可能性がある。そこで、本発明では、話し手が自分の非公開プレゼンテーションをコンピュータ上で進めながらデッキの公開プレゼンテーションをリモートで進める。したがって、本発明では話し手がコンピュータの機能を使用してデッキのコピーに注釈を付けることができるが、聴衆に表示される場合は、デッキの「公開」部分のみが表示され、非公開の注釈は公開表示から隠されるため都合がよい。例えば、話し手は、自分が強調したいポイントをインクで示すか、または話のポイントを追加して、それぞれのプレゼンテーションスライドに注釈を付けることができる。そのスライドデッキが表示される場合(話し手のコンピューティングデバイスのコントロールの下で)、本発明のリモートコントロールの態様では、一般聴衆が話し手のPCに表示されているのと同じスライドを必ず見るようにし、その一方で本発明の公開−非公開の態様では、デッキの公開部分のみが表示されるように非公開の注釈/変更を隠す。
スライドショーのスライド例800は、図8Aに示されている。スライドショーの公開コンテンツ例810は、「Agenda」見出し、および「Introduction」、「Current Status」、「Options for Consideration」、および「Next Steps」を含む様々な話のポイントを含む。本明細書で説明されている他の実施形態と同様、ここで説明されている実施形態では、さらに、人々のグループへのプレゼンテーションという状況において、それらの人々が同じルームにいようと離れた場所に散らばっていようと、コンピューティングデバイスからのコンテンツ810の拡張が可能である。一実施形態では、TabletPCなどのペン型コンピューティングデバイスが考察されている。例えば、ペン型コンピューティングデバイスは、スライドショーのプレゼンテーションなどのドキュメントに注釈を付けるためのすばらしいツールである。そこで、図8Bに例示されているように、公開コンテンツ810を含むスライド800は、話し手のメモ、図面、ビデオ、写真、テキストなどを付けることで注釈付けされることができる。限定されない例として、注釈840は、スライド800を送るときに取り扱わなければならない内容のスライドショーを送り出す話し手の手がかりとなる。他の限定されない例として、スライド800の一部は、ハイライト表示機能830でハイライト表示されることができる。これらの場合のそれぞれにおいて、話し手は、公開コンテンツ810のリモート操作だけを行いたいことがある。したがって、本発明によれば、コンテンツを変更する注釈機能またはハイライト表示機能などのアクションを実行することと併せて、作成者は、クライアントデバイスにリモート操作で送られる公開コンテンツ810の送り元のサーバデバイスにのみ(任意選択で)非公開コンテンツが表示されるように非公開コンテンツとするアクションの結果を指定することができる。上述のように、既定の動作では、さらに、どのコンテンツが公開で、どのコンテンツが非公開かを指定することもできる。例えば、TabletPCのコンテンツがJournalにパブリッシュされると、そのコンテンツは公開コンテンツを含むが、既定では、コンテンツに対しその後加えられた変更は非公開とみなされることができる。したがって、図8Bのコンテンツ(公開および非公開)がリモート操作でクライアントデバイス、例えば他のラップトップ、プロジェクタなどに送られると、クライアントデバイスは図8Aに例示されている表示を受け取る。
図8Cに例示されている他の類似のシナリオでは、作成者は、公開コンテンツ810から詳細を削除またはマスクする、例えば、プレゼンテーションの詳細から取り去りたい場合がある。例えば、公開コンテンツ810は、ビデオ、写真、または話し手がプレゼンテーションの送出中に気を散らすことになりそうだと気づくことになるようなものを含むことがある。そこで、図8Cに例示されているように、作成者は、公開コンテンツ810の一部を削除するか、または他の何らかの形で選別またはマスクし、消去/マスキング結果850を非公開と指定し、図8Cのコンテンツ(公開および非公開)がリモート操作でクライアントデバイスに送られたときに、クライアントデバイスが図8Aに例示されている表示を受け取るが、サーバデバイスでは図8Cのスクリーンを表示するようにできる。任意選択により、発表者は、非公開/公開区別機能をオフにすることができるが、それによりクライアントデバイスは非公開コンテンツも受け取る。また、発表者は公開コンテンツのみ(または非公開コンテンツのみ)を表示するよう選択することもできる。
そこで、本発明は、ドキュメントが代替表示デバイスに送信されるという状況において実施されることができ、ドキュメントは、公開されているドキュメントの第1のバージョンと非公開コンテンツを含む第2のバージョン(第1のバージョンと何らかの点で異なる)の2つのバージョンがあると考えられ、非公開コンテンツは第1のバージョンと第2のバージョンとの差分で表される(追加または削除のいずれか)。上述のように、本発明はそれらに限定されないが、TabletPCなどのペンコンピューティングデバイスは本発明の実施のための環境例となっている。例えば、TabletPCは、Journalにファイルをインポートする機能を含み(第1のバージョン)、それにより、それ以降、タブレットペンは、ドキュメント画像に注釈を入れるかまたは何らかの形で変更するために使用することができる(第2のバージョン)。ファイルは、Journalに「印刷」することによりJournalにインポートされる。レポート、フォーム、プレゼンテーション、スプレッドシート、グラフィックス、写真、Webページなどはすべて、Journalにインポートすることができる。この点で、ドキュメントは、印刷できる場合、Journalにインポートされ、インポートされたファイルのオリジナルのコンテンツを変更することなく注釈が付けられる。例えば、会議へ行く途中の人が、会議議題(例えば、PDF(Portable Document Format)ファイル、文書処理ドキュメント、スプレッドシート、スライドショーファイル、電子メールファイルなど)をJournalにインポートすることができる。その後、タブレットペンを使用して、取扱項目の議題についてメモがとられる。ドキュメントに対する印象は、単純に記録され、表示することができる。例えば、TabletPCのコンテンツを会議室の大型スクリーンモニタにプロジェクトし、ドキュメントの画像をJournalにインポートし、かつ/またはドキュメント画像にコメントを入れる作業を開始することができる。
Journalライタは、Journalメモへのドキュメント画像のインポートを管理する仮想プリンタである。印刷のためのプログラムは、ドキュメントを物理プリンタに印刷するときと同様に、Journalライタに送信することができる。Journalは、その後、ドキュメントをJournalメモの背景として使用されるドキュメント画像に変換することができる。Journalでは、ドキュメント画像は、異なるプログラムの印刷コマンドを使用する(ファイルが他のプログラム内で開いている場合に使用する)、Journal Importコマンドを使用する(Journalで作業しておりファイルをインポートしたい場合に使用する)、および/またはWindows(登録商標)Explorerなどの検索ソフトウェアのドラッグ&ドロップ機能を使用する(ファイルを直接Journalにドラッグする場合に使用する)など少なくとも3つの方法で作成することができる。Journalにインポートされたファイルは、一組の背景画像として新しいメモ内にインポートされる。これらの背景画像のコンテンツは、Journal内では変更できず、したがって、これらの背景画像は本発明による代替表示デバイスに送信されるプレゼンテーションの公開コンテンツとすることに適している。
本発明を実施する方法は、例えば、該当するAPI、ツールキット、ドライバコード、オペレーティングシステム、コントロール、スタンドアロンまたはダウンロード可能ソフトウェアオブジェクトなど、複数あり、これらにより、アプリケーションおよびサービスは本発明の無線をプロジェクションシステムおよび方法を使用することができる。本発明では、API(またはその他のソフトウェアオブジェクト)の観点から本発明の使用を考察するだけでなく、コンテンツを受け取るかつ/またはデバイス発見およびコンテンツ受け入れおよび本発明による配信プロトコルに従って要求を行うソフトウェアまたはハードウェアオブジェクトの面からも考察している。したがって、本明細書で説明されている本発明の実施は、全部ハードウェアである態様、一部ハードウェアで一部ソフトウェアである態様、さらにソフトウェアだけの態様を持ちうる。
上述のように、本発明の実施例は、様々なコンピューティングデバイスおよびネットワークアーキテクチャに関して説明されているが、基本概念は、コンテンツを他のデバイスにプロジェクトするか、またはプロジェクトされたコンテンツを他のデバイスから受信することが望ましいいかなるコンピューティングデバイスまたはシステムにも適用されることができる。例えば、本発明のアルゴリズムおよびハードウェアの実施は、デバイス上の別々のオブジェクトとして、他のオブジェクトの一部として、再使用可能なコントロールとして、サーバからダウンロード可能なオブジェクトとして、デバイスまたはオブジェクトとネットワークとの間の「仲介者」として、分散オブジェクトとして、ハードウェアとして、メモリ内に、前記の組み合わせなどで提供されるコンピューティングデバイスのオペレーティングシステムに適用されることができる。プログラミング言語例、名前および例は本明細書では様々な選択肢を表すものとして選択されているが、それらの言語、名前、および例は、限定することを意図していない。当業者であれば、本発明の様々な実施形態により実現されるのと同じ、類似の、または同等の機能を実現するオブジェクトコードおよび命名法を提供する様々な方法があることを理解するであろう。
上述のように、本明細書で説明されている様々な手法は、ハードウェアまたはソフトウェアにより、あるいは適切であれば、両方の組み合わせにより実施することができる。したがって、本発明の方法および装置、またはその態様または一部は、フロッピー(登録商標)ディスク、CD−ROM、ハードドライブ、または他のマシン可読記憶媒体などの有形媒体内に実現されるプログラムコード(つまり、命令)の形をとることができ、プログラムコードがコンピュータなどのマシンにロードされ実行されるときに、そのマシンは本発明を実施する装置となる。プログラム可能コンピュータ上でプログラムコードを実行する場合、コンピューティングデバイスは、一般に、プロセッサ、プロセッサにより読み取り可能な記憶媒体(揮発性および不揮発性メモリおよび/または記憶素子を含む)、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスを備える。例えばデータ処理API、再使用可能コントロールなどを使用して本発明の無線コンテンツプロジェクション手法を実施または使用することができる1つまたは複数のプログラムは、コンピュータシステムと通信するために高水準手続き型またはオブジェクト指向プログラミング言語で実施するのが好ましい。しかし、プログラムは、必要ならば、アセンブリ言語またはマシン語とすることができる。いずれの場合も、言語はコンパイル型言語またはインタプリタ型言語であり、ハードウェアの実施と組み合わせられる。
本発明の方法および装置は、電気配線またはケーブル配線、光ファイバ、または他の形態の伝送などの、何らかの伝送媒体を介して伝送されるプログラムコードの形で実現される通信を介して実施することも可能であり、プログラムコードがEPROM、ゲートアレイ、プログラム可能論理回路(PLD)、クライアントコンピュータなどのマシンにより受信されロードされときに、マシンは本発明を実施する装置となる。汎用プロセッサに実施する場合、プログラムコードはプロセッサと連携して、本発明の機能を呼び出す動作をする独自装置を実現する。さらに、本発明に関連して使用される格納手法は、常に、ハードウェアとソフトウェアの組み合わせとすることができる。
本発明は様々な図の好ましい実施形態に関して説明してきたが、逸脱することなく本発明の同じ機能を実行するために、他の類似の実施形態を使用されることができる。また、説明されている実施形態に修正および追加を加えることができることが理解されるであろう。例えば、本発明のネットワーク環境例はピアツーピアネットワーク接続環境などのネットワーク接続環境に関して説明されているが、当業者であれば、本発明はそれに限定されず、有線または無線を問わず、ゲーム機、ハンドヘルドコンピュータ、携帯型コンピュータなどの任意のコンピューティングデバイスまたは環境に適用することができ、また通信ネットワークを介して接続されたそのような任意の個数のコンピューティングデバイスに適用することができ、またネットワーク越しに対話操作することもできる。さらに、ハンドヘルドデバイスのオペレーティングシステムおよびその他のアプリケーション特有のオペレーティングシステムを含む、様々なコンピュータプラットフォームは、特に無線ネットワーク接続デバイスの数が増え続ける場合にも対処し得ることが強調されなければならない。
実施例ではラップトップおよびプロジェクタの環境で本発明を利用することを扱っているが、本発明はそのように限定されず、むしろ、本発明の機能を含む一方のコンピューティングデバイスから本発明による機能をさらに含む1つまたは複数のコンピューティングデバイスにコンテンツを無線で配信するように実施されることができる。さらに、ソースコンピューティングデバイスは、ディスプレイを独立して持つ必要すらない。例えば、最小限の処理リソースを備えるモバイル記憶デバイスでは、コンテンツは、独立した表示機能なしで本発明によりそのモバイル記憶デバイスから代替表示デバイスに配信することができる。さらに、本発明は、複数の処理チップまたはデバイスにより、またはそれらにまたがって実施することができ、記憶装置も同様に、複数のデバイスにまたがって実施されることができる。したがって、本発明は、単一の実施形態に限られるべきではなく、請求項による広がりと範囲において解釈されるべきである。
従来技術を例示するブロック図である。 本発明を実施することが可能なコンピューティングデバイスを備えたネットワーク環境例を示すブロック図である。 本発明を実施することが可能なコンピューティングデバイス例を示すブロック図である。 本発明を実施することが可能なコンピューティングデバイス例を示すブロック図である。 本発明を適用した無線プロジェクションアプリケーションを起動するシーケンス例を示す図である。 本発明の実施に関して使用されるアーキテクチャ例を示す図である。 本発明の実施に関して使用されるアーキテクチャ例を示す図である。 本発明の一実施形態として代替表示デバイスに対する処理手順を示した流れ図である。 本発明の一実施形態として代替表示デバイスをコントロール手順を示した流れ図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した様々なユーザインターフェースのシナリオについてのスクリーンショット例を示す図である。 本発明を適用した公開コンテンツと非公開コンテンツとの区別を示す様々なシナリオについてスクリーンショット例を示す図である。 本発明を適用した公開コンテンツと非公開コンテンツとの区別を示す様々なシナリオについてスクリーンショット例を示す図である。 本発明を適用した公開コンテンツと非公開コンテンツとの区別を示す様々なシナリオについてスクリーンショット例を示す図である。
符号の説明
110a コンピューティングデバイス
110b コンピューティングデバイス
110c オブジェクト
110d オブジェクト
110e コンピューティングデバイス
14 通信ネットワーク/バス
10a サーバオブジェクト
10b サーバオブジェクト
20 データベース

Claims (88)

  1. コンピューティングデバイスから代替表示デバイスにコンテンツをプロジェクトする方法であって、
    ユーザインターフェースメカニズムを介して、使用可能な代替表示デバイスに対応した少なくとも1つのインディケーションを表示するステップと、
    前記ユーザインターフェースメカニズムを介して、前記少なくとも1つのインディケーションにより使用可能であるとして示されている代替表示デバイスから少なくとも1つの代替表示デバイスを選択するステップと、
    前記選択された少なくとも1つの代替表示デバイスに対して前記コンテンツを送信するステップと、
    を含むことを特徴とする方法。
  2. さらに加えて、
    ディスカバリプロトコルに従って前記コンテンツを受信することができる前記使用可能な代替表示デバイスを発見するステップを含む、ことを特徴とする請求項1に記載の方法。
  3. 前記送信するステップは、前記コンピューティングデバイスと、前記選択された少なくとも1つの代替表示デバイスとの間で、リモーティングプロトコルを介して、リモートセッションを確立するステップを含む、ことを特徴とする請求項1に記載の方法。
  4. 前記リモーティングプロトコルはリモートデスクトッププロトコルであり、前記リモートセッションはターミナルサービス(TS)セッションである、ことを特徴とする請求項3に記載の方法。
  5. さらに加えて、
    前記選択された少なくとも1つの代替表示デバイス上に描画されるとき前記コンテンツの少なくとも一部が隠されるように指定するステップを含む、ことを特徴とする請求項1に記載の方法。
  6. 前記送信するステップは、前記コンテンツを描画するときに前記選択された少なくとも1つの代替表示デバイス上に描画される追加コンテンツを送信するステップを含む、ことを特徴とする請求項1に記載の方法。
  7. 前記追加コンテンツは、前記コンピューティングデバイスに入力され、描画される前記コンテンツ上の照明ポイントとして表示される、ことを特徴とする請求項6に記載の方法。
  8. 前記追加コンテンツは、前記コンピューティングデバイスのマウス入力であり、(A)色付きドット、(B)レーザポインタ、および(C)軌跡のあるポインタのいずれかとして前記少なくとも1つの代替表示デバイスのディスプレイ上に表示される、ことを特徴とする請求項7に記載の方法。
  9. 前記送信するステップは、
    前記選択された少なくとも1つの代替表示デバイスのうちの1つの代替表示デバイスに対してコンテンツを送信する要求を送信するステップと、
    前記送信するステップに従ってコンテンツの前記送信を許可する前記代替表示デバイスからの応答を待つステップと、
    を含むことを特徴とする請求項1に記載の方法。
  10. 前記コンテンツは、前記送信するステップに対する応答として前記選択された少なくとも1つの代替表示デバイス上に実質的に同時に表示される、ことを特徴とする請求項1に記載の方法。
  11. 前記ディスカバリプロトコルは、ユニバーサルプラグ&プレイ(UPnP)プロトコルである、ことを特徴とする請求項2に記載の方法。
  12. さらに加えて、前記ユーザインターフェースを介して、前記選択された少なくとも1つの代替表示デバイスへの前記送信に従って送信される前記コンテンツを指定するステップを含む、ことを特徴とする請求項1に記載の方法。
  13. さらに加えて、前記コンピューティングデバイスと、前記選択された少なくとも1つの代替表示デバイスとの間のリモートセッション毎に、前記ユーザインターフェースを介して前記リモートセッションに関連付けられた信号強度のインディケーションを表示するステップを含む、ことを特徴とする請求項3に記載の方法。
  14. 障害、距離、および維持されるべきデータレートのうちの少なくとも1つに基づいて、リモートセッション毎に所定数のレベルの信号品質が示されることを特徴とする請求項13に記載の方法。
  15. さらに加えて、前記リモートセッションの前記信号強度に関連付けられたファイルを格納するステップを含む、ことを特徴とする請求項13に記載の方法。
  16. 請求項1に記載の方法を実行するためのコンピュータ実行可能命令を備えたコンピュータ実行可能モジュールを有する、ことを特徴とするコンピュータ可読媒体。
  17. 請求項1に記載の方法を実行する手段を含む、ことを特徴とするコンピューティングデバイス。
  18. 請求項1に記載の方法を実行するためのコンピュータ実行可能命令を搬送することを特徴とする変調データ信号。
  19. 少なくとも1つのプロジェクションプロトコルに従って他のコンピューティングデバイスにプロジェクトされるコンテンツを持つコンピューティングデバイスのユーザとインターフェースする方法を実施するための、コンピュータ実行可能命令を有する少なくとも1つのコンピュータ可読媒体であって、前記方法は、
    前記コンピューティングデバイス上にユーザインターフェースを表示ステップと、
    少なくとも1つの代替表示デバイスが前記少なくとも1つのプロジェクションプロトコルに従って前記コンテンツを受信することができるか否かを発見するステップと、
    前記発見するステップに従って、少なくとも1つの代替表示デバイスが前記コンテンツを受信することができる場合には、前記ユーザインターフェースを介して前記少なくとも1つの代替表示デバイスの少なくとも1つのインディケーションを表示するステップと、
    を含むことを特徴とする少なくとも1つのコンピュータ可読媒体。
  20. 前記方法はさらに加えて、
    前記ユーザインターフェースを介して前記コンテンツを選択するステップを含む、ことを特徴とする請求項19に記載の少なくとも1つのコンピュータ可読媒体。
  21. 前記発見するステップは、前記少なくとも1つの代替表示デバイスが前記少なくとも1つのプロジェクションプロトコルに従って前記コンテンツを受信することができるか否かを発見するステップを含む、ことを特徴とする請求項19に記載の少なくとも1つのコンピュータ可読媒体。
  22. 前記発見するステップは、前記少なくとも1つの代替表示デバイスに対応した少なくとも1つのインターネットプロトコル(IP)アドレスを発見するステップを含む、ことを特徴とする請求項19に記載の少なくとも1つのコンピュータ可読媒体。
  23. 前記発見するステップは、ユニバーサルプラグ&プレイ(UPnP)プロトコルに従ってその存在を広告する少なくとも1つの代替表示デバイスを検出するステップを含む、ことを特徴とする請求項19に記載の少なくとも1つのコンピュータ可読媒体。
  24. 前記方法はさらに加えて、
    前記ユーザインターフェースを介して前記少なくとも1つのインディケーションのうちから1つのインディケーションを選択するステップと、
    前記選択されたインディケーションに関連付けられた前記代替表示デバイスの特性をコントロールするステップと、
    を含むことを特徴とする請求項19に記載の少なくとも1つのコンピュータ可読媒体。
  25. 前記コントロールするステップは、リモートデスクトッププロトコル(RDP)に従ってコントロールするステップを含む、ことを特徴とする請求項24に記載の少なくとも1つのコンピュータ可読媒体。
  26. 前記方法は、さらに加えて、
    前記ユーザインターフェースを介して前記少なくとも1つのインディケーションのうちから1つのインディケーションを選択するステップと、
    前記選択されたインディケーションに関連付けられた前記代替表示デバイスへのリモート接続を作成するステップを含む、ことを特徴とする請求項19に記載の少なくとも1つのコンピュータ可読媒体。
  27. 前記方法は、さらに加えて、
    前記リモート接続を介して前記選択されたインディケーションに関連付けられた前記代替表示デバイスに前記コンテンツを送信するステップを含む、ことを特徴とする請求項26に記載の少なくとも1つのコンピュータ可読媒体。
  28. 前記作成するステップは、(A)前記代替表示デバイスとのターミナルサービスセッションを作成するステップ、および(B)ユニバーサルプラグ&プレイ(UPnP)技術とのリモート接続を作成するステップ、のうち少なくとも一方を含むことを特徴とする請求項26に記載の少なくとも1つのコンピュータ可読媒体。
  29. 前記方法は、さらに加えて、
    前記ユーザインターフェースを介して前記少なくとも1つのインディケーションのうちから1つのインディケーションを選択するステップと、
    前記選択されたインディケーションに関連付けられた前記代替表示デバイスへのリモート接続を切断するステップと、を含むことを特徴とする請求項19に記載の少なくとも1つのコンピュータ可読媒体。
  30. 別々のコンテンツを表示することにより、コンピューティングデバイスのディスプレイを分割することができる複数のディスプレイを備えたコンピューティングデバイスのユーザとインターフェースする方法を実施するための、コンピュータ実行可能命令を格納する少なくとも1つのコンピュータ可読媒体であって、前記方法は、
    前記コンピューティングデバイスの前記複数のディスプレイのうち第1のディスプレイにユーザインターフェースを表示するステップと、
    少なくとも1つの代替表示デバイスが、少なくとも1つの拡張プロトコルに従って前記コンピューティングデバイスの前記複数のディスプレイのうちの1つの少なくとも一部に関連付けられているコンテンツを受信することができるか否かを発見するステップと、
    前記発見するステップに従って、少なくとも1つの代替表示デバイスが前記コンテンツを受信することができる場合に、前記ユーザインターフェースを介して前記少なくとも1つの代替表示デバイスの少なくとも1つのインディケーションを表示するステップと、
    を含むことを特徴とする少なくとも1つのコンピュータ可読媒体。
  31. 前記方法は、さらに加えて、
    前記ユーザインターフェースを介して前記複数のディスプレイのうちの1つの少なくとも一部分を選択するステップと、
    前記ユーザインターフェースを介して前記少なくとも1つのインディケーションのうちから1つのインディケーションを選択するステップと、
    前記選択されたインディケーションに関連付けられた前記代替表示デバイスへのリモート接続を作成するステップと、
    前記リモート接続を介して前記選択されたインディケーションに関連付けられた前記代替表示デバイスに前記表示の前記少なくとも一部を送信するステップと、
    を含むことを特徴とする請求項30に記載の少なくとも1つのコンピュータ可読媒体。
  32. 前記作成するステップは、前記代替表示デバイスとのターミナルサービスセッションを作成するステップを含む、ことを特徴とする請求項31に記載の少なくとも1つのコンピュータ可読媒体。
  33. 前記送信するステップは、前記代替表示デバイス上の特別なインディケーションとして前記ディスプレイの前記少なくとも少なくとも一部により受信される入力を送信するステップを含む、ことを特徴とする請求項31に記載の少なくとも1つのコンピュータ可読媒体。
  34. 前記送信するステップは、前記代替表示デバイス上の色付きマークとして前記複数のディスプレイのうちの1つの前記少なくとも一部により受信されるポインタ入力を送信するステップを含む、ことを特徴とする請求項33に記載の少なくとも1つのコンピュータ可読媒体。
  35. 前記発見するステップは、前記少なくとも1つの代替表示デバイスが前記少なくとも1つの拡張プロトコルに従って前記コンピューティングデバイスの前記ディスプレイの前記少なくとも少なくとも一部を受信することができるか否かを発見するステップを含む、ことを特徴とする請求項30に記載の少なくとも1つのコンピュータ可読媒体。
  36. 前記発見するステップは、前記少なくとも1つの代替表示デバイスに対応する少なくとも1つのインターネットプロトコル(IP)アドレスを発見するステップを含む、ことを特徴とする請求項30に記載の少なくとも1つのコンピュータ可読媒体。
  37. 前記発見するステップは、ユニバーサルプラグ&プレイ(UPnP)プロトコルに従ってその存在を広告する少なくとも1つの代替表示デバイスを検出するステップを含む、ことを特徴とする請求項30に記載の少なくとも1つのコンピュータ可読媒体。
  38. 前記方法は、さらに加えて、
    前記ユーザインターフェースを介して前記少なくとも1つのインディケーションのうちから1つのインディケーションを選択するステップと、
    前記選択されたインディケーションに関連付けられた前記代替表示デバイスの特性をコントロールするステップと、
    を含むことを特徴とする請求項30に記載の少なくとも1つのコンピュータ可読媒体。
  39. 前記コントロールするステップは、リモートデスクトッププロトコル(RDP)に従ってコントロールするステップを含む、ことを特徴とする請求項38に記載の少なくとも1つのコンピュータ可読媒体。
  40. 前記方法は、さらに加えて、
    前記ユーザインターフェースを介して前記少なくとも1つのインディケーションのうちから1つのインディケーションを選択するステップと、
    前記選択されたインディケーションに関連付けられた前記代替表示デバイスへのリモート接続を切断するステップと、
    を含むことを特徴とする請求項30に記載の少なくとも1つのコンピュータ可読媒体。
  41. 操作または描画のために第1のコンピューティングデバイスから少なくとも1つの第2のコンピューティングデバイスにコンテンツを送信する方法を実行するためのコンピュータ実行可能命令を格納した少なくとも1つのコンピュータ可読媒体であって、前記方法は、
    前記少なくとも1つのコンピュータ可読媒体を備えた前記第1のコンピューティングデバイスからコンテンツを受信するために利用することができる少なくとも1つの第2のデバイスを発見するステップであって、前記少なくとも1つの第2のデバイスは(A)少なくとも1つの使用可能な無線プロジェクタと、(B)少なくとも1つの使用可能な他のコンピュータのうちの少なくとも一方を備えるステップと、
    発見された前記少なくとも1つの第2のデバイスを前記発見するステップに従って使用可能なものとして反映するリストを、ユーザインターフェースを介して表示するステップと、
    前記リストからデバイスを選択するステップと、
    前記デバイスとのリモートコンピューティングセッションを確立するステップと、
    前記リモートコンピューティングセッションに関連付けられたプロトコルに従って前記デバイスにコンテンツを送信するステップと、
    を含むことを特徴とする少なくとも1つのコンピュータ可読媒体。
  42. 前記方法は、さらに加えて、前記ユーザインターフェースを介して設定を構成するステップを含み、前記設定は、前記確立するステップに従って確立された前記リモートコンピューティングセッションの少なくとも1つの特性を規定する、ことを特徴とする請求項41に記載の少なくとも1つのコンピュータ可読媒体。
  43. 第1のコンピューティングデバイスから少なくとも1つの他のコンピューティングデバイスにコンテンツをプロジェクトする方法であって、
    前記第1のコンピューティングデバイスをプレゼンテーションモードに設定するステップと、
    前記第1のコンピューティングデバイス上でコンテンツプロジェクションに関連付けられたソフトウェア機能をインスタンス化するステップと、
    少なくとも1つの他のコンピューティングデバイスがプロジェクトされたコンテンツの受信および表示に使用可能であるか否かをディスカバリモードに従って発見するステップと、
    少なくとも1つの他のコンピューティングデバイスが発見された場合に、前記少なくとも1つの使用可能な他のコンピューティングデバイスを反映したユーザインターフェースを表示するステップと、
    前記ユーザインターフェースを介して、(A)プロジェクトするコンテンツを選択するステップ、(B)プロジェクトに使用するターゲットデバイスを選択するステップ、および(C)プロジェクション特性を構成するステップのうちの少なくとも1つのステップと、
    を含むことを特徴とする方法。
  44. 前記インスタンス化するステップは、(A)前記第1のコンピューティングデバイスの起動時に、および(B)前記第1のコンピューティングデバイスをプレゼンテーションモードに前記設定することの一部として、のいずれか一方で、コンテンツプロジェクションに関連付けられた前記ソフトウェア機能をインスタンス化するステップを含む、ことを特徴とする請求項43に記載の方法。
  45. 前記設定するステップは、(A)「スタート」メニューの下のメニュー位置、(B)前記ユーザインターフェースのトップレベルのユーザインターフェースメカニズム、(C)表示バー部、(D)ショートカット、および(E)サイドバーのいずれかを介して、前記第1のコンピューティングデバイスをプレゼンテーションモードに設定するステップを含む、ことを特徴とする請求項43に記載の方法。
  46. 前記構成するステップは、(A)前記プロジェクト用のパスワードを設定すること、(B)クローニングモードまたは拡張モードを選択すること、(C)スクリーン解像度を選択すること、および(D)ビデオまたはオーディオおよびビデオを選択すること、のうちの少なくとも1つを含む、ことを特徴とする請求項43に記載の方法。
  47. (A)クローニングモードまたは拡張モードの前記選択はデフォルトとしてクローニングモードであること、(B)前記スクリーン解像度の前記選択のデフォルトは現在の設定であること、(C)ビデオまたはオーディオおよびビデオの前記選択のデフォルトはオーディオおよびビデオであること、のうちの少なくとも1つであることを特徴とする請求項46に記載の方法。
  48. 前記第1のコンピューティングデバイスをプレゼンテーションモードに前記設定するステップは、オペレーティングシステムのタスクを実行するステップを含むことを特徴とする請求項43に記載の方法。
  49. オペレーティングシステムのタスクの前記実行は、(A)通知をオフにすること、(B)スクリーンブランキングをオフにすること、(C)プロジェクトされるコンテンツ以外のソースからのオーディオを禁止すること、(D)配電/節電の態様を変更すること、(E)デスクトップバックグラウンドを変更すること、および(F)スクリーン解像度を変更すること、のうち少なくとも1つを含むことを特徴とする請求項48に記載の方法。
  50. 前記ディスカバリモードに従って発見するステップは、プレゼンテーションモードが設定された後所定の時間の間発見を行うことを含む、ことを特徴とする請求項43に記載の方法。
  51. 前記ディスカバリモードに従って発見するステップは、ユーザの介入なしで、前記第1のコンピューティングデバイスのバックグラウンドプロセスで実行される、ことを特徴とする請求項43に記載の方法。
  52. 前記表示するステップは、前記ユーザインターフェースを介して、(A)プロジェクションのステータス、(B)少なくとも1つの他のコンピューティングデバイスから切断できることのインディケーション、(C)他の追加デバイスが使用可能であることのインディケーション、(D)前記発見するステップに従って発見された少なくとも1つの他のコンピューティングデバイスが現在コンテンツを受信できないことのインディケーション、および(E)最近使われた他のデバイスについては前記発見をバイパスするように選択することができる最近使われた(MRU)他のデバイスのインディケーション、のうちの少なくとも1つを表示することを特徴とする請求項43に記載の方法。
  53. さらに加えて、
    名前およびパスワードを前記コンテンツに割り当てるステップであって、それにより、前記名前およびパスワードがプロジェクションのために選択されたターゲットデバイスから受信された場合にのみ前記選択されたターゲットデバイスに送信するステップを含む、ことを特徴とする請求項43に記載の方法。
  54. さらに加えて、プロジェクトするコンテンツの前記選択およびプロジェクションのためのターゲットデバイスの前記選択に応答して、前記第1のコンピューティングデバイスと前記ターゲットデバイスターゲットデバイスとの間でリモートセッションを作成するステップと、前記リモートセッションを経由して前記コンテンツを前記ターゲットデバイスにプロジェクトするステップと、を含むことを特徴とする請求項43に記載の方法。
  55. 請求項43の方法を実行するためのコンピュータ実行可能命令を備えたコンピュータ実行可能モジュールを格納する、ことを特徴とするコンピュータ可読媒体。
  56. 請求項43に記載した方法を実行する手段を含む、ことを特徴とするコンピューティングデバイス。
  57. 請求項43に記載した方法を実行するためのコンピュータ実行可能命令を搬送することを特徴とする変調データ信号。
  58. サーバコンピューティングデバイスからクライアント表示デバイスにコンテンツをプロジェクトするためのサーバコンピューティングデバイスであって、
    ディスカバリプロトコルに従って、前記コンテンツを受信することができる使用可能なクライアント表示デバイスを発見し、コントロールする動作をするディスカバリコンポーネントと、
    少なくとも1つのリモーティングプロトコルに従って、前記サーバコンピューティングデバイスと使用可能なクライアント表示デバイスとの間のリモートセッションを確立し、プロジェクションのためにコンテンツをパッケージし、パッケージされたコンテンツを選択されたクライアント表示デバイスに送信する動作をするリモートセッションコンポーネントと、
    (A)前記ディスカバリコンポーネントにより発見され、コントロールされることができる前記使用可能なクライアント表示デバイスに対応した少なくとも1つのインディケーションを表示すること、および(B)ターゲットクライアント表示デバイスのインディケーションの選択およびコンテンツの選択を受け取り、それにより前記リモートセッションコンポーネントは前記ターゲットクライアント表示デバイスと前記サーバコンピューティングデバイスのリモートセッションを作成し、前記コンテンツは前記ターゲットクライアント表示デバイスにプロジェクトされること、のうちの少なくとも1つに対するユーザインターフェースコンポーネントと、
    を具備したことを特徴とするサーバコンピューティングデバイス。
  59. 前記ディスカバリコンポーネントは、前記ディスカバリプロトコルに従って使用可能であることを広告しているクライアント表示デバイスを発見する、ことを特徴とする請求項58に記載のサーバコンピューティングデバイス。
  60. 前記少なくとも1つのリモーティングプロトコルは、前記リモートデスクトッププロトコルを含み、前記リモートセッションはターミナルサービス(TS)セッションである、ことを特徴とする請求項58に記載のサーバコンピューティングデバイス。
  61. 選択されたクライアント表示デバイスにコンテンツを送信する前に、前記リモートセッションコンポーネントは許可要求を前記選択されたクライアント表示デバイスに送信し、コンテンツの前記送信を許可する前記選択されたクライアント表示デバイスからの応答を待つ、ことを特徴とする請求項58に記載のサーバコンピューティングデバイス。
  62. 前記ディスカバリプロトコルは、ユニバーサルプラグ&プレイ(UPnP)プロトコルであることを特徴とする請求項58に記載のサーバコンピューティングデバイス。
  63. コンピューティングデバイスを代替表示デバイスに接続し、前記コンピューティングデバイスから前記代替表示デバイスにコンテンツをプロジェクトする方法であって、
    プロジェクトされるコンテンツを受信し、描画することができる少なくとも1つの代替表示デバイスをディスカバリプロトコルに従って発見するステップと、
    プロジェクトされるコンテンツを選択すると共に、代替表示デバイスを前記少なくとも1つの代替表示デバイスから選択するステップであって、それにより前記選択されたコンテンツを前記選択された代替表示デバイスに表示するステップと、
    前記コンピューティングデバイスと前記選択された代替表示デバイスとの間の接続を確立するステップと、
    を含むことを特徴とする方法。
  64. 前記接続を確立するステップは、
    前記コンピューティングデバイスのリモートコネクタコンポーネントによりチケットを生成するステップと、
    前記チケットを前記選択された代替表示デバイスに送信するステップと、
    前記リモートコネクタコンポーネントにより前記送信に対する応答を受信するステップと、
    を含むことを特徴とする請求項63に記載の方法。
  65. 前記チケットは、(A)前記コンピューティングデバイスに接続する方法に関する情報、および(B)接続で使用するモードに関する情報の少なくとも1つを含む、ことを特徴とする請求項64に記載の方法。
  66. 前記モードは、プロジェクションモード、拡張デスクトップモード、および特定アプリケーション用モードのうちの少なくとも1つのモードを含む、ことを特徴とする請求項65に記載の方法。
  67. さらに加えて、
    前記選択されたコンテンツを前記選択された代替表示デバイスに前記接続を介して送信するステップを含む、ことを特徴とする請求項63に記載の方法。
  68. 前記発見するステップは、プロジェクトされたコンテンツを代替表示デバイスから受信できることを示す少なくとも1つの広告を検出するステップを含む、ことを特徴とする請求項63に記載の方法。
  69. 前記発見するステップは、前記ディスカバリプロトコルを介して特定のタイプのデバイスに対する検索要求を発行するステップを含み、それにより前記検索要求を受け取る前記特定タイプのデバイスのすべてのデバイスは前記コンピューティングデバイスにメッセージを送信することにより応答する、ことを特徴とする請求項63に記載の方法。
  70. さらに加えて、前記少なくとも1つの代替表示デバイスのうち1つの代替表示デバイスを発見した後、前記コンピューティングデバイスに前記代替表示デバイスのサービスドキュメントをダウンロードするステップを含む、ことを特徴とする請求項63に記載の方法。
  71. 請求項63の方法を実行するためのコンピュータ実行可能命令を備えたコンピュータ実行可能モジュールを格納する、ことを特徴とするコンピュータ可読媒体。
  72. 請求項63に記載の方法を実行する手段を含む、ことを特徴とするコンピューティングデバイス。
  73. 請求項63に記載の方法を実行するためのコンピュータ実行可能命令を搬送する、ことを特徴とする変調データ信号。
  74. 代替表示デバイスをコントロールする方法であって、
    コンピューティングデバイスと代替表示デバイスとの間との間の接続を、前記コンピューティングデバイスから前記代替表示デバイスにコンテンツをプロジェクトすることを目的として確立するステップと、
    前記代替表示デバイスと前記コンピューティングデバイスとの間の前記プロジェクションセッションを識別し、前記コンピューティングデバイスが前記代替表示デバイスの前記プロジェクションセッションをコントロールすることを許可するセッショントークンを前記代替表示デバイスからするステップと、
    前記セッショントークンの前記許可に従って前記代替表示デバイスをコントロールするステップと、
    を含むことを特徴とする方法。
  75. 前記コントロールするステップは、(A)前記接続を切断すること、(B)前記プロジェクションセッションの前記表示設定を変更すること、(C)前記プロジェクションセッションの前記表示設定を検索すること、(D)前記代替表示デバイスをコントロールする権限をサードパーティのデバイスに移転すること、(E)前記代替表示デバイス上の前記プロジェクションセッションを停止すること、のうちの少なくとも1つを含むことを特徴とする請求項74に記載の方法。
  76. コンピューティングデバイスによりプロジェクトされたコンテンツを、コンテンツ送信デバイスから受信するための方法であって、
    前記コンピューティングデバイスのユーザインターフェースメカニズムを介して、前記コンピューティングデバイスがプロジェクトされたコンテンツの受信に使用可能であることを指定するステップと、
    ディスカバリプロトコルを介して前記コンピューティングデバイスが使用可能であることをブロードキャストするステップであって、使用可能な代替表示デバイスを探している前記コンテンツ送信デバイスは、マシンが使用可能であることのインディケーションを受け取るステップと、
    を含むことを特徴とする方法。
  77. さらに加えて、
    前記ブロードキャストに対する応答として、前記コンテンツ送信デバイスからコンテンツをプロジェクトする要求を受信するステップと、
    要求が受け入れられるか否かをユーザインターフェースを介して指定するステップと、
    要求が受け入れられるか否かの情報を前記コンテンツ送信デバイスに送信するステップと、
    前記要求が受け入れられる場合、前記コンテンツ送信デバイスからコンテンツを受信するステップと、
    を含むことを特徴とする請求項76に記載の方法。
  78. さらに加えて、
    前記コンテンツを前記コンピューティングデバイスのディスプレイに表示するステップを含む、ことを特徴とする請求項77に記載の方法。
  79. 前記表示するステップは、前記ディスプレイ上の前記コンテンツに加えて代替コンテンツを表示する、ことを含むことを特徴とする請求項78に記載の方法。
  80. コンピューティングデバイスから代替表示デバイスがコンテンツを受信するできるようにする方法であって、
    ネットワークを介して前記コンピューティングデバイスから前記コンテンツを配信する要求を受信するステップと、
    前記受信に応答して、ユーザインターフェースを介して前記要求を受け入れ、前記コンピューティングデバイスとのリモートコンピューティングセッションを確立するステップと、
    前記ネットワークを介して前記コンピューティングデバイスから前記コンテンツを受信するステップと、
    を含むことを特徴とする方法。
  81. さらに加えて、
    前記コンピューティングデバイスから受信された前記コンテンツを描画するステップを含む、ことを特徴とする請求項80に記載の方法。
  82. 前記描画するステップは、前記代替表示デバイス上に配置されているアクセシビリティインフラストラクチャに従って、前記コンテンツを描画することを特徴とする請求項81に記載の方法。
  83. 前記描画するステップは、多言語ユーザインターフェースに従って、前記他の言語に応じて前記コンテンツが表示されるように前記コンテンツを描画する、ことを含むことを特徴とする請求項81に記載の方法。
  84. コンピューティングデバイスから代替表示デバイスがコンテンツを受信できるようにする方法であって、
    ユーザインターフェースを介して、前記コンピューティングデバイスからプロジェクトされたコンテンツを受信するよう要求するステップと、
    前記コンピューティングデバイスからプロジェクトされたコンテンツを受信する要求を送信するステップと、
    前記コンピューティングデバイスとのリモートコンピューティングセッションを確立するための情報を含む応答を前記コンピューティングデバイスから受信するステップと、
    前記情報に基づいて前記コンピューティングデバイスとのリモートコンピューティングセッションを確立するステップと、
    前記コンピューティングデバイスから無線で前記コンテンツを受信するステップと、
    を含むことを特徴とする方法。
  85. 複数のコンピューティングデバイスから代替表示デバイスにコンテンツをプロジェクトする方法であって、
    プロジェクトされるコンテンツを受信して描画することができる代替表示デバイスをディスカバリプロトコルに従って発見するステップと、
    リモーティングプロトコルを介して、前記複数のコンピューティングデバイスのうち第1のコンピューティングデバイスと前記代替表示デバイスとの間のリモートセッションを確立するステップと、
    前記リモートセッションを介して、前記第1のコンピューティングデバイスから前記代替表示デバイスに第1のコンテンツを送信するステップと、
    前記第1のコンピューティングデバイスにおける第1のディスプレイを介して前記第1のコンテンツを描画するステップと、
    前記リモートセッションを介して、第2のコンピューティングデバイスから前記代替表示デバイスに第2のコンテンツを送信するステップと、
    前記第2のコンピューティングデバイスにおける第2のディスプレイを介して前記第2のコンテンツを描画するステップと、
    を含むことを特徴とする方法。
  86. 前記リモーティングプロトコルはリモートデスクトッププロトコルであり、前記リモートセッションはターミナルサービス(TS)セッションであることを特徴とする請求項85に記載の方法。
  87. 前記第1のコンテンツの前記描画は、前記第1のコンテンツの前記送信と実質的に同時であることを特徴とする請求項85に記載の方法。
  88. 前記ディスカバリプロトコルは、ユニバーサルプラグ&プレイ(UPnP)プロトコルであることをさらに含む、ことを特徴とする請求項85に記載の方法。
JP2004310059A 2003-10-24 2004-10-25 コンピューティングデバイスからコンテンツをプロジェクトするためのシステムおよび方法 Pending JP2005129068A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US51433803P 2003-10-24 2003-10-24
US10/786,833 US20050091359A1 (en) 2003-10-24 2004-02-25 Systems and methods for projecting content from computing devices

Publications (1)

Publication Number Publication Date
JP2005129068A true JP2005129068A (ja) 2005-05-19

Family

ID=34396620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004310059A Pending JP2005129068A (ja) 2003-10-24 2004-10-25 コンピューティングデバイスからコンテンツをプロジェクトするためのシステムおよび方法

Country Status (10)

Country Link
US (1) US20050091359A1 (ja)
EP (1) EP1526445A3 (ja)
JP (1) JP2005129068A (ja)
KR (1) KR20050039662A (ja)
CN (1) CN100585550C (ja)
AU (1) AU2004218616B2 (ja)
BR (1) BRPI0404504A (ja)
CA (1) CA2484462A1 (ja)
MX (1) MXPA04010402A (ja)
RU (1) RU2389067C2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007065904A (ja) * 2005-08-30 2007-03-15 Seiko Epson Corp ネットワーク型プラグアンドプレイに対応したネットワーク装置
JP2008233912A (ja) * 2007-03-21 2008-10-02 Legend Holdings Ltd 複数の投影源を支持する仮想ネットワーク投影システム及び方法
JP2008252725A (ja) * 2007-03-30 2008-10-16 Fuji Xerox Co Ltd 情報提供システム、情報提供装置、及びプログラム
JP2009503631A (ja) * 2005-07-06 2009-01-29 マイクロソフト コーポレーション ピアツーピア・コンピュータ・ネットワーク会議
WO2010073869A1 (ja) * 2008-12-26 2010-07-01 株式会社東芝 クライアント装置、画面共有システムおよび設定変更方法
JP2014002773A (ja) * 1997-11-14 2014-01-09 Microsoft Corp 多数のクライアント−サーバ・セッションおよび以前のセッションへのユーザのダイナミック再接続をサポートするサーバ・オペレーティング・システム
JP2015501576A (ja) * 2011-10-13 2015-01-15 アルカテル−ルーセント ワイドエリアミラーリングルータ
JP2017076077A (ja) * 2015-10-16 2017-04-20 セイコーエプソン株式会社 通信システム、端末装置、及び、設定方法
US10248373B2 (en) 2009-05-06 2019-04-02 Roche Diagnostics Operations, Inc. Analysis system for analyzing biological samples, data processing method and computer program product
US10817243B2 (en) 2013-11-06 2020-10-27 Sony Corporation Controlling a user interface based on change in output destination of an application

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3707407B2 (ja) 2001-08-28 2005-10-19 セイコーエプソン株式会社 パスワードを投写するプロジェクタ
US6973482B2 (en) * 2001-10-01 2005-12-06 Microsoft Corporation Remote assistance
US7293071B2 (en) * 2002-05-27 2007-11-06 Seiko Epson Corporation Image data transmission system, process and program, image data output device and image display device
JP2004287160A (ja) 2003-03-24 2004-10-14 Seiko Epson Corp 画像表示システム、プロジェクタ、画像表示方法、プロジェクタ制御方法、画像表示プログラムおよびプロジェクタ制御プログラム
CN100478938C (zh) * 2003-06-02 2009-04-15 富可视公司 图像捕捉方法、系统和装置
US8260857B2 (en) 2003-10-23 2012-09-04 Microsoft Corporation One to many data projection system and method
US7716273B2 (en) * 2003-10-24 2010-05-11 Microsoft Corporation Systems and methods for projecting content from computing devices
JP2005208823A (ja) * 2004-01-21 2005-08-04 Seiko Epson Corp プロジェクタのネットワークシステム
DE602005027061D1 (de) * 2004-04-23 2011-05-05 Panasonic Corp Servervorrichtung, client-vorrichtung und netzwerksystem
US8762540B2 (en) * 2004-09-01 2014-06-24 Hewlett-Packard Development Company, L.P. Managing multiple remote computing sessions displayed on a client device
US20060058016A1 (en) * 2004-09-14 2006-03-16 Chien-Wu Yen Wireless projector equipped with embedded download server
US8595377B1 (en) * 2004-12-23 2013-11-26 Cisco Technology, Inc. Apparatus and method for flexible delivery of multiple digital video streams
US20060168661A1 (en) * 2005-01-25 2006-07-27 Kisley Richard V Apparatus and method to implement data management protocols using a projector
US7818350B2 (en) 2005-02-28 2010-10-19 Yahoo! Inc. System and method for creating a collaborative playlist
US8347395B2 (en) * 2005-03-02 2013-01-01 Siemens Aktiengesellschaft Filtering data requiring confidentiality in monitor mirroring
EP1713206A1 (en) * 2005-04-11 2006-10-18 Last Mile Communications/Tivis Limited A distributed communications network comprising wirelessly linked base stations
US20060232592A1 (en) * 2005-04-18 2006-10-19 Faso Paul L Method of Internet surfing to eliminate the risk of receiving malicious code
US7517098B2 (en) 2005-09-07 2009-04-14 Nokia Corporation Method, system, apparatus and software product for presentation notes mode
US7631267B2 (en) * 2006-02-17 2009-12-08 Microsoft Corporation Auxiliary display sidebar integration
US7904563B2 (en) * 2006-03-31 2011-03-08 Microsoft Corporation Establishing and utilizing terminal server dynamic virtual channels
JP5040341B2 (ja) 2006-04-04 2012-10-03 セイコーエプソン株式会社 プロジェクタシステム
US7533349B2 (en) 2006-06-09 2009-05-12 Microsoft Corporation Dragging and dropping objects between local and remote modules
US8135342B1 (en) 2006-09-15 2012-03-13 Harold Michael D System, method and apparatus for using a wireless cell phone device to create a desktop computer and media center
US20080065446A1 (en) * 2006-08-25 2008-03-13 Microsoft Corporation Web collaboration in multiple languages
US20080209048A1 (en) * 2007-02-28 2008-08-28 Microsoft Corporation Loading A Mirror Driver In Remote Terminal Server Session
EP2156348B1 (en) * 2007-05-30 2018-08-01 Ascensia Diabetes Care Holdings AG System and method for managing health data
US8316308B2 (en) 2007-06-08 2012-11-20 Google Inc. Adaptive user interface for multi-source systems
US9483405B2 (en) 2007-09-20 2016-11-01 Sony Interactive Entertainment Inc. Simplified run-time program translation for emulating complex processor pipelines
KR20100108422A (ko) * 2008-01-07 2010-10-06 스마트 테크놀러지스 유엘씨 멀티 모니터 컴퓨터 시스템에서 다수의 소스 컴퓨터로부터의 비디오 데이터를 디스플레이하기 위한 방법 및 장치
US9448814B2 (en) * 2008-02-19 2016-09-20 Google Inc. Bridge system for auxiliary display devices
US20090251607A1 (en) * 2008-04-03 2009-10-08 Slideshow Technologies, Inc. Displaying presentations
US8170123B1 (en) * 2008-04-15 2012-05-01 Desktone, Inc. Media acceleration for virtual computing services
US8230348B2 (en) * 2008-04-28 2012-07-24 Roger Peters Collaboration software with real-time synchronization
JP2010009119A (ja) * 2008-06-24 2010-01-14 Panasonic Electric Works Co Ltd 書込システム
JP4636136B2 (ja) * 2008-07-11 2011-02-23 ソニー株式会社 情報処理装置、情報処理方法、情報処理システム及びプログラム
AU2009290093A1 (en) * 2008-09-03 2010-03-11 Smart Technologies Ulc Method of displaying applications in a multi-monitor computer system and multi-monitor computer system employing the method
US20100146496A1 (en) * 2008-12-02 2010-06-10 Slideshow Technologies, Llc Displaying Presentations
US8473571B2 (en) 2009-01-08 2013-06-25 Microsoft Corporation Synchronizing presentation states between multiple applications
TW201034408A (en) * 2009-03-05 2010-09-16 Zyxel Communications Corp Meeting control system and the management method thereof
EP2230810A1 (de) * 2009-03-19 2010-09-22 TM3 Software GmbH Anbindung mobiler Geräte an einen Terminalserver
US20100259464A1 (en) * 2009-04-14 2010-10-14 Jae Young Chang Terminal and controlling method thereof
US9578113B2 (en) 2009-04-15 2017-02-21 Wyse Technology L.L.C. Method and apparatus for transferring remote session data
US8676926B2 (en) * 2009-04-15 2014-03-18 Wyse Technology L.L.C. System and method for handling remote drawing commands
US9189124B2 (en) * 2009-04-15 2015-11-17 Wyse Technology L.L.C. Custom pointer features for touch-screen on remote client devices
US20100268762A1 (en) * 2009-04-15 2010-10-21 Wyse Technology Inc. System and method for scrolling a remote application
US9553953B2 (en) 2009-04-15 2017-01-24 Dell Products L.P. Method and apparatus for extending capabilities of a virtualization domain to support features available in a normal desktop application
US9448815B2 (en) * 2009-04-15 2016-09-20 Wyse Technology L.L.C. Server-side computing from a remote client device
US9106696B2 (en) * 2009-04-15 2015-08-11 Wyse Technology L.L.C. Method and apparatus for portability of a remote session
US20100268831A1 (en) * 2009-04-16 2010-10-21 Microsoft Corporation Thin Client Session Management
US9195775B2 (en) * 2009-06-26 2015-11-24 Iii Holdings 2, Llc System and method for managing and/or rendering internet multimedia content in a network
GB201014195D0 (en) * 2009-08-26 2010-10-06 Pharos Systems Internat Inc Method for downloading a dataset to an output device
US10489414B2 (en) * 2010-03-30 2019-11-26 Microsoft Technology Licensing, Llc Companion experience
US8447070B1 (en) * 2010-04-19 2013-05-21 Amazon Technologies, Inc. Approaches for device location and communication
US8452877B2 (en) * 2010-04-28 2013-05-28 Lenovo (Singapore) Pte. Ltd. Establishing a remote desktop
US8909704B2 (en) 2010-04-29 2014-12-09 Cisco Technology, Inc. Network-attached display device as an attendee in an online collaborative computing session
US8457118B2 (en) 2010-05-17 2013-06-04 Google Inc. Decentralized system and method for voice and video sessions
US8433759B2 (en) * 2010-05-24 2013-04-30 Sony Computer Entertainment America Llc Direction-conscious information sharing
RU2010126303A (ru) * 2010-06-29 2012-01-10 Владимир Витальевич Мирошниченко (RU) Распознавание сообщений человека
US8504708B2 (en) * 2010-07-01 2013-08-06 Broadcom Corporation Method and system for generic IP multimedia residential gateways
US20120011465A1 (en) * 2010-07-06 2012-01-12 Marcelo Amaral Rezende Digital whiteboard system
US8613061B2 (en) 2010-09-01 2013-12-17 Blackberry Limited Methods and apparatus to implement electronic book viewers
EP2426596B1 (en) * 2010-09-01 2016-11-30 BlackBerry Limited Methods and apparatus to implement electronic book viewers
RU2010136668A (ru) * 2010-09-02 2012-03-20 Владимир Витальевич Мирошниченко (RU) Способ взаимодействия технических средств устройства
US9026603B2 (en) * 2011-06-30 2015-05-05 Broadcom Corporation Device configuration including a master communications device with a slave device extension
TWM419969U (en) * 2011-07-14 2012-01-01 Chuan-Shi Wu Screen transfer control device for smart phone
US9258086B2 (en) * 2011-08-03 2016-02-09 Qualcomm Incorporated Allocating physical hybrid ARQ indicator channel (PHICH) resources
US8756348B2 (en) * 2011-09-14 2014-06-17 Barco N.V. Electronic tool and methods for meetings
US11258676B2 (en) 2011-09-14 2022-02-22 Barco N.V. Electronic tool and methods for meetings
WO2013037980A2 (en) 2011-09-14 2013-03-21 Barco N.V. Electronic tool and methods with audio for meetings
US9213515B2 (en) * 2012-09-24 2015-12-15 At&T Intellectual Property I, L.P. On-demand multi-screen computing
US20140129725A1 (en) * 2012-11-07 2014-05-08 Panasonic Corporation Of North America SmartLight Interaction System
US10942735B2 (en) * 2012-12-04 2021-03-09 Abalta Technologies, Inc. Distributed cross-platform user interface and application projection
CN103873268B (zh) * 2012-12-10 2017-02-15 北京棣南新宇科技有限公司 数据播放的处理系统、控制播放的操控器及其相关设备
US9261262B1 (en) 2013-01-25 2016-02-16 Steelcase Inc. Emissive shapes and control systems
US9759420B1 (en) 2013-01-25 2017-09-12 Steelcase Inc. Curved display and curved display support
US11327626B1 (en) 2013-01-25 2022-05-10 Steelcase Inc. Emissive surfaces and workspaces method and apparatus
CN103235705B (zh) * 2013-02-27 2016-08-17 广东工业大学 多用户无线投影方法及投影网关
US9686323B1 (en) * 2013-03-14 2017-06-20 Teradici Corporation Method and apparatus for sequencing remote desktop connections
JP6286841B2 (ja) * 2013-03-18 2018-03-07 セイコーエプソン株式会社 プロジェクターおよび制御方法
KR102220825B1 (ko) 2013-09-05 2021-03-02 삼성전자주식회사 전자 장치와 전자 장치의 콘텐트 표시방법
CN104636177A (zh) * 2013-11-11 2015-05-20 中兴通讯股份有限公司 一种终端及其控制后台投影的方法
CN104104929A (zh) * 2014-02-11 2014-10-15 中兴通讯股份有限公司 一种远程投影方法、装置及系统
RU2556385C1 (ru) * 2014-04-23 2015-07-10 Иван Иванович Михайличенко Устройство для создания и отображения алфавитно-цифровой и графической информации
JP6484934B2 (ja) * 2014-06-10 2019-03-20 株式会社リコー 通信装置、通信システム、通信管理システム、通信制御方法およびプログラム
JP2016039557A (ja) * 2014-08-08 2016-03-22 株式会社リコー 投影装置、投影システム、および投影方法
WO2016031062A1 (ja) * 2014-08-29 2016-03-03 日立マクセル株式会社 通信システム、通信装置、及び通信端末装置
CN106330844B (zh) 2015-07-02 2020-08-04 阿里巴巴集团控股有限公司 一种跨终端的免登方法和设备
CN105069119B (zh) * 2015-08-12 2020-06-05 上海触控科技发展有限公司 跨平台同步方法与系统
US10963279B2 (en) * 2015-12-31 2021-03-30 International Business Machines Corporation Host-subordinate computing device administration and control using a host virtual machine manager
US10560499B2 (en) 2015-12-31 2020-02-11 Screenbeam Inc. Displaying content from multiple devices
CN110178403B (zh) * 2016-11-01 2022-12-06 夏普株式会社 用于5g nr通信系统中的非对称上行链路/下行链路协议栈和帧结构的方法和装置
US10264213B1 (en) 2016-12-15 2019-04-16 Steelcase Inc. Content amplification system and method
CN106789126B (zh) * 2016-12-16 2021-06-15 联想(北京)有限公司 一种会议联机方法和会议系统
RU2665224C1 (ru) * 2017-11-09 2018-08-28 Российская Федерация, от имени которой выступает Государственная корпорация по космической деятельности "РОСКОСМОС" Способ динамического контроля конфликтных ситуаций в сложных технических системах со средой облачных вычислений
CN110278235A (zh) * 2018-03-16 2019-09-24 上海远动科技有限公司 基于云技术的scada移动监控桌面系统
CN115793950A (zh) 2019-08-29 2023-03-14 荣耀终端有限公司 一种应用于投屏场景的控制方法以及相关设备
US11016717B1 (en) 2019-11-08 2021-05-25 Microsoft Technology Licensing, Llc Selective electronic content casting
US11483367B2 (en) 2019-11-27 2022-10-25 Screenbeam Inc. Methods and systems for reducing latency on a collaborative platform
WO2021134069A1 (en) 2019-12-27 2021-07-01 Abalta Technologies, Inc. Projection, control, and management of user device applications using a connected resource
KR20220057046A (ko) * 2020-10-29 2022-05-09 삼성전자주식회사 전자 장치 및 전자 장치에서 태스크 수행을 위한 장치를 결정하는 방법
CN114691067A (zh) * 2020-12-31 2022-07-01 华为技术有限公司 投屏方法及电子设备
CN114760291B (zh) * 2022-06-14 2022-09-13 深圳乐播科技有限公司 一种文件处理方法及装置
CN114885116B (zh) * 2022-07-12 2022-10-14 深圳乐播科技有限公司 基于云会议桌面的群组讨论方法及相关设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1131059A (ja) * 1997-07-11 1999-02-02 Canon Inc 印刷制御装置および印刷制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2000222163A (ja) * 1999-01-29 2000-08-11 Seiko Epson Corp データ表示システムおよびデータ表示システムにおけるデータ表示制御方法
JP2001034377A (ja) * 1999-07-23 2001-02-09 Sony Corp プレゼンテーションシステム
JP2001042930A (ja) * 1999-07-30 2001-02-16 Hitachi Ltd プラント制御システム、及び補助運転操作卓における通信先切替方法
JP2002099403A (ja) * 2000-09-25 2002-04-05 Toshiba Corp コンピュータシステムおよび表示装置切り替え方法
JP2002244630A (ja) * 2001-02-15 2002-08-30 Canon Inc 情報表示システム、その情報表示方法および記憶媒体
JP2002341434A (ja) * 2001-05-14 2002-11-27 Hitachi Commun Syst Inc プロジェクタ制御装置、プロジェクタ制御方法及び制御用プログラム
JP2003066528A (ja) * 2001-05-23 2003-03-05 Hewlett Packard Co <Hp> インターネット画像プロジェクタ
JP2003198994A (ja) * 2001-12-25 2003-07-11 Seiko Epson Corp プロジェクタの制御システム及び制御方法
JP2005514691A (ja) * 2001-12-26 2005-05-19 インフォーカス コーポレイション イメージレンダリング装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5995102A (en) * 1997-06-25 1999-11-30 Comet Systems, Inc. Server system and method for modifying a cursor image
US6094189A (en) * 1998-04-17 2000-07-25 Quillen; Wendell A. Visual echo remote laser pointer
CN1196009C (zh) * 2000-05-31 2005-04-06 精工爱普生株式会社 投影机、图像显示系统、数据保存及显示方法
US20020059415A1 (en) * 2000-11-01 2002-05-16 Chang William Ho Manager for device-to-device pervasive digital output
US6999912B2 (en) * 2001-03-13 2006-02-14 Microsoft Corporation Provisioning computing services via an on-line networked computing environment
US7180475B2 (en) * 2001-06-07 2007-02-20 Infocus Corporation Method and apparatus for wireless image transmission to a projector
US20030013438A1 (en) * 2001-07-12 2003-01-16 Darby George Eugene Pocket concierge system and method
US20030023681A1 (en) * 2001-07-26 2003-01-30 International Business Machines Corporation Sharing messaging device information among network users
US20030028637A1 (en) * 2001-07-31 2003-02-06 Gross Curtis T. Method and apparatus for providing network access to a shared image projection device
US6708176B2 (en) * 2001-10-19 2004-03-16 Bank Of America Corporation System and method for interactive advertising
JP2003198870A (ja) * 2001-12-25 2003-07-11 Seiko Epson Corp プロジェクタのワイヤレス制御システム及びワイヤレス制御方法
US7044605B2 (en) * 2001-12-26 2006-05-16 Infocus Corporation Image-rendering device
US6917348B2 (en) * 2002-03-20 2005-07-12 International Business Machines Corporation Video display mode for dual displays
US7197562B2 (en) * 2002-04-05 2007-03-27 Infocus Corporation Projector device management system
US20030225621A1 (en) * 2002-04-17 2003-12-04 Hadi Nurcahya System, apparatus and method for advertising through product or service previews
WO2003096669A2 (en) * 2002-05-10 2003-11-20 Reisman Richard R Method and apparatus for browsing using multiple coordinated device

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1131059A (ja) * 1997-07-11 1999-02-02 Canon Inc 印刷制御装置および印刷制御方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2000222163A (ja) * 1999-01-29 2000-08-11 Seiko Epson Corp データ表示システムおよびデータ表示システムにおけるデータ表示制御方法
JP2001034377A (ja) * 1999-07-23 2001-02-09 Sony Corp プレゼンテーションシステム
JP2001042930A (ja) * 1999-07-30 2001-02-16 Hitachi Ltd プラント制御システム、及び補助運転操作卓における通信先切替方法
JP2002099403A (ja) * 2000-09-25 2002-04-05 Toshiba Corp コンピュータシステムおよび表示装置切り替え方法
JP2002244630A (ja) * 2001-02-15 2002-08-30 Canon Inc 情報表示システム、その情報表示方法および記憶媒体
JP2002341434A (ja) * 2001-05-14 2002-11-27 Hitachi Commun Syst Inc プロジェクタ制御装置、プロジェクタ制御方法及び制御用プログラム
JP2003066528A (ja) * 2001-05-23 2003-03-05 Hewlett Packard Co <Hp> インターネット画像プロジェクタ
JP2003198994A (ja) * 2001-12-25 2003-07-11 Seiko Epson Corp プロジェクタの制御システム及び制御方法
JP2005514691A (ja) * 2001-12-26 2005-05-19 インフォーカス コーポレイション イメージレンダリング装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014002773A (ja) * 1997-11-14 2014-01-09 Microsoft Corp 多数のクライアント−サーバ・セッションおよび以前のセッションへのユーザのダイナミック再接続をサポートするサーバ・オペレーティング・システム
JP2009503631A (ja) * 2005-07-06 2009-01-29 マイクロソフト コーポレーション ピアツーピア・コンピュータ・ネットワーク会議
JP2007065904A (ja) * 2005-08-30 2007-03-15 Seiko Epson Corp ネットワーク型プラグアンドプレイに対応したネットワーク装置
JP4687337B2 (ja) * 2005-08-30 2011-05-25 セイコーエプソン株式会社 ネットワーク型プラグアンドプレイに対応したネットワーク装置
JP2008233912A (ja) * 2007-03-21 2008-10-02 Legend Holdings Ltd 複数の投影源を支持する仮想ネットワーク投影システム及び方法
JP2008252725A (ja) * 2007-03-30 2008-10-16 Fuji Xerox Co Ltd 情報提供システム、情報提供装置、及びプログラム
WO2010073869A1 (ja) * 2008-12-26 2010-07-01 株式会社東芝 クライアント装置、画面共有システムおよび設定変更方法
JP2010157005A (ja) * 2008-12-26 2010-07-15 Toshiba Corp 画面共有システム、設定変更方法、クライアント装置、およびプログラム
US10248373B2 (en) 2009-05-06 2019-04-02 Roche Diagnostics Operations, Inc. Analysis system for analyzing biological samples, data processing method and computer program product
JP2015501576A (ja) * 2011-10-13 2015-01-15 アルカテル−ルーセント ワイドエリアミラーリングルータ
US10817243B2 (en) 2013-11-06 2020-10-27 Sony Corporation Controlling a user interface based on change in output destination of an application
JP2017076077A (ja) * 2015-10-16 2017-04-20 セイコーエプソン株式会社 通信システム、端末装置、及び、設定方法

Also Published As

Publication number Publication date
CA2484462A1 (en) 2005-04-24
BRPI0404504A (pt) 2005-06-21
US20050091359A1 (en) 2005-04-28
AU2004218616A1 (en) 2005-05-12
KR20050039662A (ko) 2005-04-29
EP1526445A2 (en) 2005-04-27
RU2004131029A (ru) 2006-04-10
RU2389067C2 (ru) 2010-05-10
AU2004218616B2 (en) 2010-04-01
CN1609780A (zh) 2005-04-27
CN100585550C (zh) 2010-01-27
MXPA04010402A (es) 2005-07-05
EP1526445A3 (en) 2010-02-17

Similar Documents

Publication Publication Date Title
US7716273B2 (en) Systems and methods for projecting content from computing devices
AU2004218616B2 (en) Systems and methods for projecting content from computing devices
US9549007B2 (en) User interface widget unit sharing for application user interface distribution
US7167897B2 (en) Accessories providing a telephone conference application one or more capabilities independent of the teleconference application
JP4425577B2 (ja) データを提示する方法
US9813463B2 (en) Phoning into virtual communication environments
JP3546705B2 (ja) アプリケーション・ウインドウにアノテーション・データを対応付ける方法及び装置、システム、アプリケーション・ウインドウへのアノテーション・データの対応付けを制御するプログラムを格納した記憶媒体
US5857189A (en) File sharing in a teleconference application
EP1581882B1 (en) System and method for rendering content on multiple devices
EP1521427B1 (en) Systems and methods for determining remote device media capabilities
EP2756667B1 (en) Electronic tool and methods for meetings
US20100169791A1 (en) Remote display remote control
US10320865B2 (en) Graphical indicator of presence, identity, and action for media sharing on a display
US20200126513A1 (en) System and method for web enabled application execution and management
US20070078987A1 (en) Multi-mode remote user interface server
US20150089395A1 (en) Electronic tool and methods for meetings
JP2002288098A (ja) プレゼンテーションシステム方法とその装置
Kohno et al. TACT: Mobile Wireless Terminal for Digitally-Enabled Environments

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100813

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110121