説明

再生装置、再生方法、およびプログラム、並びに記録媒体

【課題】副画像の3D表示に適した3D表示用のビデオのフォーマットを提供する。
【解決手段】字幕生成部41は、字幕の3D表示に用いられる左目用の字幕データおよび右目用の字幕データを交換するための制御情報であるLR交換コマンドにしたがって、表示中の左目用の字幕の字幕データを右目用の字幕データとして3D表示データ生成部36に出力するとともに、表示中の右目用の字幕の字幕データを左目用の字幕データとして3D表示データ生成部36に出力する。3D表示データ生成部36は、右目用の字幕データに基づいて右目用の字幕を表示部51に表示させ、左目用の字幕データに基づいて左目用の字幕を表示部51に表示させる。本発明は、例えば、3D表示用のディスクを再生する再生装置に適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、再生装置、再生方法、およびプログラム、並びに記録媒体に関し、特に、副画像の3D表示に適した3D表示用のビデオのフォーマットを提供することができるようにした再生装置、再生方法、およびプログラム、並びに記録媒体に関する。
【背景技術】
【0002】
3D(3Dimensional)の画像の表示機能を持つディスプレイ(以下、3Dディスプレイ)には様々な種類が存在する。また、3D表示用のビデオのフォーマット(以下、3Dビデオフォーマットと称する)にも様々なものが存在する。
【0003】
3Dビデオフォーマットとしては、3点以上の視点の画像(Multi-views)を使用する方式、具体的には例えば、いわゆるレンチキュラ方式の3Dディスプレイに適した、2次元画像とDepth画像を用いる3Dビデオフォーマットなどがある(例えば非特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【非特許文献1】(株)PHILIPSのHP>Home>3D Solutions>About「2009年3月26日検索」「http://www.business-sites.philips.com/3dsolutions/about/Index.html」
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、字幕や、メニュー画面で使用されるメニューボタンなどの副画像の3D表示に適した3Dビデオフォーマットは存在しない現状である。
【0006】
本発明は、このような状況に鑑みてなされたものであり、副画像の3D表示に適した3Dビデオフォーマットを提供することができるようにするものである。
【課題を解決するための手段】
【0007】
本発明の第1の側面の再生装置は、副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報を含むデータ構造のデータを再生する際に、前記LR交換制御情報にしたがって、表示中の前記L画像の前記L画像データを前記R画像データとして出力するとともに、表示中の前記R画像の前記R画像データを前記L画像データとして出力する出力手段と、前記出力手段により出力された前記R画像データに基づいて前記R画像を表示部に表示させ、前記L画像データに基づいて前記L画像を前記表示部に表示させる表示制御手段とを備える再生装置である。
【0008】
本発明の第1の側面の再生方法およびプログラムは、上述した本発明の第1の側面の再生装置に対応する。
【0009】
本発明の第1の側面の再生装置および再生方法、並びにプログラムにおいては、副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報を含むデータ構造のデータを再生する際に、LR交換制御情報にしたがって、表示中のL画像のL画像データがR画像データとして出力されるとともに、表示中のR画像のR画像データがL画像データとして出力され、出力されたR画像データに基づいてR画像が表示部に表示され、L画像データに基づいてL画像が表示部に表示される。
【0010】
本発明の第1の側面の記録媒体は、副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報を含むデータ構造のデータが記録されている記録媒体である。
【0011】
本発明の第1の側面の記録媒体に記録されているデータのデータ構造においては、副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報が含まれる。
【0012】
本発明の第2の側面の再生装置は、2D(2Dimensional)表示用の副画像に対する、前記副画像の3D(3Dimensional)表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報を含むデータ構造のデータを再生する際に、前記オフセット変更制御情報にしたがって、表示中の前記L画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記L画像の画像データであるL画像データとし、そのL画像データに基づいて前記L画像を表示部に表示させるとともに、表示中の前記R画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記R画像の画像データであるR画像データとし、そのR画像データに基づいて前記R画像を前記表示部に表示させる表示制御手段を備える再生装置。
【0013】
本発明の第2の側面の再生方法およびプログラムは、上述した本発明の第2の側面の再生装置に対応する。
【0014】
本発明の第2の側面の再生装置および再生方法、並びにプログラムにおいては、2D(2Dimensional)表示用の副画像に対する、副画像の3D(3Dimensional)表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報を含むデータ構造のデータを再生する際に、オフセット変更制御情報にしたがって、表示中のL画像の副画像に対するずれ方向と反対方向に副画像をずらした結果得られる画像の画像データがL画像の画像データであるL画像データとされ、そのL画像データに基づいてL画像が表示部に表示されるとともに、表示中のR画像の副画像に対するずれ方向と反対方向に副画像をずらした結果得られる画像の画像データがR画像の画像データであるR画像データとされ、そのR画像データに基づいてR画像が表示部に表示される。
【0015】
本発明の第2の側面の記録媒体は、2D(2Dimensional)表示用の副画像に対する、前記副画像の3D(3Dimensional)表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報を含むデータ構造のデータが記録されている記録媒体である。
【0016】
本発明の第2の側面の記録媒体に記録されているデータのデータ構造においては、副画像に対する、副画像の3D表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報が含まれる。
【発明の効果】
【0017】
本発明によれば、副画像の3D表示を行うことができる。また、副画像の3D表示に適した3Dビデオフォーマットを提供できる。
【図面の簡単な説明】
【0018】
【図1】本発明を適用したディスクの第1実施の形態の構成例を示す図である。
【図2】インデックスファイルの詳細構成例を示す図である。
【図3】字幕データのディスプレイセットの構成例を示す図である。
【図4】メニューデータのディスプレイセットの構成例を示す図である。
【図5】図1のディスクを再生する再生装置の構成例を示すブロック図である。
【図6】図5の字幕生成部の詳細構成例を示すブロック図である。
【図7】3D字幕データの生成について説明する図である。
【図8】字幕の3D表示の例を示す図である。
【図9】ムービーオブジェクト実行時の再生装置による3D字幕再生処理を説明するフローチャートである。
【図10】ムービーオブジェクト実行時の再生装置による字幕オフセットフラグ変更処理を説明するフローチャートである。
【図11】字幕の3D表示の他の例を示す図である。
【図12】オフセットフラグ変更コマンドの他の適用例を示す図である。
【図13】方向変更ボタンの表示例を示す図である。
【図14】BD-Jオブジェクト実行時の再生装置の機能的構成例を示す図である。
【図15】BD-Jオブジェクト実行時の再生装置によるグラフィックス表示処理を説明するフローチャートである。
【図16】BD-Jオブジェクト実行時の再生装置によるオフセット方向変更処理を説明するフローチャートである。
【図17】本発明を適用したディスクの第2実施の形態における字幕データのエポックの構成例を示す図である。
【図18】図17のディスクを再生する再生装置の構成例を示すブロック図である。
【図19】図18の字幕生成部の詳細構成例を示すブロック図である。
【図20】図18の表示部51による3Dの字幕の表示について説明する図である。
【図21】LR交換コマンドによる字幕の3D表示の変化を説明する図である。
【図22】ムービーオブジェクト実行時の再生装置による3D字幕再生処理について説明するフローチャートである。
【図23】図22のステップS116の字幕生成処理の詳細を説明するフローチャートである。
【図24】ムービーオブジェクトの実行時の再生装置による字幕表示方向変更処理を説明するフローチャートである。
【図25】LR交換コマンドの他の適用例を示す図である。
【図26】BD-Jオブジェクト実行時の再生装置の機能的構成例を示す図である。
【図27】BD-Jグラフィックス生成部の詳細構成例を示すブロック図である。
【図28】BD-Jオブジェクト実行時の再生装置によるグラフィックス表示処理を説明するフローチャートである。
【図29】BD-Jオブジェクト実行時の再生装置による表示方向変更処理を説明するフローチャートである。
【発明を実施するための形態】
【0019】
<第1実施の形態>
[ディスクの第1実施の形態の構成例]
図1は、本発明を適用したディスクの第1実施の形態の構成例を示す図である。
【0020】
図1のディスク11は、BD-ROM(Blue-ray Disc-Read Only Memory)などにより構成され、ディスク11には、インデックスファイル(index.bdmv)とムービーオブジェクトファイル(MovieObject.bdmv)が記録される。また、ディスク11には、プレイリストファイル(PLAYLIST/XXXXX.mpls)、クリップインフォメーションファイル(CLIPINF/XXXXX.clpi)、およびストリームファイル(STREAM/XXXXX.m2ts)も記録される。さらに、ディスク11には、BD-J(Blu-ray Disc Java(登録商標))オブジェクトファイル(BDJO/XXXXX.bdjo)、その関連ファイル(JAR/XXXXX.jar)なども記録される。なお、Xは0から9までの任意の数字である。
【0021】
インデックスファイルには、図2に示すように、例えば、ディスク11に記録されているタイトル番号の一覧と、そのタイトル番号に対応して実行されるオブジェクトの種類および番号とが記述される。
【0022】
タイトル番号としては、1から順に付与された整数値だけでなく、ディスク11が再生装置に挿入されたときに実行されるオブジェクトに対応する「First Play」、および、トップメニュー画面の表示時に実行されるオブジェクトに対応する「Top Menu」も記述される。オブジェクトの種類としては、ムービーオブジェクト(MovieObject)とBD-Jオブジェクト(BD-J Object)の2種類がある。
【0023】
図2の例では、インデックスファイルに、「First Play」、「Top menu」、「Title#N」に対応して、それぞれ、「MovieObject#1」、「MovieObject#2」、「MovieObject#M」が記述されている。また、「Title#1」に対応して「BD-J Object#1」が記述されている。
【0024】
なお、MovieObject#i,BD-J Object#iは、それぞれ、オブジェクトの種類がムービーオブジェクト,BD-Jオブジェクトであり、オブジェクトの番号がiであることを表している。また、Title#iは、タイトルの番号がiであることを表している。以上のようなインデックスファイルは、インデックステーブルとも呼ばれる。
【0025】
ムービーオブジェクトファイルには、複数個のムービーオブジェクトが記述され、そのムービーオブジェクトには、HDMV(High Definition Movie)ナビゲーションコマンドというプログラムが記述される。ディスク11を再生する再生装置は、このナビゲーションコマンドを順次実行する。なお、以下では、ナビゲーションコマンドを特に区別する必要がない場合、コマンドという。
【0026】
プレイリストファイルは、ムービーオブジェクトまたはBD-Jオブジェクトによってのみ再生されるファイルであり、これらのオブジェクトに記述される1つのコマンドで再生されるAVストリーム(詳細は後述する)に関する情報が記述される。
【0027】
具体的には、プレイリストファイルは、複数のプレイアイテムにより構成される。各プレイアイテムには、再生対象のAVストリームに対応するクリップインフォメーションファイルを指定する情報と、AVストリームの再生区間を表す時間情報が記述される。
【0028】
AVストリームは、ストリームファイルとしてディスク11に記録されている。AVストリームは、MPEG2,MPEG-4 AVC(Advanced Video Coding),VC1などに準拠して符号化され、ISO13818-2に準拠して多重化された、映画などの主画像を2D表示するためのビデオデータ、および、それに対応するオーディオデータ、字幕を2D表示するための字幕データ、並びに、メニューボタンを2D表示するためのメニューデータのTS(Transport Stream)パケットにより構成される。
【0029】
また、AVストリームのPESパケットは、PESパケットヘッダとセグメントにより構成される。PESパケットヘッダには、表示時刻を示すPTS(Presentation Time Stamp)、DTS(Decoding Time Stamp)などが記述される。
【0030】
字幕データのPESパケットに含まれるセグメントとしては、PCS(Presentation Composition Segment),WDS(Window Definition Segment),PDS(Palette Definition Segment),ODS(Object Definition Segment)、またはEND(End of Display Set Segment)がある。また、メニューデータのPESパケットに含まれるセグメントとしては、ICS(Interactive Composition Segment),PDS,ODS、またはENDがある。1画面分の字幕データやメニューデータのセグメントは、ディスプレイセットと呼ばれる。ディスプレイセットの詳細については、後述する図3および図4を参照して説明する。
【0031】
クリップインフォメーションファイルには、プレイリストファイルに記述される時間情報と、AVストリームのパケット番号とを対応付けるマップが記述されている。従って、再生装置は、クリップインフォメーションファイルを参照することにより、各プレイアイテムに対応する再生対象のAVストリームのパケット番号を認識することができる。
【0032】
ストリームファイルは、AVストリームのファイルである。BD-Jオブジェクトファイルには、複数個のBD-Jアプリケーションが記述される。ディスク11を再生する再生装置は、このBD-Jアプリケーションを起動する。
【0033】
[ディスプレイセットの構成例]
図3は、ディスク11に記録される字幕データのディスプレイセットの構成例を示す図であり、図4は、メニューデータのディスプレイセットの構成例を示す図である。
【0034】
図3に示すように、字幕データのディスプレイセットは、1画面分の字幕のセグメントであるPCS,WDS,PDS,ODS、およびENDにより構成される。
【0035】
字幕データのPCSには、各ODSに対応する字幕に付与されたID(以下、副画像IDという)、字幕を3D表示するためのオフセット情報(詳細は後述する)などが記述される。字幕データのWDSには、字幕の表示範囲を示すウィンドウの位置やサイズなどの構造を示す情報、ウィンドウに固有のID(以下、ウィンドウIDという)などが記述される。字幕データのPDSには、字幕の色として使用可能な色の情報が記述される。字幕データのODSには、字幕の形状を示す情報が記述される。字幕データのENDは、ディスプレイセットの終端を示すセグメントである。
【0036】
また、図4に示すように、メニューデータのディスプレイセットは、1画面分のメニューボタンのセグメントであるICS,PDS,ODS、およびENDにより構成される。
【0037】
メニューデータのICSには、メニューボタンの操作により実行されるコマンドなどのメニュー制御情報が記述される。さらに、ICSには、メニューボタンを3D表示するためのオフセット情報、各ODSに対応するメニューボタンに固有のID(以下、ボタンIDという)などのボタン情報が記述される。
【0038】
メニューデータのPDSには、メニューボタンの色として使用可能な色の情報が記述される。図4の例では、1画面分のメニューボタンの色として使用可能な色の情報の種類が2種類あるため、2種類のPDS(PDS#1,PDS#2)がディスプレイセット内に配置されている。
【0039】
メニューデータのODSには、メニューボタンの形状を示す情報が記述される。メニューボタンのENDは、ディスプレイセットの終端を示すセグメントである。
【0040】
なお、本実施の形態では、PCSとICSにオフセット情報が記述されるものとするが、オフセット情報の記述場所は、これに限定されない。例えば、オフセット情報は、プレイリストファイルに記述されてもよい。
【0041】
以上のようなディスプレイセットの任意の数から、エポックが構成される。再生装置は、1個のエポックに対応する字幕やメニューボタンを連続して表示し、表示を一時的に中断した後、次のエポックに対応する字幕やメニューボタンを表示する。即ち、エポックとは、連続して表示可能な字幕やメニューボタンのディスプレイセットの単位である。
【0042】
以下にオフセット情報について説明する。
【0043】
ユーザに3Dの画像を見せるためには、所定の方向に所定の距離だけ離れた2枚の画像のうちの一方の画像をユーザの左目に見せるとともに、他方の画像を右目に見せる必要がある。
【0044】
しかしながら、ディスク11に記録されているビデオデータ、字幕データ、およびメニューデータは、2D表示するためのデータであり、再生装置は左目用と右目用の画像の両方を表示することができない。従って、画像を3D表示可能にするために、2D表示用の画像に対する、左目用および右目用の画像のずれ方向の組み合わせを表す方向情報およびずれ量を表すオフセット値(offset_value)が、オフセット情報として記述される。
【0045】
なお、左目用のオフセット方向と右目用のオフセット方向は反対方向である。オフセット値は、例えば画素数で表現される。
【0046】
また、ムービーオブジェクト実行時に設定されるPCSやICSに含まれるオフセット情報の方向情報は、オフセット値とは別にオフセットフラグとして表されるものとする。例えば、オフセットフラグは、表示面に対して飛び出す方向の3D画像に対応するオフセット方向の組み合わせを表す場合0となり、表示面に対して引っ込む方向の3D画像に対応するオフセット方向の組み合わせを表す場合1となる。
【0047】
一方、BD-Jオブジェクト実行時に設定されるオフセット情報の方向情報は、オフセット値の正負で表されるものとする。例えば、正のオフセット値は、表示面に対して飛び出す方向の3D画像に対応するオフセット方向の組み合わせを表し、負のオフセット値は、表示面に対して引っ込む方向の3D画像に対応するオフセット方向の組み合わせを表す。
【0048】
[再生装置の構成例]
図5は、上述したディスク11を再生する再生装置20の構成例を示すブロック図である。
【0049】
図5の再生装置20は、入力部21、制御部22、再生部23、記憶部24、通信部25、およびドライブ26により構成される。
【0050】
入力部21は、キーボード、マウス、マイクロフォンなどよりなる。入力部21は、ユーザからの指令を受け付け、制御部22に供給する。制御部22は、所定のプログラムを実行することにより、入力部21からの指令に応じて再生部23を制御する。
【0051】
再生部23は、ドライブ31、読み出しバッファ32、PIDフィルタ33、ビデオ生成部34、字幕/メニュー生成部35、3D表示データ生成部36、BD-Jグラフィックス生成部37、およびオーディオ生成部38により構成される。
【0052】
ドライブ31は、制御部22の制御にしたがって、装着されたディスク11を駆動する。これにより、ドライブ31は、ディスク11に記録されているインデックスファイル、ムービーオブジェクトファイル、BD-Jオブジェクトファイル、プレイリストファイル、クリップインフォメーションファイル、ストリームファイルなどを読み出す。ドライブ31は、読み出されたインデックスファイル、ムービーオブジェクトファイル、BD-Jオブジェクトファイル、プレイリストファイル、クリップインフォメーションファイルなどを制御部22に供給する。ドライブ31は、読み出されたストリームファイルのAVストリームを読み出しバッファ32に供給する。
【0053】
読み出しバッファ32は、制御部22の制御にしたがって、ドライブ31から供給されるAVストリームを保持したり、保持しているAVストリームを読み出してPIDフィルタ33に供給したりする。
【0054】
PIDフィルタ33は、読み出しバッファ32からのAVストリームの各パケットのパケットID(PID)に基づいて、AVストリームからビデオデータ、字幕データ、メニューデータ、およびオーディオデータのパケットをそれぞれ抽出する。なお、PIDとは、パケットを構成するデータの種類ごとに固有のIDであり、パケットに付加されている。
【0055】
PIDフィルタ33は、抽出されたビデオデータ、字幕データ、メニューデータ、オーディオデータのパケットから、それぞれ、PESパケットを抽出する。そして、PIDフィルタ33は、ビデオデータのPESパケットをビデオ生成部34に供給し、字幕データおよびメニューデータのPESパケットを字幕/メニュー生成部35に供給する。また、PIDフィルタ33は、オーディオデータのPESパケットをオーディオ生成部38に供給する。
【0056】
ビデオ生成部34は、PIDフィルタ33から供給されるビデオデータのPESパケットを復号し、その結果得られるビデオデータを3D表示データ生成部36に供給する。また、ビデオ生成部34は、所定のオフセット情報を3D表示データ生成部36に供給する。
【0057】
字幕/メニュー生成部35は、字幕生成部41とメニュー生成部42により構成される。字幕生成部41は、ムービーオブジェクトの実行時に、PIDフィルタ33から供給される字幕データのPESパケットを復号し、その結果得られる字幕データとPESパケットのPCSに含まれるオフセット情報を3D表示データ生成部36に供給する。字幕生成部41の詳細については、後述する図6を参照して説明する。
【0058】
メニュー生成部42は、ムービーオブジェクトの実行時に、PIDフィルタ33から供給されるメニューデータのPESパケットを復号し、その結果得られるメニューデータとPESパケットのICSに含まれるオフセット情報を3D表示データ生成部36に供給する。
【0059】
3D表示データ生成部36は、ビデオ生成部34から供給されるビデオデータとオフセット情報に基づいて、左目用のビデオデータと右目用のビデオデータを、主画像を3D表示するための3Dビデオデータとして生成する。
【0060】
具体的には、3D表示データ生成部36は、ビデオ生成部34から供給されるビデオデータに対応する主画像を、所定のオフセット値だけ所定のオフセット方向にそれぞれずらした画像のビデオデータを、右目用のビデオデータおよび左目用のビデオデータとして生成する。
【0061】
3D表示データ生成部36は、字幕/メニュー生成部35から供給される字幕データとオフセット情報に基づいて、3Dビデオデータと同様に、左目用の字幕データと右目用の字幕データを、字幕を3D表示するための3D字幕データとして生成する。また、3D表示データ生成部36は、字幕/メニュー生成部35から供給されるメニューデータとオフセット情報に基づいて、3Dビデオデータと同様に、左目用のメニューデータと右目用のメニューデータを、メニューボタンを3D表示するための3Dメニューデータとして生成する。
【0062】
また、3D表示データ生成部36は、3Dビデオデータ、3D字幕データ、および3Dメニューデータを、左右の各目用のデータごとに合成する。具体的には、3D表示データ生成部36は、左目用のビデオデータ、左目用の字幕データ、および左目用のメニューデータを合成して左目用の表示データを生成する。また、3D表示データ生成部36は、右目用のビデオデータ、右目用の字幕データ、および右目用のメニューデータを合成して右目用の表示データを生成する。
【0063】
さらに、3D表示データ生成部36は、BD-Jグラフィックス生成部37から供給される、メニューボタンなどのBD-Jグラフィックスを2D表示するためのグラフィックスデータとオフセット情報に基づいて、3Dビデオデータと同様に、左目用のグラフィックスデータと右目用のグラフィックスデータを、BD-Jグラフィックスを3D表示するための3Dグラフィックスデータとして生成する。
【0064】
3D表示データ生成部36は、3Dビデオデータと3Dグラフィックスデータを、左右の各目用のデータごとに合成し、左目用の合成結果を左目用の表示データとし、右目用の合成結果を右目用の表示データとする。そして、3D表示データ生成部36は、左目用の表示データと右目用の表示データを3D表示データとして表示部51に供給し、左目用の画像と右目用の画像を表示部51に表示させる。
【0065】
BD-Jグラフィックス生成部37は、BD-Jオブジェクトの実行時に、制御部22からの制御にしたがってグラフィックスデータを生成する。そして、BD-Jグラフィックス生成部37は、そのグラフィックスデータと制御部22から供給されるオフセット情報を、3D表示データ生成部36に供給する。
【0066】
オーディオ生成部38は、PIDフィルタ33から供給されるオーディオデータのPESパケットを復号し、その結果得られるオーディオデータをスピーカ52に供給する。
【0067】
表示部51は、3Dディスプレイなどにより構成される。表示部51は、3D表示データ生成部36から供給される3D表示データに基づいて左目用の画像と右目用の画像を表示する。その結果として、ユーザは、3D画像を見ることができる。
【0068】
スピーカ52は、オーディオ生成部38から供給されるオーディオデータに対応する音声を出力する。
【0069】
記憶部24は、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスクなどにより構成される。記憶部24は、制御部22により実行されるプログラム、制御部22による処理によって生成される情報などを記憶する。通信部25は、ネットワークカード等で構成される。
【0070】
なお、制御部22により実行されるプログラムは、記憶部24のROMに記憶されるようにすることもできるし、記憶部24のハードディスクやドライブ26に装着されるリムーバブルメディア53に記録され、記憶部24のRAMにロードされることにより実行されるようにすることもできる。
【0071】
リムーバブルメディア53としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
【0072】
また、制御部22により実行されるプログラムは、上述したようなリムーバブルメディア53から再生装置20にインストールする他、通信網や放送網を介して、再生装置20にダウンロードし、記憶部24のハードディスクにインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して再生装置20に無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、再生装置20に有線で転送することができる。
【0073】
[字幕生成部の詳細構成例]
図6は、図5の字幕生成部41の詳細構成例を示すブロック図である。
【0074】
図6の字幕生成部41は、符号化データバッファ61、ストリームグラフィックス生成部62、オブジェクトバッファ63、グラフィックスプレーン64、CLUT(Color Look Up Table)65、コンポジションバッファ66、および制御部67により構成される。
【0075】
符号化データバッファ61は、図5のPIDフィルタ33から供給される字幕データのPESパケットのうちのセグメントを保持する。符号化データバッファ61は、字幕データのPESパケットのPESパケットヘッダに含まれているDTSに基づいて、PCS,WDS,ODSをストリームグラフィックス生成部62に供給する。符号化データバッファ61は、PIDフィルタ33から供給される字幕データのPDSを、即座にストリームグラフィックス生成部62に供給する。
【0076】
ストリームグラフィックス生成部62は、符号化データバッファ61から供給されるODSを復号し、その結果得られるインデックスカラーからなる非圧縮状態の字幕データ(ランレングスデータ)を字幕オブジェクトとしてオブジェクトバッファ63に供給する。また、ストリームグラフィックス生成部62は、符号化データバッファ61から供給されるPDS,PCS,WDSをコンポジションバッファ66に供給する。
【0077】
オブジェクトバッファ63は、ストリームグラフィックス生成部62から供給される字幕オブジェクトを保持する。
【0078】
グラフィックスプレーン64は、オブジェクトバッファ63から供給される1画面分の字幕オブジェクトを保持する。グラフィックスプレーン64は、制御部67からの指示に応じて、保持している字幕オブジェクトを読み出し、CLUT65に供給する。
【0079】
CLUT65は、制御部67から供給されるPDSに基づいて、インデックスカラーとY,Cr,Cbの値とを対応付けたテーブルを記憶する。CLUT65は、記憶しているテーブルに基づいて、グラフィックスプレーン64から供給される字幕オブジェクトのインデックスカラーをY,Cr,Cbの値からなる画像データに変換する。そして、CLUT65は、字幕オブジェクトの画像データを字幕データとして3D表示データ生成部36(図5)に出力する。
【0080】
コンポジションバッファ66は、ストリームグラフィックス生成部62から供給されるPDS,PCS,WDSを保持する。
【0081】
制御部67は、コンポジションバッファ66からPCSに含まれるオフセット情報を読み出し、3D字幕データの生成に用いられるオフセット情報として設定する。また、制御部67は、制御部22(図5)からの制御にしたがって、各部を制御する。例えば、制御部67は、制御部22(図5)からの、ムービーオブジェクトに記述されるオフセットフラグを変更するためのナビゲーションコマンド(以下、オフセットフラグ変更コマンドという)に応じた制御により、現在設定中のオフセット情報のオフセットフラグを変更する。
【0082】
また、制御部67は、現在設定中のオフセット情報を3D表示データ生成部36に供給する。制御部67は、PESパケットヘッダに含まれるPTSに基づくタイミングで、グラフィックスプレーン64に字幕オブジェクトのCLUT65への転送を指示する。さらに、制御部67は、コンポジションバッファ66からPDSを読み出し、CLUT65に供給する。
【0083】
[メニュー生成部の詳細構成例]
メニュー生成部42は、処理対象が字幕データではなく、メニューデータである点を除いて、図6の字幕生成部41と同様に構成されるので、図示は省略する。
【0084】
メニュー生成部42の符号化データバッファは、メニューデータのPESパケットのうちのセグメントを保持し、コンポジションバッファは、ICS,PDSを保持する。ストリームグラフィックス生成部は、メニューデータのODSを復号し、インデックスカラーからなる非圧縮状態のメニューデータをメニューオブジェクトとしてオブジェクトバッファに供給して保持させる。
【0085】
グラフィックスプレーンは、オブジェクトバッファ63に保持されているメニューオブジェクトを読み出し、1画面分のメニューオブジェクトを保持する。CLUTは、グラフィックスプレーンから読み出されたメニューオブジェクトを画像データに変換し、メニューデータとして3D表示データ生成部36に出力する。
【0086】
[3D字幕データの生成の説明]
図7は、3D表示データ生成部36による3D字幕データの生成について説明する図である。
【0087】
図7の左側に示すように、字幕生成部41から出力される字幕データに対応する字幕が星型である場合、例えば、図7の右上に示すように、その星型の上下方向に伸びる中心線Cに対して右方向にオフセット値だけずらした星型の字幕データが、左目用の字幕データとして生成される。また、図7の右下に示すように、字幕生成部41から出力された字幕データに対応する星型を中心線Cに対して左方向にオフセット値だけずらした星型の字幕データが、右目用の字幕データとして生成される。
【0088】
表示部51は、以上のようにして生成された左目用の字幕データと右目用の字幕データに基づいて、図7の右上に示す星型を左目用の字幕の画像として表示し、図7の右下に示す星型を右目用の字幕の画像として表示する。その結果、ユーザは、表示部51において、例えば、図8に示すような表示面に対して飛び出た3Dの星型を字幕として見ることができる。
【0089】
[ムービーオブジェクト実行時の再生装置の処理の説明]
図9は、ムービーオブジェクト実行時の再生装置20による3D字幕再生処理を説明するフローチャートである。この3D字幕再生処理は、例えば、制御部22が、ムービーオブジェクトに記述される、プレイリストを再生するためのコマンドを実行するときに開始される。
【0090】
図9のステップS11において、ドライブ31は、制御部22からの指令に応じて、ディスク11からプレイリストファイルを読み出し、制御部22に供給する。
【0091】
ステップS12において、ドライブ31は、プレイリストに基づく制御部22からの指令に応じて、プレイリストで指定されているクリップインフォメーションファイルに対応するAVストリームをディスク11から読み出し、読み出しバッファ32に供給する。
【0092】
ステップS13において、読み出しバッファ32は、ドライブ31から供給されるAVストリームを保持する。読み出しバッファ32は、保持しているAVストリームを読み出し、PIDフィルタ33に供給する。
【0093】
ステップS14において、PIDフィルタ33は、読み出しバッファ32からのAVストリームの各パケットのPIDに基づいて、そのAVストリームから字幕データのPESパケットを抽出し、字幕/メニュー生成部35に供給する。
【0094】
ステップS15において、字幕生成部41の符号化データバッファ61(図6)は、PIDフィルタ33から供給される字幕データのPESパケットのうちのセグメントを保持する。
【0095】
ステップS16において、符号化データバッファ61は、保持しているセグメントを読み出して、ストリームグラフィックス生成部62に供給する。
【0096】
ステップS17において、ストリームグラフィックス生成部62は、符号化データバッファ61から供給されるセグメントのうちのPCS,PDS,WDSをコンポジションバッファ66に供給し、保持させる。
【0097】
ステップS18において、制御部67は、コンポジションバッファ66に保持されているPCSに含まれるオブジェクト情報を、3D字幕データの生成に用いるオフセット情報として設定し、3D表示データ生成部36に出力する。
【0098】
ステップS19において、ストリームグラフィックス生成部62は、符号化データバッファ61から供給されるセグメントのうちのODSを復号し、その結果得られる字幕オブジェクトをオブジェクトバッファ63に供給する。
【0099】
ステップS20において、オブジェクトバッファ63は、ストリームグラフィックス生成部62から供給される字幕オブジェクトを保持する。オブジェクトバッファ63は、保持している字幕オブジェクトをグラフィックスプレーン64に供給する。
【0100】
ステップS21において、グラフィックスプレーン64は、オブジェクトバッファ63から供給される1画面分の字幕オブジェクトを保持する。ステップS22において、グラフィックスプレーン64は、制御部67からの指示に応じて、保持している1画面分の字幕オブジェクトを読み出し、CLUT65に供給する。
【0101】
ステップS23において、CLUT65は、記憶しているテーブルに基づいて、グラフィックスプレーン64から供給される字幕オブジェクトのインデックスカラーをY,Cr,Cbの値からなる画像データに変換する。そして、CLUT65は、その画像データを字幕データとして3D表示データ生成部36に出力する。
【0102】
ステップS24において、3D表示データ生成部36は、制御部67から供給されるオフセット情報に基づいて、CLUT65から供給される字幕データから3D字幕データを生成する。この3D字幕データは、3Dビデオデータおよび3Dメニューデータと合成され、3D表示データとして表示部51に供給される。その結果、表示部51には、3Dビデオデータに対応する3Dの主画像の副画像の1つとして、3Dの字幕が表示される。
【0103】
なお、3Dメニュー再生処理は、処理対象が字幕データではなく、メニューデータである点を除いて、図9の3D字幕再生処理と同様に行われるので、説明は省略する。
【0104】
図10は、ムービーオブジェクト実行時の再生装置20による字幕オフセットフラグ変更処理を説明するフローチャートである。この字幕オフセットフラグ変更処理は、例えば、制御部22がオフセットフラグ変更コマンド(オフセット変更制御情報)を実行するときに開始される。
【0105】
図10のステップS61において、制御部67は、制御部22からの指令に応じて、現在設定中のオフセット情報のオフセットフラグは1であるかどうかを判定する。ステップS61で現在設定中のオフセットフラグが1であると判定された場合、ステップS62において、制御部67は、現在設定中のオフセットフラグを0に変更する。そして処理はステップS64に進む。
【0106】
一方、ステップS61で現在設定中のオフセットフラグが0であると判定された場合、ステップS63において、制御部67は、制御部22からの制御にしたがって、現在設定中のオフセットフラグを1に変更する。そして処理はステップS64に進む。
【0107】
ステップS64において、制御部67は、変更後のオフセットフラグを含むオフセット情報を3D表示データ生成部36に出力する。
【0108】
ステップS65において、3D表示データ生成部36は、制御部67から供給されるオフセット情報に基づいて、CLUT65から供給される字幕データから3D字幕データを生成する。
【0109】
その結果、表示部51に表示されている3Dの字幕の表示面に対して垂直な方向(以下、奥行き方向という)の位置が、表示面に対して反対の位置となる。即ち、表示面に対して飛び出すように表示されていた3Dの字幕は、表示面に対して引っ込むように表示され、表示面に対して引っ込むように表示されていた3Dの字幕は、表示面に対して飛び出すように表示される。
【0110】
例えば、図10の字幕オフセットフラグ変更処理前に、図8に示したように、表示面に対して飛び出すように表示されていた3Dの字幕としての星型は、字幕オフセット方向変更処理後には、図11に示すように、表示面に対して引っ込むように表示される。
【0111】
なお、メニューオフセットフラグ変更処理は、処理対象が字幕データではなく、メニューデータである点を除いて、図10の字幕オフセットフラグ変更処理と同様に行われるので、説明は省略する。
【0112】
[オフセットフラグ変更コマンドの他の適用例]
図12は、オフセットフラグ変更コマンドの他の適用例を示す図である。
【0113】
図12に示すように、オフセットフラグ変更コマンドは、メニューデータのICSに含まれるメニュー制御情報に適用されてもよい。
【0114】
この場合、図13に示すように、オフセットフラグ変更コマンドに対応するメニューボタンである方向変更ボタン81が表示部51に表示される。ユーザは、字幕やメニューボタンの表示中に、入力部21を用いて方向変更ボタン81を操作することにより、再生装置20に字幕オフセットフラグ変更処理およびメニューオフセットフラグ変更処理を行わせることができる。
【0115】
具体的には、制御部22は、ユーザによる方向変更ボタン81に対する操作に対応する指令を入力部21から取得して制御部67に供給し、その方向変更ボタン81に対応するコマンドの実行を制御部67に指令する。制御部67は、その指令に応じて、現在設定中のオフセット情報に含まれるオフセットフラグを変更する。
【0116】
以上のように、再生装置20では、オフセットフラグ変更コマンドにしたがって、表示中の左目用の副画像のオフセット方向と反対方向にずらした2D表示用の副画像の画像データが左目用の副画像データとされ、その左目用の副画像データに基づいて左目用の副画像が表示されるとともに、表示中の右目用の副画像のオフセット方向と反対方向にずらした2D表示用の副画像の画像データが右目用の副画像データとされ、その右目用の副画像データに基づいて右目用の副画像が表示される。従って、表示部51に表示されている3Dの副画像の奥行き方向の表示面に対する位置を反対にすることができる。よって、オフセットフラグ変更コマンドを含むディスク11のビデオフォーマットは、副画像の3D表示に適した3Dビデオフォーマットであるといえる。
【0117】
また、再生装置20は、オフセットフラグを変更することにより、左目用の副画像のオフセット方向と右目用の副画像のオフセット方向を変更するので、表示部51に表示されている3Dの副画像の奥行き方向の表示面に対する位置を容易に反対にすることができる。
【0118】
これに対して、オフセット情報の変更量をコマンドで与えることにより、3Dの副画像の奥行き方向の表示面に対する位置を反対にする場合、オフセット値の変更量は、変更前に設定されるオフセット値の倍になり、多くのビット数を必要とする。
【0119】
例えば、現在設定中のオフセット値が63であり、オフセットフラグが1である場合、オフセット値の変更量は126となり、オフセット方向の変更方向を表すオフセットフラグは0となる。従って、このオフセット値の変更量を表すためには、オフセット値の変更量に7ビットを割り当てる必要がある。
【0120】
しかしながら、オフセット値の変更量に多くのビット数を割り当てることは困難であり、例えば、オフセット値の変更量に割り当てられたビット数が6ビットであり、オフセット方向に割り当てられたビット数が1ビットである場合、126は6ビットでは表せず、3Dの副画像の奥行き方向の表示面に対する位置を反対にすることはできない。
【0121】
[BD-Jオブジェクト実行時の再生装置の機能構成例]
図14は、BD-Jオブジェクト実行時の再生装置20の機能的構成例を示す図である。
【0122】
ハードウェア91は、例えば、図5の入力部21、再生部23、記憶部24、通信部25、およびドライブ26により構成される。なお、再生部23の一部は、ソフトウェアにより実現されるようにしてもよい。
【0123】
また、システムファームウェア92、OS(Operating System)93、Java VM(Virtual Machine)94、およびBD-Jアプリケーション95は、制御部22により実行されるプログラムである。
【0124】
システムファームウェア92は、ディスク11がハードウェア91に装着されると、ハードウェア91を制御して、ディスク11からインデックスファイルを読み出す。そして、システムファームウェア92は、そのインデックスファイルをハードウェア91に記憶させる。
【0125】
また、システムファームウェア92は、ハードウェア91からインデックスファイルを読み出し、そのインデックスファイル内に記述される、再生対象とするタイトル番号に対応するBD-Jオブジェクトの種類と番号を認識する。
【0126】
システムファームウェア92は、再生対象とするタイトル番号に対応するBD-Jオブジェクトの番号に基づいて、ハードウェア91を制御し、ディスク11から再生対象のBD-Jオブジェクトを読み出し、ハードウェア91に記憶させる。システムファームウェア92は、そのBD-Jオブジェクトに基づいて実行すべきBD-Jアプリケーション95を認識した後、Java VM94を起動する。そして、システムファームウェア92は、BD-Jアプリケーション95をJava VM94の上に展開する。
【0127】
なお、ディスク11がハードウェア91に装着された後、実行すべきBD-Jアプリケーション95が認識されるまでに、Java VM94が起動されるようにしてもよい。また、システムファームウェア92は、OS93により呼び出された機能を実現する。
【0128】
OS93は、Java VM94により通達される機能に基づいて、その機能に対応するシステムファームウェア92に対して機能の呼び出しを行う。
【0129】
Java VM94は、BD-Jアプリケーション95により呼び出されたBD-J API(Application Program Interface)に対応する機能を解釈し、OS93に通達する。例えば、Java VM94は、BD-Jアプリケーション95により呼び出された、グラフィックスデータを生成し、BD-Jグラフィックスを表示するためのBD-J API(以下、生成表示APIという)に対応する生成表示機能を解釈し、生成表示機能をOS93に通達する。
【0130】
また、Java VM94は、BD-Jアプリケーション95により呼び出された、BD-Jグラフィックスのオフセット方向を変更するためのBD-J APIであるpublic void change Offset Sign()(以下、オフセット方向変更APIという)に対応するオフセット方向変更機能を解釈し、オフセット方向変更機能をOS93に通達する。
【0131】
BD-Jアプリケーション95は、Java VM94に対して、Java VM94に規定されるBD-J APIの呼び出しを行う。例えば、BD-Jアプリケーション95(生成制御情報)は、Java VM94に対して生成表示APIの呼び出しを行う。また、BD-Jアプリケーション95(オフセット変更制御情報)は、Java VM94に対してオフセット方向変更APIの呼び出しを行う。
【0132】
[BD-Jオブジェクト実行時の再生装置の処理の説明]
図15は、BD-Jオブジェクト実行時の再生装置20によるグラフィックス表示処理を説明するフローチャートである。このグラフィックス表示処理は、例えば、システムファームウェア92が、グラフィックスデータを生成し、BD-Jグラフィックスを表示すためのBD-Jアプリケーション95をJava VM94の上に展開したとき、開始される。
【0133】
図15のステップS81において、BD-Jアプリケーション95は、Java VM94に対して、オフセット情報を設定するためのBD-J API(以下、オフセット情報設定APIという)の呼び出しを行う。これにより、Java VM94は、オフセット情報設定APIに対応する機能としてオフセット情報設定機能を解釈し、OS93に通達する。そして、OS93は、オフセット情報設定機能に対応するシステムファームウェア92に対してオフセット情報設定機能の呼び出しを行う。
【0134】
ステップS82において、システムファームウェア92は、ハードウェア91のBD-Jグラフィックス生成部37を制御し、オフセット情報を設定させる。BD-Jグラフィックス生成部37は、そのオフセット情報を3D表示データ生成部36に供給する。
【0135】
ステップS83において、BD-Jアプリケーション95は、Java VM94に対して、生成表示APIの呼び出しを行う。これにより、Java VM94は、生成表示APIに対応する機能として生成表示機能を解釈し、OS93に通達する。そして、OS93は、生成表示機能に対応するシステムファームウェア92に対して生成表示機能の呼び出しを行う。
【0136】
ステップS84において、ハードウェア91のBD-Jグラフィックス生成部37は、システムファームウェア92の制御により、グラフィックスデータを生成し、3D表示データ生成部36に供給する。
【0137】
ステップS85において、ハードウェア91の3D表示データ生成部36は、システムファームウェア92の制御により、BD-Jグラフィックス生成部37から供給されるオフセット情報に基づいて、グラフィックスデータから3Dグラフィックスデータを生成する。この3Dグラフィックスデータは、3Dビデオデータおよび3Dメニューデータと合成され、3D表示データとして表示部51に供給される。その結果、表示部51には、3Dビデオデータに対応する3Dの主画像の副画像の1つとして、3DのBD-Jグラフィックスが表示される。
【0138】
図16は、BD-Jオブジェクト実行時の再生装置20によるオフセット方向変更処理を説明するフローチャートである。このオフセット方向変更処理は、例えば、BD-Jアプリケーション95が、Java VM94に対してオフセット方向変更APIを呼び出したとき、開始される。
【0139】
図16のステップS101において、システムファームウェア92は、BD-Jアプリケーション95によるオフセット方向変更APIの呼び出しに対応する、OS93によるオフセット方向変更機能の呼び出しに応じて、ハードウェア91のBD-Jグラフィックス生成部37を制御し、現在設定中のオフセット情報のオフセット値の正負を反転させる。即ち、BD-Jグラフィックス生成部37は、現在設定中のオフセット情報のオフセット方向を変更する。そして、BD-Jグラフィックス生成部37は、変更後のオフセット方向を含むオフセット情報を3D表示データ生成部36に供給する。
【0140】
ステップS102において、ハードウェア91の3D表示データ生成部36は、BD-Jグラフィックス生成部37から供給されるオフセット情報に基づいて、3Dグラフィックスデータを更新する。
【0141】
これにより、表示部51に表示されている3DのBD-Jグラフィックスの奥行き方向の位置が、表示面に対して反対の位置となる。即ち、表示面に対して飛び出すように表示されていた3DのBD-Jグラフィックスは、表示面に対して引っ込むように表示され、表示面に対して引っ込むように表示されていた3DのBD-Jグラフィックスは、表示面に対して飛び出すように表示される。
【0142】
以上のように、再生装置20では、オフセット方向変更APIを読み出すBD-Jアプリケーション95にしたがって、表示中の左目用のBD-Jグラフィックスのオフセット方向と反対方向にずらした2D表示用のBD-Jグラフィックスの画像データが左目用のグラフィックスデータとされ、その左目用のグラフィックスデータに基づいて左目用のBD-Jグラフィックスが表示されるとともに、表示中の右目用のBD-Jグラフィックスのオフセット方向と反対方向にずらした2D表示用のBD-Jグラフィックスの画像データが右目用のグラフィックスデータとされ、その右目用のグラフィックスデータに基づいて右目用のBD-Jグラフィックスが表示される。従って、表示部51に表示されている3DのBD-Jグラフィックスの奥行き方向の表示面に対する位置を反対にすることができる。よって、オフセット方向変更APIを読み出すBD-Jアプリケーション95を含むディスク11のビデオフォーマットは、BD-Jグラフィックスの3D表示に適した3Dビデオフォーマットであるといえる。
【0143】
また、再生装置20は、オフセット値の正負を変更することにより、左目用のBD-Jグラフィックスのオフセット方向と右目用のBD-Jグラフィックスのオフセット方向を変更する。従って、例えば、システムファームウェア92が、現在設定中のオフセット情報を読み出すためのBD-J APIの呼び出しに応じて、ハードウェア91に現在設定中のオフセット情報を読み出させ、オフセット情報設定APIの呼び出しに応じて、読み出されたオフセット情報のオフセット値の正負を反転させたものを設定させる場合に比べて、表示部51に表示されている3DのBD-Jグラフィックスの奥行き方向の表示面に対する位置を容易に反対にすることができる。
【0144】
<第2実施の形態>
[ディスクの第2実施の形態におけるエポックの構成例]
図17は、本発明を適用したディスクの第2実施の形態における字幕データのエポック(Epoch)の構成例を示す図である。
【0145】
図17のディスク501では、主に、主画像と副画像の3D表示に用いられる左目用のAVストリームと右目用のAVストリームの2つのAVストリームが記録される点が、図1のディスク11と異なっている。図17に示すように、同時に再生される左目用のAVストリームと右目用のAVストリームのエポックの構造は同一である。即ち、同時に再生される左目用のエポックのディスプレイセット数と右目用のエポックのディスプレイセット数は同一である。
【0146】
また、同時に再生される左目用のディスプレイセットと右目用のディスプレイセットの間では、各セグメントのPTSは同一である。これにより、左目用の字幕と右目用の字幕の表示タイミングを同時にすることができる。
【0147】
PCSのPESパケットヘッダに含まれるPTSは、PCSに対応するODSの復号時間、ODSに対応する字幕の描画に必要な時間、およびウィンドウの描画に必要な時間に基づいて求められる。従って、同時に再生される左目用のディスプレイセットと右目用のディスプレイセットの間では、同一の副画像IDのODSに対応する字幕の縦横サイズ、および、同一のウィンドウIDのウィンドウの縦横サイズは同一である。これにより、左目用のディスプレイセットと右目用のディスプレイセットの間で、矛盾無く、PCSのPESパケットヘッダに含まれるPTSを同期させることができる。
【0148】
また、同時に再生される左目用のディスプレイセットと右目用のディスプレイセットの間では、副画像IDおよびウィンドウIDは同一である。これにより、同一の字幕に対応する画像が同時に表示されるため、ユーザは、3Dの字幕を見ることができる。
【0149】
さらに、同時に再生される左目用のディスプレイセットと右目用のディスプレイセットの間では、ODSを除いたセグメントの数が同一であり、各セグメントのDTSは同一である。なお、同一の副画像IDに対応する字幕の形状は異なっていてもよい。また、PDSは異なっていてもよい。
【0150】
メニューデータのエポックの構造、および、同時に再生される左目用のディスプレイセットと右目用のディスプレイセットの関係については、PCSがICSに代わる点を除いて同様であるので、説明は省略する。
【0151】
但し、メニューボタンが、ユーザによる選択時などに一定のフレームレートでアニメーションされる場合、左目用のメニューボタンと右目用のメニューボタンのアニメーションのフレームレートを同一にする必要がある。従って、このようなメニューボタンに対応する左目用のディスプレイセットと右目用のディスプレイセットの間では、ICSに含まれるアニメーションのフレームレートを決定するフィールドが同一になっている。これにより、左目用のメニューボタンと右目用のメニューボタンが、常に対応して一定のフレームレートでアニメーションされるので、ユーザは、一定のフレームレートでアニメーションされる3Dのメニューボタンを見ることができる。
【0152】
また、メニューボタンの表示開始時などに、エフェクトと呼ばれる、アニメーションによるスライドイン等が行われる場合、左目用のメニューボタンと右目用のメニューボタンにおいて、アニメーションのコマ数と間隔を同一にする必要がある。従って、このようなメニューボタンに対応する左目用のディスプレイセットと右目用のディスプレイセットの間では、ICSに含まれるエフェクト時のアニメーションのコマ数および間隔を記述するフィールドが同一になっている。これにより、左目用のメニューボタンと右目用のメニューボタンが、常に対応してエフェクトされるので、ユーザは、エフェクトされる3Dのメニューボタンを見ることができる。
【0153】
[再生装置の構成例]
図18は、上述したディスク501を再生する再生装置510の構成例を示すブロック図である。
【0154】
図18に示す構成のうち、図5の構成と同一の構成には同一の符号を付してある。重複する説明については適宜省略する。
【0155】
図18の再生装置510の構成は、主に、制御部22の代わりに制御部511が設けられている点、および再生部23の代わりに再生部512が設けられている点が図5の構成と異なる。再生部512の構成は、PIDフィルタ33、ビデオ生成部34、字幕/メニュー生成部35、3D表示データ生成部36、BD-Jグラフィックス生成部37の代わりに、それぞれ、PIDフィルタ521、ビデオ生成部522、字幕/メニュー生成部523、3D表示データ生成部524、BD-Jグラフィックス生成部525が設けられている点が図5の構成と異なる。
【0156】
制御部511は、所定のプログラムを実行することにより、入力部21からの指令に応じて再生部512を制御する。例えば、制御部511は、再生部512のドライブ31を制御し、ディスク501からインデックスファイル、ムービーオブジェクトファイル、BD-Jオブジェクトファイル、プレイリストファイル、クリップインフォメーションファイル、ストリームファイルなどを読み出す。
【0157】
また、制御部511は、読み出されたクリップインフォメーションファイルに基づいて、再生対象の左目用のAVストリームと右目用のAVストリームのパケット番号のパケットを認識する。そして、制御部511は、ドライブ31を制御し、そのパケットからなる左目用のAVストリームおよび右目用のAVストリームを読み出す。
【0158】
PIDフィルタ521は、読み出しバッファ32からの左目用のAVストリームの各パケットのPIDに基づいて、左目用のAVストリームから、左目用のビデオデータと左目用の字幕データのPESパケットをそれぞれ抽出する。また、PIDフィルタ521は、左目用のAVストリームの各パケットのPIDに基づいて、左目用のAVストリームから左目用のメニューデータとオーディオデータのPESパケットをそれぞれ抽出する。
【0159】
PIDフィルタ521はまた、読み出しバッファ32からの右目用のAVストリームの各パケットのPIDに基づいて、右目用のAVストリームから、右目用のビデオデータと右目用の字幕データのPESパケットをそれぞれ抽出する。また、PIDフィルタ521は、右目用のAVストリームの各パケットのPIDに基づいて、右目用のAVストリームから右目用のメニューデータのPESパケットを抽出する。
【0160】
ビデオ生成部522は、PIDフィルタ521から供給される左目用のビデオデータのPESパケットおよび右目用のビデオデータのPESパケットを復号する。そして、ビデオ生成部522は、復号の結果得られる左目用のビデオデータと右目用のビデオデータを、3Dビデオデータとして3D表示データ生成部524に供給する。
【0161】
字幕/メニュー生成部523は、字幕生成部531とメニュー生成部532により構成される。字幕生成部531は、ムービーオブジェクトの実行時に、PIDフィルタ521から供給される左目用の字幕データと右目用の字幕データのPESパケットを復号する。そして、字幕生成部531は、復号の結果得られる左目用の字幕データと右目用の字幕データを、3D字幕データとして3D表示データ生成部524に供給する。
【0162】
メニュー生成部532は、ムービーオブジェクトの実行時に、PIDフィルタ521から供給される左目用のメニューデータと右目用のメニューデータのPESパケットを復号する。そして、メニュー生成部532は、復号の結果得られる左目用のメニューデータと右目用のメニューデータを、3Dメニューデータとして3D表示データ生成部524に供給する。
【0163】
3D表示データ生成部524は、ビデオ生成部522から供給される3Dビデオデータ、並びに、字幕/メニュー生成部523から供給される3D字幕データおよび3Dメニューデータを、左右の各目用のデータごとに合成し、3D表示データを生成する。また、3D表示データ生成部524は、ビデオ生成部522から供給される3DビデオデータとBD-Jグラフィックス生成部525から供給されるグラフィックスデータを、左右の各目用のデータごとに合成し、3D表示データを生成する。そして、3D表示データ生成部524は、3D表示データを表示部51に供給し、左目用の画像と右目用の画像を表示部51に表示させる。
【0164】
BD-Jグラフィックス生成部525は、BD-Jオブジェクトの実行時に、制御部511からの制御にしたがって、左目用と右目用のグラフィックスデータを生成する。そして、BD-Jグラフィックス生成部525は、左目用のグラフィックスデータと右目用のグラフィックスデータを、3Dグラフィックスデータとして3D表示データ生成部524に供給する。
【0165】
[字幕生成部の詳細構成例]
図19は、図18の字幕生成部531の詳細構成例を示すブロック図である。
【0166】
図19において、字幕生成部531は、取得部540、右目用デコーダ541−1、左目用デコーダ541−2、右目用グラフィックスプレーン542−1、左目用グラフィックスプレーン542−2、CLUT543−1、およびCLUT543−2により構成される。
【0167】
取得部540には、図18のPIDフィルタ521から右目用の字幕データと左目用の字幕データが供給される。取得部540は、PIDフィルタ521から供給される右目用の字幕データを右目用デコーダ541−1に入力し、左目用の字幕データを左目用デコーダ541−2に入力する。
【0168】
また、取得部540は、制御部511(図18)からの、左目用の字幕データと右目用の字幕データを入れ替えるためのナビゲーションコマンド(以下、LR交換コマンドという)に応じた制御により、右目用デコーダ541−1と左目用デコーダ541−2に入力する字幕データを入れ替える。
【0169】
右目用デコーダ541−1は、符号化データバッファ561−1、ストリームグラフィックス生成部562−1、オブジェクトバッファ563−1、コンポジションバッファ564−1、および制御部565−1により構成される。
【0170】
符号化データバッファ561−1は、取得部540から供給される字幕データのPESパケットのうちのセグメントを保持する。符号化データバッファ561−1は、保持しているセグメントを読み出して、ストリームグラフィックス生成部562−1に供給する。
【0171】
ストリームグラフィックス生成部562−1は、符号化データバッファ561−1から供給されるセグメントのうちのODSを復号する。そして、ストリームグラフィックス生成部562−1は、その結果得られるインデックスカラーからなる非圧縮状態の字幕データを字幕オブジェクトとしてオブジェクトバッファ563−1に供給する。また、ストリームグラフィックス生成部562−1は、符号化データバッファ561−1から供給されるセグメントのうちのPDS,PCS,WDSをコンポジションバッファ564−1に供給する。
【0172】
オブジェクトバッファ563−1は、ストリームグラフィックス生成部562−1から供給される字幕オブジェクトを保持する。オブジェクトバッファ563−1は、エポック単位で、保持している字幕オブジェクトを削除する。また、オブジェクトバッファ563−1は、制御部565−1からの制御にしたがって、保持している字幕オブジェクトを読み出し、右目用グラフィックスプレーン542−1に供給する。
【0173】
コンポジションバッファ564−1は、ストリームグラフィックス生成部562−1から供給されるPDS,PCS,WDSを保持する。
【0174】
制御部565−1は、右目用グラフィックスプレーン542−1による1画面分の字幕オブジェクトの記憶の状態を監視し、1画面分の字幕オブジェクトの記憶の完了を制御部565−2に通知する。制御部565−1は、PESパケットヘッダに含まれるPTS、または、制御部565−2からの字幕オブジェクトの記憶の完了の通知に基づいて、右目用グラフィックスプレーン542−1に転送を指示する。さらに、制御部565−1は、コンポジションバッファ564からPDSを読み出し、CLUT543−1に供給する。
【0175】
また、制御部565−1は、制御部511(図18)からの指令にしたがって、各部を制御する。
【0176】
右目用グラフィックスプレーン542−1は、オブジェクトバッファ563−1から供給される1画面分の字幕オブジェクトを右目用の字幕オブジェクトとして保持する。右目用グラフィックスプレーン542−1は、エポック単位で、保持している右目用の字幕オブジェクトを消去する。また、右目用グラフィックスプレーン542−1は、制御部565−1からの転送の指示に応じて、保持している右目用の字幕オブジェクトを読み出し、CLUT543−1に供給する。
【0177】
CLUT543−1は、制御部565−1から供給されるPDSに基づいて、インデックスカラーとY,Cr,Cbの値とを対応付けたテーブルを記憶する。CLUT543−1は、記憶しているテーブルに基づいて、右目用グラフィックスプレーン542−1から供給される右目用の字幕オブジェクトのインデックスカラーをY,Cr,Cbの値からなる画像データに変換する。そして、CLUT543−1は、その画像データを右目用の字幕データとして3D表示データ生成部524(図18)に供給する。
【0178】
左目用デコーダ541−2、左目用グラフィックスプレーン542−2、CLUT543−2は、それぞれ、右目用デコーダ541−1、右目用グラフィックスプレーン542−1、CLUT543−1と同様に構成される。
【0179】
即ち、左目用デコーダ541−2は、符号化データバッファ561−2、ストリームグラフィックス生成部562−2、オブジェクトバッファ563−2、コンポジションバッファ564−2、および制御部565−2により構成される。左目用デコーダ541−2は、取得部540から供給される字幕データのODSを復号し、その結果得られる字幕オブジェクトを出力する。
【0180】
この字幕オブジェクトは、左目用の字幕オブジェクトとして、1画面単位で左目用グラフィックスプレーン542−2に保持され、右目用グラフィックスプレーン542−1に保持されている1画面分の右目用の字幕オブジェクトの読み出しと同時に読み出される。そして、読み出された1画面分の左目用の字幕オブジェクトは、CLUT543−2により、画像データに変換され、左目用の字幕データとして3D表示データ生成部524(図18)に供給される。
【0181】
以上のように、字幕生成部531では、エポック単位で、オブジェクトバッファ563−1、オブジェクトバッファ563−2、右目用グラフィックスプレーン542−1、および左目用グラフィックスプレーン542−2がクリアされる。しかしながら、ディスク501では、エポックを構成するディスプレイセットの数が、右目用のAVストリームと左目用のAVストリームで同一であるため、右目用の字幕と左目用の字幕のうちの一方の表示だけが停止することはない。その結果、字幕を常に3D表示することができる。
【0182】
なお、以下では、符号化データバッファ561−1と符号化データバッファ561−2を特に区別する必要がない場合、それらをまとめて符号化データバッファ561という。ストリームグラフィックス生成部562、オブジェクトバッファ563、コンポジションバッファ564、制御部565、およびCLUT543についても同様である。
【0183】
[3D字幕の表示の説明]
図20は、図18の表示部51による3Dの字幕の表示について説明する図である。
【0184】
図20の左側に示すように、3D表示データ生成部524は、字幕生成部531からの左目用の字幕データを含む左目用のデータを合成した結果得られる左目用の表示データと、右目用の字幕データを含む右目用のデータを合成した結果得られる右目用の表示データを表示部51に供給する。これにより、表示部51には、例えば、図20の右側に示すように、右目用の字幕と左目用の字幕が同時に表示される。
【0185】
[LR交換コマンドによる字幕の3D表示の変化の説明]
図21は、LR交換コマンド(LR交換制御情報)による字幕の3D表示の変化を説明する図である。
【0186】
図21Aに示すように、右目用グラフィックスプレーン542−1にディスク501に記録されている右目用の字幕データに対応する字幕オブジェクトが右目用の字幕オブジェクトとして保持され、左目用グラフィックスプレーン542−2にディスク501に記録されている左目用の字幕データに対応する字幕オブジェクトが左目用の字幕オブジェクトとして保持されているとき、ユーザ601は、表示部51に表示されている右目用の字幕を右目で見て、左目用の字幕を左目で見る。これにより、ユーザ601は、図21Aに示すように、例えば、表示部51の表示面に対して飛び出す方向に位置する3Dの字幕を見ることができる。
【0187】
これに対して、LR交換コマンドが実行されると、図21Bに示すように、右目用グラフィックスプレーン542−1にディスク501に記録されている左目用の字幕データに対応する字幕オブジェクトが右目用の字幕オブジェクトとして保持され、左目用グラフィックスプレーン542−1にディスク501に記録されている右目用の字幕データに対応する字幕オブジェクトが左目用の字幕オブジェクトとして保持される。
【0188】
従って、ユーザ601は、表示部51において、ディスク501に記録されている左目用の字幕データに対応する左目用の字幕を右目で見て、ディスク501に記録されている右目用の字幕データに対応する右目用の字幕を左目で見る。これにより、ユーザ601は、図21Bに示すように、例えば、表示部51の表示面に対して引っ込む方向に位置する3Dの字幕を見ることができる。
【0189】
以上のように、LR交換コマンドが実行されると、3Dの字幕の奥行き方向の位置が、表示面に対して反対となる。
【0190】
[メニュー生成部の詳細構成例]
メニュー生成部532は、処理対象が字幕データではなく、メニューデータである点を除いて、図19の字幕生成部531と同様に構成されるので、図示は省略する。
【0191】
[ムービーオブジェクト実行時の再生装置の処理の説明]
図22は、ムービーオブジェクト実行時の再生装置510による3D字幕再生処理について説明するフローチャートである。この3D字幕再生処理は、例えば、制御部511が、ムービーオブジェクトに記述される、プレイリストを再生するためのコマンドを実行するときに開始される。
【0192】
図22のステップS111において、ドライブ31は、制御部511からの指令に応じて、ディスク501からプレイリストファイルを読み出し、制御部511に供給する。
【0193】
ステップS112において、ドライブ31は、プレイリストに基づく制御部511からの指令に応じて、プレイリストで指定されているクリップインフォメーションファイルに対応する右目用および左目用のAVストリームをディスク501から読み出す。そして、ドライブ31は、その右目用および左目用のAVストリームを読み出しバッファ32に供給する。
【0194】
ステップS113において、読み出しバッファ32は、ドライブ31から供給される右目用および左目用のAVストリームを保持する。読み出しバッファ32は、保持している右目用および左目用のAVストリームを読み出し、PIDフィルタ521に供給する。
【0195】
ステップS114において、PIDフィルタ521は、読み出しバッファ32からの右目用および左目用のAVストリームの各パケットのPIDに基づいて、そのAVストリームの右目用および左目用の字幕データのPESパケットを抽出し、字幕/メニュー生成部523に供給する。
【0196】
ステップS115において、字幕生成部531の取得部540(図19)は、PIDフィルタ521から供給される右目用の字幕データを右目用デコーダ541−1に入力し、左目用の字幕データを左目用デコーダ541−2に入力する。
【0197】
ステップS116において、字幕生成部531は、3D字幕生成処理を行う。この3D字幕生成処理の詳細については、後述する図23を参照して説明する。
【0198】
図23は、図22のステップS116の字幕生成処理の詳細を説明するフローチャートである。
【0199】
ステップS131において、字幕生成部531の右目用デコーダ541−1および左目用デコーダ541−2の符号化データバッファ561(図19)は、取得部540から供給される字幕データのPESパケットのうちのセグメントを保持する。
【0200】
ステップS132において、符号化データバッファ561は、保持しているセグメントを読み出して、ストリームグラフィックス生成部562に供給する。
【0201】
ステップS133において、ストリームグラフィックス生成部562は、符号化データバッファ561から供給されるPCS,PDS,WDSをコンポジションバッファ564に供給し、保持させる。
【0202】
ステップS134において、ストリームグラフィックス生成部562は、符号化データバッファ561から供給されるセグメントのうちのODSを復号し、その結果得られる字幕オブジェクトをオブジェクトバッファ563に供給する。
【0203】
ステップS135において、オブジェクトバッファ563は、ストリームグラフィックス生成部562から供給される字幕オブジェクトを保持する。
【0204】
ステップS136において、オブジェクトバッファ563−1は、保持している字幕オブジェクトを左目用グラフィックスプレーン542−1に供給し、保持させる。また、オブジェクトバッファ563−2は、保持している字幕オブジェクトを右目用グラフィックスプレーン542−2に供給し、保持させる。
【0205】
ステップS137において、制御部565は、右目用グラフィックスプレーン542−1と左目用グラフィックスプレーン542−2の両方で1画面分の字幕オブジェクトの記憶が完了したかどうかを判定する。
【0206】
ステップS137において、右目用グラフィックスプレーン542−1と左目用グラフィックスプレーン542−2の両方で1画面分の字幕オブジェクトの記憶が完了していないと判定された場合、制御部565は、1画面分の字幕オブジェクトの記憶が完了するまで待機する。
【0207】
一方、ステップS137において、右目用グラフィックスプレーン542−1と左目用グラフィックスプレーン542−2の両方で1画面分の字幕オブジェクトの記憶が完了したと判定された場合、ステップS138において、制御部565は、オブジェクトバッファ563に転送を指示する。これにより、右目用グラフィックスプレーン542−1に保持された1画面分の右目用の字幕オブジェクトが、CLUT543−1に転送されると同時に、左目用グラフィックスプレーン542−2に保持された1画面分の左目用の字幕オブジェクトがCLUT543−2に転送される。
【0208】
ステップS139において、CLUT543−1は、右目用グラフィックスプレーン542−1から供給される右目用の字幕オブジェクトを画像データに変換し、CLUT543−2は、左目用グラフィックスプレーン542−2から供給される左目用の字幕オブジェクトを画像データに変換する。
【0209】
ステップS140において、CLUT543−1は、ステップS139による変換の結果得られる右目用字幕データを3D表示データ生成部524に出力し、CLUT543−2は、ステップS139による変換の結果得られる左目用字幕データを3D表示データ生成部524に出力する。そして、処理は図22のステップS116に戻り、終了する。
【0210】
なお、3Dメニュー再生処理は、処理対象が字幕データではなく、メニューデータである点を除いて、図22の3D字幕再生処理と同様に行われるので、説明は省略する。
【0211】
図24は、ムービーオブジェクトの実行時の再生装置510による字幕表示方向変更処理を説明するフローチャートである。この字幕表示方向変更処理は、例えば、制御部511がLR交換コマンドを実行するときに開始される。
【0212】
図24のステップS151において、取得部540(図19)は、制御部511からの指令に応じて、PIDフィルタ521から供給される現在右目用の字幕として表示されている字幕の字幕データを左目用デコーダ541−2に入力し、左目用の字幕として表示されている字幕の字幕データを右目用デコーダ541−1に入力する。
【0213】
ステップS152において、字幕生成部531は、図23の3D字幕生成処理を行い、処理を終了する。
【0214】
なお、メニュー表示方向変更処理は、処理対象が字幕データではなく、メニューデータである点を除いて、図24の字幕表示方向変更処理と同様に行われるので、説明は省略する。
【0215】
また、上述した字幕生成部531では、LR交換コマンドの実行時に、右目用デコーダ541−1に入力される字幕データと左目用デコーダ541−2に入力される字幕データが交換されたが、右目用デコーダ541−1と左目用デコーダ541−2から出力される字幕データが交換されるようにしてもよい。さらに、CLUT543−1から出力される字幕データとCLUT543−2から出力される字幕データが交換されるようにしてもよい。
【0216】
[LR交換コマンドの他の適用例]
図25は、LR交換コマンドの他の適用例を示す図である。
【0217】
図25に示すように、LR交換コマンドは、左目用のメニューデータのICSに含まれるメニュー制御情報として適用されてもよい。
【0218】
この場合、図13に示したように、LR交換コマンドに対応するメニューボタンである方向変更ボタン81が表示部51に表示される。ユーザは、字幕やメニューボタンの表示中に、入力部21を用いて方向変更ボタン81を操作することにより、再生装置510に字幕表示方向変更処理およびメニュー表示方向変更処理を行わせることができる。
【0219】
具体的には、制御部511は、ユーザによる方向変更ボタン81に対する操作に対応する指令を入力部21から取得して制御部565に供給し、その方向変更ボタン81に対応するコマンドの実行を制御部565に指令する。制御部565は、その指令に応じて取得部540を制御し、右目用デコーダ541−1に入力される字幕データと左目用デコーダ541−2に入力される字幕データを交換させる。
【0220】
なお、図25では、左目用のメニューデータのICSにLR交換コマンドが記述されたが、右目用のメニューデータにLR交換コマンドが記述されるようにしてもよい。また、左目用と右目用の両方のメニューデータにLR交換コマンドが記述されるようにしてもよい。
【0221】
以上のように、再生装置510では、LR交換コマンドにしたがって、表示中の左目用の副画像の画像データが右目用の副画像データとして3D表示データ生成部524に出力されるとともに、表示中の右目用の副画像の画像データが左目用の副画像データとして3D表示データ生成部524に出力され、その右目用の副画像データに基づいて右目用の副画像が表示され、左目用の副画像データに基づいて左目用の副画像が表示される。従って、表示部51に表示されている3Dの副画像の奥行き方向の表示面に対する位置を反対にすることができる。よって、LR交換コマンドを含むディスク501のビデオフォーマットは、副画像の3D表示に適した3Dビデオフォーマットであるといえる。
【0222】
[BD-Jオブジェクト実行時の再生装置の機能構成例]
図26は、BD-Jオブジェクト実行時の再生装置510の機能的構成例を示す図である。
【0223】
ハードウェア701は、例えば、図18の入力部21、再生部512、記憶部24、通信部25、およびドライブ26により実現される。なお、再生部512の一部は、ソフトウェアにより実現されるようにしてもよい。
【0224】
また、システムファームウェア702、OS703、Java VM704、およびBD-Jアプリケーション705は、制御部511により実行されるプログラムである。
【0225】
システムファームウェア702は、ディスク501がハードウェア701に装着されると、ハードウェア701を制御して、ディスク501からインデックスファイルを読み出す。そして、システムファームウェア702は、そのインデックスファイルをハードウェア701に記憶させる。
【0226】
また、システムファームウェア702は、ハードウェア701からインデックスファイルを読み出し、そのインデックスファイル内に記述される、再生対象とするタイトル番号に対応するBD-Jオブジェクトの種類と番号を認識する。
【0227】
システムファームウェア702は、再生対象とするタイトル番号に対応するBD-Jオブジェクトの番号に基づいて、ハードウェア701を制御し、ディスク501から再生対象のBD-Jオブジェクトを読み出し、ハードウェア701に記憶させる。システムファームウェア702は、そのBD-Jオブジェクトに基づいて実行すべきBD-Jアプリケーション705を認識した後、Java VM704を起動する。そして、システムファームウェア702は、BD-Jアプリケーション705をJava VM704の上に展開する。
【0228】
なお、ディスク501がハードウェア701に装着された後、実行すべきBD-Jアプリケーション705が認識されるまでに、Java VM704が起動されるようにしてもよい。また、システムファームウェア702は、OS703により呼び出された機能を実現する。
【0229】
OS703は、Java VM704により通達される機能に基づいて、その機能に対応するシステムファームウェア702に対して機能の呼び出しを行う。
【0230】
Java VM704は、BD-Jアプリケーション705により呼び出されたBD-J APIに対応する機能を解釈し、OS703に通達する。例えば、Java VM704は、BD-Jアプリケーション705により呼び出された生成表示APIに対応する生成表示機能を解釈し、表示機能をOS703に通達する。
【0231】
また、Java VM704は、BD-Jアプリケーション705により呼び出された、BD-Jグラフィックスの表示方向を変更するためのBD-J APIであるpublic void Exchange LR()(以下、LR交換APIという)に対応するLR交換機能を解釈し、LR交換機能をOS703に通達する。
【0232】
BD-Jアプリケーション705は、Java VM704に対して、Java VM704に規定されるBD-J APIの呼び出しを行う。例えば、BD-Jアプリケーション705(生成制御情報)は、Java VM704に対して生成表示APIの呼び出しを行う。また、BD-Jアプリケーション705(LR交換制御情報)は、Java VM704に対してLR交換APIの呼び出しを行う。
【0233】
[BD-Jグラフィックス生成部の詳細構成例]
図27は、BD-Jグラフィックス生成部525の詳細構成例を示すブロック図である。
【0234】
BD-Jグラフィックス生成部525は、グラフィックス生成部711、右目用グラフィックスプレーン712、グラフィックス生成部713、および左目用グラフィックスプレーン714により構成される。
【0235】
グラフィックス生成部711は、BD-Jアプリケーション705で生成表示APIの呼び出しが行われた際に、システムファームウェア702の制御にしたがって、所定の右目用のグラフィックスデータを生成する。また、グラフィックス生成部711は、BD-Jアプリケーション705でLR交換APIの呼び出しが行われた際に、システムファームウェア702の制御にしたがって、現在左目用のBD-Jグラフィックスとして表示されているBD-Jグラフィックスのグラフィックスデータを生成する。そして、グラフィックス生成部711は、生成されたグラフィックスデータを右目用グラフィックスプレーン712に供給する。
【0236】
右目用グラフィックスプレーン712は、グラフィックス生成部711から供給されるグラフィックスデータを、右目用グラフィックスデータとして1画面単位で保持する。右目用グラフィックスプレーン712は、保持している1画面分の右目用のグラフィックスデータを3D表示データ生成部524に供給する。
【0237】
グラフィックス生成部713は、BD-Jアプリケーション705で生成表示APIの呼び出しが行われた際に、システムファームウェア702の制御にしたがって、所定の左目用のグラフィックスデータを生成する。また、グラフィックス生成部713は、BD-Jアプリケーション705でLR交換APIの呼び出しが行われた際に、システムファームウェア702の制御にしたがって、現在右目用のBD-Jグラフィックスとして表示されているBD-Jグラフィックスのグラフィックスデータを生成する。そして、グラフィックス生成部713は、生成されたグラフィックスデータを左目用グラフィックスプレーン714に供給する。
【0238】
左目用グラフィックスプレーン714は、グラフィックス生成部713から供給されるグラフィックスデータを、左目用のグラフィックスデータとして1画面単位で保持する。左目用グラフィックスプレーン714は、保持している1画面分の左目用のグラフィックスデータを3D表示データ生成部524に供給する。
【0239】
[BD-Jオブジェクト実行時の再生装置の処理の説明]
図28は、BD-Jオブジェクト実行時の再生装置510によるグラフィックス表示処理を説明するフローチャートである。このグラフィックス表示処理は、例えば、システムファームウェア702が、グラフィックスデータを生成し、BD-Jグラフィックスを表示すためのBD-Jアプリケーション705をJava VM704の上に展開したとき、開始される。
【0240】
図28のステップS171において、BD-Jアプリケーション705は、Java VM704に対して、生成表示APIの呼び出しを行う。これにより、Java VM704は、生成表示APIに対応する機能として生成表示機能を解釈し、OS703に通達する。そして、OS703は、生成表示機能に対応するシステムファームウェア702に対して生成表示機能の呼び出しを行う。
【0241】
ステップS172において、グラフィックス生成部711(図27)は、システムファームウェア702の制御により、所定の右目用のグラフィックスデータを生成し、右目用グラフィックスプレーン712に供給する。
【0242】
ステップS173において、グラフィックス生成部713は、システムファームウェア702の制御により、所定の左目用のグラフィックスデータを生成し、左目用グラフィックスプレーン714に供給する。
【0243】
ステップS174において、右目用グラフィックスプレーン712は、グラフィックス生成部711からの所定の右目用のグラフィックスデータを右目用のグラフィックスデータとして1画面単位で保持する。また、左目用グラフィックスプレーン714は、グラフィックス生成部713からの所定の左目用のグラフィックスデータを左目用のグラフィックスデータとして1画面単位で保持する。
【0244】
ステップS175において、右目用グラフィックスプレーン712は、保持している1画面分の右目用のグラフィックスデータを3D表示データ生成部524に出力し、左目用グラフィックスプレーン714は、保持している1画面分の左目用のグラフィックスデータを3D表示データ生成部524に出力する。そして処理は終了する。
【0245】
図29は、BD-Jオブジェクト実行時の再生装置510による表示方向変更処理を説明するフローチャートである。この表示方向変更処理は、例えば、BD-Jアプリケーション705が、Java VM704に対してLR交換APIを呼び出したとき、開始される。
【0246】
図29のステップS191において、グラフィックス生成部711は、BD-Jアプリケーション705によるLR交換APIの呼び出しに対応するシステムファームウェア702の制御により、現在左目用のBD-Jグラフィックスとして表示されているBD-Jグラフィックスのグラフィックスデータを生成し、右目用グラフィックスプレーン712に供給する。
【0247】
ステップS192において、グラフィックス生成部713は、BD-Jアプリケーション705によるLR交換APIの呼び出しに対応するシステムファームウェア702の制御により、現在右目用のBD-Jグラフィックスとして表示されているBD-Jグラフィックスのグラフィックスデータを生成し、左目用グラフィックスプレーン714に供給する。
【0248】
ステップS193において、右目用グラフィックスプレーン712は、グラフィックス生成部711からの左目用のグラフィックスデータを右目用のグラフィックスデータとして1画面単位で保持する。また、左目用グラフィックスプレーン714は、グラフィックス生成部713からの右目用のグラフィックスデータを左目用のグラフィックスデータとして1画面単位で保持する。
【0249】
ステップS194において、右目用グラフィックスプレーン712は、保持している1画面分の右目用のグラフィックスデータを3D表示データ生成部524に出力し、左目用グラフィックスプレーン714は、保持している1画面分の左目用のグラフィックスデータを3D表示データ生成部524に出力する。
【0250】
これにより、表示部51に表示されている3DのBD-Jグラフィックスの奥行き方向の位置が、表示面に対して反対の位置となる。即ち、表示面に対して飛び出すように表示されていた3DのBD-Jグラフィックスは、表示面に対して引っ込むように表示され、表示面に対して引っ込むように表示されていた3DのBD-Jグラフィックスは、表示面に対して飛び出すように表示される。
【0251】
以上のように、再生装置510では、LR交換APIを読み出すBD-Jアプリケーション705にしたがって、表示中の左目用のBD-Jグラフィックスの画像データが右目用のグラフィックスデータとして3D表示データ生成部524に出力されるとともに、表示中の右目用のBD-Jグラフィックスの画像データが左目用のグラフィックスデータとして3D表示データ生成部524に出力され、その右目用のグラフィックスデータに基づいて右目用のBD-Jグラフィックスが表示され、左目用のグラフィックスデータに基づいて左目用のBD-Jグラフィックスが表示される。従って、表示部51に表示されている3DのBD-Jグラフィックスの奥行き方向の表示面に対する位置を反対にすることができる。よって、LR交換コマンドを含むディスク501のビデオフォーマットは、BD-Jグラフィックスの3D表示に適した3Dビデオフォーマットであるといえる。
【0252】
なお、上述したBD-Jグラフィックス生成部525では、LR交換APIが呼び出された際、グラフィックス生成部711で生成されるグラフィックスデータとグラフィックス生成部713で生成されるグラフィックスデータが交換されたが、右目用グラフィックスプレーン712から出力されるグラフィックスデータと左目用グラフィックスプレーン714から出力されるグラフィックスデータが交換されるようにしてもよい。
【0253】
また、LR交換コマンドおよびLR交換APIは、オフセット情報に基づいて、ディスクに記録されている1つの副画像データから左目用と右目用の副画像データを生成する再生装置に適用されるようにしてもよい。この場合、再生装置は、1つの副画像データから生成される左目用と右目用の副画像データを交換することにより、3Dの副画像の奥行き方向の位置を、表示面に対して反対にする。
【0254】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0255】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0256】
11 ディスク, 20 再生装置, 36 3D表示データ生成部, 37 BD-Jグラフィックス生成部, 501 ディスク, 510 再生装置, 523 字幕/メニュー生成部, 524 3D表示データ生成部, 525 BD-Jグラフィックス生成部, 540 取得部, 542−1 右目用グラフィックスプレーン, 542−2 左目用グラフィックスプレーン

【特許請求の範囲】
【請求項1】
副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報
を含むデータ構造のデータを再生する際に、
前記LR交換制御情報にしたがって、表示中の前記L画像の前記L画像データを前記R画像データとして出力するとともに、表示中の前記R画像の前記R画像データを前記L画像データとして出力する出力手段と、
前記出力手段により出力された前記R画像データに基づいて前記R画像を表示部に表示させ、前記L画像データに基づいて前記L画像を前記表示部に表示させる表示制御手段と
を備える再生装置。
【請求項2】
前記データは、前記L画像データと前記R画像データをさらに含むデータ構造のデータである
請求項1に記載の再生装置。
【請求項3】
前記データは、前記L画像データと前記R画像データを生成するための制御情報である生成制御情報をさらに含み、
前記再生装置は、
前記生成制御情報にしたがって、前記L画像データと前記R画像データを生成する生成手段
をさらに備える
請求項1に記載の再生装置。
【請求項4】
前記再生装置は、
前記L画像データと前記R画像データを保持する保持手段と、
前記LR交換制御情報にしたがって、表示中の前記L画像の前記L画像データを前記R画像データとして前記保持手段に入力するとともに、表示中の前記R画像の前記R画像データを前記L画像データとして前記保持手段に入力する入力手段と
をさらに備え、
前記出力手段は、前記保持手段に保持されている前記R画像データと前記L画像データをそのまま出力する
請求項1に記載の再生装置。
【請求項5】
前記再生装置は、
表示中の前記L画像の前記L画像データと前記R画像の前記R画像データを保持する保持手段
をさらに備え、
前記出力手段は、前記LR交換制御情報にしたがって、前記保持手段に保持されている前記L画像データを前記R画像データとして出力し、前記保持手段に保持されている前記R画像データを前記L画像データとして出力する
請求項1に記載の再生装置。
【請求項6】
副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報
を含むデータ構造のデータを再生する再生装置が、
前記LR交換制御情報にしたがって、表示中の前記L画像の前記L画像データを前記R画像データとして出力するとともに、表示中の前記R画像の前記R画像データを前記L画像データとして出力し、
出力された前記R画像データに基づいて前記R画像を表示部に表示させ、前記L画像データに基づいて前記L画像を前記表示部に表示させる
ステップを含む再生方法。
【請求項7】
副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報
を含むデータ構造のデータを再生する制御を実行するコンピュータに、
前記LR交換制御情報にしたがって、表示中の前記L画像の前記L画像データを前記R画像データとして出力するとともに、表示中の前記R画像の前記R画像データを前記L画像データとして出力し、
出力された前記R画像データに基づいて前記R画像を表示部に表示させ、前記L画像データに基づいて前記L画像を前記表示部に表示させる
ステップを含む制御処理を実行させるプログラム。
【請求項8】
副画像の3D(3Dimensional)表示に用いられる左目用のL画像の画像データであるL画像データおよび右目用のR画像の画像データであるR画像データを交換するための制御情報であるLR交換制御情報
を含むデータ構造のデータ
が記録されている記録媒体。
【請求項9】
2D(2Dimensional)表示用の副画像に対する、前記副画像の3D(3Dimensional)表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報
を含むデータ構造のデータを再生する際に、
前記オフセット変更制御情報にしたがって、表示中の前記L画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記L画像の画像データであるL画像データとし、そのL画像データに基づいて前記L画像を表示部に表示させるとともに、表示中の前記R画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記R画像の画像データであるR画像データとし、そのR画像データに基づいて前記R画像を前記表示部に表示させる表示制御手段
を備える再生装置。
【請求項10】
前記データは、前記副画像の画像データをさらに含むデータ構造のデータである
請求項9に記載の再生装置。
【請求項11】
前記データは、前記副画像の画像データを生成するための制御情報である生成制御情報をさらに含み、
前記再生装置は、
前記生成制御情報にしたがって、前記副画像の画像データを生成する生成手段
をさらに備える
請求項9に記載の再生装置。
【請求項12】
2D(2Dimensional)表示用の副画像に対する、前記副画像の3D(3Dimensional)表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報
を含むデータ構造のデータを再生する再生装置が、
前記オフセット変更制御情報にしたがって、表示中の前記L画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記L画像の画像データであるL画像データとし、そのL画像データに基づいて前記L画像を表示部に表示させるとともに、表示中の前記R画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記R画像の画像データであるR画像データとし、そのR画像データに基づいて前記R画像を前記表示部に表示させる
ステップを含む再生方法。
【請求項13】
2D(2Dimensional)表示用の副画像に対する、前記副画像の3D(3Dimensional)表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報
を含むデータ構造のデータを再生する制御を実行するコンピュータに、
前記オフセット変更制御情報にしたがって、表示中の前記L画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記L画像の画像データであるL画像データとし、そのL画像データに基づいて前記L画像を表示部に表示させるとともに、表示中の前記R画像の前記副画像に対するずれ方向と反対方向に前記副画像をずらした結果得られる画像の画像データを前記R画像の画像データであるR画像データとし、そのR画像データに基づいて前記R画像を前記表示部に表示させる
ステップを含む制御処理を実行させるプログラム。
【請求項14】
2D(2Dimensional)表示用の副画像に対する、前記副画像の3D(3Dimensional)表示に用いられる左目用のL画像および右目用のR画像のずれ方向を表すオフセット方向を変更するためのオフセット変更制御情報
を含むデータ構造のデータ
が記録されている記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate


【公開番号】特開2011−28791(P2011−28791A)
【公開日】平成23年2月10日(2011.2.10)
【国際特許分類】
【出願番号】特願2009−171206(P2009−171206)
【出願日】平成21年7月22日(2009.7.22)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】