(57)【要約】【課題】3Dの画像表示において、グラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画する。【解決手段】左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であるグラフィクスプレーンに対する、グラフィックスの画像の描画完全性を保証するAPI(Application Programming Interface)の呼び出しがあった場合に、グラフィクスプレーンに描画された画像を、表示のために出力する。本発明は、BDを再生するBDプレーヤ等に適用できる。【選択図】図３５
2010259052.tif 000002
【特許請求の範囲】
【請求項１】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対するグラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画するための描画コマンド列を引数とすることで、前記グラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画する描画完全性を保証するAPI(Application Programming Interface)の呼び出しがあった場合に、前記描画コマンド列を実行することにより、前記グラフィクスプレーンへのグラフィックスの画像の描画を行い、その描画の完了後に、前記グラフィックスプレーンに描画された画像を、表示のために出力する
情報処理装置。
【請求項２】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対するグラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画するための描画コマンド列を引数とすることで、前記グラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画する描画完全性を保証するAPI(Application Programming Interface)の呼び出しがあった場合に、前記描画コマンド列を実行することにより、前記グラフィクスプレーンへのグラフィックスの画像の描画を行い、その描画の完了後に、前記グラフィックスプレーンに描画された画像を、表示のために出力する
情報処理方法。
【請求項３】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対するグラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画するための描画コマンド列を引数とすることで、前記グラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画する描画完全性を保証するAPI(Application Programming Interface)の呼び出しがあった場合に、前記描画コマンド列を実行することにより、前記グラフィクスプレーンへのグラフィックスの画像の描画を行い、その描画の完了後に、前記グラフィックスプレーンに描画された画像を、表示のために出力する
情報処理装置として、コンピュータを機能させるためのプログラム。
【請求項４】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知API(Application Programming Interface)の呼び出しがあった場合に、前記グラフィクスプレーンに描画された画像を、表示のために出力する
情報処理装置。
【請求項５】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知API(Application Programming Interface)の呼び出しがあった場合に、前記グラフィクスプレーンに描画された画像を、表示のために出力する
情報処理方法。
【請求項６】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知API(Application Programming Interface)の呼び出しがあった場合に、前記グラフィクスプレーンに描画された画像を、表示のために出力する
情報処理装置として、コンピュータを機能させるためのプログラム。
【請求項７】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対する画像の描画を開始することを通知する描画開始通知API(Application Programming Interface)の呼び出しがあった後、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知APIの呼び出しがあった場合に、前記描画開始通知APIの呼び出し後、前記描画完了通知APIの呼び出しまでに前記グラフィックスプレーンに描画されたすべての画像を、表示のために出力する
情報処理装置。
【請求項８】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対する画像の描画を開始することを通知する描画開始通知API(Application Programming Interface)の呼び出しがあった後、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知APIの呼び出しがあった場合に、前記描画開始通知APIの呼び出し後、前記描画完了通知APIの呼び出しまでに前記グラフィックスプレーンに描画されたすべての画像を、表示のために出力する
情報処理方法。
【請求項９】
グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、
前記グラフィクスプレーンに対する画像の描画を開始することを通知する描画開始通知API(Application Programming Interface)の呼び出しがあった後、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知APIの呼び出しがあった場合に、前記描画開始通知APIの呼び出し後、前記描画完了通知APIの呼び出しまでに前記グラフィックスプレーンに描画されたすべての画像を、表示のために出力する
情報処理装置として、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び、プログラムに関し、特に、例えば、記録媒体から、3D(Dimension)画像のコンテンツを適切に再生することができるようにする情報処理装置、情報処理方法、及び、プログラムに関する。
【背景技術】
【０００２】
例えば、映画等のコンテンツとしては、２次元(2D)画像のコンテンツが主流であるが、最近では、立体視が可能な３次元(3D)画像（グラフィック）のコンテンツが注目を集めている。
【０００３】
3D画像（以下、ステレオ画像ともいう）の表示の方式としては、種々の方式があるが、いずれの方式を採用する場合であっても、3D画像のデータ量は、2D画像のデータ量よりも大になる。
【０００４】
また、映画等の、高解像度の画像のコンテンツは、大容量であることもあり、そのような大容量の画像のコンテンツを、データ量の多い3D画像として記録するには、大容量の記録媒体が必要である。
【０００５】
そのような大容量の記録媒体としては、例えば、BD(Blu-Ray(R))-ROM(Read Only Memory)等のBlu-Ray(R) Disc（以下、BDともいう）がある。
【０００６】
BDでは、BD-J(BD Java(登録商標))を扱うことが可能であり、BD-Jによって、高度なインタラクティブ機能を提供することができる（特許文献１）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】国際公開第2005/052940号
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、現行のBDの規格では、3D画像のコンテンツを、BDに、どのように記録し、また、再生するかは、規定されていない。
【０００９】
しかしながら、3D画像のコンテンツの記録や再生の仕方を、3D画像のコンテンツのオーサリングを行うオーサ(author)に委ねてしまうと、3D画像のコンテンツを適切に再生することができなくなるおそれがある。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、BD等の記録媒体から、3D画像のコンテンツを適切に再生することができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の第１の側面の情報処理装置、又は、プログラムは、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対するグラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画するための描画コマンド列を引数とすることで、前記グラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画する描画完全性を保証するAPI(Application Programming Interface)の呼び出しがあった場合に、前記描画コマンド列を実行することにより、前記グラフィクスプレーンへのグラフィックスの画像の描画を行い、その描画の完了後に、前記グラフィックスプレーンに描画された画像を、表示のために出力する情報処理装置、又は、情報処理装置として、コンピュータを機能させるためのプログラムである。
【００１２】
本発明の第１の側面の情報処理方法は、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対するグラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画するための描画コマンド列を引数とすることで、前記グラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画する描画完全性を保証するAPI(Application Programming Interface)の呼び出しがあった場合に、前記描画コマンド列を実行することにより、前記グラフィクスプレーンへのグラフィックスの画像の描画を行い、その描画の完了後に、前記グラフィックスプレーンに描画された画像を、表示のために出力する情報処理方法である。
【００１３】
本発明の第１の側面においては、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対するグラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画するための描画コマンド列を引数とすることで、前記グラフィックスの左眼用画像と右眼用画像とを整合がとれた状態に描画する描画完全性を保証するAPI(Application Programming Interface)の呼び出しがあった場合に、前記描画コマンド列を実行することにより、前記グラフィクスプレーンへのグラフィックスの画像の描画が行われ、その描画の完了後に、前記グラフィックスプレーンに描画された画像が、表示のために出力される。
【００１４】
本発明の第２の側面の情報処理装置、又は、プログラムは、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知API(Application Programming Interface)の呼び出しがあった場合に、前記グラフィクスプレーンに描画された画像を、表示のために出力する情報処理装置、又は、情報処理装置として、コンピュータを機能させるためのプログラムである。
【００１５】
本発明の第２の側面の情報処理方法は、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知API(Application Programming Interface)の呼び出しがあった場合に、前記グラフィクスプレーンに描画された画像を、表示のために出力する情報処理方法である。
【００１６】
本発明の第２の側面においては、グラフィクスの画像を記憶するグラフィクスプレーンが、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知API(Application Programming Interface)の呼び出しがあった場合に、前記グラフィクスプレーンに描画された画像が、表示のために出力される。
【００１７】
本発明の第３の側面の情報処理装置、又は、プログラムは、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対する画像の描画を開始することを通知する描画開始通知API(Application Programming Interface)の呼び出しがあった後、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知APIの呼び出しがあった場合に、前記描画開始通知APIの呼び出し後、前記描画完了通知APIの呼び出しまでに前記グラフィックスプレーンに描画されたすべての画像を、表示のために出力する情報処理装置、又は、情報処理装置として、コンピュータを機能させるためのプログラムである。
【００１８】
本発明の第３の側面の情報処理方法は、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対する画像の描画を開始することを通知する描画開始通知API(Application Programming Interface)の呼び出しがあった後、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知APIの呼び出しがあった場合に、前記描画開始通知APIの呼び出し後、前記描画完了通知APIの呼び出しまでに前記グラフィックスプレーンに描画されたすべての画像を、表示のために出力する情報処理方法である。
【００１９】
本発明の第３の側面においては、グラフィクスの画像を記憶するグラフィクスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、前記グラフィクスプレーンに対する画像の描画を開始することを通知する描画開始通知API(Application Programming Interface)の呼び出しがあった後、前記グラフィクスプレーンに対する画像の描画が終了したことを通知する描画完了通知APIの呼び出しがあった場合に、前記描画開始通知APIの呼び出し後、前記描画完了通知APIの呼び出しまでに前記グラフィックスプレーンに描画されたすべての画像が、表示のために出力される。
【００２０】
情報処理装置は、独立した装置であっても良いし、１つの装置を構成している内部ブロックであっても良い。
【００２１】
また、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
【発明の効果】
【００２２】
本発明によれば、3D画像のコンテンツを適切に再生することができる。
【図面の簡単な説明】
【００２３】
【図１】BDMVフォーマットの概要を説明する図である。
【図２】BDのファイルの管理構造を説明する図である。
【図３】BDプレーヤのハードウェアの構成例を示すブロック図である。
【図４】3D対応プレーヤによる3D画像の処理の概要を説明する図である。
【図５】BD-Jアプリケーションによる、グラフィックスプレーン１１への、グラフィクスの3D画像の描画を説明する図である。
【図６】BD-Jアプリケーションが、グラフィックスプレーン１１に、グラフィクスの3D画像を描画することにより、グラフィクスの画像を再生するグラフィクスモードを示す図である。
【図７】3D対応プレーヤの機能的構成例を示すブロック図である。
【図８】コンフィグレーションの１つである、ビデオの画像を再生するビデオモードを示す図である。
【図９】コンフィグレーションの１つである、バックグラウンドの画像を再生するバックグラウンドモードを示す図である。
【図１０】デバイスプレーンであるグラフィクスプレーン１１、PGプレーン１２、ビデオプレーン１３、及び、バックグラウンドプレーン１４の関係を示す図である。
【図１１】コンフィグレーションの１つである、画枠(Resolution)、及び、色深度(color-depth)を示す図である。
【図１２】3D画像の不一致ケースにおいて、第２の描画方式で、3D画像を描画する方法を説明する図である。
【図１３】デバイスプレーンを説明する図である。
【図１４】BD-Jオブジェクトのファイル中に、コンフィグレーションを指定するために設けるビットフィールドを示す図である。
【図１５】initial_video_mode，initial_graphics_mode、及び、initial_background_modeのデフォルトの規定値を示す図である。
【図１６】KEEP_RESOLUTION再生以外の再生の、Video+PG，BD-J graphics、及び、backgroundの解像度（画枠）の組み合わせを示す図である。
【図１７】KEEP_RESOLUTION再生以外の再生の、Video+PG，BD-J graphics、及び、backgroundの解像度（画枠）の組み合わせを示す図である。
【図１８】コンフィグレーションの変更の処理の例を示す図である。
【図１９】グラフィクスモード、及び、バックグラウンドモードの所定の初期値を示す図である。
【図２０】1920×2160画素の3D画像（ステレオ画像）を再生する場合に再生されるグラフィクス、及び、バックグラウンドモードを示す図である。
【図２１】BD-JアプリケーションによるAPIの呼び出しによる、コンフィグレーションとしての解像度（画枠）の変更を説明する図である。
【図２２】グラフィクスモードの変更を説明する図である。
【図２３】ステレオグラフィクスモードから、オフセットグラフィクスモードへのグラフィクスモードの変更を示す図である。
【図２４】バックグラウンドモードの変更を説明する図である。
【図２５】ビデオモードの変更を説明する図である。
【図２６】3D対応プレーヤの機能的構成例を示すブロック図である。
【図２７】各ビデオモードで選択することができるPG再生モード、及び、TextST再生モードを示す図である。
【図２８】3D対応プレーヤの機能的構成例を示すブロック図である。
【図２９】PGについての、3D対応プレーヤの処理を説明する図である。
【図３０】3D対応プレーヤにおける、3D画像の再生と、2D画像の再生との切り替えを説明する図である。
【図３１】オーサによるビデオの位置とサイズの設定と、3D対応プレーヤによるビデオの位置とサイズの補正とを説明する図である。
【図３２】3D対応プレーヤの機能的構成例を示すブロック図である。
【図３３】1920×2160画素のグラフィクスプレーン１１を示す図である。
【図３４】3D対応プレーヤの機能的構成例を示すブロック図である。
【図３５】3D対応プレーヤによるグラフィクスの処理を説明するフローチャートである。
【図３６】3D対応プレーヤによるグラフィクスの処理を説明するフローチャートである。
【図３７】3D対応プレーヤによるグラフィクスの処理を説明するフローチャートである。
【図３８】グラフィクスプレーン１１に描画されたGUIの例を示す図である。
【図３９】第１のフォーカス方式と、第２のフォーカス方式とを示す図である。
【図４０】3D対応プレーヤのフォーカスの管理を説明するフローチャートである。
【図４１】カーソルの3D画像が見える表示画面上の位置と、グラフィクスプレーン１１上のカーソルの位置とを示す図である。
【図４２】グラフィクスの左眼用画像と右眼用画像との整合性を説明する図である。
【図４３】3D対応プレーヤの機能的構成例を示すブロック図である。
【図４４】Lグラフィクスプレーン１１Ｌと、Rグラフィクスプレーン１１Ｒとをまたぐ画像を示す図である。
【図４５】アニメーションのための左眼用画像の描画と、アニメーションのための右眼用画像の描画とを示す図である。
【図４６】3D対応プレーヤの機能的構成例を示すブロック図である。
【図４７】Image Frame Accurate Animation の拡張APIの定義を示す図である。
【図４８】Sync Frame Accurate Animation の拡張APIの定義を示す図である。
【図４９】Image Frame Accurate Animation のサンプルコードを示す図である。
【図５０】Image Frame Accurate Animation のサンプルコードを示す図である。
【図５１】Sync Frame Accurate Animation のサンプルコードを示す図である。
【図５２】Sync Frame Accurate Animation のサンプルコードを示す図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施の形態を、BDに適用した場合を例に説明する。
【００２５】
［BDの管理構造］
【００２６】
まず、現行のBDに関し、"Blu-ray Disc Read-Only Format Ver1.0 part3 Audio Visual Specifications"で規定されている、読み出し専用タイプのBDであるBD-ROMに記録されたコンテンツ、すなわち、AV(Audio/Video)データ等の管理構造（以下、BDMVフォーマットともいう）について説明する。
【００２７】
例えば、MPEG(Moving Picture Experts Group)ビデオや、MPEGオーディオ等の符号化方式で符号化され、MPEG2システムに従って多重化されたビットストリームは、クリップAVストリーム（またはAVストリーム）と呼ばれる。クリップAVストリームは、BDに関する規格の一つである"Blu-ray Disc Read-Only Format part2"で定義されたファイルシステムにより、ファイルとしてBDに記録される。クリップAVストリームのファイルは、クリップAVストリームファイル（またはAVストリームファイル）と呼ばれる。
【００２８】
クリップAVストリームファイルは、ファイルシステム上での管理単位であり、クリップAVストリームファイル（のクリップAVストリーム）を再生に必要な情報等は、データベースとしてBDに記録される。このデータベースについては、BD規格の一つである"Blu-ray Disc Read-Only Format part3"で規定されている。
【００２９】
図１は、BDMVフォーマットの概要を説明する図である。
【００３０】
BDMVフォーマットは、４層のレイヤから構成される。
【００３１】
最下位のレイヤは、クリップAVストリームが属するレイヤであり、以下、適宜、クリップレイヤともいう。
【００３２】
クリップレイヤの１つ上のレイヤは、クリップAVストリームに対する再生箇所を指定するための、プレイリスト(Movie PlayList)が属するレイヤで、以下、プレイリストレイヤともいう。
【００３３】
プレイリストレイヤの１つ上のレイヤは、プレイリストに対して再生順等を指定するコマンドからなるムービーオブジェクト(Movie Object)等が属するレイヤで、以下、オブジェクトレイヤともいう。
【００３４】
オブジェクトレイヤの１つ上のレイヤ（最上位のレイヤ）は、BDに格納されるタイトル等を管理するインデックステーブルが属するレイヤで、以下、インデクスレイヤともいう。
【００３５】
クリップレイヤ、プレイリストレイヤ、オブジェクトレイヤ、及び、インデクスレイヤについて、さらに説明する。
【００３６】
クリップレイヤには、クリップAVストリームや、クリップ情報(Clip Information)等が属する。
【００３７】
クリップAVストリームは、コンテンツのデータとしてのビデオデータやオーディオデータ等をTS(MPEG2 TS(Transport Stream))の形にしたストリームである。
【００３８】
クリップ情報(Clip Information)は、クリップAVストリームに関する情報であり、ファイルとして、BDに記録される。
【００３９】
なお、クリップAVストリームには、字幕やメニュー等のグラフィクスのストリームも、必要に応じて含まれる。
【００４０】
字幕（のグラフィクス）のストリームは、プレゼンテーショングラフィクス(PG(Presentation Graphics))ストリームと呼ばれ、メニュー（のグラフィクス）のストリームは、インタラクティブグラフィクス(IG(Interactive Graphics))ストリームと呼ばれる。
【００４１】
また、クリップAVストリームファイルと、対応するクリップ情報（そのクリップAVストリームファイルのクリップAVストリームに関するクリップ情報）のファイル（クリップ情報ファイル）とのセットは、クリップ(Clip)と呼ばれる。
【００４２】
クリップは、クリップAVストリームとクリップ情報とから構成される、１つのオブジェクトである。
【００４３】
クリップを構成するクリップAVストリームに対応するコンテンツを時間軸上に展開したときの最初と最後の位置（時刻）を含む複数の位置は、アクセスポイントに設定される。アクセスポイントは、主に、タイムスタンプで、上位のレイヤのプレイリスト(PlayList)により指定される。
【００４４】
クリップを構成するクリップ情報は、プレイリストがタイムスタンプで指定したアクセスポイントが表す、クリップAVストリームの位置のアドレス(論理アドレス）を含む。
【００４５】
プレイリストレイヤには、プレイリスト(Movie PlayList)が属する。
【００４６】
プレイリストは、再生を行うAVストリームファイルと、そのAVストリームファイルの再生箇所を指定する再生開始点（IN点）、及び、再生終了点（OUT点）とを含むプレイアイテム(PlayItem)から構成される。
【００４７】
したがって、プレイリストは、プレイアイテムの集合で構成される。
【００４８】
ここで、プレイアイテムの再生とは、そのプレイアイテムに含まれるIN点とOUT点とによって特定される、クリップAVストリームの区間の再生を意味する。
【００４９】
オブジェクトレイヤには、ムービーオブジェクト(Movie Object)や、BD-Jオブジェクト(Blu-ray Disc Java(登録商標) Object)が属する。
【００５０】
ムービーオブジェクトは、HDMV(High Definition Movie)ナビゲーションコマンドプログラム（ナビコマンド）と、ムービーオブジェクトとを連携するターミナルインフォメーションを含む。
【００５１】
ナビコマンドは、プレイリストの再生を制御するためのコマンドである。ターミナルインフォメーションは、BDを再生するBDプレーヤに対するユーザのインタラクティブな操作を許可するための情報を含む。BDプレーヤでは、ターミナルインフォメーションに基づき、メニューの呼び出しや、タイトルサーチといったユーザオペレーションが制御される。
【００５２】
BD-Jオブジェクトは、Java(登録商標)プログラムであり、ナビコマンドよりも、より高度な(洗練された）インタラクティブ機能を、ユーザに提供することができる。
【００５３】
インデクスレイヤには、インデクステーブル(Index table)が属する。
【００５４】
インデクステーブルは、BD-ROMディスクのタイトルを定義する、トップレベルのテーブルである。
【００５５】
インデクステーブルのエントリ（欄）は、タイトルに対応し、各エントリからは、そのエントリに対応するタイトル（HDMVタイトル、BD-Jタイトル）のオブジェクト（ムービーオブジェクト、BD-Jオブジェクト）にリンクがはられる。
【００５６】
図２は、"Blu-ray Disc Read-Only Format part3"で規定された、BDのファイルの管理構造を説明する図である。
【００５７】
BDでは、ファイルは、ディレクトリ構造により階層的に管理される。
【００５８】
ここで、図２では、ディレクトリの下のファイル（ディレクトリを含む）とは、そのディレクトリの直下にあるファイルを意味し、ディレクトリに含まれるファイルとは、そのディレクトリの直下にあるファイルや、そのディレクトリの、いわゆるサブディレクトリの下にあるファイルを意味する。
【００５９】
BDの最上位階層のディレクトリは、ルート(root)ディレクトリになっている。
【００６０】
ルートディレクトリの直下には、ディレクトリ"BDMV"と、ディレクトリ"CERTIFICATE"とが存在する。
【００６１】
ディレクトリ"CERTIFICATE"には、著作権に関する情報(ファイル）が格納される。
【００６２】
ディレクトリ"BDMV"には、図１で説明したBDMVフォーマットのファイルが格納される。
【００６３】
ディレクトリ"BDMV"の直下には、ファイル"index.bdmv"、及び"MovieObject.bdmv"の２つのファイルが格納される。なお、ディレクトリ"BDMV"の直下には、ファイル"index.bdmv"、及び"MovieObject.bdmv"以外のファイル（ディレクトリを除く）は、格納することができない。
【００６４】
ファイル"index.bdmv"は、BDを再生するメニューに関する情報としての、図１で説明したインデクステーブルを含む。
【００６５】
BDプレーヤは、例えば、BDのコンテンツを全て再生する、特定のチャプタのみを再生する、繰り返し再生をする、所定のメニューを表示する等の内容の項目を含む初期メニュー（の画面）を、ファイル"index.bdmv"に基づいて再生する。
【００６６】
また、ファイル"index.bdmv"には、各項目が選択されたときに実行するムービーオブジェクト(Movie Object)を設定することができ、ユーザにより初期メニュー画面から１つの項目が選択された場合、BDプレーヤは、ファイル"index.bdmv"に設定されているMovie Objectのコマンドを実行する。
【００６７】
ファイル"MovieObject.bdmv"は、Movie Objectの情報を含むファイルである。Movie Objectは、BDに記録されているPlayListの再生を制御するコマンドを含み、例えば、BDプレーヤは、BDに記録されているMovieObjectの中から１つを選択して実行することにより、BDに記録されているコンテンツ(タイトル）を再生する。
【００６８】
ディレクトリ"BDMV"の直下には、ディレクトリ"PLAYLIST"，"CLIPINF"，"STREAM"，"AUXDATA"，"META"，"BDJO"，"JAR"、及び"BACKUP"が設けられる。
【００６９】
ディレクトリ"PLAYLIST"には、プレイリストのデータベースが格納される。すなわち、ディレクトリ"PLAYLIST"には、プレイリストのファイル"xxxxx.mpls"が格納される。ファイル"xxxxx.mpls"のファイル名には、５桁の数字"xxxxx"と、拡張子"mpls"とからなるファイル名が用いられる。
【００７０】
ディレクトリ"CLIPINF"は、クリップのデータベースが格納される。すなわち、ディレクトリCLIPINF"には、クリップAVストリームファイルのそれぞれに対するクリップインフォメーションファイル"xxxxx.clpi"が格納される。クリップインフォメーションファイル"xxxxx.clpi"のファイル名には、５桁の数字"xxxxx"と、拡張子"clpi"とからなるファイル名が用いられる。
【００７１】
ディレクトリ"STREAM"には、クリップAVストリームファイル"xxxxx.m2ts"が格納される。クリップAVストリームファイル"xxxxx.m2ts"には、TSが格納される。クリップAVストリームファイル"xxxxx.m2ts"のファイル名には、５桁の数字"xxxxx"と、拡張子"m2ts"とからなるファイル名が用いられる。
【００７２】
なお、あるクリップを構成するクリップインフォメーションファイル"xxxxx.clpi"と、クリップAVストリームファイル"xxxxx.m2ts"のファイル名としては、拡張子を除き、一致するファイル名が用いられる。これにより、あるクリップを構成するクリップインフォメーションファイル"xxxxx.clpi"と、クリップAVストリームファイル"xxxxx.m2ts"とを、容易に特定することができる。
【００７３】
ディレクトリ"AUXDATA"には、メニューの表示等に用いられる、サウンドファイル、フォントファイル、フォントインデクスファイル及びビットマップファイル等が格納される。
【００７４】
図２では、ディレクトリ"AUXDATA"に、ファイル"sound.bdmv"や、拡張子が"otf"のファイルが格納されている。
【００７５】
ファイル"sound.bdmv"には、所定のサウンドデータ（オーディオデータ）が格納される。ファイル"sound.bdmv"のファイル名は、"sound.bdmv"が固定的に用いられる。
【００７６】
拡張子が"otf"のファイルには、字幕の表示や、BD-Jオブジェクト（アプリケーション）等で用いられるフォントのデータが格納される。拡張子が"otf"のファイルのファイル名のうちの拡張子以外の部分には、５桁の数字が用いられる。
【００７７】
ディレクトリ"META"には、メタデータのファイルが格納される。ディレクトリ"BDJO"及びディレクトリ"JAR"は、BD-Jオブジェクトのファイルが格納される。ディレクトリ"BACKUP"は、BDに記録されたファイルのバックアップが格納される。
【００７８】
［BDプレーヤのハードウェアの構成例］
【００７９】
図３は、BDを再生するBDプレーヤのハードウェアの構成例を示すブロック図である。
【００８０】
図３のBDプレーヤは、3D画像のコンテンツが記録されたBDの再生を行うことができるようになっている。
【００８１】
BDプレーヤは、CPU(Central Processing Unit)１０２等の、プロセッサ（コンピュータ）を内蔵している。CPU１０２には、バス１０１を介して、入出力インタフェース１１０が接続されている。
【００８２】
CPU１０２は、入出力インタフェース１１０を介して、ユーザによって、入力部１０７が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)１０３に格納されているプログラムを実行する。あるいは、CPU１０２は、ハードディスク１０５や、ドライブ１０９に装着されたディスク１００に記録されたプログラムを、RAM(Random Access Memory)１０４にロードして実行する。
【００８３】
これにより、CPU１０２は、後述する各種の処理を行う。そして、CPU１０２は、その処理結果を、必要に応じて、例えば、入出力インタフェース１１０を介して、出力部１０６から出力、あるいは、通信部１０８から送信、さらには、ハードディスク１０５に記録等させる。
【００８４】
なお、入力部１０７は、キーボードや、マウス、マイク等で構成される。また、出力部１０６は、LCD(Liquid Crystal Display)やスピーカ等で構成される。通信部１０８は、ネットワークカード等で構成される。
【００８５】
ここで、CPU１０２が実行するプログラムは、BDプレーヤに内蔵されている記録媒体としてのハードディスク１０５やROM１０３に予め記録しておくことができる。
【００８６】
あるいはまた、プログラムは、ディスク１００等のリムーバブル記録媒体に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto Optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
【００８７】
なお、プログラムは、上述したようなリムーバブル記録媒体からBDプレーヤにインストールする他、通信網や放送網を介して、BDプレーヤにダウンロードし、内蔵するハードディスク１０５にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、BDプレーヤに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、BDプレーヤに有線で転送することができる。
【００８８】
図３において、ディスク１００は、例えば、BDであり、そこには、3D画像のコンテンツが、レガシープレーヤで再生されるBDとの互換性を維持する形で記録されている。
【００８９】
したがって、ディスク１００は、レガシープレーヤでも再生することができるし、3D画像のコンテンツの再生を行うことができるBDプレーヤ（以下、3D対応プレーヤともいう）である図３のBDプレーヤでも再生することができる。
【００９０】
ここで、レガシープレーヤとは、現行の、2D画像のコンテンツが記録されたBDの再生をすることはできるが、3D画像のコンテンツを再生することができないBDプレーヤである。
【００９１】
レガシープレーヤでは、ディスク１００から、2D画像のコンテンツを再生することはできるが、3D画像のコンテンツを再生することはできない。
【００９２】
一方、3D対応プレーヤである図３のBDプレーヤでは、ディスク１００から、2D画像のコンテンツを再生することもできるし、3D画像のコンテンツを再生することもできる。
【００９３】
図３のBDプレーヤでは、BDであるディスク１００がドライブ１０９に装着されると、CPU１０２が、ドライブ１０９を制御することにより、ディスク１００の再生を行う。
【００９４】
［BD-Jアプリケーションの説明］
【００９５】
ディスク１００（図３）には、3D画像のコンテンツの１つとして、BD-Jアプリケーション（BD-Jタイトル）（BD-Jオブジェクト）が記録されている。
【００９６】
3D対応プレーヤである図３のBDプレーヤでは、CPU１０２が、Java(登録商標)仮想マシンを実行し、そのJava(登録商標)仮想マシン上で、BD-Jアプリケーションが実行される。
【００９７】
図４は、3D対応プレーヤによる3D画像の処理の概要（BD-J stereoscopic graphicsの概要）を説明する図である。
【００９８】
3D対応プレーヤは、3D画像を、論理プレーン１０、PGプレーン１２、又は、ビデオプレーン１３に描画する。なお、論理プレーン１０、PGプレーン１２、及び、ビデオプレーン１３の実体は、例えば、図３のRAM１０４の一部の記憶領域である。
【００９９】
3D対応プレーヤが描画する3D画像には、BD規格に規定されたBD-Jのグラフィクス、PG(Presentation Graphics)、TextST(Text subtitle)、ビデオ、及び、バックグラウンドがある。
【０１００】
ここで、図４では、グラフィクスの3D画像(stereo graphics source)は、左眼で観察される画像である左眼用画像(L(Left)-view)と、右眼で観察される画像である右眼用画像(R(Right)-view)とから構成される。
【０１０１】
PGの3D画像(stereo PG source)、ビデオの3D画像(stereo video source)、及び、バックグラウンドの3D画像(stereo background source)も、同様に、左眼用画像と右眼用画像とから構成される。
【０１０２】
なお、ビデオの3D画像等を構成する左眼用画像、及び、右眼用画像は、例えば、H.264 AVC(Advanced Video Coding)/MVC(Multi-view Video coding)等で符号化することができる。
【０１０３】
ここで、H.264 AVC/MVCでは、ベースビュー(Base View)と呼ばれる画像ストリームと、ディペンデントビュー(Dependent View)と呼ばれる画像ストリームとが定義されている。
【０１０４】
ベースビューには、他のストリームを参照画像とする予測符号化が許されていないが、ディペンデントビューには、ベースビューを参照画像とする予測符号化が許されている。左眼用画像、及び右眼用画像のうちの、例えば、左眼用画像は、ベースビューとし、右眼用画像は、ディペンデントビューとすることができる。
【０１０５】
3D対応プレーヤは、論理プレーン１０に描画された3D画像を、グラフィクスプレーン１１や、バックグラウンドプレーン１４に描画する。
【０１０６】
グラフィクスプレーン１１は、左眼用画像を記憶するLグラフィクスプレーン(L(Left) graphics plane)１１Ｌと、右眼用画像を記憶するRグラフィクスプレーン(R(Right) graphics plane)１１Ｒとから構成される。
【０１０７】
論理プレーン１０に描画されたグラフィクスの3D画像を構成する左眼用画像は、Lグラフィクスプレーン１１Ｌに描画され、右眼用画像は、Rグラフィクスプレーン１１Ｒに描画される。
【０１０８】
ここで、Lグラフィクスプレーン１１Ｌは、左眼で観察されるL(Left)用の画像（左眼用画像）を記憶する１面分の画像の記憶領域（L領域）である。また、Rグラフィクスプレーン１１Ｒは、右眼で観察されるR(Right)用の画像（右眼用画像）を記憶する１面分の画像の記憶領域（R領域）である。
【０１０９】
Lグラフィクスプレーン１１Ｌ、及び、Rグラフィクスプレーン１１Ｒ、すなわち、グラフィクスプレーン１１の実体は、論理プレーン１０とは別の、図３のRAM１０４の一部の記憶領域である。
【０１１０】
PGプレーン１２、ビデオプレーン１３、及び、バックグラウンドプレーン１４も同様である。
【０１１１】
PGプレーン１２は、左眼用画像を記憶するL-PGプレーン(L(Left) PG plane)１２Ｌと、右眼用画像を記憶するR-PGプレーン(R(Right) PG plane)１２Ｒとから構成される。
【０１１２】
3D対応プレーヤは、PGの3D画像を構成する左眼用画像を、L-PGプレーン１２Ｌに描画し、右眼用画像を、R-PGプレーン１２Ｒに描画する。
【０１１３】
ビデオプレーン１３は、左眼用画像を記憶するLビデオプレーン(L(Left) video plane)１３Ｌと、右眼用画像を記憶するRビデオプレーン(R(Right) video plane)１３Ｒとから構成される。
【０１１４】
3D対応プレーヤは、ビデオの3D画像を構成する左眼用画像を、Lビデオプレーン１３Ｌに描画し、右眼用画像を、Rビデオプレーン１３Ｒに描画する。
【０１１５】
バックグラウンドプレーン１４は、左眼用画像を記憶するLバックグラウンドプレーン(L(Left) background plane)１４Ｌと、右眼用画像を記憶するRバックグラウンドプレーン(R(Right) background plane)１４Ｒとから構成される。
【０１１６】
論理プレーン１０に描画されたバックグラウンドの3D画像を構成する左眼用画像は、Lバックグラウンドプレーン１４Ｌに描画され、右眼用画像は、Rバックグラウンドプレーン１４Ｒに描画される。
【０１１７】
グラフィクスプレーン１１、PGプレーン１２、ビデオプレーン１３、及び、バックグラウンドプレーン１４に描画（記憶）された左眼用画像、及び、右眼用画像は、ミキサ１５に供給される。
【０１１８】
ミキサ１５は、グラフィクスプレーン１１からのグラフィクスの左眼用画像、PGプレーン１２からのPGの左眼用画像、ビデオプレーン１３からのビデオの左眼用画像、及び、バックグラウンドプレーン１４からのバックグラウンドの左眼用画像をブレンディング（ミキシング）（合成）し、その合成結果である左眼用画像を出力する。
【０１１９】
また、ミキサ１５は、グラフィクスプレーン１１からのグラフィクスの右眼用画像、PGプレーン１２からのPGの右眼用画像、ビデオプレーン１３からのビデオの右眼用画像、及び、バックグラウンドプレーン１４からのバックグラウンドの右眼用画像をブレンディング合成し、その合成結果である右眼用画像を出力する。
【０１２０】
ミキサ１５が出力する左眼用画像は、左用のディスプレイ出力(L(Left) display output)として、図示せぬディスプレイに供給される。また、ミキサ１５が出力する右眼用画像は、右用のディスプレイ出力(R(Right) display output)として、図示せぬディスプレイに供給される。
【０１２１】
図示せぬディスプレイでは、ミキサ１５からの左眼用画像と右眼用画像とが、交互、又は、同時に表示されることで、3D画像が表示される。
【０１２２】
BD-Jアプリケーションは、グラフィクスプレーン１１、PGプレーン１２、ビデオプレーン１３、及び、バックグラウンドプレーン１４のうちの、グラフィクスプレーン１１、及び、バックグラウンドプレーン１４に、画像の描画を行うことができる。
【０１２３】
なお、本実施の形態では、BD-Jアプリケーションは、論理プレーン１０にしかアクセスすることはできず、グラフィクスプレーン１１、及び、バックグラウンドプレーン１４には、直接アクセスすることはできないこととする。
【０１２４】
したがって、BD-Jアプリケーションは、画像の描画を、論理プレーン１０に対して行うことができるだけで、グラフィクスプレーン１１、及び、バックグラウンドプレーン１４に対して直接的に行うことはできない。このため、BD-Jアプリケーションは、論理プレーン１０に、画像を描画することで、間接的に、グラフィクスプレーン１１や、バックグラウンドプレーン１４に、画像を描画する。
【０１２５】
但し、以下では、説明の便宜上、BD-Jアプリケーションによる、論理プレーン１０を介しての、グラフィクスプレーン１１や、バックグラウンドプレーン１４への画像の描画を、単に、グラフィクスプレーン１１や、バックグラウンドプレーン１４への画像の描画とも記載する。
【０１２６】
なお、3D対応プレーヤは、論理プレーン１０なしで構成することができる。この場合、BD-Jアプリケーションは、画像を、グラフィクスプレーン１１や、バックグラウンドプレーン１４に、直接描画する。
【０１２７】
BD-Jアプリケーションは、グラフィクスプレーン１１、及び、バックグラウンドプレーン１４への画像の描画の他、ビデオとPGのスケーリングや位置（表示位置）の制御等の、ビデオとPGの再生制御を行うことができる。
【０１２８】
なお、BD-Jアプリケーションは、ビデオとPGとは、１組で（まとめて）扱われる。すなわち、BD-Jアプリケーションは、ビデオとPGとを区別しない（区別することができない）。
【０１２９】
［BD-Jアプリケーションによるグラフィクスの画像の描画］
【０１３０】
図５は、BD-Jアプリケーションによる、グラフィックスプレーン１１(Stereoscopic grapics planes)への、グラフィクスの3D画像の描画を説明する図である。
【０１３１】
3D画像の描画方式としては、第１の描画方式と、第２の描画方式とを採用することができる。
【０１３２】
図５Ａは、第１の描画方式を説明する図である。
【０１３３】
第１の描画方式では、BD-Jアプリケーションのオーサ(author)は、ステレオプレーンに描画を行う。
【０１３４】
すなわち、第１の描画方式では、グラフィクスの3D画像のデータが、左眼用画像のデータと、右眼用画像のデータとで構成され、BD-Jアプリケーションは、その左眼用画像と右眼用画像とを、論理プレーン１０に描画する。
【０１３５】
そして、論理プレーン１０に描画された左眼用画像と右眼用画像とが、そのまま、グラフィックスプレーン１１に描画される。すなわち、論理プレーン１０に描画された左眼用画像が、そのまま、Lグラフィックスプレーン１１Ｌに描画され、論理プレーン１０に描画された右眼用画像が、そのまま、Rグラフィックスプレーン１１Ｒに描画される。
【０１３６】
図５Ｂは、第２の描画方式を説明する図である。
【０１３７】
第２の描画方式では、BD-Jアプリケーションのオーサは、モノプレーンに描画する。また、オーサは、同時に、オフセット値（graphics plane offset値）を供給する。3D対応プレーヤは、オフセット値に基づき、モノプレーンからステレオプレーンを生成する。
【０１３８】
すなわち、第２の描画方式では、3D画像のデータが、3D画像を生成する、いわば元となる元画像のデータと、元画像に視差を与えて、元画像から、左眼用画像と右眼用画像とを生成するための視差のデータとで構成される。
【０１３９】
BD-Jアプリケーションは、元画像を、論理プレーン１０に描画する。3D対応プレーヤは、論理プレーン１０に描画された元画像に、視差を与えることで生成される左眼用画像と右眼用画像を、それぞれ、Lグラフィックスプレーン１１ＬとRグラフィックスプレーン１１Ｒに描画する。
【０１４０】
ここで、視差のデータを、オフセット値(offset)ということとすると、オフセット値としては、元画像の位置を、水平方向（x方向）にずらす画素数（ピクセル数）を採用することができる。
【０１４１】
Lグラフィックスプレーン１１Ｌにおいては、左から右方向を正の方向として、論理プレーン１０に描画された元画像が、水平方向の位置を、オフセット値だけずらした位置に描画される。すなわち、論理プレーン１０に描画された元画像の水平方向の位置を、オフセット値だけずらした結果得られる画像が、左眼用画像として、Lグラフィクスプレーン１１Ｌに描画される。
【０１４２】
Rグラフィックスプレーン１１Ｒにおいては、右から左方向を正の方向として、論理プレーン１０に描画された元画像が、水平方向の位置を、オフセット値だけずらした位置に描画される。すなわち、論理プレーン１０に描画された元画像の水平方向の位置を、オフセット値だけずらした結果得られる画像が、右眼用画像として、Rグラフィクスプレーン１１Ｒに描画される。
【０１４３】
なお、Lグラフィックスプレーン１１Ｌには、論理プレーン１０に描画された元画像が、水平方向の位置をずらして描画されるため、描画を行うべき領域(水平方向の位置をずらさない場合に描画がされる領域)の中に、描画が行われない領域（画素）が生じる。Lグラフィックスプレーン１１Ｌの、元の画像の描画が行われない領域は、透明色が描画される。Rグラフィクスプレーン１１Ｒについても、同様である。
【０１４４】
ここで、オフセット値が、正である場合には、左眼用画像と右眼用画像とで表示される3D画像は、図示せぬディスプレイの表示画面に垂直な奥行き方向の手前側に、浮き上がって見える。一方、オフセット値が、負である場合には、左眼用画像と右眼用画像とで表示される3D画像は、奥行き方向の奥側に、へこんで見える。
【０１４５】
図６は、BD-Jアプリケーションが、グラフィックスプレーン１１に、グラフィクスの3D画像を描画することにより、グラフィクスの画像を再生するグラフィクスモードを示す図である。
【０１４６】
Reference Decoder Model上では、3D対応プレーヤは、常に2-plane（Lグラフィクスプレーン１１Ｌ、及び、Rグラフィクスプレーン１１Ｒ）を有し、BD-Jアプリケーションは、論理プレーン１０に対して描画する仕様とする。
【０１４７】
そして、最終的には、Lグラフィクスプレーン１１Ｌに描画されたグラフィクスの左眼用画像(L graphics plane)は、Lビデオプレーン１３Ｌに描画されたビデオ（及びPG）の左眼用画像(L video plane)とブレンディングされる。また、Rグラフィクスプレーン１１Ｒに描画されたグラフィクスの右眼用画像(R graphics plane)は、Rビデオプレーン１３Ｒに描画されたビデオの右眼用画像(R video plane)とブレンディングされる。
【０１４８】
図６Ａは、グラフィクスモードの１つのモードMode#1であるmono-logical-plane + offset valueモード（以下、オフセットグラフィクスモードともいう）を示している。
【０１４９】
オフセットグラフィクスモードでは、BD-Jアプリケーションは、グラフィクスの2D画像であるモノ画像を、論理プレーン１０に描画する。また、BD-Jアプリケーションは、オフセット値を、3D対応プレーヤに与える。
【０１５０】
3D対応プレーヤは、論理プレーン１０描画されたモノ画像と、BD-Jアプリケーションから与えられたオフセット値とから、グラフィクスの3D画像であるステレオ画像を生成する。さらに、BDプレーヤは、ステレオ画像を構成する左眼用画像を、Lグラフィクスプレーン１１Ｌ（L領域）に描画する（記憶させる）とともに、そのステレオ画像を構成する右眼用画像を、Rグラフィクスプレーン１１Ｒ（R領域）に描画する（記憶させる）。
【０１５１】
そして、ミキサ１５は、Lグラフィクスプレーン１１Ｌに描画（記憶）されたグラフィクスの左眼用画像を、Lビデオプレーン１３Ｌに描画されたビデオ（及びPG）の左眼用画像とブレンディングして出力する。さらに、ミキサ１５は、Rグラフィクスプレーン１１Ｒに描画されたグラフィクスの右眼用画像を、Rビデオプレーン１３Ｒに描画されたビデオの右眼用画像とブレンディングして出力する。
【０１５２】
図６Ｂは、グラフィクスモードの１つのモードMode#2であるstereo-logical-planeモード（以下、ステレオグラフィクスモードともいう）を示している。
【０１５３】
ステレオグラフィクスモードでは、BD-Jアプリケーションは、グラフィクスの3D画像であるステレオ画像を構成する左眼用画像と右眼用画像を、論理プレーン１０に描画する。
【０１５４】
3D対応プレーヤは、論理プレーン１０に描画された左眼用画像を、Lグラフィクスプレーン１１Ｌに描画するとともに、論理プレーン１０に描画された右眼用画像を、Rグラフィクスプレーン１１Ｒに描画する。
【０１５５】
そして、ミキサ１５は、Lグラフィクスプレーン１１Ｌに描画されたグラフィクスの左眼用画像を、Lビデオプレーン１３Ｌに描画されたビデオの左眼用画像とブレンディングして出力する。さらに、ミキサ１５は、Rグラフィクスプレーン１１Ｒに描画されたグラフィクスの右眼用画像を、Rビデオプレーン１３Ｒに描画されたビデオの右眼用画像とブレンディングして出力する。
【０１５６】
図６Ｃは、グラフィクスモードの１つのモードMode#3であるforced-mono-logical-planeモード（以下、強制モノグラフィクスモードともいう）を示している。
【０１５７】
強制モノグラフィクスモードでは、BD-Jアプリケーションは、グラフィクスの3D画像であるステレオ画像を、論理プレーン１０に描画する。
【０１５８】
3D対応プレーヤは、論理プレーン１０に描画されたステレオ画像のうちLグラフィクス画像、及び、Rグラフィクス画像のうちの一方である、例えば、Lグラフィクス画像だけを、Lグラフィクスプレーン１１Ｌ、及び、Rグラフィクスプレーン１１Ｒのうちの一方である、例えば、Lグラフィクスプレーン１１Ｌだけに描画する。
【０１５９】
そして、ミキサ１５は、Lグラフィクスプレーン１１Ｌに描画されたグラフィクスのモノ画像を、Lビデオプレーン１３Ｌに描画されたビデオの画像とブレンディングして出力する。
【０１６０】
図６Ｄは、グラフィクスモードの１つのモードMode#4であるflattened-stereo-logical-planeモード（以下、フラットステレオグラフィクスモードともいう）を示している。
フラットステレオグラフィクスモードでは、BD-Jアプリケーションは、グラフィクスの3D画像であるステレオ画像を構成する左眼用画像、及び、右眼用画像を、論理プレーン１０に描画する。
【０１６１】
3D対応プレーヤは、論理プレーン１０に描画された左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像だけを、Lグラフィクスプレーン１４Ｌ、及び、Rグラフィクスプレーン１４Ｒの両方に描画し、他方の右眼用画像を捨てる。
【０１６２】
そして、Lグラフィクスプレーン１４Ｌに描画されたグラフィクスの左眼用画像が、ミキサ１５に供給されるとともに、グラフィクスプレーン１４Ｒに描画されたグラフィクスの左眼用画像が、(右眼用画像として、)いずれも、ミキサ１５に供給される。
【０１６３】
図６Ｅは、グラフィクスモードの１つのモードMode#5であるmono-logical-planeモード（以下、モノグラフィクスモードともいう）を示している。
【０１６４】
モノグラフィクスモードでは、BD-Jアプリケーションは、グラフィクスの2D画像であるモノ画像を、論理プレーン１０に描画する。
【０１６５】
3D対応プレーヤは、論理プレーン１０に描画されたモノ画像を、Lグラフィクスプレーン１１Ｌ、及び、Rグラフィクスプレーン１１Ｒのうちの一方である、例えば、Lグラフィクスプレーン１１Ｌだけに描画する。
【０１６６】
そして、ミキサ１５は、Lグラフィクスプレーン１１Ｌに描画されたグラフィクスのモノ画像を、Lビデオプレーン１３Ｌに描画されたビデオの画像とブレンディングして出力する。
【０１６７】
［オフセット値の設定と取得］
【０１６８】
3D対応プレーヤにおいて、オフセット値は、グラフィックプレーン１１と、PGプレーン１２に適用することができる。
【０１６９】
ここで、グラフィックプレーン１１に適用されるオフセット値（グラフィクスの画像に、視差を与えるデータ）を、グラフィクスプレーンオフセット(Graphics plane offset)値ともいう。また、PGプレーン１２に適用されるオフセット値（PGの画像に、視差を与えるデータ）を、PGプレーンオフセット(PG plane offset)値ともいう。
【０１７０】
グラフィクスプレーンオフセット値の設定、取得には、以下のようなオフセット値の読み書き専用のAPIを定義し、その専用のAPIによって、グラフィクスプレーンオフセット値の設定、取得を行うことができる。
【０１７１】
org.bluray.ui.3D
public void setOffset(int offset)
デフォルト値は、０
public int getOffset()
デフォルト値は、０
【０１７２】
なお、setOffset()メソッドが、グラフィクスプレーンオフセット値を、BDプレーヤの内部に設けられた記憶領域である内部記憶領域に記憶させる（設定する）メソッドであり、getOffset()が、BDプレーヤの内部記憶領域に記憶されているグラフィクスプレーンオフセット値を取得するメソッドである。
【０１７３】
また、BDプレーヤは、BDの再生に関する情報を記憶するPSR(Player Setting Register)を有し、グラフィクスプレーンオフセット値、及び、PGプレーンオフセット値は、PSRのうちの、レガシープレーヤで予約(reserved)になっている、例えば、PSR#21に保存することができる。
【０１７４】
ここで、内部記憶領域、及び、PSRの実体は、図３のRAM１０４やハードディスク１０５の一部の記憶領域である。
【０１７５】
ところで、現行のBD規格（BD-ROM規格）では、BD-Jアプリケーションからの、BDプレーヤのPSRへの書き込みが禁止されている。
【０１７６】
3D対応プレーヤである図３のBDプレーヤに、BD-JアプリケーションからのPSRへの書き込みを許してしまうと、現行のBD規格の大規模な改定が必要となる。
【０１７７】
そこで、3D対応プレーヤでは、General Preferenceとして、オフセット値を定義することで、間接的に、PSRへの書き込みが可能なようになっている。
【０１７８】
すなわち、3D対応プレーヤは、BD規格のグラフィクスや、PGの画像に視差を与えるデータであるオフセット値を、BD規格のジェネラルプリファレンス(General Preference)の１つとして、BDの再生に関する情報を記憶するPSR#21に対するオフセット値の読み書きを行うジェネラルプリファレンスAPI(Application Programming Interface)を備える。
【０１７９】
ここで、PSR#21は、BD規格part3-2 Annex Lの General Preferenceにマッピングされ、org.dvb.user. GeneralPreference APIで、値の設定、取得を行うことができる。
【０１８０】
ジェネラルプリファレンスAPIで、PSRにアクセスするためのジェネラレルプリファレンスネーム(General Preference name)は、以下のように定義することができる。
【０１８１】
すなわち、グラフィクスプレーンオフセット値のジェネラレルプリファレンスネームは、例えば、"graphics offset"と定義することができる。また、PGプレーンオフセット値のジェネラレルプリファレンスネームは、例えば、"subtitle offset"と定義することができる。
【０１８２】
なお、"graphics offset" General Preference、及び、"subtitle offset" General Preferenceのデフォルト値は、例えば、いずれも0とする。
【０１８３】
また、グラフィクスプレーンオフセット値の設定、取得には、以下のような専用のAPIを定義し、その専用のAPIによって、グラフィクスプレーンオフセット値の設定、取得を行うこともできる。
【０１８４】
org.bluray.ui.3D
public void setOffset(int offset)
デフォルト値は、０
public int getOffset()
デフォルト値は、０
【０１８５】
なお、setOffset()メソッドが、グラフィクスプレーンオフセット値を、BDプレーヤの内部記憶領域（ここでは、例えば、PSR）に記憶させるメソッドであり、getOffset()が、BDプレーヤの内部記憶領域に記憶されているグラフィクスプレーンオフセット値を取得するメソッドである。
【０１８６】
図７は、以上のように、BD規格のグラフィクス、及び、PG（以下、特に断らない限り、TextSTを含む）のオフセット値の読み書きを行う3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０１８７】
すなわち、図７Ａは、BD規格のグラフィクス、及び、PGのオフセット値の読み書きを、3D対応プレーヤの内部記憶領域に対して行う、オフセット値の読み書き専用のAPIを備える3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０１８８】
図７Ａの3D対応プレーヤにおいて、BD-Jアプリケーションは、オフセット値の読み書き専用のAPI(General Preference API)に対して、オフセット値の読み書き（設定、又は取得）を要求する。
【０１８９】
オフセット値の読み書き専用のAPIは、BD-Jアプリケーションからの要求に応じて、3D対応プレーヤの内部記憶領域に、オフセット値（グラフィックスプレーンオフセット値、PGプレーンオフセット値）を設定するか、又は、3D対応プレーヤの内部記憶領域から、オフセット値を取得し、BD-Jアプリケーションに返す。
【０１９０】
なお、図７Ａにおいて、プレイバックコントロールエンジン(Playback Control Engine)は、3D対応プレーヤの内部記憶領域に設定されたオフセット値に応じて、BD-Jアプリケーションが論理プレーン１０に描画した画像(元画像)から、左眼用画像と右眼用画像を生成(再生）するための制御を行う。
【０１９１】
以上のように、オフセット値の読み書き専用のAPIを定義し、そのオフセット値の読み書き専用のAPIが、BD-Jアプリケーションからの要求に応じて、BD規格のグラフィクスと、PGの画像に視差を与えるデータであるオフセット値の読み書きを、3D対応プレーヤの内部記憶領域に対して行うことで、BD-Jアプリケーションから、画像に視差を与えるオフセット値を、間接的に、設定、取得することができる。
【０１９２】
図７Ｂは、BD規格のグラフィクス、及び、PGのオフセット値を、BD規格のジェネラルプリファレンスの１つとして、PSR#21に対するオフセット値の読み書きを行うジェネラルプリファレンスAPIを備える3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０１９３】
図７Ｂの3D対応プレーヤにおいて、BD-Jアプリケーションは、ジェネラルプリファレンスAPI(General Preference API)に対して、オフセット値の読み書き（設定、又は取得）を要求する。
【０１９４】
すなわち、読み書きを要求するオフセット値が、グラフィックスプレーンオフセット値である場合、BD-Jアプリケーションは、ジェネラレルプリファレンスネーム(General Preference name)を、"graphics offset"として、ジェネラルプリファレンスAPIを呼び出す。
【０１９５】
また、読み書きを要求するオフセット値が、PGプレーンオフセット値である場合、BD-Jアプリケーションは、ジェネラレルプリファレンスネームを、"subtitle offset"として、ジェネラルプリファレンスAPIを呼び出す。
【０１９６】
ジェネラルプリファレンスAPIは、BD-Jアプリケーションからの要求に応じて、PSR(Player Setting Register)のうちのPSR#21に、オフセット値を設定するか、又は、PSR#21から、オフセット値を取得し、BD-Jアプリケーションに返す。
【０１９７】
なお、図７Ｂにおいて、プレイバックコントロールエンジン(Playback Control Engine)は、PSR#21に設定されたオフセット値に応じて、BD-Jアプリケーションが論理プレーン１０に描画した画像(元画像)から、左眼用画像と右眼用画像を生成(再生）するための制御を行う。
【０１９８】
以上のように、General Preference APIが、BD-Jアプリケーションからの要求に応じて、BD規格のグラフィクスと、PGの画像に視差を与えるデータであるオフセット値を、BD規格のGeneral Preferenceの１つとして、BDの再生に関する情報を記憶するPSR#21に対するオフセット値の読み書きを行うことで、BD-Jアプリケーションから、画像に視差を与えるオフセット値を、間接的に、設定、取得することができる。
【０１９９】
［コンフィグレーション］
【０２００】
図８は、ビデオプレーン１３のコンフィグレーション(configration)の１つである、ビデオの画像を再生するビデオモードを示す図である。
【０２０１】
図８Ａは、ビデオモードの１つのモードMode#1であるmono-videoモード（以下、モノビデオモードともいう）を示している。
【０２０２】
モノビデオモードでは、3D対応プレーヤは、ビデオの2D画像であるモノ画像を、Lビデオプレーン１３Ｌ（L領域）、及び、Rビデオプレーン１３Ｒ（R領域）のうちの一方である、例えば、Lビデオプレーン１３Ｌのみに描画する（記憶させる）。
【０２０３】
そして、Lビデオプレーン１３Ｌのみに描画（記憶）されたビデオのモノ画像は、ミキサ１５に供給される。
【０２０４】
図８Ｂは、ビデオモードの１つのモードMode#2であるdual-mono-videoモード（以下、デュアルモノビデオモードともいう）を示している。
【０２０５】
デュアルモノビデオモードでは、3D対応プレーヤは、ビデオの2D画像であるモノ画像を、（左眼用画像として、）Lビデオプレーン１３Ｌ（L領域）に描画する（記憶させる）とともに、そのモノ画像を、（右眼用画像として、）Rビデオプレーン１３Ｒ（R領域）に描画する（記憶させる）。
【０２０６】
そして、Lビデオプレーン１３Ｌに描画（記憶）されたビデオのモノ画像、及び、Rビデオプレーン１３Ｒに描画されたビデオのモノ画像は、いずれも、ミキサ１５に供給される。
【０２０７】
図８Ｃは、ビデオモードの１つのモードMode#3であるstereo-videoモード（以下、ステレオビデオモードともいう）を示している。
【０２０８】
ステレオビデオモードでは、3D対応プレーヤは、ビデオの3D画像であるステレオ画像を構成する左眼用画像を、Lビデオプレーン１３Ｌに描画するとともに、そのステレオ画像を構成する右眼用画像を、Rビデオプレーン１３Ｒに描画する。
【０２０９】
そして、Lビデオプレーン１３Ｌに描画（記憶）されたビデオの左眼用画像、及び、Rビデオプレーン１３Ｒに描画されたビデオの右眼用画像は、いずれも、ミキサ１５に供給される。
【０２１０】
図８Ｄは、ビデオモードの１つのモードMode#4であるflattened-stereo-videoモード（以下、フラットステレオビデオモードともいう）を示している。
【０２１１】
フラットステレオビデオモードでは、3D対応プレーヤは、ビデオの3D画像であるステレオ画像を構成する左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像だけを、Lビデオプレーン１３Ｌ、及び、Rビデオプレーン１３Ｒの両方に描画し、他方の右眼用画像を捨てる。
【０２１２】
そして、Lビデオプレーン１３Ｌに描画（記憶）されたビデオの左眼用画像が、ミキサ１５に供給されるとともに、Rビデオプレーン１３Ｒに描画されたビデオの左眼用画像が、(右眼用画像として、)ミキサ１５に供給される。
【０２１３】
図８Ｅは、ビデオモードの１つのモードMode#5であるforced-mono-videoモード（以下、強制モノビデオモードともいう）を示している。
【０２１４】
強制モノビデオモードでは、3D対応プレーヤは、ビデオの3D画像であるステレオ画像を構成する左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像だけを、Lビデオプレーン１３Ｌ、及び、Rビデオプレーン１３Ｒのうちの一方である、例えば、Lビデオプレーン１３Ｌにだけ描画し、他方の右眼用画像を捨てる。
【０２１５】
そして、Lビデオプレーン１３Ｌに描画（記憶）されたビデオの左眼用画像だけが、ミキサ１５に供給される。
【０２１６】
図９は、バックグラウンドプレーン１４のコンフィグレーション(configration)の１つである、バックグラウンドの画像を再生するバックグラウンドモードを示す図である。
【０２１７】
図９Ａは、バックグラウンドモードの１つのモードMode#1であるdual-mono-backgroundモード（以下、デュアルモノバックグラウンドモードともいう）を示している。
【０２１８】
デュアルモノバックグラウンドモードでは、BD-Jアプリケーションは、バックグラウンドの2D画像であるモノ画像を、左眼用画像、及び、右眼用画像として、論理プレーン１０に描画する。
【０２１９】
そして、3D対応プレーヤは、論理プレーン１０に描画された左眼用画像を、Lバックグラウンドプレーン１４Ｌ（L領域）に描画する（記憶させる）とともに、論理プレーン１０に描画された右眼用画像を、Rバックグラウンドプレーン１４Ｒ（R領域）に描画する（記憶させる）。
【０２２０】
Lバックグラウンドプレーン１４Ｌに描画（記憶）されたバックグラウンドの左眼用画像、及び、Rバックグラウンドプレーン１４Ｒに描画されたバックグラウンドの右眼用画像は、いずれも、ミキサ１５に供給される。
【０２２１】
図９Ｂは、バックグラウンドモードの１つのモードMode#2であるstereo-backgroundモード（以下、ステレオバックグラウンドモードともいう）を示している。
【０２２２】
ステレオバックグラウンドモードでは、BD-Jアプリケーションは、バックグラウンドの3D画像であるステレオ画像を構成する左眼用画像、及び、右眼用画像を、論理プレーン１０に描画する。
【０２２３】
そして、3D対応プレーヤは、論理プレーン１０に描画された左眼用画像を、Lバックグラウンドプレーン１４Ｌに描画するとともに、論理プレーン１０に描画された右眼用画像を、Rバックグラウンドプレーン１４Ｒに描画する。
【０２２４】
Lバックグラウンドプレーン１４Ｌに描画されたバックグラウンドの左眼用画像、及び、Rバックグラウンドプレーン１４Ｒに描画されたバックグラウンドの右眼用画像は、いずれも、ミキサ１５に供給される。
【０２２５】
図９Ｃは、バックグラウンドモードの１つのモードMode#3であるflattened-stereo-backgroundモード（以下、フラットステレオバックグラウンドモードともいう）を示している。
【０２２６】
フラットステレオバックグラウンドモードでは、BD-Jアプリケーションは、バックグラウンドの3D画像であるステレオ画像を構成する左眼用画像、及び、右眼用画像を、論理プレーン１０に描画する。
【０２２７】
そして、3D対応プレーヤは、論理プレーン１０に描画された左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像だけを、Lバックグラウンドプレーン１４Ｌ、及び、Rバックグラウンドプレーン１４Ｒの両方に描画し、他方の右眼用画像を捨てる。
【０２２８】
Lバックグラウンドプレーン１４Ｌに描画されたバックグラウンドの左眼用画像は、ミキサ１５に供給されるとともに、Rバックグラウンドプレーン１４Ｒに描画されたバックグラウンドの左眼用画像は、(右眼用画像として、)いずれも、ミキサ１５に供給される。
【０２２９】
図９Ｄは、バックグラウンドモードの１つのモードMode#4であるmono-backgroundモード（以下、モノバックグラウンドモードともいう）を示している。
【０２３０】
モノバックグラウンドモードでは、BD-Jアプリケーションは、バックグラウンドの2D画像であるモノ画像を、論理プレーン１０に描画する。
【０２３１】
そして、3D対応プレーヤは、論理プレーン１０に描画されたモノ画像を、Lバックグラウンドプレーン１４Ｌ、及び、Rバックグラウンドプレーン１４Ｒのうちの一方である、例えば、Lバックグラウンドプレーン１４Ｌにだけ描画する。
【０２３２】
Lバックグラウンドプレーン１４Ｌに描画されたバックグラウンドのモノ画像は、ミキサ１５に供給される。
【０２３３】
図９Ｅは、バックグラウンドモードの１つのモードMode#5であるforced-mono-backgroundモード（以下、強制モノバックグラウンドモードともいう）を示している。
【０２３４】
強制モノバックグラウンドモードでは、BD-Jアプリケーションは、バックグラウンドの3D画像であるステレオ画像を構成する左眼用画像、及び、右眼用画像を、論理プレーン１０に描画する。
【０２３５】
そして、3D対応プレーヤは、論理プレーン１０に描画された左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像だけを、Lバックグラウンドプレーン１４Ｌ、及び、Rバックグラウンドプレーン１４Ｒの一方である、例えば、Lバックグラウンドプレーン１４Ｌだけに描画し、他方の右眼用画像を捨てる。
【０２３６】
Lバックグラウンドプレーン１４Ｌに描画されたバックグラウンドの左眼用画像は、ミキサ１５に供給される。
【０２３７】
ここで、図４に示した、グラフィクスを記憶するグラフィクスプレーン１１、ビデオを記憶するビデオプレーン１３（と、PGを記憶するPGプレーン１２）、及び、バックグラウンドを記憶するバックグラウンドプレーン１４を、まとめて、デバイスプレーンとも呼ぶこととする。
【０２３８】
3D対応プレーヤである図３のBDプレーヤでは、デバイスプレーンのコンフィグレーションが、（１）画枠、及び、色深度、（２）ビデオモード(Video mode)、（３）グラフィクスモード(BD-J Graphics mode)、並びに、（４）バックグラウンドモード(Background mode)、の４つの属性によって表現されるように定義されている。
【０２３９】
図１０は、デバイスプレーンであるグラフィクスプレーン１１、PGプレーン１２、ビデオプレーン１３、及び、バックグラウンドプレーン１４の関係を示している。
【０２４０】
グラフィクスプレーン１１は、左眼用画像を記憶する記憶領域であるL領域としてのLグラフィクスプレーン１１Ｌと、右眼用画像を記憶する記憶領域であるR領域としてのRグラフィクスプレーン１１Ｒとから構成される。そして、グラフィクスプレーン１１では、Lグラフィクスプレーン１１Ｌと、Rグラフィクスプレーン１１Ｒとが並んで配置されている。
【０２４１】
すなわち、図１０では、L領域であるLグラフィクスプレーン１１Ｌを上側にし、かつ、R領域であるRグラフィクスプレーン１１Ｒを下側にする形で、Lグラフィクスプレーン１１Ｌ、及び、Rグラフィクスプレーン１１Ｒを上下に並べて配置することにより、グラフィクスプレーン１１が構成されている。
【０２４２】
他のデバイスプレーン、すなわち、PGプレーン１２、ビデオプレーン１３、及び、バックグラウンドプレーン１４も、グラフィクスプレーン１１と同様に構成されている。
【０２４３】
グラフィクスプレーン１１、PGプレーン１２、ビデオプレーン１３、及び、バックグラウンドプレーン１４に描画された画像は、手前側から、グラフィクスプレーン１１、PGプレーン１２、ビデオプレーン１３、バックグラウンドプレーン１４の順番で重ねられ（ブレンディングされ）、その結果得られるL領域の画像と、R領域の画像とが、例えば、交互に、ディスプレイの表示画面を抽象化した論理スクリーン２１に描画（記憶）される。
【０２４４】
ここで、論理スクリーン２１の実体は、RAM１０４の一部の記憶領域である。
【０２４５】
また、デバイスプレーンは、いずれも１面分の画像の記憶領域であるL領域とR領域とを、上下に並べた記憶領域であり、したがって、２面分の画像の記憶領域であるが、論理スクリーン２１は、１面分の画像の記憶領域である。
【０２４６】
デバイスプレーンのコンフィグレーションは、3D画像については、２面分の画像の記憶領域であるデバイスプレーン全体に対して定義される。
【０２４７】
図１１は、デバイスプレーンのコンフィグレーションの１つである（１）画枠(Resolution)、及び、色深度(color-depth)を示している。
【０２４８】
図１１において、上から５行の画枠（デバイスプレーンの横×縦の画素数）（解像度）、及び、色深度は、3D画像の画枠、及び、色深度を示しており、残りの５行（下から５行）の画枠、及び、色深度は、2D画像の画枠、及び、色深度を示している。
【０２４９】
2D画像の１面分を、１面分の画像とすると、3D画像は、左眼用画像と右眼用画像で構成されるため、２面分の画像となる。また、デバイスプレーンは、いずれも１面分の画像の記憶領域であるL領域とR領域とを、上下に並べた記憶領域になっているため、そのようなデバイスプレーンに記憶される3D画像の画枠は、対応する2D画像（左眼用画像（、又は、右眼用画像）と同一のサイズの2D画像）の画枠の垂直方向の画素数を２倍にしたサイズになっている。
【０２５０】
なお、現行のBD規格において、2D画像については、グラフィクスプレーン１１に記憶されるグラフィクス（の画像）、及び、バックグラウンドプレーン１４に記憶されるバックグラウンド（の画像）の画枠は、いずれも、ビデオプレーン１３に記憶されるビデオ（の画像）の画枠と、原則、一致する。
【０２５１】
但し、2D画像については、ビデオプレーン１３に記憶されるビデオの画枠が、1920×1080画素である場合に、バックグラウンドプレーン１４に記憶されるバックグラウンドの画枠は、ビデオプレーン１３に記憶されるビデオの画枠と同様に、1920×1080画素であるが、グラフィクスプレーン１１に記憶されるグラフィクスの画枠が、ビデオプレーン１３に記憶されるビデオの画枠の横及び縦のそれぞれを1/2にした960×540画素であるケース（図１１において、下から４行目）（以下、2D画像の不一致ケースともいう）がある。
【０２５２】
この場合、グラフィクスプレーン１１に記憶される960×540画素のグラフィクスは、横及び縦のそれぞれを２倍にすることで、サイズを、ビデオプレーン１３に記憶されるビデオの画枠である1920×1080画素に一致させてから表示される。
【０２５３】
3D画像についても、2D画像の不一致ケースに対応するケース（以下、3D画像の不一致ケースともいう）が存在する。
【０２５４】
3D画像の不一致ケースでは、ビデオプレーン１３に記憶されるビデオの画枠が、1920×2160画素である場合に、バックグラウンドプレーン１４に記憶されるバックグラウンドの画枠が、ビデオプレーン１３に記憶されるビデオの画枠と同様に、1920×2160画素であるが、グラフィクスプレーン１１に記憶されるグラフィクスの画枠が、ビデオプレーン１３に記憶されるビデオの画枠の横及び縦のそれぞれを1/2にした960×1080画素となる（図１１において、上から３行目）。
【０２５５】
3D画像の不一致ケースでも、960×1080画素のグラフィクスは、横及び縦のそれぞれを２倍にすることで、サイズを、ビデオプレーン１３に記憶されるビデオの画枠である1920×2160画素に一致させてから表示される。
【０２５６】
図１２は、3D画像の不一致ケースにおいて、第２の描画方式（図５Ｂ）で、3D画像を描画する方法を説明する図である。
【０２５７】
第２の描画方式では、図５Ｂで説明したように、3D画像を生成する元となる元画像が、論理プレーン１０に描画され、その後、元画像を、オフセット(offset)値だけ水平方向にすらすことで生成される左眼用画像と右眼用画像が、グラフィクスプレーン１１に描画される。
【０２５８】
ここで、第２の描画方式は、元画像と、元画像のコピーとの２つの画像を上下に並べた縦長の画像の、上側の半分と下側の半分とのそれぞれを、オフセット値に従って水平方向にずらすことにより得られる２つの画像を、左眼用画像と右眼用画像として、グラフィクスプレーン１１に描画する方式であるともいえる。
【０２５９】
いま、第２の描画において、3D画像の不一致ケースにおける、960×1080画素のグラフィクスの、上側の半分と下側の半分とのそれぞれを、オフセット値に従って水平方向にすらすことで得られる、960×540画素の左眼用画像と右眼用画像を、グラフィクスプレーン１１に描画し、その後、グラフィクスプレーン１１の左眼用画像と右眼用画像の横及び縦のそれぞれを２倍にすると、その結果得られる左眼用画像と右眼用画像は、水平方向のずれ量が、オフセット値の２倍になっている画像となる。
【０２６０】
したがって、この場合、左眼用画像と右眼用画像によって表示される3D画像の奥行き方向の位置が、オーサが意図していた位置と異なる位置となる。
【０２６１】
そこで、3D画像の不一致ケースにおいて、第２の描画方式で、3D画像を描画する場合には、3D画像を生成する元となる元画像の横及び縦のそれぞれを２倍にした画像を、論理プレーン１０に描画し、その後、論理プレーン１０に描画された画像を、オフセット値だけ水平方向にすらすことで生成される左眼用画像と右眼用画像を、グラフィクスプレーン１１に描画する必要がある。
【０２６２】
このようにすることで、左眼用画像と右眼用画像によって表示される3D画像の奥行き方向の位置は、オーサが意図していた位置となる。
【０２６３】
図１３は、デバイスプレーンを説明する図である。
【０２６４】
現行のBD規格では、論理スクリーン２１としては、１面分の画像の記憶領域を想定しており、その１面分の画像の記憶領域である論理スクリーン２１に、左眼用画像(Left/Left-eye)と右眼用画像(Right/Right-eye)を、交互に描画することは、想定されていない。
【０２６５】
そして、現行のBD規格は、デバイスプレーンのコンフィグレーションと、論理スクリーン２１との間に、１対１の関係があることを前提としている。この前提の下では、3D画像の処理に、論理スクリーン２１として、左眼用画像を描画する論理スクリーンと、右眼用画像を描画する論理スクリーンとの、２つの別個の論理スクリーンが必要となる。
【０２６６】
そこで、3D対応プレーヤである図３のBDプレーヤでは、解像度の定義を縦方向に２倍にすることで、L/R用のデバイス・コンフィグレーションを１面で定義する。論理スクリーン自体は従来どおりの１面とし、そこにL/R用の出力を同時に描画する描画モデルを定義する。
【０２６７】
すなわち、図３のBDプレーヤは、BD規格のグラフィクス、ビデオ、又は、バックグラウンドの画像を記憶するデバイスプレーン（グラフィクスプレーン１１、ビデオプレーン１３（PGプレーン１２）、及び、バックグラウンドプレーン１４）を備える。
【０２６８】
デバイスプレーンは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であり、デバイスプレーンのコンフィグレーションは、２面分の画像の記憶領域であるデバイスプレーン全体に対して定義される。
【０２６９】
そして、デバイスプレーンに記憶された左眼用画像と右眼用画像は、例えば、交互に、論理スクリーン２１に描画される。
【０２７０】
このようにすることで、論理スクリーンとして、左眼用画像（L用の画像）を記憶する論理スクリーンと、右眼用画像（R用の画像）を記憶する論理スクリーンとを、別個に設けずに済む。
【０２７１】
［ビデオモード、グラフィクスモード、バックグラウンドモード］
【０２７２】
コンフィグレーションは、BD-Jオブジェクト(Object)のファイル中に、コンフィグレーションを指定するためのビットフィールドを設けて、そのビットフィールドによって指定（設定）することができる。
【０２７３】
図１４は、BD-Jオブジェクトのファイル中に、コンフィグレーションを指定するために設けるビットフィールドを示している。
【０２７４】
BD-Jオブジェクトのファイル中には、コンフィグレーションを指定するために、initial_configuration_id，initial_graphics_mode，initial_video_mode、及び、initial_background_modeの４つのフィールドを設けることができる。
【０２７５】
initial_configuration_idは、（１）画枠、及び、色深度を指定するフィールドである。initial_configuration_idがとる値を、configuration idとすると、configuration idとしては、以下の値を定義することとする。
【０２７６】
HD_1920_1080 = 1
HD_1280_720 = 2
SD_720_576 = 3
SD_720_480 = 4
QHD_960_540 = 5
HD_1920_2160 = 6
HD_1280_1440 = 7
SD_720_1152 = 8
SD_720_960 = 9
QHD_960_1080 = 10
【０２７７】
なお、HD_1920_1080は、図１１の上から６行目の画枠及び色深度を、HD_1280_720は、図１１の上から８行目の画枠及び色深度を、SD_720_576は、図１１の上から１０行目の画枠及び色深度を、SD_720_480は、図１１の上から９行目の画枠及び色深度を、QHD_960_540は、図１１の上から７行目の画枠及び色深度を、HD_1920_2160は、図１１の上から１行目の画枠及び色深度を、HD_1280_1440は、図１１の上から２行目の画枠及び色深度を、SD_720_1152は、図１１の上から５行目の画枠及び色深度を、SD_720_960は、図１１の上から４行目の画枠及び色深度を、QHD_960_1080は、図１１の上から３行目の画枠及び色深度を、それぞれ表す。
【０２７８】
initial_graphics_modeは、（３）グラフィクスモードを指定するフィールドである。
【０２７９】
ここで、グラフィクスモード(BD-J Graphics mode)としては、図６で説明したオフセットグラフィクスモード(offset)、ステレオグラフィクスモード(stereo)、モノグラフィクスモード(mono (Legacy playback mode))、強制モノグラフィクスモード(forced mono (Legacy playback mode))、及び、フラットステレオグラフィクスモード(flattened-stereo)の、合計で５つのモードがある。
【０２８０】
グラフィクスモードを指定するinitial_graphics_modeとしては、以下の値を定義することとする。
【０２８１】
GRAPHICS_MONO_VIEW = 22
GRAPHICS_STEREO_VIEW = 23
GRAPHICS_PLANE_OFFSET = 24
GRAPHICS_DUAL_MONO_VIEW = 25
GRAPHICS_FORCED_MONO_VIEW = 26
【０２８２】
なお、GRAPHICS_MONO_VIEWは、モノブラフィクスモードを、GRAPHICS_STEREO_VIEWは、ステレオグラフィクスモードを、GRAPHICS_PLANE_OFFSETは、オフセットグラフィクスモードを、GRAPHICS_DUAL_MONO_VIEWは、フラットステレオグラフィクスモードを、GRAPHICS_FORCED_MONO_VIEWは、強制モノグラフィクスモードを、それぞれ表す。
【０２８３】
また、initial_configuration_idが、1,2,3,4,5のいずれかに設定されている場合、initial_graphics_modeは、無視される。
【０２８４】
initial_video_modeは、（２）ビデオモードを指定するフィールドである。
【０２８５】
ここで、ビデオモード(Video mode)としては、図８で説明したデュアルモノビデオモード(dual-mono)、ステレオビデオモード(stereo)、フラットステレオビデオモード(flattened-stereo)、モノビデオモード(mono (Legacy playback mode))、及び、強制モノビデオモード(forced-mono)の、合計で５つのモードがある。
【０２８６】
ビデオモードを指定するinitial_video_modeとしては、以下の値を定義することとする。
【０２８７】
VIDEO_MONO_VIEW = 27
VIDEO_STEREO_VIEW = 28
VIDEO_FLATTENED_STEREO_VIEW = 29
VIDEO_DUAL_MONO_VIEW = 30
VIDEO_FORCED_MONO_VIEW = 31
【０２８８】
なお、VIDEO_MONO_VIEWは、モノビデオモードを、VIDEO_STEREO_VIEWは、ステレオビデオモードを、VIDEO_FLATTENED_STEREO_VIEWは、フラットステレオビデオモードを、VIDEO_DUAL_MONO_VIEWは、デュアルモノビデオモードを、VIDEO_FORCED_MONO_VIEWは、強制モノビデオモードを、それぞれ表す。
【０２８９】
また、initial_configuration_idが、1,2,3,4,5のいずれかに設定されている場合、initial_video_modeは、無視される。
【０２９０】
initial_background_modeは、（４）バックグラウンドモードを指定するフィールドである。
【０２９１】
ここで、バックグラウンドモード(Background mode)としては、図９で説明したデュアルモノバックグラウンドモード(dual-mono)、ステレオバックグラウンドモード(stereo)、フラットステレオバックグラウンドモード(flattened-stereo)、モノバックグラウンドモード(mono (Legacy playback mode))、及び、強制モノバックグラウンドモード(forced-mono)の、合計で５つのモードがある。
【０２９２】
バックグラウンドモードを指定するinitial_background_modeとしては、以下の値を定義することとする。
【０２９３】
BACKGROUND_MONO_VIEW = 17
BACKGROUND_STEREO_VIEW = 18
BACKGROUND_FLATTENED_STEREO_VIEW = 19
BACKGROUND_DUAL_MONO_VIEW = 20
BACKGROUND_FORCED_MONO_VIEW = 21
【０２９４】
なお、BACKGROUND_MONO_VIEWは、モノバックグラウンドモードを、BACKGROUND_STEREO_VIEWは、ステレオバックグラウンドモードを、BACKGROUND_FLATTENED_STEREO_VIEWは、フラットステレオバックグラウンドモードを、BACKGROUND_DUAL_MONO_VIEWは、デュアルモノバックグラウンドモードを、BACKGROUND_FORCED_MONO_VIEWは、強制モノバックグラウンドモードを、それぞれ表す。
【０２９５】
また、initial_configuration_idが、1,2,3,4,5のいずれかに設定されている場合、initial_background_modeは、無視される。
【０２９６】
ここで、BD-J Object ファイルでは、initial_configuration_id，initial_graphics_mode，initial_video_mode、及び、initial_background_modeのうちの、initial_configuration_idのみを指定する仕様を採用することができる。
【０２９７】
BD-J Object ファイルにおいて、initial_configuration_idのみを指定する場合、initial_video_mode，initial_graphics_mode、及び、initial_background_modeのデフォルトの規定値が必要となる。
【０２９８】
図１５は、initial_video_mode，initial_graphics_mode、及び、initial_background_modeのデフォルトの規定値を示している。
【０２９９】
なお、ビデオモード(initial_video_mode)のSTEREO_VIEWは、上述のVIDEO_STEREO_VIEW 、又は、VIDEO_FLATTENED_STEREO_VIEWを表し、MONO_VIEWは、上述のVIDEO_MONO_VIEW、又は、VIDEO_DUAL_MONO_VIEWを表す。
【０３００】
また、グラフィクスモード(initial_graphics_mode)のSTEREO_VIEWは、上述のGRAPHICS_STEREO_VIEW、又は、GRAPHICS_PLANE_OFFSETを表し、MONO_VIEWは、上述のGRAPHICS_MONO_VIEW、又は、GRAPHICS_DUAL_MONO_VIEWを表す。
【０３０１】
さらに、バックグラウンドモード(initial_background_mode)のSTEREO_VIEWは、上述のBACKGROUND_STEREO_VIEW、又は、BACKGROUND_FLATTENED_STEREO_VIEWを表し、MONO_VIEWは、上述のBACKGROUND_MONO_VIEW、又は、BACKGROUND_DUAL_MONO_VIEWを表す。
【０３０２】
［コンフィグレーションの変更］
【０３０３】
次に、コンフィグレーションの変更について説明する。
【０３０４】
コンフィグレーションは、BD-Jタイトル起動時、PlayList再生時のオートリセットが行われるとき（動的変更）、及び、BD-JアプリケーションによるAPIの呼び出しが行われるとき（動的変更）のそれぞれのタイミングで、変更することができる。
【０３０５】
従来のmono video + mono graphicsの再生時とは異なり、AV再生中であってもplane configurationの変更は可能である。
【０３０６】
すなわち、3D対応プレーヤでは、AVストリーム（ビデオ）を再生しているときに、コンフィグレーションを変更することができる。
【０３０７】
Mono-viewと同様にKEEP_RESOLUTION再生以外の再生では、画枠が揃うように（BD-Jタイトル起動時は、video/backgroundがgraphicsの画枠に揃うように、PlayList再生時は、graphics/backgroundがvideoの画枠に揃うように、BD-JアプリケーションによるAPI呼び出し時は、APIで設定したプレーンの画枠に、それ以外の設定されていないプレーンの画枠が揃うように）、コンフィグレーションの変更の処理を、3D対応プレーヤが行う。また、コンフィグレーションの変更時のエラー処理は、3D対応プレーヤに依存する。
【０３０８】
ここで、KEEP_RESOLUTION再生とは、SD(Standard definition)ビデオとHD(High Definition)グラフィックス、HDバックグラウンドの合成をする再生モードであり、1920×1080画素のGraphics、720×480画素のVideo+PG、及び、1920×1080画素のBackgroundが合成される場合と、1920×1080画素のGraphics、720×576画素のVideo+PG、及び、1920×1080画素のBackgroundが合成される場合とがある。なお、HD画像ではあるが、1280×720画素の画像の再生は、KEEP_RESOLUTION再生には含まれない。
【０３０９】
図１６及び図１７に、KEEP_RESOLUTION再生以外の再生の、Video+PG，BD-J graphics、及び、backgroundの解像度（画枠）の組み合わせを示す。なお、図１７は、図１６に続く図である。
【０３１０】
図１８は、コンフィグレーションの変更の処理の例を示している。
【０３１１】
図１８Ａは、グラフィクス（グラフィクスプレーン１１）のコンフィグレーション（ビデオモード）が、STEREO_VIEWからMONO_VIEWに変更された場合の、3D対応プレーヤの処理の例を示している。
【０３１２】
例えば、3D対応プレーヤにおいて、ビデオモードが、STEREO_VIEWであり、1920×2160画素のグラフィクスプレーン１１を構成するLグラフィクスプレーン１１Ｌ、及び、Rグラフィクスプレーン１１Ｒに、グラフィクスが描画されている場合に、グラフィクスプレーン１１（としての記憶領域）をリセットすることなしに、ビデオモードが、STEREO_VIEWから、MONO_VIEWに変更されたとする。
【０３１３】
この場合、3D対応プレーヤでは、グラフィクスプレーン１１を構成するLグラフィクスプレーン１１Ｌ、及び、Rグラフィクスプレーン１１Ｒのうちの一方である、例えば、Lグラフィクスプレーン１１Ｌに記憶（描画）された画像だけが、論理スクリーン２１に供給されて表示され、他方であるRグラフィクスプレーン１１Ｒに記憶された画像は、捨てられる。
【０３１４】
なお、この場合、3D対応プレーヤは、エラーとして（画像の再生を）強制終了しても良い。
【０３１５】
図１８Ｂは、ビデオモードが、MONO_VIEWからSTEREO_VIEWに変更された場合の、3D対応プレーヤの処理の例を示している。
【０３１６】
例えば、3D対応プレーヤにおいて、ビデオモードが、MONO_VIEWであり、1920×1080画素のグラフィクスプレーン１１を構成するLグラフィクスプレーン１１Ｌだけに、グラフィクスが描画されている場合に、グラフィクスプレーン１１をリセットすることなしに、ビデオモードが、MONO_VIEWから、STEREO_VIEWに変更されたとする。
【０３１７】
この場合、3D対応プレーヤでは、Lグラフィクスプレーン１１Ｌに描画されたグラフィクスが、Rグラフィクスプレーン１１Ｒにコピーされ、Lグラフィクスプレーン１１Ｌに描画されたグラフィクスが、左眼用画像として、論理スクリーン２１に供給されるとともに、Rグラフィクスプレーン１１Ｒにコピーされたグラフィクスが、右眼用画像として、論理スクリーン２１に供給される。
【０３１８】
なお、この場合、3D対応プレーヤは、エラーとして（画像の再生を）強制終了しても良い。
【０３１９】
［BD-Jタイトル起動時のコンフィグレーションの変更］
【０３２０】
BD-Jタイトル起動時のコンフィグレーションの変更には、以下の３つのルール#1-1，#1-2、及び、#1-3が、原則として適用される。
【０３２１】
すなわち、ルール#1-1は、（デバイスプレーンの）コンフィグレーションにおいて、Graphics，Video、及び、Backgroundの３つの画像の解像度（画枠）は、常に、同一の解像度でなければならない、というルールである。
【０３２２】
ルール#1-2は、KEEP_RSOLUTION再生以外でPlayList再生を行う場合は、コンフィグレーションにおいて、Graphics，Video、及び、Backgroundの３つの画像の解像度（画枠）は、ビデオの解像度に揃っていなければならない、というルールである。
【０３２３】
ルール#1-3は、コンフィグレーションにおいて、グラフィクスが、QHD graphicsである場合、縦方向に２倍、横方向に２倍でスケーリングされた後の解像度をコンフィグレーションの解像度とする、というルールである。
【０３２４】
なお、BD-Jオブジェクトのファイルのinitial_configuration_idによりデフォルト値の規定にしたがって、video mode, graphics mode, background modeそれぞれの値が決定される（ビデオモード、グラフィクスモード、及び、バックグラウンドモードが決定される）。
【０３２５】
また、BD-Jオブジェクトのファイルのautostart_first_PlayList_flagが1bに設定されていた場合、video plane のコンフィグレーションについては、デフォルト値ではなく、PlayList再生時のオートリセット（動的変更）のルールにしたがう。
【０３２６】
［PlayList再生時のオートリセットが行われるときのコンフィグレーションの変更（動的変更）］
【０３２７】
PlayList再生時のオートリセットが行われるときのコンフィグレーションの変更には、以下の３つのルール#2-1，#2-2、及び、#2-3が、原則として適用される。
【０３２８】
すなわち、ルール#2-1は、（デバイスプレーンの）コンフィグレーションにおいて、Graphics，Video、及び、Backgroundの３つの画像の解像度（画枠）は、常に、同一の解像度でなければならない、というルールである。
【０３２９】
ルール#2-2は、KEEP_RSOLUTION再生以外でPlayList再生を行う場合は、コンフィグレーションにおいて、Graphics，Video、及び、Backgroundの３つの画像の解像度（画枠）は、ビデオの解像度に揃っていなければならない、というルールである。
【０３３０】
ルール#2-3は、コンフィグレーションにおいて、グラフィクスが、QHD graphicsである場合、縦方向に２倍、横方向に２倍でスケーリングされた後の解像度をコンフィグレーションの解像度とする、というルールである。
【０３３１】
PlayList再生開始時にvideo plane configurationは、PlayListのビデオ属性に自動的に揃えられる。
【０３３２】
コンフィグレーションが、PlayListのビデオ属性に自動的に揃えられる場合、現行のBD規格では、graphics plane及びbackground planeも、自動的にvideo planeの属性に揃えることがBDプレーヤ側の必須機能として規定されている。しかしながら、3D対応プレーヤでは、stereo PlayList（3D画像を再生するプレイリスト）からmono PlayList（2D画像を再生するプレイリスト）、又は、mono PlayListからstereo PlayListへの切り替え時においては、graphics及びbackgroundのmode（グラフィクスモード、及び、バックグラウンドモード）は、所定のinitial values（所定の初期値）に設定される。
【０３３３】
図１９に、グラフィクスモード、及び、バックグラウンドモードの所定の初期値を示す。
【０３３４】
図２０は、1920×2160画素の3D画像（ステレオ画像）を再生する場合に再生されるグラフィクス、及び、バックグラウンドの画像を示している。
【０３３５】
グラフィクスとしては、1920×2160画素の3D画像が再生され、バックグラウンドとしては、1920×2160画素の3D画像が再生される。
【０３３６】
［BD-JアプリケーションによるAPIの呼び出しが行われるときのコンフィグレーションの変更（動的変更）］
【０３３７】
BD-JアプリケーションによるAPIの呼び出しが行われるときのコンフィグレーションの変更には、以下の３つのルール#3-1，#3-2、及び、#3-3が、原則として適用される。
【０３３８】
すなわち、ルール#3-1は、（デバイスプレーンの）コンフィグレーションにおいて、Graphics，Video、及び、Backgroundの３つの画像の解像度（画枠）は、常に、同一の解像度でなければならない、というルールである。
【０３３９】
ルール#3-2は、KEEP_RSOLUTION再生以外でPlayList再生を行う場合は、コンフィグレーションにおいて、Graphics，Video、及び、Backgroundの３つの画像の解像度（画枠）は、ビデオの解像度に揃っていなければならない、というルールである。
【０３４０】
ルール#3-3は、コンフィグレーションにおいて、グラフィクスが、QHD graphicsである場合、縦方向に２倍、横方向に２倍でスケーリングされた後の解像度をコンフィグレーションの解像度とする、というルールである。
【０３４１】
図２１は、BD-JアプリケーションによるAPIの呼び出しによる、コンフィグレーションとしての解像度（画枠）の変更を説明する図である。
【０３４２】
グラフィクスの3D画像(stereo G)、ビデオの3D画像(stereo V)、及び、バックグラウンドの3D画像(stereo B)の再生中に、APIの呼び出しによって、グラフィクスの3D画像の解像度が変更された場合、3D対応BDプレーヤは、ビデオの3D画像、及び、バックグラウンドの3D画像の解像度を、上述のルール#3-1，#3-2、及び、#3-3に従って、自動的に変更する。
【０３４３】
また、グラフィクスの3D画像(stereo G)、ビデオの3D画像(stereo V)、及び、バックグラウンドの3D画像(stereo B)の再生中に、APIの呼び出しによって、バックグラウンドの3D画像の解像度が変更された場合、3D対応BDプレーヤは、グラフィクスの3D画像、及び、ビデオの3D画像の解像度を、上述のルール#3-1，#3-2、及び、#3-3に従って、自動的に変更する。
【０３４４】
さらに、グラフィクスの3D画像(stereo G)、ビデオの3D画像(stereo V)、及び、バックグラウンドの3D画像(stereo B)の再生中に、APIの呼び出しによって、ビデオの3D画像の解像度が変更された場合、3D対応BDプレーヤは、グラフィクスの3D画像、及び、バックグラウンドの3D画像の解像度を、上述のルール#3-1，#3-2、及び、#3-3に従って、自動的に変更する。
【０３４５】
［plane configuration のmode の変更（グラフィクスモード、ビデオモード、及び、バックグラウンドモードの変更）］
【０３４６】
3D対応プレーヤは、ステレオグラフィクスモード(stereo graphics)と、オフセットグラフィクスモード(offset graphics)との間のグラフィクスモードの変更（切り替え）を、シームレスに行うことができる。
【０３４７】
図２２は、グラフィクスモードの変更を説明する図である。
【０３４８】
図２２Ａは、オフセットグラフィクスモードでのグラフィクスの3D画像(plane offset gfx(graphics))、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの3D画像(stereo background)の再生中に、グラフィクスモードが、オフセットグラフィクスモードから、ステレオグラフィクスモードに変更された場合を示している。
【０３４９】
この場合、オフセットグラフィクスモードでのグラフィクスの3D画像(plane offset gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの3D画像(stereo background)の再生から、ステレオグラフィクスモードでのグラフィクスの3D画像(stereo gfx(graphics))、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの3D画像(stereo background)の再生に切り替えが行われるが、この切り替えは、シームレスに行うことができる。
【０３５０】
逆の切り替え、すなわち、ステレオグラフィクスモードでのグラフィクスの3D画像(stereo gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの3D画像(stereo background)の再生から、オフセットグラフィクスモードでのグラフィクスの3D画像(plane offset gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの3D画像(stereo background)の再生への切り替えも、シームレスに行うことができる。
【０３５１】
図２２Ｂは、ステレオグラフィクスモードでのグラフィクスの3D画像(stereo gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの2D画像(mono background)の再生中に、グラフィクスモードが、ステレオグラフィクスモードから、オフセットグラフィクスモードに変更された場合を示している。
【０３５２】
この場合、ステレオグラフィクスモードでのグラフィクスの3D画像(stereo gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの2D画像(mono background)の再生から、オフセットグラフィクスモードでのグラフィクスの3D画像(plane offset gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの2D画像(mono background)の再生に切り替えが行われるが、この切り替えは、シームレスに行うことができる。
【０３５３】
逆の切り替え、すなわち、オフセットグラフィクスモードでのグラフィクスの3D画像(plane offset gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの2D画像(mono background)の再生から、ステレオグラフィクスモードでのグラフィクスの3D画像(stereo gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、バックグラウンドの2D画像(mono background)の再生への切り替えも、シームレスに行うことができる。
【０３５４】
図２３は、ステレオグラフィクスモードから、オフセットグラフィクスモードへのグラフィクスモードの変更を示している。
【０３５５】
グラフィクスモードが、ステレオグラフィクスモード(stereo gfx)から、オフセットグラフィクスモード(Plane offset gfx)に変更された場合、ビデオ(L/R(Left/Right) video)、及び、バックグラウンド(L/R(Left/Right) background)の再生は、そのまま続行される。
【０３５６】
一方、グラフィクスについては、ステレオグラフィクスモードでのグラフィクスの3D画像(stereo gfx)から、オフセットグラフィクスモードでのグラフィクスの3D画像(plane offset gfx)に、再生の対象が切り替えられる。
【０３５７】
この再生対象の切り替え方の実装は、個々の3D対応プレーヤに依存する。但し、再生対象の切り替え時に、いわゆるブラックアウト(black-out)や、AV（ビデオ）の再生の中断が生じることは避けるべきである。
【０３５８】
なお、グラフィクスモードの変更時に、解像度も変更される場合には、ブラックアウトが生じるおそれがある。
【０３５９】
次に、3D対応プレーヤは、ステレオバックグラウンドモード(stereo background)と、モノバックグラウンドモード(mono background)との間のバックグラウンドモードの変更（切り替え）を、シームレスに行うことができる。
【０３６０】
図２４は、バックグラウンドモードの変更を説明する図である。
【０３６１】
図２４Ａは、グラフィクスの3D画像(stereo gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、ステレオバックグラウンドモードでのバックグラウンドの3D画像(stereo background)の再生中に、バックグラウンドモードが、ステレオバックグラウンドモードから、モノバックグラウンドモードに変更された場合を示している。
【０３６２】
この場合、グラフィクスの3D画像(stereo gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、ステレオバックグラウンドモードでのバックグラウンドの3D画像(stereo background)の再生から、グラフィクスの3D画像(stereo gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、モノバックグラウンドモードでのバックグラウンドの2D画像(mono background)の再生に切り替えが行われるが、この切り替えは、シームレスに行うことができる。
【０３６３】
逆の切り替えも、シームレスに行うことができる。
【０３６４】
図２４Ｂは、グラフィクスの3D画像(plane offset gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、モノバックグラウンドモードでのバックグラウンドの2D画像(mono background)の再生中に、バックグラウンドモードが、モノバックグラウンドモードから、ステレオバックグラウンドモードに変更された場合を示している。
【０３６５】
この場合、グラフィクスの3D画像(plane offset gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、モノバックグラウンドモードでのバックグラウンドの2D画像(mono background)の再生から、グラフィクスの3D画像(plane offset gfx)、ビデオ（及びPG）の3D画像(stereo video + PG)、ステレオバックグラウンドモードでのバックグラウンドの3D画像(stereo background)の再生に切り替えが行われるが、この切り替えは、シームレスに行うことができる。
【０３６６】
逆の切り替えも、シームレスに行うことができる。
【０３６７】
次に、3D対応プレーヤは、ステレオビデオモード(stereo video)、フラットステレオビデオモード(flattened-stereo video)、及び、デュアルモノビデオモード(dual-mono video)の間のビデオモードの変更（切り替え）を、シームレスに行うことができる。
【０３６８】
図２５は、ビデオモードの変更を説明する図である。
【０３６９】
図２５Ａは、グラフィクスの3D画像(stereo gfx)、及び、バックグラウンドの3D画像(stereo background)とともに、ビデオの画像が再生されている場合の、ビデオモードの変更を説明する図である。
【０３７０】
ビデオモードが、ステレオビデオモードであり、ステレオビデオモードでのビデオ（及びPG）の3D画像(stereo video + PG)が再生されている場合において、ビデオモードが、ステレオビデオモードから、フラットステレオビデオモードに変更されたとき、ビデオの画像は、ステレオビデオモードでのビデオ（及びPG）の3D画像(stereo video + PG)から、フラットステレオビデオモードでのビデオ（及びPG）の3D画像(flattened video + PG)に切り替えがされるが、この切り替えは、シームレスに行うことができる。
【０３７１】
逆の切り替えも、シームレスに行うことができる。
【０３７２】
また、ビデオモードが、フラットステレオビデオモードであり、フラットステレオビデオモードでのビデオ（及びPG）の3D画像(flattened video + PG)が再生されている場合において、ビデオモードが、フラットステレオビデオモードから、デュアルモノビデオモードに変更されたとき、ビデオの画像は、フラットステレオビデオモードでのビデオ（及びPG）の3D画像(flattened video + PG)から、デュアルモノビデオモードでのビデオ（及びPG）の3D画像(dual-mono video + PG)に切り替えがされるが、この切り替えは、シームレスに行うことができる。
【０３７３】
逆の切り替えも、シームレスに行うことができる。
【０３７４】
図２５Ｂは、グラフィクスの3D画像(plane offset gfx)、及び、バックグラウンドの2D画像(mono background)とともに、ビデオの画像が再生されている場合の、ビデオモードの変更を説明する図である。
【０３７５】
ビデオモードが、デュアルモノビデオモードであり、デュアルモノビデオモードでのビデオ（及びPG）の3D画像(dual-mono video + PG)が再生されている場合において、ビデオモードが、デュアルモノビデオモードから、フラットステレオビデオモードに変更されたとき、ビデオの画像は、デュアルビデオモードでのビデオ（及びPG）の3D画像(dual-mono video + PG)から、フラットステレオビデオモードでのビデオ（及びPG）の3D画像(flattened video + PG)に切り替えがされるが、この切り替えは、シームレスに行うことができる。
【０３７６】
逆の切り替えも、シームレスに行うことができる。
【０３７７】
また、ビデオモードが、フラットステレオビデオモードであり、フラットステレオビデオモードでのビデオ（及びPG）の3D画像(flattened video + PG)が再生されている場合において、ビデオモードが、フラットステレオビデオモードから、ステレオビデオモードに変更されたとき、ビデオの画像は、フラットステレオビデオモードでのビデオ（及びPG）の3D画像(flattened video + PG)から、ステレオビデオモードでのビデオ（及びPG）の3D画像(stereo video + PG)に切り替えがされるが、この切り替えは、シームレスに行うことができる。
【０３７８】
逆の切り替えも、シームレスに行うことができる。
【０３７９】
［コンフィグレーションを変更する3D対応プレーヤ］
【０３８０】
現行のBD規格では、コンフィグレーションが、解像度（画枠）、及び、色深度で規定されている。このため、コンフィグレーションの変更は、解像度を変更することになる。しかしながら、解像度の変更時には、一時的に、再生が停止し、表示画面がブラックアウトの状態になる。
【０３８１】
一方、例えば、Graphics planeのmono-logical-plane + offset valueの再生モードなどを、1920×1080/32bppのコンフィグレーションとして規定することができるが、この場合、例えば、mono-logical-plane + offset valueからstereo-logical-planeへのスイッチングなどでブラックアウトを誘発してしまう可能性がある。
【０３８２】
そこで、3D対応プレーヤでは、plane configurationを2面定義（1920×2160画素、1280×1440画素、（960×1080画素、）720×960画素、720×1152画素のconfiguration）に統一し、解像度／色深度以外の属性をmode値として定義する。すると、解像度を変更せずにmodeのみを変更する場合は、表示画面をブラックアウトの状態とすることなく、コンフィグレーションを変更することが可能となる。さらに、レガシープレーヤと同様に、Configuration Preference設定APIを呼び出すことにより、コンフィグレーションの変更を行うことができる。
【０３８３】
図２６は、そのような3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０３８４】
図２６の3D対応プレーヤでは、左眼用画像を記憶する１面分の画像の記憶領域であるL領域と、右眼用画像を記憶する１面分の画像の記憶領域であるR領域との、２面分の画像の記憶領域が並んで配置された記憶領域であるデバイスプレーンのコンフィグレーションが、そのデバイスプレーン全体に対して定義されている。
【０３８５】
また、グラフィクスモードとして、モノグラフィクスモード、ステレオグラフィクスモード、オフセットグラフィクスモード、強制モノグラフィクスモード、及び、フラットステレオグラフィクスモードの５つのモードが定義されている。さらに、ビデオモードとして、モノビデオモード、デュアルモノビデオモード、ステレオビデオモード、強制モノビデオモード、及び、フラットステレオビデオモードの５つのモードが定義されている。そして、バックグラウンドモードとして、モノバックグラウンドモード、デュアルモノバックグラウンドモード、ステレオバックグラウンドモード、強制モノバックグラウンドモード、及び、フラットステレオバックグラウンドモードの５つのモードが定義されている。
【０３８６】
また、デバイスプレーンのコンフィグレーションは、（１）画枠（解像度）、及び、色深度の他、（２）ビデオモード、（３）グラフィクスモード、並びに、（４）バックグラウンドモードを含み、（２）ビデオモード、（３）グラフィクスモード、及び、（４）バックグラウンドモードの設定（変更）は、コンフィグレーションモード設定APIによって行うことができる。
【０３８７】
図２６の3D対応プレーヤでは、ビデオモード、グラフィクスモード、又は、バックグラウンドモードを変更する場合、BD-Jアプリケーションは、コンフィグレーションモード(configuration mode)設定APIを呼び出し、ビデオモード、グラフィクスモード、又は、バックグラウンドモードの変更（設定）を要求する。
【０３８８】
コンフィグレーションモード設定APIは、BD-Jアプリケーションからの要求に応じて、プレゼンテーションエンジン(Presentation Engine)、ビデオデコーダ(video decoder)、ディスプレイプロセッサ(Display processor)のうちの必要なものを、直接的に、又は間接的に制御することで、ビデオモード、グラフィクスモード、又は、バックグラウンドモードを変更（設定）する。
【０３８９】
一方、画枠（解像度）、及び、色深度を変更する場合、BD-Jアプリケーションは、解像度設定APIを呼び出し、解像度等の変更（設定）を要求する。
【０３９０】
解像度設定APIは、BD-Jアプリケーションからの要求に応じて、プレゼンテーションエンジン、ビデオデコーダ、ディスプレイプロセッサのうちの必要なものを、直接的に、又は間接的に制御することで、画枠（解像度）、及び、色深度を変更（設定）する。
【０３９１】
なお、図２６において、プレゼンテーションエンジン(Presentation Engine)は、オーディオ、ビデオ、及び、HDMVグラフィクスのデコード機能とプレゼンテーション機能(Presentation functions)を、BDの再生を制御する、図示せぬプレイバックコントロールエンジン(Playback Control Engine)に提供する。
【０３９２】
また、図２６において、ビデオデコーダ(Video decoder)は、画像のデコードを行う。さらに、ディスプレイプロセッサ(Display processor)は、Graphics plane, video(video + PG) plane, background planeの各プレーンを重ね合わせた後で、その重ね合わせによって得られる画像を、BDプレーヤに接続されたディスプレイに出力するハードウェアである。
【０３９３】
以上のように、デバイスプレーンのコンフィグレーションを、２面分の画像の記憶領域であるデバイスプレーン全体に対して定義し、デバイスプレーンのコンフィグレーションに、解像度（画枠）、及び、色深度とは別に、グラフィクスモード等を含める。そして、3D対応プレーヤでは、コンフィグレーションモード設定APIの呼び出しによって、グラフィクスモード等を設定する。このようにすることで、解像度を変更しないで、グラフィクスモード等を変更することができる。
【０３９４】
［PG / Text subtitleコンフィグレーションの切り替え］
【０３９５】
BD-Jアプリケーションからは、Video＋PG/TextST(Text subtitle)は、ひとまとめで（区別なく）扱われる。また、BD-Jアプリケーションは、PGプレーン１２を個別に制御することはできないが、ビデオの位置やスケーリング（サイズ）の制御を行うことができる。なお、現行のBD規格では、BD-Jアプリケーションから、ビデオの位置やスケーリングの制御を行った場合、PG/TextSTは、ビデオにアラインすることになっている。
【０３９６】
したがって、ビデオのスケーリングの制御が行われる場合、PGプレーンオフセット値は、ビデオをスケーリングするスケーリング比率（拡大率、又は、縮小率）でスケーリングされる。
【０３９７】
一方、3D対応プレーヤでは、PG（TextSTを含む）について、PGを再生する再生モードとして、2D画像であるモノ画像のPGの画像を再生するモード(1-plane(legacy playback))、3D画像であるステレオ画像のPGの画像を再生するモード(2-planes)、及び、2D画像とオフセット値とから生成される（視差がある）左眼用画像と右眼用画像とによって、3D画像のPGを再生するモード(1-plane+offset)を設定することできることが望ましい。
【０３９８】
そこで、3D対応プレーヤでは、PGストリームの選択にて、PGプレーン制御（1-plane(legacy playback)と1-plane+offset と2-planesとの間のコンフィグレーションの切り替え）を、間接的に行う。
【０３９９】
そのため、HDMV PGについては、BD規格のPGの画像のPGストリームとして、2D画像であるモノ画像のPGの画像のPGストリームであるモノPGストリーム、3D画像であるステレオ画像のPGの画像のPGストリームであるステレオPGストリーム、及び、モノ画像に視差を与えるオフセット値とともに、ステレオ画像を生成するのに用いられる、モノ画像のPGの画像のPGストリームであるオフセット用PGストリーム(例えば、モノ画像のPGの画像とオフセット値とを含むストリーム）を定義する。
【０４００】
さらに、HDMV PGについては、mono 1-stream(legacy content)モード、L/R 2 streamモード、及び、1-stream + plane-offsetモードを、PGの画像を再生するPG再生モードとして定義する。
【０４０１】
ここで、PG再生モードが、mono 1-streamモードである場合には、モノPGストリームを用いて、2D画像のPGの画像が再生される。
【０４０２】
PG再生モードが、L/R 2 streamモードである場合には、ステレオPGストリームを用いて、左眼用画像と右眼用画像を再生することで、3D画像のPGの画像が再生される。
【０４０３】
PG再生モードが、1-stream + plane-offsetモードである場合には、オフセット用PGストリームを用いて、オフセット値に基づき、左眼用画像と右眼用画像を生成し、その左眼用画像と右眼用画像を再生することで、3D画像のPGの画像が再生される。
【０４０４】
また、HDMV TextSTについては、BD規格のTextSTの画像のTextSTストリームとして、2D画像であるモノ画像のTextSTの画像のTextSTストリームであるモノTextSTストリーム、3D画像であるステレオ画像のTextSTの画像のTextSTストリームであるステレオTextSTストリーム、及び、モノ画像に視差を与えるオフセット値とともに、ステレオ画像を生成するのに用いられる、モノ画像のTextSTの画像のTextSTストリームであるオフセット用TextSTストリーム(例えば、モノ画像のTextSTの画像とオフセット値とを含むストリーム）を定義する。
【０４０５】
さらに、HDMV TextSTについては、mono 1-stream(legacy content)モード、L/R 2 streamモード、及び、1-stream + plane-offsetモードを、TextSTの画像を再生するTextST再生モードとして定義する。
【０４０６】
ここで、TextST再生モードが、mono 1-streamモードである場合には、モノTextSTストリームを用いて、2D画像のTextSTの画像が再生される。
【０４０７】
TextST再生モードが、L/R 2 streamモードである場合には、ステレオTextSTストリームを用いて、左眼用画像と右眼用画像を再生することで、3D画像のTextSTの画像が再生される。
【０４０８】
TextST再生モードが、1-stream + plane-offsetモードである場合には、オフセット用TextSTストリームを用いて、オフセット値に基づき、左眼用画像と右眼用画像を生成し、その左眼用画像と右眼用画像を再生することで、3D画像のTextSTの画像が再生される。
【０４０９】
3D対応プレーヤでは、ストリームを選択するAPIを通して、PG/TextSTのコンフィグレーションを切り替える（設定する）ことができる。
【０４１０】
図２７は、各ビデオモードで選択することができるPG再生モード、及び、TextST再生モードを示している。
【０４１１】
HDMV PGについては、ビデオモード（コンフィグレーション）が、モノビデオモード(mono)、フラットステレオビデオモード(flattened stereo)、デュアルモノビデオモード(dual-mono)、強制モノビデオモード(forced-mono)、及び、ステレオビデオモード(stereo)のいずれの場合であっても、1-stream + plane-offsetモード(mono + offset)（オフセット用PGストリーム）を選択することが可能である。
【０４１２】
したがって、オフセット用PGストリームは、ビデオモードが、モノビデオモード、フラットステレオビデオモード、デュアルモノビデオモード、強制モノビデオモード、及び、ステレオビデオモードのいずれの場合であっても選択することが可能である。
【０４１３】
また、HDMV PGについては、ビデオモードが、フラットステレオビデオモード(flattened stereo)、デュアルモノビデオモード(dual-mono)、強制モノビデオモード(forced-mono)、及び、ステレオビデオモード(stereo)のうちのいずれの場合であっても、L/R 2 streamモード(stereo)（ステレオPGストリーム）を選択することが可能である。
【０４１４】
したがって、ステレオPGストリームは、ビデオモードが、フラットステレオビデオモード、デュアルモノビデオモード、強制モノビデオモード、及び、ステレオビデオモードのうちのいずれの場合であっても選択することが可能である。
【０４１５】
但し、ビデオモードが、モノビデオモード(mono)、フラットステレオビデオモード(flattened stereo)、強制モノビデオモード(forced-mono)、又は、デュアルモノビデオモード(dual-mono)の場合に、オフセット用PGストリーム(mono + offset)が選択されたとき、オフセット用PGストリームのモノ画像が、オフセット値を無視して（オフセット値を０にセットして）、再生される。
【０４１６】
また、ビデオモードが、モノビデオモード(mono)、又は、強制モノビデオモード(forced-mono)の場合に、ステレオPGストリーム(stereo)が選択されたとき、ステレオPGストリームに対応するステレオ画像を構成する左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像(L PG stream)だけが再生される。
【０４１７】
さらに、ビデオモードが、フラットステレオビデオモード、又は、デュアルモノビデオモードの場合に、ステレオPGストリームが選択されたとき、ストリームに割り当てられる番号であるストリーム番号が、選択されたステレオPGストリームに一致するオフセット用PGストリームが存在すれば（BDに記録されていれば）、選択されたステレオPGストリームに代えて、そのステレオPGストリームとストリーム番号が同一のオフセット用PGストリームのモノ画像が、オフセット値を無視して、再生される。
【０４１８】
一方、HDMV TextSTについては、ビデオモード（コンフィグレーション）が、モノビデオモード(mono)、フラットステレオビデオモード(flattened stereo)、強制モノビデオモード(forced-mono)、及び、デュアルモノビデオモード(dual-mono)のうちのいずれの場合であっても、1-stream + plane-offsetモード(mono + offset)（オフセット用Text subtitleストリーム）を選択することが可能である。
【０４１９】
したがって、オフセット用TextSTストリーム（オフセット用Text subtitleストリーム）は、ビデオモードが、モノビデオモード、フラットステレオビデオモード、強制モノビデオモード、及び、デュアルモノビデオモードのうちのいずれかの場合に選択することが可能である。
【０４２０】
また、HDMV TextSTについては、ビデオモードが、フラットステレオビデオモード(flattened stereo)、デュアルモノビデオモード(dual-mono)、強制モノビデオモード(forced-mono)、及び、ステレオビデオモード(stereo)のうちのいずれの場合であっても、L/R 2 streamモード(stereo)（ステレオText subtitleストリーム）を選択することが可能である。
【０４２１】
したがって、ステレオTextSTストリーム（ステレオText subtitleストリーム）は、ビデオモードが、フラットステレオビデオモード、デュアルモノビデオモード、強制モノビデオモード、及び、ステレオビデオモードのうちのいずれの場合であっても選択することが可能である。
【０４２２】
但し、ビデオモードが、モノビデオモード(mono)、フラットステレオビデオモード(flattened stereo)、強制モノビデオモード(forced-mono)、又は、デュアルモノビデオモード(dual-mono)の場合に、オフセット用TextSTストリーム(mono + offset)が選択されたとき、オフセット用TextSTストリームのモノ画像が、オフセット値を無視して、再生される。
【０４２３】
また、ビデオモードが、モノビデオモード(mono)、又は、強制モノビデオモード(forced-mono)の場合に、ステレオTextSTストリーム(stereo)が選択されたとき、ステレオTextSTストリームに対応するステレオ画像を構成する左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像(L TextST stream)だけが再生される。
【０４２４】
さらに、ビデオモードが、フラットステレオビデオモード、又は、デュアルモノビデオモードの場合に、ステレオTextSTストリームが選択されたとき、ストリームに割り当てられる番号であるストリーム番号が、選択されたステレオTextSTストリームに一致するオフセット用TextSTストリームが存在すれば、選択されたステレオTextSTストリームに代えて、そのステレオTextSTストリームとストリーム番号が同一のオフセット用TextSTストリームのモノ画像が、オフセット値を無視して、再生される。
【０４２５】
図２８は、以上のような、PGやTextSTの画像の再生を行う3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０４２６】
図２８において、3D対応プレーヤは、BD-Jアプリケーション、PG/TextSTストリーム選択API、ビデオ制御API、PG選択エンジン(Playback Control Function)、TextST選択エンジン(Playback Control Function)、ビデオ制御エンジン(Playback Control Function)、プレイバックコントロールエンジン(Playback Control Engine)、及び、プレゼンテーションエンジン(Presentation Engine)等から構成される。
【０４２７】
図２９を参照し、PGについての処理を例に、図２８の3D対応プレーヤの処理を説明する。
【０４２８】
BD-Jアプリケーションは、PG/TextSTストリーム選択APIを呼び出し、PGストリームの選択を要求する。PG/TextSTストリーム選択APIは、BD-Jアプリケーションから要求されたPGストリームを選択する。
【０４２９】
すなわち、PG/TextSTストリーム選択APIは、図２７で説明したように、現在のビデオモードに対して、BD-Jアプリケーションから要求されたPGストリームを選択することが可能であれば、そのPGストリームを選択するように、PG選択エンジンを制御する。
【０４３０】
PG選択エンジンは、BDであるディスク１００（図３）に記録されたPGストリームの中から、PG/TextSTストリーム選択APIの制御に従ったPGストリームを選択し、図２８には図示していないステレオPGデコーダ(stereo PG decoder)、又は、モノPGデコーダ(mono PG decoder)に供給する。
【０４３１】
ここで、PG選択エンジンが選択したPGストリームが、ステレオPGストリームである場合、そのステレオPGストリームは、ステレオPGデコーダに供給される。
【０４３２】
また、PG選択エンジンが選択したPGストリームが、オフセット用PGストリームである場合、そのオフセット用PGストリームは、モノPGデコーダに供給される。
【０４３３】
ステレオPGデコーダは、PG選択エンジンから供給されるPGストリームを、ステレオ画像を構成する左眼用画像と右眼用画像とにデコードし、PGプレーン１２のL-PGプレーン１２ＬとR-PGプレーン１２Ｒに、それぞれ描画する。
【０４３４】
一方、モノPGデコーダは、PG選択エンジンから供給されるオフセット用PGストリームを、モノ画像にデコードし、論理プレーン１０に描画する。
【０４３５】
PG生成APIは、論理プレーン１０に描画されたモノ画像から、オフセット値（例えば、オフセット用PGストリームに含まれるオフセット値や、3D対応プレーヤの内部記憶領域、又は、PSR#21に記憶されたオフセット値）を用いて、左眼用画像と右眼用画像を生成する。そして、PG生成APIは、その左眼用画像と右眼用画像を、PGプレーン１２のL-PGプレーン１２ＬとR-PGプレーン１２Ｒに、それぞれ描画する。
【０４３６】
なお、3D対応BDプレーヤでは、図２７で説明したように、現在のビデオモードと、PG選択エンジンが選択したPGストリーム（PG再生モード）との組み合わせによっては、ステレオPGストリームに対応するステレオ画像を構成する左眼用画像、及び、右眼用画像のうちの一方である、例えば、左眼用画像だけが再生されるか、又は、オフセット値が無視され、オフセット用PGストリームに対応するモノ画像だけが再生されることがある。
【０４３７】
以上のように、3D対応プレーヤでは、BD規格のPGの画像のPGストリームとして、2D画像であるモノ画像のPGの画像のPGストリームであるモノPGストリームと、3D画像であるステレオ画像のPGの画像のPGストリームであるステレオPGストリームと、モノ画像に視差を与えるデータであるオフセット値とともに、ステレオ画像を生成するのに用いられる、モノ画像のPGの画像のPGストリームであるオフセット用PGストリームとが定義されている。そして、PG/TextSTストリーム選択APIは、BD-Jアプリケーションからの要求に従い、モノPGストリーム、ステレオPGストリーム、又は、オフセット用PGストリームを選択する。
【０４３８】
したがって、BD-Jアプリケーションから、間接的に、PGの画像の再生（PGのコンフィグレーション）を制御することができる。
【０４３９】
［3D画像の再生と、2D画像の再生との切り替え］
【０４４０】
図３０は、3D対応プレーヤにおける、3D画像の再生と、2D画像の再生との切り替えを説明する図である。
【０４４１】
図３０では、最初に、3D対応プレーヤの動作モードが、3D画像を再生する3D再生モード(3D playback mode)になっている。
【０４４２】
そして、グラフィクスモードが、ステレオグラフィクスモード(stereo gfx(graphics))に、ビデオモードが、ステレオビデオモード(stereo video)に、バックグラウンドモードが、モノバックグラウンドモード(mono background)に、それぞれなっている。
【０４４３】
その後、グラフィクスモードが、オフセットグラフィクスモード(plane offset gfx)に、ビデオモードが、デュアルモノビデオモード(dual-mono video)に、それぞれ変更されている。
【０４４４】
さらに、その後、図３０では、動作モードが、3D再生モードから、レガシープレーヤと同様にして、2D画像を再生する2D再生モード(Legacy playback mode)に変更されている。
【０４４５】
動作モードの変更に伴い、グラフィクスモードは、オフセットグラフィクスモード(plane offset gfx)から、モノグラフィクスモード(mono gfx)に変更されている。さらに、ビデオモードは、デュアルモノビデオモード(dual-mono video)から、モノビデオモード(mono video)に変更されている。なお、バックグラウンドモードは、モノバックグラウンドモード(mono background)のままになっている。
【０４４６】
そして、図３０では、動作モードが、2D再生モードから、3D再生モードに、再び変更されている。
【０４４７】
動作モードの変更に従い、グラフィクスモードは、モノグラフィクスモード(mono gfx)から、ステレオグラフィクスモード(stereo gfx)に変更されている。さらに、ビデオモードは、モノビデオモード(mono video)から、フラットステレオビデオモード(flattened stereo video)に変更されている。なお、バックグラウンドモードは、モノバックグラウンドモード(mono background)のままになっている。
【０４４８】
図３０では、その後、バックグラウンドモードが、モノバックグラウンドモード(mono background)から、ステレオバックグラウンドモード(stereo background)に変更されている。
【０４４９】
図３０において、例えば、動作モードが、3D再生モードから2D再生モードに変更される場合に、解像度（画枠）の変更が伴うときには、表示画面がブラックアウトするおそれがある。
【０４５０】
［Pixel coordinate system for video］
【０４５１】
BD-Jアプリケーションからの、ビデオの位置やサイズの制御には、"javax.tv.media.AWTVideoSizeControl"や、"org.dvb.media.BackgroundVideoPRsentationControl"等のJMF(Java(登録商標) Media Framework) controlを使用することができる。
【０４５２】
なお、BD-Jアプリケーションのオーサは、ビデオの位置、及び、サイズは、プレーン（ビデオプレーン１３）上の座標ではなく、ディスプレイ座標で設定する。
【０４５３】
また、3D対応プレーヤは、左眼用画像(L video source)、及び、右眼用画像(R video source)のそれぞれに対して、位置とサイズの補正を行わなければならない。
例えば、1920×2160画素のビデオプレーン１３に対し、ディスプレイ座標系は、垂直方向が1/2の、1920×1080画素のサイズの座標系となる。この場合、オーサは、例えば、以下のように、ビデオの位置とサイズを設定しなければならない。
【０４５４】
RctangL src = new RctangL(0,0,1920,1080);
RctangL dest = new RctangL(100,100,960,540);
AWTVideoSizeControl videoSizeControl = (AWTVideoSizeControl)player.getControl("javax.tv.media.AWTVideoSizeControl");
videoSizeControl.setSize(new AWTVideoSize(src, dest));
【０４５５】
図３１は、オーサによるビデオの位置とサイズの設定と、3D対応プレーヤによるビデオの位置とサイズの補正とを説明する図である。
【０４５６】
オーサは、ビデオの左眼用画像の位置とサイズを設定する。図３１では、1920×1080画素のサイズのディスプレイ座標系に対して、ビデオの左眼用画像の位置とサイズが設定されている。
【０４５７】
3D対応プレーヤは、ディスプレイ座標系に対するビデオの左眼用画像の位置とサイズの設定を、そのまま、ビデオプレーン１３のLビデオプレーン１３Ｌに設定する。
【０４５８】
さらに、3D対応プレーヤは、Lビデオプレーン１３Ｌのビデオの位置とサイズの設定を、そのまま、Rビデオプレーン１３Ｒに適用する。
【０４５９】
したがって、オーサから見れば、Lビデオプレーン１３Ｌに対して、ビデオの位置とサイズを設定することで、そのビデオの位置とサイズと同一の位置とサイズが、Rビデオプレーン１３Ｒにも設定される。
【０４６０】
ここで、ビデオに関しては、深さ情報を外部から与えるわけではない。したがって、オフセットを付与する仕組みは無駄であるばかりでなく、ビデオ製作者の意図しない出力を引き起こす原因ともなる。
【０４６１】
すなわち、ビデオ製作者は、意図した3D画像が表示されるように、ビデオの画像を製作するはずである。したがって、3D対応プレーヤにおいて、例えば、PSR#21(図７）に保存されたオフセット値等の、外部から与えられる情報によって、ビデオプレーン１３に描画されるビデオの画像（左眼用画像、及び、右眼用画像）の位置をずらす等の加工を施すと、ビデオ製作者が意図しない画像が表示されるおそれがある。
【０４６２】
そこで、3D対応プレーヤでは、コンフィグレーション上は、L/R video planeが定義されるが、BD-Jアプリケーションのオーサには、L video planeのみしか扱えないように制約をかける。すなわち、3D対応プレーヤは、BD-JアプリケーションによるL video scaling / L video positioningのAPI呼び出しをそのままR video scaling / R video positioningへも適用しなければならない。
【０４６３】
なお、ビデオのサイズが設定されることにより、ビデオが、そのサイズにスケーリングされる場合、［PG / Text subtitleコンフィグレーションの切り替え］で説明したように、PGプレーンオフセット値は、ビデオをスケーリングするスケーリング比率（拡大率、又は、縮小率）でスケーリングされるが、グラフィックスプレーンオフセット値も、同様に、ビデオのスケーリング比率でスケーリングされる。
【０４６４】
図３２は、以上のように、ビデオの位置の設定（補正）とサイズの設定（スケーリング）を行う3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０４６５】
図３２の3D対応プレーヤは、Lビデオプレーン１３Ｌ（L領域）に記憶される画像のサイズ、及び、位置を設定するL用APIと、Rビデオプレーン１３Ｒ（R領域）に記憶される画像のサイズ、及び、位置を設定するR用APIとを備える。そして、L用API、及び、R用APIのうちの一方のAPIは、他方のAPIが設定する画像のサイズ、及び、位置と同一のサイズ、及び、位置を設定する。
【０４６６】
すなわち、図３２の3D対応プレーヤでは、ビデオデコーダ(Video decoder)が、ビデオをデコードし、その結果得られるビデオの左眼用画像と右眼用画像を、L用APIと、R用APIとに供給する。
【０４６７】
L用APIは、Lビデオスケーリング(L(Left) video scaling)APIと、Lビデオポジショニング(L(Left) positioning)APIとからなり、BD-Jアプリケーションからの、ビデオの位置とサイズの設定の要求の呼び出しに応じて、ビデオデコーダからの左眼用画像の位置とサイズを設定する。
【０４６８】
すなわち、LビデオスケーリングAPIは、ビデオデコーダからの左眼用画像のサイズを、BD-Jアプリケーションからの要求に応じたサイズに制御するスケーリングを行い、LビデオポジショニングAPIに供給する。
【０４６９】
LビデオポジショニングAPIは、LビデオスケーリングAPIからの左眼用画像の位置を、BD-Jアプリケーションからの要求に応じた位置に制御し、その結果得られる左眼用画像を、Lビデオプレーン１３Ｌに描画する（LビデオスケーリングAPIからの左眼用画像を、BD-Jアプリケーションからの要求に応じた、Lビデオプレーン13L上の位置に描画する）。
【０４７０】
また、LビデオスケーリングAPIは、後述するRビデオスケーリングAPIを呼び出し、BD-Jアプリケーションと同様の要求をする。さらに、LビデオポジショニングAPIは、後述するRビデオポジショニングAPIを呼び出し、BD-Jアプリケーションからの要求と同様の要求をする。
【０４７１】
また、LビデオスケーリングAPIは、ビデオのサイズの設定の要求の呼び出しに応じて、ビデオの画像（左眼用画像）をスケーリングしたときのスケーリング比率（拡大率、又は、縮小率）Sを、PG生成API、及び、グラフィクス生成APIに供給する。
【０４７２】
R用APIは、Rビデオスケーリング(R(Right) video scaling)APIと、Rビデオポジショニング(R(Right) positioning)APIとからなり、L用APIからの、ビデオの位置とサイズの設定の要求に応じて、ビデオデコーダからの右眼用画像の位置とサイズを設定する。
【０４７３】
すなわち、RビデオスケーリングAPIは、ビデオデコーダからの右眼用画像のサイズを、LビデオスケーリングAPIからの要求に応じたサイズに制御し、RビデオポジショニングAPIに供給する。
【０４７４】
RビデオポジショニングAPIは、RビデオスケーリングAPIからの右眼用画像の位置を、LビデオポジショニングAPIからの要求に応じた位置に制御し、その結果得られる右眼用画像を、Rビデオプレーン１３Ｒに描画する。
【０４７５】
以上のように、Lビデオプレーン１３Ｌ（L領域）に記憶される画像のサイズ、及び、位置を設定するL用APIと、Rビデオプレーン１３Ｒ（R領域）に記憶される画像のサイズ、及び、位置を設定するR用APIとのうちの、一方のAPIである、例えば、R用APIは、他方のAPIであるL用APIがBD-Jアプリケーションからの要求に応じて設定する画像のサイズ、及び、位置と同一のサイズ、及び、位置を設定する。
【０４７６】
したがって、BD規格のビデオの画像を記憶するビデオプレーン１３について、オーサが、Lビデオプレーン１３Ｌ（L領域）、及び、Rビデオプレーン１３Ｒ（R領域）のうちの一方であるLビデオプレーン１３Ｌしか扱えないようにすることができ、ビデオ製作者が意図しないビデオの画像が表示されることを防止することができる。
【０４７７】
3D対応プレーヤでは、さらに、PGについて、図２９で説明した処理が行われる。
【０４７８】
但し、PG生成APIでは、LビデオスケーリングAPIからのスケーリング比率Sで、PGプレーンオフセット値（例えば、オフセット用PGストリームに含まれるオフセット値や、3D対応プレーヤの内部記憶領域、又は、PSR#21に記憶されたオフセット値）がスケーリングされる（PGプレーンオフセット値が、スケーリング比率S倍される）。
【０４７９】
そして、PG生成APIでは、論理プレーン１０に描画されたモノ画像から、スケーリング後のPGプレーンオフセット値を用いて、左眼用画像と右眼用画像が生成される。
【０４８０】
また、3D対応プレーヤは、コンフィグレーションモード変更APIが、BD-Jアプリケーションからの要求に応じたグラフィクスモードの画像を、BDであるディスク１００（図３）に記録されたグラフィクスの画像から選択し、グラフィクスプレーン１１に描画する。
【０４８１】
すなわち、ビデオモードが、例えば、ステレオグラフィクスモードである場合には、ステレオ画像であるグラフィクスの左眼用画像と右眼用画像とが、それぞれ、グラフィクスプレーン１１のLグラフィクスプレーン１１ＬとRグラフィクスプレーン１１Ｒに描画される。
【０４８２】
また、ビデオモードが、例えば、オフセットグラフィクスモードである場合には、モノ画像であるグラフィクスの画像が、論理プレーン１０に描画され、さらに、グラフィクス生成APIが、LビデオスケーリングAPIからのスケーリング比率Sで、グラフィクスプレーンオフセット値（例えば、3D対応プレーヤの内部記憶領域、又は、PSR#21に記憶されたオフセット値）をスケーリングする。
【０４８３】
そして、グラフィクス生成APIは、論理プレーン１０に描画されたモノ画像から、スケーリング後のグラフィクスプレーンオフセット値を用いて、左眼用画像と右眼用画像を生成し、Lグラフィクスプレーン１１ＬとRグラフィクスプレーン１１Ｒに、それぞれ描画する。
【０４８４】
［Pixel coordinate system for graphics］
【０４８５】
stereo graphicsコンフィグレーション（グラフィクスの3D画像を表示するコンフィグレーション）で有効なピクセル座標系は、
(0, 0)-(1920, 2160)
(0, 0)-(1280, 1440)
(0, 0)-(720, 960)
(0, 0)-(720, 1152)
(0, 0)-(960, 1080)
のいずれかである。
【０４８６】
top-halfがL graphics viewに、bottom-halfがR graphics viewに割り当てられる。
【０４８７】
図３３は、1920×2160画素のグラフィクスプレーン１１を示している。
【０４８８】
グラフィクスプレーン１１の上側の記憶領域(top-half)であるLグラフィクスプレーン１１Ｌに描画された画像が、左眼で観察される左眼用画像(L(Left) graphics view)となり、グラフィクスプレーン１１の下側の記憶領域(bottom-half)であるRグラフィクスプレーン１１Ｒに描画された画像が、右眼で観察される右眼用画像(R(Right) graphics view)となる。
【０４８９】
図３３では、グラフィクスプレーン１１に、１つのコンテナ(Root container)と、そのコンテナの子になっている２つのコンポーネント(Components)とが描画されている。
【０４９０】
コンポーネントの座標は、そのコンポーネントの親になっているコンテナを基準とする相対的な座標で表現される。
【０４９１】
なお、3D対応プレーヤでは、グラフィクスプレーン１１のエッジに、ガード目的の緩衝領域を設けてはならない。
【０４９２】
また、3D対応プレーヤは、L-view/R-viewとの不整合を抑止する仕組みを導入しなければならない。
【０４９３】
ここで、レガシープレーヤであるBDプレーヤには、BD-Jアプリケーションによる描画の完了を検知して完了後にモニターへ転送するような機構がない。L/Rビデオ出力の場合、L/R graphics間で出力の不整合が発生する可能性がある。
【０４９４】
そこで、3D対応プレーヤでは、何らかのAPI呼び出しをBD-Jアプリケーションによる描画の完了を示すシグナルとして定義する。逆に、BD-Jアプリケーションが、該当する描画完了通知APIを呼び出さないと画面には何も出力されない。オーサーは本手法を必ず使わなければならなくなる。
【０４９５】
すなわち、Lグラフィクスプレーン１１Ｌに画像（左眼用画像）が描画された後、Rグラフィクスプレーン１１Ｒへの画像の描画が完了する前に、グラフィクスプレーン１１の描画内容が、左眼用画像と右眼用画像として、表示画面に表示されると、その左眼用画像と右眼用画像とは、3D画像として見えるように、整合がとれた画像になっていないため（いまの場合、右眼用画像の描画が不完全であるため）、表示画面の画像を見たユーザに、不快感を感じさせることになる。
【０４９６】
このように、ユーザに不快感を感じさせることを防止するために、3D対応プレーヤは、左眼用画像と右眼用画像との不整合を抑止する機能、つまり、3D画像として見えるように、整合がとれた状態となっていない左眼用画像と右眼用画像が表示画面に表示されることを防止する機能を有する。
【０４９７】
具体的には、3D対応プレーヤは、グラフィクスプレーン１１に対する、左眼用画像と右眼用画像との両方の描画が完了してから、その左眼用画像と右眼用画像を、表示のために出力する。
【０４９８】
したがって、3D対応プレーヤは、グラフィクスプレーン１１に対する、左眼用画像と右眼用画像との両方の描画が完了したことを認識する必要がある。
【０４９９】
［Direct-drawing model］
【０５００】
Direct-drawingでは、3D対応プレーヤは、BD-Jアプリケーションからの、グラフィクスの画像を描画する描画コマンドの発行が完了したかどうかを知る術がない。
【０５０１】
すなわち、BD-Jアプリケーションが、描画コマンド#1，#2，・・・，#Nを発行し、その描画コマンド#1ないし#Nに従って、グラフィクスプレーン１１への画像の描画が行われた場合に、その後、BD-Jアプリケーションから、さらに、描画コマンドが発行されるかどうか、つまり、BD-Jアプリケーションによる描画コマンドの発行が完了したのかどうかを、3D対応プレーヤは、認識することができない。
【０５０２】
そこで、BD-Jアプリケーションのオーサには、描画コマンドによるグラフィクスプレーン１１への画像の描画を行う場合に、グラフィクスプレーン１１に対する画像の描画が完了するまでは処理をBD-Jアプリケーションに戻さないような、グラフィクスの描画の完全性を保証する描画完全性保証API呼び出しを、3D対応プレーヤに対するシグナリングとして義務づける。
【０５０３】
又は、描画コマンドによるグラフィクスプレーン１１への画像の描画を行う場合に、グラフィクスプレーン１１に対する画像の描画が終了したことを通知する描画完了通知APIの呼び出しを、3D対応プレーヤに対するシグナリングとして義務づける。
【０５０４】
又は、描画コマンドによるグラフィクスプレーン１１への画像の描画を行う場合に、グラフィクスプレーン１１に対する画像の描画を開始することを通知する描画開始通知APIの呼び出し、及び、その後のグラフィクスプレーン１１に対する画像の描画を終了したことを通知する描画完了通知APIの呼び出しを、3D対応プレーヤに対するシグナリングとして義務づける。
【０５０５】
この場合、3D対応プレーヤは、BD-Jアプリケーションによる描画完全性保証APIの呼び出し、描画完了通知APIの呼び出し、又は、描画開始通知APIの呼び出しと、その後の描画完了通知APIの呼び出しによって、グラフィクスプレーン１１に対する画像の描画が終了したこと、つまり、描画コマンドの発行が完了したことを認識することができる。そして、その結果、（3D画像として見えるように、）整合がとれた状態となっている左眼用画像と右眼用画像を表示することができる。
【０５０６】
ここで、描画完全性保証APIとしては、描画コマンド列を引数にとる専用APIを定義することができる。
【０５０７】
また、描画完了通知APIとしては、例えば、java.awt.Toolkit#sync()メソッドを採用することができる。この場合、3D対応プレーヤでは、java.awt.Toolkit#sync()メソッドの呼び出しが行われない限りは、グラフィクスプレーン１１に描画された画像は出力されず、したがって、表示画面には、グラフィクスプレーン１１に描画された画像が表示されない。
【０５０８】
さらに、描画開始通知APIとしては、例えば、java(登録商標)の所定のメソッド、又は、専用のAPIを定義することができる。
【０５０９】
なお、１フレームの間（1-video-frame間）に、java.awt.Toolkit#sync()メソッドの呼び出しが、複数回行われると、graphics-frameがコマ落ちする可能性がある。したがって、java.awt.Toolkit#sync()メソッドの呼び出しを、連続で複数回行うことや、少ない描画をはさんで連続で行うことは、してはならない。
【０５１０】
［Repaint model］
【０５１１】
AWT(Abstract Windowing toolkit)ペイントモデルでは、グラフィクスの画像を構成する部品としてのルートコンテナのrepaint()メソッドが、グラフィクスの画像を構成する部品としての各コンポーネントのupdate()メソッドを呼び出す。
【０５１２】
そして、AWTペイントモデルでは、3D対応プレーヤにおいて、グラフィクスの画像の描画プロセスを、完全に制御すること（フルコントロールすること）ができるので、3D対応プレーヤは、グラフィクスプレーン１１に対する画像の描画が終了したことを認識することができる。
【０５１３】
したがって、上述の描画完了通知APIの呼び出しを行うようにしなくても、整合がとれた状態となっている左眼用画像と右眼用画像が表示されるように、3D対応プレーヤの実装を行うことができる。
【０５１４】
図３４は、BD-Jアプリケーションによる描画完全性保証APIの呼び出し、描画完了通知APIの呼び出し、又は、描画開始通知APIの呼び出しと、その後の描画完了通知APIの呼び出しを義務づけて、描画コマンドの発行が完了したことを認識する3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０５１５】
なお、ここでは、BD-Jアプリケーションが、グラフィクスプレーン１１に対する画像の描画が終了した場合に、描画完了通知APIを呼び出すこととする。
【０５１６】
3D対応プレーヤは、グラフィクスプレーン１１としてのバッファ２０１Ｌ及び２０１Ｒ、並びに、バッファ２０２Ｌ及び２０２Ｒを有する。
【０５１７】
なお、図３４では、バッファ２０１Ｌ及び２０２Ｌが、Lグラフィクスプレーン１１Ｌに相当し、バッファ２０１Ｒ及び２０２Ｒが、Rグラフィクスプレーン１１Ｒに相当する。
【０５１８】
また、バッファ２０１Ｌ及び２０１Ｒのセットと、バッファ２０２Ｌ及び２０２Ｒのセットとは、交互に、バックバッファ（隠しバッファ）とフロントバッファとして機能する。
【０５１９】
ここで、バックバッファは、BD-Jアプリケーションからのグラフィクスの画像の描画がされるバッファであり、フロントバッファは、バックバッファに画像の描画がされている間に、表示画面（論理スクリーン２１）に表示される画像を記憶するバッファである。
【０５２０】
図３４Ａは、バッファ２０１Ｌ及び２０１Ｒのセットが、バックバッファとなり、バッファ２０２Ｌ及び２０２Ｒのセットが、フロントバッファとなっている状態の3D対応プレーヤを示している。
【０５２１】
図３４Ａでは、バックバッファとしてのバッファ２０１Ｌ及び２０１Ｒに対して、BD-Jアプリケーションによるグラフィクスの画像（左眼用画像、及び、右眼用画像）の描画が行われ、フロントバッファとしてのバッファ２０２Ｌ及び２０２Ｒに記憶されている画像（左眼用画像、及び、右眼用画像）が、表示画面への出力として出力されている。
【０５２２】
BD-Jアプリケーションは、バックバッファとしてのバッファ２０１Ｌ及び２０１Ｒに対して、グラフィクスの画像の描画が終了すると、描画完了通知APIを呼び出す。
【０５２３】
3D対応プレーヤは、描画完了通知APIの呼び出しが行われると、フロントバッファに代えて、バックバッファに記憶されている画像の、表示画面への出力を開始する。
【０５２４】
すなわち、図３４Ｂは、描画完了通知APIの呼び出しが行われた直後の3D対応プレーヤを示している。
【０５２５】
3D対応プレーヤは、描画完了通知APIの呼び出しが行われると、フロントバッファになっているバッファ２０２Ｌ及び２０２Ｒに記憶された画像に代えて、バックバッファになっているバッファ２０１Ｌ及び２０１Ｒに記憶されている画像の、表示画面への出力を開始する。
【０５２６】
さらに、3D対応プレーヤは、バックバッファになっているバッファ２０１Ｌ及び２０１Ｒに記憶されている画像を、フロントバッファになっているバッファ２０２Ｌ及び２０２Ｒにコピーする。
【０５２７】
その後、3D対応プレーヤは、バックバッファとフロントバッファとを入れ替える。
【０５２８】
すなわち、3D対応プレーヤは、バックバッファになっているバッファ２０１Ｌ及び２０１Ｒを、フロントバッファとするとともに、フロントバッファになっているバッファ２０２Ｌ及び２０２Ｒを、バックバッファとする。
【０５２９】
すなわち、図３４Ｃは、バッファ２０１Ｌ及び２０１Ｒのセットが、フロントバッファとなり、バッファ２０２Ｌ及び２０２Ｒのセットが、バックバッファとなっている状態の3D対応プレーヤを示している。
【０５３０】
BD-Jアプリケーションは、バックバッファとなったバッファ２０２Ｌ及び２０２Ｒに対するグラフィクスの画像の描画を開始し、以下、同様の処理が繰り返される。
【０５３１】
図３５は、BD-Jアプリケーションが描画完全性保証APIを呼び出す場合の、図３４の3D対応プレーヤによるグラフィクスの処理を説明するフローチャートである。
【０５３２】
ステップＳ１１において、3D対応プレーヤは、BD-Jアプリケーションから、描画完全性保証APIの呼び出しがあったかどうかを判定し、なかったと判定した場合、ステップＳ１１に戻る。
【０５３３】
また、ステップＳ１１において、描画完全性保証APIの呼び出しがあったと判定された場合、ステップＳ１２に進み、3D対応プレーヤは、描画完全性保証APIの引数となっている描画コマンド列を順次実行し、その実行の結果得られるグラフィクスの画像を、バックバッファに描画するとともに、フロントバッファに記憶されているグラフィクスの画像を、表示画面に出力する（表示のために出力する）。
【０５３４】
その後、3D対応プレーヤは、バックバッファへの描画が完了した後に、ステップＳ１３において、フロントバッファに代えて、バックバッファに記憶されているグラフィクスの画像を、表示画面に出力する（表示のために出力する）。
【０５３５】
そして、3D対応プレーヤは、ステップＳ１４において、バックバッファに記憶されたグラフィクスの画像を、フロントバッファにコピーする。
【０５３６】
その後、3D対応プレーヤは、ステップＳ１５において、バックバッファとフロントバッファとを入れ替え、ステップＳ１１に戻り、以下、同様の処理が繰り返される。
【０５３７】
以上のように、3D対応プレーヤでは、グラフィクスプレーン１１（であるバックバッファ）に対する、グラフィックスの画像の描画の完全性を保証する描画完全性保証APIの呼び出しが、BD-Jアプリケーションからあった場合に、グラフィクスプレーン１１に描画された画像が、表示のために出力される。
【０５３８】
したがって、3D対応プレーヤによるグラフィクスの画像の描画の完了を待ってから、グラフィクスプレーン１１に描画がされた画像を表示することができるので、整合がとれた状態となっていない左眼用画像と右眼用画像が、表示画面に表示されることを防止することができる。
【０５３９】
図３６は、BD-Jアプリケーションが描画完了通知APIを呼び出す場合の、図３４の3D対応プレーヤによるグラフィクスの処理を説明するフローチャートである。
【０５４０】
3D対応プレーヤは、BD-Jアプリケーションからの描画コマンドの発行を待って、ステップＳ２１において、その描画コマンドを実行する。
【０５４１】
そして、3D対応プレーヤは、ステップＳ２２において、描画コマンドの実行の結果得られるグラフィクスの画像を、バックバッファに描画するとともに、フロントバッファに記憶されているグラフィクスの画像を、表示画面に出力する（表示のために出力する）。
【０５４２】
その後、ステップＳ２３において、3D対応プレーヤは、BD-Jアプリケーションから、描画完了通知APIの呼び出しがあったかどうかを判定する。
【０５４３】
ステップＳ２３において、描画完了通知APIの呼び出しがなかったと判定された場合、BD-Jアプリケーションからの描画コマンドの発行を待って、ステップＳ２１に戻り、以下、同様の処理が繰り返される。
【０５４４】
また、ステップＳ２３において、描画完了通知APIの呼び出しがあったと判定された場合、3D対応プレーヤは、ステップＳ２４に進み、フロントバッファに代えて、バックバッファに記憶されているグラフィクスの画像を、表示画面に出力する（表示のために出力する）。
【０５４５】
そして、3D対応プレーヤは、ステップＳ２５において、バックバッファに記憶されたグラフィクスの画像を、フロントバッファにコピーする。
【０５４６】
その後、3D対応プレーヤは、ステップＳ２６において、バックバッファとフロントバッファとを入れ替え、BD-Jアプリケーションからの描画コマンドの発行を待って、ステップＳ２１に戻り、以下、同様の処理が繰り返される。
【０５４７】
以上のように、3D対応プレーヤでは、グラフィクスプレーン１１（であるバックバッファ）に対する、グラフィックスの画像の描画が終了したことを通知する描画完了通知APIの呼び出しが、BD-Jアプリケーションからあった場合に、グラフィクスプレーン１１に描画された画像が、表示のために出力される。
【０５４８】
したがって、BD-Jアプリケーションによるグラフィクスの画像の描画が完了したことの通知があってから、グラフィクスプレーン１１に描画がされた画像を表示することができるので、整合がとれた状態となっていない左眼用画像と右眼用画像が、表示画面に表示されることを防止することができる。
【０５４９】
図３７は、BD-Jアプリケーションが、描画開始通知APIの呼び出しと、その後の描画完了通知APIの呼び出しとを行う場合の、図３４の3D対応プレーヤによるグラフィクスの処理を説明するフローチャートである。
【０５５０】
ステップＳ３１において、3D対応プレーヤは、BD-Jアプリケーションから、描画開始通知APIの呼び出しがあったかどうかを判定し、なかったと判定された場合、ステップＳ３１に戻る。
【０５５１】
また、ステップＳ３１において、描画開始APIの読み出しがあったと判定された場合、3D対応プレーヤは、BD-Jアプリケーションからの描画コマンドの発行を待って、ステップＳ３２に進み、その描画コマンドを実行する。
【０５５２】
その後、ステップＳ３３において、3D対応プレーヤは、BD-Jアプリケーションから、描画完了通知APIの呼び出しがあったかどうかを判定する。
【０５５３】
ステップＳ３３において、描画完了通知APIの呼び出しがなかったと判定された場合、BD-Jアプリケーションからの描画コマンドの発行を待って、ステップＳ３２に戻り、以下、同様の処理が繰り返される。
【０５５４】
また、ステップＳ３３において、描画完了通知APIの呼び出しがあったと判定された場合、3D対応プレーヤは、ステップＳ３４に進み、描画コマンドの実行の結果得られるグラフィクスの画像を、バックバッファに描画するとともに、フロントバッファに記憶されているグラフィクスの画像を、表示画面に出力する（表示のために出力する）。
【０５５５】
その後、3D対応プレーヤは、ステップＳ３５において、フロントバッファに代えて、バックバッファに記憶されているグラフィクスの画像を、表示画面に出力する（表示のために出力する）。
【０５５６】
そして、3D対応プレーヤは、ステップＳ３６において、バックバッファに記憶されたグラフィクスの画像を、フロントバッファにコピーする。
【０５５７】
その後、3D対応プレーヤは、ステップＳ３７において、バックバッファとフロントバッファとを入れ替え、ステップＳ３１に戻り、以下、同様の処理が繰り返される。
【０５５８】
以上のように、3D対応プレーヤでは、グラフィクスプレーン１１（であるバックバッファ）に対する、グラフィックスの画像の描画を開始する描画開始通知APIの呼び出し、及び、その後のグラフィックスの画像の描画が終了したことを通知する描画完了通知APIの呼び出しが、BD-Jアプリケーションからあった場合に、グラフィクスプレーン１１に描画された画像が、表示のために出力される。
【０５５９】
したがって、BD-Jアプリケーションによるグラフィクスの画像の描画が完了したことの通知があってから、グラフィクスプレーン１１に描画がされた画像を表示することができるので、整合がとれた状態となっていない左眼用画像と右眼用画像が、表示画面に表示されることを防止することができる。
【０５６０】
［Pixel coordinate system for background］
【０５６１】
stereo backgroundコンフィグレーション（バックグラウンドの3D画像を表示するコンフィグレーション）で有効なピクセル座標系は、
(0, 0)-(1920, 2160)
(0, 0)-(1280, 1440)
(0, 0)-(720, 960)
(0, 0)-(720, 1152)
のいずれかである。
【０５６２】
top-halfがL background viewに、bottom-halfがR background viewに割り当てられる。
【０５６３】
なお、バックグラウンドの画像のフォーマット(Contents format)は、単一色(Single-color)，JPEG(JFIF)、又は、MPEG2 drip-feedのうちのいずれかであり、フォーマットが、MPEG2 drip-feedである場合には、バックグラウンドの画像は、SD画像(SD video only)でなければならない。
【０５６４】
また、バックグラウンドの画像としては、1920×2160画素、1280×1440画素、720×960画素、又は、720×1152画素のJPEG(JFIF)イメージ(image)を使用することができる。
【０５６５】
［フォーカス管理］
【０５６６】
グラフィクスの画像として、例えば、ウィジェット・ベースのGUI(Graphical User Interface)等を採用する場合に、レガシープレーヤでは、GUIを構成する、ある１つのコンテナの子となっている複数のコンポーネントは、一度にフォーカスを持つことはできない。
【０５６７】
また、レガシープレーヤでは、GUIを構成する複数のルートコンテナを、一度に、アクティブ（フォーカスを持った状態）にすることができない。
【０５６８】
ここで、コンテナは、グラフィクスの画像の構成要素（部品）であり、親（上位層）と子（下位層）を持つことができる。親を持たずに、子のみを持つコンテナは、ルートコンテナと呼ばれる。
【０５６９】
コンポーネントは、コンテナの一種であり、親を持つことはできるが、子を持つことはできない。
【０５７０】
グラフィクスの画像としてのGUIが、3D画像である場合、その3D画像を構成する左眼用画像と右眼用画像とのそれぞれで、対応するコンテナにフォーカスを持たせ、そのフォーカスの遷移を同様（同等）に行う必要がある。
【０５７１】
すなわち、左眼用画像と右眼用画像とのうちの、一方の画像を構成するあるコンテナがフォーカスされているが、そのコンテナに対応する、他方の画像を構成するコンテナがフォーカスされていない場合には、そのような左眼用画像と右眼用画像とによって表示される3D画像を見たユーザに、不快感を感じさせることになる。
【０５７２】
このように、ユーザに不快感を感じさせることを防止するために、3D対応プレーヤは、左眼用画像のコンテナと、右眼用画像のコンテナとにおいて、フォーカスの遷移が、同様になるように、フォーカスの管理を行う。
【０５７３】
図３８は、グラフィクスプレーン１１に描画されたGUIの例を示している。
【０５７４】
図３８のGUIは、１個のルートコンテナと、そのルートコンテナの子になっている、対応する２個ずつのコンポーネント#1，#2、及び、#3とから構成される。
【０５７５】
なお、図３８において、Lグラフィクスプレーン１１Ｌに描画されているコンポーネント#1，#2、及び、#3は、左眼用画像を構成し、Rグラフィクスプレーン１１Ｒに描画されているコンポーネント#1，#2、及び、#3は、右眼用画像を構成する。
【０５７６】
例えば、左眼用画像のコンポーネント#iがフォーカスされている場合、右眼用画像の、対応するコンポーネントであるコンポーネント#iもフォーカスされていなければならない。
【０５７７】
3D対応プレーヤは、ウィジェットの状態遷移／管理をL/R 間で対称になれるようにするために、同時に二つのコンテナーまたはコンポーネントがフォーカスを持てるようにすることで対応する。そのためには、コンテナーまたはコンポーネントのインスタンスには、フォーカスを保持している／していないを表現するフラグを持たせ管理可能なようにする必要がある。また、三つ目のフォーカス・リクエストは失敗させなければならない。すなわち、フォーカスを保持したコンテナーまたはコンポーネントは、0個または2個のいずれかに限定される。
【０５７８】
左眼用画像と右眼用画像との、対応する２個のコンテナ（コンポーネント）がフォーカスされるようにするフォーカス方式としては、第１のフォーカス方式と、第２のフォーカス方式とがある。
【０５７９】
図３９は、第１のフォーカス方式と、第２のフォーカス方式とを示している。
【０５８０】
図３９Ａは、第１のフォーカス方式(1-root-container across L/R graphics plane)を示している。
【０５８１】
第１のフォーカス方式では、Lグラフィクスプレーン１１Ｌと、Rグラフィクスプレーン１１Ｒとをまたぐコンテナ(Root Container)の子となっている、Lグラフィクスプレーン１１Ｌ上のコンテナ（コンポーネント）と、Rグラフィクスプレーン１１Ｒ上のコンテナ（コンポーネント）との、対応する２つのコンテナに、同時に、フォーカスを持たせる。
【０５８２】
図３９Ｂは、第２のフォーカス方式(2-root-containers (one for L graphics plane, another for R graphics plane))を示している。
【０５８３】
第２のフォーカス方式では、Lグラフィクスプレーン１１Ｌと、Rグラフィクスプレーン１１Ｒとのそれぞれに、ルートコンテナを描画し、それぞれのルートコンテナを、同時に、アクティブ（フォーカスを持った状態）にする。
【０５８４】
図４０は、左眼用画像と右眼用画像との、対応する２個のコンテナ（コンポーネント）にフォーカスを持たせる3D対応プレーヤとしての図３のBDプレーヤのフォーカスの管理を説明するフローチャートである。
【０５８５】
なお、グラフィクスプレーン１１に描画されるGUIを構成するコンテナ（コンポーネント）は、フォーカスがされているか否かを表すフォーカスフラグを有することとする。
【０５８６】
3D対応プレーヤは、フォーカスの要求（リクエスト）があると、ステップＳ５１において、コンテナの数をカウントする変数iに、初期値としての0をセットする。
【０５８７】
そして、3D対応プレーヤは、ステップＳ５２において、グラフィクスプレーン１１上のコンテナc(i)の子となっているコンポーネント（コンテナ）の中に、フォーカスされた状態のコンポーネント（以下、フォーカス保持コンポーネントともいう）が、既に、２個存在するかどうかを、コンポーネントが有するフォーカスフラグに基づいて判定する。
【０５８８】
ステップＳ５２において、コンテナc(i)の子となっているコンポーネントの中に、２個のフォーカス保持コンポーネントが存在しないと判定された場合、3D対応プレーヤは、ステップＳ５３に進み、要求（リクエスト）があったフォーカスを、対応する２個のコンポーネントに持たせる。さらに、ステップＳ５３では、3D対応プレーヤは、フォーカスを持たせた２個のコンポーネントそれぞれのフォーカスフラグに、フォーカスを持っている旨の値をセットし、ステップＳ５４に進む。
【０５８９】
一方、ステップＳ５２において、コンテナc(i)の子となっているコンポーネントの中に、２個のフォーカス保持コンポーネントが存在すると判定された場合、3D対応プレーヤは、ステップＳ５３をスキップして、ステップＳ５４に進み、変数iを1だけインクリメントして、ステップＳ５５に進む。
【０５９０】
ステップＳ５５では、3D対応プレーヤは、変数iが、グラフィクスプレーン１１上のコンテナの数N未満であるかどうかを判定する。ステップＳ５５において、変数iが、グラフィクスプレーン１１上のコンテナの数N未満であると判定された場合、ステップＳ２２に戻り、同様の処理が繰り返される。
【０５９１】
また、ステップＳ５５において、変数iが、グラフィクスプレーン１１上のコンテナの数N未満でないと判定された場合、処理は終了する。
【０５９２】
以上のようにして、3D対応プレーヤでは、フォーカスの要求に対し、２個のコンテナがフォーカスされていない場合に、左眼用画像を記憶するLグラフィクスプレーン１１Ｌ（L領域）のコンテナと、そのコンテナに対応する、右眼用画像を記憶するRグラフィクスプレーン１１Ｒ（R領域）のコンテナとを、フォーカスされている状態にする。
【０５９３】
したがって、例えば、3D画像のウィジェットを構成するコンテナのうちの、左眼用画像のコンテナと、右眼用画像のコンテナとにおいて、フォーカスの遷移が、同様になるようにすることができる。
【０５９４】
［マウスイベントの扱い］
【０５９５】
Stereo graphicsの場合、マウス・カーソルの画面上の2次元座標は、L/R graphics plane上で、それぞれ別の座標であってもよい。そのため、BD-Jアプリケーションは、マウス・イベントに依存した処理を記述するにあたり座標変換を必要とするが、座標変換のためのオフセット値がBDプレーヤの実装ごとに異なってよいために、不明である。
【０５９６】
すなわち、図４１は、例えば、マウス等のポインティングデバイスのカーソルの3D画像が見える表示画面上の位置と、グラフィクスプレーン１１上のカーソルの位置とを示している。
【０５９７】
カーソルは、BDプレーヤによって表示されるが、3D対応プレーヤでは、カーソルの3D画像を、グラフィクスの3D画像（ディスク１００から再生される3D画像）よりも手前の位置に（見えるように）表示させることが望ましい。
【０５９８】
一方、カーソルを、3D画像で表示する場合、論理スクリーン２１上の左眼用画像のカーソルは、カーソルの3D画像が見える表示画面の位置(x,y)から、所定のオフセット値△xだけずれた位置(x＋△x,y)にあり、論理スクリーン２１上の右眼用画像のカーソルも、カーソルの3D画像が見える表示画面の位置(x,y)から、所定のオフセット値△xだけずれた位置(x−△x,y)にある。
【０５９９】
ここで、所定のオフセット値△xによって、3D画像のカーソルの奥行き方向の位置が変化する。
【０６００】
3D対応プレーヤにおいて、カーソルの3D画像を、グラフィクスの3D画像よりも手前の位置に表示させる場合、グラフィクスの3D画像の奥行き方向（Z方向）の、最も手前側の位置を表す値max-depthが必要である。しかしながら、3D対応プレーヤにおいて、値max-depthを、グラフィクスの3D画像から計算することは難しい。
【０６０１】
そこで、例えば、BDであるディスク１００（図３）に、値max-depthを記録しておき、3D対応プレーヤでは、その値max-depthを、PSR（図７）（例えば、PSR#21）に設定する（記憶させる）ことができる。
【０６０２】
この場合、3D対応プレーヤ（又は、3D対応プレーヤが出力する3D画像を表示するディスプレイ）では、PSRに記憶された値max-depthを参照し、値max-depthが表す位置よりも手前側にカーソルを表示するオフセット値△xを求めることができる。そして、カーソルの3D画像を、グラフィクスの3D画像よりも手前の位置に表示させることができる。
【０６０３】
なお、3D対応プレーヤが表示するOSD(On Screen display)も、カーソルと同様にして、グラフィクスの3D画像よりも手前の位置に表示させることができる。
【０６０４】
また、BDであるディスク１００（図３）には、値max-depthとともに、BDであるディスク１００から再生される3D画像の奥行き方向の、最も奥側の位置を表す値min-depthを記録しておき、PSR（図７）には、値max-depth、及び、値min-depthを設定することが可能である。
【０６０５】
以上のように、3D対応プレーヤにおいて、PSRに、BDであるディスク１００に記録された3D画像の奥行き方向の、最も手前側の位置を表す値max-depth等を設定することで、BDから再生される3D画像よりも手前側に、カーソルや、OSDを表示することができる。
【０６０６】
ところで、カーソルの3D画像を表示するためのオフセット値△xは、3D対応プレーヤが任意に設定することができる。また、オフセット値△xは、一定である必要はなく、例えば、フレームごとに変更（設定）することができる。
【０６０７】
したがって、3D対応プレーヤが、BD-Jアプリケーションに対して、カーソルの位置を引数とするイベントを発行するときの、カーソルの位置として、表示画面の位置(x,y)を採用すると、BD-Jアプリケーションは、その表示画面の位置(x,y)の座標変換を行って、グラフィクスプレーン１１上のカーソルの位置(x＋△x,y)（又は、(x−△x,y)）を求めなければならない。
【０６０８】
しかしながら、BD-Jアプリケーションが、表示画面の位置(x,y)の座標変換を行うには、オフセット値△xを認識する必要があり、3D対応プレーヤが任意に設定することが可能なオフセット値△xを、BD-Jアプリケーションが認識することは難しい。
【０６０９】
そこで、マウス・イベントの座標系をL graphics plane上のみに限定する。BDプレーヤに対して、マウス・イベントを発行する際の2次元の位置情報としては、L graphics plane上の座標を採用するように義務付ける。
【０６１０】
すなわち、3D対応プレーヤにおいて、例えば、マウス等のポインティングデバイスのカーソルの3D画像は、左眼用画像、及び、右眼用画像で構成されるが、カーソルの位置を引数とするイベントを発行するときの、カーソルの位置としては、カーソルの3D画像の、グラフィクスプレーン１１のLグラフィクスプレーン１１Ｌ（L領域）、及び、Rグラフィクスプレーン１１Ｒ（R領域）のうちの一方である、例えば、Lグラフィクスプレーン１１Ｌ（L領域）上の位置が用いられる。
【０６１１】
これにより、BD-Jアプリケーションは、3D画像のカーソルの位置として、Lグラフィクスプレーン１１Ｌ上の位置を知る（認識する）ことができるので、BD-Jアプリケーションのオーサは、カーソルの位置として、Lグラフィクスプレーン１１Ｌ上の位置を用いて、カーソルの位置を引数とするイベント（マウスイベント等）に対する処理を記述することができる。
【０６１２】
［Drawing operations｝
【０６１３】
3D対応プレーヤは、L-view/R-viewの整合性を保証しなければならない。すなわち、グラフィクスの左眼用画像と右眼用画像とが、グラフィクスプレーン１１に対して、（3D画像として見えるように、）整合がとれた状態に描画された後に、表示画面に表示されることを保証しなければならない。
【０６１４】
グラフィクスプレーン１１の初期化（リセット）も同様である。すなわち、グラフィクスプレーン１１のLグラフィクスプレーン１１ＬとRグラフィクスプレーン１１Ｒのうちの一方を初期化する場合には、他方も初期化しなければならない。
【０６１５】
但し、L-view/R-view間の意味的な整合性、すなわち、グラフィクスの左眼用画像と右眼用画像とにおける、画像の内容の一致性は、BD-Jアプリケーションのオーサの責任（オーサリング責任）である。
【０６１６】
図４２は、グラフィクスの左眼用画像と右眼用画像との整合性を説明する図である。
【０６１７】
図４２Ａは、整合がとれた状態に描画されたグラフィクスの左眼用画像と右眼用画像とを示している。
【０６１８】
図４２Ａでは、Lグラフィクスプレーン１１Ｌに対する左眼用画像の描画と、Rグラフィクスプレーン１１Ｒに対する右眼用画像の描画とが終了しており、3D対応プレーヤは、このように描画が終了した後に、左眼用画像と右眼用画像とを、表示画面に表示しなければならない。
【０６１９】
なお、図３５で説明した描画完全性保証APIは、描画コマンド列を引数とするが、その描画完全性保証APIの引数である描画コマンド列は、（3D画像として見えるように、）整合がとれた状態となっている左眼用画像と右眼用画像を描画する描画コマンド列でなければならず、かかる描画完全性保証APIによれば、グラフィクスの左眼用画像と右眼用画像とが整合がとれた状態に描画されることが保証される。
【０６２０】
図４２Ｂは、整合がとれていない状態のグラフィクスの左眼用画像と右眼用画像とを示している。
【０６２１】
図４２Ｂでは、Lグラフィクスプレーン１１Ｌに対する左眼用画像の描画は終了しているが、Rグラフィクスプレーン１１Ｒに対する右眼用画像の描画は終了していない。
【０６２２】
3D対応プレーヤは、図４２Ｂの状態の左眼用画像と右眼用画像とを、表示画面に表示してはならない。
【０６２３】
グラフィクスの左眼用画像と右眼用画像との整合性は、例えば、3D対応プレーヤにおいて、トリプルバッファリングを採用することで保証することができる。
【０６２４】
図４３は、トリプルバッファリングを採用する3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０６２５】
3D対応プレーヤは、グラフィクスプレーン１１としてのバックバッファ（隠しバッファ）２１１、並びに、フロントバッファ２１２、及び、２１３を有する。
【０６２６】
バックバッファ２１１は、バッファ２１１Ｌ及び２１１Ｒから構成される。フロントバッファ２１２は、バッファ２１２Ｌ及び２１２Ｒから構成され、フロントバッファ２１３は、バッファ２１３Ｌ及び２１３Ｒから構成される。
【０６２７】
なお、図４３において、バッファ２１１Ｌ，２１２Ｌ、及び、２１３Ｌは、Lグラフィクスプレーン１１Ｌに相当し、左眼用画像を記憶する。バッファ２１１Ｒ，２１２Ｒ、及び、２１３Ｒは、Rグラフィクスプレーン１１Ｒに相当し、右眼用画像を記憶する。
【０６２８】
BD-Jアプリケーションは、描画コマンドを発行し、その描画コマンドの実行の結果としてのグラフィクスの3D画像（左眼用画像と右眼用画像）が、バックバッファ２１１に描画される。
【０６２９】
一方、フロントバッファ２１２と２１３とは、交互に選択され、選択された方のバッファ（以下、選択バッファともいう）に記憶された左眼用画像と右眼用画像は、表示画面に表示される（Display processorに供給される）。
【０６３０】
フロントバッファ２１２と２１３のうちの、選択バッファでない方には、バックバッファ２１１に対する左眼用画像と右眼用画像の描画が終了した後に、そのバックバッファ２１１に記憶（描画）された左眼用画像と右眼用画像とがコピーされる。
【０６３１】
フロントバッファ２１２と２１３を、交互に、選択バッファに選択する選択の切り替えは、tearing artifactsの発生を防止するために、バックバッファからの左眼用画像と右眼用画像の読み出し（コピー）が、最後の水平ラインまで完了した後のVBI(Vertical Blanking Interval)のタイミングで実行される。
【０６３２】
［Frame Accurate Animation］
【０６３３】
FAA(Frame Accurate Animation)には、Image Frame Accurate Animationと、Sync Frame Accurate Animationの２つがあるが、3D対応プレーヤにおいて、アニメーションのための左眼用画像と右眼用画像とを同期して動作させるためには（L/R同期のためには）、Image Frame Accurate Animationと、Sync Frame Accurate Animationのいずれであっても、アニメーションのための左眼用画像の描画と、アニメーションのための右眼用画像の描画とを、別個に行うこと（二箇所で同時にアニメーションが動作させること）が望ましい。
【０６３４】
すなわち、レガシープレーヤでは、１箇所でしかアニメーションが動作しない。L/Rをまたぐような画像やバッファーを使用すれば、擬似的に2箇所でアニメーション動作が可能であるが、BDプレーヤー側のパフォーマンス要件により、充分なアニメーション・フレームレートを出せない。
【０６３５】
図４４は、L/Rをまたぐ画像によるアニメーションを説明する図である。
【０６３６】
図４４では、1920×2160画素のグラフィクスプレーン１１のLグラフィクスプレーン１１Ｌと、Rグラフィクスプレーン１１Ｒとをまたいで、w×(h+1080)画素の１つの画像が描画されている。
【０６３７】
図４４において、w×(h+1080)画素の画像のうちの、上部のw×h画素の画像と、下部のw×h画素の画像とをのぞいた部分（中央部分）を、透過ピクセル（透明色）で塗りつぶすことで、上部のw×h画素の画像を、アニメーションのための左眼用画像とするとともに、下部のw×h画素の画像を、アニメーションのための右眼用画像とすることができる。
【０６３８】
すなわち、図４４の１つの画像の中央部分を、透明色で塗りつぶすことで、その１つの画像の見た目を、w×h画素の画像が、Lグラフィクスプレーン１１Ｌと、Rグラフィクスプレーン１１Ｒとで同一の位置に描画された状態とすることができる。したがって、Lグラフィクスプレーン１１Ｌ上のw×h画素の画像と、Rグラフィクスプレーン１１Ｒ上のw×h画素の画像とを同期して動作させた3D画像のアニメーションを実現することができる。
【０６３９】
しかしながら、図４４では、アニメーションのための左眼用画像、及び、右眼用画像が、w×h画素の画像であるのにもかかわらず、w×(h+1080)画素の、巨大な1つの画像の描画を行う必要がある。
【０６４０】
その結果、BDプレーヤの性能（パフォーマンス）によっては、画像の描画に時間を要し、十分なフレームレートで、3D画像のアニメーションを表示することが困難となる。
【０６４１】
そこで、3D対応プレーヤでは、アニメーションのための左眼用画像の描画と、アニメーションのための右眼用画像の描画とを、別個に行う。
【０６４２】
図４５は、アニメーションのための左眼用画像の描画と、アニメーションのための右眼用画像の描画とを示す図である。
【０６４３】
3D対応プレーヤでは、アニメーションのための左眼用画像が、Lグラフィクスプレーン１１Ｌ（L領域）に描画される。さらに、3D対応プレーヤでは、Lグラフィクスプレーン１１Ｌ（L領域）に対するアニメーションのための左眼用画像の描画とは別個に、アニメーションのための右眼用画像が、Rグラフィクスプレーン１１Ｒ（R領域）に描画される。
【０６４４】
これにより、アニメーションのための左眼用画像と右眼用画像の描画を迅速に行うことができ、その結果、十分なフレームレートで、3D画像のアニメーションを表示することが可能となる。
【０６４５】
図４６は、Lグラフィクスプレーン１１Ｌに対する、アニメーションのための左眼用画像の描画と、Rグラフィクスプレーン１１Ｒに対する、アニメーションのための右眼用画像の描画とを、別個に行う3D対応プレーヤとしての図３のBDプレーヤの機能的構成例を示すブロック図である。
【０６４６】
図４６Ａは、Image Frame Accurate Animationとしてのアニメーションを描画する3D対応プレーヤの構成例を示している。
【０６４７】
イメージバッファ(Image buffer)２３１は、BD-Jアプリケーションが、BDであるディスク１００（図３）からリソースをロードして保存しておくための、キャッシュメモリとして機能するバッファであり、アニメーションのための左眼用画像のリスト（L用の画像のリスト）と、アニメーションのための右眼用画像のリスト（R用の画像のリスト）とを記憶する。
【０６４８】
ピクセル転送器２３２Ｌは、イメージバッファ２３１からアニメーションのための左眼用画像を、画素（ピクセル）単位で、順次読み出し、Lグラフィクスプレーン１１Ｌに描画する。
【０６４９】
ピクセル転送器２３２Ｒは、イメージバッファ２３１からアニメーションのための右眼用画像を、画素（ピクセル）単位で、順次読み出し、Rグラフィクスプレーン１１Ｒに描画する。
【０６５０】
図４６Ｂは、Sync Frame Accurate Animationとしてのアニメーションを描画する3D対応プレーヤの構成例を示している。
【０６５１】
グラフィクスメモリ２４１は、3D対応プレーヤのワークメモリであり、アニメーションのための左眼用画像を記憶するバッファ（L用の画像のbuffer）と、アニメーションのための右眼用画像を記憶する（R用の画像のbuffer）とから構成される。
【０６５２】
ピクセル転送器２４２Ｌは、グラフィクスメモリ２４１からアニメーションのための左眼用画像を、画素単位で、順次読み出し、Lグラフィクスプレーン１１Ｌに描画する。
【０６５３】
ピクセル転送器２４２Ｒは、グラフィクスメモリ２４１からアニメーションのための右眼用画像を、画素単位で、順次読み出し、Rグラフィクスプレーン１１Ｒに描画する。
【０６５４】
ここで、図４７に、Image Frame Accurate Animation の拡張APIの定義を示す。
【０６５５】
また、図４８に、Sync Frame Accurate Animation の拡張APIの定義を示す。
【０６５６】
さらに、図４９及び図５０に、Image Frame Accurate Animation のサンプルコードを示す。なお、図５０は、図４９に続く図である。
【０６５７】
また、図５１及び図５２に、Sync Frame Accurate Animation のサンプルコードを示す。なお、図５２は、図５１に続く図である。
【０６５８】
ここで、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【０６５９】
すなわち、本実施の形態では、3D対応プレーヤである図３のBDプレーヤにおいて、ディスク１００に記録された3D画像のコンテンツやJava(登録商標)アプリケーションを対象として処理を行うこととしたが、3D対応プレーヤにおいて処理の対象とする3D画像のコンテンツやJava(登録商標)アプリケーションは、ディスク１００等の記録媒体以外のデータ供給手段、具体的には、例えば、ディジタル放送のアプリケーションであるオブジェクトカルーセルやデータカルーセルから、3D対応プレーヤに供給し、3D対応プレーヤでは、その、オブジェクトカルーセルやデータカルーセルから供給される3D画像のコンテンツやJava(登録商標)アプリケーションを対象として、処理を行うことができる。
【符号の説明】
【０６６０】
１０  論理プレーン，  １１  グラフィクスプレーン，  １１Ｌ  Lグラフィクスプレーン，  １１Ｒ  Rグラフィクスプレーン，  １２  PGプレーン，  １２Ｌ  L-PGプレーン，  １２Ｒ  R-PGプレーン，  １３  ビデオプレーン，  １３Ｌ  Lビデオプレーン，  １３Ｒ  Rビデオプレーン，  １４  バックグラウンドプレーン，  １４Ｌ  Lバックグラウンドプレーン，  １４Ｒ  Rバックグラウンドプレーン，  １５  ミキサ，  ２１  論理スクリーン，  １０１  バス，  １０２  CPU，  １０３  ROM，  １０４  RAM，  １０５  ハードディスク，  １０６  出力部，  １０７  入力部，  １０８  通信部，  １０９  ドライブ，  １１０  入出力インタフェース，  １１１  リムーバブル記録媒体，  ２０１Ｌ，２０１Ｒ，２０２Ｌ，２０２Ｒ  バッファ，  ２１１  バックバッファ，  ２１１Ｌ，２１１Ｒ，  ２１２  フロントバッファ，  ２１２Ｌ，２１２Ｒ  バッファ，  ２１３  フロントバッファ，  ２１３Ｌ，２１３Ｒ  バッファ，  ２３１  イメージバッファ，  ２３２Ｌ，２３２Ｒ  ピクセル転送器，  ２４１  グラフィクスメモリ，  ２４２Ｌ，２４２Ｒ  ピクセル転送器
【図１】
2010259052.tif 000003
【図２】
2010259052.tif 000004
【図３】
2010259052.tif 000005
【図４】
2010259052.tif 000006
【図５】
2010259052.tif 000007
【図６】
2010259052.tif 000008
【図７】
2010259052.tif 000009
【図８】
2010259052.tif 000010
【図９】
2010259052.tif 000011
【図１０】
2010259052.tif 000012
【図１１】
2010259052.tif 000013
【図１２】
2010259052.tif 000014
【図１３】
2010259052.tif 000015
【図１４】
2010259052.tif 000016
【図１５】
2010259052.tif 000017
【図１６】
2010259052.tif 000018
【図１７】
2010259052.tif 000019
【図１８】
2010259052.tif 000020
【図１９】
2010259052.tif 000021
【図２０】
2010259052.tif 000022
【図２１】
2010259052.tif 000023
【図２２】
2010259052.tif 000024
【図２３】
2010259052.tif 000025
【図２４】
2010259052.tif 000026
【図２５】
2010259052.tif 000027
【図２６】
2010259052.tif 000028
【図２７】
2010259052.tif 000029
【図２８】
2010259052.tif 000030
【図２９】
2010259052.tif 000031
【図３０】
2010259052.tif 000032
【図３１】
2010259052.tif 000033
【図３２】
2010259052.tif 000034
【図３３】
2010259052.tif 000035
【図３４】
2010259052.tif 000036
【図３５】
2010259052.tif 000037
【図３６】
2010259052.tif 000038
【図３７】
2010259052.tif 000039
【図３８】
2010259052.tif 000040
【図３９】
2010259052.tif 000041
【図４０】
2010259052.tif 000042
【図４１】
2010259052.tif 000043
【図４２】
2010259052.tif 000044
【図４３】
2010259052.tif 000045
【図４４】
2010259052.tif 000046
【図４５】
2010259052.tif 000047
【図４６】
2010259052.tif 000048
【図４７】
2010259052.tif 000049
【図４８】
2010259052.tif 000050
【図４９】
2010259052.tif 000051
【図５０】
2010259052.tif 000052
【図５１】
2010259052.tif 000053
【図５２】
2010259052.tif 000054