(57)【特許請求の範囲】
【請求項１】
別個に表示される目に見え且つ選択可能な複数のメニュー項目を有する表示可能なメニューをメニュー・データ・セグメントのデータから生成する方法において、
複数のメニュー項目から成る少なくとも１つのグループと前記複数のメニュー項目から成るグループに属さない少なくとも１つの更なるメニュー項目とが前記メニュー・データ・セグメント中に規定されることを定めるステップであって、前記複数のメニュー項目の各々は、画面上の規定されたエリアに関連付けられており、前記複数のメニュー項目の各メニュー項目ごとにコマンド数が指定されており、メニュー項目は前記グループのうちの１つのみに属し、異なるグループの前記エリアは重なり合わず、前記更なるメニュー項目は、前記更なるメニュー項目の起動時に実行される関連するコマンドを有する、当該ステップと、
「イネーブルド」状態または「ディセーブルド」状態を前記複数のメニュー項目から成る少なくとも１つのグループの各メニュー項目に割り当てるステップであって、イネーブルド・メニュー項目のみが表示可能であり、且つイネーブルド・メニュー項目のみが、選択されない状態、選択された状態または起動された状態のうちの１つの状態を有することが可能であり、１グループ内の複数のメニュー項目が同時にイネーブルされない、当該ステップと、
前記更なるメニュー項目が起動されたときに、前記更なるメニュー項目に関連する前記コマンドを受け取るステップと、
前記コマンドを受け取ると、前記グループに属する前記複数のメニュー項目の少なくとも１つのメニュー項目の「イネーブルド」状態または「ディセーブルド」状態を変更するステップと、
を有する前記方法。
【請求項２】
データ・ストリームを処理する装置であって、
前記データ・ストリームは表示可能なメニューに関するメニュー・データを有し、前記表示可能なメニューは、別個に表示される目に見え且つ選択可能な複数のメニュー項目を有しており、
前記装置は、
前記データ・ストリームからのデータに基づいて、複数のメニュー項目から成る少なくとも１つのグループと前記複数のメニュー項目から成るグループに属さない少なくとも１つの更なるメニュー項目とを規定する手段であって、前記複数のメニュー項目の各メニュー項目ごとにコマンド数が指定されており、メニュー項目は前記グループのうちの１つのみに属し、前記更なるメニュー項目は、前記更なるメニュー項目の起動時に実行される関連するコマンドを有する、前記規定する手段と、
画面上の規定されたエリアを、複数のメニュー項目からなる前記グループの各メニュー項目に関連づける手段であって、異なるグループの前記エリアは重なり合わない、前記関連付ける手段と、
「イネーブルド」状態または「ディセーブルド」状態を、１グループに属する前記複数のメニュー項目の各々に割り当てる手段であって、イネーブルド・メニュー項目のみが表示可能であり、且つイネーブルド・メニュー項目のみが、選択されない状態、選択された状態または起動された状態のうちの１つの状態を有することが可能であり、１グループ内の複数のメニュー項目が同時にイネーブルされない、前記割り当てる手段と、
前記更なるメニュー項目が起動されたときに、前記更なるメニュー項目に関連する前記コマンドを受け取り、前記コマンドを受け取ると、前記グループに属する前記複数のメニュー項目の少なくとも１つのメニュー項目の「イネーブルド」状態または「ディセーブルド」状態を変更する手段と、
を有する前記装置。
【請求項３】
音声・映像データと、該音声・映像データに関連する表示可能なメニューを生成するメニュー・データ構造とを含む、取外し可能なデータ記憶媒体であって、
前記メニューは目に見え且つ選択可能な複数のメニュー項目を有し、全てのメニュー項目は別個に表示することができ、
前記メニュー・データ構造は、
複数のメニュー項目から成る少なくとも１つのグループと前記複数のメニュー項目から成るグループに属さない少なくとも１つの更なるメニュー項目とが前記メニュー・データ構造中に規定され、前記複数のメニュー項目の各々は、画面上の規定されたエリアに関連付けられており、前記複数のメニュー項目の各メニュー項目ごとにコマンド数が指定されており、
メニュー項目は前記グループのうちの１つのみに属し、異なるグループの前記エリアは重なり合わず、
「イネーブルド」状態または「ディセーブルド」状態が各メニュー項目に割り当てられ、イネーブルド・メニュー項目のみが表示可能であり、且つイネーブルド・メニュー項目のみが、選択されない状態、選択された状態または起動された状態のうちの１つの状態を有することが可能であり、１グループ内の複数のメニューは同時にイネーブルされず、
前記更なるメニュー項目は、前記更なるメニュー項目の起動時に、前記複数のメニュー項目から成る前記グループの少なくとも１つのメニュー項目の「イネーブルド」状態または「ディセーブルド」状態を変更する、関連するコマンドを有する、
前記取外し可能なデータ記憶媒体。
【請求項４】
音声・映像データと、該音声・映像データに関連する表示可能なメニューを生成するメニュー・データ構造とを、取外し可能なデータ記憶媒体に記録する方法であって、
前記メニューは目に見え且つ選択可能な複数のメニュー項目を有し、全てのメニュー項目は別個に表示することができ、
前記方法は、
複数のメニュー項目から成る少なくとも１つのグループに関するデータと前記複数のメニュー項目から成るグループに属さない少なくとも１つの更なるメニュー項目に関するデータとを前記メニュー・データ構造中に生成するステップであって、前記複数のメニュー項目の各々は、画面上の規定されたエリアに関連付けられており、前記複数のメニュー項目の各メニュー項目ごとにコマンド数が指定されており、メニュー項目は前記グループのうちの１つのみに属し、異なるグループの前記エリアは重なり合わず、前記メニュー・データ構造からメニューを生成するときに「イネーブルド」状態または「ディセーブルド」状態が前記複数のメニュー項目から成る少なくとも１つのグループの各メニュー項目に割り当てられ、前記「イネーブルド」状態または前記「ディセーブルド」状態は、前記更なるメニュー項目が起動されたときに前記更なるメニュー項目に関連する前記コマンドを受け取ると変更され、イネーブルド・メニュー項目のみが表示可能であり、且つイネーブルド・メニュー項目のみが、選択されない状態、選択された状態または起動された状態のうちの１つの状態を有することが可能であり、１グループ内の複数のメニューが同時にイネーブルされない、当該ステップと、
前記メニュー・データ構造と前記音声・映像データとを前記取外し可能なデータ記憶媒体に記録するステップと、
を有する前記方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上にオンスクリーン・メニューを発生する方法に関する。
【背景技術】
【０００２】
データ記録媒体、例えばビデオ用のＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃｓ）の音声・映像コンテンツは通常、ユーザが媒体の特定のコンテンツを選択できるように種々のメニュー・データを含んでいる。メニュー・データは、画面（スクリーン）上にメニューを表示するために使用される。いわゆるマルチページ（複数ページ）メニューがしばしば使用され、メニューの各状態はフル・スクリーン（全画面）映像で表され、別個の層（レイヤ）としてビデオ画像の上に重ね合わされる。表示されるメニュー項目を除いて、メニュー層は通常、透明（ｔｒａｎｓｐａｒｅｎｔ）である。
【０００３】
従来技術のメニューでは、メニュー項目は基本的に、多数のボタンおよび非ボタン・オブジェクト（ｎｏｎ‐ｂｕｔｔｏｎ  ｏｂｊｅｃｔｓ）から成る。各ボタンには、コンテンツのオーサ（ａｕｔｈｏｒ：作者）によって画面上に位置が割り当てられており、例えばユーザにリモコンによって操作（ナビゲート）されて起動される。各ボタンには、「通常（ｎｏｒｍａｌ）、すなわち非選択（ｕｎｓｅｌｅｃｔｅｄ）」の状態、「選択された（ｓｅｌｅｃｔｅｄ）」状態、または「起動された（ａｃｔｉｖａｔｅｄ）」状態のいずれかの状態が関連付けられている。各ボタンは、ユーザにフィードバックするために、各状態ごとに異なる視覚表示を備えている。
【０００４】
しかしながら、このような種類のメニューはどちらかといえば静的（スタティック）であって、画面全体を表現し直すことなく、ボタンを動的（ダイナミック）に追加したり画面から除去したりしない。コンテンツのオーサにとって、もっと洗練されたメニューが、例えば、サブメニューを設計するために望ましい。そのような場合、ユーザとのインタラクションにより、追加的なボタンが画面上に動的に現れては消える。本発明は、このようなダイナミックなメニューを生成する手段を提供する。
【発明の概要】
【０００５】
本発明は、画面上の種々のメニューの項目とボタンが、依然としてビジブルである静的または動的な背景の上に、ページ状（ｐａｇｅｗｉｓｅ）でなく、別個に表現されるという前提に基づいている。「表現する」（ｒｅｎｄｅｒｉｎｇ）は、表示画素の値を生成することを意味する。
【０００６】
本発明によれば、各ボタンには、「イネーブルド（ｅｎａｂｌｅｄ：動作可能）」状態または「ディセーブルド（ｄｉｓａｂｌｅｄ：動作不能）」状態である、追加的な状態が割り当てられる。原則として、この状態はボタンの表現動作を規定する。「イネーブルド（動作可能）」状態にあるボタンは通常は画面に表示され、「ディセーブルド（動作不能）」状態のボタンは表現されず、従って表示されない。だが、イネーブルド・ボタンは透明になることもある。
【０００７】
ユーザは、「イネーブルド」状態にあるボタンのみを操作でき、よく知られる「通常の」状態、「選択された」状態、または「起動された」状態は、「イネーブルド（動作可能）」状態でのみ有効である。「ディセーブルド（動作不能）」状態にあるボタンは操作できず、それをしようとする試みは、本発明によれば、デコーダによって無視される。
【０００８】
メニュー内の各ボタンには、画面上のエリア（領域）および固有の識別子が割り当てられる。通常、画面上でのボタンのエリアは矩形であるか、または複数の部分的な矩形エリアの組合せである。
【０００９】
本発明によれば、複数のボタンは幾つかのグループに編成され、すべてのボタンは或る規則にしたがう。これについては以下に述べる。
‐  １つのボタン・グループに属するボタンの数は１つまたは複数である。空（から）のボタン・グループは存在しない。
‐  １つのボタンは、複数のボタン・グループに属することはできない。
‐  第１のボタン・グループに属するボタンのエリアは、画面上で、同じボタン・グループに属さない他のボタンのエリアと重ならない。
‐  １つのボタン・グループ内の各ボタンは、２つの状態、「イネーブルド（動作可能）」または「ディセーブルド（動作不能）」状態の何れかでなければないない。
‐  各ボタンには、初期状態（「イネーブルド」状態または「ディセーブルド」状態の何れか）が割り当てられる。
‐  １つのボタン・グループ内の複数のボタンは一度に「イネーブルド」状態とならない。すなわち、画面上に表現されない。「イネーブルド」状態とは、ユーザの目に見えること（ｕｓｅｒ−ｖｉｓｉｂｉｌｉｔｙ）を意味しない。例えば、イネーブルド・ボタンは、透明画素でのみ表される場合、ユーザの目に見えない。
‐  ボタン・グループ内の各ボタンを操作するために、ボタン・ナビゲーションのための近隣情報、例えば、ユーザがＬＥＦＴ（レフト：左）、ＲＩＧＨＴ（ライト：右）、ＵＰ（アップ：上）、ＤＯＷＮ（ダウン：下）ボタンを押して、選択すべき他のボタンを決定できる。この近隣情報は、ボタンがイネーブルド状態のときにのみ有効である。ユーザは、ディセーブルド・ボタンを操作することはできない。
‐  画面上で、第１のボタン・グループの第１のボタンのエリア及び同じグループの第２のボタンのエリア（すなわち、それらのビジブルな表示）は重なっていてもよい。これらは同じボタン・グループに属するので同時にビジブルにならず、一度に１つだけが「イネーブルド」状態になれる。
【００１０】
本発明に基づき、新しいコマンドが規定される。このコマンドは、例えば、１つのボタンに関連し、別のボタンの「イネーブルド」状態と「ディセーブルド」状態とを動的に切り替える。従来技術のメニューでは、１つのボタンを起動すると、１つ以上のコマンドが実行される。提案されたコマンドが同じように起動され、従って、従来技術の枠組みに適合する。他の効果として、ボタンを起動するとボタンはその外観、色などを変える。
【００１１】
本発明の１つの態様は、ボタンをイネーブルまたはディセーブルするためのコマンドの規定である。どのボタンをイネーブルまたはディセーブルすべきかについての情報は、コマンドのパラメータとしてのボタン識別子により提供される。各ボタンについて、ボタンの起動時に実行される１つ以上のボタン・コマンドが規定される。ボタンに関連するコマンド（または一組のコマンド）はボタン・ハンドラ（ｈａｎｄｌｅｒ）と称される。ボタン・コマンドの実行は、ボタンが「イネーブルド（動作可能）」状態にあるときにだけ可能であるが、関連するボタン・コマンドを有しない「空の（ｅｍｐｔｙ）」ボタンもある。ボタンをディセーブルすると、それを透明画素で置き替えることにより、ボタンの可視度が透明（クリア）になる。
【００１２】
本発明のボタン・コマンドは通常、それ自身のボタンのイネーブルド状態またはディセーブルド状態を変更しない。イネーブルド・ボタンが起動されると、対応して起動時に実行されるボタン・コマンドは、他のボタンのイネーブルド／ディセーブルド状態を切り替えるが、そのボタン・ハンドラが既に別のボタンの選択を予定しているときを除き、それ自身のボタンをディセーブルド状態に切り替えない。しかしながら、メニュー全体をディセーブルする他のコマンドも実行される。１グループの１つのボタンをイネーブルすると、そのグループ内の他のすべてのボタンを暗黙のうちにディセーブルする。
【００１３】
各ボタン・グループのボタンが表示されるエリアが規定される。この表示エリアは、ボタン・グループ・エリアと呼ばれ、通常は矩形であるが、他の形状もある。このビジブル（目に見える）ボタンは、そのグループ・エリア内に在る限り、任意の形状を有する。例えば、矩形のエリア内に円形のボタンを表示することもできる。１つのボタン・グループ・エリアに属するがそのボタン・グループ・エリア内のイネーブルド・ボタンに属さない画素は透明にされる。
【００１４】
本発明によるボタン・グループ・エリアの特徴として、１つのボタン・グループ内のボタン位置は、別のボタン・グループのボタン位置に重なり合わず、異なるボタン・グループのエリアはまったく重なり合わない。これは、画面が、幾つかの重なり合わないボタン・グループ・エリアと見なされることを意味する。或るボタン・グループのボタンの状態が変化すると、本発明によるデコーダは、記憶媒体（通常、内部メモリ）から、それぞれのボタン・グループ・エリアの位置を読み取る。各グループについて、イネーブルド・ボタンのみが表現（表示）される。この場合、対応するボタン・グループ・エリアは任意の数の透明画素から成る。
【００１５】
有利なことに、異なるボタン・グループ・エリアは重なり合わないので、１つのボタン・グループ・エリアを表現し直しても、別のボタン・グループ・エリアに属する画素は変更されず、復号が容易となり、メニューのプログラミングが容易となり、特に、各プログラミング・コードの確認（静的ボタン位置および静的近隣関係による）が容易となる。
【００１６】
以下に詳細に述べるように、ボタン・グループ・エリアについて３つの可能性がある。
これらは、一般的なケースの特殊化されたものである。
【００１７】
第１の可能性は、上述したような一般的ケースであり、この場合、ボタン・グループ・エリアは幾つかの重なり合わない部分的エリアから成り、各ボタン・グループ・エリアにおいて、それぞれのボタン・グループに属するボタンは目に見えるようにされる。従って、１つのボタン・グループに属する１つのボタンは通常、そのボタン・グループ・エリアの１つの部分的エリアに関連しており、１ボタン・グループの複数の部分的エリアはイネーブルド・ボタンを含まない。しかし、原則として、イネーブルド・ボタンは、そのボタン・グループの複数の部分的エリアに存在し、１つのボタンは幾つかの同等部分から成る。１つのボタン・グループのボタンの状態が変化すると、本発明によるデコーダは、記憶媒体から各ボタン・グループの部分的エリアの位置を読み取り、すべての部分的エリアを新しく表現し直す。特に、デコーダは、１つのビジブルなボタン（すなわち、イネーブルド・ボタン）しか表示しない。
【００１８】
第２の可能性は、ボタン・グループのエリアが連続的（ｃｏｎｔｉｇｕｏｕｓ）な、例えば、矩形のエリアである。これは、結合性（ｃｏｈｅｓｉｖｅ）エリアが、各ボタン・グループについて規定されることを意味し、このエリアは、そのボタン・グループに属するボタンのあらゆる可能な位置を含んでいる。前述のように、異なるボタン・グループに属するエリアは重なり合わず、ビジブル（目に見える）ボタンは必ずしも、許容されたエリアを埋める必要はない。すなわち、ボタンは、そのボタン・グループ・エリアの大きさと形状を有する必要はないが、完全に、そのグループに対応するエリア内になければならない。従って、異なるグループに属するボタンは重なり合わない。更に、同じボタン・グループに属する第２のボタンを表示するときに、第１のボタン・グループに属する第１のボタンを完全に削除するのは容易である。何故ならば、この場合、表現し直す必要のあるのは、それぞれのボタン・グループに属するボタン・グループ・エリアだけであり、これは単一の連続的エリアである。画面の他の部分を表現し直す必要はない。従って、以前に表示されたボタンの残存は見られない。１つのボタン・グループ内のすべてのボタンは、同じ画面上エリアを使用する。これは好ましい可能性である。
【００１９】
第３の可能性は、１つのボタン・グループのすべてのボタンは同じエリア（すなわち、画面上でのボタンの大きさと位置）を有する。これは、デコーダの実施、メニューのプログラミングおよび確認に関して、最も容易な場合である。何故ならば、或る１つのボタン・グループに属するボタンを表示することにより、必然的に、同じ位置で以前に見られた同じボタン・グループの別のボタンは削除されるからである。しかし、これにより、他の２つの可能性よりも融通性の低いメニューとなる。
【００２０】
原則として、１つのボタン・グループには、非ボタン・オブジェクト（すなわち、ビジブル（可視）であるが選択できないメニュー項目）も含まれる。１つのボタン・グループに属する非ボタン・オブジェクトには、「イネーブルド」状態または「ディセーブルド」状態が割り当てられており、イネーブルされる場合にのみ、ビジブルにされる。イネーブリング（ｅｎａｂｌｉｎｇ：動作可能化）またはディセーブリング（ｄｉｓａｂｌｉｎｇ：動作不能化）は、メニュー・ボタンに関連するボタン・ハンドラ（ｂｕｔｔｏｎ  ｈａｎｄｌｅｒ）により行われる。
【００２１】
本発明は、洗練されたメニュー（例えば、コンテンツのオーサ（作者）により要求される）を特徴とし、この特徴により、復号が容易となる。特に、本発明は、動的（ダイナミック）なメニューを提供し、ボタンは動的にメニューから除去され、メニューに追加される。
【００２２】
本発明により、コンテンツのオーサは、フラットなデータ構造により表される階層的メニューおよびサブメニューを容易に規定できる。メニューのプログラミングと確認は、既知の方法によるよりも容易である。本発明の利点は、グラフィックス・デコーダが、メニュー操作のためにメニュー全体を考慮する必要がなく、孤立したボタン・グループを処理するだけである。初期のメニュー構造を記述するデータは、記憶媒体（取外し可能な記憶媒体、光学ディスク）から読み出され、デコーダに接続された一時的記憶媒体（メモリ）に記憶される。メニューが操作されると、一時的記憶媒体内の変数は、現在の状態を保持する。
【００２３】
ボタンがインビジブル（不可視）のとき（これは、ボタンがディセーブルされ、選択不可能／起動不能となるか、またはボタンがイネーブルされ、インビジブルとしてマークされる：例えば、特殊なフラグまたは透明画素を有する）ことを意味する。後者の場合、ボタンは選択可能であり、選択されると、自動的に起動され、関連するコマンドが実行され、ビジブル・ボタンが選択される。また、最後のボタン・コマンドがビジブル・ボタンを選択すれば、インビジブル・ボタンを連結（ｃｏｎｃａｔｅｎａｔｅ）させることができる。
【００２４】
本発明は、このようなボタン・グループを使用してメニューを発生する方法、本発明の方法を利用する装置、およびそれぞれのデータ構造を保持する記憶媒体を開示する。
【００２５】
本発明の更なる目的、特徴および利点は、添付する図面に関連する以下の説明と特許請求の範囲を考慮することから明らかとなる。
【図面の簡単な説明】
【００２６】
【図１】ディセーブルド・サブメニューを有するメニュー画面。
【図２】第１のイネーブルド・サブメニューを有するメニュー画面。
【図３】第２のイネーブルド・サブメニューを有するメニュー画面。
【図４】サブメニュー選択用のオーサリングのオプション。
【図５】選択されたサブメニュー項目を有するメニュー画面。
【図６】第１の可能性による、ボタン・グループ・エリア。
【図７】第２の可能性による、ボタン・グループ・エリア。
【図８】第３の可能性による、ボタン・グループ・エリア。
【図９】メニュー・アイコンを有する画面。
【図１０】メニュー・アイコンおよびイネーブルド・メニューを有する画面。
【図１１】特徴的なタイプのボタンの最初の起動後の、最初のマルチ起動メニュー画面。
【図１２】特徴的なタイプのボタンの第２の起動後の、マルチ起動メニュー画面。
【図１３】特徴的なタイプのボタンの第３の起動後の、マルチ起動メニュー画面。
【図１４】条件付きでイネーブルされた項目を有するメニュー画面。
【図１５】ブレッドクラム・メニューの初期画面。
【図１６】ブレッドクラム・メニューの初期画面に含まれるボタン。
【図１７】ブレッドクラム・メニューにおける、第１から第２の画面への推移。
【図１８】ブレッドクラム・メニューにおける、第１から第２の画面への推移。
【図１９】ブレッドクラム・メニューにおける、第２から第３の画面への推移。
【図２０】ブレッドクラム・メニューにおける、第２から第３の画面への推移。
【図２１】サブメニューの推移の間、ブレッドクラム・メニューで選択されたボタン、および以前に選択されたが現在選択されていないボタンの外観。
【図２２】サブメニューの推移の間、ブレッドクラム・メニューで選択されたボタン、および以前に選択されたが現在選択されていないボタンの外観。
【図２３】サブメニューの推移の間、ブレッドクラム・メニューで選択されたボタン、および以前に選択されたが現在選択されていないボタンの外観。
【発明を実施するための形態】
【００２７】
図１は、スクリーンＳ（Ｓｃｒｅｅｎ）に表示されるメニュー・ページの初期画面を示し、「音声言語（Ａｕｄｉｏ  Ｌａｇｕａｇｅ）ボタンＶＢ１と「サブタイトル言語（Ｓｕｂｔｉｔｌｅ  Ｌａｎｇｕａｇｅ）」ボタンＶＢ２のみがイネーブルされ、ビジブルになっている。メニューを記述し、かつ媒体上のビットストリーム内に含められるデータ・セグメントにより規定されているように、その他のボタンＢＧは、いずれかのビジブル・ボタンのサブメニュー（ｓｕｂｍｅｎｕｓ）に属し、インビジブル（不可視）である。本発明によれば、これらのボタンＢＧは別個のボタン・グループに属し、最初はディセーブルされており、インビジブル（不可視）である。２つのビジブル・ボタン（ＶＢ１、ＶＢ２）は別個のボタン・グループに属することもある。データ・セグメントはＩＣＳ（Ｉｎｔｅｒａｃｔｉｖｅ  Ｃｏｍｐｏｓｉｔｉｏｎ  Ｓｅｇｍｅｎｔ：双方向組成セグメント）と呼ばれる。図１に示す初期画面で、ビジブル・ボタンＶＢ１、ＶＢ２はどれも起動されていない。通常、ビジブル・ボタンのうち１つは、最初に、デフォルトにより選択される。図示するケースで、ユーザがリモコンでＲＩＧＨＴ（右）ボタンを押すと、まだ起動されているボタンはないので、何も変化しない。ディセーブルド・ボタンに通じる近隣関係が決定されても、近隣ボタンがディセーブルされている限り、デコーダはこの関係を無視する。例えば、ＵＰ（アップ：上）ボタンまたはＤＯＷＮ（ダウン：下）ボタンを押すと可視ボタンＶＢ１かＶＢ２が選択される。ボタンＶＢ１を選択し、リモコンで「ＯＫ」ボタンを押して「音声言語」（Ａｕｄｉｏ  Ｌａｎｇｕａｇｅ）ボタンを起動すると、図２に示すように、メニューの表示が変更される。
【００２８】
図２で、「音声言語」ボタンＶＢ１が起動され、それに関連するボタン・コマンドが、右側にあるボタンＢＧＡをイネーブルする。その結果、これらのボタンＢＧＡはビジブルになり、そのうち１つを選択し起動すると、音声言語を選択できるようになる。
【００２９】
図３は、図２からスタートし、音声言語（Ａｕｄｉｏ  Ｌａｎｇｕａｇｅ）ボタンＶＢ１は起動されておらず、ＤＯＷＮ（ダウン：下）ボタンが押されて、サブタイトル言語（Ｓｕｂｔｉｔｌｅ  Ｌａｎｇｕａｇｅ）ボタンＶＢ２が選択されている状況を示す。次に、ユーザがリモコンで、「ＯＫ」ボタンを押すことにより、「サブタイトル言語」ボタンＶＢ２が起動される。その結果として、右側に４個のボタンＢＧＳが表され、サブタイトルのオプション（選択）を示し、特に、これらのボタンは、図２において音声のオプションのために表示された４個のボタンＢＧＡと同じ位置に表される。同じ位置を有するが異なるサブメニューに属するボタンは同じボタン・グループに属するので、これは、ボタン・グループのボタンを配置する第３の可能性（上述）に対応する。図３に示すボタンＢＧＳは、図２に示すボタンＢＧＡとは異なる機能を有し、すなわち、サブタイトル言語を選択する。ボタンＢＧＳは、各ボタン・グループの「サブタイトル（字幕）」（Ｓｕｂｔｉｔｌｅ）ボタンを表し、図２のボタンＢＧＡは同じボタン・グループの「音声」（Ａｕｄｉｏ）ボタンを表す。本例において、表示されるサブメニューの対応するボタンは、位置だけでなく言語および外観も同じである。図３で、ボタンＢＧＳがどのサブメニューを指しているかは、選択されたボタンＶＢ２からのみ見ることができる。従って、サブメニュー・ボタンＢＧＳのうち１つが選択されると、対応する上位のボタンＶＢ２は選択されないボタン（起動もされない）とは異なって見える。
【００３０】
図４のメニューでは、ビジブル・ボタン（ＶＢ１、ＶＢ２）内にグラフィカル・ヒント（ＧＨ：図式的ヒント）が小さい矢印で現れて、関連するサブメニューの存在を示す。「音声言語」ボタンＶＢ１が起動され、または選択されて、リモコンのＲＩＧＨＴ（ライト：右）ボタンが押されると、そのボタン・ハンドラがインビジブル・ボタンＩＮＢを選択する。インビジブル・ボタンＩＮＢは、「音声言語」ボタンＶＢ１右側の近隣情報と定義される。インビジブル・ボタンＩＮＢは、いわゆる「オートアクション」ボタンであって、選択された状態から起動された状態に自動的に切り替え、そのボタン・ハンドラが実行される。ボタン・ハンドラが具えるコマンドにより、右側にある４個のボタンＢＧＡを、それらが起動されずに、ビジブル状態にし、且つコマンドにより、「英語」ボタンを選択する。インビジブル・ボタンＩＮＢは、他のボタンと同じデータ構造を有する。「音声言語」ボタンが選択されている間、ＲＩＧＨＴ（ライト：右）ボタンが押されると、音声（ａｕｄｉｏ）オプション（選択）がビジブルとなる。
【００３１】
つぎのステップ（図５）で、右側の新しいボタンのうち１つが選択される。４つの異なるボタン・グループＢＧＡ（英語、日本語、韓国語、オランダ語）がある。「音声言語」および「サブタイトル言語」ボタンがボタン・グループに属することは可能であり、ボタン・グループと単独のボタンとを組み合わせることもできる。データ構造の観点から、単独のボタンが１つだけの要素を有するボタン・グループを形成できる。図５に示した状態では、「音声言語」ボタンが選択または起動されているように見え、サブメニュー・ボタン・グループＢＧＡの各々について、音声の選択を表すボタンがイネーブルされてビジブルになっている。これらのボタンは同じ位置に表され、サブタイトルを選択するボタンも、「サブタイトル言語」が選択されていれば、ここに表される。従って、同じボタン・グループに属するボタンは互いに上書きされる。サブメニュー・ボタンのうち１つが選択されるので「音声言語」ボタンは選択から外されなければならない（図２３に関して以下に述べる）。選択されたサブメニュー・ボタンはデフォルト・ボタンである。例えば、「英語」は予め定められたデフォルトであるか、または現在使用されているオプションであるか、あるいは他のタイプのデフォルト（ｄｅｆａｕｌｔ）である。
【００３２】
図６〜図８は、ボタン・グループのエリア（領域）を規定する、上述の３つの可能性を例示する。一般に、ボタン・グループのエリアは、そのボタン・グループに属するボタンの画面上のエリアの総和により定められる。同じボタン・グループに属する異なるボタンの位置は、そのボタン・グループに指定されたエリア内にある限り、異なる。実際的な理由で、すなわち、典型的なディスプレイの行列構造により、ボタン・グループのエリアおよび部分的エリアは原則として、任意の形状を有するが、通常は矩形となる。
【００３３】
図６は、ボタン・グループを規定する第１の可能性（上述）を示す。第１のボタン・グループＢＧ６１は、３個のボタンＢ＃１、Ｂ＃４、Ｂ＃６から成り、３つの別個の非コヒーレント（ｎｏｎ‐ｃｏｈｅｒｅｎｔ：非干渉性）エリアを有する。第２のボタン・グループＢＧ６２も、３個のボタンＢ＃２、Ｂ＃３、Ｂ＃５から成り、３つの別個の非コヒーレント・エリアを有する。各ボタン・グループ（ＢＧ６１、ＢＧ６２）につき一度に１つのボタンがイネーブルされ、ビジブルとなる。従って、ボタンＢ＃１、Ｂ＃４、Ｂ＃６のうち１つだけ、そしてボタンＢ＃２、Ｂ＃３、Ｂ＃５のうち１つだけが一度にイネーブルされ（ビジブルとなり）、他のボタンは透明にされる。第１のボタン・グループＢＧ６１の個々のボタン・エリアのうちどれも、他方のボタン・グループＢＧ６２の個々のボタン・エリアと重なり合わない。しかし、第１のボタン・グループのエリアを、第２のボタン・グループに属する部分的エリアで包囲することは可能であり、完全に包囲することも可能である。本例でイネーブルされてビジブルとなるボタンは、それぞれボタン・グループ・エリアを完全に占める。別の実施例で、同じグループに属するボタンのエリア（例えば、Ｂ＃２とＢ＃５）が重なり合うこともある。これは、複数のボタンが同時にビジブルとならないからであり、ボタンのうち１つがビジブルにされると、そのボタン・グループのすべての部分的エリアは表示し直され、従って、透明にされる。
【００３４】
図７に示す好ましい実施例で、各ボタン・グループごとに１つのエリアが規定され、そのボタン・グループに属するすべてのボタンは、そのエリア内に配置される。ボタン・グループＢＧ７１は、そのすべてのボタン（Ｂ＃１１、Ｂ＃１２）が表示される規定されたエリアを有する。別のボタン・グループＢＧ７２はそのボタン（Ｂ＃２１とＢ＃２２）のために別のエリアを有する。ここでは、異なるボタン・グループのエリアは重なり合わない。同じボタン・グループＢＧ７１に属する異なるボタン（Ｂ＃１１、Ｂ＃１２）の位置は、ボタンが指定されたエリア内に在る限り、異なる。
【００３５】
図８は好ましい実施例の特殊な場合を示し、各ボタン・グループのすべてのボタンはまったく同じ位置にあり、互いに上書きされる。この場合、１つのボタンのエリアは、そのボタン・グループのエリアと同じである。第１のボタン・グループは、イネーブルされてビジブルとなる「音声言語」ボタンＢＧ８１と、１つ以上のディセーブルされてインビジブルとなるボタンＢＧ８１’とから成る。分かり易くするために、ディセーブルト゛・ボタンＢＧ８１’はビジブルに描かれているが、ビジブル・ボタンＢＧ８１とまったく同じ位置に表示される。
【００３６】
図９は、メニューがメニュー・アイコンＭＭのみで表される一例を示す。画面の他の部分は音声・映像のプレゼンテーション（例えば、映画）を表示する。小さいアイコンＭＭが画面に表示され、メニューが利用できることを知らせる。アイコンＭＭは映画を見ている視聴者の邪魔にならない。視聴者が、専用のボタンまたはリモコンの「ＯＫ」ボタンを押してメニューを起動すると、更なるメニュー・ボタンが表示される（図１０）。ユーザはメニューを操作して選択を行うことができ、例えば、各々のボタン（ＡＬ、ＳＬ）で、音声言語またはサブタイトル言語を選択することができる。例えば「音声言語」ボタンＡＬが選択されて起動されると、音声言語サブメニューがビジブルに表現される（図１１）。音声言語サブメニューは、階層メニュー内の現在の位置、および英語、日本語、韓国語およびオランダ語に関する最初の言語選択ボタン（Ｌ１．．．Ｌ４）を表示するために、例えば「音声言語」ボタンＡＬを含んでいてもよい。「音声言語」ボタンＡＬ１は表示ＭＩ１を有し、更なるオプションが存在することを示す。本例では、「音声言語」ボタンＡＬを繰り返し起動させることにより、この更なるオプションにアクセスできる。これはマルチ起動（ｍｕｌｔｉ−ａｃｔｉｖａｔｉｏｎ）と呼ばれる。このＡＬボタンが二度目に起動されると、スペイン語、フランス語、ギリシャ語およびポーランド語に関する音声言語ボタンＬ５．．．Ｌ８が現れ、３回目の起動後に、デンマーク語、ノルウェー語、フィンランド語およびスウェーデン語に関する音声言語ボタンＬ９、．．．、Ｌ１２が現れる。「音声言語」ボタンＡＬを４回目に起動した後には、図１０に示した初期メニューが再び表示される。このメニューは、専用のメニュー・ボタンで再びアイコン化される。
【００３７】
視聴者は、オプション・ボタン内でテキストだけが変化するという感じをいだくが、このようなメニューを既知の方法とデータ構造でプログラムすることは技術的に困難であり、且つ誤りを起こしやすい。特に、メニューが正確に働くようにするために、プログラムされたメニュー・データの確認のために、ボタンの組合せをすべてテストする必要がある。本発明によるボタン・グループを使用する方法では、メニューを確認する必要のために使用するボタンは各ボタン・グループから１つだけなので、有利であり、ボタン・グループの動作は一度だけで別個に確認できる。更に、メニュー・プログラマは容易にオプションを編成し直し、ボタン・グループを変更できる。
【００３８】
第１のボタン・グループは、英語Ｌ１、スペイン語Ｌ５、デンマーク語Ｌ９のボタンから成る。第２のボタン・グループは、日本語Ｌ２、フランス語Ｌ６、ノルウェー語Ｌ１０のボタンから成る。第３のボタン・グループは、韓国語Ｌ３、ギリシャ語Ｌ７、フィンランド語Ｌ１１のボタンからなる。第４のボタン・グループは、オランダ語Ｌ４、ポーランド語Ｌ８、スウェーデン語Ｌ１２のボタンから成る。同時にイネーブルされてビジブルとなる、異なるボタン・グループのボタンは、データ構造の観点から互いに独立しているが、１つの論理層と見なされる。これらは、同時にイネーブルされてビジブルとなるだけである。
【００３９】
「音声言語」ボタンＡＬは、他のメニュー・ボタンの現在の状態に依って異なる機能を有するので、単独のボタンではない。特に、「音声言語」ボタンの起動時に、オプションのボタンをイネーブルしなければならない点で機能が異なる。例えば、「音声言語」ボタンＡＬ１（図１１）を起動すると、オプションのボタンＬ５．．．Ｌ８（図１２）がイネーブルされるのに対し、同じ外観の「音声言語」ボタンＡＬ２（図１２）を起動すると、ボタンＬ９．．．Ｌ１２（図１３）がイネーブルされる。従って、第５のボタン・グループは、論理層に属する種々の「音声言語」ボタンＡＬ１、ＡＬ２、ＡＬ３から成る。あるいは、「音声言語」ボタンＡＬ１、ＡＬ２、ＡＬ３が同じであり、ボタンのコマンドが、ボタン・グループのどのボタンが現在イネーブルされているかを考慮し、コマンドが、各ボタン・グループの次の要素をイネーブルすることも可能である。
【００４０】
図１４は、条件付きイネーブリング（動作可能化）の例を示す。ボタンは、ユーザの設定またはプレーヤの設定に依って、イネーブルされ、あるいはディセーブルされる。例えば、ディスク上での映画に３つのバージョン：「子供のカット（Ｃｈｉｌｄｒｅｎ’ｓ  ｃｕｔ）」、「劇場のカット（Ｔｈｅａｔｒｉｃａｌ  ｃｕｔ）」、および「監督のカット（Ｄｉｒｅｃｔｏｒ’ｓ  ｃｕｔ）」が存在し得る。ディスクをプレーヤに挿入すると、最初のメニューは、例えば、選択不可能ボタンＮＳＢを例えば映画の題名と共に表示し、かつ再生オプション用の３つの選択可能ボタンＳＢ１、ＳＢ２、ＳＢ３を表示する。ユーザはペアレンタル・レベル（ｐａｒｅｎｔａｌ  ｌｅｖｅｌ）を設定することができ、これにより、「子供のカット」と「劇場のカット」を許可し、「監督のカット」を拒絶することが可能になる。画面には、許可された２つオプション用の２つの選択可能なボタンＳＢ１、ＳＢ２のみが表示される。禁止されたオプション用のボタンは透明に表現されるので、禁止されたオプションについては利用可能なビジブル・ボタンは存在しない。
【００４１】
本発明により、このメニュー動作は、イネーブル／ディセーブル・コマンドおよびボタン・グループを使用することにより、技術的に達成できる。１つ以上のオプション・ボタンＳＢ１、ＳＢ２、ＳＢ３は別個のボタン・グループに属し、各ボタン・グループに対して指定された設定により、規定されたメンバがイネーブルされ、ビジブルに表示される。
本例で、「監督のカット」ボタンは、関連するボタン・グループ・エリアと共に、ボタン・グループＳＢ３に属し、プレーヤをペアレンタル・レベルに設定すると、最初のボタン・ハンドラはそれぞれのボタンをディセーブルする、すなわち、ボタン・グループ・エリアを透明にする。他の設定、例えば、プレーヤのタイプ、オーディオ機器のタイプなどに依存する再生のオプションを利用することもできる。
【００４２】
本発明の更なる実施例として、いわゆる「ブレッドクラム（ｂｒｅａｄｃｒｕｍｂ）」メニューを容易に構築できる。ブレッドクラム・メニューでは、別の階層に属する以前に押されたボタンが依然として可視のままであり、ユーザはどのボタンが選択されたのか、そして現在表示されているオプション・ボタンが何を指しているのか、を見ることができる。これは、特に階層メニューに有用である。本発明によって利用されるデータ構造では、階層は近隣関係によって黙示的に示される。
【００４３】
図１５は、同じ階層レベルに属する３個のボタンＡＭＢ、ＡＬＭＢ、ＳＬＭＢを有するメニュー画面を示す。メニュー・ボタンの１つＡＭＢは、マルチアングル（複数のアングル）選択のためのもので、選択されて、３個のアングル選択ボタンＡＳＢが右側に表示される。これらのビジブル（可視的）な選択ボタンＡＳＢの各々は別個のボタン・グループに属し、「アングル（Ａｎｇｌｅ）」メニュー・ボタンＡＳＢが選択されて、ビジブルとなる。これらのボタン・グループの他のメンバは、ディセーブルされ、従ってインビジブル（不可視）である。
【００４４】
図１６は、メニューが他のインビジブル・ボタンＩＢ１．．．ＩＢ４から成ることを示す。これらを使用して、高レベルのメニュー・ボタンＡＭＢ、ＡＬＭＢ、ＳＬＭＢ間の推移において何が起こるのかを明確にする。
【００４５】
図１５のように「アングル」メニュー・ボタンＡＭＢが選択され、ユーザが「音声言語」メニュー・ボタンＡＬＭＢを選択したいとき、「音声言語」メニュー・ボタンＡＬＭＢは「アングル」メニュー・ボタンＡＭＢの下に表示されるので、ユーザはリモコンのＤＯＷＮ（下）ボタンを押す。本発明によってサポートされる動的メニューによって、以下を実行することが可能である。最初に、「アングル」ボタンの下の「近隣」ボタン（本例では、インビジブル・ボタンＩＢ１）として規定されたボタンが選択される。この状態を図１７に示す。インビジブル・ボタンは、画面に表示されないが、例えば、同じデータ構造がビジブル・ボタンとインビジブル・ボタンのために使用される場合、データの一貫性により、割り当てられた表示エリアまたは位置を有する。図では、例示の目的で、インビジブル・ボタンもそれらの論理的位置に示している。
【００４６】
次に、インビジブル・ボタンＩＢ１が選択された後に、インビジブル・ボタンＩＢ１は自動的に起動され（表１の、ａｕｔｏ＿ａｃｔｉｏｎ＿ｆｌａｇ＝＝ｔｒｕｅ）、そのボタン・ハンドラは以下のコマンドを実行する：第１に、ボタン・ハンドラは、「アングル」メニュー・ボタンＡＭＢに関連するメニュー・オプション・ボタンＡＳＢをディセーブルしてインビジブル（不可視）にし、第２に、ユーザが選択したいメニュー・ボタン（「音声言語」ボタン）に属するオプション・ボタンＡＬＳＢをイネーブルし、最後に、「音声言語」メニュー・ボタンＡＬＭＢを選択し、これによりインビジブル・ボタンＩＢ１自身を非選択状態にする。これを図１８に示す。図１９及び図２０は、別のインビジブル・ボタンＩＢ３を使用して、「音声言語」メニュー・ボタンＡＬＭＢから「サブタイトル言語」メニュー・ボタンＳＬＭＢへの対応する推移を示しており、音声言語サブメニュー・ボタンＡＬＳＢは、サブタイトル言語サブメニュー・ボタンＳＬＳＢに置き換えられる。
更に、逆方向の推移用にインビジブル・ボタンＩＢ２、ＩＢ４がある。
【００４７】
その結果、メニューのオプション・ボタンＡＳＢ、ＡＬＳＢ、ＳＬＳＢは、選択したメニュー・ボタンを起動しなくても、選択したメニュー・ボタンＡＭＢ、ＡＬＭＢ、ＳＬＭＢと常にマッチする。ユーザは、その中間状態、インビジブル・ボタン、または前述した推移にかかる通常は数ミリセカンドの範囲の短い時間に気づかないであろう。本発明によれば、メニューのオプション・ボタンＡＳＢ、ＡＬＳＢ、ＳＬＳＢはボタン・グループのメンバとして実行される。異なるサブメニューに属する、同じ位置にあるボタンは、ボタン・グループを形成する。これにより、扱いやすいメニュー・データ構造が得られ、プログラミングおよび確認が簡略化される。特に、ボタン・グループは、使われていないサブメニューのオプション・ボタンのディセーブル化と、新しく選択されたメニュー・ボタンに属する正確なサブメニューのオプション・ボタンのイネーブル化とを、黙示的に処理する。１つのボタン・グループから１つのボタンがイネーブルされ、ビジブル（可視）となるので、各ボタン・グループについて、イネーブルすべき新しいボタンを選択すれば十分である。これにより、そのグループの以前にイネーブルされたボタンが黙示的にディセーブルされ、そのボタン・グループ・エリアに属する画素は、新しいボタンのビットマップ表示に従って上書きされる。ディスプレイの残りの部分は変更されない。したがって、以前にどのボタンがビジブル（可視）であったか、どのボタンを置き換えなければならないのか、ボタンがどのエリアを占拠したか、重なり合っているボタン・エリアがあるか、をデコーダが分析する必要はない。
【００４８】
上述のブレッドクラム効果の実施例である、本発明の別の実施例を図２１〜図２３に示す。階層メニュー・ボタン、例えば、「アングル」メニュー・ボタンＡＭＢ１（図２１）が選択されると、通常の状態から選択された状態に変化し、その表示は異なって見え、例えば、ハイライト（強調表示あるいは反転表示）される。これは、ビットマップ表示がボタンの状態に応じて異なることによってなされる。「アングル」メニュー・ボタンは、起動されると、非常に短時間だけ起動状態に留まる。この期間中、その外観は選択された状態とは異なるが、ユーザはほとんどそれに気づかない。このボタンが起動されると、そのボタン・ハンドラはインビジブル・ボタンＩＮＢを選択し、これを使用して、サブメニュー・ボタンＡＳＢをビジブルにする。その状態を図２２に示す。このとき、インビジブル・ボタンＩＮＢが選択された状態にあると、「アングル」メニュー・ボタンは選択されない。何故なら、メニューのうち一度に選択できるボタンは１つだけだからである。さもなければ、デコーダは、ユーザのコマンドがどのボタンを指しているのか検出できない。代わりに、「アングル」メニュー・ボタンは通常状態にある。しかし、ブレッドクラム効果を得るため、すなわち、現在のサブメニュー・ボタンＡＳＢが指しているメニュー・ボタンを示すために、メニュー・ボタンＡＭＢ１に別の外観を与えることが望ましい。これは、例えば、「アングル」ボタン・グループを生成することにより、本発明によるボタン・グループで達成できる。
【００４９】
任意のメニュー・ボタンのようなデフォルトの「アングル」ボタンＡＭＢ１は、通常状態、選択された状態、起動された状態、の３つの状態を有する。別のボタン、例えば、同じボタン・グループに属する「Ａｎｇｌｅ＿Ｓｅｌｅｃｔ（アングル選択）」ボタンは、デフォルトの「アングル」ボタンＡＭＢ１と同じように見え、同じ表示位置を有するが、わずかに異なる。例えば、その通常状態のビットマップは、デフォルト・ボタンの選択された状態または起動された状態のビットマップと同じである。前述したように、インビジブル・ボタンＩＮＢは、選択されると自動的に起動される。それにより、例えば、サブメニュー・ボタンＡＳＢをビジブルに表現し、「Ａｎｇｌｅ＿Ｓｅｌｅｃｔ（アングル選択）」ボタンＡＭＢ２を（通常状態に）イネーブルし、以前にビジブルであった「アングル」ボタンＡＭＢ１を黙示的にディセーブルし、最後に、サブメニュー・ボタンＡＳＢ１のうち１つを選択し、インビジブル・ボタンＩＮＢ自身を非選択状態にすることが可能である（図２３）。結果として、ユーザは以前と同様、ボタンＡＭＢ２を同じボタンＡＭＢ１として認識する。ボタンＡＭＢ２は選択されているかまたは起動されているように見えるが、実際には、非選択状態になっている。これにより、ボタンを他のボタンに替えることにより、状態と異なるより多くの表示（色、形状、テキストなど）をボタンに事実上与えることが可能になる。本発明によるボタン・グループにより、ボタンを容易に処理でき、簡素な方法により、そのボタン・グループ・エリア内の画素について正確な値を求めることが可能になる。
【００５０】
グループ構造はメニュー・デコーダに関する情報を提供し、この情報は、更新を必要とする画面上のエリアを規定する。１つのボタン・グループ内では同時に起動されるボタンは１つだけであるので、１グループ内の別のボタンを起動することは、同じグループ内の最初のボタンを非起動にすることを意味する。メニューをオーサリングすることが容易となるので、このことはオーサリングに有利である。
【００５１】
特に、プリレコード（事前記録：ｐｒｅｒｃｏｒｄｅｄ）媒体、例えば、Ｂｌｕ‐ｒａｙ（ブルーレイ）ディスクの場合、題名（タイトル）に関して確認プロセスが行われてから、データ構造が仕様書に適合するか点検するためにリリースされる。本発明は、確認を容易にし、動的メニューを制作する際に拡張機能をコンテンツのオーサ（作者）に提供する。
【００５２】
以下では、表１に示したデータ・セグメントのシンタクスを一実施例として説明する。
表１に示したデータ・セグメントのシンタクスは、ビットストリーム内に含まれ得るものであり、かつ、最初のメニュー画面を記述している。表１は、上述した第２の可能性に従い、ボタン・グループ・エリアが規定される場合を記述している。
【００５３】
【表１】
0005301053.tif 000002
【００５４】
【表２】
0005301053.tif 000003
【００５５】
表１で用いられている表記法は、ｗｈｉｌｅ‐ループとｆｏｒ‐ループを使用している。しかしながら、実際のビットストリームはループの単独パス（ｐａｓｓ）またはインスタンス（ｉｎｓｔａｎｃｅ）に関するデータを含むので、ループは表記法を一般化する手段にすぎない。
ライン１７からライン６１は、ｓｅｇｍｅｎｔ＿ｌｅｎｇｔｈの長さのデータ・セグメント全体にわたるループである。データ・セグメントには任意の数のボタン・グループが含まれ得る。
【００５６】
ライン１８において、ライン６０までの以下のラインがボタン・グループの定義に関係することが規定される。グループの識別子は、丸括弧内に示す値である。ライン１９〜２２において、現在のボタン・グループ（本願ではボタン・グループ・エリアとも称される）について、画面上のそれぞれの位置が規定される。画面上のそれぞれの位置は、その水平および垂直方向のサイズおよびその基準点の位置によって規定される。この場合、ボタン・グループ・エリアは１つの矩形だけであるが、前述のように、ボタン・グループ・エリアは他のエリアであるかまたは複数の矩形であってもよい。その場合、ライン１９〜２２は、部分的なエリアごとに一回繰り返される。
【００５７】
ライン２３におけるパラメータは、現在のグループのボタンのうちどれがデフォルトによってイネーブルされるかを規定する。デコーダはこの値を使用し、最初に、現在のグループに関連するレジスタをロードし、変数を保持する。この変数は、現在イネーブルされているボタンの数を規定し、メニューの操作中に変更できる。変数には、ボタンのうちのどれにも対応しない値が割り当てられ、その結果、そのグループのすべてのボタンはディセーブルされる。この動作によって、グループ内の１つのボタンがイネーブルされる。メニュー操作の間に変更され得る変数を初期化するために使用される他の２つのパラメータは、ｄｅｆａｕｌｔ＿ｓｅｌｅｃｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ（ライン１５）と、ｄｅｆａｕｌｔ＿ａｃｔｉｖａｔｅｄ＿ｂｕｔｔｏｎ＿ｎｕｍｂｅｒ（ライン１６）である。
【００５８】
ライン２４において、現在のグループ内のボタンの数が規定される。
【００５９】
ライン２５で始まるループは、そのグループのボタンをすべて包含し、各ボタンについて参照番号を規定し（ライン２６）、もしそれが数値的に選択可能であるなら（ライン２７）、もしそれが選択されたときにそのコマンドを自動的に実行するなら（ライン２９）、ボタン・グループ・エリア（ライン３１〜３２）内のそのボタンの位置、そのボタンの近隣ボタン（ライン３３〜３８）、および異なるボタン状態に対応するビットマップ表示が読まれる場所を示すアドレス範囲、を規定する。各ボタンごとに、１つ以上のコマンドが規定される。現在のボタンのコマンド数は、ライン５５において、ｎｕｍ＿ｏｆ＿ｂｕｔｔｏｎ＿ｃｏｍｍａｎｄｓのパラメータによって規定される。ボタン・ハンドラの実際のコマンドはライン５６〜５８で規定される。
【００６０】
本発明は、ディスプレイへのアクセスを有し、かつ例えばＤＶＤ、Ｂｌｕ‐ｒａｙディスクまたは他の媒体から読み出されるメニュー・データ構造を処理するデコーダを含む、あらゆる種類のプレゼンテーション装置に使用できる。更に、本発明は、このようなデータ構造を生成することに使用可能である。
【００６１】
本発明によれば、データ・ストリームを復号するデコーダであって、データ・ストリームは視覚的に表示可能なメニューに関するメニュー・データを含み、メニューは選択可能なメニュー・ボタンを含んでいる別個に表されるメニュー項目を含んでいる、前記デコーダは、（１）少なくとも１つのグループのメニュー項目を規定する手段であって、該グループは１つ以上のメニュー項目を含み、メニュー項目は複数のグループに属さない、前記規定する手段と、（２）ディスプレイ上の規定されたエリアを前記グループに関連付ける手段と、（３）グループに属する前記メニュー項目の各々に「イネーブルド」状態または「ディセーブルド」状態を割り当てる手段であって、イネーブルド・メニュー項目だけが表示され、グループ内の複数のメニュー項目が同時にイネーブルされない、前記割り当てる手段と、を含む。
【００６２】
更に、グループに属する表示されたメニュー項目は、そのグループに関連付けられたエリア内に表示され、異なるグループのエリアは重なり合わず、１つの表示画素は複数のグループに属さない。
【００６３】
更に、１つのメニュー項目は、関連付けられたコマンドを有し、コマンドは、メニュー項目の起動時に実行され、別のメニュー項目をイネーブルし、またはディセーブルすることを含む。
【図１】
0005301053.tif 000004
【図２】
0005301053.tif 000005
【図３】
0005301053.tif 000006
【図４】
0005301053.tif 000007
【図５】
0005301053.tif 000008
【図６】
0005301053.tif 000009
【図７】
0005301053.tif 000010
【図８】
0005301053.tif 000011
【図９】
0005301053.tif 000012
【図１０】
0005301053.tif 000013
【図１１】
0005301053.tif 000014
【図１２】
0005301053.tif 000015
【図１３】
0005301053.tif 000016
【図１４】
0005301053.tif 000017
【図１５】
0005301053.tif 000018
【図１６】
0005301053.tif 000019
【図１７】
0005301053.tif 000020
【図１８】
0005301053.tif 000021
【図１９】
0005301053.tif 000022
【図２０】
0005301053.tif 000023
【図２１】
0005301053.tif 000024
【図２２】
0005301053.tif 000025
【図２３】
0005301053.tif 000026