(57)【要約】ビデオ・ファイル・コンテンツにアクセスするための方法およびシステムを提供する。ユーザが、映像コンテンツを備えたウェブ・ページに遭遇した際、該ユーザは、当該映像コンテンツを表示させることを選択し、サーバが該ビデオ・ファイルをトランスコードして、ユーザのクライアント・デバイスへ、トランスコード済ビデオ・ファイルを流すのを待つことができる。あるいは、ユーザは、サーバに、ビデオ・ファイルをトランスコードして、ユーザのデバイスへ、トランスコード済のビデオ・ファイルを送ることをリクエストしてもよい。この場合、ユーザのデバイスにトランスコード済のビデオ・ファイルが格納される。該ビデオがトランスコードされるの待つ間、ユーザは、例えば別のウェブ・サイトをブラウジングしてもよい。その後の都合のよいときに、ユーザは、ビデオ・ファイル・インボックスにアクセスし、該ビデオ・ファイルを表示させてよい。あるいは、トランスコード済のビデオ・ファイルは、サーバに格納されてもよい。該サーバは、ユーザのデバイスへ、ビデオ・ファイルがトランスコードされたことを知らせる通知を送信することができる。
2010518509.tif 000002
【特許請求の範囲】
【請求項１】
デバイスへ情報コンテンツを提供する方法であって、
ビデオ・ファイルへのリファレンスを含む情報コンテンツをデバイスへ送るステップと、
前記デバイスで表示可能なフォーマットに前記ビデオ・ファイルをトランスコードすることについてのリクエストを受けるステップと、
前記ビデオ・ファイルを前記デバイスで表示可能なフォーマットへトランスコードするステップと、
トランスコードされたビデオ・ファイルを保存するステップと、
前記ビデオ・ファイルのトランスコードが完了し前記デバイスに表示させる準備が整ったことを示す通知を前記デバイスへ送るステップであって、前記通知が前記トランスコードされたビデオ・ファイルを表示させるために選択される第１リンクと前記デバイスのユーザによってリクエストされたことがあるトランスコードされたビデオ・ファイルへのアクセスを供するビデオ・インボックスにアクセスするために選択される第２リンクとを含む、ステップと、を有する方法。
【請求項２】
前記デバイスは、移動ハンドヘルド・デバイスである、請求項１に記載の方法。
【請求項３】
前記トランスコードされたビデオ・ファイルを保存するステップは、限定的な期間にわたり前記トランスコードされたビデオ・ファイルを保存するステップを含む、請求項１に記載の方法。
【請求項４】
さらに、前記ビデオ・ファイルへの前記リファレンスを含む前記情報コンテンツを第２デバイスへ送るステップと、
前記第２デバイスで表示可能なフォーマットに前記ビデオ・ファイルをトランスコードすることについてのリクエストを受けるステップと、
保存中のトランスコードされたビデオ・ファイルを検索し、前記リクエストにかかるビデオ・ファイルは既にトランスコードされたかどうかを判断するステップと、
既にトランスコードされたと判断された場合に、前記保存中のトランスコードされたビデオ・ファイルへのアクセスを前記第２デバイスに供するステップと、を有する、請求項３に記載の方法。
【請求項５】
前記保存中のトランスコードされたビデオ・ファイルへのアクセスを前記第２デバイスに供するステップは、前記トランスコードされたビデオ・ファイルのコピーを前記第２デバイスへ送るステップを含む、請求項４に記載の方法。
【請求項６】
前記第１リンクが選択されることにより、前記トランスコードされたビデオ・ファイルが前記デバイスへストリーミングされる、請求項１に記載の方法。
【請求項７】
前記トランスコードされたビデオ・ファイルを保存するステップは、前記デバイスの前記ユーザのビデオ・インボックスへリンクされているデータベースに前記トランスコードされたビデオ・ファイルを保存するステップを含む、請求項１に記載の方法。
【請求項８】
さらに、限定的な期間にわたり前記トランスコードされたビデオ・ファイルを前記データベースに保存するステップを有する、請求項７に記載の方法。
【請求項９】
前記通知を前記デバイスへ送るステップは、ショート・メッセージ・サービス（ＳＭＳ）メッセージを送るステップを含む、請求項１に記載の方法。
【請求項１０】
請求項１に記載の方法をプロセッサに実行させる命令が保持されるコンピュータ読み取り可能な媒体。
【請求項１１】
デバイスへ情報コンテンツを提供する方法であって、
ビデオ・ファイルへのリファレンスを含む情報コンテンツをデバイスへ送るステップと、
前記デバイスで表示可能なフォーマットに前記ビデオ・ファイルをトランスコードすることについてのリクエストを受けるステップと、
前記ビデオ・ファイルを前記デバイスで表示可能なフォーマットへトランスコードするステップと、
前記ビデオ・ファイルのトランスコードが完了したことを示す通知を前記デバイスへ送るステップと、
以前に複数のデバイスがトランスコードすることをリクエストし以前にトランスコードすることについての複数のリクエストを受けたビデオ・ファイルにかかるトランスコードされたビデオ・ファイルを保存するステップと、を有する方法。
【請求項１２】
サーバによって実施され、
前記トランスコードされたビデオ・ファイルを保存するステップは、前記トランスコードされたビデオ・ファイルを複数のサーバがアクセスできるデータベースに保存するステップを含む、請求項１１に記載の方法。
【請求項１３】
サーバによって実施され、
前記トランスコードされたビデオ・ファイルを保存するステップは、前記トランスコードされたビデオ・ファイルを前記サーバに保存するステップを含む、請求項１１に記載の方法。
【請求項１４】
複数のサーバで構成されるシステムに含まれるサーバによって実施され、
さらに、前記サーバが前記トランスコードされたビデオ・ファイルを前記複数のサーバの他のサーバへ送るステップを有する、請求項１１に記載の方法。
【請求項１５】
複数のサーバで構成されるシステムに含まれるサーバによって実施され、
さらに、前記複数のサーバのそれぞれが受けた前記ビデオ・ファイルをトランスコードすることについてのリクエストの数を求めるステップと、
前記ビデオ・ファイルは、所定の回数の前記リクエストを受けたかどうかを判断するステップとを有する、請求項１１に記載の方法。
【請求項１６】
前記ビデオ・ファイルのトランスコードが完了したことを示す前記通知を前記デバイスへ送るステップは、前記トランスコードされたビデオ・ファイルを表示させるために選択される第１リンクと前記デバイスのユーザによってリクエストされたことがあるトランスコードされたビデオ・ファイルへのアクセスを供するビデオ・インボックスにアクセスするために選択される第２リンクとを含む通知を送るステップを含む、請求項１１に記載の方法。
【請求項１７】
メモリに保持されるソフトウェア・アプリケーションを実行するプロセッサであって、前記ソフトウェア・アプリケーションは、（ｉ）ビデオ・ファイルへのリファレンスを含む情報コンテンツを情報源から受け、（ｉｉ）移動デバイスで表示可能なフォーマットに前記ビデオ・ファイルをトランスコードする、サーバ・ブラウザを含む、プロセッサと、
前記プロセッサに接続され、前記ビデオ・ファイルのトランスコードが完了し前記移動デバイスに表示させる準備が整ったことを示す通知を前記移動デバイスへ送るインタフェースであって、前記通知が前記トランスコードされたビデオ・ファイルを表示させるために選択される第１リンクと前記移動デバイスのユーザによってリクエストされたことがあるトランスコードされたビデオ・ファイルへのアクセスを供するビデオ・インボックスにアクセスするために選択される第２リンクとを含む、インタフェースと、を有するサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２００７年２月９日付米国仮特許出願第６０／８８９，１４０号に関し、合衆国法典第３５巻第１１９条（ｅ）に基づく優先権を主張する。その内容の全ては、あたかも本願明細書に記載されたもののように、参照により本願に組み込まれる。
【０００２】
（発明の技術分野）
本願は、一般に、ウェブ・ブラウジングおよびネットワーク通信分野に関し、より具体的には、本願は、大画面を備えたコンピュータ用にデザインされたコンテンツ（内容）を含むウェブ・ページの情報を、ハンドヘルド型デバイス用に適化して表示させるためのシステムおよび方法に関する。ハンドヘルド型デバイスには、例えば、携帯電話（cellular telephone）、携帯情報端末（personal digital assistant）（ＰＤＡ）がある。
【背景技術】
【０００３】
今日では、様々な、テキスト・タイプのコンテンツ（textual content type）および非テキスト・タイプのコンテンツ（non-textual content type）を提供するワールド・ワイド・ウェブのページ（ＨＴＭＬドキュメント）を利用可能である。周知のように、ウェブ・ページ（Web page）は、通例、ハイパーテキスト・マークアップ・ランゲージ（HyperText Markup Language）（ＨＴＭＬ）といった標準ページ記述言語に沿った形式を備える。ウェブ・ページは、一般に、テキストを含み、グラフィック、音声（サウンド）、アニメーション、およびビデオのデータを参照可能である。ＨＴＭＬは、基本的なドキュメントのフォーマットを与え、ウェブ・コンテンツ提供者（プロバイダ）が別のウェブ・サーバおよびファイルに対するアンカーまたはハイパーテキスト・リンクを明記できるようにする。ユーザが特定のハイパーテキスト・リンクを選択すると、ウェブ・ブラウザは当該リンクと関連付けられた統一資源位置指定子（ユニフォームリソースロケータ（Uniform Resource Locator）（ＵＲＬ）と呼ばれるアドレスを読み込んで解釈（interpret）し、該アドレスを有するウェブ・サーバに接続し、該リンクが特定するファイルについてのＨＴＴＰリクエストを開始する。すると、ウェブ・サーバが、ウェブ・ブラウザへ、当該リクエストにかかるファイルを送信し、当該ファイルが解釈（interpret）され、ユーザに対して表示される。
【０００４】
従来の、大きな画面を備えて標準的なウェブ・ブラウザを実行するデスクトップ・コンピュータまたはラップトップ・コンピュータにおいては、ＨＴＭＬのコンテンツの複数のタイプを容易に構成して鑑賞用に表示する。例えば、不動産業者（realtor）の不動産目録（property listings）を検索するウェブ・サイトでは、見る者にとって関心のある不動産に素早く目を通すために複数の画像が提供される。ユーザが、関心のある不動産を特定すると、当該特定にかかる不動産の画像と関連付けされた詳細事項を読んだり、当該不動産に関する更なる詳細事項を得るために当該画像を選択したりすることができる。
【０００５】
また、通信の分野、より具体的には、無線遠隔通信の分野は、現在、急激な発展を遂げている。この技術的な発展により、携帯情報端末（ＰＤＡ）、携帯電話、ページャ（ポケットベル）、ならびに、その他の電子機器といった電子デバイスは、ＰＣやＰＣベースのブラウザと同等に、ウェブ・サーバやデータベースといった情報源に接続することが可能になった。ウェブから携帯（ハンドヘルド）デバイスへコンテンツを送ることができる、小さなデバイス用のクライアント・ブラウザが複数流通している。
【０００６】
しかしながら、これらの小さなデバイスでは、通例、デスクトップもしくはラップトップ・コンピュータ上での表示を意図したウェブ・コンテンツの表示には、画面の面積またはナビゲーションの性能が不足気味である。例えば、ハンドヘルド・デバイスは、デスクトップ・コンピュータのディスプレイとの比較において、そのサイズに関し小さなディスプレイを備え、そのため、デスクトップ・コンピュータのディスプレイでは表示可能な画像や文字のようなウェブ・コンテンツの部分であっても、ハンドヘルド・コンピューティング・デバイスのディスプレイでは、当該画像またはテキストに修正を加えない限り、表示することができないことがある。とりわけ、例えば１０２４ピクセル×１２８０ピクセルのアレイを有するデスクトップ・コンピュータのディスプレイは、大きな、ピクセル毎３２ビットカラーの画像を表示させることも可能である。対照的に、１６０ピクセルかける１２０ピクセルのアレイを有しピクセル毎３ビットの表示能力を有するディスプレイを備えたハンドヘルド・コンピューティング・デバイスでは、当該画像データの大部分が無視されることになる。結果的には、画像が適切には表示されず、仮に表示されたとしても、画像のサイズを減じなければ、ハンドヘルド・デバイスのディスプレイ上に画像が適切に表示されることはない。
【０００７】
クライアントすなわちハンドヘルド・ブラウザによって利用され、ユーザの、小さな画面上でのウェブ・ページのナビゲーションを支援する手法は数多くある。例えば、クライアント・ブラウザは、ウェブ・コンテンツのレイアウトを変更し、画像の位置を変え、あるいは、単純にいくつかのウェブ・コンテンツを表示しなくすることができる。また、ハンドヘルド・デバイスのディスプレイ上に表示されないファイルは、通例、該ハンドヘルド・デバイスの限界に適合した表示可能なフォーマットに変換される。画像およびテキストの変更を含む、ウェブ・コンテンツの変更は、「トランスコーディング」（"transcoding"）と呼ばれる。
【０００８】
一例として、小さなデバイスのブラウザは、デスクトップ・コンピュータもしくはラップトップ・コンピュータでの表示を意図した形式を有するビデオ・コンテンツ・ファイル（映像コンテンツのファイル）を表示できないことがよくある。ビデオ・ファイルのトランスコードのため、ウェブ・サーバまたはクライアント・デバイスが、当該ビデオ・ファイルを受け取って解像度を低減、または、表示されるフレームのレートを低減させ、そうすることによって、該クライアント・デバイスが該ビデオ・ファイルの映像をユーザに対して表示できるようにしてよい。上記サーバまたはデバイスは、該ビデオ・ファイルのフォーマットを或るフォーマットから別のフォーマットへ、例えば、ＭＰＥＧ４ビデオ・フォーマットから３ＧＰフォーマット（第３世代ワイヤレス・プラットフォーム）へ、変換してもよい。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ある種のウェブ・サーバでは、ファイルをリクエストしているクライアント・デバイスの種類を認識することが可能となっており、該リクエストを行っているクライアント・デバイス上に表示させるのに適当なフォーマットでファイルを提供することが可能である。しかしながら、夥しい数のウェブ・コンテンツのファイルが、インターネット上のウェブ・サイトに存在する。さらに、通例、毎日のように膨大な数のファイルが、様々なウェブ・サイトに追加されている。途方もない程に多数のファイルがウェブ・サイトにおいて利用可能であるため、選択したコンピューティング・デバイス上において表示可能なウェブ・コンテンツ・ファイルの複製物を作成し、保存し、維持することは、幾分、実際的ではない。従って、デマンド（要望）に応じてウェブ・コンテンツのトランスコードおよび変換（トランスフォーム）を行うことで、ウェブ・ページを、本来意図したデバイスとは異なるデバイス上での表示に適化させることが望まれる。
【課題を解決するための手段】
【００１０】
以下に示す実施の形態においては、デバイスに情報コンテンツを提供する方法が示される。当該方法は、ビデオ・ファイルへのリファレンス（参照）を含んだ情報コンテンツをデバイスへ送信するステップと、該ビデオ・ファイルを当該デバイスにおいて表示可能なフォーマットへトランスコードすることのリクエストを受信するステップと、を有する。また、当該方法は、当該ビデオ・ファイルを該デバイス上で表示可能なフォーマットへトランスコードするステップと、上記ビデオ・ファイルはトランスコードされ該デバイス上に表示させる準備が整っていることを示す通知を該デバイスへ送信するステップと、を有する。上記通知は、上記トランスコード済のビデオ・ファイルを表示させるときに選択される第１リンクと、該デバイスのユーザによりリクエストされたトランスコード済のビデオ・ファイルへのアクセスを提供するビデオ・インボックスにアクセスするときに選択される第２リンクと、を含んでいる。
【００１１】
別の実施の形態においては、当該方法は、ビデオ・ファイルへのリファレンス（参照）を含んだ情報コンテンツをデバイスへ送信するステップと、該ビデオ・ファイルを当該デバイスにおいて表示可能なフォーマットへトランスコードすることのリクエストを受信するステップと、を有する。続いて、ビデオ・ファイルは、該デバイス上で表示可能なフォーマットへトランスコードされ、該ビデオ・ファイルのトランスコードが完了したことを示す通知が該デバイスへ送信される。さらに、当該方法は、以前に、該ビデオ・ファイルのトランスコードが複数のデバイスからリクエストされたことがあり、以前に、所定数の、該ビデオ・ファイルをトランスコードすることのリクエストが受信されたことがある、トランスコード済のビデオ・ファイルを格納するステップを有する。
【００１２】
別の実施の形態においては、プロセッサと、該プロセッサに接続されるインタフェースとを有するサーバが示される。上記プロセッサは、メモリに格納されたソフトウェア・アプリケーションを実行する。ソフトウェア・アプリケーションは、ビデオ・ファイルに対する参照（リファレンス）を含んだ情報コンテンツを情報源から受信して当該情報コンテンツを移動デバイス（モバイル機器）上で表示可能なフォーマットへトランスコードするためのサーバ・ブラウザを含んでいる。上記インタフェースは、該ビデオ・ファイルのトランスコードが完了し該デバイス上に表示させる準備が整っていることを示す通知を該移動デバイスへ送信する。上記通知は、トランスコード済のビデオ・ファイルを表示させるときに選択される第１リンクと、該デバイスのユーザによりリクエストされたトランスコード済のビデオ・ファイルへのアクセスを提供するビデオ・インボックスにアクセスするときに選択される第２リンクと、を含んでいる。
【００１３】
適宜添付の図面を参照して以下の詳細な説明を読めば、上記およびその他の態様は、当業者にとって明白である。また、本願明細書に記載の実施の形態は、特許を請求する発明の範囲を限定することを意図したものと解してはならない。
【図面の簡単な説明】
【００１４】
【図１Ａ】映像コンテンツにアクセスし、適化させ、電子デバイスに提示するためのシステムの例を示す図
【図１Ｂ】映像コンテンツにアクセスし、適化させ、電子デバイスに提示するためのシステムの例を示すもう１つの図
【図２】クライアント・デバイス上に表示させるために映像コンテンツを処理する方法の機能的なステップの例を示すフローチャート
【図３Ａ】図２に示したフローチャートを実行するサーバの一例を示すブロック図
【図３Ｂ】図２に示したフローチャートを実行するサーバの一例を示すもう１つのブロック図
【図４】図１のシステム内において実行される動作のシークエンスを例示する流れ図例
【図５】本願記載の方法実行時にクライアント・デバイス上に表示されるスクリーン・ショットの概念例の図
【図６】本願記載の方法実行時にクライアント・デバイス上に表示されるスクリーン・ショットの概念例の図
【図７】本願記載の方法実行時にクライアント・デバイス上に表示されるスクリーン・ショットの概念例の図
【図８】本願記載の方法実行時にクライアント・デバイス上に表示されるスクリーン・ショットの概念例の図
【図９】複数サーバを備えて構成される図１に示すシステムの一例
【発明を実施するための形態】
【００１５】
本願は、ハンドヘルドもしくは移動デバイス用に情報コンテンツを変換（convert）する手法を提供する。情報コンテンツには、映像ファイル（ビデオ・ファイル）が含まれる。デバイスは、当該ビデオ・ファイルを表示させるため、該ファイルをデコードするソフトウェアおよび性能を有さなくともよい。以下に示す実施の形態においては、ハンドヘルド・デバイスでユーザへ提示できるようにビデオ・ファイルが適切化（adapted）される。ユーザが、ひとたび、ビデオ・ファイルを表示させるようにウェブ・ページから選択すれば、サーバは、ビデオ・ファイルを読み出して当該ハンドヘルド・デバイス上で表示できるフォーマットへ変換する。そして、サーバは、ユーザに対し、（例えば、ＳＭＳもしくはプッシュ型のメッセージを用いて）ビデオの変換が完了したことを通知する。ここで、ＳＭＳもしくはプッシュ型のメッセージは、ユーザが当該ビデオを見るためのリンクを含んでいる。また、サーバは、「マイ・ビデオ（私のビデオ）」（“Ｍｙ Ｖｉｄｅｏｓ”）なるページを保持してもよい。このページにおいてユーザは、変換することをリクエストしたことがある全てのビデオにアクセスし、それらを見ることが可能になっている。
【００１６】
他の実施の形態においては、ユーザが、他ユーザが既に変換を行わせたビデオをブラウズする場合には、当該ユーザは直ちに当該ビデオを見ることが可能になっている。ここでは、ハンドヘルド・デバイスは、変換されたビデオを表示可能であると推定している。このため、変換されたビデオはキャッシュされる。加えて、変換されたビデオはシステムに含まれるサーバ間において交換可能であって、これにより、複数のサーバがトランスコード済のビデオのコピーを有する。ここでのトランスコード済のビデオ・ファイルには、例えば、所与の回数のリクエストを受けたことがあるビデオが含まれてよい。
【００１７】
次に、図１Ａを参照する。この高レベル概念図は、システム１００を例示するための図である。システム１００は、情報コンテンツにアクセスし、適切化して、電子デバイスへ提示するためのシステムである。システム１００は、情報源（情報ソース）１０２、サーバ１０４、および、クライアント・デバイス１０６、を含む。
【００１８】
情報源１０２は、ウェブ・サーバ、アプリケーション・サーバ、データベース、その他のバックエンド・システム、もしくは、情報提供体（情報プロバイダ）に対するインタフェースといった、あらゆるタイプのデバイスを含む。情報源１０２は、マークアップ言語により記述された情報コンテンツを提供する。ここで、マークアップ言語には、ハイパーテキスト・マークアップ・ランゲージ（ＨＴＭＬ）、エクステンシブル・スタイル・シート（ＸＳＬ）を備えたもしくは備えていないエクステンシブル・マークアップ・ランゲージ（ＸＭＬ）、ボイスＸＭＬ（VoiceXML）、エクステンシブル・ハイパーテキスト・マークアップ・ランゲージ（ＸＨＴＭＬ）、または、ワイヤレス・マークアップ・ランゲージ（ＷＭＬ）といった、当業者に知られたマークアップ言語が含まれる。また、情報コンテンツは、情報源１０２が提供する画像（イメージ）、映像（ビデオ）、または、音声（オーディオ）の情報を参照することが可能である。
【００１９】
情報源１０２には、あらゆる種類のネットワークを通じて、サーバ１０４がサーバ・ブラウザ１０８を介して通信することが可能である。サーバ・ブラウザ１０８は、あらゆる種類のネットワークを通じて、クライアント・ブラウザ１１０を介し、クライアント・デバイスと通信することが可能である。サーバ・ブラウザ１０８は、クライアント・ブラウザ１１０と表示させるウェブ・ページ・コンテンツの情報源１０２との間のプロキシとして機能する。サーバ・ブラウザ１０８は、情報源１０２に関するクライアントとして動作することにより、情報コンテンツを取得することができる。たとえば、トランスミッション・コントロール・プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）といった既知の通信プロトコルの組み合わせを用いて、サーバ・ブラウザ１０８は、ハイパーテキスト・トランスファー・プロトコル（ＨＴＴＰ）リクエストを、情報源１０２に対して発行することができる。周知の技術のように、ＨＴＴＰリクエストを利用することにより、サーバ・ブラウザ１０８は、情報源１０２にある、アプリケーション、静的コンテンツ、および、動的コンテンツといった情報コンテンツにアクセスすることができる。
【００２０】
サーバ・ブラウザ１０８およびクライアント・ブラウザ１１０は、同一のプラットフォーム上にあってもよいし、互いに別々であってもよい。たとえば、図１に示すように、サーバ・ブラウザ１０８は、バック・エンド・サーバ上にホストされてよく、また、クライアント・ブラウザ１１０は、ハンドヘルド型電子機器にホストされてよい。しかしながら、当然のことだが、とりわけ、プラットフォームまたは電子機器が適当なハードウェアおよびネットワーク機能を備えるような場合には、サーバ・ブラウザ１０８およびクライアント・ブラウザ１１０は、１つの電子機器のような、同一のプラットフォーム上にホストされてもよい。したがって、本願の多くの実施の形態では、機能は、クライアント・ブラウザ１１０の機能の一部、または、サーバ・ブラウザ１０８の一部として説明することがある。当然のことだが、クライアント・デバイス１０６およびサーバ１０４が同一のデバイス上に共存してもよい。したがって、一方の機能は、他方の機能に置換可能である。よって、クライアント・ブラウザ１１０は、サーバ・ブラウザ１０８が実施するものとして説明されている機能を実施してよく、また、サーバ・ブラウザ１０８は、クライアント・ブラウザ１１０が実施するものとして説明されている機能を実施してもよい。サーバ・ブラウザおよびクライアント・ブラウザを利用することで、限定的なハードウェア性能を有する小さな電子機器であっても、豊かな情報もしくはデータ（feature rich information or data）にアクセスすることが可能になる。
【００２１】
一般に、サーバ１０４およびクライアント・デバイス１０６は、中央処理装置、メモリ（主メモリ、および／または、副メモリ・ユニット）、データ受信のための入力インタフェース、入力デバイス（例えば、キーボード、マウス等）からの入力信号を受信するための入力インタフェース、および、出力デバイス（例えば、モニタ）と通信するための出力インタフェースを備える。当然の事ながら、通例、サーバ１０４およびクライアント・デバイス１０６は、集積回路開発技術、もしくは、その他の手法を用いて開発されたハードウェア・オブジェクト、または、ハードウェア・オブジェクトおよびソフトウェア・オブジェクトの組み合わせであって、ソフトウェア環境において順序化されパラメータ化され接続されて本願に記載の様々な機能を実現する、ハードウェア・オブジェクト、ならびに、ハードウェア・オブジェクトおよびソフトウェア・オブジェクトの組み合わせを含んでよい。また、ハードウェア・オブジェクトは、電気的信号を用い、異なるデータを表す信号状態を用いながら、通信することが可能である。注記するが、サーバ１０４およびクライアント・デバイス１０６は、一般に、オペレーティング・システムの制御下で、サーバ１０４およびクライアント１０６にあるアプリケーション・プログラムを実行する。サーバ・ブラウザ１０８およびクライアント・ブラウザ１１０といったアプリケーション・プログラムは、サーバ１０４およびクライアント・デバイス１０６のメモリに格納されてよく、また、機械語命令群もしくは、ジャバ（Ｊａｖａ（登録商標））プログラミング言語のようなオブジェクト指向の命令群を備えたソフトウェアとして実装されてよい。しかしながら、（例えば、Ｃ＋＋プログラミング言語のような）その他のプログラミング言語を用いてもよい。
【００２２】
例えば、クライアント・ブラウザ１１０は、クライアント・デバイス１０６に内在してよい。ここでの、クライアント・デバイス１０６は、パーソナル・コンピュータ（ＰＣ）、無線式電話、携帯情報端末（ＰＤＡ）、ハンドヘルド・コンピュータ、ネットワーク製品（network appliance）、および、その他の、ナビゲーション機能（例えば、キーボード、タッチ・スクリーン、マウス等）およびダウンロードした情報コンテンツを表示させるための任意的なディスプレイを備えることが可能な、様々な電子機器を含む。さらに、クライアント・デバイス１０６は、Ｗ３Ｃ（www.w3.org）ボイス・エクステンシブル・マークアップ・ランゲージ（Voice Extensible Markup Language）（ＶｏｉｃｅＸＭＬ）のような、音声合成のマークアップの機能を有する様々な種類の機器を含んでもよい。コンピュータ・システムにかかる当業者であれば理解することと思われるが、本実施の形態例は、クライアント・デバイス１０６に用いられるコンピュータを特定のクラスもしくはモデルに限定するものではない。当業者は、適当なシステムを選択することが可能である。
【００２３】
例示を目的として、ＰＤＡがクライアント・ブラウザ１１０を備え、ＰＣがサーバ・ブラウザを備え、ＰＤＡおよびＰＣは共に、イーサネット（登録商標）によるネットワークに接続されているものとする。そして、クライアント・ブラウザ１１０およびサーバ・ブラウザ１０８は、イーサネットによるネットワークを介して情報取引を実行可能である。これらの取引には、イーサネット・プロトコルもしくは同様にしてＩＥＥＥ８０２．３プロトコルが利用されてよい。あるいは、本例においては、クライアント・ブラウザおよびサーバ・ブラウザは、有線ネットワークを介して通信する。また、通信には、ローカル・エリア・ワイヤレス・ネットワーク（ＬＡＷＮ）またはワイヤレス・ローカル・エリア・ネットワーク（ＷＬＡＮ）を含むこともできる。さらには、通信には、ブルートゥース（Bluetooth）、ワイヤレス・アプリケーション・プロトコル（ＷＡＰ）、時間分割多重アクセス（ＴＤＭＡ）、符号分割多重アクセス（ＣＤＭＡ）といった別種の既知のプロトコルおよび技術を用いるワイヤレス・ネットワークを含むことも可能である。
【００２４】
図１を再度参照すれば、クライアント・ブラウザ１１０は、情報についてのリクエストを、サーバ・ブラウザ１０８へ送ることが可能である。クライアント・ブラウザ１１０は、イベント・トランスレータ１１２を備え、クライアント・ブラウザ１１０からのリクエスト／レスポンス（例えば、ＷＭＬ、ＸＨＴＭＬ、ｃＨＴＭＬ等）のプロトコル（例えば、ＨＴＴＰリクエスト）を、サーバ・ブラウザ１０８が理解可能なイベントに変換する。トランスレーション処理では、イベント情報、コンテンツ情報、および、イベントのコンテキストを含めることができ、クライアント・ブラウザ１１０と情報源１０２との間のトランザクション（例えば、ＨＴＭＬ形式での送信）が保存される。
【００２５】
サーバ・ブラウザ１０８は、情報源１０２からの情報コンテンツを取得し、クライアント・ブラウザ１１０上での使用に適するように調整可能である。あるいは、サーバ・ブラウザ１０８は、当該情報を取得し、該情報をクライアント・ブラウザ１１０へ送信してもよい。この場合、クライアント・ブラウザ１１０が、表示に適したように当該情報を調整する。リクエストされたコンテンツ（例えば、ビデオ・ファイル）は、当初は、ハンドヘルド・デバイスの限定的な画面サイズではなくむしろＰＣの大画面での表示用にデザインされているため、コンテツの変換が必要な場合がある。そのため、サーバ・ブラウザ１０８またはクライアント・ブラウザ１１０のいずれかが、情報コンテンツの変換またはデバイス専用のスタイル・シートの適用を実行し、表示（例えば、ディスプレイ（表示）または音声）およびナビゲーション（キーボード、タッチ・スクリーン、スクローリング）を支援し、かつ、限定的な量のデータ受信が可能な電子機器のためにコンテンツのグループ分け（グループ化、グルーピング）を実行することができる。
【００２６】
これらの機能性を実施するため、サーバ・ブラウザ１０８またはクライアント・ブラウザ１１０は、例えば、ユーザ・エージェント、クッキー・ハンドラ、ＱＤＯＭ、スクリプト・エグゼキュータ（script executor）、ノーマライザ（normalizer）、および、シリアライザ（serializer）を含んでよい。情報コンテンツの変換およびカスタマイズに関する追加的な情報は、米国特許７，０７２，９８４号「システム・アンド・メソッド・フォー・アクセシング・カスタマイズド・インフォメーション・オーバー・ザ・インターネット・ユージング・ア・ブラウザ・フォー・ア・プルラリティ・オブ・エレクトロニック・デバイセズ」（"System and method for accessing customized information over the internet using a browser for a plurality of electronic devices"）、米国特許出願０９／８４３，０３６号「システム・アンド・メソッド・フォー・アダプティング・インフォメーション・コンテント・フォー・アン・エレクトロニック・デバイス」（"System and Method for Adapting Information Content for an Electronic Device"）、米国特許出願１１／５２６，９９２号「システム・アンド・メソッド・フォー・ウェブ・ナビゲーション・ユージング・イメージス」（"System and Method for Web Navigation Using Images"）、米国特許出願（代理人ドケット番号０７−１０７−Ａ）「メソッド・アンド・システム・フォー・コンバーティング・インタラクティブ・アニメーテッド・インフォメーション・コンテント・フォー・ディスプレイ・オン・モービル・デバイセズ」（"Method and System for Converting Interactive Animated Information Content for Display on Mobile Devices"）に含まれ、それらの全ての開示内容は参照により、本願明細書に含まれる。
【００２７】
リクエストされたウェブ・ページ内に含まれる情報によって、様々なコンテンツ変換が実施される。例えば、ビデオ・ファイルがウェブ・ページのコンテンツ内に含まれるような場合には、ビデオ・ファイルがクライアント・デバイスで表示されるような変換が実行される。
【００２８】
システム１００は、クライアント・デバイス１０６上で表示させるためにビデオ・ファイルをトランスコード、もしくは、変換（コンバート）するソフトウェアを（クライアント・ブラウザ１１０内またはサーバ・ブラウザ１０８内に）含む。本願において、ビデオ・ファイルは、例えば画面上にアニメーションを表示するための、順次的表示のためのコンテンツのフレームの集積体であってよい。ビデオ・ファイルは、様々な種類のフォーマットでよい。それらには、例えば、業界において知られた、フラッシュＦＬＶファイル（FlashFLVfile）、ｗｍｖファイル、リアルファイル（real file）、ＭＰＥＧ等が含まれる。
【００２９】
システム１００のサーバ１０４は、ウェブ・ページのコンテンツ（内容）およびビデオ・ファイルのコンテンツ（内容）の両方をトランスコードしてもよい。あるいは、追加的サーバを備えてビデオ・ファイルのコンテンツをトランスコードしてもよい。図１Ｂは、システムの構成別例を示しており、本図においては、サーバ１０４がウェブ・ページのコンテンツをトランスコードし、ビデオ・トランスコード・サーバ１１４がビデオ・ファイルのコンテンツをトランスコードするのに用いられる。ビデオ・データベース１１６は、トランスコード済のビデオ・ファイルを格納するのに用いられてよい。
【００３０】
一般に、ある特徴を有するデジタル・ビデオ・ストリームから別の特徴を有するデジタル・ビデオ・ストリームへデジタル・ビデオを変更することは、ビデオ・トランスコーディングと称される。また、ビデオ・ファイルは、別の手法を用いてクライアント・デバイス１０６上に表示するフォーマットにトランスコードされてもよい。上記別の特徴の例には、ビデオ・エンコード・フォーマット（例えば、ＭＰＥＧ１、ＭＰＥＧ２）、データ・レートが含まれ、これらは、例えば、異なる量子化値からの影響を受ける。１つのビデオ・ストリームの映像情報の全てが、トランスコードで維持される場合には、ビデオ・ストリーム・ロスレス・トランスコーディングと呼ばれる。ロスレス・トランスコーディングを行うには、第２のビデオ・ストリームに対して利用可能な帯域幅が、本来のビデオ・ストリームに含まれるデータを十分にサポートしていることが必要である。一例においては、ビデオ・エンコード・フォーマット間のロスレス・ビデオ・トランスコードは、第１のビデオ・エンコード・フォーマットを有する第１のビデオ・ストリームをデコードしてレンダリングされたデータ（画像データ）を生成し、その後でレンダリングされたデータをエンコードして第２のビデオ・エンコード・フォーマットを有する第２のビデオ・データ・ストリームを生成することで、実現される。
【００３１】
トランスコードの別例としては、映像の解像度を低減することで、または、フレームをいくつか除去して１秒あたりのフレーム表示レートを低減させることで、クライアント・デバイス１０６上での表示用に変換された一般的なＭＰＥＧ２フォーマットのビデオ・ファイルが含まれる。具体的には、テレビ受信機用に放送されるＭＰＥＧ２ストリームは、例えば、ＭＰＥＧ４ストリームのような低解像度ストリームに変換可能である。トランスコーダは、ＭＰＥＧ２ストリームを受信して当該ＭＥＰＧ２ストリームに含まれる映像データの伸張および圧縮を行うことができる。それから、トランスコーダは、受信した映像データを、例えば、移動クライアント・デバイス用に、３６０ピクセルかける２４０ラインの解像度で毎秒１０フレームに変換することができる。
【００３２】
さらに、トランスコードは、映像のサイズを、あるサイズから別のサイズへ変更すること（スケーリングとも称される。）を含んでよい。このようなトランスコード、スケーリングは、大きな映像を取得して当該映像をスケーリングして小さなサイズにすることで、当該映像をクライアントへ送るのに必要な帯域幅の大きさを減じ、クライアントが結果得られる映像を表示させることを確保するような処理を含む。大きすぎる映像サイズを受信するような場合には、多くのクライアントが失敗するため、大きすぎる映像を送信することは、全体として、帯域幅の浪費につながることもある。よって、各移動デバイスにとって適正なスケーリング係数を決定することは有用である。
【００３３】
他のトランスコード手法としては、ビデオ・ファイルの圧縮が含まれる。大半のビデオ・ファイルは、何らかの圧縮を利用してサイズの低減を図っている。ロー・フォーマット（raw format）のフル・サイズ映像は、多くのデバイスにとって大きすぎる。「コーデック」（"codecs"）または様々な圧縮アルゴリズムを用いることにより、映像は、そのサイズが低減され、かつ、後にデコード可能なファイル形式にされる。しかしながら、そのような処理を行う場合には、品質が低下するおそれがあり、また、ある種のコーデックにあっては、「非可逆的（ロッシー）」（"lossy"）な方法で当該映像の表示に必要なデータ量を低減させることすらある。このような処理は、通例、映像の第１のフレームをＩフレームとして知られるデータにデジタイズし、そして、当該第１のフレームと次のフレームとの比較を行うことで実行される。当該２つのフレームの差違のみがＰフレームに記録される。このような手法においては、全てのフレームをデジタイズする必要はなく、ただ、フレーム間の差違のみをデジタイズすればよいため、映像の保持に要するデータ量は低減される。別のＩフレームをある間隔で送信してもよく、これにより、送信中に生じたデータの破損からのリカバリが可能になる。
【００３４】
映像（ビデオ・ファイルの映像成分および音声成分の両方）に関して様々なコーデック、または、様々な圧縮が存在するため、クライアントがどのコーデックをサポートしているかを知ることは有益である。どのクライアントがどのようなフォーマットをサポートしているかを検出することで、特定のクライアントに対し送信すべき最善の映像品質を選択することが可能になる。例えば、ＡＭＲ−ＮＢ（ナロー・バンド）は、サイズを小さくしつつ人間の声に最適化するオーディオ・コーデックであるが、当該コーデックは、音楽にとって高品質とは言えない。しかしながら、ＭＰ４オーディオは、大きなサイズのフォーマットであり、少数のクライアントでのみサポートされるが、音楽およびマルチメディアにとって許容範囲にあることが知られている。
【００３５】
トランスコードされたビデオは、クライアントに対してストリーミングされてよい。ストリーミングにより、ビデオ・ファイルを全てダウンロードすることなしにビデオの再生を開始することが可能になる。ストリーミングは、また、当該ビデオの既に再生された部分を用いることで、クライアントのメモリにかかる負担を低減することができる。ストリーミングでは、ビデオ・ファイルを、クライアントへ個別的に送信可能な小さなパケットに分割する必要がある。ビデオ・ファイルをパケットに分割する処理は、「ヒンティング」（"hinting"）と称される。この処理には、分割されるべきパケットを準備する処理と、ストリーミング・サーバに対し、どのようにしてクライアントへ分割したパケットを送信するかを知らせる処理が含まれる。多くのストリーミング・サーバは、クライアントへビデオをストリーミングする前に、ヒンティングすべきビデオ・ファイルを要求する。ヒンティングされていなビデオ・ファイルは、ストリーミングに失敗することがあり、その場合、クライアントは、エラーを受信することになる。
【００３６】
実施の形態の例においては、ユーザが映像コンテンツを含んだウェブ・ページに遭遇すると、ユーザは、当該映像コンテンツを表示させることを選択してサーバが当該ビデオ・ファイルをトランスコードしてトランスコード済のビデオ・ファイルを該ユーザのクライアント・デバイスへストリーミングするのを待つことができる。あるいは、ユーザは、サーバが当該ビデオ・ファイルをトランスコードしてトランスコード済のビデオ・ファイルを該ユーザのデバイスへ送ることをリクエストしてもよい。この場合、トランスコード済のビデオ・ファイルは、保存される。ビデオがトランスコードされるのを待つ間、例えば、ユーザは別のウェブ・サイトをブラウジングしてもよい。そして、ユーザは、後でビデオ・ファイルを表示させてよい。この場合には、「インボックス」（"inbox"）のビデオ・ファイルにアクセスするのが便利である。また、さらに別に、トランスコード済のビデオ・ファイルは、サーバ、または、その他のデータベースに保存されてもよい。ここで、サーバは、該ユーザのデバイスに対し、ビデオ・ファイルのトランスコードが完了したことを示す通知を該ユーザのデバイスへ送ることが可能である。そして、ユーザは、ビデオ・ファイル・インボックスにアクセスしてトランスコード済のビデオ・ファイルを該ユーザの移動デバイスへ送ることをリクエストすることができる。ビデオ・ファイルをトランスコードして、トランスコードされた形式で保存することにより、ユーザは、ユーザは、ビデオが変換される間、待機せずに、トランスコード済のビデオ・ファイルを表示させるタイミングを選ぶことが可能になる。
【００３７】
図２は、クライアント・デバイス上に表示させるための情報コンテンツの処理の方法２００を機能的ステップで記載したフローチャートである。当然のことながら、本フローチャート（および、本願に示した別の流れ図）の各ブロックは、コンピュータ・プログラムのモジュール、セグメント、または、一部分であると解してよく、これらは、処理における特定の論理関数もしくは工程を実現するための１つまたは複数の実行可能な命令を含んでいる。本願の実施の形態にかかる当業者であれば理解すると思われるが、本実施の形態例が示すような順番とは異なる順番で機能が実行される別の実施例も、機能に応じて同時的あるいは逆順で機能が実行されるような場合も含め、本実施の形態例の範囲に含まれる。
【００３８】
先ず、クライアント・ブラウザ１１０は、情報コンテンツについてのリクエストをサーバ・ブラウザ１０８へ送る。サーバ・ブラウザ１０８は、情報源１０２とコンタクトをとって、情報コンテンツを取得する。それから、ブロック２０２に示すように、サーバ・ブラウザ１０８は、情報源１０２から情報コンテンツを受け取る。情報コンテンツは、テキストおよびそれと関連した画像を含んだ典型的なウェブ・ページ（例えば、ＨＴＭＬドキュメント）であってよい。情報コンテンツは、ビデオ・ファイルを含んでもよい。
【００３９】
ブロック２０４に示すように、ビデオ・ファイルを含む、リクエストした情報コンテンツを受け取った後、サーバは、ウェブ・ページをロードしてビデオを含むコンテンツ（映像コンテンツ）を特定する。サーバは、当該ウェブ・ページに対する全てのアタッチメントもしくはリンクをフィルタリングし、該リンクと関連付けされたファイルのタイプに注目して、ウェブ・ページに含まれるビデオ・コンテンツ（映像コンテンツ）を特定してよい。ビデオ・コンテンツ（映像コンテンツ）を含むウェブ・ページの範囲について、サーバは、ブロック２０６に示すように、当該ウェブ・ページのビデオ・コンテンツに対するリファレンス（参照）を生成してもよい。例えば、サーバは、該映像の第１フレームの静止画像のような、ビデオのスナップショットを取得または生成し、ユーザへ提示する。サーバは、また、ブロック２０８に示すように、当該ウェブ・ページをハンドヘルド・デバイス上で表示させるために適正化し、該ウェブ・ページをビデオ・コンテンツに対するリファレンスと一緒にクライアント・デバイスへ送る。サーバは、また、クライアント・デバイスのユーザがサーバに該ビデオ・ファイルを該クライアント・デバイス上に表示可能なフォーマットにトランスコードさせる指示するための、ユーザが選択可能なリンクを含んでもよい。
【００４０】
サーバにビデオ・ファイルを変換させる指示のためのリンクが選択されると、サーバは、ブロック２１０に示すように、該リクエストを受け取る。ビデオは、クライアント・デバイスの性能、または、クライアント・ブラウザの性能に基づいて変換される。そして、サーバは、ブロック２１２に示すように、ビデオの変換が完了したことを該ユーザに通知する。サーバは、例えば、ユーザがビデオを見ることを可能にするリンクを含んだショート・メッセージ・サービス（ＳＭＳ）またはプッシュ型メッセージングといった何通りもの方法で、ユーザに通知してよい。従って、該通知は、ＩＳ−４１および暫定標準（Interim Standard）６４７−Ａ（ＩＳ−６４７−Ａ）として、アメリカ電気通信工業会（Telecommunication Industry Association）から出版されている、周知のショート・メッセージ・サービス（ＳＭＳ）のプロトコルに基づくテキスト・メッセージでよい。上記出版物は、参照により本願の開示に含まれる。しかしながら、該通知のメッセージは、どのような形式を有してもよい。それには、例えば、ボイス・メッセージ、グラフィカル・アイコンによるメッセージ、または、テキスト、グラフィックスおよび音声のあらゆる組み合わせが含まれる。
【００４１】
通知のメッセージは、アイデンティファイア（識別子）を含む。当該識別子は、関連付けされたトランスコード済のビデオ・ファイルにリンクされる。サーバは、通知のメッセージをクライアント・デバイスへ送る前に、通知にビデオ・ファイルの識別子を含めてもよい。次に、クライアント・デバイスは、該識別子をサーバへ送信して関連付けされたトランスコード済のビデオ・ファイルを取得してよい。この手法においては、サーバは、例えば、「マイ・ビデオ」（"My Videos"）ページのようなページに対するリンクを送信してもよい。マイ・ビデオ・ページは、ユーザがこれまでに変換することをリクエストした全てのビデオ（であって未だキャッシュの期限が切れていないビデオ）にアクセスすることができるページである。
【００４２】
ひとたびサーバが該ユーザのためにビデオ・ファイルをトランスコードすれば、仮にユーザが、同一のビデオ・ファイルが含まれる、前のウェブ・ページに戻ってブラウジングを行うような場合でも、サーバは、ビデオ・ファイルを変換する選択肢を与える代わりに当該ビデオを見るための選択肢をユーザに提示する。なぜなら、サーバは、（必要なときに、）保存されたトランスコード済のビデオ・ファイルに対し自由にアクセスすることができるからである。変換されたビデオは、キャッシュされ、また、変換されたファイルがキャッシュされる時間幅も設定変更可能である。
【００４３】
サーバは、トランスコードされた形式でビデオ・ファイルを保存可能であるため、もし仮に、第２のユーザがオリジナルのビデオをブラウジングして、当該ビデオを表示させることを望むような場合には、第２のユーザは、直ちに、当該トランスコード済のビデオを表示させることが可能である（あるいは、第２のユーザの移動デバイスが当該トランスコード済のビデオを表示する能力を有するとして、当該トランスコード済のビデオにアクセスすることが可能である）。なぜなら、サーバは、既に変換にかかる処理を完了しているからである。本手法においては、サーバは、時間を限定して、トランスコード済のビデオ・ファイルを保存する。もし仮に、第２のユーザが、当該時間中に、既にトランスコードされたビデオ・ファイルの１つをリクエストするような場合には、サーバは、単純に、トランスコードしたビデオ・ファイルを取得して当該トランスコード済のビデオ・ファイルを該第２のユーザに提供する。トランスコード済のビデオ・ファイルを短期間保存することにより、ユーザは、サーバが変換している間待つ必要なしにビデオを表示させることが可能になり、サーバは、最近トランスコードしたビデオ・ファイルのみを保存すればよくなり、大きなメモリ・バンク（memory bank）が不要になる。例示の実施の形態を用いれば、その他のユーザも、トランスコードされた形式でビデオを容易に入手可能になる。なぜなら、サーバは、所望の期間にわたり、当該ビデオ・ファイルのトランスコードされた形式を保持するからである。
【００４４】
図３Ａは、図２のフローチャートに示した方法を実行するサーバ３００の一例を示すブロック図である。サーバ３００は、プロセッサ３０４およびサーバ・ブラウザ３０６と接続される入力インタフェース３０２を有する。サーバ・ブラウザ３０６は、メモリ（図示せず）に保持されており、プロセッサ３０４がメモリにアクセスしてソフトウェアもしくはプログラム命令群を実行することにより、当該サーバ・ブラウザ３０６としての動作が実現される。サーバ・ブラウザ３０６は、ＴＣＰ／ＩＰエンジン３０８といったコンポーネントを含む。サーバは、ビデオ・ファイル・コンバータ３１２を備えたビデオ・ストリーマ３１０も含んでよく、これらは、例えば、プロセッサが追加的ソフトウェアもしくはプログラム命令群を実行することにより実装される。あるいは、ビデオ・ストリーマ３１０およびビデオ・ファイル・コンバータ３１２は、プロセッサ３０４の一部に含まれて実装されてもよい。また、ビデオ・ストリーマ３１０およびビデオ・ファイル・コンバータ３１２は、サーバ３００とは別のコンピュータに含まれてもよい。ストリーマおよびコンバータが分離された場合、ストリーマおよびコンバータは、ビデオ・トランスコード・サーバと称されてよい（図３Ｂに示すビデオ・トランスコード・サーバ３１６）。一つのサーバ３００が、多くのビデオ・トランスコード・サーバに対しビデオのトランスコードについてのリクエストを行ってよい。ビデオ・データベース３１４は、トランスコード済のビデオを保持する。ビデオ・ストリーマ３１０およびビデオ・ファイル・コンバータ３１２が、サーバ３００とは別のコンピュータにある場合、サーバ３００は、ウェブ・ページのコンテンツ（内容）のトランスコードを実行し、ビデオ・トランスコード・サーバ３１６が、ビデオ・ファイルのコンテンツ（内容）のトランスコードを行う。
【００４５】
サーバ・ブラウザ３０６は、プロセッサ３０４により実行可能なソフトウェア・アプリケーションであり、電子ドキュメントもしくは電子データを読み取り、表示用に、読み取ったデータからテキストおよび／またはグラフィックスの視覚表示を作成する。サーバ・ブラウザ３０６は、上述の操作機能にかかるコンポーネントを、ウィンドウ、プルダウン・メニュー、ボタン、および、スクロール・バー、として含むことができる。サーバ・ブラウザ３０６は、典型的なウェブ・ブラウザであってよい。
【００４６】
サーバ３００は、クライアント・デバイスから、情報についてのリクエストを受け取り、それに応答する形で情報源にアクセスして情報を取得する。そして、サーバ３００は、プロセッサ３０４により、当該情報を、リクエストしたクライアント・デバイスがアクセス可能な形式に変換する処理を行う。例えば、クライアント・デバイスは、典型的なウェブ・ページをリクエストしてよく、よって、サーバ３００は、インターネットにアクセスしてリクエストされたウェブ・ページを取得し、プロセッサ３０４が、当該ウェブ・ページを、クライアント・デバイスがアクセス可能な形式に変換する。いくつかの例においては、当該ウェブ・ページは、ムービー（動画）もしくはビデオのファイルを含み、サーバ３００は、当該ウェブ・ページを読み取ってサーバ・ブラウザ３０６上にロードする。そして、プロセッサ３０４は、当該ムービーの静止画像をキャプチャし、キャプチャした画像を、当該ウェブ・ページをクライアント・デバイスで表示可能なフォーマットに変換する途中で当該ウェブ・ページへ挿入する。プロセッサ３０４は、さらに、ビデオ・ファイル・コンバータ３１２にアクセスしてビデオ・ファイルをクライアント・デバイス上に表示して鑑賞可能なフォーマットにトランスコードする。ビデオ・ファイル・コンバータ３１２は、トランスコード済のビデオをデータベース３１４へ書き込み、当該ビデオが利用可能になれば、ビデオ・ストリーマ３１０が、データベースからビデオを読み出す。そして、ビデオ・ストリーマ３１０は、実際のビデオ・コンテンツをクライアントへ送る。
【００４７】
図４は、本願の、図１に示したシステムにおける動作のシークエンスを示した流れ図の例である。先ず、図示されるように、クライアント・デバイス１０６が、ＨＴＭＬウェブ・ページをリクエストする。クライアント・デバイス１０６は、該リクエストをサーバ１０４へ送り、サーバ１０４は、情報源１０２からＨＴＭＬウェブ・ページを取得する。サーバ１０４は、情報源１０２から、ＨＴＭＬウェブ・ページを取得し、該ウェブ・ページをトランスコードして、当該ウェブ・ページをクライアント・デバイス１０６上での表示のために調整する。そして、サーバ１０４は、変換したウェブ・ページをクライアント・デバイス１０６へ送る。ウェブ・ページがビデオ・ファイルまたはビデオ・ファイルへのリンクを含むような場合には、サーバ１０４は、単純に、当該ビデオ・ファイルからの静止画像を、ウェブ・ページの内容に挿入してもよい。そして、クライアント・デバイス１０６は、サーバ１０４に対しビデオ・ファイルの内容をリクエストしてもよい。サーバ１０４は、情報源から該ビデオ・ファイル・コンテンツを取得する。そして、サーバ１０４は、該ビデオ・ファイルをトランスコードし、該ビデオ・ファイルのトランスコードは完了しておりデバイス上で表示する準備が整っていることを示す通知をもってクライアント・デバイス１０６へ応答する。当該通知は、トランスコード済のビデオ・ファイルを表示させるために選択するリンク、および／または、デバイスのユーザがリクエストしたことがあるトランスコード済のビデオ・ファイルを入手するために供されるビデオ・インボックスにアクセスするために選択する第２のリンクを含んでよい。
【００４８】
サーバは、ショート・メッセージ・サービス・センタ（ＳＭＳＣ）と接続されてよい。該センタは、ＳＭＳメッセージの形式にて、クライアント・デバイスへ通知を送信する。ＳＭＳＣは、メッセージに関するストア・アンド・フォワード・システム（store-and-forward system）として機能する。システム１００は、宛先のクライアント・デバイスを捜索するのに必要な機構を提供する。そして、ＳＭＳＣは、当該宛先のクライアント・デバイスへメッセージを届ける。ＳＭＳＣは、（例えば、ＩＳ−４１に規定されるような「フォワードショートメッセージ」（"forwardShortMessage"）の機構を用いて実現される）ＳＭＳデリバリー・ポイント・ツー・ポイント（ＳＭＳＤＰＰ）フォーマットを用い、クライアント・デバイスへＳＭＳメッセージを転送してもよい。だが、クライアント・デバイスが、ＳＭＳＣがメッセージの配送を試みている際にアクセス不能である場合、ＳＭＳＣは、後ほどＭＳがアクセス可能になるまでの間該メッセージを保存してよい。ＳＭＳＣを通してクライアント・デバイスへ通知メッセージを送るために、幾つかのメカニズムが利用可能である。例えば、ページング・ネットワーク、メッセージングをベースにした専用のパーソナル・コンピュータ・ソフトウェア、および、オペレータ・ビューローは、通知メッセージを始めることができる。
【００４９】
あるいは、サーバ１０４は、ＩＳ−４１が規定するエクスターナル・ショート・メッセージ・エンティティ（ＥＳＭＥ）として機能してもよい。サーバ１０４は、ビデオ・ファイルのトランスコードが完了したことを示す通知メッセージを生成し、生成したメッセージをクライアント・デバイスへ、ある回路（a circuit）またはパケット・スイッチ・ネットワーク（パケット交換網）（packet switched network）を介して送ってよい。通知メッセージは、ＩＳ−４１および暫定標準（Interim Standard）６４７−Ａ（ＩＳ−６４７−Ａ）として、アメリカ電気通信工業会（Telecommunication Industry Association）から出版されている、周知のショート・メッセージ・サービス（ＳＭＳ）のプロトコルに基づくテキスト・メッセージでよい。上記出版物は、参照により本願の開示に含まれる。しかしながら、該通知のメッセージは、どのような形式を有してもよい。それには、例えば、ボイス・メッセージ、グラフィカル・アイコンによるメッセージ、または、テキスト、グラフィックスおよび音声のあらゆる組み合わせが含まれる。
【００５０】
また、通知メッセージは、好ましくは、アイデンティファイア（識別子）を含む。当該識別子は、関連付けされたトランスコード済のビデオ・ファイルにリンクされる。例えば、サーバ１０４は、サーバ１０４がメッセージをクライアント・デバイスへ送る前に、通知メッセージにビデオ・ファイルの識別子を含めてもよい。クライアント・デバイスは、該識別子をサーバ１０４へ送信して関連付けされたトランスコード済のビデオ・ファイルを取得してよい。
【００５１】
図５ないし図８は、本願記載の方法を実行した際のクライアント・デバイスの概念的なスクリーン・ショットの例図である。例えば、図５は、ハンドヘルド・デバイスにおいて表示されるトランスコードされたウェブ・ページの概念を示す図である。本例において、ウェブ・ページは、ビデオ・ファイルを表すサムネイル画像と当該ビデオを見るためまたは当該ビデオをハンドヘルド・デバイス上で表示可能なフォーマットに変換するために選択されるリンクを含む。ユーザが、「ビデオを見る」をクリックすると、ネイティブのビデオ・プレーヤが起動され当該ビデオが再生される。サーバは、当該ビデオをリアル・タイムでストリーミングし、ストリーミング中に当該ビデオの変換またはトランスコードを行う。サーバにおいて当該ビデオをクライアント・デバイス上で表示可能なフォーマットに変換することによる遅延により、ビデオがデバイスにロードされまでに幾分時間がかかる。
【００５２】
サーバがビデオ・ファイルの変換を実行中にユーザが別のページをブラウジングするか別のタスクを実行しようとするならば、ユーザは、図６に示す「ビデオを変換する」をクリックすればよい。するとサーバは、ビデオ・ファイルのトランスコードを開始し、図６に示すメッセージがクライアント・デバイス上に表示可能である。該メッセージは、変換が進行中であり、当該変換が完了すればユーザに通知されることを示している。クライアント・デバイスのユーザは、例えば、それを待つ間、別のウェブ・ページをブラウジングしてよい。
【００５３】
ひとたびサーバがビデオ・ファイルの変換を完了すれば、サーバは、クライアント・デバイスへ通知を送る。図７に示すように該通知は、ビデオ・ファイルのトランスコードが完了しクライアント・デバイス上で表示させる準備が整ったことを示す。該通知は、また、当該トランスコード済のビデオ・ファイルを表示させるために選択するリンク（「今すぐビデオを見る」）、および、該デバイスのユーザがリクエストしたことがあるトランスコード済のビデオ・ファイルへのアクセスを供するビデオ・インボックスにアクセスするために選択される第２のリンク（「マイ・ビデオ」）を含む。図７は、ユーザが「今すぐビデオを見る」リンクを選択し、サーバがクライアント・デバイスへトランスコード済のビデオをストリーミングし、クライアント・デバイスが該ビデオを表示するためにビデオ・プレーヤを起動している状況の例図である。
【００５４】
クライアント・デバイスは、通知のメッセージを表示させるアプリケーションを備える。例えば、ショート・テキスト・メッセージを表示する典型的なＳＭＳテキスト・ビューワが、場合によっては省略形の単語や文章を用いて、クライアント・デバイスにおいて通知のメッセージを表示させればよい。また、クライアント・ブラウザが、通知のメッセージを表示可能であってもよい。さらに別のグラフィカル・ユーザ・インタフェースやテキスト形式ユーザ・インタフェースを用いてもよい。
【００５５】
クライアント・デバイスは、サーバから通知のメッセージを受信して、クライアント・ブラウザのようなアプリケーションを用いて該メッセージをリスト状にして（あるいは、同等のグループ分けを行って）、クライアント・デバイスのユーザに表示してよい。クライアント・デバイスが通知のメッセージを受信すると、クライアント・ブラウザは、クライアント・デバイスのユーザが以前および／ただ今受信した全てのメッセージを、応答可能なように開いてよい。あるいは、ユーザは、クライアント・デバイスに対して開くことを要求してもよく、そして、ブラウザが開いた後で、ユーザは、通知のメッセージのリストをスクロール・アップまたはダウンしてユーザが表示を望むトランスコード済のビデオ・ファイルと関連したメッセージを選択すればよい。
【００５６】
通知のメッセージは、（テキストの、もしくは、符号化された）複数のパラメータ、または、トランスコード済のビデオ・ファイルの情報を含んでよい。例えば、通知のメッセージは、ビデオ・ファイルの名前、長さ、リクエストの日時、もしくは、ビデオ・ファイルにかかるその他の特性、または、ビデオ・ファイルをリクエストしたウェブ・サイトを含んでよい。
【００５７】
図８は、ユーザが「マイ・ビデオ」リンクを選択した場合にサーバがクライアント・デバイスをユーザのビデオ・インボックスに接続する状況を示す例図である。該ビデオ・インボックスは、ただ今リクエストしたトランスコード済のビデオ・ファイルや、今もなお保存中の以前にリクエストした全てのトランスコード済のビデオ・ファイルへのリンクを含んでいる。ユーザは、これらビデオ・ファイルのいずれかを表示させるために特定のリンクを選択してよい。サーバは、限定的な時間にわたり、該ユーザのためにトランスコード済のビデオ・ファイルを保存してよい。そうすることで、ユーザは、その時間の間は、リクエストしたビデオ・ファイルを入手（アクセス）できる。サーバは、例えば、一週間後に、記憶装置からトランスコード済のビデオ・ファイルを削除してよい。そうすることで、ユーザが、一週間後にユーザのビデオ・インボックスを訪れたときには、ユーザは、もはや当該トランスコード済のビデオ・ファイルを入手（アクセス）できなくなっている。トランスコード済のビデオ・ファイルに対するアクセスは、回転するようにして（on a rolling basis）、ユーザのビデオ・インボックスに追加され削除される。
【００５８】
ひとたびユーザが通知のメッセージに含まれるリンクを選択すれば、クライアント・デバイスは、該メッセージから識別子（アイデンティファイア）を抽出し、該識別子をサーバへ送り、保存中のトランスコード済のビデオ・ファイルをリクエストする。するとサーバは、該トランスコード済のビデオ・ファイルをクライアント・デバイスへ、既知の手法に基づいてストリーミングする。
【００５９】
上述の実施の形態により、ユーザは、ビデオ・ファイルをクライアント・デバイスで表示させるためにビデオ・ファイルをトランスコードすることをリクエストすることができ、そして、後でクライアント・デバイスからトランスコード済のビデオ・ファイルを取得することができる。ビデオ・ファイルが変換されるのを待つ代わりに、ユーザは、該ビデオ・ファイルのトランスコードされたバージョンを後で取得することができ、利便性に優れる。そして、トランスコード済のビデオ・ファイルは、ユーザのビデオ・インボックスにおいて、限定的な期間にわたり、利用することができる。
【００６０】
上述の方法は、一つのサーバとクライアントからなるシステムに関して説明された。だが、該システムは、随時、それぞれが多くのクライアントと通信可能なサーバを多数含んでよい。図９は、複数のサーバを有するシステムに関する実施形態例の図である。システムは、サーバ４０２、４０４、４０６を有し、それぞれが、ネットワーク４１０を介して情報源４０８に接続される。多くのクライアント・デバイスは、各サーバと個別的に通信する。例えば、クライアント・デバイス４１２ａ−ｃは、ネットワーク４１４を介してサーバ４０２ａと通信し、クライアント・デバイス４１６ａ−ｃは、ネットワーク４１８を介してサーバ４０４ａと通信し、クライアント・デバイス４２０ａ−ｃは、ネットワーク４２２を介してサーバ４０６ａと通信する。
【００６１】
ネットワーク４１４、４１８、４２２は、ＣＤＭＡネットワークのように、ワイヤレス・ネットワークでよい。あるいは、イーサネット・ネットワークのように、有線ネットワークでもよい。また、ネットワーク４１４、４１８、および４２２は、別個のネットワークであるかのように図示されているが、ネットワーク４１４、４１８、および、４２２は、同一のネットワークでもよく、また、同一のネットワークの部分（サブセット（subset））でもよい。その場合、クライアント・デバイス４１２ａ−ｃ、４１６ａ−ｃ、および、４２０ａ−ｃは、同一のネットワークを介し、サーバ４０２、４０４、および、４０６と通信する。この点において、ネットワーク４１０は、有線またはワイヤレスのネットワークでよく、また、ネットワーク４１４、４１８、および、４２２と同一のネットワークであってもよい。したがって、各サーバおよび各クライアント・デバイスのクラスタは、例えば、同一のネットワークを介して違いに通信してよい。
【００６２】
本願にかかる方法は、図９に示したシステムにおいて、リソースの最適化およびクライアント・デバイスがリクエストした情報コンテンツを受信するのにかかる待ち時間の短縮化のために用いられてよい。図９に示したシステムにおけるサーバ群においては、一度だけビデオ・ファイルをトランスコードすればよいことが望ましい。そのため、ある実施の形態においては、図９に示したシステムは、データベース４２４を備え、トランスコードされたビデオ・ファイルを保存し、各サーバ４０２、４０４、および、４０６は、ネットワーク４１０を介してトランスコード済のビデオ・ファイルを格納および取得すればよい。
【００６３】
該システムに含まれる集中型データベース４２４により、様々な手法によりサーバの処理能力を最適化してよい。例えば、短期間にわたり、多くのクライアント・デバイスが同一のビデオ・ファイルを情報源４０８に対してリクエストすると、サーバがそれぞれ同一のビデオ・ファイルを複数回にわたりトランスコードしてトランスコードされたビデオ・ファイルをクライアント・デバイスへ送信しなければならない。代わりに、サーバはデータベース４２４にアクセスしてビデオ・ファイルが既にトランスコードされて保存されているかを確認し、単純に、トランスコード済のファイルを取得して当該トランスコード済のファイルを、リクエストしているクライアント・デバイスへ送ることができる。
【００６４】
サーバは、サーバがトランスコードするビデオ・ファイルのデータベース４２４に保存してよい。また、サーバは特定のトランスコード済ファイルのみを保存してもよい。例えば、サーバは、特定数のリクエストを受けたビデオ・ファイルのトランスコード済ビデオ・ファイルのみを保存してよく、そうすれば、当該ビデオが十分にポピュラーになった場合（例えば、１００回のリクエストを受けた場合）、トランスコード済ビデオ・ファイルのコピーをデータベース４２４に保存することができる。そして、全てのサーバが、当該トランスコード済ビデオ・ファイルにアクセスする。
【００６５】
データベース４２４は、限定的な時間にわたり、トランスコード済のビデオ・ファイルを保存してよい。例えば、データベース４２４は、およそ一週間にわたりビデオを保存し、ファースト・イン・ファースト・アウトの基準でビデオを削除してよい。
【００６６】
他の代替例として、図９のサーバのクラスタに含まれる、あるサーバが、特定のビデオ・ファイルについてのトランスコードのリクエストを非常に沢山受け取るような場合、該サーバは、結果として得られたトランスコード済のビデオ・ファイルのコピーを、クラスタに含まれる全ての他のサーバへ送り、各サーバが手許にコピーを保有してリクエストするクライアント・デバイスへ送る準備を整えてもよい。この手法によれば、クライアント・デバイスは、ポピュラーなビデオ・ファイルを受信するときの待ち時間を短縮できる。
【００６７】
本願に記載のプログラム、プロセス、方法、および、システムは、（特に示唆しない限り）特定の種類のコンピュータあるいはコンピュータ・システム（ハードウェアもしくはソフトウェア）に関係するように、または、限定されるように解されてはならない。本願に記載の教示に従って、様々な種類の汎用または専用のコンピュータ・システムを用い、動作を実現することができる。
【００６８】
本願記載の構成は、例示のみを目的として記されている。したがって、当業者は、他の構成および他の構成要素（例えば、機械、インタフェース、機能、命令、および、機能のグループ化等）を代替として用いることが可能である。また、望む結果に応じて幾つかの構成要素を省略することも可能である。また、本願に記載の構成要素の多くは、機能的なまとまりであり、これらは、個別のコンポーネント、もしくは、分散したコンポーネント、または、複数のコンポーネントの結合として、適当な組み合わせおよび位置関係で、実施可能である。
【００６９】
本願の基本原理が適用可能な様々な実施形態を鑑み、例示の実施形態は、例示でしかないと解され、また、本願の範囲を限定するように解釈してはならない。例えば、流れ図に記載の工程は、記載した順序と異なる順序であってもよい。また、ブロック図に記載の構成要素よりも少ない要素、または、より多い要素を用いてもよい。実施形態における構成要素は、ソフトウェアとして実施されると記したが、別の実施形態においてハードウェアもしくはファームウェアとして実施してもよい。その逆もまた可能である。
【００７０】
本願は、完全に機能的サーバおよびクライアント・デバイスのシステムおよび方法という文脈で説明を行っている。だが、当業者であれば、本願の機構は、様々な形式の命令群を含んだコンピュータ読み取り可能な媒体として配布可能であることを理解する。また、当業者であれば、本願は、現実に上記配布に供される媒体が担持する信号の種類の如何によらず、等しく適用可能であることを理解する。例えば、コンピュータが利用可能な媒体には、コンピュータ読み取り可能なコードのセグメントが記録されたハード・ドライブ・デバイス、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、コンピュータ・ディスケットといった読み取り可能記憶装置が含まれる。コンピュータ読み取り可能媒体は、また、デジタルもしくはアナログ・データ信号を搬送するプログラム・コード・セグメントを有する、バスや、通信リンクや、光、有線、もしくは、無線式の通信媒体または送信媒体を含むことができる。したがって、本願に記載の方法は、本願に記載のサーバ１０４またはクライアント・デバイス１１０における、１つまたは複数のコンピュータ読み取り可能媒体を有するコンピュータ・プログラム製品として実施してよい。
【００７１】
その旨が記載されない限りにおいて、クレームは、記載の順序や要素に限定するように解釈されてはならない。したがって、クレームの範囲および思想に含まれる全ての実施形態ならびにその均等物は、本発明としてその権利が主張される。
【符号の説明】
【００７２】
１００  ・・・  システム
１０２  ・・・  情報源
１０４  ・・・  サーバ
１０６  ・・・  クライアント・デバイス
１０８  ・・・  サーバ・ブラウザ
１１０  ・・・  クライアント・ブラウザ
１１２  ・・・  トランスレータ
１１４  ・・・  ビデオ・トランスコード・サーバ
１１６  ・・・  ビデオ・データベース
３００  ・・・  サーバ
３０２  ・・・  入力インタフェース
３０４  ・・・  プロセッサ
３０６  ・・・  サーバ・ブラウザ
３１０  ・・・  ビデオ・ストリーマ
３１２  ・・・  ビデオ・ファイル・コンバータ
３１４  ・・・  データベース
３１８  ・・・  ビデオ・トランスコード・サーバ・インタフェース
４０８  ・・・  情報源
４１０  ・・・  ネットワーク
４１４  ・・・  ネットワーク
４１８  ・・・  ネットワーク
４２２  ・・・  ネットワーク
４２４  ・・・  データベース
【図１Ａ】
2010518509.tif 000003
【図１Ｂ】
2010518509.tif 000004
【図２】
2010518509.tif 000005
【図３Ａ】
2010518509.tif 000006
【図３Ｂ】
2010518509.tif 000007
【図４】
2010518509.tif 000008
【図５】
2010518509.tif 000009
【図６】
2010518509.tif 000010
【図７】
2010518509.tif 000011
【図８】
2010518509.tif 000012
【図９】
2010518509.tif 000013
【国際調査報告】
2010518509.tif 000014
2010518509.tif 000015