(57)【特許請求の範囲】
【請求項１】
平面視映像の再生に利用されるメインビュービデオストリームと、前記メインビュービデオストリームと組み合わされて立体視映像の再生に利用されるサブビュービデオストリームと、グラフィクスストリームと、識別フラグを含むデータを再生する再生装置に搭載される半導体集積回路であって、
前記メインビュービデオストリームは、メインビュートランスポートストリームとして多重化された後、複数のメインビューデータ群に分割され、
前記サブビュービデオストリームは、サブビュートランスポートストリームとして多重化された後、複数のサブビューデータ群に分割され、
前記データにおいては、前記メインビューデータ群と前記サブビューデータ群は交互に配置されており、
前記グラフィクスストリームは、前記メインビュートランスポートストリーム及び前記サブビュートランスポートストリームのうち何れか一方、もしくは両方に多重化されており、前記メインビューデータ群とサブビューデータ群の少なくとも何れかは、グラフィクスデータを含み、
前記グラフィクスストリームの再生タイプには、平面視グラフィクスストリームを用いた再生を行う第１の再生タイプと、左目用のグラフィクスストリームと右目用のグラフィクスストリームのペアを用いた立体視再生を行う第２の再生タイプとがあり、
前記識別フラグは、立体視再生モードにおいて、前記グラフィクスストリームに、左目用グラフィクスストリームと右目用グラフィクスストリームのペアが存在するか否かを示し、
前記半導体集積回路は、
前記半導体集積回路の制御を行う主制御部と、
前記メインビュービデオストリーム、サブビュービデオストリーム、グラフィクスストリームを含むデータを受信し、前記半導体集積回路の内部もしくは外部に設けられたメモリに一旦格納した後、メインビューデータ群と、サブビューデータ群と、グラフィクスデータとに多重分離するストリーム処理部と、
前記メインビューデータ群に属する個々のメインビューデータと、サブビューデータ群に属する個々のサブビューデータと、前記グラフィクスデータとをそれぞれデコードする信号処理部と、
デコードされた前記メインビューデータと、サブビューデータと、前記グラフィクスデータとを出力するAV出力部とを備えており、
前記ストリーム処理部は、受信した前記データの格納先を前記メモリ内の第１の領域と第２の領域との間で切り替える切替部を備えており、
前記主制御部は、前記メインビューデータ群に属する個々のメインビューデータを、前記第１の領域に格納するように前記切替部を制御し、前記サブビューデータ群に属する個々のサブビューデータを、前記第２の領域に格納するように前記切替部を制御し、
前記メモリ内の第３の領域には、前記左目用グラフィクスストリームと右目用グラフィクスストリームのペアを用いた立体視再生を行う能力が前記再生装置に存在するか否かを示した情報が格納されており、
前記主制御部は、前記左目用グラフィクスストリームと右目用グラフィクスストリームのペアを用いた立体視再生を行う能力が前記再生装置に存在するか否かを示した情報と前記識別フラグに従って、前記グラフィクスストリームの再生タイプを選択し、
前記AV出力部は、選択された再生タイプに従って前記デコードされたメインビューデータ、及び、サブビューデータに、前記グラフィクスデータを重畳して出力する
ことを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、3D映像及び2D映像の再生技術の技術分野に属する発明である 
【背景技術】
【０００２】
2D映像とは、表示装置の表示画面をX-Y平面として捉えて、このX-Y平面上の画素にて表現される画像であり、平面視画像とも呼ばれる。 
【０００３】
対照的に3D映像とは、表示装置の画面におけるX-Y平面上の画素に、Z軸方向の奥行きを加えた画像である。3D映像は、左目で視聴すべきレフトビュー映像と、右目で視聴すべきライトビュー映像とを共に再生して、これらレフトビュー映像、ライトビュー映像で立体視効果を発揮することにより、ユーザによる視聴に供される。3D映像における画素のうち、正のZ軸座標をもつものをユーザは、表示装置の画面より手前にあると感じ、負のZ軸座標をもつものを、画面より奥に存在すると感じる。 
【０００４】
光ディスクに3D映像を格納する場合には、2D映像が格納された光ディスクのみを再生できる再生装置（以下、「2D再生装置」と呼ぶ）との再生互換性が求められる。3D映像を格納した光ディスクを、2D再生装置が3D映像を2D映像として再生できない場合、同じコンテンツを3D用ディスクと、2D用ディスクとの２種類を製作する必要があり、コスト高になってしまう。よって、3D映像が格納された光ディスクは、2D再生装置では2D映像として再生し、2D映像と3D映像を再生できる再生装置（以下、「2D/3D再生装置」）では、2D映像もしくは3D映像として再生できることが求められる。 
【０００５】
3D映像が格納された光ディスクでの再生互換性を確保する技術の先行技術としては、以下の特許文献１に記載されたものがある。 
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３９３５５０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで動画像について立体視効果を行う場合、字幕やGUIを表すグラフィクスについても何等かの立体視効果の実現が求められる。これらの字幕やGUIは、通常、動画像と合成して表示される。動画像が立体視効果を実現することができるのに、字幕やGUIが平面視再生のままで表示されるのでは、両者の整合が取れないからである。
【０００８】
マニファクチャ(再生装置の製造主体のことである)が再生装置を設計するにあたっての字幕やGUIを表すグラフィクスの扱いとしては、グラフィクスの立体視効果を常に保障する設計思想と、グラフィクスの立体視効果を保障しない設計思想とがある。
【０００９】
グラフィクスの立体視効果を常に保障する設計思想においては以下の問題がある。つまり動画像の立体視効果の実現だけでも、ハードウェアの設計や評価、品質管理が大変なのに、グラフィクスの立体視機能を再生装置に追加してそれの品質管理を行うのは、マニファクチャにとって多大な負担になる。
【００１０】
よって、字幕やGUIを表すグラフィクスについても立体視効果を常に保障するという再生装置の設計思想では、製品の低価格化が図れないという問題がある。
【００１１】
グラフィクスの立体視効果を保障しない設計思想とは、以下のものである。グラフィクスについては、動画像のような本格的な立体視効果が必要ではなく、プレーンメモリのオフセット制御によって簡易に奥行き感をもたらすだけで充分であることも多い。よってグラフィクスの再生部については、オフセット制御で簡易な立体視効果を実現するよう再生装置を採用するとの設計思想に徹すれば、立体視効果が可能な再生装置の低価格化を推進することができる。しかしグラフィクスの中には、映画作品中のキャラクターを動画像と同期して動作させるようなタイプのものがある。オフセット制御を常に採用するという設計思想では、かかるキャラクターを平面的に表示させざるを得ず、立体視効果が安っぽいものとなる。このような安っぽさが拭えないと、再生装置を高級機種として販売することが困難になる。
【００１２】
よって思想のどちらかに偏ると、何れも上述したような弊害が生じる。また再生装置が高級機種ばかりになったり、低価格の機種ばかりになって、市場における製品の充実化を妨げ、立体視再生の実現が可能な再生装置の普及を妨げる。
【００１３】
本発明の目的は、高品位な立体視効果機能をもった機種、高品位な立体視効果機能をもたない機種という複数機種を市場に投入して、製品ラインナップの充実化を図ることができる半導体集積回路を提供することである。 
【課題を解決するための手段】
【００１４】
上記課題を解決するための半導体集積回路は、
平面視映像の再生に利用されるメインビュービデオストリームと、前記メインビュービデオストリームと組み合わされて立体視映像の再生に利用されるサブビュービデオストリームと、グラフィクスストリームと、識別フラグを含むデータを再生する再生装置に搭載される半導体集積回路であって、
前記メインビュービデオストリームは、メインビュートランスポートストリームとして多重化された後、複数のメインビューデータ群に分割され、
前記サブビュービデオストリームは、サブビュートランスポートストリームとして多重化された後、複数のサブビューデータ群に分割され、
前記データにおいては、前記メインビューデータ群と前記サブビューデータ群は交互に配置されており、
前記グラフィクスストリームは、前記メインビュートランスポートストリーム及び前記サブビュートランスポートストリームのうち何れか一方、もしくは両方に多重化されており、前記メインビューデータ群とサブビューデータ群の少なくとも何れかは、グラフィクスデータを含み、
前記グラフィクスストリームの再生タイプには、平面視グラフィクスストリームを用いた再生を行う第１の再生タイプと、左目用のグラフィクスストリームと右目用のグラフィクスストリームのペアを用いた立体視再生を行う第２の再生タイプとがあり、
前記識別フラグは、立体視再生モードにおいて、前記グラフィクスストリームに、左目用グラフィクスストリームと右目用グラフィクスストリームのペアが存在するか否かを示し、
前記半導体集積回路は、
前記半導体集積回路の制御を行う主制御部と、
前記メインビュービデオストリーム、サブビュービデオストリーム、グラフィクスストリームを含むデータを受信し、前記半導体集積回路の内部もしくは外部に設けられたメモリに一旦格納した後、メインビューデータ群と、サブビューデータ群と、グラフィクスデータとに多重分離するストリーム処理部と、
前記メインビューデータ群に属する個々のメインビューデータと、サブビューデータ群に属する個々のサブビューデータと、前記グラフィクスデータとをそれぞれデコードする信号処理部と、
デコードされた前記メインビューデータと、サブビューデータと、前記グラフィクスデータとを出力するAV出力部とを備えており、
前記ストリーム処理部は、受信した前記データの格納先を前記メモリ内の第１の領域と第２の領域との間で切り替える切替部を備えており、
前記主制御部は、前記メインビューデータ群に属する個々のメインビューデータを、前記第１の領域に格納するように前記切替部を制御し、前記サブビューデータ群に属する個々のサブビューデータを、前記第２の領域に格納するように前記切替部を制御し、
前記メモリ内の第３の領域には、前記左目用グラフィクスストリームと右目用グラフィクスストリームのペアを用いた立体視再生を行う能力が前記再生装置に存在するか否かを示した情報が格納されており、
前記主制御部は、前記左目用グラフィクスストリームと右目用グラフィクスストリームのペアを用いた立体視再生を行う能力が前記再生装置に存在するか否かを示した情報と前記識別フラグに従って、前記グラフィクスストリームの再生タイプを選択し、
前記AV出力部は、選択された再生タイプに従って前記デコードされたメインビューデータ、及び、サブビューデータに、前記グラフィクスデータを重畳して出力する
ことを特徴とする。
【発明の効果】
【００１５】
グラフィクスの立体視効果の実現性の可否が、ケーパビリティフラグに示されており、拡張ストリーム選択テーブルにおいて、立体視効果可能であると設定されているグラフィクスストリームについては、このグラフィクスの立体視効果を行うかどうかが、このケーパビリティフラグによって条件付けられるので、マニファクチャは、たとえ記録媒体に立体視効果をもつグラフィクスストリームが記録されていたとしても、ケーパビリティフラグを「ケーパビリティなし」と設定することで、かかるグラフィクスストリームの立体視効果に歯止めをかけ、品質管理を行い易い平面視グラフィクスストリームを用いた立体視再生を代わりに実行することができる。
【００１６】
こうすることで、高品位な立体視効果機能をもった機種、かかる立体視効果機能をもたない機種という複数機種の再生装置を市場に投入して、製品ラインナップの充実化を図ることができる。
【００１７】
以上が、解決しようとする課題欄で述べた技術的課題の解決を図る技術的思想の創作である。任意的ではあるが、上記再生装置は、以下のような追加的な技術的課題の解決を図るものであってもよい。
【００１８】
(追加的技術的課題その１)
現行の再生装置で主流になっているものは、立体視視聴用の眼鏡を装着して表示装置を視聴するというものである。このような視聴スタイルで、立体視を楽しむには、立体視の映画作品が記録された記録媒体を再生装置に装填した上、眼鏡をかけるという2つの動作が必要であるので、立体視再生の視聴を楽しむまでに時間がかかり、これらの動作をしている間に、「立体視映像がこれから始まる」という高揚感がなくなってしまうこともある。
【００１９】
本発明の目的は、「立体視映像がこれから始まる」という高揚感が存在するうちに、立体視再生を開始することができる再生装置を提供することである。
【００２０】
上記課題を解決することができる再生装置は、
前記再生装置に接続されている表示装置に立体視表示能力が存在するか否かを示すケーパビリティレジスタと、
自機の出力モードを格納しているモードレジスタとを備え、 
複数の条件が成立するかどうかを判定して、複数の条件が成立した場合に、前記モードレジスタに立体視出力モードを設定し、
前記複数の条件のうち第１条件は、前記ケーパビリティレジスタが、前記再生装置に接続されている表示装置に立体視表示能力が存在することを示していることであり、
前記複数の条件のうち第２条件は、記録媒体に記録された、出力モードの初期値が立体視出力モードである旨を示すことであり、
ディスク読み込み時に、前記第１条件と前記第２条件が成立するかどうかの判定を行い、前記第１条件と前記第２条件が成立した場合、前記モードレジスタに立体視出力モードを設定する
ことを特徴とする。
【００２１】
記録媒体における出力モードの初期値が立体視再生可能である旨を示す場合、再生装置が立体視再生の再生能力が存在することを要件として、ディスク装填と同時に再生装置が立体視出力モードになる。よって初期値が立体視再生可能であるである旨を示す場合、記録媒体を装填してすぐ眼鏡をかけることで、立体視再生による仮想現実感に浸ることができる。
【００２２】
(追加的な技術的課題その２)
現行の平面視用再生装置におけるストリーム選択手順については、ストリーム選択プロシージャという制御プログラムが確立されている。立体視再生装置においては、立体視出力モードと、平面視出力モードとの切り替えを保障する必要があるが、出力モードの選択手順が、かかるストリーム選択プロシージャと相容れないものであれば、制御プログラムの開発工数が倍増してしまうという問題がある。
【００２３】
本発明の目的は、平面視用の再生装置におけるストリーム選択プロシージャと親和性が高い、モード設定を実現することができる再生装置を提供することである。
【００２４】
上記課題を解決することができる再生装置は、
前記再生装置に接続されている表示装置に立体視表示能力が存在するか否かを示すケーパビリティレジスタと、
自機の出力モードを格納しているモードレジスタとを備え、 
複数の条件が成立するかどうかを判定して、複数の条件が成立した場合に、前記モードレジスタに立体視出力モードを設定し、
前記記録媒体には、再生経路を示すプレイリスト情報が記録されており、
前記複数の条件のうち第１条件は、前記ケーパビリティレジスタが、前記再生装置に接続されている表示装置に立体視表示能力が存在することを示していることであり、
前記複数の条件のうち第２条件は、再生するプレイリスト情報が、立体視用の拡張ストリーム選択テーブルを含むことであり、
前記拡張ストリーム選択テーブルは、立体視再生モードにおいて前記再生装置が選択可能なエレメンタリストリームを、ストリーム番号と対応付けて示すリストであり、
プレイリスト再生開始時に、前記モードレジスタに格納されている出力モードが立体視出力モードの場合、前記第１条件と前記第２条件が成立するかどうかの判定を行い、前記第１条件と前記第２条件が成立した場合、前記モードレジスタに格納されている立体視出力モードを維持する
ことを特徴とする。
【００２５】
平面視用のストリーム選択テーブルとは別に、立体視用の拡張ストリーム選択テーブルがカレントのプレイリスト情報に存在することを要件として、出力モードを切り替えるので、プレイリスト情報を基準にした既存のストリーム選択プロシージャに大きな改変を加えることなく、平面視出力モード、立体視出力モードのうち、適切なモードを選択することができる。
【００２６】
(追加的な技術的課題その３)
プレイリストの再生中は、プレイリストを構成するプレイアイテム間のシームレス接続が配慮されており、その再生の品位にオーサリング者による細心の注意が払われている。しかしながら、プレイリストの再生の途中で出力モードが立体視出力モードから平面視出力モードに切り替わったり、また平面視出力モードから立体視出力モードに切り替ったりすると、このプレイリスト単位でオーサリング者によって保障されている再生の品位が損なわれるという恐れがある。
【００２７】
本発明の目的は、プレイリスト単位でオーサリング者によって保障されている再生の品位が損なわない再生装置を提供することである。
【００２８】
上記課題を解決することができる再生装置は、前記モードレジスタに格納されている出力モードが平面視出力モードであれば、前記複数の条件が成立したとしても、モードレジスタに格納されている平面視出力モードを維持することを特徴とする。
【００２９】
プレイリスト再生中は、立体視出力モードと、平面視出力モードとの切り替えを禁止するので、プレイリストの再生の途中で平面視から立体視に切り替わることによる表示画像の突然の乱れの発生を回避することができる。
【００３０】
(追加的な技術的課題その４)
プレイリストの再生中は、プレイリストを構成するプレイアイテム間のシームレス接続が配慮されており、その再生の品位にオーサリング者による細心の注意が払われている。しかしながら、ユーザからの要求によってプレイリストの再生の途中で出力モードが立体視出力モードから平面視出力モードに切り替わったり、また平面視出力モードから立体視出力モードに切り替ったりすると、このプレイリスト単位でオーサリング者によって保障されている再生の品位が損なわれるという恐れがある。
【００３１】
本発明の目的は、プレイリスト単位でオーサリング者によって保障されている再生の品位が損なうことがない再生装置を提供することである。
【００３２】
上記課題を解決することができる再生装置は、プレイリストの再生中であれば、前記モードレジスタに格納されている出力モードを維持することを特徴とする。
【００３３】
プレイリストの再生の途中で平面視から立体視に切り替わることによる表示画像の突然の乱れの発生を回避することができる。
【００３４】
(追加的な技術的課題その５)
今後、主流となる立体視表示形式は、眼鏡を着用するものであるが、近い将来、裸眼立体視が可能になるような表示装置が市場投入されることは充分に考えられる。そのような裸眼立体視を行える表示装置が市場投入されると再生装置における制御プログラムに大きな改変に迫られる。そうすると、また改めて制御プログラムを開発せざるを得ず、マニファクチャの負担が倍増する。また裸眼立体視が可能な表示装置の開発時期は、現段階では予測することはできず、そのような将来性を踏まえた再生装置の開発計画を立案することは不可能に近い。
【００３５】
本発明の目的は、裸眼立体視が可能な表示装置に接続されたとしても、制御プログラムに大きな改変を加えなくて済む再生装置を提供することである。
【００３６】
上記課題を解決することができる再生装置は、
前記再生装置に接続されている表示装置に立体視表示能力が存在するか否かを示すケーパビリティレジスタと、
自機の出力モードを格納しているモードレジスタとを備え、
所定の条件が成立するかどうかを判定して、所定の条件が成立した場合に、前記モードレジスタに立体視出力モードを設定し、  
前記立体視表示能力を有する表示装置には、立体視映像を見る際に、立体視眼鏡の着用が必要なものと不要なものとがあり、
前記ケーパビリティレジスタは、要否フラグを含み、前記要否フラグは、前記再生装置に接続されている表示装置に立体視表示能力が存在する場合、立体視映像を見る際に、立体視眼鏡の着用が必要か否かを示し、
前記要否フラグが、立体視映像を見る際に、立体視眼鏡の着用が不要である旨を示している場合、前記所定の条件を満たすと判定し、前記モードレジスタに立体視出力モードを設定する
ことを特徴とする。
【００３７】
上記再生装置によれば、裸眼立体視が可能な表示装置に接続されている場合、裸眼立体視が可能な立体視表示装置、又は、裸眼立体視が不可能な立体視表示装置のどちらかが接続相手になる可能性があっても、適切な出力モードの選択を実現することができる。
【００３８】
(追加的な技術的課題その６)
立体視再生は長い歴史をもつが、旧来の立体視再生は映像に充分な解像度を確保しえなかったことから、映画作品の主流になれなかったという経緯がある。再生装置の接続相手となる表示装置の表示能力で、立体視再生の品位が大きく変わるようでは、旧来の立体視再生とおなじ轍を踏む恐れがある。
【００３９】
本発明の目的は、映像や表示装置の解像度で、品位が大きく変わることがないという保障をもたらすことができる再生装置を提供することである。
【００４０】
上記課題を解決することができる再生装置は、
前記再生装置に接続されている表示装置に立体視表示能力が存在するか否かを示すケーパビリティレジスタと、
自機の出力モードを格納しているモードレジスタとを備え、
所定の条件が成立するかどうかを判定して、所定の条件が成立した場合に、前記モードレジスタに立体視出力モードを設定し、  
前記ケーパビリティレジスタは、表示タイプフラグを含み、前記表示タイプフラグは、前記再生装置に接続されている表示装置における表示方式が標準画質のものか、高画質のものかを示し、表示装置における表示方式が標準画質であれば、前記所定の条件を満たさないと判定する
ことを特徴とする。
【００４１】
上記再生装置によれば、テレビが標準画質であることから、立体視再生に必要な画質を確保し得ない場合には、平面視再生モードの設定を維持することができるので、解像度が充分でないまま立体視再生を実現することによる視聴者の視覚等への影響を防止することができる。
【００４２】
(追加的な技術的課題その７)
上記再生装置を、表示装置に接続する際、何等かのインターフェイスを通じて両装置を接続せねばならない。
【００４３】
ここで、再生装置が立体視再生を行う場合、表示させるべきピクチャデータを非圧縮状態で表示装置に伝送する伝送系では、ネゴシエーションに、ビデオフォーマット・フレームレートといったパラメータが必要になる。理由は以下の通りである。つまり、ピクチャデータの非圧縮伝送を前提にした伝送系においては、表示装置の各フレーム期間で表示されるべきピクチャデータを、非圧縮の状態のまま、接続相手である表示装置に伝送にする必要があるので、表示装置と、再生装置との間で、水平表示期間、垂直表示期間と同期した非圧縮の画素データ伝送を実現せねばならない。
【００４４】
一方、水平表示期間、垂直表示期間と同期して伝送すべき画素データの量は、画像のビデオフォーマットに依存するので、表示装置側で処理できるビデオフォーマットやフレームレートはどれか、再生装置側で処理できるビデオフォーマットやフレームレートはどれかといった情報を互いにやりとりして、双方が処理することができるフレームレート、ビデオフォーマットのうち、最良のものを決定にする必要がある。
【００４５】
しかし、再生装置におけるフレームレート、ビデオフォーマットの処理能力は、記録媒体に記録されているビデオストリームのフレームレート、ビデオフォーマットに依存するものであり、タイトルが選択されて再生されるべきプレイリストが定まらないと、これらの情報を取得することはできない。
【００４６】
よって、ディスクが装填された段階では、ディスクに記録されている複数のビデオストリームのうち、どれが再生対象になるかは定まらず、またプレイリストの選択を待って、これらのフレームレートやフォーマットを表示装置に伝えてネゴシエーションを開始しようとすると、表示装置による立体視映像の表示開始が遅れて実際の立体視再生がなかなか開始されないという事態が生じる。具体的には、このネゴシエーションによって生じる起動遅延は、５秒程度のオーダーになる。
【００４７】
本発明の目的は、記録媒体装填時におけるネゴシエーションによる起動遅延を解消することができる記録媒体を提供することである。
【００４８】
上記課題を解決することができる記録媒体は、
インデックステーブルが記録された記録媒体であって、
前記インデックステーブルは、アプリケーション情報を含み、
前記アプリケーション情報は、
初期出力モード情報と、フォーマット・フレームレート情報とを含み、
前記初期出力モード情報は、再生装置に優先的に設定される出力モードが平面視出力モードか立体視出力モードかを示す情報であり、
前記フォーマット・フレームレート情報は、記録媒体を挿入時に、再生装置の出力モード情報として利用することができる映像フォーマット、及び、フレームレートを示す
ことを特徴とする。
【００４９】
上記記録媒体では、インデックステーブルにアプリケーション情報が存在しており、このアプリケーション情報は、ネゴシエーションに必要なパラメータとして、ビデオフォーマット、ビデオレートの情報を含むので、インデックステーブルの読み取り後、ファーストプレイタイトルの再生処理と同時に、相手側機器とのネゴシエーションを開始することができる。ファーストプレイタイトルの再生処理と、相手側機器とのネゴシエーションとをパラレルに実行することができるので、起動遅延は、約半分の時間にまで低減させることができる。
【００５０】
(追加的な技術的課題その８)
また、上記再生装置がビデオストリームを格納したストリームファイルのランダムアクセスを実現する場合、記録媒体に記録されたエントリーマップを手掛かりにして、GOPの先頭位置を特定する。
【００５１】
エントリーマップは、ビデオストリームの記録にあたって、GOPの先頭にあたるピクチャデータをポインティングするエントリーをエントリーマップに追加してゆくことで生成される。
【００５２】
メインビュービデオストリームからメイントランスポートストリームを生成すると共に、サブビュービデオストリームからサブトランスポートストリームを生成して、これらを立体視インターリーブドストリームファイルとして記録する場合、拡張エントリーマップにおけるエントリーによってポインティングされているピクチャデータと、基本エントリーマップにおけるエントリーによってポインティングされているピクチャデータとが、別々のエクステントのペアに配置されることがある。
【００５３】
メインビュービデオストリーム及びサブビューストリームにおけるそれぞれのピクチャデータはその情報量がフレーム毎に違う。フレーム毎に情報量が異なるメインビュービデオストリームを含むメイントランスポートストリーム及びサブビューストリームを含むサブトランスポートストリームを、リードバッファのアンダーフローを招かないような固定長で分割して記録媒体に記録しようとすると、フレーム毎の情報量が互いに異なることから、基本エントリーマップにてポインティングされているベースビューピクチャデータと、拡張エントリーマップにてポインティングされているサブビューピクチャデータとが、同じペア領域とはならず、これらが別々のペア領域に帰属してしまうことも有り得る。
【００５４】
ベースビューピクチャデータと、サブビューピクチャデータとが別々のペア領域に帰属した場合、これらベースビューピクチャデータ及びサブビューピクチャデータのランダムアクセスを実行しようとすると、任意の再生時刻に対応するピクチャデータの組みをデコーダに送り込むため、別々のエクステントのペアをアクセスして、これらに記録されているピクチャデータの組みを読み出す必要が生じる。ランダムアクセスの度に、別々のエクステントのペアをアクセスするというのは、光ピックアップのシークの多発を招き、再生開始の遅延をもたらす。
【００５５】
本発明の目的は、ベースビューピクチャデータ、サブビューピクチャデータの組みをランダムアクセスする際の遅延をなくすことができる記録媒体を提供することである。
【００５６】
上記課題を解決する記録媒体は、
ストリームファイルと、ストリーム管理ファイルとが記録された記録媒体であって、
前記ストリームファイルは、複数のピクチャデータによって構成されるビデオストリームを含み、
前記ストリーム管理ファイルは、エントリーマップを含み、
前記エントリーマップは、ピクチャデータのアドレスを、再生時刻に対応付けて示すエントリーを含み、
前記ピクチャデータには、立体視映像のメインビューを構成するメインビューピクチャデータと、立体視映像のサブビューを構成するサブビューピクチャデータとがあり、
前記エントリーマップには、平面視映像の再生時に使用される基本エントリーマップと、立体視映像の再生時に、前記基本エントリーマップと共に使用される拡張エントリーマップとがあり、
対応する拡張エントリーマップは、基本エントリーマップのエントリーと同じ時刻のエントリーを有することを特徴とする。
【００５７】
また前記ストリームファイルは、メインビューストリームを構成するエクステントと、サブビューストリームを構成するエクステントとを交互に配置することで構成される立体視インターリーブファイルであり、
メインビューストリームを構成するエクステントのうち、識別番号iによって特定されるi番目のエクステントが、基本エントリーマップのエントリーによって示されるメインビューピクチャデータを含む場合、
サブビューストリームを構成するエクステントのうち、前記識別番号ｉと同一の識別番号iによって特定されるi番目のエクステントは、拡張エントリーマップの前記基本エントリーマップの前記エントリーと同じ時刻のエントリーによって示されるサブビューピクチャデータを含む
ことを特徴とする。
【００５８】
上記記録媒体では、メイントランスポートストリームにおけるGOP及びサブトランスポートストリームにおけるGOPを記録媒体に記録するにあたって、拡張エントリーマップのエントリーは、サブビューピクチャデータであって、同じ再生時刻で再生されるべきベースビューピクチャデータが、基本エントリーマップのエントリーによってポインティングされているもののみをポインティングするようにしている。
【００５９】
基本エントリーマップのエントリーによってポインティングされているピクチャデータと、拡張エントリーマップのエントリーによってポインティングされているピクチャデータとが、同じエクステントのペアに存在するので、エントリーマップ、拡張エントリーマップを手掛かりにしてエクステントをアクセスすれば、ベースビューのGOP、サブビューのGOPをまとめて再生することができる。これにより、再生開始の遅延を解消することができる。
【図面の簡単な説明】
【００６０】
【図１】パッケージ媒体である記録媒体、プレーヤ機器である再生装置、表示装置、眼鏡によって構成されるホームシアターシステムを示す。
【図２】ユーザーの顔を左側に描き、右側に対象物たる恐竜の骨格を左目から見た場合の例と、対象物たる恐竜の骨格を、右目から見た場合の例とを示している。
【図３】立体視のためのベースビュービデオストリーム、ディペンデントビュービデオストリームの内部構成の一例を示す。
【図４】第１実施形態に係る記録媒体における内部構成を示す。
【図５】メインTS及びサブTSの内部構成を示す。
【図６】プレイリスト情報の内部構成を示す。
【図７】基本ストリーム選択テーブルの一例を示す。
【図８】拡張ストリーム選択テーブルの内部構成を示す。
【図９】拡張ストリーム選択テーブルにおけるストリーム登録列を示す。
【図１０】基本ストリーム選択テーブル、拡張ストリーム選択テーブルによりメインTS、サブTSからどのようなESが多重分離されるかを示す。
【図１１】2D出力モード、3D出力モードにおけるストリーム番号の割り当て変化を示す。
【図１２】再生装置の内部構成を示す。
【図１３】PGデコーダの内部構成を示す。
【図１４】テキスト字幕デコーダの内部構成を示す。
【図１５】IGデコーダのデコーダモデルを示す。
【図１６】デコーダモデルの出力を合成し、3D-LR方式で出力するための回路構成を示す。
【図１７】これらのデコーダモデルの出力を合成し、1plane＋Offsetモード方式で出力するための回路構成を示している。
【図１８】レジスタセット２０３の内部構成と、再生制御部とを描いた図である。
【図１９】PSR24のビットアサインを示す。
【図２０】プレイリスト再生手順を示す。
【図２１】PGtestSTストリームについてのProcedure when playback condition is changedについての処理手順を示すフローチャートである。
【図２２】カレントプレイアイテムについて最適なPG＿テキスト字幕ストリームを選択する処理手順を示すフローチャートである。
【図２３】セット立体視ストリームコマンド(SetstreamSSCommand)によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。
【図２４】セットストリームコマンド、又は、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。
【図２５】カレントIGストリームの決定及びカレントIGストリームの再生タイプ決定の処理手順を示すフローチャートである。
【図２６】結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
【図２７】結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
【図２８】レジスタセット２０３の内部構成と、再生制御部２１０とを描いた図である。
【図２９】出力モードの選択モデルの状態遷移を示す。
【図３０】Initializationの処理手順を示す。
【図３１】Procedure when playback condition is changedの処理手順を示す。
【図３２】3D出力モード実現のためのプレーヤ設定レジスタのビットアサインを示す。
【図３３】BD-Jオブジェクトの内部構成の一例を示す図である。
【図３４】BD-Jタイトルにおける出力モード設定の処理手順を示すフローチャートである。
【図３５】イニシャルHAViデバイスコンフィグレーションセレクションのビヘイビアの一例を示すフローチャートである。
【図３６】PSR23のビットアサインを示す。
【図３７】PSR23における立体視再生ケーパビリティの判定手順を示すフローチャートである。
【図３８】インデックステーブルを説明するための説明図である。
【図３９】ディスクインサート時の処理手順を示すフローチャートである。
【図４０】表示装置と、再生装置との間の間のやりとりを示す図である。
【図４１】エクステントと、ファイル2D／ファイルベース、ファイルディペンデントとの対応付けを示す。
【図４２】立体視インターリーブドストリームファイルと、ファイル2D／ファイルベースとの関係を示す。
【図４３】立体視インターリーブドストリームファイル、ファイル2D、ファイルベースの相互関係を示す。
【図４４】2Dプレイリスト、3Dプレイリストを示す。
【図４５】クリップ情報ファイルの内部構成を示す。
【図４６】クリップ情報ファイルと、プレイリストと、立体視インターリーブドストリームファイルとの関係を示す。
【図４７】クリップベース情報、クリップディペンデント情報の内部構成を示す図である。
【図４８】基本エントリーマップと、拡張エントリーマップとを示す図である。
【図４９】拡張エントリーマップにおいて許容されないエントリーを示す。
【図５０】プレイアイテムの再生手順を示す。
【図５１】立体視インターリーブドストリームファイル構成するデータブロックからATCシーケンスがどのように復元されるかを示す。
【図５２】ATCシーケンスの復元がどのように行われるかを示す図である。
【図５３】ベースビュークリップ情報におけるエクステントスタートポイント情報の一例と、ディペンデントビュークリップ情報におけるエクステントスタートポイント情報の一例を示す。
【図５４】ATCシーケンス１、２における任意のデータブロックのソースパケット番号を説明するための図である。
【図５５】ATCシーケンス復元手順を示す。
【図５６】光ディスクの記録方法を示す。
【図５７】オーサリング行程の処理手順を示すフローチャートである。
【図５８】AVファイル書込工程の処理手順を示す。
【図５９】基本エントリーマップ、拡張エントリーマップの作成手順を示すフローチャートである。
【図６０】BD-Jアプリケーション、BD-Jオブジェクト、ムービーオブジェクト、インデックステーブルの作成手順を示すフローチャートである。
【図６１】多層化された光ディスクの内部構成を示す。
【図６２】ファイルシステムを前提にした光ディスクのアプリケーションフォーマットを示す。
【図６３】2D/3D再生装置の構成を示している。
【図６４】本発明に係る記録媒体の、使用行為についての形態、ＢＤ−ＲＯＭの内部構成、インデックスファイルの内部構成を示す図
【図６５】ＡＶクリップの構成、各ストリームがＡＶクリップにおいてどのように多重化されているかを模式的に示す図
【図６６】ＰＥＳパケット列に、ビデオストリーム及びオーディオストリームがどのように格納されるかを更に詳しく示し、ＡＶクリップにおけるＴＳパケットとソースパケット構造を示す図
【図６７】ＰＭＴのデータ構成、クリップ情報ファイルの内部構成を示す図
【図６８】ストリーム属性情報の内部構成、エントリマップの内部構成を示す図
【図６９】プレイリストの内部構成、プレイアイテムの内部構成を示す図
【図７０】２Ｄ再生装置の内部構成、プレーヤ変数を説明する図
【図７１】システムターゲットデコーダの内部構成を示す図
【図７２】対応３Ｄ方式を識別するシステムパラメータを説明する図
【図７３】対応３Ｄ方式を識別するシステムパラメータの自動取得の様子を説明する図
【図７４】２Ｄプレイリストと３Ｄプレイリストの再生を切り替えるデータ構造を示す図
【図７５】２Ｄプレイリストと３Ｄプレイリストの再生を切り替えるフローを示す図
【図７６】３Ｄ映像と２Ｄ映像を同時出力する場合を説明する図
【図７７】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移を説明する図
【図７８】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移の初期化フローを示す図
【図７９】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移のタイトル変更フロー、２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移のプレイリスト変更フローを示す図
【図８０】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移の２Ｄ／３Ｄ切り替えフローを示す図
【図８１】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移のＭｏｖｉｅ  Ｔｉｔｌｅの場合を示す図
【図８２】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移のＪａｖａ  Ｔｉｔｌｅの場合を示す図
【図８３】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移のタイトル切り替えの場合を示す図
【図８４】ストリーム再生開始までのＨＤＭＩ認証を効率化する方法の説明図
【図８５】２Ｄ／３Ｄ再生装置で３Ｄ映像再生を説明する図
【図８６】２Ｄ映像ストリームの場合のタイムマップの説明図
【図８７】３Ｄ映像ストリームが独立した２本のストリームの場合のタイムマップの説明図
【図８８】３Ｄ映像ストリームが１本のトランスポートストリームの場合のタイムマップの説明図
【図８９】３Ｄ映像ストリームが１本のトランスポートストリームの場合のタイムマップの説明図
【図９０】字幕・グラフィクスのオフセット情報と有効・無効切り替えの説明図
【図９１】２Ｄ／３Ｄ表示形式を示すシステムパラメータの状態遷移の初期化フローを示す図
【図９２】立体視の説明図
【図９３】2D/3D再生装置を集積回路を用いて実現した構成例である。
【図９４】ストリーム処理部の代表的な構成を示す機能ブロック図である。
【図９５】切替部がDMACであった場合の切替部５３周辺の概念図である。
【図９６】AV出力部の代表的な構成を示す機能ブロック図である。
【図９７】AV出力部もしくは再生装置のデータ出力部分を詳細に示した構成例である。
【図９８】集積回路における制御バス及びデータバスの配置を示した図である。
【図９９】集積回路における制御バス及びデータバスの配置を示した図である。
【図１００】表示装置を集積回路を用いて実現した構成例である。
【図１０１】表示装置におけるAV出力部の代表的な構成を示す機能ブロック図である。
【図１０２】再生装置における動作手順を簡単に示したフローチャートである。
【図１０３】再生装置における動作手順を詳細に示したフローチャートである。
【発明を実施するための形態】
【００６１】
上記課題解決手段を具備した記録媒体は、コンテンツを店頭販売するためのパッケージ媒体として実施することができる。また、この記録媒体に対応する再生装置は、パッケージ媒体を再生するためのプレーヤ機器として実施することができ、この記録媒体に対応する集積回路は、当該プレーヤ機器に組込まれるシステムLSIとして実施することができる。
【００６２】
図１は、パッケージ媒体である記録媒体、プレーヤ機器である再生装置、表示装置、眼鏡によって構成されるホームシアターシステムを示す。同図（ａ）に示すように、上記パッケージ媒体である記録媒体１００、プレーヤ機器である再生装置２００は、表示装置３００、3D眼鏡４００、リモコン５００と共にホームシアターシステムを構成し、ユーザによる使用に供される。
【００６３】
記録媒体１００は、上記ホームシアターシステムに、例えば映画作品を供給する。この映画作品には、立体視映像を構成するものがある。ここで立体視映像は、少なくとも2つの視点映像から構成される。視点映像とは、何等かの偏向性をもった映像のことであり、上記2つの視点映像は、メインビュー映像と、サブビュー映像とから構成される。記録媒体１００には、図１に示すように、ディスク型のもの、メモリカード型のもの等様々なタイプが存在するが、特に断らない限り以降の説明で述べる「記録媒体」は、ディスク媒体であるとする。
【００６４】
再生装置２００は、表示装置３００と接続され、記録媒体１００を再生する。再生装置は、メインビュー映像を表すメインビュービデオストリーム、サブビュー映像を表すサブビュービデオストリームを再生するため、2D出力モード、3D出力モードという2つの出力モードを具備しており、これらの相互切り替えを可能とする2D/3D再生装置(プレーヤ)である。
【００６５】
表示装置３００はテレビであり、映画作品の再生映像を表示したり、メニュー等を表示することで、対話的な操作環境をユーザに提供する。本実施形態の表示装置３００は、3D眼鏡４００をユーザが着用することで立体視を実現するものだが、表示装置３００がレンチキュラー方式のものなら、3D眼鏡４００は不要となる。
【００６６】
3D眼鏡４００は、液晶シャッターを備え、継時分離方式あるいは偏光メガネ方式による視差画像をユーザに視聴させる。視差画像とは、右目に入る映像と、左目に入る映像とから構成される一組の映像であり、それぞれの目に対応したピクチャーだけがユーザの目に入るようにして立体視を行わせる。 同図（ｂ）は、左目用映像の表示時を示す。画面上に左目用の映像が表示されている瞬間において、前述の3D眼鏡４００は、左目に対応する液晶シャッターを透過にし、右目に対応する液晶シャッターは遮光する。同図（ｃ）は、右目用映像の表示時を示す。画面上に右目用の映像が表示されている瞬間において、先ほどと逆に右目に対応する液晶シャッターを透光にし、左目に対応する液晶シャッターを遮光する。
【００６７】
リモコン５００は、AV再生のための操作項目を受け付けるための機器である。またリモコン５００は、階層化されたGUIに対する操作をユーザから受け付ける機器であり、かかる操作受け付けのため、リモコン５００は、GUIを構成するメニューを呼び出すメニューキー、メニューを構成するGUI部品のフォーカスを移動させる矢印キー、メニューを構成するGUI部品に対して確定操作を行う決定キー、階層化されたメニューをより上位のものにもどってゆくための戻りキー、数値キーを備える。
【００６８】
図１のホームシアターシステムにおいて、3D出力モードでの画像表示を表示装置３００に行わせる再生装置の出力モードを「3D出力モード」という。2D出力モードでの画像表示を表示装置３００に行わせる再生装置の出力モードを「2D出力モード」という。
【００６９】
以上が、記録媒体及び再生装置の使用形態についての説明である。
【００７０】
（第１実施形態)
第１実施形態の特徴は、右目用のグラフィクスストリーム、左目用のグラフィクスストリームを用いた立体視を実現することができるかどうかのケーパビリティを、再生装置におけるレジスタに設定している点である。
【００７１】
以降の説明において、メインビュー及びサブビューは、視差画像方式を実現するものとする。視差画像方式(3D-LRモードという)は、右目に入る映像と、左目に入る映像とを各々用意し、それぞれの目に対応したピクチャーだけが入るようにして立体視を行う方法である。図２は、ユーザーの顔を左側に描き、右側には、対象物たる恐竜の骨格を左目から見た場合の例と、対象物たる恐竜の骨格を、右目から見た場合の例とを示している。右目及び左目の透光、遮光から繰り返されれば、ユーザの脳内では、目の残像反応により左右のシーンの重合せがなされ、顔の中央の延長線上に立体映像が存在すると認識することができる。
【００７２】
このような立体視を実現するためのビデオストリームの符号化方式として、MPEG4-MVC方式によるものを用いる。以降の説明において、MPEG4-MVCにおける「ベースビュービデオストリーム」が、メインビュービデオストリームであり、MPEG4-MVCにおける「ディペンデントビュービデオストリーム」がサブビュービデオストリームであるものとする。
【００７３】
MPEG-4 MVC ベースビュービデオストリームは、view＿idが0のサブビットストリームであり、view＿idが0のビューコンポーネントのシーケンスである。MPEG-4 MVC ベースビュービデオストリームは、MPEG-4 AVCビデオストリームの制約を守る。
【００７４】
MPEG-4 MVC ディペンデントビュービデオストリーム は、view＿idが1のサブビットストリームであり、view＿idが1のビューコンポーネントのシーケンスである。
【００７５】
ビューコンポーネントとは、一個のフレーム期間において、立体視再生のために同時に再生される複数のピクチャデータのそれぞれのものをいう。視点間の相関性を用いた圧縮符号化は、ベースビュービデオストリーム及びディペンデントビュービデオストリームのビューコンポーネントをピクチャデータとして用いて、ピクチャ間の相関性を用いた圧縮符号化を実現することでなされる。1つのフレーム期間に割り当てられたベースビュービデオストリームのビューコンポーネントと、ディペンデントビュービデオストリームのビューコンポーネントとの組みが、1個のアクセスユニットを構成することになり、このアクセスユニットの単位でランダムアクセスが可能になる。
【００７６】
ベースビュービデオストリーム及びディペンデントビュービデオストリームは、何れも個々のビューコンポーネントを「ピクチャ」としたGOP構造を有しており、クローズドGOP、オープンGOPから構成される。クローズドGOPは、IDRピクチャと、このIDRピクチャに続くBピクチャと、Pピクチャとから構成される。オープンGOPは、Non-IDR Iピクチャと、Non-IDR Iピクチャに続くBピクチャと、Pピクチャとから構成される。
【００７７】
Non-IDR Iピクチャ、Pピクチャ、Bピクチャは、他のピクチャとのフレーム相関性に基づき圧縮符号化されている。Bピクチャとは、Bidirectionally predictive(B)形式のスライスデータからなるピクチャをいい、Pピクチャとは、Predictive(P)形式のスライスデータからなるピクチャをいう。Bピクチャには、refrenceB(Br)ピクチャと、nonrefrenceB(B)ピクチャとがある。
【００７８】
クローズドGOPは、IDRピクチャが先頭に配置される。表示順序においてIDRピクチャは先頭にならないが、IDRピクチャ以外の他のピクチャ(Bピクチャ，Pピクチャ)は、クローズドGOPより前のGOPに存在するピクチャと依存関係をもつことはできない。このようにクローズドGOPは、依存関係を完結させる役割をもつ。
【００７９】
図３は、立体視のためのベースビュービデオストリーム、ディペンデントビュービデオストリームの内部構成の一例を示す。
【００８０】
本図の第２段目は、ベースビュービデオストリームの内部構成を示す。このストリームには、ピクチャタイプがI1,P2,Br3,Br4,P5,Br6,Br7,P9というビューコンポーネントが含まれている。これらのビューコンポーネントは、Decode Time Stamp(DTS)に従いデコードされる。第１段目は、左目画像を示す。そうしてデコードされたビューコンポーネントI1,P2,Br3,Br4,P5,Br6,Br7,P9をPTSに従い、I1,Br3,Br4,P2,Br6,Br7,P5の順序で再生することで、左目画像が再生されることになる。
【００８１】
第４段目は、ディペンデントビュービデオストリームの内部構成を示す。このディペンデントビュービデオストリームは、P1,P2,B3,B4,P5,B6,B7,P8というピクチャタイプのビューコンポーネントが含まれている。これらのビューコンポーネントは、DTSに従いデコードされる。第３段目は、右目画像を示す。そうしてデコードされたビューコンポーネントP1,P2,B3,B4,P5,B6,B7,P8をPTSに従い、P1,B3,B4,P2,B6,B7,P5の順序で再生することで、右目画像が再生されることになる。
【００８２】
第５段目は、3D眼鏡４００の状態をどのように変化させるかを示す。この第５段目に示すように、左目画像の視聴時は、右目のシャッターを閉じ、右目画像の視聴時は、左目のシャッターを閉じていることがわかる。
【００８３】
ベースビュービデオストリームのビデオフレームと、ディペンデントビューストリームのビデオフレームとを１／４８秒の表示周期において、「Ｂ」ー「Ｄ」ー「Ｂ」ー「Ｄ」というように交互で出力するモードを、「B−Dプレゼンテーションモード」という。
【００８４】
更に、B−Dプレゼンテーションモードには、Ｌ画像、Ｒ画像を用いて立体視効果を実現する3D-LR方式の他、2D画像と、深度情報とを用いて立体視効果を実現する3D-Depth方式がある。
【００８５】
ベースビュービデオストリームのビデオフレームと、ディペンデントビューストリームのビデオフレームとを交互に出力するのではなく、出力モードを3Dモードに維持したまま、同じビデオフレームを2回以上繰り返し出力するという処理を行う再生タイプを、B−Bプレゼンテーションモードという。B−Bプレゼンテーションモードでは、単独再生可能なベースビュービデオストリームのビデオフレームのみが「Ｂ」−「Ｂ」−「Ｂ」−「Ｂ」というように繰り返し出力される。
【００８６】
以上のB−Dプレゼンテーションモード、B−Bプレゼンテーションモードが、再生装置の出力モードの基本となるが、これらのモード以外にも、再生装置には、1plane＋Offsetモードという出力モードが存在する。
【００８７】
1plane＋Offsetモード(3D-Offsetモードともいう)は、プレーンメモリの後段にシフト部を組込んで、シフト部を機能させることで立体視を実現する出力モードである。プレーンオフセット部は、レフトビュー期間及びライトビュー期間のそれぞれにおいて、プレーンメモリにおけるライン単位の画素の座標を、左方向又は右方向にシフトさせ、右目視線及び左目視線の結像点を手前方向、又は、奥行方向に変位させることで奥行き感を変化させる。具体的には、レフトビュー期間で左方向、ライトビュー期間で右方向に、画素座標を変化させれば、両目の視線の結像点は手前になり、レフトビュー期間で右方向、ライトビュー期間で左方向に、画素座標を変化させれば、両目の視線の結像点は手前になる。
【００８８】
かかるプレーンシフトでは、立体視のためのプレーンメモリが1プレーンで足りるので、簡易に立体視映像を作り出すのに最適である。このプレーンシフトでは、平面的な映像が手前に来たり、奥に引込んだりするという立体視映像を産み出すに過ぎないから、メニューや字幕の立体視効果には適しているものの、キャラクターや物体の立体視効果の実現にはやや物足りない。キャラクターの顔のくぼみや凹凸等が再現できないからである。
【００８９】
1plane＋Offsetモードをサポートする場合、再生装置の構成は以下の通りになる。グラフィクスの再生のため、再生装置にはプレーンメモリと、CLUT部、合成部が存在しており、このCLUT部、合成部の間にシフト部が組み入れられる。そして、シフト部は、ディペンデントビュービデオストリームのアクセスユニット構造に組込まれたオフセットシーケンスにおけるオフセットを用いて、上述したような画素の座標変化を実現する。こうすることで、1plane＋Offsetモードにおける画素の飛び出度合は、MVCビデオストリームと緻密に同期したものになる。この1plane＋Offsetモードの中には、1plane＋Zero Offsetモードがある。1plane＋Zero Offsetモードは、ポップアップメニューがオンである場合、オフセット値をゼロにして、ポップアップメニューだけに立体視効果を与える表示モードである。
【００９０】
オフセットシーケンスによるシフト制御の対象となるプレーンメモリは、所定のレイヤモデルを構成する複数のプレーンメモリである。プレーンメモリとは、エレメンタリストリームをデコードすることで得られた一画面分の画素データをライン単位で格納しておき、水平同期信号、垂直同期信号に沿ってこれらの画素データを出力するためのメモリである。個々のプレーンメモリは、ビデオデコーダ、PGデコーダ、IGデコーダのデコードによって得られた1画面分の画素データを格納する。
【００９１】
所定のレイヤモデルは、左目ビデオプレーン及び右目ビデオプレーンの階層、PGプレーンの階層、IG/BD-Jプレーンの階層から構成され、各階層のプレーンメモリの格納内容を、ビデオプレーン→PGプレーン→IG/BD-Jプレーンの順にレイヤ合成することを意図したものである。
【００９２】
上記レイヤ合成は、プレーンメモリのレイヤモデルにおいて、2つの階層のプレーンメモリに格納されている画素データの画素値を重畳させるという処理を、レイヤモデルにおける2つの階層の全ての組合せに対して実行することでなされる。以下、各階層のプレーンメモリについて述べる。
【００９３】
左目ビデオプレーンは、ビューコンポーネントをデコードすることで得られる一画面分の画素データのうち、左目用のピクチャデータを構成するものを格納することができるプレーンメモリである。右目ビデオプレーンは、ビューコンポーネントをデコードすることで得られる一画面分の画素データのうち、右目用のピクチャデータを構成するものを格納することができるプレーンメモリである。
【００９４】
プレゼンテーショングラフィクス(PG)プレーンとは、パイプライン式で動作するグラフィクスデコーダが、デコード処理を行うことで得られたグラフィクスの格納に用いられるプレーンメモリである。IG/BD-Jプレーンとは、ある動作モードでは、IGプレーンとして機能し、別の動作モードでは、BD-Jプレーンとして機能するプレーンメモリである。インタラクティブグラフィクス(IG)プレーンとは、対話的な処理を前提にして動作するグラフィクスデコーダが、デコードを行うことで得られたグラフィクスの格納に用いられるプレーンメモリである。BD-Jプレーンは、オブジェクト指向プログラミング言語のアプリケーションが描画処理を行うことで得た描画イメージグラフィクスの格納に用いることができるプレーンメモリである。IGプレーンとBD-Jプレーンとは排他的なものであり、何れか一方が利用されている場合、他方は利用されないため、IGプレーンとBD-Jプレーンとでは1つのプレーンメモリを兼用している。
【００９５】
上記レイヤモデルにおいて、ビデオプレーンについては、ベースビュー用のビデオプレーンと、ディペンデントビュー用のビデオプレーンとが存在するものの、IG/BD-Jプレーン、PGプレーンについては、ベースビュー用、ディペンデントビュー用のそれぞれについて、プレーンメモリが存在する訳ではない。よってIG/BD-Jプレーン、PGプレーンがシフト制御の対象になる。
【００９６】
以上が3D出力モードについての説明である。続いて、本実施形態に係る記録媒体の内部構成について説明する。
【００９７】
図４は、第１実施形態に係る記録媒体における内部構成を示す。本図（ａ）に示すように、第１実施形態に係る記録媒体には、「インデックステーブル」、「動作モードオブジェクトのプログラムファイル」、「プレイリスト情報ファイル」、「ストリーム情報ファイル」、「ストリームファイル」が記録されている。
【００９８】
＜インデックステーブル＞
インデックステーブルは記録媒体全体に関する管理情報であり、再生装置への記録媒体挿入後に、インデックステーブルが最初に読み出されることで、再生装置において記録媒体が一意に認識される。
【００９９】
＜動作モードオブジェクトのプログラムファイル＞
動作モードオブジェクトのプログラムファイルは、再生装置を動作させるための制御プログラムを格納している。このプログラムには、コマンドによって記述されたものと、オブジェクト指向のコンパイラ言語によって記述されたものがある。前者のプログラムは、コマンドベースの動作モードにおいて、複数のナビゲーションコマンドをバッチジョブとして再生装置に供給し、これらナビゲーションコマンドに基づき再生装置を動作させる。このコマンドベースの動作モードを、「HDMVモード」と呼ぶ。
【０１００】
後者のプログラムは、オブジェクト指向型のコンパイラ言語ベースの動作モードにおいて、クラス構造体のインスタンスであるバイトコードアプリケーションを再生装置に供給し、このインスタンスに基づき再生装置を動作させる。クラス構造体のインスタンスには、バイトコードアプリケーションの1つであるJava(登録商標)アプリケーションを用いることができる。オブジェクト指向型コンパイラ言語ベースの動作モードを、「BD-Jモード」と呼ぶ。
【０１０１】
＜ストリームファイル＞
ストリームファイルは、ビデオストリーム、１つ以上のオーディオストリーム、グラフィクスストリームを多重化することで得られたトランスポートストリームを格納している。ストリームファイルには、2D専用のものと、2D-3D兼用のものとがある。2D専用のストリームファイルは、通常のトランスポートストリーム形式であり、2D-3D兼用のストリームファイルは、立体視インターリーブドストリームファイルのファイル形式を有する。
【０１０２】
立体視インターリーブドストリームファイル形式とは、ベースビューストリームを含むメインのトランスポートストリーム(メインTS)のエクステントと、ディペンデントビュービデオストリームを含むサブトランスポートストリーム(サブTS)のエクステントとをインターリーブ形式で交互配置したものである。
【０１０３】
ストリームファイルに格納されるメインTSは、複数種別のPESストリームを管理・制御するための情報として、欧州デジタル放送規格に規定されたパケット管理情報(PCR,PMT,PAT)を具備している。
【０１０４】
PCR(Program＿Clock＿Reference)は、ATSの時間軸であるATC（Arrival  Time  Clock）とPTS・DTSの時間軸であるSTC（System  Time  Clock）の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
【０１０５】
PMT(Program＿map＿table)は、ストリームファイル中に含まれる映像・音声・グラフィクスなどの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、またTSに関する各種ディスクリプタを持つ。ディスクリプタにはストリームファイルのコピーを許可・不許可を指示するコピーコントロール情報などがある。
【０１０６】
PAT（Program  Association  Table）は、TS中に利用されるPMTのPIDが何であるかを示し、PAT自身のPID配列で登録される。
【０１０７】
これらのPCR,PMT,PATは、欧州デジタル放送規格において、一個の放送番組(Program)を構成するパーシャルTSを規定する役割をもち、再生装置は、欧州デジタル放送規格において、一個の放送番組を構成するパーシャルTSを扱うかの如く、TSをデコーダによる処理に供することができる。これは、欧州デジタル放送規格の端末装置と、記録媒体再生装置との互換性を意図したものである。
【０１０８】
メインTSにおけるエクステント及びサブTSにおけるエクステントの組みは、再生時においてダブルバッファをアンダーフローさせないデータサイズに設定されており、再生装置は、これらのエクステントの組みを途切れなく読み込んでゆくことができる。
【０１０９】
以上がストリームファイルについての説明である。
【０１１０】
＜ストリーム情報ファイル＞
ストリーム情報ファイルは、ストリームファイルにおけるトランスポートストリーム内の任意のソースパケットに対するランダムアクセスや、他のトランスポートストリームとの途切れ無き再生を保障する。このストリーム情報ファイルを通じることにより、ストリームファイルは「AVクリップ」として管理されることになる。ストリーム情報ファイルは、AVクリップにおけるストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、GOPの先頭位置のソースパケット番号を、フレーム期間のプレゼンテーションタイムスタンプと対応付けて示す基本エントリーマップをもっているので、ストリームファイルのアクセスに先立ち、このストリーム情報ファイルをメモリにロードしておけば、アクセスしようとするストリームファイル中のトランスポートストリームがどのようなものであるのかを把握することができるので、ランダムアクセスの実行を保障することができる。ストリーム情報ファイルには、2Dストリーム情報ファイルと、3Dストリーム情報ファイルとがあり、3Dストリーム情報ファイルは、ベースビューのためのクリップ情報(クリップベース情報)と、ディペンデントビューのためのクリップ情報(クリップディペンデント情報)と、立体視用の拡張エントリーマップとを含む。
【０１１１】
クリップベース情報は、ベースビューのためのエクステントスタートポイント情報を含み、クリップディペンデント情報は、ディペンデントビューのためのエクステントスタートポイント情報を含む。ベースビューのためのエクステントスタートポイント情報は、複数のソースパケット番号から構成される。それぞれのソースパケット番号は、メインTSにおけるエクステントの分割位置が何パケット目に存在するかを示す。ディペンデントビューのためのエクステントスタートポイント情報も複数のソースパケット番号から構成され、サブTSにおける分割位置が何パケットに存在するかを示す。これらのエクステントスタートポイント情報を用いることで、立体視インターリーブドストリームファイルは、メインTSを構成するATCシーケンス１と、サブTSを構成するATCシーケンス２とに分割されることになる。「ATCシーケンス」とは、ソースパケットの配列であって、そのArrival＿Time＿Stampが参照しているArrival＿Time＿Clockに、不連続点(no arrival time-base discontinutiy)が存在しないものをいう。ATCシーケンスは、ATCのタイムスタンプが連続しているソースパケット列であるから、再生装置のアライバルタイムクロックを計時するクロックカウンタが計時を行っている間、ATCシーケンスを構成する各ソースパケットは、連続的なソースパケットデパケッタイジング処理、及び、連続的なパケットフィルタリング処理に供されることになる。
【０１１２】
ATCシーケンスがソースパケットの配列であるのに対し、STC時間軸におけるタイムスタンプが連続しているTSパケットの配列をSTCシーケンスという。「STCシーケンス」とは、TSパケットの配列であって、TSのシステム基準時刻であるSTC(System Time Clock)の不連続点(system time-base discontinuity)をもたないものをいう。STCの不連続点とは、デコーダがSTCを得るために参照するPCR(Program Clock Reference)を運ぶPCRパケットの不連続情報(discontinuity＿indicator)がONである点である。STCシーケンスは、STCのタイムスタンプが連続しているTSパケット列であるから、再生装置のシステムタイムクロックを計時するクロックカウンタが計時を行っている間、STCシーケンスを構成する各TSパケットは、再生装置内に存在するデコーダの連続的なデコード処理に供されることになる。          
【０１１３】
拡張エントリーマップは、GOP先頭のフレーム期間を表すプレゼンテーションタイムスタンプに対応付けて、ディペンデントビュービデオストリームにおけるGOP先頭のビューコンポーネントの先頭位置となるアクセスユニットデリミターのソースパケット番号を示す。
【０１１４】
一方、3Dストリーム情報ファイルにおける基本エントリーマップは、2Dストリーム情報ファイルとの互換をもちつつも、GOP先頭のフレーム期間を表すプレゼンテーションタイムスタンプに対応付けて、ベースビュービデオストリームにおけるGOP先頭のビューコンポーネントの先頭位置となるアクセスユニットデリミターのソースパケット番号を示す。
【０１１５】
＜プレイリスト情報ファイル＞
プレイリスト情報ファイルは、再生装置にプレイリストを再生させるための情報を格納したファイルである。「プレイリスト」とは、トランスポートストリーム(TS)の時間軸上で再生区間を規定するとともに、この再生区間同士の再生順序を論理的に指定することで規定される再生経路であり、TSのうち、どれをどの部分だけ再生して、どのような順序でシーン展開してゆくかを規定する役割をもつ。プレイリスト情報は、かかるプレイリストの「型」を定義する。プレイリスト情報によって定義される再生経路は、いわゆる「マルチパス」である。マルチパスとは、主となるTSに対して定義された再生経路(メインパス)と、従となるストリームに対して定義された再生経路(サブパス)とを束ねたものである。このマルチパスにおいてベースビュービデオストリームの再生経路を規定し、サブパスにおいてディペンデントビュービデオストリームの再生経路を規定すれば、立体視を再生するためのビデオストリームの組合せを、好適に規定することができる。
【０１１６】
オブジェクト指向プログラミング言語ベースのアプリケーションが、このプレイリスト情報を再生するフレームワークプレーヤインスタンスの生成を命じることで、マルチパスによるAV再生を開始させることができる。フレームワークプレーヤインスタンスとは、メディアフレームワークプレーヤクラスを基にして仮想マシンのヒープメモリ上に生成される実際のデータのことである。またコマンドベースのプログラムが、このプレイリスト情報を引き数で指定した再生コマンドを発行することで、マルチパスによる再生を開始することもできる。
【０１１７】
プレイリスト情報は、1つ以上のプレイアイテム情報を含む。プレイアイテム情報とは、ビデオストリームの再生時間軸のうち、In＿Timeとなる時点と、Out＿Timeとなる時点の組みを1つ以上定義する再生区間情報である。
【０１１８】
プレイリスト情報は、プレイアイテム情報−ストリーム情報−トランスポートストリームという階層構造を有しており、トランスポートストリーム及びストリーム情報の組みと、プレイアイテム情報との比率については、１対多の関係にして、1つのトランスポートストリームを複数のプレイアイテム情報から多重参照することができる。よって、あるプレイリストのために作成されたトランスポートストリームをバンクフィルムとして採用し、これを複数のプレイリスト情報ファイルにおけるプレイアイテム情報から参照することで、映画作品のバリエーションを効率良く作成することができる(尚、バンクフィルムとは、映画業界の用語であり、複数のシーンで使いまわしされる映像内容のことである)。
【０１１９】
一般には、プレイリストという単位はユーザから認識されないので、ストリームファイルから派生した複数のバリエーション(例えば劇場公開版やTV放映版)が、プレイリストとして認識される。
【０１２０】
プレイリスト情報には、2Dプレイリスト情報と、3Dプレイリスト情報とがあり、これらの違いは、3Dプレイリスト情報内にベースビューインディケータと、立体視ストリーム番号テーブルとが存在することである。
【０１２１】
「立体視ストリーム番号テーブル」とは、3D出力モードでのみ再生すべきエレメンタリストリームのストリームエントリー及びストリーム属性を、ストリーム番号に対応付けて示すテーブルである。
【０１２２】
「ベースビューインディケータ」は、視点間の相関性を利用した圧縮符号化の基礎となるベースビュービデオストリームを、左目及び右目のどちらとして表示されるべきかを示す情報である。このプレイリスト情報におけるベースビューインディケータを変化させることで、ベースビュービデオストリームを、左目及び右目用のうちどちらにするかという割り当てをプレイリストのレベルで変化させることができる。
【０１２３】
ストリームの構造に依拠しないプレイリストのレベルで、上記割り当てを変化させることができるので、画像中の物体の位置及び角度がベースビュー＝左目、ディペンデントビュー＝右目用のように設定されているプレイリストが存在する場合、このプレイリストとは別バージョンとして、ベースビュー＝右目用、ディペンデントビュー＝左目のように設定されているプレイリストを作成することができる。
【０１２４】
プレイリストのレベルで、ベースビュー、ディペンデントビューに対する左目、右目用の割り当てを逆転させれば、立体視効果を逆転させることができる。例えば、画面の手前に対象物が出現するような立体視効果を意図したプレイリストが既に作成されている場合、かかるプレイリストと別に、画面の奥に対象物が出現するような立体視効果を意図したプレイリストを作成することができる。よって3Dプレイリストでは、立体視効果が異なる、プレイリストのバリエーションを簡易に作成することがでるという効果を奏する。
【０１２５】
図４（ｂ）は、メインTSの内部構成を示し、同図（ｃ）は、サブTSの内部構成を示す。同図（ｂ）に示すように、メインTSは、１本のベースビュービデオストリームと、３２本の左目PGストリーム、３２本の左目用IGストリーム、３２本のオーディオストリームを含むものとする。同図（ｃ）に示すように、サブTSは、１本のディペンデントビュービデオストリームと、３２本の右目PGストリーム、３２本の右目用IGストリームを含むものとする。
【０１２６】
次に、TSの内部構成について説明する。
【０１２７】
TSに多重化されるエレメンタリストリーム(ES)は、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィクスストリーム、インタラクティブグラフィクスストリームがある。
【０１２８】
・ビデオストリーム
ベースビュービデオストリームは、ピクチャインピクチャアプリケーションにおけるプライマリビデオストリームを構成する。ピクチャインピクチャアプリケーションは、このプライマリビデオストリームの他、セカンダリビデオストリームから構成される。プライマリビデオストリームとは、ピクチャインピクチャアプリケーションにおいて親画面となるピクチャデータから構成されるビデオストリームである。対照的に、セカンダリビデオストリームとは、ピクチャインピクチャにおいて子画面として、親画面の一部にはめ込まれるピクチャデータから構成されるビデオストリームである。
【０１２９】
プライマリビデオストリームを構成するピクチャデータと、セカンダリビデオストリームを構成するピクチャデータとはデコード後、別々のプレーンメモリに格納される。セカンダリビデオストリームを構成するピクチャデータを格納するプレーンメモリの前段には、セカンダリビデオストリームを構成するピクチャデータのスケーリング変更及び表示座標の位置決めを行う構成要素(Scalling&Positioning)が存在する。
【０１３０】
・オーディオストリーム
オーディオストリームには、プライマリオーディオストリーム、セカンダリオーディオストリームの２種類がある。プライマリオーディオストリームは、ミキシング再生を行う場合、主音声となるべきオーディオストリームであり、セカンダリオーディオストリームは、ミキシング再生を行う場合、副音声をとなるべきオーディオストリームである。セカンダリオーディオストリームは、このミキシングのためのダウンサンプリングのための情報、ゲイン制御のための情報が存在する。
【０１３１】
・プレゼンテーショングラフィクスストリーム(PGストリーム)
PGストリームは、デコーダにパイプラインを採用することで、映像との緻密な同期を実現することができ、字幕表示に適したグラフィクスストリームであり、2DPGストリームと、立体視PGストリームという2つの種類がある。立体視PGストリームには、左目PGストリーム及び右目PGストリームという二種類のものがある。
【０１３２】
2DPGストリームは最大３２本、左目PGストリームの最大３２本、右目PGストリームも最大３２本定義することができる。これらのPGストリームには、それぞれ、別々のパケット識別子が付与されており、多重分離部に、再生すべきパケット識別子を指示することで、これらのPGストリームのうち、所望のものが再生に供されることになる。
【０１３３】
パイプラインによるデコード動作の実現により、動画像との緻密な同期を実現するので、PGストリームの用途は字幕のような文字再生に限定されない。映画作品のマスコットキャラクタを表示して、これを動画像と同期させつつ動作させるなど、緻密な同期が必要なグラフィクス再生であれば、どのようなものも、PGストリームによる再生対象として、採用することができる。
【０１３４】
ストリームファイルに多重化されないが、字幕を現すストリームには、PGストリームの他に、テキスト字幕(textST)ストリームというものがある。textSTストリームは、字幕の内容をキャラクタコードで現したストリームである。
【０１３５】
PGストリーム、テキスト字幕ストリームは、これらの種類が区別されることなく、同じストリーム種別であるとして、これらPGストリーム及びテキスト字幕ストリームは、同じストリーム登録列に登録される。そして、ストリーム選択のプロシージャを実行するにあたって、ストリーム登録列におけるストリーム登録の順位に従い、再生されるべきPGストリーム又はテキスト字幕ストリームが定まる。PGストリーム、テキスト字幕ストリームは、ストリーム種が区別されることなく、ストリーム選択のプロシージャに供されるのでこれらPGストリーム及びテキスト字幕ストリームを1つのストリーム種別、つまり、「PG＿テキスト字幕ストリーム(略して、字幕ストリームと呼ぶ場合もある)」という種別で扱う。
【０１３６】
2D用のPG＿テキスト字幕ストリームは、1plane＋Offsetモードにおいて再生される。以降の説明では、2DPG＿テキスト字幕ストリームを、1plane＋OffsetPG＿テキスト字幕ストリームであるとして説明する。
【０１３７】
・インタラクティブグラフィクス(IG)ストリーム
IGストリームは、対話操作の情報を具備することで、ビデオストリームの再生進行に伴ってメニューを表示したり、またユーザ操作に従いポップアップメニューを表示することができるグラフィクスストリームである。
【０１３８】
IGストリームもPGストリームと同様、2DIGストリームと、立体視IGストリームという2つの種類がある。IGストリームの制御情報(対話制御セグメントという)は、ユーザインターフェイスモデルを規定する情報(User＿interface＿model)をもっており、オーサリング者は、このユーザインターフェイスモデル情報を設定することで、ビデオストリームの再生進行に伴ってメニューを表示するか(Alwaysオンという)、ユーザ操作に従いポップアップメニューを表示するか(ポップアップメニューオン)の何れかを指定することができる。
【０１３９】
IGストリームが対話操作の情報をもつ意義は以下の通りである。Java仮想マシンがアプリケーションからの要求に応じてプレイリスト再生の開始を再生制御の主体である再生制御エンジンに指示する場合、Java仮想マシンは、再生制御エンジンに再生を命じた後、プレイリスト再生を開始した旨のレスポンスをアプリケーションに返す。つまり、再生制御エンジンによるプレイリスト再生が継続している間、Java仮想マシンは、実行終了待ちにはならない。何故なら、Java仮想マシンは、いわゆるイベントドリブン型の動作主体であり、再生制御エンジンがプレイリストの再生を行っている間も、動作を行うことができるからである。
【０１４０】
一方、HDMVモードにおいて、コマンドインタプリタが、プレイリスト再生を再生制御エンジンに命じる場合、プレイリスト再生が終了するまで、そのプレイリスト再生の実行終了待ちとなる。再生制御エンジンによる再生が継続している間、コマンド実行部は、対話的な処理を実行することはできない。このコマンドインタプリタの代わりに、グラフィクスデコーダが対話的な動作を行う。グラフィクスデコーダに対話的な動作を行わせるため、IGストリームには、ボタン部材を用いた対話的な操作を規定する制御情報が組込まれている。  
【０１４１】
・各ストリーム種別において許容される表示モード
3D表示モードのどれが許容されるかは、ストリーム種別によって異なる。プライマリビデオストリームの3D表示モードには、B−Dプレゼンテーションモード、B−Bプレゼンテーションモードといった2つの出力モードが許容される。プライマリビデオストリームにおいて、B−Bプレゼンテーションモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。B−Dプレゼンテーションモードで再生される場合におけるプライマリビデオストリームの類型を、「立体視B−D再生タイプ」という。B−Bプレゼンテーションモードで再生される場合におけるプライマリビデオストリームの類型を、立体視B−B再生タイプという。
【０１４２】
PGストリームの3D表示モードには、B−Dプレゼンテーションモード、1plane＋Offsetモード、1plane＋Zero Offsetモードといった3つの出力モードが許容される。PGストリームにおいて、1plane＋Zero Offsetモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。B−Dプレゼンテーションモードで再生される場合におけるPGストリームの類型を、「立体視再生タイプ」という。1plane＋Offsetモードで再生される場合におけるPGストリーム,PG＿テキスト字幕ストリームの類型を、1plane＋Offsetタイプという。1plane＋Zero Offsetモードで再生される場合におけるPGストリーム,PG＿テキスト字幕ストリームの類型を、1plane＋Zero Offsetタイプという。
【０１４３】
テキスト字幕ストリームの3D表示モードには、1plane＋Offsetモード、1plane＋Zero Offsetモードといった2つの出力モードが許容される。テキスト字幕ストリームにおいて、1plane＋Zero Offsetモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。
【０１４４】
IGストリームの3D表示モードには、B−Dプレゼンテーションモード、1plane＋Offsetモード、1plane＋Zero Offsetモードといった3つの出力モードが許容される。IGストリームにおいて、1plane＋Zero Offsetモードが許容されるのは、ポップアップメニューがオンになっている場合のみである。以降の説明では、特に断らない限り3D出力モード実行時には、ピクチャインピクチャは使用できないものとする。ピクチャインピクチャ及び3D出力モードは、何れも非圧縮のピクチャデータを格納するためのビデオプレーンを2つ必要とするからである。また特に断らない限り、3D出力モードでは、サウンドミキシングも使用できないものとする。
【０１４５】
続いて、メインTS及びサブTSの内部構成について説明する。図５は、メインTS及びサブTSの内部構成を示す。
【０１４６】
同図（ａ）は、メインTSの内部構成を示す。メインTSは、以下のソースパケットによって構成されている。
【０１４７】
0x0100のパケットIDを有するソースパケットはProgram＿Map＿Tableを構成し、0x1001のパケットIDを有するTSパケットはPCRを構成する。
【０１４８】
0x1011のパケットIDを有するソースパケット列は、プライマリビデオストリームを構成する。
【０１４９】
0x1200から0x121FのパケットIDを有するソースパケット列までは、３２本の2DPGストリームを構成する。
【０１５０】
0x1400から0x141FのパケットIDを有するソースパケット列までは ３２本の2DIGストリームを構成する。
【０１５１】
0x1100のパケット識別子を有するソースパケット列から、0x111Fのパケット識別子を有するソースパケット列までは、プライマリオーディオストリームを構成する。
【０１５２】
これらのソースパケットのパケット識別子を多重分離部に指示することにより、メインTSに多重化されている複数のESのうち、所望のものを分離してデコーダに供することができる。
【０１５３】
図（ｂ）は、サブTSの内部構成を示す。サブTSは、以下のソースパケットによって構成されている。
【０１５４】
Ox1012のパケット識別子を有するソースパケット列は、ディペンデントビュービデオストリームを構成する。
【０１５５】
0x1220のパケット識別子を有するソースパケット列から0x123FのパケットIDを有するソースパケット列までは、３２本の左目PGストリームを構成する。
【０１５６】
Ox1240のパケット識別子を有するソースパケット列から0x125Fのパケット識別子を有するソースパケット列までは、３２本の右目PGストリームを構成する。
【０１５７】
0x1420のパケット識別子を有するソースパケット列から0x143FのパケットIDを有するソースパケット列までは ３２本の左目用IGストリームを構成する。
【０１５８】
Ox1440のパケット識別子を有するソースパケット列から0x145Fのパケット識別子を有するソースパケット列は、３２本の右目用IGストリームを構成する。
【０１５９】
以上がストリームファイルについての説明である。続いて、プレイリスト情報の詳細について説明する。
【０１６０】
上述したようなマルチパスを定義するため、図６のような内部構成を有する。図６は、プレイリスト情報の内部構成を示す。同図（ａ）に示すようにプレイリスト情報は、「メインパス情報」、「サブパス情報」、「プレイリストマーク情報」、「エクステンションデータ」を含む。以下、これらの構成要素について説明する。
【０１６１】
１）メインパス情報は、１つ以上の主たる再生区間情報から構成される。図６（ｂ）は、メインパス情報、及び、サブパス情報の内部構成を示す図であり、本図に示すように、メインパス情報は、１つ以上の主たる再生区間情報から構成される。サブパス情報は、１つ以上の従たる再生区間情報から構成される。
【０１６２】
主たる再生区間情報はプレイアイテム情報と呼ばれ、TSの再生時間軸のうち、In＿Timeとなる時点と、Out＿Timeとなる時点の組みを1つ以上定義することにより、論理的な再生区間を定義する情報である。再生装置には、カレントのプレイアイテムの番号を格納するプレイアイテム番号レジスタを含み、複数のプレイリスト情報のうち、このプレイアイテム番号レジスタに格納されているものが、現在の再生対象になる。
【０１６３】
図６（ｃ）は、プレイアイテム情報の内部構成を示す。本図に示すように、「ストリーム参照情報」、「インタイムアウトタイム情報」、「接続状態情報」、「基本ストリーム選択テーブル」を含む。
【０１６４】
ストリーム参照情報は、プレイアイテムを構成するトランスポートストリームを「AVクリップ」として管理しているストリーム情報ファイルを示す「ストリーム情報ファイルネーム情報(clip＿information＿file＿name)」、そのTSにおける符号化方式を示す「クリップ符号化方式識別子(Clip＿codec＿indentifier)」、当該TSのSTCシーケンスにおいて、インタイム及びアウトタイムが設定されているSTCシーケンスがどれであるかを示す「STC識別子レファレンス(STC＿ID＿referrence)」を含む。
【０１６５】
以上がプレイアイテム情報についての説明である。
【０１６６】
２）従たる再生区間情報は、サブパス情報と呼ばれ、複数のサブプレイアイテム情報から構成される。図６（ｄ）は、サブプレイアイテムの内部構成を示す。本図に示すように、サブプレイアイテム情報は、STCシーケンスの時間軸にインタイムと、アウトタイムとの組みを規定することで、サブパスを構成する再生区間を定義する情報であり、「ストリーム参照情報」、「インタイムアウトタイム情報」、「シンクロプレイアイテムレファレンス」、「シンクロ開始時刻情報」を含む。
【０１６７】
『ストリーム参照情報』は、プレイアイテム情報と同様、『ストリーム情報ファイルネーム情報』『クリップ符号化方式識別子』、『STC識別子レファレンス』を含む。
【０１６８】
『インタイムアウトタイム情報(SubPlayItem＿In＿Time,SubPlayItem＿Out＿Time)』は、STCシーケンス時間軸における、サブプレイアイテムの始点と、STCシーケンス時間軸上における、サブプレイアイテムの終点とを示す。
【０１６９】
「シンクロプレイアイテムレファレンス(Sync＿PlayItem＿Id)」は、プレイアイテムのうち、本サブプレイアイテムが同期すべきものを一意に指定する情報である。サブプレイアイテムインタイムは、この同期プレイアイテム参照子で指定されたプレイアイテムの再生時間軸上に存在する。
【０１７０】
「シンクロ開始時刻情報(Sync＿Start＿PTS＿of＿PlayItem)」は、同期プレイアイテム参照子で指定されたプレイアイテムのSTCシーケンスの時間軸のうち、サブプレイアイテムインタイムで指定されたサブプレイアイテムの始点が、どの時点に写像されるかを示す
３）プレイリストマーク情報は、再生区間固有のマークポイントを定義する情報であり、再生区間を示す参照子と、デジタルストリームの時間軸において、マークポイントが何処にあるかを示すタイムスタンプと、マークポイントの属性を示す属性情報とを含み、
前記属性情報は、プレイリストマーク情報により定義されたマークポイントが、リンクポイントであるか、エントリーマークであるかを示す。
【０１７１】
リンクポイントは、リンクコマンドによるリンクが可能であるが、チャプタースキップ操作がユーザによりなされた場合の選択対象にはならないマークポイントである。
【０１７２】
エントリーマークは、リンクコマンドによるリンクが可能であり、尚且つチャプタースキップ操作がユーザによりなされた場合の選択対象になるマークポイントである。
【０１７３】
IGストリームのボタン情報内に組込まれたリンクコマンドは、プレイリストマーク情報を介した間接参照の形式で頭出し位置を指定している。
【０１７４】
＜基本ストリーム選択テーブル(STreamNumber＿table)＞
前記基本ストリーム選択テーブルは、プレイリストを構成する複数のプレイアイテムのうち、その基本ストリーム選択テーブルを包含しているのものがカレントプレイアイテムになった際、マルチパスのメインパスにて参照されているAVクリップに多重化されているES、及び、マルチパスのサブパスにて参照されているAVクリップに多重化されているESのうち、どれの再生を許可するかを、複数のストリーム種別毎に規定するテーブルである。ここでのストリーム種別とは、ピクチャインピクチャにおけるプライマリビデオストリーム、ピクチャインピクチャにおけるセカンダリビデオストリーム、サウンドミキシングにおけるプライマリオーディオストリーム、サウンドミキシングにおけるセカンダリオーディオストリーム、PG＿テキスト字幕ストリーム、IGストリームといった種別をいい、基本ストリーム選択テーブルは、これらのストリーム種別毎に、再生を許可すべきストリームを登録することができる。具体的には、基本ストリーム選択テーブルは、ストリーム登録の配列から構成される。ここでストリーム登録とは、基本ストリーム選択テーブルが帰属しているプレイアイテムがカレントプレイアイテムになった際、再生を許可すべきESがどのようなストリームであるかを、そのストリーム番号に対応付けて示すものであり、ストリーム登録は、論理的なストリーム番号に、ストリームエントリー及びストリーム属性の組合せを対応付けるというデータ構造になっている。
【０１７５】
ストリーム登録におけるストリーム番号は、１、２、３というような整数値で表現され、ストリーム番号の最大数は、対応するストリーム種別のストリーム本数となる。
【０１７６】
再生装置には、このストリーム種別毎に、ストリーム番号レジスタが存在しており、ここに格納されたストリーム番号で指示されるESが、現在再生対象になっているES、つまりカレントストリームになる。
【０１７７】
このストリームエントリー内に、再生すべきESのパケット識別子が記述される。ストリームエントリー内に、再生すべきESのパケット識別子を記述することができるので、ストリーム登録におけるストリーム番号を再生装置のストリーム番号レジスタに格納し、ストリーム登録におけるストリームエントリー内のパケット識別子に基づいて再生装置のPIDフィルタにパケットフィルタリングを再生装置に実行させる。こうすることで、基本ストリーム選択テーブルにおいて再生が許可されたESのTSパケットがデコーダに出力され、ESの再生がなされることになる。
【０１７８】
基本ストリーム選択テーブルにおけるこれらのストリーム登録は、ストリーム番号の順序に従って並べられており、ストリーム番号の順序に基づくストリーム登録の順位は、「再生装置が再生することができる」、「ストリームの言語属性が再生装置の言語設定と一致する」の条件を満たすストリームが複数存在する場合、ストリーム登録列におけるストリーム番号の順位によって、選択対象となるストリームが決定される。
【０１７９】
こうすることで、基本ストリーム選択テーブルにおけるストリーム登録の中に、再生装置が再生できないものが存在する場合、かかるストリームは再生から除外されることになり、また、「再生装置が再生することができる」、「ストリームの言語属性が再生装置の言語設定と一致する」との条件を満たすストリームが複数存在する場合は、それらのうちどれを優先的に選択すべきかという指針をオーサリング者は再生装置に伝えることができる。
【０１８０】
「再生装置が再生することができる」、「ストリームの言語属性が再生装置の言語設定と一致する」という条件を満たすストリームが存在するかどうかという判定や、「再生することができる」、「ストリームの言語属性が再生装置の言語設定と一致する」との条件を満たすストリームのうちどれを選択するかという選択手順は、ストリーム選択プロシージャと呼ばれる。ストリーム選択プロシージャは、カレントプレイアイテムが新しいものに切り替った際、また、ユーザからストリーム切り替えが要求された際、実行される。
【０１８１】
カレントプレイアイテムが新しいものに切り替わる等、再生装置の状態変化が生じた際、上述したような判定や選択を行い、再生装置のストリーム番号レジスタにストリーム番号を設定する一連の手順を「状態変化時に実行すべきプロシージャ」という。ストリーム番号レジスタは、ストリーム種別毎に存在するから、上記プロシージャは、ストリーム種別ごとに実行されることになる。
【０１８２】
ストリーム切り替え要求がユーザによってなされた場合、上述したような判定や選択を行い、再生装置のストリーム番号レジスタにストリーム番号を設定する一連の手順を「ストリーム変化が要求された際のプロシージャ」という。
【０１８３】
ディスクが装填された際、ストリーム番号レジスタをストリーム登録列における初期値に設定しておくとの手順を、「初期化」という。
【０１８４】
基本ストリーム選択テーブルにおけるストリーム登録列は、サブプレイアイテム情報によって指定されているストリームと、プレイアイテム情報によって指定されているストリームとに一律に優先順序を付与しているので、ビデオストリームとは多重化されていないストリームであっても、サブプレイアイテム情報によって指定されていれば、ビデオストリームと同期再生すべきストリームの選択にあたっての選択の対象となる。
【０１８５】
そして、サブプレイアイテム情報にて指定されたストリームを再生装置が再生することができ、尚且つ、サブプレイアイテム情報にて指定されたストリームの優先順序がビデオストリームと多重化されたグラフィクスストリームの優先順序よりも高い場合は、ビデオストリームと多重化されたストリームの代わりに、サブプレイアイテム情報にて指定されたストリームを再生に供することができる。
【０１８６】
基本ストリーム選択テーブルにおけるストリーム番号の用途を述べる。基本ストリーム選択テーブルに記載されたストリーム番号は、セットストリームコマンドのオペランドに使うことができる。
【０１８７】
セットストリームコマンドとは、オペランドに指定されたストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるコマンドであり、コマンドベースのプログラムが、ストリームの切り替えを再生装置に実行させる際に用いられる。
【０１８８】
また、ストリームチェンジUOの引き数やセットストリームAPIの引き数にも使用することができる。ストリームチェンジUOとは、引き数に指定されたストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるユーザ操作イベントである。
【０１８９】
セットストリームAPIとは、引き数に指定されたストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるAPIであり、オブジェクト指向プログラミング言語ベースのプログラムが、ストリーム切り替えを再生装置に実行させる際に用いられる。
【０１９０】
図７は、基本ストリーム選択テーブルの一例を示す。同図（ａ）は、ストリーム種別に、プライマリビデオストリーム、セカンダリビデオストリーム、PGストリーム、IGストリーム、セカンダリビデオストリーム、セカンダリオーディオストリームといった種別が存在する場合に、基本ストリーム選択テーブルに設けられる複数のストリーム登録列を示す。同図（ｂ）は、基本ストリーム選択テーブルにより、メインTS,サブTSから、どのようなESが分離されるかを示す。同図左側は、メインTS、サブTSを示し、真ん中は、基本ストリーム選択テーブルと、多重分離部とを示す。右側は、基本ストリーム選択テーブルに基づき分離されるプライマリビデオストリーム、プライマリオーディオストリーム、PGストリーム、IGストリーム、セカンダリビデオストリーム、セカンダリオーディオストリームを示す。
【０１９１】
続いて、エクステンションデータの詳細について説明する。
【０１９２】
MVCビデオストリームをプレイリスト情報が参照する場合、拡張ストリーム選択テーブルは、プレイリスト情報ファイルのエクステンションデータにおけるデータブロックに格納されねばならない。
【０１９３】
ディスク上のMVCビデオストリームをプレイリスト情報が参照する場合、サブパス情報の拡張情報（サブパスブロックエクステンション）は、プレイリスト情報ファイルにおけるエクステンションデータのデータブロックに格納されねねばならない。
【０１９４】
2D再生装置は、プレイリストファイルにおけるエクステンションデータに遭遇した際、未知のエクステンションデータを無視せねばならない。
【０１９５】
＜拡張ストリーム選択テーブル(STreamNumber＿table＿StereoScopic(SS))＞
拡張ストリーム選択テーブルは、立体視出力モードにおいてのみ、ストリーム選択テーブルと共に使用されるストリーム選択テーブルであり、プレイアイテムの再生や、これに関連するサブパスが再生されている際、選択することができるESを定義する。
【０１９６】
前記拡張ストリーム選択テーブルは、立体視出力モードにおいてのみ再生を許可すべきESを示し、ストリーム登録列を含む。ストリーム登録列における個々のストリーム登録情報は、ストリーム番号と、そのストリーム番号に対応するストリームエントリーと、ストリーム属性とを含む。拡張ストリーム選択テーブルは、立体視出力モード固有の拡張を意味するので、各プレイアイテム情報に拡張ストリーム選択テーブル(STN＿table＿SS)が関連付けられているプレイリストを「3Dプレイリスト」という。
【０１９７】
拡張ストリーム選択テーブルにおけるストリームエントリーは、再生装置が立体視出力モードに設定されている場合において、対応するストリーム番号が再生装置におけるストリーム番号レジスタに設定された際、再生装置が多重分離に用いるべきパケット識別子を示す。ここで、基本ストリーム選択テーブルとの違いは、拡張ストリーム選択テーブルにおけるストリーム登録列は、ストリーム選択プロシージャの対象にならない点である。つまり、基本ストリーム選択テーブルにおけるストリーム登録列におけるストリーム登録情報は、個々のESの優先順序と解釈され、何れかのストリーム登録情報内のストリーム番号が、ストリーム番号レジスタに書き込まれる。しかし拡張ストリーム選択テーブルにおけるストリーム登録列は、ストリーム選択プロシージャの対象とはならず、拡張ストリーム選択テーブルにおけるストリーム登録情報は、何れかのストリーム番号がストリーム番号レジスタに格納された際、そのストリーム番号に対応するストリームエントリー及びストリーム属性を取り出すという目的のみに用いられる。
【０１９８】
2D出力モードから3D出力モードへと出力モードが切り替った際、対象となるストリーム選択テーブルが、基本ストリーム選択テーブルから拡張ストリーム選択テーブルに切り替ったために、ストリーム選択プロシージャを実行したとなると、ストリーム番号の同一性を維持することができず、強いては、言語属性の同一性も失われる可能性がある。
【０１９９】
2D出力モードから3D出力モードへの切り替え時に、言語属性を始めとするストリーム属性の同一性を維持するため、拡張ストリーム選択テーブルの用途を、上記のものにも留めている。
【０２００】
拡張ストリーム選択テーブルにおけるストリーム番号の用途を述べる。拡張ストリーム選択テーブルに記載されたストリーム番号は、セットストリームコマンドやセット立体視ストリームコマンドのオペランドに使うことができる。
【０２０１】
セット立体視ストリームコマンドとは、オペランドに指定された立体視のためのストリーム番号をカレントストリーム番号としてストリーム番号レジスタに設定して、カレントストリームの切り替えを再生装置に命じるコマンドであり、コマンドベースのプログラムが、立体視ストリームへの切り替えを再生装置に実行させる際に用いられる。
【０２０２】
また、ストリームチェンジUOの引き数やセットストリームAPIの引き数にも使用することができる。
【０２０３】
前記拡張ストリーム選択テーブルは、ディペンデントビュービデオストリームのストリーム登録列、PGストリームのストリーム登録列、IGストリームのストリーム登録列から構成される。
【０２０４】
拡張ストリーム選択テーブルにおけるストリーム登録列は、ストリーム選択テーブルにおける同じストリーム種別のストリーム登録列に結合される。この結合は、ストリーム選択テーブルにおけるプライマリビデオストリームのストリーム登録列に、拡張ストリーム選択テーブルにおけるディペンデントビュービデオストリームのストリーム登録列を結合し、ストリーム選択テーブルにおけるPGストリームのストリーム登録列に、拡張ストリーム選択テーブルにおけるPGストリームのストリーム登録列を結合し、IGストリームのストリーム登録列に、拡張ストリーム選択テーブルにおけるIGストリームのストリーム登録列を結合することでなされる。
【０２０５】
上記の結合がなされれば、結合後のストリーム選択テーブルのうち、基本ストリーム選択テーブルにおけるストリーム登録列に対して上記プロシージャが実行される。
【０２０６】
図８は、拡張ストリーム選択テーブルの内部構成を示す。拡張ストリーム選択テーブルは、拡張ストリーム選択テーブルの全体長(length)、ポップアップ期間固定オフセット(Fixed＿offset＿during＿Popup)、各プレイアイテムにおけるそれぞれのストリーム種別に対応するストリーム登録列から構成される。
【０２０７】
ここでプレイアイテム＃1〜＃NというN個のプレイアイテムが存在する場合、プレイアイテム＃1〜＃Nのそれぞれに対応するストリーム登録列が、拡張ストリーム選択テーブルに設けられる。各プレイアイテムに対応するストリーム登録列は、ディペンデントビューストリーム登録列、PGストリーム登録列、IGストリーム登録列である。
【０２０８】
『Fixed＿offset＿during＿Popup』は、ポップアップ期間固定オフセットであり、IGストリームによるポップアップメニューがオンに設定されている場合、ビデオやPG＿テキスト字幕ストリームの再生タイプを制御する。この『Fixed＿offset＿during＿Popup』フィールドは、IGストリームにおけるuser＿interface＿modelフィールドがオン、つまり、ポップアップメニューのユーザインターフェイスがオンに設定されている場合、オンに設定される。IGストリームにおけるuser＿interface＿modelフィールドがオフ、つまり、AlwaysONのユーザインターフェイスに設定されている場合、オフに設定される。
【０２０９】
ポップアップ期間固定オフセット「=0」、つまり、IGストリームのユーザインターフェイスにおいてポップアップメニューがオフに設定されている場合、ビデオストリームはB−Dプレゼンテーションモードとなる。立体視PGストリームは、立体視再生タイプになる。1plane＋Offsetモードの再生時において、PG＿テキスト字幕ストリームは、1plane＋Offsetモードになる。
【０２１０】
ポップアップ期間固定オフセット「１」、つまり、IGストリームのポップアップメニューがオンである場合、ビデオストリームはB−Bプレゼンテーションモードとなる。立体視PGストリームは、1plane＋Offsetモードになり、1plane＋Offset用のPGストリームは、1plane＋Zero offset再生タイプとして再生される。
【０２１１】
1plane＋OffsetモードにおいてPG＿テキスト字幕ストリームは、1plane＋Zero offsetになる。
【０２１２】
『オフセットシーケンス本数情報(図中のnumber＿of＿offset＿sequence)』は、ディペンデントビューストリームにおけるオフセットシーケンスの個数を示す。
【０２１３】
拡張ストリーム選択テーブルにおけるこの値は、ディペンデントビューストリームに含まれるオフセットシーケンスの個数と同じになる。
【０２１４】
図９は、拡張ストリーム選択テーブルにおけるストリーム登録列を示す。
【０２１５】
図９（ａ）は、ディペンデントビュービデオストリームのストリーム登録列の内部構成を示す。ディペンデントビューストリームのストリーム登録列は、v(x)個のSS＿dependet＿view＿blockから構成される。ここで、v(x)とは、プレイアイテム情報＃xの基本ストリーム選択テーブルにおいて、再生が許可されているプライマリビデオストリームの本数である。図中の引き出し線は、ディペンデントビューストリームのストリーム登録列の内部構成をクローズアップして示している。引出線に示すように、SS＿dependet＿view＿blockは、ストリーム番号と、ストリームエントリーと、ストリーム属性と、オフセットシーケンス数(number＿of＿offset＿sequence)とから構成される。
【０２１６】
ストリームエントリーは、ディペンデントビュービデオストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、ディペンデントビュービデオストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおけるディペンデントビュービデオストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０２１７】
『ストリーム属性』は、ディペンデントビュービデオストリームの言語属性を含む。
【０２１８】
『オフセットシーケンス数(number＿of＿offset＿sequence)』は、ディペンデントビュービデオストリーム内に存在するオフセットの本数を示す。
【０２１９】
図９（ａ）においてディペンデントビュービデオストリームのストリーム登録列は、データ構造上、複数のディペンデントビュービデオストリームについてのストリーム登録情報を設けるものになっている。通常、ベースビュービデオストリームの本数は1つであるから、ディペンデントビュービデオストリームにおけるストリーム登録情報の個数も唯一つになる。
【０２２０】
図９（ｂ）は、PGストリームのストリーム登録列の内部構成を示す。PGストリームのストリーム登録列は、P(x)個のストリーム登録情報から構成される。ここで、P(x)とは、プレイアイテム情報＃xの基本ストリーム選択テーブルにおいて、再生が許可されているPGストリームの本数である。
【０２２１】
図中の引き出し線は、ストリーム登録列の共通の内部構成をクローズアップして示している。
【０２２２】
『PG＿テキスト字幕オフセットシーケンスIDレファレンス情報(PGtextST＿offset＿sequence＿id＿ref)』は、PG＿テキスト字幕ストリームオフセットシーケンスレファレンス情報であり、1plane＋OffsetモードのPG＿テキスト字幕ストリームについてのオフセットシーケンスを指示する。
【０２２３】
オフセットメタデータは、ディペンデントビュービデオストリームのアクセスユニットによって供給される。再生装置は、このフィールドによって提供されたオフセットを1plane＋Offsetモードタイプのプレゼンテーショングラフィクス(PG)プレーンに適用せねばならない。
【０２２４】
このフィールドが不定値(FF)である場合、再生装置はPGストリームプレーンメモリに、このオフセットを適用しない。
【０２２５】
『立体視PG存否フラグ(is＿SS＿PG)』は、PGストリームにおける左目用IGのストリームエントリー、右目用IGのストリームエントリー、ストリーム属性の有効性と、存在とを指示する。立体視PGストリームにおける構造が存在しない場合、このフィールドは0に設定されねばならない。立体視PGストリームにおける構造が存在する場合、このフィールドは1に設定されねばならない。
【０２２６】
『左目ストリームエントリー』は、左目PGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、左目PGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける左目PGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０２２７】
『右目ストリームエントリー』は、右目PGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、右目PGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける右目PGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。拡張ストリーム選択テーブルのストリーム登録情報におけるstream＿entry＿for＿depentdent＿viewによって参照されているストリームファイルが、基本ストリーム選択テーブルのストリームエントリーによって参照されているストリームファイルとは異なる場合、右目PGストリームを格納しているストリームファイルを改めて読み出さねばならない。
【０２２８】
『共通ストリーム属性』は、左目PGストリーム及び右目PGストリームの言語属性を含む。
【０２２９】
『立体視PG＿テキスト字幕オフセットシーケンスレファレンス情報(SS＿PG＿textST＿offset＿sequence＿id＿ref)』は、PG＿テキスト字幕ストリーム用のオフセットシーケンスを参照するためのレファレンス情報であり、PG＿テキスト字幕ストリームのためのオフセットシーケンスを指示する。再生装置は、このフィールドによって提供されたオフセットをPGプレーンに適用せねばならない。
【０２３０】
このフィールドが不定値(FF)である場合、再生装置はPGストリームプレーンメモリに、このオフセットを適用しない。
【０２３１】
図９（ｃ）は、IGストリームのストリーム登録列の内部構成を示す。IGストリームのストリーム登録列は、I(x)個のストリーム登録情報から構成される。ここで、I(x)とは、プレイアイテム情報＃xの基本ストリーム選択テーブルにおいて、再生が許可されているIGストリームの本数である。図中の引き出し線は、ストリーム登録列の共通の内部構成をクローズアップして示している。
【０２３２】
『IGオフセットシーケンスIDレファレンス情報(IG＿offset＿sequence＿id＿ref)』は、インタラクティブグラフィクスオフセットシーケンスレファレンスであり、1plane＋OffsetモードのIGストリームのシーケンスIDのレファレンスである。この値は、オフセットシーケンスに定義されているオフセットシーケンスIDを指示する。上述したように、オフセットメタデータは、ディペンデントビュービデオストリームによって供給される。再生装置は、このフィールドによって提供されたオフセットを1plane＋OffsetモードタイプのIGストリームに適用せねばならない。
【０２３３】
このフィールドが不定値(FF)である場合、再生装置はインタラクティブグラフィクススプレーンに、このオフセットを適用しない。
【０２３４】
『B-Bモード時のオフセット方向情報(IG＿Plane＿offset＿direction＿during＿BB＿video)』は、B−Bプレゼンテーションモードにおいてポップアップメニューのユーザインターフェイスで、IGストリームが再生されている間、1plane＋Offsetモードにおけるインタラクティブグラフィクス(IG)プレーンにおけるオフセット方向を指示する。
【０２３５】
値「０」でフロント設定、つまり、プレーンメモリは、TVと視聴者との間に存在し、レフトビュー期間においてプレーンは右方向に、ライトビュー期間においてプレーンは左方向にシフトされる。
【０２３６】
値「=1」でビハインド設定、つまり、プレーンメモリは、TV又はスクリーンの背後に存在し、レフトプレーンは左方向に、ライトプレーンは右方向にシフトされる。
【０２３７】
『B-Bモード時のオフセット値情報(IG＿Plane＿offset＿value＿during＿BB＿video)』は、B−BプレゼンテーションモードでポップアップメニューのユーザインターフェイスによってIGストリームが再生されている間、1plane＋OffsetモードにおけるIGプレーンのオフセット値を画素単位で指示する。
【０２３８】
『立体視IG存否フラグ(is＿SS＿IG)』は、、IGストリームにおける左目用IGのストリームエントリー、右目用IGのストリームエントリー、ストリーム属性の有効性と、存在とを指示する。立体視IGストリームのデータ構造が存在しない場合、このフィールドは値0に設定されねばならない。再生が許可されているIGストリームが立体視IGストリームである場合、このフィールドは、値1に設定されねばならない。
【０２３９】
『左目ストリームエントリー』は、左目用IGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、左目用IGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける左目用IGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。
【０２４０】
『右目ストリームエントリー』は、右目用IGストリームの再生パスが帰属しているサブパスを指定するサブパス識別子レファレンス(ref＿to＿Subpath＿id)と、右目用IGストリームが格納されているストリームファイルを指定するストリームファイルレファレンス(ref＿to＿subClip＿entry＿id)と、当該ストリームファイルにおける右目用IGストリームのパケット識別子(ref＿to＿stream＿PID＿subclip)とを含む。拡張ストリーム選択テーブルのストリーム登録情報におけるstream＿entry＿for＿depentdent＿viewによって参照されているストリームファイルが、基本ストリーム選択テーブルのストリームエントリーによって参照されているストリームファイルとは異なる場合、右目用IGストリームを格納しているストリームファイルを改めて読み出さねばならない。
【０２４１】
『共通ストリーム属性』は、左目用IGストリーム及び右目IGストリームの言語属性を含む。
【０２４２】
『立体視IGオフセットシーケンスレファレンス情報』は、立体視タイプのIGストリームのためのオフセットシーケンスIDのレファレンスであり、ディペンデントビュービデオストリームのオフセットメタデータにおけるオフセットシーケンスを指示する。再生装置は、このフィールドによって提供されたオフセットを立体視タイプのIGプレーンに適用せねばならない。
【０２４３】
このフィールドが不定値(FF)である場合、再生装置はIGプレーンに、このオフセットを適用しない。
【０２４４】
PG＿テキスト字幕ストリーム用のオフセットシーケンスのレファレンス情報及びIGストリーム用のオフセットシーケンスのレファレンス情報は、ストリーム番号に対応付けて、ストリーム登録情報に記載されているため、装置状態の変化時やストリーム変更要求の発生時にストリーム選択プロシージャが実行され、装置側の言語設定に応じたストリーム番号がストリーム番号レジスタに設定された場合、その新たなストリーム番号に対応したレファレンスによって指示されるオフセットシーケンスが、ビデオデコーダからシフト部に供給されることになる。こうすることで、再生装置における言語設定に応じた、最適なオフセットシーケンスがシフト部に供給されるので、1plane＋Offsetモードにおけるグラフィクスの奥行きを、再生装置の言語設定に応じた最適なものにすることができる。
【０２４５】
拡張ストリーム選択テーブルにおける制限について説明する。
【０２４６】
立体視ディペンデントビューブロックにおけるストリームエントリーは、プレイリストにおいて変化してはならない。
【０２４７】
立体視ディペンデントビューブロックにおけるストリームエントリーのタイプがサブパスによって使用されるESタイプ（ストリームタイプ＝２）であれば、サブパスIDレファレンスと、サブクリップエントリーIDレファレンス(ref＿to＿subclip＿entry＿id)とはプレイリストにおいて変化しない。
【０２４８】
ストリームエントリー、ベースビューのためのストリームエントリー、ディペンデントビューのためのストリームエントリーのタイプとして許されるESのタイプは、プレイアイテムによって使用されるAVクリップ内のES  (ストリームタイプ「=1」)、サブパスによって使用されるAVクリップ内のES(ストリームタイプ＝２)の2つタイプのみである。
【０２４９】
立体視ディペンデントビューブロックにおけるストリーム属性のストリーム符号化方式は、「0x20」に設定される。
【０２５０】
図１０は、基本ストリーム選択テーブル、拡張ストリーム選択テーブルによりメインTS、サブTSからどのようなESが多重分離されるかを示す。
【０２５１】
本図の真ん中には、多重分離部を示し、その上側には基本ストリーム選択テーブルと、拡張ストリーム選択テーブルとの組みを示す。左側にはメインTS、サブTS、右側には、多重分離されるベースビュービデオストリーム、ディペンデントビュービデオストリーム、左目PGストリーム、右目PGストリーム、左目用IGストリーム、右目用IGストリーム、プライマリオーディオストリームを示す。
【０２５２】
図１１は、2D出力モード、3D出力モードにおけるストリーム番号の割り当て変化を示す。
【０２５３】
縦欄は、プライマリビデオストリーム＃1というストリーム番号、プライマリオーディオストリーム＃1、＃2というストリーム番号、PG＿テキスト字幕ストリーム＃1、＃2、＃3というストリーム番号、IGストリーム＃1,＃2というストリーム番号を示している。
【０２５４】
左側の破線枠にのみ囲まれるESは、2D出力モードにおいてのみ、多重分離の対象になるESであり、ストリーム選択テーブル(STN＿table)によって再生が許可されているものを示す。
【０２５５】
右側の破線枠にのみ囲まれるESは、3D出力モードにおいて多重分離の対象になるESであり、拡張ストリーム選択テーブル(STN＿table＿SS)によって再生が許可されているものを示す。
【０２５６】
左側及び右側の破線枠の双方に囲まれるESは、2D出力モード及び3D出力モードにおいて多重分離の対象になるESを示す。
【０２５７】
ビデオストリーム＃1のストリーム番号だけに着目すると、MPEG4-MVCベースビュービデオストリームは、左右両方の破線枠に囲まれるので、2D出力モード及び3D出力モードの双方で再生対象になっていることがわかる。しかし、MPEG4-MVCディペンデントビュービデオストリームは、右側の破線枠のみに囲まれているので、3D出力モードでのみ再生されることがわかる。
【０２５８】
プライマリオーディオストリーム＃1、＃2のストリーム番号に着目すると、オーディオストリームは、左右両方の破線枠に囲まれるので、2D出力モード及び3D出力モードの双方で再生対象になっていることがわかる。
【０２５９】
PG＿テキスト字幕ストリームに着目すると、PGストリーム＃1、PGストリーム＃2は2DPGストリームであり、左右の破線枠によって囲まれている。これは、PGストリーム＃1、PGストリーム＃2が2D出力モード、3D出力モードの双方で再生対象になっていることがわかる。一方、左目PGストリーム、右目PGストリームは右側の破線枠のみに囲まれているので、3D出力モードでのみ再生されることがわかる。
【０２６０】
また、IGストリームに着目すると、IGストリーム＃1、IGストリーム＃2は2DIGストリームであり、左右の破線枠によって囲まれている。これは、IGストリーム＃1、IGストリーム＃2が2D出力モード及び3D出力モードで再生対象になっていることがわかる。一方、左目IGストリーム、右目IGストリームは右側の破線枠のみに囲まれているので、3D出力モードでのみ再生されることがわかる。
【０２６１】
以上より、3D出力モードにおいてビデオストリームというストリーム種別では、ディペンデントビュービデオストリームが再生対象として加わることがわかる。
【０２６２】
また3D出力モードにおいてPGストリームというストリーム種別では、再生対象が、左目PGストリーム及び右目PGストリームが追加されており、3D出力モードにおいてIGストリームというストリーム種別では左目IGストリーム及び右目IGストリームが追加されていることがわかる。左目PGストリーム及び右目PGストリームが、再生対象として加えられているのは、3D出力モードにおいて、左目PGストリーム及び右目PGストリームを用いて立体視再生を実現するためである。左目IGストリーム及び右目IGストリームが、再生対象として加えられているのは、3D出力モードにおいて、左目IGストリーム及び右目IGストリームを用いて立体視再生を実現するためである。
【０２６３】
以上が記録媒体についての説明である。続いて、再生装置の詳細について説明する。
【０２６４】
図１２は、再生装置の内部構成を示す。本図に示すように再生装置は、読出部２０１、メモリ２０２、レジスタセット２０３、デコーダ２０４、多重分離部２０５、プレーンメモリセット２０６、シフト部２０７、レイヤ合成部２０８、送受信部２０９、再生制御部２１０から構成される。本図の内部構成は、課題解決手段を具備した再生装置を実施するための必要最低限の構成要素を記述したに過ぎない。より詳細な内部構成については、後段の実施形態に説明の場を譲る。
【０２６５】
読出部２０１は、記録媒体からインデックステーブル、プログラムファイル、プレイリスト情報ファイル、ストリーム情報ファイル、ストリームファイルを読み出す。読出部２０１は、立体視インターリーブドストリームファイルの読み出しにあたって、3Dストリーム情報ファイルにおけるクリップベース情報内のエクステントスタートポイント情報と、クリップディペンデント情報内のエクステントスタートポイント情報とを用いて、立体視インターリーブドストリームファイルを、メインTSに対応するATCシーケンス１と、サブTSに対応するATCシーケンス２とに分割して、ATCシーケンス１と、ATCシーケンス２とを別々のリードバッファに格納するという処理を行う。この分割は、クリップディペンデント情報におけるエクステントスタートポイント情報に示されているソースパケット番号のパケット数だけ、立体視インターリーブドストリームファイルからソースパケットを対取り出してATCシーケンス１に追加するという処理と、クリップベース情報におけるエクステントスタートポイント情報に示されているソースパケット番号のパケット数だけ、立体視インターリーブドストリームファイルからソースパケットを取り出してATCシーケンス２に追加するという処理とを繰り返すことでなされる。
【０２６６】
メモリ２０２は、プレイリスト情報に含まれる基本ストリーム選択テーブルと、拡張ストリーム選択テーブルとを結合することで得られた結合ストリーム登録列を格納する。
【０２６７】
レジスタセット２０３は、再生装置が動作を行うための様々なレジスタから構成される。
【０２６８】
ストリーム種別毎のデコーダ２０４は、ビデオデコーダ２１１、PGデコーダ２１２、テキスト字幕デコーダ２１３、IGデコーダ２１４、オーディオデコーダから構成される。
【０２６９】
多重分離部２０５は、ソースパケットをTSパケットに変換するソースデパケッタイザ、パケットフィルタリングを実行するPIDフィルタを備え、3Dプレイリスト情報の基本ストリーム選択テーブルのストリームエントリーに記述されているパケット識別子を有するソースパケットを、TSパケットに変換した上でデコーダに出力し、3Dプレイリスト情報の立体視ストリーム選択テーブルのストリームエントリーに記述されているパケット識別子を有するソースパケットを、TSパケットに変換した上でデコーダに出力する。基本ストリーム選択テーブルの複数のエントリー及び拡張ストリーム選択テーブルの複数のエントリーのうち、どれのパケット識別子をもちいるかは、プレーヤ状態レジスタのうち、ストリーム番号レジスタの設定に従う。ストリーム番号レジスタとは、カレントのストリーム番号を格納しているレジスタである。
【０２７０】
プレーンメモリセット２０６は、複数のプレーンメモリから構成される。
【０２７１】
これらのプレーンメモリは、レイヤモデルを構成しており、個々のプレーンメモリの格納内容は、レイヤ合成に供される。プレーンメモリセットは、左目用プレーンメモリ、右目用プレーンメモリを含み、個々のアクセスユニットのベースビューのビューコンポーネントをデコードすることで得られた非圧縮のピクチャデータ、ディペンデントビューのビューコンポーネントをデコードすることで得られた非圧縮のピクチャデータが、これら左目用プレーンメモリ、右目用プレーンメモリに書き込まれる。この書き込みは、個々のアクセスユニットのプレゼンテーションタイムスタンプに示されている再生開始時刻の到来時になされる。
【０２７２】
左目用のプレーンメモリ、右目用プレーンメモリのうち、どちらにデコード後のピクチャデータを書き込むかは、プレイリスト情報におけるベースビューインディケータに従う。ベースビューインディケータが、ベースビュービデオストリームを「左目用」として指定していれば、ベースビュービデオストリームのビューコンポーネントとなるピクチャデータが左目用プレーンメモリに書き込まれ、ディペンデントビュービデオストリームのビューコンポーネントとなるピクチャデータが右目用のプレーンメモリに書き込まれる。
【０２７３】
ベースビューインディケータが、ベースビュービデオストリームを「右目用」として指定していれば、ベースビュービデオストリームのビューコンポーネントであるピクチャデータが右目用のプレーンメモリに書き込まれ、ディペンデントビュービデオストリームのビューコンポーネントであるピクチャデータが左目用のプレーンメモリに書き込まれる。そして、これらのビューコンポーネントは、順次表示装置に出力される。具体的にいうと、一個のフレーム期間において、左目用プレーンメモリのピクチャデータと、右目用プレーンメモリのピクチャデータとを同時に出力する。
【０２７４】
シフト部２０７は、画素の座標のシフトを実行する。
【０２７５】
レイヤ合成部２０８は、複数のプレーンメモリにおけるレイヤ合成を行う。
【０２７６】
送受信部２０９は、ホームシアターシステムにおける他の機器とインターフェイスを介して接続された際、ネゴシエーションフェーズを経て、データ伝送フェーズに移行し、データ伝送を行う。
【０２７７】
このネゴシエーションフェーズは、相手側機器のケーパビリティ(デコード能力、再生能力、表示周波数を含む)を把握して、プレーヤ設定レジスタに設定しておき、以降の伝送のための伝送方式を定めるものであり、互いの装置の正当性を確認し合う相互認証フェーズを含む。このネゴシエーションフェーズを経て、レイヤ合成がなされたピクチャデータにおける一ライン分の非圧縮・平文形式の画素データを、表示装置における水平同期期間に従い表示装置に高い転送レートで転送する。一方、表示装置における水平帰線期間、及び、垂直帰線期間において、再生装置と接続された他の装置(表示装置のみならずアンプ、スピーカを含む)に、非圧縮・平文形式のオーディオデータを転送する。こうすることで、表示装置、アンプ、スピーカといった機器は、非圧縮・平文形式のピクチャデータ、非圧縮・平文形式のオーディオデータを受け取ることができ、再生出力を実現することができる。また、相手側機器にデコード能力が存在する場合、ビデオストリーム、オーディオストリームのパススルー伝送が可能になる。パススルー伝送では、ビデオストリーム、オーディオストリームを圧縮・暗号化形式のまま伝送することができる。
【０２７８】
再生制御部２１０は、ビデオストリームの時間軸における任意の時点からのランダムアクセスを実行する。具体的には、ビデオストリームの時間軸における任意の時点からの再生が命じられた場合、3Dストリーム情報ファイルにおける基本エントリーマップと、拡張エントリーマップとを用いて、その任意の時点に対応するアクセスユニットのソースパケット番号をサーチする。かかるアクセスユニットは、ベースビュービデオストリームのビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントの組みを含むものであり、上記サーチによって、当該アクセスユニットについてのアクセスユニットデリミターを格納したソースパケットのソースパケット番号が特定される。かかるソースパケット番号からの読み出し、及び、デコードを実行することでランダムアクセスがなされる。3Dプレイリスト再生にあたっては、3Dプレイリスト情報のメインパス情報にて規定されているインタイム、アウトタイムと、サブパス情報にて規定されているインタイム、アウトタイムとを用いて、メインTS、サブTSのそれぞれに対してランダムアクセスを実行することで、プレイリスト再生を開始する。
【０２７９】
ビデオデコーダ２１１は、デコーダセット２０４におけるデコーダのうち、代表的なデコーダであり、ディペンデントビュービデオストリームを構成するビューコンポーネントをプリロードした上、ベースビュービデオストリーム内のクローズGOPの先頭に位置するデコーダリフレッシュを意図したピクチャタイプ(IDRタイプ)のビューコンポーネントをデコードする。このデコードにあたって、コーデッドデータバッファ、デコードデータバッファを全クリアする。こうしてIDRタイプのビューコンポーネントをデコードした後、このビューコンポーネントとの相関性に基づき圧縮符号化されているベースビュービデオストリームの後続のビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントをデコードする。デコードによって当該ビューコンポーネントについての非圧縮のピクチャデータが得られれば、デコードデータバッファに格納し、かかるピクチャデータを参照ピクチャとする。
【０２８０】
この参照ピクチャを用いて、ベースビュービデオストリームの後続のビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントについて、動き補償を行う。動き補償によって、ベースビュービデオストリームの後続のビューコンポーネント、及び、ディペンデントビュービデオストリームのビューコンポーネントについて、非圧縮のピクチャデータが得られれば、これらをデコードデータバッファに格納し参照ピクチャとする。以上のデコードは、個々のアクセスユニットのデコードタイムスタンプに示されているデコード開始時刻が到来時になされる。
【０２８１】
以下、PGデコーダ２１２、テキスト字幕デコーダ２１３、IGデコーダ２１４と、これらのデコーダのデコードの対象となるストリームの内部構成について説明する。
【０２８２】
PGストリームにおけるデコーダの構成は、1plane＋Offset方式を採用する場合、１デコーダ＋１プレーン構成になる。3D-LR方式を採用する場合、２デコーダ＋２プレーン構成になる。
【０２８３】
同じく、IGストリームにおけるデコーダ構成は、3D-LR方式を採用する場合、２デコーダ＋２プレーン構成になる。一方、1plane＋Offset方式を採用する場合、１デコーダ＋１プレーン構成になる。
【０２８４】
テキスト字幕ストリームにおけるデコーダ構成では3D-LR方式が存在せず、1plane＋Offsetモードである場合、１デコーダ＋１プレーン構成になる。
【０２８５】
始めに、PGストリームの内部構成と、PGストリームをデコードするPGデコーダの内部構成とについて説明する。
【０２８６】
左目用PGストリーム、右目用PGストリームは、何れも複数のディスプレイセットを含む。ディスプレイセットとは、一個の画面表示を構成する機能セグメントの集まりのことである。機能セグメントは、約2KバイトのPESパケットのペイロードに格納されてデコーダに供給され、DTS、PTSを用いて、再生制御がなされる処理単位のことである。
【０２８７】
ディスプレイセットには、以下の類型がある。
【０２８８】
Ａ.エポックスタートのディスプレイセット
エポックスタートのディスプレイセットとは、グラフィクスデコーダにおけるコンポジションバッファ、コードデータバッファ、グラフィクスプレーンをリセットして、メモリ管理を開始させる機能セグメントの集まりであり、画面構成に必要な機能セグメントを全て含んでいる。
【０２８９】
Ｂ.ノーマルケースのディスプレイセット
ノーマルケースのディスプレイセットとは、グラフィクスデコーダにおけるコンポジションバッファ、コードデータバッファ、グラフィクスプレーンのメモリ管理を継続したまま画面構成を行うディスプレイセットであり、先行するディスプレイセットからの差分となる機能セグメントを含んでいる。
【０２９０】
Ｃ.アクジッションポイントのディスプレイセット
アクジッションポイントのディスプレイセットとは、画面構成に必要な機能セグメントを全て含むディスプレイセットであるが、グラフィクスデコーダにおけるコンポジションバッファ、コードデータバッファ、グラフィクスプレーンのメモリ管理をリセットさせないディスプレイセットである。このアクジッションポイントのディスプレイセットには、前のディスプレイセットとは異なる内容の機能セグメントが存在してもよい。
【０２９１】
Ｄ.エポックコンティニューのディスプレイセット
エポックコンティニューのディスプレイセットとは、PGストリームの再生を許可しているプレイアイテムと、その直前のプレイアイテムとの接続形態が、クリーンブレークを伴うシームレス接続(CC=5)である場合、再生装置におけるコンポジションバッファ、コードデータバッファ、オブジェクトバッファ、グラフィクスプレーンにおけるメモリ管理を、そのまま継続させる旨を示す。この際、オブジェクトバッファ、グラフィクスプレーン上に得られたグラフィクスオブジェクトは、廃棄されることなく、オブジェクトバッファ、グラフィクスプレーン上で存続する。
【０２９２】
左目用と、右目用とでは、STCシーケンスにおける再生時間軸の同一時点に、これらのディスプレイセットの始点・終点が割り当てられている。そして、左目用PGストリームと、右目用PGストリームとでは、時間軸上の同じ時点に存在するディスプレイセットの類型は、同一になっている。つまり左目用側のディスプレイセットがエポックスタートのディスプレイセットであるなら、STCシーケンスの時間軸において同じ時点の右目用側のディスプレイセットは、エポックスタートのディスプレイセットになる。
【０２９３】
また、左目用側のディスプレイセットがアクジッションポイントのディスプレイセットであるなら、STCシーケンスの時間軸において同じ時点の右目用側のアクジッションポイントのディスプレイセットも、エポックスタートのディスプレイセットになる。
【０２９４】
各ディスプレイセットは、複数の機能セグメントを含む。この複数の機能セグメントには以下のものがある。
【０２９５】
(1)オブジェクト定義セグメント
オブジェクト定義セグメントは、グラフィクスオブジェクトを定義する機能セグメントである。グラフィクス定義セグメントは、コード値と、そのコード値のランレングスとを用いることで、グラフィクスオブジェクトを定義している。
【０２９６】
(2)パレット定義セグメント
パレット定義セグメントは、各コード値と、輝度、赤色差・青色差との対応関係を示したパレットデータを含む。左目用グラフィクスストリームのパレット定義セグメントと、右目用グラフィクスストリームのパレット定義セグメントとでは、コード値と、輝度及び色差との対応関係が同一の内容に設定されている。
【０２９７】
(3)ウィンドゥ定義セグメント
ウィンドゥ定義セグメントは、非圧縮のグラフィクスオブジェクトを画面上に展開するためのプレーンメモリにおいて、ウィンドゥと呼ばれる矩形枠を定義する機能セグメントである。グラフィクスオブジェクトの描画は、このプレーンメモリの内部で制限されており、このウィンドゥの外部では、グラフィクスオブジェクトの描画は行えない。
【０２９８】
プレーンメモリの一部をグラフィクスの表示のためのウィンドゥとして指定するので、再生装置は、プレーン全体のグラフィクス描画を行う必要はない。ある限られた大きさのウィンドゥに対してのみ、グラフィクス描画を行えばよい。表示用の平面のうち、ウィンドゥ以外の部分の描画を省くことができるので、再生装置側のソフトウェアの負担は遥かに軽くなる。
【０２９９】
(4)画面構成セグメント
画面構成セグメントは、グラフィクスオブジェクトを用いた画面構成を規定する機能セグメントであり、グラフィクスデコーダにおけるコンポジションコントローラに対する複数の制御項目を含む。画面構成セグメントは、グラフィクスストリームにおけるディスプレイセットの詳細を規定すると共に、グラフィクスオブジェクトを用いた画面構成を規定する機能セグメントである。かかる画面構成には、Cut-In/Out、Fade-In/Out、Color  Change、Scroll、Wipe-In/Outといったものがあり、画面構成セグメントによる画面構成を伴うことにより、ある字幕を徐々に消去しつつ、次の字幕を表示させるという表示効果が実現可能になる。
【０３００】
(5)エンドセグメント
1つのディスプレイセットに属する複数の機能セグメントの最後尾に位置する機能セグメントである。再生装置は、画面構成セグメントからこのエンドセグメントまでが、1つのディスプレイセットを構成する機能セグメントであるとして解釈する。
【０３０１】
PGストリームにおいてディスプレイセットの開始時点は、画面構成セグメントを格納したPESパケットのDTSによって特定され、ディスプレイセットの終了時点は、画面構成セグメントを格納したPESパケットのPTSによって特定される。
【０３０２】
左目用グラフィクスストリーム及び右目用グラフィクスストリームは、パケッタイズドエレメンタリストリーム(PES)であり、画面構成セグメントは、PESパケットに格納され、画面構成セグメントを格納したPESパケットのPTSは、画面構成セグメントが属するディスプレイセットによる表示を何時実行するかを示す。
【０３０３】
画面構成セグメントを格納したPESパケットのPTSの値は、左目用ビデオストリームと、右目用ビデオストリームとで同一の内容になっている。
【０３０４】
・PGデコーダのデコーダモデル
PGデコーダは、PGストリームから読み出される機能セグメントを格納する「コーデッドデータバッファ」と、画面構成セグメントをデコードしてグラフィクスオブジェクトを得る「ストリームグラフィクスプロセッサ」と、デコードにより得られたグラフィクスオブジェクトを格納する「オブジェクトバッファ」と、画面構成セグメントを格納する「コンポジションバッファ」と、コンポジションバッファに格納された画面構成セグメントを解読して、これらの画面構成セグメントにおける制御項目に基づき、オブジェクトバッファに得られたグラフィクスオブジェクトを用いてグラフィクスプレーン上で画面構成を行う「コンポジションコントローラ」とを含む。
【０３０５】
このグラフィクスプレーンの前段には、機能セグメントを構成するTSパケットの入力速度を調整するためのトランスポートバッファが存在する。
【０３０６】
グラフィクスデコーダの後段には、グラフィクスプレーンと、パレット定義セグメントに基づいて、グラフィクスプレーンに格納されたグラフィクスオブジェクトを構成する画素コードを、輝度・色差に変換するCLUT部と、プレーンシフトのためのシフト部とが存在する。
【０３０７】
PGストリームにおけるパイプラインは、グラフィクスデコーダあるディスプレイセットに属するオブジェクト定義セグメントをデコードしてグラフィクスオブジェクトをオブジェクトバッファに書き込む処理と、先行するディスプレイセットに属するオブジェクト定義セグメントをデコードすることにより得られたグラフィクスオブジェクトをオブジェクトバッファからプレーンメモリに書き込む処理とを同時に実行することでなされる。
【０３０８】
図１３は、PGデコーダの内部構成を示す。同図（ａ）は、1plane＋Offsetモード方式で表示するためのデコーダモデルである。同図（ｂ）は、LR方式のデータを表示する場合のデコーダモデルである。
【０３０９】
本図において、PGデコーダの本体にあたる部分は黒枠で囲こみ、PGデコーダ後段にあたる部分は一点鎖線で囲っている。
【０３１０】
同図（ａ）では、PGデコーダは１デコーダ構成になっており、グラフィクスプレーンも1プレーン構成になっている。しかしグラフィクスプレーンの出力が、左目用、右目用のそれぞれに別れていて、個々の左目用出力、右目用出力に対して、シフト部が付加される。
【０３１１】
同図（ｂ）では、トランスポートバッファ−PGデコーダ−グラフィクスプレーン−CLUT部が2組み存在していて、左目用ストリーム、右目用ストリームをそれぞれ独立に処理することができる。
【０３１２】
オフセットシーケンスは右目用ビデオストリームに含まれているので、プレーンオフセット形式では、PGデコーダは１デコーダ構成になり、この1つのPGデコーダの出力が、左目用と右目用とに切り替えられる。
【０３１３】
PGデコーダの2D/3D切り替え時の動作は以下の通りである。
【０３１４】
１.1plane＋Offsetモードと2Dモードとの相互切り替え時は、シームレスに切り替えられる。これは、Offsetを無効化することでなされる。
【０３１５】
２.3D-LRモードと、2Dモードとでは、PID切り替えが伴うため、一端字幕が消える。これはストリーム切り替えと同じである。
【０３１６】
以上がPGデコーダについての説明である。続いて、テキスト字幕デコーダの詳細について説明する。
【０３１７】
・テキスト字幕デコーダのデコーダモデル
テキスト字幕ストリームは、複数の字幕記述データから構成される。
【０３１８】
テキスト字幕デコーダは、字幕記述データから、テキストコードと、制御情報とを分離する「字幕プロセッサ」と、字幕記述データから分離されたテキストコードを格納する「管理情報バッファ」と、フォントデータを用いて、管理情報バッファ内のテキストコードをビットマップに展開する「テキストレンダー」と、展開により得られたビットマップを格納する「オブジェクトバッファ」と、字幕記述データから分離された制御情報を用いて、時間軸に沿ったテキスト字幕再生の制御を実行する「描画制御部」とを含む。
【０３１９】
テキスト字幕デコーダの前段には、フォントデータのプリロードを行う「フォントプリロードバッファ」、テキスト字幕ストリームを構成するTSパケットの入力速度を調整する「TSバッファ」、プレイアイテムの再生に先立ち、テキスト字幕ストリームをプリロードしておくための「字幕プリロードバッファ」が存在する。
【０３２０】
グラフィクスデコーダの後段には、「グラフィクスプレーン」と、パレット定義セグメントに基づいて、グラフィクスプレーンに格納されたグラフィクスオブジェクトを構成する画素コードを、輝度・色差に変換する「CLUT部」と、プレーンシフトのためのシフト部が存在する。
【０３２１】
図１４は、テキスト字幕デコーダの内部構成を示す。同図（ａ）は、1plane＋Offsetモードにおけるテキスト字幕デコーダのデコーダモデルを示し、同図（ｂ）は、3D-LR方式におけるテキスト字幕デコーダのデコーダモデルを示す。本図において、テキスト字幕デコーダ本体にあたる部分は黒枠で囲こみ、テキスト字幕デコーダ後段にあたる部分は一点鎖線で囲んでいる。テキスト字幕デコーダ前段にあたる部分は、破線枠で囲んでいる。
【０３２２】
同図（ａ）では、グラフィクスプレーンの出力が、左目用、右目用のそれぞれに別れていて、個々の左目用出力、右目用出力に対して、シフト部が付加される。
【０３２３】
同図（ｂ）では、左目用のグラフィクスプレーンと、右目用のグラフィクスプレーンとが存在していて、テキスト字幕デコーダによって展開されたビットマップを、これらのそれぞれのグラフィクスプレーンに書き込む。
【０３２４】
テキスト字幕ストリームは、PGストリームと異なり、グラフィクスデータをビットマップとして送るのではなく、フォントデータと文字コードを送ることにより、レンダリングエンジンで字幕を生成するから、字幕の立体視は、1plane＋Offsetモードによって実現する。
【０３２５】
以上がテキスト字幕ストリーム及びテキスト字幕デコーダについての説明である。続いて、IGストリームの内部構成と、IGデコーダの構成とについて説明する。
【０３２６】
・IGストリーム
左目用IGストリーム、右目用IGストリームは何れも複数のディスプレイセットを含み、各ディスプレイセットは、複数の機能セグメントを含む。ディスプレイセットには、PGストリームと同様、エポックスタートのディスプレイセット、ノーマルケースのディスプレイセット、アクジッションポイントのディスプレイセット、エポックコンティニューのディスプレイセットが存在する
これらのディスプレイセットに属する複数の機能セグメントには以下の種類がある。
【０３２７】
(1)オブジェクト定義セグメント
このオブジェクト定義セグメントは、PGストリームのものと同じである但しIGストリームのグラフィクスオブジェクトは、ページのインエフェクト、アウトエフェクト、ボタン部材のノーマル状態、セレクテッド状態、アクティブ状態を定義するものである。オブジェクト定義セグメントは、ボタン部材の同じ状態を定義するもの同士、同じエフェクト映像を構成するもの同士、グループ化されている。同じ状態を定義するオブジェクト定義セグメントを寄せ集めたグループをグラフィクスデータ集合という。
【０３２８】
(2)パレット定義セグメント
パレット定義セグメントは、PGストリームのものと同じである。
【０３２９】
(3)対話制御セグメント
対話制御セグメントは、複数のページ情報を含み、複数のページ情報は、マルチページメニューの画面構成を規定する情報であり、各ページ情報は、エフェクトシーケンスと、複数のボタン情報と、パレット識別子の参照値とを含む。
【０３３０】
ボタン情報は、グラフィクスオブジェクトをボタン部材の一状態として表示させることにより、マルチページメニューを構成する各ページ上で対話的な画面構成を実現する情報である。
【０３３１】
エフェクトシーケンスは、グラフィクスオブジェクトを用いて、ページ情報に対応するページの表示に先立ち再生されるインエフェクト、又は、当該ページの表示後に再生されるアウトエフェクトを構成するものであり、エフェクト情報を含む。
【０３３２】
エフェクト情報は、インエフェクト又はアウトエフェクトを再生するにあたっての個々の画面構成を規定する情報であり、グラフィクスプレーン上のウィンドゥ定義セグメントで定義されたウィンドゥ（部分領域）においてどのような画面構成を実行すべきかを規定する画面構成オブジェクトと、同領域における次の画面構成との時間間隔を示すエフェクト期間情報とを含む。
【０３３３】
エフェクトシーケンスにおける画面構成オブジェクトは、PGストリームの画面構成セグメントと同じような制御内容を規定する。オブジェクト定義セグメントのうち、前記インエフェクトに用いられるグラフィクスオブジェクトを定義するものは、グラフィクスデータ列において、ボタン部材に用いられるグラフィクスオブジェクトを定義するオブジェクト定義セグメントより前に配置されている。
【０３３４】
ページ情報における各ボタン情報は、グラフィクスオブジェクトをボタン部材の一状態として表示させることにより、マルチページメニューを構成する各ページ上で対話的な画面構成を実現する情報である。前記ボタン情報はセットボタンページコマンドを含み、セットボタンページコマンドは、対応するボタン部材がアクティブ状態になった際、ファーストページ以外の他のページを、カレントページとして設定する処理を再生装置に行わせるコマンドである。
【０３３５】
IGストリームの再生時において、プレーンシフトにおけるオフセットをページ毎に変更させたい場合は、ボタン情報にオフセットを変更するナビゲーションコマンド組込んでおき、該当するボタン情報において、ナビゲーションコマンドのオートアクティベートを規定しておく。これにより、IGストリームのストリーム登録情報に規定されているオフセットの値や方向を自動的に変更できるようにする。
【０３３６】
(4)エンドセグメント
1つのディスプレイセットに属する複数の機能セグメントの最後尾に位置する機能セグメントである。対話制御セグメントからこのエンドセグメントまでが、1つのディスプレイセットを構成する機能セグメントであるとして解釈される。
【０３３７】
左目用グラフィクスストリームと、右目用グラフィクスストリームとにおいて、同一となる対話制御セグメントの制御項目には、ボタン近接情報、セレクションタイムアウトタイムスタンプ、ユーザタイムアウトディレーション、コンポジションタイムアウト情報がある。
【０３３８】
１.ボタン近接情報
ボタン近接情報は、あるボタンがセレクテッド状態になっていて、上下左右方向の何れかを指示するキー操作があった場合、どのボタンをセレクテッド状態にすべきかを指定する情報である。
【０３３９】
２.セレクションタイムアウトタイムスタンプ
セレクションタイムアウトタイムスタンプは、カレントページにおけるボタン部材を自動的にアクティベートして、セットボタンページコマンドを再生装置に実行させるためのタイムアウト時間を示す。
【０３４０】
３.ユーザタイムアウトディレーション
ユーザタイムアウトディレーションは、カレントページをファーストページに戻して、ファーストページのみが表示されている状態にするためのタイムアウト時間を示す。
【０３４１】
４.コンポジションタイムアウト情報
コンポジションタイムアウト情報は、対話制御セグメントによる対話的な画面表示を終了させる時間を示す。IGストリームにおいてディスプレイセットの開始時点は、対話制御セグメントを格納したPESパケットのDTSによって特定され、ディスプレイセットの終了時点は、対話制御セグメントのコンポジションタイムアウト時刻によって特定される。左目用、右目用では、これらのDTSと、コンポジションタイムアウト時刻とは同一時点に設定される。
【０３４２】
・IGデコーダのデコーダモデル
IGデコーダは、IGストリームから読み出されう機能セグメントを格納する「コーデッドデータバッファ」と、画面構成セグメントをデコードしてグラフィクスオブジェクトを得る「ストリームグラフィクスプロセッサ」と、デコードにより得られたグラフィクスオブジェクトを格納する「オブジェクトバッファ」と、画面構成セグメントを格納する「コンポジションバッファ」と、コンポジションバッファに格納された画面構成セグメントを解読して、これらの画面構成セグメントにおける制御項目に基づき、オブジェクトバッファに得られたグラフィクスオブジェクトを用いてグラフィクスプレーン上で画面構成を行う「コンポジションコントローラ」とを含む。
【０３４３】
このグラフィクスプレーンの前段には、機能セグメントを構成するTSパケットの入力速度を調整するための「トランスポートバッファ」が存在する。
【０３４４】
グラフィクスデコーダの後段には、「グラフィクスプレーン」と、パレット定義セグメントに基づいて、グラフィクスプレーンに格納されたグラフィクスオブジェクトを構成する画素コードを、輝度・色差に変換する「CLUT部」と、プレーンシフトのための「シフト部」とが存在する。
【０３４５】
図１５は、IGデコーダのデコーダモデルを示す。本図では、IGデコーダ本体にあたる部分は黒枠で囲こみ、グラフィクスデコーダ後段にあたる部分は一点鎖線で囲んでいる。IGデコーダ前段にあたる部分は、破線枠で囲んでいる。
【０３４６】
図１５（ａ）は、2D形式のIGストリームを1plane＋Offsetモード方式によってLR形式で表示するためのデコーダモデルである。同図（ｂ）は、IGストリームのデコーダモデルであるが、LR方式のデータを表示する場合のデコーダモデルである。  
【０３４７】
これらのデコーダでは、メニューグラフィクスの深度情報をプログラムから制御するために、システムパラメータの値をオフセットに反映するための回路を含んでいる。
【０３４８】
同図（ｂ）は、2デコーダモデルであり、コマンドによりoffset値の変更が可能になる。よってメニューの深度情報をコマンドで変えることができる。Offset値は左右異なる値も与えられる。一方、Depth方式の場合、Offsetは無効になる。
【０３４９】
グラフィクスデコーダにおけるコンポジションコントローラは、対話画面に存在するボタン部材のうち、カレントボタンになるものを、セレクテッド状態に対応するグラフィクスデータ集合のグラフィクスデータを用いて表示し、それ以外のボタン部材を、ノーマル状態に対応するグラフィクスデータ集合を用いて表示することで、対話画面の初期表示を実現する。
【０３５０】
上下左右の４方向の何れかを指定する旨のユーザ操作があった場合、カレントボタンの周辺に位置するノーマル状態のボタン部材のうち、ユーザ操作により指定された方向に存在するものの番号をボタン番号レジスタに書き込み、当該書き込みによって、新たにカレントボタンになったボタン部材をノーマル状態からセレクテッド状態に変化させる。
【０３５１】
対話画面においてセレクテッド状態になっているボタン部材をアクティブ状態に変化させる旨のユーザ操作があった場合、当該アクティブ状態を構成するグラフィクスデータをグラフィクスデータ集合から取り出して表示に供することで対話画面の更新を実現する。          
【０３５２】
これらの対話画面の更新は、左目用、右目用で共通に実行にする必要があるので、２デコーダモデルにおいて、コンポジションコントローラを、左目用のグラフィクスデコーダと、右目用のグラフィクスデコーダとで共通化することが望ましい。
【０３５３】
この場合、立体視IGストリームにおける左目用・右目用のナビゲーションコマンドは同一化し、3D用と2D用のグラフィクスオブジェクトのボタン構成を同一にすることで、相互切り替えを実現する。
【０３５４】
2DIGストリームと、立体視IGストリームとでは、ナビゲーションコマンドおよびボタン情報の属性・数などが同じであれば、グラフィクスオブジェクトの表示のみの切り替えが可能となる。3D-LRモードからL画像のみへの切り替えでは、再ロードなしに切り替え可能だが、表示位置が偏る可能性がある。どちらを採用するかのタイトル制作者の意図をフラグに示させておき、このフラグに基づき再生装置が切り替えを行うことが望ましい。
【０３５５】
以下に、モード切り替え時における留意事項をまとめた。
【０３５６】
・1plane＋Offsetモードと、2Dモードとの切り替えにおいては再ロードは発生しない。これはIGストリームのロードは必要ではなく、Offsetの無効化のみとなるからである。
【０３５７】
・3D-LRモードと、2Dモードとの切り替えにおいて、ストリームが異なるため、再ロードが発生する。
【０３５８】
以上がIGストリーム及びIGデコーダについての説明である。続いて、プレーンメモリの詳細について説明する。
【０３５９】
1plane＋Offsetモード方式におけるプレーンメモリ構成について説明する。
【０３６０】
プレーンメモリのレイヤ合成は、プレーンメモリのレイヤモデルにおいて、階層間のプレーンメモリに格納されている画素データの画素値を重畳させるという処理を、レイヤモデルにおける階層間の全ての組合せに対して実行することでなされる。合成部２０８によるレイヤ合成は、プレーンメモリのレイヤモデルにおいて、2つの階層のプレーンメモリに格納されている画素データの画素値を重畳させるという処理を、レイヤモデルにおける2つの階層の全ての組合せに対して実行することでなされる。
【０３６１】
階層間の重畳は、ある階層に位置するプレーンメモリのライン単位の画素値に透過率αを重みとして乗じるとともに、その下位階層に位置するプレーンメモリのライン単位の画素値に（１−透過率α）という重みを乗じて  これら輝度の重み付けがなされた画素値同士を加算し、加算結果を、その階層におけるライン単位の画素の画素値とする処理である。この階層間の重畳を、レイヤモデルの隣接する2つ階層に位置するライン単位の画素同士で繰り返し実行することにより、上記レイヤ合成は実現される。
【０３６２】
プレーンメモリ後段は、上述したようなCLUT部、シフト部の他、レイヤ合成を実現するため、個々の画素値に等価率を乗算するための乗算部、画素同士の加算を行うための加算部を含む。
【０３６３】
図１６は、デコーダモデルの出力を合成し、3D-LR方式で出力するための回路構成を示す。ビデオプレーン、PGプレーン、IGプレーンのレイヤモデルは黒枠で囲こみ、プレーンメモリ後段にあたる部分は一点鎖線で囲んでいる。本図からも明らかなように、上述したようなレイヤモデルは、２組み存在していることがわかる。また、プレーンメモリ後段にあたる部位も、２組み存在していることがわかる。
【０３６４】
レイヤモデル、プレーンメモリ後段が2組み存在することにより、3D-LR方式におけるプレーンメモリ構成は、ビデオプレーン、PGプレーン、IGプレーンのそれぞれが、左目用と、右目用とに別れていて、これらのプレーンメモリの出力をレイヤ合成を、左目用、右目用のそれぞれについて実行するようになっている。
【０３６５】
図１７は、これらのデコーダモデルの出力を合成し、1plane＋Offsetモード方式で出力するための回路構成を示している。  
【０３６６】
左目ビデオプレーン、右目ビデオプレーン、PGプレーン、IGプレーンのレイヤモデルは黒枠で囲こみ、プレーンメモリ後段にあたる部分は一点鎖線で囲んでいる。本図からも明らかなように、上述したようなレイヤモデルは、１組みだけが存在していることがわかる。また、プレーンメモリ後段にあたる部位は、２組み存在している。
【０３６７】
1plane＋Offsetモード方式では、ビデオプレーンは、左目用のものと、右目用のものとが準備されている。PGプレーン、IGプレーンについては、左目用、右目用のそれぞれに別れておらず、左目用、右目用で共通の１枚のプレーンメモリのみが存在する。そして、これらの左目用出力、右目用出力のそれぞれに対して上述したようなレイヤ合成がなされるようになっている。
【０３６８】
再生装置は、B−Dプレゼンテーションモード、1plane＋Offsetモードの双方をサポートにする必要があるので、再生装置のハードウェア構成としては、基本的に2デコーダ＋2プレーンの構成になっていて、1plane＋Offsetモード、2D出力モードに再生装置が切り替った際、１デコーダ＋１プレーンの組みのうち一方を無効化して、１デコーダ＋１プレーン構成になる。
【０３６９】
以上のデコーダモデルを1デコーダ構成にするか、2デコーダ構成にするか、プレーンモデルを1プレーン構成にするか、2プレーン構成にするかは再生装置を製造するマニファクチャが自由に定めることができる。無論、設計上は2デコーダ構成、2プレーン構成にしておいて高級機種として販売する場合は、立体視PGの再生能力有、立体視IGの再生能力有と設定し、廉価機種として販売する場合は、立体視PGの再生能力無、立体視IGの再生能力無と設定することで、ラインナップの充実を図ることができる。このような立体視PGの再生能力有無のコンフィグレーション、立体視IGの再生能力有無のコンフィグレーションは、レジスタセットに存在する。
【０３７０】
以下、レジスタセットについて説明する。
【０３７１】
レジスタセットは、複数のプレーヤ状態レジスタ、複数のプレーヤ設定レジスタから構成される。個々のプレーヤ状態レジスタ、プレーヤ設定レジスタは何れも語長が３２ビットのレジスタであり、３２ビット長のレジスタのそれぞれにはレジスタ番号が与えられ、このレジスタ番号を用いてアクセスすべきレジスタが特定される。
【０３７２】
各レジスタの一語(３２ビット)を構成する各ビットデータのビット位置は、b0〜b31と呼ばれる。最上位ビットはb31、最下位ビットはb0と呼ぶ。そして、32ビットのうち、bxビット目のビット位置からbyビット目のビット位置までのビット範囲は、[bx:by]という表記で表現される。
【０３７３】
所定のレジスタ番号のプレーヤ設定レジスタ／プレーヤ状態レジスタに格納されている32ビット長のビット列であって、任意のビット範囲[bx:by]のものの値は、プログラムが動作を行うにあたっての動作システムの環境変数(システムパラメータ又はプレーヤ変数という)として扱われる。再生制御を行うプログラムは、システムプロパティやアプリケーションプログラミングインターフェイス(API)を通じて、システムパラメータを取得することができる。また、特に禁止されていない限り、これらのプレーヤ状態レジスタ、プレーヤ設定レジスタの値をプログラムは書き換えることができる。オブジェクト指向プログラミング言語ベースのプログラムについては、システムパラメータの取得や書き換えについて正当権限が与えられていることが要件になる。
【０３７４】
プレーヤ状態レジスタは、再生装置のMPUが算術演算やビット演算を行う際、その被演算子となる数値を格納しておくためのハードウェア資源であり、光ディスクが装填された際に初期値が設定され、またカレントプレイアイテムの変更等、再生装置の状態が変化した際に、その格納値の有効性が判定されるレジスタである。この格納値としては、カレントのタイトル番号、カレントのプレイリスト番号、カレントのプレイアイテム番号、カレントのストリーム番号、カレントのチャプター番号等がある。光ディスクの装填時に初期値が格納されるので、この格納値は一時的なものであり、光ディスクがイジェクトされたり、また再生装置の電源が断たれれば、この格納値は有効性を失う。
プレーヤ設定レジスタは、電源対策が施されている点がプレーヤ状態レジスタとは異なる。電源対策が施されているので、再生装置の電源遮断時において、その格納値が不揮発性のメモリに退避され、再生装置の電源投入時において、その格納値が復帰される。再生装置の製造主体(マニファクチャ)が再生装置の出荷時に定めた再生装置の各種コンフィグレーションや、ユーザがセットアップ手順に従い設定した各種コンフィグレーション、そして、再生装置がTVシステムやステレオ、アンプ等のホームシアターシステムの機器と接続された際、接続相手となる機器とのネゴシエーションにより判明した相手側機器のケーパビリティがプレーヤ設定レジスタに設定される。
【０３７５】
図１８は、レジスタセット２０３の内部構成と、再生制御部とを描いた図である。
【０３７６】
本図の左側にはレジスタセット２０３の内部構成を示している。右側には再生制御部の内部構成を示している。
【０３７７】
それぞれのレジスタ番号が割り当てられたプレーヤ状態レジスタ、プレーヤ設定レジスタは、どのようなものであるかを示す。
【０３７８】
PSR0は、IGストリームのためのストリーム番号レジスタであり、カレントのIGストリーム番号を格納する。
【０３７９】
PSR2は、PGストリームのためのストリーム番号レジスタであり、カレントのPGストリーム番号を格納する。
【０３８０】
PSR24は、「Player Capability for 3D」の設定である。これは、再生装置に立体視再生を実行する能力が存在するかどうかを示す。
【０３８１】
一方、再生制御部は、レジスタセット２０３におけるPSR24と、メモリにおけるカレントプレイリスト情報のストリーム選択テーブルとを参照して、カレントプレイリストにおけるカレントPGストリーム番号、カレントIGストリーム番号を一意に定めるストリーム選択プロシージャが存在する。このストリーム選択プロシージャは、「Initialization」、「Procedure when playback condition changed」が存在する。
【０３８２】
図１９は、PSR24のビットアサインを示す。PSR24は、再生装置の3Dケーパビリティを表す。記録媒体におけるプログラムは、PSR24の値を変化させることはできない。
【０３８３】
b0は、立体視1280×720 50pビデオ表示ケーパビリティを示す。立体視1280×720 50pビデオ表示ケーパビリティは、「0」に設定された際、1280×720/50Hzプログレッシブビデオを表示する処理能力を再生装置が有していない旨を示す。「1」に設定された際、1280×720/50Hzプログレッシブビデオを再生する再生能力を再生装置が有している旨を示す。
【０３８４】
b2は、立体視PGケーパビリティを示す。立体視PGケーパビリティは、「0」に設定されることで立体視PGを再生する能力を再生装置が有していない旨を示す。「1」に設定されることで立体視PGを再生する能力を再生装置が有している旨を示す。
【０３８５】
b3は、立体視IGケーパビリティを示す。立体視IGケーパビリティは、「0」に設定されることで再生装置が立体視IGを再生する能力を有していない旨を示す。「1」に設定されることで再生装置が立体視IGを再生する能力を有している旨を示す。
【０３８６】
b5は、3D出力モードにおけるBD-Jモードのケーパビリティを示す。このb5が「1」に設定された場合、3D出力モードにおいて再生装置は、BD-Jモードを処理できる旨を示す。b5が「0」に設定された場合、3D出力モードにおいて再生装置は、BD-Jモードを処理できない旨を示す。PSR24のb5の用法については、本実施形態の主眼からは外れるので、後段の実施形態に説明の場を譲る。
【０３８７】
このPSR24では、IG、PGのそれぞれについて立体視再生の可否を設定することができるので、IGデコーダ、PGデコーダのそれぞれを２デコーダで構成して、IG、PGのそれぞれを立体視対応するというコンフィグレーションが可能になるし、また、IG、PGを２デコーダ構成としつつ、IGのみを立体視対応、PGは1plane＋Offset対応に留めるというコンフィグレーションも可能になる。逆に、PGのみを立体視対応、IGは1plane＋Offset対応に留めるというコンフィグレーションが可能になる。
【０３８８】
更に再生装置を低価格機種として販売するため、IGデコーダ、PGデコーダのそれぞれを２デコーダで構成しておきつつも、IG、PGのそれぞれを1plane＋Offset対応に留めるというコンフィグレーションも可能になる。２デコーダモデルという共通構成で構成しておいて、機種のグレードに応じて、IGの立体視の可否、PGの立体視の可否を変更することができるので、マニファクチャが再生装置を製品化するにあたってのラインナップの充実を図ることが可能になる。
【０３８９】
またPG、IGの双方、どちらか一方を１デコーダで構成した場合、立体視再生の可否が明示されていることで、たとえ再生すべきプレイリストが立体視対応のものでも、再生タイプが誤って立体視PG、立体視IGに設定されるのを防止することができる。
【０３９０】
以上の再生制御は、図２０から図２５までのフローチャートに示される処理手順をオブジェクト指向型コンパイラ言語で記述してコンピュータに実行させることで実現することができる。
【０３９１】
図２０は、プレイリスト再生手順を示す。本フローチャートは、ステップＳ１においてカレントプレイアイテム番号を１に設定した後、ステップＳ２〜ステップＳ６の処理を繰り返すループを構成する。このループでは、Procedure when playback condition is changedによりストリーム番号を決定して(ステップＳ２)、ストリーム番号に対応するESを格納したストリームファイルをオープンしてソースパケット列を読み出し(ステップＳ３)、読み出されたソースパケット列のうち、ストリーム番号に対応しているものの多重分離を指示し(ステップＳ４)、読み出されたソースパケットをプレイアイテムのインタイムからアウトタイムまで、サブプレイアイテムのインタイムからアウトタイムまで再生するようデコーダに命じる(ステップＳ５)という処理を、カレントプレイアイテム番号が最終番号になるまで繰り返すものである。ここで最終番号でなければ(ステップＳ６でNo)、カレントプレイアイテム番号がインクリメントされて、ステップＳ２に移行する。
【０３９２】
この際、ステップＳ７においてストリーム選択要求があったかどうかを判定し、もし要求があれば、要求されたストリーム番号をxにして、Procedure when stream change is requestedを実行する(ステップＳ８)。最終番号であれば、処理を終了する(ステップＳ６でYes)。
【０３９３】
＜カレントPGストリームの決定及びカレントPGストリームの再生タイプ決定＞
PSR2のPG＿テキスト字幕ストリーム番号によって参照されるPG＿テキスト字幕ストリームは、出力モード（PSR22）、PSR24における立体視PGケーパビリティと、is＿SS＿PGを用いて選択される。
【０３９４】
図２１は、PGtestSTストリームについてのProcedure when playback condition is changedについての処理手順を示すフローチャートである。本フローチャートのうち、ステップＳ１１〜ステップＳ２２の処理は、3D出力モード及び2D出力モードの共通処理となる。ステップＳ２３〜ステップＳ２６が、3D出力モード特有の処理となる。
【０３９５】
ステップＳ１１においてPSR2からカレントPG＿テキスト字幕ストリーム番号を取得し、ステップＳ１２において、カレントPG＿テキスト字幕ストリーム番号は、PGストリームについてのものかテキスト字幕ストリームについてのものかを判定する。ステップＳ１３は、カレントPG＿テキスト字幕ストリーム番号に対応するPGストリームが、条件(A)、条件(B)を満たすか否かをチェックする。
【０３９６】
ここで条件(A),条件(B)は、以下のように規定される。
【０３９７】
条件(A)：カレントPG＿テキスト字幕ストリーム番号から特定されるPGストリームをデコードする能力が再生装置に存在する。
【０３９８】
条件(B)：特定された言語を再生する能力が再生装置に存在する。
【０３９９】
一方ステップＳ１４では、カレントPG＿テキスト字幕ストリーム番号に対応するテキスト字幕ストリームが、条件(A)、条件(B)を満たすか否かをチェックするものである。
【０４００】
条件(A):カレントPG＿テキスト字幕ストリーム番号のテキスト字幕ストリームのキャラクターコードをビットマップに展開する能力が再生装置に存在すること。かかる再生能力は、レジスタセット２３におけるPSR30に示されている。
【０４０１】
条件(B):カレントPG＿テキスト字幕ストリーム番号のテキスト字幕ストリームの言語特性をサポートする能力が再生装置に存在すること。
【０４０２】
ここで、ある言語の字幕がテキスト字幕ストリームで表現されている場合、その言語のテキスト字幕ストリームを、「デコードすることができる」といえるには、その言語における文字コードを、ビットマップに展開する能力と、その言語の特性をサポートするサポート能力とが再生装置側に存在する必要がある。
【０４０３】
英語、日本語、アラビア語を例にとってみると、英語の字幕表示は、「横書き」,「カーニング」,「合字・抱き字」という機能がサポートされて初めて、言語特性がサポートされていると判断することができる。
【０４０４】
日本語の字幕表示は、「横書き」,「縦書き」,「行末禁則」,「ルビ」という機能がサポートされて初めて、言語特性がサポートされていると判断することができる。
【０４０５】
アラビア語の字幕表示は、「右から左の描画」、「合字・抱き字」という機能がサポートされて初めて、言語特性がサポートされていると判断することができる。
【０４０６】
ある言語のテキスト字幕ストリームをビットマップに展開することができ、その言語の特性をサポートすることができる場合、上記条件(A)、条件(B)は、満たされているということができる。その言語のテキスト字幕ストリームをビットマップに展開することができるが、その言語の特性をサポートすることができない場合、上記条件(B)は満たされず、条件(A)のみが、満たされているということができる。
【０４０７】
言語毎のサポート能力は、レジスタセットにおけるPSR48〜61の各ビットにおいて、言語毎に設定されている。具体的には、PSR48〜61には、IS0639-2/Tで規定された３バイトの言語コードのそれぞれに対応するフラグが存在しており、これらのフラグに、各言語コードに対応するテキスト字幕の表示能力の有無が設定されている。
【０４０８】
IS0639-2/Tで規定された３バイトの言語コードにおいて「ita」という3バイトのコードはイタリア語を示し、「jpn」という3バイトのコードは日本語を示す。「jav」という3バイトのコードはジャワ語を示す。IS0639-2/Tで規定された言語コードは、このようは３バイトのコードによって430言語を網羅するから、カレントPG＿テキスト字幕ストリームの決定において、ストリーム番号テーブルに記載されたテキスト字幕ストリームがデコードできるかどうかの判定にあたって、このPSR48〜61におけるフラグを参照する。こうすることで、少数派の言語であっても、デコードできるかどうかを適格に判断可能となる。
【０４０９】
以上の判定を経た後、ステップＳ１５を実行する。ステップＳ１５は、再生装置は、条件(Z)を満たすか否かを判定するものである
ここで条件(Z)とは、言語特性のサポートがないアンサポート言語の字幕を、再生することをユーザが意図していることであり、かかる意図は、レジスタセットにおけるPSR30に示されている。
【０４１０】
その後、ステップＳ１６の判定ステップを実行する。これは、カレントプレイアイテムのストリーム選択テーブルにおけるPG＿テキスト字幕ストリームの本数が=0であるか否かを判定するものである。ストリーム選択テーブルに再生が許可されているPG＿テキスト字幕ストリームが存在しない場合、PSR2におけるPG＿テキスト字幕ストリームの番号を維持する(ステップＳ１７)。
【０４１１】
カレントストリーム選択テーブルにおいて再生が許可されているPG＿テキスト字幕ストリームが少なくとも1つ存在する場合、ステップＳ１８を実行する。これは、カレントPG＿テキスト字幕ストリーム番号の有効性を問うステップであり、カレントPG＿テキスト字幕ストリーム番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)、条件(B)を満たすかどうかを判定する。
【０４１２】
もしステップＳ１８で満たさないと判定されたなら、ステップＳ２０の判定を実行する。これは、カレントPG＿テキスト字幕ストリーム番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)(Z)を満たすかどうかを判定するものである。もし満たすなら、PSR2には、アンサポート言語のテキスト字幕のPG＿テキスト字幕ストリーム番号が設定されているが、ユーザはアンサポート言語の再生を意図しているので、PSR2を変化させない(ステップＳ２１)。ステップＳ２０において満たさないと判定されたなら、カレントプレイアイテムについて最適なストリームを選択する(ステップＳ２２)。
【０４１３】
以降のステップＳ２３〜ステップＳ２５は3D出力モード特有の処理である。具体的には、3D出力モードでは、PSR2のPGストリーム番号によって特定されるPGストリームのis＿SS＿PGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ２３)、取得したis＿SS＿PGフラグが「1」であり、かつ、PSR24におけるb2の立体視PGケーパビリティが「1」であるか否かを判定する(ステップＳ２４)。ステップＳ２４がYesであれば、再生タイプを左目PGストリーム及び右目PGストリームを用いる立体視PGとする(ステップＳ２５)。
【０４１４】
再生タイプを立体視PGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR2に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスを用いて、立体視再生を行う。具体的には、PSR2に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスで指示されているパケット識別子のTSパケットの多重分離を多重分離部に行わせる。
【０４１５】
ステップＳ２４がNoであれば、再生タイプを1plane＋OffsetPGとする(ステップＳ２６)。再生タイプを1plane＋OffsetPGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR2に格納されたカレントストリームのストリーム番号に対応するもののPG＿テキスト字幕オフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスを用いて、1plane＋OffsetモードでのPG再生を実行する。
【０４１６】
ここでオフセットシーケンスについて説明する。1plane＋Offsetモードに用いられるオフセットシーケンスは、ディペンデントビュービデオストリームのビデオアクセスユニット内に複数存在する。
【０４１７】
ディペンデントビュービデオストリームのビデオアクセスユニットは、ビデオアクセスユニットデリミター、シーケンスパラメータセット、ピクチャパラメータセット、MVCスケーラブルネスティングSEIメッセージ、ファーズトビューコンポーネント、シーケンス終端コード、ストリーム終端コードを配列することにより構成される。そしてこのMVCスケーラブルネスティングSEIメッセージの中に、ユーザデータコンテナが存在する。ユーザデータコンテナは、アンレジスタードユーザデータ(未登録ユーザデータ)のことであり、クローズドキャプション情報、GOP構造マップ、オフセットメタデータという3つの種類がある。これらの種類のうち何れかであるかは、コンテナ中のtype_indicatorに明示される。
【０４１８】
オフセットメタデータは、PGプレーン、IGプレーン、BD-Jプレーンのためのシーケンスリストであり、立体視再生モードにおいてプレゼンテーショングラフィクス＿テキスト字幕、IG/BD-Jプレーンが1plane＋Offsetモードで再生されている間におけるオフセット設定に用いられる。具体的には、ピクチャデータと合成すべきグラフィクスを、1plane＋Offsetモードで再生する場合におけるPGプレーン、IGプレーン、BD-Jプレーンに対するオフセット制御を示す。
【０４１９】
オフセットメタデータは、ディペンデントビューアクセスユニットの符号化順序における各GOPの先頭のビデオコンポーネントのMVCスケーラブルネスティングSEIメッセージに格納されねばならない。オフセットメタデータの内部に、上述した複数のオフセットシーケンスが存在する。オフセットシーケンスは、グループオブピクチャに属する各ピクチャデータと、グラフィクスとを合成する場合における制御パラメータを、グループオブピクチャにおけるフレーム期間毎に示すパラメータシーケンスであり、number_of_displayed_frames_in_GOPに示される個数の制御パラメータから構成される。この制御パラメータは、プレーンオフセット方向情報と、プレーンオフセット値とから構成される。
【０４２０】
プレーンオフセット方向情報(Plane＿offset＿direction)は、プレーンにおけるオフセット方向を指示する。値「０」でフロント設定、つまり、プレーンメモリは、TVと視聴者との間に存在し、レフトビュー期間においてプレーンは右方向に、ライトビュー期間においてプレーンは左方向にシフトされる。値＝１でビハインド設定、つまり、プレーンメモリは、TV又はスクリーンの背後に存在し、レフトビュー期間においてプレーンは左方向に、ライトビュー期間においてプレーンは右方向にシフトされる。プレーンオフセット方向情報がフロント設定を示す場合、3次元座標系における制御パラメータのZ軸座標は、正の座標になる。プレーンオフセット方向情報がビハインド設定を示す場合、3次元座標系における制御パラメータのZ軸座標は、負の座標になる。
【０４２１】
プレーンオフセット値(Plane＿offset＿value)は、グラフィクスを構成する画素の水平方向の変位量の指定であり、プレーンのオフセット値を画素単位で指示する。
【０４２２】
PGの再生タイプが1plane＋OffsetPGに設定されれば、ディペンデントビュービデオストリームのSEIメッセージに格納されている複数のオフセットシーケンスのうち、カレントストリーム番号のストリーム登録情報内のPG＿テキスト字幕オフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスをビデオデコーダから取り出し、シフト部に供給する。  
【０４２３】
以上が、PG＿テキスト字幕ストリームにおけるProcedure when playback condition is changedについての説明である。
【０４２４】
図２２は、カレントプレイアイテムについて最適なPG＿テキスト字幕ストリームを選択する処理手順を示すフローチャートである。
【０４２５】
ステップＳ３０において、全てのPG＿テキスト字幕ストリームについて、条件(a)〜条件(c)を満たすかどうかをチェックする。
【０４２６】
チェック対象となるPGストリームを、PGストリームiとした場合、条件(a)〜条件(c)は、以下のように規定される。
【０４２７】
条件(a)：PGストリームiをデコードする能力が再生装置に存在する。
【０４２８】
条件(b):PGストリームiのPG＿language＿codeが、再生装置における言語設定と一致している。ここで、再生装置における言語設定は、レジスタセットにおけるPSR17に示されている。
【０４２９】
チェック対象となるテキスト字幕ストリームを、テキスト字幕ストリームiとした場合、条件(a)〜条件(c)は、以下のように規定される。
【０４３０】
条件(a):テキスト字幕ストリームiのキャラクターコードをビットマップに展開する能力が再生装置に存在すること。
【０４３１】
条件(b):テキスト字幕ストリームiの言語属性をサポートする能力が再生装置に存在すること。
【０４３２】
条件(c):テキスト字幕ストリームiのtextST＿language＿codeが、再生装置における言語設定と一致していること。  
【０４３３】
以上のチェックを経た後、ステップＳ３１では、再生装置が、前のフローチャートで述べた条件(Z)(：アンサポート言語の再生)を満たすかどうかを判定する。みたさない場合、ステップＳ３２において、条件(a)〜条件(c)を満たすPG＿テキスト字幕ストリームが存在するかを判定する。存在するなら、条件(a)〜条件(c)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルにおいて先頭順位に位置するものを選択して、選択したPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ３３)。
【０４３４】
条件(a)〜条件(c)を満たすPG＿テキスト字幕ストリームが存在しないなら、ステップＳ３４において、より緩和された条件を満たすPG＿テキスト字幕ストリームが存在するか否かを判定する。緩和された条件とは、条件(a)、条件(b)を満たすことであり、これを満たすPG＿テキスト字幕ストリームが存在するかが、ステップＳ３４で判定される。存在するなら、条件(a)、条件(b)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルにおいて先頭順位に位置するものを選択して、選択したPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ３６)。
【０４３５】
存在しないなら、0xFFFであるPG＿テキスト字幕ストリーム番号をPSR2に設定する(ステップＳ３５)。ステップＳ３１において、条件(Z)を満たすと判定されたなら、ステップＳ３７において、別の緩和された条件を満たすPG＿テキスト字幕ストリームが存在するかを判定する。別の緩和された条件とは、条件(a)、条件(c)を満たすものであり、ステップＳ３７では、これらを満たすPG＿テキスト字幕ストリームが存在するかか否かが判定される。
【０４３６】
もし存在するなら、条件(a)、条件(c)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルの最初に位置するものを選択して、選択したもののPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ３８)。
【０４３７】
存在しない場合、ステップＳ３９において、条件(a)を満たすPG＿テキスト字幕ストリームが存在するかを判定する。存在する場合、条件(a)を満たすPG＿テキスト字幕ストリームのうち、対応するストリームエントリーがストリーム選択テーブルにおいて先頭順位に位置するものを選択して、選択したもののPG＿テキスト字幕ストリーム番号を、PSR2に設定する(ステップＳ４０)。存在しない場合、0xFFFをPSR2に設定する(ステップＳ３５)。
【０４３８】
以上が、最適なPG＿テキスト字幕ストリームの選択手順についての説明である。
【０４３９】
図２３は、セット立体視ストリームコマンド(SetstreamSSCommand)によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。
【０４４０】
ステップＳ４１では、セット立体視ストリームコマンドにおいて、オペランドで指定された番号Xは、PGストリームについてのストリーム番号を意味するか、テキスト字幕ストリームについてのストリーム番号を意味するかを判定する。ステップＳ４２は、番号Xに対応するPGストリーム(PGx)が、以下の条件(A)、条件(B)を満たすか否かをチェックする。
【０４４１】
条件(A)：番号Xから特定されるPGストリームをデコードする能力が再生装置に存在すること。
【０４４２】
条件(B)：特定されたPGストリームの属性となる言語が、再生装置の言語属性に一致すること。
【０４４３】
ステップＳ４３は、番号Xに対応するテキスト字幕ストリーム(textSTx)が、以下の条件(A)、条件(B)を満たすか否かをチェックする。
【０４４４】
条件(A):番号Xに対応するテキスト字幕ストリームXのキャラクターコードをビットマップに展開する能力が再生装置に存在すること。
【０４４５】
条件(B):番号Xに対応するテキスト字幕ストリームXの言語属性をサポートする能力が再生装置に存在すること。
【０４４６】
ステップＳ４４では、再生装置は、条件(Z)を満たすか否かをチェックし、ステップＳ４５の判定を行う。この判定は、番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)(B)を満たすかどうかを判定する。もし満たすなら、番号XにあたるPG＿テキスト字幕ストリーム番号のPG＿テキスト字幕ストリームを選択して、PSR2に設定する(ステップＳ４６)。
【０４４７】
ステップＳ４５において満たさないと判定されたなら、ステップＳ４７の判定を実行する。この判定は、番号がストリーム選択テーブルにおけるstream＿entryの総数以下であり、且つ、条件(A)(Z)を満たすかどうかを判定するものである。満たすなら、番号XにあたるPG＿テキスト字幕ストリームを選択して、そのPG＿テキスト字幕ストリーム番号をPSR2に設定する(ステップＳ４８)。
【０４４８】
満たさないなら、ステップＳ４９の判定を行う。この判定は、番号Xが、0xFFFであるか否かを判定するものである。そうでないなら、ストリーム選択テーブルに再生が許可されているPG＿テキスト字幕ストリームが存在しないとして、PSR2の値を維持する(ステップＳ５０)。
【０４４９】
0xFFFであるなら、カレントプレイアイテムについて最適なPG＿テキスト字幕ストリームを選択する(ステップＳ５１)。この最適なPG＿テキスト字幕ストリームの選択は、図２２に示したものと同じである。
【０４５０】
以降のステップＳ５２〜ステップＳ５５は3D出力モード特有の処理である。具体的には、PGストリーム番号Xによって特定されるPGストリームXのis＿SS＿PGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ５２)、取得したis＿SS＿PGフラグが「1」であり、かつ、PSR24における立体視PGケーパビリティが「1」であるか否かを判定する(ステップＳ５３)。ステップＳ５３がYesであれば、再生タイプを立体視PGとする(ステップＳ５４)。ステップＳ５３がNoであれば、再生タイプを1plane＋Offsetとする(ステップＳ５５)。
【０４５１】
図２４は、セットストリームコマンド、又は、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合に実行すべきProcedure when stream change is requestedの処理手順を示すフローチャートである。本フローチャートでは、ステップＳ５６において、セットストリームコマンドのオペランドで指定されたストリーム番号、又は、ストリーム番号変更を要求するユーザ操作で指定されたストリーム番号を番号Xに設定した上で、ステップＳ４１〜ステップＳ５５の処理を実行する。このステップＳ４１〜ステップＳ５５の処理内容は、図２３と同一のものであるから、同一の参照符号を付してその説明を省略する。
【０４５２】
＜カレントIGストリームの決定及びカレントIGストリームの再生タイプ決定＞
PSR0のIGストリーム番号によって参照されるIGストリームは、PSR22における出力モードと、PSR24における立体視PGケーパビリティと、is＿SS＿IGとを用いて選択される。
【０４５３】
図２５は、カレントIGストリームの決定及びカレントIGストリームの再生タイプ決定の処理手順を示すフローチャートである。
【０４５４】
図２５（ａ）は、プレイアイテムが変化し、再生装置の再生状態が変化した場合におけるカレントIGストリーム決定のためのProcedure when playback condition is changedを示す。本フローチャートのうち、ステップＳ６１〜ステップＳ６５は2D出力モード及び3D出力モードの共通のステップであり、ステップＳ６４〜ステップＳ６７は3D出力モード特有のステップである。
【０４５５】
ステップＳ６１は、ストリーム選択テーブルにおけるentry数が0であるか否かの判定であり、もし0であればPSR0の値を維持する(ステップＳ６４)。
【０４５６】
ステップＳ６２は、ストリーム選択テーブルにおけるentry数は0ではない場合に、PSR0よりストリーム選択テーブルのentry数が多いかを判定するものである。もしステップＳ６２がYesであればPSR0を維持する(ステップＳ６５)。もしPSR0の値がentry数より大きい場合、PSR0に1を設定する(ステップＳ６３)。以降のステップＳ６４〜ステップＳ６７は3D出力モード特有のステップである。3D出力モードでは、PSR0のIGストリーム番号によって特定されるIGストリームのis＿SS＿IGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ６４)、取得したis＿SS＿IGフラグが「1」であり、かつ、PSR24におけるb3に示される立体視IGケーパビリティが「1」であるか否かを判定する(ステップＳ６５)。ステップＳ６５がYesであれば、再生タイプを立体視IGとする(ステップＳ６６)。再生タイプを立体視IGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR0に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスを用いて、立体視再生を行う。具体的には、PSR0に格納されたカレントストリームのストリーム番号に対応するものの右目ストリームエントリー及び左目ストリームエントリー内のパケット識別子レファレンスで指示されているパケット識別子のTSパケットの多重分離を多重分離部に行わせる。
【０４５７】
ステップＳ６５がNoであれば、再生タイプを1plane＋OffsetIGとする(ステップＳ６７)。  再生タイプを1plane＋OffsetIGとした場合、拡張ストリーム選択テーブルにおける複数のストリーム登録情報のうち、PSR0に格納されたカレントストリームのストリーム番号に対応するものの立体視IGオフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスを用いて、1plane＋OffsetモードでのIG再生を実行する。具体的には、ディペンデントビューストリームのSEIメッセージに格納されている複数のオフセットシーケンスのうち、立体視IGオフセットシーケンスIDレファレンス情報で指示されているオフセットシーケンスをビデオデコーダから取り出し、シフト部に供給する。
【０４５８】
図２５（ｂ）は、セット立体視ストリームコマンド(SetstreamSSCommand)、セットストリームコマンド、及び、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合におけるPSR0の設定手順を示すフローチャートである。
【０４５９】
セット立体視ストリームコマンド(SetstreamSSCommand)、セットストリームコマンド、及び、ストリーム番号変更を要求するユーザ操作によってストリーム変化が要求された場合、コマンドのオペランドやユーザ操作で指定されたストリーム番号を番号Xとする。
【０４６０】
本フローチャートにおけるステップＳ７１は、番号Xよりストリーム選択テーブルのentry数が多いかを判定するものである。もしXがこの条件を満たすなら、PSR0にXを設定する(ステップＳ７４)。もしXがentry数より大きい場合は、PSR0に1を設定する(ステップＳ７２)。3D出力モードでは、PSR0のIGストリーム番号によって特定されるIGストリームのis＿SS＿IGを拡張ストリーム選択テーブルにおけるストリーム登録情報から取得し(ステップＳ７３)、取得したis＿SS＿IGフラグが「1」であり、かつ、PSR24における立体視IGケーパビリティが「1」であるか否かを判定する(ステップＳ７４)。ステップＳ７４がYesであれば、再生タイプを立体視IGとする(ステップＳ７５)。ステップＳ７４がNoであれば、再生タイプを1plane＋Offsetとする(ステップＳ７６)。
【０４６１】
図２６は、結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
【０４６２】
同図（ａ）は、動作例の題材として用いる結合ストリーム登録列を示す。結合ストリーム登録列は、基本ストリーム選択テーブルにおける3つのストリーム登録情報と、拡張ストリーム選択テーブルにおける3つのストリーム登録情報とから構成されるものである。基本ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号「１」、「２」、「３」のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性は、英語、日本語、中国語の言語属性を有している。
【０４６３】
拡張ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号「１」、「２」、「３」のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性は、英語、日本語、中国語の言語属性を有している。基本ストリーム選択テーブルにおけるストリーム登録情報と、拡張ストリーム選択テーブルにおけるストリーム登録情報とではストリームエントリーにおけるパケット識別子が異なり、拡張ストリーム選択テーブルにおけるストリーム登録情報は、B−Dプレゼンテーションモードのための左目PGストリームのためのパケット識別子、右目PGストリームのためのパケット識別子を含む。
【０４６４】
同図（ｂ）は、言語設定が中国語であり、出力モードが2D出力モードに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０４６５】
図中のa1、a2,a3を付した矢印は、言語設定の一致判定、ストリーム番号レジスタへのストリーム番号の設定、多重分離部へのパケット識別子の出力を
模式的に示したものである。
【０４６６】
プロシージャにおいて、ストリーム番号＝３のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号＝３のストリーム登録情報に含まれるストリーム番号がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、基本ストリーム選択テーブルにおけるストリーム番号＝３のストリーム登録情報におけるストリームエントリーのパケット識別子によって特定されるTSパケットが、デコーダに出力されることになる。
【０４６７】
図２６（ｃ）は、言語設定が中国語であり、再生タイプが立体視PGに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０４６８】
図中のa4,a5,a6を付した矢印は、言語設定の一致判定、ストリーム番号レジスタに対するストリーム番号の設定、多重分離部へのパケット識別子の出力を模式的に示したものである。
【０４６９】
ストリーム選択プロシージャにおいて、ストリーム番号＝３のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号＝３のストリーム登録情報に含まれるストリーム番号がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、拡張ストリーム選択テーブルにおけるストリーム番号＝３のストリーム登録情報におけるストリームエントリーに格納されたパケット識別子の組みによって特定される２系統のTSパケットが、デコーダに出力されることになる。
【０４７０】
図２７は、結合ストリーム登録列によってどのようなパケット識別子が多重分離部に出力されるかを示す。
【０４７１】
図２７（ａ）は、動作例の題材として用いる結合ストリーム登録列を示す。結合ストリーム登録列は、基本ストリーム選択テーブルにおける3つのストリーム登録情報と、拡張ストリーム選択テーブルにおける3つのストリーム登録情報とから構成されるものである。基本ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号「１」、「２」、「３」のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性は、何れかも中国語の言語属性を有している。
【０４７２】
拡張ストリーム選択テーブルにおける3つのストリーム登録情報はそれぞれ、ストリーム番号「１」、「２」、「３」のストリーム番号を有し、3つのストリーム登録情報におけるストリーム属性も、中国語の言語属性を有している。基本ストリーム選択テーブルにおけるストリーム登録情報と、拡張ストリーム選択テーブルにおけるストリーム登録情報とではストリームエントリーにおけるパケット識別子が異なり、拡張ストリーム選択テーブルにおけるストリーム登録情報は、B−Dプレゼンテーションモードのための左目PGストリームのためのパケット識別子、右目PGストリームのためのパケット識別子を含む。
【０４７３】
同図（ｂ）は、言語設定が中国語であり、出力モードが2D出力モードに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０４７４】
図中のa1,a2,a3を付した矢印は、言語設定の一致判定、ストリーム番号の設定、パケット識別子の出力を模式的に示したものである。
【０４７５】
ストリーム選択プロシージャにおいて、ストリーム番号＝３のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号＝「１」がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、基本ストリーム選択テーブルにおけるストリーム番号「１」のストリーム登録情報におけるストリームエントリーのパケット識別子によって特定されるTSパケットが、デコーダに出力されることになる。
【０４７６】
（ｃ）は、言語設定が中国語であり、再生タイプが1plane＋Offsetタイプに設定された再生装置に、かかる結合ストリーム登録列が供給された場合における、ストリーム番号の設定と、パケット識別子の出力とを示す。
【０４７７】
図中のa4,a5,a6を付した矢印は、言語設定の一致判定、ストリーム番号の設定、パケット識別子の出力を模式的に示したものである。
【０４７８】
プロシージャにおいて、ストリーム番号「１」のストリーム登録情報において、再生装置側の言語設定と、ストリーム属性との一致が判定され、このストリーム番号「１」のストリーム登録情報に含まれるストリーム番号がストリーム番号レジスタに書き込まれる。この際、基本ストリーム選択テーブルにおけるストリームエントリーにおけるパケット識別子が多重分離部に出力される。こうすることで、拡張ストリーム選択テーブルにおけるストリーム番号「１」のストリーム登録情報におけるストリームエントリーに格納されたパケット識別子の組みによって特定される２系統のTSパケットが、デコーダに出力されることになる。
【０４７９】
以上のように本実施形態によれば、グラフィクスの立体視効果の実現性の可否が、ケーパビリティフラグに示されており、拡張ストリーム選択テーブルにおいて、立体視効果可能であると設定されているグラフィクスストリームについては、このグラフィクスの立体視効果を行うかどうかが、このケーパビリティフラグによって条件付けられるので、マニファクチャは、たとえ記録媒体に立体視効果をもつグラフィクスストリームが記録されていたとしても、ケーパビリティフラグを「ケーパビリティなし」と設定することで、かかるグラフィクスストリームの立体視効果に歯止めをかけ、品質管理を行い易いオフセット制御を代わりに実行することができる。
【０４８０】
こうすることで、高品位な立体視効果機能をもった機種、かかる立体視効果機能をもたない機種という複数機種の再生装置を市場に投入して、製品ラインナップの充実化を図ることができる。
【０４８１】
（第２実施形態)
第１実施形態では、立体視IG、立体視PGの処理能力の有無、IG、PGの再生タイプをストリーム選択プロシージャで定めたが、本実施形態では、再生装置における出力モードをモード選択プロシージャで決定するという実施形態である。
【０４８２】
かかるモード選択プロシージャは、タイトルの選択時に実行される。ここで本明細書のタイトルは、少なくとも1つの動作モードオブジェクトを必須の構成要素とする。動作モードオブジェクトとは、あるモードにおけるタイトル再生時の再生装置の挙動の詳細を規定する動作管理テーブルである。そして、このタイトルには、HDMVタイトル、BD-Jタイトルといった種別がある。
【０４８３】
「HDMVタイトル」とは、HDMVモードで再生されるべきタイトルのことであり、ムービーオブジェクトと、ムービーオブジェクト内の再生コマンドで再生されるプレイリスト(プレイリスト情報、クリップ情報、ストリームファイル)とから構成される。
【０４８４】
「ムービーオブジェクト」とは、インデックステーブルにおいてHDMVタイトルのタイトル番号に対応付けられた動作モードオブジェクトのことであり、ナビゲーションコマンド列から構成されるバッチプログラムに、レジュームの可否を示すレジュームフラグ、メニューコールをマスクするか否かを示すフラグ、タイトルサーチをマスクするか否かを示すフラグを対応付けることで構成されている。
【０４８５】
「BD-Jタイトル」とは、BD-Jモードで再生されるべきタイトルのことであり、クラスアーカイブファイルと、BD-Jオブジェクトとから構成される。
【０４８６】
「クラスアーカイブファイル」は、バイトコードアプリケーションのクラス構造体のファイル(クラスファイル)を、デジタル証明書マニフェストファイル、ディスク署名シグネチャファイル、ディスク署名暗号鍵ファイル、パーミッションリクエストファイルとひとまとめにしてアーカイブしたファイルである。アプリケーションのロードは、このクラスアーカイブファイルをひとまとめにしてなされ、クラスロード時に、デジタル証明書、ディスク署名、ディスク署名暗号鍵を用いたアプリケーションの正当性の検証ができるようになっている。またパーミッションリクエストファイルが存在するので、アプリケーションによる動作を、一定の権限が与えられたのものに限定することができる。
【０４８７】
クラスアーカイブファイルにアーカイブされるバイトコードアプリケーションは、オブジェクト指向プログラミング言語のソースコードを用いて記述されたクラス構造体をコンパイルすることで得られた実行形式のプログラムであり、機器に依存しないコード(バイトコード)によって構成されるものをいう。本実施形態におけるバイトコードアプリケーションは、イベントドリブンであり、イベントによって状態遷移がなされる。状態遷移の状態には、「ローデッド」,「ポーズ」,「アクティブ」「デストロイド」といった4つの状態があり、バイトコードアプリケーションには、アプリケーションの動作のトリガとなるキーイベントが予め登録されている。バイトコードアプリケーションの動作のトリガとなるキーイベントの登録は、xletインターフェイスのイベントリスナによってなされる。以上がクラスアーカイブファイルについての説明である。
【０４８８】
続いて、BD-Jモードの動作モードオブジェクトであるBD-Jオブジェクトの詳細について説明する。
【０４８９】
「BD-Jオブジェクト」は、BD-Jモードにおける再生装置の挙動の詳細を規定する。その挙動の詳細には、対応するタイトルがカレントタイトルになった際のアプリケーションのクラスロード(1)、対応するタイトルがカレントタイトルになった際のアプリケーションシグナリング(2）、当該アプリケーションシグナリングによって起動されたアプリケーションがGUI処理を実行するにあたってのHAViデバイスコンフィグレーション(3)、当該カレントタイトルにおけるプレイリストアクセス(4)、対応するタイトルがカレントタイトルになった場合のクラスアーカイブファイルのキャッシュイン・キャッシュアウト(5)、起動されたアプリケーションのトリガとなるイベントをキーに割り当てるというイベント割当て(6)がある。
【０４９０】
「クラスロード」とは、クラスアーカイブファイルにアーカイブされているクラスファイルのインスタンスを、プラットフォームのヒープ領域に生成する処理であり、「アプリケーションシグナリング」は、クラスファイルのインスタンスであるアプリケーションを自動起動させるか否か、又は、アプリケーションの生存区間をタイトルバウンダリーとするかディスクバウンダリーとするかを規定する制御である。タイトルバウンダリーとは、タイトルの終了と同時にアプリケーションであるスレッドをヒープ領域から消滅させるという管理であり、ディスクバウンダリーとは、ディスクイジェクトと同時にアプリケーションであるスレッドをヒープ領域から消滅させる管理である。逆にディスクイジェクトがされてもスレッドをヒープ領域から削除しない制御を「ディスクアンバウンダリー」という。「HAViデバイスコンフィグレーション」は、アプリケーションがGUI処理を実行するにあたってのグラフィクスプレーンの解像度や文字表示に用いるフォント等を規定するものである。
【０４９１】
「プレイリストアクセス」とは、起動されたアプリケーションが再生を命じることができるプレイリストやタイトル選択時に自動的に再生すべきプレイリストの指定である。
【０４９２】
「クラスアーカイブファイルのキャッシュイン」とは、クラスロードの対象となるクラスアーカイブファイルをキャッシュに先読みするとの処理であり、「クラスアーカイブファイルのキャッシュアウト」とは、キャッシュに存在するクラスアーカイブファイルをキャッシュから削除するとの処理である。「アプリケーション駆動のためのイベント割当」は、ユーザが操作可能なキーに、アプリケーションのイベントリスナに登録されているイベントを割り当てるというものである。
【０４９３】
バイトコードアプリケーションのうち、BD-Jオブジェクト内のアプリケーション管理テーブルでアプリケーションシグナリングがなされるものを「BD-Jアプリケーション」という。
、HDMVタイトルをBD-Jタイトルと対比すると、上述のHDMVタイトルでは、ナビゲーションコマンドを実行するためのコマンドインタプリタやプレイリストを解読して再生するための再生制御エンジンといったモジュールがソフトウェアの動作主体になる。
【０４９４】
これに対しBD-Jタイトルでは、クラスロードのためのクラスローダやアプリケーションシグナリングのためのアプリケーションマネージャ、HAViデバイス、Javaメディアフレームワークによるプレイリスト再生のための再生制御エンジン、キャッシュイン・キャッシュアウト管理のためのキャッシュマネージャ、イベント処理のためのイベントマネージャといったソフトウェア群、つまり、デジタル放送のマルチメディアプラットフォーム端末におけるソフトウェア群と良く似たソフトウェア群が動作主体になるので、BD-JタイトルからHDMVタイトルへの切り替わり、HDMVタイトルからBD-Jタイトルへの切り替わりでは、再生装置におけるソフトウェア構成が大きく異なるものになる。
【０４９５】
出力モードが切り替え後のソフトウェアの動作主体にとって、最適なものになっているかの確認と、切り替え後の動作モードに最適な出力モードの選択という2つの処理を実現するべく、上記モード選択プロシージャをカレントタイトルの選択時に実行する。
【０４９６】
モード選択プロシージャの動作主体は、再生制御部２１０におけるプロシージャ実行部である。また、出力モードは、レジスタセット２０３に格納される。
【０４９７】
図２８は、レジスタセット２０３の内部構成と、再生制御部２１０とを描いた図である。本図の左側にはレジスタセット２０３の内部構成を示している。右側には再生制御部２１０の内部構成を示している。
【０４９８】
それぞれのレジスタ番号が割り当てられたプレーヤ状態レジスタ、プレーヤ設定レジスタは、どのようなものであるかを示す。
【０４９９】
PSR1は、オーディオストリームのためのストリーム番号レジスタであり、カレントのオーディオストリーム番号を格納する。
【０５００】
PSR2は、PGストリームのためのストリーム番号レジスタであり、カレントのPGストリーム番号を格納する。
【０５０１】
PSR4は、1〜100の値に設定されることで、カレントのタイトル番号を示す。
【０５０２】
PSR5は、1〜999の値に設定されることで、カレントのチャプター番号を示し、0xFFFFに設定されることで、再生装置においてチャプター番号が無効であることを示す。
【０５０３】
PSR6は、0〜999の値に設定されることで、カレントプレイリストの番号を示す。
【０５０４】
PSR7は、0〜255の値に設定されることで、カレントプレイアイテムの番号を示す。
【０５０５】
PSR8は、0〜OxFFFFFFFFの値に設定されることで、45KHzの時間精度を用いて現在の再生時点(カレントPTM)を示す。以上がPSRについての説明である。
【０５０６】
PSR10は、IGストリームのためのストリーム番号レジスタであり、カレントのIGストリーム番号を格納する。
【０５０７】
PSR21は、ユーザが、立体視再生を実行することを意図しているかどうかを示す。
【０５０８】
PSR22は、出力モード値を示す。
【０５０９】
PSR23は、「Display Capability for video」の設定である。これは、再生装置の接続相手である表示装置に立体視再生を実行する能力が存在するかどうかを示す。
【０５１０】
PSR24は、「Player Capability for 3D」の設定である。これは、再生装置に立体視再生を実行する能力が存在するかどうかを示す。
【０５１１】
一方、プロシージャ実行部は、レジスタセット２０３におけるPSR4,PSR6,PSR21,PSR23と、カレントプレイリスト情報のストリーム選択テーブルとを参照して、カレントプレイリストにおける出力モードを一意に定める。PSR24におけるPlayer Capability for 3Dは、再生装置の3D再生に関する能力全般を意味するものなので、「3D-Capability」と簡単に表記する場合がある。
【０５１２】
PSR23は、出力モードを規定するものであり、その状態遷移の選択モデルは、図２９に示すように規定されている。
【０５１３】
図２９は、出力モードの選択モデルの状態遷移を示す。この選択モデルには、2つの一般的な状態が存在する。楕円は、この一般的な状態、つまり、出力モード値がとりうる値である「Invalid」,「valid」を模式的に描いたものである。Invalidは出力モードが無効であり、Validは出力モードが有効である旨を示す。
【０５１４】
一般的な状態は、状態遷移が起こらない限り、維持される。状態遷移は、プレイリスト再生の開始、ナビゲーションコマンドやBD-Jアプリケーションにより要求された出力モード変化、BD-Jタイトルへのジャンプがある。状態遷移が発生した際、出力モードプリレファレンスを獲得するためのプロシージャが実行される。
【０５１５】
図中の矢印jm1,jm2,jm3・・・・jm12は、状態遷移のトリガとなる事象を模式的に示す。本図における状態遷移には、以下のものがある。
【０５１６】
『Load a disc』とは、BD-ROMが装填されたという状態を意味する。
【０５１７】
『Start Presentation』とは、HDMVモードにおいて、プレイリストの再生開始(start Playlist playback)を意味する。BD-Jモードにおいては、BD-Jタイトルへの分岐を意味する。何故なら、BD-Jタイトルは、プレイリストが必須の構成要素になっていないので、BD-Jタイトルに分岐した場合、必ずしも、プレイリストの再生が開始されるとは限らないからである。
【０５１８】
『Jump to BD-J title』は、BD-Jタイトルへの分岐を意味する。具体的には、インデックステーブルにおいて、BD-Jタイトルがカレントタイトルになることをいう。
【０５１９】
『Start Playlist Playback』は、何等かのプレイリストを意味するプレイリスト番号が、PSRに設定されて、プレイリスト情報が、カレントプレイリスト情報としてメモリに読み出されることをいう。
【０５２０】
『Change Output Mode』とは、3D出力モードへの切り替えの権限を有したBD-JアプリケーションがAPIをコールすることで、出力モードを変化することをいう。
【０５２１】
『Terminate presentation』とは、HDMVモードの場合は、プレイリストの再生が終了することをいい、BD-Jモードの場合は、BD-JタイトルからHDMVタイトルへとジャンプすることをいう。
【０５２２】
ディスクがロードされた際、出力モードの状態は、一時的な状態「Initialization」に遷移る。出力モードセレクションの状態は、一時的に「Initialization state」に遷移した後、invalid stateに遷移する。
【０５２３】
Output Mode Selectionの状態は、再生開始(Start Presentation)がアクティブになるまで、Invalidに維持される。HDMVモードにおいて「Start Presentation」は、プレイリストの再生が開始されたことを意味する。BD-JモードにおいてStart Presentation」は、BD-Jタイトルの再生が開始され、BD-Jアプリケーションが何等かの動作を開始したことを意味する。必ずしも、プレイリストの再生が開始されたことを意味するとは限らない。
【０５２４】
Start Presentationがアクティブになった際、出力モードは、一時的な状態である「Procedure when playback condition is changed」に遷移する。
【０５２５】
出力モードは、Procedure when playback condition is changedの結果に従ってValidに遷移する。出力モードが有効であって、Start Presentationが終了すれば、状態はInvalidに遷移する。
【０５２６】
ムービーオブジェクトにおけるナビゲーションコマンドは、コンテンツプロバイダが出力モードプリレファレンスを設定するために、プレイリスト再生の開始に先立ち、実行されねばならない。ムービーオブジェクトにおけるナビゲーションコマンドが実行された際、このモデルでは、Invalidになる。
【０５２７】
図２９の状態遷移は、モード選択プロシージャと呼ばれる規定の手順によって実現される。このモード選択プロシージャは、Initializationと、Procedure when playback condition is changedとから構成される。
【０５２８】
図３０は、Initializationの処理手順を示す。
【０５２９】
ステップＳ５０１は、ディスクアンバウンドのBD-Jアプリケーションが動作中かどうかの判定であり、ステップＳ５０２は、PSR23におけるStereoscopic Display Capabilityが「Capability有」を示し、インデックステーブル(index.bdmv)におけるInitial＿output＿mode情報が「立体視出力モード」を示すかどうかの判定である。Initial＿output＿mode情報のデータ構造については、本実施形態の主眼からは外れるので、後段の実施形態に説明の場を譲る。
【０５３０】
ステップＳ５０１がYesであれば、ステップＳ５０３においてカレントの出力モードを維持する。ステップＳ５０１がNo、ステップＳ５０２がYesであれば、ステップＳ４においてPSR22を立体視出力モードに設定する。ステップＳ５０１がNo、ステップＳ５０２がNoであればステップＳ５においてPSR22における出力モードを、2D出力モードに設定する。
【０５３１】
以上のInitializationによれば、initial＿output＿mode情報がオンになっている場合、再生装置にB−Dプレゼンテーションモードの再生能力が存在することを要件として、ディスク装填と同時に再生装置が3D出力モードになる。よってinitial＿output＿mode情報がオンであれば、記録媒体を装填してすぐ眼鏡をかけることで、立体視再生による仮想現実感に浸ることができる。
【０５３２】
図３１は、Procedure when playback condition is changedの処理手順を示す。ステップＳ５１１は、PSR22における出力モードは、2D出力モードであるか否かの判定であり、ステップＳ５１３は、PSR23におけるStereoscopic Display Capabilityが「Capability有」を示し、尚且つ、プレイリストに拡張ストリーム選択テーブルが存在するかどうかの判定である。
【０５３３】
ステップＳ５１１がYesであればステップＳ５１２において、カレント出力モードを変化させない。ステップＳ５１１がNo、ステップＳ５１３がYesであってもカレント出力モードを変化させない(ステップＳ５１２)。ステップＳ５１１がNo、ステップＳ５１３がNoであればカレント出力モードを2D出力モードに変化させる(ステップＳ５１４)。
【０５３４】
以下、3D出力モード実現のためのプレーヤ設定レジスタのビットアサインについて説明する。3D出力モードの実現のために用いられているレジスタは、２１番号、２２番、２３番、２４番のレジスタであり、これらのレジスタにおけるビットアサインを示したのが図３２である。図３２は、3D出力モード実現のためのプレーヤ設定レジスタのビットアサインを示す。
【０５３５】
同図（ａ）は、PSR21のビットアサインを示す。本図において、最下位ビットb0が、出力モードプリレファレンスであり、0bに設定されることで、2D出力モードである旨を示し、1bに設定されることで、立体視出力モードである旨を示す。ナビゲーションコマンドやBD-JアプリケーションはこのPSR21の値を書き換えることはできない。
【０５３６】
同図（ｂ）は、PSR22のビットアサインを示す。PSR22におけるb0は、カレントの出力モードを表す。出力モードが変化すれば、再生装置におけるビデオ出力は、対応して変化しなければならない。出力モードの値は、選択モデルによって制御されねばならない。
【０５３７】
以上のように本実施形態によれば、再生装置の状態変化やユーザからのストリーム切り替え要求があったとしても、出力モードの有効性を保つことができる。
【０５３８】
(第３実施形態)
前の実施形態では、カレントタイトルの選択時に出力モードを定めたが、本実施形態は、BD-Jタイトルがカレントタイトルとして選択された際、このカレントタイトルにおける出力モードを、どのようにして決定するかを示す実施形態である。
【０５３９】
以降、BD-Jオブジェクトについて説明する。図３３は、BD-Jオブジェクトの内部構成の一例を示す図である。本図に示すようにBD-Jオブジェクトは、「アプリケーション管理テーブル」、「端末管理テーブル」、「アプリケーションキャッシュ情報」、「プレイリストアクセス情報」、「キーインタレストテーブル」から構成される。
【０５４０】
「アプリケーション管理テーブル」は、タイトルをバウンダリィとしたアプリケーションシグナリングをアプリケーションマネージャやクラスローダに指示する制御テーブルであり、「端末管理テーブル」は、GUIを実現するためのHAViコンフィグレーションやGUIに用いるフォント、ユーザ操作のマスクの有無をマルチディアホームプラットフォーム(MHP)に指示する管理テーブルである。「アプリケーションキャッシュ情報」は、タイトル選択時のアーカイブファイルのキャッシュイン／キャッシュアウトをキャッシュマネージャに指示する制御テーブルであり、「プレイリストアクセス情報」タイトル選択時におけるプレイリストの自動再生の指定を再生制御エンジン(PCE)に指示する制御テーブルである。「キーインタレストテーブル」は、キーと、イベントとの対応付けをイベントマネージャに指示する制御テーブルである。
【０５４１】
引き出し線bj1は、アプリケーション管理テーブルにおけるエントリーをクローズアップして示している。この引き出し線に示すように、アプリケーション管理テーブルのエントリーは、タイトルにおいて、アプリケーションを自動的に起動させるべきか(AutoStart)、他のアプリケーションからの呼出しを待って起動すべきか(Present)という起動の仕方を示す「制御コード」と、「アプリケーションタイプ」と、起動すべきBD-Jアプリケーションをアーカイブしたアーカイブファイルのファイル名となる５桁の数値を用いて、対象となるアプリケーションを示す「アプリケーションID」と、「アプリケーション記述子」を含む。引き出し線bj2は、「アプリケーション記述子」の内部構成をクローズアップして示している。本引出線に示すように、「アプリケーション記述子」は、アプリケーションがロードされる場合の「優先度」と、アプリケーションがタイトルアンバウンドであるか否か、ディスクバウンドであるか否かを示す「バインディング情報」と、アプリケーションの名称を示す文字列と、アプリケーションの言語属性を示す「言語コード」と、アプリケーションに対応づけるアイコンの所在を指し示す「アイコンロケータ」と、「アプリケーションのプロファイル値」を、アプリケーション毎にして格納している。3D出力モードに対応するアプリケーションについては、このプロファイル値が=5に設定される。インデックステーブルにおけるBDMVアプリケーション情報の立体視コンテンツ存在フラグが1に設定されることは、このアプリケーションのプロファイル値が=5に設定されることが要件とされる。
【０５４２】
引き出し線bj3は、端末管理テーブルにおけるコンフィグレーション情報をクローズアップして示している。コンフィグレーション情報は、グラフィクスプレーンの確保を再生装置に指示する情報であり、この引き出し線bj3に示すように、端末管理テーブルは、HD3D＿1920×1080、HD3D＿1280×720、HD＿1920×1080、HD＿1280×720、QHD＿960×540,SD,SD＿50HZ＿720×576,SD＿60HZ＿720×480の何れかに設定することができる。
引き出し線bj4は、プレイリストアクセス情報における自動再生プレイリストを指定する情報の内部構成をクローズアップして示している。引出線bj4に示すように、自動再生プレイリストを指定する情報として、3Dプレイリスト1920×1080、3Dプレイリスト1280×720、2Dプレイリスト1920×1080、2Dプレイリスト1280×720、2Dプレイリスト720×576、2Dプレイリスト720×480の指定が可能になる。
【０５４３】
何れかのタイトルが選択された際、再生装置は、選択されたカレントタイトルに対応するもののプレイリストアクセス情報により指定されたプレイリストの再生を、アプリケーションからの再生指示を待つことなく開始し、プレイリスト再生の終了よりも、BD-Jアプリケーション実行が先に終了した場合、プレイリストの再生を継続して行う。
【０５４４】
こうした先行再生により、アプリケーションのクラスロードに時間がかかり、描画イメージが表示されないため、対話画面がなかなか出力されないような場合、プレイリスト再生による再生映像がそのまま出力させるので、アプリケーションにおける起動遅延が顕著な場合でも、とりあえずプレイリストの再生映像をユーザに視聴させることができる。アプリケーションのスターティングディレィの間、何かが写っている状態にしておくことができるので、ユーザに安心感を与えることができる。
【０５４５】
BD-Jアプリケーションにおいて立体視再生の実現に利用できるAPIには、Java2Micro＿Edition(J2ME) Personal Basis Profile(PBP 1.0)と、Globally Executable MHP specification(GEM1.0.2)for package media targetsがある。これらのAPIを利用すれば、ネットワーク処理のためのjava.net、GUI処理のためのjava.awt、言語処理のためのjava.lang、記録媒体に対するI/O処理のためのjava.io、ユーティリティであるjava.util、メディアフレームワークのためのjavax.mediaといったクラスのメソッド、コンストラクタ、インターフェイス、イベントを用いた構造化プログラミングで、３Ｄ再生が可能なBD-Jタイトルの記述が可能になる。
【０５４６】
BD-Jタイトルにおける3Dプレイリストの再生指示等、立体視を前提にしたBD-Jタイトルにおいてデフォルトで行うべき動作は、初期xletクラスのインスタンスであるxletコンテキストを生成させるようなプログラムをソースコードで記述することで作成できる。かかるxletコンテキストは、インスタンス生成時に状態変化を示す状態変化エクセプションイベントをスロウして、その後、再生装置におけるプレーヤ状態レジスタ、プレーヤ設定レジスタの保持値の取得を行い、取得した保持値が3D再生の能力の存在を示すものかどうかを判断した上で3Dプレイリストの再生を実行する。
【０５４７】
ここでの3Dプレイリストの再生は、3Dプレイリストを指定するロケータと、javax.mediaにおけるマネージャのクリエイトプレーヤメソッド「javax.media.Manager.createPlayer」とを利用して、3Dプレイリストの再生のためのプレーヤインスタンスを生成することでなされる。また、プレーヤインスタンスを生成できないときのイクセプションは、javax.meia.NoPlayerEceptionイベントをキャッチするcatch文で記述することができ、3Dプレイリストがないときのイクセプションは、java.io.IOExceptionイベントをキャッチするcatch文で記述することができる。
【０５４８】
またBD-JモードのためのエクステンションAPI(BD-Jエクステンションと呼ばれる)を用いることで、これまでの実施形態で述べた立体視再生のためのデータ構造、立体視再生における再生単位を用いた制御を実現する。このBD-Jエクステンションはjava.net、java.awt、java.lang、java.io、java.util、javax.mediaクラスのメソッドからのインへリッドメソッドを含み、これらのクラスのインターフェイスをエンベデッドインターフェイス、スーパーインターフェイスとしているので、java.net、java.awt、java.lang、java.io、java.util、javax.mediaクラスを用いたプログラミング技法の延長線上で、立体視再生を前提にしたBD-Jタイトルを作成することができる。
【０５４９】
例えばBD-JモードのためのエクステンションAPIは、レジスタセットの状態設定や状態取得を命じる設定取得クラスを含む。かかる設定取得クラスは、各PSRの保持値を示すコンスタントフィールドと、PSRの保持値の取得を命じる取得メソッドと、PSRの保持値の設定を命じる設定メソッドとから構成される。
【０５５０】
設定取得クラスのメソッドは、java.lang.objectクラスのメソッドのインヘリッドメソッドを含む。また、メソッドコールの際の引数が不正であれば、java.langクラスのイベントであるjava.lang.IlleghalArgumentExceptionイベントをスロウする。本クラスは、java.lang.objectのメソッドやイベントを継承しているので、プログラマは、java.lang.objectの延長線で、レジスタセットの保持値を利用したプログラムを作成することができる。
【０５５１】
図３４は、BD-Jタイトルにおける出力モード設定の処理手順を示すフローチャートである。
【０５５２】
（ａ）は、Procedure when BD-J Title is changedの処理手順を示すフローチャートである。ステップＳ５２１では、PSR22から出力モードを取得し、ステップＳ５２２では、HAViデバイスコンフィグレーションセレクションのビヘイビアに依拠して、2D出力モード又は立体視出力モードの何れかに出力モードを設定する。
【０５５３】
（ｂ）は、Procedure when Output Mode change is requestedの処理手順を示すフローチャートである。ステップＳ５２３では、PSR22から出力モードを取得し、ステップＳ５２４では、イニシャルHAViデバイスコンフィグレーションのビヘイビアに依拠して、2D出力モード又は立体視出力モードの何れかに出力モードを設定する。
【０５５４】
図３５は、イニシャルHAViデバイスコンフィグレーションセレクションのビヘイビアの一例を示すフローチャートである。本フローチャートは、ステップＳ５３０、ステップＳ５３１、ステップＳ５３２、ステップＳ５３３、ステップＳ５３６の判定結果に応じて、ステップＳ５３４、ステップＳ５３５、ステップＳ５３７の処理を選択的に実行する。
【０５５５】
ステップＳ５３０は、自動再生プレイリストが存在するかどうかの判定である。
【０５５６】
ステップＳ５３１は、PSR24におけるb5が「1」であるか否かの判定である。ここでb5が「1」であることは、3D出力モードにおいて、BD-Jモードの処理が可能であることを意味する。
【０５５７】
ステップＳ５３２は、直前の表示モードは3Dであるか否かの判定である。ステップＳ５３３は、選択されたタイトルの自動再生プレイリストが、1920×1080の3Dプレイリスト又は1280×720の3Dプレイリストであるかどうかの判定である。
【０５５８】
自動再生プレイリストが存在しない場合、ステップＳ５３７、ステップＳ５３８の判定を実行する。
【０５５９】
ステップＳ５３７は、PSR24におけるb5が「1」であるか否かの判定である。ここでb5が「1」であることは、3D出力モードにおいて、BD-Jモードの処理が可能であることを意味する。
【０５６０】
ステップＳ５３８は、BD-JオブジェクトにおけるHAViデバイスコンフィグレーションの解像度がHD3D＿1920×1080、HD3D＿1280×720であるかどうかの判定である。
【０５６１】
もしステップＳ５３７がYes、ステップＳ５３８がYesであれば、ステップＳ５３５において、表示モードを3Dに設定し、BD-JオブジェクトにおけるHAViデバイスコンフィグレーションの解像度に応じて1920×1080、あるいは1280×720に設定する。もしステップＳ５３７、ステップＳ５３８のどちらかがNoであれば、ステップＳ５３６において表示モードを2Dに設定し、解像度をBD-JオブジェクトにおけるHAViデバイスコンフィグレーションの解像度に設定する。
【０５６２】
自動再生プレイリストが存在する場合、ステップＳ５３１においてPSR24のb5が「1」であるか、ステップＳ５３２において直前の表示モードが3Dであるかどうか、又は、ステップＳ５３３においてプレイリストが3Dプレイリストで、その解像度が1920×1080、1280×720であるがどうかが判定される。ステップＳ５３１、ステップＳ５３２、ステップＳ５３３のどれかがNoであれば、ステップＳ５３４において表示モードを2Dに設定し、解像度を、自動再生プレイリストの解像度に設定する。
【０５６３】
ステップＳ５３２がYes、ステップＳ５３３もYesと判定された場合、ステップＳ５３５において、表示モードを3Dに設定し、解像度を、自動再生プレイリストの解像度に応じて1920×1080、又は、1280×720に設定する。
【０５６４】
以上のように本実施形態によれば、BD-Jオブジェクトに基づき、HAViデバイスコンフィグレーションで規定された解像度を用いて立体視再生を実現することができる。
【０５６５】
（第４実施形態)
本実施形態は、再生装置に接続された表示装置の立体視表示ケーパビリティを示すプレーヤ設定レジスタの内部構成をより具体的なものにして実施する場合の改良に関する。
【０５６６】
図３６は、PSR23のビットアサインを示す。PSR23は、再生装置に接続されている表示装置の特性値を表す。ナビゲーションコマンドやBD-Jアプリケーションは、PSR23の値を書き換えることはできない。PSR23の値は、表示装置がインターフェイスを通じてこれらを提供した際、再生を開始する前に、自動的に設定される。これらの値を自動取得できない場合、これらはユーザによって設定される。
【０５６７】
PSR23のb0は、表示装置の立体視表示ケーパビリティを示す。
【０５６８】
立体視表示ケーパビリティは、「0」に設定された際、接続されている表示装置が、1920×1080/23.976Hzプログレッシブビデオ、又は、1920×1080/59.94Hzプログレッシブビデオを表示する処理能力を有していない旨を示す。
【０５６９】
「1」に設定された際、接続されている表示装置が、1920×1080/23.976Hzプログレッシブビデオ、又は、1920×1080/59.94Hzプログレッシブビデオを表示する処理能力を有している旨を示す。
【０５７０】
PSR23のb1は、表示装置の立体視1280×720 50pビデオ表示ケーパビリティを示す。
【０５７１】
立体視1280×720 50pビデオ表示ケーパビリティは、「0」に設定された際、接続されている表示装置が、1280×720/50Hzプログレッシブビデオを表示する処理能力を有していない旨を示す。「1」に設定された際、接続されている表示装置が、1280×720/50Hzプログレッシブビデオを表示する処理能力を有している旨を示す。
【０５７２】
PSR23のb2は、裸眼立体視可否フラグを示す。
【０５７３】
裸眼立体視可否フラグ(No glasses required for stereoscopic display)は、「0」に設定されることで接続されているTVシステムが、立体視出力モードを視聴するのに眼鏡を必要とする旨を示し「1」に設定されることで接続されているTVシステムが、立体視出力モードを視聴するのに眼鏡を必要としない旨を示す。
【０５７４】
b8からb19までの画面横サイズ(Horozontal display size)は、接続されている表示装置の水平サイズをcm単位で表す。0x000である場合、未定義であり、0x001から0xFFEまでである場合、接続されている表示装置の水平サイズをcm単位で表す。ここで0xFFEは、4094cmのディスプレイである旨を示す。0xFFFは、水平長4094cmより大きいディスプレイである旨を示す。
【０５７５】
PSR23のビットアサインを用いると、PSR23における立体視ケーパビリティの判定手順は、図３７のフローチャートに示されるものとなる。
【０５７６】
図３７は、PSR23における立体視再生ケーパビリティの判定手順を示すフローチャートである。本フローチャートは、ステップＳ５１５〜ステップＳ５１７の判定ステップの判定結果の組合せに応じて、立体視再生ケーパビリティが存在するか、立体視再生ケーパビリティがが存在しないかという結論を下す。ステップＳ５１５は、PSR23のb2が「1」であるか否かの判定であり、ステップＳ５１６は、PSR23のb0が「1」であるか否かの判定である。ステップＳ５１７は、PSR23のb1が「1」であるか否かの判定である。ステップＳ５１５においてPSR23のb2が「1」であることは、眼鏡なしで裸眼立体視が可能であることを示す。よってPSR23のb1が「1」であれば、ステップＳ５１６及びステップＳ５１７の判定を経ることなく、ステップＳ５１８において、立体視再生可能であるとの判定結果を下す。眼鏡なしで立体視表示をすることができるは、立体視専用のものであり、解像度に関係なく、立体視再生可能であると判定結果を下すことができるからである。
【０５７７】
ステップＳ５１６において、PSR23のb0が「1」であることは、1920×1080/23.976Hz、及び、1280×720/59.94Hzにおける立体視再生が可能であることを示す。よってステップＳ５１５がNoであっても、ステップＳ５１６がYesであれば、ステップＳ５１８において、立体視再生可能であるとの判定結果を下す。
【０５７８】
ステップＳ５１７において、PSR23のb1が「1」であることは、1920×1080/23.976Hz,1280×720/59.94Hzの立体視再生が不可能でも、1280×720/50Hzにおける立体視再生が可能であることを示す。よってステップＳ５１５−ステップＳ５１６がNoであっても、ステップＳ５１７がYesであれば、ステップＳ５１８において、立体視再生可能であるとの判定結果を下す。
【０５７９】
PSR23のb0が「0」、PSR23のb1が「0」であることは、SD画像であることを示す。よって、ステップＳ５１７がNoであれば、立体視再生が不可能であり、強制的に2D出力を行う。
【０５８０】
これは、SD画像では、充分な品位の立体視再生を実現することができないからである。
【０５８１】
以上のように本実施形態によれば、再生装置に接続された立体視表示ケーパビリティに応じて、最適な解像度と、フレームレートとの組みを決定するので、表示装置に対するデータ転送を最適なものにすることができる。
【０５８２】
（第５実施形態)
本実施形態は、表示装置のフレームレートや解像度を最適にする改良に関する。これまでの実施形態では、BD-Jオブジェクトの端末管理テーブルやタイトルにおけるプレイリストから解像度を決定していたが、タイトルが未選択の状態においては、解像度やフレームレートは未定のままであった。そこで本実施形態は、インデックステーブルに、解像度やフレームレートの情報を組み込んでいる。
【０５８３】
インデックステーブルは記録媒体全体に関する管理情報であり、再生装置への記録媒体挿入後に、インデックステーブルが最初に読み出されることで、再生装置において記録媒体が一意に認識される。
【０５８４】
インデックステーブルは、再生装置におけるタイトル番号レジスタに格納され得る複数のタイトル番号と、動作モードを規定する動作モードオブジェクトとの対応付けを規定する。記録媒体に記録されているタイトルとは、タイトル番号によって特定される動作モードオブジェクトと、この動作モードオブジェクトから再生されるプレイリストとの組みをいう。映画作品と、タイトルとの関係は、映画作品と、それの複数バージョンとの関係である。つまり1つのバージョンしかないような映画作品は、「映画作品＝タイトル」という関係になる。映画作品に、劇場公開版、ディレクターズカット版、TV放映版等、複数のバージョンがある場合、映画作品における個々のバージョンが1つのタイトルになる。
【０５８５】
ここで、タイトル番号レジスタにおけるタイトル番号は、０、１〜９９９、不定値(0xFFFF)という番号がある。タイトル番号０は、トップメニュータイトルのタイトル番号である。トップメニュータイトルとは、ユーザによるメニューコール操作によって呼び出すことができるタイトルである。不定値(0xFFFF)のタイトル番号は、ファーストプレイタイトルのタイトル番号である。ファーストプレイタイトルとは、記録媒体の装填直後に、視聴者への警告やコンテンツプロバイダによるロゴ表示等を行うタイトルである。
【０５８６】
インデックステーブルは、各タイトル番号のそれぞれに対応したエントリー(タイトルインデックス)を有し、個々のタイトルインデックスに、動作モードを規定する動作モードオブジェクトを記述することで、各々のタイトルが、どのような動作モードで動作するのかを詳細に規定する。
【０５８７】
図３８は、インデックステーブルを説明するための説明図である。図３８（ａ）は、インデックステーブルファイルの内部構成を示す。本図に示すようにインデックステーブルファイルは、複数のタイトルインデックスと、BDMVアプリケーション情報とを含む。
【０５８８】
図３８（ｂ）は、タイトルインデックスの共通のデータ構造で定義される。この共通のデータ構造は、『オブジェクトタイプ』と、『ムービーオブジェクトレファレンス』と、『オブジェクトファイル名情報』とを含む。『オブジェクトタイプ』は、該当するタイトルに関付けられている動作モードオブジェクトが、MovieオブジェクトであるかBD-Jオブジェクトであるかを示す。『オブジェクトファイル名情報』は、タイトルに関連付けられたBD-J オブジェクトのファイル名を示す。『ムービーオブジェクトレファレンス』は、タイトルに関連付けられたムービーオブジェクトの識別子を示す。
【０５８９】
再生装置においてタイトル番号レジスタの値は、記録媒体の装填後、不定値0xFFFF→１〜９９９→０というように変化する。このタイトル番号の変化は、記録媒体の装填時に、ファーストプレイタイトルの再生を開始し、ファーストプレイタイトルの再生後、１から999までのタイトル番号レジスタのタイトル番号で指示されるタイトルの再生を行い、タイトル番号で指示されるタイトルの再生が終了すれば、トップメニュータイトルを再生してユーザによる選択待ちを行うというものである。１〜９９９のタイトル番号をもつタイトルのうち、タイトル番号レジスタに格納されているタイトル番号と、同じタイトル番号をもつものが、現在の再生対象、つまりカレントタイトルになる。タイトル番号レジスタにどのような番号を設定するかは、トップメニュータイトルに対するユーザ操作や、プログラムによるタイトル番号レジスタの設定によって決定される。
【０５９０】
図３８（ｃ）は、BDMVアプリケーション情報(ApplinfoBDMV)の内部構成を示す。本図に示すように、BDMVアプリケーション情報は、「初期出力モードプレファレンス(initial＿outputmode＿preference)」、「立体視コンテンツ存否フラグ(SS＿content＿exist＿flag)」、「ビデオフォーマット情報(video＿format)」、「ビデオレート情報(video＿rate)」から構成される。
【０５９１】
「初期出力モードプレファレンス(initial＿outputmode＿preference)」は、ディスクにおける初期出力モードのプレファレンスであり、「０」で2D出力モード、「１」で立体視出力モードを示す。既に、第２実施形態で説明したように、本初期出力モードレファレンスが『立体視出力モード』に設定されている場合、表示装置に立体視表示能力が存在することを前提として、ディスク装填時において、再生装置は立体視出力モードに設定される。
【０５９２】
「立体視コンテンツ存否フラグ(SS＿content＿exist＿flag)」は、プロファイル５機能を用いているか否かを示す。以下の条件の何れかを満たす場合、このフィールドは「１」に設定される。
【０５９３】
−拡張ストリーム選択テーブルが組み込まれた3Dプレイリストをもつ
−BD-Jオブジェクトにおけるアプリケーション管理テーブル内で現在シグナリングされているBD-Jアプリケーションは、自身のアプリケーション記述子におけるアプリケーションプロファイル値のセット内に、「プロファイル５」を含む。プロファイル５」とは、立体視再生に対応したアプリケーションプロファイルである。よってBD-Jオブジェクトに対応するタイトルに3Dプレイリストが存在しない場合や、プレイリストそのものがない場合であっても、かかるBD-Jアプリケーションが立体視の再生能力を有している場合、上記立体視存否フラグは「オン」に設定される。
【０５９４】
−立体視出力モードを用いる。
【０５９５】
立体視コンテンツ存否フラグが、「存在しない」と設定されている場合、対応するディスクが装填されている間は3D出力モードに移行することはないから、PSR22のモード選択プロシージャを実行せず、PSR22を2D出力モードのまま固定化する。一方、立体視コンテンツ存否フラグが存在すると設定されている場合のみ、モード選択プロシージャを実行する。
【０５９６】
「ビデオフォーマット情報(video＿format)」は、高バンド幅デジタル出力機能におけるビデオフォーマットを４ビットの値を用いて指示する。ディスク挿入時において、このビデオフォーマットを、ネゴシエートによって定めることができる。ビデオフォーマット情報は、ファーストプレイタイトルの再生がなされてから、トップメニュータイトルの再生時、又は、０〜９９９のタイトル番号で指示されるタイトルの再生時まで有効になる。
【０５９７】
トップメニュータイトルの再生後、又は、０〜９９９のタイトル番号で指示されるタイトルの再生後は、そのタイトルにおけるプレイリストにおけるピクチャや、そのタイトルにおけるメニューの表示解像度が適用されるからである。
【０５９８】
「ビデオレート情報(video＿rate)」は、高バンド幅デジタル出力機能におけるビデオレートを指示する４ビットの値である。ディスク挿入時において、このビデオレートを、ネゴシエートによって定めることができる。ビデオフォーマット情報、ビデオフレーム情報は、どちらかを0に設定することができる。どちらかが0に設定された場合、両フィールドは、再生装置によって無視される。「ビデオレート」とは、１秒当りのフレーム数を表す単位であり、FPS(Frame Per Second)という単位系で表現される。フレーム期間を波長と考えれば、フレームレートは「周波数」として表現することができ、フレームレートの表記には、単位系として「Hz」を用いることもある。ビデオレート情報は、ファーストプレイタイトルの再生がなされてから、トップメニュータイトルの再生時、又は、０〜９９９のタイトル番号で指示されるタイトルの再生時まで有効になる。
【０５９９】
トップメニュータイトルの再生後、又は、０〜９９９のタイトル番号で指示されるタイトルの再生後は、そのタイトルにおけるプレイリストにおけるビデオストリームのビデオレートが適用されるからである。
【０６００】
以上が記録媒体についての説明である。続いて、再生装置の詳細について説明する。再生装置が、ディスクインサート時に、以下の処理手順を実行する点が新しい。
【０６０１】
図３９は、ディスクインサート時の処理手順を示すフローチャートである。
【０６０２】
インサートされたディスクからインデックステーブル(Index.bdmv)を読み出し(ステップＳ５０１)、読み出されたIndex.bdmvのBDMVアプリケーション情報に記載された高バンド幅デジタル出力機能を実行するためのネゴシエーションを開始させて(ステップＳ５０２)、ステップＳ５０３〜ステップＳ５０９のループに移行する。このループは、ファーストプレイタイトルにおける0xFFFのカレントタイトル番号を、タイトル番号レジスタに設定して(ステップＳ５０３)、カレントタイトルに対応するタイトルインデックスのオブジェクトタイプがBD-Jオブジェクトであるか否かを判定し(ステップＳ５０４)、BD-Jオブジェクトでないなら、カレントタイトルに対応するタイトルインデックスのムービーオブジェクトレファレンスによって示されるムービーオブジェクトをロードし(ステップＳ５０５) 、BD-Jオブジェクトであるなら、カレントタイトルに対応するタイトルインデックスのオブジェクトファイル名情報によって示されるBD-Jオブジェクトをロードして(ステップＳ５０６)、ロードしたオブジェクトに基づき、タイトル再生を開始する(ステップＳ５０９)という処理を、ステップＳ５０８がNo、ステップＳ５０９がYesと判定されるまで繰り返すものである。
【０６０３】
ステップＳ５０３−ステップＳ５０９のループは、タイトル再生の開始後、ステップＳ５０８−ステップＳ５０９からなるループに移行する。本ループでタイトル再生が終了したと判定された場合(ステップＳ５０８でYes)、タイトル番号レジスタのカレントタイトル番号を更新した上で(ステップＳ５１０)、ステップＳ５０４に移行する。
【０６０４】
ステップＳ５０８−ステップＳ５０９のループで、ディスクイジェクトがなされた場合、本フローチャートの処理は終了する。インデックステーブルに、フォーマットレートの情報が存在するので、ファーストプレイタイトルの再生に先立ち、ネゴシエーションを実行することができる。
【０６０５】
図４０は、表示装置と、再生装置との間の間のやりとりを示す図である。
【０６０６】
図４０（ａ）は、データ転送フェーズ、ネゴシエーションフェーズを示す。左側に再生装置を示し、右側に表示装置を示す。再生装置と、表示装置との間の3つの矢印のうち、先頭のものはネゴシエーションフェーズph1を象徴的に示し、次のものは、23.976FPSによるデータ伝送フェーズph2を象徴的に示す。最後のものは、47.954FPSによるデータ伝送フェーズph3を象徴的に示す。
【０６０７】
3D出力モードでは、各フレームにおいてベースビューコンポーネント、ディペンデントビューコンポーネントの双方を伝送するので、実質的には表示フレームは倍になる。具体的には、2D出力モードにおいて23.976FPSを使用していた場合、3D出力モードでは47.954FPSになる。しかし本図の一例では、ベースビューコンポーネント及びディペンデントビューコンポーネントを結合して、サイドバイサイド方式で、2D出力モードと同じフレーム期間内に転送することにより、フレームレートの変動を発生させないようにしている。つまり、2D出力モードであっても、フレームレートは23.976FPSのままで、伝送すべきデータを、ベースビューコンポーネント及びディペンデントビューコンポーネントの組みに変更する。こうすることで、フレームレートの変更を招かずに、2D出力モードと、3D出力モードとの切替え時におけるフレームレートの変動をなくすようにしている。
【０６０８】
しかし、ディスク装填直後のネゴシエーションフェーズには、相互認証が存在し、この相互認証の過程ではフレームレートやビデオフォーマットが必要になる。しかしこれらフレームレートやビデオフォーマットの情報はビデオストリーム固有の情報であるから、タイトルが選択されて再生されるべきプレイリストが定まらないと、これらの情報を取得することはできない。
【０６０９】
一方、Initializationのプロシージャで述べたように、initial＿output＿mode情報がオンになっており、再生装置にB−Dプレゼンテーションモードの再生能力が存在する場合、ディスクの装填と同時に、3D再生を開始させることができる。しかし、表示装置によるネゴシエーションに時間がかかると、3D眼鏡をかけて立体視映像の視聴の準備をしたとしても、立体視映像が表示装置になかなか表示されず、ユーザの苛立ちを募らせてしまうという好ましくない事態が生じる。
【０６１０】
そこで本実施形態では、上述したようにフレームレートやビデオフォーマットの情報を、ディスク装填時に第１に読み取られる情報、つまり、インデックステーブルに設けることにしている。
【０６１１】
同図（ｂ）は、タイミングチャートである。第１段目は、モジュールマネージャの処理を時系列に示し、第２段目は、送信部の処理を時系列に示す。
【０６１２】
第２段目によると、送信部は、ネゴシエーション、データ転送という2つのフェーズを経ることがわかる。
【０６１３】
第１段目によると、モジュールマネージャは、インデックステーブルの読み出し、ファーストプレイタイトルの選択、ファーストプレイタイトルを構成する動作モードオブジェクトの実行及びプレイリスト再生、タイトル０〜９９９の選択、タイトル０〜９９９を構成する動作モードオブジェクトの実行及びプレイリスト再生という5つのフェーズを経ることがわかる。矢印fy1,fyは、マネージャから送信部へのフォーマット、レートの指示を模式的に示す。送信部へのフォーマット、レートの指示は、ファーストプレイタイトルの選択とほぼ同時になされているので、ファーストプレイタイトルの選択処理と並行してネゴシエーションが開始されており、データ転送の開始時期が格段に早まっていることがわかる。
【０６１４】
以上のように本実施形態によれば、上記記録媒体では、インデックステーブルにアプリケーション情報が存在しており、このアプリケーション情報は、認証に必要なパラメータとして、フォーマットレートを含むので、インデックステーブルの読み取り後、ファーストプレイタイトルの再生処理と同時に、相手側機器との相互認証を開始することができる。ファーストプレイタイトルの再生処理と、相手側機器との相互認証処理とをパラレルに実行することができるので、起動遅延は、約半分の時間にまで低減させることができる。
【０６１５】
(第６実施形態)
本実施形態では、立体視インターリーブドストリームファイルの内部構造についての改良である。
【０６１６】
前提事項として、UDFファイルシステムにおけるファイルについて簡単に説明する。UDFにおけるファイルは、ファイルエントリーによって管理されている複数のエクステントから構成される。「ファイルエントリ」は、「記述子タグ」と、「ICBタグ」と、「アロケーション記述子」とを含む。
【０６１７】
「記述子タグ」は、自身がファイルエントリである旨を示すタグである。タグには、ファイルエントリ記述子、スペースビットマップ記述子などの種別があるが、ファイルエントリの場合には、記述子タグとしてファイルエントリを示す「261」が記述される。
【０６１８】
「ICBタグ」は、ファイルエントリ自身に関する属性情報を示す。
【０６１９】
「アロケーション記述子」は、あるディレクトリの配下にある下位ファイルを構成するエクステントの記録位置を示す論理ブロック番号（LBN）を含む。アロケーション記述子は、エクステント長を示すデータと、エクステントの記録位置を示す論理ブロック番号とを含む。ただしエクステント長を示すデータの上位２ビットは、「０」に設定されることで、割り付け済みかつ記録済みエクステントである旨を示し、「１」に設定されることで、割り付け済みかつ未記録エクステントである旨を示す。「０」に設定されることで、アロケーション識別子の続きのエクステントであることを示す。あるディレクトリの配下にある下位ファイルが複数のエクステントに分割されている場合には、ファイルエントリはエストテント毎に複数のアロケーション記述子を有することになる。
【０６２０】
上述したようなファイルエントリーのアロケーション識別子を参照することで、ストリームファイルを構成するエクステントのアドレスを知得することができる。
【０６２１】
次に、本実施形態で想定されているファイルの種別について説明する。
【０６２２】
＜立体視インターリーブドストリームファイル(FileSS)＞
立体視インターリーブドストリームファイル(FileSS)は、2TSをインターリーブ形式にしたストリームファイル(2TSインターリーブファイル)であり、５桁の整数値と、立体視再生用のインターリーブド形式ファイルである旨を示す拡張子(ssif)とによって識別される。立体視インターリーブドストリームファイルは、エクステントSS[n]から構成され、エクステントSS[n](EXTSS[n])は、インデックス番号nによって特定される。インデックス番号nは、立体視インターリーブドストリームファイルの先頭から1つずつインクリメントされる番号である。
【０６２３】
エクステントSS[n]は、ディペンデントビューデータブロックと、ベースビューデータブロックとの組みとして構成される。
【０６２４】
エクステントSS[n]を構成するベースビューデータブロック、ディペンデントビューデータブロックは、ファイル2D、ファイルベース、ファイルディペンデントからのクロスレファレンスの対象となる。クロスレファレンスとは、記録媒体に記録された1つのデータ客体を、複数のファイルのエクステントとして、ファイルエントリーに登録しておくことをいう。本実施形態では、ファイル2Dのファイルエントリー、ファイルベースのファイルエントリー、ファイルディペンデントのファイルエントリーに、ベースビューデータブロック、ディペンデントビューデータブロックの先頭アドレス及び連続長が登録されることになる。
【０６２５】
＜ファイルベース(FileBase)＞
ファイルベース(FileBase)は、ファイル2Dに対応するクリップ情報におけるエクステントスタートポイント情報によって指示されるメインTSを「格納している」とされる仮想的なストリームファイルであり、少なくとも1つのエクステント1[i](EXT1[i]と呼ぶ)によって構成される。エクステント1[i]は、ファイルベースにおけるi番目のエクステントであり、iは、エクステントのインデックス番号であり、ファイルベースの先頭を0としてインクリメントされる。ファイルベースは、2TSファイルである立体視インターリーブドストリームファイルを、1TSファイルとして扱うための仮想的なストリームファイルであり、そのファイルエントリーを、再生装置のメモリ上で構築することで仮想的に生成される。
【０６２６】
実際の読み出しにあたって、ファイルベースは、この立体視インターリーブドストリームファイルのファイル名を用いてファイルオープンを行うことで特定される。具体的にいうと再生装置のミドルウェアは、立体視インターリーブドストリームファイルのファイル名を用いたファイルオープンがコールされた場合、ファイルベースのエクステントを特定するファイルエントリーをメモリ上で生成して、ファイルベースを仮想的にオープンする。立体視インターリーブドストリームファイルは、「1TSのみを包含している」とみなすことができ、2TSの立体視インターリーブドストリームファイルを1TSのファイルベースとして記録媒体から読み出すことができる。
【０６２７】
B−Bプレゼンテーションモードにおいて、ベースビューデータブロックのみを読み出したい場合は、このファイルベースを構成するエクステントのみが読み出しの対象になる。B−BプレゼンテーションモードからB−Dプレゼンテーションモードへのモード変更があったとしても、読出範囲を、ファイルベースを構成するエクステントの記録範囲から、立体視インターリーブドストリームファイルを構成するエクステントの記録領域に拡大すれば、ベースビューデータブロック、ディペンデントビューデータブロックの双方を読み出すことができるから、ファイル読み出しの効率性を低下させることはない。
【０６２８】
＜ファイルディペンデント(FileDependent)＞
ファイルディペンデント(FileDependent)は、サブTSを「格納している」とされるストリームファイルであり、エクステント2[i](EXT2[i])によって構成される。EXT2[i]は、ファイルディペンデントにおけるi番目のエクステントであり、iは、エクステントのインデックス番号であり、ファイルディペンデントの先頭を0としてインクリメントされる。ファイルディペンデントは、2TSファイルである立体視インターリーブドストリームファイルを、サブTSを格納した1TSファイルとして扱うための仮想的なストリームファイルであり、そのファイルエントリーを、再生装置のメモリ上で構築することで仮想的に生成される。
【０６２９】
ディペンデントビュービデオストリームは、立体視インターリーブドストリームファイルのファイル名である5桁番号に、1を加算した番号がファイル名として付与される。このファイル名を用いてアクセスされる。記録媒体には、ダミーファイルが記録されていて、ディペンデントビュービデオストリームの識別番号である、「１を加算した番号」がこのダミーファイルに付与される。ダミーファイルとは、ファイル名のみが存在していて、実体であるエクステントが存在しないファイルであり、ディペンデントビュービデオストリームは、このダミーファイルに格納されるとして扱われる。
【０６３０】
＜ファイル2D(File2D)＞
ファイル2Dは、2D出力モードにおいて再生されるメインTSを格納している1TSのストリームファイルであり、エクステント2Dから構成される。ファイル2Dは、５桁の整数値と、立体視再生用のインターリーブド形式ファイルである旨を示す拡張子(ssif)とによって識別される。
【０６３１】
図４１は、エクステントと、ファイル2D／ファイルベース、ファイルディペンデントとの対応付けを示す。
【０６３２】
第１段目は、ファイル2D／ファイルベース、ファイルディペンデントである00001.m2ts,00002.m2tsを示し、第２段目は、ベースビューデータブロックを格納したエクステント、ディペンデントビューデータブロックを格納したエクステントを示す。第３段目は、立体視インターリーブドストリームファイルである00001.ssifを示す。
【０６３３】
破線の矢印h1,h2,h3,h4は、エクステントEXT1[i],EXT2[i]が、どのファイルに帰属しているかというアロケーション識別子による帰属関係を示す。矢印h1,h2に示される帰属関係によると、エクステントEXT1[i],EXT1[i+1]は、ファイルベースである00001.m2tsのエクステントとして登録されていることがわかる。
【０６３４】
矢印h3,h4に示される帰属関係によると、エクステントEXT2[i],EXT2[i+1]は、ファイルディペンデントである00002.m2tsのエクステントとして登録されていることがわかる。
【０６３５】
矢印h5,h6,h7,h8に示される帰属関係によると、エクステントEXT1[i],EXT2[i],EXT1[i+1],EXT2[i+1]は、00001.ssifのエクステントとして登録されていることがわかる。以上のように、エクステントEXT1[i],EXT1[i+1]は、00001.ssifに帰属すると同時に、00001.m2tsに帰属するという二重性を有していることがわかる。この「ssif」という拡張子は、StereoScopic Interleave Fileの頭文字をとったものであり、立体視再生のため、インターリーブ形式になっていることを示す。
【０６３６】
ここで、ファイルベースを構成するエクステントと、ファイルディペンデントを構成するエクステントとの組みであって、同じエクステント識別子で特定されるものを「インターリーブエクステントユニット」という。この図４１の例において、エクステント識別子=iで特定されるEXT1[i]と、EXT2[i]とのペアがインターリーブエクステントユニット[i]になり、エクステント識別子=i+1で特定されるEXT1[i+1]と、EXT2[i+1]とのペアがインターリーブエクステントユニット[i+1]になる。立体視インターリーブドストリームファイルに対するランダムアクセスにあたっては、このエクステント識別子で特定されるインターリーブエクステントユニットが一度に記録媒体から読み出されることを保障せねばならない。
【０６３７】
図４２は、立体視インターリーブドストリームファイルと、ファイル2D／ファイルベースとの関係を示す。
【０６３８】
同図（ａ）の第３段目は、インターリーブドストリームファイルの内部構成を示す。立体視インターリーブドストリームファイルは、ベースビューデータブロックを格納したエクステントEXT1[1],EXT1[2]のそれぞれと、ディペンデントビューデータブロックを格納したエクステントEXT2[1],EXT2[2]のそれぞれとが交互配置されることで構成される。
【０６３９】
第１段目は、ファイル2D及びファイルベースの内部構成を示す。ファイル2D／ファイルベースは、第３段目におけるインターリーブドストリームファイルを構成するエクステントのうち、ベースビューデータブロックを格納したエクステントEXT1[1],EXT1[2]のみから構成されている。ファイル2Dのファイル名は、インターリーブドストリームファイルのファイル名が同一だが、拡張子が異なる。
【０６４０】
第２段目は、ファイディペンデントの内部構成を示す。ファイディペンデントは、第３段目におけるインターリーブドストリームファイルを構成するエクステントのうち、ディペンデントビューデータブロックを格納するエクステントEXT2[1],EXT2[2],EXT2[2]のみから構成されている。ファイルディペンデントのファイル名は、インターリーブドストリームファイルのファイル名に1を加算したものになっており、また拡張子が異なる。
【０６４１】
3D映像を含む光ディスクであったとしても、全ての再生装置が3D再生方式に対応しているとは限らないため、2Dでの再生がサポートされることが望ましい。ただし、2D再生のみに対応した再生装置は、3Dで拡張されたデータ構造などは判別できない。2D再生装置は旧来の2D再生方式のままの判別方法で、2Dプレイリストおよび2Dストリームにのみアクセスできる必要があるので、ベースビュービデオストリームについては、2D方式の再生装置が認識できるようなファイル形式で格納されている。
【０６４２】
１つ目の方法は、上述したようなプレイリスト情報の参照、つまり、メインTSは2D再生でも利用できるように2D再生方式と同じファイル名を使い、インターリーブ形式のストリームファイルは拡張子を変える方法である。同図（ｂ）における00001.m2ts、及び、00001.ssifは、一方は2D方式、他方は3D方式でありながら同じファイル名「00001」によってカップリングされている。
【０６４３】
プレイリストは、メインTSのAVクリップしか参照しないため、既存の2D再生装置ではファイル2Dしか再生しない。3D対応の再生装置は、プレイリストはメインTSの入ったファイル2Dしか参照していないが、同じ識別番号を持ち、拡張子のみ異なるファイルが存在する場合は、そのファイルを見つけ出し、3D映像のためのインターリーブ形式のストリームファイルであると判断して、メインTSと、サブTSとを出力する。
【０６４４】
２つ目の方法は、フォルダを分ける方法である。メインTSは既存のフォルダ名（例：STREAM）を持つフォルダ内に格納しておくが、サブTSは、3D特有の名前を持つフォルダ（例：SSIF）に同じファイル名『00001』で格納しておく。プレイリストがファイルを参照する際、2D再生装置ではSTREAMフォルダ内のファイルのみを参照するが、3D再生装置の場合は「STREAM」とSSIFフォルダの中から、同じ名前のファイルを同時に参照することにより、メインTSと、サブTSとを関連づけることが可能となる。
【０６４５】
３つ目の方法は、識別番号によるものである。ファイル2D／ファイルベースの識別番号が「００００１」である場合、ファイルディペンデントの識別番号は、同図（ｃ）に示すようにこのファイル2Dの識別番号に「１」を加算した番号、つまり、「０００２」という識別番号を付与する等、一定のルールに従って関連づけを行う方法である。しかし記録媒体のファイルシステムにおいて、上述のルールで命名されたファイルディペンデントは、あくまでも実体のないダミーファイルとして扱われる。これは、ファイルディペンデントの実体は、立体視インターリーブドストリームファイルに過ぎないとの理由による。こうして関連付けられたファイル名を、基本ストリーム選択テーブルにおけるストリーム登録情報、及び、拡張ストリーム選択テーブルにおけるストリーム登録情報におけるストリームエントリーのサブクリップエントリーIDレファレンス(ref＿to＿subclip＿entry＿id)に記述しておく。一方、再生装置については、サブクリップエントリーIDレファレンスに記述された識別番号に「1」を加算した識別番号のファイル名は、ダミーファイルのファイル名であると認証して、ファイルディペンデントを仮想的にオープンする処理を実行する。こうすれば、ストリーム選択プロシージャにおいて、上述したような関連付けがなされたファイルディペンデントが確実に記録媒体から読み出されることになる。
【０６４６】
クリップ情報ファイルについても、同様のルールで識別される。
【０６４７】
以上が、ファイル2D、ファイルベース、ファイルディペンデントについての説明である。
【０６４８】
以下、データブロックの詳細について説明する。
【０６４９】
＜ベースビューデータブロック＞
ベースビューデータブロック(B[i])は、メインTSのi番目のデータブロックである。ここで、メインTSとは、カレントプレイアイテム情報のクリップ情報ファイル名情報(クリップ情報ファイルネーム情報)を通じて、メインパスの基軸として指定されているTSである。B[i]の「i」は、ファイルベースの先頭のデータブロックを0としてインクリメントされるインデックス番号である。
【０６５０】
ベースビューデータブロックには、ファイルベースと、ファイル2Dとで共通化されるものと、ファイルベースと、ファイル2Dとで共通化されていないものとがある。
【０６５１】
ファイル2D及びファイルベースで共通化されるベースビューデータブロック、及び、ファイル2D固有のベースビューデータブロックは、ファイル2Dのエクステントになるものであり、再生装置におけるバッファアンダーフローを生じさせない長さに設定されている。そしてその先頭のセクタアドレスは、ファイル2Dのファイルエントリーにおけるアロケーション記述子に記述されている。
【０６５２】
ファイル2Dと共通化されていないファイルベース固有のベースビューデータブロックは、ファイル2Dのエクステントにはならないから、再生装置におけるシングルバッファをアンダーフローを生じさせない長さに設定されている訳ではない。より小さいサイズ、つまり、再生装置におけるダブルバッファをアンダーフローさせない長さに設定されている。
【０６５３】
またファイルベース固有のベースビューデータブロックは、その先頭セクタアドレスがファイルエントリーにおけるアロケーション記述子に記述されていない。代わりに、ベースビューデータブロックにおける先頭ソースパケットのソースパケットが、メインTSに対応するクリップ情報ファイルのクリップ情報内のエクステントスタートポイント情報によって、ポインティングされている。そのため、ファイルベース固有のベースビューデータブロックの先頭セクタアドレスは、立体視インターリーブドストリームファイルのファイルエントリーにおけるアロケーション記述子と、クリップ情報内のエクステントスタートポイント情報とを用いて導きだす必要がある。
【０６５４】
＜ディペンデントビューデータブロック＞
ディペンデントビューデータブロック(D[i])は、サブTSのi番目のデータブロックである。サブTSとは、カレントプレイアイテム情報に対応する拡張ストリーム選択テーブルのストリーム登録列におけるストリームエントリーにおいて、サブパスの基軸として指定されているTSである。D[i]の「i」は、ファイルディペンデントの先頭のデータブロックを0としてインクリメントされるインデックス番号である。
【０６５５】
ディペンデントビューデータブロックは、ファイルディペンデントのエクステントになるものであり、再生装置におけるダブルバッファのアンダーフローを生じさせない長さに設定されている。
【０６５６】
また、記録媒体の連続領域上で、ディペンデントビューデータブロックは、同じ再生時間で再生されるべきベースビューデータブロックより手前に配置される。そのため、立体視インターリーブドストリームファイルの読み出し時にあたって、ディペンデントビューデータブロックは、必ずベースビューデータブロックより先に読み出されることになる。
【０６５７】
ディペンデントビューデータブロックは、ファイル2Dと共通化されていないので、その先頭セクタアドレスが、ファイル2Dのファイルエントリーにおけるアロケーション記述子に記述されていない。代わりに、ディペンデントビューデータブロックにおける先頭ソースパケットのソースパケットが、クリップ情報内のエクステントスタートポイント情報によって、ポインティングされている。そのため、ディペンデントビューデータブロックの先頭セクタアドレスは、ファイル2Dのファイルエントリーにおけるアロケーション記述子と、クリップ情報内のエクステントスタートポイント情報とを用いて導きだす必要がある。
【０６５８】
＜エクステントの類型＞
上述したように、ファイル2Dのエクステントには、ファイルベースのエクステントと共通のものと、ファイルベースと共通ではないものとがある。
【０６５９】
ファイル2Dのエクステントが、B[0]、B[1]、B[2]、B[3]2D、B[4]2Dから構成され、ファイルベースのエクステントがB[0]、B[1]、B[2]、B[3]ss、B[4]ssから構成されるものとする。B[0]、B[1]、B[2]は、ファイルベースと共通化されているベースビューデータブロックである。B[3]2D、B[4]2Dは、ファイルベースと共通化されていない、ファイル2D固有のベースビューデータブロックである。
【０６６０】
またB[3]ss、B[4]ssは、ファイル2Dと共通化されていない、ファイルベース固有のベースビューデータブロックである。
【０６６１】
B[3]2Dにおけるデータと、B[3]ssのデータとは、bit-for-bitの同一性を有する。B[4]2Dにおけるデータと、B[4]ssのデータとは、bit-for-bitの同一性を有する。
【０６６２】
これらのファイル2DにおけるデータブロックB[2]、B[3]2D、B[4]2Dは、ロングジャンプを生じさせる場所の直前において、連続長が大きいエクステント（ビッグエクステント）を構成する。ファイル2Dは、ロングジャンプの直前で、ビックエクステントを形成することができるので、立体視インターリーブドストリームファイルを2D出力モードで再生する場合であっても、リードバッファのアンダーフローを危惧する必要はない。
【０６６３】
ファイル2D及びファイルベースは、エクステントが一部異なっているものの、同一性を有しているので、これらファイル2D及びファイルベースを併せて、「ファイル2D／ファイルベース」という。
【０６６４】
図４３は、立体視インターリーブドストリームファイル、ファイル2D、ファイルベースの相互関係を示す。第１段目はファイル2Dを示し、第２段目は記録媒体上のデータブロック、第３段目は立体視インターリーブドストリームファイル、第４段目はファイルベース、第５段目はファイルディペンデントを示す。
【０６６５】
第２段目におけるデータブロックは、上述したD[1],B[1],D[2],B[2],D[3],B[3]ss,D[4],B[4]ss,B[3]2D,B[4]2Dである。そして矢印ex1,ex2,ex3,ex4は、データブロックのうち、B[1],B[2],B[3]2D,B[4]2Dがファイル2Dのエクステントを構成しているという帰属関係を示す。
【０６６６】
矢印ex5,ex6は、データブロックのうち、D[1],B[1],D[2],B[2],D[3],B[3]ss,D[4],B[4]ssが立体視インターリーブドストリームファイルのエクステントを構成しているという帰属関係を示す。
【０６６７】
第４段目は、この立体視インターリーブドストリームファイルを構成するデータブロックのうち、B[1],B[2],B[3]ss,B[4]ssがファイルベースのエクステントとなり、第５段目は、立体視インターリーブドストリームファイルを構成するデータブロックのうち、D[1],D[2],D[3],D[4]がファイルディペンデントのエクステントになることを示す。
【０６６８】
図４４は、2Dプレイリスト、3Dプレイリストを示す。第１段目は、2Dプレイリスト情報であり、第２段目は、ベーズデータブロック、第３段目は、3Dプレイリスト、第４段目は、ディペンデントビューデータブロックを示す。
【０６６９】
矢印rf1,rf2,rf3は、2Dプレイリスト情報のプレイアイテム情報におけるclip＿information＿file＿nameに記述されているファイル名00001と、拡張子m2tsとを組合せることによる再生経路を示す。この場合、データブロックB[1],B[2],B[3]2Dによってベースビュー側の再生経路が構成される。
【０６７０】
矢印rf4,rf5,rf6,rf7は、3Dプレイリスト情報のプレイアイテム情報により指定される再生経路を示す。この場合、B[1],B[2],B[3]ss,B[4]ssを用いてベースビュー側の再生経路が構成される。
【０６７１】
矢印rf8,rf9,rf10,rf11は、3Dプレイリスト情報のサブプレイアイテム情報により指定される再生経路を示す。この場合、D[1],D[2],D[3],D[4]を用いてディペンデントビュー側の再生経路が構成される。これらのプレイアイテム情報、サブプレイアイテム情報により指定される再生経路を構成するデータブロックは、プレイアイテム情報におけるclip＿information＿file＿nameに記述されているファイル名と、拡張子ssifとを組合せてファイルオープンを行うことで読み出すことができる。
【０６７２】
本図の3Dプレイリストにおけるクリップ情報ファイルネーム情報、2Dプレイリスにおけるクリップ情報ファイルネーム情報は、共通のファイル名を記述しているので、これら3Dプレイリスト、2Dプレイリストを定義するようなプレイリスト情報を記述するにあたっては共通する記述で足りる(符号df1,df2参照)。よって、この3Dプレイリストを実現するようなプレイリスト情報を記述しておけは、再生装置の出力モードが立体視出力モードのときは3Dプレイリストとして機能し、再生装置の出力モードが2D出力モードのときは2Dプレイリストとして機能することになる。本図の2Dプレイリスト、3Dプレイリストは、1つのプレイリスト情報を記述しておくことで、これを解釈する再生装置の出力モードに応じて、2Dプレイリスト、3Dプレイリストとして解釈されるので、オーサリングを行う者の手間を軽減することができる。
【０６７３】
立体視インターリーブドストリームファイルにメインTS、サブTSを格納する場合、2Dプレイリストのプレイアイテム情報におけるclip＿information＿file＿nameは、ファイル2Dのファイル名を記述する。3Dプレイリストのプレイアイテム情報におけるclip＿information＿file＿nameは、ファイルベースのファイル名を記述する。ファイルベースは、仮想的なファイルであり、そのファイル名は、立体視インターリーブドストリームファイルと同じものなので、立体視インターリーブドストリームファイルのファイル名をプレイアイテム情報におけるclip＿information＿file＿nameに記述しておけばよい。拡張ストリーム選択テーブルのストリーム登録情報におけるref＿to＿subclip＿entry＿idは、ファイルディペンデントのファイル名を記述する。ファイルディペンデントのファイル名は、立体視インターリーブドストリームファイルの識別番号に、１を加算したものである。
【０６７４】
以上のように、ベースビューデータブロックと、ディペンデントビューデータブロックとを1つの立体視インターリーブドストリームファイルに格納しつつも、立体視インターリーブドストリームファイルを、ファイル2D、ファイルベース、及び、ファイルディペンデントのうち、何れかのファイルとしてオープンすることができるので、デコーダ側では、立体視インターリーブドストリームファイルを通常のストリームファイルと同様に取り扱うことができる。よって、ベースビュービデオストリーム、ディペンデントビュービデオストリームの格納方式に、積極的に立体視インターリーブドストリームファイルを取り入れることができる。
【０６７５】
次にクリップ情報ファイルの詳細な内部構造について説明する。
【０６７６】
図４５は、クリップ情報ファイルの内部構成を示す。
【０６７７】
同図（ａ）は、2Dのクリップ情報ファイル、同図（ｂ）は、3D用のクリップ情報ファイルを示す。これらのクリップ情報ファイルは、『クリップ情報』、『シーケンス情報』、『プログラム情報』、『特徴点情報』を含む。
【０６７８】
『クリップ情報』は、ストリームファイルに格納されているソースパケット列のそれぞれが、どのようなAVクリップであるかをATCシーケンス毎に示す。
【０６７９】
『シーケンス情報』は、ストリームファイルに格納されている1又は複数のソースパケット列がどのようなATCシーケンスであるかを示す情報(ATCシーケンス情報)をATCシーケンス毎に示す構成になっている。ATCシーケンス情報は、ATCの開始点たるソースパケットがどこに存在するかをソースパケット番号で示す情報、STCシーケンス識別子ーATCシーケンス識別子間のオフセットと、複数のSTCシーケンスのそれぞれについてのSTCシーケンス情報とを含む。STCシーケンス情報は、そのSTCシーケンスにおけるPCRを格納しているソースパケットのパケット番号、そのATCシーケンスのうち、どこにSTCシーケンスの開始点たるソースパケットが存在するかを示す情報、STCシーケンスにおける再生開始時刻、再生終了時刻を含む。
【０６８０】
『プログラム情報』は、クリップ情報ファイルによって「AVクリップ」であるとして管理されているメインTS、サブTSのプログラム構成を示す情報であり、AVクリップがどのようなESを多重化したものであるかを示す。具体的には、AVクリップに多重化されているESがどのようなパケット識別子を有しているか、どのような符号化方式であるかを示す。ビデオストリームが、MPEG2-video,MPEG4-AVC等のうち、どの符号化方式を用いて圧縮符号化されているかは、このプログラム情報内に明示される。
【０６８１】
『特徴点情報』は、AVクリップに多重化されている複数のESの特徴点がどこに存在するかを、ES毎に示す情報である。ES毎の特徴点を示す情報が、基本エントリーマップと呼ばれる。
【０６８２】
何が特徴点になるかは、ストリームの種別毎に異なる。ベースビュービデオストリーム、ディペンデントビュービデオストリームの場合は、オープンGOP、クローズドGOPの先頭に位置するIピクチャタイプのビューコンポーネントの先頭を示すアクセスユニットデリッミターが特徴点となる。オーディオストリームの場合は、１秒置き等、一定期間置きに存在するオーディオフレームの先頭位置を示すアクセスユニットデリッミターが特徴点となり、PGストリーム、IGストリームの場合は、グラフィクスストリームのディスプレイセットのうち、表示に必要な全ての機能セグメントを具備したもの(エポックスタートのディスプレイセット、アクジッションポイントのディスプレイセット)の先頭位置を示すアクセスユニットデリッミターが特徴点となる。
【０６８３】
また特徴点をどのように表すかは、ATCシーケンス、STCシーケンスのそれぞれで異なる。ATCシーケンスにおいて特徴点は、ソースパケット番号で表現される。STCシーケンスにおいては、同じ特徴点が、STC時間軸における時点を示すPTSを用いて表現される。
【０６８４】
上記違いに鑑みES毎の基本エントリーマップは、複数のエントリーポイントから構成されている。具体的にいうと、エントリーマップを構成する個々のエントリーポイントは、ATCシーケンスにおける特徴点の所在を示すソースパケット番号が、STCシーケンスにおける特徴点の所在を示すPTSと対応付けられており、その特徴点へのアングル切り替えが可能であるか否かを示すフラグ(is＿angle＿changeフラグ)と、GOP先頭に存在するイントラピクチャのサイズを示す情報(I＿size)とを具備している。マルチアングル区間を構成するインターリーブユニットの先頭に位置するソースパケットは、アングル切り替えが可能になっているため、インターリーブユニットの先頭ソースパケットを差すエントリーポイントのis＿angle＿changeフラグは、必ずオンに設定される。また、インターリーブユニットの先頭ソースパケットを差すエントリーポイントは、エントリーポイントによって、プレイアイテム情報におけるIn＿Timeと対応付けられている。
【０６８５】
ES毎のエントリーマップは、これらストリーム種別毎の特徴点のソースパケット番号を、PTSに対応付けて示しているので、このエントリーマップを参照することで、STCシーケンスにおける任意の時点から、その時点に最も近いES毎の特徴点の所在を示すソースパケット番号を導くことができる。
【０６８６】
以上が2D用のクリップ情報ファイルについての説明である。続いて、3D用のクリップ情報ファイルの詳細について説明する。3D用のクリップ情報ファイルは、図４５（ｂ）の内部構成になっていて、通常のクリップ情報(管理情報)である「ファイル2D用のクリップ情報」の他に、ファイルディペンデント用のクリップ情報である「クリップディペンデント情報(ベースビュー管理情報)」、ファイルベース用のクリップ情報である「クリップベース情報(ベースビュー管理情報)」が存在する。これは以下の理由による。上述したように、立体視インターリーブドストリームファイルと、通常のストリームファイルとの混同を避けるため、立体視インターリーブドストリームファイルは、ストリームファイルとは異なるディレクトリに格納される。そのため立体視インターリーブドストリームファイルには、クリップ情報ファイルを対応付けることができない。そこで、クリップディペンデント情報、及び、クリップベース情報は、ファイル2Dに対応するクリップ情報ファイルに格納されることになる。
【０６８７】
2D用のクリップ情報と、クリップベース情報及びクリップディペンデント情報との違いは、クリップベース情報及びクリップディペンデント情報の内部に、エクステントスタートポイント列を含むメタデータが存在する点である。
【０６８８】
同図（ｂ）において、クリップディペンデント情報は、エクステントスタートポイント列を含み、クリップベース情報も、エクステントスタートポイント列を含む。特徴点情報は、基本となるエントリーマップを含み、エクステンションデータは、拡張エントリーマップを含む。
【０６８９】
3D出力モードにおいてクリップ情報ファイルは、クリップベース情報ファイルと、クリップディペンデント情報ファイルとに分割される。
【０６９０】
同図（ｃ）は、クリップベース情報ファイルを示す。本図に示すように、クリップベース情報と、基本エントリーマップとから構成される。クリップベース情報は、エクステントスタートポイント情報テーブルを含む。
【０６９１】
同図（ｄ）は、クリップディペンデント情報ファイルを示す。本図によるとクリップディペンデント情報ファイルは、クリップディペンデント情報と、拡張エントリーマップとを含む。クリップディペンデント情報は、エクステントスタートポイント情報テーブルを含む。
【０６９２】
クリップ情報ファイル用のディレクトリ（CLPIディレクトリ）には、2D出力モードのクリップ情報ファイルが存在している。クリップベース情報ファイルは、3D出力モードにおいて、クリップ情報ファイルから生成され、この2D出力モードのクリップ情報ファイルに格納されているものとして扱われる。
【０６９３】
クリップ情報ファイル用のディレクトリ（CLPIディレクトリ）には、ダミーのクリップ情報ファイルが存在しており、このダミーのクリップ情報ファイルには、ファイル2D／ファイルベースに対応する番号、つまり、ファイル2D／ファイルベースの識別番号に「１」を加算した番号のファイル名が付与されている。クリップディペンデント情報ファイルは、3D出力モードにおいて、ファイル2Dに対応するクリップ情報ファイルから生成され、このダミーのクリップ情報ファイルに格納されているものとして扱われる。ここで、2D出力モードのクリップ情報ファイルが00001.clpiであれば、3D出力モードにおいてクリップベース情報ファイルは、00001.clpiに格納されているものとして扱われ、3D出力モードにおいてクリップディペンデント情報ファイルは、00002.clpiに格納されているものとして扱われる。
【０６９４】
＜エクステントスタートポイント＞
エクステントスタートポイントについて説明する。
【０６９５】
上述したように立体視インターリーブドストリームファイルは、2つのクリップAVストリーム(BDAV  MPEG2トランスポートストリーム)から構成される。エクステントスタートポイント情報テーブルのペアは、立体視インターリーブドストリームファイルを2つのAVストリームに分割する途を与える。エクステントスタートポイント情報テーブルは、以下のように供給される。
【０６９６】
(1)エクステントスタートポイント情報テーブルは、サブパスタイプ＝８のサブパスを含むプレイリストのプレイアイテムによって参照されるクリップ情報に格納されて再生装置に供給される。サブパスタイプ＝８のサブパスとは、オンディスクタイプのOut-of-MUXディペンデントビュービデオストリーム再生パスである。
【０６９７】
(2）別のエクステントスタートポイント情報テーブルは、サブパスタイプ＝８のサブパスを含むプレイリストのサブプレイアイテムによって参照されるクリップ情報に格納されて再生装置に供給される。
【０６９８】
もしプレイアイテム情報に、マルチアングル区間を構成していて、マルチアングル区間が存在することを示すフラグ（イズマルチアングルフラグ）が「オン」に設定された場合、エクステントスタートポイント情報テーブルのペアは、それぞれアングルID値によって参照されるクリップ情報、及び、サブクリップエントリーID値によって参照されるクリップ情報に格納されて再生装置に供給される。
【０６９９】
クリップ情報ファイルにおけるエクステントスタートポイント情報テーブルのデータ構造について説明する。ext＿data＿entry()内のエクステンションデータにおけるID1値と、ID2値とは、それぞれ0x0002,0x0004に設定さねればならない。
【０７００】
エクステントスタートポイント情報テーブルをもつクリップ情報ファイルは、以下の2つの条件を満たす必要がある。
【０７０１】
（ａ）サブパスタイプ＝８のサブパスを含むプレイリストのプレイアイテムによって参照されねばならない。
【０７０２】
（ｂ）サブパスタイプ＝８のサブパスにおけるサブプレイアイテムによって参照されねばならない。ここで、サブパスタイプ＝８とは、オンディスクタイプのOut-of-MUXディペンデントビュービデオストリーム再生パスをいう。
【０７０３】
図４６は、クリップ情報ファイルと、プレイリストと、立体視インターリーブドストリームファイルとの関係を示す。右側は、立体視インターリーブドストリームファイルを示し、左側はクリップ情報ファイルを示す。真ん中は第１段目にファイルベースを示し、第２段目にクリップベース情報ファイル、第３段目に3Ｄプレイリスト、第４段目にクリップディペンデント情報ファイル、第５段目にファイルディペンデントを示す。
【０７０４】
矢印bk1,bk2は、右側におけるストリームファイルを分割することで、ファイルベース、ファイルディペンデントが得られることを示す。
【０７０５】
左側におけるクリップ情報ファイルは、特徴点情報、エクステンションデータ、クリップベース情報、クリップディペンデント情報を含む。矢印bk3,bk4は、クリップベース情報におけるエクステントスタートポイント情報テーブル、クリップディペンデント情報におけるエクステントスタートポイント情報テーブルが、立体視インターリーブドストリームファイルを分割する途を与えることを模式的に示す。
【０７０６】
図４７は、クリップベース情報、クリップディペンデント情報の内部構成を示す図である。本図（ａ）に示すようにクリップベース情報、クリップディペンデント情報は、対応するAVクリップがどのようなストリームの類型に属するかを示す『クリップストリームタイプ情報』と、対応するAVクリップによって構成されるアプリケーションが、ムービーアプリケーション、タイムベーススライドショーアプリケーション、ブラウザブルスライドショーアプリケーション等、どのような類型に属するかを示す『アプリケーションタイプ』と、再生装置において、ソースパケットがソースパケットデパケッタイザを通過した後、AVクリップにおけるTSパケットがどれだけの転送レートで転送されるかを示す『TSレコーディングレート』と、対応するAVクリップを構成するソースパケット数を示す『ソースパケット数』と、前のAVクリップを構成するATCシーケンスとのATCの差分である『ATC差分値』と、『エクステントスタートポイント情報テーブル』とから構成される。
【０７０７】
同図（ｂ）は、エクステントスタートポイント情報テーブルの内部構成を示す。本図に示すようにエクステントスタートポイント情報テーブルは、number＿of＿extent＿start＿pointsと、number＿of＿extent＿start＿points個のSPN＿start＿pointから構成される。
【０７０８】
number＿of＿extent＿start＿pointsは、関連するAVストリームファイルに帰属するエクステントの個数を示す。クリップベース情報におけるエクステントスタートポイント情報テーブルと、クリップディペンデント情報におけるエクステントスタートポイント情報テーブルとのペアは、number＿of＿extent＿start＿pointsが同じ値になる。
【０７０９】
SPN＿extent＿start(SPN＿extent＿start[0]〜SPN＿extent＿start[number＿of＿extent＿start＿point])は、number＿of＿extent＿start＿point+1個のSPN＿extent＿startから構成される。SPN＿extent＿startは、エクステント識別子[extent＿id]によって指示され、AVストリームファイルにおけるextent＿id番目のエクステントが開始するソースパケットのソースパケット番号を示す32ビットの値である。
【０７１０】
次に、クリップ情報ファイルのエクステンションデータについて説明する。エクステンションデータには、拡張エントリーマップが存在する。拡張エントリーマップは、基本エントリーマップと同様、複数のエントリーポイントから構成されている。具体的にいうと、拡張エントリーマップを構成する個々のエントリーポイントは、ATCシーケンスにおける特徴点の所在を示すソースパケット番号が、STCシーケンスにおける特徴点の所在を示すPTSと対応付けられており、その特徴点へのアングル切り替えが可能であるか否かを示すフラグ(is＿angle＿changeフラグ)と、GOP先頭に存在するイントラピクチャのサイズを示す情報(I＿size)とを具備している。しかし拡張エントリーマップには、以下の制限が、拡張エントリーマップに加えられている点が異なる。
【０７１１】
拡張エントリーマップ内に、MPEG4-MVCビューコンポーネントのためのエントリーが存在する場合、拡張エントリーマップにおけるPTSと同じビューコンポーネントに対応するエントリーが拡張エントリーマップに存在せねばならない。
【０７１２】
アプリケーションタイプが１、８の2つのクリップ情報ファイルであって、立体視インターリーブドストリームファイルに対応するものが存在する場合、以下の条件が満たされねばならない。つまり、アプリケーションタイプ「=1」のクリップ情報(プライマリビデオストリームというアプリケーションタイプのクリップ情報である)のエクステントID値によって指示されるエクステントが、ベースビュービデオストリームのPTS＿EP＿Startによって参照されるソースパケットをもつ場合、アプリケーションタイプ＝８のクリップ情報の同じエクステントID値によって指示されるエクステントは、ディペンデントビューストリームの同じ値のPTS＿EP＿Startによって参照されるソースパケットを含んでいなければならない。
【０７１３】
図４８は、基本エントリーマップと、拡張エントリーマップとを示す図である。本図において、第５段目は、ディペンデントビューデータブロックと、ベースビューデータブロックとの複数の組みを示す。第４段目は、ディペンデントビューデータブロック及びベースビューデータブロックを構成するソースパケット列を示す。第１段目は、PTSにて特定されるビューコンポーネントを示す。そして第２段目は、基本エントリーマップを示し、第３段目は、拡張エントリーマップを示す。
【０７１４】
エクステントID=1のエクステントスタートポイントによって指示されるエクステント[1]が、ベースビュービデオストリームのPTS＿EP＿Start=t1のエントリーによって参照されるSPN=n1のソースパケット[n1]をもつ場合、アプリケーションタイプ＝８のクリップ情報の同じエクステントIDである、エクステントID=1のエクステントスタートポイントによって指示されるエクステント[1]は、ディペンデントビューストリームの同じ値のエントリーである、PTS＿EP＿Start=t1のエントリーによって参照されるSPN=n11のソースパケット[n11]を含む。
【０７１５】
以上のように、ベースビュービデオストリームのGOP(i)の先頭に位置するソースパケットと、ディペンデントビュービデオストリームのGOP(i)の先頭に位置するソースパケットとが、同一のインターリーブエクステントユニットに属する場合、ベースビュービデオストリームのGOP(i)先頭のソースパケット、及び、ディペンデントビュービデオストリームのGOP(i)の先頭ソースパケットをポインティングするエントリーが、基本エントリーマップ及び拡張エントリーマップの双方に追加される。よってこの場合、基本エントリーマップ及び拡張エントリーマップの双方を用いれば、ベースビュービデオストリームのGOP(i)、及び、ディペンデントビュービデオストリームのGOP(i)の連続読み出しを保障することができる。
【０７１６】
図４９は、拡張エントリーマップにおいて許容されないエントリーを示す。
【０７１７】
ベースビュービデオストリームのPTS＿EP＿Start=xのエントリーによって参照されるSPN=xのソースパケット[x]が、エクステントID=xにて参照されるファイルベースエクステントの先頭に存在していて、PTS＿EP＿Start=xのエントリーによって参照されるSPN=yのソースパケット[y]が、エクステントID「＝j」にて参照されるファイルディペンデントエクステントの先頭に存在しており、iとjとが異なるものとする。
【０７１８】
エクステントID=iのクリップディペンデントのエクステントスタートポイントによって指示されるエクステント[i]は、ベースビュービデオストリームの同じ値のエントリーである、PTS＿EP＿Start=xのエントリーによって参照されるSPN=xのソースパケットを含んでいるとはいえないから、拡張エントリーマップにはPTS＿EP＿Start=xのエントリーを追加することはできない。
【０７１９】
ベースビュービデオストリームのGOP(i)の先頭に位置するソースパケットと、ディペンデントビュービデオストリームのGOP(i)の先頭に位置するソースパケットとが、別々のインターリーブエクステントユニットに属する場合、GOP(i)先頭のソースパケットをポインティングするエントリーを、基本エントリーマップ及び拡張エントリーマップの何れにも追加しない。この場合、ランダムアクセスのアクセス先から、ベースビュービデオストリームのGOP(i)、及び、ディペンデントビュービデオストリームのGOP(i)が除外されるので、アクセス性能の低下を防止することができる。
【０７２０】
図５０は、プレイアイテムの再生手順を示す。
【０７２１】
ステップＳ２０１は、カレント出力モードが3D出力モードであるか否かの判定であり、カレント出力モードが2D出力モードであれば、ステップＳ２０３〜ステップＳ２０６を実行する。
【０７２２】
ステップＳ２０３において、カレントプレイアイテムのClip＿Information＿file＿nameに記述されている「XXXXX」と、拡張子「m2ts」とで指定されているストリームファイルをオープンし、ステップＳ２０４において、ビデオストリームのパケットIDに対応するエントリーポイントを用いて、カレントPlayItem.In＿Time及びカレントPlayItem.Out＿TimeをStart＿SPN[i]及びEnd＿SPN[i]に変換する。
【０７２３】
ステップＳ２０５では、パケットID[i]のTSパケット[i]をStart＿SPN[i]からEnd＿SPN[i]まで読み出すための読出範囲[i]に属するエクステントを特定し、ステップＳ２０６において、読出範囲[i]に属するエクステントを連続的に読み出すよう、記録媒体のドライブに指示する。
【０７２４】
カレント出力モードが立体視出力モードであれば、ステップＳ３００〜ステップＳ６０のループに移行する。
【０７２５】
ステップＳ３００において、カレントプレイアイテムのClip＿Information＿file＿nameに記述されている「XXXXX」と、拡張子「ssif」とで指定されているストリームファイルをオープンし、ステップＳ３０１において、カレントプレイアイテム情報のベースビューインディケータに従い、ベースビュービデオストリームをレフトビュービデオプレーン及びライトビュービデオプレーンのどちらか一方に割り当て、ディペンデントビュービデオストリームを、レフトビュービデオプレーン及びライトビュービデオプレーンの他方に割り当てる。
【０７２６】
ステップＳ３０２において、ベースビュービデオストリームに対応する基本エントリーマップを用いて、カレントPlayItem.In＿Time及びカレントPlayItem.Out＿TimeをStart＿SPN[i]及びEnd＿SPN[i]に変換する。
【０７２７】
ステップＳ３０３では、ディペンデントビュービデオストリームに対応する拡張エントリーマップを用いて、SubPlayItemIn＿Time、SubPlayItemOut＿TimeをStart＿SPN[j]、End＿SPN[j]に変換する(ステップＳ３０４)。
【０７２８】
ベースビュービデオストリームを構成するTSパケット[i]をStart＿SPN[i]からEnd＿SPN[i]まで読み出すための読出範囲[i]に属するエクステントを特定し(ステップＳ３０５)、パケットID[j]のTSパケット[j]をStart＿SPN[j]からEnd＿SPN[j]まで読み出すための読出範囲に属するエクステントを特定する(ステップＳ３０６)。そしてステップＳ３０７において読出範囲[i],[j]に属するエクステントをアドレスの昇順にソートして、ステップＳ３０８においてソートされたアドレスを用いて、読出範囲[i],[j]に属するエクステントを連続的に読み出すよう、ドライブに指示する。その後、ソースパケット列が読み出されれば、ステップＳ３０９においてベースビューのATCシーケンス、ディペンデントビューのATCシーケンスをそれぞれ復元して、ベースビュー用のPIDフィルタ、ディペンデントビュー用のPIDフィルタに送り込む。
【０７２９】
以上のように本実施形態によれば、上記記録媒体では、メインTSにおけるGOP及びサブTSにおけるGOPを記録媒体に記録するにあたって、拡張エントリーマップにおけるエントリーは、ディペンデントビューピクチャデータであって、同じ再生時刻で再生されるべきベースビューピクチャデータが、基本エントリーマップのエントリーによってポインティングされているもののみをポインティングするようにしている。
【０７３０】
基本エントリーマップのエントリーによってポインティングされているピクチャデータと、拡張エントリーマップのエントリーによってポインティングされているピクチャデータとが、同じエクステントのペアに存在するので、基本エントリーマップ、拡張エントリーマップを手掛かりにしてエクステントをアクセスすれば、ベースビューのGOP、ディペンデントビューのGOPをまとめて再生することができる。これにより、再生開始の遅延を解消することができる。
【０７３１】
(第７実施形態) 
本実施形態は、立体視スライドショーのアプリケーションを実現する改良に関する。 
【０７３２】
スライドショーは、静止画から構成されていることから、映画よりも、高精度なランダムアクセスが要求される。高精度なランダムアクセスとは、1枚先、10枚先というように、「一枚のピクチャ」をアクセス単位にしたランダムアクセスである。ビデオストリームのエントリーマップは、1秒間隔というように、1秒程度の時間精度をもち、この1秒という時間間隔には、20〜30枚のピクチャが包含され得る。そのため、上述したエントリーマップを用いてピクチャ精度でのランダムアクセスを実現しようとすると、エントリーマップの参照だけでは足りず、ストリームに対する解析が必要になる。 
【０７３３】
ここでの「ストリームの解析」とは、エントリーマップに記載されているエントリー位置から、ピクチャのヘッダを取り出し、このヘッダからピクチャのサイズを読み出して、そのサイズに基づき、次のピクチャの記録位置を特定するという処理を、何回も繰り返し、所望のピクチャの記録位置まで辿りつくというものである。かかる解析は、ストリームに対する高頻度のアクセスを伴うものなので、エントリー位置から3枚先、5枚先のピクチャを読み出すだけでも、相当の時間がかかる。ピクチャ精度のランダムアクセスに相当の時間がかかるため、ユーザ操作に即応して、前後のピクチャを表示させたり、10枚前後のピクチャを表示させうる機能をスライドショーに追加しようとしても、制作者サイドが期待するような、使い勝手にならない。 
【０７３４】
スライドショーに対するエントリーポイントは、ビデオストリームにおけるピクチャ毎のエントリーアドレスを再生時刻に対応づけて示している。そして、プレイリストマーク情報は、個々のピクチャデータを指定するようにしている。 
【０７３５】
このように個々のピクチャデータがエントリーポイントと、プレイリストマーク情報とによって指示されれば、1枚先、3枚先というように、ピクチャ精度のランダムアクセスが要求されたとしても、ビデオストリームの解析を伴うことなく、ピクチャ精度のランダムアクセスを実現することができる。 
【０７３６】
時間軸上の任意の時点からビデオストリーム上の記録位置を導くことができ、また、1枚先、3枚先というピクチャ精度でのランダムアクセスを実現することができるので、ユーザ操作に即応して、前後のピクチャを表示させたり、数枚前後のピクチャを表示させうるアプリケーションを制作することができる。 
【０７３７】
これまでの実施形態において、立体視再生可能なビデオストリームは、インターリーブ形式にしていたが、このようにインターリーブ形式にすると、スライドショーを構成するピクチャデータは、Ｌ−ＬーＬ、Ｒ−ＲーＲというような順序で配列されることになる。このような順序の全てのピクチャデータが、スライドショーを構成しており、個々のピクチャデータがエントリーポイントによって指示されれば、エントリーポイントは、００：００→００：０１→００：０２、００：００→００：０１→００：０２というような順序で、配列されることになる。 
【０７３８】
エントリーマップにおけるエントリーポイントは、その再生時刻が昇順になるように並ばなければならず、エントリーマップに対する制約に違反する。そこで、AVクリップのアプリケーションタイプがスライドショーである場合の特有の制限として、レフトビューストリームを構成するピクチャデータ、及び、ライトビューストリームを構成するピクチャデータを１TS化することにする。このように、１TS化すれば、レフトビューストリームを構成するピクチャデータ、及び、ライトビューストリームを構成するピクチャデータをＬ−Ｒ−Ｌ−Ｒ−Ｌ−Ｒという順序で配列することができ、そして、これらのピクチャデータのエントリーポイントについては、そのエントリーポイントにおける再生時刻が、００：００→００：００→００：０１→００：０１→００：０２→００：０２→００：０３、００：０３になるように配列することができる。 
【０７３９】
1枚のスライドをなすピクチャデータを時間順序に配列し、その上で多重化を行うことで、多重化されたピクチャデータのかたまりが、記録媒体の連続領域に記録されることになる。 
【０７４０】
ベースビュー静止画データ、ディペンデントビュー静止画データが多重化されたトランスポートストリームにおいて、ベースビュー静止画であるピクチャデータの先頭であるアクセスユニットデリミターは、ディペンデントビュー静止画であるピクチャデータの先頭より先行しており、且つ、ディペンデントビュー静止画であるピクチャデータの後尾は、前記ベースビュー静止画の次に再生されるべきベースビュー静止画のピクチャデータにおける先頭を表すアクセスユニットデリミターより先行している。そして、これらベースビュー静止画のピクチャデータの先頭であるアクセスユニットデリミターを格納したソースパケット、ディペンデントビュー静止画のピクチャデータの先頭であるアクセスユニットデリミターを格納したソースパケットは、自身以外のピクチャデータを含んでいない。つまり、ベースビュー静止画を表すピクチャデータ、ディペンデントビュー静止画を表すピクチャデータは、完結した状態で、ベースビュー−ディペンデントビュー−ベースビュー−ディペンデントビューの順に、記録領域に並んでいる。 
【０７４１】
レフトビューのピクチャデータ、ライトビューのピクチャデータを多重化しているのは以下の理由による。ピクチャデータを一個のエクステントとして記録媒体に記録しようとすると、最小エクステント長を満たせない。最小エクステント長を満たすため、複数のピクチャデータを上述したように時間順序に配置した上多重化して、多重化されたTSを記録する。こうすることで、最小エクステント長を満たすように、TSを分割して記録することが可能になる。 
【０７４２】
対照的に、サイズが比較的小さいため、１枚の静止画を表示するためのデータを固めて配置した方が、読み取り効率が上がることになる。   
【０７４３】
以上がスライドショーを構成する場合におけるストリームファイルの改良についての説明である。続いて、エントリーマップにおける改良の詳細について説明する。
【０７４４】
拡張エントリーマップのエントリーは、ディペンデントビューピクチャデータであって、同じ再生時刻で再生されるべきベースビューピクチャデータが、基本エントリーマップのエントリーによってポインティングされているもののみをポインティングする。スライドショーでは、ベースビュービデオストリームにおける全てのピクチャを指示するようエントリーマップを設定するので、上述した制約により、ディペンデントビュービデオストリームにおける全てのピクチャが、拡張エントリーマップによって指示されることになる。
【０７４５】
こうして、ベースビュービデオストリームにおけるピクチャデータの再生時点が、エントリー時刻として、基本エントリーマップにより指定され、ディペンデントビュービデオストリームにおけるピクチャデータの再生時点が、エントリー時刻として、拡張エントリーマップにより指定されるので、ベースビュービデオストリームを構成するピクチャデータ、ディペンデントビュービデオストリームを構成するピクチャデータのうち、どれかをランダムアクセスのアクセス先に選ぶ場合でも、先行するIDRピクチャを経由するという迂回のオーバーヘッドが発生することはない。 
【０７４６】
以上のように本実施形態によれば、ストリーム解析を行うことなく、任意のL画像のピクチャデータ、R画像のピクチャデータの組みを読み出して、再生に供することができるので、ユーザのスキップ操作に従い、任意のピクチャデータをランダムアクセスすることができるスライドショーアプリケーションを容易に実現することができる。 
【０７４７】
(第８実施形態)
本実施形態は、立体視インターリーブドストリームファイルを構成するデータブロックから、ATCシーケンスを復元するための改良に関する。図５１は、立体視インターリーブドストリームファイル構成するデータブロックからATCシーケンスがどのように復元されるかを示す。
【０７４８】
第４段目は、立体視インターリーブドストリームファイルを構成する複数のデータブロックを示し、第３段目は、メインTS、サブTSに多重化されるソースパケット列を示す。
【０７４９】
第２段目は、ディペンデントビューを構成するSTCシーケンス２、エントリーマップ、ディペンデントビューを構成するATCシーケンス２の組みを示し、第１段目は、ベースビューを構成するSTCシーケンス１、エントリーマップ、ベースビューを構成するATCシーケンス１の組みを示す。第３段目から第２段目、第１段目への矢印は、立体視インターリーブドストリームファイルにインターリーブ化されている2つのTS(メインTS、サブTS)のデータブロックからATCシーケンス１、ATCシーケンス２が復元されることを模式的に示す。これらのATCシーケンスは、クリップ情報におけるエントリーマップによって、STCシーケンスとの対応がとられる。
【０７５０】
以上が本実施形態に係る記録媒体についての説明である。続いて、再生装置の詳細について説明する。
【０７５１】
本実施形態における再生装置の読出部は、2つの記録媒体からのソースパケット入力を受け付ける構成になっており、2つの記録媒体のそれぞれをアクセスするための2つのドライブ、これら2つのドライブから入力されたソースパケットを一旦格納してデコーダに出力するための2つのリードバッファを含む。そして、2つのドライブと、2つのリードバッファとの間に、ATCシーケンス復元部が存在する。このATCシーケンス復元部は、1つの記録媒体から読み出されたインターリーブドストリームファイル内のソースパケットから、ベースビューを構成するATCシーケンスと、ディペンデントビューストリームを構成するATCシーケンスとを分離し、2つのリードバッファのそれぞれに書き込むものである。こうすることで再生装置は、ベースビュービデオストリームを構成するATCシーケンス、ディペンデントビューストリームを構成するATCシーケンスがそれぞれ別々の記録媒体から読み出されたかのように処理することができる。
【０７５２】
図５２は、ATCシーケンスの復元がどのように行われるかを示す図である。同図（ａ）は、ATCシーケンス復元部を具備した読出部の内部構成を示す。上述したように、2つのドライブと、2つのリードバッファとの間にATCシーケンス復元部が介在している。図中の矢印B0は、1つのドライブからのソースパケット入力を象徴的に示したものであり、矢印B1は、ベースビュービデオストリームを構成するATCシーケンス１の書き込み、矢印D1は、ディペンデントビューストリームを構成するATCシーケンス２の書き込みを模式的に示す。
【０７５３】
図５２（ｂ）は、ATCシーケンス復元部によって得られた2つのATCシーケンスが、どのように取り扱われるかを示す。図中の真ん中に多重分離部内に存在するPIDフィルタを示す。左側は、ATCシーケンス復元部によって得られた2つのATCシーケンスを示す。右側は、これらの2つのATCシーケンスを多重分離することで得られるベースビュービデオストリーム、ディペンデントビュービデオストリーム、左目PGストリーム、右目PGストリーム、ベースビューIGストリーム、ディペンデントビューIGストリームを示す。
【０７５４】
図５３は、ベースビュークリップ情報におけるエクステントスタートポイント情報の一例と、ディペンデントビュークリップ情報におけるエクステントスタートポイント情報の一例を示す。（ａ）は、ベースビュークリップ情報のエクステントスタートポイント情報と、ディペンデントビュークリップ情報のエクステントスタートポイント情報とを示す。          
【０７５５】
（ｂ)は、ATCシーケンス1を構成するベースビューデータブロックB[0],B[1],B[2]・・・・B[n]、ATCシーケンス2を構成するディペンデントビューデータブロックD[0],D[1],D[2]・・・・D[n]、を示す。（ｃ）は、ディペンデントビューデータブロックのソースパケット数、ベースビューデータブロックのソースパケット数を示す。
【０７５６】
（ｄ）は、立体視インターリーブドストリームファイルに包含される複数のデータブロックを示す。
【０７５７】
同図（ｂ）に示すように、ATCシーケンス2が、ディペンデントビューデータブロックD[0],D[1],D[2]・・・・D[n]から構成されるとすると、ATCシーケンス２における、ディペンデントビューデータブロックD[0],D[1],D[2]・・・・D[n]の相対ソースパケット数である0,b1,b2,b3,b4・・・bnがファイルディペンデントのエクステントスタートポイント情報のSPN＿extent＿startに記載される。
【０７５８】
ATCシーケンス1が、ベースビューデータブロックB[0],B[1],B[2]・・・・B[n]によって構成されるとすると、ベースビューデータブロックの相対ソースパケット数である0,a1,a2,a3,a4・・・anが、ファイルベースのエクステントスタートポイント情報のSPN＿extent＿startに記載される。
【０７５９】
同図（ｃ）は、立体視インターリーブドストリームファイルにおける任意のディペンデントビューデータブロックD[x]、任意のベースビューデータブロックb[x]のソースパケット数である。ディペンデントビューデータブロックD[x]の先頭ソースパケット番号がbxであり、ディペンデントビューデータブロックD[x+1]の先頭ソースパケット番号がbx+1である場合、D[x]を構成するソースパケット数は、ｂx+1−ｂxになる。
【０７６０】
同じく、ベースビューデータブロックB[x]の先頭ソースパケット番号がａxであり、ベースビューデータブロックB[x+1]の先頭ソースパケット番号がａx+1である場合、B[n]を構成するソースパケット数は、ａx+1−ａxになる。
【０７６１】
立体視インターリーブドストリームファイルにおける最後のベースビューデータブロックB[n]の先頭ソースパケット番号がanであり、ATCシーケンス１におけるソースパケットの個数がnumber＿of＿source＿packet1である場合、B[n]を構成するソースパケット数は、number＿of＿source＿packet1-anになる。
【０７６２】
立体視インターリーブドストリームファイルにおける最後のベースビューデータブロックD[n]の先頭ソースパケット番号がbnであり、ATCシーケンス２におけるソースパケットの個数がnumber＿of＿source＿packet2である場合、D[n]を構成するソースパケット数は、number＿of＿source＿packet2-bnになる。
【０７６３】
そうすると、ディペンデントビューデータブロックの先頭ソースパケット番号、ベースビューデータブロックの先頭ソースパケット番号は、（ｄ）に示す通りになる。
【０７６４】
立体視インターリーブドストリームファイルにおいて、D[0]の先頭SPNは「0」、B[0]の先頭SPNは「b1」になる。
【０７６５】
D[1]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1との和になるから「b1+a1」になる。
【０７６６】
B[1]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1と、先行するD[1]のソースパケット数b2-b1との和になるから「b2+a1(=b1+a1+b2-b1)」になる。
【０７６７】
D[2]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1と、先行するD[1]のソースパケット数b2-b1と、B[1]のソースパケット数a2-a1との和になるから「b2+a2(=b1+a1+b2-b1+a2-a1)」になる。
【０７６８】
B[2]の先頭SPNについては、先行するD[0]のソースパケット数b1と、B[0]のソースパケット数a1と、先行するD[1]のソースパケット数b2-b1と、B[1]のソースパケット数a2-a1と、D[2]のソースパケット数b3-b2との和になるから「b3+a2(=b1+a1+b2-b1+a2-a1+b3-b2)」になる。
【０７６９】
図５４は、ATCシーケンス１、２における任意のデータブロックのソースパケット番号を説明するための図である。
【０７７０】
同図（ａ）のATCシーケンス２において、bxのソースパケット番号に存在するD[x]の立体視インターリーブドストリームファイルにおけるソースパケット番号を求める場合を考える。この場合、D[x]の先頭ソースパケット番号は、D[0],B[0],D[1],B[1],D[2],B[2]・・・・D[x-1],B[x-1]の相対ソースパケット数のソースパケット数の総和になるから、同図（ｂ）に示すように「bx+ax」になる。
【０７７１】
同図（ａ）のATCシーケンス１において、axのソースパケット番号に存在するB[x]の立体視インターリーブドストリームファイルにおけるソースパケット番号を求める場合を考える。この場合、同図（ｂ）に示すように、B[x]の先頭ソースパケット番号は、D[0],B[0],D[1],B[1],D[2],B[2]・・・・D[x-1],B[x-1],D[x]の相対ソースパケット数のソースパケット数の総和になるから、「ｂx+1＋ａx」になる。
【０７７２】
同図（ｃ）は、上記ベースビューデータブロックをエクステントとするファイルベースと、上記ディペンデントビューデータブロックをエクステントとするファイルディペンデントとを示す。
【０７７３】
B[x]にあたるファイルベースのエクステントであるEXT1[x]の先頭LBN及び連続長、及び、D[x]にあたるファイルディペンデントのエクステントであるEXT2[x]の先頭LBN及び連続長は以下のように求められる。
【０７７４】
D[x]の先頭ソースパケット番号からLBNを求めるには、（(ｂx+ａx)*192/2048)という計算でソースパケットをLBNに変換する。同じく、Ｂ[x]の先頭ソースパケット番号からLBNを求めるには、（(ｂx+1＋ａx)*192/2048)という計算でソースパケットをLBNに変換する。ここで「192」は、ソースパケットサイズをバイト数で表したものであり、「2048」は、セクタサイズ(論理ブロックサイズ)をバイト数で表したものである。これらのLBNに最も近い、立体視インターリーブドストリームファイルのエクステントのLBNは、上記変換によって得られたLBNを、関数SSIF＿LBN(file＿offset) の引数であるfile＿offsetに用いることで算出される。関数SSIF＿LBNは、file＿offsetから、SSIFのアロケーション既述子をたどって、file＿offsetに該当するLBNを返す関数である。
【０７７５】
こうすることで、EXT2[x]の先頭LBNは、SSIF＿LBN((ｂx＋ａx)*192/2048)になり、EXT1[x]の先頭LBNは、SSIF＿LBN((ｂx+1＋ａx)*192/2048)になる。
【０７７６】
一方、EXT2[x]の連続長は、(SSIF＿LBN((ｂx+1＋ａx)*192/2048)−SSIF＿LBN((ｂx＋ａx)*192/2048))になる。EXT1[x]の連続長は、(SSIF＿LBN((ｂx+1＋ａx+1)*192/2048)−SSIF＿LBN((ｂx+1＋ａx)*192/2048))になる。これらの先頭LBN及び連続長を示すファイルエントリーをメモリ上で生成すれば、ファイルベース、ファイルディペンデントを仮想的に得ることができる。
【０７７７】
これらの2つのPIDフィルタによる多重分離は、第１実施形態に示した基本ストリーム選択テーブル、拡張ストリーム選択テーブルによる。このATCシーケンス復元部は、図５５の処理をハードウェア資源に実行させるプログラムを作成することで実現される。図５５は、ATCシーケンス復元手順を示す。
【０７７８】
ステップＳ９１は、ベースビュー用のATCシーケンスをATCシーケンス１とし、ディペンデントビュー用のATCシーケンスをATCシーケンス２とする。ステップＳ９２では、変数xを1に初期化する。この変数xは、ディペンデントビューデータブロック、ベースビューデータブロックを指示する。以降、ステップＳ９４〜ステップＳ９６のループを繰り返す。
【０７７９】
変数xによって指示されるソースパケット番号bxが、ベースビューデータブロックの最後の数値nによって指示されるソースパケット番号bnであるか否かを判定し(ステップＳ９３)、もしそうでなければ、ソースパケット番号ｂx＋ａxによって指示されるソースパケット(ｂx＋ａx)から、ｂx+1＋ａxによって指示されるソースパケット(ｂx+1＋ａx)の直前のパケットまでをATCシーケンス２に追加し(ステップＳ９４)、ソースパケット(ｂx+1＋ａx)からソースパケット(ｂx+1＋ａx+1)の直前のパケットまでをATCシーケンス１に追加して(ステップＳ９５)、変数xをインクリメントする(ステップＳ９６)という処理を、ステップＳ９３がYesと判定されるまで繰り返す。
【０７８０】
ステップＳ９３がYesと判定されれば、ソースパケット番号ｂnから(number＿of＿source＿packet2-ｂn)個のソースパケットをATCシーケンス２に追加し(ステップＳ９７)、ソースパケット番号ａnから(number＿of＿source＿packet1-ａn)個のソースパケットをATCシーケンス１に追加する(ステップＳ９８)。
【０７８１】
以上のように、ATCシーケンス１、２が復元されれば、ベースビューデータブロックの先頭LBN及び連続長をセクタ数で示すファイルエントリーをメモリ上で生成して、ファイルベースを仮想的にオープンする(ステップＳ９９)。同様に、ディペンデントビューデータブロックの先頭LBN及び連続長をセクタ数で示すファイルエントリーをメモリ上で生成して、ファイルディペンデントを仮想的にオープンする(ステップＳ１００)。
【０７８２】
＜ファイルベースをオープンすることの技術的意義＞
ここで任意の時点からのランダムアクセスを行う際、ストリームファイル内のセクタサーチを行う必要がある。セクタサーチとは、任意の時点からのランダムアクセスを行う際、その時点に対応するソースパケットのソースパケット番号を特定して、そのソースパケット番号のソースパケットを含むセクタから、ファイルリードを行うという処理である。
【０７８３】
立体視インターリーブドストリームファイルは、一個のエクステントが大きいため、セクタサーチの探索範囲が広く、任意の時点からのランダムアクセスが命じられた際、読み出し先となるセクタの特定に、かなりの処理時間を要することがある。
【０７８４】
これは、インターリーブストリームファイルは、ベースビュービデオストリームを構成するデータブロック、ディペンデントビューストリームを構成するデータブロックがインターリーブ配置されて一本の長いエクステントを構成しており、インターリーブストリームファイルのファイルエントリーのアロケーション記述子は、その長いエクステントの先頭アドレスを示しているに過ぎないとの理由による。
【０７８５】
これに対してファイルベースは、長さが短い複数のエクステントから構成されており、個々のエクステントの先頭アドレスがアロケーション記述子に示されているため、セクタサーチにあたっての探索範囲が狭く、任意の時点からのランダムアクセスが命じられた際、読み出し先となるセクタの特定が、短時間で完了する。
【０７８６】
つまり、ベースビュービデオストリームを構成するデータブロックが、ファイルベースのエクステントとして管理されており、データブロックの先頭アドレスが、ファイルベースに対応するファイルエントリーにおけるアロケーション記述子に明記されているので、ランダムアクセス位置を包含しているエクステントの先頭アドレスから、セクタサーチを開始すれば、早期にランダムアクセス位置となるソースパケットを含むセクタにまで到達することができる。
【０７８７】
このようにベースビュービデオストリームを構成するデータブロックを、ファイルベースのエクステントとして管理し、各エクステントの先頭アドレス及び連続長を、ファイルベースについてのファイルエントリーのアロケーション記述子に示しておくことにより、ベースビュービデオストリームにおける任意の時点からのランダムアクセスが高速になる。
【０７８８】
具体的なセクタサーチの手順は以下のものになる。ベースビュービデオストリームに対応するエントリーマップを用いることにより、任意の時点に対応するランダムアクセス位置であるソースパケット番号を導き出す。
【０７８９】
次に、ベースビュービデオストリームに対応するクリップ情報内のエクステントスタートポインティング情報を用いることにより、ランダムアクセス位置となるソースパケット番号を包含しているエクステントがどれであるかを特定する。
【０７９０】
更に、ファイルベースに対応するファイルエントリーのアロケーション記述子を参照すれば、ランダムアクセス位置となるソースパケット番号を包含しているエクステントの先頭セクタアドレスを特定することができる。その先頭セクタアドレスにファイルポインタを設定して、ファイルリードを行い、読み出されたソースパケットに対するパケット解析を実行することで、ランダムアクセス位置となるソースパケット番号のソースパケットを特定する。そして特定されたソースパケット番号のソースパケットを読み出す。これにより、メインTSに対するランダムアクセスが効率的に実行されることになる。サブTSも同様である。
【０７９１】
以上のように本実施形態によれば、エクステントスタートポイント情報に基づき、インターリーブドストリームファイルにおけるベースビュービデオストリームのエクステント、ディペンデントビュービデオストリームのエクステントをエクステントスタートポイント情報に基づき整列した上で多重分離部、デコーダに供するので、デコーダやプログラムは、ベースビュービデオストリームを格納したファイルベースディペンデントビュービデオストリームを格納したファイルディペンデントという2つのファイルが記録媒体に仮想的に存在するものとして扱うことができる。
【０７９２】
立体視のためのベースビュービデオストリーム、ディペンデントビュービデオストリームをインターリーブストリームファイルとして記録媒体しつつも、ベースビュービデオストリーム及びディペンデントビュービデオストリームの単体アクセスを可能にせしめるので、再生装置の処理の効率性を向上させることができる。
【０７９３】
(第９実施形態)
本実施形態では、これまでの実施形態に示した記録媒体の作り方、つまり、記録方法の形態について説明する。
【０７９４】
本実施形態に係る記録方法は、ストリームファイルであるAVファイル、ストリームファイル以外のファイルである非AVファイルをリアルタイムに作成して、記録媒体におけるAVデータ記録領域、非AVデータ記録領域にダイレクトに書き込むというリアルタイムレコーディングとして実現することができる。それだけではなく、ボリューム領域に記録すべきビットストリームの全体像を事前に作成して、このビットストリームを元に原盤ディスクを作成し、この原盤ディスクをプレスすることで、光ディスクを量産するというプレフォーマットレコーディングも含む。本実施形態に係る記録媒体は、リアルタイムレコーディングによる記録方法、及び、プレフォーマットレコーディングによる記録方法によっても特定されるものでもある。
【０７９５】
リアルタイムレコーディング技術により記録方法を実現する場合、当該記録方法を実行する記録装置は、リアルタイムにAVクリップを作成して、BD-RE又はBD-R、ハードディスク、半導体メモリカードに記録する。
【０７９６】
この場合AVクリップは、アナログ入力信号を記録装置がリアルタイムエンコードすることにより得られたTSであってもよいし、記録装置がデジタル入力したTSをパーシャル化することで得られるTSであってもよい。リアルタイムレコーディングを実行する記録装置は、ビデオ信号をエンコードしてビデオストリームを得るビデオエンコーダと、オーディオ信号をエンコードしてオーディオストリームを得るオーディオエンコーダと、ビデオストリーム、オーディオストリーム等を多重化して、MPEG2-TSを得るマルチプレクサと、MPEG2-TS形式のデジタルストリームを構成するTSパケットをソースパケットに変換するソースパケッタイザとを備え、ソースパケット形式に変換されたMPEG2デジタルストリームをAVクリップファイルに格納してBD-RE,BD-R等に書き込む。デジタルストリームの書き込むと共に、記録装置の制御部は、メモリ上でクリップ情報やプレイリスト情報を生成する処理を行う。具体的には、ユーザによって録画処理が要求された際、制御部は、AVクリップのストリームファイル及びクリップ情報ファイルをBD-RE,BD-R上にクリエイトする。
【０７９７】
そして、装置外部から入力されるTSからビデオストリームにおけるGOPの先頭位置が検出されるか、エンコーダによってビデオストリームのGOPが生成されれば、記録装置の制御部は、このGOPにおいて、先頭に位置するイントラピクチャのPTSと、このGOPの先頭部分を格納したソースパケットのパケット番号とを取得して、このPTS及びパケット番号の組みを、EP＿PTSエントリー及びEP＿SPNエントリーの組みとして、クリップ情報ファイルのエントリーマップに追記する。以降、GOPが生成される度に、EP＿PTSエントリー及びEP＿SPNエントリーの組みを、クリップ情報ファイルのエントリーマップに追記してゆく。この際、GOPの先頭がIDRピクチャである場合は、「オン」に設定されたis＿angle＿changeフラグをEP＿PTSエントリー及びEP＿SPNエントリーの組みに追加する。GOPの先頭がIDRピクチャでなければ場合は、「オフ」に設定されたis＿angle＿changeフラグをEP＿PTSエントリー及びEP＿SPNエントリーの組みに追加する。
【０７９８】
また、クリップ情報ファイルにおけるストリームの属性情報については、記録されるべきストリームの属性に従い設定する。以上のようにしてAVクリップ、クリップ情報が生成されてBD-RE,BD-Rに書き込まれれば、このクリップ情報内の基本エントリーマップを介して、再生経路を定義するプレイリスト情報を生成し、BD-RE,BD-Rに書き込む。このような処理を、リアルタイムレコーディング技術において実行することで、AVクリップ−クリップ情報−プレイリスト情報という階層構造をBD-RE,BD-R上に得ることができる。
【０７９９】
以上がリアルタイムレコーディングによる記録方法を実行する記録装置である。続いて、プレフォーマットレコーディングによる記録方法について説明する。
【０８００】
プレフォーマットレコーディングによる記録方法は、オーサリング行程を含むような光ディスクの製造方法となる。
【０８０１】
図５６は、光ディスクの記録方法を示す。同図（ａ）は、プレフォーマットレコーディングによる記録方法を示すフローチャートであり光ディスクの製造方法の処理手順を示す。光ディスクの製造方法は、オーサリングステップ、署名ステップ、メディア鍵取得ステップ、メディア鍵暗号ステップ、物理フォーマットステップ、識別子埋め込みステップ、マスタリングステップ、レプリケーションステップを含む。
【０８０２】
オーサリングステップS２０１は、光ディスクのボリューム領域の全体像を表すビットストリームを作成する。
【０８０３】
署名ステップS２０２は、光ディスクの製造にあたってAACS LAに対して署名要求を行う。具体的には、ビットストリームの一ステップを抜き出し、AACS LAに送付する。ここでAACS LAは、次世代のデジタル家電機器における著作物保護技術に関するライセンスを管理する団体である。オーサリング装置を用いて光ディスクのオーサリングを行うオーサリングサイト、及び、マスタリング装置を用いてマスタリングを実行するマスタリングサイトは、AACS LAよりライセンスの提供を受ける。また、メディア鍵、無効化情報を管理する。そして、AACS LAより署名されたビットストリームの一部分を取得する。
【０８０４】
メディア鍵取得ステップS２０３は、AACS LAからメディア鍵を取得する。メディア鍵は、常に固有のものが使用されるわけではなく、これまで製造された光ディスクの枚数が一定枚数まで達すると新しいものに更新される。メディア鍵を更新することにより、特定のメーカーや機器を排除することができ、万が一暗号鍵が破られたとしても、無効化情報を用いることでそれ自体を無効化することができる。
【０８０５】
メディア鍵暗号化ステップS２０４は、メディア鍵取得ステップにより取得したメディア鍵を用いて、ビットストリームの暗号化に用いた鍵を暗号化する。
【０８０６】
物理フォーマットステップS２０５は、ビットストリームに対して物理フォーマットを実行する。
【０８０７】
識別子埋込みステップS２０６は、光ディスクに収録されるビットストリームに、一般の機器では検出することができない一意の識別子を電子透かしとして埋め込む。これにより、不正なマスタリングによる海賊版の量産を防ぐことができる。
【０８０８】
マスタリングステップS２０７は、光ディスクの原盤を作製する。まず、ガラス基板上にフォトレジスト層を形成し、当該フォトレジスト層に対して、所望するグルーブやピットに対応するようにレーザ光を照射して露光し、現像処理を施す。このグルーブやピットは、8ー16変調されたビットストリームの各ビット値を表すものである。その後、このようなレーザカッティングによってグルーブやピットに対応した凹凸が形成されたフォトレジストを元にして、光ディスクの原盤を作製する。
【０８０９】
レプリケーションステップS２０８は、光ディスクの原盤を用いて、その複製である光ディスクを大量生産する。
【０８１０】
同図（ｂ）は、光ディスクを大量生産するのではなく、一般ユーザがPCを使って、BD-R,BD-RE等に、これまでの実施形態で述べた各種ファイルを記録する場合のプリフォーマットレコーディングによる記録方法の処理手順を示す。同図（ａ）と比較すると、同図（ｂ）による記録方法では、物理フォーマット(ステッステップＳ２０５)、マスタリング(ステップS２０７)、レプリケーション(ステップS２０８)が存在せず、代わりに、各ファイルの書き込み行程(ステップS２０９)が存在する。
【０８１１】
次にオーサリング行程について説明する。
【０８１２】
図５７は、オーサリング行程の処理手順を示すフローチャートである。
【０８１３】
ステップS１０１において、メインTS及びサブTSについてのリールセットを定義する。「リール」とは、エレメンタリストリームの素材となるデータを格納したファイルであり、オーサリングシステムでは、ローカルネットワーク上のドライブ上に存在する。3Dカメラによって撮影されたL画像やR画像、撮影時に録音された音声や、その後のアフレコで収録された音声、言語毎の字幕、メニューをデータ化したものが、これらリールに該当する。「リールセット」とは、1つのTSに多重化されるべきエレメンタリストリームの集合を表した、素材ファイルへのリンク群である。ここでは、メインTS、サブTSのそれぞれについてリールセットが定義される。
【０８１４】
ステップS１０２において、プレイアイテム、サブプレイアイテムの原型を定義し、プレイアイテム、サブプレイアイテムの再生順序を定義することでメインパス、サブパスの原型を定義する。プレイアイテムの原型の定義は、平面視出力モードにおいて、そのプレイアイテムで再生を許可すべきリールの指定と、In＿Time／Out＿Timeとの指定を、GUIを通じて受け付けることでなされる。サブプレイアイテムの原型の定義は、立体視出力モードにおいて、そのサブプレイアイテムに対応するプレイアイテムで再生を許可すべきリールの指定と、In＿Time／Out＿Timeとの指定を、GUIを通じて受け付けることでなされる。
【０８１５】
再生を許可すべきリールの指定は、リールセットにおける素材ファイルのリンクのうち、再生を許可すべきものをチェックボックスでチェックするというGUIで構成される。この際、各リールに対応付けて数値入力欄を表示する。そして、この数値入力欄によって、各リールについての優先順位を受け付け、これをリールに対応する優先順位とする。以上の再生を許可すべきリールの設定と、優先順位の設定とからストリーム選択テーブル、拡張ストリーム選択テーブルが生成されることになる。
【０８１６】
In＿Time及びOut＿Timeの指定は、GUI上で、ベースビュービデオストリーム又はディペンデントビュービデオストリームの時間軸を図形化して表示し、図形化された時間軸において、スライドバーを移動させて、そのスライドバーの位置設定をユーザから受け付けるという処理を記録装置が実行することでなされる。
【０８１７】
プレイアイテム、サブプレイアイテムの再生順序の定義は、GUI上でプレイアイテムのIn＿Timeにおけるピクチャをサムネール化して表示し、このサムネールに対して、再生順序を設定するという操作を記録装置がユーザから受け付けることでなされる。
【０８１８】
ステップS１０３では、リールセットにて指定された素材ファイルをエンコードすることにより、複数のエレメンタリストリームを得る。これらの複数のエレメンタリストリームは、ベースビュービデオストリーム、ディペンデントビュービデオストリームと、これらベースビュービデオストリーム、ディペンデントビュービデオストリームと多重化されるべきオーディオストリーム、PGストリーム、IGストリームがある。
【０８１９】
ステップS１０４では、エンコードで得られたエレメンタリストリームのうち、ベースビュービデオストリームと同じリールセットに属する同じするものを、当該ベースビュービデオストリームと多重化することで、1つのメインTSを得る。
【０８２０】
ステップS１０５では、エンコードで得られたエレメンタリストリームのうち、ディペンデントビュービデオストリームと同じリールセットに属するものを、当該ディペンデントビュービデオストリームと多重化することで、1つのサブTSを得る。
【０８２１】
ステップS１０６では、エンコード及び多重化時に設定されたパラメータを元に、クリップ情報ファイルの原型を生成する。
【０８２２】
ステップS１０７では、プレイアイテムの原型を元にプレイアイテム情報、サブプレイアイテム情報を生成し、これらのプレイアイテム情報、サブプレイアイテム情報に再生順序を定義することで、メインパス情報、サブパス情報を生成して、プレイリスト情報を定義する。
【０８２３】
プレイアイテム情報の作成においては、メインTSに多重化されたエレメンタリストリームのうち、プレイアイテムの基本構造において平面視出力モードで再生すべきと規定されたものを再生可能に設定すべく、プレイアイテム情報内にストリーム選択テーブルを生成する。また、ベースビュービデオストリームにおける再生区間を規定するため、上述の編集作業で規定されたIn＿Time、Out＿Timeをプレイアイテム情報に記載する。
【０８２４】
サブプレイアイテム情報の作成においては、サブTSに多重化されたエレメンタリストリームのうち、プレイアイテムの基本構造において立体視出力モードで再生すべきと規定されたものを再生可能に設定すべく、プレイリスト情報のエクステンションデータ内に拡張ストリーム選択テーブルを生成する。プレイアイテム情報、サブプレイアイテム情報は、クリップ情報ファイル内の情報を元に定義されるからクリップ情報ファイルの原型を元にして設定される。
【０８２５】
ステップS１０８では、メインTS、サブTS、クリップ情報ファイルの原型、プレイリスト情報の原型を、所定のアプリケーションフォーマットに従ったディレクトリーファイル群に変換する。
【０８２６】
以上の過程を得て、メインTS、サブTS、クリップ情報、プレイアイテム情報、サブプレイアイテム情報が生成されれば、メインTS、サブTSをそれぞれ独立したストリームファイルに変換し、クリップ情報をクリップ情報ファイルに変換し、プレイアイテム情報及びサブプレイアイテム情報をプレイリスト情報ファイルに変換することで、記録媒体に記録されるべき一連のファイルセットを得る。
【０８２７】
その後、ビデオストリームのエンコード行程の実行にあたって、上記変換で得たプレーンオフセット値、オフセット方向情報を、各GOPのメタデータに記載すれば、オフセットシーケンスは、エンコードの過程で作成しておくことができる。
【０８２８】
図５８は、AVファイル書込工程の処理手順を示す。リアルタイムレコーディングによる記録方法や、マスタリング、レプリケーションを伴い記録方法の実施では、AVファイルの書き込みを、本図のフローチャートによって実現する。
【０８２９】
ステップＳ４０１において、xxxxx.ssifをクリエイトして、記録装置のメモリ上にファイルエントリーを作成する。ステップＳ４０２は、空きの連続セクタ領域を確保し得たかどうかの判定であり、確保し得たなら、ステップＳ４０３において、空きの連続セクタ領域にディペンデントビューデータブロックを構成するソースパケット列をEXT2[i]だけ書き込み、その後、ステップＳ４０４〜ステップＳ４０８を実行する。確保し得ない場合は、ステップＳ４０９で例外処理をした後、記録方法を終了する。
【０８３０】
ステップＳ４０４〜ステップＳ４０８は、ステップＳ４０７がNoと判定されるまで、ステップＳ４０４〜ステップＳ４０６、ステップＳ４０８の処理を繰り返すループを構成している。
【０８３１】
ステップＳ４０５は、空きの連続セクタ領域に、ベースビューデータブロックを構成するソースパケット列をEXT1[i]だけ書き込む。ステップＳ４０６は、ソースパケット列が書き込まれた先頭アドレス及び連続長を示すアロケーション識別子をファイルエントリーに追記して、エクステントとして登録する。これに伴い、書き込まれたソースパケット列の先頭ソースパケット番号を指し示すエクステントスタートポイント情報を、クリップベース情報、クリップディペンデント情報内のメタデータに追記する。
【０８３２】
ステップＳ４０７は、ループの終了条件を規定するものであり、ベースビューデータブロック、ディペンデントビューデータブロックに未書込のソースパケットが存在するかどうかの判定を行う。存在すれば、ステップＳ４０８に移行して、ループを継続する。存在しなければ、ステップＳ４１０に移行する。
【０８３３】
ステップＳ４０８は、連続セクタ領域が存在するかどうかの判定であり、存在すれば、ステップＳ４０３に移行し、存在しなければ、ステップＳ４０２まで戻る。
【０８３４】
ステップＳ４１０では、xxxxx.ssifをクローズして、ファイルエントリーを記録媒体に書き込む。ステップＳ４１１では、xxxxx.m2tsをクリエイトして、メモリにxxxxx.m2tsのファイルエントリーを生成する。ステップＳ４１２では、ファイル2Dで固有となるベースビューデータブロックの先頭アドレス及び連続長を示すアロケーション記述子をxxxxx.m2tsのファイルエントリーに追記する。ステップＳ４１３では、xxxxx.m2tsをクローズして、ファイルエントリーを書き込む。
【０８３５】
ステップＳ４０４は、EXTSS＋EXT2Dの範囲内に、ロングジャンプの発生地点が存在するかどうかの判定である。ここでのロングジャンプの発生地点は、層境界であるものとする。EXTSS＋EXT2Dの範囲内に層境界が存在する場合、ステップＳ４２０において、ベースビューデータブロックを複製して、ベースビューデータブロックB[i]ssと、ベースビューデータブロックB[i]2Dとをロングジャンプ発生地点の直前までに書き込み、その後、ステップＳ４０６に移行する。これらが、ファイル2Dのエクステント、ファイルベースのエクステントになる。
【０８３６】
以下、EXT2D、EXT1[n]、EXT2[n]、EXTss[n]の具体的な値を説明する。
【０８３７】
EXT2Dの下限値は、2D出力モードの再生時、各ベースビューデータブロックから次のベースビューデータブロックまでのジャンプ期間中において、再生装置におけるリードバッファのバッファアンダーフローを生じないように決定される。
【０８３８】
ｎ番目のベースビューデータブロックから(n+1)番目のベースビューデータブロックまでのジャンプが時間Tjump2D(n)を要し、各ベースビューデータブロックが,リードバッファに速度Rud2Dで読み出され、かつ、リードバッファからビデオデコーダへ前記ベースビューデータブロックが平均速度Rbext2Dで転送されるとき、EXT2Dの下限値は以下の条件１の式で表される。
【０８３９】
＜条件１＞
EXT2Dの下限値 ≧（Rud2D×Rbext2D）/(Rud2D−Rbext2D)×Tjump2D（n）
ベースビューデータブロックB[n]ssに対応するエクステントをEXT1[n]であるものとする。この場合、EXT1[n]の下限値は、B−Dプレゼンテーションモードの再生時、各ベースビューデータブロックから次のディペンデントビューデータブロックまでのジャンプ期間と、当該ディペンデントビューデータブロックから次のベースビューデータブロックまでのジャンプ期間とを通して、ダブルバッファのアンダーフローを生じさせないように決定される。
【０８４０】
ここでのダブルバッファは、リードバッファ１、リードバッファ２から構成されるものとする。リードバッファ１は、2D再生装置のリードバッファと同一物である。
【０８４１】
B−Dプレゼンテーションモードの再生において、n番目のベースビューデータブロックからp番目のディペンデントビューデータブロックまでのジャンプが時間TFjump3D(n)を要し、ｐ番目のディペンデントビューデータブロックから（n+1）番目のベースビューデータブロックまでのジャンプが時間TBjump3D(n)を要するものとする。
【０８４２】
そして各ベースビューデータブロックがリードバッファ１へ速度Rud3Dで読み出され、各ディペンデントビューデータブロックがリードバッファ２へ速度Rud3Dで読み出され、かつ、リードバッファ１からビデオデコーダへ前記ベースビューデータブロックが平均速度Rbext3Dで転送されるとき、EXT1[n]の下限値は、以下の条件２の式で表される。ビックエクステントの連続長は、この下限値、又は、この下限値を上回る値に設定される。
【０８４３】
＜条件２＞
EXT1[n]の下限値 ≧（Rud3D×Rbext3D）/(Rud3D−Rbext3D)
×(TFjump3D（n）＋EXT2[n]/(Rud3D＋TBjump3D(n)))
EXT2の下限値は、B−Dプレゼンテーションモードの再生時、各ディペンデントビューエクステントから次のベースビューエクステントまでのジャンプ期間と、当該ベースビューエクステントから次のディペンデントビューエクステントまでのジャンプ期間とを通して再生装置におけるダブルバッファにアンダーフローを生じさせないように決定されている。
【０８４４】
（n+1）番目のベースビューデータブロックから（p+1）番目のディペンデントビューデータブロックまでのジャンプが時間TFjump3D(n+1)を要し、かつ、リードバッファ２からデコーダへ前記ディペンデントビューストリームファイルが平均速度Rdext3Dで転送されるとき、EXT2[n]の下限値は以下の条件３の式で表される。
【０８４５】
＜条件３＞
EXT2[n]の下限値  ≧（Rud3D×Rbext3D）/(Rud3D−Rdext3D)
×(TBjump3D（n）＋EXT1[n+1]/(Rud3D＋TFjump3D(n+1)))
＜EXTSSの具体的な値＞
あるエクステントの読み出しから、次のエクステントへのジャンプにあたって、そのジャンプの直前のバッファ占有量は、充分なものでなければならない。そうすると、立体視インターリーブドストリームファイルの読み出し時にあたってリードバッファは、1つのエクステントによって充填される必要があり、バッファアンダーフローの発生を避けねばならない。
【０８４６】
しかしEXTSSは、エクステントからエクステントへのジャンプ期間Tjumpだけではなく、Ｔdiffに基づき定める必要がある。ここでTdiffは、EXTssにおけるディペンデントビューデータブロックのプリロードと、EXTssnextにおけるディペンデントビューデータブロックのプリロードとに伴う遅延時間を意味する。以下にTdiffの意味合いについて解説すると、立体視インターリーブドストリームファイルの読み出しにあたって、先頭のディペンデントビューデータブロックをプリロードしている間は再生を開始することはできない。
【０８４７】
EXTssでは、このディペンデントビューデータブロックのプリロードに要する期間だけ再生が遅れるから、EXTssにおいて先頭のディペンデントビューのデータブロックのプリロードに要する時間は、再生がその分遅れてしまうという「遅延期間」となる。
【０８４８】
逆にEXTssnextにおいては、EXTssからEXTssnextへのジャンプの直後に、先頭のディペンデントビューデータブロックのプリロードが行われるから、その間だけビデオデコーダの再生開始が遅れてもよいことになる。つまりEXTssnextの再生にあたって、先頭のディペンデントビューデータブロックのプリロードが行われる期間は、ビデオデコーダ再生開始が猶予される「猶予期間」となる。
【０８４９】
以上を踏まえるとTdiffは、ディペンデントビューデータブロックの猶予期間から遅延期間を引いた値として導かれることになる。具体的には、以下の式を満たすように算出される。
【０８５０】
Tdiff=ceil[((Ｓ1stEXT1[i]EXTSSnext]−Ｓ1stEXT1[i]EXTSS)x1000x8)/Rud72]
ここでＴdiffは、Ｓ1stEXT2[i]EXTssの読出期間と、Ｓ1stEXT2[i]EXTssnextの読出期間との差分を意味し、Ｓ1stEXT2[i]EXTssは、EXTssの最初に位置するEXT2[i]のサイズであり、Ｓ1stEXT2[i]EXTssNEXTは、EXTssNEXTの最初に位置するEXT2[i]のサイズである。EXTssnextは、立体視インターリーブドストリームファイルにおけるエクステントであって、EXTssの直後に位置し、EXTssとシームレスに再生されるものである。
【０８５１】
このTdiffと、EXTssnextへのジャンプ時間(Ｔjump)とを用いれば、各エクステントにおける平均ビットレートに基づく最小エクステントサイズであるSextssは、以下の条件４を満たす値として算出される。
【０８５２】
＜条件４＞
SextSS[Byte]≧ceil[(Tjump＋Tdiff×Rud72)/(1000×8))×(Rextss×192)/(Rud72×188−Rextss×192)]
ここで、Rud72は、立体視出力モードにおけるBD-ROMドライブからのデータレートである。
【０８５３】
Rextssは、EXTssの平均ビットレートであり、以下の式から導かれる。
【０８５４】
Ｒextss＝ceil[Ｎsp×188×8/(ATCDextss/27000000)]
ATCDextss＝ATCstart＿extssnext −ATCstart＿extss
ATCDextss＝ATClast＿extss − ATCstart＿extss + ceil(27000000x188x8/min(Rts1,Rts2))
ATCDextssは、EXTssのATC期間である。
【０８５５】
ATCstart＿EXTSSは、EXTssにおけるソースパケット列のATCフィールドによって指示される最小のATC値である。
【０８５６】
ATCstart＿EXTssnextは、EXTssnextにおけるソースパケット列のATCフィールドによって指示される最小のATC値である。
【０８５７】
ATClast＿EXTSSは、EXTssにおけるソースパケット列のATCフィールドによって指示される最大のATC値である。
【０８５８】
Ｎspは、メインTS、サブTSにおけるソースパケットであって、ATCDexssの範囲内にあるATCに対応するATC値をもつものの個数である。
【０８５９】
Ｒts1は、メインTSにおけるTSレコーディングレートの値であり、その最大値は、48Ｍbpsである。
【０８６０】
Ｒts2は、サブTSにおけるTSレコーディングレートの値であり、その最大値は、48Ｍbpsである。
【０８６１】
2つのプレイアイテムを連続的に再生存在する場合、EXTssは、Previousプレイアイテム(プレイアイテム１)によって使用されるATCシーケンスの最初のデータバイトを含む。
【０８６２】
・EXTssは、条件４において定義された最小エクステントサイズ以上のサイズをもつ。
【０８６３】
・EXTssがPreviousプレイアイテムにて使用されるATCシーケンスの最初のデータバイトである場合、Previousプレイアイテムのコネクションコンディション情報は、＝５、＝６に設定されない。この場合、EXTssのサイズを満たさなくてもよい。
【０８６４】
EXTssは、カレントプレイアイテム（プレイアイテム２）によって使用されるATCシーケンスのデータバイトを含む。
【０８６５】
・EXTssは、条件４において定義された最小エクステントサイズ以上のサイズをもつ。
【０８６６】
・EXTssがプレイアイテム２にて使用されるATCシーケンスの最後のデータバイトである場合、プレイアイテム２のコネクションコンディション情報は、＝５、＝６に設定されない。この場合、EXTssのサイズを満たさなくてもよい。
【０８６７】
＜ベースビューデータブロック、ディペンデントビューデータブロックの記録の詳細＞
メインTSにおけるGOP及びサブTSにおけるGOPを記録媒体に記録するにあたって、拡張エントリーマップにおける拡張エントリーマップのエントリーは、ディペンデントビューピクチャデータであって、同じ再生時刻で再生されるべきベースビューピクチャデータが、基本エントリーマップのエントリーによってポインティングされているもののみをポインティングするようにしている。  
【０８６８】
そのようなポインティングを実現するべく、記録処理を以下のように行う。
【０８６９】
記録処理時において、ディペンデントビューデータブロック及びベースビューデータブロックの境界と、ディペンデントビューGOP及びベースビューGOPの境界との一致を試みる。この境界一致は、サブTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターを、ディペンデントビューデータブロックの境界であるととして分割し、メインTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターを、ベースビューデータブロックの境界であるとして分割することでなされる。この分割にあたっては、先に述べたエクステント長の制約を満たさねばならない。
【０８７０】
分割にあたって、ベースビューデータブロック、ディペンデントビューデータブロックの何れかが、再生装置のダブルバッファをアンダーフローさせないようなエクステント長の制約を満たさない場合、サブTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターの直前、及び、メインTSにおけるGOP(i)の先頭ビデオアクセスユニットのアクセスユニットデリミターの直前のどちらかに、パディングパケットを挿入することで上記境界一致を試みる。
【０８７１】
上述した手法で境界一致に成功した場合、ディペンデントビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットのソースパケット番号をポインティングするエントリーを拡張エントリーマップに追加する。それと共に、ベースビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットのソースパケットをポインティングするエントリーを基本エントリーマップに追加する。
【０８７２】
パディングパケット挿入による境界一致に成功せず、ディペンデントビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットが、ディペンデントビューデータブロックの途中に位置した場合、かかるソースパケットをポインティングするようなエントリーを拡張エントリーマップに追加しない。同様に、ベースビューGOPの先頭アクセスユニットのアクセスユニットデリミターを格納したソースパケットが、ベースビューデータブロックの途中に位置した場合、かかるソースパケットをポインティングするようなエントリーを拡張エントリーマップに追加しない。
【０８７３】
こうしたエントリーを拡張エントリーマップから除外することで、ベースビュー、ディペンデントビューの組みが必ず基本エントリーマップ、拡張エントリーマップのエントリーによってポインティングされていることが、保障されることになる。
【０８７４】
ベースビューデータブロック、ディペンデントビューデータブロックの記録後に、エントリーマップを生成するという処理は、記録された立体視インターリーブドストリームファイルからGOP先頭を検出して、このGOP先頭をポインティングするエントリーをエントリーマップに追加してゆくという処理で実現される。GOP先頭検出及びエントリー追加によって、基本エントリーマップ、拡張エントリーマップを作成してゆく手順を、図５４参照しながら説明する。
【０８７５】
図５９は、基本エントリーマップ及び拡張エントリーマップの作成手順を示すフローチャートである。
【０８７６】
ステップＳ６０１において、基本エントリーマップ及び拡張エントリーマップの雛形をメモリ上に生成し、ステップＳ６０２〜ステップＳ６１０のループに移行する。このループにおいて変数xは、GOPを指示するものであり、かかるループでは、変数xを1に初期化して(ステップＳ６０２)、GOP(x)の先頭を特定し(ステップＳ６０３)、GOPの先頭PTS(x)に対応するSPN(x)を特定する(ステップＳ６０４)。以降、ステップＳ６０５、ステップＳ６０７の判定を実行する。ステップＳ６０５は、SPN(x)がEXT1[i]の先頭であるか否かの判定であり、先頭でなければ、ステップＳ６０６〜ステップＳ６０９をスキップする。先頭であれば、ステップＳ６０６においてPTS(x)に対応するSPN(y)を先頭に有するEXT2[j]を特定する。
【０８７７】
ステップＳ６０７は、EXT1[i]を特定する変数iが、EXT2[j]を特定する変数jと一致するかどうかの判定であり、一致しなければ以降の処理をスキップする。一致すれば、PTS(x)−SPN(x)の組みを示すEP＿entry(x)を基本エントリーマップに追加し(ステップＳ６０８)、PTS(x)−SPN(y)の組みを示すEP＿entry(x)を拡張エントリーマップに追加する(ステップＳ６０９)。
【０８７８】
ステップＳ６１０は、変数xが最後のGOPを指示するものかどうかの判定であり、最後でなければ、変数xをインクリメントしてステップＳ６０３に移行する。
【０８７９】
＜インデックステーブルの生成方法＞
第６実施形態で述べたインデックステーブルは、以下のようにして生成することができる。図５５のフローチャートにおいて、ベースビュービデオストリーム、ディペンデントビュービデオストリーム、クリップ情報ファイル、プレイリスト情報ファイルを作成することで、記録媒体に記録すべき各プレイリストの表示周波数が判明する。これらのうち、ファーストプレイタイトルで使用されるプレイリストの解像度・表示周波数、又は、タイトル番号０〜９９９で指示されるタイトルのプレイリストの解像度・表示周波数を、インデックステーブルのBDMVアプリケーション情報におけるビデオフォーマット情報及びフレームレート情報に設定する。こうすることで、プレイリスト再生時に適用すべき解像度・表示周波数が、インデックステーブルにおいて設定されることになる。
【０８８０】
図６０は、BD-Jアプリケーション、BD-Jオブジェクト、ムービーオブジェクト、インデックステーブルの作成手順を示すフローチャートである。ステップＳ７０１は、プレイリストについてのプレーヤインスタンスの生成を再生装置に命じるソースプログラムを、オブジェクト指向プログラミングで作成し、ステップＳ７０２では、そうして作成されたソースプログラムのコンパイルやアーカイブ化を行い、BD-Jアプリケーションを作成する。
【０８８１】
ステップＳ７０３は、BD-Jオブジェクトの作成行程であり、ステップＳ７０４は、プレイリスト再生を命じるコマンドを用いてムービーオブジェクトを記述する。ステップＳ７０５では、タイトル番号と、BD-Jオブジェクトとの対応付けを記述することで、インデックステーブルを作成し、ステップＳ７０６ではファーストプレイタイトルとするプレイリストを選択する。ステップＳ７０７では、ファーストプレイタイトルにおけるプレイリストのビデオフォーマット、ビデオレートを示すBDMVアプリケーション情報を作成し、ステップＳ７０８ではタイトルインデックス、BDMVアプリケーション情報を含むインデックステーブルを作成する。ステップＳ７０９では、BD-Jオブジェクト、BD-Jアプリケーション、ムービーオブジェクト、インデックステーブルを記録媒体に書き込む。
【０８８２】
以上の記録で作成することができる記録媒体について説明する。
【０８８３】
図６１は、多層化された光ディスクの内部構成を示す。
【０８８４】
第１段目は、多層化された光ディスクの一例を示し、第２段目は、各記録層上に存在する螺旋トラックを水平方向に引き伸ばして描いた図である。これらの記録層における螺旋トラックは、1つの連続したボリューム領域として扱われる。ボリューム領域は、最内周に位置するリードイン、最外周に位置するリードアウト、この間に存在する第１記録層の記録領域、第２記録層の記録領域、第３記録層の記録領域から構成される。これらの第１記録層の記録領域、第２記録層の記録領域、第３記録層の記録領域は、1つの連続した論理アドレス空間を構成する。
【０８８５】
ボリューム領域は、先頭から光ディスクをアクセスする単位で通し番号が振られており、この番号のことを論理アドレスと呼ぶ。光ディスクからのデータの読み出しは論理アドレスを指定することで行う。ここで、BD-ROMのような読み込み専用ディスクの場合には、基本的に論理アドレスが連続しているセクタは、光ディスク上の物理的な配置においても連続している。すなわち、論理アドレスが連続しているセクタのデータはシークを行わずに読み出すことが可能である。ただし、記録層の境界においては、論理アドレスが連続していたとしても連続的な読み出しはできない。そのため、層境界の論理アドレスは、予め記録装置に登録されているものとする。
【０８８６】
ボリューム領域は、リードイン領域の直後にファイルシステム管理情報が記録されていて、これに続いて、ファイルシステム管理情報にて管理されるパーティション領域が存在する。ファイルシステムとはディスク上のデータをディレクトリまたはファイルと呼ばれる単位で表現する仕組みであり、BD-ROMの場合ではUDF（Universal Disc Format）によって記録される。日常使っているPC（パーソナルコンピュータ）の場合でも、FATまたはNTFSと呼ばれるファイルシステムを通すことにより、ディレクトリやファイルという構造でハードディスクに記録されたデータがコンピュータ上で表現され、ユーザビリティを高めている。このファイルシステムにより、通常のPCと同じように記録されている論理データをディレクトリ、ファイル構造を使って読み出すことが可能になっている。  
【０８８７】
第４段目は、ファイルシステムで管理されるファイルシステム領域における領域割り当てを示す。ファイルシステム領域のうち、内周側には、非AVデータ記録領域が存在する。非AVデータ記録領域の直後には、AVデータ記録領域が存在する。第５段目は、これら非AVデータ記録領域及びAVデータ記録領域の記録内容を示す。AVデータ記録領域には、AVファイルを構成する構成するエクステントが存在する。非AVデータ記録領域には、AVファイル以外の非AVファイルを構成するエクステントが存在する。
【０８８８】
図６２は、ファイルシステムを前提にした光ディスクのアプリケーションフォーマットを示す。
【０８８９】
BDMVディレクトリはBD-ROMで扱うTSや管理情報などのデータが記録されているディレクトリである。BDMVディレクトリの配下には、「PLAYLISTディレクトリ」、「CLIPINFディレクトリ」、「STREAMディレクトリ」、「BDJOディレクトリ」、「JARディレクトリ」と呼ばれる５つのサブディレクトリが存在し、BDMVディレクトリには、「index.bdmv」，「MovieObject.bdmv」の２種類のファイルが配置されている。
【０８９０】
「index.bdmv(ファイル名固定)」は、インデックステーブルを格納している。
【０８９１】
「MovieObject.bdmv（ファイル名固定）」は、1つ以上のムービーオブジェクトを格納している。ムービーオブジェクトは、コマンドインタプリタを制御主体とした動作モード(HDMVモード)において、再生装置が行うべき制御手順を規定するプログラムファイルであり、1つ以上のコマンドと、GUIに対するメニューコール、タイトルコールがユーザによってなされた場合、これらのコールをマスクするかどうかを規定するマスクフラグを含む。
【０８９２】
「BDJOディレクトリ」には、拡張子bdjoが付与されたプログラムファイル(xxxxx.bdjo[「xxxxx」は可変、拡張子「bdjo」は固定])が存在する。このプログラムファイルは、BD-Jモードにおいて、再生装置が行うべき制御手順を規定するBDーJオブジェクトを格納している。
【０８９３】
このJava（登録商標）アプリケーションの実体にあたるのが、BDMVディレクトリ配下のJARディレクトリに格納されたJava（登録商標）アーカイブファイル(YYYYY.jar)である。          
【０８９４】
アプリケーションは例えばJava（登録商標）アプリケーションであり、仮想マシンのヒープ領域(ワークメモリとも呼ばれる)にロードされた1つ以上のxletプログラムからなる。このワークメモリにロードされたxletプログラム、及び、データから、アプリケーションは構成されることになる。
【０８９５】
「PLAYLISTディレクトリ」には、拡張子mplsが付与されたプレイリスト情報ファイル(xxxxx.mpls[「xxxxx」は可変、拡張子「mpls」は固定])が存在する。
【０８９６】
「CLIPINFディレクトリ」には、拡張子clpiが付与されたクリップ情報ファイル(xxxxx.clpi [「xxxxx」は可変、拡張子"clpi」は固定])が存在する。
【０８９７】
以上のディレクトリに存在するファイルを構成するエクステントは、非AVデータ領域に記録される。
【０８９８】
「STREAMディレクトリ」は、ストリームファイルを格納しているディレクトリであり、本ディレクトリには、xxxxx.m2ts([「xxxxx」は可変、拡張子「m2ts」は固定])という形式でストリームファイルが格納される。
【０８９９】
上述したようなファイルは、パーティション領域において、物理的に連続する複数のセクタ上に形成される。パーティション領域は、「ファイルセット記述子が記録された領域」、「終端記述子が記録された領域」、「ROOTディレクトリ領域」、「BDMVディレクトリ領域」、「JARディレクトリ領域」、「BDJOディレクトリ領域」、「PLAYLISTディレクトリ領域」、「CLIPINFディレクトリ領域」、「STREAMディレクトリ領域」から構成され、ファイルシステムによってアクセスされる領域のことである。以降、これらの領域について説明する。
【０９００】
「ファイルセット記述子」は、ディレクトリ領域のうち、ROOTディレクトリのファイルエントリが記録されているセクタを指し示す論理ブロック番号（LBN)を含む。「終端記述子」は、ファイルセット記述子の終端を示す。
【０９０１】
次に、ディレクトリ領域の詳細について説明する。上述したような複数のディレクトリ領域は、何れも共通の内部構成を有している。つまり、「ディレクトリ領域」は、「ファイルエントリ」と、「ディレクトリファイル」と、「下位ファイルについてのファイル記録領域」とから構成される。
【０９０２】
「ファイルエントリ」は、「記述子タグ」と、「ICBタグ」と、「アロケーション記述子」とを含む。
【０９０３】
「記述子タグ」は、自身がファイルエントリである旨を示すタグである。
【０９０４】
「ICBタグ」は、ファイルエントリ自身に関する属性情報を示す。
【０９０５】
「アロケーション記述子」は、ディレクトリファイルの記録位置を示す論理ブロック番号（LBN）を含む。以上がファイルエントリーについての説明である。続いて、ディレクトリファイルの詳細について説明する。
【０９０６】
「ディレクトリファイル」は、「下位ディレクトリについてのファイル識別記述子」と、「下位ファイルのファイル識別記述子」とを含む。
【０９０７】
「下位ディレクトリのファイル識別記述子」は、自身の配下にある下位ディレクトリをアクセスするための参照情報であり、その下位ディレクトリを示す識別情報と、その下位ディレクトリのディレクトリ名の長さと、下位ディレクトリのファイルエントリがどの論理ブロック番号に記録されているかを示すファイルエントリアドレスと、その下位ディレクトリのディレクトリ名とから構成される。
【０９０８】
「下位ファイルのファイル識別記述子」は、自身の配下にあるファイルをアクセスするための参照情報であり、その下位ファイルを示す識別情報と、その下位ファイル名の長さと、下位ファイルについてのファイルエントリがどの論理ブロック番号に記録されているかを示すファイルエントリアドレスと、下位ファイルのファイル名とから構成される。
【０９０９】
これらのディレクトリのディレクトリファイルにおけるファイル識別記述子には、下位ディレクトリ及び下位ファイルのファイルエントリーが、どの論理ブロックに記録されているかが示されているので、このファイル識別記述子を辿ってゆけば、ROOTディレクトリのファイルエントリーからBDMVディレクトリのファイルエントリーに到達することができ、また、BDMVディレクトリのファイルエントリーからPLAYLISTディレクトリのファイルエントリーに到達することができる。同様に、JARディレクトリ、BDJOディレクトリ、CLIPINFディレクトリ、STREAMディレクトリのファイルエントリーにも到達することができる。          
【０９１０】
「下位ファイルのファイル記録領域」とは、あるディレクトリの配下にある下位ファイルの実体が記録されている領域であり、当該下位ファイルについての「ファイルエントリ」と、1つ以上の「エクステント」とが記録されている。
【０９１１】
本願の主眼となるストリームファイルは、そのファイルが帰属するディレクトリのディレクトリ領域内に存在するファイル記録領域のことであり、ディレクトリファイルにおけるファイル識別記述子、及び、ファイルエントリーにおけるアローケーション識別子を辿ってゆくことで、アクセスすることができる。
【０９１２】
(第１０実施形態)
本実施形態では、これまでの実施形態で説明した再生装置の機能を統合した、2D/3D再生装置の内部構成について説明する。
【０９１３】
図６３は、2D/3D再生装置の構成を示している。2D/3D再生装置は、BD-ROMドライブ１、リードバッファ２a、リードバッファ２b、スイッチ３、システムターゲットデコーダ４、プレーンメモリセット５a、プレーン合成部５b、HDMI送受信部６、再生制御部７、メモリ、レジスタセット２０３、プログラム実行部１１、プログラムメモリ１２、HDMVモジュール１３、BD-Jプラットフォーム１４、ミドルウェア１５、モード管理モジュール１６、ユーザイベント処理部１７、ローカルストレージ１８、不揮発メモリ１９から構成されている。
【０９１４】
BD-ROMドライブ１は、2D再生装置と同様に再生制御部７からの要求を元にBD-ROMディスクからデータを読み出すが、BD-ROMディスクから読み出されたAVクリップはリードバッファ２aかリードバッファ２bに転送される。
【０９１５】
3D映像を再生する際には、再生制御部７からはベースビューデータブロックとディペンデントビューデータブロックとをエクステント単位で交互に読み出す旨を指示する読出要求が送られる。BD-ROMドライブ１は、ベースビューデータブロックを構成するエクステントをリードバッファ２aに読み出し、ディペンデントビューデータブロックを構成するエクステントをリードバッファ２bに読み出す。3D映像を再生する際には、ベースビューデータブロックとディペンデントビューデータブロックの両方を同時に読み込む必要があるため、2D再生装置のBD-ROMドライブ以上のスピード性能が求められる。
【０９１６】
リードバッファ２aは、BD-ROMドライブ１が読み込んだベースビューデータブロックのデータを格納するデュアルポートメモリ等で構成されたバッファである。
【０９１７】
リードバッファ２bは、BD-ROMドライブ１が読み込んだディペンデントビューデータブロックのデータを格納するデュアルポートメモリ等で構成されたバッファである。
【０９１８】
スイッチ３は、リードバッファに対するデータ入力源を、BD-ROMドライブ１又はローカルストレージ１８の何れかに切り替えるためのスイッチである。
【０９１９】
システムターゲットデコーダ４は、リードバッファ２aに読み出されたソースパケットとリードバッファ２bに読み出されたソースパケットに対して多重分離処理を行いストリームのデコード処理を行う。
【０９２０】
プレーンメモリセット５aは、複数のプレーンメモリから構成される。プレーンメモリには、レフトビュービデオプレーン、ライトビュービデオプレーン、セカンダリビデオプレーン、IGプレーン、PGプレーンといったものがある。
【０９２１】
プレーン合成部５bは、これまでの実施形態で説明したプレーン合成を行う。テレビなどへの出力する場合には3Dの方式に合わせた出力を行う。シャッタメガネを利用して交互に左目イメージ・右目イメージを再生することが必要な場合はそのまま出力し、例えばレンチキュラーのテレビに出力する場合は、テンポラリのバッファを用意して、先に転送される左目イメージをテンポラリバッファに格納して、右目イメージが転送された後に同時に出力する。
【０９２２】
HDMI送受信部６は、例えばHDMI規格（HDMI:High Definition Multimedia Interface）において、第１実施形態に述べたネゴシエーションフェーズを実行する。ネゴシエーションフェーズでは、立体視表示に対応しているかに関する情報、平面表示可能な解像度に関する情報、立体表示可能な解像度に関する情報をテレビから受け取ることができる。
【０９２３】
再生制御部７は、再生エンジン７a、再生制御エンジン７bを含み、3Dプレイリストの再生がプログラム実行部１１などから命じられると、3Dプレイリストの中で再生対象となるプレイアイテムのベースビューデータブロックを特定し、そのプレイアイテムと同期して再生される3D用のサブパスのサブプレイアイテムのディペンデントビューデータブロックを特定する。その後、対応するクリップ情報ファイルのエントリマップを解釈し、どちらのエクステントから先にエクステントが配置されているか示すエクステント開始タイプに基づき、再生開始地点からベースビューデータブロックのエクステントと、ディペンデントビューデータブロックのエクステントとを交互に読み出すようにBD-ROMドライブ１に要求する。再生開始するときには、最初のエクステントをリードバッファ２aか、リードバッファ２bに読みきった後に、リードバッファ２aとリードバッファ２bからシステムターゲットデコーダ４に転送を開始する。
【０９２４】
再生エンジン７aは、AV再生機能を実行する。AV再生機能とは、DVD再生装置、CD再生装置から踏襲した機能群であり、再生開始、再生停止、一時停止、一時停止の解除、静止画機能の解除、再生速度を即値で指定した早送り、再生速度を即値で指定した巻戻し、音声切り替え、セカンダリビデオ用のピクチャデータ切り替え、アングル切り替えといった処理である。
【０９２５】
再生制御エンジン７bは、HDMVモードの動作主体であるコマンドインタプリタ、BD-Jモードの動作主体であるJavaプラットフォームからの関数呼び出しに応じて、プレイリストの再生機能を実行する。プレイリスト再生機能とは、上述したAV再生機能のうち、再生開始や再生停止をカレントプレイリストを構成するカレントプレイリスト情報、カレントクリップ情報に従って行うことをいう。
【０９２６】
メモリは、カレントプレイリスト情報やカレントクリップ情報を格納しておくためのメモリである。カレントプレイリスト情報とは、BD-ROMまたはビルドインメディアドライブ、リムーバブルメディアドライブからアクセスできる複数プレイリスト情報のうち、現在処理対象になっているものをいう。カレントクリップ情報とは、BD-ROMまたはビルドインメディアドライブ、リムーバブルメディアドライブからアクセスできる複数クリップ情報のうち、現在処理対象になっているものをいう。
【０９２７】
再生状態／設定レジスタ(Player Status/Setting Register)セット１０は、これまでの実施形態で述べた再生状態レジスタ、再生設定レジスタの他、プログラムファイルが利用する任意の情報を格納できる汎用レジスタを含む。
【０９２８】
プログラム実行部１１は、BDプログラムファイルに格納されたプログラムを実行するプロセッサである。格納されたプログラムに従って動作を行い、次のような制御を行う。（１）再生制御部７に対してプレイリスト再生を命令する。（２）システムターゲットデコーダに対してメニューやゲームのグラフィクスのためのPNG・JPEGを転送して画面に表示する。これらはプログラムの作りに応じて自由に行うことができ、どのように制御するかは、オーサリング工程によるBD-Jアプリケーションのプログラミング工程によって決まる。
【０９２９】
プログラムメモリ１２は、カレント動的シナリオを格納しておき、HDMVモードの動作主体であるHDMVモジュール、BD-Jモードの動作主体であるJavaプラットフォームによる処理に供されるメモリである。カレント動的シナリオとは、BD-ROMに記録されているIndex.bdmv、BD-Jオブジェクト、ムービーブジェクトのうち、現在実行対象になっているものをいう。またプログラムメモリ１２は、ヒープメモリを含む。
【０９３０】
ヒープメモリは、システムアプリケーションのバイトコード、BD-Jアプリケーションのバイトコード、システムアプリケーションが利用するシステムパラメータ、BD-Jアプリケーションが利用するアプリケーションパラメータが配置されるスタック領域である
HDMVモジュール１３は、コマンドインタプリタを具備し、ムービーオブジェクトを構成するナビゲーションコマンドを解読して実行することでHDMVモードの制御を実行する。
【０９３１】
BD-Jプラットフォーム１４は、BD-Jモードの動作主体であるJavaプラットフォームであり、Java2Micro＿Edition(J2ME) Personal Basis Profile(PBP 1.0)と、Globally Executable MHP specification(GEM1.0.2)for package media targetsとをフル実装しており、クラスローダ、バイトコードインタプリタ、アプリケーションマネージャから構成される。
【０９３２】
クラスローダは、システムアプリケーションの1つであり、JARアーカイブファイルに存在するクラスファイルからバイトコードを読み出して、ヒープメモリ３１に格納することにより、BD-Jアプリケーションのロードを行う。
【０９３３】
バイトコードインタプリタは、いわゆるJava仮想マシンであり、ヒープメモリに格納されているBD-Jアプリケーションを構成するバイトコード、システムアプリケーションを構成するバイトコードをネィティブコードに変換して、MPUに実行させる。
【０９３４】
アプリケーションマネージャは、システムアプリケーションの1つであり、BD-Jオブジェクト内のアプリケーション管理テーブルに基づき、BD-Jアプリケーションを起動したりBD-Jアプリケーションを終了したりする等、BD-Jアプリケーションのアプリケーションシグナリングを行う。以上で、BD-Jプラットフォーム部の内部構成についての説明を終える。
【０９３５】
ミドルウェア１５は、組込みソフトウェアのためのオペレーティングシステムであり、カーネル、デバイスドライバから構成される。カーネルは、BD-Jアプリケーションからのアプリケーションプログラミングインターフェイス(API)のコールに応じて、再生装置特有の機能をBD-Jアプリケーションに提供する。また、割込信号により割込ハンドラ部を起動する等のハードウェア制御を実現する。
【０９３６】
モード管理モジュール１６は、BD-ROMまたはビルドインメディアドライブ、リムーバブルメディアドライブから読み出されたIndex.bdmvを保持して、モード管理及び分岐制御を行う。モード管理モジュールによるモード管理とは、動的シナリオを、BD-Jプラットフォーム２２、HDMVモジュールのどちらに実行させるかという、モジュールの割り当てである。
【０９３７】
ユーザイベント処理部１７は、リモコンを通じたユーザ操作に応答して、プログラム実行部１６や再生制御部７に処理の実行を依頼する。例えば、リモコンでボタンを押した場合は、そのボタンに含まれるコマンドを実行するようプログラム実行部１６に依頼する。例えば、リモコンで早送り・巻戻しボタンが押された場合には、再生制御部７に、現在再生しているプレイリストのAVクリップに対する早送り・巻戻し処理の実行を命令する。
【０９３８】
ローカルストレージ１８は、ハードディスクをアクセスするためのビルドインメディアドライブ、半導体メモリカードをアクセスするためのリムーバブルメディアドライブを備え、ダウンロードしてきた追加コンテンツやアプリケーションが使うデータなどの保存に用いられる。追加コンテンツの保存領域はBD-ROM毎に分かれており、またアプリケーションがデータの保持に使用できる領域はアプリケーション毎に分かれている。
【０９３９】
不揮発メモリ１９は、読み書き可能なメモリなどの記録媒体であり、電源が供給されなくても、記録内容を保持できる媒体、例えばフラッシュメモリ、FeRAMなどである。これは、レジスタセット２０３における記憶内容のバックアップに用いられる。
【０９４０】
(第１１実施形態)
以降の実施形態は、本願の優先権主張の基礎となった特許出願の願書に添付した明細書及び図面に記載された発明と同一発明(以下、本発明と呼ぶ)を実施するための形態である。
【０９４１】
先ず始めに、本発明に係る記録媒体の実施行為のうち、使用行為についての形態を説明する。図６４（ａ）は、本発明に係る記録媒体の、使用行為についての形態を示す図である。本図において、本発明に係る記録媒体はBD-ROM１０１である。このBD-ROM１０１は、再生装置１０２、テレビ１０３、リモコン１０４により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。
【０９４２】
以上が本発明に係る記録媒体の使用形態についての説明である。
【０９４３】
次に本発明に係る記録媒体であるBD-ROMの、2D映像を格納するためのデータ構造について説明する。
【０９４４】
図６４（ｂ）は、BD-ROMの構成を示す図である。
【０９４５】
本図の第４段目にBD-ROM１０１を示し、第３段目にBD-ROM上のトラックを示す。本図のトラック、BD-ROM１０１の内周から外周にかけて螺旋状に形成されているトラックを横方向に引き伸ばして描画している。BD-ROM１０１は他の光ディスク、例えばDVDやCDなどと同様にその内周から外周に向けてらせん状に記録領域を持ち、内周のリードインと外周のリードアウトの間に論理データを記録できるボリューム領域を有している。ボリューム領域は、先頭から光ディスクをアクセスする単位で通し番号が振られており、この番号のことを論理アドレスと呼ぶ。光ディスクからのデータの読み出しは論理アドレスを指定することで行う。ここでは論理アドレスは、光ディスク上の物理的な配置においても、連続していると定義する。すなわち、論理アドレスが連続しているデータはシークを行わずに読み出すことが可能である。また、リードインの内側にはBCA（Burst  Cutting  Area）と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。
【０９４６】
ボリューム領域には、先頭からファイルシステムのボリューム情報が記録され、続いて映像データなどのアプリケーションデータが記録されている。ファイルシステムとはディスク上のデータをディレクトリまたはファイルと呼ばれる単位で表現する仕組みであり、BD-ROM１０１の場合ではUDF（Universal  Disc  Format）によって記録される。日常使っているPC（パーソナルコンピュータ）の場合でも、FATまたはNTFSと呼ばれるファイルシステムを通すことにより、ディレクトリやファイルという構造でハードディスクに記録されたデータがコンピュータ上で表現され、ユーザビリティを高めている。このファイルシステムにより、通常のPCと同じように記録されている論理データをディレクトリ、ファイル構造を使って読み出しする事が可能になっている。
【０９４７】
BD-ROM１０１上のディレクトリ、ファイル構造は、ルートディレクトリ（ROOT）直下にBDMVディレクトリが置かれている。BDMVディレクトリはBD-ROM１０１で扱うAVコンテンツや管理情報などのデータが記録されているディレクトリである。BDMVディレクトリの配下には、タイトルを構成するインデックステーブルが定義されたインデックスファイル（index.bdmv）、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリ、BDJOディレクトリ、JARディレクトリが存在する。映像・音声といったAVコンテンツが多重化され格納されたAVクリップ（XXX.M２TS）、AVクリップの管理情報を格納したクリップ情報ファイル（XXX.CLPI）、AVクリップの論理的な再生経路を定義したプレイリストファイル（YYY.MPLS）、動的なシナリオを定義するためのプログラムが格納されたBDプログラムファイル（AAA.PROG）は、それぞれ前述のSTREAMディレクトリ、CLIPINFディレクトリ、PLAYLISTディレクトリの下に配置される。
【０９４８】
以下に、BDMVディレクトリ配下に置かれる各ファイルのデータ構造について説明する。
【０９４９】
まずインデックスファイル（Index.bdmv）について説明する。インデックスファイルは図６４（ｃ）に示すインデックステーブルを持つ。インデックステーブルはBD-ROMに格納されるすべてのタイトル、トップメニュー、FirstPlayといったタイトル構成を定義する最上位層のテーブルである。このテーブルには、全てのタイトル、トップメニュー、FirstPlayから最初に実行されるプログラムファイルが指定されている。BD-ROMの再生機は、タイトルあるいはメニューが呼び出されるたびにインデックステーブルを参照して、所定のBDプログラムファイルを実行する。ここで、FirstPlayとは、コンテンツプロバイダによって設定されるもので、ディスク投入時に自動実行されるBDプログラムファイルが設定されている。また、トップメニューは、リモコンでのユーザ操作で、「メニューに戻る」というようなコマンドが実行されるときに、呼び出されるムービーオブジェクト、BDJオブジェクトが指定されている。
【０９５０】
BDプログラムファイル（AAA.PRG）はタイトルから指定、実行されるプログラムが格納されている。プログラムのファイルは複数あり、プリフィックス（AAA）がプログラムを識別するのに使用される。ここで使用されるプログラムは、ブルーレイの場合はコマンドナビゲーションと呼ばれる独自仕様のインタープリタ方式のプログラムが使われるが、言語方式は本発明の本質ではないため、JavaやJavaScripのような汎用のプログラミング言語であっても構わない。このプログラムによって再生されるプレイリストが指定される。
【０９５１】
続いて、AVクリップ（XXX.M２TS）とクリップ情報ファイル（XXX.CLPI）について説明する。
【０９５２】
AVクリップは、MPEG-２トランスポートストリーム形式のデジタルストリームである。
【０９５３】
図６５（ａ）は、AVクリップの構成を示す図である。本図に示すようにAVクリップは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム（PG）、インタラクティブグラファイックスストリームのうち、１つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム（IG）は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、MPEG-２、MPEG-４  AVC、または、SMPTE  VC-１などの方式を使って符号化記録されている。オーディオストリームは、ドルビーAC-３、Dolby  Digital  Plus、MLP、DTS、DTS-HD、または、リニアPCMのなどの方式で圧縮・符号化記録されている。
【０９５４】
ビデオストリームの構成について説明する。MPEG-２、MPEG-４  AVC、SMPTE  VC-１などの動画圧縮符号化においては、動画像の空間方向および時間方向の冗長性を利用してデータ量の圧縮を行う。時間方向の冗長性を利用する方法として、ピクチャ間予測符号化が用いられる。ピクチャ間予測符号化では、あるピクチャを符号化する際に、表示時間順で前方または後方にあるピクチャを参照ピクチャとする。そして、その参照ピクチャからの動き量を検出し、動き補償を行ったピクチャと符号化対照のピクチャとの差分値に対して空間方向の冗長度を取り除くことによりデータ量の圧縮を行う。
【０９５５】
ここでは、参照ピクチャを持たずに符号化対象ピクチャのみを用いてピクチャ内予測符号化を行うピクチャをIピクチャと呼ぶ。ピクチャとは、フレームおよびフィールドの両者を包含する１つの符号化の単位である。また、既に処理済の１枚のピクチャを参照してピクチャ間予測符号化するピクチャをPピクチャとよび、既に処理済みの２枚のピクチャを同時に参照してピクチャ間予測符号化するピクチャをBピクチャと呼び、Bピクチャの中で他のピクチャから参照されるピクチャをBrピクチャと呼ぶ。また、フレーム構造の場合のフレーム、フィールド構造のフィールドを、ここではビデオアクセスユニットと呼ぶ。
【０９５６】
AVクリップに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームに配列x１０１１が、オーディオストリームに配列x１１００から０x１１１Fまでが、プレゼンテーショングラフィックスに配列x１２００から０x１２１Fまでが、インタラクティブグラフィックスストリームに配列x１４００から０x１４１Fまでが、映画の副映像に利用するビデオストリームに配列x１B００から０x１B１Fまで、主音声とミキシングする副音声に利用するオーディオストリームに配列x１A００から０x１A１Fが、それぞれ割り当てられている。
【０９５７】
図６５（ｂ）は、AVクリップがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリーム５０１、複数のオーディオフレームからなるオーディオストリーム５０４を、それぞれPESパケット列５０２および５０５に変換し、TSパケット５０３および５０６に変換する。同じくプレゼンテーショングラフィックスストリーム５０７およびインタラクティブグラフィックス５１０のデータをそれぞれPESパケット列５０８および５１１に変換し、更にTSパケット５０９および５１２に変換する。AVクリッステップＳ５１３はこれらのTSパケットを１本のストリームに多重化することで構成される。
【０９５８】
図６６（ａ）は、PESパケット列に、ビデオストリームがどのように格納されるかを更に詳しく示している。本図における第１段目はビデオストリームのビデオフレーム列を示す。第２段目は、PESパケット列を示す。本図の矢印yy１，yy２，  yy３，  yy４に示すように、ビデオストリームにおける複数のVideo  Presentation  UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS（Presentation  Time-Stamp）やピクチャの復号時刻であるDTS（Decoding  Time-Stamp）が格納される。
【０９５９】
図６６（ｂ）は、AVクリップに最終的に書き込まれるTSパケットの形式を示している。TSパケットは、ストリームを識別するPIDなどの情報を持つ４ByteのTSヘッダとデータを格納する１８４ByteのTSペイロードから構成される１８８Byte固定長のパケットであり、前述で説明したPESパケットは分割されTSペイロードに格納される。BD-ROMの場合、TSパケットには、４ByteのTP＿Extra＿Headerが付与され、１９２Byteのソースパケットを構成し、AVクリップに書き込まれる。TP＿Extra＿HeaderにはATS（Arrival＿Time＿Stamp）などの情報が記載される。ATSは当該TSパケットの後述するシステムターゲットデコーダ１５０３のPIDフィルタへの転送開始時刻を示す。AVクリップには図６６（ｂ）下段に示すようにソースパケットが並ぶこととなり、AVクリップの先頭からインクリメントする番号はSPN（ソースパケットナンバー）と呼ばれる。
【０９６０】
また、AVクリップに含まれるTSパケットには、映像・音声・字幕などの各ストリーム以外にもPAT（Program  Association  Table）、PMT（Program  Map  Table）、PCR（Program  Clock  Reference）などがある。PATはAVクリップ中に利用されるPMTのPIDが何であるかを示し、PAT自身のPID配列で登録される。PMTは、AVクリップ中に含まれる映像・音声・字幕などの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、またAVクリップに関する各種ディスクリプタを持つ。ディスクリプタにはAVクリップのコピーを許可・不許可を指示するコピーコントロール情報などがある。PCRは、ATSの時間軸であるATC（Arrival  Time  Clock）とPTS・DTSの時間軸であるSTC（System  Time  Clock）の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
【０９６１】
図６７（ａ）は、PMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、AVクリップに関するディスクリプタが複数配置される。前述したコピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、AVクリップに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報（フレームレート、アスペクト比など）が記載されたストリームディスクリプタから構成される。ストリームディスクリプタはAVクリップに存在するストリームの数だけ存在する。
【０９６２】
クリップ情報ファイルは、図６７（ｂ）に示すようにAVクリップの管理情報であり、AVクリップと１対１に対応し、クリップ情報、ストリーム属性情報とエントリマップから構成される。
【０９６３】
クリップ情報は図６７（ｂ）に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートはAVクリップの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。AVクリップ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻はAVクリップの先頭のビデオフレームのPTSであり、再生終了時刻はAVクリップの終端のビデオフレームのPTSに１フレーム分の再生間隔を足したものが設定される。
【０９６４】
ストリーム属性情報は図６８（ａ）に示すように、AVクリップに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
【０９６５】
エントリマップは、図６８（ｂ）に示すように、エントリマップヘッダ情報１１０１と、AVクリップ内に含まれるビデオストリームの各Iピクチャの表示時刻を示すPTSと各Iピクチャが開始するAVクリップのSPNが記載されたテーブル情報である。ここではテーブルの１つの行で示される対となるPTSとSPNの情報をエントリポイントと呼ぶことにする。また先頭を０として各エントリポイント毎にインクリメントした値をエントリポイントID（以下EP＿ID）と呼ぶことにする。このエントリマップを利用することにより、再生機はビデオストリームの時間軸上の任意の地点に対応するAVクリップのファイル位置を特定することが出来るようになる。例えば、早送り・巻戻しの特殊再生の際には、エントリマップに登録されるIピクチャを特定し選択して再生することによりAVクリップを解析することなく効率的に処理を行うことが出来る。また、エントリマップはAVクリップ内に多重化される各ビデオストリーム毎に作られ、PIDで管理される。また、エントリマップには、先頭にエントリマップヘッダ情報１１０１が格納され、ここには該当エントリマップが指すビデオストリームのPIDやエントリポイント数などの情報が格納される。
【０９６６】
次に、プレイリストファイル（YYY.MPLS）について説明する。
【０９６７】
プレイリストは、AVクリップの再生経路を示すものである。図６９（ａ）に示すように、プレイリストは１つ以上のプレイアイテム１２０１から構成され、各プレイアイテムはAVクリップに対する再生区間を示す。各プレイアイテム１２０１はそれぞれプレイアイテムIDで識別され、プレイリスト内で再生されるべき順序で記述されている。また、プレイリストは再生開始点を示すエントリマーク１２０２を含んでいる。エントリマーク１２０２はプレイアイテムで定義される再生区間内に対して付与することでき、図６９（ａ）に示すように、プレイアイテムに対して再生開始点となりうる位置に付けられ、頭出し再生に利用される。例えば、映画タイトルにおいて、エントリマーク１２０２をチャプタの先頭となる位置に付与することで、チャプタ再生することが可能である。なお、一連のプレイアイテムの再生経路をメインパス１２０５とここでは定義する。
【０９６８】
プレイアイテムの内容について図６９（ｂ）を用いて説明する。プレイアイテムには、再生するクリップ情報１３０１と再生開始時刻１３０２および再生終了時刻１３０３、コネクションコンディション１３１０、ストリーム選択テーブル１３０５が含まれている。再生開始時刻と再生終了時刻は時間情報であるため、再生機はクリップ情報ファイルのエントリマップを参照し、指定された再生開始時刻および再生終了時刻に対応するSPNを取得し、読み出し開始位置を特定して再生処理を行う。
【０９６９】
コネクションコンディション１３１０は、前方プレイアイテムと接続タイプを示している。プレイアイテムのコネクションコンディション１３１０が「１」の場合は、プレイアイテムが指し示すAVクリップは、そのプレイアイテムの前のプレイアイテムが指し示すAVクリップとシームレス接続が保証されないことを示す。プレイアイテムのコネクションコンディション１３１０が「５」か「６」の場合は、プレイアイテムが指し示すAVクリップは、そのプレイアイテムの前のプレイアイテムが指し示すAVクリップとシームレスに接続されることが保証される。コネクションコンディション１３１０が「５」の場合は、プレイアイテム間でSTCの連続性が途切れていても良く、つまり、接続前プレイアイテムのAVクリップ終端のビデオ表示時刻よりも、接続後プレイアイテムのAVクリップ先頭のビデオ表示時刻開始時刻は不連続でよい。ただし、接続前プレイアイテムのAVクリップを後述するシステムターゲットデコーダ１５０３のPIDフィルタに入力した後に続けて、接続後プレイアイテムのAVクリップをシステムターゲットデコーダ１５０３のPIDフィルタに入力して再生したときに、システムターゲットデコーダ１５０３のデコードが破綻しないようにAVクリップを作成する必要がある。また接続前プレイアイテムのAVクリップのオーディオの終端フレームと、接続後プレイアイテムのオーディオの先頭フレームは再生時間軸で重なら無ければならないなどの制約条件がある。また、コネクションコンディション１３１０が「６」の場合は、接続前プレイアイテムのAVクリップと接続後プレイアイテムのAVクリップを結合したときに１本のAVクリップとして再生できなければならない。つまり、接続前プレイアイテムのAVクリップと接続後プレイアイテムのAVクリップ間でSTCは連続し、またATCも連続する。
【０９７０】
ストリーム選択テーブル１３０５は、複数のストリームエントリ１３０９からなり、ストリームエントリ１３０９はストリーム選択番号１３０６、ストリームパス情報１３０７、ストリーム識別情報１３０８からなる。ストリーム選択番号１３０６は、ストリーム選択テーブルに含まれるストリームエントリ１３０９の先頭から順にインクリメントされる番号であり、プレーヤでのストリーム識別のために利用される。ストリームパス情報１３０７は、ストリーム識別情報１３０８によって示されるストリームが、どのAVクリップに多重化されているかを示す情報であり、例えば「メインパス」であれば、該当するプレイアイテムのAVクリップを示し、「サブパスID=１」であれば、そのサブパスIDが示すサブパスにおいて、該当するプレイアイテムの再生区間に対応するサブプレイアイテムのAVクリップを示す。サブパスについては次の節で説明する。ストリーム識別情報１３０８は、PIDなどの情報であり、参照するAVクリップに多重化されているストリームを示す。また、ストリームエントリ１３０９には、各ストリームの属性情報も同時に記録されている。ここで属性情報とは、各ストリームの性質を示す情報で、例えばオーディオ、プレゼンテーショングラフィックス、インタラクティブグラフィックスの場合には、言語属性などが含まれる。
【０９７１】
プレイリストは、図６９（ｃ）に示すように１つ以上のサブパスを有することが出来る。サブパスはプレイリストに登録される順にIDが振られ、サブパスIDとして、サブパスを識別するために使われる。サブパスは、メインパスと同期して再生される一連の再生経路を示す。サブプレイアイテムは、プレイアイテムと同様に再生するクリップ情報１３０１と再生開始時刻１３０２および再生終了時刻１３０３を持ち、サブプレイアイテムの再生開始時刻１３０２と再生終了時刻１３０３は、メインパスと同じ時間軸で表される。例えば、プレイアイテム＃2のストリーム選択テーブル１３０５に登録されているあるストリームエントリ１３０９が、サブパスID=０でプレゼンテーショングラフィックス１を示す場合は、サブパスID=０のサブパスの中で、プレイアイテム＃2の再生区間に同期して再生するサブプレイアイテム＃2のAVクリップの中に多重化されるプレゼンテーショングラフィックス１が、プレイアイテム＃2再生区間に再生されることになる。また、サブプレイアイテムには、プレイアイテムのコネクションコンディションと同じ意味を持つSPコネクションコンディションというフィールドが存在する。SPコネクションコンディションが「５」もしくは「６」のサブプレイアイテム境界のAVクリップは、コネクションコンディション「５」もしくは「６」と同じ上記条件を守る必要がある。
【０９７２】
以上が、本発明にかかる記録媒体であるBD-ROMの、2D映像を格納するためのデータ構造である。
【０９７３】
続いて、本発明にかかる2D映像を格納するBD-ROMを再生する再生装置（2D再生装置）について説明する。
【０９７４】
図７０（ａ）は、2D再生装置１５００の構成を示している。2D再生装置１５００は、BD-ROMドライブ１５０１、リードバッファ１５０２、システムターゲットデコーダ１５０３、プログラム記録メモリ１５０４、管理情報記録メモリ１５０５、プログラム実行部１５０６、再生制御部１５０７、プレーヤ変数１５０８、ユーザイベント処理部１５０９、プレーン加算部１５１０から構成されている。
【０９７５】
BD-ROMドライブ１５０１は、再生制御部１５０７からの要求を元にBD-ROMディスクからデータを読み出す。BD-ROMディスクから読み出れたAVクリップはリードバッファ１５０２に、インデックスファイル、プレイリストファイル、クリップ情報ファイルは管理情報メモリ１５０５に、ムービーオブジェクトファイルはプログラムメモリ１５０４に、それぞれ転送される。
【０９７６】
リードバッファ１５０２は、BD-ROMドライブを使って読み込んだデータを、管理情報メモリ１５０５はインデックスファイル、プレイリストファイル、クリップ情報ファイルの管理情報を、プログラム記録メモリ１５０４は、ムービーオブジェクトファイルを格納するメモリ等で構成されたバッファである。
【０９７７】
システムターゲットデコーダ１５０３は、リードバッファ１５０２に読み出されたソースパケットに対して多重分離処理を行い、ストリームのデコード処理を行う。AVクリップに含まれるストリームのデコードに必要な、コーデック種類やストリーム属性などの情報は再生制御部１５０７から転送される。システムターゲットデコーダ１５０３はデコードした主映像ビデオストリーム、副映像ビデオストリーム、インタラクティブグラフィックスストリーム、プレゼンテーショングラフィックスストリームを、それぞれのプレーンメモリである主映像プレーン、副映像プレーン、インタラクティブグラフィックスプレーン（IGプレーン）、プレゼンテーショングラフィックスプレーン（PGプレーン）に書き出す。またシステムターゲットデコーダ１５０３はデコードした主音声ストリーム、副音声ストリームを、ミキシングしスピーカなどに出力する。また、システムターゲットデコーダ１５０３は、プログラム実行部１５０６より転送されるメニューなどに表示するためのJPEG，PNGなどのグラフィックスデータをデコードして、イメージプレーンに書き出す処理を行う。システムターゲットデコーダ１５０３の詳細については後述する。
【０９７８】
ユーザイベント処理部１５０９は、リモコンを通じたユーザ操作に応答して、プログラム実行部１５０６や再生制御部１５０７に処理の実行を依頼する。例えば、リモコンでボタンを押した場合は、そのボタンに含まれるコマンドを実行するようプログラム実行部１５０６に依頼する。例えば、リモコンで早送り・巻戻しボタンが押された場合には、再生制御部１５０７に、現在再生しているプレイリストのAVクリップに対する早送り・巻戻し処理の実行を命令する。
【０９７９】
再生制御部１５０７は、BD-ROMドライブ１５０１とシステムターゲットデコーダ１５０３を制御して、AVクリップの再生を制御する機能を持つ。再生制御部１５０７は、プログラム実行部１５０６からの再生命令や、ユーザイベント処理部１５０９より通知に基づき、プレイリスト情報を解釈してAVクリップの再生処理を制御する。また、再生制御部１５０７は、プレーヤ変数１５０８の設定や参照を行い、再生動作を行う。
【０９８０】
プレーヤ変数１５０８は、プレーヤの状態を示すシステムパラメータ（SPRM）と一般用途として使用可能なゼネラルパラメータ（GPRM）とがある。
【０９８１】
図７０（ｂ）はシステムパラメータ（SPRM）の一覧である。
【０９８２】
SPRM（０）      ：  言語コード
SPRM（１）      ：  主音声ストリーム番号
SPRM（２）      ：  字幕ストリーム番号
SPRM（３）      ：  アングル番号
SPRM（４）      ：  タイトル番号
SPRM（５）      ：  チャプタ番号
SPRM（６）      ：  プログラム番号
SPRM（７）      ：  セル番号
SPRM（８）      ：  選択キー情報
SPRM（９）      ：  ナビゲーションタイマー
SPRM（１０）    ：  再生時刻情報
SPRM（１１）    ：  カラオケ用ミキシングモード
SPRM（１２）    ：  パレンタル用国情報
SPRM（１３）    ：  パレンタルレベル
SPRM（１４）    ：  プレーヤ設定値（ビデオ）
SPRM（１５）    ：  プレーヤ設定値（オーディオ）
SPRM（１６）    ：  音声ストリーム用言語コード
SPRM（１７）    ：  音声ストリーム用言語コード
SPRM（１８）    ：  字幕ストリーム用言語コード
SPRM（１９）    ：  字幕ストリーム用言語コード
SPRM（２０）    ：  プレーヤリージョンコード
SPRM（２１）    ：  2D/3D出力モードのユーザー優先選択
SPRM（２２）    ：  現在の2D/3D出力モード
SPRM（２３）    ：  ディスプレイの3D映像表示能力
SPRM（２４）    ：  3D映像再生能力
SPRM（２５）    ：  予備
SPRM（２６）    ：  予備
SPRM（２７）    ：  予備
SPRM（２８）    ：  予備
SPRM（２９）    ：  予備
SPRM（３０）    ：  予備
SPRM（３１）    ：  予備
SPRM（１０）は、AVクリップに属する各ピクチャデータが表示される度に更新される。つまり再生装置が新たなピクチャデータを表示させれば、その新たなピクチャデータの表示時刻（PTS）を示す値にSPRM（１０）は更新される。このSPRM（１０）を参照すれば、現在の再生時点を知得することができる。
【０９８３】
SPRM（１６）の音声ストリーム用言語コードやSPRM（１８）の字幕ストリーム用言語コードは、プレーヤのOSDなどで設定できる項目であり、プレーヤのデフォルトの言語コードを示す。例えば、SPRM（１６）の音声ストリーム用言語コードが英語であれば、プレイリストを再生する上で、プレイアイテムのストリーム選択テーブルの中から同じ言語コードを持つストリームエントリを探し出し、その音声ストリームを選択して再生するといった機能をBDプログラムファイルに入れることができる。
【０９８４】
また、再生制御部１５０７は、システムパラメータの状態をチェックしながら再生する。また、SPRM（１）、SPRM（２）、SPRM（２１）、SPRM（２２）は、それぞれ音声ストリーム番号、字幕ストリーム番号、副映像ストリーム、副音声ストリームの番号を示し、これらの値は、前述したストリーム選択番号６０６に対応する。例えば、プログラム実行部１５０６によって、音声ストリーム番号SPRM（１）が変更されたとする。再生制御部１５０７は、現在再生しているプレイアイテムのストリーム選択テーブル６０５の中から、ストリーム選択番号６０６と比較して、一致するストリームエントリ６０９を参照し、再生する音声ストリームを切り替える。このようにしてどの音声・字幕・副映像ストリームを再生するかどうかを切り替える。
【０９８５】
プログラム実行部１５０６はBDプログラムファイルに格納されたプログラムを実行するプロセッサである。格納されたプログラムに従って動作を行い、次のような制御を行う。（１）再生制御部１５０６に対してプレイリスト再生を命令する。（２）システムターゲットデコーダに対してメニューやゲームのグラフィックスのためのPNG・JPEGを転送して画面に表示する。これらはプログラムの作りに応じて自由に行うことが出来、どのように制御するかは、オーサリング工程によるBDプログラムファイルのプログラミング工程によって決まる。
【０９８６】
プレーン加算部は、主映像プレーン、副映像プレーン、インタラクティブグラフィックスプレーン、プレゼンテーショングラフィックスプレーン、イメージプレーンを瞬時に重畳し、TVなどの画面に表示する。
【０９８７】
次に、図７１を参照しながらシステムターゲットデコーダ１５０３について説明する。
【０９８８】
ソースデパケットタイザは、システムターゲットデコーダ１５０３に転送されるソースパケットを解釈し、TSパケットを取り出しPIDフィルタに送出する。この送出にあたって、各ソースパケットのATSに応じてデコーダへの入力時刻を調整する。具体的には、ATCカウンタが生成するATCの値と、ソースパケットのATS値とが同一になった瞬間に、AVクリップの記録レートにしたがって、そのTSパケットだけをPIDフィルタに転送する。
【０９８９】
PIDフィルタは、ソースデパケッタイザから出力されたTSパケットのうち、TSパケットのPIDが、再生に必要とされるPIDに一致するものを、PIDにしたがって、主映像ビデオデコーダ、副映像ビデオデコーダ、IGデコーダ、PGデコーダ、音声デコーダ、副音声デコーダに転送する。例えば、BD-ROMの場合には、TSパケットに含まれるPIDが０x１０１１である場合は主映像ビデオデコーダに、PIDが０x１B００から０x１B１Fである場合は副映像ビデオデコーダに、PIDが０x１１００から０x１１１Fである場合は主音声デコーダに、PIDが０x１A００から０x１A１Fである場合は副音声デコーダに、PIDが０x１２００から０x１２１Fである場合はPGデコーダに、PIDが０x１４００から０x１４１Fである場合はIGデコーダに転送される。
【０９９０】
主映像ビデオデコーダは、TB（TransportStreamBuffer）１７０１、MB（Multiplexing  Buffer）１７０２、EB（ElementaryStreamBuffer）１７０３，圧縮映像デコーダ１７０４、DPB（Decoded  Picture  Buffer）１７０５から構成される。
【０９９１】
TB１７０１は、ビデオストリームを含むTSパケットがPIDフィルタ１７０２から出力された際、TSパケットのまま一旦蓄積されるバッファである。
【０９９２】
MB１７０２は、TB１７０１からEB１７０２にビデオストリームを出力するにあたって、一旦PESパケットを蓄積しておくためのバッファである。TB１７０１からMB１７０２にデータが転送される際に、TSパケットのTSヘッダは取り除かれる。
【０９９３】
EB１７０３は、符号化状態にあるピクチャ（Iピクチャ、Bピクチャ、Pピクチャ）が格納されるバッファである。MB１７０２からEB１７０３にデータが転送される際にPESヘッダが取り除かれる。
【０９９４】
圧縮映像デコーダ１７０４、ビデオエレメンタリストリームの個々のビデオアクセスユニットを所定の復号時刻（DTS）ごとにデコードすることによりフレーム/フィールド画像を作成する。AVクリップに多重化されるビデオストリームの圧縮符号化形式にはMPEG２、MPEG４AVC、VC１などがあるため、ストリームの属性に応じて、圧縮映像デコーダ１７０４のデコード方法は切り替えられる。圧縮映像デコーダ１７０４は、デコードされたフレーム/フィールド画像はDPB１７０５に転送し、表示時刻（PTS）のタイミングで対応するフレーム/フィールド画像を主映像プレーンに書き出す。
【０９９５】
DPB１７０５は、復号されたフレーム/フィールド画像を一時的に保持しておくバッファである。圧縮映像デコーダ１７０４が、ピクチャ間予測符号化されたPピクチャやBピクチャなどのビデオアクセスユニットをデコードする際に、既にデコードされたピクチャを参照するために利用する。
【０９９６】
副映像ビデオデコーダは、主映像ビデオデコーダと同様の構成を持ち、入力される副映像ビデオストリームのデコードを行い、表示時刻（PTS）のタイミングでピクチャを副映像プレーンに書き出す。
【０９９７】
IGデコーダは、ソースパケタイザから入力されるTSパケットからインタラクティブグラフィックスストリームを抽出してデコードし、非圧縮のグラフィックスデータを表示時刻（PTS）のタイミングでIGプレーンに書き出す。
【０９９８】
PGデコーダは、ソースパケタイザから入力されるTSパケットからプレゼンテーショングラフィックスストリームを抽出してデコードし、非圧縮のグラフィックスデータを表示時刻（PTS）のタイミングでPGプレーンに書き出す。
【０９９９】
主音声デコーダは、緩衝バッファを有し、バッファにデータを蓄えながら、TSヘッダ、PESヘッダなどの情報を取り除いて、音声ストリームのデコード処理を行い、非圧縮のLPCM状態のオーディオデータを得て再生時刻（PTS）のタイミングで音声ミキサーに出力する。AVクリップに多重化されるオーディオストリームの圧縮符号化形式にはAC３、DTSなどがあるため、ストリームの属性に応じて、圧縮音声の復号化方式を切り替える。
【１０００】
副音声デコーダは、主音声デコーダと同様の構成を持ち、入力される副音声ストリームのデコードを行い、表示時刻のタイミングで非圧縮のLPCMの状態のオーディオデータを音声ミキサーに出力する。AVクリップに多重化されるオーディオストリームの圧縮符号化形式にはDolbyDigitalPlus、DTS-HD  LBRなどがあるため、ストリームの属性に応じて、圧縮音声の復号化方式を切り替える。
【１００１】
音声ミキサーは、主音声デコーダから出力される非圧縮音声データと副音声デコーダから出力される非圧縮音声データとをミキシング（音の重ね合わせ）をしてスピーカなどに出力する。
【１００２】
イメージプロセッサは、プログラム実行部から転送されるグラフィックスデータ（PNG・JPEG）をデコードして、プログラム実行部から指定される表示時刻にしたがって、イメージプレーンに出力する。
【１００３】
以上が本発明にかかる2D再生装置の構成である。
【１００４】
（3D再生の原理）
次に図９２を用いて家庭用ディスプレイで立体視を行う原理を説明する。立体視を実現する手法としては、ホログラフィ技術を用いる方法と、視差画像を用いる方式の大きく2つある。
【１００５】
まず、１つ目のホログラフィ技術の特徴としては、人間が通常物体を認識するのと全く同じように物体を立体として再現することができるが、動画生成に関しては、技術的な理論は確立しているが、ホログラフィ用の動画をリアルタイムで生成する膨大な演算量を伴うコンピューター、及び１mmの間に数千本の線を引けるだけの解像度を持ったディスプレイデバイスが必要であるが、現在の技術での実現は非常に難しく、商用として実用化されている例はほとんどない。
【１００６】
２つ目の視差画像を用いた方式で、右目に入る映像と、左目に入る映像を各々用意し、それぞれの目に対応したピクチャーだけが入るようにして立体視を行う方法である。図９２でユーザーが顔の中央の延長線上にある、比較的小さな立方体を見ている様子を上から見た図であり、右上の図は左目が見た場合の例を示しており、右下の図は同じ立方体を右目が見た場合の例を示している。
【１００７】
この方式のメリットは、高々右目用と左目用の２つの視点の映像を準備するだけで立体視を実現できることにあり、技術的には、左右のそれぞれの目に対応した絵を、いかにして対応した目にだけ見せることができるかの観点から、いくつかの技術が実用化されている。
【１００８】
ひとつは、継時分離方式と呼ばれるもので、ディスプレイ上に左目用及び右目用として時間軸方向で交互に表示される映像を、ユーザーは継時型ステレオ眼鏡（液晶シャッター付）を通して観察することにより、目の残像反応により左右のシーンを重ね、立体映像として認識する。より詳細には、ディスプレイ上には、左目用の映像が表示されている瞬間には、前述の継時型ステレオ眼鏡は、左目に対応する液晶シャッターを透過にし、右目に対応する液晶シャッターは遮光する。ディスプレイ上に右目用の映像が表示されている瞬間には、先ほどと逆に右目に対応する液晶シャッターを透過にし、左目に対応する液晶シャッターを遮光する。この方式では、左右の映像を時間軸方向で交互に表示させるために、例えば、通常の２次元の映画であれば1秒に２４枚の映像を表示させるのに対して、左右の映像合わせて１秒に４８枚の映像を表示させる必要がある。従って、この方式では、一画面の書き換えが比較的早いディスプレイにおいて好適であるが、１秒間に所定の回数書き換え可能なディスプレイであれば限定されない。
【１００９】
また、別の方法としては、先ほどの継時分離方式では左右のピクチャーを時間軸方向で交互に出力していたのに対して、一画面中の縦方向に左目用のピクチャーと右目用のピクチャーを同時に交互に並べ、ディスプレイ表面にレンチキュラーレンズと呼ばれる蒲鉾上のレンズを通して、左目用のピクチャーを構成する画素は左目だけに結像し、右目用のピクチャーを構成する画素は右目だけに結像するようにすることで、左右の目に視差のあるピクチャーを見せ、3Dとしてみることができる方式である。なお、レンチキュラーレンズだけでなく、同様の機能を持たせたデバイス、例えば液晶素子を用いてもよいし、また左目用の画素には縦偏光のフィルター、右目用の画素には横偏光のフィルターを設置し、視聴者は、左目用には縦偏光、右目用には横偏光のフィルターを設置した偏光メガネを用いてディスプレイを見ることによって立体視が可能となる。
【１０１０】
この視差画像を用いた立体視は、既に遊園地の遊具などで一般的に使用されており、技術的にも確立されているため、家庭における実用化に最も近いものと言える。なお、視差画像を用いた立体視のための方法はこの他に非接触モード色分離方式などさまざまな技術が提案されており、本実施の例においては、継時分離方式あるいは偏光メガネ方式を例として用いて説明するが、視差画像を用いる限りこれら２方式に限定するものではない。
【１０１１】
本実施の例では、立体視に使う視差画像を情報記録媒体に格納する方法を説明する。ここでは、左目用の画面が格納された映像を「左目映像」、右目用の画面が格納された映像を「右目映像」、両方の映像のことを「3D映像」と呼ぶことにする。（2D/3D表示の切り替え）
次に本発明に係る記録媒体であるBD-ROMの、3D映像を格納するためのデータ構造について説明する。
【１０１２】
データ構造の基本部分は、3D映像を格納するためのデータ構造と同じであり、拡張または異なる部分を中心に説明する。3D映像を格納したBD-ROMに対して、2D映像のみを再生することができる再生装置を2D再生装置、2D映像と3D映像をどちらも再生できる再生装置を2D/3D再生装置として説明を行う。
【１０１３】
再生装置の状態を示すシステムパラメータ（SPRM）には、再生装置が2D再生装置か、2D/3D再生装置かを識別するためのフラグが用意されている。ここでは図７２を例に、SPRM（２４）がプレーヤが持通常再生D再生能力を示格納先D-Capabilityパラメータ群であるとして説明する。
【１０１４】
3D再生能力は、ビデオ映像の3D表示能力と、グラフィクスの3D表示能力がそれぞれ判定できるようになっている。ビデオ映像の3D表示能力とは、ステレオ映像方式の２画面分の左右映像をそれぞれデコードして表示できる能力のことである。グラフィクスの3D表示能力とは、左目用グラフィクスと右目用グラフィクスの２つのグラフィクスを独立してデコードしてプレーン上に描画する能力である。
【１０１５】
また、ビデオ映像の表示能力に関しては、さらに、解像度とフレームレートごとに細分化して再生能力を示すことも可能である。１９２０x１０８０/５９.９４iのビデオフォーマットの3D映像の表示能力など、個別に識別することが可能であれば、LSIの性能に合わせて、対応可能な3D表示をプログラムか検出可能になる。
【１０１６】
なお、システムパラメータの値をBD-ROM上のJAVAプログラムからアクセスする場合は、プレーヤのシステムプロパティとしてアクセスすることも可能である。
【１０１７】
また、図７３のように、ディスプレイとプレーヤが、HDMIのようにディスプレイの性能・対応方式をプレーヤに送信できる伝送方式により接続されている場合、ディスプレイの3D対応範囲をSPRM（２３）に自動的に設定してもよい。また、ディスプレイの性能を伝送できない場合は、ユーザーが手動で設定してもよい。
【１０１８】
ディスプレイから対応方式を取得できる場合は、単純な対応方式の他、ディスプレイのサイズ、解像度、ディスプレイから視聴する人までの距離など3D再生に影響する情報を取得し、システムパラメータに格納しておくことで、後で説明するプログラムによる最適な再生方式の選択に活用することも可能である。
【１０１９】
図７４はインデックスファイル（Index.bdmv）とBDプログラムファイル（００１.PRG）の関係を示している。3D映像を格納したBD-ROMには、2D映像を再生する経路が記載された2Dプレイリスト２６０１と、3D方式１映像を再生する経路が記載された3Dプレイリスト２６０２、3D方式２映像を再生する経路が記載された3Dプレイリスト２６０３が用意されている。ユーザからタイトルが選択され、実行されたBDプログラムファイルは、プログラムの中で、再生装置が3D映像再生に対応しているか、対応している場合にユーザが3D映像再生を選択しているかを調べて、再生するプレイリストを切り替える。3D再生方式を複数想定する場合は、それぞれ対応した方式のプレイリストを準備しておき、プレーヤがBD-ROMに格納されたプレイリストに対応している場合は、対応した3Dプレイリストを選択、対応していない場合は、2Dプレイリストを選択する。
【１０２０】
たとえば、3D方式１が２画面ステレオ再生方式、3D方式２がサイド・バイ・サイド方式であり、プレーヤがサイド・バイ・サイド方式にのみ対応している場合、プログラムはそのプレーヤで再生可能であるサイド・バイ・サイド方式の3Dプレイリスト００５.MPLSを選択して再生する。
【１０２１】
なお、BD-ROMに格納されているプログラムはオーサリング側が作成するものであり、複数の3D形式にプレーヤが対応している場合、どの3D再生方式を優先的に選択するかは、オーサリング側の意志に依存する。
【１０２２】
なお、FirstPlayのようにディスク挿入時にまず最初に再生されるプレイリストは、安全のため必ずどのプレーヤでも再生される2D映像で構成されることが望ましい。
【１０２３】
図７５はBDプログラムファイルのプログラムでの2Dプレイリストと、3Dプレイリストの選択フローを示している。
【１０２４】
S２７０１にて、SPRM（２４）の値をチェックし、値が０の場合は該当再生装置は2D再生装置であるため、2Dプレイリストを再生し、値が１の場合はS２７０２に進む。
【１０２５】
S２７０２にて、ユーザに2D映像の再生を希望するか、3D映像の再生を希望するかを、メニュー画面を表示して問い合わせる。ユーザのリモコンなどでの選択の結果、2D映像の再生を希望する場合は2Dプレイリストを再生し、3D映像の再生を希望する場合はS２７０３に進む。
【１０２６】
S２７０３にて、ディスプレイが3D映像の再生に対応しているかをチェックする。例えば、HDMIにて結線を行い、再生装置がディスプレイに対して、3D映像再生に対応しているかどうかを問い合わせる。3D映像の再生に対応していない場合は、2Dプレイリストを再生するが、ユーザに対してテレビ側の準備が整っていない旨をメニュー画面などで提示しても良い。3D映像の再生に対応している場合は、3Dプレイリストを再生する。
【１０２７】
旧来のアナログ方式では3D映像に対応していないため、3D映像は出力できない。プレーヤが3D映像再生中は、図７６のように、アナログ出力に「3D映像再生中です。3D対応ディスプレイでご覧ください。」などのメッセージを表示して、ユーザーが誤った端子に接続したり、対応していないディスプレイに接続していることを知らせるためのメッセージを表示する。
【１０２８】
接続されているディスプレイが2Dディスプレイのみの場合は、自動的に2Dプレイリストに再生を切り替えてもよい。プレーヤに2Dディスプレイと、3Dディスプレイが接続されており、同時に出力している場合は、2Dディしプレイ側に3D映像の左目映像か右目映像のいずれかのみを出力する。どちらの映像をアナログ用に出力するかは、プレイリストなどに格納された、2D出力優先映像情報に従う。この仕組みにより、2Dと3Dとを同時に出力する場合、2Dと3D用の映像を同時にデコードしたり、2Dと3D用のプレイリストを独立して扱えなくても、同時にディスプレイに出力することが可能となる。
【１０２９】
同様にOSD（システム組み込みメニュー）表示を行う際、3Dディスプレイには3D対応のOSD表示を行うが、アナログ出力のように2Dしか対応しない出力には専用の2D映像、あるいは、左目映像のみ/右目映像のみを出力する。
【１０３０】
3D用の出力と2D用の出力が困難な場合は、リモコンにサブディスプレイを設け、そちらに表示してもよい。
【１０３１】
図７７は、プレーヤの2D/3D出力を示すシステムパラメータに不正な値が設定され、映像が表示されなくなることを回避するためのプログラムに関する説明である。破線四角形は処理を示しており、楕円はプログラム動作を示し、ごのシステムパラメータの状態、矢印はプログラムが動作するタイミングが併記されている。
【１０３２】
このプログラムは、ディスク挿入時、タイトル切り替え時、PlayList切り替え時、ユーザー要求により表示形式切り替え時に、それぞれの判定ロジックで、システムパラメータの値が有効な値以外には変更されないことを保証する。このプログラムは、各プレーヤ上に組み込まれている。
【１０３３】
タイトルには２種類存在し、AVを管理するPlayListが再生中のみアプリケーションが有効であるMovie  titleと、PlayListが再生されていなくてもJavaプログラムから画面を描画することが可能なJava  titleがある。
【１０３４】
図中の矢印とプログラムが動作するタイミングには、Movie  titleの時のみ動作するものと、Java  titleの時のみ動作するものと、タイトルの種類にかかわらず動作するものがある。
【１０３５】
システムパラメータの値が「Invalid」とは、システムパラメータの値が出力に反映されていない状態であり、たとえシステムパラメータの値が変更されても、2D/3Dの出力は切り替わらない。この場合の動作は不定でも良い。
【１０３６】
対して、「Valid」とは、システムパラメータの値が出力に反映されている状態であり、システムパラメータが2Dを示していれ第２記録媒体D出力であり、3Dを示していれ倍速再生D出力である。なお、切り替え時は、HDMIの再認証などが発生するため、システムパラメータの値の変更と出力形式の切り替えに多少のタイムラグがあっても良い。
【１０３７】
ディスク挿入時には、「Initialization」として示されている、図７８、図９１で示すプログラムが処理される。接続されているディスプレイが眼鏡を必要とせずに立体視できる（レンチキュラーなど）ものであれば、自動的に出力モードを3Dにしてもよい。
【１０３８】
Java  titleへ切り替わる時には、「Procedure  when  title  is  changed」として示されている、図７９（ａ）で示すプログラムが処理される。SD画質では十分に立体映像を表現できないため、Java管理情報がSD解像度を設定する場合は、自動的に2Dモードに切り替えてもよい。
【１０３９】
PlayList再生開始時には、「Procedure  when  playback  condition  is  changed」として示されている、図７９（ｂ）で示すプログラムが処理される。
【１０４０】
2D/3D出力の切り替え時には、「Procedure  when  title  change  is  requested」として示されている、図８０で示すプログラムが処理される。
【１０４１】
図８１は、図７７の説明図のうち、Movie  titleの場合のみを抜き出してものである。
【１０４２】
図８２は、図７７の説明図のうち、Java  titleの場合のみを抜き出したものである。
【１０４３】
図８３は、図７７の説明図のうち、タイトル切り替えの場合のみを抜き出したものである。
【１０４４】
（HDMI認証の事前処理）
図８４は、再生開始時の映像表示までの時間を短縮する方法について説明している。
【１０４５】
再生開始時の処理としては、プレーヤにディスクが挿入され、AVを再生する準備やプログラム実行環境の起動を待ち、プログラムに従って再生するPlayListを選択し、再生するビデオストリームが決定してから、ビデオの解像度とフレームレートを検出して、HDMIの認証を行い、TVとの接続が確立後、AVの再生を開始する。
【１０４６】
HDMI認証には時間がかかるため、再生開始までにかなりの時間を待たされる懸念がある。
【１０４７】
そこで、図８４（ａ）に示すように、再生するPlayListが決定する前に、最初に読み込まれるナビゲーションデータの一部に、HDMI認証に必要なビデオ解像度とフレームレートなどの情報を記録しておき、図８４（ｂ）に示すように、AVを再生する準備やプログラム実行環境の起動処理と並行してHDMI認証を行っておけば、PlayList選択後、すぐに再生を開始することが可能になる。
【１０４８】
事前にオーサリングされ作り込まれたコンテンツが記録されているBD-ROMの場合、ディスク再生中のPlayListに含まれるビデオ解像度とフレームレートを合わせておくことも可能であるため、事前にHDMI認証を完了させておくと、PlayList再生開始時に待ち時間を短縮する効果が得られる。
【１０４９】
また、たとえPlayListによってはビデオ解像度やフレームレートが異なったとしても、最初に再生されるPlayListや本編のPlayListはオーサリング時点で分かっているため、そのPlayListに含まれるビデオの解像度とフレームレートで事前に認証を済ませておけば、やはりPlayList再生開始時に待ち時間を短縮する効果が得られる。
【１０５０】
（特殊再生における映像データ読み込み）
3D映像が格納されたディスクで、再生互換性を確保するためのディスクと再生装置の従来例としては、図８５に示すような方法が知られている。ディスクには、左目用の画面が格納された2D/左目映像ビデオストリームと、右目用の画面が格納された右目映像ビデオストリームが格納されている。
【１０５１】
各AVストリームは、ディスク上に幾つかのエクステントに分割され、交互にディスク上に配置されている。連続して再生するため、隣接する2D/左目AVストリームのエクステントと、右目AVストリームのエクステントは同じ同一再生時間を有しており、インターリーブ配置されているか、両ストリームが１つのストリームに多重化されている。
【１０５２】
2D/左目AVストリームが配置されたエクステントは、それぞれを順次再生した場合に、シームレス再生できるようにディスクのシーク性能や読み込み速度を元に配置されている。ディスクは、2D再生装置に装填されると、2D/左目AVストリームであるが再生され、2D映像を出力する。一方で、ディスクが3D再生装置に装填され、ユーザが3D再生を選択した場合は、2D/左目AVストリームと右目AVストリームがエクステント単位で交互に読み込まれる。つまり、ドライブのシークが発生しないように連続的に読み込まれる。読み込まれたAVストリームは、2D/左目映像ビデオストリームは左目用映像デコーダに、右目映像ビデオストリームは右目用映像デコーダに入力され、それぞれ両方のストリームを復号して、例えば左目画面・右目画面が交互にテレビに出力される。この出力画像は、１/４８秒毎に右目と左目のシャッタが切り替わる立体メガネで見ると立体映像に見える。このような構成にすることで、3D映像が格納されたディスクが、2D再生装置で2D映像で再生し、2D/3D再生装置では3D映像を再生することができる。
【１０５３】
通常再生を行う場合は、再生するストリームファイルを指定して先頭から連続して読み込めばよいが、早送りのように映像の部分区間を高速に切り替えて読み込む場合は、読み込み位置を示したナビゲーション情報が必要となる。特に高速に早送りする場合は、Iピクチャのみを読み込んで、次に表示すべきIピクチャにシークすることを繰り返すため、Iピクチャの位置を効率的に読み込むためのナビゲーション情報が必要となる。
【１０５４】
図８６は、2D映像の場合のナビゲーション情報を示しており、Iピクチャの開始アドレスとサイズを格納したタイムマップがそれにあたる。
【１０５５】
2D/左目用ストリームと、右目用ストリームが異なるファイルあるいは異なるトランスポートストリームに多重化されている場合は、各々独立した個別のタイムマップを持っておけばよく、早送り再生時に同じ時刻の映像をそれぞれ読み込んで表示すればよい。
【１０５６】
なお、図８７に示すように、早送りなどの特殊再生時も、左目用映像と右目用映像はペアでなければ立体に見えないため、同じ時刻の映像を読み込んで表示する必要がある。そのため、それぞれのタイムマップの時刻が異なる場合は、早送り中の立体映像表示は困難であるため、タイムマップの時刻を合わせておく必要がある。
【１０５７】
2D/左目用ストリームと、右目用ストリームが同じトランスポートストリームに多重化されている場合は、個別にタイムマップを作る方法と、左目用・右目用ペアごとに１つのタイムマップを作る方法がある。
【１０５８】
図８８は、個別にタイムマップを持つ場合である。１つのトランスポートストリームに多重化されているが、読み込み方法は２つに分かれている場合と同じである。読み取り領域が重なる場合は、連続で読み込むための工夫などは必要である。
【１０５９】
図８９は、左目用・右目用ペアごとに１つのタイムマップを作る場合である。ペアごとにエントリーを登録するため、左目用と右目用のIピクチャの時刻は同じである。左目用Iピクチャの先頭アドレスと右目用Iピクチャの先頭アドレスのうち先にあるもののアドレスを登録し、左目用Iピクチャの終端アドレスと右目用Iピクチャの終端アドレスのうち後にあるもののアドレスと先ほどの先頭アドレスとの距離をサイズとして登録する。この方法の場合、あるエントリーを読み取るときに左目用と右目用のピクチャは必ずペアになっている利点があるが、それぞれのIピクチャの距離が離れている場合、間に異なるピクチャの映像が含まれてしまい、余分な読み取りが発生する可能性がある。ただし、シークする時間よりも不要なデータを読み込んで捨てた方が時間効率がよい場合もあるため、こちらの方式の方が効果的な場合もある。
（字幕・グラフィクスの合成）
図９０は、字幕あるいはグラフィクスデータの利用について説明する図である。
【１０６０】
2D用の字幕データと、3D用の左目用字幕データ、右目用字幕データがそれぞれ異なる場合、2Dの字幕データの容量に対して、約３倍のグラフィクスデータ容量が必要となり、ディスクの容量を圧迫する。対策として、2D用の字幕を左目用と右目用に表示位置を変えて映像に対して視差を生じ、浮かせたり凹ませて見せる方法と、3D用に作り込んだ左目用映像と右目映像のうち、2D表示の場合は片側だけ表示する方法が考えられる。前者は2Dのグラフィクスデータサイズとほぼ同じ、後者は約２倍のデータ量ですむ。
【１０６１】
どちらの場合も、3D左目用字幕データと2D用字幕データは、グラフィクスとしては同じものであり、表示形式が2D表示の場合はオフセットなし、3D表示の場合はオフセットありで表示する。
【１０６２】
なお、オフセットデータは、字幕・グラフィクスデータに設定されていてもよいし、ナビゲーション情報から与えられてもよいし、映像データに埋め込まれており、各フレームごとあるいはGOP単位ごとに設定されていてもよい。
【１０６３】
（第１３実施形態）
本実施形態では、これまでの実施形態において説明された構造のデータを再生する再生装置に関して、集積回路８０３を用いて実現した構成例について説明する。
【１０６４】
図９３は、集積回路８０３を用いて構成された再生装置を示す図である。
【１０６５】
媒体IF部８０１は、媒体からデータを受信して（読み出して）、集積回路８０３に転送する。なお媒体IF部８０１は、前述の実施形態において説明した構造のデータを媒体から受信する。媒体IF部８０１は、例えば、媒体が光ディスクやハードディスクの場合はディスクドライブ、媒体がSDカードやUSBメモリ等の半導体メモリの場合はカードIF、媒体がCATV等を含む放送波の場合はCANチューナーやSiチューナー、媒体がイーサネット(登録商標)、無線LAN、無線公衆回線等のネットワークの場合は、ネットワークIF、等である。
【１０６６】
メモリ８０２は、媒体から受信した（読み出した）データを一旦格納したり、集積回路８０３における処理途中のデータを一時的に格納するメモリで、例えばSDRAM(Synchronous Dynamic Random Access Memory)、DDRx SDRAM(Double-Date-Ratex Synchronous Dynamic Random Access Memory;x=1,2,3・・・)等が用いられる。なおメモリ８０２は、任意の個数備えていればよく、必要に応じて単数でも複数でも構わない。
【１０６７】
集積回路８０３は、媒体IF部８０１から転送されたデータに対して映像・音声処理を施すシステムLSIで、ストリーム処理部８０５、主制御部８０６、信号処理部８０７、AV出力部８０８、メモリ制御部８０９等から構成される。
【１０６８】
主制御部８０６は、タイマ機能や割り込み機能を有するプロセッサコアを有し、プロセッサコアはプログラムメモリ等に格納されたプログラムに従って、集積回路８０３全体の制御を行う。なお、プログラムメモリ等には、予めOS等の基本ソフトが格納されている。
【１０６９】
ストリーム処理部８０５は、主制御部８０６の制御の下、媒体から媒体IF部８０１経由で転送されたデータを受信し、集積回路８０３内のデータバスを経由してメモリ８０２に格納したり、受信したデータを映像系データ（ビデオ／グラフィクス（PG,IG））、音声系データに分離する。前述したとおり媒体上のデータは、レフトビュービデオストリームを含む2D/L用のAVクリップとライトビュービデオストリームを含むR用のAVクリップが、幾つかのエクステントに分割された状態で交互に配置されたものである。従って、主制御部８０６は、集積回路８０３がレフトビューストリームを含む左目用データを受信した場合は、メモリ８０２の第１の領域にデータが格納されるように、ライトビュービデオストリームを含む右目用データを受信した場合は、メモリ８０２の第２の領域にデータが格納されるように制御する。ここで、左目用データは左目用エクステントに属しており、右目用データは右目用エクステントに属している。なお、メモリ８０２における第１、第２の領域は単一のメモリが論理的に領域分割されたものでもよいし、物理的に異なるメモリでもよい。また、本実施形態においては、レフトビュービデオストリームを含む左目用データをメインビューデータ、ライトビュービデオストリームを含む右目用データをサブビューデータとして説明を続けるが、右目用データがメインビューデータ、左目用データがサブビューデータであっても構わない。また、グラフィクスストリームは、メインビューデータ及びサブビューデータのいずれか一方、もしくは両方に多重化されている。
【１０７０】
信号処理部８０７は、主制御部８０６の制御の下、ストリーム処理部８０５が分離した映像系データ、音声系データに対し、適切な方式でデコードする。映像系データは、MPEG-2、MPEG-4 AVC、MPEG4-MVC、SMPTE VC-1などの方式を使って符号化記録されており、また音声系データは、ドルビーAC-3、Dolby Digital Plus、MLP、DTS、DTS-HD、リニアPCMなどの方式で圧縮・符号化記録されているので、信号処理部８０７はこれらに対応した方式でデコードする。なお、信号処理部８０７のモデルは、例えば第１実施形態の図１２における各種デコーダがそれに当たる。
【１０７１】
メモリ制御部８０９は、集積回路８０３内の各機能ブロックからメモリ８０２へのアクセスを調停する。
【１０７２】
AV出力部８０８は、主制御部８０６の制御の下、信号処理部８０７においてデコードされた映像系データを重畳したり、映像系データのフォーマット変換等をして集積回路８０３外へ出力する。
【１０７３】
図９４は、ストリーム処理部８０５の代表的な構成を示す機能ブロック図である。ストリーム処理部８０５は、デバイス・ストリームIF部８５１、多重分離部８５２、切替部８５３等を備える。
【１０７４】
デバイス・ストリームIF部８５１は、媒体IF部８０１と集積回路８０３間のデータ転送用インターフェースであり、例えば、媒体が光ディスクやハードディスクの場合はSATA(Serial Advanced Technology Attachment)、ATAPI(Advanced Technology Attachment Packet Interface)、PATA(Parallel Advanced Technology Attachment)、媒体がSDカードやUSBメモリ等の半導体メモリの場合はカードIF、媒体がCATV等を含む放送波などの場合はチューナーIF、媒体がイーサネット、無線LAN、無線公衆回線等のネットワークの場合は、ネットワークIF、等である。なお、媒体の種類によっては、デバイス・ストリームIF部８５１が媒体IF部８０１の機能の一部を肩代わりしても構わないし、媒体IF部８０１が集積回路８０３に内蔵されていても構わない。
【１０７５】
多重分離部８５２は、媒体から転送された映像・音声を含む再生データを映像系データと音声系データに分離する。前述の各エクステントは、映像・音声・PG（字幕）・IG（メニュー）等の各ソースパケットから構成されており（但し、サブビューデータは音声を含まない場合もある）、各ソースパケットに含まれているPID（識別子）に従って、映像系・音声系の各TSパケットに分離し、信号処理部８０７に転送する。処理済のデータは、直接もしくは一旦メモリ８０２に格納された後、信号処理部８０７に転送される。なお、多重分離部８５２のモデルは、例えば、第１実施形態の多重分離部を構成するソースデパケタイザ、PIDフィルタがそれに当たる。
【１０７６】
切替部８５３は、デバイス・ストリームIF部８５１が左目用データを受信した時はメモリ８０２の第１の領域に格納されるように、右目用データを受信した時はメモリ８０２の第２の領域に格納されるように、出力先（格納先）を切り替える。ここで、切替部８５３は例えばDMAC(Direct Memory Access Controller)である。図９５は切替部８５３がDMACであった場合の切替部８５３周辺の概念図である。DMACは、主制御部８０６の制御の下、デバイス・ストリームIF部が受信したデータとそのデータ格納先アドレスをメモリ制御部８０９に対して送信する。具体的には、デバイス・ストリームIF部が左目用データを受信した時はアドレス１（第１の格納領域）を、右目用データを受信した時はアドレス２（第２の格納領域）をメモリ制御部８０９に送信することで、受信データによってその出力先（格納先）を切り替えている。メモリ制御部８０９は、DMACから送られてきた格納先アドレスに従ってメモリ８０２にデータを格納する。なお、主制御部８０６の代わりに切替部８５３を制御する専用の回路を設けても構わない。
【１０７７】
ここでは、ストリーム処理部８０５の代表的な構成として、デバイス・ストリームIF部８５１、多重分離部８５２、切替部８５３について説明したが、受信した暗号化データや鍵データ等を復号する暗号エンジン部、媒体〜再生装置間の機器認証プロトコル等の実行制御や秘密鍵を保持するセキュア管理部、ダイレクトメモリアクセス用のコントローラ等を更に備えていてもよい。これまでは媒体から受信したデータをメモリ８０２に格納する際に、切替部８５３が左目用データ・右目用データかによって格納先を切り替える場合について説明してきたが、媒体から受信したデータを一旦メモリ８０２に格納した後に、多重分離部８５２へデータを転送する際に、左目用データ・右目用データを振り分けてもよい。
【１０７８】
図９６は、AV出力部８０８の代表的な構成を示す機能ブロック図である。AV出力部８０８は、画像重畳部８８１と、ビデオ出力フォーマット変換部８８２、オーディオ・ビデオ出力IF部８８３等を備える。
【１０７９】
画像重畳部８８１は、デコードされた映像系のデータを重畳する。具体的には、レフトビュービデオデータもしくはライトビュービデオデータと、PG（字幕）、IG（メニュー）をピクチャ単位で重畳する。画像重畳部８０１のモデルは、例えば図１６などである。前述のとおり、グラフィクスストリームの再生タイプには、平面視グラフィクスストリームを用いた第１の再生方法と、左目用のグラフィクスストリームと右目用のグラフィクスストリームのペアを用いた立体視再生を行う第２の再生方法があり、どちらの再生方法を選択するかは、媒体中に存在するデータとそれを再生する再生装置の再生能力との組み合わせによって決まる。具体的には、媒体は、グラフィクスストリームに、左目用グラフィクスストリームと右目用グラフィクスストリームのペアが存在するか否かを示す識別フラグを有している。また再生装置は、メモリ８０２中に左目用グラフィクスストリームと右目用グラフィクスストリームのペアを用いた立体視再生を行う能力があるか否かを示す情報を有しており、識別フラグが左目用グラフィクスストリームと右目用グラフィクスストリームのペアが存在することを示し、且つ再生装置が左目用グラフィクスストリームと右目用グラフィクスストリームのペアを用いた立体視再生を行う能力がある場合に、第２の再生方法が選択され、それ以外は第１の再生方法が選択される。第２の再生方法が選択された時は、レフトビュービデオデータと対応する左目用グラフィクスデータが重畳され、ライトビュービデオデータと対応する右目用グラフィクスデータが重畳される。また、第１の再生方法が選択された時は、平面視グラフィクスデータには水平座標の＋方向もしくは−方向のオフセットが与えられ、レフトビュービデオデータは、＋方向にオフセットが与えられた対応する平面視グラフィクスデータと重畳され、ライトビュービデオデータは、−方向にオフセットが与えられた対応する平面視グラフィクスデータが重畳される。なお、オフセット制御のための情報は、サブビューストリームに含まれている。
【１０８０】
ビデオ出力フォーマット変換部８８２は、デコードされた映像系データに対して、拡大または縮小するリサイズ処理、走査方式をプログレッシブ方式及びインターレース方式の一方から他方に変換するＩＰ変換処理、ノイズを除去するノイズリダクション処理、フレームレートを変換するフレームレート変換処理などを必要に応じて行う。
【１０８１】
オーディオ・ビデオ出力IF部８８３は、画像重畳やフォーマット変換された映像系データとデコードされた音声系データとに対して、データ送信形式に合わせてエンコード等を行う。なお、後述するようにオーディオ・ビデオ出力IF部８８３は、一部集積回路８０３外に備えられても構わない。
【１０８２】
図９７は、AV出力部８０８もしくは再生装置のデータ出力部分を、より詳細に示した構成例である。本実施の形態における集積回路８０３及び再生装置は、複数の映像系データ、音声系データのデータ送信形式に対応している。図９６におけるオーディオ・ビデオ出力IF部８８３は、アナログビデオ出力IF部８８３a、アナログオーディオ出力IF部８８３c、デジタルオーディオ・出力IF部８８３bに対応する。
【１０８３】
アナログビデオ出力IF部８８３aは、画像重畳処理や出力フォーマット変換処理された映像系データを、アナログ映像信号形式に変換・エンコードし、出力する。例えば、NTSC、PAL、SECAMの３方式のいずれかに対応したコンポジットビデオエンコーダー、Ｓ映像信号（Y/C分離）用エンコーダー、コンポーネント映像信号用エンコーダーや、DAC（D/Aコンバータ）等がそれに当たる。
【１０８４】
デジタルオーディオ・ビデオ出力IF部８８３bは、デコードされた音声系データと画像重畳処理や出力フォーマット変換された映像系データを一体化、更に暗号化した後、データ送信規格に合わせてエンコードし、出力する。例えば、HDMI(High−Definition Multimedia InterFace)等がそれに当たる。
【１０８５】
アナログオーディオ出力IF部８８３cは、デコードされた音声系データをD/A変換しアナログ音声データを出力するオーディオDAC等がそれに当たる。
【１０８６】
これら映像系データ及び音声系データの送信形式は、表示装置・スピーカー側がサポートしているデータ受信装置（データ入力端子）に依存して切り替えたり、またユーザーの選択によって送信形式を切り替えることが可能である。更に、単一の送信形式だけではなく、並行して複数の送信形式にて同一のコンテンツに対応したデータを送信することも可能である。
【１０８７】
ここでは、AV出力部８０８の代表的な構成として、画像重畳部８８１、ビデオ出力フォーマット変換部８８２、オーディオ・ビデオ出力IF部８８３について説明したが、フィルタ処理、画面合成、曲線描画、３Ｄ表示等のグラフィックス処理を行うグラフッィクスエンジン部等を更に備えていてもよい。
【１０８８】
以上が、本実施の形態における再生装置の構成についての説明である。なお、前述の集積回路８０３に含まれる各機能ブロックは全てが内蔵されていなくても良いし、逆に図９３のメモリ８０２が集積回路８０３に内蔵されていてもよい。また、本実施形態においては、主制御部８０６と信号処理部８０７は異なる機能ブロックとして説明してきたが、主制御部８０６が信号処理部８０７の処理の一部を行っても構わない。
【１０８９】
また、例えば図１００のように、本実施の形態における再生装置の処理を表示装置において行っても構わない。その際、媒体IF部８０１が受信したデータは集積回路８０３によって信号処理され、処理された映像系データは表示駆動部８０１０を経由して表示パネル８１１を通して出力され、処理された音声系データは、スピーカー８１２を通して出力される。ここで、AV出力部８０８は例えば図１０１のように構成され、集積回路８０３内部もしくは外部のビデオ出力IF部８８４及びオーディオ出力IF部８８５を通してデータ転送が行われる。なお、ビデオ出力IF部８８４及びオーディオ出力IF部８８５をそれぞれ複数備えていてもよいし、ビデオとオーディオ共通のIF部を備えていてもよい。
【１０９０】
また、集積回路８０３における制御バスやデータバスの経路は、各処理ブロックの処理手順や処理内容によって任意に配置されるが、例えば図９８のように、各処理ブロックどうしを直接結ぶようにデータバスを配置してもよいし、図９９のように各処理ブロックどうしをメモリ８０２（メモリ制御部８０９）を介して結ぶようにデータバスを配置してもよい。
【１０９１】
また、集積回路８０３は、複数のチップを一つのパッケージに封止し、見かけ上一つのLSIにしたマルチチップ・モジュールであっても構わない。
【１０９２】
また、LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【１０９３】
次に、以上のように構成された再生装置の動作について説明する。
【１０９４】
図１０２は、媒体からデータを受信し（読み出し）、デコードした後に、映像信号及び音声信号として出力する再生動作手順を簡単に示すフローチャートである。
【１０９５】
Ｓ８０１：媒体からデータを受信する（読み出す）（媒体IF部８０１、ストリーム処理部８０５）。
【１０９６】
Ｓ８０２：Ｓ８０１において受信された（読み出された）データを各種データ（映像系データ・音声系データ）に分離する（ストリーム処理部８０５）。
【１０９７】
Ｓ８０３：Ｓ８０２において分離された各種データを適切な形式でデコードする（信号処理部８０７）。
【１０９８】
Ｓ８０４：Ｓ８０３においてデコード処理された各種データのうち、映像系のものについて重畳処理を行う（AV出力部８０８）。
【１０９９】
Ｓ８０５：Ｓ８０２〜Ｓ８０４において処理された映像系データ及び音声系データを出力する（AV出力部８０８）。
【１１００】
図１０３は、より詳細に再生動作手順を示したフローチャートである。各動作・処理は、主制御部８０６の制御の下、行われる。
【１１０１】
Ｓ９０１：ストリーム処理部８０５のデバイス・ストリームIF部８５１は、媒体IF部８０１を通して媒体に格納されている再生されるデータ以外の、データを再生するために必要なデータ（PLAYLIST、CLIPINF等）を受信し（読み出し）、メモリ８０２に格納する（媒体IF部８０１、デバイスIF部８５１、メモリ制御部８０９、メモリ８０２）。
【１１０２】
Ｓ９０２：主制御部８０６は、受信されたCLIPINFに含まれるストリーム属性情報から、媒体に格納されている映像データ及び音声データの圧縮形式を認識し、対応するデコード処理ができるように信号処理部８０７の初期化を行う（主制御部８０６）。
【１１０３】
Ｓ９０３：ストリーム処理部８０５のデバイス・ストリームIF部８５１は、媒体IF部８０１を通して媒体に格納されている映像・音声など再生されるデータを受信し（読み出し）、切替部８５３、メモリ制御部８０９を経由してメモリ８０２に格納する。なお、データはエクステント単位で受信し（読み出され）、左目用データを受信した（読み出した）時は第１の領域へ、右目用データを受信した（読み出した）時は第２の領域へ格納されるよう、主制御部８０６が切替部８５３を制御し、切替部８５３がデータの出力先（格納先）を切り替える（媒体IF部８０１、デバイスIF部８５１、主制御部８０６、切替部８５３、メモリ制御部８０９、メモリ８０２）。
【１１０４】
Ｓ９０４：メモリ８０２に格納されたデータは、ストリーム処理部８０５の多重分離部８５２に転送され、多重分離部８５２はストリームデータを構成するソースパケットに含まれるPIDに従って映像系（主映像、副映像、PG（字幕）、IG（メニュー））、音声系（音声、副音声）のいずれであるか認識し、TSパケット単位で信号処理部８０７の対応する各デコーダへ転送する。（多重分離部８５２）。
【１１０５】
Ｓ９０５：信号処理部８０７の各デコーダは、転送されてきたTSパケットに対して、適切な方式でデコード処理を行う（信号処理部８０７）。
【１１０６】
Ｓ９０６：信号処理部８０７においてデコードされた映像系データのうち、レフトビュービデオストリーム及びライトビュービデオストリームに対応するデータを、表示装置４に合わせてリサイズする（ビデオ出力フォーマット変換部８８２）。
【１１０７】
Ｓ９０７：Ｓ９０６においてリサイズされたビデオストリームと、PG（字幕）・IG（メニュー）とが重畳される（画像重畳部８８１）。
【１１０８】
Ｓ９０８：Ｓ９０７において重畳された映像データに対して、走査方式の変換であるＩＰ変換を行う（ビデオ出力フォーマット変換部８８２）。
Ｓ９０９：これまでの処理を行った映像系データ及び音声系データに対して、表示装置・スピーカー４のデータ出力方式、もしくは表示装置・スピーカー４へのデータ送信方式に従って、エンコードやD/A変換等を行う。例えば、映像系データ・音声系データをそれぞれ、アナログまたはデジタル出力に対応するために処理を行う。映像系データのアナログ出力としては、コンポジット映像信号やS映像信号やコンポーネント映像信号等をサポートしている。また映像系・音声系データのデジタル出力は、HDMIをサポートしている（オーディオ・ビデオ出力IF部８８３）。
【１１０９】
Ｓ９１０：Ｓ９０９において処理された映像系データ及び音声系データを、表示装置・スピーカー４に送信、出力する（オーディオ・ビデオ出力IF部８８３、表示装置・スピーカー４）。
【１１１０】
以上が、本実施の形態における再生装置の動作手順の説明である。なお、処理ごとに処理結果をメモリ８０２に一旦格納しても構わない。また、図１００の表示装置で再生処理を行った場合も基本的に同様の動作手順であり、図９３の再生装置の各機能ブロックに対応する機能ブロックが同様の処理を行う。また、本動作手順では、ビデオ出力フォーマット変換部８８２においてリサイズ処理及びIP変換処理を行う場合について説明したが、必要に応じて処理を省略しても構わないし、また他の処理（ノイズリダクション処理、フレームレート変換処理等）を行っても構わない。更に、可能なものについては処理手順を変更しても構わない。
【１１１１】
(備考)
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。
【１１１２】
（光ディスクの再生）
BD-ROMドライブは、半導体レーザ、コリメートレンズ、ビームスプリッタ、対物レンズ、集光レンズ、光検出器を有する光学ヘッドを備える。半導体レーザから出射された光ビームは、コリメートレンズ、ビームスプリッタ、対物レンズを通って、光ディスクの情報面に集光される。
【１１１３】
集光された光ビームは、光ディスク上で反射/回折され、対物レンズ、ビームスプリッタ、集光レンズを通って、光検出器に集光される。光検出器にて集光された光の光量に応じて、再生信号を生成する。
【１１１４】
(記録媒体のバリエーション)
各実施の形態における記録媒体は、光ディスク、半導体メモリーカード等、パッケージメディア全般を含んでいる。本実施の形態の記録媒体は予め必要なデータが記録された光ディスク（例えばBD-ROM、DVD-ROMなどの既存の読み取り可能な光ディスク）を例に説明をするが、これに限定される必要はなく、例えば、放送またはネットワークを経由して配信された本発明の実施に必要なデータを含んだ3Dコンテンツを光ディスクへ書き込む機能を有する端末装置（例えば左記の機能は再生装置に組み込まれていても良いし、再生装置とは別の装置であってもよい）を利用して書き込み可能な光ディスク（例えばBD-RE、DVD-RAMなどの既存の書き込み可能な光ディスク）に記録し、この記録した光ディスクを本発明の再生装置に適用しても本発明の実施は可能である。
【１１１５】
（半導体メモリカード記録装置及び再生装置の実施形態）
各実施の形態で説明をしたデータ構造を半導体メモリーに記録する記録装置、及び、再生する再生装置の実施形態について説明する。
【１１１６】
まず、前提となる技術として、BD-ROMに記録されているデータの著作権保護の仕組みについて説明する。
【１１１７】
BD-ROMに記録されたデータのうち、例えば著作権の保護、データの秘匿性の向上の観点からデータの一部が、必要に応じて暗号化されている場合がある。
【１１１８】
例えば、BD-ROMに記録されたデータのうち、暗号化されているデータは、例えばビデオストリームに対応するデータ、オーディオストリームに対応するデータ、またはこれらを含むストリームに対応するデータであったりする。
【１１１９】
以後、BD-ROMに記録されたデータのうち、暗号化されているデータの解読について説明をする。
【１１２０】
半導体メモリカード再生装置においては、BD-ROM内の暗号化されたデータを解読するために必要な鍵に対応するデータ（例えばデバイスキー）が予め再生装置に記憶されている。
【１１２１】
一方、BD-ROMには暗号化されたデータを解読するために必要な鍵に対応するデータ（例えば上述のデバイスキーに対応するMKB（メディアキーブロック））と、暗号化されたデータを解読するための鍵自体を暗号化したデータ（例えば上述のデバイスキー及びMKBに対応する暗号化タイトルキー）が記録されている。ここで、デバイスキー、MKB、及び暗号化タイトルキーは対になっており、さらにBD-ROM上の通常コピーできない領域（BCAと呼ばれる領域）に書き込まれた識別子（例えばボリュームID）とも対応付けがされている。この組み合わせが正しくなければ、暗号の解読ができないものとする。組み合わせが正しい場合のみ、暗号解読に必要な鍵（例えば上述のデバイスキー、MKB及びボリュームIDを元に、暗号化タイトルキーを復号して得られるタイトルキー）を導き出すことができ、この暗号解読に必要な鍵を用いて、暗号化されたデータの解読が可能となる。
【１１２２】
装填されたBD-ROMを再生装置において再生する場合、例えばBD-ROM内の暗号化タイトルキー、MKBと対になっている（または対応する）デバイスキーが再生装置内になければ、暗号化されたデータは再生がなされない。何故ならば、暗号化されたデータの解読に必要な鍵（タイトルキー）は、鍵自体が暗号化されて（暗号化タイトルキー）BD-ROM上に記録されており、MKBとデバイスキーの組み合わせが正しくなければ、暗号の解読に必要な鍵を導き出すことができないからである。
【１１２３】
逆に暗号化タイトルキー、MKB、デバイスキー及びボリュームIDの組み合わせが正しければ、例えば上述の暗号解読に必要な鍵（デバイスキー、MKB及びボリュームIDを元に、暗号化タイトルキーを復号して得られるタイトルキー）を用いてビデオストリームがデコーダにてデコードされ、オーディオストリームがオーディオデコーダにてデコードされるように再生装置は構成されている。
【１１２４】
以上が、BD-ROMに記録されているデータの著作権保護の仕組みであるが、この仕組みは、BD-ROMに必ずしも限定されるのではなく、例えば、読込み/書込み可能な半導体メモリー（例えばSDカードなどの可搬性を有する半導体メモリーカード）に適用した場合においても、実施が可能である。
【１１２５】
半導体メモリーカード再生装置の再生手順について説明する。光ディスクでは例えば、光ディスクドライブを介してデータを読み出すように構成していたのに対し、半導体メモリーカードを用いた場合には、半導体メモリーカード内のデータを読み出すためのI/Fを介してデータを読み出すように構成すればよい。
【１１２６】
より詳細には、再生装置のスロットに半導体メモリーカードが挿入されると、半導体メモリーカードI/Fを経由して再生装置と半導体メモリーカードが電気的に接続される。半導体メモリーカードに記録されたデータは半導体メモリーカードI/Fを介して読み出すように構成すれば良い。
【１１２７】
(受信装置としての実施形態)
各実施形態で説明した再生装置は、本実施の形態で説明をしたデータに相応するデータ（配信データ）を電子配信サービスの配信サーバから受信し、半導体メモリカードに記録する端末装置としても実現することができる。
【１１２８】
かかる端末装置は、各実施形態で説明した再生装置がそのような動作を行なえるように構成をされていても良いし、本実施の形態の再生装置とは別に半導体メモリーに配信データを記憶することを行う専用の端末装置にて行なうような形態であっても良い。ここでは再生装置が行なう例について説明をする。また記録先の半導体メモリーとしてSDカードを例に説明をする。
【１１２９】
再生装置が備えるスロットに挿入されたSDメモリーカードに配信データを記録する場合、まず配信データを蓄積する配信サーバへ配信データの送信を要求する。このとき再生装置は挿入したSDメモリーカードを一意に識別するための識別情報（例えば個々のSDメモリーカード固有の識別番号、より具体的には、例えばSDメモリーカードのシリアル番号等）をSDメモリーカードから読み出して、読み出した識別情報を配信要求とともに、配信サーバへ送信する。
【１１３０】
この、SDメモリーカードを一意に識別するための識別情報は例えば上述のボリュームIDに相当する。
【１１３１】
一方、配信サーバでは、配信するデータのうち必要なデータ（例えばビデオストリーム、オーディオストリーム等）が暗号解読に必要な鍵（例えばタイトルキー）を用いて暗号の解除ができるように暗号化がなされてサーバ上に格納されている。
【１１３２】
例えば配信サーバは、秘密鍵を保持しており、半導体メモリーカードの固有の識別番号のそれぞれに対して異なる公開鍵情報が動的に生成できるように構成されている。
【１１３３】
また、配信サーバは、暗号化されたデータの解読に必要な鍵（タイトルキー）自身に対して暗号化ができるように構成されている（つまり暗号化タイトルキーを生成できるように構成されている）。
【１１３４】
生成される公開鍵情報は例えば上述のMKB、ボリュームID及び暗号化タイトルキーに相当する情報を含む。暗号化されたデータは例えば半導体メモリー固有の識別番号、後述する公開鍵情報に含まれる公開鍵本体、および再生装置に予め記録されたデバイスキーの組み合わせが正しければ、暗号解読に必要な鍵（例えばデバイスキー、MKB及び半導体メモリー固有の識別番号を元に、暗号化タイトルキーを復号して得られるタイトルキー）が得られ、この得られた暗号解読に必要な鍵（タイトルキー）を用いて、暗号化されたデータの解読ができるものである。
【１１３５】
次に、再生装置は、受信した公開鍵情報と配信データをスロットに挿入した半導体メモリーカードの記録領域に記録する。
【１１３６】
次に、半導体メモリーカードの記録領域に記録した公開鍵情報と配信データに含まれるデータのうち暗号化したデータを復号して再生する方法の一例について説明をする。
【１１３７】
受信した公開鍵情報は例えば公開鍵本体（例えば上述のMKB及び暗号化タイトルキー）、署名情報、半導体メモリーカードの固有の識別番号、および無効にすべきデバイスに関する情報を示すデバイスリストが記録されている。
【１１３８】
署名情報には例えば、公開鍵情報のハッシュ値を含む。
【１１３９】
デバイスリストには例えば、不正に再生がなされる可能性があるデバイスに関する情報が記載されている。これは例えば再生装置に予め記録されたデバイスキー、再生装置の識別番号、または再生装置が備えるデコーダの識別番号といったように、不正に再生される可能性がある装置、装置に含まれる部品、または機能（プログラム）といったものを一意に特定するための情報である。
【１１４０】
半導体メモリーカードの記録領域に記録した配信データのうち、暗号化されたデータの再生に関し、説明をする。
【１１４１】
まず、公開鍵本体を利用して暗号化したデータを復号する前に復号鍵本体を機能させてよいかどうかに関するチェックを行う。
【１１４２】
具体的には、（１） 公開鍵情報に含まれる半導体メモリー固有の識別情報と半導体メモリーカードに予め記憶されている固有の識別番号とが一致するかどうかのチェック（２） 再生装置内で算出した公開鍵情報のハッシュ値と署名情報に含まれるハッシュ値が一致するかのチェック（３） 公開鍵情報に含まれるデバイスリストに示される情報に基づいて、再生を行う再生装置が不正な再生が可能かどうかのチェック（例えば公開鍵情報に含まれるデバイスリストに示されるデバイスキーと、再生装置に予め記憶されたデバイスキーが一致するかどうかのチェック）
を行なう。これらのチェックを行なう順番は、どのような順序で行なってもよい。
【１１４３】
上述の（１）〜（３）のチェックにおいて、公開鍵情報に含まれる半導体メモリー固有の識別情報と半導体メモリーに予め記憶されている固有の識別番号とが一致しない、再生装置内で算出した公開鍵情報のハッシュ値と署名情報に含まれるハッシュ値が一致しない、または、再生を行う再生装置が不正に再生される可能性があると判断した、のいずれかを満足すれば、再生装置は、暗号化されたデータの解読がなされないように制御する。
【１１４４】
また、公開鍵情報に含まれる半導体メモリーカードの固有の識別情報と半導体メモリーカードに予め記憶されている固有の識別番号とが一致し、かつ再生装置内で算出した公開鍵情報のハッシュ値と署名情報に含まれるハッシュ値が一致し、かつ再生を行う再生装置が不正に再生される可能性がないと判断したのであれば、半導体メモリー固有の識別番号、公開鍵情報に含まれる公開鍵本体、および再生装置に予め記録されたデバイスキーの組み合わせが正しいと判断し、暗号解読に必要な鍵（デバイスキー、MKB及び半導体メモリー固有の識別番号を元に、暗号化タイトルキーを復号して得られるタイトルキー）を用いて、暗号化されたデータの解読を行なう。
【１１４５】
例えば暗号化されたデータがビデオストリーム、オーディオストリームである場合、ビデオデコーダは上述の暗号解読に必要な鍵（暗号化タイトルキーを復号して得られるタイトルキー）を利用してビデオストリームを復号し（デコードし）、オーディオデコーダは、上述の暗号解読に必要な鍵を利用してオーディオストリームを復号する（デコードする）。
【１１４６】
このように構成をすることにより、電子配信時において不正利用される可能性がある再生装置、部品、機能（プログラム）などが分っている場合、これらを識別するための情報をデバイスリストに示して、配信するようにすれば、再生装置側がデバイスリストに示されているものを含むような場合には公開鍵情報（公開鍵本体）を用いた復号を抑止できるようにできるため、半導体メモリー固有の識別番号、公開鍵情報に含まれる公開鍵本体、および再生装置に予め記録されたデバイスキーの組み合わせが、たとえ正しくても、暗号化されたデータの解読がなされないように制御できるため、不正な装置上での配信データの利用を抑止することが可能となる。
【１１４７】
また半導体メモリーカードに予め記録されている半導体メモリーカードの固有の識別子は秘匿性の高い記録領域に格納するような構成を採用するのが望ましい。何故ならば、半導体メモリーカードに予め記録されている固有の識別番号（例えばSDメモリーカードを例にすればSDメモリーカードのシリアル番号等）は改竄がなされると、違法コピーが容易になされてしまう。何故ならば複数の半導体メモリーカードには、それぞれ異なる固有の識別番号が割り当てられているが、この固有の識別番号が同一となるように改竄がなされてしまえば、上述の（１）の判定が意味を成さなくなり、改竄がなされた数に相当する違法コピーがなされてしまう可能性があるからである。
【１１４８】
従って、半導体メモリーカードの固有の識別番号といった情報は秘匿性が高い記録領域に記録するような構成を採用するのが望ましい。
【１１４９】
このような構成を実現するために、例えば半導体メモリーカードは、半導体メモリーカードの固有の識別子と言った秘匿性の高いデータを記録するための記録領域を通常のデータを格納する記録領域（第１の記録領域と称す）とは別の記録領域（第２の記録領域と称す）に設けること、およびこの第２の記録領域へのアクセスをするための制御回路を設けるとともに、第２の記録領域へのアクセスには制御回路を介してのみアクセスできるような構成とする。
【１１５０】
例えば、第２の記録領域に記録されているデータは暗号化がなされて、記録されており、制御回路は、例えば暗号化されたデータを復号するための回路が組み込まれている。制御回路へ第２の記録領域へのデータのアクセスが合った場合には、暗号を復号し、復号したデータを返すように構成すれば良い。または、制御回路は第２の記録領域に記録されているデータの格納場所の情報を保持しており、データのアクセスの要求があれば、対応するデータの格納場所を特定し、特定した格納場所から読み取ったデータを返すような構成としても良い。
【１１５１】
再生装置上で動作するアプリケーションで、電子配信を利用して半導体メモリーカードに記録する要求するアプリケーションは、メモリーカードI/Fを介して制御回路へ第２の記録領域に記録されたデータ（例えば半導体メモリ固有の識別番号）へのアクセス要求を発行すると、要求を受けた制御回路は第２の記録領域に記録されたデータを読み出して再生装置上で動作するアプリケーションへ返す。この半導体メモリーカードの固有の識別番号とともに必要なデータの配信要求を配信サーバに要求し、配信サーバから送られる公開鍵情報、および対応する配信データを第１の記録領域に記録するように構成すればよい。          
【１１５２】
また、再生装置上で動作するアプリケーションで、電子配信を利用して半導体メモリーカードに記録を要求するアプリケーションは、メモリーカードI/Fを介して制御回路へ第２の記録領域に記録されたデータ（例えば半導体メモリ固有の識別番号）へのアクセス要求を発行する前に、アプリケーションの改竄がされていないかを事前にチェックすることが望ましい。改竄のチェックには例えば既存のX.５０９仕様に準拠したデジタル証明書を利用したチェックなどを利用しても良い。
【１１５３】
また、半導体メモリーカードの第１の記録領域に記録された配信データへのアクセスは半導体メモリーカードが有する制御回路を介してアクセスする必要は必ずしもない。
【産業上の利用可能性】
【１１５４】
本発明に係る情報記録媒体は3D映像を格納しているが、2D映像を再生する装置と、3D映像を再生する装置のどちらでも再生できるため、互換性を意識することなく3D映像を格納した映画タイトルなどの動画コンテンツを市場に供給することができ、映画市場や民生機器市場を活性化させることができる。故に本発明に係る記録媒体、再生装置は、映画産業や民生機器産業において高い利用可能性をもつ
【符号の説明】
【１１５５】
１００  記録媒体
２００  再生装置
３００  表示装置
４００  3D眼鏡
【図１】
0005497679.tif 000002
【図２】
0005497679.tif 000003
【図３】
0005497679.tif 000004
【図４】
0005497679.tif 000005
【図５】
0005497679.tif 000006
【図６】
0005497679.tif 000007
【図７】
0005497679.tif 000008
【図８】
0005497679.tif 000009
【図９】
0005497679.tif 000010
【図１０】
0005497679.tif 000011
【図１１】
0005497679.tif 000012
【図１２】
0005497679.tif 000013
【図１３】
0005497679.tif 000014
【図１４】
0005497679.tif 000015
【図１５】
0005497679.tif 000016
【図１６】
0005497679.tif 000017
【図１７】
0005497679.tif 000018
【図１８】
0005497679.tif 000019
【図１９】
0005497679.tif 000020
【図２０】
0005497679.tif 000021
【図２１】
0005497679.tif 000022
【図２２】
0005497679.tif 000023
【図２３】
0005497679.tif 000024
【図２４】
0005497679.tif 000025
【図２５】
0005497679.tif 000026
【図２６】
0005497679.tif 000027
【図２７】
0005497679.tif 000028
【図２８】
0005497679.tif 000029
【図２９】
0005497679.tif 000030
【図３０】
0005497679.tif 000031
【図３１】
0005497679.tif 000032
【図３２】
0005497679.tif 000033
【図３３】
0005497679.tif 000034
【図３４】
0005497679.tif 000035
【図３５】
0005497679.tif 000036
【図３６】
0005497679.tif 000037
【図３７】
0005497679.tif 000038
【図３８】
0005497679.tif 000039
【図３９】
0005497679.tif 000040
【図４０】
0005497679.tif 000041
【図４１】
0005497679.tif 000042
【図４２】
0005497679.tif 000043
【図４３】
0005497679.tif 000044
【図４４】
0005497679.tif 000045
【図４５】
0005497679.tif 000046
【図４６】
0005497679.tif 000047
【図４７】
0005497679.tif 000048
【図４８】
0005497679.tif 000049
【図４９】
0005497679.tif 000050
【図５０】
0005497679.tif 000051
【図５１】
0005497679.tif 000052
【図５２】
0005497679.tif 000053
【図５３】
0005497679.tif 000054
【図５４】
0005497679.tif 000055
【図５５】
0005497679.tif 000056
【図５６】
0005497679.tif 000057
【図５７】
0005497679.tif 000058
【図５８】
0005497679.tif 000059
【図５９】
0005497679.tif 000060
【図６０】
0005497679.tif 000061
【図６１】
0005497679.tif 000062
【図６２】
0005497679.tif 000063
【図６３】
0005497679.tif 000064
【図６４】
0005497679.tif 000065
【図６５】
0005497679.tif 000066
【図６６】
0005497679.tif 000067
【図６７】
0005497679.tif 000068
【図６８】
0005497679.tif 000069
【図６９】
0005497679.tif 000070
【図７０】
0005497679.tif 000071
【図７１】
0005497679.tif 000072
【図７２】
0005497679.tif 000073
【図７３】
0005497679.tif 000074
【図７４】
0005497679.tif 000075
【図７５】
0005497679.tif 000076
【図７６】
0005497679.tif 000077
【図７７】
0005497679.tif 000078
【図７８】
0005497679.tif 000079
【図７９】
0005497679.tif 000080
【図８０】
0005497679.tif 000081
【図８１】
0005497679.tif 000082
【図８２】
0005497679.tif 000083
【図８３】
0005497679.tif 000084
【図８４】
0005497679.tif 000085
【図８５】
0005497679.tif 000086
【図８６】
0005497679.tif 000087
【図８７】
0005497679.tif 000088
【図８８】
0005497679.tif 000089
【図８９】
0005497679.tif 000090
【図９０】
0005497679.tif 000091
【図９１】
0005497679.tif 000092
【図９２】
0005497679.tif 000093
【図９３】
0005497679.tif 000094
【図９４】
0005497679.tif 000095
【図９５】
0005497679.tif 000096
【図９６】
0005497679.tif 000097
【図９７】
0005497679.tif 000098
【図９８】
0005497679.tif 000099
【図９９】
0005497679.tif 000100
【図１００】
0005497679.tif 000101
【図１０１】
0005497679.tif 000102
【図１０２】
0005497679.tif 000103
【図１０３】
0005497679.tif 000104