(57)【要約】【課題】ＮＡＣで符号化されたオーディオストリームのストリームエントリーがストリームナンバーテーブルに登録されている場合に、既存の再生装置でのオーディオストリームの再生を保障する記録媒体を提供する。【解決手段】  一以上のプレイリスト情報が記録された記録媒体であって、各プレイリスト情報は、ストリームナンバーテーブルを含み、各ストリームナンバーテーブルは、複数のストリームエントリーを有し、前記複数のオーディオストリームの符号化方式には、所定のバージョン以降の再生装置がデコード可能なオプション方式と全てのバージョンの再生装置がデコード可能なマンダトリ方式とがあり、第一のストリームナンバーテーブルにおいて、オプション方式で符号化されたオーディオストリームのストリームエントリーは、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーの直後に登録されており、前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、両オーディオストリームの言語コード及びチャネル数は同一である。
2009128246.tif 000002
【特許請求の範囲】
【請求項１】
一以上のプレイリスト情報が記録された記録媒体であって、
各プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、
各ストリームナンバーテーブルは、複数のオーディオストリームのそれぞれに対応する、複数のストリームエントリーを有し、
各ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、
前記複数のオーディオストリームの符号化方式には、オプション方式のものと、マンダトリ方式のものとがあり、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式であり、
第一のプレイリスト情報に含まれる第一のストリームナンバーテーブルにおいて、オプション方式で符号化されたオーディオストリームのストリームエントリーは、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーの直後に登録されており、
前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一である
ことを特徴とする記録媒体。
【請求項２】
前記複数のオーディオストリームには、プライマリオーディオストリームとセカンダリオーディオストリームとがあり、
各セカンダリオーディオストリームのストリームエントリーには、組み合わせ情報が対応付けられており、
組み合わせ情報は、一以上のプライマリオーディオストリームのストリームナンバーを示し、
組み合わせ情報にストリームナンバーが示されるプライマリオーディオストリームは、その再生出力をセカンダリオーディオストリームの再生出力とミキシングすることができるプライマリオーディオストリームであり、
各セカンダリオーディオストリームのストリームエントリーに対応付けられた組み合わせ情報において、前記一以上のプライマリオーディオストリームのストリームナンバーの登録順位は、当該セカンダリオーディオストリームと同期して再生すべきプライマリオーディオストリームを再生装置が選択するにあたっての、各プライマリオーディオストリームの優先順位を示し、
それぞれの組み合わせ情報において、マンダトリ方式で符号化されたプライマリオーディオストリームのストリームナンバーが先頭に登録されている
請求項１記載の記録媒体。
【請求項３】
前記記録媒体は、さらに、プレイリスト選択プログラムを記憶しており、
第二のプレイリスト情報に含まれる第二のストリームナンバーテーブルは、マンダトリ方式で符号化されたオーディオストリームのそれぞれに対応する、複数のストリームエントリーを有しており、
それぞれのプレイリスト情報は、バージョンナンバーを含み、
プレイリスト選択プログラムは、再生装置がプレイリスト再生を実行する際に実行されるべきプログラムであり、再生装置に設定されているバージョンナンバーが前記第一のプレイリスト情報に含まれるバージョンナンバー以上である場合に、前記第一のプレイリスト情報に基づくプレイリスト再生を実行させる
請求項１記載の記録媒体。
【請求項４】
前記記録媒体は、
前記第一のストリームナンバーテーブルに登録されている各オーディオストリームの属性情報を示す第一のオーディオストリーム属性情報を含む第一のクリップ情報と、
前記第二のストリームナンバーテーブルに登録されている各オーディオストリームの属性情報を示す第二のオーディオストリーム属性情報を含む第二のクリップ情報とを記憶しており、
前記第一のプレイリスト情報に基づくプレイリスト再生の実行において、前記第一のオーディオストリーム属性情報が参照される
請求項３記載の記録媒体。
【請求項５】
前記記録媒体は、オーディオストリーム設定プログラムをさらに記憶しており、
オーディオストリーム設定プログラムは、再生装置がプレイリスト再生を実行する際に実行されるべきプログラムであり、
前記オプション方式で符号化されたオーディオストリームを選択する操作をユーザから受け付けるためのメニューを再生装置に表示させて、メニューに対する選択操作がユーザによりなされた場合、当該オーディオストリームを、再生すべきオーディオストリームとして設定させる
請求項１記載の記録媒体。
【請求項６】
プレイリスト情報を生成する生成手段と、
生成したプレイリスト情報を記録媒体に記録する記録手段とを有し、
前記プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、
前記生成手段は、前記ストリームナンバーテーブルを生成する際、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーをストリームナンバーテーブルに登録した直後に、オプション方式で符号化されたオーディオストリームのストリームエントリーを登録し、
前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一であり、
ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式である
ことを特徴とする記録装置。
【請求項７】
プレイリスト情報を生成する生成ステップと、
生成したプレイリスト情報を記録媒体に記録する記録ステップとを有し、
前記プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、
前記生成ステップは、前記ストリームナンバーテーブルを生成する際、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーをストリームナンバーテーブルに登録した直後に、オプション方式で符号化されたオーディオストリームのストリームエントリーを登録し、
前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一であり、
ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式である
ことを特徴とする記録方法。
【請求項８】
複数のオーディオストリームが多重化されたデジタルストリーム、プレイリスト選択プログラム、並びに第一及び第二のプレイリスト情報を含む記録媒体から前記デジタルストリームを読み出して再生する再生装置であって、
前記プレイリスト選択プログラムを実行することで、自装置に設定されているバージョンナンバーが前記第一のプレイリスト情報に含まれるバージョンナンバー以上であるか否かを判定する第一判定手段と、
前記第一のプレイリスト情報に含まれるバージョンナンバー以上であると判定した場合に、前記第一のプレイリスト情報に含まれる第一のストリームナンバーテーブルに登録されている各オーディオストリームについて、当該オーディオストリームを再生する能力が自装置に存在すること、当該オーディオストリームの言語属性が自装置に設定されている言語設定と一致していること、及び当該オーディオストリームのチャネル属性が自装置に設定されているチャネル属性と一致していること、の三つの条件のうちどれを満たすかを判定する第二判定手段と、
満たすと判定された条件のパターンに応じてオーディオストリームに優先順位を付し、最も優先順位の高いオーディオストリームを選んで再生する再生手段とを備え、
前記第一のストリームナンバーテーブルには、オプション方式で符号化されたオーディオストリームのストリームエントリーと、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーとが登録されており、
前記第二のプレイリスト情報に含まれる第二のストリームナンバーテーブルは、マンダトリ方式で符号化された複数のオーディオストリームのそれぞれに対応する、複数のストリームエントリーが登録されており、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式である
再生装置。
【請求項９】
前記再生装置は、フィールド値毎に異なるハフマン符号値を対応付けたハフマンコードテーブルを有しており、
前記再生手段は、前記ハフマンコードテーブルに基づいて、ハフマン符号値のデコードを行い、デコードにより得られた値が例外値であれば、例外処理を行うことでフィールド値を算出し、
デコード対象が、前記オプション方式で符号化されたオーディオストリームである場合に、前記例外処理の回数を、予め設定されている所定回数以下に抑止する
請求項８記載の再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、次世代ＤＶＤ規格に準拠した記録媒体に関し、特に、ビデオストリームの所定区間において再生可能なオーディオストリームを定義するストリームナンバーテーブルに関する。
【背景技術】
【０００２】
近年、Ｂｌｕ−ｒａｙ  ＤｉｓｃやＨＤ  ＤＶＤと呼ばれる次世代ＤＶＤ規格が策定され、ユーザにとって高精細及び高音質な光ディスクが一般的になりつつある。これらの光ディスクには、符号化方式、チャネル数、及び言語属性のあらゆる組み合わせに対応できるように複数のオーディオストリーム（例えば、３２本）が記録される。【０００３】
ここで、符号化方式には例えば、ドルビーＡＣ−３、Ｄｏｌｂｙ  Ｄｉｇｉｔａｌ  Ｐｌｕｓ、ＭＬＰ、ＤＴＳ、ＤＴＳ−ＨＤ、及びリニアＰＣＭ等が該当し、チャネル数には、モノラル、ステレオ、マルチチャンネル等が該当する。【０００４】
光ディスクにはプレイリスト情報も記録されており、プレイリスト情報は、ビデオストリームの時間軸における再生開始点及び再生終了点で定義される再生区間（プレイアイテム）を一以上含んで構成される。【０００５】
光ディスクに記録されている各オーディオストリームは、ビデオストリームにおけるどの再生区間であっても再生可能なわけではなく、再生区間毎に再生可能なオーディオストリームが定義されている。【０００６】
これは、それぞれの再生区間において再生可能なオーディオストリームのストリームナンバーを当該再生区間に対応するストリームナンバーテーブルに登録することにより実現されている。【０００７】
再生装置は、自装置の再生能力及び状態設定に応じて、再生対象となる再生区間に対応するストリームナンバーテーブルに登録されているオーディオストリームから最適なオーディオストリームを選択し（オーディオストリーム選択機能）、再生する。【０００８】
一般的なオーディオストリーム選択機能について説明する（特許文献１参照）。再生装置は、オーディオストリームの選択の際には、ストリームナンバーテーブルに登録された複数のオーディオストリームのそれぞれについて、当該オーディオストリームを再生する能力が自装置に存在すること（条件Ａ）、当該オーディオストリームの言語属性が自装置に設定されている言語設定と一致していること（条件Ｂ）、及び当該オーディオストリームのチャネル属性が自装置に設定されているチャネル属性と一致していること（条件Ｃ）、の三つの条件のうちどれを満たすかを判定する。そして、満たすと判定された条件のパターンに応じて各オーディオストリームに優先順位を付し、その優先順位に基づいてオーディオストリームを選択し、再生する。【０００９】
具体的には、前述の全ての条件を満たすオーディオストリームが存在すれば、これら全ての条件を満たすオーディオストリームを選択し、再生を開始する。【００１０】
これら全ての条件を満たすオーディオストリームが存在しなければ、条件Ａと条件Ｂとを満たすオーディオストリームを選択する。【００１１】
条件Ａと条件Ｂとを満たすオーディオストリームも存在しなければ、条件Ａと条件Ｃとを満たすオーディオストリームを選択する。【００１２】
条件Ａと条件Ｃとを満たすオーディオストリームも存在しなければ、条件Ａを満たすオーディオストリームを選択する。【００１３】
ここで問題になるのが、優先順位の最も高いオーディオストリームが複数存在する場合である。この場合には、ストリームナンバーテーブルにおけるストリームナンバーの登録順序に応じて、再生すべきオーディオストリームを決定する。具体的には、再生装置は、優先順位の最も高いオーディオストリームのうちストリームナンバーテーブルに最初に登録されたオーディオストリームを選択する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】国際公開番号ＷＯ２００４−１１４６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
ところで近年、オーディオストリームの新たな符号化方式（Ｎｅｗ  Ａｕｄｉｏ  Ｃｏｄｅｃ）（以下、「ＮＡＣ」という）が、様々な目的で開発されている。ＮＡＣでは、より高音質での圧縮符号化を目指しており、ＮＡＣとして、例えば、従来よりも圧縮率が高いものや従来にない機能を備えるものが登場しつつある。【００１６】
このような背景の下、前述のＢｌｕ−ｒａｙ  ＤｉｓｃやＨＤ  ＤＶＤのような次世代ＤＶＤ規格に、ＮＡＣを導入することにより、次世代ＤＶＤの魅力をより高めたいという要望がある。【００１７】
しかしながら、既存の次世代ＤＶＤ規格にＮＡＣを導入するにあたっては、既存の次世代ＤＶＤ規格に準拠した既存の再生装置と、ＮＡＣが導入された、すなわちバージョン更新後の次世代ＤＶＤ規格に準拠した記録媒体との互換性が問題となる。【００１８】
具体的には、例えば、既存の再生装置がオーディオストリーム選択機能によりオーディオストリームを選択する際に、ＮＡＣで符号化されたオーディオストリームのストリームエントリーがストリームナンバーテーブルに登録されていると、ＮＡＣに関する属性情報を正しく読み込めないため、再生すべきオーディオストリームとして、ＮＡＣで符号化されたオーディオストリームを誤って選択してしまう可能性がある。【００１９】
そうすると、既存の再生装置は、ＮＡＣで符号化されたオーディオストリームをデコードできないため、その再生区間ではオーディオストリームが再生されない可能性がある。オーディオストリームが再生されない区間が発生すると、ユーザに対して不快感を与えることになる。【００２０】
本発明は、ＮＡＣで符号化されたオーディオストリームのストリームエントリーがストリームナンバーテーブルに登録されている場合に、既存の再生装置でのオーディオストリームの再生を保障する記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００２１】
上記目的を達成するために、本発明の一実施態様である記録媒体は、一以上のプレイリスト情報が記録された記録媒体であって、各プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、各ストリームナンバーテーブルは、複数のオーディオストリームのそれぞれに対応する、複数のストリームエントリーを有し、各ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、前記複数のオーディオストリームの符号化方式には、オプション方式のものと、マンダトリ方式のものとがあり、マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式であり、第一のプレイリスト情報に含まれる第一のストリームナンバーテーブルにおいて、オプション方式で符号化されたオーディオストリームのストリームエントリーは、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーの直後に登録されており、前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一であることを特徴とする。
【発明の効果】
【００２２】
上記課題を解決するための手段に記載の構成により、既存の再生装置が、オプション方式で符号化されたオーディオストリームをデコード可能であると誤って判定し、当該オーディオストリームの優先順位が最も高くなったとしても、当該オーディオストリームのストリームエントリーの直前のストリームエントリーに対応する、既存の符号化方式で符号化されたオーディオストリームも、オプション方式で符号化されたオーディオストリームと同様に優先順位が最も高くなる。【００２３】
既存の符号化方式で符号化されたオーディオストリームの言語コード及びチャネル数は、オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数と等しく、かつ、既存の再生装置は、既存の符号化方式で符号化されたオーディオストリームをデコード可能であるからである。【００２４】
優先順位が最も高いオーディオストリームが複数存在する場合には、最初に登録されたオーディオストリーム、すなわち、既存の符号化方式で符号化されたオーディオストリームが選択されるので、オプション方式で符号化されたオーディオストリームが選択されることはない。オプション方式で符号化されたオーディオストリームを含むデジタルストリームが記録された記録媒体を再生する場合であっても、既存の再生装置は、既存の符号化方式で符号化されたオーディオストリームを選択しデコードするので、オーディオストリームの再生を保障することができる。
【図面の簡単な説明】
【００２５】
【図１】BD-ROMの内部構成を示す図である。
【図２】拡張子“m2ts”が付与されたファイルがどのように構成されているかを模式的に示す図である。
【図３】ＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
【図４】PlayList情報のデータ構造を示す図である。
【図５】ES＿tableの内部構成を示す図である。
【図６】（ａ）Primaryオーディオストリームにおけるstream＿entryを示す図である。（ｂ）Primaryオーディオストリームに対応したstream＿attributesを示す図である。
【図７】ＮＡＣで符号化されたオーディオストリームのstream＿entry-stream＿attributesを含むES＿tableの構成の一例を示す図である。
【図８】ＡＶクリップの管理情報の内部構成を示す図である。
【図９】再生装置１０００の内部構成を示す図である。
【図１０】コントローラ１００を機能的に表現した図である。
【図１１】（ａ）PSR1のビットアサインを示す図である。（ｂ）PSR15のビットアサインを示す図である。（ｃ）PSR31のビットアサインを示す図である。
【図１２】ナビゲーションコマンド群が、version＿numberが２．３以上のプレイリストを再生するナビゲーションコマンドを含む場合のプレイリスト選択処理を示すフローチャートである。
【図１３】再生制御部１０２によるプレイリスト再生手順を示すフローチャートである。
【図１４】（ａ）PSR1の設定値が取り得る状態遷移を示す図である。（ｂ）Procedure when playback condition is changedの処理手順を示す図である。
【図１５】PSR1の設定（ステップＳ３０５）の詳細な処理手順を示したフローチャートである。
【図１６】ストリーム変化時におけるPSR1の設定手順を示すフローチャートである。
【図１７】メニュー画面の一例を示す図である。
【図１８】（ａ）再生装置のPlayer Capability、言語設定、及びSurround Capabilityを示す図である。（ｂ）ES＿tableの記録内容を示す図である。（ｃ）6つのオーディオストリームのstream＿entry-stream＿attributesを示す図である。
【図１９】ＢＤ−ＲＯＭ１ａ及びＨＤＤ１ｂのデータ構造を示す図である。
【図２０】実施の形態２においてＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
【図２１】実施の形態２におけるES＿tableの内部構成を示す図である。
【図２２】（ａ）Comb＿info＿Secondary＿audio＿Primary＿audioの内部構成を示す図である。（ｂ）Comb＿info＿Secondary＿audio＿Primary＿audioの一例を示す図である。
【図２３】記録装置３０００の内部構成を示すブロック図である。
【図２４】stream＿attributes()のシンタックスを示す図である。
【図２５】stream＿code＿inf()のシンタックスを示す図である。
【図２６】ハフマン符号化された値(H)とフィールド値との対応を示すテーブルの一例を示す図である。
【図２７】デコード手順を示す図である。
【図２８】ＢＤ−ＲＯＭ規格において２つのＡＶデータを連続して再生する際の、Ｖｉｄｅｏアクセスユニットと、Ａｕｄｉｏアクセスユニットとの関係を示す図である。
【発明を実施するための形態】
【００２６】
以下、図面を参照しながら本発明の実施の形態を説明する。
（実施の形態１）
１．ＢＤ−ＲＯＭの内部構成
図１は、ＢＤ−ＲＯＭの内部構成を示す図である。本図の第４段目にＢＤ−ＲＯＭを示し、第３段目にＢＤ−ＲＯＭ上のトラックを示す。本図のトラックは、ＢＤ−ＲＯＭの内周から外周にかけて螺旋状に形成されているトラックを横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてＢＤ−ＲＯＭの応用層フォーマット（アプリケーションフォーマット）を表現すると、図中の第１段目のようになる。本図に示すようにＢＤ−ＲＯＭには、ＲＯＯＴディレクトリの直下にＢＤＭＶディレクトリがあり、ＢＤＭＶディレクトリの配下には、インデックスファイル（index.bdmv）、ＭｏｖｉｅＯｂｊｅｃｔファイル（Movie Object.bdmv）、ＰＬＡＹＬＩＳＴディレクトリ、ＣＬＩＰＩＮＦＯディレクトリ、ＳＴＲＥＡＭディレクトリ、ＢＤＢＪディレクトリ、及びＢＤＪＡディレクトリが存在する。
【００２７】
１．１．インデックスファイル（index.bdmv）
インデックスファイル（index.bdmv）には、タイトル構成を示すインデックステーブルが格納される。タイトルとは、再生の単位であり、例えば、一つ目のタイトルとして映画本編、２つ目のタイトルとしてディレクターズカット、3つ目のタイトルとしてボーナスコンテンツが記録される。ユーザは、再生装置に付属しているリモコン等を用いて”タイトルＮ番の再生”のように、再生するタイトルを指定する事ができる。
【００２８】
１．２．ＳＴＲＥＡＭディレクトリ
ＳＴＲＥＡＭディレクトリには、拡張子“m2ts”が付与されたファイルが格納される。図２は、拡張子“m2ts”が付与されたファイルがどのように構成されているかを模式的に示す図である。拡張子“m2ts”が付与されたファイルは、ＡＶクリップを格納している。ＡＶクリップは、MPEG2-Transport Stream形式のデジタルストリームである。
【００２９】
図２に示すように、デジタル化された映像及び音声はそれぞれ（上１段目）、ＰＥＳパケットからなるエレメンタリストリームに変換され（上２段目）、更にＴＳパケットに変換される（上３段目）。同様に、字幕系のプレゼンテーショングラフィクスストリーム（Presentation Graphics（ＰＧ）ストリーム）及び対話系のインタラクティブグラフィクスストリーム（Interactive Graphics（ＩＧ）ストリーム）もそれぞれ（下１段目、下２段目）、ＴＳパケットに変換される（下３段目）。デジタルストリームは、これらを多重化したものである。
【００３０】
ここで、図１に示すように、ＳＴＲＥＡＭディレクトリには、ファイル（00001.m2ts（with NAC））とファイル（00002.m2ts（without NAC））とが格納されている。両者の違いは、新しいオーディオ符号化方式（New Audio Codec：以下、「ＮＡＣ」という）（例えば、ＤＲＡ）で符号化されたオーディオストリームがデジタルストリームに含まれているか否かである。より詳細に説明すると、ファイル（00002.m2ts（without NAC））には、オーディオストリームに関しては、ドルビーＡＣ−３、Ｄｏｌｂｙ  Ｄｉｇｉｔａｌ  Ｐｌｕｓ、ＭＬＰ、ＤＴＳ、ＤＴＳ−ＨＤ、及びリニアＰＣＭ等の既存の符号化方式で符号化されたオーディオストリーム（以下、「既存符号化ストリーム」ともいう）のみが含まれる。一方、ファイル（00001.m2ts（with NAC））には、それらの符号化方式で符号化されたオーディオストリームに加え、ＮＡＣで符号化されたオーディオストリーム（以下、「ＮＡＣストリーム」ともいう）が含まれる。
【００３１】
図２に戻って、PGストリームは、字幕を構成するグラフィクスストリームである。グラフィクスストリームは、言語毎（例えば、英語、日本語、フランス語等）に存在する。PGストリームは、PCS(Presentation Control Segment)、PDS(Pallet Define Segment)、WDS(Window Define Segment)、ODS(Object Define Segment)、及びEND(END of Display Set Segment)という一連の機能セグメントからなる。ODS(Object Define Segment)は、字幕たるグラフィクスオブジェクトを定義する機能セグメントである。WDS(Window Define Segment)は、画面におけるグラフィクスオブジェクトの描画領域を定義する機能セグメントであり、PDS(Pallet Define Segment)は、グラフィクスオブジェクトの描画にあたっての、発色を規定する機能セグメントである。PCS(Presentation Control Segment)は、字幕表示におけるページ制御を規定する機能セグメントである。かかるページ制御には、Cut-In/Out、Fade-In/Out、Color Change、Scroll、Wipe-In/Outといったものがあり、PCSによるページ制御により、ある字幕を徐々に消去しつつ、次の字幕を表示させるという表示効果を実現することができる。
【００３２】
IGストリームは、対話制御を実現するグラフィクスストリームである。IGストリームにて定義される対話制御は、DVD再生装置上の対話制御と互換性を有する。かかるIGストリームは、ICS(Interactive Composition Segment)、PDS(Palette Definition Segment)、ODS(Object Definition Segment)、及びEND(END of Display Set Segment)と呼ばれる機能セグメントからなる。ODS(Object Definition Segment)は、グラフィクスオブジェクトを定義する機能セグメントである。このグラフィクスオブジェクトが複数集まって、対話画面上のボタンが描画される。PDS(Palette Definition Segment)は、グラフィクスオブジェクトの描画にあたっての、発色を規定する機能セグメントである。ICS(Interactive Composition Segment)は、ユーザ操作に応じてボタンの状態を変化させるという状態変化を実現する機能セグメントである。ICSは、ボタンに対して確定操作がなされた際、実行すべきボタンコマンドを含む。
【００３３】
ここでＡＶクリップは、1つ以上の“STC＿Sequence”から構成される。“STC＿Sequence”とは、ＡＶストリームのシステム基準時刻であるSTC(System Time Clock)の不連続点(system time-base discontinuity)が存在しない区間をいう。STCの不連続点は、デコーダがSTCを得るために参照するPCR(Program Clock Reference)を運ぶPCRパケットの不連続情報(discontinuity＿indicator)がONである点である。
【００３４】
続いて、図３は、ＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
【００３５】
本図に示すように、ＡＶクリップには、0x1011のPIDをもつ高画質ビデオストリーム、0x1100から0x111FまでのPIDをもつPrimaryオーディオストリーム、0x1200から0x121FまでのPIDをもつPGストリーム、及び0x1400から0x141FまでのPIDをもつIGストリームが多重化されている。これらのエレメンタリストリームを構成するパケットには、当該エレメンタリストリームに対応するPIDが付与されており、このPIDに基づいて多重分離されることになる。
【００３６】
１．３．ＰＬＡＹＬＩＳＴディレクトリ
１．３．１．拡張子“mpls”が付与されたファイルのデータ構造
ＰＬＡＹＬＩＳＴディレクトリには、拡張子“mpls”が付与されたプレイリストファイルが格納される。拡張子“mpls”が付与されたプレイリストファイルは、PlayList(PL)情報を格納している。PlayList情報は、ＡＶクリップにおける論理的な再生経路を定義した情報である。
【００３７】
ここで、図１に示すように、ＰＬＡＹＬＩＳＴディレクトリには、ファイル（00001.mpls（with NAC））とファイル（00002.mpls（without NAC））とが格納されている。ファイル（00001.mpls（with NAC））に格納されているPlayList情報は、ファイル（00001.m2ts（with NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含む。一方、ファイル（00002.mpls（without NAC））は、ファイル（00002.m2ts（without NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含まない。
【００３８】
図４は、PlayList情報のデータ構造を示す図である。本図において、PlayList情報は、PlayList情報のバージョンを定義するVersion＿numberと、MainPathを定義するMainPath情報(MainPath())と、チャプタを定義するPlayListMark情報(PlayListMark())とを含む。
【００３９】
Version＿numberには、当該PlayList情報がＮＡＣに対応しているか、すなわち、ＮＡＣストリームに関する情報を含むか否かに応じて異なる番号が設定される。ファイル（00001.mpls）に格納されている、すなわち、ＮＡＣに対応しているPlayList情報のVersion＿numberには、例えば、２．３が設定される。一方、ファイル（00002.mpls）に格納されている、すなわち、ＮＡＣに対応していないPlayList情報のVersion＿numberには、例えば、１．０または２．０が設定される。
【００４０】
MainPathは、主映像たるビデオストリームやオーディオストリームに対して定義される再生経路である。
【００４１】
MainPathは、引き出し線mp1で示すように、複数のPlayItem情報#1・・・#mを含んで構成される。PlayItem情報は、MainPathを構成する1つの論理的な再生区間を定義する。
【００４２】
PlayItem情報の構成は、引き出し線hs1によりクローズアップされている。引き出し線hs1に示すように、PlayItem情報は、再生区間のIN点及びOut点が属するＡＶクリップの再生区間情報のファイル名を示す『Clip＿Information＿file＿name』と、ＡＶクリップの符号化方式を示す『Clip＿codec＿identifier』と、PlayItemがマルチアングルを構成するか否かを示す『is＿multi＿angle』と、このプレイアイテムとその1つ前のプレイアイテムとの接続をシームレスに行うか否かを示す『connection＿condition』と、このプレイアイテムが対象としているSTC＿Sequenceを一意に示す『ref＿to＿STC＿id[0]』と、再生区間の始点を示す時間情報『In＿time』と、再生区間の終点を示す時間情報『Out＿time』と、このプレイアイテムにおいてマスクすべきユーザオペレーションがどれであるかを示す『UO＿mask＿table』と、このプレイアイテムの途中へのランダムアクセスを許可するか否かを示す『PlayItem＿random＿access＿flag』と、このプレイアイテムの再生終了後、最後のピクチャの静止表示を継続するか否かを示す『Still＿mode』と、『ES＿table』とから構成される。このうち、再生経路を構成するのは、再生区間の始点を示す時間情報『In＿time』と、再生区間の終点を示す時間情報『Out＿time』との組みであり、再生経路情報とは、この『In＿time』及び『Out＿time』の組みから構成される。PlayItem情報の定義により、ＡＶクリップとは異なる再生経路の定義が可能になる。
【００４３】
１．３．１．１．『ES＿table』のデータ構造
続いて、『ES＿table』の詳細について説明する。
【００４４】
ES＿tableは、PlayItem情報のClip＿Information＿file＿nameで指定されているＡＶクリップに多重化された複数エレメンタリストリームのうち、再生可能なものを示すテーブルである。具体的には、ES＿tableは、MainClipに多重化されている複数エレメンタリストリームのうち再生可能なエレメンタリストリームについてのstream＿entryを、stream＿attributesと対応付けることで構成される。
【００４５】
図５は、ES＿tableの内部構成を示す図である。図中の括弧記号“｛”は、ビデオストリーム、Primaryオーディオストリーム、PGストリーム、及びIGストリームのそれぞれについて、再生可能なストリームに対応するstream＿entry- stream＿attributesの組みを示している。ストリームの種別毎に当該ストリームの種別において各々のストリームを識別するための識別子（id）が付されている。本図に示すES＿tableは、ビデオストリームについて、stream＿entry及びstream＿attributesの組み(stream＿entry- stream＿attributes)を一つ有し、Primaryオーディオストリーム、PGストリーム、及びIGストリームのそれぞれについて、stream＿entry及びstream＿attributesの組み(stream＿entry- stream＿attributes)を複数有している。
【００４６】
また、ES＿tableは、再生可能なビデオストリーム数を示すnumber＿of＿video＿stream＿entries、再生可能なPrimaryオーディオストリーム数を示すnumber＿of＿audio＿stream＿entries、再生可能なPGストリーム数を示すnumber＿of＿PG＿stream＿entries、及び再生可能なIGストリーム数を示すnumber＿of＿IG＿stream＿entriesを含む。
【００４７】
続いて、stream＿entry-stream＿attributesの詳細について説明する。図６（ａ）は、Primaryオーディオストリームにおけるstream＿entryを示す図である。本図に示すように、Primaryオーディオストリームのstream＿entryは、Primaryオーディオストリームの多重分離に用いられるPIDを示す「ref＿to＿Stream＿PID＿of＿Main＿Clip」を含む。
【００４８】
図６（ｂ）は、Primaryオーディオストリームに対応したstream＿attributesを示す図である。Primaryオーディオストリームにおけるstream＿attributesは、オーディオストリームの符号化方式を示す『coding＿type』と、対応するオーディオストリームのチャネル構成を示す『presentation＿type』と、対応するオーディオストリームのサンプリング周波数を示す『sampling＿frequency』と、オーディオストリームの言語属性を示す『audio＿language＿code』とを含む。
【００４９】
１．３．１．１．１．ファイル（00001.mpls）のES＿table
続いて、ファイル（00001.mpls）のES＿tableについて説明する。ES＿tableがＮＡＣストリームのstream＿entry-stream＿attributesを含む場合には、どのような順序で再生可能な各オーディオストリームのstream＿entry-stream＿attributesを登録するのかが重要である。
【００５０】
ＮＡＣストリームのstream＿entry-stream＿attributesをES＿tableに登録する際には、当該オーディオストリームのstream＿entry-stream＿attributesの直前に当該オーディオストリームと同一の音源からエンコードされた、既存の符号化方式（ＡＣ３、ＤＴＳ、及びＬＰＣＭ等）で符号化されたオーディオストリームのstream＿entry-stream＿attributesを登録しておく。例えば、ＮＡＣストリームが、日本語吹き替えの本編用の音声である場合、ＮＡＣの直前に登録されているオーディオストリームの音源も日本語吹き替えの本編用の音声であることが望ましい。
【００５１】
また、ＮＡＣストリームの言語コード及びチャネル数は、直前に登録されている、既存符号化ストリームの言語コード及びチャネル数と同一であることが望ましい。
【００５２】
再生装置は、再生すべきオーディオストリームを選択する際、選択の優先順位が最も高いオーディオストリームが複数存在する場合には、ES＿tableの最初に登録されているオーディオストリームを選択するので、上述のように登録することにより、たとえ既存の再生装置が、ＮＡＣストリームを再生する能力が自装置に存在する、すなわち、条件Ａを満たすものと誤って判定したとしても、当該ＮＡＣのstream＿entry-stream＿attributesの直前に登録されている既存符号化ストリームが選択され、ＮＡＣストリームが選択されることはない。
【００５３】
図７は、ＮＡＣストリームのstream＿entry-stream＿attributesを含むES＿tableの構成の一例を示す図である。図７に示すように、Primaryオーディオストリームの先頭のstream＿attributes（id=1）には、coding＿typeとしてＡＣ３、presentation＿typeとしてmulti-channel、audio＿language＿codeとしてJapaneseが記述されている。stream＿attributes（id=2）には、coding＿typeとしてＮＡＣ、presentation＿typeとしてmulti-channel、audio＿language＿codeとしてJapaneseが記述されている。また、オーディオストリーム（id=1）及びオーディオストリーム（id=2）は、同じオーディオコンテンツからエンコードされているものとする。
【００５４】
再生すべきオーディオストリームを選択する際、たとえ既存の再生装置が、ＮＡＣストリームを再生する能力が自装置に存在すると誤って判定し、ＮＡＣストリームと、ＡＣ３で符号化されたオーディオストリームの優先順位とが同一になったとしても、ＡＣ３で符号化されたオーディオストリームが選択されるので、既存の再生装置によるオーディオストリームの再生を保障することができる。
【００５５】
１．４．ＣＬＩＰＩＮＦＯディレクトリ
ＣＬＩＰＩＮＦＯディレクトリには、拡張子“clip”が付与されたクリップ情報ファイルが格納される。拡張子“clip”が付与されたクリップ情報ファイルは、ＡＶクリップの管理情報を格納している。
【００５６】
ここで、図１に示すように、ＣＬＩＰＩＮＦＯディレクトリには、ファイル（00001.clip（with NAC））とファイル（00002.clip（without NAC））とが格納されている。ファイル（00001.clip（with NAC））に格納されている管理情報は、ファイル（00001.m2ts（with NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含む。一方、ファイル（00002.clip（without NAC））に格納されている管理情報は、ファイル（00002.m2ts（without NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含まない。
【００５７】
図８は、ＡＶクリップの管理情報の内部構成を示す図である。ＡＶクリップの管理情報は、基本的にはＡＶクリップと１対１に対応し、ＡＶクリップについての情報を格納した『ClipInfo()』、ATC Sequence及びSTC Sequenceに関する情報を格納した『Sequence Info()』、Program Sequenceに関する情報を格納した『Program Info()』、及び『Characteristic Point Info(CPI())』からなる。
【００５８】
Program Infoは、ＡＶクリップに含まれるエレメンタリストリーム数を示すnumber＿of＿es、各エレメンタリストリームのＰＩＤを示すstream＿pid、及び各エレメンタリストリームの種類に応じた属性情報を示すstream＿code＿info()から構成される。
【００５９】
ファイル（00001.m2ts）に格納されているＡＶクリップには、ＮＡＣに対応するオーディオストリームが含まれるので、ファイル（00001.clip（with NAC））に格納されている管理情報におけるstream＿code＿info()には、ＮＡＣに対応するオーディオストリームの属性情報が記載されることになる。
【００６０】
CPI()は、AVClipに属する個々のエレメンタリストリームについてのEP＿map（不図示）を含む。EP＿mapは、1つのエレメンタリストリーム上において、Access Unitが存在するエントリー位置のパケット番号(SPN＿EP＿start)を、エントリー時刻(PTS＿EP＿start)と対応づけて示す情報である。
【００６１】
以上のプレイリスト情報及びクリップ情報は、”静的シナリオ”に分類される。何故なら、以上のプレイリスト情報及びクリップ情報により、静的な再生単位であるプレイリストが定義されるからである。以上で静的シナリオについての説明を終わる。
【００６２】
続いて”動的なシナリオ”について説明する。動的シナリオとは、ＡＶクリップの再生制御を動的に規定するシナリオデータである。”動的に”というのは、再生装置における状態変化やユーザからのキーイベントにより再生制御の中身がかわることをいう。BD-ROMでは、この再生制御の動作環境として2つのモードを想定している。1つ目は、DVD再生装置の動作環境と良く似た動作環境であり、コマンドベースの実行環境である。2つ目は、Java（登録商標）仮想マシンの動作環境である。これら2つの動作環境のうち1つ目は、HDMVモードと呼ばれる。2つ目は、BD-Jモードと呼ばれる。これら2つの動作環境があるため、動的シナリオはこのどちらかの動作環境を想定して記述される。HDMVモードを想定した動的シナリオはMovie Objectと呼ばれる。一方BD-Jモードを想定した動的シナリオはBD-J Objectと呼ばれる。
【００６３】
先ず初めにMovie Objectについて説明する。
【００６４】
１．５．Movie Object
Movie Objectは、図１に示したMovieObject.bdmvというファイルに格納され、ナビゲーションコマンド列を含む。
【００６５】
ナビゲーションコマンド列は、条件分岐、再生装置における状態レジスタの設定、状態レジスタの設定値取得等を実現するコマンド列からなる。Movie Objectにおいて記述可能なコマンドを以下に示す。
【００６６】
PlayPLコマンド
書式:PlayPL(第１引数，第２引数)
第１引数は、プレイリストの番号で、再生すべきプレイリストを指定することができる。第２引数は、そのプレイリストに含まれるプレイアイテムや、そのプレイリストにおける任意の時刻、Chapter、Markを用いて再生開始位置を指定することができる。
【００６７】
プレイアイテムによりPL時間軸上の再生開始位置を指定したPlayPL関数をPlayPLatプレイアイテム()、
ChapterによりPL時間軸上の再生開始位置を指定したPlayPL関数をPlayPLatChapter()、
時刻情報によりPL時間軸上の再生開始位置を指定したPlayPL関数をPlayPLatSpecified Time()という。
【００６８】
Movie Objectにおけるナビゲーションコマンドの記述は、DVDにおけるナビゲーションコマンドの記述方式と良く似ているので、DVD上のディスクコンテンツを、BD-ROMに移植するという作業を効率的に行うことができる。Movie Objectについては、国際公開公報W0 2004/074976に記載された先行技術が存在する。詳細については、本国際公開公報を参照されたい。
【００６９】
以上でMovie Objectについての説明を終える。続いてBD-J Objectについて説明する。
【００７０】
１．６．BD-J Object
BD-J Objectは、Javaプログラミング環境で記述された、BD-Jモードの動的シナリオであり、00001.bobjというファイルに格納される。Movie Objectとの違いは、BD-J Objectにコマンドが直接記述されていない点である。つまりMovie Objectにおいて制御手順は、ナビゲーションコマンドにより直接記述されていた。これに対しBD-J Objectでは、Javaアプリケーションに対する指定をアプリケーション管理テーブルに記載することにより、間接的に制御手順を規定している。このような間接的な規定により、複数の動的シナリオにおいて制御手順を共通化するという、制御手順の共通化を効率的に行うことができる。
【００７１】
またMovieObjectにおけるプレイリスト再生は、プレイリスト再生を命じるナビゲーションコマンド(PlayPlコマンド)の記述によりなされるが、BD-J Objectにおけるプレイリスト再生は、プレイリスト再生手順を示すプレイリスト管理テーブルをBD-J Objectに組み込むことで記述が可能になる。
【００７２】
このBD-JモードにおけるJavaアプリケーションについて説明する。ここでBD-Jモードが想定しているJavaプラットフォームは、Java2Micro＿Edition(J2ME) Personal Basis Profile(PBP 1.0)と、Globally Executable MHP specification(GEM1.0.2)for package media targetsとをフル実装したものである。
【００７３】
このBD-JモードにおけるJavaアプリケーション（BD-Jアプリケーション）は、xletインタフェースを通じて、Application Managerにより、制御される。xletインタフェースは、“loaded”、“paused”、“active”、“destoryed”といった4つの状態をもつ。
【００７４】
上述したJavaプラットフォームは、JFIF(JPEG)やPNG、その他のイメージデータを表示するためのスタンダードJavaライブラリを含む。このため、Javaアプリケーションは、HDMVモードにおいてIGストリームにより実現されるGUIとは異なるGUIフレームワークを実現することができる。JavaアプリケーションにおけるGUIフレームワークは、GEM1.0.2にて規定されたHAViフレームワークを含み、GEM1.0.2におけるリモートコントロールナビゲーション機構を含む。
【００７５】
これにより、Javaアプリケーションは、HAViフレームワークに基づくボタン表示、テキスト表示、オンライン表示(BBSの内容)といった表示と、動画像の表示とを組み合わせた画面表示を実現することができ、リモートコントロールを用いて、この画面表示に対する操作を行うことができる。
【００７６】
このJavaアプリケーションの実体にあたるのが、図１におけるBDMVディレクトリ配下のBDJAディレクトリに格納されたJavaアーカイブファイル(00001.jar)である。
【００７７】
BD-J Objectについては、国際公開公報W0 2004/045840 A1、W0 2005/036555 A1、及びW0 2005/036546 A1に記載された先行技術が存在する。詳細については、本国際公開公報を参照されたい。
【００７８】
以上でBD-J Objectについての説明を終える。
２．再生装置
２．１．ハードウェア構成
図９は、再生装置１０００の内部構成を示す図である。再生装置１０００は、主としてシステムLSIと、ドライブ装置という2つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装することで工業的に生産することができる。システムLSIは、再生装置の機能を果たす様々な処理部を集積した集積回路である。こうして生産される再生装置は、ＢＤ‐ＲＯＭドライブ１０、リードバッファ２０、システムターゲットデコーダ３００、プレーン加算部４０、エンコーダ５０、Ｄ／Ａコンバータ６０、メモリ７０、ＰＩＤ変換部８０、ＰＳＲセット９０、コントローラ１００、操作受付部１１０、及びHDMI送受信部１２０を含んで構成される。
【００７９】
ＢＤ−ＲＯＭドライブ１０は、コントローラ１００から入力される読み出し要求に基づいてＢＤ−ＲＯＭ１からデータを読み出す。ＢＤ−ＲＯＭ１から読み出されたＡＶクリップはリードバッファ２０に、管理情報（インデックスファイル、プレイリストファイル、及びクリップ情報ファイル）、並びにMovieObject.bdmvファイル及びBD-J Objectファイル（以下、「ＢＤプログラムファイル」ともいう）はメモリ７０に、それぞれ転送される。
【００８０】
リードバッファ２０は、FIFOメモリであり、ＢＤ−ＲＯＭ１から読み出されたTSパケットが先入れ先出し式に格納される。
【００８１】
システムターゲットデコーダ３００は、リードバッファ２０に格納されているTSパケットに対して多重分離処理を行い、ストリームのデコード処理を行う。TSパケットに含まれるストリームのデコードに必要な、コーデックの種類やストリーム属性等の情報は、コントローラ１００から転送される。
【００８２】
システムターゲットデコーダ３００は、具体的には、デマルチプレクサ３０１、ＡＴＣ生成部３０２、ＳＴＣ生成部３０３、インタラクティブグラフィックスプレーンデコーダ（ＩＧデコーダ）３０４、インタラクティブグラフィックスプレーン（ＩＧプレーン）３０５、プレゼンテーショングラフィックスデコーダ（ＰＧデコーダ）３０６、プレゼンテーショングラフィックスプレーン（ＰＧプレーン）３０７、ビデオデコーダ３０８、ビデオプレーン３０９、JPEGデコーダ３１０、Stillプレーン３１１、スイッチ３１２、及びオーディオデコーダ３１３を含んで構成される。
【００８３】
デマルチプレクサ３０１は、リードバッファ２０に格納されているＴＳパケットを取り出し、取り出したＴＳパケットからＰＥＳパケットを得る。得られたPESパケットのうち、PID変換部８０から通知されたPIDをもつものを、ビデオデコーダ３０８、オーディオデコーダ３１３、ＩＧデコーダ３０４、及びＰＧデコーダ３０６の何れかに出力する。
【００８４】
ATC生成部３０２は、コントローラ１００の指示によってArrival Time Clock(ATC)を生成し、デマルチプレクサ３０１の動作タイミングを調整する。
【００８５】
STC生成部３０３は、コントローラ１００の指示によってSystem Time Clock(STC)を生成し、各デコーダの動作タイミングを調整する。
【００８６】
ＩＧデコーダ３０４は、デマルチプレクサ３０１から入力されるインタラクティブグラフィックスストリームを復号し、表示時刻（ＰＴＳ）のタイミングで、非圧縮形式のグラフィックスデータをＩＧプレーン３０５に書き出す。
【００８７】
ＩＧプレーン３０５は、グラフィックスデータを格納しておくためのプレーンである。
【００８８】
ＰＧデコーダ３０６は、デマルチプレクサ３０１から入力されるプレゼンテーショングラフィックスストリームを復号し、表示時刻（ＰＴＳ）のタイミングで、非圧縮形式のグラフィックスデータをＰＧプレーン３０７に書き出す。
【００８９】
ＰＧプレーン３０７は、グラフィックスデータを格納しておくためのプレーンである。
【００９０】
ビデオデコーダ３０８は、デマルチプレクサ３０１から入力されるＰＥＳパケットを復号して非圧縮形式のピクチャを得て、ビデオプレーン３０９に書き込む。
【００９１】
ビデオプレーン３０９は、非圧縮形式のピクチャを格納しておくためのプレーンである。プレーンとは、再生装置において一画面分の画素データを格納しておくためのメモリ領域である。ビデオプレーンにおける解像度は1920×1080であり、このビデオプレーンに格納されたピクチャデータは、16ビットのYUV値で表現された画素データにより構成される。
【００９２】
JPEGデコーダ３１０は、コントローラ１００から入力されるグラフィックスデータ（例えば、ＪＰＥＧ）をデコードして、Stillプレーン３１１に書き込む。
【００９３】
Stillプレーン３１１は、JPEGデータを展開することで得られた非圧縮のグラフィクスデータが格納されるプレーンである。
【００９４】
スイッチ３１２は、デマルチプレクサ３０１により多重分離がなされた、Primaryオーディオストリームを構成するTSパケットを、オーディオデコーダ３１３に供給するか、またはオーディオデコーダ３１３に供給せず、そのオーディオストリームを他の機器に出力するか（パススルー出力）を切り換えるスイッチである。
【００９５】
オーディオデコーダ３１３は、デマルチプレクサ３０１から入力されたＰＥＳパケットを復号して、非圧縮形式のオーディオデータを出力する。オーディオデコーダ３１３は、ＮＡＣストリームを復号することができる。
【００９６】
プレーン加算部４０は、ビデオプレーン３０９、ＰＧプレーン３０７、ＩＧプレーン３０５、及びStillプレーン３１１を瞬時に重畳することで映像信号を生成し、デジタルテレビ等のディスプレイに出力する。
【００９７】
エンコーダ５０は、オーディオデコーダ３１３によるデコードにより得られたLPCM状態のオーディオデータを、サラウンド音声としてS/PDIFのようなデジタルインタフェースで送る場合、LPCMをDolby Digital(DD)形式やDolby Theater System(DTS)形式に圧縮符号化する。
【００９８】
Ｄ／Ａコンバータ６０は、オーディオデコーダ３１３によるデコードにより得られたLPCM状態のオーディオデータを、アナログデータに変換し外部の機器に出力する。
【００９９】
メモリ７０は、ＢＤプログラムファイルの他、カレントのPL情報やカレントのClip情報等を格納しておくためのメモリである。カレントPL情報とは、BD-ROMに記録されている複数のPlayList情報のうち、現在処理対象になっているものをいう。カレントClip情報とは、BD-ROMに記録されている複数のClip情報のうち、現在処理対象になっているものをいう。
【０１００】
ＰＩＤ変換部８０は、PSRセット９０に格納されているPrimaryオーディオストリームのストリームナンバーを、ES＿Tableに基づき、PIDに変換して、変換結果たるPIDをデマルチプレクサ３０１に指示する。
【０１０１】
PSRセット９０は、再生装置に内蔵されるレジスタであり、64個のPlayer Setting/Status Register(PSR)と、4096個のGeneral Purpose Register（GPR)とからなる。Player Setting/Status Registerの設定値(PSR)のうち、PSR4〜PSR8は、現在の再生時点を表現するのに用いられる。
【０１０２】
コントローラ１００は、ＣＰＵ１００ａと命令ＲＯＭ１００ｂとを含む。
【０１０３】
ＣＰＵ１００ａは、MovieObject.bdmvに格納されているMovie Objectや、BD-J Objectにて参照されているJavaアプリケーションを解読し、この解読結果に従ったプレイリスト再生(カレントPlayList情報に従った再生制御のことである）を実行することで、BD-ROMの再生制御を実現する。また上述のようなATS、STCの制御も行なう。
【０１０４】
命令ＲＯＭ１００ｂは、再生装置の制御を規定するソフトウェアを記憶している。
【０１０５】
操作受付部１１０は、リモコンに対してなされた操作をユーザから受け付け、そうした操作を示すユーザイベント情報をコントローラ１００に通知する。
【０１０６】
HDMI送受信部１２０は、HDMI（HDMI:High Definition Multimedia Interface）を介して接続された他の機器から、その機器に関する情報を受信する。また、ビデオデコーダ３０８のデコードにより得られたデジタル非圧縮のビデオを、LPCMや圧縮されたオーディオデータとともに、HDMIを介して接続された他の機器に送信する。
【０１０７】
以上が、再生装置１０００のハードウェア構成である。次に、再生装置１０００のソフトウェア構成について説明する。
【０１０８】
２．２．ソフトウェア構成
図１０は、コントローラ１００を機能的に表現した図である。本図に示すように、コントローラ１００は、プログラム実行部１０１、再生制御部１０２、Procedure実行部１０３、及びATC生成部３０２とSTC生成部３０３とに対して、ATC/STCの生成を行わせるATC/STC制御部１０４から構成される。
【０１０９】
これらの構成要素の処理は、PSRセット９０に基づく。以降、PSR1、PSR15、PSR31について説明する。
【０１１０】
＜PSR1＞
図１１（ａ）は、PSR1のビットアサインを示す図である。
【０１１１】
本図によると、32ビット長のPSR1の下位8ビット(b0〜b7)は、ストリームナンバーであり、カレントPlay ItemのES＿tableにstream＿entryが記述されている複数Primaryオーディオストリームのうち、1つを特定する。PSR1の設定値が変化すれば、再生装置１０００は、この変化後の設定値に対応するPrimaryオーディオストリームを再生する。PSR1には初期値として0xFFが設定されており、再生装置１０００により1〜32の値に設定されうる。この0xFFは、不定値であり、Primaryオーディオストリームが存在しない旨、又は、Primaryオーディオストリームが選択されてない旨を示す。1〜32の設定値は、Primaryオーディオストリームのストリームナンバーとして解釈される。
【０１１２】
＜PSR15＞
図１１（ｂ）は、PSR15のビットアサインを示す図である。
【０１１３】
本図によると、PSR15は、DRA capability、Dolby Lossless capability、DTS-HD capability、Dolby Digital Plus capability、及びLPCM capabilityを含む。
【０１１４】
DRA capabilityは、DRA ExtensionとDRA Coreとを含む。DRA Extension及びDRA Coreはそれぞれ、01bに設定されることによりDRA形式のステレオ音声を再生できる能力が再生装置にあることを示し、10bに設定されることによりDRA形式のサラウンド音声を再生できる能力が再生装置にあることを示す。一方、00bに設定されることにより、DRA形式のオーディオストリームをデコードする能力が再生装置に存在しないことを示す。
【０１１５】
＜PSR31＞
図１１（ｃ）は、PSR31のビットアサインを示す図である。
【０１１６】
本図によると、32ビット長のPSR31のうち、下位16ビット (b0〜b15)は、Player Version情報であり、0000 0010 0000 0000bであれば、当該再生装置のバージョンが、２．０、２．１あるいは２．２であることを示す。0000 0010 0011 0000bであれば、当該再生装置のバージョンが、２．３であることを示す。
【０１１７】
以上が、PSRセット９０についての説明である。
【０１１８】
以降、プログラム実行部１０１〜Procedure実行部１０３について説明する。
【０１１９】
＜プログラム実行部１０１＞
プログラム実行部１０１は、メモリ７０に格納されているＢＤプログラムファイルに格納されたプログラムを実行する。具体的には、操作受付部１１０から入力されるユーザイベントに基づいて、再生制御部１０２に対してプレイリスト再生を命令したり、Procedure実行部１０３に対してPSRセット９０における状態取得／設定を命令したりする。
【０１２０】
図１２は、ＢＤプログラムファイルに格納されたナビゲーションコマンド群が、version＿numberが２．３以上のプレイリストを再生するナビゲーションコマンドを含む場合のプレイリスト選択処理を示すフローチャートである。
【０１２１】
まず、ＢＤプログラムは、PSR３１のプレーヤバージョン値をチェックし（ステップＳ１０１）、再生装置が、ＮＡＣに対応しているか否かを判定する。具体的には、PSR３１のプレーヤバージョンにより示されるバージョンナンバーが、プレイリスト（00001.mpls）のVersion＿numberにより示されるバージョンナンバー以上であるか否かを判定する（ステップＳ１０２）。
【０１２２】
PSR３１のプレーヤバージョンにより示されるバージョンナンバーが、プレイリスト（00001.mpls）のVersion＿numberにより示されるバージョンナンバー以上であれば（ステップＳ１０２でＹｅｓ）、プレイリスト（00001.mpls）の再生を再生制御部１０２に指示する。
【０１２３】
PSR３１のプレーヤバージョンにより示されるバージョンナンバーが、プレイリスト（00001.mpls）のVersion＿numberにより示されるバージョンナンバーより小さければ（ステップＳ１０２でＮｏ）、Version＿numberが１．０または２．０のプレイリスト（00002.mpls）の再生を再生制御部１０２に指示する。
【０１２４】
また、プレイリストと同様に、クリップ情報についても、ＮＡＣに対応しているものと対応していないものとが、再生装置の再生能力に応じて切り替えられる。
【０１２５】
＜再生制御部１０２＞
再生制御部１０２は、ＢＤ−ＲＯＭドライブ１０とシステムターゲットデコーダ３００とを制御して、ＡＶクリップの再生を制御する機能を持つ。例えば、プログラム実行部１０１から入力される再生命令に基づき、メモリ７０に格納されているプレイリスト情報を参照して、ＡＶクリップの再生処理を制御する。
【０１２６】
図１３は、再生制御部１０２によるプレイリスト再生手順を示すフローチャートである。
【０１２７】
本フローチャートは、カレントPL情報(.mpls)の読み込みを行い(ステップＳ２０１)、その後、ステップＳ２０２〜ステップＳ２１０の処理を実行するというものである。ここでステップＳ２０２〜ステップＳ２１０は、ステップＳ２０９がYesになるまで、カレントPL情報を構成するそれぞれのPI情報について、ステップＳ２０３〜ステップＳ２１０の処理を繰り返すというループ処理を構成している。このループ処理において処理対象となるPlayItemを、PlayItem#x(PI#x)とよぶ。このPlayItem#xは、カレントプレイリストの先頭のPlayItemに設定されることにより、初期化される(ステップＳ２０２)。上述したループ処理の終了要件は、このPlayItem#xがカレントプレイリストの最後のPlayItemになることであり(ステップＳ２０９)、もし最後のPlayItemでなければ、カレントプレイリストにおける次のPlayItemがPlayItem#xに設定される(ステップＳ２１０)。
【０１２８】
ループ処理において繰り返し実行されるステップＳ２０３〜ステップＳ２１０は、PlayItem#xのClip＿information＿file＿nameで指定されるClip情報をメモリに読み込み(ステップＳ２０３)、PlayItem#xのIn＿timeを、カレントClip情報のEPmapを用いて、Iピクチャアドレスuに変換し(ステップＳ２０４)、PlayItem#xのOut＿timeを、カレントClip情報のEP＿mapを用いて、Iピクチャアドレスvに変換して(ステップＳ２０５)、これらの変換で得られたアドレスvの次のIピクチャを求めて、そのアドレスの1つ手前をアドレスwに設定し(ステップＳ２０７)、そうして算出されたアドレスwを用いて、IピクチャアドレスuからアドレスwまでのTSパケットの読み出しをBD-ROMドライブ１に命じるというものである(ステップＳ２０８)。
【０１２９】
一方、ビデオデコーダ等に対しては、カレントPLMarkのmark＿time＿stampからPlayItem#xのOut＿timeまでの出力を命じる(ステップＳ２０６)。以上のステップＳ２０５〜ステップＳ２０８により、AVClipにおいて、PlayItem#xにより指示されている部分の再生がなされることになる。
【０１３０】
その後、PlayItem#xがカレントプレイリストの最後のPIであるかの判定がなされる(ステップＳ２０９)。
【０１３１】
PlayItem#xがカレントプレイリストの最後のPIでなければ、カレントプレイリストにおける次のPlayItemを、PlayItem#xに設定して(ステップＳ２１０)、ステップＳ２０３に戻る。以上のステップＳ２０３〜ステップＳ２１０を繰り返することにより、プレイリストを構成するPIは順次再生されることになる。
【０１３２】
＜Procedure実行部１０３＞
Procedure実行部１０３は、あるPlayItem情報から別のPlayItem情報への切り換わりが生じた場合、又はストリームナンバーを切り換える旨の操作がユーザによりなされた場合、所定のストリーム選択プロシージャを実行して、PSR1に新たなストリームナンバーを書き込む。再生装置１０００は、PSR1に書き込まれたストリームナンバーに応じて、Primaryオーディオストリームを再生するので、かかるPSR1の設定を通じて、Primaryオーディオストリームが選択されることになる。
【０１３３】
PlayItem情報の切り換わり時に、ストリーム選択プロシージャを実行するのは、ES＿TableがPlayItem情報毎に存在するので、あるPlayItem情報においては再生可能であったPrimaryオーディオストリームが、別のPlayItem情報において再生不可能になることが有り得るからである。
【０１３４】
このProcedure実行部１０３により、PSR1は、図１４（ａ）に示すような状態遷移をなす。図１４（ａ）は、PSR1の設定値が取り得る状態遷移を示す図である。本図においてValidとは、PSR1の値が、Play ItemのES＿tableに記述されたstream＿entry数以下の番号になっていて、尚且つ、デコード可能であることを意味する。
【０１３５】
Invalidとは、PSR1の値が、0であるか、又は、Play ItemのES＿tableに記述されたstream＿entry数を上回る番号になっているか、または、Play ItemのES＿tableに記述されたstream＿entry数が1〜32の値であったとしても、デコードできない場合である。
【０１３６】
図１４（ａ）における破線枠は、状態遷移時にあたってPSRの値を決定する手順を模式的に示す。PSRの設定処理手順には、『Procedure when playback condition is changed』と、『Procedure when Stream change is requested』とがある。
【０１３７】
Procedure when playback condition is changedは、何等かの事象が再生装置に生じたため、再生装置の状態が変化した際に実行すべき処理手順を示す。
【０１３８】
Procedure when Stream Change is requestedは、ユーザが何等かの切り換え(図１４（ａ）においてstream)を要求した際、実行すべき処理手順を示す。
【０１３９】
これら破線枠に示されるProcedure when playback condition is changed、Procedure when Stream change is requestedが、ストリーム選択プロシージャであり、後でフローチャートを交えて詳細に説明する。
【０１４０】
図１４（ａ）における矢印は、PSRが取り得る状態間の状態遷移を象徴的に示す。
【０１４１】
状態遷移を意味する矢印に添えられた注釈は、各状態遷移のトリガとなるべき事象を意味する。つまり本図では、”Load Disc”、”Change a Stream”、”Start PlayList playback”、”Cross a PlayItem boundary”、”Terminate PlayList playback”というような事象が発生した際、PSR1の状態遷移がなされることになる。これらの記法を理解して図１４（ａ）を参照すれば、Invalid→Invalidの状態遷移時、Valid→Invalidの状態遷移時には、上述した処理手順は実行されていないことがわかる。これに対しInvalid→Valid間の状態遷移、Valid→Valid間の状態遷移は何れも破線枠を経由している。つまりPSR1をValidに設定するにあたって、上述したProcedure when playback condition is changed、Procedure when Stream change is requestedによりPSR1は設定されるのである。
【０１４２】
以降、状態遷移のトリガとなるべき事象について説明する。
【０１４３】
『Load Disc』とは、再生装置にBD-ROMがローディングされたとの事象を意味する。PSR1は、かかるローディング時において、一旦不定値(0xFF)に設定されるのである。
【０１４４】
『Start PlayList playback』とは、PLに基づく再生処理が開始したとの事象を意味する。かかる事象が発生時において、Procedure when playback condition is changedが実行され、PSR1はValidに設定されることがわかる。
【０１４５】
『Terminate PlayList playback』とは、PLに基づく再生処理を終了したとの事象を意味する。かかる事象の発生時では、Procedure when playback condition is changedは実行されず、Invalidに移行していることがわかる。
【０１４６】
『ChangeXXX』とは、ユーザによるXXX(本図ではStream)の切り換え要求がなされたとの事象を意味する。PSR1がInvalidである場合に、かかる事象が発生すれば(図中のcj1)、PSR1はその要求通りの値に設定される。こうして設定された値がたとえ有効なストリームナンバーを示していたとしても、このPSR1の設定値はInvalidな値として取り扱われる。即ち、事象”ChangeXXX”による状態遷移では、InvalidであるPSRが、Validに変えることはない。
【０１４７】
一方、PSR1がValidである場合に、かかる事象Change a Streamが発生すれば(図中のcj2)、Procedure when Stream change is requestedが実行されて、新たな値がPSR1に設定される。ここでProcedure when Stream change is requestedの実行により設定される値は、ユーザが希望した値にならない場合も有り得る。何故なら、Procedure when Stream change is requestedは、無効な値を排除する機能を有しているからである。PSR1がValidにおいて、Change streamが発生した場合、ValidからInvalidに状態遷移することは有り得ない。PSR1がInvalidにならないよう、Procedure when Stream change is requested側で保証するからである。
【０１４８】
『Cross a PlayItem boundary』とは、あるPlay Itemの境界通過という事象を意味する。ここでPlay Itemの境界とは、連続する2つのPlay Itemのうち、先行する側の終端、後続する側の先端の狭間を意味する。PSR1がValidである場合において、かかる事象が発生すれば、Procedure when playback condition is changedが実行されることがわかる。そして、Procedure when playback condition is changedの実行後、PSR1の状態はValidに戻るか、Invalidに移行することが分かる。ES＿tableはPlay Item毎に存在しており、Play Itemが変われば、再生可能なエレメンタリストリームも変わってしまう。Play Itemの再生開始毎に、Procedure when playback condition is changeを実行してPlay Item毎に最適な設定値をPSR1に設定するというのが、この状態遷移の趣旨である。
【０１４９】
この状態遷移においてProcedure when playback condition is changedは、図１４（ｂ）のようになる。図１４（ｂ）は、Procedure when playback condition is changedの処理手順を示す図である。本処理手順は、ステップＳ３０１、ステップＳ３０２という2つの判定ステップの組合せで、PSR1の設定を行うものである。
【０１５０】
ステップＳ３０１は、ES＿tableにおけるstream＿entry数が0であるか否かの判定であり、もし0であればPSR1の値を維持する(ステップＳ３３０)。
【０１５１】
ステップＳ３０２は、ES＿tableにおけるstream＿entry数が0ではない場合に、PSR1よりES＿tableのstream＿entry数が多く、尚且つ、条件(A)が真であるかを判定するものである。条件(A)とは、PSR1で特定されるPrimaryオーディオストリームを再生する能力が再生装置に存在することである。PSR1よりES＿tableのstream＿entry数が多く、尚且つ、条件(A)が真であれば（ステップＳ３０２でＹｅｓ）、PSR1を維持する(ステップＳ３０４)。
【０１５２】
PSR1の値がstream＿entry数より大きいか、或は条件(A)を満たさない場合は（ステップＳ３０２でＮｏ）、PSR1を再設定する(ステップＳ３０５)。
【０１５３】
図１５は、PSR1の設定（ステップＳ３０５）の詳細な処理手順に示したフローチャートである。ステップＳ４０１、ステップＳ４０２は、全てのPrimaryオーディオストリームについてステップＳ４０３を繰り返すループ処理を形成している。このループ処理において、処理対象となる個々のPrimaryオーディオストリームを、Primaryオーディオストリームiという。ステップＳ４０４は、Primaryオーディオストリームiが、3つの条件(a)(b)(c)を満たすかのチェックを行う。
【０１５４】
条件(a)とは、Primaryオーディオストリームiを再生する能力が再生装置に存在することであり、これを満たすか否かの判定は、PSR15と、Primaryオーディオストリームiのcoding＿typeとの比較でなされる。
【０１５５】
条件(b)とは、Primaryオーディオストリームiの言語属性が再生装置の言語設定と同じであることであり、これを満たすか否かの判定は、ES＿tableに記述されたPrimaryオーディオストリームiのAudio＿language＿codeがPSR16の設定値と同じであるか否かの比較でなされる。
【０１５６】
条件(c)とは、Primaryオーディオストリームiのチャネル属性がサラウンドであり、これを再生する能力が再生装置に存在することである。これを満たすか否かの判定は、PSR15とPrimaryオーディオストリームiのpresentation＿type及びcoding＿typeとの比較でなされる。
【０１５７】
これらの複数の条件のうち、「Primaryオーディオストリームiがどれとどれを満たすか」、また「何個の条件を満たすか」という、満たすべき条件のパターンにより、本フローチャートでは、Primaryオーディオストリームに優先順位が付与される。
【０１５８】
以上の処理をPrimaryオーディオストリームの全てについて繰り返されれば、ステップＳ４０４〜ステップＳ４０８の処理が行われる。ステップＳ４０４は、条件(a)を満たすPrimaryオーディオストリームが存在しないかどうかの判定である。もし、条件(a)を満たすPrimaryオーディオストリームが存在しなければ（ステップＳ４０４でＮｏ）、不定値(0xFF)をPSR1に設定する(ステップＳ４０９)。
【０１５９】
ステップＳ４０５は、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在するかどうかの判定である。もし、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在すれば（ステップＳ４０５でＹｅｓ）、条件(a)(b)(c)を満たすPrimaryオーディオストリームの番号をPSR1に設定する(ステップＳ４１０)。
【０１６０】
ここで問題になるのが、条件(a)(b)(c)を満たすPrimaryオーディオストリームが複数存在する場合である。条件(a)〜条件(c)が全て満たされるので、同じ優先順位になってしまうので優劣を決めることができない。この場合ステップＳ４１０では、ES＿tableにおけるstream＿entryの順序に応じて、各ストリームにおける順位を定める。具体的には、コーデック属性−言語属性−チャネル属性が同じPrimaryオーディオストリームについては、再生装置は、ES＿tableにおけるstream＿entryの登録順序を参照し、最も登録が早いPrimaryオーディオストリームを選択する。
【０１６１】
ES＿tableにおける登録順序を変えることで、オーサリング担当者は再生時においてどのストリームを優先的に再生させ、どのストリームを後回しにするかという選択制御をオーサリング時に規定することができる。
【０１６２】
ステップＳ４０６は、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在しない場合、条件(a)(b)を満たすPrimaryオーディオストリームが存在するかどうかの判定である。もし、条件(a)(b)を満たすPrimaryオーディオストリームが存在すれば（ステップ４０６でＹｅｓ）、条件(a)(b)を満たすPrimaryオーディオストリームのうち、ES＿tableにおけるstream＿entryの登録順序が最も早いものをPSR1に設定する(ステップＳ４１１)。
【０１６３】
ステップＳ４０７では、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在せず、さらに、条件(a)(b)を満たすPrimaryオーディオストリームも存在しない場合に、条件(a)(c)を満たすPrimaryオーディオストリームが存在するかどうかを判定する。もし、条件(a)(c)を満たすPrimaryオーディオストリームが存在すれば（ステップ４０７でＹｅｓ）、条件(a)(c)を満たすPrimaryオーディオストリームのうち、ES＿tableにおけるstream＿entryの登録順序が最も早いものをPSR1に設定する(ステップＳ４１２)。
【０１６４】
ステップＳ４０８は、条件(a)(b)(c)の全て、条件(a)(b)、及び条件(a)(c)を満たすPrimaryオーディオストリームが存在しない場合に、条件(a)を満たすPrimaryオーディオストリームが存在するかどうかの判定である。もし、条件(a)を満たすPrimaryオーディオストリームが存在すれば（ステップ４０８でＹｅｓ）、条件(a)を満たすPrimaryオーディオストリームのうち、ES＿tableにおけるstream＿entryの登録順序が最も早いものをPSR1に設定する(ステップＳ４１３)。
【０１６５】
以上がProcedure when playback condition is changedである。続いてProcedure when Stream change is requestedについて説明する。図１６は、ストリーム変化時におけるPSR1の設定手順を示すフローチャートである。本フローチャートと、図１４（ｂ）との違いは、図１４（ｂ）におけるPSR1の表記がXに置き換えられている点である。このXは、操作受付部１１０から出力されたユーザイベント情報、あるいはIGデコーダ３０４から出力されたボタンコマンドに基づく値である。
【０１６６】
本フローチャートにおけるステップＳ５０１は、ES＿tableのstream＿entry数がＸ以上であり、尚且つ、条件(A)が真であるかを判定するものである。条件(A)とは、PSR1で特定されるPrimaryオーディオストリームを再生する能力が再生装置に存在することであり、PSR15と、Primaryオーディオストリームのcodeig＿typeとの比較で判定される。もしXがこの条件を満たすなら（ステップＳ５０１でＹｅｓ）、PSR1にXを設定する(ステップＳ５０２)。
【０１６７】
もしXがstream＿entry数より大きいか、或は条件(A)を満たさない場合は（ステップＳ５０１でＮｏ）、Xが、0xFFであるか否かを判定する（ステップＳ５０３）。
【０１６８】
XがOxFFでなければ（ステップＳ５０３でＮｏ）、ユーザが選択を意図するPrimaryオーディオストリームの番号は無効であると考えられるので、ユーザ操作に基づく値Xを無視し、PSR1の設定値を維持する(ステップＳ５０４)。
【０１６９】
もしXが0xFFであるなら（ステップＳ５０３でＹｅｓ）、PSR1を設定する(ステップＳ５０５)。このステップＳ５０５の処理手順は、図１５に示した処理手順と同一である(図１５のうち、ステップＳ４０４の判定はProcedure when Stream change is requestedでは必要ではない。何故ならProcedure when Stream change is requestedでは、条件(a)(b)(c)を満たすPrimaryオーディオストリームが1つも存在しない場合、ユーザが設定した値XをPSR1に設定せず、PSR1の設定値を維持するからである。)。
【０１７０】
＜NACに対応するオーディオストリームの選択方法＞
続いて、NACに対応するオーディオストリームを選択する方法について説明する。JARファイル（00001.jar）で定義されるBD-Jアプリケーションは、プレイリストが再生される際に実行されるべきプログラムであり、再生すべきオーディオストリームとして、ＮＡＣストリームを選択する操作をユーザから受け付けるためのメニューを再生装置に表示させて、NACオーディオストリーム設定機能を再生装置に実行させる。NACオーディオストリーム設定機能は、メニューに対する選択操作がユーザによってなされた場合、ＮＡＣストリームのストリームナンバーをPSR１に設定する機能である。
【０１７１】
図１７は、メニュー画面の一例を示す図である。ＮＡＣストリームを選択する操作をユーザから受け付けた場合、すなわち、「YES」ボタンが選択された場合には、PSR１にＮＡＣストリームのストリームナンバーを設定する。
【０１７２】
なお、NACオーディオストリーム設定機能と同様の内容であるNACオーディオストリーム設定コマンドを、ボタン情報のナビゲーションコマンドとしてボタン情報に組み込んでおけば、Interactive Graphicsストリームによって描画されたＮＡＣオーディオストリーム設定ボタンの確定操作に応じて、NACオーディオストリーム設定コマンドを再生装置に実行させることができる。したがって、HDMVモードにおいても、NACオーディオストリーム設定機能を実現することができる。
３．既存の再生装置によるオーディオストリーム選択の具体例
続いて、ＮＡＣに対応していない既存の再生装置が、ＢＤ−ＲＯＭに記憶されている、NACストリームを含む複数のオーディオストリームから、どのように再生すべきオーディオストリームを選択するのかを具定例を用いて説明する。ただし、この再生装置は、ＮＡＣストリームをデコードできると誤って判断してしまうものとする。
【０１７３】
図１８（ａ）は、再生装置のPlayer Capability、言語設定、及びSurround Capabilityを示す。図１８（ａ）に示すように、既存の再生装置は、ＮＡＣストリームをデコードする能力は持っていないが、LPCMのデコード能力や、AC-3サラウンド音声の出力能力は具備しており、日本語音声を示すように言語設定がなされているものとする。
【０１７４】
かかる再生装置に対し、図１８（ｂ）に示すES＿tableが記録されたBD-ROMがローディングされたとする。このES＿tableには、図１８（ｃ）に示すように6つのオーディオストリームのstream＿entry-stream＿attributesが記述されている。
【０１７５】
まず、再生装置では、図１８（ｂ）に示すES＿tableに基づいて、各オーディオストリームが、条件(a)、条件(b)、及び条件(c)を具備しているかどうかのチェックがなされる。ここで1つ目のAudio stream1は、3つの条件のうち、条件(a)しか満たさない。2つ目のAudio stream2は、3つの条件のうち、条件(a)、条件(c)を満たす。３つ目のAudio stream3は、条件(c)を満たすだけであり、条件(a)を満たさないので、通常は選択対象にならない。ただし、ここでは既存の再生装置が、ＮＡＣストリームをデコードできると誤って判断してしまうという前提であるので、３つ目のAudio stream3については、条件(a)、条件(c)を満たすものと判定され、Audio stream3も選択対象となり得る。４つ目のAudio stream4については、条件(a)、条件(ｂ)を満たす。５つ目のAudio stream5については、条件(a)、条件(ｂ)、条件(c)を満たす。６つ目のAudio stream6については、条件(ｂ)、条件(c)を満たす。さらに、上述のように、既存の再生装置は、ＮＡＣストリームをデコードできると誤って判断してしまうという前提であるので、６つ目のAudio stream６については、条件(a)、条件(ｂ)、条件(c)を満たすものと判定される。
【０１７６】
各オーディオストリームについての条件具備が明らかになったので、条件(a)〜条件(c)の全てを満たす5つ目及び６つ目のオーディオストリームに最高順位が付与される。最高順位が付与されたオーディオストリームが複数存在する場合には、先に登録されたオーディオストリームが選択されるので、ここでは、Audio stream5が選択される。
【０１７７】
このように、たとえ既存の再生装置が、ＮＡＣストリームをデコードできると誤って判断してしまったとしても、当該オーディオストリームを選択することはない。
【０１７８】
以上のように本実施の形態によれば、ＮＡＣに対応しているクリップ情報及びＡＶデータと、ＮＡＣに対応していないクリップ情報及びＡＶデータとをＢＤ−ＲＯＭ１に記録しておき、再生装置の再生能力に応じて、プレイリスト情報、クリップ情報、及びＡＶデータを選択することで、ＮＡＣに対応している再生機器では、ＮＡＣに対応したプレイリスト及びクリップ情報を用いてＮＡＣを含むＡＶデータが再生され、ＮＡＣに対応していない再生機器では、ＮＡＣを含まないプレイリスト及びクリップ情報を用いて、ＮＡＣを含まないＡＶデータが再生される。したがって、ＮＡＣストリームがＡＶデータに含まれることによる、ＮＡＣに対応していない再生装置での再生不具合を回避することができる。
【０１７９】
また、ＮＡＣに対応していない既存の再生装置が、ＮＡＣに対応したプレイリストを誤って再生してしまった場合であって、再生すべきオーディオストリームを選択する際、ＮＡＣを、条件Ａを満たすものと誤って判定し、ＮＡＣストリームの優先順位が最も高くなったとしても、再生すべきオーディオストリームとしてＮＡＣストリームを選択することはない。
【０１８０】
ＮＡＣストリームの直前に登録されている既存符号化ストリームも、言語コード及びチャネル数がＮＡＣストリームと等しく、かつ、既存符号化ストリームは、既存の再生装置でデコードすることが可能であるため、ＮＡＣストリームと同様に優先順位が最も高くなり、この場合には、先に登録されたストリームナンバーに対応するオーディオストリーム、すなわち、既存符号化ストリームが選択されるからである。
【０１８１】
また、言語属性として、audio＿language＿codeに登録されている言語が、例えば中国語である場合、audio＿language＿codeとして、ISO 639-2/Tには中国語として1種類しか定義されていないが、実際の中国語には北京語、広東語、上海語、福建語、台湾語などの種類がある。したがって、例えば、ＮＡＣで符号化された、広東語、上海語、及び福建語の3種類の中国語オーディオストリームを１つのＡＶストリームに入れる場合、audio＿language＿codeとしては「中国語」として同じ値が設定されるため、audio＿language＿codeに基づいて各々を区別することができない。
【０１８２】
本実施の形態によれば、ES＿tableにおいて、ＮＡＣストリームに対して、必ずペアになるように、既存符号化ストリームが登録されているので、どのＮＡＣオーディオストリームが、どの既存オーディオストリームと対応しているのかが容易に判別できる。
【０１８３】
また、Ｓ／ＰＤＩＦやＨＤＭＩ等のインタフェース規格が、ＮＡＣに対応していない場合には、再生装置は、ＮＡＣストリームを外部装置にパススルー出力することができない。したがって、ＮＡＣストリームをデジタル形式で出力するには、当該オーディオストリームをデコードした後、既存のインタフェース規格で伝送可能な形式（例えば、2ｃｈのＬＰＣＭ等）に変換して出力する必要がある。つまり、ＮＡＣストリームのチャネル数が、例えば、５．１ｃｈであったとしても、Ｓ／ＰＤＩＦによるデジタル出力においては、２ｃｈのＬＰＣＭしか出力できないことになる。
【０１８４】
本実施の形態によれば、ＮＡＣストリームのストリームエントリーと、当該ストリームエントリーの直前に登録されている、既存の符号化形式により符号化されているオーディオストリームのストリームエントリーの優先順位が等しい場合には、既存の符号化形式により符号化されているオーディオストリームが選択されるので、インタフェース規格が、ＮＡＣに対応していない場合であっても、５．１ｃｈ等の音声再生を実現することができる。
（変形例）
ＢＤ−ＲＯＭ１は、ＮＡＣストリームが多重化されたデジタルストリームを格納しているファイル（00001.m2ts）と、ＮＡＣストリームが多重化されていないデジタルストリームを格納しているファイル（00002.m2ts）とを記録している。
【０１８５】
しかしながら、ファイル（00001.m2ts）及びファイル（00002.m2ts）において、記憶しているデジタルストリームにＮＡＣストリームが多重化されているか否か以外に差がない場合、すなわち、ＮＡＣストリーム以外のオーディオストリームやビデオストリーム等が同一である場合には、ファイル（00001.m2ts）及びファイル（00002.m2ts）の両方を記録することで、ＢＤ−ＲＯＭ１に記録すべきＡＶデータのサイズを不必要に大きくしてしまう。これを解決するために、以下、Ｖｉｒｔｕａｌ  Ｐａｃｋａｇｅ機能を用いた変形例について説明する。
【０１８６】
バーチャルパッケージとは、ＢＤ−ＲＯＭの記録内容に、再生装置１０００内のローカルストレージ（例えば、ＨＤＤ）の記録内容を組み合わせて、ＢＤ−ＲＯＭ１に記録されていないデータを、あたかも記録されているように扱う技術である。
【０１８７】
図１９は、ＢＤ−ＲＯＭ１ａ及びＨＤＤ１ｂのデータ構造を示す図である。
【０１８８】
ＢＤ−ＲＯＭ１とＢＤ−ＲＯＭ１ａとの差異は、ファイル名が“00002”のファイルが格納されているか否かである。ＢＤ−ＲＯＭ１ａにおいては、ＢＤＭＶディレクトリ直下の各ディレクトリには、ファイル名が“00001”のファイルが格納されている。また、ファイル（00001.m2ts）に格納されているデジタルストリームは、ＮＡＣストリームを含んでおり、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））は、ファイル（00001.m2ts）に対応したファイルであり、ＮＡＣストリームに関する情報を含むファイルである。
【０１８９】
一方、ＨＤＤ１ｂにおいて、ＲＯＯＴディレクトリの配下には、「organization」というサブディレクトリがあり、その配下に「disc#1」というサブディレクトリがある。「organization」ディレクトリとは、映画作品の特定のプロバイダに割り当てられたディレクトリである。「disc#1」ディレクトリは、プロバイダが提供したＢＤ−ＲＯＭのそれぞれに割り当てられたディレクトリである。
【０１９０】
「disc#1」には、ファイル（00001.m2ts）に対応したファイルであり、ＮＡＣストリームに関する情報を含まないファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））、並びにマージ管理情報を格納しているマージ管理情報ファイルが格納されている。
【０１９１】
マージ管理情報は、ＨＤＤ１ｂのdisc#1ディレクトリに存在するファイルのうち、Virtual Packageを構成するものを一意に示しておく情報である。マージ管理情報ファイルは、Virtual Packageを構成するＨＤＤ１ｂ上の各ファイルの格納位置情報からなる。各格納位置情報は、Virtual Package として各ファイルにアクセスするための“識別子”と、ＨＤＤ１ｂにおけるそのファイルの格納位置を示す“ファイルパス”とからなる。
【０１９２】
どのようにして、ＮＡＣに対応しているファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））とＮＡＣに対応していないファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））とを動的に切り替えるのかを説明する。
【０１９３】
インデックステーブルには、ディスクが再生装置に挿入された際に最初に起動されるＦＩＲＳＴ  ＰＬＡＹＢＡＣＫ ＴＩＴＬＥと呼ばれる特殊なタイトルが存在する。
【０１９４】
ＦＩＲＳＴ  ＰＬＡＹＢＡＣＫ ＴＩＴＬＥが呼び出すBD-Jアプリケーション（不図示）が、例えば、PSR15のPlayer capabilityにおいてＮＡＣストリームをデコード可能か否かを示すフィールド値に基づいて、再生装置が、ＮＡＣストリームをデコード可能か否か判定する。
【０１９５】
ＮＡＣストリームをデコード可能であると判定すれば、ＢＤ−ＲＯＭ上に記録されているファイル（00001.m2ts）、ファイル（00001.mpls（with NAC））、及びファイル（00001.clip（with NAC））等を用いて再生を開始する。
【０１９６】
ＮＡＣストリームをデコードできないと判定すれば、BD-Jアプリケーションは、マージ管理情報に基づいて、Virtual Packageを構築する。ここで、ファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））と、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））とは、ファイル名が同一であるため、Virtual Package としてファイル（00001.mpls（without NAC））にアクセスするための“識別子”に示されるディレクトリと、ファイル（00001.mpls（with NAC））のディレクトリとが同一であれば、ファイル（00001.mpls（without NAC））がファイル（00001.mpls（without NAC））に置き換えられる。ファイル（00001.clip（without NAC））及びファイル（00001.clip（with NAC））についても同様である。
【０１９７】
このように、BD-Jアプリケーションは、再生装置がNACに対応していなければ、Virtual Packageを構築することで、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））を、ファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））に置き換えた上で再生を開始する。
【０１９８】
ＮＡＣストリームをデコード可能である再生機器では、ＮＡＣに対応したプレイリストやクリップ情報を用いて再生を行い、ＮＡＣストリームをデコードできない再生装置では、再生開始前に、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））を、ファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））に置き換えることによって、BD-ROM１ａがＮＡＣに関する情報を含まないプレイリストやクリップ情報を有していなくても、当該プレイリストや当該クリップ情報を用いて再生を行うことが可能となる。
【０１９９】
したがって、ＢＤ−ＲＯＭ１ａに記録するAVデータ量を削減しつつ、ＮＡＣに対応していない再生装置で、ＮＡＣストリームを含むＡＶデータを記録しているＢＤ−ＲＯＭ１ａを再生する際の互換性問題を回避することができる。
【０２００】
なお、ローカルストレージとしてＨＤＤ１ｂを例に挙げて説明したが、ＨＤＤ１ｂに限らず、例えば、ＢＤ−ＲＯＭ１ａのＢＤＭＶディレクトリ以外のディレクトリをローカルストレージとしてもよい。
【０２０１】
また、Ｖｉｒｔｕａｌ  Ｐａｃｋａｇｅを構築するためのBD-JアプリケーションをＦｉｒｓｔ  Ｐｌａｙｂａｃｋ  Ｔｉｔｌｅから実行したが、これに限定されるものではなく、Ｆｉｒｓｔ  Ｐｌａｙｂａｃｋ  Ｔｉｔｌｅ以外のタイトルから実行し、Ｖｉｒｔｕａｌ  Ｐａｃｋａｇｅを構築してもよい。
（実施の形態２）
続いて、デジタルストリームがSecondaryオーディオストリームを含む場合について説明する。図２０は、本実施の形態において、ＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
【０２０２】
本図に示すように、ＡＶクリップには、0x1011のPIDをもつ高画質ビデオストリーム、0x1100から0x110FまでのPIDをもつPrimaryオーディオストリーム、0x1110から0x111FまでのPIDをもつSecondaryオーディオストリーム、0x1200から0x121FまでのPIDをもつPGストリーム、及び0x1400から0x141FまでのPIDをもつIGストリームが多重化されている。
【０２０３】
続いて、本実施の形態における『ES＿table』の詳細について説明する。
【０２０４】
図２１は、ES＿tableの内部構成を示す図である。基本的には、図５で示したES＿tableと同一である。異なる点は、stream＿entry-stream＿attributes毎にComb＿info＿Sequence＿audio＿Primary＿audioを含む点である。
【０２０５】
図２２（ａ）は、Comb＿info＿Secondary＿audio＿Primary＿audioの内部構成を示す図である。Comb＿info＿Secondary＿audio＿Primary＿audioは、組合せ可能なPrimaryオーディオストリームの総数を示すnumber＿of＿primary＿audio＿stream＿ref＿entriesと、再生時に組合せることができるPrimaryオーディオストリームのストリームナンバーを示すPrimary＿audio＿stream＿id＿ref[0]〜[n]とからなる。
【０２０６】
このように再生可能なSecondaryオーディオストリーム毎に設定されるComb＿info＿Secondary＿audio＿Primary＿audioは、そのSecondaryオーディオストリームの再生出力をミキシングすることができる1つ以上のPrimaryオーディオストリームを一意に指定する。これにより、所定の属性を有しているようなPrimaryオーディオストリームの再生時においては、Secondaryオーディオストリームをミキシングさせず、それ以外の属性を有しているようなPrimaryオーディオストリームの再生時においてのみ、Secondaryオーディオストリームをミキシングするというような、音声属性に応じた、ミキシングの可否を、オーサリング時に設定しておくことができる。
【０２０７】
ここで、問題となるのは、Primary＿audio＿stream＿id＿refの登録順序である。最初に登録するPrimary＿audio＿stream＿id＿refは、既存符号化ストリームのストリームナンバーを示すPrimary＿audio＿stream＿id＿refとする。ＮＡＣストリームのストリームナンバーが最初に登録されていると、Secondaryオーディオストリームの再生出力のミキシング対象として、ＮＡＣストリームが選択されてしまうからである。
【０２０８】
図２２（ｂ）は、Comb＿info＿Secondary＿audio＿Primary＿audioの一例を示す図である。図２１に示すように、ＡＣ３で符号化されているストリームナンバー00000001のオーディオストリームが、最初に登録されており、その後、ＮＡＣで符号化されているストリームナンバー00000010のオーディオストリームが登録されている。
（実施の形態３）
本実施の形態では、本発明にかかる記録装置および記録方法を実施するための形態について説明する。
【０２０９】
記録装置は、映画コンテンツの頒布のために制作スタジオに設置され、ＭＰＥＧ規格に従い圧縮符号化されたデジタルストリーム及びどのように映画タイトルを再生するかを記したシナリオを生成し、これらのデータを含むＢＤ−ＲＯＭ向けのボリュームイメージを生成する。記録装置は、実施の形態１または２で説明した記録媒体を生成する。
【０２１０】
図２３は、記録装置３０００の内部構成を示すブロック図である。本図に示すように、記録装置３０００は、ビデオエンコーダ３００１、素材制作部３００２、シナリオ生成部３００３、ＢＤプログラム制作部３００４、多重化処理部３００５、及びフォーマット処理部３００６を含んで構成される。
【０２１１】
ビデオエンコーダ３００１は、映像の非圧縮のビットマップなどの画像イメージを、ＭＰＥＧ４−ＡＶＣやＭＰＥＧ２などの圧縮方式に従い符号化し、ビデオストリームを作成する。
【０２１２】
素材制作部３００２は、オーディオストリーム、プレゼンテーショングラフィックスストリーム、及びインタラクティブグラフィックストリーム等の各ストリームを作成する。より詳細には、非圧縮のＬｉｎｅａｒＰＣＭ音声等を、ＡＣ３、ＤＴＳ、ＮＡＣ等の符号化方式に従い符号化することでオーディオストリームを作成する。
【０２１３】
ＮＡＣストリームを作成する場合には、当該ＮＡＣストリームと同一の音源からエンコードした既存符号化ストリームも併せて作成する。その際、ＮＡＣストリームと既存符号化ストリームとの言語、チャネル数を同一にしておく。
【０２１４】
また、字幕イメージ、表示タイミング、及びフェードイン／フェードアウト等の字幕の効果を含む字幕情報ファイルを基にして、ＢＤ−ＲＯＭ規格に準拠した字幕ストリームのフォーマットであるプレゼンテーショングラフィックスストリームを作成する。
【０２１５】
さらに、メニューに使うビットマップイメージと、メニューに配置されるボタンの遷移や表示効果を記載したメニューファイルとを基にして、ＢＤ−ＲＯＭ規格に準拠したメニュー画面のフォーマットであるインタラクティブグラフィックスストリームを作成する。
【０２１６】
シナリオ生成部３００３は、素材制作部３００２で作成した各ストリームの情報やユーザ操作にしたがって、ＢＤ−ＲＯＭ規格に準拠したフォーマットでシナリオを作成する。ここで言うシナリオは、インデックスファイル、ムービーオブジェクトファイル、及びプレイリストファイル等のファイルである。
【０２１７】
ここで、ES＿tableのstream＿attributes()のシンタックスについて説明する。図２４は、stream＿attributes()のシンタックスを示す図である。このシンタックスに基づいて図７で示した各stream＿attributes()は生成される。stream＿attributesのcoding＿typeは、各エレメンタリストリームがどのようなエレメンタリストリームであるか、つまりビデオストリームであればＭＰＥＧ４−ＡＶＣ、ＭＰＥＧ２、ＶＣ１のいずれの方式で圧縮されているか、オーディオストリームであれば、ＡＣ３、ＤＴＳ、ＬＰＣＭ、及びＮＡＣのどの方式で圧縮されているかを示している。
【０２１８】
coding＿typeがＭＰＥＧ４−ＡＶＣ、ＭＰＥＧ２、ＶＣ１の何れかであれば、coding＿typeに続くフィールドとして、video＿format及びframe＿rateを持つ。
【０２１９】
coding＿typeがＡＣ３、ＤＴＳ、ＬＰＣＭ、及びＮＡＣの何れかであれば、coding＿typeに続くフィールドとして、presentation＿type、sampling＿frequency、audio＿language＿codeを持つ。
【０２２０】
このシンタックスでは、ＮＡＣが新たに定義されている。したがって、NACに対応した再生装置では、ＮＡＣに続くフィールドを適宜読み取ってNACストリームを再生することができる。
【０２２１】
しかしながら、このフィールド構成において、既に定義されているcoding＿typeであれば、coding＿typeに応じて続くフィールドを適宜読み取って再生が可能であるが、例えば、今回定義したＮＡＣ以外に別のＮＡＣ（以下、「未定義ＮＡＣ」という）が今後さらに追加された場合、フィールドの構成上は、coding＿typeとして未定義ＮＡＣを登録すればよいが、未定義ＮＡＣを認識しない再生装置では、coding＿typeとして未定義ＮＡＣが記述されている場合、stream＿attributesのこれ以上の解析が困難になるという問題がある。
【０２２２】
そこで、図２４に示すように、未定義ＮＡＣが設定されている場合には、paddingとしてフィールドを解釈できるようにしている。つまり未定義ＮＡＣに対応していない再生装置ではcoding＿typeとして未定義ＮＡＣが設定されている場合、不明なcoding＿typeとして扱われるため、stream＿attributes＿lengthで記載されているフィールド長にしたがって、paddingデータとして読み取る。
【０２２３】
このように、今後、新規のビデオ圧縮技術やオーディオ圧縮技術が登場した際には、paddingフィールドを設定しておくことで、再生装置が未知のcoding＿typeを見つけた際にstream＿attributesの解析を停止することを防ぐことができる。
【０２２４】
また、ES＿tableを生成する際、既存符号化ストリームのstream＿entryをES＿tableに登録した直後に、既存符号化ストリームと同一の音源からエンコードされたＮＡＣストリームのstream＿entryを登録する。ＮＡＣストリームの言語コード及びチャネル数と、既存符号化ストリームの言語コード及びチャネル数とは同一に設定される。
【０２２５】
図２３に戻って、シナリオ生成部３００３は、多重化処理を実現するための、各ＡＶクリップがどのストリームから構成されるかを記述したパラメータファイルを作成する。ここで、作成されるインデックスファイル、ムービーオブジェクトファイル、及びプレイリストファイル等のファイルは、実施の形態１または２で説明したデータ構造となる。
【０２２６】
ＢＤプログラム制作部３００４は、ＢＤプログラムをプログラミングする。具体的には、ＧＵＩ等のユーザインタフェースを通じて、ユーザからの要求に従って、ＢＤプログラムのソースコードを作成することでＢＤプログラムを作成する。ここで、作成されるＢＤプログラムは、例えば、NACオーディオストリーム設定機能を実現するＢＤプログラム等、実施の形態１で説明したプログラムである。
【０２２７】
多重化処理部３００５は、ＢＤ−ＲＯＭシナリオデータに記述されているビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、及びインタラクティブグラフィックスストリーム等の複数のストリームを多重化して、ＭＰＥＧ２−ＴＳ形式のＡＶクリップを作成する。
【０２２８】
また、ＡＶクリップの作成の際、ＡＶクリップと対になるクリップ情報ファイルも同時に作成する。クリップ情報ファイルの構成は、実施の形態１で説明したデータ構造となる。
【０２２９】
ここで、stream＿code＿inf()のシンタックスについて説明する。図２５は、stream＿code＿inf()のシンタックスを示す図である。このシンタックスに基づいてstream＿code＿inf()は生成される。stream＿code＿info()は、stream＿code＿info()のフィールド長を示すstream＿code＿info＿length、登録されるエレメンタリストリームの種類を示すcoding＿type、及び各coding＿typeに応じた属性情報を登録するフィールドから構成される。
【０２３０】
ここでも、stream＿attributes()のシンタックスと同様に、ＮＡＣを新たに定義し、未定義ＮＡＣが追加された場合には、paddingとしてフィールドを解釈できるようにしている。
【０２３１】
図２３に戻って、フォーマット処理部３００６は、シナリオ生成部３００３で生成したＢＤ−ＲＯＭシナリオデータと、ＢＤプログラム制作部３００４で制作したＢＤプログラムを格納したＢＤプログラムファイルと、多重化処理部３００５で生成したＡＶクリップやクリップ情報ファイルとを、ＢＤ−ＲＯＭ規格に準拠したフォーマットで配置し、ＢＤ−ＲＯＭ規格に準拠したファイルシステムであるＵＤＦのフォーマットでディスクイメージを作成する。生成したディスクイメージをＢＤ−ＲＯＭプレス用データに変換し、このデータに対してプレス工程を行うことで、ＢＤ−ＲＯＭの製造が可能となる。
＜補足＞
以上、本発明に係る記録媒体について、実施の形態に基づいて説明したが、本発明は上記実施の形態に限られないことは勿論である。
（１）ここでは、ＮＡＣがＤＲＡである場合において、ＤＲＡの演算量を減少する方法について説明する。ＤＲＡは、中国で規格化が進められてきたオーディオ圧縮方式の１つであり、中国においてはヘッドフォンステレオやカラオケ機器などの一部の製品での導入が予定されている。
【０２３２】
すでに規格に含まれているオーディオコーデックに新たにＤＲＡを追加するに当たっては、ＡＣ３やＤＴＳと比較して、演算量をそれらと同等以下に抑えることが望ましい。
【０２３３】
ＤＲＡの演算量算出方法に関して具体的に説明する。ＤＲＡの演算量は、(Fs x Ch x nCtr)で示される値が大きいほど増加する。ここで、Ｆｓは、オーディオ信号のサンプリング周波数であり、Ｃｈは、オーディオ信号のチャンネル数であり、nCtrは、例外処理回数である。
【０２３４】
nCtrに関して詳細を説明する。ＤＲＡにおいては、様々なフィールドはハフマン符号を用いることでデータ量の圧縮が図られている。図２６は、ハフマン符号化された値(H)とフィールド値との対応を示すテーブルの一例を示す。図２６に示すように、圧縮すべき対象フィールド（X）がアルファベットＡからＺであるとすると、ＡからＤまではハフマン符号化された値(H)がそれぞれ0b、01b、0010b、0011bと定義され、ＡからＤ以外のアルファベットに関しては、00000bとしてまとめて定義されている。つまり、あるフィールドがＡからＤまでの値を持つ時には、1対1で対応するハフマン符号が存在するが、それ以外の場合は、ハフマン符号として00000bで例外として定義している。
【０２３５】
ＤＲＡを含む多くの圧縮方式においては、Xとして出現確率が高い値に対しては、1対1でハフマン符号が割り当てられているが、出現確率が低い値（今回の例ではＥからＺのアルファベット）に対しては、別処理（例外処理）でＸの値を算出することが多い。
【０２３６】
図２７は、デコード手順を示す図である。ハフマン符号の値（H）を図２６のテーブルに従ってデコードし（HuffDec）、Valueを得る（ステップＳ７０１）。次に、Valueが例外となる値（Other Alphabet）かどうかを判定し（ステップＳ７０２）、例外でない値であると判定すれば（ステップＳ７０２でＮｏ）、ハフマンデコードの結果得られた値Valueが、Xとなる(ステップＳ７０３)。
【０２３７】
例外となる値であると判定すれば（ステップＳ７０２でＹｅｓ）、例外処理を実行することでＸを算出する（ステップＳ７０４）。
【０２３８】
演算量を考える上で重要なのは、ハフマンデコードで通常処理される値、つまり今回の例においては、Filed Value(X)がAからDである場合には、図２６で示されるテーブルを参照して、比較的少ない処理量でXの値を得ることができるのに対して、Filed Value(X)が例外的な値、つまりOther Alphabet(ハフマン符号化された値が00000b)である場合には、例外処理が発生し、通常、この例外処理に要する演算量は、テーブルを用いた処理量より大きい。つまり、nCtrで示される例外処理の回数を制限することが、ＤＲＡの演算量を制限するためには望ましい。したがって、ＤＲＡの演算量を一定以下にするために、nCtr の値を一定以下になるよう設定するか、あるいはCh数やサンプリング周波数に依存する処理量の増加も鑑みて、(Fs x Ch x nCtr)の値を一定以下になるよう設定することが望ましい。
（２）続いて、ＤＲＡを導入した際に、ＢＤ−ＲＯＭ規格で規定されているシームレス接続点において生じる課題と解決策について説明する。
【０２３９】
図２８は、ＢＤ−ＲＯＭ規格で、２つのＡＶデータを連続して再生する（シームレスに再生する）際の、Ｖｉｄｅｏアクセスユニットと、Ａｕｄｉｏアクセスユニットとの関係を示した図である。図２８において、ＴＳ１はシームレスに接続される2本のＡＶデータの1本目のＡＶデータ、ＴＳ２は1本目のＡＶデータに引き続いてシームレス再生される2本目のＡＶデータであり、Ｖｉｄｅｏの表示順、つまりＰＴＳ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ  Ｓｔａｍｐ）の順にアクセスユニットを並べている。例えば、２４Ｐのビデオであれば、１つのアクセスユニットは１／２４秒を示している。これに対して、Ａｕｄｉｏのアクセスユニットは、１つのアクセスユニットにおける時間間隔がＶｉｄｅｏと異なるため、Ｖｉｄｅｏの接続点（Ｃｏｎｎｅｃｔｉｏｎ  ｐｏｉｎｔ）を跨ぐようにアクセスユニットが配置される。
【０２４０】
ここで、ＢＤ−ＲＯＭ規格においては、Ｃｏｎｎｅｃｔｉｏｎ  ｐｏｉｎｔにおいて、ＴＳ１のオーディオのアクセスユニットと、ＴＳ２のオーディオのアクセスユニットが、時間軸上で重なることが許されている（ Ａｕｄｉｏ  ｏｖｅｒｌａｐ）。
【０２４１】
しかしながら、この接続点では、再生装置の実装によっては、例えば、ＴＳ１の最後のＡｕｄｉｏのアクセスユニットと、ＴＳ２の最初のアクセスユニットとを同時にデコードする必要が生じ、接続点における処理量が増加する可能性がある。
【０２４２】
ＤＲＡにおいて、その演算量は、(Fs x Ch x nCts)で算出されるが、Ｃｏｎｎｅｃｔｉｏｎ  ｐｏｉｎｔにおける演算量の増大を回避するために、nCtr の値か、あるいは(Fs x Ch x nCtr)を規定値以下に設定することが望ましい。例えば、シームレス地点でオーディオアクセスユニットのTS1及びTS2がオーバーラップしている部分においては、オーバーラップしていない部分でのnCtr、あるいは(Fs x Ch x nCts)の半分になるよう設定する。また、TS1のオーバーラップしているオーディオアクセスユニットのnCtr、あるいは(Fs x Ch x nCts)の値と、TS2でオーバーラップしているオーディオアクセスユニットのnCtr、あるいは(Fs x Ch x nCts)の合計が一定値以下になるよう設定してもよい。
（３）上記実施の形態では、再生装置１０００におけるＰＳＲ１５のPlayer capabilityにNAC Capabilityとして、DRAが再生可能かどうかを示すフィールドDRA Capabilityを新たに定義したが、これに限定されず、NAC Capabilityは、ＮＡＣに関する再生可能／不可能に関するものであればよい。例えば、ＮＡＣとして４８ｋＨｚと９６ｋＨｚとが存在する場合、それぞれの周波数に対して再生可能かどうかを示すものであってもよいし、２ｃｈの再生だけに対応しているのか、あるいはマルチｃｈの再生に対応しているのかを示すものであってもよい。
（４）上記実施の形態では、ES＿tableにおいて、ＮＡＣストリームと対応する既存符号化ストリームとがペアになって登録されていたが、ＮＡＣの種類が複数ある場合には、ペアを構成する第一のＮＡＣで符号化された第一ＮＡＣストリームの直後に、第二のＮＡＣで符号化された第二ＮＡＣストリームを登録するとしてもよい。第一のＮＡＣストリーム及び第二のＮＡＣストリームは、同一の音源からエンコードされ、言語コード及びチャネル数も同一であることが望ましい。
【０２４３】
上記実施の形態及び上記補足をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【０２４４】
本発明は、ＮＡＣで符号化されたオーディオストリームが記録されている記録媒体に広く適用可能である。
【符号の説明】
【０２４５】
１      BD-ROM
１０    ＢＤ‐ＲＯＭドライブ
２０    リードバッファ
３００  システムターゲットデコーダ
３０１  デマルチプレクサ
３０２  ＡＴＣ生成部
３０３  ＳＴＣ生成部
３０４  インタラクティブグラフィックスプレーンデコーダ
３０５  インタラクティブグラフィックスプレーン
３０６  プレゼンテーショングラフィックスデコーダ
３０７  プレゼンテーショングラフィックスプレーン
３０８  ビデオデコーダ
３０９  ビデオプレーン
３１０  JPEGデコーダ
３１１  Stillプレーン
３１２  スイッチ
３１３  オーディオデコーダ
４０    プレーン加算部
５０    エンコーダ
６０    Ｄ／Ａコンバータ
７０    メモリ
８０    ＰＩＤ変換部
９０    ＰＳＲセット
１００  コントローラ
１０１  プログラム実行部
１０２  再生制御部
１０３  Procedure実行部
１０４  ATC/STC制御部
１１０  操作受付部
１２０  HDMI送受信部
【図１】
2009128246.tif 000003
【図２】
2009128246.tif 000004
【図３】
2009128246.tif 000005
【図４】
2009128246.tif 000006
【図５】
2009128246.tif 000007
【図６】
2009128246.tif 000008
【図７】
2009128246.tif 000009
【図８】
2009128246.tif 000010
【図９】
2009128246.tif 000011
【図１０】
2009128246.tif 000012
【図１１】
2009128246.tif 000013
【図１２】
2009128246.tif 000014
【図１３】
2009128246.tif 000015
【図１４】
2009128246.tif 000016
【図１５】
2009128246.tif 000017
【図１６】
2009128246.tif 000018
【図１７】
2009128246.tif 000019
【図１８】
2009128246.tif 000020
【図１９】
2009128246.tif 000021
【図２０】
2009128246.tif 000022
【図２１】
2009128246.tif 000023
【図２２】
2009128246.tif 000024
【図２３】
2009128246.tif 000025
【図２４】
2009128246.tif 000026
【図２５】
2009128246.tif 000027
【図２６】
2009128246.tif 000028
【図２７】
2009128246.tif 000029
【図２８】
2009128246.tif 000030
【手続補正書】
【提出日】平成22年9月28日(2010.9.28)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、次世代ＤＶＤ規格に準拠した記録媒体に関し、特に、ビデオストリームの所定区間において再生可能なオーディオストリームを定義するストリームナンバーテーブルに関する。
【背景技術】
【０００２】
近年、Ｂｌｕ−ｒａｙ  ＤｉｓｃやＨＤ  ＤＶＤと呼ばれる次世代ＤＶＤ規格が策定され、ユーザにとって高精細及び高音質な光ディスクが一般的になりつつある。これらの光ディスクには、符号化方式、チャネル数、及び言語属性のあらゆる組み合わせに対応できるように複数のオーディオストリーム（例えば、３２本）が記録される。
【０００３】
ここで、符号化方式には例えば、ドルビーＡＣ−３、Ｄｏｌｂｙ  Ｄｉｇｉｔａｌ  Ｐｌｕｓ、ＭＬＰ、ＤＴＳ、ＤＴＳ−ＨＤ、及びリニアＰＣＭ等が該当し、チャネル数には、モノラル、ステレオ、マルチチャンネル等が該当する。
【０００４】
光ディスクにはプレイリスト情報も記録されており、プレイリスト情報は、ビデオストリームの時間軸における再生開始点及び再生終了点で定義される再生区間（プレイアイテム）を一以上含んで構成される。
【０００５】
光ディスクに記録されている各オーディオストリームは、ビデオストリームにおけるどの再生区間であっても再生可能なわけではなく、再生区間毎に再生可能なオーディオストリームが定義されている。
【０００６】
これは、それぞれの再生区間において再生可能なオーディオストリームのストリームナンバーを当該再生区間に対応するストリームナンバーテーブルに登録することにより実現されている。
【０００７】
再生装置は、自装置の再生能力及び状態設定に応じて、再生対象となる再生区間に対応するストリームナンバーテーブルに登録されているオーディオストリームから最適なオーディオストリームを選択し（オーディオストリーム選択機能）、再生する。
【０００８】
一般的なオーディオストリーム選択機能について説明する（特許文献１参照）。再生装置は、オーディオストリームの選択の際には、ストリームナンバーテーブルに登録された複数のオーディオストリームのそれぞれについて、当該オーディオストリームを再生する能力が自装置に存在すること（条件Ａ）、当該オーディオストリームの言語属性が自装置に設定されている言語設定と一致していること（条件Ｂ）、及び当該オーディオストリームのチャネル属性が自装置に設定されているチャネル属性と一致していること（条件Ｃ）、の三つの条件のうちどれを満たすかを判定する。そして、満たすと判定された条件のパターンに応じて各オーディオストリームに優先順位を付し、その優先順位に基づいてオーディオストリームを選択し、再生する。
【０００９】
具体的には、前述の全ての条件を満たすオーディオストリームが存在すれば、これら全ての条件を満たすオーディオストリームを選択し、再生を開始する。
これら全ての条件を満たすオーディオストリームが存在しなければ、条件Ａと条件Ｂとを満たすオーディオストリームを選択する。
【００１０】
条件Ａと条件Ｂとを満たすオーディオストリームも存在しなければ、条件Ａと条件Ｃとを満たすオーディオストリームを選択する。
条件Ａと条件Ｃとを満たすオーディオストリームも存在しなければ、条件Ａを満たすオーディオストリームを選択する。
【００１１】
ここで問題になるのが、優先順位の最も高いオーディオストリームが複数存在する場合である。この場合には、ストリームナンバーテーブルにおけるストリームナンバーの登録順序に応じて、再生すべきオーディオストリームを決定する。具体的には、再生装置は、優先順位の最も高いオーディオストリームのうちストリームナンバーテーブルに最初に登録されたオーディオストリームを選択する。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】国際公開番号ＷＯ２００４−１１４６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
ところで近年、オーディオストリームの新たな符号化方式（Ｎｅｗ  Ａｕｄｉｏ  Ｃｏｄｅｃ）（以下、「ＮＡＣ」という）が、様々な目的で開発されている。ＮＡＣでは、より高音質での圧縮符号化を目指しており、ＮＡＣとして、例えば、従来よりも圧縮率が高いものや従来にない機能を備えるものが登場しつつある。
【００１４】
このような背景の下、前述のＢｌｕ−ｒａｙ  ＤｉｓｃやＨＤ  ＤＶＤのような次世代ＤＶＤ規格に、ＮＡＣを導入することにより、次世代ＤＶＤの魅力をより高めたいという要望がある。
【００１５】
しかしながら、既存の次世代ＤＶＤ規格にＮＡＣを導入するにあたっては、既存の次世代ＤＶＤ規格に準拠した既存の再生装置と、ＮＡＣが導入された、すなわちバージョン更新後の次世代ＤＶＤ規格に準拠した記録媒体との互換性が問題となる。
【００１６】
具体的には、例えば、既存の再生装置がオーディオストリーム選択機能によりオーディオストリームを選択する際に、ＮＡＣで符号化されたオーディオストリームのストリームエントリーがストリームナンバーテーブルに登録されていると、ＮＡＣに関する属性情報を正しく読み込めないため、再生すべきオーディオストリームとして、ＮＡＣで符号化されたオーディオストリームを誤って選択してしまう可能性がある。
【００１７】
そうすると、既存の再生装置は、ＮＡＣで符号化されたオーディオストリームをデコードできないため、その再生区間ではオーディオストリームが再生されない可能性がある。オーディオストリームが再生されない区間が発生すると、ユーザに対して不快感を与えることになる。
【００１８】
本発明は、ＮＡＣで符号化されたオーディオストリームのストリームエントリーがストリームナンバーテーブルに登録されている場合に、既存の再生装置でのオーディオストリームの再生を保障する記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記目的を達成するために、本発明の一実施態様である記録媒体は、一以上のプレイリスト情報が記録された記録媒体であって、各プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、各ストリームナンバーテーブルは、複数のオーディオストリームのそれぞれに対応する、複数のストリームエントリーを有し、各ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、前記複数のオーディオストリームの符号化方式には、オプション方式のものと、マンダトリ方式のものとがあり、マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式であり、第一のプレイリスト情報に含まれる第一のストリームナンバーテーブルにおいて、オプション方式で符号化されたオーディオストリームのストリームエントリーは、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーの直後に登録されており、前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一であることを特徴とする。
【発明の効果】
【００２０】
上記課題を解決するための手段に記載の構成により、既存の再生装置が、オプション方式で符号化されたオーディオストリームをデコード可能であると誤って判定し、当該オーディオストリームの優先順位が最も高くなったとしても、当該オーディオストリームのストリームエントリーの直前のストリームエントリーに対応する、既存の符号化方式で符号化されたオーディオストリームも、オプション方式で符号化されたオーディオストリームと同様に優先順位が最も高くなる。
【００２１】
既存の符号化方式で符号化されたオーディオストリームの言語コード及びチャネル数は、オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数と等しく、かつ、既存の再生装置は、既存の符号化方式で符号化されたオーディオストリームをデコード可能であるからである。
【００２２】
優先順位が最も高いオーディオストリームが複数存在する場合には、最初に登録されたオーディオストリーム、すなわち、既存の符号化方式で符号化されたオーディオストリームが選択されるので、オプション方式で符号化されたオーディオストリームが選択されることはない。オプション方式で符号化されたオーディオストリームを含むデジタルストリームが記録された記録媒体を再生する場合であっても、既存の再生装置は、既存の符号化方式で符号化されたオーディオストリームを選択しデコードするので、オーディオストリームの再生を保障することができる。
【図面の簡単な説明】
【００２３】
【図１】BD-ROMの内部構成を示す図である。
【図２】拡張子“m2ts”が付与されたファイルがどのように構成されているかを模式的に示す図である。
【図３】ＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
【図４】PlayList情報のデータ構造を示す図である。
【図５】ES＿tableの内部構成を示す図である。
【図６】（ａ）Primaryオーディオストリームにおけるstream＿entryを示す図である。（ｂ）Primaryオーディオストリームに対応したstream＿attributesを示す図である。
【図７】ＮＡＣで符号化されたオーディオストリームのstream＿entry-stream＿attributesを含むES＿tableの構成の一例を示す図である。
【図８】ＡＶクリップの管理情報の内部構成を示す図である。
【図９】再生装置１０００の内部構成を示す図である。
【図１０】コントローラ１００を機能的に表現した図である。
【図１１】（ａ）PSR1のビットアサインを示す図である。（ｂ）PSR15のビットアサインを示す図である。（ｃ）PSR31のビットアサインを示す図である。
【図１２】ナビゲーションコマンド群が、version＿numberが２．３以上のプレイリストを再生するナビゲーションコマンドを含む場合のプレイリスト選択処理を示すフローチャートである。
【図１３】再生制御部１０２によるプレイリスト再生手順を示すフローチャートである。
【図１４】（ａ）PSR1の設定値が取り得る状態遷移を示す図である。（ｂ）Procedure when playback condition is changedの処理手順を示す図である。
【図１５】PSR1の設定（ステップＳ３０５）の詳細な処理手順を示したフローチャートである。
【図１６】ストリーム変化時におけるPSR1の設定手順を示すフローチャートである。
【図１７】メニュー画面の一例を示す図である。
【図１８】（ａ）再生装置のPlayer Capability、言語設定、及びSurround Capabilityを示す図である。（ｂ）ES＿tableの記録内容を示す図である。（ｃ）6つのオーディオストリームのstream＿entry-stream＿attributesを示す図である。
【図１９】ＢＤ−ＲＯＭ１ａ及びＨＤＤ１ｂのデータ構造を示す図である。
【図２０】実施の形態２においてＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
【図２１】実施の形態２におけるES＿tableの内部構成を示す図である。
【図２２】（ａ）Comb＿info＿Secondary＿audio＿Primary＿audioの内部構成を示す図である。（ｂ）Comb＿info＿Secondary＿audio＿Primary＿audioの一例を示す図である。
【図２３】記録装置３０００の内部構成を示すブロック図である。
【図２４】stream＿attributes()のシンタックスを示す図である。
【図２５】stream＿code＿inf()のシンタックスを示す図である。
【図２６】ハフマン符号化された値(H)とフィールド値との対応を示すテーブルの一例を示す図である。
【図２７】デコード手順を示す図である。
【図２８】ＢＤ−ＲＯＭ規格において２つのＡＶデータを連続して再生する際の、Ｖｉｄｅｏアクセスユニットと、Ａｕｄｉｏアクセスユニットとの関係を示す図である。
【発明を実施するための形態】
【００２４】
以下、図面を参照しながら本発明の実施の形態を説明する。
（実施の形態１）
１．ＢＤ−ＲＯＭの内部構成
図１は、ＢＤ−ＲＯＭの内部構成を示す図である。本図の第４段目にＢＤ−ＲＯＭを示し、第３段目にＢＤ−ＲＯＭ上のトラックを示す。本図のトラックは、ＢＤ−ＲＯＭの内周から外周にかけて螺旋状に形成されているトラックを横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてＢＤ−ＲＯＭの応用層フォーマット（アプリケーションフォーマット）を表現すると、図中の第１段目のようになる。本図に示すようにＢＤ−ＲＯＭには、ＲＯＯＴディレクトリの直下にＢＤＭＶディレクトリがあり、ＢＤＭＶディレクトリの配下には、インデックスファイル（index.bdmv）、ＭｏｖｉｅＯｂｊｅｃｔファイル（Movie Object.bdmv）、ＰＬＡＹＬＩＳＴディレクトリ、ＣＬＩＰＩＮＦＯディレクトリ、ＳＴＲＥＡＭディレクトリ、ＢＤＢＪディレクトリ、及びＢＤＪＡディレクトリが存在する。
【００２５】
１．１．インデックスファイル（index.bdmv）
インデックスファイル（index.bdmv）には、タイトル構成を示すインデックステーブルが格納される。タイトルとは、再生の単位であり、例えば、一つ目のタイトルとして映画本編、２つ目のタイトルとしてディレクターズカット、3つ目のタイトルとしてボーナスコンテンツが記録される。ユーザは、再生装置に付属しているリモコン等を用いて”タイトルＮ番の再生”のように、再生するタイトルを指定する事ができる。
【００２６】
１．２．ＳＴＲＥＡＭディレクトリ
ＳＴＲＥＡＭディレクトリには、拡張子“m2ts”が付与されたファイルが格納される。図２は、拡張子“m2ts”が付与されたファイルがどのように構成されているかを模式的に示す図である。拡張子“m2ts”が付与されたファイルは、ＡＶクリップを格納している。ＡＶクリップは、MPEG2-Transport Stream形式のデジタルストリームである。
【００２７】
図２に示すように、デジタル化された映像及び音声はそれぞれ（上１段目）、ＰＥＳパケットからなるエレメンタリストリームに変換され（上２段目）、更にＴＳパケットに変換される（上３段目）。同様に、字幕系のプレゼンテーショングラフィクスストリーム（Presentation Graphics（ＰＧ）ストリーム）及び対話系のインタラクティブグラフィクスストリーム（Interactive Graphics（ＩＧ）ストリーム）もそれぞれ（下１段目、下２段目）、ＴＳパケットに変換される（下３段目）。デジタルストリームは、これらを多重化したものである。
【００２８】
ここで、図１に示すように、ＳＴＲＥＡＭディレクトリには、ファイル（00001.m2ts（with NAC））とファイル（00002.m2ts（without NAC））とが格納されている。両者の違いは、新しいオーディオ符号化方式（New Audio Codec：以下、「ＮＡＣ」という）（例えば、ＤＲＡ）で符号化されたオーディオストリームがデジタルストリームに含まれているか否かである。より詳細に説明すると、ファイル（00002.m2ts（without NAC））には、オーディオストリームに関しては、ドルビーＡＣ−３、Ｄｏｌｂｙ  Ｄｉｇｉｔａｌ  Ｐｌｕｓ、ＭＬＰ、ＤＴＳ、ＤＴＳ−ＨＤ、及びリニアＰＣＭ等の既存の符号化方式で符号化されたオーディオストリーム（以下、「既存符号化ストリーム」ともいう）のみが含まれる。一方、ファイル（00001.m2ts（with NAC））には、それらの符号化方式で符号化されたオーディオストリームに加え、ＮＡＣで符号化されたオーディオストリーム（以下、「ＮＡＣストリーム」ともいう）が含まれる。
【００２９】
図２に戻って、PGストリームは、字幕を構成するグラフィクスストリームである。グラフィクスストリームは、言語毎（例えば、英語、日本語、フランス語等）に存在する。PGストリームは、PCS(Presentation Control Segment)、PDS(Pallet Define Segment)、WDS(Window Define Segment)、ODS(Object Define Segment)、及びEND(END of Display Set Segment)という一連の機能セグメントからなる。ODS(Object Define Segment)は、字幕たるグラフィクスオブジェクトを定義する機能セグメントである。WDS(Window Define Segment)は、画面におけるグラフィクスオブジェクトの描画領域を定義する機能セグメントであり、PDS(Pallet Define Segment)は、グラフィクスオブジェクトの描画にあたっての、発色を規定する機能セグメントである。PCS(Presentation Control Segment)は、字幕表示におけるページ制御を規定する機能セグメントである。かかるページ制御には、Cut-In/Out、Fade-In/Out、Color Change、Scroll、Wipe-In/Outといったものがあり、PCSによるページ制御により、ある字幕を徐々に消去しつつ、次の字幕を表示させるという表示効果を実現することができる。
【００３０】
IGストリームは、対話制御を実現するグラフィクスストリームである。IGストリームにて定義される対話制御は、DVD再生装置上の対話制御と互換性を有する。かかるIGストリームは、ICS(Interactive Composition Segment)、PDS(Palette Definition Segment)、ODS(Object Definition Segment)、及びEND(END of Display Set Segment)と呼ばれる機能セグメントからなる。ODS(Object Definition Segment)は、グラフィクスオブジェクトを定義する機能セグメントである。このグラフィクスオブジェクトが複数集まって、対話画面上のボタンが描画される。PDS(Palette Definition Segment)は、グラフィクスオブジェクトの描画にあたっての、発色を規定する機能セグメントである。ICS(Interactive Composition Segment)は、ユーザ操作に応じてボタンの状態を変化させるという状態変化を実現する機能セグメントである。ICSは、ボタンに対して確定操作がなされた際、実行すべきボタンコマンドを含む。
【００３１】
ここでＡＶクリップは、1つ以上の“STC＿Sequence”から構成される。“STC＿Sequence”とは、ＡＶストリームのシステム基準時刻であるSTC(System Time Clock)の不連続点(system time-base discontinuity)が存在しない区間をいう。STCの不連続点は、デコーダがSTCを得るために参照するPCR(Program Clock Reference)を運ぶPCRパケットの不連続情報(discontinuity＿indicator)がONである点である。
【００３２】
続いて、図３は、ＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
本図に示すように、ＡＶクリップには、0x1011のPIDをもつ高画質ビデオストリーム、0x1100から0x111FまでのPIDをもつPrimaryオーディオストリーム、0x1200から0x121FまでのPIDをもつPGストリーム、及び0x1400から0x141FまでのPIDをもつIGストリームが多重化されている。これらのエレメンタリストリームを構成するパケットには、当該エレメンタリストリームに対応するPIDが付与されており、このPIDに基づいて多重分離されることになる。
【００３３】
１．３．ＰＬＡＹＬＩＳＴディレクトリ
１．３．１．拡張子“mpls”が付与されたファイルのデータ構造
ＰＬＡＹＬＩＳＴディレクトリには、拡張子“mpls”が付与されたプレイリストファイルが格納される。拡張子“mpls”が付与されたプレイリストファイルは、PlayList(PL)情報を格納している。PlayList情報は、ＡＶクリップにおける論理的な再生経路を定義した情報である。
【００３４】
ここで、図１に示すように、ＰＬＡＹＬＩＳＴディレクトリには、ファイル（00001.mpls（with NAC））とファイル（00002.mpls（without NAC））とが格納されている。ファイル（00001.mpls（with NAC））に格納されているPlayList情報は、ファイル（00001.m2ts（with NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含む。一方、ファイル（00002.mpls（without NAC））は、ファイル（00002.m2ts（without NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含まない。
【００３５】
図４は、PlayList情報のデータ構造を示す図である。本図において、PlayList情報は、PlayList情報のバージョンを定義するVersion＿numberと、MainPathを定義するMainPath情報(MainPath())と、チャプタを定義するPlayListMark情報(PlayListMark())とを含む。
【００３６】
Version＿numberには、当該PlayList情報がＮＡＣに対応しているか、すなわち、ＮＡＣストリームに関する情報を含むか否かに応じて異なる番号が設定される。ファイル（00001.mpls）に格納されている、すなわち、ＮＡＣに対応しているPlayList情報のVersion＿numberには、例えば、２．３が設定される。一方、ファイル（00002.mpls）に格納されている、すなわち、ＮＡＣに対応していないPlayList情報のVersion＿numberには、例えば、１．０または２．０が設定される。
【００３７】
MainPathは、主映像たるビデオストリームやオーディオストリームに対して定義される再生経路である。
MainPathは、引き出し線mp1で示すように、複数のPlayItem情報＃1・・・＃mを含んで構成される。PlayItem情報は、MainPathを構成する1つの論理的な再生区間を定義する。
【００３８】
PlayItem情報の構成は、引き出し線hs1によりクローズアップされている。引き出し線hs1に示すように、PlayItem情報は、再生区間のIN点及びOut点が属するＡＶクリップの再生区間情報のファイル名を示す『Clip＿Information＿file＿name』と、ＡＶクリップの符号化方式を示す『Clip＿codec＿identifier』と、PlayItemがマルチアングルを構成するか否かを示す『is＿multi＿angle』と、このプレイアイテムとその1つ前のプレイアイテムとの接続をシームレスに行うか否かを示す『connection＿condition』と、このプレイアイテムが対象としているSTC＿Sequenceを一意に示す『ref＿to＿STC＿id[0]』と、再生区間の始点を示す時間情報『In＿time』と、再生区間の終点を示す時間情報『Out＿time』と、このプレイアイテムにおいてマスクすべきユーザオペレーションがどれであるかを示す『UO＿mask＿table』と、このプレイアイテムの途中へのランダムアクセスを許可するか否かを示す『PlayItem＿random＿access＿flag』と、このプレイアイテムの再生終了後、最後のピクチャの静止表示を継続するか否かを示す『Still＿mode』と、『ES＿table』とから構成される。このうち、再生経路を構成するのは、再生区間の始点を示す時間情報『In＿time』と、再生区間の終点を示す時間情報『Out＿time』との組みであり、再生経路情報とは、この『In＿time』及び『Out＿time』の組みから構成される。PlayItem情報の定義により、ＡＶクリップとは異なる再生経路の定義が可能になる。
【００３９】
１．３．１．１．『ES＿table』のデータ構造
続いて、『ES＿table』の詳細について説明する。
ES＿tableは、PlayItem情報のClip＿Information＿file＿nameで指定されているＡＶクリップに多重化された複数エレメンタリストリームのうち、再生可能なものを示すテーブルである。具体的には、ES＿tableは、MainClipに多重化されている複数エレメンタリストリームのうち再生可能なエレメンタリストリームについてのstream＿entryを、stream＿attributesと対応付けることで構成される。
【００４０】
図５は、ES＿tableの内部構成を示す図である。図中の括弧記号“｛”は、ビデオストリーム、Primaryオーディオストリーム、PGストリーム、及びIGストリームのそれぞれについて、再生可能なストリームに対応するstream＿entry- stream＿attributesの組みを示している。ストリームの種別毎に当該ストリームの種別において各々のストリームを識別するための識別子（id）が付されている。本図に示すES＿tableは、ビデオストリームについて、stream＿entry及びstream＿attributesの組み(stream＿entry- stream＿attributes)を一つ有し、Primaryオーディオストリーム、PGストリーム、及びIGストリームのそれぞれについて、stream＿entry及びstream＿attributesの組み(stream＿entry- stream＿attributes)を複数有している。
【００４１】
また、ES＿tableは、再生可能なビデオストリーム数を示すnumber＿of＿video＿stream＿entries、再生可能なPrimaryオーディオストリーム数を示すnumber＿of＿audio＿stream＿entries、再生可能なPGストリーム数を示すnumber＿of＿PG＿stream＿entries、及び再生可能なIGストリーム数を示すnumber＿of＿IG＿stream＿entriesを含む。
【００４２】
続いて、stream＿entry-stream＿attributesの詳細について説明する。図６（ａ）は、Primaryオーディオストリームにおけるstream＿entryを示す図である。本図に示すように、Primaryオーディオストリームのstream＿entryは、Primaryオーディオストリームの多重分離に用いられるPIDを示す「ref＿to＿Stream＿PID＿of＿Main＿Clip」を含む。
【００４３】
図６（ｂ）は、Primaryオーディオストリームに対応したstream＿attributesを示す図である。Primaryオーディオストリームにおけるstream＿attributesは、オーディオストリームの符号化方式を示す『coding＿type』と、対応するオーディオストリームのチャネル構成を示す『presentation＿type』と、対応するオーディオストリームのサンプリング周波数を示す『sampling＿frequency』と、オーディオストリームの言語属性を示す『audio＿language＿code』とを含む。
【００４４】
１．３．１．１．１．ファイル（00001.mpls）のES＿table
続いて、ファイル（00001.mpls）のES＿tableについて説明する。ES＿tableがＮＡＣストリームのstream＿entry-stream＿attributesを含む場合には、どのような順序で再生可能な各オーディオストリームのstream＿entry-stream＿attributesを登録するのかが重要である。
【００４５】
ＮＡＣストリームのstream＿entry-stream＿attributesをES＿tableに登録する際には、当該オーディオストリームのstream＿entry-stream＿attributesの直前に当該オーディオストリームと同一の音源からエンコードされた、既存の符号化方式（ＡＣ３、ＤＴＳ、及びＬＰＣＭ等）で符号化されたオーディオストリームのstream＿entry-stream＿attributesを登録しておく。例えば、ＮＡＣストリームが、日本語吹き替えの本編用の音声である場合、ＮＡＣの直前に登録されているオーディオストリームの音源も日本語吹き替えの本編用の音声であることが望ましい。
【００４６】
また、ＮＡＣストリームの言語コード及びチャネル数は、直前に登録されている、既存符号化ストリームの言語コード及びチャネル数と同一であることが望ましい。
再生装置は、再生すべきオーディオストリームを選択する際、選択の優先順位が最も高いオーディオストリームが複数存在する場合には、ES＿tableの最初に登録されているオーディオストリームを選択するので、上述のように登録することにより、たとえ既存の再生装置が、ＮＡＣストリームを再生する能力が自装置に存在する、すなわち、条件Ａを満たすものと誤って判定したとしても、当該ＮＡＣのstream＿entry-stream＿attributesの直前に登録されている既存符号化ストリームが選択され、ＮＡＣストリームが選択されることはない。
【００４７】
図７は、ＮＡＣストリームのstream＿entry-stream＿attributesを含むES＿tableの構成の一例を示す図である。図７に示すように、Primaryオーディオストリームの先頭のstream＿attributes（id=1）には、coding＿typeとしてＡＣ３、presentation＿typeとしてmulti-channel、audio＿language＿codeとしてJapaneseが記述されている。stream＿attributes（id=2）には、coding＿typeとしてＮＡＣ、presentation＿typeとしてmulti-channel、audio＿language＿codeとしてJapaneseが記述されている。また、オーディオストリーム（id=1）及びオーディオストリーム（id=2）は、同じオーディオコンテンツからエンコードされているものとする。
【００４８】
再生すべきオーディオストリームを選択する際、たとえ既存の再生装置が、ＮＡＣストリームを再生する能力が自装置に存在すると誤って判定し、ＮＡＣストリームと、ＡＣ３で符号化されたオーディオストリームの優先順位とが同一になったとしても、ＡＣ３で符号化されたオーディオストリームが選択されるので、既存の再生装置によるオーディオストリームの再生を保障することができる。
【００４９】
１．４．ＣＬＩＰＩＮＦＯディレクトリ
ＣＬＩＰＩＮＦＯディレクトリには、拡張子“clip”が付与されたクリップ情報ファイルが格納される。拡張子“clip”が付与されたクリップ情報ファイルは、ＡＶクリップの管理情報を格納している。
【００５０】
ここで、図１に示すように、ＣＬＩＰＩＮＦＯディレクトリには、ファイル（00001.clip（with NAC））とファイル（00002.clip（without NAC））とが格納されている。ファイル（00001.clip（with NAC））に格納されている管理情報は、ファイル（00001.m2ts（with NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含む。一方、ファイル（00002.clip（without NAC））に格納されている管理情報は、ファイル（00002.m2ts（without NAC））に格納されているAVクリップに対応しており、ＮＡＣストリームに関する情報を含まない。
【００５１】
図８は、ＡＶクリップの管理情報の内部構成を示す図である。ＡＶクリップの管理情報は、基本的にはＡＶクリップと１対１に対応し、ＡＶクリップについての情報を格納した『ClipInfo()』、ATC Sequence及びSTC Sequenceに関する情報を格納した『Sequence Info()』、Program Sequenceに関する情報を格納した『Program Info()』、及び『Characteristic Point Info(CPI())』からなる。
【００５２】
Program Infoは、ＡＶクリップに含まれるエレメンタリストリーム数を示すnumber＿of＿es、各エレメンタリストリームのＰＩＤを示すstream＿pid、及び各エレメンタリストリームの種類に応じた属性情報を示すstream＿code＿info()から構成される。
【００５３】
ファイル（00001.m2ts）に格納されているＡＶクリップには、ＮＡＣに対応するオーディオストリームが含まれるので、ファイル（00001.clip（with NAC））に格納されている管理情報におけるstream＿code＿info()には、ＮＡＣに対応するオーディオストリームの属性情報が記載されることになる。
【００５４】
CPI()は、AVClipに属する個々のエレメンタリストリームについてのEP＿map（不図示）を含む。EP＿mapは、1つのエレメンタリストリーム上において、Access Unitが存在するエントリー位置のパケット番号(SPN＿EP＿start)を、エントリー時刻(PTS＿EP＿start)と対応づけて示す情報である。
【００５５】
以上のプレイリスト情報及びクリップ情報は、”静的シナリオ”に分類される。何故なら、以上のプレイリスト情報及びクリップ情報により、静的な再生単位であるプレイリストが定義されるからである。以上で静的シナリオについての説明を終わる。
【００５６】
続いて”動的なシナリオ”について説明する。動的シナリオとは、ＡＶクリップの再生制御を動的に規定するシナリオデータである。”動的に”というのは、再生装置における状態変化やユーザからのキーイベントにより再生制御の中身がかわることをいう。BD-ROMでは、この再生制御の動作環境として2つのモードを想定している。1つ目は、DVD再生装置の動作環境と良く似た動作環境であり、コマンドベースの実行環境である。2つ目は、Java（登録商標）仮想マシンの動作環境である。これら2つの動作環境のうち1つ目は、HDMVモードと呼ばれる。2つ目は、BD-Jモードと呼ばれる。これら2つの動作環境があるため、動的シナリオはこのどちらかの動作環境を想定して記述される。HDMVモードを想定した動的シナリオはMovie Objectと呼ばれる。一方BD-Jモードを想定した動的シナリオはBD-J Objectと呼ばれる。
【００５７】
先ず初めにMovie Objectについて説明する。
１．５．Movie Object
Movie Objectは、図１に示したMovieObject.bdmvというファイルに格納され、ナビゲーションコマンド列を含む。
【００５８】
ナビゲーションコマンド列は、条件分岐、再生装置における状態レジスタの設定、状態レジスタの設定値取得等を実現するコマンド列からなる。Movie Objectにおいて記述可能なコマンドを以下に示す。
【００５９】
PlayPLコマンド
書式:PlayPL(第１引数，第２引数)
第１引数は、プレイリストの番号で、再生すべきプレイリストを指定することができる。第２引数は、そのプレイリストに含まれるプレイアイテムや、そのプレイリストにおける任意の時刻、Chapter、Markを用いて再生開始位置を指定することができる。
【００６０】
プレイアイテムによりPL時間軸上の再生開始位置を指定したPlayPL関数をPlayPLatプレイアイテム()、
ChapterによりPL時間軸上の再生開始位置を指定したPlayPL関数をPlayPLatChapter()、
時刻情報によりPL時間軸上の再生開始位置を指定したPlayPL関数をPlayPLatSpecified Time()という。
【００６１】
Movie Objectにおけるナビゲーションコマンドの記述は、DVDにおけるナビゲーションコマンドの記述方式と良く似ているので、DVD上のディスクコンテンツを、BD-ROMに移植するという作業を効率的に行うことができる。Movie Objectについては、国際公開公報W0 2004/074976に記載された先行技術が存在する。詳細については、本国際公開公報を参照されたい。
【００６２】
以上でMovie Objectについての説明を終える。続いてBD-J Objectについて説明する。
１．６．BD-J Object
BD-J Objectは、Javaプログラミング環境で記述された、BD-Jモードの動的シナリオであり、00001.bobjというファイルに格納される。Movie Objectとの違いは、BD-J Objectにコマンドが直接記述されていない点である。つまりMovie Objectにおいて制御手順は、ナビゲーションコマンドにより直接記述されていた。これに対しBD-J Objectでは、Javaアプリケーションに対する指定をアプリケーション管理テーブルに記載することにより、間接的に制御手順を規定している。このような間接的な規定により、複数の動的シナリオにおいて制御手順を共通化するという、制御手順の共通化を効率的に行うことができる。
【００６３】
またMovieObjectにおけるプレイリスト再生は、プレイリスト再生を命じるナビゲーションコマンド(PlayPlコマンド)の記述によりなされるが、BD-J Objectにおけるプレイリスト再生は、プレイリスト再生手順を示すプレイリスト管理テーブルをBD-J Objectに組み込むことで記述が可能になる。
【００６４】
このBD-JモードにおけるJavaアプリケーションについて説明する。ここでBD-Jモードが想定しているJavaプラットフォームは、Java2Micro＿Edition(J2ME) Personal Basis Profile(PBP 1.0)と、Globally Executable MHP specification(GEM1.0.2)for package media targetsとをフル実装したものである。
【００６５】
このBD-JモードにおけるJavaアプリケーション（BD-Jアプリケーション）は、xletインタフェースを通じて、Application Managerにより、制御される。xletインタフェースは、“loaded”、“paused”、“active”、“destoryed”といった4つの状態をもつ。
【００６６】
上述したJavaプラットフォームは、JFIF(JPEG)やPNG、その他のイメージデータを表示するためのスタンダードJavaライブラリを含む。このため、Javaアプリケーションは、HDMVモードにおいてIGストリームにより実現されるGUIとは異なるGUIフレームワークを実現することができる。JavaアプリケーションにおけるGUIフレームワークは、GEM1.0.2にて規定されたHAViフレームワークを含み、GEM1.0.2におけるリモートコントロールナビゲーション機構を含む。
【００６７】
これにより、Javaアプリケーションは、HAViフレームワークに基づくボタン表示、テキスト表示、オンライン表示(BBSの内容)といった表示と、動画像の表示とを組み合わせた画面表示を実現することができ、リモートコントロールを用いて、この画面表示に対する操作を行うことができる。
【００６８】
このJavaアプリケーションの実体にあたるのが、図１におけるBDMVディレクトリ配下のBDJAディレクトリに格納されたJavaアーカイブファイル(00001.jar)である。
BD-J Objectについては、国際公開公報W0 2004/045840 A1、W0 2005/036555 A1、及びW0 2005/036546 A1に記載された先行技術が存在する。詳細については、本国際公開公報を参照されたい。
【００６９】
以上でBD-J Objectについての説明を終える。
２．再生装置
２．１．ハードウェア構成
図９は、再生装置１０００の内部構成を示す図である。再生装置１０００は、主としてシステムLSIと、ドライブ装置という2つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装することで工業的に生産することができる。システムLSIは、再生装置の機能を果たす様々な処理部を集積した集積回路である。こうして生産される再生装置は、ＢＤ‐ＲＯＭドライブ１０、リードバッファ２０、システムターゲットデコーダ３００、プレーン加算部４０、エンコーダ５０、Ｄ／Ａコンバータ６０、メモリ７０、ＰＩＤ変換部８０、ＰＳＲセット９０、コントローラ１００、操作受付部１１０、及びHDMI送受信部１２０を含んで構成される。
【００７０】
ＢＤ−ＲＯＭドライブ１０は、コントローラ１００から入力される読み出し要求に基づいてＢＤ−ＲＯＭ１からデータを読み出す。ＢＤ−ＲＯＭ１から読み出されたＡＶクリップはリードバッファ２０に、管理情報（インデックスファイル、プレイリストファイル、及びクリップ情報ファイル）、並びにMovieObject.bdmvファイル及びBD-J Objectファイル（以下、「ＢＤプログラムファイル」ともいう）はメモリ７０に、それぞれ転送される。
【００７１】
リードバッファ２０は、FIFOメモリであり、ＢＤ−ＲＯＭ１から読み出されたTSパケットが先入れ先出し式に格納される。
システムターゲットデコーダ３００は、リードバッファ２０に格納されているTSパケットに対して多重分離処理を行い、ストリームのデコード処理を行う。TSパケットに含まれるストリームのデコードに必要な、コーデックの種類やストリーム属性等の情報は、コントローラ１００から転送される。
【００７２】
システムターゲットデコーダ３００は、具体的には、デマルチプレクサ３０１、ＡＴＣ生成部３０２、ＳＴＣ生成部３０３、インタラクティブグラフィックスプレーンデコーダ（ＩＧデコーダ）３０４、インタラクティブグラフィックスプレーン（ＩＧプレーン）３０５、プレゼンテーショングラフィックスデコーダ（ＰＧデコーダ）３０６、プレゼンテーショングラフィックスプレーン（ＰＧプレーン）３０７、ビデオデコーダ３０８、ビデオプレーン３０９、JPEGデコーダ３１０、Stillプレーン３１１、スイッチ３１２、及びオーディオデコーダ３１３を含んで構成される。
【００７３】
デマルチプレクサ３０１は、リードバッファ２０に格納されているＴＳパケットを取り出し、取り出したＴＳパケットからＰＥＳパケットを得る。得られたPESパケットのうち、PID変換部８０から通知されたPIDをもつものを、ビデオデコーダ３０８、オーディオデコーダ３１３、ＩＧデコーダ３０４、及びＰＧデコーダ３０６の何れかに出力する。
【００７４】
ATC生成部３０２は、コントローラ１００の指示によってArrival Time Clock(ATC)を生成し、デマルチプレクサ３０１の動作タイミングを調整する。
STC生成部３０３は、コントローラ１００の指示によってSystem Time Clock(STC)を生成し、各デコーダの動作タイミングを調整する。
【００７５】
ＩＧデコーダ３０４は、デマルチプレクサ３０１から入力されるインタラクティブグラフィックスストリームを復号し、表示時刻（ＰＴＳ）のタイミングで、非圧縮形式のグラフィックスデータをＩＧプレーン３０５に書き出す。
【００７６】
ＩＧプレーン３０５は、グラフィックスデータを格納しておくためのプレーンである。
ＰＧデコーダ３０６は、デマルチプレクサ３０１から入力されるプレゼンテーショングラフィックスストリームを復号し、表示時刻（ＰＴＳ）のタイミングで、非圧縮形式のグラフィックスデータをＰＧプレーン３０７に書き出す。
【００７７】
ＰＧプレーン３０７は、グラフィックスデータを格納しておくためのプレーンである。
ビデオデコーダ３０８は、デマルチプレクサ３０１から入力されるＰＥＳパケットを復号して非圧縮形式のピクチャを得て、ビデオプレーン３０９に書き込む。
【００７８】
ビデオプレーン３０９は、非圧縮形式のピクチャを格納しておくためのプレーンである。プレーンとは、再生装置において一画面分の画素データを格納しておくためのメモリ領域である。ビデオプレーンにおける解像度は1920×1080であり、このビデオプレーンに格納されたピクチャデータは、16ビットのYUV値で表現された画素データにより構成される。
【００７９】
JPEGデコーダ３１０は、コントローラ１００から入力されるグラフィックスデータ（例えば、ＪＰＥＧ）をデコードして、Stillプレーン３１１に書き込む。
Stillプレーン３１１は、JPEGデータを展開することで得られた非圧縮のグラフィクスデータが格納されるプレーンである。
【００８０】
スイッチ３１２は、デマルチプレクサ３０１により多重分離がなされた、Primaryオーディオストリームを構成するTSパケットを、オーディオデコーダ３１３に供給するか、またはオーディオデコーダ３１３に供給せず、そのオーディオストリームを他の機器に出力するか（パススルー出力）を切り換えるスイッチである。
【００８１】
オーディオデコーダ３１３は、デマルチプレクサ３０１から入力されたＰＥＳパケットを復号して、非圧縮形式のオーディオデータを出力する。オーディオデコーダ３１３は、ＮＡＣストリームを復号することができる。
【００８２】
プレーン加算部４０は、ビデオプレーン３０９、ＰＧプレーン３０７、ＩＧプレーン３０５、及びStillプレーン３１１を瞬時に重畳することで映像信号を生成し、デジタルテレビ等のディスプレイに出力する。
【００８３】
エンコーダ５０は、オーディオデコーダ３１３によるデコードにより得られたLPCM状態のオーディオデータを、サラウンド音声としてS/PDIFのようなデジタルインタフェースで送る場合、LPCMをDolby Digital(DD)形式やDolby Theater System(DTS)形式に圧縮符号化する。
【００８４】
Ｄ／Ａコンバータ６０は、オーディオデコーダ３１３によるデコードにより得られたLPCM状態のオーディオデータを、アナログデータに変換し外部の機器に出力する。
メモリ７０は、ＢＤプログラムファイルの他、カレントのPL情報やカレントのClip情報等を格納しておくためのメモリである。カレントPL情報とは、BD-ROMに記録されている複数のPlayList情報のうち、現在処理対象になっているものをいう。カレントClip情報とは、BD-ROMに記録されている複数のClip情報のうち、現在処理対象になっているものをいう。
【００８５】
ＰＩＤ変換部８０は、PSRセット９０に格納されているPrimaryオーディオストリームのストリームナンバーを、ES＿Tableに基づき、PIDに変換して、変換結果たるPIDをデマルチプレクサ３０１に指示する。
【００８６】
PSRセット９０は、再生装置に内蔵されるレジスタであり、64個のPlayer Setting/Status Register(PSR)と、4096個のGeneral Purpose Register（GPR)とからなる。Player Setting/Status Registerの設定値(PSR)のうち、PSR4〜PSR8は、現在の再生時点を表現するのに用いられる。
【００８７】
コントローラ１００は、ＣＰＵ１００ａと命令ＲＯＭ１００ｂとを含む。
ＣＰＵ１００ａは、MovieObject.bdmvに格納されているMovie Objectや、BD-J Objectにて参照されているJavaアプリケーションを解読し、この解読結果に従ったプレイリスト再生(カレントPlayList情報に従った再生制御のことである）を実行することで、BD-ROMの再生制御を実現する。また上述のようなATS、STCの制御も行なう。
【００８８】
命令ＲＯＭ１００ｂは、再生装置の制御を規定するソフトウェアを記憶している。
操作受付部１１０は、リモコンに対してなされた操作をユーザから受け付け、そうした操作を示すユーザイベント情報をコントローラ１００に通知する。
【００８９】
HDMI送受信部１２０は、HDMI（HDMI:High Definition Multimedia Interface）を介して接続された他の機器から、その機器に関する情報を受信する。また、ビデオデコーダ３０８のデコードにより得られたデジタル非圧縮のビデオを、LPCMや圧縮されたオーディオデータとともに、HDMIを介して接続された他の機器に送信する。
【００９０】
以上が、再生装置１０００のハードウェア構成である。次に、再生装置１０００のソフトウェア構成について説明する。
２．２．ソフトウェア構成
図１０は、コントローラ１００を機能的に表現した図である。本図に示すように、コントローラ１００は、プログラム実行部１０１、再生制御部１０２、Procedure実行部１０３、及びATC生成部３０２とSTC生成部３０３とに対して、ATC/STCの生成を行わせるATC/STC制御部１０４から構成される。
【００９１】
これらの構成要素の処理は、PSRセット９０に基づく。以降、PSR1、PSR15、PSR31について説明する。
＜PSR1＞
図１１（ａ）は、PSR1のビットアサインを示す図である。
【００９２】
本図によると、32ビット長のPSR1の下位8ビット(b0〜b7)は、ストリームナンバーであり、カレントPlay ItemのES＿tableにstream＿entryが記述されている複数Primaryオーディオストリームのうち、1つを特定する。PSR1の設定値が変化すれば、再生装置１０００は、この変化後の設定値に対応するPrimaryオーディオストリームを再生する。PSR1には初期値として0xFFが設定されており、再生装置１０００により1〜32の値に設定されうる。この0xFFは、不定値であり、Primaryオーディオストリームが存在しない旨、又は、Primaryオーディオストリームが選択されてない旨を示す。1〜32の設定値は、Primaryオーディオストリームのストリームナンバーとして解釈される。
【００９３】
＜PSR15＞
図１１（ｂ）は、PSR15のビットアサインを示す図である。
本図によると、PSR15は、DRA capability、Dolby Lossless capability、DTS-HD capability、Dolby Digital Plus capability、及びLPCM capabilityを含む。
【００９４】
DRA capabilityは、DRA ExtensionとDRA Coreとを含む。DRA Extension及びDRA Coreはそれぞれ、01bに設定されることによりDRA形式のステレオ音声を再生できる能力が再生装置にあることを示し、10bに設定されることによりDRA形式のサラウンド音声を再生できる能力が再生装置にあることを示す。一方、00bに設定されることにより、DRA形式のオーディオストリームをデコードする能力が再生装置に存在しないことを示す。
【００９５】
＜PSR31＞
図１１（ｃ）は、PSR31のビットアサインを示す図である。
本図によると、32ビット長のPSR31のうち、下位16ビット (b0〜b15)は、Player Version情報であり、0000 0010 0000 0000bであれば、当該再生装置のバージョンが、２．０、２．１あるいは２．２であることを示す。0000 0010 0011 0000bであれば、当該再生装置のバージョンが、２．３であることを示す。
【００９６】
以上が、PSRセット９０についての説明である。
以降、プログラム実行部１０１〜Procedure実行部１０３について説明する。
＜プログラム実行部１０１＞
プログラム実行部１０１は、メモリ７０に格納されているＢＤプログラムファイルに格納されたプログラムを実行する。具体的には、操作受付部１１０から入力されるユーザイベントに基づいて、再生制御部１０２に対してプレイリスト再生を命令したり、Procedure実行部１０３に対してPSRセット９０における状態取得／設定を命令したりする。
【００９７】
図１２は、ＢＤプログラムファイルに格納されたナビゲーションコマンド群が、version＿numberが２．３以上のプレイリストを再生するナビゲーションコマンドを含む場合のプレイリスト選択処理を示すフローチャートである。
【００９８】
まず、ＢＤプログラムは、PSR３１のプレーヤバージョン値をチェックし（ステップＳ１０１）、再生装置が、ＮＡＣに対応しているか否かを判定する。具体的には、PSR３１のプレーヤバージョンにより示されるバージョンナンバーが、プレイリスト（00001.mpls）のVersion＿numberにより示されるバージョンナンバー以上であるか否かを判定する（ステップＳ１０２）。
【００９９】
PSR３１のプレーヤバージョンにより示されるバージョンナンバーが、プレイリスト（00001.mpls）のVersion＿numberにより示されるバージョンナンバー以上であれば（ステップＳ１０２でＹｅｓ）、プレイリスト（00001.mpls）の再生を再生制御部１０２に指示する。
【０１００】
PSR３１のプレーヤバージョンにより示されるバージョンナンバーが、プレイリスト（00001.mpls）のVersion＿numberにより示されるバージョンナンバーより小さければ（ステップＳ１０２でＮｏ）、Version＿numberが１．０または２．０のプレイリスト（00002.mpls）の再生を再生制御部１０２に指示する。
【０１０１】
また、プレイリストと同様に、クリップ情報についても、ＮＡＣに対応しているものと対応していないものとが、再生装置の再生能力に応じて切り替えられる。
＜再生制御部１０２＞
再生制御部１０２は、ＢＤ−ＲＯＭドライブ１０とシステムターゲットデコーダ３００とを制御して、ＡＶクリップの再生を制御する機能を持つ。例えば、プログラム実行部１０１から入力される再生命令に基づき、メモリ７０に格納されているプレイリスト情報を参照して、ＡＶクリップの再生処理を制御する。
【０１０２】
図１３は、再生制御部１０２によるプレイリスト再生手順を示すフローチャートである。
本フローチャートは、カレントPL情報(.mpls)の読み込みを行い(ステップＳ２０１)、その後、ステップＳ２０２〜ステップＳ２１０の処理を実行するというものである。ここでステップＳ２０２〜ステップＳ２１０は、ステップＳ２０９がYesになるまで、カレントPL情報を構成するそれぞれのPI情報について、ステップＳ２０３〜ステップＳ２１０の処理を繰り返すというループ処理を構成している。このループ処理において処理対象となるPlayItemを、PlayItem＃x(PI＃x)とよぶ。このPlayItem＃xは、カレントプレイリストの先頭のPlayItemに設定されることにより、初期化される(ステップＳ２０２)。上述したループ処理の終了要件は、このPlayItem＃xがカレントプレイリストの最後のPlayItemになることであり(ステップＳ２０９)、もし最後のPlayItemでなければ、カレントプレイリストにおける次のPlayItemがPlayItem＃xに設定される(ステップＳ２１０)。
【０１０３】
ループ処理において繰り返し実行されるステップＳ２０３〜ステップＳ２１０は、PlayItem＃xのClip＿information＿file＿nameで指定されるClip情報をメモリに読み込み(ステップＳ２０３)、PlayItem＃xのIn＿timeを、カレントClip情報のEPmapを用いて、Iピクチャアドレスuに変換し(ステップＳ２０４)、PlayItem＃xのOut＿timeを、カレントClip情報のEP＿mapを用いて、Iピクチャアドレスvに変換して(ステップＳ２０５)、これらの変換で得られたアドレスvの次のIピクチャを求めて、そのアドレスの1つ手前をアドレスwに設定し(ステップＳ２０７)、そうして算出されたアドレスwを用いて、IピクチャアドレスuからアドレスwまでのTSパケットの読み出しをBD-ROMドライブ１に命じるというものである(ステップＳ２０８)。
【０１０４】
一方、ビデオデコーダ等に対しては、カレントPLMarkのmark＿time＿stampからPlayItem＃xのOut＿timeまでの出力を命じる(ステップＳ２０６)。以上のステップＳ２０５〜ステップＳ２０８により、AVClipにおいて、PlayItem＃xにより指示されている部分の再生がなされることになる。
【０１０５】
その後、PlayItem＃xがカレントプレイリストの最後のPIであるかの判定がなされる(ステップＳ２０９)。
PlayItem＃xがカレントプレイリストの最後のPIでなければ、カレントプレイリストにおける次のPlayItemを、PlayItem＃xに設定して(ステップＳ２１０)、ステップＳ２０３に戻る。以上のステップＳ２０３〜ステップＳ２１０を繰り返することにより、プレイリストを構成するPIは順次再生されることになる。
【０１０６】
＜Procedure実行部１０３＞
Procedure実行部１０３は、あるPlayItem情報から別のPlayItem情報への切り換わりが生じた場合、又はストリームナンバーを切り換える旨の操作がユーザによりなされた場合、所定のストリーム選択プロシージャを実行して、PSR1に新たなストリームナンバーを書き込む。再生装置１０００は、PSR1に書き込まれたストリームナンバーに応じて、Primaryオーディオストリームを再生するので、かかるPSR1の設定を通じて、Primaryオーディオストリームが選択されることになる。
【０１０７】
PlayItem情報の切り換わり時に、ストリーム選択プロシージャを実行するのは、ES＿TableがPlayItem情報毎に存在するので、あるPlayItem情報においては再生可能であったPrimaryオーディオストリームが、別のPlayItem情報において再生不可能になることが有り得るからである。
【０１０８】
このProcedure実行部１０３により、PSR1は、図１４（ａ）に示すような状態遷移をなす。図１４（ａ）は、PSR1の設定値が取り得る状態遷移を示す図である。本図においてValidとは、PSR1の値が、Play ItemのES＿tableに記述されたstream＿entry数以下の番号になっていて、尚且つ、デコード可能であることを意味する。
【０１０９】
Invalidとは、PSR1の値が、0であるか、又は、Play ItemのES＿tableに記述されたstream＿entry数を上回る番号になっているか、または、Play ItemのES＿tableに記述されたstream＿entry数が1〜32の値であったとしても、デコードできない場合である。
【０１１０】
図１４（ａ）における破線枠は、状態遷移時にあたってPSRの値を決定する手順を模式的に示す。PSRの設定処理手順には、『Procedure when playback condition is changed』と、『Procedure when Stream change is requested』とがある。
【０１１１】
Procedure when playback condition is changedは、何等かの事象が再生装置に生じたため、再生装置の状態が変化した際に実行すべき処理手順を示す。
Procedure when Stream Change is requestedは、ユーザが何等かの切り換え(図１４（ａ）においてstream)を要求した際、実行すべき処理手順を示す。
【０１１２】
これら破線枠に示されるProcedure when playback condition is changed、Procedure when Stream change is requestedが、ストリーム選択プロシージャであり、後でフローチャートを交えて詳細に説明する。
【０１１３】
図１４（ａ）における矢印は、PSRが取り得る状態間の状態遷移を象徴的に示す。
状態遷移を意味する矢印に添えられた注釈は、各状態遷移のトリガとなるべき事象を意味する。つまり本図では、”Load Disc”、”Change a Stream”、”Start PlayList playback”、”Cross a PlayItem boundary”、”Terminate PlayList playback”というような事象が発生した際、PSR1の状態遷移がなされることになる。これらの記法を理解して図１４（ａ）を参照すれば、Invalid→Invalidの状態遷移時、Valid→Invalidの状態遷移時には、上述した処理手順は実行されていないことがわかる。これに対しInvalid→Valid間の状態遷移、Valid→Valid間の状態遷移は何れも破線枠を経由している。つまりPSR1をValidに設定するにあたって、上述したProcedure when playback condition is changed、Procedure when Stream change is requestedによりPSR1は設定されるのである。
【０１１４】
以降、状態遷移のトリガとなるべき事象について説明する。
『Load Disc』とは、再生装置にBD-ROMがローディングされたとの事象を意味する。PSR1は、かかるローディング時において、一旦不定値(0xFF)に設定されるのである。
【０１１５】
『Start PlayList playback』とは、PLに基づく再生処理が開始したとの事象を意味する。かかる事象が発生時において、Procedure when playback condition is changedが実行され、PSR1はValidに設定されることがわかる。
【０１１６】
『Terminate PlayList playback』とは、PLに基づく再生処理を終了したとの事象を意味する。かかる事象の発生時では、Procedure when playback condition is changedは実行されず、Invalidに移行していることがわかる。
【０１１７】
『ChangeXXX』とは、ユーザによるXXX(本図ではStream)の切り換え要求がなされたとの事象を意味する。PSR1がInvalidである場合に、かかる事象が発生すれば(図中のcj1)、PSR1はその要求通りの値に設定される。こうして設定された値がたとえ有効なストリームナンバーを示していたとしても、このPSR1の設定値はInvalidな値として取り扱われる。即ち、事象”ChangeXXX”による状態遷移では、InvalidであるPSRが、Validに変えることはない。
【０１１８】
一方、PSR1がValidである場合に、かかる事象Change a Streamが発生すれば(図中のcj2)、Procedure when Stream change is requestedが実行されて、新たな値がPSR1に設定される。ここでProcedure when Stream change is requestedの実行により設定される値は、ユーザが希望した値にならない場合も有り得る。何故なら、Procedure when Stream change is requestedは、無効な値を排除する機能を有しているからである。PSR1がValidにおいて、Change streamが発生した場合、ValidからInvalidに状態遷移することは有り得ない。PSR1がInvalidにならないよう、Procedure when Stream change is requested側で保証するからである。
【０１１９】
『Cross a PlayItem boundary』とは、あるPlay Itemの境界通過という事象を意味する。ここでPlay Itemの境界とは、連続する2つのPlay Itemのうち、先行する側の終端、後続する側の先端の狭間を意味する。PSR1がValidである場合において、かかる事象が発生すれば、Procedure when playback condition is changedが実行されることがわかる。そして、Procedure when playback condition is changedの実行後、PSR1の状態はValidに戻るか、Invalidに移行することが分かる。ES＿tableはPlay Item毎に存在しており、Play Itemが変われば、再生可能なエレメンタリストリームも変わってしまう。Play Itemの再生開始毎に、Procedure when playback condition is changeを実行してPlay Item毎に最適な設定値をPSR1に設定するというのが、この状態遷移の趣旨である。
【０１２０】
この状態遷移においてProcedure when playback condition is changedは、図１４（ｂ）のようになる。図１４（ｂ）は、Procedure when playback condition is changedの処理手順を示す図である。本処理手順は、ステップＳ３０１、ステップＳ３０２という2つの判定ステップの組合せで、PSR1の設定を行うものである。
【０１２１】
ステップＳ３０１は、ES＿tableにおけるstream＿entry数が0であるか否かの判定であり、もし0であればPSR1の値を維持する(ステップＳ３３０)。
ステップＳ３０２は、ES＿tableにおけるstream＿entry数が0ではない場合に、PSR1よりES＿tableのstream＿entry数が多く、尚且つ、条件(A)が真であるかを判定するものである。条件(A)とは、PSR1で特定されるPrimaryオーディオストリームを再生する能力が再生装置に存在することである。PSR1よりES＿tableのstream＿entry数が多く、尚且つ、条件(A)が真であれば（ステップＳ３０２でＹｅｓ）、PSR1を維持する(ステップＳ３０４)。
【０１２２】
PSR1の値がstream＿entry数より大きいか、或は条件(A)を満たさない場合は（ステップＳ３０２でＮｏ）、PSR1を再設定する(ステップＳ３０５)。
図１５は、PSR1の設定（ステップＳ３０５）の詳細な処理手順に示したフローチャートである。ステップＳ４０１、ステップＳ４０２は、全てのPrimaryオーディオストリームについてステップＳ４０３を繰り返すループ処理を形成している。このループ処理において、処理対象となる個々のPrimaryオーディオストリームを、Primaryオーディオストリームiという。ステップＳ４０４は、Primaryオーディオストリームiが、3つの条件(a)(b)(c)を満たすかのチェックを行う。
【０１２３】
条件(a)とは、Primaryオーディオストリームiを再生する能力が再生装置に存在することであり、これを満たすか否かの判定は、PSR15と、Primaryオーディオストリームiのcoding＿typeとの比較でなされる。
【０１２４】
条件(b)とは、Primaryオーディオストリームiの言語属性が再生装置の言語設定と同じであることであり、これを満たすか否かの判定は、ES＿tableに記述されたPrimaryオーディオストリームiのAudio＿language＿codeがPSR16の設定値と同じであるか否かの比較でなされる。
【０１２５】
条件(c)とは、Primaryオーディオストリームiのチャネル属性がサラウンドであり、これを再生する能力が再生装置に存在することである。これを満たすか否かの判定は、PSR15とPrimaryオーディオストリームiのpresentation＿type及びcoding＿typeとの比較でなされる。
【０１２６】
これらの複数の条件のうち、「Primaryオーディオストリームiがどれとどれを満たすか」、また「何個の条件を満たすか」という、満たすべき条件のパターンにより、本フローチャートでは、Primaryオーディオストリームに優先順位が付与される。
【０１２７】
以上の処理をPrimaryオーディオストリームの全てについて繰り返されれば、ステップＳ４０４〜ステップＳ４０８の処理が行われる。ステップＳ４０４は、条件(a)を満たすPrimaryオーディオストリームが存在しないかどうかの判定である。もし、条件(a)を満たすPrimaryオーディオストリームが存在しなければ（ステップＳ４０４でＮｏ）、不定値(0xFF)をPSR1に設定する(ステップＳ４０９)。
【０１２８】
ステップＳ４０５は、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在するかどうかの判定である。もし、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在すれば（ステップＳ４０５でＹｅｓ）、条件(a)(b)(c)を満たすPrimaryオーディオストリームの番号をPSR1に設定する(ステップＳ４１０)。
【０１２９】
ここで問題になるのが、条件(a)(b)(c)を満たすPrimaryオーディオストリームが複数存在する場合である。条件(a)〜条件(c)が全て満たされるので、同じ優先順位になってしまうので優劣を決めることができない。この場合ステップＳ４１０では、ES＿tableにおけるstream＿entryの順序に応じて、各ストリームにおける順位を定める。具体的には、コーデック属性−言語属性−チャネル属性が同じPrimaryオーディオストリームについては、再生装置は、ES＿tableにおけるstream＿entryの登録順序を参照し、最も登録が早いPrimaryオーディオストリームを選択する。
【０１３０】
ES＿tableにおける登録順序を変えることで、オーサリング担当者は再生時においてどのストリームを優先的に再生させ、どのストリームを後回しにするかという選択制御をオーサリング時に規定することができる。
【０１３１】
ステップＳ４０６は、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在しない場合、条件(a)(b)を満たすPrimaryオーディオストリームが存在するかどうかの判定である。もし、条件(a)(b)を満たすPrimaryオーディオストリームが存在すれば（ステップ４０６でＹｅｓ）、条件(a)(b)を満たすPrimaryオーディオストリームのうち、ES＿tableにおけるstream＿entryの登録順序が最も早いものをPSR1に設定する(ステップＳ４１１)。
【０１３２】
ステップＳ４０７では、条件(a)(b)(c)の全てを満たすPrimaryオーディオストリームが存在せず、さらに、条件(a)(b)を満たすPrimaryオーディオストリームも存在しない場合に、条件(a)(c)を満たすPrimaryオーディオストリームが存在するかどうかを判定する。もし、条件(a)(c)を満たすPrimaryオーディオストリームが存在すれば（ステップ４０７でＹｅｓ）、条件(a)(c)を満たすPrimaryオーディオストリームのうち、ES＿tableにおけるstream＿entryの登録順序が最も早いものをPSR1に設定する(ステップＳ４１２)。
【０１３３】
ステップＳ４０８は、条件(a)(b)(c)の全て、条件(a)(b)、及び条件(a)(c)を満たすPrimaryオーディオストリームが存在しない場合に、条件(a)を満たすPrimaryオーディオストリームが存在するかどうかの判定である。もし、条件(a)を満たすPrimaryオーディオストリームが存在すれば（ステップ４０８でＹｅｓ）、条件(a)を満たすPrimaryオーディオストリームのうち、ES＿tableにおけるstream＿entryの登録順序が最も早いものをPSR1に設定する(ステップＳ４１３)。
【０１３４】
以上がProcedure when playback condition is changedである。続いてProcedure when Stream change is requestedについて説明する。図１６は、ストリーム変化時におけるPSR1の設定手順を示すフローチャートである。本フローチャートと、図１４（ｂ）との違いは、図１４（ｂ）におけるPSR1の表記がXに置き換えられている点である。このXは、操作受付部１１０から出力されたユーザイベント情報、あるいはIGデコーダ３０４から出力されたボタンコマンドに基づく値である。
【０１３５】
本フローチャートにおけるステップＳ５０１は、ES＿tableのstream＿entry数がＸ以上であり、尚且つ、条件(A)が真であるかを判定するものである。条件(A)とは、PSR1で特定されるPrimaryオーディオストリームを再生する能力が再生装置に存在することであり、PSR15と、Primaryオーディオストリームのcodeig＿typeとの比較で判定される。もしXがこの条件を満たすなら（ステップＳ５０１でＹｅｓ）、PSR1にXを設定する(ステップＳ５０２)。
【０１３６】
もしXがstream＿entry数より大きいか、或は条件(A)を満たさない場合は（ステップＳ５０１でＮｏ）、Xが、0xFFであるか否かを判定する（ステップＳ５０３）。
XがOxFFでなければ（ステップＳ５０３でＮｏ）、ユーザが選択を意図するPrimaryオーディオストリームの番号は無効であると考えられるので、ユーザ操作に基づく値Xを無視し、PSR1の設定値を維持する(ステップＳ５０４)。
【０１３７】
もしXが0xFFであるなら（ステップＳ５０３でＹｅｓ）、PSR1を設定する(ステップＳ５０５)。このステップＳ５０５の処理手順は、図１５に示した処理手順と同一である(図１５のうち、ステップＳ４０４の判定はProcedure when Stream change is requestedでは必要ではない。何故ならProcedure when Stream change is requestedでは、条件(a)(b)(c)を満たすPrimaryオーディオストリームが1つも存在しない場合、ユーザが設定した値XをPSR1に設定せず、PSR1の設定値を維持するからである。)。
【０１３８】
＜NACに対応するオーディオストリームの選択方法＞
続いて、NACに対応するオーディオストリームを選択する方法について説明する。JARファイル（00001.jar）で定義されるBD-Jアプリケーションは、プレイリストが再生される際に実行されるべきプログラムであり、再生すべきオーディオストリームとして、ＮＡＣストリームを選択する操作をユーザから受け付けるためのメニューを再生装置に表示させて、NACオーディオストリーム設定機能を再生装置に実行させる。NACオーディオストリーム設定機能は、メニューに対する選択操作がユーザによってなされた場合、ＮＡＣストリームのストリームナンバーをPSR１に設定する機能である。
【０１３９】
図１７は、メニュー画面の一例を示す図である。ＮＡＣストリームを選択する操作をユーザから受け付けた場合、すなわち、「YES」ボタンが選択された場合には、PSR１にＮＡＣストリームのストリームナンバーを設定する。
【０１４０】
なお、NACオーディオストリーム設定機能と同様の内容であるNACオーディオストリーム設定コマンドを、ボタン情報のナビゲーションコマンドとしてボタン情報に組み込んでおけば、Interactive Graphicsストリームによって描画されたＮＡＣオーディオストリーム設定ボタンの確定操作に応じて、NACオーディオストリーム設定コマンドを再生装置に実行させることができる。したがって、HDMVモードにおいても、NACオーディオストリーム設定機能を実現することができる。
３．既存の再生装置によるオーディオストリーム選択の具体例
続いて、ＮＡＣに対応していない既存の再生装置が、ＢＤ−ＲＯＭに記憶されている、NACストリームを含む複数のオーディオストリームから、どのように再生すべきオーディオストリームを選択するのかを具定例を用いて説明する。ただし、この再生装置は、ＮＡＣストリームをデコードできると誤って判断してしまうものとする。
【０１４１】
図１８（ａ）は、再生装置のPlayer Capability、言語設定、及びSurround Capabilityを示す。図１８（ａ）に示すように、既存の再生装置は、ＮＡＣストリームをデコードする能力は持っていないが、LPCMのデコード能力や、AC-3サラウンド音声の出力能力は具備しており、日本語音声を示すように言語設定がなされているものとする。
【０１４２】
かかる再生装置に対し、図１８（ｂ）に示すES＿tableが記録されたBD-ROMがローディングされたとする。このES＿tableには、図１８（ｃ）に示すように6つのオーディオストリームのstream＿entry-stream＿attributesが記述されている。
【０１４３】
まず、再生装置では、図１８（ｂ）に示すES＿tableに基づいて、各オーディオストリームが、条件(a)、条件(b)、及び条件(c)を具備しているかどうかのチェックがなされる。ここで1つ目のAudio stream1は、3つの条件のうち、条件(a)しか満たさない。2つ目のAudio stream2は、3つの条件のうち、条件(a)、条件(c)を満たす。３つ目のAudio stream3は、条件(c)を満たすだけであり、条件(a)を満たさないので、通常は選択対象にならない。ただし、ここでは既存の再生装置が、ＮＡＣストリームをデコードできると誤って判断してしまうという前提であるので、３つ目のAudio stream3については、条件(a)、条件(c)を満たすものと判定され、Audio stream3も選択対象となり得る。４つ目のAudio stream4については、条件(a)、条件(ｂ)を満たす。５つ目のAudio stream5については、条件(a)、条件(ｂ)、条件(c)を満たす。６つ目のAudio stream6については、条件(ｂ)、条件(c)を満たす。さらに、上述のように、既存の再生装置は、ＮＡＣストリームをデコードできると誤って判断してしまうという前提であるので、６つ目のAudio stream６については、条件(a)、条件(ｂ)、条件(c)を満たすものと判定される。
【０１４４】
各オーディオストリームについての条件具備が明らかになったので、条件(a)〜条件(c)の全てを満たす5つ目及び６つ目のオーディオストリームに最高順位が付与される。最高順位が付与されたオーディオストリームが複数存在する場合には、先に登録されたオーディオストリームが選択されるので、ここでは、Audio stream5が選択される。
【０１４５】
このように、たとえ既存の再生装置が、ＮＡＣストリームをデコードできると誤って判断してしまったとしても、当該オーディオストリームを選択することはない。
以上のように本実施の形態によれば、ＮＡＣに対応しているクリップ情報及びＡＶデータと、ＮＡＣに対応していないクリップ情報及びＡＶデータとをＢＤ−ＲＯＭ１に記録しておき、再生装置の再生能力に応じて、プレイリスト情報、クリップ情報、及びＡＶデータを選択することで、ＮＡＣに対応している再生機器では、ＮＡＣに対応したプレイリスト及びクリップ情報を用いてＮＡＣを含むＡＶデータが再生され、ＮＡＣに対応していない再生機器では、ＮＡＣを含まないプレイリスト及びクリップ情報を用いて、ＮＡＣを含まないＡＶデータが再生される。したがって、ＮＡＣストリームがＡＶデータに含まれることによる、ＮＡＣに対応していない再生装置での再生不具合を回避することができる。
【０１４６】
また、ＮＡＣに対応していない既存の再生装置が、ＮＡＣに対応したプレイリストを誤って再生してしまった場合であって、再生すべきオーディオストリームを選択する際、ＮＡＣを、条件Ａを満たすものと誤って判定し、ＮＡＣストリームの優先順位が最も高くなったとしても、再生すべきオーディオストリームとしてＮＡＣストリームを選択することはない。
【０１４７】
ＮＡＣストリームの直前に登録されている既存符号化ストリームも、言語コード及びチャネル数がＮＡＣストリームと等しく、かつ、既存符号化ストリームは、既存の再生装置でデコードすることが可能であるため、ＮＡＣストリームと同様に優先順位が最も高くなり、この場合には、先に登録されたストリームナンバーに対応するオーディオストリーム、すなわち、既存符号化ストリームが選択されるからである。
【０１４８】
また、言語属性として、audio＿language＿codeに登録されている言語が、例えば中国語である場合、audio＿language＿codeとして、ISO 639-2/Tには中国語として1種類しか定義されていないが、実際の中国語には北京語、広東語、上海語、福建語、台湾語などの種類がある。したがって、例えば、ＮＡＣで符号化された、広東語、上海語、及び福建語の3種類の中国語オーディオストリームを１つのＡＶストリームに入れる場合、audio＿language＿codeとしては「中国語」として同じ値が設定されるため、audio＿language＿codeに基づいて各々を区別することができない。
【０１４９】
本実施の形態によれば、ES＿tableにおいて、ＮＡＣストリームに対して、必ずペアになるように、既存符号化ストリームが登録されているので、どのＮＡＣオーディオストリームが、どの既存オーディオストリームと対応しているのかが容易に判別できる。
【０１５０】
また、Ｓ／ＰＤＩＦやＨＤＭＩ等のインタフェース規格が、ＮＡＣに対応していない場合には、再生装置は、ＮＡＣストリームを外部装置にパススルー出力することができない。したがって、ＮＡＣストリームをデジタル形式で出力するには、当該オーディオストリームをデコードした後、既存のインタフェース規格で伝送可能な形式（例えば、2ｃｈのＬＰＣＭ等）に変換して出力する必要がある。つまり、ＮＡＣストリームのチャネル数が、例えば、５．１ｃｈであったとしても、Ｓ／ＰＤＩＦによるデジタル出力においては、２ｃｈのＬＰＣＭしか出力できないことになる。
【０１５１】
本実施の形態によれば、ＮＡＣストリームのストリームエントリーと、当該ストリームエントリーの直前に登録されている、既存の符号化形式により符号化されているオーディオストリームのストリームエントリーの優先順位が等しい場合には、既存の符号化形式により符号化されているオーディオストリームが選択されるので、インタフェース規格が、ＮＡＣに対応していない場合であっても、５．１ｃｈ等の音声再生を実現することができる。
（変形例）
ＢＤ−ＲＯＭ１は、ＮＡＣストリームが多重化されたデジタルストリームを格納しているファイル（00001.m2ts）と、ＮＡＣストリームが多重化されていないデジタルストリームを格納しているファイル（00002.m2ts）とを記録している。
【０１５２】
しかしながら、ファイル（00001.m2ts）及びファイル（00002.m2ts）において、記憶しているデジタルストリームにＮＡＣストリームが多重化されているか否か以外に差がない場合、すなわち、ＮＡＣストリーム以外のオーディオストリームやビデオストリーム等が同一である場合には、ファイル（00001.m2ts）及びファイル（00002.m2ts）の両方を記録することで、ＢＤ−ＲＯＭ１に記録すべきＡＶデータのサイズを不必要に大きくしてしまう。これを解決するために、以下、Ｖｉｒｔｕａｌ  Ｐａｃｋａｇｅ機能を用いた変形例について説明する。
【０１５３】
バーチャルパッケージとは、ＢＤ−ＲＯＭの記録内容に、再生装置１０００内のローカルストレージ（例えば、ＨＤＤ）の記録内容を組み合わせて、ＢＤ−ＲＯＭ１に記録されていないデータを、あたかも記録されているように扱う技術である。
【０１５４】
図１９は、ＢＤ−ＲＯＭ１ａ及びＨＤＤ１ｂのデータ構造を示す図である。
ＢＤ−ＲＯＭ１とＢＤ−ＲＯＭ１ａとの差異は、ファイル名が“00002”のファイルが格納されているか否かである。ＢＤ−ＲＯＭ１ａにおいては、ＢＤＭＶディレクトリ直下の各ディレクトリには、ファイル名が“00001”のファイルが格納されている。また、ファイル（00001.m2ts）に格納されているデジタルストリームは、ＮＡＣストリームを含んでおり、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））は、ファイル（00001.m2ts）に対応したファイルであり、ＮＡＣストリームに関する情報を含むファイルである。
【０１５５】
一方、ＨＤＤ１ｂにおいて、ＲＯＯＴディレクトリの配下には、「organization」というサブディレクトリがあり、その配下に「disc＃1」というサブディレクトリがある。「organization」ディレクトリとは、映画作品の特定のプロバイダに割り当てられたディレクトリである。「disc＃1」ディレクトリは、プロバイダが提供したＢＤ−ＲＯＭのそれぞれに割り当てられたディレクトリである。
【０１５６】
「disc＃1」には、ファイル（00001.m2ts）に対応したファイルであり、ＮＡＣストリームに関する情報を含まないファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））、並びにマージ管理情報を格納しているマージ管理情報ファイルが格納されている。
【０１５７】
マージ管理情報は、ＨＤＤ１ｂのdisc＃1ディレクトリに存在するファイルのうち、Virtual Packageを構成するものを一意に示しておく情報である。マージ管理情報ファイルは、Virtual Packageを構成するＨＤＤ１ｂ上の各ファイルの格納位置情報からなる。各格納位置情報は、Virtual Package として各ファイルにアクセスするための“識別子”と、ＨＤＤ１ｂにおけるそのファイルの格納位置を示す“ファイルパス”とからなる。
【０１５８】
どのようにして、ＮＡＣに対応しているファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））とＮＡＣに対応していないファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））とを動的に切り替えるのかを説明する。
【０１５９】
インデックステーブルには、ディスクが再生装置に挿入された際に最初に起動されるＦＩＲＳＴ  ＰＬＡＹＢＡＣＫ ＴＩＴＬＥと呼ばれる特殊なタイトルが存在する。
ＦＩＲＳＴ  ＰＬＡＹＢＡＣＫ ＴＩＴＬＥが呼び出すBD-Jアプリケーション（不図示）が、例えば、PSR15のPlayer capabilityにおいてＮＡＣストリームをデコード可能か否かを示すフィールド値に基づいて、再生装置が、ＮＡＣストリームをデコード可能か否か判定する。
【０１６０】
ＮＡＣストリームをデコード可能であると判定すれば、ＢＤ−ＲＯＭ上に記録されているファイル（00001.m2ts）、ファイル（00001.mpls（with NAC））、及びファイル（00001.clip（with NAC））等を用いて再生を開始する。
【０１６１】
ＮＡＣストリームをデコードできないと判定すれば、BD-Jアプリケーションは、マージ管理情報に基づいて、Virtual Packageを構築する。ここで、ファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））と、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））とは、ファイル名が同一であるため、Virtual Package としてファイル（00001.mpls（without NAC））にアクセスするための“識別子”に示されるディレクトリと、ファイル（00001.mpls（with NAC））のディレクトリとが同一であれば、ファイル（00001.mpls（without NAC））がファイル（00001.mpls（without NAC））に置き換えられる。ファイル（00001.clip（without NAC））及びファイル（00001.clip（with NAC））についても同様である。
【０１６２】
このように、BD-Jアプリケーションは、再生装置がNACに対応していなければ、Virtual Packageを構築することで、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））を、ファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））に置き換えた上で再生を開始する。
【０１６３】
ＮＡＣストリームをデコード可能である再生機器では、ＮＡＣに対応したプレイリストやクリップ情報を用いて再生を行い、ＮＡＣストリームをデコードできない再生装置では、再生開始前に、ファイル（00001.mpls（with NAC））及びファイル（00001.clip（with NAC））を、ファイル（00001.mpls（without NAC））及びファイル（00001.clip（without NAC））に置き換えることによって、BD-ROM１ａがＮＡＣに関する情報を含まないプレイリストやクリップ情報を有していなくても、当該プレイリストや当該クリップ情報を用いて再生を行うことが可能となる。
【０１６４】
したがって、ＢＤ−ＲＯＭ１ａに記録するAVデータ量を削減しつつ、ＮＡＣに対応していない再生装置で、ＮＡＣストリームを含むＡＶデータを記録しているＢＤ−ＲＯＭ１ａを再生する際の互換性問題を回避することができる。
【０１６５】
なお、ローカルストレージとしてＨＤＤ１ｂを例に挙げて説明したが、ＨＤＤ１ｂに限らず、例えば、ＢＤ−ＲＯＭ１ａのＢＤＭＶディレクトリ以外のディレクトリをローカルストレージとしてもよい。
【０１６６】
また、Ｖｉｒｔｕａｌ  Ｐａｃｋａｇｅを構築するためのBD-JアプリケーションをＦｉｒｓｔ  Ｐｌａｙｂａｃｋ  Ｔｉｔｌｅから実行したが、これに限定されるものではなく、Ｆｉｒｓｔ  Ｐｌａｙｂａｃｋ  Ｔｉｔｌｅ以外のタイトルから実行し、Ｖｉｒｔｕａｌ  Ｐａｃｋａｇｅを構築してもよい。
（実施の形態２）
続いて、デジタルストリームがSecondaryオーディオストリームを含む場合について説明する。図２０は、本実施の形態において、ＡＶクリップにどのようなエレメンタリストリームが多重化されているかを示す図である。
【０１６７】
本図に示すように、ＡＶクリップには、0x1011のPIDをもつ高画質ビデオストリーム、0x1100から0x110FまでのPIDをもつPrimaryオーディオストリーム、0x1110から0x111FまでのPIDをもつSecondaryオーディオストリーム、0x1200から0x121FまでのPIDをもつPGストリーム、及び0x1400から0x141FまでのPIDをもつIGストリームが多重化されている。
【０１６８】
続いて、本実施の形態における『ES＿table』の詳細について説明する。
図２１は、ES＿tableの内部構成を示す図である。基本的には、図５で示したES＿tableと同一である。異なる点は、stream＿entry-stream＿attributes毎にComb＿info＿Sequence＿audio＿Primary＿audioを含む点である。
【０１６９】
図２２（ａ）は、Comb＿info＿Secondary＿audio＿Primary＿audioの内部構成を示す図である。Comb＿info＿Secondary＿audio＿Primary＿audioは、組合せ可能なPrimaryオーディオストリームの総数を示すnumber＿of＿primary＿audio＿stream＿ref＿entriesと、再生時に組合せることができるPrimaryオーディオストリームのストリームナンバーを示すPrimary＿audio＿stream＿id＿ref[0]〜[n]とからなる。
【０１７０】
このように再生可能なSecondaryオーディオストリーム毎に設定されるComb＿info＿Secondary＿audio＿Primary＿audioは、そのSecondaryオーディオストリームの再生出力をミキシングすることができる1つ以上のPrimaryオーディオストリームを一意に指定する。これにより、所定の属性を有しているようなPrimaryオーディオストリームの再生時においては、Secondaryオーディオストリームをミキシングさせず、それ以外の属性を有しているようなPrimaryオーディオストリームの再生時においてのみ、Secondaryオーディオストリームをミキシングするというような、音声属性に応じた、ミキシングの可否を、オーサリング時に設定しておくことができる。
【０１７１】
ここで、問題となるのは、Primary＿audio＿stream＿id＿refの登録順序である。最初に登録するPrimary＿audio＿stream＿id＿refは、既存符号化ストリームのストリームナンバーを示すPrimary＿audio＿stream＿id＿refとする。ＮＡＣストリームのストリームナンバーが最初に登録されていると、Secondaryオーディオストリームの再生出力のミキシング対象として、ＮＡＣストリームが選択されてしまうからである。
【０１７２】
図２２（ｂ）は、Comb＿info＿Secondary＿audio＿Primary＿audioの一例を示す図である。図２１に示すように、ＡＣ３で符号化されているストリームナンバー00000001のオーディオストリームが、最初に登録されており、その後、ＮＡＣで符号化されているストリームナンバー00000010のオーディオストリームが登録されている。
（実施の形態３）
本実施の形態では、本発明にかかる記録装置および記録方法を実施するための形態について説明する。
【０１７３】
記録装置は、映画コンテンツの頒布のために制作スタジオに設置され、ＭＰＥＧ規格に従い圧縮符号化されたデジタルストリーム及びどのように映画タイトルを再生するかを記したシナリオを生成し、これらのデータを含むＢＤ−ＲＯＭ向けのボリュームイメージを生成する。記録装置は、実施の形態１または２で説明した記録媒体を生成する。
【０１７４】
図２３は、記録装置３０００の内部構成を示すブロック図である。本図に示すように、記録装置３０００は、ビデオエンコーダ３００１、素材制作部３００２、シナリオ生成部３００３、ＢＤプログラム制作部３００４、多重化処理部３００５、及びフォーマット処理部３００６を含んで構成される。
【０１７５】
ビデオエンコーダ３００１は、映像の非圧縮のビットマップなどの画像イメージを、ＭＰＥＧ４−ＡＶＣやＭＰＥＧ２などの圧縮方式に従い符号化し、ビデオストリームを作成する。
【０１７６】
素材制作部３００２は、オーディオストリーム、プレゼンテーショングラフィックスストリーム、及びインタラクティブグラフィックストリーム等の各ストリームを作成する。より詳細には、非圧縮のＬｉｎｅａｒＰＣＭ音声等を、ＡＣ３、ＤＴＳ、ＮＡＣ等の符号化方式に従い符号化することでオーディオストリームを作成する。
【０１７７】
ＮＡＣストリームを作成する場合には、当該ＮＡＣストリームと同一の音源からエンコードした既存符号化ストリームも併せて作成する。その際、ＮＡＣストリームと既存符号化ストリームとの言語、チャネル数を同一にしておく。
【０１７８】
また、字幕イメージ、表示タイミング、及びフェードイン／フェードアウト等の字幕の効果を含む字幕情報ファイルを基にして、ＢＤ−ＲＯＭ規格に準拠した字幕ストリームのフォーマットであるプレゼンテーショングラフィックスストリームを作成する。
【０１７９】
さらに、メニューに使うビットマップイメージと、メニューに配置されるボタンの遷移や表示効果を記載したメニューファイルとを基にして、ＢＤ−ＲＯＭ規格に準拠したメニュー画面のフォーマットであるインタラクティブグラフィックスストリームを作成する。
【０１８０】
シナリオ生成部３００３は、素材制作部３００２で作成した各ストリームの情報やユーザ操作にしたがって、ＢＤ−ＲＯＭ規格に準拠したフォーマットでシナリオを作成する。ここで言うシナリオは、インデックスファイル、ムービーオブジェクトファイル、及びプレイリストファイル等のファイルである。
【０１８１】
ここで、ES＿tableのstream＿attributes()のシンタックスについて説明する。図２４は、stream＿attributes()のシンタックスを示す図である。このシンタックスに基づいて図７で示した各stream＿attributes()は生成される。stream＿attributesのcoding＿typeは、各エレメンタリストリームがどのようなエレメンタリストリームであるか、つまりビデオストリームであればＭＰＥＧ４−ＡＶＣ、ＭＰＥＧ２、ＶＣ１のいずれの方式で圧縮されているか、オーディオストリームであれば、ＡＣ３、ＤＴＳ、ＬＰＣＭ、及びＮＡＣのどの方式で圧縮されているかを示している。
【０１８２】
coding＿typeがＭＰＥＧ４−ＡＶＣ、ＭＰＥＧ２、ＶＣ１の何れかであれば、coding＿typeに続くフィールドとして、video＿format及びframe＿rateを持つ。
coding＿typeがＡＣ３、ＤＴＳ、ＬＰＣＭ、及びＮＡＣの何れかであれば、coding＿typeに続くフィールドとして、presentation＿type、sampling＿frequency、audio＿language＿codeを持つ。
【０１８３】
このシンタックスでは、ＮＡＣが新たに定義されている。したがって、NACに対応した再生装置では、ＮＡＣに続くフィールドを適宜読み取ってNACストリームを再生することができる。
【０１８４】
しかしながら、このフィールド構成において、既に定義されているcoding＿typeであれば、coding＿typeに応じて続くフィールドを適宜読み取って再生が可能であるが、例えば、今回定義したＮＡＣ以外に別のＮＡＣ（以下、「未定義ＮＡＣ」という）が今後さらに追加された場合、フィールドの構成上は、coding＿typeとして未定義ＮＡＣを登録すればよいが、未定義ＮＡＣを認識しない再生装置では、coding＿typeとして未定義ＮＡＣが記述されている場合、stream＿attributesのこれ以上の解析が困難になるという問題がある。
【０１８５】
そこで、図２４に示すように、未定義ＮＡＣが設定されている場合には、paddingとしてフィールドを解釈できるようにしている。つまり未定義ＮＡＣに対応していない再生装置ではcoding＿typeとして未定義ＮＡＣが設定されている場合、不明なcoding＿typeとして扱われるため、stream＿attributes＿lengthで記載されているフィールド長にしたがって、paddingデータとして読み取る。
【０１８６】
このように、今後、新規のビデオ圧縮技術やオーディオ圧縮技術が登場した際には、paddingフィールドを設定しておくことで、再生装置が未知のcoding＿typeを見つけた際にstream＿attributesの解析を停止することを防ぐことができる。
【０１８７】
また、ES＿tableを生成する際、既存符号化ストリームのstream＿entryをES＿tableに登録した直後に、既存符号化ストリームと同一の音源からエンコードされたＮＡＣストリームのstream＿entryを登録する。ＮＡＣストリームの言語コード及びチャネル数と、既存符号化ストリームの言語コード及びチャネル数とは同一に設定される。
【０１８８】
図２３に戻って、シナリオ生成部３００３は、多重化処理を実現するための、各ＡＶクリップがどのストリームから構成されるかを記述したパラメータファイルを作成する。ここで、作成されるインデックスファイル、ムービーオブジェクトファイル、及びプレイリストファイル等のファイルは、実施の形態１または２で説明したデータ構造となる。
【０１８９】
ＢＤプログラム制作部３００４は、ＢＤプログラムをプログラミングする。具体的には、ＧＵＩ等のユーザインタフェースを通じて、ユーザからの要求に従って、ＢＤプログラムのソースコードを作成することでＢＤプログラムを作成する。ここで、作成されるＢＤプログラムは、例えば、NACオーディオストリーム設定機能を実現するＢＤプログラム等、実施の形態１で説明したプログラムである。
【０１９０】
多重化処理部３００５は、ＢＤ−ＲＯＭシナリオデータに記述されているビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、及びインタラクティブグラフィックスストリーム等の複数のストリームを多重化して、ＭＰＥＧ２−ＴＳ形式のＡＶクリップを作成する。
【０１９１】
また、ＡＶクリップの作成の際、ＡＶクリップと対になるクリップ情報ファイルも同時に作成する。クリップ情報ファイルの構成は、実施の形態１で説明したデータ構造となる。
【０１９２】
ここで、stream＿code＿inf()のシンタックスについて説明する。図２５は、stream＿code＿inf()のシンタックスを示す図である。このシンタックスに基づいてstream＿code＿inf()は生成される。stream＿code＿info()は、stream＿code＿info()のフィールド長を示すstream＿code＿info＿length、登録されるエレメンタリストリームの種類を示すcoding＿type、及び各coding＿typeに応じた属性情報を登録するフィールドから構成される。
【０１９３】
ここでも、stream＿attributes()のシンタックスと同様に、ＮＡＣを新たに定義し、未定義ＮＡＣが追加された場合には、paddingとしてフィールドを解釈できるようにしている。
【０１９４】
図２３に戻って、フォーマット処理部３００６は、シナリオ生成部３００３で生成したＢＤ−ＲＯＭシナリオデータと、ＢＤプログラム制作部３００４で制作したＢＤプログラムを格納したＢＤプログラムファイルと、多重化処理部３００５で生成したＡＶクリップやクリップ情報ファイルとを、ＢＤ−ＲＯＭ規格に準拠したフォーマットで配置し、ＢＤ−ＲＯＭ規格に準拠したファイルシステムであるＵＤＦのフォーマットでディスクイメージを作成する。生成したディスクイメージをＢＤ−ＲＯＭプレス用データに変換し、このデータに対してプレス工程を行うことで、ＢＤ−ＲＯＭの製造が可能となる。
＜補足＞
以上、本発明に係る記録媒体について、実施の形態に基づいて説明したが、本発明は上記実施の形態に限られないことは勿論である。
（１）ここでは、ＮＡＣがＤＲＡである場合において、ＤＲＡの演算量を減少する方法について説明する。ＤＲＡは、中国で規格化が進められてきたオーディオ圧縮方式の１つであり、中国においてはヘッドフォンステレオやカラオケ機器などの一部の製品での導入が予定されている。
【０１９５】
すでに規格に含まれているオーディオコーデックに新たにＤＲＡを追加するに当たっては、ＡＣ３やＤＴＳと比較して、演算量をそれらと同等以下に抑えることが望ましい。
ＤＲＡの演算量算出方法に関して具体的に説明する。ＤＲＡの演算量は、(Fs x Ch x nCtr)で示される値が大きいほど増加する。ここで、Ｆｓは、オーディオ信号のサンプリング周波数であり、Ｃｈは、オーディオ信号のチャンネル数であり、nCtrは、例外処理回数である。
【０１９６】
nCtrに関して詳細を説明する。ＤＲＡにおいては、様々なフィールドはハフマン符号を用いることでデータ量の圧縮が図られている。図２６は、ハフマン符号化された値(H)とフィールド値との対応を示すテーブルの一例を示す。図２６に示すように、圧縮すべき対象フィールド（X）がアルファベットＡからＺであるとすると、ＡからＤまではハフマン符号化された値(H)がそれぞれ0b、01b、0010b、0011bと定義され、ＡからＤ以外のアルファベットに関しては、00000bとしてまとめて定義されている。つまり、あるフィールドがＡからＤまでの値を持つ時には、1対1で対応するハフマン符号が存在するが、それ以外の場合は、ハフマン符号として00000bで例外として定義している。
【０１９７】
ＤＲＡを含む多くの圧縮方式においては、Xとして出現確率が高い値に対しては、1対1でハフマン符号が割り当てられているが、出現確率が低い値（今回の例ではＥからＺのアルファベット）に対しては、別処理（例外処理）でＸの値を算出することが多い。
【０１９８】
図２７は、デコード手順を示す図である。ハフマン符号の値（H）を図２６のテーブルに従ってデコードし（HuffDec）、Valueを得る（ステップＳ７０１）。次に、Valueが例外となる値（Other Alphabet）かどうかを判定し（ステップＳ７０２）、例外でない値であると判定すれば（ステップＳ７０２でＮｏ）、ハフマンデコードの結果得られた値Valueが、Xとなる(ステップＳ７０３)。
【０１９９】
例外となる値であると判定すれば（ステップＳ７０２でＹｅｓ）、例外処理を実行することでＸを算出する（ステップＳ７０４）。
演算量を考える上で重要なのは、ハフマンデコードで通常処理される値、つまり今回の例においては、Filed Value(X)がAからDである場合には、図２６で示されるテーブルを参照して、比較的少ない処理量でXの値を得ることができるのに対して、Filed Value(X)が例外的な値、つまりOther Alphabet(ハフマン符号化された値が00000b)である場合には、例外処理が発生し、通常、この例外処理に要する演算量は、テーブルを用いた処理量より大きい。つまり、nCtrで示される例外処理の回数を制限することが、ＤＲＡの演算量を制限するためには望ましい。したがって、ＤＲＡの演算量を一定以下にするために、nCtr の値を一定以下になるよう設定するか、あるいはCh数やサンプリング周波数に依存する処理量の増加も鑑みて、(Fs x Ch x nCtr)の値を一定以下になるよう設定することが望ましい。
（２）続いて、ＤＲＡを導入した際に、ＢＤ−ＲＯＭ規格で規定されているシームレス接続点において生じる課題と解決策について説明する。
【０２００】
図２８は、ＢＤ−ＲＯＭ規格で、２つのＡＶデータを連続して再生する（シームレスに再生する）際の、Ｖｉｄｅｏアクセスユニットと、Ａｕｄｉｏアクセスユニットとの関係を示した図である。図２８において、ＴＳ１はシームレスに接続される2本のＡＶデータの1本目のＡＶデータ、ＴＳ２は1本目のＡＶデータに引き続いてシームレス再生される2本目のＡＶデータであり、Ｖｉｄｅｏの表示順、つまりＰＴＳ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ  Ｓｔａｍｐ）の順にアクセスユニットを並べている。例えば、２４Ｐのビデオであれば、１つのアクセスユニットは１／２４秒を示している。これに対して、Ａｕｄｉｏのアクセスユニットは、１つのアクセスユニットにおける時間間隔がＶｉｄｅｏと異なるため、Ｖｉｄｅｏの接続点（Ｃｏｎｎｅｃｔｉｏｎ  ｐｏｉｎｔ）を跨ぐようにアクセスユニットが配置される。
【０２０１】
ここで、ＢＤ−ＲＯＭ規格においては、Ｃｏｎｎｅｃｔｉｏｎ  ｐｏｉｎｔにおいて、ＴＳ１のオーディオのアクセスユニットと、ＴＳ２のオーディオのアクセスユニットが、時間軸上で重なることが許されている（ Ａｕｄｉｏ  ｏｖｅｒｌａｐ）。
【０２０２】
しかしながら、この接続点では、再生装置の実装によっては、例えば、ＴＳ１の最後のＡｕｄｉｏのアクセスユニットと、ＴＳ２の最初のアクセスユニットとを同時にデコードする必要が生じ、接続点における処理量が増加する可能性がある。
【０２０３】
ＤＲＡにおいて、その演算量は、(Fs x Ch x nCts)で算出されるが、Ｃｏｎｎｅｃｔｉｏｎ  ｐｏｉｎｔにおける演算量の増大を回避するために、nCtr の値か、あるいは(Fs x Ch x nCtr)を規定値以下に設定することが望ましい。例えば、シームレス地点でオーディオアクセスユニットのTS1及びTS2がオーバーラップしている部分においては、オーバーラップしていない部分でのnCtr、あるいは(Fs x Ch x nCts)の半分になるよう設定する。また、TS1のオーバーラップしているオーディオアクセスユニットのnCtr、あるいは(Fs x Ch x nCts)の値と、TS2でオーバーラップしているオーディオアクセスユニットのnCtr、あるいは(Fs x Ch x nCts)の合計が一定値以下になるよう設定してもよい。
（３）上記実施の形態では、再生装置１０００におけるＰＳＲ１５のPlayer capabilityにNAC Capabilityとして、DRAが再生可能かどうかを示すフィールドDRA Capabilityを新たに定義したが、これに限定されず、NAC Capabilityは、ＮＡＣに関する再生可能／不可能に関するものであればよい。例えば、ＮＡＣとして４８ｋＨｚと９６ｋＨｚとが存在する場合、それぞれの周波数に対して再生可能かどうかを示すものであってもよいし、２ｃｈの再生だけに対応しているのか、あるいはマルチｃｈの再生に対応しているのかを示すものであってもよい。
（４）上記実施の形態では、ES＿tableにおいて、ＮＡＣストリームと対応する既存符号化ストリームとがペアになって登録されていたが、ＮＡＣの種類が複数ある場合には、ペアを構成する第一のＮＡＣで符号化された第一ＮＡＣストリームの直後に、第二のＮＡＣで符号化された第二ＮＡＣストリームを登録するとしてもよい。第一のＮＡＣストリーム及び第二のＮＡＣストリームは、同一の音源からエンコードされ、言語コード及びチャネル数も同一であることが望ましい。
【０２０４】
上記実施の形態及び上記補足をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【０２０５】
本発明は、ＮＡＣで符号化されたオーディオストリームが記録されている記録媒体に広く適用可能である。
【符号の説明】
【０２０６】
１      BD-ROM
１０    ＢＤ‐ＲＯＭドライブ
２０    リードバッファ
３００  システムターゲットデコーダ
３０１  デマルチプレクサ
３０２  ＡＴＣ生成部
３０３  ＳＴＣ生成部
３０４  インタラクティブグラフィックスプレーンデコーダ
３０５  インタラクティブグラフィックスプレーン
３０６  プレゼンテーショングラフィックスデコーダ
３０７  プレゼンテーショングラフィックスプレーン
３０８  ビデオデコーダ
３０９  ビデオプレーン
３１０  JPEGデコーダ
３１１  Stillプレーン
３１２  スイッチ
３１３  オーディオデコーダ
４０    プレーン加算部
５０    エンコーダ
６０    Ｄ／Ａコンバータ
７０    メモリ
８０    ＰＩＤ変換部
９０    ＰＳＲセット
１００  コントローラ
１０１  プログラム実行部
１０２  再生制御部
１０３  Procedure実行部
１０４  ATC/STC制御部
１１０  操作受付部
１２０  HDMI送受信部
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
一以上のプレイリスト情報が記録された記録媒体であって、
各プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、
各ストリームナンバーテーブルは、複数のオーディオストリームのそれぞれに対応する、複数のストリームエントリーを有し、
各ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、
前記複数のオーディオストリームの符号化方式には、オプション方式のものと、マンダトリ方式のものとがあり、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式であり、
第一のプレイリスト情報に含まれる第一のストリームナンバーテーブルにおいて、オプション方式で符号化されたオーディオストリームのストリームエントリーは、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーの直後に登録されており、
前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一である
ことを特徴とする記録媒体。
【請求項２】
前記複数のオーディオストリームには、プライマリオーディオストリームとセカンダリオーディオストリームとがあり、
各セカンダリオーディオストリームのストリームエントリーには、組み合わせ情報が対応付けられており、
組み合わせ情報は、一以上のプライマリオーディオストリームのストリームナンバーを示し、
組み合わせ情報にストリームナンバーが示されるプライマリオーディオストリームは、その再生出力をセカンダリオーディオストリームの再生出力とミキシングすることができるプライマリオーディオストリームであり、
各セカンダリオーディオストリームのストリームエントリーに対応付けられた組み合わせ情報において、前記一以上のプライマリオーディオストリームのストリームナンバーの登録順位は、当該セカンダリオーディオストリームと同期して再生すべきプライマリオーディオストリームを再生装置が選択するにあたっての、各プライマリオーディオストリームの優先順位を示し、
それぞれの組み合わせ情報において、マンダトリ方式で符号化されたプライマリオーディオストリームのストリームナンバーが先頭に登録されている
請求項１記載の記録媒体。
【請求項３】
前記記録媒体は、さらに、プレイリスト選択プログラムを記憶しており、
第二のプレイリスト情報に含まれる第二のストリームナンバーテーブルは、マンダトリ方式で符号化されたオーディオストリームのそれぞれに対応する、複数のストリームエントリーを有しており、
それぞれのプレイリスト情報は、バージョンナンバーを含み、
プレイリスト選択プログラムは、再生装置がプレイリスト再生を実行する際に実行されるべきプログラムであり、再生装置に設定されているバージョンナンバーが前記第一のプレイリスト情報に含まれるバージョンナンバー以上である場合に、前記第一のプレイリスト情報に基づくプレイリスト再生を実行させる
請求項１記載の記録媒体。
【請求項４】
前記記録媒体は、
前記第一のストリームナンバーテーブルに登録されている各オーディオストリームの属性情報を示す第一のオーディオストリーム属性情報を含む第一のクリップ情報と、
前記第二のストリームナンバーテーブルに登録されている各オーディオストリームの属性情報を示す第二のオーディオストリーム属性情報を含む第二のクリップ情報とを記憶しており、
前記第一のプレイリスト情報に基づくプレイリスト再生の実行において、前記第一のオーディオストリーム属性情報が参照される
請求項３記載の記録媒体。
【請求項５】
前記記録媒体は、オーディオストリーム設定プログラムをさらに記憶しており、
オーディオストリーム設定プログラムは、再生装置がプレイリスト再生を実行する際に実行されるべきプログラムであり、
前記オプション方式で符号化されたオーディオストリームを選択する操作をユーザから受け付けるためのメニューを再生装置に表示させて、メニューに対する選択操作がユーザによりなされた場合、当該オーディオストリームを、再生すべきオーディオストリームとして設定させる
請求項１記載の記録媒体。
【請求項６】
プレイリスト情報を生成する生成手段と、
生成したプレイリスト情報を記録媒体に記録する記録手段とを有し、
前記プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、
前記生成手段は、前記ストリームナンバーテーブルを生成する際、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーをストリームナンバーテーブルに登録した直後に、オプション方式で符号化されたオーディオストリームのストリームエントリーを登録し、
前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一であり、
ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式である
ことを特徴とする記録装置。
【請求項７】
プレイリスト情報を生成する生成ステップと、
生成したプレイリスト情報を記録媒体に記録する記録ステップとを有し、
前記プレイリスト情報は、デジタルストリームの時間軸に再生区間を定義する情報であり、ビデオストリームの時間軸における再生開始点及び再生終了点の組みを定義する情報と、ストリームナンバーテーブルとを含み、
前記生成ステップは、前記ストリームナンバーテーブルを生成する際、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーをストリームナンバーテーブルに登録した直後に、オプション方式で符号化されたオーディオストリームのストリームエントリーを登録し、
前記オプション方式で符号化されたオーディオストリームは、前記マンダトリ方式で符号化されたオーディオストリームと同一の音源からエンコードされており、かつ、前記オプション方式で符号化されたオーディオストリームの言語コード及びチャネル数は、前記マンダトリ方式で符号化されたオーディオストリームの言語コード及びチャネル数と同一であり、
ストリームナンバーテーブルにおける各ストリームエントリーの登録順位は、前記複数のオーディオストリームのうち、ビデオストリームと同期して再生すべきものを再生装置が選択するにあたっての、各オーディオストリームの優先順位を示し、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式である
ことを特徴とする記録方法。
【請求項８】
複数のオーディオストリームが多重化されたデジタルストリーム、プレイリスト選択プログラム、並びに第一及び第二のプレイリスト情報を含む記録媒体から前記デジタルストリームを読み出して再生する再生装置であって、
前記プレイリスト選択プログラムを実行することで、自装置に設定されているバージョンナンバーが前記第一のプレイリスト情報に含まれるバージョンナンバー以上であるか否かを判定する第一判定手段と、
前記第一のプレイリスト情報に含まれるバージョンナンバー以上であると判定した場合に、前記第一のプレイリスト情報に含まれる第一のストリームナンバーテーブルに登録されている各オーディオストリームについて、当該オーディオストリームを再生する能力が自装置に存在すること、当該オーディオストリームの言語属性が自装置に設定されている言語設定と一致していること、及び当該オーディオストリームのチャネル属性が自装置に設定されているチャネル属性と一致していること、の三つの条件のうちどれを満たすかを判定する第二判定手段と、
満たすと判定された条件のパターンに応じてオーディオストリームに優先順位を付し、最も優先順位の高いオーディオストリームを選んで再生する再生手段とを備え、
前記第一のストリームナンバーテーブルには、オプション方式で符号化されたオーディオストリームのストリームエントリーと、マンダトリ方式で符号化されたオーディオストリームのストリームエントリーとが登録されており、
前記第二のプレイリスト情報に含まれる第二のストリームナンバーテーブルは、マンダトリ方式で符号化された複数のオーディオストリームのそれぞれに対応する、複数のストリームエントリーが登録されており、
マンダトリ方式は、全てのバージョンの再生装置がデコードすることができる符号化方式であり、オプション方式は、所定のバージョン以降の再生装置がデコードすることができる符号化方式である
再生装置。
【請求項９】
前記再生装置は、フィールド値毎に異なるハフマン符号値を対応付けたハフマンコードテーブルを有しており、
前記再生手段は、前記ハフマンコードテーブルに基づいて、ハフマン符号値のデコードを行い、デコードにより得られた値が例外値であれば、例外処理を行うことでフィールド値を算出し、
デコード対象が、前記オプション方式で符号化されたオーディオストリームである場合に、前記例外処理の回数を、予め設定されている所定回数以下に抑止する
請求項８記載の再生装置。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009128246.tif 000031
【図２】
2009128246.tif 000032
【図３】
2009128246.tif 000033
【図４】
2009128246.tif 000034
【図５】
2009128246.tif 000035
【図６】
2009128246.tif 000036
【図７】
2009128246.tif 000037
【図８】
2009128246.tif 000038
【図９】
2009128246.tif 000039
【図１０】
2009128246.tif 000040
【図１１】
2009128246.tif 000041
【図１２】
2009128246.tif 000042
【図１３】
2009128246.tif 000043
【図１４】
2009128246.tif 000044
【図１５】
2009128246.tif 000045
【図１６】
2009128246.tif 000046
【図１７】
2009128246.tif 000047
【図１８】
2009128246.tif 000048
【図１９】
2009128246.tif 000049
【図２０】
2009128246.tif 000050
【図２１】
2009128246.tif 000051
【図２２】
2009128246.tif 000052
【図２３】
2009128246.tif 000053
【図２４】
2009128246.tif 000054
【図２５】
2009128246.tif 000055
【図２６】
2009128246.tif 000056
【図２７】
2009128246.tif 000057
【図２８】
2009128246.tif 000058
【国際調査報告】
2009128246.tif 000059
2009128246.tif 000060
2009128246.tif 000061