(57)【特許請求の範囲】
【請求項１】
メインビュービデオストリームと、サブビュービデオストリームとを、メタデータを用いて再生する再生装置であって、
前記メインビュービデオストリームは、立体視映像のメインビューを構成するピクチャデータを含み、
前記サブビュービデオストリームは、立体視映像のサブビューを構成するピクチャデータを含み、
前記メタデータは、複数の表示装置の画面サイズ情報に対応するオフセット補正値を含み、
前記オフセット補正値は、前記メインビューを構成するピクチャデータが描画されるメインビュービデオプレーン及び前記サブビューを構成するピクチャデータが描画されるサブビュービデオプレーンの少なくとも一方を、水平座標の右方向及び左方向へ移動させるオフセットを規定し、
前記再生装置は、
前記メインビュービデオストリーム及び前記サブビュービデオストリームをデコードすることにより、メインビューを構成するピクチャデータ及びサブビューを構成するピクチャデータを得るビデオデコーダと、
前記メインビューを構成するピクチャデータが描画されるメインビュービデオプレーンと、
前記サブビューを構成するピクチャデータが描画されるサブビュービデオプレーンと、
を有し、
前記メタデータから、接続されている表示装置の画面サイズに基づいたオフセット補正値を抽出し、メインビュービデオプレーン及びサブビュービデオプレーンの少なくとも一方を、水平座標の右方向及び左方向へ移動させることを特徴とする再生装置。
【請求項２】
前記メインビュービデオプレーン及び前記サブビュービデオプレーンの少なくとも一方には、グラフィクスデータが描画されたグラフィクスプレーンが重畳されており、
グラフィクスプレーンが重畳されたメインビュービデオプレーン及びサブビュービデオプレーンの少なくとも一方を、水平座標の右方向及び左方向へ移動させることを特徴とする請求項１記載の再生装置。
【請求項３】
前記再生装置は、接続されている表示装置から取得した画面サイズを格納する設定レジスタを備えることを特徴とする請求項１記載の再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、3D映像及び2D映像の再生技術の技術分野に属する発明である。
【背景技術】
【０００２】
2D映像とは、表示装置の表示画面をX-Y平面として捉えて、このX-Y平面上の画素にて表現される画像であり、平面視画像とも呼ばれる。対照的に3D映像とは、表示装置の画面におけるX-Y平面上の画素に、Z軸方向の奥行きを加えた画像である。
【０００３】
3D映像は、左目で視聴すべきレフトビュー映像と、右目で視聴すべきライトビュー映像とを共に再生して、これらレフトビュー映像、ライトビュー映像で立体視効果を発揮することにより、ユーザによる視聴に供される。3D映像における画素のうち、正のZ軸座標をもつものをユーザは、表示装置の画面より手前にあると感じ、負のZ軸座標をもつものを、画面より奥に存在すると感じる。 
【０００４】
光ディスクに3D映像を格納する場合には、2D映像が格納された光ディスクのみを再生できる再生装置（以下、「2D再生装置」と呼ぶ）との再生互換性が求められる。3D映像を格納した光ディスクを、2D再生装置が3D映像を2D映像として再生できない場合、同じコンテンツを3D用ディスクと、2D用ディスクとの２種類を製作する必要があり、コスト高になってしまう。よって、3D映像が格納された光ディスクは、2D再生装置では2D映像として再生し、2D映像と3D映像を再生できる再生装置（以下、「2D/3D再生装置」）では、2D映像もしくは3D映像として再生できることが求められる。 
【０００５】
3D映像が格納された光ディスクでの再生互換性を確保する技術の先行技術としては、以下の特許文献１に記載されたものがある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３９３５５０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、メインビュー映像とサブビュー映像との視差により立体視効果を実現する3D映像では、表示装置の画面サイズに応じて視差が変化してしまうため、画面サイズの違いによって画像の奥行きにも違いが生じる。そのため、画面サイズが大きい表示装置での視聴を想定して制作された3D映像が、画面サイズが小さい表示装置で視聴されると、製作者が意図したものより奥行き感の乏しい迫力のない映像となってしまう。逆に画面サイズが小さな表示装置での視聴を想定して制作された3D映像が、画面サイズが大きい表示装置で視聴されると、過剰な奥行き感が生じ眼精疲労を引き起こす恐れがある。
【０００８】
本発明の目的は、制作時の想定とは異なる画面サイズで3D映像を視聴することによる悪影響の発生を防ぐことができる再生装置を提供することである。
【課題を解決するための手段】
【０００９】
上記課題を解決することができる再生装置は、メインビュービデオストリームと、サブビュービデオストリームとを、メタデータを用いて再生する再生装置であって、前記メインビュービデオストリームは、立体視映像のメインビューを構成するピクチャデータを含み、前記サブビュービデオストリームは、立体視映像のサブビューを構成するピクチャデータを含み、前記メタデータは、複数の表示装置の画面サイズ情報に対応するオフセット補正値を含み、前記オフセット補正値は、前記メインビューを構成するピクチャデータが描画されるメインビュービデオプレーン及び前記サブビューを構成するピクチャデータが描画されるサブビュービデオプレーンの少なくとも一方を、水平座標の右方向及び左方向へ移動させるオフセットを規定し、前記再生装置は、前記メインビュービデオストリーム及び前記サブビュービデオストリームをデコードすることにより、メインビューを構成するピクチャデータ及びサブビューを構成するピクチャデータを得るビデオデコーダと、前記メインビューを構成するピクチャデータが描画されるメインビュービデオプレーンと、前記サブビューを構成するピクチャデータが描画されるサブビュービデオプレーンとを有し、前記メタデータから、接続されている表示装置の画面サイズに基づいたオフセット補正値を抽出し、メインビュービデオプレーン及びサブビュービデオプレーンの少なくとも一方を、水平座標の右方向及び左方向へ移動させることを特徴とする。
【発明の効果】
【００１０】
表示する画面サイズに応じた画面サイズ情報に規定されているオフセットを、ピクチャデータに与えて移動させることで、立体視映像に画面サイズに応じた適切な視差を与えることができる。そのため上記の構成によれば、制作時の想定とは異なる画面サイズで3D映像を視聴することによる悪影響の発生を防ぐことができる。
【図面の簡単な説明】
【００１１】
【図１】パッケージ媒体である記録媒体、プレーヤ機器である再生装置、表示装置、眼鏡によって構成されるホームシアターシステムを示す。
【図２】図２は、ユーザーの顔を左側に描き、右側には、対象物たる恐竜の骨格を左目から見た場合の例と、対象物たる恐竜の骨格を、右目から見た場合の例とを示している。
【図３】立体視のためのベースビュービデオストリーム、ディペンデントビュービデオストリームの内部構成の一例を示す。
【図４】本編映像に利用されない黒枠を上下にあつめて字幕データをその黒枠に表示するコンセプトを説明する図である。
【図５】第１実施形態に係る記録媒体における内部構成を示す。
【図６】メインTS及びサブTSの内部構成を示す。
【図７】プレイリスト情報の内部構成を示す。
【図８】基本ストリーム選択テーブルの一例を示す。
【図９】拡張ストリーム選択テーブルの内部構成を示す。
【図１０】拡張ストリーム選択テーブルにおけるストリーム登録列を示す。
【図１１】video_shift_modeがKeepに設定されている場合のプレーン合成を示す。
【図１２】（ａ）はvideo_shift_modeがUpに設定されている場合のプレーン合成を示し、（ｂ）はvideo_shift_modeがDownに設定されている場合のプレーン合成を示す。
【図１３】ビデオシフトモードを拡張ストリーム選択テーブルに追加する場合の、グラフィックスストリームのストリーム選択テーブルへの登録順の制約を説明する図である。
【図１４】基本ストリーム選択テーブル、拡張ストリーム選択テーブルによりメインTS、サブTSからどのようなESが多重分離されるかを示す。
【図１５】2D出力モード、3D出力モードにおけるストリーム番号の割り当て変化を示す。
【図１６】再生装置の内部構成を示す。
【図１７】PGデコーダの内部構成を示す。
【図１８】テキスト字幕デコーダの内部構成を示す。
【図１９】IGデコーダのデコーダモデルを示す。
【図２０】デコーダモデルの出力を合成し、3D-LR方式で出力するための回路構成を示す。
【図２１】これらのデコーダモデルの出力を合成し、1plane＋Offsetモード方式で出力するための回路構成を示している。
【図２２】デコーダモデルの出力を合成し、上端側2D字幕再生モード方式及び下端側2D字幕再生モード方式で出力するための回路構成を示す。
【図２３】レジスタセット２０３の内部構成と、再生制御部とを描いた図である。
【図２４】PSR24のビットアサインを示す。
【図２５】PSR32のビットアサインを示す。
【図２６】プレイリスト再生手順を示す。
【図２７】PGtestSTストリームについてのProcedure when playback condition is changedについての処理手順を示すフローチャートである。
【図２８】上下端再生タイプ決定処理手順を示すフローチャートである。
【図２９】カレントプレイアイテムについて最適なPG＿テキスト字幕ストリームを選択する処理手順を示すフローチャートである。
【図３０】セット立体視ストリームコマンド(SetstreamSSCommand)によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。
【図３１】セットストリームコマンド、又は、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。
【図３２】カレントIGストリームの決定及びカレントIGストリームの再生タイプ決定の処理手順を示すフローチャートである。
【図３３】結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
【図３４】結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
【図３５】第1実施形態の変形例に係る拡張ストリーム選択テーブルのストリーム登録列を示す。
【図３６】デコーダモデルの出力を合成し、上端側2D字幕再生モード方式及び下端側2D字幕再生モード方式で出力するための回路構成を示す。
【図３７】各プレーンの縦軸方向のシフト量を示すシステムパラメータを説明する図である。
【図３８】ビデオシフトモードに応じてＰＧプレーンをシフト＆クロッピングの方法を説明する図である。
【図３９】上端側2D字幕再生モード及び下端側2D字幕再生モードでのプレーン合成によって切り取られない領域に字幕データをおくための制約条件を説明する図である。
【図４０】テレビの画面サイズによる奥行き間の影響の出力オフセット補正値の働きを説明する図である。
【図４１】プレイリストファイルに格納されるテレビのインチ数と出力オフセット補正値のテーブルを説明する図である。
【図４２】最適なサイズ以上のテレビで映像を表示する場合の画面例である。
【図４３】出力オフセット補正値を適用するための２Ｄ／３Ｄ再生装置の構成を説明する図である。
【図４４】出力オフセット補正値と出力オフセット補正値アルファを適用する構成を説明する図である。
【図４５】エクステントと、ファイル2D／ファイルベース、ファイルディペンデントとの対応付けを示す。
【図４６】立体視インターリーブドストリームファイルと、ファイル2D／ファイルベースとの関係を示す。
【図４７】立体視インターリーブドストリームファイル、ファイル2D、ファイルベースの相互関係を示す。
【図４８】2Dプレイリスト、3Dプレイリストを示す。
【図４９】クリップ情報ファイルの内部構成を示す。
【図５０】クリップ情報ファイルと、プレイリストと、立体視インターリーブドストリームファイルとの関係を示す。
【図５１】クリップベース情報、クリップディペンデント情報の内部構成を示す図である。
【図５２】基本エントリーマップと、拡張エントリーマップとを示す図である。
【図５３】拡張エントリーマップにおいて許容されないエントリーを示す。
【図５４】プレイアイテムの再生手順を示す。
【図５５】立体視インターリーブドストリームファイル構成するデータブロックからATCシーケンスがどのように復元されるかを示す。
【図５６】ATCシーケンスの復元がどのように行われるかを示す図である。
【図５７】ベースビュークリップ情報におけるエクステントスタートポイント情報の一例と、ディペンデントビュークリップ情報におけるエクステントスタートポイント情報の一例を示す。
【図５８】ATCシーケンス１、２における任意のデータブロックのソースパケット番号を説明するための図である。
【図５９】ATCシーケンス復元手順を示す。
【図６０】２Ｄ／３Ｄ再生装置の再生環境を説明する図である。
【図６１】３Ｄ映像から２Ｄ映像の再生でフレームレート切り替えを発生させずに片方の映像を出力する様子を説明する図である。
【図６２】BDなどで用いられる字幕・メニュー用ストリームの相関を説明する図である。
【図６３】より滑らかな2D/3D映像表示を実現するための処理を説明する図である。
【図６４】光ディスクの記録方法を示す。
【図６５】オーサリング行程の処理手順を示すフローチャートである。
【図６６】AVファイル書込工程の処理手順を示す。
【図６７】基本エントリーマップ、拡張エントリーマップの作成手順を示すフローチャートである。
【図６８】BD-Jアプリケーション、BD-Jオブジェクト、ムービーオブジェクト、インデックステーブルの作成手順を示すフローチャートである。
【図６９】多層化された光ディスクの内部構成を示す。
【図７０】ファイルシステムを前提にした光ディスクのアプリケーションフォーマットを示す。
【図７１】2D/3D再生装置の構成を示している。
【図７２】本発明に係る記録媒体の、使用行為についての形態、ＢＤ−ＲＯＭの内部構成、インデックスファイルの内部構成を示す図である。
【図７３】ＡＶクリップの構成、各ストリームがＡＶクリップにおいてどのように多重化されているかを模式的に示す図である。
【図７４】ＰＥＳパケット列に、ビデオストリーム及びオーディオストリームがどのように格納されるかを更に詳しく示し、ＡＶクリップにおけるＴＳパケットとソースパケット構造を示す図である。
【図７５】ＰＭＴのデータ構成、クリップ情報ファイルの内部構成を示す図である。
【図７６】ストリーム属性情報の内部構成、エントリマップの内部構成を示す図である。
【図７７】プレイリストの内部構成、プレイアイテムの内部構成を示す図である。
【図７８】２Ｄ再生装置の内部構成、プレーヤ変数を説明する図である。
【図７９】システムターゲットデコーダの内部構成を示す図である。
【図８０】立体視の説明図である。
【図８１】プレゼンテーショングラフィックスストリームのデータ構造を説明する図である。
【図８２】プレゼンテーショングラフィックスストリームのデコード処理を説明する図である。
【図８３】ビデオ上移動時シフト値とビデオ下移動時シフト値のプレイリストの格納方法を説明する図である。
【図８４】黒枠を上下に集めるビデオシフトを行う場合の２Ｄ／３Ｄ再生装置内のプレーン合成の構成を説明する図である。
【図８５】ビデオシフトモードをストリーム選択情報のストリーム付加情報に追加するプレイリストの構成を説明する図である。
【図８６】ビデオシフトモードをストリーム選択情報のストリーム付加情報に追加した場合のプレーン合成の方法を説明する図である。
【図８７】上段は本編映像を真ん中ではなく少し上側に配置してビデオストリームを作成する方法を説明する図であり、下段はＰＧのストリームの透明色を動的に変更して黒枠を作成する方法を説明する図である。
【図８８】各エクステントに一つ以上のエントリポイントがあると規定する場合の構成を説明する図である。
【図８９】オフセットメタデータをＡＶストリーム情報ファイルに格納する方法を説明する図である。
【図９０】オフセットメタデータをエントリポイント毎に格納する方法を説明する図である。
【図９１】オフセットメタデータをプレイリストに格納する方法を説明する図である。
【図９２】オフセットメタデータをプレイリストに格納する場合で、前のプレイアイテムと同じ場合にはオフセットメタデータを格納しない方法を説明する図である。
【図９３】オフセットメタデータをプレイリストに格納する場合で、同じオフセットメタデータを持つプレイアイテムに対しては一つのオフセットメタデータだけですむようにするための格納方法を説明する図である。
【図９４】プレイアイテム単位で回るヘッダと、オフセットメタデータとを分けて格納するプレイリストを示す図である。
【図９５】２プレーンＬ／Ｒ方式のグラフィックスの左目用字幕を２Ｄ表示用字幕として表示したケースを説明する図である。
【図９６】２Ｄ表示用字幕および1plane＋Offset方式字幕と、２プレーンＬ／Ｒ方式の左目用ＰＧを共用化するための２プレーンＬ／Ｒ方式用のＰＧのオフセット値を説明する図である。
【図９７】飛び込み再生の高速化のために２Ｄ／３Ｄ再生経路を分離する構成を説明する図である。
【図９８】立体視映像を再生するためにBD-ROMにおけるインデックスファイルの一例を示す図である。
【図９９】ＢＤプログラムファイルのプログラムでの２Ｄプレイリストと３Ｄプレイリストの選択フローを示している。
【図１００】2D/3D再生装置を集積回路を用いて実現した構成例である。
【図１０１】ストリーム処理部の代表的な構成を示す機能ブロック図である。
【図１０２】切替部がDMACであった場合の切替部５３周辺の概念図である。
【図１０３】AV出力部の代表的な構成を示す機能ブロック図である。
【図１０４】AV出力部もしくは再生装置のデータ出力部分を詳細に示した構成例である。
【図１０５】集積回路における制御バス及びデータバスの配置を示した図である。
【図１０６】集積回路における制御バス及びデータバスの配置を示した図である。
【図１０７】表示装置を集積回路を用いて実現した構成例である。
【図１０８】表示装置におけるAV出力部の代表的な構成を示す機能ブロック図である。
【図１０９】再生装置における動作手順を簡単に示したフローチャートである。
【図１１０】再生装置における動作手順を詳細に示したフローチャートである。
【発明を実施するための形態】
【００１２】
上記課題解決手段を具備した記録媒体は、コンテンツを店頭販売するためのパッケージ媒体として実施することができる。また、この記録媒体に対応する再生装置は、パッケージ媒体を再生するためのプレーヤ機器として実施することができ、この記録媒体に対応する集積回路は、当該プレーヤ機器に組込まれるシステムLSIとして実施することができる。
【００１３】
図１は、パッケージ媒体である記録媒体、プレーヤ機器である再生装置、表示装置、眼鏡によって構成されるホームシアターシステムを示す。同図（ａ）に示すように、上記パッケージ媒体である記録媒体１００、プレーヤ機器である再生装置２００は、表示装置３００、3D眼鏡４００、リモコン５００と共にホームシアターシステムを構成し、ユーザによる使用に供される。
【００１４】
記録媒体１００は、上記ホームシアターシステムに、例えば映画作品を供給する。この映画作品には、立体視映像を構成するものがある。ここで立体視映像は、少なくとも2つの視点映像から構成される。視点映像とは、何等かの偏向性をもった映像のことであり、上記2つの視点映像は、メインビュー映像と、サブビュー映像とから構成される。記録媒体１００には、図１に示すように、ディスク型のもの、メモリカード型のもの等様々なタイプが存在するが、特に断らない限り以降の説明で述べる"記録媒体"は、ディスク媒体であるとする。
【００１５】
再生装置２００は、表示装置３００と接続され、記録媒体１００を再生する。再生装置は、メインビュー映像を表すメインビュービデオストリーム、サブビュー映像を表すサブビュービデオストリームを再生するため、2D出力モード、3D出力モードという2つの出力モードを具備しており、これらの相互切り替えを可能とする2D/3D再生装置(プレーヤ)である。
【００１６】
表示装置３００はテレビであり、映画作品の再生映像を表示したり、メニュー等を表示することで、対話的な操作環境をユーザに提供する。本実施形態の表示装置３００は、3D眼鏡４００をユーザが着用することで立体視を実現するものだが、表示装置３００がレンチキュラー方式のものなら、3D眼鏡４００は不要となる。
【００１７】
3D眼鏡４００は、液晶シャッターを備え、継時分離方式あるいは偏光メガネ方式による視差画像をユーザに視聴させる。視差画像とは、右目に入る映像と、左目に入る映像とから構成される一組の映像であり、それぞれの目に対応したピクチャーだけがユーザの目に入るようにして立体視を行わせる。 同図（ｂ）は、左目用映像の表示時を示す。画面上に左目用の映像が表示されている瞬間において、前述の3D眼鏡４００は、左目に対応する液晶シャッターを透過にし、右目に対応する液晶シャッターは遮光する。同図（ｃ）は、右目用映像の表示時を示す。画面上に右目用の映像が表示されている瞬間において、先ほどと逆に右目に対応する液晶シャッターを透光にし、左目に対応する液晶シャッターを遮光する。
【００１８】
リモコン５００は、AV再生のための操作項目を受け付けるための機器である。またリモコン５００は、階層化されたGUIに対する操作をユーザから受け付ける機器であり、かかる操作受け付けのため、リモコン５００は、GUIを構成するメニューを呼び出すメニューキー、メニューを構成するGUI部品のフォーカスを移動させる矢印キー、メニューを構成するGUI部品に対して確定操作を行う決定キー、階層化されたメニューをより上位のものにもどってゆくための戻りキー、数値キーを備える。
【００１９】
図１のホームシアターシステムにおいて、3D出力モードでの画像表示を表示装置３００に行わせる再生装置の出力モードを"3D出力モード"という。2D出力モードでの画像表示を表示装置３００に行わせる再生装置の出力モードを"2D出力モード"という。
【００２０】
以上が、記録媒体及び再生装置の使用形態についての説明である。
（第１実施形態)
第１実施形態の特徴は、右目用のグラフィクスストリーム、左目用のグラフィクスストリームを用いた立体視を実現することができるかどうかのケーパビリティを、再生装置におけるレジスタに設定している点である。
【００２１】
以降の説明において、メインビュー及びサブビューは、視差画像方式を実現するものとする。視差画像方式(3D-LRモードという)は、右目に入る映像と、左目に入る映像とを各々用意し、それぞれの目に対応したピクチャーだけが入るようにして立体視を行う方法である。図２は、ユーザーの顔を左側に描き、右側には、対象物たる恐竜の骨格を左目から見た場合の例と、対象物たる恐竜の骨格を、右目から見た場合の例とを示している。右目及び左目の透光、遮光から繰り返されれば、ユーザの脳内では、目の残像反応により左右のシーンの重合せがなされ、顔の中央の延長線上に立体映像が存在すると認識することができる。
【００２２】
このような立体視を実現するためのビデオストリームの符号化方式として、MPEG4-MVC方式によるものを用いる。以降の説明において、MPEG4-MVCにおける"ベースビュービデオストリーム"が、メインビュービデオストリームであり、MPEG4-MVCにおける"ディペンデントビュービデオストリーム"がサブビュービデオストリームであるものとする。
【００２３】
MPEG-4 MVC ベースビュービデオストリームは、view＿idが0のサブビットストリームであり、view＿idが0のビューコンポーネントのシーケンスである。MPEG-4 MVC ベースビュービデオストリームは、MPEG-4 AVCビデオストリームの制約を守る。
【００２４】
MPEG-4 MVC ディペンデントビュービデオストリーム は、view＿idが1のサブビットストリームであり、view＿idが1のビューコンポーネントのシーケンスである。
ビューコンポーネントとは、一個のフレーム期間において、立体視再生のために同時に再生される複数のピクチャデータのそれぞれのものをいう。視点間の相関性を用いた圧縮符号化は、ベースビュービデオストリーム及びディペンデントビュービデオストリームのビューコンポーネントをピクチャデータとして用いて、ピクチャ間の相関性を用いた圧縮符号化を実現することでなされる。1つのフレーム期間に割り当てられたベースビュービデオストリームのビューコンポーネントと、ディペンデントビュービデオストリームのビューコンポーネントとの組みが、1個のアクセスユニットを構成することになり、このアクセスユニットの単位でランダムアクセスが可能になる。
【００２５】
ベースビュービデオストリーム及びディペンデントビュービデオストリームは、何れも個々のビューコンポーネントを"ピクチャ"としたGOP構造を有しており、クローズドGOP、オープンGOPから構成される。クローズドGOPは、IDRピクチャと、このIDRピクチャに続くBピクチャと、Pピクチャとから構成される。オープンGOPは、Non-IDR Iピクチャと、Non-IDR Iピクチャに続くBピクチャと、Pピクチャとから構成される。
【００２６】
Non-IDR Iピクチャ、Pピクチャ、Bピクチャは、他のピクチャとのフレーム相関性に基づき圧縮符号化されている。Bピクチャとは、Bidirectionally predictive(B)形式のスライスデータからなるピクチャをいい、Pピクチャとは、Predictive(P)形式のスライスデータからなるピクチャをいう。Bピクチャには、refrenceB(Br)ピクチャと、nonrefrenceB(B)ピクチャとがある。
【００２７】
クローズドGOPは、IDRピクチャが先頭に配置される。表示順序においてIDRピクチャは先頭にならないが、IDRピクチャ以外の他のピクチャ(Bピクチャ，Pピクチャ)は、クローズドGOPより前のGOPに存在するピクチャと依存関係をもつことはできない。このようにクローズドGOPは、依存関係を完結させる役割をもつ。
【００２８】
図３は、立体視のためのベースビュービデオストリーム、ディペンデントビュービデオストリームの内部構成の一例を示す。
本図の第２段目は、ベースビュービデオストリームの内部構成を示す。このストリームには、ピクチャタイプがI1,P2,Br3,Br4,P5,Br6,Br7,P9というビューコンポーネントが含まれている。これらのビューコンポーネントは、Decode Time Stamp(DTS)に従いデコードされる。第１段目は、左目画像を示す。そうしてデコードされたビューコンポーネントI1,P2,Br3,Br4,P5,Br6,Br7,P9をPTSに従い、I1,Br3,Br4,P2,Br6,Br7,P5の順序で再生することで、左目画像が再生されることになる。
【００２９】
第４段目は、ディペンデントビュービデオストリームの内部構成を示す。このディペンデントビュービデオストリームは、P1,P2,B3,B4,P5,B6,B7,P8というピクチャタイプのビューコンポーネントが含まれている。これらのビューコンポーネントは、DTSに従いデコードされる。第３段目は、右目画像を示す。そうしてデコードされたビューコンポーネントP1,P2,B3,B4,P5,B6,B7,P8をPTSに従い、P1,B3,B4,P2,B6,B7,P5の順序で再生することで、右目画像が再生されることになる。
【００３０】
第５段目は、3D眼鏡４００の状態をどのように変化させるかを示す。この第５段目に示すように、左目画像の視聴時は、右目のシャッターを閉じ、右目画像の視聴時は、左目のシャッターを閉じていることがわかる。
【００３１】
ベースビュービデオストリームのビデオフレームと、ディペンデントビューストリームのビデオフレームとを１／４８秒の表示周期において、"Ｂ"−"Ｄ"−"Ｂ"−"Ｄ"というように交互で出力するモードを、"B−Dプレゼンテーションモード"という。
【００３２】
更に、B−Dプレゼンテーションモードには、Ｌ画像、Ｒ画像を用いて立体視効果を実現する3D-LR方式の他、2D画像と、深度情報とを用いて立体視効果を実現する3D-Depth方式がある。
【００３３】
ベースビュービデオストリームのビデオフレームと、ディペンデントビューストリームのビデオフレームとを交互に出力するのではなく、出力モードを3Dモードに維持したまま、同じビデオフレームを2回以上繰り返し出力するという処理を行う再生タイプを、B−Bプレゼンテーションモードという。B−Bプレゼンテーションモードでは、単独再生可能なベースビュービデオストリームのビデオフレームのみが"Ｂ"−"Ｂ"−"Ｂ"−"Ｂ"というように繰り返し出力される。
【００３４】
以上のB−Dプレゼンテーションモード、B−Bプレゼンテーションモードが、再生装置の出力モードの基本となるが、これらのモード以外にも、再生装置には、1plane＋Offsetモード、上端側2D字幕再生モード、下端側2D字幕再生モードという出力モードが存在する。
【００３５】
1plane＋Offsetモード(3D-Offsetモードともいう)は、プレーンメモリの後段にシフト部を組込んで、シフト部を機能させることで立体視を実現する出力モードである。プレーンオフセット部は、レフトビュー期間及びライトビュー期間のそれぞれにおいて、プレーンメモリにおけるライン単位の画素の座標を、左方向又は右方向にシフトさせ、右目視線及び左目視線の結像点を手前方向、又は、奥行方向に変位させることで奥行き感を変化させる。具体的には、レフトビュー期間で左方向、ライトビュー期間で右方向に、画素座標を変化させれば、両目の視線の結像点は手前になり、レフトビュー期間で右方向、ライトビュー期間で左方向に、画素座標を変化させれば、両目の視線の結像点は手前になる。
【００３６】
かかるプレーンシフトでは、立体視のためのプレーンメモリが1プレーンで足りるので、簡易に立体視映像を作り出すのに最適である。このプレーンシフトでは、平面的な映像が手前に来たり、奥に引込んだりするという立体視映像を産み出すに過ぎないから、メニューや字幕の立体視効果には適しているものの、キャラクターや物体の立体視効果の実現にはやや物足りない。キャラクターの顔のくぼみや凹凸等が再現できないからである。
【００３７】
1plane＋Offsetモードをサポートする場合、再生装置の構成は以下の通りになる。グラフィクスの再生のため、再生装置にはプレーンメモリと、CLUT部、合成部が存在しており、このCLUT部、合成部の間にシフト部が組み入れられる。そして、シフト部は、ディペンデントビュービデオストリームのアクセスユニット構造に組込まれたオフセットシーケンスにおけるオフセットを用いて、上述したような画素の座標変化を実現する。こうすることで、1plane＋Offsetモードにおける画素の飛び出度合は、MVCビデオストリームと緻密に同期したものになる。この1plane＋Offsetモードの中には、1plane＋Zero Offsetモードがある。1plane＋Zero Offsetモードは、ポップアップメニューがオンである場合、オフセット値をゼロにして、ポップアップメニューだけに立体視効果を与える表示モードである。
【００３８】
オフセットシーケンスによるシフト制御の対象となるプレーンメモリは、所定のレイヤモデルを構成する複数のプレーンメモリである。プレーンメモリとは、エレメンタリストリームをデコードすることで得られた一画面分の画素データをライン単位で格納しておき、水平同期信号、垂直同期信号に沿ってこれらの画素データを出力するためのメモリである。個々のプレーンメモリは、ビデオデコーダ、PGデコーダ、IGデコーダのデコードによって得られた1画面分の画素データを格納する。
【００３９】
所定のレイヤモデルは、左目ビデオプレーン及び右目ビデオプレーンの階層、PGプレーンの階層、IG/BD-Jプレーンの階層から構成され、各階層のプレーンメモリの格納内容を、ビデオプレーン→PGプレーン→IG/BD-Jプレーンの順にレイヤ合成することを意図したものである。
【００４０】
上記レイヤ合成は、プレーンメモリのレイヤモデルにおいて、2つの階層のプレーンメモリに格納されている画素データの画素値を重畳させるという処理を、レイヤモデルにおける2つの階層の全ての組合せに対して実行することでなされる。以下、各階層のプレーンメモリについて述べる。
【００４１】
左目ビデオプレーンは、ビューコンポーネントをデコードすることで得られる一画面分の画素データのうち、左目用のピクチャデータを構成するものを格納することができるプレーンメモリである。右目ビデオプレーンは、ビューコンポーネントをデコードすることで得られる一画面分の画素データのうち、右目用のピクチャデータを構成するものを格納することができるプレーンメモリである。
【００４２】
プレゼンテーショングラフィクス(PG)プレーンとは、パイプライン式で動作するグラフィクスデコーダが、デコード処理を行うことで得られたグラフィクスの格納に用いられるプレーンメモリである。IG/BD-Jプレーンとは、ある動作モードでは、IGプレーンとして機能し、別の動作モードでは、BD-Jプレーンとして機能するプレーンメモリである。インタラクティブグラフィクス(IG)プレーンとは、対話的な処理を前提にして動作するグラフィクスデコーダが、デコードを行うことで得られたグラフィクスの格納に用いられるプレーンメモリである。BD-Jプレーンは、オブジェクト指向プログラミング言語のアプリケーションが描画処理を行うことで得た描画イメージグラフィクスの格納に用いることができるプレーンメモリである。IGプレーンとBD-Jプレーンとは排他的なものであり、何れか一方が利用されている場合、他方は利用されないため、IGプレーンとBD-Jプレーンとでは1つのプレーンメモリを兼用している。
【００４３】
上記レイヤモデルにおいて、ビデオプレーンについては、ベースビュー用のビデオプレーンと、ディペンデントビュー用のビデオプレーンとが存在するものの、IG/BD-Jプレーン、PGプレーンについては、ベースビュー用、ディペンデントビュー用のそれぞれについて、プレーンメモリが存在する訳ではない。よってIG/BD-Jプレーン、PGプレーンがシフト制御の対象になる。
【００４４】
上端側2D字幕再生モードは、ビデオプレーンメモリの後段にシフト部を組込んで、シフト部を機能させることでビデオフレームの上端に、2D字幕の表示領域を確保する出力モードであり、下端側2D字幕再生モードは、シフト部を機能させることでビデオストリームの下端に、2D字幕の表示領域を確保する出力モードである。プレーンオフセット部は、上端側2D字幕再生モードではレフトビュー期間及びライトビュー期間のそれぞれにおいて、ビデオプレーンメモリに格納されたピクチャデータの画素の座標を、下方向にシフトさせ、下端側2D字幕再生モードではレフトビュー期間及びライトビュー期間のそれぞれにおいて、ビデオプレーンメモリに格納されたピクチャデータの画素の座標を、上方向にシフトさせる。
【００４５】
上端側2D字幕再生モード、下端側2D字幕再生モードをサポートする場合、再生装置の構成は以下の通りになる。ビデオフレーム及びグラフィクスの再生のため、再生装置にはプレーンメモリと、合成部が存在しており、ビデオプレーンメモリと合成部との間にシフト部が組み入れられる。そして、シフト部は、グラフィクスストリームのストリーム登録列に組込まれたオフセットを用いて、上述したような画素の座標変化を実現する。
【００４６】
上端側2D字幕再生モード、下端側2D字幕再生モードでの使用に適したビデオフレームは、図４（ａ）に示すようにアスペクト比１６：９、解像度１９２０×１０８０ピクセルの画面中央に、アスペクト比２．３５：１、解像度１９２０ｘ８１８ピクセルのシネスコサイズの画像が配置され、シネスコサイズの画像の上下に１９２０×１３１ピクセルの黒枠が配置されたものである。このようなビデオフレームが格納されたビデオプレーンメモリにおいて、画素の座標を上方向又は下方向にシフトし、シフトにより生じた空白領域にに黒色のデータを格納することにより、同図（ｂ）、（ｃ）に示すように、もとのビデオフレームの上下端に存在した黒枠を、上端もしくは下端にまとめる。このようにすることによって、字幕を表示するのに十分な大きさの黒枠を用意することができる。
【００４７】
以上が3D出力モードについての説明である。続いて、本実施形態に係る記録媒体の内部構成について説明する。
図５は、第１実施形態に係る記録媒体における内部構成を示す。本図（ａ）に示すように、第１実施形態に係る記録媒体には、「インデックステーブル」、「動作モードオブジェクトのプログラムファイル」、「プレイリスト情報ファイル」、「ストリーム情報ファイル」、「ストリームファイル」が記録されている。
【００４８】
＜インデックステーブル＞
インデックステーブルは記録媒体全体に関する管理情報であり、再生装置への記録媒体挿入後に、インデックステーブルが最初に読み出されることで、再生装置において記録媒体が一意に認識される。
【００４９】
＜プログラムファイル＞
動作モードオブジェクトのプログラムファイルは、再生装置を動作させるための制御プログラムを格納している。このプログラムには、コマンドによって記述されたものと、オブジェクト指向のコンパイラ言語によって記述されたものがある。前者のプログラムは、コマンドベースの動作モードにおいて、複数のナビゲーションコマンドをバッチジョブとして再生装置に供給し、これらナビゲーションコマンドに基づき再生装置を動作させる。このコマンドベースの動作モードを、"HDMVモード"と呼ぶ。
【００５０】
後者のプログラムは、オブジェクト指向型のコンパイラ言語ベースの動作モードにおいて、クラス構造体のインスタンスであるバイトコードアプリケーションを再生装置に供給し、このインスタンスに基づき再生装置を動作させる。クラス構造体のインスタンスには、バイトコードアプリケーションの1つであるJava(TM)アプリケーションを用いることができる。オブジェクト指向型コンパイラ言語ベースの動作モードを、"BD-Jモード"と呼ぶ。
【００５１】
＜ストリームファイル＞
ストリームファイルは、ビデオストリーム、１つ以上のオーディオストリーム、グラフィクスストリームを多重化することで得られたトランスポートストリームを格納している。ストリームファイルには、2D専用のものと、2D-3D兼用のものとがある。2D専用のストリームファイルは、通常のトランスポートストリーム形式であり、2D-3D兼用のストリームファイルは、立体視インターリーブドストリームファイルのファイル形式を有する。
【００５２】
立体視インターリーブドストリームファイル形式とは、ベースビューストリームを含むメインのトランスポートストリーム(メインTS)のエクステントと、ディペンデントビュービデオストリームを含むサブトランスポートストリーム(サブTS)のエクステントとをインターリーブ形式で交互配置したものである。
【００５３】
ストリームファイルに格納されるメインTSは、複数種別のPESストリームを管理・制御するための情報として、欧州デジタル放送規格に規定されたパケット管理情報(PCR,PMT,PAT)を具備している。
【００５４】
PCR(Program＿Clock＿Reference)は、ATSの時間軸であるATC（Arrival  Time  Clock）とPTS・DTSの時間軸であるSTC（System  Time  Clock）の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
【００５５】
PMT(Program＿map＿table)は、ストリームファイル中に含まれる映像・音声・グラフィクスなどの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、またTSに関する各種ディスクリプタを持つ。ディスクリプタにはストリームファイルのコピーを許可・不許可を指示するコピーコントロール情報などがある。
【００５６】
PAT（Program  Association  Table）は、TS中に利用されるPMTのPIDが何であるかを示し、PAT自身のPID配列で登録される。
これらのPCR,PMT,PATは、欧州デジタル放送規格において、一個の放送番組(Program)を構成するパーシャルTSを規定する役割をもち、再生装置は、欧州デジタル放送規格において、一個の放送番組を構成するパーシャルTSを扱うかの如く、TSをデコーダによる処理に供することができる。これは、欧州デジタル放送規格の端末装置と、記録媒体再生装置との互換性を意図したものである。
【００５７】
メインTSにおけるエクステント及びサブTSにおけるエクステントの組みは、再生時においてダブルバッファをアンダーフローさせないデータサイズに設定されており、再生装置は、これらのエクステントの組みを途切れなく読み込んでゆくことができる。
【００５８】
以上がストリームファイルについての説明である。
＜ストリーム情報ファイル＞
ストリーム情報ファイルは、ストリームファイルにおけるトランスポートストリーム内の任意のソースパケットに対するランダムアクセスや、他のトランスポートストリームとの途切れ無き再生を保障するストリーム情報ファイルである。このストリーム情報ファイルを通じることにより、ストリームファイルは"AVクリップ"として管理されることになる。ストリーム情報ファイルは、AVクリップにおけるストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、GOPの先頭位置のソースパケット番号を、フレーム期間のプレゼンテーションタイムスタンプと対応付けて示す基本エントリーマップをもっているので、ストリームファイルのアクセスに先立ち、このストリーム情報ファイルをメモリにロードしておけば、アクセスしようとするストリームファイル中のトランスポートストリームがどのようなものであるのかを把握することができるので、ランダムアクセスの実行を保障することができる。ストリーム情報ファイルには、2Dストリーム情報ファイルと、3Dストリーム情報ファイルとがあり、3Dストリーム情報ファイルは、ベースビューのためのクリップ情報(クリップベース情報)と、ディペンデントビューのためのクリップ情報(クリップディペンデント情報)と、立体視用の拡張エントリーマップとを含む。
【００５９】
クリップベース情報は、ベースビューのためのエクステントスタートポイント情報を含み、クリップディペンデント情報は、ディペンデントビューのためのエクステントスタートポイント情報を含む。ベースビューのためのエクステントスタートポイント情報は、複数のソースパケット番号から構成される。それぞれのソースパケット番号は、メインTSにおけるエクステントの分割位置が何パケット目に存在するかを示す。ディペンデントビューのためのエクステントスタートポイント情報も複数のソースパケット番号から構成され、サブTSにおける分割位置が何パケットに存在するかを示す。これらのエクステントスタートポイント情報を用いることで、立体視インターリーブドストリームファイルは、メインTSを構成するATCシーケンス１と、サブTSを構成するATCシーケンス２とに分割されることになる。"ATCシーケンス"とは、ソースパケットの配列であって、そのArrival＿Time＿Stampが参照しているArrival＿Time＿Clockに、不連続点(no arrival time-base discontinutiy)が存在しないものをいう。ATCシーケンスは、ATCのタイムスタンプが連続しているソースパケット列であるから、再生装置のアライバルタイムクロックを計時するクロックカウンタが計時を行っている間、ATCシーケンスを構成する各ソースパケットは、連続的なソースパケットデパケッタイジング処理、及び、連続的なパケットフィルタリング処理に供されることになる。
【００６０】
ATCシーケンスがソースパケットの配列であるのに対し、STC時間軸におけるタイムスタンプが連続しているTSパケットの配列をSTCシーケンスという。"STCシーケンス"とは、TSパケットの配列であって、TSのシステム基準時刻であるSTC(System Time Clock)の不連続点(system time-base discontinuity)をもたないものをいう。STCの不連続点とは、デコーダがSTCを得るために参照するPCR(Program Clock Reference)を運ぶPCRパケットの不連続情報(discontinuity＿indicator)がONである点である。STCシーケンスは、STCのタイムスタンプが連続しているTSパケット列であるから、再生装置のシステムタイムクロックを計時するクロックカウンタが計時を行っている間、STCシーケンスを構成する各TSパケットは、再生装置内に存在するデコーダの連続的なデコード処理に供されることになる。  拡張エントリーマップは、GOP先頭のフレーム期間を表すプレゼンテーションタイムスタンプに対応付けて、ディペンデントビュービデオストリームにおけるGOP先頭のビューコンポーネントの先頭位置となるアクセスユニットデリミターのソースパケット番号を示す。
【００６１】
一方、3Dストリーム情報ファイルにおける基本エントリーマップは、2Dストリーム情報ファイルとの互換をもちつつも、GOP先頭のフレーム期間を表すプレゼンテーションタイムスタンプに対応付けて、ベースビュービデオストリームにおけるGOP先頭のビューコンポーネントの先頭位置となるアクセスユニットデリミターのソースパケット番号を示す。
【００６２】
＜プレイリスト情報ファイル＞
プレイリスト情報ファイルは、再生装置にプレイリストを再生させるための情報を格納したファイルである。"プレイリスト"とは、トランスポートストリーム(TS)の時間軸上で再生区間を規定するとともに、この再生区間同士の再生順序を論理的に指定することで規定される再生経路であり、TSのうち、どれをどの部分だけ再生して、どのような順序でシーン展開してゆくかを規定する役割をもつ。プレイリスト情報は、かかるプレイリストの"型"を定義する。プレイリスト情報によって定義される再生経路は、いわゆる"マルチパス"である。マルチパスとは、主となるTSに対して定義された再生経路(メインパス)と、従となるストリームに対して定義された再生経路(サブパス)とを束ねたものである。このマルチパスにおいてベースビュービデオストリームの再生経路を規定し、サブパスにおいてディペンデントビュービデオストリームの再生経路を規定すれば、立体視を再生するためのビデオストリームの組合せを、好適に規定することができる。
【００６３】
オブジェクト指向プログラミング言語ベースのアプリケーションが、このプレイリスト情報を再生するフレームワークプレーヤインスタンスの生成を命じることで、マルチパスによるAV再生を開始させることができる。フレームワークプレーヤインスタンスとは、メディアフレームワークプレーヤクラスを基にして仮想マシンのヒープメモリ上に生成される実際のデータのことである。またコマンドベースのプログラムが、このプレイリスト情報を引き数で指定した再生コマンドを発行することで、マルチパスによる再生を開始することもできる。
【００６４】
プレイリスト情報は、1つ以上のプレイアイテム情報を含む。プレイアイテム情報とは、ビデオストリームの再生時間軸のうち、In＿Timeとなる時点と、Out＿Timeとなる時点の組みを1つ以上定義する再生区間情報である。
【００６５】
プレイリスト情報は、プレイアイテム情報−ストリーム情報−トランスポートストリームという階層構造を有しており、トランスポートストリーム及びストリーム情報の組みと、プレイアイテム情報との比率については、１対多の関係にして、1つのトランスポートストリームを複数のプレイアイテム情報から多重参照することができる。よって、あるプレイリストのために作成されたトランスポートストリームをバンクフィルムとして採用し、これを複数のプレイリスト情報ファイルにおけるプレイアイテム情報から参照することで、映画作品のバリエーションを効率良く作成することができる(尚、バンクフィルムとは、映画業界の用語であり、複数のシーンで使いまわしされる映像内容のことである)。
【００６６】
一般には、プレイリストという単位はユーザから認識されないので、ストリームファイルから派生した複数のバリエーション(例えば劇場公開版やTV放映版)が、プレイリストとして認識される。
【００６７】
プレイリスト情報には、2Dプレイリスト情報と、3Dプレイリスト情報とがあり、これらの違いは、3Dプレイリスト情報内にベースビューインディケータと、立体視ストリーム番号テーブルとが存在することである。
【００６８】
「立体視ストリーム番号テーブル」とは、3D出力モードでのみ再生すべきエレメンタリストリームのストリームエントリー及びストリーム属性を、ストリーム番号に対応付けて示すテーブルである。
【００６９】
「ベースビューインディケータ」は、視点間の相関性を利用した圧縮符号化の基礎となるベースビュービデオストリームを、左目及び右目のどちらとして表示されるべきかを示す情報である。このプレイリスト情報におけるベースビューインディケータを変化させることで、ベースビュービデオストリームを、左目及び右目用のうちどちらにするかという割り当てをプレイリストのレベルで変化させることができる。
【００７０】
ストリームの構造に依拠しないプレイリストのレベルで、上記割り当てを変化させることができるので、画像中の物体の位置及び角度がベースビュー＝左目、ディペンデントビュー＝右目用のように設定されているプレイリストが存在する場合、このプレイリストとは別バージョンとして、ベースビュー＝右目用、ディペンデントビュー＝左目のように設定されているプレイリストを作成することができる。
【００７１】
プレイリストのレベルで、ベースビュー、ディペンデントビューに対する左目、右目用の割り当てを逆転させれば、立体視効果を逆転させることができる。例えば、画面の手前に対象物が出現するような立体視効果を意図したプレイリストが既に作成されている場合、かかるプレイリストと別に、画面の奥に対象物が出現するような立体視効果を意図したプレイリストを作成することができる。よって3Dプレイリストでは、立体視効果が異なる、プレイリストのバリエーションを簡易に作成することがでるという効果を奏する。
【００７２】
図５（ｂ）は、メインTSの内部構成を示し、同図（ｃ）は、サブTSの内部構成を示す。同図（ｂ）に示すように、メインTSは、１本のベースビュービデオストリームと、３２本の左目PGストリーム、３２本の左目用IGストリーム、３２本のオーディオストリームを含むものとする。同図（ｃ）に示すように、サブTSは、１本のディペンデントビュービデオストリームと、３２本の右目PGストリーム、３２本の右目用IGストリームを含むものとする。
【００７３】
次に、TSの内部構成について説明する。
TSに多重化されるエレメンタリストリーム(ES)は、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィクスストリーム、インタラクティブグラフィクスストリームがある。
【００７４】
・ビデオストリーム
ベースビュービデオストリームは、ピクチャインピクチャアプリケーションにおけるプライマリビデオストリームを構成する。ピクチャインピクチャアプリケーションは、このプライマリビデオストリームの他、セカンダリビデオストリームから構成される。プライマリビデオストリームとは、ピクチャインピクチャアプリケーションにおいて親画面となるピクチャデータから構成されるビデオストリームである。対照的に、セカンダリビデオストリームとは、ピクチャインピクチャにおいて子画面として、親画面の一部にはめ込まれるピクチャデータから構成されるビデオストリームである。
【００７５】
プライマリビデオストリームを構成するピクチャデータと、セカンダリビデオストリームを構成するピクチャデータとはデコード後、別々のプレーンメモリに格納される。セカンダリビデオストリームを構成するピクチャデータを格納するプレーンメモリの前段には、セカンダリビデオストリームを構成するピクチャデータのスケーリング変更及び表示座標の位置決めを行う構成要素(Scalling&Positioning)が存在する。
【００７６】
・オーディオストリーム
オーディオストリームには、プライマリオーディオストリーム、セカンダリオーディオストリームの２種類がある。プライマリオーディオストリームは、ミキシング再生を行う場合、主音声となるべきオーディオストリームであり、セカンダリオーディオストリームは、ミキシング再生を行う場合、副音声をとなるべきオーディオストリームである。セカンダリオーディオストリームは、このミキシングのためのダウンサンプリングのための情報、ゲイン制御のための情報が存在する。
【００７７】
・プレゼンテーショングラフィクスストリーム(PGストリーム)
PGストリームは、デコーダにパイプラインを採用することで、映像との緻密な同期を実現することができ、字幕表示に適したグラフィクスストリームであり、2DPGストリームと、立体視PGストリームという2つの種類がある。立体視PGストリームには、左目PGストリーム及び右目PGストリームという二種類のものがある。
【００７８】
2DPGストリームは最大３２本、左目PGストリームの最大３２本、右目PGストリームも最大３２本定義することができる。これらのPGストリームには、それぞれ、別々のパケット識別子が付与されており、多重分離部に、再生すべきパケット識別子を指示することで、これらのPGストリームのうち、所望のものが再生に供されることになる。
【００７９】
パイプラインによるデコード動作の実現により、動画像との緻密な同期を実現するので、PGストリームの用途は字幕のような文字再生に限定されない。映画作品のマスコットキャラクタを表示して、これを動画像と同期させつつ動作させるなど、緻密な同期が必要なグラフィクス再生であれば、どのようなものも、PGストリームによる再生対象として、採用することができる。
【００８０】
ストリームファイルに多重化されないが、字幕を現すストリームには、PGストリームの他に、テキスト字幕(textST)ストリームというものがある。textSTストリームは、字幕の内容をキャラクタコードで現したストリームである。
【００８１】
PGストリーム、テキスト字幕ストリームは、これらの種類が区別されることなく、同じストリーム種別であるとして、これらPGストリーム及びテキスト字幕ストリームは、同じストリーム登録列に登録される。そして、ストリーム選択のプロシージャを実行するにあたって、ストリーム登録列におけるストリーム登録の順位に従い、再生されるべきPGストリーム又はテキスト字幕ストリームが定まる。PGストリーム、テキスト字幕ストリームは、ストリーム種が区別されることなく、ストリーム選択のプロシージャに供されるのでこれらPGストリーム及びテキスト字幕ストリームを1つのストリーム種別、つまり、"PG＿テキスト字幕ストリーム(略して、字幕ストリームと呼ぶ場合もある)"という種別で扱う。
【００８２】
2D用のPG＿テキスト字幕ストリームは、1plane＋Offsetモード、上端側2D字幕再生モード、下端側2D字幕再生モードにおいて再生される。
・インタラクティブグラフィクス(IG)ストリーム
IGストリームは、対話操作の情報を具備することで、ビデオストリームの再生進行に伴ってメニューを表示したり、またユーザ操作に従いポップアップメニューを表示することができるグラフィクスストリームである。
【００８３】
IGストリームもPGストリームと同様、2DIGストリームと、立体視IGストリームという2つの種類がある。IGストリームの制御情報(対話制御セグメントという)は、ユーザインターフェイスモデルを規定する情報(User＿interface＿model)をもっており、オーサリング者は、このユーザインターフェイスモデル情報を設定することで、ビデオストリームの再生進行に伴ってメニューを表示するか(Alwaysオンという)、ユーザ操作に従いポップアップメニューを表示するか(ポップアップメニューオン)の何れかを指定することができる。
【００８４】
IGストリームが対話操作の情報をもつ意義は以下の通りである。Java仮想マシンがアプリケーションからの要求に応じてプレイリスト再生の開始を再生制御の主体である再生制御エンジンに指示する場合、Java仮想マシンは、再生制御エンジンに再生を命じた後、プレイリスト再生を開始した旨のレスポンスをアプリケーションに返す。つまり、再生制御エンジンによるプレイリスト再生が継続している間、Java仮想マシンは、実行終了待ちにはならない。何故なら、Java仮想マシンは、いわゆるイベントドリブン型の動作主体であり、再生制御エンジンがプレイリストの再生を行っている間も、動作を行うことができるからである。
【００８５】
一方、HDMVモードにおいて、コマンドインタプリタが、プレイリスト再生を再生制御エンジンに命じる場合、プレイリスト再生が終了するまで、そのプレイリスト再生の実行終了待ちとなる。再生制御エンジンによる再生が継続している間、コマンド実行部は、対話的な処理を実行することはできない。このコマンドインタプリタの代わりに、グラフィクスデコーダが対話的な動作を行う。グラフィクスデコーダに対話的な動作を行わせるため、IGストリームには、ボタン部材を用いた対話的な操作を規定する制御情報が組込まれている。  
【００８６】
・各ストリーム種別において許容される表示モード
3D表示モードのどれが許容されるかは、ストリーム種別によって異なる。プライマリビデオストリームの3D表示モードには、B−Dプレゼンテーションモード、B−Bプレゼンテーションモードといった2つの出力モードが許容される。プライマリビデオストリームにおいて、B−Bプレゼンテーションモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。B−Dプレゼンテーションモードで再生される場合におけるプライマリビデオストリームの類型を、"立体視B−D再生タイプ"という。B−Bプレゼンテーションモードで再生される場合におけるプライマリビデオストリームの類型を、立体視B−B再生タイプという。
【００８７】
PGストリームの3D表示モードには、B−Dプレゼンテーションモード、1plane＋Offsetモード、1plane＋Zero Offsetモード、上端側2D字幕再生モード、下端側2D字幕再生モードといった5つの出力モードが許容される。PGストリームにおいて、1plane＋Zero Offsetモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。B−Dプレゼンテーションモードで再生される場合におけるPGストリームの類型を、"立体視再生タイプ"という。1plane＋Offsetモードで再生される場合におけるPGストリーム,PG＿テキスト字幕ストリームの類型を、1plane＋Offsetタイプという。1plane＋Zero Offsetモードで再生される場合におけるPGストリーム,PG＿テキスト字幕ストリームの類型を、1plane＋Zero Offsetタイプという。上端側2D字幕再生モードで再生される場合におけるPGストリーム,PG＿テキスト字幕ストリームの類型を、"上端側2D字幕再生タイプ"という。下端側2D字幕再生モードで再生される場合におけるPGストリーム,PG＿テキスト字幕ストリームの類型を、"下端側2D字幕再生タイプ"という。
【００８８】
テキスト字幕ストリームの3D表示モードには、1plane＋Offsetモード、1plane＋Zero Offsetモード、上端側2D字幕再生モード、下端側2D字幕再生モードといった4つの出力モードが許容される。テキスト字幕ストリームにおいて、1plane＋Zero Offsetモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。
【００８９】
IGストリームの3D表示モードには、B−Dプレゼンテーションモード、1plane＋Offsetモード、1plane＋Zero Offsetモードといった3つの出力モードが許容される。IGストリームにおいて、1plane＋Zero Offsetモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。以降の説明では、特に断らない限り3D出力モード実行時には、ピクチャインピクチャは使用できないものとする。ピクチャインピクチャ及び3D出力モードは、何れも非圧縮のピクチャデータを格納するためのビデオプレーンを2つ必要とするからである。また特に断らない限り、3D出力モードでは、サウンドミキシングも使用できないものとする。
【００９０】
続いて、メインTS及びサブTSの内部構成について説明する。図６は、メインTS及びサブTSの内部構成を示す。
同図（ａ）は、メインTSの内部構成を示す。メインTSは、以下のソースパケットによって構成されている。
【００９１】
0x0100のパケットIDを有するソースパケットはProgram＿Map＿Tableを構成し、0x1001のパケットIDを有するTSパケットはPCRを構成する。
0x1011のパケットIDを有するソースパケット列は、プライマリビデオストリームを構成する。
【００９２】
0x1200から0x121FのパケットIDを有するソースパケット列までは、３２本の2DPGストリームを構成する。
0x1400から0x141FのパケットIDを有するソースパケット列までは ３２本の2DIGストリームを構成する。
【００９３】
0x1100のパケット識別子を有するソースパケット列から、0x111Fのパケット識別子を有するソースパケット列までは、プライマリオーディオストリームを構成する。
これらのソースパケットのパケット識別子を多重分離部に指示することにより、メインTSに多重化されている複数のESのうち、所望のものを分離してデコーダに供することができる。
【００９４】
図（ｂ）は、サブTSの内部構成を示す。サブTSは、以下のソースパケットによって構成されている。
Ox1012のパケット識別子を有するソースパケット列は、ディペンデントビュービデオストリームを構成する。
【００９５】
0x1220のパケット識別子を有するソースパケット列から0x123FのパケットIDを有するソースパケット列までは、３２本の左目PGストリームを構成する。
Ox1240のパケット識別子を有するソースパケット列から0x125Fのパケット識別子を有するソースパケット列までは、３２本の右目PGストリームを構成する。
【００９６】
0x1420のパケット識別子を有するソースパケット列から0x143FのパケットIDを有するソースパケット列までは ３２本の左目用IGストリームを構成する。
Ox1440のパケット識別子を有するソースパケット列から0x145Fのパケット識別子を有するソースパケット列は、３２本の右目用IGストリームを構成する。
【００９７】
以上がストリームファイルについての説明である。続いて、プレイリスト情報の詳細について説明する。
上述したようなマルチパスを定義するため、図７のような内部構成を有する。図７は、プレイリスト情報の内部構成を示す。同図（ａ）に示すようにプレイリスト情報は、「メインパス情報」、「サブパス情報」、「プレイリストマーク情報」、「エクステンションデータ」を含む。以下、これらの構成要素について説明する。
【００９８】
１）メインパス情報は、１つ以上の主たる再生区間情報から構成される。図７（ｂ）は、メインパス情報、及び、サブパス情報の内部構成を示す図であり、本図に示すように、メインパス情報は、１つ以上の主たる再生区間情報から構成される。サブパス情報は、１つ以上の従たる再生区間情報から構成される。
【００９９】
主たる再生区間情報はプレイアイテム情報と呼ばれ、TSの再生時間軸のうち、In＿Timeとなる時点と、Out＿Timeとなる時点の組みを1つ以上定義することにより、論理的な再生区間を定義する情報である。再生装置には、カレントのプレイアイテムの番号を格納するプレイアイテム番号レジスタを含み、複数のプレイリスト情報のうち、このプレイアイテム番号レジスタに格納されているものが、現在の再生対象になる。
【０１００】
図７（ｃ）は、プレイアイテム情報の内部構成を示す。本図に示すように、「ストリーム参照情報」、「インタイムアウトタイム情報」、「接続状態情報」、「基本ストリーム選択テーブル」を含む。
【０１０１】
ストリーム参照情報は、プレイアイテムを構成するトランスポートストリームを"AVクリップ"として管理しているストリーム情報ファイルを示す「ストリーム情報ファイルネーム情報(clip＿information＿file＿name)」、そのTSにおける符号化方式を示す「クリップ符号化方式識別子(Clip＿codec＿indentifier)」、当該TSのSTCシーケンスにおいて、インタイム及びアウトタイムが設定されているSTCシーケンスがどれであるかを示す「STC識別子レファレンス(STC＿ID＿referrence)」を含む。
【０１０２】
以上がプレイアイテム情報についての説明である。
２）従たる再生区間情報は、サブパス情報と呼ばれ、複数のサブプレイアイテム情報から構成される。図７（ｄ）は、サブプレイアイテムの内部構成を示す。本図に示すように、サブプレイアイテム情報は、STCシーケンスの時間軸にインタイムと、アウトタイムとの組みを規定することで、サブパスを構成する再生区間を定義する情報であり、「ストリーム参照情報」、「インタイムアウトタイム情報」、「シンクロプレイアイテムレファレンス」、「シンクロ開始時刻情報」を含む。
【０１０３】
『ストリーム参照情報』は、プレイアイテム情報と同様、『ストリーム情報ファイルネーム情報』『クリップ符号化方式識別子』、『STC識別子レファレンス』を含む。
『インタイムアウトタイム情報(SubPlayItem＿In＿Time,SubPlayItem＿Out＿Time)』は、STCシーケンス時間軸における、サブプレイアイテムの始点と、STCシーケンス時間軸上における、サブプレイアイテムの終点とを示す。
【０１０４】
「シンクロプレイアイテムレファレンス(Sync＿PlayItem＿Id)」は、プレイアイテムのうち、本サブプレイアイテムが同期すべきものを一意に指定する情報である。サブプレイアイテムインタイムは、この同期プレイアイテム参照子で指定されたプレイアイテムの再生時間軸上に存在する。
【０１０５】
「シンクロ開始時刻情報(Sync＿Start＿PTS＿of＿PlayItem)」は、同期プレイアイテム参照子で指定されたプレイアイテムのSTCシーケンスの時間軸のうち、サブプレイアイテムインタイムで指定されたサブプレイアイテムの始点が、どの時点に写像されるかを示す
３）プレイリストマーク情報は、再生区間固有のマークポイントを定義する情報であり、再生区間を示す参照子と、デジタルストリームの時間軸において、マークポイントが何処にあるかを示すタイムスタンプと、マークポイントの属性を示す属性情報とを含み、
前記属性情報は、プレイリストマーク情報により定義されたマークポイントが、リンクポイントであるか、エントリーマークであるかを示す。
【０１０６】
リンクポイントは、リンクコマンドによるリンクが可能であるが、チャプタースキップ操作がユーザによりなされた場合の選択対象にはならないマークポイントである。
エントリーマークは、リンクコマンドによるリンクが可能であり、尚且つチャプタースキップ操作がユーザによりなされた場合の選択対象になるマークポイントである。
【０１０７】
IGストリームのボタン情報内に組込まれたリンクコマンドは、プレイリストマーク情報を介した間接参照の形式で頭出し位置を指定している。
＜基本ストリーム選択テーブル(STreamNumber＿table)＞
前記基本ストリーム選択テーブルは、プレイリストを構成する複数のプレイアイテムのうち、その基本ストリーム選択テーブルを包含しているのものがカレントプレイアイテムになった際、マルチパスのメインパスにて参照されているAVクリップに多重化されているES、及び、マルチパスのサブパスにて参照されているAVクリップに多重化されているESのうち、どれの再生を許可するかを、複数のストリーム種別毎に規定するテーブルである。ここでのストリーム種別とは、ピクチャインピクチャにおけるプライマリビデオストリーム、ピクチャインピクチャにおけるセカンダリビデオストリーム、サウンドミキシングにおけるプライマリオーディオストリーム、サウンドミキシングにおけるセカンダリオーディオストリーム、PG＿テキスト字幕ストリーム、IGストリームといった種別をいい、基本ストリーム選択テーブルは、これらのストリーム種別毎に、再生を許可すべきストリームを登録することができる。具体的には、基本ストリーム選択テーブルは、ストリーム登録の配列から構成される。ここでストリーム登録とは、基本ストリーム選択テーブルが帰属しているプレイアイテムがカレントプレイアイテムになった際、再生を許可すべきESがどのようなストリームであるかを、そのストリーム番号に対応付けて示すものであり、ストリーム登録は、論理的なストリーム番号に、ストリームエントリー及びストリーム属性の組合せを対応付けるというデータ構造になっている。
【０１０８】
ストリーム登録におけるストリーム番号は、１、２、３というような整数値で表現され、ストリーム番号の最大数は、対応するストリーム種別のストリーム本数となる。
再生装置には、このストリーム種別毎に、ストリーム番号レジスタが存在しており、ここに格納されたストリーム番号で指示されるESが、現在再生対象になっているES、つまりカレントストリームになる。
【０１０９】
このストリームエントリー内に、再生すべきESのパケット識別子が記述される。ストリームエントリー内に、再生すべきESのパケット識別子を記述することができるので、ストリーム登録におけるストリーム番号を再生装置のストリーム番号レジスタに格納し、ストリーム登録におけるストリームエントリー内のパケット識別子に基づいて再生装置のPIDフィルタにパケットフィルタリングを再生装置に実行させる。こうすることで、基本ストリーム選択テーブルにおいて再生が許可されたESのTSパケットがデコーダに出力され、ESの再生がなされることになる。
【０１１０】
基本ストリーム選択テーブルにおけるこれらのストリーム登録は、ストリーム番号の順序に従って並べられており、ストリーム番号の順序に基づくストリーム登録の順位は、"再生装置が再生することができる"、"ストリームの言語属性が再生装置の言語設定と一致する"の条件を満たすストリームが複数存在する場合、ストリーム登録列におけるストリーム番号の順位によって、選択対象となるストリームが決定される。
【０１１１】
こうすることで、基本ストリーム選択テーブルにおけるストリーム登録の中に、再生装置が再生できないものが存在する場合、かかるストリームは再生から除外されることになり、また、"再生装置が再生することができる"、"ストリームの言語属性が再生装置の言語設定と一致する"との条件を満たすストリームが複数存在する場合は、それらのうちどれを優先的に選択すべきかという指針をオーサリング者は再生装置に伝えることができる。
【０１１２】
"再生装置が再生することができる"、"ストリームの言語属性が再生装置の言語設定と一致する"という条件を満たすストリームが存在するかどうかという判定や、"再生することができる"、"ストリームの言語属性が再生装置の言語設定と一致する"との条件を満たすストリームのうちどれを選択するかという選択手順は、ストリーム選択プロシージャと呼ばれる。ストリーム選択プロシージャは、カレントプレイアイテムが新しいものに切り替った際、また、ユーザからストリーム切り替えが要求された際、実行される。
【０１１３】
カレントプレイアイテムが新しいものに切り替わる等、再生装置の状態変化が生じた際、上述したような判定や選択を行い、再生装置のストリーム番号レジスタにストリーム番号を設定する一連の手順を"状態変化時に実行すべきプロシージャ"という。ストリーム番号レジスタは、ストリーム種別毎に存在するから、上記プロシージャは、ストリーム種別ごとに実行されることになる。
【０１１４】
ストリーム切り替え要求がユーザによってなされた場合、上述したような判定や選択を行い、再生装置のストリーム番号レジスタにストリーム番号を設定する一連の手順を"ストリーム変化が要求された際のプロシージャ"という。
【０１１５】
ディスクが装填された際、ストリーム番号レジスタをストリーム登録列における初期値に設定しておくとの手順を、"初期化"という。
基本ストリーム選択テーブルにおけるストリーム登録列は、サブプレイアイテム情報によって指定されているストリームと、プレイアイテム情報によって指定されているストリームとに一律に優先順序を付与しているので、ビデオストリームとは多重化されていないストリームであっても、サブプレイアイテム情報によって指定されていれば、ビデオストリームと同期再生すべきストリームの選択にあたっての選択の対象となる。
【０１１６】
そして、サブプレイアイテム情報にて指定されたストリームを再生装置が再生することができ、尚且つ、サブプレイアイテム情報にて指定されたストリームの優先順序がビデオストリームと多重化されたグラフィクスストリームの優先順序よりも高い場合は、ビデオストリームと多重化されたストリームの代わりに、サブプレイアイテム情報にて指定されたストリームを再生に供することができる。
【０１１７】
基本ストリーム選択テーブルにおけるストリーム番号の用途を述べる。基本ストリーム選択テーブルに記載されたストリーム番号は、セットストリームコマンドのオペランドに使うことができる。
【０１１８】
セットストリームコマンドとは、オペランドに指定されたストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるコマンドであり、コマンドベースのプログラムが、ストリームの切り替えを再生装置に実行させる際に用いられる。
【０１１９】
また、ストリームチェンジUOの引き数やセットストリームAPIの引き数にも使用することができる。ストリームチェンジUOとは、引き数に指定されたストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるユーザ操作イベントである。
【０１２０】
セットストリームAPIとは、引き数に指定されたストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるAPIであり、オブジェクト指向プログラミング言語ベースのプログラムが、ストリーム切り替えを再生装置に実行させる際に用いられる。
【０１２１】
図８は、基本ストリーム選択テーブルの一例を示す。同図（ａ）は、ストリーム種別に、プライマリビデオストリーム、セカンダリビデオストリーム、PGストリーム、IGストリーム、セカンダリビデオストリーム、セカンダリオーディオストリームといった種別が存在する場合に、基本ストリーム選択テーブルに設けられる複数のストリーム登録列を示す。同図（ｂ）は、基本ストリーム選択テーブルにより、メインTS,サブTSから、どのようなESが分離されるかを示す。同図左側は、メインTS、サブTSを示し、真ん中は、基本ストリーム選択テーブルと、多重分離部とを示す。右側は、基本ストリーム選択テーブルに基づき分離されるプライマリビデオストリーム、プライマリオーディオストリーム、PGストリーム、IGストリーム、セカンダリビデオストリーム、セカンダリオーディオストリームを示す。
【０１２２】
続いて、エクステンションデータの詳細について説明する。
MVCビデオストリームをプレイリスト情報が参照する場合、拡張ストリーム選択テーブルは、プレイリスト情報ファイルのエクステンションデータにおけるデータブロックに格納されねばならない。
【０１２３】
ディスク上のMVCビデオストリームをプレイリスト情報が参照する場合、サブパス情報の拡張情報（サブパスブロックエクステンション）は、プレイリスト情報ファイルにおけるエクステンションデータのデータブロックに格納されねねばならない。
【０１２４】
2D再生装置は、プレイリストファイルにおけるエクステンションデータに遭遇した際、未知のエクステンションデータを無視せねばならない。
＜拡張ストリーム選択テーブル(STreamNumber＿table＿StereoScopic(SS))＞
拡張ストリーム選択テーブルは、立体視出力モードにおいてのみ、ストリーム選択テーブルと共に使用されるストリーム選択テーブルであり、プレイアイテムの再生や、これに関連するサブパスが再生されている際、選択することができるESを定義する。
【０１２５】
前記拡張ストリーム選択テーブルは、立体視出力モードにおいてのみ再生を許可すべきESを示し、ストリーム登録列を含む。ストリーム登録列における個々のストリーム登録情報は、ストリーム番号と、そのストリーム番号に対応するストリームエントリーと、ストリーム属性とを含む。拡張ストリーム選択テーブルは、立体視出力モード固有の拡張を意味するので、各プレイアイテム情報に拡張ストリーム選択テーブル(STN＿table＿SS)が関連付けられているプレイリストを"3Dプレイリスト"という。
【０１２６】
拡張ストリーム選択テーブルにおけるストリームエントリーは、再生装置が立体視出力モードに設定されている場合において、対応するストリーム番号が再生装置におけるストリーム番号レジスタに設定された際、再生装置が多重分離に用いるべきパケット識別子を示す。ここで、基本ストリーム選択テーブルとの違いは、拡張ストリーム選択テーブルにおけるストリーム登録列は、ストリーム選択プロシージャの対象にならない点である。つまり、基本ストリーム選択テーブルにおけるストリーム登録列におけるストリーム登録情報は、個々のESの優先順序と解釈され、何れかのストリーム登録情報内のストリーム番号が、ストリーム番号レジスタに書き込まれる。しかし拡張ストリーム選択テーブルにおけるストリーム登録列は、ストリーム選択プロシージャの対象とはならず、拡張ストリーム選択テーブルにおけるストリーム登録情報は、何れかのストリーム番号がストリーム番号レジスタに格納された際、そのストリーム番号に対応するストリームエントリー及びストリーム属性を取り出すという目的のみに用いられる。
【０１２７】
2D出力モードから3D出力モードへと出力モードが切り替った際、対象となるストリーム選択テーブルが、基本ストリーム選択テーブルから拡張ストリーム選択テーブルに切り替ったために、ストリーム選択プロシージャを実行したとなると、ストリーム番号の同一性を維持することができず、強いては、言語属性の同一性も失われる可能性がある。
【０１２８】
2D出力モードから3D出力モードへの切り替え時に、言語属性を始めとするストリーム属性の同一性を維持するため、拡張ストリーム選択テーブルの用途を、上記のものにも留めている。
【０１２９】
拡張ストリーム選択テーブルにおけるストリーム番号の用途を述べる。拡張ストリーム選択テーブルに記載されたストリーム番号は、セットストリームコマンドやセット立体視ストリームコマンドのオペランドに使うことができる。
【０１３０】
セット立体視ストリームコマンドとは、オペランドに指定された立体視のためのストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるコマンドであり、コマンドベースのプログラムが、立体視ストリームへの切り替えを再生装置に実行させる際に用いられる。
【０１３１】
また、ストリームチェンジUOの引き数やセットストリームAPIの引き数にも使用することができる。
前記拡張ストリーム選択テーブルは、ディペンデントビュービデオストリームのストリーム登録列、PGストリームのストリーム登録列、IGストリームのストリーム登録列から構成される。
【０１３２】
拡張ストリーム選択テーブルにおけるストリーム登録列は、ストリーム選択テーブルにおける同じストリーム種別のストリーム登録列に結合される。この結合は、ストリーム選択テーブルにおけるプライマリビデオストリームのストリーム登録列に、拡張ストリーム選択テーブルにおけるディペンデントビュービデオストリームのストリーム登録列を結合し、ストリーム選択テーブルにおけるPGストリームのストリーム登録列に、拡張ストリーム選択テーブルにおけるPGストリームのストリーム登録列を結合し、IGストリームのストリーム登録列に、拡張ストリーム選択テーブルにおけるIGストリームのストリーム登録列を結合することでなされる。
【０１３３】
上記の結合がなされれば、結合後のストリーム選択テーブルのうち、基本ストリーム選択テーブルにおけるストリーム登録列に対して上記プロシージャが実行される。
図９は、拡張ストリーム選択テーブルの内部構成を示す。拡張ストリーム選択テーブルは、拡張ストリーム選択テーブルの全体長(length)、ポップアップ期間固定オフセット(Fixed＿offset＿during＿Popup)、各プレイアイテムにおけるそれぞれのストリーム種別に対応するストリーム登録列から構成される。
【０１３４】
ここでプレイアイテム＃1〜＃NというN個のプレイアイテムが存在する場合、プレイアイテム＃1〜＃Nのそれぞれに対応するストリーム登録列が、拡張ストリーム選択テーブルに設けられる。各プレイアイテムに対応するストリーム登録列は、ディペンデントビューストリーム登録列、PGストリーム登録列、IGストリーム登録列である。
【０１３５】
『Fixed＿offset＿during＿Popup』は、ポップアップ期間固定オフセットであり、IGストリームによるポップアップメニューがオンに設定されている場合、ビデオやPG＿テキスト字幕ストリームの再生タイプを制御する。この『Fixed＿offset＿during＿Popup』フィールドは、IGストリームにおけるuser＿interface＿modelフィールドがオン、つまり、ポップアップメニューのユーザインターフェイスがオンに設定されている場合、オンに設定される。IGストリームにおけるuser＿interface＿modelフィールドがオフ、つまり、AlwaysONのユーザインターフェイスに設定されている場合、オフに設定される。
【０１３６】
ポップアップ期間固定オフセット"=0"、つまり、IGストリームのユーザインターフェイスにおいてポップアップメニューがオフに設定されている場合、ビデオストリームはB−Dプレゼンテーションモードとなる。立体視PGストリームは、立体視再生タイプになる。1plane＋Offsetモードの再生時において、PG＿テキスト字幕ストリームは、1plane＋Offsetモードになる。
【０１３７】
ポップアップ期間固定オフセット"１"、つまり、IGストリームのポップアップメニューがオンである場合、ビデオストリームはB−Bプレゼンテーションモードとなる。立体視PGストリームは、1plane＋Offsetモードになり、1plane＋Offset用のPGストリームは、1plane＋Zero offset再生タイプとして再生される。
【０１３８】
1plane＋OffsetモードにおいてPG＿テキスト字幕ストリームは、1plane＋Zero offsetになる。
図１０は、拡張ストリーム選択テーブルにおけるストリーム登録列を示す。
【０１３９】
図１０（ａ）は、ディペンデントビュービデオストリームのストリーム登録列の内部構成を示す。ディペンデントビューストリームのストリーム登録列は、v(x)個のSS＿dependet＿view＿blockから構成される。ここで、v(x)とは、プレイアイテム情報＃xの基本ストリーム選択テーブルにおいて、再生が許可されているプライマリビデオストリームの本数である。図中の引き出し線は、ディペンデントビューストリームのストリーム登録列の内部構成をクローズアップして示している。引出線に示すように、SS＿dependet＿view＿blockは、ストリーム番号と、ストリームエントリーと、ストリーム属性と、オフセットシーケンス数(number＿of＿offset＿sequence)とから構成される。
【０１４０】
ストリームエントリーは、ディペンデントビュービデオストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、ディペンデントビュービデオストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおけるディペンデントビュービデオストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０１４１】
『ストリーム属性』は、ディペンデントビュービデオストリームの言語属性を含む。
『オフセットシーケンス数(number＿of＿offset＿sequence)』は、ディペンデントビュービデオストリーム内に存在するオフセットの本数を示す。
【０１４２】
『オフセットシーケンス本数情報(図中のnumber＿of＿offset＿sequence)』は、ディペンデントビューストリームにおけるオフセットシーケンスの個数を示す。
拡張ストリーム選択テーブルにおけるこの値は、ディペンデントビューストリームに含まれるオフセットシーケンスの個数と同じになる。
【０１４３】
図１０（ａ）においてディペンデントビュービデオストリームのストリーム登録列は、データ構造上、複数のディペンデントビュービデオストリームについてのストリーム登録情報を設けるものになっている。通常、ベースビュービデオストリームの本数は1つであるから、ディペンデントビュービデオストリームにおけるストリーム登録情報の個数も唯一つになる。
【０１４４】
図１０（ｂ）は、PGストリームのストリーム登録列の内部構成を示す。PGストリームのストリーム登録列は、P(x)個のストリーム登録情報から構成される。ここで、P(x)とは、プレイアイテム情報＃xの基本ストリーム選択テーブルにおいて、再生が許可されているPGストリームの本数である。
【０１４５】
図中の引き出し線は、ストリーム登録列の共通の内部構成をクローズアップして示している。
『PG＿テキスト字幕オフセットシーケンスIDレファレンス情報(PGtextST＿offset＿sequence＿id＿ref)』は、PG＿テキスト字幕ストリームオフセットシーケンスレファレンス情報であり、1plane＋OffsetモードのPG＿テキスト字幕ストリームについてのオフセットシーケンスを指示する。
【０１４６】
オフセットメタデータは、ディペンデントビュービデオストリームのアクセスユニットによって供給される。再生装置は、このフィールドによって提供されたオフセットを1plane＋Offsetモードタイプのプレゼンテーショングラフィクス(PG)プレーンに適用せねばならない。
【０１４７】
このフィールドが不定値(FF)である場合、再生装置はPGストリームプレーンメモリに、このオフセットを適用しない。
『立体視PG存否フラグ(is＿SS＿PG)』は、PGストリームにおける左目用IGのストリームエントリー、右目用IGのストリームエントリー、ストリーム属性の有効性と、存在とを指示する。立体視PGストリームにおける構造が存在しない場合、このフィールドは0に設定されねばならない。立体視PGストリームにおける構造が存在する場合、このフィールドは1に設定されねばならない。
【０１４８】
『左目ストリームエントリー』は、左目PGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、左目PGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける左目PGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０１４９】
『右目ストリームエントリー』は、右目PGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、右目PGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける右目PGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。拡張ストリーム選択テーブルのストリーム登録情報におけるstream＿entry＿for＿depentdent＿viewによって参照されているストリームファイルが、基本ストリーム選択テーブルのストリームエントリーによって参照されているストリームファイルとは異なる場合、右目PGストリームを格納しているストリームファイルを改めて読み出さねばならない。
【０１５０】
『共通ストリーム属性』は、左目PGストリーム及びディペンデントPGストリームの言語属性を含む。
『立体視PG＿テキスト字幕オフセットシーケンスレファレンス情報(SS＿PG＿textST＿offset＿sequence＿id＿ref)』は、PG＿テキスト字幕ストリーム用のオフセットシーケンスを参照するためのレファレンス情報であり、PG＿テキスト字幕ストリームのためのオフセットシーケンスを指示する。再生装置は、このフィールドによって提供されたオフセットをPGプレーンに適用せねばならない。
【０１５１】
このフィールドが不定値(FF)である場合、再生装置はPGストリームプレーンメモリに、このオフセットを適用しない。
『ビデオシフトモード(video_shift_mode)』は、字幕の表示領域の確保処理を規定する領域確保フラグであり、字幕の表示領域をビデオプレーンの上端又は下端に確保するか否かと、字幕の表示領域がビデオプレーンの上端及び下端の何れであるかとを指示する。字幕の表示領域をビデオプレーンの上端又は下端に確保しない場合、ビデオシフトモードは"Keep"に設定される。video_shift_modeがKeepに設定されている場合には、図１１に示すように、ビデオプレーンメモリに格納されたピクチャデータを上下方向にシフトさせず、そのままPGストリームプレーンメモリに格納された字幕と合成される。
【０１５２】
PG＿テキスト字幕ストリームの字幕表示領域がビデオプレーンの下端であるなら、ビデオシフトモードは"Up"に設定され、PG＿テキスト字幕ストリームの字幕表示領域がビデオプレーンの上端であるなら、ビデオシフトモードは"Down"に設定される。
【０１５３】
video_shift_modeがUpに設定されているPGストリームは、デコードすることで得られる字幕が画面の下端に存在しているので、図１２の（ａ）に示すように、ビデオプレーンメモリに格納されたピクチャデータを上方向にシフトさせ、PGストリームプレーンメモリに格納された字幕と合成することで、立体視映像に字幕がめり込んで表示されることを防ぐことができる。video_shift_modeがDownに設定されているPGストリームは、デコードすることで得られる字幕が画面の上端に存在しているので、図１２の（ｂ）に示すように、ビデオプレーンメモリに格納されたピクチャデータを下方向にシフトさせ、PGストリームプレーンメモリに格納された字幕と合成することで、立体視映像に字幕がめり込んで表示されることを防ぐことができる。
【０１５４】
図１０（ｃ）は、IGストリームのストリーム登録列の内部構成を示す。IGストリームのストリーム登録列は、I(x)個のストリーム登録情報から構成される。ここで、I(x)とは、プレイアイテム情報＃xの基本ストリーム選択テーブルにおいて、再生が許可されているIGストリームの本数である。図中の引き出し線は、ストリーム登録列の共通の内部構成をクローズアップして示している。
【０１５５】
『IGオフセットシーケンスIDレファレンス情報(IG＿offset＿sequence＿id＿ref)』は、インタラクティブグラフィクスオフセットシーケンスレファレンスであり、1plane＋OffsetモードのIGストリームのシーケンスIDのレファレンスである。この値は、オフセットシーケンスに定義されているオフセットシーケンスIDを指示する。上述したように、オフセットメタデータは、ディペンデントビュービデオストリームによって供給される。再生装置は、このフィールドによって提供されたオフセットを1plane＋OffsetモードタイプのIGストリームに適用せねばならない。
【０１５６】
このフィールドが不定値(FF)である場合、再生装置はインタラクティブグラフィクススプレーンに、このオフセットを適用しない。
『B-Bモード時のオフセット方向情報(IG＿Plane＿offset＿direction＿during＿BB＿video)』は、B−Bプレゼンテーションモードにおいてポップアップメニューのユーザインターフェイスで、IGストリームが再生されている間、1plane＋Offsetモードにおけるインタラクティブグラフィクス(IG)プレーンにおけるオフセット方向を指示する。
【０１５７】
値"０"でフロント設定、つまり、プレーンメモリは、TVと視聴者との間に存在し、レフトビュー期間においてプレーンは右方向に、ライトビュー期間においてプレーンは左方向にシフトされる。
【０１５８】
値"=1"でビハインド設定、つまり、プレーンメモリは、TV又はスクリーンの背後に存在し、レフトプレーンは左方向に、ライトプレーンは右方向にシフトされる。
『B-Bモード時のオフセット値情報(IG＿Plane＿offset＿value＿during＿BB＿video)』は、B−BプレゼンテーションモードでポップアップメニューのユーザインターフェイスによってIGストリームが再生されている間、1plane＋OffsetモードにおけるIGプレーンのオフセット値を画素単位で指示する。
【０１５９】
『立体視IG存否フラグ(is＿SS＿IG)』は、、IGストリームにおける左目用IGのストリームエントリー、右目用IGのストリームエントリー、ストリーム属性の有効性と、存在とを指示する。立体視IGストリームのデータ構造が存在しない場合、このフィールドは値0に設定されねばならない。再生が許可されているIGストリームが立体視IGストリームである場合、このフィールドは、値1に設定されねばならない。
【０１６０】
『左目ストリームエントリー』は、左目用IGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、左目用IGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける左目用IGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０１６１】
『右目ストリームエントリー』は、右目用IGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、右目用IGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける右目用IGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。拡張ストリーム選択テーブルのストリーム登録情報におけるstream＿entry＿for＿depentdent＿viewによって参照されているストリームファイルが、基本ストリーム選択テーブルのストリームエントリーによって参照されているストリームファイルとは異なる場合、右目用IGストリームを格納しているストリームファイルを改めて読み出さねばならない。
【０１６２】
『共通ストリーム属性』は、左目用IGストリーム及び右目IGストリームの言語属性を含む。
『立体視IGオフセットシーケンスレファレンス情報』は、立体視タイプのIGストリームのためのオフセットシーケンスIDのレファレンスであり、ディペンデントビュービデオストリームのオフセットメタデータにおけるオフセットシーケンスを指示する。再生装置は、このフィールドによって提供されたオフセットを立体視タイプのIGプレーンに適用せねばならない。
【０１６３】
このフィールドが不定値(FF)である場合、再生装置はIGプレーンに、このオフセットを適用しない。
PG＿テキスト字幕ストリーム用のオフセットシーケンスのレファレンス情報及びIGストリーム用のオフセットシーケンスのレファレンス情報は、ストリーム番号に対応付けて、ストリーム登録情報に記載されているため、装置状態の変化時やストリーム変更要求の発生時にストリーム選択プロシージャが実行され、装置側の言語設定に応じたストリーム番号がストリーム番号レジスタに設定された場合、その新たなストリーム番号に対応したレファレンスによって指示されるオフセットシーケンスが、ビデオデコーダからシフト部に供給されることになる。こうすることで、再生装置における言語設定に応じた、最適なオフセットシーケンスがシフト部に供給されるので、1plane＋Offsetモードにおけるグラフィクスの奥行きを、再生装置の言語設定に応じた最適なものにすることができる。
【０１６４】
拡張ストリーム選択テーブルにおける制限について説明する。
立体視ディペンデントビューブロックにおけるストリームエントリーは、プレイリストにおいて変化してはならない。
【０１６５】
立体視ディペンデントビューブロックにおけるストリームエントリーのタイプがサブパスによって使用されるESタイプ（ストリームタイプ＝２）であれば、サブパスIDレファレンスと、サブクリップエントリーIDレファレンス(ref＿to＿subclip＿entry＿id)とはプレイリストにおいて変化しない。
【０１６６】
ストリームエントリー、ベースビューのためのストリームエントリー、ディペンデントビューのためのストリームエントリーのタイプとして許されるESのタイプは、プレイアイテムによって使用されるAVクリップ内のES  (ストリームタイプ"=1")、サブパスによって使用されるAVクリップ内のES(ストリームタイプ＝２)の2つタイプのみである。
【０１６７】
立体視ディペンデントビューブロックにおけるストリーム属性のストリーム符号化方式は、"0x20"に設定される。
図１４は、基本ストリーム選択テーブル、拡張ストリーム選択テーブルによりメインTS、サブTSからどのようなESが多重分離されるかを示す。
【０１６８】
本図の真ん中には、多重分離部を示し、その上側には基本ストリーム選択テーブルと、拡張ストリーム選択テーブルとの組みを示す。左側にはメインTS、サブTS、右側には、多重分離されるベースビュービデオストリーム、ディペンデントビュービデオストリーム、左目PGストリーム、右目PGストリーム、左目用IGストリーム、右目用IGストリーム、プライマリオーディオストリームを示す。
【０１６９】
図１５は、2D出力モード、3D出力モードにおけるストリーム番号の割り当て変化を示す。
縦欄は、プライマリビデオストリーム＃1というストリーム番号、プライマリオーディオストリーム＃1、＃2というストリーム番号、PG＿テキスト字幕ストリーム＃1、＃2、＃3というストリーム番号、IGストリーム＃1,＃2というストリーム番号を示している。
【０１７０】
左側の破線枠にのみ囲まれるESは、2D出力モードにおいてのみ、多重分離の対象になるESであり、ストリーム選択テーブル(STN＿table)によって再生が許可されているものを示す。
【０１７１】
右側の破線枠にのみ囲まれるESは、3D出力モードにおいて多重分離の対象になるESであり、拡張ストリーム選択テーブル(STN＿table＿SS)によって再生が許可されているものを示す。
【０１７２】
左側及び右側の破線枠の双方に囲まれるESは、3D出力モードにおいて多重分離の対象になるESを示す。
ビデオストリーム＃1のストリーム番号だけに着目すると、MPEG4-MVCベースビュービデオストリームは、左右両方の破線枠に囲まれるので、2D出力モード及び3D出力モードの双方で再生対象になっていることがわかる。しかし、MPEG4-MVCディペンデントビュービデオストリームは、右側の破線枠のみに囲まれているので、3D出力モードでのみ再生されることがわかる。
【０１７３】
プライマリオーディオストリーム＃1、＃2のストリーム番号に着目すると、オーディオストリームは、左右両方の破線枠に囲まれるので、2D出力モード及び3D出力モードの双方で再生対象になっていることがわかる。
【０１７４】
PG＿テキスト字幕ストリームに着目すると、PGストリーム＃1、PGストリーム＃2は2DPGストリームであり、左右の破線枠によって囲まれている。これは、PGストリーム＃1、PGストリーム＃2が2D出力モード、3D出力モードの双方で再生対象になっていることがわかる。一方、左目PGストリーム、右目PGストリームは右側の破線枠のみに囲まれているので、3D出力モードでのみ再生されることがわかる。
【０１７５】
また、IGストリームに着目すると、IGストリーム＃1、IGストリーム＃2は2DIGストリームであり、左右の破線枠によって囲まれている。これは、IGストリーム＃1、IGストリーム＃2が2D出力モードのみで再生対象になっていることがわかる。一方、左目IGストリーム、右目IGストリームは右側の破線枠のみに囲まれているので、3D出力モードでのみ再生されることがわかる。
【０１７６】
以上より、3D出力モードにおいてビデオストリームというストリーム種別では、ディペンデントビュービデオストリームが再生対象として加わることがわかる。
また3D出力モードにおいてPGストリームというストリーム種別では、再生対象が、左目PGストリーム及び右目PGストリームが追加されており、3D出力モードにおいてIGストリームというストリーム種別では左目IGストリーム及び右目IGストリームが追加されていることがわかる。左目PGストリーム及び右目PGストリームが、再生対象として加えられているのは、3D出力モードにおいて、左目PGストリーム及び右目PGストリームを用いて立体視再生を実現するためである。左目IGストリーム及び右目IGストリームが、再生対象として加えられているのは、3D出力モードにおいて、左目IGストリーム及び右目IGストリームを用いて立体視再生を実現するためである。
【０１７７】
以上が記録媒体についての説明である。続いて、再生装置の詳細について説明する。
図１６は、再生装置の内部構成を示す。本図に示すように再生装置は、読出部２０１、メモリ２０２、レジスタセット２０３、デコーダ２０４、多重分離部２０５、プレーンメモリセット２０６、シフト部２０７、レイヤ合成部２０８、送受信部２０９、再生制御部２１０から構成される。本図の内部構成は、課題解決手段を具備した再生装置を実施するための必要最低限の構成要素を記述したに過ぎない。より詳細な内部構成については、後段の実施形態に説明の場を譲る。
【０１７８】
読出部２０１は、記録媒体からインデックステーブル、プログラムファイル、プレイリスト情報ファイル、ストリーム情報ファイル、ストリームファイルを読み出す。読出部２０１は、立体視インターリーブドストリームファイルの読み出しにあたって、3Dストリーム情報ファイルにおけるクリップベース情報内のエクステントスタートポイント情報と、クリップディペンデント情報内のエクステントスタートポイント情報とを用いて、立体視インターリーブドストリームファイルを、メインTSに対応するATCシーケンス１と、サブTSに対応するATCシーケンス２とに分割して、ATCシーケンス１と、ATCシーケンス２とを別々のリードバッファに格納するという処理を行う。この分割は、クリップディペンデント情報におけるエクステントスタートポイント情報に示されているソースパケット番号のパケット数だけ、立体視インターリーブドストリームファイルからソースパケットを対取り出してATCシーケンス１に追加するという処理と、クリップベース情報におけるエクステントスタートポイント情報に示されているソースパケット番号のパケット数だけ、立体視インターリーブドストリームファイルからソースパケットを取り出してATCシーケンス２に追加するという処理とを繰り返すことでなされる。
【０１７９】
メモリ２０２は、プレイリスト情報に含まれる基本ストリーム選択テーブルと、拡張ストリーム選択テーブルとを結合することで得られた結合ストリーム登録列を格納する。
レジスタセット２０３は、再生装置が動作を行うための様々なレジスタから構成される。
【０１８０】
ストリーム種別毎のデコーダ２０４は、ビデオデコーダ２１１、PGデコーダ２１２、IGデコーダ２１３、オーディオデコーダ２１４から構成される。
多重分離部２０５は、ソースパケットをTSパケットに変換するソースデパケッタイザ、パケットフィルタリングを実行するPIDフィルタを備え、3Dプレイリスト情報の基本ストリーム選択テーブルのストリームエントリーに記述されているパケット識別子を有するソースパケットを、TSパケットに変換した上でデコーダに出力し、3Dプレイリスト情報の立体視ストリーム選択テーブルのストリームエントリーに記述されているパケット識別子を有するソースパケットを、TSパケットに変換した上でデコーダに出力する。基本ストリーム選択テーブルの複数のエントリー及び拡張ストリーム選択テーブルの複数のエントリーのうち、どれのパケット識別子をもちいるかは、プレーヤ状態レジスタのうち、ストリーム番号レジスタの設定に従う。ストリーム番号レジスタとは、カレントのストリーム番号を格納しているレジスタである。
【０１８１】
プレーンメモリセット２０６は、複数のプレーンメモリから構成される。
これらのプレーンメモリは、レイヤモデルを構成しており、個々のプレーンメモリの格納内容は、レイヤ合成に供される。プレーンメモリセットは、左目用プレーンメモリ、右目用プレーンメモリを含み、個々のアクセスユニットのベースビューのビューコンポーネントをデコードすることで得られた非圧縮のピクチャデータ、ディペンデントビューのビューコンポーネントをデコードすることで得られた非圧縮のピクチャデータが、これら左目用プレーンメモリ、右目用プレーンメモリに書き込まれる。この書き込みは、個々のアクセスユニットのプレゼンテーションタイムスタンプに示されている再生開始時刻の到来時になされる。
【０１８２】
左目用のプレーンメモリ、右目用プレーンメモリのうち、どちらにデコード後のピクチャデータを書き込むかは、プレイリスト情報におけるベースビューインディケータに従う。ベースビューインディケータが、ベースビュービデオストリームを"左目用"として指定していれば、ベースビュービデオストリームのビューコンポーネントとなるピクチャデータが左目用プレーンメモリに書き込まれ、ディペンデントビュービデオストリームのビューコンポーネントとなるピクチャデータが右目用のプレーンメモリに書き込まれる。
【０１８３】
ベースビューインディケータが、ベースビュービデオストリームを"右目用"として指定していれば、ベースビュービデオストリームのビューコンポーネントであるピクチャデータが右目用のプレーンメモリに書き込まれ、ディペンデントビュービデオストリームのビューコンポーネントであるピクチャデータが左目用のプレーンメモリに書き込まれる。そして、これらのビューコンポーネントは、順次表示装置に出力される。具体的にいうと、一個のフレーム期間において、左目用プレーンメモリのピクチャデータと、右目用プレーンメモリのピクチャデータとを同時に出力する。
【０１８４】
シフト部２０７は、画素の座標のシフトを実行する。
レイヤ合成部２０８は、複数のプレーンメモリにおけるレイヤ合成を行う。
送受信部２０９は、ホームシアターシステムにおける他の機器とインターフェイスを介して接続された際、ネゴシエーションフェーズを経て、データ伝送フェーズに移行し、データ伝送を行う。
【０１８５】
このネゴシエーションフェーズは、相手側機器のケーパビリティ(デコード能力、再生能力、表示周波数を含む)を把握して、プレーヤ設定レジスタに設定しておき、以降の伝送のための伝送方式を定めるものであり、互いの装置の正当性を確認し合う相互認証フェーズを含む。このネゴシエーションフェーズを経て、レイヤ合成がなされたピクチャデータにおける一ライン分の非圧縮・平文形式の画素データを、表示装置における水平同期期間に従い表示装置に高い転送レートで転送する。一方、表示装置における水平帰線期間、及び、垂直帰線期間において、再生装置と接続された他の装置(表示装置のみならずアンプ、スピーカを含む)に、非圧縮・平文形式のオーディオデータを転送する。こうすることで、表示装置、アンプ、スピーカといった機器は、非圧縮・平文形式のピクチャデータ、非圧縮・平文形式のオーディオデータを受け取ることができ、再生出力を実現することができる。また、相手側機器にデコード能力が存在する場合、ビデオストリーム、オーディオストリームのパススルー伝送が可能になる。パススルー伝送では、ビデオストリーム、オーディオストリームを圧縮・暗号化形式のまま伝送することができる。
【０１８６】
再生制御部２１０は、ビデオストリームの時間軸における任意の時点からのランダムアクセスを実行する。具体的には、ビデオストリームの時間軸における任意の時点からの再生が命じられた場合、3Dストリーム情報ファイルにおける基本エントリーマップと、拡張エントリーマップとを用いて、その任意の時点に対応するアクセスユニットのソースパケット番号をサーチする。かかるアクセスユニットは、ベースビュービデオストリームのビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントの組みを含むものであり、上記サーチによって、当該アクセスユニットについてのアクセスユニットデリミターを格納したソースパケットのソースパケット番号が特定される。かかるソースパケット番号からの読み出し、及び、デコードを実行することでランダムアクセスがなされる。3Dプレイリスト再生にあたっては、3Dプレイリスト情報のメインパス情報にて規定されているインタイム、アウトタイムと、サブパス情報にて規定されているインタイム、アウトタイムとを用いて、メインTS、サブTSのそれぞれに対してランダムアクセスを実行することで、プレイリスト再生を開始する。
【０１８７】
ビデオデコーダ２１１は、デコーダセット２０４におけるデコーダのうち、代表的なデコーダであり、ディペンデントビュービデオストリームを構成するビューコンポーネントをプリロードした上、ベースビュービデオストリーム内のクローズGOPの先頭に位置するデコーダリフレッシュを意図したピクチャタイプ(IDRタイプ)のビューコンポーネントをデコードする。このデコードにあたって、コーデッドデータバッファ、デコードデータバッファを全クリアする。こうしてIDRタイプのビューコンポーネントをデコードした後、このビューコンポーネントとの相関性に基づき圧縮符号化されているベースビュービデオストリームの後続のビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントをデコードする。デコードによって当該ビューコンポーネントについての非圧縮のピクチャデータが得られれば、デコードデータバッファに格納し、かかるピクチャデータを参照ピクチャとする。
【０１８８】
この参照ピクチャを用いて、ベースビュービデオストリームの後続のビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントについて、動き補償を行う。動き補償によって、ベースビュービデオストリームの後続のビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントについて、非圧縮のピクチャデータが得られれば、これらをデコードデータバッファに格納し参照ピクチャとする。以上のデコードは、個々のアクセスユニットのデコードタイムスタンプに示されているデコード開始時刻が到来時になされる。
【０１８９】
以下、PGデコーダ２１２、テキスト字幕デコーダ２１３、IGデコーダ２１４と、これらのデコーダのデコードの対象となるストリームの内部構成について説明する。
PGストリームにおけるデコーダの構成は、1plane＋Offset方式を採用する場合、１デコーダ＋１プレーン構成になる。3D-LR方式を採用する場合、２デコーダ＋２プレーン構成になる。
【０１９０】
同じく、IGストリームにおけるデコーダ構成は、3D-LR方式を採用する場合、２デコーダ＋２プレーン構成になる。一方、1plane＋Offset方式を採用する場合、１デコーダ＋１プレーン構成になる。
【０１９１】
テキスト字幕ストリームにおけるデコーダ構成では3D-LR方式が存在せず、1plane＋Offsetモードである場合、１デコーダ＋１プレーン構成になる。
始めに、PGストリームの内部構成と、PGストリームをデコードするPGデコーダの内部構成とについて説明する。
【０１９２】
左目用PGストリーム、右目用PGストリームは、何れも複数のディスプレイセットを含む。ディスプレイセットとは、一個の画面表示を構成する機能セグメントの集まりのことである。機能セグメントは、約2KバイトのPESパケットのペイロードに格納されてデコーダに供給され、DTS、PTSを用いて、再生制御がなされる処理単位のことである。
【０１９３】
ディスプレイセットには、以下の類型がある。
Ａ.エポックスタートのディスプレイセット
エポックスタートのディスプレイセットとは、グラフィクスデコーダにおけるコンポジションバッファ、コードデータバッファ、グラフィクスプレーンをリセットして、メモリ管理を開始させる機能セグメントの集まりであり、画面構成に必要な機能セグメントを全て含んでいる。
【０１９４】
Ｂ.ノーマルケースのディスプレイセット
ノーマルケースのディスプレイセットとは、グラフィクスデコーダにおけるコンポジションバッファ、コードデータバッファ、グラフィクスプレーンのメモリ管理を継続したまま画面構成を行うディスプレイセットであり、先行するディスプレイセットからの差分となる機能セグメントを含んでいる。
【０１９５】
Ｃ.アクジッションポイントのディスプレイセット
アクジッションポイントのディスプレイセットとは、画面構成に必要な機能セグメントを全て含むディスプレイセットであるが、グラフィクスデコーダにおけるコンポジションバッファ、コードデータバッファ、グラフィクスプレーンのメモリ管理をリセットさせないディスプレイセットである。このアクジッションポイントのディスプレイセットには、前のディスプレイセットとは異なる内容の機能セグメントが存在してもよい。
【０１９６】
Ｄ.エポックコンティニューのディスプレイセット
エポックコンティニューのディスプレイセットとは、PGストリームの再生を許可しているプレイアイテムと、その直前のプレイアイテムとの接続形態が、クリーンブレークを伴うシームレス接続(CC=5)である場合、再生装置におけるコンポジションバッファ、コードデータバッファ、オブジェクトバッファ、グラフィクスプレーンにおけるメモリ管理を、そのまま継続させる旨を示す。この際、オブジェクトバッファ、グラフィクスプレーン上に得られたグラフィクスオブジェクトは、廃棄されることなく、オブジェクトバッファ、グラフィクスプレーン上で存続する。
【０１９７】
左目用と、右目用とでは、STCシーケンスにおける再生時間軸の同一時点に、これらのディスプレイセットの始点・終点が割り当てられている。そして、左目用PGストリームと、右目用PGストリームとでは、時間軸上の同じ時点に存在するディスプレイセットの類型は、同一になっている。つまり左目用側のディスプレイセットがエポックスタートのディスプレイセットであるなら、STCシーケンスの時間軸において同じ時点の右目用側のディスプレイセットは、エポックスタートのディスプレイセットになる。
【０１９８】
また、左目用側のディスプレイセットがアクジッションポイントのディスプレイセットであるなら、STCシーケンスの時間軸において同じ時点の右目用側のアクジッションポイントのディスプレイセットも、エポックスタートのディスプレイセットになる。
【０１９９】
各ディスプレイセットは、複数の機能セグメントを含む。この複数の機能セグメントには以下のものがある。
(1)オブジェクト定義セグメント
オブジェクト定義セグメントは、グラフィクスオブジェクトを定義する機能セグメントである。グラフィクス定義セグメントは、コード値と、そのコード値のランレングスとを用いることで、グラフィクスオブジェクトを定義している。
【０２００】
(2)パレット定義セグメント
パレット定義セグメントは、各コード値と、輝度、赤色差・青色差との対応関係を示したパレットデータを含む。左目用グラフィクスストリームのパレット定義セグメントと、右目用グラフィクスストリームのパレット定義セグメントとでは、コード値と、輝度及び色差との対応関係が同一の内容に設定されている。
【０２０１】
(3)ウィンドゥ定義セグメント
ウィンドゥ定義セグメントは、非圧縮のグラフィクスオブジェクトを画面上に展開するためのプレーンメモリにおいて、ウィンドゥと呼ばれる矩形枠を定義する機能セグメントである。グラフィクスオブジェクトの描画は、このプレーンメモリの内部で制限されており、このウィンドゥの外部では、グラフィクスオブジェクトの描画は行えない。
【０２０２】
プレーンメモリの一部をグラフィクスの表示のためのウィンドゥとして指定するので、再生装置は、プレーン全体のグラフィクス描画を行う必要はない。ある限られた大きさのウィンドゥに対してのみ、グラフィクス描画を行えばよい。表示用の平面のうち、ウィンドゥ以外の部分の描画を省くことができるので、再生装置側のソフトウェアの負担は遥かに軽くなる。
【０２０３】
(4)画面構成セグメント
画面構成セグメントは、グラフィクスオブジェクトを用いた画面構成を規定する機能セグメントであり、グラフィクスデコーダにおけるコンポジションコントローラに対する複数の制御項目を含む。画面構成セグメントは、グラフィクスストリームにおけるディスプレイセットの詳細を規定すると共に、グラフィクスオブジェクトを用いた画面構成を規定する機能セグメントである。かかる画面構成には、Cut-In/Out、Fade-In/Out、Color  Change、Scroll、Wipe-In/Outといったものがあり、画面構成セグメントによる画面構成を伴うことにより、ある字幕を徐々に消去しつつ、次の字幕を表示させるという表示効果が実現可能になる。
【０２０４】
(5)エンドセグメント
1つのディスプレイセットに属する複数の機能セグメントの最後尾に位置する機能セグメントである。再生装置は、画面構成セグメントからこのエンドセグメントまでが、1つのディスプレイセットを構成する機能セグメントであるとして解釈する。
【０２０５】
PGストリームにおいてディスプレイセットの開始時点は、画面構成セグメントを格納したPESパケットのDTSによって特定され、ディスプレイセットの終了時点は、画面構成セグメントを格納したPESパケットのPTSによって特定される。
【０２０６】
左目用グラフィクスストリーム及び右目用グラフィクスストリームは、パケッタイズドエレメンタリストリーム(PES)であり、画面構成セグメントは、PESパケットに格納され、画面構成セグメントを格納したPESパケットのPTSは、画面構成セグメントが属するディスプレイセットによる表示を何時実行するかを示す。
【０２０７】
画面構成セグメントを格納したPESパケットのPTSの値は、左目用ビデオストリームと、右目用ビデオストリームとで同一の内容になっている。
・PGデコーダのデコーダモデル
PGデコーダは、PGストリームから読み出されう機能セグメントを格納する「コーデッドデータバッファ」と、画面構成セグメントをデコードしてグラフィクスオブジェクトを得る「ストリームグラフィクスプロセッサ」と、デコードにより得られたグラフィクスオブジェクトを格納する「オブジェクトバッファ」と、画面構成セグメントを格納する「コンポジションバッファ」と、コンポジションバッファに格納された画面構成セグメントを解読して、これらの画面構成セグメントにおける制御項目に基づき、オブジェクトバッファに得られたグラフィクスオブジェクトを用いてグラフィクスプレーン上で画面構成を行う「コンポジションコントローラ」とを含む。
【０２０８】
このグラフィクスプレーンの前段には、機能セグメントを構成するTSパケットの入力速度を調整するためのトランスポートバッファが存在する。
グラフィクスデコーダの後段には、グラフィクスプレーンと、パレット定義セグメントに基づいて、グラフィクスプレーンに格納されたグラフィクスオブジェクトを構成する画素コードを、輝度・色差に変換するCLUT部と、プレーンシフトのためのシフト部とが存在する。
【０２０９】
PGストリームにおけるパイプラインは、グラフィクスデコーダあるディスプレイセットに属するオブジェクト定義セグメントをデコードしてグラフィクスオブジェクトをオブジェクトバッファに書き込む処理と、先行するディスプレイセットに属するオブジェクト定義セグメントをデコードすることにより得られたグラフィクスオブジェクトをオブジェクトバッファからプレーンメモリに書き込む処理とを同時に実行することでなされる。
【０２１０】
図１７は、PGデコーダの内部構成を示す。同図（ａ）は、1plane＋Offsetモード方式で表示するためのデコーダモデルである。同図（ｂ）は、LR方式のデータを表示する場合のデコーダモデルである。
【０２１１】
本図において、PGデコーダの本体にあたる部分は黒枠で囲こみ、グラフィクスデコーダ後段にあたる部分は一点鎖線で囲っている。
同図（ａ）では、PGデコーダは１デコーダ構成になっており、グラフィクスプレーンも1プレーン構成になっている。しかしグラフィクスプレーンの出力が、左目用、右目用のそれぞれに別れていて、個々の左目用出力、右目用出力に対して、シフト部が付加される。
【０２１２】
同図（ｂ）では、トランスポートバッファ−グラフィクスデコーダ−グラフィクスプレーン−CLUT部が2組み存在していて、左目用ストリーム、右目用ストリームをそれぞれ独立に処理することができる。
【０２１３】
オフセットシーケンスは右目用ビデオストリームに含まれているので、プレーンオフセット形式では、グラフィクスデコーダは１デコーダ構成になり、この1つのグラフィクスデコーダの出力が、左目用と右目用とに切り替えられる。
【０２１４】
PGデコーダの2D/3D切り替え時の動作は以下の通りである。
１.1plane＋Offsetモードと2Dモードとの相互切り替え時は、シームレスに切り替えられる。これは、Offsetを無効化することでなされる。
【０２１５】
２.3D-LRモードと、2Dモードとでは、PID切り替えが伴うため、一端字幕が消える。これはストリーム切り替えと同じである。
以上がPGデコーダについての説明である。続いて、テキスト字幕デコーダの詳細について説明する。
【０２１６】
・テキスト字幕デコーダのデコーダモデル
テキスト字幕ストリームは、複数の字幕記述データから構成される。
テキスト字幕デコーダは、字幕記述データから、テキストコードと、制御情報とを分離する「字幕プロセッサ」と、字幕記述データから分離されたテキストコードを格納する「管理情報バッファ」と、フォントデータを用いて、管理情報バッファ内のテキストコードをビットマップに展開する「テキストレンダー」と、展開により得られたビットマップを格納する「オブジェクトバッファ」と、字幕記述データから分離された制御情報を用いて、時間軸に沿ったテキスト字幕再生の制御を実行する「描画制御部」とを含む。
【０２１７】
テキスト字幕デコーダの前段には、フォントデータのプリロードを行う「フォントプリロードバッファ」、テキスト字幕ストリームを構成するTSパケットの入力速度を調整する「TSバッファ」、プレイアイテムの再生に先立ち、テキスト字幕ストリームをプリロードしておくための「字幕プリロードバッファ」が存在する。
【０２１８】
グラフィクスデコーダの後段には、「グラフィクスプレーン」と、パレット定義セグメントに基づいて、グラフィクスプレーンに格納されたグラフィクスオブジェクトを構成する画素コードを、輝度・色差に変換する「CLUT部」と、プレーンシフトのためのシフト部が存在する。
【０２１９】
図１８は、テキスト字幕デコーダの内部構成を示す。同図（ａ）は、1plane＋Offsetモードにおけるテキスト字幕デコーダのデコーダモデルを示し、同図（ｂ）は、3D-LR方式におけるテキスト字幕デコーダのデコーダモデルを示す。本図において、テキスト字幕デコーダ本体にあたる部分は黒枠で囲こみ、テキスト字幕デコーダ後段にあたる部分は一点鎖線で囲んでいる。テキスト字幕デコーダ前段にあたる部分は、破線枠で囲んでいる。
【０２２０】
同図（ａ）では、グラフィクスプレーンの出力が、左目用、右目用のそれぞれに別れていて、個々の左目用出力、右目用出力に対して、シフト部が付加される。
同図（ｂ）では、左目用のグラフィクスプレーンと、右目用のグラフィクスプレーンとが存在していて、テキスト字幕デコーダによって展開されたビットマップを、これらのそれぞれのグラフィクスプレーンに書き込む。
【０２２１】
テキスト字幕ストリームは、PGストリームと異なり、グラフィクスデータをビットマップとして送るのではなく、フォントデータと文字コードを送ることにより、レンダリングエンジンで字幕を生成するから、字幕の立体視は、1plane＋Offsetモードによって実現する。
【０２２２】
以上がテキスト字幕ストリーム及びテキスト字幕デコーダについての説明である。続いて、IGストリームの内部構成と、IGデコーダの構成とについて説明する。
・IGストリーム
左目用IGストリーム、右目用IGストリームは何れも複数のディスプレイセットを含み、各ディスプレイセットは、複数の機能セグメントを含む。ディスプレイセットには、PGストリームと同様、エポックスタートのディスプレイセット、ノーマルケースのディスプレイセット、アクジッションポイントのディスプレイセット、エポックコンティニューのディスプレイセットが存在する
これらのディスプレイセットに属する複数の機能セグメントには以下の種類がある。
【０２２３】
(1)オブジェクト定義セグメント
このオブジェクト定義セグメントは、PGストリームのものと同じである但しIGストリームのグラフィクスオブジェクトは、ページのインエフェクト、アウトエフェクト、ボタン部材のノーマル状態、セレクテッド状態、アクティブ状態を定義するものである。オブジェクト定義セグメントは、ボタン部材の同じ状態を定義するもの同士、同じエフェクト映像を構成するもの同士、グループ化されている。同じ状態を定義するオブジェクト定義セグメントを寄せ集めたグループをグラフィクスデータ集合という。
【０２２４】
(2)パレット定義セグメント
パレット定義セグメントは、PGストリームのものと同じである。
(3)対話制御セグメント
対話制御セグメントは、複数のページ情報を含み、複数のページ情報は、マルチページメニューの画面構成を規定する情報であり、各ページ情報は、エフェクトシーケンスと、複数のボタン情報と、パレット識別子の参照値とを含む。
【０２２５】
ボタン情報は、グラフィクスオブジェクトをボタン部材の一状態として表示させることにより、マルチページメニューを構成する各ページ上で対話的な画面構成を実現する情報である。
【０２２６】
エフェクトシーケンスは、グラフィクスオブジェクトを用いて、ページ情報に対応するページの表示に先立ち再生されるインエフェクト、又は、当該ページの表示後に再生されるアウトエフェクトを構成するものであり、エフェクト情報を含む。
【０２２７】
エフェクト情報は、インエフェクト又はアウトエフェクトを再生するにあたっての個々の画面構成を規定する情報であり、グラフィクスプレーン上のウィンドゥ定義セグメントで定義されたウィンドゥ（部分領域）においてどのような画面構成を実行すべきかを規定する画面構成オブジェクトと、同領域における次の画面構成との時間間隔を示すエフェクト期間情報とを含む。
【０２２８】
エフェクトシーケンスにおける画面構成オブジェクトは、PGストリームの画面構成セグメントと同じような制御内容を規定する。オブジェクト定義セグメントのうち、前記インエフェクトに用いられるグラフィクスオブジェクトを定義するものは、グラフィクスデータ列において、ボタン部材に用いられるグラフィクスオブジェクトを定義するオブジェクト定義セグメントより前に配置されている。
【０２２９】
ページ情報における各ボタン情報は、グラフィクスオブジェクトをボタン部材の一状態として表示させることにより、マルチページメニューを構成する各ページ上で対話的な画面構成を実現する情報である。前記ボタン情報はセットボタンページコマンドを含み、セットボタンページコマンドは、対応するボタン部材がアクティブ状態になった際、ファーストページ以外の他のページを、カレントページとして設定する処理を再生装置に行わせるコマンドである。
【０２３０】
IGストリームの再生時において、プレーンシフトにおけるオフセットをページ毎に変更させたい場合は、ボタン情報にオフセットを変更するナビゲーションコマンド組込んでおき、該当するボタン情報において、ナビゲーションコマンドのオートアクティベートを規定しておく。これにより、IGストリームのストリーム登録情報に規定されているオフセットの値や方向を自動的に変更できるようにする。
【０２３１】
(4)エンドセグメント
1つのディスプレイセットに属する複数の機能セグメントの最後尾に位置する機能セグメントである。対話制御セグメントからこのエンドセグメントまでが、1つのディスプレイセットを構成する機能セグメントであるとして解釈される。
【０２３２】
左目用グラフィクスストリームと、右目用グラフィクスストリームとにおいて、同一となる対話制御セグメントの制御項目には、ボタン近接情報、セレクションタイムアウトタイムスタンプ、ユーザタイムアウトディレーション、コンポジションタイムアウト情報がある。
【０２３３】
１.ボタン近接情報
ボタン近接情報は、あるボタンがセレクテッド状態になっていて、上下左右方向の何れかを指示するキー操作があった場合、どのボタンをセレクテッド状態にすべきかを指定する情報である。
【０２３４】
２.セレクションタイムアウトタイムスタンプ
セレクションタイムアウトタイムスタンプは、カレントページにおけるボタン部材を自動的にアクティベートして、セットボタンページコマンドを再生装置に実行させるためのタイムアウト時間を示す。
【０２３５】
３.ユーザタイムアウトディレーション
ユーザタイムアウトディレーションは、カレントページをファーストページに戻して、ファーストページのみが表示されている状態にするためのタイムアウト時間を示す。
【０２３６】
４.コンポジションタイムアウト情報
コンポジションタイムアウト情報は、対話制御セグメントによる対話的な画面表示を終了させる時間を示す。IGストリームにおいてディスプレイセットの開始時点は、対話制御セグメントを格納したPESパケットのDTSによって特定され、ディスプレイセットの終了時点は、対話制御セグメントのコンポジションタイムアウト時刻によって特定される。左目用、右目用では、これらのDTSと、コンポジションタイムアウト時刻とは同一時点に設定される。
【０２３７】
・IGデコーダのデコーダモデル
IGデコーダは、IGストリームから読み出されう機能セグメントを格納する「コーデッドデータバッファ」と、画面構成セグメントをデコードしてグラフィクスオブジェクトを得る「ストリームグラフィクスプロセッサ」と、デコードにより得られたグラフィクスオブジェクトを格納する「オブジェクトバッファ」と、画面構成セグメントを格納する「コンポジションバッファ」と、コンポジションバッファに格納された画面構成セグメントを解読して、これらの画面構成セグメントにおける制御項目に基づき、オブジェクトバッファに得られたグラフィクスオブジェクトを用いてグラフィクスプレーン上で画面構成を行う「コンポジションコントローラ」とを含む。
【０２３８】
このグラフィクスプレーンの前段には、機能セグメントを構成するTSパケットの入力速度を調整するための「トランスポートバッファ」が存在する。
グラフィクスデコーダの後段には、「グラフィクスプレーン」と、パレット定義セグメントに基づいて、グラフィクスプレーンに格納されたグラフィクスオブジェクトを構成する画素コードを、輝度・色差に変換する「CLUT部」と、プレーンシフトのための「シフト部」とが存在する。
【０２３９】
図１９は、IGデコーダのデコーダモデルを示す。本図では、IGデコーダ本体にあたる部分は黒枠で囲こみ、グラフィクスデコーダ後段にあたる部分は一点鎖線で囲んでいる。IGデコーダ前段にあたる部分は、破線枠で囲んでいる。図１９（ａ）は、2D形式のIGストリームを1plane＋Offsetモード方式によってLR形式で表示するためのデコーダモデルである。同図（ｂ）は、IGストリームのデコーダモデルであるが、LR方式のデータを表示する場合のデコーダモデルである。  
【０２４０】
これらのデコーダでは、メニューグラフィクスの深度情報をプログラムから制御するために、システムパラメータの値をオフセットに反映するための回路を含んでいる。
同図（ｂ）は、2デコーダモデルであり、コマンドによりoffset値の変更が可能になる。よってメニューの深度情報をコマンドで変えることができる。Offset値は左右異なる値も与えられる。一方、Depth方式の場合、Offsetは無効になる。
【０２４１】
グラフィクスデコーダにおけるコンポジションコントローラは、対話画面に存在するボタン部材のうち、カレントボタンになるものを、セレクテッド状態に対応するグラフィクスデータ集合のグラフィクスデータを用いて表示し、それ以外のボタン部材を、ノーマル状態に対応するグラフィクスデータ集合を用いて表示することで、対話画面の初期表示を実現する。
【０２４２】
上下左右の４方向の何れかを指定する旨のユーザ操作があった場合、カレントボタンの周辺に位置するノーマル状態のボタン部材のうち、ユーザ操作により指定された方向に存在するものの番号をボタン番号レジスタに書き込み、当該書き込みによって、新たにカレントボタンになったボタン部材をノーマル状態からセレクテッド状態に変化させる。
【０２４３】
対話画面においてセレクテッド状態になっているボタン部材をアクティブ状態に変化させる旨のユーザ操作があった場合、当該アクティブ状態を構成するグラフィクスデータをグラフィクスデータ集合から取り出して表示に供することで対話画面の更新を実現する。          
【０２４４】
これらの対話画面の更新は、左目用、右目用で共通に実行にする必要があるので、２デコーダモデルにおいて、コンポジションコントローラを、左目用のグラフィクスデコーダと、右目用のグラフィクスデコーダとで共通化することが望ましい。
【０２４５】
この場合、立体視IGストリームにおける左目用・右目用のナビゲーションコマンドは同一化し、3D用と2D用のグラフィクスオブジェクトのボタン構成を同一にすることで、相互切り替えを実現する。
【０２４６】
2DIGストリームと、立体視IGストリームとでは、ナビゲーションコマンドおよびボタン情報の属性・数などが同じであれば、グラフィクスオブジェクトの表示のみの切り替えが可能となる。3D-LRモードからL画像のみへの切り替えでは、再ロードなしに切り替え可能だが、表示位置が偏る可能性がある。どちらを採用するかのタイトル制作者の意図をフラグに示させておき、このフラグに基づき再生装置が切り替えを行うことが望ましい。
【０２４７】
以下に、モード切り替え時における留意事項をまとめた。
・1plane＋Offsetモードと、2Dモードとの切り替えにおいては再ロードは発生しない。これはIGストリームのロードは必要ではなく、Offsetの無効化のみとなるからである。
【０２４８】
・3D-LRモードと、2Dモードとの切り替えにおいて、ストリームが異なるため、再ロードが発生する。
以上がIGストリーム及びIGデコーダについての説明である。続いて、プレーンメモリの詳細について説明する。
【０２４９】
1plane＋Offsetモード方式におけるプレーンメモリ構成について説明する。
プレーンメモリのレイヤ合成は、プレーンメモリのレイヤモデルにおいて、階層間のプレーンメモリに格納されている画素データの画素値を重畳させるという処理を、レイヤモデルにおける階層間の全ての組合せに対して実行することでなされる。合成部２０８によるレイヤ合成は、プレーンメモリのレイヤモデルにおいて、2つの階層のプレーンメモリに格納されている画素データの画素値を重畳させるという処理を、レイヤモデルにおける2つの階層の全ての組合せに対して実行することでなされる。
【０２５０】
階層間の重畳は、ある階層に位置するプレーンメモリのライン単位の画素値に透過率αを重みとして乗じるとともに、その下位階層に位置するプレーンメモリのライン単位の画素値に（１−透過率α）という重みを乗じて  これら輝度の重み付けがなされた画素値同士を加算し、加算結果を、その階層におけるライン単位の画素の画素値とする処理である。この階層間の重畳を、レイヤモデルの隣接する2つ階層に位置するライン単位の画素同士で繰り返し実行することにより、上記レイヤ合成は実現される。
【０２５１】
プレーンメモリ後段は、上述したようなCLUT部、シフト部の他、レイヤ合成を実現するため、個々の画素値に等価率を乗算するための乗算部、画素同士の加算を行うための加算部を含む。
【０２５２】
図２０は、デコーダモデルの出力を合成し、3D-LR方式で出力するための回路構成を示す。ビデオプレーン、PGプレーン、IGプレーンのレイヤモデルは黒枠で囲こみ、プレーンメモリ後段にあたる部分は一点鎖線で囲んでいる。本図からも明らかなように、上述したようなレイヤモデルは、２組み存在していることがわかる。また、プレーンメモリ後段にあたる部位も、２組み存在していることがわかる。
【０２５３】
レイヤモデル、プレーンメモリ後段が2組み存在することにより、3D-LR方式におけるプレーンメモリ構成は、ビデオプレーン、PGプレーン、IGプレーンのそれぞれが、左目用と、右目用とに別れていて、これらのプレーンメモリの出力をレイヤ合成を、左目用、右目用のそれぞれについて実行するようになっている。
【０２５４】
図２１は、これらのデコーダモデルの出力を合成し、1plane＋Offsetモード方式で出力するための回路構成を示している。  
左目ビデオプレーン、右目ビデオプレーン、PGプレーン、IGプレーンのレイヤモデルは黒枠で囲こみ、プレーンメモリ後段にあたる部分は一点鎖線で囲んでいる。本図からも明らかなように、上述したようなレイヤモデルは、１組みだけが存在していることがわかる。また、プレーンメモリ後段にあたる部位は、２組み存在している。
【０２５５】
1plane＋Offsetモード方式では、ビデオプレーンは、左目用のものと、右目用のものとが準備されている。PGプレーン、IGプレーンについては、左目用、右目用のそれぞれに別れておらず、左目用、右目用で共通の１枚のプレーンメモリのみが存在する。そして、これらの左目用出力、右目用出力のそれぞれに対して上述したようなレイヤ合成がなされるようになっている。
【０２５６】
図２２は、デコーダモデルの出力を合成し、上端側2D字幕再生モード方式及び下端側2D字幕再生モード方式で出力するための回路構成を示す。
上端側2D字幕再生モード方式及び下端側2D字幕再生モード方式では、ビデオプレーンは、左目用のものと、右目用のものとが準備されている。PGプレーン、IGプレーンについては、左目用、右目用のそれぞれに別れておらず、左目用、右目用で共通の１枚のプレーンメモリのみが存在する。そして、左目用、右目用のそれぞれのビデオプレーンに対して、後述する再生装置のビデオシフトモードを示すレジスタ(PSR32)の設定に応じて上方向又は下方向へ131ピクセルだけ画素がシフトされたのち、PGプレーンの左目用出力、右目用出力のそれぞれがレイヤ合成されるようになっている。
【０２５７】
再生装置は、B−Dプレゼンテーションモード、1plane＋Offsetモード、上端側2D字幕再生モード、下端側2D字幕再生モードの全てをサポートにする必要があるので、再生装置のハードウェア構成としては、基本的に2デコーダ＋2プレーンの構成になっていて、1plane＋Offsetモード、2D出力モード、上端側2D字幕再生モード、及び下端側2D字幕再生モードに再生装置が切り替った際、１デコーダ＋１プレーンの組みのうち一方を無効化して、１デコーダ＋１プレーン構成になる。
【０２５８】
以上のデコーダモデルを1デコーダ構成にするか、2デコーダ構成にするか、プレーンモデルを1プレーン構成にするか、2プレーン構成にするかは再生装置を製造するマニファクチャが自由に定めることができる。無論、設計上は2デコーダ構成、2プレーン構成にしておいて高級機種として販売する場合は、立体視PGの再生能力有、立体視IGの再生能力有と設定し、廉価機種として販売する場合は、立体視PGの再生能力無、立体視IGの再生能力無と設定することで、ラインナップの充実を図ることができる。このような立体視PGの再生能力有無のコンフィグレーション、立体視IGの再生能力有無のコンフィグレーションは、レジスタセットに存在する。
【０２５９】
以下、レジスタセットについて説明する。
レジスタセットは、複数のプレーヤ状態レジスタ、複数のプレーヤ設定レジスタから構成される。個々のプレーヤ状態レジスタ、プレーヤ設定レジスタは何れも語長が３２ビットのレジスタであり、３２ビット長のレジスタのそれぞれにはレジスタ番号が与えられ、このレジスタ番号を用いてアクセスすべきレジスタが特定される。
【０２６０】
各レジスタの一語(３２ビット)を構成する各ビットデータのビット位置は、b0〜b31と呼ばれる。最上位ビットはb31、最下位ビットはb0と呼ぶ。そして、32ビットのうち、bxビット目のビット位置からbyビット目のビット位置までのビット範囲は、[bx:by]という表記で表現される。
【０２６１】
所定のレジスタ番号のプレーヤ設定レジスタ／プレーヤ状態レジスタに格納されている32ビット長のビット列であって、任意のビット範囲[bx:by]のものの値は、プログラムが動作を行うにあたっての動作システムの環境変数(システムパラメータ又はプレーヤ変数という)として扱われる。再生制御を行うプログラムは、システムプロパティやアプリケーションプログラミングインターフェイス(API)を通じて、システムパラメータを取得することができる。また、特に禁止されていない限り、これらのプレーヤ状態レジスタ、プレーヤ設定レジスタの値をプログラムは書き換えることができる。オブジェクト指向プログラミング言語ベースのプログラムについては、システムパラメータの取得や書き換えについて正当権限が与えられていることが要件になる。
【０２６２】
プレーヤ状態レジスタは、再生装置のMPUが算術演算やビット演算を行う際、その被演算子となる数値を格納しておくためのハードウェア資源であり、光ディスクが装填された際に初期値が設定され、またカレントプレイアイテムの変更等、再生装置の状態が変化した際に、その格納値の有効性が判定されるレジスタである。この格納値としては、カレントのタイトル番号、カレントのプレイリスト番号、カレントのプレイアイテム番号、カレントのストリーム番号、カレントのチャプター番号等がある。光ディスクの装填時に初期値が格納されるので、この格納値は一時的なものであり、光ディスクがイジェクトされたり、また再生装置の電源が断たれれば、この格納値は有効性を失う。
【０２６３】
プレーヤ設定レジスタは、電源対策が施されている点がプレーヤ状態レジスタとは異なる。電源対策が施されているので、再生装置の電源遮断時において、その格納値が不揮発性のメモリに退避され、再生装置の電源投入時において、その格納値が復帰される。再生装置の製造主体(マニュファクチャ)が再生装置の出荷時に定めた再生装置の各種コンフィグレーションや、ユーザがセットアップ手順に従い設定した各種コンフィグレーション、そして、再生装置がTVシステムやステレオ、アンプ等のホームシアターシステムの機器と接続された際、接続相手となる機器とのネゴシエーションにより判明した相手側機器のケーパビリティがプレーヤ設定レジスタに設定される。
【０２６４】
図２３は、レジスタセット２０３の内部構成と、再生制御部とを描いた図である。
本図の左側にはレジスタセット２０３の内部構成を示している。右側には再生制御部の内部構成を示している。
【０２６５】
それぞれのレジスタ番号が割り当てられたプレーヤ状態レジスタ、プレーヤ設定レジスタは、どのようなものであるかを示す。
PSR0は、IGストリームのためのストリーム番号レジスタであり、カレントのIGストリーム番号を格納する。
【０２６６】
PSR2は、PGストリームのためのストリーム番号レジスタであり、カレントのPGストリーム番号を格納する。
PSR24は、"Player Capability for 3D"の設定である。これは、再生装置に立体視再生を実行する能力が存在するかどうかを示す。
【０２６７】
一方、再生制御部は、レジスタセット２０３におけるPSR24と、メモリにおけるカレントプレイリスト情報のストリーム選択テーブルとを参照して、カレントプレイリストにおけるカレントPGストリーム番号、カレントIGストリーム番号を一意に定めるストリーム選択プロシージャが存在する。このストリーム選択プロシージャは、"Initialization"、"Procedure when playback condition changed"が存在する。
【０２６８】
図２５は、PSR32のビットアサインを示す。PSR32は、再生装置のビデオシフトモードを表す。この値は、ＢＤプログラムのＡＰＩやコマンドを通じて設定されるとともに、及び、ストリーム切り替えによって選択されたカレントのPGストリームについてのvideo_shift_modeが、拡張ストリーム選択テーブルにおけるストリーム登録情報から取得され設定される。
【０２６９】
図２４は、PSR24のビットアサインを示す。PSR24は、再生装置の3Dケーパビリティを表す。記録媒体におけるプログラムは、PSR24の値を変化させることはできない。
b0は、立体視1280×720 50pビデオ表示ケーパビリティを示す。立体視1280×720 50pビデオ表示ケーパビリティは、"0"に設定された際、1280×720/50Hzプログレッシブビデオを表示する処理能力を再生装置が有していない旨を示す。"1"に設定された際、1280×720/50Hzプログレッシブビデオを再生する再生能力を再生装置が有している旨を示す。
【０２７０】
b2は、立体視PGケーパビリティを示す。立体視PGケーパビリティは、"0"に設定されることで立体視PGを再生する能力を再生装置が有していない旨を示す。"1"に設定されることで立体視PGを再生する能力を再生装置が有している旨を示す。
【０２７１】
b3は、立体視IGケーパビリティを示す。立体視IGケーパビリティは、"0"に設定されることで再生装置が立体視IGを再生する能力を有していない旨を示す。"1"に設定されることで再生装置が立体視IGを再生する能力を有している旨を示す。
【０２７２】
b5は、3D出力モードにおけるBD-Jモードのケーパビリティを示す。このb5が"1"に設定された場合、3D出力モードにおいて再生装置は、BD-Jモードを処理できる旨を示す。b5が"0"に設定された場合、3D出力モードにおいて再生装置は、BD-Jモードを処理できる旨を示す。PSR24のb5の用法については、本実施形態の主眼からは外れるので、後段の実施形態に説明の場を譲る。
【０２７３】
このPSR24では、IG、PGのそれぞれについて立体視再生の可否を設定することができるので、IGデコーダ、PGデコーダのそれぞれを２デコーダで構成して、IG、PGのそれぞれを立体視対応するというコンフィグレーションが可能になるし、また、IG、PGを２デコーダ構成としつつ、IGのみを立体視対応、PGは1plane＋Offset対応に留めるというコンフィグレーションも可能になる。逆に、PGのみを立体視対応、IGは1plane＋Offset対応に留めるというコンフィグレーションが可能になる。
【０２７４】
更に再生装置を低価格機種として販売するため、IGデコーダ、PGデコーダのそれぞれを２デコーダで構成しておきつつも、IG、PGのそれぞれを1plane＋Offset対応に留めるというコンフィグレーションも可能になる。２デコーダモデルという共通構成で構成しておいて、機種のグレードに応じて、IGの立体視の可否、PGの立体視の可否を変更することができるので、マニファクチャが再生装置を製品化するにあたってのラインナップの充実を図ることが可能になる。
【０２７５】
またPG、IGの双方、どちらか一方を１デコーダで構成した場合、立体視再生の可否が明示されていることで、たとえ再生すべきプレイリストが立体視対応のものでも、再生タイプが誤って立体視PG、立体視IGに設定されるのを防止することができる。
【０２７６】
以上の再生制御は、図２６から図３２までのフローチャートに示される処理手順をオブジェクト指向型コンパイラ言語で記述してコンピュータに実行させることで実現することができる。
【０２７７】
図２６は、プレイリスト再生手順を示す。本フローチャートは、ステップＳ１においてカレントプレイアイテム番号を１に設定した後、ステップＳ２〜ステップＳ６の処理を繰り返すループを構成する。このループでは、Procedure when playback condition is changedによりストリーム番号を決定して(ステップＳ２)、ストリーム番号に対応するESを格納したストリームファイルをオープンしてソースパケット列を読み出し(ステップＳ３)、読み出されたソースパケット列のうち、ストリーム番号に対応しているものの多重分離を指示し(ステップＳ４)、読み出されたソースパケットをプレイアイテムのインタイムからアウトタイムまで、サブプレイアイテムのインタイムからアウトタイムまで再生するようデコーダに命じる(ステップＳ５)という処理を、カレントプレイアイテム番号が最終番号になるまで繰り返すものである。ここで最終番号でなければ(ステップＳ６でNo)、カレントプレイアイテム番号がインクリメントされて、ステップＳ２に移行する。
【０２７８】
この際、ステップＳ７においてストリーム選択要求があったかどうかを判定し、もし要求があれば、要求されたストリーム番号をxにして、Procedure when stream change is requestedを実行する(ステップＳ８)。最終番号であれば、処理を終了する(ステップＳ６でYes)。
【０２７９】
＜カレントPGストリームの決定及びカレントPGストリームの再生タイプ決定＞
PSR2のPG＿テキスト字幕ストリーム番号によって参照されるPG＿テキスト字幕ストリームは、出力モード（PSR22）、PSR24における立体視PGケーパビリティと、is＿SS＿PGを用いて選択される。
【０２８０】
図２７は、PGtestSTストリームについてのProcedure when playback condition is changedについての処理手順を示すフローチャートである。本フローチャートのうち、ステップＳ１１〜ステップＳ２２の処理は、3D出力モード及び2D出力モードの共通処理となる。ステップＳ２３〜ステップＳ２８が、3D出力モード特有の処理となる。
【０２８１】
ステップＳ１１においてPSR2からカレントPG＿テキスト字幕ストリーム番号を取得し、ステップＳ１２において、カレントPG＿テキスト字幕ストリーム番号は、PGストリームについてのものかテキスト字幕ストリームについてのものかを判定する。ステップＳ１３は、カレントPG＿テキスト字幕ストリーム番号に対応するPGストリームが、条件(A)、条件(B)を満たすか否かをチェックする。
【０２８２】
ここで条件(A),条件(B)は、以下のように規定される。
条件(A)：カレントPG＿テキスト字幕ストリーム番号から特定されるPGストリームをデコードする能力が再生装置に存在する。
【０２８３】
条件(B)：特定された言語を再生する能力が再生装置に存在する。
一方ステップＳ１４では、カレントPG＿テキスト字幕ストリーム番号に対応するテキスト字幕ストリームが、条件(A)、条件(B)を満たすか否かをチェックするものである。
【０２８４】
条件(A):カレントPG＿テキスト字幕ストリーム番号のテキスト字幕ストリームのキャラクターコードをビットマップに展開する能力が再生装置に存在すること。かかる再生能力は、PSRセット２３におけるPSR30に示されている。
【０２８５】
条件(B):カレントPG＿テキスト字幕ストリーム番号のテキスト字幕ストリームの言語特性をサポートする能力が再生装置に存在すること。
ここで、ある言語の字幕がテキスト字幕ストリームで表現されている場合、その言語のテキスト字幕ストリームを、"デコードすることができる"といえるには、その言語における文字コードを、ビットマップに展開する能力と、その言語の特性をサポートするサポート能力とが再生装置側に存在する必要がある。
【０２８６】
英語、日本語、アラビア語を例にとってみると、英語の字幕表示は、"横書き","カーニング","合字・抱き字"という機能がサポートされて初めて、言語特性がサポートされていると判断することができる。
【０２８７】
日本語の字幕表示は、"横書き","縦書き","行末禁則","ルビ"という機能がサポートされて初めて、言語特性がサポートされていると判断することができる。
アラビア語の字幕表示は、"右から左の描画"、"合字・抱き字"という機能がサポートされて初めて、言語特性がサポートされていると判断することができる。
【０２８８】
ある言語のテキスト字幕ストリームをビットマップに展開することができ、その言語の特性をサポートすることができる場合、上記条件(A)、条件(B)は、満たされているということができる。その言語のテキスト字幕ストリームをビットマップに展開することができるが、その言語の特性をサポートすることができない場合、上記条件(B)は満たされず、条件(A)のみが、満たされているということができる。
【０２８９】
言語毎のサポート能力は、レジスタセットにおけるPSR48〜61の各ビットにおいて、言語毎に設定されている。具体的には、PSR48〜61には、IS0639-2/Tで規定された３バイトの言語コードのそれぞれに対応するフラグが存在しており、これらのフラグに、各言語コードに対応するテキスト字幕の表示能力の有無が設定されている。
【０２９０】
IS0639-2/Tで規定された３バイトの言語コードにおいて"ita"という3バイトのコードはイタリア語を示し、"jpn"という3バイトのコードは日本語を示す。"jav"という3バイトのコードはジャワ語を示す。IS0639-2/Tで規定された言語コードは、このようは３バイトのコードによって430言語を網羅するから、カレントPG＿テキスト字幕ストリームの決定において、ストリーム番号テーブルに記載されたテキスト字幕ストリームがデコードできるかどうかの判定にあたって、このPSR48〜61におけるフラグを参照する。こうすることで、少数派の言語であっても、デコードできるかどうかを適格に判断可能となる。
【０２９１】
以上の判定を経た後、ステップＳ１５を実行する。ステップＳ１５は、再生装置は、条件(Z)を満たすか否かを判定するものである
ここで条件(Z)とは、言語特性のサポートがないアンサポート言語の字幕を、再生することをユーザが意図していることであり、かかる意図は、レジスタセットにおけるPSR30に示されている。
【０２９２】
その後、ステップＳ１６の判定ステップを実行する。これは、カレントプレイアイテムのストリーム選択テーブルにおけるPG＿テキスト字幕ストリームの本数が=0であるか否かを判定するものである。ストリーム選択テーブルに再生が許可されているPG＿テキスト字幕ストリームが存在しない場合、PSR2におけるPG＿テキスト字幕ストリームの番号を維持する(ステップＳ１７)。
【０２９３】
カレントストリーム選択テーブルにおいて再生が許可されているPG＿テキスト字幕ストリームが少なくとも1つ存在する場合、ステップＳ１８を実行する。これは、カレントPG＿テキスト字幕ストリーム番号の有効性を問うステップであり、カレントPG＿テキスト字幕ストリーム番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)、条件(B)を満たすかどうかを判定する。
【０２９４】
もしステップＳ１８で満たさないと判定されたなら、ステップＳ２０の判定を実行する。これは、カレントPG＿テキスト字幕ストリーム番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)(Z)を満たすかどうかを判定するものである。もし満たすなら、PSR2には、アンサポート言語のテキスト字幕のPG＿テキスト字幕ストリーム番号が設定されているが、ユーザはアンサポート言語の再生を意図しているので、PSR2を変化させない(ステップＳ２１)。ステップＳ２０において満たさないと判定されたなら、カレントプレイアイテムについて最適なストリームを選択する(ステップＳ２２)。
【０２９５】
以降のステップＳ２３〜ステップＳ２８は3D出力モード特有の処理である。具体的には、3D出力モードでは、先ず上下端再生タイプ決定処理が実行される（ステップＳ２３）。上下端再生タイプ決定処理において、再生タイプが上端側2D字幕再生及び下端側2D字幕再生の何れかのタイプに設定されなかった場合（ステップＳ２４：Ｎｏ）、PSR2のPGストリーム番号によって特定されるPGストリームのis＿SS＿PGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ２５)、取得したis＿SS＿PGフラグが"1"であり、かつ、PSR24におけるb2の立体視PGケーパビリティが"1"であるか否かを判定する(ステップＳ２６)。ステップＳ２６がYesであれば、再生タイプを左目PGストリーム及び右目PGストリームを用いる立体視PGとする(ステップＳ２７)。
【０２９６】
再生タイプを立体視PGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR2に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスを用いて、立体視再生を行う。具体的には、PSR2に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスで指示されているパケット識別子のTSパケットの多重分離を多重分離部に行わせる。
【０２９７】
ステップＳ２６がNoであれば、再生タイプを1plane＋Offsetとする(ステップＳ２８)。再生タイプを1plane＋OffsetPGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR2に格納されたカレントストリームのストリーム番号に対応するもののPG＿テキスト字幕オフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスを用いて、1plane＋OffsetモードでのPG再生を実行する。
【０２９８】
ここでオフセットシーケンスについて説明する。1plane＋Offsetモードに用いられるオフセットシーケンスは、ディペンデントビュービデオストリームのビデオアクセスユニット内に複数存在する。
【０２９９】
ディペンデントビュービデオストリームのビデオアクセスユニットは、ビデオアクセスユニットデリミター、シーケンスパラメータセット、ピクチャパラメータセット、MVCスケーラブルネスティングSEIメッセージ、ファーズトビューコンポーネント、シーケンス終端コード、ストリーム終端コードを配列することにより構成される。そしてこのMVCスケーラブルネスティングSEIメッセージの中に、ユーザデータコンテナが存在する。ユーザデータコンテナは、アンレジスタードユーザデータ(未登録ユーザデータ)のことであり、クローズドキャプション情報、GOP構造マップ、オフセットメタデータという3つの種類がある。これらの種類のうち何れかであるかは、コンテナ中のtype_indeicatorに明示される。
【０３００】
オフセットメタデータは、PGプレーン、IGプレーン、BD-Jプレーンのためのシーケンスリストであり、立体視再生モードにおいてプレゼンテーショングラフィクス＿テキスト字幕、IG/BD-Jプレーンが1plane＋Offsetモードで再生されている間におけるオフセット設定に用いられる。具体的には、ピクチャデータと合成すべきグラフィクスを、1plane＋Offsetモードで再生する場合におけるPGプレーン、IGプレーン、BD-Jプレーンに対するオフセット制御を示す。
【０３０１】
オフセットメタデータは、ディペンデントビューアクセスユニットの符号化順序における各GOPの先頭のビデオコンポーネントのMVCスケーラブルネスティングSEIメッセージに格納されねばならない。オフセットメタデータの内部に、上述した複数のオフセットシーケンスが存在する。オフセットシーケンスは、グループオブピクチャに属する各ピクチャデータと、グラフィクスとを合成する場合における制御パラメータを、グループオブピクチャにおけるフレーム期間毎に示すパラメータシーケンスであり、number_of_displayed_frames_in_GOPに示される個数の制御パラメータから構成される。この制御パラメータは、プレーンオフセット方向情報と、プレーンオフセット値とから構成される。
【０３０２】
プレーンオフセット方向情報(Plane＿offset＿direction)は、プレーンにおけるオフセット方向を指示する。値"０"でフロント設定、つまり、プレーンメモリは、TVと視聴者との間に存在し、レフトビュー期間においてプレーンは右方向に、ライトビュー期間においてプレーンは左方向にシフトされる。値＝１でビハインド設定、つまり、プレーンメモリは、TV又はスクリーンの背後に存在し、レフトビュー期間においてプレーンは左方向に、ライトビュー期間においてプレーンは右方向にシフトされる。プレーンオフセット方向情報がフロント設定を示す場合、3次元座標系における制御パラメータのZ軸座標は、正の座標になる。プレーンオフセット方向情報がビハインド設定を示す場合、3次元座標系における制御パラメータのZ軸座標は、負の座標になる。
【０３０３】
プレーンオフセット値(Plane＿offset＿value)は、グラフィクスを構成する画素の水平方向の変位量の指定であり、プレーンのオフセット値を画素単位で指示する。
PGの再生タイプが1plane＋OffsetPGに設定されれば、ディペンデントビュービデオストリームのSEIメッセージに格納されている複数のオフセットシーケンスのうち、カレントストリーム番号のストリーム登録情報内のPG＿テキスト字幕オフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスをビデオデコーダから取り出し、シフト部に供給する。  
【０３０４】
以上が、PG＿テキスト字幕ストリームにおけるProcedure when playback condition is changedについての説明である。
図２８は、上下端再生タイプ決定処理手順を示すフローチャートである。
【０３０５】
上下端再生タイプ決定処理では、PSR2のPGストリーム番号によって特定されるPGストリームのvideo_shift_modeを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ１０１)、取得したvideo_shift_modeが"Down"であり、かつ、PSR32における再生装置のビデオシフトモードが"Down"であるか否かを判定する(ステップＳ１０２)。
【０３０６】
ステップＳ１０２がYesであれば、再生タイプを上端側2D字幕再生とする(ステップＳ１０３)。再生タイプを上端側2D字幕再生とした場合、上端側2D字幕再生モードでのPG再生を実行する。具体的には、PSR2に格納されたカレントストリームのストリーム番号に対応するストリームエントリー内のパケット識別子レファレンスで指示されているパケット識別子のTSパケットの多重分離を多重分離部に行わせるとともに、シフト部に右目用及び左目用のビデオプレーンに格納されているピクチャデータを１３１ピクセル下方向にシフトさせる。
【０３０７】
ステップＳ１０２がNoであれば、ステップＳ１０１で取得したvideo_shift_modeが"Up"であり、かつ、PSR32における再生装置のビデオシフトモードが"Up"であるか否かを判定する(ステップＳ１０４)。ステップＳ１０４がYesであれば、再生タイプを下端側2D字幕再生とする(ステップＳ１０５)。再生タイプを下端側2D字幕再生とした場合、下端側2D字幕再生モードでのPG再生を実行する。下端側2D字幕再生モードでは、シフト部に右目用及び左目用のビデオプレーンに格納されているピクチャデータを１３１ピクセル上方向にシフトさせる。
【０３０８】
以上が、上下端再生タイプ決定処理についての説明である。
図２９は、カレントプレイアイテムについて最適なPG＿テキスト字幕ストリームを選択する処理手順を示すフローチャートである。
【０３０９】
ステップＳ３０において、全てのPG＿テキスト字幕ストリームについて、条件(a)〜条件(c)を満たすかどうかをチェックする。
チェック対象となるPGストリームを、PGストリームiとした場合、条件(a)〜条件(c)は、以下のように規定される。
【０３１０】
条件(a)：PGストリームiをデコードする能力が再生装置に存在する。
条件(b):PGストリームiのPG＿language＿codeが、再生装置における言語設定と一致している。ここで、再生装置における言語設定は、レジスタセットにおけるPSR17に示されている。
【０３１１】
チェック対象となるテキスト字幕ストリームを、テキスト字幕ストリームiとした場合、条件(a)〜条件(c)は、以下のように規定される。
条件(a):テキスト字幕ストリームiのキャラクターコードをビットマップに展開する能力が再生装置に存在すること。
【０３１２】
条件(b):テキスト字幕ストリームiの言語属性をサポートする能力が再生装置に存在すること。
条件(c):テキスト字幕ストリームiのtextST＿language＿codeが、再生装置における言語設定と一致していること。  
【０３１３】
以上のチェックを経た後、ステップＳ３１では、再生装置が、前のフローチャートで述べた条件(Z)(：アンサポート言語の再生)を満たすかどうかを判定する。みたさない場合、ステップＳ３２において、条件(a)〜条件(c)を満たすPG＿テキスト字幕ストリームが存在するかを判定する。存在するなら、条件(a)〜条件(c)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルにおいて先頭順位に位置するものを選択して、選択したPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ３３)。
【０３１４】
条件(a)〜条件(c)を満たすPG＿テキスト字幕ストリームが存在しないなら、ステップＳ３４において、より緩和された条件を満たすPG＿テキスト字幕ストリームが存在するか否かを判定する。緩和された条件とは、条件(a)、条件(b)を満たすことであり、これを満たすPG＿テキスト字幕ストリームが存在するかが、ステップＳ３４で判定される。存在するなら、条件(a)、条件(b)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルにおいて先頭順位に位置するものを選択して、選択したPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ３６)。
【０３１５】
存在しないなら、0xFFFであるPG＿テキスト字幕ストリーム番号をPSR2に設定する(ステップＳ３５)。ステップＳ３１において、条件(Z)を満たすと判定されたなら、ステップＳ３７において、別の緩和された条件を満たすPG＿テキスト字幕ストリームが存在するかを判定する。別の緩和された条件とは、条件(a)、条件(c)を満たすものであり、ステップＳ３７では、これらを満たすPG＿テキスト字幕ストリームが存在するかか否かが判定される。
【０３１６】
もし存在するなら、条件(a)、条件(c)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルの最初に位置するものを選択して、選択したもののPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ３８)。
【０３１７】
存在しない場合、ステップＳ３９において、条件(a)を満たすPG＿テキスト字幕ストリームが存在するかを判定する。存在する場合、条件(a)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルにおいて先頭順位に位置するものを選択して、選択したもののPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ４０)。存在しない場合、0xFFFをPSR2に設定する(ステップＳ３５)。
【０３１８】
以上が、最適なPG＿テキスト字幕ストリームの選択手順についての説明である。
図３０は、セット立体視ストリームコマンド(SetstreamSSCommand)によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。
【０３１９】
ステップＳ４１では、セット立体視ストリームコマンドにおいて、オペランドで指定された番号Xは、PGストリームについてのストリーム番号を意味するか、テキスト字幕ストリームについてのストリーム番号を意味するかを判定する。ステップＳ４２は、番号Xに対応するPGストリーム(PGx)が、以下の条件(A)、条件(B)を満たすか否かをチェックする。
【０３２０】
条件(A)：番号Xから特定されるPGストリームをデコードする能力が再生装置に存在すること。
条件(B)：特定されたPGストリームの属性となる言語が、再生装置の言語属性に一致すること。
【０３２１】
ステップＳ４３は、番号Xに対応するテキスト字幕ストリーム(textSTx)が、以下の条件(A)、条件(B)を満たすか否かをチェックする。
条件(A):番号Xに対応するテキスト字幕ストリームXのキャラクターコードをビットマップに展開する能力が再生装置に存在すること。
【０３２２】
条件(B):番号Xに対応するテキスト字幕ストリームXの言語属性をサポートする能力が再生装置に存在すること。
ステップＳ４４では、再生装置は、条件(Z)を満たすか否かをチェックし、ステップＳ４５の判定を行う。この判定は、番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)(B)を満たすかどうかを判定する。もし満たすなら、番号XにあたるPG＿テキスト字幕ストリーム番号のPG＿テキスト字幕ストリームを選択して、PSR2に設定する(ステップＳ４６)。
【０３２３】
ステップＳ４５において満たさないと判定されたなら、ステップＳ４７の判定を実行する。この判定は、番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)(Z)を満たすかどうかを判定するものである。満たすなら、番号XにあたるPG＿テキスト字幕ストリームを選択して、そのPG＿テキスト字幕ストリーム番号をPSR2に設定する(ステップＳ４８)。
【０３２４】
満たさないなら、ステップＳ４９の判定を行う。この判定は、番号Xが、0xFFFであるか否かを判定するものである。そうでないなら、ストリーム選択テーブルに再生が許可されているPG＿テキスト字幕ストリームが存在しないとして、PSR2の値を維持する(ステップＳ５０)。
【０３２５】
0xFFFであるなら、カレントプレイアイテムについて最適なPG＿テキスト字幕ストリームを選択する(ステップＳ５１)。この最適なPG＿テキスト字幕ストリームの選択は、図２９に示したものと同じである。
【０３２６】
以降のステップＳ５２〜ステップＳ５７は3D出力モード特有の処理である。具体的には、上下端再生タイプ決定処理が実行される（ステップＳ５２）。上下端再生タイプ決定処理において、再生タイプが上端側2D字幕再生及び下端側2D字幕再生の何れかのタイプに設定されなかった場合（ステップＳ５３：Ｎｏ）、PGストリーム番号Xによって特定されるPGストリームXのis＿SS＿PGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ５４)、取得したis＿SS＿PGフラグが"1"であり、かつ、PSR24における立体視PGケーパビリティが"1"であるか否かを判定する(ステップＳ５５)。ステップＳ５５がYesであれば、再生タイプを立体視PGとする(ステップＳ５６)。ステップＳ５５がNoであれば、再生タイプを1plane＋Offsetとする(ステップＳ５７)。
【０３２７】
図３１は、セットストリームコマンド、又は、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。本フローチャートでは、ステップＳ５８において、セットストリームコマンドのオペランドで指定されたストリーム番号、又は、ストリーム番号変更を要求するユーザ操作で指定されたストリーム番号を番号Xに設定した上で、ステップＳ４１〜ステップＳ５７の処理を実行する。このステップＳ４１〜ステップＳ５７の処理内容は、図３０と同一のものであるから、同一の参照符号を付してその説明を省略する。
【０３２８】
＜カレントIGストリームの決定及びカレントIGストリームの再生タイプ決定＞
PSR0のIGストリーム番号によって参照されるIGストリームは、PSR22における出力モードと、PSR24における立体視PGケーパビリティと、is＿SS＿IGとを用いて選択される。
【０３２９】
図３２は、カレントIGストリームの決定及びカレントIGストリームの再生タイプ決定の処理手順を示すフローチャートである。
図３２（ａ）は、プレイアイテムが変化し、再生装置の再生状態が変化した場合におけるカレントIGストリーム決定のためのProcedure when playback condition is changedを示す。本フローチャートのうち、ステップＳ６１〜ステップＳ６５は2D出力モード及び3D出力モードの共通のステップであり、ステップＳ６４〜ステップＳ６７は3D出力モード特有のステップである。
【０３３０】
ステップＳ６１は、ストリーム選択テーブルにおけるentry数が0であるか否かの判定であり、もし0であればPSR0の値を維持する(ステップＳ６４)。
ステップＳ６２は、ストリーム選択テーブルにおけるentry数は0ではない場合に、PSR0よりストリーム選択テーブルのentry数が多いかを判定するものである。もしステップＳ６２がYesであればPSR0を維持する(ステップＳ６５)。もしPSR1の値がentry数より大きい場合、PSR0に1を設定する(ステップＳ６３)。以降のステップＳ６４〜ステップＳ６７は3D出力モード特有のステップである。3D出力モードでは、PSR0のIGストリーム番号によって特定されるIGストリームのis＿SS＿IGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ６４)、取得したis＿SS＿IGフラグが"1"であり、かつ、PSR24におけるb3に示される立体視IGケーパビリティが"1"であるか否かを判定する(ステップＳ６５)。ステップＳ６５がYesであれば、再生タイプを立体視IGとする(ステップＳ６６)。再生タイプを立体視IGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR0に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスを用いて、立体視再生を行う。具体的には、PSR0に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスで指示されているパケット識別子のTSパケットの多重分離を多重分離部に行わせる。
【０３３１】
ステップＳ６５がNoであれば、再生タイプを1plane＋Offsetとする(ステップＳ６７)。  再生タイプを1plane＋OffsetIGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR0に格納されたカレントストリームのストリーム番号に対応するものの立体視IGオフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスを用いて、1plane＋OffsetモードでのIG再生を実行する。具体的には、ディペンデントビューストリームのSEIメッセージに格納されている複数のオフセットシーケンスのうち、立体視IGオフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスをビデオデコーダから取り出し、シフト部に供給する。
【０３３２】
図３２（ｂ）は、セット立体視ストリームコマンド(SetstreamSSCommand)、セットストリームコマンド、及び、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合におけるPSR0の設定手順を示すフローチャートである。
【０３３３】
セット立体視ストリームコマンド(SetstreamSSCommand)、セットストリームコマンド、及び、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合、コマンドのオペランドやユーザ操作で指定されたストリーム番号を番号Xとする。
【０３３４】
本フローチャートにおけるステップＳ７１は、番号Xよりストリーム選択テーブルのentry数が多いかを判定するものである。もしXがこの条件を満たすなら、PSR0にXを設定する(ステップＳ７４)。もしXがentry数より大きい場合は、PSR0に1を設定する(ステップＳ７２)。3D出力モードでは、PSR0のIGストリーム番号によって特定されるIGストリームのis＿SS＿IGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ７３)、取得したis＿SS＿IGフラグが"1"であり、かつ、PSR24における立体視IGケーパビリティが"1"であるか否かを判定する(ステップＳ７４)。ステップＳ７４がYesであれば、再生タイプを立体視IGとする(ステップＳ７５)。ステップＳ７４がNoであれば、再生タイプを1plane＋Offsetとする(ステップＳ７６)。
【０３３５】
図３３は、結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
同図（ａ）は、動作例の題材として用いる結合ストリーム登録列を示す。結合ストリーム登録列は、基本ストリーム選択テーブルにおける3つのストリーム登録情報と、拡張ストリーム選択テーブルにおける3つのストリーム登録情報とから構成されるものである。基本ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号"１"、"２"、"３"のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性は、英語、日本語、中国語の言語属性を有している。
【０３３６】
拡張ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号"１"、"２"、"３"のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性は、英語、日本語、中国語の言語属性を有している。基本ストリーム選択テーブルにおけるストリーム登録情報と、拡張ストリーム選択テーブルにおけるストリーム登録情報とではストリームエントリーにおけるパケット識別子が異なり、拡張ストリーム選択テーブルにおけるストリーム登録情報は、B−Dプレゼンテーションモードのための左目PGストリームのためのパケット識別子、右目PGストリームのためのパケット識別子を含む。
【０３３７】
同図（ｂ）は、言語設定が中国語であり、出力モードが2D出力モードに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０３３８】
図中のa1、a2,a3を付した矢印は、言語設定の一致判定、ストリーム番号レジスタへのストリーム番号の設定、多重分離部へのパケット識別子の出力を
模式的に示したものである。
【０３３９】
プロシージャにおいて、ストリーム番号＝３のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号＝３のストリーム登録情報に含まれるストリーム番号がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、基本ストリーム選択テーブルにおけるストリーム番号＝３のストリーム登録情報におけるストリームエントリーのパケット識別子によって特定されるTSパケットが、デコーダに出力されることになる。
【０３４０】
同図（ｃ）は、言語設定が中国語であり、再生タイプが立体視PGに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０３４１】
図中のa4,a5,a6を付した矢印は、言語設定の一致判定、ストリーム番号レジスタに対するストリーム番号の設定、多重分離部へのパケット識別子の出力を模式的に示したものである。
【０３４２】
ストリーム選択プロシージャにおいて、ストリーム番号＝３のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号＝３のストリーム登録情報に含まれるストリーム番号がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、拡張ストリーム選択テーブルにおけるストリーム番号＝３のストリーム登録情報におけるストリームエントリーに格納されたパケット識別子の組みによって特定される２系統のTSパケットが、デコーダに出力されることになる。
【０３４３】
図３４は、結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
（ａ）は、動作例の題材として用いる結合ストリーム登録列を示す。結合ストリーム登録列は、基本ストリーム選択テーブルにおける3つのストリーム登録情報と、拡張ストリーム選択テーブルにおける3つのストリーム登録情報とから構成されるものである。基本ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号"１"、"２"、"３"のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性は、何れかも中国語の言語属性を有している。
【０３４４】
拡張ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号"１"、"２"、"３"のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性も、中国語の言語属性を有している。基本ストリーム選択テーブルにおけるストリーム登録情報と、拡張ストリーム選択テーブルにおけるストリーム登録情報とではストリームエントリーにおけるパケット識別子が異なり、拡張ストリーム選択テーブルにおけるストリーム登録情報は、B−Dプレゼンテーションモードのための左目PGストリームのためのパケット識別子、右目PGストリームのためのパケット識別子を含む。
【０３４５】
同図（ｂ）は、言語設定が中国語であり、出力モードが2D出力モードに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０３４６】
図中のa1,a2,a3を付した矢印は、言語設定の一致判定、ストリーム番号の設定、パケット識別子の出力を模式的に示したものである。
ストリーム選択プロシージャにおいて、ストリーム番号＝３のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号＝"１"がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、基本ストリーム選択テーブルにおけるストリーム番号"１"のストリーム登録情報におけるストリームエントリーのパケット識別子によって特定されるTSパケットが、デコーダに出力されることになる。
【０３４７】
（ｃ）は、言語設定が中国語であり、再生タイプが1plane＋Offsetタイプに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０３４８】
図中のa4,a5,a6を付した矢印は、言語設定の一致判定、ストリーム番号の設定、パケット識別子の出力を模式的に示したものである。
プロシージャにおいて、ストリーム番号"１"のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号"１"のストリーム登録情報に含まれるストリーム番号がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、拡張ストリーム選択テーブルにおけるストリーム番号"１"のストリーム登録情報におけるストリームエントリーに格納されたパケット識別子の組みによって特定される２系統のTSパケットが、デコーダに出力されることになる。
【０３４９】
以上のように本実施形態によれば、字幕の表示領域確保を規定するビデオシフトモードが、ストリーム番号に対応付けて拡張ストリーム選択テーブルに記載されているため、再生区間の変化時やストリーム変更要求の発生時にストリーム選択プロシージャが実行され、新たなストリーム番号がストリーム番号レジスタに設定された場合、その新たなストリーム番号に対応したビデオシフトモードが、再生装置に供されることになる。こうすることで、ある再生区間では上端に字幕の表示領域が確保され、別の再生区間では下端に字幕の表示領域が確保される制御を実現することができる。
【０３５０】
特に映画作品の映像においては、シネスコサイズ（１：２．３５）のアスペクト比が一般的であり、ＢＤ−ＲＯＭなどの光ディスクに映像を格納する場合には、アスペクト比は変更せずに本編映像を１６：９のＨＤ映像の中央に配置し、画面上下に黒枠を挿入することが一般的である。そのため、上記の構成によれば、本編映像の上下にある黒枠をビデオプレーンの上端又は下端に集めた広い字幕表示領域に、字幕を表示することが可能となるため、画面の利用効率を向上させることができ、立体視効果を向上させることができる。
【０３５１】
（変形例）
本実施の形態の変形例として、ピクチャデータと字幕とを合成する際に、ビデオプレーンメモリに格納されたピクチャデータのみならず、PGプレーンメモリに格納された字幕についても上方向又は下方向にシフトさせる方法について説明する。
【０３５２】
図３５は、本変形例に係る拡張ストリーム選択テーブルのストリーム登録列を示す。同図（ｂ）は、PGストリームのストリーム登録列の内部構成を示す。
本変形例ではPGストリームのストリーム登録情報に、『ビデオ上移動時PGシフト値（PG_v_shift_value_for_Up）』、及び『ビデオ下移動時PGシフト値（PG_v_shift_value_for_Down）』が追加されている。
【０３５３】
『ビデオ上移動時PGシフト値（PG_v_shift_value_for_Up）』は、ビデオシフトモードが"Up"に設定されており、ビデオプレーンの下端にPG＿テキスト字幕ストリームの字幕表示領域を確保する場合に、ＰＧプレーンメモリに格納されている字幕データを下方向へシフトさせるシフト量である。
【０３５４】
『ビデオ下移動時PGシフト値（PG_v_shift_value_for_Down）』は、ビデオシフトモードが"Down"に設定されており、ビデオプレーンの上端にPG＿テキスト字幕ストリームの字幕表示領域を確保する場合に、ＰＧプレーンメモリに格納されている字幕データを上方向へシフトさせるシフト量である。
【０３５５】
これらの値は、図３７に示すPSR33に設定される。PSR33にはプレーン毎に、ビデオが上方向にシフトする場合のプレーンシフト量と、ビデオが下方向にシフトする場合のプレーンシフト量が用意されている。例えば、ＰＧプレーンにはPG_shift_value_for_UP、PG_shift_value_for_Downが用意されている。この値は、ストリーム切り替えによって選択されたカレントのPGストリームについてのPG_v_shift_value_for_Up、PG_v_shift_value_for_Downが、拡張ストリーム選択テーブルにおけるストリーム登録情報から取得され設定される。
【０３５６】
図３６は、デコーダモデルの出力を合成し、上端側2D字幕再生モード方式及び下端側2D字幕再生モード方式で出力するための回路構成を示す。本変形例において上端側2D字幕再生モード方式及び下端側2D字幕再生モード方式では、左目用、右目用のそれぞれのビデオプレーンに対して、PSR32の設定に応じて上方向又は下方向へ131ピクセルだけ画素がシフトされるとともに、PGプレーンの左目用出力、右目用出力のそれぞれについても、PSR33に設定されたPG_ shift_value_for_Up又はPG_ shift_value_for_Downの値に従って、画素が下方向又は上方向へシフトされ、それぞれがレイヤ合成されるようになっている。
【０３５７】
具体的には、PSR32のvideo_shift_modeがUpに設定されている場合、図３８の（ａ）に示すように、ビデオプレーンメモリから出力されるピクチャが上方向へ131ピクセルだけシフトされ、PGプレーンから出力される字幕が、PSR33のPG_ shift_value_for_Upに設定されたピクセル数だけ下方向へシフトされ、これらがレイヤ合成される。一方、PSR32のvideo_shift_modeがDownに設定されている場合、図３８の（ｂ）に示すように、ビデオプレーンメモリから出力されるピクチャが下方向へ131ピクセルだけシフトされ、PGプレーンから出力される字幕が、PSR33のPG_ shift_value_for_Downに設定されたピクセル数だけ下方向へシフトされ、これらがレイヤ合成される。
【０３５８】
このとき本変形例では、図３９に示すようにvideo_shift_modeがUp、Downの場合には、プレーンをシフトすることによって、切り取られる領域が発生するため、切り取られる領域に、字幕データが存在しないように制約するとよい。つまり、図３９の右側に示すように、点線で囲った領域以外は、切り取られる可能性があるため、ここには字幕データが表示されないようにＰＧの表示位置を制約する。領域の座標は、(0,PG_v_shfit_value_for_Down), (0,height+PG_v_sfhit_value_for_Up), (width,PG_v_shfit_value_for_Down), (width,height+PG_v_sfhit_value_for_Up)であらわされる。例えば、PG_v_sfhit_value_for_Upが-a、例えば、PG_v_sfhit_value_for_Downが+bとすれば、領域は、(0,b), (0,height-a), (width,b), (width,height-a)となる。ＰＧの制約としては、表示位置が上記領域を超えないこと、表示位置に表示するオブジェクトのサイズを加えたものが上記領域を超えないこと、ウィンドウの表示位置が上記領域を超えないこと、ウィンドウの表示位置にウィンドウサイズを加えたものが上記領域を超えないこと、などがある。このように制約することで、字幕がかけて表示されることを防ぐことができる。
【０３５９】
（第２実施形態)
次に本発明の第２実施形態について説明する。
【０３６０】
本実施形態では、２Ｄ／３Ｄ再生装置に接続されるテレビの画面サイズに応じて、適切な奥行きをもった３Ｄ映像を実現するための方法について説明する。
視差画像を利用する３Ｄ映像の場合には、図４０の左側に示すように、画面サイズが３Ｄ映像の奥行き感に影響を及ぼす。これは、左目用映像と右目用映像の差分値が、テレビ画面のサイズによって変化するためである。例えば、図４０の左側に記すように、５０インチに最適な奥行きが得られるように左目用映像と右目用映像を作成した場合に、５０インチでは最適な視聴が可能であるが、５０インチより小さいテレビでは左目用映像と右目用映像の差分値が小さくなるため迫力のない奥行き感のない映像となってしまう。逆に５０インチより大きいテレビでは左目用映像と右目用映像の差分値が大きくなりすぎ、目が疲れる要因となってしまう。そこで、図４０の右側に記すように、テレビに出力する左目用プレーンと右目用プレーンに対して、画面サイズを補正するためのオフセット値を適用することが好ましい。例えば、図４０のように５０インチに最適化されている場合には、３２インチの場合は奥行き感を増す方向でオフセット値をかけてテレビに出力し、１００インチの場合は奥行き感を減らす方向でオフセット値をかけてテレビに出力する。なお、プレーンにオフセット値をかけるとは、プレーンに対して１プレーン＋オフセット方式と同じ様に、プレーヤから出力される最終プレーンをオフセット値によって水平方向にシフトして、クロッピングすることを意味する。この最終的なプレーヤの出力プレーンに対して適用するオフセット値を出力オフセット補正値とする。以降で具体的な方法について説明する。
【０３６１】
まず、データ構造について説明する。データ構造の基本部分は、これまでの実施の形態で説明した３Ｄ映像を格納するためのデータ構造と同じであるため、拡張または異なる部分を中心に説明する。
【０３６２】
インデックスファイル、プレイリストファイル、ＡＶストリーム情報ファイルなどのファイルに、図４１の（ａ）に記すようなテーブルが格納されている。このテーブルには、テレビのインチ数と出力オフセット補正値とがペアになった画面サイズ情報が複数登録されている。なお、図４１の（ａ）ではインチ数は１０インチごとに区切っているが、何インチ毎に区切るかは所定の規格などによって決められてもよいし、ユーザが設定できるようにしてもよい。なお、図４１（ａ）のようなテーブルが規格で幾つか用意され、インデックスファイル、プレイリストファイル、ＡＶストリーム情報ファイルなどには、そのテーブルの参照ＩＤだけが登録されているとしてもよい。なお、図４１の（ｂ）に示すように、インチ数に応じて、出力オフセット値が決定される関数が用意されていてもよい。
【０３６３】
なお、テレビのインチ数と出力オフセット補正値がペアのテーブルの他に、該当コンテンツが何インチをターゲットに作られたかを示す最適テレビサイズ（assumed_TV_size_when authoring）の値を入れてもよい。この値を使うことにさまざまな補正処理が可能である。例えば、最適なサイズ以上のテレビで表示する場合には、
図４２に示すように、その最適なサイズで映像を画面中央に表示させ、斜線で示す周りの領域には黒枠を表示するなどの処理を行うことができる。
【０３６４】
次に、本実施の形態に係る再生装置について説明する。再生装置は、図４３に示すように、出力オフセット補正値が格納されるシステムパラメータPSR35と、出力オフセット補正値適用部とを有する。PSR35には、再生制御部によってＨＤＭＩケーブルなどを通じて接続するテレビの画面サイズ（インチ数）が取得され、この画面サイズに対応する出力オフセット補正値が図４１で説明したテーブルを元に特定され格納される。出力オフセット補正値適用部は、PSR35の値を参照し、プレーン加算部で合成された左目映像と右目映像のプレーンに対して、PSR35の値でオフセットをかける。
【０３６５】
なお、PSR35には出力オフセット補正値を格納するとしたが、PSR35には、画面サイズを格納し、出力オフセット補正値適用部が図４１で説明したテーブルを参照して、出力オフセット補正値を特定してもよい。
【０３６６】
なお、見る人に応じて出力オフセット補正値を調整するようにしてもよい。例えば、幼い子供の場合、左右の目の間隔が狭いため、左目映像と右目映像の差分値は小さいほうが好ましい。そこで、出力オフセット補正値を補正するための「出力オフセット補正値アルファ」を用意する。出力オフセット補正値適用部は、出力オフセット補正値に「出力オフセット補正値アルファ」を掛け算した値で、オフセット補正処理を実行する。具体的には図４４に記すような構成で実現する。図４４には、出力オフセット補正値アルファの値を格納するPSR36が用意されている。再生制御部もしくはプログラム実行手段は、PSR36にメニュー画面やプレーヤのＯＳＤ画面などを通じて値を設定する。例えば、子供の視聴用に奥行きを弱めたい場合には、１より大きい値を設定すると奥行きを弱められる。出力オフセット補正値適用部は、PSR35とPSR36を参照して、出力オフセット補正値と出力オフセット補正値アルファの値を掛け算した値で、プレーンに対してオフセットを適用する。このようにすることで、ユーザの好みに合わせて奥行き感を調整できる。
【０３６７】
なお、「出力オフセット補正値アルファ」の値は、ＢＤプログラムによるメニュー画面で、３Ｄの奥行きに対して「弱い」「普通」「強い」のモードから選択して、設定するようにメニューを構成してもよい。
【０３６８】
なお、「出力オフセット補正値アルファ」はビデオストリームのＳＥＩメッセージ、ＰＭＴパケットのディスクリプタ、プレイアイテムごとなどに格納して、シーンに応じて値を変えるようにしてもよい。これによって、奥行きの大きいシーンでは「出力オフセット補正値アルファ」を大きくするなどの対応ができる。
【０３６９】
なお、本実施の形態では、テレビの画面サイズに応じて出力オフセット量補正値を変えるとしたが、視聴距離に応じて出力オフセット補正値や出力オフセット補正値アルファを変えるようにしてもよい。この場合には、３Ｄ視聴に利用するメガネが画面との距離を計測して、その距離をテレビが取得して、テレビから再生装置にＨＤＭＩケーブル経由で通知するようにしてもよい。
【０３７０】
なお、本実施の形態では、テレビの画面サイズに応じて出力オフセット量補正値を変えるとしたが、プロジェクタでは画面サイズがわからないため、プロジェクタは次のようにテレビサイズを測定してもよい。一つ目の方法は、プロジェクタからスクリーンに赤外線などのレーザを出力し、スクリーンからの跳ね返りによって距離を計測し、レンズの光学系パラメータから画面サイズを計算してもよい。もう一つの方法は、プロジェクタであるサイズの「線分」を表示し、スクリーンに投影されたその線分の長さをユーザが計測して、プロジェクタのＯＳＤを通じてその計測した線分の長さを入力するようにしてもよい。スクリーンに投影された線分の大きさに応じて、プロジェクタは画面サイズを計算できる。
【０３７１】
以上のように本実施形態によれば、映像を表示する画面サイズに応じて、左目用映像と右目用映像の差分値を変化させるオフセット処理を施すことで、画面サイズに応じた最適な立体視効果が得られる。
【０３７２】
(第３実施形態)
本実施形態では、立体視インターリーブドストリームファイルを内部構造についての改良である。
【０３７３】
前提事項として、UDFファイルシステムにおけるファイルについて簡単に説明する。UDFにおけるファイルは、ファイルエントリーによって管理されている複数のエクステントから構成される。「ファイルエントリ」は、「記述子タグ」と、「ICBタグ」と、「アロケーション記述子」とを含む。
【０３７４】
「記述子タグ」は、自身がファイルエントリである旨を示すタグである。タグには、ファイルエントリ記述子、スペースビットマップ記述子などの種別があるが、ファイルエントリの場合には、記述子タグとしてファイルエントリを示す"261"が記述される。
【０３７５】
「ICBタグ」は、ファイルエントリ自身に関する属性情報を示す。
「アロケーション記述子」は、あるディレクトリの配下にある下位ファイルを構成するエクステントの記録位置を示す論理ブロック番号（LBN）を含む。アロケーション記述子は、エクステント長を示すデータと、エクステントの記録位置を示す論理ブロック番号とを含む。ただしエクステント長を示すデータの上位２ビットは、"０"に設定されることで、割り付け済みかつ記録済みエクステントである旨を示し、"１"に設定されることで、割り付け済みかつ未記録エクステントである旨を示す。"０"に設定されることで、アロケーション識別子の続きのエクステントであることを示す。あるディレクトリの配下にある下位ファイルが複数のエクステントに分割されている場合には、ファイルエントリはエストテント毎に複数のアロケーション記述子を有することになる。
【０３７６】
上述したようなファイルエントリーのアロケーション識別子を参照することで、ストリームファイルを構成するエクステントのアドレスを知得することができる。
次に、本実施形態で想定されているファイルの種別について説明する。
【０３７７】
＜立体視インターリーブドストリームファイル(FileSS)＞
立体視インターリーブドストリームファイル(FileSS)は、2TSをインターリーブ形式にしたストリームファイル(2TSインターリーブファイル)であり、５桁の整数値と、立体視再生用のインターリーブド形式ファイルである旨を示す拡張子(ssif)とによって識別される。立体視インターリーブドストリームファイルは、エクステントSS[n]から構成され、エクステントSS[n](EXTSS[n])は、インデックス番号nによって特定される。インデックス番号nは、立体視インターリーブドストリームファイルの先頭から1つずつインクリメントされる番号である。
【０３７８】
エクステントSS[n]は、ディペンデントビューデータブロックと、ベースビューデータブロックとの組みとして構成される。
エクステントSS[n]を構成するベースビューデータブロック、ディペンデントビューデータブロックは、ファイル2D、ファイルベース、ファイルディペンデントからのクロスレファレンスの対象となる。クロスレファレンスとは、記録媒体に記録された1つのデータ客体を、複数のファイルのエクステントとして、ファイルエントリーに登録しておくことをいう。本実施形態では、ファイル2Dのファイルエントリー、ファイルベースのファイルエントリー、ファイルディペンデントのファイルエントリーに、ベースビューデータブロック、ディペンデントビューデータブロックの先頭アドレス及び連続長が登録されることになる。
【０３７９】
＜ファイルベース(FileBase)＞
ファイルベース(FileBase)は、ファイル2Dに対応するクリップ情報におけるエクステントスタートポイント情報によって指示されるメインTSを"格納している"とされる仮想的なストリームファイルであり、少なくとも1つのエクステント1[i](EXT1[i]と呼ぶ)によって構成される。エクステント1[i]は、ファイルベースにおけるi番目のエクステントであり、iは、エクステントのインデックス番号であり、ファイルベースの先頭を0としてインクリメントされる。ファイルベースは、2TSファイルである立体視インターリーブドストリームファイルを、1TSファイルとして扱うための仮想的なストリームファイルであり、そのファイルエントリーを、再生装置のメモリ上で構築することで仮想的に生成される。
【０３８０】
実際の読み出しにあたって、ファイルベースは、この立体視インターリーブドストリームファイルのファイル名を用いてファイルオープンを行うことで特定される。具体的にいうと再生装置のミドルウェアは、立体視インターリーブドストリームファイルのファイル名を用いたファイルオープンがコールされた場合、ファイルベースのエクステントを特定するファイルエントリーをメモリ上で生成して、ファイルベースを仮想的にオープンする。立体視インターリーブドストリームファイルは、"1TSのみを包含している"とみなすことができ、2TSの立体視インターリーブドストリームファイルを1TSのファイルベースとして記録媒体から読み出すことができる。
【０３８１】
B−Bプレゼンテーションモードにおいて、ベースビューデータブロックのみを読み出したい場合は、このファイルベースを構成するエクステントのみが読み出しの対象になる。B−BプレゼンテーションモードからB−Dプレゼンテーションモードへのモード変更があったとしても、読出範囲を、ファイルベースを構成するエクステントの記録範囲から、立体視インターリーブドストリームファイルを構成するエクステントの記録領域に拡大すれば、ベースビューデータブロック、ディペンデントビューデータブロックの双方を読み出すことができるから、ファイル読み出しの効率性を低下させることはない。
【０３８２】
＜ファイルディペンデント(FileDependent)＞
ファイルディペンデント(FileDependent)は、サブTSを"格納している"とされるストリームファイルであり、エクステント2[i](EXT2[i])によって構成される。EXT2[i]は、ファイルディペンデントにおけるi番目のエクステントであり、iは、エクステントのインデックス番号であり、ファイルディペンデントの先頭を0としてインクリメントされる。ファイルディペンデントは、2TSファイルである立体視インターリーブドストリームファイルを、サブTSを格納した1TSファイルとして扱うための仮想的なストリームファイルであり、そのファイルエントリーを、再生装置のメモリ上で構築することで仮想的に生成される。
【０３８３】
ディペンデントビュービデオストリームは、立体視インターリーブドストリームファイルのファイル名である5桁番号に、1を加算した番号がファイル名として付与される。このファイル名を用いてアクセスされる。記録媒体には、ダミーファイルが記録されていて、ディペンデントビュービデオストリームの識別番号である、「１を加算した番号」がこのダミーファイルに付与される。ダミーファイルとは、ファイル名のみが存在していて、実体であるエクステントが存在しないファイルであり、ディペンデントビュービデオストリームは、このダミーファイルに格納されるとして扱われる。
【０３８４】
＜ファイル2D(File2D)＞
ファイル2Dは、2D出力モードにおいて再生されるメインTSを格納している1TSのストリームファイルであり、エクステント2Dから構成される。ファイル2Dは、５桁の整数値と、立体視再生用のインターリーブド形式ファイルである旨を示す拡張子(ssif)とによって識別される。
【０３８５】
図４５は、エクステントと、ファイル2D／ファイルベース、ファイルディペンデントとの対応付けを示す。
第１段目は、ファイル2D／ファイルベース、ファイルディペンデントである00001.m2ts,00002.m2tsを示し、第２段目は、ベースビューデータブロックを格納したエクステント、ディペンデントビューデータブロックを格納したエクステントを示す。第３段目は、立体視インターリーブドストリームファイルである00001.ssifを示す。
【０３８６】
破線の矢印h1,h2,h3,h4は、エクステントEXT1[i],EXT2[i]が、どのファイルに帰属しているかというアロケーション識別子による帰属関係を示す。矢印h1,h2に示される帰属関係によると、エクステントEXT1[i],EXT1[i+1]は、ファイルベースである00001.m2tsのエクステントとして登録されていることがわかる。
【０３８７】
矢印h3,h4に示される帰属関係によると、エクステントEXT2[i],EXT2[i+1]は、ファイルディペンデントである00002.m2tsのエクステントとして登録されていることがわかる。
矢印h5,h6,h7,h8に示される帰属関係によると、エクステントEXT1[i],EXT2[i],EXT1[i+1],EXT2[i+1]は、00001.ssifのエクステントとして登録されていることがわかる。以上のように、エクステントEXT1[i],EXT1[i+1]は、00001.ssifに帰属すると同時に、00001.m2tsに帰属するという二重性を有していることがわかる。この"ssif"という拡張子は、StereoScopic Interleave Fileの頭文字をとったものであり、立体視再生のため、インターリーブ形式になっていることを示す。
【０３８８】
ここで、ファイルベースを構成するエクステントと、ファイルディペンデントを構成するエクステントとの組みであって、同じエクステント識別子で特定されるものを"インターリーブエクステントユニット"という。この図４５の例において、エクステント識別子=iで特定されるEXT1[i]と、EXT2[i]とのペアがインターリーブエクステントユニット[i]になり、エクステント識別子=i+1で特定されるEXT1[i+1]と、EXT2[i+1]とのペアがインターリーブエクステントユニット[i+1]になる。立体視インターリーブドストリームファイルに対するランダムアクセスにあたっては、このエクステント識別子で特定されるインターリーブエクステントユニットが一度に記録媒体から読み出されることを保障せねばならない。
【０３８９】
図４６は、立体視インターリーブドストリームファイルと、ファイル2D／ファイルベースとの関係を示す。
同図（ａ）の第３段目は、インターリーブドストリームファイルの内部構成を示す。立体視インターリーブドストリームファイルは、ベースビューデータブロックを格納したエクステントEXT1[1],EXT1[2]のそれぞれと、ディペンデントビューデータブロックを格納したエクステントEXT2[1],EXT2[2]のそれぞれとが交互配置されることで構成される。
【０３９０】
第１段目は、ファイル2D及びファイルベースの内部構成を示す。ファイル2D／ファイルベースは、第３段目におけるインターリーブドストリームファイルを構成するエクステントのうち、ベースビューデータブロックを格納したエクステントEXT1[1],EXT1[2]のみから構成されている。ファイル2Dのファイル名は、インターリーブドストリームファイルのファイル名が同一だが、拡張子が異なる。
【０３９１】
第２段目は、ファイディペンデントの内部構成を示す。ファイディペンデントは、第３段目におけるインターリーブドストリームファイルを構成するエクステントのうち、ディペンデントビューデータブロックを格納するエクステントEXT2[1],EXT2[2],EXT2[2]のみから構成されている。ファイルディペンデントのファイル名は、インターリーブドストリームファイルのファイル名に1を加算したものになっており、また拡張子が異なる。
【０３９２】
3D映像を含む光ディスクであったとしても、全ての再生装置が3D再生方式に対応しているとは限らないため、2Dでの再生がサポートされることが望ましい。ただし、2D再生のみに対応した再生装置は、3Dで拡張されたデータ構造などは判別できない。2D再生装置は旧来の2D再生方式のままの判別方法で、2Dプレイリストおよび2Dストリームにのみアクセスできる必要があるので、ベースビュービデオストリームについては、2D方式の再生装置が認識できるようなファイル形式で格納されている。
【０３９３】
１つ目の方法は、上述したようなプレイリスト情報の参照、つまり、メインTSは2D再生でも利用できるように2D再生方式と同じファイル名を使い、インターリーブ形式のストリームファイルは拡張子を変える方法である。同図（ｂ）における00001.m2ts、及び、00001.ssifは、一方は2D方式、他方は3D方式でありながら同じファイル名"00001"によってカップリングされている。
【０３９４】
プレイリストは、メインTSのAVクリップしか参照しないため、既存の2D再生装置ではファイル2Dしか再生しない。3D対応の再生装置は、プレイリストはメインTSの入ったファイル2Dしか参照していないが、同じ識別番号を持ち、拡張子のみ異なるファイルが存在する場合は、そのファイルを見つけ出し、3D映像のためのインターリーブ形式のストリームファイルであると判断して、メインTSと、サブTSとを出力する。
【０３９５】
２つ目の方法は、フォルダを分ける方法である。メインTSは既存のフォルダ名（例：STREAM）を持つフォルダ内に格納しておくが、サブTSは、3D特有の名前を持つフォルダ（例：SSIF）に同じファイル名『00001』で格納しておく。プレイリストがファイルを参照する際、2D再生装置では「STREAM」フォルダ内のファイルのみを参照するが、3D再生装置の場合は「STREAM」と「SSIF」フォルダの中から、同じ名前のファイルを同時に参照することにより、メインTSと、サブTSとを関連づけることが可能となる。
【０３９６】
３つ目の方法は、識別番号によるものである。ファイル2D／ファイルベースの識別番号が"００００１"である場合、ファイルディペンデントの識別番号は、同図（ｃ）に示すようにこのファイル2Dの識別番号に"１"を加算した番号、つまり、"０００２"という識別番号を付与する等、一定のルールに従って関連づけを行う方法である。しかし記録媒体のファイルシステムにおいて、上述のルールで命名されたファイルディペンデントは、あくまでも実体のないダミーファイルとして扱われる。これは、ファイルディペンデントの実体は、立体視インターリーブドストリームファイルに過ぎないとの理由による。こうして関連付けられたファイル名を、基本ストリーム選択テーブルにおけるストリーム登録情報、及び、拡張ストリーム選択テーブルにおけるストリーム登録情報におけるストリームエントリーのサブクリップエントリーIDレファレンス(ref＿to＿subclip＿entry＿id)に記述しておく。一方、再生装置については、サブクリップエントリーIDレファレンスに記述された識別番号に"1"を加算した識別番号のファイル名は、ダミーファイルのファイル名であると認証して、ファイルディペンデントを仮想的にオープンする処理を実行する。こうすれば、ストリーム選択プロシージャにおいて、上述したような関連付けがなされたファイルディペンデントが確実に記録媒体から読み出されることになる。
【０３９７】
クリップ情報ファイルについても、同様のルールで識別される。
以上が、ファイル2D、ファイルベース、ファイルディペンデントについての説明である。
【０３９８】
以下、データブロックの詳細について説明する。
＜ベースビューデータブロック＞
ベースビューデータブロック(B[i])は、メインTSのi番目のデータブロックである。ここで、メインTSとは、カレントプレイアイテム情報のクリップ情報ファイル名情報(クリップ情報ファイルネーム情報)を通じて、メインパスの基軸として指定されているTSである。B[i]の"i"は、ファイルベースの先頭のデータブロックを0としてインクリメントされるインデックス番号である。
【０３９９】
ベースビューデータブロックには、ファイルベースと、ファイル2Dとで共通化されるものと、ファイルベースと、ファイル2Dとで共通化されていないものとがある。
ファイル2D及びファイルベースで共通化されるベースビューデータブロック、及び、ファイル2D固有のベースビューデータブロックは、ファイル2Dのエクステントになるものであり、再生装置におけるバッファアンダーフローを生じさせない長さに設定されている。そしてその先頭のセクタアドレスは、ファイル2Dのファイルエントリーにおけるアロケーション記述子に記述されている。
【０４００】
ファイル2Dと共通化されていないファイルベース固有のベースビューデータブロックは、ファイル2Dのエクステントにはならないから、再生装置におけるシングルバッファをアンダーフローを生じさせない長さに設定されている訳ではない。より小さいサイズ、つまり、再生装置におけるダブルバッファをアンダーフローさせない長さに設定されている。
【０４０１】
またファイルベース固有のベースビューデータブロックは、その先頭セクタアドレスがファイルエントリーにおけるアロケーション記述子に記述されていない。代わりに、ベースビューデータブロックにおける先頭ソースパケットのソースパケットが、メインTSに対応するクリップ情報ファイルのクリップ情報内のエクステントスタートポイント情報によって、ポインティングされている。そのため、ファイルベース固有のベースビューデータブロックの先頭セクタアドレスは、立体視インターリーブドストリームファイルのファイルエントリーにおけるアロケーション記述子と、クリップ情報内のエクステントスタートポイント情報とを用いて導きだす必要がある。
【０４０２】
＜ディペンデントビューデータブロック＞
ディペンデントビューデータブロック(D[i])は、サブTSのi番目のデータブロックである。サブTSとは、カレントプレイアイテム情報に対応する拡張ストリーム選択テーブルのストリーム登録列におけるストリームエントリーにおいて、サブパスの基軸として指定されているTSである。D[i]の"i"は、ファイルディペンデントの先頭のデータブロックを0としてインクリメントされるインデックス番号である。
【０４０３】
ディペンデントビューデータブロックは、ファイルディペンデントのエクステントになるものであり、再生装置におけるダブルバッファのアンダーフローを生じさせない長さに設定されている。
【０４０４】
また、記録媒体の連続領域上で、ディペンデントビューデータブロックは、同じ再生時間で再生されるべきベースビューデータブロックより手前に配置される。そのため、立体視インターリーブドストリームファイルの読み出し時にあたって、ディペンデントビューデータブロックは、必ずベースビューデータブロックより先に読み出されることになる。
【０４０５】
ディペンデントビューデータブロックは、ファイル2Dと共通化されていないので、その先頭セクタアドレスが、ファイル2Dのファイルエントリーにおけるアロケーション記述子に記述されていない。代わりに、ディペンデントビューデータブロックにおける先頭ソースパケットのソースパケットが、クリップ情報内のエクステントスタートポイント情報によって、ポインティングされている。そのため、ディペンデントビューデータブロックの先頭セクタアドレスは、ファイル2Dのファイルエントリーにおけるアロケーション記述子と、クリップ情報内のエクステントスタートポイント情報とを用いて導きだす必要がある。
【０４０６】
＜エクステントの類型＞
上述したように、ファイル2Dのエクステントには、ファイルベースのエクステントと共通のものと、ファイルベースと共通ではないものとがある。
【０４０７】
ファイル2Dのエクステントが、B[0]、B[1]、B[2]、B[3]2D、B[4]2Dから構成され、ファイルベースのエクステントがB[0]、B[1]、B[2]、B[3]ss、B[4]ssから構成されるものとする。B[0]、B[1]、B[2]は、ファイルベースと共通化されているベースビューデータブロックである。B[3]2D、B[4]2Dは、ファイルベースと共通化されていない、ファイル2D固有のベースビューデータブロックである。
【０４０８】
またB[3]ss、B[4]ssは、ファイル2Dと共通化されていない、ファイルベース固有のベースビューデータブロックである。
B[3]2Dにおけるデータと、B[3]ssのデータとは、bit-for-bitの同一性を有する。B[4]2Dにおけるデータと、B[4]ssのデータとは、bit-for-bitの同一性を有する。
【０４０９】
これらのファイル2DにおけるデータブロックB[2]、B[3]2D、B[4]2Dは、ロングジャンプを生じさせる場所の直前において、連続長が大きいエクステント（ビッグエクステント）を構成する。ファイル2Dは、ロングジャンプの直前で、ビックエクステントを形成することができるので、立体視インターリーブドストリームファイルを2D出力モードで再生する場合であっても、リードバッファのアンダーフローを危惧する必要はない。
【０４１０】
ファイル2D及びファイルベースは、エクステントが一部異なっているものの、同一性を有しているので、これらファイル2D及びファイルベースを併せて、"ファイル2D／ファイルベース"という。
【０４１１】
図４７は、立体視インターリーブドストリームファイル、ファイル2D、ファイルベースの相互関係を示す。第１段目はファイル2Dを示し、第２段目は記録媒体上のデータブロック、第３段目は立体視インターリーブドストリームファイル、第４段目はファイルベース、第５段目はファイルディペンデントを示す。
【０４１２】
第２段目におけるデータブロックは、上述したD[1],B[1],D[2],B[2],D[3],B[3]ss,D[4],B[4]ss,B[3]2D,B[4]2Dである。そして矢印ex1,ex2,ex3,ex4は、データブロックのうち、B[1],B[2],B[3]2D,B[4]2Dがファイル2Dのエクステントを構成しているという帰属関係を示す。
【０４１３】
矢印ex5,ex6は、データブロックのうち、D[1],B[1],D[2],B[2],D[3],B[3]ss,D[4],B[4]ssが立体視インターリーブドストリームファイルのエクステントを構成しているという帰属関係を示す。
【０４１４】
第４段目は、この立体視インターリーブドストリームファイルを構成するデータブロックのうち、B[1],B[2],B[3]ss,B[4]ssがファイルベースのエクステントとなり、第５段目は、立体視インターリーブドストリームファイルを構成するデータブロックのうち、D[1],D[2],D[3],D[4]がファイルディペンデントのエクステントになることを示す。
【０４１５】
図４８は、2Dプレイリスト、3Dプレイリストを示す。第１段目は、2Dプレイリスト情報であり、第２段目は、ベーズデータブロック、第３段目は、3Dプレイリスト、第４段目は、ディペンデントビューデータブロックを示す。
【０４１６】
矢印rf1,rf2,rf3は、2Dプレイリスト情報のプレイアイテム情報におけるclip＿information＿file＿nameに記述されているファイル名00001と、拡張子m2tsとを組合せることによる再生経路を示す。この場合、データブロックB[1],B[2],B[3]2Dによってベースビュー側の再生経路が構成される。
【０４１７】
矢印rf4,rf5,rf6,rf7は、3Dプレイリスト情報のプレイアイテム情報により指定される再生経路を示す。この場合、B[1],B[2],B[3]ss,B[4]ssを用いてベースビュー側の再生経路が構成される。
【０４１８】
矢印rf8,rf9,rf10,rf11は、3Dプレイリスト情報のサブプレイアイテム情報により指定される再生経路を示す。この場合、D[1],D[2],D[3],D[4]を用いてディペンデントビュー側の再生経路が構成される。これらのプレイアイテム情報、サブプレイアイテム情報により指定される再生経路を構成するデータブロックは、プレイアイテム情報におけるclip＿information＿file＿nameに記述されているファイル名と、拡張子ssifとを組合せてファイルオープンを行うことで読み出すことができる。
【０４１９】
本図の3Dプレイリストにおけるクリップ情報ファイルネーム情報、2Dプレイリスにおけるクリップ情報ファイルネーム情報は、共通のファイル名を記述しているので、これら3Dプレイリスト、2Dプレイリストを定義するようなプレイリスト情報を記述するにあたっては共通する記述で足りる(符号df1,df2参照)。よって、この3Dプレイリストを実現するようなプレイリスト情報を記述しておけは、再生装置の出力モードが立体視出力モードのときは3Dプレイリストとして機能し、再生装置の出力モードが2D出力モードのときは2Dプレイリストとして機能することになる。本図の2Dプレイリスト、3Dプレイリストは、1つのプレイリスト情報を記述しておくことで、これを解釈する再生装置の出力モードに応じて、2Dプレイリスト、3Dプレイリストとして解釈されるので、オーサリングを行う者の手間を軽減することができる。
【０４２０】
立体視インターリーブドストリームファイルにメインTS、サブTSを格納する場合、2Dプレイリストのプレイアイテム情報におけるclip＿information＿file＿nameは、ファイル2Dのファイル名を記述する。3Dプレイリストのプレイアイテム情報におけるclip＿information＿file＿nameは、ファイルベースのファイル名を記述する。ファイルベースは、仮想的なファイルであり、そのファイル名は、立体視インターリーブドストリームファイルと同じものなので、立体視インターリーブドストリームファイルのファイル名をプレイアイテム情報におけるclip＿information＿file＿nameに記述しておけばよい。拡張ストリーム選択テーブルのストリーム登録情報におけるref＿to＿subclip＿entry＿idは、ファイルディペンデントのファイル名を記述する。ファイルディペンデントのファイル名は、立体視インターリーブドストリームファイルの識別番号に、１を加算したものである。
【０４２１】
以上のように、ベースビューデータブロックと、ディペンデントビューデータブロックとを1つの立体視インターリーブドストリームファイルに格納しつつも、立体視インターリーブドストリームファイルを、ファイル2D、ファイルベース、及び、ファイルディペンデントのうち、何れかのファイルとしてオープンすることができるので、デコーダ側では、立体視インターリーブドストリームファイルを通常のストリームファイルと同様に取り扱うことができる。よって、ベースビュービデオストリーム、ディペンデントビュービデオストリームの格納方式に、積極的に立体視インターリーブドストリームファイルを取り入れることができる。
【０４２２】
次にクリップ情報ファイルの詳細な内部構造について説明する。
図４９は、クリップ情報ファイルの内部構成を示す。
同図（ａ）は、2Dのクリップ情報ファイル、同図（ｂ）は、3D用のクリップ情報ファイルを示す。これらのクリップ情報ファイルは、『クリップ情報』、『シーケンス情報』、『プログラム情報』、『特徴点情報』を含む。
【０４２３】
『クリップ情報』は、ストリームファイルに格納されているソースパケット列のそれぞれが、どのようなAVクリップであるかをATCシーケンス毎に示す。
『シーケンス情報』は、ストリームファイルに格納されている1又は複数のソースパケット列がどのようなATCシーケンスであるかを示す情報(ATCシーケンス情報)をATCシーケンス毎に示す構成になっている。ATCシーケンス情報は、ATCの開始点たるソースパケットがどこに存在するかをソースパケット番号で示す情報、STCシーケンス識別子ーATCシーケンス識別子間のオフセットと、複数のSTCシーケンスのそれぞれについてのSTCシーケンス情報とを含む。STCシーケンス情報は、そのSTCシーケンスにおけるPCRを格納しているソースパケットのパケット番号、そのATCシーケンスのうち、どこにSTCシーケンスの開始点たるソースパケットが存在するかを示す情報、STCシーケンスにおける再生開始時刻、再生終了時刻を含む。
【０４２４】
『プログラム情報』は、クリップ情報ファイルによって"AVクリップ"であるとして管理されているメインTS、サブTSのプログラム構成を示す情報であり、AVクリップがどのようなESを多重化したものであるかを示す。具体的には、AVクリップに多重化されているESがどのようなパケット識別子を有しているか、どのような符号化方式であるかを示す。ビデオストリームが、MPEG2-video,MPEG4-AVC等のうち、どの符号化方式を用いて圧縮符号化されているかは、このプログラム情報内に明示される。
【０４２５】
『特徴点情報』は、AVクリップに多重化されている複数のESの特徴点がどこに存在するかを、ES毎に示す情報である。ES毎の特徴点を示す情報が、基本エントリーマップと呼ばれる。
【０４２６】
何が特徴点になるかは、ストリームの種別毎に異なる。ベースビュービデオストリーム、ディペンデントビュービデオストリームの場合は、オープンGOP、クローズドGOPの先頭に位置するIピクチャタイプのビューコンポーネントの先頭を示すアクセスユニットデリッミターが特徴点となる。オーディオストリームの場合は、１秒置き等、一定期間置きに存在するオーディオフレームの先頭位置を示すアクセスユニットデリッミターが特徴点となり、PGストリーム、IGストリームの場合は、グラフィクスストリームのディスプレイセットのうち、表示に必要な全ての機能セグメントを具備したもの(エポックスタートのディスプレイセット、アクジッションポイントのディスプレイセット)の先頭位置を示すアクセスユニットデリッミターが特徴点となる。
【０４２７】
また特徴点をどのように表すかは、ATCシーケンス、STCシーケンスのそれぞれで異なる。ATCシーケンスにおいて特徴点は、ソースパケット番号で表現される。STCシーケンスにおいては、同じ特徴点が、STC時間軸における時点を示すPTSを用いて表現される。
【０４２８】
上記違いに鑑みES毎の基本エントリーマップは、複数のエントリーポイントから構成されている。具体的にいうと、エントリーマップを構成する個々のエントリーポイントは、ATCシーケンスにおける特徴点の所在を示すソースパケット番号が、STCシーケンスにおける特徴点の所在を示すPTSと対応付けられており、その特徴点へのアングル切り替えが可能であるか否かを示すフラグ(is＿angle＿changeフラグ)と、GOP先頭に存在するイントラピクチャのサイズを示す情報(I＿size)とを具備している。マルチアングル区間を構成するインターリーブユニットの先頭に位置するソースパケットは、アングル切り替えが可能になっているため、インターリーブユニットの先頭ソースパケットを差すエントリーポイントのis＿angle＿changeフラグは、必ずオンに設定される。また、インターリーブユニットの先頭ソースパケットを差すエントリーポイントは、エントリーポイントによって、プレイアイテム情報におけるIn＿Timeと対応付けられている。
【０４２９】
ES毎のエントリーマップは、これらストリーム種別毎の特徴点のソースパケット番号を、PTSに対応付けて示しているので、このエントリーマップを参照することで、STCシーケンスにおける任意の時点から、その時点に最も近いES毎の特徴点の所在を示すソースパケット番号を導くことができる。
【０４３０】
以上が2D用のクリップ情報ファイルについての説明である。続いて、3D用のクリップ情報ファイルの詳細について説明する。3D用のクリップ情報ファイルは、図４９（ｂ）の内部構成になっていて、通常のクリップ情報(管理情報)である「ファイル2D用のクリップ情報」の他に、ファイルディペンデント用のクリップ情報である「クリップディペンデント情報(ベースビュー管理情報)」、ファイルベース用のクリップ情報である「クリップベース情報(ベースビュー管理情報)」が存在する。これは以下の理由による。上述したように、立体視インターリーブドストリームファイルと、通常のストリームファイルとの混同を避けるため、立体視インターリーブドストリームファイルは、ストリームファイルとは異なるディレクトリに格納される。そのため立体視インターリーブドストリームファイルには、クリップ情報ファイルを対応付けることができない。そこで、クリップディペンデント情報、及び、クリップベース情報は、ファイル2Dに対応するクリップ情報ファイルに格納されることになる。
【０４３１】
2D用のクリップ情報と、クリップベース情報及びクリップディペンデント情報との違いは、クリップベース情報及びクリップディペンデント情報の内部に、エクステントスタートポイント列を含むメタデータが存在する点である。
【０４３２】
同図（ｂ）において、クリップディペンデント情報は、エクステントスタートポイント列を含み、クリップベース情報も、エクステントスタートポイント列を含む。特徴点情報は、拡張エントリーマップを含み、エクステンションデータは、拡張エントリーマップを含む。
【０４３３】
3D出力モードにおいてクリップ情報ファイルは、クリップベース情報ファイルと、クリップディペンデント情報ファイルとに分割される。
同図（ｃ）は、クリップベース情報ファイルを元にして生成されるクリップベース情報ファイルを示す。クリップベース情報と、基本エントリーマップとから構成される。クリップベース情報は、エクステントスタートポイント情報を含む。
【０４３４】
同図（ｄ）は、クリップディペンデント情報ファイルは、クリップディペンデント情報と、拡張エントリーマップとを含む。クリップディペンデント情報は、エクステントスタートポイント情報を含む。
【０４３５】
クリップ情報ファイル用のディレクトリ（CLPIディレクトリ）には、2D出力モードのクリップ情報ファイルが存在している。クリップベース情報ファイルは、3D出力モードにおいて、クリップ情報ファイルから生成され、この2D出力モードのクリップ情報ファイルに格納されているものとして扱われる。
【０４３６】
クリップ情報ファイル用のディレクトリ（CLPIディレクトリ）には、ダミーのクリップ情報ファイルが存在しており、このダミーのクリップ情報ファイルには、ファイルディペンデントに対応する番号、つまり、ファイル2D／ファイルベースの識別番号に"１"を加算した番号のファイル名が付与されている。クリップディペンデント情報ファイルは、3D出力モードにおいて、ファイル2Dに対応するクリップ情報ファイルから生成され、このダミーのクリップ情報ファイルに格納されているものとして扱われる。ここで、2D出力モードのクリップ情報ファイルが00001.clpiであれば、3D出力モードにおいてクリップベース情報ファイルは、00001.clpiに格納されているものとして扱われ、3D出力モードにおいてクリップディペンデント情報ファイルは、00002.clpiに格納されているものとして扱われる。
【０４３７】
＜エクステントスタートポイント＞
エクステントスタートポイントについて説明する。
上述したように立体視インターリーブドストリームファイルは、2つのクリップAVストリーム(BDAV  MPEG2トランスポートストリーム)から構成される。エクステントスタートポイント情報のペアは、立体視インターリーブドストリームファイルを2つのAVストリームに分割する途を与える。エクステントスタートポイント情報は、以下のように供給される。
【０４３８】
(1)エクステントスタートポイント情報テーブルは、サブパスタイプ＝８のサブパスを含むプレイリストのプレイアイテムによって参照されるクリップ情報に格納されて再生装置に供給される。サブパスタイプ＝８のサブパスとは、オンディスクタイプのOut-of-MUXディペンデントビュービデオストリーム再生パスである。
【０４３９】
(2）別のエクステントスタートポイント情報テーブルは、サブパスタイプ＝８のサブパスを含むプレイリストのサブプレイアイテムによって参照されるクリップ情報に格納されて再生装置に供給される。
【０４４０】
もしプレイアイテム情報に、マルチアングル区間を構成していて、マルチアングル区間が存在することを示すフラグ（フラグイズマルチアングルフラグ）が"オン"に設定された場合、エクステントスタートポイント情報テーブルのペアは、それぞれアングルID値によって参照されるクリップ情報、及び、サブクリップエントリーID値によって参照されるクリップ情報に格納されて再生装置に供給される。
【０４４１】
クリップ情報ファイルにおけるエクステントスタートポイント情報のデータ構造について説明する。ext＿data＿entry()内のエクステンションデータにおけるID1値と、ID2値とは、それぞれ0x0002,0x0004に設定さねればならない。
【０４４２】
エクステントスタートポイント情報をもつクリップ情報ファイルは、以下の2つの条件を満たす必要がある。
（ａ）サブパスタイプ＝８のサブパスを含むプレイリストのプレイアイテムによって参照されねばならない。
【０４４３】
（ｂ）サブパスタイプ＝８のサブパスにおけるサブプレイアイテムによって参照されねばならない。ここで、サブパスタイプ＝８とは、オンディスクタイプのOut-of-MUXディペンデントビュービデオストリーム再生パスをいう。
【０４４４】
図５０は、クリップ情報ファイルと、プレイリストと、立体視インターリーブドストリームファイルとの関係を示す。右側は、立体視インターリーブドストリームファイルを示し、左側はクリップ情報ファイルを示す。真ん中は第１段目にファイルベースを示し、第２段目にクリップ情報ファイル、第３段目に3Ｄプレイリスト、第４段目にクリップディペンデント情報ファイル、第５段目にファイルディペンデントを示す。
【０４４５】
矢印bk1,bk2は、右側におけるストリームファイルを分割することで、ファイルベース、ファイルディペンデントが得られることを示す。
左側におけるクリップ情報ファイルは、特徴点情報、エクステンションデータ、クリップベース情報、クリップディペンデント情報を含む。矢印bk3,bk4は、クリップベース情報におけるエクステントスタートポイント情報、クリップディペンデント情報におけるエクステントスタートポイント情報が、立体視インターリーブドストリームファイルを分割する途を与えることを模式的に示す。
【０４４６】
エクステントスタートポイントについて説明する。
クリップ情報ファイルにおけるエクステントスタートポイント情報において、ext＿data＿entry()内のエクステンションデータにおけるID1値と、ID2値とは、それぞれ0x0002,0x0004に設定さねればならない。
【０４４７】
エクステントスタートポイント情報をもつクリップ情報ファイルは、以下の2つの条件を満たす必要がある。
i.サブパスタイプ＝８のサブパスを含むプレイリストのプレイアイテムによって参照されねばならない。
【０４４８】
ii.サブパスタイプ＝８のサブパスにおけるサブプレイアイテムによって参照されねばならない。ここで、サブパスタイプ＝８とは、オンディスクタイプのOut-of-MUXディペンデントビュービデオストリーム再生パスをいう。
【０４４９】
立体視インターリーブドストリームファイルは、2つのクリップAVストリーム(BDAV MPEG2トランスポートストリーム)から構成される。エクステントスタートポイント情報のペアは、立体視インターリーブドストリームファイルを2つのAVストリームに分割する途を与える。エクステントスタートポイント情報は、以下のように供給される。
【０４５０】
(1)エクステントスタートポイント情報テーブルは、サブパスタイプ＝８のサブパスを含むプレイリストのプレイアイテムによって参照されるクリップ情報に格納されて再生装置に供給される
(2)別のエクステントスタートポイント情報テーブルは、サブパスタイプ＝８のサブパスを含むプレイリストのサブプレイアイテムによって参照されるクリップ情報に格納されて再生装置に供給される。
【０４５１】
もしプレイアイテムにおけるイズマルチアングルフラグが１に設定された場合、エクステントスタートポイント情報テーブルのペアは、それぞれアングルID値によって参照されるクリップ情報、及び、サブクリップエントリーID値によって参照されるクリップ情報に格納されて再生装置に供給される。
【０４５２】
図５１は、クリップベース情報、クリップディペンデント情報の内部構成を示す図である。本図（ａ）に示すようにクリップベース情報、クリップディペンデント情報は、対応するAVクリップがどのようなストリームの類型に属するかを示す『クリップストリームタイプ情報』と、対応するAVクリップによって構成されるアプリケーションが、ムービーアプリケーション、タイムベーススライドショーアプリケーション、ブラウザブルスライドショーアプリケーション等、どのような類型に属するかを示す『アプリケーションタイプ』と、再生装置において、ソースパケットがソースパケットデパケッタイザを通過した後、AVクリップにおけるTSパケットがどれだけの転送レートで転送されるかを示す『TSレコーディングレート』と、対応するAVクリップを構成するソースパケット数を示す『ソースパケット数』と、前のAVクリップを構成するATCシーケンスとのATCの差分である『ATC差分値』とから構成される。
【０４５３】
同図（ｂ）は、エクステントスタートポイント情報テーブルの内部構成を示す。本図に示すようにエクステントスタートポイント情報テーブルは、number＿pf＿extent＿start＿pointsと、number＿pf＿extent＿start＿points個のSPN＿start＿pointから構成される。
【０４５４】
number＿pf＿extent＿start＿pointsは、関連するAVストリームファイルに帰属するエクステントの個数を示す。クリップベース情報におけるエクステントスタートポイント情報と、クリップディペンデント情報におけるエクステントスタートポイント情報とのペアは、number＿pf＿extent＿start＿pointsが同じ値になる。
【０４５５】
SPN＿extent＿start(SPN＿extent＿start[0]〜SPN＿extent＿start[number＿of＿extent＿start＿point])は、number＿of＿extent＿start＿point+1個のSPN＿extent＿startから構成される。SPN＿extent＿startは、エクステント識別子[extent＿id]によって指示され、AVストリームファイルにおけるextent＿id番目のエクステントが開始するソースパケットのソースパケット番号を示す32ビットの値である。
【０４５６】
次に、クリップ情報ファイルのエクステンションデータについて説明する。エクステンションデータには、拡張エントリーマップが存在する。拡張エントリーマップは、基本エントリーマップと同様、複数のエントリーポイントから構成されている。具体的にいうと、拡張エントリーマップを構成する個々のエントリーポイントは、ATCシーケンスにおける特徴点の所在を示すソースパケット番号が、STCシーケンスにおける特徴点の所在を示すPTSと対応付けられており、その特徴点へのアングル切り替えが可能であるか否かを示すフラグ(is＿angle＿changeフラグ)と、GOP先頭に存在するイントラピクチャのサイズを示す情報(I＿size)とを具備している。しかし拡張エントリーマップには、以下の制限が、拡張エントリーマップに加えられている点が異なる。
【０４５７】
拡張エントリーマップ内に、MPEG4-MVCビューコンポーネントのためのエントリーが存在する場合、拡張エントリーマップにおけるPTSと同じビューコンポーネントに対応するエントリーが拡張エントリーマップに存在せねばならない。
【０４５８】
アプリケーションタイプが１、８の2つのクリップ情報ファイルであって、立体視インターリーブドストリームファイルに対応するものが存在する場合、以下の条件が満たされねばならない。つまり、アプリケーションタイプ"=1"のクリップ情報(プライマリビデオストリームというアプリケーションタイプのクリップ情報である)のエクステントID値によって指示されるエクステントが、ベースビュービデオストリームのPTS＿EP＿Startによって参照されるソースパケットをもつ場合、アプリケーションタイプ＝８のクリップ情報の同じエクステントID値によって指示されるエクステントは、ディペンデントビューストリームの同じ値のPTS＿EP＿Startによって参照されるソースパケットを含んでいなければならない。
【０４５９】
図５２は、基本エントリーマップと、拡張エントリーマップとを示す図である。本図において、第５段目は、ディペンデントビューデータブロックと、ベースビューデータブロックとの複数の組みを示す。第４段目は、ディペンデントビューデータブロック及びベースビューデータブロックを構成するソースパケット列を示す。第１段目は、PTSにて特定されるビューコンポーネントを示す。そして第２段目は、基本エントリーマップを示し、第３段目は、拡張エントリーマップを示す。
【０４６０】
エクステントID=1のエクステントスタートポイントによって指示されるエクステント[1]が、ベースビュービデオストリームのPTS＿EP＿Start=t1のエントリーによって参照されるSPN=n1のソースパケット[n1]をもつ場合、アプリケーションタイプ＝８のクリップ情報の同じエクステントIDである、エクステントID=1のエクステントスタートポイントによって指示されるエクステント[1]は、ディペンデントビューストリームの同じ値のエントリーである、PTS＿EP＿Start=t1のエントリーによって参照されるSPN=n11のソースパケット[n11]を含む。
【０４６１】
以上のように、ベースビュービデオストリームのGOP(i)の先頭に位置するソースパケットと、ディペンデントビュービデオストリームのGOP(i)の先頭に位置するソースパケットとが、同一のインターリーブエクステントユニットに属する場合、ベースビュービデオストリームのGOP(i)先頭のソースパケット、及び、ディペンデントビュービデオストリームのGOP(i)の先頭ソースパケットをポインティングするエントリーが、基本エントリーマップ及び拡張エントリーマップの双方に追加される。よってこの場合、基本エントリーマップ及び拡張エントリーマップの双方を用いれば、ベースビュービデオストリームのGOP(i)、及び、ディペンデントビュービデオストリームのGOP(i)の連続読み出しを保障することができる。
【０４６２】
図５３は、拡張エントリーマップにおいて許容されないエントリーを示す。
ベースビュービデオストリームのPTS＿EP＿Start=xのエントリーによって参照されるSPN=xのソースパケット[x]が、エクステントID=xにて参照されるファイルベースエクステントの先頭に存在していて、PTS＿EP＿Start=xのエントリーによって参照されるSPN=yのソースパケット[y]が、エクステントID"＝j"にて参照されるファイルディペンデントエクステントの先頭に存在しており、iとjとが異なるものとする。
【０４６３】
エクステントID=iのクリップディペンデントのエクステントスタートポイントによって指示されるエクステント[i]は、ベースビュービデオストリームの同じ値のエントリーである、PTS＿EP＿Start=xのエントリーによって参照されるSPN=xのソースパケットを含んでいるとはいえないから、拡張エントリーマップにはPTS＿EP＿Start=xのエントリーを追加することはできない。
【０４６４】
ベースビュービデオストリームのGOP(i)の先頭に位置するソースパケットと、ディペンデントビュービデオストリームのGOP(i)の先頭に位置するソースパケットとが、別々のインターリーブエクステントユニットに属する場合、GOP(i)先頭のソースパケットをポインティングするエントリーを、基本エントリーマップ及び拡張エントリーマップの何れにも追加しない。この場合、ランダムアクセスのアクセス先から、ベースビュービデオストリームのGOP(i)、及び、ディペンデントビュービデオストリームのGOP(i)が除外されるので、アクセス性能の低下を防止することができる。
【０４６５】
図５４は、プレイアイテムの再生手順を示す。
ステップＳ２０１は、カレント出力モードが3D出力モードであるか否かの判定であり、カレント出力モードが2D出力モードであれば、ステップＳ２０３〜ステップＳ２０６を実行する。
【０４６６】
ステップＳ２０３において、カレントプレイアイテムのClip＿Information＿file＿nameに記述されている「XXXXX」と、拡張子「m2ts」とで指定されているストリームファイルをオープンし、ステップＳ２０４において、ビデオストリームのパケットIDに対応するエントリーポイントを用いて、カレントPlayItem.In＿Time及びカレントPlayItem.Out＿TimeをStart＿SPN[i]及びEnd＿SPN[i]に変換する。
【０４６７】
ステップＳ２０５では、パケットID[i]のTSパケット[i]をStart＿SPN[i]からEnd＿SPN[i]まで読み出すための読出範囲[i]に属するエクステントを特定し、ステップＳ２０６において、読出範囲[i]に属するエクステントを連続的に読み出すよう、記録媒体のドライブに指示する。
【０４６８】
カレント出力モードが立体視出力モードであれば、ステップＳ３００〜ステップＳ６０のループに移行する。
ステップＳ３００において、カレントプレイアイテムのClip＿Information＿file＿nameに記述されている「XXXXX」と、拡張子「ssif」とで指定されているストリームファイルをオープンし、ステップＳ３０１において、カレントプレイアイテム情報のベースビューインディケータに従い、ベースビュービデオストリームをレフトビュービデオプレーン及びライトビュービデオプレーンのどちらか一方に割り当て、ディペンデントビュービデオストリームを、レフトビュービデオプレーン及びライトビュービデオプレーンの他方に割り当てる。
【０４６９】
ステップＳ３０２において、ベースビュービデオストリームに対応する基本エントリーマップを用いて、カレントPlayItem.In＿Time及びカレントPlayItem.Out＿TimeをStart＿SPN[i]及びEnd＿SPN[i]に変換する。
【０４７０】
ステップＳ３０３では、ディペンデントビュービデオストリームに対応する拡張エントリーマップを用いて、SubPlayItemIn＿Time、SubPlayItemOut＿TimeをStart＿SPN[j]、End＿SPN[j]に変換する(ステップＳ３０４)。
【０４７１】
ベースビュービデオストリームを構成するTSパケット[i]をStart＿SPN[i]からEnd＿SPN[i]まで読み出すための読出範囲[i]に属するエクステントを特定し(ステップＳ３０５)、パケットID[j]のTSパケット[j]をStart＿SPN[j]からEnd＿SPN[j]まで読み出すための読出範囲に属するエクステントを特定する(ステップＳ３０６)。そしてステップＳ３０７において読出範囲[i],[j]に属するエクステントをアドレスの昇順にソートして、ステップＳ３０８においてソートされたアドレスを用いて、読出範囲[i],[j]に属するエクステントを連続的に読み出すよう、ドライブに指示する。その後、ソースパケット列が読み出されれば、ステップＳ３０９においてベースビューのATCシーケンス、ディペンデントビューのATCシーケンスをそれぞれ復元して、ベースビュー用のPIDフィルタ、ディペンデントビュー用のPIDフィルタに送り込む。
【０４７２】
以上のように本実施形態によれば、上記記録媒体では、メインTSにおけるGOP及びサブTSにおけるGOPを記録媒体に記録するにあたって、拡張エントリーマップにおけるエントリーは、ディペンデントビューピクチャデータであって、同じ再生時刻で再生されるべきベースビューピクチャデータが、基本エントリーマップのエントリーによってポインティングされているもののみをポインティングするようにしている。
【０４７３】
基本エントリーマップのエントリーによってポインティングされているピクチャデータと、拡張エントリーマップのエントリーによってポインティングされているピクチャデータとが、同じエクステントのペアに存在するので、基本エントリーマップ、拡張エントリーマップを手掛かりにしてエクステントをアクセスすれば、ベースビューのGOP、ディペンデントビューのGOPをまとめて再生することができる。これにより、再生開始の遅延を解消することができる。
【０４７４】
尚、図８８の（ａ）に示すように、各エクステントに１つ以上のエントリポイントが存在すると規定してもよい。このように規定することによって、図８８の（ｂ）のようにエントリポイントから次のエントリポインとまでの間隔が長くなることを防ぎ、飛び込み再生などの処理が遅延する量を抑制できる。
【０４７５】
(第４実施形態)
本実施形態は、立体視インターリーブドストリームファイルを構成するデータブロックから、ATCシーケンスを復元するための改良に関する。図５５は、立体視インターリーブドストリームファイル構成するデータブロックからATCシーケンスがどのように復元されるかを示す。
【０４７６】
第４段目は、立体視インターリーブドストリームファイルを構成する複数のデータブロックを示し、第３段目は、メインTS、サブTSに多重化されるソースパケット列を示す。
第２段目は、ディペンデントビューを構成するSTCシーケンス２、エントリーマップ、ディペンデントビューを構成するATCシーケンス２の組みを示し、第１段目は、ベースビューを構成するSTCシーケンス１、エントリーマップ、ベースビューを構成するATCシーケンス１の組みを示す。第３段目から第２段目、第１段目への矢印は、立体視インターリーブドストリームファイルにインターリーブ化されている2つのTS(メインTS、サブTS)のデータブロックからATCシーケンス１、ATCシーケンス２が復元されることを模式的に示す。これらのATCシーケンスは、クリップ情報におけるエントリーマップによって、STCシーケンスとの対応がとられる。
【０４７７】
以上が本実施形態に係る記録媒体についての説明である。続いて、再生装置の詳細について説明する。
本実施形態における再生装置の読出部は、2つの記録媒体からのソースパケット入力を受け付ける構成になっており、2つの記録媒体のそれぞれをアクセスするための2つのドライブ、これら2つのドライブから入力されたソースパケットを一旦格納してデコーダに出力するための2つのリードバッファを含む。そして、2つのドライブと、2つのリードバッファとの間に、ATCシーケンス復元部が存在する。このATCシーケンス復元部は、1つの記録媒体から読み出されたインターリーブドストリームファイル内のソースパケットから、ベースビューを構成するATCシーケンスと、ディペンデントビューストリームを構成するATCシーケンスとを分離し、2つのリードバッファのそれぞれに書き込むものである。こうすることで再生装置は、ベースビュービデオストリームを構成するATCシーケンス、ディペンデントビューストリームを構成するATCシーケンスがそれぞれ別々の記録媒体から読み出されたかのように処理することができる。
【０４７８】
図５６は、ATCシーケンスの復元がどのように行われるかを示す図である。同図（ａ）は、ATCシーケンス復元部を具備した読出部の内部構成を示す。上述したように、2つのドライブと、2つのリードバッファとの間にATCシーケンス復元部が介在している。図中の矢印B0は、1つのドライブからのソースパケット入力を象徴的に示したものであり、矢印B1は、ベースビュービデオストリームを構成するATCシーケンス１の書き込み、矢印D1は、ディペンデントビューストリームを構成するATCシーケンス２の書き込みを模式的に示す。
【０４７９】
図５６（ｂ）は、ATCシーケンス復元部によって得られた2つのATCシーケンスが、どのように取り扱われるかを示す。図中の真ん中に多重分離部内に存在するPIDフィルタを示す。左側は、ATCシーケンス復元部によって得られた2つのATCシーケンスを示す。右側は、これらの2つのATCシーケンスを多重分離することで得られるベースビュービデオストリーム、ディペンデントビュービデオストリーム、左目PGストリーム、右目PGストリーム、ベースビューIGストリーム、ディペンデントビューIGストリームを示す。
【０４８０】
図５７は、ベースビュークリップ情報におけるエクステントスタートポイント情報の一例と、ディペンデントビュークリップ情報におけるエクステントスタートポイント情報の一例を示す。（ａ）は、ベースビュークリップ情報のエクステントスタートポイント情報と、ディペンデントビュークリップ情報のエクステントスタートポイント情報とを示す。          
【０４８１】
（ｂ)は、ATCシーケンス1を構成するベースビューデータブロックB[0],B[1],B[2]・・・・B[n]、ATCシーケンス2を構成するディペンデントビューデータブロックD[0],D[1],D[2]・・・・D[n]、を示す。（ｃ）は、ディペンデントビューデータブロックのソースパケット数、ベースビューデータブロックのソースパケット数を示す。
【０４８２】
（ｄ）は、立体視インターリーブドストリームファイルに包含される複数のデータブロックを示す。
同図（ｂ）に示すように、ATCシーケンス2が、ディペンデントビューデータブロックD[0],D[1],D[2]・・・・D[n]から構成されるとすると、ATCシーケンス２における、ディペンデントビューデータブロックD[0],D[1],D[2]・・・・D[n]の相対ソースパケット数である0,b1,b2,b3,b4・・・bnがファイルディペンデントのエクステントスタートポイント情報のSPN＿extent＿startに記載される。
【０４８３】
ATCシーケンス1が、ベースビューデータブロックB[0],B[1],B[2]・・・・B[n]によって構成されるとすると、ベースビューデータブロックの相対ソースパケット数である0,a1,a2,a3,a4・・・anが、ファイルベースのエクステントスタートポイント情報のSPN＿extent＿startに記載される。
【０４８４】
同図（ｃ）は、立体視インターリーブドストリームファイルにおける任意のディペンデントビューデータブロックD[x]、任意のベースビューデータブロックb[x]のソースパケット数である。ディペンデントビューデータブロックD[x]の先頭ソースパケット番号がbxであり、ディペンデントビューデータブロックD[x+1]の先頭ソースパケット番号がbx+1である場合、D[x]を構成するソースパケット数は、ｂx+1−ｂxになる。
【０４８５】
同じく、ベースビューデータブロックB[x]の先頭ソースパケット番号がａxであり、ベースビューデータブロックB[x+1]の先頭ソースパケット番号がａx+1である場合、B[n]を構成するソースパケット数は、ａx+1−ａxになる。
【０４８６】
立体視インターリーブドストリームファイルにおける最後のベースビューデータブロックB[n]の先頭ソースパケット番号がanであり、ATCシーケンス１におけるソースパケットの個数がnumber＿of＿source＿packet1である場合、B[n]を構成するソースパケット数は、number＿of＿source＿packet1-anになる。
【０４８７】
立体視インターリーブドストリームファイルにおける最後のベースビューデータブロックD[n]の先頭ソースパケット番号がbnであり、ATCシーケンス２におけるソースパケットの個数がnumber＿of＿source＿packet2である場合、D[n]を構成するソースパケット数は、number＿of＿source＿packet2-bnになる。
【０４８８】
そうすると、ディペンデントビューデータブロックの先頭ソースパケット番号、ベースビューデータブロックの先頭ソースパケット番号は、（ｄ）に示す通りになる。
立体視インターリーブドストリームファイルにおいて、D[0]の先頭SPNは"0"、B[0]の先頭SPNは"b1"になる。
【０４８９】
D[1]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1との和になるから"b1+a1"になる。
B[1]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1と、先行するD[1]のソースパケット数b2-b1との和になるから"b2+a1(=b1+a1+b2-b1)"になる。
【０４９０】
D[2]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1と、先行するD[1]のソースパケット数b2-b1と、B[1]のソースパケット数a2-a1との和になるから"b2+a2(=b1+a1+b2-b1+a2-a1)"になる。
【０４９１】
B[2]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1と、先行するD[1]のソースパケット数b2-b1と、B[1]のソースパケット数a2-a1と、D[2]のソースパケット数b3-b2との和になるから"b3+a2(=b1+a1+b2-b1+a2-a1+b3-b2)"になる。
【０４９２】
図５８は、ATCシーケンス１、２における任意のデータブロックのソースパケット番号を説明するための図である。
同図（ａ）のATCシーケンス２において、bxのソースパケット番号に存在するD[x]の立体視インターリーブドストリームファイルにおけるソースパケット番号を求める場合を考える。この場合、D[x]の先頭ソースパケット番号は、D[0],B[0],D[1],B[1],D[2],B[2]・・・・D[x-1],B[x-1]の相対ソースパケット数のソースパケット数の総和になるから、同図（ｂ）に示すように"bx+ax"になる。
【０４９３】
同図（ａ）のATCシーケンス１において、axのソースパケット番号に存在するB[x]の立体視インターリーブドストリームファイルにおけるソースパケット番号を求める場合を考える。この場合、同図（ｂ）に示すように、B[x]の先頭ソースパケット番号は、D[0],B[0],D[1],B[1],D[2],B[2]・・・・D[x-1],B[x-1],D[x]の相対ソースパケット数のソースパケット数の総和になるから、"ｂx+1＋ａx"になる。
【０４９４】
同図（ｃ）は、上記ベースビューデータブロックをエクステントとするファイルベースと、上記ディペンデントビューデータブロックをエクステントとするファイルディペンデントとを示す。
【０４９５】
B[x]にあたるファイルベースのエクステントであるEXT1[x]の先頭LBN及び連続長、及び、D[x]にあたるファイルディペンデントのエクステントであるEXT2[x]の先頭LBN及び連続長は以下のように求められる。
【０４９６】
D[x]の先頭ソースパケット番号からLBNを求めるには、（(ｂx+ａx)*192/2048)という計算でソースパケットをLBNに変換する。同じく、Ｂ[x]の先頭ソースパケット番号からLBNを求めるには、（(ｂx+1＋ａx)*192/2048)という計算でソースパケットをLBNに変換する。ここで"192"は、ソースパケットサイズをバイト数で表したものであり、"2048"は、セクタサイズ(論理ブロックサイズ)をバイト数で表したものである。これらのLBNに最も近い、立体視インターリーブドストリームファイルのエクステントのLBNは、上記変換によって得られたLBNを、関数SSIF＿LBN(file＿offset) の引数であるfile＿offsetに用いることで算出される。関数SSIF＿LBNは、file＿offsetから、SSIFのアロケーション既述子をたどって、file＿offsetに該当するLBNを返す関数である。
【０４９７】
こうすることで、EXT2[x]の先頭LBNは、SSIF＿LBN((ｂx＋ａx)*192/2048)になり、EXT1[x]の先頭LBNは、SSIF＿LBN((ｂx+1＋ａx)*192/2048)になる。
一方、EXT2[x]の連続長は、(SSIF＿LBN((ｂx+1＋ａx)*192/2048)−SSIF＿LBN((ｂx＋ａx)*192/2048))になる。EXT1[x]の連続長は、(SSIF＿LBN((ｂx+1＋ａx+1)*192/2048)−SSIF＿LBN((ｂx+1＋ａx)*192/2048))になる。これらの先頭LBN及び連続長を示すファイルエントリーをメモリ上で生成すれば、ファイルベース、ファイルディペンデントを仮想的に得ることができる。
【０４９８】
これらの2つのPIDフィルタによる多重分離は、第１実施形態に示した基本ストリーム選択テーブル、拡張ストリーム選択テーブルによる。このATCシーケンス復元部は、図５９の処理をハードウェア資源に実行させるプログラムを作成することで実現される。図５９は、ATCシーケンス復元手順を示す。
【０４９９】
ステップＳ９１は、ベースビュー用のATCシーケンスをATCシーケンス１とし、ディペンデントビュー用のATCシーケンスをATCシーケンス２とする。ステップＳ９２では、変数xを1に初期化する。この変数xは、ディペンデントビューデータブロック、ベースビューデータブロックを指示する。以降、ステップＳ９４〜ステップＳ９６のループを繰り返す。
【０５００】
変数xによって指示されるソースパケット番号bxが、ベースビューデータブロックの最後の数値nによって指示されるソースパケット番号bnであるか否かを判定し(ステップＳ９３)、もしそうでなければ、ソースパケット番号ｂx＋ａxによって指示されるソースパケット(ｂx＋ａx)から、ｂx+1＋ａxによって指示されるソースパケット(ｂx+1＋ａx)の直前のパケットまでをATCシーケンス２に追加し(ステップＳ９４)、ソースパケット(ｂx+1＋ａx)からソースパケット(ｂx+1＋ａx+1)の直前のパケットまでをATCシーケンス１に追加して(ステップＳ９５)、変数xをインクリメントする(ステップＳ９６)という処理を、ステップＳ９３がYesと判定されるまで繰り返す。
【０５０１】
ステップＳ９３がYesと判定されれば、ソースパケット番号ｂnから(number＿of＿source＿packet2-ｂn)個のソースパケットをATCシーケンス２に追加し(ステップＳ９７)、ソースパケット番号ａnから(number＿of＿source＿packet1-ａn)個のソースパケットをATCシーケンス１に追加する(ステップＳ９８)。
【０５０２】
以上のように、ATCシーケンス１、２が復元されれば、ベースビューデータブロックの先頭LBN及び連続長をセクタ数で示すファイルエントリーをメモリ上で生成して、ファイルベースを仮想的にオープンする(ステップＳ９９)。同様に、ディペンデントビューデータブロックの先頭LBN及び連続長をセクタ数で示すファイルエントリーをメモリ上で生成して、ファイルディペンデントを仮想的にオープンする(ステップＳ１００)。
【０５０３】
＜ファイルベースをオープンすることの技術的意義＞
ここで任意の時点からのランダムアクセスを行う際、ストリームファイル内のセクタサーチを行う必要がある。セクタサーチとは、任意の時点からのランダムアクセスを行う際、その時点に対応するソースパケットのソースパケット番号を特定して、そのソースパケット番号のソースパケットを含むセクタから、ファイルリードを行うという処理である。
【０５０４】
立体視インターリーブドストリームファイルは、一個のエクステントが大きいため、セクタサーチの探索範囲が広く、任意の時点からのランダムアクセスが命じられた際、読み出し先となるセクタの特定に、かなりの処理時間を要することがある。
【０５０５】
これは、インターリーブストリームファイルは、ベースビュービデオストリームを構成するデータブロック、ディペンデントビューストリームを構成するデータブロックがインターリーブ配置されて一本の長いエクステントを構成しており、インターリーブストリームファイルのファイルエントリーのアロケーション記述子は、その長いエクステントの先頭アドレスを示しているに過ぎないとの理由による。
【０５０６】
これに対してファイルベースは、長さが短い複数のエクステントから構成されており、個々のエクステントの先頭アドレスがアロケーション記述子に示されているため、セクタサーチにあたっての探索範囲が狭く、任意の時点からのランダムアクセスが命じられた際、読み出し先となるセクタの特定が、短時間で完了する。
【０５０７】
つまり、ベースビュービデオストリームを構成するデータブロックが、ファイルベースのエクステントとして管理されており、データブロックの先頭アドレスが、ファイルベースに対応するファイルエントリーにおけるアロケーション記述子に明記されているので、ランダムアクセス位置を包含しているエクステントの先頭アドレスから、セクタサーチを開始すれば、早期にランダムアクセス位置となるソースパケットを含むセクタにまで到達することができる。
【０５０８】
このようにベースビュービデオストリームを構成するデータブロックを、ファイルベースのエクステントとして管理し、各エクステントの先頭アドレス及び連続長を、ファイルベースについてのファイルエントリーのアロケーション記述子に示しておくことにより、ベースビュービデオストリームにおける任意の時点からのランダムアクセスが高速になる。
【０５０９】
具体的なセクタサーチの手順は以下のものになる。ベースビュービデオストリームに対応するエントリーマップを用いることにより、任意の時点に対応するランダムアクセス位置であるソースパケット番号を導き出す。
【０５１０】
次に、ベースビュービデオストリームに対応するクリップ情報内のエクステントスタートポインティング情報を用いることにより、ランダムアクセス位置となるソースパケット番号を包含しているエクステントがどれであるかを特定する。
【０５１１】
更に、ファイルベースに対応するファイルエントリーのアロケーション記述子を参照すれば、ランダムアクセス位置となるソースパケット番号を包含しているエクステントの先頭セクタアドレスを特定することができる。その先頭セクタアドレスにファイルポインタを設定して、ファイルリードを行い、読み出されたソースパケットに対するパケット解析を実行することで、ランダムアクセス位置となるソースパケット番号のソースパケットを特定する。そして特定されたソースパケット番号のソースパケットを読み出す。これにより、メインTSに対するランダムアクセスが効率的に実行されることになる。サブTSも同様である。
【０５１２】
以上のように本実施形態によれば、エクステントスタートポイント情報に基づき、インターリーブドストリームファイルにおけるベースビュービデオストリームのエクステント、ディペンデントビュービデオストリームのエクステントをエクステントスタートポイント情報に基づき整列した上で多重分離部、デコーダに供するので、デコーダやプログラムは、ベースビュービデオストリームを格納したファイルベースディペンデントビュービデオストリームを格納したファイルディペンデントという2つのファイルが記録媒体に仮想的に存在するものとして扱うことができる。
【０５１３】
立体視のためのベースビュービデオストリーム、ディペンデントビュービデオストリームをインターリーブストリームファイルとして記録媒体しつつも、ベースビュービデオストリーム及びディペンデントビュービデオストリームの単体アクセスを可能にせしめるので、再生装置の処理の効率性を向上させることができる。
【０５１４】
（第５実施形態)
本実施の形態では、ＢＤ−ＲＯＭに格納された３Ｄコンテンツを再生する上でのＨＤＩＭ出力の課題、超解像度方法、高フレームレート化方法について説明する。
【０５１５】
（ＨＤＭＩ出力）まず、3D表示/眼鏡方式識別に関して図６０を使って説明する。3D表示可能なプレーヤに複数のTVが接続されている場合には個々のTVが3D視聴のためには眼鏡が必要なのか、また必要な場合にはどの方式の眼鏡が必要となるのかをHDMIのようなI/Fを経由してプレーヤへ通知することが望ましい。例えば、BDプレーヤでは、接続先のTVが3D視聴にはアクティブシャッター付き眼鏡が必要であると知ることができれば、3D再生開始前にアクティブシャッター付き眼鏡が必要であるメッセージを視聴者に通知するようプログラミングすることも可能となる。そのため、HDMIのようなI/FはTVが3Dで表示する際に眼鏡が必要か否か、また必要な場合にはどの方式の眼鏡が必要なのか（アナグリフなのか、円偏向なのか、アクティブシャッターなのかなど）を識別するための情報をプレーヤに通知できるよう、E-EDIDやInfoFrameなどにて接続している機器間で共有できることが望ましい。尚、TVと眼鏡間の通信機能があれば、眼鏡の位置情報（具体的には、TV画面中央から延びる垂直線と眼鏡の水平/垂直角度と距離）をプレーヤに返すことで3D映像を各ユーザーごとに適切に変更させることも可能である。尚、TV-1が2D専用TVで、TV-2が3D対応TVである場合には、TV-1向けの出力としては、TV-2へ出力する右目映像もしくは左目映像だけを抜き出して出力するか、「TV-2にて3D再生中」や、「TV-1では3D視聴できません」などといった3D視聴がTV-1ではできないというメッセージを表示することが望ましい。尚、図６１に示すように、3D映像を再生中に2D映像に切り替える場合に、３Ｄ映像のフレームレートのまま、片方の映像を二重に出力することが好ましい。フレームレートの変更が起こるとＨＤＭＩの認証が必要になるなどの遅延が発生するからである。しかし、３Ｄ映像を表示する場合、メガネによってユーザの視界が暗くなることを考慮して、テレビは輝度を上げた映像になっており、２Ｄ映像を表示するのに適切な処理がされていない可能性がある。そこで、図６１の２Ｄダビング再生と記した区間のように、片方の映像を２重に出力する場合には、ＨＤＭＩ上に映像を出力するときに、同時にその映像が２Ｄ映像の再生を意図していることを意味するフラグをテレビに転送する。これにより、テレビ側では転送されてくる映像が２Ｄ映像であることを判断することができるため、２Ｄ映像再生に適した画像処理などの制御を行うことが可能である。次に、BDなどで用いられる字幕・メニュー用ストリームの相関を図６２を使って説明する。プレーヤが同時に2D出力と3D出力をする必要がある場合、BD-ROMにて使用されるPresentation Graphics(PGと略し字幕用のストリーム)、Interactive Graphics stream(IGと略しメニュー用のストリーム)は、2D映像用、3D映像用でことなる図柄となるため個別のPIDを与えられ、別個にデコードする必要がある。しかしながら、視聴者が2D表示のTVを見ながら操作するか、3D表示のTVを見ながら操作するかにおいて差がでないようにするために、2D向けのストリーム(C)と3D向けの左目/右目用のストリーム(L,R)との全てが表示される図柄とその図柄の表示位置を除き全ての情報が一致していることが望ましい。例えば、PGであれば、C,L,R間で同じ表示時間に同じ字幕（C,L,R間で字幕の図柄と表示位置だけが異なる）が表示されるようにストリームが記録されていることが望ましい。また、IGに関しては、対応するC,L,Rのストリーム間で同じメニュー操作が実現できるように、メニューのページ構成、ボタン間の遷移、実行時のボタンコマンドなどが同じメニュー（C,L,R間でボタンの図柄と表示位置だけが異なる）であるようにストリームが記録されていることが望ましい。これはTV-1での2D視聴者およびTV-2での3D視聴者が同じ字幕・メニューを見ることができ、かつ、どちらのTVからでもメニューを制御できるようにするために必要である。プレーヤは2D/3Dの同時出力の際には、図６２のようにL、R、Cを別々に合成し、2D向け映像出力と、3D向け映像出力を生成しても良い。尚、図ではIGデコーダしか記載していないが、PGデコーダについても同様である。また、2D映像出力には3DでのL映像を用いたが、R映像を用いても良い。
【０５１６】
（超解像度）次に、より滑らかな2D/3D映像表示を実現するための処理について図６３を使って説明する。L1,R1,L2,R2,…と続く左目(Ln)、右目(Rn)映像が連続する入力を基に2D表示するTVにおいては、L1,L2,L3,…と左目用映像だけ、もしくはR1,R2,R3,…と右目用映像だけ、とどちらか片方だけを表示する。したがってこれまでは、右目・左目映像を同時に撮影している場合、L2の映像は従来であれば、その時間的に前の映像（L1）と時間的に後の映像（L3）を用いて高画質化されるだけであった。しかし、L2の映像はL1,L3などよりも逆側の目の映像R1,R2,R3の方がより関連性が高い映像を含む場合があると考えられる。したがって、2D表示する場合においても表示しない側の映像を参照することで、より良く高画質化することが可能になる。高画質化の手法についてはここでは問わないが、2D表示をしながらも高画質化処理においては表示しない側の片目映像（結局は両眼映像）を利用していることが精度の高い高画質化のために極めて重要である。この場合、視聴者には2D表示であるが、プレーヤとTVの間は3Dとして接続される必要がある。HDMIのようなI/Fでも3Dとして接続認証し、L/Rの両眼映像をプレーヤが出力するよう切替制御させることが必要である。尚、L1,R1,L2,R2,…と続く左目(Ln)、右目(Rn)映像が連続する入力を基に3D表示するTVにおいても、各々の映像を高画質化する際に、両眼映像を利用することが効果的であると思われる。尚、L/Rのカメラの光学パラメータ（カメラ間の角度、焦点距離など）をストリームに記録しておくことで高画質化処理を行うフレームを精度高く予測することも可能である。
【０５１７】
（高フレームレート化）次に、より滑らかな2D/3D映像表示を実現するための処理について同じく図６３を使って説明する。特に3D表示においては時分割表示方式で右目・左目の映像が交互に表示されることも多く、表示のフレームレートが低いことによる眼精疲労を引き起こすことが多い。さらに昨今のTV大画面化により映像素材自体のフレーム間での映像変化量が大きい場合には、低フレームレートによる疲労を生みやすい。そのため3Dで再生する場合には一般に、映像素材の2倍、3倍といったフレームレートにて表示を行うことが一般である。しかしながら表示を倍速、3倍速駆動としても表示されている映像自体が同じであるため依然として大画面視聴時にはフレーム間の映像変化量による問題が残る。例えば、倍速表示を行う場合、L1,R1,L1,R1,L2,R2,L2,R2,…と2回ずつ表示を行うが、2回目のL1,R1の表示では、高画質化回路を通すことで時間分解能を上げた映像（L1,L2の中間映像と、R1,R2の中間映像）を表示することで上記疲労を軽減することが可能となる。言い換えれば、素材映像のサンプリング周波数（フレームレート）よりも高いサンプリング周波数にて中間映像を生成し、3D表示することで大画面での3D視聴においても眼精疲労を軽減して視聴させることが可能となる。
【０５１８】
尚、右目・左目の両眼視差を表示することで立体表示を行う視聴者に眼鏡を必要とするTVの場合、右目・左目の視差映像が視聴者の両眼間隔よりも大きくなると立体として結像しなくなるため視聴者の眼精疲労や3D酔いを引き起こす課題がある。そのため、使用されている眼鏡の中で一番小さい眼鏡、つまり視聴者の中で一番小さい両眼間隔以上に、右目・左目の視差映像がずれないよう右目・左目の全体映像を左右にシフトして表示することがTVの表示処理として望ましい。BDのインタラクティブメニュー画面にて、視聴者の年齢や立体強度などを視聴者に入力もしくは選択させることで、適切な両眼視差を表示できるようプレーヤ側が映像出力時に右目・左目の全体映像を左右にシフトして出力処理しても良い。
【０５１９】
(第６実施形態)
本実施形態では、これまでの実施形態に示した記録媒体の作り方、つまり、記録方法の形態について説明する。
【０５２０】
本実施形態に係る記録方法は、ストリームファイルであるAVファイル、ストリームファイル以外のファイルである非AVファイルをリアルタイムに作成して、記録媒体におけるAVデータ記録領域、非AVデータ記録領域にダイレクトに書き込むというリアルタイムレコーディングとして実現することができる。それだけではなく、ボリューム領域に記録すべきビットストリームの全体像を事前に作成して、このビットストリームを元に原盤ディスクを作成し、この原盤ディスクをプレスすることで、光ディスクを量産するというプレフォーマットレコーディングも含む。本実施形態に係る記録媒体は、リアルタイムレコーディングによる記録方法、及び、プレフォーマットレコーディングによる記録方法によっても特定されるものでもある。
【０５２１】
リアルタイムレコーディング技術により記録方法を実現する場合、当該記録方法を実行する記録装置は、リアルタイムにAVクリップを作成して、BD-RE又はBD-R、ハードディスク、半導体メモリカードに記録する。
【０５２２】
この場合AVクリップは、アナログ入力信号を記録装置がリアルタイムエンコードすることにより得られたTSであってもよいし、記録装置がデジタル入力したTSをパーシャル化することで得られるTSであってもよい。リアルタイムレコーディングを実行する記録装置は、ビデオ信号をエンコードしてビデオストリームを得るビデオエンコーダと、オーディオ信号をエンコードしてオーディオストリームを得るオーディオエンコーダと、ビデオストリーム、オーディオストリーム等を多重化して、MPEG2-TSを得るマルチプレクサと、MPEG2-TS形式のデジタルストリームを構成するTSパケットをソースパケットに変換するソースパケッタイザとを備え、ソースパケット形式に変換されたMPEG2デジタルストリームをAVクリップファイルに格納してBD-RE,BD-R等に書き込む。デジタルストリームの書き込むと共に、記録装置の制御部は、メモリ上でクリップ情報やプレイリスト情報を生成する処理を行う。具体的には、ユーザによって録画処理が要求された際、制御部は、AVクリップのストリームファイル及びクリップ情報ファイルをBD-RE,BD-R上にクリエイトする。
【０５２３】
そして、装置外部から入力されるTSからビデオストリームにおけるGOPの先頭位置が検出されるか、エンコーダによってビデオストリームのGOPが生成されれば、記録装置の制御部は、このGOPにおいて、先頭に位置するイントラピクチャのPTSと、このGOPの先頭部分を格納したソースパケットのパケット番号とを取得して、このPTS及びパケット番号の組みを、EP＿PTSエントリー及びEP＿SPNエントリーの組みとして、クリップ情報ファイルのエントリーマップに追記する。以降、GOPが生成される度に、EP＿PTSエントリー及びEP＿SPNエントリーの組みを、クリップ情報ファイルのエントリーマップに追記してゆく。この際、GOPの先頭がIDRピクチャである場合は、"オン"に設定されたis＿angle＿changeフラグをEP＿PTSエントリー及びEP＿SPNエントリーの組みに追加する。GOPの先頭がIDRピクチャでなければ場合は、"オフ"に設定されたis＿angle＿changeフラグをEP＿PTSエントリー及びEP＿SPNエントリーの組みに追加する。
【０５２４】
また、クリップ情報ファイルにおけるストリームの属性情報については、記録されるべきストリームの属性に従い設定する。以上のようにしてAVクリップ、クリップ情報が生成されてBD-RE,BD-Rに書き込まれれば、このクリップ情報内の基本エントリーマップを介して、再生経路を定義するプレイリスト情報を生成し、BD-RE,BD-Rに書き込む。このような処理を、リアルタイムレコーディング技術において実行することで、AVクリップ−クリップ情報−プレイリスト情報という階層構造をBD-RE,BD-R上に得ることができる。
【０５２５】
以上がリアルタイムレコーディングによる記録方法を実行する記録装置である。続いて、プレフォーマットレコーディングによる記録方法について説明する。
プレフォーマットレコーディングによる記録方法は、オーサリング行程を含むような光ディスクの製造方法となる。
【０５２６】
図６４は、光ディスクの記録方法を示す。同図（ａ）は、プレフォーマットレコーディングによる記録方法を示すフローチャートであり光ディスクの製造方法の処理手順を示す。光ディスクの製造方法は、オーサリングステップ、署名ステップ、メディア鍵取得ステップ、メディア鍵暗号ステップ、物理フォーマットステップ、識別子埋め込みステップ、マスタリングステップ、レプリケーションステップを含む。
【０５２７】
オーサリングステップS２０１は、光ディスクのボリューム領域の全体像を表すビットストリームを作成する。
署名ステップS２０２は、光ディスクの製造にあたってAACS LAに対して署名要求を行う。具体的には、ビットストリームの一ステップを抜き出し、AACS LAに送付する。ここでAACS LAは、次世代のデジタル家電機器における著作物保護技術に関するライセンスを管理する団体である。オーサリング装置を用いて光ディスクのオーサリングを行うオーサリングサイト、及び、マスタリング装置を用いてマスタリングを実行するマスタリングサイトは、AACS LAよりライセンスの提供を受ける。また、メディア鍵、無効化情報を管理する。そして、AACS LAより署名されたビットストリームの一部分を取得する。
【０５２８】
メディア鍵取得ステップS２０３は、AACS LAからメディア鍵を取得する。メディア鍵は、常に固有のものが使用されるわけではなく、これまで製造された光ディスクの枚数が一定枚数まで達すると新しいものに更新される。メディア鍵を更新することにより、特定のメーカーや機器を排除することができ、万が一暗号鍵が破られたとしても、無効化情報を用いることでそれ自体を無効化することができる。
【０５２９】
メディア鍵暗号化ステップS２０４は、メディア鍵取得ステップにより取得したメディア鍵を用いて、ビットストリームの暗号化に用いた鍵を暗号化する。
物理フォーマットステップS２０５は、ビットストリームに対して物理フォーマットを実行する。
【０５３０】
識別子埋込みステップS２０６は、光ディスクに収録されるビットストリームに、一般の機器では検出することができない一意の識別子を電子透かしとして埋め込む。これにより、不正なマスタリングによる海賊版の量産を防ぐことができる。
【０５３１】
マスタリングステップS２０７は、光ディスクの原盤を作製する。まず、ガラス基板上にフォトレジスト層を形成し、当該フォトレジスト層に対して、所望するグルーブやピットに対応するようにレーザ光を照射して露光し、現像処理を施す。このグルーブやピットは、8ー16変調されたビットストリームの各ビット値を表すものである。その後、このようなレーザカッティングによってグルーブやピットに対応した凹凸が形成されたフォトレジストを元にして、光ディスクの原盤を作製する。
【０５３２】
レプリケーションステップS２０８は、光ディスクの原盤を用いて、その複製である光ディスクを大量生産する。
同図（ｂ）は、光ディスクを大量生産するのではなく、一般ユーザがPCを使って、BD-R,BD-RE等に、これまでの実施形態で述べた各種ファイルを記録する場合のプリフォーマットレコーディングによる記録方法の処理手順を示す。同図（ａ）と比較すると、同図（ｂ）による記録方法では、物理フォーマット(ステッステップＳ２０５)、マスタリング(ステップS２０７)、レプリケーション(ステップS２０８)が存在せず、代わりに、各ファイルの書き込み行程(ステップS２０９)が存在する。
【０５３３】
次にオーサリング行程について説明する。
図６５は、オーサリング行程の処理手順を示すフローチャートである。
ステップS１０１において、メインTS及びサブTSについてのリールセットを定義する。"リール"とは、エレメンタリストリームの素材となるデータを格納したファイルであり、オーサリングシステムでは、ローカルネットワーク上のドライブ上に存在する。3Dカメラによって撮影されたL画像やR画像、撮影時に録音された音声や、その後のアフレコで収録された音声、言語毎の字幕、メニューをデータ化したものが、これらリールに該当する。"リールセット"とは、1つのTSに多重化されるべきエレメンタリストリームの集合を表した、素材ファイルへのリンク群である。ここでは、メインTS、サブTSのそれぞれについてリールセットが定義される。
【０５３４】
ステップS１０２において、プレイアイテム、サブプレイアイテムの原型を定義し、プレイアイテム、サブプレイアイテムの再生順序を定義することでメインパス、サブパスの原型を定義する。プレイアイテムの原型の定義は、平面視出力モードにおいて、そのプレイアイテムで再生を許可すべきリールの指定と、In＿Time／Out＿Timeとの指定を、GUIを通じて受け付けることでなされる。サブプレイアイテムの原型の定義は、立体視出力モードにおいて、そのサブプレイアイテムに対応するプレイアイテムで再生を許可すべきリールの指定と、In＿Time／Out＿Timeとの指定を、GUIを通じて受け付けることでなされる。
【０５３５】
再生を許可すべきリールの指定は、リールセットにおける素材ファイルのリンクのうち、再生を許可すべきものをチェックボックスでチェックするというGUIで構成される。この際、各リールに対応付けて数値入力欄を表示する。そして、この数値入力欄によって、各リールについての優先順位を受け付け、これをリールに対応する優先順位とする。以上の再生を許可すべきリールの設定と、優先順位の設定とからストリーム選択テーブル、拡張ストリーム選択テーブルが生成されることになる。
【０５３６】
In＿Time及びOut＿Timeの指定は、GUI上で、ベースビュービデオストリーム又はディペンデントビュービデオストリームの時間軸を図形化して表示し、図形化された時間軸において、スライドバーを移動させて、そのスライドバーの位置設定をユーザから受け付けるという処理を記録装置が実行することでなされる。
【０５３７】
プレイアイテム、サブプレイアイテムの再生順序の定義は、GUI上でプレイアイテムのIn＿Timeにおけるピクチャをサムネール化して表示し、このサムネールに対して、再生順序を設定するという操作を記録装置がユーザから受け付けることでなされる。
【０５３８】
ステップS１０３では、リールセットにて指定された素材ファイルをエンコードすることにより、複数のエレメンタリストリームを得る。これらの複数のエレメンタリストリームは、ベースビュービデオストリーム、ディペンデントビュービデオストリームと、これらベースビュービデオストリーム、ディペンデントビュービデオストリームと多重化されるべきオーディオストリーム、PGストリーム、IGストリームがある。
【０５３９】
ステップS１０４では、エンコードで得られたエレメンタリストリームのうち、ベースビュービデオストリームと同じリールセットに属する同じするものを、当該ベースビュービデオストリームと多重化することで、1つのメインTSを得る。
【０５４０】
ステップS１０５では、エンコードで得られたエレメンタリストリームのうち、ディペンデントビュービデオストリームと同じリールセットに属するものを、当該ディペンデントビュービデオストリームと多重化することで、1つのサブTSを得る。
【０５４１】
ステップS１０６では、エンコード及び多重化時に設定されたパラメータを元に、クリップ情報ファイルの原型を生成する。
ステップS１０７では、プレイアイテムの原型を元にプレイアイテム情報、サブプレイアイテム情報を生成し、これらのプレイアイテム情報、サブプレイアイテム情報に再生順序を定義することで、メインパス情報、サブパス情報を生成して、プレイリスト情報を定義する。
【０５４２】
プレイアイテム情報の作成においては、メインTSに多重化されたエレメンタリストリームのうち、プレイアイテムの基本構造において平面視出力モードで再生すべきと規定されたものを再生可能に設定すべく、プレイアイテム情報内にストリーム選択テーブルを生成する。また、ベースビュービデオストリームにおける再生区間を規定するため、上述の編集作業で規定されたIn＿Time、Out＿Timeをプレイアイテム情報に記載する。
【０５４３】
サブプレイアイテム情報の作成においては、サブTSに多重化されたエレメンタリストリームのうち、プレイアイテムの基本構造において立体視出力モードで再生すべきと規定されたものを再生可能に設定すべく、プレイリスト情報のエクステンションデータ内に拡張ストリーム選択テーブルを生成する。プレイアイテム情報、サブプレイアイテム情報は、クリップ情報ファイル内の情報を元に定義されるからクリップ情報ファイルの原型を元にして設定される。
【０５４４】
ステップS１０８では、メインTS、サブTS、クリップ情報ファイルの原型、プレイリスト情報の原型を、所定のアプリケーションフォーマットに従ったディレクトリーファイル群に変換する。
【０５４５】
以上の過程を得て、メインTS、サブTS、クリップ情報、プレイアイテム情報、サブプレイアイテム情報が生成されれば、メインTS、サブTSをそれぞれ独立したストリームファイルに変換し、クリップ情報をクリップ情報ファイルに変換し、プレイアイテム情報及びサブプレイアイテム情報をプレイリスト情報ファイルに変換することで、記録媒体に記録されるべき一連のファイルセットを得る。
【０５４６】
その後、ビデオストリームのエンコード行程の実行にあたって、上記変換で得たプレーンオフセット値、オフセット方向情報を、各GOPのメタデータに記載すれば、オフセットシーケンスは、エンコードの過程で作成しておくことができる。
【０５４７】
図６６は、AVファイル書込工程の処理手順を示す。リアルタイムレコーディングによる記録方法や、マスタリング、レプリケーションを伴い記録方法の実施では、AVファイルの書き込みを、本図のフローチャートによって実現する。
【０５４８】
ステップＳ４０１において、xxxxx.ssifをクリエイトして、記録装置のメモリ上にファイルエントリーを作成する。ステップＳ４０２は、空きの連続セクタ領域を確保し得たかどうかの判定であり、確保し得たなら、ステップＳ４０３において、空きの連続セクタ領域にディペンデントビューデータブロックを構成するソースパケット列をEXT2[i]だけ書き込み、その後、ステップＳ４０４〜ステップＳ４０８を実行する。確保し得ない場合は、ステップＳ４０９で例外処理をした後、記録方法を終了する。
【０５４９】
ステップＳ４０４〜ステップＳ４０８は、ステップＳ４０７がNoと判定されるまで、ステップＳ４０４〜ステップＳ４０６、ステップＳ４０８の処理を繰り返すループを構成している。
【０５５０】
ステップＳ４０５は、空きの連続セクタ領域に、ベースビューデータブロックを構成するソースパケット列をEXT1[i]だけ書き込む。ステップＳ４０６は、ソースパケット列が書き込まれた先頭アドレス及び連続長を示すアロケーション識別子をファイルエントリーに追記して、エクステントとして登録する。これに伴い、書き込まれたソースパケット列の先頭ソースパケット番号を指し示すエクステントスタートポイント情報を、クリップベース情報、クリップディペンデント情報内のメタデータに追記する。
【０５５１】
ステップＳ４０７は、ループの終了条件を規定するものであり、ベースビューデータブロック、ディペンデントビューデータブロックに未書込のソースパケットが存在するかどうかの判定を行う。存在すれば、ステップＳ４０８に移行して、ループを継続する。存在しなければ、ステップＳ４１０に移行する。
【０５５２】
ステップＳ４０８は、連続セクタ領域が存在するかどうかの判定であり、存在すれば、ステップＳ４０３に移行し、存在しなければ、ステップＳ４０２まで戻る。
ステップＳ４１０では、xxxxx.ssifをクローズして、ファイルエントリーを記録媒体に書き込む。ステップＳ４１１では、xxxxx.m2tsをクリエイトして、メモリにxxxxx.m2tsのファイルエントリーを生成する。ステップＳ４１２では、ファイル2Dで固有となるベースビューデータブロックの先頭アドレス及び連続長を示すアロケーション記述子をxxxxx.m2tsのファイルエントリーに追記する。ステップＳ４１３では、xxxxx.m2tsをクローズして、ファイルエントリーを書き込む。
【０５５３】
ステップＳ４０４は、EXTSS＋EXT2Dの範囲内に、ロングジャンプの発生地点が存在するかどうかの判定である。ここでのロングジャンプの発生地点は、層境界であるものとする。EXTSS＋EXT2Dの範囲内に層境界が存在する場合、ステップＳ４２０において、ベースビューデータブロックを複製して、ベースビューデータブロックB[i]ssと、ベースビューデータブロックB[i]2Dとをロングジャンプ発生地点の直前までに書き込み、その後、ステップＳ４０６に移行する。これらが、ファイル2Dのエクステント、ファイルベースのエクステントになる。
【０５５４】
以下、EXT2D、EXT1[n]、EXT2[n]、EXTss[n]の具体的な値を説明する。
EXT2Dの下限値は、2D出力モードの再生時、各ベースビューデータブロックから次のベースビューデータブロックまでのジャンプ期間中において、再生装置におけるリードバッファのバッファアンダーフローを生じないように決定される。
【０５５５】
ｎ番目のベースビューデータブロックから(n+1)番目のベースビューデータブロックまでのジャンプが時間Tjump2D(n)を要し、各ベースビューデータブロックが,リードバッファに速度Rud2Dで読み出され、かつ、リードバッファからビデオデコーダへ前記ベースビューデータブロックが平均速度Rbext2Dで転送されるとき、EXT2Dの下限値は以下の条件１の式で表される。
【０５５６】
＜条件１＞
EXT2Dの下限値 ≧（Rud2D×Rbext2D）/(Rud2D−Rbext2D)×Tjump2D（n）
ベースビューデータブロックB[n]ssに対応するエクステントをEXT1[n]であるものとする。この場合、EXT1[n]の下限値は、B−Dプレゼンテーションモードの再生時、各ベースビューデータブロックから次のディペンデントビューデータブロックまでのジャンプ期間と、当該ディペンデントビューデータブロックから次のベースビューデータブロックまでのジャンプ期間とを通して、ダブルバッファのアンダーフローを生じさせないように決定される。
【０５５７】
ここでのダブルバッファは、リードバッファ１、リードバッファ２から構成されるものとする。リードバッファ１は、2D再生装置のリードバッファと同一物である。
B−Dプレゼンテーションモードの再生において、n番目のベースビューデータブロックからp番目のディペンデントビューデータブロックまでのジャンプが時間TFjump3D(n)を要し、ｐ番目のディペンデントビューデータブロックから（n+1）番目のベースビューデータブロックまでのジャンプが時間TBjump3D(n)を要するものとする。
【０５５８】
そして各ベースビューデータブロックがリードバッファ１へ速度Rud3Dで読み出され、各ディペンデントビューデータブロックがリードバッファ２へ速度Rud3Dで読み出され、かつ、リードバッファ１からビデオデコーダへ前記ベースビューデータブロックが平均速度Rbext3Dで転送されるとき、EXT1[n]の下限値は、以下の条件２の式で表される。ビックエクステントの連続長は、この下限値、又は、この下限値を上回る値に設定される。
【０５５９】
＜条件２＞
EXT1[n]の下限値 ≧（Rud3D×Rbext3D）/(Rud3D−Rbext3D)
×(TFjump3D（n）＋EXT2[n]/(Rud3D＋TBjump3D(n)))
EXT2の下限値は、B−Dプレゼンテーションモードの再生時、各ディペンデントビューエクステントから次のベースビューエクステントまでのジャンプ期間と、当該ベースビューエクステントから次のディペンデントビューエクステントまでのジャンプ期間とを通して再生装置におけるダブルバッファにアンダーフローを生じさせないように決定されている。
【０５６０】
（n+1）番目のベースビューデータブロックから（p+1）番目のディペンデントビューデータブロックまでのジャンプが時間TFjump3D(n+1)を要し、かつ、リードバッファ２からデコーダへ前記ディペンデントビューストリームファイルが平均速度Rdext3Dで転送されるとき、EXT2[n]の下限値は以下の条件３の式で表される。
【０５６１】
＜条件３＞
EXT2[n]の下限値  ≧（Rud3D×Rbext3D）/(Rud3D−Rdext3D)
×(TBjump3D（n）＋EXT1[n+1]/(Rud3D＋TFjump3D(n+1)))
＜EXTSSの具体的な値＞
あるエクステントの読み出しから、次のエクステントへのジャンプにあたって、そのジャンプの直前のバッファ占有量は、充分なものでなければならない。そうすると、立体視インターリーブドストリームファイルの読み出し時にあたってリードバッファは、1つのエクステントによって充填される必要があり、バッファアンダーフローの発生を避けねばならない。
【０５６２】
しかしEXTSSは、エクステントからエクステントへのジャンプ期間Tjumpだけではなく、Ｔdiffに基づき定める必要がある。ここでTdiffは、EXTssにおけるディペンデントビューデータブロックのプリロードと、EXTssnextにおけるディペンデントビューデータブロックのプリロードとに伴う遅延時間を意味する。以下にTdiffの意味合いについて解説すると、立体視インターリーブドストリームファイルの読み出しにあたって、先頭のディペンデントビューデータブロックをプリロードしている間は再生を開始することはできない。
【０５６３】
EXTssでは、このディペンデントビューデータブロックのプリロードに要する期間だけ再生が遅れるから、EXTssにおいて先頭のディペンデントビューのデータブロックのプリロードに要する時間は、再生がその分遅れてしまうという"遅延期間"となる。
【０５６４】
逆にEXTssnextにおいては、EXTssからEXTssnextへのジャンプの直後に、先頭のディペンデントビューデータブロックのプリロードが行われるから、その間だけビデオデコーダの再生開始が遅れてもよいことになる。つまりEXTssnextの再生にあたって、先頭のディペンデントビューデータブロックのプリロードが行われる期間は、ビデオデコーダ再生開始が猶予される"猶予期間"となる。
【０５６５】
以上を踏まえるとTdiffは、ディペンデントビューデータブロックの猶予期間から遅延期間を引いた値として導かれることになる。具体的には、以下の式を満たすように算出される。
【０５６６】
Tdiff=ceil[((Ｓ1stEXT1[i]EXTSSnext]−Ｓ1stEXT1[i]EXTSS)x1000x8)/Rud72]
ここでＴdiffは、Ｓ1stEXT2[i]EXTssの読出期間と、Ｓ1stEXT2[i]EXTssnextの読出期間との差分を意味し、Ｓ1stEXT2[i]EXTssは、EXTssの最初に位置するEXT2[i]のサイズであり、Ｓ1stEXT2[i]EXTssNEXTは、EXTssNEXTの最初に位置するEXT2[i]のサイズである。EXTssnextは、立体視インターリーブドストリームファイルにおけるエクステントであって、EXTssの直後に位置し、EXTssとシームレスに再生されるものである。
【０５６７】
このTdiffと、EXTssnextへのジャンプ時間(Ｔjump)とを用いれば、各エクステントにおける平均ビットレートに基づく最小エクステントサイズであるSextssは、以下の条件４を満たす値として算出される。
【０５６８】
＜条件４＞
SextSS[Byte]≧ceil[(Tjump＋Tdiff×Rud72)/(1000×8))×(Rextss×192)/(Rud72×188−Rextss×192)]
ここで、Rud72は、立体視出力モードにおけるBD-ROMドライブからのデータレートである。
【０５６９】
Rextssは、EXTssの平均ビットレートであり、以下の式から導かれる。
Ｒextss＝ceil[Ｎsp×188×8/(ATCDextss/27000000)]
ATCDextss＝ATCstart＿extssnext −ATCstart＿extss
ATCDextss＝ATClast＿extss − ATCstart＿extss + ceil(27000000x188x8/min(Rts1,Rts2))
ATCDextssは、EXTssのATC期間である。
【０５７０】
ATCstart＿EXTSSは、EXTssにおけるソースパケット列のATCフィールドによって指示される最小のATC値である。
ATCstart＿EXTssnextは、EXTssnextにおけるソースパケット列のATCフィールドによって指示される最小のATC値である。
【０５７１】
ATClast＿EXTSSは、EXTssにおけるソースパケット列のATCフィールドによって指示される最大のATC値である。
Ｎspは、メインTS、サブTSにおけるソースパケットであって、ATCDexssの範囲内にあるATCに対応するATC値をもつものの個数である。
【０５７２】
Ｒts1は、メインTSにおけるTSレコーディングレートの値であり、その最大値は、48Ｍbpsである。
Ｒts2は、サブTSにおけるTSレコーディングレートの値であり、その最大値は、48Ｍbpsである。
【０５７３】
2つのプレイアイテムを連続的に再生存在する場合、EXTssは、Previousプレイアイテム(プレイアイテム１)によって使用されるATCシーケンスの最初のデータバイトを含む。
・EXTssは、条件４において定義された最小エクステントサイズ以上のサイズをもつ。
【０５７４】
・EXTssがPreviousプレイアイテムにて使用されるATCシーケンスの最初のデータバイトである場合、Previousプレイアイテムのコネクションコンディション情報は、＝５、＝６に設定されない。この場合、EXTssのサイズを満たさなくてもよい。
【０５７５】
EXTssは、カレントプレイアイテム（プレイアイテム２）によって使用されるATCシーケンスのデータバイトを含む。
【０５７６】
・EXTssは、条件４において定義された最小エクステントサイズ以上のサイズをもつ。
・EXTssがプレイアイテム２にて使用されるATCシーケンスの最後のデータバイトである場合、プレイアイテム２のコネクションコンディション情報は、＝５、＝６に設定されない。この場合、EXTssのサイズを満たさなくてもよい。
【０５７７】
＜ベースビューデータブロック、ディペンデントビューデータブロックの記録の詳細＞
メインTSにおけるGOP及びサブTSにおけるGOPを記録媒体に記録するにあたって、拡張エントリーマップにおける拡張エントリーマップのエントリーは、ディペンデントビューピクチャデータであって、同じ再生時刻で再生されるべきベースビューピクチャデータが、基本エントリーマップのエントリーによってポインティングされているもののみをポインティングするようにしている。  
【０５７８】
そのようなポインティングを実現するべく、記録処理を以下のように行う。
記録処理時において、ディペンデントビューデータブロック及びベースビューデータブロックの境界と、ディペンデントビューGOP及びベースビューGOPの境界との一致を試みる。この境界一致は、サブTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターを、ディペンデントビューデータブロックの境界であるととして分割し、メインTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターを、ベースビューデータブロックの境界であるとして分割することでなされる。この分割にあたっては、先に述べたエクステント長の制約を満たさねばならない。
【０５７９】
分割にあたって、ベースビューデータブロック、ディペンデントビューデータブロックの何れかが、再生装置のダブルバッファをアンダーフローさせないようなエクステント長の制約を満たさない場合、サブTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターの直前、及び、メインTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターの直前のどちらかに、パディングパケットを挿入することで上記境界一致を試みる。
【０５８０】
上述した手法で境界一致に成功した場合、ディペンデントビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットのソースパケット番号をポインティングするエントリーを拡張エントリーマップに追加する。それと共に、ベースビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットのソースパケットをポインティングするエントリーを基本エントリーマップに追加する。
【０５８１】
パディングパケット挿入による境界一致に成功せず、ディペンデントビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットが、ディペンデントビューデータブロックの途中に位置した場合、かかるソースパケットをポインティングするようなエントリーを拡張エントリーマップに追加しない。同様に、ベースビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットが、ベースビューデータブロックの途中に位置した場合、かかるソースパケットをポインティングするようなエントリーを拡張エントリーマップに追加しない。
【０５８２】
こうしたエントリーを拡張エントリーマップから除外することで、ベースビュー、ディペンデントビューの組みが必ず基本エントリーマップ、拡張エントリーマップのエントリーによってポインティングされていることが、保障されることになる。
【０５８３】
ベースビューデータブロック、ディペンデントビューデータブロックの記録後に、エントリーマップを生成するという処理は、記録された立体視インターリーブドストリームファイルからGOP先頭を検出して、このGOP先頭をポインティングするエントリーをエントリーマップに追加してゆくという処理で実現される。GOP先頭検出及びエントリー追加によって、基本エントリーマップ、拡張エントリーマップを作成してゆく手順を、図５８参照しながら説明する。
【０５８４】
図６７は、基本エントリーマップ及び拡張エントリーマップの作成手順を示すフローチャートである。
ステップＳ６０１において、基本エントリーマップ及び拡張エントリーマップの雛形をメモリ上に生成し、ステップＳ６０２〜ステップＳ６１０のループに移行する。このループにおいて変数xは、GOPを指示するものであり、かかるループでは、変数xを1に初期化して(ステップＳ６０２)、GOP(x)の先頭を特定し(ステップＳ６０３)、GOPの先頭PTS(x)に対応するSPN(x)を特定する(ステップＳ６０４)。以降、ステップＳ６０５、ステップＳ６０７の判定を実行する。ステップＳ６０５は、SPN(x)がEXT1[i]の先頭であるか否かの判定であり、先頭でなければ、ステップＳ６０６〜ステップＳ６０９をスキップする。先頭であれば、ステップＳ６０６においてPTS(x)に対応するSPN(y)を先頭に有するEXT2[j]を特定する。
【０５８５】
ステップＳ６０７は、EXT1[i]を特定する変数iが、EXT2[j]を特定する変数jと一致するかどうかの判定であり、一致しなければ以降の処理をスキップする。一致すれば、PTS(x)−SPN(x)の組みを示すEP＿entry(x)を基本エントリーマップに追加し(ステップＳ６０８)、PTS(x)−SPN(y)の組みを示すEP＿entry(x)を拡張エントリーマップに追加する(ステップＳ６０９)。
【０５８６】
ステップＳ６１０は、変数xが最後のGOPを指示するものかどうかの判定であり、最後でなければ、変数xをインクリメントしてステップＳ６０３に移行する。
＜インデックステーブルの生成方法＞
第３実施形態で述べたインデックステーブルは、以下のようにして生成することができる。図５９のフローチャートにおいて、ベースビュービデオストリーム、ディペンデントビュービデオストリーム、クリップ情報ファイル、プレイリスト情報ファイルを作成することで、記録媒体に記録すべき各プレイリストの表示周波数が判明する。これらのうち、ファーストプレイタイトルで使用されるプレイリストの解像度・表示周波数、又は、タイトル番号０〜９９９で指示されるタイトルのプレイリストの解像度・表示周波数を、インデックステーブルのBDMVアプリケーション情報におけるビデオフォーマット情報及びフレームレート情報に設定する。こうすることで、プレイリスト再生時に適用すべき解像度・表示周波数が、インデックステーブルにおいて設定されることになる。
【０５８７】
図６８は、BD-Jアプリケーション、BD-Jオブジェクト、ムービーオブジェクト、インデックステーブルの作成手順を示すフローチャートである。ステップＳ７０１は、プレイリストについてのプレーヤインスタンスの生成を再生装置に命じるソースプログラムを、オブジェクト指向プログラミングで作成し、ステップＳ７０２では、そうして作成されたソースプログラムのコンパイルやアーカイブ化を行い、BD-Jアプリケーションを作成する。
【０５８８】
ステップＳ７０３は、BD-Jオブジェクトの作成行程であり、ステップＳ７０４は、プレイリスト再生を命じるコマンドを用いてムービーオブジェクトを記述する。ステップＳ７０５では、タイトル番号と、BD-Jオブジェクトとの対応付けを記述することで、インデックステーブルを作成し、ステップＳ７０６ではファーストプレイタイトルとするプレイリストを選択する。ステップＳ７０７では、ファーストプレイタイトルにおけるプレイリストのビデオフォーマット、ビデオレートを示すBDMVアプリケーション情報を作成し、ステップＳ７０８ではタイトルインデックス、BDMVアプリケーション情報を含むインデックステーブルを作成する。ステップＳ７０９では、BD-Jオブジェクト、BD-Jアプリケーション、ムービーオブジェクト、インデックステーブルを記録媒体に書き込む。
【０５８９】
以上の記録で作成することができる記録媒体について説明する。
図６９は、多層化された光ディスクの内部構成を示す。
第１段目は、多層化された光ディスクの一例を示し、第２段目は、各記録層上に存在する螺旋トラックを水平方向に引き伸ばして描いた図である。これらの記録層における螺旋トラックは、1つの連続したボリューム領域として扱われる。ボリューム領域は、最内周に位置するリードイン、最外周に位置するリードアウト、この間に存在する第１記録層の記録領域、第２記録層の記録領域、第３記録層の記録領域から構成される。これらの第１記録層の記録領域、第２記録層の記録領域、第３記録層の記録領域は、1つの連続した論理アドレス空間を構成する。
【０５９０】
ボリューム領域は、先頭から光ディスクをアクセスする単位で通し番号が振られており、この番号のことを論理アドレスと呼ぶ。光ディスクからのデータの読み出しは論理アドレスを指定することで行う。ここで、BD-ROMのような読み込み専用ディスクの場合には、基本的に論理アドレスが連続しているセクタは、光ディスク上の物理的な配置においても連続している。すなわち、論理アドレスが連続しているセクタのデータはシークを行わずに読み出すことが可能である。ただし、記録層の境界においては、論理アドレスが連続していたとしても連続的な読み出しはできない。そのため、層境界の論理アドレスは、予め記録装置に登録されているものとする。
【０５９１】
ボリューム領域は、リードイン領域の直後にファイルシステム管理情報が記録されていて、これに続いて、ファイルシステム管理情報にて管理されるパーティション領域が存在する。ファイルシステムとはディスク上のデータをディレクトリまたはファイルと呼ばれる単位で表現する仕組みであり、BD-ROMの場合ではUDF（Universal Disc Format）によって記録される。日常使っているPC（パーソナルコンピュータ）の場合でも、FATまたはNTFSと呼ばれるファイルシステムを通すことにより、ディレクトリやファイルという構造でハードディスクに記録されたデータがコンピュータ上で表現され、ユーザビリティを高めている。このファイルシステムにより、通常のPCと同じように記録されている論理データをディレクトリ、ファイル構造を使って読み出すことが可能になっている。  
【０５９２】
第４段目は、ファイルシステムで管理されるファイルシステム領域における領域割り当てを示す。ファイルシステム領域のうち、内周側には、非AVデータ記録領域が存在する。非AVデータ記録領域の直後には、AVデータ記録領域が存在する。第５段目は、これら非AVデータ記録領域及びAVデータ記録領域の記録内容を示す。AVデータ記録領域には、AVファイルを構成する構成するエクステントが存在する。非AVデータ記録領域には、AVファイル以外の非AVファイルを構成するエクステントが存在する。
【０５９３】
図７０は、ファイルシステムを前提にした光ディスクのアプリケーションフォーマットを示す。
BDMVディレクトリはBD-ROMで扱うTSや管理情報などのデータが記録されているディレクトリである。BDMVディレクトリの配下には、「PLAYLISTディレクトリ」、「CLIPINFディレクトリ」、「STREAMディレクトリ」、「BDJOディレクトリ」、「JARディレクトリ」と呼ばれる５つのサブディレクトリが存在し、BDMVディレクトリには、「index.bdmv」，「MovieObject.bdmv」の２種類のファイルが配置されている。
【０５９４】
「index.bdmv(ファイル名固定)」は、インデックステーブルを格納している。
「MovieObject.bdmv（ファイル名固定）」は、1つ以上のムービーオブジェクトを格納している。ムービーオブジェクトは、コマンドインタプリタを制御主体とした動作モード(HDMVモード)において、再生装置が行うべき制御手順を規定するプログラムファイルであり、1つ以上のコマンドと、GUIに対するメニューコール、タイトルコールがユーザによってなされた場合、これらのコールをマスクするかどうかを規定するマスクフラグを含む。
【０５９５】
「BDJOディレクトリ」には、拡張子bdjoが付与されたプログラムファイル(xxxxx.bdjo["xxxxx"は可変、拡張子"bdjo"は固定])が存在する。このプログラムファイルは、BD-Jモードにおいて、再生装置が行うべき制御手順を規定するBDーJオブジェクトを格納している。
【０５９６】
このJava（登録商標）アプリケーションの実体にあたるのが、BDMVディレクトリ配下のJARディレクトリに格納されたJava（登録商標）アーカイブファイル(YYYYY.jar)である。  
アプリケーションは例えばJava（登録商標）アプリケーションであり、仮想マシンのヒープ領域(ワークメモリとも呼ばれる)にロードされた1つ以上のxletプログラムからなる。このワークメモリにロードされたxletプログラム、及び、データから、アプリケーションは構成されることになる。
【０５９７】
「PLAYLISTディレクトリ」には、拡張子mplsが付与されたプレイリスト情報ファイル(xxxxx.mpls["xxxxx"は可変、拡張子"mpls"は固定])が存在する。
「CLIPINFディレクトリ」には、拡張子clpiが付与されたクリップ情報ファイル(xxxxx.clpi ["xxxxx"は可変、拡張子"clpi"は固定])が存在する。
【０５９８】
以上のディレクトリに存在するファイルを構成するエクステントは、非AVデータ領域に記録される。
「STREAMディレクトリ」は、ストリームファイルを格納しているディレクトリであり、本ディレクトリには、xxxxx.m2ts(["xxxxx"は可変、拡張子"m2ts"は固定])という形式でストリームファイルが格納される。
【０５９９】
上述したようなファイルは、パーティション領域において、物理的に連続する複数のセクタ上に形成される。パーティション領域は、「ファイルセット記述子が記録された領域」、「終端記述子が記録された領域」、「ROOTディレクトリ領域」、「BDMVディレクトリ領域」、「JARディレクトリ領域」、「BDJOディレクトリ領域」、「PLAYLISTディレクトリ領域」、「CLIPINFディレクトリ領域」、「STREAMディレクトリ領域」から構成され、ファイルシステムによってアクセスされる領域のことである。以降、これらの領域について説明する。
【０６００】
「ファイルセット記述子」は、ディレクトリ領域のうち、ROOTディレクトリのファイルエントリが記録されているセクタを指し示す論理ブロック番号（LBN)を含む。「終端記述子」は、ファイルセット記述子の終端を示す。
【０６０１】
次に、ディレクトリ領域の詳細について説明する。上述したような複数のディレクトリ領域は、何れも共通の内部構成を有している。つまり、「ディレクトリ領域」は、「ファイルエントリ」と、「ディレクトリファイル」と、「下位ファイルについてのファイル記録領域」とから構成される。
【０６０２】
「ファイルエントリ」は、「記述子タグ」と、「ICBタグ」と、「アロケーション記述子」とを含む。
「記述子タグ」は、自身がファイルエントリである旨を示すタグである。
【０６０３】
「ICBタグ」は、ファイルエントリ自身に関する属性情報を示す。
「アロケーション記述子」は、ディレクトリファイルの記録位置を示す論理ブロック番号（LBN）を含む。以上がファイルエントリーについての説明である。続いて、ディレクトリファイルの詳細について説明する。
【０６０４】
「ディレクトリファイル」は、「下位ディレクトリについてのファイル識別記述子」と、「下位ファイルのファイル識別記述子」とを含む。
「下位ディレクトリのファイル識別記述子」は、自身の配下にある下位ディレクトリをアクセスするための参照情報であり、その下位ディレクトリを示す識別情報と、その下位ディレクトリのディレクトリ名の長さと、下位ディレクトリのファイルエントリがどの論理ブロック番号に記録されているかを示すファイルエントリアドレスと、その下位ディレクトリのディレクトリ名とから構成される。
【０６０５】
「下位ファイルのファイル識別記述子」は、自身の配下にあるファイルをアクセスするための参照情報であり、その下位ファイルを示す識別情報と、その下位ファイル名の長さと、下位ファイルについてのファイルエントリがどの論理ブロック番号に記録されているかを示すファイルエントリアドレスと、下位ファイルのファイル名とから構成される。
【０６０６】
これらのディレクトリのディレクトリファイルにおけるファイル識別記述子には、下位ディレクトリ及び下位ファイルのファイルエントリーが、どの論理ブロックに記録されているかが示されているので、このファイル識別記述子を辿ってゆけば、ROOTディレクトリのファイルエントリーからBDMVディレクトリのファイルエントリーに到達することができ、また、BDMVディレクトリのファイルエントリーからPLAYLISTディレクトリのファイルエントリーに到達することができる。同様に、JARディレクトリ、BDJOディレクトリ、CLIPINFディレクトリ、STREAMディレクトリのファイルエントリーにも到達することができる。          
【０６０７】
「下位ファイルのファイル記録領域」とは、あるディレクトリの配下にある下位ファイルの実体が記録されている領域であり、当該下位ファイルについての「ファイルエントリ」と、1つ以上の「エクステント」とが記録されている。
【０６０８】
本願の主眼となるストリームファイルは、そのファイルが帰属するディレクトリのディレクトリ領域内に存在するファイル記録領域のことであり、ディレクトリファイルにおけるファイル識別記述子、及び、ファイルエントリーにおけるアローケーション識別子を辿ってゆくことで、アクセスすることができる。
【０６０９】
(第７実施形態)
本実施形態では、これまでの実施形態で説明した再生装置の機能を統合した、2D/3D再生装置の内部構成について説明する。
【０６１０】
図７１は、2D/3D再生装置の構成を示している。2D/3D再生装置は、BD-ROMドライブ１、リードバッファ２a、リードバッファ２b、スイッチ３、システムターゲットデコーダ４、プレーンメモリセット５a、プレーン合成部５b、HDMI送受信部６、再生制御部７、メモリ、レジスタセット２０３、プログラム実行部１１、プログラムメモリ１２、HDMVモジュール１３、BD-Jプラットフォーム１４、ミドルウェア１５、モード管理モジュール１６、ユーザイベント処理部１７、ローカルストレージ１８、不揮発メモリ１９から構成されている。
【０６１１】
BD-ROMドライブ１は、2D再生装置と同様に再生制御部７からの要求を元にBD-ROMディスクからデータを読み出すが、BD-ROMディスクから読み出されたAVクリップはリードバッファ２aかリードバッファ２bに転送される。
【０６１２】
3D映像を再生する際には、再生制御部７からはベースビューデータブロックとディペンデントビューデータブロックとをエクステント単位で交互に読み出す旨を指示する読出要求が送られる。BD-ROMドライブ１は、ベースビューデータブロックを構成するエクステントをリードバッファ２aに読み出し、ディペンデントビューデータブロックを構成するエクステントをリードバッファ２bに読み出す。3D映像を再生する際には、ベースビューデータブロックとディペンデントビューデータブロックの両方を同時に読み込む必要があるため、2D再生装置のBD-ROMドライブ以上のスピード性能が求められる。
【０６１３】
リードバッファ２aは、BD-ROMドライブ１が読み込んだベースビューデータブロックのデータを格納するデュアルポートメモリ等で構成されたバッファである。
リードバッファ２bは、BD-ROMドライブ１が読み込んだディペンデントビューデータブロックのデータを格納するデュアルポートメモリ等で構成されたバッファである。
【０６１４】
スイッチ３は、リードバッファに対するデータ入力源を、BD-ROMドライブ１又はローカルストレージ１８の何れかに切り替えるためのスイッチである。
システムターゲットデコーダ４は、リードバッファ２aに読み出されたソースパケットとリードバッファ２bに読み出されたソースパケットに対して多重分離処理を行いストリームのデコード処理を行う。
【０６１５】
プレーンメモリセット５aは、複数のプレーンメモリから構成される。プレーンメモリには、レフトビュービデオプレーン、ライトビュービデオプレーン、セカンダリビデオプレーン、IGプレーン、PGプレーンといったものがある。
【０６１６】
プレーン合成部５bは、これまでの実施形態で説明したプレーン合成を行う。テレビなどへの出力する場合には3Dの方式に合わせた出力を行う。シャッタメガネを利用して交互に左目イメージ・右目イメージを再生することが必要な場合はそのまま出力し、例えばレンチキュラーのテレビに出力する場合は、テンポラリのバッファを用意して、先に転送される左目イメージをテンポラリバッファに格納して、右目イメージが転送された後に同時に出力する。
【０６１７】
HDMI送受信部６は、例えばHDMI規格（HDMI:High Definition Multimedia Interface）において、第１実施形態に述べたネゴシエーションフェーズを実行する。ネゴシエーションフェーズでは、立体視表示に対応しているかに関する情報、平面表示可能な解像度に関する情報、立体表示可能な解像度に関する情報をテレビから受け取ることができる。
【０６１８】
再生制御部７は、再生エンジン７a、再生制御エンジン７bを含み、3Dプレイリストの再生がプログラム実行部１１などから命じられると、3Dプレイリストの中で再生対象となるプレイアイテムのベースビューデータブロックを特定し、そのプレイアイテムと同期して再生される3D用のサブパスのサブプレイアイテムのディペンデントビューデータブロックを特定する。その後、対応するクリップ情報ファイルのエントリマップを解釈し、どちらのエクステントから先にエクステントが配置されているか示すエクステント開始タイプに基づき、再生開始地点からベースビューデータブロックのエクステントと、ディペンデントビューデータブロックのエクステントとを交互に読み出すようにBD-ROMドライブ１に要求する。再生開始するときには、最初のエクステントをリードバッファ２aか、リードバッファ２bに読みきった後に、リードバッファ２aとリードバッファ２bからシステムターゲットデコーダ４に転送を開始する。
【０６１９】
再生エンジン７aは、AV再生機能を実行する。AV再生機能とは、DVD再生装置、CD再生装置から踏襲した機能群であり、再生開始、再生停止、一時停止、一時停止の解除、静止画機能の解除、再生速度を即値で指定した早送り、再生速度を即値で指定した巻戻し、音声切り替え、セカンダリビデオ用のピクチャデータ切り替え、アングル切り替えといった処理である。
【０６２０】
再生制御エンジン７bは、HDMVモードの動作主体であるコマンドインタプリタ、BD-Jモードの動作主体であるJavaプラットフォームからの関数呼び出しに応じて、プレイリストの再生機能を実行する。プレイリスト再生機能とは、上述したAV再生機能のうち、再生開始や再生停止をカレントプレイリストを構成するカレントプレイリスト情報、カレントクリップ情報に従って行うことをいう。
【０６２１】
メモリは、カレントプレイリスト情報やカレントクリップ情報を格納しておくためのメモリである。カレントプレイリスト情報とは、BD-ROMまたはビルドインメディアドライブ、リムーバブルメディアドライブからアクセスできる複数プレイリスト情報のうち、現在処理対象になっているものをいう。カレントクリップ情報とは、BD-ROMまたはビルドインメディアドライブ、リムーバブルメディアドライブからアクセスできる複数クリップ情報のうち、現在処理対象になっているものをいう。
【０６２２】
再生状態／設定レジスタ(Player Status/Setting Register)セット１０は、これまでの実施形態で述べた再生状態レジスタ、再生設定レジスタの他、プログラムファイルが利用する任意の情報を格納できる汎用レジスタを含む。
【０６２３】
プログラム実行部１１は、BDプログラムファイルに格納されたプログラムを実行するプロセッサである。格納されたプログラムに従って動作を行い、次のような制御を行う。（１）再生制御部７に対してプレイリスト再生を命令する。（２）システムターゲットデコーダに対してメニューやゲームのグラフィクスのためのPNG・JPEGを転送して画面に表示する。これらはプログラムの作りに応じて自由に行うことができ、どのように制御するかは、オーサリング工程によるBD-Jアプリケーションのプログラミング工程によって決まる。
【０６２４】
プログラムメモリ１２は、カレント動的シナリオを格納しておき、HDMVモードの動作主体であるHDMVモジュール、BD-Jモードの動作主体であるJavaプラットフォームによる処理に供されるメモリである。カレント動的シナリオとは、BD-ROMに記録されているIndex.bdmv、BD-Jオブジェクト、ムービーブジェクトのうち、現在実行対象になっているものをいう。またプログラムメモリ１２は、ヒープメモリを含む。
【０６２５】
ヒープメモリは、システムアプリケーションのバイトコード、BD-Jアプリケーションのバイトコード、システムアプリケーションが利用するシステムパラメータ、BD-Jアプリケーションが利用するアプリケーションパラメータが配置されるスタック領域である
HDMVモジュール１３は、コマンドインタプリタを具備し、ムービーオブジェクトを構成するナビゲーションコマンドを解読して実行することでHDMVモードの制御を実行する。
【０６２６】
BD-Jプラットフォーム１４は、BD-Jモードの動作主体であるJavaプラットフォームであり、Java2Micro＿Edition(J2ME) Personal Basis Profile(PBP 1.0)と、Globally Executable MHP specification(GEM1.0.2)for package media targetsとをフル実装しており、クラスローダ、バイトコードインタプリタ、アプリケーションマネージャから構成される。
【０６２７】
クラスローダは、システムアプリケーションの1つであり、JARアーカイブファイルに存在するクラスファイルからバイトコードを読み出して、ヒープメモリ３１に格納することにより、BD-Jアプリケーションのロードを行う。
【０６２８】
バイトコードインタプリタは、いわゆるJava仮想マシンであり、ヒープメモリに格納されているBD-Jアプリケーションを構成するバイトコード、システムアプリケーションを構成するバイトコードをネィティブコードに変換して、MPUに実行させる。
【０６２９】
アプリケーションマネージャは、システムアプリケーションの1つであり、BD-Jオブジェクト内のアプリケーション管理テーブルに基づき、BD-Jアプリケーションを起動したりBD-Jアプリケーションを終了したりする等、BD-Jアプリケーションのアプリケーションシグナリングを行う。以上で、BD-Jプラットフォーム部の内部構成についての説明を終える。
【０６３０】
ミドルウェア１５は、組込みソフトウェアのためのオペレーティングシステムであり、カーネル、デバイスドライバから構成される。カーネルは、BD-Jアプリケーションからのアプリケーションプログラミングインターフェイス(API)のコールに応じて、再生装置特有の機能をBD-Jアプリケーションに提供する。また、割込信号により割込ハンドラ部を起動する等のハードウェア制御を実現する。
【０６３１】
モード管理モジュール１６は、BD-ROMまたはビルドインメディアドライブ、リムーバブルメディアドライブから読み出されたIndex.bdmvを保持して、モード管理及び分岐制御を行う。モード管理モジュールによるモード管理とは、動的シナリオを、BD-Jプラットフォーム２２、HDMVモジュールのどちらに実行させるかという、モジュールの割り当てである。
【０６３２】
ユーザイベント処理部１７は、リモコンを通じたユーザ操作に応答して、プログラム実行部１６や再生制御部７に処理の実行を依頼する。例えば、リモコンでボタンを押した場合は、そのボタンに含まれるコマンドを実行するようプログラム実行部１６に依頼する。例えば、リモコンで早送り・巻戻しボタンが押された場合には、再生制御部７に、現在再生しているプレイリストのAVクリップに対する早送り・巻戻し処理の実行を命令する。
【０６３３】
ローカルストレージ１８は、ハードディスクをアクセスするためのビルドインメディアドライブ、半導体メモリカードをアクセスするためのリムーバブルメディアドライブを備え、ダウンロードしてきた追加コンテンツやアプリケーションが使うデータなどの保存に用いられる。追加コンテンツの保存領域はBD-ROM毎に分かれており、またアプリケーションがデータの保持に使用できる領域はアプリケーション毎に分かれている。
【０６３４】
不揮発メモリ１９は、読み書き可能なメモリなどの記録媒体であり、電源が供給されなくても、記録内容を保持できる媒体、例えばフラッシュメモリ、FeRAMなどである。これは、レジスタセット２０３における記憶内容のバックアップに用いられる。
【０６３５】
(第８実施形態)
以降の実施形態は、本願の優先権主張の基礎となった特許出願の願書に添付した明細書及び図面に記載された発明と同一発明(以下、本発明と呼ぶ)を実施するための形態である。
【０６３６】
先ず始めに、本発明に係る記録媒体の実施行為のうち、使用行為についての形態を説明する。図７２（ａ）は、本発明に係る記録媒体の、使用行為についての形態を示す図である。本図において、本発明に係る記録媒体はBD-ROM１０１である。このBD-ROM１０１は、再生装置１０２、テレビ１０３、リモコン１０４により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。
【０６３７】
以上が本発明に係る記録媒体の使用形態についての説明である。
次に本発明に係る記録媒体であるBD-ROMの、2D映像を格納するためのデータ構造について説明する。
【０６３８】
図７２（ｂ）は、BD-ROMの構成を示す図である。
本図の第４段目にBD-ROM１０１を示し、第３段目にBD-ROM上のトラックを示す。本図のトラック、BD-ROM１０１の内周から外周にかけて螺旋状に形成されているトラックを横方向に引き伸ばして描画している。BD-ROM１０１は他の光ディスク、例えばDVDやCDなどと同様にその内周から外周に向けてらせん状に記録領域を持ち、内周のリードインと外周のリードアウトの間に論理データを記録できるボリューム領域を有している。ボリューム領域は、先頭から光ディスクをアクセスする単位で通し番号が振られており、この番号のことを論理アドレスと呼ぶ。光ディスクからのデータの読み出しは論理アドレスを指定することで行う。ここでは論理アドレスは、光ディスク上の物理的な配置においても、連続していると定義する。すなわち、論理アドレスが連続しているデータはシークを行わずに読み出すことが可能である。また、リードインの内側にはBCA（Burst  Cutting  Area）と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。
【０６３９】
ボリューム領域には、先頭からファイルシステムのボリューム情報が記録され、続いて映像データなどのアプリケーションデータが記録されている。ファイルシステムとはディスク上のデータをディレクトリまたはファイルと呼ばれる単位で表現する仕組みであり、BD-ROM１０１の場合ではUDF（Universal  Disc  Format）によって記録される。日常使っているPC（パーソナルコンピュータ）の場合でも、FATまたはNTFSと呼ばれるファイルシステムを通すことにより、ディレクトリやファイルという構造でハードディスクに記録されたデータがコンピュータ上で表現され、ユーザビリティを高めている。このファイルシステムにより、通常のPCと同じように記録されている論理データをディレクトリ、ファイル構造を使って読み出しする事が可能になっている。
【０６４０】
BD-ROM１０１上のディレクトリ、ファイル構造は、ルートディレクトリ（ROOT）直下にBDMVディレクトリが置かれている。BDMVディレクトリはBD-ROM１０１で扱うAVコンテンツや管理情報などのデータが記録されているディレクトリである。BDMVディレクトリの配下には、タイトルを構成するインデックステーブルが定義されたインデックスファイル（index.bdmv）、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリ、BDJOディレクトリ、JARディレクトリが存在する。映像・音声といったAVコンテンツが多重化され格納されたAVクリップ（XXX.M２TS）、AVクリップの管理情報を格納したクリップ情報ファイル（XXX.CLPI）、AVクリップの論理的な再生経路を定義したプレイリストファイル（YYY.MPLS）、動的なシナリオを定義するためのプログラムが格納されたBDプログラムファイル（AAA.PROG）は、それぞれ前述のSTREAMディレクトリ、CLIPINFディレクトリ、PLAYLISTディレクトリの下に配置される。
【０６４１】
以下に、BDMVディレクトリ配下に置かれる各ファイルのデータ構造について説明する。
まずインデックスファイル（Index.bdmv）について説明する。インデックスファイルは図７２（ｃ）に示すインデックステーブルを持つ。インデックステーブルはBD-ROMに格納されるすべてのタイトル、トップメニュー、FirstPlayといったタイトル構成を定義する最上位層のテーブルである。このテーブルには、全てのタイトル、トップメニュー、FirstPlayから最初に実行されるプログラムファイルが指定されている。BD-ROMの再生機は、タイトルあるいはメニューが呼び出されるたびにインデックステーブルを参照して、所定のBDプログラムファイルを実行する。ここで、FirstPlayとは、コンテンツプロバイダによって設定されるもので、ディスク投入時に自動実行されるBDプログラムファイルが設定されている。また、トップメニューは、リモコンでのユーザ操作で、「メニューに戻る」というようなコマンドが実行されるときに、呼び出されるムービーオブジェクト、BDJオブジェクトが指定されている。
【０６４２】
BDプログラムファイル（AAA.PRG）はタイトルから指定、実行されるプログラムが格納されている。プログラムのファイルは複数あり、プリフィックス（AAA）がプログラムを識別するのに使用される。ここで使用されるプログラムは、ブルーレイの場合はコマンドナビゲーションと呼ばれる独自仕様のインタープリタ方式のプログラムが使われるが、言語方式は本発明の本質ではないため、JavaやJavaScripのような汎用のプログラミング言語であっても構わない。このプログラムによって再生されるプレイリストが指定される。
【０６４３】
続いて、AVクリップ（XXX.M２TS）とクリップ情報ファイル（XXX.CLPI）について説明する。
AVクリップは、MPEG-２トランスポートストリーム形式のデジタルストリームである。
【０６４４】
図７３（ａ）は、AVクリップの構成を示す図である。本図に示すようにAVクリップは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム（PG）、インタラクティブグラファイックスストリームのうち、１つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム（IG）は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、MPEG-２、MPEG-４  AVC、または、SMPTE  VC-１などの方式を使って符号化記録されている。オーディオストリームは、ドルビーAC-３、Dolby  Digital  Plus、MLP、DTS、DTS-HD、または、リニアPCMのなどの方式で圧縮・符号化記録されている。
【０６４５】
ビデオストリームの構成について説明する。MPEG-２、MPEG-４  AVC、SMPTE  VC-１などの動画圧縮符号化においては、動画像の空間方向および時間方向の冗長性を利用してデータ量の圧縮を行う。時間方向の冗長性を利用する方法として、ピクチャ間予測符号化が用いられる。ピクチャ間予測符号化では、あるピクチャを符号化する際に、表示時間順で前方または後方にあるピクチャを参照ピクチャとする。そして、その参照ピクチャからの動き量を検出し、動き補償を行ったピクチャと符号化対照のピクチャとの差分値に対して空間方向の冗長度を取り除くことによりデータ量の圧縮を行う。
【０６４６】
ここでは、参照ピクチャを持たずに符号化対象ピクチャのみを用いてピクチャ内予測符号化を行うピクチャをIピクチャと呼ぶ。ピクチャとは、フレームおよびフィールドの両者を包含する１つの符号化の単位である。また、既に処理済の１枚のピクチャを参照してピクチャ間予測符号化するピクチャをPピクチャとよび、既に処理済みの２枚のピクチャを同時に参照してピクチャ間予測符号化するピクチャをBピクチャと呼び、Bピクチャの中で他のピクチャから参照されるピクチャをBrピクチャと呼ぶ。また、フレーム構造の場合のフレーム、フィールド構造のフィールドを、ここではビデオアクセスユニットと呼ぶ。
【０６４７】
AVクリップに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームに配列x１０１１が、オーディオストリームに配列x１１００から０x１１１Fまでが、プレゼンテーショングラフィックスに配列x１２００から０x１２１Fまでが、インタラクティブグラフィックスストリームに配列x１４００から０x１４１Fまでが、映画の副映像に利用するビデオストリームに配列x１B００から０x１B１Fまで、主音声とミキシングする副音声に利用するオーディオストリームに配列x１A００から０x１A１Fが、それぞれ割り当てられている。
【０６４８】
図７３（ｂ）は、AVクリップがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリーム５０１、複数のオーディオフレームからなるオーディオストリーム５０４を、それぞれPESパケット列５０２および５０５に変換し、TSパケット５０３および５０６に変換する。同じくプレゼンテーショングラフィックスストリーム５０７およびインタラクティブグラフィックス５１０のデータをそれぞれPESパケット列５０８および５１１に変換し、更にTSパケット５０９および５１２に変換する。AVクリッステップＳ５１３はこれらのTSパケットを１本のストリームに多重化することで構成される。
【０６４９】
図７４（ａ）は、PESパケット列に、ビデオストリームがどのように格納されるかを更に詳しく示している。本図における第１段目はビデオストリームのビデオフレーム列を示す。第２段目は、PESパケット列を示す。本図の矢印yy１，yy２，  yy３，  yy４に示すように、ビデオストリームにおける複数のVideo  Presentation  UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS（Presentation  Time-Stamp）やピクチャの復号時刻であるDTS（Decoding  Time-Stamp）が格納される。
【０６５０】
図７４（ｂ）は、AVクリップに最終的に書き込まれるTSパケットの形式を示している。TSパケットは、ストリームを識別するPIDなどの情報を持つ４ByteのTSヘッダとデータを格納する１８４ByteのTSペイロードから構成される１８８Byte固定長のパケットであり、前述で説明したPESパケットは分割されTSペイロードに格納される。BD-ROMの場合、TSパケットには、４ByteのTP＿Extra＿Headerが付与され、１９２Byteのソースパケットを構成し、AVクリップに書き込まれる。TP＿Extra＿HeaderにはATS（Arrival＿Time＿Stamp）などの情報が記載される。ATSは当該TSパケットの後述するシステムターゲットデコーダ１５０３のPIDフィルタへの転送開始時刻を示す。AVクリップには図７４（ｂ）下段に示すようにソースパケットが並ぶこととなり、AVクリップの先頭からインクリメントする番号はSPN（ソースパケットナンバー）と呼ばれる。
【０６５１】
また、AVクリップに含まれるTSパケットには、映像・音声・字幕などの各ストリーム以外にもPAT（Program  Association  Table）、PMT（Program  Map  Table）、PCR（Program  Clock  Reference）などがある。PATはAVクリップ中に利用されるPMTのPIDが何であるかを示し、PAT自身のPID配列で登録される。PMTは、AVクリップ中に含まれる映像・音声・字幕などの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、またAVクリップに関する各種ディスクリプタを持つ。ディスクリプタにはAVクリップのコピーを許可・不許可を指示するコピーコントロール情報などがある。PCRは、ATSの時間軸であるATC（Arrival  Time  Clock）とPTS・DTSの時間軸であるSTC（System  Time  Clock）の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
【０６５２】
図７５（ａ）は、PMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、AVクリップに関するディスクリプタが複数配置される。前述したコピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、AVクリップに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報（フレームレート、アスペクト比など）が記載されたストリームディスクリプタから構成される。ストリームディスクリプタはAVクリップに存在するストリームの数だけ存在する。
【０６５３】
クリップ情報ファイルは、図７５（ｂ）に示すようにAVクリップの管理情報であり、AVクリップと１対１に対応し、クリップ情報、ストリーム属性情報とエントリマップから構成される。
【０６５４】
クリップ情報は図７５（ｂ）に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートはAVクリップの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。AVクリップ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻はAVクリップの先頭のビデオフレームのPTSであり、再生終了時刻はAVクリップの終端のビデオフレームのPTSに１フレーム分の再生間隔を足したものが設定される。
【０６５５】
ストリーム属性情報は図７６（ａ）に示すように、AVクリップに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
【０６５６】
エントリマップは、図７６（ｂ）に示すように、エントリマップヘッダ情報１１０１と、AVクリップ内に含まれるビデオストリームの各Iピクチャの表示時刻を示すPTSと各Iピクチャが開始するAVクリップのSPNが記載されたテーブル情報である。ここではテーブルの１つの行で示される対となるPTSとSPNの情報をエントリポイントと呼ぶことにする。また先頭を０として各エントリポイント毎にインクリメントした値をエントリポイントID（以下EP＿ID）と呼ぶことにする。このエントリマップを利用することにより、再生機はビデオストリームの時間軸上の任意の地点に対応するAVクリップのファイル位置を特定することが出来るようになる。例えば、早送り・巻戻しの特殊再生の際には、エントリマップに登録されるIピクチャを特定し選択して再生することによりAVクリップを解析することなく効率的に処理を行うことが出来る。また、エントリマップはAVクリップ内に多重化される各ビデオストリーム毎に作られ、PIDで管理される。また、エントリマップには、先頭にエントリマップヘッダ情報１１０１が格納され、ここには該当エントリマップが指すビデオストリームのPIDやエントリポイント数などの情報が格納される。
【０６５７】
次に、プレイリストファイル（YYY.MPLS）について説明する。
プレイリストは、AVクリップの再生経路を示すものである。図７７（ａ）に示すように、プレイリストは１つ以上のプレイアイテム１２０１から構成され、各プレイアイテムはAVクリップに対する再生区間を示す。各プレイアイテム１２０１はそれぞれプレイアイテムIDで識別され、プレイリスト内で再生されるべき順序で記述されている。また、プレイリストは再生開始点を示すエントリマーク１２０２を含んでいる。エントリマーク１２０２はプレイアイテムで定義される再生区間内に対して付与することでき、図７７（ａ）に示すように、プレイアイテムに対して再生開始点となりうる位置に付けられ、頭出し再生に利用される。例えば、映画タイトルにおいて、エントリマーク１２０２をチャプタの先頭となる位置に付与することで、チャプタ再生することが可能である。なお、一連のプレイアイテムの再生経路をメインパス１２０５とここでは定義する。
【０６５８】
プレイアイテムの内容について図７７（ｂ）を用いて説明する。プレイアイテムには、再生するクリップ情報１３０１と再生開始時刻１３０２および再生終了時刻１３０３、コネクションコンディション１３１０、ストリーム選択テーブル１３０５が含まれている。再生開始時刻と再生終了時刻は時間情報であるため、再生機はクリップ情報ファイルのエントリマップを参照し、指定された再生開始時刻および再生終了時刻に対応するSPNを取得し、読み出し開始位置を特定して再生処理を行う。
【０６５９】
コネクションコンディション１３１０は、前方プレイアイテムと接続タイプを示している。プレイアイテムのコネクションコンディション１３１０が「１」の場合は、プレイアイテムが指し示すAVクリップは、そのプレイアイテムの前のプレイアイテムが指し示すAVクリップとシームレス接続が保証されないことを示す。プレイアイテムのコネクションコンディション１３１０が「５」か「６」の場合は、プレイアイテムが指し示すAVクリップは、そのプレイアイテムの前のプレイアイテムが指し示すAVクリップとシームレスに接続されることが保証される。コネクションコンディション１３１０が「５」の場合は、プレイアイテム間でSTCの連続性が途切れていても良く、つまり、接続前プレイアイテムのAVクリップ終端のビデオ表示時刻よりも、接続後プレイアイテムのAVクリップ先頭のビデオ表示時刻開始時刻は不連続でよい。ただし、接続前プレイアイテムのAVクリップを後述するシステムターゲットデコーダ１５０３のPIDフィルタに入力した後に続けて、接続後プレイアイテムのAVクリップをシステムターゲットデコーダ１５０３のPIDフィルタに入力して再生したときに、システムターゲットデコーダ１５０３のデコードが破綻しないようにAVクリップを作成する必要がある。また接続前プレイアイテムのAVクリップのオーディオの終端フレームと、接続後プレイアイテムのオーディオの先頭フレームは再生時間軸で重なら無ければならないなどの制約条件がある。また、コネクションコンディション１３１０が「６」の場合は、接続前プレイアイテムのAVクリップと接続後プレイアイテムのAVクリップを結合したときに１本のAVクリップとして再生できなければならない。つまり、接続前プレイアイテムのAVクリップと接続後プレイアイテムのAVクリップ間でSTCは連続し、またATCも連続する。
【０６６０】
ストリーム選択テーブル１３０５は、複数のストリームエントリ１３０９からなり、ストリームエントリ１３０９はストリーム選択番号１３０６、ストリームパス情報１３０７、ストリーム識別情報１３０８からなる。ストリーム選択番号１３０６は、ストリーム選択テーブルに含まれるストリームエントリ１３０９の先頭から順にインクリメントされる番号であり、プレーヤでのストリーム識別のために利用される。ストリームパス情報１３０７は、ストリーム識別情報１３０８によって示されるストリームが、どのAVクリップに多重化されているかを示す情報であり、例えば"メインパス"であれば、該当するプレイアイテムのAVクリップを示し、"サブパスID=１"であれば、そのサブパスIDが示すサブパスにおいて、該当するプレイアイテムの再生区間に対応するサブプレイアイテムのAVクリップを示す。サブパスについては次の節で説明する。ストリーム識別情報１３０８は、PIDなどの情報であり、参照するAVクリップに多重化されているストリームを示す。また、ストリームエントリ１３０９には、各ストリームの属性情報も同時に記録されている。ここで属性情報とは、各ストリームの性質を示す情報で、例えばオーディオ、プレゼンテーショングラフィックス、インタラクティブグラフィックスの場合には、言語属性などが含まれる。
【０６６１】
プレイリストは、図７７（ｃ）に示すように１つ以上のサブパスを有することが出来る。サブパスはプレイリストに登録される順にIDが振られ、サブパスIDとして、サブパスを識別するために使われる。サブパスは、メインパスと同期して再生される一連の再生経路を示す。サブプレイアイテムは、プレイアイテムと同様に再生するクリップ情報１３０１と再生開始時刻１３０２および再生終了時刻１３０３を持ち、サブプレイアイテムの再生開始時刻１３０２と再生終了時刻１３０３は、メインパスと同じ時間軸で表される。例えば、プレイアイテム＃2のストリーム選択テーブル１３０５に登録されているあるストリームエントリ１３０９が、サブパスID=０でプレゼンテーショングラフィックス１を示す場合は、サブパスID=０のサブパスの中で、プレイアイテム＃2の再生区間に同期して再生するサブプレイアイテム＃2のAVクリップの中に多重化されるプレゼンテーショングラフィックス１が、プレイアイテム＃2再生区間に再生されることになる。また、サブプレイアイテムには、プレイアイテムのコネクションコンディションと同じ意味を持つSPコネクションコンディションというフィールドが存在する。SPコネクションコンディションが「５」もしくは「６」のサブプレイアイテム境界のAVクリップは、コネクションコンディション「５」もしくは「６」と同じ上記条件を守る必要がある。
【０６６２】
以上が、本発明にかかる記録媒体であるBD-ROMの、2D映像を格納するためのデータ構造である。
続いて、本発明にかかる2D映像を格納するBD-ROMを再生する再生装置（2D再生装置）について説明する。
【０６６３】
図７８（ａ）は、2D再生装置１５００の構成を示している。2D再生装置１５００は、BD-ROMドライブ１５０１、リードバッファ１５０２、システムターゲットデコーダ１５０３、プログラム記録メモリ１５０４、管理情報記録メモリ１５０５、プログラム実行部１５０６、再生制御部１５０７、プレーヤ変数１５０８、ユーザイベント処理部１５０９、プレーン加算部１５１０から構成されている。
【０６６４】
BD-ROMドライブ１５０１は、再生制御部１５０７からの要求を元にBD-ROMディスクからデータを読み出す。BD-ROMディスクから読み出れたAVクリップはリードバッファ１５０２に、インデックスファイル、プレイリストファイル、クリップ情報ファイルは管理情報メモリ１５０５に、ムービーオブジェクトファイルはプログラムメモリ１５０４に、それぞれ転送される。
【０６６５】
リードバッファ１５０２は、BD-ROMドライブを使って読み込んだデータを、管理情報メモリ１５０５はインデックスファイル、プレイリストファイル、クリップ情報ファイルの管理情報を、プログラム記録メモリ１５０４は、ムービーオブジェクトファイルを格納するメモリ等で構成されたバッファである。
【０６６６】
システムターゲットデコーダ１５０３は、リードバッファ１５０２に読み出されたソースパケットに対して多重分離処理を行い、ストリームのデコード処理を行う。AVクリップに含まれるストリームのデコードに必要な、コーデック種類やストリーム属性などの情報は再生制御部１５０７から転送される。システムターゲットデコーダ１５０３はデコードした主映像ビデオストリーム、副映像ビデオストリーム、インタラクティブグラフィックスストリーム、プレゼンテーショングラフィックスストリームを、それぞれのプレーンメモリである主映像プレーン、副映像プレーン、インタラクティブグラフィックスプレーン（IGプレーン）、プレゼンテーショングラフィックスプレーン（PGプレーン）に書き出す。またシステムターゲットデコーダ１５０３はデコードした主音声ストリーム、副音声ストリームを、ミキシングしスピーカなどに出力する。また、システムターゲットデコーダ１５０３は、プログラム実行部１５０６より転送されるメニューなどに表示するためのJPEG，PNGなどのグラフィックスデータをデコードして、イメージプレーンに書き出す処理を行う。システムターゲットデコーダ１５０３の詳細については後述する。
【０６６７】
ユーザイベント処理部１５０９は、リモコンを通じたユーザ操作に応答して、プログラム実行部１５０６や再生制御部１５０７に処理の実行を依頼する。例えば、リモコンでボタンを押した場合は、そのボタンに含まれるコマンドを実行するようプログラム実行部１５０６に依頼する。例えば、リモコンで早送り・巻戻しボタンが押された場合には、再生制御部１５０７に、現在再生しているプレイリストのAVクリップに対する早送り・巻戻し処理の実行を命令する。
【０６６８】
再生制御部１５０７は、BD-ROMドライブ１５０１とシステムターゲットデコーダ１５０３を制御して、AVクリップの再生を制御する機能を持つ。再生制御部１５０７は、プログラム実行部１５０６からの再生命令や、ユーザイベント処理部１５０９より通知に基づき、プレイリスト情報を解釈してAVクリップの再生処理を制御する。また、再生制御部１５０７は、プレーヤ変数１５０８の設定や参照を行い、再生動作を行う。
【０６６９】
プレーヤ変数１５０８は、プレーヤの状態を示すシステムパラメータ（PSR）と一般用途として使用可能なゼネラルパラメータ（GPRM）とがある。
図７８（ｂ）はシステムパラメータ（PSR）の一覧である。
【０６７０】
PSR0      ：  言語コード
PSR1      ：  主音声ストリーム番号
PSR2      ：  字幕ストリーム番号
PSR3      ：  アングル番号
PSR4      ：  タイトル番号
PSR5      ：  チャプタ番号
PSR6      ：  プログラム番号
PSR7      ：  セル番号
PSR8      ：  選択キー情報
PSR9      ：  ナビゲーションタイマー
PSR10    ：  再生時刻情報
PSR11    ：  カラオケ用ミキシングモード
PSR12    ：  パレンタル用国情報
PSR13    ：  パレンタルレベル
PSR14    ：  プレーヤ設定値（ビデオ）
PSR15    ：  プレーヤ設定値（オーディオ）
PSR16    ：  音声ストリーム用言語コード
PSR17    ：  音声ストリーム用言語コード
PSR18    ：  字幕ストリーム用言語コード
PSR19    ：  字幕ストリーム用言語コード
PSR20    ：  プレーヤリージョンコード
PSR21    ：  2D/３D出力モードのユーザー優先選択
PSR22    ：  現在の2D/３D出力モード
PSR23    ：  ディスプレイの3D映像表示能力
PSR24    ：  3D映像再生能力
PSR25    ：  予備
PSR26    ：  予備
PSR27    ：  予備
PSR28    ：  予備
PSR29    ：  予備
PSR30    ：  予備
PSR31    ：  予備
PSR10は、AVクリップに属する各ピクチャデータが表示される度に更新される。つまり再生装置が新たなピクチャデータを表示させれば、その新たなピクチャデータの表示時刻（PTS）を示す値にPSR10は更新される。このPSR10を参照すれば、現在の再生時点を知得することができる。
【０６７１】
PSR16の音声ストリーム用言語コードやPSR18の字幕ストリーム用言語コードは、プレーヤのOSDなどで設定できる項目であり、プレーヤのデフォルトの言語コードを示す。例えば、PSR16の音声ストリーム用言語コードが英語であれば、プレイリストを再生する上で、プレイアイテムのストリーム選択テーブルの中から同じ言語コードを持つストリームエントリを探し出し、その音声ストリームを選択して再生するといった機能をBDプログラムファイルに入れることができる。
【０６７２】
また、再生制御部１５０７は、システムパラメータの状態をチェックしながら再生する。また、PSR1、PSR2、PSR21、PSR22は、それぞれ音声ストリーム番号、字幕ストリーム番号、副映像ストリーム、副音声ストリームの番号を示し、これらの値は、前述したストリーム選択番号６０６に対応する。例えば、プログラム実行部１５０６によって、音声ストリーム番号PSR1が変更されたとする。再生制御部１５０７は、現在再生しているプレイアイテムのストリーム選択テーブル６０５の中から、ストリーム選択番号６０６と比較して、一致するストリームエントリ６０９を参照し、再生する音声ストリームを切り替える。このようにしてどの音声・字幕・副映像ストリームを再生するかどうかを切り替える。
【０６７３】
プログラム実行部１５０６はBDプログラムファイルに格納されたプログラムを実行するプロセッサである。格納されたプログラムに従って動作を行い、次のような制御を行う。（１）再生制御部１５０６に対してプレイリスト再生を命令する。（２）システムターゲットデコーダに対してメニューやゲームのグラフィックスのためのPNG・JPEGを転送して画面に表示する。これらはプログラムの作りに応じて自由に行うことが出来、どのように制御するかは、オーサリング工程によるBDプログラムファイルのプログラミング工程によって決まる。
【０６７４】
プレーン加算部は、主映像プレーン、副映像プレーン、インタラクティブグラフィックスプレーン、プレゼンテーショングラフィックスプレーン、イメージプレーンを瞬時に重畳し、TVなどの画面に表示する。
【０６７５】
次に、図７９を参照しながらシステムターゲットデコーダ１５０３について説明する。
ソースデパケットタイザは、システムターゲットデコーダ１５０３に転送されるソースパケットを解釈し、TSパケットを取り出しPIDフィルタに送出する。この送出にあたって、各ソースパケットのATSに応じてデコーダへの入力時刻を調整する。具体的には、ATCカウンタが生成するATCの値と、ソースパケットのATS値とが同一になった瞬間に、AVクリップの記録レートにしたがって、そのTSパケットだけをPIDフィルタに転送する。
【０６７６】
PIDフィルタは、ソースデパケッタイザから出力されたTSパケットのうち、TSパケットのPIDが、再生に必要とされるPIDに一致するものを、PIDにしたがって、主映像ビデオデコーダ、副映像ビデオデコーダ、IGデコーダ、PGデコーダ、音声デコーダ、副音声デコーダに転送する。例えば、BD-ROMの場合には、TSパケットに含まれるPIDが０x１０１１である場合は主映像ビデオデコーダに、PIDが０x１B００から０x１B１Fである場合は副映像ビデオデコーダに、PIDが０x１１００から０x１１１Fである場合は主音声デコーダに、PIDが０x１A００から０x１A１Fである場合は副音声デコーダに、PIDが０x１２００から０x１２１Fである場合はPGデコーダに、PIDが０x１４００から０x１４１Fである場合はIGデコーダに転送される。
【０６７７】
主映像ビデオデコーダは、TB（TransportStreamBuffer）１７０１、MB（Multiplexing  Buffer）１７０２、EB（ElementaryStreamBuffer）１７０３，圧縮映像デコーダ１７０４、DPB（Decoded  Picture  Buffer）１７０５から構成される。
【０６７８】
TB１７０１は、ビデオストリームを含むTSパケットがPIDフィルタ１７０２から出力された際、TSパケットのまま一旦蓄積されるバッファである。
MB１７０２は、TB１７０１からEB１７０２にビデオストリームを出力するにあたって、一旦PESパケットを蓄積しておくためのバッファである。TB１７０１からMB１７０２にデータが転送される際に、TSパケットのTSヘッダは取り除かれる。
【０６７９】
EB１７０３は、符号化状態にあるピクチャ（Iピクチャ、Bピクチャ、Pピクチャ）が格納されるバッファである。MB１７０２からEB１７０３にデータが転送される際にPESヘッダが取り除かれる。
【０６８０】
圧縮映像デコーダ１７０４、ビデオエレメンタリストリームの個々のビデオアクセスユニットを所定の復号時刻（DTS）ごとにデコードすることによりフレーム/フィールド画像を作成する。AVクリップに多重化されるビデオストリームの圧縮符号化形式にはMPEG２、MPEG４AVC、VC１などがあるため、ストリームの属性に応じて、圧縮映像デコーダ１７０４のデコード方法は切り替えられる。圧縮映像デコーダ１７０４は、デコードされたフレーム/フィールド画像はDPB１７０５に転送し、表示時刻（PTS）のタイミングで対応するフレーム/フィールド画像を主映像プレーンに書き出す。
【０６８１】
DPB１７０５は、復号されたフレーム/フィールド画像を一時的に保持しておくバッファである。圧縮映像デコーダ１７０４が、ピクチャ間予測符号化されたPピクチャやBピクチャなどのビデオアクセスユニットをデコードする際に、既にデコードされたピクチャを参照するために利用する。
【０６８２】
副映像ビデオデコーダは、主映像ビデオデコーダと同様の構成を持ち、入力される副映像ビデオストリームのデコードを行い、表示時刻（PTS）のタイミングでピクチャを副映像プレーンに書き出す。
【０６８３】
IGデコーダは、ソースパケタイザから入力されるTSパケットからインタラクティブグラフィックスストリームを抽出してデコードし、非圧縮のグラフィックスデータを表示時刻（PTS）のタイミングでIGプレーンに書き出す。
【０６８４】
PGデコーダは、ソースパケタイザから入力されるTSパケットからプレゼンテーショングラフィックスストリームを抽出してデコードし、非圧縮のグラフィックスデータを表示時刻（PTS）のタイミングでPGプレーンに書き出す。
【０６８５】
主音声デコーダは、緩衝バッファを有し、バッファにデータを蓄えながら、TSヘッダ、PESヘッダなどの情報を取り除いて、音声ストリームのデコード処理を行い、非圧縮のLPCM状態のオーディオデータを得て再生時刻（PTS）のタイミングで音声ミキサーに出力する。AVクリップに多重化されるオーディオストリームの圧縮符号化形式にはAC３、DTSなどがあるため、ストリームの属性に応じて、圧縮音声の復号化方式を切り替える。
【０６８６】
副音声デコーダは、主音声デコーダと同様の構成を持ち、入力される副音声ストリームのデコードを行い、表示時刻のタイミングで非圧縮のLPCMの状態のオーディオデータを音声ミキサーに出力する。AVクリップに多重化されるオーディオストリームの圧縮符号化形式にはDolbyDigitalPlus、DTS-HD  LBRなどがあるため、ストリームの属性に応じて、圧縮音声の復号化方式を切り替える。
【０６８７】
音声ミキサーは、主音声デコーダから出力される非圧縮音声データと副音声デコーダから出力される非圧縮音声データとをミキシング（音の重ね合わせ）をしてスピーカなどに出力する。
【０６８８】
イメージプロセッサは、プログラム実行部から転送されるグラフィックスデータ（PNG・JPEG）をデコードして、プログラム実行部から指定される表示時刻にしたがって、イメージプレーンに出力する。
【０６８９】
以上が本発明にかかる2D再生装置の構成である。
（３D再生の原理）
次に図８０を用いて家庭用ディスプレイで立体視を行う原理を説明する。立体視を実現する手法としては、ホログラフィ技術を用いる方法と、視差画像を用いる方式の大きく2つある。
【０６９０】
まず、１つ目のホログラフィ技術の特徴としては、人間が通常物体を認識するのと全く同じように物体を立体として再現することができるが、動画生成に関しては、技術的な理論は確立しているが、ホログラフィ用の動画をリアルタイムで生成する膨大な演算量を伴うコンピューター、及び１mmの間に数千本の線を引けるだけの解像度を持ったディスプレイデバイスが必要であるが、現在の技術での実現は非常に難しく、商用として実用化されている例はほとんどない。
【０６９１】
２つ目の視差画像を用いた方式で、右目に入る映像と、左目に入る映像を各々用意し、それぞれの目に対応したピクチャーだけが入るようにして立体視を行う方法である。図８０でユーザーが顔の中央の延長線上にある、比較的小さな立方体を見ている様子を上から見た図であり、右上の図は左目が見た場合の例を示しており、右下の図は同じ立方体を右目が見た場合の例を示している。
【０６９２】
この方式のメリットは、高々右目用と左目用の２つの視点の映像を準備するだけで立体視を実現できることにあり、技術的には、左右のそれぞれの目に対応した絵を、いかにして対応した目にだけ見せることができるかの観点から、いくつかの技術が実用化されている。
【０６９３】
ひとつは、継時分離方式と呼ばれるもので、ディスプレイ上に左目用及び右目用として時間軸方向で交互に表示される映像を、ユーザーは継時型ステレオ眼鏡（液晶シャッター付）を通して観察することにより、目の残像反応により左右のシーンを重ね、立体映像として認識する。より詳細には、ディスプレイ上には、左目用の映像が表示されている瞬間には、前述の継時型ステレオ眼鏡は、左目に対応する液晶シャッターを透過にし、右目に対応する液晶シャッターは遮光する。ディスプレイ上に右目用の映像が表示されている瞬間には、先ほどと逆に右目に対応する液晶シャッターを透過にし、左目に対応する液晶シャッターを遮光する。この方式では、左右の映像を時間軸方向で交互に表示させるために、例えば、通常の２次元の映画であれば1秒に２４枚の映像を表示させるのに対して、左右の映像合わせて１秒に４８枚の映像を表示させる必要がある。従って、この方式では、一画面の書き換えが比較的早いディスプレイにおいて好適であるが、１秒間に所定の回数書き換え可能なディスプレイであれば限定されない。
【０６９４】
また、別の方法としては、先ほどの継時分離方式では左右のピクチャーを時間軸方向で交互に出力していたのに対して、一画面中の縦方向に左目用のピクチャーと右目用のピクチャーを同時に交互に並べ、ディスプレイ表面にレンチキュラーレンズと呼ばれる蒲鉾上のレンズを通して、左目用のピクチャーを構成する画素は左目だけに結像し、右目用のピクチャーを構成する画素は右目だけに結像するようにすることで、左右の目に視差のあるピクチャーを見せ、３Dとしてみることができる方式である。なお、レンチキュラーレンズだけでなく、同様の機能を持たせたデバイス、例えば液晶素子を用いてもよいし、また左目用の画素には縦偏光のフィルター、右目用の画素には横偏光のフィルターを設置し、視聴者は、左目用には縦偏光、右目用には横偏光のフィルターを設置した偏光メガネを用いてディスプレイを見ることによって立体視が可能となる。
【０６９５】
この視差画像を用いた立体視は、既に遊園地の遊具などで一般的に使用されており、技術的にも確立されているため、家庭における実用化に最も近いものと言える。なお、視差画像を用いた立体視のための方法はこの他に非接触モード色分離方式などさまざまな技術が提案されており、本実施の例においては、継時分離方式あるいは偏光メガネ方式を例として用いて説明するが、視差画像を用いる限りこれら２方式に限定するものではない。
【０６９６】
本実施の例では、立体視に使う視差画像を情報記録媒体に格納する方法を説明する。ここでは、左目用の画面が格納された映像を「左目映像」、右目用の画面が格納された映像を「右目映像」、両方の映像のことを「3D映像」と呼ぶことにする。（2D/３D表示の切り替え）
次に本発明に係る記録媒体であるBD-ROMの、3D映像を格納するためのデータ構造について説明する。
【０６９７】
データ構造の基本部分は、3D映像を格納するためのデータ構造と同じであり、拡張または異なる部分を中心に説明する。3D映像を格納したBD-ROMに対して、2D映像のみを再生することができる再生装置を2D再生装置、2D映像と3D映像をどちらも再生できる再生装置を2D/３D再生装置として説明を行う。
【０６９８】
以下に、立体視映像を再生するためにBD-ROMにおけるインデックスファイル（Index.bdmv）について説明する。図９８は、立体視映像を再生するためにBD-ROMにおけるインデックスファイルの一例を示す図である。同図の例では、プレイリストとして、２Ｄ映像を再生する経路が記載された２Ｄプレイリスト２６０１と、立体視映像を再生する経路が記載された３Ｄプレイリスト２６０２が用意されている。ユーザからタイトルが選択され、実行されたＢＤプログラムファイルは、プログラムの中で、再生装置が立体視映像再生に対応しているか、更に、立体視映像再生に対応している場合にユーザが立体視映像再生を選択しているかを調べて、再生するプレイリストを切り替える。
【０６９９】
また、インデックスファイルには、「３Ｄ存在フラグ」と「２Ｄ／３Ｄ好みフラグ」が用意されている。３Ｄ存在フラグは、タイトル上に３Ｄ映像を再生するためのプレイリストが存在するかどうかを識別するフラグであり、これがＦＡＬＳＥの場合は、２Ｄ／３Ｄ再生装置は立体視映像再生の準備を行う必要がないため、ＨＤＭＩ認証などの処理を省くことで高速に処理を行うことができる。２Ｄ／３Ｄ好みフラグは、プレーヤとテレビが２Ｄでも３Ｄでも再生可能である状態において、コンテンツプロバイダーが、２Ｄで再生してほしいか、３Ｄで再生してほしいかを示す識別子である。このフラグが「３Ｄ」を示す場合は、２Ｄに遷移する必要がないためＨＤＭＩ認証を早く行うことができる。一般にプレーヤとテレビのＨＤＭＩの認証ではフレームレート等のビデオストリーム属性が異なると大きく遅延が発生する。よって、２Ｄ映像の再生に一度遷移した後３Ｄ映像の再生に遷移する場合には、大きな遅延が発生することとなる。そこで、このように、２Ｄ／３Ｄ好みフラグを用いることで、２Ｄ映像の再生遷移を省ければ、ＨＤＭＩ認証の遅延時間を回避することができる。
【０７００】
なお、「３Ｄ存在フラグ」と「２Ｄ／３Ｄ好みフラグ」はインデックスファイル全体に対して設定するのではなく、タイトル毎に設定できるとしても良い。
図９９はＢＤプログラムファイルのプログラムでの２Ｄプレイリストと３Ｄプレイリストの選択フローを示している。
【０７０１】
Ｓ２７０１にて、PSR24の値をチェックし、値が０の場合は該当再生装置は２Ｄ再生装置であるため、２Ｄプレイリストを再生し、値が１の場合はＳ２７０２に進む。
Ｓ２７０２にて、ユーザに２Ｄ映像の再生を希望するか、３Ｄ映像の再生を希望するかを、メニュー画面を表示して問い合わせる。ユーザのリモコンなどでの選択の結果、２Ｄ映像の再生を希望する場合は２Ｄプレイリストを再生し、３Ｄ映像の再生を希望する場合はＳ２７０３に進む。
【０７０２】
Ｓ２７０３にて、ディスプレイが３Ｄ映像の再生に対応しているかをチェックする。例えば、ＨＤＭＩにて結線を行い、再生装置がディスプレイに対して、３Ｄ映像再生に対応しているかどうかを問い合わせる。３Ｄ映像の再生に対応していない場合は、２Ｄプレイリストを再生するが、ユーザに対してテレビ側の準備が整っていない旨をメニュー画面などで提示しても良い。３Ｄ映像の再生に対応している場合は、３Ｄプレイリストを再生する。
【０７０３】
また、２Ｄ再生装置には、PSR13にパレンタルレベルが設定でき、これによって、適切な年齢以上のユーザのみが該当のＢＤ−ＲＯＭディスクを再生できるように制御することができるとしたが、これに加えて、２Ｄ／３Ｄ再生装置には、３ＤパレンタルレベルPSR30が用意されている。３Ｄパレンタルレベルには、PSR13と同様に２Ｄ／３Ｄ再生装置を利用するユーザの年齢が格納される。ＢＤ−ＲＯＭディスクのタイトルのＢＤプログラムファイルは、PSR13に加えて、このPSR30を使って再生するかしないかを判断する。PSR30は３Ｄ映像再生に関するパレンタルレベルであるため、２Ｄ映像再生においてはPSR13によってパレンタルレベルが制御される。このように二つのパレンタルレベルを設けることにより、幼い成長中の子供への身体的な影響を考えて、例えば「幼い子供には３Ｄ映像は見せたくないが、２Ｄ映像は見せてもよい」というような制御を行うことができる。例えば、図９９のフローに、Ｓ２７０３でＹＥＳとなった後に、PSR30を参照して、再生するプレイリストを選択するようにしても良い。
【０７０４】
なお、PSR30にはPSR13と同様に年齢情報を格納するとしたが、PSR30には、単に３Ｄ映像を禁止するか否かを設定できるようにしてもよい。
また、「ユーザが２Ｄ／３Ｄのどちらを好んで再生するか」を示す情報を、同様にシステムパラメータ（ここでは、PSR31とする）に設定する。PSR31には、ユーザが２Ｄ／３Ｄ再生装置のＯＳＤなどを通じて、ユーザが２Ｄ／３Ｄのどちらを優先して再生したいかを設定する。ディスプレイが３Ｄ映像再生に対応している場合には、PSR31の情報を使って、もし３Ｄ映像を優先する場合には、２Ｄ映像に遷移する必要がないためＨＤＭＩ認証を早く行うことができ、３Ｄ映像の再生処理を早く行うことができる。また、ＢＤプログラムがこのPSR31を参照して、２Ｄを再生するか、３Ｄを再生するかを決定することで、ユーザの好みに合った再生処理が可能となる。
【０７０５】
なお、ＢＤプログラムが、PSR31を参照して、ＢＤプログラムが表示するメニューのデフォルト選択ボタンを決定してもよい。例えば、「２Ｄ映像を再生するか」、「３Ｄ映像を再生するか」の分岐を促すメニューの場合には、PSR31の値が「２Ｄ」であれば「２Ｄ映像再生」のボタンにカーソルを合わせ、PSR31の値が「３Ｄ」であれば「３Ｄ映像再生」のボタンにカーソルを合わる。
【０７０６】
なお、「ユーザが２Ｄ／３Ｄのどちらを好んで再生するか」は、再生するユーザ毎に異なるので、２Ｄ／３Ｄ再生装置に誰がみているのかを特定する手段があれば、現在見ているユーザに合わせてPSR31を設定してもよい。例えば、２Ｄ／３Ｄ再生装置を家族３人（父、母、子）が使うことを想定し、２Ｄ／３Ｄ再生装置は各ユーザ毎にアカウントを管理しているケースがある。この場合に、ログインしているユーザに応じて、PSR31を更新することで、実際に使っている人の好みに応じた制御を行える。
【０７０７】
なお、「ユーザが２Ｄ／３Ｄのどちらを好んで再生するか」を示す情報を、２Ｄか３Ｄかの２択ではなく、レベルを設けてもよい。例えば、「常に2D」、「どちらかというと2D」、「どちらかというと3D」、「常に3D」の４段階にわけてもよい。このようにすることで、よりユーザの好みにあうように２Ｄ／３Ｄ再生装置の再生処理を行うことができる。例えば、再生装置の状態を示すシステムパラメータであるPSR25を設定するようなケースでは、PSR31が「常に２Ｄ」ならば、常にPSR25も２Ｄモードを設定し、PSR31が「常に３Ｄ」ならば、常にPSR25も３Ｄモード（Ｌ／ＲモードかＤＥＰＴＨモード）を設定するようにする。
【０７０８】
次に、図８１を用いながらプレゼンテーショングラフィックスの構成について説明する。図８１のように表示する字幕エントリは、複数の字幕データエントリから構成される。各字幕データエントリは、コンポジション情報、ウィンドウ情報、パレット情報、オブジェクト情報から構成される。コンポジション情報は字幕データの画面構成を定義する情報であり、オブジェクトのクロッピング情報、クロッピングされたオブジェクトの表示位置、参照するウィンドウを特定するウィンドウＩＤ、参照するパレットを特定するパレットＩＤ，参照するパレットを特定するオブジェクトＩＤが格納される。ウィンドウ情報には、ウィンドウＩＤと共に、デコーダが描画する領域を定義するウィンドウ領域が格納される。オブジェクト情報には、オブジェクトＩＤと共に、グラフィックスイメージが格納されている。グラフィックスイメージは、256色のインデックスカラーで構成されたイメージデータであり、ランレングス圧縮などの圧縮方法を用いて圧縮されている。パレット情報には、パレットＩＤと共に、オブジェクトに利用される色のテーブル情報（CLUT)が格納される。テーブルは２５６色が格納可能であり、一つ一つの色はカラーＩＤで参照できる。カラーＩＤは０から２５５までの値をとるが、２５５は固定の無色透明が割り当てられている。
【０７０９】
図８２は、プレゼンテーショングラフィックスのデコード処理の流れを説明する図である。まず、STEP1で、各字幕データエントリは、コンポジション情報の参照オブジェクトＩＤにより指定される、圧縮されたグラフィックスイメージをデコードする。次にSTEP2で、コンポジション情報のクロッピング情報を用いて、グラフィックスイメージをクロッピングし、必要なデータだけを切り出す。次にSTEP3でコンポジション情報の表示位置に従い、グラフィックスプレーンへの表示位置を決定する。次にSTEP4で、コンポジション情報の参照ウィンドウＩＤで指定される、ウィンドウ情報のウィンドウ領域の範囲だけグラフィックスプレーンにオブジェクトデータを描画する。次にSTEP5で、コンポジション情報の参照パレットＩＤで指定されるパレット情報を用いて、グラフィックスプレーンに色を付けて表示を行う。なお、表示を行うタイミングは、コンポジション情報が格納されるＰＥＳパケットのＰＴＳのタイミングで行われる。
【０７１０】
次に、字幕表示の改良について説明する。
PGプレーンに1plane＋Offset方式を採用する場合、字幕データを作成には、ビデオ映像の奥行きにあわせて、オフセットメタデータを調整する必要があるため、データ作成が困難という課題があった。
【０７１１】
そこで、以下では、画面中で映画の本編映像に利用されない黒枠を利用し、その黒枠領域を上側もしくは下側に集め、そこに字幕データを表示する方法について説明する。
ビデオストリームに挿入される黒枠は無駄な領域となるため、ここに字幕を表示してもよいが、図４の（ａ）の右図に示すように、上下にはそれぞれ１３１ピクセルの黒枠しかないため、字幕データを入れるにはやや小さい。そこで、図４の（ｂ）、（ｃ）のように、本編映像を上もしくは下にシフトし、シフトした領域に黒色を挿入することにより、上下にある黒枠を、上もしくは下にまとめる。このようにすることによって、字幕データを入れるのに十分な大きさの黒枠を用意することができる。
【０７１２】
それでは、次にこのコンセプトを実現するためのデータ構造について説明する。
データ構造の基本部分は、これまでの実施の形態で説明した３Ｄ映像を格納するためのデータ構造と同じであるため、拡張または異なる部分を中心に説明する。また、以降では、ＰＧについての説明を行うが、この方法は、ＰＧをＩＧや副映像に置き換えることで、同様に適用可能である。
【０７１３】
図８３は、３Ｄプレイリストのプレイアイテムの構成を示しており、ストリーム選択テーブルにおけるＰＧストリームのストリーム付加情報１３１１に、「ビデオ上移動時シフト値（PG_v_shift_value_for_Up）」、「ビデオ上移動時シフト値（PG_v_shift_value_for_Down）」が含まれる。「ビデオ上移動時シフト値（PG_v_shift_value_for_UP）」は、主映像プレーンが上方向にシフトした場合（黒枠が下側に集まる場合）のＰＧプレーンのシフト量であり、「ビデオ上移動時シフト値（PG_v_shift_value_for_Down）」は、主映像プレーンが下方向にシフトした場合（黒枠が下側に集まる場合）の、ＰＧプレーンのシフト量である。２Ｄ／３Ｄ再生装置は、この値に基づきＰＧプレーンのシフト量を調整する。プレーンの合成方法についての詳細は後述する。
【０７１４】
次に、２Ｄ／３Ｄ再生装置について説明する。図８４は、２Ｄ／３Ｄ再生装置内のプレーン合成の構成を示している。ここでは代表してＰＧプレーンを例に説明するが、副映像プレーン、ＩＧプレーン、イメージプレーンなどのどのプレーンにも適用できる。
【０７１５】
図８４に示す２Ｄ／３Ｄ再生装置内のプレーン合成には、２Ｄ／左目映像プレーンと右目映像プレーンのクロッピング処理を行う映像プレーンクロッピング部９７０１、ビデオのシフトモードを記すPSR32、ＰＧプレーンのクロッピング処理を行うＰＧプレーンクロッピング部９７０２、ＰＧプレーンなど各プレーンのシフト量を記したPSR33が含まれる。
【０７１６】
図２５の（ａ）のPSR32はビデオのシフトモード(video_shift_mode)を示す２Ｄ／３Ｄ再生装置のシステムパラメータである。PSR32のvideo_shift_modeには、Keep、Up、Downの３つのモードが存在し、PSR32の値が0ならばKeep、PSR32の値が1ならばUp、ＳＲＰＭ（３２）の値が２ならばDownを示す。映像プレーンクロッピング部９７０１は、PSR32に記されたビデオのシフトモードに従って、映像プレーンのクロッピング処理を行う。PSR32の値は、ＢＤプログラムのＡＰＩやコマンドを通じて設定される。
【０７１７】
PSR32がKeepを示す場合には、図２５（ｂ）の（１）に示すように、映像プレーンクロッピング部９７０１は、２Ｄ／左目映像プレーンと右目映像プレーンは変更せずにそのまま他のプレーンとの重畳処理に進む。PSR32がUpを示す場合には、図２５（ｂ）の（２）に示すように、映像プレーンクロッピング部９７０１は、２Ｄ／左目映像プレーンと右目映像プレーンを、それぞれのプレーンを上方向にずらして、上領域の黒枠を切り取り、下領域に黒枠を挿入してプレーンとの重畳処理に進む。これにより黒枠をプレーンの下方向に集めることができる。また、PSR32がDownを示す場合には、図２５（ｂ）の（３）に示すように、映像プレーンクロッピング部９７０１は、２Ｄ／左目映像プレーンと右目映像プレーンを、それぞれプレーンを下方向にずらして、下領域の黒枠を切り取り、上領域に黒枠を挿入してプレーンとの重畳処理に進む。これにより黒枠をプレーンの上方向に集めることができる。
【０７１８】
図３６は、各プレーンの縦軸方向のシフト量を示すシステムパラメータ（ここではPSR33とする）である。PSR33のシフト量はプレーン毎に、ビデオが上方向にシフトする場合のプレーンシフト量と、ビデオが下方向にシフトする場合のプレーンシフト量が用意されている。例えば、ＰＧプレーンにはPG_shift_value_for_UP、PG_shift_value_for_Downが用意されている。この値は、ストリーム切り替えによって、プレイリストに設定された値（PG_v_shift_value_for_Up、PG_v_shift_value_for_Down）によって、PSR33の値は更新される。また、PSR33は、ＢＤプログラムのＡＰＩやコマンドを通じて設定してもよい。
【０７１９】
図８４で記したＰＧプレーンクロッピング部９７０２は、PSR33のＰＧプレーンのシフト量に応じて、プレーンのシフトを実行する。ＰＧプレーンクロッピング部９７０２のシフト処理および映像プレーンとの合成処理については、図１１と図３８とに記している。図１１に示すようにPSR32のvideo_shift_modeがKeepの場合には、ＰＧプレーンクロッピング部９７０２は、処理を行わずにそのまま映像プレーンとの合成処理を行う。図３８（ａ）に示すようにPSR32のvideo_shift_modeがUpの場合には、ＰＧプレーンクロッピング部９７０２は、PSR33に格納されたPG_shift_value_for_Upの値を使い、ＰＧプレーンのシフト処理を行い、プレーンをはみ出る箇所を切り出して、映像プレーンと重畳する。このようにすることで、字幕の表示位置を２Ｄ再生時よりも下側に持っていくことができ、下側にできる黒枠の領域に字幕を適切な位置に表示することが可能となる。図３８（ｂ）に示すようにPSR32のvideo_shift_modeがDownの場合には、ＰＧプレーンクロッピング部９７０２は、PSR33に格納されたPG_shift_value_for_Downの値を使い、ＰＧプレーンのシフト処理を行い、プレーンをはみ出る箇所を切り出して、映像プレーンと重畳する。このようにすることで、字幕の表示位置を２Ｄ再生時よりも上側に持っていくことができ、上側にできる黒枠の領域に字幕を適切な位置に表示することが可能となる。
【０７２０】
なお、図８４には、飛び出しを制御する横軸方向のオフセット処理（１プレーン＋オフセット方式）を省いているが、横軸方向のオフセット値によるクロッピング処理の仕組みが追加されていてもよい。このようにすることで、黒枠に表示する字幕であっても、飛び出しを持たせることができる。
【０７２１】
なお、図８４のような黒枠に表示する字幕の場合には、横軸方向のオフセット値は固定的にするとしてもよい。この場合には、図８３の付加情報にｘ軸方向のシフト量を定義し、その値をPSR33と同様な方法でPSRに格納し、その値を使って、横軸方向のオフセット処理を行ってもよい。このようにすることでデータ作成を簡易に行える。
【０７２２】
なお、図８４で説明したプレーン合成の構成では、Ｙ軸方向のシフト量をPSR33に格納するとしたが、システムパラメータを設けずに、ＰＧプレーンクロッピング部９７０２が直接プレイリストを参照する構成にしてもよい。
【０７２３】
なお、video_shift_modeがUpもしくはDownの場合の映像プレーンのシフト量は、上下にある黒枠のサイズ（図４の例では131ピクセル）固定としてもよいが、オーサもしくはユーザが好きに設定できてもよい。新たにシステムパラメータを用意し、そこにシフト量を格納し、ＢＤプログラムやプレーヤＯＳＤによって設定できてもよい。
【０７２４】
なお、図８４で説明したプレーン合成の構成では、PSR33に格納された値を使って、プレーン全体をシフトする処理を説明したが、ＰＧのコンポジション情報に格納される表示位置に追加される値として利用してもよい。例えば、ＰＧのコンポジション情報の表示位置が（ｘ、ｙ）である場合に、video_shift_modeがKeepの場合には、ＰＧデコーダは該当の字幕データエントリを（ｘ、y＋PG_shift_value_for_UP）の位置に表示する。このように構成することで、プレーンをシフトするよりも処理を軽くすることができる。なお、このように利用する場合はPG_shift_value_for_UPをコンポジション情報に格納してもよい。
【０７２５】
なお、図３９に示すように、video_shift_modeがUp、Downの場合には、プレーンをシフトすることによって、切り取られる領域が発生するため、切り取られる領域に、字幕データが存在しないように制約するとよい。つまり、図３９の右側に示すように、点線で囲った領域以外は、切り取られる可能性があるため、ここには字幕データが表示されないようにＰＧの表示位置を制約する。領域の座標は、(0,PG_v_shfit_value_for_Down), (0,height+PG_v_sfhit_value_for_Up), (width,PG_v_shfit_value_for_Down), (width,height+PG_v_sfhit_value_for_Up)であらわされる。例えば、PG_v_sfhit_value_for_Upが-a、例えば、PG_v_sfhit_value_for_Downが+bとすれば、領域は、(0,b), (0,height-a), (width,b), (width,height-a)となる。ＰＧの制約としては、表示位置が上記領域を超えないこと、表示位置に表示するオブジェクトのサイズを加えたものが上記領域を超えないこと、ウィンドウの表示位置が上記領域を超えないこと、ウィンドウの表示位置にウィンドウサイズを加えたものが上記領域を超えないこと、などがある。このように制約することで、字幕がかけて表示されることを防ぐことができる。
【０７２６】
なお、図８５に示すように、video_shift_modeをストリーム選択情報のストリーム付加情報１３１１に追加してもよい。この場合には、２Ｄ／３Ｄ再生装置のプレーン合成処理の構成は、図８６のようになる。図８６にはPSR34が追加されている。これは、ビデオシフトをするかしないかのＯｎ／Ｏｆｆを示すフラグを格納する。つまり、PSR34が１ならばビデオシフトをすることを意味し、０ならばビデオシフトをしないことを意味する。ビデオシフトのＯｎ／ＯｆｆのフラグであるPSR34は、プログラム実行部によりメニューなどによって制御する。プレーヤのＯＳＤなどによるユーザオペレーションによって設定できてもよい。PSR32には、ビデオシフトモードが格納されるが、この値は、ＰＧのストリームの選択によって、選択された字幕ストリームの付加情報を元に設定される。映像プレーンクロッピング部９７０１は、PSR34がＯｎの場合には、PSR32に設定されたvideo_shift_modeに基づいて、映像プレーンのクロッピング処理を行う。PSR34がＯｆｆの場合には、クロッピング処理を行わない。このように構成することで、字幕毎に適切なvideo_shift_modeを設定することができる。
【０７２７】
なお、図８５に示すように、video_shift_modeをストリーム選択情報のストリーム付加情報１３１１に格納する場合には、ストリーム選択テーブルに登録されるＰＧストリームの順番を、video_shift_modeが同じ属性のものが固まるように行う。２Ｄ／３Ｄ再生装置のリモコンには一般的に字幕切り替えボタンがついており、ユーザが字幕切り替えボタンを押すたびに、ストリーム選択テーブルに登録されている字幕ストリームの順番で、シーケンシャルに切り替わるユーザオペレーションが定義されている。ユーザがこのリモコンの字幕切り替えボタンによって、字幕を切り替える場合に、ビデオプレーンが上、下に頻繁に動くと映像が見にくくなり、ユーザに対して不快感を与えることとなる。したがって、ストリーム選択テーブルに登録するＰＧストリームの順番は図１３に示すように同じvideo_shift_modeが連続するように固めて並べる。例えば、図１３の例では、字幕エントリ１〜３はvideo_shift_mode=Keepであり、字幕エントリ４〜５はvideo_shift_mode=Upであり、字幕エントリ６〜９はvideo_shift_mode=Downとなっている。このように同じビデオシフトモードの字幕を固めてならべることで、頻繁にビデオプレーンがシフトすることを防ぐことができる。
【０７２８】
なお、video_shift_modeがKeep, Up, Downと遷移する場合に、瞬時に切り替わるとユーザに対して不自然な印象を与えることとなる。よって、Keep, Up, Downが遷移する場合には、滑らかなエフェクトを変えて遷移することが好ましい。なお、この場合、ＰＧプレーンのシフト処理は、ビデオプレーンのシフトが完了してから適用することが好ましい。
【０７２９】
なお、本実施の形態では、動的に黒枠を上か下の領域に集める方法を説明したが、図８７上段のように本編映像を真ん中ではなく、少し上側に配置してビデオストリームを作成し、下側に黒枠を多めに配置しこの領域を字幕表示に利用するようにしてもよい。このようにすることで、字幕表示のために黒枠を動的に変更しなくてよいため、ビデオが上下に移動することがないためユーザに違和感を与えなくてすむ。
【０７３０】
なお、図８１の図を用いて説明したようにＰＧのストリームのパレット情報には、カラーＩＤ＝２５５は無色透明の色が固定で割り当てられるが、この値を２Ｄ／３Ｄ再生装置が制御して、黒枠字幕を作るようにしてもよい。具体的には、システムパラメータPSR37にカラーＩＤ＝２５５の色の値を格納し、２Ｄ／３Ｄ再生装置は、PSR37に応じて、ＰＧプレーンのカラーＩＤ＝２５５の色を変更するようにする。このようにすることで、図８７下段左図のように、字幕の背景色をカラーＩＤ＝２５５にしておけば、通常は透明色で背景が透けて見えるが、図８７下段右図のように、カラーＩＤ＝２５５を透過度のない色に変更すれば、字幕の背景色を変えることが可能である。PSR37の値は、ＢＤプログラムのメニュー画面等で設定可能である。
【０７３１】
(第９実施形態)
本実施形態では、前述の実施形態において説明された構造のデータを再生する再生装置に関して、集積回路３を用いて実現した構成例（図１００）について説明する。
【０７３２】
媒体IF部１は、媒体からデータを受信して（読み出して）、集積回路３に転送する。なお媒体IF部１は、前述の実施形態において説明した構造のデータを媒体から受信する。媒体IF部１は、例えば、媒体が光ディスクやハードディスクの場合はディスクドライブ、媒体がSDカードやUSBメモリ等の半導体メモリの場合はカードIF、媒体がCATV等を含む放送波の場合はCANチューナーやSiチューナー、媒体がイーサネット(登録商標)、無線LAN、無線公衆回線等のネットワークの場合は、ネットワークIF、等である。
【０７３３】
メモリ２は、媒体から受信した（読み出した）データを一旦格納したり、集積回路３における処理途中のデータを一時的に格納するメモリで、例えばSDRAM(Synchronous Dynamic Random Access Memory)、DDRx SDRAM(Double-Date-Ratex Synchronous Dynamic Random Access Memory;x=1,2,3・・・)等が用いられる。なおメモリ２は、任意の個数備えていればよく、必要に応じて単数でも複数でも構わない。
【０７３４】
集積回路３は、媒体IF部１から転送されたデータに対して映像・音声処理を施すシステムLSIで、主制御部６、ストリーム処理部５、信号処理部７、メモリ制御部９、AV出力部８等から構成される。
【０７３５】
主制御部６は、タイマ機能や割り込み機能を有するプロセッサコアを有し、プロセッサコアはプログラムメモリ等に格納されたプログラムに従って、集積回路３全体の制御を行う。なお、プログラムメモリ等には、予めOS等の基本ソフトが格納されている。
【０７３６】
ストリーム処理部５は、主制御部６の制御の下、媒体から媒体IF部１経由で転送されたデータを受信し、集積回路３内のデータバスを経由してメモリ２に格納したり、受信したデータを映像系データ、音声系データに分離する。前述したとおり媒体上のデータは、レフトビュービデオストリームを含む2D/L用のAVクリップとライトビュービデオストリームを含むR用のAVクリップが、幾つかのエクステントに分割された状態で交互に配置されたものである。従って、主制御部６は、集積回路３がレフトビューストリームを含む左目用データを受信した場合は、メモリ２の第１の領域にデータが格納されるように、ライトビュービデオストリームを含む右目用データを受信した場合は、メモリ２の第２の領域にデータが格納されるように制御する。ここで、左目用データは左目用エクステントに属しており、右目用データは右目用エクステントに属している。なお、メモリ２における第１、第２の領域は単一のメモリが論理的に領域分割されたものでもよいし、物理的に異なるメモリでもよい。また、本実施形態においては、レフトビュービデオストリームを含む左目用データをメインビューデータ、ライトビュービデオストリームを含む右目用データをサブビューデータとして説明を続けるが、右目用データがメインビューデータ、左目用データがサブビューデータであっても構わない。また媒体中、グラフィクスストリームは、メインビューデータ及びサブビューデータのいずれか一方、もしくは両方に多重化されているか、単独のストリームとして存在する。
【０７３７】
信号処理部７は、主制御部６の制御の下、ストリーム処理部５が分離した映像系データ、音声系データに対し、適切な方式でデコードする。映像系データは、MPEG-2、MPEG-4 AVC、MPEG4-MVC、SMPTE VC-1などの方式を使って符号化記録されており、また音声系データは、ドルビーAC-3、Dolby Digital Plus、MLP、DTS、DTS-HD、リニアPCMなどの方式で圧縮・符号化記録されているので、信号処理部７はこれらに対応した方式でデコードする。なお、信号処理部７のモデルは、例えば第1実施形態の図１６における各種デコーダがそれに当たる。
【０７３８】
メモリ制御部９は、集積回路３内の各機能ブロックからメモリ２へのアクセスを調停する。
AV出力部８は、主制御部６の制御の下、信号処理部７においてデコードされた映像系データを重畳したり、映像系及データのフォーマット変換等をして集積回路３外へ出力する。
【０７３９】
図１０１は、ストリーム処理部５の代表的な構成を示す機能ブロック図である。ストリーム処理部５は、デバイス・ストリームIF部５１、多重分離部５２、切替部５３等を備える。
【０７４０】
デバイス・ストリームIF部５１は、媒体IF部１と集積回路３間のデータ転送用インターフェースであり、例えば、媒体が光ディスクやハードディスクの場合はSATA(Serial Advanced Technology Attachment)、ATAPI(Advanced Technology Attachment Packet Interface)、PATA(Parallel Advanced Technology Attachment)、媒体がSDカードやUSBメモリ等の半導体メモリの場合はカードIF、媒体がCATV等を含む放送波などの場合はチューナーIF、媒体がイーサネット(登録商標)、無線LAN、無線公衆回線等のネットワークの場合は、ネットワークIF、等である。なお、媒体の種類によっては、デバイス・ストリームIF部５１が媒体IF部１の機能の一部を肩代わりしても構わないし、媒体IF部１が集積回路３に内蔵されていても構わない。
【０７４１】
多重分離部５２は、媒体から転送された映像・音声を含む再生データを映像系データと音声系データに分離する。前述の各エクステントは、映像・音声・PG（字幕）・IG（メニュー）等の各ソースパケットから構成されており（但し、サブビューデータは音声を含まない場合もある）、各ソースパケットに含まれているPID（識別子）に従って、映像系・音声系の各TSパケットに分離し、信号処理部７に転送する。処理済のデータは、直接もしくは一旦メモリ２に格納された後、信号処理部７に転送される。なお、多重分離部５２のモデルは、例えば第８実施形態の図７９におけるソースデパケタイザ、PIDフィルタがそれに当たる。また、メインビューデータやサブビューデータに多重化されていない単独のストリームとして存在するグラフィクスストリームは、多重分離部５２を介さずに信号処理部７に転送される。
【０７４２】
切替部５３は、デバイス・ストリームIF部５１が左目用データを受信した時はメモリ２の第１の領域に格納されるように、右目用データを受信した時はメモリ２の第２の領域に格納されるように、出力先（格納先）を切り替える。ここで、切替部５３は例えばDMAC(Direct Memory Access Controller)である。図１０２は切替部５３がDMACであった場合の切替部５３周辺の概念図である。DMACは、主制御部６の制御の下、デバイス・ストリームIF部が受信したデータとそのデータ格納先アドレスをメモリ制御部９に対して送信する。具体的には、デバイス・ストリームIF部が左目用データを受信した時はアドレス１（第１の格納領域）を、右目用データを受信した時はアドレス２（第２の格納領域）をメモリ制御部９に送信することで、受信データによってその出力先（格納先）を切り替えている。メモリ制御部９は、DMACから送られてきた格納先アドレスに従ってメモリ２にデータを格納する。なお、主制御部６の代わりに切替部５３を制御する専用の回路を設けても構わない。
【０７４３】
ここでは、ストリーム処理部５の代表的な構成として、デバイス・ストリームIF部５１、多重分離部５２、切替部５３について説明したが、受信した暗号化データや鍵データ等を復号する暗号エンジン部、媒体〜再生装置間の機器認証プロトコル等の実行制御や秘密鍵を保持するセキュア管理部、ダイレクトメモリアクセス用のコントローラ等を更に備えていてもよい。これまでは媒体から受信したデータをメモリ２に格納する際に、切替部５３が左目用データ・右目用データかによって格納先を切り替える場合について説明してきたが、媒体から受信したデータを一旦メモリ２に格納した後に、多重分離部５２へデータを転送する際に、左目用データ・右目用データを振り分けてもよい。
【０７４４】
図１０３は、AV出力部８の代表的な構成を示す機能ブロック図である。AV出力部８は、画像重畳部８１と、ビデオ出力フォーマット変換部８２、オーディオ・ビデオ出力IF部８３等を備える。
【０７４５】
画像重畳部８１は、デコードされた映像系のデータを重畳する。具体的には、レフトビュービデオデータもしくはライトビュービデオデータと、PG（字幕）、IG（メニュー）をピクチャ単位で重畳する。画像重畳部８１のモデルは、例えば第１実施形態、図２０−図２２などである。より具体的には、デコードされたビデオデータ及び字幕データは、メモリ２中の各プレーンに描画されるデータを格納する領域に格納される。ここで、プレーンはメモリ２中の領域であることもあれば、仮想的な空間であることもある。画像重畳部８１は、レフトビュープレーンと対応する字幕プレーン、ライトビュープレーンと対応する字幕プレーンとを重畳する。そして、レフトビュープレーン及びライトビュープレーンは、重畳する字幕データ（ストリーム）に対応した領域確保フラグに基づいて、領域確保フラグが示す字幕データの表示領域に字幕データが重畳されるよう字幕データと重畳される（例えば、第１実施形態、図１２等）。即ち、領域確保フラグが示す字幕データの表示領域が上端である場合は、レフトビュープレーン及びライトビュープレーンは垂直座標の下方向にシフトされて字幕データと重畳され、領域確保フラグが示す字幕データの表示領域が下端である場合は、レフトビュープレーン及びライトビュープレーンは垂直座標の上方向にシフトされて字幕データと重畳される。
【０７４６】
ビデオ出力フォーマット変換部８２は、デコードされた映像系データに対して、拡大または縮小するリサイズ処理、走査方式をプログレッシブ方式及びインターレース方式の一方から他方に変換するＩＰ変換処理、ノイズを除去するノイズリダクション処理、フレームレートを変換するフレームレート変換処理などを必要に応じて行う。
【０７４７】
オーディオ・ビデオ出力IF部８３は、画像重畳やフォーマット変換された映像系データとデコードされた音声系データとに対して、データ送信形式に合わせてエンコード等を行う。なお、後述するようにオーディオ・ビデオ出力IF部８３は、一部集積回路３外に備えられても構わない。
【０７４８】
図１０４は、AV出力部８もしくは再生装置のデータ出力部分を、より詳細に示した構成例である。本実施の形態における集積回路３及び再生装置は、複数の映像系データ、音声系データのデータ送信形式に対応している。図１０３におけるオーディオ・ビデオ出力IF部８３は、アナログビデオ出力IF部８３a、アナログオーディオ出力IF部８３c、デジタルオーディオ・出力IF部８３bに対応する。
【０７４９】
アナログビデオ出力IF部８３aは、画像重畳処理や出力フォーマット変換処理された映像系データを、アナログ映像信号形式に変換・エンコードし、出力する。例えば、NTSC、PAL、SECAMの３方式のいずれかに対応したコンポジットビデオエンコーダー、Ｓ映像信号（Y/C分離）用エンコーダー、コンポーネント映像信号用エンコーダーや、DAC（D/Aコンバータ）等がそれに当たる。
【０７５０】
デジタルオーディオ・ビデオ出力IF部８３bは、デコードされた音声系データと画像重畳処理や出力フォーマット変換された映像系データを一体化、更に暗号化した後、データ送信規格に合わせてエンコードし、出力する。例えば、HDMI(High−Definition Multimedia InterFace)等がそれに当たる。
【０７５１】
アナログオーディオ出力IF部８３cは、デコードされた音声系データをD/A変換しアナログ音声データを出力するオーディオDAC等がそれに当たる。
これら映像系データ及び音声系データの送信形式は、表示装置・スピーカー４側がサポートしているデータ受信装置（データ入力端子）に依存して切り替えたり、またユーザーの選択によって送信形式を切り替えることが可能である。更に、単一の送信形式だけではなく、並行して複数の送信形式にて同一のコンテンツに対応したデータを送信することも可能である。
【０７５２】
ここでは、AV出力部８の代表的な構成として、画像重畳部８１、ビデオ出力フォーマット変換部８２、オーディオ・ビデオ出力IF部８３について説明したが、フィルタ処理、画面合成、曲線描画、３Ｄ表示等のグラフィックス処理を行うグラフッィクスエンジン部等を更に備えていてもよい。
【０７５３】
以上が、本実施の形態における再生装置の構成についての説明である。なお、前述の集積回路３に含まれる各機能ブロックは全てが内蔵されていなくても良いし、逆に図１００のメモリ２が集積回路３に内蔵されていてもよい。また、本実施形態においては、主制御部６と信号処理部７は異なる機能ブロックとして説明してきたが、主制御部６が信号処理部７の処理の一部を行っても構わない。
【０７５４】
また、例えば図１０７のように、本実施の形態における再生装置の処理を表示装置において行っても構わない。その際、媒体IF部１が受信したデータは集積回路３によって信号処理され、処理された映像系データは表示駆動部１０を経由して表示パネル１１を通して出力され、処理された音声系データは、スピーカー１２を通して出力される。ここで、AV出力部８は例えば図１０８のように構成され、集積回路３内部もしくは外部のオーディオ出力IF部８５及びビデオ出力IF部８４を通してデータ転送が行われる。なお、オーディオ出力IF部８５及びビデオ出力IF部８４をそれぞれ複数備えていてもよいし、ビデオとオーディオ共通のIF部を備えていてもよい。
【０７５５】
また、集積回路３における制御バスやデータバスの経路は、各処理ブロックの処理手順や処理内容によって任意に配置されるが、例えば図１０５のように、各処理ブロックどうしを直接結ぶようにデータバスを配置してもよいし、図１０６のように各処理ブロックどうしをメモリ２（メモリ制御部９）を介して結ぶようにデータバスを配置してもよい。
【０７５６】
また、集積回路３は、複数のチップを一つのパッケージに封止し、見かけ上一つのLSIにしたマルチチップ・モジュールであっても構わない。
また、LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０７５７】
次に、以上のように構成された再生装置の動作について説明する。
図１０９は、媒体からデータを受信し（読み出し）、デコードした後に、映像信号及び音声信号として出力する再生動作手順を簡単に示すフローチャートである。
【０７５８】
Ｓ１：媒体からデータを受信する（読み出す）（媒体IF部１、ストリーム処理部５）。
Ｓ２：Ｓ１において受信された（読み出された）データを各種データ（映像系データ・音声系データ）に分離する（ストリーム処理部５）。
【０７５９】
Ｓ３：Ｓ２において分離された各種データを適切な形式でデコードする（信号処理部７）。
Ｓ４：Ｓ３においてデコード処理された各種データのうち、映像系のものについて重畳処理を行う（AV出力部８）。
【０７６０】
Ｓ６：Ｓ２〜Ｓ５において処理された映像系データ及び音声系データを出力する（AV出力部８）。
図１１０は、より詳細に再生動作手順を示したフローチャートである。各動作・処理は、主制御部６の制御の下、行われる。
【０７６１】
Ｓ１０１：ストリーム処理部５のデバイス・ストリームIF部５１は、媒体IF部１を通して媒体に格納されている再生されるデータ以外の、データを再生するために必要なデータ（PLAYLIST、CLIPINF等）を受信し（読み出し）、メモリ２に格納する（媒体IF部１、デバイスIF部５１、メモリ制御部９、メモリ２）。
【０７６２】
Ｓ１０２：主制御部６は、受信されたCLIPINFに含まれるストリーム属性情報から、媒体に格納されている映像データ及び音声データの圧縮形式を認識し、対応するデコード処理ができるように信号処理部７の初期化を行う（主制御部６）。
【０７６３】
Ｓ１０３：ストリーム処理部５のデバイス・ストリームIF部５１は、媒体IF部１を通して媒体に格納されている映像・音声など再生されるデータを受信し（読み出し）、切替部５３、メモリ制御部９を経由してメモリ２に格納する。なお、データはエクステント単位で受信し（読み出され）、左目用データを受信した（読み出した）時は第１の領域へ、右目用データを受信した（読み出した）時は第２の領域へ格納されるよう、主制御部６が切替部５３を制御し、切替部５３がデータの出力先（格納先）を切り替える（媒体IF部１、デバイスIF部５１、主制御部６、切替部５３、メモリ制御部９、メモリ２）。
【０７６４】
Ｓ１０４：メモリ２に格納されたデータは、ストリーム処理部５の多重分離部５２に転送され、多重分離部５２はストリームデータを構成するソースパケットに含まれるPIDに従って映像系（主映像、副映像、PG（字幕）、IG（メニュー））、音声系（音声、副音声）のいずれであるか認識し、TSパケット単位で信号処理部７の対応する各デコーダへ転送する（多重分離部５２）。
【０７６５】
Ｓ１０５：信号処理部７の各デコーダは、転送されてきたTSパケットに対して、適切な方式でデコード処理を行う（信号処理部７）。
Ｓ１０６：信号処理部７においてデコードされた映像系データのうち、レフトビュービデオストリーム及びライトビュービデオストリームに対応するデータを、表示装置４に合わせてリサイズする（ビデオ出力フォーマット変換部８２）。
【０７６６】
Ｓ１０７：Ｓ１０６においてリサイズされたビデオストリームと、PG（字幕）・IG（メニュー）、テキスト字幕とが重畳される（画像重畳部８１）。
Ｓ１０８：Ｓ１０７において重畳された映像データに対して、走査方式の変換であるＩＰ変換を行う（ビデオ出力フォーマット変換部８２）。
【０７６７】
Ｓ１０９：これまでの処理を行った映像系データ及び音声系データに対して、表示装置・スピーカー４のデータ出力方式、もしくは表示装置・スピーカー４へのデータ送信方式に従って、エンコードやD/A変換等を行う。例えば、映像系データ・音声系データをそれぞれ、アナログまたはデジタル出力に対応するために処理を行う。映像系データのアナログ出力としては、コンポジット映像信号やＳ映像信号やコンポーネント映像信号等をサポートしている。また映像系・音声系データのデジタル出力は、HDMIをサポートしている（オーディオ・ビデオ出力IF部８３）。
【０７６８】
Ｓ１１０：Ｓ１０９において処理された映像系データ及び音声系データを、表示装置・スピーカー４に送信、出力する（オーディオ・ビデオ出力IF部８３、表示装置・スピーカー４）。
【０７６９】
以上が、本実施の形態における再生装置の動作手順の説明である。なお、処理ごとに処理結果をメモリ２に一旦格納しても構わない。また、図１０７の表示装置で再生処理を行った場合も基本的に同様の動作手順であり、図１００の再生装置の各機能ブロックに対応する機能ブロックが同様の処理を行う。また、本動作手順では、ビデオ出力フォーマット変換部８２においてリサイズ処理及びIP変換処理を行う場合について説明したが、必要に応じて処理を省略しても構わないし、また他の処理（ノイズリダクション処理、フレームレート変換処理等）を行っても構わない。更に、可能なものについては処理手順を変更しても構わない。
【０７７０】
(備考)
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。
【０７７１】
（オフセットメタデータ）
各実施形態で説明したオフセットメタデータは、これまでに説明した形式に限らず他のデータ形式でも実現することができる。以下にオフセットメタデータの他のデータ形式を列挙する。
【０７７２】
図８９は、オフセットメタデータの第１のデータ形式を説明する図である。
第１のデータ形式では、オフセットメタデータをクリップ情報ファイルに格納する。この場合には、図８９の（ａ）に示すに、ＰＴＳと複数のoffset_idのオフセット量を一つのエントリとしたテーブル情報を持つようにしてもよい。具体的なsyntaxは図８９の（ｂ）に記している。
【０７７３】
図９０は、オフセットメタデータの第２のデータ形式を説明する図である。各実施形態で説明したオフセットメタデータは、各GOPの先頭のアクセスユニットに格納され、該当GOP内のフレームに適用されるとした。第２のデータ形式では、クリップ情報ファイルにオフセットメタデータを格納する場合に、図９０の（ａ）に示すようにエントリポイント毎に、次のエントリポイントまでのオフセットメタデータを格納する。具体的なsyntaxは図９０の（ｂ）に示すように、エントリポイントのＩＤであるEP_IDに対応付けた構成になっている。このように構成すると、EP_IDによってPTSを特定できるため、図８９のデータ形式に比べてPTSの値を格納する必要が無いためデータ量を圧縮できる。また、このような構成にすると、ビデオストリームのアクセスユニットとクリップ情報ファイルとの両方にオフセットメタデータを格納する場合に、格納されているオフセットメタデータが同じであることの検証が容易である。
【０７７４】
図９１は、オフセットメタデータの第３のデータ形式を説明する図である。各実施の形態では、オフセットメタデータにオフセットシーケンスID毎にオフセットシーケンスを格納し、ＰＧストリーム毎に参照オフセットシーケンスIDを使って、オフセット値を参照するとしたが、第３のデータ形式では、このようなオフセットメタデータをプレイリスト情報ファイルに格納する。図９１の（ａ）は、プレイリスト情報ファイルに格納するオフセットメタデータのsyntaxを示している。最初のループ１１２０１は、プレイアイテムのループである。number_of_offsets[playitem]はプレイアイテム中のオフセットエントリ数を示す。number_of_offset_id[playitem]はオフセットシーケンスIDの数を示す。２番目のループ１１２０２はプレイアイテム中のオフセットエントリのループである。一つのループ内の情報をオフセットエントリとする。offset_frame_numberは、プレイアイテム先頭からのビデオフレーム数を示す。offset_frame_numberはPTSでもよいが、フレーム数とすることでデータ量を圧縮できる。offset_frame_durationは、次のオフセットエントリまでのオフセット値が挿入される間隔を示す。number_of_suboffsetsはoffset_frame_number[i]から次のオフセットエントリまでの間隔に挿入されるオフセット値の数を意味する。図９１の（ｂ）にoffset_frame_number[i]、offset_frame_duration[i]、number_of_suboffsets[i]の関係を示している。オフセット値は、11203のループで示すように、オフセットID毎にオフセット値が格納される。なお、offset_frame_numberは、一つ前のオフセットエントリからの差分ビデオフレーム数としてもよい。
【０７７５】
図９２は、オフセットメタデータの第４のデータ形式を説明する図である。第４のデータ形式は、オフセットメタデータをプレイリスト情報ファイルに格納する他の形式であり、図９２の（ａ）に示すように、前のプレイアイテムと同じかどうかを示すフラグ（is_same_as_previous_playitem）を追加している。ＢＤ−ＲＯＭのループする動画メニューを作成する場合には、図９２の（ｂ）のように同じクリップを参照するプレイアイテムをあたかも無限ループするように、多数のプレイアイテムをプレイリスト内で繰り返す構成がとられる。この場合には、同じオフセットメタデータをプレイアイテム数用意すると、データ量が増加しすぎてしまい２Ｄ／３Ｄ再生装置のメモリ量の増加が必要となる。そこで、is_same_as_previous_playitemが1の場合には、２Ｄ／３Ｄ再生装置は一つ前のプレイアイテムのオフセットメタデータ情報を参照することでデータ量の削減が可能となる。
【０７７６】
図９３は、オフセットメタデータの第５のデータ形式を説明する図である。
第５のデータ形式は、オフセットメタデータをプレイリスト情報ファイルに格納する更に他の形式であり、図９３に示すように、同じオフセットメタデータを使うプレイアイテムへの参照ＩＤ(ref_playitem_id_of_same_offset_metadata）を追加している。２Ｄ／３Ｄ再生装置は、ref_playitem_id_of_same_offset_metadataがインバリッドを示す0xFFFFでない場合には、ref_playitem_id_of_same_offset_metadataが指すプレイアイテムと同じオフセットメタデータを適用する。このようにすることで、同じオフセットメタデータを持つ複数プレイアイテムに対して、一つのオフセットメタデータだけを定義すればよくなるためデータ量を圧縮できる。
【０７７７】
図９４は、オフセットメタデータの第６のデータ形式を説明する図である。
第６のデータ形式は、オフセットメタデータをプレイリスト情報ファイルに格納するまた更に他の形式である。
このデータ形式では、図９４に示すように、プレイアイテム単位でループするヘッダと、オフセットメタデータを格納する領域を分けている。プレイアイテムとオフセットメタデータは、offset_block_idで関連付けられている。これにより同じオフセットメタデータを使う複数のプレイアイテムがある場合に１つのオフセットメタデータを定義すればよくなるためデータ量を圧縮できる。また、ヘッダには該当のオフセットメタデータが格納されるファイルのアドレス値（start_address）を格納してもよい。このようにすることで、プレイアイテム単位でのアクセスが容易になる。
【０７７８】
尚、図８９から図９４に示したsyntaxでは、オフセットメタデータのエントリをoffset_direction,offset_valueで7bitとっているが、ある一連のオフセットメタデータに対する差分の形でオフセットメタデータを用意してもよい。こうすることで、offset_direction,offset_valueを小さくすることができる。
【０７７９】
なお、その他のデータ形式として、オフセットメタデータをオーディオウォータマークの技術を使ってオーディオストリーム上に埋め込むとしてもよい。または、ビデオウォータマークの技術を使ってビデオストリームに埋め込むとしても良い。
【０７８０】
（PGストリーム）
字幕の本数を減らしストリームの帯域増加を抑えるためには、１つのPGストリームを、1plane＋Offset方式で使用するPGストリームと、２プレーンＬ／Ｒ方式で使用する左右何れか一方のPGストリームとして供用することが有効である。
【０７８１】
しかし、このように構成した場合には、図９５に示すように左目用グラフィックス及び右目用グラフィックスの差が大きく奥行きが強い（ユーザ側に飛び出している）場所と、左目用グラフィックス及び右目用グラフィックスの差が小さく奥行きが弱い場所とが遷移する場合に、各グラフィックスは左右に動きを伴うことになる。図９５の例で、例えば、奥行きの弱いシーンから、奥行きの強いシーンに字幕データを動かす場合には、左目用グラフィックスは右方向に、右目用グラフィックスは左方向にずれることになる。この左目用グラフィックスを、２Ｄ表示用や1plane＋Offset方式の字幕に利用した場合には、同様に左側にずれることになり、ユーザに不自然な印象を与えることになる。
【０７８２】
そこで、２Ｄ表示用字幕および1plane＋Offset方式字幕を違和感なく表示するために、図９６のように表示位置が固定されるようにコンポジション情報の表示位置を設定する。また、２プレーンＬ／Ｒ方式の左目用ＰＧとして表示するためのオフセット(l_offset)を、コンポジション情報に別途用意する。そして、２プレーンＬ／Ｒ方式で表示する場合には、２Ｄ／３Ｄ再生装置は、コンポジション情報の表示位置に、上記オフセット値を足して表示する。このように構成することで、２Ｄ表示字幕、1plane＋Offset方式字幕、２プレーンＬ／Ｒ方式の左目用字幕を同じストリームを利用するようにした場合でも、どの表示モードで表示しても違和感なく表示することが可能となる。
【０７８３】
（飛び込み再生の高速化）
図９７の（ａ）は、FileBaseとFileDependentとのエクステントがインターリーブされている構成を示しており、ディスク上のデータ領域Ｒ［２］の先頭に付加されている三角形はFileDependentのエントリポイントのディスク上の位置、ディスク上のデータ領域Ｌ［２］の先頭に付加されている三角形はFileBaseエントリポイントのディスク上の位置を示す。このとき、２Ｄ／３Ｄ再生装置は該当のエントリポイントから飛び込み再生を行うような場合には、ディスク上のデータ領域であるＲ［２］のデータを読み込み、その後、Ｌ［２］を読みながらデコードを開始することになる。Ｒ［２］のデータ読み込みが完了するまで、次のＬ［２］を読み出せないためデコード開始できない。
【０７８４】
そこで、エントリポイントまでの読み込みから再生までの時間を短縮するために図９７の（ｂ）のような構成にする。図９７の（ｂ）では、File2Dは、ディスク上のデータ領域のＬ［０］、Ｌ［１］、Ｌ［２］for2D、Ｌ［３］を指し、FileSSは、ディスク上のデータ領域のＬ［０］、Ｌ［１］、Ｌ［２］for3D、Ｌ［３］を指し、Ｌ［２］for2DとＬ［２］for3Dは同じデータになるように構成される。このようにすることで、再生経路は異なるが同じデータを読むことができる。さらに図９７の（ｂ）では、Ｌ［２］for3Dと対応する右目ＡＶクリップのデータは小さい単位でインターリーブされている（矢印１０７０１の範囲）。このように構成することによって、２Ｄ／３Ｄ再生装置が該当のエントリポイントから再生開始を行う場合には、先頭のFileDependentのエクステントは図９７の（ａ）に示す構成よりも小さくできるため、エントリポイントへの飛込みからデコード開始までの時間を早くすることができる。
【０７８５】
（付加情報）
付加情報は、以下の情報要素を含む拡張ストリーム選択テーブルであるとして、プレイリスト情報の拡張情報フィールド内に組み込んでもよい。
【０７８６】
『上端帯領域存否フラグ』は、PG＿テキスト字幕ストリームの再生時における上端帯領域確保が存在するか否かを指示するフラグである。
『上端帯領域ストリームエントリー』は、PG＿テキスト字幕ストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、PG＿テキスト字幕ストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおけるPG＿テキスト字幕ストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０７８７】
『上端帯領域奥行きレファレンス情報』は、上端帯領域で字幕を表示させる場合のPG＿テキスト字幕ストリーム用のオフセットシーケンスを参照するためのレファレンス情報であり、上端帯領域で字幕を表示させる場合のPG＿テキスト字幕ストリームのためのオフセットシーケンスを指示する。再生装置は、このフィールドによって提供されたオフセットをPGプレーンに適用せねばならない。
【０７８８】
『下端帯領域存否フラグ』は、PG＿テキスト字幕ストリームの再生時における下端帯領域が存在するか否かを指示するフラグである。
『下端帯領域ストリームエントリー』は、PG＿テキスト字幕ストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、PG＿テキスト字幕ストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおけるPG＿テキスト字幕ストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０７８９】
『下端帯領域奥行きレファレンス情報』は下端帯領域で字幕を表示させる場合のPG＿テキスト字幕ストリーム用のオフセットシーケンスを参照するためのレファレンス情報であり、下端帯領域で字幕を表示させる場合のPG＿テキスト字幕ストリームのためのオフセットシーケンスを指示する。再生装置は、このフィールドによって提供されたオフセットをPGプレーンに適用せねばならない。
【０７９０】
（光ディスクの再生）
BD-ROMドライブは、半導体レーザ、コリメートレンズ、ビームスプリッタ、対物レンズ、集光レンズ、光検出器を有する光学ヘッドを備える。半導体レーザから出射された光ビームは、コリメートレンズ、ビームスプリッタ、対物レンズを通って、光ディスクの情報面に集光される。
【０７９１】
集光された光ビームは、光ディスク上で反射/回折され、対物レンズ、ビームスプリッタ、集光レンズを通って、光検出器に集光される。光検出器にて集光された光の光量に応じて、再生信号を生成する。
【０７９２】
(記録媒体のバリエーション)
各実施の形態における記録媒体は、光ディスク、半導体メモリーカード等、パッケージメディア全般を含んでいる。本実施の形態の記録媒体は予め必要なデータが記録された光ディスク（例えばBD-ROM、DVD-ROMなどの既存の読み取り可能な光ディスク）を例に説明をするが、これに限定される必要はなく、例えば、放送またはネットワークを経由して配信された本発明の実施に必要なデータを含んだ3Dコンテンツを光ディスクへ書き込む機能を有する端末装置（例えば左記の機能は再生装置に組み込まれていても良いし、再生装置とは別の装置であってもよい）を利用して書き込み可能な光ディスク（例えばBD-RE、DVD-RAMなどの既存の書き込み可能な光ディスク）に記録し、この記録した光ディスクを本発明の再生装置に適用しても本発明の実施は可能である。
【０７９３】
（半導体メモリカード記録装置及び再生装置の実施形態）
各実施の形態で説明をしたデータ構造を半導体メモリーに記録する記録装置、及び、再生する再生装置の実施形態について説明する。
【０７９４】
まず、前提となる技術として、BD-ROMに記録されているデータの著作権保護の仕組みについて説明する。
BD-ROMに記録されたデータのうち、例えば著作権の保護、データの秘匿性の向上の観点からデータの一部が、必要に応じて暗号化されている場合がある。
【０７９５】
例えば、BD-ROMに記録されたデータのうち、暗号化されているデータは、例えばビデオストリームに対応するデータ、オーディオストリームに対応するデータ、またはこれらを含むストリームに対応するデータであったりする。
【０７９６】
以後、BD-ROMに記録されたデータのうち、暗号化されているデータの解読について説明をする。
半導体メモリカード再生装置においては、BD-ROM内の暗号化されたデータを解読するために必要な鍵に対応するデータ（例えばデバイスキー）が予め再生装置に記憶されている。
【０７９７】
一方、BD-ROMには暗号化されたデータを解読するために必要な鍵に対応するデータ（例えば上述のデバイスキーに対応するMKB（メディアキーブロック））と、暗号化されたデータを解読するための鍵自体を暗号化したデータ（例えば上述のデバイスキー及びMKBに対応する暗号化タイトルキー）が記録されている。ここで、デバイスキー、MKB、及び暗号化タイトルキーは対になっており、さらにBD-ROM上の通常コピーできない領域（BCAと呼ばれる領域）に書き込まれた識別子（例えばボリュームID）とも対応付けがされている。この組み合わせが正しくなければ、暗号の解読ができないものとする。組み合わせが正しい場合のみ、暗号解読に必要な鍵（例えば上述のデバイスキー、MKB及びボリュームIDを元に、暗号化タイトルキーを復号して得られるタイトルキー）を導き出すことができ、この暗号解読に必要な鍵を用いて、暗号化されたデータの解読が可能となる。
【０７９８】
装填されたBD-ROMを再生装置において再生する場合、例えばBD-ROM内の暗号化タイトルキー、MKBと対になっている（または対応する）デバイスキーが再生装置内になければ、暗号化されたデータは再生がなされない。何故ならば、暗号化されたデータの解読に必要な鍵（タイトルキー）は、鍵自体が暗号化されて（暗号化タイトルキー）BD-ROM上に記録されており、MKBとデバイスキーの組み合わせが正しくなければ、暗号の解読に必要な鍵を導き出すことができないからである。
【０７９９】
逆に暗号化タイトルキー、MKB、デバイスキー及びボリュームIDの組み合わせが正しければ、例えば上述の暗号解読に必要な鍵（デバイスキー、MKB及びボリュームIDを元に、暗号化タイトルキーを復号して得られるタイトルキー）を用いてビデオストリームがデコーダにてデコードされ、オーディオストリームがオーディオデコーダにてデコードされるように再生装置は構成されている。
【０８００】
以上が、BD-ROMに記録されているデータの著作権保護の仕組みであるが、この仕組みは、BD-ROMに必ずしも限定されるのではなく、例えば、読込み/書込み可能な半導体メモリー（例えばSDカードなどの可搬性を有する半導体メモリーカード）に適用した場合においても、実施が可能である。
【０８０１】
半導体メモリーカード再生装置の再生手順について説明する。光ディスクでは例えば、光ディスクドライブを介してデータを読み出すように構成していたのに対し、半導体メモリーカードを用いた場合には、半導体メモリーカード内のデータを読み出すためのI/Fを介してデータを読み出すように構成すればよい。
【０８０２】
より詳細には、再生装置のスロットに半導体メモリーカードが挿入されると、半導体メモリーカードI/Fを経由して再生装置と半導体メモリーカードが電気的に接続される。半導体メモリーカードに記録されたデータは半導体メモリーカードI/Fを介して読み出すように構成すれば良い。
【０８０３】
(受信装置としての実施形態)
各実施形態で説明した再生装置は、本実施の形態で説明をしたデータに相応するデータ（配信データ）を電子配信サービスの配信サーバから受信し、半導体メモリカードに記録する端末装置としても実現することができる。
【０８０４】
かかる端末装置は、各実施形態で説明した再生装置がそのような動作を行なえるように構成をされていても良いし、本実施の形態の再生装置とは別に半導体メモリーに配信データを記憶することを行う専用の端末装置にて行なうような形態であっても良い。ここでは再生装置が行なう例について説明をする。また記録先の半導体メモリーとしてSDカードを例に説明をする。
【０８０５】
再生装置が備えるスロットに挿入されたSDメモリーカードに配信データを記録する場合、まず配信データを蓄積する配信サーバへ配信データの送信を要求する。このとき再生装置は挿入したSDメモリーカードを一意に識別するための識別情報（例えば個々のSDメモリーカード固有の識別番号、より具体的には、例えばSDメモリーカードのシリアル番号等）をSDメモリーカードから読み出して、読み出した識別情報を配信要求とともに、配信サーバへ送信する。
【０８０６】
この、SDメモリーカードを一意に識別するための識別情報は例えば上述のボリュームIDに相当する。
一方、配信サーバでは、配信するデータのうち必要なデータ（例えばビデオストリーム、オーディオストリーム等）が暗号解読に必要な鍵（例えばタイトルキー）を用いて暗号の解除ができるように暗号化がなされてサーバ上に格納されている。
【０８０７】
例えば配信サーバは、秘密鍵を保持しており、半導体メモリーカードの固有の識別番号のそれぞれに対して異なる公開鍵情報が動的に生成できるように構成されている。
また、配信サーバは、暗号化されたデータの解読に必要な鍵（タイトルキー）自身に対して暗号化ができるように構成されている（つまり暗号化タイトルキーを生成できるように構成されている）。
【０８０８】
生成される公開鍵情報は例えば上述のMKB、ボリュームID及び暗号化タイトルキーに相当する情報を含む。暗号化されたデータは例えば半導体メモリー固有の識別番号、後述する公開鍵情報に含まれる公開鍵本体、および再生装置に予め記録されたデバイスキーの組み合わせが正しければ、暗号解読に必要な鍵（例えばデバイスキー、MKB及び半導体メモリー固有の識別番号を元に、暗号化タイトルキーを復号して得られるタイトルキー）が得られ、この得られた暗号解読に必要な鍵（タイトルキー）を用いて、暗号化されたデータの解読ができるものである。
【０８０９】
次に、再生装置は、受信した公開鍵情報と配信データをスロットに挿入した半導体メモリーカードの記録領域に記録する。
次に、半導体メモリーカードの記録領域に記録した公開鍵情報と配信データに含まれるデータのうち暗号化したデータを復号して再生する方法の一例について説明をする。
【０８１０】
受信した公開鍵情報は例えば公開鍵本体（例えば上述のMKB及び暗号化タイトルキー）、署名情報、半導体メモリーカードの固有の識別番号、および無効にすべきデバイスに関する情報を示すデバイスリストが記録されている。
【０８１１】
署名情報には例えば、公開鍵情報のハッシュ値を含む。
デバイスリストには例えば、不正に再生がなされる可能性があるデバイスに関する情報が記載されている。これは例えば再生装置に予め記録されたデバイスキー、再生装置の識別番号、または再生装置が備えるデコーダの識別番号といったように、不正に再生される可能性がある装置、装置に含まれる部品、または機能（プログラム）といったものを一意に特定するための情報である。
【０８１２】
半導体メモリーカードの記録領域に記録した配信データのうち、暗号化されたデータの再生に関し、説明をする。
まず、公開鍵本体を利用して暗号化したデータを復号する前に復号鍵本体を機能させてよいかどうかに関するチェックを行う。
【０８１３】
具体的には、（１） 公開鍵情報に含まれる半導体メモリー固有の識別情報と半導体メモリーカードに予め記憶されている固有の識別番号とが一致するかどうかのチェック（２） 再生装置内で算出した公開鍵情報のハッシュ値と署名情報に含まれるハッシュ値が一致するかのチェック（３） 公開鍵情報に含まれるデバイスリストに示される情報に基づいて、再生を行う再生装置が不正な再生が可能かどうかのチェック（例えば公開鍵情報に含まれるデバイスリストに示されるデバイスキーと、再生装置に予め記憶されたデバイスキーが一致するかどうかのチェック）
を行なう。これらのチェックを行なう順番は、どのような順序で行なってもよい。
【０８１４】
上述の（１）〜（３）のチェックにおいて、公開鍵情報に含まれる半導体メモリー固有の識別情報と半導体メモリーに予め記憶されている固有の識別番号とが一致しない、再生装置内で算出した公開鍵情報のハッシュ値と署名情報に含まれるハッシュ値が一致しない、または、再生を行う再生装置が不正に再生される可能性があると判断した、のいずれかを満足すれば、再生装置は、暗号化されたデータの解読がなされないように制御する。
【０８１５】
また、公開鍵情報に含まれる半導体メモリーカードの固有の識別情報と半導体メモリーカードに予め記憶されている固有の識別番号とが一致し、かつ再生装置内で算出した公開鍵情報のハッシュ値と署名情報に含まれるハッシュ値が一致し、かつ再生を行う再生装置が不正に再生される可能性がないと判断したのであれば、半導体メモリー固有の識別番号、公開鍵情報に含まれる公開鍵本体、および再生装置に予め記録されたデバイスキーの組み合わせが正しいと判断し、暗号解読に必要な鍵（デバイスキー、MKB及び半導体メモリー固有の識別番号を元に、暗号化タイトルキーを復号して得られるタイトルキー）を用いて、暗号化されたデータの解読を行なう。
【０８１６】
例えば暗号化されたデータがビデオストリーム、オーディオストリームである場合、ビデオデコーダは上述の暗号解読に必要な鍵（暗号化タイトルキーを復号して得られるタイトルキー）を利用してビデオストリームを復号し（デコードし）、オーディオデコーダは、上述の暗号解読に必要な鍵を利用してオーディオストリームを復号する（デコードする）。
【０８１７】
このように構成をすることにより、電子配信時において不正利用される可能性がある再生装置、部品、機能（プログラム）などが分っている場合、これらを識別するための情報をデバイスリストに示して、配信するようにすれば、再生装置側がデバイスリストに示されているものを含むような場合には公開鍵情報（公開鍵本体）を用いた復号を抑止できるようにできるため、半導体メモリー固有の識別番号、公開鍵情報に含まれる公開鍵本体、および再生装置に予め記録されたデバイスキーの組み合わせが、たとえ正しくても、暗号化されたデータの解読がなされないように制御できるため、不正な装置上での配信データの利用を抑止することが可能となる。
【０８１８】
また半導体メモリーカードに予め記録されている半導体メモリーカードの固有の識別子は秘匿性の高い記録領域に格納するような構成を採用するのが望ましい。何故ならば、半導体メモリーカードに予め記録されている固有の識別番号（例えばSDメモリーカードを例にすればSDメモリーカードのシリアル番号等）は改竄がなされると、違法コピーが容易になされてしまう。何故ならば複数の半導体メモリーカードには、それぞれ異なる固有の識別番号が割り当てられているが、この固有の識別番号が同一となるように改竄がなされてしまえば、上述の（１）の判定が意味を成さなくなり、改竄がなされた数に相当する違法コピーがなされてしまう可能性があるからである。
【０８１９】
従って、半導体メモリーカードの固有の識別番号といった情報は秘匿性が高い記録領域に記録するような構成を採用するのが望ましい。
このような構成を実現するために、例えば半導体メモリーカードは、半導体メモリーカードの固有の識別子と言った秘匿性の高いデータを記録するための記録領域を通常のデータを格納する記録領域（第１の記録領域と称す）とは別の記録領域（第２の記録領域と称す）に設けること、およびこの第２の記録領域へのアクセスをするための制御回路を設けるとともに、第２の記録領域へのアクセスには制御回路を介してのみアクセスできるような構成とする。
【０８２０】
例えば、第２の記録領域に記録されているデータは暗号化がなされて、記録されており、制御回路は、例えば暗号化されたデータを復号するための回路が組み込まれている。制御回路へ第２の記録領域へのデータのアクセスが合った場合には、暗号を復号し、復号したデータを返すように構成すれば良い。または、制御回路は第２の記録領域に記録されているデータの格納場所の情報を保持しており、データのアクセスの要求があれば、対応するデータの格納場所を特定し、特定した格納場所から読み取ったデータを返すような構成としても良い。
【０８２１】
再生装置上で動作するアプリケーションで、電子配信を利用して半導体メモリーカードに記録する要求するアプリケーションは、メモリーカードI/Fを介して制御回路へ第２の記録領域に記録されたデータ（例えば半導体メモリ固有の識別番号）へのアクセス要求を発行すると、要求を受けた制御回路は第２の記録領域に記録されたデータを読み出して再生装置上で動作するアプリケーションへ返す。この半導体メモリーカードの固有の識別番号とともに必要なデータの配信要求を配信サーバに要求し、配信サーバから送られる公開鍵情報、および対応する配信データを第１の記録領域に記録するように構成すればよい。          
【０８２２】
また、再生装置上で動作するアプリケーションで、電子配信を利用して半導体メモリーカードに記録を要求するアプリケーションは、メモリーカードI/Fを介して制御回路へ第２の記録領域に記録されたデータ（例えば半導体メモリ固有の識別番号）へのアクセス要求を発行する前に、アプリケーションの改竄がされていないかを事前にチェックすることが望ましい。改竄のチェックには例えば既存のX.５０９仕様に準拠したデジタル証明書を利用したチェックなどを利用しても良い。
【０８２３】
また、半導体メモリーカードの第１の記録領域に記録された配信データへのアクセスは半導体メモリーカードが有する制御回路を介してアクセスする必要は必ずしもない。
【産業上の利用可能性】
【０８２４】
本発明に係る情報記録媒体は3D映像を格納しているが、2D映像を再生する装置と、3D映像を再生する装置のどちらでも再生できるため、互換性を意識することなく3D映像を格納した映画タイトルなどの動画コンテンツを市場に供給することができ、映画市場や民生機器市場を活性化させることができる。故に本発明に係る記録媒体、再生装置は、映画産業や民生機器産業において高い利用可能性をもつ。
【符号の説明】
【０８２５】
１００  記録媒体
２００  再生装置
３００  表示装置
４００  3D眼鏡
【図１】
0005491437.tif 000002
【図２】
0005491437.tif 000003
【図３】
0005491437.tif 000004
【図４】
0005491437.tif 000005
【図５】
0005491437.tif 000006
【図６】
0005491437.tif 000007
【図７】
0005491437.tif 000008
【図８】
0005491437.tif 000009
【図９】
0005491437.tif 000010
【図１０】
0005491437.tif 000011
【図１１】
0005491437.tif 000012
【図１２】
0005491437.tif 000013
【図１３】
0005491437.tif 000014
【図１４】
0005491437.tif 000015
【図１５】
0005491437.tif 000016
【図１６】
0005491437.tif 000017
【図１７】
0005491437.tif 000018
【図１８】
0005491437.tif 000019
【図１９】
0005491437.tif 000020
【図２０】
0005491437.tif 000021
【図２１】
0005491437.tif 000022
【図２２】
0005491437.tif 000023
【図２３】
0005491437.tif 000024
【図２４】
0005491437.tif 000025
【図２５】
0005491437.tif 000026
【図２６】
0005491437.tif 000027
【図２７】
0005491437.tif 000028
【図２８】
0005491437.tif 000029
【図２９】
0005491437.tif 000030
【図３０】
0005491437.tif 000031
【図３１】
0005491437.tif 000032
【図３２】
0005491437.tif 000033
【図３３】
0005491437.tif 000034
【図３４】
0005491437.tif 000035
【図３５】
0005491437.tif 000036
【図３６】
0005491437.tif 000037
【図３７】
0005491437.tif 000038
【図３８】
0005491437.tif 000039
【図３９】
0005491437.tif 000040
【図４０】
0005491437.tif 000041
【図４１】
0005491437.tif 000042
【図４２】
0005491437.tif 000043
【図４３】
0005491437.tif 000044
【図４４】
0005491437.tif 000045
【図４５】
0005491437.tif 000046
【図４６】
0005491437.tif 000047
【図４７】
0005491437.tif 000048
【図４８】
0005491437.tif 000049
【図４９】
0005491437.tif 000050
【図５０】
0005491437.tif 000051
【図５１】
0005491437.tif 000052
【図５２】
0005491437.tif 000053
【図５３】
0005491437.tif 000054
【図５４】
0005491437.tif 000055
【図５５】
0005491437.tif 000056
【図５６】
0005491437.tif 000057
【図５７】
0005491437.tif 000058
【図５８】
0005491437.tif 000059
【図５９】
0005491437.tif 000060
【図６０】
0005491437.tif 000061
【図６１】
0005491437.tif 000062
【図６２】
0005491437.tif 000063
【図６３】
0005491437.tif 000064
【図６４】
0005491437.tif 000065
【図６５】
0005491437.tif 000066
【図６６】
0005491437.tif 000067
【図６７】
0005491437.tif 000068
【図６８】
0005491437.tif 000069
【図６９】
0005491437.tif 000070
【図７０】
0005491437.tif 000071
【図７１】
0005491437.tif 000072
【図７２】
0005491437.tif 000073
【図７３】
0005491437.tif 000074
【図７４】
0005491437.tif 000075
【図７５】
0005491437.tif 000076
【図７６】
0005491437.tif 000077
【図７７】
0005491437.tif 000078
【図７８】
0005491437.tif 000079
【図７９】
0005491437.tif 000080
【図８０】
0005491437.tif 000081
【図８１】
0005491437.tif 000082
【図８２】
0005491437.tif 000083
【図８３】
0005491437.tif 000084
【図８４】
0005491437.tif 000085
【図８５】
0005491437.tif 000086
【図８６】
0005491437.tif 000087
【図８７】
0005491437.tif 000088
【図８８】
0005491437.tif 000089
【図８９】
0005491437.tif 000090
【図９０】
0005491437.tif 000091
【図９１】
0005491437.tif 000092
【図９２】
0005491437.tif 000093
【図９３】
0005491437.tif 000094
【図９４】
0005491437.tif 000095
【図９５】
0005491437.tif 000096
【図９６】
0005491437.tif 000097
【図９７】
0005491437.tif 000098
【図９８】
0005491437.tif 000099
【図９９】
0005491437.tif 000100
【図１００】
0005491437.tif 000101
【図１０１】
0005491437.tif 000102
【図１０２】
0005491437.tif 000103
【図１０３】
0005491437.tif 000104
【図１０４】
0005491437.tif 000105
【図１０５】
0005491437.tif 000106
【図１０６】
0005491437.tif 000107
【図１０７】
0005491437.tif 000108
【図１０８】
0005491437.tif 000109
【図１０９】
0005491437.tif 000110
【図１１０】
0005491437.tif 000111