(57)【要約】ＢＤ−ＲＯＭには、動画ストリームとグラフィクスストリームとを多重することにより得られたＡＶＣｌｉｐが記録されている。グラフィクスストリームは、動画ストリームに合成して表示されるべき対話画面を構成するもので、３つのＢｏｔｔｏｎＳｔａｔｅグループの配列を含んでいる。この対話画面には複数ボタンが配置され、各ボタンはユーザ操作に応じてノーマル状態からセレクテッド状態、セレクテッド状態からアクティブ状態へと遷移するものである。  グラフィクスストリームにおける３つのＢｏｔｔｏｎＳｔａｔｅグループのうち第１順位のグループ（Ｎ−ＯＤＳｓ）は、ボタンのノーマル状態を表す複数グラフィクスデータからなり、第２順位のグループ（Ｓ−ＯＤＳｓ）は、ボタンのセレクテッド状態を表す複数グラフィクスデータ、第３順位のグループ（Ａ−ＯＤＳｓ）は、ボタンのアクティブ状態を表す複数グラフィクスデータからなる。
2005002219.tif 000002
【特許請求の範囲】
【請求項１】
グラフィクスストリームが記録されている記録媒体であって、
グラフィクスストリームは、グラフィカルなボタン部材を含む対話画面を、動画像に合成して表示させるものであり、
グラフィクスストリームはグラフィクスデータを複数含み、それらグラフィクスデータは、複数の状態集合のどれかにグルーピングされており、
各状態集合は、各ボタン部材が遷移し得る複数状態のうち、１つの状態に対応しているグラフィクスデータの集合であり、各状態集合はストリーム中において、対応する状態の順に、シーケンシャルに並んでいる
ことを特徴とする記録媒体。
【請求項２】
ボタン部材が遷移し得る複数状態には、ノーマル状態、セレクテッド状態、アクティブ状態があり、
前記複数の状態集合とは、ノーマル状態に対応する状態集合、セレクテッド状態に対応する状態集合、アクティブ状態に対応する状態集合であり、グラフィクスストリームにおいてノーマル状態→セレクテッド状態→アクティブ状態の順に並んでいる
ことを特徴とする請求項１記載の記録媒体。
【請求項３】
前記グラフィクスストリームにおいて、前記複数のグラフィクスデータの前にはボタン部材の状態を制御する状態制御情報が配されており、
対話画面の初期表示において、デフォルトでセレクテッド状態となるボタン部材が確定している場合、
当該ボタン部材のセレクテッド状態を構成するグラフィクスデータは、セレクテッド状態に対応する状態集合の先頭に配置されており、
状態制御情報には、当該ボタン部材を指定する指定情報が記述される
ことを特徴とする請求項２記載の記録媒体。
【請求項４】
前記グラフィクスストリームにおいて、前記複数のグラフィクスデータの前にはボタン部材の状態を制御する状態制御情報が配されており、
対話画面の初期表示において、デフォルトでセレクテッド状態となるボタン部材を、再生装置の内部状態に応じて動的に変化させる場合、
当該ボタン部材のセレクテッド状態を構成するグラフィクスデータは、状態集合において順不同に配置されており、
状態制御情報には、デフォルトでセレクテッド状態となるボタン部材が、動的に変化する旨を示す指定情報が記述される
ことを特徴とする請求項２記載の記録媒体。
【請求項５】
ビデオストリーム及びグラフィクスストリームを再生する再生装置であって、
ビデオストリームをデコードして動画像を得るビデオデコーダと、
グラフィカルなボタン部材を含む対話画面を、動画像に合成して表示させるグラフィクスデコーダとを備え、
グラフィクスストリームに含まれる複数グラフィクスデータは、複数の状態集合のどれかにグルーピングされており、
各状態集合は、各ボタン部材が遷移し得る複数状態のうち、１つの状態に対応しているグラフィクスデータの集合であり、各状態集合はストリーム中において、対応する状態の順に、シーケンシャルに並んでおり、
グラフィクスデコーダは、
複数状態集合のうち、先頭の状態集合に属するグラフィクスデータ及び次順位の状態集合に属するグラフィクスデータを用いて対話画面の初期表示を行い、ユーザ操作がなされれば、残りのグラフィクスデータを用いて対話画面の更新を行う
ことを特徴とする再生装置。
【請求項６】
グラフィクスデコーダは、
複数の状態集合に含まれるグラフィクスデータをデコードするグラフィクスプロセッサと、
デコードされた非圧縮グラフィクスデータを複数格納するオブジェクトバッファと、
動画像と合成すべき非圧縮グラフィクスデータが格納されるグラフィクスプレーンと、
制御部とを備え、
対話画面の初期表示とは、
オブジェクトバッファに格納された非圧縮グラフィクスデータのうち、前記先頭及び次順位の状態集合に属するものがグラフィックスプレーンに書き込まれた際、グラフィックスプレーンにおける格納内容を動画像と合成させるよう、制御部が制御することであり、
対話画面の更新とは、
オブジェクトバッファに格納された非圧縮グラフィクスデータのうち、残りのものがグラフィックスプレーンに書き込まれた後に、グラフィックスプレーンにおける格納内容を動画像と合成させるよう、制御部が制御することである
ことを特徴とする請求項５記載の再生装置。
【請求項７】
ボタン部材が遷移し得る複数状態には、ノーマル状態、セレクテッド状態、アクティブ状態があり、
前記グラフィクスストリームは、ノーマル状態に対応する状態集合、セレクテッド状態に対応する状態集合、アクティブ状態に対応する状態集合を含み、これらの状態集合は、グラフィクスストリームにおいてノーマル状態→セレクテッド状態→アクティブ状態の順に並んでおり、
前記グラフィクスストリームにはボタン部材の状態を制御する状態制御情報が配されており、
状態制御情報内にデフォルトでセレクテッド状態に設定すべきボタン部材が、記述されている場合、
グラフィクスデコーダは、
セレクテッド状態に対応する状態集合に属するグラフィクスデータのうち、前記ボタン部材に対応するもの（ａ）と、
ノーマル状態に対応する状態集合に属するグラフィクスデータのうち、前記ボタン部材に対応しないもの（ｂ）とを用いて、初期表示を行う
ことを特徴とする請求項６記載の再生装置。
【請求項８】
前記制御部は、セレクテッド状態に対応する状態集合の先頭に配置されているグラフィクスデータのデコードが完了した時点で、
グラフィックスプレーンをクリアする処理と（ｉ）、
セレクテッド状態に対応する状態集合に属するグラフィクスデータのうち、前記ボタン部材に対応するもの（ａ）、ノーマル状態に対応する状態集合に属するグラフィクスデータのうち、前記ボタン部材に対応しないもの（ｂ）を、オブジェクトバッファから読み出して、グラフィックスプレーンに書き込む処理と（ｉｉ）を行う
ことを特徴とする請求項７記載の再生装置。
【請求項９】
記録媒体の記録方法であって、
アプリケーションデータを作成するステップと、
作成したデータを記録媒体に記録するステップとを有し、
前記アプリケーションデータは、
グラフィクスストリームを含み、
グラフィクスストリームは、グラフィカルなボタン部材を含む対話画面を、動画像に合成して表示させるものであり、
グラフィクスストリームは
グラフィクスデータを複数生成し、それらグラフィクスデータを、複数の状態集合のどれかにグルーピングして、各状態集合を、ストリーム中において、対応する状態の順に、シーケンシャルに並べることにより生成され、
各状態集合は、各ボタン部材が遷移し得る複数状態のうち、１つの状態に対応しているグラフィクスデータの集合である
ことを特徴とする記録方法。
【請求項１０】
ビデオストリーム及びグラフィクスストリームの再生をコンピュータに実行させるプログラムであって、
ビデオストリームをデコードして動画像を得る第１ステップと、
グラフィカルなボタン部材を含む対話画面を、動画像に合成して表示させる第２ステップとをコンピュータに実行させ、
グラフィクスストリームに含まれる複数グラフィクスデータは、複数の状態集合のどれかにグルーピングされており、
各状態集合は、各ボタン部材が遷移し得る複数状態のうち、１つの状態に対応しているグラフィクスデータの集合であり、各状態集合はストリーム中において、対応する状態の順に、シーケンシャルに並んでおり、
第２ステップは、
複数状態集合のうち、先頭の状態集合に属するグラフィクスデータ及び次順位の状態集合に属するグラフィクスデータを用いて対話画面の初期表示を行い、ユーザ操作がなされれば、残りのグラフィクスデータを用いて対話画面の更新を行う
ことを特徴とするプログラム。
【請求項１１】
ビデオストリーム及びグラフィクスストリームについての再生方法であって、
ビデオストリームをデコードして動画像を得る第１ステップと、
グラフィカルなボタン部材を含む対話画面を、動画像に合成して表示させる第２ステップとを有し、
グラフィクスストリームに含まれる複数グラフィクスデータは、複数の状態集合のどれかにグルーピングされており、
各状態集合は、各ボタン部材が遷移し得る複数状態のうち、１つの状態に対応しているグラフィクスデータの集合であり、各状態集合はストリーム中において、対応する状態の順に、シーケンシャルに並んでおり、
第２ステップは、
複数状態集合のうち、先頭の状態集合に属するグラフィクスデータ及び次順位の状態集合に属するグラフィクスデータを用いて対話画面の初期表示を行い、ユーザ操作がなされれば、残りのグラフィクスデータを用いて対話画面の更新を行う
ことを特徴とする再生方法。
【発明の詳細な説明】
【技術分野】  本発明は、ＢＤ−ＲＯＭ等の記録媒体、再生装置に関し、動画像に複数ボタンからなる対話画面を合成させ、このボタンに対するユーザ操作に応じて再生制御を実現するという対話制御の技術に関する。
【背景技術】  上述した対話制御は、再生すべきタイトルやチャプターの選択、クイズの設問に対する回答等、ユーザ操作を再生装置が受け付ける際、なくてはならない機能であり、ＤＶＤ再生装置上で実現されているものがよく知られている。ＤＶＤ再生装置による対話制御は、図形に文字列を貼りつけたボタンを画面に表示し、ユーザ操作に応じて、ボタンの枠の色を変化させるというＯＳＤ（Ｏｎ  Ｓｃｒｅｅｎ  Ｄｉｓｐｌａｙ）技術の応用である。かかる色変化により、対話画面におけるボタンのうちどれがセレクテッド状態になっているかをユーザは直感的に理解することができる。
ＤＶＤにおける対話制御の難点は、アミューズメントの要素が殆どない点である。つまり、操作をしてみて楽しくなるというような工夫はあまり見られない。こうした批判を踏まえ、現在規格化が進められているＢＤ−ＲＯＭ（Ｂｌｕ−ｒａｙ  Ｄｉｓｋ  Ｒｅａｄ−Ｏｎｌｙ  Ｆｏｒｍａｔ）での対話画面は、ボタンのアニメーション表示が模索されている。具体的にいうと、ＢＤ−ＲＯＭで表示される対話画面は、各ボタンが、独自のアニメーションにて表現され、主映像たる映画のワンシーンに合成される。そしてこのアニメーション表示は、ユーザによる操作に応じて内容が変わる。かかるアニメーションが、映画作品に登場するキャラクターであるなら、ユーザは、対話画面に対して操作を行うことにより、キャラクターの表情や動きを変化させることができる。かかるアニメーション表示により、幼年者が楽しく遊べるような対話画面を作成することができる。
しかしながらボタンのアニメーション表示はデコードの負荷が大きいため、対話画面を初期表示させるまでの待ち時間がかなり大きくなるという問題点がある。例えば、映画作品のワンシーンに、図１に示すような対話画面を合成させたいと考えているものとする。この対話画面には、４つのボタンが存在しており、各ボタンが”ノーマル状態””セレクテッド状態”、”アクティブ状態”という３つの状態をもっている。各ボタンの状態を、２〜３秒のアニメーション表示で表現する場合を考える。たとえ映像信号の５フレーム置きに１枚のグラフィクスデータを表示させるとしても、２〜３秒のアニメーションを実現するには、約３０枚のグラフィクスデータを表示せねばならない。更にボタンの状態には、ノーマル状態、セレクテッド状態、アクティブ状態という３つの状態があるので、グラフィクスデータの表示枚数は、９０枚（＝３×３０）というオーダになる。かかるボタンを対話画面上で４つ配置する場合は、３６０枚（＝４×９０）という膨大な数のグラフィクスデータをデコードせねばならない。グラフィクスデータ一枚当たりのデコードは軽くても、数百枚という数のグラフィクスデータをデコードするには、数十秒という時間がかかってしまう。いくら対話画面を楽しくするためとはいえ、１枚の対話画面を表示する度に、数十秒もユーザを待たせるのは行き過ぎであり、ユーザからの厳しい批判を浴びかねない。
【発明の開示】
本発明の目的は、アニメーションを伴った対話画面の表示を、遅滞なく実現することができる記録媒体を提供することである。
上記目的を達成するため、本発明に係る記録媒体は、グラフィクスストリームが記録されており、グラフィクスストリームは、グラフィカルなボタン部材を含む対話画面を、動画像に合成して表示させるものであり、グラフィクスストリームはグラフィクスデータを複数含み、それらグラフィクスデータは、複数の状態集合のどれかにグルーピングされており、各状態集合は、各ボタン部材が遷移し得る複数状態のうち、１つの状態に対応しているグラフィクスデータの集合であり、各状態集合はストリーム中において、対応する状態の順に、シーケンシャルに並んでいることを特徴としている。
ここでアニメーションを実現するためのグラフィクスデータが３６０枚存在しており、ボタン部材が３つの状態をもっている場合、グラフィクスデータは、１２０枚＋１２０枚＋１２０枚というように、３つの状態集合にグルーピングされる。そして個々の状態集合は、早く現れる状態に対応するもの程、前に置かれ、遅く現れる状態に対応するもの程、後に置かれる。このため、再生時にあたって、早く現れる状態に対応する状態集合の再生装置へのロードは早く行われ、遅く現れる状態に対応する状態集合のロードは、後回しにされる。早く現れる状態に対応する状態集合のロードは早い時期になされるので、３６０枚のものグラフィクスデータの読み出し／デコードは未完であっても、全体の約１／３〜２／３のグラフィクスデータの読み出し／デコードが完了していれば、初期表示のための準備は整う。
全体の約１／３〜２／３のグラフィクスデータの読み出し／デコードの完了時点で、初期表示のための処理を開始させることができるので、たとえ読み出し／デコードすべきグラフィクスデータが大量にあっても、初期表示の実行は遅滞することはない。このため、アニメーションを伴った楽しい対話画面の表示を、迅速に実行することができる。
【図面の簡単な説明】  図１は、アニメーションで構成される対話画面を示す図である。
図２（ａ）は、本発明に係る記録媒体の、使用行為についての形態を示す図である。
図２（ｂ）は、対話画面に対する操作をユーザから受け付けるためのリモコン４００におけるキー配置を示す図である。
図３は、ＢＤ−ＲＯＭの構成を示す図である。
図４は、ＡＶＣｌｉｐがどのように構成されているかを模式的に示す図である。
図５は、Ｃｌｉｐ情報の内部構成を示す図である。
図６は、ＰＬ情報の内部構成を示す図である。
図７は、ＰＬ情報による間接参照を模式化した図である。
図８（ａ）は、グラフィクスストリームの構成を示す図である。
図８（ｂ）は、ＩＣＳ、ＯＤＳの内部構成を示す図である。
図９は、様々な種別の機能セグメントにて構成される論理構造を示す図である。
図１０（ａ）は、ＯＤＳによるグラフィクスオブジェクトを定義するためのデータ構造を示す図である。
図１０（ｂ）は、ＰＤＳのデータ構造を示す図である。
図１１は、Ｉｎｔｅｒａｃｔｉｖｅ  Ｃｏｍｐｏｓｉｔｉｏｎ  Ｓｅｇｍｅｎｔのデータ構造を示す図である。
図１２は、あるＤＳｎに含まれるＯＤＳと、ＩＣＳとの関係を示す図である。
図１３は、任意のピクチャデータｐｔ１の表示タイミングにおける画面合成を示す図である。
図１４は、ＩＣＳにおけるボタン情報の設定例を示す図である。
図１５は、ボタンＡ〜ボタンＤの状態遷移を示す図である。
図１６は、ＯＤＳ１１，２１，３１，４１の絵柄の一例を示す図である。
図１７は、ボタンＡ用のＯＤＳ１１〜１９の絵柄の一例を示す図である。
図１８は、ＤＳに含まれるＩＣＳ、ＯＤＳの一例を示す図である。
図１９は、Ｄｉｓｐｌａｙ  Ｓｅｔに属するＯＤＳの順序及びｂｕｔｔｏｎ−ｓｔａｔｅグループを示す図である。
図２０は、図１９のｂｕｔｔｏｎ−ｓｔａｔｅグループが配置された対話画面における状態遷移を示す図である。
図２１は、Ｄｉｓｐｌａｙ  ＳｅｔにおけるＯＤＳの順序を示す図である。
図２２は、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが”＝０”である場合と、”＝ボタンＢ”である場合とでＳ−ＯＤＳｓにおいてＯＤＳの並びがどのように変わるかを示す図である。
図２３（ａ）（ｂ）は、Ｎ−ＯＤＳｓにボタンＡ〜Ｄを構成する複数ＯＤＳが含まれており、Ｓ−ＯＤＳｓにボタンＡ〜Ｄを構成する複数ＯＤＳが含まれている場合、ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）がどのような値になるかを示す図である。
図２４は、ＩＣＳによる同期表示時のタイミングを示す図である。
図２５は、対話画面の初期表示が複数ＯＤＳにて構成され、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが有効である場合のＤＴＳ、ＰＴＳの設定を示す図である。
図２６は、対話画面の初期表示が複数ＯＤＳにて構成され、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが無効である場合のＤＴＳ、ＰＴＳの設定を示す図である。
図２７は、本発明に係る再生装置の内部構成を示す図である。
図２８は、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５の格納内容をグラフィクスプレーン８と対比して示す図である。
図２９は、初期表示時におけるＧｒａｐｈｉｃｓコントローラ１７の処理を示す図である。
図３０は、１ｓｔＵｓｅｒＡｃｔｉｏｎ（ＭｏｖｅＲｉｇｈｔ）による対話画面更新時におけるＧｒａｐｈｉｃｓコントローラ１７の処理を示す図である。
図３１は、１ｓｔＵｓｅｒＡｃｔｉｏｎ（ＭｏｖｅＤｏｗｎ）による対話画面更新時におけるＧｒａｐｈｉｃｓコントローラ１７の処理を示す図である。
図３２は、１ｓｔＵｓｅｒＡｃｔｉｏｎ（Ａｃｔｉｖａｔｅｄ）による対話画面更新時におけるＧｒａｐｈｉｃｓコントローラ１７の処理を示す図である。
図３３は、再生装置によるパイプライン処理を示すタイミングチャートである。
図３４は、デフォルトセレクテッドボタンが動的に変わる場合の、再生装置によるパイプライン処理を示すタイミングチャートである。
図３５は、制御部２０によるＬｉｎｋＰＬ関数の実行手順を示すフローチャートである。
図３６は、Ｓｅｇｍｅｎｔのロード処理の処理手順を示すフローチャートである。
図３７は、多重化の一例を示す図である。
図３８は、ＤＳ１０が再生装置のＣｏｄｅｄ  Ｄａｔａバッファ１３にロードされる様子を示す図である。
図３９は、通常再生が行われる場合を示す図である。
図４０は、図３９のように通常再生が行われた場合のＤＳ１，１０，２０のロードを示す図である。
図４１はＧｒａｐｈｉｃｓコントローラ１７の処理手順のうち、メインルーチンにあたる処理を描いたフローチャートである。
図４２は、タイムスタンプによる同期制御の処理手順を示すフローチャートである。
図４３は、グラフィクスプレーン８の書込処理の処理手順を示すフローチャートである。
図４４は、デフォルトセレクテッドボタンのオートアクティベートの処理手順を示すフローチャートである。
図４５は、アニメーション表示の処理手順を示すフローチャートである。
図４６は、ＵＯ処理の処理手順を示すフローチャートである。
図４７は、カレントボタンの変更処理の処理手順を示すフローチャートである。
図４８は、数値入力処理の処理手順を示すフローチャートである。
図４９は、ＤＴＳ、ＰＤＳにおけるＰＴＳに基づく、再生装置におけるパイプラインを示す図である。
図５０は、再生装置のパイプライン動作時における、ＥＮＤの意味合いを示す図である。
図５１は、第２施形態に係るＢＤ−ＲＯＭの製造工程を示すフローチャートである。
図５２は、第３実施形態に係るＰＬ情報の内部構成を示す図である。
図５３は、ｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄ，ｓｙｎｃ＿ｓｔａｒｔ＿ＰＴＳ＿ｏｆ＿ＰｌａｙＩｔｅｍによるサブＰｌａｙＩｔｅｍの同期を模式的に示す図である。
図５４は、ＨＤ上のプレイリスト情報内のＣｌｉｐ＿Ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅによるファイル指定を示す図である。
【発明を実施するための最良の形態】  （第１実施形態）
以降、本発明に係る記録媒体の実施形態について説明する。先ず始めに、本発明に係る記録媒体の実施行為のうち、使用行為についての形態を説明する。図２（ａ）は、本発明に係る記録媒体の、使用行為についての形態を示す図である。図２において、本発明に係る記録媒体は、ＢＤ−ＲＯＭ１００である。このＢＤ−ＲＯＭ１００は、再生装置２００、テレビ３００、リモコン４００により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。このうちリモコン４００は、対話画面の状態を変化させるための操作をユーザから受け付けるものであり、本発明に係る記録媒体に深い係りをもつ。図２（ｂ）は、対話画面に対する操作をユーザから受け付けるためのリモコン４００におけるキーを示す図である。本図に示すようにリモコン４００は、ＭｏｖｅＵｐキー、ＭｏｖｅＤｏｗｎキー、ＭｏｖｅＲｉｇｈｔキー、ＭｏｖｅＬｅｆｔキーが設けられている。ここで対話画面におけるボタンは、ノーマル状態、セレクテッド状態、アクティブ状態という３つの状態をもち、これらＭｏｖｅＵｐキー、ＭｏｖｅＤｏｗｎキー、ＭｏｖｅＲｉｇｈｔキー、ＭｏｖｅＬｅｆｔキーは、このボタンの状態をノーマル状態→セレクテッド状態→アクティブ状態と変化させる操作をユーザから受け付ける。ノーマル状態とは、単に表示されているに過ぎない状態である。これに対しセレクテッド状態とは、ユーザ操作によりフォーカスが当てられているが、確定に至っていない状態をいう。アクティブ状態とは、確定に至った状態をいう。ＭｏｖｅＵｐキーは、対話画面においてあるボタンがセレクテッド状態である場合、このボタンより上にあるボタンをセレクテッド状態に設定するためのキーである。ＭｏｖｅＤｏｗｎキーは、このボタンより下にあるボタンをセレクテッド状態に設定するためのキー、ＭｏｖｅＲｉｇｈｔキーは、このボタンより右にあるボタンをセレクテッド状態に設定するためのキー、ＭｏｖｅＬｅｆｔキーは、このボタンより左にあるボタンをセレクテッド状態に設定するためのキーである。
Ａｃｔｉｖａｔｅｄキーは、セレクテッド状態にあるボタンをアクティブ状態（アクティベート）するためのキーである。「０」〜「９」の数値キーは、該当する数値が割り当てられたボタンをセレクテッド状態にするキーである。「＋１０」キーとは、これまで入力された数値に１０をプラスするという操作を受け付けるキーである。尚、「０」キー、「＋１０」キーは、何れも２桁以上の数値の入力を受け付けるものなので、「０」キー、「＋１０」キーは、どちらかが具備されていればよい。
以上が本発明に係る記録媒体の使用形態についての説明である。
続いて本発明に係る記録媒体の実施行為のうち、生産行為についての形態について説明する。本発明に係る記録媒体は、ＢＤ−ＲＯＭの応用層に対する改良により実施することができる。図３は、ＢＤ−ＲＯＭの構成を示す図である。
本図の第４段目にＢＤ−ＲＯＭを示し、第３段目にＢＤ−ＲＯＭ上のトラックを示す。本図のトラックは、ＢＤ−ＲＯＭの内周から外周にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてＢＤ−ＲＯＭの応用層フォーマット（アプリケーションフォーマット）を表現すると、図中の第１段目のようになる。本図に示すようにＢＤ−ＲＯＭには、ＲＯＯＴディレクトリの下にＢＤＭＶディレクトリがあり、ＢＤＭＶディレクトリの配下には、ＸＸＸ．Ｍ２ＴＳ、ＸＸＸ．ＣＬＰＩ，ＹＹＹ．ＭＰＬＳといったファイルが存在する。本図に示すようなアプリケーションフォーマットを作成することにより、本発明に係る記録媒体は生産される。尚、ＸＸＸ．Ｍ２ＴＳ、ＸＸＸ．ＣＬＰＩ，ＹＹＹ．ＭＰＬＳといったファイルが、それぞれ複数存在する場合は、ＢＤＭＶディレクトリの配下に、ＳＴＲＥＡＭディレクトリ、ＣＬＩＰＩＮＦディレクトリ、ＳＴＲＥＡＭディレクトリという３つのディレクトリを設け、ＳＴＲＥＡＭディレクトリにＸＸＸ．Ｍ２ＴＳと同じ種別のファイルを、ＣＬＩＰＩＮＦディレクトリにＸＸＸ．ＣＬＰＩと同じ種別のファイルを、ＰＬＡＹＬＩＳＴディレクトリにＹＹＹ．ＭＰＬＳと同じ種別のファイルを格納することが望ましい。
このアプリケーションフォーマットにおける各ファイルについて説明する。最初に説明するのは、ＡＶＣｌｉｐ（ＸＸＸ．Ｍ２ＴＳ）である。
ＡＶＣｌｉｐ（ＸＸＸ．Ｍ２ＴＳ）は、ＭＰＥＧ−ＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）形式のデジタルストリームであり、ビデオストリーム、１つ以上のオーディオストリーム、プレゼンテーショングラフィクスストリーム、インタラクティブグラフィクスストリームを多重化することで得られる。ビデオストリームは映画の動画部分を、オーディオストリームは映画の音声部分を、プレゼンテーショングラフィクスストリームは、映画の字幕を、インタラクティブグラフィクスストリームは、メニューを対象とした動的な再生制御の手順をそれぞれ示している。図４は、ＡＶＣｌｉｐがどのように構成されているかを模式的に示す図である。
ＡＶＣｌｉｐは（中段）、複数のビデオフレーム（ピクチャｐｊ１，２，３）からなるビデオストリーム、複数のオーディオフレームからなるオーディオストリームを（上１段目）、ＰＥＳパケット列に変換し（上２段目）、更にＴＳパケットに変換し（上３段目）、同じくプレゼンテーショングラフィクスストリーム、インタラクティブグラフィクスストリーム（下１段目）を、ＰＥＳパケット列に変換し（下２段目）、更にＴＳパケットに変換して（下３段目）、これらを多重化することで構成される。
かかる過程を経て生成されたＡＶＣｌｉｐは、通常のコンピュータファイル同様、複数のエクステントに分割され、ＢＤ−ＲＯＭ上の領域に記録される。ＡＶＣｌｉｐは、１つ以上のＡＣＣＥＳＳ  ＵＮＩＴとからなり、このＡＣＣＥＳＳ  ＵＮＩＴの単位で頭出し可能である。ＡＣＣＥＳＳ  ＵＮＩＴとは、Ｉｎｔｒａ（Ｉ）ピクチャから始まる１つのデコード単位である。
Ｃｌｉｐ情報（ＸＸＸ．ＣＬＰＩ）は、個々のＡＶＣｌｉｐについての管理情報である。図５は、Ｃｌｉｐ情報の内部構成を示す図である。ＡＶＣｌｉｐはビデオストリーム、オーディオストリームを多重化することで得られ、ＡＶＣｌｉｐはＡＣＣＥＳＳ  ＵＮＩＴと呼ばれる単位での頭出しが可能なので、各ビデオストリーム、オーディオストリームはどのような属性をもっているか、頭出し位置がＡＶＣｌｉｐ内の何処に存在するかが、Ｃｌｉｐ情報の管理項目になる。図中の引き出し線はＣｌｉｐ情報の構成をクローズアップしている。引き出し線ｈｎ１に示すように、Ｃｌｉｐ情報（ＸＸＸ．ＣＬＰＩ）は、ビデオストリーム、オーディオストリームについての「属性情報」と、ＡＣＣＥＳＳ  ＵＮＩＴを頭出しするためのリファレンステーブルである「ＥＰ＿ｍａｐ」とからなる。
属性情報（Ａｔｔｒｉｂｕｔｅ）は、破線の引き出し線ｈｎ２に示すようにビデオストリームについての属性情報（Ｖｉｄｅｏ属性情報）、属性情報数（Ｎｕｍｂｅｒ）、ＡＶＣｌｉｐに多重化される複数オーディオストリームのそれぞれについての属性情報（Ａｕｄｉｏ属性情報＃１〜＃ｍ）からなる。ビデオ属性情報は、破線の引き出し線ｈｎ３に示すようにそのビデオストリームがどのような圧縮方式で圧縮されたか（Ｃｏｄｉｎｇ）、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか（Ｒｅｓｏｌｕｔｉｏｎ）、アスペクト比はどれだけであるか（Ａｓｐｅｃｔ）、フレームレートはどれだけであるか（Ｆｒａｍｅｒａｔｅ）を示す。
一方、オーディオストリームについての属性情報（Ａｕｄｉｏ属性情報＃１〜＃ｍ）は、破線の引き出し線ｈｎ４に示すようにそのオーディオストリームがどのような圧縮方式で圧縮されたか（Ｃｏｄｉｎｇ）、そのオーディオストリームのチャネル番号が何であるか（Ｃｈ．）、何という言語に対応しているか（Ｌａｎｇ）、サンプリング周波数がどれだけであるかを示す。
ＥＰ＿ｍａｐは、複数の頭出し位置のアドレスを、時刻情報を用いて間接参照するためのリファレンステーブルであり、破線の引き出し線ｈｎ５に示すように複数のエントリー情報（ＡＣＣＥＳＳ  ＵＮＩＴ＃１エントリー、ＡＣＣＥＳＳ  ＵＮＩＴ＃２エントリー、ＡＣＣＥＳＳ  ＵＮＩＴ＃３エントリー・・・・・）と、エントリー数（Ｎｕｍｂｅｒ）とからなる。各エントリーは、引き出し線ｈｎ６に示すように、対応するＡＣＣＥＳＳ  ＵＮＩＴの再生開始時刻を、ＡＣＣＥＳＳ  ＵＮＩＴのアドレスと対応づけて示す（尚、ＡＣＣＥＳＳ  ＵＮＩＴにおける先頭Ｉピクチャのサイズ（Ｉ−ｓｉｚｅ）を記載してもよい。）。ＡＣＣＥＳＳ  ＵＮＩＴの再生開始時刻は、ＡＣＣＥＳＳ  ＵＮＩＴ先頭に位置するピクチャデータのタイムスタンプ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ  Ｓｔａｍｐ）で表現される。またＡＣＣＥＳＳ  ＵＮＩＴにおけるアドレスは、ＴＳパケットの連番（ＳＰＮ（Ｓｏｕｒｃｅ  Ｐａｃｋｅｔ  Ｎｕｍｂｅｒ））で表現される。可変長符号圧縮方式が採用されるため、ＧＯＰを含む各ＡＣＣＥＳＳ  ＵＮＩＴのサイズや再生時間がバラバラであっても、このＡＣＣＥＳＳ  ＵＮＩＴについてのエントリーを参照することにより、任意の再生時刻から、その再生時刻に対応するＡＣＣＥＳＳ  ＵＮＩＴ内のピクチャデータへと頭出しを行うことが可能になる。尚、ＸＸＸ．ＣＬＰＩのファイル名ＸＸＸは、Ｃｌｉｐ情報が対応しているＡＶＣｌｉｐと同じ名称が使用される。つまり本図におけるＡＶＣｌｉｐのファイル名はＸＸＸであるから、ＡＶＣｌｉｐ（ＸＸＸ．Ｍ２ＴＳ）に対応していることを意味する。以上がＣｌｉｐ情報についての説明である。続いてプレイリスト情報について説明する。
ＹＹＹ．ＭＰＬＳ（プレイリスト情報）は、再生経路情報であるプレイリストを構成するテーブルであり、複数のＰｌａｙＩｔｅｍ情報（ＰｌａｙＩｔｅｍ情報＃１，＃２，＃３・・・＃ｎ）と、これらＰｌａｙＩｔｅｍ情報数（Ｎｕｍｂｅｒ）とからなる。図６は、ＰＬ情報の内部構成を示す図である。ＰｌａｙＩｔｅｍ情報は、プレイリストを構成する１つ以上の論理的な再生区間を定義する。ＰｌａｙＩｔｅｍ情報の構成は、引き出し線ｈｓ１によりクローズアップされている。この引き出し線に示すようにＰｌａｙＩｔｅｍ情報は、再生区間のＩｎ点及びＯｕｔ点が属するＡＶＣｌｉｐの再生区間情報のファイル名を示す『Ｃｌｉｐ＿Ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅ』と、当該ＡＶＣｌｉｐがどのような符号化方式で符号化されているかを示す『Ｃｌｉｐ＿ｃｏｄｅｃ＿ｉｄｅｎｔｉｆｉｅｒ』と、再生区間の始点を示す時間情報『ＩＮ＿ｔｉｍｅ』と、再生区間の終点を示す時間情報『ＯＵＴ＿ｔｉｍｅ』とから構成される。
ＰｌａｙＩｔｅｍ情報の特徴は、その表記法にある。つまりＥＰ＿ｍａｐをリファレンステーブルとして用いた時間による間接参照の形式で、再生区間が定義されている。図７は、時間による間接参照を模式化した図である。本図においてＡＶＣｌｉｐは、複数のＡＣＣＥＳＳ  ＵＮＩＴから構成されている。Ｃｌｉｐ情報内のＥＰ＿ｍａｐは、これら複数ＡＣＣＥＳＳ  ＵＮＩＴのアドレスを、矢印ａｙ１，２，３，４に示すように指定している。図中の矢印ｊｙ１，２，３，４は、ＰｌａｙＩｔｅｍ情報によるＡＣＣＥＳＳ  ＵＮＩＴの参照を模式化して示している。つまり、ＰｌａｙＩｔｅｍ情報による参照（矢印ｊｙ１，２，３，４）は、ＥＰ＿ｍａｐを介することにより、ＡＶＣｌｉｐ内に含まれる複数ＡＣＣＥＳＳ  ＵＮＩＴのアドレスを指定するという時間による間接参照であることがわかる。
ＰｌａｙＩｔｅｍ情報−Ｃｌｉｐ情報−ＡＶＣｌｉｐの組みからなるＢＤ−ＲＯＭ上の再生区間を『プレイアイテム』という。ＰＬ情報−Ｃｌｉｐ情報−ＡＶＣｌｉｐの組みからなるＢＤ−ＲＯＭ上の論理的な再生単位を『プレイリスト（ＰＬと略す）』という。ＢＤ−ＲＯＭに記録された映画作品は、この論理的な再生単位（ＰＬ）にて構成される。論理的な再生単位にて、ＢＤ−ＲＯＭにおける映画作品は構成されるので、本編たる映画作品とは別に、あるキャラクタが登場するようなシーンのみを指定するようなＰＬを定義すれば、そのキャラクタが登場するシーンのみからなる映画作品を簡単に制作することができる。
ＢＤ−ＲＯＭに記録される映画作品は、上述した論理構造をもっているので、ある映画作品のシーンを構成するＡＶＣｌｉｐを他の映画作品で引用するという”使い回し”を効率良く行うことができる。
続いてインタラクティブグラフィクスストリームについて説明する。図８（ａ）は、インタラクティブグラフィクスストリームの構成を示す図である。第１段目は、ＡＶＣｌｉｐを構成するＴＳパケット列を示す。第２段目は、グラフィクスストリームを構成するＰＥＳパケット列を示す。第２段目におけるＰＥＳパケット列は、第１段目におけるＴＳパケットのうち、所定のＰＩＤをもつＴＳパケットからペイロードを取り出して、連結することにより構成される。尚、プレゼンテーショングラフィクスストリームについては、本願の主眼ではないので説明は行わない。
第３段目は、グラフィクスストリームの構成を示す。グラフィクスストリームは、ＩＣＳ（Ｉｎｔｅｒａｃｔｉｖｅ  Ｃｏｍｐｏｓｉｔｉｏｎ  Ｓｅｇｍｅｎｔ）、ＰＤＳ（Ｐａｌｅｔｔｅ  Ｄｉｆｉｎｉｔｉｏｎ  Ｓｅｇｍｅｎｔ）、ＯＤＳ（Ｏｂｊｅｃｔ＿Ｄｅｆｉｎｉｔｉｏｎ＿Ｓｅｇｍｅｎｔ）、ＥＮＤ（ＥＮＤ  ｏｆ  Ｄｉｓｐｌａｙ  Ｓｅｔ  Ｓｅｇｍｅｎｔ）と呼ばれる機能セグメントからなる。これらの機能セグメントのうち、ＩＣＳは、画面構成セグメントと呼ばれ、ＰＤＳ、ＯＤＳ、ＥＮＤは定義セグメントと呼ばれる。ＰＥＳパケットと機能セグメントとの対応関係は、１対１の関係、１対多の関係である。つまり機能セグメントは、１つのＰＥＳパケットに変換されてＢＤ−ＲＯＭに記録されるか、又は、フラグメント化され、複数ＰＥＳパケットに変換されてＢＤ−ＲＯＭに記録される。
図８（ｂ）は、機能セグメントを変換することで得られるＰＥＳパケットを示す図である。図８（ｂ）に示すようにＰＥＳパケットは、パケットヘッダと、ペイロードとからなり、このペイロードが機能セグメント実体にあたる。またパケットヘッダには、この機能セグメントに対応するＤＴＳ、ＰＴＳが存在する。尚以降の説明では、機能セグメントが格納されるＰＥＳパケットのヘッダ内に存在するＤＴＳ及びＰＴＳを、機能セグメントのＤＴＳ及びＰＴＳとして扱う。
これら様々な種別の機能セグメントは、図９のような論理構造を構築する。図９は、様々な種別の機能セグメントにて構成される論理構造を示す図である。本図は第３段目に機能セグメントを、第２段目にＤｉｓｐｌａｙ  Ｓｅｔを、第１段目にＥｐｏｃｈをそれぞれ示す。
第２段目のＤｉｓｐｌａｙ  Ｓｅｔ（ＤＳと略す）とは、グラフィクスストリームを構成する複数機能セグメントのうち、メニュー一つ分のグラフィクスを構成するものの集合をいう。図中の破線は、第３段目の機能セグメントが、どのＤＳに帰属しているかという帰属関係を示す。ＩＣＳ−ＰＤＳ−ＯＤＳ−ＥＮＤという一連の機能セグメントが、１つのＤＳを構成していることがわかる。再生装置は、このＤＳを構成する複数機能セグメントをＢＤ−ＲＯＭから読み出せば、メニュー一つ分のグラフィクスを構成することができる。
第１段目のＥｐｏｃｈとは、ＡＶＣｌｉｐの再生時間軸上においてメモリ管理の連続性をもっている一つの期間、及び、この期間に割り当てられたデータ群をいう。ここで想定しているメモリとは、メニュー一つ分のグラフィクスを格納しておくためのグラフィクスプレーン、伸長された状態のクラフィクスデータを格納しておくためのオブジェクトバッファである。これらについてのメモリ管理に、連続性があるというのは、このＥｐｏｃｈにあたる期間を通じてこれらグラフィクスプレーン及びオブジェクトバッファのフラッシュは発生せず、グラフィックプレーン内のある決められた矩形領域内でのみ、グラフィクスの消去及び再描画が行われることをいう（※ここでフラッシュとは、プレーン及びバッファの格納内容を全部クリアしてしまうことである。）。この矩形領域の縦横の大きさ及び位置は、Ｅｐｏｃｈにあたる期間において、終始固定されている。グラフィックプレーンにおいて、この固定化された領域内で、グラフィクスの消去及び再描画を行っている限り、シームレス再生が保障される。つまりＥｐｏｃｈは、シームレス再生の保障が可能な再生時間軸上の一単位ということができる。グラフィックプレーンにおいて、グラフィクスの消去・再描画を行うべき領域を変更したい場合は、再生時間軸上においてその変更時点を定義し、その変更時点以降を、新たなＥｐｏｃｈにせねばならない。この場合、２つのＥｐｏｃｈの境界では、シームレス再生は保証されない。
尚、ここでのシームレス再生とは、グラフィクスの消去及び再描画が、所定のビデオフレーム数で完遂することをいう。インタラクティブグラフィクスストリームの場合、このビデオフレーム数は、４，５フレームとなる。このビデオフレームをどれだけにするかは、グラフィックプレーン全体に対する固定領域の大きさの比率と、オブジェクトバッファーグラフィックプレーン間の転送レートとによって定まる。
図中の破線ｈｋ１，２は、第２段目の機能セグメントが、どのＥｐｏｃｈに帰属しているかという帰属関係を示す。Ｅｐｏｃｈ  Ｓｔａｒｔ，Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔ，Ｎｏｒｍａｌ  Ｃａｓｅという一連のＤＳは、第１段目のＥｐｏｃｈを構成していることがわかる。『Ｅｐｏｃｈ  Ｓｔａｒｔ』、『Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔ』、『Ｎｏｒｍａｌ  Ｃａｓｅ』は、ＤＳの類型である。本図におけるＡｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔ、Ｎｏｒｍａｌ  Ｃａｓｅの順序は、一例にすぎず、どちらが先であってもよい。
『Ｅｐｏｃｈ  Ｓｔａｒｔ』は、”新表示”という表示効果をもたらすＤＳであり、新たなＥｐｏｃｈの開始を示す。そのためＥｐｏｃｈ  Ｓｔａｒｔは、次の画面合成に必要な全ての機能セグメントを含んでいる。Ｅｐｏｃｈ  Ｓｔａｒｔは、映画作品におけるチャプター等、ＡＶＣｌｉｐのうち、頭出しがなされることが判明している位置に配置される。
『Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔ』は、”表示リフレッシュ”という表示効果をもたらすＤｉｓｐｌａｙ  Ｓｅｔであり、先行するＥｐｏｃｈ  Ｓｔａｒｔと関連性をもつ。Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔの類型には、『Ｄｕｐｌｉｃａｔｅ』と、『Ｉｎｈｅｒｉｔ』とがある。Ｄｕｐｌｉｃａｔｅとは、先行するＥｐｏｃｈ  Ｓｔａｒｔと全く同じＤｉｓｐｌａｙ  Ｓｅｔをいい、Ｉｎｈｅｒｉｔとは、先行するＥｐｏｃｈ  Ｓｔａｒｔの機能セグメントを継承しているが、ボタンコマンドのみが違うＤｉｓｐｌａｙ  Ｓｅｔをいう。Ａｃｑｕｉｓｉｔｉｏｎ  ＰｏｉｎｔたるＤＳは、Ｅｐｏｃｈの開始時点ではないが、次の画面合成に必要な全ての機能セグメントを含んでいるので、Ａｃｑｕｉｓｉｔｉｏｎ  ＰｏｉｎｔたるＤＳから頭出しを行えば、グラフィックス表示を確実に実現することができる。つまりＡｃｑｕｉｓｉｔｉｏｎ  ＰｏｉｎｔたるＤＳは、Ｅｐｏｃｈの途中からの画面構成を可能するという役割をもつ。
Ａｃｑｕｉｓｉｔｉｏｎ  ＰｏｉｎｔたるＤｉｓｐｌａｙ  Ｓｅｔは、頭出し先になり得る位置に組み込まれる。そのような位置には、タイムサーチにより指定され得る位置がある。タイムサーチとは、何分何秒という時間入力をユーザから受け付けて、その時間入力に相当する再生時点から頭出しを行う操作である。かかる時間入力は、１０分単位、１０秒単位というように、大まかな単位でなされるので、１０分間隔の再生位置、１０秒間隔の再生位置がタイムサーチにより指定され得る位置になる。このようにタイムサーチにより指定され得る位置にＡｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔを設けておくことにより、タイムサーチ時のグラフィクスストリーム再生を好適に行うことができる。
『Ｎｏｒｍａｌ  Ｃａｓｅ』は、”表示アップデート”という表示効果をもたらすＤＳであり、前の画面合成からの差分のみを含む。例えば、あるＤＳｖのボタンは、先行するＤＳｕと同じ絵柄であるが、状態制御が、この先行するＤＳｕとは異なる場合、ＩＣＳのみのＤＳｖ、又は、ＩＣＳとＰＤＳのみのＤＳｖを設けてこのＤＳｖをＮｏｒｍａｌ  ＣａｓｅのＤＳにする。こうすれば、重複するＯＤＳを設ける必要はなくなるので、ＢＤ−ＲＯＭにおける容量削減に寄与することができる。一方、Ｎｏｒｍａｌ  ＣａｓｅのＤＳは、差分にすぎないので、Ｎｏｒｍａｌ  Ｃａｓｅ単独では画面構成は行えない。
これらのＤＳにより定義される対話画面は、画面上にＧＵＩ部品を配置することにより作成される対話画面である。そしてＤＳにおける対話性とは、ＧＵＩ部品の状態をユーザ操作に応じて変化させることをいう。本実施形態では、ユーザ操作の対象となるＧＵＩ部品をボタンという。ボタンにおける状態には、ノーマル状態、セレクテッド状態、アクティブ状態といったものがある。ノーマル状態、セレクテッド状態、アクティブ状態といった各状態は、複数の非圧縮状態のグラフィクスから構成される。ボタンの各状態を表現する個々の非圧縮グラフィクスを”グラフィクスオブジェクト”という。あるボタンの１つの状態を、複数の非圧縮グラフィクスで表現しているのは、各ボタンの１つの状態をアニメーション表示することを念頭に置いているからである。
続いてＤｅｆｉｎｉｔｉｏｎ  Ｓｅｇｍｅｎｔ（ＯＤＳ、ＰＤＳ）について説明する。
『Ｏｂｊｅｃｔ＿Ｄｅｆｉｎｉｔｉｏｎ＿Ｓｅｇｍｅｎｔ』は、グラフィクスオブジェクトを定義する情報である。このグラフィクスオブジェクトについて以下説明する。ＢＤ−ＲＯＭに記録されているＡＶＣｌｉｐは、ハイビジョン並みの高画質をセールスポイントにしているため、グラフィクスオブジェクトの解像度も、１９２０×１０８０画素という高精細な大きさに設定されている。画素の色にあたっては、一画素当たりのインデックス値（赤色差成分（Ｃｒ値），青色差成分（Ｃｂ値），輝度成分Ｙ値，透明度（Ｔ値））のビット長が８ビットになっており、これによりフルカラーの１６，７７７，２１６色から任意の２５６色を選んで画素の色として設定することができる。
ＯＤＳによるグラフィクスオブジェクトの定義は、図１０（ａ）に示すようにデータ構造をもってなされる。ＯＤＳは、自身がＯＤＳであることを示す『Ｓｅｇｍｅｎｔ＿Ｔｙｐｅ』と、ＯＤＳのデータ長を示す『ｓｅｇｍｅｎｔ＿ｌｅｎｇｔｈ』と、ＥｐｏｃｈにおいてこのＯＤＳに対応するグラフィクスオブジェクトを一意に識別する『ｏｂｊｅｃｔ＿ＩＤ』と、ＥｐｏｃｈにおけるＯＤＳのバージョンを示す『ｏｂｊｅｃｔ＿ｖｅｒｓｉｏｎ＿ｎｕｍｂｅｒ』と、『ｌａｓｔ＿ｉｎ＿ｓｅｑｕｅｎｃｅ＿ｆｌａｇ』と、グラフィクスオブジェクトの一部又は全部である連続バイト長データ『ｏｂｊｅｃｔ＿ｄａｔａ＿ｆｒａｇｍｅｎｔ』とからなる。
『ｏｂｊｅｃｔ＿ＩＤ』は、ＥｐｏｃｈにおいてこのＯＤＳに対応するグラフィクスオブジェクトを一意に識別するものだが、複数ＯＤＳにより定義される複数グラフィックスオブジェクトがアニメーションを構成する場合、これらのＯＤＳに付加された一連の『ｏｂｊｅｃｔ＿ＩＤ』は、連番になる。
『ｌａｓｔ＿ｉｎ＿ｓｅｑｕｅｎｃｅ＿ｆｌａｇ』、『ｏｂｊｅｃｔ＿ｄａｔａ＿ｆｒａｇｍｅｎｔ』について説明する。ＰＥＳパケットのペイロードの制限から、ボタンを構成する非圧縮グラフィクスが１つのＯＤＳでは格納できない場合がある。そのような場合、ボタンコマンドを分割することにより得られた１部分（フラグメント）がｏｂｊｅｃｔ＿ｄａｔａ＿ｆｒａｇｍｅｎｔに設定される。１つのグラフィクスオブジェクトを複数ＯＤＳで格納する場合、最後のフラグメントを除く全てのフラグメントは同じサイズになる。つまり最後のフラグメントは、それ以前のフラグメントサイズ以下となる。これらフラグメントを格納したＯＤＳは、ＤＳにおいて同じ順序で出現する。グラフィクスオブジェクトの最後は、ｌａｓｔ＿ｓｅｑｕｅｎｃｅ＿ｆｌａｇをもつＯＤＳにより指示される。上述したＯＤＳのデータ構造は、前のＰＥＳパケットからフラグメントを詰めてゆく格納法を前提にしているが、各ＰＥＳパケットに空きが生じるように、詰めてゆくという格納法であっても良い。以上がＯＤＳの説明である。
『Ｐａｌｅｔｔｅ  Ｄｉｆｉｎｉｔｉｏｎ  Ｓｅｇｍｅｎｔ』は、色変換用のパレットを定義する情報である。ＰＤＳのデータ構造を図１０（ｂ）に示す。図１０（ｂ）に示すようにＰＤＳは、自身がＰＤＳであることを示す『ｓｅｇｍｅｎｔ＿ｔｙｐｅ』、ＰＤＳのデータ長を示す『ｓｅｇｍｅｎｔ＿ｌｅｎｇｔｈ』、このＰＤＳに含まれるパレットを一意に識別する『Ｐａｌｌｅｔ＿ｉｄ』、ＥｐｏｃｈにおけるＥｐｏｃｈのＰＤＳのバージョンを示す『ｖｅｒｓｉｏｎ＿ｎｕｍｂｅｒ』、各エントリーについての情報『Ｐａｌｌｅｔ＿ｅｎｔｒｙ』からなる。『Ｐａｌｌｅｔ＿ｅｎｔｒｙ』は、各エントリーにおける赤色差成分（Ｃｒ値），青色差成分（Ｃｂ値），輝度成分Ｙ値，透明度（Ｔ値）を示す。
続いてＥＮＤ  ｏｆ  Ｄｉｓｐｌａｙ  Ｓｅｔ  Ｓｅｇｍｅｎｔについて説明する。
『ＥＮＤ  ｏｆ  Ｄｉｓｐｌａｙ  Ｓｅｔ  Ｓｅｇｍｅｎｔ』は、Ｄｉｓｐｌａｙ  Ｓｅｔの伝送の終わりを示す指標であり、Ｄｉｓｐｌａｙ  ＳｅｔにおけるＩＣＳ、ＰＤＳ、ＯＤＳのうち、最後のＯＤＳの直後に配置される。このＥＮＤ  ｏｆ  Ｄｉｓｐｌａｙ  ＳｅｔＳｅｇｍｅｎｔの内部構成は、当該機能セグメントがＥＮＤ  ｏｆ  Ｄｉｓｐｌａｙ  ＳｅｔＳｅｇｍｅｎｔであることを示すｓｅｇｍｅｎｔ＿ｔｙｐｅと、当該機能セグメントのデータ長を示すｓｅｇｍｅｎｔ＿ｌｅｎｇｔｈとからなり、これといって説明が必要な構成要素はない。故に図示は省略する。
続いてＩＣＳについて説明する。Ｉｎｔｅｒａｃｔｉｖｅ  Ｃｏｍｐｏｓｉｔｉｏｎ  Ｓｅｇｍｅｎｔは、対話的な画面を構成する機能セグメントである。Ｉｎｔｅｒａｃｔｉｖｅ  Ｃｏｍｐｏｓｉｔｉｏｎ  Ｓｅｇｍｅｎｔは、図１１に示すデータ構造で構成される。本図に示すようにＩＣＳは、『ｓｅｇｍｅｎｔ＿ｔｙｐｅ』と、『ｓｅｇｍｅｎｔ＿ｌｅｎｇｔｈ』と、『ｃｏｍｐｏｓｉｔｉｏｎ＿ｎｕｍｂｅｒ』と、『ｃｏｍｐｏｓｉｔｉｏｎ＿ｓｔａｔｅ』と、『ｃｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇ』と、『Ｃｏｍｐｏｓｉｔｉｏｎ＿ｔｉｍｅｏｕｔ＿ＰＴＳ』と、『Ｓｅｌｅｃｔｉｏｎ＿ｔｉｍｅｏｕｔ＿ＰＴＳ』と、『ＵＯ＿Ｍａｓｋ＿Ｔａｂｌｅ』と、『ａｎｉｍａｔｉｏｎ＿ｆｒａｍｅ＿ｒａｔｅ＿ｃｏｄｅ』と、『ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』と、『ｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』と、『ボタン情報群（ｂｕｔｔｏｎ  ｉｎｆｏ（１）（２）（３）・・・・）』とからなる。
『Ｃｏｍｐｏｓｉｔｉｏｎ＿Ｎｕｍｂｅｒ』は、ＩＣＳが属するＤＳにおいて、Ｕｐｄａｔｅがなされることを示す０から１５までの数値である。
『ｃｏｍｐｏｓｉｔｉｏｎ＿ｓｔａｔｅ』は、本ＩＣＳから始まるＤＳが、Ｎｏｒｍａｌ  Ｃａｓｅであるか、Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔであるか、Ｅｐｏｃｈ  Ｓｔａｒｔであるかを示す。
『ｃｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇ』は、本ＩＣＳ内のボタンコマンドは、前のＩＣＳから変化しているかを否かを示す。例えば、あるＩＣＳが属するＤＳが、Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔであれば、このＩＣＳは、原則１つ前のＩＣＳと同じ内容になる。しかしｃｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇをオンに設定しておけば、１つ前のＩＣＳと違うボタンコマンドをＩＣＳに設定しておくことができる。本フラグは、グラフィックスオブジェクトは流用するが、コマンドは変更したい場合に有効となる。
『Ｃｏｍｐｏｓｉｔｉｏｎ＿ｔｉｍｅｏｕｔ＿ＰＴＳ』は、ボタンによる対話画面の終了時刻を記述する。終了時刻において対話画面の表示は、もはや有効ではなく表示されない。Ｃｏｍｐｏｓｉｔｉｏｎ＿ｔｉｍｅｏｕｔ＿ＰＴＳは、動画データにおける再生時間軸の時間精度で記述しておくことが好ましい。
『Ｓｅｌｅｃｔｉｏｎ＿Ｔｉｍｅ＿ｏｕｔ＿ＰＴＳ』は、有効なボタン選択期間の終了時点を記述する。Ｓｅｌｅｃｔｉｏｎ＿Ｔｉｍｅ＿ｏｕｔ＿ＰＴＳの時点において、Ｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒにより特定されるボタンがアクティベートされる。Ｓｅｌｅｃｔｉｏｎ＿Ｔｉｍｅ＿ｏｕｔ＿ＰＴＳは、ｃｏｍｐｏｓｉｔｉｏｎ＿ｔｉｍｅ＿ｏｕｔ＿ＰＴＳの時間と等しいかそれより短い。Ｓｅｌｅｃｔｉｏｎ＿Ｔｉｍｅ＿ｏｕｔ＿ＰＴＳはビデオフレームの時間精度で記述される。
『ＵＯ＿Ｍａｓｋ＿Ｔａｂｌｅ』は、ＩＣＳに対応するＤｉｓｐｌａｙ  Ｓｅｔにおけるユーザ操作の許可／不許可を示す。このマスクフィールドが不許可に設定されていれば、再生装置に対するユーザ操作は無効になる。
『ａｎｉｍａｔｉｏｎ＿ｆｒａｍｅ＿ｒａｔｅ＿ｃｏｄｅ』は、アニメーション型ボタンに適用すべきフレームレートを記述する。アニメーションフレームレートは、本フィールドの値を用いて、ビデオフレームレートを割ることにより与えられる。本フィールドが００なら、各ボタンのグラフィクスオブジェクトを定義するＯＤＳのうち、Ｓｔａｒｔ＿Ｏｂｊｅｃｔ＿ｉｄ＿ｘｘｘにて特定されるもののみが表示され、アニメーションされない。
『ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』は、対話画面の表示が始まったとき、デフォルトとしてセレクテッド状態に設定すべきボタン番号を指示する。本フィールドが”０”であれば、再生装置のレジスタに格納されたボタン番号のボタンが自動的にアクティブ状態に設定される。もしこのフィールドが非ゼロであれば、このフィールドは、有効なボタンの値を意味する。
『ｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』は、Ｓｅｌｅｃｔｉｏｎ＿Ｔｉｍｅ＿ｏｕｔ＿ＰＴＳにより定義された時間の前に、ユーザがどのボタンもアクティブ状態にしなかったとき、自動的にアクティブ状態に設定されるボタンを示す。ｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが”ＦＦ”であれば、Ｓｅｌｅｃｔｉｏｎ＿Ｔｉｍｅ＿ｏｕｔ＿ＰＴＳにより定義される時刻において、現在セレクテッド状態にあるボタンが自動的に選択される。このｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが００であれば、自動選択はなされない。００，ＦＦ以外の値であれば本フィールドは、有効なボタン番号として解釈される。
『ボタン情報（Ｂｕｔｔｏｎ＿ｉｎｆｏ）』は、対話画面において合成される各ボタンを定義する情報である。図中の引き出し線ｈｐ１はＩＣＳにより制御されるｉ番目のボタンについてのボタン情報ｉの内部構成をクローズアップしている。以降、ボタン情報ｉを構成する情報要素について説明する。
『ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』は、ボタンｉを、ＩＣＳにおいて一意に識別する数値である。
『ｎｕｍｅｒｉｃａｌｌｙ＿ｓｅｌｅｃｔａｂｌｅ＿ｆｌａｇ』は、ボタンｉの数値選択を許可するか否かを示すフラグである。
『ａｕｔｏ＿ａｃｔｉｏｎ＿ｆｌａｇ』は、ボタンｉを自動的にアクティブ状態にするかどうかを示す。ａｕｔｏ＿ａｃｔｉｏｎ＿ｆｌａｇがオン（ビット値１）に設定されれば、ボタンｉは、セレクテッド状態になる代わりにアクティブ状態になる。ａｕｔｏ＿ａｃｔｉｏｎ＿ｆｌａｇがオフ（ビット値０）に設定されれば、ボタンｉは、選択されたとしてもセレクテッド状態になるにすぎない。
『ｂｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ』、『ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎ』は、対話画面におけるボタンｉの左上画素の水平位置、垂直位置を示す。
『ｕｐｐｅｒ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』は、ボタンｉがセレクテッド状態である場合においてＭＯＶＥＵＰキーが押下された場合、ボタンｉの代わりに、セレクテッド状態にすべきボタンの番号を示す。もしこのフィールドにボタンｉの番号が設定されていれば、ＭＯＶＥＵＰキーの押下は無視される。
『ｌｏｗｅｒ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』，『ｌｅｆｔ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』，『ｒｉｇｈｔ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ』は、ボタンｉがセレクテッド状態である場合においてＭＯＶＥ  Ｄｏｗｎキー，ＭＯＶＥ  Ｌｅｆｔキー，ＭＯＶＥ  Ｒｉｇｈｔキーが押下された場合、ボタンｉの押下の代わりに、セレクテッド状態にすべきボタンの番号を示す。もしこのフィールドにボタンｉの番号が設定されていれば、これらのキーの押下は無視される。
『ｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌ』は、ノーマル状態のボタンｉをアニメーションで描画する場合、アニメーションを構成する複数ＯＤＳに付加された連番のうち、最初の番号がこのｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌに記述される。
『ｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌ』は、ノーマル状態のボタンｉをアニメーションで描画する場合、アニメーションを構成する複数ＯＤＳに付加された連番たる『ｏｂｊｅｃｔ＿ＩＤ』のうち、最後の番号がこのｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌに記述される。このＥｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌに示されるＩＤが、ｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌに示されるＩＤと同じである場合、このＩＤにて示されるグラフィックスオブジェクトの静止画が、ボタンｉの絵柄になる。
『ｒｅｐｅａｔｅｄ＿ｎｏｒｍａｌ＿ｆｌａｇ』は、ノーマル状態にあるボタンｉのアニメーション表示を反復継続させるかどうかを示す。
『ｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄ』は、セレクテッド状態のボタンｉをアニメーションで描画する場合、アニメーションを構成する複数ＯＤＳに付加された連番のうち、最初の番号がこのｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄに記述される。
『ｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄ』は、セレクト状態のボタンをアニメーションで描画する場合、アニメーションを構成する複数ＯＤＳに付加された連番たる『ｏｂｊｅｃｔ＿ＩＤ』のうち、最後の番号がこのｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄに記述される。
このＥｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄに示されるＩＤが、ｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｄに示されるＩＤと同じである場合、このＩＤにて示されるグラフィックスオブジェクトの静止画が、ボタンｉの絵柄になる。
『ｒｅｐｅａｔ＿ｓｅｌｅｃｔｅｄ＿ｆｌａｇ』は、セレクテッド状態にあるボタンｉのアニメーション表示を、反復継続するかどうかを示す。ｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄと、ｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄとが同じ値になるなら、本フィールド００に設定される。
『ｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ａｃｔｉｖａｔｅｄ』は、アクティブ状態のボタンｉをアニメーションで描画する場合、アニメーションを構成する複数ＯＤＳに付加された連番のうち、最初の番号がこのｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ａｃｔｉｖａｔｅｄに記述される。
『ｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ａｃｔｉｖａｔｅｄ』は、アクティブ状態のボタンをアニメーションで描画する場合、アニメーションを構成する複数ＯＤＳに付加された連番たる『ｏｂｊｅｃｔ＿ＩＤ』のうち、最後の番号がこのｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ａｃｔｉｖａｔｅｄに記述される。
続いてボタンコマンドについて説明する。
『ボタンコマンド（ｂｕｔｔｏｎ＿ｃｏｍｍａｎｄ）』は、ボタンｉがアクティブ状態になれば、実行されるコマンドである。
ボタンコマンドでは、ＰＬ、ＰｌａｙＩｔｅｍを対象とした再生を再生装置に命じることができる。ＰＬ、ＰｌａｙＩｔｅｍを対象とした再生を、再生装置に命じるコマンドをＬｉｎｋＰＬコマンドという。本コマンドは、第１引数で指定するプレイリストの再生を、第２引数で指定する位置から再生を開始させるものである。
書式：ＬｉｎｋＰＬ（第１引数，第２引数）
第１引数は、プレイリストの番号で、再生すべきＰＬを指定することができる。第２引数は、そのＰＬに含まれるＰｌａｙＩｔｅｍや、そのＰＬにおけるＣｈａｐｔｅｒ、Ｍａｒｋを用いて再生開始位置を指定することができる。
ＰｌａｙＩｔｅｍにより再生開始位置を指定したＬｉｎｋＰＬ関数をＬｉｎｋＰＬａｔＰｌａｙＩｔｅｍ（）、
Ｃｈａｐｔｅｒにより再生開始位置を指定したＬｉｎｋＰＬ関数をＬｉｎｋＰＬａｔＣｈａｐｔｅｒ（）、
Ｍａｒｋにより再生開始位置を指定したＬｉｎｋＰＬ関数をＬｉｎｋＰＬａｔＭａｒｋ（）という。
またボタンコマンドでは、再生装置の状態取得や状態設定を再生装置に命じることができる。再生装置の状態は、６４個のＰｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒ（これの設定値は、ＰＳＲと呼ばれる）と、４０９６個のＧｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｒｅｇｉｓｔｅｒ（これの設定値は、ＧＰＲと呼ばれる）とに示されている。ボタンコマンドでは、以下の（ｉ）〜（ｉｖ）のコマンドを使用することにより、これらのレジスタに値を設定したり、これらのレジスタから値を取得したりすることができる。
（ｉ）Ｇｅｔ  ｖａｌｕｅ  ｏｆ  Ｐｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒコマンド
書式：Ｇｅｔ  ｖａｌｕｅ  ｏｆ  Ｐｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒ（引数）
この関数は、引数で指定されたＰｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒの設定値を取得する。
（ｉｉ）Ｓｅｔ  ｖａｌｕｅ  ｏｆ  Ｐｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒコマンド
書式：Ｓｅｔ  ｖａｌｕｅ  ｏｆ  Ｐｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒ（第１引数、第２引数）
この関数は、第１引数で指定されたＰｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒに、第２引数で指定された値を設定させる。
（ｉｉｉ）Ｇｅｔ  ｖａｌｕｅ  ｏｆ  Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｒｅｇｉｓｔｅｒコマンド
書式：Ｇｅｔ  ｖａｌｕｅ  ｏｆ  Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｒｅｇｉｓｔｅｒ（引数）
この関数は、引数で指定されたＧｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｒｅｇｉｓｔｅｒの設定値を取得する関数である。
（ｉｖ）Ｓｅｔ  ｖａｌｕｅ  ｏｆ  Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｒｅｇｉｓｔｅｒコマンド
書式：Ｓｅｔ  ｖａｌｕｅ  ｏｆ  Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｒｅｇｉｓｔｅｒ（第１引数、第２引数）
この関数は、第１引数で指定されたＧｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｒｅｇｉｓｔｅｒに、第２引数で指定された値を設定させる。
以上がＩＣＳの内部構成である。ＩＣＳによる対話制御の具体例について以下説明する。本具体例は、図１２のようなＯＤＳ、ＩＣＳを想定している。図１２は、あるＤＳｎに含まれるＯＤＳと、ＩＣＳとの関係を示す図である。このＤＳｎには、ＯＤＳ１１〜１９，２１〜２９，３１〜３９，４１〜４９が含まれているものとする。これらのＯＤＳのうち、ＯＤＳ１１〜１９は、ボタンＡの各状態を描いたものであり、ＯＤＳ２１〜２９は、ボタンＢの各状態を描いたもの、ＯＤＳ３１〜３９は、ボタンＣの各状態を描いたもの、ＯＤＳ４１〜４９は、ボタンＤの各状態を描いたものとする（図中の括弧｝を参照）。そしてＩＣＳにおけるｂｕｔｔｏｎ＿ｉｎｆｏ（１），（２），（３），（４）にて、これらのボタンＡ〜ボタンＤの状態制御が記述されているものとする（図中の矢印ｂｈ１，２，３，４参照）。
このＩＣＳによる制御の実行タイミングが、図１３に示す動画のうち、任意のピクチャデータｐｔ１の表示タイミングであれば、ボタンＡ〜ボタンＤからなる対話画面ｔｍ１が、このピクチャデータｐｔ１に合成（ｇｓ１）されて表示されることになる（ｇｓ２）。動画の中身に併せて、複数ボタンからなる対話画面が表示されるので、ＩＣＳによりボタンを用いたリアルな演出が可能になる。
図１５に示すボタンＡ〜ボタンＤの状態遷移を実行する場合のＩＣＳの記述例を図１４に示す。図１５における矢印ｈｈ１，ｈｈ２は、ｂｕｔｔｏｎ  ｉｎｆｏ（１）のｎｅｉｇｈｂｏｒ＿ｉｎｆｏ（）による状態遷移を象徴的に表現している。ｂｕｔｔｏｎ  ｉｎｆｏ（１）のｎｅｉｇｈｂｏｒ＿ｉｎｆｏ（）におけるｌｏｗｅｒ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒは、ボタンＣに設定されているため、ボタンＡがセレクテッド状態になっている状態で、ＭＯＶＥＤｏｗｎキー押下のＵＯが発生すれば（図１５のｕｐ１）、ボタンＣがセレクテッド状態になる（図１５のｓｊ１）。ｂｕｔｔｏｎ  ｉｎｆｏ（１）のｎｅｉｇｈｂｏｒ＿ｉｎｆｏ（）におけるｒｉｇｈｔ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒは、ボタンＢに設定されているため、ボタンＡがセレクテッド状態になっている状態で、ＭＯＶＥＲｉｇｈｔキー押下のＵＯが発生すれば（図１５のｕｐ２）、ボタンＢがセレクテッド状態になる（図１５のｓｊ２）。
図１５における矢印ｈｈ３は、ｂｕｔｔｏｎ  ｉｈｆｏ（３）のｎｅｉｇｈｂｏｒ＿ｉｎｆｏ（）による状態遷移の制御を示す。ｂｕｔｔｏｎ  ｉｎｆｏ（３）のｎｅｉｇｈｂｏｒ＿ｉｎｆｏ（）におけるｕｐｐｅｒ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒは、ボタンＡに設定されているため、ボタンＣがセレクテッド状態になっている状態で（ｕｐ３）、ＭＯＶＥＵｐキー押下のＵＯが発生すれば、ボタンＡがセレクテッド状態に戻る。
続いてボタンＡ〜ボタンＤの絵柄について説明する。ＯＤＳ１１，２１，３１，４１が図１６に示す絵柄であるものとする。そしてボタンＡに割り当てられたＯＤＳ１１〜１９は、図１７のような絵柄であるものとする。ＩＣＳにおけるｂｕｔｔｏｎ＿ｉｎｆｏ（１）のｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏ（）におけるｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌ，ｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌは、ＯＤＳ１１〜１３を指定しているため、ボタンＡのノーマル状態は、ＯＤＳ１１〜１３によるアニメーションで表現される。またｂｕｔｔｏｎ＿ｉｎｆｏ（１）のｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏ（）におけるｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄ，ｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄは、ＯＤＳ１４〜１６を指定しているため、ボタンＡのセレクテッド状態は、ＯＤＳ１４〜１６で表現される。ユーザがこのボタンＡをセレクテッド状態にすることにより、ボタンＡの絵柄たる肖像は、ＯＤＳ１１〜１３によるものから、ＯＤＳ１４〜１６によるものへと変化する。ここでｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏ（）、ｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏ（）におけるｒｅｐｅａｔ＿ｎｏｒｍａｌ＿ｆｌａｇ，ｒｅｐｅａｔ＿ｓｅｌｅｃｔ＿ｆｌａｇを１にしておけば、ＯＤＳ１１〜１３によるアニメーション、ＯＤＳ１４〜１６によるアニメーションは、図中の「→（Ａ）」，「（Ａ）→」，「→（Ｂ）」，「（Ｂ）→」，に示すように、アニメーション表示は反復継続する。
アニメーション描画が可能な複数ＯＤＳが、ボタンＡ〜ボタンＤに割り当てられており、これらによる制御がＩＣＳに記述されていれば、ユーザ操作に併せてキャラクタの表情が変わるような、リアルなボタンの状態制御を実現することができる。
続いてｎｕｍｅｒｉｃａｌｌｙ＿ｓｅｌｅｃｔａｂｌｅ＿ｆｌａｇによる応用について説明する。図１８は、ＤＳに含まれるＩＣＳ、ＯＤＳの一例を示す図である。本図におけるＯＤＳ３１〜３３は、図中上段に示すような３人の野球選手の肖像及び選手名、背番号を示すものとする。一方、このＤＳに属するＩＣＳは、３つのボタン情報を含んでおり、ボタン情報（１）のｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄは、ＯＤＳ３１を示すよう設定され、ボタン情報（２）のｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄは、ＯＤＳ３２を示すよう、ボタン情報（３）のｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄは、ＯＤＳ３３を示すよう設定されているものとする。一方、ボタン情報（１）は、ｂｕｔｔｏｎ  ｎｕｍｂｅｒが９９に、ボタン情報（２）はｂｕｔｔｏｎ  ｎｕｍｂｅｒが４２に、ボタン情報（３）はｂｕｔｔｏｎ  ｎｕｍｂｅｒが９４に設定されているものとする。またボタン情報（１）〜（３）は、全てｎｕｍｅｒｉｃａｌｌｙ＿ｓｅｌｅｃｔａｂｌｅ＿ｆｌａｇが１に設定されているものとする。この場合、ボタン情報（１）〜（３）に対応する各ボタンの数値選択が可能になるので、ユーザによりリモコン４００による「９９」の数値入力がなされれば、ビギナーズ・ラック選手のボタンがセレクテッド状態になる。数値「９９」の入力は、「９」キーの押下と、「９」キーの押下とを連続して受け付けることで実現しても良い。また「９」キーの押下と、「＋１０」キーの９回の押下とを連続して受け付けることで実現しても良い。「４２」の数値入力がなされれば、ケアレス・ミス選手のボタンがセレクテッド状態、「９４」の数値入力がなされれば、デッド・ストック選手のボタンがセレクテッド状態になる。
これらのボタン情報（１）〜（３）のａｕｔｏ＿ａｃｔｉｏｎ＿ｆｌａｇが１に設定されていれば、これら３つのボタンはセレクテッド状態になる代わりにアクティブ状態になり、ボタン情報の内部に含まれるボタンコマンド（ＬｉｎｋＰＬ（ＰＬ＃２１），ＬｉｎｋＰＬ（ＰＬ＃２２），ＬｉｎｋＰＬ（ＰＬ＃２３））が実行される。３つのボタン情報に含まれるボタンコマンドのリンク先ＰＬ＃２１，＃２２，＃２３が、それぞれの選手の打撃シーン、投球シーンであれば、これら打撃シーン、投球シーンは、選手の背番号にあたる数値入力で再生されることになる。背番号という、知名度が高い番号でのダイレクトなボタン選択が可能になるので、ユーザによる操作性は一段と高まる。
続いてＤｉｓｐｌａｙ  ＳｅｔにおけるＯＤＳの順序について説明する。Ｄｉｓｐｌａｙ  Ｓｅｔに属するＯＤＳは、ボタンの１つの状態を表すようＩＣＳにて指定されていることは、上述した通りである。ＯＤＳは、こうした指定、つまり、ボタンのどの状態を示すかという指定に応じて、Ｄｉｓｐｌａｙ  Ｓｅｔにおける順序が決められる。
詳しくいうとＤｉｓｐｌａｙ  ＳｅｔにおいてＯＤＳは、ノーマル状態を表すもの（１）、セレクテッド状態を表すもの（２）、アクティブ状態を示すもの（３）というように、同じ状態を表すもの同士がグループ化される。このボタンの１つの状態を表すグループをｂｕｔｔｏｎ−ｓｔａｔｅグループという。そしてこれらｂｕｔｔｏｎ−ｓｔａｔｅグループを、ノーマル状態→セレクテッド状態→アクティブ状態というように並べる。このようにボタンのどの状態を表すかに応じて、ＯＤＳの順序を決めるというのが、Ｄｉｓｐｌａｙ  ＳｅｔにおけるＯＤＳの順序である。
図１９は、Ｄｉｓｐｌａｙ  Ｓｅｔに属するＯＤＳの順序を示す図である。本図の第２段目に、Ｄｉｓｐｌａｙ  Ｓｅｔにおける３つのｂｕｔｔｏｎ−ｓｔａｔｅグループを示す。本図においてノーマル状態を描くＯＤＳの集合（ＯＤＳｓ  ｆｏｒ  Ｎｏｒｍａｌ  ｓｔａｔｅ）、ボタンのセレクテッド状態を描くＯＤＳの集合（ＯＤＳｓ  ｆｏｒ  Ｓｅｌｅｃｔｅｄ  ｓｔａｔｅ）、ボタンのアクティブ状態を描くＯＤＳの集合（ＯＤＳｓ  ｆｏｒ  Ａｃｔｉｏｎｅｄ  ｓｔａｔｅ）が示されている。そしてこれらｂｕｔｔｏｎ−ｓｔａｔｅグループの順序は、ノーマル状態→セレクテッド状態→アクティブ状態というように並べられている。これはＯＤＳのうち、対話画面の初期表示を構成するものを早く読み出させ、アップデート後の画面表示を構成するものの読み出しを後にするという配慮である。
図１９の第１段目は、これらｂｕｔｔｏｎ−ｓｔａｔｅグループにより描かれるグラフィクスオブジェクトＡｎ，Ｂｎ，Ｃｎ，Ｄｎ，Ａｓ，Ｂｓ，Ｃｓ，Ｄｓ，Ａａ，Ｂａ，Ｃａ，Ｄａを示す。本図におけるＡｎ，Ｂｎ，Ｃｎ，Ｄｎにおける添字ｎは各ボタンのノーマル状態を表し、Ａｓ，Ｂｓ，Ｃｓ，Ｄｓにおける添字ｓは各ボタンのセレクテッド状態を表す。Ａａ，Ｂａ，Ｃａ，Ｄａにおける添字ａは各ボタンのアクティブ状態を表す。図１９の第２段目は、第１段目のグラフィクスオブジェクトが属するｂｕｔｔｏｎ−ｓｔａｔｅグループを示す。尚、本図におけるＯＤＳ１〜ＯＤＳｎという表記は、「１」，「ｎ」というような同じ番号が付されているが、これらＮ−ＯＤＳｓ，Ｓ−ＯＤＳｓ，Ａ−ＯＤＳｓに属するＯＤＳは別々のものである。以降、同様の表記の図は同じ意味であるとする。
図２０は、図１９のｂｕｔｔｏｎ−ｓｔａｔｅグループが配置された対話画面における状態遷移を示す図である。
本図における対話画面は、”初期表示”、”１ｓｔユーザアクションによる更新表示”、”２ｎｄユーザアクションによる更新表示”という複数の状態をもつ。図中の矢印は、状態遷移のトリガとなるユーザアクションを表す。この図を参照すると、４つのボタンＡ，Ｂ，Ｃ，Ｄはそれぞれノーマル状態、セレクテッド状態、アクティブ状態という状態をもっている。このうち初期表示に必要なのは、３つのノーマル状態を描くグラフィクスオブジェクトと、１つのセレクテッド状態を描くグラフィクスオブジェクトであることがわかる。
デフォルトセレクテッドボタンが未確定であり、ボタンＡ〜ボタンＤのうち、どのボタンがセレクテッド状態になるかが動的に変わる場合であっても、各ボタンのノーマル状態、セレクテッド状態を表すグラフィクスオブジェクトのデコードが完了すれば、初期表示を実現することができる。このことを意識して、本実施形態では、各状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループを、図１９の第２段目に示すようにノーマル状態→セレクテッド状態→アクティブ状態の順に配列している。かかる配列により、アクティブ状態を構成するＯＤＳの読み出しやデコードが未完であっても、初期表示を実現することができ、Ｄｉｓｐｌａｙ  Ｓｅｔの読み出し開始から初期表示の完了までの期間を短くすることができる。
続いて図１６、図１７に示したＯＤＳを、どのような順序で配列させるかについて説明する。図２１は、Ｄｉｓｐｌａｙ  ＳｅｔにおけるＯＤＳの順序を示す図である。本図においてＯＤＳｓ  ｆｏｒ  Ｎｏｒｍａｌ  ｓｔａｔｅは、ＯＤＳ１１〜１３，ＯＤＳ２１〜２３，ＯＤＳ３１〜３３，ＯＤＳ４１〜４３から構成されている。またＯＤＳｓ  ｆｏｒ  Ｓｅｌｅｃｔｅｄ  ｓｔａｔｅは、ＯＤＳ１４〜１６，ＯＤＳ２４〜２６，ＯＤＳ３４〜３６，ＯＤＳ４４〜４６から構成され、ＯＤＳｓ  ｆｏｒ  Ａｃｔｉｏｎｅｄ  ｓｔａｔｅは、ＯＤＳ１７〜１９，ＯＤＳ２７〜２９，ＯＤＳ３７〜３９，ＯＤＳ４７〜４９から構成されている。ＯＤＳ１１〜１３は、図１７に示したような、キャラクターの表情変化を描くものであり、ＯＤＳ２１〜２３，ＯＤＳ３１〜３３，ＯＤＳ４１〜４３も同様なので、これらのＯＤＳを先頭のｂｕｔｔｏｎ−ｓｔａｔｅグループに配置することにより、Ｄｉｓｐｌａｙ  Ｓｅｔの読み出しの途中であっても、初期表示の準備を整えることができる。これによりアニメーションを取り入れた対話画面を、遅滞なく実行することができる。
続いて複数のボタン状態からの多重参照されるＯＤＳの順序について説明する。多重参照とは、あるＯＤＳについてのｏｂｊｅｃｔ＿ｉｄがＩＣＳにおける２以上のｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏ，ｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏ，ａｃｔｉｖａｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏにより指定されていることをいう。かかる多重参照を行えば、あるボタンのノーマル状態を描くグラフィクスオブジェクトを用いて、他のボタンのセレクテッド状態を描くことができ、グラフィクスオブジェクトの絵柄を共用することができる。かかる共用により、ＯＤＳの数を少なくすることができる。多重参照されるＯＤＳについては、どのｂｕｔｔｏｎ−ｓｔａｔｅグループに属するかが問題になる。
つまりあるボタンのノーマル状態と、別のボタンのセレクテッド状態とが１つのＯＤＳで描かれている場合、このＯＤＳは、ノーマル状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループに属するか、セレクテッド状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループに属するかが問題となる。
この場合ＯＤＳは、複数状態のうち、最も早く出現する状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループだけ１回のみ配置される。
あるＯＤＳがノーマル状態、セレクテッド状態で多重参照されるなら、ノーマル状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループ（Ｎ−ＯＤＳｓ）にこのＯＤＳは配置され、セレクテッド状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループ（Ｓ−ＯＤＳｓ）には配置されない。また別のＯＤＳがセレクテッド状態、アクティブ状態で多重参照されるなら、セレクテッド状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループ（Ｓ−ＯＤＳｓ）にこのＯＤＳは配置され、アクティブ状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループ（Ａ−ＯＤＳｓ）には配置されない。このように多重参照されるＯＤＳは、最も早く出現する状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループ内に一回だけ配置される。以上が多重参照されるＯＤＳの順序についての説明である。
Ｓ−ＯＤＳｓにおける、ＯＤＳの順序について説明する。Ｓ−ＯＤＳｓにおいて、どのＯＤＳが先頭に位置するかは、デフォルトセレクテッドボタンが静的に確定しているか、動的であるかによって違う。確定したデフォルトセレクテッドボタンとは、ＩＣＳにおけるｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒに００以外の有効な値が設定され、この値で指示されるボタンのことをいう。ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが有効な値を示しており、尚且つデフォルトセレクテッドボタンを表すＯＤＳが、Ｎ−ＯＤＳｓに無い場合は、デフォルトセレクテッドボタンを表すＯＤＳが、Ｓ−ＯＤＳｓの先頭に配置される。
ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが値００を示している場合、デフォルトでセレクテッド状態に設定されるボタンは、再生装置側の状態によって動的に変化する。
値０を示すよう、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒを設定しておくのは、例えば、Ｄｉｓｐｌａｙ  Ｓｅｔが多重されているＡＶＣｌｉｐが、複数再生経路の合流点になっているようなケースである。先行する複数再生経路がそれぞれ第１、第２、第３章であり、合流点にあたるＤｉｓｐｌａｙ  Ｓｅｔが第１章、第２章、第３章に対応するボタンを表示させるものである場合、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒにおいて、デフォルトでセレクテッド状態とすべきボタンを決めてしまうのは、おかしい。
第１章からの到達時には第２章にあたるボタン、第２章からの到達時には第３章にあたるボタン、第３章からの到達時には第４章にあたるボタンというように、このＤｉｓｐｌａｙ  Ｓｅｔに到達するまでに、先行する複数再生経路のうち、どの再生経路を経由するかによって、セレクテッド状態とすべきボタンを変化させるのが理想的である。先行する再生経路によって、セレクテッド状態とすべきボタンが変わるようなケースにおいて、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒは無効を示すよう、０に設定される。どの再生経路を経由するかによって、セレクテッド状態とすべきボタンを変化するから、特定のＯＤＳをｂｕｔｔｏｎ−ｓｔａｔｅグループの先頭に配置するというような配慮は行わない。
図２２は、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが”＝０”である場合と、”＝ボタンＢ”である場合とでＳ−ＯＤＳｓにおいてＯＤＳの並びがどのように変わるかを示す図である。本図において破線ｓｓ１は、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒがボタンＢを示している場合に、Ｓ−ＯＤＳｓにおけるＯＤＳの配列がどのようになるかを示しており、破線ｓｓ２は、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが＝０を示している場合に、Ｓ−ＯＤＳｓにおけるＯＤＳの配列がどのようになるかを示している。この図の表記からもわかるように、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒがボタンＢを示している場合、ボタンＢのセレクテッド状態を示すＯＤＳＢｓがＳ−ＯＤＳｓの先頭に配され、その他のボタンのＯＤＳは、後回しにされている。一方、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが”＝０”である場合、ボタンＡのセレクテッド状態を表すＯＤＳＡｓが先頭に配置されている。このようにｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが有効かどうかは、Ｓ−ＯＤＳｓ内の順序に大きな変動をもたらす。
以上がＯＤＳの順序についての説明である。続いてこれらＩＣＳ、ＯＤＳを有したＤｉｓｐｌａｙ  Ｓｅｔが、ＡＶＣｌｉｐの再生時間軸上にどのように割り当てられるかについて説明する。Ｅｐｏｃｈは、再生時間軸上においてメモリ管理が連続する期間であり、Ｅｐｏｃｈは１つ以上のＤｉｓｐｌａｙ  Ｓｅｔから構成されるので、Ｄｉｓｐｌａｙ  ＳｅｔをどうやってＡＶＣｌｉｐの再生時間軸に割り当てるかが問題になる。ここでＡＶＣｌｉｐの再生時間軸とは、ＡＶＣｌｉｐに多重されたビデオストリームを構成する個々のピクチャデータのデコードタイミング、再生タイミングを規定するための想定される時間軸をいう。この再生時間軸においてデコードタイミング、再生タイミングは、９０ＫＨｚの時間精度で表現される。Ｄｉｓｐｌａｙ  Ｓｅｔ内のＩＣＳ、ＯＤＳに付加されたＤＴＳ、ＰＴＳは、この再生時間軸において同期制御を実現すべきタイミングを示す。このＩＣＳ、ＯＤＳに付加されたＤＴＳ、ＰＴＳを用いて同期制御を行うことが、再生時間軸へのＤｉｓｐｌａｙ  Ｓｅｔの割り当てである。
先ず、ＯＤＳに付加されたＤＴＳ、ＰＴＳにより、どのような同期制御がなされるかについて説明する。
ＤＴＳは、ＯＤＳのデコードを開始すべき時間を９０ＫＨｚの時間精度で示しており、ＰＴＳはデコード終了時刻を示す。
ＯＤＳのデコードは、瞬時には完了せず、時間的な長さをもっている。このデコード期間の開始点・終了点を明らかにしたいとの要望から、ＯＤＳについてのＤＴＳ、ＰＴＳはデコード開始時刻、デコード終了時刻を示している。
ＰＴＳの値は終了時刻であるので、ＰＴＳに示される時刻までにＯＤＳｊのデコードがなされて、非圧縮状態のグラフィックスオブジェクトが、再生装置上のオブジェクトバッファに得られなければならない。
Ｄｉｓｐｌａｙ  Ｓｅｔｎに属する任意のＯＤＳｊのデコード開始時刻は、９０ＫＨｚの時間精度でＤＴＳ（ＤＳｎ［ＯＤＳ］）に示されるので、これにデコードを要する最長時間を加えた時刻が、Ｄｉｓｐｌａｙ  ＳｅｔのＯＤＳｊのデコード終了保証時刻になる。
ＯＤＳｊの伸長後のサイズを”ＳＩＺＥ（ＤＳｎ［ＯＤＳｊ］）”、ＯＤＳのデコードレートを”Ｒｄ”とすると、デコードに要する最長時間（秒）は、”ＳＩＺＥ（ＤＳｎ［ＯＤＳｊ］）／／Ｒｄ”になる。
尚、本明細書において演算子”／／”は、小数点以下切り上げの割算を示す。
この最長時間を９０ＫＨｚの時間精度に変換し、ＯＤＳｊのＤＴＳに加算することにより、ＰＴＳで示されるべきデコード終了時刻（９０ＫＨｚ）は算出される。
ＤＳｎに属するＯＤＳｊのＰＴＳを、数式で表すと、以下の式のようになる。
ＰＴＳ（ＤＳ［ＯＤＳｊ］）＝ＤＴＳ（ＤＳｎ［ＯＤＳｊ］）＋９０，０００×（ＳＩＺＥ（ＤＳｎ［ＯＤＳｊ］）／／Ｒｄ）
そして互いに隣接する２つのＯＤＳ（ＯＤＳｊ，ＯＤＳｊ＋１）との間では、以下の関係を満たす必要がある。
ＰＴＳ（ＤＳｎ［ＯＤＳｊ］）≦ＤＴＳ（ＤＳｎ［ＯＤＳｊ＋１］）
以上がＯＤＳについてのＰＴＳ，ＤＴＳの説明である。次にＩＣＳの、ＰＴＳ値について説明する。
ＩＣＳのＰＴＳは、Ｅｐｏｃｈ開始直後であればＤＳｎの初期表示を構成するＯＤＳのうち、デコード時刻が最も遅いＯＤＳのＰＴＳ値（１）、グラフィクスプレーンのクリアに要する時間（２）、ＯＤＳのデコードにより得られたグラフィクスオブジェクトをグラフィクスプレーンに書き込む書込時間（３）を足した値以降に設定される。一方Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔであれば、ＯＤＳのＰＴＳ値（１）にプレーン書込期間（３）を足した値（ＯＤＳのＰＴＳ値（１）＋プレーン書込期間（３））以降に設定される。
ＩＣＳにおいてｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが指定されている場合は、全てのボタンのノーマル状態を描画するＯＤＳのデコードと、デフォルトボタンのセレクテッド状態を描画するＯＤＳのデコードさえ完了すれば、初期表示を行うことができる。初期表示における複数ボタンのセレクテッド状態を描画するＯＤＳを、Ｓ−ＯＤＳｓと呼び、そのうちデコード時刻が最も早いもの（この場合、デフォルトボタンを描画するもの）をＳ−ＯＤＳｓｆｉｒｓｔと呼ぶ。このＳ−ＯＤＳｓｆｉｒｓｔのＰＴＳ値を、デコード時刻が最も遅いＯＤＳのＰＴＳ値として、ＩＣＳのＰＴＳの基準に用いる。
ＩＣＳにおいてｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが指定されていない場合は、どのボタンがセレクテッド状態になるかわからないから、全ボタンのノーマル状態、セレクテッド状態を描画する準備が整なわないと、初期表示の準備が完了しない。初期表示における複数ボタンのセレクテッド状態を描画するＳ−ＯＤＳｓのうち、デコード時刻が最も遅いものをＳ−ＯＤＳｓｌａｓｔと呼ぶ。このＳ−ＯＤＳｓｌａｓｔのＰＴＳ値を、デコード時刻が最も遅いＯＤＳのＰＴＳ値として、ＩＣＳのＰＴＳの基準値に用いる。
Ｓ−ＯＤＳｓｆｉｒｓｔのデコード終了時刻をＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｆｉｒｓｔ］）とすると、ＰＴＳ（ＤＳｎ［ＩＣＳ］）は、ＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｆｉｒｓｔ］）に、グラフィクスプレーンのクリアに要する時間（２）、ＯＤＳのデコードにより得られたグラフィクスオブジェクトをグラフィクスプレーンに書き込む書込時間（３）を足した値になる。
グラフィックプレーン内において描画可能な矩形領域の横幅をｖｉｄｅｏ＿ｗｉｄｔｈ，縦幅をｖｉｄｅｏ＿ｈｅｉｇｈｔとし、グラフィックプレーンへの書込レートを１２８Ｍｂｐｓとすると、グラフィックプレーンのクリアに要する時間は、８×ｖｉｄｅｏ＿ｗｉｄｔｈ×ｖｉｄｅｏ＿ｈｅｉｇｈｔ／／１２８，０００，０００と表現される。これを９０ＫＨｚの時間精度で表現すれば、グラフィックプレーンのクリア時間（２）は９０，０００×（８×ｖｉｄｅｏ＿ｗｉｄｔｈ×ｖｉｄｅｏ＿ｈｅｉｇｈｔ／／１２８，０００，０００）になる。
ＩＣＳに含まれる全ボタン情報により、指定されるグラフィックスオブジェクトの総サイズをΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）とし、グラフィックプレーンへの書込レートを１２８Ｍｂｐｓとすると、グラフィックプレーンへの書き込みに要する時間は、ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）／／１２８，０００，０００と表現される。これを９０ＫＨｚの時間精度で表現すれば、グラフィックプレーンのクリア時間（２）は９０，０００×（ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）／／１２８，０００，０００）になる。
ここでΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）は、各ボタンを表すグラフィクスオブジェクトのうち、最初に表示されるもののサイズの総和を意味する。このΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）はデフォルトセレクテッドボタンが確定している場合と、動的に変わる場合とで、違う値になる。デフォルトセレクテッドボタンが静的に確定している場合、ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）は、デフォルトセレクテッドボタンのセレクテッド状態を表す複数ＯＤＳのうち最初に表示されるもの、デフォルトセレクテッドボタン以外のボタンのノーマル状態を表す複数ＯＤＳのうち、最初に表示されるものの総和になる。
続いてデフォルトセレクテッドボタンが動的に変わる場合、どのボタンがデフォルトセレクテッドボタンになるかはわからないから、書き込み時間が最も長くなるケースを想定しせねばならない。ここで、任意のボタンｘのノーマル状態における最初の一枚を表すグラフィクスオブジェクト（ＯＤＳｎ１）、及び、ボタンｘのセレクテッド状態における最初の一枚を表すグラフィクスオブジェクト（ＯＤＳｓ１）のうち、サイズが大きいもの（Ｍａｘ（ＯＤＳｎ１，ＯＤＳｓ１））を、１つのボタンｘにおいて最初に表示すべきグラフィクスオブジェクトと考える。
このＭａｘ（ＯＤＳｎ１，ＯＤＳｓ１）を、全てのボタンについて足し合わせた結果が、ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）になる。
図２３（ａ）（ｂ）は、Ｎ−ＯＤＳｓにボタンＡ〜Ｄを構成する複数ＯＤＳが含まれており、Ｓ−ＯＤＳｓにボタンＡ〜Ｄを構成する複数ＯＤＳが含まれている場合、ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）がどのような値になるかを示す図である。ここでｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが有効な値を示している場合、ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）は太い枠で示す４つのＯＤＳのサイズの総和となる。”Ａｓ１”は、ボタンＡのセレクテッド状態を表す複数のＯＤＳのうち最初に表示されるＯＤＳである。”Ｂｎ１”，”Ｃｎ１”，”Ｄｎ１”は、ボタンＢ〜ボタンＤのノーマル状態を表す複数のＯＤＳのうち最初に表示されるＯＤＳを示す。これらのサイズをｓｉｚｅ（）で表すと、ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）は、ｓｉｚｅ（Ａｓ１）＋ｓｉｚｅ（Ｂｎ１）＋ｓｉｚｅ（Ｃｎ１）＋ｓｉｚｅ（Ｄｎ１）になる。
一方、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが”＝０”であるなら、Ａｎ１，Ａｓ１のうち大きいＯＤＳ、Ｂｎ１，Ｂｓ１のうち大きいＯＤＳ、Ｃｎ１，Ｃｓ１のうち大きいＯＤＳ、Ｄｎ１，Ｄｓ１のうち大きいＯＤＳの和がΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）になる。
故にΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）は、
ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）＝ｍａｘ（ｓｉｚｅ（Ａｎ１），ｓｉｚｅ（Ａｓ１））＋ｍａｘ（ｓｉｚｅ（Ｂｎ１），ｓｉｚｅ（Ｂｓ１））＋ｍａｘ（ｓｉｚｅ（Ｃｎ１），ｓｉｚｅ（Ｃｓ１））＋ｍａｘ（ｓｉｚｅ（Ｄｎ１），ｓｉｚｅ（Ｄｓ１））
になる。
以上の数式を用いることにより、Ｅｐｏｃｈ  Ｓｔａｒｔ開始直後のＰＴＳ（ＤＳｎ［ＩＣＳ］）は、以下の数式のように表現される。
ＰＴＳ（ＤＳｎ［ＩＣＳ］）≧ＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｆｉｒｓｔ］）＋９０，０００×（８×ｖｉｄｅｏ＿ｗｉｄｔｈ×ｖｉｄｅｏ＿ｈｅｉｇｈｔ／／１２８，０００，０００）＋９０，０００×（ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）／／１２８，０００，０００）
一方、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが無効である場合、ＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｆｉｒｓｔ］）をＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｌａｓｔ］）に置き換えればよい。つまり算出式は、以下の通りになる。
ＰＴＳ（ＤＳｎ［ＩＣＳ］）≧ＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｌａｓｔ］）＋９０，０００×（８×ｖｉｄｅｏ＿ｗｉｄｔｈ×ｖｉｄｅｏ＿ｈｅｉｇｈｔ／／１２８，０００，０００）＋９０，０００×（ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）／／１２８，０００，０００）
以上のようにしてＰＴＳ、ＤＴＳを設定することにより、同期表示を実現する場合の一例を図２４に示す。本図において動画における任意のピクチャデータｐｙ１の表示タイミングで、ボタンを表示させる場合を想定する。この場合、ＩＣＳのＰＴＳ値は、このピクチャデータの表示時点になるよう設定せねばならない。
そしてＩＣＳのＰＴＳから、画面のクリア期間ｃｄ１、グラフィクスオブジェクトの転送期間ｔｄ１を差し引いた時刻に、ＤＳｎの初期表示を構成するＯＤＳのうち、デコード時刻が最も遅いＯＤＳのデコードが完了せねばならないから、図中の時点（★１）に、ＯＤＳのＰＴＳ値が設定しなければならない。更に、ＯＤＳのデコードには期間ｄｄ１を要するから、このＰＴＳより期間ｄｄ１だけ早い時点に、このＯＤＳのＤＴＳ値を設定せねばならない。
図２４において、動画と合成されるＯＤＳは１つだけであり、単純化されたケースを想定している。動画と合成されるべき対話画面の初期表示が、複数のＯＤＳで実現される場合、ＩＣＳのＰＴＳ及びＤＴＳ、ＯＤＳのＰＴＳ、ＤＴＳは図２５のように設定せねばならない。
図２５は、対話画面の初期表示が複数ＯＤＳにて構成され、デフォルトセレクテッドボタンが静的に確定している場合のＤＴＳ、ＰＴＳの設定を示す図である。初期表示を実現するＯＤＳのうち、デコードが最も遅いＳ−ＯＤＳｓｆｉｒｓｔのデコードが図中の期間ｄｄ１の経過時に終了するなら、このＳ−ＯＤＳｓｆｉｒｓｔのＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｆｉｒｓｔ］）は、期間ｄｄ１の経過時を示すよう設定される。
更に、初期表示の実現には、画面クリアを行い、デコードされたグラフィクスオブジェクトを転送せねばならないから、このＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｆｉｒｓｔ］）の値に画面クリアに要する期間（９０，０００×（８×ｖｉｄｅｏ＿ｗｉｄｔｈ×ｖｉｄｅｏ＿ｈｅｉｇｈｔ／／１２８，０００，０００））、デコードされたグラフィクスオブジェクトの転送期間（９０，０００×（ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）／／１２８，０００，０００））を足した時点以降を、ＩＣＳのＰＴＳ（ＤＳｎ［ＩＣＳ］）として設定せねばならない。
図２６は、対話画面の初期表示が複数ＯＤＳにて構成され、デフォルトセレクテッドボタンが未定である場合のＤＴＳ、ＰＴＳの設定を示す図である。初期表示を実現するＳ−ＯＤＳｓのうち、デコードが最も遅いＳ−ＯＤＳｓｌａｓｔのデコードが図中の期間ｄｄ２の経過時に終了するなら、このＳ−ＯＤＳｓｌａｓｔのＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｌａｓｔ］）は、期間ｄｄ２の経過時を示すように設定される。
更に、初期表示の実現には、画面クリアを行い、デコードされたグラフィクスオブジェクトを転送せねばならないから、このＰＴＳ（ＤＳｎ［Ｓ−ＯＤＳｓｌａｓｔ］）の値に画面クリアに要する期間（９０，０００×（８×ｖｉｄｅｏ＿ｗｉｄｔｈ×ｖｉｄｅｏ＿ｈｅｉｇｈｔ／／１２８，０００，０００））、デコードされたグラフィクスオブジェクトの転送期間（９０，０００×（ΣＳＩＺＥ（ＤＳｎ［ＩＣＳ．ＢＵＴＴＯＮ［ｉ］］）／／１２８，０００，０００））を足した時点以降を、ＩＣＳのＰＴＳ（ＤＳｎ［ＩＣＳ］）として設定せねばならない。以上がＩＣＳによる同期制御である。
ＤＶＤにおいて、対話制御が有効になる期間は、そのビデオストリームのＧＯＰにあたるＶＯＢＵの期間であったが、ＢＤ−ＲＯＭでは、Ｅｐｏｃｈに含まれるＩＣＳのＰＴＳ、ＤＴＳによりこの有効期間を任意に設定し得る。このためＢＤ−ＲＯＭにおける対話制御は、ＧＯＰとの依存性をもたない。
尚、ＩＣＳのＰＴＳによる同期制御は、再生時間軸上のあるタイミングでボタンを表示するという制御のみならず、再生時間軸上のある期間でＰｏｐｕｐメニューの表示を可能とする制御を含む。Ｐｏｐｕｐメニューとは、リモコン４００に設けられたメニューキーの押下でＰｏｐｕｐ表示されるメニューであり、このＰｏｐｕｐ表示が、ＡＶＣｌｉｐにおけるあるピクチャデータの表示タイミングで可能になることも、ＩＣＳのＰＴＳによる同期制御である。Ｐｏｐｕｐメニューを構成するＯＤＳは、ボタンを構成するＯＤＳと同様、ＯＤＳのデコードが完了し、デコードにより得られたグラフィックスオブジェクトがグラフィックプレーンに書き込まれる。このグラフィックプレーンへの書き込みが完了していなければ、ユーザからのメニューコールに応ずることはできない。そこでＰｏｐｕｐメニューの同期表示にあたって、ＩＣＳのＰＴＳに、Ｐｏｐｕｐ表示が可能になる時刻を示しておくのである。
以上説明したＤｉｓｐｌａｙ  Ｓｅｔ（ＩＣＳ、ＰＤＳ、ＯＤＳ）のデータ構造は、プログラミング言語で記述されたクラス構造体のインスタンスであり、オーサリングを行う制作者は、このクラス構造体を記述することにより、ＢＤ−ＲＯＭ上のこれらのデータ構造を得ることができる。
以上が本発明に係る記録媒体の実施形態である。続いて本発明に係る再生装置の実施形態について説明する。図２７は、本発明に係る再生装置の内部構成を示す図である。本発明に係る再生装置は、本図に示す内部に基づき、工業的に生産される。本発明に係る再生装置は、主としてシステムＬＳＩと、ドライブ装置、マイコンシステムという３つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装することで工業的に生産することができる。システムＬＳＩは、再生装置の機能を果たす様々な処理部を集積した集積回路である。こうして生産される再生装置は、ＢＤドライブ１、トラックバッファ２、ＰＩＤフィルタ３、Ｔｒａｎｓｐｏｒｔ  Ｂｕｆｆｅｒ４ａ，ｂ，ｃ、周辺回路４ｄ、ビデオデコーダ５、ビデオプレーン６、オーディオデコーダ７、グラフィクスプレーン８、ＣＬＵＴ部９、加算器１０、グラフィクスデコーダ１２、Ｃｏｄｅｄ  Ｄａｔａバッファ１３、周辺回路１３ａ、Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６、Ｇｒａｐｈｉｃｓコントローラ１７、ＵＯコントローラ１８、プレーヤレジスタ群１９、制御部２０から構成される。
ＢＤ−ＲＯＭドライブ１は、ＢＤ−ＲＯＭのローディング／リード／イジェクトを行い、ＢＤ−ＲＯＭに対するアクセスを実行する。
トラックバッファ２は、ＦＩＦＯメモリであり、ＢＤ−ＲＯＭから読み出されたＴＳパケットが先入れ先出し式に格納される。
ＰＩＤフィルタ３は、トラックバッファ２から出力される複数ＴＳパケットに対してフィルタリングを施す。ＰＩＤフィルタ３によるフィルタリングは、ＴＳパケットのうち、所望のＰＩＤをもつもののみをＴｒａｎｓｐｏｒｔ  Ｂｕｆｆｅｒ４ａ，ｂ，ｃに書き込むことでなされる。ＰＩＤフィルタ３によるフィルタリングでは、バッファリングは必要ではない。従って、ＰＩＤフィルタ３に入力されたＴＳパケットは、時間遅延なく、Ｔｒａｎｓｐｏｒｔ  Ｂｕｆｆｅｒ４ａ，ｂ，ｃに書き込まれる。
Ｔｒａｎｓｐｏｒｔ  Ｂｕｆｆｅｒ４ａ，ｂ，ｃは、ＰＩＤフィルタ３から出力されたＴＳパケットを先入れ先出し式に格納しておくメモリである。
周辺回路４ｄは、Ｔｒａｎｓｐｏｒｔ  Ｂｕｆｆｅｒ４ａから読み出されたＴＳパケットを、機能セグメントに変換する処理を行うワイアロジックである。変換により得られた機能セグメントはＣｏｄｅｄ  Ｄａｔａバッファ１３に格納される。
ビデオデコーダ５は、ＰＩＤフィルタ３から出力された複数ＴＳパケットを復号して非圧縮形式のピクチャを得てビデオプレーン６に書き込む。
ビデオプレーン６は、動画用のプレーンである。
オーディオデコーダ７は、ＰＩＤフィルタ３から出力されたＴＳパケットを復号して、非圧縮形式のオーディオデータを出力する。
グラフィクスプレーン８は、一画面分の領域をもったメモリであり、一画面分の非圧縮グラフィクスを格納することができる。
ＣＬＵＴ部９は、グラフィクスプレーン８に格納された非圧縮グラフィクスにおけるインデックスカラーを、ＰＤＳに示されるＹ，Ｃｒ，Ｃｂ値に基づき変換する。
加算器１０は、ＣＬＵＴ部９により色変換された非圧縮グラフィクスに、ＰＤＳに示されるＴ値（透過率）を乗じて、ビデオプレーン６に格納された非圧縮状態のピクチャデータと画素毎に加算し、合成画像を得て出力する。
グラフィクスデコーダ１２は、グラフィクスストリームをデコードして、非圧縮グラフィクスを得て、これをグラフィクスオブジェクトとしてグラフィクスプレーン８に書き込む。グラフィクスストリームのデコードにより、字幕やメニューが画面上に現れることになる。このグラフィクスデコーダ１２は、Ｃｏｄｅｄ  Ｄａｔａバッファ１３、周辺回路１３ａ、Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６、Ｇｒａｐｈｉｃｓコントローラ１７から構成される。
Ｃｏｄｅ  Ｄａｔａ  Ｂｕｆｆｅｒ１３は、機能セグメントがＤＴＳ、ＰＴＳと共に格納されるバッファである。かかる機能セグメントは、Ｔｒａｎｓｐｏｒｔ  Ｂｕｆｆｅｒ４ａに格納されたトランスポートストリームの各ＴＳパケットから、ＴＳパケットヘッダ、ＰＥＳパケットヘッダを取り除き、ペイロードをシーケンシャルに配列することにより得られたものである。取り除かれたＴＳパケットヘッダ、ＰＥＳパケットヘッダのうち、ＰＴＳ／ＤＴＳは、ＰＥＳパケットと対応付けて格納される。
周辺回路１３ａは、Ｃｏｄｅｄ  Ｄａｔａバッファ１３−Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４間の転送、Ｃｏｄｅｄ  Ｄａｔａバッファ１３−Ｃｏｍｐｏｓｉｔｉｏｎバッフー１６間の転送を実現するワイヤロジックである。この転送処理において現在時点がＯＤＳのＤＴＳに示される時刻になれば、ＯＤＳを、Ｃｏｄｅｄ  Ｄａｔａバッファ１３からＳｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４に転送する。また現在時刻がＩＣＳ、ＰＤＳのＤＴＳに示される時刻になれば、ＩＣＳ、ＰＤＳをＣｏｍｐｏｓｉｔｉｏｎバッファ１６に転送するという処理を行う。
Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｏｒ１４は、ＯＤＳをデコードして、デコードにより得られたインデックスカラーからなる非圧縮状態の非圧縮グラフィクスをグラフィクスオブジェクトとしてＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に書き込む。このＳｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４によるデコードは、ＯＤＳに関連付けられたＤＴＳの時刻に開始し、ＯＤＳに関連付けられたＰＴＳに示されるデコード終了時刻までに終了する。上述したグラフィックスオブジェクトのデコードレートＲｄは、このＳｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４の出力レートである。
Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５には、Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４のデコードにより得られたグラフィクスオブジェクトが配置される。図２８は、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５の格納内容をグラフィクスプレーン８と対比して示す図である。この格納内容は、図１６、図１７に示した具体例のＯＤＳが、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に書き込まれる場合を想定している。図１６、図１７の具体例は、４つのボタンのアニメーションを、３６個のＯＤＳ（ＯＤＳ１１〜４９）により実現するものであったが、このアニメーションの全てのコマを表すＯＤＳが、このＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に格納される。一方グラフィクスプレーン８には、このＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に格納された個々のＯＤＳの表示位置が規定されれる。この表示位置は、各ボタン情報のＢｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ、Ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎにより定義されるものであり、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に格納されている複数ＯＤＳのそれぞれを、１コマずつ転送してグラフィクスプレーン８の表示位置に書き込んでゆくことにより、アニメーションは実現される。
Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６は、ＩＣＳ、ＰＤＳが配置されるメモリである。
Ｇｒａｐｈｉｃｓコントローラ１７は、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６に配置されたＩＣＳを解読して、ＩＣＳに基づく制御をする。この制御の実行タイミングは、ＩＣＳに付加されたＰＴＳの値に基づく。このＧｒａｐｈｉｃｓコントローラ１７のうち、重要なものは対話画面の初期表示時、更新時における書込処理である。以降、Ｇｒａｐｈｉｃｓコントローラ１７による対話画面の初期表示時、更新時における書込処理を、図２９を参照しながら説明する。図２９は、初期表示時におけるＧｒａｐｈｉｃｓコントローラ１７の処理を示す図である。本図に示すように、ボタンＡにおけるボタン情報のＢｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ、Ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎに規定される表示位置に、ボタンＡのＳ−ＯＤＳｓに属するＯＤＳを書き込み、ボタンＢ，Ｃ，Ｄにおけるボタン情報のＢｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ、Ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎに規定される表示位置に、ボタンＢ，Ｃ，ＤのＮ−ＯＤＳｓに属するＯＤＳを書き込むようＧｒａｐｈｉｃｓコントローラ１７は制御を行う（図中の矢印ｗ１，ｗ２，ｗ３，ｗ４は、この書き込みを象徴的に示す）。この書き込みにより、図２０に示した初期表示を作成することができる。ここで注目すべきは、対話画面の初期表示にあたっては、全てのＯＤＳが必要ではなく、デフォルトセレクテッドボタンのＳ−ＯＤＳｓに属するＯＤＳ、それ以外のボタンのＮ−ＯＤＳｓに属するＯＤＳさえＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に存在すれば、対話画面の初期表示は完了する点である。このことから、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に格納されるべき複数ＯＤＳのうち、デフォルトセレクテッドボタンのＳ−ＯＤＳｓに属するＯＤＳ、それ以外のボタンのＮ−ＯＤＳｓに属するＯＤＳのデコードさえ完了すれば、Ｇｒａｐｈｉｃｓコントローラ１７は対話画面の初期表示のための書き込みを開始することができる。
図３０は、１ｓｔＵｓｅｒＡｃｔｉｏｎ（ＭｏｖｅＲｉｇｈｔ）による対話画面更新時におけるＧｒａｐｈｉｃｓコントローラ１７の処理を示す図である。本図に示すように、ボタンＢのボタン情報におけるボタン情報のＢｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ、Ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎに規定される表示位置に、ボタンＢのＳ−ＯＤＳｓに属するＯＤＳを書き込み、ボタンＡのボタン情報におけるボタン情報のＢｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ、Ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎに規定される表示位置に、ボタンＡのＮ−ＯＤＳｓに属するＯＤＳを書き込むようＧｒａｐｈｉｃｓコントローラ１７は制御を行う（図中の矢印ｗ５，ｗ６，ｗ７，ｗ８は、この書き込みを象徴的に示す）。この書き込みにより、図２０に示したような状態遷移を実現することができる。ボタンＣ，Ｄは対話画面の初期表示時と同じくノーマル状態のままであるが、アニメーションを継続するため、グラフィクスプレーン８への書き込みが継続してなされている。
同じく、１ｓｔＵｓｅｒＡｃｔｉｏｎが、ＭｏｖｅＤｏｗｎ，Ａｃｔｉｖａｔｅｄである場合の、対話画面更新時におけるＧｒａｐｈｉｃｓコントローラ１７の処理を図３１、図３２に示す。対話画面更新にあたっては、デフォルトセレクテッドボタン以外のボタンについてのＳ−ＯＤＳｓや、Ａ−ＯＤＳｓも必要になり、全てのＯＤＳがＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に格納されていることが望まれる。以上がＧｒａｐｈｉｃｓコントローラ１７の処理内容である。
ＵＯコントローラ１８は、リモコンや再生装置のフロントパネルに対してなされたユーザ操作を検出して、ユーザ操作を示す情報（以降ＵＯ（Ｕｓｅｒ  Ｏｐｅｒａｔｉｏｎ）という）を制御部２０に出力する。
プレーヤレジスタ群１９は、制御部２０に内蔵されるレジスタであり、３２個のＰｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒと、３２個のＧｅｎｅｒａｌ  Ｐｕｒｐｐｏｓｅ  Ｒｅｇｉｓｔｅｒとからなる。Ｐｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒの設定値（ＰＳＲ）がどのような意味をもつかは、以下に示す通りである。以下のＰＳＲ（ｘ）という表記は、ｘ番目のＰｌａｙｅｒ  Ｓｔａｔｕｓ  Ｒｅｇｉｓｔｅｒの設定値を意味する。
ＰＳＲ（０）          ：  デコード対象たるインタラクティブグラフィクスストリームのストリーム番号
ＰＳＲ（１）          ：  デコード対象たるオーディオストリームのストリーム番号
ＰＳＲ（２）          ：  デコード対象たるプレゼンテーショングラフィクスストリームのストリーム番号
ＰＳＲ（３）          ：  ユーザによるアングル設定を示す番号
ＰＳＲ（４）          ：  現在再生対象とされているタイトルの番号
ＰＳＲ（５）          ：  現在再生対象とされているＣｈａｐｔｅｒの番号
ＰＳＲ（６）          ：  現在再生対象とされているＰＬの番号
ＰＳＲ（７）          ：  現在再生対象とされているＰｌａｙＩｔｅｍの番号
ＰＳＲ（８）          ：  現在の再生時点を示す時刻情報
ＰＳＲ（９）          ：  ナビゲーションタイマのカウント値
ＰＳＲ（１０）          ：  現在セレクテッド状態にあるボタンの番号
ＰＳＲ（１１）〜（１２）：  Ｒｅｓｅｒｖｅｄ
ＰＳＲ（１３）          ：  ユーザによるパレンタルレベルの設定
ＰＳＲ（１４）          ：  再生装置の映像再生に関する設定
ＰＳＲ（１５）          ：  再生装置の音声再生に関する設定
ＰＳＲ（１６）          ：  再生装置における音声設定を示す言語コード
ＰＳＲ（１７）          ：  再生装置における字幕設定を示す言語コード
ＰＳＲ（１８）          ：  メニュー描画のための言語設定
ＰＳＲ（１９）〜（６３）：  Ｒｅｓｅｒｖｅｄ
ＰＳＲ（８）は、ＡＶＣｌｉｐに属する各ピクチャデータが表示される度に更新される。つまり再生装置が新たなピクチャデータを表示させれば、その新たなピクチャデータの表示開始時刻（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ）を示す値にＰＳＲ（８）は更新される。このＰＳＲ（８）を参照すれば、現在の再生時点を知得することができる。
制御部２０は、グラフィクスデコーダ１２との双方向のやりとりを通じて、統合制御を行う。制御部２０からグラフィクスデコーダ１２へのやりとりとは、ＵＯコントローラ１８が受け付けたＵＯを、グラフィクスデコーダ１２に出力することである。グラフィクスデコーダ１２から制御部２０へのやりとりとは、ＩＣＳに含まれるボタンコマンドを制御部２０に出力することである。
以上のように構成された再生装置において、各構成要素はパイプライン式にデコード処理を行う。
図３３は、再生装置によるパイプライン処理を示すタイミングチャートである。第４段目は、ＢＤ−ＲＯＭにおけるＤｉｓｐｌａｙ  Ｓｅｔを示し、第３段目は、Ｃｏｄｅｄ  Ｄａｔａバッファ１３へのＩＣＳ、ＰＤＳ、ＯＤＳの読出期間を示す。第２段目は、Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４による各ＯＤＳのデコード期間を示す。第１段目は、Ｇｒａｐｈｉｃｓコントローラ１７による処理期間を示す。各ＯＤＳのデコード開始時刻は、図中のＤＴＳ１１，ＤＴＳ１２，ＤＴＳ１３に示されている。Ｃｏｄｅｄ  Ｄａｔａバッファ１３へのＮ−ＯＤＳｓに属する最初のＯＤＳ（Ｎ−ＯＤＳｓ［ＯＤＳ１］）の格納はＤＴＳ１１までに完了し、Ｃｏｄｅｄ  Ｄａｔａバッファ１３へのＮ−ＯＤＳｓに属する最後のＯＤＳ（Ｎ−ＯＤＳｓ［ＯＤＳｎ］）の格納は、ＤＴＳ１２に示される時刻までに完了する。このように各ＯＤＳは、自身のＤＴＳに示される時刻までにＣｏｄｅｄ  Ｄａｔａバッファ１３への読み出しが完了している。
一方、各ＯＤＳのデコード終了時刻は、図中のＰＴＳ１１，ＰＴＳ１２，ＰＴＳ１３に示されている。Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４によるＮ−ＯＤＳｓ（ＯＤＳ１）のデコードはＰＴＳ１１までに完了し、Ｎ−ＯＤＳｓ（ＯＤＳｎ）のデコードは、ＰＴＳ１２に示される時刻までに完了する。以上のように、各ＯＤＳのＤＴＳに示される時刻までに、ＯＤＳをＣｏｄｅｄ  Ｄａｔａバッファ１３に読み出し、Ｃｏｄｅｄ  Ｄａｔａバッファ１３に読み出されたＯＤＳを、各ＯＤＳのＰＴＳに示される時刻までに、デコードしてＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に書き込む。これらの処理を、１つのＳｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４は、パイプライン式に行う。
デフォルトセレクテッドボタンが静的に確定している場合、対話画面の初期表示に必要なグラフィクスオブジェクトがＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５上で全て揃うのは、ノーマル状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループ、セレクテッド状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループの先頭ＯＤＳのデコードが完了した時点である。本図でいえば、ＰＴＳ１３に示される時点で、対話画面の初期表示に必要なグラフィクスオブジェクトは全て揃う。
本図の第１段目における期間ｃｄ１は、Ｇｒａｐｈｉｃｓコントローラ１７がグラフィクスプレーン８をクリアするのに要する期間である。また期間ｔｄ１は、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５上にえられたグラフィクスオブジェクトのうち、対話画面の最初の一枚を構成するグラフィクスオブジェクトを、グラフィクスプレーン８に書き込むのに要する期間である。グラフィクスプレーン８における書込先は、ＩＣＳにおけるｂｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ，ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎに示されている場所である。つまりＯＤＳのＰＴＳ１３の値に、画面クリアの期間ｃｄ１と、デコードにより得られたグラフィクスオブジェクトの書込期間ｔｄ１とを足し合わせれば、対話画面を構成する非圧縮グラフィクスがグラフィクスプレーン８上に得られることになる。この非圧縮グラフィクスの色変換をＣＬＵＴ部９に行わせ、ビデオプレーン６に格納されている非圧縮ピクチャとの合成を加算器１０に行わせれば、合成画像が得られることになる。
Ｄｉｓｐｌａｙ  Ｓｅｔに含まれる全てのＯＤＳをデコードした上で初期表示を行う場合と比較すると、セレクテッド状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループ、アクティブ状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループのデコード完了を待つことなく、初期表示は可能になるので、図中の期間ｈｙ１だけ、初期表示の実行は早められることになる。
尚、本図におけるＯＤＳ１〜ＯＤＳｎという表記は、「１」，「ｎ」というような同じ番号が付されているが、これらＮ−ＯＤＳｓ，Ｓ−ＯＤＳｓ，Ａ−ＯＤＳｓに属するＯＤＳは別々のものである。以降、同様の表記の図は同じ意味であるとする。
グラフィクスデコーダ１２において、Ｇｒａｐｈｉｃｓコントローラ１７がグラフィクスプレーン８のクリアやグラフィクスプレーン８への書き込みを実行している間においても、Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４のデコードは継続して行われる（第２段目のＯＤＳｎのデコード期間，ＯＤＳ１のデコード期間，ＯＤＳｎのデコード期間ｎ，）。Ｇｒａｐｈｉｃｓコントローラ１７によるグラフィクスプレーン８のクリアやグラフィクスプレーン８への書き込みが行われている間に、残りのＯＤＳに対するデコードは、継続してなされるので、残りのＯＤＳのデコードは早く完了する。残りのＯＤＳのデコードが早く完了することにより対話画面を更新するための準備は早く整うので、これら残りのＯＤＳを用いた対話画面更新も、ユーザ操作に即応することができる。以上のようなパイプライン処理により、対話画面の初期表示、更新の双方を迅速に実施することができる。
図３３ではデフォルトセレクテッドボタンが静的に確定している場合を想定したが、図３４は、デフォルトセレクテッドボタンが動的に変わる場合の、再生装置によるパイプライン処理を示すタイミングチャートである。デフォルトセレクテッドボタンが動的に変わる場合、ｂｕｔｔｏｎ−ｓｔａｔｅグループに属する全てのＯＤＳをデコードして、グラフィクスオブジェクトをグラフィクスプレーン８に得れば、初期表示に必要なグラフィクスオブジェクトは全て揃う。Ｄｉｓｐｌａｙ  Ｓｅｔに含まれる全てのＯＤＳをデコードした上で初期表示を行う場合と比較すると、アクティブ状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループのデコード完了を待つことなく、初期表示は可能になる。そのため図中の期間ｈｙ２だけ、初期表示の実行は早められることになる。
以上が再生装置の内部構成である。続いて制御部２０及びグラフィクスデコーダ１２を、どのようにして実装するかについて説明する。制御部２０は、図３５、図３６の処理手順を行うプログラムを作成し、汎用ＣＰＵに実行させることにより実装可能である。以降、図３５、図３６を参照しながら、制御部２０の処理手順について説明する。
図３５は、制御部２０によるＬｉｎｋＰＬ関数の実行手順を示すフローチャートである。ＬｉｎｋＰＬ関数を含むコマンドの解読時において、制御部２０は本図のフローチャートに従って、処理を行う。
本フローチャートにおいて処理対象たるＰｌａｙＩｔｅｍをＰＩｙ、処理対象たるＡＣＣＥＳＳ  ＵＮＩＴをＡＣＣＥＳＳ  ＵＮＩＴｖとする。本フローチャートは、ＬｉｎｋＰＬの引数で指定されたカレントＰＬ情報（．ｍｐｌｓ）の読み込みを行い（ステップＳ１）、カレントＰＬ情報の先頭のＰＩ情報をＰＩｙにする（ステップＳ２）。そしてＰＩｙのＣｌｉｐ＿ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅで指定されるＣｌｉｐ情報を読み込む（ステップＳ３）。
Ｃｌｉｐ情報を読み込めば、カレントＣｌｉｐ情報のＥＰ＿ｍａｐを用いてＰＩｙのＩＮ＿ｔｉｍｅを、アドレスに変換する（ステップＳ４）。そして変換アドレスにより特定されるＡＣＣＥＳＳ  ＵＮＩＴをＡＣＣＥＳＳ  ＵＮＩＴｖにする（ステップＳ５）。一方、ＰＩｙのＯｕｔ＿ｔｉｍｅを，カレントＣｌｉｐ情報のＥＰ＿ｍａｐを用いてアドレスに変換する（ステップＳ６）。そして、その変換アドレスにより特定されるＡＣＣＥＳＳ  ＵＮＩＴをＡＣＣＥＳＳ  ＵＮＩＴｗにする（ステップＳ７）。
こうしてＡＣＣＥＳＳ  ＵＮＩＴｖ，ｗが決まれば、ＡＣＣＥＳＳ  ＵＮＩＴｖからＡＣＣＥＳＳ  ＵＮＩＴｗまでの読み出しをＢＤドライブに命じ（ステップＳ８）、ＰＩｙのＩＮ＿ｔｉｍｅからＯｕｔ＿ｔｉｍｅまでのデコード出力をビデオデコーダ５、オーディオデコーダ７、グラフィクスデコーダ１２に命じる（ステップＳ９）。
ステップＳ１１は、本フローチャートの終了判定であり、ＰＩｙが最後のＰＩになったかを判定している。もしステップＳ１１がＹｅｓなら本フローチャートを終了し、そうでないなら、ＰＩｙを次のＰｌａｙＩｔｅｍに設定して（ステップＳ１２）、ステップＳ３に戻る。以降、ステップＳ１１がＹｅｓと判定されるまで、ステップＳ１〜ステップＳ１０の処理は繰り返される。
ステップＳ１０は、ＡＣＣＥＳＳ  ＵＮＩＴの読み出しにともなって機能セグメントをＣｏｄｅｄ  Ｄａｔａバッファ１３にロードするステップである。
図３６は、機能セグメントのロード処理の処理手順を示すフローチャートである。本フローチャートにおいてＳｅｇｍｅｎｔＫとは、ＡＣＣＥＳＳ  ＵＮＩＴと共に読み出されたＳｅｇｍｅｎｔ（ＩＣＳ，ＯＤＳ，ＰＤＳ）のそれぞれを意味する変数であり、無視フラグは、このＳｅｇｍｅｎｔＫを無視するかロードするかを切り換えるフラグである。本フローチャートは、無視フラグを０に初期化した上で、ステップＳ２１〜Ｓ２４、ステップＳ２７〜Ｓ３５の処理を全てのＳｅｇｍｅｎｔＫについて繰り返すループ構造を有している（ステップＳ２５、ステップＳ２６）。
ステップＳ２１は、ＳｅｇｍｅｎｔＫがＩＣＳであるか否かの判定であり、もしＳｅｇｍｅｎｔＫがＩＣＳであれば、ステップＳ２７、ステップＳ２８の判定を行う。
ステップＳ２７は、ＩＣＳにおけるＳｅｇｍｅｎｔ＿ＴｙｐｅがＡｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔであるか否かの判定である。ＳｅｇｍｅｎｔＫがＡｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔであるなら、ステップＳ２８に移行し、ＳｅｇｍｅｎｔＫがもしＥｐｏｃｈ  ＳｔａｒｔかＮｏｒｍａｌ  Ｃａｓｅであるなら、ステップＳ３３に移行する。
ステップＳ２８は、先行するＤＳがグラフィクスデコーダ１２内のどれかのバッファ（Ｃｏｄｅｄ  Ｄａｔａバッファ１３、Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６）に存在するかどうかの判定であり、ステップＳ２７がＹｅｓである場合に実行される。グラフィクスデコーダ１２内にＤＳが存在しないケースとは、頭出しがなされたケースをいう。この場合、Ａｃｑｕｉｓｉｔｉｏｎ  ＰｏｉｎｔたるＤＳから、表示を開始せねばならないので、ステップＳ３０に移行する（ステップＳ２８でＮｏ）。
グラフィクスデコーダ１２に先行するＤＳが存在する場合は（ステップＳ２８でＹｅｓ）、無視フラグを１に設定して（ステップＳ２９）、ステップＳ３１に移行する。
ステップＳ３１は、ｃｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇが１であるか否かの判定である。もし１であるなら（ステップＳ３１でＹｅｓ）、ボタン情報のボタンコマンドのみをＣｏｄｅｄ  Ｄａｔａバッファ１３にロードし、それ以外を無視する（ステップＳ３２）。もし０であるなら、ステップＳ２２に移行する。これによりＡｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔを示すＩＣＳは無視されることになる（ステップＳ２４）。
無視フラグが１に設定されていれば、Ａｃｑｕｉｓｉｔｉｏｎ  ＰｏｉｎｔたるＤＳに属する機能セグメントは全て、ステップＳ２２がＮｏになって、無視されることになる。
ステップＳ３３は、ＩＣＳにおけるＳｅｇｍｅｎｔ＿ＴｙｐｅがＮｏｒｍａｌ  Ｃａｓｅであるか否かの判定である。ＳｅｇｍｅｎｔＫがＥｐｏｃｈ  Ｓｔａｒｔであるなら、ステップＳ３０において無視フラグを０に設定する。
無視フラグが０であれば（ステップＳ２２でＹｅｓ）、ＳｅｇｍｅｎｔＫをＣｏｄｅｄ  Ｄａｔａバッファ１３にロードし（ステップＳ２３）、
ＳｅｇｍｅｎｔＫがもしＮｏｒｍａｌ  Ｃａｓｅであるなら、ステップＳ３４に移行する。ステップＳ３４は、ステップＳ２８と同じであり、先行するＤＳがグラフィクスデコーダ１２内に存在するかどうかの判定を行う。もし存在するなら、無視フラグを０に設定する（ステップＳ３０）。存在しないなら、元々、対話画面を構成する充分な機能セグメントが得られないため、無視フラグを１に設定する（ステップＳ３５）。かかるフラグ設定により、先行するＤＳがグラフィクスデコーダ１２に存在しない場合、Ｎｏｒｍａｌ  Ｃａｓｅを構成する機能セグメントは無視されることになる。
ＤＳが、図３７のように多重化されている場合を想定して、ＤＳの読み出しがどのように行われるかを説明する。図３７の一例では、３つのＤＳが動画と多重化されている。この３つのＤＳのうち、初めのＤＳ１は、Ｓｅｇｍｅｎｔ＿ＴｙｐｅがＥｐｏｃｈ＿Ｓｔａｒｔであり、Ｃｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇが０に設定され、ＬｉｎｋＰＬ（ＰＬ＃５）というボタンコマンドを含む。
ＤＳ１０は、ＤＳ１のｄｕｐｌｉｃａｔｅであり、Ｓｅｇｍｅｎｔ＿ＴｙｐｅはＡｃｑｕｉｓｉｏｎ  Ｐｏｉｎｔ、Ｃｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇが０に設定され、ＬｉｎｋＰＬ（ＰＬ＃５）というボタンコマンドを含む。
ＤＳ２０は、ＤＳ１のＩｎｈｅｒｉｔであり、Ｓｅｇｍｅｎｔ＿ＴｙｐｅはＡｃｑｕｉｓｉｏｎ  Ｐｏｉｎｔになっている。ＤＳ１から変化があるのはボタンコマンドであり（ＬｉｎｋＰＬ（ＰＬ＃１０））、これを示すべくＣｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇが１に設定されている。
かかる３つのＤＳが、動画と多重化されているＡＶＣｌｉｐにおいて、ピクチャデータｐｔ１０からの頭出しが行われたものとする。この場合、頭出し位置に最も近いＤＳ１０が、図３６のフローチャートの対象となる。ステップＳ２７においてｓｅｇｍｅｎｔ＿ｔｙｐｅはＡｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔと判定されるが、先行するＤＳはグラフィクスデコーダ１２内に存在しないため、無視フラグは０に設定され、このＤＳ１０が図３８に示すように再生装置のＣｏｄｅｄ  Ｄａｔａバッファ１３にロードされる。一方、頭出し位置がＤｉｓｐｌａｙ  Ｓｅｔの存在位置より後である場合は（図３７の破線ｈｓｔ１）、Ｄｉｓｐｌａｙ  Ｓｅｔ１０に後続するＤｉｓｐｌａｙ  Ｓｅｔ２０（図３８のｈｓｔ２）がＣｏｄｅｄ  Ｄａｔａバッファ１３に読み出される。
図３９のように通常再生が行われた場合のＤＳ１，１０，２０のロードは、図４０に示すものとなる。３つのＤＳのうち、ＩＣＳのＳｅｇｍｅｎｔ＿ＴｙｐｅがＥｐｏｃｈ  ＳｔａｒｔであるＤＳ１は、そのままＣｏｄｅｄ  Ｄａｔａバッファ１３にロードされるが（ステップＳ２３）、ＩＣＳのＳｅｇｍｅｎｔ＿ＴｙｐｅがＡｃｑｕｉｓｉｔｉｏｎ  ＰｏｉｎｔであるＤＳ１０については、無視フラグが１に設定されるため（ステップＳ２９）、これを構成する機能セグメントはＣｏｄｅｄ  Ｄａｔａバッファ１３にロードされず無視される（ステップＳ２４）。またＤＳ２０については、ＩＣＳのＳｅｇｍｅｎｔ＿ＴｙｐｅはＡｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔであるが、Ｃｏｍｍａｎｄ＿ｕｐｄａｔｅ＿ｆｌａｇが１に設定されているので、ステップＳ３１がＹｅｓになり、ボタンコマンドのみがロードされて、Ｃｏｄｅｄ  Ｄａｔａバッファ１３上のＤＳのうち、ＩＣＳ内のボタンコマンドのみをこれに置き換えられる（ステップＳ３２）。しかし無視フラグは依然として１を示しているので、このボタンコマンド以外は、ロードされることなく無視される。
ＤＳによる表示内容は同じであるが、ＤＳ２０への到達時には、ボタンコマンドは、ＤＳのＬｉｎｋＰＬ（＃５）からＬｉｎｋＰＬ（＃１０）に置き換えられている。かかる置き換えにより、再生進行に伴い、ボタンコマンドの内容が変化するという制御が可能になる。続いてＧｒａｐｈｉｃｓコントローラ１７の処理手順について説明する。図４１はＧｒａｐｈｉｃｓコントローラ１７の処理手順のうち、メインルーチンにあたる処理を描いたフローチャートである。本フローチャートは、タイムスタンプ同期処理（ステップＳ３５）、アニメーション表示処理（ステップＳ３６）、ＵＯ処理（ステップＳ３７）という３つの処理を繰り返し実行するというものである。
図４２は、タイムスタンプによる同期制御の処理手順を示すフローチャートである。本フローチャートは、ステップＳ４１、Ｓ４３〜ステップＳ４７の何れかの事象が成立しているかどうかを判定し、もしどれかの事象が成立すれば、該当する処理を実行してメインルーチンにリターンするというサブルーチンを構成する。
ステップＳ４１は、現在の再生時点がＳ−ＯＤＳｓｆｉｒｓｔのＰＴＳに示される時刻であるか、Ｓ−ＯＤＳｓｌａｓｔのＰＴＳに示される時刻であるかの判定であり、もしそうであるなら、ステップＳ４２において期間αを算出する。期間αとは、グラフィクスプレーンのクリアに要する時間（２）、ＯＤＳのデコードにより得られたグラフィクスオブジェクトをグラフィクスプレーンに書き込む書込時間（３）を足し合わせた期間である。
ステップＳ４２においてＧｒａｐｈｉｃａｌコントローラ１７は、ＩＣＳのＳｅｇｍｅｎｔ＿Ｔｙｐｅを参照し、もしＳｅｇｍｅｎｔ＿ＴｙｐｅがＥｐｏｃｈ  ｓｔａｒｔなら、プレーンクリア期間（２）＋プレーン書込期間（３）をαとする。Ａｃｑｕｉｓｉｔｉｏｎ  Ｐｏｉｎｔならプレーン書込期間（３）をαとする。またプレーン書込期間（３）の算出にあたっては、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが有効な値であれば図２３（ａ）の計算で、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが＝０であれば図２３（ｂ）の計算で算出する。こうして期間αを算出した後、ループ処理にリターンする。
ステップＳ４３は、現在の再生時点がＩＣＳのＰＴＳ−αに示される時刻であるかの判定であり、もしそうであれば、グラフィクスプレーン８への書き込み処理を行って（ステップＳ５１）、メインルーチンにリターンする。
ステップＳ４５は、現在の再生時点がＩＣＳのＰＴＳであるかの判定である。もしそうであれば、グラフィクスプレーン８の格納内容の出力を開始させる。この格納内容の出力先は、ＣＬＵＴ部９であり、ＣＬＵＴ部９により色変換がなされた上で、対話画面はビデオプレーン６の格納内容と合成される。これにより初期表示が実行される（ステップＳ５２）。そして変数ａｎｉｍａｔｉｏｎ（ｐ）（ｐ＝１，２，３・・・ｎ）を０を設定して（ステップＳ５３）、メインルーチンにリターンする。ここで変数ａｎｉｍａｔｉｏｎ（ｐ）とは、ボタン（ｐ）のアニメーション表示を実行するにあたって、今何コマ目を表示しているかを示すグローバル変数（複数フローチャートにわたって有効になる変数）である。ステップＳ５３では、全てのボタンについてのボタン（ｐ）が、０に設定されることになる。
ステップＳ４６、ステップＳ４７は、ＩＣＳに記述された時間情報に現在の再生時点が到達したかどうかの判定である。
ステップＳ４６は、現在の再生時点がｓｅｌｅｃｔｉｏｎ＿ＴｉｍｅＯｕｔ＿ＰＴＳに示される時刻であるかの判定であり、もしそうであれば、ｄｅｆａｕｔ＿ａｃｔｉｖａｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒで指定されるボタンをアクティベートする処理を行い、メインルーチンにリターンする（ステップＳ５４）。
ステップＳ４７は、現在の再生時点がＣｏｍｐｏｓｉｔｉｏｎ＿ＴｉｍｅＯｕｔ＿ＰＴＳであるかの判定であり、もしそうであれば、画面クリアを行ってメインルーチンにリターンする（ステップＳ５５）。以上がタイムスタンプによる同期処理である。この同期処理において、ステップＳ５１、ステップＳ５４の処理手順は、サブルーチン化されている。ステップＳ５１のサブルーチンの処理手順を、図４３を参照しながら説明する。
図４３は、メニューの初期表示をグラフィクスプレーン８へ書き込む処理の処理手順を示すフローチャートである。ステップＳ６４は、ＩＣＳにおけるＳｅｇｍｅｎｔ＿ｔｙｐｅがＥｐｏｃｈ  Ｓｔａｒｔであるか否かの判定であり、もしＥｐｏｃｈ  ＳｔａｒｔであればステップＳ６５においてグラフィクスプレーン８をクリアしてから、ステップＳ６６〜ステップＳ７３の処理を行う。グラフィクスプレーン８のクリアに要する期間が、図２５、図２６の期間ｃｄ１である。もしＥｐｏｃｈ  ＳｔａｒｔでなければステップＳ６５をスキップしてステップＳ６６〜ステップＳ７３の処理を行う。
ステップＳ６６〜ステップＳ７３は、ＩＣＳにおける各ボタン情報について繰り返されるループ処理を形成している（ステップＳ６６、ステップＳ６７）。本ループ処理において処理対象になるべきボタン情報をボタン情報（ｐ）という。
ステップＳ６７は、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒによる指定が有効であるか否かの判定であり、ステップＳ６８は、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）はｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒにより指定されたデフォルトセレクテッドボタンに対応するボタン情報であるかの判定である。
デフォルトセレクテッドボタンに対応するボタン情報でないなら、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）のｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏに指定されているｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌのグラフィクスオブジェクトを、グラフィクスオブジェクト（ｐ）としてＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５から特定する（ステップＳ６９）。
デフォルトセレクテッドボタンに対応するボタン情報であるなら、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）のｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏに指定されているｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄのグラフィクスオブジェクトを、グラフィクスオブジェクト（ｐ）としてＯｂｊｅｃｔ  Ｂｕｆｆｅｒ１５から特定して（ステップＳ７０）、ボタン（ｐ）をカレントボタンにする（ステップＳ７１）。カレントボタンとは、現在表示中の対話画面において、セレクテッド状態になっているボタンであり、再生装置はこのカレントボタンの識別子を、ＰＳＲ（１０）として格納している。
ステップＳ６９、ステップＳ７０を経ることでグラフィクスオブジェクト（ｐ）が特定されれば、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）のｂｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ，ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎに示されるグラフィクスプレーン８上の位置に、グラフィクスオブジェクト（ｐ）を書き込む（ステップＳ７２）。かかる処理をＩＣＳにおける各ボタン情報について繰り返せば、各ボタンの状態を表す複数グラフィクスオブジェクトのうち、最初のグラフィクスオブジェクトがグラフィクスプレーン８上に書き込まれることになる。Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５上の少なくとも初期表示に必要なグラフィクスオブジェクトについて、かかる処理を実行するのに要する期間が、図２５、図２６の期間ｔｄ１である。以上がステップＳ５１の詳細である。
ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが”＝０”であり、デフォルトセレクテッドボタンが動的に変わる場合は、ステップＳ６７がＮｏになり、ステップＳ７３においてｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）は、カレントボタンに対応するｂｕｔｔｏｎ＿ｉｎｆｏであるか否かを判定する。もしそうであれば、ステップＳ７０に、異なるならステップＳ６９に移行する。
続いてステップＳ５４のサブルーチンの処理手順を、図４４を参照しながら説明する。
図４４は、デフォルトセレクテッドボタンのオートアクティベートの処理手順を示すフローチャートである。先ずｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒが０であるか，ＦＦであるかどうかを判定し（ステップＳ７５）、００であれば何の処理も行わずメインルーチンにリターンする。ＦＦであれば、カレントボタンｉをアクティブ状態に遷移する（ステップＳ７７）。そしてカレントボタンｉに対応する変数ａｎｉｍａｔｉｏｎ（ｉ）を０に設定してメインルーチンにリターンする（ステップＳ７８）。
００でも、ＦＦでもなければ、ｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒで指定されるボタンをカレントボタンとし（ステップＳ７６）、カレントボタンｉをアクティブ状態に遷移し（ステップＳ７７）、カレントボタンｉに対応する変数ａｎｉｍａｔｉｏｎ（ｉ）を０に設定してメインルーチンにリターンする（ステップＳ７８）。
以上の処理により、セレクテッド状態のボタンは、所定時間の経過時においてアクティブ状態に遷移させられることになる。以上が、図４４のフローチャートの全容である。
続いて、メニューにおけるアニメーション（ステップＳ３６）について説明する。図４５は、アニメーション表示の処理手順を示すフローチャートである。
ここで初期表示は、各ｂｕｔｔｏｎ＿ｉｎｆｏのｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏにおけるｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌ、ｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏにおけるｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄで指定されているグラフィクスオブジェクトを、グラフィクスプレーン８に書き込まれることにより実現した。アニメーションとは、ステップＳ３５〜ステップＳ３７のループ処理が一巡する度に、各ボタンにおける任意のコマ（ｑコマ目にあるグラフィクスオブジェクト）をこのグラフィクスプレーン８に上書する処理である。この更新は、ｂｕｔｔｏｎ＿ｉｎｆｏのｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏ、ｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏで指定されているグラフィクスオブジェクトを、一枚ずつグラフィクスプレーン８に書き込んでメインルーチンにリターンすることでなされる。ここで変数ｑとは、各ボタン情報のｂｕｔｔｏｎ＿ｉｎｆｏのｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏ、ｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏで指定されている個々のグラフィクスオブジェクトを指定するための変数である。
このアニメーション表示を実現するための処理を、図４５を参照しながら説明する。尚本フローチャートは、記述の簡略化を期するため、ＩＣＳのｒｅｐｅａｔ＿ｎｏｒｍａｌ＿ｆｌａｇ、ｒｅｐｅａｔ＿ｓｅｌｅｃｔｅｄ＿ｆｌａｇが繰り返し要と設定されているとの前提で作図している。
ステップＳ８０は初期表示が済んでいるか否かの判定であり、もし済んでいなけれ何の処理も行わずにリターンする。もし済んでいればステップＳ８１〜ステップＳ９３の処理を実行する。ステップＳ８１〜ステップＳ９３は、ＩＣＳにおける各ｂｕｔｔｏｎ＿ｉｎｆｏについて、ステップＳ８３〜ステップＳ９３の処理を繰り返すというループ処理を構成している（ステップＳ８１、ステップＳ８２）。
ステップＳ８３は、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）に対応する変数ａｎｉｍａｔｉｏｎ（ｐ）を変数ｑに設定する。こうして、変数ｑは、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）に対応する、現在のコマ数を示すことになる。
ステップＳ８４は、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）が、現在セレクテッド状態にあるボタン（カレントボタン）に対応するｂｕｔｔｏｎ＿ｉｎｆｏであるか否かの判定である。
カレントボタン以外のボタンならば、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）．ｎｏｒｍａｌ＿ｓｔａｔｅ＿ｉｎｆｏにおけるｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌに変数ｑを足した識別子をＩＤ（ｑ）とする（ステップＳ８５）。
カレントボタンに対応するボタンであれば、ステップＳ８６の判定を行う。
ステップＳ８６は、カレントボタンがアクティブ状態であるかの判定であり、もしそうであれば、ステップＳ８７においてｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）．ａｃｔｉｏｎｅｄ＿ｓｔａｔｅ＿ｉｎｆｏにおけるｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ａｃｔｉｏｎｅｄに変数ｑを足した識別子をＩＤ（ｑ）とする。そしてｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）に含まれるボタンコマンドのうち、１つを実行する（ステップＳ８８）。
カレントボタンがアクティブ状態でなければ、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）．ｓｅｌｅｃｔｅｄ＿ｓｔａｔｅ＿ｉｎｆｏにおけるｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｓｅｌｅｃｔｅｄに変数ｑを足した識別子をＩＤ（ｑ）とする（ステップＳ８９）。
こうしてＩＤ（ｑ）が決まれば、Ｏｂｊｅｃｔ  Ｂｕｆｆｅｒ１５に存在する、ＩＤ（ｑ）を有するグラフィクスオブジェクト（ｐ）を、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）のｂｕｔｔｏｎ＿ｈｏｒｉｚｏｎｔａｌ＿ｐｏｓｉｔｉｏｎ，ｂｕｔｔｏｎ＿ｖｅｒｔｉｃａｌ＿ｐｏｓｉｔｉｏｎに示されるＧｒａｐｈｉｃｓ  Ｐｌａｎｅ８上の位置に書き込む（ステップＳ９０）。
以上のループ処理により、カレントボタンのセレクテッド状態（若しくはアクティブ状態）及びその他のボタンのノーマル状態を構成する複数グラフィクスオブジェクトのうち、ｑ枚目のものがグラフィクスプレーン８に書き込まれることになる。
ステップＳ９１は、ｓｔａｒｔ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌ＋ｑがｅｎｄ＿ｏｂｊｅｃｔ＿ｉｄ＿ｎｏｒｍａｌに達したか否かの判定であり、もし達しないなら変数ｑをインクリメントした値を変数ａｎｉｍａｔｉｏｎ（ｐ）に設定する（ステップＳ９２）。もし達したなら変数ａｎｉｍａｔｉｏｎ（ｐ）を０に初期化する（ステップＳ９３）。以上の処理は、ＩＣＳにおける全てのｂｕｔｔｏｎ＿ｉｎｆｏについて繰り返される（ステップＳ８１、ステップＳ８２）。全てのｂｕｔｔｏｎ＿ｉｎｆｏについて、処理がなされれば、メインルーチンにリターンする。
以上のステップＳ８０〜ステップＳ９３により対話画面における各ボタンの絵柄は、ステップＳ３５〜ステップＳ３７が一巡する度に新たなグラフィクスオブジェクトに更新される。ステップＳ３５〜ステップＳ３７の処理が何度も反復されれば、いわゆるアニメーションが可能になる。アニメーションにあたって、グラフィクスオブジェクト一コマの表示間隔は、ａｎｉｍａｔｉｏｎ＿ｆｒａｍｅ＿ｒａｔｅ＿ｃｏｄｅに示される値になるようにＧｒａｐｈｉｃｓコントローラ１７は時間調整を行う。
尚、ステップＳ８８においてｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）に含まれるボタンコマンドを１つずつ実行したが、アクティブ状態に対応するグラフィクスオブジェクトを一通り表示した後に、ｂｕｔｔｏｎ＿ｉｎｆｏ（ｐ）に含まれるボタンコマンドをまとめて実行してもよい。以上でアニメーション表示処理についての説明を終わる。続いてメインルーチンのステップＳ３７におけるＵＯ処理の処理手順について図４６を参照しながら説明する。
図４６は、ＵＯ処理の処理手順を示すフローチャートである。本フローチャートは、ステップＳ１００〜ステップＳ１０３の何れかの事象が成立しているかどうかを判定し、もしどれかの事象が成立すれば、該当する処理を実行してメインルーチンにリターンする。ステップＳ１００は、ＵＯｍａｓｋＴａｂｌｅが”１”に設定されているかどうかの判定であり、もしに設定されていれば、何の処理も行わずに、メインルーチンにリターンする。
ステップＳ１０１は、ＭｏｖｅＵＰ／Ｄｏｗｎ／Ｌｅｆｔ／Ｒｉｇｈｔキーが押下されたかどうかの判定であり、もしこれらのキーが押下されれば、カレントボタンを変更して（ステップＳ１０４）、カレントボタンのａｕｔｏ＿ａｃｔｉｏｎ＿ｆｌａｇが０１かどうかを判定する（ステップＳ１０８）。もし違うならメインルーチンにリターンする。もしそうであるなら、ステップＳ１０５に移行する。
ステップＳ１０２は、ａｃｔｉｖａｔｅｄキーが押下されたかどうかの判定であり、もしそうであれば、カレントボタンｉをアクティブ状態に遷移する（ステップＳ１０５）。その後、変数ａｎｉｍａｔｉｏｎ（ｉ）を０に設定する（ステップＳ１０６）。
ステップＳ１０３は、数値入力であるかどうかの判定であり、もし数値入力であれば、数値入力処理を行って（ステップＳ１０７）、メインルーチンにリターンする。図４６の処理手順のうち、ステップＳ１０４、ステップＳ１０７はサブルーチン化されている。このサブルーチンの処理手順を示したのが図４７、図４８である。以降これらのフローチャートについて説明する。
図４７は、カレントボタンの変更処理の処理手順を示すフローチャートである。先ず初めに、カレントボタンのｎｅｉｇｈｂｏｒ＿ｉｎｆｏにおけるｕｐｐｅｒ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ，ｌｏｗｅｒ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ，ｌｅｆｔ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ，ｒｉｇｈｔ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒのうち、押下されたキーに対応するものを特定する（ステップＳ１１０）。
そしてカレントボタンをボタンｉとし、新たにカレントボタンになるボタンをボタンｊとする（ステップＳ１１１）。ステップＳ１１２は、ステップＳ１１１で特定されたボタンｊが、ボタンｉと一致しているかどうかの判定である。もし一致していれば、何の処理も行わずにメインルーチンにリターンする。もし一致しなければ、ボタンｊをカレントボタンにして（ステップＳ１１３）、変数ａｎｉｍａｔｉｏｎ（ｉ），変数ａｎｉｍａｔｉｏｎ（ｊ）を０に設定した上でメインルーチンにリターンする（ステップＳ１１４）。
図４８は、数値入力処理の処理手順を示すフローチャートである。入力された数値に合致するｂｕｔｔｏｎ＿ｎｕｍｂｅｒを有したＢｕｔｔｏｎ  ｉｎｆｏ．ｊが存在するかどうかの判定を行い（ステップＳ１２１）、Ｂｕｔｔｏｎ  ｉｎｆｏ．ｊにおけるｎｕｍｅｒｉｃａｌｌｙ＿ｓｅｌｅｃｔａｂｌｅ＿ｆｌａｇは１であるかどうかの判定を行う（ステップＳ１２２）。ステップＳ１２１及びステップＳ１２２がＹｅｓなら、カレントボタンをノーマル状態に遷移させ、ボタンｊをカレントボタンにして（ステップＳ１２３）、変数ａｎｉｍａｔｉｏｎ（ｉ），変数ａｎｉｍａｔｉｏｎ（ｊ）を０に設定した上で（ステップＳ１２４）、Ｂｕｔｔｏｎ  ｉｎｆｏ．ｊのａｕｔｏ＿ａｃｔｉｏｎ＿ｆｌａｇは１であるかを判定する（ステップＳ１２５）。１でないならメインルーチンにリターンする。
１であるなら、ステップＳ１２６においてカレントボタンをアクティブ状態に遷移した上でメインルーチンにリターンする。
ステップＳ１２１〜Ｓ１２２のどちらかがＮｏなら、そのままメインルーチンにリターンする。
以上が同期表示を行う場合のＧｒａｐｈｉｃｓコントローラ１７の処理手順である。Ｐｏｐｕｐ表示のように、ユーザ操作をトリガとした対話画面表示を行う場合、Ｓｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４、Ｇｒａｐｈｉｃｓコントローラ１７は以下のような処理を行う。つまり、同期表示の場合と同様の処理を行う。これにより、グラフィクスプレーン８にはグラフィックスオブジェクトが得られる。このようにグラフィックスオブジェクトを得た後、現在の再生時点が、ＩＣＳに付加されたＰＴＳに示される時点を経過するのを待つ。そしてこの再生時点の経過後、ＵＯコントローラ１８がメニューコールを示すＵＯを受け付れば、グラフィクスプレーン８に格納されたグラフィックスオブジェクトを合成させるよう、ＣＬＵＴ部９に出力する。ＵＯに同期して、かかる出力を行えば、メニューコールの押下に応じたＰｏｐｕｐ表示を実現することができる。
以上、ＤＳｎに属するＩＣＳのＰＴＳ，ＯＤＳのＤＴＳ、ＰＴＳの設定について説明したが、ＩＣＳのＤＴＳや、ＰＤＳのＤＴＳ、ＰＴＳ、ＥＮＤのＤＴＳ、ＰＴＳについては説明していない。以下、これらのタイムスタンプについて説明する。ＩＣＳは、ＤＳｎにおける最初のＯＤＳ（ＯＤＳ１）のデコード開始時点（ＤＴＳ（ＤＳｎ［ＯＤＳ１］））以前、及び、ＤＳｎにおける最初のＰＤＳ（ＰＤＳ１）が有効になる時点（ＰＴＳ（ＤＳｎ［ＰＤＳ１］））以前に、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６にロードされねばならない。よって以下の式の関係を満たす値に、設定されねばならない。
ＤＴＳ（ＤＳｎ［ＩＣＳ］）≦ＤＴＳ（ＤＳｎ［ＯＤＳ１］）
ＤＴＳ（ＤＳｎ［ＩＣＳ］）≦ＰＴＳ（ＤＳｎ［ＰＤＳ１］）
続いてＤＳｎに属する各ＰＤＳのＤＴＳ，ＰＴＳの設定について説明する。
ＤＳｎに属する各ＰＤＳは、ＩＣＳがＣｏｍｐｏｓｉｔｉｏｎバッファ１６にロードされる時点（ＤＴＳ（ＤＳｎ［ＩＣＳ］））から、最初のＯＤＳのデコード開始時点（ＤＴＳ（ＤＳｎ［ＯＤＳ１］））までに、ＣＬＵＴ部９において、有効になればよい。このことからＤＳｎに属する各ＰＤＳ（ＰＤＳ１〜ＰＤＳｌａｓｔ）のＰＴＳ値は、以下の関係を満たす値に、設定されねばならない。
ＤＴＳ（ＤＳｎ［ＩＣＳ］）≦ＰＴＳ（ＤＳｎ［ＰＤＳ１］）
ＰＴＳ（ＤＳｎ［ＰＤＳｊ］）≦ＰＴＳ（ＤＳｎ［ＰＤＳｊ＋１］）≦ＰＴＳ（ＤＳｎ［ＰＤＳｌａｓｔ］）
ＰＴＳ（ＤＳｎ［ＰＤＳｌａｓｔ］）≦ＤＴＳ（ＤＳｎ［ＯＤＳ１］）
尚、ＰＤＳにおいてＤＴＳは再生時に参照されないが、ＭＰＥＧ２規格を満たすため、ＰＤＳのＤＴＳは、そのＰＴＳと同じ値に設定される。
以上の関係を満たすようＤＴＳ、ＰＤＳが設定された場合、再生装置のパイプラインにおいてこれらＤＴＳ、ＰＴＳがどのような役割をもつかについて説明する。図４９は、ＩＣＳにおけるＤＴＳ、ＰＤＳにおけるＰＴＳに基づく、再生装置におけるパイプラインを示す図である。この図４９は、図３３をベースにして作図されている。図３３の第３段目に示したＣｏｄｅｄ  Ｄａｔａバッファ１３への読み出しは、本図では第５段目に記述しており、また第２段目に示したＳｔｒｅａｍ  Ｇｒａｐｈｉｃｓプロセッサ１４によるデコードは、第４段目に記述している。そしてＩＣＳ、ＰＴＳは、上述した式の関係を満たすよう設定されている。
図４９において第２段目は、ＣＬＵＴ部９へのＰＤＳ設定を示しており、第３段目は、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６の格納内容を示している。ＩＣＳのＤＴＳは、ＰＤＳのＤＴＳや、ＯＤＳのＤＴＳより前の時点に設定されているので、図中の矢印ｕｐ１に示すように、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６へのＩＣＳのロードは真っ先になされる。またＰＤＳ１〜ｌａｓｔのＣＬＵＴ部９への設定は、ＩＣＳの転送後、ＯＤＳ１のデコードより前になされるので、矢印ｕｐ２，ｕｐ３に示すようにＯＤＳ１のＤＴＳに示される時点より前に設定されている。
以上のようにＩＣＳのロード、ＰＤＳの設定は、ＯＤＳのデコードの先立ちなされることがわかる。
続いてＤＳｎに属するＥＮＤ  ｏｆ  Ｄｉｓｐｌａｙ  ＳｅｔＳｅｇｍｅｎｔのＰＴＳの設定について説明する。ＤＳｎに属するＥＮＤは、ＤＳｎの終わりを示すものだから、ＤＳｎに属する最後のＯＤＳ（ＯＤＳｌａｓｔ）のデコード終了時刻を示せばよい。このデコード終了時刻は、ＯＤＳｌａｓｔのＰＴＳ（ＰＴＳ（ＤＳｎ［ＯＤＳｌａｓｔ］））に示されているので、ＥＮＤのＰＴＳは、以下の式に示される値に設定されねばならない。
ＰＴＳ（ＤＳｎ［ＥＮＤ］）＝ＰＴＳ（ＤＳｎ［ＯＤＳｌａｓｔ］）
ＤＳｎ，ＤＳｎ＋１に属するＩＣＳとの関係で考えれば、ＤＳｎにおけるＩＣＳは、最初のＯＤＳ（ＯＤＳ１）のロード時刻以前に、Ｃｏｍｐｏｓｉｔｉｏｎバッファ１６にロードされるから、ＥＮＤのＰＴＳは、ＤＳｎに属するＩＣＳのロード時刻（ＤＴＳ（ＤＳｎ［ＩＣＳ］））以降、ＤＳｎ＋１に属するＩＣＳのロード時刻（ＤＴＳ（ＤＳｎ＋１［ＩＣＳ］））以前でなければならない。そのためＥＮＤのＰＴＳは、以下の式の関係を満たす必要がある。
ＤＴＳ（ＤＳｎ［ＩＣＳ］）≦ＰＴＳ（ＤＳｎ［ＥＮＤ］）≦ＤＴＳ（ＤＳｎ＋１［ＩＣＳ］）
一方、最初のＯＤＳ（ＯＤＳ１）のロード時刻は、最後のＰＤＳ（ＰＤＳｌａｓｔ）のロード時刻以後であるから、ＥＮＤのＰＴＳ（ＰＴＳ（ＤＳｎ［ＥＮＤ］））は、ＤＳｎに属するＰＤＳのロード時刻以降（ＰＴＳ（ＤＳｎ［ＰＤＳｌａｓｔ］））でなければならない。そのためＥＮＤのＰＴＳは、以下の式の関係を満たす必要がある。
ＰＴＳ（ＤＳｎ［ＰＤＳｌａｓｔ］）≦ＰＴＳ（ＤＳｎ［ＥＮＤ］）
続いて再生装置のパイプラインにおいて、ＥＮＤのＰＴＳが、どのような意味合いをなすのかについて説明する。図５０は、再生装置のパイプライン動作時における、ＥＮＤの意味合いを示す図である。本図は、図３３をベースに作図しており、第１段目がＣｏｍｐｏｓｉｔｉｏｎバッファ１６の格納内容を示している以外は、各段の意味合いは図３３と同一である。また図５０では、ＤＳｎ，ＤＳｎ＋１という２つのＤｉｓｐｌａｙ  Ｓｅｔを描いている。ＤＳｎにおいてＯＤＳｌａｓｔになるのは、Ａ−ＯＤＳｓの最後のＯＤＳｎであるので、ＥＮＤのＰＴＳは、このＯＤＳｎのＰＴＳを示すよう設定されている。そして、このＥＮＤのＰＴＳに示される時点は、ＤＳｎ＋１のＩＣＳのＤＴＳにより示される時点より早いものになっている。
このＥＮＤのＰＴＳにより、再生時にあたっては、ＤＳｎについてのＯＤＳのロードが、どの時点で完了するのかを知得することができる。
尚、ＥＮＤにおいてＤＴＳは再生時に参照されないが、ＭＰＥＧ２規格を満たすため、ＰＤＳのＤＴＳは、そのＰＴＳと同じ値に設定される。
ＤＴＳ，ＰＴＳが設定されたＩＣＳ，ＰＤＳ，ＯＤＳをＡＶＣｌｉｐに組み込んでおくので、ある動画の一コマが画面に現れたタイミングに、特定の処理を再生装置に実行させるという対話制御、つまり動画内容と緻密に同期した対話制御の記述に便利である。またＩＣＳ，ＰＤＳ，ＯＤＳは、ＡＶＣｌｉｐ自身に多重化されているので、再生制御を行いたい区間が数百個であっても、それらに対応するＩＣＳ，ＰＤＳ，ＯＤＳの全てをメモリに格納しておく必要はない。ＩＣＳ，ＰＤＳ，ＯＤＳはビデオパケットと共にＢＤ−ＲＯＭから読み出されるので、現在再生すべき動画区間に対応するＩＣＳ，ＰＤＳ，ＯＤＳをメモリに常駐させ、この動画区間の再生が終われば、ＩＣＳ，ＰＤＳ，ＯＤＳをメモリから削除して、次の動画区間に対応するＩＣＳ，ＰＤＳ，ＯＤＳをメモリに格納すればよい。ＩＣＳ，ＰＤＳ，ＯＤＳは、ＡＶＣｌｉｐに多重化されるので、たとえＩＣＳ，ＰＤＳ，ＯＤＳの数が数百個になってもメモリの搭載量を必要最低限にすることができる。
以上のように本実施形態によれば、アニメーションを実現するためのＯＤＳが３６０枚存在しており、ボタン部材が３つの状態をもっている場合、ＯＤＳは、１２０枚＋１２０枚＋１２０枚というように、３つのｂｕｔｔｏｎ−ｓｔａｔｅグループにグルーピングされる。そして個々のｂｕｔｔｏｎ−ｓｔａｔｅグループは、早く現れる状態に対応するもの程、前に置かれ、遅く現れる状態に対応するもの程、後に置かれる。このため、再生時にあたって、早く現れる状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループの再生装置へのロードは早く行われ、遅く現れる状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループのロードは、後回しにされる。早く現れる状態に対応するｂｕｔｔｏｎ−ｓｔａｔｅグループのロードは早い時期になされるので、３６０枚のものＯＤＳの読み出し／デコードは未完であっても、全体の約１／３〜２／３のＯＤＳの読み出し／デコードが完了していれば、初期表示のための準備は整う。全体の約１／３〜２／３のＯＤＳの読み出し／デコードの完了時点で、初期表示のための処理を開始させることができるので、たとえ読み出し／デコードすべきＯＤＳが大量にあっても、初期表示の実行は遅滞することはない。このため、アニメーションを伴った楽しい対話画面の表示を、迅速に実行することができる。
（第２実施形態）
本実施形態は、ＢＤ−ＲＯＭの製造工程に関する実施形態である。図５１は、第２施形態に係るＢＤ−ＲＯＭの製造工程を示すフローチャートである。
ＢＤ−ＲＯＭの制作工程は、動画収録、音声収録等の素材作成を行う素材制作工程Ｓ２０１、オーサリング装置を用いて、アプリケーションフォーマットを生成するオーサリング工程Ｓ２０２、ＢＤ−ＲＯＭの原盤を作成し、プレス・貼り合わせを行って、ＢＤ−ＲＯＭを完成させるプレス工程Ｓ２０３を含む。
これらの工程のうち、ＢＤ−ＲＯＭを対象としたオーサリング工程は、以下のステップＳ２０４〜ステップＳ２０９を含む。
先ずステップＳ２０４において、ボタンの状態における動きの一コマ一コマおアニメーションを、複数のランレングス符号化方式のグラフィクスデータで作成する。
ステップＳ２０５では、作成した複数グラフィックスデータを、ボタンの同じ状態を示すもの同士でグループ化する。そして、各グラフィクスデータの識別子をＩＣＳにおける各ボタン情報に指定させることにより、ＩＣＳを作成する。この際、ステップＳ２０６においてデフォルトセレクテッドボタンの設定や、各ボタン間の状態をどのように変化させるかを、ＩＣＳに記述する。その後ステップＳ２０７では、ＩＣＳ、グループ化されたグラフィクスデータを一体化させて、グラフィクスストリームを生成する。グラフィクスストリームが得られれば、ステップＳ２０８においてグラフィクスストリームを別途生成されたビデオストリーム、オーディオストリームと多重してＡＶＣｌｉｐを得る。ＡＶＣｌｉｐが得られれば、ステップＳ２０９において、静的シナリオ、動的シナリオ及びＡＶＣｌｉｐをＢＤ−ＲＯＭのフォーマットに適合させることにより、アプリケーションフォーマットが完成する。
以上のように本実施形態によれば、グラフィクスデータのグループ化という作業をオーサリング時に行うことにより、第１実施形態に示したようなグラフィクスストリームを得ることができるので、第１実施形態に示したＢＤ−ＲＯＭ用のアプリケーションフォーマットを容易に得ることができる。
（第３実施形態）
第１実施形態においてインタラクティブグラフィクスストリームは、ＡＶＣｌｉｐに多重化され、ＢＤ−ＲＯＭに記録されるとしたが、第３実施形態は、インタラクティブグラフィクスストリームはサブＣｌｉｐとして、ＡＶＣｌｉｐとは別にＢＤ−ＲＯＭに記録させるものである。そして、プレイリスト情報において、ＡＶＣｌｉｐと、サブＣｌｉｐとを関連付けることを提案する。
プレイリスト情報において、Ｐｌａｙ  Ｉｔｅｍ情報により形成される再生経路は、メインパスと呼ばれる。これに対しサブＣｌｉｐを指定する情報は、サブパスと呼ばれる再生経路を定義する情報であり、サブパス情報と呼ばれる。
図５２は、第３実施形態に係るＰＬ情報の内部構成を示す図である。
図５２の矢印ｈｃ１は、サブパス情報の内部構成をクローズアップして示す。この矢印ｈｃ１に示すように各サブパス情報は、１つ以上のサブＰｌａｙＩｔｅｍからなる。また各サブＰｌａｙＩｔｅｍは、図中の矢印ｈｃ２に示すように『Ｃｌｉｐ＿ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅ』、『ｃｌｉｐ＿ｃｏｄｅｃ＿ｉｄｅｎｔｉｆｉｅｒ』、『ＳｕｂＰｌａｙＩｔｅｍ＿Ｉｎ＿ｔｉｍｅ』、『ＳｕｂＰｌａｙＩｔｅｍ＿Ｏｕｔ＿ｔｉｍｅ』、『ｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄ』、『ｓｙｎｃ＿ｓｔａｒｔ＿ＰＴＳ＿ｏｆ＿ＰｌａｙＩｔｅｍ』からなる。
『Ｃｌｉｐ＿ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅ』は、Ｃｌｉｐ情報のファイル名を記述することにより、サブＰｌａｙＩｔｅｍに対応するサブＣｌｉｐを一意に指定する情報である。
『Ｃｌｉｐ＿ｃｏｄｅｃ＿ｉｄｅｎｔｉｆｉｅｒ』は、当該ＡＶＣｌｉｐがどのような符号化方式で符号化されているかを示す。
『ＳｕｂＰｌａｙＩｔｅｍ＿Ｉｎ＿ｔｉｍｅ』は、サブＣｌｉｐの再生時間軸上における、サブＰｌａｙＩｔｅｍの始点を示す情報である。
『ＳｕｂＰｌａｙＩｔｅｍ＿Ｏｕｔ＿ｔｉｍｅ』は、サブＣｌｉｐの再生時間軸上における、サブＰｌａｙＩｔｅｍの終点を示す情報である。
『ｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄ』は、メインパスを構成するＰｌａｙＩｔｅｍのうち、本サブＰｌａｙＩｔｅｍが同期すべきものを一意に指定する情報である。ＳｕｂＰｌａｙＩｔｅｍ＿Ｉｎ＿ｔｉｍｅは、このｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄで指定されたＰｌａｙ  Ｉｔｅｍの再生時間軸上に存在する。
『ｓｙｎｃ＿ｓｔａｒｔ＿ＰＴＳ＿ｏｆ＿ＰｌａｙＩｔｅｍ』は、ｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄで指定されたＰｌａｙＩｔｅｍの再生時間軸上において、ＳｕｂＰｌａｙＩｔｅｍ＿Ｉｎ＿ｔｉｍｅで指定されたサブＰｌａｙＩｔｅｍの始点が、どこに存在するかを示す。サブＰｌａｙＩｔｅｍの再生時において、現在の再生時点が、このｓｙｎｃ＿ｓｔａｒｔ＿ＰＴＳ＿ｏｆ＿ＰｌａｙＩｔｅｍで指示される時点に到来した場合、サブＰｌａｙＩｔｅｍによる再生が開始される。
図５３は、ｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄ，ｓｙｎｃ＿ｓｔａｒｔ＿ＰＴＳ＿ｏｆ−ＰｌａｙＩｔｅｍによるサブＰｌａｙＩｔｅｍの同期を模式的に示す図である。本図におけるメインパスは、ＰｌａｙＩｔｅｍ＃１，＃２，＃３からなる。サブパスを構成するサブＰｌａｙＩｔｅｍのｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄ，ｓｙｎｃ＿ｓｔａｒｔ＿ＰＴＳ＿ｏｆ＿ＰｌａｙＩｔｅｍの指定は、破線枠ｗｈ１の内部に示す通りであり、ｓｙｎｃ＿ＰｌａｙＩｔｅｍ＿ｉｄはＰｌａｙＩｔｅｍ＃１を示すように設定されている。
ｓｙｎｃ＿ｓｔａｒｔ＿ＰＴＳ＿ｏｆ＿ＰｌａｙＩｔｅｍは、ＰｌａｙＩｔｅｍの再生時間軸上における時点ｔ１を示すように設定されている。そうすると、ＰｌａｙＩｔｅｍの再生時間軸上において、現在の再生時点がｔ１に到達した際、Ｃｌｉｐ＿ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅで指定されたサブＣｌｉｐ（インタラクティブグラフィクスストリーム）のうち、ＳｕｂＰｌａｙＩｔｅｍ＿Ｉｎ＿ｔｉｍｅからＳｕｂＰｌａｙＩｔｅｍ＿Ｏｕｔ＿ｔｉｍｅまでの部分が再生されることになる。かかる再生により、インタラクティブグラフィクスストリームのうち、ＳｕｂＰｌａｙＩｔｅｍ＿Ｉｎ＿ｔｉｍｅ、ＳｕｂＰｌａｙＩｔｅｍ＿Ｏｕｔ＿ｔｉｍｅで指定された部分がＡＶＣｌｉｐと同期再生されることになる。以上がサブパス情報についての説明である。
またサブＣｌｉｐたるインタラクティブグラフィクスストリームは、再生装置に内蔵されているＨＤに記録されてもよい。この場合、ＢＤ−ＲＯＭ上のＡＶＣｌｉｐと、ＨＤ上のサブＣｌｉｐとを対応づけるプレイリスト情報が、ＨＤ上に存在すれば、ＢＤ−ＲＯＭ上のＡＶＣｌｉｐと、ＨＤ上のサブＣｌｉｐとを同期させながら再生させることができる。図５４は、ＨＤ上のプレイリスト情報内のＣｌｉｐ＿Ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅによるファイル指定を示す図である。本図における矢印ｒｆ１，ｒｆ２，ｒｆ３は、プレイリスト情報におけるＰｌａｙ  ＩｔｅｍのＣｌｉｐ＿Ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅによる指定を示し、矢印ｐｆ１，ｐｆ２，ｐｆ３は、プレイリスト情報におけるサブＰｌａｙＩｔｅｍのＣｌｉｐ＿Ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅによる指定を示す。このようなＣｌｉｐ＿Ｉｎｆｏｒｍａｔｉｏｎ＿ｆｉｌｅ＿ｎａｍｅによる指定により、ＨＤ上のサブＣｌｉｐに定義されたサブパスを、ＢＤ−ＲＯＭ上のメインＣｌｉｐ上に定義されたメインパスと同期して再生することができる。
以上のように、カレントＰｌａｙＩｔｅｍに同期するサブＰｌａｙＩｔｅｍがプレイリスト情報内に存在する場合の制御部２０の処理は以下の通りである。制御部２０はそのサブＰｌａｙＩｔｅｍにて指定されるサブＣｌｉｐをメインＣｌｉｐと同期して再生させる。この同期は、サブＰｌａｙＩｔｅｍのＳｙｎｃ＿Ｓｔａｒｔ＿ＰＴＳ＿ｏｆ＿ＰｌａｙＩｔｅｍに相当するピクチャデータが、メインＣｌｉｐから読み出されるのを待ち、そのサブＰｌａｙＩｔｅｍのＳｕｂＰｌａｙＩｔｅｍ＿Ｉｎ＿ｔｉｍｅからＳｕｂＰｌａｙＩｔｅｍ＿Ｏｕｔ＿ｔｉｍｅまでに存在するデータを再生することでなされる。
（備考）
以上の説明は、本発明の全ての実施行為の形態を示している訳ではない。下記（Ａ）（Ｂ）（Ｃ）（Ｄ）・・・・・の変更を施した実施行為の形態によっても、本発明の実施は可能となる。本願の請求項に係る各発明は、以上に記載した複数の実施形態及びそれらの変形形態を拡張した記載、ないし、一般化した記載としている。拡張ないし一般化の程度は、本発明の技術分野の、出願当時の技術水準の特性に基づく。しかし請求項に係る各発明は、従来技術の技術的課題を解決するための手段を反映したものであるから、請求項に係る各発明の技術範囲は、従来技術の技術的課題解決が当業者により認識される技術範囲を超えることはない。故に、本願の請求項に係る各発明は、詳細説明の記載と、実質的な対応関係を有する。
（Ａ）全ての実施形態では、本発明に係る記録媒体をＢＤ−ＲＯＭとして実施したが、本発明の記録媒体は、記録されるグラフィクスストリームに特徴があり、この特徴は、ＢＤ−ＲＯＭの物理的性質に依存するものではない。動的シナリオ、グラフィクスストリームを記録しうる記録媒体なら、どのような記録媒体であってもよい。例えば、ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−ＲＷ，ＤＶＤ−Ｒ，ＤＶＤ＋ＲＷ，ＤＶＤ＋Ｒ，ＣＤ−Ｒ，ＣＤ−ＲＷ等の光ディスク、ＰＤ，ＭＯ等の光磁気ディスクであってもよい。また、コンパクトフラッシュカード、スマートメディア、メモリスティック、マルチメディアカード、ＰＣＭ−ＣＩＡカード等の半導体メモリカードであってもよい。フレキシブルディスク、ＳｕｐｅｒＤｉｓｋ，Ｚｉｐ，Ｃｌｉｋ！等の磁気記録ディスク（ｉ）、ＯＲＢ，Ｊａｚ，ＳｐａｒＱ，ＳｙＪｅｔ，ＥＺＦｌｅｙ，マイクロドライブ等のリムーバブルハードディスクドライブ（ｉｉ）であってもよい。更に、機器内蔵型のハードディスクであってもよい。
（Ｂ）全ての実施形態における再生装置は、ＢＤ−ＲＯＭに記録されたＡＶＣｌｉｐをデコードした上でＴＶに出力していたが、再生装置をＢＤ−ＲＯＭドライブのみとし、これ以外の構成要素をＴＶに具備させてもよい。この場合、再生装置と、ＴＶとをＩＥＥＥ１３９４で接続されたホームネットワークに組み入れることができる。また、実施形態における再生装置は、テレビと接続して利用されるタイプであったが、ディスプレィと一体型となった再生装置であってもよい。更に、各実施形態の再生装置において、処理の本質的部分をなす部分のみを、再生装置としてもよい。これらの再生装置は、何れも本願明細書に記載された発明であるから、これらの何れの態様であろうとも、第１実施形態に示した再生装置の内部構成を元に、再生装置を製造する行為は、本願の明細書に記載された発明の実施行為になる。第１実施形態に示した再生装置の有償・無償による譲渡（有償の場合は販売、無償の場合は贈与になる）、貸与、輸入する行為も、本発明の実施行為である。店頭展示、カタログ勧誘、パンフレット配布により、これらの譲渡や貸渡を、一般ユーザに申し出る行為も本再生装置の実施行為である。
（Ｃ）各フローチャートに示したプログラムによる情報処理は、ハードウェア資源を用いて具体的に実現されていることから、上記フローチャートに処理手順を示したプログラムは、単体で発明として成立する。全ての実施形態は、再生装置に組み込まれた態様で、本発明に係るプログラムの実施行為についての実施形態を示したが、再生装置から分離して、第１実施形態に示したプログラム単体を実施してもよい。プログラム単体の実施行為には、これらのプログラムを生産する行為（１）や、有償・無償によりプログラムを譲渡する行為（２）、貸与する行為（３）、輸入する行為（４）、双方向の電子通信回線を介して公衆に提供する行為（５）、店頭展示、カタログ勧誘、パンフレット配布により、プログラムの譲渡や貸渡を、一般ユーザに申し出る行為（６）がある。
（Ｄ）各フローチャートにおいて時系列に実行される各ステップの「時」の要素を、発明を特定するための必須の事項と考える。そうすると、これらのフローチャートによる処理手順は、再生方法の使用形態を開示していることがわかる。各ステップの処理を、時系列に行うことで、本発明の本来の目的を達成し、作用及び効果を奏するよう、これらのフローチャートの処理を行うのであれば、本発明に係る記録方法の実施行為に該当することはいうまでもない。
（Ｅ）ＢＤ−ＲＯＭに記録するにあたって、ＡＶＣｌｉｐを構成する各ＴＳパケットには、拡張ヘッダを付与しておくことが望ましい。拡張ヘッダは、ＴＰ＿ｅｘｔｒａ＿ｈｅａｄｅｒと呼ばれ、『Ａｒｒｉｖａｌ＿Ｔｉｍｅ＿Ｓｔａｍｐ』と、『ｃｏｐｙ＿ｐｅｒｍｉｓｓｉｏｎ＿ｉｎｄｉｃａｔｏｒ』とを含み４バイトのデータ長を有する。ＴＰ＿ｅｘｔｒａ＿ｈｅａｄｅｒ付きＴＳパケット（以下ＥＸ付きＴＳパケットと略す）は、３２個毎にグループ化されて、３つのセクタに書き込まれる。３２個のＥＸ付きＴＳパケットからなるグループは、６１４４バイト（＝３２×１９２）であり、これは３個のセクタサイズ６１４４バイト（＝２０４８×３）と一致する。３個のセクタに収められた３２個のＥＸ付きＴＳパケットを”Ａｌｉｇｎｅｄ  Ｕｎｉｔ”という。
ＩＥＥＥ１３９４を介して接続されたホームネットワークでの利用時において、再生装置２００は、以下のような送信処理にてＡｌｉｇｎｅｄ  Ｕｎｉｔの送信を行う。つまり送り手側の機器は、Ａｌｉｇｎｅｄ  Ｕｎｉｔに含まれる３２個のＥＸ付きＴＳパケットのそれぞれからＴＰ＿ｅｘｔｒａ＿ｈｅａｄｅｒを取り外し、ＴＳパケット本体をＤＴＣＰ規格に基づき暗号化して出力する。ＴＳパケットの出力にあたっては、ＴＳパケット間の随所に、ｉｓｏｃｈｒｏｎｏｕｓパケットを挿入する。この挿入箇所は、ＴＰ＿ｅｘｔｒａ＿ｈｅａｄｅｒのＡｒｒｉｂｖａｌ＿Ｔｉｍｅ＿Ｓｔａｍｐに示される時刻に基づいた位置である。ＴＳパケットの出力に伴い、再生装置２００はＤＴＣＰ＿Ｄｅｓｃｒｉｐｔｏｒを出力する。ＤＴＣＰ＿Ｄｅｓｃｒｉｐｔｏｒは、ＴＰ＿ｅｘｔｒａ＿ｈｅａｄｅｒにおけるコピー許否設定を示す。ここで「コピー禁止」を示すようＤＴＣＰ＿Ｄｅｓｃｒｉｐｔｏｒを記述しておけば、ＩＥＥＥ１３９４を介して接続されたホームネットワークでの利用時においてＴＳパケットは、他の機器に記録されることはない。
（Ｆ）各実施形態におけるデジタルストリームは、ＢＤ−ＲＯＭ規格のＡＶＣｌｉｐであったが、ＤＶＤ−Ｖｉｄｅｏ規格、ＤＶＤ−Ｖｉｄｅｏ  Ｒｅｃｏｒｄｉｎｇ規格のＶＯＢ（Ｖｉｄｅｏ  Ｏｂｊｅｃｔ）であってもよい。ＶＯＢは、ビデオストリーム、オーディオストリームを多重化することにより得られたＩＳＯ／ＩＥＣ１３８１８−１規格準拠のプログラムストリームである。またＡＶＣｌｉｐにおけるビデオストリームは、ＭＰＥＧ４やＷＭＶ方式であってもよい。更にオーディオストリームは、Ｌｉｎｅａｒ−ＰＣＭ方式、Ｄｏｌｂｙ−ＡＣ３方式、ＭＰ３方式、ＭＰＥＧ−ＡＡＣ方式であってもよい。
（Ｇ）各実施形態におけるＡＶＣｌｉｐは、アナログ放送で放送されたアナログ映像信号をエンコードすることにより得られたものでもよい。デジタル放送で放送されたトランスポートストリームから構成されるストリームデータであってもよい。
またビデオテープに記録されているアナログ／デジタルの映像信号をエンコードしてコンテンツを得ても良い。更にビデオカメラから直接取り込んだアナログ／デジタルの映像信号をエンコードしてコンテンツを得ても良い。他にも、配信サーバにより配信されるデジタル著作物でもよい。
（Ｈ）第１実施形態〜第２実施形態に示したグラフィックスオブジェクトは、ランレングス符号化されたラスタデータである。グラフィックスオブジェクトの圧縮・符号化方式にランレングス符号方式を採用したのは、ランレングス符号化は字幕の圧縮・伸長に最も適しているためである。字幕には、同じ画素値の水平方向の連続長が比較的長くなるという特性があり、ランレングス符号化による圧縮を行えば、高い圧縮率を得ることができる。また伸長のための負荷も軽く、復号処理のソフトウェア化に向いている。デコードを実現する装置構成を、字幕−グラフィックスオブジェクト間で共通化する目的で、字幕と同じ圧縮・伸長方式をグラフィックスオブジェクトに採用している。しかし、グラフィックスオブジェクトにランレングス符号化方式を採用したというのは、本発明の必須事項ではなく、グラフィックスオブジェクトはＰＮＧデータであってもよい。またラスタデータではなくベクタデータであってもよい、更に透明な絵柄であってもよい。
（Ｉ）先行する再生経路によって、セレクテッド状態とすべきボタンが変わるようなケースでは、複数再生経路のそれぞれの経由時に、固有の値を再生装置側のレジスタに設定するよう、動的シナリオにおいて再生制御を記述しておくことが望ましい。そして、そのレジスタの設定値に応じたボタンをセレクテッド状態に設定するよう再生手順を記述しておけば、どの再生経路を経由するかによって、セレクテッド状態とすべきボタンを変化させることができる。
（Ｊ）サブＣｌｉｐたるインタラクティブグラフィクスストリームが、ＢＤ−ＲＯＭ又はＨＤに複数存在する場合、プレイリスト情報のＰｌａｙ  Ｉｔｅｍ情報内に、これらインタラクティブグラフィクスストリームのうち、どれを選択すべきかを示すＳＴＮ＿ｔａｂｌｅを設けても良い。またこれら複数のインタラクティブグラフィクスストリームのうち、どれを優先的に再生させるかを、Ｐｌａｙ  Ｉｔｅｍ情報内のＳＴＮ＿ｔａｂｌｅのｅｎｔｒｙにて順序付けてもよい。
【産業上の利用可能性】  本発明に係る記録媒体、再生装置は、対話的な制御を映画作品に付与することができるので、より付加価値が高い映画作品を市場に供給することができ、映画市場や民生機器市場を活性化させることができる。故に本発明に係る記録媒体、再生装置は、映画産業や民生機器産業において高い利用可能性をもつ。
【図１】
2005002219.tif 000003
【図２】
2005002219.tif 000004
【図３】
2005002219.tif 000005
【図４】
2005002219.tif 000006
【図５】
2005002219.tif 000007
【図６】
2005002219.tif 000008
【図７】
2005002219.tif 000009
【図８】
2005002219.tif 000010
【図９】
2005002219.tif 000011
【図１０】
2005002219.tif 000012
【図１１】
2005002219.tif 000013
【図１２】
2005002219.tif 000014
【図１３】
2005002219.tif 000015
【図１４】
2005002219.tif 000016
【図１５】
2005002219.tif 000017
【図１６】
2005002219.tif 000018
【図１７】
2005002219.tif 000019
【図１８】
2005002219.tif 000020
【図１９】
2005002219.tif 000021
【図２０】
2005002219.tif 000022
【図２１】
2005002219.tif 000023
【図２２】
2005002219.tif 000024
【図２３】
2005002219.tif 000025
【図２４】
2005002219.tif 000026
【図２５】
2005002219.tif 000027
【図２６】
2005002219.tif 000028
【図２７】
2005002219.tif 000029
【図２８】
2005002219.tif 000030
【図２９】
2005002219.tif 000031
【図３０】
2005002219.tif 000032
【図３１】
2005002219.tif 000033
【図３２】
2005002219.tif 000034
【図３３】
2005002219.tif 000035
【図３４】
2005002219.tif 000036
【図３５】
2005002219.tif 000037
【図３６】
2005002219.tif 000038
【図３７】
2005002219.tif 000039
【図３８】
2005002219.tif 000040
【図３９】
2005002219.tif 000041
【図４０】
2005002219.tif 000042
【図４１】
2005002219.tif 000043
【図４２】
2005002219.tif 000044
【図４３】
2005002219.tif 000045
【図４４】
2005002219.tif 000046
【図４５】
2005002219.tif 000047
【図４６】
2005002219.tif 000048
【図４７】
2005002219.tif 000049
【図４８】
2005002219.tif 000050
【図４９】
2005002219.tif 000051
【図５０】
2005002219.tif 000052
【図５１】
2005002219.tif 000053
【図５２】
2005002219.tif 000054
【図５３】
2005002219.tif 000055
【図５４】
2005002219.tif 000056
【国際調査報告】
2005002219.tif 000057
2005002219.tif 000058
2005002219.tif 000059
2005002219.tif 000060