JP5480915B2 - 表示装置と方法、記録媒体、送信装置と方法、及び再生装置と方法 - Google Patents
表示装置と方法、記録媒体、送信装置と方法、及び再生装置と方法 Download PDFInfo
- Publication number
- JP5480915B2 JP5480915B2 JP2011547328A JP2011547328A JP5480915B2 JP 5480915 B2 JP5480915 B2 JP 5480915B2 JP 2011547328 A JP2011547328 A JP 2011547328A JP 2011547328 A JP2011547328 A JP 2011547328A JP 5480915 B2 JP5480915 B2 JP 5480915B2
- Authority
- JP
- Japan
- Prior art keywords
- view
- frame
- video
- view frame
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/172—Processing image signals image signals comprising non-image signal components, e.g. headers or format information
- H04N13/178—Metadata, e.g. disparity information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/139—Format conversion, e.g. of frame-rate or size
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/158—Switching image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/172—Processing image signals image signals comprising non-image signal components, e.g. headers or format information
- H04N13/183—On-screen display [OSD] information, e.g. subtitles or menus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/189—Recording image signals; Reproducing recorded image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/341—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] using temporal multiplexing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2213/00—Details of stereoscopic systems
- H04N2213/003—Aspects relating to the "2D+depth" image format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2213/00—Details of stereoscopic systems
- H04N2213/005—Aspects relating to the "3D+depth" image format
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Library & Information Science (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
本発明は、立体視映像、すなわち3次元(3D)映像の表示技術に関する。
近年、3D映像に対する一般的な関心が高まっている。例えば遊園地では、3D映像を利用したアトラクションが人気を集めている。また、全国各地で、3D映像の映画を上映する映画館が増加している。そのような3D映像への関心の高まりに伴い、3D映像を各家庭でも再生可能にするための技術の開発が進められている。その技術では、3D映像コンテンツを高画質のまま、光ディスク等の可搬性記録媒体に記録することが求められる。更に、2D再生装置に対するその記録媒体の互換性が求められる。すなわち、その記録媒体に記録された3D映像コンテンツから、2D再生装置は2D映像を再生でき、3D再生装置は3D映像を再生できることが望ましい。ここで、「2D再生装置」とは、平面視映像、すなわち2次元(2D)映像のみを再生可能な従来の再生装置を意味し、「3D再生装置」とは、3D映像を再生可能な再生装置を意味する。尚、本明細書では、3D再生装置が従来の2D映像も再生可能である場合を想定する。
図75は、3D映像コンテンツが記録された光ディスクについて、2D再生装置に対する互換性を確保するための技術を示す模式図である(例えば特許文献1参照)。光ディスクPDSには二種類のビデオ・ストリームが格納されている。一方は2D/レフトビュー・ビデオ・ストリームであり、他方はライトビュー・ビデオ・ストリームである。「2D/レフトビュー・ビデオ・ストリーム」は、3D映像の再生では視聴者の左目に見せる2D映像、すなわち「レフトビュー」を表し、2D映像の再生ではその2D映像そのものを表す。「ライトビュー・ビデオ・ストリーム」は、3D映像の再生において視聴者の右目に見せる2D映像、すなわち「ライトビュー」を表す。左右のビデオ・ストリーム間では、フレームレートは等しいが、フレームの表示時期はフレーム周期の半分だけずれている。例えば、各ビデオ・ストリームのフレームレートが24fps(frame per seconds:フレーム毎秒)であるとき、2D/レフトビュー・ビデオ・ストリームとライトビュー・ビデオ・ストリームとの各フレームが1/48秒ごとに交互に表示される。
各ビデオ・ストリームは、図75に示されているように、光ディスクPDS上では複数のエクステントEX1A−C、EX2A−Cに分割されている。各エクステントはGOP(グループ・オブ・ピクチャ)を1以上含み、光ディスクドライブによって一括して読み出される。以下、2D/レフトビュー・ビデオ・ストリームに属するエクステントを「2D/レフトビュー・エクステント」といい、ライトビュー・ビデオ・ストリームに属するエクステントを「ライトビュー・エクステント」という。2D/レフトビュー・エクステントEX1A−Cとライトビュー・エクステントEX2A−Cとは交互に光ディスクPDSのトラックTRC上に配置されている。隣接する二つのエクステントEX1A+EX2A、EX1B+EX2B、EX1C+EX2Cの間では再生時間が等しい。このようなエクステントの配置を「インターリーブ配置」という。インターリーブ配置で記録されたエクステント群は、以下に述べるように、3D映像の再生と2D映像の再生との両方で利用される。
2D再生装置PL2では、光ディスクドライブDD2が光ディスクPDS上のエクステントのうち、2D/レフトビュー・エクステントEX1A−Cのみを先頭から順番に読み出す一方、ライトビュー・エクステントEX2A−Cの読み出しをスキップする。更に、映像デコーダVDCが、光ディスクドライブDD2によって読み出されたエクステントを順次、映像フレームVFLに復号する。それにより、表示装置DS2にはレフトビューのみが表示されるので、視聴者には通常の2D映像が見える。
3D再生装置PL3では、光ディスクドライブDD3が光ディスクPDSから2D/レフトビュー・エクステントとライトビュー・エクステントとを交互に、符号で表せば、EX1A、EX2A、EX1B、EX2B、EX1C、EX2Cの順に読み出す。更に、読み出された各エクステントから、2D/レフトビュー・ビデオ・ストリームは左映像デコーダVDLへ送られ、ライトビュー・ビデオ・ストリームは右映像デコーダVDRへ送られる。各映像デコーダVDL、VDRは交互に各ビデオ・ストリームを映像フレームVFL、VFRに復号する。それにより、表示装置DS3にはレフトビューとライトビューとが交互に表示される。一方、シャッター眼鏡SHGは、表示装置DS3による画面の切り換えに同期して、左右のレンズを交互に不透明にする。その結果、シャッター眼鏡SHGをかけた視聴者の左目にはレフトビューが映り、右目にはライトビューが映る。こうして、その視聴者には、表示装置DS3に交互に表示された、レフトビューとライトビューとの2D映像の対が一つの3D映像に見える。
光ディスクに限らず、記録媒体に3D映像コンテンツを格納するときは、上記のようにエクステントのインターリーブ配置を利用する。それにより、その記録媒体を2D映像の再生と3D映像の再生との両方で利用することができる。
映画では伝統的に、フレームレートは24fpsである。記録媒体に記録された映画コンテンツにおいても、ストリーム・データのフレームレートは通常24fpsである。しかし、テレビでは、その程度のフレームレートは低すぎて、視聴者に映像のちらつき(フリッカ)を感じさせる危険性がある。従って、テレビジョン受像器等の表示装置は一般に、映画コンテンツのフレームレートをより高い値に変換してから、その映像を表示する。具体的には、「3−2プルダウン方式」がそのようなフレームレートの変換方式として知られている。
図76の(a)、(b)はそれぞれ、3−2プルダウンによるフレームレートの変換前後における2D映像のフレーム列を示す模式図である。説明の便宜上、走査方式がプログレッシブ方式である場合を想定する。図76の(a)を参照するに、3−2プルダウンの前では、2D映像のフレーム列F2Dk(k=1、2、3、4、…)のフレームレートは24fpsであるので、フレーム当たりの表示時間は1/24秒である。図76の(b)を参照するに、3−2プルダウンは、そのフレーム列F2Dkのうち、奇数番目のフレームF2D1、F2D3、…をそれぞれ3回ずつ繰り返して表示し、偶数番目のフレームF2D2、F2D4、…をそれぞれ2回ずつ繰り返して表示する。フレーム当たりの表示時間は1/60秒に設定されているので、表示されるフレーム列F2Dkのフレームレートは60fpsである。
3D映像コンテンツでも、レフトビューとライトビューとの各フレームレートは、通常の2D映像と同様に24fpsである。従って、3D映像の表示においても2D映像の表示と同様に、3−2プルダウンによってフレームレートが変換される。図76の(c)、(d)は、3−2プルダウンによるフレームレートの変換前後における3D映像のフレーム列を示す模式図である。説明の便宜上、走査方式がプログレッシブ方式である場合を想定する。図76の(c)を参照するに、3−2プルダウンの前では、3D映像のフレーム列F3Dk(k=1、2、3、4、…)のフレームレートは24fpsであるので、フレーム当たりの表示時間は1/24秒である。図76の(d)を参照するに、3−2プルダウンは、そのフレーム列F3Dkのうち、奇数番目のフレームF3D1、F3D3、…をそれぞれ3回ずつ繰り返して表示し、偶数番目のフレームF3D2、F3D4、…をそれぞれ2回ずつ繰り返して表示する。フレーム当たりの表示時間は1/60秒に設定されているので、表示されるフレーム列F3Dkのフレームレートは60fpsである。ここで、3D映像の1フレームF3Dkは、実際には、レフトビューの1フレームFLとライトビューの1フレームFRとが交互に表示されたものである。図76の(e)は、3−2プルダウン後、3D映像の各フレームを構成するレフトビューとライトビューとの各フレーム列を示す模式図である。図76の(e)を参照するに、3D映像の各フレームの表示期間では、レフトビューの1フレームFLとライトビューの1フレームFRとが1/120秒ずつ、順番に表示される。
図76の(e)を更に参照するに、3D映像の奇数番目のフレームF3D1、F3D3、…の各表示期間では、合わせて6フレームのレフトビュー・ライトビューが表示される。一方、偶数番目のフレームF3D2、F3D4、…の各表示期間では、合わせて4フレームのレフトビュー・ライトビューしか表示されない。従って、3D映像の各フレームの表示時間は、コンテンツ上では等しく設定されているにもかかわらず、実際には、奇数番目の各フレームF3D1、F3D3、…の表示時間が偶数番目の各フレームF3D2、F3D4、…の表示時間よりも長い。具体的には、奇数番目のフレームF3D1、F3D3、…の表示時間は1/120秒×6=0.05秒であるのに対し、偶数番目フレームF3D2、F3D4、…の表示時間は1/120秒×4=約0.03秒である。このように、奇数番目と偶数番目とで3D映像のフレームの表示時間が異なる場合、その映像の動きを更に滑らかに表現することが困難である。
本発明の目的は、3D映像のフレームの表示時間を均一化するようにフレームレートを変換することによって、3D映像の動きを更に滑らかに表現することのできる表示装置を提供することにある。
本発明による表示装置は、立体視映像を画面に表示するための表示装置であって、受信部、信号処理部、及び表示部を備えている。
本発明の第1の観点による表示装置では、受信部は、立体視映像のレフトビュー・フレームとライトビュー・フレームとを含むストリーム・データを受信する。信号処理部は、ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを交互に抽出して送出する。表示部は、信号処理部から送出された各フレームを所定時間ずつ画面に表示する。信号処理部は特に、ストリーム・データの表す立体視映像の一つのフレーム期間に、一つのレフトビュー・フレームを第1の回数、一つのライトビュー・フレームを第2の回数、それぞれ繰り返して表示部へ送出する。信号処理部は更に、表示部がレフトビュー・フレームとライトビュー・フレームとを表示する際のフレームレートを、ストリーム・データの表す立体視映像のフレームレートで割った値に基づいて、立体視映像の少なくとも一つのフレーム期間では第1の回数と第2の回数とを互いに異なる値に決める。
本発明の第2の観点による表示装置では、受信部は、立体視映像のレフトビュー・フレームとライトビュー・フレーム、及び制御情報を含むストリーム・データを受信する。信号処理部は、ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを交互に抽出して送出する。表示部は、信号処理部から送出されたフレームを所定時間ずつ画面に表示する。制御情報は、各レフトビュー・フレームの表示タイプと各ライトビュー・フレームの表示タイプとを含む。各レフトビュー・フレームの表示タイプは第1の回数を規定し、その第1の回数は、表示部が立体視映像の一つのフレーム期間に当該レフトビュー・フレームを繰り返して表示すべき回数を表す。各ライトビュー・フレームの表示タイプは第2の回数を規定し、その第2の回数は、表示部が立体視映像の一つのフレーム期間に当該ライトビュー・フレームを繰り返して表示すべき回数を表す。立体視映像の少なくとも一つのフレーム期間では、第1の回数と第2の回数とが互いに異なる値に設定されている。受信部は信号処理部へ、各レフトビュー・フレームを、当該レフトビュー・フレームの表示タイプが規定する第1の回数、繰り返して送出し、各ライトビュー・フレームを、当該ライトビュー・フレームの表示タイプが規定する第2の回数、繰り返して送出する。
本発明による表示装置は、立体視映像の少なくとも一つのフレーム期間に、レフトビュー・フレームとライトビュー・フレームとのそれぞれを、互いに異なる回数、繰り返して表示する。特に、本発明の第1の観点による表示装置は、立体視映像の元のフレームレートと表示時でのフレームレートとの比に基づいて、上記の回数を自身で決める。一方、本発明の第2の観点による表示装置は、制御情報に従って上記の回数を設定する。いずれの表示装置も、3D映像のフレームの表示時間を均一化するようにフレームレートを変換することができるので、3D映像の動きを更に滑らかに表現することができる。
以下、本発明の好適な実施形態について、図面を参照しながら説明する。
《実施形態1》
図1は、本発明の実施形態1によるホームシアター・システムを示す模式図である。このホームシアター・システムは、視差映像を用いた3D映像(立体視映像)の再生方式を採用し、特に表示方式として継時分離方式(フレーム・シーケンシャル方式ともいう。)を採用している(詳細は《補足》参照)。図1を参照するに、このホームシアター・システムは、記録媒体101、再生装置102、表示装置103、シャッター眼鏡104、及びリモコン105を含む。
記録媒体101は、読み出し専用ブルーレイ・ディスク(登録商標)(BD:Blu−ray Disc)、すなわちBD−ROMディスクである。記録媒体101はその他の可搬性記録媒体、例えば、DVD等の他方式による光ディスク、リムーバブル・ハードディスクドライブ(HDD)、又はSDメモリカード等の半導体メモリ装置であってもよい。その記録媒体、すなわちBD−ROMディスク101は3D映像による映画コンテンツを格納している。このコンテンツは「レフトビュー・ビデオ・ストリーム」と「ライトビュー・ビデオ・ストリーム」とを含む。各ビデオ・ストリームは、3D映像のレフトビューとライトビューとの各フレーム列を表す。上記のコンテンツは更に「デプスマップ・ストリーム」を含んでいてもよい。デプスマップ・ストリームは、3D映像の各フレームのデプスマップを表す。それらのビデオ・ストリームは、後述のようにデータ・ブロック単位でBD−ROMディスク101上に配置され、後述のファイル構造を利用してアクセスされる。レフトビュー・ビデオ・ストリーム又はライトビュー・ビデオ・ストリームは、2D再生装置と3D再生装置とのそれぞれにより、そのコンテンツを2D映像として再生するのに利用される。一方、レフトビュー・ビデオ・ストリームとライトビュー・ビデオ・ストリームとの対、又は、レフトビュー若しくはライトビューのいずれかのビデオ・ストリームとデプスマップ・ストリームとの対は、3D再生装置により、そのコンテンツを3D映像として再生するのに利用される。
再生装置102はBD−ROMドライブ121を搭載している。BD−ROMドライブ121はBD−ROM方式に準拠の光ディスクドライブである。再生装置102はBD−ROMドライブ121を利用して、BD−ROMディスク101からコンテンツを読み込む。再生装置102は更にそのコンテンツを映像データ/音声データに復号する。ここで、再生装置102は3D再生装置であり、そのコンテンツを2D映像と3D映像とのいずれとしても再生可能である。以下、2D映像と3D映像とのそれぞれを再生するときの再生装置102の動作モードを「2D再生モード」、「3D再生モード」という。2D再生モードの映像データはレフトビュー・フレーム又はライトビュー・フレームのいずれかのみを含む。3D再生モードの映像データはレフトビュー・フレームとライトビュー・フレームとの両方を含む。
3D再生モードは更に、レフト/ライト(L/R)モードとデプス・モードとに分けられる。「L/Rモード」では、レフトビュー・ビデオ・ストリームとライトビュー・ビデオ・ストリームとの組み合わせからレフトビュー・フレームとライトビュー・フレームとの対が再生される。「デプス・モード」では、レフトビュー又はライトビューのいずれかのビデオ・ストリームとデプスマップ・ストリームとの組み合わせからレフトビュー・フレームとライトビュー・フレームとの対が再生される。再生装置102はL/Rモードを備える。再生装置102は更に、デプス・モードを備えていてもよい。
再生装置102はHDMI(High−Definition Multimedia Interface)ケーブル122で表示装置103に接続されている。再生装置102は映像データ/音声データをHDMI方式のシリアル信号に変換し、HDMIケーブル122内のTMDS(Transition Minimized DifferentialSignaling)チャネルを通して表示装置103へ伝送する。2D再生モードの映像信号にはレフトビュー・フレーム又はライトビュー・フレームのいずれかのみが多重化されている。3D再生モードの映像信号にはレフトビュー・フレームとライトビュー・フレームとの両方が時分割で多重化されている。再生装置102は更に、HDMIケーブル122内のCEC(Consumer Electronics Control)ラインを通して、表示装置103との間でCECメッセージを交換する。それにより、再生装置102は、3D映像の再生に対応可能か否かを表示装置103に問い合わせることができる。再生装置102はその上、HDMIケーブル122内のディスプレイ・データ・チャネル(DDC)を通して、問い合わせの結果を表すデータ、EDID(Extended Display Identification Data)を表示装置103から読み出す。再生装置102はその他に、DDCを通して表示装置103との間でHDCP(High−bandwidth Digital Content Protection)認証を行う。その認証の結果で得られた秘密鍵を利用して、再生装置102は映像データ等を暗号化し、HDMIケーブル122を通して表示装置103へ伝送する。
表示装置103は液晶ディスプレイである。表示装置103はその他に、プラズマ・ディスプレイ及び有機ELディスプレイ等、他方式のフラットパネル・ディスプレイ又はプロジェクタであってもよい。表示装置103は、映像データに従って画面131上に映像を表示し、音声データに従って内蔵のスピーカから音声を発生させる。表示装置103は3D映像の再生に対応可能である。2D映像の再生時、画面131上にはレフトビュー又はライトビューのいずれか一方が表示される。3D映像の再生時、画面131上にはレフトビューとライトビューとが交互に表示される。
表示装置103は左右信号送信部132を含む。左右信号送信部132は左右信号LRを赤外線又は無線でシャッター眼鏡104へ送出する。左右信号LRは、現時点で画面131に表示される映像がレフトビューとライトビューとのいずれであるのかを示す。3D映像の再生時、表示装置103は、映像データに付随する同期信号等の制御信号や補助データからレフトビュー・フレームとライトビュー・フレームとを識別することによって、フレームの切り換えを検知する。表示装置103は更に左右信号送信部132に、検知されたフレームの切り換えに同期して左右信号LRを変化させる。
シャッター眼鏡104は二枚の液晶表示パネル141L、141Rと左右信号受信部142とを含む。各液晶表示パネル141L、141Rは左右の各レンズ部分を構成している。左右信号受信部142は左右信号LRを受信し、その変化に応じて左右の液晶表示パネル141L、141Rに信号を送る。各液晶表示パネル141L、141Rはその信号に応じて、光をその全体で一様に透過させ、又は遮断する。特に左右信号LRがレフトビューの表示を示すとき、左目側の液晶表示パネル141Lは光を透過させ、右目側の液晶表示パネル141Rは光を遮断する。左右信号LRがライトビューの表示を示すときはその逆である。このように、二枚の液晶表示パネル141L、141Rはフレームの切り換えと同期して交互に光を透過させる。その結果、視聴者がシャッター眼鏡104をかけて画面131を見たとき、レフトビューはその視聴者の左目だけに映り、ライトビューはその右目だけに映る。そのとき、その視聴者には、各目に映る映像間の違いが同じ立体的物体に対する両眼視差として知覚されるので、その映像が立体的に見える。
リモコン105は操作部と送信部とを含む。操作部は複数のボタンを含む。各ボタンは、電源のオンオフ、又は、BD−ROMディスク101の再生開始若しくは停止等、再生装置102又は表示装置103の各機能に対応付けられている。操作部はユーザによる各ボタンの押下を検出し、そのボタンの識別情報を信号で送信部に伝える。送信部はその信号を赤外線又は無線による信号IRに変換して再生装置102又は表示装置103へ送出する。一方、再生装置102又は表示装置103はその信号IRを受信し、その信号IRの示すボタンに対応付けられた機能を特定する。再生装置102又は表示装置103は更に、その機能が自身のものであるときはその機能を実現し、その機能が他の装置のものであるときは、例えばCECメッセージを利用してその機能を他の装置に実現させる。こうして、ユーザは一つのリモコン105で再生装置102と表示装置103との両方を遠隔操作できる。
<表示装置>
図2は、図1に示されている表示装置103の構成を示す機能ブロック図である。図2を参照するに、表示装置103は、左右信号送信部132に加えて、受信部210、信号処理部220、メモリ部230、表示部240、及びスピーカ250を含む。
受信部210は、再生装置102の他、メモリカード201、外部ネットワーク202、及び放送波203等の各種媒体からストリーム・データを受信する。そのストリーム・データは3D映像の映画コンテンツを含む。受信部210は特にHDMI通信部211を含む。
信号処理部220はそのストリーム・データから、映像、音声、グラフィックス等、各種のデータを分離して個別に処理する。信号処理部220は更に、レフトビュー・フレームLFとライトビュー・フレームRFとをメモリ部230へ一旦格納し、同期信号等、映像データに付随する制御信号と補助データとを表示部240に渡し、音声データADをスピーカ250に送出する。信号処理部220はその後、メモリ部230から各フレームLF、RFを交互に読み出して表示部240へ送出する。このとき、信号処理部220はフレームレートを、3D映像のフレームレート(=24fps)よりも高い値に変換する。そのフレームの送出処理と並行して、信号処理部220は左右信号送信部132に指示を送り、フレームの切り換えに同期して左右信号LRを変化させる。
メモリ部230は、表示装置103に内蔵された半導体メモリ装置又はハードディスク・ドライブ(HDD)である。その他に、表示装置103に外付けされたHDDであってもよい。メモリ部230は二つのフレーム・バッファ、FB1231、FB2232を含む。FB1231とFB2232とは互いに独立なメモリ素子である。その他に、一つのメモリ素子又はHDD内の異なる領域であってもよい。FB1231とFB2232とはそれぞれ、ピクセル・データの2次元配列を格納可能である。その配列の各要素が画面の各画素と一対一に対応付けられている。FB1231は、信号処理部220からレフトビュー・フレームLFを受信して格納し、FB2232は、ライトビュー・フレームRFを受信して格納する。
表示部240は表示駆動部241と表示パネル242とを含む。表示駆動部241は、信号処理部220からの制御信号に従って表示パネル242を制御する。その結果、レフトビュー・フレームLFとライトビュー・フレームRFとが交互に所定時間ずつ、表示パネル242の画面上に表示される。表示パネル242は液晶表示パネル(LCD)である。その他に、プラズマ表示パネル、有機EL表示パネル等、他の方式のものであってもよい。スピーカ250は、表示装置103に内蔵されたスピーカである。その他に、スピーカ250は、表示装置103に外付けされたスピーカであってもよい。
図3は、HDMI通信部211の構成を示す機能ブロック図である。HDMI通信部211は、HDMIケーブル122で再生装置102に接続されている。それにより、HDMI通信部211は、再生装置102と信号処理部220との間でのデータ交換を中継している。図3を参照するに、HDMI通信部211は、TMDSデコーダ301、EDID記憶部302、及びCEC部303を含む。
TMDSデコーダ301は、HDMIケーブル122内のTMDSチャネルCH1、CH2、CH3、CLKを通して再生装置102から、映像データ、音声データ、補助データ、及び制御信号を表すシリアル信号を受信する。TMDSチャネルは三種類のデータ・チャネルCH1、CH2、CH3と一つのクロック・チャネルCLKとを含む。各チャネルは一対の差動信号線から成る。クロック・チャネルCLKの状態が一周期分変化する間に、各データ・チャネルCH1−3は10ビットを伝送する。各データ・チャネルCH1−3からは、例えば、R、G、Bの各8ビットのピクセル・データ、4ビットの音声データと補助データ(インフォ・フレーム)、及び2ビットの制御信号(水平同期信号と垂直同期信号とを含む)がそれぞれ、10ビットのデータに変換されて伝送される。TMDSデコーダ301はそれら10ビットのデータ列から映像データ等を解読して、信号処理部220へ渡す。
EDID記憶部302は、HDMI通信部211に内蔵された半導体メモリ装置であり、HDMIケーブル122内のディスプレイ・データ・チャネルDDCを通して再生装置102に接続されている。ディスプレイ・データ・チャネルDDCは、グラウンド・ラインを含む三本一組の差動信号線から成る。信号処理部220はEDID記憶部302に、表示装置103の機能、特性、状態を表すパラメータをEDIDとして格納する。EDIDは特に、表示装置103が3D映像の再生機能を持つか否かを示す情報を含む。EDID記憶部302は、再生装置102からの要求に応じて、ディスプレイ・データ・チャネルDDCを通してEDIDを提供する。ディスプレイ・データ・チャネルDDCはその他に、信号処理部220と再生装置102との間でのHDCP認証に利用される。信号処理部220はHDCP認証処理を通して再生装置102と一つの鍵を共有する。再生装置102はその鍵を利用して映像データと音声データとを暗号化し、信号処理部220はその鍵を利用して暗号化データを映像データと音声データとに復号する。
CEC部303は、HDMIケーブル122内のCECラインCECを通して、再生装置102との間でCECメッセージを交換する。CECラインCECは一本の信号線から成る。CEC部303は特に、再生装置102がリモコン105から受けた情報をCECメッセージとして受信して信号処理部220へ通知し、又は逆に、信号処理部220がリモコン105から受けた情報をCECメッセージに変換して再生装置102へ通知する。
図4の(a)は、TMDSデータ・チャネルCH1−3を通して伝送されるデータのうち、3D映像の1フレームの表示に利用されるデータの構造を示す模式図である。図4の(a)を参照するに、横長の矩形LN[1]、LN[2]、LN[3]、…はそれぞれ、「ライン」と呼ばれる一定長のデータ列を表す。3D映像の1フレームの表示に利用されるデータは、複数のラインLN[1]、LN[2]、LN[3]、…に変換されて、ライン単位で順番に、図4の(a)では上から順に伝送される。各ラインは、8ビット=1バイトのデータを一定数並べたものであって、先頭から順に、図4の(a)では左から順に伝送される。図4の(a)を更に参照するに、各ラインの伝送期間は、コントロール区間CTP(白い矩形で表されている)、データ・アイランド区間DIP(黒い矩形で表されている)、及びビデオ・データ区間VDP(斜線部で表されている)の三種類に分類される。コントロール区間CTPでは、水平同期信号HSYNC、垂直同期信号VSYNC、その他の制御信号が伝送される。データ・アイランド区間DIPでは主に音声データと補助データとが伝送される。ビデオ・データ区間VDPでは映像データ、特にピクセル・データが伝送される。図4の(a)に示されているとおり、先頭のラインLN[1]から数えてk本のラインLN[1]、…、LN[k](文字kは1以上の整数を表す。)はビデオ・データ区間VDPを含まず、垂直帰線区間VBLKを構成している。その他のラインLN[k+1]、…はビデオ・データ区間VDPを含み、垂直有効表示区間VACTを構成している。垂直同期信号VSYNCは、垂直帰線区間VBLKの最初の数本のラインLN[1]、LN[2]、LN[3]、…においてのみアクティブになって3D映像の新たなフレームの伝送開始を示す。垂直有効表示区間VACTでは、各ラインの先頭部はビデオ・データ区間VDPを含まず、水平帰線区間HBLKを構成し、その他の部分はビデオ・データ区間VDPのみを含み、水平有効表示区間HACTを構成している。水平同期信号VSYNCは、各ラインLN[1]、LN[2]、LN[3]、…の先頭のコントロール区間CTPにおいてのみアクティブになって各ラインの伝送開始を示す。垂直有効表示区間VACTと水平有効表示区間HACTの共通部分は有効表示領域VACT×HACTであって、3D映像の1フレームを構成するレフトビュー・フレームとライトビュー・フレームの対を含む。
図4の(b)−(e)は、(a)に示されている有効表示領域VACT×HACTにおけるレフトビュー・フレームとライトビュー・フレームとの配置の種類を示す模式図である。各図に示されている破線の矩形VDPが有効表示領域VACT×HACTを示す。各図の斜線部はライトビュー・フレームの伝送区間を示す。図4の(b)は「フレーム・パッキング方式」を示す。垂直有効表示区間VACTを構成するライン数は、2D映像の1フレームのものの2倍よりも大きく設定されている。有効表示領域VACT×HACTの前半、図4の(b)では上側にレフトビュー・フレームLが配置され、後半、図4の(b)では下側にライトビュー・フレームRが配置されている。更に両方のフレームL、Rの間に空き領域(Active Space)VASPが設けられている。この空き領域VASPのライン数は垂直帰線区間VBLKのライン数と等しい。再生装置102は空き領域VASPを一定のピクセル・データで満たす。一方、信号処理部220は空き領域VASP内のピクセル・データを無視する。図4の(c)は「サイド・バイ・サイド方式(フル)」を示す。水平有効表示区間HACTのピクセル数は2D映像の1フレームのものの2倍に設定されている。各ラインの水平有効表示区間HACTの前半がレフトビュー・フレームLを含み、後半がライトビュー・フレームRを含む。図4の(d)は「サイド・バイ・サイド方式(ハーフ)」を示す。図4の(c)の有効表示領域とは異なり、水平有効表示区間HACTのピクセル数は2D映像の1フレームのものと等しい。各フレームL、Rの水平解像度が半分に圧縮された後、レフトビュー・フレームLは各ラインの水平有効表示区間HACTの前半に配置され、ライトビュー・フレームRは後半に配置されている。図4の(e)は「トップ・ボトム方式」(オーバー・アンダー方式とも言う。)を示す。図4の(b)の有効表示領域とは異なり、垂直有効表示区間VACTのライン数は2D映像の1フレームのものと等しい。各フレームL、Rの垂直解像度が半分に圧縮された後、レフトビュー・フレームLは垂直有効表示区間VACTの前半に配置され、ライトビュー・フレームRは後半に配置されている。図4の(f)は「交互ライン方式(Line alternative)」を示す。垂直有効表示区間VACTの奇数番目のラインがレフトビュー・フレームを含み、偶数番目のラインがライトビュー・フレームを含む。垂直有効表示区間VACTを構成するライン数は、2D映像の1フレームのものの2倍に設定されている。
図5は、図2に示されている表示装置103による3D映像の表示動作のフローチャートである。この動作は、再生装置102等、3D映像を表すストリーム・データの送信元からその3D映像の表示要求を受信することによって開始される。
ステップS51では、受信部210が、上記の送信元からストリーム・データを受信する。例えばその送信元が再生装置102である場合、HDMI通信部211が、EDIDの送信及びHDCP認証を行った後に、TMDSデータ・チャネルCH1−3を通してストリーム・データを受信する。その後、処理はステップS52へ進む。
ステップS52では、信号処理部220がストリーム・データから、映像、音声、グラフィックス等、各種のデータを分離する。信号処理部220は更に、レフトビュー・フレームLFとライトビュー・フレームRFとをメモリ部230へ一旦格納し、垂直同期信号VSYNC、水平同期信号HSYNC、その他の制御信号、及び補助データを表示部240に渡し、音声データADをスピーカ250へ送出する。その後、処理はステップS53へ進む。
ステップS53では、スピーカ250が音声データADから音声を再現する。その動作と並行して、処理はステップS54へ進む。
ステップS54では、信号処理部220が、メモリ部230内のFB1231、FB2232から交互にフレームLF、RFを読み出して表示部240へ送出する。このとき、信号処理部220はフレームレートを、3D映像のフレームレート(=24fps)よりも高い値、例えば、100fps、120fps、180fpsのいずれかに変換する。表示部240では、表示駆動部241が、信号処理部220からの制御信号に従って表示パネル242を制御する。それにより、レフトビュー・フレームLFとライトビュー・フレームRFとが交互に所定時間ずつ、例えば、1/100秒、1/120秒、1/180秒のいずれかずつ、表示パネル242の画面上に表示される。一方、信号処理部220は、左右信号送信部132に、フレームの切り換えと同期して、左右信号LRを変化させる。その変化に応じて、シャッター眼鏡104は左右の液晶表示パネル141L、141Rに交互に光を透過させる。その結果、シャッター眼鏡104をかけて画面131を見ている視聴者には、レフトビュー・フレームLFとライトビュー・フレームRFとが3D映像の1フレームとして見える。その後、処理はステップS55へ進む。
ステップS55では、メモリ部230の中に表示対象のストリーム・データが残っていないかを、信号処理部220がチェックする。ストリーム・データが残っている場合、処理はステップS52から繰り返される。残っていない場合、処理は終了する。
図6は、フレームレート=24fpsの3D映像のフレーム列F3Dk(k=1、2、3、4、…)から変換された、120fpsのレフトビュー・フレームとライトビュー・フレームとの列FLk、FRkを示す模式図である。図6の(a)に示されているとおり、コンテンツにおいて3D映像の各フレームF3Dkの表示時間は1/24秒に設定されている。このフレーム列F3Dkからレフトビュー・フレームFLkとライトビュー・フレームFLkとをそれぞれ、1/120秒ずつ交互に表示する場合、信号処理部220は、各フレームを図6の(b)に示されているように繰り返し送出する。まず、先頭のレフトビュー・フレームFL1を3回、先頭のライトビュー・フレームFR1を2回、交互に繰り返して送出する。次に、2番目のレフトビュー・フレームFL2を2回、2番目のライトビュー・フレームFR2を3回、交互に繰り返して送出する。更に、3番目のレフトビュー・フレームFL3を3回、3番目のライトビュー・フレームFR3を2回、交互に繰り返して送出し、4番目のレフトビュー・フレームFL4を2回、4番目のライトビュー・フレームFR4を3回、交互に繰り返して送出する。以降も同様な送出動作が繰り返される。その場合、3D映像の各フレームF3Dkの表示期間では、レフトビュー・フレームFLkとライトビュー・フレームFRkとの一方は3回表示されるのに対し、他方は2回しか表示されない。このように、レフトビュー・フレームFLkとライトビュー・フレームFRkとの間で表示回数が異なる。しかし、視聴者には、レフトビュー・フレームFLkとライトビュー・フレームFRkとが合わせて五つ送出されるごとに、3D映像のフレームF3Dkが切り換えられるように見える。すなわち、3D映像の各フレームF3Dkの表示時間はいずれも、1/120秒×5フレーム≒0.42秒に等しい。こうして、3D映像のフレームの表示時間が均一化されるので、3D映像の動きを更に滑らかに表現することができる。
図7は、フレームレート=24fpsの3D映像のフレーム列F3Dk(k=1、2、…、7、8、…)から変換された、100fpsのレフトビュー・フレームとライトビュー・フレームとの列FLk、FRkを示す模式図である。図7の(a)に示されているとおり、コンテンツにおいて3D映像の各フレームF3Dkの表示時間は1/24秒に設定されている。このフレーム列F3Dkからレフトビュー・フレームFLkとライトビュー・フレームFLkとをそれぞれ、1/100秒ずつ交互に表示する場合、信号処理部220は、各フレームを図7の(b)に示されているように繰り返し送出する。まず、先頭のレフトビュー・フレームFL1を3回、先頭のライトビュー・フレームFR1を2回、交互に繰り返して送出する。次に、2番目のレフトビュー・フレームFL2を2回、2番目のライトビュー・フレームFR2を2回、交互に繰り返して送出する。以降、3−6番目の各レフトビュー・フレームFL3を2回ずつ、3−6番目のライトビュー・フレームFR3を2回ずつ、交互に繰り返して送出する。続いて、7番目のレフトビュー・フレームFL4を2回、7番目のライトビュー・フレームFR4を3回、交互に繰り返して送出する。8−12番目のレフトビュー・フレームFLkとライトビュー・フレームFRk(k=8、…、12)とのそれぞれを2回ずつ、交互に繰り返して送出する。以降、フレームの順番が12進むごとに、すなわち、1/100秒×{(3+2)+(2+2)×5+(2+3)+(2+2)×5}=0.5秒ごとに、同様な送出動作が繰り返される。その場合、0.25秒に1回ずつ、次のような3D映像のフレームF3Dkの表示期間が生じる:図7の(b)に太い破線で示されている領域AR1、AR2のように、その表示期間では、レフトビュー・フレームFLkとライトビュー・フレームFRkとの一方は3回表示されるのに対して、他方は2回しか表示されない。その結果、図7の(b)に示されているとおり、3D映像の先頭のフレームF3D1と7番目のフレームF3D7との各表示時間は1/100秒×5フレーム=0.05秒であって、他のフレームF3Dk(k=2、3、…、6、8)の表示時間=1/100秒×4フレーム=0.04秒よりも長い。しかし、その差は一つのレフトビュー・フレーム又はライトビュー・フレームの表示時間=1/100秒=0.01秒まで短縮されているので、視聴者には、3D映像のフレームF3Dk間での表示時間の差が感じられにくい。こうして、3D映像のフレームの表示時間がほぼ均一化されるので、3D映像の動きを更に滑らかに表現することができる。
図8は、フレームレート=24fpsの3D映像のフレーム列F3Dk(k=1、2、3、4、…)から変換された、180fpsのレフトビュー・フレームとライトビュー・フレームとの列FLk、FRkを示す模式図である。図8の(a)に示されているとおり、コンテンツにおいて3D映像の各フレームF3Dkの表示時間は1/24秒に設定されている。このフレーム列F3Dkからレフトビュー・フレームFLkとライトビュー・フレームFLkとをそれぞれ、1/180秒ずつ交互に表示する場合、信号処理部220は、各フレームを図8の(b)に示されているように繰り返し送出する。まず、先頭のレフトビュー・フレームFL1を4回、先頭のライトビュー・フレームFR1を4回、交互に繰り返して送出する。次に、2番目のレフトビュー・フレームFL2を4回、2番目のライトビュー・フレームFR2を3回、交互に繰り返して送出する。更に、3番目のレフトビュー・フレームFL3を4回、3番目のライトビュー・フレームFR3を4回、交互に繰り返して送出し、4番目のレフトビュー・フレームFL3を3回、4番目のライトビュー・フレームFR3を4回、交互に繰り返して送出する。5番目以降は、フレームの順番が四つ進むごとに、すなわち、1/180秒×{(4+4)+(4+3)+(4+4)+(3+4)}≒0.17秒ごとに、同様な送出動作が繰り返される。その場合、図8の(b)に示されているとおり、3D映像の奇数番目のフレームF3D1、F3D3の各表示期間では、レフトビュー・フレームFLkとライトビュー・フレームFRkとが4回ずつ表示される。それに対し、偶数番目のフレームF3D2、F3D4の各表示期間では、レフトビュー・フレームFLkとライトビュー・フレームFRkとの一方が4回表示され、他方が3回しか表示されない。その結果、3D映像の奇数番目のフレームF3D1、3の表示時間は1/180秒×8フレーム≒0.044秒であって、偶数番目のフレームF3D2、4の表示時間=1/180秒×7フレーム≒0.039秒よりも長い。しかし、その差は一つのレフトビュー・フレーム又はライトビュー・フレームの表示時間=1/180秒≒0.006秒まで短縮されているので、視聴者には、3D映像のフレームF3Dk間での表示時間の差が感じられにくい。こうして、3D映像のフレームの表示時間がほぼ均一化されるので、3D映像の動きを更に滑らかに表現することができる。
図6−8の(b)に示されている、3D映像の各フレームの表示期間にレフトビュー・フレームとライトビュー・フレームとのそれぞれを繰り返して表示する回数は、信号処理部220に予め設定されていてもよい。その他に、信号処理部220は次のような処理を利用して、表示対象の3D映像のフレームF3Dkを切り換えてもよい。信号処理部220は、まず、目標のフレームレート120fps、100fps、又は180fpsを3D映像のフレームレート24fpsで割った値120/24=5、100/24≒4.2、又は180/24=7.5を「切り換えグリッド」GRDとして設定する。信号処理部220は、次に、先頭のレフトビュー・フレームFL1の表示開始からレフトビュー・フレームとライトビュー・フレームとの各表示回数の合計を監視する。その合計が切り換えグリッドGRDの整数倍を超えるごとに、信号処理部220は表示対象の3D映像のフレームを次のフレームに切り換える。具体的には、図6の(b)では、先頭のレフトビュー・フレームFL1から数えられたレフトビュー・フレームとライトビュー・フレームとの各表示回数の合計が切り換えグリッドGRD=120/24の整数倍、5、10、15、…に達するごとに、表示対象の3D映像のフレームF3Dkが次のフレームF3D(k+1)に切り換えられる。図7の(b)では、レフトビュー・フレームとライトビュー・フレームとの各表示回数の合計が切り換えグリッドGRD=100/24の整数倍、4.2、8.3、12.5、…を超えるごとに、表示対象の3D映像のフレームF3Dkが次のフレームF3D(k+1)に切り換えられる。図8の(b)では、レフトビュー・フレームとライトビュー・フレームとの各表示回数の合計が切り換えグリッドGRD=180/24の整数倍、7.5、15、22.5、…を超えるごとに、表示対象の3D映像のフレームF3Dkが次のフレームF3D(k+1)に切り換えられる。
図9は、信号処理部220による上記の処理を利用した3D映像のフレームF3Dkの表示処理のフローチャートである。この処理は、信号処理部220が受信部210からストリーム・データを受けた時点に開始される。
ステップS91では、信号処理部220は、目標のフレームレートFRLR(=120fps、100fps、180fps)を3D映像のフレームレートFR3D(=24fps)で割った値(=5、4.2、7.5)を切り換えグリッドGRDに設定する:GRD=FRLR/FR3D。その後、処理はステップS92へ進む。
ステップS92では、信号処理部220は、3D映像のフレーム番号NF3Dの値を“1”に初期化し、レフトビュー/ライトビューのフレーム番号NFLRの値を“0”に初期化する:NF3D=1、NFLR=0。ここで、3D映像のフレーム番号NF3Dは、図6−8の(a)に示されている3D映像のフレームF3Dkのうち、現時点で表示されるべきフレームの先頭からの順序を表す。一方、レフトビュー/ライトビューのフレーム番号NFLRは、図6−8の(b)に示されているレフトビュー/ライトビュー・フレームFLk/FRkのうち、現時点までに表示されたフレームの延べ数を表す。信号処理部220は更に、切り換え対象のフレーム番号NFSWに切り換えグリッドGRDを設定する:NLRSW=GRD。その後、処理はステップS93へ進む。
ステップS93では、信号処理部220は、レフトビュー/ライトビューのフレーム番号NFLRが偶数か否かを判定する。偶数である場合、処理はステップS94Yへ進み、奇数である場合、処理はステップS94Nへ進む。
ステップS94Yでは、信号処理部220は、3D映像の各フレームを構成するレフトビュー・フレームのうち、先頭からの順序が3D映像のフレーム番号NF3Dと等しいものをFB1231から表示部240へ転送して、表示部240に表示させる。その後、処理はステップS95へ進む。
ステップS94Nでは、信号処理部220は、3D映像の各フレームを構成するライトビュー・フレームのうち、先頭からの順序が3D映像のフレーム番号NF3Dと等しいものをFB2232から表示部240へ転送して、表示部240に表示させる。その後、処理はステップS95へ進む。
ステップS95では、信号処理部220は、レフトビュー/ライトビューのフレーム番号NFLRの値を“1”だけ増加させる:NFLR=NFLR+1。その後、処理はステップS96へ進む。
ステップS96では、信号処理部220は、レフトビュー/ライトビューのフレーム番号NFLRが切り換え対象のフレーム番号NFSW以上であるか否かを判定する。前者が後者以上である場合、処理はステップS97へ進み、前者が後者未満である場合、処理はステップS93から繰り返される。
ステップS97では、信号処理部220は3D映像のフレーム番号NF3Dの値を“1”だけ増加させる:NF3D=NF3D+1。信号処理部220は更に、切り換え対象のフレーム番号NFSWの値を切り換えグリッドGRDだけ増加させる:NFSW=NFSW+GRD。その後、処理はステップS98へ進む。
ステップS98では、信号処理部220は、3D映像の各フレームを構成するレフトビュー・フレームのうち、先頭からの順序が3D映像のフレーム番号NF3Dと等しいものがFB1231に格納されているか否かを判定する。格納されている場合、処理はステップS93から繰り返され、格納されていない場合、処理は終了する。
図6−8に示されているとおり、本発明の実施形態1による表示装置は、3D映像のフレーム間に生じる表示時間の差を、レフトビュー・フレーム又はライトビュー・フレーム一つあたりの表示時間まで短縮する。従って、視聴者にはその差が感じられにくい。こうして、この表示装置は3D映像の各フレームの表示時間をほぼ均一にするので、3D映像の動きを更に滑らかに表現することができる。
<BD−ROMディスク上のデータ構造>
図10は、BD−ROMディスク101上のデータ構造を示す模式図である。図10を参照するに、BD−ROMディスク101上のデータ記録領域の最内周部にはBCA(Burst Cutting Area)1001が設けられている。BCAに対してはBD−ROMドライブ121によるアクセスのみが許可され、アプリケーション・プログラムによるアクセスは禁止される。それにより、BCA1001は著作権保護技術に利用される。BCA1001よりも外側のデータ記録領域では内周から外周へ向けてトラックが螺旋状に延びている。図10にはトラック1002が模式的に横方向に引き伸ばされて描かれている。その左側はディスク101の内周部を表し、右側は外周部を表す。図10に示されているように、トラック1002は内周から順に、リードイン領域1002A、ボリューム領域1002B、及びリードアウト領域1002Cを含む。リードイン領域1002AはBCA1001のすぐ外周側に設けられている。リードイン領域1002Aは、ボリューム領域1002Bに記録されたデータのサイズ及び物理アドレス等、BD−ROMドライブ121によるボリューム領域1002Bへのアクセスに必要な情報を含む。リードアウト領域1002Cはデータ記録領域の最外周部に設けられ、ボリューム領域1002Bの終端を示す。ボリューム領域1002Bは、映像及び音声等のアプリケーション・データを含む。
ボリューム領域1002Bは「セクタ」と呼ばれる小領域1002Dに分割されている。セクタのサイズは共通であり、例えば2048バイトである。各セクタ1002Dにはボリューム領域1002Bの先端から順に通し番号が振られている。この通し番号は論理ブロック番号(LBN)と呼ばれ、BD−ROMディスク101上の論理アドレスに利用される。BD−ROMディスク101からのデータの読み出しでは、宛先のセクタのLBNが指定されることによって読み出し対象のデータが特定される。こうして、ボリューム領域1002Bはセクタ単位でアクセス可能である。更に、BD−ROMディスク101上では論理アドレスが物理アドレスと実質的に等しい。特にLBNが連続している領域では物理アドレスも実質的に連続している。従って、BD−ROMドライブ121は、その光ピックアップにシークを行わせることなく、LBNが連続しているセクタからデータを連続して読み出すことができる。
ボリューム領域1002Bに記録されたデータは所定のファイルシステムで管理される。そのファイルシステムとしてはUDF(Universal Disc Format)が採用されている。そのファイルシステムはその他にISO9660であってもよい。そのファイルシステムに従い、ボリューム領域1002Bに記録されたデータはディレクトリ/ファイル形式で表現される(詳細は《補足》参照)。すなわち、それらのデータはディレクトリ単位又はファイル単位でアクセス可能である。
≪BD−ROMディスク上のディレクトリ/ファイル構造≫
図10は更に、BD−ROMディスク101のボリューム領域1002Bに格納されたデータのディレクトリ/ファイル構造を示す。図10を参照するに、このディレクトリ/ファイル構造では、ルート(ROOT)ディレクトリ1003の直下にBDムービー(BDMV:BD Movie)ディレクトリ1010が置かれている。BDMVディレクトリ1010の直下には、インデックス・ファイル(index.bdmv)1011とムービーオブジェクト・ファイル(MovieObject.bdmv)1012とが置かれている。
インデックス・ファイル1011は、BD−ROMディスク101に記録されたコンテンツの全体を管理するための情報である。その情報は特に、そのコンテンツを再生装置102に認識させるための情報、及びインデックス・テーブルを含む。インデックス・テーブルは、そのコンテンツを構成するタイトルと、再生装置102の動作を制御するためのプログラムとの間の対応表である。そのプログラムを「オブジェクト」という。オブジェクトの種類にはムービーオブジェクトとBD−J(BD Java (登録商標))オブジェクトとがある。
ムービーオブジェクト・ファイル1012は一般に複数のムービーオブジェクトを含む。各ムービーオブジェクトはナビゲーション・コマンドの列を含む。ナビゲーション・コマンドは、一般的なDVDプレーヤによる再生処理と同様な再生処理を再生装置102に実行させるための制御指令である。ナビゲーション・コマンドの種類には、例えば、タイトルに対応するプレイリスト・ファイルの読み出し命令、プレイリスト・ファイルの示すAVストリーム・ファイルの再生命令、及び別のタイトルへの遷移命令がある。ナビゲーション・コマンドはインタプリタ型言語で記述され、再生装置102に組み込まれたインタプリタ、すなわちジョブ制御プログラムによって解読され、その制御部に所望のジョブを実行させる。ナビゲーション・コマンドはオペコードとオペランドとから成る。オペコードは、タイトルの分岐と再生及び演算等、再生装置102に実行させるべき操作の種類を示す。オペランドは、タイトル番号等、その操作の対象の識別情報を示す。再生装置102の制御部は、例えばユーザの操作に応じて各ムービーオブジェクトを呼び出し、そのムービーオブジェクトに含まれるナビゲーション・コマンドを列の順に実行する。それにより、再生装置102は一般的なDVDプレーヤと同様に、まず、表示装置103にメニューを表示してユーザにコマンドを選択させる。再生装置102は次に、選択されたコマンドに応じて、タイトルの再生開始/停止、及び別のタイトルへの切り換え等、再生される映像の進行を動的に変化させる。
図10を更に参照するに、BDMVディレクトリ1010の直下には、プレイリスト(PLAYLIST)ディレクトリ1020、クリップ情報(CLIPINF)ディレクトリ1030、ストリーム(STREAM)ディレクトリ1040、BD−Jオブジェクト(BDJO:BD Java Object)ディレクトリ1050、及びJavaアーカイブ(JAR:Java Archive)ディレクトリ1060が置かれている。
STREAMディレクトリ1040の直下には、三種類のAVストリーム・ファイル(01000.m2ts)1041、(02000.m2ts)1042、(03000.m2ts)1043、及び、立体視インターリーブ・ファイル(SSIF:Stereoscopic Interleaved File)ディレクトリ1044が置かれている。SSIFディレクトリ1044の直下には、二種類のAVストリーム・ファイル(01000.ssif)1045、(02000.ssif)1046が置かれている。
「AVストリーム・ファイル」は、BD−ROMディスク101上に記録された映像コンテンツの実体のうち、ファイルシステムの定めるファイル形式に整えられたものをいう。ここで、映像コンテンツの実体とは一般に、映像・音声・字幕等を表す各種のストリーム・データ、すなわちエレメンタリ・ストリームが多重化されたストリーム・データを意味する。この多重化ストリーム・データは内蔵のプライマリ・ビデオ・ストリームの種類に依ってメイン・トランスポート・ストリーム(TS)とサブTSとに大別される。「メインTS」は、プライマリ・ビデオ・ストリームとしてベースビュー・ビデオ・ストリームを含む多重化ストリーム・データをいう。「ベースビュー・ビデオ・ストリーム」は、単独で再生可能であって、2D映像を表すビデオ・ストリームをいう。「サブTS」は、プライマリ・ビデオ・ストリームとしてディペンデントビュー・ビデオ・ストリームを含む多重化ストリーム・データをいう。「ディペンデントビュー・ビデオ・ストリーム」は、その再生にベースビュー・ビデオ・ストリームを必要とし、そのベースビュー・ビデオ・ストリームとの組み合わせで3D映像を表すビデオ・ストリームをいう。ディペンデントビュー・ビデオ・ストリームの種類には、ライトビュー・ビデオ・ストリーム、レフトビュー・ビデオ・ストリーム、及びデプスマップ・ストリームがある。「ライトビュー・ビデオ・ストリーム」は、ベースビュー・ビデオ・ストリームの表す2D映像がL/Rモードの再生装置によって3D映像のレフトビューとして利用されるときに、その3D映像のライトビューを表すビデオ・ストリームとして利用される。「レフトビュー・ビデオ・ストリーム」はその逆である。「デプスマップ・ストリーム」は、ベースビュー・ビデオ・ストリームの表す2D映像がデプス・モードの再生装置によって仮想的な2D画面への3D映像の射影として利用されるとき、その3D映像のデプスマップを表すストリーム・データとして利用される。特に、そのベースビュー・ビデオ・ストリームがレフトビューを表すときに利用されるデプスマップ・ストリームを「レフトビュー・デプスマップ・ストリーム」といい、そのベースビュー・ビデオ・ストリームがライトビューを表すときに利用されるデプスマップ・ストリームを「ライトビュー・デプスマップ・ストリーム」という。
AVストリーム・ファイルは内蔵の多重化ストリーム・データの種類に依って、ファイル2D、ファイル・ディペンデント(以下、ファイルDEPと略す。)、及びインターリーブ・ファイル(以下、ファイルSSと略す。)の三種類に分けられる。「ファイル2D」は、2D再生モードでの2D映像の再生に利用されるAVストリーム・ファイルであって、メインTSを含むものをいう。「ファイルDEP」は、サブTSを含むAVストリーム・ファイルをいう。「ファイルSS」は、同じ3D映像を表すメインTSとサブTSとの対を含むAVストリーム・ファイルをいう。ファイルSSは特に、そのメインTSをいずれかのファイル2Dと共有し、そのサブTSをいずれかのファイルDEPと共有する。すなわち、BD−ROMディスク101のファイルシステムでは、メインTSはファイルSSとファイル2Dとのいずれとしてもアクセス可能であり、サブTSはファイルSSとファイルDEPとのいずれとしてもアクセス可能である。このように、BD−ROMディスク101上に記録された一連のデータを異なるファイルに共有させ、いずれのファイルとしてもアクセス可能にする仕組みを「ファイルのクロスリンク」という。
図10に示されている例では、第1AVストリーム・ファイル(01000.m2ts)1041はファイル2Dであり、第2AVストリーム・ファイル(02000.m2ts)1042と第3AVストリーム・ファイル(03000.m2ts)1043とはいずれもファイルDEPである。このように、ファイル2DとファイルDEPとはSTREAMディレクトリ1040の直下に置かれる。第1AVストリーム・ファイル、すなわちファイル2D1041の含むベースビュー・ビデオ・ストリームは3D映像のレフトビューを表す。第2AVストリーム・ファイル、すなわち第1ファイルDEP1042の含むディペンデントビュー・ビデオ・ストリームはライトビュー・ビデオ・ストリームである。第3AVストリーム・ファイル、すなわち第2ファイルDEP1043の含むディペンデントビュー・ビデオ・ストリームはデプスマップ・ストリームである。
図10に示されている例では更に、第4AVストリーム・ファイル(01000.ssif)1045と第5AVストリーム・ファイル(02000.ssif)1046とはいずれもファイルSSである。このように、ファイルSSはSSIFディレクトリ1044の直下に置かれる。第4AVストリーム・ファイル、すなわち第1ファイルSS1045はファイル2D1041とはメインTS、特にベースビュー・ビデオ・ストリームを共有し、第1ファイルDEP1042とはサブTS、特にライトビュー・ビデオ・ストリームを共有する。第5AVストリーム・ファイル、すなわち第2ファイルSS1046はファイル2D1041とはメインTS、特にベースビュー・ビデオ・ストリームを共有し、第2ファイルDEP1043とはサブTS、特にデプスマップ・ストリームを共有する。
CLIPINFディレクトリ1030には、三種類のクリップ情報ファイル(01000.clpi)1031、(02000.clpi)1032、(03000.clpi)1033が置かれている。「クリップ情報ファイル」は、ファイル2DとファイルDEPとに一対一に対応付けられたファイルであって、特に各ファイルのエントリ・マップを含むものをいう。「エントリ・マップ」は、ファイル2D又はファイルDEPの表す各シーンの表示時間と、そのシーンが記録された各ファイル内のアドレスとの間の対応表である。クリップ情報ファイルのうち、ファイル2Dに対応付けられているものを「2Dクリップ情報ファイル」といい、ファイルDEPに対応付けられているものを「ディペンデントビュー・クリップ情報ファイル」という。更に、ファイルDEPがライトビュー・ビデオ・ストリームを含むとき、対応するディペンデントビュー・クリップ情報ファイルを「ライトビュー・クリップ情報ファイル」という。ファイルDEPがデプスマップ・ストリームを含むとき、対応するディペンデントビュー・クリップ情報ファイルを「デプスマップ・クリップ情報ファイル」という。図10に示されている例では、第1クリップ情報ファイル(01000.clpi)1031は2Dクリップ情報ファイルであり、ファイル2D1041に対応付けられている。第2クリップ情報ファイル(02000.clpi)1032はライトビュー・クリップ情報ファイルであり、第1ファイルDEP1042に対応付けられている。第3クリップ情報ファイル(03000.clpi)1033はデプスマップ・クリップ情報ファイルであり、第2ファイルDEP1043に対応付けられている。
PLAYLISTディレクトリ1020には三種類のプレイリスト・ファイル(00001.mpls)1021、(00002.mpls)1022、(00003.mpls)1023が置かれている。「プレイリスト・ファイル」は、AVストリーム・ファイルの再生経路、すなわちAVストリーム・ファイルの再生対象の部分とその再生順序とを規定するファイルをいう。プレイリスト・ファイルの種類には2Dプレイリスト・ファイルと3Dプレイリスト・ファイルとがある。「2Dプレイリスト・ファイル」はファイル2Dの再生経路を規定する。「3Dプレイリスト・ファイル」は、2D再生モードの再生装置に対してはファイル2Dの再生経路を規定し、3D再生モードの再生装置に対してはファイルSSの再生経路を規定する。図10に示されている例では、第1プレイリスト・ファイル(00001.mpls)1021は2Dプレイリスト・ファイルであり、ファイル2D1041の再生経路を規定する。第2プレイリスト・ファイル(00002.mpls)1022は3Dプレイリスト・ファイルであり、2D再生モードの再生装置に対してはファイル2D1041の再生経路を規定し、L/Rモードの再生装置に対しては第1ファイルSS1045の再生経路を規定する。第3プレイリスト・ファイル(00003.mpls)1023は3Dプレイリスト・ファイルであり、2D再生モードの再生装置に対してはファイル2D1041の再生経路を規定し、デプス・モードの再生装置に対しては第2ファイルSS1046の再生経路を規定する。
BDJOディレクトリ1050にはBD−Jオブジェクト・ファイル(XXXXX.bdjo)1051が置かれている。BD−Jオブジェクト・ファイル1051はBD−Jオブジェクトを一つ含む。BD−Jオブジェクトはバイトコード・プログラムであり、再生装置102に実装されたJava仮想マシンにタイトルの再生処理及びグラフィックス映像の描画処理を実行させる。BD−JオブジェクトはJava言語等のコンパイラ型言語で記述されている。BD−Jオブジェクトはアプリケーション管理テーブルと参照対象のプレイリスト・ファイルの識別情報とを含む。「アプリケーション管理テーブル」は、Java仮想マシンに実行させるべきJavaアプリケーション・プログラムとその実行時期、すなわちライフサイクルとの対応表である。「参照対象のプレイリスト・ファイルの識別情報」は、再生対象のタイトルに対応するプレイリスト・ファイルを識別するための情報である。Java仮想マシンはユーザの操作又はアプリケーション・プログラムに従って各BD−Jオブジェクトを呼び出し、そのBD−Jオブジェクトに含まれるアプリケーション管理テーブルに従ってJavaアプリケーション・プログラムを実行する。それにより、再生装置102は、再生される各タイトルの映像の進行を動的に変化させ、又は、表示装置103にグラフィックス映像をタイトルの映像とは独立に表示させる。
JARディレクトリ1060にはJARファイル(YYYYY.jar)1061が置かれている。JARファイル1061は、BD−Jオブジェクトの示すアプリケーション管理テーブルに従って実行されるべきJavaアプリケーション・プログラムの本体を一般に複数含む。「Javaアプリケーション・プログラム」は、BD−Jオブジェクトと同様、Java言語等のコンパイラ型言語で記述されたバイトコード・プログラムである。Javaアプリケーション・プログラムの種類には、Java仮想マシンにタイトルの再生処理を実行させるもの、及びJava仮想マシンにグラフィックス映像の描画処理を実行させるものが含まれる。JARファイル1061はJavaアーカイブ・ファイルであり、再生装置102に読み込まれたときにその内部のメモリで展開される。それにより、そのメモリの中にJavaアプリケーション・プログラムが格納される。
≪多重化ストリーム・データの構造≫
図11の(a)は、BD−ROMディスク101上のメインTSに多重化されたエレメンタリ・ストリームの一覧表である。メインTSはMPEG−2トランスポート・ストリーム(TS)形式のデジタル・ストリームであり、図10に示されているファイル2D1041に含まれる。図11の(a)を参照するに、メインTSはプライマリ・ビデオ・ストリーム1101とプライマリ・オーディオ・ストリーム1102A、1102Bとを含む。メインTSはその他に、プレゼンテーション・グラフィックス(PG)ストリーム1103A、1103B、インタラクティブ・グラフィックス(IG)ストリーム1104、セカンダリ・オーディオ・ストリーム1105、及びセカンダリ・ビデオ・ストリーム1106を含んでもよい。
プライマリ・ビデオ・ストリーム1101は映画の主映像を表し、セカンダリ・ビデオ・ストリーム1106は副映像を表す。ここで、主映像とは、映画の本編の映像等、コンテンツの主要な映像を意味し、例えば画面全体に表示されるものを指す。一方、副映像とは、例えば主映像の中に小さな画面で表示される映像のように、ピクチャ・イン・ピクチャ方式を利用して主映像と同時に画面に表示される映像を意味する。プライマリ・ビデオ・ストリーム1101とセカンダリ・ビデオ・ストリーム1106とはいずれもベースビュー・ビデオ・ストリームである。各ビデオ・ストリーム1101、1106は、MPEG−2、MPEG−4 AVC、又はSMPTE VC−1等の動画圧縮符号化方式で符号化されている。
プライマリ・オーディオ・ストリーム1102A、1102Bは映画の主音声を表す。ここで、二つのプライマリ・オーディオ・ストリーム1102A、1102Bの間では言語が異なる。セカンダリ・オーディオ・ストリーム1105は、対話画面の操作に伴う効果音等、主音声と重ね合わされるべき(ミキシングされるべき)副音声を表す。各オーディオ・ストリーム1102A、1102B、1105は、AC−3、ドルビー・デジタル・プラス(Dolby Digital Plus:「ドルビー・デジタル」は登録商標)、MLP(MeridianLossless Packing:登録商標)、DTS(Digital Theater System:登録商標)、DTS−HD、又はリニアPCM(Pulse Code Modulation)等の方式で符号化されている。
各PGストリーム1103A、1103Bは、グラフィックスによる字幕等、プライマリ・ビデオ・ストリーム1101の表す映像に重ねて表示されるべきグラフィックス映像を表す。二つのPGストリーム1103A、1103Bの間では、例えば字幕の言語が異なる。IGストリーム1104は、表示装置103の画面131上に対話画面を構成するためのグラフィックス・ユーザインタフェース(GUI)用のグラフィックス部品及びその配置を表す。
エレメンタリ・ストリーム1101−1106はパケット識別子(PID)を用いて識別される。PIDの割り当ては例えば次のとおりである。一つのメインTSはプライマリ・ビデオ・ストリームを一本のみ含むので、プライマリ・ビデオ・ストリーム1101には16進数値0x1011が割り当てられる。一つのメインTSに他のエレメンタリ・ストリームが種類ごとに最大32本まで多重化可能であるとき、プライマリ・オーディオ・ストリーム1102A、1102Bには0x1100から0x111Fまでのいずれかが割り当てられる。PGストリーム1103A、1103Bには0x1200から0x121Fまでのいずれかが割り当てられる。IGストリーム1104には0x1400から0x141Fまでのいずれかが割り当てられる。セカンダリ・オーディオ・ストリーム1105には0x1A00から0x1A1Fまでのいずれかが割り当てられる。セカンダリ・ビデオ・ストリーム1106には0x1B00から0x1B1Fまでのいずれかが割り当てられる。
図11の(b)は、BD−ROMディスク101上の第1サブTSに多重化されたエレメンタリ・ストリームの一覧表である。第1サブTSはMPEG−2 TS形式の多重化ストリーム・データであり、図10に示されている第1ファイルDEP1042に含まれる。図11の(b)を参照するに、第1サブTSはプライマリ・ビデオ・ストリーム1111を含む。第1サブTSはその他に、レフトビューPGストリーム1112A、1112B、ライトビューPGストリーム1113A、1113B、レフトビューIGストリーム1114、ライトビューIGストリーム1115、及びセカンダリ・ビデオ・ストリーム1116を含んでもよい。プライマリ・ビデオ・ストリーム1111はライトビュー・ビデオ・ストリームであり、メインTS内のプライマリ・ビデオ・ストリーム1101が3D映像のレフトビューを表すとき、その3D映像のライトビューを表す。レフトビューとライトビューとのPGストリームの対1112A+1113A、1112B+1113Bは、字幕等のグラフィックス映像を3D映像として表示するときにそのレフトビューとライトビューとの対を表す。レフトビューとライトビューとのIGストリームの対1114、1115は、対話画面のグラフィックス映像を3D映像として表示するときにそのレフトビューとライトビューとの対を表す。セカンダリ・ビデオ・ストリーム1116はライトビュー・ビデオ・ストリームであり、メインTS内のセカンダリ・ビデオ・ストリーム1106が3D映像のレフトビューを表すとき、その3D映像のライトビューを表す。
エレメンタリ・ストリーム1111−1116に対するPIDの割り当ては例えば次のとおりである。プライマリ・ビデオ・ストリーム1111には0x1012が割り当てられる。一つのサブTSに他のエレメンタリ・ストリームが種類別に最大32本まで多重化可能であるとき、レフトビューPGストリーム1112A、1112Bには0x1220から0x123Fまでのいずれかが割り当てられ、ライトビューPGストリーム1113A、1113Bには0x1240から0x125Fまでのいずれかが割り当てられる。レフトビューIGストリーム1114には0x1420から0x143Fまでのいずれかが割り当てられ、ライトビューIGストリーム1115には0x1440から0x145Fまでのいずれかが割り当てられる。セカンダリ・ビデオ・ストリーム1116には0x1B20から0x1B3Fまでのいずれかが割り当てられる。
図11の(c)は、BD−ROMディスク101上の第2サブTSに多重化されたエレメンタリ・ストリームの一覧表である。第2サブTSはMPEG−2 TS形式の多重化ストリーム・データであり、図10に示されている第2ファイルDEP1043に含まれる。図11の(c)を参照するに、第2サブTSはプライマリ・ビデオ・ストリーム1121を含む。第2サブTSはその他に、デプスマップPGストリーム1123A、1123B、デプスマップIGストリーム1124、及びセカンダリ・ビデオ・ストリーム1126を含んでもよい。プライマリ・ビデオ・ストリーム1121はデプスマップ・ストリームであり、メインTS内のプライマリ・ビデオ・ストリーム1101との組み合わせで3D映像を表す。デプスマップPGストリーム1123A、1123Bは、メインTS内のPGストリーム1103A、1103Bの表す2D映像が仮想的な2D画面への3D映像の射影として利用されるとき、その3D映像のデプスマップを表すPGストリームとして利用される。デプスマップIGストリーム1124は、メインTS内のIGストリーム1104の表す2D映像が仮想的な2D画面への3D映像の射影として利用されるとき、その3D映像のデプスマップを表すIGストリームとして利用される。セカンダリ・ビデオ・ストリーム1126はデプスマップ・ストリームであり、メインTS内のセカンダリ・ビデオ・ストリーム1106との組み合わせで3D映像を表す。
エレメンタリ・ストリーム1121−1126に対するPIDの割り当ては例えば次のとおりである。プライマリ・ビデオ・ストリーム1121には0x1013が割り当てられる。一つのサブTSに他のエレメンタリ・ストリームが種類別に最大32本まで多重化可能であるとき、デプスマップPGストリーム1123A、1123Bには0x1260から0x127Fまでのいずれかが割り当てられる。デプスマップIGストリーム1124には0x1460から0x147Fまでのいずれかが割り当てられる。セカンダリ・ビデオ・ストリーム1126には0x1B40から0x1B5Fまでのいずれかが割り当てられる。
図12は、多重化ストリーム・データ1200内でのTSパケットの配置を示す模式図である。このパケット構造はメインTSとサブTSとで共通である。多重化ストリーム・データ1200内では各エレメンタリ・ストリーム1201、1202、1203、1204はTSパケット1221、1222、1223、1224の列に変換されている。例えばビデオ・ストリーム1201では、まず、各フレーム1201A又は各フィールドが一つのPES(Packetized ElementaryStream)パケット1211に変換される。次に、各PESパケット1211が一般に複数のTSパケット1221に変換される。同様に、オーディオ・ストリーム1202、PGストリーム1203、及びIGストリーム1204はそれぞれ、一旦PESパケット1212、1213、1214の列に変換された後、TSパケット1222、1223、1224の列に変換される。最後に、各エレメンタリ・ストリーム1201、1202、1203、1204から得られたTSパケット1221、1222、1223、1224が一本のストリーム・データ1200に時分割で多重化される。
図13の(b)は、多重化ストリーム・データを構成するTSパケット列の形式を示す模式図である。各TSパケット1301は188バイト長のパケットである。図13の(b)を参照するに、各TSパケット1301は、TSペイロード1301Pとアダプテーション(adaptation)・フィールド(以下、ADフィールドと略す。)1301Aとの少なくともいずれか、及びTSヘッダ1301Hを含む。TSペイロード1301PとADフィールド1301Aとは、両方を合わせて184バイト長のデータ領域である。TSペイロード1301PはPESパケットの格納領域として利用される。図12に示されているPESパケット1211−1214はそれぞれ、一般に複数の部分に分割され、各部分が異なるTSペイロード1301Pに格納される。ADフィールド1301Aは、TSペイロード1301Pのデータ量が184バイトに満たないときにスタッフィング・バイト(すなわちダミー・データ)を格納するための領域である。ADフィールド1301Aはその他に、TSパケット1301が例えば後述のPCRであるときに、その情報の格納領域として利用される。TSヘッダ1301Hは4バイト長のデータ領域である。
図13の(a)は、TSヘッダ1301Hのデータ構造を示す模式図である。図13の(a)を参照するに、TSヘッダ1301Hは、TS優先度(transport_priority)1311、PID1312、及びADフィールド制御(adaptation_field_control)1313を含む。PID1312は、同じTSパケット1301内のTSペイロード1301Pに格納されたデータの属するエレメンタリ・ストリームのPIDを示す。TS優先度1311は、PID1312の示す値が共通するTSパケット群の中でのTSパケット1301の優先度を示す。ADフィールド制御1313は、TSパケット1301内でのADフィールド1301AとTSペイロード1301Pとのそれぞれの有無を示す。例えばADフィールド制御1313が“1”を示すとき、TSパケット1301はADフィールド1301Aを含まず、TSペイロード1301Pを含む。ADフィールド制御1313が“2”を示すときはその逆である。ADフィールド制御1313が“3”を示すとき、TSパケット1301はADフィールド1301AとTSペイロード1301Pとの両方を含む。
図13の(c)は、多重化ストリーム・データのTSパケット列から構成されたソースパケット列の形式を示す模式図である。図13の(c)を参照するに、各ソースパケット1302は192バイト長のパケットであり、図13の(b)に示されているTSパケット1301の一つと4バイト長のヘッダ(TP_Extra_Header)1302Hとを含む。TSパケット1301がBD−ROMディスク101に記録されるとき、そのTSパケット1301にヘッダ1302Hが付与されることによってソースパケット1302は構成される。ヘッダ1302HはATS(Arrival_Time_Stamp)を含む。「ATS」は時刻情報であり、次のように利用される:ソースパケット1302がBD−ROMディスク101から再生装置102内のシステム・ターゲット・デコーダへ送られたとき、そのソースパケット1302からTSパケット1302Pが抽出されてシステム・ターゲット・デコーダ内のPIDフィルタへ転送される。そのヘッダ1302H内のATSは、その転送が開始されるべき時刻を示す。ここで、「システム・ターゲット・デコーダ」は、多重化ストリーム・データをエレメンタリ・ストリームごとに復号する装置をいう。システム・ターゲット・デコーダと、それによるATSの利用との詳細については後述する。
図13の(d)は、一連のソースパケット1302が連続的に記録されたBD−ROMディスク101のボリューム領域1002B上のセクタ群の模式図である。図13の(d)を参照するに、一連のソースパケット1302は32個ずつ、三つの連続するセクタ1321、1322、1323に記録されている。これは、32個のソースパケットのデータ量192バイト×32=6144バイトが三つのセクタの合計サイズ2048バイト×3=6144バイトに等しいことに因る。このように、三つの連続するセクタ1321、1322、1323に記録された32個のソースパケット1302を「アラインド・ユニット(Aligned Unit)」1320という。再生装置102はBD−ROMディスク101からソースパケット1302をアラインド・ユニット1320ごとに、すなわち32個ずつ読み出す。セクタ群1321、1322、1323、…は先頭から順に32個ずつに分割され、それぞれが一つの誤り訂正符号(ECC)ブロック1330を構成している。BD−ROMドライブ121はECCブロック1330ごとに誤り訂正処理を行う。
≪PGストリームのデータ構造≫
図14は、PGストリーム1400のデータ構造を示す模式図である。図14を参照するに、PGストリーム1400は複数のデータ・エントリ#1、#2、…を含む。各データ・エントリはPGストリーム1400の表示単位(ディスプレイ・セット)を表し、再生装置102に一枚のグラフィックス・プレーンを構成させるのに必要なデータから成る。ここで、「グラフィックス・プレーン」とは、2Dグラフィックス映像を表すグラフィックス・データから生成されるプレーン・データをいう。「プレーン・データ」とは、画素データの二次元配列であって、映像フレームの解像度に等しいサイズのものをいう。一組の画素データは色座標値とα値(不透明度)との組み合わせから成る。色座標値はRGB値又はYCrCb値で表される。グラフィックス・プレーンの種類には、PGプレーン、IGプレーン、イメージ・プレーン、及びオン・スクリーン・ディスプレイ(OSD)プレーンが含まれる。PGプレーンは、メインTS内のPGストリームから生成される。IGプレーンは、メインTS内のIGストリームから生成される。イメージ・プレーンは、BD−Jオブジェクトに従って生成される。OSDプレーンは、再生装置102のファームウェアに従って生成される。
図14を更に参照するに、各データ・エントリは複数の機能セグメントを含む。それらの機能セグメントは、先頭から順に、表示制御セグメント(Presentation Control Segment:PCS)、ウィンドウ定義セグメント(Window Define Segment:WDS)、パレット定義セグメント(PalletDefine Segment:PDS)、及びオブジェクト定義セグメント(Object DefineSegment:ODS)を含む。
WDSは、グラフィックス・プレーン内の矩形領域、すなわちウィンドウを規定する。具体的には、WDSは、ウィンドウID1411、ウィンドウ位置1412、及びウィンドウ・サイズ1413を含む。ウィンドウID1411はWDSの識別情報(ID)である。ウィンドウ位置1412はグラフィックス・プレーン内でのウィンドウの位置、例えばウィンドウの左上角の座標を示す。ウィンドウ・サイズ1413はウィンドウの高さと幅とを示す。
PDSは、所定種類のカラーIDと色座標値(例えば、輝度Y、赤色差Cr、青色差Cb、不透明度α)との間の対応関係を規定する。具体的には、PDSはパレットID1421とカラー・ルックアップ・テーブル(CLUT)1422とを含む。パレットID1421はPDSのIDである。CLUT1422は、グラフィックス・オブジェクトの描画に利用される色の一覧表である。CLUT1422には256色が登録可能であり、0から255までのカラーIDが一つずつ、各色に割り当てられている。尚、カラーID=255は「無色透明」に一定に割り当てられている。
ODSは一般に複数で一つのグラフィックス・オブジェクトを表す。「グラフィックス・オブジェクト」とは、グラフィックス画像を画素コードとカラーIDとの間の対応関係で表現するデータである。グラフィックス・オブジェクトは、ランレングス符号化方式を用いて圧縮された後に分割され、各ODSに分配されている。各ODSは更にオブジェクトID、すなわちグラフィックス・オブジェクトのIDを含む。
PCSは、同じデータ・エントリに属するディスプレイ・セットの詳細を示し、特に、グラフィックス・オブジェクトを用いた画面構成を規定する。その画面構成の種類は、カット・イン/アウト(Cut−In/Out)、フェード・イン/アウト(Fade−In/Out)、色変化(Color Change)、スクロール(Scroll)、及びワイプ・イン/アウト(Wipe−In/Out)を含む。具体的には、PCSは、オブジェクト表示位置1401、クロッピング情報1402、参照ウィンドウID1403、参照パレットID1404、及び参照オブジェクトID1405を含む。オブジェクト表示位置1401は、グラフィックス・オブジェクトが表示されるべきグラフィックス・プレーン内の位置、例えばグラフィックス・オブジェクトが表示されるべき領域の左上角の座標を、WDSの規定するウィンドウ内の座標で表す。クロッピング情報1402は、クロッピング処理によってグラフィックス・オブジェクトの中から切り出されるべき矩形状の部分の範囲を示す。その範囲は例えば、左上角の座標、高さ、及び幅で規定される。その部分が、オブジェクト表示位置1401の示す位置に実際に描画される。参照ウィンドウID1403、参照パレットID1404、及び参照オブジェクトID1405はそれぞれ、グラフィックス・オブジェクトの描画処理において参照されるべきWDS、PDS、及びグラフィックス・オブジェクトのIDを示す。コンテンツ・プロバイダは、PCS内のそれらのパラメータを利用して、再生装置102に画面構成を指示する。それにより、例えば「ある字幕を徐々に消去しつつ、次の字幕を表示させる」という視覚効果を再生装置102に実現させることができる。
≪IGストリームのデータ構造≫
図12を更に参照するに、IGストリーム1204は、対話構成セグメント(Interactive Composition Segment:ICS)、PDS、及びODSを含む。PDSとODSとは、PGストリーム1203に含まれるものと同様な機能セグメントである。特に、ODSの含むグラフィックス・オブジェクトは、ボタン及びポップアップ・メニュー等、対話画面を構成するGUI用グラフィック部品を表す。ICSは、それらのグラフィックス・オブジェクトを用いた対話操作を規定する。具体的には、ICSは、ボタン及びポップアップ・メニュー等、ユーザ操作に応じて状態が変化するグラフィックス・オブジェクトのそれぞれについて取り得る状態、すなわち、ノーマル、セレクテッド、及びアクティブの各状態を規定する。ICSは更にボタン情報を含む。ボタン情報は、ユーザがボタン等に対して確定操作を行った際に再生装置の実行すべきコマンドを含む。
≪ビデオ・ストリームのデータ構造≫
図15は、ベースビュー・ビデオ・ストリーム1501とライトビュー・ビデオ・ストリーム1502とのピクチャを表示時間順に示す模式図である。図15を参照するに、ベースビュー・ビデオ・ストリーム1501はピクチャ1510、1511、1512、…、1519(以下、ベースビュー・ピクチャという。)を含み、ライトビュー・ビデオ・ストリーム1502はピクチャ1520、1521、1522、…、1529(以下、ライトビュー・ピクチャという。)を含む。各ピクチャ1510−1519、1520−1529は1フレーム又は1フィールドを表し、MPEG−2又はMPEG−4 AVC等の動画圧縮符号化方式によって圧縮されている。
上記の符号化方式による各ピクチャの圧縮には、そのピクチャの空間方向及び時間方向での冗長性が利用される。ここで、空間方向での冗長性のみを利用するピクチャの符号化を「ピクチャ内符号化」という。一方、時間方向での冗長性、すなわち、表示順序の連続する複数のピクチャ間でのデータの類似性を利用するピクチャの符号化を「ピクチャ間予測符号化」という。ピクチャ間予測符号化では、まず符号化対象のピクチャに対して、表示時間が前又は後である別のピクチャが参照ピクチャとして設定される。次に、符号化対象のピクチャとその参照ピクチャとの間で動きベクトルが検出され、それを利用して動き補償が行われる。更に、動き補償後のピクチャと符号化対象のピクチャとの間の差分値が求められ、その差分値から空間方向での冗長性が除去される。こうして、各ピクチャのデータ量が圧縮される。
図15を参照するに、ベースビュー・ピクチャ1510−1519は一般に複数のGOP1531、1532に分割されている。「GOP」は、I(Intra)ピクチャを先頭とする複数枚の連続するピクチャの列をいう。「Iピクチャ」は、ピクチャ内符号化によって圧縮されたピクチャをいう。GOPは一般に、Iピクチャの他に、P(Predictive)ピクチャとB(Bidirectionally Predivtive)ピクチャとを含む。「Pピクチャ」は、ピクチャ間予測符号化によって圧縮されたピクチャであって、表示時間がそれよりも前であるIピクチャ又は別のPピクチャが一枚、参照ピクチャとして利用されたものをいう。「Bピクチャ」は、ピクチャ間予測符号化によって圧縮されたピクチャであって、表示時間がそれよりも前又は後であるIピクチャ又はPピクチャが二枚、参照ピクチャとして利用されたものをいう。Bピクチャのうち、他のピクチャに対するピクチャ間予測符号化で参照ピクチャとして利用されるものを特に「Br(reference B)ピクチャ」という。
図15に示されている例では、各GOP1531、1532内のベースビュー・ピクチャが以下の順で圧縮される。第1GOP1531では、まず先頭のベースビュー・ピクチャがI0ピクチャ1510に圧縮される。ここで、下付の数字は、各ピクチャに表示時間順に割り振られた通し番号を示す。次に、4番目のベースビュー・ピクチャがI0ピクチャ1510を参照ピクチャとしてP3ピクチャ1513に圧縮される。ここで、図15に示されている各矢印は、先端のピクチャが後端のピクチャに対する参照ピクチャであることを示す。続いて、2、3番目のベースビュー・ピクチャがそれぞれ、I0ピクチャ1510とP3ピクチャ1513との両方を参照ピクチャとして、Br1ピクチャ1511、Br2ピクチャ1512に圧縮される。更に7番目のベースビュー・ピクチャがP3ピクチャ1513を参照ピクチャとしてP6ピクチャ1516に圧縮される。続いて、4、5番目のベースビュー・ピクチャがP3ピクチャ1513とP6ピクチャ1516とを参照ピクチャとして、それぞれ、Br4ピクチャ1514、Br5ピクチャ1515に圧縮される。同様に、第2GOP1532では、まず先頭のベースビュー・ピクチャがI7ピクチャ1517に圧縮される。次に3番目のベースビュー・ピクチャがI7ピクチャ1517を参照ピクチャとしてP9ピクチャ1519に圧縮される。続いて、2番目のベースビュー・ピクチャがI7ピクチャ1517とP9ピクチャ1519とを参照ピクチャとしてBr8ピクチャ1518に圧縮される。
ベースビュー・ビデオ・ストリーム1501では各GOP1531、1532がその先頭にIピクチャを必ず含むので、ベースビュー・ピクチャはGOPごとに復号可能である。例えば第1GOP1531では、まずI0ピクチャ1510が単独で復号される。次に、復号後のI0ピクチャ1510を利用してP3ピクチャ1513が復号される。続いて、復号後のI0ピクチャ1510とP3ピクチャ1513とを利用してBr1ピクチャ1511とBr2ピクチャ1512とが復号される。後続のピクチャ群1514、1515、…も同様に復号される。こうして、ベースビュー・ビデオ・ストリーム1501は単独で復号可能であり、更にGOP単位でのランダム・アクセスが可能である。
図15を更に参照するに、ライトビュー・ピクチャ1520−1529はピクチャ間予測符号化で圧縮されている。しかし、その符号化方法はベースビュー・ピクチャ1510−1519の符号化方法とは異なり、映像の時間方向での冗長性に加え、左右の映像間の冗長性をも利用する。具体的には、各ライトビュー・ピクチャ1520−1529の参照ピクチャが、図15に矢印で示されているように、ライトビュー・ビデオ・ストリーム1502からだけでなく、ベースビュー・ビデオ・ストリーム1501からも選択される。特に各ライトビュー・ピクチャ1520−1529と、その参照ピクチャとして選択されたベースビュー・ピクチャとは表示時刻が実質的に等しい。それらのピクチャは3D映像の同じシーンのライトビューとレフトビューとの対、すなわち視差映像を表す。このように、ライトビュー・ピクチャ1520−1529はベースビュー・ピクチャ1510−1519と一対一に対応する。特にそれらのピクチャ間ではGOP構造が共通である。
図15に示されている例では、まず第1GOP1531内の先頭のライトビュー・ピクチャがベースビュー・ビデオ・ストリーム1501内のI0ピクチャ1510を参照ピクチャとしてP0ピクチャ1520に圧縮される。それらのピクチャ1510、1520は3D映像の先頭フレームのレフトビューとライトビューとを表す。次に、4番目のライトビュー・ピクチャがP0ピクチャ1520とベースビュー・ビデオ・ストリーム1501内のP3ピクチャ1513とを参照ピクチャとしてP3ピクチャ1523に圧縮される。続いて、2番目のライトビュー・ピクチャがP0ピクチャ1520とP3ピクチャ1523とに加えて、ベースビュー・ビデオ・ストリーム1501内のBr1ピクチャ1511を参照ピクチャとしてB1ピクチャ1521に圧縮される。同様に、3番目のライトビュー・ピクチャがP0ピクチャ1520とP3ピクチャ1530とに加えて、ベースビュー・ビデオ・ストリーム1501内のBr2ピクチャ1512を参照ピクチャとしてB2ピクチャ1522に圧縮される。以降のライトビュー・ピクチャ1524−1529についても同様に、そのライトビュー・ピクチャと表示時刻が実質的に等しいベースビュー・ピクチャが参照ピクチャとして利用される。
上記のような左右の映像間の相関関係を利用した動画圧縮符号化方式としては、MVC(MultiviewVideo Coding)と呼ばれるMPEG−4 AVC/H.264の修正規格が知られている。MVCは、ISO/IEC MPEGとITU−T VCEGとの共同プロジェクトであるJVT(Joint Video Team)によって2008年7月に策定されたものであり、複数の視点から見える映像をまとめて符号化するための規格である。MVCでは映像間予測符号化に、映像の時間方向での類似性だけでなく、視点の異なる映像間の類似性も利用される。その予測符号化では、各視点から見た映像を個別に圧縮する予測符号化よりも映像の圧縮率が高い。
上記のとおり、各ライトビュー・ピクチャ1520−1529の圧縮にはベースビュー・ピクチャが参照ピクチャとして利用される。従って、ベースビュー・ビデオ・ストリーム1501とは異なり、ライトビュー・ビデオ・ストリーム1502を単独で復号することはできない。しかし、視差映像間の差異は一般にわずかであり、すなわちレフトビューとライトビューとの間の相関は高い。従って、ライトビュー・ピクチャは一般にベースビュー・ピクチャよりも圧縮率が著しく高く、すなわちデータ量が著しく小さい。
図15には示されていないが、デプスマップ・ストリームは複数のデプスマップを含む。それらのデプスマップはベースビュー・ピクチャと一対一に対応し、各ベースビュー・ピクチャの示す1フレーム又は1フィールドの2D映像に対するデプスマップを表す。各デプスマップは、ベースビュー・ピクチャと同様、MPEG−2又はMPEG−4 AVC等の動画圧縮符号化方式によって圧縮されている。特にその符号化方式ではピクチャ間予測符号化が利用される。すなわち、各デプスマップが他のデプスマップを参照ピクチャとして利用して圧縮される。デプスマップ・ストリームは、ベースビュー・ビデオ・ストリームと同様にGOP単位に分割され、各GOPがその先頭にIピクチャを必ず含む。従って、デプスマップはGOPごとに単独で復号可能である。しかし、デプスマップ自体は2D映像の各部の奥行きを画素別に表す情報でしかないので、デプスマップ・ストリームを単独で映像の再生に利用することはできない。デプスマップ・ストリームの圧縮に利用される符号化方式は、ライトビュー・ビデオ・ストリームの圧縮に利用される符号化方式と等しい。例えば、ライトビュー・ビデオ・ストリームがMVCのフォーマットで符号化されているとき、デプスマップ・ストリームもMVCのフォーマットで符号化されている。その場合、再生装置102は3D映像の再生時、符号化方式を一定に維持したまま、L/Rモードとデプス・モードとの切り換えをスムーズに実現できる。
図16は、ビデオ・ストリーム1600のデータ構造の詳細を示す模式図である。このデータ構造は、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとで実質的に共通である。図16を参照するに、ビデオ・ストリーム1600は一般に複数のビデオ・シーケンス#1、#2、…から構成されている。「ビデオ・シーケンス」は、一つのGOP1610を構成するピクチャ群1611、1612、1613、1614、…に個別にヘッダ等の付加情報を組み合わせたものである。この付加情報と各ピクチャとの組み合わせを「ビデオ・アクセスユニット(VAU)」という。すなわち、各GOP1610、1620ではピクチャごとに一つのVAU#1、#2、…が構成されている。各ピクチャはVAU単位でビデオ・ストリーム1600から読み出し可能である。
図16は更に、ベースビュー・ビデオ・ストリーム内で各ビデオ・シーケンスの先端に位置するVAU#11631の構造を示す。VAU#11631は、アクセスユニット(AU)識別コード1631A、シーケンス・ヘッダ1631B、ピクチャ・ヘッダ1631C、補足データ1631D、及び圧縮ピクチャ・データ1631Eを含む。2番目以降のVAU#2は、シーケンス・ヘッダ1631Bを含まない点を除き、VAU#11631と同じ構造である。AU識別コード1631Aは、VAU#11631の先端を示す所定の符号である。シーケンス・ヘッダ1631BはGOPヘッダともいい、VAU#11631を含むビデオ・シーケンス#1の識別番号を含む。シーケンス・ヘッダ1631Bは更に、GOP1610の全体で共通する情報、例えば、解像度、フレームレート、アスペクト比、及びビットレートを含む。ピクチャ・ヘッダ1631Cは、固有の識別番号、ビデオ・シーケンス#1の識別番号、及びピクチャの復号に必要な情報、例えば符号化方式の種類を示す。補足データ1631Dは、ピクチャの復号以外に関する付加的な情報、例えば、クローズド・キャプションを示す文字情報、GOP構造に関する情報、及びタイムコード情報を含む。補足データ1631Dは特に、復号スイッチ情報を含む(詳細は《補足》参照)。圧縮ピクチャ・データ1631Eはベースビュー・ピクチャを含む。VAU#11631はその他に、必要に応じて、パディング・データ1631F、シーケンス終端コード1631G、及びストリーム終端コード1631Hのいずれか又は全てを含んでもよい。パディング・データ1631Fはダミーデータである。そのサイズを圧縮ピクチャ・データ1631Eのサイズに合わせて調節することにより、VAU#11631のビットレートを所定値に維持することができる。シーケンス終端コード1631Gは、VAU#11631がビデオ・シーケンス#1の終端に位置することを示す。ストリーム終端コード1631Hはベースビュー・ビデオ・ストリーム1600の終端を示す。
図16はまた、ディペンデントビュー・ビデオ・ストリーム内で各ビデオ・シーケンスの先端に位置するVAU#11632の構造も示す。VAU#11632は、サブAU識別コード1632A、サブシーケンス・ヘッダ1632B、ピクチャ・ヘッダ1632C、補足データ1632D、及び圧縮ピクチャ・データ1632Eを含む。2番目以降のVAU#2は、サブシーケンス・ヘッダ1632Bを含まない点を除き、VAU#11632と同じ構造である。サブAU識別コード1632Aは、VAU#11632の先端を示す所定の符号である。サブシーケンス・ヘッダ1632Bは、VAU#11632を含むビデオ・シーケンス#1の識別番号を含む。サブシーケンス・ヘッダ1632Bは更に、GOP1610の全体で共通する情報、例えば、解像度、フレームレート、アスペクト比、及びビットレートを含む。特にそれらの値は、ベースビュー・ビデオ・ストリームの対応するGOPに対して設定された値、すなわちVAU#11631のシーケンス・ヘッダ1631Bの示す値に等しい。ピクチャ・ヘッダ1632Cは、固有の識別番号、ビデオ・シーケンス#1の識別番号、及びピクチャの復号に必要な情報、例えば符号化方式の種類を示す。補足データ1632Dはオフセット・メタデータのみを含む(詳細は後述する)。ここで、補足データの種類には、オフセット・メタデータのみを含むもの1632Dの他にも、ピクチャの復号以外に関する付加的な情報、例えば、クローズド・キャプションを示す文字情報、GOP構造に関する情報、タイムコード情報、及び復号スイッチ情報を含むものがある。従って、VAU#11632は、補足データ1632Dに加えて、他の補足データを一つ以上含んでいてもよい。圧縮ピクチャ・データ1632Eはディペンデントビュー・ピクチャを含む。VAU#11632はその他に、必要に応じて、パディング・データ1632F、シーケンス終端コード1632G、及びストリーム終端コード1632Hのいずれか又は全てを含んでもよい。パディング・データ1632Fはダミーデータである。そのサイズを圧縮ピクチャ・データ1632Eのサイズに合わせて調節することにより、VAU#11632のビットレートを所定値に維持することができる。シーケンス終端コード1632Gは、VAU#11632がビデオ・シーケンス#1の終端に位置することを示す。ストリーム終端コード1632Hはディペンデントビュー・ビデオ・ストリーム1600の終端を示す。
VAUの各部の具体的な内容はビデオ・ストリーム1600の符号化方式ごとに異なる。例えば、その符号化方式がMPEG−4 AVCであるとき、図16に示されているVAUの各部は一つのNAL(Network Abstraction Layer)ユニットから構成される。具体的には、AU識別コード1631A、シーケンス・ヘッダ1631B、ピクチャ・ヘッダ1631C、補足データ1631D、圧縮ピクチャ・データ1631E、パディング・データ1631F、シーケンス終端コード1631G、及びストリーム終端コード1631Hはそれぞれ、AUデリミタ(Access Unit Delimiter)、SPS(シーケンス・パラメータ・セット)、PPS(ピクチャ・パラメータ・セット)、SEI(Supplemental Enhancement Information)、ビュー・コンポーネント、フィラー・データ(Filler Data)、エンド・オブ・シーケンス(End of Sequence)、及びエンド・オブ・ストリーム(End of Stream)に相当する。特にVAU#11632では、オフセット・メタデータを含む補足データ1632Dは一つのNALユニットで構成され、そのNALユニットはオフセット・メタデータ以外のデータを含まない。
図17は、PESパケット列1702へのビデオ・ストリーム1701の格納方法の詳細を示す模式図である。この格納方法は、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとで共通である。図17を参照するに、実際のビデオ・ストリーム1701ではピクチャが、表示時間順ではなく符号化順に多重化されている。例えばベースビュー・ビデオ・ストリームのVAUには、図17に示されているように、先頭から順に、I0ピクチャ1710、P3ピクチャ1711、B1ピクチャ1712、B2ピクチャ1713、…が格納されている。ここで、下付の数字は、各ピクチャに表示時間順に割り振られた通し番号を示す。P3ピクチャ1711の符号化にはI0ピクチャ1710が参照ピクチャとして利用され、B1ピクチャ1712とB2ピクチャ1713との各符号化にはI0ピクチャ1710とP3ピクチャ1711との両方が参照ピクチャとして利用される。それらのVAUが一つずつ、異なるPESパケット1720、1721、1722、1723、…に格納される。各PESパケット1720、…はPESペイロード1720PとPESヘッダ1720Hとを含む。VAUはPESペイロード1720Pに格納される。一方、PESヘッダ1720Hは、同じPESパケット1720のPESペイロード1720Pに格納されたピクチャの表示時刻、すなわちPTS(PresentationTime−Stamp)、及びそのピクチャの復号時刻、すなわちDTS(Decoding Time−Stamp)を含む。
図17に示されているビデオ・ストリーム1701と同様、図11、12に示されている他のエレメンタリ・ストリームも、一連のPESパケットの各PESペイロードに格納される。更に各PESパケットのPESヘッダは、そのPESパケットのPESペイロードに格納されたデータのPTSを含む。
図18は、ベースビュー・ビデオ・ストリーム1801とディペンデントビュー・ビデオ・ストリーム1802との各ピクチャに割り当てられたPTSとDTSとの間の関係を示す模式図である。図18を参照するに、両ビデオ・ストリーム1801、1802の間では、3D映像の同じフレーム又はフィールドを表す一対のピクチャに対して、同じPTS及び同じDTSが割り当てられている。例えば3D映像の先頭のフレーム又はフィールドは、ベースビュー・ビデオ・ストリーム1801のI1ピクチャ1811とディペンデントビュー・ビデオ・ストリーム1802のP1ピクチャ1821との組み合わせから再現される。従って、それらのピクチャの対1811、1821ではPTSが等しく、かつDTSが等しい。ここで、下付の数字は、各ピクチャにDTSの順に割り振られた通し番号を示す。また、ディペンデントビュー・ビデオ・ストリーム1802がデプスマップ・ストリームであるとき、P1ピクチャ1821は、I1ピクチャ1811に対するデプスマップを表すIピクチャに置き換えられる。同様に、各ビデオ・ストリーム1801、1802の2番目のピクチャ、すなわち、P2ピクチャ1812、1822の対ではPTSが等しく、かつDTSが等しい。各ビデオ・ストリーム1801、1802の3番目のピクチャ、すなわちBr3ピクチャ1813とB3ピクチャ1823との対ではPTSとDTSとがいずれも共通である。Br4ピクチャ1814とB4ピクチャ1824との対でも同様である。
ベースビュー・ビデオ・ストリーム1801とディペンデントビュー・ビデオ・ストリーム1802との間で、PTSが等しく、かつDTSが等しいピクチャを含むVAUの対を「3D・VAU」という。図18に示されているPTSとDTSとの割り当てにより、3D再生モードの再生装置102内のデコーダにベースビュー・ビデオ・ストリーム1801とディペンデントビュー・ビデオ・ストリーム1802とを3D・VAU単位でパラレルに処理させることが容易にできる。それにより、3D映像の同じフレーム又はフィールドを表す一対のピクチャが、デコーダによって確実にパラレルに処理される。更に、各GOPの先頭の3D・VAUではシーケンス・ヘッダが、同じ解像度、同じフレームレート、及び同じアスペクト比を含む。特にそのフレームレートは、2D再生モードにおいてベースビュー・ビデオ・ストリーム1801が単独で復号されるときの値に等しい。
≪オフセット・メタデータ≫
図19は、ディペンデントビュー・ビデオ・ストリーム1900の含むオフセット・メタデータ1910のデータ構造を示す模式図である。図19を参照するに、オフセット・メタデータ1910は、各ビデオ・シーケンス(すなわち、各GOP)の先端に位置するVAU#1内の補足データ1901に格納されている。図19を参照するに、オフセット・メタデータ1910は、PTS1911、オフセット・シーケンスID1912、及びオフセット・シーケンス1913を含む。PTS1911は、VAU#1内の圧縮ピクチャ・データの表すフレーム、すなわち、各GOPの最初のフレームのPTSに等しい。
オフセット・シーケンスID1912は、オフセット・シーケンス1913に順番に割り振られた通し番号0、1、2、…、Mである。文字Mは1以上の整数を表し、その整数はオフセット・シーケンス1913の総数に等しい。ビデオ・プレーンに合成されるべきグラフィックス・プレーン及び副映像プレーンには、オフセット・シーケンスID1912が割り当てられる。それにより、各プレーン・データにオフセット・シーケンス1913が対応付けられている。ここで、「ビデオ・プレーン」とは、ビデオ・シーケンスの含むピクチャから生成されるプレーン・データ、すなわち画素データの二次元配列をいう。その配列のサイズは映像フレームの解像度に等しい。一組の画素データは、色座標値(RGB値又はYCrCb値)とα値との組み合わせから成る。
各オフセット・シーケンス1913は、フレーム番号1921とオフセット情報1922、1923との対応表である。フレーム番号1921は、一つのビデオ・シーケンス(例えば、ビデオ・シーケンス#1)の表すフレーム#1、#2、…、#Nに表示順に割り振られた通し番号1、2、…、Nである。整数Nは1以上であり、そのビデオ・シーケンスの含むフレームの総数を表す。各オフセット情報1922、1923は、一つのプレーン・データに対するオフセット制御を規定する制御情報である。
「オフセット制御」とは、グラフィックス・プレーン(又は副映像プレーン)に水平座標の左方向と右方向との各オフセットを与えて、レフトビュー・ビデオ・プレーンとライトビュー・ビデオ・プレーンとのそれぞれに合成する処理をいう。ここで、「レフトビュー/ライトビュー・ビデオ・プレーン」とは、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとの組み合わせから生成される、レフトビュー/ライトビューを表すビデオ・プレーンをいう。「グラフィックス・プレーンに水平方向のオフセットを与える」とは、そのグラフィックス・プレーン内で各画素データを水平方向に変位させることをいう。それにより、一つのグラフィックス・プレーンから、レフトビューとライトビューとを表すグラフィックス・プレーンの対が生成される。その対から再生される2Dグラフィックス映像の各部の表示位置は、元の表示位置から左右にずれている。それらの変位が視聴者に両眼視差として錯覚されることにより、レフトビューとライトビューとの対がその視聴者には一つの3Dグラフィックス映像として見える。副映像プレーンの表す映像についても同様である。
オフセットは方向と大きさとで決まる。従って、図19に示されているとおり、各オフセット情報はオフセット方向1922とオフセット値1923とを含む。オフセット方向1922は、3Dグラフィックス映像の奥行きが画面よりも手前か奥かを示す。オフセット方向1922の値に依り、元の2Dグラフィックス映像の表示位置に対するレフトビューとライトビューとの各表示位置の方向が左又は右に決まる。オフセット値1923は、元の2Dグラフィックス映像の表示位置とレフトビューとライトビューとの各表示位置との間の距離を水平方向の画素数で表す。
図20の(a)、(b)は、PGプレーン2010とIGプレーン2020とに対するオフセット制御を示す模式図である。それらのオフセット制御では、レフトビュー・ビデオ・プレーン2001とライトビュー・ビデオ・プレーン2002とのそれぞれへ二種類のグラフィックス・プレーン2010、2020が合成される。以下の説明では、PGプレーン2010の表す字幕2011を画面よりも手前に表示し、IGプレーン2020の表すボタン2021を画面よりも奥に表示する場合を想定する。
図20の(a)を参照するに、PGプレーン2010には、右方向のオフセットが与えられる。具体的には、まず、PGプレーン2010内の各画素データの位置が、レフトビュー・ビデオ・プレーン2001内の対応する画素データの位置から、オフセット値に等しい画素数SFPだけ右に(仮想的に)移動する。次に、レフトビュー・ビデオ・プレーン2001の範囲よりも右側に(仮想的に)はみ出ているPGプレーン2010の右端の帯状領域2012を「切り取る」。すなわち、その領域2012の画素データ群を破棄する。一方、PGプレーン2010の左端に透明な帯状領域2013を追加する。その帯状領域2013の幅は右端の帯状領域2012の幅、すなわちオフセット値SFPに等しい。こうして、PGプレーン2010から、レフトビューを表すPGプレーンが生成され、レフトビュー・ビデオ・プレーン2001に合成される。特に、そのレフトビューPGプレーンでは、字幕2011の表示位置が元の表示位置よりも右に、オフセット値SFPだけずれている。
一方、IGプレーン2020には、左方向のオフセットが与えられる。具体的には、まず、IGプレーン2020内の各画素データの位置が、レフトビュー・ビデオ・プレーン2001内の対応する画素データの位置から、オフセット値に等しい画素数SFIだけ左に(仮想的に)移動する。次に、レフトビュー・ビデオ・プレーン2010の範囲よりも左側に(仮想的に)はみ出ているIGプレーン2020の左端の帯状領域2022を切り取る。一方、IGプレーン2020の右端に透明な帯状領域2023を追加する。その帯状領域2023の幅は左端の帯状領域2022の幅、すなわちオフセット値SFIに等しい。こうして、IGプレーン2020から、レフトビューを表すIGプレーンが生成され、レフトビュー・ビデオ・プレーン2001に合成される。特に、そのレフトビューIGプレーンでは、ボタン2021の表示位置が元の表示位置よりも左に、オフセット値SFIだけずれている。
図20の(b)を参照するに、PGプレーン2010には左方向のオフセットが与えられ、IGプレーン2020には右方向のオフセットが与えられる。すなわち、上記の操作をPGプレーン2010とIGプレーン2020とで反対にすればよい。その結果、各プレーン・データ2010、2020から、ライトビューを表すプレーン・データが生成され、ライトビュー・ビデオ・プレーン2020に合成される。特にライトビューPGプレーンでは、字幕2011の表示位置が元の表示位置よりも左に、オフセット値SFPだけずれている。一方、ライトビューIGプレーンでは、ボタン2021の表示位置が元の表示位置よりも右に、オフセット値SFIだけずれている。
図20の(c)は、(a)、(b)に示されているグラフィックス・プレーンの表す2Dグラフィックス映像から視聴者2030に知覚される3Dグラフィックス映像を示す模式図である。それらのグラフィックス・プレーンの表す2Dグラフィックス映像が画面2040に交互に表示されるとき、視聴者2030には、図20の(c)に示されているように、字幕2031は画面2040よりも手前に見え、ボタン2032は画面2040よりも奥に見える。各3Dグラフィックス映像2031、2032と画面2040との間の距離はオフセット値SFP、SFIによって調節可能である。
図21の(a)、(b)は、オフセット・シーケンスの具体例を示すグラフである。各グラフでは、オフセット方向が画面よりも手前を示すときにオフセット値が正である。図21の(a)は、図21の(b)のうち、最初のGOPの表示期間GOP1でのグラフを拡大したものである。図21の(a)を参照するに、階段状のグラフ2101は、オフセット・シーケンスID=0のオフセット・シーケンス、すなわちオフセット・シーケンス[0]のオフセット値を示す。一方、水平なグラフ2102は、オフセット・シーケンスID=1のオフセット・シーケンス、すなわちオフセット・シーケンス[1]のオフセット値を示す。オフセット・シーケンス[0]のオフセット値2101は、最初のGOPの表示期間GOP1ではフレームFR1、FR2、FR3、…、FR15、…の順に階段状に増加している。図21の(b)を参照するに、そのオフセット値2101の階段状の増加は、2番目以降の各GOPの表示期間GOP2、GOP3、…、GOP40、…でも同様に継続される。1フレーム当たりの増加量が十分に細かいので、図21の(b)ではオフセット値2101が線形に連続的に増加しているように見える。一方、オフセット・シーケンス[1]のオフセット値2102は、最初のGOPの表示期間GOP1では負の一定値に維持されている。図21の(b)を参照するに、そのオフセット値2102は、40番目のGOPの表示期間GOP40の終了時、正の値に急増する。このようにオフセット値は不連続に変化してもよい。
図21の(c)は、図21の(a)、(b)に示されているオフセット・シーケンスに従って再現される3Dグラフィックス映像を示す模式図である。字幕の3D映像2103がオフセット・シーケンス[0]に従って表示されるとき、その3D映像2103は、画面2104の直ぐ手前から徐々に飛び出てくるように見える。一方、ボタンの3D映像2105がオフセット・シーケンス[1]に従って表示されるとき、その3D映像2105は、画面2104よりも奥に固定されている状態から突然、画面2104よりも手前に飛び出てくるように見える。このように、フレーム単位でのオフセット値の増減のパターンをオフセット・シーケンスごとに様々に変化させる。それにより、複数の3Dグラフィックス映像について、個々の奥行きの変化を多様に表現することができる。
≪AVストリーム・ファイルに含まれるその他のTSパケット≫
AVストリーム・ファイルに含まれるTSパケットの種類には、図12に示されているエレメンタリ・ストリームから変換されたもの以外に、PAT(Program Association Table)、PMT(Program MapTable)、及びPCR(Program Clock Reference)がある。PCR、PMT、及びPATは欧州デジタル放送規格で定められたものであり、本来は、一つの番組を構成するパーシャル・トランスポート・ストリームを規定する役割を持つ。PCR、PMT、及びPATを利用することで、AVストリーム・ファイルもそのパーシャル・トランスポート・ストリームと同様に規定される。具体的には、PATは、同じAVストリーム・ファイルに含まれるPMTのPIDを示す。PAT自身のPIDは0である。PMTは、同じAVストリーム・ファイルに含まれる、映像・音声・字幕等を表す各エレメンタリ・ストリームのPIDとその属性情報とを含む。PMTは更に、そのAVストリーム・ファイルに関する各種のディスクリプタ(記述子ともいう。)を含む。ディスクリプタには特に、そのAVストリーム・ファイルのコピーの許可/禁止を示すコピー・コントロール情報が含まれる。PCRは、自身に割り当てられたATSに対応させるべきSTC(System Time Clock)の値を示す情報を含む。ここで、「STC」は、再生装置102内のデコーダによって、PTS及びDTSの基準として利用されるクロックである。そのデコーダはPCRを利用して、ATCにSTCを同期させる。
図22は、PMT2210のデータ構造を示す模式図である。PMT2210は、PMTヘッダ2201、ディスクリプタ2202、及びストリーム情報2203を含む。PMTヘッダ2201は、PMT2210に含まれるデータの長さ等を示す。各ディスクリプタ2202は、PMT2210を含むAVストリーム・ファイルの全体に関するディスクリプタである。前述のコピー・コントロール情報はディスクリプタ2202の一つに含まれる。ストリーム情報2203は、AVストリーム・ファイルに含まれる各エレメンタリ・ストリームに関する情報であり、一つずつ異なるエレメンタリ・ストリームに割り当てられている。各ストリーム情報2203は、ストリーム・タイプ2231、PID2232、及びストリーム・ディスクリプタ2233を含む。ストリーム・タイプ2231は、そのエレメンタリ・ストリームの圧縮に利用されたコーデックの識別情報等を含む。PID2232は、そのエレメンタリ・ストリームのPIDを示す。ストリーム・ディスクリプタ2233は、そのエレメンタリ・ストリームの属性情報、例えばフレームレート及びアスペクト比を含む。
PCR、PMT、及びPATを利用することで、再生装置102内のデコーダにAVストリーム・ファイルを、欧州デジタル放送規格に準拠のパーシャル・トランスポート・ストリームと同様に処理させることができる。それにより、BD−ROMディスク101用の再生装置と欧州デジタル放送規格に準拠の端末装置との間の互換性を確保することができる。
≪多重化ストリーム・データのインターリーブ配置≫
3D映像のシームレス再生には、BD−ROMディスク101上にベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとをどのような物理的な配置で記録するかが重要である。ここで、「シームレス再生」とは、多重化ストリーム・データから映像と音声とを途切れさせることなく滑らかに再生することをいう。
図23は、図11に示されているメインTSと第1サブTSとのBD−ROMディスク101上での物理的な配置を示す模式図である。尚、第1サブTSに代えて第2サブTSが記録されていてもよい。図23を参照するに、各TSは複数のデータ・ブロックD[n]、B[n](n=0、1、2、3、…)に分割されてBD−ROMディスク101上に配置されている。ここで、「データ・ブロック」とは、BD−ROMディスク101上の連続領域、すなわち物理的に連続する複数のセクタに記録された一連のデータをいう。BD−ROMディスク101では物理アドレスが論理アドレスと実質的に等しいので、各データ・ブロック内ではLBNも連続している。従って、BD−ROMドライブ121は、光ピックアップにシークを行わせることなく、一つのデータ・ブロックを連続して読み出すことができる。以下、メインTSに属するデータ・ブロックB[n]を「ベースビュー・データ・ブロック」といい、サブTSに属するデータ・ブロックD[n]を「ディペンデントビュー・データ・ブロック」という。特に、第1サブTSに属するデータ・ブロックを「ライトビュー・データ・ブロック」といい、第2サブTSに属するデータ・ブロックを「デプスマップ・データ・ブロック」という。
各データ・ブロックB[n]、D[n]は、BD−ROMディスク101のファイルシステムでは、ファイル2D又はファイルDEP内の一つのエクステントとしてアクセス可能である。すなわち、各データ・ブロックの論理アドレスは、ファイル2D又はファイルDEPのファイル・エントリから知ることができる。
図23に示されている例では、ファイル2D(01000.m2ts)1041のファイル・エントリ2310がベースビュー・データ・ブロックB[n]の各サイズとその先端のLBNとを示す。従って、各ベースビュー・データ・ブロックB[n]はファイル2D1041のエクステントEXT2D[n]としてアクセス可能である。以下、ファイル2D1041に属するエクステントEXT2D[n]を「2Dエクステント」という。一方、第1ファイルDEP(02000.m2ts)1042のファイル・エントリ2320がディペンデントビュー・データ・ブロックD[n]の各サイズとその先端のLBNとを示す。従って、各ディペンデントビュー・データ・ブロックD[n]はライトビュー・データ・ブロックであり、第1ファイルDEP1042のエクステントEXT2[n]としてアクセス可能である。以下、第1ファイルDEP1042に属するエクステントEXT2[n]を「ライトビュー・エクステント」という。ディペンデントビュー・データ・ブロックD[n]がデプスマップ・データ・ブロックである場合も同様に、各デプスマップ・データ・ブロックは第2ファイルDEP(03000.m2ts)1043のエクステントとしてアクセス可能である。以下、第2ファイルDEP1043に属するエクステントを「デプスマップ・エクステント」という。更に、ライトビュー・エクステントとデプスマップ・エクステントとのように、いずれかのファイルDEPに属するエクステントを「ディペンデントビュー・エクステント」と総称する。
図23を参照するに、データ・ブロック群はBD−ROMディスク101上のトラックに沿って連続的に記録されている。更に、ベースビュー・データ・ブロックB[n]とディペンデントビュー・データ・ブロックD[n]とは一つずつ交互に配置されている。このようなデータ・ブロック群の配置を「インターリーブ配置」という。特に、インターリーブ配置で記録された一連のデータ・ブロック群を「エクステント・ブロック」という。図23には三つのエクステント・ブロック2301、2302、2303が示されている。第1エクステント・ブロック2301と第2エクステント・ブロック2302との間のように、エクステント・ブロックの間は多重化ストリーム・データ以外のデータの記録領域NAVによって分離される。また、BD−ROMディスク101が多層ディスクである場合、すなわち記録層を複数含む場合、第2エクステント・ブロック2302と第3エクステント・ブロック2303との間のように、エクステント・ブロックの間は記録層間の境界(以下、層境界という。)LBによっても分離される。こうして、一連の多重化ストリーム・データは、一般に複数のエクステント・ブロックに分割されて配置されている。その場合、再生装置102がその多重化ストリーム・データから映像をシームレスに再生するには、各エクステント・ブロックから再生される映像をシームレスに接続しなければならない。以下、そのために再生装置102が必要とする処理を「エクステント・ブロック間のシームレスな接続」という。
本発明の実施形態1によるエクステント・ブロック2301−2303ではそれぞれ、二種類のデータ・ブロックD[n]、B[n]の数が等しい。更に、(n+1)番目の隣接するデータ・ブロックの対D[n]、B[n]ではエクステントATC時間が等しい。以下、このようなデータ・ブロックの対を「エクステント・ペア」という。ここで、「ATC(Arrival Time Clock)」は、ATSの基準とされるべきクロックを意味する。「エクステントATC時間」は、一つのデータ・ブロック内のソースパケットに付与されたATSの範囲の大きさ、すなわち、そのデータ・ブロックの先頭のソースパケットと次のデータ・ブロックの先頭のソースパケットとの間でのATSの差を表す。その差は、再生装置102がそのデータ・ブロック内の全てのソースパケットをリード・バッファからシステム・ターゲット・デコーダへ転送するのに要する時間を、ATCの値で表したものに等しい。「リード・バッファ」は再生装置102内のバッファ・メモリであり、BD−ROMディスク101から読み出されたデータ・ブロックをシステム・ターゲット・デコーダへ送るまでの間、一時的に格納する。リード・バッファの詳細については後述する。図23に示されている例では、三つのエクステント・ブロック2301−2303が互いにシームレスに接続されるので、各エクステント・ペアD[n]、B[n](n=0、1、2、…)でエクステントATC時間が等しい。
各エクステント・ペアD[n]、B[n]では、先頭に位置するVAUは同じ3D・VAUに属し、特に、同じ3D映像を表すGOPの先頭のピクチャを含む。例えば図23では、各ライトビュー・データ・ブロックD[n]の先端はライトビュー・ビデオ・ストリームのPピクチャを含み、先頭のベースビュー・データ・ブロックB[n]の先端はベースビュー・ビデオ・ストリームのIピクチャを含む。そのライトビュー・ビデオ・ストリームのPピクチャは、そのベースビュー・ビデオ・ストリームのIピクチャの表す2D映像をレフトビューとするときのライトビューを表す。特にそのPピクチャは、図15に示されているように、そのIピクチャを参照ピクチャとして圧縮されている。従って、3D再生モードの再生装置102は、いずれのエクステント・ペアD[n]、B[n]からも3D映像の再生を開始できる。すなわち、飛び込み再生等、ビデオ・ストリームのランダムアクセスを要する処理が可能である。
本発明の実施形態1によるインターリーブ配置では更に、各エクステント・ペアD[n]、B[n]の中では、ディペンデントビュー・データ・ブロックD[n]がベースビュー・データ・ブロックB[n]よりも先に配置される。それは、ディペンデントビュー・データ・ブロックD[n]が一般に、ベースビュー・データ・ブロックB[n]よりもデータ量が小さい、すなわちビットレートが低いことに因る。例えば図23では、(n+1)番目のライトビュー・データ・ブロックD[n]に含まれるピクチャは、図15に示されているように、(n+1)番目のベースビュー・データ・ブロックB[n]に含まれるピクチャを参照ピクチャとして圧縮されている。従って、そのライトビュー・データ・ブロックD[n]のサイズSEXT2[n]は一般に、そのベースビュー・データ・ブロックB[n]のサイズSEXT1[n]以下である:SEXT2[n]≦SEXT1[n]。一方、デプスマップの画素当たりのデータ量、すなわち奥行き値のビット数は一般に、ベースビュー・ピクチャの画素当たりのデータ量、すなわち色座標値とα値(不透明度)とのビット数の和よりも小さい。更に図11の(a)、(c)に示されているように、メインTSは第2サブTSとは異なり、プライマリ・ビデオ・ストリームの他にもプライマリ・オーディオ・ストリーム等のエレメンタリ・ストリームを含む。従って、デプスマップ・データ・ブロックのサイズSEXT3[n]は一般に、ベースビュー・データ・ブロックB[n]のサイズSEXT1[n]以下である:SEXT3[n]≦SEXT1[n]。
[多重化ストリーム・データをデータ・ブロックに分割する意義]
再生装置102は、BD−ROMディスク101から3D映像をシームレスに再生するには、メインTSとサブTSとをパラレルに処理しなければならない。しかし、その処理に利用可能なリード・バッファの容量は一般に限られている。特に、BD−ROMディスク101からリード・バッファへ連続して読み込むことのできるデータ量には限界がある。従って、再生装置102はメインTSとサブTSとを、エクステントATC時間の等しい部分の対に分割して読み出さねばならない。
図24の(a)は、あるBD−ROMディスク上に個別に連続して記録されたメインTS2401とサブTS2402との配置を示す模式図である。再生装置102がそれらのメインTS2401とサブTS2402とをパラレルに処理するとき、図24の(a)に実線の矢印(1)−(4)で示されているように、BD−ROMドライブ121はメインTS2401とサブTS2402とを交互に、エクステントATC時間の等しい部分ずつ読み出す。そのとき、BD−ROMドライブ121は、図24の(a)に破線の矢印で示されているように、読み出し処理の途中でBD−ROMディスク上の読み出し対象領域を大きく変化させなければならない。例えば矢印(1)の示すメインTS2401の先端部分が読み出された時、BD−ROMドライブ121は光ピックアップによる読み出し動作を一旦停止し、BD−ROMディスクの回転速度を上げる。それにより、矢印(2)の示すサブTS2402の先端部分が記録されたBD−ROMディスク上のセクタを速やかに光ピックアップの位置まで移動させる。このように、光ピックアップに読み出し動作を一旦停止させて、その間に次の読み出し対象領域上へ光ピックアップを位置づけるための操作を「ジャンプ」という。図24の(a)に示されている破線の矢印は、読み出し処理の途中で必要な各ジャンプの範囲を示す。各ジャンプの期間中、光ピックアップによる読み出し処理は停止し、デコーダによる復号処理のみが進行する。図24の(a)に示されている例ではジャンプが過大であるので、読み出し処理を復号処理に間に合わせることが難しい。その結果、シームレス再生を確実に持続することが難しい。
図24の(b)は、本発明の実施形態1によるBD−ROMディスク101上に記録されたディペンデントビュー・データ・ブロックD[0]、D[1]、D[2]、…とベースビュー・データ・ブロックB[0]、B[1]、B[2]、…とのインターリーブ配置を示す模式図である。図24の(b)を参照するに、メインTSとサブTSとはそれぞれ、複数のデータ・ブロックに分割されて交互に配置されている。その場合、再生装置102は3D映像の再生時、図24の(b)に矢印(1)−(4)で示されているように、データ・ブロックD[0]、B[0]、D[1]、B[1]、…を先頭から順番に読み出す。それだけで、再生装置102はメインTSとサブTSとを交互に読み出すことをスムーズに実現できる。特にその読み出し処理ではジャンプが生じないので、3D映像のシームレス再生が確実に持続可能である。
[隣接するデータ・ブロック間でエクステントATC時間を揃える意義]
図24の(c)は、インターリーブ配置で記録されたディペンデントビュー・データ・ブロック群D[n]とベースビュー・データ・ブロック群B[n]との各エクステントATC時間の一例を示す模式図である(n=0、1、2)。図24の(c)を参照するに、各ディペンデントビュー・データ・ブロックD[n]とその直後のベースビュー・データ・ブロックB[n]との対ではエクステントATC時間が等しい。例えば先頭のデータ・ブロックの対D[0]、B[0]ではエクステントATC時間が共に1秒に等しい。従って、各データ・ブロックD[0]、B[0]が再生装置102内のリード・バッファに読み込まれたとき、その中の全てのTSパケットが、同じ1秒間でリード・バッファからシステム・ターゲット・デコーダへ送られる。同様に、2番目のデータ・ブロックの対D[1]、B[1]ではエクステントATC時間が共に0.7秒に等しいので、同じ0.7秒間で、各データ・ブロック内の全てのTSパケットがリード・バッファからシステム・ターゲット・デコーダへ送られる。
図24の(d)は、インターリーブ配置で記録されたディペンデントビュー・データ・ブロック群D[n]とベースビュー・データ・ブロック群B[n]との各エクステントATC時間の別例を示す模式図である。図24の(d)を参照するに、全てのデータ・ブロックD[n]、B[n]でエクステントATC時間が1秒に等しい。従って、各データ・ブロックD[n]、B[n]が再生装置102内のリード・バッファに読み込まれたとき、いずれのデータ・ブロックでも、同じ1秒間で全てのTSパケットがリード・バッファからシステム・ターゲット・デコーダへ送られる。
上記のとおり、ディペンデントビュー・データ・ブロックは一般に、ベースビュー・データ・ブロックよりもビデオ・ストリームの圧縮率が高い。従って、ディペンデントビュー・データ・ブロックの復号処理の速度は一般に、ベースビュー・データ・ブロックの復号処理の速度よりも低い。一方、エクステントATC時間が等しいとき、ディペンデントビュー・データ・ブロックは一般に、ベースビュー・データ・ブロックよりもデータ量が小さい。従って、図24の(c)、(d)のように、隣接するデータ・ブロック間でエクステントATC時間が等しいとき、復号対象のデータがシステム・ターゲット・デコーダに供給される速度は、そのデコーダの処理速度と均衡を保ちやすい。すなわち、システム・ターゲット・デコーダは、特に飛び込み再生においても、ベースビュー・データ・ブロックの復号処理とディペンデントビュー・データ・ブロックの復号処理とを容易に同期させることができる。
[エクステントATC時間を揃える方法]
図25は、隣接するデータ・ブロック間でエクステントATC時間を揃える方法を示す模式図である。まず、ベースビュー・データ・ブロックに格納されるソースパケット(以下、SP1と略す。)と、ディペンデントビュー・データ・ブロックに格納されるソースパケット(以下、SP2と略す。)とには、同じATC時間軸でATSが付与される。図25を参照するに、矩形2510、2520はそれぞれ、SP1#p(p=0、1、…、k、k+1、…、i、i+1)とSP2#q(q=0、1、…、m、m+1、…、j、j+1)とを表す。それらの矩形2510、2520はATCの時間軸方向で各ソースパケットのATSの順に並べられている。各矩形2510、2520の先頭の位置A1(p)、A2(q)はそのソースパケットのATSの値を表す。各矩形2510、2520の長さAT1、AT2は、3D再生装置が1個のソースパケットをリード・バッファからシステム・ターゲット・デコーダへ転送するのに要する時間を表す。
SP1#0のATSA1(0)からエクステントATC時間TEXT[n]が経過するまでの期間に、リード・バッファからシステム・ターゲット・デコーダへ転送されるSP1、すなわちSP1#0、1、…、kは、(n+1)番目のベースビュー・データ・ブロックEXT1[n]に格納される。同様に、SP1#(k+1)のATSA1(k+1)からエクステントATC時間TEXT[n+1]が経過するまでの期間に、リード・バッファからシステム・ターゲット・デコーダへ転送されるSP1、すなわちSP1#(k+1)、…、iは、(n+2)番目のベースビュー・データ・ブロックEXT1[n+1]に格納される。
一方、(n+1)番目のディペンデントビュー・データ・ブロックEXT2[n]に格納されるべきSP2は次のように選択される。まず、SP1#0のATSA1(0)とエクステントATC時間TEXT[n]との和、すなわち、SP1#(k+1)のATSA1(k+1)=A1(0)+TEXT[n]が求められる。次に、SP1#0のATSA1(0)からSP1#(k+1)のATSA1(k+1)までの期間に、リード・バッファからシステム・ターゲット・デコーダへの転送が開始されるSP2、すなわちSP2#0、1、…、mが選択される。従って、先頭のSP2、すなわちSP2#0のATSA2(0)は必ず、先頭のSP1、すなわちSP1#0のATSA1(0)以上である:A2(0)≧A1(0)。更に、最後のSP2、すなわちSP2#mのATSA2(m)は、SP1#(k+1)のATSA1(k+1)以下である:A2(m)≦A1(k+1)。ここで、SP2#mの転送完了はSP1#(k+1)のATSA1(k+1)以後であってもよい。
同様に、(n+2)番目のディペンデントビュー・データ・ブロックEXT2[n+1]に格納されるべきSP2は次のように選択される。まず、(n+3)番目のベースビュー・データ・ブロックEXT1[n+2]の先頭に位置するSP1#(i+1)のATSA1(i+1)=A1(k+1)+TEXT[n+1]が求められる。次に、SP1#(k+1)のATSA1(k+1)からSP1#(i+1)のATSA1(i+1)までの期間に、リード・バッファからシステム・ターゲット・デコーダへの転送が開始されるSP2、すなわち、SP2#(m+1)−SP2#jが選択される。従って、先頭のSP2、すなわちSP2#(m+1)のATSA2(m+1)は、先頭のSP1、すなわちSP1#(k+1)のATSA1(k+1)以上である:A2(m+1)≧A1(k+1)。更に、最後のSP2#jのATSA2(j)は、次のベースビュー・データ・ブロックEXT1[n+2]の先頭に位置するSP1#(i+1)のATSA1(i+1)以下である:A2(j)≦A1(i+1)。
[データ量の小さいデータ・ブロックを先に置く意義]
3D再生モードの再生装置102は、各エクステント・ブロックの先頭に位置するデータ・ブロックを読み出すとき、又は再生開始位置のデータ・ブロックを読み出すとき、まず、そのデータ・ブロックを全てリード・バッファに読み込む。その間、そのデータ・ブロックはシステム・ターゲット・デコーダには渡されない。その読み込みが完了した後、再生装置102はそのデータ・ブロックを次のデータ・ブロックとパラレルにシステム・ターゲット・デコーダに渡す。この処理を「プリロード」という。
プリロードの技術的意義は次のとおりである。L/Rモードでは、ディペンデントビュー・データ・ブロックの復号にベースビュー・データ・ブロックが必要である。従って、復号後のデータを出力処理まで保持するためのバッファを必要最小限の容量に維持するには、それらのデータ・ブロックをシステム・ターゲット・デコーダに同時に供給して復号させることが好ましい。デプス・モードでは、復号後のベースビュー・ピクチャとデプスマップとの対から、視差画像を表すビデオ・プレーンの対を生成する処理が必要である。従って、復号後のデータをその処理まで保持するためのバッファを必要最小限の容量に維持するには、ベースビュー・データ・ブロックとデプスマップ・データ・ブロックとをシステム・ターゲット・デコーダに同時に供給して復号させることが好ましい。それ故、プリロードにより、エクステント・ブロックの先頭又は再生開始位置のデータ・ブロックの全体を予めリード・バッファに読み込んでおく。それにより、そのデータ・ブロックと後続のデータ・ブロックとをリード・バッファからシステム・ターゲット・デコーダへ同時に転送して復号させることができる。更に、以降のエクステント・ペアもシステム・ターゲット・デコーダに同時に復号させることができる。
プリロードでは、最初に読み出されるデータ・ブロックの全体がリード・バッファに蓄積される。従って、リード・バッファには少なくとも、そのデータ・ブロックのサイズに等しい容量が要求される。ここで、リード・バッファの容量を最小限に維持するには、プリロードの対象とされるデータ・ブロックのサイズを可能な限り縮小すべきである。一方、飛び込み再生等のランダムアクセスでは、いずれのエクステント・ペアも再生開始位置に選択され得る。それ故、いずれのエクステント・ペアでも、データ量の小さい方を先に置く。それにより、リード・バッファの容量を最小限に維持することができる。
≪データ・ブロックに対するAVストリーム・ファイルのクロスリンク≫
図23に示されているデータ・ブロック群に対して、AVストリーム・ファイルのクロスリンクは次のように実現される。第1ファイルSS(01000.ssif)1045のファイル・エントリ2340は、各エクステント・ブロック2301−2303を一つのエクステントとみなして、各サイズとその先端のLBNとを示す。従って、各エクステント・ブロック2301−2303は第1ファイルSS1045の一つのエクステントEXTSS[0]、EXTSS[1]、EXTSS[2]としてアクセス可能である。以下、第1ファイルSS1045に属するエクステントEXTSS[0]、EXTSS[1]、EXTSS[2]を「エクステントSS」という。各エクステントSSEXTSS[0]、EXTSS[1]、EXTSS[2]は、ファイル2D1041とはベースビュー・データ・ブロックB[n]を共有し、第1ファイルDEP1042とはライトビュー・データ・ブロックD[n]を共有する。
≪エクステント・ブロック群に対する再生経路≫
図26は、エクステント・ブロック群2301−2303に対する2D再生モードでの再生経路2601を示す模式図である。2D再生モードの再生装置102はファイル2D1041を再生する。従って、2D再生モードでの再生経路2601が示すとおり、各エクステント・ブロック2301−2303からベースビュー・データ・ブロックB[n](n=0、1、2、…)が順番に2DエクステントEXT2D[n]として読み出される。具体的には、まず先頭のエクステント・ブロック2301から先頭のベースビュー・データ・ブロックB[0]が読み出され、その直後のライトビュー・データ・ブロックD[0]の読み出しが最初のジャンプJ2Dによってスキップされる。次に2番目のベースビュー・データ・ブロックB[1]が読み出され、その直後のデータNAVとライトビュー・データ・ブロックD[1]との読み出しが二回目のジャンプJNAVによってスキップされる。続いて、2番目以降のエクステント・ブロック2302、2303内でも同様に、ベースビュー・データ・ブロックの読み出しとジャンプとが繰り返される。
2番目のエクステント・ブロック2302と3番目のエクステント・ブロック2303との間に生じるジャンプJLYは、層境界LBを越えるロング・ジャンプである。「ロング・ジャンプ」はジャンプの中でもシーク時間の長いものの総称であり、具体的には、(i)記録層の切り換えを伴うジャンプ、及び(ii)ジャンプ距離が所定の閾値を超えるジャンプをいう。「ジャンプ距離」とは、ジャンプ期間中に読み出し操作がスキップされるBD−ROMディスク101上の領域の長さをいう。ジャンプ距離は通常、その部分のセクタ数で表される。上記(ii)の閾値は、BD−ROMの規格では例えば40000セクタである。しかし、その閾値は、BD−ROMディスクの種類と、BD−ROMドライブの読み出し処理に関する性能とに依存する。ロング・ジャンプは特に、フォーカス・ジャンプとトラック・ジャンプとを含む。「フォーカス・ジャンプ」は、記録層の切り換えに伴うジャンプであり、光ピックアップの焦点距離を変化させる処理を含む。「トラック・ジャンプ」は、光ピックアップをBD−ROMディスク101の半径方向に移動させる処理を含む。
図26は、エクステント・ブロック群2301−2303に対するL/Rモードでの再生経路2602も示す。L/Rモードの再生装置102は第1ファイルSS1045を再生する。従って、L/Rモードでの再生経路2602が示すとおり、各エクステント・ブロック2301、2302、2303が順番に、エクステントSSEXTSS[0]、EXTSS[1]、EXTSS[2]として読み出される。具体的には、まず先頭のエクステント・ブロック2301からデータ・ブロックD[0]、B[0]、D[1]、B[1]が連続して読み出され、その直後のデータNAVの読み出しが最初のジャンプJNAVによってスキップされる。次に、2番目のエクステント・ブロック2302からデータ・ブロックD[2]、…、B[3]が連続して読み出される。その直後に、記録層の切り換えに伴うロング・ジャンプJLYが生じる。続いて、3番目のエクステント・ブロック2303からデータ・ブロックD[4]、B[4]、…が連続して読み出される。
エクステント・ブロック2301−2303を第1ファイルSS1045のエクステントとして読み込むとき、再生装置102は第1ファイルSS1045のファイル・エントリ2340から各エクステントSSEXTSS[0]、EXTSS[1]、…の先端のLBNとそのサイズとを読み出してBD−ROMドライブ121に渡す。BD−ROMドライブ121はそのLBNからそのサイズのデータを連続して読み出す。これらの処理は、データ・ブロック群を第1ファイルDEP1042とファイル2D1041との各エクステントとして読み込む処理よりも、BD−ROMドライブ121の制御が次の二点(A)、(B)で簡単である:(A)再生装置102は一箇所のファイル・エントリを利用して各エクステントを順番に参照すればよい;(B)読み込み対象のエクステントの総数が実質上半減するので、BD−ROMドライブ121に渡されるべきLBNとサイズとの対の総数が少ない。但し、再生装置102はエクステントSSEXTSS[0]、EXTSS[1]、…を読み込んだ後、それぞれをライトビュー・データ・ブロックとベースビュー・データ・ブロックとに分離してデコーダに渡さなければならない。その分離処理にはクリップ情報ファイルが利用される。その詳細については後述する。
図23に示されているように、各エクステント・ブロック2301−2303の実際の読み出しでは、BD−ROMドライブ121は各データ・ブロックの後端から次のデータ・ブロックの先端までの間にゼロ・セクタ遷移J0を行う。「ゼロ・セクタ遷移」とは、二つの連続するデータ・ブロック間での光ピックアップの移動をいう。ゼロ・セクタ遷移が行われる期間(以下、ゼロ・セクタ遷移期間という。)では、光ピックアップは読み出し動作を一旦停止して待機する。その意味で、ゼロ・セクタ遷移は「ジャンプ距離が0セクタに等しいジャンプ」ともみなせる。ゼロ・セクタ遷移期間の長さ、すなわちゼロ・セクタ遷移時間は、BD−ROMディスク101の回転による光ピックアップの位置の移動時間の他に、誤り訂正処理に伴うオーバーヘッドを含んでもよい。「誤り訂正処理に伴うオーバーヘッド」とは、二つのデータ・ブロックの境界がECCブロックの境界と一致していないときに、そのECCブロックを用いた誤り訂正処理が二回行われることに起因する余分な時間をいう。誤り訂正処理には一つのECCブロックの全体が必要である。従って、一つのECCブロックが二つの連続するデータ・ブロックに共有されているとき、いずれのデータ・ブロックの読み出し処理でもそのECCブロックの全体が読み出されて誤り訂正処理に利用される。その結果、それらのデータ・ブロックを一つ読み出すごとに、そのデータ・ブロックの他に最大32セクタの余分なデータが読み出される。誤り訂正処理に伴うオーバーヘッドは、その余分なデータの読み出し時間の合計、すなわち32[セクタ]×2048[バイト]×8[ビット/バイト]×2[回]/読み出し速度で評価される。尚、各データ・ブロックはECCブロック単位で構成されてもよい。その場合、各データ・ブロックのサイズはECCブロックの整数倍に等しいので、誤り訂正処理に伴うオーバーヘッドをゼロ・セクタ遷移時間から除外することができる。
≪データ・ブロックのサイズ≫
各データ・ブロックはアラインド・ユニット単位で構成される。特に各データ・ブロックのサイズはアラインド・ユニットのサイズ(=6144バイト=約6KB)の倍数に等しい。その場合、データ・ブロック間の境界はセクタ間の境界と一致するので、BD−ROMドライブはいずれのデータ・ブロックも、その全体を確実に連続して読み出すことができる。
図23に示されているように、互いに分離された複数のエクステント・ブロック2301−2303から2D映像と3D映像とのいずれをもシームレスに再生するには、データ・ブロックとエクステント・ブロック2301−2303との各サイズは、以下の[1]、[2]で説明される条件を満たせばよい。
[1]2D再生モードでの条件
図27は、2D再生モードの再生装置102内の再生処理系統を示すブロック図である。図27を参照するに、その再生処理系統は、BD−ROMドライブ2701、リード・バッファ2702、及びシステム・ターゲット・デコーダ2703を含む。BD−ROMドライブ2701はBD−ROMディスク101から2Dエクステントを読み出し、読み出し速度RUD54でリード・バッファ2702へ転送する。リード・バッファ2702は、再生装置102に内蔵のバッファ・メモリであり、BD−ROMドライブ2701から2Dエクステントを受信して蓄積する。システム・ターゲット・デコーダ2703は、リード・バッファ2702内に蓄積された各2Dエクステントからソースパケットを平均転送速度REXT2Dで読み出して、映像データVDと音声データADとに復号する。
平均転送速度REXT2Dは、システム・ターゲット・デコーダ2703がリード・バッファ2702内の各ソースパケットからTSパケットを抽出する処理の平均速度の192/188倍に等しい。ここで、係数192/188はソースパケットとTSパケットとの間のバイト数の比に等しい。平均転送速度REXT2Dは通常、ビット/秒で表され、具体的には、ビット単位で表された2DエクステントのサイズをエクステントATC時間で割ったときの値に等しい。「ビット単位で表されたエクステントのサイズ」は、そのエクステント内のソースパケット数とソースパケット一つ当たりのビット数(=192[バイト]×8[ビット/バイト])との積に等しい。平均転送速度REXT2Dは一般に2Dエクステントごとに異なる。平均転送速度REXT2Dの最大値RMAX2Dは、ファイル2Dに対するシステム・レートRTSの192/188倍に等しい。「システム・レート」とは、システム・ターゲット・デコーダ2703によるTSパケットの処理速度の最高値を意味する。システム・レートRTSは通常、ビット/秒(bps)で表されるので、バイト/秒(Bps)で表されるメインTSの記録速度(TS recording rate)の8倍に等しい。
平均転送速度REXT2Dは以下のように評価される。まず、エクステントATC時間が次のように算定される。図25に示されている例では、(n+1)番目のベースビュー・データ・ブロックEXT1[n]のエクステントATC時間TEXT[n]は、SP1#0のATSA1(0)と、(n+2)番目のベースビュー・データ・ブロックEXT1[n+1]の先頭に位置するSP1#(k+1)のATSA1(k+1)との間の差に基づいて、次式で表される:TEXT[n]=(A1(k+1)−A1(0)+WA)/TATC。ここで、ラップ・アラウンド値WAは、SP1#0のATSA1(0)からSP1#(k+1)のATSA1(k+1)までATCがカウントされる期間中、ラップ・アラウンドが生じる度に切り捨てられたカウント値の和を表す。すなわち、ラップ・アラウンド値WAは、その期間でのラップ・アラウンドの回数と、ラップ・アラウンドが生じるカウント値との積に等しい。例えば、ATCが30ビットのカウンタでカウントされる場合、ラップ・アラウンド値WAは230に等しい。一方、定数TATCはATCの周期を表し、例えば27MHzに等しい:TATC=27×106。次に、2Dエクステントのサイズが次のように算定される。図25に示されている例では、(n+1)番目のベースビュー・データ・ブロックEXT1[n]のサイズSEXT1[n]は、そのデータ・ブロックに格納されるソースパケット、すなわちSP1#0、1、…、kの全体のデータ量192×(k+1)×8[ビット]に等しい。最後に、ベースビュー・データ・ブロックEXT1[n]のサイズSEXT1[n]をエクステントATC時間TEXT[n]で割った値が平均転送速度REXT2D[n]として評価される:REXT2D[n]=SEXT1[n]/TEXT[n]。
上記の評価においてエクステントATC時間が正確に計算されることを目的として、各2Dエクステントのサイズがソースパケット長のある一定の倍数に揃えられてもよい。更に、いずれかの2Dエクステントがその倍数よりも多くのソースパケットを含むとき、その2DエクステントのエクステントATC時間が次のように算定されてもよい:まず、ソースパケットの総数からその倍数を除き、その差にソースパケット一つ当たりの転送時間(=188×8/システム・レート)を乗じる。次に、その積に、上記の倍数に相当するエクステントATC時間を加える。その和が上記の2DエクステントのエクステントATC時間として決定される。
その他に、エクステントATC時間は次のように算定されてもよい:まず、一つの2Dエクステントについて、その先頭のソースパケットのATSから最後のソースパケットのATSまでの時間間隔を求める。次に、その時間間隔にソースパケット一つ当たりの転送時間を加える。その和がその2DエクステントのエクステントATC時間として決定される。具体的には、図25の例において、(n+1)番目のベースビュー・データ・ブロックEXT1[n]のエクステントATC時間TEXT[n]は、SP1#0のATSA1(0)と、そのデータ・ブロックEXT1[n]の後端に位置するSP1#kのATSA1(k)との間の差に基づいて、次式で表される:TEXT[n]=(A1(k)−A1(0)+WA)/TATC+188×8/RTS1。ここで、ラップ・アラウンド値WAは、SP1#0のATSA1(0)からSP1#kのATSA1(k)までATCがカウントされる期間中、ラップ・アラウンドが生じる度に切り捨てられたカウント値の和を表す。一方、上式の右辺第2項は、TSパケットのデータ長188[バイト]×8[ビット/バイト]をシステム・レートRTS2で割った値であり、一つのTSパケットをリード・バッファからシステム・ターゲット・デコーダへ転送するのに要する時間と等しい。上記のエクステントATC時間の計算には次のエクステントの参照が不要であるので、次のエクステントが存在しなくてもエクステントATC時間が算定可能である。また、次のエクステントが存在する場合でも、エクステントATC時間の計算を簡単化することができる。
読み出し速度RUD54は通常、ビット/秒で表され、平均転送速度REXT2Dの最高値RMAX2Dよりも高い値、例えば54Mbpsに設定される:RUD54>RMAX2D。それにより、BD−ROMドライブ2701がBD−ROMディスク101から一つの2Dエクステントを読み出している間、システム・ターゲット・デコーダ2703の復号処理に伴うリード・バッファ2702のアンダーフローが防止される。
図28の(a)は、2D再生モードでの動作中、リード・バッファ2702に蓄積されるデータ量DAの変化を示すグラフである。図28の(b)は、再生対象のエクステント・ブロック2810と2D再生モードでの再生経路2820との間の対応関係を示す模式図である。図28の(b)を参照するに、再生経路2820に従い、エクステント・ブロック2810内の各ベースビュー・データ・ブロックB[n](n=0、1、2、…)が一つの2DエクステントEXT2D[n]としてBD−ROMディスク101からリード・バッファ2702へ読み出される。図28の(a)を参照するに、各2DエクステントEXT2D[n]の読み出し期間PR2D[n]では、蓄積データ量DAは、読み出し速度RUD54と平均転送速度REXT2D[n]との間の差RUD54−REXT2D[n]に等しい速度で増加する。一方、二つの連続する2DエクステントEXT2D[n−1]、EXT2D[n]の間ではジャンプJ2D[n]が生じる。そのジャンプ期間PJ2D[n]では、ディペンデントビュー・データ・ブロックD[n]の読み出しがスキップされるので、BD−ROMディスク101からのデータの読み出しが停止する。従って、ジャンプ期間PJ2D[n]では蓄積データ量DAは平均転送速度REXT2D[n]で減少する。
BD−ROMドライブ2701による読み出し/転送動作は実際には、図28の(a)のグラフから示唆される連続的なものではなく、断続的なものである。それにより、各2Dエクステントの読み出し期間PR2D[n]に蓄積データ量DAがリード・バッファ2702の容量を超えること、すなわちリード・バッファ2702のオーバーフローが防止される。すなわち、図28の(a)のグラフは、実際には階段状である増減を直線的な増減として近似的に表したものである。
図28の(b)に示されているエクステント・ブロック2810から2D映像をシームレスに再生するには、次の二つの条件が満たされればよい:まず、各2DエクステントEXT2D[n]のサイズSEXT2D[n]は所定の下限以上であればよい。この下限を「最小エクステント・サイズ」という。次に、2Dエクステントの間隔は所定の上限以下であればよい。
[1−1]2Dエクステントの最小エクステント・サイズ
各ジャンプ期間PJ2D[n]ではリード・バッファ2702からシステム・ターゲット・デコーダ2703へのデータ供給を持続させて、そのデコーダ2703に連続的な出力を確保させなければならない。それには、2Dエクステントのサイズが次の条件1を満たせばよい。
各2DエクステントEXT2D[n]のサイズSEXT2D[n]は、その読み出し期間PR2D[n]から次のジャンプ期間PJ2D[n+1]にわたり、リード・バッファ2702からシステム・ターゲット・デコーダ2703へ転送されるデータ量に等しい。その場合、図28の(a)に示されているように、蓄積データ量DAはそのジャンプ期間PJ2D[n+1]の終了時、その読み出し期間PR2D[n]の開始時での量を下回らない。すなわち、各ジャンプ期間PJ2D[n]ではリード・バッファ2702からシステム・ターゲット・デコーダ2703へのデータ供給が持続し、特にリード・バッファ2702はアンダーフローを生じない。ここで、読み出し期間PR2D[n]の長さは、2DエクステントEXT2D[n]のサイズSEXT2D[n]を読み出し速度RUD54で割った値SEXT2D[n]/RUD54に等しい。従って、条件1は次のことを示す。各2DエクステントEXT2D[n]の最小エクステント・サイズは、次式(1)の右辺で表される:
式(1)では、ジャンプ時間TJUMP−2D[n]はジャンプ期間PJ2D[n]の長さであり、秒単位で表される。一方、読み出し速度RUD54と平均転送速度REXT2Dとはいずれもビット/秒で表される。従って、式(1)では平均転送速度REXT2Dを数「8」で割り、2DエクステントのサイズSEXT2D[n]の単位をビットからバイトへ変換している。すなわち、2DエクステントのサイズSEXT2D[n]はバイト単位で表される。関数CEIL()は、括弧内の数値の小数点以下の端数を切り上げる操作を意味する。
[1−2]2Dエクステントの間隔
リード・バッファ2702の容量は有限であることから、ジャンプ時間TJUMP−2D[n]の最大値は制限される。すなわち、ジャンプ期間PJ2D[n]の直前に蓄積データ量DAがリード・バッファ2702の容量一杯であっても、ジャンプ時間TJUMP−2D[n]が長すぎれば、ジャンプ期間PJ2D[n]中に蓄積データ量DAが0に達し、リード・バッファ2702のアンダーフローが生じる危険性がある。以下、BD−ROMディスク101からリード・バッファ2702へのデータ供給が途絶えている状態で蓄積データ量DAがリード・バッファ2702の容量から0に到達するまでの時間、すなわち、シームレス再生を保証できるジャンプ時間TJUMP−2Dの最大値を「最大ジャンプ時間TJUMP_MAX」という。
光ディスクの規格では通常、ジャンプ距離と最大ジャンプ時間との間の関係が光ディスクドライブのアクセス・スピード等から決められている。図29は、BD−ROMディスクに関するジャンプ距離SJUMPと最大ジャンプ時間TJUMP_MAXとの間の対応表の一例である。図29を参照するに、ジャンプ距離SJUMPはセクタ単位で表され、最大ジャンプ時間TJUMP_MAXはm秒単位で表されている。1セクタは2048バイトに等しい。ジャンプ距離SJUMPが、0セクタ、1−10000セクタ、10001−20000セクタ、20001−40000セクタ、40001セクタ−1/10ストローク、及び1/10ストローク以上の各範囲に属するとき、最大ジャンプ時間TJUMP_MAXはそれぞれ、0m秒、200m秒、300m秒、350m秒、700m秒、及び1400m秒である。ジャンプ距離SJUMPが0セクタに等しいときの最大ジャンプ時間TJUMP_MAXはゼロ・セクタ遷移時間TJUMP0に等しい。但し、図29の例ではゼロ・セクタ遷移時間TJUMP0は0m秒とみなされている。
以上のことから、式(1)に代入されるべきジャンプ時間TJUMP−2D[n]は、BD−ROMディスクの規格によってジャンプ距離別に規定された最大ジャンプ時間TJUMP_MAXである。具体的には、図29の表において、二つの連続する2DエクステントEXT2D[n]、EXT2D[n+1]の間でのジャンプ距離SJUMPに対応する最大ジャンプ時間TJUMP_MAXが、ジャンプ時間TJUMP−2D[n]として式(1)に代入される。ここで、そのジャンプ距離SJUMPは、(n+1)番目の2DエクステントEXT2D[n]の後端から(n+2)番目の2DエクステントEXT2D[n+1]の先端までのセクタ数に等しい。
二つの2DエクステントEXT2D[n]、EXT2D[n+1]間のジャンプJ2D[n]では、そのジャンプ時間TJUMP−2D[n]が最大ジャンプ時間TJUMP_MAXに制限されることから、そのジャンプ距離SJUMP、すなわち二つの2DエクステントEXT2D[n]、EXT2D[n+1]の間隔も制限される。例えばジャンプ時間TJUMP−2D[n]が最大ジャンプ時間TJUMP_MAX=700m秒以下に制限されるとき、二つの2DエクステントEXT2D[n]、EXT2D[n+1]間のジャンプ距離SJUMPは、最大で1/10ストローク(=約1.2GB)まで許される。このジャンプ距離SJUMPの最大値のように、ジャンプ時間TJUMPが最大ジャンプ時間TJUMP_MAXに等しいときでのジャンプ距離SJUMPを「最大ジャンプ距離SJUMP_MAX」という。2D映像のシームレス再生には、2Dエクステントの間隔が最大ジャンプ距離SJUMP_MAX以下であることが必要である。
各エクステント・ブロック内では2Dエクステントの間隔はディペンデントビュー・データ・ブロックのサイズに等しい。従って、そのディペンデントビュー・データ・ブロックのサイズは最大ジャンプ距離SJUMP_MAX以下に制限される。具体的には、2Dエクステント間の最大ジャンプ時間TJUMP_MAXが、図29に規定された最小値200m秒に制限される場合、ディペンデントビュー・データ・ブロックのサイズは、対応する最大ジャンプ距離SJUMP_MAX=10000セクタ(=約19.5MB)以下に制限される。
異なる記録層に配置された二つのエクステント・ブロック間をシームレスに接続するとき、先に読み出されたエクステント・ブロックの後端から、次に読み出されるエクステント・ブロックの先端まで、ロング・ジャンプが生じる。そのロング・ジャンプは、フォーカス・ジャンプ等、記録層の切り換え操作を伴う。従って、そのロング・ジャンプに要する時間は、図29の表に規定された最大ジャンプ時間TJUMP_MAXに加えて、記録層の切り換え操作に要する時間、すなわち「層切換時間」を更に含む。層切換時間は例えば350m秒である。ここで、先に読み出されたエクステント・ブロックの後端には(n+1)番目の2DエクステントEXT2D[n]が配置され、後に読み出されるエクステント・ブロックの先端には(n+2)番目の2DエクステントEXT2D[n+1]が配置されている。その場合、(n+1)番目の2DエクステントEXT2D[n]のサイズが満たすべき式(1)では、ジャンプ時間TJUMP−2D[n]は二つのパラメータTJ[n]、TL[n]の和で決まる:TJUMP−2D[n]=TJ[n]+TL[n]。第1パラメータTJ[n]は、BD−ROMディスクの規格によって、ロング・ジャンプのジャンプ距離SJUMPに対して規定された最大ジャンプ時間TJUMP_MAXを表す。その最大ジャンプ時間TJUMP_MAXは、図29の表において、(n+1)番目の2DエクステントEXT2D[n]の後端から(n+2)番目の2DエクステントEXT2D[n+1]の先端までのセクタ数に対応付けられた値に等しい。第2パラメータTL[n]は層切換時間、例えば350m秒を表す。従って、二つの2DエクステントEXT2D[n]、EXT2D[n+1]の間隔は、図29の表において、ロング・ジャンプの最大ジャンプ時間TJUMP_MAXから層切換時間を除いた値に対応する最大ジャンプ距離SJUMP_MAX以下に制限される。例えばジャンプ時間TJUMP−2D[n]が最大ジャンプ時間TJUMP_MAX=700m秒以下に制限されるとき、二つの2DエクステントEXT2D[n]、EXT2D[n+1]間の最大ジャンプ距離SJUMP_MAXは40000セクタ(=約78.1MB)である。
[2]3D再生モードでの条件
図30は、3D再生モードの再生装置102内の再生処理系統を示すブロック図である。図30を参照するに、その再生処理系統は、BD−ROMドライブ3001、スイッチ3002、一対のリード・バッファ3011、3012、及びシステム・ターゲット・デコーダ3003を含む。BD−ROMドライブ3001はBD−ROMディスク101からエクステントSSを読み出し、読み出し速度RUD72でスイッチ3002へ転送する。スイッチ3002は各エクステントSSをベースビュー・データ・ブロックとディペンデントビュー・データ・ブロックとに分離する。その分離処理の詳細については後述する。第1リード・バッファ3011及び第2リード・バッファ3012(以下、RB1及びRB2と略す。)は再生装置102に内蔵のバッファ・メモリであり、スイッチ3002によって分離された各データ・ブロックを蓄積する。RB13011はベースビュー・データ・ブロックを格納し、RB23012はディペンデントビュー・データ・ブロック格納する。システム・ターゲット・デコーダ3003は、RB13011内の各ベースビュー・データ・ブロックからはソースパケットをベースビュー転送速度REXT1で読み出し、RB23012内の各ディペンデントビュー・データ・ブロックからはソースパケットをディペンデントビュー転送速度REXT2で読み出す。システム・ターゲット・デコーダ3003は更に、読み出されたベースビュー・データ・ブロックとディペンデントビュー・データ・ブロックとの対を映像データVDと音声データADとに復号する。
ベースビュー転送速度REXT1は、システム・ターゲット・デコーダ3003がRB13011内の各ソースパケットからTSパケットを抽出する処理の平均速度の192/188倍に等しい。ベースビュー転送速度REXT1の最高値RMAX1は、ファイル2Dに対するシステム・レートRTS1の192/188倍に等しい:RMAX1=RTS1×192/188。そのシステム・レートRTS1は通常、ビット/秒(bps)で表されるので、バイト/秒(Bps)で表されるメインTSの記録速度の8倍に等しい。ディペンデントビュー転送速度REXT2は、システム・ターゲット・デコーダ3003がRB23012内の各ソースパケットからTSパケットを抽出する処理の平均速度の192/188倍に等しい。ディペンデントビュー転送速度REXT2の最高値RMAX2は、ファイルDEPに対するシステム・レートRTS2の192/188倍と等しい:RMAX2=RTS2×192/188。そのシステム・レートRTS2は通常、ビット/秒(bps)で表されるので、バイト/秒(Bps)で表されるメインTSの記録速度の8倍に等しい。各転送速度REXT1、REXT2は通常、ビット/秒で表され、具体的には、ビット単位で表された各データ・ブロックのサイズをエクステントATC時間で割ったときの値に等しい。エクステントATC時間は、そのデータ・ブロック内のソースパケットを全て、RB13011又はRB23012からシステム・ターゲット・デコーダ3003へ転送するのに要する時間に等しい。ベースビュー転送速度REXT1とディペンデントビュー転送速度REXT2とは、2Dエクステントの平均転送速度REXT2Dと同様に、データ・ブロックのサイズとエクステントATC時間との比で評価される:REXT1[・]=SEXT1[・]/TEXT[・]、REXT2[・]=SPEXT2[・]/TEXT[・]。
読み出し速度RUD72は通常、ビット/秒で表され、いずれの転送速度REXT1、REXT2の最高値RMAX1、RMAX2よりも高い値、例えば72Mbpsに設定される:RUD72>RMAX1、RUD72>RMAX2。それにより、BD−ROMドライブ3001によってBD−ROMディスク101から一つのエクステントSSを読み出している間、システム・ターゲット・デコーダ3003の復号処理に伴うRB13011とRB23012とのアンダーフローが防止される。
[2−1]エクステント・ブロック内でのシームレス接続
図31の(a)、(b)は、一つのエクステント・ブロックから3D映像がシームレスに再生されるとき、RB13011、RB23012に蓄積されるデータ量DA1、DA2の変化を示すグラフである。図31の(c)は、そのエクステント・ブロック3110と3D再生モードでの再生経路3120との間の対応関係を示す模式図である。図30の(c)を参照するに、再生経路3120に従い、エクステント・ブロック3110の全体が一つのエクステントSSとして一括して読み出される。その後、スイッチ3002によってそのエクステントSSからディペンデントビュー・データ・ブロックD[k]とベースビュー・データ・ブロックB[k]とが分離される(k=…、n、n+1、n+2、…)。
BD−ROMドライブ3001による読み出し/転送動作は実際には、図31の(a)、(b)の各グラフから示唆される連続的なものではなく、断続的なものである。それにより、各データ・ブロックD[k]、B[k]の読み出し期間PRD[k]、PRB[k]では、RB13011、RB23012のオーバーフローが防止される。すなわち、図31の(a)、(b)の各グラフは、実際には階段状である増減を直線的な増減として近似的に表したものである。
図31の(a)、(b)を参照するに、(n+1)番目のディペンデントビュー・データ・ブロックD[n]の読み出し期間PRD[n]では、RB23012の蓄積データ量DA2は、読み出し速度RUD72とディペンデントビュー転送速度REXT2[n]との間の差RUD72−REXT2[n]に等しい速度で増加し、RB13011の蓄積データ量DA1はベースビュー転送速度REXT1[n−1]で減少する。図31の(c)を参照するに、(n+1)番目のディペンデントビュー・データ・ブロックD[n]から(n+1)番目のベースビュー・データ・ブロックB[n]まではゼロ・セクタ遷移J0[2n]が生じる。図31の(a)、(b)に示されているように、ゼロ・セクタ遷移期間PJ0[n]では、RB13011の蓄積データ量DA1はベースビュー転送速度REXT1[n−1]で減少し続け、RB23012の蓄積データ量DA2はディペンデントビュー転送速度REXT2[n]で減少する。
図31の(a)、(b)を更に参照するに、(n+1)番目のベースビュー・データ・ブロックB[n]の読み出し期間PRB[n]では、RB13011の蓄積データ量DA1は、読み出し速度RUD72とベースビュー転送速度REXT1[n]との間の差RUD72−REXT1[n]に等しい速度で増加する。一方、RB23012の蓄積データ量DA2は、ディペンデントビュー転送速度REXT2[n]で減少し続ける。図31の(c)を更に参照するに、そのベースビュー・データ・ブロックB[n]から次のディペンデントビュー・データ・ブロックD[n+1]まではゼロ・セクタ遷移J0[2n+1]が生じる。図31の(a)、(b)に示されているように、ゼロ・セクタ遷移期間PJ0[2n+1]では、RB13011の蓄積データ量DA1はベースビュー転送速度REXT1[n]で減少し、RB23012の蓄積データ量DA2はディペンデントビュー転送速度REXT2[n]で減少し続ける。
一つのエクステント・ブロック2310から3D映像をシームレスに再生するには、そのエクステント・ブロックに属するデータ・ブロックB[n]、D[n]の各サイズは、以下に説明される条件2、3を満たせばよい。
(n+1)番目のベースビュー・データ・ブロックB[n]のサイズSEXT1[n]は少なくとも、その読み出し期間PRB[n]から次のベースビュー・データ・ブロックB[n+1]の読み出し期間PRB[n+1]の直前までに、RB13011からシステム・ターゲット・デコーダ3003へ転送されるデータ量に等しい。その場合、図31の(a)に示されているように、次のベースビュー・データ・ブロックB[n+1]の読み出し期間PRB[n+1]の直前では、RB13011の蓄積データ量DA1が、(n+1)番目のベースビュー・データ・ブロックB[n]の読み出し期間PRB[n]の直前での量を下回らない。ここで、(n+1)番目のベースビュー・データ・ブロックB[n]の読み出し期間PRB[n]の長さは、そのベースビュー・データ・ブロックB[n]のサイズSEXT1[n]を読み出し速度RUD72で割った値SEXT1[n]/RUD72に等しい。一方、(n+2)番目のディペンデントビュー・データ・ブロックD[n+1]の読み出し期間PRD[n+1]の長さは、そのディペンデントビュー・データ・ブロックD[n+1]のサイズSEXT2[n+1]を読み出し速度RUD72で割った値SEXT2[n+1]/RUD72に等しい。従って、条件2は次のことを示す。そのベースビュー・データ・ブロックB[n]の最小エクステント・サイズは、次式(2)の右辺で表される:
(n+1)番目のディペンデントビュー・データ・ブロックD[n]のサイズSEXT2[n]は少なくとも、その読み出し期間PRD[n]から次のディペンデントビュー・データ・ブロックD[n+1]の読み出し期間PRD[n+1]の直前までに、RB23012からシステム・ターゲット・デコーダ3003へ転送されるデータ量に等しい。その場合、図31の(b)に示されているように、次のディペンデントビュー・データ・ブロックD[n+1]の読み出し期間PRD[n+1]の直前ではRB23012の蓄積データ量DA2が(n+1)番目のディペンデントビュー・データ・ブロックD[n]の読み出し期間PRD[n]の直前での量を下回らない。ここで、(n+1)番目のディペンデントビュー・データ・ブロックD[n]の読み出し期間PRD[n]の長さは、そのディペンデントビュー・データ・ブロックD[n]のサイズSEXT2[n]を読み出し速度RUD72で割った値SEXT2[n]/RUD72に等しい。従って、条件3は次のことを示す。そのディペンデントビュー・データ・ブロックD[n]の最小エクステント・サイズは、次式(3)の右辺で表される:
[2−2]エクステント・ブロック間のシームレス接続
図23に示されているように、エクステント・ブロック2301−2303の間は一般に、他のデータの記録領域NAV又は層境界LBによって分離されている。そのように分離されたエクステント・ブロック間をシームレスに接続するには、エクステント・ブロックを一つ読み出す間に、RB13011、RB23012のそれぞれに十分なデータ量が蓄積されるようにすればよい。具体的には、RB13011、RB23012の各蓄積データ量DA1、DA2が、図31の(a)、(b)に示されているグラフとは異なり、(n+2)番目の各データ・ブロックB[n+1]、D[n+1]の読み出し期間PRB[n+1]、PRD[n+1]の直前で、(n+1)番目の各データ・ブロックB[n]、D[n]の読み出し期間PRB[n]、PRD[n]の直前での量よりも少し多く残るようにすればよい。例えば、各データ・ブロックのサイズを、式(2)、(3)の各右辺で与えられる最小エクステント・サイズよりも少し大きくすればよい。それにより、一つのエクステント・ブロックを後端まで読み込んだ時点で、RB13011、RB23012のそれぞれに十分なデータ量が蓄積されるようにすることができる。
≪クリップ情報ファイル≫
図32は、第1クリップ情報ファイル(01000.clpi)、すなわち2Dクリップ情報ファイル1031のデータ構造を示す模式図である。ディペンデントビュー・クリップ情報ファイル(02000.clpi、03000.clpi)1032、1033も同様なデータ構造を持つ。以下では、まず、クリップ情報ファイル全般に共通するデータ構造を2Dクリップ情報ファイル1031のデータ構造を例に説明する。その後、2Dクリップ情報ファイルとディペンデントビュー・クリップ情報ファイルとのデータ構造上の相違点について説明する。
図32を参照するに、2Dクリップ情報ファイル1031は、クリップ情報3210、ストリーム属性情報3220、エントリ・マップ3230、及び3Dメタデータ3240を含む。3Dメタデータ3240はエクステント起点3242を含む。
クリップ情報3210は、図32に示されているように、システム・レート3211、再生開始時刻3212、及び再生終了時刻3213を含む。システム・レート3211は、ファイル2D(01000.m2ts)1041に対するシステム・レートRTSを規定する。ここで、図27に示されているように、2D再生モードの再生装置102は、ファイル2D1041に属する“TSパケット”を、リード・バッファ2702からシステム・ターゲット・デコーダ2703へ転送する。従って、ファイル2D1041では、TSパケットの転送速度がシステム・レートRTS以下に抑えられるようにソースパケットのATSの間隔が設定されている。再生開始時刻3212は、ファイル2D1041の先頭のVAUに割り当てられたPTS、例えば先頭の映像フレームのPTSを示す。再生終了時刻3212は、ファイル2D1041の後端のVAUに割り当てられたPTSから更に所定量遅れたSTCの値、例えば最後の映像フレームのPTSに1フレーム当たりの再生時間を加えた値を示す。
ストリーム属性情報3220は、図32に示されているように、ファイル2D1041に含まれる各エレメンタリ・ストリームのPID3221とその属性情報3222との間の対応表である。属性情報3222は、ビデオ・ストリーム、オーディオ・ストリーム、PGストリーム、及びIGストリームのそれぞれで異なる。例えばプライマリ・ビデオ・ストリームのPID0x1011に対応付けられた属性情報は、そのビデオ・ストリームの圧縮に利用されたコーデックの種類、そのビデオ・ストリームを構成する各ピクチャの解像度、アスペクト比、及びフレームレートを含む。一方、プライマリ・オーディオ・ストリームのPID0x1100に対応付けられた属性情報は、そのオーディオ・ストリームの圧縮に利用されたコーデックの種類、そのオーディオ・ストリームに含まれるチャンネル数、言語、及びサンプリング周波数を含む。属性情報3222は再生装置102により、デコーダの初期化に利用される。
[エントリ・マップ]
図33の(a)は、エントリ・マップ3230のデータ構造を示す模式図である。図33の(a)を参照するに、エントリ・マップ3230はテーブル3300を含む。テーブル3300は、メインTSに多重化されたビデオ・ストリームと同数であり、各ビデオ・ストリームに一つずつ割り当てられている。図33の(a)では、各テーブル3300は割り当て先のビデオ・ストリームのPIDで区別されている。各テーブル3300はエントリ・マップ・ヘッダ3301とエントリ・ポイント3302とを含む。エントリ・マップ・ヘッダ3301は、そのテーブル3300に対応付けられたPIDと、そのテーブル3300に含まれるエントリ・ポイント3302の総数とを含む。エントリ・ポイント3302は、PTS3303とソースパケット番号(SPN)3304との対を一つずつ、異なるエントリ・ポイントID(EP_ID)3305に対応付ける。PTS3303は、エントリ・マップ・ヘッダ3301の示すPIDのビデオ・ストリームに含まれるいずれかのIピクチャのPTSに等しい。SPN3304は、そのIピクチャが格納されたソースパケット群の先頭のSPNに等しい。ここで、「SPN」とは、一つのAVストリーム・ファイルに属するソースパケット群に、先頭から順に割り当てられた通し番号をいう。SPNは、そのAVストリーム・ファイル内での各ソースパケットのアドレスとして利用される。2Dクリップ情報ファイル1031内のエントリ・マップ3230において、SPNは、ファイル2D241に属するソースパケット群、すなわちメインTSを格納しているソースパケット群に割り当てられた番号を意味する。従って、エントリ・ポイント3302は、ファイル2D1041に含まれる各IピクチャのPTSとアドレス、すなわちSPNとの間の対応関係を表す。
エントリ・ポイント3302は、ファイル2D1041内の全てのIピクチャに対して設定されていなくてもよい。但し、IピクチャがGOPの先頭に位置し、かつ、そのIピクチャの先頭を含むTSパケットが2Dエクステントの先頭に位置するときは、そのIピクチャにはエントリ・ポイント3302が設定されなければならない。
図33の(b)は、ファイル2D1041に属するソースパケット群3310のうち、エントリ・マップ3230によって各EP_ID3305に対応付けられているものを示す模式図である。図33の(c)は、そのソースパケット群3310に対応するBD−ROMディスク101上のデータ・ブロック群D[n]、B[n](n=0、1、2、3、…)を示す模式図である。再生装置102はファイル2D1041から2D映像を再生する際にエントリ・マップ3230を利用して、任意のシーンを表すフレームのPTSから、そのフレームを含むソースパケットのSPNを特定する。具体的には、再生開始位置として特定のエントリ・ポイントのPTS、例えばPTS=360000が指定されたとき、再生装置102はまず、エントリ・マップ3230から、そのPTSに対応付けられたSPN=3200を検索する。再生装置102は次に、そのSPNとソースパケット一つ当たりのデータ量192バイトとの積を求め、更に、その積をセクタ一つ当たりのデータ量2048バイトで割ったときの商、SPN×192/2048を求める。図13の(c)、(d)から理解されるとおり、その商は、メインTSのうち、そのSPNが割り当てられたソースパケットよりも前の部分が記録されたセクタの総数に等しい。図33の(b)に示されている例では、その商、3200×192/2048=300は、0から3199までのSPNが割り当てられたソースパケット群3311が記録されたセクタの総数に等しい。再生装置102は続いて、ファイル2D1041のファイル・エントリを参照し、2Dエクステント群が記録されたセクタ群の先頭から数えて(上記の総数+1)番目のセクタのLBNを特定する。図33の(c)に示されている例では、2DエクステントEXT2D[0]、EXT2D[1]、EXT2D[2]、…としてアクセス可能なベースビュー・データ・ブロックB[0]、B[1]、B[2]、…が記録されたセクタ群のうち、先頭から数えて301番目のセクタのLBNが特定される。再生装置102はそのLBNをBD−ROMドライブに指定する。それにより、そのLBNのセクタから順にベースビュー・データ・ブロック群がアラインド・ユニット単位で読み出される。再生装置102は更に、最初に読み出されたアラインド・ユニットから、再生開始位置のエントリ・ポイントの示すソースパケットを選択し、それらからIピクチャを抽出して復号する。それ以降、後続のピクチャは、先に復号されたピクチャを利用して順次復号される。こうして、再生装置102はファイル2D1041から特定のPTS以降の2D映像を再生できる。
エントリ・マップ3230は更に、早送り再生及び巻戻し再生等の特殊再生の効率的な処理に有利である。例えば2D再生モードの再生装置102は、まずエントリ・マップ3230を参照して、再生開始位置、例えばPTS=360000以降のPTSを含むエントリ・ポイント、EP_ID=2、3、…からSPN=3200、4800、…を順番に読み出す。再生装置102は次にファイル2D1041のファイル・エントリを利用して、各SPNに対応するセクタのLBNを特定する。再生装置102は続いて、各LBNをBD−ROMドライブに指定する。それにより、各LBNのセクタからアラインド・ユニットが読み出される。再生装置102は更に各アラインド・ユニットから、各エントリ・ポイントの示すソースパケットを選択し、それらからIピクチャを抽出して復号する。こうして、再生装置102は2Dエクステント群EXT2D[n]自体を解析することなく、ファイル2D1041からIピクチャを選択的に再生できる。
[エクステント起点]
図34の(a)は、エクステント起点3242のデータ構造を示す模式図である。図34の(a)を参照するに、「エクステント起点(Extent_Start_Point)」3242はベースビュー・エクステントID(EXT1_ID)3411とSPN3412とを含む。EXT1_ID3411は、第1ファイルSS(01000.ssif)1045に属する各ベースビュー・データ・ブロックに、先頭から順に割り当てられた通し番号である。SPN3412は各EXT1_ID3411に一つずつ割り当てられ、そのEXT1_ID3411で識別されるベースビュー・データ・ブロックの先端に位置するソースパケットのSPNに等しい。ここで、そのSPNは、第1ファイルSS1045に属するベースビュー・データ・ブロック群に含まれる各ソースパケットに、先頭から順に割り当てられた通し番号である。
図23に示されているエクステント・ブロック2301−2303では、各ベースビュー・データ・ブロックB[0]、B[1]、B[2]、…はファイル2D1041と第1ファイルSS1045とに共有される。しかし、記録層間の境界等、ロング・ジャンプの必要な箇所に配置されたデータ・ブロック群は一般に、ファイル2D1041又は第1ファイルSS1045のいずれかにのみ属するベースビュー・データ・ブロックを含む。従って、エクステント起点3242の示すSPN3412は、ファイル2D1041に属する2Dエクステントの先端に位置するソースパケットのSPNとは一般に異なる。
図34の(b)は、第2クリップ情報ファイル(02000.clpi)、すなわちディペンデントビュー・クリップ情報ファイル1032に含まれるエクステント起点3420のデータ構造を示す模式図である。図34の(b)を参照するに、エクステント起点3420は、ディペンデントビュー・エクステントID(EXT2_ID)3421とSPN3422とを含む。EXT2_ID3421は、第1ファイルSS1045に属する各ディペンデントビュー・データ・ブロックに先頭から順に割り当てられた通し番号である。SPN3422は各EXT2_ID3421に一つずつ割り当てられ、そのEXT2_ID3421で識別されるディペンデントビュー・データ・ブロックの先端に位置するソースパケットのSPNに等しい。ここで、そのSPNは、第1ファイルSS1045に属するディペンデントビュー・データ・ブロック群に含まれる各ソースパケットに、先頭から順に割り当てられた通し番号である。
図34の(d)は、第1ファイルDEP(02000.m2ts)1042に属するディペンデントビュー・エクステントEXT2[0]、EXT2[1]、…と、エクステント起点3420の示すSPN3422との間の対応関係を表す模式図である。図23に示されているように、ディペンデントビュー・データ・ブロックは第1ファイルDEP1042と第1ファイルSS1045とに共有される。従って、図34の(d)に示されているように、エクステント起点3420の示す各SPN3422は、各ライトビュー・エクステントEXT2[0]、EXT2[1]、…の先端に位置するソースパケットのSPNに等しい。
2Dクリップ情報ファイル1031のエクステント起点3242と、ディペンデントビュー・クリップ情報ファイル1032のエクステント起点3420とは、以下に説明するように、第1ファイルSS1045から3D映像が再生されるとき、各エクステントSSに含まれるデータ・ブロックの境界の検出に利用される。
図34の(e)は、第1ファイルSS1045に属するエクステントSSEXTSS[0]とBD−ROMディスク101上のエクステント・ブロックとの間の対応関係を示す模式図である。図34の(e)を参照するに、そのエクステント・ブロックはインターリーブ配置のデータ・ブロック群D[n]、B[n](n=0、1、2、…)を含む。尚、以下の説明はその他の配置でも同様に成立する。そのエクステント・ブロックは一つのエクステントSSEXTSS[0]としてアクセス可能である。更に、そのエクステントSSEXTSS[0]の中で、(n+1)番目のベースビュー・データ・ブロックB[n]に含まれるソースパケットの数は、エクステント起点3242において、EXT1_ID=n+1、nのそれぞれに対応するSPN間の差A(n+1)−Anに等しい。ここで、A0=0とする。一方、ディペンデントビュー・データ・ブロックD[n+1]に含まれるソースパケットの数は、エクステント起点3420において、EXT2_ID=n+1、nのそれぞれに対応するSPN間の差B(n+1)−Bnに等しい。ここで、B0=0とする。
3D再生モードの再生装置102は、第1ファイルSS1045から3D映像を再生するとき、各クリップ情報ファイル1031、1032のエントリ・マップとエクステント起点3242、3420とを利用する。それにより、再生装置102は、任意のシーンのライトビューを表すフレームのPTSから、そのフレームの構成に必要なディペンデントビュー・データ・ブロックが記録されたセクタのLBNを特定する。具体的には、再生装置102はまず、例えばディペンデントビュー・クリップ情報ファイル1032のエントリ・マップから、そのPTSに対応付けられたSPNを検索する。仮に、そのSPNの示すソースパケットが、第1ファイルDEP1042の3番目のディペンデントビュー・エクステントEXT2[2]、すなわちディペンデントビュー・データ・ブロックD[2]に含まれる場合を想定する。再生装置102は次に、ディペンデントビュー・クリップ情報ファイル1032のエクステント起点3420の示すSPN3422の中から、目標のSPN以下で最大のもの“B2”と、それに対応するEXT2_ID=“2”とを検索する。再生装置102は続いて、2Dクリップ情報ファイル1031のエクステント起点3242から、そのEXT2_ID=“2”と等しいEXT1_IDに対応するSPN3412の値“A2”を検索する。再生装置102は更に、検索されたSPNの和B2+A2を求める。図34の(e)から理解されるように、その和B2+A2は、エクステントSSEXTSS[0]の中で、3番目のディペンデントビュー・データ・ブロックD[2]よりも前に配置されたソースパケットの総数に等しい。従って、その和B2+A2とソースパケット一つ当たりのデータ量192バイトとの積をセクタ一つ当たりのデータ量2048バイトで割ったときの商(B2+A2)×192/2048は、エクステントSSEXTSS[0]の先頭から3番目のディペンデントビュー・データ・ブロックD[2]の直前までのセクタ数に等しい。この商を利用して第1ファイルSS1045のファイル・エントリを参照すれば、そのディペンデントビュー・データ・ブロックD[2]の先端が記録されたセクタのLBNを特定することができる。
再生装置102は、上記のようにLBNを特定した後、そのLBNをBD−ROMドライブに指定する。それにより、そのLBNのセクタ以降に記録されたエクステントSSEXTSS[0]の部分、すなわち3番目のライトビュー・データ・ブロックD[2]以降のデータ・ブロック群D[2]、B[2]、D[3]、B[3]、…がアラインド・ユニット単位で読み出される。
再生装置102は更にエクステント起点3242、3420を利用して、読み出されたエクステントSSからディペンデントビュー・データ・ブロックとベースビュー・データ・ブロックとを交互に抽出する。例えば、図34の(e)に示されているエクステントSSEXTSS[0]からデータ・ブロック群D[n]、B[n](n=0、1、2、…)が順番に読み出されるときを想定する。再生装置102はまず、エクステントSSEXTSS[0]の先頭からB1個のソースパケットを最初のディペンデントビュー・データ・ブロックD[0]として抽出する。再生装置102は次に、B1番目のソースパケットと、それに続く(A1−1)個のソースパケットとの計A1個のソースパケットを最初のベースビュー・データ・ブロックB[0]として抽出する。再生装置102は続いて、(B1+A1)番目のソースパケットと、それに続く(B2−B1−1)個のソースパケットとの計(B2−B1)個のソースパケットを2番目のディペンデントビュー・データ・ブロックD[1]として抽出する。再生装置102は更に、(A1+B2)番目のソースパケットと、それに続く(A2−A1−1)個のソースパケットとの計(A2−A1)個のソースパケットを2番目のベースビュー・データ・ブロックB[1]として抽出する。それ以降も再生装置102は同様に、読み出されるソースパケットの数からエクステントSS内のデータ・ブロック間の境界を検出して、ディペンデントビューとベースビューとの各データ・ブロックを交互に抽出する。抽出されたベースビュー・データ・ブロックとディペンデントビュー・データ・ブロックとはパラレルにシステム・ターゲット・デコーダに渡されて復号される。
こうして、3D再生モードの再生装置102は第1ファイルSS1045から特定のPTS以降の3D映像を再生できる。その結果、再生装置102は、BD−ROMドライブの制御に関する上記の利点(A)、(B)を実際に享受できる。
≪ファイル・ベース≫
図34の(c)は、3D再生モードの再生装置102によって第1ファイルSS1045から抽出されたベースビュー・データ・ブロックB[0]、B[1]、B[2]、…を表す模式図である。図34の(c)を参照するに、それらのベースビュー・データ・ブロックB[n](n=0、1、2、…)に含まれるソースパケット群に、先頭から順にSPNを割り当てたとき、各ベースビュー・データ・ブロックB[n]の先端に位置するソースパケットのSPNは、エクステント起点3242の示すSPN3412に等しい。それらのベースビュー・データ・ブロック群B[n]のように、エクステント起点を利用して一つのファイルSSから抽出されるベースビュー・データ・ブロック群を「ファイル・ベース」という。更に、ファイル・ベースに含まれるベースビュー・データ・ブロックを「ベースビュー・エクステント」という。図34の(e)に示されているように、各ベースビュー・エクステントEXT1[0]、EXT1[1]、…は、クリップ情報ファイル内のエクステント起点3242、3420を利用して参照される。
ベースビュー・エクステントEXT1[n]は2DエクステントEXT2D[n]とベースビュー・データ・ブロックB[n]を共有する。従って、ファイル・ベースはファイル2Dと同じメインTSを含む。しかし、ベースビュー・エクステントEXT1[n]は2DエクステントEXT2D[n]とは異なり、いずれのファイルのファイル・エントリによっても参照されない。上記のとおり、ベースビュー・エクステントEXT1[n]は、クリップ情報ファイル内のエクステント起点を利用して、ファイルSS内のエクステントSSEXTSS[・]から抽出される。このように、ファイル・ベースは本来のファイルとは異なり、ファイル・エントリを含まず、かつ、ベースビュー・エクステントの参照にエクステント起点を必要とする。それらの意味で、ファイル・ベースは「仮想的なファイル」である。特にファイル・ベースはファイルシステムでは認識されず、図10に示されているディレクトリ/ファイル構造には現れない。
図35は、BD−ROMディスク101上に記録された一つのエクステント・ブロック3500と、ファイル2D3510、ファイル・ベース3511、ファイルDEP3512、及びファイルSS3520の各エクステント群との間の対応関係を示す模式図である。図35を参照するに、エクステント・ブロック3500はディペンデントビュー・データ・ブロックD[n]とベースビュー・データ・ブロックB[n]とを含む(n=0、1、2、3、…)。ベースビュー・データ・ブロックB[n]は2DエクステントEXT2D[n]としてファイル2D3510に属する。ディペンデントビュー・データ・ブロックD[n]はディペンデントビュー・エクステントEXT2[n]としてファイルDEP3512に属する。エクステント・ブロック3500の全体が一つのエクステントSSEXTSS[0]としてファイルSS3520に属する。従って、エクステントSSEXTSS[0]は、2DエクステントEXT2D[n]とはベースビュー・データ・ブロックB[n]を共有し、ディペンデントビュー・エクステントEXT2[n]とはディペンデントビュー・データ・ブロックD[n]を共有する。エクステントSSEXTSS[0]は再生装置102に読み込まれた後、ディペンデントビュー・データ・ブロックD[n]とベースビュー・データ・ブロックB[n]とに分離される。それらのベースビュー・データ・ブロックB[n]はベースビュー・エクステントEXT1[n]としてファイル・ベース3511に属する。エクステントSSEXTSS[0]内でのベースビュー・エクステントEXT1[n]とディペンデントビュー・エクステントEXT2[n]との間の境界は、ファイル2D3510とファイルDEP3512とのそれぞれに対応付けられたクリップ情報ファイル内のエクステント起点を利用して特定される。
≪ディペンデントビュー・クリップ情報ファイル≫
ディペンデントビュー・クリップ情報ファイルは、図32、33に示されている2Dクリップ情報ファイルとデータ構造が同様である。従って、以下の説明では、ディペンデントビュー・クリップ情報ファイルと2Dクリップ情報ファイルとの間の相違点に触れ、同様な点についての説明は上記の説明を援用する。
ディペンデントビュー・クリップ情報ファイルは、2Dクリップ情報ファイルとは、主に次の三点で異なる:(i)ストリーム属性情報に条件が課せられている;(ii)エントリ・ポイントに条件が課せられている;(iii)3Dメタデータがオフセット・テーブルを含まない。
(i)ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとが、L/Rモードの再生装置102によって3D映像の再生に利用されるものであるとき、図15に示されているとおり、ディペンデントビュー・ビデオ・ストリームはベースビュー・ビデオ・ストリームを利用して圧縮されている。そのとき、ディペンデントビュー・ビデオ・ストリームはベースビュー・ビデオ・ストリームとビデオ・ストリーム属性が等しい。ここで、ベースビュー・ビデオ・ストリームに関するビデオ・ストリーム属性情報は2Dクリップ情報ファイルのストリーム属性情報3220内でPID=0x1011に対応付けられている。一方、ディペンデントビュー・ビデオ・ストリームに関するビデオ・ストリーム属性情報はディペンデントビュー・クリップ情報ファイルのストリーム属性情報内でPID=0x1012又は0x1013に対応付けられている。従って、それらのビデオ・ストリーム属性情報間では、図32に示されている各項目、すなわち、コーデック、解像度、アスペクト比、及びフレームレートが一致しなければならない。コーデックの種類が一致していれば、ベースビュー・ピクチャとディペンデントビュー・ピクチャとの間に符号化での参照関係が成立するので、各ピクチャを復号することができる。解像度、アスペクト比、及びフレームレートがいずれも一致していれば、左右の映像の画面表示を同期させることができる。それ故、それらの映像を3D映像として視聴者に違和感を与えることなく見せることができる。
(ii)ディペンデントビュー・クリップ情報ファイルのエントリ・マップは、ディペンデントビュー・ビデオ・ストリームに割り当てられたテーブルを含む。そのテーブルは、図33の(a)に示されているテーブル3300と同様に、エントリ・マップ・ヘッダとエントリ・ポイントとを含む。エントリ・マップ・ヘッダは、対応するディペンデントビュー・ビデオ・ストリームのPID、すなわち0x1012又は0x1013を示す。各エントリ・ポイントは一対のPTSとSPNとを一つのEP_IDに対応付けている。各エントリ・ポイントのPTSは、ディペンデントビュー・ビデオ・ストリームに含まれるいずれかのGOPにおいて、その先頭に位置するピクチャのPTSと等しい。各エントリ・ポイントのSPNは、同じエントリ・ポイントに属するPTSで特定されるピクチャが格納されたソースパケット群のうち、その先頭に割り当てられたSPNに等しい。ここで、SPNは、ファイルDEPに属するソースパケット群、すなわちサブTSを構成するソースパケット群に先頭から順に割り当てられた通し番号を意味する。各エントリ・ポイントのPTSは、2Dクリップ情報ファイルのエントリ・マップのうち、ベースビュー・ビデオ・ストリームに割り当てられたテーブル内のエントリ・ポイントのPTSと一致しなければならない。すなわち、同じ3D・VAUに含まれる一対のピクチャの一方を含むソースパケット群の先頭にエントリ・ポイントが設定されているときは常に、他方を含むソースパケット群の先頭にもエントリ・ポイントが設定されていなければならない。
図36は、ベースビュー・ビデオ・ストリーム3610とディペンデントビュー・ビデオ・ストリーム3620とに設定されたエントリ・ポイントの例を示す模式図である。各ビデオ・ストリーム3610、3620では、先頭から数えて同じ順番のGOPが同じ再生期間の映像を表す。図36を参照するに、ベースビュー・ビデオ・ストリーム3610では、その先頭のGOPから数えて奇数番目に位置するGOP#1、GOP#3、GOP#5の各先頭にエントリ・ポイント3601B、3603B、3605Bが設定されている。それに併せて、ディペンデントビュー・ビデオ・ストリーム3620でも、その先頭のGOPから数えて奇数番目に位置するGOP#1、GOP#3、GOP#5の各先頭にエントリ・ポイント3601D、3603D、3605Dが設定されている。その場合、再生装置102は、例えばGOP#3から3D映像の再生を開始するとき、対応するエントリ・ポイント3603B、3603DのSPNから、ファイルSS内の再生開始位置のSPNを直ちに算定できる。特にエントリ・ポイント3603B、3603Dがいずれもデータ・ブロックの先端に設定されているとき、図34の(e)から理解されるとおり、エントリ・ポイント3603B、3603DのSPNの和がファイルSS内の再生開始位置のSPNに等しい。図34の(e)の説明で述べたとおり、そのソースパケットの数からは、ファイルSS内の再生開始位置の部分が記録されたセクタのLBNを算定することができる。こうして、3D映像の再生においても、飛び込み再生等、ビデオ・ストリームのランダムアクセスを要する処理の応答速度を向上させることができる。
≪2Dプレイリスト・ファイル≫
図37は、2Dプレイリスト・ファイルのデータ構造を示す模式図である。図10に示されている第1プレイリスト・ファイル(00001.mpls)1021はこのデータ構造を持つ。図37を参照するに、2Dプレイリスト・ファイル1021はメインパス3701と二つのサブパス3702、3703とを含む。
メインパス3701はプレイアイテム情報(以下、PIと略す。)の配列であり、ファイル2D1041の主要な再生経路、すなわち再生対象の部分とその再生順とを規定する。各PIは固有のプレイアイテムID=#N(N=1、2、3、…)で識別される。各PI#Nは主要な再生経路の異なる再生区間を一対のPTSで規定する。その対の一方はその再生区間の開始時刻(In−Time)を表し、他方は終了時刻(Out−Time)を表す。更に、メインパス3701内でのPIの順序は、対応する再生区間の再生経路内での順序を表す。
各サブパス3702、3703はサブプレイアイテム情報(以下、SUB_PIと略す。)の配列であり、ファイル2D1041の主要な再生経路に並列に付随可能な再生経路を規定する。その再生経路は、メインパス3701の表すファイル2D1041の部分とは別の部分とその再生順、又は、別のファイル2Dに多重化されたストリーム・データの部分とその再生順を示す。そのストリーム・データは、メインパス3701に従ってファイル2D1041から再生される2D映像と同時に再生されるべき別の2D映像を表す。その別の2D映像は例えば、ピクチャ・イン・ピクチャ方式における副映像、ブラウザ画面、ポップアップ・メニュー、又は字幕を含む。サブパス3702、3703には2Dプレイリスト・ファイル1021への登録順に通し番号“0”、“1”が振られている。その通し番号はサブパスIDとして各サブパス3702、3703の識別に利用される。各サブパス3702、3703では、各SUB_PIが固有のサブプレイアイテムID=#M(M=1、2、3、…)で識別される。各SUB_PI#Mは、再生経路の異なる再生区間を一対のPTSで規定する。その対の一方はその再生区間の再生開始時刻を表し、他方は再生終了時刻を表す。更に、各サブパス3702、3703内でのSUB_PIの順序は、対応する再生区間の再生経路内での順序を表す。
図38は、PI#Nのデータ構造を示す模式図である。図38を参照するに、PI#Nは、参照クリップ情報3801、再生開始時刻(In_Time)3802、再生終了時刻(Out_Time)3803、コネクション・コンディション3804、及びストリーム選択テーブル(以下、STN(Stream Number)テーブルと略す。)3805を含む。参照クリップ情報3801は、2Dクリップ情報ファイル1031を識別するための情報である。再生開始時刻3802と再生終了時刻3803とは、ファイル2D1041の再生対象部分の先端と後端との各PTSを示す。コネクション・コンディション3804は、再生開始時刻3802と再生終了時刻3803とによって規定された再生区間での映像を、一つ前のPI#(N−1)によって規定された再生区間での映像に接続するときの条件を規定する。STNテーブル3805は、再生開始時刻3802から再生終了時刻3803までの間に、再生装置102内のデコーダによってファイル2D1041から選択可能なエレメンタリ・ストリームのリストを表す。
SUB_PIのデータ構造は、図38に示されているPIのデータ構造と、参照クリップ情報、再生開始時刻、及び再生終了時刻を含む点で共通する。特にSUB_PIの再生開始時刻と再生終了時刻とは、PIのそれらと同じ時間軸上の値で表される。SUB_PIは更に「SPコネクション・コンディション」というフィールドを含む。SPコネクション・コンディションはPIのコネクション・コンディションと同じ意味を持つ。
[コネクション・コンディション]
コネクション・コンディション(以下、CCと略す。)3804は、例えば、“1”、“5”、“6”の三種類の値を取り得る。CC3804が“1”であるとき、PI#Nによって規定されるファイル2D1041の部分から再生される映像は、直前のPI#(N−1)によって規定されるファイル2D1041の部分から再生される映像とは必ずしもシームレスに接続されなくてもよい。一方、CC3804が“5”又は“6”であるとき、それら両方の映像が必ずシームレスに接続されなければならない。
図39の(a)、(b)はそれぞれ、CCが“5”、“6”であるときに接続されるべき二つの再生区間PI#(N−1)、PI#Nの間の関係を示す模式図である。ここで、PI#(N−1)はファイル2D1041の第1部分3901を規定し、PI#Nはファイル2D1041の第2部分3902を規定する。図39の(a)を参照するに、CCが“5”であるとき、二つのPI#(N−1)、PI#Nの間でSTCが途切れていても良い。すなわち、第1部分3901の後端のPTS#1と第2部分3902の先端のPTS#2とは不連続であってもよい。但し、いくつかの制約条件が満たされねばならない。例えば、第1部分3901に続けて第2部分3902がデコーダに供給された際にそのデコーダが復号処理をスムーズに持続できるように、各部分3901、3902は作成されていなければならない。更に、第1部分3901に含まれるオーディオ・ストリームの最後のフレームは、第2部分3902に含まれるオーディオ・ストリームの先頭フレームと重複させなければならない。一方、図39の(b)を参照するに、CCが“6”であるとき、第1部分3901と第2部分3902とは、デコーダの復号処理上、一連の部分として扱えるものでなければならない。すなわち、第1部分3901と第2部分3902との間では、STCとATCとがいずれも連続でなければならない。同様に、SPコネクション・コンディションが“5”又は“6”であるとき、隣接する二つのSUB_PIによって規定されるファイル2Dの部分間では、STCとATCとがいずれも連続でなければならない。
[STNテーブル]
図38を再び参照するに、STNテーブル3805はストリーム登録情報の配列である。「ストリーム登録情報」とは、再生開始時刻3802から再生終了時刻3803までの間にメインTSから再生対象として選択可能なエレメンタリ・ストリームを個別に示す情報である。ストリーム番号(STN)3806は、ストリーム登録情報に個別に割り当てられた通し番号であり、再生装置102によって各エレメンタリ・ストリームの識別に利用される。STN3806は更に、同じ種類のエレメンタリ・ストリームの間では選択の優先順位を表す。ストリーム登録情報は、ストリーム・エントリ3809とストリーム属性情報3810と含む。ストリーム・エントリ3809は、ストリーム・パス情報3807とストリーム識別情報3808とを含む。ストリーム・パス情報3807は、選択対象のエレメンタリ・ストリームが属するファイル2Dを示す情報である。例えばストリーム・パス情報3807が“メインパス”を示すとき、そのファイル2Dは、参照クリップ情報3801の示す2Dクリップ情報ファイルに対応するものである。一方、ストリーム・パス情報3807が“サブパスID=1”を示すとき、選択対象のエレメンタリ・ストリームが属するファイル2Dは、サブパスID=1のサブパスに含まれるSUB_PIの参照クリップ情報が示す2Dクリップ情報ファイルに対応するものである。そのSUB_PIの規定する再生開始時刻又は再生終了時刻のいずれかは、STNテーブル3805を含むPIの規定する再生開始時刻3802から再生終了時刻3803までの期間に含まれる。ストリーム識別情報3808は、ストリーム・パス情報3807によって特定されるファイル2Dに多重化されているエレメンタリ・ストリームのPIDを示す。このPIDの示すエレメンタリ・ストリームが再生開始時刻3802から再生終了時刻3803までの間に選択可能である。ストリーム属性情報3810は各エレメンタリ・ストリームの属性情報を表す。例えば、オーディオ・ストリーム、PGストリーム、及びIGストリームの各属性情報は言語の種類を示す。
[2Dプレイリスト・ファイルに従った2D映像の再生]
図40は、2Dプレイリスト・ファイル(00001.mpls)1021の示すPTSと、ファイル2D(01000.m2ts)1041から再生される部分との間の対応関係を示す模式図である。図40を参照するに、2Dプレイリスト・ファイル1021のメインパス3701では、PI#1は、再生開始時刻IN1を示すPTS#1と、再生終了時刻OUT1を示すPTS#2とを規定する。PI#1の参照クリップ情報は2Dクリップ情報ファイル(01000.clpi)1031を示す。再生装置102は、2Dプレイリスト・ファイル1021に従って2D映像を再生するとき、まずPI#1からPTS#1、#2を読み出す。再生装置102は次に、2Dクリップ情報ファイル1031のエントリ・マップを参照して、PTS#1、#2に対応するファイル2D1041内のSPN#1、#2を検索する。再生装置102は続いて、SPN#1、#2から、それぞれに対応するセクタ数を算定する。再生装置102は更にそれらのセクタ数とファイル2D1041のファイル・エントリとを利用して、再生対象の2Dエクステント群EXT2D[0]、…、EXT2D[n]が記録されたセクタ群P1の先端のLBN#1と後端のLBN#2とを特定する。セクタ数の算定とLBNの特定とは、図33を用いて説明したとおりである。再生装置102は最後に、LBN#1からLBN#2までの範囲をBD−ROMドライブ121に指定する。それにより、その範囲のセクタ群P1から、2Dエクステント群EXT2D[0]、…、EXT2D[n]に属するソースパケット群が読み出される。同様に、PI#2の示すPTS#3、#4の対は、まず2Dクリップ情報ファイル1031のエントリ・マップを利用してSPN#3、#4の対に変換される。次に、ファイル2D1041のファイル・エントリを利用してSPN#3、#4の対がLBN#3、#4の対に変換される。更に、LBN#3からLBN#4までの範囲のセクタ群P2から、2Dエクステント群に属するソースパケット群が読み出される。PI#3の示すPTS#5、#6の対からSPN#5、#6の対への変換、SPN#5、#6の対からLBN#5、#6の対への変換、及びLBN#5からLBN#6までの範囲のセクタ群P3からのソースパケット群の読み出しも同様である。こうして、再生装置102は2Dプレイリスト・ファイル1021のメインパス3701に従って、ファイル2D1041から2D映像を再生できる。
2Dプレイリスト・ファイル1021はエントリ・マーク4001を含んでもよい。エントリ・マーク4001は、メインパス3701のうち、実際に再生が開始されるべき時点を示す。例えば図40に示されているように、PI#1に対して複数のエントリ・マーク4001が設定されてもよい。エントリ・マーク4001は特に頭出し再生において、再生開始位置の検索に利用される。例えば2Dプレイリスト・ファイル1021が映画タイトルの再生経路を規定するとき、エントリ・マーク4001は各チャプタの先頭に付与される。それにより、再生装置102はその映画タイトルをチャプタごとに再生できる。
≪3Dプレイリスト・ファイル≫
図41は、3Dプレイリスト・ファイルのデータ構造を示す模式図である。図10に示されている第2プレイリスト・ファイル(00002.mpls)1022はこのデータ構造を持つ。第2プレイリスト・ファイル(00003.mpls)1023も同様である。図41を参照するに、3Dプレイリスト・ファイル1022は、メインパス4101、サブパス4102、及び拡張データ4103を含む。
メインパス4101は、図11の(a)に示されているメインTSの再生経路を規定する。従って、メインパス4101は、図37に示されている2Dプレイリスト・ファイル1021のメインパス3701と実質的に等しい。すなわち、2D再生モードの再生装置102は、3Dプレイリスト・ファイル1022のメインパス4101に従ってファイル2D1041から2D映像を再生できる。一方、メインパス4101は、図37に示されているメインパス3701とは次の点で異なる:各PIのSTNテーブルは、いずれかのグラフィックス・ストリームのPIDに一つのSTNを対応付けている際には更に、そのSTNに一つのオフセット・シーケンスIDを割り当てている。
サブパス4102は、図11の(b)、(c)に示されているサブTSの再生経路、すなわち、第1ファイルDEP1042又は第2ファイルDEP1043のいずれかの再生経路を規定する。サブパス4102のデータ構造は、図37に示されている2Dプレイリスト・ファイル1041のサブパス3702、3703のデータ構造と同様である。従って、その同様なデータ構造の詳細、特にSUB_PIのデータ構造の詳細についての説明は、図37を用いた説明を援用する。
サブパス4102のSUB_PI#N(N=1、2、3、…)はメインパス4101のPI#Nと一対一に対応する。更に、各SUB_PI#Nの規定する再生開始時刻と再生終了時刻とはそれぞれ、対応するPI#Nの規定する再生開始時刻と再生終了時刻とに等しい。サブパス4102はその上、サブパス・タイプ4110を含む。「サブパス・タイプ」は一般に、メインパスとサブパスとの間で再生処理が同期すべきか否かを示す。3Dプレイリスト・ファイル1022では特に、サブパス・タイプ4110が3D再生モードの種類、すなわちサブパス4102に従って再生されるべきディペンデントビュー・ビデオ・ストリームの種類を示す。図41では、サブパス・タイプ4110は、その値が「3D・L/R」であるので、3D再生モードがL/Rモードであること、すなわち、ライトビュー・ビデオ・ストリームが再生対象であることを示す。一方、サブパス・タイプ4110は、その値が「3Dデプス」であるとき、3D再生モードがデプス・モードであること、すなわち、デプスマップ・ストリームが再生対象であることを示す。3D再生モードの再生装置102は、サブパス・タイプ4110の値が「3D・L/R」又は「3Dデプス」であることを検出したとき、メインパス4101に従った再生処理と、サブパス4102に従った再生処理とを同期させる。
拡張データ4103は、3D再生モードの再生装置102によってのみ解釈される部分であり、2D再生モードの再生装置102には無視される。拡張データ4103は特に、拡張ストリーム選択テーブル4130を含む。「拡張ストリーム選択テーブル(STN_table_SS)」(以下、STNテーブルSSと略す。)は、3D再生モードにおいて、メインパス4101内の各PIの示すSTNテーブルに追加されるべきストリーム登録情報の配列である。このストリーム登録情報は、サブTSから再生対象として選択可能なエレメンタリ・ストリームを示す。
[STNテーブル]
図42は、3Dプレイリスト・ファイル1022のメインパス4101の含むSTNテーブル4205を示す模式図である。図42を参照するに、“5”から“11”までのSTN4206が割り当てられたストリーム識別情報4208は、PGストリーム又はIGストリームのPIDを示す。その場合、同じSTNが割り当てられたストリーム属性情報4210は、参照オフセットID(stream_ref_offset_id)4201を含む。ファイルDEP1042では、図19に示されているように、各ビデオ・シーケンスのVAU#1にオフセット・メタデータ1910が配置されている。参照オフセットID4201は、そのオフセット・メタデータ1910の含むオフセット・シーケンスID1912のいずれかに等しい。すなわち、参照オフセットID4101は、そのオフセット・メタデータ1910の含む複数のオフセット・シーケンスの中で、“5”から“11”までの各STNに対応付けられるべきオフセット・シーケンスを規定する。
[STNテーブルSS]
図43は、STNテーブルSS4130のデータ構造を示す模式図である。図43を参照するに、STNテーブルSS4130はストリーム登録情報列4301、4302、4303、…、を含む。ストリーム登録情報列4301、4302、4303、…、はメインパス4101内のPI#1、#2、#3、…、に個別に対応する。3D再生モードの再生装置102はそれらのストリーム登録情報列4301、…を、対応するPI内のSTNテーブルに含まれるストリーム登録情報列と組み合わせて利用する。各PIに対するストリーム登録情報列4301は、ポップアップ期間のオフセット(Fixed_offset_during_Popup)4311、ディペンデントビュー・ビデオ・ストリームのストリーム登録情報列4312、PGストリームのストリーム登録情報列4313、及びIGストリームのストリーム登録情報列4314を含む。
ポップアップ期間のオフセット4311は、IGストリームからポップアップ・メニューが再生されるか否かを示す。3D再生モードの再生装置102はそのオフセット4311の値に依って、ビデオ・プレーンとPGプレーンとの表示モード(presentation mode)を変える。ここで、ビデオ・プレーンの表示モードには、ベースビュー(B)−ディペンデントビュー(D)表示モードとB−B表示モードとの二種類がある。PGプレーンとIGプレーンとの各表示モードには、2プレーン・モード、1プレーン+オフセット・モード、及び1プレーン+ゼロ・オフセット・モードの三種類がある。例えばポップアップ期間のオフセット4311の値が“0”であるとき、IGストリームからはポップアップ・メニューが再生されない。そのとき、ビデオ・プレーンの表示モードとしてB−D表示モードが選択され、PGプレーンの表示モードとして2プレーン・モード又は1プレーン+オフセット・モードが選択される。一方、ポップアップ期間のオフセット4311の値が“1”であるとき、IGストリームからポップアップ・メニューが再生される。そのとき、ビデオ・プレーンの表示モードとしてB−B表示モードが選択され、PGプレーンの表示モードとして1プレーン+ゼロ・オフセット・モードが選択される。
「B−D表示モード」では再生装置102が、レフトビューとライトビューとのビデオ・ストリームから復号されたプレーン・データを交互に出力する。従って、表示装置103の画面には、ビデオ・プレーンの表すレフトビューとライトビューとのフレームが交互に表示されるので、視聴者にはそれらが3D映像として見える。「B−B表示モード」では再生装置102が、動作モードを3D再生モードに維持したまま(特にフレームレートを3D再生時の値、例えば48フレーム/秒に維持したまま)、ベースビュー・ビデオ・ストリームから復号されたプレーン・データのみをフレーム当たり二回ずつ出力する。従って、表示装置103の画面には、ビデオ・プレーンについてはレフトビューとライトビューとのいずれかのフレームしか表示されないので、視聴者にはそれらが2D映像としてしか見えない。
「2プレーン・モード」では、例えば図11の(b)、(c)に示されているように、サブTSがベースビューとディペンデントビューとのグラフィックス・ストリームを両方含むとき、再生装置102が各グラフィックス・ストリームからレフトビューとライトビューとのグラフィックス・プレーンを復号して交互に出力する。「1プレーン+オフセット・モード」では、再生装置102がオフセット制御により、メインTS内のグラフィックス・ストリームからレフトビューとライトビューとのグラフィックス・プレーンの対を生成して交互に出力する。いずれのモードでも表示装置103の画面にはレフトビューとライトビューとのグラフィックス・プレーンが交互に表示されるので、視聴者にはそれらが3Dグラフィックス映像として見える。「1プレーン+ゼロ・オフセット・モード」では、再生装置102が、動作モードを3D再生モードに維持したまま、オフセット制御を一時的に停止させ、メインTS内のグラフィックス・ストリームから復号されたグラフィックス・プレーンを一フレーム当たり二回ずつ出力する。従って、表示装置103の画面には、レフトビューとライトビューとのいずれかのグラフィックス・プレーンしか表示されないので、視聴者にはそれらが2Dグラフィックス映像としてしか見えない。
3D再生モードの再生装置102は、PIごとにポップアップ期間のオフセット4311を参照して、IGストリームからポップアップ・メニューが再生されるときはB−B表示モードと1プレーン+ゼロ・オフセット・モードとを選択する。それにより、ポップアップ・メニューが表示される間、他の3D映像が一時的に2D映像に変更されるので、ポップアップ・メニューの視認性・操作性が向上する。
ディペンデントビュー・ビデオ・ストリームのストリーム登録情報列4312、PGストリームのストリーム登録情報列4313、及びIGストリームのストリーム登録情報列4314はそれぞれ、サブTSから再生対象として選択可能なディペンデントビュー・ビデオ・ストリーム、PGストリーム、及びIGストリームを示すストリーム登録情報を含む。これらのストリーム登録情報列4312、4313、4314はそれぞれ、対応するPI内のSTNテーブルに含まれるストリーム登録情報列のうち、ベースビュー・ビデオ・ストリーム、PGストリーム、及びIGストリームを示すものと組み合わされて利用される。3D再生モードの再生装置102は、STNテーブル内のいずれかのストリーム登録情報を読み出すとき、そのストリーム登録情報に組み合わされたSTNテーブルSS内のストリーム登録情報列も自動的に読み出す。それにより、再生装置102は、2D再生モードを単に3D再生モードへ切り換えるとき、設定済みのSTN、及び言語等のストリーム属性を同一に維持できる。
ディペンデントビュー・ビデオ・ストリームのストリーム登録情報列4312は、一般に複数のストリーム登録情報(SS_dependet_view_block)4320を含む。それらは、対応するPI内のストリーム登録情報のうち、ベースビュー・ビデオ・ストリームを示すものと同数である。各ストリーム登録情報4320は、STN4321、ストリーム・エントリ4322、及びストリーム属性情報4323を含む。STN4321は、ストリーム登録情報4320に個別に割り当てられた通し番号であり、対応するPI内の組み合わせ対象のストリーム登録情報のSTNと等しい。ストリーム・エントリ4322は、サブパスID参照情報(ref_to_Subpath_id)4331、ストリーム・ファイル参照情報(ref_to_subClip_entry_id)4332、及びPID(ref_to_stream_PID_subclip)4333を含む。サブパスID参照情報4331は、ディペンデントビュー・ビデオ・ストリームの再生経路を規定するサブパスのサブパスIDを示す。ストリーム・ファイル参照情報4332は、そのディペンデントビュー・ビデオ・ストリームが格納されたファイルDEPを識別するための情報である。PID4333は、そのディペンデントビュー・ビデオ・ストリームのPIDである。ストリーム属性情報4323は、そのディペンデントビュー・ビデオ・ストリームの属性、例えば、フレームレート、解像度、及びビデオ・フォーマットを含む。特にそれらは、対応するPI内の組み合わせ対象のストリーム登録情報の示すベースビュー・ビデオ・ストリームのものと共通である。
PGストリームのストリーム登録情報列4313は、一般に複数のストリーム登録情報4340を含む。それらは、対応するPI内のストリーム登録情報のうち、PGストリームを示すものと同数である。各ストリーム登録情報4340は、STN4341、立体視フラグ(is_SS_PG)4342、ベースビュー・ストリーム・エントリ(stream_entry_for_base_view)4343、ディペンデントビュー・ストリーム・エントリ(stream_entry_for_depentdent_view)4344、及びストリーム属性情報4345を含む。STN4341は、ストリーム登録情報4340に個別に割り当てられた通し番号であり、対応するPI内の組み合わせ対象のストリーム登録情報のSTNと等しい。立体視フラグ4342は、「ベースビュー及びディペンデントビュー(例えば、レフトビュー及びライトビュー)の両方のPGストリームがBD−ROMディスク101に記録されているか否か」を示す。立体視フラグ4342がオンであるとき、サブTSには両方のPGストリームが含まれている。従って、ベースビュー・ストリーム・エントリ4343、ディペンデントビュー・ストリーム・エントリ4344、及びストリーム属性情報4345のいずれのフィールドも再生装置102によって読み出される。立体視フラグ4342がオフであるとき、それらのフィールド4343−4345はいずれも再生装置102によって無視される。ベースビュー・ストリーム・エントリ4343とディペンデントビュー・ストリーム・エントリ4344とはそれぞれ、サブパスID参照情報4351、ストリーム・ファイル参照情報4352、及びPID4353を含む。サブパスID参照情報4351は、ベースビューとディペンデントビューとの各PGストリームの再生経路を規定するサブパスのサブパスIDを示す。ストリーム・ファイル参照情報4352は、各PGストリームが格納されたファイルDEPを識別するための情報である。PID4353は各PGストリームのPIDである。ストリーム属性情報4345は各PGストリームの属性、例えば言語の種類を含む。IGストリームのストリーム登録情報列4314も同様なデータ構造を持つ。
[3Dプレイリスト・ファイルに従った3D映像の再生]
図44は、3Dプレイリスト・ファイル(00002.mpls)1022の示すPTSと、第1ファイルSS(01000.ssif)1045から再生される部分との間の対応関係を示す模式図である。図44を参照するに、3Dプレイリスト・ファイル1022のメインパス4101では、PI#1は、再生開始時刻IN1を示すPTS#1と、再生終了時刻OUT1を示すPTS#2とを規定する。PI#1の参照クリップ情報は2Dクリップ情報ファイル(01000.clpi)1031を示す。サブパス3902では、SUB_PI#1がPI#1と同じPTS#1、#2を規定する。SUB_PI#1の参照クリップ情報はディペンデントビュー・クリップ情報ファイル(02000.clpi)1032を示す。
再生装置102は3Dプレイリスト・ファイル1022に従って3D映像を再生するとき、まずPI#1とSUB_PI#1とからPTS#1、#2を読み出す。再生装置102は次に2Dクリップ情報ファイル1031のエントリ・マップを参照し、PTS#1、#2に対応するファイル2D1041内のSPN#1、#2を検索する。それと並行して、再生装置102はディペンデントビュー・クリップ情報ファイル1032のエントリ・マップを参照し、PTS#1、#2に対応する第1ファイルDEP1042内のSPN#11、#12を検索する。再生装置102は続いて、図34の(e)の説明で述べたように、各クリップ情報ファイル1031、1032のエクステント起点3242、3420を利用して、第1ファイルSS1045の先頭から再生開始位置までのソースパケット数SPN#21をSPN#1、#11から算定する。再生装置102は同様に、第1ファイルSS1045の先頭から再生終了位置までのソースパケット数SPN#22をSPN#2、#12から算定する。再生装置102は更にSPN#21、#22のそれぞれに対応するセクタ数を算定する。再生装置102は続いて、それらのセクタ数と第1ファイルSS1045のファイル・エントリとを利用して、再生対象のエクステントSS群EXTSS[0]、…、EXTSS[n]が記録されたセクタ群P11の先端のLBN#1と後端のLBN#2とを特定する。セクタ数の算定とLBNの特定とは、図34の(e)の説明で述べたものと同様である。再生装置102は最後に、LBN#1からLBN#2までの範囲をBD−ROMドライブ121に指定する。それにより、その範囲のセクタ群P11から、エクステントSS群EXTSS[0]、…、EXTSS[n]に属するソースパケット群が読み出される。同様に、PI#2とSUB_PI#2との示すPTS#3、#4の対は、まずクリップ情報ファイル231、232の各エントリ・マップを利用してSPN#3、#4の対とSPN#13、#14の対とに変換される。次に、SPN#3、#13からは、第1ファイルSS1045の先頭から再生開始位置までのソースパケット数SPN#23が算定される。更に、SPN#4、#14からは、第1ファイルSS1045の先頭から再生終了位置までのソースパケット数SPN#24が算定される。続いて、第1ファイルSS1045のファイル・エントリを利用して、SPN#23、#24の対がLBN#3、#4の対に変換される。その後、LBN#3からLBN#4までの範囲のセクタ群P12から、エクステントSS群に属するソースパケット群が読み出される。
上記の読み出し処理と並行して、再生装置102は、図34の(e)の説明で述べたように各クリップ情報ファイル1031、1032のエクステント起点3242、3420を利用して、各エクステントSSからベースビュー・エクステントとディペンデントビュー・エクステントとを抽出してパラレルに復号する。こうして、再生装置102は、3Dプレイリスト・ファイル1022に従って第1ファイルSS1045から3D映像を再生できる。
≪インデックス・ファイル≫
図45は、図10に示されているインデックス・ファイル(index.bdmv)1011のデータ構造を示す模式図である。図45を参照するに、インデックス・ファイル1011は、インデックス・テーブル4510、3D存在フラグ4520、及び2D/3Dお好みフラグ4530を含む。
インデックス・テーブル4510は、項目「ファーストプレイ」4501、「トップメニュー」4502、及び「タイトルk」4503(k=1、2、…、n:文字nは1以上の整数を表す。)を含む。各項目には、ムービーオブジェクトMVO−2D、MVO−3D、…、又はBD−JオブジェクトBDJO−2D、BDJO−3D、…のいずれかが対応付けられている。ユーザの操作又はアプリケーション・プログラムによってタイトル又はメニューが呼び出される度に、再生装置102の制御部は、インデックス・テーブル4510の対応する項目を参照する。制御部は更に、その項目に対応付けられているオブジェクトをBD−ROMディスク101から呼び出し、それに従って様々な処理を実行する。具体的には、項目「ファーストプレイ」4501には、BD−ROMディスク101がBD−ROMドライブ121へ挿入された時に呼び出されるべきオブジェクトが指定されている。項目「トップメニュー」4502には、例えばユーザの操作で「メニューに戻れ」というコマンドが入力された時に表示装置103にメニューを表示させるためのオブジェクトが指定されている。項目「タイトルk」4503には、BD−ROMディスク101上のコンテンツを構成するタイトルが個別に割り当てられている。例えばユーザの操作によって再生対象のタイトルが指定されたとき、そのタイトルが割り当てられている項目「タイトルk」には、そのタイトルに対応するAVストリーム・ファイルから映像を再生するためのオブジェクトが指定されている。
図45に示されている例では、項目「タイトル1」と項目「タイトル2」とが2D映像のタイトルに割り当てられている。項目「タイトル1」に対応付けられているムービーオブジェクトMVO−2Dは、2Dプレイリスト・ファイル(00001.mpls)1021を用いた2D映像の再生処理に関する命令群を含む。再生装置102によって項目「タイトル1」が参照されたとき、そのムービーオブジェクトMVO−2Dに従い、2Dプレイリスト・ファイル1021がBD−ROMディスク101から読み出され、それに規定された再生経路に沿って2D映像の再生処理が実行される。項目「タイトル2」に対応付けられているBD−JオブジェクトBDJO−2Dは、2Dプレイリスト・ファイル1021を用いた2D映像の再生処理に関するアプリケーション管理テーブルを含む。再生装置102によって項目「タイトル2」が参照されたとき、そのBD−JオブジェクトBDJO−2D内のアプリケーション管理テーブルに従ってJARファイル1061からJavaアプリケーション・プログラムが呼び出されて実行される。それにより、2Dプレイリスト・ファイル1021がBD−ROMディスク101から読み出され、それに規定された再生経路に沿って2D映像の再生処理が実行される。
図45に示されている例では更に、項目「タイトル3」と項目「タイトル4」とが3D映像のタイトルに割り当てられている。項目「タイトル3」に対応付けられているムービーオブジェクトMVO−3Dは、2Dプレイリスト・ファイル1021を用いた2D映像の再生処理に関する命令群に加え、3Dプレイリスト・ファイル(00002.mpls)1022、(00003.mpls)1023のいずれかを用いた3D映像の再生処理に関する命令群を含む。項目「タイトル4」に対応付けられているBD−JオブジェクトBDJO−3Dでは、アプリケーション管理テーブルが、2Dプレイリスト・ファイル1021を用いた2D映像の再生処理に関するJavaアプリケーション・プログラムに加え、3Dプレイリスト・ファイル1022、1023のいずれかを用いた3D映像の再生処理に関するJavaアプリケーション・プログラムを規定する。
3D存在フラグ4520は、BD−ROMディスク101に3D映像コンテンツが記録されているか否かを示すフラグである。再生装置102は、BD−ROMドライブ121にBD−ROMディスク101が挿入されたとき、まず、その3D存在フラグ4520をチェックする。3D存在フラグ4520がオンである場合、再生装置102は、HDMIケーブル122を通して表示装置103とCECメッセージを交換して、3D映像の再生に対応可能か否かを表示装置103に問い合わせなければならない。その問い合わせを行うには、再生装置102は表示装置103に対してHDCP認証を行わねばならない。一方、3D存在フラグ4520がオフである場合、再生装置102は3D再生モードを選択する必要がないので、表示装置103に対してHDCP認証を行うことなく、2D再生モードに速やかに移行できる。こうして、HDMI認証がスキップされることにより、BD−ROMディスク101の挿入から2D映像の再生開始までの時間が短縮される。
2D/3Dお好みフラグ4530は、再生装置と表示装置とが共に2D映像と3D映像とのいずれの再生にも対応可能であるときに、3D映像の再生を優先すべきか否かを指定するフラグである。2D/3Dお好みフラグ4530はコンテンツ・プロバイダによって設定される。再生装置102は、BD−ROMディスク101の3D存在フラグ4520がオンであるとき、続いて2D/3Dお好みフラグ4530を更にチェックする。2D/3Dお好みフラグ4530がオンである場合、3D映像の再生が優先されるので、再生装置102はユーザに再生モードを選択させなくてもよい。従って、再生装置102は、表示装置103に再生モードの選択画面を表示させることなくHDCP認証を行い、その結果に依って2D再生モードと3D再生モードとのいずれかで動作する。特に表示装置103が3D映像の再生に対応可能であることが判明した場合、再生装置102は直ちに3D再生モードで起動する。こうして、フレームレートの切り換え等、2D再生モードから3D再生モードへの移行処理に起因する起動の遅れを回避することができる。
[3D映像タイトルの選択時でのプレイリスト・ファイルの選択]
図45に示されている例では、再生装置102は、インデックス・テーブル4510の項目「タイトル3」を参照したとき、ムービーオブジェクトMVO−3Dに従って、まず次の判別処理を行う:(1)3D存在フラグ4520がオンかオフか、(2)再生装置102自身が3D映像の再生に対応しているか否か、(3)2D/3Dお好みフラグ4530がオンかオフか、(4)ユーザが3D再生モードを選択しているか否か、(5)表示装置103が3D映像の再生に対応しているか否か、及び(6)再生装置102の3D再生モードがL/Rモードとデプス・モードとのいずれであるか。再生装置102は次に、それらの判別結果に依って、いずれかのプレイリスト・ファイル1021−1023を再生対象として選択する。一方、再生装置102は項目「タイトル4」を参照したとき、BD−JオブジェクトBDJO−3D内のアプリケーション管理テーブルに従ってJARファイル1061からJavaアプリケーション・プログラムを呼び出して実行する。それにより、まず上記の判別処理(1)−(6)が行われ、次にその判別結果に依って、プレイリスト・ファイルの選択が行われる。
図46は、上記の判別処理(1)−(6)を利用して再生対象のプレイリスト・ファイルを選択する処理のフローチャートである。ここで、その選択処理の前提として、再生装置102が第1フラグと第2フラグとを含むときを想定する。第1フラグは、再生装置102が3D映像の再生に対応可能であるか否かを示す。例えば第1フラグが“0”であるとき、再生装置102は2D映像の再生のみに対応可能であり、“1”であるとき、3D映像の再生にも対応可能である。第2フラグは、3D再生モードがL/Rモードとデプス・モードとのいずれであるかを示す。例えば第2フラグが“0”であるとき、3D再生モードはL/Rモードであり、“1”であるとき、デプス・モードである。更に、3D存在フラグ4520と2D/3Dお好みフラグ4530とのそれぞれがオンであるときの値を“1”とし、オフであるときの値を“0”とする。
ステップS4601では、再生装置102は3D存在フラグ4520の値をチェックする。その値が“1”であるとき、処理はステップS4602へ進む。その値が“0”であるとき、処理はステップS4607へ進む。
ステップS4602では、3D存在フラグ4520はオンであるので、3D再生モードが選択される可能性がある。従って、再生装置102は第1フラグの値をチェックする。その値が“1”であるとき、処理はステップS4603へ進む。その値が“0”であるとき、処理はステップS4607へ進む。
ステップS4603では、第1フラグはオンであるので、再生装置102は3D映像の再生に対応可能である。再生装置102は更に2D/3Dお好みフラグ4530の値をチェックする。その値が“0”であるとき、処理はステップS4604へ進む。その値が“1”であるとき、処理はステップS4605へ進む。
ステップS4604では、2D/3Dお好みフラグ4530がオフであるので、3D映像の再生は優先されない。従って、再生装置102は表示装置103にメニューを表示させて、ユーザに2D再生モードと3D再生モードとのいずれかを選択させる。ユーザがリモコン105等を操作して3D再生モードを選択したとき、処理はステップS4605へ進み、2D再生モードを選択したとき、処理はステップS4607へ進む。
ステップS4605では、3D映像の再生が優先され、又は3D再生モードがユーザによって選択されている。従って、再生装置102はHDCP認証を行って、表示装置103が3D映像の再生に対応しているか否かをチェックする。表示装置103が3D映像の再生に対応している場合、処理はステップS4606へ進む。表示装置103が3D映像の再生に対応していない場合、処理はステップS4607へ進む。
ステップS4606では、3D再生モードでの起動が決定されている。再生装置102は更に第2フラグの値をチェックする。その値が“0”であるとき、処理はステップS4608へ進む。その値が“1”であるとき、処理はステップS4609へ進む。
ステップS4607では、2D再生モードでの起動が決定されている。従って、再生装置102は2Dプレイリスト・ファイル1021を再生対象として選択する。尚、そのとき、再生装置102は表示装置103に、3D映像の再生が選択されなかった理由を表示させてもよい。その後、処理は終了する。
ステップS4608では、再生装置102はL/Rモードで起動する。すなわち、再生装置102はL/Rモード用の3Dプレイリスト・ファイル1022を再生対象として選択する。その後、処理は終了する。
ステップS4609では、再生装置102はデプス・モードで起動する。すなわち、再生装置102はデプス・モード用の3Dプレイリスト・ファイル1023を再生対象として選択する。その後、処理は終了する。
<2D再生装置の構成>
2D再生モードの再生装置102はBD−ROMディスク101から2D映像コンテンツを再生するとき、2D再生装置として動作する。図47は、2D再生装置4700の機能ブロック図である。図47を参照するに、2D再生装置4700は、BD−ROMドライブ4701、再生部4702、及び制御部4703を含む。再生部4702は、リード・バッファ4721、システム・ターゲット・デコーダ4723、プレーン加算部4724、及びHDMI通信部4725を含む。制御部4703は、動的シナリオ・メモリ4731、静的シナリオ・メモリ4732、ユーザイベント処理部4733、プログラム実行部4734、再生制御部4735、及びプレーヤ変数記憶部4736を含む。再生部4702と制御部4703とは、互いに異なる集積回路に実装されている。その他に、両者が単一の集積回路に統合されていてもよい。
BD−ROMドライブ4701は、内部にBD−ROMディスク101が挿入されたとき、そのディスク101にレーザ光を照射してその反射光の変化を検出する。更に、その反射光の光量の変化から、ディスク101に記録されたデータを読み取る。具体的には、BD−ROMドライブ4701は光ピックアップ、すなわち光学ヘッドを備えている。その光学ヘッドは、半導体レーザ、コリメータ・レンズ、ビーム・スプリッタ、対物レンズ、集光レンズ、及び光検出器を含む。半導体レーザから出射された光ビームは、コリメータ・レンズ、ビーム・スプリッタ、及び対物レンズを順に通ってディスク101の記録層に集められる。集められた光ビームはその記録層で反射/回折される。その反射/回折光は、対物レンズ、ビーム・スプリッタ、及び集光レンズを通って光検出器に集められる。光検出器は、その集光量に応じたレベルの再生信号を生成する。更に、その再生信号からデータが復調される。
BD−ROMドライブ4701は、再生制御部4735からの要求に従ってBD−ROMディスク101からデータを読み出す。そのデータのうち、ファイル2Dのエクステント、すなわち2Dエクステントはリード・バッファ4721へ転送され、動的シナリオ情報は動的シナリオ・メモリ4731へ転送され、静的シナリオ情報は静的シナリオ・メモリ4732へ転送される。「動的シナリオ情報」は、インデックス・ファイル、ムービーオブジェクト・ファイル、及びBD−Jオブジェクト・ファイルを含む。「静的シナリオ情報」は2Dプレイリスト・ファイルと2Dクリップ情報ファイルとを含む。
リード・バッファ4721、動的シナリオ・メモリ4731、及び静的シナリオ・メモリ4732はいずれもバッファ・メモリである。リード・バッファ4721としては、再生部4702に内蔵されたメモリ素子が利用され、動的シナリオ・メモリ4731及び静的シナリオ・メモリ4732としては、制御部4703に内蔵されたメモリ素子が利用される。その他に、単一のメモリ素子の異なる領域が、それらのバッファ・メモリ4721、4731、4732の一部又は全部として利用されてもよい。リード・バッファ4721は2Dエクステントを格納し、動的シナリオ・メモリ4731は動的シナリオ情報を格納し、静的シナリオ・メモリ4732は静的シナリオ情報を格納する。
システム・ターゲット・デコーダ4723は、リード・バッファ4721から2Dエクステントをソースパケット単位で読み出して多重分離処理を行い、分離された各エレメンタリ・ストリームに対して復号処理を行う。ここで、各エレメンタリ・ストリームの復号に必要な情報、例えばコーデックの種類及びストリームの属性は予め、再生制御部4735からシステム・ターゲット・デコーダ4723へ送られている。システム・ターゲット・デコーダ4723は更に、復号後のプライマリ・ビデオ・ストリーム、セカンダリ・ビデオ・ストリーム、IGストリーム、及びPGストリーム内の各VAUを、主映像プレーン、副映像プレーン、IGプレーン、及びPGプレーンに変換してプレーン加算部4724へ送出する。システム・ターゲット・デコーダ4723は特に各主映像プレーンを1/24秒間隔で送出する。一方、システム・ターゲット・デコーダ4723は、復号後のプライマリ・オーディオ・ストリームとセカンダリ・オーディオ・ストリームとをミキシングして、表示装置103の内蔵スピーカ103A等、音声出力装置へ送出する。システム・ターゲット・デコーダ4723はその他に、プログラム実行部4734からグラフィックス・データを受信する。そのグラフィックス・データは、GUI用のメニュー等のグラフィックスを画面に表示するためのものであり、JPEG又はPNG等のラスタ・データで表現されている。システム・ターゲット・デコーダ4723はそのグラフィックス・データを処理してイメージ・プレーンに変換し、プレーン加算部4724へ送出する。尚、システム・ターゲット・デコーダ4723の詳細については後述する。
プレーン加算部4724は、システム・ターゲット・デコーダ4723から、主映像プレーン、副映像プレーン、IGプレーン、PGプレーン、及びイメージ・プレーンを読み出し、それらを互いに重畳して一つの映像プレーン(フレーム又はフィールド)に合成する。合成後の映像プレーンは、特に1/24秒間隔でHDMI通信部4725へ送出される。
HDMI通信部4725は、プレーン加算部4724からは合成後の映像データを受信し、システム・ターゲット・デコーダ4723からは音声データを受信し、再生制御部4735からは制御データを受信する。HDMI通信部4725は更に、それらの受信データをHDMI方式のシリアル信号に変換し、HDMIケーブル122内のTMDSチャネルを通して表示装置103へ伝送する。HDMI通信部4725は特にそのシリアル信号を、図5の(a)に示されているフォーマットで生成する。そのフォーマットでは、各映像プレーンは1/24秒間隔で送出される。表示装置103はそのシリアル信号に従って、映像データの表す映像を画面に表示し、音声データの表す音声をスピーカ103Aから放出する。一方、HDMI通信部4725は、HDMIケーブル122内のCECラインを通して表示装置103との間でCECメッセージを交換し、HDMIケーブル122内のディスプレイ・データ・チャネルを通してEDIDを表示装置103から読み出す。尚、HDMI通信部4725の詳細については後述する。
ユーザイベント処理部4733は、リモコン105又は再生装置102のフロントパネルを通してユーザの操作を検出し、その操作の種類に依って、プログラム実行部4734又は再生制御部4735に処理を依頼する。例えば、ユーザがリモコン105のボタンを押下してポップアップ・メニューの表示を指示したとき、ユーザイベント処理部4733はその押下を検出してそのボタンを識別する。ユーザイベント処理部4733は更にプログラム実行部4734に、そのボタンに対応するコマンドの実行、すなわちポップアップ・メニューの表示処理を依頼する。一方、ユーザがリモコン105の早送り又は巻戻しボタンを押下したとき、ユーザイベント処理部4733はその押下を検出してそのボタンを識別する。ユーザイベント処理部4733は更に再生制御部4735に、現在再生中のプレイリストの早送り又は巻戻し処理を依頼する。
プログラム実行部4734はプロセッサであり、動的シナリオ・メモリ4731に格納されたムービーオブジェクト・ファイル又はBD−Jオブジェクト・ファイルからプログラムを読み出して実行する。プログラム実行部4734は更に各プログラムに従って次の制御を行う:(1)再生制御部4735に対してプレイリスト再生処理を命令する;(2)メニュー用又はゲーム用のグラフィックス・データをPNG又はJPEGのラスタ・データとして生成してシステム・ターゲット・デコーダ4523へ転送し、システム・ターゲット・デコーダ4523にそのデータを他の映像データと合成させる。これらの制御の具体的な内容は、プログラムの設計を通じて比較的自由に設計することができる。すなわち、それらの制御内容は、BD−ROMディスク101のオーサリング工程のうち、ムービーオブジェクト・ファイル及びBD−Jオブジェクト・ファイルのプログラミング工程によって決まる。
再生制御部4735は、2Dエクステント及びインデックス・ファイル等、各種のデータをBD−ROMディスク101から、リード・バッファ4721、動的シナリオ・メモリ4731、及び静的シナリオ・メモリ4732へ転送する処理を制御する。その制御には、図10に示されているディレクトリ/ファイル構造を管理するファイルシステムが次のように利用される。再生制御部4735はファイル・オープン用のシステムコールを利用して、ファイルシステムに検索対象のファイル名を与え、ディレクトリ/ファイル構造から検索させる。その検索に成功したとき、ファイルシステムはまず、再生制御部4735内のメモリに転送対象のファイルのファイル・エントリを転送して、そのメモリ内にFCB(File Control Block)を生成する。ファイルシステムは次に、転送対象のファイルのファイル・ハンドルを再生制御部4735へ返す。再生制御部4735はそのファイル・ハンドルをBD−ROMドライブ4701に提示する。それに応じて、BD−ROMドライブ4701はその転送対象のファイルを、BD−ROMディスク101から各バッファ・メモリ4721、4731、4732へ転送する。
再生制御部4735は、BD−ROMドライブ4701とシステム・ターゲット・デコーダ4723とを制御して、ファイル2Dから映像データと音声データとを復号させる。具体的には、再生制御部4735はまず、プログラム実行部4734からの命令、又はユーザイベント処理部4733からの依頼に応じて、静的シナリオ・メモリ4732から2Dプレイリスト・ファイルを読み出してその内容を解釈する。再生制御部4735は次に、その解釈された内容、特に再生経路に従って、BD−ROMドライブ4701とシステム・ターゲット・デコーダ4723とに再生対象のファイル2Dを指定し、その読み出し処理及び復号処理を指示する。このようなプレイリスト・ファイルに従った再生処理を「プレイリスト再生処理」という。
その他に、再生制御部4735は、静的シナリオ情報を利用してプレーヤ変数記憶部4736に各種のプレーヤ変数を設定する。再生制御部4735は更に、それらのプレーヤ変数を参照して、システム・ターゲット・デコーダ4723に復号対象のエレメンタリ・ストリームを指定し、かつ、各エレメンタリ・ストリームの復号に必要な情報を提供する。
プレーヤ変数記憶部4736は、プレーヤ変数を記憶するためのレジスタ群である。プレーヤ変数の種類にはシステム・パラメータ(SPRM)と汎用のパラメータ(GPRM)とがある。SPRMは再生装置102の状態を示す。図48はSPRMの一覧表である。図48を参照するに、各SPRMには通し番号4801が振られ、各通し番号4801に変数値4802が個別に対応付けられている。SPRMは例えば64個であり、それぞれの示す意味は以下のとおりである。ここで、括弧内の数字は通し番号4801を示す。
SPRM(0) : 言語コード
SPRM(1) : プライマリ・オーディオ・ストリーム番号
SPRM(2) : 字幕ストリーム番号
SPRM(3) : アングル番号
SPRM(4) : タイトル番号
SPRM(5) : チャプタ番号
SPRM(6) : プログラム番号
SPRM(7) : セル番号
SPRM(8) : 選択キー情報
SPRM(9) : ナビゲーション・タイマー
SPRM(10) : 再生時刻情報
SPRM(11) : カラオケ用ミキシングモード
SPRM(12) : パレンタル用国情報
SPRM(13) : パレンタル・レベル
SPRM(14) : プレーヤ設定値(ビデオ)
SPRM(15) : プレーヤ設定値(オーディオ)
SPRM(16) : オーディオ・ストリーム用言語コード
SPRM(17) : オーディオ・ストリーム用言語コード(拡張)
SPRM(18) : 字幕ストリーム用言語コード
SPRM(19) : 字幕ストリーム用言語コード(拡張)
SPRM(20) : プレーヤ・リージョン・コード
SPRM(21) : セカンダリ・ビデオ・ストリーム番号
SPRM(22) : セカンダリ・オーディオ・ストリーム番号
SPRM(23) : 再生状態
SPRM(24)−SPRM(63):予備
SPRM(1) : プライマリ・オーディオ・ストリーム番号
SPRM(2) : 字幕ストリーム番号
SPRM(3) : アングル番号
SPRM(4) : タイトル番号
SPRM(5) : チャプタ番号
SPRM(6) : プログラム番号
SPRM(7) : セル番号
SPRM(8) : 選択キー情報
SPRM(9) : ナビゲーション・タイマー
SPRM(10) : 再生時刻情報
SPRM(11) : カラオケ用ミキシングモード
SPRM(12) : パレンタル用国情報
SPRM(13) : パレンタル・レベル
SPRM(14) : プレーヤ設定値(ビデオ)
SPRM(15) : プレーヤ設定値(オーディオ)
SPRM(16) : オーディオ・ストリーム用言語コード
SPRM(17) : オーディオ・ストリーム用言語コード(拡張)
SPRM(18) : 字幕ストリーム用言語コード
SPRM(19) : 字幕ストリーム用言語コード(拡張)
SPRM(20) : プレーヤ・リージョン・コード
SPRM(21) : セカンダリ・ビデオ・ストリーム番号
SPRM(22) : セカンダリ・オーディオ・ストリーム番号
SPRM(23) : 再生状態
SPRM(24)−SPRM(63):予備
SPRM(10)は、復号処理中のピクチャのPTSを示し、そのピクチャが復号されて主映像プレーン・メモリに書き込まれる度に更新される。従って、SPRM(10)を参照すれば、現在の再生時点を知ることができる。
SPRM(13)のパレンタル・レベルは、再生装置102を利用する視聴者の年齢の下限を示し、BD−ROMディスク101に記録されたタイトルの視聴に対するパレンタル制御に利用される。SPRM(13)の値は、再生装置102のユーザによって再生装置102のOSD等を利用して設定される。ここで、「パレンタル制御」とは、視聴者の年齢に依ってタイトルの視聴を制限する処理をいう。再生装置102は各タイトルに対するパレンタル制御を例えば次のように行う。再生装置102はまず、そのタイトルの視聴に対する制限年齢をBD−ROMディスク101から読み出してSPRM(13)の値と比較する。ここで、その制限年齢は、そのタイトルの視聴が許可される視聴者の年齢の下限を表す。その制限年齢がSPRM(13)の値以下であれば、再生装置102はそのタイトルの再生を継続する。その制限年齢がSPRM(13)の値を超えていれば、再生装置102はそのタイトルの再生を停止する。
SPRM(16)のオーディオ・ストリーム用言語コード、及びSPRM(18)の字幕ストリーム用言語コードは、再生装置102のデフォルトの言語コードを示す。それらは再生装置102のOSD等を利用してユーザに変更させることもでき、プログラム実行部4734を通じてアプリケーション・プログラムに変更させることもできる。例えばSPRM(16)が「英語」を示しているとき、再生制御部4735はプレイリスト再生処理において、まず現時点での再生区間を示すPI、すなわちカレントPIの含むSTNテーブルから、「英語」の言語コードを含むストリーム・エントリを検索する。再生制御部4735は次に、そのストリーム・エントリのストリーム識別情報からPIDを抽出してシステム・ターゲット・デコーダ4723に渡す。それにより、そのPIDのオーディオ・ストリームがシステム・ターゲット・デコーダ4723によって選択されて復号される。これらの処理は、ムービーオブジェクト・ファイル又はBD−Jオブジェクト・ファイルを利用して再生制御部4735に実行させることができる。
プレーヤ変数は再生処理中、再生制御部4735によって再生状態の変化に応じて更新される。特に、SPRM(1)、SPRM(2)、SPRM(21)、及びSPRM(22)が更新される。それらは順に、処理中のオーディオ・ストリーム、字幕ストリーム、セカンダリ・ビデオ・ストリーム、及びセカンダリ・オーディオ・ストリームの各STNを示す。例えばプログラム実行部4734によってSPRM(1)が変更されたときを想定する。再生制御部4735はまず、変更後のSPRM(1)の示すSTNを利用して、カレントPI内のSTNテーブルから、そのSTNを含むストリーム・エントリを検索する。再生制御部4735は次に、そのストリーム・エントリ内のストリーム識別情報からPIDを抽出してシステム・ターゲット・デコーダ4723に渡す。それにより、そのPIDのオーディオ・ストリームがシステム・ターゲット・デコーダ4723によって選択されて復号される。こうして、再生対象のオーディオ・ストリームが切り換えられる。同様に、再生対象の字幕及びセカンダリ・ビデオ・ストリームを切り換えることもできる。
<2D再生装置の再生動作>
図49は、図47に示されている2D再生装置4700の再生動作のフローチャートである。この動作は、再生装置102が、図46に示されている選択処理の結果、2D再生モードで起動することによって開始される。
ステップS4901では、2D再生装置4700は、BD−ROMドライブ4701によってBD−ROMディスク101からストリーム・データを読み出して、リード・バッファ4721へ格納する。その後、処理はステップS4902へ進む。
ステップS4902では、2D再生装置4700は、システム・ターゲット・デコーダ4723によってリード・バッファ4721からストリーム・データを読み出し、そのストリーム・データからエレメンタリ・ストリームを多重分離する。その後、処理はステップS4903へ進む。
ステップS4903では、2D再生装置4700は、システム・ターゲット・デコーダ4723によって各エレメンタリ・ストリームを復号する。特に、プライマリ・ビデオ・ストリーム、セカンダリ・ビデオ・ストリーム、IGストリーム、及びPGストリームはそれぞれ、主映像プレーン、副映像プレーン、IGプレーン、及びPGプレーンに復号される。更に、プライマリ・オーディオ・ストリームとセカンダリ・オーディオ・ストリームとがミキシングされる。その他に、プログラム実行部4734からのグラフィックス・データがイメージ・プレーンに変換される。その後、処理はステップS4904へ進む。
ステップS4904では、2D再生装置4700は、システム・ターゲット・デコーダ4723によって復号された主映像プレーン、副映像プレーン、IGプレーン、PGプレーン、及びイメージ・プレーンを、プレーン加算部4724によって一つの映像プレーンに合成する。その後、処理はステップS4905へ進む。
ステップS4905では、2D再生装置4700は、プレーン加算部4724によって合成された映像プレーン、システム・ターゲット・デコーダ4723によってミキシングされた音声データ、及び再生制御部4735からの制御データを、HDMI通信部4725によってシリアル信号に変換し、HDMIケーブル122を通して表示装置103へ伝送する。特にそのシリアル信号は、図5の(a)に示されているフォーマットで生成される。そのフォーマットでは、各映像プレーンは1/24秒間隔で送出される。その後、処理はステップS4906へ進む。
ステップS4906では、2D再生装置4700は、リード・バッファ4721に未処理のストリーム・データが残されているか否かをチェックする。残されているときは、処理がステップS4901から繰り返される。残されていないときは、処理が終了する。
<2Dプレイリスト再生処理>
図50は、再生制御部4735による2Dプレイリスト再生処理のフローチャートである。2Dプレイリスト再生処理は、2Dプレイリスト・ファイルに従ったプレイリスト再生処理であり、再生制御部4735が静的シナリオ・メモリ4732から2Dプレイリスト・ファイルを読み出すことによって開始される。
ステップS5001では、再生制御部4735はまず、2Dプレイリスト・ファイル内のメインパスからPIを一つ読み出してカレントのPIとして設定する。再生制御部4735は次に、カレントPIのSTNテーブルから再生対象のエレメンタリ・ストリームのPIDを選択し、かつ、それらの復号に必要な属性情報を特定する。選択されたPIDと属性情報とはシステム・ターゲット・デコーダ4723に指示される。再生制御部4735は更に、2Dプレイリスト・ファイル内のサブパスから、カレントPIに付随するSUB_PIを特定する。その後、処理はステップS5002へ進む。
ステップS5002では、再生制御部4735はカレントPIから、参照クリップ情報、再生開始時刻IN1を示すPTS#1、及び再生終了時刻OUT1を示すPTS#2を読み出す。その参照クリップ情報から、再生対象のファイル2Dに対応する2Dクリップ情報ファイルが特定される。更に、カレントPIに付随するSUB_PIが存在するときは、それらからも同様な情報が読み出される。その後、処理はステップS5003へ進む。
ステップS5003では、再生制御部4735は2Dクリップ情報ファイルのエントリ・マップを参照して、PTS#1、#2に対応するファイル2D内のSPN#1、#2を検索する。SUB_PIの示すPTSの対も同様にSPNの対に変換される。その後、処理はステップS5004へ進む。
ステップS5004では、再生制御部4735は、SPN#1、#2から、それぞれに対応するセクタ数を算定する。具体的には、再生制御部4735はまず、SPN#1、#2のそれぞれとソースパケット一つ当たりのデータ量192バイトとの積を求める。再生制御部4735は次に、各積をセクタ一つ当たりのデータ量2048バイトで割ってその商を求める:N1=SPN#1×192/2048、N2=SPN#2×192/2048。商N1、N2は、メインTSのうち、SPN#1、#2のそれぞれが割り当てられたソースパケットよりも前の部分が記録されたセクタの総数に等しい。SUB_PIの示すPTSの対から変換されたSPNの対も同様にセクタ数の対に変換される。その後、処理はステップS5005へ進む。
ステップS5005では、再生制御部4735は、ステップS5004で得られたセクタ数N1、N2のそれぞれから、再生対象の2Dエクステント群の先端と後端とのLBNを特定する。具体的には、再生制御部4735は、再生対象のファイル2Dのファイル・エントリを参照して、2Dエクステント群が記録されたセクタ群の先頭から数えて(N1+1)番目のセクタのLBN=LBN#1と、(N2+1)番目のセクタのLBN=LBN#2とを特定する。再生制御部4735は更に、LBN#1からLBN#2までの範囲をBD−ROMドライブ4701に指定する。SUB_PIの示すPTSの対から変換されたセクタ数の対も同様にLBNの対に変換されて、BD−ROMドライブ4701に指定される。その結果、指定された範囲のセクタ群から、2Dエクステント群に属するソースパケット群がアラインド・ユニット単位で読み出される。その後、処理はステップS5006へ進む。
ステップS5006では、再生制御部4735は、メインパスに未処理のPIが残されているか否かをチェックする。残されているときは、処理がステップS5001から繰り返される。残されていないときは、処理が終了する。
<システム・ターゲット・デコーダ>
図51は、システム・ターゲット・デコーダ4723の機能ブロック図である。図51を参照するに、システム・ターゲット・デコーダ4723は、ソース・デパケタイザ5110、ATCカウンタ5120、第1の27MHzクロック5130、PIDフィルタ5140、STCカウンタ(STC1)5150、第2の27MHzクロック5160、主映像デコーダ5170、副映像デコーダ5171、PGデコーダ5172、IGデコーダ5173、主音声デコーダ5174、副音声デコーダ5175、イメージ・プロセッサ5180、主映像プレーン・メモリ5190、副映像プレーン・メモリ5191、PGプレーン・メモリ5192、IGプレーン・メモリ5193、イメージ・プレーン・メモリ5194、及び音声ミキサ5195を含む。
ソース・デパケタイザ5110はリード・バッファ4721からソースパケットを読み出し、その中からTSパケットを取り出してPIDフィルタ5140へ送出する。ソース・デパケタイザ5110は更にその送出時刻を、各ソースパケットのATSの示す時刻に合わせる。具体的には、ソース・デパケタイザ5110はまず、ATCカウンタ5120が生成するATCの値を監視する。ここで、ATCの値はATCカウンタ5120により、第1の27MHzクロック5130のクロック信号のパルスに応じてインクリメントされる。ソース・デパケタイザ5110は次に、ATCの値がソースパケットのATSと一致した瞬間、そのソースパケットから取り出されたTSパケットをPIDフィルタ5140へ転送する。そのような送出時刻の調節により、ソース・デパケタイザ5110からPIDフィルタ5140へのTSパケットの平均転送速度は、図32に示されている2Dクリップ情報ファイル1031内のシステム・レート3211で規定される値RTSを超えない。
PIDフィルタ5140はまず、ソース・デパケタイザ5110から送出されたTSパケットの含むPIDを監視する。そのPIDが、再生制御部4735から予め指定されたPIDに一致したとき、PIDフィルタ5140はそのTSパケットを選択し、そのPIDの示すエレメンタリ・ストリームの復号に適したデコーダ5170−5175へ転送する。例えばPIDが0x1011であるとき、そのTSパケットは主映像デコーダ5170へ転送される。一方、PIDが、0x1B00−0x1B1F、0x1100−0x111F、0x1A00−0x1A1F、0x1200−0x121F、及び0x1400−0x141Fの各範囲に属するとき、TSパケットはそれぞれ、副映像デコーダ5171、主音声デコーダ5174、副音声デコーダ5175、PGデコーダ5172、及びIGデコーダ5173へ転送される。
PIDフィルタ5140は更に、各TSパケットのPIDを利用してそのTSパケットの中からPCRを検出する。PIDフィルタ5140はそのとき、STCカウンタ5150の値を所定値に設定する。ここで、STCカウンタ5150の値は、第2の27MHzクロック5160のクロック信号のパルスに応じてインクリメントされる。また、STCカウンタ5150に設定されるべき値は予め、再生制御部4735からPIDフィルタ5140に指示されている。各デコーダ5170−5175はSTCカウンタ5150の値をSTCとして利用する。具体的には、各デコーダ5170−5175はまず、PIDフィルタ5140から受け取ったTSパケットをPESパケットに再構成する。各デコーダ5170−5175は次に、そのPESペイロードの含むデータの復号処理の時期を、そのPESヘッダに含まれるPTS又はDTSの示す時刻に従って調節する。
主映像デコーダ5170は、図51に示されているように、トランスポート・ストリーム・バッファ(TB:Transport Stream Buffer)5101、多重化バッファ(MB:Multiplexing Buffer)5102、エレメンタリ・ストリーム・バッファ(EB:Elementary Stream Buffer)5103、圧縮映像デコーダ(DEC)5104、及び復号ピクチャ・バッファ(DPB:Decoded PictureBuffer)5105を含む。
TB5101、MB5102、及びEB5103はいずれもバッファ・メモリであり、それぞれ主映像デコーダ5170に内蔵のメモリ素子の一領域を利用する。その他に、それらのいずれか又は全てが異なるメモリ素子に分離されていてもよい。TB5101は、PIDフィルタ5140から受信されたTSパケットをそのまま蓄積する。MB5102は、TB5101に蓄積されたTSパケットから復元されたPESパケットを蓄積する。尚、TB5101からMB5102へTSパケットが転送されるとき、そのTSパケットからTSヘッダが除去される。EB5103はPESパケットから、符号化されたVAUを抽出して格納する。そのVAUには圧縮ピクチャ、すなわち、Iピクチャ、Bピクチャ、及びPピクチャが格納されている。尚、MB5102からEB5103へデータが転送されるとき、そのPESパケットからPESヘッダが除去される。
DEC5104は、圧縮ピクチャの復号処理に特化したハードウェア・デコーダであり、特にその復号処理のアクセラレータ機能を備えたLSIで構成されている。DEC5104は、EB5103内の各VAUからピクチャを、元のPESパケットに含まれるDTSの示す時刻に復号する。その復号処理では、DEC5104は予めそのVAUのヘッダを解析して、そのVAU内に格納された圧縮ピクチャの圧縮符号化方式とストリーム属性とを特定し、それらに依って復号方法を選択する。その圧縮符号化方式は、例えば、MPEG−2、MPEG−4 AVC、及びVC1を含む。DEC5104は更に、復号された非圧縮のピクチャをDPB5105へ転送する。
DPB5105は、TB5101、MB5102、及びEB5103と同様なバッファ・メモリであり、主映像デコーダ5170に内蔵のメモリ素子の一領域を利用する。DPB5105はその他に、他のバッファ・メモリ5101、5102、5103とは異なるメモリ素子に分離されていてもよい。DPB5105は復号後のピクチャを一時的に保持する。DEC5104によってPピクチャ又はBピクチャが復号されるとき、DPB5105はDEC5104からの指示に応じて、保持している復号後のピクチャから参照ピクチャを検索してDEC5104に提供する。DPB5105は更に、保持している各ピクチャを、元のPESパケットに含まれるPTSの示す時刻に主映像プレーン・メモリ5190へ書き込む。
副映像デコーダ5171は主映像デコーダ5170と同様の構成を含む。副映像デコーダ5171はまず、PIDフィルタ5140から受信されたセカンダリ・ビデオ・ストリームのTSパケットを非圧縮のピクチャに復号する。副映像デコーダ5171は次に、そのPESパケットに含まれるPTSの示す時刻に非圧縮のピクチャを副映像プレーン・メモリ5191へ書き込む。
PGデコーダ5172は、PIDフィルタ5140から受信されたTSパケットを非圧縮のグラフィックス・オブジェクトに復号し、そのPESパケットに含まれるPTSの示す時刻にPGプレーン・メモリ5192へ書き込む。その書き込み処理の詳細については後述する。
IGデコーダ5173は、PIDフィルタ5140から受信されたTSパケットを非圧縮のグラフィックス・オブジェクトに復号する。IGデコーダ5173は更に、それらのTSパケットから復元されたPESパケットに含まれるPTSの示す時刻に、その非圧縮のグラフィックス・オブジェクトをIGプレーン・メモリ5193へ書き込む。それらの処理の詳細は、PGデコーダ5172によるものと同様である。
主音声デコーダ5174はまず、PIDフィルタ5140から受信されたTSパケットを内蔵のバッファに蓄える。主音声デコーダ5174は次に、そのバッファ内のTSパケット群からTSヘッダとPESヘッダとを除去し、残りのデータを非圧縮のLPCM音声データに復号する。主音声デコーダ5174は更にその音声データを、元のPESパケットに含まれるPTSの示す時刻に音声ミキサ5195へ送出する。ここで、主音声デコーダ5174は、TSパケットに含まれるプライマリ・オーディオ・ストリームの圧縮符号化方式及びストリーム属性に依って圧縮音声データの復号方法を選択する。その圧縮符号化方式は例えばAC−3又はDTSを含む。
副音声デコーダ5175は主音声デコーダ5174と同様の構成を含む。副音声デコーダ5175はまず、PIDフィルタ5140から受信されたセカンダリ・オーディオ・ストリームのTSパケット群からPESパケットを復元し、そのPESペイロードの含むデータを非圧縮のLPCM音声データに復号する。副音声デコーダ5175は次に、そのPESヘッダの含むPTSの示す時刻にその非圧縮のLPCM音声データを音声ミキサ5195へ送出する。ここで、副音声デコーダ5175は、TSパケットに含まれるセカンダリ・オーディオ・ストリームの圧縮符号化方式及びストリーム属性に依って圧縮音声データの復号方法を選択する。その圧縮符号化方式は例えばドルビー・デジタル・プラス又はDTS−HD LBRを含む。
音声ミキサ5195は、主音声デコーダ5174と副音声デコーダ5175とのそれぞれから非圧縮の音声データを受信し、それらを用いてミキシングを行う。音声ミキサ5195は更に、そのミキシングで得られた合成音を表示装置103の内蔵スピーカ103A等へ送出する。
イメージ・プロセッサ5180は、プログラム実行部4734からグラフィックス・データ、すなわちPNG又はJPEGのラスタ・データを受信する。イメージ・プロセッサ5180はそのとき、そのグラフィックス・データに対するレンダリング処理を行ってイメージ・プレーン・メモリ5194へ書き込む。
≪PGデコーダによる復号処理≫
図52の(a)は、PGデコーダ5172がPGストリーム内の一つのデータ・エントリからグラフィックス・オブジェクトを復号する処理のフローチャートである。この処理は、PGデコーダ5172がPIDフィルタ5140から、図14に示されている一つのデータ・エントリを構成するTSパケット群を受信したときに開始される。図52の(b)−(e)は、図52の(a)に示されている処理に従って変化するグラフィックス・オブジェクトを示す模式図である。
ステップS5201では、PGデコーダ5172はまず、PCS内の参照オブジェクトID1405と同じオブジェクトIDを持つODSを特定する。PGデコーダ5172は次に、特定されたODSからグラフィックス・オブジェクトを復号してオブジェクト・バッファに書き込む。ここで、「オブジェクト・バッファ」は、PGデコーダ5172に内蔵のバッファ・メモリである。図52の(b)に示されている「ニコちゃんマーク」FOBは、オブジェクト・バッファに書き込まれたグラフィックス・オブジェクトの例を示す。
ステップS5202では、PGデコーダ5172はPCS内のクロッピング情報1402に従ってクロッピング処理を行い、グラフィックス・オブジェクトからその一部を切り出して、オブジェクト・バッファに書き込む。図52の(c)では、ニコちゃんマークFOBの左右の両端部から帯状領域LST、RSTが切り取られて、残りの部分OBJがオブジェクト・バッファに書き込まれている。
ステップS5203では、PGデコーダ5172はまず、PCS内の参照ウィンドウID1403と同じウィンドウIDを持つWDSを特定する。PGデコーダ5172は次に、特定されたWDSの示すウィンドウ位置1412と、PCS内のオブジェクト表示位置1401とから、グラフィックス・プレーンにおけるグラフィックス・オブジェクトの表示位置を決定する。図52の(d)では、グラフィックス・プレーンGPLにおけるウィンドウWINの左上隅の位置と、グラフィックス・オブジェクトOBJの左上隅の位置DSPとが決定される。
ステップS5204では、PGデコーダ5172はオブジェクト・バッファ内のグラフィックス・オブジェクトを、ステップS5203で決定された表示位置に書き込む。その際、PGデコーダ5172は、WDSの示すウィンドウ・サイズ1413を利用して、グラフィックス・オブジェクトを描画する範囲を決める。図52の(d)では、グラフィックス・オブジェクトOBJがグラフィックス・プレーンGPLに、左上隅の位置DSPからウィンドウWINの範囲内で書き込まれている。
ステップS5205では、PGデコーダ5172はまず、PCS内の参照パレットID1404と同じパレットIDを持つPDSを特定する。PGデコーダ5172は次に、PDS内のCLUT1422を利用して、グラフィックス・オブジェクト内の各画素データが示すべき色座標値を決定する。図52の(e)では、グラフィックス・オブジェクトOBJ内の各画素の色が決定されている。こうして、一つのデータ・エントリの含むグラフィックス・オブジェクトの描画処理が完了する。ステップS5201−S5205は、そのグラフィックス・オブジェクトと同じPESパケットに含まれるPTSの示す時刻までに実行される。
<HDMI通信部>
図53は、HDMI通信部4725の構成を示す機能ブロック図である。HDMI通信部4725はHDMIケーブル122で表示装置103、特に図3に示されているHDMI通信部211に接続されている。それにより、HDMI通信部4725は、システム・ターゲット・デコーダ4723とプレーン加算部4724とのそれぞれから表示装置103へ送出されるストリーム・データを中継する。HDMI通信部4725は更に、再生制御部4735と表示装置103との間でのデータ交換を中継する。図53を参照するに、HDMI通信部4725は、TMDSエンコーダ5301、EDID読み出し部5302、及びCEC部5303を含む。
TMDSエンコーダ5301は、HDMIケーブル122内のTMDSチャネルCH1、CH2、CH3、CLKを通して表示装置103へ、映像データ、音声データ、補助データ、及び制御信号を表すシリアル信号を送信する。TMDSエンコーダ5301は特に、各データ・チャネルCH1−3を通して、例えば、R、G、Bの各ピクセル・データ(8ビット)、4ビットの音声データと補助データ(インフォ・フレーム)、及び2ビットの制御信号(水平同期信号と垂直同期信号とを含む)をそれぞれ、10ビットのデータ列に変換して送出する。TMDSエンコーダ5301は特にそのシリアル信号を、図5の(a)に示されているフォーマットで生成する。TMDSエンコーダ5301は更に各映像プレーンを1/24秒間隔で送出する。
EDID読み出し部5302は、HDMIケーブル122内のディスプレイ・データ・チャネルDDCを通して図3に示されているEDID記憶部302に接続されている。EDID読み出し部5302はEDID記憶部302から、表示装置103の機能、特性、状態を表すEDIDを読み出す。EDID読み出し部5302はその他に、図3に示されている信号処理部220との間で、ディスプレイ・データ・チャネルDDCを通してHDCP認証を行う。
CEC部5303は、HDMIケーブル122内のCECラインCECを通して、図3に示されているCEC部303との間でCECメッセージを交換する。CEC部5303は特に、再生装置102がリモコン105から受けた情報をCECメッセージに変換して信号処理部220へ通知し、又は逆に、表示装置103がリモコン105から受けた情報をCECメッセージとして信号処理部220から通知される。
<3D再生装置の構成>
3D再生モードの再生装置102は、BD−ROMディスク101から3D映像コンテンツを再生するとき、3D再生装置として動作する。その構成の基本部分は、図47、51、53に示されている2D再生装置の構成と同様である。従って、以下では2D再生装置の構成からの拡張部分及び変更部分について説明し、基本部分の詳細についての説明は上記の2D再生装置についての説明を援用する。また、2Dプレイリスト再生処理に利用される構成は2D再生装置の構成と同様である。従って、その詳細についての説明も上記の2D再生装置についての説明を援用する。以下の説明では、3Dプレイリスト・ファイルに従った3D映像の再生処理、すなわち3Dプレイリスト再生処理を想定する。
図54は、3D再生装置5400の機能ブロック図である。3D再生装置5400は、BD−ROMドライブ5401、再生部5402、及び制御部5403を含む。再生部5402は、スイッチ5420、第1リード・バッファ(RB1)5421、第2リード・バッファ(RB2)5422、システム・ターゲット・デコーダ5423、プレーン加算部5424、及びHDMI通信部5425を含む。制御部5403は、動的シナリオ・メモリ5431、静的シナリオ・メモリ5432、ユーザイベント処理部5433、プログラム実行部5434、再生制御部5435、及び、プレーヤ変数記憶部5436を含む。再生部5402と制御部5403とは互いに異なる集積回路に実装されている。その他に、両者が単一の集積回路に統合されていてもよい。特に、動的シナリオ・メモリ5431、静的シナリオ・メモリ5432、ユーザイベント処理部5433、及びプログラム実行部5434は、図47に示されている2D再生装置内のものと同様である。従って、それらの詳細についての説明は上記の2D再生装置についての説明を援用する。
再生制御部5435は、3Dプレイリスト再生処理をプログラム実行部5434等から命じられたとき、静的シナリオ・メモリ5432に格納された3Dプレイリスト・ファイルからPIを順番に読み出してカレントPIとして設定する。再生制御部5435は、カレントPIを設定する度に、まず、そのSTNテーブルとその3Dプレイリスト・ファイル内のSTNテーブルSSとに従って、システム・ターゲット・デコーダ5423とプレーン加算部5424との動作条件を設定する。具体的には、再生制御部5435は復号対象のエレメンタリ・ストリームのPIDを選択して、そのエレメンタリ・ストリームの復号に必要な属性情報と共にシステム・ターゲット・デコーダ5423へ渡す。選択されたPIDの示すエレメンタリ・ストリームの中にPGストリーム又はIGストリームが含まれている場合、再生制御部5435は更に、それらのストリーム・データに割り当てられた参照オフセットID4201を特定して、プレーヤ変数記憶部5436内のSPRM(27)に設定する。また、再生制御部5435は、STNテーブルSSの示すポップアップ期間のオフセット4311に依って各プレーン・データの表示モードを選択し、システム・ターゲット・デコーダ5423とプレーン加算部5424とに指示する。
次に、再生制御部5435はカレントPIに従い、図34の(e)の説明に示されている手順で、読み出し対象のエクステントSSが記録されたセクタ群のLBNの範囲をBD−ROMドライブ5401に指示する。一方、再生制御部5435は、静的シナリオ・メモリ5432に格納されたクリップ情報ファイル内のエクステント起点を利用して、各エクステントSS内のデータ・ブロックの境界を示す情報を生成する。以下、その情報を「データ・ブロック境界情報」と呼ぶ。データ・ブロック境界情報は、例えばそのエクステントSSの先頭から各境界までのソースパケット数を示す。再生制御部5435は更に、データ・ブロック境界情報をスイッチ5420へ渡す。
プレーヤ変数記憶部5436は、2D再生装置内のもの4736と同様にSPRMを含む。しかし、図48とは異なり、SPRM(24)は、図46に示されている第1フラグを含み、SPRM(25)は第2フラグを含む。SPRM(24)が“0”であるときは再生装置102が2D映像の再生のみに対応可能であり、“1”であるときは3D映像の再生にも対応可能である。SPRM(25)が、“0”、“1”、“2”であるときはそれぞれ、再生装置102が、L/Rモード、デプス・モード、2D再生モードである。SPRM(27)は、各プレーン・データに割り当てられた参照オフセットID4201の格納領域を含む。具体的には、SPRM(27)は、四種類の参照オフセットIDを格納する領域を含む。それらの参照オフセットIDは、PGプレーンに対するもの(PG_ref_offset_id)、IGプレーンに対するもの(IG_ref_offset_id)、副映像プレーンに対するもの(SV_ref_offset_id)、及びイメージ・プレーンに対するもの(IM_ref_offset_id)である。
BD−ROMドライブ5401は、図47に示されている2D再生装置内のもの4701と同様な構成要素を含む。BD−ROMドライブ5401は、再生制御部5435からLBNの範囲が指示されたとき、その範囲の示すBD−ROMディスク101上のセクタ群からデータを読み出す。特にファイルSSのエクステント、すなわちエクステントSSに属するソースパケット群は、BD−ROMドライブ5401からスイッチ5420へ転送される。ここで、各エクステントSSは、図23に示されているとおり、ベースビューとディペンデントビューとのデータ・ブロックの対を一つ以上含む。それらのデータ・ブロックは、RB15421とRB25422とへパラレルに転送されなければならない。従って、BD−ROMドライブ5401には2D再生装置内のBD−ROMドライブ4701以上のアクセス・スピードが求められる。
スイッチ5420はBD−ROMドライブ5401からエクステントSSを受信する。一方、スイッチ5420は再生制御部5435から、そのエクステントSSに関するデータ・ブロック境界情報を受信する。スイッチ5420は更に、そのデータ・ブロック境界情報を利用して、各エクステントSSからベースビュー・エクステントを抽出してRB15421へ送出し、ディペンデントビュー・エクステントを抽出してRB25422へ送出する。
RB15421とRB25422とはいずれも、再生部5402内のメモリ素子を利用したバッファ・メモリである。特に単一のメモリ素子内の異なる領域がRB15421、RB25422として利用される。その他に、異なるメモリ素子が個別にRB15421、RB25422として利用されてもよい。RB15421、RB25422はスイッチ5420からそれぞれ、ベースビュー・エクステント、ディペンデントビュー・エクステントを受信して格納する。
システム・ターゲット・デコーダ5423は、3Dプレイリスト再生処理において、まず再生制御部5435から、復号対象のストリーム・データのPIDと、その復号に必要な属性情報とを受信する。システム・ターゲット・デコーダ5423は次に、RB15421に格納されたベースビュー・エクステントと、RB25422に格納されたディペンデントビュー・エクステントとから交互にソースパケットを読み出す。システム・ターゲット・デコーダ5423は続いて、再生制御部5435から受信されたPIDの示すエレメンタリ・ストリームを各ソースパケットから分離して復号する。システム・ターゲット・デコーダ5423は更に、復号後のエレメンタリ・ストリームをその種類別に内蔵のプレーン・メモリに書き込む。ベースビュー・ビデオ・ストリームは左映像プレーン・メモリに書き込まれ、ディペンデントビュー・ビデオ・ストリームは右映像プレーン・メモリに書き込まれる。一方、セカンダリ・ビデオ・ストリームは副映像プレーン・メモリに書き込まれ、IGストリームはIGプレーン・メモリに書き込まれ、PGストリームはPGプレーン・メモリに書き込まれる。ここで、図11の(b)、(c)に示されているPGストリーム等のように、ビデオ・ストリーム以外のストリーム・データがベースビューとディペンデントビューとのストリーム・データの対から成るとき、そのストリーム・データに対応付けられるべきプレーン・メモリは、ベースビュー・プレーンとディペンデントビュー・プレーンとの両方に対して個別に用意される。システム・ターゲット・デコーダ5423はその他に、プログラム実行部5434からのグラフィックス・データ、例えばJPEG又はPNG等のラスタ・データに対してレンダリング処理を行ってイメージ・プレーン・メモリに書き込む。
システム・ターゲット・デコーダ5423は、左映像プレーン・メモリと右映像プレーン・メモリとからのプレーン・データの出力モードを、B−D表示モードとB−B表示モードとのそれぞれに、次のように対応させる。再生制御部5435からB−D表示モードが指示されたとき、システム・ターゲット・デコーダ5423は、左映像プレーン・メモリと右映像プレーン・メモリとから交互にプレーン・データを送出する。システム・ターゲット・デコーダ5423は特にレフトビュー・プレーンとライトビュー・プレーンとをそれぞれ、1/48秒間隔でプレーン加算部5424へ送出する。一方、再生制御部5435からB−B表示モードが指示されたとき、システム・ターゲット・デコーダ5423は、動作モードを3D再生モードに維持したまま、左映像プレーン・メモリと右映像プレーン・メモリとのいずれかからのみ、プレーン・データを一フレーム当たり二回ずつ、すなわち1/48秒間隔で二回ずつ送出する。
システム・ターゲット・デコーダ5423は、グラフィックス・プレーン・メモリと副映像プレーン・メモリとからのプレーン・データの出力モードを、2プレーン・モード、1プレーン+オフセット・モード、及び1プレーン+ゼロ・オフセット・モードのそれぞれに、以下に述べるように対応させる。ここで、グラフィックス・プレーン・メモリは、PGプレーン・メモリ、IGプレーン・メモリ、及びイメージ・プレーン・メモリを含む。
再生制御部5435から2プレーン・モードが指示されたとき、システム・ターゲット・デコーダ5423は、各プレーン・メモリからプレーン加算部5424へ、ベースビュー・プレーンとディペンデントビュー・プレーンとを交互に送出する。
再生制御部5435から1プレーン+オフセット・モードが指示されたとき、システム・ターゲット・デコーダ5423は、各プレーン・メモリからプレーン加算部5424へ、2D映像を表すプレーン・データを送出する。それと並行して、システム・ターゲット・デコーダ5423は、ディペンデントビュー・ビデオ・ストリームから各ビデオ・シーケンスの先頭のVAUを読み出す度に、そのVAUからオフセット・メタデータ1910を読み出す。そのビデオ・シーケンスの再生区間では、システム・ターゲット・デコーダ5423はまず、各VAUと共に同じPESパケットに格納されたPTSと、そのVAUの圧縮ピクチャ・データの表すフレームの番号とを特定する。システム・ターゲット・デコーダ5423は次に、そのフレーム番号に対応付けられたオフセット情報をオフセット・メタデータから読み出して、特定されたPTSの示す時刻にプレーン加算部5424へ送出する。
再生制御部5435から1プレーン+ゼロ・オフセット・モードが指示されたとき、システム・ターゲット・デコーダ5423は、各プレーン・メモリからプレーン加算部5424へ、2D映像を表すプレーン・データを送出する。それと並行して、システム・ターゲット・デコーダ5423は、オフセット値が“0”に設定されたオフセット情報をプレーン加算部5424へ送出する。
プレーン加算部5424は、システム・ターゲット・デコーダ5423から各種のプレーン・データを受信し、それらを互いに重畳して一つのプレーン・データ(フレーム又はフィールド)に合成する。特にL/Rモードでは、左映像プレーンはレフトビュー・ビデオ・プレーンを表し、右映像プレーンはライトビュー・ビデオ・プレーンを表す。従って、プレーン加算部5424は、左映像プレーンには、レフトビューを表す他のプレーン・データを重畳し、右映像プレーン・データには、ライトビューを表す他のプレーン・データを重畳する。一方、デプス・モードでは、右映像プレーンは、左映像プレーンの表す映像に対するデプスマップを表す。従って、プレーン加算部5424は、まず両方の映像プレーンからレフトビューとライトビューとのビデオ・プレーンの対を生成する。その後の合成処理は、L/Rモードでの合成処理と同様である。
プレーン加算部5424は、再生制御部5435から副映像プレーン又はグラフィックス・プレーン(PGプレーン、IGプレーン、イメージ・プレーン)の表示モードとして1プレーン+オフセット・モードを指示されたとき、そのプレーン・データに対してオフセット制御を行う。具体的には、プレーン加算部5424はまず、プレーヤ変数記憶部5436内のSPRM(27)から、そのプレーン・データに対する参照オフセットIDを読み出す。プレーン加算部5424は次に、システム・ターゲット・デコーダ5423から受け取ったオフセット情報を参照して、参照オフセットIDの示すオフセット・シーケンス1913に属するオフセット情報、すなわちオフセット方向1922とオフセット値1923との対を検索する。プレーン加算部5424はその後、検索されたオフセット値を利用して、対応するプレーン・データに対してオフセット制御を行う。それにより、プレーン加算部5424は、一つのプレーン・データからレフトビュー・プレーンとライトビュー・プレーンとの対を生成し、対応するビデオ・プレーンに合成する。
プレーン加算部5424は、再生制御部5435から1プレーン+ゼロ・オフセット・モードを指示されたとき、SPRM(27)を参照することなく、各プレーン・データに対するオフセット値を“0”に設定する。それにより、プレーン加算部5424は、各プレーン・データに対するオフセット制御を一時的に停止させる。従って、同じプレーン・データがレフトビュー・ビデオ・プレーンとライトビュー・ビデオ・プレーンとの両方に合成される。
プレーン加算部5424は、再生制御部5435から2プレーン・モードを指示されたとき、システム・ターゲット・デコーダ5423からベースビュー・プレーンとディペンデントビュー・プレーンとの対を受信する。ここで、L/Rモードでは、ベースビュー・プレーンはレフトビュー・プレーンを表し、ディペンデントビュー・プレーンはライトビュー・プレーンを表す。従って、プレーン加算部5424は、ベースビュー・プレーンを左映像プレーンに重畳し、ディペンデントビュー・プレーンを右映像プレーンに重畳する。一方、デプス・モードでは、ディペンデントビュー・プレーンは、ベースビュー・プレーンの表す映像に対するデプスマップを表す。従って、プレーン加算部5424は、まずベースビュー・プレーンとディペンデントビュー・プレーンとの対からレフトビュー・プレーンとライトビュー・プレーンとの対を生成し、その後、ビデオ・プレーンとの合成処理を行う。
プレーン加算部5424はその他に、合成後のプレーン・データの出力形式を、表示装置103等、そのデータの出力先の装置による3D映像の表示方式に合わせて変換する。例えば出力先の装置が継時分離方式を利用するとき、プレーン加算部5424は合成後のプレーン・データを一つの映像プレーン(フレーム又はフィールド)として送出する。その場合、プレーン加算部5424はその合成後のレフトビュー・プレーンとライトビュー・プレーンとをそれぞれ、1/48秒間隔で交互にHDMI通信部5425へ送出する。一方、出力先の装置がレンチキュラー・レンズを利用するとき、プレーン加算部5424は内蔵のバッファ・メモリを利用して、レフトビュー・プレーンとライトビュー・プレーンとの対を一つの映像プレーンに合成して送出する。具体的には、プレーン加算部5424は、先に合成されたレフトビュー・プレーンを一旦、そのバッファ・メモリに格納して保持する。プレーン加算部5424は続いて、ライトビュー・プレーンを合成して、バッファ・メモリに保持されたレフトビュー・プレーンと更に合成する。その合成では、レフトビュー・プレーンとライトビュー・プレーンとがそれぞれ、縦方向に細長い短冊形の小領域に分割され、各小領域が一つのフレーム又はフィールドの中に横方向に交互に並べられて一つのフレーム又はフィールドに再構成される。こうして、レフトビュー・プレーンとライトビュー・プレーンとの対が一つの映像プレーンに合成される。その場合、プレーン加算部5424はその合成後の映像プレーンを1/24秒間隔でHDMI通信部5425へ送出する。
HDMI通信部5425は、プレーン加算部5424からは合成後の映像データを受信し、システム・ターゲット・デコーダ5423からは音声データを受信し、再生制御部5435からは制御データを受信する。HDMI通信部5425は更に、それらの受信データをHDMI方式のシリアル信号に変換し、HDMIケーブル122内のTMDSチャネルを通して表示装置103へ伝送する。HDMI通信部5425は特にそのシリアル信号を、図5の(a)に示されているフォーマットで生成する。そのとき、一つの3D映像のフレームを構成するレフトビュー・プレーンLとライトビュー・プレーンRとの対は、図5の(b)に示されているサイド・バイ・サイド方式で、図5の(a)に示されている一つの有効表示領域VACT×HACT内に配置される。その他に、各対が図5の(c)−(e)のいずれの方式で有効表示領域VACT×HACT内に配置されてもよい。いずれの方式でも、HDMI通信部5425はレフトビュー・プレーンとライトビュー・プレーンとをそれぞれ、1/24秒間隔で送出する。一方、HDMI通信部5425はHDMIケーブル122を通して表示装置103との間でCECメッセージを交換する。また、HDMI通信部5425は、ディスプレイ・データ・チャネルDDCを通してEDIDを表示装置103から読み出し、更に、表示装置103に対してHDCP認証を行って、3D映像の再生に対応可能か否かを表示装置103に問い合わせる。
<3D再生装置の再生動作>
図55は、図54に示されている3D再生装置5400の再生動作のフローチャートである。この動作は、再生装置102が、図46に示されている選択処理の結果、3D再生モードで起動することによって開始される。
ステップS5501では、3D再生装置5400はまず、BD−ROMドライブ5401によってBD−ROMディスク101からストリーム・データを読み出す。3D再生装置5400は次にスイッチ5420を利用して、そのストリーム・データからベースビュー・エクステントとディペンデントビュー・エクステントとを抽出し、それぞれ、RB15421、RB25422へ格納する。その後、処理はステップS5502へ進む。
ステップS5502では、3D再生装置5400は、システム・ターゲット・デコーダ5423によって、RB15421からはベースビュー・エクステントを読み出し、RB25422からはディペンデントビュー・エクステントを読み出す。3D再生装置5400は更に、各エクステントからエレメンタリ・ストリームを多重分離する。その後、処理はステップS5503へ進む。
ステップS5503では、3D再生装置5400は、システム・ターゲット・デコーダ5423によって各エレメンタリ・ストリームを復号する。特に、ベースビュー・エクステントとディペンデントビュー・エクステントとのそれぞれから復号されたプライマリ・ビデオ・ストリームは、ベースビュー・ビデオ・プレーンとディペンデントビュー・ビデオ・プレーンとに復号される。セカンダリ・ビデオ・ストリーム、IGストリーム、及びPGストリームはそれぞれ、副映像プレーン、IGプレーン、及びPGプレーンに復号される。更に、プライマリ・オーディオ・ストリームとセカンダリ・オーディオ・ストリームとがミキシングされる。その他に、プログラム実行部5434からのグラフィックス・データがイメージ・プレーンに変換される。その後、処理はステップS5504へ進む。
ステップS5504では、3D再生装置5400はまず、システム・ターゲット・デコーダ5423によって復号されたベースビュー・ビデオ・プレーンとディペンデントビュー・ビデオ・プレーンとの対を、プレーン加算部5424によってレフトビュー・プレーンとライトビュー・プレーンとの対に変換する。3D再生装置5400は次に、副映像プレーン、IGプレーン、PGプレーン、及びイメージ・プレーンを、プレーン加算部5424によってレフトビュー・プレーンとライトビュー・プレーンとのそれぞれに合成する。ここで、プレーン加算部5424は必要に応じて、副映像プレーン、IGプレーン、PGプレーン、又はイメージ・プレーンにオフセットを与えて、レフトビュー・プレーンとライトビュー・プレーンとの対に変換する。その後、処理はステップS5505へ進む。
ステップS5505では、3D再生装置5400は、プレーン加算部5424によって合成された映像プレーン、システム・ターゲット・デコーダ5423によってミキシングされた音声データ、及び再生制御部5435からの制御データを、HDMI通信部5425によってシリアル信号に変換し、HDMIケーブル122を通して表示装置103へ伝送する。特にそのシリアル信号は、図5の(a)に示されているフォーマットで生成される。そのとき、レフトビュー・プレーンLとライトビュー・プレーンRとの対は、図5の(b)に示されているサイド・バイ・サイド方式で有効表示領域VACT×HACT内に配置される。その他に、各対が図5の(c)−(e)のいずれの方式で有効表示領域VACT×HACT内に配置されてもよい。いずれの方式でも、レフトビュー・プレーンとライトビュー・プレーンとはそれぞれ、1/24秒間隔で送出される。その後、処理はステップS5506へ進む。
ステップS5506では、3D再生装置5400は、RB15421に未処理のベースビュー・エクステントが残されているか否かをチェックする。残されているときは、処理がステップS5501から繰り返される。残されていないときは、処理が終了する。
<3Dプレイリスト再生処理>
図56は、再生制御部5435による3Dプレイリスト再生処理のフローチャートである。3Dプレイリスト再生処理は、再生制御部5435が静的シナリオ・メモリ5432から3Dプレイリスト・ファイルを読み出すことによって開始される。
ステップS5601では、再生制御部5435はまず、3Dプレイリスト・ファイル内のメインパスからPIを一つ読み出して、カレントのPIとして設定する。再生制御部5435は次に、カレントPIのSTNテーブルから再生対象のエレメンタリ・ストリームのPIDを選択し、かつ、それらの復号に必要な属性情報を特定する。再生制御部5435は更に、3Dプレイリスト・ファイル内のSTNテーブルSS4130のうち、カレントPIに対応するものから、再生対象のエレメンタリ・ストリームとして追加されるべきもののPIDを選択し、かつ、それらの復号に必要な属性情報を特定する。選択されたPIDと属性情報とはシステム・ターゲット・デコーダ5423に指示される。再生制御部5435はその他に、3Dプレイリスト・ファイル内のサブパスから、カレントPIと同時に参照されるべきSUB_PIを特定し、カレントのSUB_PIとして設定する。その後、処理はステップS5602へ進む。
ステップS5602では、再生制御部5435は、STNテーブルSSの示すポップアップ期間のオフセット4311に依って各プレーン・データの表示モードを選択し、システム・ターゲット・デコーダ5423とプレーン加算部5424とに指示する。特に、ポップアップ期間のオフセットの値が“0”であるとき、ビデオ・プレーンの表示モードとしてB−D表示モードが選択され、グラフィックス・プレーンの表示モードとして2プレーン・モード又は1プレーン+オフセット・モードが選択される。一方、ポップアップ期間のオフセットの値が“1”であるとき、ビデオ・プレーンの表示モードとしてB−B表示モードが選択され、グラフィックス・プレーンの表示モードとして1プレーン+ゼロ・オフセット・モードが選択される。その後、処理はステップS5603へ進む。
ステップS5603では、グラフィックス・プレーンの表示モードとして1プレーン+オフセット・モードが選択されたか否かをチェックする。1プレーン+オフセット・モードが選択された場合、処理はステップS5604へ進む。一方、2プレーン・モード又は1プレーン+ゼロ・オフセット・モードが選択された場合、処理はステップS5605へ進む。
ステップS5604では、1プレーン+オフセット・モードが選択されているので、ディペンデントビュー・ビデオ・ストリームからオフセット情報が抽出されなければならない。従って、再生制御部5435はまず、カレントPIのSTNテーブルを参照して、選択されたPIDの示すエレメンタリ・ストリームの中からPGストリーム又はIGストリームを検出する。再生制御部5435は次に、それらのストリーム・データに割り当てられた参照オフセットIDを特定して、プレーヤ変数記憶部5436内のSPRM(27)に設定する。その後、処理はステップS5605へ進む。
ステップS5605では、再生制御部5435は、カレントのPIとSUB_PIとのそれぞれから、参照クリップ情報、再生開始時刻IN1を示すPTS#1、及び再生終了時刻OUT1を示すPTS#2を読み出す。その参照クリップ情報から、再生対象のファイル2DとファイルDEPとのそれぞれに対応するクリップ情報ファイルが特定される。その後、処理はステップS5606へ進む。
ステップS5606では、再生制御部5435は、ステップS5605で特定されたクリップ情報ファイルの各エントリ・マップを参照して、図44に示されているように、PTS#1、#2に対応するファイル2D内のSPN#1、#2とファイルDEP内のSPN#11、#12とを検索する。再生制御部5435は更に、各クリップ情報ファイルのエクステント起点を利用して、ファイルSSの先頭から再生開始位置までのソースパケット数SPN#21をSPN#1、#11から算定し、ファイルSSの先頭から再生終了位置までのソースパケット数SPN#22をSPN#2、#12から算定する。具体的には、再生制御部5435はまず、2Dクリップ情報ファイルのエクステント起点の示すSPNの中から、SPN#1以下で最大のもの“Am”を検索し、ディペンデントビュー・クリップ情報ファイルのエクステント起点の示すSPNの中から、SPN#11以下で最大のもの“Bm”を検索する。再生制御部5435は続いて、検索されたSPNの和Am+Bmを求めてSPN#21として決定する。再生制御部5435は次に、2Dクリップ情報ファイルのエクステント起点の示すSPNの中から、SPN#2よりも大きく、かつ最小のもの“An”を検索し、ディペンデントビュー・クリップ情報ファイルのエクステント起点の示すSPNの中から、SPN#12より大きく、かつ最小のもの“Bn”を検索する。再生制御部5435は更に、検索されたSPNの和An+Bnを求めてSPN#22として決定する。その後、処理はステップS5607へ進む。
ステップS5607では、再生制御部5435は、ステップS5606で決定されたSPN#21、#22をセクタ数の対N1、N2に変換する。具体的には、再生制御部5435はまず、SPN#21とソースパケット一つ当たりのデータ量192バイトとの積を求める。再生制御部5435は次に、その積をセクタ一つ当たりのデータ量2048バイトで割ったときの商SPN#21×192/2048を求める。この商は、ファイルSSの先頭から再生開始位置の直前までのセクタ数N1に等しい。同様に、再生制御部5435は、SPN#22から商SPN#22×192/2048を求める。この商は、ファイルSSの先頭から再生終了位置の直前までのセクタ数N2に等しい。その後、処理はステップS5608へ進む。
ステップS5608では、再生制御部5435は、ステップS5607で得られたセクタ数N1、N2のそれぞれから、再生対象のエクステントSS群の先端と後端とのLBNを特定する。具体的には、再生制御部5435は、再生対象のファイルSSのファイル・エントリを参照して、エクステントSS群が記録されたセクタ群の先頭から数えて(N1+1)番目のセクタのLBN=LBN#1と、(N2+1)番目のセクタのLBN=LBN#2とを特定する。再生制御部5435は更に、LBN#1からLBN#2までの範囲をBD−ROMドライブ5401に指定する。その結果、指定された範囲のセクタ群から、エクステントSS群に属するソースパケット群がアラインド・ユニット単位で読み出される。その後、処理はステップS5609へ進む。
ステップS5609では、再生制御部5435は、ステップS5606で利用されたクリップ情報ファイルのエクステント起点を再び利用して、エクステントSS群に関するデータ・ブロック境界情報を生成し、スイッチ5420へ送出する。具体的な例として、再生開始位置を示すSPN#21が、各エクステント起点の示すSPNの和An+Bnに等しく、再生終了位置を示すSPN#22が、各エクステント起点の示すSPNの和Am+Bmに等しいときを想定する。そのとき、再生制御部5435は、各エクステント起点からSPNの差の列、A(n+1)−An、B(n+1)−Bn、A(n+2)−A(n+1)、B(n+2)−B(n+1)、…、Am−A(m−1)、Bm−B(m−1)を求めて、データ・ブロック境界情報としてスイッチ5420へ送出する。図34の(e)に示されているとおり、この列は、エクステントSSに含まれる各データ・ブロックのソースパケット数を示す。スイッチ5420は、BD−ROMドライブ5401から受信されるエクステントSSのソースパケット数を0からカウントする。そのカウントが、データ・ブロック境界情報の示すSPNの差と一致する度に、スイッチ5420は、ソースパケットの送出先をRB15421とRB25422との間で切り換え、かつカウントを0にリセットする。その結果、エクステントSSの先頭から{B(n+1)−Bn}個のソースパケットは最初のディペンデントビュー・エクステントとしてRB25422へ送出され、続く{A(n+1)−An}個のソースパケットは最初のベースビュー・エクステントとしてRB15421へ送出される。以降も同様に、スイッチ5420によって受信されるソースパケットの数が、データ・ブロック境界情報の示すSPNの差と一致する度に、エクステントSSからディペンデントビューとベースビューとの各エクステントが交互に抽出される。
ステップS5610では、再生制御部5435は、メインパスに未処理のPIが残されているか否かをチェックする。残されているときは、処理がステップS5601から繰り返される。残されていないときは、処理が終了する。
<システム・ターゲット・デコーダ>
図57は、システム・ターゲット・デコーダ5423の機能ブロック図である。図57に示されている構成要素は、図51に示されている2D再生装置のもの4723とは次の二点で異なる:(1)リード・バッファから各デコーダへの入力系統が二重化されている点、並びに、(2)主映像デコーダは3D再生モードに対応可能であり、副映像デコーダ、PGデコーダ、及びIGデコーダは2プレーン・モードに対応可能である点。すなわち、それらの映像デコーダはいずれも、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとを交互に復号できる。特に2プレーン・モードの各デコーダは、ベースビュー・プレーンを復号する部分と、ディペンデントビュー・プレーンを復号する部分とに分離されていてもよい。一方、主音声デコーダ、副音声デコーダ、音声ミキサ、イメージ・プロセッサ、及び各プレーン・メモリは、図51に示されている2D再生装置のものと同様である。従って、以下では、図57に示されている構成要素のうち、図51に示されているものとは異なるものについて説明し、同様なものの詳細についての説明は図51についての説明を援用する。更に、各映像デコーダはいずれも同様な構造を持つので、以下では主映像デコーダ5715の構造について説明する。同様な説明は他の映像デコーダの構造についても成立する。
第1ソース・デパケタイザ5711は、RB15421からソースパケットを読み出し、更にその中からTSパケットを抽出して第1PIDフィルタ5713へ送出する。第2ソース・デパケタイザ5712は、RB25422からソースパケットを読み出し、更にその中からTSパケットを抽出して第2PIDフィルタ5714へ送出する。各ソース・デパケタイザ5711、5712は更に、各TSパケットの送出時刻を、各ソースパケットのATSの示す時刻に合わせる。その同期方法は、図51に示されているソース・デパケタイザ5110による方法と同様である。従って、その詳細についての説明は図51についての説明を援用する。そのような送出時刻の調節により、第1ソース・デパケタイザ5711から第1PIDフィルタ5713へのTSパケットの平均転送速度RTS1は、2Dクリップ情報ファイルの示すシステム・レートを超えない。同様に、第2ソース・デパケタイザ5712から第2PIDフィルタ5714へのTSパケットの平均転送速度RTS2は、ディペンデントビュー・クリップ情報ファイルの示すシステム・レートを超えない。
第1PIDフィルタ5713は、第1ソース・デパケタイザ5711からTSパケットを受信する度に、そのPIDを選択対象のPIDと比較する。その選択対象のPIDは再生制御部5435によって予め、3Dプレイリスト・ファイル内のSTNテーブルに従って指定されている。両方のPIDが一致したとき、第1PIDフィルタ5713はそのTSパケットを、そのPIDに割り当てられたデコーダへ転送する。例えば、PIDが0x1011であるとき、そのTSパケットは主映像デコーダ5715内のTB15701へ転送される。その他に、PIDが、0x1B00−0x1B1F、0x1100−0x111F、0x1A00−0x1A1F、0x1200−0x121F、及び0x1400−0x141Fの各範囲に属するとき、対応するTSパケットはそれぞれ、副映像デコーダ、主音声デコーダ、副音声デコーダ、PGデコーダ、及びIGデコーダへ転送される。
第2PIDフィルタ5714は、第2ソース・デパケタイザ5712からTSパケットを受信する度に、そのPIDを選択対象のPIDと比較する。その選択対象のPIDは、再生制御部5435によって予め、3Dプレイリスト・ファイル内のSTNテーブルSSに従って指定されている。両方のPIDが一致したとき、第2PIDフィルタ5714はそのTSパケットを、そのPIDに割り当てられたデコーダへ転送する。例えば、PIDが0x1012又は0x1013であるとき、そのTSパケットは主映像デコーダ5715内のTB25708へ転送される。その他に、PIDが、0x1B20−0x1B3F、0x1220−0x127F、及び0x1420−0x147Fの各範囲に属するとき、対応するTSパケットはそれぞれ、副映像デコーダ、PGデコーダ、及びIGデコーダへ転送される。
主映像デコーダ5715は、TB15701、MB15702、EB15703、TB25708、MB25709、EB25710、バッファ・スイッチ5706、DEC5704、DPB5705、及びピクチャ・スイッチ5707を含む。TB15701、MB15702、EB15703、TB25708、MB25709、EB25710、及びDPB5705はいずれもバッファ・メモリである。各バッファ・メモリは、主映像デコーダ5715に内蔵されたメモリ素子の一領域を利用する。その他に、それらのバッファ・メモリのいずれか又は全てが、異なるメモリ素子に分離されていてもよい。
TB15701は、ベースビュー・ビデオ・ストリームを含むTSパケットを第1PIDフィルタ5713から受信してそのまま蓄積する。MB15702は、TB15701に蓄積されたTSパケットからPESパケットを復元して蓄積する。そのとき、各TSパケットからTSヘッダが除去される。EB15703は、MB15702に蓄積されたPESパケットから、符号化されたVAUを抽出して蓄積する。そのとき、各PESパケットからPESヘッダが除去される。
TB25708は、ディペンデントビュー・ビデオ・ストリームを含むTSパケットを第2PIDフィルタ5714から受信してそのまま蓄積する。MB25709は、TB25708に蓄積されたTSパケットからPESパケットを復元して蓄積する。そのとき、各TSパケットからTSヘッダが除去される。EB25710は、MB25709に蓄積されたPESパケットから、符号化されたVAUを抽出して蓄積する。そのとき、各PESパケットからPESヘッダが除去される。
バッファ・スイッチ5706は、EB15703とEB25710とのそれぞれに蓄積されたVAUのヘッダをDEC5704からの要求に応じて転送する。バッファ・スイッチ5706は更に、そのVAUの圧縮ピクチャ・データを、元のTSパケットに含まれるDTSの示す時刻にDEC5704へ転送する。ここで、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとの間では、同じ3D・VAUに属する一対のピクチャのDTSが等しい。従って、バッファ・スイッチ5706は、DTSの等しい一対のVAUのうち、EB15703に蓄積された方を先にDEC5704へ転送する。
DEC5704は、図51に示されているDEC5104と同様、圧縮ピクチャの復号処理に特化したハードウェア・デコーダであり、特にその復号処理のアクセラレータ機能を備えたLSIで構成されている。DEC5704は、バッファ・スイッチ5706から転送された圧縮ピクチャ・データを順次復号する。その復号処理では、DEC5704は予め、各VAUのヘッダを解析して、そのVAU内に格納された圧縮ピクチャの圧縮符号化方式とストリーム属性とを特定し、それらに応じて復号方法を選択する。ここで、その圧縮符号化方式は、例えば、MPEG−2、MPEG−4 AVC、及びVC1を含む。DEC5704は更に、復号された非圧縮のピクチャをDPB5705へ転送する。
DEC5704はその他に、ディペンデントビュー・ビデオ・ストリームから一つのビデオ・シーケンスの先頭のVAUを読み出す度に、そのVAUからオフセット・メタデータを読み出す。そのビデオ・シーケンスの再生区間では、DEC5704は、まず、そのVAUと共に一つのPESパケットに格納されたPTSと、そのVAUの圧縮ピクチャ・データの表すフレームの番号とを特定する。DEC5704は次に、そのフレーム番号に対応付けられたオフセット情報をオフセット・メタデータから読み出して、特定されたPTSの示す時刻にプレーン加算部5424へ送出する。
DPB5705は、復号された非圧縮のピクチャを一時的に保持する。DEC5704がPピクチャ及びBピクチャを復号するとき、DPB5705はDEC5704からの要求に応じて、保持されている非圧縮のピクチャの中から参照ピクチャを検索してDEC5704に提供する。
ピクチャ・スイッチ5707は、DPB5705から非圧縮の各ピクチャを、元のTSパケットに含まれるPTSの示す時刻に、左映像プレーン・メモリ5720と右映像プレーン・メモリ5721とのいずれかに書き込む。ここで、同じ3D・VAUに属するベースビュー・ピクチャとディペンデントビュー・ピクチャとではPTSが等しい。従って、ピクチャ・スイッチ5707は、DPB5705に保持された、PTSの等しい一対のピクチャのうち、ベースビュー・ピクチャを先に左映像プレーン・メモリ5720に書き込み、続いてディペンデントビュー・ピクチャを右映像プレーン・メモリ5721に書き込む。
<1プレーン+(ゼロ・)オフセット・モードのプレーン加算部>
図58は、1プレーン+オフセット・モード又は1プレーン+ゼロ・オフセット・モードのプレーン加算部5424の機能ブロック図である。図58を参照するに、プレーン加算部5424は、視差映像生成部5810、スイッチ5820、四つのクロッピング処理部5831−5834、及び四つの加算部5841−5844を含む。
視差映像生成部5810は、システム・ターゲット・デコーダ5423から左映像プレーン5801と右映像プレーン5802とを受信する。L/Rモードの再生装置102では、左映像プレーン5801はレフトビュー・ビデオ・プレーンを表し、右映像プレーン5802はライトビュー・ビデオ・プレーンを表す。L/Rモードの視差映像生成部5810は、受信された各ビデオ・プレーン5801、5802をそのままスイッチ5820へ送出する。一方、デプス・モードの再生装置102では、左映像プレーン5801は2D映像のビデオ・プレーンを表し、右映像プレーン5802はその2D映像に対するデプスマップを表す。デプス・モードの視差映像生成部5810は、まずそのデプスマップからその2D映像の各部の両眼視差を計算する。視差映像生成部5810は次に、左映像プレーン5801を加工して、ビデオ・プレーンにおけるその2D映像の各部の表示位置を、計算された両眼視差に依って左右に移動させる。それにより、レフトビュー・ビデオ・プレーンとライトビュー・ビデオ・プレーンとの対が生成される。視差映像生成部5810は更に、生成されたビデオ・プレーンの対を左映像プレーンと右映像プレーンとの対としてスイッチ5820へ送出する。
スイッチ5820は、再生制御部5435からB−D表示モードを指示されたとき、PTSの等しい左映像プレーン5801と右映像プレーン5802とをその順で第1加算部5841へ送出する。スイッチ5820は、再生制御部5435からB−B表示モードを指示されたとき、PTSの等しい左映像プレーン5801と右映像プレーン5802との一方を、一フレーム当たり二回ずつ第1加算部5841へ送出し、他方を破棄する。
第1クロッピング処理部5831は、再生制御部5435から1プレーン+オフセット・モードを指示されたとき、副映像プレーン5803に対してオフセット制御を次のように行う。第1クロッピング処理部5831はまず、システム・ターゲット・デコーダ5423からオフセット情報5807を受信する。そのとき、第1クロッピング処理部5831は、プレーヤ変数記憶部5436内のSPRM(27)5851から副映像プレーンに対する参照オフセットIDを読み出す。第1クロッピング処理部5831は次に、その参照オフセットIDの示すオフセット・シーケンスに属するオフセット情報を、システム・ターゲット・デコーダ5423から受け取ったオフセット情報5807の中から検索する。第1クロッピング処理部5831は更に、検索されたオフセット情報を利用して、副映像プレーン5803に対してオフセット制御を行う。その結果、副映像プレーン5803は、レフトビューとライトビューとを表す一対のプレーン・データに変換される。更に、レフトビューとライトビューとの副映像プレーンは交互に第1加算部5841へ送出される。
ここで、SPRM(27)5851の値は一般に、カレントPIが切り換わる度に再生制御部5435によって更新される。その他に、プログラム実行部5434が、ムービーオブジェクト又はBD−Jオブジェクトに従ってSPRM(27)5851の値を設定してもよい。
同様に、第2クロッピング処理部5832は、PGプレーン5804をレフトビューとライトビューとのPGプレーンに変換する。それらのPGプレーンは交互に第2加算部5842へ送出される。第3クロッピング処理部5833は、IGプレーン5805をレフトビューとライトビューとのIGプレーンの対に変換する。それらのIGプレーンは交互に第3加算部5843へ送出される。第4クロッピング処理部5834は、イメージ・プレーン5806をレフトビューとライトビューとのイメージ・プレーンに変換する。それらのイメージ・プレーンは交互に第4加算部5844へ送出される。
第1クロッピング処理部5831は、再生制御部5435から1プレーン+ゼロ・オフセット・モードを指示されたとき、副映像プレーン5803に対するオフセット制御を行うことなく、副映像プレーン5803をそのまま、二回繰り返して第1加算部5841へ送出する。他のクロッピング処理部5832−5834についても同様である。
第1加算部5841は、スイッチ5820からはビデオ・プレーンを受信し、第1クロッピング処理部5831からは副映像プレーンを受信する。第1加算部5841はそのとき、受信されたビデオ・プレーンと副映像プレーンとを一組ずつ重畳して第2加算部5842へ渡す。第2加算部5842は、第2クロッピング処理部5832からPGプレーンを受信し、第1加算部5841から受信されたプレーン・データに重畳して第3加算部5843へ渡す。第3加算部5843は、第3クロッピング処理部5833からIGプレーンを受信し、第2加算部5842から受信されたプレーン・データに重畳して第4加算部5844へ渡す。第4加算部5844は、第4クロッピング処理部5834からイメージ・プレーンを受信し、第3加算部5843から受信されたプレーン・データに重畳してHDMI通信部5425へ送出する。ここで、各加算部5841−5844は、プレーン・データの重畳にα合成を利用する。こうして、左映像プレーン5801と右映像プレーン5802とのそれぞれに、図58に矢印5800で示されている順序で、副映像プレーン5803、PGプレーン5804、IGプレーン5805、及びイメージ・プレーン5806が重畳される。その結果、各プレーン・データの示す映像は表示装置103の画面上に、左映像プレーン又は右映像プレーン、副映像プレーン、IGプレーン、PGプレーン、及びイメージ・プレーンの順に重ねられて表示される。
≪オフセット制御のフローチャート≫
図59は、各クロッピング処理部5831−5834によるオフセット制御のフローチャートである。各クロッピング処理部5831−5834はシステム・ターゲット・デコーダ5423からオフセット情報5807を受信したときにオフセット制御を開始する。以下の説明では、第2クロッピング処理部5832がPGプレーン5804に対してオフセット制御を行う場合を想定する。他のクロッピング処理部5831、5833、5834はそれぞれ、副映像プレーン5803、IGプレーン5805、及びイメージ・プレーン5806に対して同様な処理を行う。
ステップS5901では、第2クロッピング処理部5832はまず、システム・ターゲット・デコーダ5423からPGプレーン5804を受信する。そのとき、第2クロッピング処理部5832はSPRM(27)5851から、PGプレーンに対する参照オフセットIDを読み出す。第2クロッピング処理部5831は次に、その参照オフセットIDの示すオフセット・シーケンスに属するオフセット情報を、システム・ターゲット・デコーダ5423から受け取ったオフセット情報5807の中から検索する。その後、処理はステップS5902へ進む。
ステップS5902では、第2クロッピング処理部5832は、スイッチ5820によって選択されたビデオ・プレーンがレフトビューとライトビューとのいずれを表すかをチェックする。ビデオ・プレーンがレフトビューを表すとき、処理はステップS5903へ進む。ビデオ・プレーンがライトビューを表すとき、処理はステップS5906へ進む。
ステップS5903では、第2クロッピング処理部5832は、検索されたオフセット方向の値をチェックする。ここで、次の場合を想定する:オフセット方向の値が“0”であるときは3Dグラフィックス映像の奥行きが画面よりも手前であり、オフセット方向の値が“1”であるときは奥である。オフセット方向の値が“0”であるとき、処理はステップS5904へ進む。オフセット方向の値が“1”であるとき、処理はステップS5905へ進む。
ステップS5904では、ビデオ・プレーンがレフトビューを表し、オフセット方向が画面よりも手前を表す。従って、第2クロッピング処理部5832は、PGプレーン5804に右向きのオフセットを与える。すなわち、PGプレーン5804の含む各画素データの位置をオフセット値だけ右へ移動させる。その後、処理はステップS5909へ進む。
ステップS5905では、ビデオ・プレーンがレフトビューを表し、オフセット方向が画面よりも奥を表す。従って、第2クロッピング処理部5832は、PGプレーン5804に左向きのオフセットを与える。すなわち、PGプレーン5804の含む各画素データの位置をオフセット値だけ左へ移動させる。その後、処理はステップS5909へ進む。
ステップS5906では、第2クロッピング処理部5832は、検索されたオフセット方向の値をチェックする。オフセット方向の値が“0”であるとき、処理はステップS5907へ進む。オフセット方向の値が“1”であるとき、処理はステップS5908へ進む。
ステップS5907では、ビデオ・プレーンがライトビューを表し、オフセット方向が画面よりも手前を表す。従って、ステップS5904とは逆に、第2クロッピング処理部5832は、PGプレーン5804に左向きのオフセットを与える。すなわち、PGプレーン5804の含む各画素データの位置をオフセット値だけ左へ移動させる。その後、処理はステップS5909へ進む。
ステップS5908では、ビデオ・プレーンがライトビューを表し、オフセット方向が画面よりも奥を表す。従って、ステップS5905とは逆に、第2クロッピング処理部5832はPGプレーン5804に右向きのオフセットを与える。すなわち、PGプレーン5804の含む各画素データの位置をオフセット値だけ右へ移動させる。その後、処理はステップS5909へ進む。
ステップS5909では、第2クロッピング処理部5832は、処理後のPGプレーン5804を第3クロッピング処理部5834へ送出する。その後、処理は終了する。
≪オフセット制御によるプレーン・データの変化≫
図60の(b)は、第2クロッピング処理部5832によるオフセット制御で加工される前のPGプレーンGPを示す模式図である。図60の(b)を参照するに、PGプレーンGPは、字幕“I Love you”を表す画素データ群、すなわち字幕データSTLを含む。その字幕データSTLはPGプレーン・データGPの左端から距離D0に位置する。
図60の(a)は、右向きのオフセットが与えられたPGプレーンRGPを示す模式図である。図60の(a)を参照するに、第2クロッピング処理部5832は、PGプレーンGPに右向きのオフセットを与える場合、PGプレーンGP内の各画素データの位置を元の位置から、オフセット値に等しい画素数OFSだけ右へ移動させる。具体的には、第2クロッピング処理部5832はまず、クロッピング処理によってPGプレーンGPの右端から、オフセット値に等しい幅OFSの帯状領域AR1に含まれる画素データを除去する。第2クロッピング処理部5832は次に、PGプレーンGPの左端に画素データを付加して、幅OFSの帯状領域AL1を構成する。ここで、その領域AL1に含まれる画素データは透明に設定される。こうして、右向きのオフセットが与えられたPGプレーンRGPが得られる。実際、字幕データSTLはそのPGプレーンRGPの左端から距離DRに位置し、その距離DRは、元の距離D0にオフセット値OFSを加えた値に等しい:DR=D0+OFS。
図60の(c)は、左向きのオフセットが与えられたPGプレーンLGPを示す模式図である。図60の(c)を参照するに、第2クロッピング処理部5832は、PGプレーンGPに左向きのオフセットを与える場合、PGプレーンGP内の各画素データの位置を元の位置から、オフセット値に等しい画素数OFSだけ左へ移動させる。具体的には、第2クロッピング処理部5832はまず、クロッピング処理によってPGプレーンGPの左端から、オフセット値に等しい幅OFSの帯状領域AL2に含まれる画素データを除去する。第2クロッピング処理部5832は次に、PGプレーンGPの右端に画素データを付加して、幅OFSの帯状領域AR2を構成する。ここで、その領域AR2に含まれる画素データは透明に設定される。こうして、左向きのオフセットが与えられたPGプレーンLGPが得られる。実際、字幕データSTLはそのPGプレーンLGPの左端から距離DLに位置し、その距離DLは、元の距離D0からオフセット値OFSを除いた値に等しい:DL=D0−OFS。
<2プレーン・モードのプレーン加算部>
図61は、2プレーン・モードのプレーン加算部5424の部分的な機能ブロック図である。図61を参照するに、2プレーン・モードのプレーン加算部5424は、図58に示されている1プレーン+オフセットモードのプレーン加算部5424と同様、視差映像生成部5810、スイッチ5820、第1加算部5841、第2加算部5842、及び第2クロッピング処理部5832を含む。図61には示されていないが、2プレーン・モードのプレーン加算部5424は更に、図58に示されている他のクロッピング処理部5831、5833、5834、及び他の加算部5843、5844を含む。それらに加え、2プレーン・モードのプレーン加算部5424は、PGプレーン5804、5805の入力部に、第2視差映像生成部6110と第2スイッチ6120とを含む。図61には示されていないが、同様な構成は、副映像プレーン、IGプレーン、及びイメージ・プレーンの各入力部にも含まれる。
第2視差映像生成部6110は、システム・ターゲット・デコーダ5423からレフトビューPGプレーン6104とライトビューPGプレーン6105とを受信する。L/Rモードの再生装置102では、レフトビューPGプレーン6104とライトビューPGプレーン6105とはそれぞれ、文字通り、レフトビューPGプレーンとライトビューPGプレーンとを表す。従って、第2視差映像生成部6110は各プレーン・データ6104、6105をそのまま第2スイッチ5820へ送出する。一方、デプス・モードの再生装置102では、レフトビューPGプレーン6104は2Dグラフィックス映像のPGプレーンを表し、ライトビューPGプレーン6105はその2Dグラフィックス映像に対するデプスマップを表す。従って、第2視差映像生成部6110は、まずそのデプスマップからその2Dグラフィックス映像の各部の両眼視差を計算する。第2視差映像生成部6110は、次にレフトビューPGプレーン6104を加工して、PGプレーンにおけるその2Dグラフィックス映像の各部の表示位置を、計算された両眼視差に依って左右に移動させる。それにより、レフトビューPGプレーンとライトビューPGプレーンとが生成される。第2視差映像生成部6110は更に、それらのPGプレーンを第2スイッチ6120へ送出する。
第2スイッチ6120は、PTSの等しいレフトビューPGプレーン6104とライトビューPGプレーン6105とをその順で、第2クロッピング処理部5832へ送出する。第2クロッピング処理部5832は、各PGプレーン6104、6105をそのまま、第2加算部5842へ送出する。第2加算部5842は、第1加算部5841から受信されたプレーン・データに各PGプレーン6104、6105を重畳して、第3加算部5843へ渡す。その結果、左映像プレーン5801にはレフトビューPGプレーン6104が重畳され、右映像プレーン5802にはライトビューPGプレーン6105が重畳される。
2プレーン・モードの第2クロッピング処理部5832は、オフセット情報5807を利用してレフトビューPGプレーン6104又はライトビューPGプレーン6105に対してオフセット制御を行ってもよい。それは次の理由に因る。L/Rモードでは、サブTS内のレフトビューPGストリームに代えてメインTS内のPGストリーム(以下、2D・PGストリームと略す。)がレフトビューPGプレーンとして利用されてもよい。但し、2D・PGストリームの表す一つのグラフィックス映像は2D映像としても利用されるので、その表示位置は通常、一定に設定されている。一方、ライトビューPGストリームの表すグラフィックス映像の表示位置は、対応する3Dグラフィックス映像の奥行きが変化する際には、その変化に合わせて左右に移動するように設定されている。従って、3Dグラフィックス映像を左右に移動させることなくその奥行きだけを変化させるには、レフトビューとライトビューとのグラフィックス映像間の中心位置を一定に維持しなければならない。そこで、3Dグラフィックス映像を再生する際には、2D・PGストリームの表すグラフィックス映像にオフセットを与えて、その表示位置を左右へ移動させる。それにより、レフトビューとライトビューとのグラフィックス映像間の中心位置が一定に維持されるので、3Dグラフィックス映像が水平方向には移動しないように見える。こうして、2D・PGストリームをレフトビューPGストリームとして利用することで視聴者に違和感を与える危険性を回避することができる。
《実施形態2》
本発明の実施形態2によるホームシアター・システムでは、実施形態1によるものとは異なり、表示装置103に代えて再生装置102がフレームレートを変換する。その点を除き、実施形態2によるホームシアター・システムは、実施形態1によるものと構成及び機能が等しい。従って、以下では、実施形態2によるホームシアター・システムのうち、実施形態1によるものからの変更部分及び拡張部分について説明する。実施形態1によるホームシアター・システムと同様な部分については、上記の実施形態1についての説明を援用する。
図62の(a)は、ビデオ・ストリーム6200に含まれるVAU#Nを示す模式図である(文字Nは1以上の整数を表す)。図16に示されているとおり、ビデオ・ストリーム6200は複数のビデオ・シーケンス#Kから成り(文字Nは1以上の整数を表す。)、各ビデオ・シーケンス#Kは複数のVAU#Nを含む。いずれのVAU#Nも、図16に示されている構造と同様な構造を持ち、特に補足データ6201を含む。この補足データ6201は表示タイプ6202を含む。例えば、補足データ6201がMPEG−4 AVCにおける“picture timing SEI”に相当する場合、表示タイプ6202はパラメータ“PicStruct”に相当する。表示タイプ6202はその他に、SEIメッセージにユーザ・データの一つとして設定されていてもよい。ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとのいずれも、ビデオ・ストリーム6200と同じ構造を持つ。
表示タイプ6202は、VAU#Nの示すフレームの表示パターンを規定する。図62の(b)は、表示タイプ6202の値と表示パターン6203との間の対応表であり、図62の(c)−(k)は、各表示パターンを表す模式図である。図62の(b)を参照するに、表示タイプは1から9までのいずれかの整数値を表す。各整数値には異なる表示パターンが割り当てられている。整数値“1”の表示タイプは表示パターン「フレーム」を表す。そのパターンは、図62の(c)に示されているように、1フレームの全体の表示を表す。整数値“2”の表示タイプは表示パターン「トップ」を表す。そのパターンは、図62の(d)に示されているように、1フレームの奇数番目のラインの表示を表す。整数値“3”の表示タイプは表示パターン「ボトム」を表す。そのパターンは、図62の(e)に示されているように、1フレームの偶数番目のラインの表示を表す。整数値“4”の表示タイプは表示パターン「トップ、ボトム、トップ」を表す。そのパターンは、図62の(f)に示されているように、三つの連続するフレーム期間のそれぞれに、1フレームの奇数番目のライン、偶数番目のライン、奇数番目のラインを順番に表示することを表す。整数値“5”の表示タイプは表示パターン「ボトム、トップ」を表す。そのパターンは、図62の(g)に示されているように、二つの連続するフレーム期間のそれぞれに、1フレームの偶数番目のラインと奇数番目のラインとを順番に表示することを表す。整数値“6”の表示タイプは表示パターン「ボトム、トップ、ボトム」を表す。そのパターンは、図62の(h)に示されているように、三つの連続するフレーム期間のそれぞれに、1フレームの偶数番目のライン、奇数番目のライン、偶数番目のラインを順番に表示することを表す。整数値“7”の表示タイプは表示パターン「トップ、ボトム」を表す。そのパターンは、図62の(i)に示されているように、二つの連続するフレーム期間のそれぞれに、1フレームの奇数番目のラインと偶数番目のラインとを順番に表示することを表す。整数値“8”の表示タイプは表示パターン「ダブル」を表す。そのパターンは、図62の(j)に示されているように、二つの連続するフレーム期間のそれぞれに、1フレームの全体を繰り返し表示することを表す。整数値“9”の表示タイプは表示パターン「トリプル」を表す。そのパターンは、図62の(k)に示されているように、三つの連続するフレーム期間のそれぞれに、1フレームの全体を繰り返し表示することを表す。
図63は、システム・ターゲット・デコーダ5423に含まれるプライマリ・ビデオ・ストリームの処理系統を示す部分的な機能ブロック図である。図57に示されている実施形態1による処理系統とは、主映像デコーダ6315の次の機能が異なる。DEC6304は、図57に示されているDEC5704と同様、圧縮ピクチャの復号処理に特化したハードウェア・デコーダである。しかし、DEC5704とは異なり、DEC6304は、各VAU内の補足データから表示タイプ6202を解読して、その値に応じてピクチャ・スイッチ5707を制御する。それにより、ピクチャ・スイッチ5707は、表示タイプ6202の規定する表示パターンに従って非圧縮のピクチャをDPB5705から左映像プレーン・メモリ5720と右映像プレーン・メモリ5721とのいずれかに転送する。具体的には例えば、表示タイプが表示パターン「フレーム」を表す場合、ピクチャ・スイッチ5707は1フレームの全体を転送する。表示タイプが表示パターン「トップ」を表す場合、ピクチャ・スイッチ5707は1フレームの奇数番目のラインのみを転送する。表示タイプが表示パターン「トップ、ボトム、トップ」を表す場合、ピクチャ・スイッチ5707は、三つの連続するフレーム期間のそれぞれに、1フレームの奇数番目のライン、偶数番目のライン、奇数番目のラインを順番に転送する。表示タイプが表示パターン「ダブル」を表す場合、ピクチャ・スイッチ5707は、二つの連続するフレーム期間のそれぞれに、1フレームの全体を繰り返し転送する。他の表示パターンについても同様である。
ここで、ピクチャ・スイッチ5707はフレームレートを、元の値24fpsよりも十分に高い値、例えば、120fps、100fps、又は180fpsまで上昇させる。すなわち、ピクチャ・スイッチ5707はピクチャを各主映像プレーン・メモリ5720、5721へ交互に、1/24秒よりも十分に短い間隔で、例えば、1/120秒、1/100秒、又は1/180秒間隔で転送する。プレーン加算部5424は、そのフレームレートと同程度に高い処理速度でレフトビュー・フレームとライトビュー・フレームとを1枚ずつ合成してHDMI通信部5425へ渡す。HDMI通信部5425は一対のレフトビュー・フレームとライトビュー・フレームとを、図4の(b)−(e)のいずれかの方式で、図4の(a)に示されている1フレームのフォーマットに変換して表示装置103へ送出する。そのときのフレームレートは、例えば、60fps、50fps、又は90fpsに設定される。表示装置103はその1フレームのデータからレフトビュー・フレームとライトビュー・フレームとを抽出し、そのフレームレートの倍の速度、例えば、120fps、100fps、又は180fpsで交互に表示する。
図64は、図63に示されている系統を利用した3D再生装置の再生動作のフローチャートである。このフローチャートは、図55に示されているものとは、表示タイプに応じてプレーン・データの更新を判断するステップS6401が追加されている点で異なる。その他のステップは、図55に示されているものと同様であるので、それらの詳細については図55の説明を援用する。
ステップS6401では、DEC6304が、ステップS5505で処理された映像プレーンを含むVAUから補足データを読み出して、その補足データから表示タイプ6202を解読する。DEC6304は更に、その表示タイプ6202の示す値から、主映像プレーン・メモリ5720、5721内のプレーン・データを更新すべきか否かを判断する。例えば、表示タイプが表示パターン「フレーム」を表す場合、主映像プレーン・メモリ5720、5721に格納されているプレーン・データは、次のフレームを表すものに更新されるべきである。一方、例えば、表示タイプが表示パターン「ダブル」を表す場合、既に主映像プレーン・メモリ5720、5721に格納されているプレーン・データがもう一度処理されればよい。このように、プレーン・データが更新されるべき場合、処理はステップS5506へ進み、更新されるべきではない場合、処理はステップS5504から繰り返される。
図65は、再生装置102にレフトビュー・フレームとライトビュー・フレームとをフレームレート=60fpsで送出させる場合におけるフレームレートの変化を示す模式図である。図65の(a)に示されているとおり、コンテンツにおいて3D映像の各フレームF3Dk(k=1、2、3、4、…)の表示時間は1/24秒に設定されている。更に、3D映像の奇数番目のフレームF3D1、3、…を含む3D・VAUのうち、ベースビューのVAUには表示タイプTYL=“9”が設定され、ディペンデントビューのVAUには表示タイプTYR=“8”が設定されている。一方、3D映像の偶数番目のフレームF3D2、4、…を含む3D・VAUのうち、ベースビューのVAUには表示タイプTYL=“8”が設定され、ディペンデントビューのVAUには表示タイプTYR=“9”が設定されている。表示タイプ=“8”又は“9”が設定されている場合、ピクチャ・スイッチ5707は1フレームの全体を、DPB5705からいずれかの主映像プレーン・メモリ5720、5721へ、2回又は3回繰り返し転送する。その結果、再生装置102は、図65の(b)に示されているように、3D映像の奇数番目のフレームF3Dk(k=1、3、…)については、レフトビュー・フレームFLkを1/60秒ずつ3回送出し、ライトビュー・フレームFRkを1/60秒ずつ2回送出する。一方、3D映像の偶数番目のフレームF3Dm(m=2、4、…)については、再生装置102はレフトビュー・フレームFLmを1/60秒ずつ2回送出し、ライトビュー・フレームFRmを1/60秒ずつ3回送出する。特に3D映像の奇数番目のフレームF3Dkから偶数番目のフレームF3D(k+1)へ切り換わる期間には、前者F3Dkを構成するレフトビュー・フレームFLkと、後者F3D(k+1)を構成するライトビュー・フレームFR(k+1)とが、図4の(a)に示されている一つのフレームに多重化されて送出される。
表示装置103は、再生装置102から受信された1フレームのデータからレフトビュー・フレームFLkとライトビュー・フレームFRkとを抽出する。表示装置103は更にそれらのフレームFLk、FRkを、それらが再生装置102から送出される際のフレームレート=60fpsの倍の速度、すなわち120fpsで交互に表示する。それにより、図65の(c)に示されているように、3D映像の先頭のフレームF3D1の表示期間では、先頭のレフトビュー・フレームFL1は3回、先頭のライトビュー・フレームFR1は2回、交互に1/120秒ずつ繰り返して表示される。3D映像の2番目のフレームF3D2の表示期間では、2番目のレフトビュー・フレームFL2が2回、2番目のライトビュー・フレームFR2が3回、交互に1/120秒ずつ繰り返して表示される。3D映像の3、4番目のフレームF3D3、F3D4の各表示期間でも同様である。その場合、3D映像の各フレームF3Dkの表示期間では、レフトビュー・フレームFLkとライトビュー・フレームFRkとの一方は3回表示されるのに対し、他方は2回しか表示されない。このように、レフトビュー・フレームFLkとライトビュー・フレームFRkとの間で表示回数が異なる。しかし、視聴者には、レフトビュー・フレームFLkとライトビュー・フレームFRkとが合わせて五つ送出されるごとに、3D映像のフレームF3Dkが切り換えられるように見える。すなわち、3D映像の各フレームF3Dkの表示時間はいずれも、1/120秒×5フレーム≒0.42秒に等しい。こうして、3D映像のフレームの表示時間が均一化されるので、3D映像の動きを更に滑らかに表現することができる。
再生装置102にレフトビュー・フレームとライトビュー・フレームとをフレームレート=50fpsで送出させる場合、表示タイプを以下のように設定すればよいことが、図7から理解される。まず、3D映像のフレームF3Dkの番号が先頭から数えて12増える度に(k=1、13、25、…)、ベースビューのVAUに表示タイプTYL=“9”を設定する。一方、3D映像のフレームF3Dkの番号が7番目から数えて12増える度に(k=7、19、31、…)、ディペンデントビューのVAUに表示タイプTYR=“9”を設定する。それ以外のVAUには全て表示タイプTYL=“8”を設定する。その場合、図7の(b)に示されているように、3D映像のフレームF3Dkの番号が先頭から数えて6増える度に(k=1、7、13、19、…)、3D映像のそのフレームF3Dkの表示期間では、レフトビュー・フレームFLkとライトビュー・フレームFRkとの一方が3回、他方が2回、1/100秒ずつ交互に表示される。3D映像の他のフレームF3Dm(m≠k)の表示期間では、レフトビュー・フレームFLkとライトビュー・フレームFRkとがいずれも2回、1/100秒ずつ交互に表示される。その結果、図7の(b)に示されているとおり、3D映像の先頭のフレームF3D1と7番目のフレームF3D7との各表示時間は1/100秒×5フレーム=0.05秒であって、他のフレームF3Dk(k=2、3、…、6、8)の表示時間=1/100秒×4フレーム=0.04秒よりも長い。しかし、その差は一つのレフトビュー・フレーム又はライトビュー・フレームの表示時間=1/100秒=0.01秒まで短縮されているので、視聴者には、3D映像のフレームF3Dk間での表示時間の差が感じられにくい。こうして、3D映像のフレームの表示時間がほぼ均一化されるので、3D映像の動きを更に滑らかに表現することができる。
図65では、フレームの走査方式がプログレッシブ方式である場合が想定されている。しかし、インターレース方式であっても、同様なフレームレート(フィールド周期)の変換は以下のように可能である。
図66は、再生装置102にレフトビュー・フレームとライトビュー・フレームとをフィールド周期=1/60秒で送出させる場合におけるフィールド周期の変化を示す模式図である。図66の(a)に示されているとおり、コンテンツにおいて3D映像の各フレームF3Dk(k=1、2、3、4、…)の表示時間は1/24秒に設定されている。更に、3D映像の先頭のフレームF3D1から順に、ベースビューのVAUに設定された表示タイプTYLは、“4”、“5”、“6”、“7”、“4”、“5”、…と巡回的に変化し、ディペンデントビューのVAUに設定された表示タイプTYRは、“7”、“4”、“5”、“6”、“7”、“4”、…と巡回的に変化する。表示タイプ=“4”が設定されている場合、ピクチャ・スイッチ5707は1フレームを奇数番目のライン、偶数番目のライン、奇数番目のラインの順にDPB5705からいずれかの主映像プレーン・メモリ5720、5721へ転送する。それに対し、表示タイプ=“6”が設定されている場合は、転送順が1フレームの偶数番目のライン、奇数番目のライン、偶数番目のラインである点で異なる。表示タイプ=“5”が設定されている場合、ピクチャ・スイッチ5707は1フレームの偶数番目のライン、奇数番目のラインの順にDPB5705からいずれかの主映像プレーン・メモリ5720、5721へ転送する。それに対し、表示タイプ=“7”が設定されている場合は、転送順が1フレームの奇数番目のライン、偶数番目のラインである点で異なる。ピクチャ・スイッチ5707がこのようにフレームを転送する結果、再生装置102は、図66の(b)に示されているように、3D映像の各フレームF3Dkを構成するレフトビュー・フレームとライトビュー・フレームとのそれぞれをトップ・フィールドTFLk、TFRkとボトム・フィールドBFLk、BFRkとに分けて送出する。ここで、トップ・フィールドは1フレームの奇数番目のラインから成り、ボトム・フィールドは偶数番目のラインから成る。
図66の(b)を更に参照するに、再生装置102は、3D映像の先頭のフレームF3D1については、まず、レフトビュー・フレームのトップ・フィールドTFL1とライトビュー・フレームのトップ・フィールドTFR1とを、図4の(a)に示されている一つのフレームに多重化して1/60秒で送出し、次に、各フレームのボトム・フィールドBFL1、BFR1を同様に1/60秒で送出する。再生装置102は続いて、3D映像の先頭のフレームF3D1を構成するレフトビュー・フレームのトップ・フィールドTFL1と、3D映像の次のフレームF3D2を構成するライトビュー・フレームのトップ・フィールドTFR2とを、図4の(a)に示されている一つのフレームに多重化して1/60秒で送出する。再生装置102は更に、3D映像の2番目のフレームF3D2を構成するレフトビュー・フレームのボトム・フィールドBFL2とライトビュー・フレームのボトム・フィールドBFR2とを1/60秒で送出し、次に、各フレームのトップ・フィールドTFL2、TFR2を1/60秒で送出する。その後、再生装置102は3D映像の3番目のフレームF3D3について、レフトビュー・フレームとライトビュー・フレームとのボトム・フィールドの対BFL3、BFR3とトップ・フィールドの対TFL3、TFR3とを、その順に1/60秒ずつ送出する。再生装置102は続いて、3D映像の3番目のフレームF3D3を構成するレフトビュー・フレームのボトム・フィールドBFL3と、3D映像の4番目のフレームF3D4を構成するライトビュー・フレームのボトム・フィールドBFR4とを1/60秒で送出する。その後、再生装置102は3D映像の4番目のフレームF3D4について、レフトビュー・フレームとライトビュー・フレームとのトップ・フィールドの対TFL3、TFR3とボトム・フィールドの対BFL3、BFR3とを、その順に1/60秒ずつ送出する。以降のフレームも同様に、フィールド単位で送出される。
表示装置103は、再生装置102から受信された1フレームのデータから、レフトビュー・フレームとライトビュー・フレームとのトップ・フィールドの対TFLk、TFRk又はボトム・フィールドの対BFLk、BFRkを抽出する。表示装置103は更にそれらのフィールドTFLk、TFRk、BFLk、BFRkを、それらが再生装置102から送出される際のフレームレート=60fpsの倍の速度、すなわち120fpsで交互に表示する。それにより、図66の(c)に示されているように、3D映像の先頭のフレームF3D1の表示期間では、レフトビュー・フレームのトップ・フィールドTFL1、ライトビュー・フレームのトップ・フィールドTFR1、レフトビュー・フレームのボトム・フィールドBFL1、ライトビュー・フレームのボトム・フィールドBFR1の順に、それぞれ1/120秒ずつ表示される。更に続いて、レフトビュー・フレームのトップ・フィールドTFL1が再び1/120秒表示される。3D映像の2番目のフレームF3D2の表示期間では、ライトビュー・フレームのトップ・フィールドTFR2、レフトビュー・フレームのボトム・フィールドBFL2、ライトビュー・フレームのボトム・フィールドBFR2、レフトビュー・フレームのトップ・フィールドTFR2の順に、それぞれ1/120秒ずつ表示される。更に続いて、ライトビュー・フレームのトップ・フィールドTFR2が再び1/120秒表示される。3D映像の3、4番目のフレームF3D3、F3D4の各表示期間でも同様に、各フィールドが1回ずつ交互に表示された後、各ボトム・フィールドBFL3、BFR4が繰り返し表示される。その場合、視聴者には、レフトビュー・フレームとライトビュー・フレームとの各フィールドが合わせて五つ送出されるごとに、3D映像のフレームF3Dkが切り換えられるように見える。すなわち、3D映像の各フレームF3Dkの表示時間はいずれも1/120秒×5フィールド≒0.42秒に等しい。こうして、インターレース方式でも3D映像のフレームの表示時間が均一化されるので、3D映像の動きを更に滑らかに表現することができる。
図66は、図65のプログレッシブ方式をインターレース方式に変形した場合を示す。同様に、図7のプログレッシブ方式をインターレース方式に変形することも可能である。更に表示タイプを拡張すれば、図8のプログレッシブ方式をインターレース方式に変形することも可能である。
<変形例>
(A)本発明の実施形態による表示装置103は、図6−8に示されているように、3D映像の各フレームF3Dk(k=1、2、3、4、…)を構成するレフトビュー・フレームFLkとライトビュー・フレームFRkとのうち、レフトビュー・フレームFLkを先に表示する。その他に、ライトビュー・フレームFRkを先に表示してもよい。具体的には、図9に示されている3D映像のフレームF3Dkの表示処理において、ステップS93の判定結果に応じた処理を次のように、図9のものとは逆にすればよい:ステップS93の判定が“Yes”である場合、すなわちレフトビュー/ライトビューのフレーム番号NFLRが偶数である場合、ステップS94Nを実行して、先頭からの順序が3D映像のフレーム番号NF3Dと等しいライトビュー・フレームを表示する。ステップS93の判定が“No”である場合、すなわちレフトビュー/ライトビューのフレーム番号NFLRが奇数である場合、ステップS94Yを実行して、先頭からの順序が3D映像のフレーム番号NF3Dと等しいレフトビュー・フレームを表示する。
(B)図6−8に示されているパターンでは、レフトビュー・フレームFLkとライトビュー・フレームFRkとが即座に切り換えられている。その他に、レフトビュー・フレームFLkとライトビュー・フレームFRkとの各表示期間の間に、フレームを切り換えるための期間(以下、フレーム切換期間という。)が設けられてもよい。「フレーム切換期間」とは、前のフレームを次のフレームに切り換えるときに設けられる期間であって、一旦、画面全体を一様に暗くして次のフレームの各ピクセル・データを表示パネルに書き込む期間をいう。フレーム切換期間を設けることで、次のフレームから前のフレームの残像(クロストーク)を除去することができる。
図77の(a)は、コンテンツにおける3D映像の各フレームF3Dkの表示時間を示す模式図である。図77の(b)は、120fpsのレフトビュー・フレームとライトビュー・フレームとの列FLk、FRk(k=1、2、3、…)、及びそれらの間に設けられたフレーム切換期間FLRk、FRLkを示す模式図である。図77の(c)は、(b)に示されている各期間FLk、FRk、FLRk、FRLkに同期してシャッター眼鏡104が左右のレンズを透過させる期間LSL、LSRを示す模式図である。図77の(a)に示されているとおり、コンテンツにおいて3D映像の各フレームF3Dkの表示時間は1/24秒に設定されている。このフレーム列F3Dkからレフトビュー・フレームFLkとライトビュー・フレームFLkとを1/120秒間隔で交互に表示する場合、信号処理部220は表示部240に各フレームを、図77の(b)に示されているように交互に表示させ、左右信号送信部132にシャッター眼鏡104の左右のレンズを、図77の(c)に示されているように交互に透過させる。具体的には、信号処理部220はまず、表示部240には先頭のレフトビュー・フレームFL1を1/120秒間の半分、1/240秒間表示させる。それと並行して、信号処理部220は左右信号送信部132にはシャッター眼鏡104の左のレンズのみを透過させる。従って、先頭のレフトビュー・フレームFL1は視聴者の左目にのみ映る。信号処理部220は次に、フレーム切換期間FLR1を1/120秒間の半分、1/240秒間設定する。その間、表示部240は表示パネル242に先頭のライトビュー・フレームFR1のピクセル・データを書き込む。それと並行して、信号処理部220は左右信号送信部132にシャッター眼鏡104の両方のレンズを不透明にさせる。従って、フレーム切換期間FLR1では表示パネル242の画面は視聴者には見えない。信号処理部220は表示部240に表示パネル242のバックライトを消灯させてもよい。信号処理部220は続いて、表示部240には先頭のライトビュー・フレームFR1を1/240秒間表示させる。それと並行して、信号処理部220は左右信号送信部132にはシャッター眼鏡104の右のレンズのみを透過させる。従って、先頭のライトビュー・フレームFR1は視聴者の右目にのみ映る。信号処理部220はその後、フレーム切換期間FRL1を1/240秒間設定する。その間、表示部240は表示パネル242に先頭のレフトビュー・フレームFL1のピクセル・データを書き込む。それと並行して、信号処理部220は左右信号送信部132にシャッター眼鏡104の両方のレンズを不透明にさせる。従って、フレーム切換期間FRL1では表示パネル242の画面は視聴者には見えない。以上の操作は、切り換え対象のフレーム番号NFSWの値が切り換えグリッドGRD=120/24=5を超えるまで継続される。図77の例では、フレーム番号NFSWの値が“6”に達した時点で切り換え対象のフレームが先頭のライトビュー・フレームFR1から2番目のライトビュー・フレームFR2へ変更される。こうして、3D映像の先頭のフレームF3D1の表示期間では、レフトビュー・フレームFL1は3回表示される一方、ライトビュー・フレームFR1は2回しか表示されない。しかし、視聴者には、レフトビュー・フレームFLkとライトビュー・フレームFRkとが合わせて五つ送出されるごとに、3D映像のフレームF3Dkが切り換えられるように見える。すなわち、3D映像の各フレームF3Dkの表示時間はいずれも、1/120秒×5フレーム≒0.42秒に等しい。
こうして、各フレームの表示期間の間にフレーム切換期間を設定しても、3D映像の動きを更に滑らかに表現することができる。図7、8のパターンについても同様に、各フレームの表示期間を半分に短縮してその半分の長さのフレーム切換期間を設定すれば、3D映像の各フレームの表示時間を実質的に均一にできる。
(C)図7、8に示されているように、3D映像の異なるフレーム間でレフトビュー・フレームとライトビュー・フレームとの表示回数の合計が異なる場合、3D映像のいずれのフレームでその合計が他のフレームとは異なるように設定されてもよい。例えば、図7において「5フレーム→4フレーム→4フレーム→…」というパターンを「4フレーム→4フレーム→…→4フレーム→5フレーム→…」というパターンに変更してもよいし、図8において「8フレーム→7フレーム→8フレーム→…」というパターンを「7フレーム→8フレーム→7フレーム→…」というパターンに変更してもよい。それらは、図9に示されている3D映像のフレームの表示処理を次のように変更すれば実現される:ステップS96において、「レフトビュー/ライトビューのフレーム番号NFLRが切り換え対象のフレーム番号NFSW以上であるか否か(NFLR≧NFSW?)」に代えて、「前者NFLRに1を加えた値が後者NFSW以上であるか否か(NFLR+1≧NFSW?)」を判定する。その判定の結果が“Yes”である場合、処理はステップS97へ進み、“No”である場合、処理はステップS93から繰り返される。
(D)本発明の実施形態では、3D映像のフレームレートFR3Dは24fpsに等しい場合が想定されている。しかし、厳密には、3D映像のフレームレートFR3Dは24000/1001=23.976fpsに等しい場合が多い。しかし、その場合でも、レフトビュー・フレームFLkとライトビュー・フレームFRkとのフレームレートを59.94fps×2に設定すれば、図6に示されているパターンを同様に実現することができる。図7、8に示されているパターンも同様に実現可能である。
(E)再生装置102は、図76の(d)に示されているように、3D映像の各フレーム期間にレフトビュー・フレームとライトビュー・フレームとを同数ずつ一定の間隔、例えば1/60秒間隔で繰り返して送出する場合、HDMIケーブル122を通して、各フレームの表示タイプを表示装置103に通知してもよい。その場合、表示装置103はその表示タイプに基づいて、3D映像のフレームを切り換えるタイミングがレフトビュー・フレームとライトビュー・フレームとで異なるように調節する。例えば、3D映像の先頭のフレームF3D1の表示期間は、先頭のレフトビュー・フレームFL1が3回表示された時点で、3D映像の次のフレームF3D2の表示期間に切り換えられる。それにより、先頭のライトビュー・フレームFR1は2回しか表示されない。3D映像の他のフレームについても、表示装置103は同様な制御を行う。その結果、レフトビュー・フレームとライトビュー・フレームとは、図65の(c)に示されているパターンで表示される。同様な方法で、図76の(d)に示されているフレーム列を、図66の(c)に示されているフィールド列として表示することもできる。
(F)図65の(a)では、3D映像の各フレームF3D1、2、3、…を含む3D・VAUにおいて、ベースビューのVAUとディペンデントビューのVAUとの両方に表示タイプTYL、TYRが設定されている。その他に、ベースビューのVAUとディペンデントビューのVAUとのいずれか一方にのみ表示タイプが設定されてもよい。その場合、他方の表示タイプは3D再生装置に設定させる。例えばベースビューのVAUにのみ表示タイプTYL=“9”が設定されているとき、3D再生装置はレフトビュー・フレームの表示タイプTYLを“9”に設定すると共に、ライトビュー・フレームの表示タイプTYRを“8”に設定する。逆にベースビューのVAUにのみ表示タイプTYL=“8”が設定されているとき、3D再生装置はレフトビュー・フレームの表示タイプTYLを“8”に設定すると共に、ライトビュー・フレームの表示タイプTYRを“9”に設定する。同様に、3D再生装置は、図66、及び図7、8に示されている各パターンを実現可能な他の表示タイプの組み合わせを予め記憶し、レフトビュー・フレームとライトビュー・フレームとのいずれか一方の表示タイプから他方の表示タイプを割り出してもよい。
(G)図62の(a)に示されているようにビデオ・ストリーム内に埋め込まれた表示タイプが、例えば“4”、“5”のようにフィールド単位での表示を規定している場合、表示装置103は、その表示タイプに基づいてビデオ・ストリーム内のフィールド構造を解析することができる。特に、トップ・フィールドとボトム・フィールドとを一つのフレームに再構成することができる。従って、表示装置103は、表示タイプで規定されるフィールド単位での表示をフレーム単位での表示に変更すること、すなわち、インターレース表示をプログレッシブ表示に変更することもできる。
(H)図1では、再生装置102と表示装置103とがそれぞれ、独立した装置である。その他に、再生装置102が表示装置103と一体化されていてもよい。また、図2に示されているとおり、表示装置103は、BD−ROMディスク101の他に、メモリカード201、外部ネットワーク202、及び放送波203等の各種媒体から3D映像のストリーム・データを取得してもよい。その場合、表示装置103の受信部210は、各種媒体に適したインターフェースを含む。表示装置103は特に、図54に示されている3D再生装置の再生部5402と同様な構成を備えており、各種媒体から取得したストリーム・データを、レフトビュー・フレーム、ライトビュー・フレーム等に復号する。
(I)本発明の実施形態による表示装置103は、再生装置102によってBD−ROMディスク101から読み出されたストリーム・データに従って3D映像を再現する。その他に、図2に示されているように、表示装置103は、外部ネットワーク202又は放送波203で伝送されるストリーム・データに従って3D映像を再現してもよい。その場合、そのストリーム・データは以下のような送信装置で発信される。
図67は、送信装置6700の機能ブロック図である。図67を参照するに、送信装置6700はフォーマット変換部6701と送信部6702とを含む。フォーマット変換部6701は、外部からストリーム・データSTDを受信して所定の送信形式に変換する。ストリーム・データSTDは、図11−19に示されている実施形態1によるデータ構造を持つ。ストリーム・データSTDは更に、図62の(a)に示されている、表示タイプ6202を示す補足データ6201を含んでいてもよい。送信部6702は、フォーマット変換部6701によって変換されたストリーム・データを、アンテナから放送波203で送信し、又は、インターネット等の外部ネットワーク202を通して配信する。
(J)本発明の実施形態によるL/Rモードでは、ベースビュー・ビデオ・ストリームがレフトビューを表し、ディペンデントビュー・ビデオ・ストリームがライトビューを表す。逆に、ベースビュー・ビデオ・ストリームがライトビューを表し、ディペンデントビュー・ビデオ・ストリームがレフトビューを表してもよい。本発明の実施形態によるBD−ROMディスク101では、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとは、異なるTSに多重化されている。その他に、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとが一つのTSに多重化されていてもよい。
(K)図19に示されているオフセット・メタデータは、ディペンデントビュー・ビデオ・ストリームに格納されている。その他に、オフセット・メタデータはベースビュー・ビデオ・ストリームに格納されてもよい。その場合でも、オフセット・メタデータは好ましくは、各ビデオ・シーケンスの先頭に位置するVAU内の補足データに格納される。更に、3Dプレイリスト・ファイルは、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとのいずれがオフセット・メタデータを含むかを示すフラグを備えていてもよい。それにより、各ストリーム・データの作成の自由度を向上させることができる。オフセット・メタデータは、各ビデオ・シーケンス(すなわち、各GOP)の先頭だけでなく、各VAU(すなわち、各フレーム又はフィールド)に格納されてもよい。その他に、コンテンツごとに、オフセット・メタデータの間隔が任意の値に、例えば3フレーム以上に設定されてもよい。その場合、好ましくは、各ビデオ・シーケンスの先頭のVAUには必ずオフセット・メタデータが格納され、かつ、その直前のオフセット・メタデータとの間隔が3フレーム以上であるように制限される。それにより、再生装置にオフセット情報の変更処理を飛び込み再生処理と確実に並行させることができる。
オフセット・メタデータは、ビデオ・ストリームに格納されるのに代えて、独立なストリーム・データとしてメインTS又はサブTSに多重化されてもよい。その場合、オフセット・メタデータには固有のPIDが割り当てられる。システム・ターゲット・デコーダはそのPIDを利用して、オフセット・メタデータを他のストリーム・データから分離する。その他に、オフセット・メタデータは、まず専用のバッファ・メモリにプリロードされ、その後、再生処理を受けてもよい。その場合、オフセット・メタデータは一定のフレーム間隔で格納される。それにより、オフセット・メタデータについてはPTSが不要であるので、PESヘッダのデータ量が削減される。その結果、プリロード用のバッファの容量を節約することができる。尚、オフセット・メタデータはプレイリスト・ファイルに格納されてもよい。
(L)BD−ROMディスク101上には、図23に示されているように、ベースビュー・データ・ブロックとディペンデントビュー・データ・ブロックとがインターリーブ配置で記録されている。隣接する二つのデータ・ブロックでは一般に、エクステントATC時間が等しい。それら二つのデータ・ブロック、すなわちエクステント・ペアでは更に、再生期間が一致し、かつビデオ・ストリームの再生時間が等しくてもよい。言い換えれば、エクステント・ペア間ではVAUの数が等しくてもよい。その意義は次のとおりである。
図68の(a)は、隣接するベースビュー・データ・ブロックとディペンデントビュー・データ・ブロックとの間でエクステントATC時間が異なり、かつビデオ・ストリームの再生時間が異なるときの再生経路を示す模式図である。図68の(a)を参照するに、先頭のベースビュー・データ・ブロックB[0]の再生時間は4秒間であり、先頭のディペンデントビュー・データ・ブロックD[0]の再生時間は1秒間である。ここで、ディペンデントビュー・データ・ブロックD[0]の復号に必要なベースビュー・ビデオ・ストリームの部分はそのディペンデントビュー・データ・ブロックD[0]と同じ再生時間を持つ。従って、再生装置内のリード・バッファの容量を節約するには、図68の(a)に矢印ARW1で示されているように、再生装置にベースビュー・データ・ブロックB[0]とディペンデントビュー・データ・ブロックD[0]とを交互に同じ再生時間ずつ、例えば1秒間ずつ読み込ませることが好ましい。しかし、その場合、図68の(a)に破線で示されているように、読み出し処理の途中でジャンプが生じる。その結果、読み出し処理を復号処理に間に合わせることが難しいので、シームレス再生を確実に持続することが難しい。
図68の(b)は、隣接するベースビュー・データ・ブロックとディペンデントビュー・データ・ブロックとの間でビデオ・ストリームの再生時間が等しいときの再生経路を示す模式図である。図68の(b)に示されているように、隣接する二つのデータ・ブロックの間でビデオ・ストリームの再生時間が等しくてもよい。例えば、先頭のデータ・ブロック対B[0]、D[0]ではビデオ・ストリームの再生時間が共に1秒に等しく、二番目のデータ・ブロック対B[1]、D[1]ではビデオ・ストリームの再生時間が共に0.7秒に等しい。その場合、3D再生モードの再生装置は、図68の(b)に矢印ARW2で示されているように、データ・ブロックB[0]、D[0]、B[1]、D[1]、…を先頭から順番に読み出す。それだけで、再生装置はメインTSとサブTSとを交互に同じ再生時間ずつ読み出すことをスムーズに実現できる。特にその読み出し処理ではジャンプが生じないので、3D映像のシームレス再生が確実に持続可能である。
実際には、隣接するベースビュー・データ・ブロックとディペンデントビュー・データ・ブロックとの間でエクステントATC時間が等しければ、読み出し処理にジャンプを生じさせることなく、復号処理の同期を維持することはできる。従って、再生期間又はビデオ・ストリームの再生時間が等しくなくても、図68の(b)に示されている場合と同様に、再生装置はデータ・ブロック群を先頭から順番に読み出すだけで、3D映像のシームレス再生を確実に持続できる。
エクステント・ペア間では、VAUのいずれかのヘッダの数、又はPESヘッダの数が等しくてもよい。エクステント・ペア間での復号処理の同期には、それらのヘッダが利用される。従って、エクステント・ペア間でヘッダの数が等しければ、VAUそのものの数が等しくなくても、復号処理の同期を維持することは比較的容易である。更に、VAUそのものの数が等しい場合とは異なり、VAUのデータが全て同じデータ・ブロック内に多重化されていなくてもよい。それ故、BD−ROMディスク101のオーサリング工程において、ストリーム・データの多重化の自由度が高い。
エクステント・ペア間では、エントリ・ポイントの数が等しくてもよい。すなわち、ファイル・ベースとファイルDEPとでは、先頭から同じ順序のエクステントEXT1[k]、EXT2[k]が同じ数のエントリ・ポイントを含むように設定されていてもよい。2D再生モードと3D再生モードとではジャンプの有無は異なる。しかし、エクステント・ペア間でエントリ・ポイントの数が等しいとき、再生時間も実質的に等しい。従って、ジャンプの有無にかかわらず、復号処理の同期を維持することは容易である。更に、VAUそのものの数が等しい場合とは異なり、VAUのデータの全てが同じデータ・ブロック内に多重化されていなくてもよい。それ故、BD−ROMディスク101のオーサリング工程において、ストリーム・データの多重化の自由度が高い。
(M)3D映像を表すAVストリーム・ファイルでは、図22に示されているPMT2210に3Dディスクリプタが追加されてもよい。「3Dディスクリプタ」は、3D映像の再生方式に関してAVストリーム・ファイル全体に共通する情報であり、特に3D方式情報を含む。「3D方式情報」は、L/Rモード又はデプス・モード等、3D映像のAVストリーム・ファイルの再生方式を示す。更に、PMT2210の含む各ストリーム情報2203に3Dストリーム・ディスクリプタが追加されてもよい。「3Dストリーム・ディスクリプタ」は、AVストリーム・ファイルに含まれるエレメンタリ・ストリーム別に、3D映像の再生方式に関する情報を示す。特にビデオ・ストリームの3Dストリーム・ディスクリプタは3D表示タイプを含む。「3D表示タイプ」は、そのビデオ・ストリームから映像をL/Rモードで再生するとき、その映像がレフトビューとライトビューとのいずれであるのかを示す。3D表示タイプはまた、そのビデオ・ストリームから映像をデプス・モードで再生するとき、その映像が2D映像とデプスマップとのいずれであるのかを示す。このように、PMT2210が3D映像の再生方式に関する情報を含むとき、その映像の再生系統はAVストリーム・ファイルだけからでもその情報を取得できる。従って、そのようなデータ構造は、例えば放送波で3D映像コンテンツを頒布するときに有効である。
(N)ディペンデントビュー・クリップ情報ファイルは、ディペンデントビュー・ビデオ・ストリームのPID=0x1012、0x1013に割り当てられているビデオ・ストリーム属性情報に所定のフラグを含んでもよい。そのフラグがオンであるときは、ディペンデントビュー・ビデオ・ストリームがベースビュー・ビデオ・ストリームを参照するものであることを示す。そのビデオ・ストリーム属性情報が更に、参照先のベースビュー・ビデオ・ストリームに関する情報を含んでもよい。その情報は、3D映像コンテンツが規定のフォーマットどおりに作成されているか否かを所定のツールで検証するときに、ビデオ・ストリーム間の対応関係を確認するのに利用することができる。
本発明の実施形態1では、クリップ情報ファイルに含まれるエクステント起点からベースビュー・エクステントとディペンデントビュー・エクステントとの各サイズを算出することができる。その他に、各エクステントのサイズの一覧表が、例えばクリップ情報ファイルにメタデータの一部として格納されてもよい。
(O)図41に示されている3Dプレイリスト・ファイル1022はサブパス4102を一つ含む。その他に、3Dプレイリスト・ファイルがサブパスを複数含んでもよい。例えば、一方のサブパスのサブパス・タイプが「3D・L/R」であり、他方のサブパスのサブパス・タイプが「3D・デプス」であってもよい。その3Dプレイリスト・ファイルに従って3D映像が再生されるとき、再生対象のサブパスがそれら二種類のサブパスの間で切り換えられることにより、再生装置102をL/Rモードとデプス・モードとの間で容易に切り換えさせることができる。特にその切り換え処理は、3Dプレイリスト・ファイルそのものを切り換える処理よりも速やかに実現可能である。
3Dプレイリスト・ファイルは、サブパス・タイプの等しいサブパスを複数含んでいてもよい。例えば、同じシーンに対する両眼視差の異なる3D映像が共通のレフトビューに対するライトビューの違いで表現されるとき、異なるライトビューを表す複数のファイルDEPがBD−ROMディスク101に記録される。その場合、3Dプレイリスト・ファイルは、サブパス・タイプが「3D・L/R」であるサブパスを複数含む。それらのサブパスは、異なるファイルDEPの再生経路を個別に規定する。その3Dプレイリスト・ファイルに従って3D映像が再生されるとき、再生対象のサブパスが例えばユーザの操作に応じて速やかに切り換えられるので、3D映像を実質的に途切れさせることなく、その両眼視差を変化させることができる。それにより、ユーザに所望の両眼視差の3D映像を容易に選択させることができる。
図41に示されている3Dプレイリスト・ファイル1022では、ベースビュー・ビデオ・ストリームはメインパス4101内のSTNテーブルに登録され、ディペンデントビュー・ビデオ・ストリームは拡張データ4103内のSTNテーブルSS4130に登録されている。その他に、ディペンデントビュー・ビデオ・ストリームはSTNテーブルに登録されていてもよい。その場合、STNテーブルは、登録されたビデオ・ストリームがベースビューとディペンデントビューとのいずれを表すものであるかを示すフラグを含んでもよい。
本発明の実施形態1によるBD−ROMディスク101には、2Dプレイリスト・ファイルと3Dプレイリスト・ファイルとが別々に記録されている。その他に、図41に示されているサブパス4102が、拡張データ4103と同様に、3D再生モードの再生装置102によってのみ参照される領域に記録されてもよい。その場合、サブパス4102が2D再生モードの再生装置102を誤動作させる危険性はないので、3Dプレイリスト・ファイルをそのまま、2Dプレイリスト・ファイルとして利用することができる。その結果、BD−ROMディスクのオーサリングが簡単化される。
(P)図45に示されているインデックス・ファイル1011は、タイトル全体で共通する3D存在フラグ4520と2D/3Dお好みフラグ4530とを含む。その他に、インデックス・ファイルが、タイトル別に異なる3D存在フラグ又は2D/3Dお好みフラグを設定していてもよい。
(Q)3D再生装置では、SPRM(13)にパレンタル・レベルが設定されているのに加えて、SPRM(30)に3Dパレンタル・レベルが設定されていてもよい。3Dパレンタル・レベルは、3D再生装置を利用する視聴者のうち、3D映像の視聴が許可される者の年齢の下限を示し、BD−ROMディスク101に記録された3D映像タイトルの視聴に対するパレンタル制御に利用される。SPRM(13)の値と同様、SPRM(30)の値は3D再生装置のユーザによって3D再生装置のOSD等を利用して設定される。3D再生装置は各3D映像タイトルに対するパレンタル制御を例えば次のように行う。3D再生装置はまず、2D映像の視聴に対する制限年齢をBD−ROMディスク101から読み出してSPRM(13)の値と比較する。その制限年齢は、そのタイトルを2D再生モードで視聴することが許可された視聴者の年齢の下限を表す。その制限年齢がSPRM(13)の値を超えていれば、3D再生装置はそのタイトルの再生を停止する。その下限がSPRM(13)の値以下であれば、3D再生装置は続いて、3D映像の視聴に対する制限年齢をBD−ROMディスク101から読み出してSPRM(30)の値と比較する。その制限年齢は、そのタイトルを3D再生モードで視聴することが許可された視聴者の年齢の下限を表す。その制限年齢がSPRM(30)の値以下であれば、3D再生装置はそのタイトルを3D再生モードで再生する。その制限年齢がSPRM(30)の値を超えていれば、3D再生装置はそのタイトルを2D再生モードで再生する。こうして、年齢による瞳孔間距離の相違を考慮して、「一定の年齢未満の子供には3D映像を2D映像としてしか見せない」等のパレンタル制御を実現することができる。このパレンタル制御は、好ましくは、図46に示されている再生対象のプレイリスト・ファイルを選択する処理において「表示装置が3D映像に対応している」と判定されたときに、すなわち、ステップS4605において「Yes」と判定されたときに行われる。尚、SPRM(30)には、制限年齢に代えて、3D再生モードの許可/禁止を示す値が設定され、3D再生装置はその値に従って3D再生モードの有効/無効を判断してもよい。
(R)3D再生装置では、「2D再生モードと3D再生モードとのいずれが優先されるべきか」を示す値がSPRM(31)に設定されていてもよい。SPRM(31)の値は、3D再生装置のユーザによって3D再生装置のOSD等を利用して設定される。3D再生装置は、図46に示されているプレイリスト・ファイルの選択処理のうち、ステップS4603で2D/3Dお好みフラグと共にSPRM(31)を参照する。それらがいずれも2D再生モードを示しているときは、3D再生装置は2D再生モードを選択する。2D/3Dお好みフラグとSPRM(31)とがいずれも3D再生モードを示しているときは、3D再生装置は、再生モードの選択画面を表示することなく、ステップS4605、すなわちHDCP認証を行う。その結果、表示装置が3D映像の再生に対応可能であれば、3D再生装置は3D再生モードを選択する。2D/3Dお好みフラグとSPRM(31)とが異なる再生モードを示しているときは、3D再生装置はステップS4604を実行し、すなわち再生モードの選択画面を表示してユーザに再生モードを選択させる。その他に、アプリケーション・プログラムに再生モードを選択させてもよい。こうして、3D映像コンテンツに2D/3Dお好みフラグが設定されていても、その値の示す再生モードが、SPRM(31)の示す再生モード、すなわち、ユーザが予め設定した再生モードと一致しないときにのみ、ユーザに改めて再生モードを選択させるようにすることができる。
BD−Jオブジェクト等のアプリケーション・プログラムは、SPRM(31)を参照して再生モードを選択してもよい。更に、ステップS4604においてユーザに再生モードを選択させる際、選択画面に表示されるメニューの初期状態がSPRM(31)の値に依って決定されてもよい。例えば、SPRM(31)の値が2D再生モードの優先を示す場合には、2D再生モードの選択ボタンにカーソルを合わせた状態でメニューが表示され、3D再生モードの優先を示す場合には、3D再生モードの選択ボタンにカーソルを合わせた状態でメニューが表示される。その他に、3D再生装置は、父、母、子供等、複数のユーザのアカウントを管理する機能を持つとき、現時点でログインしているユーザのアカウントに合わせてSPRM(31)の値を設定してもよい。
SPRM(31)の値は、「2D再生モードと3D再生モードとのいずれが優先されるべきか」に加えて、「2D再生モードと3D再生モードとのいずれが常に設定されるべきか」を示してもよい。「2D再生モードが常に設定されるべき」ことをSPRM(31)の値が示す場合、3D再生装置は、2D/3Dお好みフラグの値にかかわらず、常に2D再生モードを選択する。その場合、SPRM(25)の値は2D再生モードを示すように設定される。「3D再生モードが常に設定されるべき」ことをSPRM(31)の値が示す場合、3D再生装置は、2D/3Dお好みフラグの値にかかわらず、再生モードの選択画面を表示することなくHDCP認証を行う。その場合、SPRM(25)の値は3D再生モード(L/Rモード又はデプス・モード)を示すように設定される。こうして、3D映像コンテンツに2D/3Dお好みフラグが設定されていても、ユーザの予め設定した再生モードが常に優先されるようにすることができる。
《実施形態3》
以下、本発明の実施形態3として、本発明の実施形態1、2による記録媒体の記録装置及び記録方法について説明する。その記録装置は、いわゆるオーサリング装置と呼ばれるものである。オーサリング装置は通常、頒布用の映画コンテンツの制作スタジオに設置され、オーサリング・スタッフによって使用される。記録装置はオーサリング・スタッフの操作に従い、まず映画コンテンツを所定の圧縮符号化方式でAVストリーム・ファイルに変換する。記録装置は次にシナリオを生成する。「シナリオ」は、映画コンテンツに含まれる各タイトルの再生方法を規定した情報であり、具体的には、動的シナリオ情報と静的シナリオ情報とを含む。記録装置は続いて、AVストリーム・ファイル及びシナリオからBD−ROMディスク用のボリューム・イメージを生成する。記録装置は最後に、そのボリューム・イメージを記録媒体に記録する。
図69は、その記録装置6900の機能ブロック図である。図69を参照するに、その記録装置6900は、データベース部6901、ビデオ・エンコーダ6902、素材制作部6903、シナリオ生成部6904、BDプログラム制作部6905、多重化処理部6906、及びフォーマット処理部6907を含む。
データベース部6901は記録装置に内蔵の不揮発性記憶装置であり、特にHDDである。データベース部6901はその他に、記録装置に外付けされたHDDであってもよく、記録装置に内蔵の、又は外付けされた不揮発性半導体メモリ装置であってもよい。
ビデオ・エンコーダ6902は、非圧縮のビットマップ・データ等の映像データをオーサリング・スタッフから受け付けて、MPEG−4 AVC、MVC、又はMPEG−2等の圧縮符号化方式で圧縮する。それにより、主映像のデータはプライマリ・ビデオ・ストリームに変換され、副映像のデータはセカンダリ・ビデオ・ストリームに変換される。特に3D映像のデータは、MVC等の多視点符号化方式を利用して、図15に示されているようなベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとの対に変換される。すなわち、レフトビューを表すビデオ・フレームの列は、それ自身のピクチャ間での予測符号化によって、ベースビュー・ビデオ・ストリームに変換される。一方、ライトビューを表すビデオ・フレームの列は、それ自身のピクチャだけでなく、ベースビュー・ピクチャとの間の予測符号化によって、ディペンデントビュー・ビデオ・ストリームに変換される。尚、ライトビューを表すビデオ・フレームの列がベースビュー・ビデオ・ストリームに変換され、レフトビューを表すビデオ・フレームの列がディペンデントビュー・ビデオ・ストリームに変換されてもよい。変換後の各ビデオ・ストリーム6912はデータベース部6901に保存される。
ビデオ・エンコーダ6902は、ピクチャ間予測符号化の処理過程でレフトビューとライトビューとの間での各映像の動きベクトルを検出し、それらから各3D映像の奥行き情報を算出する。図70の(a)、(b)は、3D映像の一シーンの表示に利用されるレフトビュー・ピクチャとライトビュー・ピクチャとを表す模式図であり、(c)は、ビデオ・エンコーダ6902によってそれらのピクチャから算出された奥行き情報を示す模式図である。
ビデオ・エンコーダ6902はレフトビューとライトビューとの各ピクチャの圧縮に、それらのピクチャ間の冗長性を利用する。すなわち、ビデオ・エンコーダ6902は圧縮前の両ピクチャを8×8又は16×16の画素マトリクスごとに、すなわちマクロブロックごとに比較して、両ピクチャ間での各映像の動きベクトルを検出する。具体的には、図70の(a)、(b)に示されているように、まず、レフトビュー・ピクチャ7001とライトビュー・ピクチャ7002とはそれぞれ、マクロブロック7003のマトリクスに分割される。次に、両ピクチャ7001、7002間でイメージ・データがマクロブロック7003ごとに比較され、その結果から各映像の動きベクトルが検出される。例えば、「家」の映像7004を表す領域は両ピクチャ7001、7002間で実質的に等しい。従って、それらの領域からは動きベクトルが検出されない。一方、「球」の映像7005を表す領域は両ピクチャ7001、7002間で異なるので、それらの領域からはその映像7005の動きベクトルが検出される。
ビデオ・エンコーダ6902は、検出された動きベクトルを各ピクチャ7001、7002の圧縮に利用する。一方、ビデオ・エンコーダ6902はその動きベクトルを、「家」の映像7004及び「球」の映像7005等、各映像の両眼視差の計算に利用する。ビデオ・エンコーダ6902は更に、各映像の両眼視差からその映像の奥行きを算出する。その奥行きを表す情報は、図70の(c)に示されているように、各ピクチャ7001、7002のマクロブロックのマトリクスと同じサイズのマトリクス7006に整理される。このマトリクス7006内のブロック7007は、各ピクチャ7001、7002内のマクロブロック7003と一対一に対応する。各ブロック7007は、対応するマクロブロック7003の表す映像の奥行きを、例えば8ビットの深度で表す。図70に示されている例では、「球」の映像7005の奥行きがマトリクス7006の領域7008内の各ブロックに記録される。その領域7008は、その映像7005を表す各ピクチャ7001、7002内の領域の全体に対応する。
ビデオ・エンコーダ6902は、レフトビュー・ビデオ・フレームとライトビュー・ビデオ・フレームとのそれぞれについて、図62の(b)に示されている表示タイプ6202を設定してもよい。各フレームに対する表示タイプ6911はデータベース部6901に保存される。
ビデオ・エンコーダ6902はその他に、2D映像のデータからセカンダリ・ビデオ・ストリームを符号化する際に、オーサリング・スタッフの操作に従って、副映像プレーンに対するオフセット情報6910を作成してもよい。作成されたオフセット情報6910はデータベース部6901に保存される。
素材制作部6903は、ビデオ・ストリーム以外のエレメンタリ・ストリーム、例えば、オーディオ・ストリーム6913、PGストリーム6914、及びIGストリーム6915を作成してデータベース部6901に保存する。例えば、素材制作部6903はオーサリング・スタッフから非圧縮のLPCM音声データを受け付けて、それをAC−3等の圧縮符号化方式で符号化してオーディオ・ストリーム6913に変換する。素材制作部6903はその他に、オーサリング・スタッフから字幕情報ファイルを受け付けて、それに従ってPGストリーム6914を作成する。字幕情報ファイルは、字幕を表すイメージ・データ又はテキスト・データ、その字幕の表示時期、及び、その字幕に加えられるべきフェード・イン/アウト等の視覚効果を規定する。素材制作部6903は更に、オーサリング・スタッフからビットマップ・データとメニュー・ファイルとを受け付けて、それらに従ってIGストリーム6915を作成する。ビットマップ・データはメニューのイメージを表す。メニュー・ファイルは、そのメニューに配置される各ボタンの状態の遷移、及び各ボタンに加えられるべき視覚効果を規定する。
素材制作部6903は更に、オーサリング・スタッフの操作に従い、PGストリーム6914とIGストリーム6915とのそれぞれに対するオフセット情報6910を作成する。その場合、素材制作部6903は、ビデオ・エンコーダ6902によって生成された奥行き情報DPIを利用して、3Dグラフィックス映像の奥行きを3D映像の奥行きに合わせてもよい。その場合、3D映像の奥行きがフレームごとに激しく変化するときには、素材制作部6903は、奥行き情報DPIを利用して作成されたオフセット値の列を更にローパスフィルタで処理して、フレームごとの変化を低減させてもよい。こうして、作成されたオフセット情報6910はデータベース部6901に保存される。
シナリオ生成部6904は、オーサリング・スタッフからGUI経由で受け付けられた指示に従ってBD−ROMシナリオ・データ6917を作成し、データベース部6901に保存する。BD−ROMシナリオ・データ6917は、データベース部6901に保存された各エレメンタリ・ストリーム6912−6916の再生方法を規定する。BD−ROMシナリオ・データ6917は、図10に示されているファイル群のうち、インデックス・ファイル1011、ムービーオブジェクト・ファイル1012、及びプレイリスト・ファイル1021−1023を含む。シナリオ生成部6904は更に、パラメータ・ファイルPRFを作成して多重化処理部6906へ送出する。パラメータ・ファイルPRFは、データベース部6901に保存されたエレメンタリ・ストリーム6912−6915の中から、メインTSとサブTSとのそれぞれに多重化されるべきストリーム・データを規定する。
BDプログラム制作部6905はオーサリング・スタッフに対して、BD−Jオブジェクト及びJavaアプリケーション・プログラムのプログラミング環境を提供する。BDプログラム制作部6905はGUIを通じてユーザからの要求を受け付け、その要求に従って各プログラムのソースコードを作成する。BDプログラム制作部6905は更に、BD−JオブジェクトからBD−Jオブジェクト・ファイル1051を作成し、Javaアプリケーション・プログラムをJARファイル1061に圧縮する。それらのプログラム・ファイル群BDPはフォーマット処理部6907へ送出される。
ここで、BD−Jオブジェクトが次のようにプログラミングされる場合を想定する:BD−Jオブジェクトは、図54に示されているプログラム実行部5434にGUI用のグラフィックス・データをシステム・ターゲット・デコーダ5423へ送出させる。BD−Jオブジェクトは更に、システム・ターゲット・デコーダ5423にそのグラフィックス・データをイメージ・プレーン・データとして処理させ、プレーン加算部5424にイメージ・プレーン・データを1プレーン+オフセット・モードで送出させる。その場合、BDプログラム制作部6905は、イメージ・プレーンに対するオフセット情報6910を作成してデータベース部6901に保存する。BDプログラム制作部6905はそのオフセット情報6910の作成に、ビデオ・エンコーダ6902によって生成された奥行き情報DPIを利用してもよい。
多重化処理部6906はパラメータ・ファイルPRFに従い、データベース部6901に保存されている各エレメンタリ・ストリーム6912−6915をMPEG2−TS形式のストリーム・ファイルに多重化する。具体的には、図12に示されているように、まず、各エレメンタリ・ストリーム6912−6915が一つのソースパケット列に変換され、次に、各列のソースパケットが一本の多重化ストリーム・データにまとめられる。こうして、メインTSとサブTSとが作成される。それらの多重化ストリーム・データMSDはフォーマット処理部6907へ送出される。
多重化処理部6906は更に、データベース部6901に保存されているオフセット情報6910に基づいてオフセット・メタデータを作成する。図19に示されているように、作成されたオフセット・メタデータ1910は、ディペンデントビュー・ビデオ・ストリームに含まれる各ビデオ・シーケンスの先頭のVAUに補足データ1901として格納される。また、多重化処理部6906は各グラフィックス・データを加工して、左右の各映像フレーム内でのグラフィックス部品の配置を調整してもよい。それにより、各グラフィックス・プレーンの表す3Dグラフィックス映像が、他のグラフィックス・プレーンの表す3Dグラフィックス映像と同じ視方向に重なって表示されることを、多重化処理部6906は防止できる。その他に、多重化処理部6906は各グラフィックス・プレーンに対するオフセット値を調整して、各3Dグラフィックス映像が異なる奥行きに表示されるようにできる。一方、多重化処理部6906は、データベース部6901に保存されている表示タイプ6911を、図62の(a)に示されているように、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとのそれぞれに含まれる各VAU内の補足データ6201に格納してもよい。
多重化処理部6906はその上、2Dクリップ情報ファイルとディペンデントビュー・クリップ情報ファイルとを、以下の手順(I)−(IV)で作成する:(I)ファイル2DとファイルDEPとのそれぞれについて、図33に示されているエントリ・マップ3230を生成する。(II)各ファイルのエントリ・マップを利用して、図34の(a)、(b)に示されているエクステント起点3242、3420を作成する。そのとき、隣接するデータ・ブロック間でエクステントATC時間を揃える。更に、2Dエクステント、ベースビュー・エクステント、及びディペンデントビュー・エクステントの各サイズが条件1、2等を満たすようにエクステントの配置を設計する。(III)メインTSとサブTSとのそれぞれに多重化されるべきエレメンタリ・ストリームから、図32に示されているストリーム属性情報3220を抽出する。(IV)図32に示されているように、エントリ・マップ3230、3Dメタデータ3240、及びストリーム属性情報3220の組み合わせをクリップ情報3210に対応付ける。こうして、各クリップ情報ファイルCLIが作成され、フォーマット処理部6907へ送出される。
フォーマット処理部6907は、データベース部6901に保存されたBD−ROMシナリオ・データ6917、BDプログラム制作部6905によって制作されたBD−Jオブジェクト・ファイル等のプログラム・ファイル群BDP、及び、多重化処理部6906によって生成された多重化ストリーム・データMSDとクリップ情報ファイルCLIとから、図10に示されているディレクトリ構造のBD−ROMディスク・イメージ6920を作成する。そのディレクトリ構造ではファイルシステムとしてUDFが利用される。
フォーマット処理部6907は、ファイル2D、ファイルDEP、及びファイルSSの各ファイル・エントリを作成するとき、2Dクリップ情報ファイルとディペンデントビュー・クリップ情報ファイルとのそれぞれに含まれるエントリ・マップと3Dメタデータとを参照する。それにより、エントリ・ポイントとエクステント起点との各SPNがアロケーション記述子の作成に利用される。特に、図23に示されているようなデータ・ブロックのインターリーブ配置が表現されるように、各アロケーション記述子の表すべきLBNの値とエクステントのサイズとが決定される。その結果、各ベースビュー・データ・ブロックはファイルSSとファイル2Dとに共有され、各ディペンデントビュー・データ・ブロックはファイルSSとファイルDEPとに共有される。
<BD−ROMディスク・イメージの記録方法>
図71は、図69に示されている記録装置6900を利用してBD−ROMディスクへ映画コンテンツを記録する方法のフローチャートである。この方法は、例えば記録装置6900の電源投入によって開始される。
ステップS7101では、BD−ROMディスクへ記録されるべきエレメンタリ・ストリーム、プログラム、及びシナリオ・データが作成される。すなわち、ビデオ・エンコーダ6902はビデオ・ストリーム6912を作成する。素材制作部6903は、オーディオ・ストリーム6913、PGストリーム6914、及びIGストリーム6915を作成する。シナリオ生成部6904はBD−ROMシナリオ・データ6917を作成する。作成されたそれらのデータ6912−6917はデータベース部6901に保存される。一方、ビデオ・エンコーダ6902は、オフセット情報6910と表示タイプ6911とを作成してデータベース部6901に保存する。素材制作部6903はオフセット情報6910を作成してデータベース部6901に保存する。シナリオ生成部6904はパラメータ・ファイルPRFを作成して多重化処理部6906へ送出する。BDプログラム制作部6905は、BD−Jオブジェクト・ファイルとJARファイルとを含むプログラム・ファイル群BDPを作成してフォーマット処理部6907へ送出し、オフセット情報6910を作成してデータベース部6901に保存する。その後、処理はステップS7102へ進む。
ステップS7102では、多重化処理部6906は、データベース部6901に保存されたオフセット情報6910に基づいてオフセット・メタデータを作成する。作成されたオフセット・メタデータは、ディペンデントビュー・ビデオ・ストリーム内に補足データ1901として格納される。その後、処理はステップS7103へ進む。
ステップS7103では、多重化処理部6906はパラメータ・ファイルPRFに従い、データベース部6901から各エレメンタリ・ストリーム6912−6915を読み出してMPEG2−TS形式のストリーム・ファイルに多重化する。その後、処理はステップS7104へ進む。
ステップS7104では、多重化処理部6906は2Dクリップ情報ファイルとディペンデントビュー・クリップ情報ファイルとを作成する。特に、エントリ・マップとエクステント起点との作成では、エクステント・ペア間でエクステントATC時間が揃えられる。更に、2Dエクステント、ベースビュー・エクステント、及びディペンデントビュー・エクステントのサイズが条件1、2等を満たすように設計される。その後、処理はステップS7105へ進む。
ステップS7105では、フォーマット処理部6907は、BD−ROMシナリオ・データ6917、プログラム・ファイル群BDP、多重化ストリーム・データMDS、及びクリップ情報ファイルCLIから、BD−ROMディスク・イメージ6920を作成する。その後、処理はステップS7106へ進む。
ステップS7106では、BD−ROMディスク・イメージ6920がBD−ROMプレス用データに変換される。更に、このデータはBD−ROMディスクの原盤に記録される。その後、処理はステップS7107へ進む。
ステップS7107では、ステップS7106で得られた原盤をプレス工程に利用してBD−ROMディスク101の大量生産を行う。こうして、処理が終了する。
《補足》
<3D映像の再生方法の原理>
3D映像の再生方法は、ホログラフィ技術を用いる方法と、視差映像を用いる方法との二つに大別される。
ホログラフィ技術を用いる方法の特徴は、現実の立体的な物体から人間の視覚に与えられる光学的な情報とほぼ全く同じ情報を視聴者の視覚に与えることにより、その視聴者に映像中の物体を立体的に見せる点にある。しかし、この方法を動画表示に利用する技術は理論上確立されてはいる。しかし、その動画表示に必要とされる、膨大な演算をリアルタイムに処理可能なコンピュータ、及び、1mmあたり数千本という超高解像度の表示装置はいずれも、現在の技術ではまだ、実現が非常に難しい。従って、この方法を商業用として実用化する目途は、現時点ではほとんど立っていない。
「視差映像」とは、一つのシーンを見る視聴者の各目に映る2D映像の対、すなわち、レフトビューとライトビューとの対をいう。視差映像を用いる方法の特徴は、一つのシーンのレフトビューとライトビューとを視聴者の各目だけに見えるように再生することにより、その視聴者にそのシーンを立体的に見せる点にある。
図72の(a)−(c)は、視差映像を用いる方法による3D映像(立体視映像)の再生原理を説明するための模式図である。図72の(a)は、視聴者VWRが、顔の正面に置かれた立方体CBCを見ている光景の上面図である。図72の(b)、(c)はそれぞれ、そのときに視聴者VWRの左目LEY、右目REYに見える立方体CBCの外観を2D映像として示す模式図である。図72の(b)、(c)を比較すれば明らかなとおり、各目に見える立方体CBCの外観はわずかに異なる。この外観の差、すなわち両眼視差から、視聴者VWRは立方体CBCを立体的に認識できる。従って、視差映像を用いる方法では、まず、一つのシーン、例えば図72の(a)に示されている立方体CBCに対し、視点が異なる左右の2D映像、例えば図72の(b)に示されている立方体CBCのレフトビュー、及び図72の(c)に示されているそのライトビューを準備する。ここで、各視点の位置は視聴者VWRの両眼視差から決定される。次に、各2D映像を視聴者VWRのそれぞれの目だけに見えるように再生する。それにより、視聴者VWRには、画面に再生されるそのシーン、すなわち立方体CBCの映像が立体的に見える。このように、視差映像を用いる方法は、ホログラフィ技術を用いる方法とは異なり、高々二つの視点から見える2D映像を準備するだけでよい点で有利である。
視差映像を用いる方法については、それを具体化するための方式が多様に提案されている。それらの方式は、左右の2D映像を視聴者のそれぞれの目にいかにして見せるかという観点から、継時分離方式、レンチキュラーレンズを用いる方式、及び二色分離方式等に分けられる。
継時分離方式では、画面に左右の2D映像を一定時間ずつ交互に表示する一方、視聴者にシャッター眼鏡を通して画面を観察させる。ここで、シャッター眼鏡は、各レンズが例えば液晶パネルで形成されている。各レンズは、画面上の2D映像の切り換えに同期して交互に光をその全体で一様に透過させ、又は遮断する。すなわち、各レンズは、視聴者の目を周期的に塞ぐシャッターとして機能する。より詳細に言えば、画面上に左映像が表示される期間では、シャッター眼鏡は左側のレンズには光を透過させ、右側のレンズには光を遮断させる。逆に、画面上に右映像が表示されている期間では、シャッター眼鏡は右側のレンズには光を透過させ、左側のレンズには光を遮断させる。それにより、視聴者の目には、左右の映像の残像が重なって一つの3D映像に見える。
継時分離方式では、上記のとおり、左右の映像を一定周期で交互に表示する。例えば2D映像の再生において1秒当たり24枚の映像フレームが表示されるとき、3D映像の再生では左右の映像を合わせて、1秒当たり48枚の映像フレームが表示される。従って、この方式には、画面の書き換えを速く実行できる表示装置が好適である。
レンチキュラーレンズを用いる方式では、左右の各映像フレームを、縦方向に細長い短冊形の小領域に分割し、一つの画面の中に左右の映像フレームの各小領域を横方向に交互に並べて同時に表示する。ここで、画面の表面はレンチキュラーレンズで覆われている。レンチキュラーレンズは、細長い蒲鉾レンズを複数平行に並べて一枚のシート状にしたものである。各蒲鉾レンズは画面の表面を縦方向に延びている。レンチキュラーレンズを通して上記左右の映像フレームを視聴者に見せるとき、左映像フレームの表示領域からの光は視聴者の左目だけに結像し、右映像フレームの表示領域からの光は右目だけに結像するようにできる。こうして、左右の目に映る映像間での両眼視差により、視聴者には3D映像が見える。尚、この方式では、レンチキュラーレンズに代えて、同様な機能を持つ液晶素子等の他の光学部品が利用されてもよい。その他に、例えば左映像フレームの表示領域には縦偏光のフィルタを設置し、右映像フレームの表示領域には横偏光のフィルタを設置してもよい。そのとき、視聴者には偏光眼鏡を通して画面を見させる。ここで、その偏光眼鏡では、左側のレンズに縦偏光フィルタが設置され、かつ右側のレンズに横偏光フィルタが設置されている。従って、左右の映像が視聴者のそれぞれの目だけに見えるので、視聴者に3D映像を見せることができる。
視差映像を用いる方法では、3D映像コンテンツが、初めから左右の映像の組み合わせで構成されている場合の他に、2D映像とデプスマップとの組み合わせで構成されていてもよい。その2D映像は、再生対象の3D映像から仮想的な2D画面への射影を表し、デプスマップは、その2D画面に対するその3D映像の各部の奥行きを画素別に表す。3D映像コンテンツが2D映像とデプスマップとの組み合わせで構成されているとき、3D再生装置又は表示装置はまず、それらの組み合わせから左右の映像を構成し、次にそれらの映像から上記の方式のいずれかで3D映像を再現する。
図73は、2D映像MVWとデプスマップDPHとの組み合わせからレフトビューLVWとライトビューRVWとを構成する例を示す模式図である。図73を参照するに、2D映像MVWでは、背景BGVの中に円板DSCが表示されている。デプスマップDPHはその2D映像MVW内の各部の奥行きを画素ごとに示す。そのデプスマップDPHによれば、2D映像MVWのうち、円板DSCの表示領域DA1の奥行きが画面よりも手前であり、かつ、背景BGVの表示領域DA2の奥行きが画面よりも奥である。再生装置内では視差映像生成部PDGがまず、デプスマップDPHの示す各部の奥行きから2D映像MVW内の各部の両眼視差を計算する。視差映像生成部PDGは次に、2D映像MVW内の各部の表示位置を、計算された両眼視差に応じて左右に移動させて、レフトビューLVWとライトビューRVWとを構成する。図73に示されている例では、視差映像生成部PDGは、2D映像MVW内の円板DSCの表示位置に対し、レフトビューLVW内の円板DSLの表示位置をその両眼視差の半分S1だけ右に移動させ、ライトビューRVW内の円板DSRの表示位置をその両眼視差の半分S1だけ左に移動させる。それにより、視聴者には円板DSCが画面よりも手前に見える。一方、視差映像生成部PDGは、2D映像MVW内の背景BGVの表示位置に対し、レフトビューLVW内の背景BGLの表示位置をその両眼視差の半分S2だけ左に移動させ、ライトビューRVW内の背景BGRの表示位置をその両眼視差の半分S2だけ右に移動させる。それにより、視聴者には背景BGVが画面よりも奥に見える。
視差映像を用いる方法による3D映像の再生システムは、映画館及び遊園地のアトラクション等で利用されるものについては既に確立され、一般的に使用されている。従って、その方法は、3D映像を再生可能なホームシアター・システムの実用化にも有効である。本発明の実施形態では、視差映像を用いる方法のうち、継時分離方式又は偏光眼鏡を用いた方式を想定する。但し、本発明は、それらの方式とは異なる他の方式に対しても、それらが視差映像を用いている限り、適用可能である。それは、上記の実施形態の説明から当業者には明らかであろう。
<BD−ROMディスク上のファイルシステム>
BD−ROMディスク101のファイルシステムとしてUDFが利用されるとき、図10に示されているボリューム領域1002Bは、一般に複数のディレクトリ、ファイルセット記述子、及び終端記述子のそれぞれが記録された領域を含む。「ディレクトリ」は、同じディレクトリを構成するデータ群である。「ファイルセット記述子」は、ルートディレクトリのファイル・エントリが記録されているセクタのLBNを示す。「終端記述子」はファイルセット記述子の記録領域の終端を示す。
各ディレクトリは共通のデータ構造を持つ。各ディレクトリは特に、ファイル・エントリ、ディレクトリ・ファイル、及び下位ファイル群を含む。
「ファイル・エントリ」は、記述子タグ、ICB(Information Control Block)タグ、及びアロケーション記述子を含む。「記述子タグ」は、その記述子タグを含むデータの種類がファイル・エントリであることを示す。例えば記述子タグの値が“261”であるとき、そのデータの種類はファイル・エントリである。「ICBタグ」はそのファイル・エントリ自身の属性情報を示す。「アロケーション記述子」は、同じディレクトリに属するディレクトリ・ファイルが記録されたセクタのLBNを示す。
「ディレクトリ・ファイル」は、下位ディレクトリのファイル識別記述子と下位ファイルのファイル識別記述子とを一般に複数ずつ含む。「下位ディレクトリのファイル識別記述子」は、そのディレクトリの直下に置かれた下位ディレクトリにアクセスするための情報である。このファイル識別記述子は、その下位ディレクトリの識別情報、ディレクトリ名の長さ、ファイル・エントリ・アドレス、及びディレクトリ名そのものを含む。特にファイル・エントリ・アドレスは、その下位ディレクトリのファイル・エントリが記録されたセクタのLBNを示す。「下位ファイルのファイル識別記述子」は、そのディレクトリの直下に置かれた下位ファイルにアクセスするための情報である。このファイル識別記述子は、その下位ファイルの識別情報、ファイル名の長さ、ファイル・エントリ・アドレス、及びファイル名そのものを含む。特にファイル・エントリ・アドレスは、その下位ファイルのファイル・エントリが記録されたセクタのLBNを示す。「下位ファイルのファイル・エントリ」は、後述のとおり、下位ファイルの本体を構成するデータのアドレス情報を含む。
ファイルセット記述子と下位ディレクトリ/ファイルのファイル識別記述子とを順番に辿ってゆけば、ボリューム領域1002Bに記録された任意のディレクトリ/ファイルのファイル・エントリにアクセスすることができる。具体的には、まず、ファイルセット記述子からルートディレクトリのファイル・エントリが特定され、そのファイル・エントリ内のアロケーション記述子からルートディレクトリのディレクトリ・ファイルが特定される。次に、そのディレクトリ・ファイルからルートディレクトリ直下のディレクトリのファイル識別記述子が検出され、その中のファイル・エントリ・アドレスからそのディレクトリのファイル・エントリが特定される。更に、そのファイル・エントリ内のアロケーション記述子からそのディレクトリのディレクトリ・ファイルが特定される。続いて、そのディレクトリ・ファイルのうち、下位ディレクトリ又は下位ファイルのファイル識別記述子内のファイル・エントリ・アドレスからその下位ディレクトリ又は下位ファイルのファイル・エントリが特定される。
「下位ファイル」はそれぞれエクステントとファイル・エントリとを含む。「エクステント」は一般に複数であり、それぞれ、ディスク上の論理アドレス、すなわちLBNが連続しているデータ列である。エクステントの全体が下位ファイルの本体を構成する。「ファイル・エントリ」は、記述子タグ、ICBタグ、及びアロケーション記述子を含む。「記述子タグ」は、その記述子タグを含むデータの種類がファイル・エントリであることを示す。「ICBタグ」はそのファイル・エントリ自身の属性情報を示す。「アロケーション記述子」は各エクステントに対して一つずつ設けられ、ボリューム領域1002B上での各エクステントの配置、具体的には各エクステントのサイズとその先端のLBNとを示す。従って、各アロケーション記述子を参照することにより、各エクステントにアクセスすることができる。その他に、各アロケーション記述子の上位2ビットは、そのアロケーション記述子の示すLBNのセクタにエクステントが実際に記録されているか否かを示す。すなわち、その上位2ビットが“0”であるとき、そのセクタにはエクステントが割り付け済みであり、かつ記録済みであることを示し、“1”であるとき、そのセクタにエクステントが割り付け済みではあるが未記録であることを示す。
UDFを利用した上記のファイルシステムと同様、ボリューム領域に対するファイルシステムでは一般に、ボリューム領域に記録された各ファイルが複数のエクステントに分割されているとき、上記のアロケーション記述子のように、各エクステントの配置を示す情報がボリューム領域に併せて記録される。その情報を参照することにより、各エクステントの配置、特にその論理アドレスを知ることができる。
<復号スイッチ情報>
図74の(a)は、復号スイッチ情報A050のデータ構造を示す模式図である。復号スイッチ情報A050は、図16に示されているベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとの各VAUでその補足データ1631D、1632Dに格納されている。但し、ディペンデントビュー・ビデオ・ストリームの各GOPの先頭に位置するVAU#1では、復号スイッチ情報A050は、オフセット・メタデータを含む補足データ1632Dとは別の補足データに格納される。補足データ1631D、1632Dは、特にMPEG−4 AVC、MVCではNALユニットの一種“SEI”に相当する。復号スイッチ情報A050は、再生装置102内のデコーダに、次に復号すべきVAUを容易に特定させるための情報である。ここで、そのデコーダは後述のように、ベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとをVAU単位で交互に復号する。そのとき、そのデコーダは一般に、各VAUに付与されたDTSの示す時刻に合わせて、次に復号すべきVAUを特定する。しかし、デコーダの種類には、DTSを無視してVAUを順次、復号し続けるものも多い。そのようなデコーダにとって、各VAUがDTSに加えて復号スイッチ情報A050を含むことは好ましい。
図74の(a)を参照するに、復号スイッチ情報A050は、次アクセスユニット・タイプA051、次アクセスユニット・サイズA052、及び復号カウンタA053を含む。次アクセスユニット・タイプA051は、次に復号されるべきVAUがベースビュー・ビデオ・ストリームとディペンデントビュー・ビデオ・ストリームとのいずれに属するのかを示す。例えば、次アクセスユニット・タイプA051の値が“1”であるときは、次に復号されるべきVAUはベースビュー・ビデオ・ストリームに属し、“2”であるときはディペンデントビュー・ビデオ・ストリームに属する。次アクセスユニット・タイプA051の値が“0”であるときは、現在のVAUが復号対象のストリームの後端に位置し、次に復号されるべきVAUが存在しない。次アクセスユニット・サイズA052は、次に復号されるべきVAUのサイズを示す。再生装置102内のデコーダは、次アクセスユニット・サイズA052を参照することにより、VAUの構造自体を解析することなく、そのサイズを特定できる。従って、デコーダはバッファからVAUを容易に抽出できる。復号カウンタA053は、それの属するVAUが復号されるべき順番を示す。その順番は、ベースビュー・ビデオ・ストリーム内のIピクチャを含むVAUから数えられる。
図74の(b)は、ベースビュー・ビデオ・ストリームA001とディペンデントビュー・ビデオ・ストリームA002との各ピクチャに割り当てられた復号カウンタの一例A010、A020を示す模式図である。図74の(b)を参照するに、復号カウンタA010、A020は両ビデオ・ストリームA001、A002の間で交互にインクリメントされる。例えば、ベースビュー・ビデオ・ストリームA001内のIピクチャを含むVAUA011に対し、復号カウンタA010として“1”が割り当てられる。次に復号されるべきディペンデントビュー・ビデオ・ストリームA002内のPピクチャを含むVAUA021に対し、復号カウンタA020として“2”が割り当てられる。更にその次に復号されるべきベースビュー・ビデオ・ストリームA001内のPピクチャを含むVAUA012に対し、復号カウンタA010として“3”が割り当てられる。その割り当てにより、何らかの不具合が原因で再生装置102内のデコーダがいずれかのVAUを読み損なったときでも、それによって欠落したピクチャをデコーダは復号カウンタA010、A020から直ちに特定できる。従って、デコーダはエラー処理を適切に、かつ迅速に実行できる。
図74の(b)に示されている例では、ベースビュー・ビデオ・ストリームA001の3番目のVAUA013の読み込みにエラーが生じ、Brピクチャが欠落している。しかし、デコーダは、ディペンデントビュー・ビデオ・ストリームA002の2番目のVAUA022に含まれるPピクチャの復号処理で、そのVAUA022から復号カウンタA020を読み出して保持している。従って、デコーダは次に処理すべきVAUの復号カウンタA010を予測できる。具体的には、そのPピクチャを含むVAUA022内の復号カウンタA020は“4”であるので、次に読み込まれるべきVAUの復号カウンタA010は“5”であると予測される。しかし、実際には、次に読み込まれたVAUはベースビュー・ビデオ・ストリームA001の4番目のVAUA014であったので、その復号カウンタA010は“7”である。そのことから、デコーダは、VAUを一つ読み損ねたことを検出できる。従って、デコーダは次のエラー処理を実行できる:「ディペンデントビュー・ビデオ・ストリームA002の3番目のVAUA023から抽出されたBピクチャについては、参照すべきBrピクチャが欠落しているので復号処理をスキップする」。このように、デコーダは復号処理ごとに復号カウンタA010、A020をチェックする。それにより、デコーダはVAUの読み込みエラーを迅速に検出でき、かつ適切なエラー処理を迅速に実行できる。その結果、再生映像へのノイズの混入を防止することができる。
図74の(c)は、ベースビュー・ビデオ・ストリームA001とディペンデントビュー・ビデオ・ストリームA002との各ピクチャに割り当てられた復号カウンタの別例A030、A040を示す模式図である。図74の(c)を参照するに、復号カウンタA030、A040は各ビデオ・ストリームA001、A002で別々にインクリメントされる。従って、復号カウンタA030、A040は、同じ3D・VAUに属する一対のピクチャ間で等しい。その場合、デコーダはベースビュー・ビデオ・ストリームA001のVAUを一つ復号した時点では次のように予測できる:「その復号カウンタA030が、次に復号されるべきディペンデントビュー・ビデオ・ストリームA002のVAUの復号カウンタA040に等しい」。一方、デコーダはディペンデントビュー・ビデオ・ストリームA002のVAUを一つ復号した時点では次のように予測できる:「その復号カウンタA040に1を加えた値が、次に復号されるべきベースビュー・ビデオ・ストリームA001のVAUの復号カウンタA030に等しい」。従って、デコーダはいずれの時点でも復号カウンタA030、A040からVAUの読み込みエラーを迅速に検出でき、かつ適切なエラー処理を迅速に実行できる。その結果、再生映像へのノイズの混入を防止することができる。
図57に示されているシステム・ターゲット・デコーダ5423では、DEC5704が、復号スイッチ情報A050を利用して、各VAUからピクチャをそのDTSに関わらず、順次復号してもよい。その他に、バッファ・スイッチ5706が、そのVAU内の復号スイッチ情報A050をDEC5704に返信させてもよい。その場合、バッファ・スイッチ5706はその復号スイッチ情報A050を使って、次のVAUをEB15703とEB25710とのいずれから転送すべきか決定できる。
<放送、通信回路を経由したデータ配信>
本発明の実施形態1、2による記録媒体は、光ディスクの他、例えばSDメモリカードを含む可搬性半導体メモリ装置等、パッケージメディアとして利用可能なリムーバブルメディア全般を含む。また、実施形態1、2の説明では、予めデータが記録された光ディスク、すなわち、BD−ROM又はDVD−ROM等の既存の読み出し専用の光ディスクが例に挙げられている。しかし、本発明の実施形態はそれらに限定されない。例えば放送で、又はネットワーク経由で配信された3D映像のコンテンツを端末装置によって、BD−RE又はDVD−RAM等の既存の書き込み可能な光ディスクへ書き込むときに、実施形態1、2によるエクステントの配置が利用されてもよい。ここで、その端末装置は、再生装置に組み込まれていても、再生装置とは別の装置であってもよい。
<半導体メモリカードの再生>
本発明の実施形態1、2による記録媒体として、光ディスクに代えて半導体メモリカードを用いたときにおける、再生装置のデータ読み出し部について説明する。
再生装置のうち、光ディスクからデータを読み出す部分は、例えば光ディスクドライブによって構成される。それに対し、半導体メモリカードからデータを読み出す部分は、専用のインタフェース(I/F)で構成される。より詳細には、再生装置にカードスロットが設けられ、その内部に上記のI/Fが実装される。そのカードスロットに半導体メモリカードが挿入されるとき、そのI/Fを通してその半導体メモリカードが再生装置と電気的に接続される。更に、半導体メモリカードからデータがそのI/Fを通して再生装置に読み出される。
<BD−ROMディスク上のデータに対する著作権保護技術>
ここで、以降の補足事項の前提として、BD−ROMディスクに記録されているデータの著作権を保護するための仕組みについて説明する。
BD−ROMディスクに記録されたデータの一部が、例えば著作権の保護又はデータの秘匿性の向上の観点から暗号化されている場合がある。その暗号化データは例えば、ビデオ・ストリーム、オーディオ・ストリーム、又はその他のストリームを含む。その場合、暗号化データは以下のように解読される。
再生装置には予め、BD−ROMディスク上の暗号化データを解読するための「鍵」の生成に必要なデータの一部、すなわちデバイスキーが記憶されている。一方、BD−ROMディスクには、その「鍵」の生成に必要なデータの別の一部、すなわちMKB(メディアキーブロック)と、その「鍵」自体の暗号化データ、すなわち暗号化タイトルキーとが記録されている。デバイスキー、MKB、及び暗号化タイトルキーは互いに対応付けられ、更に、図10に示されているBD−ROMディスク101上のBCA1001に書き込まれた特定のID、すなわちボリュームIDにも対応付けられている。デバイスキー、MKB、暗号化タイトルキー、及びボリュームIDの組み合わせが正しくなければ、暗号化データの解読はできない。すなわち、これらの組み合わせが正しい場合にのみ、上記の「鍵」、すなわちタイトルキーが生成される。具体的には、まず、デバイスキー、MKB、及びボリュームIDを利用して暗号化タイトルキーが復号される。それによってタイトルキーを導き出すことができたときのみ、そのタイトルキーを上記の「鍵」として用いて暗号化データを解読することができる。
BD−ROMディスク上の暗号化データを再生装置によって再生しようとしても、例えばそのBD−ROMディスク上の暗号化タイトルキー、MKB、及びボリュームIDに予め対応付けられたデバイスキーがその再生装置内に記憶されていなければ、その暗号化データを再生することができない。何故なら、その暗号化データの解読に必要な鍵、すなわちタイトルキーは、MKB、デバイスキー、及びボリュームIDの正しい組み合わせで暗号化タイトルキーを復号しなければ導き出せないからである。
BD−ROMディスクに記録されるべきビデオ・ストリームとオーディオ・ストリームとの少なくともいずれかの著作権を保護するには、まず、保護対象のストリームをタイトルキーで暗号化して、BD−ROMディスクに記録する。次に、MKB、デバイスキー、及びボリュームIDの組み合わせから鍵を生成し、その鍵で上記のタイトルキーを暗号化して暗号化タイトルキーに変換する。更に、MKB、ボリュームID、及び暗号化タイトルキーをBD−ROMディスクに記録する。そのBD−ROMディスクからは、上述の鍵の生成に利用されたデバイスキーを備えた再生装置でしか、暗号化されたビデオ・ストリーム及び/又はオーディオ・ストリームをデコーダで復号することはできない。こうして、BD−ROMディスクに記録されたデータの著作権を保護することができる。
以上に述べた、BD−ROMディスクにおけるデータの著作権保護の仕組みは、BD−ROMディスク以外にも適用可能である。例えば読み書き可能な半導体メモリ装置、特にSDカード等の可搬性半導体メモリカードにも適用可能である。
<電子配信を利用した記録媒体へのデータ記録>
電子配信を利用して本発明の実施形態1による再生装置へ3D映像のAVストリーム・ファイル等のデータ(以下、配信データという。)を伝達し、更にその再生装置にその配信データを半導体メモリカードに記録させる処理について、以下説明する。尚、以下の動作は、上記の再生装置に代えて、その処理に特化した端末装置によって行われてもよい。また、記録先の半導体メモリカードがSDメモリカードである場合を想定する。
再生装置は上記のとおり、カードスロットを備えている。そのカードスロットにはSDメモリカードが挿入されている。この状態で、再生装置はまず、ネットワーク上の配信サーバへ配信データの送信要求を送出する。このとき、再生装置はSDメモリカードからその識別情報を読み出して、その識別情報を送信要求と共に配信サーバへ送出する。SDメモリカードの識別情報は、例えばそのSDメモリカード固有の識別番号、より具体的にはそのSDメモリカードのシリアル番号である。この識別情報は上述のボリュームIDとして利用される。
配信サーバには配信データが格納されている。その配信データのうち、ビデオ・ストリーム及び/又はオーディオ・ストリーム等、暗号化による保護の必要なデータは、所定のタイトルキーを用いて暗号化されている。その暗号化データは同じタイトルキーで復号が可能である。
配信サーバは、再生装置と共通の秘密鍵としてデバイスキーを保持している。配信サーバは更に、SDメモリカードと共通のMKBを保持している。配信サーバは、再生装置から配信データの送信要求とSDメモリカードの識別情報とを受け付けたとき、まず、デバイスキー、MKB、及びその識別情報から鍵を生成し、その鍵でタイトルキーを暗号化して暗号化タイトルキーを生成する。
配信サーバは次に公開鍵情報を生成する。その公開鍵情報は、例えば、上述のMKB、暗号化タイトルキー、署名情報、SDメモリカードの識別番号、及びデバイスリストを含む。署名情報は、例えば公開鍵情報のハッシュ値を含む。デバイスリストは、無効にすべきデバイス、すなわち、配信データ中の暗号化データを不正に再生する危険性のあるデバイスのリストである。そのリストには、例えば、再生装置のデバイスキー、再生装置の識別番号、再生装置に内蔵のデコーダ等、各種部品の識別番号、又は機能(プログラム)が特定されている。
配信サーバは更に、配信データと公開鍵情報とを再生装置へ送出する。再生装置は、それらを受信して、カードスロット内の専用I/Fを通してSDメモリカードに記録する。
SDメモリカードに記録された配信データのうち、暗号化データは、例えば公開鍵情報を以下のように利用して復号される。まず、公開鍵情報の認証として次の三種類のチェック(1)−(3)が行われる。尚、それらはどのような順序で行われてもよい。
(1)公開鍵情報に含まれるSDメモリカードの識別情報が、カードスロットに挿入されているSDメモリカードに記憶されている識別番号と一致するか否か。
(2)公開鍵情報から算出されるハッシュ値が、署名情報に含まれるハッシュ値と一致するか否か。
(3)公開鍵情報の示すデバイスリストから当該再生装置が除外されているか否か。具体的には、デバイスリストから当該再生装置のデバイスキーが除外されているか否か。
上述のチェック(1)−(3)のいずれかの結果が否定的であるとき、再生装置は暗号化データの復号処理を中止する。逆に、上述のチェック(1)−(3)の全ての結果が肯定的であるとき、再生装置は公開鍵情報の正当性を認め、デバイスキー、MKB、及びSDメモリカードの識別情報を利用して、公開鍵情報内の暗号化タイトルキーをタイトルキーに復号する。再生装置は更に、そのタイトルキーを用いて暗号化データを、例えばビデオ・ストリーム及び/又はオーディオ・ストリームに復号する。
以上の仕組みには次の利点がある。電子配信時に既に、不正使用の危険性がある再生装置、部品、及び機能(プログラム)等が知られている場合、これらの識別情報がデバイスリストに列挙され、公開鍵情報の一部として配信される。一方、配信データを要求した再生装置は必ず、そのデバイスリスト内の識別情報を、その再生装置及びその部品等の識別情報と照合しなければならない。それにより、その再生装置又はその部品等がデバイスリストに示されていれば、たとえ、SDメモリカードの識別番号、MKB、暗号化タイトルキー、及びデバイスキーの組み合わせが正しくても、その再生装置は公開鍵情報を配信データ内の暗号化データの復号には利用できない。こうして、配信データの不正使用を効果的に抑制することができる。
半導体メモリカードの識別情報は、半導体メモリカード内の記録領域のうち、特に秘匿性の高い記録領域に格納することが望ましい。何故なら、万一、その識別情報、例えばSDメモリカードではそのシリアル番号が不正に改竄された場合、SDメモリカードの違法コピーが容易に実行可能になってしまうからである。すなわち、その改竄の結果、同一の識別情報を持つ半導体メモリカードが複数存在するようになれば、上述のチェック(1)では正規品と違法な複製品との識別ができなくなるからである。従って、半導体メモリカードの識別情報は秘匿性の高い記録領域に記録して、不正な改竄から保護されねばならない。
半導体メモリカード内にこのような秘匿性の高い記録領域を構成する手段は、例えば次のとおりである。まず、通常のデータ用の記録領域(以下、第1の記録領域と称す。)から電気的に分離された別の記録領域(以下、第2の記録領域と称す。)が設置される。次に、第2の記録領域へのアクセス専用の制御回路が半導体メモリカード内に設けられる。それにより、第2の記録領域へはその制御回路を介してのみアクセスが可能であるようにする。例えば、第2の記録領域には、暗号化されたデータのみが記録され、その暗号化されたデータを復号するための回路が制御回路内にのみ組み込まれる。それにより、第2の記録領域内のデータへのアクセスは、そのデータを制御回路に復号させなければ不可能である。その他に、第2の記録領域内の各データのアドレスを制御回路にのみ保持させてもよい。その場合、第2の記録領域内のデータのアドレスは制御回路にしか特定できない。
半導体メモリカードの識別情報が第2の記録領域に記録された場合、再生装置上で動作するアプリケーション・プログラムは、電子配信を利用して配信サーバからデータを取得して半導体メモリカードに記録する場合、次のような処理を行う。まず、そのアプリケーション・プログラムは、メモリカードI/Fを介して上記の制御回路に対し、第2の記録領域に記録された半導体メモリカードの識別情報へのアクセス要求を発行する。制御回路はその要求に応じて、まず、第2の記録領域からその識別情報を読み出す。制御回路は次に、メモリカードI/Fを介して上記のアプリケーション・プログラムへその識別情報を送る。そのアプリケーション・プログラムはその後、その識別情報と共に配信データの送信要求を配信サーバに送出する。アプリケーション・プログラムは更に、その要求に応じて配信サーバから受信される公開鍵情報と配信データとを、メモリカードI/Fを介して半導体メモリカード内の第1の記録領域に記録する。
尚、上記のアプリケーション・プログラムは、半導体メモリカード内の制御回路に対して上記のアクセス要求を発行する前に、そのアプリケーション・プログラム自体の改竄の有無をチェックすることが望ましい。そのチェックには、例えばX.509に準拠のデジタル証明書が利用されてもよい。また、配信データは上記のとおり、半導体メモリカード内の第1の記録領域に記録されればよく、その配信データへのアクセスは半導体メモリカード内の制御回路によって制御されなくてもよい。
<リアルタイム・レコーディングへの適用>
本発明の実施形態3では、AVストリーム・ファイル及びプレイリスト・ファイルは、オーサリングシステムにおけるプリレコーディング技術によってBD−ROMディスクに記録されてユーザに供給されることを前提とした。しかし、AVストリーム・ファイル及びプレイリスト・ファイルは、リアルタイム・レコーディングによって、BD−REディスク、BD−Rディスク、ハードディスク、又は半導体メモリカード等の書き込み可能な記録媒体(以下、BD−REディスク等と略す。)に記録されてユーザに供給されるものであってもよい。その場合、AVストリーム・ファイルは、アナログ入力信号を記録装置がリアルタイムで復号することによって得られたトランスポート・ストリームであってもよい。その他に、記録装置がデジタル入力したトランスポート・ストリームをパーシャル化することで得られるトランスポート・ストリームであってもよい。
リアルタイム・レコーディングを実行する記録装置は、ビデオ・エンコーダ、オーディオエンコーダ、マルチプレクサ、及びソースパケタイザを含む。ビデオ・エンコーダはビデオ信号を符号化してビデオ・ストリームに変換する。オーディオエンコーダはオーディオ信号を符号化してオーディオ・ストリームに変換する。マルチプレクサは、ビデオ・ストリームとオーディオ・ストリームとを多重化して、MPEG2−TS形式のデジタル・ストリームに変換する。ソースパケタイザは、MPEG2−TS形式のデジタル・ストリーム内のTSパケットをソースパケットに変換する。記録装置は各ソースパケットをAVストリーム・ファイルに格納して、BD−REディスク等に書き込む。
AVストリーム・ファイルの書き込み処理と並行して、記録装置の制御部はクリップ情報ファイルとプレイリスト・ファイルとをメモリ上で生成してBD−REディスク等に書き込む。具体的には、ユーザによって録画処理が要求されたとき、制御部はまず、AVストリーム・ファイルに合わせてクリップ情報ファイルを生成してBD−REディスク等に書き込む。その場合、外部から受信されるトランスポート・ストリームからビデオ・ストリーム内の一つのGOPの先頭が検出される度に、又は、ビデオ・エンコーダによってビデオ・ストリーム内の一つのGOPが生成される度に、制御部は、そのGOPの先頭に位置するIピクチャのPTSと、そのGOPの先頭が格納されたソースパケットのSPNとを取得する。制御部は更に、そのPTSとSPNとの対を一つのエントリ・ポイントとしてクリップ情報ファイルのエントリ・マップに追記する。ここで、そのエントリ・ポイントには「is_angle_changeフラグ」が追加される。is_angle_changeフラグは、そのGOPの先頭がIDRピクチャであるときは“オン”に設定され、そのGOPの先頭がIDRピクチャではないときは“オフ”に設定される。クリップ情報ファイル内には更に、ストリーム属性情報が記録対象のストリームの属性に従って設定される。こうして、AVストリーム・ファイルとクリップ情報ファイルとがBD−REディスク等に書き込まれた後、制御部はそのクリップ情報ファイル内のエントリ・マップを利用してプレイリスト・ファイルを生成し、BD−REディスク等に書き込む。
<マネージド・コピー>
本発明の実施形態による再生装置は更に、マネージド・コピーによってBD−ROMディスク101上のデジタル・ストリームを他の記録媒体へ書き込んでもよい。「マネージド・コピー」とは、BD−ROMディスク等の読み出し専用記録媒体から書き込み可能な記録媒体へ、デジタル・ストリーム、プレイリスト・ファイル、クリップ情報ファイル、及びアプリケーション・プログラムをコピーすることを、サーバとの通信による認証が成功した場合にのみ許可するための技術をいう。その書き込み可能な記録媒体は、BD−R、BD−RE、DVD−R、DVD−RW、及びDVD−RAM等の書き込み可能な光ディスク、ハードディスク、並びに、SDメモリカード、メモリースティック(登録商標)、コンパクトフラッシュ(登録商標)、スマートメディア(登録商標)、及びマルチメディアカード(登録商標)等の可搬性半導体メモリ装置を含む。マネージド・コピーは、読み出し専用記録媒体に記録されたデータのバックアップ回数の制限、及びバックアップ処理に対する課金を可能にする。
BD−ROMディスクからBD−Rディスク又はBD−REディスクへのマネージド・コピーが行われる場合、両ディスクの記録容量が等しいときは、コピー元のディスクに記録されたビット・ストリームがそのまま、順番にコピーされればよい。
マネージド・コピーが異種の記録媒体間で行われるときはトランス・コードが必要である。「トランス・コード」とは、コピー元のディスクに記録されているデジタル・ストリームをコピー先の記録媒体のアプリケーション・フォーマットに適合させるための処理をいう。トランス・コードは、例えば、MPEG2−TS形式からMPEG2プログラム・ストリーム形式へ変換する処理、及び、ビデオ・ストリームとオーディオ・ストリームとのそれぞれに割り当てられているビットレートを低くして符号化し直す処理を含む。トランス・コードでは、上述のリアルタイム・レコーディングによって、AVストリーム・ファイル、クリップ情報ファイル、及びプレイリスト・ファイルが生成されねばならない。
<データ構造の記述方法>
本発明の実施形態1によるデータ構造のうち、「所定型の情報が複数存在する」という繰り返し構造は、for文に制御変数の初期値と繰り返し条件とを記述することによって定義される。また、「所定の条件が成立するときに所定の情報が定義される」というデータ構造は、if文にその条件と、その条件の成立時に設定されるべき変数とを記述することによって定義される。このように、実施形態1によるデータ構造は高級プログラミング言語によって記述される。従って、そのデータ構造は、「構文解析」、「最適化」、「資源割付」、及び「コード生成」といったコンパイラによる翻訳過程を経て、コンピュータによって読み取り可能なコードに変換され、記録媒体に記録される。高級プログラミング言語での記述により、そのデータ構造は、オブジェクト指向言語におけるクラス構造体のメソッド以外の部分、具体的には、そのクラス構造体における配列型のメンバー変数として扱われ、プログラムの一部を成す。すなわち、そのデータ構造は、プログラムと実質的に同等である。従って、そのデータ構造はコンピュータ関連の発明として保護を受けるべきである。
<再生プログラムによるプレイリスト・ファイル、クリップ情報ファイルの管理>
プレイリスト・ファイルとAVストリーム・ファイルとが記録媒体に記録されるとき、その記録媒体には再生プログラムが実行形式のファイルとして記録される。再生プログラムはコンピュータに、プレイリスト・ファイルに従ってAVストリーム・ファイルを再生させる。再生プログラムは記録媒体からコンピュータ内のメモリ装置にロードされた後、そのコンピュータによって実行される。そのロード処理はコンパイル処理又はリンク処理を含む。それらの処理により、再生プログラムはメモリ装置内では複数のセクションに分割される。それらのセクションは、textセクション、dataセクション、bssセクション、及びstackセクションを含む。textセクションは、再生プログラムのコード列、変数の初期値、及び書き換え不可のデータを含む。dataセクションは、初期値を持つ変数、及び書き換え可能なデータを含む。dataセクションは特に、記録媒体上に記録された、随時アクセスされるファイルを含む。bssセクションは、初期値を持たない変数を含む。bssセクション内のデータは、textセクション内のコードの示す命令に応じて参照される。コンパイル処理又はリンク処理では、コンピュータ内のRAMにbssセクション用の領域が確保される。stackセクションは、必要に応じて一時的に確保されるメモリ領域である。再生プログラムによる各処理ではローカル変数が一時的に使用される。stackセクションはそれらのローカル変数を含む。プログラムの実行が開始されるとき、bssセクション内の変数はゼロで初期化され、stackセクションには必要なメモリ領域が確保される。
プレイリスト・ファイル及びクリップ情報ファイルは上述のとおり、記録媒体上では既に、コンピュータによって読み取り可能なコードに変換されている。従って、それらのファイルは再生プログラムの実行時、textセクション内の「書き換え不可のデータ」、又はdataセクション内の「随時アクセスされるファイル」として管理される。すなわち、プレイリスト・ファイル及びクリップ情報ファイルは、再生プログラムの実行時にその構成要素の中に組み込まれる。それ故、プレイリスト・ファイル及びクリップ情報ファイルは再生プログラムにおいて、単なるデータの提示を超えた役割を果たす。
本発明は立体視映像の表示技術に関し、上記のとおり、フレームレートが変換される。このように、本発明は明らかに産業上利用可能である。
F3Dk(k=1、2、3、4、…) 3D映像のフレーム列
FLk レフトビュー・フレーム列
FRk ライトビュー・フレーム列
GRD 切り換えグリッド
FLk レフトビュー・フレーム列
FRk ライトビュー・フレーム列
GRD 切り換えグリッド
Claims (20)
- 立体視映像を画面に表示するための表示装置であって、
立体視映像のレフトビューとライトビューとを含むストリーム・データを受信する受信部、
前記ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを交互に抽出して送出する信号処理部、及び、
前記信号処理部から送出された各フレームを所定時間ずつ画面に表示する表示部、
を備え、
前記信号処理部は、
前記ストリーム・データの表す立体視映像の一つのフレーム期間に、一つのレフトビュー・フレームを第1の回数、一つのライトビュー・フレームを第2の回数、それぞれ繰り返して前記表示部へ送出し、
前記ストリーム・データの表す立体視映像のフレームレートで、前記表示部がレフトビュー・フレームとライトビュー・フレームとを表示する際のフレームレートを割った値に基づいて、前記立体視映像の少なくとも一つのフレーム期間では前記第1の回数と前記第2の回数とを互いに異なる値に決める
ことを特徴とする表示装置。 - 立体視映像の一つのフレーム期間とその次のフレーム期間との時間差が、レフトビュー・フレームとライトビュー・フレームとの一対の表示時間よりも短いように、前記信号処理部は前記第1の回数と前記第2の回数とを決める、請求項1に記載の表示装置。
- 立体視映像の一つのフレーム期間の長さとその次のフレーム期間の長さとが等しいように、前記信号処理部は前記第1の回数と前記第2の回数とを決める、請求項2に記載の表示装置。
- 前記信号処理部は、
前記ストリーム・データの表す立体視映像のフレームレートで、前記表示部がレフトビュー・フレームとライトビュー・フレームとを表示する際のフレームレートを割った商を求めて、
レフトビュー・フレームとライトビュー・フレームとの出力回数の合計、又は前記合計に1を加えた値が前記商の整数倍を超えるごとに、出力対象のレフトビュー・フレームとライトビュー・フレームとを、立体視映像の次のフレームを構成するレフトビュー・フレームとライトビュー・フレームとに換える、
請求項1に記載の表示装置。 - 立体視映像を画面に表示するための表示方法であって、
立体視映像のレフトビューとライトビューとを含むストリーム・データを受信するステップ、
前記ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを交互に抽出するステップ、及び、
前記ストリーム・データから抽出された各フレームを所定時間ずつ画面に表示するステップ、
を有し、
前記ストリーム・データの表す立体視映像の一つのフレーム期間に、一つのレフトビュー・フレームを第1の回数、一つのライトビュー・フレームを第2の回数、それぞれ繰り返して画面に表示し、
前記ストリーム・データの表す立体視映像のフレームレートで、レフトビュー・フレームとライトビュー・フレームとを表示する際のフレームレートを割った値に基づいて、前記立体視映像の少なくとも一つのフレーム期間では前記第1の回数と前記第2の回数とを互いに異なる値に決める
ことを特徴とする表示方法。 - 立体視映像のレフトビューとライトビュー、及び制御情報を含むストリーム・データが記録された記録媒体であって、
前記制御情報は、各レフトビュー・フレームの表示タイプを含む第1部分と、各ライトビュー・フレームの表示タイプを含む第2部分とを有し、
各レフトビュー・フレームの表示タイプは第1の回数を規定し、前記第1の回数は、立体視映像の一つのフレーム期間に当該レフトビュー・フレームを、所定時間ずつ繰り返して画面に表示すべき回数を表し、
各ライトビュー・フレームの表示タイプは第2の回数を規定し、前記第2の回数は、立体視映像の一つのフレーム期間に当該ライトビュー・フレームを、前記所定時間ずつ繰り返して画面に表示すべき回数を表し、
立体視映像の少なくとも一つのフレーム期間では、前記第1の回数と前記第2の回数とが互いに異なる値に設定されている
ことを特徴とする記録媒体。 - 立体視映像の一つのフレーム期間とその次のフレーム期間との時間差が、レフトビュー・フレームとライトビュー・フレームとの一対の表示時間よりも短いように、前記第1の回数と前記第2の回数とは設定されている、請求項6に記載の記録媒体。
- 立体視映像の一つのフレーム期間の長さとその次のフレーム期間の長さとが等しいように、前記第1の回数と前記第2の回数とは設定されている、請求項7に記載の記録媒体。
- 立体視映像のレフトビューとライトビュー、及び制御情報を含むストリーム・データを送信するための送信装置であって、
前記ストリーム・データを所定の送信形式に変換するフォーマット変換部と、
前記送信形式のストリーム・データを送信する送信部と、
を備え、
前記制御情報は、各レフトビュー・フレームの表示タイプを含む第1部分と、各ライトビュー・フレームの表示タイプを含む第2部分とを有し、
各レフトビュー・フレームの表示タイプは第1の回数を規定し、前記第1の回数は、立体視映像の一つのフレーム期間に当該レフトビュー・フレームを、所定時間ずつ繰り返して画面に表示すべき回数を表し、
各ライトビュー・フレームの表示タイプは第2の回数を規定し、前記第2の回数は、立体視映像の一つのフレーム期間に当該ライトビュー・フレームを、前記所定時間ずつ繰り返して画面に表示すべき回数を表し、
立体視映像の少なくとも一つのフレーム期間では、前記第1の回数と前記第2の回数とが互いに異なる値に設定されている
ことを特徴とする送信装置。 - 立体視映像の一つのフレーム期間とその次のフレーム期間との時間差が、レフトビュー・フレームとライトビュー・フレームとの一対の表示時間よりも短いように、前記第1の回数と前記第2の回数とは設定されている、請求項9に記載の送信装置。
- 立体視映像の一つのフレーム期間の長さとその次のフレーム期間の長さとが等しいように、前記第1の回数と前記第2の回数とは設定されている、請求項10に記載の送信装置。
- 立体視映像のレフトビューとライトビュー、及び制御情報を含むストリーム・データを送信するための方法であって、
前記ストリーム・データを所定の送信形式に変換するステップと、
前記送信形式のストリーム・データを送信するステップと、
を有し、
前記制御情報は、各レフトビュー・フレームの表示タイプを含む第1部分と、各ライトビュー・フレームの表示タイプを含む第2部分とを有し、
各レフトビュー・フレームの表示タイプは第1の回数を規定し、前記第1の回数は、立体視映像の一つのフレーム期間に当該レフトビュー・フレームを、所定時間ずつ繰り返して画面に表示すべき回数を表し、
各ライトビュー・フレームの表示タイプは第2の回数を規定し、前記第2の回数は、立体視映像の一つのフレーム期間に当該ライトビュー・フレームを、前記所定時間ずつ繰り返して画面に表示すべき回数を表し、
立体視映像の少なくとも一つのフレーム期間では、前記第1の回数と前記第2の回数とが互いに異なる値に設定されている
ことを特徴とする送信方法。 - 立体視映像を再生するための再生装置であって、
立体視映像のレフトビューとライトビュー、及び制御情報を含むストリーム・データを取得する入力部、
前記ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを復号して、交互に送出する復号部、
前記復号部から一対のレフトビュー・フレームとライトビュー・フレームとを受信して、所定の出力形式に変換するフォーマット変換部、及び、
前記出力形式のフレームを送出する出力部、
を備え、
前記制御情報は、各レフトビュー・フレームの表示タイプと各ライトビュー・フレームの表示タイプとを含み、
各レフトビュー・フレームの表示タイプは第1の回数を規定し、前記第1の回数は、立体視映像の一つのフレーム期間に当該レフトビュー・フレームを、所定時間ずつ繰り返して画面に表示すべき回数を表し、
各ライトビュー・フレームの表示タイプは第2の回数を規定し、前記第2の回数は、立体視映像の一つのフレーム期間に当該ライトビュー・フレームを、前記所定時間ずつ繰り返して画面に表示すべき回数を表し、
立体視映像の少なくとも一つのフレーム期間では、前記第1の回数と前記第2の回数とが互いに異なる値に設定され、
前記復号部は、前記フォーマット変換部へ、
各レフトビュー・フレームを、当該レフトビュー・フレームの表示タイプが規定する第1の回数、繰り返して送出し、
各ライトビュー・フレームを、当該ライトビュー・フレームの表示タイプが規定する第2の回数、繰り返して送出する
ことを特徴とする再生装置。 - 立体視映像の一つのフレーム期間とその次のフレーム期間との時間差が、レフトビュー・フレームとライトビュー・フレームとの一対の表示時間よりも短いように、前記第1の回数と前記第2の回数とは設定されている、請求項13に記載の再生装置。
- 立体視映像の一つのフレーム期間の長さとその次のフレーム期間の長さとが等しいように、前記第1の回数と前記第2の回数とは設定されている、請求項14に記載の再生装置。
- 立体視映像を再生装置に再生させるための再生方法であって、
立体視映像のレフトビューとライトビュー、及び制御情報を含むストリーム・データを前記再生装置に取得させるステップ、
前記再生装置内の復号部に、前記ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを復号させて、交互に送出させるステップ、
前記再生装置内のフォーマット変換部に、前記復号部から一対のレフトビュー・フレームとライトビュー・フレームとを受信させて、所定の出力形式に変換させるステップ、及び、
前記再生装置に前記出力形式のフレームを送出させるステップ、
を有し、
前記制御情報は、各レフトビュー・フレームの表示タイプと各ライトビュー・フレームの表示タイプとを含み、
各レフトビュー・フレームの表示タイプは第1の回数を規定し、前記第1の回数は、立体視映像の一つのフレーム期間に当該レフトビュー・フレームを、所定時間ずつ繰り返して画面に表示すべき回数を表し、
各ライトビュー・フレームの表示タイプは第2の回数を規定し、前記第2の回数は、立体視映像の一つのフレーム期間に当該ライトビュー・フレームを、前記所定時間ずつ繰り返して画面に表示すべき回数を表し、
立体視映像の少なくとも一つのフレーム期間では、前記第1の回数と前記第2の回数とが互いに異なる値に設定され、
前記再生装置に、前記復号部から前記フォーマット変換部へ、
各レフトビュー・フレームを、当該レフトビュー・フレームの表示タイプが規定する第1の回数、繰り返して送出させ、
各ライトビュー・フレームを、当該ライトビュー・フレームの表示タイプが規定する第2の回数、繰り返して送出させる
ことを特徴とする再生方法。 - 立体視映像を画面に表示するための表示装置であって、
立体視映像のレフトビューとライトビュー、及び制御情報を含むストリーム・データを受信する受信部、
前記ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを交互に抽出して送出する信号処理部、及び
前記信号処理部から送出されたフレームを所定時間ずつ画面に表示する表示部、
を備え、
前記制御情報は、各レフトビュー・フレームの表示タイプと各ライトビュー・フレームの表示タイプとを含み、
各レフトビュー・フレームの表示タイプは第1の回数を規定し、前記第1の回数は、前記表示部が立体視映像の一つのフレーム期間に当該レフトビュー・フレームを繰り返して表示すべき回数を表し、
各ライトビュー・フレームの表示タイプは第2の回数を規定し、前記第2の回数は、前記表示部が立体視映像の一つのフレーム期間に当該ライトビュー・フレームを繰り返して表示すべき回数を表し、
立体視映像の少なくとも一つのフレーム期間では、前記第1の回数と前記第2の回数とが互いに異なる値に設定され、
前記受信部は、前記信号処理部へ、
各レフトビュー・フレームを、当該レフトビュー・フレームの表示タイプが規定する第1の回数、繰り返して送出し、
各ライトビュー・フレームを、当該ライトビュー・フレームの表示タイプが規定する第2の回数、繰り返して送出する
ことを特徴とする表示装置。 - 立体視映像の一つのフレーム期間とその次のフレーム期間との時間差が、レフトビュー・フレームとライトビュー・フレームとの一対の表示時間よりも短いように、前記第1の回数と前記第2の回数とは設定されている、請求項17に記載の表示装置。
- 立体視映像の一つのフレーム期間の長さとその次のフレーム期間の長さとが等しいように、前記第1の回数と前記第2の回数とは設定されている、請求項18に記載の表示装置。
- 立体視映像を表示装置に表示させるための表示方法であって、
立体視映像のレフトビューとライトビュー、及び制御情報を含むストリーム・データを前記表示装置に受信させるステップ、
前記表示装置内の信号処理部に、前記ストリーム・データからレフトビュー・フレームとライトビュー・フレームとを交互に抽出させて送出させるステップ、及び、
前記表示装置の画面に、前記信号処理部から送出されたフレームを所定時間ずつ表示させるステップ、
を有し、
前記制御情報は、各レフトビュー・フレームの表示タイプと各ライトビュー・フレームの表示タイプとを含み、
各レフトビュー・フレームの表示タイプは第1の回数を規定し、前記第1の回数は、立体視映像の一つのフレーム期間に当該レフトビュー・フレームが前記画面に繰り返して表示されるべき回数を表し、
各ライトビュー・フレームの表示タイプは第2の回数を規定し、前記第2の回数は、立体視映像の一つのフレーム期間に当該ライトビュー・フレームが前記画面に繰り返して表示されるべき回数を表し、
立体視映像の少なくとも一つのフレーム期間では、前記第1の回数と前記第2の回数とが互いに異なる値に設定され、
前記表示装置に、前記受信部から前記信号処理部へ、
各レフトビュー・フレームを、当該レフトビュー・フレームの表示タイプが規定する第1の回数、繰り返して送出させ、
各ライトビュー・フレームを、当該ライトビュー・フレームの表示タイプが規定する第2の回数、繰り返して送出させる
ことを特徴とする表示方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29032209P | 2009-12-28 | 2009-12-28 | |
US61/290,322 | 2009-12-28 | ||
PCT/JP2010/007514 WO2011080907A1 (ja) | 2009-12-28 | 2010-12-24 | 表示装置と方法、記録媒体、送信装置と方法、及び再生装置と方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2011080907A1 JPWO2011080907A1 (ja) | 2013-05-09 |
JP5480915B2 true JP5480915B2 (ja) | 2014-04-23 |
Family
ID=44226334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011547328A Expired - Fee Related JP5480915B2 (ja) | 2009-12-28 | 2010-12-24 | 表示装置と方法、記録媒体、送信装置と方法、及び再生装置と方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110310235A1 (ja) |
JP (1) | JP5480915B2 (ja) |
CN (1) | CN102334339A (ja) |
WO (1) | WO2011080907A1 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102197654A (zh) * | 2008-10-31 | 2011-09-21 | 松下电器产业株式会社 | 信号处理装置 |
US20130002821A1 (en) * | 2010-03-24 | 2013-01-03 | Panasonic Corporation | Video processing device |
US9986220B2 (en) * | 2010-07-12 | 2018-05-29 | Koninklijke Philips N.V. | Auxiliary data in 3D video broadcast |
JP2012029006A (ja) * | 2010-07-22 | 2012-02-09 | Toshiba Corp | 映像出力制御装置及び映像出力制御方法 |
KR101675119B1 (ko) * | 2010-09-28 | 2016-11-22 | 삼성전자 주식회사 | 3차원 사용자 인지 정보를 표시하기 위한 데이터스트림 생성 방법 및 장치, 데이터스트림 재생 방법 및 장치 |
KR20120039197A (ko) * | 2010-10-15 | 2012-04-25 | 삼성전자주식회사 | 리모트 컨트롤러, 디스플레이장치, 3d 안경 및 이들의 제어방법 |
US8836772B2 (en) * | 2010-11-17 | 2014-09-16 | Sony Computer Entertainment, Inc. | 3D shutter glasses with frame rate detector |
CN102480671B (zh) * | 2010-11-26 | 2014-10-08 | 华为终端有限公司 | 视频通信中的音频处理方法和装置 |
JP4908624B1 (ja) * | 2010-12-14 | 2012-04-04 | 株式会社東芝 | 立体映像信号処理装置及び方法 |
US9351028B2 (en) * | 2011-07-14 | 2016-05-24 | Qualcomm Incorporated | Wireless 3D streaming server |
US9621870B2 (en) * | 2011-08-22 | 2017-04-11 | Pixar | Temporal cadence perturbation for time-division stereoscopic displays |
US9219903B2 (en) | 2011-08-22 | 2015-12-22 | Pixar | Temporal cadence perturbation for time-division stereoscopic displays |
US9247229B2 (en) | 2011-08-22 | 2016-01-26 | Pixar | Temporal cadence perturbation for time-division stereoscopic displays |
JP5733139B2 (ja) * | 2011-09-27 | 2015-06-10 | 株式会社Jvcケンウッド | 動きベクトル検出装置及び方法、並びに、映像信号処理装置及び方法 |
KR102009049B1 (ko) | 2011-11-11 | 2019-08-08 | 소니 주식회사 | 송신 장치, 송신 방법, 수신 장치 및 수신 방법 |
JP5928118B2 (ja) * | 2012-04-16 | 2016-06-01 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
KR101310941B1 (ko) * | 2012-08-03 | 2013-09-23 | 삼성전자주식회사 | 복수의 컨텐츠 뷰를 디스플레이하는 디스플레이 장치와 그 컨텐츠 뷰 중 하나에 동기화되어 구동되는 안경 장치 및 그 방법들 |
KR20140031758A (ko) * | 2012-09-05 | 2014-03-13 | 삼성전자주식회사 | 포인팅 디바이스를 이용하여 aⅴ 데이터의 메뉴를 제어하기 위한 인터랙티브 그래픽 데이터를 기록한 정보저장매체, 그 재생방법 및 장치 |
US9762944B2 (en) * | 2012-11-28 | 2017-09-12 | Rovi Guides, Inc. | Systems and methods for presenting content simultaneously in different forms based on parental control settings |
ITTO20121073A1 (it) * | 2012-12-13 | 2014-06-14 | Rai Radiotelevisione Italiana | Apparato e metodo per la generazione e la ricostruzione di un flusso video |
RU2013102854A (ru) * | 2013-01-30 | 2014-08-10 | ЭлЭсАй Корпорейшн | Способ и устройство для повышения кадровой частоты потока изображений с использованием, по меньшей мере, одного потока изображений с более высокой кадровой частотой |
JP2014200074A (ja) * | 2013-03-15 | 2014-10-23 | 株式会社リコー | 配信制御システム、配信制御方法、及びプログラム |
TWI603290B (zh) * | 2013-10-02 | 2017-10-21 | 國立成功大學 | 重調原始景深圖框的尺寸爲尺寸重調景深圖框的方法、裝置及系統 |
US20150253974A1 (en) | 2014-03-07 | 2015-09-10 | Sony Corporation | Control of large screen display using wireless portable computer interfacing with display controller |
CN104202588B (zh) * | 2014-08-28 | 2016-09-28 | 广东威创视讯科技股份有限公司 | 3d信号剪切方法、系统及3d信号开窗方法和系统 |
CN114513617B (zh) * | 2014-09-10 | 2024-04-09 | 松下电器(美国)知识产权公司 | 再现装置以及再现方法 |
EP3291550B1 (en) * | 2016-08-30 | 2021-02-10 | Advanced Digital Broadcast S.A. | A method and system for paring shutter glasses with a remote control unit |
KR102609509B1 (ko) * | 2016-11-17 | 2023-12-04 | 엘지디스플레이 주식회사 | 외부 보상용 표시장치와 그 구동방법 |
JP6596452B2 (ja) * | 2017-01-23 | 2019-10-23 | ティフォン インコーポレーテッド | 表示装置、表示方法及びその表示プログラム、並びに、遊興施設 |
US10715882B2 (en) * | 2018-06-29 | 2020-07-14 | Intel Corporation | Timing synchronization between a content source and a display panel |
US11516453B2 (en) * | 2018-07-06 | 2022-11-29 | Sony Corporation | Information processing apparatus, information processing method, and program for point cloud sample processing |
CN111225263B (zh) * | 2020-01-17 | 2022-06-14 | 广州虎牙科技有限公司 | 视频播放控制方法和装置、电子设备及存储介质 |
CN114125516B (zh) * | 2020-08-26 | 2024-05-10 | Oppo(重庆)智能科技有限公司 | 一种视频播放方法及穿戴式设备、存储介质 |
CN112686865B (zh) * | 2020-12-31 | 2023-06-02 | 重庆西山科技股份有限公司 | 一种3d视图辅助检测方法、系统、装置及存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1551189A4 (en) * | 2002-09-27 | 2009-01-07 | Sharp Kk | 3D IMAGE DISPLAY UNIT, 3D IMAGE RECORDING DEVICE AND 3D PICTURE RECORDING PROCESS |
JP2005260810A (ja) * | 2004-03-15 | 2005-09-22 | Matsushita Electric Ind Co Ltd | カメラレコーダ |
CN100406963C (zh) * | 2004-08-17 | 2008-07-30 | 三菱电机株式会社 | 立体图像显示装置 |
WO2007024313A1 (en) * | 2005-05-27 | 2007-03-01 | Imax Corporation | Equipment and methods for the synchronization of stereoscopic projection displays |
US8274553B2 (en) * | 2005-10-18 | 2012-09-25 | Texas Instruments Incorporated | System and method for displaying stereoscopic digital motion picture images |
JP4827783B2 (ja) * | 2007-03-30 | 2011-11-30 | 三洋電機株式会社 | 画像表示装置 |
US20100045779A1 (en) * | 2008-08-20 | 2010-02-25 | Samsung Electronics Co., Ltd. | Three-dimensional video apparatus and method of providing on screen display applied thereto |
KR20110095128A (ko) * | 2008-11-18 | 2011-08-24 | 파나소닉 주식회사 | 특수재생을 고려한 재생장치, 집적회로, 재생방법 |
-
2010
- 2010-12-24 CN CN2010800094649A patent/CN102334339A/zh active Pending
- 2010-12-24 JP JP2011547328A patent/JP5480915B2/ja not_active Expired - Fee Related
- 2010-12-24 US US13/201,025 patent/US20110310235A1/en not_active Abandoned
- 2010-12-24 WO PCT/JP2010/007514 patent/WO2011080907A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
JPWO2011080907A1 (ja) | 2013-05-09 |
WO2011080907A1 (ja) | 2011-07-07 |
US20110310235A1 (en) | 2011-12-22 |
CN102334339A (zh) | 2012-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5480915B2 (ja) | 表示装置と方法、記録媒体、送信装置と方法、及び再生装置と方法 | |
JP5457465B2 (ja) | 表示装置と方法、送信装置と方法、及び受信装置と方法 | |
JP5551654B2 (ja) | 半導体集積回路 | |
JP4676579B2 (ja) | 記録媒体、再生装置、及び集積回路 | |
US8699853B2 (en) | Recording medium, recording device, encoding device, integrated circuit, and reproduction output device | |
US8270807B2 (en) | Recording medium, playback device, and integrated circuit | |
US8045844B2 (en) | Recording medium, playback apparatus, and integrated circuit | |
JP5457299B2 (ja) | 記録媒体、再生装置、及び集積回路 | |
JP4569935B2 (ja) | 記録媒体、再生装置、及び集積回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130905 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140121 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5480915 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |