(57)【要約】  本発明の一実施形態が、２つ以上の異なるコンテンツプレーヤ上でデジタルコンテンツの再生を同期させる技術を開示する。各コンテンツプレーヤは、ローカル時間信号を、タイムサーバによって維持管理される時間基準信号に同期させる。コンテンツプレーヤに関する動作が、所与のコンテンツプレーヤの各ローカル時間信号に対して同期され、それにより、一群の関連コンテンツプレーヤでの再生が同期される。各コンテンツプレーヤは有利には、異なる再生オプションを用いて設定され、各ユーザが、一組の再生オプションのみを提供する従来技術に係るソリューションで可能なものより良好な、共有された鑑賞体験を持つことが可能にされる。
2013536639.tif 000002
【特許請求の範囲】
【請求項１】
複数のエンドポイント装置に跨ってデジタルコンテンツタイトルを同期再生する方法であって、
再生セッション識別子をコンテンツサーバに送信するステップであり、該再生セッション識別子は前記デジタルコンテンツタイトルの固有の再生セッションに関連付けられる、ステップと、
再生コマンドと該再生コマンドを実行する指定時間とを含むサーバサイドイベントを受信するステップと、
遠隔タイムサーバによって生成される時間基準信号に同期化されたローカル時間信号に基づき、前記指定時間に実行されるよう前記再生コマンドをスケジューリングするステップと、
を有する方法。
【請求項２】
前記ローカル時間信号は、前記ローカル時間信号を生成するローカル時間クライアントと前記遠隔タイムサーバとの間で確立された時間同期化プロトコルを介して同期化される、請求項１に記載の方法。
【請求項３】
前記時間同期化プロトコルは業界標準ネットワークタイムプロトコルを有する、請求項２に記載の方法。
【請求項４】
１つ以上の再生特性を前記コンテンツサーバに送信するステップ、を更に有する請求項１に記載の方法。
【請求項５】
前記１つ以上の再生特性は、製品モデル、利用可能な表示解像度、サポートされるビデオフォーマット、サポートされるオーディオフォーマット、字幕の好み、及び好みのオーディオトラック言語のうちの少なくとも１つを有する、請求項４に記載の方法。
【請求項６】
前記デジタルコンテンツタイトルは複数のデジタルコンテンツファイルを含み、当該方法は更に、前記１つ以上の再生特性に基づいて、前記複数のデジタルコンテンツファイルに含まれる第１のデジタルコンテンツファイルのダウンロードを開始するステップ、を更に有する、請求項４に記載の方法。
【請求項７】
前記第１のデジタルコンテンツファイルに関連付けられたデータを、再生のために、ローカルなバッファメモリ内に格納するステップ、を更に有する請求項６に記載の方法。
【請求項８】
前記第１のデジタルコンテンツファイルの再生は前記ローカル時間信号に同期される、請求項７に記載の方法。
【請求項９】
前記ローカル時間信号を前記時間基準信号と同期させるステップ、を更に有する請求項１に記載の方法。
【請求項１０】
命令を格納したコンピュータ読み取り可能記憶媒体であって、前記命令は、処理ユニットによって実行されるとき、該処理ユニットに、複数のエンドポイント装置に跨って同期されるデジタルコンテンツタイトルの実行を：
再生セッション識別子をコンテンツサーバに送信するステップであり、該再生セッション識別子は前記デジタルコンテンツタイトルの固有の再生セッションに関連付けられる、ステップと、
再生コマンドと該再生コマンドを実行する指定時間とを含むサーバサイドイベントを受信するステップと、
遠隔タイムサーバによって生成される時間基準信号に同期化されたローカル時間信号に基づき、前記指定時間に実行されるよう前記再生コマンドをスケジューリングするステップと、
によって行わせる、コンピュータ読み取り可能記憶媒体。
【請求項１１】
前記ローカル時間信号は、前記ローカル時間信号を生成するローカル時間クライアントと前記遠隔タイムサーバとの間で確立された時間同期化プロトコルを介して同期化される、請求項１０に記載のコンピュータ読み取り可能記憶媒体。
【請求項１２】
前記時間同期化プロトコルは業界標準ネットワークタイムプロトコルを有する、請求項１１に記載のコンピュータ読み取り可能記憶媒体。
【請求項１３】
１つ以上の再生特性を前記コンテンツサーバに送信するステップ、を更に有する請求項１０に記載のコンピュータ読み取り可能記憶媒体。
【請求項１４】
前記１つ以上の再生特性は、製品モデル、利用可能な表示解像度、サポートされるビデオフォーマット、サポートされるオーディオフォーマット、字幕の好み、及び好みのオーディオトラック言語のうちの少なくとも１つを有する、請求項１３に記載のコンピュータ読み取り可能記憶媒体。
【請求項１５】
前記デジタルコンテンツタイトルは複数のデジタルコンテンツファイルを含み、前記実行は更に、前記１つ以上の再生特性に基づいて、前記複数のデジタルコンテンツファイルに含まれる第１のデジタルコンテンツファイルのダウンロードを開始するステップ、を更に有する、請求項１３に記載のコンピュータ読み取り可能記憶媒体。
【請求項１６】
前記第１のデジタルコンテンツファイルに関連付けられたデータを、再生のために、ローカルなバッファメモリ内に格納するステップ、を更に有する請求項１５に記載のコンピュータ読み取り可能記憶媒体。
【請求項１７】
前記第１のデジタルコンテンツファイルの再生は前記ローカル時間信号に同期される、請求項１６に記載のコンピュータ読み取り可能記憶媒体。
【請求項１８】
複数のエンドポイント装置に跨って同期されるデジタルコンテンツタイトルを実行するように構成されたコンピュータ装置であって、当該コンピュータ装置は処理ユニットを有し、
該処理ユニットは、
遠隔タイムサーバによって生成される時間基準信号にローカル時間信号を同期させ、
再生セッション識別子をコンテンツサーバに送信し、該再生セッション識別子は前記デジタルコンテンツタイトルの固有の再生セッションに関連付けられ、
再生コマンドと該再生コマンドを実行する指定時間とを含むサーバサイドイベントを受信し、且つ
前記遠隔タイムサーバによって生成される前記時間基準信号に同期化された前記ローカル時間信号に基づき、前記指定時間に実行されるよう前記再生コマンドをスケジューリングする、
ように構成されている、
コンピュータ装置。
【請求項１９】
前記処理ユニットによって実行されるときに、前記処理ユニットに、前記ローカル時間信号を同期させ、前記再生セッション識別子を送信させ、前記サーバサイドイベントを受信させ、且つ前記再生コマンドをスケジューリングさせる命令、を格納するメモリ、を更に有する請求項１８に記載のコンピュータ装置。
【請求項２０】
前記処理ユニットは更に、１つ以上の再生特性を前記コンテンツサーバに送信するように構成される、請求項１８に記載のコンピュータ装置。
【請求項２１】
前記デジタルコンテンツタイトルは複数のデジタルコンテンツファイルを含み、前記処理ユニットは更に、前記１つ以上の再生特性に基づいて、前記複数のデジタルコンテンツファイルに含まれる第１のデジタルコンテンツファイルのダウンロードを開始するように構成される、請求項２０に記載のコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、概してデジタルメディアに関し、より具体的にはストリーミングデジタルコンテンツの同期再生のためのシステム及び方法に関する。
【背景技術】
【０００２】
消費者へのコンテンツ配信の１つの一般的なモデルは、デジタルコンテンツのファイルを、通信ネットワークを介して、コンテンツサーバからコンテンツプレーヤに直接的に伝送することを含んでいる。コンテンツサーバは典型的に、通信ネットワークを介してコンテンツプレーヤにダウンロードすることが可能なデジタルコンテンツファイルを格納するように構成された、安全なコンピュータルーム内のコンピュータシステムである。各デジタルコンテンツファイルは、ユーザによく知られていそうな特定の識別タイトル（例えば、“風と共に去りぬ”など）に関連付けられる。所与のデジタルコンテンツファイルが、ユーザによって選択され、再生前又は再生中にコンテンツサーバからコンテンツプレーヤにダウンロードされ得る。
【０００３】
コンテンツプレーヤは、汎用プラットフォーム上のコンピュータアプリケーションとして、あるいはデジタルコンテンツファイルを再生するように構成された専用装置として実装され得る。デジタルコンテンツファイルは、デジタルエンコードされた楽曲、サウンドトラック、映画、テレビ番組などを有し得る。コンテンツプレーヤは典型的に、タイトルの途切れのない再生を容易にするよう、デジタルコンテンツファイルの少なくとも一部をダウンロードして格納する。所与のタイトルに関し、ユーザは典型的に再生オプションの選択を与えられる。例えば、ユーザは所与のタイトルを、特定の言語で視聴したり、指定言語の字幕付きで視聴したりすることを選択し得る。
【０００４】
しばしば、タイトルは、二人以上のユーザがそのタイトルを同時に鑑賞する状況で再生される。例えば、複数のユーザが一緒に居間で、大画面テレビジョンで映画又はテレビ番組を視聴することを望むことがある。多くの一般的な状況において、複数のユーザのうちの二人が、相反する視聴オプションを選択したがることがある。例えば、一人のユーザは特定の映画を字幕付きで視聴することを望んでいるが、もう一人のユーザは自身の鑑賞体験が字幕で乱されることを望まないことがある。他の一例として、一人のユーザは監督による解説を含んだサウンドトラックとともに映画を視聴することを望んでいるが、もう一人のユーザはその映画の通常のサウンドトラックのみを聴くことを望むことがある。何れの場合も、これらユーザは相反する鑑賞嗜好を有するので、少なくとも一人のユーザは、もう一人のユーザの利益のために、自身の鑑賞の楽しみを犠牲にしなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
以上が例示するように、二人以上のユーザが、ユーザ各々の鑑賞嗜好に応えながら鑑賞体験を共有することを可能にする技術が望まれる。
【課題を解決するための手段】
【０００６】
本発明の一実施形態は、複数のエンドポイント装置に跨ってデジタルコンテンツタイトルを同期再生する方法を開示する。当該方法は、ローカル時間信号を、遠隔タイムサーバによって生成される時間基準信号に同期させるステップと、再生セッション識別子をコンテンツサーバに送信するステップであり、該再生セッション識別子は前記デジタルコンテンツタイトルの固有の再生セッションに関連付けられる、ステップと、再生コマンドと該再生コマンドを実行する指定時間とを含むサーバサイドイベントを受信するステップと、前記ローカル時間信号に基づき、前記指定時間に実行されるよう前記再生コマンドをスケジューリングするステップとを含む。
【０００７】
他の実施形態は、限定するものではないが、開示の方法の１つ以上の態様を処理ユニットが実行することを可能にする命令を含んだコンピュータ読み取り可能媒体、並びに、開示の方法の１つ以上の態様を実行するように構成されたシステムを含む。
【０００８】
開示のシステム及び技術の１つの利点は、複数のユーザが個々人の鑑賞嗜好に基づいて共通の鑑賞体験を共有することが可能になることである。これは、ユーザ全員が一組の共通の鑑賞嗜好を共有することを強いる従来技術のソリューションとは対照的である。
【図面の簡単な説明】
【０００９】
本発明の上述の特徴を詳細に理解することができるよう、以上にて手短にまとめた本発明のより具体的な記述を、一部が添付図面に例示される複数の実施形態を参照して行う。しかしながら、添付図面は、本発明の典型的な実施形態のみを例示するものであり、故に、本発明の範囲を限定するものと見なされるべきでない。本発明はその他の等しく効果的な実施形態をも認めるものである。
【図１】本発明の１つ以上の態様を実装するように構成されたコンテンツ配信システムを例示する図である。
【図２】本発明の一実施形態に従ったコンテンツサーバシステムをより詳細に示す図である。
【図３】本発明の一実施形態に従った図１のコンテンツプレーヤをより詳細に示す図である。
【図４】本発明の一実施形態に従った同期された再生イベントを示す図である。
【図５】本発明の一実施形態に従った同期再生を実行する方法ステップ群を示すフロー図である。
【発明を実施するための形態】
【００１０】
以下の記載においては、より完全なる本発明の理解をもたらすため、数多くの具体的詳細事項が説明される。しかしながら、当業者に明らかになるように、本発明はそれらの具体的詳細事項のうちの１つ以上を用いずとも実施され得るものである。また、本発明を不明瞭にしないよう、周知の要素については説明していない。
【００１１】
図１は、本発明の１つ以上の態様を実装するように構成されたコンテンツ配信システム１００を例示している。コンテンツ配信システム１００は、コンテンツサーバ１０５、通信ネットワーク１５０、及びコンテンツプレーヤ（再生機）１１０を含んでいる。コンテンツサーバ１０５は、各々がコンピュータサーバを用いて実装される１つ以上のコンテンツサーバシステムを含んでいる。各コンピュータサーバは、ハードウェアコンピュータシステムを有していてもよいし、あるいは、１つ以上のハードウェアコンピュータシステムの任意の集合上で起動される仮想コンピュータシステムを有していてもよい。各コンテンツサーバシステムは、ファイルサーバ１３０、タイムサーバ１３２、ディレクトリサーバ１３４、又はこれらの何らかの組合せを実現し得る。
【００１２】
通信ネットワーク１５０は、コンテンツサーバ１０５とコンテンツプレーヤ１１０との間でデジタルデータを輸送するように構成された、技術的に好適な何らかのシステムを用いて実現され得る。一実施形態において、通信ネットワーク１５０は実質的に、業界標準インターネットプロトコル（ＩＰ）に基づく交換ルーティングネットワークを有する。人気のある“インターネット”通信ネットワークは、好適なＩＰベース通信ネットワークの一例である。
【００１３】
一実施形態において、ファイルサーバ１３０、タイムサーバ１３２及びディレクトリサーバ１３４は、通信ネットワーク１５０に結合された独立したコンピュータシステム上で動作するアプリケーションとして実装される。これに代わる一実施形態において、ファイルサーバ１３０、タイムサーバ１３２及びディレクトリサーバ１３４のうちの１つ以上は、通信ネットワーク１５０に結合された１つのコンピュータシステム上で実行されるアプリケーションとして実装される。これら実施形態の何れにおいても、これらのコンピュータシステムのうちの各々１つは、１つ以上の独立したハードウェアコンピュータシステムを含む任意のハードウェア構成がホストとなった独立ハードウェアコンピュータシステム若しくは仮想コンピュータシステムであってもよい。
【００１４】
ファイルサーバ１３０は、コンテンツプレーヤ１１０へのダウンロードのために、デジタルコンテンツファイルの格納及び取り出しを行うように構成される。例えばダウンロード要求全体の関数として、総ダウンロード帯域幅を高めるために、複数のファイルサーバ１３０−１、１３０−２等々が用いられてもよい。ディレクトリサーバ１３４は、コンテンツプレーヤ１１０がタイトルカタログ内の特定のタイトルの位置を特定し、１つ以上の対応するデジタルコンテンツファイルのファイルサーバ１３０のうちの１つからのダウンロードを開始することを可能にする技術的に好適な何らかの機構を実現する。或る特定のタイトルは、相異なる符号化フォーマットに対応する１つ以上の関連付けられたデジタルコンテンツファイルを有し得る。例えば、或る特定のタイトルは、異なる解像度及びフレームレートでエンコードされたビデオを含む複数の関連付けられたデジタルコンテンツファイルを有し得る。他の一例として、或る特定のタイトルは、異なる言語で吹き替えられた音声トラックを含む複数の関連付けられたデジタルコンテンツファイルを有し得る。
【００１５】
タイムサーバ１３２は、均等に量子化された時間ステップ（刻み）で経過時間を表す単調増加の時間値によって特徴付けられる時間基準信号を生成するように構成される。例えば、時間基準信号は、或る特定の基準時点以降に経過した秒及びその小数部分を表し得る。タイムサーバ１３２は、コンテンツプレーヤ１１０からの時間同期要求に応答するように構成され、時間基準信号に同期されたローカル時間信号をコンテンツプレーヤ１１０の各々が生成することを可能にする。
【００１６】
当業者が認識するように、技術的に好適な如何なる時間同期化プロトコルが、タイムサーバ１３２とコンテンツプレーヤ１１０との間で用いられてもよい。１つの典型的な時間同期化プロトコルは、業界標準ネットワークタイムプロトコル（ＮＴＰ）であり、これは、ＩＰベース通信ネットワークを介在させて、クライアント装置内のローカル時間信号を１つ以上のサーバ装置内の時間基準信号に同期させるよう、従来から使用されているものである。
【００１７】
コンテンツプレーヤ１１０は、ファイルサーバ１３０から入手可能なデジタルコンテンツファイル用の再生アプリケーションを実装している。所与のデジタルコンテンツファイルは、オーディオ再生用データ、ビデオ再生用データ、又はこれらを組み合わせたオーディオビデオ再生用データを含み得る。ビデオ・オーディオコンテンツの再生は、ローカル時間信号を介して同期される。デジタルコンテンツファイルはまた、例えば字幕、ビデオオーバーレイ、プログラム生成される動作、及びこれらに類するものなどのオプションコンテンツを含んでいてもよい。オプションコンテンツの再生は、ローカル時間信号を介して、再生されるビデオ・オーディオコンテンツに同期される。
【００１８】
各コンテンツプレーヤ１１０は、タイムサーバ１３２によって生成される時間基準信号にローカル時間信号を同期させるように構成された時間同期化クライアントを含む。特定のコンテンツプレーヤ１１０内の各再生アプリケーションは、そのコンテンツプレーヤ１１０のそれぞれの時間同期化クライアントによって生成されたローカル時間信号を受信する。各デジタルコンテンツファイルの再生は、例えば、ビデオ、オーディオ及び字幕の再生を同期させるよう、ローカル時間信号に従って同期される。
【００１９】
複数のコンテンツプレーヤ１１０がそれぞれのローカル時間信号をタイムサーバ１３２の時間基準信号に同期させることの結果として、複数のコンテンツプレーヤ１１０によって生成されるローカル時間信号も相互に同期される。故に、デジタルコンテンツ再生は有利なことにコンテンツプレーヤ同士間で同期され、例えば、コンテンツプレーヤ１１０−２での字幕再生がコンテンツプレーヤ１１０−１でのビデオ再生と同期される。他の一例として、コンテンツプレーヤ１１０−１が、例えば英語などの或る言語でオーディオ再生を始めて、或る特定のタイトルの同期ビデオ・オーディオ再生を実行しながら、コンテンツプレーヤ１１０−２が、例えば仏語などの別の言語での同一の同期オーディオタイトル再生を実行することができる。
【００２０】
一実施形態において、適宜、或る特定のコンテンツプレーヤ１１０−１が主コンテンツプレーヤとして指定され、或る異なるコンテンツプレーヤ１１０−２が補助コンテンツプレーヤ１１０として指定される。ユーザはタイトルを選択し且つそのタイトルに関連するデジタルコンテンツの再生態様を管理するために、主コンテンツプレーヤを操作する。例えば、主コンテンツプレーヤは、そのタイトルが再生や一時停止などをされるべき時を決定するために使用され得る。主コンテンツプレーヤは、例えば、居間で二人以上のユーザによって見られている大型テレビ画面上で選択タイトルに関連するビデオ及びオーディオを再生することなどの、主要な鑑賞体験を生成する。主コンテンツプレーヤは、対応するローカル時間信号に従って選択タイトルの再生を実行する。各コンテンツプレーヤがそれらの同期されたローカル時間信号に従って選択タイトルの再生を実行するので、２つ以上のコンテンツプレーヤ１１０は各々、選択タイトルの同期再生を実行し得る。重要なことに、各コンテンツプレーヤ１１０は、他とは異なる選択された鑑賞オプションの組を用いて、選択タイトルの同期再生を実行し得る。
【００２１】
図２は、本発明の一実施形態に従ったコンテンツサーバシステム２００をより詳細に示す図である。コンテンツサーバシステム２００は、図１のコンテンツサーバ１０５のコア機能を実現する。コンテンツサーバシステム２００は、限定するものではないが、中央演算処理ユニット（ＣＰＵ）２１０、ネットワークインタフェース２１８、インターコネクト２２０、メモリサブシステム２３０、及び大容量記憶（マスストレージ）システム２４０を含んでいる。
【００２２】
ＣＰＵ２１０は、メモリサブシステム２３０に格納されたプログラム命令を取り出して実行するように構成される。ＣＰＵ２１０は、インターコネクト２２０を介して、メモリサブシステム２３０からプログラム命令を取り出す。インターコネクト２２０は、ＣＰＵ２１０とコンテンツサーバシステム２００内のその他のサブシステムとの間での例えばプログラム命令及びアプリケーションデータなどのデータの伝送を支援するように構成される。その他のサブシステムには、限定するものではないが、ネットワークインタフェース２１８、メモリサブシステム２３０、及び大容量記憶システム２４０が含まれる。
【００２３】
大容量記憶システム２４０は不揮発データを記憶するように構成される。大容量記憶システム２４０は、単一の記憶装置、配列をなす複数の記憶装置、又は、独立した複数の記憶装置若しくは複数の配列をなす複数の記憶装置の集合を用いて実装され得る。各記憶装置は、少なくとも１つの磁気ハードディスクドライブ、フラッシュドライブ、又はその他の技術的に好適な不揮発性記憶モジュールを有し得る。不揮発データは、限定するものではないが、オペレーティングシステム（ＯＳ）ブートイメージ２４４、アプリケーション２４６、アプリケーションデータ２４８、及びローカルに保存されたデジタルコンテンツファイル２４２を含み得る。大容量記憶システム２４０は、インターコネクト２２０を介してＣＰＵ２１０に結合される。
【００２４】
ネットワークインタフェース２１８は、通信ネットワーク１５０を介してデータのパケットの送信及び受信を行うように構成される。一実施形態において、ネットワークインタフェース２１８は、周知のイーサネット（登録商標）規格を用いて通信するように構成される。ネットワークインタフェース２１８は、インターコネクト２２０を介してＣＰＵ２１０に結合される。
【００２５】
メモリサブシステム２３０は、オペレーティングシステム２３２及びアプリケーション２３４−２３８のプログラム命令及びデータを格納する。オペレーティングシステム２３２は、実行のために、オペレーティングシステム（ＯＳ）ブートイメージ２４４からメモリサブシステム２３０内にロードされる。アプリケーション２３４−２３８は、実行のためにアプリケーションイメージ２４６からロードされる。オペレーティングシステム２３２は、例えば、ネットワークインタフェース２１８及び大容量記憶システム２４０を含むハードウェア装置を管理する機能などの、システム管理機能を実行する。オペレーティングシステム２３２はまた、アプリケーション２３４−２３８のランタイムモデルを提供する。当業者は、コンテンツサーバシステム２００内に組み込むのに適していること、又はあるいはオペレーティングシステム２３２の典型的なモデルとして作用すること、が技術的に知られた様々なオペレーティングシステム及びランタイムモデルを認識するであろう。
【００２６】
ファイルサーバアプリケーション２３４は、図１のファイルサーバ１３０に関して上述したようなファイルダウンロード機能を実行するように構成される。タイムサーバアプリケーション２３６は、タイムサーバ１３２に関して上述したようなタイムサーバ機能を実行するように構成される。ディレクトリサーバアプリケーション２３８は、ディレクトリサーバ１３４に関して上述したようなディレクトリサーバ機能を実行するように構成される。当業者が認識するように、アプリケーション２３４−２３８の１つ以上のインスタンスの何れか１つ又は集合は、１つ以上のハードウェア又は仮想コンピュータシステムの任意の集合上で実行されるように構成され得る。また、コンピュータシステムは、例えばファイルサーバ１３０とコンテンツプレーヤ１１０との間の長距離の帯域幅要求を低減するために、地理的に分散されてもよい。コンテンツ配信ネットワーク（ＣＤＮ）は、変化するダウンロードデマンド要求に応えるスケーラブルダウンロード帯域幅能力を提供することが可能な複数のファイルサーバ１３０のインスタンスを含むように実装・構成されてもよい。
【００２７】
図３は、本発明の一実施形態に従った図１のコンテンツプレーヤ１１０をより詳細に示す図である。コンテンツプレーヤ１１０は、限定するものではないが、中央演算処理ユニット（ＣＰＵ）３１０、グラフィックサブシステム３１２、オーディオサブシステム３１４、入力／出力（Ｉ／Ｏ）デバイスインタフェース３１５、ネットワークインタフェース３１８、インターコネクト３２０、及びメモリサブシステム３３０を含んでいる。コンテンツプレーヤ１１０はまた、大容量記憶（マスストレージ）ユニット３１６を含み得る。
【００２８】
ＣＰＵ３１０は、メモリサブシステム３３０に格納されたプログラム命令を取り出して実行するように構成される。ＣＰＵ３１０は、インターコネクト３２０を介して、メモリサブシステム３３０からプログラム命令を取り出す。インターコネクト３２０は、ＣＰＵ３１０とその他のサブシステムとの間での例えばプログラム命令及びアプリケーションデータなどのデータの伝送を支援するように構成される。該その他のサブシステムには、限定するものではないが、グラフィックサブシステム３１２、オーディオサブシステム３１４、Ｉ／Ｏデバイスインタフェース３１５、大容量記憶ユニット３１６、ネットワークインタフェース３１８、及びメモリサブシステム３３０が含まれる。
【００２９】
グラフィックサブシステム３１２は、例えば一連のグラフィック画像などのビデオデータのフレーム群を生成し、該ビデオデータのフレーム群を表示装置３６０に送信するように構成される。グラフィックサブシステム３１２は、インターコネクト３２０を介してＣＰＵ３１０に結合される。一実施形態において、グラフィックサブシステム３１２は、ＣＰＵ３１０とともに１つの集積回路内に組み込まれる。表示装置３６０は、表示のために画像を生成する技術的に好適な如何なる手段を有していてもよい。例えば、表示装置３６０は、液晶ディスプレイ（ＬＣＤ）技術、陰極線技術、及び発光ダイオード（ＬＥＤ）ディスプレイ技術（有機又は無機の何れでもよい）を利用して、ビデオデータのフレーム群の視覚表現を生成し得る。
【００３０】
オーディオサブシステム３１４は、デジタルオーディオストリームに対応する１つ以上の電気的なオーディオ信号を生成するように構成される。例えば、オーディオサブシステム３１４は、デジタルオーディオストリームを有する一連のバイナリデジタル値を受信し、該バイナリデジタル値に対応する１つ以上のアナログ電気オーディオ信号を生成し得る。オーディオ装置３６２は、電気オーディオ信号に応答して音響出力を生成するように構成されたスピーカ又はイヤフォンを含む。これに代わる実施形態において、表示装置３６０が単一ユニット内にオーディオ装置３６２を含んでいてもよい。テレビジョンは、例えば表示装置３６０などの表示装置と例えばオーディオ装置３６２などのオーディオ装置との双方を組み入れた、技術的に知られた装置の一例である。
【００３１】
入力／出力（Ｉ／Ｏ）デバイスインタフェース３１５は、ユーザＩ／Ｏ装置３６４から入力データを受信し、該入力データをＣＰＵ３１０にインターコネクト３２０を介して送信するように構成される。例えば、ユーザＩ／Ｏ装置３６４は、１つ以上のボタン、キーボード、マウス、タッチスクリーン、又はその他のポインティングデバイスを含み得る。ユーザＩ／Ｏ装置３６４はまた、例えば発光ダイオード、液晶表示インジケータ、及びこれらに類するものなどの、インジケータ装置を含み得る。
【００３２】
大容量記憶ユニット３１６は不揮発データを記憶するように構成される。大容量記憶ユニット３１６は、単一の記憶装置又は配列をなす複数の記憶装置を用いて実装され得る。各記憶装置は、磁気ハードディスクドライブ、フラッシュドライブ、又はその他の技術的に好適な不揮発性記憶装置を有し得る。不揮発データは、限定するものではないが、オペレーティングシステムのブートイメージ、アプリケーション、アプリケーションデータ、及びローカルに保存されたデジタルコンテンツファイルを含み得る。大容量記憶ユニット３１６は、インターコネクト３２０を介してＣＰＵ３１０に結合される。ネットワークインタフェース３１８は、通信ネットワーク１５０を介してデータのパケットの送信及び受信を行うように構成される。一実施形態において、ネットワークインタフェース３１８は、周知のイーサネット（登録商標）規格を用いて通信するように構成される。ネットワークインタフェース３１８は、インターコネクト３２０を介してＣＰＵ３１０に結合される。
【００３３】
メモリサブシステム３３０は、オペレーティングシステム３３２及び例えば再生アプリケーション３３６などのアプリケーションを有するプログラム命令及びデータを含んでいる。オペレーティングシステム３３２は、例えば、ネットワークインタフェース３１８、大容量記憶ユニット３１６、Ｉ／Ｏデバイスインタフェース３１５、オーディオサブシステム３１４、及びグラフィックサブシステム３１２を含むハードウェア装置を管理する機能などの、システム管理機能を実行する。オペレーティングシステム３３２はまた、ユーザインタフェース３３４、再生アプリケーション３３６及び時間同期化クライアント３３８のランタイムモデルを提供する。ユーザインタフェース３３４は、コンテンツプレーヤ１１０とのユーザインタラクションのための、例えばウィンドウやオブジェクトメタファなどの特有の構造を提供する。当業者は、コンテンツプレーヤ１１０内に組み込むのに適していること、又はあるいはオペレーティングシステム３３２の典型的なモデルとして作用すること、が技術的に知られた様々なオペレーティングシステム及びランタイムモデルを認識するであろう。
【００３４】
再生アプリケーション３３６は、ネットワークインタフェース３１８を介して１つ以上のファイルサーバ１３０から、例えば図２のデジタルコンテンツファイル２４２などのデジタルコンテンツファイルを取り出し、該デジタルコンテンツファイルを表示装置３６０及びオーディオ装置３６２に再生するように構成される。再生アプリケーション３３６は、ディレクトリサーバ１３４からのタイトル及びカタログ情報を要求し、ユーザインタフェース３３４を介して該情報をユーザに提示する。ユーザは、ユーザインタフェース３３４と対話して、再生する１つ以上のタイトルを選択することができる。一実施形態において、ユーザインタフェース３３４は、表示装置３６０上にグラフィカルユーザインタフェースを生成するように構成される。ユーザは、ユーザインタフェース３３４とともにユーザＩ／Ｏ装置３６４を操作して、再生する１つ以上のタイトルを選択する。そして、再生アプリケーション３３６は、再生するよう選択されたタイトルに関連付けられたデジタルコンテンツファイルを取り出す。再生アプリケーション３３６は、選択された１つ以上のタイトルに関係する各デジタルコンテンツファイルのダウンロードに関し、ディレクトリサーバ１３４によって提供される１つ以上のファイルサーバ１３０のリストから１つの特定のファイルサーバ１３０を選択することができる。デジタルコンテンツファイルがダウンロードされ、デコードされ、そして、グラフィックサブシステム３１２を介して表示装置３６０に再生され、且つオーディオサブシステム３１４を介してオーディオ装置３６２に再生される。
【００３５】
再生アプリケーション３３６は、上記１つ以上のデジタルコンテンツファイルのデータをダウンロードし、それを、ネットワークジッターをバッファリング（軽減）することが可能な１つ以上の適応（エラスティシティ）バッファに格納する。ネットワークジッターをバッファリングすることは、再生品質を低くし得る再生ジッターを回避するよう作用する。一実施形態において、オーディオバッファ３４０、ビデオバッファ３４４、及びイベントバッファ３５０が、それぞれの種類のデータ用の適応バッファとして作用するように構成される。オーディオバッファ３４０、ビデオバッファ３４４、及びイベントバッファ３５０は、独立したバッファとして構築され得る。他の例では、オーディオバッファ３４０、ビデオバッファ３４４及びイベントバッファ３５０のうちの２つ以上が、単一の統合バッファ構造へと結合される。
【００３６】
オーディオバッファ３４０は、エンコードされたデジタルオーディオデータを格納し、該データをオーディオデコーダ３４２に送信する。そして、オーディオデコーダ３４２が該データを復号化して、デコードされたデジタルオーディオストリームを生成する。エンコードされたデジタルオーディオデータは、輸送のために圧縮され、暗号化され、その他の方法でフォーマットされていてもよい。デコードされたデジタルオーディオストリームは、オーディオ振幅値を表すデジタル値を有する。デコードされたデジタルオーディオストリームはオーディオサブシステム３１４へと伝送され、オーディオサブシステム３１４が、オーディオ装置３６２を駆動するのに使用される電気的なオーディオ出力信号を生成する。シーケンスとして見たオーディオ振幅値が、オーディオ装置３６２によって生成されるべき所望の音響出力信号を定める。一実施形態において、エンコードされたデジタルオーディオデータはまた誤り訂正コードを含んでいる。
【００３７】
ビデオバッファ３４４は、エンコードされたデジタルビデオデータを格納し、該データをビデオデコーダ３４６に送信する。そして、ビデオデコーダ３４６が該データを復号化して、デコードされたデジタルビデオストリームを生成する。エンコードされたデジタルビデオデータは、輸送のために圧縮され、暗号化され、その他の方法でフォーマットされていてもよい。デコードされたデジタルビデオストリームは、一連の２次元デジタルビデオフレームを有する。一実施形態において、ビデオデコーダ３４６は、エンコードされたデジタルビデオデータをデコードすることを支援するグラフィックサブシステム３１２からのハードウェアリソースを利用する。シーケンスとして見たデジタルビデオフレームが、表示装置３６０によって表示されるべき所望のビデオシーケンスを定める。グラフィックサブシステム３１２は、デコードされたデジタルビデオストリームを受信し、それに応答して、表示装置を駆動するのに適したビデオ信号を生成する。ビデオ信号は、例えばコンポーネントビデオ、ＲＧＢビデオ、ＨＤＭＩ（登録商標）ビデオ及びこれらに類するものなどの、任意の規格に従い得る。一実施形態において、エンコードされたデジタルビデオデータはまた誤り訂正コードを含んでいる。特定の実施形態において、デジタルビデオデータは、例えば偏光眼鏡などの立体視眼鏡を通して適切な表示装置上で見るときに３次元の見ためを作り出す立体画像を有する。特定の他の実施形態において、デジタルビデオデータは、本発明の教示に従って同期的にレンダリングされ、描き出され、あるいはその他の方法で実行される３次元コンテンツを有する。
【００３８】
イベントバッファ３５０は、コンテンツ再生中に生成されるイベントや、コンテンツ再生の通常フローを変えるイベントに関するイベントデータを格納する。例えば、イベントバッファ３５０は、再生中に表示される字幕テキストのビデオオーバーレイを生成するために使用される字幕データを格納し得る。イベントデコーダ３５２が、イベントデータをデコードし、該イベントデータに基づく動作を生じさせる。イベントデコーダは、ＣＰＵ３１０によって実行される計算を介して、あるいはグラフィックサブシステム３１２によって実行される計算を介して、ビデオオーバーレイを生成してもよい。一実施形態において、イベントデコーダ３５２はまた、例えば再生、一時停止、あるいはその他のように現在の再生動作を変えるコマンドなどの、選択されたタイトルの再生に関するイベントをデコードする。例えば、イベントデコーダ３５２が一時停止コマンドを受信する場合、イベントデコーダ３５２は、その一時停止コマンドに関連付けられたタイムスタンプによって指し示される特定の時間で一時停止するよう、再生アプリケーション３３６に信号伝達する。
【００３９】
時間同期化クライアント３３８は、タイムサーバ１３２によって生成される時間基準信号に同期されたローカル時間信号を生成するように構成される。上述のように、コンテンツ配信システム１００内の各コンテンツプレーヤ１１０によって生成される各ローカル時間信号は名目上、異なる如何なるコンテンツプレーヤ１１０によって生成されるその他のローカル時間信号の各々と同期される。
【００４０】
オーディオバッファ３４０、ビデオバッファ３４４及びイベントバッファ３５０内に格納されたデータは、タイムコードを付される。これらのタイムコードは、限定するものではないが、ビデオ・オーディオ再生を同期させること、及びビデオ・字幕再生を同期させることに使用される。これらのタイムコードは、時間同期化クライアント３３８によって生成されるローカル時間信号に対して解釈される。一実施形態において、各デジタルコンテンツファイル内の特定のタイムコードは、そのタイトルの経過時間に対してフォーマットされる。特定の他のタイムコードは、各コンテンツプレーヤ１１０内でローカル時間信号として利用可能な基準時間信号に対してフォーマットされる。タイトルの開始時間はローカル時間信号に対して維持管理され、タイトルの経過時間はローカル時間信号に対して説明される。再生が、一時停止、早送り又は巻き戻しを含めて追跡され、経過時間とローカル時間信号との間の関係が管理される。
【００４１】
一実施形態において、“サーバサイド（サーバ側）イベント”として技術的に知られる機構を用いて、コンテンツプレーヤ１１０内での動作が引き起こされる（トリガーされる）。サーバサイドイベントは如何なる時点にも発生することがあるが、サーバサイドイベント機構の従来実装は、サーバサイドイベントを生成するように構成された関連サーバをコンテンツプレーヤ１１０がポーリングすることを必要としない。その代わりに、サーバがコンテンツプレーヤ１１０にイベントを送信することで、コンテンツプレーヤ１１０はそのイベントに適切に応答することができる。
【００４２】
例えば、コンテンツプレーヤ１１０−１が再生を制御しており（主コンテンツプレーヤであり）、且つユーザがコンテンツプレーヤ１１０−１を操作することによって一時停止が発せされる場合、コンテンツプレーヤ１１０−１は一時停止要求コマンドをコンテンツサーバシステム２００に送信し、代わってコンテンツサーバシステム２００が、サーバサイドイベントとしてフォーマットされたタイムスタンプ付き一時停止コマンドを、コンテンツプレーヤ１１０−１の再生セッションに参加している各コンテンツプレーヤ１１０に送信する。このタイムスタンプは、それぞれのローカル時間信号の各々に対して、参加しているコンテンツプレーヤ１１０において再生の一時停止が行われるべき時間を指し示す。タイムスタンプは、例えば、一時停止が要求されてから数百ミリ秒後にスケジュールされ得る。差し迫った一時停止コマンドをスケジューリングするサーバサイドイベントの受信を受けて、参加している各コンテンツプレーヤ１１０は、この一時停止コマンドに埋め込まれたタイムスタンプ値に基づき、その他のコンテンツプレーヤ１１０の各々と同期して一時停止する。
【００４３】
他の一例において、ユーザがコンテンツプレーヤ１１０−１に、再生が開始すべきであることを指し示す。それに応答して、コンテンツプレーヤ１１０−１は再生コマンドをコンテンツサーバシステム２００に送信し、コンテンツサーバシステム２００が、サーバサイドイベントとしてフォーマットされたタイムスタンプ付き再生コマンドを、参加している各コンテンツプレーヤ１１０に送信することによって再生を開始する。参加しているコンテンツプレーヤ１１０は、この再生コマンドに埋め込まれたタイムスタンプ値に基づいて同時に再生を開始することができる。一般的な状況において、コンテンツプレーヤ１１０は、再生の開始より十分前にバッファリングを行う。しかしながら、前もってのバッファリングは、複数の参加コンテンツプレーヤ１１０間での再生の同期スタートに影響を及ぼさない。一実施形態において、オーディオバッファ３４０及びビデオバッファ３４４は、再生より自由に先んじてコンテンツをバッファリングすることを許されるとともに、再生が停止されているときにもバッファリングを続けることを許される。イベントバッファ３５０は、到来するサーバサイドイベントをバッファリングするために使用され、それに関連する動作が可能な限り迅速にスケジュールされる。動作のスケジュールは維持されるが、後で到着したサーバサイドイベントが、既にスケジュールされたイベントに優先する必要がある動作を含むことがある。
【００４４】
コンテンツプレーヤ１１０の所与のモデルは、特定の再生能力を有するように構成される。例えば、コンテンツプレーヤ１１０の或る特定のモデルは、或る一定範囲の可能な表示解像度及びビデオデコーダオプションと、オーディオデコーダ及び特定のデジタル著作権管理機能などの或る一定の選択とを有し得る。或る特定のタイトルの適切な再生を容易にするよう、各コンテンツプレーヤ１１０は、モデルタイプ又は能力セットをコンテンツサーバ１０５にアドバタイズ（宣伝）する。モデルタイプ又は能力セットをアドバタイズすることには、如何なる技術的に好適な技術が用いられてもよい。それに応答して、コンテンツサーバ１０５は、選択されたタイトルに関連付けられたデジタルコンテンツファイル群のうち、コンテンツプレーヤ１１０にダウンロードするのに適した組を選択する。例えば、コンテンツプレーヤ１１０が１０２４ピクセルの水平スクリーン解像度を有する場合、そのコンテンツプレーヤ１１０へのダウンロードのために、１０２４ピクセルの水平スクリーン解像度用にエンコードされたデジタルコンテンツファイル２４２が選択され得る。
【００４５】
各コンテンツプレーヤのモデル又は能力セットとは無関係に、各コンテンツプレーヤ１１０が、通信ネットワーク１５０内で或る異なるレベルの帯域幅能力までのアクセスを有することがある。従って、低い帯域幅能力を有するコンテンツプレーヤ１１０は、遙かに高い帯域幅能力までのアクセスを有する同じコンテンツプレーヤ１１０の場合より低いビットレートにエンコードされたデジタルコンテンツをダウンロードすることを要する場合がある。
【００４６】
図４は、本発明の一実施形態に従った同期された再生イベントを示している。図示のように、タイミングマーカ（Ｔ１、Ｔ２など）は、時間基準信号ひいては各々の同期ローカル時間信号に直接的に対応する時間４１０を参照している。再生イベント（このケースでは、例えば“再生”又は“一時停止”などのユーザ起動イベント）がコンテンツプレーヤ４２０によって要求される。コンテンツプレーヤ４２０は、図１の任意のコンテンツプレーヤ１１０である。再生イベントは、時間Ｔ１に、イベント要求４３０としてイベントサーバ４２２に送信される。イベント要求４３０は、例えば再生や一時停止などの具体的な再生コマンドを、該再生コマンドが各参加コンテンツプレーヤ４２０、４２４で実行されるべくスケジュールされたイベント時間４５０とともに包含している。一実施形態において、イベントサーバ４２２は、図１のコンテンツサーバ１０５に結合されたサーバである。例えば、再生のために選択されたタイトルをダウンロードするようスケジュールされる或る特定のファイルサーバ１３０が、１つ以上の関連再生セッションにおいてイベントサーバ４２２としての役割を果たし得る。これに代わる一実施形態において、イベントサーバ４２２は、分離された別個のサーバマシンとして実現されてもよい。
【００４７】
イベントサーバ４２２は、時間Ｔ２にイベント要求４３０を受信する。Ｔ２とＴ１との間の時間差は、おおよそ、コンテンツプレーヤ４２０からイベントサーバ４２２へ伝送されるデータに対する通信ネットワーク１５０でのネットワークレイテンシを表す。イベント要求４３０に応答して、イベントサーバ４２２は、時間Ｔ３にイベントコマンド４３２を送信するとともに、時間Ｔ４にイベントコマンド４３４を送信する。イベントコマンド４３２、４３４は、具体的な再生コマンドとスケジュールされたイベント時間４５０との双方を含んでいる。コンテンツプレーヤ４２０は、スケジュールされたイベント時間４５０である時間Ｔ７より十分に前の時間Ｔ５に、イベントコマンド４３４を受信する。コンテンツプレーヤ４２４は、やはりＴ７より十分に前の時間Ｔ６に、イベントコマンド４３２を受信する。Ｔ５とＴ３との間の時間差は、おおよそ、イベントサーバ４２２からコンテンツプレーヤ４２０へ伝送されるデータに対する通信ネットワーク１５０でのネットワークレイテンシを表す。同様に、Ｔ６とＴ４との間の時間差は、おおよそ、イベントサーバ４２２からコンテンツプレーヤ４２４へ伝送されるデータに対するネットワークレイテンシを表す。各レイテンシ（Ｔ６−Ｔ４、及びＴ５−Ｔ３）は異なり得るものであり、故に、Ｔ７は何れか最長のレイテンシの後にスケジュールされるべきである。コンテンツプレーヤ４２０及び４２４は何れも同期されたローカル時間信号を保持しているので、イベントコマンド４３２、４３４は何れも、当該イベントコマンドに関してスケジュールされたイベント時間４５０であるＴ７に実行されることになる。
【００４８】
上述のようなユーザ起動イベントに加え、タイトルの再生に関係するその他のイベントもスケジュールされて、コンテンツプレーヤ４２０、４２４によって実行され得る。例えば、順次のビデオ、オーディオ及び字幕のセグメントの再生が、コンテンツプレーヤ４２０、４２４で同期再生されるようにスケジュールされ得る。一実施形態において、或る特定のデジタルコンテンツファイルの開始時間は時間基準信号に関して決定され、そのデジタルコンテンツの再生はデジタルコンテンツファイル内の相対的なタイムスタンプに基づく。同期された再生体験を維持するため、例えば再生を開始あるいは停止すること、又は異なる速度で再生を行うことなどの動作は、時間基準信号に対して説明される。
【００４９】
当業者が認識するように、２つのコンテンツプレーヤ４２０、４２４に関する上述の同期再生は、本発明の範囲を逸脱することなく、任意の多数のコンテンツプレーヤを含むように容易に一般化されることができる。
【００５０】
図５は、本発明の一実施形態に従った同期再生を実行する方法ステップ群５００のフロー図である。これらの方法ステップは、図１−３のシステムとの関連で記述されるが、当業者が理解するように、これらの方法ステップを何らかの順序で実行するように構成された如何なるシステムも本発明の範囲内にある。
【００５１】
図１に関して上述したように、特定のタイトルを同期的に再生するように複数のコンテンツプレーヤ１１０を構成することができる。タイトルは、図２の１つ以上の関連デジタルコンテンツファイル２４２を含んでいる。特定のタイトルに関連付けられた複数のデジタルコンテンツファイル２４２は、符号化、フォーマット、言語、解像度、ビットレート、又はその他の技術的に区別可能なファクタに基づいて異なり得る。再生に先立ち、コンテンツプレーヤ１１０の各々が、コンテンツプレーヤ１１０の個々の再生特性に基づいて、ダウンロード及び再生のために、適切なコンテンツファイル２４２へと導かれる。これらの方法ステップ５００は、複数のコンテンツプレーヤ１１０の各々によって独立して実行され、これらコンテンツプレーヤ１１０間で再生が同期されるという有利な効果を有する。重要なことに、任意の再生特性及び嗜好を有する多様なコンテンツプレーヤ上で同期再生を実行することができる。
【００５２】
この方法は、ステップ５１０にて開始し、図３の再生アプリケーション３３６は、時間同期化クライアント３３８がコンテンツプレーヤ１１０内のローカル時間信号をタイムサーバ１３２によって生成される時間基準信号に同期させることを待つ。ローカル時間信号がタイムサーバ１３２に同期されると、コンテンツプレーヤ１１０上で同期再生が開始し得る。
【００５３】
ステップ５１２にて、コンテンツプレーヤ１１０は、そのコンテンツプレーヤ１１０の再生特性をコンテンツサーバ１０５に送信する。再生特性は、限定するものではないが、製品モデル、利用可能な表示解像度、サポートされるビデオ及びオーディオのフォーマット、好みのオーディオトラック言語、字幕の好みを含み得る。ステップ５１４にて、コンテンツプレーヤ１１０はセッション情報をコンテンツサーバ１０５に送信する。セッション情報は、コンテンツプレーヤ１１０を特定の同期再生セッションに結び付ける。セッション情報は、特定のユーザアカウント名、セッション識別コード、又は、所与のコンテンツプレーヤ１１０をその同期再生セッションと関連付けるその他の技術的に好適なセッション識別子、とし得る。再生セッションは、特定のタイトルを、そのタイトルの再生を統制する関連サーバサイドイベントと関連付ける。方法ステップ群５００を実行する各コンテンツプレーヤ１１０は、そのコンテンツプレーヤ１１０の再生特性に基づいて、特定のタイトルに関連付けられた異なるデジタルコンテンツファイル２４２に導かれ得る。再生を統制するサーバサイドイベントは、同期再生セッションに結び付けられた全てのコンテンツプレーヤ１１０に送信される。
【００５４】
一実施形態において、コンテンツサーバ１０５内のディレクトリサーバ１３４が、各コンテンツプレーヤ１１０に対して、特定のデジタルコンテンツファイル２４２を選択する。これに代わる一実施形態においては、各ファイルサーバ１３０が、そのファイルサーバ１３０との通信が確立された各コンテンツプレーヤ１１０に対して、特定のデジタルコンテンツファイル２４２を選択する。
【００５５】
ステップ５１６にて、サーバサイドイベントが受信されなかった場合、この方法はステップ５１６に戻る。一実施形態において、ステップ５１６は、再生アプリケーション３３６によって実行されるブロッキング読み出しとして実装され得る。ブロッキング読み出しは、再生アプリケーション３３６をして、例えば図４のイベントサーバ４２２などのイベントサーバを起源とする到来イベントを待たせる。そうではなく、サーバサイドイベントが受信された場合、この方法はステップ５２０に進む。
【００５６】
ステップ５２０にて、再生のために新たなデジタルコンテンツが指定される場合、この方法はステップ５２２に進む。例えば、所与のタイトルの再生の開始時に、デジタルコンテンツファイル２４２内のデータの１つ以上のセグメントが、再生のための新たなデジタルコンテンツを有し得る。タイトルの再生中、新たなコンテンツが同期再生のために指定され得る。そのような追加コンテンツは、デジタルコンテンツファイル２４２のセグメント、広告コンテンツ、又はそのタイトルに関係する情報素材を含み得る。ステップ５２２にて、再生アプリケーション３３６が、再生のための新たなデジタルコンテンツをファイルサーバ１３０からダウンロードしてバッファリングするプロセスを開始する。
【００５７】
ステップ５２４にて、再生イベントが実行されるようスケジュールされる。実行時間は、同期されたローカル時間信号を基準にする。ローカル時間信号を基準にしてスケジュールされた実行時間にて、新たなデジタルコンテンツの再生が開始する。デジタルコンテンツの再生及び関連イベントの実行は、指定された時間に実行あるいは再生するよう、スケジューラによってトリガーされる１つ以上のスレッドによって実行される。具体的には、再生アプリケーション３３６は複数のスレッドを有することができ、１つ以上のスレッドが、イベント及び実行をスケジューリングすることに割り当てられ、１つ以上のスレッドが、デジタルコンテンツをダウンロードしてバッファリングすることに割り当てられ、１つ以上のスレッドがデジタルコンテンツを再生することに割り当てられ得る。
【００５８】
ステップ５３０にて、デジタルコンテンツの各異なるアイテムが終わりまで再生されていない場合、この方法はステップ５１６に戻る。一方、デジタルコンテンツが終わりまで再生された場合、この方法はステップ５９０にて終了する。
【００５９】
ステップ５２０に戻るに、新たなデジタルコンテンツがダウンロードに指定されない場合には、この方法はステップ５２４に進む。
【００６０】
本発明の一実施形態は、コンテンツプレーヤ１１０内に存在する少なくとも１つのコンピュータ読み取り可能記憶媒体に格納されたプログラムとして実装される。そのような一実施形態において、コンテンツプレーヤ１１０は、例えばパーソナルコンピュータなどの汎用コンピューティングプラットフォーム、例えば“スマートフォン”などのモバイルコンピューティングプラットフォーム、又は例えばセットトップボックスなどの内蔵コンピュータプラットフォームを有する。格納されたプログラムは、図５の方法がコンテンツプレーヤ１１０によって実行されることを可能にする。他の一実施形態において、プログラムはコンピュータ装置内のメモリにダウンロードされる。例えば、ダウンロードされるプログラムは、インターネットウェブサイト内に埋め込まれた実行可能命令とし得る。そのような一実施形態において、コンテンツプレーヤ１１０はコンピュータ装置を有する。ダウンロードされたプログラムは、図５の方法がコンテンツプレーヤ１１０によって実行されることを可能にする。
【００６１】
まとめるに、同期したデジタルコンテンツ再生を実現する技術が開示された。この技術は、複数のコンテンツプレーヤの各々が、対応するローカル時間信号を時間基準信号に同期させることを含む。そして、それらローカル時間信号が、ビデオ、オーディオ、字幕、及びビデオ・オーディオコンテンツに時間的に相関付けられ得るその他の関連コンテンツを含み得るデジタルコンテンツの再生について、それに関するイベントをスケジューリングして実行するローカル時間基準として使用される。サーバサイドイベントが上記複数のコンテンツプレーヤに送信され、各コンテンツプレーヤが、再生のためにデジタルコンテンツをダウンロードし、バッファリングし、スケジューリングすることによって応答する。デジタルコンテンツ再生のスケジューリングは、同期されたローカル時間信号に対してであり、故に、デジタルコンテンツの再生が複数のコンテンツプレーヤに対して同期される。
【００６２】
開示のシステム及び方法の１つの利点は、複数のユーザが個々人の鑑賞嗜好に基づいて共通の鑑賞体験を共有することが可能になることである。これは、ユーザ全員が一組の共通の鑑賞嗜好を共有することを強いる従来技術のソリューションとは対照的である。
【００６３】
以上の説明は本発明の実施形態に関するものであるが、それらの基本範囲を逸脱することなく、本発明のその他及び更なる実施形態が考え出され得る。例えば、本発明の態様は、ハードウェア若しくはソフトウェア、又はハードウェアとソフトウェアとの組合せにて実装され得る。本発明の一実施形態は、コンピュータシステムとともに使用されるプログラムプロダクトとして実装され得る。プログラムプロダクトのプログラムは、上記実施形態（ここに記載の方法を含む）の機能を規定し、多様なコンピュータ読み取り可能記憶媒体に格納されることができる。例示的なコンピュータ読み取り可能記憶媒体には、以下に限られないが：（ｉ）情報が恒久的に記憶される非書込可能な記憶媒体（例えば、ＣＤ−ＲＯＭドライブによって読み取り可能なＣＤ−ＲＯＭディスクなどの、コンピュータ内の読み出し専用メモリ、フラッシュメモリ、ＲＯＭチップ、又は任意の種類の固体不揮発性半導体メモリ）；並びに（ｉｉ）変更可能な情報が記憶される書込可能な記憶媒体（例えば、ディスケットドライブ内のフロッピー（登録商標）ディスク、ハードディスクドライブ、又は任意の種類の固体ランダムアクセス半導体メモリ）がある。このようなコンピュータ読み取り可能記憶媒体は、本発明の機能を実行するコンピュータ読み取り可能命令を担持するとき、本発明の実施形態である。
【００６４】
以上に鑑み、本発明の範囲は添付の請求項によって決定される。
【００６５】
本出願は、２０１０年８月１３日に出願された米国特許出願第１２／８５６４６６号の利益を主張するものであり、ここにその内容を援用する。
【図１】
2013536639.tif 000003
【図２】
2013536639.tif 000004
【図３】
2013536639.tif 000005
【図４】
2013536639.tif 000006
【図５】
2013536639.tif 000007
【国際調査報告】
2013536639.tif 000008