(57)【特許請求の範囲】
【請求項１】
遠隔プレゼンテーション・セッションにより通信ネットワークを介してサーバと通信するために、クライアントが実行する方法であって、
前記サーバが送信した表示用のフレームを受信するステップであって、前記フレームは、コンテンツ・ハンドラによって復号化することが可能なメディアを表示するためのウィンドウを含み、前記コンテンツ・ハンドラはスタブ・コンテナと対話し、前記スタブ・コンテナは前記メディアを復号化する際に前記コンテンツ・ハンドラに命令を与えるように形成されており、前記スタブ・コンテナは前記サーバのアプリケーションに対応するプログラムモジュールであり、前記サーバ及び前記クライアントは、前記メディアを保存しているメディアサーバに前記通信ネットワークを介してアクセスし、前記メディアを検索して取得する機能を実行するように形成されている、ステップと、
前記メディアサーバから前記メディアを受信するステップと、
前記スタブ・コンテナが、前記コンテンツ・ハンドラに、前記メディアを復号化するように命令するステップと、
前記サーバから受信した前記フレームと復号化された前記メディアとを組み合わせることにより、表示するイメージを生成するステップと、
前記イメージを表示するステップと
を含む方法。
【請求項２】
前記イメージを表示するステップは、第１のイメージである前記イメージ上に第２のイメージがオーバレイされている第３のイメージを表示するステップを含み、前記第３のイメージは前記フレームに対応する、請求項１に記載の方法。
【請求項３】
前記サーバは、プロキシ・コンテンツ・ハンドラを備え、前記プロキシ・コンテンツ・ハンドラは前記クライアントのコンテンツ・ハンドラに対応する、請求項１に記載の方法。
【請求項４】
前記メディアを受信するステップにおいて、前記メディアは、前記サーバを介することなく前記メディアサーバから受信される、請求項１に記載の方法。
【請求項５】
前記メディアサーバからメディアをどのように受信するかについての指示を前記サーバから受信するステップをさらに含む、請求項４に記載の方法。
【請求項６】
前記サーバから前記メディアを受信するステップを含み、前記サーバは、前記メディアサーバから前記メディアを受信している、請求項１に記載の方法。
【請求項７】
前記サーバとのネゴシエーションプロセスにより、前記メディアの取得の仕方について取り決めを行うステップをさらに有する請求項１に記載の方法。
【請求項８】
前記イメージを表示するステップは、第１のイメージである前記イメージ上に第２のイメージがオーバレイされている第３のイメージを表示するステップであって、前記第２のイメージによっては隠蔽されない前記第１のイメージの部分を表示する、ステップと
をさらに含む請求項１に記載の方法。
【請求項９】
前記第２のイメージは、前記サーバにより指示された位置に表示される、請求項８に記載の方法。
【請求項１０】
メモリを有するサーバを有するシステムであって、
前記メモリはプロセッサにより実行された場合に、遠隔プレゼンテーション・セッションにより通信ネットワークを介してクライアントと通信する手順を前記システムに実行させる命令を有し、前記手順は、
表示用のフレームを前記クライアントに送出するステップであって、前記フレームは、前記クライアントに備わるコンテンツ・ハンドラによって復号化することが可能なメディアを表示するためのウィンドウを含み、前記コンテンツ・ハンドラは前記クライアントに備わるスタブ・コンテナと対話し、前記スタブ・コンテナは前記メディアを復号化する際に前記コンテンツ・ハンドラに命令を与えるように形成されており、前記スタブ・コンテナは前記サーバのアプリケーションに対応するプログラムであり、前記サーバ及び前記クライアントは、前記メディアを保存しているメディアサーバにアクセスして前記メディアを検索して取得する機能を実行するように形成されている、ステップと、
前記クライアントが、前記メディアサーバから前記メディアを受信し、前記フレームと復号化された前記メディアとを組み合わせることにより生成される第１のイメージが前記クライアントで表示された後に、前記クライアントにより生成された第２のイメージが前記第１のイメージ上にオーバレイされている第３のイメージが前記クライアントで表示されるように、前記クライアントに前記第２のイメージを送信するステップ
を少なくとも有する、システム。
【請求項１１】
前記手順が、少なくとも、
前記クライアントからの要求信号を受信するステップであって、前記要求信号は前記メディアを記憶するメディアサーバ宛である、ステップと、
前記メディアを記憶するメディアサーバに前記要求信号を送信するステップと、
前記メディアサーバからの応答信号を受信するステップと、
前記クライアントに前記応答信号を送信するステップと
をさらに有する、請求項１０に記載のシステム。
【請求項１２】
前記手順が、少なくとも、
前記メディアの一部分を前記第２のイメージで置換するステップ
をさらに有する、請求項１０に記載のシステム。
【請求項１３】
前記手順が、前記第２のイメージをオーバレイする位置の指示を前記クライアントに送出するステップをさらに有する、請求項１０に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
コンピュータは、かつては互いに切り離され、他のコンピュータとの対話が最小限またはほとんどなかったが、今や、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、ダイヤルアップ接続などを介して他の様々なコンピュータと接触している。インターネットが広く普及するにつれて、コンピュータ間の接続性がより重要になり、多くの新規アプリケーションおよび技術をもたらしてきた。大規模ネットワークが成長し、低コストのパーソナル・コンピュータが広く利用可能になることにより、多くの人々が、働き、対話し、伝達し、プレイする方法が根本的に変化してきた。
【０００２】
広く普及しているネットワーキングの一形態は、一般に、遠隔プレゼンテーション・システムと呼ばれることがあり、リモート・デスクトップ・プロトコル（ＲＤＰ）、インディペンデント・コンピューティング・アーキテクチャ（ＩＣＡ）などのプロトコルを使用して、デスクトップおよび他のアプリケーションを遠隔クライアントと共用することができる。このようなコンピューティング・システムは、通常、キーボードの押下、および、マウスのクリックまたは選択を、クライアント・コンピューティング装置からサーバ・コンピューティング装置へと伝送し、通信ネットワーク（たとえば、ＩＮＴＥＲＮＥＴ）上で画面更新を逆方向に戻し中継する。したがって、ユーザは、実際にはアプリケーションのスクリーンショットまたはフレームのみが、サーバ側で表示される通りにクライアントに送られているとき、自分のセッションがもっぱら自分のクライアント・コンピュータ上で実行されているような経験をする。
【０００３】
一般に、遠隔プレゼンテーション・システムでは、グラフィックス・データは、サーバ上で符号化され、次いでクライアント表示での提示のためにクライアントに転送される。ビデオまたはアニメーションなどのメディアは、遠隔で表示される場合には、まずネイティブ・フォーマット（たとえば、Ｈ．２６４またはＷＭＶ）からビットマップなど別のフォーマットに復号化される。次いで、クライアントへの転送のためにビットマップは符号化される。特に、サーバがこうした多くの遠隔プレゼンテーション・セッションを同時に実行し、復号化および符号化されたメディアをクライアントに転送するのに大量の帯域幅を必要とするとき（ネイティブに符号化されたメディアを転送するのに必要とされる帯域幅に対して測定すると）、この復号化および符号化のプロセスは計算するとサーバにとって高価である。この結果フレームの全てを必ずしも復号化できないか、またはフレームの全てはクライアントに送ることができないために、サーバがフレームを間引く必要が生じ、クライアントエクスペリエンスの質が低下することがある。
【発明の概要】
【０００４】
したがって、アプリケーション用のコンテンツ・ハンドラを使用してメディアを表示することになる遠隔プレゼンテーションにおいて、サーバへの要求を低減させることが、従来技術にわたり改善点になる。
【０００５】
一実施形態では、コンテンツ・ハンドラはプラグインである。たとえば、アプリケーションはＭＩＣＲＯＳＯＦＴ（登録商標）  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲでもよく、メディアはＷＩＮＤＯＷＳ  ＭＥＤＩＡ（登録商標）  ＶＩＤＥＯのビデオ・フォーマットでもよく、コンテンツ・ハンドラはＭＩＣＲＯＳＯＦＴ  ＳＩＬＶＥＲＬＩＧＨＴ（登録商標）のＡＣＴＩＶＥＸ（登録商標）コンテンツ・ハンドラ・プラグインでもよく、このプラグインは、ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲのウェブページで見るときにメディアの復号化および提示を扱う。他の実施形態では、ビデオはＦＬＡＳＨフォーマットであり、コンテンツ・ハンドラはＦＬＡＳＨのＡＣＴＩＶＥＸコンテンツ・ハンドラである。
【０００６】
サーバが、符号化されたメディアとフレームの残りの部分という２つの部分としてのメディアを含むフレームを、クライアントに送出することによって、この改良が実現される。上記実施形態を使用すると、符号化されたメディアはビデオを含み、フレームの残りは、ビデオに占有されないＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲのアプリケーション・ウィンドウ（たとえば、ナビゲーション・ボタンおよび境界線、ならびにビデオが表示されるウェブページの残り）を含むことになる。次いで、クライアントは、スタブ・コンテナとともにコンテンツ・ハンドラを使用して、符号化されたメディア・データに対応するイメージを復号化し、このイメージをフレームの残りと組み合わせて、サーバ上に表示されるようにフレームを再現する（遠隔プレゼンテーション・セッションまたは同様のものを実行中の損失性の少ない符号化）。
【０００７】
スタブ・コンテナは、コンテンツ・ハンドラの対応するアプリケーションがコンテンツ・ハンドラを管理するのと同一の方法でコンテンツ・ハンドラを管理するように構成された軽量のアプリケーションを含んでもよい。再度上記の例を使用すると、スタブ・コンテナは、ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ内で実行する場合にＳＩＬＶＥＲＫＩＧＨＴのＡＣＴＩＶＥＸコンテンツ・ハンドラが受信することになるのと同じ通信を、ＳＩＬＶＥＲＫＩＧＨＴのＡＣＴＩＶＥＸコンテンツ・ハンドラに提供することになる。これはたとえこのスタブ・コンテナが、ウェブページを復号化する機能（したがって、「軽量」アプリケーションとしてのスタブ・コンテナの指定）など、ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲの機能のほとんどを実装しなくても言える。
【０００８】
サーバから分離されたメディア・サーバ・コンピューティング装置にメディアが記憶される実施形態では、このメディアを、サーバを迂回してクライアントに直接送出することができる。
【０００９】
一実施形態では、メディア・サーバに記憶されたメディアをサーバが検索し、復号化するためにそれをクライアントに送る。サーバは、コンテンツ・ハンドラがそうするように、サーバと通信できるプロキシ・コンテンツ・ハンドラを使用してこれを実行し、次いで、受け取るメディア・データをクライアントに伝送することができる。
【００１０】
本開示は、システム、方法、およびこれらの内容を実装するためのコンピュータ可読記憶メディアを含む。
【００１１】
本明細書に記載の主要な実施形態では、コンピューティング装置の１つまたは複数のプロセッサによって実行されるコンピュータ実行可能命令を検討する。しかし、これらの技法は、もっぱら、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）またはそれらの何らかの組合せを適切にプログラミングすることなどにより、ハードウェアの観点から実装することができることが理解されよう。本開示の１つまたは複数の様々な態様は、それだけには限らないが、本明細書において言及された本開示の態様を実行するための回路および／またはプログラミングを含むことができ、この回路および／またはプログラミングは、事実上、システム設計者の設計選択に応じて本明細書において言及された態様を実行するように構成された、ハードウェア、ソフトウェア、および／またはファームウェアの任意の組合せとすることができることが当業者には理解されよう。
【００１２】
前述した内容は概要であり、したがって、単純化、一般化、および詳細の割愛が必然的に含まれる。この概要は例示的なものに過ぎず、決して限定するものではないことが当業者には理解されよう。
【００１３】
添付図面を参照しながら、プラグ着脱可能なコンテンツ操作システムにおいて内容検索をオフローディングし、復号化するための、システム、方法、およびコンピュータ可読メディアをさらに説明する。
【図面の簡単な説明】
【００１４】
【図１】本明細書に記載の技法を具体化することができる、例示的な汎用コンピューティング環境を示す図である。
【図２】遠隔プレゼンテーション・セッションにおいてクライアントとサーバが通信し、サーバが、クライアント向けのメディア・サーバからメディアを検索するためのプロキシの働きをする例示的なシステムを示す図である。
【図３】図２で説明するように遠隔プレゼンテーション・セッションにおいてクライアントとサーバが通信し、クライアントが、遠隔プレゼンテーション・セッションにおいて表示されることになるメディアをメディア・サーバから検索する例示的なシステムを示す図である。
【図４】プラグ着脱可能なコンテンツ操作システムにおいて、コンテンツ検索のオフローディングおよび復号化が存在する遠隔プレゼンテーション・セッションに関与しているクライアント向けの、例示的な動作手順を示す図である。
【図５】プラグ着脱可能なコンテンツ操作システムにおいて、コンテンツ検索のオフローディングおよび復号化が存在する遠隔プレゼンテーション・セッションに関与しているサーバ向けの、例示的な動作手順を示す図である。
【図６Ａ】図２で参照されるように、メディアが表示される第１のブラウザ・ウィンドウ、および第２のブラウザ・ウィンドウを示す図である。
【図６Ｂ】第２のブラウザ・ウィンドウが、第１のブラウザ・ウィンドウのメディアの一部分を隠蔽する、図６Ａの第１および第２のブラウザ・ウィンドウを示す図である。
【発明を実施するための形態】
【００１５】
図１は、本明細書に記載の技法を利用することのできる汎用コンピューティング装置のブロック図である。コンピューティング・システム環境１２０は、適切なコンピューティング環境の一例に過ぎず、本明細書において開示する主題の使用または機能の範囲に関して、いかなる限定をも示唆するものではない。コンピューティング環境１２０は、この例示的な動作環境１２０に示した構成要素のうちの、任意の１つの構成要素もしくはそれらの組合せに関連するいかなる依存性または要求も有すると解釈すべきではない。実施形態によっては、図示した様々なコンピューティング構成要素には、本開示の具体的な態様を例示するように構成された回路が含まれ得る。たとえば、本開示で使用される回路という用語には、ファームウェアまたはスイッチによって（１つまたは複数の）機能を実行するように構成された専用のハードウェア構成部品を含むことができる。例示的な他の実施形態では、回路という用語には、（１つまたは複数の）機能を実行するよう動作可能に論理を具体化するソフトウェア命令によって構成された、汎用の処理ユニット、メモリなどが含まれ得る。回路がハードウェアとソフトウェアの組合せを含む例示的な実施形態では、実装者は、論理を具体化するソース・コードを書くことができ、このソース・コードは、汎用の処理ユニットが処理できる機械可読コードにコンパイルすることができる。最新技術により、ハードウェア、ソフトウェア、またはハードウェア／ソフトウェアの組合せの間にはわずかな差しかないことを当業者なら理解できるので、特定の機能を実行するためのハードウェア対ソフトウェアの選択は、実装者に委ねられた設計選択である。より具体的には、ソフトウェア処理は、等価のハードウェア構造体に変換でき、ハードウェア構造体は、それ自体等価のソフトウェア処理に変換できることが当業者なら理解できる。したがって、ハードウェア実装とソフトウェア実装の選択は、実装者に委ねられた設計選択の１つである。
【００１６】
コンピュータ１４１は、通常、様々なコンピュータ可読メディアを含む。コンピュータ可読メディアは、コンピュータ１４１がアクセスできる任意の利用可能なメディアとすることができ、揮発性メディアと不揮発性メディア、取外し可能メディアと取外し不可能のメディアの両方を含む。システム・メモリ１２２には、読取り専用メモリ（ＲＯＭ）１２３およびランダム・アクセス・メモリ（ＲＡＭ）１６０など、揮発性および／または不揮発性のメモリの形態のコンピュータ可読記憶メディアが含まれる。起動中などにコンピュータ１４１内の各要素間で情報転送を助ける基本的なルーチンを含む基本入出力システム１２４（ＢＩＯＳ）は、通常ＲＯＭ１２３に記憶される。ＲＡＭ１６０は、通常、処理ユニット１５９からただちにアクセス可能であり、かつ／または処理ユニット１５９によって現在操作されているデータおよび／またはプログラム・モジュールを含む。限定ではなく一例として、図１には、オペレーティング・システム１２５、アプリケーション・プログラム１２６、他のプログラム・モジュール１２７、およびプログラム・データ１２８が示してある。
【００１７】
またコンピュータ１４１には、他の取外し可能／取外し不可能、揮発性／不揮発性のコンピュータ記憶メディアが含まれ得る。ほんの一例として、図１には、取外し不可能で不揮発性の磁気メディアとの間で読み書きを行うハード・ディスク・ドライブ１３８、取外し可能で不揮発性の磁気ディスク１５４との間で読み書きを行う磁気ディスク・ドライブ１３９、および、ＣＤ  ＲＯＭまたは他の光メディアなどの取外し可能で不揮発性の光ディスク１５３との間で読み書きを行う光ディスク・ドライブ１４０が示してある。例示的な動作環境で使用することができる、他の取外し可能／取外し不可能な、揮発性／不揮発性のコンピュータ記憶メディアには、磁気テープ・カセット、フラッシュ・メモリ・カード、デジタル多用途ディスク、デジタル・ビデオ・テープ、固体ＲＡＭ、固体ＲＯＭなどが含まれるが、これらに限定されない。ハード・ディスク・ドライブ１３８は、通常、インターフェース１３４などの取外し不可能なメモリ・インターフェースを介してシステム・バス１２１に接続されており、磁気ディスク・ドライブ１３９および光ディスク・ドライブ１４０は、通常、インターフェース１３５などの取外し可能なメモリ・インターフェースによってシステム・バス１２１に接続されている。
【００１８】
上記で図１に示したドライブおよびその関連するコンピュータ記憶メディアは、コンピュータ１４１向けの、コンピュータ可読命令、データ構造、プログラム・モジュール、および他のデータを記憶する。図１には、たとえば、ハード・ディスク・ドライブ１３８が、オペレーティング・システム１５８、アプリケーション・プログラム１５７、他のプログラム・モジュール１５６、およびプログラム・データ１５５を記憶するものとして示してある。これらの構成部品は、オペレーティング・システム１２５、アプリケーション・プログラム１２６、他のプログラム・モジュール１２７、およびプログラム・データ１２８と同じであってもよく、また異なっていてもよいことに留意されたい。オペレーティング・システム１５８、アプリケーション・プログラム１５７、他のプログラム・モジュール１５６、およびプログラム・データ１５５は、少なくとも異なるコピーであることを示すために、ここでは異なる数が付与されている。ユーザは、キーボード１５１や、マウス、トラックボールまたはタッチ・パッドと通常呼ばれているポインティング装置１５２などの入力装置を用いて、コンピュータ１４１にコマンドおよび情報を入力することができる。他の入力装置（図示せず）には、マイクロホン、ジョイスティック、ゲーム・パッド、衛星用パラボラ・アンテナ、スキャナまたは同様のものが含まれる。上記その他の入力装置は、システム・バスに結合されたユーザ入力インターフェース１６０を介して、処理ユニット１５９にしばしば接続されているが、パラレル・ポートまたはユニバーサル・シリアル・バス（ＵＳＢ）など、他のインターフェースおよびバス構造によって接続可能である。ビデオ・インターフェース１３２などのインターフェースを介して、モニタ１４２または他のタイプの表示装置もシステム・バス１２１に接続される。モニタに加えて、コンピュータにはまた、出力周辺インターフェース１３３を介して接続することができるスピーカ１４４やプリンタ１４３など、他の周辺インターフェース出力装置が含まれ得る。
【００１９】
コンピュータ１４１は、リモート・コンピュータ１４６など１つまたは複数のコンピュータへの論理的な接続を使用するネットワーク化された環境で動作することができる。遠隔コンピュータ１４６は、パーソナル・コンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア装置（peer device）、または他の共通ネットワーク・ノードでもよく、通常、コンピュータ１４１に関連して前述した各要素のうちの多くまたは全てを含むが、図１にはメモリ記憶装置１４７のみが示してある。図１に示した論理接続は、ローカル・エリア・ネットワーク（ＬＡＮ）１４５および広域ネットワーク（ＷＡＮ）１４９を含むが、他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業規模のコンピュータ・ネットワーク、イントラネット、およびインターネットではありふれたことである。
【００２０】
ＬＡＮネットワーキング環境で使用するとき、コンピュータ１４１は、ネットワーク・インターフェースまたはアダプタ１３７を介してＬＡＮ１４５に接続される。ＷＡＮネットワーキング環境で使用するとき、コンピュータ１４１は、通常、モデム１５０、またはインターネットなどＷＡＮ１４９上で通信を確立するための他の手段を備える。モデム１５０は、内部モデムでも外部モデムでもよく、ユーザ入力インターフェース１３６または他の適切な機構を介して、システム・バス１２１に接続することができる。ネットワーク化された環境では、コンピュータ１４１に関連して示したプログラム・モジュールまたはその各部分を、遠隔メモリ記憶装置に記憶することができる。限定ではなく一例として、図１には、遠隔アプリケーション・プログラム１４８がメモリ装置１４７上にある様子が示してある。図示したネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する他の手段を使用することができることが理解されよう。
【００２１】
図２は、遠隔プレゼンテーション・セッションにおいてクライアント２０４とサーバ２０２が通信し、サーバ２０２が、クライアント２０４向けにメディア・サーバ２０８からメディアを検索するためのプロキシの働きをする例示的なシステムを示す。
【００２２】
本構成要素、および本明細書において検討する他のシステムの各構成要素は論理的に構成されており、これらの構成要素は、一実施形態内に様々な順序で組み合わせることができ、全ての実施形態に全ての構成要素が存在するわけではないことが理解されよう。
【００２３】
一実施形態では、通信ネットワーク２０６にわたる遠隔プレゼンテーション・セッションにおいて、サーバ２０２とクライアント２０４が通信する。サーバ２０２とクライアント２０４は、通信リンク２２６を介して通信する。サーバ２０２とメディア・サーバ２０８は、通信リンク２２８を介して通信する。クライアント２０４とメディア・サーバ２０８が通信する場合、通信リンク２２６および通信リンク２２８を介してサーバ２０２を通して行われる。一実施形態では、サーバ２０２、クライアント２０４、およびメディア・サーバ２０８のそれぞれを、図１のコンピューティング装置において実装することができる。遠隔プレゼンテーション・セッション中には、サーバ２０２上で実行される１つまたは複数のアプリケーションのグラフィカル出力に対応する複数のフレームを、サーバ２０２がクライアント２０４に送出する。これらのフレームを送出している間、サーバ２０２は、通常、サーバ２０２がクライアント２０４に送出するイメージ・データとともに、復号化されたメディアのグラフィカル出力を含むフレームを送出しなければならないことがある（この場合、サーバ２０２は、固有に符号化されたメディアをメディア・サーバ２０８からフェッチし、復号化およびレンダリングするためにそれをクライアント２０４に送出している）。たとえば、これは、ビデオが再生されるウェブページを表示するウェブ・ブラウザを含むことができる。
【００２４】
概要で論じた例にあるように、ウェブ・ブラウザはＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲとすることができ、メディアは、ＳＩＬＶＥＲＬＩＧＨＴのＡＣＴＩＶＥＸのコンテンツ・ハンドラ２１２を使用してブラウザで再生されるＷＭＶフォーマットのビデオである。他の実施形態では、メディアは、ＦＬＡＳＨのコンテンツ・ハンドラ２１２を使用して再生されるＦＬＡＳＨフォーマットである。
【００２５】
本実施形態では、クライアント２０４は、遠隔プレゼンテーション・セッション・クライアント２１０、コンテンツ・ハンドラ２１２、コンテンツ・ハンドラ２１２用のスタブ・コンテナ２１４、およびジオメトリック・トラッカ（geometric tracker）・クライアント２１６を含む。
【００２６】
本明細書でのスタブ・コンテナ２１４は、回路、コンピュータ実行可能命令などを指し、コンテンツ・ハンドラ２１２に関連するアプリケーション２２２に類似している。コンテンツ・ハンドラ２１２は、通常、単独で実行されることはないが、関連するアプリケーション２２２との間で送受信されるコマンドに対して実行される。クライアント２０４がサーバ２０２と遠隔プレゼンテーション・セッションにある場合、その関連するアプリケーション２２２は、サーバ２０２上で実行され、そのアプリケーション２２２のグラフィカル出力がクライアント２０４に送出されることになる。クライアント２０４が、アプリケーション２２２のコピーを記憶または実行して、遠隔プレゼンテーション・セッションを通してそれを使用する必要はない。クライアント２０４は、アプリケーション２２２を有する場合でも、アプリケーション２２２の完全なコピーを実行して、コンテンツ・ハンドラ２１２を使用し、コンピューティング資源の関連するコストを含む必要はない。クライアント２０４は、スタブ・コンテナ２１４のみを実行することができ、次いで、遠隔プレゼンテーション・セッション内で必要になるように、コンテンツ・ハンドラ２１２とインターフェースする。スタブ・コンテナ２１４を実行してコンテンツ・ハンドラ２１２とインターフェースするには、通常、それを実行するために対応する完全なアプリケーション２２２を実行する場合よりもコンピューティング資源が少なくて済む（アプリケーション２２２などのアプリケーションを、ローカルではなく遠隔プレゼンテーション・セッションで遠隔に実行することができる他の理由がいくつかある）。たとえば、サーバ２０２上にアプリケーション２２２の単一のコピーを有することは、複数のクライアント２０４上にアプリケーションの別々のコピーを有する場合よりも、更新および維持するのが容易になることがある。
【００２７】
本実施形態では、サーバ２０２は、遠隔プレゼンテーション・セッション・サーバ２１８、プロキシ・コンテンツ・ハンドラ２２０およびアプリケーション２２２、ならびにジオメトリック・トラッカ２２４を備える。アプリケーション２２２は、クライアント２０４上のスタブ・コンテナ２１４に対応する。たとえば、アプリケーション２２２がＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲアプリケーションである場合、スタブ・コンテナ２１４はＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ用のスタブ・コンテナ２１４である。
【００２８】
サーバ２０２およびクライアント２０４は通信し、メディアの検索またはプレゼンテーションのいずれかをクライアント２０４が扱うのかどうかを決定し、扱う場合にはどの程度の量を扱うのかを決定することができる。この通信には、クライアント２０４が、メディアのローカル検索および復号化を実行することが可能かどうかを含むことができる。このような通信は、クライアント２０４でのコンテンツ・ハンドラ２１２の可用性、ネットワークの状態、クライアント２０４の計算資源、および、管理者またはユーザのプリファレンスを含むことができる。この通信は、たとえば、遠隔プレゼンテーション・セッションが初期化されるとき、または特定のコンテンツ・ハンドラ２１２が、この遠隔プレゼンテーション・セッション内で最初に必要になるときに生じることがある。この通信はまた、サーバが適切なプロキシ・コンテンツ・ハンドラを有するかどうかなど、サーバ２０２の機能を含むことができる。
【００２９】
この通信がいつ発生するかは、システムの個別事項に基づいて最適化することができる。一実施形態では、通信は、遠隔プレゼンテーション・セッションが初期化されるときに発生するよう選択することができるが、その理由は、これにより、プレゼンテーション向けにメディアが選択されるとき、後に遅延が低減される可能性があるからである。通信が発生している間、遠隔プレゼンテーション・セッションの中間における一時停止よりもセッション初期化期間が長くなることを、ユーザは煩わしいと思わないことがある。一実施形態では、通信は、特定のコンテンツ・ハンドラ２１２が、この遠隔プレゼンテーション・セッション内で最初に必要になるときに発生するよう選択することができる。このセッションでコンテンツ・ハンドラ２１２が使用される可能性が低い場合はこれが好ましいことがあり、その結果、通信に必要となる処理資源は、必要な場合にのみ使用しなければならない。
【００３０】
たとえば、メディアを復号化するための適切なコンテンツ・ハンドラ２１２をクライアント２０４が欠いている場合、サーバ２０２は、そのイメージ出力をクライアント２０４に送出する前に、メディアを検索し、復号化することができる。これは、コンテンツ・オフロードなしの遠隔プレゼンテーション・セッションを含む。
【００３１】
さらに、クライアント２０４は、メディアを復号化するとともに、メディア・サーバ２０８からそのメディアにアクセスする機能を有することを確定することができる。この場合、クライアント２０４は、サーバ２０２からの介入なしにメディア・サーバ２０８からメディアを受信し、このメディアを復号化することができる。図３を参照して、この実施形態をより詳細に論じる。
【００３２】
さらに、クライアント２０４は、メディアを復号化する機能を有するが、メディアが記憶されるメディア・サーバ２０８からメディアに直接アクセスする機能を有することはなく、サーバ２０２はメディア・サーバ２０８からメディアにアクセスできることを確定することができる。たとえば、クライアント２０４がアクセス権を有しないイントラネット通信ネットワーク上でメディア・サーバ２０８およびサーバ２０２が接続されているときに、これが発生する。これは、図２の実施形態に関して詳細に論じられた実施形態である。
【００３３】
サーバ２０２とクライアント２０４の両方がメディアを復号化することができる実施形態では、両者は、各コンピューティング装置の利用可能な処理資源などに基づいて、どちらがメディアを復号化するのかに関して取り決めることができる。
【００３４】
クライアント２０４がメディアを復号化することが、この通信を介して決定される場合、プロキシ・コンテンツ・ハンドラ２２０は、クライアント２０４上のスタブ・コンテナ２１４に初期化パラメータを送出する。このような初期化パラメータは、メディア・サーバ２０８のアドレス、サーバ２０２上のコンテンツ出力の視覚位置、およびセキュリティ設定のようなものを含むことができる。このようなパラメータにはまた、メディアを復号化しなければならない際の容量など、メディア・サーバ２０８からのパラメータが含まれる。スタブ・コンテナ２１４は、初期化パラメータを使用して、プロキシ・コンテンツ・ハンドラ２２０がサーバ２０２上で初期化されるのと同様に、コンテンツ・ハンドラ２１２を呼び出す。この点から、コンテンツ・ハンドラ２１２は、メディア・サーバ２０８からメディアを検索し、クライアント２０４に対してローカルにそれを復号化することができる。サーバ２０２にコンテンツ検索が要求される場合、プロキシ・コンテンツ・ハンドラ２２０は、メディア・サーバ２０８からデータを検索し、それをスタブ・コンテナ２１４にトンネリングし、スタブ・コンテナ２１４は、復号化するためにコンテンツ・ハンドラ２１２にデータを送る。
【００３５】
サーバ２０２は、メディアのプレゼンテーションをクライアント２０４にオフロードする場合、コンテンツ・ハンドラ２１２用のプロキシを動作させ、このプロキシは、コンテンツ・ハンドラ２１２がメディア・サーバ２０８と通信するのと同じ方法でメディア・サーバ２０８と通信するように構成される。たとえば、プロキシ・コンテンツ・ハンドラ２２０は、サーバ２０２と登録の取り決めを行うように構成されており、これにより、サーバ２０２上で実行されている含有アプリケーション２２２においてコンテンツ・ハンドラ２１２の代わりに、プロキシ・コンテンツ・ハンドラ２２０がロードされることになる。プロキシ・コンテンツ・ハンドラ２２０はまた、コンテンツ・ハンドラ２１２の入力コマンドの取り決めを行うように構成可能であり、これにより、プロキシ・コンテンツ・ハンドラ２２０は、（コンテンツ・ハンドラ２２０は、サーバ２０２上のプロキシ・コンテンツ・ハンドラ２１２の代わりになる場合にそれらを受信したはずなので）様々なコマンドおよびコールをアプリケーション２２２から受信することができる。プロキシ・コンテンツ・ハンドラ２２０はさらに、通知または出力のコマンドを取り決めるよう構成することができ、これにより、含有アプリケーション２２２が、コンテンツ・ハンドラ２１２から受信したのと同じ方法で、プロキシ・コンテンツ・ハンドラ２２０から通知を受信する。
【００３６】
遠隔プレゼンテーション・セッションの過程で、クライアント２０４により、コンテンツ・ハンドラ２１２がアプリケーション２２２と連動して実行される事象にサーバ２０２が直面することがある。たとえば、クライアント２０４は、サーバ２０２がウェブ・ブラウザ内でウェブ・サイトを開くように命令することができ、このウェブ・サイトは、ビデオなどのメディアを含んでおり、これはコンテンツ・ハンドラ２１２を介して提示される。アプリケーション２２２は、サーバ２０２上で実行される。アプリケーション２２２は、メディアに遭遇すると、コンテンツ・ハンドラ２１２をローディングすることとと一致する動作を実行する。しかしながら、クライアント２０４上のコンテンツ・ハンドラ２１２がメディアを復号化するとサーバ２０２およびクライアント２０４が判定した場合、アプリケーション２２２は代わりにプロキシ・コンテンツ・ハンドラ２２０をローディングすることになる。
【００３７】
アプリケーション２２２は、メディア・サーバ２０８と対話してメディアを検索する。アプリケーション２２２は、メディア・サーバ２０８から受信したメディアおよび命令をプロキシ・コンテンツ・ハンドラ２２０に送り、プロキシ・コンテンツ・ハンドラ２２０は、それをクライアント２０４上のコンテンツ・ハンドラ２１２に送る。たとえば、これを、プロキシ・コンテンツ・ハンドラ２２０がそれらを遠隔プレゼンテーション・セッション・サーバ２１８に送り、この遠隔プレゼンテーション・セッション・サーバがそれらを遠隔プレゼンテーション・セッション・クライアント２１０に送り、この遠隔プレゼンテーション・セッション・クライアントがそれらをスタブ・コンテナ２１４に送り、このスタブ・コンテナがそれらをコンテンツ・ハンドラ２１２に送ることによって、実行することができる。
【００３８】
コンテンツ・ハンドラ２１２は、メディアがどのような状態におかれるのかについての機能を含むことができ、この機能を使用することは、メディア・サーバ２０８に送られることになる命令を含むこともできる。たとえば、ＭＩＣＲＯＳＯＦＴ  ＳＩＬＶＥＲＬＩＧＨＴのコンテンツ・ハンドラ２１２は、新規のメディアを選択してＭＩＣＲＯＳＯＦＴ  ＳＩＬＶＥＲＬＩＧＨＴ内で提供されるリストから見ることなど、ナビゲーション機能を提供する機能を有し、このナビゲーション機能は、対応するやり方でメディア内において実行される。サーバ２０２がコンテンツ・ハンドラ２１２用のプロキシの役割を果たす場合、これらのナビゲーション・ボタンの使用がサーバ２０２を介して送られる。たとえば、コンテンツ・ハンドラ２１２内から新規のメディアが選択される場合、この選択がスタブ・コンテナ２１４によって受信され、このスタブ・コンテナがそれを遠隔プレゼンテーション・セッション・クライアント２１０に送出し、この遠隔プレゼンテーション・セッション・クライアントがそれを遠隔プレゼンテーション・セッション・サーバ２１８に送出し、この遠隔プレゼンテーション・セッション・サーバがそれをメディア・サーバ２０８に送出し、ここで新規のメディアが終了する。同様に、メディア・サーバ２０８からコンテンツ・ハンドラ２１２への通信が、同様の方法で送られる。
【００３９】
コンテンツの符号化および／また検索のプロセス中、プロキシ・コンテンツ・ハンドラ２２０は、入力コマンドをアプリケーション２２２からスタブ・コンテナ２１４に転送し、このスタブ・コンテナが、それらをコンテンツ・ハンドラ２１２に送出する。コンテンツ・ハンドラ２１２からの任意の通知または出力のコマンドが、クライアント２０４上のスタブ・コンテナ２１４に送られ、このスタブ・コンテナが、これをサーバ２０２上のプロキシ・コンテンツ・ハンドラ２２０に送る。プロキシ・コンテンツ・ハンドラ２２０は、これらの通知または出力のコマンドを複製し、それらをアプリケーション２２２に提供する。
【００４０】
プロキシ・コンテンツ・ハンドラ２２０の表示要素は、スタブ・コンテナ２１４（したがってコンテンツ・ハンドラ２１２）と同期され、その結果、クライアント２０４上の復号化されたフレームは、フレーム全体がサーバ２０２上で復号化され、表示のためにクライアント２０４に送出される場合と同じイメージを表す。
【００４１】
アプリケーション２２２がコンテンツ復号化を終了すると、プロキシ・コンテンツ・ハンドラ２２０がアンロードされる。アンロードの前に、プロキシ・コンテナがクライアント２０４にコマンドを送出して、スタブ・コンテナ２１４およびコンテンツ・ハンドラ２１２をアンロードする。
【００４２】
遠隔プレゼンテーション・セッション中、復号化されたメディアを隠蔽することができ、ジオメトリック・トラッキングを介してこれをモニタすることもできる。ジオメトリック・トラッキングは、サーバ２０２およびクライアント２０４が、クライアント２０４上でメディアが表示されることになるウィンドウの形状を相互に理解する際のプロセスと考えてもよい。たとえば、セッションが２つのウェブ・ブラウザのウィンドウを表示する場合、メディアを１つのウィンドウで復号化し、次いで第１のページの一部分または全部にわたって第２のウィンドウを移動することができる（これは図６Ａおよび６Ｂに表現される）。ジオメトリック・トラッカ・サーバ２２４は、サーバ２０２上のウィンドウおよびメディアの表示および構成をモニタするよう動作する。ジオメトリック・トラッカ・サーバは、メディアが隠蔽されていることを検出すると、メディアの可視領域の形状を決定し、その可視領域がジオメトリック・トラッカ・クライアント２１６にとって何であるかの指示を転送する。
【００４３】
たとえば、メディアは、８００×４００画素の長方形を含むことができ、その長方形の右半分を隠蔽することができる。ジオメトリック・トラッカ・サーバ２２４は、これが発生したことを判定し、メディアの右端の４００×４００の画素領域を表示せず、左端の４００×４００の画素領域についてコンテナの形状のみを作成するという指示をジオメトリック・トラッカ・クライアント２１６に送出する。サーバ２０２上のウィンドウによって部分的に隠蔽することにより、メディアのコンテナ形状は長方形ではない、もしくはその形状タイプと異なることもある。
【００４４】
図３に、図２で説明するように遠隔プレゼンテーション・セッションにおいてクライアント２４０とサーバ２０２が通信し、クライアント２０４が、遠隔プレゼンテーション・セッションにおいて表示されるメディアをメディア・サーバから検索する例示的なシステムを示す。
【００４５】
図２に関して述べた通り、クライアント２０４およびサーバ２０２が遠隔プレゼンテーション・セッションを実行する場合、クライアント２０４は、サーバ２０２がアプリケーション２２２および関連するコンテンツ・ハンドラ２１２を実行し、表示するためにその実行のグラフィカル出力をクライアント２０４に送出することを要求することができる。サーバ２０２およびクライアント２０４は、図２と同様に通信リンク２２６を介して通信し、サーバ２０２およびメディア・サーバ２０８は、図２と同様に通信リンク２２８を介して通信する。しかし、図２と対照的に、クライアント２０４およびメディア・サーバ２０８は、サーバ２３０とは独立に、通信リンク２３０を介して通信するように構成されている。クライアント２０４およびメディア・サーバ２０８が通信リンク２３０を介して通信するように構成されている一実施形態では、両者はまた、サーバ２０２で、通信リンク２２６および通信リンク２２８を介して通信することができる。
【００４６】
図２で説明するクライアント２０４とサーバ２０２の間のネゴシエーションのプロセスでは、クライアント２０４が、サーバ２０２から介入されることなく、メディア・サーバ２０８からメディアにアクセスできると判定することができる。たとえば、クライアント２０４がメディア・サーバ２０８にｐｉｎｇを打ち、応答を受信することにより、または、メディア・サーバ２０８からメディアの一部分をクライアント２０４が首尾よくダウンロードすることによって、これを判定することができる。
【００４７】
この実施形態では、サーバ２０２は、メディア・サーバ２０８からのメディアを検索することも、また（復号化されているか、されていないかのいずれかの）メディアをクライアント２０４に送出することもない。これにより、遠隔プレゼンテーション・セッションにおいてサーバ２０２がクライアント２０４に送るはずのフレーム内にホールが残る。このホールは、復号化およびレンダリングされたメディアで占められている。
【００４８】
一実施形態では、サーバ２０２は、メディアが表示される位置に対応するフレームの一部分をクライアント２０４に送出しないことを、クライアント２０４に通知する。一実施形態では、サーバ２０２は、メディアによって占められることになるフレームの領域をイメージ（次いでこれは、復号化およびレンダリングされたメディアがその上部にオーバレイされるとき、クライアント２０４上で隠蔽される）で満たす。一実施形態では、サーバ２０２は、単色（たとえば白）など何らかの高度および／または容易に圧縮可能なもので領域を満たす。これを圧縮可能にする際、サーバ２０２は、それを圧縮するのに必要なそれ自体の処理資源、ならびにそれをクライアント２０４に送出するのに必要とされる帯域幅を低減させることができる。
【００４９】
クライアント２０４は、メディアとフレームの両方を受信する場合、遠隔プレゼンテーション・セッションを介して要求されるように、この２つを組み合わせてイメージを作成する。一実施形態では、サーバ２０２は、メディアが表示される場所のフレーム内の位置をクライアント２０４に指示し、クライアント２０４がイメージをそこに表示する。たとえば、遠隔プレゼンテーション・セッションがアプリケーション２２２のウィンドウをクライアント２０４上に含む場合、サーバ２０２は、ウィンドウ内の位置（たとえば、ウィンドウの左上隅から右および／または下への画素の数）を指示することができる。このようにして、アプリケーション２２２のウィンドウが移動するとき、メディアを表示する位置は変化しない。
【００５０】
図４に、プラグ着脱可能なコンテンツ操作システムにおいてコンテンツ検索のオフローディングおよび復号化が存在する遠隔プレゼンテーション・セッションに関与しているクライアント２０４向けの、例示的な動作手順を示す。
【００５１】
動作４０２は、通信ネットワークにわたって遠隔プレゼンテーション・セッションにおいてサーバ２０２と通信するステップを示している。
【００５２】
動作４０４は、サーバ２０２にフレームの遠隔表示を要求するステップを示しており、このフレームは、コンテンツ・ハンドラ２１２によって復号化することができるサーバ２０２からのメディアを含み、コンテンツ・ハンドラ２１２は、スタブ・コンテナ２１４と対話し、スタブ・コンテナ２１４は、コンテンツ・ハンドラ２１２に関連するアプリケーション２２２に対応する。
【００５３】
動作４０６は、フレームに対応するイメージをサーバ２０２から受信するステップを示している。
【００５４】
動作４０８は、サーバ２０２を用いて、メディアについてのデータ・オフローディングのレベルを判定するステップを示している。一実施形態では、データ・オフローディングのレベルは、メディアのオフローディング・アクセス、およびメディアのオフローディング・プレゼンテーションを含む。
【００５５】
動作４１０は、メディアを受信するステップを示す。一実施形態では、メディアの受信は、第２のサーバ２０８からメディアを受信するステップを含み、このメディアは、第２のサーバ２０２によって送信されることなく第２のサーバ２０２から受信される。一実施形態では、これは、第２のサーバ２０８からどのようにメディアを受信するかの指示をサーバ２０２から受信するステップを含む。
【００５６】
一実施形態では、メディアを受信するステップは、サーバ２０２からメディアを受信するステップを含み、このサーバ２０２は、第２のサーバ２０８からメディアを受信している。一実施形態では、この動作手順がクライアント２０４によって実行される場合、サーバ２０２は、第２のサーバ２０８からメディアを受信するように構成されるが、クライアント２０４は、第２のサーバ２０８からメディアを受信するように構成されない。
【００５７】
動作４１２は、スタブ・コンテナ２１４により、コンテンツ・ハンドラ２１２がメディアを復号化するよう命令するステップを示す。
【００５８】
動作４１４は、コンテンツ・ハンドラ２１２により、メディアに対応する第２のイメージを復号化するステップを示す。
【００５９】
動作４１６は、イメージにオーバレイされた第２のイメージを含む第３のイメージを表示するステップを示し、この第３のイメージはフレームを表す。第３のイメージは、その囲んでいるウェブ・ブラウザのウィンドウの上部にオーバレイされた、ＳＩＬＶＥＲＬＩＧＨＴビデオなどの構成されたフレームとすることができる。
【００６０】
一実施形態では、図４の動作を実行するクライアントは、クライアント表示上に遠隔プレゼンテーション・セッション用の親ウィンドウを作成することにより、これを実現することができる（次いでこれらのフレームが表示スクリーンにフレッシュされてグラフィカル出力を生成する、メモリ内のフレーム・バッファ内などで）。クライアントは、サーバから受信したフレームを表示することができ（たとえば、ウェブ・ブラウザ・ウィンドウ）、親ウィンドウ内の子ウィンドウ（親ウィンドウの一部分）をコンテンツ・ハンドラに委ね、次いでコンテンツ・ハンドラが、第２のイメージ（たとえば、ウェブページに埋め込まれたビデオ）用のレンダリング動作を実行する。したがって、イメージがリフレッシュされているときにクライアントがイメージを親ウィンドウにレンダリングしている間、コンテンツ・ハンドラは、第２のイメージを子ウィンドウにレンダリングすることができる。このようにして、イメージおよび第２のイメージのフレーム・レートは、互いに無関係である。この実施形態では、結果として生じる第３のイメージは、内部に含まれる子ウィンドウを含めて完全な親ウィンドウである。
【００６１】
別のウェブ・ブラウザのウィンドウで部分的に覆われる場合などに、ビデオ・イメージの一部分が隠蔽されることがある。一実施形態では、動作４１６は、第２のイメージの一部分がイメージによって隠蔽されるという指示を受信するステップと、イメージにオーバレイされた第２のイメージを含む第３のイメージを表示するステップとを含み、イメージにオーバレイされたイメージによって隠蔽されていない第２のイメージの一部分のみを表示するステップをさらに含む。
【００６２】
一実施形態では、これは、第２のイメージを表示する位置の指示を受信するステップを含み、第２のイメージを表示するステップが、この位置に第２のイメージを表示するステップを含む。
【００６３】
図５は、プラグ着脱可能なコンテンツ操作システムにおいてコンテンツ検索のオフローディングおよび復号化が存在する遠隔プレゼンテーション・セッションに関与しているサーバ２０２向けの、例示的な動作手順を説明する。
【００６４】
動作５０２は、遠隔プレゼンテーション・セッションにおいて、通信ネットワークを介してクライアント２０４と通信するステップを示す。
【００６５】
動作５０４は、コンテンツ・ハンドラ２１２に対応するメディアを含むイメージをクライアント２０４に送出する要求を受信するステップを示す。一実施形態では、このイメージはアプリケーション出力のフレームである。たとえば、イメージは、ブラウザのウィンドウ内に表示される埋込みビデオ（メディア）を含むウェブ・ブラウザのウィンドウとすることができる。
【００６６】
動作５０６は、クライアント２０４がコンテンツ・ハンドラ２１２でメディアを復号化できると判定するステップを示す。
【００６７】
動作５０８は、メディア・サーバ２０８からメディアを検索するステップを示す。
【００６８】
動作５１０は、クライアント２０４を用いて、メディアについてのデータ・オフローディングのレベルを判定するステップを示す。一実施形態では、データ・オフローディングのレベルは、メディアの検索またはメディアの復号化に対応する。
【００６９】
動作５１２は、クライアント２０４にメディアを送出するステップを示す。一実施形態では、これは、メディア・サーバ２０８上のメディアの位置の指示をクライアント２０４に送出するステップを含む。
【００７０】
動作５１４は、メディアに対応するイメージの一部分を判定するステップと、メディアに対応するイメージの一部分を第３のイメージで置換するステップを示す。たとえば、イメージが、フレームとしてクライアント２０４に送出すべきウェブ・ブラウザのウィンドウを含む場合、イメージに「ホール」が存在することになり、通常メディアは欠落することになるが、実際に欠落しており、それというのも、メディアは、クライアント２０４に別々に送出されることになるからである。
【００７１】
動作５１６は、クライアント２０４にイメージを送出するステップを示しており、クライアント２０４は、イメージを第２のイメージでオーバレイし、第２のイメージは、クライアント２０４がメディアをコンテンツ・ハンドラ２１２で復号化することにって作成される。
【００７２】
動作５１８は、イメージをどこで復号化するかの指示をクライアント２０４に送出するステップを示す。
【００７３】
動作５２０は、メディアが復号化される位置が部分的に隠蔽されていると判定するステップと、メディアが復号化される位置が部分的に隠蔽されているという指示をクライアント２０４に送出するステップとを示す。
【００７４】
動作５２２は、クライアント２０４のコンテンツ・ハンドラ２１２からのメディアをナビゲートする要求を受信するステップと、メディアをナビゲートするための要求を、メディアを記憶するメディア・サーバ２０８に伝送するステップと、メディア・サーバ２０８からの応答を受信するステップと、この応答をコンテンツ・ハンドラ２１２に伝送するステップとを示す。
【００７５】
図６Ａは、図２で言及するように、メディア６０４が表示される第１のブラウザ・ウィンドウ６０２、および第２のブラウザ・ウィンドウ６０６を示す。
【００７６】
図６Ｂは、第２のブラウザ・ウィンドウ６０６が、第１のブラウザ・ウィンドウの６０２に表示されるメディア６０４の一部分を覆い隠す、図６Ａの第１のブラウザ・ウィンドウ６０２および第２のブラウザ・ウィンドウ６０６を示す。
【００７７】
様々な図に示したように、好ましい態様に関して本開示を説明してきたが、本開示から逸脱することなく本開示の同じ機能を実行するために、他の同様な態様を使用することができ、また説明した態様に修正および追加を実施することができることが理解される。したがって、本開示は、いかなる単一の態様にも限定すべきでなく、むしろ添付特許請求の範囲の幅および範囲内で解釈すべきである。たとえば、本明細書に記載の様々な手順は、ハードウェアもしくはソフトウェア、または両方の組合せで実施することができる。したがって、開示された実施形態の各方法および装置、またはそれらの何らかの態様もしくは部分は、磁気ディスク、ＣＤ−ＲＯＭ、ハード・ドライブ、または他の任意の機械可読記憶媒体など、有体の媒体で実施されるプログラム・コード（すなわち命令）の形をとることができる。プログラム・コードが、コンピュータなどの機械にロードされ実行されるとき、この機械は、開示された実施形態を実施するように構成された装置になる。本明細書において明瞭に説明した具体的な実装形態とともに、本明細書において開示された仕様を考慮することにより、他の態様および実装形態が当業者には明らかになろう。仕様および例示された実装形態は、ほんの例として考えるべきものである。
【図１】
0005911808.tif 000002
【図２】
0005911808.tif 000003
【図３】
0005911808.tif 000004
【図４】
0005911808.tif 000005
【図５】
0005911808.tif 000006
【図６Ａ】
0005911808.tif 000007
【図６Ｂ】
0005911808.tif 000008