(57)【特許請求の範囲】
【請求項１】
コンテンツデータを記録媒体に記録する記録部と、
上記記録媒体からデータを再生する再生部と、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御部と
を有し、
上記制御部は、
上記コンテンツデータの上記記録媒体への記録に応じて、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録部を制御し、
上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生部により上記記録媒体から上記コンテンツデータを再生する際に、該記録媒体から読み出した、上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、
上記プレイリストの再生を、上記インデックステーブル上の上記タイトルの並びに応じて行うように制御する情報処理装置。
【請求項２】
上記制御部は、
上記テーブルに、上記プレイリストを識別する情報と、上記プレイリストを生成する目的に基づく種類を示す情報とをさらに格納するように制御する
請求項１に記載の情報処理装置。
【請求項３】
上制御部は、
上記インデックステーブル上の上記タイトルの並びに従い上記タイトルの一覧を表示するための表示信号を生成させる表示制御信号を生成するように制御する
請求項１に記載の情報処理装置。
【請求項４】
上記制御部は、
上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、
上記クリップ情報、上記プレイリスト、上記オブジェクトおよび上記インデックステーブルを変更しないように制御する請求項１に記載の情報処理装置。
【請求項５】
コンテンツデータを記録媒体に記録する記録のステップと、
上記記録媒体からデータを再生する再生のステップと、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
上記制御のステップは、
上記コンテンツデータの上記記録媒体への記録に応じて、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録のステップを制御し、
上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生のステップにより上記記録媒体から上記コンテンツデータを再生する際に、該記録媒体から読み出した、上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、
上記プレイリストの再生を、上記インデックステーブル上の上記タイトルの並びに応じて行うように制御する情報処理方法。
【請求項６】
コンテンツデータを記録媒体に記録する記録のステップと、
上記記録媒体からデータを再生する再生のステップと、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
上記制御のステップは、
上記コンテンツデータの上記記録媒体への記録に応じて、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録のステップを制御し、
上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生のステップにより上記記録媒体から上記コンテンツデータを再生する際に、該記録媒体から読み出した、上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、
上記プレイリストの再生を、上記インデックステーブル上の上記タイトルの並びに応じて行うように制御する情報処理方法をコンピュータ装置に実行させる情報処理プログラム。
【請求項７】
コンテンツデータを記録媒体に記録する記録部と、
上記記録媒体からデータを再生する再生部と、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御部と
を有し、
上記制御部は、
上記コンテンツデータの上記記録媒体への記録に応じて、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録部を制御し、
上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生部により上記記録媒体から上記コンテンツデータを再生する際に、該記録媒体から読み出した、上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、
上記テーブルに格納される、上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記インデックステーブル上の上記タイトルの並びを変更するように制御する情報処理装置。
【請求項８】
上記制御部は、
上記テーブルに、上記プレイリストを識別する情報と、上記プレイリストを生成する目的に基づく種類を示す情報とをさらに格納するように制御する請求項７に記載の情報処理装置。
【請求項９】
上制御部は、
上記テーブルに格納される、上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき変更された上記インデックステーブル上の上記タイトルの並びに従い、上記タイトルの一覧を表示するための表示信号を生成させる表示制御信号を生成するように制御する請求項７に記載の情報処理装置。
【請求項１０】
コンテンツデータを記録媒体に記録する記録のステップと、
上記記録媒体からデータを再生する再生のステップと、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
上記制御のステップは、
上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録のステップを制御し、  上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生のステップにより上記記録媒体から上記コンテンツデータを再生する際に、該記録媒体から読み出した、上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、
上記テーブルに格納される、上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記インデックステーブル上の上記タイトルの並びを変更するように制御する情報処理方法。
【請求項１１】
コンテンツデータを記録媒体に記録する記録のステップと、
上記記録媒体からデータを再生する再生のステップと、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
上記制御のステップは、
上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録のステップを制御し、  上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生のステップにより上記記録媒体から上記コンテンツデータを再生する際に、該記録媒体から読み出した、上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、
上記テーブルに格納される、上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記インデックステーブル上の上記タイトルの並びを変更するように制御する情報処理方法をコンピュータ装置に実行させる情報処理プログラム。
【請求項１２】
コンテンツデータを記録媒体に記録する記録部と、
上記記録媒体からデータを再生する再生部と、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御部と
を有し、
上記制御部は、
上記コンテンツデータの上記記録媒体への記録に応じて、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録部を制御し、
上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生部により上記記録媒体から上記コンテンツデータを再生する際に、上記テーブルに格納される上記タイトルを示す情報に基づき、上記インデックステーブル上の上記タイトルの並びに、生成時の上記プレイリストに対して上記タイトルの欠番があるとされた場合、
上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記欠番のタイトルを上記プレイリストの記録順に従い生成すると共に、生成された該タイトルに対応する上記オブジェクトおよび上記プレイリストを新規に生成するように制御する情報処理装置。
【請求項１３】
上記制御部は、
上記テーブルに、上記プレイリストを識別する情報と、上記プレイリストを生成する目的に基づく種類を示す情報とをさらに格納するように制御する
請求項１２に記載の情報処理装置。
【請求項１４】
上記制御部は、
上記テーブルに格納される、上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記タイトルおよび上記欠番のタイトルの一覧を上記記録順に従い表示するための表示信号を生成させる表示制御信号を生成するように制御する
請求項１２に記載の情報処理装置。
【請求項１５】
上記制御部は、
上記欠番のタイトルを、該欠番のタイトルが上記記録媒体上に存在しないことを示す情報を用いて表示するように制御する請求項１２に記載の情報処理装置。
【請求項１６】
コンテンツデータを記録媒体に記録する記録のステップと、
上記記録媒体からデータを再生する再生のステップと、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
上記制御のステップは、
上記コンテンツデータの上記記録媒体への記録に応じて、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録のステップを制御し、
上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生のステップにより上記記録媒体から上記コンテンツデータを再生する際に、上記テーブルに格納される上記タイトルを示す情報に基づき、上記インデックステーブル上の上記タイトルの並びに、生成時の上記プレイリストに対して上記タイトルの欠番があるとされた場合、
上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記欠番のタイトルを上記プレイリストの記録順に従い生成すると共に、生成された該タイトルに対応する上記オブジェクトおよび上記プレイリストを新規に生成するように制御する情報処理方法。
【請求項１７】
コンテンツデータを記録媒体に記録する記録のステップと、
上記記録媒体からデータを再生する再生のステップと、
上記記録媒体に記録される上記コンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
上記制御のステップは、
上記コンテンツデータの上記記録媒体への記録に応じて、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納するテーブルを生成し、上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとを上記記録媒体に記録するように上記記録のステップを制御し、
上記クリップ情報と、上記プレイリストと、上記オブジェクトと、上記インデックステーブルと、上記テーブルとからなるデータ構造を上記タイトル単位で編集可能に制御し、  上記再生のステップにより上記記録媒体から上記コンテンツデータを再生する際に、上記テーブルに格納される上記タイトルを示す情報に基づき、上記インデックステーブル上の上記タイトルの並びに、生成時の上記プレイリストに対して上記タイトルの欠番があるとされた場合、
上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記欠番のタイトルを上記プレイリストの記録順に従い生成すると共に、生成された該タイトルに対応する上記オブジェクトおよび上記プレイリストを新規に生成するように制御する情報処理方法をコンピュータ装置に実行させる情報処理プログラム。
【請求項１８】
コンテンツデータと、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納したテーブルとからなり、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるデータ構造に基づき上記タイトルを表示させるように制御する表示制御部を有し、
上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、上記インデックステーブル上の上記タイトルの並びに従い上記タイトルの一覧を表示させるように制御する表示制御装置。
【請求項１９】
コンテンツデータと、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納したテーブルとからなり、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるデータ構造に基づき上記タイトルを表示させるように制御する表示制御部を有し、
上記インデックステーブル上の上記タイトルの並びと、上記テーブルに格納されるメニューを再生するための上記プレイリスト以外の上記プレイリストの上記タイトルを示す情報の並びとが対応しないときに、上記テーブルに格納される、上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき上記インデックステーブル上の上記タイトルの並びを変更し、変更された上記インデックステーブル上の上記タイトルの並びに従い、上記タイトルの一覧を表示するように制御する表示制御装置。
【請求項２０】
コンテンツデータと、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出す上記コンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、上記プレイリストの生成時に該プレイリストが属する上記タイトルを示す情報を上記プレイリストのそれぞれについて上記プレイリストの記録順に格納したテーブルとからなり、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるデータ構造に基づき上記タイトルを表示させるように制御する表示制御部を有し、
上記テーブルに格納される上記タイトルを示す情報に基づき、上記インデックステーブル上の上記タイトルの並びに、生成時の上記プレイリストに対して上記タイトルの欠番があるとされた場合、
上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記欠番のタイトルを上記プレイリストの記録順に従い生成すると共に、生成された該タイトルに対応する上記オブジェクトおよび上記プレイリストを新規に生成するように制御し、
上記テーブルに格納される、上記プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、上記タイトルおよび上記欠番のタイトルの一覧を上記記録順に従い表示するように制御する表示制御装置。
【請求項２１】
上記欠番のタイトルを、該欠番のタイトルが上記データ構造上に存在しないことを示す情報を用いて表示するように制御する請求項２０に記載の表示制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、この発明は、ＡＶ(Audio/Video)ストリームと、その再生区間や再生順序を示す再生制御情報と、その再生制御情報を指定するオブジェクトと、ソノオブジェクトを呼び出すタイトルが記述されるテーブルとを有するフォーマットを用いて記録される記録媒体と互換性を持たせ、メニュー画面を容易に作成および表示できるようにした情報処理装置、情報処理方法および情報処理プログラム、ならびに、表示制御装置に関する。
【０００２】
例えばブルーレイディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ：登録商標）の再生専用フォーマットである「Blu-ray Disc Read-Only Format」と互換性を持たせたメニュー画面を容易に作成および表示できるようにした情報処理装置、情報処理方法および情報処理プログラム、ならびに、表示制御装置に適用することができる。
【背景技術】
【０００３】
近年、記録可能で記録再生装置から取り外し可能なディスク型記録媒体の規格として、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ規格が提案されている。Ｂｌｕ−ｒａｙ  Ｄｉｓｃ規格では、記録媒体として直径１２ｃｍ、カバー層０．１ｍｍのディスクを用い、光学系として波長４０５ｎｍの青紫色レーザ、開口数０．８５の対物レンズを用いて、最大で２７ＧＢ（ギガバイト）の記録容量を実現している。これにより、日本のＢＳディジタルハイビジョン放送を、画質を劣化させることなく２時間以上記録することが可能である。
【０００４】
この記録可能光ディスクに記録するＡＶ(Audio/Video)信号のソース（供給源）としては、従来からの、例えばアナログテレビジョン放送によるアナログ信号によるものと、例えばＢＳディジタル放送をはじめとするディジタルテレビジョン放送によるディジタル信号によるものとが想定されている。Ｂｌｕ−ｒａｙ  Ｄｉｓｃ規格では、これらの放送によるＡＶ信号を記録する方法を定めた規格は、既に作られている。
【０００５】
一方で、現状のＢｌｕ−ｒａｙ  Ｄｉｓｃの派生規格として、映画や音楽などが予め記録された、再生専用の記録媒体を開発する動きが進んでいる。映画や音楽を記録するためのディスク状記録媒体としては、既にＤＶＤ(Digital Versatile Disc)が広く普及しているが、このＢｌｕ−ｒａｙ  Ｄｉｓｃの規格に基づいた再生専用光ディスクは、Ｂｌｕ−ｒａｙ  Ｄｉｓｃの大容量および高速な転送速度などを活かし、ハイビジョン映像を高画質なままで２時間以上収録できる点が、既存のＤＶＤとは大きく異なり、優位である。
【０００６】
このＢｌｕ−ｒａｙ  Ｄｉｓｃにおける再生専用の記録媒体の規格を、以下では、ＢＤ−ＲＯＭ(Blu-ray Disc-Read Only Memory)規格と呼ぶ。また、Ｂｌｕ−ｒａｙ  Ｄｉｓｃにおける記録可能な記録媒体の規格を、ＢＤ−ＲＥ規格と呼ぶ。特許文献１には、再生専用タイプのＢｌｕ−ｒａｙ  ＤｉｓｃであるＢＤ−ＲＯＭの規格に関して記載されている。
【特許文献１】特願２００４−２１８８６号
【０００７】
ＢＤ−ＲＯＭ規格においては、ビデオデータはクリップ(Clip)を単位として記録され、クリップに対してムービープレイリスト(MoviePlayList)を用いて再生区間を指定することができる。ここで、連続同期再生、すなわち実時間再生が保障された再生が必要な単位となるデータのまとまりを、クリップと呼ぶ。例えば、記録媒体上に１つのファイルとして存在するビデオデータがクリップとされる。ムービープレイリストは、複数のクリップに対してそれぞれ再生開始点（ＩＮ点）および再生終了点（ＯＵＴ点）を指定し、当該複数のクリップそれぞれの再生区間および再生順序を指定することができる。
【０００８】
ムービープレイリスト（以下、プレイリストと略称する）は、ムービーオブジェクト(MovieObject)内のナビゲーションコマンドにより指定され、再生が行われる。ムービーオブジェクトは、タイトルの入口としてインデックステーブルに列挙される。インデックステーブルは、ディスクをプレーヤに装填した際に最初に読み込まれるデータであって、ユーザは、ディスク装填時には、インデックステーブルに記述されたタイトルが見えることになる。
【０００９】
また、ＢＤ−ＲＯＭ規格においては、クリップおよびプレイリスト間での参照関係を自由に設定できるようにされている。例えば、あるクリップにする参照を、それぞれＩＮ点およびＯＵＴ点の異なる２つのプレイリストから行うことができる。さらに、タイトルおよびムービーオブジェクト間での参照関係も、自由に設定することができる。
【００１０】
図２４は、ＢＤ−ＲＯＭ規格によるタイトル、ムービーオブジェクトおよびプレイリストの一例の関係を概略的に示す。ディスクがプレーヤに装填されると、最初にインデックステーブル上のファーストプレイバック(FirstPlayBack)およびトップメニュー(TopMenu)が読み込まれ、これらに記述されるムービーオブジェクトに基づきトレーラやトップメニューが再生されることになる。ユーザは、トップメニューから、ディスクに記録されている各タイトルの再生を指示することができる。
【００１１】
この図２４の例では、ファーストプレイバックおよびトップメニューによりムービーオブジェクト＃４が指定され、ムービーオブジェクト＃４からプレイリスト＃１００およびプレイリスト＃１０１が参照され、ファーストプレイバックおよびトップメニューのメニュー画面が表示される。
【００１２】
すなわち、この図２４の例は、最初にムービーオブジェクト＃４によるメニュー画面が表示され、メニュー画面の表示が終了すると、ムービーオブジェクト＃０の再生が開始され、メニュー画面の表示中に例えばタイトルジャンプを選択すると、タイトル＃１にジャンプしてそこからムービーオブジェクト＃０の再生が開始されるようなシナリオ構成となっている。
【００１３】
トップメニューは、６個のタイトル＃１〜タイトル＃６の再生をナビゲーションする。タイトル＃１およびタイトル＃３は、それぞれムービーオブジェクト＃０の再生を指示し、タイトル＃４およびタイトル＃６は、それぞれムービーオブジェクト＃２の再生を指示する。また、トップメニューを再生するためのムービーオブジェクト＃４は、タイトル＃１にジャンプすると共に、タイトル＃１に参照されるムービーオブジェクト＃０にジャンプされる。さらに、ムービーオブジェクト＃０は、プレイリスト＃１００およびプレイリスト＃１０１の２つのプレイリストを再生するコマンドが記述され、ムービーオブジェクト＃３は、プレイリスト＃４、プレイリスト＃５およびプレイリスト＃６の３つのプレイリストを再生するコマンドが記述される。
【００１４】
上述したように、ＢＤ−ＲＯＭ規格においては、１つのムービーオブジェクトに対する複数のタイトルからの再生指示や、１つのムービーオブジェクトからのタイトルおよびムービーオブジェクトに対するジャンプ、１つのムービーオブジェクトから複数のプレイリストに対する再生指示などを行わせることができる。このように、タイトルやムービーオブジェクト、プレイリストなどの間での自由な参照関係を可能とすることで、コンテンツ制作者の意図の実現が容易となる利点がある。
【発明の開示】
【発明が解決しようとする課題】
【００１５】
ところで、従来から存在する、再生専用の記録媒体に対して規定されたＤＶＤ−Ｖｉｄｅｏ(Digital Versatile Disc-Video)規格を用いて、記録可能なＤＶＤに対してＡＶ(Audio/Video)データを記録するようにしたＤＶＤレコーダが普及してきている。このことから、現状では再生専用の記録媒体に対する規格として開発されているＢＤ−ＲＯＭ規格も、将来的には、民生用レコーダの記録方式の一つとして用いられることが想定される。このため、ＢＤ−ＲＯＭ規格を記録可能な記録媒体に拡張するような規格の開発が進められている。
【００１６】
ＢＤ−ＲＯＭ規格を記録可能な記録媒体に対して拡張する場合でも、ディスクに記録されるタイトルは、インデックステーブルの記述に従い再生されるトップメニューから指定されて再生が開始されるようになっている必要がある。また、記録可能な記録媒体では、タイトルの削除や追加といった、タイトルの編集が可能とされていることが要求される。
【００１７】
例えば、当該記録媒体をビデオカメラに用いた場合、撮影ボタンなどが押され撮影が開始されると新たなクリップの記録が開始され、撮影ボタンの解除操作などにより撮影が終了されクリップの記録が終了されると、当該クリップに対応するタイトルが追加されることになる。同様に、記録されたクリップを削除すると、対応するタイトルも削除される。
【００１８】
ここで、タイトルの管理を、例えばクリップの記録順にタイトル番号を付して行う場合について考える。この場合、タイトルの管理方法としては、タイトルの編集に関わらずタイトル番号を保持する第１の管理方法と、タイトルの編集に際してタイトルの記録順は保持し、編集に応じてタイトル番号を変更する第２の管理方法の２通りが考えられる。
【００１９】
例えば図２５Ａに一例が示されるように、タイトル＃１、タイトル＃２、タイトル＃３およびタイトル＃４がある場合を考える。これらのうち編集によりタイトル＃２を削除した場合、第１の管理方法では、図２５Ｂに一例が示されるように、それぞれのタイトル番号が維持され、削除されたタイトル＃２が欠番とされる。一方、第２の管理方法では、図２５Ｃに一例が示されるように、削除されたタイトル＃２より後ろのタイトルの番号が、タイトル＃２に対して順に詰められる。図２５Ｃの例では、編集前のタイトル＃３およびタイトル＃４が、編集後にそれぞれ新たなタイトル＃２およびタイトル＃３とされる。
【００２０】
レコーダに対してこれら第１の管理方法および第２の管理方法のうち何れが実装されるかは、例えば、レコーダの設計思想などに応じて決められる。
【００２１】
しかしながら、この場合、第１の管理方法が実装されたレコーダと、第２の管理方法が実装されたレコーダとの間で、メニュー画面などにおける互換性が保てなくなるという問題点があった。
【００２２】
例えば、上述の図２５を参照し、第１の管理方法に基づき作成されたメニュー画面を、第２の管理方法が実装された装置で再生すると、図２５Ｂのタイトル＃４に対応するメニューが表示されないなどの矛盾が生じる可能性がある。同様に、第２の管理方法に基づき作成されたメニュー画面を、第１の管理方法が実装された装置で再生すると、図２５Ｃのタイトル＃２がメニューに表示されているにも関わらず再生できないなどの矛盾が生じる可能性がある。
【００２３】
したがって、この発明の目的は、ＢＤ−ＲＯＭ規格を記録可能な記録媒体に対して拡張した場合に、タイトルの編集に関わらずタイトル番号を維持するシステムと、タイトルの編集に際して、タイトルの記録順は保持し、タイトル番号を編集に応じて変更するシステムとが両立可能な情報処理装置、情報処理方法および情報処理プログラム、ならびに、表示制御装置を提供することにある。
【課題を解決するための手段】
【００３３】
上述した課題を解決するために、第１の発明は、コンテンツデータを記録媒体に記録する記録部と、
記録媒体からデータを再生する再生部と、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御部と
を有し、
制御部は、
コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録部を制御し、
クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生部により記録媒体からコンテンツデータを再生する際に、該記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、
プレイリストの再生を、インデックステーブル上のタイトルの並びに応じて行うように制御する情報処理装置である。
【００３４】
また、第２の発明は、コンテンツデータを記録媒体に記録する記録のステップと、
記録媒体からデータを再生する再生のステップと、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
制御のステップは、
コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録のステップを制御し、
クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生のステップにより記録媒体からコンテンツデータを再生する際に、該記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、
プレイリストの再生を、インデックステーブル上のタイトルの並びに応じて行うように制御する情報処理方法である。
【００３５】
また、第３の発明は、コンテンツデータを記録媒体に記録する記録のステップと、
記録媒体からデータを再生する再生のステップと、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
制御のステップは、
コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録のステップを制御し、
クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生のステップにより記録媒体からコンテンツデータを再生する際に、該記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、
プレイリストの再生を、インデックステーブル上のタイトルの並びに応じて行うように制御する情報処理方法をコンピュータ装置に実行させる情報処理プログラムである。
【００３６】
また、第４の発明は、コンテンツデータを記録媒体に記録する記録部と、
記録媒体からデータを再生する再生部と、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御部と
を有し、
制御部は、
コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録部を制御し、
クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生部により記録媒体からコンテンツデータを再生する際に、該記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、
テーブルに格納される、プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びを変更するように制御する情報処理装置である。
【００３７】
また、第５の発明は、コンテンツデータを記録媒体に記録する記録のステップと、
記録媒体からデータを再生する再生のステップと、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
制御のステップは、
プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録のステップを制御し、  クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生のステップにより記録媒体からコンテンツデータを再生する際に、該記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、
テーブルに格納される、プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びを変更するように制御する情報処理方法である。
【００３８】
また、第６の発明は、コンテンツデータを記録媒体に記録する記録のステップと、
記録媒体からデータを再生する再生のステップと、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
制御のステップは、
プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録のステップを制御し、  クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生のステップにより記録媒体からコンテンツデータを再生する際に、該記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、
テーブルに格納される、プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びを変更するように制御する情報処理方法をコンピュータ装置に実行させる情報処理プログラムである。
【００３９】
また、第７の発明は、コンテンツデータを記録媒体に記録する記録部と、
記録媒体からデータを再生する再生部と、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御部と
を有し、
制御部は、
コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録部を制御し、
クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生部により記録媒体からコンテンツデータを再生する際に、テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、
プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成された該タイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御する情報処理装置である。
【００４０】
また、第８の発明は、コンテンツデータを記録媒体に記録する記録のステップと、
記録媒体からデータを再生する再生のステップと、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
制御のステップは、
コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録のステップを制御し、
クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生のステップにより記録媒体からコンテンツデータを再生する際に、テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、
プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成された該タイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御する情報処理方法である。
【００４１】
また、第９の発明は、コンテンツデータを記録媒体に記録する記録のステップと、
記録媒体からデータを再生する再生のステップと、
記録媒体に記録されるコンテンツデータに対し、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成し、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるように制御する制御のステップと
を有し、
制御のステップは、
コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように記録のステップを制御し、
クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、  再生のステップにより記録媒体からコンテンツデータを再生する際に、テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、
プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成された該タイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御する情報処理方法をコンピュータ装置に実行させる情報処理プログラムである。
【００５１】
また、第１０の発明は、コンテンツデータと、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなり、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるデータ構造に基づきタイトルを表示させるように制御する表示制御部を有し、
インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、インデックステーブル上のタイトルの並びに従いタイトルの一覧を表示させるように制御する表示制御装置である。
【００５２】
また、第１１の発明は、コンテンツデータと、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなり、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるデータ構造に基づきタイトルを表示させるように制御する表示制御部を有し、
インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、テーブルに格納される、プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づきインデックステーブル上のタイトルの並びを変更し、変更されたインデックステーブル上のタイトルの並びに従い、タイトルの一覧を表示するように制御する表示制御装置である。
【００５３】
また、第１２の発明は、コンテンツデータと、該コンテンツデータの属性情報を示すクリップ情報と、該クリップ情報を呼び出すプレイリストと、該プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、該オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時に該プレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなり、
メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、オブジェクトおよびタイトルの参照関係が互いに１対１の関係となるデータ構造に基づきタイトルを表示させるように制御する表示制御部を有し、
テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、
プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成された該タイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御し、
テーブルに格納される、プレイリストの生成時に該プレイリストが属するタイトルを示す情報に基づき、タイトルおよび欠番のタイトルの一覧を記録順に従い表示するように制御する表示制御装置である。
【００５７】
上述したように、第１、第２および第３の発明は、記録媒体に記録されるコンテンツデータに対し、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成するように制御し、コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように制御し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、記録媒体からコンテンツデータを再生する際に、記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、プレイリストの再生を、インデックステーブル上のタイトルの並びに応じて行うように制御しているため、プレイリストの生成時以後にタイトルが削除されていても、タイトルを選択し再生させることができる。
【００５８】
また、第４、第５および第６の発明は、記録媒体に記録されるコンテンツデータに対し、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成するように制御し、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように制御し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、記録媒体からコンテンツデータを再生する際に、記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びを変更するように制御しているため、プレイリストの作成時以後にタイトルが削除されていても、記録順を維持してタイトルを再生できる。
【００５９】
また、第７、第８および第９の発明は、記録媒体に記録されるコンテンツデータに対し、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成するように制御し、コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように制御し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、記録媒体からコンテンツデータを再生する際に、テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成されたタイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御しているため、プレイリストの作成時以後に削除されたタイトルを知ることができる。
【００６３】
また、第１０の発明は、コンテンツデータと、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなるデータ構造に基づきタイトルを表示させるように制御し、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づきインデックステーブル上のタイトルの並びを変更し、変更されたインデックステーブル上のタイトルの並びに従い、タイトルの一覧を表示するように制御しているため、プレイリストの生成時以後にタイトルが削除されていても、タイトルを選択するメニューを表示できる。
【００６４】
また、第１１の発明は、コンテンツデータと、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなるデータ構造に基づきタイトルを表示させるように制御し、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づきインデックステーブル上のタイトルの並びを変更し、変更されたインデックステーブル上のタイトルの並びに従い、タイトルの一覧を表示するように制御しているため、プレイリストの作成時以後にタイトルが削除されていてもタイトルの記録順を維持したメニューを表示できる。
【００６５】
また、第１２の発明は、コンテンツデータと、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなるデータ構造に基づきタイトルを表示させるように制御し、テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成されたタイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御し、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、タイトルおよび欠番のタイトルの一覧を記録順に従い表示するように制御しているため、プレイリストの作成時以後に削除されたタイトルを表示で示すことができる。
【発明の効果】
【００６９】
第１、第２および第３の発明は、上述したように、記録媒体に記録されるコンテンツデータに対し、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成するように制御し、コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように制御し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、記録媒体からコンテンツデータを再生する際に、記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、プレイリストの再生を、インデックステーブル上のタイトルの並びに応じて行うように制御しているため、プレイリストの生成時以後にタイトルが削除されていても、タイトルを選択し再生させることができるという効果がある。
【００７０】
また、第４、第５および第６の発明は、上述したように、記録媒体に記録されるコンテンツデータに対し、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成するように制御し、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように制御し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、記録媒体からコンテンツデータを再生する際に、記録媒体から読み出した、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びを変更するように制御しているため、プレイリストの作成時以後にタイトルが削除されていても、記録順を維持してタイトルを再生できるという効果がある。
【００７１】
また、第７、第８および第９の発明は、上述したように、記録媒体に記録されるコンテンツデータに対し、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルとを生成するように制御し、コンテンツデータの記録媒体への記録に応じて、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納するテーブルを生成し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとを記録媒体に記録するように制御し、クリップ情報と、プレイリストと、オブジェクトと、インデックステーブルと、テーブルとからなるデータ構造をタイトル単位で編集可能に制御し、記録媒体からコンテンツデータを再生する際に、テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成されたタイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御しているため、プレイリストの作成時以後に削除されたタイトルを知ることができるという効果がある。
【００７５】
また、第１０の発明は、上述したように、コンテンツデータと、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなるデータ構造に基づきタイトルを表示させるように制御し、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づきインデックステーブル上のタイトルの並びを変更し、変更されたインデックステーブル上のタイトルの並びに従い、タイトルの一覧を表示するように制御しているため、プレイリストの生成時以後にタイトルが削除されていても、タイトルを選択するメニューを表示できるという効果がある。
【００７６】
また、第１１の発明は、上述したように、コンテンツデータと、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなるデータ構造に基づきタイトルを表示させるように制御し、インデックステーブル上のタイトルの並びと、テーブルに格納されるメニューを再生するためのプレイリスト以外のプレイリストのタイトルを示す情報の並びとが対応しないときに、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づきインデックステーブル上のタイトルの並びを変更し、変更されたインデックステーブル上のタイトルの並びに従い、タイトルの一覧を表示するように制御しているため、プレイリストの作成時以後にタイトルが削除されていてもタイトルの記録順を維持したメニューを表示できるという効果がある。
【００７７】
また、第１２の発明は、上述したように、コンテンツデータと、コンテンツデータの属性情報を示すクリップ情報と、クリップ情報を呼び出すプレイリストと、プレイリストを呼び出すコンテンツデータの再生方法を示すオブジェクトと、オブジェクトを呼び出すタイトルが記述されるインデックステーブルと、プレイリストの生成時にプレイリストが属するタイトルを示す情報をプレイリストのそれぞれについてプレイリストの記録順に格納したテーブルとからなるデータ構造に基づきタイトルを表示させるように制御し、テーブルに格納されるタイトルを示す情報に基づき、インデックステーブル上のタイトルの並びに、生成時のプレイリストに対してタイトルの欠番があるとされた場合、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、欠番のタイトルをプレイリストの記録順に従い生成すると共に、生成されたタイトルに対応するオブジェクトおよびプレイリストを新規に生成するように制御し、テーブルに格納される、プレイリストの生成時にプレイリストが属するタイトルを示す情報に基づき、タイトルおよび欠番のタイトルの一覧を記録順に従い表示するように制御しているため、プレイリストの作成時以後に削除されたタイトルを表示で示すことができるという効果がある。
【発明を実施するための最良の形態】
【００７８】
以下、この発明の実施の一形態を、図面を参照しながら説明する。先ず、理解を容易とするために、Ｂｌｕ−ｒａｙ  Ｄｉｓｃに関し、"Blu-ray Disc Read Only Format Ver1.0 part3 Audio Visual Specifications"で規定されている、読み出し専用タイプのＢｌｕ−ｒａｙ  ＤｉｓｃであるＢＤ−ＲＯＭに記録されたコンテンツすなわちＡＶ(Audio/Video)データの管理構造について、ＢＤ−ＲＯＭ規格を記録可能な記録媒体に拡張した際に適用可能な部分を概略的に説明する。以下では、このＢＤ−ＲＯＭにおける管理構造をＢＤＭＶフォーマットと称する。また、ＢＤＭＶフォーマットを記録可能な記録媒体に対して拡張したフォーマットを、便宜上、拡張ＢＤＭＶフォーマットと呼ぶ。
【００７９】
例えばＭＰＥＧ(Moving Pictures Experts Group)ビデオやＭＰＥＧオーディオなどの符号化方式で符号化され、ＭＰＥＧ２システムに従い多重化されたビットストリームは、クリップＡＶストリーム（またはＡＶストリーム）と称される。クリップＡＶストリームは、Ｂｌｕ−ｒａｙ  Ｄｉｓｃに関する規格の一つである"Blu-ray Disc Read Only Format part2"で定義されたファイルシステムにより、ファイルとしてディスクに記録される。このファイルを、クリップＡＶストリームファイル（またはＡＶストリームファイル）と称する。
【００８０】
クリップＡＶストリームファイルは、ファイルシステム上での管理単位であり、ユーザにとって必ずしも分かりやすい管理単位であるとは限らない。ユーザの利便性を考えた場合、複数のクリップＡＶストリームファイルに分割された映像コンテンツを一つにまとめて再生する仕組みや、クリップＡＶストリームファイルの一部だけを再生する仕組み、さらには、特殊再生や頭出し再生を滑らかに行うための情報などをデータベースとしてディスクに記録しておく必要がある。Ｂｌｕ−ｒａｙ  Ｄｉｓｃに関する規格の一つである"Blu-ray Disc Read Only Format part3"で、このデータベースが規定される。
【００８１】
図１は、ＢＤ−ＲＯＭのデータモデルを概略的に示す。ＢＤ−ＲＯＭのデータ構造は、図１に示されるように４層のレイヤよりなる。最も最下層のレイヤは、クリップＡＶストリームが配置されるレイヤである（便宜上、クリップレイヤと呼ぶ）。その上のレイヤは、クリップＡＶストリームに対する再生箇所を指定するための、ムービープレイリスト(Movie PlayList)と、プレイアイテム(PlayItem)とが配置されるレイヤである（便宜上、プレイリストレイヤと呼ぶ）。さらにその上のレイヤは、ムービープレイリストに対して再生順などを指定するコマンドからなるムービーオブジェクト(Movie Object)などが配置されるレイヤである（便宜上、オブジェクトレイヤと呼ぶ）。最上層のレイヤは、このＢＤ−ＲＯＭに格納されるタイトルなどを管理するインデックステーブルが配置される（便宜上、インデックスレイヤと呼ぶ）。
【００８２】
クリップレイヤについて説明する。クリップＡＶストリームは、ビデオデータやオーディオデータがＭＰＥＧ２  ＴＳ（トランスポートストリーム）の形式などに多重化されたビットストリームである。このクリップＡＶストリームに関する情報がクリップ情報(Clip Information)としてファイルに記録される。
【００８３】
また、クリップＡＶストリームには、字幕を表示するグラフィクスストリームであるプレゼンテーショングラフィクス（ＰＧ）ストリームや、メニュー表示などに用いられるデータ（ボタン画像データなど）をストリームにしたインタラクティブグラフィクス（ＩＧ）ストリームも多重化される。
【００８４】
クリップＡＶストリームファイルと、対応するクリップ情報が記録されたクリップ情報ファイルとをひとまとまりのオブジェクトと見なし、クリップ(Clip)と称する。すなわち、クリップは、クリップＡＶストリームとクリップ情報とから構成される、一つのオブジェクトである。
【００８５】
ファイルは、一般的に、バイト列として扱われる。クリップＡＶストリームファイルのコンテンツは、時間軸上に展開され、クリップ中のエントリーポイントは、主に時間ベースで指定される。所定のクリップへのアクセスポイントのタイムスタンプが与えられた場合、クリップＡＶストリームファイルの中でデータの読み出しを開始すべきアドレス情報を見つけるために、クリップ情報ファイルを用いることができる。
【００８６】
プレイリストレイヤについて説明する。ムービープレイリストは、再生するＡＶストリームファイルの指定と、指定されたＡＶストリームファイルの再生箇所を指定する再生開始点（ＩＮ点）と再生終了点（ＯＵＴ点）の集まりとから構成される。この再生開始点と再生終了点の情報を一組としたものは、プレイアイテム(PlayItem)と称される。ムービープレイリストは、プレイアイテムの集合で構成される。プレイアイテムを再生するということは、そのプレイアイテムに参照されるＡＶストリームファイルの一部分を再生するということになる。すなわち、プレイアイテム中のＩＮ点およびＯＵＴ点情報に基づき、クリップ中の対応する区間が再生される。
【００８７】
オブジェクトレイヤについて説明する。ムービーオブジェクトは、ＨＤＭＶナビゲーションコマンドプログラムと、ムービーオブジェクトとを連携するターミナルインフォメーションを含む。ＨＤＭＶナビゲーションプログラムは、プレイリストの再生を制御するためのコマンドである。以下、ＨＤＭＶナビゲーションコマンドを、適宜、ナビゲーションコマンド(navigation command)と略称する。ターミナルインフォメーションは、ユーザのＢＤ−ＲＯＭプレーヤに対するインタラクティブな操作を許可するための情報を含んでいる。このターミナルインフォメーションに基づき、メニュー画面の呼び出しや、タイトルサーチといったユーザオペレーションが制御される。
【００８８】
ＢＤ−Ｊオブジェクトは、Ｊａｖａプログラム（Ｊａｖａは登録商標）によるオブジェクトからなる。ＢＤ−Ｊオブジェクトは、この発明と関わりが薄いので、詳細な説明を省略する。
【００８９】
インデックスレイヤについて説明する。インデックスレイヤは、インデックステーブルからなる。インデックステーブルは、ＢＤ−ＲＯＭディスクのタイトルを定義する、トップレベルのテーブルである。インデックステーブルに格納されているタイトル情報に基づき、ＢＤ−ＲＯＭ常駐システムソフトウェア中のモジュールマネージャによりＢＤ−ＲＯＭディスクの再生が制御される。
【００９０】
すなわち、図２に概略的に示されるように、インデックステーブル中の任意のエントリは、タイトルと称され、インデックステーブルにエントリされるファーストプレイバック(First Playback)、トップメニュー(Top Menu)およびタイトル(Title)＃１、＃２、・・・は、全てタイトルである。各タイトルは、ムービーオブジェクトあるいはＢＤ−Ｊオブジェクトに対するリンクを示し、各タイトルは、ＨＤＭＶタイトルあるいはＢＤ−Ｊタイトルの何れかを示す。
【００９１】
例えば、ファーストプレイバックは、当該ＢＤ−ＲＯＭに格納されるコンテンツが映画であれば、映画本編に先立って映出される映画会社の宣伝用映像（トレーラ）である。トップメニューは、例えばコンテンツが映画である場合、本編再生、チャプタサーチ、字幕や言語設定、特典映像再生などを選択するためのメニュー画面である。また、タイトルは、トップメニューから選択される各映像である。タイトルがさらにメニュー画面であるような構成も可能である。
【００９２】
図３は、上述のようなクリップＡＶストリーム、クリップ情報(Stream Attributes)、クリップ、プレイアイテムおよびプレイリストの関係を示すＵＭＬ(Unified Modeling Language)図である。プレイリストは、１または複数のプレイアイテムに対応付けられ、プレイアイテムは、１のクリップに対応付けられる。１のクリップに対して、それぞれ開始点および／または終了点が異なる複数のプレイアイテムを対応付けることができる。１のクリップから１のクリップＡＶストリームファイルが参照される。同様に、１のクリップから１のクリップ情報ファイルが参照される。また、クリップＡＶストリームファイルとクリップ情報ファイルとは、１対１の対応関係を有する。このような構造を定義することにより、クリップＡＶストリームファイルを変更することなく、任意の部分だけを再生する、非破壊の再生順序指定を行うことが可能となる。
【００９３】
また、図４のように、複数のプレイリストから同一のクリップを参照することもできる。また、１のプレイリストから複数のクリップを指定することもできる。クリップは、プレイリスト中のプレイアイテムに示されるＩＮ点およびＯＵＴ点により、参照される。図４の例では、クリップ３００は、プレイリスト３１０のプレイアイテム３２０から参照されると共に、プレイリスト３１１を構成するプレイアイテム３２１および３２２のうちプレイアイテム３２１から、ＩＮ点およびＯＵＴ点で示される区間が参照される。また、クリップ３０１は、プレイリスト３１１のプレイアイテム３２２からＩＮ点およびＯＵＴ点で示される区間が参照されると共に、プレイリスト３１２のプレイアイテム３２３および３２４のうち、プレイアイテム３２３のＩＮ点およびＯＵＴ点で示される区間が参照される。
【００９４】
なお、プレイリストは、図５に一例が示されるように、主として再生されるプレイアイテムに対応するメインパスに対して、サブプレイアイテムに対応するサブパスを持つことができる。例えば、このプレイリストに付けられているアフレコオーディオ用のプレイアイテムをサブプレイアイテムとして、プレイリストに持たせることができる。詳細は省略するが、プレイリストは、所定の条件を満たす場合にだけ、サブプレイアイテムを持つことができる。
【００９５】
次に、"Blu-ray Disc Read Only Format part3"で規定された、ＢＤ−ＲＯＭに記録されるファイルの管理構造について、図６を用いて説明する。ファイルは、ディレクトリ構造により階層的に管理される。記録媒体上には、先ず、１つのディレクトリ（図６の例ではルート(root)ディレクトリ）が作成される。このディレクトリの下が、１つの記録再生システムで管理される範囲とする。
【００９６】
ルートディレクトリの下に、ディレクトリ"BDMV"、ディレクトリ"CERTIFICATE"およびディレクトリ"HDAVCTN"が置かれる。ディレクトリ"CERTIFICATE"は、著作権に関する情報が格納される。ディレクトリ"HDAVCTN"には、例えばクリップの代表画像を所定サイズに縮小したサムネイルファイルが置かれる。ディレクトリ"BDMV"に、図１を用いて説明したデータ構造が格納される。
【００９７】
ディレクトリ"BDMV"の直下には、ファイルは、ファイル"index.bdmv"およびファイル"MovieObject.bdmv"の２つのみを置くことができる。また、ディレクトリ"BDMV"の下に、ディレクトリ"PLAYLIST"、ディレクトリ"CLIPINF"、ディレクトリ"STREAM"、ディレクトリ"AUXDATA"、ディレクトリ"META"、ディレクトリ"BDJO"、ディレクトリ"JAR"、およびディレクトリ"BACKUP"が置かれる。
【００９８】
ファイル"index.bdmv"は、ディレクトリBDMVの内容について記述される。すなわち、このファイル"index.bdmv"が上述した最上層のレイヤであるインデックスレイヤにおけるインデックステーブルに対応する。また、ファイルMovieObject.bdmvは、１つ以上のムービーオブジェクトの情報が格納される。すなわち、このファイル"MovieObject.bdmv"が上述したオブジェクトレイヤに対応する。
【００９９】
ディレクトリ"PLAYLIST"は、プレイリストのデータベースが置かれるディレクトリである。すなわち、ディレクトリ"PLAYLIST"は、ムービープレイリストに関するファイルであるファイル"xxxxx.mpls"を含む。ファイル"xxxxx.mpls"は、ムービープレイリストのそれぞれに対して作成されるファイルである。ファイル名において、"."（ピリオド）の前の"xxxxx"は、５桁の数字とされ、ピリオドの後ろの"mpls"は、このタイプのファイルに固定的とされた拡張子である。
【０１００】
ディレクトリ"CLIPINF"は、クリップのデータベースが置かれるディレクトリである。すなわち、ディレクトリCLIPINF"は、クリップＡＶストリームファイルのそれぞれに対するクリップインフォメーションファイルであるファイル"zzzzz.clpi"を含む。ファイル名において、"."（ピリオド）の前の"zzzzz"は、５桁の数字とされ、ピリオドの後ろの"clpi"は、このタイプのファイルに固定的とされた拡張子である。
【０１０１】
ディレクトリ"STREAM"は、実体としてのＡＶストリームファイルが置かれるディレクトリである。すなわち、ディレクトリ"STREAM"は、クリップインフォメーションファイルのそれぞれに対応するクリップＡＶストリームファイルを含む。クリップＡＶストリームファイルは、ＭＰＥＧ２(Moving Pictures Experts Group 2)のトランスポートストリーム（以下、ＭＰＥＧ２  ＴＳと略称する）からなり、ファイル名が"zzzzz.m2ts"とされる。ファイル名において、ピリオドの前の"zzzzz"は、対応するクリップインフォメーションファイルと同一することで、クリップインフォメーションファイルとこのクリップＡＶストリームファイルとの対応関係を容易に把握することができる。
【０１０２】
ディレクトリ"AUXDATA"は、メニュー表示などに用いられる、サウンドファイル、フォントファイル、フォントインデックスファイルおよびビットマップファイルなどが置かれる。ファイル"sound.bdmv"は、ＨＤＭＶのインタラクティブなグラフィクスストリームのアプリケーションに関連したサウンドデータが格納される。ファイル名は、"sound.bdmv"に固定的とされる。ファイル"aaaaa.otf"は、字幕表示や上述したＢＤ−Ｊアプリケーションなどで用いられるフォントデータが格納される。ファイル名において、ピリオドの前の"aaaaa"は、５桁の数字とされ、ピリオドの後ろの"otf"は、このタイプのファイルに固定的とされた拡張子である。ファイル"bdmv.fontindex"は、フォントのインデックスファイルである。
【０１０３】
ディレクトリ"META"は、メタデータファイルが格納される。ディレクトリ"BDJO"およびディレクトリ"JAR"は、上述のＢＤ−Ｊオブジェクトに関連するファイルが格納される。また、ディレクトリ"BACKUP"は、上述までの各ディレクトリおよびファイルのバックアップが格納される。これらディレクトリ"META"、ディレクトリ"BDJO"、ディレクトリ"JAR"およびディレクトリ"BACKUP"は、この発明の主旨と直接的な関わりがないので、詳細な説明を省略する。
【０１０４】
なお、ディレクトリ"HDAVCTN"は、２種類のサムネイルファイルthumbnail.tidxおよびthumbnail.tdt2を置くことができる。サムネイルファイルthumbnail.tidxは、サムネイルファイルthumbnail.tdt2に格納されるサムネイル画像を管理する情報が格納される。
【０１０５】
図６で示した各ファイルのうち、この発明に関わりの深いものについて、より詳細に説明する。先ず、ディレクトリ"BDMV"の直下に置かれるファイル"index.bdmv"について説明する。図７は、このファイル"index.bdmv"の一例の構造を表すシンタクスを示す。ここでは、シンタクスをコンピュータ装置などのプログラムの記述言語として用いられるＣ言語の記述法に基づき示す。これは、他のシンタクスを表す図において、同様である。
【０１０６】
図７において、フィールドtype_indicatorは、３２ビットのデータ長を有し、このファイルがインデックステーブルであることを示す。フィールドversion_numberは、３２ビットのデータ長を有し、このファイル"index.bdmv"のバージョンを示す。フィールドindexes_start_addressは、３２ビットのデータ長を有し、このシンタクス内にあるブロックIndexes()の開始アドレスを示す。
【０１０７】
フィールドExtensionData_start_addressは、３２ビットのデータ長を有し、このシンタクス内にあるブロックExtensionData()の開始アドレスを示す。フィールドExtensionData_start_addressは、このファイル"index.bdmv"の最初のバイトからの相対バイト数で、ブロックExtensionData()の開始アドレスを示す。相対バイト数は、"０"から開始される。若し、このフィールドExtensionData_start_addressの値が"０"であれば、このファイル"index.bdmv"内に、ブロックExtensionData()が存在しないことを示す。
【０１０８】
フィールドExtensionData_start_addressに続くデータ長が１９２バイトの領域は、将来の使用のために予約されている領域である。ブロックAppInfoBDMV()は、コンテンツ制作者が任意の情報を記述できるブロックであって、プレーヤの動作などには影響を与えない。
【０１０９】
ブロックIndexes()は、このファイル"index.bdmv"の実質的な内容であって、このファイル"index.bdmv"に記述された内容により、ディスクをプレーヤに装填した際に再生されるファーストプレイバックや、トップメニューから呼び出されるタイトル（ムービーオブジェクトやＢＤ−Ｊオブジェクト）が指定される。なお、以下では、ムービーオブジェクトおよびＢＤ−Ｊオブジェクトを纏めて、ムービーオブジェクト等と記述する。インデックステーブルにより呼び出されたムービーオブジェクト等に記述されたコマンドに基づき、後述するムービープレイリストファイルが読み込まれる。
【０１１０】
図８は、ブロックIndexes()の一例の構造を表すシンタクスを示す。なお、図８において、この発明と直接的に関わりのない部分は、領域Reservedとして記されている。すなわち、図８の表記は、記録可能な記録媒体のための拡張ＢＤＭＶフォーマットに適用される記述に限定的とされている。フィールドlengthは、３２ビットのデータ長を有し、このフィールドlength直後からこのブロックIndexes()の終わりまでのデータ長を示す。続けて、ブロックFirstPlayback()およびブロックTopMenu()が配される。
【０１１１】
ブロックFirstPlayback()は、ファーストプレイバックで用いられるオブジェクトに関する情報が記述される。ブロックFirstPlayback()の最初のフィールドには、固定値"01"が記述され、ファーストプレイバックで用いられるオブジェクトがムービーオブジェクトであることが示される。そして、２ビットのデータ長を有するフィールドHDAVC_Title_playback_typeによりＨＤＡＶＣタイトルの再生タイプが示され、１６ビットのデータ長を有するフィールドFirstPlaybak_mobj_id_refにより、ファーストプレイバックで用いられるムービーオブジェクトのＩＤを示す。
【０１１２】
ムービーオブジェクトのＩＤは、例えば、図９および図１０を用いて後述するムービーオブジェクトのシンタクスに基づき、ムービーオブジェクトのforループ文においてループ変数として用いられる値mobj_idで示される。この例では、フィールドFirstPlayback_mobj_id_refは、参照するムービーオブジェクトに対応する値mobj_idが格納される。
【０１１３】
なお、ブロックIndexes()におけるブロックFirstPlayback()内のフィールドFirstPlayback_mobj_id_refは、トップメニューのムービーオブジェクトを指していてもよいし、タイトルを指していてもよい。
【０１１４】
ブロックTopMenu()は、トップメニューで用いられるオブジェクトに関する情報が記述される。ブロックTopMenu()の最初のフィールドには、固定値"01"が記述され、３０ビットのデータ長を有する領域Reservedを介してさらに固定値"01"が記述される。フィールドTopMenu_mobj_id_refは、１６ビットのデータ長を有し、トップメニューで用いられるムービーオブジェクトのＩＤを示す。
【０１１５】
ブロックTopMenu()の次のフィールドnumber_of_Titlesは、１６ビットのデータ長を有し、ユーザが選択、再生可能なタイトルの数を示す。次のforループ文に従い、このフィールドnumber_of_Titlesに示される回数だけ、値title_idを引数として、ブロックTitle[title_id]()が記述される。ブロックTitle[title_id]()は、タイトル毎の情報が記述される。値title_idは、"０"からフィールドnumber_of_Titlesで示される値までの数値であり、タイトルを識別する。
【０１１６】
ブロックTitle[title_id]()において、最初のフィールドには固定値"01"が記述され、４６ビットのデータ長を有する領域Reservedを介してフィールドTitle_mobj_id_refが記述される。フィールドTitle_mobj_id_refは、１６ビットのデータ長を有し、このタイトルで用いられるムービーオブジェクトのＩＤを示す。
【０１１７】
図９は、ディレクトリ"BDMV"の直下に置かれるファイル"MovieObject.bdmv"の一例の構造を表すシンタクスを示す。フィールドtype_indicatorは、３２ビット（４バイト）のデータ長を有し、このファイルがファイル"MovieObject.bdmv"であることを示す。フィールドtype_indicatorは、ＩＳＯ(International Organization for Standarization)６４６に規定された符号化方式で符号化した４文字からなる文字列が記述される。この図９の例では、フィールドtype_indicatorにＩＳＯ６４６に既定の方式で符号化された４文字の文字列"MOBJ"が記述され、このファイルがファイル"MovieObject.bdmv"であることが示される。
【０１１８】
フィールドversion_numberは、３２ビット（４バイト）のデータ長を有し、このファイル"MovieObject.bdmv"のバージョン番号を示す。このファイル"MovieObject.bdmv"では、フィールドversion_numberは、ＩＳＯ６４６に規定された符号化方式で符号化した４文字の文字列"0100"でなければならない。
【０１１９】
フィールドExtensionData_start_addressは、３２ビットのデータ長を有し、このシンタクス内にあるブロックExtensionData()の開始アドレスを示す。フィールドExtensionData_start_addressは、このファイル"MovieObject.bdmv"の最初のバイトからの相対バイト数で、ブロックExtensionData()の開始アドレスを示す。相対バイト数は、"０"から開始される。若し、このフィールドExtensionData_start_addressの値が"０"であれば、このファイル"MovieObject.bdmv"内に、ブロックExtensionData()が存在しないことを示す。
【０１２０】
なお、この図９に示すシンタクス内のフィールドpadding_wordは、１６ビットのデータ長を有し、このファイル"MovieObject.bdmv"のシンタクスに従いforループ文に値N1または値N2で示される回数だけ挿入される。値N1または値N2は、０または任意の正の整数である。また、フィールドpadding_wordは、任意の値を用いることができる。
【０１２１】
フィールドExtensionData_start_addressに続くデータ長が２２４ビットの領域は、将来の使用のために予約されている領域である。この領域の次に、このファイル"MovieObject.bdmv"の本体であるブロックMovieObjects()が格納される。
【０１２２】
図１０は、ブロックMovieObjects()の一例の構造を表すシンタクスを示す。フィールドlengthは、３２ビットのデータ長を有し、このフィールドlengthの直後からこのブロックMovieObjects()の終わりまでのデータ長を示す。３２ビットのデータ長を有する予約領域を介してフィールドnumber_of_mobjsが配される。フィールドnumber_of_mobjsは、直後のforループ文に従い格納されるムービーオブジェクトの数を示す。forループ文のループ変数として用いられる値mobj_idで、ムービーオブジェクトが一意に特定される。値mobj_idは、０から始まる値で、ムービーオブジェクトは、forループ文中に記述される順序により定義される。
【０１２３】
forループ文中のブロックTerminalInfo()は、それぞれ１ビットのデータ長を有するフィールドにより、固定値"1"、固定値"0"および固定値"0"が格納され、データ長が１３ビットの予約領域を介してフィールドnumber_of_navigation_commands[mobj_id]が配される。このフィールドnumber_of_navigation_commands[mobj_id]は、値mobj_idによって指し示されるムービーオブジェクトMovieObject[mobj_id]()に含まれるナビゲーションコマンド(navigation_command)の数を表す。
【０１２４】
次の、値command_idをループ変数とするforループ文により、フィールドnumber_of_navigation_commands[mobj_id]に示される数だけ、ナビゲーションコマンドが記述される。すなわち、このforループ文中に配されるフィールドnavigation_command[mobj_id][command_id]は、値mobj_idによって指し示されるブロックMovieObject[mobj_id]()に含まれる、値command_idで示される順番のナビゲーションコマンドnavigation_commandを格納する。値command_idは、０から始まる値で、ナビゲーションコマンドnavigation_commandは、このforループ文中に記述される順序で定義される。
【０１２５】
次に、ＢＤ−ＲＯＭ規格を記録可能な記録媒体に適用できるように拡張した際に定義される、ブロックExtensionData()について説明する。このブロックExtensionData()は、インデックステーブルが格納されるファイル"index.bdmv"、プレイリストが格納されるファイル"xxxxx.mpls"およびクリップインフォメーションファイル"zzzzz.clpi"の各ファイルに記述することができる。この発明の実施の一形態では、ファイル"index.bdmv"のブロックExtensionData()が用いられる。
【０１２６】
図１１は、ブロックExtensionData()の一例の構造を表すシンタクスを示す。フィールドlengthは、３２ビットのデータ長を有し、このフィールドlengthの直後からブロックExtensionData()の終わりまでのデータ長をバイト数で示す。このフィールドlengthの示すデータ長が"０"でなければ、if文以下の記述がなされる。
【０１２７】
フィールドdata_block_start_addressは、３２ビットのデータ長を有し、このシンタクス中の、拡張データext_dataの本体が格納されるブロックdata_block()の開始アドレスを、このブロックExtensionData()の先頭バイトからの相対バイト数で示す。すなわち、相対バイト数は、"０"から開始される。なお、フィールドdata_block_start_addressは、次に示す３２ビットアライメントの条件を満たさなければならない。
data_block_start_address％４＝０
【０１２８】
フィールドnumber_of_ext_data_entriesは、８ビットのデータ長を有し、このブロックExtensionData()のブロックdata_block()に格納される拡張データのエントリ数を示す。拡張データのエントリは、拡張データの本体を取得するための情報が格納される。より具体的には、拡張データのエントリは、例えばフィールドID1、フィールドID2、フィールドext_data_start_addressおよびフィールドext_data_lengthからなるブロックext_data_entry()であって、ブロックExtensionData()において、このフィールドnumber_of_ext_data_entriesに示される個数だけ、このブロックext_data_entry()が存在する。
【０１２９】
フィールドID1は、１６ビットのデータ長を有し、このブロックExtensionData()に記述される拡張データが記録装置用の拡張データであることを表す。このフィールドID1の値は、拡張データを識別する第１の値であり、このブロックExtensionData()を含む規格書のライセンサ（使用認可者）が割り当てると定義することができる。フィールドID2は、拡張データを識別する第２の値であり、この拡張データのバージョン番号を表すものと定義することができる。なお、このブロックExtensionData()において、フィールドID1およびフィールドID2の値が同一のブロックext_data_entry()が２以上、存在してはならない。
【０１３０】
フィールドext_data_start_addressは、３２ビットのデータ長を有し、このフィールドext_data_start_addressが含まれる拡張データのエントリ（ブロックext_data_entry()）に対応する拡張データext_dataの開始アドレスを示す。フィールドext_data_start_addressは、ブロックExtensionData()の先頭バイトからの相対バイト数で、拡張データext_dataの開始アドレスを示す。なお、フィールドext_data_start_addressは、次に示す３２ビットアライメントの条件を満たさなければならない。
ext_data_start_address％４＝０
【０１３１】
フィールドext_data_lengthは、３２ビットのデータ長を有し、このフィールドext_data_start_addressが含まれる拡張データのエントリ（ブロックext_data_entries()）に対応する拡張データext_dataのデータ長を示す。データ長は、バイト数で示される。
【０１３２】
フィールドnumber_of_ext_data_entriesで示された個数だけ、拡張データのエントリ（ブロックext_data_entry()）が記述されると、それぞれ１６ビットのデータ長を有し任意のデータ列からなるフィールドpadding_wordが、２フィールドを組として任意の回数Ｌ１だけ繰り返される。その後、拡張データの本体が格納されるブロックdata_block()が記述される。ブロックdata_block()は、１以上の拡張データext_dataが格納される。それぞれの拡張データext_dataは、上述したフィールドext_data_start_addressフィールドext_data_lengthに基づき、ブロックdata_block()から取り出される。
【０１３３】
図１２は、ブロックExtensionData()における各データの参照関係を模式的に示す。フィールドlengthにより、フィールドlength直後の位置からブロックExtensionData()の最後までのデータ長が示される。フィールドdata_block_start_addressにより、ブロックdata_block()の開始位置が示される。フィールドnumber_of_ext_data_entriesで示される個数だけ、ブロックext_data_entryが記述される。最後のブロックext_data_entryからブロックdata_block()の間には、任意の長さでフィールドpadding_wordが置かれる。
【０１３４】
ブロックdata_block()内には、ブロックext_data_entry()で示される拡張データext_dataが置かれる。それぞれの拡張データext_dataの位置およびデータ長は、対応するブロックext_data_entry()内のフィールドext_data_start_addressおよびフィールドext_data_lengthにより示される。したがって、ブロックdata_block()内での拡張データext_dataの並び順は、対応するブロックext_data_entry()の並び順と一致していなくてもよい。
【０１３５】
このように、拡張データを、拡張データの本体が格納されるブロックdata_block()と、ブロックdata_block()内の拡張データに対するアクセス情報などが格納されるブロックext_data_entry()とによる２層構造とすることで、複数の拡張データを格納することが可能となる。
【０１３６】
次に、上述の拡張データの一例の作成方法および読み出し方法について説明する。図１３は、ブロックExtensionData()にデータを書き込む際の一例の処理を示すフローチャートである。この図１３は、ブロックExtensionData()中の（ｎ＋１）番目のエントリとして、拡張データを追加し、ブロックExtensionData()を書き換える場合の例である。
【０１３７】
先ず、ステップＳ１０で、書き込もうとしている拡張データのデータ長を取得し、フィールドext_data_length[n+1]の値にセットする。なお、「[n+1]」の記述は、（ｎ＋１）番目のエントリの番号に対応する。次に、ステップＳ１１で、現在のブロックExtensionData()に列挙されているブロックext_data_entry()のフィールドext_data_lengthおよびフィールドext_data_start_addressの値を調べ、ブロックdata_block()の使用状況を取得する。
【０１３８】
そして、次のステップＳ１２で、ブロックdata_block()中に、書き込もうとしている拡張データのデータ長であるフィールドext_data_length[n+1]に示されるデータ長以上の、連続した空き領域があるか否かが判断される。若し、あると判断されれば、処理はステップＳ１４に移行される。
【０１３９】
一方、フィールドext_data_length[n+1]に示されるデータ長以上の連続した空き領域が無いと判断されれば、処理はステップＳ１３に移行され、ブロックExtensionData()におけるフィールドlengthの値を大きくし、フィールドext_data_length[n+1]に示されるデータ長以上の連続した空き領域をブロックdata_block()内に作る。空き領域ができたら、処理がステップＳ１４に移行される。
【０１４０】
ステップＳ１４では、拡張データを書き込む領域の先頭アドレスを決め、その先頭アドレスの値をフィールドext_data_start_address[n+1]とする。次のステップＳ１５で、フィールドext_data_start_address[n+1]から、上述のステップＳ１０でセットされたフィールドext_data_length[n+1]の長さの拡張データext_data[n+1]を書き込む。
【０１４１】
データの書き込みが終了したら、ステップＳ１６で、ブロックext_data_entry()に対して、フィールドext_data_length[n+1]と、フィールドext_data_start_address[n+1]とを追加する。
【０１４２】
なお、上述において、書き換えを行うブロックExtensionData()は、すでにディスクなどの記録媒体から読み出されて記録装置のメモリに記憶されているものとする。そのため、ステップＳ１３における、フィールドlengthの値の変更によるブロックExtensionData()の拡大は、システムに任され、システムがメモリアロケーションを適切に行うことでなされる。
【０１４３】
図１４は、ブロックExtensionData()から拡張データを読み出す際の一例の処理を示すフローチャートである。なお、この図１４のフローチャートによる処理は、再生専用の記録媒体（例えばＢＤ−ＲＯＭ）と、記録可能な記録媒体（例えばＢＤ−ＲＥ）との両方に適用可能なものである。
【０１４４】
先ず、最初のステップＳ２０で、読み込もうとする拡張データが準拠する規格から、フィールドID1の値を取得し、ステップＳ２１で、読み込もうとする拡張データの種別から、フィールドID2の値を取得する。
【０１４５】
次のステップＳ２２で、ブロックExtensionData()に列挙されているブロックext_data_entry()を１つずつ順次、読み込む。そして、ステップＳ２３で、読み込んだブロックext_data_entry()に含まれるフィールドID1およびフィールドID2の値が、上述のステップＳ２０およびステップＳ２１で取得したフィールドID1およびフィールドID2の値と一致するか否かが判断される。
【０１４６】
一致していないと判断されれば、処理はステップＳ２６に移行され、ブロックExtensionData()内に列挙されるブロックext_data_entry()を全て読み終えたか否かが判断される。全て読み終えたと判断されれば、処理はステップＳ２７に移行され、このブロックExtensionData()には、読み込もうとした拡張データが存在しないとして、一連の処理が終了される。全て読み終えていないと判断されれば、処理はステップＳ２２に戻され、次のブロックext_data_entry()が読み込まれる。
【０１４７】
上述のステップＳ２３において、ブロックext_data_entry()に含まれるフィールドID1およびフィールドID2の値が、取得したフィールドID1およびフィールドID2の値と一致していると判断されれば、処理はステップＳ２４に移行される。ここでは、ブロックExtensionData()中の[i]番目のエントリで一致したものとする。
【０１４８】
ステップＳ２４では、[i]番目のエントリのブロックext_data_entry()からフィールドext_data_length[i]の値と、フィールドext_data_start_address[i]の値とを読み込む。そして、ステップＳ２５で、ステップＳ２４で読み込んだフィールドext_data_start_address[i]で示されるアドレスから、フィールドext_data_length[i]で示されるデータ長だけ、データを読み出す。
【０１４９】
次に、この発明の実施の一形態について説明する。この発明では、プレイリストに対して、そのプレイリストが最初に属したタイトルを示す情報を付加し、この情報は、タイトルの編集などに関わらず不変とする。このような情報を定義することで、タイトルの編集に関わらずタイトル番号を維持するシステムと、タイトルの編集に際してタイトルの記録順を保持しタイトル番号を編集に応じて変更するシステムとの間で、メニュー構成の互換性を保つことができる。
【０１５０】
このプレイリストが最初に属したタイトルを示す情報は、ファイル"index.bdmv"に埋め込まれる拡張データにおいて、プレイリストの属性情報として定義され、ファイル"index.bdmv"のフィールドExtensionData()内のブロックTableOfPlayLists()に記述される。図１５は、このプレイリスト属性を記述するための、ファイル"index.bdmv"内のフィールドExtensionData()におけるブロックdata_block()（図１１参照）の一例の構造を表すシンタクスを示す。この図１５の例では、ブロックdata_block()がブロックIndexExtensionData()として記述されている。
【０１５１】
先ず、上述の図１１を参照して、ブロックExtensionData()においてフィールドID1を値"0x1000"、フィールドID2を値"0x0100"とする。これらフィールドID1およびフィールドID2に記述された値は、例えば再生装置側において、予めＲＯＭ(Read Only Memory)などに記憶されたテーブルが参照されて識別される。ブロックdata_block()内のフィールドext_data_start_addressおよびフィールドext_data_lengthで示される領域に、ブロックIndexExtensionData()が格納される。なお、数値の記述において"0x"は、その数値が１６進表記されていることを示す。
【０１５２】
ブロックIndexExtensionData()において、フィールドtype_indicatorは、次に続くデータの種類を示す、ＩＳＯ６４６に規定された符号化方式で符号化した４文字からなる文字列が記述される。この図１５の例では、フィールドtype_indicatorにＩＳＯ６４６に既定の方式で符号化された４文字の文字列"IDEX"が記述され、次に続くデータ種類が「IndexExtensionData」であることが示される。
【０１５３】
フィールドtype_indicatorに続けて３２ビットのデータ長を有する予約領域が配され、その次に、３２ビットのデータ長を有するフィールドTableOfPlayLists_start_addressが配される。フィールドTableOfPlayLists_start_addressは、ブロックTableOfPlayLists()の、このブロックIndexExtensionData()先頭を基準とした開始アドレスが示される。
【０１５４】
フィールドTableOfPlayLists_start_addressの次に、３２ビットのデータ長を有するフィールドMakersPrivateData_start_addressが配されブロックMakersPrivateData()のこのブロックIndexExtensionData()先頭を基準とした開始アドレスが示され、１９２ビットのデータ長を有する予約領域を介してブロックUIAppInfoHDAVC()が配される。１６ビットのデータ長を有するパディングワードpadding_wordを介して、次に、上述したブロックTableOfPlayLists()が配される。さらに続けて、１６ビットのデータ長を有するパディングワードpadding_wordを介してブロックMakersPrivateData()が配される。
【０１５５】
なお、ブロックUIAppInfoHDAVC()およびブロックMakersPrivateData()は、この発明と関わりが薄いので、説明を省略する。
【０１５６】
図１６は、上述したブロックTableOfPlayLists()の一例の構造を表すシンタクスを示す。フィールドlengthは、３２ビットのデータ長を有し、このフィールドlengthの直後からブロックTableOfPlayLists()の最後のバイトまでのデータ長をバイト数で示す。フィールドnumber_of_PlayListsは、１６ビットのデータ長を有し、プレイリストの数を示す。すなわち、フィールドnumber_of_PlayListsにより、ディスク上に存在するプレイリストの総数が示される。
【０１５７】
次のforループ文に従い、フィールドnumber_of_PlayListsで示される数だけ、フィールドPlayList_file_name、フィールドPlayList_attributeおよびフィールドtitle_id_refがそれぞれ記述される。すなわち、このforループ文で示される１回分のループが１のプレイリストに対応し、当該プレイリストのファイル名、当該プレイリストに付与された属性、ならびに、当該プレイリストの参照タイトルＩＤからなるプレイリストの情報が記述される。
【０１５８】
このforループ文による並び順は、記録順とされる。すなわち、１のプレイリストが追加されると、フィールドnumber_of_PlayListsの値が１だけインクリメントされ、既存のプレイリストの情報の後ろに、追加されたプレイリストの情報が追記される。
【０１５９】
なお、このforループ文で定義されるループ内のそれぞれ６ビット、１６ビットのデータ長を有するフィールドreserved_for_future_useは、将来の使用のために予約されている領域である。
【０１６０】
フィールドPlayList_file_nameは、プレイリストのファイル名がＩＳＯ６４６に規定された符号化方式で符号化されて記述される。フィールドPlayList_attributeは、当該プレイリストに付与された属性を示す。プレイリストは、その成因に基づき、クリップの生成と共に生成されるプレイリストに対応する第１の種類と、既存のタイトルあるいはプレイリストの一部または全部を用いて作成されるプレイリストに対応する第２の種類と、メニューを再生するために用いる第３の種類との３種類に分けられ、各プレイリストには、プレイリストの種類に応じて、それぞれ対応する属性「Real」（第１の種類）、属性「Virtual」（第２の種類）および属性「Menu」（第３の種類）が付与される。
【０１６１】
なお、以下では適宜、属性「Real」が付与されたプレイリストをリアルプレイリスト、属性「Virtual」が付与されたプレイリストをバーチャルプレイリスト、属性「Menu」を付与されたプレイリストをメニュープレイリストと呼ぶ。
【０１６２】
フィールドtitle_id_refは、同一ループ内のフィールドPlayList_file_nameに示されるプレイリストが属するタイトルのＩＤ（番号）が記述される。より具体的な例としては、インデックスファイル"index.bdmv"内のブロックIndexes()における、対応する値title_idが記述される。なお、当該プレイリストがタイトルとして再生されず、ファーストプレイバックのみから再生される場合、フィールドtitle_id_refの値は、第１の固定値、例えば"0xFFFF"とされる。また、当該プレイリストがタイトルとして再生されず、トップメニューから再生される場合は、フィールドtitle_id_refの値は、第２の固定値、例えば"0xFFFE"とされる。
【０１６３】
次に、この発明の実施の一形態によるメニューの一例の編集処理について説明する。この発明の実施の一形態では、ＢＤ−ＲＯＭ規格に対して次のような制約を設けることで、ＢＤ−ＲＯＭ規格を記録可能な記録媒体に拡張した場合のメニュー編集を実現する。
【０１６４】
タイトル、ムービーオブジェクトおよびプレイリストの関係に関して、以下の通り制約を設ける。なお、ここでいう「タイトル」は、トップメニューにおいて選択され再生されるタイトルであるものとする。
（Ａ）トップメニュー用のプレイリストと、通常のタイトルを再生するためのプレイリストとは、互いに独立とする。
（Ｂ）各タイトルは、ムービータイトルであること。すなわち、各タイトルは、インタラクティブタイトルであってはいけない。
（Ｃ）各タイトルは、１つのムービーオブジェクトを介して１つのプレイリストから構成する。
【０１６５】
また、タイトルおよびプレイリストの並び順に関して、下記の通り制約を設ける。
（Ｄ）ブロックTableOfPlayLists()におけるプレイリストの並び順は、記録順とする。
（Ｅ）各タイトルから再生されるプレイリストは、ファイル"index.bdmv"内のブロックIndexes()におけるタイトルの並びと、ファーストプレイバックおよびトップメニューを構成するプレイリストを除いた残りのプレイリストの、ブロックTableOfPlayLists()における並びとを対応させて決める。
【０１６６】
上述の制約（Ａ）「トップメニュー用のプレイリストと、通常のタイトルを再生するためのプレイリストとは、互いに独立とする」、制約「（Ｂ）各タイトルは、ムービータイトルであること。すなわち、各タイトルは、インタラクティブタイトルであってはいけない」、ならびに、制約（Ｃ）「各タイトルは、１つのムービーオブジェクトを介して１つのプレイリストから構成する」は、メニュー編集処理を容易とするための制約である。
【０１６７】
すなわち、これら制約（Ａ）、（Ｂ）および（Ｃ）によれば、メニューを再生するためのプレイリストと、メニューから呼び出されるタイトルを構成するプレイリストとが明確に分離されると共に、プレイリスト、ムービーオブジェクトおよびタイトルの参照関係が互いに１対１の関係となる。例えば、各タイトルは、それぞれ１つのムービーオブジェクトを参照し、各ムービーオブジェクトは、それぞれ１つのプレイリストを呼び出す。一例として、ムービーオブジェクトに記述されるナビゲーションコマンドは、１つのプレイリストファイルを指定し、再生するようなコマンドとされる。
【０１６８】
これら制約（Ａ）、（Ｂ）および（Ｃ）に基づくメニューの編集方法は、例えば以下のようになる。一例として、既に複数のタイトルが記録されたディスクにクリップを追加して記録し、記録されたクリップを再生するためのタイトルをメニューに追加する場合について考える。先ず、新たに記録されたクリップに対応するプレイリストが生成される。生成されたプレイリストに対して属性「Real」が付加され、当該プレイリストがリアルプレイリストとされる。そして、このリアルプレイリストを呼び出すムービーオブジェクトが生成される。このムービーオブジェクトに対するリンクがインデックステーブルに記述され、タイトルが形成される。
【０１６９】
次に、既存のメニューの削除が行われる。すなわち、メニューを再生するためのプレイリスト（メニュープレイリスト）およびムービーオブジェクトが削除され、インデックステーブルからトップメニューおよびファーストプレイバックが削除される。メニューを再生するためのプレイリスト型のプレイリストと明確に分離されているため、メニューを再生するためのムービーオブジェクトおよびプレイリストを容易に削除することができる。
【０１７０】
さらに、既存のタイトルおよび追加されたタイトルに基づき、メニューを再生するためのプレイリストおよびムービーオブジェクトが新規に作成されると共に、トップメニューおよびファーストプレイバックがインデックステーブルに記述される。プレイリスト、ムービーオブジェクトおよびタイトルの参照関係が互いに１対１の関係となっているので、既存のタイトルと追加されたタイトルとに基づき、これらメニューを再生するためのムービーオブジェクトおよびプレイリストを新規に作成することが容易である。
【０１７１】
このように、制約（Ａ）、（Ｂ）および（Ｃ）に基づき、タイトルの追加に伴うメニューの更新を極めて容易に行うことができる。
【０１７２】
上述の制約（Ｄ）「ブロックTableOfPlayLists()におけるプレイリストの並び順は、記録順とする」と、制約（Ｅ）「各タイトルから再生されるプレイリストは、ファイル"index.bdmv"内のブロックIndexes()におけるタイトルの並びと、ファーストプレイバックおよびトップメニューを構成するプレイリストを除いた残りのプレイリストの、ブロックTableOfPlayLists()における並びとを対応させて決める」は、タイトルの編集に関わらずタイトル番号を保持するシステムと、タイトルの編集に際してタイトルの記録順を保持しタイトル番号を編集に応じて変更するシステムとの互換性を保つための制約である。
【０１７３】
一般的に、記録可能な記録媒体にタイトルを記録する場合、タイトル番号は、記録順に付与されると考えられる。そのため、上述の制約（Ｄ）により、ブロックTableOfPlayLists()において、ムービーオブジェクトから参照される全てのプレイリストを記録順に並べる制約を設ける。これにより、ブロックTableOfPlayLists()に記述されるプレイリストの並び順を調べることで、タイトルの記録順を復元することができる。
【０１７４】
一例として、記録機の仕様によっては、タイトルの編集などに伴いトップメニューやインデックステーブル内のブロックIndexes()を削除する場合が考えられる。この制約（Ｄ）によれば、このような場合でも、ブロックTableOfPlayLists()を参照することで、タイトルの記録順を復元することができる。
【０１７５】
しかしながら、この制約（Ｄ）だけでは、タイトルの記録順は保持されるが、タイトル番号が保持されないことになる。記録機の仕様によっては、タイトルの編集を行っても、タイトルの記録時に割り当てられたタイトル番号を維持し、編集によって不変の番号をユーザに提供したい場合もある。上述の制約（Ｅ）は、この記録機間におけるタイトル管理の互換性の問題を解決するものである。制約（Ｅ）は、タイトル側ではなく、プレイリスト側にタイトル番号の情報を持たせることで、例えばインデックステーブルにおいてブロックIndexes()が削除されても、タイトルの記録時のタイトル番号の情報が失われることがない。
【０１７６】
すなわち、ブロックIndexes()におけるフィールドtitle_idの値と、ブロックTableOfPlayLists()におけるフィールドtitle_id_refの値とを対応させて再生するプレイリストを決める。例えばメニュー画面の構成やプレイリストの再生を、記録時のタイトル番号を用いる記録機の場合には、フィールドtitle_id_refに基づき行い、タイトルの記録順を保持する記録機の場合には、フィールドtitle_idに基づき行う。
【０１７７】
図１７〜図１９を用いて、この発明の実施の一形態によるメニューの編集処理について、より具体的に説明する。図１７は、編集前のメニュー画面１００と、当該メニュー画面１００に関わるタイトル、ムービーオブジェクトおよびプレイリストの構成例を示す。この図１７の例では、ディスク上には既に６個のタイトル＃１〜＃６が記録されているものとする。各タイトルは、図８を用いて既に説明したように、ファイル"index.bdmv"内のブロックIndexes()において、ループ変数として用いられる値title_idで識別されるフィールドTitle[title_id]として登録され、フィールドTitle_mobj_id_ref[title_id]によりムービーオブジェクトを参照する。なお、タイトル番号は、値title_idに１を加えた値として定義されるものとする。ムービーオブジェクトは、ファイル"MovieObject.bdmv"内に値title_idの順に格納され、再生するプレイリストの情報が記述される。
【０１７８】
プレイリストは、例えばプレイリストが生成された順に連番でファイル名が"00001.mpls"、"00002.mpls"、"00003.mpls"、"00004.mpls"、"00005.mpls"および"00006.mpls"のように付され、ディレクトリ"PLAYLIST"の下に格納される。
【０１７９】
上述した項目（Ｂ）の、「各タイトルはムービータイトルであること」の制約に従い、各タイトルは、それぞれ一つのムービーオブジェクトを呼び出す。また、上述の項目（Ｃ）の「各タイトルは、１つのムービーオブジェクトを介して１つのプレイリストから構成する」の制約に従い、各ムービーオブジェクトは、それぞれ一つのプレイリストを参照する。すなわち、タイトル、ムービーオブジェクトおよびプレイリストは、互いに１対１の関係とされる。
【０１８０】
図１７の例では、値title_idが１で、タイトル番号＃２のタイトルは、値title_idが対応するムービーオブジェクト＃１のみを参照し、ムービーオブジェクト＃１は、ファイル名"00002.mpls"のプレイリストのみを参照する。この例では、ファイル名"00002.mpls"のプレイリストは、属性「Virtual」が付与されたバーチャルプレイリストである。また、タイトル番号＃３のタイトルは、値title_idが対応するムービーオブジェクト＃２のみを参照し、この例では、ムービーオブジェクト＃２は、ファイル名"00003.mpls"のプレイリストのみを参照する。このファイル名"00003.mpls"のプレイリストは、属性「Real」が付与されたリアルプレイリストであり、クリップに対して１対１の対応関係がある。
【０１８１】
ディスク上に記録されているタイトルの再生を指示するためのメニュー画面は、インデックステーブル内のファーストプレイバックおよびトップメニューに基づき再生される。ファイル"index.bdmv"内のブロックIndexes()におけるブロックFirstPlayback()のフィールドFirstPlayback_mobj_id_refと、フロックTopMenu()のフィールドTopMenu_mobj_id_refとに、メニュー画面を再生するために参照するムービーオブジェクトが記述される。この図１７の例では、これらフィールドFirstPlayback_mobj_id_refおよびフィールドTopMenu_mobj_id_refは、共に同一のムービーオブジェクト＃６を参照するようにされている。
【０１８２】
ムービーオブジェクト＃６は、メニュー画面を実際に再生するためのメニュープレイリストを参照する。この図１７の例では、ムービーオブジェクト＃６は、属性「Menu」を付与された、ファイル名"01001.mpls"のプレイリストを参照している。
【０１８３】
メニュー画面を再生するためのプレイリストに属性「Menu」を付与し、ファーストプレイバックおよびトップメニューから参照されるムービーオブジェクトは、属性「Menu」を付与されたメニュープレイリストのみを参照するようにし、また、ファーストプレイバックおよびトップメニューから参照されるムービーオブジェクトは、トップメニューから呼び出される各タイトルの参照および当該各タイトルから参照されるムービーオブジェクトの参照も行わないようにする。このように規定することで、上述した項目（Ａ）の、「トップメニュー用のプレイリストと、通常のタイトルを再生するためのプレイリストとは、互いに独立とする」旨の制約を実現することができる。
【０１８４】
さらに、メニュープレイリストから参照されるクリップと、トップメニューから呼び出される各タイトルに対応するプレイリストから参照されるクリップとは、互いに独立とする。
【０１８５】
この編集前の状態において、ファイル名"00001.mpls"、"00002.mpls"、"00003.mpls"、"00004.mpls"、"00005.mpls"および"00006.mpls"のプレイリストに対して、ブロックTableOfPlayLists()内のフィールドtitle_id_refの値がそれぞれ０、１、２、３、４および５とされる。また、ファーストプレイバックおよびトップメニューからムービーオブジェクト＃６を介して参照されるファイル名"01001.mpls"のプレイリストは、フィールドtitle_id_refの値が"0xFFFE"とされ、このプレイリストがトップメニューから再生されるものであることが示される。
【０１８６】
なお、以下では、繁雑さを避けるために、「ブロックTableOfPlayLists()内のフィールドtitle_id_refの値」を適宜、「値title_id_ref」と略称する。
【０１８７】
また、図１７において、ファーストプレイバックおよびトップメニューからムービーオブジェクト＃６を介して参照されるプレイリストにより、メニュー画面１００が表示される。この図１７の例では、メニュー画面１００に対して、６個のタイトルそれぞれの再生を指示するためのボタン１０１Ａ〜１０１Ｆが所定のボタン画像データを用いて表示されると共に、このメニュー画面１００の題名１０２が表示される。
【０１８８】
例えば、ボタン１０１Ａを所定の方法で指示することで、値title_idが０、タイトル番号＃１のタイトルが指定され、ムービーオブジェクト＃０が参照され、このムービーオブジェクト＃０に記述されるナビゲーションコマンドにより、ファイル名"00001.mpls"のプレイリストが参照されると共に当該プレイリストの再生が命令され、当該プレイリストに対応するクリップが再生される。
【０１８９】
この図１７に示される状態からタイトルを削除する場合について考える。また、記録機のシステムは、タイトルの編集に際して、タイトルの記録順を保持しタイトル番号を編集に応じて変更するシステムであるものとする。
【０１９０】
図１８は、上述の図１７の状態から、値title_idが２でタイトル番号が３のタイトル＃３を削除した場合のメニュー画面１００’と、当該メニュー画面１００’に関わるタイトル、ムービーオブジェクトおよびプレイリストの構成例を示す。図１７の状態からタイトル番号＃３のタイトルが削除されたのに伴い、編集前のタイトル番号＃３以降のタイトル番号が１ずつ前に詰められる。それと共に、編集前のタイトル番号＃３のタイトルから呼び出されるムービーオブジェクト＃３が削除され、ムービーオブジェクトの番号が編集前のタイトル番号＃３から呼び出されるムービーオブジェクト＃３以降の番号が１ずつ前に詰められる。このとき、番号が変更されたムービーオブジェクトの内容は変化しないので、各ムービーオブジェクトから参照されるプレイリストは、編集の前後で変化しない。削除されたムービーオブジェクトから参照されていたプレイリスト（ファイル名"00003.mpls"）は、削除される。
【０１９１】
具体的な処理の例について説明する。図７および図８を参照し、タイトル番号＃３のタイトルが削除されることは、すなわち、インデックスファイル"index.bdmv"内のブロックIndexes()で、値title_idをループ変数とするforループ文において値title_idが２であるブロックTitle[title_id=2]()が削除されることである。ブロックTitle[title_id]()の数が１、減ったので、フィールドnumber_of_Titlesの値が対応して１だけ減ぜられる。これにより、削除されたタイトル以降のタイトルのタイトル番号が１ずつ詰められることになる。
【０１９２】
また、ブロックIndexes()内のブロックTitle[title_id=2]()が削除されることで、当該ブロックTitle[title_id=2]()からフィールドTitle_mobj_id_ref[title_id=2]の値に基づき参照されていたムービーオブジェクトも削除される。図９および図１０を参照し、ファイル"MovieObject.bdmv"においても、ブロックMovieObjects()で、値mobj_idをループ変数とするforループ文において、値mobj_idがフィールドTitle_mobj_id_ref[title_id=2]の値に対応するブロックMovieObject[mobj_id]()が削除される。ここでは、タイトルとムービーオブジェクトとの参照関係が１対１とされているので、値mobj_idが２であるブロックMovieObject[mobj_id=2]()が削除される。ブロックMovieObject[mobj_id]()の数が１、減ったので、フィールドnumber_of_mobjsの値が対応して１だけ減ぜられる。これにより、削除されたタイトル番号＃３のタイトルから呼び出されるムービーオブジェクトが削除され、削除されたムービーオブジェクト以降のムービーオブジェクトが内容の変化無しに１ずつ前に詰められる。ムービーオブジェクトの内容が変化していないので、当該ムービーオブジェクトとプレイリストとの間の参照関係は、変化しない。
【０１９３】
さらに、削除されたムービーオブジェクトに参照されていたプレイリストが削除される。このとき、削除されるプレイリストの属性が「Real」であれば、対応するクリップも削除される。プレイリストの削除に伴い、インデックスファイル"index.bdmv"内の拡張データブロックExtensionData()におけるブロックTableOfPlayLists()で、forループ文内の削除されるプレイリストのファイル名に対応する項目が削除され、フィールドnumber_of_PlayListsの値が１だけ減ぜられる。
【０１９４】
タイトルの削除に伴い、メニューが更新される。メニューの更新は、上述したように、編集前のメニューを削除し、タイトルの情報に基づき新規にメニューを作成することで行われる。より具体的には、ブロックTableOfPlayLists()においてフィールドPlayList_attributeから属性が「Menu」とされたプレイリストの情報を検索し、検索されたプレイリストを削除する。上述の図１７の例では、ファイル名"01001.mpls"のプレイリストが削除される。また、インデックスファイル"index.bdmv"のブロックIndexes()に基づき、トップメニューおよびファーストプレイバックから呼び出されるムービーオブジェクト（図１７の例ではムービーオブジェクト＃６）が削除される。そして、インデックステーブルにおいて、トップメニューおよびファーストプレイバックが削除される。
【０１９５】
編集前のメニューが削除されると、編集を反映したメニューが作成される。例えば、編集後のトップメニューによるメニュー画面１００’を再生するためのクリップ、ムービーオブジェクトおよびプレイリストが生成される。この処理は、例えば次のようにしてなされる。
【０１９６】
先ず、メニュー画面１００’を表示するためのクリップが生成される。この図１８の例では、図１７に示される、編集前のメニュー画面１００のボタン画像などをそのまま用いて、新規のメニュー画面１００’を構成している。メニュー画面１００’では、それぞれタイトル番号＃１、＃２、＃３、＃４および＃５に対応する５個のボタン１０１Ａ、１０１Ｂ、１０１Ｃ’、１０１Ｄ’および１０１Ｅ’が表示される。生成されたデータは、例えば所定に多重化され、クリップＡＶストリームファイルとしてディスク上に記録される。
【０１９７】
次に、このクリップＡＶストリームファイルに対応するクリップインフォメーションファイルが生成され、さらに、当該クリップインフォメーションファイルを参照するプレイリストが生成される。プレイリストのファイル名は、例えば既存のプレイリストのファイル名および今まで存在していたプレイリストのファイル名と重複しないように決められる。この例では、当該プレイリストのファイル名を、"01002.mpls"とする。
【０１９８】
プレイリストが生成されると、当該プレイリストを参照するためのムービーオブジェクトが生成される。このムービーオブジェクトは、上述したように、ファイル"MovieObject.bdmv"内のブロックMovieObjects()において、forループ文に追記される。したがって、このムービーオブジェクトは、最も大きいタイトル番号のタイトルから参照されるムービーオブジェクト＃４の次のムービーオブジェクト＃５とされる。
【０１９９】
この、トップメニューを再生するためのムービーオブジェクト＃５がインデックスファイル"index.bdmv"内のブロックIndexes()におけるブロックTopMenu()に登録される。すなわち、図８を参照し、当該ムービーオブジェクト＃５を示すデータがブロックTopMenu()内のフィールドTopMenu_mobj_id_refとして記述される。また、インデックスファイル"index.bdmv"内のブロックIndexes()におけるブロックFirstPlayback()が更新される。すなわち、ブロックFirstPlayback()において、フィールドHDAVC_Title_playback_typeの値が所定の値とされ、トップメニューを再生するためのムービーオブジェクト＃５を示すデータがフィールドFirstPlayback_mobj_id_refとして記述される。
【０２００】
そして、インデックスファイル"index.bdmv"における拡張データブロックExtensionData()内のブロックTableOfPlayLists()を更新する。この例では、ブロックTableOfPlayLists()において、フィールドnumber_of_PlayListsの値が１だけ減ぜられ、トップメニューを構成する新規に生成されたプレイリストについて、ファイル名がフィールドPlayList_file_nameとして記述されると共に、当該プレイリストの属性が「Menu」とされ、属性「Menu」を示す値がフィールドPLayList_attributeとして記述される。フィールドtitle_id_refは、プレイリストの属性が「Menu」であって、トップメニューから参照される場合には、値が例えば"0xFFFE"に固定的とされる。そして、フィールドlengthの値が追加された内容に基づき更新される。
【０２０１】
なお、上述した、タイトル編集に伴うファイル"index.bdmv"、ファイル"MovieObject.bdmv"などに対する更新処理は、実際には、ＣＰＵ(Central Processing Unit)のワークメモリ上での処理とされる。例えば、記録機は、ディスクが装填されると、先ず、ディスクからインデックスファイル"index.bdmv"やムービーオブジェクトファイル"MovieObject.bdmv"を読み出し、ＣＰＵのワークメモリに記憶する。ＣＰＵは、メニューの編集の命令を受けると、このワークメモリ上に記憶されたこれらのファイルに対して上述のようにして処理を行う。更新されたこれらのファイルは、例えばディスクの排出時や、記録機の電源ＯＦＦ時など所定のタイミングで、ディスクに書き戻される。
【０２０２】
次に、上述のようにして、図１８の構成で以て記録されたディスクを、タイトルを最初に記録した際に付与されたタイトル番号を保持するようにされた記録機に装填した場合について考える。この場合、記録機側では、上述の処理により削除されたタイトルのタイトル番号を復元する必要がある。このタイトル番号の復元は、この発明の実施の一形態で定義された、ブロックTableOfPlayLists()内のフィールドtitle_id_refの情報を用いることで可能である。
【０２０３】
図１９は、タイトル番号が復元された状態のメニュー画面１１０と、当該メニュー画面１１０に関わるタイトル、ムービーオブジェクトおよびプレイリストの構成例を示す。図１９の例では、メニュー画面１１０に対して、ディスクに現在記録されているタイトルに対応するボタン１１１Ａ、１１１Ｂ、１１１Ｄ、１１１Ｅおよび１１１Ｆと、当該ディスクに過去に記録され現在では削除されているタイトルに対応するボタン１１１Ｃとが共に表示されている。このうち、ボタン１１１Ｃを選択した場合には、対応するタイトル番号のタイトルが既に削除されてディスク上に存在しないことを通知すると、好ましい。
【０２０４】
この図１９に例示される構成は、概略的には次のようにして作成される。例えば、ブロックTableOfPlayLists()内のフィールドtitle_id_refを参照し、値title_id_refに基づき削除されたタイトル番号を復元し、インデックステーブルに復元されたタイトル番号を挿入する。また、復元されたタイトル番号に対応するムービーオブジェクトとプレイリストとを生成する。プレイリストは、例えば、当該タイトル番号のタイトルが削除された旨を表示するようにされた、ダミーのプレイリストを用いることができる。また、このプレイリストから参照されるクリップは、その都度所定に作成してもよいし、予めシステム側で用意していてもよい。
【０２０５】
さらに、タイトル番号の復元前のメニューが削除され、これら復元されたタイトル番号のタイトルが反映されたメニュー画面１１０が新規に作成される。すなわち、タイトル番号の復元前のメニューを再生するためのプレイリストおよびムービーオブジェクトと、インデックステーブルのファーストプレイバックおよびトップメニューとが削除され、メニュー画面１１０を再生するためのプレイリストおよびムービーオブジェクトが新規に作成されると共に、作成されたムービーオブジェクトがトップメニューおよびファーストプレイバックに登録される。
【０２０６】
図２０は、値title_id_refに基づきタイトル番号すなわち値title_idを復元する一例の処理を示すフローチャートである。フローチャートの処理に先立って、タイトルの記録順が保持されタイトル番号が保持されない記録機（記録機Ａとする）において、装填されたディスクに既に記録されたタイトルが、編集により削除される。このとき、ディスク上には、図１８に例示したような、削除されたタイトル番号に対してそれ以降のタイトル番号が前詰めにされると共に、削除されたタイトルから呼び出されるムービーオブジェクトおよびプレイリストが削除された構成が記録されているものとする。このディスクが、タイトル番号を保持するようにした記録機（記録機Ｂとする）に装填される。
【０２０７】
記録機Ｂは、ディスクが装填されると、先ずインデックスファイル"index.bdmv"およびムービーオブジェクトファイル"MovieObject.bdmv"を読み込む。このとき、記録機Ｂは、一例として次のような動作を行う。記録機Ｂは、例えば、インデックスファイル"index.bdmv"の拡張データブロックExtensionData()において、ブロックTableOfPlayLists()を参照し、プレイリスト毎の値title_id_refを取得する。そして、取得した値title_id_refが連続的な値になっているかどうかを調べる。若し、値title_id_refが不連続であれば、記録機Ａにおいてタイトルが削除されたと判断することができる。タイトルが削除されたと判断された場合、以下に説明するステップＳ５０〜ステップＳ５７の処理を行い、記録機Ｂの実装との互換性をとる。
【０２０８】
以下のステップＳ５０〜ステップＳ５７の処理は、例えば記録機Ｂを制御するＣＰＵ(Central Processing Unit)がメモリに読み込まれたこれらファイル"index.bdmv"およびファイル"MovieObject.bdmv"に対して行われる。処理が完了した後のメモリ上のデータは、例えばディスクの排出時や記録機Ｂの電源ＯＦＦ時など所定のタイミングでディスクに記録される。
【０２０９】
メニューの作成が開始されると、ステップＳ５０で、インデックスファイル"index.bdmv"内のブロックIndexes()を参照して、タイトルを構成するムービーオブジェクト以外のムービーオブジェクトを削除する。例えば、ブロックIndexes()において、ブロックFirstPlaybak()内のフィールドFirstPlaybak_mobj_id_refと、ブロックTopMenu()内のフィールドTopMenu_mobj_id_refとに示されるムービーオブジェクトが削除される。
【０２１０】
ステップＳ５１では、インデックスファイル"index.bdmv"内の拡張データブロックExtensionData()におけるブロックTableOfPlayLists()の、フィールドPlayList_attributeが参照され、タイトルを構成するプレイリスト以外のプレイリストを削除する。例えば、フィールドPlayList_attributeが属性「Menu」を示しているプレイリストを削除する。
【０２１１】
次のステップＳ５２で、タイトルを構成するプレイリストの値title_id_refを参照して、各プレイリストを再生するタイトルの番号すなわち値title_idが、対応するプレイリストの値title_id_refと一致するように、ブロックIndexes()の内容を書き換える。すなわち、インデックスファイル"index.bdmv"のブロックIndexes()内の、ループ変数title_idのforループ文において、値title_id毎に、参照するムービーオブジェクトから呼び出されるプレイリストを取得する。取得されたプレイリスト情報に基づき、インデックスファイルの拡張データからブロックTableOfPlatLists()を参照し、対応する値title_id_refを求める。この値title_id_refを参照元の値title_idとするように、ブロックIndexes()の対応箇所を書き換える。
【０２１２】
また、このステップＳ５２では、記録機Ａにおいて削除され欠番となっているタイトルに対する処理がなされる。値title_id_refは、記録時に属していたタイトルのタイトル番号すなわち値title_idが保持されているので、記録機Ａにおいて削除されたタイトルに対応する値title_id_refが欠番となる。この欠番の値title_id_refに対応する値title_idに対応するプレイリストが生成される。このプレイリストは、例えばダミーのプレイリストを用いることができる。一例として、このプレイリストを、当該値title_idに基づくタイトル番号のタイトルがディスク上に存在しない旨を表示するためのプレイリストとすることができる。このプレイリストは、ディスク上に既に存在するプレイリストと重複しないファイル名（図１９の例ではファイル名"00007.mpls"）を付されてディスク上に記録される。
【０２１３】
さらに、生成されたプレイリストを再生するためのムービーオブジェクトが生成される。生成されたムービーオブジェクトは、ムービーオブジェクトファイル"MovieObject.bdmv"において、既に存在するムービーオブジェクトの次に追加して生成される（図１９の例では、ムービーオブジェクト＃５）。そして、追加されたムービーオブジェクトの番号（例えばムービーオブジェクトファイル"MovieObject.bdmv"内のブロックMovieObjects()における値mobj_id）を、インデックスファイル"index.bdmv"のブロックIndexes()において、値title_idが対応するフィールドTitle_mobj_id_refに設定する。
【０２１４】
次のステップＳ５３で、インデックスファイル"index.bdmv"における拡張データブロックExtensionData()内のブロックTableOfPlayLists()を更新する。すなわち、このステップＳ５３では、上述のステップＳ５２で生成されたダミーのプレイリストの情報を、ブロックTableOfPlayLists()に対して記述する。
【０２１５】
より具体的には、ブロックTableOfPlayLists()において、フィールドnumber_of_PlayListsの値が１だけ増加され、ステップＳ５２で生成されたダミーのプレイリストについて、ファイル名がフィールドPlayList_file_nameとして記述されると共に、当該プレイリストの属性が例えば「Real」とされ、その旨示す値がフィールドPLayList_attributeとして記述される。フィールドtitle_id_refは、既存の値title_id_refの次の値とされる。図１９の例では、既存の値title_id-refの最大値が５であるので、このダミーのプレイリストに対応する値title_id_refは、６とされている。そして、フィールドlengthの値が追加された内容に基づき更新される。
【０２１６】
次のステップＳ５４で、トップメニューを表示するためのクリップ、ムービーオブジェクトおよびプレイリストが生成される。この処理は、例えば次のようにしてなされる。先ず、メニュー画面を表示するためのクリップが生成される。このクリップは、例えば所定のプログラムに従い自動的に生成された画像データを用いることができる。これに限らず、ディスク上や記録機においてメニュー画面用の画像データを予め用意しておき、これを用いるようにしてもよい。また、メニュー画面に用いる画像データは、動画像データであっても、静止画像データであってもよい。さらに、タイトルの再生を指示するために用いるボタン画像データを、同様にして生成することができる。タイトルに使用されるクリップに対応するサムネイル画像をさらに用いることもできる。このようにして生成されたデータは、例えば所定に多重化され、クリップＡＶストリームファイルとしてディスク上に記録される。
【０２１７】
次に、このクリップＡＶストリームファイルに対応するクリップインフォメーションファイルが生成され、さらに、当該クリップインフォメーションファイルを参照するプレイリストが生成される。プレイリストのファイル名は、例えば既存のプレイリストのファイル名および今まで存在していたプレイリストのファイル名と重複しないように決められる。図１９の例では、当該プレイリストのファイル名を、"01003.mpls"としている。
【０２１８】
プレイリストが生成されると、当該プレイリストを参照するためのムービーオブジェクトが生成される。このムービーオブジェクトは、上述のステップＳ５２で追加された、ダミーのプレイリストを参照するムービーオブジェクトの次のムービーオブジェクトとされる（図１９の例では、ムービーオブジェクト＃６）。
【０２１９】
次のステップＳ５５で、上述のステップＳ５４で作成された、トップメニューを再生するためのムービーオブジェクトがインデックスファイル"index.bdmv"内のブロックIndexes()におけるブロックTopMenu()に登録される。すなわち、図８を参照し、当該ムービーオブジェクトを示すデータがブロックTopMenu()内のフィールドTopMenu_mobj_id_refとして記述される。
【０２２０】
次のステップＳ５６では、インデックスファイル"index.bdmv"内のブロックIndexes()におけるブロックFirstPlayback()が更新される。すなわち、ブロックFirstPlayback()において、フィールドHDAVC_Title_playback_typeの値が所定の値とされ、上述のステップＳ５４で作成された、トップメニューを再生するためのムービーオブジェクトを示す値mobj_idがフィールドFirstPlayback_mobj_id_refとして記述される。
【０２２１】
そして、次のステップＳ５７で、ステップＳ５４によるトップメニューを再生するプレイリストの追加に伴い、インデックスファイル"index.bdmv"における拡張データブロックExtensionData()内のブロックTableOfPlayLists()を更新する。すなわち、このステップＳ５７では、上述のステップＳ５４で生成されたトップメニューを再生するためのプレイリストの情報を、ブロックTableOfPlayLists()に対して記述する。
【０２２２】
より具体的には、ブロックTableOfPlayLists()において、フィールドnumber_of_PlayListsの値が１だけ増加され、トップメニューを構成する新規に生成されたプレイリストについて、ファイル名がフィールドPlayList_file_nameとして記述されると共に、当該プレイリストの属性が「Menu」とされ、属性「Menu」を示す値がフィールドPLayList_attributeとして記述される。フィールドtitle_id_refは、プレイリストの属性が「Menu」であって、トップメニューから参照される場合には、値が"0xFFFE"に固定的とされる。そして、フィールドlengthの値が追加された内容に基づき更新される。
【０２２３】
上述では、タイトルの記録順が保持されタイトル番号が保持されない記録機Ａでタイトルが編集されたディスクを、タイトル番号を保持するようにした記録機Ｂに装填した場合の処理について説明したが、この逆の状況も当然ながら考えられる。すなわち、タイトル番号を保持する記録機Ｂでタイトルが編集されたディスクを、タイトル番号が保持されない記録機Ａに装填した場合である。
【０２２４】
一例として、記録機Ｂにおいて、元々タイトル＃１〜＃６の６個のタイトルがディスクに記録されていた状態から、タイトル＃３を削除した場合について考える。記録機Ｂでは、タイトル番号が保持されるため、タイトル＃３の削除に伴い、タイトル＃３が削除されたことを示すダミーのプレイリストが作成されることが考えられる。ダミーのプレイリストおよびダミーのプレイリストを再生するムービーオブジェクトは、図１９を用いて説明したように、タイトル＃３の削除に伴い、タイトル＃３から参照されるムービーオブジェクトおよびプレイリストを削除し、残ったムービーオブジェクトおよびプレイリストに対して追加して作成することができる。
【０２２５】
この図１９の構成によれば、タイトルから一つのムービーオブジェクトが呼び出され、当該ムービーオブジェクトから一つのプレイリストが参照される。そのため、このディスクは、記録機Ａにおいて、タイトル、ムービーオブジェクトおよびプレイリストに対して何ら変更を加えることなく、再生することができる。
【０２２６】
なお、上述では、ディスクに記録された複数のタイトルから１のタイトルを削除した場合の処理について説明したが、これはこの例に限らず、２以上のタイトルを削除した場合にも、この発明の実施の一形態を適用することができる。すなわち、２以上のタイトルが削除された場合でも、値title_id_refに基づき、複数の削除されたタイトル番号をそれぞれ求めることができ、削除されたタイトル番号のタイトルをそれぞれ復元すると共に、削除されたタイトル数分のムービーオブジェクトおよびプレイリストを生成し、復元されたタイトルのそれぞれに対して、生成されたムービーオブジェクトおよびプレイリストをそれぞれ対応付ける。
【０２２７】
また、例えば記録機Ａにおいて、ディスクに記録された複数のタイトルのうち最後に記録されたタイトルが削除される場合もあり得る。この場合には、値title_id_refは連続的な値とされ、タイトル番号も、欠番が生じることはない。そのため、当該ディスクを記録機Ｂに装填しても、メニュー表示や新たなタイトルの追加などにおいて特に問題は生じないと考えられる。
【０２２８】
次に、この発明の実施の一形態を適用可能な記録再生装置について説明する。先ず、仮想プレーヤについて、概略的に説明する。上述したようなデータ構造を有するディスクがプレーヤに装填されると、プレーヤは、ディスクから読み出されたムービーオブジェクトなどに記述されたコマンドを、プレーヤ内部のハードウェアを制御するための固有のコマンドに変換する必要がある。プレーヤは、このような変換を行うためのソフトウェアを、プレーヤに内蔵されるＲＯＭ(Read Only Memory)にあらかじめ記憶している。このソフトウェアは、ディスクとプレーヤを仲介してプレーヤにＢＤ−ＲＯＭの規格に従った動作をさせることから、ＢＤ仮想プレーヤと称される。
【０２２９】
図２１は、このＢＤ仮想プレーヤの動作を概略的に示す。図２１Ａは、ディスクのローディング時の動作の例を示す。ディスクがプレーヤに装填されディスクに対するイニシャルアクセスがなされると（ステップＳ３０）、１のディスクにおいて共有的に用いられる共有パラメータが記憶されるレジスタが初期化される（ステップＳ３１）。そして、次のステップＳ３２で、ムービーオブジェクトなどに記述されたプログラムがディスクから読み込まれて実行される。なお、イニシャルアクセスは、ディスク装填時のように、ディスクの再生が初めて行われることをいう。
【０２３０】
図２１Ｂは、プレーヤが停止状態からユーザにより例えばプレイキーが押下され再生が指示された場合の動作の例を示す。最初の停止状態（ステップＳ４０）に対して、ユーザにより、例えばリモートコントロールコマンダなどを用いて再生が指示される（ＵＯ：User Operation）。再生が指示されると、先ず、レジスタすなわち共通パラメータが初期化され（ステップＳ４１）、次のステップＳ４２で、ムービーオブジェクト実行フェイズに移行する。
【０２３１】
ムービーオブジェクトの実行フェイズにおけるプレイリストの再生について、図２２を用いて説明する。ＵＯなどにより、タイトル番号＃１のコンテンツを再生開始する指示があった場合について考える。プレーヤは、コンテンツの再生開始指示に応じて、上述した図２に示されるインデックステーブル(Index Table)を参照し、タイトル＃１のコンテンツ再生に対応するオブジェクトの番号を取得する。例えばタイトル＃１のコンテンツ再生を実現するオブジェクトの番号が＃１であったとすると、プレーヤは、ムービーオブジェクト＃１の実行を開始する。
【０２３２】
この図２２の例では、ムービーオブジェクト＃１に記述されたプログラムは２行からなり、１行目のコマンドが"Play PlayList(1)"であるとすると、プレーヤは、プレイリスト＃１の再生を開始する。プレイリスト＃１は、１以上のプレイアイテムから構成され、プレイアイテムが順次再生される。プレイリスト＃１中のプレイアイテムの再生が終了すると、ムービーオブジェクト＃１の実行に戻り、２行目のコマンドが実行される。図２２の例では、２行目のコマンドが"jump TopMenu"であって、このコマンドが実行されインデックステーブルに記述されたトップメニュー(Top Menu)を実現するムービーオブジェクトの実行が開始される。
【０２３３】
図２３は、この発明の実施の一形態に適用可能な記録再生装置の一例の構成を示す。この記録再生装置は、例えばビデオカメラ装置の記録再生部として用いることができる。これに限らず、この記録再生装置は、単体で使用する構成とすることもできる。ここでは、この記録再生装置がビデオカメラ装置の記録再生部として用いられるものとして説明する。なお、この図２３に例示される記録再生装置の構成は、上述した、記録順を保持しタイトル番号を保持しない記録機Ａと、タイトル番号を保持する記録機Ｂの何方にも適用可能なものである。
【０２３４】
制御部１７は、例えばＣＰＵ、ＲＯＭ(Read Only Memory)およびＲＡＭ(Random Access Memory)などからなる。ＲＯＭは、ＣＰＵ上で動作されるプログラムや動作のために必要なデータが予め記憶される。ＲＡＭは、ＣＰＵのワークメモリとして用いられる。ＣＰＵは、ＲＯＭに記憶されたプログラムやデータを必要に応じて読み出し、ＲＡＭをワークメモリに用いながら、この記録再生装置の全体を制御する。上述したＢＤ仮想プレーヤは、例えば予めＲＯＭに記憶されたプログラムにより、制御部１７により実現される。
【０２３５】
この記録再生装置に対して、図示されないビデオカメラ部から出力される、機器特有の情報や記録に関するデータなどが入力出力端子２８から入力される。入出力端子２８に入力されたこれらのデータは、制御部１７に供給される。
【０２３６】
各種のスイッチなどの操作子や、簡易的に表示を行う表示素子を有する図示されないユーザインタフェースから出力されたデータがデータ入出力端子２８から入力される。また、制御部１７で生成された表示制御信号がデータ入力出力端子２８を介してユーザインターフェイスに供給される。ユーザインターフェイスは、この表示制御信号をテレビジョン受像器などのモニタ装置に供給し、表示させることもできる。
【０２３７】
先ず、記録時の動作について説明する。図示されないビデオカメラ部から、撮像により得られたビデオ信号が入力端３０に入力され、このビデオ信号に伴い出力されたオーディオ信号が入力端３１に入力される。入力されたビデオ信号およびオーディオ信号は、ＡＶエンコーダ２３に供給される。ビデオ信号は、ビデオ解析部２４にも供給される。ＡＶエンコーダ２３は、入力されたビデオ信号およびオーディオデータを、例えばＭＰＥＧ２方式で符号化し、符号化ビデオストリームＶ、符号化オーディオストリームＡおよびシステム情報Ｓをそれぞれ出力する。
【０２３８】
ＡＶエンコーダ２３は、オーディオ信号を、例えばＭＰＥＧ１オーディオストリームやドルビーＡＣ３オーディオストリームなどの形式に符号化する。システム情報Ｓは、符号化ピクチャやオーディオフレームのバイトサイズ、ピクチャの符号化タイプといった、ビデオ信号やオーディオ信号の符号化情報や、ビデオおよびオーディオの同期などに関する時間情報からなる。
【０２３９】
ＡＶエンコーダ２３のこれらの符号化出力は、マルチプレクサ２２に供給される。マルチプレクサ２２は、供給された符号化ビデオストリームＶ、符号化オーディオストリームＡを、システム情報Ｓに基づき多重化し、ＭＰＥＧ２トランスポートストリームによる多重化ストリームを出力する。すなわち、符号化ビデオストリームＶ、符号化オーディオストリームＡおよびシステム情報Ｓは、それぞれトランスポートパケットのペイロードのサイズに分割され、所定のヘッダを付加されて、トランスポートパケット化される。ヘッダには、それぞれのデータ種類などを識別可能なように、ＰＩＤが所定に格納される。
【０２４０】
マルチプレクサ２２から出力された多重化ストリームは、端子５０Ａが選択されたスイッチ５０を介してソースパケッタイザ２１および上述した多重化ストリーム解析部２５に供給される。ソースパケッタイザ２１は、供給された多重化ストリームを、記録媒体のアプリケーションフォーマットに従って符号化する。
【０２４１】
ソースパケッタイザ２１で符号化されたクリップＡＶストリームは、ＥＣＣ(Error Correction Coding)符号化部２０でエラー訂正符号化され、変調部１９で記録符号に変調され、書き込み部１８に供給される。書き込み部１８は、制御部１７から供給される制御信号の指示に基づき、変調部１９で記録符号に変調されたクリップＡＶストリームを、記録可能な記録媒体１０に対して記録する。
【０２４２】
この記録再生装置は、クリップＡＶストリームが多重化されたトランスポートストリームを直接的に入力して、記録媒体に記録することができるようになっている。例えば、ディジタルインターフェイスまたはディジタルテレビジョンチューナから出力される、ディジタルテレビジョン放送などによるトランスポートストリームが入力端子３２に対して入力される。
【０２４３】
入力されたトランスポートストリームの記録方法としては、トランスペアレントに記録する方法と、記録ビットレートを下げるなどの目的のために再エンコードして記録する方法とが考えられる。この２通りの記録方法のうち何方を用いて記録を行うかを指示は、例えばユーザのユーザインターフェイスに対する操作によりなされ、この操作に応じた制御信号がデータ入力出力端子２８を介して制御部１７に供給される。制御部１７は、この制御信号に基づきこの記録再生装置の各部を制御し、記録方法の制御を行う。
【０２４４】
入力トランスポートストリームをトランスペアレントに記録する場合、スイッチ５０において端子５０Ｂが選択されると共に、スイッチ５１において端子５１Ａが選択され、入力端３２から入力されたトランスポートストリームは、スイッチ５１および５０を介してソースパケッタイザ２１および多重化ストリーム解析部２５にそれぞれ供給される。これ以降の処理は、上述した、入力端３０および３１に入力されたビデオ信号およびオーディオ信号を符号化して記録する場合と同一である。
【０２４５】
一方、入力トランスポートストリームを再エンコードして記録する場合、スイッチ５１において端子５１Ｂが選択され、入力端３２から入力されたトランスポートストリームは、デマルチプレクサ１５に供給される。デマルチプレクサ１５は、供給されたトランスポートストリームに多重化されている符号化ビデオストリームＶ、符号化オーディオストリームＡおよびシステム情報Ｓを分離し、符号化ビデオストリームＶをＡＶデコーダ１６に供給すると共に、符号化オーディオストリームＡおよびシステム情報Ｓをマルチプレクサ２２に供給する。
【０２４６】
ＡＶデコーダ１６は、デマルチプレクサ１５から供給された符号化ビデオストリームＶを復号し、復号されたビデオ信号をＡＶエンコーダ２３に供給する。ＡＶエンコーダ２３は、供給されたこのビデオ信号を符号化して符号化ビデオストリームＶとする。この符号化ビデオストリームＶは、マルチプレクサ２２に供給される。
【０２４７】
マルチプレクサ２２は、ＡＶエンコーダ２３で符号化され供給された符号化ビデオストリームＶと、デマルチプレクサ１５で分離された符号化オーディオストリームＡとを、同じくデマルチプレクサ１５で分離されたシステム情報Ｓに基づき多重化して多重化ストリームを出力する。これ以降の処理は、上述した、入力端３０および３１に入力されたビデオ信号およびオーディオ信号を符号化して記録する場合と同一である。
【０２４８】
この記録再生装置は、例えばＢＤ−ＲＥ規格に準じた記録媒体１０に対して上述のようにしてクリップＡＶストリームファイルを記録すると共に、記録するクリップＡＶストリームファイルに関連するアプリケーションデータベース情報をさらに記録する。アプリケーションデータベース情報は、ビデオ解析部２４からの動画像の特徴情報と、多重化ストリーム解析部２５からのクリップＡＶストリームの特徴情報と、端子２８から入力されるユーザの指示情報とに基づき、制御部１７により作成される。
【０２４９】
ビデオ解析部２４から得られる、動画像の特徴情報は、ＡＶエンコーダ２３によりビデオ信号を符号化して記録する場合に、この記録再生装置内において生成される情報である。ビデオ解析部２４は、入力端３０から入力されたビデオ信号または入力端３２から入力されたトランスポートストリームからデマルチプレクサ１５で分離されＡＶデコーダ１６で復号されたビデオ信号が供給される。ビデオ解析部２４は、供給されたビデオ信号の内容を解析し、入力されたビデオ信号中の特徴的なマーク点の画像に関する情報を生成する。例えば、ビデオ解析部２４は、入力ビデオ信号中のプログラムの開始点、シーンチェンジ点や、ＣＭ（コマーシャル）放映の開始、終了点などの特徴的なマーク点を検出し、検出されたマーク点の画像の指示情報を得る。また、マーク点の画像のサムネイル画像を生成するようにしてもよい。サムネイル画像は、実際の画像データを間引き処理などにより縮小した画像である。また、サムネイル画像のクリップＡＶストリーム上の位置は、ＰＴＳで示すことができる。
【０２５０】
これらの画像の指示情報、サムネイル画像およびサムネイル画像の位置情報（例えばＰＴＳ）は、制御部１７を介してマルチプレクサ２２に供給される。マルチプレクサ２２は、制御部１７から指示されるマーク点の画像を符号化した符号化ピクチャを多重化する際に、当該符号化ピクチャのクリップＡＶストリーム上でのアドレス情報を制御部１７に返す。制御部１７は、特徴的な画像の種類と、対応する符号化ピクチャのクリップＡＶストリーム上でのアドレス情報とを関連付けて、例えばＲＡＭに記憶する。
【０２５１】
多重化ストリーム解析部２５から得られる、クリップＡＶストリームの特徴情報は、記録されるクリップＡＶストリームの符号化情報に関連する情報であり、この動画像記録再生装置内において生成される。例えば、クリップＡＶストリームについて、エントリポイントのタイムスタンプと対応するアドレス情報とをクリップＡＶストリームの特徴情報として含む。この他にも、クリップＡＶストリームについて、ＳＴＣ(System Time Clock)の不連続情報、プログラム内容の変化情報、アライバルタイムと対応するアドレス情報などが、クリップＡＶストリームの特徴情報として含まれる。
【０２５２】
また、多重化ストリーム解析部２５は、入力端３２から入力されるトランスポートストリームをトランスペアレントに記録する場合、クリップＡＶストリーム中の特徴的なマーク点画像を検出し、検出された画像の種類とアドレス情報とを生成する。この情報は、クリップインフォメーションファイル中のブロックClipMarkに格納されるデータとなる。このように、多重化ストリーム解析部２５により得られたクリップＡＶストリームの特徴情報は、クリップＡＶストリームのデータベースであるクリップインフォメーションファイルに格納されることになる。多重化ストリーム解析部２５で得られたこれらの情報は、例えば、制御部１７のＲＡＭに一旦記憶される。
【０２５３】
図示されないユーザインターフェイスに対してなされたユーザの指示情報は、データ入力出力端子２８から制御部１７に供給される。この指示情報は、例えば、クリップＡＶストリーム中でユーザが気に入った再生区間の指定情報、当該再生区間の内容を説明するためのキャラクタ文字、ユーザが気に入ったシーンにセットするブックマーク点やリジューム点のクリップＡＶストリーム中のタイムスタンプなどが含まれる。これらのユーザの指示情報は、一旦、制御部１７のＲＡＭに記憶される。これらの指示情報は、記録媒体１０上においては、プレイリストが有するデータベースに格納される。
【０２５４】
制御部１７は、ＲＡＭ上に記憶された上述した入力情報、すなわち、ビデオ解析部２４から得られる動画像の特徴情報、多重化ストリーム解析部２５から得られるクリップＡＶストリームの特徴情報、ならびに、データ入力出力端子２８から入力されたユーザ指示情報に基づき、クリップＡＶストリームのデータベース（クリップインフォメーション）、プレイリストのデータベース（プレイリストファイル）、記録媒体の記録内容に対する管理情報（インデックスファイル）およびサムネイル情報を作成する。
【０２５５】
ここで、制御部１７は、インデックスファイルを作成する際に、上述した、データ入出力端子２８から入力された、機器特有のデータや記録に関する情報に基づき、インデックスファイル、プレイリストファイルおよび／またはクリップインフォメーションファイルを拡張するための拡張データを作成することができる。すなわち、制御部１７は、データ入出力端子２８から入力されたデータに基づき、拡張データを、図１３のフローチャートを用いて説明したような処理によりファイルに埋め込む。
【０２５６】
これらのデータベース情報は、制御部１７のＲＡＭから読み出され、クリップＡＶストリームと同様にして、制御部１７からＥＣＣ符号化部２０に供給されエラー訂正符号化され、変調部１９で記録符号に変調され、書き込み部１８に供給される。書き込み部１８は、制御部１７から供給される制御信号に基づき、記録符号化されたデータベース情報を記録媒体１０に記録する。
【０２５７】
次に、再生時の動作について説明する。記録媒体１０は、記録時の動作で説明したようにして作成された、クリップＡＶストリームファイルと、プレイリストファイルおよびインデックスファイルからなるアプリケーションデータベース情報と、ムービーオブジェクトファイルとが記録されている。記録媒体１０が図示されないドライブ装置に装填されると、先ず、制御部１７は、読み出し部１１に対して、記録媒体１０上に記録されたアプリケーションデータベース情報とムービーオブジェクトファイルとを読み出すように指示する。読み出し部１１は、この指示を受けて、記録媒体１０からアプリケーションデータベース情報とムービーオブジェクトファイルとを読み出す。読み出し部１１の出力は、復調部１２に供給する。
【０２５８】
復調部１２は、読み出し部１１の出力を復調し、記録符号を復号してディジタルデータとする。復調部１２の出力は、ＥＣＣ復号部１３に供給され、エラー訂正符号が復号されエラー訂正処理が行われる。エラー訂正処理されたアプリケーションデータベース情報は、制御部１７に供給される。
【０２５９】
制御部１７は、アプリケーションデータベース情報とムービーオブジェクトファイルとに基づいて、記録媒体１０に記録されているタイトルの一覧を表示するためのメニュー画面を、ユーザインターフェイス入力出力端子２８を介してユーザインターフェイスに出力する。このメニュー画面は、例えばユーザインターフェイスに設けられた表示部に所定に表示される。ユーザにより、このメニュー画面に基づき再生したいタイトルが選択され、選択したタイトルを再生するような操作がユーザインターフェイスに対してなされる。この操作に応じた制御信号がユーザインターフェイスから出力され、端子２８を介して制御部１７に供給される。
【０２６０】
制御部１７は、この制御信号に応じて、インデックスファイルやムービーオブジェクトファイルの内容に基づき、選択されたタイトルの再生に必要なクリップＡＶストリームファイルの読み出しを読み出し部１１に指示する。読み出し部１１は、この指示に従い、記録媒体１０からクリップＡＶストリームファイルを読み出す。読み出し部１１の出力は、復調部１２に供給される。復調部１２は、供給された信号を復調し、記録符号を復号してディジタルデータとして出力し、ＥＣＣ復号部１３に供給する。ＥＣＣ復号部１３は、供給されたディジタルデータのエラー訂正符号を復号し、エラー訂正を行う。エラー訂正されたクリップＡＶストリームファイルは、制御部１７により提供される図示されないファイルシステム部の処理を受け、ソースデパケッタイザ１４に供給される。
【０２６１】
ソースデパケッタイザ１４は、制御部１７の制御に基づき、記録媒体１０におけるアプリケーションフォーマットで記録されていたクリップＡＶストリームファイルを、デマルチプレクサ１５に入力できる形式のストリームに変換する。例えば、ソースデパケッタイザ１４は、記録媒体１０から再生されたＭＰＥＧ２トランスポートストリームをソースパケット単位に分解し、ソースパケットからヘッダを取り除きトランスポートパケット化する。このトランスポートパケット化されたクリップＡＶストリームを、デマルチプレクサ１５に供給する。
【０２６２】
デマルチプレクサ１５は、制御部１７の制御に基づき、ソースデパケッタイザ１４から供給されたクリップＡＶストリームの、制御部１７により指定された再生区間(PlayItem)を構成するビデオストリームＶ、オーディオストリームＡおよびシステム情報Ｓを出力し、ＡＶデコーダ１６に供給する。例えば、デマルチプレクサ１５は、供給されたトランスポートパケットをＰＩＤに基づき選別し、選別されたそれぞれについて、トランスポートパケットヘッダを取り除いて出力する。ＡＶデコーダ１６は、供給されたビデオストリームＶおよびオーディオストリームＡを復号し、復号された再生ビデオ信号および再生オーディオ信号をビデオ出力端２６およびオーディオ出力端２７にそれぞれ導出する。
【０２６３】
この記録再生装置で、他の記録再生装置で記録などがなされたディスクを装填した場合の処理について、概略的に説明する。この記録再生装置が上述した記録機Ｂのタイプの、タイトルなどの編集に際してタイトル番号を保持するようにした装置である場合について説明する。記録機Ｂのタイプの記録再生装置は、装填されたディスクに対してタイトル番号を保持しない編集が行われたか否かを知る必要がある。
【０２６４】
一例として、記録再生装置は、ディスクが装填されると先ず、例えばインデックスファイル"index.bdmv"およびムービーオブジェクトファイル"MovieObject.bdmv"を読み込み、ブロックIndexes()を参照して、各タイトルが呼び出すムービーオブジェクトの情報を取得し、取得された情報に基づきムービーオブジェクトファイル"MovieObject.bdmv"を参照し、各ムービーオブジェクトが参照するプレイリストの情報を取得する。
【０２６５】
一例として上述の図１９のような状態を考えると、各タイトルのタイトル番号に対応する値title_idと、各タイトルから呼び出されるムービーオブジェクトの順番（ムービーオブジェクトファイル"MovieObject.bdmv"内のブロックMovieObjects()におけるループ変数mobj_idのforループ文の値mobj_id）とが異なっている場合に、記録機Ａのタイプの記録再生装置でタイトルの削除などの編集が行われたと判断することができる。
【０２６６】
これに限らず、所定の場所、例えばインデックスファイル"index.bdmv"の拡張データブロックExtensionData()に、最新に記録が行われた記録機の情報や編集内容に関する情報を記述することも考えられる。この場合には、最新に記録が行われた記録機が記録機Ａのタイプであるか否かが判断され、記録機Ａのタイプであると判断されれば、上述もしたように、値title_id_refが連続的な値となっているか否かの判断に基づき、タイトル番号を保持せずにタイトルを削除する編集が行われたか否かを判断することができる。
【０２６７】
若し、装填したディスクが記録機Ａのタイプの記録再生装置でタイトル削除などの編集が行われたと判断されれば、図１９および図２０を用いて説明したような処理により、値title_id_refに基づくタイトルの復元およびメニューの更新の処理が行われる。
【０２６８】
上述では、図２３に示す記録再生装置がビデオカメラなどから出力されたビデオデータおよびオーディオデータを記録媒体１０に記録するようにした装置であるように説明したが、これはこの例に限られない。例えば、入力されたビデオデータに対して編集処理を行い、編集されたビデオデータを出力するようにした編集装置にこの発明の実施の一形態を適用することもできる。さらに、上述の図２７の構成を、再生部側の構成を省略した記録装置とすることもできる。さらにまた、記録媒体１０は、ＢＤ−ＲＥ規格に準じたディスク状記録媒体であるように説明したが、これはこの例に限定されず、この発明の実施の一形態は、半導体メモリ、ハードディスクといった他の記録媒体にも適用可能である。
【０２６９】
なお、上述では、図２３に示す記録再生装置がハードウェア的に構成されるように説明したが、これはこの例に限定されない。すなわち、記録再生装置は、実際に記録媒体１０が装填されるドライブ部などの機構部分以外の部分を、ソフトウェアとして構成することも可能である。この場合、ソフトウェアは、例えば制御部１７が有するＲＯＭに予め記憶される。これに限らず、動画像記録再生装置を、パーソナルコンピュータなどのコンピュータ装置上に構成することも可能である。この場合には、動画像記録再生装置をコンピュータ装置に実行させるソフトウェアは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭといった記録媒体に記録されて提供される。コンピュータ装置がネットワーク接続可能な場合、インターネットなどのネットワークを介して当該ソフトウェアを提供することも可能である。
【０２７０】
さらに、上述では、この発明が記録媒体にコンテンツデータなどを記録する記録装置または記録再生装置に適用されるように説明したが、これはこの例に限定されない。この発明は、記録媒体に対するコンテンツデータの記録手段や記録媒体からのコンテンツデータの再生手段を持たない、例えばコンテンツデータおよび当該コンテンツデータの再生制御情報（インデックスファイル、ムービーオブジェクト、プレイリストおよびクリップインフォメーションファイルなど）を編集する編集装置などにも適用可能なものである。この場合には、例えば、記録媒体からのデータの読み出しや記録媒体に対する書き込みは、編集装置に接続された記録再生装置により行うことが考えられる。この編集装置は、少なくとも、タイトル単位での削除や追加などの編集を行うことができるものが考えられる。勿論、さらに詳細な編集を行うようにしてもよい。
【図面の簡単な説明】
【０２７１】
【図１】ＢＤ−ＲＯＭのデータモデルを概略的に示す略線図である。
【図２】インデックステーブルを説明するための略線図である。
【図３】クリップＡＶストリーム、クリップ情報、クリップ、プレイアイテムおよびプレイリストの関係を示すＵＭＬ図である。
【図４】複数のプレイリストから同一のクリップを参照する方法を説明するための略線図である。
【図５】サブパスについて説明するための略線図である。
【図６】記録媒体に記録されるファイルの管理構造を説明するための略線図である。
【図７】ファイル"index.bdmv"の一例の構造を表すシンタクスを示す略線図である。
【図８】ブロックIndexes()の一例の構造を表すシンタクスを示す略線図である。
【図９】ファイル"MovieObject.bdmv"の一例の構造を表すシンタクスを示す略線図である。
【図１０】ブロックMovieObject()の一例の構造を表すシンタクスを示す略線図である。
【図１１】ブロックExtensionData()の一例の構造を表すシンタクスを示す略線図である。
【図１２】ブロックExtensionData()における各データの参照関係を模式的に示す略線図である。
【図１３】ブロックExtensionData()にデータを書き込む際の一例の処理を示すフローチャートである。
【図１４】ブロックExtensionData()から拡張データを読み出す際の一例の処理を示すフローチャートである。
【図１５】ファイル"index.bdmv"内のフィールドExtensionData()におけるブロックdata_block()の一例の構造を表すシンタクスを示す略線図である。
【図１６】ブロックTableOfPlayLists()の一例の構造を表すシンタクスを示す略線図である。
【図１７】編集前のメニュー画面と、当該メニュー画面に関わるタイトル、ムービーオブジェクトおよびプレイリストの構成例を示す略線図である。
【図１８】タイトル＃３を削除した場合のメニュー画面と、当該メニュー画面に関わるタイトル、ムービーオブジェクトおよびプレイリストの構成例を示す略線図である。
【図１９】タイトル番号が復元された状態のメニュー画面と、当該メニュー画面に関わるタイトル、ムービーオブジェクトおよびプレイリストの構成例を示す略線図である。
【図２０】値title_id_refに基づきタイトル番号を復元する一例の処理を示すフローチャートである。
【図２１】ＢＤ仮想プレーヤの動作を概略的に示すフローチャートである。
【図２２】ＢＤ仮想プレーヤの動作を概略的に示す略線図である。
【図２３】この発明の実施の一形態に適用可能な記録再生装置の一例の構成を示すブロック図である。
【図２４】ＢＤ−ＲＯＭ規格によるタイトル、ムービーオブジェクトおよびプレイリストの一例の関係を概略的に示す略線図である。
【図２５】タイトルの編集に関わるタイトルの管理方法を説明するための略線図である。
【符号の説明】
【０２７２】
１０  記録媒体
１１  読み出し部
１７  制御部
１８  書き込み部
２８  データ入出力端子
１００，１１０  メニュー画面
【図１】
0004765734.tif 000002
【図２】
0004765734.tif 000003
【図３】
0004765734.tif 000004
【図４】
0004765734.tif 000005
【図５】
0004765734.tif 000006
【図６】
0004765734.tif 000007
【図７】
0004765734.tif 000008
【図８】
0004765734.tif 000009
【図９】
0004765734.tif 000010
【図１０】
0004765734.tif 000011
【図１１】
0004765734.tif 000012
【図１２】
0004765734.tif 000013
【図１３】
0004765734.tif 000014
【図１４】
0004765734.tif 000015
【図１５】
0004765734.tif 000016
【図１６】
0004765734.tif 000017
【図１７】
0004765734.tif 000018
【図１８】
0004765734.tif 000019
【図１９】
0004765734.tif 000020
【図２０】
0004765734.tif 000021
【図２１】
0004765734.tif 000022
【図２２】
0004765734.tif 000023
【図２３】
0004765734.tif 000024
【図２４】
0004765734.tif 000025
【図２５】
0004765734.tif 000026