(57)【要約】      （修正有）【課題】Ｏｐｅｎ−ＧＯＰ構造において、飛び込み再生の効率化を図る。【解決手段】エントリーマップ(EP_map)は、ビデオストリーム内におけるGOP先頭のイントラピクチャの位置を、イントラピクチャの再生時刻(PTS_EP_start)と、フラグ(is_angle_change_point)とに対応づけて示し、フラグ(is_angle_change_point)は、対応するエントリー位置が、マルチアングル区間における他のアングル映像からの再生切り換え可能な位置であるか否かを示す。再生切り換えが可能となる位置には、デコーディングのリフレッシュ動作を意図しているClosed-GOP先頭のイントラピクチャ(IDRピクチャ)が存在する。【選択図】図１３
2008295048.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体であって、
再生時間軸上で複数のアングル映像の再生時刻が重複するマルチアングル区間において、１つのアングル映像を構成するビデオストリームと、エントリーマップとが記録されており、
前記ビデオストリームは、Open-GOPとClosed-GOPとを含むGOP列であり、
それぞれのGOPにおいて符号化順序で先頭のピクチャには、SPSが付されており、
前記Open-GOP先頭のピクチャは、デコーディングのリフレッシュ動作を意図しないイントラピクチャであり、
前記Closed-GOP先頭のイントラピクチャは、デコーディングのリフレッシュ動作を意図しているイントラピクチャであり、
前記エントリーマップは、前記ビデオストリーム内においてそれぞれのGOP先頭のイントラピクチャが存在するエントリー位置を、エントリー時刻と、フラグとに対応づけて示し、
前記フラグは、
対応するエントリー位置が、前記マルチアングル区間における他のアングル映像からの再生切り換えが可能となる位置であるか否かを示し、
前記再生切り換えが可能となる位置には、デコーディングのリフレッシュ動作を意図している前記Closed-GOP先頭のイントラピクチャが存在する
ことを特徴とする記録媒体。
【請求項２】
前記ビデオストリームは、複数のセグメントに分割されて記録媒体に記録されており、
前記再生切り換えが可能になる位置とは、
セグメントの先頭に当たる、ことを特徴とする請求項１記載の記録媒体。
【請求項３】
前記記録媒体には、複数の管理情報ファイルと、再生区間情報とが記録されており、
再生区間情報は、ビデオストリームにおけるマルチアングル区間の始点及び終点を規定する情報であり、複数の管理情報ファイルのファイル名が記述された領域を有しており、
エントリーマップは、
複数のうち、１つの管理情報ファイル内にある、ことを特徴とする請求項２記載の記録媒体。
【請求項４】
ビデオストリーム内における複数のエントリー位置を、エントリー時刻と、フラグとに対応づけて示すエントリーマップに基づき、それぞれの符号化順序で先頭にSPSが付されたイントラピクチャを有するOpen-GOP及びClosed-GOPを含むGOP列であるビデオストリームを再生する再生装置であって、
前記ビデオストリームを構成するピクチャを、記録媒体から読み出す読出手段と、
読み出された前記ピクチャを再生する再生手段と、
任意の再生開始時点からの再生が命じられた場合、前記フラグがオンに設定されているエントリー時刻に対応するエントリー位置からの読み出しを、読出手段に行わせる制御手段と、
複数の参照ピクチャが格納されているピクチャバッファと、
前記参照ピクチャを用いた動き補償を実行するデコーダと、
再生時間軸上の再生時刻が重複する複数のアングル映像間で再生切り換えが可能なマルチアングル区間において、再生対象となるアングル映像を示す値を格納している状態レジスタと、
ユーザによる操作に従い、前記状態レジスタの値を更新する更新手段とを備え、
前記記録媒体には、複数の管理情報ファイルと、再生区間情報とが記録されており、
再生区間情報は、ビデオストリームにおける前記マルチアングル区間の始点及び終点を規定する情報であり、複数の管理情報ファイルのファイル名が記述された領域を有しており、
前記読出手段は、
前記状態レジスタの値の更新があれば、前記再生区間情報にファイル名が記述されている前記管理情報ファイルのうち、更新後の値に対応するものを、前記記録媒体から読み出し、
前記制御手段により参照されるエントリーマップは、読み出された前記管理情報ファイル内にあり、
前記フラグがオンに設定されているエントリー位置には、マルチアングル区間において、他のアングル映像からの再生切り換えが可能となる前記Closed-GOP先頭のイントラピクチャが存在しており、
前記デコーダは、前記Closed-GOP先頭のイントラピクチャをデコードした際、前記ピクチャバッファの格納内容をクリアすることを特徴とする再生装置。
【請求項５】
前記記録媒体には、ＡＶファイルが複数記録されており、
読出手段の読み出しの対象となるビデオストリームは、
取り出された管理情報ファイルのファイル名と同じファイル名を有する、ＡＶファイル内に存在し、
読出手段は、
ＡＶファイルを構成する複数のエクステントのうち、特定されたエントリー時刻に対応するエントリー位置にあたるものを読み出す、請求項４記載の再生装置。
【請求項６】
再生時間軸上で複数のアングル映像の再生時刻が重複するマルチアングル区間において、１つのアングル映像を構成するビデオストリームを、記録媒体に記録する記録方法であって、
ボリュームデータを生成するステップと、
前記ボリュームデータが書き込まれた記録媒体を得るステップとを含み、
前記ボリュームデータは、
ビデオストリームと、エントリーマップとを含み、
前記ビデオストリームは、Open-GOPとClosed-GOPとを含むGOP列であり、
それぞれのGOPにおいて符号化順序で先頭のピクチャには、SPSが付されており、
前記Open-GOP先頭のピクチャは、デコーディングのリフレッシュ動作を意図しないイントラピクチャであり、
前記Closed-GOP先頭のイントラピクチャは、デコーディングのリフレッシュ動作を意図しているイントラピクチャであり、
前記エントリーマップは、前記ビデオストリーム内においてそれぞれのGOP先頭のイントラピクチャが存在するエントリー位置を、エントリー時刻と、フラグとに対応づけて示し、
前記フラグは、
対応するエントリー位置が、前記マルチアングル区間における他のアングル映像からの再生切り換えが可能となる位置であるか否かを示し、
前記再生切り換えが可能となる位置には、デコーディングのリフレッシュ動作を意図している前記Closed-GOP先頭のイントラピクチャが存在することを特徴とする記録方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、飛込再生技術の技術分野に属する発明である。
【背景技術】
【０００２】
飛込再生とは、可変符号長符号化方式で符号化されたデジタルストリームの途中から再生を開始する技術である。ここで再生の対象が、MPEG2-Video、MPEG4-AVCで圧縮符号化されたビデオストリームである場合、飛込再生を実行するには、飛び込み位置にあたるピクチャが参照している全てのピクチャをデコーダ内に準備せねばならない。参照ピクチャをデコーダ内に準備するための読出範囲は、ビデオストリームにおけるGOP構造によって変わる。MPEG2-VideoのGOP構造には、Closed-GOP、Open-GOPといった種別がある。Closed-GOPは、ピクチャ間の依存関係が1つのGOP内で完結しているため、飛び込み位置を含むGOPを読み出し、デコーダに供給すれば、飛び込み位置における参照ピクチャを全てデコーダ内に準備することができる。
【０００３】
一方Open-GOPは、MPEG2-Videoの例で考えると、ピクチャ間の依存関係が、1つのGOP内で完結せず、その前のGOPにまで及ぶ。そのため飛込再生を開始するには、飛び込み位置を含むGOPの1つ前のGOPを記録媒体から読み出し、デコーダに供給する必要がある。このようにGOP構造がOpen-GOPであれば、1つ前のGOPまで読出範囲を広げるという手当が必要になる。
【０００４】
飛び込み再生時では、GOPの先頭に存在するI(Intra)ピクチャを探索する必要がある。Iピクチャの探索を支援するような、データ構造については下記の特許文献に記載された先行技術がある。
【特許文献１】特開2000-228656号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところでMPEG2-VideoのOpen-GOPでは、依存関係がせいぜい1つの前のGOPに及ぶ程度であったが、MPEG4-AVCのOpen-GOPでは、数十フレーム前のピクチャにまで、依存関係が及ぶことがある。何故なら、MPEG4-AVCのデコーダモデルには、短時間参照ピクチャ、長時間参照ピクチャという2種類の参照ピクチャが規定されており、長時間参照ピクチャでは、数十フレーム前のピクチャの参照が許容されるからである。数十フレーム前まで依存関係が及びうるので、1つのGOPまで読出範囲を広げる程度では、デコードに必要な参照ピクチャを、デコーダ内に準備することができない。
【０００６】
そうすると再生装置は、ワーストケースを想定して、読込範囲を拡大せざるを得ない。ここでワーストケースとは、ビデオストリーム先頭にまで依存関係が及んでいることであり、この場合、読出範囲は、ビデオストリーム先頭まで拡大せねばならない。ここで2時間長のビデオストリームにおいて、1時間経過後の再生位置から飛込再生を実行する場合、ストリーム先頭にまで、読出範囲を拡大したのでは、1時間分のピクチャの復号を行う必要があり、参照ピクチャの準備に非常に時間がかかる。
【０００７】
飛込再生に多大な時間を要するため、記録媒体による映画作品の頒布という用途には、MPEG4-AVCは不向きであるといわれている。そしてストリーム配信という再生形態での利用、つまり、ビデオストリームを必ず先頭から再生するという再生形態が、MPEG4-AVCの本望であるとの声があがっている。しかしMPEG4-AVCによる符号化は、高画質かつ高圧縮率という恩恵をもたらすので、飛込再生に多大な時間がかかるというデメリットがあったとしても、記録媒体への応用という用途を閉ざしてしまうのは非常に惜しいと嘆く声がある。
【０００８】
本発明の目的は、依存関係が遠くのピクチャにまで及ぶようなOpen-GOP構造において、飛込再生の効率化を図ることができる記録媒体を提供することである。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明に係る記録媒体は、再生時間軸上で複数のアングル映像の再生時刻が重複するマルチアングル区間において、１つのアングル映像を構成するビデオストリームと、エントリーマップとが記録されており、前記ビデオストリームは、Open-GOPとClosed-GOPとを含むGOP列であり、それぞれのGOPにおいて符号化順序で先頭のピクチャには、SPSが付されており、前記Open-GOP先頭のピクチャは、デコーディングのリフレッシュ動作を意図しないイントラピクチャであり、前記Closed-GOP先頭のイントラピクチャは、デコーディングのリフレッシュ動作を意図しているイントラピクチャであり、前記エントリーマップは、前記ビデオストリーム内においてそれぞれのGOP先頭のイントラピクチャが存在するエントリー位置を、エントリー時刻と、フラグとに対応づけて示し、前記フラグは、対応するエントリー位置が、前記マルチアングル区間における他のアングル映像からの再生切り換えが可能となる位置であるか否かを示し、前記再生切り換えが可能となる位置には、デコーディングのリフレッシュ動作を意図している前記Closed-GOP先頭のイントラピクチャが存在することを特徴としている。
【発明の効果】
【００１０】
本発明に係る記録媒体におけ.るフラグは、各エントリー位置に存在するピクチャに対応づけられており、各ピクチャが、デコーディングのリフレッシュ動作を意図しているイントラピクチャであるか否かを示している。エントリー位置に対応づけられているフラグを参照することにより、再生装置は、どのイントラピクチャが、リフレッシュを意図したピクチャであるかを知得することができる。Open-GOPにおける依存関係が、遠くのピクチャにまで及んだとしても、長時間の依存関係は、リフレッシュを意図したピクチャを越えることはないので、飛込再生時において、リフレッシュを意図したピクチャまでの読出範囲を広げれば、飛込再生時のデコードに必要な全ての参照ピクチャをデコーダ内に準備することができる。
【００１１】
ここで2時間長のビデオストリームにおいて、1時間経過後の再生位置から飛込再生を実行する場合、その飛込位置の15分前にリフレッシュを意図したピクチャがあれば、その15分前のリフレッシュを意図したピクチャまで読出範囲を拡大することにより、飛込再生のデコードに必要な参照ピクチャを、デコーダ内に準備することができる。読出範囲の拡大幅を、1時間から15分まで、短縮化することができるので、飛込位置に必要な参照ピクチャの準備を、早くを行うことができる。これにより、記録媒体を用いた映画作品の頒布という用途に、MPEG4-AVCを利用することができ、MPEG4-AVCの用途を大きく広げることができる。
【００１２】
高い圧縮率を得るため、15分、30分というように、比較的長い時間間隔でIDRピクチャが挿入されている場合において、特殊再生の効率化を実現することができるので、MPEG4-AVCによる圧縮符号化の利点を大きく損なう事はなく、特殊再生の効率化を実現することができる。
【発明を実施するための最良の形態】
【００１３】
(第１実施形態)
以降、本発明に係る記録媒体の実施形態について説明する。先ず始めに、本発明に係る記録媒体の実施行為のうち、使用行為についての形態を説明する。図１は、本発明に係る記録媒体の、使用行為についての形態を示す図である。図１において、本発明に係る記録媒体は、BD-ROM１００である。このBD-ROM１００は、再生装置２００、リモコン３００、テレビ４００により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。
【００１４】
以上が本発明に係る記録媒体の使用形態についての説明である。続いて本発明に係る記録媒体の実施行為のうち、生産行為についての形態について説明する。本発明に係る記録媒体は、BD-ROMの応用層に対する改良により実施することができる。図２は、BD-ROMの内部構成を示す図である。
本図の第４段目にBD-ROMを示し、第３段目にBD-ROM上のトラックを示す。本図のトラックは、BD-ROMの内周から外周にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてBD-ROMの応用層フォーマット(アプリケーションフォーマット)を表現すると、図中の第１段目のようになる。この第1段目においてBD-ROMには、Rootディレクトリの下に、BDMVディレクトリがある。
【００１５】
BDMVディレクトリの配下には、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリと呼ばれる3つのサブディレクトリが存在する。
STREAMディレクトリには、いわばデジタルストリーム本体となるファイル群を格納しているディレクトリであり、拡張子m2tsが付与されたファイル(00001.m2ts,00002.m2ts,00003.m2ts)が存在する。
【００１６】
PLAYLISTディレクトリは、拡張子mplsが付与されたファイル(00001.mpls,00002.mpls,00003mpls)が存在する。
CLIPINFディレクトリには、拡張子clpiが付与されたファイル(00001.clpi,00002.clpi,00003.clpi)が存在する。
＜AVClipの構成＞
続いて拡張子.m2tsが付与されたファイルについて説明する。図３は、拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。拡張子.m2tsが付与されたファイル(00001.m2ts,00002.m2ts,00003.m2ts・・・・・)は、AVClipを格納している。AVClipは(中段)、複数のビデオフレーム(ピクチャpj1,2,3)からなるビデオストリーム、複数のオーディオフレームからなるオーディオストリームを(上１段目)、PESパケット列に変換し(上２段目)、更にTSパケットに変換し(上３段目)、同じく字幕系のプレゼンテーショングラフィクスストリーム(下1段目のPGストリーム)及び対話系のインタラクティブグラフィクスストリーム(下2段目のIGストリーム)をTSパケットに変換して(下３段目)、これらを多重化することで構成される。
【００１７】
続いて、MPEG2-TS形式のデジタルストリームであるAVClipが、BD-ROMにどのように書き込まれるかを説明する。図４は、AVClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す図である。本図の第１段目にAVClipを構成するTSパケットを示す。
AVClipを構成するTSパケットは、第２段目に示すようにTS_extra_header(図中の「EX」)が付される。
【００１８】
第３段目、第４段目は、BD-ROMの物理単位と、TSパケットとの対応関係を示す。第４段目に示すように、BD-ROM上には複数セクタが形成されている。extra_header付きTSパケット(以下EX付きTSパケットと略す)は、32個毎にグループ化されて、3つのセクタに書き込まれる。32個のEX付きTSパケットからなるグループは、6144バイト(=32×192)であり、これは3個のセクタサイズ6144バイト(=2048×3)と一致する。3個のセクタに収められた32個のEX付きTSパケットを“AlignedUnit”といい、BD-ROMへの書き込みにあたっては、Aligned Unit単位で暗号化がなされる。
【００１９】
第５段目においてセクタは、32個単位で誤り訂正符号が付され、ECCブロックを構成する。記録装置はAligned Unitの単位でBD-ROMをアクセスする限り、32個の完結したEX付きTSパケットを得ることができる。以上がBD-ROMに対するAVClipの書き込みのプロセスである。
＜ビデオストリーム＞
続いてMPEG4-AVC形式のビデオストリームについて説明する。MPEG4-AVC形式のビデオストリームは、複数のピクチャからなる。図５（ａ）は、符号化順序に配置される複数のピクチャを示す。
【００２０】
図中のI,P,Bは、それぞれIピクチャ、Bピクチャ、Pピクチャを意味する。Iピクチャには、IDRピクチャと、Non-IDR Iピクチャとの2種類がある。Non-IDRIピクチャ、Pピクチャ、Bピクチャは、他のピクチャとのフレーム相関性に基づき圧縮符号化されている。Bピクチャとは、Bidirectionallypredictive(B)形式のスライスデータからなるピクチャをいい、Pピクチャとは、Predictive(P)形式のスライスデータからなるピクチャをいう。Bピクチャには、refrenceBピクチャと、nonrefrenceBピクチャとがある。
【００２１】
図５（ａ）では、Non-IDR Iピクチャを“I”と記述しており、IDRピクチャを“IDR”と記述している。以降、同様の表記を用いる。
＜GOP構造＞
図５（ｂ）は、図５（ａ）に示したビデオストリームのGOP構造を示す図である。本図においてIDRピクチャと、このIDRピクチャに続くBピクチャ、Pピクチャは、1つのClosed-GOPを構成する。一方、Non-IDRIピクチャと、Non-IDR Iピクチャに続くBピクチャ、Pピクチャは、1つのOpen-GOPを構成する。
【００２２】
図６（ａ）は、表示順序及び符号化順序におけるClosed-GOPの内部構成を示す図である。符号化順序においてClosed-GOPは、IDRピクチャが先頭に配置される。表示順序においてIDRピクチャは先頭にならないが、IDRピクチャ以外の他のピクチャ(Bピクチャ，Pピクチャ)は、Closed-GOPより前のGOPに存在するピクチャと依存関係をもつことはできない。図中の×付きの矢印は、前のGOPとの依存関係が存在しないことを象徴的に示している。このようにClosed-GOPは、依存関係を完結させる役割をもつ。
【００２３】
図６（ｂ）は、Open-GOPの内部構成を示す図である。図６（ｂ）上段は、表示順序における内部構成を示し、下段は符号化順序における内部構成を示す。符号化順序ではNon-IDRIピクチャが先頭に存在していることがわかる。符号化順序と、表示順序との違いは、IDRピクチャ、Non-IDR Iピクチャ、Pピクチャの順序が入れ代わっている点である。表示順序では、Non-IDRIピクチャの前にBピクチャが存在する。Non-IDR Iピクチャ前のBピクチャは、前のGOPと依存関係をもつことになる。一方Non-IDR Iピクチャより後のピクチャは、前のGOPと依存関係をもつことができない。このようにOpen-GOPは、前のピクチャとの間に依存関係を持つことができる。以上がMPEG4-AVCにおけるGOP構造である。
【００２４】
続いてIDRピクチャ及びNon-IDR Iピクチャの内部構成について説明する。図７（ａ）は、IDRピクチャの内部構成を示す図である。本図に示すようにIDRピクチャは、複数のIntra形式のスライスデータからなる。図７（ｂ）は、Non-IDRIピクチャの内部構成を示す。IDRピクチャがIntra形式のスライスデータのみから構成されているのに対し、Non-IDR IピクチャはIntra形式のスライスデータ、P形式のスライスデータ、B形式のスライスデータから構成されている。図７（ｃ）は、Non-IDRIピクチャにおける依存関係を示す。Non-IDR Iピクチャは、B,Pスライスデータから構成されうるので、他のピクチャとの依存関係をもちうる。
【００２５】
図８は、Non-IDR Iピクチャがもちうる依存関係を示す図である。第1段目は、表示順序に配置されたピクチャ列を示し、第2段目は、符号化順序に配置されたピクチャ列を示す。図中の矢印は、Non-IDRIピクチャがもちうる依存関係を模式的に示す。たとえ長時間参照ピクチャが存在するとはいえ、IDRピクチャを越えるような依存関係が存在しえない。何故ならIDRピクチャは、デコーダのリフレッシュ動作をデコーダに命じるため、それまでデコーダ内に得られた参照ピクチャは、このリフレッシュを意図したピクチャ動作により全て消去されてしまうからである。従ってNon-IDRIピクチャにおける依存関係は、IDRピクチャまでで完結することになる。
【００２６】
＜IDRピクチャ＞
IDRピクチャをビデオストリーム中に挿入することの技術的意義について説明する。Cloed-GOPを規定するIDRピクチャは、1GOP毎というように、決まった単位で出現するものではない。1つのビデオストリームにおいてどの部分に、何個IDRピクチャを置くかはビデオストリームのエンコード条件によって変わる。よってエンコード条件によっては、IDRピクチャが殆ど置かれないこともあるし、IDRピクチャが多く置かれることもある。ここでIDRピクチャは、自身の圧縮符号化に、短時間参照ピクチャ、長時間参照ピクチャを利用することができないので、ビデオストリームに挿入されるIDRピクチャの数が多ければ多いほど、ビデオストリームの圧縮率は伸び悩む。つまりIDRピクチャの挿入数が多いと、その圧縮率の利点が損なわれてしまう。しかしビデオストリームの途中にこのIDRピクチャが、少なくとも1つ挿入されていることは、ストリームの途中からの特殊再生をおおいに効率化する。
【００２７】
例えば特殊再生を行うにあたって、Pピクチャをデコードする場合、そのPピクチャを復号するには、どのピクチャまで遡って復号すれば良いのかがわからない。何故なら、特殊再生で表示したいPピクチャは、それより前に符号化されているBピクチャを参照していることもあり、そのBピクチャも、それより前に符号化されているBピクチャとPピクチャとを参照していることがある。従って、どこまで戻って復号すれば表示したいPピクチャが復号できるのか全く保証がないのである。しかしビデオストリームの要所にIDRピクチャが挿入されていれば、ピクチャ間の依存関係は、IDRピクチャ前後で断ち切られることが明らかなので、特殊再生においてIDRピクチャまで遡って復号してゆくことにより、Pピクチャの再生に必要なピクチャの取得が可能になる。特殊再生におけるPピクチャのデコードが容易になるので、Iピクチャ及びPピクチャを順次デコードしてゆくことによる、ビデオストリームの倍速再生は容易に実現することができる。
【００２８】
1つのビデオストリームに、IDRピクチャを何個、どこに挿入しておくかは、エンコード条件により決定されるので、この決定にあたっては、上述したような特殊再生の効率化と、圧縮率との双方を参酌することが重要になる。本実施形態では、15分置き、30分置きというように、比較的長い時間間隔でIDRピクチャが挿入されているとの仮定で説明を進める。
【００２９】
＜BD-ROMへの記録＞
続いてIDRピクチャ、Non-IDR Iピクチャが、どのようにしてTSパケットに変換され、BD-ROMに記録されるかについて説明する。図９は、IDRピクチャ、Non-IDRIピクチャがTSパケットに変換される過程を示す図である。図中の第1段目は、IDRピクチャ、Non-IDR Iピクチャを示す。第2段目は、MPEG4-AVCに規定されたAccessUnitを示す。IDRピクチャ、Non-IDR Iピクチャを構成する複数のスライスデータは、シーケンシャルに配置され、AUD(Access UnitDelimiter),SPS(Sequence Parameter Set),PPS(Picture ParameterSet),SEI(Supplemental Enhanced info)が付加されることにより、Access Unitに変換されることになる。
【００３０】
AUD,SPS,PPS,SEI、Access Unitのそれぞれは、MPEG4-AVCに規定された情報であり、ITU-TRecommendationH.264等の様々な文献に記載されているので、詳細については、これらの文献を参照されたい。ここで重要であるのは、AUD,SPS,PPS,SEIが再生装置に供給されることがランダムアクセスの必須条件になるという点である。
第3段目はNAL unitを示す。第2段目におけるAUD,SPS,PPS,SEIに対し、ヘッダを付加することにより、AUD,SPS,PPS,SEI、スライスデータは、それぞれNALunitに変換されることになる。NAL unitとは、MPEG4-AVCのネットワーク抽象レイヤ(Network Abstraction Layer)において、規定された単位であり、ITU-TRecommendation H.264等の様々な文献に記載されているので、詳細についてはこれらの文献を参照されたい。ここで重要であるのは、AUD,SPS,PPS,SEI,スライスデータは、それぞれ独立したNALunitに変換されているので、AUD,SPS,PPS,SEI,スライスデータのそれぞれは、ネットワーク抽象レイヤにおいて、それぞれ独立に取り扱われるという点である。
【００３１】
1つのピクチャを変換することで得られた複数のNAL unitは、第4段目に示すようにPESパケットに変換される。そしてTSパケットに変換されてBD-ROM上に記録される。
1つのGOPを再生するには、そのGOPの先頭に位置するIDRピクチャ、Non-IDR Iピクチャを構成するNAL unitのうち、Access UnitDelimiterを含むものをデコーダに投入せねばならない。つまりAccess Unit Delimiterを含むNAL unitが、IDRピクチャ、Non-IDRIピクチャをデコードするための1つの指標になる。このAccess Unit Delimiterを含むNAL unitを、本実施形態では点(Point)として扱う。そして再生装置は、ビデオストリームを再生するにあたって、AccessUnit Delimiterを含むNAL unitを、Iピクチャを再生するためのエントリー位置として解釈する。従って、AVClipにおいて、飛込再生を実行するには、IDRピクチャ，Non-IDRIピクチャのAccess Unit Delimiterが何処に存在するかを、把握することが非常に重要になる。以上がMPEG4-AVC形式のビデオストリームの構成である。
【００３２】
＜Clip情報＞
続いて拡張子.clpiが付与されたファイルについて説明する。拡張子.clpiが付与されたファイル(00001.clpi,00002.clpi,00003.clpi・・・・・)は、Clip情報を格納している。Clip情報は、個々のAVClipについての管理情報である。図１０は、Clip情報の内部構成を示す図である。本図の左側に示すようにClip情報は、
i)AVClipファイルの属性情報を格納した『ClipInfo()』、
ii)ATC Sequence,STC Sequenceに関する情報を格納した『Sequence Info()』
iii)Program Sequenceに関する情報を格納した『Program Info()』
iv)『Characteristic Point Info(CPI())』からなる。
【００３３】
図中の引き出し線cu1は、i番目のProgram Sequence(Program Sequence(i))の構成をクローズアップしている。本引き出し線に示すように、ProgramSequence(i)に対するProgram Infoは、Stream_PIDと、Stream_Coding_Infoとの組みをNs(i)個配列してなる(図中のStream_PID[i](0)、Stream_Coding_Info(i,0)〜Stream_PID[i](Ns(i)-1)、Stream_Coding_Info(i,Ns(i)-1))。
【００３４】
Stream_PIDは、AVClipを構成する個々のエレメンタリストリームについてのパケット識別子を示し、Stream_Coding_Infoは、AVClipを構成する個々のエレメンタリストリームについての符号化方式を示す。
図１１（ａ）は、ビデオストリームについてのStream_Coding_Infoを示し、図１１（ｂ）は、オーディオストリームについてのStream_Coding_Infoを示す。ビデオストリームのStream_Coding_Infoは、ビデオストリームの符号化方式が、MPEG4-AVC、MPEG2-Videoの何れであるかを示す『Stream_Coding_type』と、ビデオストリームの表示方式が480i,576i,480p,1080i,720p,1080pの何れであるかを示す『Video_format』,ビデオストリームのフレームレートが23.976Hz,29.97Hz,59.94Hzの何れであるかを示す『frame_rate』、ビデオストリームにおけるピクチャのアスペクト比が4:3,16:9の何れであるかを示す『aspect_ratio』を含む。
【００３５】
図１１（ｂ）は、オーディオストリームについてのStream_Coding_Infoを示す。本図に示すようにオーディオストリームについてのStream_Coding_Infoは、オーディオストリームの符号化方式がLPCM,Dolby-AC3,Dtsの何れであるかを示す『Stream_Coding_Type』と、オーディオストリームの出力形式がステレオ、モノラル、マルチの何れであるかを示す『audio_Presentation_type』、オーディオストリームのサンプリング周波数を示す『Sampling_Frenquency』、オーディオストリームに対応する言語を示す『audio_language』からなる。
【００３６】
このStream_Coding_Infoを参照することにより、AVClipにおける複数のエレメンタリストリームのうち、どれがMPEG4-AVC形式であるかを知得することができる。
＜CPI(EP_map)＞
図１０に戻って、CPIの説明を行う。図中の引き出し線cu2は、CPIの構成をクローズアップしている。引き出し線cu2に示すように、CPIはEP_mapからなる。EP_mapは、Ne個のEP_map_for_one_stream_PID(EP_map_for_one_stream_PID(0)〜EP_map_for_one_stream_PID(Ne-1))からなる。これらEP_map_for_one_stream_PIDは、AVClipに属する個々のエレメンタリストリームについてのEP_mapである。EP_mapは、1つのエレメンタリストリーム上において、IピクチャのAccessUnit Delimiterが存在するエントリー位置のパケット番号(SPN_EP_start)を、エントリー時刻(PTS_EP_start)と対応づけて示す情報である。図中の引き出し線cu3は、EP_map_for_one_stream_PIDの内部構成をクローズアップしている。
【００３７】
これによると、EP_map_for_one_stream_PIDは、Nc個のEP_High(EP_High(0)〜EP_High(Nc-1))と、Nf個のEP_Low(EP_Low(0)〜EP_Low(Nf-1))とからなることがわかる。ここでEP_Highは、IピクチャのSPN_EP_start及びPTS_EP_startの上位ビットを表す役割をもち、EP_Lowは、IピクチャのSPN_EP_start及びPTS_EP_startの下位ビットを示す役割をもつ。
図中の引き出し線cu4は、EP_Highの内部構成をクローズアップしている。この引き出し線に示すように、EP_High(i)は、EP_Lowに対する参照値である『ref_to_EP_Low_id[i]』と、IピクチャのPTSの上位ビットを示す『PTS_EP_High[i]』と、IピクチャのSPNの上位ビットを示す『SPN_EP_High[i]』とからなる。ここでiとは、任意のEP_Highを識別するための識別子である。
【００３８】
図中の引き出し線cu5は、EP_Lowの構成をクローズアップしている。引き出し線cu5に示すように、EP_Lowは、『is_angle_change_point(EP_Low_id)』と、対応するIピクチャのサイズを示す『I_end_position_offset(EP_Low_id)』と、対応するIピクチャのPTSの下位ビットを示す『PTS_EP_Low(EP_Low_id)』と、対応するIピクチャのSPNの下位ビットを示す『SPN_EP_Low(EP_Low_id)』とからなる。ここでEP_Low_idとは、任意のEP_Lowを識別するための識別子である。
【００３９】
これらのEP_mapのデータ構造は、基本的には上述した特許文献等に記載されたものであり、本明細書ではこれ以上詳しく触れない。このうち『is_angle_change_point』というフラグは、本願の特徴にあたるものなので、以降より詳しく説明する。
『is_angle_change_point』は、Entry Pointにて指定されたIピクチャが、他のAVClipからの進入点になるか否かを示すフラグである。図１２は、AVClipへの進入、AVClipからの脱出についての概念を示す図である。ここでAVClipの進入点とは、あるAVClipを構成するTSパケットを光ピックアップが読み取っている際、その光ピックアップをシークさせて、別のAVClipを構成するTSパケットの記録位置に光ピックアップを移動させることをいう。図１２における矢印er1は、AVClipへの進入時における、光ピックアップの移動を模式的に示す。この進入時において、is_angle_change_point“=1”のEntryPointで示されるTSパケットは、進入可能な位置として解釈される。
【００４０】
is_angle_change_point“=1”のEntry Pointにより指示されるTSパケットの直前のTSパケットはAVClipからの脱出点として解釈される。ここでAVClipからの脱出とは、あるAVClipを構成するTSパケット列を読み取っている際、光ピックアップをシークさせて、他のAVClipを構成するTSパケット列まで移動させることである。図１２における矢印ex1は、AVClipからの脱出時における、光ピックアップの移動を模式的に示す。
【００４１】
他のAVClipからの進入時には、それまでのデコードの過程で得られたピクチャを参照することはできない。従って、is_angle_change_point“=1”のEntryPointで指示されるIピクチャは、IDRピクチャでなければならない。is_angle_change_pointは、“=1”に設定されることにより、対応するIピクチャがIDRピクチャであることを意味し、“=0”に設定されることにより、対応するIピクチャがNon-IDRIピクチャであることを意味する。本図に示した操作、つまり、現在再生中のAVClipからの「脱出」と、別のAVClipへの「進入」とからなる操作を、アングル切り換え“angle_change”という。is_angle_change_pointは、この“angle_change”が可能であることから命名されている。但し、アングル切り換えの実現には、is_angle_change_point＝“1”に設定されたEP_mapだけではなく、AVClipやPlayList情報に対する改良が必要になる。アングル実現のためのAVClip、PlayList情報に対する改良は、第２実施形態において詳しく説明するので本実施形態での説明は省略する。
【００４２】
また、データ構造上EP_mapは、EP_High、EP_Lowの組みで表現されるが、この表記では、説明が煩雑になるので、特に断らない限り、これらEP_Highに示されるPTS・SPNの上位ビット、EP_Lowに示されるPTS・SPNの下位ビットをまとめて、PTS_EP_start、SPN_EP_startと表記する。
図５、図８に示したビデオストリームに対し、EP_mapがどのように設定されるかについて説明する。図１３は、図５のビデオストリームに対するEP_map設定を示す図である。第1段目は、表示順序に配置された複数のピクチャを示し、第2段目は、そのピクチャにおける時間軸を示す。第4段目は、BD-ROM上のTSパケット列を示し、第3段目は、EP_mapの設定を示す。第2段目における時間軸のt1、t2、t3、t4、t5に、Iピクチャが存在する場合、これらt1〜t5が、EP_mapにおいてPTS_EP_startとして設定されることになる。一方、ビデオストリームのAccessUnit DelimiterがBD-ROMにおけるTSパケット列のn1、n2、n3、n4、n5に存在する場合、これらn1〜n5が、EP_mapにおいてSPN_EP_startとして設定される。これらt1〜t5、n1〜n5にあたるEntryPoint#1〜Entry Point#5のうち、Entry Point#1、Entry Point#3は、IDRピクチャに対応しているので、is_angle_change_pointは“1”に設定される。それ以外のEntryPoint#2、Entry Point#4、Entry Point#5におけるis_angle_change_pointは、“0”に設定される。
【００４３】
図１４は、図１３におけるEntry Point#1〜Entry Point#5のPTS_EP_start、SPN_EP_startを、EP_Low、EP_Highの組みで表現したものである。本図の左側にEP_Lowを示し、右側にEP_Highを示す。
図１４左側のEP_Low(0)〜(Nf-1)のうち、EP_Low(i)〜(i+1)のPTS_EP_Lowは、t1〜t5の下位ビットを示す。EP_Low(0)〜(Nf-1)のうち、EP_Low(i)〜(i+1)のSPN_EP_Highは、n1〜n5の下位ビットを示す。そしてEP_Low(i)〜(i+1)におけるis_angle_change_point(i)〜(i+1)のうち、(i),(i+2)は、対応するIピクチャがIDRピクチャであるので、is_angle_change_pointは“1”に設定されている。(i+1),(i+3),(i+4)は、対応するIピクチャがNon-IDRIピクチャであるので、is_angle_change_pointは“0”に設定されている。
【００４４】
図１４右側は、EP_mapにおけるEP_High(0)〜(Nc-1)を示す。ここでt1〜t5は共通の上位ビットをもっており、またn1〜n5も共通の上位ビットをもっているとすると、この共通の上位ビットが、PTS_EP_High,SPN_EP_Highに記述される。そしてEP_Highに対応するref_to_EP_LOW_idは、t1〜t5、n1〜n5にあたるEP_Lowのうち、先頭のもの(EP_Low(i))を示すように設定しておく。こうすることにより、PTS_EP_start、SPN_EP_startの共通の上位ビットは、EP_Highにより表現されることになる。
【００４５】
かかるEP_mapの最大の特徴は、飛込再生時の読出範囲の拡大が必要最低限になることである。図１５は、飛込再生時における読出範囲の拡大を示す図である。
ここで図中のIn_timeから、飛込再生を実行する場合を考える。このIn_timeが飛び込み位置であるとすると、再生装置は、この飛び込み位置に最も近いEntryPointであって、is_angle_change_pointが“1”に設定されているものを判定する。本図では、時刻t3にあたるEntry Pointが、is_angle_change_point“=1”に設定されているので、このPTS_EP_start＝t3にあたるEntryPoint#3からSPN_EP_start＝n3を取り出し、AVClipを構成するTSパケットのうち、n3以降を読み出してデコーダに供給する。こうすることによりビデオストリーム先頭にまで読出範囲を拡大することなく、Iピクチャにあたるピクチャのデコードに必要な全ての参照ピクチャをデコーダ内に準備しておくことができる。
【００４６】
ビデオストリームの再生時間長が2時間であり、飛込位置であるIn_timeが、1時間経過後の再生位置である場合、t3がIn_timeの15分前であれば、その15分前のt3まで読出範囲を拡大することにより、In_timeにあるピクチャのデコードに必要な参照ピクチャを、デコーダ内に準備することができる。
“1時間経過後”を示すIn_timeから飛込再生を実行する場合、15分前のt3まで読出範囲を拡大するだけで、飛込再生のデコードに必要な参照ピクチャを、デコーダ内に準備することができるので、読出範囲の必要最低限の拡大により、BD-ROM上のMPEG4-AVC形式のビデオストリームを自由な位置から再生してゆくことができる。これにより、BD-ROMを用いた映画作品の頒布という用途に、MPEG4-AVCを利用することができ、MPEG4-AVCの用途を大きく広げることができる。
【００４７】
上述したようなMPEG4-AVC対応のEP_mapを、MPEG2-Videoに対応するEP_mapのデータ構造と比較すると、IピクチャのSPNを、PTSに対応づけて示しているという点において、MPEG4-AVC対応のEP_mapのデータ構造は、MPEG2-Video対応のEP_mapと共通している。違いは、MPEG4-AVC対応のEP_mapに、is_angle_change_pointが存在していて、対応するIピクチャが、IDRピクチャであるか、Non-IDRIピクチャであるかが、このis_angle_change_pointに示されている点である。MPEG4-AVC対応のEP_mapは、IDRピクチャ及びNon-IDRIピクチャのSPN−PTSの組みにis_angle_change_pointを付すという形式で表現されていて、MPEG2-Videoに対応したEP_mapと互換性をもっている。MPEG4-AVC対応のEP_mapを、MPEG2-Videoと互換性がある形式で表現することができるので、BD-ROMを制作しようとする者は、MPEG2-Videoの符号化方式、MPEG4-AVCの符号化方式のどちらかを採択するにあたって、EP_mapの形式を意識する必要はない。EP_mapのデータ構造を意識することなく、MPEG2-Videoの符号化方式、MPEG4-AVCの符号化方式のどちらかを比較的自由に選ぶことができる。そのため、符号化方式の選択の幅が広がるという効果がある。  
【００４８】
以上が、本実施形態にかかるClip情報についての説明である。続いて拡張子“mpls”が付与されたファイルについて説明する。
＜PlayList情報＞
拡張子“mpls”が付与されたファイル(00001.mpls,00002.mpls,00003.mpls・・・・・)
は、PlayList情報を格納したファイルである。PlayList情報は、AVClipを参照してPlayListと呼ばれる再生経路を定義する情報である。図１６は、PlayList情報の構成を示す図であり、本図の左側に示すように、PlayList情報は、複数のPlayItem情報からなる。PlayItemとは、1つ以上のAVClip時間軸上において、In_Time,Out_Timeを指定することで定義される再生区間である。PlayItem情報を複数配置させることで、複数再生区間からなるPlayList(PL)が定義される。図中の破線hs1は、PlayItem情報の内部構成をクローズアップしている。本図に示すようにPlayItem情報は、対応するClip情報を示す『Clip_information_file_name』と、対応するAVClipの符号化方式を示す『Clip_codec_indentifier』と、『In_time』と、『Out_time』とからなる。図１７は、AVClipと、PlayList情報との関係を示す図である。第1段目はAVClipがもつ時間軸を示し、第2段目は、PlayListがもつ時間軸(PL時間軸という)を示す。PlayList情報は、PlayItem#1,#2,#3という3つのPlayItem情報を含んでおり、これらPlayItem#1,#2,#3のIn_time,Out_timeにより、3つの再生区間が定義されることになる。これらの再生区間を配列させると、AVClip時間軸とは異なる時間軸が定義されることになる。これが第2段目に示すPL時間軸である。このように、PlayItem情報の定義により、AVClipとは異なる時間軸の定義が可能になる。
【００４９】
Clip情報におけるEP_mapは、上述したようにビデオストリームにおけるIピクチャのSPNを、IDRピクチャの有無と共に、PTSに対応して示している。このEP_mapにより、任意の時刻からの特殊再生の効率化は保証されているから、PlayList情報は、特殊再生が効率化されていることを前提にして、時間情報をもって表現されている。この時間情報による表現により、BD-ROMにおけるPlayList情報は、書換可能タイプの記録媒体(BD-RE)におけるPlayList情報のデータ構造との互換性をもつことができる。
【００５０】
以上が本実施形態に係るPlayList情報の内部構成である。以上で本発明に係る記録媒体についての説明を終わる。続いて本発明に係る再生装置について説明する。
＜再生装置の内部構成＞
図１８は、本発明に係る再生装置の内部構成を示す図である。本発明に係る再生装置は、本図に示す内部構成に基づき、工業的に生産される。本発明に係る再生装置は、主としてシステムLSIと、ドライブ装置という2つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装することで工業的に生産することができる。システムLSIは、再生装置の機能を果たす様々な処理部を集積した集積回路である。こうして生産される再生装置は、BDドライブ１、ArrivaltimeClock Counter２、Source de-packetetizer３、PID Filter４、Transport Buffer５、Multiplexed Buffer６、CodedPicture Buffer７、ビデオデコーダ８、Decoded Picture Buffer１０、ビデオプレーン１１、Transport Buffer１２、CodedData Buffer１３、Stream Graphics Processor１４、Object Buffer１５、Composition Buffer１６、CompositionController１７、Presentation Graphicsプレーン１８、CLUT部１９、Transport Buffer２０、Coded DataBuffer２１、Stream Graphics Processor２２、Object Buffer２３、Composition Buffer２４、CompositionController２５、Intaractive Graphicsプレーン２６、CLUT部２７、合成部２８、合成部２９、スイッチ３０、NetworkDevice３１、Local Storage３２、Arrival Time Clock Counter３３、Source De-Packetizer３４、PIDフィルタ３５、スイッチ３６、TransportBuffer３７、Elementary Buffer３８、オーディオデコーダ３９、Transport Buffer４０、バッファ４１、テキスト字幕デコーダ４２、シナリオメモリ４３、制御部４４、PSRセット４６から構成される。本図における内部構成は、MPEGのT-STDモデルをベースとしたデコーダモデルであり、ダウンコンバートを想定した含めたデコーダモデルになっている。
【００５１】
BD-ROMドライブ１は、BD-ROMのローディング／イジェクトを行い、BD-ROMに対するアクセスを実行して、32個のセクタからなるAlignedUnitをBD-ROMから読み出す。
Arrival time Clock Counter２は、27MHzの水晶発振器(27MHz X-tal)に基づき、Arrival Time Clockを生成する。ArrivalTime Clockとは、TSパケットに付与されたATSの基準となる時間軸を規定するクロック信号である。
【００５２】
Source de-packetetizer３は、BD-ROMから32個のセクタからなるAligned Unitが読み出されれば、Aligned Unitを構成するそれぞれのTSパケットから、TP_extra_headerを取り外して、TSパケットのみをPIDフィルタ４に出力する。SourceDe-Packetizer３によるPIDフィルタ４への出力は、Arrival time Clock Counter２が経時している時刻が、TP_extra_headerに示されるATSになったタイミングになされる。PIDフィルタ４への出力は、ATSに従いなされるので、たとえBD-ROMからの読み出しに1倍速、2倍速といった速度差があっても、PIDフィルタ４へのTSパケット出力は、ArrivalTime Clockが経時する現在時間に従いなされることになる。
【００５３】
PID Filter４は、TSパケットに付加されているPIDを参照することにより、TSパケットが、ビデオストリーム、PGストリーム、IGストリームの何れに帰属するのかを判定して、TransportBuffer５、Transport Buffer１２、Transport Buffer２０、Transport Buffer３７のどれかに出力する。
Transport Buffer(TB)５は、ビデオストリームに帰属するTSパケットがPIDフィルタ４から出力された際、一旦蓄積されるバッファである。
【００５４】
Multiplexed Buffer(MB)６は、Transport Buffer５からElementary Buffer７にビデオストリームを出力するにあたって、一旦PESパケットを蓄積しておくためのバッファである。
Coded Picture Buffer(CPB)７は、符号化状態にあるピクチャ(Iピクチャ、Bピクチャ、Pピクチャ)が格納されるバッファである。
【００５５】
ビデオデコーダ８は、ビデオエレメンタリストリームの個々のフレーム画像を所定の復号時刻（DTS）ごとにデコードすることにより複数フレーム画像を得て、DecodedPicture Buffer１０に書き込む。
Decoded Picture Buffer１０は、復号されたピクチャが書き込まれるバッファである。
ビデオプレーン１１は、非圧縮形式のピクチャを格納しておくためのプレーンである。プレーンとは、再生装置において一画面分の画素データを格納しておくためのメモリ領域である。ビデオプレーン１１における解像度は1920×1080であり、このビデオプレーン１１に格納されたピクチャデータは、16ビットのYUV値で表現された画素データにより構成される。
【００５６】
Transport Buffer(TB)１２は、PGストリームに帰属するTSパケットがPIDフィルタ４から出力された際、一旦蓄積されるバッファである。
Coded Data Buffer(CDB)１３は、PGストリームを構成するPESパケットが格納されるバッファである。
Stream Graphics Processor(SGP)１４は、グラフィクスデータを格納したPESパケット(ODS)をデコードして、デコードにより得られたインデックスカラーからなる非圧縮状態のビットマップをグラフィクスオブジェクトとしてObject
Buffer１５に書き込む。
【００５７】
Object Buffer１５は、Stream Graphics Processor１４のデコードにより得られたグラフィクスオブジェクトが配置される。
Composition Buffer１６は、グラフィクスデータ描画のための制御情報(PCS)が配置されるメモリである。
Graphics Controller１７は、Composition Buffer１６に配置されたPCSを解読して、解読結果に基づく制御をする。
【００５８】
Presentation Graphicsプレーン１８は、一画面分の領域をもったメモリであり、一画面分の非圧縮グラフィクスを格納することができる。本プレーンにおける解像度は1920×1080であり、PresentationGraphicsプレーン１８中の非圧縮グラフィクスの各画素は8ビットのインデックスカラーで表現される。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、PresentationGraphicsプレーン１８に格納された非圧縮グラフィクスは、表示に供される。
【００５９】
CLUT部１９は、Presentation Graphicsプレーン１８に格納された非圧縮グラフィクスにおけるインデックスカラーを、Y,Cr,Cb値に変換する。
Transport Buffer(TB)２０は、IGストリームに帰属するTSパケットが一旦蓄積されるバッファである。
Coded Data Buffer(CDB)２１は、IGストリームを構成するPESパケットが格納されるバッファである。
【００６０】
Stream Graphics Processor(SGP)２２は、グラフィクスデータを格納したPESパケットをデコードして、デコードにより得られたインデックスカラーからなる非圧縮状態のビットマップをグラフィクスオブジェクトとしてObjectBuffer２３に書き込む。
Object Buffer２３は、Stream Graphics Processor２２のデコードにより得られたグラフィクスオブジェクトが配置される。
【００６１】
Composition Buffer２４は、グラフィクスデータ描画のための制御情報が配置されるメモリである。
Graphics Controller２５は、Composition Buffer２４に配置された制御情報を解読して、解読結果に基づく制御をする。
Interactive Graphicsプレーン２６は、Stream Graphics Processor(SGP)２２によるデコードで得られた非圧縮グラフィクスが書き込まれる。本プレーンにおける解像度は1920×1080であり、IntaractiveGraphicsプレーン２６中の非圧縮グラフィクスの各画素は8ビットのインデックスカラーで表現される。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、IntaractiveGraphicsプレーン２６に格納された非圧縮グラフィクスは、表示に供される。
【００６２】
CLUT部２７は、Interactive Graphicsプレーン２６に格納された非圧縮グラフィクスにおけるインデックスカラーを、Y,Cr,Cb値に変換する。
合成部２８はビデオプレーン１１に格納された非圧縮状態のフレーム画像と、Presentation Graphicsプレーン１８に格納された非圧縮状態のグラフィクスオブジェクトとを合成させる。かかる合成により、動画像上に、字幕が重ね合わされた合成画像を得ることができる。
【００６３】
合成部２９は、Interactive Graphicsプレーン２６に格納された非圧縮状態のグラフィクスオブジェクトと、合成部２８の出力である合成画像(非圧縮状態のピクチャデータと、PresentationGraphicsプレーン１８の非圧縮グラフィクスオブジェクトとを合成したもの)とを合成する。
スイッチ３０は、BD-ROMから読み出されたTSパケット、Local Storage３２から読み出されたTSパケットの何れか一方を、選択的にTransportBuffer２０に供給する。
【００６４】
Network Device３１は、再生装置における通信機能を実現するものであり、URLにあたるwebサイトとのTCPコネクション、FTPコネクション等を確立する。
Local Storage３２は、様々な記録媒体及び通信媒体から供給されたコンテンツを格納しておくためのハードディスクである。Network Device３１により確立されたコネクションを通じてwebサイトからダウンロードされたコンテンツ等も、このLocalStorage３２に格納される。
【００６５】
Source de-packetetizer３４は、Local Storage３２から読み出されたAVClipのTSパケットから、TP_extra_headerを取り外して、TSパケットのみをPIDフィルタ３５に出力する。Sourcede-packetizer３４によるPIDフィルタ３５への出力は、Arrival Time Clock Counter３３が経時している時刻が、TP_extra_headerに示されるATSになったタイミングになされる。
【００６６】
PIDフィルタ３５は、Local Storage３２から読み出されたTSパケットを、IGストリームデコーダ側、オーディオデコーダ側、テキスト字幕デコーダ側の何れかに切り換える。
スイッチ３６は、BD-ROMから読み出されたTSパケット、Local Storage３２から読み出されたTSパケットのどちらかをオーディオデコーダ３９側に許可要求する。
Transport Buffer(TB)３７は、オーディオストリームに帰属するTSパケットを蓄積する。
【００６７】
Elementary Buffer(EB)３８は、オーディオストリームを構成するPESパケットが格納されるバッファである。
オーディオデコーダ３９は、Elementary Buffer３８から出力されたPESパケットを復号して、非圧縮形式のオーディオデータを出力する。
Transport Buffer(TB)４０は、テキスト字幕ストリームに帰属するTSパケットを蓄積する。
【００６８】
Elementary Buffer(EB)４１は、テキスト字幕ストリームを構成するPESパケットが格納されるバッファである。
テキスト字幕デコーダ４２は、バッファ４１に読み出されたPESパケットをデコードして、表示に供する。このデコードは、Local Storage３２から別途読み出されるフォントを用いて、テキスト字幕ストリーム中のテキスト文字列を、ビットマップに展開することでなされる。デコードにより得られたテキスト字幕は、PresentationGraphicsプレーン１８に書き込まれる。
【００６９】
シナリオメモリ４３は、カレントのPlayList情報やカレントのClip情報を格納しておくためのメモリである。カレントPlayList情報とは、BD-ROMに記録されている複数PlayList情報のうち、現在処理対象になっているものをいう。カレントClip情報とは、BD-ROMに記録されている複数Clip情報のうち、現在処理対象になっているものをいう。
制御部４４は、命令ROMと、CPUとからなり、命令ROMに格納されているソフトウェアを実行して、再生装置全体の制御を実行する。この制御の内容は、ユーザ操作に応じて発生するユーザイベント、及び、PSRセット４６における各PSRの設定値に応じて動的に変化する。
【００７０】
PSRセット４６は、再生装置に内蔵される不揮発性のレジスタであり、64個のPlayer Status Register(PSR(1)〜(64))と、4096個のGeneralPurpose Register（GPR)とからなる。64個のPlayer Status Register(PSR)は、それぞれ現在の再生時点等、再生装置における諸状態を示す。64個のPSR(PSR(1)〜(64))のうちPSR(5)〜PSR(8)は、現在の再生時点を表すものである。このうちPSR(5)は、1〜999の値に設定されることで、現在の再生時点が属するチャプター番号を示し、0xFFFFに設定されることで、再生装置においてチャプター番号が無効であることを示す。
【００７１】
PSR(6)は、0〜999の値に設定されることで、現在の再生時点が属するPlayList(カレントPlayList)の番号を示す。
PSR(7)は、0〜255の値に設定されることで、現在の再生時点が属するPlay Item(以下カレントPIという)の番号を示す。
PSR(8)は、0〜OxFFFFFFFFの値に設定されることで、45KHzの時間精度を用いて現在の再生時点(カレントPTM)を示す。
【００７２】
以上が再生装置の内部構成である。これらの構成要素のうち、ビデオデコーダ８、Decoded Picture Buffer１０は特に重要であるので、図１９〜図２１を参照して、より詳しく説明する。
Decoded Picture Buffer１０には、復号化されたピクチャが複数格納される。図１９は、Decoded Picture
Buffer１０の内部構成を示す図であり、本図に示すように、Decoded Picture Buffer１０には復号化されたピクチャとして、参照ピクチャと、非参照ピクチャとが格納される。参照ピクチャには、短時間参照ピクチャと、長時間参照ピクチャとがある。短時間参照ピクチャは、FIFO領域に格納され、先入先出し式に扱われる。一方、長時間参照ピクチャは、FIFO領域に格納されず、先入先出し式には扱われない。
【００７３】
図２０は、ビデオデコーダ８によりNon-IDR Iピクチャが復号される過程を示す図である。Non-IDR Iピクチャの復号過程において、DecodedPicture Buffer１０に格納される長時間参照ピクチャ、短時間参照ピクチャは参照されることになる。図中の矢印rf1,rf2,rf3は、短時間参照ピクチャに対する参照を、模式的に示し、矢印rf4,rf5,rf6は、長時間参照ピクチャに対する参照を、模式的に示す。図２１は、IDRピクチャをデコードする際の、DecodedPicture Buffer１０の格納内容を示す。IDRピクチャのデコード時にあたっては、ビデオデコーダ８、Decoded Picture Buffer１０に対する瞬時リフレッシュがなされるので、DecodedPicture Buffer１０に格納されていた短期間参照ピクチャ、長期間参照ピクチャは全て消去されることになる。以上がCoded PictureBuffer７、ビデオデコーダ８、Decoded Picture Buffer１０についての詳細である。続いて制御部４４の処理手順について説明する。
【００７４】
制御部４４は、MPEG4-AVC形式のビデオストリームの再生時において倍速再生や飛込再生を実行するよう、BDドライブ１、ビデオデコーダ８を制御する。
倍速再生は、ビデオストリームを構成する複数ピクチャのうち、Iピクチャ(IDRピクチャ、Non-IDR Iピクチャを含む)を順次再生してゆくことにより、実現することができる。ここでEP_mapのEntryPointには、IDRピクチャ及びNon-IDR Iピクチャの位置及びサイズが示されているので、ビデオストリームのうちIピクチャや、Iピクチャのみを読み込んで再生することにより、2倍速、3倍速といった特殊再生を実現することができる。
【００７５】
一方飛込再生には、タイムサーチと、PL再生とがある。タイムサーチとは、“何時何分何秒”に再生せよという時間情報をユーザから受け付けて、指示された再生開始時点にあたる位置から、ビデオストリームを再生する技術である。この際制御部４４は、時間情報をBD-ROM上のIピクチャアドレスに変換するという変換処理を行い、Iピクチャアドレスを求めてから、そのアドレス以降のTSパケットをBD-ROMから読み出させ、そのTSパケットを順次デコーダに投入する。
【００７６】
一方、PL再生とは、PlayList情報のIn_timeにあたる位置から、Out_timeにあたる位置までビデオストリームを再生する技術である。
これらの制御の根幹にあるのは、時間情報からIピクチャアドレスを導く処理である。図２２は、時間情報をIピクチャアドレスに変換する手順を示すフローチャートである。本フローチャートにおいて、飛込再生の飛込位置を示す時間情報をIn_timeと表記している。図２２のステップＳ１では、In_timeをPTS_EP_startとし、ステップＳ２では、PTS_EP_startに最も近い、EP_High_id、EP_Low_idの組みを求める。ここでEP_High_idとは、In_time以前の時点を示すEP_Highであって、In_timeに最も近いものを特定する識別子である。一方、EP_Low_idとは、EP_High[EP_High_id]以降、In_time以前の時点を示すEP_Lowであって、In_timeに最も近いものを特定する識別子である。
【００７７】
EP_High_idを求めるため、制御部４４は、複数EP_HighのPTS_EP_Highに示される時間幅を足し合わせてゆく。ここでPTS_EP_Highに示される時間幅とは、PTS_EP_Highを上位ビットとする時間の単位である。そして何個目のEP_High_idにおいて、時間幅の総和ΣがIn_timeを越えるかを判定する。ここでk個目のEP_High_idにおいて、時間幅の総和ΣがIn_timeを越えた場合、このkから1を減じた数値(k-1)を、EP_High_idとする。
【００７８】
EP_Low_idを求めるため、制御部４４は、PTS_EP_High(EP_High_id)までの総和Σに、複数EP_LowのPTS_EP_Lowに示される時間幅を足し合わせてゆく。そして何個目のEP_Low_idにおいて、時間幅の総和がIn_timeを越えるかを判定する。ここでh個目のEP_Low_idにおいて、時間幅の総和がIn_timeを越えた場合、このhから1を減じた数値(h-1)を、EP_Low_idとする。
【００７９】
このようにして求められたEP_High_id及びEP_Low_idの組みにより、In_timeに最も近いEntry Pointが特定されることになる。
こうしてEP_Low_idを求めれば、ステップＳ３〜ステップＳ５からなるループ処理に移行する。EP_Low_idを変数jに代入した上で(ステップＳ３)、ステップＳ４〜ステップＳ５からなるループ処理を実行するというものである。このループ処理は、ステップＳ５がYesと判定されるまで、変数jのデクリメント(ステップＳ４)を繰り返すものである。このステップＳ５は、変数jにて特定されるEntryPointのis_angle_change_point(PTS_EP_Low[j].is_angle_change_point)が1であるか否かを判定するものであり、変数jにて特定されるEntryPointのis_angle_change_pointが連続して“0”を示している限り、このループ処理は繰り返し実行される。
【００８０】
変数jにて特定されるEntry Pointのis_angle_change_pointが“1”になれば、このループ処理は終了することになる。ステップＳ５がYesになれば、変数jをEP_Low_idに代入し(ステップＳ６)、このEP_Low_idに最も近いref_to_EP_Low_id[i]を有するEP_High[i]を求める(ステップＳ７)。こうしてEP_Low_idと、iとが求められれば、SPN_EP_Low[EP_Low_id]と、SPN_EP_High[i]とからSPN_EP_Startを求めて(ステップＳ８)、このSPN_EP_Startを、Iピクチャアドレスに変換する(ステップＳ９)。
【００８１】
ここでSPNは、TSパケットのシリアル番号であるので、このSPNに基づきTSパケットを読み出すには、SPNを相対セクタ数に変換する必要がある。ここで図４に示したように、TSパケットは32個毎に1つのAlignedUnitに変換され、3つのセクタに記録されるので、SPNを32で割ることにより商を得て、その商を、Iピクチャが存在するAligned Unitの番号として解釈する。こうして得られたAlignedUnit番号に3を乗ずることにより、SPNに最も近いAligned Unitのセクタアドレスを求めることができる。こうして得られたセクタアドレスは、1つのAVClipファイルの先頭からの相対セクタ数なので、この相対セクタ数をファイルポインタに設定して、AVClipを読み出すことにより、Iピクチャをビデオデコーダ８に読み出すことができる。
【００８２】
以上の手順により、In_time以前を指し示すEntry Pointであって、IDRピクチャを指示するものを探し出すことができる。こうして多重化されたIDRピクチャ以降を読み出すことにより、In_timeのデコードに必要な参照ピクチャをデコーダ内に準備することができる。以上が時間情報からIピクチャアドレスを導く処理の手順である。続いて、PlayList情報に基づく再生手順について説明する。
【００８３】
図２３は、制御部４４によるPL再生手順を示すフローチャートである。本フローチャートにおいて処理対象たるPlayItemをPlayItem#xとする。本フローチャートは、カレントPlayList情報(.mpls)の読み込みを行い(ステップＳ１０１)、その後、ステップＳ１０２〜ステップＳ１１０の処理を実行するというものである。ここでステップＳ１０２〜ステップＳ１１０は、ステップＳ１０９がYesになるまで、カレントPlayList情報を構成するそれぞれのPI情報について、ステップＳ１０３〜ステップＳ１１０の処理を繰り返すというループ処理を構成している。このループ処理において処理対象となるPlayItemを、PlayItem#x(PI#x)とよぶ。このPlayItem#xは、カレントPlayListの先頭のPlayItemに設定されることにより、初期化される(ステップＳ１０２)。上述したループ処理の終了要件は、このPlayItem#xがカレントPlayListの最後のPlayItemになることであり(ステップＳ１０９)、もし最後のPlayItemでなければ、カレントPlayListにおける次のPlayItemがPlayItem#xに設定される(ステップＳ１１０)。
【００８４】
ループ処理において繰り返し実行されるステップＳ１０３〜ステップＳ１１０は、以下の処理からなる。先ず初めに、PlayItem#xのClip_information_file_nameで指定されるClip情報をメモリに読み込み(ステップＳ１０３)、PlayItem#xのIn_timeを、カレントClip情報のEPmapを用いて、Iピクチャアドレスuに変換する(ステップＳ１０４)。この変換は、図２２のフローチャートに従ってなされ、IDRピクチャのアドレスが、Iピクチャアドレスuとして算出される。
【００８５】
その一方、PlayItem#xのOut_timeを、カレントClip情報のEP_mapを用いて、Iピクチャアドレスvに変換する(ステップＳ１０５)。Out_timeの変換には、図２２のフローチャートの実行は不要であり、最も近い位置にあるIピクチャのアドレスをアドレスvとして算出すればよい。これらの変換で得られたアドレスvの次のIピクチャを求めて、そのアドレスの1つ手前をアドレスwに設定し(ステップＳ１０７)、そうして算出されたアドレスwを用いて、IピクチャアドレスuからアドレスwまでのTSパケットの読み出しをBD-ROMドライブ１に命じる(ステップＳ１０８)。
【００８６】
一方、ビデオデコーダ８に対しては、カレントPlayListMarkのmark_time_stampからPlayItem#xのOut_timeまでの出力を命じる(ステップＳ１０６)。以上のステップＳ１０５〜ステップＳ１０８により、AVClipにおいて、PlayItem#xにより指示されている部分の再生がなされることになる。
その後、PlayItem#xがカレントPlayListの最後のPIであるかの判定がなされる(ステップＳ１０９)。
【００８７】
PlayItem#xがカレントPlayListの最後のPIでなければ、カレントPlayListにおける次のPlayItemを、PlayItem#xに設定して(ステップＳ１１０)、ステップＳ１０３に戻る。以上のステップＳ１０３〜ステップＳ１１０を繰り返することにより、PlayListを構成するPlayItemは順次再生されることになる。
以上のように本実施形態によれば、is_angle_change_point“=1”のEntry Pointにより指示されるピクチャまで読出範囲を広げれば、IDRピクチャをビデオデコーダ８に供給することができ、飛込再生時のデコードに必要な全ての参照ピクチャをDecodedPicture Buffer１０内に準備することができるので、飛込再生時における読出範囲の拡大を必要最小限にすることができる。
【００８８】
高い圧縮率を得るため、15分、30分というように、比較的長い時間間隔でIDRピクチャがビデオストリームに挿入されている場合において、特殊再生の効率化を実現することができるので、MPEG4-AVCによる圧縮符号化の利点を大きく損なう事はなく、特殊再生の効率化を実現することができる。 
(第２実施形態)
第１実施形態では、EP_mapは、AVClipにおける進入点を指示する、is_angle_change_pointをEP_mapのデータ構造と共に開示した。第２実施形態では、is_angle_change_pointにより指示される進入点及び脱出点により実現される、アングル切り換え操作について説明する。アングル切り換え操作とは、第１実施形態で述べたように、現在再生中のAVClipからの「脱出」と、別のAVClipへの「進入」とからなる操作のことである。
【００８９】
ここで正面、右方向、左方向というように、1つの被写体を複数のカメラアングルから捉えた複数の映像が、複数のAVClipとして記録されており、これらのうち正面からの映像を表すAVClipの再生中において、上述した「脱出」と、右方向からの映像を表すAVClipへの「進入」がなされると、正面から右方向というように、再生映像の切り換わりが生じる。カメラアングルを切り換えるように、再生映像を変化させることができるので、この変化に由来して、上述した「脱出」及び「進入」からなる操作は、“アングル切り換え”と呼ばれる。かかるアングル切り換えの実現にあたって、AVClipやPlayList情報に対する改良が必要になる。アングル切り換えのための改良が加えられたPlayList情報のPlayItem情報、及び、複数のAVClipを、マルチアングル区間とよぶ。
【００９０】
マルチアングル区間実現のための応用層レイアウトを図２４に示す。本実施形態で、対象としているマルチアングル区間は、4つのアングル映像の切り換えを意図しているものだとすると、マルチアングル区間は、4つのAVClip(00001.m2ts,00002.m2ts,00003.m2ts,00004.m2ts)と、1つのPlayList情報(00001.mpls)と、4つのClip情報(00001.clpi,00002.clpi,00003.clpi,00004.clpi)とにより構成される。
【００９１】
図２５は、PlayList情報のデータ構造を示す図である。本図に示すようにマルチアングル区間対応のPlay Item情報は、通常のPlay Itemとの互換部分と、マルチアングル区間実現のための拡張部分とからなる。互換部分のデータ構造は図１６と同じであり、『Clip_information_file_name』、『Clip_codec_identifier』、『IN_time』、『OUT_time』である。マルチアングル区間において、この互換部分で指定されるAVClipは、1本目のアングル区間として取り扱われる。こうすることで、マルチアングル区間に対応しえない再生装置(BD-REのデータ構造しか対応しえない再生装置)が、マルチアングル区間対応のPlayItemを読み取ったとしても、この互換部分のみを参照して再生を行うことで、1本目のアングル区間を再生してゆくことができる。拡張部分のデータ構造は、『is_multi_angles』,『number_of_angles』,『is_seamless_angle_change』、『Angle情報[2][3]・・・[j]』からなる。
【００９２】
『is_multi_angles』は、このPlay Itemに対応する再生区間がマルチアングル区間であるか、非アングル区間であるかを示す。
『number_of_angles』は、マルチアングル区間を示すよう『is_multi_angles』が設定されている場合、このマルチアングル区間を構成するアングル数を示す。
『is_seamless_angle_change』は、シームレスなアングル切り換えが意図されているかを示す。シームレスなアングル切り換えが意図されているかどうかは、AVClipが、後述するインターリーブ記録により記録されているか否かによって変わる。従って、インターリーブ記録により記録されている場合、『is_seamless_angle_change』はオンに設定され、記録されてない場合、『is_seamless_angle_change』はオフに設定される。
【００９３】
『Angle情報[2]・・・[j]』は、マルチアングル区間における個々のアングル区間についての情報であり、『Clip_Information_file_name』、『Clip_codec_identifier』を含む。
『Clip_Information_file_name[angle_id]』には、アングル区間を構成するAVClipのファイル名が記述される。
【００９４】
『Clip_codec_identifier[angle_id]』は、アングル情報のClip_Information_file_nameにて記述されたファイル名のAVClipにおける符号化方式を示す。
以上の説明においてアングル情報には、In_time、Out_timeがない。これは、2本目以降のアングル区間は、互換部分に存在するIn_time、Out_timeにより、PlayItemの始点、終点が指定されるためである。従って、アングル情報内のClip_Information_file_nameで指定されるAVClipは、互換部分内のClip_Information_file_nameで指定されるAVClipと、同一再生時間でなければならない。また、AVClip再生時間軸において、個々の再生タイミングを規定するタイムスタンプ(SystemTime Clock)の値が厳密に同一でなければならない。
【００９５】
PlayItem情報の互換部分及び拡張部分は、Clip_Information_file_nameを有しているので、複数のAVClipに対し、再生区間を一括して指定することができる。
図２６（ａ）は、PlayItem情報の4つのClip_Information_file_nameによりなされた一括指定を示す図である。本図において第1段目〜第4段目は、4つのAVClip時間軸(AVClip#1,#2,#3,#4の時間軸)を示し、第5段目は、PL時間軸を示す。PlayItem情報が有する、4つのClip_Information_file_nameにて、これら4つの時間軸が指定されている。こうすることで、PlayItemが有するIn_time,Out_timeにより、択一的に再生可能な4つの再生区間が定義されることになる。これにより、PL時間軸には、切り換え可能な複数アングル映像からなる区間(いわゆるマルチアングル区間)が定義されることになる。In_time,Out_timeにより指定される、4つのAVClip上の4つの再生区間は、PlayList時間軸において同じ再生時間帯に位置することになる。
【００９６】
マルチアングル区間を構成する各AVClipが、どのように分割されてBD-ROM上に記録されるかについて説明する。AVClipは、複数のエクステントに分割され、BD-ROMに記録される。エクステントとは、BD-ROM上の連続領域に記録されるBD-ROM上の1の分割部分であり、セグメントとも呼ばれる。
図２４に示したAVClip#1〜AVClip#4は、4つのアングルから撮影された動画データであるものとする。この場合AVClip#1〜#4は、
AVClip#1⇒
AVClip#1.1/5,AVClip#1.2/5,AVClip#1.3/5,AVClip#1.4/5,AVClip#1.5/5
AVClip#2⇒
AVClip#2.1/5,AVClip#2.2/5,AVClip#2.3/5,AVClip#2.4/5,AVClip#2.5/5
AVClip#3⇒
AVClip#3.1/5,AVClip#3.2/5,AVClip#3.3/5,AVClip#3.4/5,AVClip#3.5/5
AVClip#4⇒
AVClip#4.1/5,AVClip#4.2/5,AVClip#4.3/5,AVClip#4.4/5,AVClip#4.5/5
という5つのエクステントに分割される。
【００９７】
図２６（ｂ）は、各AVClipを構成するエクステントを、PlayList時間軸上に記述した図である。各AVClipを構成する5つのエクステントは、同じ再生時間帯に位置する。つまり、AVclip#1.1/5、AVclip#2.1/5、AVclip#3.1/5、AVclip#4.1/5は同じ時間帯に位置する。AVclip#1.2/5、AVclip#2.2/5、AVclip#3.2/5、AVclip#4.2/5は同じ時間帯に、AVclip#1.3/5、AVclip#2.3/5、AVclip#3.3/5、AVclip#4.3/5は同じ時間帯に位置する。
【００９８】
これら4つのAVClipを構成するエクステントは、BD-ROMにおいてインターリーブ記録される。ここでインターリーブ記録とは、複数のファイルを分割することで得られた分割部分を、交互に記録しておくことをいう。かかるインターリーブ記録により、あるファイルの読み出しの途中で、別のファイルを読み出すという、読出先ファイルの切り換えを好適に行うことができる。これにより、AVClipの再生途中において、再生映像を途切れさせることなく、上述した「脱出」、「進入」を実現することができる。結果としてシームレスなアングル切り換えの実現が可能になる。
【００９９】
図２６（ｂ）に示したエクステントは、BD-ROM上において、図２７（ａ）のようにインターリーブ記録される。
図２７（ａ）は、マルチアングル区間を構成する4つのAVClipがBD-ROM上でどのように配置されているかという、アロケーションイメージを示す。ここで4つのAVClipのそれぞれが、5つエクステントから構成されているとすると、各AVClipを構成する5つの分割部分のうち、1つ目のもの(AVClip#1.1/5,AVClip#1.2/5.AVClip#3.1/5,AVClip#4.1/5)がひとまとまりに記録される。これらAVClip#1.1/5〜AVClip#4.1/5は、同じ時間帯に再生されるべきAVClipの一部である。このように同じ時間帯に再生されるべきエクステントが、集められ、連続することになる。かかるインターリーブ記録により、AVClip#1を構成するエクステントと、AVClip#2を構成するエクステントとが交互に現れるので、例えばAVClip#1.1/5、AVClip#2.1/5をまとめて読み出させれば、AVClip#1.1/5、AVClip#2.1/5のうち一方を択一的にデコードすることができる。これによりユーザ操作に応じたアングル切り換えが実現されることになる。
【０１００】
マルチアングル区間においてAVClipは、第１実施形態に示した進入点、脱出点にあたる位置を分割境界にして、分割されている。そのため分割部分の先頭位置は、進入点になり、終端位置は、脱出点になる。進入点で始まり、脱出点で終わる分割部分が、互いに交互に配置されているので、あるAVClipからの脱出と、他のAVClipへの進入とが好適に行われることになる。
【０１０１】
図２７（ｂ）は、AVClipを構成する分割部分の内部構成を示す。本図に示すように、エクステントの先頭(若しくは最初のビデオデータの内部)には、AccessUnit Delimiter(AUD)があり、完結したAccess UnitであるIDRピクチャが存在している。進入点にあたるIDRピクチャのPTS及びSPNは、is_angle_change_point“=1”に設定されたEntryPointにより指示される。1つのエクステントの長さは、所定の長さを下回ってはならない。もしこの長さが短ければ、BD-ROMからの読み出し時において、バッファのアンダーフローが生じかねないからである。
【０１０２】
1つのエクステントには、進入点にあたるIDRピクチャが2以上存在してもよい。しかし、1つのエクステント内の最後のIDRピクチャから、エクステントの末尾までの長さは、上述した所定の長さを下回ってはならない。図２８は、エクステントの連続長をどのように決定するかの概念を示す図である。本図のEntryPoint#1〜#5は、is_angle_change_pointがそれぞれ1,0,1,0,1に設定されている。このうちEntry Point#5から、エクステント末尾までの長さは、所定の長さを下回ってはならない。
【０１０３】
図２９は、BD-ROMにおけるエクステントのアロケーションと、これらエクステントに対するEntry Point設定とを対応づけて示す図である。本図におけるハッチング部は、AVClip#2を構成する各エクステントの先頭に位置するIピクチャ(IDRピクチャ、Non-IDRIピクチャ)のAccess Unit Delimiterを示す。AVClip#2だけではなく、AVClip#1、AVClip#3,#4,#5についても、各AVClipを構成するエクステントの先頭に、Iピクチャ(IDRピクチャ、Non-IDRIピクチャ)は存在するが、簡略化のため、これらについての図示は省略している。AVClip#2を構成する複数のエクステント(AVclip#2.1/5、AVclip#2.2/5、AVclip#2.3/5、AVclip#2.4/5、AVclip#2.5/5)が、他のAVClipを構成する複数のエクステントとインターリーブ記録されている場合、AVClip#2に対応するClip情報のEP_mapは、EntryPoint#1,#2,#3,#4,#5という5つのEntry Pointを有する。Entry Point#1,#2,#3,#4,#5は、AVClip#2を構成するAVclip#2.1/5、AVclip#2.2/5、AVclip#2.3/5、AVclip#2.4/5、AVclip#2.5/5のSPNを、PTSと対応づけて示すよう、設定される。
【０１０４】
AVClip#2を構成する5つのエクステントのうち、AVclip#2.2/5、AVclip#2.4/5、AVclip#2.5/5の先頭はNon-IDR Iピクチャであり、AVclip#2.1/5、AVclip#2.3/5の先頭はIDRピクチャである場合、AVclip#2.1/5、AVclip#2.3/5のSPNを示すEntryPoint#1、Entry Point#3のis_angle_change_pointは、=1に設定される。
以上のようにAVClip#2を構成する各エクステントの先頭は、is_angle_change_point“=1”に設定されたEntry Pointにより指示されることになる。これによりエクステントの先頭は、他のAVClipからの進入点として解釈されることになる。エクステントの末尾は、is_angle_change_point“=1”により指定された点の直前にあたるから、他のAVClipへの脱出点として解釈される。図２９は、AVClip#2を構成する各エクステントについてのEntryPoint設定であるが、AVClip#1を構成する各エクステント、AVClip#3,#4,#5を構成する各エクステントの先頭も、AVClip#2同様、is_angle_change_point“=1”に設定されたEntryPointにより指示される。AVClip#1,#2,#3,#4,#5を構成する各エクステントの末尾と、エクステントの先頭との間の境界において、脱出、進入が可能になるので、かかるシームレスなアングル切換が可能になる。
【０１０５】
以上が、本実施形態に係る記録媒体についての改良である。続いて再生装置の改良について説明する。第２実施形態に示した再生装置において、アングル区間の指定を示すのは、PSRセット４６におけるPSR(3)である。PSR(3)は、カレントアングルを示す数値を格納するという役割をもつ。第２実施形態に係る制御部４４は、このPSR(3)の設定値に従い、アングル区間を選択して再生するとの処理を行う。
【０１０６】
図３０は、PSR(3)の設定値が取り得る複数の値と、PlayItem及びClip情報の関係を示す図である。本図の左側は、PSR(3)が取り得る複数の値(1〜4)を示す。
PSR(3)の設定値が1である場合、PlayItem情報において互換部分にあるClip_information_file_nameが参照され、このClip_information_file_nameに記述されているファイル名00001.clpiのClip情報がメモリに読み出されることになる。そしてこのClip情報の中にあるEntryPointが参照され、AVClip(00001.m2ts)の再生がなされる。
【０１０７】
PSR(3)の設定値が2である場合、PlayItem情報においてAngle情報[2]内にあるClip_information_file_nameが参照され、このClip_information_file_nameに記述されているファイル名00002.clpiのClip情報がメモリに読み出されることになる。そしてこのClip情報の中にあるEntryPointが参照され、AVClip(00002.m2ts)の再生がなされる。
PSR(3)の設定値が3である場合、PlayItem情報においてAngle情報[3]内にあるClip_information_file_nameが参照され、このClip_information_file_nameに記述されているファイル名00003.clpiのClip情報がメモリに読み出されることになる。そしてこのClip情報の中にあるEntryPointが参照され、AVClip(00003.m2ts)の再生がなされる。
【０１０８】
PSR(3)の設定値が4である場合、PlayItem情報においてAngle情報[4]内にあるClip_information_file_nameが参照され、このClip_information_file_nameに記述されているファイル名00004.clpiのClip情報がメモリに読み出されることになる。そしてこのClip情報の中にあるEntryPointが参照され、AVClip(00004.m2ts)の再生がなされる。
続いて図２５のPlayItem情報に基づく、制御部４４の処理手順について説明する。図３１は、第２実施形態に係るPlayList情報再生手順を示すフローチャートである。
【０１０９】
本フローチャートが、図２３のフローチャートと異なっているのは、ステップＳ１０３がステップＳ１１１〜ステップＳ１１４に置き換えられている点である。具体的にいうと制御部４４は、カレントPlayList情報のうち、1つのPlayItemを再生する際、PSR(3)の設定値を変数Vに代入して(ステップＳ１１１)、変数Vが2以上であるか否かを判定する(ステップＳ１１２)。PSR(3)の設定値Vが=1であれば(ステップＳ１１２でNo)、PlayItemの互換部分のClip_information_file_nameに記述されているClip情報をメモリ読み出す(ステップＳ１１３)。そして、PlayItemのIn_timeからOut_timeまでのTSパケットを読み出すようBD-ROMドライブ１を制御する(ステップＳ１０４〜ステップＳ１０８)。
【０１１０】
PSR(3)の設定値Vが2以上であれば(ステップＳ１１２でYes)、PlayItem#xにおいて、V個目のアングル情報V.Clip_Information_file_nameで指定されているClip情報をメモリに読み出す(ステップＳ１１４)。そして、PlayItemのIn_timeからOut_timeまでのTSパケットを読み出すようBD-ROMドライブ１を制御する(ステップＳ１０４〜ステップＳ１０８)。
このようにPSR(3)の設定値に応じて、異なるAVClipをアクセスすることにより、アングル区間の選択的な再生が実現される。
【０１１１】
図３２は、マルチアングル区間を対象にしたディスク読出処理の処理手順を示すフローチャートである。本図においてカレントアドレスとは、光ピックアップによる現在の読出先のアドレスである。カレントエクステントとは、カレントアドレスによる読出先になっているエクステントを意味する。カレントアングルとは、マルチアングル区間のうち、現在再生されているアングル映像を意味する。
【０１１２】
ステップＳ５０〜ステップＳ５２は、本フローチャートにおけるメインループである。このループ処理は、カレントアドレスを次のアドレスに更新するという処理(ステップＳ５０)を繰り返すものである。
このステップＳ５０〜ステップＳ５２の繰り返しにより、1つのエクステントの内部において、読出先を示すカレントアドレスは、順次更新されてゆく。
【０１１３】
ステップＳ５１は、アングル切り換えがなされたかどうかの判定である。ここでアングル切り換えは、リモコンにおいて設けられているアングルキーの押下や、数値ボタンの押下によりなされる。もしなされれば、切り換え先となるアングルを示す数値を変数Vに代入して(ステップＳ５３)、準備フラグを“＝1”に設定する(ステップＳ５４)。
ここでアングルキーの押下によりアングル切り換えがなされたなら、PSR(3)の数値に、“1”を加えた値を、変数vに代入する。数値ボタンの押下によりアングル切り換えがなされた場合は、その押下された数値キーに対応する値を変数vに代入する。
【０１１４】
ステップＳ５２は、カレントアドレスが、カレントエクステントの終了アドレスになったか否かの判定である。1つのエクステントを構成するTSパケットが全て読み出され、カレントアドレスがエクステントの終端に達すれば、このステップＳ５２がYesになる。
ステップＳ５２がYesになれば、ステップＳ５５〜ステップＳ５７の処理を実行する。ステップＳ５５は、準備フラグが=1であるか否かの判定であり、もし準備フラグが0であれば、カレントAVClipの次のエクステントをカレントエクステントに設定し(ステップＳ５６)、カレントエクステントの先頭AccessUnit Delimiterのアドレスをカレントアドレスに設定した上で(ステップＳ５７)、ステップＳ５０〜ステップＳ５２からなるループ処理に戻る。これにより準備フラグが=0である場合は、カレントアングルに属する次のエクステントが、読み込まれることになる。
【０１１５】
準備フラグが=1である場合、読出先となるAVClipファイルの切り換え処理を実行する。カレントの読出先アドレスが、カレントエクステントの末尾に到達したことを契機にして、読出先となるAVClipファイルの切り換え処理を実行するからである。
先ず初めに、切換先アングルのエクステントのうち、カレントエクステントの次の時間帯に再生されるものを、エクステントdstに設定する(ステップＳ５８)。そしてエクステントdstの先頭AccessUnit Delimiterを指示するEPtopを特定する(ステップＳ５９)。その後、EPtopのis_angle_change_pointが=1であるか否かを判定する(ステップＳ６０)。この判定は、エクステントdstの先頭が、進入点になりうるかどうかの判定を意味する。もしis_angle_change_pointが=0であるなら、準備フラグを=1に設定したままステップＳ５６に移行する。ステップＳ５６〜ステップＳ５７の処理は、カレントアングルに属する次のエクステントの読み込みである。かかる処理により、カレントアングルの再生は継続することになる。つまり、エクステントdstが、is_angle_change_point“=1”に設定された進入点でないなら、カレントアングルの再生を継続するのである。
【０１１６】
もしis_angle_change_pointが=1であるなら、エクステントdstをカレントエクステントに設定し(ステップＳ６１)、エクステントdstの先頭AccessUnit Delimiterのアドレスをカレントアドレスに設定する(ステップＳ６２)。そして、準備フラグを0にクリアし、切換先アングルを示す変数VをPSR(3)に設定する(ステップＳ６３)。最後にステップＳ１１３に戻る。これにより、変数VにあたるClip_information_file_nameに記述されている、Clip情報が読み出され、そのClip情報に基づく、再生を継続することになる。
【０１１７】
図３３は、アングル映像Aを再生する際のBD-ROMからの読み出しを示す図である。本図では、AVClip#1を構成する5つのエクステント(AVclip#1.1/5、AVclip#1.2/5、AVclip#1.3/5、AVclip#2.4/5、AVclip#1.5/5)が順次読み出されている。
図３４は、アングル映像切り換え操作がなされた際のBD-ROMからの読み出しを示す図である。AVClip#1を構成する5つのエクステントのうち、AVClip#1.2/5が読み出されている途中で、アングル切換操作を意図する操作がユーザによりなされたとする(ステップＳ５１でYes)。これにより準備フラグは1に設定される(ステップＳ５４)。この操作は、AVClip#1にあたるアングル映像からAVClip#2にあたるアングル映像への切り換えを意図するものである。切り換え操作は、AVclip#1.2/5の読み出しの途中でなされていたため、切り換え時点の次の時間帯に再生されるエクステントとして、AVclip#2.3/5が、エクステントdstとして特定される(ステップＳ５８)。このエクステントdstの先頭は、PTS_EP_start＝t3にあたるEntryPoint#3により指示されているので、このAVClip#2のEntry Point#3におけるis_angle_change_pointが参照される(ステップＳ６０)。ここでEntryPoint#3のis_angle_change_pointは=1であり、進入点として解釈することができる。故に、エクステントdstにあたるAVclip#2.3/5を、カレントエクステントに設定して(ステップＳ６１)、このカレントエクステント先頭のAccessUnit Delimiterのアドレスを、カレントアドレスに設定した上で(ステップＳ６２)、AVClip#2を示す“2”を、PSR(3)を設定する(ステップＳ６４)。こうすることにより、以降、AVClip#2を構成するAVclip#2.3/5、AVclip#2.4/5、AVclip#2.5/5が読み出されることになる。
【０１１８】
図３５は、アングル映像切り換え操作がなされた際のBD-ROMからの読み出しを示す図である。AVClip#1を構成する5つのエクステントのうち、AVclip#1.1/5が読み出されている途中で、アングル切換操作を意図する操作がユーザによりなされたとする(ステップＳ５１でYes)。これにより準備フラグは1に設定される(ステップＳ５４)。切り換え操作は、AVclip#1.1/5の読み出しの途中でなされていたため、AVclip#1.2/5の読み出しがなされれば、切り換え時点の次の時間帯に再生されるエクステントとして、AVclip#2.2/5が、エクステントdstとして特定される(ステップＳ５８)。このエクステントdstの先頭は、PTS_EP_start＝t2にあたるEntryPoint#3により指示されているので、このAVClip#2のEntry Point#2におけるis_angle_change_pointが参照される(ステップＳ６０)。ここでEntryPoint#2のis_angle_change_pointは=0であり、進入点として解釈することができない。アングル切り換えを実行することはできず、AVclip#1.1/5の次にあたるAVclip#1.2/5を、カレントエクステントに設定し、カレントエクステントの先頭をカレントアドレスに設定して(ステップＳ５６、ステップＳ５７)、AVclip#1.2/5の読み出しを行う。
【０１１９】
AVclip#1.2/5の読み出し時において、カレントアドレスがAVclip#1.2/5の末尾に達すれば(ステップＳ５２)、準備フラグが1であるか否かの判定がなされる(ステップＳ５５)。ここで準備フラグは1に設定されているので、切り換え時点の次の時間帯に再生されるエクステントとして、AVclip#2.3/5が、エクステントdstとして特定される(ステップＳ５６)。このエクステントdstの先頭は、PTS_EP_start＝t3にあたるEntryPoint#3により指示されているので、このAVClip#2のEntry Point#3におけるis_angle_change_pointが参照される(ステップＳ６０)。ここでEntryPoint#3のis_angle_change_pointは=1であり、進入点として解釈することができる。故に、エクステントdstにあたるAVclip#2.3/5を、カレントエクステントに設定して(ステップＳ６１)、このカレントエクステント先頭のAccessUnit Delimiterのアドレスを、カレントアドレスに設定した上で(ステップＳ６２)、AVClip#2を示す2を、PSR(3)を設定する(ステップＳ６４)。こうすることにより、以降、AVClip#2を構成するAVclip#2.3/5、AVclip#2.4/5、AVclip#2.5/5が読み出されることになる。
【０１２０】
図３５のように、切り換え時点の次の時間帯に再生されるエクステントが進入点になりえない場合は、進入点に到達するまで、カレントアングルを構成するエクステントの再生を継続することになる。
また、AVclip#2.3/5への切り換えが可能となる期間は、PlayList時間軸において、同じ時間帯に位置するAVclip#1のエクステント(AVclip#1.3/5)の再生が開始されるまでである。即ち、同じ時間帯に位置するエクステント(AVclip#1.3/5)の再生が開始されれば、もはやAVclip#1.3/5への再生切り換えを実現することはできない。
【０１２１】
以上のように本実施形態によれば、AVClipを構成する複数エクステントの先頭が、Entry Pointにより指示されており、このEntry Pointのis_angle_change_pointを参照することにより、切換先のアングル映像を構成する複数のエクステントのうち、どれが進入点になりうるかを、即座に知得することができる。そうして知得した進入点からIDRピクチャを供給することができるので、ビデオストリームがMPEG4-AVCにより符号化されている場合であっても、スムースなアングル切り換えを、実現することができる。
【０１２２】
(第３実施形態)
第１実施形態は、IDRピクチャが15分、30分置きに置かれている場合の飛込再生を効率化するための改良を提案した。これに対し第３実施形態は、ビデオストリームを構成する複数のピクチャのうち、どれをIDRピクチャにするかという、IDRピクチャ選択を提案する。つまりエンコード条件を定めるにあたって、どのピクチャをIDRピクチャにするという最適な選択を提案する。MPEG4-AVC形式のビデオストリームは、MPEG4-AVCに多重化され、Clip情報を介してPlayList情報により参照される。本実施形態におけるIDRピクチャの選択は、このPlayList情報の性質を考慮に入れたものである。
【０１２３】
以降本実施形態に係るPlayList情報のデータ構造について説明する。図３６は、第３実施形態に係るPlayList情報の内部構成を示す図である。本図のPlayList情報が、第２実施形態と異なるのは、複数のPLMark(#1〜#n)が追加されている点である。本実施形態におけるIDRピクチャ選択は、こうしたデータ構造をもつPlayList情報のPL再生をより効率化する改良にほかならない。
【０１２４】
図３６におけるPLmark情報(PLmark())は、PL時間軸のうち、任意の区間を、チャプター点として指定する情報である。図３６の引き出し線pm1に示すようにPLmark情報は、『ref_to_PlayItem_Id』と、『mark_time_stamp』とを含む。図３７は、PLmark情報によるチャプター定義を示す図である。本図において第1段目は、AVClip時間軸を示し、第2段目はPL時間軸を示す。図中の矢印pk1,2は、PLmark情報におけるPlayItem指定(ref_to_PlayItem_Id)と、一時点の指定(mark_time_stamp)とを示す。これらの指定によりPL時間軸には、3つのチャプター(Chapter#1,#2,#3)が定義されることになる。以上がPLmarkについての説明である。
【０１２５】
図３８は、PlayList情報のうち、PlayItem#1により指定されている部分のビデオストリームの内容及びEP_map設定を示す図である。ここでPlayItem#1のIn_timeが、時間軸においてt2の時点を示しているとすると、このt2にあたるピクチャをIDRピクチャにエンコードしておく。これにより、PlayList情報による再生時において、PlayItem#1のIn_time以降のピクチャを読み出すことにより、PlayList#1を再生してゆくことができる。
【０１２６】
図３９は、ビデオストリームにおけるピクチャ列のうち、PlayItem#2で指定されるものを示す。PlayItem#1のIn_timeで指定されたピクチャがIDRピクチャであったのに対し、PlayItem#2のIn_timeで指定されているピクチャはIDRピクチャでなくてもよい。つまり、PlayList情報を構成する複数PlayItem情報のうち、先頭以外のPlayItemについては、In_timeにて指定されるピクチャをIDRピクチャにエンコードしておく必要はない。Non-IDRIピクチャに符号化しておけばよい。何故なら、MPEG4-AVCでは長時間参照ピクチャの利用が可能であるので、PlayItem#1のIn_timeからOut_timeまでに存在するピクチャを、長時間参照ピクチャとして利用するよう、PlayItem#2のIn_timeからOut_timeまでに存在するピクチャ、及び、PlayItem#3のIn_timeからOut_timeまでに存在するピクチャをエンコードしておけば、PlayItem#2のIn_time、PlayItem#3のIn_timeに、IDRピクチャを配置しておく必要が無いという理由による。長時間参照ピクチャの利用したエンコードにより、IDRピクチャを置く個数を少なくすることができるので、MPEG4-AVC形式のビデオストリームを高い圧縮率で圧縮することができる。その反面、PlayList情報を構成する複数PlayItem情報のうち、先頭PlayItemにおけるIn_timeは、先行するピクチャが存在しないので、この先頭PlayItemにおけるIn_timeからの再生時には、DecodedPicture Buffer１０には参照ピクチャを得ることができない。従って、先頭PlayItemにおけるIn_timeで指定されるピクチャは、必ずIDRピクチャにエンコードしておかねばならない。
【０１２７】
Playitem情報#2のIn_timeからOut_timeまでに存在するピクチャのうち、PLMark#1で指定されるものについては、IDRピクチャにエンコードしておく。PLMark情報で指定されるピクチャは、チャプターとして解釈される。そしてチャプターサーチでこのPLMark情報で指定されるピクチャから飛込再生される際、DecodedPicture Buffer１０には参照ピクチャを得ることができない。従って、PLMark情報で指定されるIピクチャは必ずIDRピクチャにエンコードしておくのである。
【０１２８】
図４０は、ビデオストリームにおけるピクチャ列のうち、PlayItem#3で指定されるものを示す。図４０においても、図３９同様、PlayItem#3のIn_timeで指定されているピクチャはIDRピクチャでなくてもよい。PlayItem情報のIn_timeからOut_timeまでに存在するピクチャのうち、PLMark#3で指定されるものについても、IDRピクチャにエンコードしておく。こうすることで、チャプターからの再生時には、参照ピクチャは不要になるので、PLMark情報に基づく再生が好適に行われる。
【０１２９】
以上が本実施形態に係る記録媒体の改良である。続いて、本実施形態に係る再生装置の改良について説明する。PlayList情報に基づく再生制御手順は、第１実施形態に示したものと同一であり、PlayList情報のIn_time及びOut_timeをIピクチャアドレスに変換するとの手順を経て、PlayList情報に基づく再生を実行する。
PlayList情報を構成する複数のPlayItem情報のうち、先頭のPlayItem情報のIn_timeにて指定されるピクチャは、IDRピクチャであり、このIDRピクチャは、is_angle_change_point“=1”に設定されたEntryPointにより指示されるので、制御部４４は、In_timeに対応するEntry Pointに示されるSPN_EP_start以降を読み出すことにより、IDRピクチャをビデオデコーダ８に供給する。ビデオデコーダ８へのIDRピクチャ供給により、DecodedPicture Buffer１０のクリアがなされる。
【０１３０】
このように本実施形態の再生装置は、In_timeに最も近い時点を指すEntry Pointを検索しなくても、In_timeに相当する位置をBD-ROMから読み出すだけで、IDRピクチャをビデオデコーダ８に供給することができ、PL再生の高速化を図ることができる。
また、PLMark情報によりチャプターが規定されているので、本実施形態に係る再生装置は、PlayList情報を用いたチャプターサーチ機能及びチャプタースキップ機能を実行する。チャプターサーチ機能とは、PLMark情報に記述されているref_to_PlayItem_Idに対応するPlayItem情報を、複数のPlayItem情報の中から特定して、特定したPlayItem情報が定義されているAVClipにおいて、PLMark情報に記述されたmark_time_stampに示される位置からの飛込再生を行うものであり、この際、制御部４４は、複数のEntryPointのうち、PLMark情報に記述されたmark_time_stampに最も近いPTS_EP_startをもつEntry Pointを特定して、特定したEntryPointのSPN_EP_startに対応するIピクチャアドレスからの再生を行わせる。
【０１３１】
チャプタースキップは、現在の再生位置にあたるチャプターの直前又は直後のチャプターを規定するPLMark情報を特定して、そのPLMark情報に対するチャプターサーチを実行するものである。上述のように、PLMark情報のmark_time_stampにて指定されるピクチャは、IDRピクチャにエンコードされており、is_angle_change_point“=1”に設定されたEntryPointのPTS_EP_startは、このIDRピクチャの再生時刻を示しているので、Entry PointのSPN_EP_startに示される位置以降のピクチャを読み出すことにより、IDRピクチャをビデオデコーダ８に供給することができる。
【０１３２】
以降、フローチャートを参照しながら、チャプターサーチ及びチャプタースキップの処理手順について説明する。図４１は、チャプターサーチの処理手順を示すフローチャートである。
本フローチャートにおいて先ずチャプターメニューにおけるチャプター選択を待ち(ステップＳ１２４)、チャプター選択がなされれば、選択されたチャプターにあたるPLMark情報をカレントPlayListMarkとする(ステップＳ１２５)。ステップＳ１２６では、カレントPlayListMarkのref_to_PlayItem_Idに記述されているPIを、PlayItem#xに設定し、ステップＳ１２７では、PlayItem#xのClip_information_file_nameで指定されるClip情報を読み込む。ステップＳ１２８では、カレントClip情報のEP_mapを用いて、カレントPlayListMarkのmark_time_stampを、Iピクチャアドレスuに変換する。ここでPLMark情報のmark_time_stampで指示されているピクチャは、is_angle_change_point“=1”に設定されたEntryPointにより指示されている。そのため、Iピクチャアドレスuは、IDRピクチャのアドレスを指示することになる。
【０１３３】
一方ステップＳ１２９では、PlayItem#xのOut_timeを,カレントClip情報のEP_mapを用いて,Iピクチャアドレスvに変換する。ステップＳ１３０は、カレントPlayListMarkのmark_time_stampからPlayItem#xのOut_timeまでの出力をPresentationEngine３１に命じる。こうしてIピクチャアドレスu,vを変化して、別の部分の再生を命じた上、図２３のステップＳ１０７へ移行するので、別のAVClipからTSパケットが読み出されることになり、映像内容が切り換えが実現する。以上がチャプターサーチの処理手順である。続いてチャプタースキップの処理手順について説明する。図４２は、チャプタースキップの処理手順を示すフローチャートである。
【０１３４】
ステップＳ１３１はリモコンに対するSkipNextキー、SkipBackキーに対する操作待ちを行う。もし操作がなされれば、ステップＳ１３２を実行する。ステップＳ１３２は、押下されたのがSkipNextキーであるか、SkipBackキーであるかの判定であり、SkipBackキーであるならステップＳ１３３において方向フラグを-1に設定し、SkipNextキーであるならステップＳ１３４において方向フラグを+1に設定する。
【０１３５】
ステップＳ１３５は、カレントPlayListMarkの番号に方向フラグの値を足した番号を、カレントPlayListMarkの番号として設定する。ここでSkipNextキーであるなら方向フラグは+1に設定されているのでカレントPlayListMarkはインクリメントされることになる。SkipBackキーであるなら方向フラグは-1に設定されているので、カレントPlayListMarkはデクリメントされることになる。このようにしてPLMark情報を設定すれば、図４１同様、ステップＳ１２６〜ステップＳ１３０の処理手順を実行することにより、TSパケット読み出しを行う。
【０１３６】
ここでPLMark情報のmark_time_stampにて指定されるピクチャは、IDRピクチャにエンコードされており、is_angle_change_point“=1”に設定されたEntryPointのPTS_EP_startは、このIDRピクチャの再生時刻を示しているので、Entry Pointに示されるSPN位置以降のピクチャを読み出すことにより、IDRピクチャをビデオデコーダ８に供給することができる。
【０１３７】
以上のように本実施形態によれば、PlayList情報を構成する複数PlayItemのうち、先頭のPlayItemのIn_timeにより指示されているピクチャや、PLMark情報によりチャプター位置として指示されているピクチャをIDRピクチャに設定しておくので、PlayItemのIn_timeや、PLMark情報のチャプター位置から、IDRピクチャを検索してゆくという検索の手間を省くことができる。こうした検索の手間の省略により、PlayList情報を用いた再生制御の高速化を図ることができる。
【０１３８】
(備考)
以上の説明は、本発明の全ての実施行為の形態を示している訳ではない。下記(A)(B)(C)(D)・・・・・の変更を施した実施行為の形態によっても、本発明の実施は可能となる。本願の請求項に係る各発明は、以上に記載した複数の実施形態及びそれらの変形形態を拡張した記載、ないし、一般化した記載としている。拡張ないし一般化の程度は、本発明の技術分野の、出願当時の技術水準の特性に基づく。
【０１３９】
(A)全ての実施形態では、本発明に係る記録媒体をBD-ROMとして実施したが、本発明の記録媒体は、記録されるEP_mapに特徴があり、この特徴は、BD-ROMの物理的性質に依存するものではない。EP_mapを記録しうる記録媒体なら、どのような記録媒体であってもよい。例えば、DVD-ROM,DVD-RAM,DVD-RW,DVD-R,DVD+RW,DVD+R,CD-R,CD-RW等の光ディスク、PD,MO等の光磁気ディスクであってもよい。また、コンパクトフラッシュ(登録商標)カード、スマートメディア、メモリスティック、マルチメディアカード、PCM-CIAカード等の半導体メモリカードであってもよい。フレキシブルディスク、SuperDisk,Zip,Clik!等の磁気記録ディスク(i)、ORB,Jaz,SparQ,SyJet,EZFley,マイクロドライブ等のリムーバブルハードディスクドライブ(ii)であってもよい。更に、機器内蔵型のハードディスクであってもよい。
【０１４０】
(B)全ての実施形態における再生装置は、BD-ROMに記録されたAVClipをデコードした上でTVに出力していたが、再生装置をBD-ROMドライブのみとし、これ以外の構成要素をTVに具備させてもよい。この場合、再生装置と、TVとをIEEE1394で接続されたホームネットワークに組み入れることができる。また、実施形態における再生装置は、テレビと接続して利用されるタイプであったが、ディスプレィと一体型となった再生装置であってもよい。更に、各実施形態の再生装置において、処理の本質的部分をなすシステムLSI(集積回路)のみを、実施としてもよい。
【０１４１】
(C)各フローチャートに示したプログラムによる情報処理は、ハードウェア資源を用いて具体的に実現されていることから、上記フローチャートに処理手順を示したプログラムは、単体で発明として成立する。全ての実施形態は、再生装置に組み込まれた態様で、本発明に係るプログラムの実施行為についての実施形態を示したが、再生装置から分離して、各実施形態に示したプログラム単体を実施してもよい。プログラム単体の実施行為には、これらのプログラムを生産する行為(1)や、有償・無償によりプログラムを譲渡する行為(2)、貸与する行為(3)、輸入する行為(4)、双方向の電子通信回線を介して公衆に提供する行為(5)、店頭、カタログ勧誘、パンフレット配布により、プログラムの譲渡や貸渡を、一般ユーザに申し出る行為(6)がある。
【０１４２】
(D)各実施形態におけるデジタルストリームは、BD-ROM規格のAVClipであったが、DVD-Video規格、DVD-Video Recording規格のVOB(VideoObject)であってもよい。VOBは、ビデオストリーム、オーディオストリームを多重化することにより得られたISO/IEC13818-1規格準拠のプログラムストリームである。またAVClipにおけるビデオストリームは、MPEG4やWMV方式であってもよい。更にオーディオストリームは、Linear-PCM方式、Dolby-AC3方式、MP3方式、MPEG-AAC方式、dts方式であってもよい。
【０１４３】
(E)第３実施形態では、PlayList情報の全てのPlayItem情報のIn_timeで指定されるピクチャをIDRピクチャにエンコードしてもよい。
【産業上の利用可能性】
【０１４４】
本発明に係る記録媒体及び再生装置は、ホームシアターシステムでの利用のように、個人的な用途で利用されることがありうる。しかし本発明は、上記実施形態に内部構成が開示されており、この内部構成に基づき量産することが明らかであるので、本発明に係る記録媒体及び再生装置は、工業製品の生産分野において生産し、又は、使用することができる。このことから本発明に係る記録媒体及び再生装置は、産業上の利用可能性を有する。
【図面の簡単な説明】
【０１４５】
【図１】本発明に係る記録媒体の、使用行為についての形態を示す図である。
【図２】BD-ROMの内部構成を示す図である。
【図３】拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。
【図４】AVClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す図である。
【図５】（ａ）表示順序に配置される複数のピクチャを示す図である。（ｂ）（ａ）に示したビデオストリームのGOP構造を示す図である。
【図６】（ａ）表示順序及び符号化順序におけるClosed-GOPの内部構成を示す図である。（ｂ）Open-GOPの内部構成を示す図である。
【図７】（ａ）IDRピクチャの内部構成を示す図である。（ｂ）Non-IDR Iピクチャの内部構成を示す図である。（ｃ）Non-IDR Iピクチャにおける依存関係を示す図である。
【図８】Non-IDR Iピクチャがもちうる依存関係を示す図である。
【図９】IDRピクチャ、Non-IDR IピクチャがTSパケットに変換される過程を示す図である。
【図１０】Clip情報の内部構成を示す図である。
【図１１】（ａ）ビデオストリームについてのStream_Coding_Infoを示す。（ｂ）オーディオストリームについてのStream_Coding_Infoを示す。
【図１２】AVClipへの進入、AVClipからの脱出についての概念を示す図である。
【図１３】図５のビデオストリームに対するEP_map設定を示す図である。
【図１４】図１３におけるEntry Point#1〜Entry Point#5のPTS_EP_start、SPN_EP_startを、EP_Low、EP_Highの組みで表現した図である。
【図１５】飛込再生時における読出範囲の拡大を示す図である。
【図１６】PlayList情報の構成を示す図である。
【図１７】AVClipと、PlayList情報との関係を示す図である。
【図１８】本発明に係る再生装置の内部構成を示す図である。
【図１９】Decoded Picture Buffer１０の内部構成を示す図である。
【図２０】ビデオデコーダ８によりNon-IDR Iピクチャが復号される過程を示す図である。
【図２１】IDRピクチャをデコードする際の、Decoded Picture Buffer１０の格納内容を示す図である。
【図２２】In_timeをIピクチャアドレスに変換する変換手順を示すフローチャートである。
【図２３】制御部４４によるPL再生手順を示すフローチャートである。
【図２４】マルチアングル区間実現のための応用層レイアウトを示す図である。
【図２５】PlayList情報のデータ構造を示す図である。
【図２６】（ａ）PlayItem情報の4つのClip_Information_file_nameによりなされた一括指定を示す図である。
【０１４６】
（ｂ）各AVClipを構成するエクステントを、PlayList時間軸上に記述した図である。
【図２７】（ａ）マルチアングル区間を構成する4つのAVClipがBD-ROM上でどのように配置されているかという、アロケーションイメージを示す図である。（ｂ）AVClipを構成する分割部分の内部構成を示す図である。
【図２８】エクステントの連続長をどのように決定するかの概念を示す図である。
【図２９】BD-ROMにおけるエクステントのアロケーションと、これらエクステントに対するEntry Point設定とを対応づけて示す図である。
【図３０】PSR(3)の設定値が取り得る複数の値と、PlayItem及びClip情報の関係を示す図である。
【図３１】第２実施形態に係るPlayList情報再生手順を示すフローチャートである。
【図３２】マルチアングル区間を対象にしたディスク読出処理の処理手順を示すフローチャートである。
【図３３】アングル映像Aを再生する際のBD-ROMからの読み出しを示す図である。
【図３４】アングル映像切り換え操作がなされた際のBD-ROMからの読み出しを示す図である。
【図３５】アングル映像切り換え操作がなされた際のBD-ROMからの読み出しを示す図である。
【図３６】PLmark情報の内部構成を示す図である。
【図３７】PLmarkによるチャプター定義を示す図である。
【図３８】PlayList情報のうち、PlayItem#1により指定されている部分のビデオストリームの内容及びEP_map設定を示す図である。
【図３９】ビデオストリームにおけるピクチャ列のうち、PlayItem#2で指定されるものを示す図である。
【図４０】ビデオストリームにおけるピクチャ列のうち、PlayItem#3で指定されるものを示す図である。
【図４１】チャプターサーチの処理手順を示すフローチャートである。
【図４２】チャプタースキップの処理手順を示すフローチャートである。
【符号の説明】
【０１４７】
１    BDドライブ
２    Arrival time Clock Counter
３    Source de-packetetizer
４    PID Filter４
５    Transport Buffer５
６    Multiplexed Buffer６
７    Coded Picture Buffer７
８    ビデオデコーダ８
１０    Decoded Picture Buffer１０
１１    ビデオプレーン１１
１２    Transport Buffer１２
１３    Coded Data Buffer１３
１４    Stream Graphics Processor１４
１５    Object Buffer１５
１５    Composition Buffer１６
１７    Composition Controller１７
１８    Presentation Graphicsプレーン１８
１９    CLUT部１９
２０    Transport Buffer２０
２１    Coded Data Buffer２１
２２    Stream Graphics Processor２２
２３    Object Buffer２３
２４    Composition Buffer２４
２５    Composition Controller２５
２６    Intaractive Graphicsプレーン２６
２７    CLUT部２７
２８    合成部２８
２９    合成部２９
３０    スイッチ３０
３１    Network Device３１
３２    Local Storage３２
３３    Arrival Time Clock Counter３３
３４    Source De-Packetizer３４
３５    PIDフィルタ
３６    スイッチ
３７    Transport Buffer
３８    Elementary Buffer
３９    オーディオデコーダ
４０    Transport Buffer
４１    バッファ
４２    テキスト字幕デコーダ
４３    シナリオメモリ
４４    制御部
４６    PSRセット
１００    BD-ROM
２００    再生装置
３００    リモコン
４００    テレビ
【図１】
2008295048.tif 000003
【図２】
2008295048.tif 000004
【図３】
2008295048.tif 000005
【図４】
2008295048.tif 000006
【図５】
2008295048.tif 000007
【図６】
2008295048.tif 000008
【図７】
2008295048.tif 000009
【図８】
2008295048.tif 000010
【図９】
2008295048.tif 000011
【図１０】
2008295048.tif 000012
【図１１】
2008295048.tif 000013
【図１２】
2008295048.tif 000014
【図１３】
2008295048.tif 000015
【図１４】
2008295048.tif 000016
【図１５】
2008295048.tif 000017
【図１６】
2008295048.tif 000018
【図１７】
2008295048.tif 000019
【図１８】
2008295048.tif 000020
【図１９】
2008295048.tif 000021
【図２０】
2008295048.tif 000022
【図２１】
2008295048.tif 000023
【図２２】
2008295048.tif 000024
【図２３】
2008295048.tif 000025
【図２４】
2008295048.tif 000026
【図２５】
2008295048.tif 000027
【図２６】
2008295048.tif 000028
【図２７】
2008295048.tif 000029
【図２８】
2008295048.tif 000030
【図２９】
2008295048.tif 000031
【図３０】
2008295048.tif 000032
【図３１】
2008295048.tif 000033
【図３２】
2008295048.tif 000034
【図３３】
2008295048.tif 000035
【図３４】
2008295048.tif 000036
【図３５】
2008295048.tif 000037
【図３６】
2008295048.tif 000038
【図３７】
2008295048.tif 000039
【図３８】
2008295048.tif 000040
【図３９】
2008295048.tif 000041
【図４０】
2008295048.tif 000042
【図４１】
2008295048.tif 000043
【図４２】
2008295048.tif 000044