(57)【要約】  宣言型言語アプリケーション命令を使用して、対話型マルチメディアプレゼンテーションの対話型コンテンツを再生することに関連付けられている１つ又は２つ以上の動作が、特定のメディアオブジェクトのスタイル特性又は非スタイル特性の状態変化に基づいて条件付きでトリガされる。一定のアプリケーション命令は、メディアオブジェクトの特性を指定する一方、他のアプリケーション命令は、特性の状態変化に基づく、対話型コンテンツを再生することに関連付けられている動作（たとえば、１つ又は２つ以上のメディアオブジェクトがレンダリング可能である時、イベント生成、スクリプト実行、又は変数の変更）を指定する。状態変化は、アプリケーションの構造化表現に問い合わせることによって検出される。この構造化表現は、アプリケーション命令、メディアオブジェクト、及び／又は特性に関連付けられているノードを含む。状態変化が検出されると、指定された動作の１つ又は２つ以上がトリガされる。【選択図】  図２
2009500912.tif 000002
【特許請求の範囲】
【請求項１】
１つ又は２つ以上のメディアオブジェクトを参照する宣言型マークアップ言語の文書の構造化表現における状態変化を識別するための方法であって、該方法は、
前記表現におけるノードにアクセスする問い合わせを実施するステップ、
前記問い合わせに基づいて、前記ノードが所定の値を有するか否かを判断するステップ、及び
前記判断に基づいて、問い合わせ結果を確立するステップ
を含み、前記問い合わせ結果は、対話型マルチメディアプレゼンテーションの対話型コンテンツコンポーネントを再生することに関連付けられている動作をトリガするのに使用される、方法。
【請求項２】
請求項１に記載の方法において、
前記構造化表現は、ＸＭＬ文書から作成される文書オブジェクトモデル（「ＤＯＭ」）である、方法。
【請求項３】
請求項２に記載の方法において、
前記ノードは、前記ＸＭＬ文書に関連付けられているコンテンツデータを表す、方法。
【請求項４】
請求項１に記載の方法において、
前記ノードが前記所定の値を有するか否かを判断するステップは、前記ノードの値が変化しているか否かを判断するステップを含む、方法。
【請求項５】
請求項１に記載の方法において、
前記問い合わせは、ＸＰＡＴＨ問い合わせを含む、方法。
【請求項６】
対話型マルチメディアプレゼンテーションに関連付けられている対話型コンテンツを再生するための方法であって、該方法は、
前記対話型コンテンツを再生するための命令を有するアプリケーションにアクセスするステップであって、該命令は、
宣言型形式を有すると共にメディアオブジェクトの特性を指定する第１の命令であって、該特性は、前記対話型マルチメディアプレゼンテーションの再生中に第１の状態及び第２の状態の一方を仮定するように構成されている、第１の命令と、
宣言型形式を有すると共に前記第１の状態から前記第２の状態への前記特性の状態変化に基づいて、前記対話型コンテンツを再生することに関連付けられている動作を指定する第２の命令と
を含む、アクセスするステップと、
前記特性の前記状態変化を検出するために、前記アプリケーションの構造化表現の定期的な問い合わせの準備をするステップ、及び
前記状態変化の検出に基づいて、前記対話型コンテンツを再生することに関連付けられている前記動作をトリガすることを準備するステップ
を含む、方法。
【請求項７】
請求項６に記載の方法において、
前記対話型コンテンツは、メディアオブジェクトを含み、前記第２の命令は、前記特性の前記状態変化に基づいて、前記メディアオブジェクトがレンダリング可能である時を指定し、前記状態変化の検出は、前記メディアオブジェクトのレンダリングをトリガする、方法。
【請求項８】
請求項６に記載の方法において、
前記第１の命令は、ＸＭＬコンテンツエレメントに関連付けられている属性を含む、方法。
【請求項９】
請求項８に記載の方法において、
前記属性は、スタイル属性及び非スタイル属性の一方を含む、方法。
【請求項１０】
請求項８に記載の方法において、
前記第１の状態及び前記第２の状態は、前記属性の値を含む、方法。
【請求項１１】
請求項１０に記載の方法において、
前記属性の値は、バイナリ値、数値、文字列値、及び所定の値の集合から成る群から選択される、方法。
【請求項１２】
請求項６に記載の方法において、
前記第２の命令は、ＸＭＬタイミングエレメントを含む、方法。
【請求項１３】
請求項６に記載の方法において、
前記第２の命令は、前記状態変化に基づいてイベント作成を指定する、方法。
【請求項１４】
請求項６に記載の方法において、
前記第２の命令は、前記状態変化に基づいて可変の値変化を指定する、方法。
【請求項１５】
請求項６に記載の方法において、
前記第２の命令は、前記状態変化に基づいてスクリプト命令の実行を指定する、方法。
【請求項１６】
請求項６に記載の方法において、
前記アプリケーションの前記構造化表現は、前記第１の命令に対応する第１のノード及び前記第２の命令に対応する第２のノードを有する、方法。
【請求項１７】
請求項１６に記載の方法において、
前記構造化表現の定期的な問い合わせの準備をするステップは、前記第１のノード及び前記第２のノードの一方を調べるためのＸＰＡＴＨ問い合わせを使用するステップを含む、方法。
【請求項１８】
請求項６に記載の方法において、
前記定期的な問い合わせは、可変レートで行われる、方法。
【請求項１９】
請求項６に記載の方法において、
前記構造化表現は、文書オブジェクトモデル（「ＤＯＭ」）を含む、方法。
【請求項２０】
請求項６に記載のステップを実行するためのコンピュータ実行可能命令でコード化されている、コンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
マルチメディアプレイヤは、ビデオコンテンツ、オーディオコンテンツ、又はデータコンテンツの組み合わせ（「マルチメディアプレゼンテーション」）をユーザによる消費のためにレンダリングするデバイスである。ＤＶＤプレイヤ等のマルチメディアプレイヤは、現在、ビデオコンテンツの再生中にユーザ対話性があったとしても、多くのユーザ対話性を提供していない。ビデオコンテンツの再生は、一般に、再生速度の調整以外のユーザ入力を受け取るために中断される。たとえば、ＤＶＤプレイヤのユーザは、一般に、オーディオコメンタリー、俳優の経歴、ゲーム等の機能を選択して受け取ることを可能にするオプションを含んだメニューに戻るために、再生中の映画を停止しなければならない。
【０００２】
対話型マルチメディアプレイヤは、従来のビデオコンテンツ、オーディオコンテンツ、又はデータコンテンツと同時に対話型コンテンツの組み合わせ（「対話型マルチメディアプレゼンテーション」）をレンダリングするデバイスである（このようなデバイスには、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせが含まれ得る）。どのタイプのデバイスも対話型マルチメディアプレイヤとなり得るが、光媒体プレイヤ（たとえば、ＤＶＤプレイヤ）、コンピュータ、他の電子デバイス等のデバイスは、比較的安価な大量のポータブルデータストレージへのアクセスを提供することから、特に、商業的に価値のある対話型マルチメディアプレゼンテーションの作成及び消費者の需要を可能にするのに好位置に付けている。
【０００３】
対話型コンテンツは、一般に、単独でプレゼンテーション可能な、又は他のビデオコンテンツ、オーディオコンテンツ、若しくはデータコンテンツと同時にプレゼンテーション可能なあらゆるユーザ選択可能な可視オブジェクト又は可聴オブジェクトである。可視オブジェクトの１つの種類は、たとえば、映画に登場する人々、車、又は建物といった、ビデオコンテンツ内の一定のものを識別、且つ／又は、一定のものに追従するのに使用できる円等のグラフィカルオブジェクトである。可聴オブジェクトの１つの種類は、ユーザが、リモコン又はマウスのようなデバイスを使用して円等の可視オブジェクトを選択したことを示すために再生されるクリック音である。対話型コンテンツの他の例には、メニュー、キャプション、及びアニメーションが含まれるが、これらに限定されるものではない。
【０００４】
対話型マルチメディアプレイヤ及び対話型マルチメディアプレゼンテーションの投資を高めるには、対話型マルチメディアプレゼンテーションの対話型コンテンツコンポーネントを、このようなプレゼンテーションの従来のビデオコンテンツコンポーネント、オーディオコンテンツコンポーネント、又はデータコンテンツコンポーネントと正確に同期させることを確実にすることが望ましい。正確な同期は、一般に、ビデオコンテンツコンポーネント、オーディオコンテンツコンポーネント、又はデータコンテンツコンポーネントの予測可能で且つ誤動作のない再生を優先する。たとえば、円が、映画中の車の周りにプレゼンテーションされた時、その映画は、一般に、円が描かれるのを待つために一時停止すべきではなく、円は、車が移動するにつれて車に追従すべきである。
【０００５】
請求された主題は、特定の対話型マルチメディアプレゼンテーションシステム又はその態様の不利な点のいずれか又はすべてを解決する実施態様に限定されるものではないことが十分認識されよう。
【発明の開示】
【０００６】
［関連出願の表明］
本願は、２００５年７月１日に出願された仮出願第６０／６９５，９４４号の利益を主張する。この仮出願は、参照により本明細書に援用される。
【０００７】
一般に、対話型マルチメディアプレゼンテーションは、ビデオコンテンツコンポーネント及び対話型コンテンツコンポーネントを含む。ビデオコンテンツコンポーネントは、例示の目的で、映画と呼ばれるが、実際には、ビデオ、オーディオ、データ、又はそれらの任意の組み合わせとすることができる。
【０００８】
プレゼンテーションの対話型コンテンツコンポーネントは、タイミング信号に基づくレートで対話型コンテンツマネージャによってレンダリングするために準備され、１つ又は２つ以上のアプリケーションの形式にされる。アプリケーションは、宣言型形式又はスクリプト形式の命令を含む。１つのタイプの宣言型形式は、拡張マークアップ言語（「ＸＭＬ」）データ構造を含む。メディアオブジェクトのユーザへのプレゼンテーションを編成するためのアプリケーション命令、メディアオブジェクトのユーザへのプレゼンテーションをフォーマットするためのアプリケーション命令、及びメディアオブジェクトのユーザへのプレゼンテーションを多くの場合にビデオコンテンツコンポーネントと同時に同期させるためのアプリケーション命令が提供される。
【０００９】
本明細書で解説する方法、システム、装置、及び製品は、宣言型形式のアプリケーション命令を使用して、対話型マルチメディアプレゼンテーションの対話型コンテンツコンポーネントを再生することに関連付けられている動作をトリガする。詳細には、一定のアプリケーション命令は、プレゼンテーションの再生中に（たとえば、ユーザ入力に基づいて）状態を変更できる特定のメディアオブジェクトの特性を指定する。他のアプリケーション命令は、特性の状態変化に基づく、対話型コンテンツコンポーネントを再生することに関連付けられている１つ又は２つ以上の動作（たとえば、１つ又は２つ以上のメディアオブジェクトがレンダリング可能である時、イベント生成、スクリプト実行、又は変数値の変化）を指定する。状態変化は、アプリケーションの構造化表現に問い合わせることによって検出される。この構造化表現は、アプリケーション命令、メディアオブジェクト、及び／又は特性に関連付けられているノードを含む。状態変化が検出されると、対話型コンテンツコンポーネントを再生することに関連付けられている、指定された動作がトリガされる。
【００１０】
上述したように使用可能なアプリケーション命令の例には、マークアップエレメント及び属性が含まれる。メディアオブジェクトの特性は、メディアオブジェクトに関連付けられているコンテンツエレメントのスタイル属性又は非スタイル属性によって指定することができる。いくつかの役立つ属性が、１つ又は２つ以上のＸＭＬスキーマによって定義されている。たとえば、ＤＶＤフォーラムによって公表された１つ又は２つ以上のＸＭＬスキーマは、対話型高品位ＤＶＤ映画の再生中に受け取られたユーザ入力に基づいて値を変更する属性（ｆｏｒｅｇｒｏｕｎｄ属性、ｆｏｃｕｓｅｄ属性、ｐｏｉｎｔｅｒ属性、ａｃｔｉｏｎｅｄ属性、ｅｎａｂｌｅｄ属性、及びｖａｌｕｅ属性）を説明している。対話型コンテンツを再生することに関連付けられている動作は、タイミングエレメント内で指定することができる。このように使用できるいくつかのタイミングエレメントは、ＤＶＤフォーラムによって公表されたＸＭＬスキーマで説明されている。他のタイミングエレメントは、同期化マルチメディア統合言語（「ＳＭＩＬ」）用のＸＭＬスキーマによって定義されている。ＳＭＩＬは、ワールドワイドウェブコンソーシアム（「Ｗ３Ｃ」）によって公開されている。ＸＰＡＴＨ問い合わせを使用して、文書オブジェクトモデル（「ＤＯＭ」）等のアプリケーションの構造化表現に問い合わせして、属性の値及びこのような値の変化を検出することができる。
【００１１】
この概要は、複数の概念のうちの選択したものを簡単化した形式で紹介するために提供されている。これらの概念は、詳細な説明の節でさらに説明される。この概要で説明したエレメント又はステップ以外のエレメント又はステップが可能であり、どのエレメントもステップも、必ずしも必要とされない。この概要は、請求された主題の重要な特徴も本質的な特徴も識別することを意図しておらず、請求された主題の範囲を決定することに役立つものとしての使用も意図していない。
【発明を実施するための最良の形態】
【００１２】
図面を参照する。図面において、同様の数字は、同様のコンポーネントを示している。図１は、対話型マルチメディアプレゼンテーションシステム（「プレゼンテーションシステム」）１００の簡単化した機能ブロック図である。プレゼンテーションシステム１００は、オーディオ／ビデオコンテンツ（「ＡＶＣ」）マネージャ１０２、対話型コンテンツ（「ＩＣ」）マネージャ１０４、プレゼンテーションマネージャ１０６、タイミング信号管理ブロック１０８、及びミキサ／レンダラ１１０を含む。一般に、設計上の選択によって、プレゼンテーションシステム１００の特定の機能がどのように実施されるかが決定付けられる。このような機能は、ハードウェア、ソフトウェア、若しくはファームウェア、又はそれらの組み合わせを使用して実施することができる。
【００１３】
作動中、プレゼンテーションシステム１００は、対話型マルチメディアプレゼンテーションコンテンツ（「プレゼンテーションコンテンツ」）１２０をハンドリングする。プレゼンテーションコンテンツ１２０は、ビデオコンテンツコンポーネント（「ビデオコンポーネント」）１２２及び対話型コンテンツコンポーネント（「ＩＣコンポーネント」）１２４を含む。ビデオコンポーネント１２２及びＩＣコンポーネント１２４は、一般に、ＡＶＣマネージャ１０２及びＩＣマネージャ１０４によってそれぞれ別個のデータストリームとしてハンドリングされるが、そのようにハンドリングされなくてもよい。
【００１４】
また、プレゼンテーションシステム１００は、プレゼンテーションコンテンツ１２０を再生プレゼンテーション１２７としてユーザ（図示せず）にプレゼンテーションすることも容易にする。再生プレゼンテーション１２７は、プレゼンテーションコンテンツ１２０に関連付けられている可視情報及び／又は可聴情報であって、ミキサ／レンダラ１１０によって生成され、ディスプレイ又はスピーカ（図示せず）等のデバイスを介してユーザが受け取ることができる可視情報及び／又は可聴情報を表す。解説の目的で、プレゼンテーションコンテンツ１２０及び再生プレゼンテーション１２７は、任意のフォーマットの高品位ＤＶＤ映画コンテンツを表すものとする。しかしながら、プレゼンテーションコンテンツ１２０及び再生プレゼンテーション１２７は、現在既知であるか又は後に開発される任意のタイプの対話型マルチメディアプレゼンテーションとできることが十分認識されよう。
【００１５】
ビデオコンポーネント１２２は、プレゼンテーションコンテンツ１２０の従来のビデオコンポーネント、オーディオコンポーネント、又はデータコンポーネントを表す。たとえば、映画は、一般に、１つ又は２つ以上のバージョン（たとえば、成人観客向けバージョン及び青少年観客向けバージョン）；１つ又は２つ以上のチャプタ（図示せず）が各タイトルに関連付けられている１つ又は２つ以上のタイトル１３１（タイトルは、プレゼンテーションマネージャ１０６に関連して以下でさらに解説する）；１つ又は２つ以上のオーディオトラック（たとえば、映画は、サブタイトルの有無を問わず、１つ又は２つ以上の言語で再生することができる）；及び、監督コメンタリー、追加映像、予告編等のエキストラフィーチャを有する。タイトルとチャプタとの相違は、単に論理的な相違にすぎないことが十分認識されよう。たとえば、知覚された単一のメディアセグメントは、単一のタイトル／チャプタの一部である可能性もあるし、複数のタイトル／チャプタで構成されている可能性もある。適用可能な論理的相違を決定するのは、コンテンツオーサリングソース次第である。また、ビデオコンポーネント１２２は、映画と呼ばれるが、実際は、ビデオ、オーディオ、データ、又はそれらの任意の組み合わせとすることができることも十分認識されよう。
【００１６】
ビデオコンポーネント１２２を形成するビデオ、オーディオ、又はデータのサンプル群は、クリップ１２３と呼ばれる（クリップ１２３は、ビデオコンポーネント１２２内、ＡＶＣマネージャ１０２内、及び再生リスト１２８内に示されている）。ＡＶＣマネージャ１０２を参照すると、クリップ１２３に関連付けられている情報が、１つ又は２つ以上のメディアソース１６０から受信され、復号器ブロック１６１において復号される。メディアソースは、ビデオ、オーディオ、又はデータの導出元又は取得元となる任意のデバイス、ロケーション、又はデータである。メディアソースの例には、ネットワーク、ハードドライブ、光媒体、代替的な物理ディスク、及び特定のビデオ、オーディオ、又はデータのストレージロケーションを参照するデータ構造が含まれるが、これらに限定されるものではない。
【００１７】
復号器ブロック１６１は、レンダリング可能なビデオコンテンツ、オーディオコンテンツ、又はデータコンテンツを、メディアソース１６０から受信された情報から取り出すのに使用される任意のデバイス、技法、又はステップを表す。復号器ブロック１６１には、たとえば、符号化器／復号器対、デマルチプレクサ、又は解読器が含まれ得る。復号器とメディアソースとの間の１対１の関係が示されているが、１つの復号器が複数のメディアソースを受け持つこともできるし、その逆も可能であることが十分認識されよう。
【００１８】
オーディオ／ビデオコンテンツデータ（「Ａ／Ｖデータ」）１３２は、ＡＶＣマネージャ１０２によるレンダリングのために準備されてミキサ／レンダラ１１０へ送信されたビデオコンポーネント１２２に関連付けられているデータである。Ａ／Ｖデータ１３４のフレームは、一般に、アクティブな各クリップ１２３について、そのクリップの一部をレンダリングしたものを含む。特定のフレームにおいてレンダリングされるクリップの正確な部分又は量は、そのクリップのビデオコンテンツ、オーディオコンテンツ、若しくはデータコンテンツの特性、又はそのクリップを符号化又は復号するのに使用されるフォーマット、技法、若しくはレート等のいくつかの因子に基づくことができる。
【００１９】
再びプレゼンテーションコンテンツ１２０を参照すると、ＩＣコンポーネント１２４は、メディアオブジェクト１２５を含む。メディアオブジェクト１２５は、ユーザ選択可能な可視オブジェクト又は可聴オブジェクトであり、オプションとして、可視オブジェクト又は可聴オブジェクトをプレゼンテーションするための（アプリケーション１５５として示され、以下でさらに解説される）任意の命令と協力して、ビデオコンポーネント１２２と同時にプレゼンテーション可能である。メディアオブジェクト１２５は、静的なもの又は動画とすることができる。メディアオブジェクトの例には、特に、ビデオサンプル又はビデオクリップ、オーディオサンプル又はオーディオクリップ、グラフィックス、テキスト、及びそれらの組み合わせが含まれる。
【００２０】
メディアオブジェクト１２５は、１つ又は２つ以上のソース（図示せず）を発信源とする。ソースは、メディアオブジェクトの導出元又は取得元となる任意のデバイス、ロケーション、又はデータである。メディアオブジェクト１２５のソースの例には、ネットワーク、ハードドライブ、光媒体、代替的な物理ディスク、及び特定のメディアオブジェクトのストレージロケーションを参照するデータ構造が含まれるが、これらに限定されるものではない。メディアオブジェクト１２５のフォーマットの例には、ポータブルネットワークグラフィックス（「ＰＮＧ」）、ジョイントフォトグラフィックエキスパートグループ（「ＪＰＥＧ」）、ムービングピクチャエキスパートグループ（「ＭＰＥＧ」）、マルチプルイメージネットワークグラフィックス（「ＭＮＧ」）、オーディオビデオインタリーブ（「ＡＶＩ」）、拡張マークアップ言語（「ＸＭＬ」）、ハイパーテキストマークアップ言語（「ＨＴＭＬ」）、拡張ＨＴＭＬ（「ＸＨＴＭＬ」）、拡張スタイルシート言語（「ＸＳＬ」）、及びＷＡＶが含まれるが、これらに限定されるものではない。
【００２１】
アプリケーション１５５は、プレゼンテーションシステム１００がメディアオブジェクト１２５をユーザにプレゼンテーションするメカニズムを提供する。アプリケーション１５５は、データに対する所定のオペレーションを電子的に制御する任意の信号処理方法又は記憶された命令（複数可）を表す。解説の目的で、ＩＣコンポーネント１２４は、３つのアプリケーション１５５を含むものとする。これら３つのアプリケーション１５５は、図２及び図３に関連して以下でさらに解説する。第１のアプリケーションは、映画に先立って著作権表示をプレゼンテーションし、第２のアプリケーションは、映画の視覚的側面と同時に、複数のユーザ選択可能なアイテムを有するメニューを提供する一定のメディアオブジェクトをプレゼンテーションし、第３のアプリケーションは、映画に登場する人又はアイテム（たとえば、人物、車、建物、又は製品）を識別し且つ／又はそれらに追従するのに使用できるグラフィックオーバレイ（円等）を提供する１つ又は２つ以上のメディアオブジェクトをプレゼンテーションする。
【００２２】
対話型コンテンツデータ（「ＩＣデータ」）１３４は、ＩＣマネージャ１０４によるレンダリングのために準備されてミキサ／レンダラ１１０へ送信された、ＩＣコンポーネント１２４に関連付けられているデータである。各アプリケーションは、関連付けられているキュー（図示せず）を有する。このキューは、そのアプリケーションをレンダリングすることに関連付けられている１つ又は２つ以上の作業アイテム（図示せず）を保持する。
【００２３】
プレゼンテーションマネージャ１０６は、ＡＶＣマネージャ１０４及びＩＣマネージャ１０２の双方と通信するように構成され、プレゼンテーションコンテンツ１２０のハンドリング及び再生プレゼンテーション１２７のユーザへのプレゼンテーションを容易にする。プレゼンテーションマネージャ１０６は、再生リスト１２８にアクセスすることができる。再生リスト１２８は、特に、ユーザにプレゼンテーション可能な時間順序列のクリップ１２３及びアプリケーション１５５（メディアオブジェクト１２５を含む）を含む。クリップ１２３及びアプリケーション１５５／メディアオブジェクト１２５は、１つ又は２つ以上のタイトル１３１を形成するように配置することができる。例示の目的で、１つのタイトル１３１を本明細書では解説する。再生リスト１２８は、拡張マークアップ言語（「ＸＭＬ」）文書を使用して実施することもできるし、別のデータ構造を使用して実施することもできる。
【００２４】
プレゼンテーションマネージャ１０６は、再生リスト１２８を使用して、タイトル１３１のプレゼンテーション時刻表を確認する。概念的には、プレゼンテーション時刻表１３０は、特定のクリップ１２３及びアプリケーション１５５がユーザにプレゼンテーション可能である時の、タイトル１３１内における時刻を示す。サンプルのプレゼンテーション時刻表１３０は、クリップ１２３及びアプリケーション１５５のプレゼンテーション間の例示的な関係を示している。このサンプルのプレゼンテーション時刻表１３０は、図２に関連して、図示して解説する。一定の状況では、ビデオコンテンツ時刻表（「ビデオ時刻表」）１４２及び対話型コンテンツ時刻表（「ＩＣ時刻表」）１４４を確認するために、再生リスト１２８及び／又はプレゼンテーション時刻表１３０を使用することも有益である。
【００２５】
プレゼンテーションマネージャ１０６は、ＡＶＣマネージャ１０２及びＩＣマネージャ１０４に情報を提供する。この情報には、プレゼンテーション時刻表１３０についての情報が含まれるが、これに限定されるものではない。プレゼンテーションマネージャ２０６からの入力に基づいて、ＡＶＣマネージャ１０２は、Ａ／Ｖデータ１３２をレンダリングのために準備し、ＩＣマネージャ１０４は、ＩＣデータ１３４をレンダリングのために準備する。
【００２６】
タイミング信号管理ブロック１０８は、さまざまなタイミング信号１５８を生成する。これらのタイミング信号１５８は、ＡＶＣマネージャ１０２によるＡ／Ｖデータ１３２の準備及び生成のタイミング並びにＩＣマネージャ１０４によるＩＣデータ１３４の準備及び生成のタイミングを制御するのに使用される。詳細には、タイミング信号１５８は、Ａ／Ｖデータ１３２及びＩＣデータ１３４のフレームレベルの同期を達成するのに使用される。タイミング信号管理ブロック１０８及びタイミング信号１５８の詳細は、図４に関連して以下でさらに解説する。
【００２７】
ミキサ／レンダラは、Ａ／Ｖデータ１３２をビデオプレーン（図示せず）にレンダリングし、ＩＣデータ１３４をグラフィックスプレーン（図示せず）にレンダリングする。グラフィックスプレーンは、必ずしもそうではないが、一般には、ユーザ用の再生プレゼンテーション１２７を生成するように、ビデオプレーン上にオーバーレイされている。
【００２８】
図１の参照を続けながら、図２は、再生リスト１２８内のタイトル１３１のサンプルのプレゼンテーション時刻表１３０の図的な説明図である。時間は、横軸２２０上に示されている。ビデオコンポーネント１２２についての情報（クリップ１２３が示されている）及びＩＣコンポーネント１２４についての情報（メディアオブジェクト１２５をプレゼンテーションするアプリケーション１５５が示されている）が、縦軸２２５上に示されている。ビデオコンポーネント１２２に関して、第１のビデオクリップ（「ビデオクリップ１」）２３０及び第２のビデオクリップ（「ビデオクリップ２」）２５０の２つのクリップ１２３が示されている。
【００２９】
ＩＣコンポーネント１２４に関しては、図１に関連して上述したように、第１のアプリケーションは、著作権表示２６０を含む１つ又は２つ以上のメディアオブジェクト（たとえば、画像及び／又はテキスト）をプレゼンテーションすることを担当する。第２のアプリケーションは、メニュー２８０のユーザ選択可能アイテム（たとえば、関連付けられているテキスト又はグラフィックスを有するボタン）を提供する一定のメディアオブジェクトをプレゼンテーションすることを担当する。第３のアプリケーションは、グラフィックオーバーレイ２９０を提供する１つ又は２つ以上のメディアオブジェクトをプレゼンテーションすることを担当する。図示するように、メニュー２８０は、ビデオクリップ１  ２３０及びビデオクリップ２  ２５０と同時に表示され、グラフィックオーバーレイ２９０は、ビデオクリップ１  ２３０及びメニュー２８０と同時に表示可能である。
【００３０】
タイトル１３１がユーザにプレゼンテーション可能である横軸２２０に沿った特定の時間量は、タイトル１３１の再生継続期間２９２と呼ばれる。再生継続期間２９２内の特定の時間は、タイトル時間と呼ばれる。４つのタイトル時間（「ＴＴ」）、すなわち、ＴＴ１  ２９３、ＴＴ２  ２９４、ＴＴ３  ２９５、及びＴＴ４  ２９６がプレゼンテーション時刻表１３０に示されている。タイトルは１回再生することもできるし、（たとえば、ループ形式で）２回以上再生することもできるので、再生継続期間２９２は、タイトル１３１の１回の反復に基づいて決定される。再生継続期間２９２は、任意の所望の基準値を基準にして決定することができる。この基準値には、所定の再生速度（たとえば、通常再生速度、すなわち１倍再生速度）、所定のフレームレート、又は所定のタイミング信号ステータスが含まれるが、これらに限定されるものではない。再生速度、フレームレート、及びタイミング信号は、図４に関連して以下でさらに解説する。
【００３１】
表示技法、並びに再生シーケンス並びに各タイトルについてのクリップ及びメディアオブジェクトの間のタイミング関係に関する特定のルール等、実施態様特有の因子が、タイトルの再生継続期間及びその再生継続期間におけるタイトル時間の正確な値に影響を与える場合があることが十分認識されよう。再生継続期間及びタイトル時間という用語は、このようなすべての実施態様特有の詳細を包含することを意図している。
【００３２】
ＩＣコンポーネント１２４に関連付けられているコンテンツがその時刻／時間内においてプレゼンテーション可能であるタイトル時間は、一般に、あらかじめ定められているが、ユーザがこのようなコンテンツと対話する時に行われる動作は、再生プレゼンテーション１２７が再生されている間のユーザ入力に基づいてのみ決定できることが十分認識されよう。たとえば、ユーザは、再生プレゼンテーション１２７の再生中に、一定のアプリケーション、メディアオブジェクト、及び／又はそれらに関連付けられている追加コンテンツを選択したり、アクティブ化したり、非アクティブ化したりすることができる。
【００３３】
再生継続期間２９２内の他の時刻及び／又は継続期間も、本明細書で定義及び解説される。ビデオプレゼンテーション間隔２４０は、ビデオコンポーネント１２２に関連付けられている特定のコンテンツがその間に再生可能である再生継続期間２９２の開始時刻及び終了時刻によって画定される。たとえば、ビデオクリップ１  ２３０は、タイトル時間ＴＴ２  ２９４とＴＴ４  ２９６との間のプレゼンテーション間隔２４０を有し、ビデオクリップ２  ２５０は、タイトル時間ＴＴ３  ２９５とＴＴ４  ２９６との間のプレゼンテーション間隔２４０を有する。アプリケーションプレゼンテーション間隔、アプリケーション再生継続期間、ページプレゼンテーション間隔、及びページ継続期間も、図３に関連して以下で定義及び解説される。
【００３４】
図１及び図２の参照を続けながら、図３は、単一のアプリケーション１５５の機能ブロック図である。アプリケーション１５５は、一般に、メディアオブジェクト２６０、２８０、及び２９０（図２に図示）をプレゼンテーションすることを担当するアプリケーションを代表している。アプリケーション１５５は、コンテンツ命令３０２、タイミング命令３０６、スクリプト命令３０８、スタイル命令３１０、メディアオブジェクト命令３１２、及びイベント命令３６０を含む命令３０４（以下でさらに解説）を含む。アプリケーション１５５は、自身に関連付けられている０個又は１つ以上の資源パッケージデータ構造３４０（以下でさらに解説）、アプリケーション再生継続期間３２０、及び１つ又は２つ以上のアプリケーションプレゼンテーション間隔３２１を有する。
【００３５】
アプリケーション再生継続期間３２０は、アプリケーション１５５に関連付けられているメディアオブジェクト１２５が再生プレゼンテーション１２７の受け手にプレゼンテーション可能であり且つ／又は当該受け手によって選択可能である再生継続期間２９２の量（一部又は全部）に関する特定の時間量である。図２との関連では、たとえば、著作権表示２６０を担当するアプリケーション１５５は、ＴＴ１  ２９３とＴＴ２  ２９４との間の時間量から成るアプリケーション再生継続期間を有する。メニュー２８０を担当するアプリケーションは、ＴＴ２  ２９４とＴＴ４  ２９６との間の時間量から成るアプリケーション再生継続期間を有する。グラフィカルオーバーレイ２９０を担当するアプリケーションは、ＴＴ２  ２９４とＴＴ３  ２９５との間の時間量から成るアプリケーション再生継続期間を有する。
【００３６】
特定のアプリケーションに関連付けられているアプリケーション再生継続期間３２０がプレゼンテーション時刻表上で概念化された時に取得される開始タイトル時間及び終了タイトル時間によって画定される間隔は、アプリケーションプレゼンテーション間隔３２１と呼ばれる。たとえば、図２を参照すると、著作権表示２６０を担当するアプリケーションは、ＴＴ１  ２９３で開始してＴＴ２  ２９４で終了するアプリケーションプレゼンテーション間隔を有し、メニュー２８０を担当するアプリケーションは、ＴＴ２  ２９４及びＴＴ４  ２９６で開始するアプリケーションプレゼンテーション間隔を有し、グラフィックオーバーレイ２９０を担当するアプリケーションは、ＴＴ２  ２９４で開始してＴＴ３  ２９５で終了するアプリケーションプレゼンテーション間隔を有する。
【００３７】
再び図３を参照すると、場合によっては、アプリケーション１５５は、２つ以上のページを有する場合がある。ページは、特定のアプリケーション再生継続期間３２０及び／又はアプリケーションプレゼンテーション間隔３２１内で同時にプレゼンテーション可能な１つ又は２つ以上のメディアオブジェクトの論理グループである。初期ページ３３０及び後続ページ（複数可）３３５が示されている。各ページは、それ自身のページ継続期間を有する。ページ継続期間は、特定のページに関連付けられているメディアオブジェクトがユーザにプレゼンテーション可能である（且つ／又はユーザによって選択可能である）、アプリケーション再生継続期間３２０の量（一部又は全部）に関する特定の時間量である。図示するように、初期ページ３３０はページ継続期間３３２を有し、後続ページ（複数可）３３５はページ継続期間３３７を有する。
【００３８】
特定のページに関連付けられているメディアオブジェクトは、同時にプレゼンテーションすることもできるし、連続的にプレゼンテーションすることもできるし、それらの組み合わせでプレゼンテーションすることもできる。図示するように、初期ページ３３０は、関連付けられている初期メディアオブジェクト（複数可）３３１を有し、後続ページ３３５は、関連付けられているメディアオブジェクト（複数可）３３６を有する。特定のページに関連付けられているページ継続期間がプレゼンテーション時刻表（図２参照）上で概念化された時に取得される開始タイトル時間及び終了タイトル時間によって画定される間隔は、ページプレゼンテーション間隔３４３と呼ばれる。ページプレゼンテーション間隔３４３は、特定のメディアオブジェクト３３１、３３６がプレゼンテーション可能であるアプリケーションプレゼンテーション間隔３２１の部分間隔である。特定のメディアオブジェクトプレゼンテーション間隔３４５も、ページプレゼンテーション間隔３４３内に画定することができる。
【００３９】
所与のタイトルに関連付けられているアプリケーション及びページの個数、並びに、各アプリケーション又は各ページに関連付けられているメディアオブジェクトの個数は、一般に、設計上の選択事項である相違である。たとえば、特定の初期ページの指定が必要でなかったり、アプリケーションの２つ以上のページを同時にプレゼンテーションすることができたり、アプリケーションをページなしで（又は、何も含まない初期ページで）起動できたりする。アプリケーションのページは、アプリケーション及びスクリプトが完全な状態に保たれている間にロード又はアンロードすることができる。アプリケーションの実行中にメモリにロードされる、そのアプリケーションに関連付けられている資源の個数又は量を管理する（たとえば、制限する）ことが望ましいときは、複数のページを使用することができる。アプリケーションの資源は、そのアプリケーションによって使用されるメディアオブジェクトに加えて、それらのメディアオブジェクトをレンダリングするための命令３０４も含む。たとえば、複数のページを有するアプリケーションがプレゼンテーション可能であるとき、そのアプリケーションの現在プレゼンテーション可能なページに関連付けられている資源のみをメモリにロードすることのみが可能な場合がある。
【００４０】
資源パッケージデータ構造３４０は、（オプションとして、アプリケーションの実行前に）アプリケーション資源のメモリ内へのロードを容易にするのに使用される。資源パッケージデータ構造３４０は、そのアプリケーションの資源が配置されているメモリロケーションを参照する。資源パッケージデータ構造３４０は、該資源パッケージデータ構造３４０が参照する資源と共に又はその資源とは別に任意の望ましいロケーションに記憶することができる。たとえば、資源パッケージデータ構造３４０は、高品位ＤＶＤ等の光媒体上において、ビデオコンポーネント１２２とは別のエリアに配置することができる。代替的に、資源パッケージデータ構造３４０は、ビデオコンポーネント１２２内に埋め込むこともできる。さらなる代替形態では、資源パッケージデータ構造は、遠隔に配置することもできる。遠隔ロケーションの一例は、ネットワーク接続されたサーバである。アプリケーション実行用の資源のアプリケーション間での遷移をハンドリングすることに関する話題は、本明細書では詳細に解説しない。
【００４１】
再びアプリケーション１５５自体を参照すると、命令３０４は、実行されると、ユーザ入力に基づいて、アプリケーション１５５に関連付けられているメディアオブジェクト１２５のレンダリングに関係したタスクを遂行する。１つのタイプのユーザ入力（又はその結果）は、ユーザイベントである。ユーザイベントは、ＩＣコンポーネント１２４に関係する、再生プレゼンテーション１２７の受け手によって起動された動作又は出来事である。ユーザイベントは、必ずしもそうではないが、一般には非同期である。ユーザイベントの例には、メニュー２８０内のボタンの選択又はグラフィカルオーバーレイ２９０に関連付けられている円の選択等、再生プレゼンテーション１２７内におけるメディアオブジェクトとのユーザ対話が含まれるが、これに限定されるものではない。このような対話は、キーボード、リモコン、マウス、スタイラス、又は音声コマンドを含めて、現在知られているか又は後に開発される、任意のタイプのユーザ入力デバイスを使用して行うことができる。アプリケーション１５５は、システムイベント、文書オブジェクトモデルイベント、他のタイプのイベント等、ユーザイベント以外のイベントに応答できることが十分認識されよう。
【００４２】
一実施態様では、命令３０４は、コンピュータ可読媒体にコード化されたコンピュータ実行可能命令である（図８及び図９に関連して、以下でさらに解説）。本明細書で述べる例では、命令３０４は、スクリプト３０８又はマークアップエレメント３０２、３０６、３１０、３１２、３６０のうちのいずれかを使用して実施される。スクリプト又はマークアップエレメントのいずれかを単独で使用することができるが、一般には、スクリプト及びマークアップエレメントの組み合わせによって、高品位ＤＶＤ映画の包括的な一組の対話機能の作成が可能になる。
【００４３】
スクリプト３０８は、命令型プログラミング言語等の非宣言型プログラミング言語で記述された命令３０４を含む。命令型プログラミング言語は、プロセッサによって遂行されるコマンドシーケンスの点から計算を記述する。スクリプト３０８が使用されるほとんどの場合において、スクリプトは、ユーザイベントに応答するために使用される。しかしながら、スクリプト３０８は、マークアップエレメントのみを使用しただけでは容易に又は効率的に実施されない問題のハンドリング等、他の状況にも役立つ。このような状況の例には、システムイベント、状態管理、及び資源管理（たとえば、キャッシュされた資源又は永続的に記憶された資源へのアクセス）が含まれる。一実施態様では、スクリプト３０８は、ＥＣＭＡインターナショナルによってＥＣＭＡ−２６２仕様に定義されたＥＣＭＡＳｃｒｉｐｔである。ＥＣＭＡ−２６２の分類に入る一般的なスクリプトプログラミング言語には、ＪａｖａＳｃｒｉｐｔ及びＪＳｃｒｉｐｔが含まれる。いくつかの設定では、ＥＣＭＡ−３２７等、ＥＣＭＡＳｃｒｉｐｔ２６２のサブセットを使用してスクリプト３０８を実施することが望ましい場合がある。
【００４４】
マークアップエレメント３０２、３０６、３１０、３１２、及び３６０は、拡張マークアップ言語（「ＸＭＬ」）等の宣言型プログラミング言語で記述された命令３０４を表す。ＸＭＬでは、エレメントは、ＸＭＬ文書内において、開始タグ及び終了タグを使用して定義される情報の論理ユニットである。ＸＭＬ文書は、エンティティと呼ばれる（コンテナとも呼ばれる）ストレージユニットで構成されるデータオブジェクトである。これらのエンティティは、パースされたデータ又はパースされていないデータのいずれかを含む。パースされたデータは文字で構成される。文字の或るものは文字データを形成し、また或るものはマークアップを形成する。マークアップは、文書のストレージレイアウト及び論理構造の記述をコード化する。ＸＭＬ文書には１つのルートエレメントがある。ルートエレメントのどの部分も、他のどのエレメントのコンテンツにも現れない。他のすべてのエレメントについては、開始タグ及び終了タグが、互いの内部にネストされた他のエレメントのコンテンツ内にある。
【００４５】
ＸＭＬスキーマは、ＸＭＬ文書のクラスのシンタックス（複数可）の定義である。いくつかのＸＭＬスキーマは、ワールドワイドウェブコンソーシアム（「Ｗ３Ｃ」）によって定義されている。他のＸＭＬスキーマは、高品位ビデオ及び他の使用のためのＤＶＤ仕様に準拠したＸＭＬ文書と共に使用するためのＤＶＤフォーラムによって公表されている。高品位ＤＶＤ映画の他のスキーマに加えて、他の対話型マルチメディアプレゼンテーションのスキーマも可能であることが十分認識されよう。
【００４６】
高いレベルにおいて、ＸＭＬスキーマは、（１）グローバルエレメント宣言、及び、（２）タイプ定義を含む。グローバルエレメント宣言は、エレメント名をエレメントタイプに関連付けるものである。タイプ定義は、そのタイプのエレメントについての属性、サブエレメント、及び文字データを定義するものである。エレメントの属性は、名前／値の対を使用して、そのエレメントの特定のプロパティを指定する。１つの属性は、単一のエレメントプロパティを指定する。
【００４７】
コンテンツエレメント３０２は、イベントエレメント３６０を含むことができ、アプリケーション１５５によってユーザにプレゼンテーション可能な特定のメディアオブジェクトエレメント３１２を識別するのに使用される。次に、メディアオブジェクトエレメント３１２は、一般に、特定のメディアオブジェクト１２５を定義するデータが配置されるロケーションを指定する。このようなロケーションは、たとえば、ローカルストレージ又はリモートストレージのロケーションとすることができる。このロケーションには、光媒体上のロケーション、又は、インターネット、プライベート管理ネットワーク、ワールドワイドウェブ等の有線若しくは無線の公衆ネットワーク上のロケーション若しくはプライベートネットワーク上のロケーションが含まれる。メディアオブジェクトエレメント３１２によって指定されるロケーションは、資源パッケージデータ構造３４０への参照子等、ロケーションへの参照子とすることもできる。このように、メディアオブジェクト１２５のロケーションは、間接的に指定することができる。
【００４８】
タイミングエレメント３０６は、特定のコンテンツエレメント３０２が特定のアプリケーション１５５によってユーザにプレゼンテーション可能である時刻又は時間間隔を指定するのに使用される。タイミングエレメントの例には、ＸＭＬ文書の時間コンテナ内のｐａｒエレメント、ｔｉｍｉｎｇエレメント、又はｓｅｑエレメントが含まれる。いくつかのタイミングエレメントは、同期化マルチメディア統合言語（「ＳＭＩＬ」）についてＷ３Ｃにより公開された標準規格により定義されている。他のタイミングエレメントは、ＤＶＤフォーラムによって公開された標準規格（たとえば、高品位ビデオ用のＤＶＤ仕様）によって定義されている。これらの標準規格は、あらゆる目的で本明細書に参照により援用される。宣言型言語文書と共に使用するための他のタイミングモデルに関連付けられている異なるタイミングエレメントも可能である。
【００４９】
スタイルエレメント３１０は、一般に、特定のアプリケーションによってユーザにプレゼンテーション可能な特定のコンテンツエレメント３０２の出現を指定するのに使用される。一定のスタイルエレメントは、Ｗ３Ｃ及び／又はＤＶＤフォーラムによって１つ又は２つ以上の公開仕様で定義されている。Ｗ３Ｃによって公開された仕様の例には、ＸＳＬに関する仕様及びカスケーディンスタイルシート（「ＣＳＳ」）に関する仕様が含まれる。
【００５０】
イベントを定義するのに使用されるか又はイベントに応答するのに使用されるイベントエレメント３６０は、コンテンツエレメント３２０、タイミングエレメント３０６、又はスタイルエレメント３１０を表す。イベントは、ユーザイベント、システムイベント、文書オブジェクトモデルイベント、他のイベント（高品位ＤＶＤ映画に関連付けられているアプリケーションで使用するための１つ又は２つ以上のＸＭＬスキーマにより指定されるか又はそれらのＸＭＬスキーマと共に使用されるイベント等）等である。このようなイベントタグは、Ｗ３Ｃによって指定されたイベントタグから導出することもできるし、Ｗ３Ｃによって指定されたイベントタグに類似したものとすることもできるし、或いは、Ｗ３Ｃによって指定されたイベントタグとは異なるものとすることもできる。
【００５１】
マークアップエレメント３０２、３０６、３１０、及び３６０は、それらに関連付けられているメディアオブジェクトエレメント３１２／メディアオブジェクト１２５の一定のプロパティを指定するのに使用可能な属性を有する。一実施態様では、これらの属性／プロパティは、１つ又は２つ以上のクロック又はタイミング信号の値を表す（図４に関連して以下でさらに解説）。時刻又は時間継続期間を表すプロパティを有するマークアップエレメントの属性を使用することは、ユーザが再生プレゼンテーション１２７を受け取っている間、ＩＣコンポーネント１２４とビデオコンポーネント１２２との間の同期を達成する１つの方法である。別の実施態様（図６に関連して以下でさらに解説）では、これらの属性／プロパティの構造化表現が定期的に問い合わせされ、それらの構造化表現の特定の値又は変化が、再生プレゼンテーション１２７内でＩＣコンポーネント１２４を再生することに関連付けられている１つ又は２つ以上の動作をトリガするのに使用可能である。
【００５２】
マークアップエレメントを含むサンプルのＸＭＬ文書を以下で述べる（スクリプト３０８は示されていない）。サンプルのＸＭＬ文書は、コンテンツエレメント３０２上で動画のトリミング（crop animation）を行うためのスタイルエレメント３１０及びタイミングエレメント３０６を含む。コンテンツエレメント３０２は、「ｉｄ」と呼ばれるメディアオブジェクトエレメント３１２を参照する。「ｉｄ」メディアオブジェクトエレメントに関連付けられているメディアオブジェクト１２５を定義するデータのロケーションは示されていない。以下のサンプルのＸＭＬ文書は、例示の目的で提供されたものであり、構文的には適法でない場合があることが十分認識されよう。
【００５３】
サンプルのＸＭＬ文書は、「ｒｏｏｔ」と呼ばれるルートエレメントから始まる。ルートエレメントに続いて、数個の名前空間「ｘｍｌｎｓ」フィールドが、このサンプルのＸＭＬ文書のシンタックスを定義するさまざまなスキーマ及びその中のコンテナを見つけることができるワールドワイドウェブ上のロケーションを参照する。高品位ＤＶＤ映画と共に使用するためのＸＭＬ文書の関連では、たとえば、名前空間フィールドは、ＤＶＤフォーラムに関連付けられているウェブサイトを参照することができる。
【００５４】
「ｉｄ」と呼ばれる１つのコンテンツエレメント３０２は、「ｂｏｄｙ」とラベル付けされたタグによって記述されるコンテナ内に定義される。コンテンツエレメント「ｉｄ」に関連付けられているスタイルエレメント３１０（この例では、ラベル「ｓｔｙｌｉｎｇ」の下のエレメント）は、「ｈｅａｄ」とラベル付けされたタグによって記述されるコンテナ内に定義される。タイミングエレメント３０６（ラベル「ｔｉｍｉｎｇ」の下のエレメント）も、「ｈｅａｄ」とラベル付けされたタグによって記述されるコンテナ内に定義される。
【００５５】
【表１−Ａ】
2009500912.tif 000003
【表１−Ｂ】
2009500912.tif 000004
図１〜図３を続けて参照しながら、図４は、タイミング信号管理ブロック１０８及びタイミング信号１５８のさまざまなコンポーネントをより詳細に示す簡単化した機能ブロック図である。
【００５６】
タイミング信号管理ブロック１０８は、プレゼンテーションシステム１００内の特定の時刻又は時間継続期間を決定するのに使用されるクロック及び／又はタイミング信号のハンドリングを担当する。図示するように、連続的なタイミング信号４０１が、クロックソース４０２によって所定のレートで生成される。クロックソース４０２は、汎用コンピュータ又は専用電子デバイス等の処理システムに関連付けられているクロックとすることができる。クロックソース４０２によって生成されたタイミング信号４０１は、一般に、現実世界の時計が変化するように絶えず変化し、実時間の１秒以内に、クロックソース４０２は、所定のレートでタイミング信号４０１の１秒分を生成する。タイミング信号４０１は、ＩＣフレームレート計算機４０４、Ａ／Ｖフレームレート計算機４０６、時間基準（time reference）計算機４０８、及び時間基準計算機４９０に入力される。
【００５７】
ＩＣフレームレート計算機４０４は、タイミング信号４０１に基づいてタイミング信号４０５を生成する。タイミング信号４０５は、「ＩＣフレームレート」と呼ばれる。このＩＣフレームレートは、ＩＣデータ１３４のフレームがＩＣマネージャ１０４によって生成されるレートを表す。ＩＣフレームレートの１つの例示的な値は、毎秒３０フレームである。ＩＣフレームレート計算機４０４は、タイミング信号４０１のレートを増減させて、タイミング信号４０５を生成することができる。
【００５８】
ＩＣデータ１３４のフレームは、一般に、有効な各アプリケーション１５５及び／又はそのアプリケーションの有効な各ページについて、関連のあるユーザイベントに従い、その有効なアプリケーション及び／又はページに関連付けられている各メディアオブジェクト１２５のレンダリングを含む。例示の目的で、有効なアプリケーションは、プレゼンテーション時刻表１３０に基づいて、再生継続期間２９２の現在のタイトル時間が含まれるアプリケーションプレゼンテーション間隔３２１を有するアプリケーションである。アプリケーションは、２つ以上のアプリケーションプレゼンテーション間隔を有することができることが十分認識されよう。また、ユーザ入力又は資源の可用性に基づくアプリケーションの状態について本明細書では、特定の区別を行なっていないことも十分認識されよう。
【００５９】
Ａ／Ｖフレームレート計算機４０６も、タイミング信号４０１に基づいて、タイミング信号、すなわちタイミング信号４０７を生成する。タイミング信号４０７は、「Ａ／Ｖフレームレート」と呼ばれる。このＡ／Ｖフレームレートは、Ａ／Ｖデータ１３２のフレームがＡＶＣマネージャ１０２によって生成されるレートを表す。Ａ／Ｖフレームレートは、ＩＣフレームレート４０５と同じであってもよいし、異なってもよい。Ａ／Ｖフレームレートの１つの例示的な値は、毎秒２４フレームである。Ａ／Ｖフレームレート計算機４０６は、タイミング信号４０１のレートを増減させて、タイミング信号４０７を生成することができる。
【００６０】
クロックソース４７０は、タイミング信号４７１を生成する。タイミング信号４７１は、クリップ１２３に関連付けられている情報がメディアソース（複数可）１６１から生成されるレートを統制する。クロックソース４７０は、クロック４０２と同じクロックとすることもできるし、クロック４０２と同じクロックに基づくこともできる。代替的に、クロック４７０及び４０２は、全く異なったものとすることもでき、且つ／又は、異なるソースを有することもできる。クロックソース４７０は、再生速度入力４８０に基づいてタイミング信号４７１のレートを調整する。再生速度入力４８０は、再生プレゼンテーション１２７の再生速度に影響を与える、受け取られたユーザ入力を表す。再生速度は、たとえば、ユーザが映画の或る部分から別の部分へジャンプした時（「トリック再生」と呼ばれる）、又は、ユーザが映画を一時停止、低速早送り、高速早送り、低速巻き戻し、又は高速巻き戻しをした時に、影響を受ける。トリック再生は、メニュー２８０（図２に図示）から選択を行うことにより達成することもできるし、他の方法で達成することもできる。
【００６１】
時間基準４５２は、アクティブなクリップ１２３に関連付けられている特定のプレゼンテーション間隔２４０内で経過した時間量を表す。本明細書での解説の目的で、アクティブなクリップは、再生継続期間２９２の現在のタイトル時間が含まれるプレゼンテーション間隔２４０を有するクリップである。時間基準４５２は、「経過クリップ再生時間（複数可）」と呼ばれる。時間基準計算機４５４は、時間基準４５２を受け取って、メディア時間基準４５５を生成する。メディア時間基準４５５は、１つ又は２つ以上の時間基準４５２に基づいて経過した再生継続期間２９２の総量を表す。一般に、２つ以上のクリップが同時に再生されている時、メディア時間基準４５５を生成するのに、１つの時間基準４５２しか使用されない。メディア時間基準４５５を求めるのに使用され、且つ、メディア時間基準４５５を複数のクリップに基づいてどのように求めるかを決定するのに使用される特定のクリップは、実施の選択事項である。
【００６２】
時間基準計算機４０８は、タイミング信号４０１、メディア時間基準４５５、及び再生速度入力４８０を受け取って、タイトル時間基準４０９を生成する。タイトル時間基準４０９は、時間基準計算機４０８への入力のうちの１つ又は２つ以上に基づいて再生継続期間２９２内で経過した総時間量を表す。
【００６３】
時間基準計算機４９０は、タイミング信号４０１及びタイトル時間基準４０９を受け取って、アプリケーション時間基準（複数可）４９２及びページ時間基準（複数可）４９４を生成する。単一のアプリケーション時間基準４９２は、連続的なタイミング信号４０１に関して、特定のアプリケーション再生継続期間３２０（図３に関連して図示して解説）の経過時間量を表す。アプリケーション時間基準４９２は、現在のタイトル時間が特定のアプリケーションのアプリケーションプレゼンテーション間隔３２１に含まれることをタイトル時間基準４０９が示しているときに求められる。アプリケーション時間基準４９２は、アプリケーションプレゼンテーション間隔３２１の完了時にリセットされる（たとえば、非アクティブになるか又は再起動する）。アプリケーション時間基準４９２は、ユーザイベントへの応答や、トリック再生が行われた時等の他の状況においてもリセットすることができる。
【００６４】
ページ時間基準４９４は、連続的なタイミング信号４０１に関して、単一のページ再生継続期間３３２、３３７の経過時間量を表す（同様に、図３に関連して図示して解説）。アプリケーションの特定のページのページ時間基準４９４は、現在のタイトル時間が適用可能ページプレゼンテーション間隔３４３に含まれることをタイトル時間基準４０９が示しているときに求められる。ページプレゼンテーション間隔は、アプリケーションプレゼンテーション間隔３２１の部分間隔である。ページ時間基準（複数可）４９４は、適用可能ページプレゼンテーション間隔（複数可）３４３の完了時にリセットすることができる。また、ページ時間基準４９４は、ユーザイベントへの応答、又はトリック再生が行われた時等の他の状況においてもリセットすることができる。メディアオブジェクトプレゼンテーション間隔３４５は、アプリケーションプレゼンテーション間隔３２１及び／又はページプレゼンテーション間隔３４３の部分間隔とすることができ、これらの間隔も画定可能であることが十分認識されよう。
【００６５】
表１は、プレゼンテーションシステム１００による再生プレゼンテーション１２７の再生中の例示的な出来事と、アプリケーション時間基準４９２、ページ時間基準４９４、タイトル時間基準４０９、及びメディア時間基準４５５に対するこのような出来事の影響とを示している。
【００６６】
【表２】
2009500912.tif 000005
図５は、アプリケーション時間基準４９２、ページ時間基準（複数可）４９４、タイトル時間基準４０９、及びメディア時間基準４５５に対する、再生プレゼンテーション１２７の再生中の一定の出来事５０２の影響をより詳細に示す概略図である。出来事５０２及びその影響は、タイミング信号４０１等の連続的なタイミング信号の値を基準にして示されている。別段の指定のない限り、高品位ＤＶＤ映画の特定のタイトルが、通常速度で再生されており、３つの連続してプレゼンテーション可能なページを有する単一のアプリケーションがユーザ対話性を提供する。
【００６７】
映画は、タイミング信号が０の値を有する時に再生を開始する。タイミング信号が１０の値を有する時、アプリケーションは有効となり、アクティブになる。アプリケーション時間４９２、及び、アプリケーションのページ１に関連付けられているページ時間４９４は、０の値とする。ページ２及び３は非アクティブである。タイトル時間４０９及びメディア時間４５５は共に、１０の値を有する。
【００６８】
アプリケーションのページ２が、タイミング信号値１５でロードされる。アプリケーション時間及びページ１の時間は５の値を有する一方、タイトル時間及びメディア時間は１５の値を有する。
【００６９】
タイミング信号が２０の値を有する時に、アプリケーションのページ３がロードされる。アプリケーション時間は１０の値を有し、ページ２の時間は５の値を有し、ページ１の時間は非アクティブである。タイトル時間及びメディア時間は２０の値を有する。
【００７０】
映画は、タイミング信号値２２で一時停止する。アプリケーション時間は１２の値を有し、ページ３の時間は２の値を有し、ページ１及び２は非アクティブである。タイトル時間及びメディア時間は２２の値を有する。映画は、タイミング信号値２４で再開する。この時、アプリケーション時間は１４の値を有し、ページ３の時間は４の値を有し、タイトル時間及びメディア時間は２２の値を有する。
【００７１】
タイミング信号値２７において、新しいクリップが開始する。アプリケーション時間は１７の値を有し、ページ３の時間は７の値を有し、タイトル時間は２５の値を有し、メディア時間は０にリセットされる。
【００７２】
ユーザが、タイミング信号値３２でアプリケーションを非アクティブにする。アプリケーション時間は２２の値を有し、ページ時間は１２の値を有し、タイトル時間は３０の値を有し、メディア時間は５の値を有する。
【００７３】
タイミング信号値３９において、ユーザは、同じクリップの別の部分への巻き戻しであるジャンプを行う。アプリケーションは、ジャンプ先のロケーションで有効であるものとし、その後まもなくして再びアクティブになる。アプリケーション時間は０の値を有し、ページ１の時間は０の値を有し、他のページは非アクティブであり、タイトル時間は２７の値を有し、メディア時間は２の値を有する。
【００７４】
タイミング信号値４６において、ユーザは、映画の再生速度を変更して、通常速度の２倍の高速早送りを行う。高速早送りは、タイミング信号値５３まで続く。図示するように、アプリケーション時間及びページ時間は、連続的なタイミング信号と共に一定のペースで変化し続け、映画の再生速度の変化による影響を受けない一方、タイトル時間及びメディア時間は、映画の再生速度に比例して変化する。アプリケーションの特定のページがロードされた時は、タイトル時間４０９及び／又はメディア時間４５５に関係していることに留意すべきである（図３に関連したアプリケーションプレゼンテーション間隔（複数可）３２１及びページプレゼンテーション間隔（複数可）３４３の解説を参照）。
【００７５】
タイミング信号値４８において、新しいタイトルが開始し、タイトル時間４０９及びメディア時間４５５は、０の値にリセットされる。初期タイトルを基準にすると、これは、タイトル時間が６２の値を有し、且つ、メディア時間が３６の値を有する時に行われる。アプリケーション時間４９２及びページ時間４９４のリセットが、タイトル時間４０９及びメディア時間４５５のリセットに続く。
【００７６】
さまざまな時刻表、クロックソース、タイミング信号、及びタイミング信号基準にアクセスできることによって、プレゼンテーションシステム１００が、再生プレゼンテーション１２７内でＩＣデータ１２４及びＡ／Ｖデータ１３２のフレームレベルの同期を達成し、こうようなフレームレベルの同期をユーザ対話期間中に維持する能力が高められる。
【００７７】
図１〜図４の参照を続けながら、図６は、プレゼンテーションシステム１００等の対話型マルチメディアプレゼンテーションシステムが、プレゼンテーションコンテンツ１２０／再生プレゼンテーション１２７のＩＣコンポーネント１２４及びビデオコンポーネント１２２等の対話型マルチメディアプレゼンテーションの対話型コンポーネント及びビデオコンポーネントを同期してプレゼンテーションする能力を高めるための１つの方法のフローチャートである。この方法は、ＩＣコンポーネント１２４を再生することに関連付けられている一定の動作を条件付きでトリガする宣言型形式の一定のアプリケーション命令を使用することを伴う。これらの動作は、（たとえば、ユーザ入力に基づいて）対話型マルチメディアプレゼンテーションの再生中に１つ又は２つ以上のメディアオブジェクトの１つ又は２つ以上の特性の状態に基づいてトリガされる。
【００７８】
この方法は、ブロック６００で開始し、ブロック６０２に続く。ブロック６０２において、宣言型言語命令を有するアプリケーションがアクセスされる。このアプリケーションの第１の命令は、１つ又は２つ以上のメディアオブジェクトの１つ又は２つ以上の特性を指定する。対話型マルチメディアプレゼンテーションの再生中、特性（複数可）は、複数の状態を前提とすることができる。第２の命令は、特性（複数可）の状態変化（複数可）に基づいて、プレゼンテーションの対話型コンテンツを再生することに関連付けられている１つ又は２つ以上の動作を指定する。
【００７９】
ブロック６０４において、アプリケーションの構造化表現が、状態変化（複数可）を検出するために定期的に問い合わせされる。関連のある状態変化が検出されたと菱形６０６で判断されると、第２の命令によって指定された動作（複数可）がブロック６０８でトリガされ、ブロック６０４の定期的な問い合わせが続く。関連のある状態変化が菱形６０６で検出されない場合、ブロック６０４の定期的な問い合わせが続く。
【００８０】
ブロック６０２を参照して、１つ又は２つ以上のメディアオブジェクトの１つ又は２つ以上の特性を指定する第１の命令を、プレゼンテーションシステム１００との関連で解説する。コンテンツエレメント３０２、スタイルエレメント３１０、メディアオブジェクトエレメント３１２、又はイベントエレメント３６０及びそれらの属性等のアプリケーション命令３０４（図３に図示）は、再生プレゼンテーション１２７の再生中に前提とすることができる特定のメディアオブジェクト１２５及び関連付けられている特性状態（たとえば、属性の値）を指定する機能を有する。高品位ＤＶＤ映画アプリケーションに現れるマークアップエレメントと共に使用するための一定の属性は、ＤＶＤフォーラムによって公表された１つ又は２つ以上のＸＭＬスキーマにより定義されている。このような属性の例には、スタイル属性、並びに、ｆｏｒｅｇｒｏｕｎｄ、ｆｏｃｕｓｅｄ、ｐｏｉｎｔｅｒ、ａｃｔｉｏｎｅｄ、ｅｎａｂｌｅｄ、及びｖａｌｕｅの属性（本明細書では「ディスプレイ属性」と呼ぶ）が含まれる。
【００８１】
一定のスタイル属性及びディスプレイ属性をユーザイベントに関して定義することができる。スタイル属性又はディスプレイ属性の値に影響を与えることができる１つのタイプのユーザイベントは、ジェスチャイベントである。ジェスチャイベントは、再生プレゼンテーション１２７内におけるメディアオブジェクトのプレゼンテーションに影響を与える任意のユーザ起動イベント（キーボード、リモコン、又はマウス等のデバイスからの入力等）である。一般には特徴的な状態及び属性の値、並びに、詳細にはスタイル属性又はディスプレイ属性の値は、交番状態、すなわち２値状態を前提とすることができる。このような交番状態又は２値状態の例には、真又は偽、オン又はオフ、０又は１等が含まれる。代替的に、特徴的な状態及び属性の値は、文字列値又は数値等の一般的な値を前提とすることもできる。さらなる代替形態として、特徴的な状態及び属性の値は、所定の色の集合内の特定の色を表す値等、所定の集合内の値を前提とすることもできる。
【００８２】
再びブロック６０２を参照して、対話型コンテンツを再生することに関連付けられている１つ又は２つ以上の動作を指定する第２の命令も、プレゼンテーションシステム１００との関連で解説する。タイミングエレメント３０６等のアプリケーション命令３０４（図３に図示）内では、特徴的な状態の変化に基づいてトリガすることができる、ＩＣコンポーネント１２４を再生することに関連付けられている１つ又は２つ以上の動作が指定される。このような動作の例には、コンテンツレンダリング、イベント生成、スクリプト実行、変数値の変化、及び他の動作が含まれる。アプリケーション内又はアプリケーションのページ内では、複数のタイミングエレメントを使用することができ、それらのタイミングエレメントは、同じクロック又は異なるクロックと同期させることができる。たとえば、タイミング信号４０１及び４７１を直接又は間接に参照して、タイミングエレメントを同期させるクロックを確立することができる。たとえば、タイミング信号４０１は、クロックソース４０２、ＩＣフレームレート計算機４０４、Ａ／Ｖフレームレート計算機４０６、アプリケーション時間４９２、又はページ時間４９４を介して間接的に参照することができる。同様に、タイミング信号４７１は、たとえば、クロックソース４７０、経過クリップ再生時間（複数可）４５２、時間基準計算機４５４、メディア時間基準４５５、時間基準計算機４０８、又はタイトル時間基準４０９を介して間接的に参照することができる。加えて、クロック、タイミング信号、時間基準計算機、及び／又は時間基準への論理的な参照を伴う式を使用して、タイミングエレメントの同期を指定することもできる。たとえば、「ＡＮＤ」、「ＯＲ」、「ＮＯＴ」等のブールオペランドを他のオペランド又は他のタイプのオペランドと共に使用して、このような式又は条件を定義することができる。
【００８３】
図６のフローチャートを再び参照して、ブロック６０４、菱形６０６、及びブロック６０８に示すステップをプレゼンテーションシステム１００との関連で解説する。プレゼンテーションコンテンツ１２０／再生プレゼンテーション１２７の再生中、特定のアプリケーション１５５に関連付けられている宣言型言語命令（コンテンツエレメント３０２、タイミングエレメント３０６、スタイルエレメント３１０、メディアオブジェクトエレメント３１２、イベントエレメント３６０、並びに／又はそれぞれの属性（及び、オプションとしてそれらの属性の属性））の状態は、アプリケーションの構造化表現内に保持される。このような構造化表現の一例は、文書オブジェクトモデル（「ＤＯＭ」）である。ＤＯＭの構造及び機能は、Ｗ３Ｃによって公開された１つ又は２つ以上の仕様により説明されている。
【００８４】
図７は、ＤＯＭ７００の図である。ＤＯＭ７００は、文書ノード７０２、エレメントノード７０４、属性ノード７０６、及びテキストノード７０８を含むいくつかのタイプのノードのツリー状の階層である。文書ノード７０２はルートノードである。多くの場合、タイミングデータ構造は、ＤＯＭにおいて、コンテンツデータ構造から分離されている。ＤＯＭ７００の構造は、例示の目的でのみ提示されたものである。どのエレメントも、属性又は属性そのものを含むテキストを有することができることが理解されよう。
【００８５】
属性ノード（スタイル属性又はディスプレイ属性等）が特定の値を有する時を求めるために、ＸＰＡＴＨ問い合わせ又は他のタイプの問い合わせ（たとえば、ＸＱＵＥＲＹ）を使用してＤＯＭ７００（又はその一部）に定期的に問い合わせを行うことができる。一実施態様では、ＸＰＡＴＨ問い合わせは、属性ノードが値を変更する時を求める。上記で解説したように、属性は、２値、数値、文字列値、又は他のタイプの値を有することができる。（ＤＯＭ７００のノード７０４及び７０６によってそれぞれ表される）属性ノードは、対話型マルチメディアプレゼンテーションが再生している時及び／又はユーザイベント等のイベントに応答して特定の値に変わる。一実施態様では、ＸＰＡＴＨ問い合わせは、問い合わせられた値に基づいて真又は偽に変わる。このように、特定のメディアオブジェクトのアクティブな時間間隔を形成することができ、ＸＰＡＴＨは、コンテンツデータ構造内の情報を参照し且つ／又は監視するためにタイミング構造内で好都合に使用することができる。問い合わせは、１つ又は２つ以上の属性ノードに対して同時に行うことができ、属性への論理参照子を伴う式又は条件も、問い合わせを定義するのに使用することができる。たとえば、「ＡＮＤ」、「ＯＲ」、及び「ＮＯＴ」等のブールオペランドを他のオペランド又は他のタイプのオペランドと共に使用して、このような式又は条件を定義することができる。場合によっては、一部の定期的な問い合わせをスキップすることも可能な場合がある。たとえば、取り合わせ結果の解析及び／又は他の情報に基づいて、問い合わせ結果が変化しない期間を識別することができ、それらの期間の間、問い合わせをスキップすることができる。
【００８６】
ＸＰＡＴＨ問い合わせは、タイミング信号４０１又はタイミング信号４７１等のタイミング信号に基づくレートでＤＯＭに対して行うことができる。ＤＯＭに問い合わせを行う時刻を確立するためにタイミング信号４０１及び４７１を直接的又は間接的に参照できることが理解されよう。たとえば、クロックソース４０２、ＩＣフレームレート計算機４０４、Ａ／Ｖフレームレート計算機４０６、アプリケーション時間４９２、又はページ時間４９４を介してタイミング信号４０１を間接的に参照することができる。同様に、タイミング信号４７１も、たとえば、クロックソース４７０、経過クリップ再生時間（複数可）４５２、時間基準計算機４５４、メディア時間基準４５５、時間基準計算機４０８、又はタイトル時間基準４０９を介して間接的に参照することができる。加えて、クロック、タイミング信号、時間基準計算機、及び／又は時間基準への論理参照子を伴う式を使用して、ＤＯＭに対して問い合わせを行う時を定義することもできる。たとえば、「ＡＮＤ」、「ＯＲ」、及び「ＮＯＴ」等のブールオペランドを他のオペランド又は他のタイプのオペランドと共に使用して、このような式又は条件を定義することができる。
【００８７】
特定の動作が、ＤＯＭの問い合わせを介して検出された状態変化によりトリガされると、適切なコンテンツがアクセスされ、それらの動作に関係する命令が実行される。たとえば、外部イベントハンドラが、一般に、イベント関係コンテンツにアクセスして、イベントに関係する命令の実行の準備をする。トリガされた動作に関係する命令の実行の結果生じた作業アイテム（図示せず）は、キュー（複数可）（図示せず）に配置され、ＩＣフレームレート４０５によって提供されるレート等の所定のレートで遂行される。作業アイテムの遂行の結果生じたＩＣデータ１３４（たとえば、ユーザ入力による特定のメディアオブジェクトのレンダリング）は、ミキサ／レンダラ１１０へ送信される。ミキサ／レンダラ１１０は、ＩＣデータ１３４をグラフィックスプレーンにレンダリングして、ユーザ用の再生プレゼンテーション１２７の対話型部分を生成する。
【００８８】
このように、アプリケーションは、メディアオブジェクトの特定の特性の状態を指定する一定の宣言型言語命令、及び、その特性の状態変化に基づいて対話型マルチメディアプレゼンテーションの対話型コンテンツを再生することに関連付けられている動作（メディアオブジェクトのレンダリング、イベント生成、変数の変更、及び他の動作等）を指定する他の宣言型言語命令を提供する。対話型コンテンツを再生することに関連付けられている動作は、アプリケーションの構造化表現に定期的に問い合わせを行って状態変化を検出することにより条件付きでトリガすることができる。ＸＰＡＴＨ機能は、ＤＯＭに問い合わせを行ってこのような状態変化を検出するのによく適している。
【００８９】
図６の方法がプレゼンテーションシステム１００でどのように使用可能になって、再生プレゼンテーション１２７内で特定のメディアオブジェクト１２５  ＩＣコンポーネント１２４／ＩＣデータ１３４をプレゼンテーションするのかの一例を提供する。解説の目的で、再生プレゼンテーション１２７は高品位ＤＶＤ映画であると仮定し、メディアオブジェクトはボタングラフィックであると仮定し、その対話性は、少なくとも映画のいくつかの部分と同時に、ボタングラフィックをメニュー２８０（図２に図示）内のユーザ選択可能アイテムとしてプレゼンテーションするアプリケーション１５５によって提供されるものと仮定する。アプリケーションは、「ｍｙｂｕｔｔｏｎ」と呼ばれるコンテンツエレメントを含み、このｍｙｂｕｔｔｏｎは、「ｆｏｃｕｓｅｄ」と呼ばれる属性を有する。ｆｏｃｕｓｅｄ属性は、ユーザのジェスチャイベントに基づいて、ｆｏｃｕｓｅｄ及び非ｆｏｃｕｓｅｄの状態を仮定することができる。ｆｏｃｕｓｅｄの状態を真にさせるジェスチャイベントの一例は、ユーザが特定のボタンの「ホットスポット」エリアを操作した（たとえば、ユーザがカーソルの先端をホットスポット内に移動させた）時である。ｆｏｃｕｓｅｄの状態を偽にさせるジェスチャイベントの一例は、ユーザがメニュー２８０から異なるアイテムを選択した時である。
【００９０】
コンテンツエレメント「ＭｙＢｕｔｔｏｎ」に関連付けられているメディアオブジェクトのレンダリングを条件付きでトリガするのに使用可能な宣言型言語命令を示す擬似コードを以下に示す。このコンテンツエレメント「ＭｙＢｕｔｔｏｎ」は、特定のジェスチャイベントに基づいて真又は偽のいずれかになることができる「ｆｏｃｕｓｅｄ」と呼ばれる属性を有する。
【００９１】
【表３】
2009500912.tif 000006
「ｐａｒ」タイミングエレメントが、「ｍｙｂｕｔｔｏｎ」エレメントに関連付けられているメディアオブジェクトをレンダリングする動作を説明していることが分かる。この動作は、ｍｙｂｕｔｔｏｎエレメントのｆｏｃｕｓｅｄ属性を表すＤＯＭノードの問い合わせが真に変わる時にトリガされ（すなわち、メディアオブジェクトがレンダリングされる）、この動作は、ｍｙｂｕｔｔｏｎエレメントのｆｏｃｕｓｅｄ属性を表すＤＯＭノードの問い合わせが偽に変わる時に停止される（すなわち、メディアオブジェクトはレンダリングされない）。この例では、レンダリング可能なメディアオブジェクトは、複数の状態を前提とするように構成された特性を有する同じメディアオブジェクトであるが、レンダリング可能なメディアオブジェクト（複数可）は異なってもよい。
【００９２】
図６に示すプロセス（複数可）は、図８に関連して以下で解説するプロセッサ８０２等の１つ又は２つ以上の汎用多目的プロセッサ又は単一目的プロセッサで実施することができる。特に言明されていない限り、本明細書で説明する方法は、特定の順序又はシーケンスに制約されない。加えて、説明される方法及びその方法のエレメントのうちのいくつかは、同時に生じることができるか又は同時に遂行することができる。
【００９３】
図８は、プレゼンテーションシステム１００のさまざまな機能コンポーネントを実施するのに使用できるか、それらの機能コンポーネントがアクセスすることができるか、又は、それらの機能コンポーネントに含めることができる一定の機能コンポーネントを示す汎用コンピューティングユニット８００のブロック図である。コンピューティングユニット８００の１つ又は２つ以上のコンポーネントは、ＩＣマネージャ１０４、プレゼンテーションマネージャ１０６、及びＡＶＣマネージャ１０２を実施するのに使用できるか、それらによってアクセス可能とできるか、又は、それらに含めることができる。たとえば、図８の１つ又は２つ以上のコンポーネントは、さまざまな方法でプレゼンテーションシステム１００の機能を（全体的又は部分的に）実施するように共にパッケージ化することもできるし、別個にパッケージ化することもできる。
【００９４】
プロセッサ８０２は、コンピュータ可読媒体８０４及びコンピュータプログラム８０６に応答する。プロセッサ８０２は、実プロセッサとすることもできるし、仮想プロセッサとすることもでき、コンピュータ実行可能命令を実行することによって電子デバイスの機能を制御する。プロセッサ８０２は、特定のプロセスを遂行するアセンブリレベル、コンパイルレベル、又はマシンレベルで命令を実行することができる。このような命令は、ソースコード又は他の任意の既知のコンピュータプログラム設計ツールを使用して作成することができる。
【００９５】
コンピュータ可読媒体８０４は、プロセッサ８０２によって実行可能な命令等のコンピュータ可読データを記録、記憶、又は伝送できる、現在知られているか又は後に開発される、任意の形態の任意の個数のローカルデバイス又はリモートデバイス、及び、そのようなローカルデバイス又はリモートデバイスの任意の組み合わせを表す。詳細には、コンピュータ可読媒体８０４は、半導体メモリ（たとえば、読み出し専用メモリ（「ＲＯＭ」）、任意のタイプのプログラマブルＲＯＭ（「ＰＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、又はフラッシュメモリ等）、磁気ストレージデバイス（フロッピーディスクドライブ、ハードディスクドライブ、磁気ドラム、磁気テープ、又は光磁気ディスク等）、光ストレージデバイス（任意のタイプのコンパクトディスク、又はデジタル多用途ディスク等）、バブルメモリ、キャッシュメモリ、コアメモリ、ホログラフィックメモリ、メモリスティック、紙テープ、パンチカード、又はそれらの任意の組み合わせとすることもできるし、それらの半導体メモリ等を含むこともできる。また、コンピュータ可読媒体８０４は、伝送媒体及びその伝送媒体に関連付けられているデータも含むことができる。伝送媒体／データの例には、変調された搬送波信号によって搬送されるパケット化データ又は非パケット化データ等、任意の形態の有線伝送又は無線伝送で実施されたデータが含まれるが、これに限定されるものではない。
【００９６】
コンピュータプログラム８０６は、データに対する所定のオペレーションを電子的に制御する任意の信号処理方法又は記憶された命令を表す。一般に、コンピュータプログラム８０６は、コンポーネントベースのソフトウェア開発の既知の慣行に従いソフトウェアコンポーネントとして実施されたコンピュータ実行可能命令であって、コンピュータ可読媒体（コンピュータ可読媒体８０４等）にコード化されたコンピュータ実行可能命令である。コンピュータプログラムは、さまざまな方法で結合することもできるし、分散させることもできる。
【００９７】
プレゼンテーションシステム１００との関連で説明した機能／コンポーネントは、コンピュータプログラムのどの特定の実施形態による実施態様にも限定されるものではない。それどころか、機能は、データを運ぶプロセス又は変換するプロセスであり、一般に、プレゼンテーションシステム１００の機能エレメントの任意の組み合わせに配置されるか又は当該組み合わせによってアクセスされるハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせによって実施することもできるし、それらのハードウェア等で実行することもできる。
【００９８】
図８を続けて参照しながら、図９は、プレゼンテーションシステム１００のすべて又は一部を実施又は使用できる動作環境９００の１つの例示的な構成のブロック図である。動作環境９００は、一般に、多種多様な汎用コンピューティング環境又は専用コンピューティング環境を示す。動作環境９００は、適した動作環境の単なる一例にすぎず、本明細書で説明したシステム（複数可）及び方法の使用の範囲又は機能の範囲について何ら限定を示唆することを意図していない。たとえば、動作環境９００は、パーソナルコンピュータ、ワークステーション、サーバ、ポータブルデバイス、ラップトップ、タブレット、又は他の任意のタイプの電子デバイス等の或るタイプのコンピュータとすることができる。他の任意のタイプの電子デバイスは、現在知られているか若しくは後に開発される、光媒体プレイヤ若しくは別のタイプの媒体プレイヤ、又はそれらの媒体プレイヤの任意の態様等である。また、動作環境９００は、たとえば、分散コンピューティングネットワーク又はウェブサービスとすることもできる。動作環境９００の具体例は、高品位ＤＶＤ映画の再生を容易にするＤＶＤプレイヤ又はＤＶＤプレイヤに関連付けられているオペレーティングシステム等の環境である。
【００９９】
図示するように、動作環境９００は、コンピューティングユニット８００のコンポーネントを含むか又はそれらのコンポーネントにアクセスする。コンピューティングユニット８００のコンポーネントは、プロセッサ８０２、コンピュータ可読媒体８０４、及びコンピュータプログラム８０６を含む。ストレージ９０４は、特に動作環境９００に関連付けられている追加のコンピュータ可読媒体又は異なるコンピュータ可読媒体を含む。このコンピュータ可読媒体は、光ディスク等であり、光ディスクドライブ９０６によってハンドリングされる。１つ又は２つ以上の内部バス９２０は、既知且つ広く利用可能なエレメントであり、コンピューティング環境９００若しくはそのエレメント内において、又は、コンピューティング環境９００若しくはそのエレメントへ、又は、コンピューティング環境９００若しくはそのエレメントから、データ、アドレス、制御信号、及び他の情報を搬送するのに使用することができる。
【０１００】
入力インターフェース（複数可）９０８は、コンピューティング環境９００に入力を提供する。入力は、ユーザインターフェース等の任意のタイプの現在知られているインターフェース又は後に開発されるインターフェースを使用して収集することができる。ユーザインターフェースは、リモコン、ディスプレイ、マウス、ペン、スタイラス、トラックボール、キーボード等のタッチ入力デバイス、マイク、スキャンデバイス、及びデータを入力するのに使用されるすべてのタイプのデバイスとすることができる。
【０１０１】
出力インターフェース（複数可）９１０は、コンピューティング環境９００からの出力を提供する。出力インターフェース（複数可）９１０の例には、ディスプレイ、プリンタ、スピーカ、ドライブ（光ディスクドライブ９０６及び他のディスクドライブ等）等が含まれる。
【０１０２】
外部通信インターフェース（複数可）９１２は、コンピューティング環境９００が、チャネル信号、データ信号、コンピュータ可読媒体等の通信媒体を介して別のエンティティから情報を受信する能力又は当該別のエンティティへ情報を送信する能力を高めるのに利用可能である。外部通信インターフェース（複数可）９１２は、関連付けられているネットワークサポートデバイス及び／若しくはソフトウェア又はインターフェースと協力する、ケーブルモデム、データ端末装置、メディアプレイヤ、データストレージデバイス、携帯情報端末、他の任意のデバイス又はコンポーネント／それらの組み合わせ等のエレメントとすることもできるし、それらのエレメントを含むこともできる。
【０１０３】
図１０は、クライアント・サーバアーキテクチャ１０００の簡単化した機能図である。プレゼンテーションシステム１００又は動作環境９００は、このクライアント・サーバアーキテクチャ１０００と共に使用することができる。プレゼンテーションシステム１００及び／又は動作環境９００の１つ又は２つ以上の態様は、アーキテクチャ１０００のクライアントサイド１００２又はアーキテクチャ１０００のサーバサイド１００４において表すことができる。図示するように、通信フレームワーク１００３（たとえば、有線又は無線の任意のタイプの任意の公衆ネットワーク又はプライベートネットワークとすることができる）は、クライアントサイド１００２とサーバサイド１００４との間の通信を容易にする。
【０１０４】
クライアントサイド１００２では、１つ又は２つ以上のクライアント１００６が、クライアントデータストア１００８に応答する。クライアント１００６は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせで実施することができる。クライアントデータストア１００８は、クライアント１００６にローカルな情報を記憶するのに用いられるコンピュータ可読媒体８０４とすることができる。サーバサイド１００４では、１つ又は２つ以上のサーバ１０１０が、サーバデータストア１０１２に応答する。クライアントデータストア１００８と同様に、サーバデータストア１０１２は、サーバ１０１０にローカルな情報を記憶するのに用いられる１つ又は２つ以上のコンピュータ可読媒体８０４を含むことができる。
【０１０５】
オーディオ／ビデオコンテンツと同期してユーザに対話型コンテンツをプレゼンテーションするのに使用される対話型マルチメディアプレゼンテーションシステムのさまざまな態様を説明してきた。対話型マルチメディアプレゼンテーションは、再生継続期間、可変再生速度、ビデオコンポーネント、及びＩＣコンポーネントを有するものとして一般的に説明されてきた。しかしながら、上記コンポーネントのすべてを使用しなくてもよく、また、使用されるときは、それらのコンポーネントは同時に存在してはならないことが理解されよう。プレゼンテーションシステム１００との関連でコンピュータプログラムであるとして説明された機能／コンポーネントは、コンピュータプログラムのどの特定の実施形態による実施態様にも限定されるものではない。それどころか、機能は、データを伝達又は変換するプロセスであり、一般に、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組み合わせによって実施することもできるし、それらのハードウェア等で実行することもできる。
【０１０６】
本明細書の主題を、構造的特徴及び／又は方法論的動作に特有の文言で説明してきたが、特許請求の範囲で画定される主題は、必ずしも、上述した特定の特徴にも動作にも限定されるものでないことも理解されよう。それどころか、上述した特定の特徴及び動作は、特許請求の範囲を実施する形態例として開示されている。
【０１０７】
さらに、或るエレメントが別のエレメントに応答するものとして示されているとき、それらのエレメントを直接的又は間接的に結合できることが理解されよう。本明細書に示す接続は、エレメント間の結合又は通信インターフェースを達成するように論理的又は物理的に実施することができる。接続は、数ある方法の中でも、ソフトウェアプロセス間のプロセス間通信又はネットワーク接続コンピュータ間のマシン間通信として実施することができる。
【０１０８】
「例示的な（exemplary）」という言葉は、本明細書では、一例、１つのインスタンス、又は１つの実例として働くことを意味するために使用される。「例示的なもの」として本明細書で説明したあらゆる実施態様又は実態態様のあらゆる態様は、必ずしも、他の実施態様又は他の実施態様の態様よりも好ましい又は有利であると解釈されない。
【０１０９】
上述した特定の実施形態以外の実施形態は、添付の特許請求の範囲の趣旨及び範囲から逸脱することなく案出できるものと理解されるので、本明細書の主題の範囲は、添付の特許請求の範囲によって決定されることが意図されている。
【図面の簡単な説明】
【０１１０】
【図１】対話型マルチメディアプレゼンテーションシステムの簡単化した機能ブロック図である。
【図２】図１に示す再生リストから確認可能な１つの例示的なプレゼンテーション時刻表の図的な説明図である。
【図３】図１に示す対話型マルチメディアプレゼンテーションに関連付けられているアプリケーションの簡単化した機能ブロック図である。
【図４】図１のタイミング信号管理ブロックをより詳細に示す簡単化した機能ブロック図である。
【図５】図４に示す一定の時間基準の値に対する例示的な出来事の影響を、連続的なタイミング信号を基準にして示す概略図である。
【図６】図３に示す一定のアプリケーション命令を使用して対話型マルチメディアプレゼンテーションを再生するための方法のフローチャートである。
【図７】図６に示す方法の態様と共に使用可能な文書オブジェクトモデルの図である。
【図８】図１に示す対話型マルチメディアプレゼンテーションシステムの態様と共に使用可能な汎用コンピューティングユニットの簡単化した機能ブロック図である。
【図９】図１に示す対話型マルチメディアプレゼンテーションシステムを実施又は使用できる動作環境の１つの例示的な構成の簡単化した機能ブロック図である。
【図１０】図１に示す対話型マルチメディアプレゼンテーションシステムを実施又は使用できるクライアント・サーバアーキテクチャの簡単化した機能図である。
【図１】
2009500912.tif 000007
【図２】
2009500912.tif 000008
【図３】
2009500912.tif 000009
【図４】
2009500912.tif 000010
【図５】
2009500912.tif 000011
【図６】
2009500912.tif 000012
【図７】
2009500912.tif 000013
【図８】
2009500912.tif 000014
【図９】
2009500912.tif 000015
【図１０】
2009500912.tif 000016
【国際調査報告】
2009500912.tif 000017