(57)【要約】【課題】記録媒体から、3D(Dimension)画像のコンテンツを適切に再生する。【解決手段】PlayListから参照できるclpiファイルは矢印＃１に示すようにBase view videoのclpiファイルだけである。Base view videoのclpiファイルにはD1/D2 view videoのclpiファイルのファイル名の少なくとも一部が含まれている。そのファイル名を用いて、矢印＃２に示すようにD1 view videoのclpiファイルを参照したり、矢印＃３に示すようにD2 view videoのclpiファイルを参照したりすることができるようになされている。本発明は、BD-ROM規格に対応した再生装置に適用することができる。【選択図】図４６
2010244629.tif 000002
【特許請求の範囲】
【請求項１】
複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定する設定手段を備える
情報処理装置。
【請求項２】
前記設定手段は、前記Base view videoの前記クリップ情報ファイルと、前記Dependent view videoの前記クリップ情報ファイルに、それぞれ、クリップを用いて処理を行うアプリケーションの種類を表す情報であるアプリケーションタイプ情報を設定する
請求項１に記載の情報処理装置。
【請求項３】
前記設定手段は、前記Base view videoの前記クリップ情報ファイルの拡張領域に、前記Base view videoのクリップのデータとともに三次元画像の再生に用いられる前記Dependent view videoのクリップの前記クリップ情報ファイルの識別情報を設定する
請求項１に記載の情報処理装置。
【請求項４】
前記設定手段は、前記Base view videoの前記クリップ情報ファイルの拡張領域に、さらに、前記Base view videoのクリップのデータと、前記Dependent view videoクリップのデータとを管理する仮想ファイルの識別情報を設定する
請求項３に記載の情報処理装置。
【請求項５】
前記Base view videoのクリップのデータと、前記Dependent view videoクリップのデータとが、所定のデータ単位であるエクステント単位でインターリーブされた状態で光ディスクに記録されている場合、
前記設定手段は、前記Base view videoの前記クリップ情報ファイルの拡張領域に、前記Base view videoの前記エクステントに関する情報を設定し、前記Dependent view videoのクリップの前記クリップ情報ファイルの拡張領域に、前記Dependent view videoの前記エクステントに関する情報を設定する
請求項１に記載の情報処理装置。
【請求項６】
前記エクステントに関する情報には、それぞれの前記エクステントの前記光ディスクにおける位置情報と長さ情報が含まれる
請求項５に記載の情報処理装置。
【請求項７】
複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定する
ステップを含む情報処理方法。
【請求項８】
複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定する
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項９】
複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報が設定され、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報が設定された
記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、プログラム、および記録媒体に関し、特に、記録媒体から、3D(Dimension)画像のコンテンツを適切に再生することができるようにした情報処理装置、情報処理方法、プログラム、および記録媒体に関する。
【背景技術】
【０００２】
例えば、映画等のコンテンツとしては、２次元(2D)画像のコンテンツが主流であるが、最近では、立体視が可能な３次元(3D)画像（グラフィック）のコンテンツが注目を集めている。
【０００３】
3D画像（以下、ステレオ画像ともいう）の表示の方式としては、種々の方式があるが、いずれの方式を採用する場合であっても、3D画像のデータ量は、2D画像のデータ量よりも大になる。
【０００４】
また、映画等の、高解像度の画像のコンテンツは、大容量であることもあり、そのような大容量の画像のコンテンツを、データ量の多い3D画像として記録するには、大容量の記録媒体が必要である。
【０００５】
そのような大容量の記録媒体としては、例えば、BD(Blu-Ray（登録商標）)-ROM(Read Only Memory)等のBlu-Ray（登録商標） Disc（以下、BDともいう）がある。
【０００６】
ここで、フアイル化手段により信号の記録媒体における記録位置をセクタよりも小さい所定単位で指定してフアイル化するようにしたことにより、フアイル化した信号を任意の位置で分割又は結合するような編集処理でも、当該信号の編集対象部分のみをフアイル化するように記録媒体に記録しなおす必要がなく、フアイル管理情報上のみで編集処理することができ、かくして編集処理を格段的に簡易化させ得るフアイル管理装置が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１１−１９５２８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、現行のBDの規格では、3D画像のコンテンツを、BDに、どのように記録し、また、再生するかは、規定されていない。
【０００９】
しかしながら、3D画像のコンテンツの記録や再生の仕方を、3D画像のコンテンツのオーサリングを行うオーサ(author)に委ねてしまうと、3D画像のコンテンツを適切に再生することができなくなるおそれがある。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、BD等の記録媒体から、ステレオ画像（3D画像）のコンテンツを適切に再生することができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の一側面の情報処理装置は、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定する設定手段を備える。
【００１２】
前記設定手段には、前記Base view videoの前記クリップ情報ファイルと、前記Dependent view videoの前記クリップ情報ファイルに、それぞれ、クリップを用いて処理を行うアプリケーションの種類を表す情報であるアプリケーションタイプ情報を設定させることができる。
【００１３】
前記設定手段には、前記Base view videoの前記クリップ情報ファイルの拡張領域に、前記Base view videoのクリップのデータとともに三次元画像の再生に用いられる前記Dependent view videoのクリップの前記クリップ情報ファイルの識別情報を設定させることができる。
【００１４】
前記設定手段には、前記Base view videoの前記クリップ情報ファイルの拡張領域に、さらに、前記Base view videoのクリップのデータと、前記Dependent view videoクリップのデータとを管理する仮想ファイルの識別情報を設定させることができる。
【００１５】
前記Base view videoのクリップのデータと、前記Dependent view videoクリップのデータとが、所定のデータ単位であるエクステント単位でインターリーブされた状態で光ディスクに記録されている場合、前記設定手段には、前記Base view videoの前記クリップ情報ファイルの拡張領域に、前記Base view videoの前記エクステントに関する情報を設定させ、前記Dependent view videoのクリップの前記クリップ情報ファイルの拡張領域に、前記Dependent view videoの前記エクステントに関する情報を設定させることができる。
【００１６】
前記エクステントに関する情報には、それぞれの前記エクステントの前記光ディスクにおける位置情報と長さ情報が含まれるようにすることができる。
【００１７】
本発明の一側面の情報処理方法は、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定するステップを含む。
【００１８】
本発明の一側面のプログラムは、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定するステップを含む処理をコンピュータに実行させる。
【００１９】
本発明の一側面の記録媒体は、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報が設定され、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報が設定されたものである。
【００２０】
本発明の一側面においては、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報が設定され、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報が設定される。
【発明の効果】
【００２１】
本発明によれば、ステレオ画像（3D画像）のコンテンツを適切に再生することができる。
【図面の簡単な説明】
【００２２】
【図１】BDMVフォーマットの概要を説明する図である。
【図２】BDのファイルの管理構造を説明する図である。
【図３】本発明の情報処理装置を適用した再生装置の一実施の形態の構成例を示すブロック図である。
【図４】ディスク１０に記録されるストリームとファイルとを説明する図である。
【図５】ファイルシステムによる、ディスク１０上のファイルの管理を説明する図である。
【図６】ファイルシステムによる、ディスク１０からのエクステントの読み出しを説明する図である。
【図７】3Dタイプ１再生用ファイルから読み出された仮想エクステントを、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割する方法を説明する図である。
【図８】3Dファイルコントローラ１２の構成例を示すブロック図である。
【図９】本発明の情報処理装置を適用した記録装置の一実施の形態の構成例を示すブロック図である。
【図１０】ディスク１０に記録されるストリームとファイルとを説明する図である。
【図１１】ファイルシステムによる、ディスク１０上のファイルの管理を説明する図である。
【図１２】ファイルシステムによる、ディスク１０からのエクステントの読み出しを説明する図である。
【図１３】3Dタイプ１再生用ファイルから読み出された仮想エクステントを、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割する方法を説明する図である。
【図１４】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【図１５】本発明を適用した再生装置を含む再生システムの構成例を示す図である。
【図１６】撮影の例を示す図である。
【図１７】MVCエンコーダの構成例を示すブロック図である。
【図１８】参照画像の例を示す図である。
【図１９】TSの構成例を示す図である。
【図２０】TSの他の構成例を示す図である。
【図２１】TSのさらに他の構成例を示す図である。
【図２２】AVストリームの管理の例を示す図である。
【図２３】Main PathとSub Pathの構造を示す図である。
【図２４】光ディスクに記録されるファイルの管理構造の例を示す図である。
【図２５】PlayListファイルのシンタクスを示す図である。
【図２６】図２５のPlayList()のシンタクスを示す図である。
【図２７】図２６のSubPath()のシンタクスを示す図である。
【図２８】図２７のSubPlayItem(i)のシンタクスを示す図である。
【図２９】図２６のPlayItem()のシンタクスを示す図である。
【図３０】図２９のSTN_table()のシンタクスを示す図である。
【図３１】3D_PlayListの具体例を示す図である。
【図３２】typeの意味を示す図である。
【図３３】SubPath_typeの意味を示す図である。
【図３４】再生装置の構成例を示すブロック図である。
【図３５】図３４のデコーダ部の構成例を示す図である。
【図３６】3D_PlayListの例を示す図である。
【図３７】clpiファイルのシンタクスを示す図である。
【図３８】図３６、図３７のデータを用いて行われるファイル管理の概念を示す図である。
【図３９】図３６の3D_PlayListファイルに従って行われる再生処理について説明するフローチャートである。
【図４０】chunk_map()のシンタクスの例を示す図である。
【図４１】chunk_map()の具体例を示す図である。
【図４２】チャンクの分離について示す図である。
【図４３】3D_PlayListの他の例を示す図である。
【図４４】clpiファイルのシンタクスを示す図である。
【図４５】図４３、図４４のデータを用いて行われるファイル管理の概念を示す図である。
【図４６】図４３の3D_PlayListファイルに従って行われる再生処理について説明するフローチャートである。
【図４７】3D_PlayListのさらに他の例を示す図である。
【図４８】clpiファイルのシンタクスを示す図である。
【図４９】図４７、図４８のデータを用いて行われるファイル管理の概念を示す図である。
【図５０】図４７の3D_PlayListファイルに従って行われる再生処理について説明するフローチャートである。
【図５１】図４１のchunk_map()の内容をまとめて示す図である。
【図５２】EP_map()のシンタクスを示す図である。
【図５３】再生装置のランダムアクセス処理について説明するフローチャートである。
【図５４】ステップＳ４４，Ｓ４５の処理により特定される位置の例を示す図である。
【図５５】ステップＳ４６の処理により特定されるSPN_chunk_start[k]を示す図である。
【図５６】光ディスク上に記録されたAVストリームの構造を示す図である。
【図５７】Clip AVストリームの例を示す図である。
【図５８】EP_mapの例を示す図である。
【図５９】SPN_EP_startが指すソースパケットのデータ構造の例を示す図である。
【図６０】再生装置によるファイル管理の例を示す図である。
【図６１】3D_Clip_typeの意味を示す図である。
【図６２】3D_App_typeの意味を示す図である。
【図６３】3D_Clip_typeと3D_App_typeの設定の例を示す図である。
【図６４】clpiファイルのシンタクスを示す図である。
【図６５】clpiファイルのExtensionData()内の記述の具体例を示す図である。
【図６６】clpiファイルのExtensionData()内の記述の他の具体例を示す図である。
【図６７】再生装置によるファイル管理の他の例を示す図である。
【図６８】ファイルの管理構造の例を示す図である。
【図６９】Interleave ClipInfoファイルのシンタクスを示す図である。
【図７０】ソフト製作処理部の構成例を示すブロック図である。
【図７１】ソフト製作処理部を含む構成の例を示す図である。
【発明を実施するための形態】
【００２３】
＜第１の実施の形態＞
【００２４】
以下、本発明の実施の形態を、本発明をBDに適用した場合を例に説明する。
【００２５】
［BDの管理構造］
【００２６】
まず、現行のBDに関し、"Blu-ray Disc Read-Only Format Ver1.0 part3 Audio Visual Specifications"で規定されている、読み出し専用タイプのBDであるBD-ROMに記録されるコンテンツとしてのAV(Audio/Video)データ等の管理構造（以下、BDMVフォーマットともいう）について説明する。
【００２７】
BD規格において、例えば、MPEG(Moving Picture Experts Group)ビデオや、MPEGオーディオ等の符号化方式で符号化され、MPEG2システムに従って多重化されたビットストリームは、クリップAVストリーム（又はAVストリーム）（Clip AV stream）と呼ばれる。クリップAVストリームは、BD規格の一つである"Blu-ray Disc Read-Only Format part2"で定義されたファイルシステムにより、ファイルとしてBDに記録される。クリップAVストリームのファイルは、クリップAVストリームファイル（またはAVストリームファイル）と呼ばれる。
【００２８】
クリップAVストリームファイルは、ファイルシステム上での管理単位であり、クリップAVストリームファイル（のクリップAVストリーム）を再生に必要な情報等は、データベースとしてBDに記録される。このデータベースについては、BD規格の一つである"Blu-ray Disc Read-Only Format part3"で規定されている。
【００２９】
図１は、BDMVフォーマットの概要を説明する図である。
【００３０】
BDMVフォーマットは、４層のレイヤから構成される。
【００３１】
最下位のレイヤは、クリップAVストリームが属するレイヤであり、以下、適宜、クリップレイヤともいう。
【００３２】
クリップレイヤの１つ上のレイヤは、クリップAVストリームに対する再生箇所を指定するための、プレイリスト(Movie PlayList)が属するレイヤで、以下、プレイリストレイヤともいう。
【００３３】
プレイリストレイヤの１つ上のレイヤは、プレイリストに対して再生順等を指定するコマンドからなるムービーオブジェクト(Movie Object)等が属するレイヤで、以下、オブジェクトレイヤともいう。
【００３４】
オブジェクトレイヤの１つ上のレイヤ（最上位のレイヤ）は、BDに格納されるタイトル等を管理するインデックステーブル(Index table)が属するレイヤで、以下、インデクスレイヤともいう。
【００３５】
クリップレイヤ、プレイリストレイヤ、オブジェクトレイヤ、及び、インデクスレイヤについて、さらに説明する。
【００３６】
クリップレイヤには、クリップAVストリームや、クリップ情報(Clip Information)等が属する。
【００３７】
クリップAVストリームは、コンテンツのデータとしてのビデオデータやオーディオデータ等をTS(MPEG2 TS(Transport Stream))の形にしたストリームである。
【００３８】
クリップ情報(Clip Information)は、クリップAVストリームに関する情報であり、ファイルとして、BDに記録される。
【００３９】
なお、クリップAVストリームには、字幕やメニュー等のグラフィクスのストリームも、必要に応じて含まれる。
【００４０】
字幕（のグラフィクス）のストリームは、プレゼンテーショングラフィクス(PG(Presentation Graphics))ストリームと呼ばれ、メニュー（のグラフィクス）のストリームは、インタラクティブグラフィクス(IG(Interactive Graphics))ストリームと呼ばれる。
【００４１】
また、クリップAVストリームファイルと、対応するクリップ情報（そのクリップAVストリームファイルのクリップAVストリームに関するクリップ情報）のファイル（クリップ情報ファイル）とのセットは、クリップ(Clip)と呼ばれる。
【００４２】
クリップは、クリップAVストリームとクリップ情報とから構成される、１つのオブジェクトである。
【００４３】
クリップを構成するクリップAVストリームに対応するコンテンツを時間軸上に展開したときの最初と最後の位置（時刻）を含む複数の位置は、アクセスポイントに設定することができる。アクセスポイントは、主に、タイムスタンプで、上位のレイヤのプレイリスト(PlayList)により指定される。
【００４４】
クリップを構成するクリップ情報は、プレイリストがタイムスタンプで指定したアクセスポイントが表す、クリップAVストリームの位置のアドレス(論理アドレス）を含む。
【００４５】
プレイリストレイヤには、プレイリスト(Movie PlayList)が属する。
【００４６】
プレイリストは、再生を行うAVストリームファイルと、そのAVストリームファイルの再生箇所を指定する再生開始点（IN点）、及び、再生終了点（OUT点）とを含むプレイアイテム(PlayItem)から構成される。
【００４７】
したがって、プレイリストは、プレイアイテムの集合で構成される。
【００４８】
ここで、プレイアイテムの再生とは、そのプレイアイテムに含まれるIN点とOUT点とによって特定される、クリップAVストリームの区間の再生を意味する。
【００４９】
オブジェクトレイヤには、ムービーオブジェクト(Movie Object)や、BD-Jオブジェクト(Blu-ray （登録商標） Disc Java（登録商標） Object)が属する。
【００５０】
ムービーオブジェクトは、HDMV(High Definition Movie)ナビゲーションコマンドプログラム（ナビコマンド）と、ムービーオブジェクトとを連携するターミナルインフォメーションを含む。
【００５１】
ナビコマンドは、プレイリストの再生を制御するためのコマンドである。ターミナルインフォメーションは、BDを再生するBDプレーヤに対するユーザのインタラクティブな操作を許可するための情報を含む。BDプレーヤでは、ターミナルインフォメーションに基づき、メニューの呼び出しや、タイトルサーチといったユーザオペレーションが制御される。
【００５２】
BD-Jオブジェクトは、Java（登録商標）プログラムであり、BD-Jオブジェクト（BD-Jタイトル、又はBD-Jアプリケーション）によれば、ナビコマンドよりも、より高度な(洗練された）インタラクティブ機能を、ユーザに提供することができる。
【００５３】
インデクスレイヤには、インデクステーブル(Index table)が属する。
【００５４】
インデクステーブルは、BD-ROMディスクのタイトルを定義する、トップレベルのテーブルである。
【００５５】
インデクステーブルのエントリ（欄）は、タイトルに対応し、各エントリからは、そのエントリに対応するタイトル（HDMVタイトル、BD-Jタイトル）のオブジェクト（ムービーオブジェクト、BD-Jオブジェクト）にリンクがはられる。
【００５６】
図２は、"Blu-ray Disc Read-Only Format part3"で規定された、BDのファイルの管理構造を説明する図である。
【００５７】
BDでは、ファイルは、ディレクトリ構造により階層的に管理される。
【００５８】
ここで、図２では、ディレクトリの下のファイル（ディレクトリを含む）とは、そのディレクトリの直下にあるファイルを意味し、ディレクトリに含まれるファイルとは、そのディレクトリの直下にあるファイルや、そのディレクトリの、いわゆるサブディレクトリの下にあるファイルを意味する。
【００５９】
BDの最上位階層のディレクトリは、ルート(root)ディレクトリであり、ルートディレクトリの直下には、ディレクトリ"BDMV"と、ディレクトリ"CERTIFICATE"とが存在する。
【００６０】
ディレクトリ"CERTIFICATE"には、著作権に関する情報(ファイル）が格納される。
【００６１】
ディレクトリ"BDMV"には、図１で説明したBDMVフォーマットのファイルが格納される。
【００６２】
ディレクトリ"BDMV"の直下には、ファイル"index.bdmv"、及び"MovieObject.bdmv"の２つのファイルが格納される。なお、ディレクトリ"BDMV"の直下には、ファイル"index.bdmv"、及び"MovieObject.bdmv"以外のファイル（ディレクトリを除く）は、格納することができない。
【００６３】
ファイル"index.bdmv"は、BDを再生するメニューに関する情報としての、図１で説明したインデクステーブルを含む。
【００６４】
BDプレーヤは、例えば、BDのコンテンツを全て再生する、特定のチャプタのみを再生する、繰り返し再生をする、所定のメニューを表示する等の内容の項目を含む初期メニュー（の画面）を、ファイル"index.bdmv"に基づいて再生する。
【００６５】
また、ファイル"index.bdmv"には、各項目が選択されたときに実行するムービーオブジェクト(Movie Object)を設定することができ、ユーザにより初期メニュー画面から１つの項目が選択された場合、BDプレーヤは、ファイル"index.bdmv"に設定されているMovie Objectのコマンドを実行する。
【００６６】
ファイル"MovieObject.bdmv"は、Movie Objectの情報を含むファイルである。Movie Objectは、BDに記録されているPlayListの再生を制御するコマンドを含み、例えば、BDプレーヤは、BDに記録されているMovieObjectの中から１つを選択して実行することにより、BDに記録されているコンテンツ(タイトル）を再生する。
【００６７】
ディレクトリ"BDMV"の直下には、ディレクトリ"PLAYLIST"，"CLIPINF"，"STREAM"，"AUXDATA"，"META"，"BDJO"，"JAR"、及び"BACKUP"が設けられる。
【００６８】
ディレクトリ"PLAYLIST"には、プレイリストのデータベースが格納される。すなわち、ディレクトリ"PLAYLIST"には、プレイリストのファイル"xxxxx.mpls"が格納される。プレイリストのファイル"xxxxx.mpls"のファイル名には、５桁の数字"xxxxx"と、拡張子"mpls"とからなるファイル名が用いられる。
【００６９】
ディレクトリ"CLIPINF"は、クリップのデータベースが格納される。すなわち、ディレクトリCLIPINF"には、クリップAVストリームファイルのそれぞれに対するクリップインフォメーションファイル"xxxxx.clpi"が格納される。クリップインフォメーションファイル"xxxxx.clpi"のファイル名には、５桁の数字"xxxxx"と、拡張子"clpi"とからなるファイル名が用いられる。
【００７０】
ディレクトリ"STREAM"には、クリップAVストリームファイル"xxxxxx.m2ts"が格納される。クリップAVストリームファイル"xxxxxx.m2ts"には、TSが格納される。クリップAVストリームファイル"xxxxxx.m2ts"のファイル名には、５桁の数字"xxxxx"と、拡張子"m2ts"とからなるファイル名が用いられる。
【００７１】
なお、あるクリップを構成するクリップインフォメーションファイル"xxxxx.clpi"と、クリップAVストリームファイル"xxxxxx.m2ts"のファイル名としては、拡張子を除き、一致するファイル名が用いられる。これにより、あるクリップを構成するクリップインフォメーションファイル"xxxxx.clpi"と、クリップAVストリームファイル"xxxxxx.m2ts"とを、容易に特定することができる。
【００７２】
ディレクトリ"AUXDATA"には、メニューの表示等に用いられる、サウンドファイル、フォントファイル、フォントインデクスファイル及びビットマップファイル等が格納される。
【００７３】
図２では、ディレクトリ"AUXDATA"に、ファイル"sound.bdmv"や、拡張子が"otf"のファイルが格納されている。
【００７４】
ファイル"sound.bdmv"には、所定のサウンドデータ（オーディオデータ）が格納される。ファイル"sound.bdmv"のファイル名は、"sound.bdmv"が固定的に用いられる。
【００７５】
拡張子が"otf"のファイルには、字幕の表示や、BD-Jオブジェクト（アプリケーション）等で用いられるフォントのデータが格納される。拡張子が"otf"のファイルのファイル名のうちの拡張子以外の部分には、５桁の数字が用いられる。
【００７６】
ディレクトリ"META"には、メタデータのファイルが格納される。ディレクトリ"BDJO"及びディレクトリ"JAR"は、BD-Jオブジェクトのファイルが格納される。ディレクトリ"BACKUP"は、BDに記録されたファイルのバックアップが格納される。
【００７７】
［本発明を適用した再生装置の構成例］
【００７８】
図３は、本発明を適用した再生装置の一実施の形態の構成例を示すブロック図である。
【００７９】
図３の再生装置は、2D画像のコンテンツの他、3D画像のコンテンツの再生を行うことができる、例えば、BDプレーヤであり、そこに装着されたディスク１０の再生を行う。
【００８０】
すなわち、ディスク１０は、例えば、BDであり、現行の、2D画像のコンテンツが記録されたBDと同様に、図２に示した管理構造のファイルが記録されている。さらに、ディスク１０には、3D画像のコンテンツを再生するためのファイルが、後述するように記録されている。
【００８１】
したがって、ディスク１０は、レガシープレーヤでも再生することができるし、3D画像のコンテンツの再生を行うことができる、図３の再生装置のようなBDプレーヤ（以下、3D対応プレーヤともいう）でも再生することができる。
【００８２】
ここで、レガシープレーヤとは、現行の、2D画像のコンテンツが記録されたBDのみ対応し、3D画像のコンテンツを再生することができないBDプレーヤである。
【００８３】
レガシープレーヤでは、ディスク１０から、2D画像のコンテンツを再生することはできるが、3D画像のコンテンツを再生することはできない。
【００８４】
一方、3D対応プレーヤである図３の再生装置では、ディスク１０から、2D画像のコンテンツを再生することもできるし、3D画像のコンテンツを再生することもできる。
【００８５】
図３において、再生装置には、ディスク１０が着脱可能になっている。
【００８６】
そして、再生装置は、そこに装着されたディスク１０の再生を行う。
【００８７】
すなわち、再生装置は、プレイバックマネージャ(BD playback manager)１１、3Dファイルコントローラ(3D file controller)１２、UDFマネージャ(UDF manager)１３、メインストリームバッファ(main stream buffer)１４、エンハンスストリームバッファ(enhanced stream buffer)１５、及び、3D用AVデコーダ(3D AV decoder)１６から構成される。
【００８８】
プレイバックマネージャ１１は、例えば、ユーザの操作等に応じて、再生すべき（読み出すべき）ファイルの要求を、3Dファイルコントローラ１２供給する。
【００８９】
すなわち、プレイバックマネージャ１１は、例えば、ユーザの操作等に応じて、3D画像のコンテンツの再生が指令された場合、その3D画像のコンテンツの再生に必要なファイルの要求を、3Dファイルコントローラ１２に要求する。
【００９０】
なお、プレイバックマネージャ１１は、3D画像のコンテンツの再生に必要なファイル以外のファイルの要求については、ファイルの要求を、UDFマネージャ１３に（直接）供給する。
【００９１】
3Dファイルコントローラ１２は、プレイバックマネージャ１１からのファイルの要求に応じて、3D画像のコンテンツの再生に必要なファイル、その他の情報の要求を、UDFマネージャ１３に供給する。
【００９２】
また、3Dファイルコントローラ１２は、UDFマネージャ１３に要求した3D画像のコンテンツの再生に必要なファイルや情報が、UDFマネージャ１３から供給された場合、UDFマネージャ１３からの情報を用いて、同じく、UDFマネージャ１３からのファイルに格納されたストリームを、後述するメインストリームとエンハンスストリーム（のエクステント）に分割する。
【００９３】
そして、3Dファイルコントローラ１２は、メインストリームを、メインストリームバッファ１４に供給するとともに、エンハンスストリームを、エンハンスストリームバッファ１５に供給する。
【００９４】
UDFマネージャ１３は、BDであるディスク１０で採用されているファイルシステムであるUDFのドライバであり、3Dファイルコントローラ１２から要求があったファイルや情報を、ディスク１０から読み出し、3Dファイルコントローラ１２に供給する。
【００９５】
なお、UDFマネージャ１３は、プレイバックマネージャ１１からファイルの要求があった場合、そのファイルを、ディスク１０から読み出すが、そのファイルの処理は、レガシープレーヤで行われる処理と同様であるため、説明を省略する。
【００９６】
メインストリームバッファ１４は、3Dファイルコントローラ１２からのメインストリームを一時記憶する。
【００９７】
エンハンスストリームバッファ１５は、3Dファイルコントローラ１２からのエンハンスストリームを一時記憶する。
【００９８】
3D用AVデコーダ１６は、メインストリームバッファ１４から、そこに記憶されたメインストリームを必要に応じて読み出すとともに、エンハンスストリームバッファ１５から、そこに記憶されたエンハンスストリームを必要に応じて読み出す。
【００９９】
また、3D用AVデコーダ１６は、メインストリームバッファ１４から読み出したメインストリームと、エンハンスストリームバッファ１５から読み出したエンハンスストリームとをデコードし、さらに、必要な処理を施すことで、3D画像の表示に必要な画像データ(3D stream)を得て、図示せぬ表示装置に出力する。図示せぬ表示装置では、3D用AVデコーダ１６からの画像データに対応して、3D画像が表示される。
【０１００】
［ディスク１０の説明］
【０１０１】
図４は、ディスク１０に記録される、3D画像に関係するストリームとファイルとを説明する図である。
【０１０２】
ディスク１０は、例えば、BD(Blu-Ray（登録商標）)-ROM(Read Only Memory)等のBlu-Ray（登録商標） Disc（以下、BDともいう）であり、ディスク１０には、立体視が可能な立体視画像としての、例えば、視点の数が２視点のステレオ画像（いわゆる3D(Dimension)画像）を表示するために必要なストリームが記録されている。
【０１０３】
なお、本明細書で説明する3D画像の再生は、視点の数が３視点以上の立体視が可能な立体視画像の再生に適用することができる。
【０１０４】
ここで、3D画像（ステレオ画像）の表示の方式としては、様々な方式が提案されている。ここでは、3D画像の表示の方式として、例えば、以下のタイプ１の表示方式（第１の表示方式）と、タイプ２の表示方式（第２の表示方式）とを採用する。
【０１０５】
タイプ１の表示方式では、3D画像のデータを、左眼で観察される画像（以下、左眼用画像という）のデータと、右眼で観察される画像（以下、右眼用画像という）のデータとで構成し、その左眼用画像と右眼用画像とを表示することで、3D画像を表示する。
【０１０６】
タイプ２の表示方式では、3D画像のデータを、3D画像を生成する、いわば元となる元画像のデータと、元画像に視差を与えて、元画像から、左眼用画像と右眼用画像とを生成するための視差のデータとで構成する。そして、3D画像の表示は、元画像から生成される左眼用画像と右眼用画像とを表示することで行われる。
【０１０７】
ディスク１０には、3D画像を、タイプ１及び２のうちのいずれの表示方式によっても表示することができるように、ストリーム（AV(Audio Visual)ストリーム）が記録されている。
【０１０８】
すなわち、図４Ａは、ディスク１０に記録されるAVストリームを示している。
【０１０９】
ディスク１０に記録されるAVストリームには、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームの３つのAVストリームがある。
【０１１０】
ベースストリームは、例えば、左眼用画像、及び右眼用画像のうちの一方（あるいは、左眼と右眼との間の中点を視点とする画像）のデータを符号化したストリームであり、3D画像を、タイプ１及び２のうちのいずれの表示方式で表示する場合も使用される。
【０１１１】
第１エンハンスストリームは、例えば、左眼用画像、及び右眼用画像のうちの他方のデータを符号化したストリームであり、3D画像を、タイプ１の表示方式で表示する場合に使用される。
【０１１２】
第２エンハンスストリームは、例えば、ベースストリームになっている画像に視差を与えて、左眼用画像と右眼用画像とを生成するための視差のデータのストリーム（又は、視差のデータを符号化したストリーム）であり、3D画像を、タイプ２の表示方式で表示する場合に使用される。
【０１１３】
なお、データの符号化の方式には、例えば、H.264 AVC(Advanced Video Coding)/MVC(Multi-view Video coding)等を採用することができる。
【０１１４】
ここで、H.264 AVC/MVCでは、ベースビュー(Base View)と呼ばれる画像ストリームと、ディペンデントビュー(Dependent View)と呼ばれる画像ストリームとが定義されている。
【０１１５】
ベースビューには、他のストリームを参照画像とする予測符号化が許されていないが、ディペンデントビューには、ベースビューを参照画像とする予測符号化が許されている。したがって、左眼用画像、及び右眼用画像のうちの、例えば、左眼用画像をベースビューとするとともに、右眼用画像をディペンデントビューとして、ベースビュー及びディペンデントビューの符号化を行った場合、その結果得られるディペンデントビューの符号化ストリームのデータ量は、ベースビューの符号化ストリームのデータ量に比較して、かなり少なくなる。
【０１１６】
図４Ａにおいて、ベースストリームは、例えば、ベースビューを、H.264 AVC/MVCで符号化したストリームになっている。
【０１１７】
また、第１エンハンスストリームは、例えば、ディペンデントビューを、H.264 AVC/MVCで符号化したストリームになっている。
【０１１８】
ここで、第２エンハンスストリームは、上述したように、視差のデータのストリームであり、ディペンデントビューの符号化ストリームである第１エンハンスストリームと同様に、データ量が少ない。
【０１１９】
ディスク１０には、AVストリームとして、以上のベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームが記録される。
【０１２０】
そして、3D画像の再生が、3D画像をタイプ１の表示方式で表示することによって行われる場合には、ディスク１０から、ベースストリームと第１エンハンスストリームとが読み出される。
【０１２１】
さらに、タイプ１の表示方式では、3Dファイルコントローラ１２（図３）において、ベースストリームが、メインストリームとして、メインストリームバッファ１４に供給されて記憶される。
【０１２２】
また、3Dファイルコントローラ１２（図３）において、第１エンハンスストリームが、エンハンスストリームとして、エンハンスストリームバッファ１５に供給されて記憶される。
【０１２３】
そして、メインストリームバッファ１４にメインストリームとして記憶されたベースストリームから得られる画像を、左眼用画像、及び、右眼用画像のうちの一方の画像とするとともに、エンハンスストリームバッファ１５にエンハンスストリームとして記憶された第１エンハンスストリームから得られる画像を、左眼用画像、及び、右眼用画像のうちの他方の画像として、3D画像が表示される。
【０１２４】
一方、3D画像の再生が、3D画像をタイプ２の表示方式で表示することによって行われる場合には、ディスク１０から、ベースストリームと第２エンハンスストリームとが読み出される。
【０１２５】
さらに、タイプ２の表示方式では、3Dファイルコントローラ１２（図３）において、ベースストリームが、メインストリームとして、メインストリームバッファ１４に供給されて記憶される。
【０１２６】
また、3Dファイルコントローラ１２（図３）において、第２エンハンスストリームが、エンハンスストリームとして、エンハンスストリームバッファ１５に供給されて記憶される。
【０１２７】
そして、メインストリームバッファ１４にメインストリームとして記憶されたベースストリームから得られる画像に、エンハンスストリームバッファ１５にエンハンスストリームとして記憶された第２エンハンスストリームから得られる視差を与えることで、左眼用画像、及び、右眼用画像が生成され、その左眼用画像と右眼用画像とを表示することで、3D画像の表示が行われる。
【０１２８】
ここで、3D画像をタイプ１の表示方式で表示することによる3D画像の再生（3D再生）を、以下、3Dタイプ１再生ともいう。同様に、3D画像をタイプ２の表示方式で表示することによる3D再生を、以下、3Dタイプ２再生ともいう。
【０１２９】
なお、ディスク１０によれば、以上のような3D再生の他、ディスク１０から、ベースストリームだけを読み出し、そのベースストリームによって、２次元画像（2D画像）（ここでは、例えば、左眼用画像）を表示する2D再生を行うことができる。
【０１３０】
例えば、ディスク１０の再生に用いられる再生装置が、3D再生に対応していないレガシープレーヤである場合には、2D再生が行われる。すなわち、レガシープレーヤでは、ディスク１０から、ベースストリームだけが読み出され、そのベースストリームによって、2D画像が表示される。これにより、ディスク１０は、レガシープレーヤ、及び、3D再生に対応している3D対応プレーヤのいずれでも再生することができる。
【０１３１】
なお、3D対応プレーヤにおいて、3Dタイプ１再生を行うか、又は、3Dタイプ２再生を行うかは、例えば、あらかじめ決定しておくこともできるし、ユーザの操作等に応じて決定することもできる。
【０１３２】
ところで、3D再生では、上述したように、ディスク１０から、ベースストリームと第１エンハンスストリームとが読み出されるか、又は、ベースストリームと第２エンハンスストリームとが読み出される。
【０１３３】
例えば、いま、ディスク１０から、ベースストリームと第１エンハンスストリームとの２本のストリームを読み出すこととすると、ディスク１０からのストリームの読み出しレートは、シーク等によって制限されるため、ベースストリームと第１エンハンスストリームとが、ディスク１０に適切に記録されていない場合には、ベースストリームと第１エンハンスストリームと読み出しが、3D画像の再生（表示）に間に合わなくなる。この点、ベースストリームと第２エンハンスストリームとの２本のストリームを読み出す場合も同様である。
【０１３４】
そこで、ディスク１０に記録されるベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームは、図４Ａに示すように、いずれも、連続で読み出される単位であるエクステントと呼ばれる断片に分割される。
【０１３５】
ここで、図４Ａでは、ベースストリームは、その先頭から順に、エクステントExt1[0]，Ext1[1]，Ext1[2]に分割されている。また、第１エンハンスストリームは、その先頭から順に、エクステントExt2[0]，Ext2[1]，Ext2[2]に分割されている。さらに、第２エンハンスストリームは、その先頭から順に、エクステントExt3[0]，Ext3[1]，Ext3[2]に分割されている。
【０１３６】
ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームの各エクステントは、インターリーブ配置となるように並べられる（インターリーブされる）。そして、その結果得られるインターリーブデータが、ディスク１０に、物理的に（なるべく）連続するように記録される。
【０１３７】
ここで、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームの３種類のストリームについて、インターリーブ配置とは、同一種類のストリームのエクステントが隣接しない、周期的な配置を意味する。
【０１３８】
図４Ｂは、ディスク１０に記録されたインターリーブデータを示している。
【０１３９】
図４Ｂのインターリーブデータでは、エクステントExt2[0]，Ext1[0]，Ext3[0]、エクステントExt2[1]，Ext1[1]，Ext3[1]、エクステントExt2[2]，Ext1[2]，Ext3[2]の順で、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームの各エクステントが配置されている。
【０１４０】
ここで、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームそれぞれのエクステントへの分割は、例えば、3D再生の、同一の再生時間に必要なデータが１つのエクステントとなるように行われる。
【０１４１】
すなわち、例えば、いま、説明を簡単にするため、ベースストリームに対応する画像のコンテンツ全体の再生時間の３等分する時刻を、再生の開始時刻を0として、時系列順に、t1，t2と表すこととすると、再生の開始時刻から時刻t1までの再生時間に必要な分の、ベースストリームのデータが、エクステントExt1[0]に分割される。
【０１４２】
さらに、時刻t1から時刻t2までの再生時間に必要な分のベースストリームのデータが、エクステントExt1[1]に分割され、時刻t2から再生の終了時刻までの再生時間に必要な分のベースストリームのデータが、エクステントExt1[2]に分割される。
【０１４３】
第１エンハンスストリームについても、同様に、再生の開始時刻から時刻t1までの再生時間に必要な分の、第１エンハンスストリームのデータが、エクステントExt2[0]に分割される。
【０１４４】
さらに、時刻t1から時刻t2までの再生時間に必要な分の第１エンハンスストリームのデータが、エクステントExt2[1]に分割され、時刻t2から再生の終了時刻までの再生時間に必要な分の第１エンハンスストリームのデータが、エクステントExt2[2]に分割される。
【０１４５】
第２エンハンスストリームも同様にして、エクステントExt3[0]，Ext3[1]，Ext3[2]に分割される。
【０１４６】
ここで、ベースストリームのエクステントを、以下、適宜、エクステントExt1とも記載する。同様に、第１エンハンスストリームのエクステントを、以下、適宜、エクステントExt2とも記載し、第２エンハンスストリームのエクステントを、以下、適宜、エクステントExt3とも記載する。
【０１４７】
エクステントのインターリーブでは、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームのエクステントが、以下のようにインターリーブ配置に配置される。
【０１４８】
すなわち、ベースストリームは、2D再生、並びに、3Dタイプ１再生、及び、3Dタイプ２再生のいずれの種類の再生でも必要な、いわば、必須のストリーム（必須ストリーム）である。
【０１４９】
一方、第１エンハンスストリームは、2D再生と、3Dタイプ２再生では必要ないが、3Dタイプ１再生では必要な、いわば、選択的なストリーム（選択ストリーム）である。同様に、第２エンハンスストリームは、2D再生と、3Dタイプ１再生では必要ないが、3Dタイプ２再生では必要な選択ストリームである。
【０１５０】
エクステントのインターリーブでは、選択ストリーム（ここでは、第１エンハンスストリームと第２エンハンスストリーム）のエクステントが、必須ストリーム（ここでは、ベースストリーム）のエクステントに隣接するように、エクステントが配置される。
【０１５１】
すなわち、選択ストリームである第１エンハンスストリームのエクステントExt2と、第２エンハンスストリームのエクステントExt3は、いずれも、必須ストリームであるベースストリームのエクステントExt1に隣接するように配置される。
【０１５２】
図４Ｂでは、第１エンハンスストリームのエクステントExt2が、図中、ベースストリームのエクステントExt1の左側（前側）（先に読み出しがされる位置側）に隣接するように配置されている。また、第２エンハンスストリームのエクステントExt3が、図中、ベースストリームのエクステントExt1の右側（後側）（後に読み出しがされる位置側）に隣接するように配置されている。
【０１５３】
すなわち、ベースストリームのエクステントExt1、第１エンハンスストリームのエクステントExt2、及び、第２エンハンスストリームのエクステントExt3の、３種類のエクステントは、その３種類のエクステントを、１セットのエクステント（以下、エクステントセットともいう）として、エクステントExt2，Ext1，Ext3の順で、連続して並ぶように配置されている。
【０１５４】
なお、図４Ｂでは、エクステントセットが、隣接するエクステントセットどうしの間に、小さな隙間が形成されるように、ディスク１０に記録されているが、エクステントセットは、隣接するエクステントセットどうしの間に隙間が形成されないように、ディスク１０に記録することができる。
【０１５５】
また、図４Ｂでは、１セットのエクステントセットを構成するベースストリームのエクステントExt1、第１エンハンスストリームのエクステントExt2、及び、第２エンハンスストリームのエクステントExt3は、同一の再生時間に再生されるエクステントになっている。
【０１５６】
すなわち、ベースストリームの先頭からk+1番目のエクステントExt1[k]、第１エンハンスストリームの先頭からk+1番目のエクステントExt2[k]、及び、第２エンハンスストリームの先頭からk+1番目のエクステントExt3[k]は、同一の再生時間に再生されるエクステントであるが、図４Ｂでは、これらのエクステントExt1[k]，Ext2[k]、及び、Ext3[k]が、１セットのエクステントセットを構成している。
【０１５７】
以上のように、エクステントを、インターリーブ配置にして、ディスク１０に記録することで、3D再生時に、ディスク１０から、ベースストリームと第１エンハンスストリームとの２本のストリーム、又は、ベースストリームと第２エンハンスストリームとの２本のストリーム（のエクステント）を、再生に間に合うように、迅速に読み出すことが可能となる。
【０１５８】
すなわち、図４Ｃは、ディスク１０からのエクステントの読み出しを説明する図である。
【０１５９】
2D再生が行われる場合には、ディスク１０から、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームのうちの、ベースストリームのみのエクステントExt1が読み出される。
【０１６０】
3Dタイプ１再生が行われる場合には、ディスク１０から、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームのうちの、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とが読み出される。
【０１６１】
上述したように、エクステントセットでは、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とは、隣接して（連続して）記録されているので、エクステントセット中のエクステントExt1及びExt2は、シークなしで読み出すこと、すなわち、迅速に読み出すことができる。したがって、エクステントを、3D画像の再生に間に合うように読み出し、3D画像のコンテンツを適切に再生することができる。
【０１６２】
3Dタイプ２再生が行われる場合には、ディスク１０から、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームのうちの、ベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とが読み出される。
【０１６３】
上述したように、エクステントセットでは、ベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とは、隣接して記録されているので、エクステントセット中のエクステントExt1及びExt3も、エクステントExt1及びExt2と同様に、シークなしで迅速に読み出すことができる。したがって、エクステントを、3D画像の再生に間に合うように読み出し、3D画像のコンテンツを適切に再生することができる。
【０１６４】
図４Ｄは、ディスク１０に、上述したような、エクステントをインターリーブしたインターリーブデータを記録する場合に、ディスク１０に記録されるファイルを示している。
【０１６５】
ディスク１０には、2D再生用ファイル、3Dタイプ１再生用ファイル、及び、3Dタイプ２再生用ファイルが記録される。
【０１６６】
2D再生用ファイルは、2D再生時に読み出される、ベースストリームが格納されたファイル（ベースファイル）である。2D再生用ファイルには、2D再生に必要なベースストリームのエクステントExt1が、再生順であるExt1[0]，Ext1[1]，Ext1[2]の順番で格納される。
【０１６７】
3Dタイプ１再生用ファイルは、3Dタイプ１再生時に読み出される、後述する仮想エクステントが格納されたファイル（仮想エクステントファイル）である。3Dタイプ１再生用ファイルには、3Dタイプ１再生に必要なベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とが、再生順であるExt2[0]とExt1[0]とのセット、Ext2[1]とExt1[1]とのセット、Ext2[2]とExt1[2]とのセットの順番で格納される。
【０１６８】
3Dタイプ２再生用ファイルは、3Dタイプ２再生時に読み出される、後述する仮想エクステントが格納された仮想エクステントファイルである。3Dタイプ２再生用ファイルには、3Dタイプ２再生に必要なベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とが、再生順であるExt1[0]とExt3[0]とのセット、Ext1[1]とExt3[1]とのセット、Ext1[2]とExt3[2]とのセットの順番で格納される。
【０１６９】
したがって、ベースストリームのエクステントExt1は、2D再生用ファイル、3Dタイプ１再生用ファイル、及び、3Dタイプ２再生用ファイルの、３つのファイルすべての構成要素となり、その３つのファイルで共有される。
【０１７０】
一方、第１エンハンスストリームのエクステントExt2は、3Dタイプ１再生用ファイルの構成要素となるが、2D再生用ファイル、及び、3Dタイプ２再生用ファイルの構成要素にはならない。
【０１７１】
同様に、第２エンハンスストリームのエクステントExt3は、3Dタイプ２再生用ファイルの構成要素となるが、2D再生用ファイル、及び、3Dタイプ１再生用ファイルの構成要素にはならない。
【０１７２】
図５は、ファイルシステム（ドライバ）による、ディスク１０上のファイルの管理を説明する図である。
【０１７３】
図４で説明したように、ディスク１０に記録されたデータ（エクステント）は、複数のファイルで共有されることがある。このため、ディスク１０上のファイルを管理するファイルシステムとしては、ディスク１０に記録されたデータを、複数のファイルで共有することができるファイルシステムを採用する必要がある。そのようなファイルシステムとしては、例えば、ECMA(European Computer Manufacturer Association)167の規格に準拠したUDF(Universal Disk Format)等がある。
【０１７４】
ファイルシステムでは、ディスク１０上のファイルのファイル名や、ディスク１０上のファイルを構成する構成要素となるデータ（ここでは、エクステント）の位置を表す位置情報等の、ファイルに関するファイル情報の１つとしてのファイルエントリ(File Entry)が管理（生成、記憶等）される。
【０１７５】
図５は、2D再生用ファイル、3Dタイプ１再生用ファイル、及び、3Dタイプ２再生用ファイルのファイルエントリを示している。
【０１７６】
2D再生用ファイルのファイルエントリには、2D再生用ファイルの構成要素であるエクステントExt1[0]，Ext1[1]，Ext1[2]それぞれの位置情報AD(Allocation Descriptor)#00，AD#01，AD#01が登録されている。
【０１７７】
ここで、エクステントの位置情報には、例えば、そのエクステントが記録されているディスク１０上の位置の先頭アドレス(Extent Position)（例えば、論理的なセクタ番号等）と、そのエクステントのサイズ(Extent Length)とが含まれる。
【０１７８】
3Dタイプ１再生用ファイルのファイルエントリには、3Dタイプ１再生用ファイルの構成要素であり、かつ、ディスク１０に（物理的に）連続して記録されている、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とのセットを、１つの仮想的なエクステント（以下、仮想エクステントともいう）として、その仮想エクステントの位置情報が登録されている。
【０１７９】
すなわち、3Dタイプ１再生用ファイルのファイルエントリには、エクステントExt2[0]とExt1[0]とのセットである仮想エクステントの位置情報AD#00、エクステントExt2[1]とExt1[1]とのセットである仮想エクステントの位置情報AD#01、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステントの位置情報AD#02が登録されている。
【０１８０】
3Dタイプ２再生用ファイルのファイルエントリには、3Dタイプ２再生用ファイルの構成要素であり、かつ、ディスク１０に連続して記録されている、ベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とのセットを、１つの仮想エクステントとして、その仮想エクステントの位置情報が登録されている。
【０１８１】
すなわち、3Dタイプ２再生用ファイルのファイルエントリには、エクステントExt1[0]とExt3[0]とのセットである仮想エクステントの位置情報AD#00、エクステントExt1[1]とExt3[1]とのセットである仮想エクステントの位置情報AD#01、及び、エクステントExt1[2]とExt3[2]とのセットである仮想エクステントの位置情報AD#02が登録されている。
【０１８２】
図６は、ファイルシステムが、ファイルエントリを参照してエクステント（仮想エクステント）を読み出して、外部に提供する読み出しの処理を説明する図である。
【０１８３】
例えば、図３のプレイバックマネージャ１１や、3Dファイルコントローラ１２等の、再生を行うアプリケーション（以下、再生アプリケーションともいう）が、ファイルシステム（図３のUDFマネージャ１３）に対して、2D再生用ファイルの読み出しを要求すると、ファイルシステムは、2D再生用ファイルのファイルエントリを参照することで、ディスク１０から、エクステントExt1[0]，Ext1[1]，Ext1[2]を読み出して提供する。
【０１８４】
ディスク１０から読み出されたエクステントExt1[0]，Ext1[1]，Ext1[2]は、ベースストリームのエクステントであるから、再生アプリケーションは、そのベースストリームのエクステントExt1[0]，Ext1[1]，Ext1[2]を用いて、2D再生を行うことができる。
【０１８５】
また、再生アプリケーションが、ファイルシステムに対して、3Dタイプ１再生用ファイルの読み出しを要求すると、ファイルシステムは、3Dタイプ１再生用ファイルのファイルエントリを参照することで、ディスク１０から、エクステントExt2[0]とExt1[0]とのセットである仮想エクステント、エクステントExt2[1]とExt1[1]とのセットである仮想エクステント、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステントを読み出して提供する。
【０１８６】
ディスク１０から読み出された、エクステントExt2[0]とExt1[0]とのセットである仮想エクステント、エクステントExt2[1]とExt1[1]とのセットである仮想エクステント、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステントのうちの、エクステントExt1[0]，Ext1[1]，Ext1[2]は、ベースストリームのエクステントであり、残りのエクステントExt2[0]，Ext2[1]，Ext2[2]は、第１エンハンスストリームのエクステントである。
【０１８７】
したがって、再生アプリケーションは、ディスク１０から読み出されたベースストリームのエクステントExt1[0]，Ext1[1]，Ext1[2]と、第１エンハンスストリームのエクステントExt2[0]，Ext2[1]，Ext2[2]とを用いて、3Dタイプ１再生を行うことができる。
【０１８８】
さらに、再生アプリケーションが、ファイルシステムに対して、3Dタイプ２再生用ファイルの読み出しを要求すると、ファイルシステムは、3Dタイプ２再生用ファイルのファイルエントリを参照することで、ディスク１０から、エクステントExt1[0]とExt3[0]とのセットである仮想エクステント、エクステントExt1[1]とExt3[1]とのセットである仮想エクステント、及び、エクステントExt1[2]とExt3[2]とのセットである仮想エクステントを読み出して提供する。
【０１８９】
ディスク１０から読み出された、エクステントExt1[0]とExt3[0]とのセットである仮想エクステント、エクステントExt1[1]とExt3[1]とのセットである仮想エクステント、及び、エクステントExt1[2]とExt3[2]とのセットである仮想エクステントのうちの、エクステントExt1[0]，Ext1[1]，Ext1[2]は、ベースストリームのエクステントであり、残りのエクステントExt3[0]，Ext3[1]，Ext3[2]は、第２エンハンスストリームのエクステントである。
【０１９０】
したがって、再生アプリケーションは、ディスク１０から読み出されたベースストリームのエクステントExt1[0]，Ext1[1]，Ext1[2]と、第２エンハンスストリームのエクステントExt3[0]，Ext3[1]，Ext3[2]とを用いて、3Dタイプ２再生を行うことができる。
【０１９１】
ところで、上述したように、再生アプリケーションが、ファイルシステムに対して、3Dタイプ１再生用ファイルの読み出しを要求すると、ファイルシステムは、3Dタイプ１再生用ファイルのファイルエントリを参照することで、ディスク１０から、エクステントExt2[0]とExt1[0]とのセットである仮想エクステント、エクステントExt2[1]とExt1[1]とのセットである仮想エクステント、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステントを読み出す。
【０１９２】
一方、3Dタイプ１再生を行うには、ベースストリームと、第１エンハンスストリームとのそれぞれを復号等する必要がある。このため、3Dタイプ１再生を行うには、再生をディスク１０から読み出された仮想エクステントを、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割する必要がある。
【０１９３】
このことは、3Dタイプ２再生を行う場合も同様であり、3Dタイプ２再生を行うには、ディスク１０から読み出された仮想エクステントを、ベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とに分割する必要がある。
【０１９４】
図７は、3Dタイプ１再生用ファイルから読み出された仮想エクステントを、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割する方法を説明する図である。
【０１９５】
上述したように、ファイルシステムは、3Dタイプ１再生用ファイルのファイルエントリを参照することで、ディスク１０から、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステント（エクステントExt2[0]とExt1[0]とのセットである仮想エクステント、エクステントExt2[1]とExt1[1]とのセットである仮想エクステント、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステント）を読み出す。
【０１９６】
ところで、ファイルシステムは、2D再生用ファイルのファイルエントリを管理しており、そのファイルエントリには、ベースストリームのエクステントExt1（エクステントExt1[0]，Ext1[1]，Ext1[2]）の位置情報AD#00，AD#01，AD#01としての、エクステントのアドレスとサイズとが登録されている。
【０１９７】
したがって、2D再生用ファイルのファイルエントリから、ベースストリームのエクステントExt1のサイズを認識することができる。そして、そのエクステントExt1のサイズから、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステントにおける、エクステントExt2とExt1との境界を認識することができる。
【０１９８】
以上から、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステント（以下、3Dタイプ１の仮想エクステントともいう）は、2D再生用ファイルのファイルエントリを参照して、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割することができる。
【０１９９】
同様に、3Dタイプ２再生用ファイルから読み出された、ベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とのセットである仮想エクステント（以下、3Dタイプ２の仮想エクステントともいう）も、2D再生用ファイルのファイルエントリを参照して、ベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とに分割することができる。
【０２００】
なお、図７では、3Dタイプ１再生用ファイルから読み出された、3Dタイプ１の仮想エクステントを、2D再生用ファイルのファイルエントリを参照して、エクステントExt2とExt1とに分割するようにしたが、3Dタイプ１の仮想エクステントは、その他、例えば、ディスク１０に、第１エンハンスストリームのファイルを記録しておき、その第１エンハンスストリームのファイルのファイルエントリを参照して、エクステントExt2とExt1とに分割することができる。
【０２０１】
すなわち、上述の図４Ｄでは、ディスク１０に、2D再生用ファイル、3Dタイプ１再生用ファイル、及び、3Dタイプ２再生用ファイルの３つのファイルを記録することとしたが、ディスク１０には、さらに、第１エンハンスストリームのファイルを記録することができる。
【０２０２】
ここで、第１エンハンスストリームのファイル（第１エンハンスストリームファイル）とは、第１エンハンスストリームのエクステントExt2が、再生順であるExt2[0]，Ext2[1]，Ext2[2]の順番で格納されたファイルである。
【０２０３】
したがって、第１エンハンスストリームファイルのファイルエントリには、図７において点線で示すように、第１エンハンスストリームファイルの構成要素であるエクステントExt2[0]，Ext2[1]，Ext2[2]それぞれの位置情報AD#00，AD#01，AD#01が登録される。
【０２０４】
第１エンハンスストリームファイルのファイルエントリを参照することによっても、2D再生用ファイルのファイルエントリを参照する場合と同様に、3Dタイプ１の仮想エクステント（第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステント）における、エクステントExt2とExt1との境界を認識することができる。
【０２０５】
したがって、3Dタイプ１の仮想エクステントは、第１エンハンスストリームファイルのファイルエントリを参照して、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割することができる。
【０２０６】
同様に、3Dタイプ２再生用ファイルから読み出される3Dタイプ２の仮想エクステントも、第２エンハンスストリームのエクステントExt3が、再生順であるExt3[0]，Ext3[1]，Ext3[2]の順番で格納されたファイルである第２エンハンスストリームファイルを、ディスク１０に記録しておくことにより、その第２エンハンスストリームファイルのファイルエントリを参照して、ベースストリームのエクステントExt1と、第２エンハンスストリームのエクステントExt3とに分割することができる。
【０２０７】
なお、例えば、3Dタイプ１再生を行う場合においては、3Dタイプ１再生用ファイルから読み出されるk+1番目の仮想エクステント、すなわち、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]とのセットである仮想エクステントを、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]とに分割するのに用いる（参照する）、2D再生用ファイルのファイルエントリの位置情報の特定が問題となる。
【０２０８】
ここで、3Dタイプ１再生用ファイルのk+1番目の仮想エクステントの位置は、3Dタイプ１再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kによって表される。
【０２０９】
また、k+1番目の仮想エクステントが、同一時刻に再生される、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]とから構成される場合、そのk+1番目の仮想エクステントを構成するベースストリームのエクステントExt1[k]の位置は、2D再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kによって表される。
【０２１０】
したがって、3Dタイプ１再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kに従って読み出されるk+1番目の仮想エクステントは、2D再生用ファイルのファイルエントリの同一の順番の位置情報、つまり、k+1番目の位置情報AD#0kを参照して、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]とに分割することができる。
【０２１１】
なお、k+1番目の仮想エクステントを、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]とに分割するのに、2D再生用ファイルのファイルエントリではなく、図７において点線で示したように、第１エンハンスストリームファイルのファイルエントリを参照する場合には、やはり、k+1番目の位置情報AD#0kが参照される。
【０２１２】
3Dタイプ２再生を行う場合にも、3Dタイプ２再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kに従って読み出される、ベースストリームのエクステントExt1[k]と、第２エンハンスストリームのエクステントExt3[k]とのセットである仮想エクステントは、2D再生用ファイル（又は、第２エンハンスストリームのファイル）のファイルエントリの同一の順番の位置情報であるk+1番目の位置情報AD#0kを参照して、ベースストリームのエクステントExt1[k]と、第２エンハンスストリームのエクステントExt3[k]とに分割することができる。
【０２１３】
また、仮想エクステントにおいて、ベースストリームのエクステントExt1は、仮想エクステントの前側（先に読み出しがされる位置側）、又は、後ろ側（後に読み出しがされる位置側）に詰めた状態で存在するので、仮想エクステントを、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2、又は、第２エンハンスストリームのエクステントExt3とに分割するときの、2D再生用ファイルのファイルエントリの位置情報の特定は、次のように行うことができる。
【０２１４】
すなわち、例えば、3Dタイプ１再生を行う場合には、3Dタイプ１再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kに従って読み出されるk+1番目の仮想エクステントにおいて、エクステントは、第１エンハンスストリームのエクステントExt2[k]、ベースストリームのエクステントExt1[k]の順番で並んでいる。
【０２１５】
そして、k+1番目の仮想エクステントにおいて、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]との境界は、3Dタイプ１再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kが表す開始アドレスAsから、その位置情報AD#0kが表すサイズSを、開始アドレスAsに加算して得られるアドレスAe=As+Sまでの間に存在する。
【０２１６】
したがって、2D再生用ファイルのファイルエントリにおいて、開始アドレスが、アドレスAsからアドレスAeまでの範囲の値になっている位置情報ADが、k+1番目の仮想エクステントを、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]とに分割するのに参照すべき位置情報ということになる。
【０２１７】
なお、k+1番目の仮想エクステントを、第１エンハンスストリームのエクステントExt2[k]と、ベースストリームのエクステントExt1[k]とに分割するのに、第１エンハンスストリームファイルのファイルエントリを参照する場合には、そのファイルエントリの位置情報のうちの、開始アドレスが、3Dタイプ１再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kが表す開始アドレスAsと一致する位置情報が、参照すべき位置情報となる。
【０２１８】
同様に、3Dタイプ２再生を行う場合に、3Dタイプ２再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kに従って読み出される、ベースストリームのエクステントExt1[k]、第２エンハンスストリームのエクステントExt3[k]の順で、エクステントが並ぶk+1番目の仮想エクステントを、ベースストリームのエクステントExt1[k]と、第２エンハンスストリームのエクステントExt3[k]とに分割するのに参照すべき位置情報は、以下のようになる。
【０２１９】
すなわち、2D再生用ファイルのファイルエントリを参照する場合には、そのファイルエントリの位置情報のうちの、開始アドレスが、3Dタイプ２再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kが表す開始アドレスAsと一致する位置情報が、参照すべき位置情報となる。
【０２２０】
また、第２エンハンスストリームのファイルのファイルエントリを参照する場合には、そのファイルエントリの位置情報のうちの、開始アドレスが、3Dタイプ２再生用ファイルのファイルエントリのk+1番目の位置情報AD#0kが表す開始アドレスAsから、その位置情報AD#0kが表すサイズSを、開始アドレスAsに加算して得られるアドレスAe=As+Sまでの範囲の値になっている位置情報が、参照すべき位置情報となる。
【０２２１】
なお、図４Ｂで説明したエクステントのインターリーブでは、ベースストリームの先頭からk+1番目のエクステントExt1[k]、第１エンハンスストリームの先頭からk+1番目のエクステントExt2[k]、及び、第２エンハンスストリームの先頭からk+1番目のエクステントExt3[k]によって、１セットのエクステントセットを構成するようにしたが、１セットのエクステントセットの構成は、これに限定されるものではない。
【０２２２】
すなわち、図４Ｂで説明したエクステントのインターリーブでは、同一の再生時間に再生される（されうる）、k+1番目のエクステントExt1[k]，Ext2[k]、及び、Ext3[k]によって、１セットのエクステントセットが構成されるが、１セットのエクステントセットは、異なる再生時間に再生されるエクステントによって構成することができる。
【０２２３】
具体的には、例えば、第１エンハンスストリームの先頭からk+1番目のエクステントExt2[k]、ベースストリームの先頭からk+1番目のエクステントExt1[k]、及び、第２エンハンスストリームの先頭からk+2番目のエクステントExt3[k+1]を、その順番で並べて、1セットのエクステントセットとすることができる。
【０２２４】
また、図４ないし図７で説明した実施の形態において、ベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームについては、ディスク１０に、最大で、７個のファイルを記録することができる。
【０２２５】
すなわち、ディスク１０には、図４で説明した2D再生用ファイル、3Dタイプ１再生用ファイル、3Dタイプ２再生用ファイル、図７で説明した第１エンハンスストリームファイル、第２エンハンスストリームファイル、3Dタイプ１再生用ファイルに格納された3Dタイプ１の仮想エクステントにおける、ベースストリームのエクステントExt1の並びが格納されたファイル（以下、タイプ１用ベースファイルともいう）、及び、3Dタイプ２再生用ファイルに格納された3Dタイプ２の仮想エクステントにおける、ベースストリームのエクステントExt1の並びが格納されたファイル（以下、タイプ２用ベースファイルともいう）を記録することができる。
【０２２６】
なお、2D再生用ファイル、タイプ１用ベースファイル、及び、タイプ２用ベースファイルの実体は、いずれも、ベースストリームのエクステントExt1に並びであり、したがって、タイプ１用ベースファイル、及び、タイプ２用ベースファイルの実体（中身）は、いずれも、ベースファイルと同一である。
【０２２７】
ここで、2D再生用ファイルは、2D再生に関連する関連ファイルということができる。また、3Dタイプ１再生用ファイル、第１エンハンスストリームファイル、及び、タイプ１用ベースファイルは、3Dタイプ１再生に関連する関連ファイルということができる。さらに、3Dタイプ２再生用ファイル、第２エンハンスストリームファイル、及び、タイプ２用ベースファイルは、3Dタイプ２再生に関連する関連ファイルということができる。
【０２２８】
そして、3Dタイプ１再生を行う場合には、3Dタイプ１再生の関連ファイルである3Dタイプ１再生用ファイル、第１エンハンスストリームファイル、及び、タイプ１用ベースファイルのうちの、3Dタイプ１再生用ファイルと第１エンハンスストリームファイルのファイルエントリ、又は、3Dタイプ１再生用ファイルとタイプ１用ベースファイルのファイルエントリによって、3Dタイプ１再生用ファイルに格納された仮想エクステントを読み出し、その仮想エクステントを、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割することができる。
【０２２９】
同様に、3Dタイプ２再生を行う場合には、3Dタイプ２再生の関連ファイルである3Dタイプ２再生用ファイル、第２エンハンスストリームファイル、及び、タイプ２用ベースファイルのうちの、3Dタイプ２再生用ファイルと第２エンハンスストリームファイルのファイルエントリ、又は、3Dタイプ２再生用ファイルとタイプ２用ベースファイルのファイルエントリによって、3Dタイプ２再生用ファイルに格納された仮想エクステントを読み出し、その仮想エクステントを、第２エンハンスストリームのエクステントExt3と、ベースストリームのエクステントExt1とに分割することができる。
【０２３０】
［3Dファイルコントローラ１２］
【０２３１】
図８は、図３の3Dファイルコントローラ１２の構成例を示すブロック図である。
【０２３２】
3Dファイルコントローラ１２は、ディスク１０から読み出される仮想エクステントファイル（3Dタイプ１再生用ファイル、又は、3Dタイプ２再生用ファイル）の仮想エクステントを、ベースストリームのエクステントExt1と、エンハンスストリームのエクステント（第１エンハンスストリームのエクステントExt2、又は、第２エンハンスストリームのエクステントExt3）とに分割する分割位置を、ベースファイル、及び、仮想エクステントファイルのファイルエントリから求め、仮想エクステントを、分割位置で分割することにより、仮想エクステントを、ベースストリームのエクステントExt1と、エンハンスストリームのエクステントとに分割する再生制御手段として機能する。
【０２３３】
すなわち、3Dファイルコントローラ１２は、ファイルマネージャ２１、アロケーションマネージャ２２、及び、スプリッタ２３から構成される。
【０２３４】
例えば、3Dタイプ１再生を行う場合、ファイルマネージャ２１には、プレイバックマネージャ１１（図３）から、3Dタイプ１再生の関連ファイルである3Dタイプ１再生用ファイル、第１エンハンスストリームファイル、及び、タイプ１用ベースファイルを特定する情報としての、例えば、ID(Identification)と、3Dタイプ１再生に用いられるベースストリーム（タイプ１用ベースファイルに格納されたベースストリーム）の、ディスク１０からの読み込みを開始する開始点（読み込み開始点）、並びに、ディスク１０から読み込むベースストリームのサイズ（読み込みサイズ）が、ファイルの読み出しの要求とともに供給される。
【０２３５】
ここで、読み込み開始点としては、例えば、ベースストリームのソースパケットの番号SPN(Source Packet Number)を採用することができ、この場合、読み込みサイズとしては、ソースパケットのパケット数が採用される。
【０２３６】
また、読み込み開始点としては、例えば、ベースストリームのアラインユニットの番号AUN(Aligned Unit Number)を採用することができ、この場合、読み込みサイズとしては、アラインユニットのユニット数が採用される。
【０２３７】
ファイルマネージャ２１は、プレイバックマネージャ１１（図３）からの、3Dタイプ１再生の関連ファイルである3Dタイプ１再生用ファイル、第１エンハンスストリームファイル、及び、タイプ１用ベースファイルのIDと、読み込み開始点、並びに、読み込みサイズを、アロケーションマネージャ２２に供給する。
【０２３８】
さらに、ファイルマネージャ２１は、3Dタイプ１再生用ファイルの読み出しと、その3Dタイプ１再生用ファイルに格納された仮想エクステントの、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とへの分割とを、アロケーションマネージャ２２に要求する。
【０２３９】
アロケーションマネージャ２２は、ファイルマネージャ２１からの要求に応じて、同じくファイルマネージャ２１からIDが供給された関連ファイルである3Dタイプ１再生用ファイル、第１エンハンスストリームファイル、及び、タイプ１用ベースファイルのファイルエントリ（アロケーション情報）を、UDFマネージャ１３（図３）に要求して取得し、図示せぬメモリに記憶させる。
【０２４０】
さらに、アロケーションマネージャ２２は、3Dタイプ１再生用ファイルに格納された仮想エクステントを、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とに分割する分割位置を算出する。
【０２４１】
そして、アロケーションマネージャ２２は、3Dタイプ１再生用ファイルに格納された仮想エクステントを、UDFマネージャ１３（図３）に要求して取得し、スプリッタ２３に供給する。
【０２４２】
さらに、アロケーションマネージャ２２は、スプリッタ２３を制御することにより、UDFマネージャ１３からの3Dタイプ１再生用ファイルに格納された仮想エクステントを分割位置で分割させる。
【０２４３】
すなわち、アロケーションマネージャ２２は、変数posに、ファイルマネージャ２１からの読み込み開始点をセットするとともに、変数sizeに、ファイルマネージャ２１からの読み込みサイズをセットする。
【０２４４】
また、アロケーションマネージャ２２は、UDFマネージャ１３（図３）から取得したタイプ１用ベースファイルのファイルエントリを参照して、変数posが表すディスク１０上の位置に記録されている、ベースストリームのエクステントExt1を、注目ベースエクステントExt1として特定する。
【０２４５】
そして、アロケーションマネージャ２２は、UDFマネージャ１３から取得したタイプ１用ベースファイルのファイルエントリを参照して、注目ベースエクステントExt1の開始アドレス（セクタ番号）EB_startとサイズEB_sizeを認識する。
【０２４６】
さらに、アロケーションマネージャ２２は、注目ベースエクステントExt1の先頭を基準とする、変数posが表すディスク１０上の位置の相対的な位置（相対位置）EB_posを求める。
【０２４７】
その後、アロケーションマネージャ２２は、UDFマネージャ１３から取得した3Dタイプ１再生用ファイルのファイルエントリを参照して、注目ベースエクステントExt1の開始アドレスEB_startに記録されている仮想エクステント（注目ベースエクステントExt1と、第１エンハンスストリームのエクステントExt2とのセット）を、注目仮想エクステントとして特定する。
【０２４８】
さらに、アロケーションマネージャ２２は、UDFマネージャ１３から取得した3Dタイプ１再生用ファイルのファイルエントリを参照して、注目仮想エクステントの開始アドレスEF_startとサイズEF_sizeを求める。
【０２４９】
そして、アロケーションマネージャ２２は、注目ベースエクステントExt1の開始アドレスEB_startと、注目仮想エクステントの開始アドレスEF_startとに基づいて、注目仮想エクステントを分割する分割位置SPを求める。
【０２５０】
すなわち、注目ベースエクステントExt1の開始アドレスEB_startが、注目仮想エクステントの開始アドレスEF_startより大である場合（EB_star＞EF_start）、すなわち、注目仮想エクステントにおいて、第１エンハンスストリームのエクステントExt2が前側（先に読み出しがされる側）に位置し、注目ベースエクステントExt1が後ろ側（後に読み出しがされる側）に位置する場合、アロケーションマネージャ２２は、分割位置SPを、注目ベースエクステントExt1の開始アドレスEB_startにセットする。
【０２５１】
また、注目ベースエクステントExt1の開始アドレスEB_startと、注目仮想エクステントの開始アドレスEF_startとが等しい場合（EB_star＝EF_start）、すなわち、注目仮想エクステントにおいて、第１エンハンスストリームのエクステントExt2が後ろ側に位置し、注目ベースエクステントExt1が前側に位置する場合、アロケーションマネージャ２２は、分割位置SPを、注目ベースエクステントExt1の開始アドレスEB_startと、そのサイズEB_sizeとを加算した加算値にセットする。
【０２５２】
その後、アロケーションマネージャ２２は、注目仮想エクステントの開始アドレスEF_startから、注目仮想エクステントのサイズEF_size分のデータ、つまり、注目仮想エクステントを、UDFマネージャ１３（図３）に要求して取得し、スプリッタ２３に供給する。
【０２５３】
さらに、アロケーションマネージャ２２は、注目仮想エクステントを、分割位置SPで分割するように、スプリッタ２３を制御する。
【０２５４】
スプリッタ２３は、アロケーションマネージャ２２の制御に従い、アロケーションマネージャ２２からの注目仮想エクステントを、分割位置SPで分割することにより、注目仮想エクステントを、ベースストリームのエクステント（注目ベースエクステント）Ext1と、第１エンハンスストリームのエクステントExt2とに分割する。
【０２５５】
そして、スプリッタ２３は、ベースストリームのエクステントExt1を、メインストリームのエクステントとして、メインストリームバッファ１４（図３）に供給するとともに、第１エンハンスストリームのエクステントExt2を、エンハンスストリームのエクステントとして、エンハンスストリームバッファ１５（図３）に供給する。
【０２５６】
その後、アロケーションマネージャ２２は、注目ベースエクステントExt1のサイズEB_sizeから相対位置EB_posを減算した減算値EB_size−EB_posが、変数size以上であるかどうかを判定する。
【０２５７】
減算値EB_size−EB_posが、変数size以上でない場合、アロケーションマネージャ２２は、変数posと、値EB_size−EB_posとを加算した加算値を、変数posに新たにセットする。
【０２５８】
さらに、アロケーションマネージャ２２は、変数sizeから、値EB_size−EB_posを減算した減算値を、変数sizeに新たにセットする。
【０２５９】
そして、アロケーションマネージャ２２は、UDFマネージャ１３（図３）から取得したタイプ１用ベースファイルのファイルエントリを参照して、変数posが表すディスク１０上の位置に記録されている、ベースストリームのエクステントExt1を、注目ベースエクステントExt1として新たに特定し、以下、同様の処理を繰り返す。
【０２６０】
一方、減算値EB_size−EB_posが、変数size以上である場合、すなわち、ファイルマネージャ２１からの読み込み開始点から、読み込みサイズ分の、ベースストリームのエクステントと、そのエクステントとセットになって仮想エクステントを構成している、第１エンハンスストリームのエクステントとの読み出しが完了した場合、3Dファイルコントローラ１２は、処理を終了する。
【０２６１】
3Dファイルコントローラ１２では、3Dタイプ２再生を行う場合も、3Dタイプ１再生を行う場合と同様の処理が行われ、ベースストリームのエクステントExt1が、メインストリームのエクステントとして、メインストリームバッファ１４（図３）に供給されるとともに、第２エンハンスストリームのエクステントExt3が、エンハンスストリームのエクステントとして、エンハンスストリームバッファ１５（図３）に供給される。
【０２６２】
［本発明を適用した記録装置の構成例］
【０２６３】
図９は、本発明を適用した記録装置の一実施の形態の構成例を示すブロック図である。
【０２６４】
図９の記録装置は、BDであるディスク１０を生産するオーサリング装置であり、ディスク１０に、ストリームや、ファイル（ファイルエントリ等）、その他の必要な情報を記録する。
【０２６５】
すなわち、エンコーダ(encoder)５１には、外部から、3D再生に関係がないAVソース(other AV source(non 3D))が供給される。
【０２６６】
エンコーダ５１は、そこに供給されるAVソースを対象として、例えば、MPEG方式等による符号化を行い、その結果得られるAVストリーム(AV Stream)を、アロケーションマネージャ５３、及び、ディスクイメージメーカ５４に供給する。
【０２６７】
3Dエンコーダ(3D encoder)５２には、外部から、3D再生に関係する3D用AVソース(3D AV source)が供給される。
【０２６８】
3Dエンコーダ５２は、そこに供給される3D用AVソースを対象として、例えば、H.264 AVC/MVC方式等で符号化等を行い、その結果得られるベースストリーム(MVC Base View Stream)、第１エンハンスストリーム(1st Enhance View Stream)、及び、第２エンハンスストリーム(2nd Enhanced Stream)を、アロケーションマネージャ(stream/file allocation manager)５３、及び、ディスクイメージメーカ(disc image maker)５４に供給する。
【０２６９】
アロケーションマネージャ５３には、エンコーダ５１からのAVストリーム、並びに、3Dエンコーダ５２からのベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームが供給される他、外部から、AVソース、及び、3D用AVソース以外の、ディスク１０に記録するBDソース(other BD source)が供給される。
【０２７０】
アロケーションマネージャ５３は、エンコーダ５１からのAVストリーム、3Dエンコーダ５２からのベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリーム、並びに、外部からのBDソースに基づき、BDのデータベースのデータベースファイル(BD database files)、並びに、ファイルアロケーション情報(file allocation information)を生成し、ディスクイメージメーカ５４に供給する。
【０２７１】
ここで、アロケーションマネージャ５３が生成するファイルアロケーション情報には、少なくとも、ベースファイルである2D再生用ファイル、並びに、仮想エクステントファイルである3Dタイプ１再生用ファイル、及び、3Dタイプ２再生用ファイルのファイルエントリが含まれる。
【０２７２】
したがって、アロケーションマネージャ５３は、ファイルエントリを生成するファイルエントリ生成手段として機能する。
【０２７３】
ディスクイメージメーカ５４は、3D用エンコーダ５２からのベースストリーム、第１エンハンスストリーム、及び、第２エンハンスストリームから、図４で説明したインターリーブデータを生成する。
【０２７４】
したがって、ディスクイメージメーカ５４は、インターリーブデータを生成するインターリーブデータ生成手段として機能する。
【０２７５】
さらに、ディスクイメージメーカ５４は、インターリーブデータ、エンコーダ５１からのAVストリーム、並びに、アロケーションマネージャ５３からのデータベースファイル、及び、ファイルアロケーション情報のディスクイメージ（イメージデータ）のディスクイメージファイル(BD Disc image file)を生成する。
【０２７６】
そして、ディスクイメージメーカ５４は、ディスクイメージファイルのディスクイメージを、ディスク１０に記録する。
【０２７７】
したがって、ディスクイメージメーカ５４は、インターリーブデータ、及び、ファイルエントリを、ディスク１０に記録する記録制御を行う記録制御手段として機能する。
【０２７８】
なお、以上においては、3D画像を、タイプ１の表示方式と、タイプ２の表示方式とのいずれによっても表示することができるように、ディスク１０には、ベースストリームの他、第１エンハンスストリームと第２エンハンスストリームの両方を記録するようにしたが、3D画像を、タイプ１の表示方式と、タイプ２の表示方式とのうちのいずれかだけでしか表示しない場合には、ディスク１０には、ベースストリームの他、第１エンハンスストリームと第２エンハンスストリームとのうちの一方だけを記録すれば良い。
【０２７９】
すなわち、3D画像を、タイプ１の表示方式だけでしか表示しない場合には、ディスク１０には、ベースストリームと第１エンハンスストリームとを記録すれば良く、3D画像を、タイプ２の表示方式だけでしか表示しない場合には、ディスク１０には、ベースストリームと第２エンハンスストリームとを記録すれば良い。
【０２８０】
図１０ないし図１３を参照して、ベースストリームと第１エンハンスストリームとが記録された（第２エンハンスストリームが記録されていない）ディスク１０について説明する。
【０２８１】
図１０は、ディスク１０に記録されるベースストリーム、及び、第１エンハンスストリームと、ファイルとを説明する図である。
【０２８２】
すなわち、図１０Ａは、ディスク１０に記録されるベースストリーム、及び、第１エンハンスストリームを示しており、図４Ａの場合と同様である。
【０２８３】
ベースストリーム、及び、第１エンハンスストリームは、図１０Ａに示すように、いずれも、エクステントに分割される。
【０２８４】
そして、ベースストリーム、及び、第１エンハンスストリームの各エクステントは、インターリーブされ、その結果得られるインターリーブデータが、ディスク１０に、物理的に（なるべく）連続するように記録される。
【０２８５】
図１０Ｂは、ディスク１０に記録されたインターリーブデータを示している。
【０２８６】
図１０Ｂのインターリーブデータでは、ベースストリームのエクステントExt1[k]、及び、第１エンハンスストリームのエクステントExt2[k]が、エクステントExt2[0]，Ext1[0]、エクステントExt2[1]，Ext1[1]、エクステントExt2[2]，Ext1[2]の順で配置されている。
【０２８７】
図４で説明したように、エクステントのインターリーブでは、選択ストリームである第１エンハンスストリームのエクステントExt2が、必須ストリームであるベースストリームのエクステントExt1に隣接するように、エクステントが配置される。
【０２８８】
すなわち、ベースストリームのエクステントExt1、及び、第１エンハンスストリームのエクステントExt2の、２種類のエクステントは、その２種類のエクステントを、１セットのエクステントセットとして、エクステントExt2，Ext1の順で、連続して並ぶように配置される。
【０２８９】
なお、図１０Ｂでは、エクステントセットが、隣接するエクステントセットどうしの間に、小さな隙間が形成されるように、ディスク１０に記録されているが、エクステントセットは、隣接するエクステントセットどうしの間に隙間が形成されないように、ディスク１０に記録することができる。
【０２９０】
以上のように、エクステントを、インターリーブ配置にして、ディスク１０に記録することで、3D再生時に、ディスク１０から、ベースストリームと第１エンハンスストリームとの２本のストリーム（のエクステント）を、再生に間に合うように、迅速に読み出すことが可能となる。
【０２９１】
すなわち、図１０Ｃは、ディスク１０からのエクステントの読み出しを説明する図である。
【０２９２】
2D再生が行われる場合には、ディスク１０から、ベースストリーム、及び、第１エンハンスストリームのうちの、ベースストリームのみのエクステントExt1が読み出される。
【０２９３】
3D再生（ここでは、3Dタイプ１再生）が行われる場合には、ディスク１０から、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とが読み出される。
【０２９４】
上述したように、エクステントセットでは、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とは、隣接して（連続して）記録されているので、エクステントExt1及びExt2（エクステントセット）は、シークなしで読み出すこと、すなわち、迅速に読み出すことができる。
【０２９５】
図１０Ｄは、ディスク１０に、図１０Ｂに示した、エクステントをインターリーブしたインターリーブデータを記録する場合に、ディスク１０に記録されるファイルを示している。
【０２９６】
ディスク１０には、2D再生用ファイル、及び、3Dタイプ１再生用ファイルが記録される。
【０２９７】
図４で説明したように、2D再生用ファイルには、2D再生に必要なベースストリームのエクステントExt1が、再生順であるExt1[0]，Ext1[1]，Ext1[2]の順番で格納される。
【０２９８】
同様に、3Dタイプ１再生用ファイルには、3Dタイプ１再生に必要なベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とが、再生順であるExt2[0]とExt1[0]とのセット（である仮想エクステント）、Ext2[0]とExt1[1]とのセット、Ext2[2]とExt1[2]とのセットの順番で格納される。
【０２９９】
図１１は、ファイルシステム（ドライバ）による、図１０で説明したディスク１０上のファイルの管理を説明する図である。
【０３００】
すなわち、図１１は、2D再生用ファイル、及び、3Dタイプ１再生用ファイルのファイルエントリを示している。
【０３０１】
図５で説明したように、2D再生用ファイルのファイルエントリには、2D再生用ファイルの構成要素であるエクステントExt1[0]，Ext1[1]，Ext1[2]それぞれの位置情報AD#00，AD#01，AD#01が登録されている。
【０３０２】
同様に、3Dタイプ１再生用ファイルのファイルエントリには、3Dタイプ１再生用ファイルの構成要素であり、かつ、ディスク１０に（物理的に）連続して記録されている、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とのセットを、１つの仮想エクステントとして、その仮想エクステントの位置情報が登録されている。
【０３０３】
すなわち、3Dタイプ１再生用ファイルのファイルエントリには、エクステントExt2[0]とExt1[0]とのセットである仮想エクステントの位置情報AD#00、エクステントExt2[0]とExt1[1]とのセットである仮想エクステントの位置情報AD#01、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステントの位置情報AD#02が登録されている。
【０３０４】
図１２は、ファイルシステムが、図１０で説明したディスク１０について、ファイルエントリを参照してエクステント（仮想エクステント）を読み出して、外部に提供する読み出しの処理を説明する図である。
【０３０５】
例えば、再生アプリケーションが、ファイルシステムに対して、2D再生用ファイルの読み出しを要求すると、ファイルシステムは、2D再生用ファイルのファイルエントリを参照することで、ディスク１０から、エクステントExt1[0]，Ext1[1]，Ext1[2]を読み出して提供する。
【０３０６】
ディスク１０から読み出されたエクステントExt1[0]，Ext1[1]，Ext1[2]は、ベースストリームのエクステントであるから、再生アプリケーションは、そのベースストリームのエクステントExt1[0]，Ext1[1]，Ext1[2]を用いて、2D再生を行うことができる。
【０３０７】
また、再生アプリケーションが、ファイルシステムに対して、3Dタイプ１再生用ファイルの読み出しを要求すると、ファイルシステムは、3Dタイプ１再生用ファイルのファイルエントリを参照することで、ディスク１０から、エクステントExt2[0]とExt1[0]とのセットである仮想エクステント、エクステントExt2[1]とExt1[1]とのセットである仮想エクステント、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステントを読み出して提供する。
【０３０８】
ディスク１０から読み出された、エクステントExt2[0]とExt1[0]とのセットである仮想エクステント、エクステントExt2[1]とExt1[1]とのセットである仮想エクステント、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステントのうちの、エクステントExt1[0]，Ext1[1]，Ext1[2]は、ベースストリームのエクステントであり、残りのエクステントExt2[0]，Ext2[1]，Ext2[2]は、第１エンハンスストリームのエクステントである。
【０３０９】
したがって、再生アプリケーションは、ディスク１０から読み出されたベースストリームのエクステントExt1[0]，Ext1[1]，Ext1[2]と、第１エンハンスストリームのエクステントExt2[0]，Ext2[1]，Ext2[2]とを用いて、3Dタイプ１再生を行うことができる。
【０３１０】
但し、3Dタイプ１再生を行うには、ベースストリームと、第１エンハンスストリームとのそれぞれを復号等する必要があるため、ディスク１０から読み出された仮想エクステントを、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割する必要がある。
【０３１１】
図１３は、図１２で説明したようにして、3Dタイプ１再生用ファイルから読み出された仮想エクステントを、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割する方法を説明する図である。
【０３１２】
上述したように、ファイルシステムは、3Dタイプ１再生用ファイルのファイルエントリを参照することで、ディスク１０から、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステント（エクステントExt2[0]とExt1[0]とのセットである仮想エクステント、エクステントExt2[1]とExt1[1]とのセットである仮想エクステント、及び、エクステントExt2[2]とExt1[2]とのセットである仮想エクステント）を読み出す。
【０３１３】
ファイルシステムは、2D再生用ファイルのファイルエントリを管理しており、そのファイルエントリを参照することで、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステントにおける、エクステントExt2とExt1との境界を認識することができる。
【０３１４】
したがって、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステントは、2D再生用ファイルのファイルエントリを参照して、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とに分割することができる。
【０３１５】
なお、図１３において点線で示すように、ディスク１０に、第１エンハンスストリームファイルを記録しておけば、3Dタイプ１再生用ファイルから読み出された、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とのセットである仮想エクステントは、2D再生用ファイルのファイルエントリに代えて、第１エンハンスストリームのファイルを参照して、エクステントExt2とExt1とに分割することができる。
【０３１６】
また、図１０ないし図１３では、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とを、その順番で並べて、仮想エクステントを構成するようにしたが、仮想エクステントは、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とを、上述の順番とは逆に並べて、すなわち、ベースストリームのエクステントExt1、第１エンハンスストリームのエクステントExt2の順番に並べて構成することができる。
【０３１７】
但し、仮想エクステントは、図１０ないし図１３で説明したように、第１エンハンスストリームのエクステントExt2と、ベースストリームのエクステントExt1とを、その順番で並べて構成することが望ましい。
【０３１８】
すなわち、上述したように、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とでは、ベースストリームのエクステントExt1の方が、データ量が多く、第１エンハンスストリームのエクステントExt2の方が、データ量が少ない。
【０３１９】
したがって、仮想エクステントにおいて、ベースストリームのエクステントExt1と、第１エンハンスストリームのエクステントExt2とが、その順番で並んでいる場合には、仮想エクステントの読み出しでは、ベースストリームのエクステントExt1が先に読み出され、第１エンハンスストリームのエクステントExt2が後に読み出される。
【０３２０】
この場合、3D画像の表示は、ベースストリームのエクステントExt1が読み出され、その後、第１エンハンスストリームのエクステントExt2の読み出しが開始されるまでは、行うことができない。
【０３２１】
このため、先に読み出されるベースストリームのエクステントExt1を、バッファに一時記憶しておく必要があるが、この場合、データ量が多いベースストリームのエクステントExt1を記憶するために、容量が大のバッファが必要となる。
【０３２２】
一方、仮想エクステントにおいて、第１エンハンスストリームのエクステントExt2が先に配置され、ベースストリームのエクステントExt1が、その後に配置されている場合には、第１エンハンスストリームのエクステントExt2が先に読み出され、ベースストリームのエクステントExt1が後に読み出される。
【０３２３】
この場合も、先に読み出される第１エンハンスストリームのエクステントExt2を、バッファに一時記憶しておく必要があるが、第１エンハンスストリームのエクステントExt2は、データ量が少ないため、バッファとしても、容量が小のバッファを採用することができる。
【０３２４】
［本発明を適用したコンピュータの説明］
【０３２５】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【０３２６】
そこで、図１４は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【０３２７】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク１０５やROM１０３に予め記録しておくことができる。
【０３２８】
あるいはまた、プログラムは、リムーバブル記録媒体１１１に格納（記録）しておくことができる。このようなリムーバブル記録媒体１１１は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体１１１としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto Optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
【０３２９】
なお、プログラムは、上述したようなリムーバブル記録媒体１１１からコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵するハードディスク１０５にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
【０３３０】
コンピュータは、CPU(Central Processing Unit)１０２を内蔵しており、CPU１０２には、バス１０１を介して、入出力インタフェース１１０が接続されている。
【０３３１】
CPU１０２は、入出力インタフェース１１０を介して、ユーザによって、入力部１０７が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)１０３に格納されているプログラムを実行する。あるいは、CPU１０２は、ハードディスク１０５に格納されたプログラムを、RAM(Random Access Memory)１０４にロードして実行する。
【０３３２】
これにより、CPU１０２は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU１０２は、その処理結果を、必要に応じて、例えば、入出力インタフェース１１０を介して、出力部１０６から出力、あるいは、通信部１０８から送信、さらには、ハードディスク１０５に記録等させる。
【０３３３】
なお、入力部１０７は、キーボードや、マウス、マイク等で構成される。また、出力部１０６は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
【０３３４】
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含む。
【０３３５】
また、プログラムは、１のコンピュータ（プロセッサ）により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【０３３６】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【０３３７】
＜第２の実施の形態＞
以下、ベースストリームをBase view videoストリームという。また、エンハンスストリームをDependent view videoストリームという。
【０３３８】
［再生システムの構成例］
図１５は、本発明を適用した再生装置２０１を含む再生システムの構成例を示す図である。
【０３３９】
図１５に示すように、この再生システムは、再生装置２０１と表示装置２０３がHDMI(High Definition Multimedia Interface)ケーブルなどで接続されることによって構成される。再生装置２０１には、BDなどの光ディスク２０２が装着される。
【０３４０】
光ディスク２０２には、視点の数が２つのステレオ画像（3D画像）を表示するために必要なストリームが記録されている。
【０３４１】
各ストリームのデータは、上述したように、エクステント単位で、インターリーブされた状態で光ディスク２０２に記録されている。
【０３４２】
再生装置２０１は、光ディスク２０２に記録されているストリームの3D再生に対応したプレーヤである。再生装置２０１は、光ディスク２０２に記録されているストリームを再生し、再生して得られた3D画像をテレビジョン受像機などよりなる表示装置２０３に表示させる。音声についても同様に再生装置２０１により再生され、表示装置２０３に設けられるスピーカなどから出力される。
【０３４３】
光ディスク２０２には、上述したタイプ１と２のいずれの表示方式によっても3D画像を表示することができるようなストリームが記録されている。ストリームを光ディスク２０２に記録するための符号化の方式として、例えば、H.264 AVC(Advanced Video Coding)/MVC(Multi-view Video coding)が採用される。
【０３４４】
［H.264 AVC/MVC Profile］
H.264 AVC/MVCでは、Base view videoと呼ばれる画像ストリームと、Dependent view videoと呼ばれる画像ストリームとが定義されている。以下、適宜、H.264 AVC/MVCを単にMVCという。
【０３４５】
図１６は、撮影の例を示す図である。
【０３４６】
図１６に示すように、同じ被写体を対象として、L画像用のカメラとR画像用のカメラによって撮影が行われる。L画像用のカメラとR画像用のカメラによって撮影された映像のエレメンタリストリームがMVCエンコーダに入力される。
【０３４７】
図１７は、MVCエンコーダの構成例を示すブロック図である。
【０３４８】
図１７に示すように、MVCエンコーダ２１１は、H.264/AVCエンコーダ２２１、H.264/AVCデコーダ２２２、Depth算出部２２３、Dependent view videoエンコーダ２２４、およびマルチプレクサ２２５から構成される。
【０３４９】
L画像用のカメラにより撮影された映像＃１のストリームはH.264/AVCエンコーダ２２１とDepth算出部２２３に入力される。また、R画像用のカメラにより撮影された映像＃２のストリームはDepth算出部２２３とDependent view videoエンコーダ２２４に入力される。映像＃２のストリームがH.264/AVCエンコーダ２２１とDepth算出部２２３に入力され、映像＃１のストリームがDepth算出部２２３とDependent view videoエンコーダ２２４に入力されるようにしてもよい。
【０３５０】
H.264/AVCエンコーダ２２１は、映像＃１のストリームを、例えばH.264 AVC/High Profileビデオストリームとして符号化する。H.264/AVCエンコーダ２２１は、符号化して得られたAVCビデオストリームを、Base view videoストリームとしてH.264/AVCデコーダ２２２とマルチプレクサ２２５に出力する。
【０３５１】
H.264/AVCデコーダ２２２は、H.264/AVCエンコーダ２２１から供給されたAVCビデオストリームをデコードし、デコードして得られた映像＃１のストリームをDependent view videoエンコーダ２２４に出力する。
【０３５２】
Depth算出部２２３は、映像＃１のストリームと映像＃２のストリームに基づいてDepth（視差）を算出し、算出したDepthのデータをマルチプレクサ２２５に出力する。
【０３５３】
Dependent view videoエンコーダ２２４は、H.264/AVCデコーダ２２２から供給された映像＃１のストリームと、外部から入力された映像＃２のストリームをエンコードし、Dependent view videoストリームを出力する。
【０３５４】
Base view videoには、他のストリームを参照画像とする予測符号化が許されていないが、図１８に示すように、Dependent view videoには、Base view videoを参照画像とする予測符号化が許されている。例えばL画像をBase view videoとするとともにR画像をDependent view videoとして符号化を行った場合、その結果得られるDependent view videoストリームのデータ量は、Base view videoストリームのデータ量に比較して少なくなる。
【０３５５】
なお、H.264/AVCでの符号化であるから、Base view videoについて時間方向の予測は行われている。また、Dependent view videoについても、view間の予測とともに、時間方向の予測が行われている。Dependent view videoをデコードするには、エンコード時に参照先とした、対応するBase view videoのデコードが先に終了している必要がある。
【０３５６】
Dependent view videoエンコーダ２２４は、このようなview間の予測も用いて符号化して得られたDependent view videoストリームをマルチプレクサ２２５に出力する。
【０３５７】
マルチプレクサ２２５は、H.264/AVCエンコーダ２２１から供給されたBase view videoストリームと、Depth算出部２２３から供給されたDependent view videoストリーム（Depthのデータ）と、Dependent view videoエンコーダ２２４から供給されたDependent view videoストリームとを、例えばMPEG2 TSとして多重化する。Base view videoストリームとDependent view videoストリームは１本のMPEG2 TSに多重化されることもあるし、別々のMPEG2 TSに含まれることもある。
【０３５８】
マルチプレクサ２２５は、生成したTS（MPEG2 TS）を出力する。マルチプレクサ２２５から出力されたTSは、他の管理データとともに記録装置において光ディスク２０２に記録され、光ディスク２０２に記録された形で再生装置２０１に提供される。
【０３５９】
以下、適宜、図１７に示すように、２つのDependent view videoのうち、Depth情報からなるDependent view videoをD1 view videoといい、R画像からなるDependent view videoをD2 view videoという。なお、R画像からなるDependent view videoをD1 view videoとして処理し、Depth情報からなるDependent view videoをD2 view videoとして処理するようにすることも可能である。
【０３６０】
また、Base view videoとD1 view videoを用いて行われる3D再生をB-D1再生という。Base view videoとD2 view videoを用いて行われる3D再生をB-D2再生という。
【０３６１】
再生装置２０１は、ユーザによる指示などに応じてB-D1再生を行う場合、Base view videoストリームとD1 view videoストリームを光ディスク２０２から読み出して再生する。
【０３６２】
また、再生装置２０１は、B-D2再生を行う場合、Base view videoストリームとD2 view videoストリームを光ディスク２０２から読み出して再生する。
【０３６３】
さらに、再生装置２０１は、通常の2D画像の再生を行う場合、Base view videoストリームだけを光ディスク２０２から読み出して再生する。
【０３６４】
Base view videoストリームはH.264/AVCで符号化されているAVCビデオストリームであるから、BDのフォーマットに対応したプレーヤであれば、そのBase view videoストリームを再生し、2D画像を表示させることが可能になる。
【０３６５】
［TSの構成例］
図１９は、TSの構成例を示す図である。
【０３６６】
図１９のMain TSにはBase view video、Dependent view video、Primary audio、Base PG、Dependent PG、Base IG、Dependent IGのそれぞれのストリームが多重化されている。このように、Dependent view videoストリームが、Base view videoストリームとともにMain TSに含まれていることもある。
【０３６７】
光ディスク２０２には、Main TSとSub TSが記録されている。Main TSは、少なくともBase view videoストリームを含むTSである。Sub TSは、Base view videoストリーム以外のストリームを含み、Main TSとともに用いられるTSである。
【０３６８】
ビデオと同様に3Dでの表示が可能になるように、PG、IGについてもBase viewとDependent viewのそれぞれのストリームが用意されている。
【０３６９】
図２０は、TSの他の構成例を示す図である。
【０３７０】
図２０のMain TSにはBase view video、Dependent view videoのそれぞれのストリームが多重化されている。
【０３７１】
一方、Sub TSにはPrimary audio、Base PG、Dependent PG、Base IG、Dependent IGのそれぞれのストリームが多重化されている。
【０３７２】
このように、ビデオストリームがMain TSに多重化され、PG、IGのストリーム等がSub TSに多重化されていることもある。
【０３７３】
図２１は、TSのさらに他の構成例を示す図である。
【０３７４】
図２１のMain TSにはBase view video、Primary audio、Base PG、Dependent PG、Base IG、Dependent IGのそれぞれのストリームが多重化されている。
【０３７５】
一方、Sub TSにはDependent view videoストリームが含まれている。
【０３７６】
このように、Dependent view videoストリームがBase view videoストリームとは別のTSに含まれていることもある。
【０３７７】
［アプリケーションフォーマット］
図２２は、再生装置２０１によるAVストリームの管理の例を示す図である。
【０３７８】
AVストリームの管理は、図２２に示すようにPlayListとClipの２つのレイヤを用いて行われる。AVストリームは、光ディスク２０２だけでなく、再生装置２０１のローカルストレージに記録されていることもある。
【０３７９】
ここでは、１つのAVストリームとそれに付随する情報であるClip Informationのペアを１つのオブジェクトと考え、それらをまとめてClipという。以下、AVストリームを格納したファイルをAVストリームファイルという。また、Clip Informationを格納したファイルをClip Informationファイルともいう。
【０３８０】
AVストリームは時間軸上に展開され、各Clipのアクセスポイントは、主に、タイムスタンプでPlayListにおいて指定される。Clip Informationファイルは、AVストリーム中のデコードを開始すべきアドレスを見つけるためなどに使用される。
【０３８１】
PlayListはAVストリームの再生区間の集まりである。AVストリーム中の１つの再生区間はPlayItemと呼ばれる。PlayItemは、時間軸上の再生区間のIN点とOUT点のペアで表される。図２２に示すように、PlayListは１つまたは複数のPlayItemにより構成される。
【０３８２】
図２２の左から１番目のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側のClipに含まれるAVストリームの前半部分と後半部分がそれぞれ参照されている。
【０３８３】
左から２番目のPlayListは１つのPlayItemから構成され、それにより、右側のClipに含まれるAVストリーム全体が参照されている。
【０３８４】
左から３番目のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側のClipに含まれるAVストリームのある部分と、右側のClipに含まれるAVストリームのある部分がそれぞれ参照されている。
【０３８５】
例えば、左から１番目のPlayListに含まれる左側のPlayItemが再生対象としてディスクナビゲーションプログラムにより指定された場合、そのPlayItemが参照する、左側のClipに含まれるAVストリームの前半部分の再生が行われる。このように、PlayListは、AVストリームの再生を管理するための再生管理情報として用いられる。
【０３８６】
PlayListの中で、１つ以上のPlayItemの並びによって作られる再生パスをメインパス(Main Path)という。
【０３８７】
また、PlayListの中で、Main Pathに並行して、１つ以上のSubPlayItemの並びによって作られる再生パスをサブパス（Sub Path）という。
【０３８８】
図２３は、Main PathとSub Pathの構造を示す図である。
【０３８９】
PlayListは、１つのMain Pathと１つ以上のSub Pathを持つことができる。
【０３９０】
上述したBase view videoストリームは、Main Pathを構成するPlayItemが参照するストリームとして管理される。また、Dependent view videoストリームは、Sub Pathを構成するSubPlayItemが参照するストリームとして管理される。
【０３９１】
図２３のPlayListは、３つのPlayItemの並びにより作られる１つのMain Pathと、３つのSub Pathを有している。
【０３９２】
Main Pathを構成するPlayItemには、先頭から順番にそれぞれIDが設定される。Sub Pathにも、先頭から順番にSubpath_id=0、Subpath_id=1、およびSubpath_id=2のIDが設定される。
【０３９３】
図２３の例においては、Subpath_id=0のSub Pathには１つのSubPlayItemが含まれ、Subpath_id=1のSub Pathには２つのSubPlayItemが含まれる。また、Subpath_id=2のSub Pathには１つのSubPlayItemが含まれる。
【０３９４】
１つのPlayItemが参照するClip AVストリームには、少なくともビデオストリーム（メイン画像データ）が含まれる。
【０３９５】
また、Clip AVストリームには、Clip AVストリームに含まれるビデオストリームと同じタイミングで（同期して）再生されるオーディオストリームが１つ以上含まれてもよいし、含まれなくてもよい。
【０３９６】
Clip AVストリームには、Clip AVストリームに含まれるビデオストリームと同期して再生されるビットマップの字幕データ（PG(Presentation Graphic)）のストリームが１つ以上含まれてもよいし、含まれなくてもよい。
【０３９７】
Clip AVストリームには、Clip AVストリームファイルに含まれるビデオストリームと同期して再生されるIG(Interactive Graphic)のストリームが１つ以上含まれてもよいし、含まれなくてもよい。IGのストリームは、ユーザにより操作されるボタンなどのグラフィックを表示させるために用いられる。
【０３９８】
１つのPlayItemが参照するClip AVストリームには、ビデオストリームと、それと同期して再生される０個以上のオーディオストリーム、０個以上のPGストリーム、および、０個以上のIGストリームが多重化されている。
【０３９９】
また、１つのSubPlayItemは、PlayItemが参照するClip AVストリームとは異なるストリーム（別ストリーム）の、ビデオストリーム、オーディオストリーム、または、PGストリームなどを参照する。
【０４００】
このようなPlayList、PlayItem、SubPlayItemを使ったAVストリームの管理については、例えば、特開２００８−２５２７４０号公報、特開２００５−３４８３１４号公報に記載されている。
【０４０１】
［ディレクトリ構造］
図２４は、光ディスク２０２に記録されるファイルの管理構造の例を示す図である。
【０４０２】
図２４に示すように、ファイルはディレクトリ構造により階層的に管理される。光ディスク２０２上には１つのrootディレクトリが作成される。rootディレクトリの下が、１つの記録再生システムで管理される範囲となる。
【０４０３】
rootディレクトリの下にはBDMVディレクトリが置かれる。
【０４０４】
BDMVディレクトリの直下に、「Index.bdmv」の名前が設定されたファイルであるIndexファイルと、「MovieObject.bdmv」の名前が設定されたファイルであるMovieObjectファイルが格納される。
【０４０５】
BDMVディレクトリの下には、BACKUPディレクトリ、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリ等が設けられる。
【０４０６】
PLAYLISTディレクトリには、PlayListを記述したPlayListファイルが格納される。各PlayListファイルには、５桁の数字と拡張子「.mpls」を組み合わせた名前が設定される。図２４に示す１つのPlayListファイルには「00000.mpls」のファイル名が設定されている。
【０４０７】
CLIPINFディレクトリにはClip Informationファイルが格納される。各Clip Informationファイルには、５桁の数字と拡張子「.clpi」を組み合わせた名前が設定される。
【０４０８】
図２４の３つのClip Informationファイルには、それぞれ、「00001.clpi」、「00002.clpi」、「00003.clpi」のファイル名が設定されている。以下、適宜、Clip Informationファイルをclpiファイルという。
【０４０９】
例えば、「00001.clpi」のclpiファイルは、Base view videoのClipに関する情報が記述されたファイルである。
【０４１０】
「00002.clpi」のclpiファイルは、D2 view videoのClipに関する情報が記述されたファイルである。
【０４１１】
「00003.clpi」のclpiファイルは、D1 view videoのClipに関する情報が記述されたファイルである。
【０４１２】
STREAMディレクトリにはストリームファイルが格納される。各ストリームファイルには、５桁の数字と拡張子「.m2ts」を組み合わせた名前、もしくは、５桁の数字と拡張子「.ilvt」を組み合わせた名前が設定される。以下、適宜、拡張子「.m2ts」が設定されたファイルをm2tsファイルという。また、拡張子「.ilvt」が設定されたファイルをilvtファイルという。
【０４１３】
「00001.m2ts」のm2tsファイルは2D再生用のファイルであり、このファイルを指定することによってBase view videoストリームの読み出しが行われる。
【０４１４】
「00002.m2ts」のm2tsファイルはD2 view videoストリームのファイルであり、「00003.m2ts」のm2tsファイルはD1 view videoストリームのファイルである。
【０４１５】
「10000.ilvt」のilvtファイルはB-D1再生用のファイルであり、このファイルを指定することによってBase view videoストリームとD1 view videoストリームの読み出しが行われる。B-D1再生用のilvtファイルが、上述した3Dタイプ１再生用ファイルに対応する。
【０４１６】
「20000.ilvt」のilvtファイルはB-D2再生用のファイルであり、このファイルを指定することによってBase view videoストリームとD2 view videoストリームの読み出しが行われる。B-D2再生用のilvtファイルが、上述した3Dタイプ２再生用ファイルに対応する。
【０４１７】
図２４に示すものの他に、BDMVディレクトリの下には、オーディオストリームのファイルを格納するディレクトリなども設けられる。
【０４１８】
［各データのシンタクス］
図２５は、PlayListファイルのシンタクスを示す図である。
【０４１９】
PlayListファイルは、図２４のPLAYLISTディレクトリに格納される、拡張子「.mpls」が設定されるファイルである。
【０４２０】
図２５のtype_indicatorは、「xxxxx.mpls」のファイルの種類を表す。
【０４２１】
version_numberは、「xxxx.mpls」のバージョンナンバーを表す。version_numberは４桁の数字からなる。例えば、3D再生用のPlayListファイルには、「3D Spec version」であることを表す“0240”が設定される。“0240”が設定されたPlayListファイルに記述されるPlayListが、後述する3D_PlayListとなる。
【０４２２】
PlayList_start_addressは、PlayListファイルの先頭のバイトからの相対バイト数を単位として、PlayList()の先頭アドレスを表す。
【０４２３】
PlayListMark_start_addressは、PlayListファイルの先頭のバイトからの相対バイト数を単位として、PlayListMark()の先頭アドレスを表す。
【０４２４】
ExtensionData_start_addressは、PlayListファイルの先頭のバイトからの相対バイト数を単位として、ExtensionData()の先頭アドレスを表す。
【０４２５】
ExtensionData_start_addressの後には、１６０bitのreserved_for_future_useが含まれる。
【０４２６】
AppInfoPlayList()には、再生制限などの、PlayListの再生コントロールに関するパラメータが格納される。
【０４２７】
PlayList()には、Main PathやSub Pathなどに関するパラメータが格納される。PlayList()の内容については後述する。
【０４２８】
PlayListMark()には、PlayListのマーク情報、すなわち、チャプタジャンプなどを指令するユーザオペレーションまたはコマンドなどにおけるジャンプ先（ジャンプポイント）であるマークに関する情報が格納される。
【０４２９】
ExtensionData()には、プライベートデータが挿入できるようになっている。
【０４３０】
図２６は、図２５のPlayList()のシンタクスを示す図である。
【０４３１】
lengthは、このlengthフィールドの直後からPlayList()の最後までのバイト数を示す３２ビットの符号なし整数である。すなわち、lengthは、reserved_for_future_useからPlayListの最後までのバイト数を表す。
【０４３２】
lengthの後には、１６ビットのreserved_for_future_useが用意される。
【０４３３】
number_of_PlayItemsは、PlayListの中にあるPlayItemの数を示す１６ビットのフィールドである。図２３の例の場合、PlayItemの数は３である。PlayItem_idの値は、PlayListの中でPlayItem()が現れる順番に０から割り振られる。例えば、図２３のPlayItem_id＝０，１，２が割り振られる。
【０４３４】
number_of_SubPathsは、PlayListの中にあるSub Pathの数を示す１６ビットのフィールドである。図２３の例の場合、Sub Pathの数は３である。SubPath_idの値は、PlayListの中でSubPath()が現れる順番に０から割り振られる。例えば、図２３のSubpath_id＝０，１，２が割り振られる。その後のfor文では、PlayItemの数だけPlayItem()が参照され、Sub Pathの数だけSubPath()が参照される。
【０４３５】
図２７は、図２６のSubPath()のシンタクスを示す図である。
【０４３６】
lengthは、このlengthフィールドの直後からSub Path()の最後までのバイト数を示す３２ビットの符号なし整数である。すなわち、lengthは、reserved_for_future_useからPlayListの最後までのバイト数を表す。
【０４３７】
lengthの後には、１６ビットのreserved_for_future_useが用意される。
【０４３８】
SubPath_typeは、Sub Pathのアプリケーションの種類を示す８ビットのフィールドである。SubPath_typeは、例えば、Sub Pathがオーディオであるか、ビットマップ字幕であるか、テキスト字幕であるかなどの種類を示す場合に利用される。
【０４３９】
SubPath_typeの後には、１５ビットのreserved_for_future_useが用意される。
【０４４０】
is_repeat_SubPathは、Sub Pathの再生方法を指定する１ビットのフィールドであり、Main Pathの再生の間にSub Pathの再生を繰り返し行うか、またはSub Pathの再生を１回だけ行うかを示す。例えば、Main Pathが参照するClipとSub Pathが参照するClipの再生タイミングが異なる場合（Main Pathを静止画のスライドショーのパスとし、Sub PathをBGMとするオーディオのパスとして使う場合など）に利用される。
【０４４１】
Is_repeat_SubPathの後には、８ビットのreserved_for_future_useが用意される。
【０４４２】
number_of_SubPlayItemsは、１つのSub Pathの中にあるSubPlayItemの数（エントリー数）を示す８ビットのフィールドである。例えば、図２３のSubPath_id＝０のSubPlayItemのnumber_of_SubPlayItemsは１であり、SubPath_id＝１のSubPlayItemのnumber_of_SubPlayItemsは２である。その後のfor文では、SubPlayItemの数だけ、SubPlayItem（）が参照される。
【０４４３】
図２８は、図２７のSubPlayItem(i)のシンタクスを示す図である。
【０４４４】
lengthは、このlengthフィールドの直後からSub playItem()の最後までのバイト数を示す１６ビットの符号なし整数である。
【０４４５】
図２８のSubPlayItem(i)は、SubPlayItemが１つのClipを参照する場合と、複数のClipを参照する場合に分けて記述されている。
【０４４６】
SubPlayItemが１つのClipを参照する場合について説明する。
【０４４７】
Clip_Information_file_name[0]は、SubPlayItemが参照するClipのClip Informationファイルの名前を表す。
【０４４８】
Clip_codec_identifier［0］はClipのコーデック方式を表す。Clip_codec_identifier［0］の後にはreserved_for_future_useが含まれる。
【０４４９】
is_multi_Clip_entriesはマルチClipの登録の有無を示すフラグである。is_multi_Clip_entriesのフラグが立っている場合、SubPlayItemが複数のClipを参照する場合のシンタクスが参照される。
【０４５０】
ref_to_STC_id［0］はSTC不連続点（システムタイムベースの不連続点）に関する情報である。
【０４５１】
SubPlayItem_IN_timeはSub Pathの再生区間の開始位置を表し、SubPlayItem_OUT_timeは終了位置を表す。
【０４５２】
sync_PlayItem_idとsync_start_PTS_of_PlayItemは、Main Pathの時間軸上でSub Pathが再生を開始する時刻を表す。
【０４５３】
SubPlayItem_IN_time、SubPlayItem_OUT_time、sync_PlayItem_id、sync_start_PTS_of_PlayItemは、SubPlayItemが参照するClipにおいて共通に使用される。
【０４５４】
「if（is_multi_Clip_entries＝＝１ｂ」であり、SubPlayItemが複数のClipを参照する場合について説明する。
【０４５５】
num_of_Clip_entriesは参照するClipの数を表す。Clip_Information_file_name[SubClip_entry_id]の数が、Clip_Information_file_name[0]を除くClipの数を指定する。
【０４５６】
Clip_codec_identifier[SubClip_entry_id]はClipのコーデック方式を表す。
【０４５７】
ref_to_STC_id[SubClip_entry_id]はSTC不連続点（システムタイムベースの不連続点）に関する情報である。ref_to_STC_id[SubClip_entry_id]の後にはreserved_for_future_useが含まれる。
【０４５８】
図２９は、図２６のPlayItem()のシンタクスを示す図である。
【０４５９】
lengthは、このlengthフィールドの直後からPlayItem()の最後までのバイト数を示す１６ビットの符号なし整数である。
【０４６０】
Clip_Information_file_name[0]は、PlayItemが参照するClipのClip Informationファイルの名前を表す。なお、Clipを含むmt2sファイルのファイル名と、それに対応するClip Informationファイルのファイル名には同じ５桁の数字が含まれる。
【０４６１】
Clip_codec_identifier［0］はClipのコーデック方式を表す。Clip_codec_identifier［0］の後にはreserved_for_future_useが含まれる。reserved_for_future_useの後にはis_multi_angle、connection_conditionが含まれる。
【０４６２】
ref_to_STC_id［0］はSTC不連続点（システムタイムベースの不連続点）に関する情報である。
【０４６３】
IN_timeはPlayItemの再生区間の開始位置を表し、OUT_timeは終了位置を表す。
【０４６４】
OUT_timeの後にはUO_mask_table()、PlayItem_random_access_mode、still_modeが含まれる。
【０４６５】
STN_table()には、対象のPlayItemが参照するAVストリームの情報が含まれる。また、対象のPlayItemと関連付けて再生されるSub Pathがある場合、そのSub Pathを構成するSubPlayItemが参照するAVストリームの情報も含まれる。
【０４６６】
図３０は、図２９のSTN_table()のシンタクスを示す図である。
【０４６７】
STN_table()は、PlayItemの属性として設定されている。
【０４６８】
lengthは、このlengthフィールドの直後からSTN_table()の最後までのバイト数を示す１６ビットの符号なし整数である。lengthの後には、１６ビットのreserved_for_future_useが用意される。
【０４６９】
number_of_video_stream_entriesは、STN_table()の中でエントリーされる（登録される）、video_stream_idが与えられるストリームの数を表す。
【０４７０】
video_stream_idは、ビデオストリームを識別するための情報である。例えば、Base view videoストリームがこのvideo_stream_idにより特定される。
【０４７１】
Dependent view videoストリームのIDについては、STN_table()内で定義されるようにしてもよいし、Base view videoストリームのIDに所定の値を加算するなどして計算により求められるようにしてもよい。
【０４７２】
video_stream_numberは、ビデオ切り替えに使われる、ユーザから見えるビデオストリーム番号である。
【０４７３】
number_of_audio_stream_entriesは、STN_table()の中でエントリーされる、audio_stream_idが与えられる１番目のオーディオストリームのストリームの数を表す。audio_stream_idは、オーディオストリームを識別するための情報であり、audio_stream_numberは、音声切り替えに使われるユーザから見えるオーディオストリーム番号である。
【０４７４】
number_of_audio_stream2_entriesは、STN_table()の中でエントリーされる、audio_stream_id2が与えられる２番目のオーディオストリームのストリームの数を表す。audio_stream_id2は、オーディオストリームを識別するための情報であり、audio_stream_numberは、音声切り替えに使われるユーザから見えるオーディオストリーム番号である。この例においては、再生する音声を切り替えることができるようになされている。
【０４７５】
number_of_PG_txtST_stream_entriesは、STN_table()の中でエントリーされる、PG_txtST_stream_idが与えられるストリームの数を表す。この中では、ビットマップ字幕をランレングス符号化したPGストリームとテキスト字幕ファイル(txtST)がエントリーされる。PG_txtST_stream_idは、字幕ストリームを識別するための情報であり、PG_txtST_stream_numberは、字幕切り替えに使われるユーザから見える字幕ストリーム番号である。
【０４７６】
number_of_IG_stream_entriesは、STN_table()の中でエントリーされる、IG_stream_idが与えられるストリームの数を表す。この中ではIGストリームがエントリーされる。IG_stream_idは、IGストリームを識別するための情報であり、IG_stream_numberは、グラフィックス切り替えに使われるユーザから見えるグラフィックスストリーム番号である。
【０４７７】
Main TS、Sub TSのIDもSTN_table()に登録される。そのIDがエレメンタリストリームではなくTSのIDであることは、stream_attribute()に記述される。
【０４７８】
［PlayListの具体例］
図３１は、3D再生用のPlayListである3D_PlayListの具体例を示す図である。
【０４７９】
説明の便宜上、図３１の左側には行数を表す数字と「：」を示している。この数字と「：」は3D_PlayListを構成するものではない。
【０４８０】
２行目のnumber_of_PlayItemsは図２６のnumber_of_PlayItemsに対応し、3D_PlayList中のPlayItemの数を表す。２行目から８行目がPlayItemに関する記述になる。すなわち、３行目から８行目が、図２６のfor文を用いたPlayItemに記述に対応する。
【０４８１】
５行目のref_to_B_clpi_file_nameは図２９のClip_Information_file_name[0]に対応し、Base view videoストリームを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、参照するm2tsファイルと、Base view videoのClipのclpiファイルが特定される。
【０４８２】
６行目のtypeは、Base view videoと、それに関連付けられたD1/D2 view videoのデータの光ディスク２０２上での配置のタイプを表す。typeは、例えば図２９のClip_codec_identifier［0］に続くreserved_for_future_useを用いて設定される。
【０４８３】
図３２は、typeの意味を示す図である。
【０４８４】
typeの値が0であることは、Base view video、D1 view video、D2 view videoがインターリーブされていないことを表す。
【０４８５】
この場合、存在するD1/D2 view videoの両方、またはいずれかのパケットが、Base view videoのパケットとともに１本のMPEG2-TSに多重化される。
【０４８６】
typeの値が1であることは、Base view video、D1 view video、D2 view videoが全てインターリーブされていることを表す。
【０４８７】
この場合、B view videoを含む第１のTSと、D1 view videoを含む第２のTSと、D2 view videoを含む第３のTSの３本のTSが、エクステント単位で光ディスク２０２上にインターリーブされている。
【０４８８】
typeの値が2であることは、Base view videoとD1 view videoがインターリーブされていることを表す。
【０４８９】
この場合、B view videoのパケットを含む第１のTSと、D1 view videoのパケットを含む第２のTSの２本のTSが、エクステント単位で光ディスク２０２上にインターリーブされている。第１のTSにはD2 view videoのパケットが多重化されていても良い。また、第２のTSには、D2 view videoのパケットが多重化されていても良い。
【０４９０】
typeの値が3であることは、Base view videoとD2 view videoがインターリーブされていることを表す。
【０４９１】
この場合、B view videoのパケットを含む第１のTSと、D2 view videoのパケットを含む第２のTSの２本のTSが、エクステント単位で光ディスク２０２上にインターリーブされている。第１のTSには、D1 view videoのパケットが多重化されていても良い。また、第２のTSには、D1 view videoのパケットが含まれてはいけない。
【０４９２】
図３１の説明に戻り、７行目のSTN_tableは図２９のSTN_table()に対応する。図３０を参照して説明したように、STN_tableには3D_PlayListにおいて参照する各ストリームのIDが記述される。
【０４９３】
９行目のnumber_of_SubPathsは図２６のnumber_of_SubPathsに対応し、3D_PlayList中のSubPathの数を表す。９行目から１４行目がSubPathに関する記述になる。すなわち、１０行目から１４行目が、図２６のfor文を用いたSubPathに記述に対応する。
【０４９４】
１２行目のSubPath_typeは図２７のSubPath_typeに対応し、SubPathの種類を表す。
【０４９５】
図３３は、SubPath_typeの意味を示す図である。
【０４９６】
図３３に示す各値のうちの主なものについて説明すると、SubPath_typeの値が8であることは、D1 view videoを再生するサブパスであることを表す。
【０４９７】
また、SubPath_typeの値が9であることは、D2 view videoを再生するサブパスであることを表す。
【０４９８】
図３１の１３行目のref_to_clpi_file_nameは図２８のClip_Information_file_name[0]に対応する。
【０４９９】
このSubPathがD1 view videoを再生するものである場合には、ref_to_clpi_file_nameは、D1 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、参照するclpiファイルが特定される。
【０５００】
一方、１３行目のref_to_clpi_file_nameは、このSubPathがD2 view videoを再生するものである場合には、D2 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。
【０５０１】
１６行目から３０行目は、interleaved_file_info()、すなわちilvtファイルに関する記述である。例えば、PlayItem()、SubPath()中のreserved_for_future_useを用いてilvtファイルに関する記述が用意される。
【０５０２】
１７行目から２２行目は、６行目のtypeの値が1であり、Base view video、D1 view video、D2 view videoが全てインターリーブされている場合に参照する記述である。
【０５０３】
１８行目のref_to_D1-B_interleaved_file_nameは、Base view videoとD1 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０５０４】
１９行目のref_to_D2-B_interleaved_file_nameは、Base view videoとD2 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０５０５】
２０行目のref_to_D1_clpi_file_nameは、D1 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D1 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０５０６】
２１行目のref_to_D2_clpi_file_nameは、D2 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D2 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０５０７】
２３行目から２６行目は、６行目のtypeの値が2であり、Base view videoとD1 view videoがインターリーブされている場合に参照する記述である。
【０５０８】
２４行目のref_to_D1-B_interleaved_file_nameは、Base view videoとD1 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０５０９】
２５行目のref_to_D1_clpi_file_nameは、D1 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D1 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０５１０】
２７行目から３０行目は、６行目のtypeの値が3であり、Base view videoとD2 view videoがインターリーブされている場合に参照する記述になる。
【０５１１】
２８行目のref_to_D2-B_interleaved_file_nameは、Base view videoとD2 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０５１２】
２９行目のref_to_D2_clpi_file_nameは、D2 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D2 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０５１３】
このように、3D_PlayListには、データが光ディスク２０２上でインターリーブされている場合、D1 view vide、D2 view videについても、それらのClip AVストリームに対応するclpiファイルのファイル名を特定可能な情報が記述される。
【０５１４】
［再生装置２０１の構成例］
図３４は、再生装置２０１の構成例を示すブロック図である。
【０５１５】
コントローラ２５１は、予め用意されている制御プログラムを実行し、再生装置２０１の全体の動作を制御する。
【０５１６】
例えば、コントローラ２５１は、ディスクドライブ２５２を制御し、3D再生用のPlayListファイルを読み出す。また、コントローラ２５１は、STN_tableに登録されているIDに基づいて、Main TSとSubTSを読み出させ、デコーダ部２５６に供給させる。
【０５１７】
ディスクドライブ２５２は、コントローラ２５１による制御に従って光ディスク２０２からデータを読み出し、読み出したデータを、コントローラ２５１、メモリ２５３、またはデコーダ部２５６に出力する。
【０５１８】
メモリ２５３は、コントローラ２５１が各種の処理を実行する上において必要なデータなどを適宜記憶する。
【０５１９】
ローカルストレージ２５４は例えばHDD(Hard Disk Drive)により構成される。ローカルストレージ２５４には、サーバ２７２からダウンロードされたD1/D2 view videoストリームなどが記録される。ローカルストレージ２５４に記録されているストリームもデコーダ部２５６に適宜供給される。
【０５２０】
インターネットインタフェース２５５は、コントローラ２５１からの制御に従ってネットワーク２７１を介してサーバ２７２と通信を行い、サーバ２７２からダウンロードしたデータをローカルストレージ２５４に供給する。
【０５２１】
サーバ２７２からは、光ディスク２０２に記録されているデータをアップデートさせるデータがダウンロードされる。ダウンロードしたD1/D2 view videoストリームを光ディスク２０２に記録されているBase view videoストリームと併せて用いることができるようにすることにより、光ディスク２０２の内容とは異なる内容の3D再生を実現することが可能になる。D1/D2 view videoストリームがダウンロードされたとき、PlayListの内容も適宜更新される。
【０５２２】
デコーダ部２５６は、ディスクドライブ２５２、またはローカルストレージ２５４から供給されたストリームをデコードし、得られたビデオ信号を表示装置２０３に出力する。オーディオ信号も所定の経路を介して表示装置２０３に出力される。
【０５２３】
操作入力部２５７は、ボタン、キー、タッチパネル、ジョグダイヤル、マウスなどの入力デバイスや、所定のリモートコマンダから送信される赤外線などの信号を受信する受信部により構成される。操作入力部２５７はユーザの操作を検出し、検出した操作の内容を表す信号をコントローラ２５１に供給する。
【０５２４】
図３５は、デコーダ部２５６の構成例を示す図である。
【０５２５】
分離部２８１は、コントローラ２５１による制御に従って、ディスクドライブ２５２から供給されたデータを、Main TSを構成するパケットのデータとSub TSを構成するパケットのデータに分離する。例えば、3D PlayListファイルのSTN_table()に記述されているストリームIDに基づいて光ディスク２０２から読み出されたTSが分離部２８１に供給される。
【０５２６】
分離部２８１は、分離したMain TSを構成するパケットをリードバッファ２８２に出力して記憶させ、Sub TSを構成するパケットをリードバッファ２８５に出力して記憶させる。
【０５２７】
また、分離部２８１は、ローカルストレージ２５４から供給されたSub TSを構成するパケットをリードバッファ２８５に出力して記憶させる。
【０５２８】
上述したように、サーバ２７２からダウンロードされたD1/D2 view videがローカルストレージ２５４に記憶されている場合がある。光ディスク２０２に記録されているBase view videoとともに再生することが指示されたとき、Sub TSとしてのD1/D2 view videストリームがローカルストレージ２５４から読み出され、分離部２８１に供給される。
【０５２９】
PIDフィルタ２８３は、リードバッファ２８２に記憶されているMain TSを構成するパケットを、各パケットに設定されているPIDに基づいて振り分ける。コントローラ２５１からは、Base view videoを構成するパケットのPID、D1 view videoを構成するパケットのPID、D2 view videoを構成するパケットのPIDがそれぞれ指定される。
【０５３０】
PIDフィルタ２８３は、Main TSに含まれるBase view videoのパケットをリードバッファ２８２から読み出し、ESバッファ２８４に出力して記憶させる。ESバッファ２８４には、Base view videoのパケットからなるES(Elementary Stream)が記憶される。
【０５３１】
また、PIDフィルタ２８３は、Main TSにD1/D2 view videのパケットが多重化されている場合、それらのパケットをPIDに基づいて抽出し、スイッチ２８７に出力する。
【０５３２】
PIDフィルタ２８６は、Sub TSに含まれるD1/D2 view videのパケットをリードバッファ２８５から読み出し、スイッチ２８７に出力する。
【０５３３】
なお、ここではBase view video、D1/D2 view videoのビデオストリームの処理についてだけ説明しているが、図１９を参照して説明したように、Main TSにはPGやIGなどのグラフィックスのデータが多重化されていることがある。同様に、図２０をを参照して説明したように、Sub TSには、D1/D2 view videの他にも、字幕のデータやグラフィックのデータが多重化されていることがある。
【０５３４】
PIDフィルタ２８３とPIDフィルタ２８６は、適宜、それらのデータをもPIDに基づいて振り分け、所定の出力先に出力する。図３５のPIDフィルタ２８３とPIDフィルタ２８６のブロック内に示す出力先の端子（丸）には、グラフィックのデータをエンコードするエンコーダなどが接続される。
【０５３５】
スイッチ２８７は、PIDフィルタ２８３から供給されたD1/D2 view videのパケットをESバッファ２８８に出力して記憶させる。また、スイッチ２８７は、PIDフィルタ２８６から供給されたD1/D2 view videのパケットをESバッファ２８８に出力して記憶させる。ESバッファ２８８には、D1/D2 view videoのパケットからなるESが記憶される。
【０５３６】
スイッチ２８９は、ESバッファ２８４に記憶されているBase view videoのパケットと、ESバッファ２８８に記憶されているD1/D2 view videoのパケットのうちの、デコードの対象になるパケットをデコーダ２９０に出力する。DTS(Decoding Time Stamp)などの時刻情報がBase view videoとD1/D2 view videoのPESパケットに設定されており、その時刻情報に基づいてバッファからの読み出しが行われる。
【０５３７】
ビデオデコーダ２９０は、スイッチ２８９から供給されたパケットをデコードし、デコードすることによって得られたBase view video、またはD1/D2 view videoのデータを出力する。
【０５３８】
［3D_PlayListの例１］
図３６は、3D_PlayListの例を示す図である。
【０５３９】
図３６の「0000.mpls」のPlayListファイルに記述されている3D_PlayListは、Base view video、D1 view video、D2 view videoが全てインターリーブされている光ディスク２０２の再生を管理するPlayListである。すなわち、typeの値は1である。
【０５４０】
図３６の例においては、PlayItem()のref_to_B_clpi_file_nameは「00001」である。この記述から、Base view videoのm2tsファイルである「00001.m2ts」を再生する場合には、図２４の「00001.clpi」のclpiファイルを参照することが特定される。
【０５４１】
また、SubPath()[1]のSubPath_typeは「9」である。SubPath_typeが「9」であることは、この１つ目のSubPathがD2 view videoを再生するサブパスであることを表す。
【０５４２】
SubPath()[1]のref_to_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図２４の「00002.clpi」のclpiファイルを参照することが特定される。
【０５４３】
SubPath()[2]のSubPath_typeは「8」である。SubPath_typeが「8」であることは、この２つ目のSubPathがD1 view videoを再生するサブパスであることを表す。
【０５４４】
SubPath()[2]のref_to_clpi_file_nameは「00003」である。この記述から、D1 view videoを再生する場合には図２４の「00003.clpi」のclpiファイルを参照することが特定される。
【０５４５】
interleaved_file_info()のref_to_D1-B_interleaved_file_nameは「10000」である。この記述から、D1-B再生を行う場合には図２４の「10000.ilvt」のilvtファイルを参照することが特定される。
【０５４６】
また、ref_to_D2-B_interleaved_file_nameは「20000」である。この記述から、D2-B再生を行う場合には図２４の「20000.ilvt」のilvtファイルを参照することが特定される。
【０５４７】
ref_to_D1_clpi_file_nameは「00003」である。この記述から、D1 view videoを再生する場合には図２４の「00003.clpi」のファイルを参照することが特定される。
【０５４８】
ref_to_D2_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図２４の「00002.clpi」のファイルを参照することが特定される。
【０５４９】
図３７は、図３６の3D_PlayListとともに用いられるclpiファイルのシンタクスを示す図である。
【０５５０】
図３７Ａは「00001.clpi」のclpiファイルの例を示す図である。上述したように、「00001.clpi」のclpiファイルは、Base view videoのm2tsファイルである「00001.m2ts」を再生する場合に参照するファイルである。
【０５５１】
number_of_source_packets1は、「00001.m2ts」のm2tsファイルに含まれるソースパケットの数を表す。
【０５５２】
EP_mapは、「00001.m2ts」のm2tsファイルに含まれるTS中のエントリーポイント(EP)の位置情報を表す。
【０５５３】
chunk_map()は、「00001.m2ts」のm2tsファイルに含まれるTSについて、先頭のチャンクから順番に、各チャンクの開始位置を表すSource Packet Number（SPN）を表す。
【０５５４】
チャンクは、１つのTSに属し、光ディスク２０２上に連続配置されるSource packetの集まりである。ここでは、１つのチャンクが、光ディスク２０２上に配置される１つのエクステントに相当するものとして説明する。
【０５５５】
chunk_map()が、各チャンクの長さを表すことになる。chunk_map()の具体例については後述する。
【０５５６】
図３７Ｂは「00002.clpi」のclpiファイルの例を示す図である。「00002.clpi」のclpiファイルは、D2 view videoを再生する場合に参照するファイルである。
【０５５７】
図３７Ｃは「00003.clpi」のclpiファイルの例を示す図である。「00003.clpi」のclpiファイルは、D1 view videoを再生する場合に参照するファイルである。図３７Ｂ、図３７Ｃの記述内容は図３７Ａに示すものと同じである。
【０５５８】
図３８は、図３６、図３７のデータを用いて行われるファイル管理の概念を示す図である。
【０５５９】
図３８に示すように、ファイル管理は、物理レイヤ、ファイルシステムレイヤ、アプリケーションレイヤの３層構造の形で行われる。図３６の3D_PlayList、図３６のclpiファイルがアプリケーションレイヤの情報になる。
【０５６０】
物理レイヤは、Base view video、D1 view video、D2 view videoが全てインターリーブされた状態で記録されている光ディスク２０２のレイヤとなる。
【０５６１】
図３８の例においては、D1 view videoのチャンク、D2 view videoのチャンク、Base view videoのチャンクがその順番で配置されている。図３８において、「B」の文字を付けているブロックはBase view videoのチャンクを表し、「D1」の文字を付けているブロックはD1 view videoのチャンクを表す。「D2」の文字を付けているブロックはD2 view videoのチャンクを表す。
【０５６２】
このように、Base view video、D1 view video、D2 view videoの各エクステント（チャンク）は、光ディスク２０２上においてインターリーブ配置されている。インターリーブ配置は、上述したように、同一種類のストリームのエクステントが隣接しない、周期的な配置を意味する。
【０５６３】
ファイルシステムレイヤにおいては、アプリケーションがファイル名で指定したストリームファイル（m2tsファイル、ilvtファイル）と、光ディスク２０２上の各チャンクが対応付けられる。ファイルシステムは例えばUDF file systemである。
【０５６４】
図３８に示すように、「00001.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたBase view videoのチャンクから構成される。
【０５６５】
また、「00002.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクから構成される。
【０５６６】
「00003.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD1 view videoのチャンクから構成される。
【０５６７】
「20000.ilvt」のファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクとBase view videoのチャンクから構成される。
【０５６８】
「10000.ilvt」のファイルは、光ディスク２０２上に配置されたD1 view videoのチャンクとBase view videoのチャンクから構成される。
【０５６９】
2D再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。
【０５７０】
また、B-D1再生を行うために、アプリケーションから「10000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D1 view videoのチャンクとBase view videoのチャンクが読み出される。
【０５７１】
B-2D再生を行うために、アプリケーションから「20000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D2 view videoのチャンクとBase view videoのチャンクが読み出される。
【０５７２】
［動作例１］
ここで、図３９のフローチャートを参照して、図３６の3D_PlayListファイルに従って行われる再生処理について説明する。
【０５７３】
ステップＳ１において、コントローラ２５１は、typeの値から、Base view video、D1 view video、D2 view videoが全てインターリーブされていることを確認する。
【０５７４】
この場合、ステップＳ２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０５７５】
ステップＳ３において、コントローラ２５１は、ユーザによる操作などに基づいて、B-D1再生が指示されたか否かを判定する。
【０５７６】
B-D1再生が指示されたとステップＳ３において判定した場合、ステップＳ４において、コントローラ２５１は、interleaved_file_info()に記述された「10000.ilvt」(ref_to_D1-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD1 view videoのチャンクを光ディスク２０２から読み出させる。
【０５７７】
ディスクドライブ２５２により読み出されたBase view videoのチャンクとD1 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０５７８】
ステップＳ５において、分離部２８１は、図３７の「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00003.clpi」(ref to D1_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00003.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00003.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。chunk_map()を使って行われるデータの分離については後述する。
【０５７９】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。リードバッファ２８５に記憶された「00003.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０５８０】
ステップＳ６において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする（再生する）。
【０５８１】
一方、ステップＳ３において、B-D1再生が指示されていない、すなわちB-D2再生が指示されたと判定した場合、ステップＳ７において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD2 view videoのチャンクを光ディスク２０２から読み出させる。
【０５８２】
ステップＳ８において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00002.clpi」(ref to D2_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00002.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00002.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０５８３】
その後、「00001.m2ts」のm2tsファイルのデータと「00002.m2ts」のm2tsファイルのデータは、B-D1再生のときと同様にデコーダ２９０に供給され、ステップＳ６において再生される。
【０５８４】
［chunk_map()を使ったデータの分離］
図４０は、chunk_map()のシンタクスの例を示す図である。
【０５８５】
number_of_chunksは、参照するチャンクの数を表す。number_of_chunks以降には、ここで指定される数だけチャンクの情報が記述される。
【０５８６】
SPN_chunk_start[i]は、例えば先頭のチャンクの開始位置を基準として、その基準の位置から各チャンクの開始位置までのSPN（長さ）を表す。各チャンクの開始位置までのSPNが、先頭のチャンクのものから順に記述される。
【０５８７】
図４１は、chunk_map()の具体例を示す図である。
【０５８８】
図４１Ａは「00001.clpi」のclpiファイルに記述されるchunk_map()であり、number_of_chunksはｎである。
【０５８９】
また、SPN_chunk_start[i]は0,c1,c2,…,cnである。
【０５９０】
１番目の値0は、図４２Ｃに示すように、「00001.m2ts」のm2tsファイルに含まれるBase view videoの先頭のチャンクの開始位置を基準として、その基準の位置から、１番目のチャンク（B[0]）の開始位置までのSPNが0であることを表す。
【０５９１】
２番目の値c1は、基準の位置から、２番目のチャンク（B[1]）の開始位置までのSPNがc1であることを表す。
【０５９２】
３番目の値c2は、基準の位置から、３番目のチャンク（B[2]）の開始位置までのSPNがc2であることを表す。
【０５９３】
n+1番目の値cnは、基準の位置から、最後のチャンクであるn+1番目のチャンク（B[n]）の開始位置までのSPNがcnであることを表す。
【０５９４】
図４１Ｂは「00002.clpi」のclpiファイルに記述されるchunk_map()であり、number_of_chunksはｎである。
【０５９５】
また、SPN_chunk_start[i]は0,b1,b2,…,bnである。
【０５９６】
１番目の値0は、図４２Ｂに示すように、「00002.m2ts」のm2tsファイルに含まれるD2 view videoの先頭のチャンクの開始位置を基準として、その基準の位置から、１番目のチャンク（D2[0]）の開始位置までのSPNが0であることを表す。
【０５９７】
２番目の値b1は、基準の位置から、２番目のチャンク（D2[1]）の開始位置までのSPNがb1であることを表す。
【０５９８】
３番目の値b2は、基準の位置から、３番目のチャンク（D2[2]）の開始位置までのSPNがb2であることを表す。
【０５９９】
n+1番目の値bnは、基準の位置から、最後のチャンクであるn+1番目のチャンク（D2[n]）の開始位置までのSPNがbnであることを表す。
【０６００】
図４１Ｃは「00003.clpi」のclpiファイルに記述されるchunk_map()であり、number_of_chunksはｎである。
【０６０１】
また、SPN_chunk_start[i]は0,a1,a2,…,anである。
【０６０２】
１番目の値0は、図４２Ａに示すように、「00003.m2ts」のm2tsファイルに含まれるD1 view videoの先頭のチャンクの開始位置を基準として、その基準の位置から、１番目のチャンク（D1[0]）の開始位置までのSPNが0であることを表す。
【０６０３】
２番目の値a1は、基準の位置から、２番目のチャンク（D1[1]）の開始位置までのSPNがa1であることを表す。
【０６０４】
３番目の値a2は、基準の位置から、３番目のチャンク（D1[2]）の開始位置までのSPNがa2であることを表す。
【０６０５】
n+1番目の値anは、基準の位置から、最後のチャンクであるn+1番目のチャンク（D1[n]）の開始位置までのSPNがanであることを表す。
【０６０６】
D1[i],D2[i],B[i]は、図４２Ｄに示すようにその順番で、光ディスク２０２上に周期的に配置されている。
【０６０７】
分離部２８１は、光ディスク２０２から読み出されたデータがディスクドライブ２５２から供給された場合、図４１の３つのchunk_map()の記述に基づいて、供給されたデータの先頭からa1に相当するSPN分のデータをD1[0]として分離する。
【０６０８】
また、分離部２８１は、D1[0]の終わりの位置からb1に相当するSPN分のデータをD2[0]として分離し、D2[0]の終わりの位置からc1に相当するSPN分のデータをB[0]として分離する。
【０６０９】
分離部２８１は、B[0]の終わりの位置からa2-a1に相当するSPN分のデータをD1[1]として分離する。
【０６１０】
分離部２８１は、D1[1]の終わりの位置からb2-b1に相当するSPN分のデータをD2[1]として分離し、D2[1]の終わりの位置からc2-c1に相当するSPN分のデータをB[1]として分離する。
【０６１１】
なお、分離の対象になるチャンクは、B-D1再生を行う場合にはD1[i],B[i]だけであり、B-D2再生を行う場合にはD2[i],B[i]だけである。
【０６１２】
このように、分離部２８１によるデータの分離は、chunk_map()に記述される各チャンクの長さの情報を用いて行われる。
【０６１３】
chunk_map()について補足する。
【０６１４】
type=0のとき、ref_to_B_clpi_file_nameにより参照されるclpiファイルについては、chunk_map()はオプショナルとなる(無くても良い)。そして、chunk_map()がある場合、プレーヤはそのchunk_map()を無視しなければならない。
【０６１５】
また、ローカルストレージ２５４上のm2tsファイルに対応するclpiファイルについては、chunk_map()はオプショナルとなる(無くても良い)。そして、chunk_map()がある場合、プレーヤはそのchunk_map()を無視しなければならない。
【０６１６】
type=1のとき、対応するBase view videoのTS、D1 view videoのTS、D2 view videoのTSの３本のTSは、それぞれ同じ数nのチャンクに分割される。すなわち、図４２のD1[i],D2[i],B[i]について、添え字iの値が同じ組のチャンクは、同じ再生時間を持つように分割される。
【０６１７】
同様に、type=2のとき、対応するBase view videoのTS、D1 view videoのTSの２本のTSは、それぞれ同じ数nのチャンクに分割される。すなわち、インターリーブされるD1[i],B[i]について、添え字iの値が同じ組のチャンクは、同じ再生時間を持つように分割される。
【０６１８】
type=3のとき、対応するBase view videoのTS、D2 view videoのTSの２本のTSは、それぞれ同じ数nのチャンクに分割される。すなわち、インターリーブされるD2[i],B[i]について、添え字iの値が同じ組のチャンクは、同じ再生時間を持つように分割される。
【０６１９】
［3D_PlayListの例２］
図４３は、3D_PlayListの他の例を示す図である。
【０６２０】
図４３の「0000.mpls」のPlayListファイルに記述されている3D_PlayListは、Base view videoとD2 view videoがインターリーブされている光ディスク２０２の再生を管理するPlayListである。すなわち、typeの値は3である。
【０６２１】
SubPathの記述がD2 view videoを参照するSubPathの記述だけになる点と、interleaved_file_info()の記述が異なる点を除いて、図４３の3D_PlayListの記述は図３６の記述と同様である。
【０６２２】
すなわち、SubPath()のSubPath_typeは「9」である。SubPath_typeが「9」であることは、このSubPathがD2 view videoを再生するサブパスであることを表す。
【０６２３】
また、ref_to_clpi_file_nameは「00002」である。
【０６２４】
図４３のinterleaved_file_info()のref_to_D2-B_interleaved_file_nameは「20000」である。この記述から、D2-B再生を行う場合には図２４の「20000.ilvt」のilvtファイルを参照することが特定される。
【０６２５】
また、ref_to_D2_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図２４の「00002.clpi」のclpiファイルを参照することが特定される。
【０６２６】
図４４は、図４３の3D_PlayListとともに用いられるclpiファイルのシンタクスを示す図である。
【０６２７】
図４４Ａは、「00001.clpi」のclpiファイルの例を示す図であり、図４４Ｂは、「00002.clpi」のclpiファイルの例を示す図である。いずれのclpiファイルにも、EP_mapと、上述したchunk_map()の記述が含まれる。
【０６２８】
図４５は、図４３、図４４のデータを用いて行われるファイル管理の概念を示す図である。
【０６２９】
図４５に示すように、物理レイヤは、Base view videoとD2 view videoがインターリーブされた状態で記録されている光ディスク２０２のレイヤとなる。
【０６３０】
「00001.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたBase view videoのチャンクから構成される。
【０６３１】
また、「00002.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクから構成される。
【０６３２】
「20000.ilvt」のilvtファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクとBase view videoのチャンクから構成される。
【０６３３】
2D再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。
【０６３４】
B-D2再生を行うために、アプリケーションから「20000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D2 view videoのチャンクとBase view videoのチャンクが読み出される。
【０６３５】
［動作例２］
図４６のフローチャートを参照して、図４３の3D_PlayListファイルに従って行われる再生処理について説明する。
【０６３６】
ステップＳ１１において、コントローラ２５１は、typeの値から、Base view video、D2 view videoがインターリーブされていることを確認する。
【０６３７】
この場合、ステップＳ１２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０６３８】
B-D2再生が指示された場合、ステップＳ１３において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD2 view videoのチャンクを光ディスク２０２から読み出させる。
【０６３９】
ディスクドライブ２５２により読み出されたBase view videoのチャンクとD2 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０６４０】
ステップＳ１４において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00002.clpi」(ref to D2_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00002.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00002.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０６４１】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。一方、リードバッファ２８５に記憶された「00002.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０６４２】
ステップＳ１５において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０６４３】
［3D_PlayListの例３］
図４７は、3D_PlayListのさらに他の例を示す図である。
【０６４４】
図４７の「0000.mpls」のPlayListファイルに記述されている3D_PlayListは、光ディスク２０２に記録されているBase view video、D2 view videoと、ローカルストレージ２５４に記録されているD1 view videoの再生を管理するPlayListである。光ディスク２０２上では、Base view videoとD2 view videoはインターリーブされている。
【０６４５】
光ディスク２０２上のデータの配置のタイプを表すものであるから、PlayItem()のtypeの値は3である。
【０６４６】
SubPath()[1]のSubPath_typeは「9」である。SubPath_typeが「9」であることは、この１つ目のSubPathがD2 view videoを再生するサブパスであることを表す。
【０６４７】
SubPath()[1]のref_to_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図２４の「00002.clpi」のclpiファイルを参照することが特定される。
【０６４８】
SubPath()[2]のSubPath_typeは「8」である。SubPath_typeが「8」であることは、この２つ目のSubPathがD1 view videoを再生するサブパスであることを表す。
【０６４９】
SubPath()[2]のref_to_clpi_file_nameは「00003」である。この記述から、D1 view videoを再生する場合には、ローカルストレージ２５４に記録されている「00003.clpi」のclpiファイルを参照することが特定される。
【０６５０】
この２つ目のSubPathに関する記述は、例えば、D1 view videoがダウンロードされたときに追加される。
【０６５１】
interleaved_file_info()のref_to_D2-B_interleaved_file_nameは「20000」である。この記述から、B-D2再生を行う場合には、図２４の「20000.ilvt」のilvtファイルを参照することが特定される。
【０６５２】
また、ref_to_D2_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図２４の「00002.clpi」のファイルを参照することが特定される。
【０６５３】
なお、ローカルストレージ２５４上ではD1 view videoはインターリーブされていないから、D1 view videoに関するilvtファイルは不要である。
【０６５４】
図４８は、図４７の3D_PlayListとともに用いられるclpiファイルのシンタクスを示す図である。
【０６５５】
図４８Ａは、「00001.clpi」のclpiファイルの例を示す図であり、図４８Ｂは、「00002.clpi」のclpiファイルの例を示す図である。いずれのclpiファイルにも、EP_mapとchunk_map()の記述が含まれる。
【０６５６】
図４９は、図４７、図４８のデータを用いて行われるファイル管理の概念を示す図である。
【０６５７】
図４９に示すように、物理レイヤは、Base view videoとD2 view videoがインターリーブされた状態で記録されている光ディスク２０２と、２番目のSubPathが参照するD1 view videoのファイルが記録されているローカルストレージ２５４のレイヤとなる。
【０６５８】
図４９の例においては、D1 view videoを格納したm2tsファイルのファイル名は「00003.m2ts」である。また、「00003.m2ts」に対応するclpiファイルのファイル名は「00003.clpi」である。
【０６５９】
「00001.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたBase view videoのチャンクから構成される。
【０６６０】
また、「00002.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクから構成される。
【０６６１】
「20000.ilvt」のilvtファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクとBase view videoのチャンクから構成される。
【０６６２】
2D再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。
【０６６３】
B-D1再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。また、図４７の3D_PlayListの２番目のSubPathの記述に従って、「00003.m2ts」を指定して、D1 view videoのm2tsファイルがローカルストレージ２５４から読み出される。
【０６６４】
B-D2再生を行うために、アプリケーションから「20000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D2 view videoのチャンクとBase view videoのチャンクが読み出される。
【０６６５】
［動作例３］
図５０のフローチャートを参照して、図４７の3D_PlayListファイルに従って行われる再生処理について説明する。
【０６６６】
ステップＳ２１において、コントローラ２５１は、typeの値から、Base view video、D2 view videoがインターリーブされていることを確認する。
【０６６７】
この場合、ステップＳ２２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０６６８】
ステップＳ２３において、コントローラ２５１は、B-D1再生が指示されたか否かを判定する。
【０６６９】
B-D1再生を行う場合、光ディスク２０２に記録されているデータとローカルストレージ２５４に記録されているデータが用いられる。一方、B-D2再生を行う場合、光ディスク２０２に記録されているデータが用いられる。
【０６７０】
ステップＳ２３において、B-D1再生が指示されていない、すなわちB-D2再生が指示されたと判定した場合、ステップＳ２４において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を構成するD2 view videoを含むClipの名前X「00002」（D2 view videoを含むm2tsファイルの名前のうちの拡張子を除いた部分）を取り出す。
【０６７１】
ステップＳ２５において、コントローラ２５１は、SubPath_type=9(D2-view videoを再生するサブパス)が参照するClipの名前Y「00002」を取り出す。
【０６７２】
ステップＳ２６において、コントローラ２５１は、YがXと同じであることにより、D2 view videoが「20000.ilvt」に含まれていることを認識する。ここでYがXと異なるとき、D2 view videoを含むClipはローカルストレージ２５４上にあることになる。
【０６７３】
ステップＳ２７において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD2 view videoのチャンクを光ディスク２０２から読み出させる。
【０６７４】
ディスクドライブ２５２により読み出されたBase view videoのチャンクとD2 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０６７５】
ステップＳ２８において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00002.clpi」(ref to D2_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00002.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00002.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０６７６】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。一方、リードバッファ２８５に記憶された「00002.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０６７７】
ステップＳ２９において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０６７８】
一方、B-D1再生が指示されたとステップＳ２３において判定した場合、ステップＳ３０において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を構成するD2 view videoを含むClipの名前X「00002」を取り出す。
【０６７９】
ステップＳ３１において、コントローラ２５１は、SubPath_type=8(D1-view videoを再生するサブパス)が参照するClipの名前Y「00003」を取り出す。
【０６８０】
ステップＳ３２において、コントローラ２５１は、Yが「00001.clpi」(ref_to_B_clpi_file_name)のうちの拡張子を除いた部分と異なり、かつ、YがXと異なることにより、D1 view videoのClipがローカルストレージ２５４上にあることを認識する。ここでYが「00001.clpi」のうちの拡張子を除いた部分と同じであるとき、または、YがXと同じあるとき、D1 view videoは「20000.ilvt」に含まれていることになる。
【０６８１】
ステップＳ３３において、コントローラ２５１は、「00001.clpi」(ref_to_B_clpi_file_name)のEP_mapを使って、ディスクドライブ２５２に「00001.m2ts」のm2tsファイルを読み出させる。「00001.clpi」のEP_mapには、「00001.m2ts」のm2tsファイルのデコード開始位置となるエントリポイントの情報が含まれている。
【０６８２】
ステップＳ３４において、コントローラ２５１は、「00003.clpi」(SubPath()[2]で参照されるファイル)のEP_mapを使って、ローカルストレージ２５４から「00003.m2ts」のm2tsファイルを読み出す。「00003.clpi」のEP_mapには、「00003.m2ts」のm2tsファイルのデコード開始位置となるエントリポイントの情報が含まれている。
【０６８３】
読み出されたBase view videoのチャンクとD1 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０６８４】
光ディスク２０２から読み出された「00001.m2ts」のm2tsファイルのデータはリードバッファ２８２に記憶された後、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。
【０６８５】
また、ローカルストレージ２５４から読み出された「00003.m2ts」のm2tsファイルのデータはリードバッファ２８５に記憶された後、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０６８６】
ステップＳ２９において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０６８７】
［chunk_map()を利用して「10000.ilvt」をランダムアクセス再生する方法］
図５１は、図４１を参照して説明したchunk_map()の内容をまとめて示す図である。
【０６８８】
各clpiファイルのchunk_map()に記述されるSPN_chunk_start（基準の位置からのSPN（長さ））を、縦方向にiをとって並べると図５１に示すようなものになる。
【０６８９】
図５２は、chunk_map()とともに各clpiファイルに記述されるEP_map()のシンタクスを示す図である。
【０６９０】
EP_map()はランダムアクセスなどを行うときのデコード開始位置を特定するために参照される。
【０６９１】
number_of_EP_entriesはEP（エントリポイント）の数を表す。
【０６９２】
number_of_EP_entries以降の記述が各EPについて用意される。PTS_EP_start[i]はEPのPTSを表し、SPN_EP_start[i]はEPのSPNを表す。このように、EP_mapには、各エントリポイントについてのPTSとSPNが対応付けて登録される。
【０６９３】
図５３のフローチャートを参照して、再生装置２０１の処理について説明する。
【０６９４】
ここでは、図３６の3D_PlayListを参照してB-D1再生を行い、ランダムアクセスを行う場合について説明する。
【０６９５】
ステップＳ４１において、コントローラ２５１は、typeの値から、Base view video、D1 view video、D2 view videoが全てインターリーブされていることを確認する。
【０６９６】
この場合、ステップＳ４２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０６９７】
ステップＳ４３において、コントローラ２５１は、interleaved_file_info()に記述された「10000.ilvt」(ref_to_D1-B_interleaved_file_name)が読み出しファイルであると判断する。
【０６９８】
「00000.mpls」の3D_PlayListファイルの時刻xから再生を開始する場合、ステップＳ４４において、コントローラ２５１は、「00001.clpi」(ref_to_B_clpi_file_name)のEP_mapを用いて、xよりも小さく最も近い値を持つPTS_EP_start[m]を見つける。
【０６９９】
ステップＳ４５において、コントローラ２５１は、PTS_EP_start[m]に対応するSPN_EP_start[m]を取り出す。図５２を参照して説明したように、EP_mapにはPTS_EP_start[i]とSPN_EP_start[i]が対応付けて登録されている。
【０７００】
図５４は、ステップＳ４４，Ｓ４５の処理により特定される位置の例を示す図である。
【０７０１】
図５４に示すように、時間軸上の時刻xから再生を開始する場合、xよりも小さく最も近い値を持つPTS_EP_start[m]がステップＳ４４において特定される。また、PTS_EP_start[m]に対応するSPN_EP_start[m]がステップＳ４５において特定される。
【０７０２】
ステップＳ４６において、コントローラ２５１は、「00001.clpi」のchunk_mapを用いて、SPN_EP_start[m]より小さく最も近い値をもつSPN_chunk_start[k]を見つける。ステップＳ４６の処理により特定されるSPN_chunk_start[k]を図５５に示す。
【０７０３】
ステップＳ４７において、コントローラ２５１は、「00001.clpi」のchunk_map()のSPN_chunk_start[k]と、「00003.clpi」(ref to D1_clpi_file_name)のchunk_map()のSPN_chunk_start[k]との和を、「10000.ilvt」の読み出し開始アドレスとして決定する。
【０７０４】
ここで決定される「10000.ilvt」の読み出し開始アドレスは、「10000.ilvt」の中でのD1[k]のチャンクの開始アドレスを示す。
【０７０５】
ステップＳ４８において、コントローラ２５１は、「10000.ilvt」(ref_to_D1-B_interleaved_file_name)を指定し、ステップＳ４７で決定したアドレスから、UDF file systemを通して、Base view videoのチャンクとD1 view videoのチャンクを読み出させる。
【０７０６】
読み出されたBase view videoのチャンクとD1 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０７０７】
ステップＳ４９において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00003.clpi」(ref to D1_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00003.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00003.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０７０８】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。リードバッファ２８５に記憶された「00003.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０７０９】
ステップＳ５０において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０７１０】
ilvtファイルのランダムアクセスは以上のようにして行われる。
【０７１１】
［EP_mapについて］
ここで、EP_mapについて説明する。
【０７１２】
Base view videoのEP_mapについて説明するが、D1/D2 view videoについても、同様にしてEP_mapが設定される。例えば、Base view videoのあるピクチャにエントリポイントが設定された場合、D1/D2 view videoの対応するピクチャにもエントリポイントが設定される。
【０７１３】
それぞれのストリームのピクチャをエンコード順／デコード順、あるいは表示順に並べたときに同じ位置にあるBase view videoのピクチャとD1/D2 view videoのピクチャが、対応するピクチャとなる。
【０７１４】
図５６は、光ディスク２０２上に記録されたAVストリームの構造を示す図である。
【０７１５】
Base view videoストリームを含むTSは、6144バイトのサイズを有する整数個のアライドユニット(Aligned Unit)から構成される。
【０７１６】
アライドユニットは、32個のソースパケット(Source Packet)からなる。ソースパケットは192バイトを有する。１つのソースパケットは、4バイトのトランスポートパケットエクストラヘッダ(TP_extra header)と、188バイトのトランスポートパケット(Transport Packet)とからなる。
【０７１７】
Base view videoのデータは、MPEG2 PESパケットにパケット化されている。PESパケットのデータ部にPESパケットヘッダが付加されてPESパケットが形成される。PESパケットヘッダには、PESパケットが伝送するエレメンタリストリームの種類を特定するストリームIDが含まれる。
【０７１８】
PESパケットは、さらにトランスポートパケットにパケット化される。すなわち、PESパケットがトランスポートパケットのペイロードのサイズに分割され、ペイロードにトランスポートパケットヘッダが付加されてトランスポートパケットが形成される。トランスポートパケットヘッダは、ペイロードに格納されるデータの識別情報であるPIDを含む。
【０７１９】
なお、ソースパケットには、Clip AVストリームの先頭を例えば０として、ソースパケット毎に１ずつ増加するソースパケット番号が与えられる。また、アライドユニットは、ソースパケットの第１バイト目から始まる。
【０７２０】
EP_mapは、Clipのアクセスポイントのタイムスタンプが与えられたときに、Clip AVストリームファイルの中でデータの読み出しを開始すべきデータアドレスを検索するために用いられる。EP_mapは、エレメンタリストリームおよびトランスポートストリームから抽出されたエントリポイントのリストである。
【０７２１】
EP_mapは、AVストリームの中で、デコードを開始すべきエントリポイントを検索するためのアドレス情報を持つ。EP_map中の１つのEPデータは、PTSと、PTSに対応するAccess Uniteの、AVストリーム中のアドレスとの対で構成される。AVC/H.264においては、１Access Uniteには１ピクチャ分のデータが格納される。
【０７２２】
図５７は、Clip AVストリームの例を示す図である。
【０７２３】
図５７のClip AVストリームは、PID=xで識別されるソースパケットからなるビデオストリーム（Base view videoストリーム）である。ビデオストリームは、ソースパケット毎に、ソースパケット内のトランスポートパケットのヘッダに含まれるPIDにより区別される。
【０７２４】
図５７においては、ビデオストリームのソースパケットのうちの、IDR(Instantaneous Decording Refresh)ピクチャの先頭バイトを含むソースパケットに色が付されている。色が付いていない四角は、ランダムアクセスポイントとならないデータが含まれるソースパケットや、他のストリームのデータが含まれているソースパケットを示す。
【０７２５】
IDRピクチャはＩピクチャであり、IDRピクチャを含むGOP内の中で最初にデコードされる。IDRピクチャのデコード時、参照ピクチャバッファの状態や、それまで管理されていたフレーム番号やPOC(Picture Order Count)などのデコードに関する全ての情報はリセットされる。
【０７２６】
例えば、PID=ｘで区別されるビデオストリームのランダムアクセス可能なIDRピクチャの先頭バイトを含む、ソースパケット番号X1のソースパケットは、Clip AVストリームの時間軸上でPTS=pts(x1)の位置に配置される。
【０７２７】
同様に、次にランダムアクセス可能なIDRピクチャの先頭バイトを含むソースパケットはソースパケット番号X2のソースパケットとされ、PTS=pts(x2)の位置に配置される。
【０７２８】
図５８は、図５７のClip AVストリームに対応したEP_mapの例を概念的に示す図である。
【０７２９】
図５８に示すように、EP_mapは、stream_PID、PTS_EP_start、およびSPN_EP_startから構成される。
【０７３０】
stream_PIDは、ビデオストリームを伝送するトランスポートパケットのPIDを表す。
【０７３１】
PTS_EP_startは、ランダムアクセス可能なIDRピクチャから始まるAccess UniteのPTSを表す。
【０７３２】
SPN_EP_startは、PTS_EP_startの値により参照されるAccess Uniteの第１バイト目を含むソースパケットのアドレスを表す。
【０７３３】
ビデオストリームのPIDがstream_PIDに格納され、PTS_EP_startとSPN_EP_startの対応関係を表すテーブル情報であるEP_map_for_one_stream_PID()が生成される。
【０７３４】
例えば、PID=xのビデオストリームのEP_map_for_one_stream_PID[0]には、PTS=pts(x1)とソースパケット番号X1、PTS=pts(x2)とソースパケット番号X2、・・・、PTS=pts(xk)とソースパケット番号Xkとがそれぞれ対応して記述される。
【０７３５】
このようなテーブルが、同じClip AVストリームに多重化されたそれぞれのビデオストリームについても生成される。生成されたテーブルを含むEP_mapが、当該Clip AVストリームに対応するClip Informationファイルに格納される。
【０７３６】
図５９は、SPN_EP_startが指すソースパケットのデータ構造の例を示す図である。
【０７３７】
上述したように、ソースパケットは、188バイトのトランスポートパケットに4バイトのヘッダを付加した形で構成される。トランスポートパケット部分は、ヘッダ部(TP header)とペイロード部とからなる。SPN_EP_startは、IDRピクチャから始まるAccess Uniteの第１バイト目を含むソースパケットのソースパケット番号を表す。
【０７３８】
AVC/H.264においては、Access Uniteすなわちピクチャは、AUデリミタ(Access Unit Delimiter)から開始される。AUデリミタの後に、SRSとPPSが続く。その後に、IDRピクチャのスライスのデータの、先頭部分または全体が格納される。
【０７３９】
トランスポートパケットのTPヘッダにあるpayload_unit_start_indicatorの値が１であることは、新たなPESパケットがこのトランスポートパケットのペイロードから始まることを表す。このソースパケットから、Access Uniteが開始されることになる。
【０７４０】
このようなEP_mapが、Base view videoストリームとDependent view videoストリームについてそれぞれ用意される。
【０７４１】
＜第３の実施の形態＞
以上においては、PlayListの記述に基づいてD1/D2 view videoのclpiファイルを参照するようにしたが、Base view videoのclpiファイルから参照することができるようにしてもよい。
【０７４２】
［参照例１］
図６０は、再生装置２０１によるファイル管理の例を示す図である。
【０７４３】
図６０においては、PlayListから参照できるclpiファイルは矢印＃１に示すようにBase view videoのclpiファイルだけである。
【０７４４】
Base view videoのclpiファイルにはD1/D2 view videoのclpiファイルのファイル名の少なくとも一部が含まれている。そのファイル名を用いて、矢印＃２に示すようにD1 view videoのclpiファイルを参照したり、矢印＃３に示すようにD2 view videoのclpiファイルを参照したりすることができるようになされている。
【０７４５】
図６０のclpi[B]は、Base view videoを格納したm2tsファイル（m2ts[B]）のclpiファイルを示す。また、clpi[D1]は、D1 view videoを格納したm2tsファイル（m2ts[D1]）のclpiファイルを示す。clpi[D2]は、D2 view videoを格納したm2tsファイル（m2ts[D2]）のclpiファイルを示す。
【０７４６】
各clpiファイルには、２ビットの3D_Clip_typeと、２ビットの3D_App_typeが設定される。
【０７４７】
図６１は、3D_Clip_typeの意味を示す図である。
【０７４８】
3D_Clip_typeの値の00は、2D再生に用いられるClipであることを表す。これは2D再生にしか対応していないプレーヤとの互換性を確保するためのものである。3D_Clip_type=00を含むclpiファイルに対応するm2tsファイルは2D再生用videoのファイル（例えば、 Base view videoのファイル）となる。
【０７４９】
3D_Clip_typeの値の01は、Base view videoのClipであることを表す。
【０７５０】
3D_Clip_typeの値の10は、D1 view videoのClipであることを表す。
【０７５１】
3D_Clip_typeの値の11は、D2 view videoのClipであることを表す。
【０７５２】
図６２は、3D_App_typeの意味を示す図である。
【０７５３】
3D_App_typeの値の00は、2D再生アプリケーションによって参照可能なClipであることを表す。2D再生アプリケーションは、2D再生を制御するアプリケーションである。
【０７５４】
3D_App_typeの値の01は、B-D1再生アプリケーションによって参照可能なClipであることを表す。B-D1再生アプリケーションはB-D1再生を制御するアプリケーションである。
【０７５５】
3D_App_typeの値の10は、B-D2再生アプリケーションによって参照可能なClipであることを表す。B-D2再生アプリケーションはB-D2再生を制御するアプリケーションである。
【０７５６】
3D_App_typeの値の11は、B-D1再生アプリケーションとB-D2再生アプリケーションのいずれによっても参照可能なClipであることを表す。
【０７５７】
図６３は、3D_Clip_typeと3D_App_typeの設定の例を示す図である。
【０７５８】
図６３の例においては、Base view videoのclpiファイルには3D_Clip_typeの値として01が設定され、3D_App_typeの値として11が設定されている。Base view videoのclpiファイルのファイル名は「00001.clpi」である。
【０７５９】
Base view videoのm2tsファイルのファイル名は「00001.m2ts」である。このように、対応するclpiファイルとm2tsファイルには、同じ５桁の数字とそれぞれの拡張子からなるファイル名が設定される。
【０７６０】
また、D1 view videoのclpiファイルには3D_Clip_typeの値として10が設定され、3D_App_typeの値として11が設定されている。D1 view videoのclpiファイルのファイル名は「00003.clpi」であり、対応するm2tsファイルのファイル名は「00003.m2ts」である。
【０７６１】
D2 view videoのclpiファイルには3D_Clip_typeの値として01が設定され、3D_App_typeの値として11が設定されている。D2 view videoのclpiファイルのファイル名は「00002.clpi」であり、対応するm2tsファイルのファイル名は「00002.m2ts」である。
【０７６２】
Base view videoのclpiファイルには、そのBase view videoとともに3D再生に用いられるD1/D2 view videoのclpiファイルを表す情報として、D1/D2 view videoのclpiファイルに設定されたファイル名のうちの拡張子を除いた部分が記述される。
【０７６３】
図６４は、clpiファイルのシンタクスを示す図である。
【０７６４】
図６４に示すように、3D_Clip_typeと3D_App_typeの値がclpiファイルにそれぞれ設定される。
【０７６５】
また、ExtensionData()内に、このclpiファイルがBase view videoのclpiファイルである場合には、そのBase view videoとともに3D再生に用いられるD1/D2 view videoのclpiファイルを表す情報が記述される。
【０７６６】
図６５は、clpiファイルのExtensionData()内の記述の具体例を示す図である。
【０７６７】
図６５に示すように、例えば、3DClipInfo()として、3D再生時に参照する各種の情報が記述される。
【０７６８】
「If(3D_Clip_type == 01b)」は、3D_Clip_typeの値が01である場合に図６５の記述を参照することを表す。
【０７６９】
「if(3D_App_type == 01b || 3D_App_type == 11b)」は、3D_App_typeの値が01であるか11である場合に、次のD1_ClipInfo_file_nameとB-D1_Interleave_Info_file_nameを参照することを表す。D1_ClipInfo_file_nameとB-D1_Interleave_Info_file_nameが、B-D1再生を行うときに参照する記述となる。
【０７７０】
D1_ClipInfo_file_nameは、D1 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図６３の例の場合、「00003」が記述されることになる。拡張子を含めてファイル名全体が記述されるようにしてもよい。
【０７７１】
B-D1_Interleave_Info_file_nameは、上述した「10000.ilvt」のilvtファイルのような、B-D1再生を行うときに読み出しファイルとしてファイルシステムに指定するファイルのファイル名のうちの拡張子を除いた５桁の数字などを表す。
【０７７２】
「if(3D_App_type == 10b || 3D_App_type == 11b)」は、3D_App_typeの値が10であるか11である場合に、次のD2_ClipInfo_file_nameとB-D2_Interleave_Info_file_nameを参照することを表す。D2_ClipInfo_file_nameとB-D2_Interleave_Info_file_nameが、B-D2再生を行うときに参照する記述となる。
【０７７３】
D2_ClipInfo_file_nameは、D2 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図６３の例の場合、「00002」が記述されることになる。
【０７７４】
B-D2_Interleave_Info_file_nameは、上述した「20000.ilvt」のilvtファイルのような、B-D2再生を行うときに読み出しファイルとしてファイルシステムに指定するファイルのファイル名のうちの拡張子を除いた５桁の数字などを表す。
【０７７５】
num_of_Ext_fileは、図６５の記述を含むclpiファイルに対応するm2tsファイルが、いくつのエクステントを含むのかを表す。
【０７７６】
num_of_Ext_file以降に、各エクステントの情報が記述される。
【０７７７】
Ext_start_addressは、エクステントの光ディスク２０２上の開始アドレスを表す。
【０７７８】
Ext_sizeは、エクステントの長さを表す。エクステントの長さは上述したように例えばSPNにより表される。
【０７７９】
例えば、図６５の記述を含むclpiファイルがBase view videoのclpiファイルである場合には、そのBase view videoの光ディスク２０２上のエクステントに関する情報がnum_of_Ext_file以降に記述される。
【０７８０】
また、図６５の記述を含むclpiファイルがD1 view videoのclpiファイルである場合には、そのD1 view videoの光ディスク２０２上のエクステントに関する情報がnum_of_Ext_file以降に記述される。
【０７８１】
図６５の記述を含むclpiファイルがD2 view videoのclpiファイルである場合には、そのD2 view videoの光ディスク２０２上のエクステントに関する情報がnum_of_Ext_file以降に記述される。
【０７８２】
なお、図６５に示す記述のうち、２行目の「If(3D_Clip_type == 01b)」から、num_of_Ext_fileの１行上までの記述は、Base view videoのclpiファイルにだけ記述される。D1 view videoのclpiファイルとD2 view videoのclpiファイルには、エクステントに関する記述が含まれる。
【０７８３】
図６６は、clpiファイルのExtensionData()内の記述の他の具体例を示す図である。
【０７８４】
図６６の記述は、エクステントに関する記述である「Ext_start_address」が含まれていない点で図６５の記述と異なる。各エクステントのアドレスを他の情報などを参照することで特定することができる場合、「Ext_start_address」を用いないでも、「Ext_size」を使用することで各エクステントを特定し、抽出することができる。
【０７８５】
［参照例２］
図６７は、再生装置２０１によるファイル管理の他の例を示す図である。
【０７８６】
Base view videoのclpiファイルからD1/D2 view videoのclpiファイルを参照するのではなく、D1/D2 view videoのclpiファイルを参照するためのファイルを別途用意し、それを用いるようにしてもよい。
【０７８７】
図６７の例においては、PlayListから参照できるclpiファイルは矢印＃２１に示すようにBase view videoのclpiファイルだけである。
【０７８８】
PlayListとは別に設けられたInterleave ClipInfoから、矢印＃２２に示すようにD1 view videoのclpiファイルを参照したり、矢印＃２３に示すようにD2 view videoのclpiファイルを参照したりすることができるようになされている。
【０７８９】
Interleave ClipInfoには、D1/D2 view videoのclpiファイルのファイル名の少なくとも一部が含まれている。
【０７９０】
図６８は、ファイルの管理構造の例を示す図である。
【０７９１】
図６８に示すように、例えば、「BDMV」ディレクトリの下の階層であって、「CLIPINF」のディレクトリの次に、「Interleave CLIPINF」などのディレクトリが新たに設けられる。この「Interleave CLIPINF」ディレクトリに、D1/D2 view videoのclpiファイルを参照するためのファイルであるInterleave ClipInfoファイルが格納される。
【０７９２】
3D再生を行う場合、再生装置２０１は、この「Interleave CLIPINF」ディレクトリ内のInterleave ClipInfoファイルを参照し、Base view videoとともに3D再生に用いられるD1/D2 view videoのclpiファイルを特定する。
【０７９３】
図６９は、Interleave ClipInfoファイルのシンタクスを示す図である。
【０７９４】
図６９のInterleave ClipInfoファイルのファイル名は「zzzzz.ilvt」である。
【０７９５】
3D_App_typeには、図６２を参照して説明したいずれかの値が設定される。
【０７９６】
例えば3D_App_type=01である場合、B-D1再生アプリケーションはこのInterleave ClipInfoファイルを参照する。また、3D_App_type=10である場合、B-D2再生アプリケーションはこのInterleave ClipInfoファイルを参照する。3D_App_type=11である場合、B-D1再生アプリケーションもB-D2再生アプリケーションも、このInterleave ClipInfoファイルを参照する。
【０７９７】
「if(3D_App_type == 01b || 3D_App_type == 11b)」は、3D_App_typeの値が01であるか11である場合に次のD1_ClipInfo_file_nameを参照することを表す。D1_ClipInfo_file_nameは、B-D1再生を行うときに参照する記述となる。
【０７９８】
D1_ClipInfo_file_nameは、D1 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図６３の例の場合、「00003」が記述されることになる。
【０７９９】
「if(3D_App_type == 10b || 3D_App_type == 11b)」は、3D_App_typeの値が10であるか11である場合に次のD2_ClipInfo_file_nameを参照することを表す。D2_ClipInfo_file_nameは、B-D2再生を行うときに参照する記述となる。
【０８００】
D2_ClipInfo_file_nameは、D2 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図６３の例の場合、「00002」が記述されることになる。
【０８０１】
このように、インターリーブ情報のファイルを新しく定義しておき、それにより、Base view videoに対応するD1/D2 view videoのclpiファイルが特定できるようにしてもよい。
【０８０２】
［記録装置の構成例］
図７０は、ソフト製作処理部３０１の構成例を示すブロック図である。
【０８０３】
ビデオエンコーダ３１１は、図１７のMVCエンコーダ２１１と同様の構成を有している。ビデオエンコーダ３１１は、複数の映像データをH.264 AVC/MVCでエンコードすることによってBase view videoストリームとDependent view videoストリームを生成し、バッファ３１２に出力する。
【０８０４】
オーディオエンコーダ３１３は、入力されたオーディオストリームをエンコードし、得られたデータをバッファ３１４に出力する。オーディオエンコーダ３１３には、Base view video、Dependent view videoストリームとともにディスクに記録させるオーディオストリームが入力される。
【０８０５】
データエンコーダ３１５は、PlayListファイルなどの、ビデオ、オーディオ以外の上述した各種のデータをエンコードし、エンコードして得られたデータをバッファ３１６に出力する。
【０８０６】
例えば、データエンコーダ３１５は、Base view videoストリームのデータとD1/D2 view videoストリームのデータがエクステント単位でインターリーブされた状態で光ディスクに記録されているのか否かを表すtype（図３２）をPlayListファイルに設定する。
【０８０７】
また、データエンコーダ３１５は、Base view videoストリームのデータとD1/D2 view videoストリームのデータがインターリーブされた状態で光ディスクに記録される場合、上述したilvtファイルをPlayListファイルに設定する。ilvtファイルは、Base view videoストリームのデータとD1/D2 view videoストリームのデータとを仮想的にまとめて管理する仮想ファイルとして機能する。
【０８０８】
さらに、データエンコーダ３１５は、各ClipのClip Informationファイルのファイル名をPlayListファイルに設定したり、それぞれのClip Informationファイルに、EP_mapやchunk_mapを設定したりする。
【０８０９】
データエンコーダ３１５は、3D_Clip_type（図６１）と3D_App_type（図６２）をClip Informationファイルに設定する。また、データエンコーダ３１５は、Clip Informationファイルの拡張領域であるExtensionData()に、Ext_start_addressやExt_sizeなどのエクステントに関する情報を設定する。
【０８１０】
多重化部３１７は、それぞれのバッファに記憶されたビデオデータ、オーディオデータ、および、ストリーム以外のデータを同期信号と共に多重化し、誤り訂正符号化部３１８に出力する。
【０８１１】
誤り訂正符号化部３１８は、エラー訂正用のコードを多重化部３１７により多重化されたデータに付加する。
【０８１２】
変調部３１９は、誤り訂正符号化部３１８から供給されたデータに対して変調を施し、出力する。変調部３１９の出力は、再生装置２０１において再生可能な光ディスク２０２に記録されるソフトウェアとなる。
【０８１３】
このような構成を有するソフト製作処理部３０１が記録装置に設けられる。
【０８１４】
図７１は、ソフト製作処理部３０１を含む構成の例を示す図である。
【０８１５】
図７１に示す構成の一部が記録装置内に設けられることもある。
【０８１６】
ソフト製作処理部３０１により生成された記録信号はプリマスタリング処理部３３１においてマスタリング処理が施され、光ディスク２０２に記録すべきフォーマットの信号が生成される。生成された信号は原盤記録部３３３に供給される。
【０８１７】
記録用原盤製作部３３２においては、ガラスなどよりなる原盤が用意され、その上に、フォトレジストなどよりなる記録材料が塗布される。これにより、記録用原盤が製作される。
【０８１８】
原盤記録部３３３において、プリマスタリング処理部３３１から供給された記録信号に対応してレーザビームが変調され、原盤上のフォトレジストに照射される。これにより、原盤上のフォトレジストが記録信号に対応して露光される。その後、この原盤を現像し、原盤上にピットを出現させることが行われる。
【０８１９】
金属原盤製作部３３４において、原盤に電鋳等の処理が施され、ガラス原盤上のピットを転写した金属原盤が製作される。この金属原盤から、さらに金属スタンパが製作され、これが成形用金型とされる。
【０８２０】
成形処理部３３５において、成形用金型に、インジェクションなどによりPMMA（アクリル）またはPC（ポリカーボネート）などの材料を注入し、固定化させることが行われる。あるいは、金属スタンパ上に２Ｐ（紫外線硬化樹脂）などを塗布した後、紫外線を照射して硬化させることが行われる。これにより、金属スタンパ上のピットを、樹脂よりなるレプリカ上に転写することができる。
【０８２１】
成膜処理部３３６において、レプリカ上に、反射膜が蒸着あるいはスパッタリングなどにより形成される。あるいはまた、レプリカ上に、反射膜がスピンコートにより形成される。
【０８２２】
後加工処理部３３７において、このディスクに対して内外径の加工が施され、２枚のディスクを張り合わせるなどの必要な処置が施される。さらに、ラベルを貼り付けたり、ハブを取り付けたりした後、カートリッジに挿入される。このようにして再生装置２０１によって再生可能なデータが記録された光ディスク２０２が完成する。
【０８２３】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、汎用のパーソナルコンピュータなどにインストールされる。
【０８２４】
インストールされるプログラムは図１４のリムーバブル記録媒体１１１に記録して提供される。また、ローカルエリアネットワーク、インターネット、ディジタル放送といった、有線または無線の伝送媒体を介して提供されるようにしてもよい。
【０８２５】
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０８２６】
１０  ディスク，  １１  プレイバックマネージャ，  １２  3Dファイルコントローラ，  １３  UDFマネージャ，  １４  メインストリームバッファ，  １５  エンハンスストリームバッファ，  １６  3D用AVデコーダ，  ２１  ファイルマネージャ，  ２２  アロケーションマネージャ，  ２３  スプリッタ，  ５１  エンコーダ，  ５２  3D用エンコーダ，  ５３  （ストリーム／ファイル）アロケーションマネージャ，  ５４  ディスクイメージメーカ，  １０１  バス，  １０２  CPU，  １０３  ROM，  １０４  RAM，  １０５  ハードディスク，  １０６  出力部，  １０７  入力部，  １０８  通信部，  １０９  ドライブ，  １１０  入出力インタフェース，  １１１  リムーバブル記録媒体，  ２０１  再生装置，  ２０２  光ディスク，  ２０３  表示装置，  ２１１  MVCエンコーダ，  ２２１  H.264/AVCエンコーダ，  ２２２  H.264/AVCデコーダ，  ２２３  Depth算出部，  ２２４  Dependent view videoエンコーダ，  ２２５  マルチプレクサ，  ２５１  コントローラ，  ２５２  ディスクドライブ，  ２５３  メモリ，  ２５４  ローカルストレージ，  ２５５  インターネットインタフェース，  ２５６  デコーダ部，  ２５７  操作入力部
【図１】
2010244629.tif 000003
【図２】
2010244629.tif 000004
【図３】
2010244629.tif 000005
【図４】
2010244629.tif 000006
【図５】
2010244629.tif 000007
【図６】
2010244629.tif 000008
【図７】
2010244629.tif 000009
【図８】
2010244629.tif 000010
【図９】
2010244629.tif 000011
【図１０】
2010244629.tif 000012
【図１１】
2010244629.tif 000013
【図１２】
2010244629.tif 000014
【図１３】
2010244629.tif 000015
【図１４】
2010244629.tif 000016
【図１５】
2010244629.tif 000017
【図１６】
2010244629.tif 000018
【図１７】
2010244629.tif 000019
【図１８】
2010244629.tif 000020
【図１９】
2010244629.tif 000021
【図２０】
2010244629.tif 000022
【図２１】
2010244629.tif 000023
【図２２】
2010244629.tif 000024
【図２３】
2010244629.tif 000025
【図２４】
2010244629.tif 000026
【図２５】
2010244629.tif 000027
【図２６】
2010244629.tif 000028
【図２７】
2010244629.tif 000029
【図２８】
2010244629.tif 000030
【図２９】
2010244629.tif 000031
【図３０】
2010244629.tif 000032
【図３１】
2010244629.tif 000033
【図３２】
2010244629.tif 000034
【図３３】
2010244629.tif 000035
【図３４】
2010244629.tif 000036
【図３５】
2010244629.tif 000037
【図３６】
2010244629.tif 000038
【図３７】
2010244629.tif 000039
【図３８】
2010244629.tif 000040
【図３９】
2010244629.tif 000041
【図４０】
2010244629.tif 000042
【図４１】
2010244629.tif 000043
【図４２】
2010244629.tif 000044
【図４３】
2010244629.tif 000045
【図４４】
2010244629.tif 000046
【図４５】
2010244629.tif 000047
【図４６】
2010244629.tif 000048
【図４７】
2010244629.tif 000049
【図４８】
2010244629.tif 000050
【図４９】
2010244629.tif 000051
【図５０】
2010244629.tif 000052
【図５１】
2010244629.tif 000053
【図５２】
2010244629.tif 000054
【図５３】
2010244629.tif 000055
【図５４】
2010244629.tif 000056
【図５５】
2010244629.tif 000057
【図５６】
2010244629.tif 000058
【図５７】
2010244629.tif 000059
【図５８】
2010244629.tif 000060
【図５９】
2010244629.tif 000061
【図６０】
2010244629.tif 000062
【図６１】
2010244629.tif 000063
【図６２】
2010244629.tif 000064
【図６３】
2010244629.tif 000065
【図６４】
2010244629.tif 000066
【図６５】
2010244629.tif 000067
【図６６】
2010244629.tif 000068
【図６７】
2010244629.tif 000069
【図６８】
2010244629.tif 000070
【図６９】
2010244629.tif 000071
【図７０】
2010244629.tif 000072
【図７１】
2010244629.tif 000073
【手続補正書】
【提出日】平成22年1月13日(2010.1.13)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、プログラム、および記録媒体に関し、特に、記録媒体から、3D(Dimension)画像のコンテンツを適切に再生することができるようにした情報処理装置、情報処理方法、プログラム、および記録媒体に関する。
【背景技術】
【０００２】
例えば、映画等のコンテンツとしては、２次元(2D)画像のコンテンツが主流であるが、最近では、立体視が可能な３次元(3D)画像（グラフィック）のコンテンツが注目を集めている。
【０００３】
3D画像（以下、ステレオ画像ともいう）の表示の方式としては、種々の方式があるが、いずれの方式を採用する場合であっても、3D画像のデータ量は、2D画像のデータ量よりも大になる。
【０００４】
また、映画等の、高解像度の画像のコンテンツは、大容量であることもあり、そのような大容量の画像のコンテンツを、データ量の多い3D画像として記録するには、大容量の記録媒体が必要である。
【０００５】
そのような大容量の記録媒体としては、例えば、BD(Blu-Ray（登録商標）)-ROM(Read Only Memory)等のBlu-Ray（登録商標） Disc（以下、BDともいう）がある。
【０００６】
ここで、フアイル化手段により信号の記録媒体における記録位置をセクタよりも小さい所定単位で指定してフアイル化するようにしたことにより、フアイル化した信号を任意の位置で分割又は結合するような編集処理でも、当該信号の編集対象部分のみをフアイル化するように記録媒体に記録しなおす必要がなく、フアイル管理情報上のみで編集処理することができ、かくして編集処理を格段的に簡易化させ得るフアイル管理装置が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１１−１９５２８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、現行のBDの規格では、3D画像のコンテンツを、BDに、どのように記録し、また、再生するかは、規定されていない。
【０００９】
しかしながら、3D画像のコンテンツの記録や再生の仕方を、3D画像のコンテンツのオーサリングを行うオーサ(author)に委ねてしまうと、3D画像のコンテンツを適切に再生することができなくなるおそれがある。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、BD等の記録媒体から、ステレオ画像（3D画像）のコンテンツを適切に再生することができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の一側面の情報処理装置は、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定する設定手段を備える。
【００１２】
前記設定手段には、前記Base view videoの前記クリップ情報ファイルと、前記Dependent view videoの前記クリップ情報ファイルに、それぞれ、クリップを用いて処理を行うアプリケーションの種類を表す情報であるアプリケーションタイプ情報を設定させることができる。
【００１３】
前記設定手段には、前記Base view videoの前記クリップ情報ファイルの拡張領域に、前記Base view videoのクリップのデータとともに三次元画像の再生に用いられる前記Dependent view videoのクリップの前記クリップ情報ファイルの識別情報を設定させることができる。
【００１４】
前記設定手段には、前記Base view videoの前記クリップ情報ファイルの拡張領域に、さらに、前記Base view videoのクリップのデータと、前記Dependent view videoクリップのデータとを管理する仮想ファイルの識別情報を設定させることができる。
【００１５】
前記Base view videoのクリップのデータと、前記Dependent view videoクリップのデータとが、所定のデータ単位であるエクステント単位でインターリーブされた状態で光ディスクに記録されている場合、前記設定手段には、前記Base view videoの前記クリップ情報ファイルの拡張領域に、前記Base view videoの前記エクステントに関する情報を設定させ、前記Dependent view videoのクリップの前記クリップ情報ファイルの拡張領域に、前記Dependent view videoの前記エクステントに関する情報を設定させることができる。
【００１６】
前記エクステントに関する情報には、それぞれの前記エクステントの前記光ディスクにおける位置情報と長さ情報が含まれるようにすることができる。
【００１７】
本発明の一側面の情報処理方法は、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定するステップを含む。
【００１８】
本発明の一側面のプログラムは、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報を設定し、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報を設定するステップを含む処理をコンピュータに実行させる。
【００１９】
本発明の一側面の記録媒体は、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報が設定され、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報が設定されたものである。
【００２０】
本発明の一側面においては、複数の映像データをH.264 AVC/MVCで符号化することによって生成されたBase view videoのストリームの再生区間であるクリップに関する情報を記述するクリップ情報ファイルに、Base view videoのクリップであることを表す情報であるクリップタイプ情報が設定され、生成されたDependent view videoのクリップの前記クリップ情報ファイルに、Dependent view videoのクリップであることを表す前記クリップタイプ情報が設定される。
【発明の効果】
【００２１】
本発明によれば、ステレオ画像（3D画像）のコンテンツを適切に再生することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明を適用した再生装置を含む再生システムの構成例を示す図である。
【図２】撮影の例を示す図である。
【図３】MVCエンコーダの構成例を示すブロック図である。
【図４】参照画像の例を示す図である。
【図５】TSの構成例を示す図である。
【図６】TSの他の構成例を示す図である。
【図７】TSのさらに他の構成例を示す図である。
【図８】AVストリームの管理の例を示す図である。
【図９】Main PathとSub Pathの構造を示す図である。
【図１０】光ディスクに記録されるファイルの管理構造の例を示す図である。
【図１１】PlayListファイルのシンタクスを示す図である。
【図１２】図１１のPlayList()のシンタクスを示す図である。
【図１３】図１２のSubPath()のシンタクスを示す図である。
【図１４】図１３のSubPlayItem(i)のシンタクスを示す図である。
【図１５】図１２のPlayItem()のシンタクスを示す図である。
【図１６】図１５のSTN_table()のシンタクスを示す図である。
【図１７】3D_PlayListの具体例を示す図である。
【図１８】typeの意味を示す図である。
【図１９】SubPath_typeの意味を示す図である。
【図２０】再生装置の構成例を示すブロック図である。
【図２１】図２０のデコーダ部の構成例を示す図である。
【図２２】3D_PlayListの例を示す図である。
【図２３】clpiファイルのシンタクスを示す図である。
【図２４】図２２、図２３のデータを用いて行われるファイル管理の概念を示す図である。
【図２５】図２２の3D_PlayListファイルに従って行われる再生処理について説明するフローチャートである。
【図２６】chunk_map()のシンタクスの例を示す図である。
【図２７】chunk_map()の具体例を示す図である。
【図２８】チャンクの分離について示す図である。
【図２９】3D_PlayListの他の例を示す図である。
【図３０】clpiファイルのシンタクスを示す図である。
【図３１】図２９、図３０のデータを用いて行われるファイル管理の概念を示す図である。
【図３２】図２９の3D_PlayListファイルに従って行われる再生処理について説明するフローチャートである。
【図３３】3D_PlayListのさらに他の例を示す図である。
【図３４】clpiファイルのシンタクスを示す図である。
【図３５】図３３、図３４のデータを用いて行われるファイル管理の概念を示す図である。
【図３６】図３３の3D_PlayListファイルに従って行われる再生処理について説明するフローチャートである。
【図３７】図２７のchunk_map()の内容をまとめて示す図である。
【図３８】EP_map()のシンタクスを示す図である。
【図３９】再生装置のランダムアクセス処理について説明するフローチャートである。
【図４０】ステップＳ４４，Ｓ４５の処理により特定される位置の例を示す図である。
【図４１】ステップＳ４６の処理により特定されるSPN_chunk_start[k]を示す図である。
【図４２】光ディスク上に記録されたAVストリームの構造を示す図である。
【図４３】Clip AVストリームの例を示す図である。
【図４４】EP_mapの例を示す図である。
【図４５】SPN_EP_startが指すソースパケットのデータ構造の例を示す図である。
【図４６】再生装置によるファイル管理の例を示す図である。
【図４７】3D_Clip_typeの意味を示す図である。
【図４８】3D_App_typeの意味を示す図である。
【図４９】3D_Clip_typeと3D_App_typeの設定の例を示す図である。
【図５０】clpiファイルのシンタクスを示す図である。
【図５１】clpiファイルのExtensionData()内の記述の具体例を示す図である。
【図５２】clpiファイルのExtensionData()内の記述の他の具体例を示す図である。
【図５３】再生装置によるファイル管理の他の例を示す図である。
【図５４】ファイルの管理構造の例を示す図である。
【図５５】Interleave ClipInfoファイルのシンタクスを示す図である。
【図５６】ソフト製作処理部の構成例を示すブロック図である。
【図５７】ソフト製作処理部を含む構成の例を示す図である。
【発明を実施するための形態】
【００２３】
＜第１の実施の形態＞
【００２４】
［再生システムの構成例］
図１は、本発明を適用した再生装置２０１を含む再生システムの構成例を示す図である。
【００２５】
図１に示すように、この再生システムは、再生装置２０１と表示装置２０３がHDMI(High Definition Multimedia Interface)ケーブルなどで接続されることによって構成される。再生装置２０１には、BDなどの光ディスク２０２が装着される。
【００２６】
光ディスク２０２には、視点の数が２つのステレオ画像（3D画像）を表示するために必要なストリームが記録されている。
【００２７】
各ストリームのデータは、エクステント単位で、インターリーブされた状態で光ディスク２０２に記録されている。
【００２８】
再生装置２０１は、光ディスク２０２に記録されているストリームの3D再生に対応したプレーヤである。再生装置２０１は、光ディスク２０２に記録されているストリームを再生し、再生して得られた3D画像をテレビジョン受像機などよりなる表示装置２０３に表示させる。音声についても同様に再生装置２０１により再生され、表示装置２０３に設けられるスピーカなどから出力される。
【００２９】
光ディスク２０２には、3D画像を表示することができるようなストリームが記録されている。ストリームを光ディスク２０２に記録するための符号化の方式として、例えば、H.264 AVC(Advanced Video Coding)/MVC(Multi-view Video coding)が採用される。
【００３０】
［H.264 AVC/MVC Profile］
H.264 AVC/MVCでは、Base view videoと呼ばれる画像ストリームと、Dependent view videoと呼ばれる画像ストリームとが定義されている。以下、適宜、H.264 AVC/MVCを単にMVCという。
【００３１】
図２は、撮影の例を示す図である。
【００３２】
図２に示すように、同じ被写体を対象として、L画像用のカメラとR画像用のカメラによって撮影が行われる。L画像用のカメラとR画像用のカメラによって撮影された映像のエレメンタリストリームがMVCエンコーダに入力される。
【００３３】
図３は、MVCエンコーダの構成例を示すブロック図である。
【００３４】
図３に示すように、MVCエンコーダ２１１は、H.264/AVCエンコーダ２２１、H.264/AVCデコーダ２２２、Depth算出部２２３、Dependent view videoエンコーダ２２４、およびマルチプレクサ２２５から構成される。
【００３５】
L画像用のカメラにより撮影された映像＃１のストリームはH.264/AVCエンコーダ２２１とDepth算出部２２３に入力される。また、R画像用のカメラにより撮影された映像＃２のストリームはDepth算出部２２３とDependent view videoエンコーダ２２４に入力される。映像＃２のストリームがH.264/AVCエンコーダ２２１とDepth算出部２２３に入力され、映像＃１のストリームがDepth算出部２２３とDependent view videoエンコーダ２２４に入力されるようにしてもよい。
【００３６】
H.264/AVCエンコーダ２２１は、映像＃１のストリームを、例えばH.264 AVC/High Profileビデオストリームとして符号化する。H.264/AVCエンコーダ２２１は、符号化して得られたAVCビデオストリームを、Base view videoストリームとしてH.264/AVCデコーダ２２２とマルチプレクサ２２５に出力する。
【００３７】
H.264/AVCデコーダ２２２は、H.264/AVCエンコーダ２２１から供給されたAVCビデオストリームをデコードし、デコードして得られた映像＃１のストリームをDependent view videoエンコーダ２２４に出力する。
【００３８】
Depth算出部２２３は、映像＃１のストリームと映像＃２のストリームに基づいてDepth（視差）を算出し、算出したDepthのデータをマルチプレクサ２２５に出力する。
【００３９】
Dependent view videoエンコーダ２２４は、H.264/AVCデコーダ２２２から供給された映像＃１のストリームと、外部から入力された映像＃２のストリームをエンコードし、Dependent view videoストリームを出力する。
【００４０】
Base view videoには、他のストリームを参照画像とする予測符号化が許されていないが、図４に示すように、Dependent view videoには、Base view videoを参照画像とする予測符号化が許されている。例えばL画像をBase view videoとするとともにR画像をDependent view videoとして符号化を行った場合、その結果得られるDependent view videoストリームのデータ量は、Base view videoストリームのデータ量に比較して少なくなる。
【００４１】
なお、H.264/AVCでの符号化であるから、Base view videoについて時間方向の予測は行われている。また、Dependent view videoについても、view間の予測とともに、時間方向の予測が行われている。Dependent view videoをデコードするには、エンコード時に参照先とした、対応するBase view videoのデコードが先に終了している必要がある。
【００４２】
Dependent view videoエンコーダ２２４は、このようなview間の予測も用いて符号化して得られたDependent view videoストリームをマルチプレクサ２２５に出力する。
【００４３】
マルチプレクサ２２５は、H.264/AVCエンコーダ２２１から供給されたBase view videoストリームと、Depth算出部２２３から供給されたDependent view videoストリーム（Depthのデータ）と、Dependent view videoエンコーダ２２４から供給されたDependent view videoストリームとを、例えばMPEG2 TSとして多重化する。Base view videoストリームとDependent view videoストリームは１本のMPEG2 TSに多重化されることもあるし、別々のMPEG2 TSに含まれることもある。
【００４４】
マルチプレクサ２２５は、生成したTS（MPEG2 TS）を出力する。マルチプレクサ２２５から出力されたTSは、他の管理データとともに記録装置において光ディスク２０２に記録され、光ディスク２０２に記録された形で再生装置２０１に提供される。
【００４５】
以下、適宜、図３に示すように、２つのDependent view videoのうち、Depth情報からなるDependent view videoをD1 view videoといい、R画像からなるDependent view videoをD2 view videoという。なお、R画像からなるDependent view videoをD1 view videoとして処理し、Depth情報からなるDependent view videoをD2 view videoとして処理するようにすることも可能である。
【００４６】
また、Base view videoとD1 view videoを用いて行われる3D再生をB-D1再生という。Base view videoとD2 view videoを用いて行われる3D再生をB-D2再生という。
【００４７】
再生装置２０１は、ユーザによる指示などに応じてB-D1再生を行う場合、Base view videoストリームとD1 view videoストリームを光ディスク２０２から読み出して再生する。
【００４８】
また、再生装置２０１は、B-D2再生を行う場合、Base view videoストリームとD2 view videoストリームを光ディスク２０２から読み出して再生する。
【００４９】
さらに、再生装置２０１は、通常の2D画像の再生を行う場合、Base view videoストリームだけを光ディスク２０２から読み出して再生する。
【００５０】
Base view videoストリームはH.264/AVCで符号化されているAVCビデオストリームであるから、BDのフォーマットに対応したプレーヤであれば、そのBase view videoストリームを再生し、2D画像を表示させることが可能になる。
【００５１】
［TSの構成例］
図５は、TSの構成例を示す図である。
【００５２】
図５のMain TSにはBase view video、Dependent view video、Primary audio、Base PG、Dependent PG、Base IG、Dependent IGのそれぞれのストリームが多重化されている。このように、Dependent view videoストリームが、Base view videoストリームとともにMain TSに含まれていることもある。
【００５３】
光ディスク２０２には、Main TSとSub TSが記録されている。Main TSは、少なくともBase view videoストリームを含むTSである。Sub TSは、Base view videoストリーム以外のストリームを含み、Main TSとともに用いられるTSである。
【００５４】
ビデオと同様に3Dでの表示が可能になるように、PG、IGについてもBase viewとDependent viewのそれぞれのストリームが用意されている。
【００５５】
図６は、TSの他の構成例を示す図である。
【００５６】
図６のMain TSにはBase view video、Dependent view videoのそれぞれのストリームが多重化されている。
【００５７】
一方、Sub TSにはPrimary audio、Base PG、Dependent PG、Base IG、Dependent IGのそれぞれのストリームが多重化されている。
【００５８】
このように、ビデオストリームがMain TSに多重化され、PG、IGのストリーム等がSub TSに多重化されていることもある。
【００５９】
図７は、TSのさらに他の構成例を示す図である。
【００６０】
図７のMain TSにはBase view video、Primary audio、Base PG、Dependent PG、Base IG、Dependent IGのそれぞれのストリームが多重化されている。
【００６１】
一方、Sub TSにはDependent view videoストリームが含まれている。
【００６２】
このように、Dependent view videoストリームがBase view videoストリームとは別のTSに含まれていることもある。
【００６３】
［アプリケーションフォーマット］
図８は、再生装置２０１によるAVストリームの管理の例を示す図である。
【００６４】
AVストリームの管理は、図８に示すようにPlayListとClipの２つのレイヤを用いて行われる。AVストリームは、光ディスク２０２だけでなく、再生装置２０１のローカルストレージに記録されていることもある。
【００６５】
ここでは、１つのAVストリームとそれに付随する情報であるClip Informationのペアを１つのオブジェクトと考え、それらをまとめてClipという。以下、AVストリームを格納したファイルをAVストリームファイルという。また、Clip Informationを格納したファイルをClip Informationファイルともいう。
【００６６】
AVストリームは時間軸上に展開され、各Clipのアクセスポイントは、主に、タイムスタンプでPlayListにおいて指定される。Clip Informationファイルは、AVストリーム中のデコードを開始すべきアドレスを見つけるためなどに使用される。
【００６７】
PlayListはAVストリームの再生区間の集まりである。AVストリーム中の１つの再生区間はPlayItemと呼ばれる。PlayItemは、時間軸上の再生区間のIN点とOUT点のペアで表される。図８に示すように、PlayListは１つまたは複数のPlayItemにより構成される。
【００６８】
図８の左から１番目のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側のClipに含まれるAVストリームの前半部分と後半部分がそれぞれ参照されている。
【００６９】
左から２番目のPlayListは１つのPlayItemから構成され、それにより、右側のClipに含まれるAVストリーム全体が参照されている。
【００７０】
左から３番目のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側のClipに含まれるAVストリームのある部分と、右側のClipに含まれるAVストリームのある部分がそれぞれ参照されている。
【００７１】
例えば、左から１番目のPlayListに含まれる左側のPlayItemが再生対象としてディスクナビゲーションプログラムにより指定された場合、そのPlayItemが参照する、左側のClipに含まれるAVストリームの前半部分の再生が行われる。このように、PlayListは、AVストリームの再生を管理するための再生管理情報として用いられる。
【００７２】
PlayListの中で、１つ以上のPlayItemの並びによって作られる再生パスをメインパス(Main Path)という。
【００７３】
また、PlayListの中で、Main Pathに並行して、１つ以上のSubPlayItemの並びによって作られる再生パスをサブパス（Sub Path）という。
【００７４】
図９は、Main PathとSub Pathの構造を示す図である。
【００７５】
PlayListは、１つのMain Pathと１つ以上のSub Pathを持つことができる。
【００７６】
上述したBase view videoストリームは、Main Pathを構成するPlayItemが参照するストリームとして管理される。また、Dependent view videoストリームは、Sub Pathを構成するSubPlayItemが参照するストリームとして管理される。
【００７７】
図９のPlayListは、３つのPlayItemの並びにより作られる１つのMain Pathと、３つのSub Pathを有している。
【００７８】
Main Pathを構成するPlayItemには、先頭から順番にそれぞれIDが設定される。Sub Pathにも、先頭から順番にSubpath_id=0、Subpath_id=1、およびSubpath_id=2のIDが設定される。
【００７９】
図９の例においては、Subpath_id=0のSub Pathには１つのSubPlayItemが含まれ、Subpath_id=1のSub Pathには２つのSubPlayItemが含まれる。また、Subpath_id=2のSub Pathには１つのSubPlayItemが含まれる。
【００８０】
１つのPlayItemが参照するClip AVストリームには、少なくともビデオストリーム（メイン画像データ）が含まれる。
【００８１】
また、Clip AVストリームには、Clip AVストリームに含まれるビデオストリームと同じタイミングで（同期して）再生されるオーディオストリームが１つ以上含まれてもよいし、含まれなくてもよい。
【００８２】
Clip AVストリームには、Clip AVストリームに含まれるビデオストリームと同期して再生されるビットマップの字幕データ（PG(Presentation Graphic)）のストリームが１つ以上含まれてもよいし、含まれなくてもよい。
【００８３】
Clip AVストリームには、Clip AVストリームファイルに含まれるビデオストリームと同期して再生されるIG(Interactive Graphic)のストリームが１つ以上含まれてもよいし、含まれなくてもよい。IGのストリームは、ユーザにより操作されるボタンなどのグラフィックを表示させるために用いられる。
【００８４】
１つのPlayItemが参照するClip AVストリームには、ビデオストリームと、それと同期して再生される０個以上のオーディオストリーム、０個以上のPGストリーム、および、０個以上のIGストリームが多重化されている。
【００８５】
また、１つのSubPlayItemは、PlayItemが参照するClip AVストリームとは異なるストリーム（別ストリーム）の、ビデオストリーム、オーディオストリーム、または、PGストリームなどを参照する。
【００８６】
このようなPlayList、PlayItem、SubPlayItemを使ったAVストリームの管理については、例えば、特開２００８−２５２７４０号公報、特開２００５−３４８３１４号公報に記載されている。
【００８７】
［ディレクトリ構造］
図１０は、光ディスク２０２に記録されるファイルの管理構造の例を示す図である。
【００８８】
図１０に示すように、ファイルはディレクトリ構造により階層的に管理される。光ディスク２０２上には１つのrootディレクトリが作成される。rootディレクトリの下が、１つの記録再生システムで管理される範囲となる。
【００８９】
rootディレクトリの下にはBDMVディレクトリが置かれる。
【００９０】
BDMVディレクトリの直下に、「Index.bdmv」の名前が設定されたファイルであるIndexファイルと、「MovieObject.bdmv」の名前が設定されたファイルであるMovieObjectファイルが格納される。
【００９１】
BDMVディレクトリの下には、BACKUPディレクトリ、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリ等が設けられる。
【００９２】
PLAYLISTディレクトリには、PlayListを記述したPlayListファイルが格納される。各PlayListファイルには、５桁の数字と拡張子「.mpls」を組み合わせた名前が設定される。
図１０に示す１つのPlayListファイルには「00000.mpls」のファイル名が設定されている。
【００９３】
CLIPINFディレクトリにはClip Informationファイルが格納される。各Clip Informationファイルには、５桁の数字と拡張子「.clpi」を組み合わせた名前が設定される。
【００９４】
図１０の３つのClip Informationファイルには、それぞれ、「00001.clpi」、「00002.clpi」、「00003.clpi」のファイル名が設定されている。以下、適宜、Clip Informationファイルをclpiファイルという。
【００９５】
例えば、「00001.clpi」のclpiファイルは、Base view videoのClipに関する情報が記述されたファイルである。
【００９６】
「00002.clpi」のclpiファイルは、D2 view videoのClipに関する情報が記述されたファイルである。
【００９７】
「00003.clpi」のclpiファイルは、D1 view videoのClipに関する情報が記述されたファイルである。
【００９８】
STREAMディレクトリにはストリームファイルが格納される。各ストリームファイルには、５桁の数字と拡張子「.m2ts」を組み合わせた名前、もしくは、５桁の数字と拡張子「.ilvt」を組み合わせた名前が設定される。以下、適宜、拡張子「.m2ts」が設定されたファイルをm2tsファイルという。また、拡張子「.ilvt」が設定されたファイルをilvtファイルという。
【００９９】
「00001.m2ts」のm2tsファイルは2D再生用のファイルであり、このファイルを指定することによってBase view videoストリームの読み出しが行われる。
【０１００】
「00002.m2ts」のm2tsファイルはD2 view videoストリームのファイルであり、「00003.m2ts」のm2tsファイルはD1 view videoストリームのファイルである。
【０１０１】
「10000.ilvt」のilvtファイルはB-D1再生用のファイルであり、このファイルを指定することによってBase view videoストリームとD1 view videoストリームの読み出しが行われる。
【０１０２】
「20000.ilvt」のilvtファイルはB-D2再生用のファイルであり、このファイルを指定することによってBase view videoストリームとD2 view videoストリームの読み出しが行われる。
【０１０３】
図１０に示すものの他に、BDMVディレクトリの下には、オーディオストリームのファイルを格納するディレクトリなども設けられる。
【０１０４】
［各データのシンタクス］
図１１は、PlayListファイルのシンタクスを示す図である。
【０１０５】
PlayListファイルは、図１０のPLAYLISTディレクトリに格納される、拡張子「.mpls」が設定されるファイルである。
【０１０６】
図１１のtype_indicatorは、「xxxxx.mpls」のファイルの種類を表す。
【０１０７】
version_numberは、「xxxx.mpls」のバージョンナンバーを表す。version_numberは４桁の数字からなる。例えば、3D再生用のPlayListファイルには、「3D Spec version」であることを表す“0240”が設定される。“0240”が設定されたPlayListファイルに記述されるPlayListが、後述する3D_PlayListとなる。
【０１０８】
PlayList_start_addressは、PlayListファイルの先頭のバイトからの相対バイト数を単位として、PlayList()の先頭アドレスを表す。
【０１０９】
PlayListMark_start_addressは、PlayListファイルの先頭のバイトからの相対バイト数を単位として、PlayListMark()の先頭アドレスを表す。
【０１１０】
ExtensionData_start_addressは、PlayListファイルの先頭のバイトからの相対バイト数を単位として、ExtensionData()の先頭アドレスを表す。
【０１１１】
ExtensionData_start_addressの後には、１６０bitのreserved_for_future_useが含まれる。
【０１１２】
AppInfoPlayList()には、再生制限などの、PlayListの再生コントロールに関するパラメータが格納される。
【０１１３】
PlayList()には、Main PathやSub Pathなどに関するパラメータが格納される。PlayList()の内容については後述する。
【０１１４】
PlayListMark()には、PlayListのマーク情報、すなわち、チャプタジャンプなどを指令するユーザオペレーションまたはコマンドなどにおけるジャンプ先（ジャンプポイント）であるマークに関する情報が格納される。
【０１１５】
ExtensionData()には、プライベートデータが挿入できるようになっている。
【０１１６】
図１２は、図１１のPlayList()のシンタクスを示す図である。
【０１１７】
lengthは、このlengthフィールドの直後からPlayList()の最後までのバイト数を示す３２ビットの符号なし整数である。すなわち、lengthは、reserved_for_future_useからPlayListの最後までのバイト数を表す。
【０１１８】
lengthの後には、１６ビットのreserved_for_future_useが用意される。
【０１１９】
number_of_PlayItemsは、PlayListの中にあるPlayItemの数を示す１６ビットのフィールドである。図９の例の場合、PlayItemの数は３である。PlayItem_idの値は、PlayListの中でPlayItem()が現れる順番に０から割り振られる。例えば、図９のPlayItem_id＝０，１，２が割り振られる。
【０１２０】
number_of_SubPathsは、PlayListの中にあるSub Pathの数を示す１６ビットのフィールドである。図９の例の場合、Sub Pathの数は３である。SubPath_idの値は、PlayListの中でSubPath()が現れる順番に０から割り振られる。例えば、図９のSubpath_id＝０，１，２が割り振られる。その後のfor文では、PlayItemの数だけPlayItem()が参照され、Sub Pathの数だけSubPath()が参照される。
【０１２１】
図１３は、図１２のSubPath()のシンタクスを示す図である。
【０１２２】
lengthは、このlengthフィールドの直後からSub Path()の最後までのバイト数を示す３２ビットの符号なし整数である。すなわち、lengthは、reserved_for_future_useからPlayListの最後までのバイト数を表す。
【０１２３】
lengthの後には、１６ビットのreserved_for_future_useが用意される。
【０１２４】
SubPath_typeは、Sub Pathのアプリケーションの種類を示す８ビットのフィールドである。SubPath_typeは、例えば、Sub Pathがオーディオであるか、ビットマップ字幕であるか、テキスト字幕であるかなどの種類を示す場合に利用される。
【０１２５】
SubPath_typeの後には、１５ビットのreserved_for_future_useが用意される。
【０１２６】
is_repeat_SubPathは、Sub Pathの再生方法を指定する１ビットのフィールドであり、Main Pathの再生の間にSub Pathの再生を繰り返し行うか、またはSub Pathの再生を１回だけ行うかを示す。例えば、Main Pathが参照するClipとSub Pathが参照するClipの再生タイミングが異なる場合（Main Pathを静止画のスライドショーのパスとし、Sub PathをBGMとするオーディオのパスとして使う場合など）に利用される。
【０１２７】
Is_repeat_SubPathの後には、８ビットのreserved_for_future_useが用意される。
【０１２８】
number_of_SubPlayItemsは、１つのSub Pathの中にあるSubPlayItemの数（エントリー数）を示す８ビットのフィールドである。例えば、図９のSubPath_id＝０のSubPlayItemのnumber_of_SubPlayItemsは１であり、SubPath_id＝１のSubPlayItemのnumber_of_SubPlayItemsは２である。その後のfor文では、SubPlayItemの数だけ、SubPlayItem（）が参照される。
【０１２９】
図１４は、図１３のSubPlayItem(i)のシンタクスを示す図である。
【０１３０】
lengthは、このlengthフィールドの直後からSub playItem()の最後までのバイト数を示す１６ビットの符号なし整数である。
【０１３１】
図１４のSubPlayItem(i)は、SubPlayItemが１つのClipを参照する場合と、複数のClipを参照する場合に分けて記述されている。
【０１３２】
SubPlayItemが１つのClipを参照する場合について説明する。
【０１３３】
Clip_Information_file_name[0]は、SubPlayItemが参照するClipのClip Informationファイルの名前を表す。
【０１３４】
Clip_codec_identifier［0］はClipのコーデック方式を表す。Clip_codec_identifier［0］の後にはreserved_for_future_useが含まれる。
【０１３５】
is_multi_Clip_entriesはマルチClipの登録の有無を示すフラグである。is_multi_Clip_entriesのフラグが立っている場合、SubPlayItemが複数のClipを参照する場合のシンタクスが参照される。
【０１３６】
ref_to_STC_id［0］はSTC不連続点（システムタイムベースの不連続点）に関する情報である。
【０１３７】
SubPlayItem_IN_timeはSub Pathの再生区間の開始位置を表し、SubPlayItem_OUT_timeは終了位置を表す。
【０１３８】
sync_PlayItem_idとsync_start_PTS_of_PlayItemは、Main Pathの時間軸上でSub Pathが再生を開始する時刻を表す。
【０１３９】
SubPlayItem_IN_time、SubPlayItem_OUT_time、sync_PlayItem_id、sync_start_PTS_of_PlayItemは、SubPlayItemが参照するClipにおいて共通に使用される。
【０１４０】
「if（is_multi_Clip_entries＝＝１ｂ」であり、SubPlayItemが複数のClipを参照する場合について説明する。
【０１４１】
num_of_Clip_entriesは参照するClipの数を表す。Clip_Information_file_name[SubClip_entry_id]の数が、Clip_Information_file_name[0]を除くClipの数を指定する。
【０１４２】
Clip_codec_identifier[SubClip_entry_id]はClipのコーデック方式を表す。
【０１４３】
ref_to_STC_id[SubClip_entry_id]はSTC不連続点（システムタイムベースの不連続点）に関する情報である。ref_to_STC_id[SubClip_entry_id]の後にはreserved_for_future_useが含まれる。
【０１４４】
図１５は、図１２のPlayItem()のシンタクスを示す図である。
【０１４５】
lengthは、このlengthフィールドの直後からPlayItem()の最後までのバイト数を示す１６ビットの符号なし整数である。
【０１４６】
Clip_Information_file_name[0]は、PlayItemが参照するClipのClip Informationファイルの名前を表す。なお、Clipを含むm2tsファイルのファイル名と、それに対応するClip Informationファイルのファイル名には同じ５桁の数字が含まれる。
【０１４７】
Clip_codec_identifier［0］はClipのコーデック方式を表す。Clip_codec_identifier［0］の後にはreserved_for_future_useが含まれる。reserved_for_future_useの後にはis_multi_angle、connection_conditionが含まれる。
【０１４８】
ref_to_STC_id［0］はSTC不連続点（システムタイムベースの不連続点）に関する情報である。
【０１４９】
IN_timeはPlayItemの再生区間の開始位置を表し、OUT_timeは終了位置を表す。
【０１５０】
OUT_timeの後にはUO_mask_table()、PlayItem_random_access_mode、still_modeが含まれる。
【０１５１】
STN_table()には、対象のPlayItemが参照するAVストリームの情報が含まれる。また、対象のPlayItemと関連付けて再生されるSub Pathがある場合、そのSub Pathを構成するSubPlayItemが参照するAVストリームの情報も含まれる。
【０１５２】
図１６は、図１５のSTN_table()のシンタクスを示す図である。
【０１５３】
STN_table()は、PlayItemの属性として設定されている。
【０１５４】
lengthは、このlengthフィールドの直後からSTN_table()の最後までのバイト数を示す１６ビットの符号なし整数である。lengthの後には、１６ビットのreserved_for_future_useが用意される。
【０１５５】
number_of_video_stream_entriesは、STN_table()の中でエントリーされる（登録される）、video_stream_idが与えられるストリームの数を表す。
【０１５６】
video_stream_idは、ビデオストリームを識別するための情報である。例えば、Base view videoストリームがこのvideo_stream_idにより特定される。
【０１５７】
Dependent view videoストリームのIDについては、STN_table()内で定義されるようにしてもよいし、Base view videoストリームのIDに所定の値を加算するなどして計算により求められるようにしてもよい。
【０１５８】
video_stream_numberは、ビデオ切り替えに使われる、ユーザから見えるビデオストリーム番号である。
【０１５９】
number_of_audio_stream_entriesは、STN_table()の中でエントリーされる、audio_stream_idが与えられる１番目のオーディオストリームのストリームの数を表す。audio_stream_idは、オーディオストリームを識別するための情報であり、audio_stream_numberは、音声切り替えに使われるユーザから見えるオーディオストリーム番号である。
【０１６０】
number_of_audio_stream2_entriesは、STN_table()の中でエントリーされる、audio_stream_id2が与えられる２番目のオーディオストリームのストリームの数を表す。audio_stream_id2は、オーディオストリームを識別するための情報であり、audio_stream_numberは、音声切り替えに使われるユーザから見えるオーディオストリーム番号である。この例においては、再生する音声を切り替えることができるようになされている。
【０１６１】
number_of_PG_txtST_stream_entriesは、STN_table()の中でエントリーされる、PG_txtST_stream_idが与えられるストリームの数を表す。この中では、ビットマップ字幕をランレングス符号化したPGストリームとテキスト字幕ファイル(txtST)がエントリーされる。PG_txtST_stream_idは、字幕ストリームを識別するための情報であり、PG_txtST_stream_numberは、字幕切り替えに使われるユーザから見える字幕ストリーム番号である。
【０１６２】
number_of_IG_stream_entriesは、STN_table()の中でエントリーされる、IG_stream_idが与えられるストリームの数を表す。この中ではIGストリームがエントリーされる。IG_stream_idは、IGストリームを識別するための情報であり、IG_stream_numberは、グラフィックス切り替えに使われるユーザから見えるグラフィックスストリーム番号である。
【０１６３】
Main TS、Sub TSのIDもSTN_table()に登録される。そのIDがエレメンタリストリームではなくTSのIDであることは、stream_attribute()に記述される。
【０１６４】
［PlayListの具体例］
図１７は、3D再生用のPlayListである3D_PlayListの具体例を示す図である。
【０１６５】
説明の便宜上、図１７の左側には行数を表す数字と「：」を示している。この数字と「：」は3D_PlayListを構成するものではない。
【０１６６】
２行目のnumber_of_PlayItemsは図１２のnumber_of_PlayItemsに対応し、3D_PlayList中のPlayItemの数を表す。２行目から８行目がPlayItemに関する記述になる。すなわち、３行目から８行目が、図１２のfor文を用いたPlayItemに記述に対応する。
【０１６７】
５行目のref_to_B_clpi_file_nameは図１５のClip_Information_file_name[0]に対応し、Base view videoストリームを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、参照するm2tsファイルと、Base view videoのClipのclpiファイルが特定される。
【０１６８】
６行目のtypeは、Base view videoと、それに関連付けられたD1/D2 view videoのデータの光ディスク２０２上での配置のタイプを表す。typeは、例えば図１５のClip_codec_identifier［0］に続くreserved_for_future_useを用いて設定される。
【０１６９】
図１８は、typeの意味を示す図である。
【０１７０】
typeの値が0であることは、Base view video、D1 view video、D2 view videoがインターリーブされていないことを表す。
【０１７１】
この場合、存在するD1/D2 view videoの両方、またはいずれかのパケットが、Base view videoのパケットとともに１本のMPEG2-TSに多重化される。
【０１７２】
typeの値が1であることは、Base view video、D1 view video、D2 view videoが全てインターリーブされていることを表す。
【０１７３】
この場合、B view videoを含む第１のTSと、D1 view videoを含む第２のTSと、D2 view videoを含む第３のTSの３本のTSが、エクステント単位で光ディスク２０２上にインターリーブされている。
【０１７４】
typeの値が2であることは、Base view videoとD1 view videoがインターリーブされていることを表す。
【０１７５】
この場合、B view videoのパケットを含む第１のTSと、D1 view videoのパケットを含む第２のTSの２本のTSが、エクステント単位で光ディスク２０２上にインターリーブされている。第１のTSにはD2 view videoのパケットが多重化されていても良い。また、第２のTSには、D2 view videoのパケットが多重化されていても良い。
【０１７６】
typeの値が3であることは、Base view videoとD2 view videoがインターリーブされていることを表す。
【０１７７】
この場合、B view videoのパケットを含む第１のTSと、D2 view videoのパケットを含む第２のTSの２本のTSが、エクステント単位で光ディスク２０２上にインターリーブされている。第１のTSには、D1 view videoのパケットが多重化されていても良い。また、第２のTSには、D1 view videoのパケットが含まれてはいけない。
【０１７８】
図１７の説明に戻り、７行目のSTN_tableは図１５のSTN_table()に対応する。図１６を参照して説明したように、STN_tableには3D_PlayListにおいて参照する各ストリームのIDが記述される。
【０１７９】
９行目のnumber_of_SubPathsは図１２のnumber_of_SubPathsに対応し、3D_PlayList中のSubPathの数を表す。９行目から１４行目がSubPathに関する記述になる。すなわち、１０行目から１４行目が、図１２のfor文を用いたSubPathに記述に対応する。
【０１８０】
１２行目のSubPath_typeは図１３のSubPath_typeに対応し、SubPathの種類を表す。
【０１８１】
図１９は、SubPath_typeの意味を示す図である。
【０１８２】
図１９に示す各値のうちの主なものについて説明すると、SubPath_typeの値が8であることは、D1 view videoを再生するサブパスであることを表す。
【０１８３】
また、SubPath_typeの値が9であることは、D2 view videoを再生するサブパスであることを表す。
【０１８４】
図１７の１３行目のref_to_clpi_file_nameは図１４のClip_Information_file_name[0]に対応する。
【０１８５】
このSubPathがD1 view videoを再生するものである場合には、ref_to_clpi_file_nameは、D1 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、参照するclpiファイルが特定される。
【０１８６】
一方、１３行目のref_to_clpi_file_nameは、このSubPathがD2 view videoを再生するものである場合には、D2 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。
【０１８７】
１６行目から３０行目は、interleaved_file_info()、すなわちilvtファイルに関する記述である。例えば、PlayItem()、SubPath()中のreserved_for_future_useを用いてilvtファイルに関する記述が用意される。
【０１８８】
１７行目から２２行目は、６行目のtypeの値が1であり、Base view video、D1 view video、D2 view videoが全てインターリーブされている場合に参照する記述である。
【０１８９】
１８行目のref_to_D1-B_interleaved_file_nameは、Base view videoとD1 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０１９０】
１９行目のref_to_D2-B_interleaved_file_nameは、Base view videoとD2 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０１９１】
２０行目のref_to_D1_clpi_file_nameは、D1 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D1 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０１９２】
２１行目のref_to_D2_clpi_file_nameは、D2 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D2 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０１９３】
２３行目から２６行目は、６行目のtypeの値が2であり、Base view videoとD1 view videoがインターリーブされている場合に参照する記述である。
【０１９４】
２４行目のref_to_D1-B_interleaved_file_nameは、Base view videoとD1 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０１９５】
２５行目のref_to_D1_clpi_file_nameは、D1 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D1 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０１９６】
２７行目から３０行目は、６行目のtypeの値が3であり、Base view videoとD2 view videoがインターリーブされている場合に参照する記述になる。
【０１９７】
２８行目のref_to_D2-B_interleaved_file_nameは、Base view videoとD2 view videoの再生用のilvtファイルのファイル名のうちの、「.ilvt」の拡張子を除いた５桁の数字を表す。
【０１９８】
２９行目のref_to_D2_clpi_file_nameは、D2 view videを格納したm2tsファイルのファイル名のうちの、「.m2ts」の拡張子を除いた５桁の数字を表す。この記述により、D2 view videのm2tsファイルの再生時に参照するclpiファイルが特定される。
【０１９９】
このように、3D_PlayListには、データが光ディスク２０２上でインターリーブされている場合、D1 view video、D2 view videoについても、それらのClip AVストリームに対応するclpiファイルのファイル名を特定可能な情報が記述される。
【０２００】
［再生装置２０１の構成例］
図２０は、再生装置２０１の構成例を示すブロック図である。
【０２０１】
コントローラ２５１は、予め用意されている制御プログラムを実行し、再生装置２０１の全体の動作を制御する。
【０２０２】
例えば、コントローラ２５１は、ディスクドライブ２５２を制御し、3D再生用のPlayListファイルを読み出す。また、コントローラ２５１は、STN_tableに登録されているIDに基づいて、Main TSとSubTSを読み出させ、デコーダ部２５６に供給させる。
【０２０３】
ディスクドライブ２５２は、コントローラ２５１による制御に従って光ディスク２０２からデータを読み出し、読み出したデータを、コントローラ２５１、メモリ２５３、またはデコーダ部２５６に出力する。
【０２０４】
メモリ２５３は、コントローラ２５１が各種の処理を実行する上において必要なデータなどを適宜記憶する。
【０２０５】
ローカルストレージ２５４は例えばHDD(Hard Disk Drive)により構成される。ローカルストレージ２５４には、サーバ２７２からダウンロードされたD1/D2 view videoストリームなどが記録される。ローカルストレージ２５４に記録されているストリームもデコーダ部２５６に適宜供給される。
【０２０６】
インターネットインタフェース２５５は、コントローラ２５１からの制御に従ってネットワーク２７１を介してサーバ２７２と通信を行い、サーバ２７２からダウンロードしたデータをローカルストレージ２５４に供給する。
【０２０７】
サーバ２７２からは、光ディスク２０２に記録されているデータをアップデートさせるデータがダウンロードされる。ダウンロードしたD1/D2 view videoストリームを光ディスク２０２に記録されているBase view videoストリームと併せて用いることができるようにすることにより、光ディスク２０２の内容とは異なる内容の3D再生を実現することが可能になる。D1/D2 view videoストリームがダウンロードされたとき、PlayListの内容も適宜更新される。
【０２０８】
デコーダ部２５６は、ディスクドライブ２５２、またはローカルストレージ２５４から供給されたストリームをデコードし、得られたビデオ信号を表示装置２０３に出力する。
オーディオ信号も所定の経路を介して表示装置２０３に出力される。
【０２０９】
操作入力部２５７は、ボタン、キー、タッチパネル、ジョグダイヤル、マウスなどの入力デバイスや、所定のリモートコマンダから送信される赤外線などの信号を受信する受信部により構成される。操作入力部２５７はユーザの操作を検出し、検出した操作の内容を表す信号をコントローラ２５１に供給する。
【０２１０】
図２１は、デコーダ部２５６の構成例を示す図である。
【０２１１】
分離部２８１は、コントローラ２５１による制御に従って、ディスクドライブ２５２から供給されたデータを、Main TSを構成するパケットのデータとSub TSを構成するパケットのデータに分離する。例えば、3D PlayListファイルのSTN_table()に記述されているストリームIDに基づいて光ディスク２０２から読み出されたTSが分離部２８１に供給される。
【０２１２】
分離部２８１は、分離したMain TSを構成するパケットをリードバッファ２８２に出力して記憶させ、Sub TSを構成するパケットをリードバッファ２８５に出力して記憶させる。
【０２１３】
また、分離部２８１は、ローカルストレージ２５４から供給されたSub TSを構成するパケットをリードバッファ２８５に出力して記憶させる。
【０２１４】
上述したように、サーバ２７２からダウンロードされたD1/D2 view videがローカルストレージ２５４に記憶されている場合がある。光ディスク２０２に記録されているBase view videoとともに再生することが指示されたとき、Sub TSとしてのD1/D2 view videストリームがローカルストレージ２５４から読み出され、分離部２８１に供給される。
【０２１５】
PIDフィルタ２８３は、リードバッファ２８２に記憶されているMain TSを構成するパケットを、各パケットに設定されているPIDに基づいて振り分ける。コントローラ２５１からは、Base view videoを構成するパケットのPID、D1 view videoを構成するパケットのPID、D2 view videoを構成するパケットのPIDがそれぞれ指定される。
【０２１６】
PIDフィルタ２８３は、Main TSに含まれるBase view videoのパケットをリードバッファ２８２から読み出し、ESバッファ２８４に出力して記憶させる。ESバッファ２８４には、Base view videoのパケットからなるES(Elementary Stream)が記憶される。
【０２１７】
また、PIDフィルタ２８３は、Main TSにD1/D2 view videのパケットが多重化されている場合、それらのパケットをPIDに基づいて抽出し、スイッチ２８７に出力する。
【０２１８】
PIDフィルタ２８６は、Sub TSに含まれるD1/D2 view videのパケットをリードバッファ２８５から読み出し、スイッチ２８７に出力する。
【０２１９】
なお、ここではBase view video、D1/D2 view videoのビデオストリームの処理についてだけ説明しているが、図５を参照して説明したように、Main TSにはPGやIGなどのグラフィックスのデータが多重化されていることがある。同様に、図６を参照して説明したように、Sub TSには、D1/D2 view videの他にも、字幕のデータやグラフィックのデータが多重化されていることがある。
【０２２０】
PIDフィルタ２８３とPIDフィルタ２８６は、適宜、それらのデータをもPIDに基づいて振り分け、所定の出力先に出力する。図２１のPIDフィルタ２８３とPIDフィルタ２８６のブロック内に示す出力先の端子（丸）には、グラフィックのデータをデコードするデコーダなどが接続される。
【０２２１】
スイッチ２８７は、PIDフィルタ２８３から供給されたD1/D2 view videのパケットをESバッファ２８８に出力して記憶させる。また、スイッチ２８７は、PIDフィルタ２８６から供給されたD1/D2 view videのパケットをESバッファ２８８に出力して記憶させる。ESバッファ２８８には、D1/D2 view videoのパケットからなるESが記憶される。
【０２２２】
スイッチ２８９は、ESバッファ２８４に記憶されているBase view videoのパケットと、ESバッファ２８８に記憶されているD1/D2 view videoのパケットのうちの、デコードの対象になるパケットをデコーダ２９０に出力する。DTS(Decoding Time Stamp)などの時刻情報がBase view videoとD1/D2 view videoのPESパケットに設定されており、その時刻情報に基づいてバッファからの読み出しが行われる。
【０２２３】
ビデオデコーダ２９０は、スイッチ２８９から供給されたパケットをデコードし、デコードすることによって得られたBase view video、またはD1/D2 view videoのデータを出力する。
【０２２４】
［3D_PlayListの例１］
図２２は、3D_PlayListの例を示す図である。
【０２２５】
図２２の「0000.mpls」のPlayListファイルに記述されている3D_PlayListは、Base view video、D1 view video、D2 view videoが全てインターリーブされている光ディスク２０２の再生を管理するPlayListである。すなわち、typeの値は1である。
【０２２６】
図２２の例においては、PlayItem()のref_to_B_clpi_file_nameは「00001」である。この記述から、Base view videoのm2tsファイルである「00001.m2ts」を再生する場合には、図１０の「00001.clpi」のclpiファイルを参照することが特定される。
【０２２７】
また、SubPath()[1]のSubPath_typeは「9」である。SubPath_typeが「9」であることは、この１つ目のSubPathがD2 view videoを再生するサブパスであることを表す。
【０２２８】
SubPath()[1]のref_to_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図１０の「00002.clpi」のclpiファイルを参照することが特定される。
【０２２９】
SubPath()[2]のSubPath_typeは「8」である。SubPath_typeが「8」であることは、この２つ目のSubPathがD1 view videoを再生するサブパスであることを表す。
【０２３０】
SubPath()[2]のref_to_clpi_file_nameは「00003」である。この記述から、D1 view videoを再生する場合には図１０の「00003.clpi」のclpiファイルを参照することが特定される。
【０２３１】
interleaved_file_info()のref_to_D1-B_interleaved_file_nameは「10000」である。
この記述から、D1-B再生を行う場合には図１０の「10000.ilvt」のilvtファイルを参照することが特定される。
【０２３２】
また、ref_to_D2-B_interleaved_file_nameは「20000」である。この記述から、D2-B再生を行う場合には図１０の「20000.ilvt」のilvtファイルを参照することが特定される。
【０２３３】
ref_to_D1_clpi_file_nameは「00003」である。この記述から、D1 view videoを再生する場合には図１０の「00003.clpi」のファイルを参照することが特定される。
【０２３４】
ref_to_D2_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図１０の「00002.clpi」のファイルを参照することが特定される。
【０２３５】
図２３は、図２２の3D_PlayListとともに用いられるclpiファイルのシンタクスを示す図である。
【０２３６】
図２３Ａは「00001.clpi」のclpiファイルの例を示す図である。上述したように、「00001.clpi」のclpiファイルは、Base view videoのm2tsファイルである「00001.m2ts」を再生する場合に参照するファイルである。
【０２３７】
number_of_source_packets1は、「00001.m2ts」のm2tsファイルに含まれるソースパケットの数を表す。
【０２３８】
EP_mapは、「00001.m2ts」のm2tsファイルに含まれるTS中のエントリーポイント(EP)の位置情報を表す。
【０２３９】
chunk_map()は、「00001.m2ts」のm2tsファイルに含まれるTSについて、先頭のチャンクから順番に、各チャンクの開始位置を表すSource Packet Number（SPN）を表す。
【０２４０】
チャンクは、１つのTSに属し、光ディスク２０２上に連続配置されるSource packetの集まりである。ここでは、１つのチャンクが、光ディスク２０２上に配置される１つのエクステントに相当するものとして説明する。
【０２４１】
chunk_map()が、各チャンクの長さを表すことになる。chunk_map()の具体例については後述する。
【０２４２】
図２３Ｂは「00002.clpi」のclpiファイルの例を示す図である。「00002.clpi」のclpiファイルは、D2 view videoを再生する場合に参照するファイルである。
【０２４３】
図２３Ｃは「00003.clpi」のclpiファイルの例を示す図である。「00003.clpi」のclpiファイルは、D1 view videoを再生する場合に参照するファイルである。図２３Ｂ、図２３Ｃの記述内容は図２３Ａに示すものと同じである。
【０２４４】
図２４は、図２２、図２３のデータを用いて行われるファイル管理の概念を示す図である。
【０２４５】
図２４に示すように、ファイル管理は、物理レイヤ、ファイルシステムレイヤ、アプリケーションレイヤの３層構造の形で行われる。図２２の3D_PlayList、図２３のclpiファイルがアプリケーションレイヤの情報になる。
【０２４６】
物理レイヤは、Base view video、D1 view video、D2 view videoが全てインターリーブされた状態で記録されている光ディスク２０２のレイヤとなる。
【０２４７】
図２４の例においては、D1 view videoのチャンク、D2 view videoのチャンク、Base view videoのチャンクがその順番で配置されている。図２４において、「B」の文字を付けているブロックはBase view videoのチャンクを表し、「D1」の文字を付けているブロックはD1 view videoのチャンクを表す。「D2」の文字を付けているブロックはD2 view videoのチャンクを表す。
【０２４８】
このように、Base view video、D1 view video、D2 view videoの各エクステント（チャンク）は、光ディスク２０２上においてインターリーブ配置されている。インターリーブ配置は、同一種類のストリームのエクステントが隣接しない、周期的な配置を意味する。
【０２４９】
ファイルシステムレイヤにおいては、アプリケーションがファイル名で指定したストリームファイル（m2tsファイル、ilvtファイル）と、光ディスク２０２上の各チャンクが対応付けられる。ファイルシステムは例えばUDF file systemである。
【０２５０】
図２４に示すように、「00001.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたBase view videoのチャンクから構成される。
【０２５１】
また、「00002.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクから構成される。
【０２５２】
「00003.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD1 view videoのチャンクから構成される。
【０２５３】
「20000.ilvt」のファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクとBase view videoのチャンクから構成される。
【０２５４】
「10000.ilvt」のファイルは、光ディスク２０２上に配置されたD1 view videoのチャンクとBase view videoのチャンクから構成される。
【０２５５】
2D再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。
【０２５６】
また、B-D1再生を行うために、アプリケーションから「10000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D1 view videoのチャンクとBase view videoのチャンクが読み出される。
【０２５７】
B-2D再生を行うために、アプリケーションから「20000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D2 view videoのチャンクとBase view videoのチャンクが読み出される。
【０２５８】
［動作例１］
ここで、図２５のフローチャートを参照して、図２２の3D_PlayListファイルに従って行われる再生処理について説明する。
【０２５９】
ステップＳ１において、コントローラ２５１は、typeの値から、Base view video、D1 view video、D2 view videoが全てインターリーブされていることを確認する。
【０２６０】
この場合、ステップＳ２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０２６１】
ステップＳ３において、コントローラ２５１は、ユーザによる操作などに基づいて、B-D1再生が指示されたか否かを判定する。
【０２６２】
B-D1再生が指示されたとステップＳ３において判定した場合、ステップＳ４において、コントローラ２５１は、interleaved_file_info()に記述された「10000.ilvt」(ref_to_D1-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD1 view videoのチャンクを光ディスク２０２から読み出させる。
【０２６３】
ディスクドライブ２５２により読み出されたBase view videoのチャンクとD1 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０２６４】
ステップＳ５において、分離部２８１は、図２３の「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00003.clpi」(ref to D1_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00003.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00003.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。chunk_map()を使って行われるデータの分離については後述する。
【０２６５】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。リードバッファ２８５に記憶された「00003.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０２６６】
ステップＳ６において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする（再生する）。
【０２６７】
一方、ステップＳ３において、B-D1再生が指示されていない、すなわちB-D2再生が指示されたと判定した場合、ステップＳ７において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD2 view videoのチャンクを光ディスク２０２から読み出させる。
【０２６８】
ステップＳ８において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00002.clpi」(ref to D2_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00002.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00002.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０２６９】
その後、「00001.m2ts」のm2tsファイルのデータと「00002.m2ts」のm2tsファイルのデータは、B-D1再生のときと同様にデコーダ２９０に供給され、ステップＳ６において再生される。
【０２７０】
［chunk_map()を使ったデータの分離］
図２６は、chunk_map()のシンタクスの例を示す図である。
【０２７１】
number_of_chunksは、参照するチャンクの数を表す。number_of_chunks以降には、ここで指定される数だけチャンクの情報が記述される。
【０２７２】
SPN_chunk_start[i]は、例えば先頭のチャンクの開始位置を基準として、その基準の位置から各チャンクの開始位置までのSPN（長さ）を表す。各チャンクの開始位置までのSPNが、先頭のチャンクのものから順に記述される。
【０２７３】
図２７は、chunk_map()の具体例を示す図である。
【０２７４】
図２７Ａは「00001.clpi」のclpiファイルに記述されるchunk_map()であり、number_of_chunksはｎである。
【０２７５】
また、SPN_chunk_start[i]は0,c1,c2,・・・,cnである。
【０２７６】
１番目の値0は、図２８Ｃに示すように、「00001.m2ts」のm2tsファイルに含まれるBase view videoの先頭のチャンクの開始位置を基準として、その基準の位置から、１番目のチャンク（B[0]）の開始位置までのSPNが0であることを表す。
【０２７７】
２番目の値c1は、基準の位置から、２番目のチャンク（B[1]）の開始位置までのSPNがc1であることを表す。
【０２７８】
３番目の値c2は、基準の位置から、３番目のチャンク（B[2]）の開始位置までのSPNがc2であることを表す。
【０２７９】
n+1番目の値cnは、基準の位置から、最後のチャンクであるn+1番目のチャンク（B[n]）の開始位置までのSPNがcnであることを表す。
【０２８０】
図２７Ｂは「00002.clpi」のclpiファイルに記述されるchunk_map()であり、number_of_chunksはｎである。
【０２８１】
また、SPN_chunk_start[i]は0,b1,b2,・・・,bnである。
【０２８２】
１番目の値0は、図２８Ｂに示すように、「00002.m2ts」のm2tsファイルに含まれるD2 view videoの先頭のチャンクの開始位置を基準として、その基準の位置から、１番目のチャンク（D2[0]）の開始位置までのSPNが0であることを表す。
【０２８３】
２番目の値b1は、基準の位置から、２番目のチャンク（D2[1]）の開始位置までのSPNがb1であることを表す。
【０２８４】
３番目の値b2は、基準の位置から、３番目のチャンク（D2[2]）の開始位置までのSPNがb2であることを表す。
【０２８５】
n+1番目の値bnは、基準の位置から、最後のチャンクであるn+1番目のチャンク（D2[n]）の開始位置までのSPNがbnであることを表す。
【０２８６】
図２７Ｃは「00003.clpi」のclpiファイルに記述されるchunk_map()であり、number_of_chunksはｎである。
【０２８７】
また、SPN_chunk_start[i]は0,a1,a2,・・・,anである。
【０２８８】
１番目の値0は、図２８Ａに示すように、「00003.m2ts」のm2tsファイルに含まれるD1 view videoの先頭のチャンクの開始位置を基準として、その基準の位置から、１番目のチャンク（D1[0]）の開始位置までのSPNが0であることを表す。
【０２８９】
２番目の値a1は、基準の位置から、２番目のチャンク（D1[1]）の開始位置までのSPNがa1であることを表す。
【０２９０】
３番目の値a2は、基準の位置から、３番目のチャンク（D1[2]）の開始位置までのSPNがa2であることを表す。
【０２９１】
n+1番目の値anは、基準の位置から、最後のチャンクであるn+1番目のチャンク（D1[n]）の開始位置までのSPNがanであることを表す。
【０２９２】
D1[i],D2[i],B[i]は、図２８Ｄに示すようにその順番で、光ディスク２０２上に周期的に配置されている。
【０２９３】
分離部２８１は、光ディスク２０２から読み出されたデータがディスクドライブ２５２から供給された場合、図２７の３つのchunk_map()の記述に基づいて、供給されたデータの先頭からa1に相当するSPN分のデータをD1[0]として分離する。
【０２９４】
また、分離部２８１は、D1[0]の終わりの位置からb1に相当するSPN分のデータをD2[0]として分離し、D2[0]の終わりの位置からc1に相当するSPN分のデータをB[0]として分離する。
【０２９５】
分離部２８１は、B[0]の終わりの位置からa2-a1に相当するSPN分のデータをD1[1]として分離する。
【０２９６】
分離部２８１は、D1[1]の終わりの位置からb2-b1に相当するSPN分のデータをD2[1]として分離し、D2[1]の終わりの位置からc2-c1に相当するSPN分のデータをB[1]として分離する。
【０２９７】
なお、分離の対象になるチャンクは、B-D1再生を行う場合にはD1[i],B[i]だけであり、B-D2再生を行う場合にはD2[i],B[i]だけである。
【０２９８】
このように、分離部２８１によるデータの分離は、chunk_map()に記述される各チャンクの長さの情報を用いて行われる。
【０２９９】
chunk_map()について補足する。
【０３００】
type=0のとき、ref_to_B_clpi_file_nameにより参照されるclpiファイルについては、chunk_map()はオプショナルとなる(無くても良い)。そして、chunk_map()がある場合、プレーヤはそのchunk_map()を無視しなければならない。
【０３０１】
また、ローカルストレージ２５４上のm2tsファイルに対応するclpiファイルについては、chunk_map()はオプショナルとなる(無くても良い)。そして、chunk_map()がある場合、プレーヤはそのchunk_map()を無視しなければならない。
【０３０２】
type=1のとき、対応するBase view videoのTS、D1 view videoのTS、D2 view videoのTSの３本のTSは、それぞれ同じ数nのチャンクに分割される。すなわち、図２８のD1[i],D2[i],B[i]について、添え字iの値が同じ組のチャンクは、同じ再生時間を持つように分割される。
【０３０３】
同様に、type=2のとき、対応するBase view videoのTS、D1 view videoのTSの２本のTSは、それぞれ同じ数nのチャンクに分割される。すなわち、インターリーブされるD1[i],B[i]について、添え字iの値が同じ組のチャンクは、同じ再生時間を持つように分割される。
【０３０４】
type=3のとき、対応するBase view videoのTS、D2 view videoのTSの２本のTSは、それぞれ同じ数nのチャンクに分割される。すなわち、インターリーブされるD2[i],B[i]について、添え字iの値が同じ組のチャンクは、同じ再生時間を持つように分割される。
【０３０５】
［3D_PlayListの例２］
図２９は、3D_PlayListの他の例を示す図である。
【０３０６】
図２９の「0000.mpls」のPlayListファイルに記述されている3D_PlayListは、Base view videoとD2 view videoがインターリーブされている光ディスク２０２の再生を管理するPlayListである。すなわち、typeの値は3である。
【０３０７】
SubPathの記述がD2 view videoを参照するSubPathの記述だけになる点と、interleaved_file_info()の記述が異なる点を除いて、図２９の3D_PlayListの記述は図２２の記述と同様である。
【０３０８】
すなわち、SubPath()のSubPath_typeは「9」である。SubPath_typeが「9」であることは、このSubPathがD2 view videoを再生するサブパスであることを表す。
【０３０９】
また、ref_to_clpi_file_nameは「00002」である。
【０３１０】
図２９のinterleaved_file_info()のref_to_D2-B_interleaved_file_nameは「20000」である。この記述から、D2-B再生を行う場合には図１０の「20000.ilvt」のilvtファイルを参照することが特定される。
【０３１１】
また、ref_to_D2_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図１０の「00002.clpi」のclpiファイルを参照することが特定される。
【０３１２】
図３０は、図２９の3D_PlayListとともに用いられるclpiファイルのシンタクスを示す図である。
【０３１３】
図３０Ａは、「00001.clpi」のclpiファイルの例を示す図であり、図３０Ｂは、「00002.clpi」のclpiファイルの例を示す図である。いずれのclpiファイルにも、EP_mapと、上述したchunk_map()の記述が含まれる。
【０３１４】
図３１は、図２９、図３０のデータを用いて行われるファイル管理の概念を示す図である。
【０３１５】
図３１に示すように、物理レイヤは、Base view videoとD2 view videoがインターリーブされた状態で記録されている光ディスク２０２のレイヤとなる。
【０３１６】
「00001.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたBase view videoのチャンクから構成される。
【０３１７】
また、「00002.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクから構成される。
【０３１８】
「20000.ilvt」のilvtファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクとBase view videoのチャンクから構成される。
【０３１９】
2D再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。
【０３２０】
B-D2再生を行うために、アプリケーションから「20000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D2 view videoのチャンクとBase view videoのチャンクが読み出される。
【０３２１】
［動作例２］
図３２のフローチャートを参照して、図２９の3D_PlayListファイルに従って行われる再生処理について説明する。
【０３２２】
ステップＳ１１において、コントローラ２５１は、typeの値から、Base view video、D2 view videoがインターリーブされていることを確認する。
【０３２３】
この場合、ステップＳ１２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０３２４】
B-D2再生が指示された場合、ステップＳ１３において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD2 view videoのチャンクを光ディスク２０２から読み出させる。
【０３２５】
ディスクドライブ２５２により読み出されたBase view videoのチャンクとD2 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０３２６】
ステップＳ１４において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00002.clpi」(ref to D2_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00002.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00002.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０３２７】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。一方、リードバッファ２８５に記憶された「00002.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０３２８】
ステップＳ１５において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０３２９】
［3D_PlayListの例３］
図３３は、3D_PlayListのさらに他の例を示す図である。
【０３３０】
図３３の「00000.mpls」のPlayListファイルに記述されている3D_PlayListは、光ディスク２０２に記録されているBase view video、D2 view videoと、ローカルストレージ２５４に記録されているD1 view videoの再生を管理するPlayListである。光ディスク２０２上では、Base view videoとD2 view videoはインターリーブされている。
【０３３１】
光ディスク２０２上のデータの配置のタイプを表すものであるから、PlayItem()のtypeの値は3である。
【０３３２】
SubPath()[1]のSubPath_typeは「9」である。SubPath_typeが「9」であることは、この１つ目のSubPathがD2 view videoを再生するサブパスであることを表す。
【０３３３】
SubPath()[1]のref_to_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図１０の「00002.clpi」のclpiファイルを参照することが特定される。
【０３３４】
SubPath()[2]のSubPath_typeは「8」である。SubPath_typeが「8」であることは、この２つ目のSubPathがD1 view videoを再生するサブパスであることを表す。
【０３３５】
SubPath()[2]のref_to_clpi_file_nameは「00003」である。この記述から、D1 view videoを再生する場合には、ローカルストレージ２５４に記録されている「00003.clpi」のclpiファイルを参照することが特定される。
【０３３６】
この２つ目のSubPathに関する記述は、例えば、D1 view videoがダウンロードされたときに追加される。
【０３３７】
interleaved_file_info()のref_to_D2-B_interleaved_file_nameは「20000」である。
この記述から、B-D2再生を行う場合には、図１０の「20000.ilvt」のilvtファイルを参照することが特定される。
【０３３８】
また、ref_to_D2_clpi_file_nameは「00002」である。この記述から、D2 view videoを再生する場合には図１０の「00002.clpi」のファイルを参照することが特定される。
【０３３９】
なお、ローカルストレージ２５４上ではD1 view videoはインターリーブされていないから、D1 view videoに関するilvtファイルは不要である。
【０３４０】
図３４は、図３３の3D_PlayListとともに用いられるclpiファイルのシンタクスを示す図である。
【０３４１】
図３４Ａは、「00001.clpi」のclpiファイルの例を示す図であり、図３４Ｂは、「00002.clpi」のclpiファイルの例を示す図である。いずれのclpiファイルにも、EP_mapとchunk_map()の記述が含まれる。
【０３４２】
図３５は、図３３、図３４のデータを用いて行われるファイル管理の概念を示す図である。
【０３４３】
図３５に示すように、物理レイヤは、Base view videoとD2 view videoがインターリーブされた状態で記録されている光ディスク２０２と、２番目のSubPathが参照するD1 view videoのファイルが記録されているローカルストレージ２５４のレイヤとなる。
【０３４４】
図３５の例においては、D1 view videoを格納したm2tsファイルのファイル名は「00003.m2ts」である。また、「00003.m2ts」に対応するclpiファイルのファイル名は「00003.clpi」である。
【０３４５】
「00001.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたBase view videoのチャンクから構成される。
【０３４６】
また、「00002.m2ts」のm2tsファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクから構成される。
【０３４７】
「20000.ilvt」のilvtファイルは、光ディスク２０２上に配置されたD2 view videoのチャンクとBase view videoのチャンクから構成される。
【０３４８】
2D再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。
【０３４９】
B-D1再生を行うために、アプリケーションから「00001.m2ts」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、Base view videoのチャンクが読み出される。また、図３３の3D_PlayListの２番目のSubPathの記述に従って、「00003.m2ts」を指定して、D1 view videoのm2tsファイルがローカルストレージ２５４から読み出される。
【０３５０】
B-D2再生を行うために、アプリケーションから「20000.ilvt」を指定してデータの読み出しが指示された場合、ファイルシステムによる管理に従って、D2 view videoのチャンクとBase view videoのチャンクが読み出される。
【０３５１】
［動作例３］
図３６のフローチャートを参照して、図３３の3D_PlayListファイルに従って行われる再生処理について説明する。
【０３５２】
ステップＳ２１において、コントローラ２５１は、typeの値から、Base view video、D2 view videoがインターリーブされていることを確認する。
【０３５３】
この場合、ステップＳ２２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０３５４】
ステップＳ２３において、コントローラ２５１は、B-D1再生が指示されたか否かを判定する。
【０３５５】
B-D1再生を行う場合、光ディスク２０２に記録されているデータとローカルストレージ２５４に記録されているデータが用いられる。一方、B-D2再生を行う場合、光ディスク２０２に記録されているデータが用いられる。
【０３５６】
ステップＳ２３において、B-D1再生が指示されていない、すなわちB-D2再生が指示されたと判定した場合、ステップＳ２４において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を構成するD2 view videoを含むClipの名前X「00002」（D2 view videoを含むm2tsファイルの名前のうちの拡張子を除いた部分）を取り出す。
【０３５７】
ステップＳ２５において、コントローラ２５１は、SubPath_type=9(D2-view videoを再生するサブパス)が参照するClipの名前Y「00002」を取り出す。
【０３５８】
ステップＳ２６において、コントローラ２５１は、YがXと同じであることにより、D2 view videoが「20000.ilvt」に含まれていることを認識する。ここでYがXと異なるとき、D2 view videoを含むClipはローカルストレージ２５４上にあることになる。
【０３５９】
ステップＳ２７において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を指定し、UDF file systemを通して、Base view videoのチャンクとD2 view videoのチャンクを光ディスク２０２から読み出させる。
【０３６０】
ディスクドライブ２５２により読み出されたBase view videoのチャンクとD2 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０３６１】
ステップＳ２８において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00002.clpi」(ref to D2_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00002.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00002.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０３６２】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。一方、リードバッファ２８５に記憶された「00002.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０３６３】
ステップＳ２９において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０３６４】
一方、B-D1再生が指示されたとステップＳ２３において判定した場合、ステップＳ３０において、コントローラ２５１は、interleaved_file_info()に記述された「20000.ilvt」(ref_to_D2-B_interleaved_file_name)を構成するD2 view videoを含むClipの名前X「00002」を取り出す。
【０３６５】
ステップＳ３１において、コントローラ２５１は、SubPath_type=8(D1-view videoを再生するサブパス)が参照するClipの名前Y「00003」を取り出す。
【０３６６】
ステップＳ３２において、コントローラ２５１は、Yが「00001.clpi」(ref_to_B_clpi_file_name)のうちの拡張子を除いた部分と異なり、かつ、YがXと異なることにより、D1 view videoのClipがローカルストレージ２５４上にあることを認識する。ここでYが「00001.clpi」のうちの拡張子を除いた部分と同じであるとき、または、YがXと同じあるとき、D1 view videoは「20000.ilvt」に含まれていることになる。
【０３６７】
ステップＳ３３において、コントローラ２５１は、「00001.clpi」(ref_to_B_clpi_file_name)のEP_mapを使って、ディスクドライブ２５２に「00001.m2ts」のm2tsファイルを読み出させる。「00001.clpi」のEP_mapには、「00001.m2ts」のm2tsファイルのデコード開始位置となるエントリポイントの情報が含まれている。
【０３６８】
ステップＳ３４において、コントローラ２５１は、「00003.clpi」(SubPath()[2]で参照されるファイル)のEP_mapを使って、ローカルストレージ２５４から「00003.m2ts」のm2tsファイルを読み出す。「00003.clpi」のEP_mapには、「00003.m2ts」のm2tsファイルのデコード開始位置となるエントリポイントの情報が含まれている。
【０３６９】
読み出されたBase view videoのチャンクとD1 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０３７０】
光ディスク２０２から読み出された「00001.m2ts」のm2tsファイルのデータはリードバッファ２８２に記憶された後、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。
【０３７１】
また、ローカルストレージ２５４から読み出された「00003.m2ts」のm2tsファイルのデータはリードバッファ２８５に記憶された後、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０３７２】
ステップＳ２９において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０３７３】
［chunk_map()を利用して「10000.ilvt」をランダムアクセス再生する方法］
図３７は、図２７を参照して説明したchunk_map()の内容をまとめて示す図である。
【０３７４】
各clpiファイルのchunk_map()に記述されるSPN_chunk_start（基準の位置からのSPN（長さ））を、縦方向にiをとって並べると図３７に示すようなものになる。
【０３７５】
図３８は、chunk_map()とともに各clpiファイルに記述されるEP_map()のシンタクスを示す図である。
【０３７６】
EP_map()はランダムアクセスなどを行うときのデコード開始位置を特定するために参照される。
【０３７７】
number_of_EP_entriesはEP（エントリポイント）の数を表す。
【０３７８】
number_of_EP_entries以降の記述が各EPについて用意される。PTS_EP_start[i]はEPのPTSを表し、SPN_EP_start[i]はEPのSPNを表す。このように、EP_mapには、各エントリポイントについてのPTSとSPNが対応付けて登録される。
【０３７９】
図３９のフローチャートを参照して、再生装置２０１の処理について説明する。
【０３８０】
ここでは、図２２の3D_PlayListを参照してB-D1再生を行い、ランダムアクセスを行う場合について説明する。
【０３８１】
ステップＳ４１において、コントローラ２５１は、typeの値から、Base view video、D1 view video、D2 view videoが全てインターリーブされていることを確認する。
【０３８２】
この場合、ステップＳ４２において、コントローラ２５１は、interleaved_file_info()を読みに行く。
【０３８３】
ステップＳ４３において、コントローラ２５１は、interleaved_file_info()に記述された「10000.ilvt」(ref_to_D1-B_interleaved_file_name)が読み出しファイルであると判断する。
【０３８４】
「00000.mpls」の3D_PlayListファイルの時刻xから再生を開始する場合、ステップＳ４４において、コントローラ２５１は、「00001.clpi」(ref_to_B_clpi_file_name)のEP_mapを用いて、xよりも小さく最も近い値を持つPTS_EP_start[m]を見つける。
【０３８５】
ステップＳ４５において、コントローラ２５１は、PTS_EP_start[m]に対応するSPN_EP_start[m]を取り出す。図３８を参照して説明したように、EP_mapにはPTS_EP_start[i]とSPN_EP_start[i]が対応付けて登録されている。
【０３８６】
図４０は、ステップＳ４４，Ｓ４５の処理により特定される位置の例を示す図である。
【０３８７】
図４０に示すように、時間軸上の時刻xから再生を開始する場合、xよりも小さく最も近い値を持つPTS_EP_start[m]がステップＳ４４において特定される。また、PTS_EP_start[m]に対応するSPN_EP_start[m]がステップＳ４５において特定される。
【０３８８】
ステップＳ４６において、コントローラ２５１は、「00001.clpi」のchunk_mapを用いて、SPN_EP_start[m]より小さく最も近い値をもつSPN_chunk_start[k]を見つける。ステップＳ４６の処理により特定されるSPN_chunk_start[k]を図４１に示す。
【０３８９】
ステップＳ４７において、コントローラ２５１は、「00001.clpi」のchunk_map()のSPN_chunk_start[k]と、「00003.clpi」(ref to D1_clpi_file_name)のchunk_map()のSPN_chunk_start[k]との和を、「10000.ilvt」の読み出し開始アドレスとして決定する。
【０３９０】
ここで決定される「10000.ilvt」の読み出し開始アドレスは、「10000.ilvt」の中でのD1[k]のチャンクの開始アドレスを示す。
【０３９１】
ステップＳ４８において、コントローラ２５１は、「10000.ilvt」(ref_to_D1-B_interleaved_file_name)を指定し、ステップＳ４７で決定したアドレスから、UDF file systemを通して、Base view videoのチャンクとD1 view videoのチャンクを読み出させる。
【０３９２】
読み出されたBase view videoのチャンクとD1 view videoのチャンクはデコーダ部２５６の分離部２８１に供給される。
【０３９３】
ステップＳ４９において、分離部２８１は、「00001.clpi」(ref_to_B_clpi_file_name)のchunk_map()と、「00003.clpi」(ref to D1_clpi_file_name)のchunk_map()に基づいて、供給されたデータを、「00001.m2ts」のm2tsファイルのデータと、「00003.m2ts」のm2tsファイルのデータに分離する。分離部２８１は、「00001.m2ts」のm2tsファイルのデータをリードバッファ２８２に出力し、「00003.m2ts」のm2tsファイルのデータをリードバッファ２８５に出力する。
【０３９４】
リードバッファ２８２に記憶された「00001.m2ts」のm2tsファイルのデータは、PIDフィルタ２８３、ESバッファ２８４、スイッチ２８９を介してデコーダ２９０に供給される。リードバッファ２８５に記憶された「00003.m2ts」のm2tsファイルのデータは、PIDフィルタ２８６、スイッチ２８７、ESバッファ２８８、およびスイッチ２８９を介してデコーダ２９０に供給される。
【０３９５】
ステップＳ５０において、デコーダ２９０は、スイッチ２８９から順次供給されるパケットをデコードする。
【０３９６】
ilvtファイルのランダムアクセスは以上のようにして行われる。
【０３９７】
［EP_mapについて］
ここで、EP_mapについて説明する。
【０３９８】
Base view videoのEP_mapについて説明するが、D1/D2 view videoについても、同様にしてEP_mapが設定される。例えば、Base view videoのあるピクチャにエントリポイントが設定された場合、D1/D2 view videoの対応するピクチャにもエントリポイントが設定される。
【０３９９】
それぞれのストリームのピクチャをエンコード順／デコード順、あるいは表示順に並べたときに同じ位置にあるBase view videoのピクチャとD1/D2 view videoのピクチャが、対応するピクチャとなる。
【０４００】
図４２は、光ディスク２０２上に記録されたAVストリームの構造を示す図である。
【０４０１】
Base view videoストリームを含むTSは、6144バイトのサイズを有する整数個のアライドユニット(Aligned Unit)から構成される。
【０４０２】
アライドユニットは、32個のソースパケット(Source Packet)からなる。ソースパケットは192バイトを有する。１つのソースパケットは、4バイトのトランスポートパケットエクストラヘッダ(TP_extra header)と、188バイトのトランスポートパケット(Transport Packet)とからなる。
【０４０３】
Base view videoのデータは、MPEG2 PESパケットにパケット化されている。PESパケットのデータ部にPESパケットヘッダが付加されてPESパケットが形成される。PESパケットヘッダには、PESパケットが伝送するエレメンタリストリームの種類を特定するストリームIDが含まれる。
【０４０４】
PESパケットは、さらにトランスポートパケットにパケット化される。すなわち、PESパケットがトランスポートパケットのペイロードのサイズに分割され、ペイロードにトランスポートパケットヘッダが付加されてトランスポートパケットが形成される。トランスポートパケットヘッダは、ペイロードに格納されるデータの識別情報であるPIDを含む。
【０４０５】
なお、ソースパケットには、Clip AVストリームの先頭を例えば０として、ソースパケット毎に１ずつ増加するソースパケット番号が与えられる。また、アライドユニットは、ソースパケットの第１バイト目から始まる。
【０４０６】
EP_mapは、Clipのアクセスポイントのタイムスタンプが与えられたときに、Clip AVストリームファイルの中でデータの読み出しを開始すべきデータアドレスを検索するために用いられる。EP_mapは、エレメンタリストリームおよびトランスポートストリームから抽出されたエントリポイントのリストである。
【０４０７】
EP_mapは、AVストリームの中で、デコードを開始すべきエントリポイントを検索するためのアドレス情報を持つ。EP_map中の１つのEPデータは、PTSと、PTSに対応するAccess Uniteの、AVストリーム中のアドレスとの対で構成される。AVC/H.264においては、１Access Uniteには１ピクチャ分のデータが格納される。
【０４０８】
図４３は、Clip AVストリームの例を示す図である。
【０４０９】
図４３のClip AVストリームは、PID=xで識別されるソースパケットからなるビデオストリーム（Base view videoストリーム）である。ビデオストリームは、ソースパケット毎に、ソースパケット内のトランスポートパケットのヘッダに含まれるPIDにより区別される。
【０４１０】
図４３においては、ビデオストリームのソースパケットのうちの、IDR(Instantaneous Decording Refresh)ピクチャの先頭バイトを含むソースパケットに色が付されている。色が付いていない四角は、ランダムアクセスポイントとならないデータが含まれるソースパケットや、他のストリームのデータが含まれているソースパケットを示す。
【０４１１】
IDRピクチャはＩピクチャであり、IDRピクチャを含むGOP内の中で最初にデコードされる。IDRピクチャのデコード時、参照ピクチャバッファの状態や、それまで管理されていたフレーム番号やPOC(Picture Order Count)などのデコードに関する全ての情報はリセットされる。
【０４１２】
例えば、PID=ｘで区別されるビデオストリームのランダムアクセス可能なIDRピクチャの先頭バイトを含む、ソースパケット番号X1のソースパケットは、Clip AVストリームの時間軸上でPTS=pts(x1)の位置に配置される。
【０４１３】
同様に、次にランダムアクセス可能なIDRピクチャの先頭バイトを含むソースパケットはソースパケット番号X2のソースパケットとされ、PTS=pts(x2)の位置に配置される。
【０４１４】
図４４は、図４３のClip AVストリームに対応したEP_mapの例を概念的に示す図である。
【０４１５】
図４４に示すように、EP_mapは、stream_PID、PTS_EP_start、およびSPN_EP_startから構成される。
【０４１６】
stream_PIDは、ビデオストリームを伝送するトランスポートパケットのPIDを表す。
【０４１７】
PTS_EP_startは、ランダムアクセス可能なIDRピクチャから始まるAccess UniteのPTSを表す。
【０４１８】
SPN_EP_startは、PTS_EP_startの値により参照されるAccess Uniteの第１バイト目を含むソースパケットのアドレスを表す。
【０４１９】
ビデオストリームのPIDがstream_PIDに格納され、PTS_EP_startとSPN_EP_startの対応関係を表すテーブル情報であるEP_map_for_one_stream_PID()が生成される。
【０４２０】
例えば、PID=xのビデオストリームのEP_map_for_one_stream_PID[0]には、PTS=pts(x1)とソースパケット番号X1、PTS=pts(x2)とソースパケット番号X2、・・・、PTS=pts(xk)とソースパケット番号Xkとがそれぞれ対応して記述される。
【０４２１】
このようなテーブルが、同じClip AVストリームに多重化されたそれぞれのビデオストリームについても生成される。生成されたテーブルを含むEP_mapが、当該Clip AVストリームに対応するClip Informationファイルに格納される。
【０４２２】
図４５は、SPN_EP_startが指すソースパケットのデータ構造の例を示す図である。
【０４２３】
上述したように、ソースパケットは、188バイトのトランスポートパケットに4バイトのヘッダを付加した形で構成される。トランスポートパケット部分は、ヘッダ部(TP header)とペイロード部とからなる。SPN_EP_startは、IDRピクチャから始まるAccess Uniteの第１バイト目を含むソースパケットのソースパケット番号を表す。
【０４２４】
AVC/H.264においては、Access Uniteすなわちピクチャは、AUデリミタ(Access Unit Delimiter)から開始される。AUデリミタの後に、SRSとPPSが続く。その後に、IDRピクチャのスライスのデータの、先頭部分または全体が格納される。
【０４２５】
トランスポートパケットのTPヘッダにあるpayload_unit_start_indicatorの値が１であることは、新たなPESパケットがこのトランスポートパケットのペイロードから始まることを表す。このソースパケットから、Access Uniteが開始されることになる。
【０４２６】
このようなEP_mapが、Base view videoストリームとDependent view videoストリームについてそれぞれ用意される。
【０４２７】
＜第２の実施の形態＞
以上においては、PlayListの記述に基づいてD1/D2 view videoのclpiファイルを参照するようにしたが、Base view videoのclpiファイルから参照することができるようにしてもよい。
【０４２８】
［参照例１］
図４６は、再生装置２０１によるファイル管理の例を示す図である。
【０４２９】
図４６においては、PlayListから参照できるclpiファイルは矢印＃１に示すようにBase view videoのclpiファイルだけである。
【０４３０】
Base view videoのclpiファイルにはD1/D2 view videoのclpiファイルのファイル名の少なくとも一部が含まれている。そのファイル名を用いて、矢印＃２に示すようにD1 view videoのclpiファイルを参照したり、矢印＃３に示すようにD2 view videoのclpiファイルを参照したりすることができるようになされている。
【０４３１】
図４６のclpi[B]は、Base view videoを格納したm2tsファイル（m2ts[B]）のclpiファイルを示す。また、clpi[D1]は、D1 view videoを格納したm2tsファイル（m2ts[D1]）のclpiファイルを示す。clpi[D2]は、D2 view videoを格納したm2tsファイル（m2ts[D2]）のclpiファイルを示す。
【０４３２】
各clpiファイルには、２ビットの3D_Clip_typeと、２ビットの3D_App_typeが設定される。
【０４３３】
図４７は、3D_Clip_typeの意味を示す図である。
【０４３４】
3D_Clip_typeの値の00は、2D再生に用いられるClipであることを表す。これは2D再生にしか対応していないプレーヤとの互換性を確保するためのものである。3D_Clip_type=00を含むclpiファイルに対応するm2tsファイルは2D再生用videoのファイル（例えば、 Base view videoのファイル）となる。
【０４３５】
3D_Clip_typeの値の01は、Base view videoのClipであることを表す。
【０４３６】
3D_Clip_typeの値の10は、D1 view videoのClipであることを表す。
【０４３７】
3D_Clip_typeの値の11は、D2 view videoのClipであることを表す。
【０４３８】
図４８は、3D_App_typeの意味を示す図である。
【０４３９】
3D_App_typeの値の00は、2D再生アプリケーションによって参照可能なClipであることを表す。2D再生アプリケーションは、2D再生を制御するアプリケーションである。
【０４４０】
3D_App_typeの値の01は、B-D1再生アプリケーションによって参照可能なClipであることを表す。B-D1再生アプリケーションはB-D1再生を制御するアプリケーションである。
【０４４１】
3D_App_typeの値の10は、B-D2再生アプリケーションによって参照可能なClipであることを表す。B-D2再生アプリケーションはB-D2再生を制御するアプリケーションである。
【０４４２】
3D_App_typeの値の11は、B-D1再生アプリケーションとB-D2再生アプリケーションのいずれによっても参照可能なClipであることを表す。
【０４４３】
図４９は、3D_Clip_typeと3D_App_typeの設定の例を示す図である。
【０４４４】
図４９の例においては、Base view videoのclpiファイルには3D_Clip_typeの値として01が設定され、3D_App_typeの値として11が設定されている。Base view videoのclpiファイルのファイル名は「00001.clpi」である。
【０４４５】
Base view videoのm2tsファイルのファイル名は「00001.m2ts」である。このように、対応するclpiファイルとm2tsファイルには、同じ５桁の数字とそれぞれの拡張子からなるファイル名が設定される。
【０４４６】
また、D1 view videoのclpiファイルには3D_Clip_typeの値として10が設定され、3D_App_typeの値として11が設定されている。D1 view videoのclpiファイルのファイル名は「00003.clpi」であり、対応するm2tsファイルのファイル名は「00003.m2ts」である。
【０４４７】
D2 view videoのclpiファイルには3D_Clip_typeの値として01が設定され、3D_App_typeの値として11が設定されている。D2 view videoのclpiファイルのファイル名は「00002.clpi」であり、対応するm2tsファイルのファイル名は「00002.m2ts」である。
【０４４８】
Base view videoのclpiファイルには、そのBase view videoとともに3D再生に用いられるD1/D2 view videoのclpiファイルを表す情報として、D1/D2 view videoのclpiファイルに設定されたファイル名のうちの拡張子を除いた部分が記述される。
【０４４９】
図５０は、clpiファイルのシンタクスを示す図である。
【０４５０】
図５０に示すように、3D_Clip_typeと3D_App_typeの値がclpiファイルにそれぞれ設定される。
【０４５１】
また、ExtensionData()内に、このclpiファイルがBase view videoのclpiファイルである場合には、そのBase view videoとともに3D再生に用いられるD1/D2 view videoのclpiファイルを表す情報が記述される。
【０４５２】
図５１は、clpiファイルのExtensionData()内の記述の具体例を示す図である。
【０４５３】
図５１に示すように、例えば、3DClipInfo()として、3D再生時に参照する各種の情報が記述される。
【０４５４】
「If(3D_Clip_type == 01b)」は、3D_Clip_typeの値が01である場合に図５１の記述を参照することを表す。
【０４５５】
「if(3D_App_type == 01b || 3D_App_type == 11b)」は、3D_App_typeの値が01であるか11である場合に、次のD1_ClipInfo_file_nameとB-D1_Interleave_Info_file_nameを参照することを表す。D1_ClipInfo_file_nameとB-D1_Interleave_Info_file_nameが、B-D1再生を行うときに参照する記述となる。
【０４５６】
D1_ClipInfo_file_nameは、D1 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図４９の例の場合、「00003」が記述されることになる。拡張子を含めてファイル名全体が記述されるようにしてもよい。
【０４５７】
B-D1_Interleave_Info_file_nameは、上述した「10000.ilvt」のilvtファイルのような、B-D1再生を行うときに読み出しファイルとしてファイルシステムに指定するファイルのファイル名のうちの拡張子を除いた５桁の数字などを表す。
【０４５８】
「if(3D_App_type == 10b || 3D_App_type == 11b)」は、3D_App_typeの値が10であるか11である場合に、次のD2_ClipInfo_file_nameとB-D2_Interleave_Info_file_nameを参照することを表す。D2_ClipInfo_file_nameとB-D2_Interleave_Info_file_nameが、B-D2再生を行うときに参照する記述となる。
【０４５９】
D2_ClipInfo_file_nameは、D2 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図４９の例の場合、「00002」が記述されることになる。
【０４６０】
B-D2_Interleave_Info_file_nameは、上述した「20000.ilvt」のilvtファイルのような、B-D2再生を行うときに読み出しファイルとしてファイルシステムに指定するファイルのファイル名のうちの拡張子を除いた５桁の数字などを表す。
【０４６１】
num_of_Ext_fileは、図５１の記述を含むclpiファイルに対応するm2tsファイルが、いくつのエクステントを含むのかを表す。
【０４６２】
num_of_Ext_file以降に、各エクステントの情報が記述される。
【０４６３】
Ext_start_addressは、エクステントの光ディスク２０２上の開始アドレスを表す。
【０４６４】
Ext_sizeは、エクステントの長さを表す。エクステントの長さは上述したように例えばSPNにより表される。
【０４６５】
例えば、図５１の記述を含むclpiファイルがBase view videoのclpiファイルである場合には、そのBase view videoの光ディスク２０２上のエクステントに関する情報がnum_of_Ext_file以降に記述される。
【０４６６】
また、図５１の記述を含むclpiファイルがD1 view videoのclpiファイルである場合には、そのD1 view videoの光ディスク２０２上のエクステントに関する情報がnum_of_Ext_file以降に記述される。
【０４６７】
図５１の記述を含むclpiファイルがD2 view videoのclpiファイルである場合には、そのD2 view videoの光ディスク２０２上のエクステントに関する情報がnum_of_Ext_file以降に記述される。
【０４６８】
なお、図５１に示す記述のうち、２行目の「If(3D_Clip_type == 01b)」から、num_of_Ext_fileの１行上までの記述は、Base view videoのclpiファイルにだけ記述される。D1 view videoのclpiファイルとD2 view videoのclpiファイルには、エクステントに関する記述が含まれる。
【０４６９】
図５２は、clpiファイルのExtensionData()内の記述の他の具体例を示す図である。
【０４７０】
図５２の記述は、エクステントに関する記述である「Ext_start_address」が含まれていない点で図５１の記述と異なる。各エクステントのアドレスを他の情報などを参照することで特定することができる場合、「Ext_start_address」を用いないでも、「Ext_size」を使用することで各エクステントを特定し、抽出することができる。
【０４７１】
［参照例２］
図５３は、再生装置２０１によるファイル管理の他の例を示す図である。
【０４７２】
Base view videoのclpiファイルからD1/D2 view videoのclpiファイルを参照するのではなく、D1/D2 view videoのclpiファイルを参照するためのファイルを別途用意し、それを用いるようにしてもよい。
【０４７３】
図５３の例においては、PlayListから参照できるclpiファイルは矢印＃２１に示すようにBase view videoのclpiファイルだけである。
【０４７４】
PlayListとは別に設けられたInterleave ClipInfoから、矢印＃２２に示すようにD1 view videoのclpiファイルを参照したり、矢印＃２３に示すようにD2 view videoのclpiファイルを参照したりすることができるようになされている。
【０４７５】
Interleave ClipInfoには、D1/D2 view videoのclpiファイルのファイル名の少なくとも一部が含まれている。
【０４７６】
図５４は、ファイルの管理構造の例を示す図である。
【０４７７】
図５４に示すように、例えば、「BDMV」ディレクトリの下の階層であって、「CLIPINF」のディレクトリの次に、「Interleave CLIPINF」などのディレクトリが新たに設けられる。この「Interleave CLIPINF」ディレクトリに、D1/D2 view videoのclpiファイルを参照するためのファイルであるInterleave ClipInfoファイルが格納される。
【０４７８】
3D再生を行う場合、再生装置２０１は、この「Interleave CLIPINF」ディレクトリ内のInterleave ClipInfoファイルを参照し、Base view videoとともに3D再生に用いられるD1/D2 view videoのclpiファイルを特定する。
【０４７９】
図５５は、Interleave ClipInfoファイルのシンタクスを示す図である。
【０４８０】
図５５のInterleave ClipInfoファイルのファイル名は「zzzzz.ilvt」である。
【０４８１】
3D_App_typeには、図４８を参照して説明したいずれかの値が設定される。
【０４８２】
例えば3D_App_type=01である場合、B-D1再生アプリケーションはこのInterleave ClipInfoファイルを参照する。また、3D_App_type=10である場合、B-D2再生アプリケーションはこのInterleave ClipInfoファイルを参照する。3D_App_type=11である場合、B-D1再生アプリケーションもB-D2再生アプリケーションも、このInterleave ClipInfoファイルを参照する。
【０４８３】
「if(3D_App_type == 01b || 3D_App_type == 11b)」は、3D_App_typeの値が01であるか11である場合に次のD1_ClipInfo_file_nameを参照することを表す。D1_ClipInfo_file_nameは、B-D1再生を行うときに参照する記述となる。
【０４８４】
D1_ClipInfo_file_nameは、D1 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図４９の例の場合、「00003」が記述されることになる。
【０４８５】
「if(3D_App_type == 10b || 3D_App_type == 11b)」は、3D_App_typeの値が10であるか11である場合に次のD2_ClipInfo_file_nameを参照することを表す。D2_ClipInfo_file_nameは、B-D2再生を行うときに参照する記述となる。
【０４８６】
D2_ClipInfo_file_nameは、D2 view videoのclpiファイルのファイル名のうちの拡張子を除いた５桁の数字を表す。図４９の例の場合、「00002」が記述されることになる。
【０４８７】
このように、インターリーブ情報のファイルを新しく定義しておき、それにより、Base view videoに対応するD1/D2 view videoのclpiファイルが特定できるようにしてもよい。
【０４８８】
［記録装置の構成例］
図５６は、ソフト製作処理部３０１の構成例を示すブロック図である。
【０４８９】
ビデオエンコーダ３１１は、図３のMVCエンコーダ２１１と同様の構成を有している。ビデオエンコーダ３１１は、複数の映像データをH.264 AVC/MVCでエンコードすることによってBase view videoストリームとDependent view videoストリームを生成し、バッファ３１２に出力する。
【０４９０】
オーディオエンコーダ３１３は、入力されたオーディオストリームをエンコードし、得られたデータをバッファ３１４に出力する。オーディオエンコーダ３１３には、Base view video、Dependent view videoストリームとともにディスクに記録させるオーディオストリームが入力される。
【０４９１】
データエンコーダ３１５は、PlayListファイルなどの、ビデオ、オーディオ以外の上述した各種のデータをエンコードし、エンコードして得られたデータをバッファ３１６に出力する。
【０４９２】
例えば、データエンコーダ３１５は、Base view videoストリームのデータとD1/D2 view videoストリームのデータがエクステント単位でインターリーブされた状態で光ディスクに記録されているのか否かを表すtype（図１８）をPlayListファイルに設定する。
【０４９３】
また、データエンコーダ３１５は、Base view videoストリームのデータとD1/D2 view videoストリームのデータがインターリーブされた状態で光ディスクに記録される場合、上述したilvtファイルをPlayListファイルに設定する。ilvtファイルは、Base view videoストリームのデータとD1/D2 view videoストリームのデータとを仮想的にまとめて管理する仮想ファイルとして機能する。
【０４９４】
さらに、データエンコーダ３１５は、各ClipのClip Informationファイルのファイル名をPlayListファイルに設定したり、それぞれのClip Informationファイルに、EP_mapやchunk_mapを設定したりする。
【０４９５】
データエンコーダ３１５は、3D_Clip_type（図４７）と3D_App_type（図４８）をClip Informationファイルに設定する。また、データエンコーダ３１５は、Clip Informationファイルの拡張領域であるExtensionData()に、Ext_start_addressやExt_sizeなどのエクステントに関する情報を設定する。
【０４９６】
多重化部３１７は、それぞれのバッファに記憶されたビデオデータ、オーディオデータ、および、ストリーム以外のデータを同期信号と共に多重化し、誤り訂正符号化部３１８に出力する。
【０４９７】
誤り訂正符号化部３１８は、エラー訂正用のコードを多重化部３１７により多重化されたデータに付加する。
【０４９８】
変調部３１９は、誤り訂正符号化部３１８から供給されたデータに対して変調を施し、出力する。変調部３１９の出力は、再生装置２０１において再生可能な光ディスク２０２に記録されるソフトウェアとなる。
【０４９９】
このような構成を有するソフト製作処理部３０１が記録装置に設けられる。
【０５００】
図５７は、ソフト製作処理部３０１を含む構成の例を示す図である。
【０５０１】
図５７に示す構成の一部が記録装置内に設けられることもある。
【０５０２】
ソフト製作処理部３０１により生成された記録信号はプリマスタリング処理部３３１においてマスタリング処理が施され、光ディスク２０２に記録すべきフォーマットの信号が生成される。生成された信号は原盤記録部３３３に供給される。
【０５０３】
記録用原盤製作部３３２においては、ガラスなどよりなる原盤が用意され、その上に、フォトレジストなどよりなる記録材料が塗布される。これにより、記録用原盤が製作される。
【０５０４】
原盤記録部３３３において、プリマスタリング処理部３３１から供給された記録信号に対応してレーザビームが変調され、原盤上のフォトレジストに照射される。これにより、原盤上のフォトレジストが記録信号に対応して露光される。その後、この原盤を現像し、原盤上にピットを出現させることが行われる。
【０５０５】
金属原盤製作部３３４において、原盤に電鋳等の処理が施され、ガラス原盤上のピットを転写した金属原盤が製作される。この金属原盤から、さらに金属スタンパが製作され、これが成形用金型とされる。
【０５０６】
成形処理部３３５において、成形用金型に、インジェクションなどによりPMMA（アクリル）またはPC（ポリカーボネート）などの材料を注入し、固定化させることが行われる。
あるいは、金属スタンパ上に２Ｐ（紫外線硬化樹脂）などを塗布した後、紫外線を照射して硬化させることが行われる。これにより、金属スタンパ上のピットを、樹脂よりなるレプリカ上に転写することができる。
【０５０７】
成膜処理部３３６において、レプリカ上に、反射膜が蒸着あるいはスパッタリングなどにより形成される。あるいはまた、レプリカ上に、反射膜がスピンコートにより形成される。
【０５０８】
後加工処理部３３７において、このディスクに対して内外径の加工が施され、２枚のディスクを張り合わせるなどの必要な処置が施される。さらに、ラベルを貼り付けたり、ハブを取り付けたりした後、カートリッジに挿入される。このようにして再生装置２０１によって再生可能なデータが記録された光ディスク２０２が完成する。
【０５０９】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、汎用のパーソナルコンピュータなどにインストールされる。
【０５１０】
インストールされるプログラムはリムーバブル記録媒体に記録して提供される。また、ローカルエリアネットワーク、インターネット、ディジタル放送といった、有線または無線の伝送媒体を介して提供されるようにしてもよい。
【０５１１】
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０５１２】
２０１  再生装置，  ２０２  光ディスク，  ２０３  表示装置，  ２１１  MVCエンコーダ，  ２２１  H.264/AVCエンコーダ，  ２２２  H.264/AVCデコーダ，  ２２３  Depth算出部，  ２２４  Dependent view videoエンコーダ，  ２２５  マルチプレクサ，  ２５１  コントローラ，  ２５２  ディスクドライブ，  ２５３  メモリ，  ２５４  ローカルストレージ，  ２５５  インターネットインタフェース，  ２５６  デコーダ部，  ２５７  操作入力部
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2010244629.tif 000074
【図２】
2010244629.tif 000075
【図３】
2010244629.tif 000076
【図４】
2010244629.tif 000077
【図５】
2010244629.tif 000078
【図６】
2010244629.tif 000079
【図７】
2010244629.tif 000080
【図８】
2010244629.tif 000081
【図９】
2010244629.tif 000082
【図１０】
2010244629.tif 000083
【図１１】
2010244629.tif 000084
【図１２】
2010244629.tif 000085
【図１３】
2010244629.tif 000086
【図１４】
2010244629.tif 000087
【図１５】
2010244629.tif 000088
【図１６】
2010244629.tif 000089
【図１７】
2010244629.tif 000090
【図１８】
2010244629.tif 000091
【図１９】
2010244629.tif 000092
【図２０】
2010244629.tif 000093
【図２１】
2010244629.tif 000094
【図２２】
2010244629.tif 000095
【図２３】
2010244629.tif 000096
【図２４】
2010244629.tif 000097
【図２５】
2010244629.tif 000098
【図２６】
2010244629.tif 000099
【図２７】
2010244629.tif 000100
【図２８】
2010244629.tif 000101
【図２９】
2010244629.tif 000102
【図３０】
2010244629.tif 000103
【図３１】
2010244629.tif 000104
【図３２】
2010244629.tif 000105
【図３３】
2010244629.tif 000106
【図３４】
2010244629.tif 000107
【図３５】
2010244629.tif 000108
【図３６】
2010244629.tif 000109
【図３７】
2010244629.tif 000110
【図３８】
2010244629.tif 000111
【図３９】
2010244629.tif 000112
【図４０】
2010244629.tif 000113
【図４１】
2010244629.tif 000114
【図４２】
2010244629.tif 000115
【図４３】
2010244629.tif 000116
【図４４】
2010244629.tif 000117
【図４５】
2010244629.tif 000118
【図４６】
2010244629.tif 000119
【図４７】
2010244629.tif 000120
【図４８】
2010244629.tif 000121
【図４９】
2010244629.tif 000122
【図５０】
2010244629.tif 000123
【図５１】
2010244629.tif 000124
【図５２】
2010244629.tif 000125
【図５３】
2010244629.tif 000126
【図５４】
2010244629.tif 000127
【図５５】
2010244629.tif 000128
【図５６】
2010244629.tif 000129
【図５７】
2010244629.tif 000130