説明

再生装置、プログラム、再生方法、記録方法。

【課題】第1動画像と第2動画像とをピクチャインピクチャ再生する。
【解決手段】PL情報はMainPath情報、MainPath情報はMainClipに主再生区間を定義し、SubPath情報はSubClipに主再生区間と同期すべき従再生区間を定義し、BD-ROMにはSubClipがEP_mapと対応づけて記録され、EP_mapはSubClip時間軸でのエントリ時刻をSubClipでのエントリ位置と対応づけて示す。さらにSubPath情報は主再生区間の時間軸における同期時点を示す同期情報を含み、時間情報は、時間情報として不定値が設定されると主再生区間の再生映像上のボタン画像がロック操作された時点を同期時点とすることを示し、PL情報はロック操作されたボタン画像部分にSubClip再生映像をはめ込むことで、同期時点でMainClip再生映像とSubClip再生映像とのピクチャインピクチャを実現する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、同期型アプリケーション技術の技術分野に属する発明である。
【背景技術】
【0002】
同期型アプリケーション技術とは、別々の記録媒体に記録されている複数のデジタルストリームを再生して、これらの同期を規定することにより、あたかも、1つの映画作品が再生されているように、ユーザにみせかける技術である。
同期型アプリケーションを構成するデジタルストリームには、メインストリーム、サブストリームといった類型がある。ここでメインストリームとは、高画質な動画像を含むデジタルストリームをいう。一方サブストリームは、高画質な動画像を含まないデジタルストリームいう。メインストリームは、BD-ROMといった大容量光ディスク上に記録してユーザに供給され、サブストリームはインターネット等を通じてユーザに供給される。
【0003】
映画作品の構成要素となるデジタルストリームを、別々の供給媒体を用いて、ユーザに供給することができるので、映画作品のバリエーション制作の自由度が増し、1つの映画作品から、様々な再生のバリエーションを、産み出すことができる。
尚、同期型アプリケーション技術については、以下の特許文献に記載された先行技術がある。
【特許文献1】特開2002-247526号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで民生用の家電機器が、上述した同期型アプリケーションを再生の対象にする場合、この同期型アプリケーションに対する特殊再生を、どのように実現するかが、問題になる。特殊再生とは、早送り・巻戻し・チャプタサーチ・タイムサーチといった機能であり、デジタルストリームに対する、“ランダムアクセス”を前提にして実現される。ランダムアクセスとは、デジタルストリームがもつ時間軸上の任意の一時点を、デジタルストリーム上の記録位置に変換して、その記録位置にアクセスする技術である。上述したような同期型アプリケーションに対し、特殊再生を実行しようとする場合、メインストリームにおけるランダムアクセスを実行するだけでは足りず、サブストリームに対しても、ランダムアクセスを実行する必要がある。
【0005】
サブストリームは、音声やグラフィクス、標準画質の動画等の様々なデータ客体が、再生の対象になりうる。一般に、高画質動画像を含むメインストリームは、GOP(Group Of Picture)のように単独デコード可能な単位をもっているが、サブストリームは、このGOPに相当する単位をもっているとは限らない。また、もっていたとしても、表示レートやサンプリング周波数、ビットレートが全く異なることが大多数である。
【0006】
表示レートやサンプリング周波数、ビットレートや、独立再生可能な単位がそれぞれのサブストリーム毎に違うので、ランダムアクセスを実行するにあたって、メインストリーム並みに、サブストリーム側のランダムアクセスを高速に行える保証はどこにもない。そうすると、サブストリーム側の再生をなかなか開始することができず、サブストリーム側の再生開始が、際立って遅れることも有り得る。
【0007】
同期型アプリケーションでは、メインストリームとサブストリームとの同期を意図しているので、サブストリームの再生開始が遅れれば、これにつられて、メインストリーム側の再生開始を遅らさざるを得ず、その結果、ユーザが再生を命じてから、再生を開始するにあたってのレスポンスが極端に遅れる。
本発明の目的は、サブストリームのランダムアクセスを、メインストリームのランダムアクセスと同時に実行する場合のレスポンス低下を防止することができる再生装置を提供することである。
【課題を解決するための手段】
【0008】
上記目的を達成するため、本発明に係る再生装置は、主たる再生区間が定義されたメインストリームと、従たる再生区間が定義されたサブストリームとに対して、特殊再生を実行する再生装置であって、主たる再生区間及び従たる再生区間は、プレイリスト情報に定義されており、プレイリスト情報は同期情報を含み、同期情報は、主たる再生区間の時間軸のうち、従たる再生区間を同期させるべき、同期時点を示す時間情報を含み、前記時間情報は、不定値に設定されることで、メインストリームにおける主たる再生区間の再生時に、メインストリームの再生映像上に現れた何れかのボタン画像を選択するロック操作をユーザが行った時点を同期時点とすることを示し、サブストリームにはエントリーマップが対応づけられており、特殊再生を開始すべき再生時点は、主たる再生区間の時間軸において定義されており、主たる再生区間の時間軸における再生時点を、メインストリームのアドレスに変換する第1変換手段と、プレイリスト情報における同期情報を用いて、主たる再生区間の時間軸における再生時点を、従たる再生区間の時間軸における再生時点に変換し、サブストリームに対応づけられたエントリーマップを用いて、変換後の再生時点を、サブストリームのアドレスに変換する第2変換手段と、第1変換手段、第2変換手段により変換されたアドレスから、メインストリーム及びサブストリームを読み出す読出手段と、読み出されたメインストリーム及びサブストリームを再生する再生手段とを備え、前記再生装置は、メインストリームにおける主たる再生区間で指定された部分のみが再生されている状態において、同期区間の開始点を定めるロック操作を受け付けて、かかる開始点を示す時間情報を用いて、同期情報における不定値を上書きする設定手段を備え、前記メインストリームは、第1の動画像を含むデジタルストリームであり、前記サブストリームは、第2の動画像を含むデジタルストリームであり、前記再生手段は、メインストリームをデコードして第1の動画像を得る第1デコーダと、サブストリームをデコードして第2の動画像を得る第2デコーダとを備え、前記再生装置は、さらに、第1デコーダにより得られた再生映像における前記ロック操作で選択されたボタン画像のある部分に、第2デコーダにより得られた再生映像を合成することで、第1の動画像及び第2の動画像を同一画面に表示する合成手段とを備えることを特徴とする再生装置である。
【発明の効果】
【0009】
サブストリームたるデジタルストリームに、エントリーマップを設けているので、このエントリーマップを用いることにより、サブストリームの任意の位置への高速ランダムアクセスを実行することができる。
高速ランダムアクセスがなされることを前提にして、メインストリームとサブストリームとの同期が、プレイリスト情報に規定されているので、ストリーム同期を前提にしたアプリケーションにおいて、再生装置は、ユーザ操作に即応した頭出し再生や倍速再生を実現することができる。
【0010】
これにより、メインストリーム、サブストリームを組み合わせたアプリケーションを、多く世に送り出すことができる。
GOPが存在しないようなサブストリームであっても、高速なランダムアクセスが可能になるので、サブストリームと、メインストリームとを組み合わせた映画作品に対し、ランダムアクセスを実行する場合でも、時間軸上の任意の箇所からの再生を高速に行うことができる。メインストリーム+サブストリームからなる映画作品の扱いが、メインストリームからなる映画作品の扱いと同じになるので、メインストリームにサブストリームを組み合わせた、多彩な再生が可能になる。
【0011】
さらに、同期を開始するタイミングは、不定値で指定される。ここで、不定値とは、同期を開始するタイミングが定まっておらず、ユーザによる操作により動的に決定されることを示す値である。これは、例えば、再生区間上の時点を示し得ない値を設定することでなされる。
ピクチャインピクチャを動的に開始できることにより、例えば、第1の動画像において複数のコンテンツから1つを選択させるメニュー画面を表示し、それぞれのメニューにコンテンツのサムネールを用い、メニューにカーソルが合ったときに、対応するコンテンツを第2の動画像として同期再生するというプレビュー機能を実現することができる。
【発明を実施するための最良の形態】
【0012】
(第1実施形態)
以降、本発明に係る記録媒体の実施形態について説明する。先ず始めに、本発明に係る記録媒体の実施行為のうち、使用行為についての形態を説明する。図1は、本発明に係る記録媒体の、使用行為についての形態を示す図である。図1において、本発明に係る記録媒体は、ローカルストレージ200である。このローカルストレージ200は、再生装置300に内蔵されているハードディスクである。このローカルストレージ200は、BD-ROM100と共に、再生装置300、リモコン400、テレビ500により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。
【0013】
ローカルストレージ200は、再生装置に組み込まれ、映画配給者のサーバから配信されたコンテンツの受け皿として、利用されるハードディスクである。
再生装置300は、ネット対応型のデジタル家電機器であり、BD-ROM100を再生する機能をもつ。また、映画配給者のサーバから、ネットを通じてダウンロードしたコンテンツを、BD-ROM100に記録されたコンテンツと組み合わせて、BD-ROM100の拡張を図る能力をもつ。
【0014】
リモコン400は、再生すべきチャプターの指定や、再生を開始すべき時間の指定を受け付ける。
テレビ500は、再生装置300の再生映像を表示する。
BD-ROM100の記録内容に、ローカルストレージ200の記録内容を組み合わせて、BD-ROM100に記録されていないデータを、恰も、記録されているように扱う技術を“バーチャルファイルシステム”という。
【0015】
本発明に係る記録媒体は、このようなBD-ROM100との組み合わせを前提にして構成されている。以上が、本発明に係る記録媒体の使用行為の形態である。
続いて、BD-ROM100の内部構成と、ローカルストレージ200の内部構成とを順に説明する。

<BD-ROMの概要>
図2は、BD-ROMの内部構成を示す図である。本図の第4段目にBD-ROMを示し、第3段目にBD-ROM上のトラックを示す。本図のトラックは、BD-ROMの内周から外周にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてBD-ROMの応用層フォーマット(アプリケーションフォーマット)を表現すると、図中の第1段目のようになる。この第1段目においてBD-ROMには、Rootディレクトリの下に、BDMVディレクトリがある。
【0016】
BDMVディレクトリの配下には、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリと呼ばれる3つのサブディレクトリが存在する。
STREAMディレクトリには、いわばデジタルストリーム本体となるファイル群を格納しているディレクトリであり、拡張子m2tsが付与されたファイル(00001.m2ts)が存在する。
PLAYLISTディレクトリは、拡張子mplsが付与されたファイル(00001.mpls)が存在する。
【0017】
CLIPINFディレクトリには、拡張子clpiが付与されたファイル(00001.clpi)が存在する。
以降BD-ROMの構成要素にあたる、AVClip、Clip情報、PlayList情報について説明する。

<BD-ROMの構成その1.AVClip>
先ず初めに、拡張子.m2tsが付与されたファイルについて説明する。図3は、拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。拡張子.m2tsが付与されたファイル(00001.m2ts,00002.m2ts,00003.m2ts・・・・・)は、AVClipを格納している。AVClipは(第4段目)、複数のビデオフレーム(ピクチャpj1,2,3)からなるビデオストリーム、複数のオーディオフレームからなるオーディオストリームを(第1段目)、PESパケット列に変換し(第2段目)、更にTSパケットに変換して(第3段目)、これらを多重化することで構成される。図3のように、動画を有しているAVClipを特に、“MainClip”とよび、動画を有していないAVClipと区別する。
【0018】
続いて、MPEG2-TS形式のデジタルストリームであるMainClipが、BD-ROMにどのように書き込まれるかを説明する。図4は、MainClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す。本図の第1段目にMainClipを構成するTSパケットを示す。
MainClipを構成する188バイトのTSパケットは、第2段目に示すように4バイトのTS_extra_header(図中の「EX」)が付されて、192バイト長になる。
【0019】
第3段目、第4段目は、BD-ROMの物理単位と、TSパケットとの対応関係を示す。第4段目に示すように、BD-ROM上には複数セクタが形成されている。extra_header付きTSパケット(以下EX付きTSパケットと略す)は、32個毎にグループ化されて、3つのセクタに書き込まれる。32個のEX付きTSパケットからなるグループは、6144バイト(=32×192)であり、これは3個のセクタサイズ6144バイト(=2048×3)と一致する。3個のセクタに収められた32個のEX付きTSパケットを“Aligned Unit”といい、BD-ROMへの書き込みにあたっては、Aligned Unit単位で暗号化がなされる。
【0020】
第5段目においてセクタは、32個単位で誤り訂正符号が付され、ECCブロックを構成する。再生装置はAligned Unitの単位でBD-ROMをアクセスする限り、32個の完結したEX付きTSパケットを得ることができる。以上がBD-ROMに対するMainClipの書き込みのプロセスである。

<AVClipの説明その1.ビデオストリーム>
ビデオストリームの内部構成について説明する。
【0021】
図5は、映画に用いられるビデオストリームの内部構成を示す図である。図5におけるビデオストリームは、符号化順序に配置された複数のピクチャからなる。
図中のI,P,Bは、それぞれIピクチャ、Bピクチャ、Pピクチャを意味する。Iピクチャには、IDRピクチャと、Non-IDR Iピクチャとの2種類がある。Non-IDR Iピクチャ、Pピクチャ、Bピクチャは、他のピクチャとのフレーム相関性に基づき圧縮符号化されている。Bピクチャとは、Bidirectionallypredictive(B)形式のスライスデータからなるピクチャをいい、Pピクチャとは、Predictive(P)形式のスライスデータからなるピクチャをいう。Bピクチャには、refrenceBピクチャと、nonrefrenceBピクチャとがある。
【0022】
図5では、Non-IDR Iピクチャを“I”と記述しており、IDRピクチャを“IDR”と記述している。以降、同様の表記を用いる。以上が映画に用いられる、ビデオストリームである。
続いてIDRピクチャ及びNon-IDR Iピクチャの内部構成について説明する。図6(a)は、IDRピクチャの内部構成を示す図である。本図に示すようにIDRピクチャは、複数のIntra形式のスライスデータからなる。図6(b)は、Non-IDR Iピクチャの内部構成を示す。IDRピクチャがIntra形式のスライスデータのみから構成されているのに対し、Non-IDR IピクチャはIntra形式のスライスデータ、P形式のスライスデータ、B形式のスライスデータから構成されている。図6(c)は、Non-IDR Iピクチャにおける依存関係を示す。Non-IDR Iピクチャは、B,Pスライスデータから構成されうるので、他のピクチャとの依存関係をもちうる。

<AVClipの説明その2.BD-ROMへの記録>
続いてIDRピクチャ、Non-IDR Iピクチャが、どのようにしてTSパケットに変換され、BD-ROMに記録されるかについて説明する。図7は、IDRピクチャ、Non-IDR IピクチャがTSパケットに変換される過程を示す図である。図中の第1段目は、IDRピクチャ、Non-IDR Iピクチャを示す。第2段目は、MPEG4-AVCに規定されたAccess Unitを示す。IDRピクチャ、Non-IDR Iピクチャを構成する複数のスライスデータは、シーケンシャルに配置され、AUD(Access Unit Delimiter),SPS(Sequence Parameter Set),PPS(Picture Parameter Set),SEI(Supplemental Enhanced info)が付加されることにより、Access Unitに変換されることになる。
【0023】
AUD,SPS,PPS,SEI、Access Unitのそれぞれは、MPEG4-AVCに規定された情報であり、ITU-T RecommendationH.264等の様々な文献に記載されているので、詳細については、これらの文献を参照されたい。ここで重要であるのは、AUD,SPS,PPS,SEIが再生装置に供給されることがランダムアクセスの必須条件になるという点である。
第3段目はNAL unitを示す。第2段目におけるAUD,SPS,PPS,SEIに対し、ヘッダを付加することにより、AUD,SPS,PPS,SEI、スライスデータは、それぞれNAL
unitに変換されることになる。NAL unitとは、MPEG4-AVCのネットワーク抽象レイヤ(Network Abstraction Layer)において、規定された単位であり、ITU-T
Recommendation H.264等の様々な文献に記載されているので、詳細についてはこれらの文献を参照されたい。ここで重要であるのは、AUD,SPS,PPS,SEI,スライスデータは、それぞれ独立したNALunitに変換されているので、AUD,SPS,PPS,SEI,スライスデータのそれぞれは、ネットワーク抽象レイヤにおいて、それぞれ独立に取り扱われるという点である。
【0024】
1つのピクチャを変換することで得られた複数のNAL unitは、第4段目に示すようにPESパケットに変換される。そしてTSパケットに変換されてBD-ROM上に記録される。
1つのGOPを再生するには、そのGOPの先頭に位置するIDRピクチャ、Non-IDR Iピクチャを構成するNAL unitのうち、Access Unit Delimiterを含むものをデコーダに投入せねばならない。つまりAccess Unit Delimiterを含むNAL unitが、IDRピクチャ、Non-IDR Iピクチャをデコードするための1つの指標になる。このAccess Unit Delimiterを含むNAL unitを、本実施形態では点(Point)として扱う。そして再生装置は、ビデオストリームを再生するにあたって、Access Unit Delimiterを含むNAL unitを、Non-IDR Iピクチャ、IDRピクチャを再生するためのエントリー位置として解釈する。従って、MainClipにおいて、ランダムアクセスを実行するには、IDRピクチャ,Non-IDR IピクチャのAccess Unit Delimiterが何処に存在するかを、把握することが非常に重要になる。以上が映画に用いられる、MPEG4-AVC形式のビデオストリームの構成である。

<BD-ROMの構成その2.Clip情報>
続いて拡張子.clpiが付与されたファイルについて説明する。拡張子.clpiが付与されたファイル(00001.clpi,00002.clpi,00003.clpi・・・・・)は、Clip情報を格納している。Clip情報は、個々のMainClipについての管理情報である。図8は、Clip情報の内部構成を示す図である。本図の左側に示すようにClip情報は、

i)AVClipファイルの属性情報を格納した『ClipInfo()』、
ii)ATC Sequence,STC Sequenceに関する情報を格納した『Sequence Info()』
iii)Program Sequenceに関する情報を格納した『Program Info()』
iv)『Characteristic Point Info(CPI())』からなる。

<Clip情報の説明その1.Clip info>
先ずClip infoについて説明する。図中の引き出し線ct1はClip info()の構成をクローズアップしている。この引き出し線に示すように、Clip info()は、デジタルストリームの類型を示す“clip_stream_type”,本MainClipを利用するアプリケーションの類型を示す“application_type”、MainClipの記録レートを示す“TS_recording_rate”を含む。application_typeは、対応するMainClipが、映画アプリケーションを構成する旨を示すよう、“1”に設定されている。以上がClip infoについての説明である。

続いてClip infoについて説明する。
【0025】
Clip infoは、Ne個のEP_map_for_one_stream[0]〜[Ne-1]を含む。そして、個々のEP_map_for_one_streamについての属性情報を、Ne個有している。この属性情報は、対応するエレメンタリストリームのstream_PID[0]〜[Ne-1]と、対応するEP_map_for_one_streamの類型を示すEP_stream_type[0]〜[Ne-1]と、EP_map_for_one_streamにおけるEP_highの個数を示すnumber_of_High_entries[0]〜[Ne-1]と、EP_map_for_one_streamにおけるEP_lowの個数を示すnumber_of_Low_entries[0]〜[Ne-1]と、EP_map_for_one_streamのカレントアドレスを示すEP_map_for_one_stream_PID_start_address[0]〜[Ne-1]とからなる。

<Clip情報の説明その2.EP_map>
以下、具体例を通じて、EP_mapについて説明する。図9は、映画のビデオストリーム(application_type=1)に対するEP_map設定を示す図である。第1段目は、表示順序に配置された複数のピクチャを示し、第2段目は、そのピクチャにおける時間軸を示す。第4段目は、BD-ROM上のTSパケット列を示し、第3段目は、EP_mapの設定を示す。
【0026】
第2段目の時間軸において、時点t1〜t7に、Access Unit(Non-IDR Iピクチャ、IDRピクチャ)が存在するものとする。そしてこれらのt1〜t7の時間間隔が、1秒程度であるとすると、映画に用いられるビデオストリームにおけるEP_mapは、t1〜t7をエントリー時刻(PTS_EP_start)として設定し、これに対応づけてエントリー位置(SPN_EP_start)を示すよう、設定される。
【0027】
図10は、図9におけるEntry Point#1〜Entry Point#7のPTS_EP_start、SPN_EP_startを、EP_Low、EP_Highの組みで表現したものである。本図の左側にEP_Lowを示し、右側にEP_Highを示す。
図10左側のEP_Low(0)〜(Nf-1)のうち、EP_Low(i)〜(i+3)のPTS_EP_Lowは、t1〜t4の下位ビットを示す。EP_Low(0)〜(Nf-1)のうち、EP_Low(i)〜(i+3)のSPN_EP_Lowは、n1〜n4の下位ビットを示す。
【0028】
図10右側は、EP_mapにおけるEP_High(0)〜(Nc-1)を示す。ここでt1〜t4は共通の上位ビットをもっており、またn1〜n4も共通の上位ビットをもっているとすると、この共通の上位ビットが、PTS_EP_High,SPN_EP_Highに記述される。そしてEP_Highに対応するref_to_EP_LOW_idは、t1〜t4、n1〜n4にあたるEP_Lowのうち、先頭のもの(EP_Low(i))を示すように設定しておく。こうすることにより、PTS_EP_start、SPN_EP_startの共通の上位ビットは、EP_Highにより表現されることになる。以上が、BD-ROM上に存在する、MainClip及びClip情報についての説明である。尚00001.mplsはPlayList情報を格納したファイルだが、同種のものがローカルストレージ200にも存在するので、このローカルストレージ200に存在するPlayList情報について説明を行い、BD-ROM上の00001.mplsについては、説明を省略する。
【0029】
BD-ROMは大容量であるから、図1に示したホームシアターシステムに、動画を供給するという役割を担っていることがわかる。以上がBD-ROMについての説明である。
<ローカルストレージ200>
続いて、本発明に係る記録媒体である、ローカルストレージ200について説明する。図11は、ローカルストレージ200の内部構成を示す図である。本図に示すように、本発明に係る記録媒体は、応用層に対する改良により、生産することができる。
【0030】
本図の第4段目にローカルストレージ200を示し、第3段目にローカルストレージ200上のトラックを示す。本図のトラックは、ローカルストレージ200の内周から外周にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてローカルストレージ200の応用層フォーマット(アプリケーションフォーマット)を表現すると、図中の第1段目のようになる。
【0031】
本図のディレクトリ構造においてROOTディレクトリの配下には、「organization#1」というサブディレクトリがあり、その配下に、「disc#1」というサブディレクトリがある。ディレクトリ「organization#1」とは、映画作品の特定のプロバイダに割り当てられたディレクトリである。「disc#1」は、そのプロバイダが提供したBD-ROMのそれぞれに割り当てられたディレクトリである。
【0032】
特定のプロバイダに対応するディレクトリに、各BD-ROMに対応するディレクトリを設けることにより、各BD-ROMについてのダウンロードデータが個別に格納される。このサブディレクトリの配下に、BD-ROMに格納されていたのと同様、PlayList情報(00002.mpls)、Clip情報(00002.clpi,00003.clpi,00004.clpi,00005.clpi)、AVClip(00002.m2ts,00003.m2ts,00004.m2ts,00005.m2ts)が格納されている。
【0033】
続いて、ローカルストレージ200の構成要素となる、PlayList情報、Clip情報、AVClipについての説明する。
<ローカルストレージ200の構成その1.AVClip>
ローカルストレージ200上のAVClip(00002.m2ts,00003.m2ts,00004.m2ts,00005.m2ts)は、SubClipを構成する。SubClipとは、1つ以上のOut-of-MUXストリームから構成されるAVClipである。Out-of-MUXストリームとは、ビデオストリームを含むAVClipの再生中に再生されるが、ビデオストリームとは多重化されていないエレメンタリストリームをいう。またビデオストリームの再生中にOut-of-MUXストリームを読み出し、デコーダに供して再生させることを、“Out-of-MUXストリームフレームワーク”という。
【0034】
かかるOut-of-MUXストリームには、『Primaryオーディオストリーム』、『Secondaryオーディオストリーム』、『Presentation Graphics(PG)ストリーム』、『Interactive Graphics(IG)ストリーム』といった種別がある。
本実施形態では、図11に示した4つのAVClipのうち00002.m2tsはPrimaryオーディオストリームを格納しており、00003.m2tsはSecondaryオーディオストリーム、00004.m2tsはPGストリーム、00005.m2tsはIGストリームを格納しているものとする。しかしこの格納方式は一例に過ぎず、4つのOut-of-MUXストリームが1つのSubClipに多重化されていてもよい。以降Out-of-MUXストリームの詳細について説明する。

<Out-of-MUXストリームの説明その1.Primary、Secondaryストリーム>
『Primaryオーディオストリーム』とは、いわゆる主音声となるオーディオストリームであり、『Secondaryオーディオストリーム』とは、いわゆる副音声となるオーディオストリームである。SubClip再生時において、Secondaryオーディオストリームの音声再生は、Primaryオーディオストリームの再生音声にミキシングされた上で出力に供される。Secondaryオーディオストリームとして扱われる音声には、例えば“コメンタリ音声”がある。Primaryオーディオストリームとなる主音声が、映画作品本編の台詞やBGMであり、Secondaryオーディオストリームとなる副音声が、映画監督のコメンタリ音声である場合、かかる映画作品本編の台詞やBGMは、コメンタリ音声とミキシングされた上で出力されることになる。
【0035】
Secondaryオーディオストリームは、ローカルストレージ200にのみ記録され再生に供されるが、BD-ROMには記録されない。Primaryオーディオストリームは、BD-ROMに置かれていても、ローカルストレージ200に置かれていてもよい。またPrimaryオーディオストリームの符号化コーディックは、Secondaryオーディオストリームの符号化コーディックと異なっていてもよい。
【0036】
図12は、Primaryオーディオストリーム及びSecondaryオーディオストリームの内部構成を示す図である。本図の第1段目は、SubClipの再生時に参照される時間軸(SubClip時間軸)を示し、第2段目は、SubClipを構成するTSパケット列を示す。第3段目は、SubClipを構成するPESパケット列を示し、第4段目は、Primaryオーディオストリーム及びSecondaryオーディオストリームを構成するオーディオフレーム列を示す。本図に示すようにSubClipは、Primaryオーディオストリーム、Secondaryオーディオストリームとなるフレーム列をPESパケットに変換し(第3段目)、更にこのPESパケット列をTSパケット列に変換することで生成される(第2段目)。
【0037】
PESパケットのヘッダに存在するPTSは、PESパケット内のオーディオフレームの開始タイミングを示す。従って、このPTSを参照することにより、SubClip時間軸において、PESパケットに格納されたオーディオフレームが何時再生されるかが判明する。故にPESパケットのヘッダがストリーム解析の対象になる。

<Out-of-MUXストリームの説明その2.PGストリーム>
PGストリームとは、動画の再生進行に伴った字幕表示を実現するエレメンタリストリームである。図13は、PGストリームの内部構成を示す図である。第4段目は、SubClipを構成するPESパケットを示し、第3段目は、SubClipを構成するTSパケットを示す。第2段目は、SubClip時間軸を示し、第1段目は、SubClipたるPGストリームと、MainClipたるビデオストリームとをデコードし、合成することで表示される合成画像を示す。
【0038】
第4段目におけるSubClipのPESパケット構成について説明する。
SubClipのPESパケットは、PCS(Presentation Control Segment)、PDS(Pallet Definition Segment)、WDS(Window Definition Segment)、ODS(Object Definition Segment)、END(END of Display Set Segment)という一連の機能セグメントにPESパケットヘッダを付与することにより作成される。
【0039】
ODS(Object Definition Segment)は、字幕たるグラフィクスデータを定義する機能セグメントである。
WDS(Window Definition Segment)は、画面におけるグラフィクスデータの描画領域を定義する機能セグメントである。
PDS(Pallet Definition Segment)は、グラフィクスデータの描画にあたっての、発色を規定する機能セグメントである。
【0040】
PCS(Presentation Control Segment)は、字幕表示におけるページ制御を規定する機能セグメントである。かかるページ制御には、Cut-In/Out、Fade-In/Out、Color Change、Scroll、Wipe-In/Outといったものがあり、PCSによるページ制御を伴うことにより、ある字幕を徐々に消去しつつ、次の字幕を表示させるという表示効果が実現可能になる。
END(END of Display Set Segment)は、字幕表示を表示する機能セグメント集合の終わりを示す機能セグメントである。
【0041】
PESパケットのヘッダは、PTS、DTSといったタイムスタンプを含み、これらのタイムスタンプは、機能セグメントのデコードを開始するタイミング、機能セグメントに基づきグラフィクスを表示するタイミングを示す。またPCSを先頭とした、ENDまでの機能セグメントの一群を“Display Set”と呼ぶ。第3段目は、これらのPESパケットを変換することで得られるTSパケットを示す。第2段目は、SubClipを再生するにあたって、参照される時間軸(SubClip時間軸)を示す。この時間軸において、PCSのDTSは、PCSがデコードされるタイミングを示し、PCSのPTSは、PCSを先頭としたDisplay Setに基づき、グラフィクスが表示されるタイミングを示す。このPTSに示されるタイミングにおいて、第1段目に示すような合成画像が表示されることになる。
【0042】
このDisplay Setには、『Epoch Start』、『Acquisition Point』、『Normal Case』、『Epoch Continue』といった種別がある。
『Epoch Start』は、新たなEpochの開始を示す。Epochとは、AVClipの再生時間軸上においてメモリ管理の連続性をもっている一つの期間、及び、この期間に割り当てられたデータ群をいう。そのためEpoch Startは、次の画面合成に必要な全ての機能セグメントを含んでいる。Epoch Startは、映画作品におけるチャプター等、頭出しがなされることが判明している位置に配置される。
【0043】
『Acquisition Point』は、Epochの開始時点ではないが、次の画面合成に必要な全ての機能セグメントを含んでいるDisplay Setである。Acquisition PointたるDSから頭出しを行えば、グラフィックス表示を確実に実現することができる。つまりAcquisition PointたるDSは、Epochの途中からの画面構成を可能するという役割をもつ。Acquisition PointたるDisplay Setは、頭出し先になり得る位置に組み込まれる。
【0044】
『Normal Case』は、前のDisplay Setからの差分のみを含む。例えば、あるDSvの字幕は、先行するDSuと同じ内容であるが、画面構成が、この先行するDSuとは異なる場合、PCSと、ENDのみのDSvを設けてこのDSvをNormal CaseのDSにする。こうすれば、重複するODSを設ける必要はなくなるので、BD-ROMにおける容量削減に寄与することができる。一方、Normal CaseのDSは、差分にすぎないので、Normal Case単独では画面構成は行えない。
【0045】
『Epoch Continue』とは、あるAVClipの再生が、他のAVClipの再生後、連続して行われる場合、Epochを、継続させる旨を示す。以上がPGストリームを構成する機能セグメントについての説明である。

<Out-of-MUXストリームについての説明その3.IGストリーム>
IGストリームは、動画の再生進行に伴った字幕表示を実現するエレメンタリストリームである。
【0046】
図14は、IGストリームの内部構成を示す図である。第4段目は、SubClipを構成するPESパケットを示し、第3段目は、SubClipを構成するTSパケットを示す。第2段目は、SubClip時間軸を示し、第1段目は、Out-of-MUXストリームたるIGストリームと、MainClipたるビデオストリームとをデコードし、合成することで表示される合成画像を示す。
第4段目におけるSubClipのPESパケット構成について説明する。
【0047】
SubClipのPESパケットは、ICS(Interactive Composition Segment)、PDS(Palette Difinition Segment)、ODS(Object Definition Segment)、END(END of Display Set Segment)と呼ばれる機能セグメントに、PESパケットヘッダを付与することにより作成される。
ODS(Object Definition Segment)は、ボタンを描画するにあたっての絵柄のグラフィクスを定義するグラフィクスデータである。
【0048】
PDS(Palette Difinition Segment)は、グラフィクスデータの描画にあたっての、発色を規定する機能セグメントである。
ICS(Interactive Composition Segment)は、ユーザ操作に応じてボタンの状態を変化させるという対話制御を規定する機能セグメントである。
END(END of Display Set Segment)は、メニュー表示を表示する機能セグメント集合の終わりを示す機能セグメントである。
【0049】
PESパケットヘッダは、PTS、DTSといったタイムスタンプを含み、これらのタイムスタンプは、機能セグメントのデコードを開始するタイミング、機能セグメントに基づきグラフィクスを表示するタイミングを示す。またICSを先頭とした、ENDまでの機能セグメントの一群をDisplay Setと呼ぶ。このDisplay SetにはPGストリーム同様、『Epoch Start』、『Acquisition Point』、『Normal Case』、『Epoch Continue』といった種別がある。
【0050】
図14の第3段目は、これらのPESパケットを変換することで得られるTSパケットを示す。第2段目は、SubClipを再生するにあたって、参照される時間軸(SubClip時間軸)を示す。この時間軸において、ICSのDTSは、ICSがデコードされるタイミングを示し、ICSのPTSは、ICSを先頭としたDisplay Setに基づき、グラフィクスが表示されるタイミングを示す。このPTSに示されるタイミングにおいて、第1段目に示すような合成画像が表示されることになる。
【0051】
ICS、PDS、ODS、ENDといった機能セグメントの集まりは、Display Setと呼ばれる。Display Setは、メニューの一個の表示を実現する機能セグメントの集合をいう。
以上がSubClipについての説明である。

<ローカルストレージ200の構成その2.Clip情報>
続いてローカルストレージ200側のClip情報について説明する。図15は、ローカルストレージ200側のClip情報のデータ構造を示す図である。ローカルストレージ200側のClip情報のデータ構造は、BD-ROM側のClip情報と同じである。但し、これらのデータ構造のうち、application_typeと、EP_mapの構成と、EP_stream_typeは、SubClip特有の内容に設定される。

<SubClipにおけるClip情報の説明その1.application_type>
図15におけるapplication_typeについて説明する。SubClipが先に説明したPrimaryオーディオストリーム、Secondaryオーディオストリーム、PGストリーム、IGストリームの何れかである場合、application_typeは7に設定される。
【0052】
application_type=7とは、本Clip情報に多重化されているSubClipが、“動画無しの追加コンテンツ”であることを示す。動画を含んでいないので、本SubClipは、ネットワークを通じてローカルストレージ200に格納され、ローカルストレージ200から供給されることを前提にしている。BD-ROMから供給されることを前提にしていない。以上がSubClipにおけるapplication_typeの設定である。
【0053】
<SubClipにおけるClip情報の詳細その1.Out-of-MUX_EP_map>
続いてSubClipにおけるEP_mapについて説明する。ローカルストレージ200上のEP_mapは、SubClipに多重化されている1つ以上のOut-of-MUXストリームそれぞれに対して存在する。そして対応するOut-of-MUXストリームの複数のエントリー位置を、複数のエントリー時刻と対応付けて示す。
【0054】
Out-of-MUXストリームには、Primaryオーディオストリーム、Secondaryオーディオストリーム、PGストリーム、IGストリームといった種別があり、これらは、ストリーム途中の何処から、再生可能となるかが違う。Primaryオーディオストリーム、Secondaryオーディオストリームは、複数オーディオフレームからなり、基本的にはこのオーディオフレームの先頭からなら何処からでも再生を開始することができる。
【0055】
これに対しPGストリーム、IGストリームに対してランダムアクセスを実行する場合、完結した機能セグメントからなるDisplay Setをデコーダに供給せねばならない。完結した機能セグメントからなるDisplay Setとは、いわゆる『Normal Case』以外のDisplay Set、つまり、『Epoch Start』、『Acquisition Point』、『Epoch Continue』のDisplay Setであり、これらのDisplay Setの先頭に位置するPCS,ICSを、エントリー位置として扱う必要がある。
【0056】
上述したようにOut-of-MUXストリームは、ストリームの途中のうち、何処からデコード可能であるかが違うので、EP_mapは、対応するOut-of-MUXストリームの違いにより、異なる構造をもつことになる。Out-of-MUXストリームに対するEP_mapを、“Out-of-MUX_EP_map”という。

<Out-of-MUX_EP_mapの詳細その2.音声に対するOut-of-MUX_EP_map>
続いてPrimaryオーディオストリーム、Secondaryオーディオストリームに対応するEP_mapの構成について説明する。Primaryオーディオストリーム、Secondaryオーディオストリームに対するEP_mapが、動画像に対するEP_mapと異なるのは、EP_mapの時間間隔である。つまり動画像に対する時間間隔は、1秒未満であり、緻密な精度で、Entry Pointが設定されているが、Entry Pointの時間間隔は、5秒になっており、時間間隔は広くなっている。
【0057】
図16は、Primaryオーディオストリーム、Secondaryオーディオストリームに対して生成されるEP_mapを示す図である。本図に示すEP_mapの構造とは、5秒という一定時間置きのエントリー時刻毎に、対応するエントリー位置が存在するというものである。本図の第3段目は、SubClip時間軸を示し、このSubClip時間軸上のt1〜t6がエントリー時刻である。これらのエントリー時刻t1,t2,t3,t4,t5,t6は、5秒という一定時間置きに存在している。本図の第2段目は、EP_mapを示す。この第2段目におけるEP_mapのPTS_EP_startは、これらのエントリー時刻を示している。
【0058】
第1段目は、Primaryオーディオストリーム、Secondaryオーディオストリームを構成するTSパケット列を示す。このTSパケット列のうち、SPN=n1,n2,n3,n4,n5,n6で指示される位置がエントリー位置であるとする。第2段目のSPN_EP_startは、これらn1〜n6を示すよう設定されている。EP_mapにおける各Entry PointのSPN_EP_startが、PTS_EP_startに対応するように設定されているので、5秒置きのエントリー時刻は、エントリー位置と対応づけられることになる。
【0059】
Primaryオーディオストリーム、SecondaryオーディオストリームについてのEP_mapにおいて、直前のEntry Pointとの間隔は、256Kバイトというデータ間隔であってもよい。この256Kバイトという時間間隔は、Secondaryオーディオストリームの転送レートに、5秒という時間間隔を乗じたものである。EP_mapの時間間隔が5秒であるので、ストリーム解析が必要になる範囲は、5秒以下になる。以上がPrimaryオーディオストリーム、Secondaryオーディオストリームに対して設定されるEP_mapについて説明である。

<Out-of-MUX_EP_mapの詳細その3.PGストリームについてのEP_map>
続いてPGストリームに対して設定されるEP_mapについて説明する。
【0060】
図17は、PGストリーム時間軸に対して設定されたEP_mapを示す図である。本図において第1段目は、PGストリームを構成するTSパケット列を示し、第2段目はEP_map、第3段目はSubClip時間軸を示す。この第1段目においてNormal CaseでないDisplay Setの先頭に位置するPCSが、SPN=n1、n5に存在するものとすると、これらはn1、n5がエントリー位置になる。一方、これらのPCSのPTSが、第3段目のSubClip時間軸におけるt1、t5を示しているならEP_mapは、これらSPN=n1、n5をPTS=t1,t5と対応づけて示すことになる。
【0061】
このように完結した機能セグメントの先頭が、PCSのPTSに示されるエントリー時刻と対応づけられているので、このEP_mapを手掛かりすれば、ストリーム解析を行うことなく、ストリームの途中からの字幕表示を実現することができる。

<Out-of-MUX_EP_mapの詳細その4.IGストリームについてのEP_map>
図18は、IGストリーム時間軸に対して設定されたEP_mapを示す図である。本図において第1段目は、IGストリームを構成するTSパケット列を示し、第2段目はEP_map、第3段目はSubClip時間軸を示す。この第1段目においてNormal CaseでないDisplay Setの先頭に位置するICSが、SPN=n1、n5に存在するものとすると、これらはn1、n5がエントリー位置になる。一方、これらのICSのPTSが、第3段目のSubClip時間軸におけるt1、t5を示しているならEP_mapは、これらSPN=n1、n5をPTS=t1、t5と対応づけて示すことになる。
【0062】
このように完結した機能セグメントの先頭が、ICSのPTSに示されるエントリー時刻と対応づけられているので、このEP_mapを手掛かりすれば、ストリーム解析を行うことなく、途中からのメニュー表示を実現することができる。

以上によりEP_map構造は、対応するOut-of-MUXストリームの質的な違いよって変化することがわかる。以上がローカルストレージ200上のClip情報における、EP_mapについての説明である。続いてローカルストレージ200上のClip情報における、EP_stream_typeについて説明する。
【0063】
<SubClipにおけるClip情報の説明その3.EP_stream_type>
EP_stream_typeは、図16〜図18に示したEP_mapの構造の違いを、1つのSubClipに多重化されているOut-of-MUXストリーム毎に示している。つまり1つのSubClipに多重化され得るOut-of-MUXストリームのうちi番目のものを、Out-of-MUXストリーム[i]とした場合、EP_stream_type[i]は、Out-of-MUXストリーム[i]に対応するEP_map_for_one_streamが、どのような類型であるかを示す。具体的にいうとEP_stream_type[i]は、3,4,6,7の何れかの値に設定される。3又は4に設定された場合は、Primaryオーディオストリーム又はSecondaryオーディオストリーム特有の構造、つまり、図16に示したように、一定時間置きのエントリー時刻、又は、一定データ間隔置きのエントリー位置を示すように設定されていることを示す。6に設定されている場合、PGストリーム固有の構造、つまりNormal Case以外のDisplay Setの先頭を指すように設定されていることを示す(図17)。7に設定されている場合、IGストリーム固有の構造、つまりNormal Case以外のDisplay Setの先頭を指すように設定されていることを示す(図18)。
【0064】
EP_mapの構造がこのEP_stream_typeに集約されているので、このEP_mapに示されるエントリー位置から、ストリーム解析を行わねばならないか、EP_mapにおけるEntryPoinからデータの読み出しを行い、デコーダに供給すればよいかが判る。
<SubClipにおけるClip情報の説明その4.EP_stream_typeの意義>
Out_of_MUX_EP_mapにEP_stream_typeを設けたことの技術的意義について以下にまとめた。
【0065】
エントリー時刻をアクセス位置として指定した場合は、すぐに再生を開始することができるが、アクセス位置がエントリー時刻でない場合、ストリーム解析が必要になる。もし、エントリー時刻同士の間隔がどの程度であるか、またどのようなデータ位置がエントリー時刻として指定されているかが判らない場合、どの程度、ストリーム解析を行えばよいかが未知数になる。そうすると、ストリーム解析がどれだけ必要になるかという上限が、定まらないので、ユーザ操作に対するレスポンスを、非常に低下させる恐れがある。
【0066】
そこでOut_of_MUX_EP_mapは、エントリー時刻がどの程度の間隔で存在するか、又は、どのような位置がエントリー位置として指定されているかをEP_stream_typeを用いて明らかにしている。EP_stream_typeが3,4である場合、エントリー位置は、5秒という一定間隔に存在していることを示す。これを参照すれば再生装置は、ストリーム解析が必要であったとしても、せいぜい、ストリーム解析を行うべき範囲は、5秒の範囲であり、ワーストケースであっても、Out-of-MUXストリームにおける5秒の範囲を解析すれば、所望のアクセス点に到達すると理解することができる。
【0067】
一方EP_stream_typeが6,7である場合、完結した機能セグメントからなるDisplay Setの開始点がエントリー位置として指定されていることを示す。これを参照すれば再生装置は、たとえエントリー位置の間隔が不定長であっても、このエントリー位置になっている位置から機能セグメントの読み出しを行い、再生に供すれば、ストリーム解析を一切行わなくとも、所望の再生時点における字幕表示、メニュー表示を実現することができる。
【0068】
EP_stream_typeは、5秒を上限としたストリーム解析が必要であるか、ストリーム解析が一切不要であるかの判断を、再生装置に促すので、MainClipに対するランダムアクセスと共に、SubClipに対するランダムアクセスが必要になったとしても、再生装置に対して過剰な負担をかけることはない。かかる負担軽減により、ユーザ操作に対するレスポンスを向上させることができる。
【0069】
以上がローカルストレージ200におけるClip情報についての説明である。

<ローカルストレージ200の構成その3.PlayList情報>
続いて、ローカルストレージ200上のPlayList情報について説明する。拡張子“mpls”が付与されたファイル(00001.mpls)は、PlayList(PL)情報を格納したファイルである。PlayList情報は、MainPath、Subpathと呼ばれる2種類の再生経路を束ねたものをPlaylist(PL)として定義する情報である。図19は、PlayList情報のデータ構造を示す図であり、本図に示すようにPlayList情報は、MainPathを定義するMainPath情報(MainPath())と、チャプターを定義するPlayListMark情報(PlayListMark())と、Subpathを定義するSubpath情報(Subpath())とからなる。
【0070】
MainPathとは、主たるAVClip上に定義される再生経路である。一方Subpathは、SubClip上に定義される再生経路である。

<PlayList情報の説明その1.MainPath情報>
先ずMainPathについて説明する。MainPathは、主映像たるビデオストリームやオーディオストリームに対して定義される再生経路である。
【0071】
MainPathは、矢印mp1で示すように複数のPlayItem情報(・・・PlayItem()・・・)から定義される。PlayItem情報は、MainPathを構成する1つ以上の論理的な再生区間を定義する。PlayItem情報の構成は、引き出し線hs1によりクローズアップされている。この引き出し線に示すようにPlayItem情報は、再生区間のIN点及びOut点が属するAVClipの再生区間情報のファイル名を示す『Clip_Information_file_name』と、AVClipの符号化方式を示す『Clip_codec_identifier』と、再生区間の始点を示す時間情報『IN_time』と、再生区間の終点を示す時間情報『OUT_time』とから構成される。
【0072】
図20は、MainClipと、PlayList情報との関係を示す図である。第1段目は、PlayList情報がもつ時間軸を示す。第2段目から第5段目は、EP_mapにて参照されているビデオストリーム(図5に示したものと同じ)を示す。
PlayList情報は、PlayItem情報#1,#2という2つのPlayItem情報を含んでおり、これらPlayItem情報#1,#2のIn_time,Out_timeにより、2つの再生区間が定義されることになる。これらの再生区間を配列させると、AVClip時間軸とは異なる時間軸が定義されることになる。これが第1段目に示すPlayItem時間軸である。このように、PlayItem情報の定義により、AVClipとは異なる時間軸の定義が可能になる。
【0073】
<PlayList情報の説明その2.PlayListMark>
以上が、本実施形態に係るPlayItem情報についての説明である。続いてPlayListMark情報について説明する。
図21は、PlayList情報の、PlayListMark情報の内部構成を示す図である。本図の図中の引き出し線pm0に示すように、PlayListMark情報は、複数のPLMark情報(#1〜#n)からなる。PLmark情報(PLmark())は、PL時間軸のうち、任意の区間を、チャプター点として指定する情報である。引き出し線pm1に示すようにPLmark情報は、チャプター指定の対象たるPlayItemを示す『ref_to_PlayItem_Id』と、そのPlayItemにおける、チャプター位置を時間表記により示す『mark_time_stamp』とを含む。
【0074】
図22は、PlayList情報の、PLMark情報によるチャプター位置の指定を示す図である。本図の第2段目から第5段目は、図20に示した、EP_mapと、AVClipとを示す。
本図の第1段目は、PLMark情報と、PL時間軸とを示す。この第1段目には、2つのPLMark情報#1〜#2が存在する。矢印kt1,2は、PLMark情報のref_to_PlayItem_Idによる指定を示す。この矢印からもわかるように、PLMark情報のref_to_PlayItem_Idは、PlayItem情報のそれぞれを指定していることがわかる。また、Mark_time_Stampは、PlayItem時間軸のうち、Chapter#1,#2になるべき時点を示す。このように、PLMark情報は、PlayItem時間軸上に、チャプター点を定義することができる。

<PlayList情報の説明その3.Subpath情報>
MainPathが、主映像たるMainClipに定義される再生経路であるのに対し、Subpathは、MainPathと同期すべきSubClipに対して定義される再生経路である。
【0075】
図23は、Subpath情報の内部構成をクローズアップして示す図である。本図における矢印hc0に示すように各Subpathは、SubClipの類型を示すSubPath_typeと、1つ以上のSubPlayItem情報(・・・SubPlayItem()・・・)とを含む。
図中の引き出し線hc1は、SubPlayItem情報の構成をクローズアップしている。SubPlayItem情報は、図中の矢印hc1に示すように『Clip_information_file_name』、『SubPlayItem_In_time』、『SubPlayItem_Out_time』、『sync_PlayItem_id』、『sync_start_PTS_of_PlayItem』からなる。
【0076】
『Clip_information_file_name』は、Clip情報のファイル名を記述することにより、SubPlayItemに対応するSubClipを一意に指定する情報である。
『SubPlayItem_In_time』は、SubClipの再生時間軸上における、SubPlayItemの始点を示す情報である。
『SubPlayItem_Out_time』は、SubClipの再生時間軸上における、SubPlayItemの終点を示す情報である。
【0077】
『sync_PlayItem_id』は、MainPathを構成するPlayItemのうち、本SubPlayItemが同期すべきものを一意に指定する情報である。SubPlayItem_In_timeは、このsync_PlayItem_idで指定されたPlay Itemの再生時間軸上に存在する。
『sync_start_PTS_of_PlayItem』は、sync_PlayItem_idで指定されたPlay Itemの再生時間軸上において、SubPlayItem_In_timeで指定されたSubPlayItemの始点が、どこに存在するかを示す。

<Subpath情報の詳細その1.SubPath_type>
以上がSubPath情報についての説明である。続いてSubPath_typeについて説明する。SubPath_typeは、0から255までの値に設定されることにより、SubPath情報により定義されるSubPathがどのような再生経路であるのかを示す。
【0078】
このSubPath_typeの値は、SubPlayItem情報のClip_information_file_nameにて指定されたClip情報の内容に連動したものとなる。何に連動するかというと、Clip.Infoのapplication_typeに連動するのである。SubPath_typeは、0〜255の値をとるが、Clip.Infoのapplication_typeが7に設定されているときは、5〜8の何等かの値が設定される。
SubPath_typeが5に設定されている場合、このSubPath情報により定義されるSubPathは、Primaryオーディオ再生パスであることを示す。このPrimaryオーディオ再生パスは、追加・置換のために定義されている。何に対する追加・置換かというと、PlayItem情報にて再生され得るPrimaryオーディオに追加されるべきPrimaryオーディオ、又は、PlayItem情報で再生されうるPrimaryオーディオに置き換えられるべきPrimaryオーディオである。
【0079】
SubPath_typeが6に設定された場合、本SubPath情報は、追加・置換のためのPresentation Graphics再生パスを定義していることを示す。何に対する追加・置換であるかというと、PlayItem情報にて再生され得るPGストリームに対して、追加・置換され得るPGストリームである。
SubPath_typeが7に設定された場合、本SubPath情報は、追加・置換のためのIntaractive Graphics再生パスを定義していることを示す。何に対する追加・置換であるかというと、PlayItem情報にて再生され得るPGストリームに対して、追加・置換され得るPGストリームである。
【0080】
SubPath_typeが8に設定された場合、SubPath情報はSecondaryオーディオ再生パスを定義する旨を示す。このSecondaryオーディオ再生パスは、追加のために定義されている。何に対する追加かというと、PlayItem情報にて再生され得るPrimaryオーディオの再生音声にミキシングされるべきSecondaryオーディオである。
以上がSubPath_typeについての説明である。

<SubPath情報についての詳細その2.三者の関係>
ここでの三者とは、ローカルストレージ200上のSubClip、ローカルストレージ200上のPlayList情報、BD-ROM上のMainClipの三者をいう。
【0081】
図24は、ローカルストレージ200上のSubClipと、ローカルストレージ200上のPlayList情報と、BD-ROM上のMainClipとの対応を示す図である。本図において第1段目は、ローカルストレージ200上に存在するSubClipを示す。この第1段目に示すように、ローカルストレージ200上のSubClipには、Primaryオーディオストリーム、Secondaryオーディオストリーム、PGストリーム、IGストリームといった種別がある。これらのうち何れかが、SubPathとして同期再生に供されることになる。
【0082】
第2段目は、PlayList情報により定義される2つの時間軸を示す。第2段目のうち下側の時間軸は、PlayItem情報により定義されるPlayItem時間軸を示し、上側の時間軸はSubPlayItemにより定義されるSubPlayItem時間軸を示す。
本図に示すように、SubPlayItem情報のSubPlayItem_Clip_information_file_nameは、第1段目における4つのSubClipのうち、どれを再生区間指定の対象として選ぶかという、SubClip選択の役割を果たしていることがわかる。
【0083】
そしてSubPlayItem.IN_time、SubPlayItem.Out_timeは、SubClip上に、再生区間の始点及び終点を定義するという役割を果たしていることがわかる。
矢印Sync_PlayItem_Idは、どのPlayItemとの同期を意図しているかという同期指定の役割を果たし、sync_start_PTS_of_PlayItemは、PlayItem時間軸の原点と、SubPlayItem時間軸の原点との差分を示す役割を果たす。
【0084】
図25は、MainClipに対して設定されたEP_map及びPlayItem時間軸と、Primaryオーディオストリーム、SecondaryオーディオストリームとなるSubClipに対して設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
本図の中段、下4段〜下1段は、図20に示したPlayItem時間軸、ピクチャ列、MainClip時間軸、EP_map、TSパケット列を示す。
【0085】
また上1段目〜上3段目は、図16に示したTSパケット列、EP_map、SubClip時間軸を示す。上4段目は、図24に示したSubPlayItem時間軸を示す。MainClipについては1秒時間間隔、SubClipについては、5秒時間間隔でエントリー時刻が設定されていることがわかる。
図26は、MainClipに対して設定されたEP_map及びPlayItem時間軸と、PGストリーム、IGストリームとなるSubClipに対し設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
【0086】
本図の中段、下4段〜下1段は、図20に示したPlayItem時間軸、ピクチャ列、MainClip時間軸、EP_map、TSパケット列を示す。
また上1段目〜3段目は、図16に示したTSパケット列、EP_map、SubClip時間軸を示す。上第4段目は、図24に示したSubPlayItem時間軸を示す。MainClipについては1秒時間間隔、SubClipについては、Normal Case以外のDisplay Setが存在する位置が、エントリー位置として指定されていることがわかる。
【0087】
<SubPath情報についての詳細その3.相関関係>
図27は、SubPath_typeがとり得る値と、application_typeがとり得る値と、EP_stream_typeがとり得る値との相関関係を、表形式に示した図である。
SubPath_typeは“5”であり、application_typeが“7”である場合、EP_stream_typeが“3”に設定されていることがわかる。EP_stream_typeが“3”に設定されているので、このEP_stream_typeに対応するEP_mapは、Primaryオーディオ再生のためのものであり、5秒という時間間隔、又は、256Kバイトというデータ間隔をもっていると、再生装置は理解することができる。
【0088】
SubPath_typeは“6”であり、application_typeが“7”である場合、EP_stream_typeが“6”に設定されていることがわかる。EP_stream_typeが“6”に設定されているので、このEP_stream_typeに対応するEP_mapは、Presentation Graphics再生のためのものであり、完結した機能セグメントからなるDisplay Setをエントリー位置にしていると、再生装置は理解することができる。
【0089】
SubPath_typeは“7”であり、application_typeが“7”である場合、EP_stream_typeは“7”に設定されていることがわかる。EP_stream_typeが“7”に設定されているので、このEP_stream_typeに対応するEP_mapは、Interactive Graphics再生のためのものであり、完結した機能セグメントからなるDisplay Setをエントリー位置にしていると、再生装置は理解することができる。
【0090】
SubPath_typeは“8”であり、application_typeが“7”である場合、EP_stream_typeが“4”に設定されていることがわかる。EP_stream_typeが“4”に設定されているので、このEP_stream_typeに対応するEP_mapは、Secondaryオーディオ再生のためのものであり、5秒という時間間隔、又は、256Kバイトというデータ間隔をもっていると、再生装置は理解することができる。
【0091】
以上がローカルストレージ200の構成たるPlayList情報についての説である。以上で、ローカルストレージ200についての説明を終える。

<バーチャルファイルシステム>
以降、バーチャルファイルシステムについて説明する。図28は、再生装置300により生成されるバーチャルファイルシステムを示す図である。本図の左上は、BD-ROMの記録内容を示し、左下は、ローカルストレージ200の記録内容を示す。右側は、バーチャルファイルシステムの構成を示す。
【0092】
再生装置は、BD-ROMに存在するAVClip、Clip情報、PlayList情報に、ローカルストレージ200に存在するAVClip、Clip情報、PlayList情報を組み合わせて、バーチャルファイルシステムを得る。
この組合せは、
i)Local Storage上のPlayList(00002.MPLS)を、BD-ROMにおけるMPLSディレクトリに追加し、

ii)Local Storage上のClip情報#2、#3、#4、#5(00002.CLPI,00003.CLPI,00004.CLPI,00005.CLPI)を、BD-ROMにおけるCLPIディレクトリに追加し、

iii)Local Storage上のAVClip#2、#3、#4、#5(00002.M2TS,00003.M2TS,00004.M2TS,00005.M2TS)を、BD-ROMにおけるSTREAMディレクトリに追加することでなされる。
【0093】
こうすることにより、図28の右側に示すようなバーチャルファイルシステムが構成される。
以上で本発明に係る記録媒体についての説明を終わる。続いて本発明に係る再生装置について説明する。
<再生装置の内部構成>
図29は、本発明に係る再生装置の内部構成を示す図である。本発明に係る再生装置は、本図に示す内部構成に基づき、工業的に生産される。本発明に係る再生装置は、主としてシステムLSIと、ドライブ装置という2つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装することで工業的に生産することができる。システムLSIは、再生装置の機能を果たす様々な処理部を集積した集積回路である。こうして生産される再生装置は、BDドライブ1、Arrival
time Clock Counter2、Source de-packetetizer3、PID Filter4、Transport Buffer5、Multiplexed Buffer6、Coded Picture Buffer7、ビデオデコーダ8、Decoded Picture Buffer10、ビデオプレーン11、Transport Buffer12、Coded Data Buffer13、Stream Graphics Processor14、Object Buffer15、Composition Buffer16、Composition Controller17、Presentation Graphicsプレーン18、CLUT部19、Transport Buffer20、Coded Data Buffer21、Stream Graphics Processor22、Object Buffer23、Composition Buffer24、Composition Controller25、Intaractive Graphicsプレーン26、CLUT部27、合成部28、合成部29、スイッチ30、Network Device31、スイッチ32、Arrival Time Clock Counter33、Source De-Packetizer34、PIDフィルタ35、スイッチ36、Transport Buffer37、Elementary Buffer38、オーディオデコーダ39、Transport Buffer40、バッファ41、オーディオデコーダ42、ミキサー43、シナリオメモリ44、制御部45、メイン変換部46、サブ変換部47、PL再生制御部48、PSRセット49から構成される。本図における内部構成は、MPEGのT-STDモデルをベースとしたデコーダモデルであり、ダウンコンバートを想定した含めたデコーダモデルになっている。
【0094】
BD-ROMドライブ1は、BD-ROMのローディング/イジェクトを行い、BD-ROMに対するアクセスを実行して、32個の完結したEX付きTSパケットからなるAligned UnitをBD-ROMから読み出す。
Arrival time Clock Counter2は、27MHzの水晶発振器(27MHz X-tal)に基づき、Arrival Time Clockを生成する。Arrival Time Clockとは、TSパケットに付与されたATSの基準となる時間軸を規定するクロック信号である。
【0095】
Source de-packetetizer3は、BD-ROMから、32個の完結したEX付きTSパケットからなるAligned Unitが読み出されれば、Aligned Unitを構成するそれぞれのTSパケットから、TP_extra_headerを取り外して、TSパケットのみをPIDフィルタ4に出力する。Source
De-Packetizer3によるPIDフィルタ4への出力は、Arrival time Clock Counter2が経時している時刻が、TP_extra_headerに示されるATSになったタイミングになされる。PIDフィルタ4への出力は、ATSに従いなされるので、たとえBD-ROMからの読み出しに1倍速、2倍速といった速度差があっても、PIDフィルタ4へのTSパケット出力は、Arrival Time Clockが経時する現在時間に従いなされることになる。
【0096】
PID Filter4は、TSパケットに付加されているPIDを参照することにより、TSパケットが、ビデオストリーム、PGストリーム、IGストリーム、Primaryオーディオストリームの何れに帰属するのかを判定して、Transport Buffer5、Transport Buffer12、Transport Buffer20、Transport Buffer37のどれかに出力する。
Transport Buffer(TB)5は、ビデオストリームに帰属するTSパケットがPIDフィルタ4から出力された際、一旦蓄積されるバッファである。
【0097】
Multiplexed Buffer(MB)6は、Transport Buffer5からElementary Buffer7にビデオストリームを出力するにあたって、一旦PESパケットを蓄積しておくためのバッファである。
Coded Picture Buffer(CPB)7は、符号化状態にあるピクチャ(Iピクチャ、Bピクチャ、Pピクチャ)が格納されるバッファである。
【0098】
ビデオデコーダ8は、ビデオエレメンタリストリームの個々のフレーム画像を所定の復号時刻(DTS)ごとにデコードすることにより複数フレーム画像を得て、Decoded Picture Buffer10に書き込む。
Decoded Picture Buffer10は、復号されたピクチャが書き込まれるバッファである。
ビデオプレーン11は、非圧縮形式のピクチャを格納しておくためのプレーンである。プレーンとは、再生装置において一画面分の画素データを格納しておくためのメモリ領域である。ビデオプレーン11における解像度は1920×1080であり、このビデオプレーン11に格納されたピクチャデータは、16ビットのYUV値で表現された画素データにより構成される。
【0099】
Transport Buffer(TB)12は、PGストリームに帰属するTSパケットがPIDフィルタ4から出力された際、一旦蓄積されるバッファである。
Coded Data Buffer(CDB)13は、PGストリームを構成するPESパケットが格納されるバッファである。
Stream Graphics Processor(SGP)14は、ODSをデコードして、デコードにより得られたインデックスカラーからなる非圧縮状態の非圧縮グラフィクスをグラフィクスオブジェクトとしてObject Buffer15に書き込む。Stream Graphicsプロセッサ14によるデコードは瞬時に行われ、デコードによりグラフィクスオブジェクトをStream Graphicsプロセッサ14は一時的に保持する。Stream Graphicsプロセッサ14によるデコードは瞬時になされるが、Stream Graphicsプロセッサ14からObject Buffer15への書き込みは、瞬時には終わらない。BD-ROM規格のプレーヤモデルでは、Object Buffer15への書き込みは、128Mbpsという転送レートでなされるからである。Object Buffer15への書き込み完了時点は、ENDセグメントのPTSに示されているので、このENDセグメントのPTSに示される時点が経過するまで、次のDSに対する処理を待つことになる。各ODSをデコードすることにより得られたグラフィクスオブジェクトの書き込みは、そのODSに関連付けられたDTSの時刻に開始し、ODSに関連付けられたPTSに示されるデコード終了時刻までに終了する。
【0100】
Object Buffer15は、Stream Graphics Processor14のデコードにより得られたグラフィクスオブジェクトが配置されるバッファである。Object Buffer15は、グラフィクスプレーン8の2倍/4倍の大きさに設定せねばならない。何故ならScrollingを実現する場合を考えると、グラフィクスプレーン8の2倍、4倍のグラフィクスオブジェクトを格納しておかねばならないからである。
【0101】
Composition Buffer16は、PCS、PDSが配置されるメモリである。処理すべきDisplay Setが2つあり、これらのPCSのアクティブ期間が重複している場合、Compositionバッファ16には処理すべきPCSが複数格納される。
Graphicsコントローラ17は、現在の再生時点が新たなDisplay Setに到達する度に、そのDisplay Setに含まれるPCSのComposition_Stateが、Epoch Start、Acquisition Point、Normal Caseのどれであるかを判定する、Epoch Startであれば、Coded Dataバッファ13上のPCSを、Coded Dataバッファ13からCompositionバッファ16に転送する。
【0102】
Presentation Graphicsプレーン18は、一画面分の領域をもったメモリであり、一画面分の非圧縮グラフィクスを格納することができる。本プレーンにおける解像度は1920×1080であり、Presentation Graphicsプレーン18中の非圧縮グラフィクスの各画素は8ビットのインデックスカラーで表現される。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、Presentation Graphicsプレーン18に格納された非圧縮グラフィクスは、表示に供される。
【0103】
CLUT部19は、Presentation Graphicsプレーン18に格納された非圧縮グラフィクスにおけるインデックスカラーを、Y,Cr,Cb値に変換する。
Transport Buffer(TB)20は、IGストリームに帰属するTSパケットが一旦蓄積されるバッファである。
Coded Data Buffer(CDB)21は、IGストリームを構成するPESパケットが格納されるバッファである。
【0104】
Stream Graphics Processor(SGP)22は、ODSをデコードして、デコードにより得られた非圧縮グラフィクスをObject Buffer23に書き込む。
Object Buffer23は、Stream Graphics Processor22のデコードにより得られた非圧縮のグラフィクスオブジェクトが多数配置されるバッファである。このObject Buffer23において各グラフィクスオブジェクトが占める矩形領域は、ODSが有するObject_idにより識別される。従って、Object Buffer23上にあるグラフィクスオブジェクトが存在している状態で、同じObject_idをもつグラフィクスオブジェクトが供給されれば、Object Buffer23上においてそのグラフィクスオブジェクトが占める領域は、同じObject_idをもつグラフィクスオブジェクトにより上書きされることになる。
【0105】
Compositionバッファ24は、1つ以上のICSに対応する運搬されるInteractive_compositionを格納しておくためのバッファである。格納されているInteractive_compositionは、Graphicsコントローラ25による解読に供される。
Graphicsコントローラ25は、現在の再生時点が新たなDisplay Setに到達する度に、そのDisplay Setに含まれるICSのComposition_Stateが、Epoch Start、Acquisition Point、Normal Caseのどれであるかを判定する、Epoch Startであれば、Coded Dataバッファ21上の新たなInteractive_compositionを、Coded Dataバッファ21からCompositionバッファ24に転送する。
【0106】
Graphicsコントローラ25は、Acquisition PointタイプのDisplay SetにおけるICSがCoded Dataバッファ21に読み出される度に、そのICSに属する各ページ情報のPage_Version_Numberと、Compositionバッファ24に格納済みのInteractive_compositionにおける各ページ情報のPage_Version_Numberとを照合する。そしてPage_Version_Numberが大きいページ情報がCoded Dataバッファ21上に存在していれば、そのページ情報をCoded Dataバッファ21からCompositionバッファ24に転送することで、Compositionバッファ24における所望のページ情報をアップデートする。そしてそうやってアップデートされたページ情報に該当するページが現在表示中であるか否かを判定し、もし表示中であれば、該当するページの再描画を行う。
【0107】
Interactive Graphicsプレーン26は、Stream Graphics Processor(SGP)22によるデコードで得られた非圧縮グラフィクスが書き込まれる。本プレーンにおける解像度は1920×1080であり、Intaractive Graphicsプレーン26中の非圧縮グラフィクスの各画素は8ビットのインデックスカラーで表現される。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、Intaractive Graphicsプレーン26に格納された非圧縮グラフィクスは、表示に供される。
【0108】
CLUT部27は、Interactive Graphicsプレーン26に格納された非圧縮グラフィクスにおけるインデックスカラーを、Y,Cr,Cb値に変換する。
合成部28はビデオプレーン11に格納された非圧縮状態のフレーム画像と、Presentation Graphicsプレーン18に格納された非圧縮状態のグラフィクスオブジェクトとを合成させる。かかる合成により、動画像上に、字幕が重ね合わされた合成画像を得ることができる。
【0109】
合成部29は、Interactive Graphicsプレーン26に格納された非圧縮状態のグラフィクスオブジェクトと、合成部28の出力である合成画像(非圧縮状態のピクチャデータと、Presentation Graphicsプレーン18の非圧縮グラフィクスオブジェクトとを合成したもの)とを合成する。
スイッチ30は、BD-ROMから読み出されたTSパケット、ローカルストレージ200から読み出されたTSパケットの何れか一方を、選択的にTransport Buffer20に供給する。
【0110】
Network Device31は、再生装置における通信機能を実現するものであり、URLにあたるwebサイトとのTCPコネクション、FTPコネクション等を確立する。Network Device31により確立されたコネクションを通じてwebサイトからダウンロードされたコンテンツは、このLocal Storage200に格納される。
スイッチ32は、BD-ROMから読み出されたTSパケット、ローカルストレージ200から読み出されたTSパケットの何れか一方を、選択的にTransport Buffer12に供給する。
【0111】
Source de-packetetizer34は、ローカルストレージ200から読み出されたAVClipのTSパケットから、TP_extra_headerを取り外して、TSパケットのみをPIDフィルタ35に出力する。Source de-packetizer34によるPIDフィルタ35への出力は、Arrival Time Clock Counter33が経時している時刻が、TP_extra_headerに示されるATSになったタイミングになされる。
【0112】
PIDフィルタ35は、ローカルストレージ200から読み出されたTSパケットを、PGストリームのデコーダ側、IGストリームのデコーダ側、オーディオデコーダ39側、オーディオデコーダ42側の何れかに切り換える。
スイッチ36は、BD-ROMから読み出されたTSパケット、ローカルストレージ200から読み出されたTSパケットのどちらかをオーディオデコーダ39側に供給する。このTSパケットは、Primaryオーディオストリームを構成するものである。このスイッチ36を経由することにより、BD-ROM及びローカルストレージ200のどちらからでも、Primaryオーディオストリームは、オーディオデコーダ39に供給されることになる。
【0113】
Transport Buffer(TB)37は、Primaryオーディオストリームに帰属するTSパケットを蓄積する。
Elementary Buffer(EB)38は、Primaryオーディオストリームを構成するPESパケットが格納されるバッファである。
オーディオデコーダ39は、Elementary Buffer41から出力されたPESパケット状態のPrimaryオーディオストリームを復号して、非圧縮形式のオーディオデータを出力する。
【0114】
Transport Buffer(TB)40は、Secondaryオーディオストリームに帰属するTSパケットを蓄積する。
Elementary Buffer(EB)41は、Secondaryオーディオストリームを構成するPESパケットが格納されるバッファである。
オーディオデコーダ42は、Elementary Buffer38から出力されたPESパケット状態のSecondaryオーディオストリームを復号して、非圧縮形式のオーディオデータを出力する。
【0115】
ミキサー43は、Primaryオーディオストリームを復号することで得られた非圧縮形式のオーディオデータと、Secondaryオーディオストリームを復号することで得られた非圧縮形式のオーディオデータとをミキシングすることにより、合成音声を出力する。
シナリオメモリ44は、カレントのPlayList情報やカレントのClip情報を格納しておくためのメモリである。カレントPlayList情報とは、BD-ROMに記録されている複数PlayList情報のうち、現在処理対象になっているものをいう。カレントClip情報とは、BD-ROMに記録されている複数Clip情報のうち、現在処理対象になっているものをいう。
【0116】
制御部45は、命令ROMと、CPUとからなり、命令ROMに格納されているソフトウェアを実行して、再生装置全体の制御を実行する。この制御の内容は、ユーザ操作に応じて発生するユーザイベント、及び、PSRセット49における各PSRの設定値に応じて動的に変化する。制御部45は、メイン変換部46、サブ変換部47、PL再生制御部48という機能的な構成要素を含んでいる。
【0117】
メイン変換部46は、PlayItem時間軸における再生時点を、MainClipのアドレスに変換する。ここで通常再生及び特殊再生を開始すべき再生時点は、PlayItemの時間軸において定義されており、メイン変換部46は、MainClipに対応するClip情報内のEP_mapを用いて、この再生時点を、MainClipにおけるアドレスに変換する。
サブ変換部47は、PlayItemの時間軸における再生時点を、SubPlayItemの時間軸における再生時点に変換し、変換後のSubPlayItem時間軸上の再生時点を、SubClipのアドレスに変換する。ここで、サブ変換部47によるPlayItem時間軸上の再生時点から、SubPlayItem時間軸上の再生時点への変換は、SubPlayItem情報におけるSync_PlayItem_Id、Sync_Start_PTS_of_PlayItemを用いてなされる。
【0118】
SubPlayItem時間軸上の再生時点から、SubClipアドレスへの変換は、EP_mapに示されてる複数のエントリー位置のうち、ランダムアクセス位置に最も近いエントリー位置を求めるという処理(i)と、そうして求めたエントリー位置を開始点にして、ストリーム解析を行うという処理(ii)の2つからなる。前者の処理は、SubClipに対応づけられたEP_mapを用いてなされる。後者のストリーム解析は、Primaryオーディオストリーム及びSecondaryオーディオストリームのランダムアクセスには必要だが、PGストリーム、IGストリームのランダムアクセスでは省くことができる。ストリーム解析を省略できるか否かの判定は、EP_stream_typeを参照することでなされる。Clip情報にはEP_mapが存在しており、ランダムアクセスが好適になされることを保証しているからである。
【0119】
PL再生制御部48は、PL再生を行うよう再生装置全体の制御を行う。PL再生とは、BD-ROMにおけるMainClipと、ローカルストレージにおけるSubClipとを、PlayList情報内のPlayItem情報、SubPlayItem情報に従って同期再生させるという制御である。MainClip、SubClipにはEP_mapが対応づけられており、各AVClipに対するランダムアクセスの高速化が保証されている。この高速ランダムアクセスを応用することにより、PL再生では、“通常再生”、“特殊再生”を実現する。
【0120】
ここでPL再生における通常再生とは、MainClip、SubClipのうち、PlayList情報におけるMainPath情報を構成するPlayItem情報、SubPath情報を構成するSubPlayItem情報で、指定されている部分を、PlayItem時間軸、SubPlayItem時間軸に従って再生してゆくというものである。
PL再生における特殊再生とは、MainClip、SubClipのうち、PlayList情報におけるMainPath情報を構成するPlayItem情報、SubPath情報を構成するSubPlayItem情報で、指定されている部分に対して、早送り・巻戻し・チャプタサーチ・タイムサーチを実行してゆくというものである。
【0121】
PSRセット49は、再生装置に内蔵される不揮発性のレジスタであり、64個のPlayer Status Register(PSR(1)〜(64))と、4096個のGeneral Purpose Register(GPR)とからなる。64個のPlayer Status Register(PSR)は、それぞれ現在の再生時点等、再生装置における諸状態を示す。64個のPSR(PSR(1)〜(64))のうちPSR(5)〜PSR(8)は、現在の再生時点を表すものである。このうちPSR(5)は、1〜999の値に設定されることで、現在の再生時点が属するチャプター番号を示し、0xFFFFに設定されることで、再生装置においてチャプター番号が無効であることを示す。
【0122】
PSR(6)は、0〜999の値に設定されることで、現在の再生時点が属するPlayList(カレントPlayList)の番号を示す。
PSR(7)は、0〜255の値に設定されることで、現在の再生時点が属するPlay Item(以下カレントPIという)の番号を示す。
PSR(8)は、0〜OxFFFFFFFFの値に設定されることで、45KHzの時間精度を用いて現在の再生時点(カレントPTM)を示す。
【0123】
以上が再生装置の内部構成である。
<ソフトウェアによる実装その1.PL再生制御部48>
以降、コンピュータソフトウェアによるPL再生制御部48の実装について説明する。PL再生制御部48を、コンピュータソフトウェアとして実現するには、図30に示す再生手順をコンピュータに実行させるプログラムを作成すればよい。 つまり、PL再生における通常再生、特殊再生は、何れも、PlayItem時間軸上の任意の座標からの再生を開始するという飛込再生を前提にしているので、この飛込再生を実現するような制御を、再生装置に命じればよい。
【0124】
図30は、PlayItem時間軸上の任意の座標からの飛込再生を行う場合の制御手順を示すフローチャートである。PlayItem時間軸における座標を表すOffsetαを算出し(ステップS1)、Offsetαを、MainClip時間軸上の座標(In_time+Offsetα)に変換する(ステップS2)。こうしてMainClip時間軸上の座標を求めれば、MainClipのEP_mapを用いて、MainClip時間軸上の座標(In_time+Offsetα)を、アドレスαに変換する(ステップS3)。
【0125】
ステップS4は、SubClipのEP_mapにおけるEP_stream_typeが、3,4,6,7であるか否かの判定である。もしそうでなければ、BD-ROMにおけるアドレスαからの読み出しを開始する(ステップS9)。SubClipのEP_mapにおけるEP_stream_typeが、3,4,6,7であれば、Offsetαを、SubPlayItem時間軸におけるOffsetβ(=Offsetα−Sync_Start_Pts_of_PlayItem)に変換し(ステップS5)、Offsetβを、SubClip時間軸上の座標(SubPlayItem_In_time+Offsetβ)に変換する(ステップS6)。そしてEP_mapを用いて、SubPlayItem_In_time+Offsetβをアドレスβに変換し(ステップS7)、BD-ROMにおけるアドレスαからの読み出しと、ローカルストレージ200におけるアドレスβからの読み出しとを同時に実行する(ステップS8)。
【0126】
EP_stream_typeが3,4,6,7以外の値であれば(ステップS4でNo)、EP_stream_typeがいわば無効であることを意味する。EP_stream_typeが無効であれば、Out-of-MUXストリームにおけるエントリー位置やエントリー時刻がどれだけの間隔で存在するかが未知数になるので、アクセス位置の特定に多大な時間がかかることも予測される。そうするとSubClipに対するランダムアクセスは、非常に時間がかかると考えられ、これをMainClipと同期再生させようとすると、MainClipの再生が著しく遅延することになる。これを避けるべく、SubClip側のランダムアクセスは事前に放棄し、MainClipのみに対して、アドレスαからの読み出しを実行する(ステップS9)。このように、ランダムアクセスの対象をMainClipに限定することにより、ランダムアクセス時における、著しい処理遅延を避けることができる。
【0127】
図31は、図25のように設定されたEP_mapを用いてランダムアクセス位置をどのように特定するかを模式的に示した図である。以降図31を引用して、図31に示したランダムアクセス位置を特定する手順について説明する。尚、この図31は、指定された飛込位置が、MainClip及びSubClipにおいて、たまたまエントリー位置として指定されているケースを想定して作図している。指定された飛込位置が、PlayItem時間軸におけるOffsetαの位置であるとすると、プレイリスト時間軸の原点は、MainClip時間軸のIn_timeに存在するから、MainClipに対する飛込位置は、In_time+Offsetαになり、この位置をSPNに変換し、SPNをセクタ数に換算すればよい。
【0128】
一方、PlayItem時間軸のOffsetαは、SubPlayItem時間軸においては、Sync_Start_PTS_of_PlayItem+Offsetβの位置にある。何故なら、SubPlayItem時間軸の原点は、PlayItem時間軸の原点から、Sync_Start_PTS_of_PlayItemだけ隔てた位置に存在するからである。こうしてOffsetβを算出すれば、SubClip時間軸上の飛込位置の座標を算出する。ここでSubPlayItemの時間軸の原点は、SubPlayItemのIn_timeに存在するから、SubPlayItem_In_time+OffsetβがSubClip時間軸の飛込位置になる。以降、SubClipのEP_mapを用いて飛込位置をSPNに変換し、このSPNをアドレスに変換する。

<ソフトウェアによる実装その2.メイン変換部46、サブ変換部47>
以降、コンピュータソフトウェアによるメイン変換部46、サブ変換部47の実装について説明する。メイン変換部46、サブ変換部47を、コンピュータソフトウェアとして実現するには、図32に示す再生手順をコンピュータに実行させるプログラムを作成すればよい。
【0129】
図32は、MainClip、SubClip上の座標TMを、アドレスに変換する処理の処理手順を示すフローチャートである。
EP_HighのPTS_EP_Highに示される時間幅を足し合わせてゆき、何個目のEP_High_idにおいて、時間幅の総和ΣがIn_timeを越えるかを判定する(ステップS11)。ここでPTS_EP_Highに示される時間幅とは、PTS_EP_Highを上位ビットとする時間の単位である。k個目のEP_High_idにおいて、時間幅の総和ΣがIn_timeを越えた場合、このkを記憶しておく(ステップS12)。
【0130】
EP_Low_idを求めるため、PTS_EP_High(k-1)までの総和Σに、複数EP_LowのPTS_EP_Lowに示される時間幅を足し合わせて、何個目のEP_Low_idにおいて、時間幅の総和がIn_timeを越えるかを判定する(ステップS13)。ここでh個目のEP_Low_idにおいて、時間幅の総和がIn_timeを越えた場合、このhを記憶しておく(ステップS14)。
このようにして求められたk-1及びh-1の組みにより、In_timeに最も近いEntry Pointを特定する。こうして求めたEntry PointにおけるSPN_EP_High、SPN_EP_Lowの組みから、座標TMにあたる位置のSPNを算出して、SPNを、セクタアドレスに変換する(ステップS15)。
【0131】
SPNから、セクタアドレスへの変換は、以下の処理にてなされる。ここでSPNは、TSパケットのシリアル番号であるので、このSPNに基づきTSパケットを読み出すには、SPNを相対セクタ数に変換する必要がある。ここで図4に示したように、TSパケットは32個毎に1つのAligned Unitに変換され、3つのセクタに記録されるので、SPNを32で割ることにより商を得て、その商を、Iピクチャが存在するAligned Unitの番号として解釈する。こうして得られたAligned Unit番号に3を乗ずることにより、SPNに最も近いAligned Unitのセクタアドレスを求めることができる。こうして得られたセクタアドレスは、1つのAVClipファイルの先頭からの相対セクタ数なので、この相対セクタ数をファイルポインタに設定することにより、Entry Pointにあたるセクタを特定することができる。
【0132】
ステップS16は、SubClipのEP_mapにおけるEP_stream_typeは、3,4,6,7の何れであるかの判定である。もしEP_stream_typeが6(PGストリーム)か、7(IGストリーム)であるなら、座標TMに最も近いEntry Pointに、Normal Case以外のDisplay Setの先頭位置(PCS,ICS)が存在していると考えられる。このDisplay Setは、画面合成に必要な全ての機能セグメントを有しているので、ステップS15での変換により得られたアドレスを、アクセス位置たるアドレスβとする(ステップS17)。
【0133】
こうして、アドレスβが特定されれば、そこからの再生を実行することにより、字幕表示やメニュー表示を実現することができる。
EP_stream_typeが3(Primaryオーディオストリーム)か、4(Secondaryオーディオストリーム)であるなら、ステップS15での変換により得られたアドレスを開始点として、ストリーム解析を開始する(ステップS18)。このストリーム解析は、PESパケットのヘッダを取り出し、このヘッダからオーディオフレームのサイズやPTSを読み出して、そのサイズに基づき、次のオーディオフレームの記録位置を特定するという処理を行う。そして座標TM以上の値を有するPTSをもつPESパケットに到達するまで、かかる処理を繰り返す(ステップS19)。
【0134】
もし、座標TM以上の値を有するPTSをもつPESパケットに到達すれば、かかるPESパケットのアドレスを、アクセス位置たるアドレスβとする(ステップS20)。こうして、アドレスβが特定されれば、そこからの再生を実行して、音声再生を実現する。
以降、このフローチャートでの処理を、図33、図34を参照しながら、具体的に説明する。
【0135】
図33は、SubClipがPrimaryオーディオストリーム、Secondaryオーディオストリームである場合の、変数k,h,ランダムアクセス位置の関係を示す図である。本図の第1段目は、EP_mapを構成するPTS_EP_Highを示し、第2段目はEP_mapを構成するPTS_EP_Lowを示す。第3段目はTSパケット列を示す。本図においてkは、ランダムアクセス位置を越える最小のPTS_EP_Highを示すものであり、hはランダムアクセス位置を越える最小のPTS_EP_Lowを示すものである。
【0136】
1つ前のPTS_EP_High(k-1)と、1つ前のPTS_EP_Low(h-1)との組みが、ランダムアクセス位置に最も近いエントリー時刻を示すことになる。
これらPTS_EP_High、PTS_EP_Lowの組みに対応する、SPN_EP_High、SPN_EP_Lowの組みが、ランダムアクセス位置に最も近いエントリー位置を示すから、このエントリー位置からストリーム解析を開始すれば、ランダムアクセス位置にあたるPESパケットに辿りつくことができる。
【0137】
図34は、SubClipがPGストリーム、IGストリームである場合の、変数k,h,ランダムアクセス位置の関係を示す図である。本図の第1段目は、EP_mapを構成するPTS_EP_Highを示し、第2段目はEP_mapを構成するPTS_EP_Lowを示す。第3段目はTSパケット列を示す。本図においてkは、ランダムアクセス位置を越える最小のPTS_EP_Highを示すものであり、hはランダムアクセス位置を越える最小のPTS_EP_Lowを示すものである。
【0138】
1つ前のPTS_EP_High(k-1)と、1つ前のPTS_EP_Low(h-1)との組みが、ランダムアクセス位置に最も近いエントリー時刻を示すことになる。
これらPTS_EP_High、PTS_EP_Lowの組みに対応する、SPN_EP_High、SPN_EP_Lowの組みが、ランダムアクセス位置に最も近いエントリー位置を示すから、このエントリー位置から、機能セグメントの読み出しを開始すれば、完結した機能セグメントからなるDisplay Setを、読み出すことができる。
【0139】
以上のように本実施形態によれば、SubClipに対応するEP_mapには、EP_stream_typeが設けられているので、再生装置は、Out-of-MUXストリームのEP_mapが、ある決まった時間間隔をもったものか、又は、独立した再生単位のアドレスを指示したものであるかを知得することができる。Out-of-MUXストリーム側のEP_mapの特性がどういったものであるかを知得することができるので、高速なランダムアクセスが可能か否かを即座に判定することができる。MainClipと、SubClipとの同期を図ったとしても、レスポンス低下を伴うことはないので、MainPath+SubPathからなるプレイリストに対する飛込再生を、MainPath単体に対する飛込再生と同程度のレスポンス性で実現することができる。
【0140】
(第2実施形態)
Picture in Picture(PiP)再生を実現する場合の改良に関する。PiP再生とは、PlayList情報のMainPath情報により、動画像を構成するMainClipが指定されており、PlayList情報のSubPlayItem情報により、別の動画像を構成するSubClipが指定されている場合、前者の動画像(Primary Video)と、後者の動画像(Secondary Video)とを、同じ画面内に表示するこという。
【0141】
図35は、PiP再生の一例を示す図である。本図において、所定の時点tpが到達するまでは、Primary Videoのみが再生されている。そして時点tpに到達してからは、Primary Videoに、Secondary Videoがはめ込まれた映像が再生されていることがわかる。ここでPrimary Videoは、HD画像の再生映像であり、“Secondary Video”は、SD画像である。
ここでSecondary Videoは、監督や出演者のみが登場している動画像であり、Primary Videoにおける映像内容を指さすような演技を行っているものとする。かかる動画像がSecondary Videoであるなら、かかるSecondary Videoの映像内容を、Primary Videoの映像内容と組み合わせることにより、映画作品本編の再生映像の中身を、監督や出演者が指さして、解説しているような、楽しい画面演出を実現することができる。
【0142】
図36(a)は、HD画像と、SD画像とを対比して示す図である。
HD画像は、1920×1080という解像度を有し、フィルム素材同様、3750(もしくは3753か3754)クロックのフレーム間隔を有する。
SD画像は、720×480という解像度を有し、NTSC素材同様、1501クロックの表示間隔、又は、PAL素材同様、1800クロックのフレーム間隔を有する。
【0143】
本図に示すように、SD画像の解像度は、HD画像の解像度の約1/4程度なので、HD画像たるPrimary Videoと、SD画像たるSecondary Videoとを同じ画面上に表示すると、Secondary Videoは、Primary Videoに対し、約1/4程度の大きさになる。図36(b)は、Secondary Videoがどのように拡大・縮小されるかを示す図である。Secondary Videoの拡大・縮小は、Scalling Factorに従ってなされる。このScalling Factorは、縦1/4倍、縦1/2倍、縦1.5倍、縦2倍といった倍率で与えられる。再生装置は、このScalling Factorに従い、Secondary Videoを縦方向に拡大・縮小を行う。また、横方向に対しても、SD画像の元々のアスペクト比を維持するように、拡大・縮小を行う。
【0144】
こうした拡大・縮小により、PiP再生を行うにあたっての、Secondary Videoのレイアウトを自由に変化させることができる。
以上のようなPiP再生アプリケーションを構成する場合の、記録媒体、再生装置の構成について説明する。本実施形態において、BD-ROMに記録されたAVClipは、上述したPrimary Videoを構成するものとする。Primary Videoはサイズが大きいので、大容量メディアによる頒布が最適であるという理由による。一方、Secondary Videoを構成するSubClipや、Primary Videoと、Secondary Videoとの同期を規定するようなPlayList情報は、ネットワークを通じて再生装置に伝送され、ローカルストレージに記録される。
【0145】
<ローカルストレージ200の構成その1.ファイル構成>
図37は、第2実施形態に係るローカルストレージの記録内容を示す図である。本図は、図11と同様の表記で、ローカルストレージの構成を示している。本図が図11と異なるのは、ローカルストレージに記録されているSubClip(00002.m2ts)が、Secondary Videoストリームであり、Clip情報(00002.clpi)は、このSecondary Videoストリームに対するEP_mapを有している点である。

<ローカルストレージ200の構成その2.Clip情報>
図38は、第2実施形態において、ローカルストレージに記録されているClip情報の内部構成を示す図である。このClip情報は、Secondary Videoストリームに対するClip情報である。図中の引き出し線cu2,cu3,cu4,cu5は、このClip情報におけるEP_mapの内部構成をクローズアップしている。
【0146】
これらの引き出し線に示すEP_mapは、図8に示したものと同一構成であり、Secondary Videoに対するEP_mapは、Secondary Videoストリームを構成する個々のアクセスユニット(GOP)の先頭をエントリー位置として、エントリー時刻と対応づけて示している。Secondary Videoであるとはいえ、このEP_mapは、動画像を対象としたものだから、エントリー時刻同士の時間間隔は1秒未満であり、EP_stream_typeは、図8同様、“1:Video Type”に設定されている。
【0147】
引き出し線ct1,ct2は、Clip Infoの内部構成をクローズアップしている。Clip Infoの内部構成においてApplication Typeは、Clip情報に対応するSubClipが、“映像付きの追加コンテンツ(TS for additional content with video)”であることを示している。図39は、Secondary Videoストリームに対して設定されたEP_mapを、図9と同様の表記で示した図である。
【0148】
以上が第2実施形態に係る、Clip情報についての説明である。

<ローカルストレージの構成その3.PlayList情報>
続いて第2実施形態に係るPlayList情報について説明する。ここでPiP再生には、静的な同期にて構成されるものと、動的な同期にて構成されるものがある。先程述べたような、映画作品本編たるPrimary Videoと、コメンタリ映像たるSecondary VideoとからなるPiP再生アプリケーションは、前者の静的なPiP再生により構成される。
【0149】
<PlayList情報の詳細その1.静的PiPを実現するための構成要素>
図40は、静的なPiP再生を定義するPlayList情報を示す図である。静的な同期によるPiP再生を定義するPlayList情報は、その内部に複数のSubPath情報を定義することができ(Multi-SubPath)、また個々のSubPath情報内に、複数のSubPlayItem情報(Multi-SubPlayItem)を定義することができる。
【0150】
本図におけるSubPlayItem情報には、PiP_Position、PiP_Sizeという情報要素が新規に追加され、各情報要素は以下のように設定される。
SubPlayItem情報の“Clip_information_file_name”には、Primary VideoたるAVClipのファイル名を記述することができる。
“Sub_PlayItem_In_time”は、Secondary VideoたるSubClipの時間軸のうち、Sub PlayItemの開始時点となる再生時点を示す。
【0151】
“Sub_PlayItem_Out_time”は、Secondary VideoたるSubClipの時間軸のうち、Sub PlayItemの終了時点となる再生時点を示す。
“Sync_PlayItem_Id”には、Primary VideoたるAVClipに対して定義されている、PlayItemの識別子が記述される。
“Sync_Start_Pts_of_PlayItem”は、時間情報であり、Sync_PlayItem_Idにて指定されたPlayItemの再生時において、PlayItem再生開始から、何秒経過した後に、SubPlayItem情報にて規定された再生区間(SubPlayItem)の再生を開始するかを示す。
【0152】
“PiP_Position”は、Primary Video再生のための画面プレーン上のX座標、Y座標を用いて、Secondary Videoの再生映像が配置されるべき位置を示す。
“PiP_Size”は、Secondary Video再生映像の縦サイズ、横サイズを示す。

<PlayList情報の詳細その2.静的PiPにおける同期>
図41は、PlayList情報により、Primary VideoたるMainClipと、Secondary VideoたるSubClipとの同期がどのように定義されるかを、図25、図26と同様の表記で示した図である。
【0153】
Secondary VideoたるSubClipには、EP_mapが設けられており、1秒未満といった時間精度で、高速なランダムアクセスが行えることが保証されている。ランダムアクセスが高速になされることを前提にして、PlayList情報により、Primary VideoたるMainClipと、Secondary VideoたるSubClipとの同期が規定されている。
ここで、Secondary VideoたるSubClipに、EP_mapを設けておくことの技術的意義について説明する。Secondary VideoたるSubClipに、EP_mapを設けておくのは、Primary Videoが特殊再生されている場合に、Secondary Videoに対しても、同様の特殊再生を行うためである。PiP再生において、Primary Videoを特殊再生しようとする場合、Secondary Videoをどのように扱うかが問題になる。ここでPrimary Video側を早送り・巻戻しした場合、Primary Videoの再生に拘らず、Secondary Video側は、通常再生を継続することも考えられる。しかしこの場合、Primary Video側のデコーダと、Secondary Video側のデコーダとを再生装置に設けて、これらを別々のシステムタイムクロック(STC)で動作させることが必要になる。家電機器を前提にしたプレーヤモデルにおいて、STCを2つ設けることは、先ず不可能である。
【0154】
Primary Video側の早送り・巻戻しに伴い、Secondary Videoも同様に早送り・巻戻しするという同期処理の実現が、現実的であるから、SubClipにEP_mapを設け、Primary Videoに対して早送り・巻戻しを行う際、Secondary Videoに対しても、早送り・巻戻しを行うようにしている。
以上が、静的な同期を前提にした、PlayList情報についての説明である。

<PlayList情報の詳細その3.動的な同期によるPiP再生>
続いて動的な同期を前提したPlayList情報について説明する。
【0155】
動的な同期とは、Secondary Videoストリーム(SubClip)に対応するSubPlayItemの再生を、Primary Videoストリーム(MainClip)に対応するPlayItemの時間軸上のどの時点で開始させるかが、ユーザ操作により動的に変化することをいう。制作者が構想しているアプリケーションイメージは、以下のようなものである。図42(a)〜(c)は、動的な同期を前提にした、アプリケーションを示す図である。
【0156】
このアプリケーションのうち、Primary Videoの映像内容は、図42(a)のようなものである。図42(a)に示した個々のボタンは、動画像のサムネールの絵柄をもつボタン(サムネールボタン)であり、ノーマル状態、セレクテッド状態、アクティブ状態という3つの状態をもつ。そして、これらのサムネールボタンのどれかがセレクテッド状態になった際(図42(b))、このセレクテッド状態になったサムネールの代わりに、Secondary Videoの再生映像をはめ込んで再生させたい(図42(c))との構想を、制作者が抱いているものとする。本例のアプリケーションのように、再生時のユーザによって、Secondary Video再生の開始時点が変化するのが、“動的な同期”である。そして、この図42(b)の一例において、何れかのサムネールをセレクテッド状態にする操作(この場合、ボタンの選択操作になる)をロック操作という。
【0157】
動的な同期において、どのサムネールに対応するSecondary Videoを再生させるかは、再生時までわからず、またPrimary Videoの再生時において、Secondary Videoの同期時点を、動的に定める必要がある。

<PlayList情報の詳細その4.動的PiPを実現するための構成要素>
図43は、動的な同期を前提にしたPiP再生を定義する、PlayList情報の内部構成構成を示す図である。
【0158】
動的同期によるPiP再生を定義するPlayList情報は、その内部に複数のSubPath情報を定義することができる(Multi-SubPath)。しかし個々のSubPath情報内には、1つのSubPlayItem情報しか、定義することができない(Single-SubPlayItem)。
本図におけるSubPlayItem情報には、図40同様、PiP_Position、PiP_Sizeという情報要素を有する。このうち、SubPlayItem情報のClip_information_file_name、SubPalyItem_In_time、SubPalyItem_Out_time、Sync_PlayItem_Id、PiP_Position、PiP_Sizeに対する設定は、図40と同様である。異なるのは、Sync_Start_Pts_of_PlayItemの設定である。
【0159】
“Sync_Start_Pts_of_PlayItem”は、不定値が設定されている。この不定値は、Sync_PlayItem_Idにて指定されたPlayItemの時間軸において、ユーザによりロック操作がなされた時点を、Sync_PlayItem_Idにて指定されたPlayItemとの同期時点に定める旨を示す。
この図43のPlayList情報を再生装置が参照した際、サムネールボタンが、セレクテッド状態になり、自動的にアクティブ状態になった時点における再生経過時を、ロック操作の時点としてSync_Start_PTS_of_PlayItemに書き込むよう再生装置が動作すれば、サムネールがアクティブ状態になった時点から、Secondary Videoの再生は開始することになる。この手順は、サムネールボタンの選択・自動確定時のみを行うべき手順、つまりサムネールボタンに特化したものなので、サムネールボタン固有の制御を規定する、ナビコマンドを用いて記述するのが望ましい。
【0160】
以上が、動的同期によるPiP再生を実現する、PlayList情報の内部構成である。以上で、本実施形態に係る記録媒体の改良についての説明を終える。
続いて本実施形態に係る再生装置の改良について説明する。

<再生装置の構成その1.全体構成>
図44は、第2実施形態に係る再生装置の内部構成を示す図である。本図は、紙面の都合から、オーディオデコーダに係る構成要素を省略している。
【0161】
本図は、図29に示した再生装置の構成図をベースにしており、共通の構成要素については、同じ参照符号を付している。こうした共通の構成要素のうち、Transport Buffer5、Multiplexed Buffer6、Coded Picture Buffer7、ビデオデコーダ8、Decoded Picture Buffer10、Primary Videoプレーン11は、第2実施形態において、Primary Videoストリームのデコードを行うという役割を果たす。
【0162】
一方、Secondary Videoストリームのデコードを行うべく、図44に係る再生装置のハードウェア構成には、Transport Buffer51、Multiplexed Buffer52、Coded Picture Buffer53、ビデオデコーダ54、Decoded Picture Buffer55、Secondary Videoプレーン56、スケーラ57、合成部58が設けられている。以降、新規に追加された、これらの構成要素を説明する。

<再生装置300の構成その2.ハードウェア構成に追加された構成要素>
Transport Buffer(TB)51は、Secondary Videoストリーム(SubClip)に帰属するTSパケットがPIDフィルタ35から出力された際、一旦蓄積されるバッファである。
【0163】
Multiplexed Buffer(MB)52は、Transport Buffer51からCoded Picture Buffer53にSecondary Videoストリームを出力するにあたって、一旦PESパケットを蓄積しておくためのバッファである。
Coded Picture Buffer(CPB)53は、符号化状態にあるピクチャ(Iピクチャ、Bピクチャ、Pピクチャ)が格納されるバッファである。
【0164】
ビデオデコーダ54は、Secondary Videoストリームの個々のフレーム画像を所定の復号時刻(DTS)ごとにデコードすることにより複数フレーム画像を得て、Decoded Picture Buffer55に書き込む。
Decoded Picture Buffer55は、復号されたピクチャが書き込まれるバッファである。
Secondary Videoプレーン56は、Secondary Videoをデコードすることにより得られる再生映像を格納する。
【0165】
Scaller57は、SubPlayItem情報のPiP_Sizeに示される縦・横の大きさに基づき、Secondary Videoプレーン56上に得られた再生映像を拡大又は縮小する。
合成部58は、Scaller57によりされた拡大又は縮小された再生映像と、ビデオデコーダにより得られた再生映像とを合成することでPiP再生を実現する。合成部58によるPrimary Videoの再生映像と、Secondary Videoの再生映像との合成は、SubPlayItem情報にて規定されている、PiP_Positionに従ってなされる。こうすることにより、Primary Videoの再生映像と、Secondary Videoの再生映像とが合成された合成映像が再生されることになる。この合成部58による合成では、クロマキー合成、レイヤ合成等が可能であり、Secondary Videoにおける背景を取り除き、人物部分を抜き出した上で、Primary Videoの再生映像に合成することも可能である。
【0166】
以上の構成要素が追加されたので、第2実施形態においてPIDフィルタ35は、Secondary Videoストリームを構成するTSパケットを、Transport Buffer51〜Secondary Videoプレーン56に供給する。以上が、再生装置におけるハードウェア構成要素である。

<再生装置300の構成その2.制御部45に追加された構成要素>
制御部45には、機能的な構成要素としてSync設定部50が設定されている。
【0167】
Sync設定部50は、SubPlayItem情報におけるSync_Start_PTS_of_PlayItemが不定値であるか否かを判定して、不定値である場合、MainClipのうち、PlayItem情報で指定された再生区間のみが再生されている状態において、同期区間の開始点を定める操作(ロック操作)を受け付ける。この受け付けは、リモコンを介してなされる。ロック操作を受け付けると、ロック操作の時点を示す時間情報を用いて、SubPlayItem情報のSync_Start_PTS_of_PlayItemにおける不定値を上書きする。ここでロック操作が、MainClipの再生映像上に現れた何れかのボタンを選択する操作で実現される場合、当該ボタンの選択操作がなされた時点をロック操作の時点とする。
【0168】
このようにしてSync_Start_PTS_of_PlayItemが設定されれば、Primary Videoに対して設定されたPlayItemと、Secondary Videoに対して設定されたSubPlayItemとを再生するようPL再生制御部48が再生制御を行うことにより、動的な同期によるPiP再生を実現することができる。
無論、Sync_Start_PTS_of_PlayItemとして、時間情報が静的に設定されている場合、Primary Videoに対して設定されたPlayItemと、Secondary Videoに対して設定されたSubPlayItemとを再生するようPL再生制御部48が再生制御を行うことにより、静的な同期によるPiP再生を実現することができる。
【0169】

<再生装置の構成その2.ソフトウェア実装>
以上が第2実施形態にかかる構成要素についての説明である。続いて、ソフトウェア実装における第2実施形態の改良点について説明する。
図45は、PlayItem時間軸上の任意の座標からの飛込再生を行う場合の制御手順を示すフローチャートである。本フローチャートは、図30のフローチャートをベースにして作成されている。本図は、ステップS4〜ステップS8が、ステップS31〜S35に置き換えられている点を除き、図30と同一である。ステップS31においてSubClipのEP_mapにおけるEP_stream_typeがVideo Typeであるか否かを判定する。SubClipのEP_mapにおけるEP_stream_typeが、Video Tyte:1であれば(ステップS31でyes)、PlayItem時間軸におけるOffsetαを、SubPlayItem時間軸におけるOffsetβ(=Offsetα−Sync_Start_Pts_of_PlayItem)に変換し(ステップS32)、Offsetβを、SubClip時間軸上の座標(SubPlayItem_In_time+Offsetβ)に変換する(ステップS33)。そしてEP_mapを用いて、SubPlayItem_In_time+Offsetβを、Secondary VideoたるSubClipのGOPのアドレスβに変換し(ステップS34)、BD-ROMにおけるアドレスαからの、Primary VideoのGOPの読み出しと、ローカルストレージ200におけるアドレスβからの、Secondary VideoのGOPの読み出しとを同時に実行する(ステップS35)。
【0170】
ステップS31において、SubClipのEP_mapにおけるEP_stream_typeが、Video Tyte:1でないなら、図30のステップS4〜ステップS8を実行する。
図46は、MainClipに対するランダムアクセスと、SubClipに対するランダムアクセスとを、図31と同様の表記で描いた図である。Secondary VideoたるSubClipには、1秒未満の時間間隔でエントリー位置が指定されており、これを用いて、SubClipに対するランダムアクセスが行われる。SubClipに対するランダムアクセスが、MainClipに対するランダムアクセスと、同程度の処理速度をもって行われるので、MainClipに対して飛び込み再生を行い、それと共に、SubClipに対しても飛び込み再生を行うという、飛び込み再生の同期を実現することができる。
【0171】
以上のように本実施形態によれば、HD画像たるPrimary Videoに、SD画像たるSecondary Videoを組み合わせて、再生に供するというPiP再生においても、ランダムアクセスの高速化を実現することができ、この高速化を前提にて、PiP再生を、特殊再生で再生してゆくことが可能になる。
(備考)
以上の説明は、本発明の全ての実施行為の形態を示している訳ではない。下記(A)(B)(C)(D)・・・・・の変更を施した実施行為の形態によっても、本発明の実施は可能となる。本願の請求項に係る各発明は、以上に記載した複数の実施形態及びそれらの変形形態を拡張した記載、ないし、一般化した記載としている。拡張ないし一般化の程度は、本発明の技術分野の、出願当時の技術水準の特性に基づく。
【0172】
(A)各実施形態に示したフローチャートや、機能的な構成要素による情報処理は、ハードウェア資源を用いて具体的に実現されていることから、自然法則を利用した技術的思想の創作といえ、“プログラムの発明”としての成立要件を満たす。
・本発明に係るプログラムの生産形態
本発明に係るプログラムは、以下のようにして作ることができる。先ず初めに、ソフトウェア開発者は、プログラミング言語を用いて、各フローチャートや、機能的な構成要素を実現するようなソースプログラムを記述する。この記述にあたって、ソフトウェア開発者は、プログラミング言語の構文に従い、クラス構造体や変数、配列変数、外部関数のコールを用いて、各フローチャートや、機能的な構成要素を具現するソースプログラムを記述する。
【0173】
具体的には、フローチャートにおける繰り返し処理は、上記構文に規定されたfor文等を用いて記述する。判定処理は、上記構文に規定されたif文,swith文等を用いて記述する。デコーダに対する再生制御や、ドライブ装置のアクセス制御等、ハードウェアについての制御は、ハードウェアの製造元から供給される外部関数を呼び出すことにより、記述する。
【0174】
記述されたソースプログラムは、ファイルとしてコンパイラに与えられる。コンパイラは、これらのソースプログラムを翻訳してオブジェクトプログラムを生成する。
コンパイラによる翻訳は、構文解析、最適化、資源割付、コード生成といった過程からなる。構文解析では、ソースプログラムの字句解析、構文解析および意味解析を行い、ソースプログラムを中間プログラムに変換する。最適化では、中間プログラムに対して、基本ブロック化、制御フロー解析、データフロー解析という作業を行う。資源割付では、ターゲットとなるプロセッサの命令セットへの適合を図るため、中間プログラム中の変数をターゲットとなるプロセッサのプロセッサが有しているレジスタまたはメモリに割り付ける。コード生成では、中間プログラム内の各中間命令を、プログラムコードに変換し、オブジェクトプログラムを得る。
【0175】
ここで生成されたオブジェクトプログラムは、各実施形態に示したフローチャートの各ステップや、機能的構成要素の個々の手順を、コンピュータに実行させるような1つ以上のプログラムコードから構成される。ここでプログラムコードは、プロセッサのネィティブコード、JAVA(登録商標)バイトコードというように、様々な種類がある。プログラムコードによる各ステップの実現には、様々な態様がある。外部関数を利用して、各ステップを実現することができる場合、この外部関数をコールするコール文が、プログラムコードになる。また、1つのステップを実現するようなプログラムコードが、別々のオブジェクトプログラムに帰属することもある。命令種が制限されているRISCプロセッサでは、算術演算命令や論理演算命令、分岐命令等を組合せることで、フローチャートの各ステップを実現してもよい。
【0176】
オブジェクトプログラムが生成されるとプログラマはこれらに対してリンカを起動する。リンカはこれらのオブジェクトプログラムや、関連するライブラリプログラムをメモリ空間に割り当て、これらを1つに結合して、ロードモジュールを生成する。こうして生成されるロードモジュールは、コンピュータによる読み取りを前提にしたものであり、各フローチャートに示した処理手順や機能的な構成要素の処理手順を、コンピュータに実行させるものである。以上の処理を経て、本発明に係るプログラムを作ることができる。

(B)本発明に係るプログラムは、以下のようにして使用することができる。
【0177】
(i)組込プログラムとしての使用
本発明に係るプログラムを組込プログラムとして使用する場合、プログラムにあたるロードモジュールを、基本入出力プログラム(BIOS)や、様々なミドルウェア(オペレーションシステム)と共に、命令ROMに書き込む。こうした命令ROMを、制御部に組み込み、CPUに実行させることにより、本発明に係るプログラムを、再生装置の制御プログラムとして使用することができる。
【0178】
(ii)アプリケーションとしての使用
再生装置が、ハードディスク内蔵モデルである場合は、基本入出力プログラム(BIOS)が命令ROMに組み込まれており、様々なミドルウェア(オペレーションシステム)が、ハードディスクにプレインストールされている。また、ハードディスクから、システムを起動するためのブートROMが、再生装置に設けられている。
【0179】
この場合、ロードモジュールのみを、過搬型の記録媒体やネットワークを通じて、再生装置に供給し、1つのアプリケーションとしてハードディスクにインストールする。そうすると、再生装置は、ブートROMによるブートストラップを行い、オペレーションシステムを起動した上で、1つのアプリケーションとして、当該アプリケーションをCPUに実行させ、本発明に係るプログラムを使用する。
【0180】
ハードディスクモデルの再生装置では、本発明のプログラムを1つのアプリケーションとして使用しうるので、本発明に係るプログラムを単体で譲渡したり、貸与したり、ネットワークを通じて供給することができる。

(C)本発明に係るシステムLSIの生産・使用行為
システムLSIとは、高密度基板上にベアチップを実装し、パッケージングしたものをいう。複数個のベアチップを高密度基板上に実装し、パッケージングすることにより、あたかも1つのLSIのような外形構造を複数個のベアチップに持たせたものも、システムLSIに含まれる(このようなシステムLSIは、マルチチップモジュールと呼ばれる。)。
【0181】
ここでパッケージの種別に着目するとシステムLSIには、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)という種別がある。QFPは、パッケージの四側面にピンが取り付けられたシステムLSIである。PGAは、底面全体に、多くのピンが取り付けられたシステムLSIである。
これらのピンは、ドライブ装置との入出力インターフェイス、リモコン装置との入力インターフェイス、テレビとのインターフェイス、その他、IEEE1394インターフェイスやPCIバスとのインターフェイスとしての役割を担っている。システムLSIにおけるピンには、こうしたインターフェイスの役割が存在するので、システムLSIにおけるこれらのピンに、ドライブ装置等や再生装置の各種回路を接続することにより、システムLSIは、再生装置の中核としての役割を果たす。
【0182】
システムLSIにパッケージングされるベアチップとは、各実施形態において内部構成図として示した各構成要素の機能を具現する命令ROMやCPU、デコーダLSI等である。
先に“組込プログラムとしての使用”で述べたように、命令ROMには、プログラムにあたるロードモジュールや、基本入出力プログラム(BIOS)、様々なミドルウェア(オペレーションシステム)が書き込まれる。本実施形態において、特に創作したのは、このプログラムにあたるロードモジュールの部分なので、プログラムにあたるロードモジュールを格納した命令ROMを、ベアチップとしてパッケージングすることにより、本発明に係るシステムLSIは生産することができる。
【0183】
生産手順の詳細は以下のものになる。まず各実施形態に示した構成図を基に、システムLSIとすべき部分の回路図を作成し、回路素子やIC,LSIを用いて、構成図における構成要素を具現化する。
そうして、各構成要素を具現化してゆけば、回路素子やIC,LSI間を接続するバスやその周辺回路、外部とのインターフェイス等を規定する。更には、接続線、電源ライン、グランドライン、クロック信号線等も規定してゆく。この規定にあたって、LSIのスペックを考慮して各構成要素の動作タイミングを調整したり、各構成要素に必要なバンド幅を保証する等の調整を加えながら、回路図を完成させてゆく。
【0184】
回路図が完成すれば、実装設計を行う。実装設計とは、回路設計によって作成された回路図上の部品(回路素子やIC,LSI)を基板上のどこへ配置するか、あるいは、回路図上の接続線を、基板上にどのように配線するかを決定する基板レイアウトの作成作業である。
ここで実装設計は、自動配置と、自動配線とからなる。
CAD装置を利用する場合、この自動配置は、“重心法”と呼ばれる専用のアルゴリズムを用いて実現することができる。自動配線は、回路図上の部品のピン同士を接続するような接続線を、金属箔やビアを用いて規定する。CAD装置を利用する場合、この配線処理は、“メーズ法”“ラインサーチ法”と呼ばれる専用のアルゴリズムを用いて実現することができる。
【0185】
こうして実装設計が行われ、基板上のレイアウトが確定すれば、実装設計結果をCAMデータに変換して、NC工作機械等の設備に出力する。NC工作機械は、このCAMデータを基に、SoC実装やSiP実装を行う。SoC(System on chip)実装とは、1チップ上に複数の回路を焼き付ける技術である。SiP(System in Package)実装とは、複数チップを樹脂等で1パッケージにする技術である。以上の過程を経て、本発明に係るシステムLSIは、各実施形態に示した再生装置の内部構成図を基に作ることができる。
【0186】
尚、上述のようにして生成される集積回路は、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。
さらに、各再生装置の構成要素の一部又は全てを1つのチップとして構成してもよい。集積回路化は、上述したSoC実装,SiP実装に限るものではなく、専用回路又は汎用プロセスで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なシリコンフィギュラブル・プロセッサを利用することが考えられる。更には、半導体技術の進歩又は派生する技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積回路化を行っても良い。例えば、バイオ技術の適応などが可能性としてありうる。
【0187】
(D)全ての実施形態では、本発明に係る記録媒体を、ハードディスクとして説明したが、本発明の記録媒体は、記録されるEP_mapやEP_stream_typeに特徴があり、この特徴は、ハードディスクの物理的性質に依存するものではない。EP_mapやEP_stream_typeを記録し、BD-ROMと共に用いられる記録媒体なら、どのような記録媒体であってもよい。例えば、コンパクトフラッシュ(登録商標)カード、スマートメディア、メモリスティック、マルチメディアカード、PCM-CIAカード等の半導体メモリカードであってもよい。フレキシブルディスク、SuperDisk,Zip,Clik!等の磁気記録ディスク(i)、ORB,Jaz,SparQ,SyJet,EZFley,マイクロドライブ等のリムーバブルハードディスクドライブ(ii)であってもよい。
【0188】
(E)各実施形態におけるデジタルストリームは、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方式であってもよい。
【0189】
(F)各実施形態ではMPEG4-AVC(H.264やJVTとも呼ばれる)をもとに説明したが、MPEG2ビデオストリームであってもよく、また、その他の形式(VC-1等)の画像の場合でも単独でデコード可能な画像であれば、容易に応用可能である。
(G)Sync設定部50によりSync_Start_PTS_of_PlayItemが設定された場合、Sync設定部50は、図47(a)〜(c)のような再生制御を行うことが望ましい。
【0190】
図47(a)は、動的同期によるPiP再生を実現する場合の再生制御を示す図である。PlayItem時間軸の任意の一時点を、SubPlayItemの同期時点に定める。従って現在の再生時点が、Sync_Start_PTS_of_PlayItemに規定された時点に到達すれば、Secondary Videoのデコードを開始して、Secondary Videoの再生映像を、Primary Videoの再生映像に合成させる。
【0191】
図47(b)は、通常再生によるロック点の通過→巻戻しによるロック点の通過→通常再生によるロック点の通過がなされて、ロック点の行き来が生じた場合、動的な同期によるPiP再生がどのように行われるかを示す図である。つまり、現在の再生時点がロック点を通過した後、ユーザが巻戻しを行い、ロック点前まで戻って、再びロック点を通過した場合の、動的同期によるPiP再生を示している。
【0192】
ロック点の通過により、PiP再生を開始するが、巻戻しがなされた時点で、PiP再生をやめる。以降通常再生がなされ、再びロック点を通過した後も、PiP再生は行わない。
図47(c)は、Primary Videoの再生区間の末尾より、Secondary Videoの再生区間が後である場合の、PiP再生を示す図である。この場合、Secondary Videoの再生が終わるまで、Primary Videoの最後のピクチャの表示を継続すれば良い。Primary Videoの再生が終わった時点で、Secondary Videoの再生を終えてもよい。
【0193】
(H)PiP再生におけるSecondary Videoの再生位置を、細かい時間間隔で変化させない場合、多くの時間情報や位置情報を、PlayList情報に定義しておく必要がある。この場合、PlayList情報に、BD-RE規格に規定されたUser Private情報や複数のPLMark情報を設け、これらの情報に、PiP_Positionや、PiP_Sizeを定義するのが望ましい。そしてScaller57や合成部58は、これらUser Private情報や複数のPLMark情報に基づき、拡大・縮小処理や合成処理を行うのが望ましい。
【0194】
(I)PlayList情報のMainPath情報により指定されたMainClipたるPrimary Videoと、PlayList情報のSubPlayItem情報により指定されたSubClipたるSecondary Videoとを、一画面ではなく、別々の画面で表示するようにしてもよい。また、Primary VideoをSD画像で構成し、Secondary VideoをHD画像で構成してもよい。
(J)第2実施形態においてPrimary VideoたるMainClipは、BD-ROMにて供給され、Secondary VideoたるSubClipはローカルストレージ200にて供給されるとしたが、Secondary VideoたるSubClipは、BD-ROMに記録され、Primary VideoたるMainClipと共に、再生装置に供給されるとしてもよい。
【0195】
またSecondary Videoストリームと、Primary Videoストリームとは、1つのAVClipに多重化されていてもよい。
【産業上の利用可能性】
【0196】
本発明に係る記録媒体及び再生装置は、ホームシアターシステムでの利用のように、個人的な用途で利用されることがありうる。しかし本発明は、上記実施形態に内部構成が開示されており、この内部構成に基づき量産することが明らかであるので、本発明に係る記録媒体及び再生装置は、工業製品の生産分野において生産し、又は、使用することができる。このことから本発明に係る記録媒体及び再生装置は、産業上の利用可能性を有する。
【図面の簡単な説明】
【0197】
【図1】本発明に係る記録媒体が使用される形態を示す図である。
【図2】BD-ROMの内部構成を示す図である。
【図3】拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。
【図4】MainClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す図である。
【図5】映画に用いられるビデオストリームの内部構成を示す図である。
【図6】(a)IDRピクチャの内部構成を示す図である。 (b)Non-IDR Iピクチャの内部構成を示す。 (c)Non-IDR Iピクチャにおける依存関係を示す。
【図7】IDRピクチャ、Non-IDR IピクチャがTSパケットに変換される過程を示す図である。
【図8】Clip情報の内部構成を示す図である。
【図9】映画のビデオストリーム(application_type=1)に対するEP_map設定を示す図である。
【図10】図9におけるEntry Point#1〜Entry Point#7のPTS_EP_start、SPN_EP_startを、EP_Low、EP_Highの組みで表現したものである。
【図11】ローカルストレージの内部構成を示す図である。
【図12】Primaryオーディオストリーム及びSecondaryオーディオストリームの内部構成を示す図である。
【図13】PGストリームの内部構成を示す図である。
【図14】IGストリームの内部構成を示す図である。
【図15】ローカルストレージ側のClip情報のデータ構造を示す図である。
【図16】Primaryオーディオストリーム、Secondaryオーディオストリームに対して生成されるEP_mapを示す図である。
【図17】PGストリーム時間軸に対して設定されたEP_mapを示す図である。
【図18】IGストリーム時間軸に対して設定されたEP_mapを示す図である。
【図19】PlayList情報のデータ構造を示す図である。
【図20】AVClipと、PlayList情報との関係を示す図である。
【図21】PlayList情報の、PlayListMark情報の内部構成を示す図である。
【図22】PlayList情報の、PlayListMark情報によるチャプター位置の指定を示す図である。
【図23】Subpath情報の内部構成をクローズアップして示す図である。
【図24】ローカルストレージ上のSubClipと、ローカルストレージ上のPlayList情報と、BD-ROM上のMainClipとの対応を示す図である。
【図25】MainClipに対して設定されたEP_map及びPlayItem時間軸と、Primaryオーディオストリーム、SecondaryオーディオストリームとなるSubClipに対し設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
【図26】MainClipに対して設定されたEP_map及びPlayItem時間軸と、PGストリーム、IGストリームとなるSubClipに対し設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
【図27】SubPlayItemのSubPath_typeと、application_typeと、EP_stream_typeとの対応関係を表形式に示す図である。
【図28】再生装置300により生成されるバーチャルファイルシステムを示す図である。
【図29】本発明に係る再生装置の内部構成を示す図である。
【図30】飛込再生の処理手順を示すフローチャートである。
【図31】図25のように設定されたEP_mapを用いてランダムアクセス位置をどのように特定するかを模式的に示した図である。
【図32】MainClip、SubClip上の座標TMを、アドレスに変換する処理の処理手順を示すフローチャートである。
【図33】SubClipがPrimaryオーディオストリーム、Secondaryオーディオストリームである場合の、変数k,h,ランダムアクセス位置の関係を示す図である。
【図34】SubClipがPGストリーム、IGストリームである場合の、変数k,h,ランダムアクセス位置の関係を示す図である。
【図35】PiP再生の一例を示す図である。
【図36】(a)HD画像と、SD画像とを対比して示す図である。 (b)Secondary Videoがどのように拡大・縮小されるかを示す図である。
【図37】第2実施形態に係るローカルストレージの記録内容を示す図である。
【図38】第2実施形態において、ローカルストレージに記録されているClip情報の内部構成を示す図である。
【図39】Secondary Videoストリームに対して設定されたEP_mapを、図9と同様の表記で示した図である。
【図40】静的なPiP再生を構成する、同期型アプリケーションを定義するPlayList情報を示す図である。
【図41】PlayList情報により、Primary VideoたるMainClipと、Secondary VideoたるSubClipとの同期がどのように定義されるかを、図25、図26と同様の表記で示した図である。
【図42】(a)〜(c)動的な同期を前提にした、アプリケーションを示す図である。
【図43】動的な同期を前提にしたPiP再生を定義する、PlayList情報の内部構成を示す図である。
【図44】第2実施形態に係る再生装置の内部構成を示す図である。
【図45】PL再生を行うにあたっての処理手順を示すフローチャートである。
【図46】MainClipに対するランダムアクセスと、SubClipに対するランダムアクセスとを、図31と同様の表記で描いた図である。
【図47】(a)動的同期によるPiP再生を実現する場合の再生制御を示す図である。 (b)通常再生によるロック点の通過→巻戻しによるロック点の通過→通常再生によるロック点の通過がなされて、ロック点の行き来が生じた場合、動的な同期によるPiP再生がどのように行われるかを示す図である。 (c)Primary Videoの再生区間の末尾より、Secondary Videoの再生区間が後である場合の、PiP再生を示す図である。
【符号の説明】
【0198】
1 BDドライブ
2 Arrival time Clock Counter
3 Source de-packetetizer
4 PID Filter
5 Transport Buffer
6 Multiplexed Buffer
7 Coded Picture Buffer
8 ビデオデコーダ
10 Decoded Picture Buffer
11 ビデオプレーン
12 Transport Buffer
13 Coded Data Buffer
14 Stream Graphics Processor
15 Object Buffer
16 Composition Buffer
17 Composition Controller
18 Presentation Graphicsプレーン
19 CLUT部
20 Transport Buffer
21 Coded Data Buffer
22 Stream Graphics Processor
23 Object Buffer
24 Composition Buffer
25 Composition Controller
26 Intaractive Graphicsプレーン
27 CLUT部
28 合成部
29 合成部
30 スイッチ
31 Network Device
32 スイッチ
33 Arrival Time Clock Counter
34 Source De-Packetizer
35 PIDフィルタ
36 スイッチ
37 Transport Buffer
38 Elementary Buffer
39 オーディオデコーダ
40 Transport Buffer
41 バッファ
42 オーディオデコーダ
43 ミキサー
44 シナリオメモリ
45 制御部
46 メイン変換部
47 サブ変換部
48 PL再生制御部
49 PSRセット

【特許請求の範囲】
【請求項1】
主たる再生区間が定義されたメインストリームと、従たる再生区間が定義されたサブストリームとに対して、特殊再生を実行する再生装置であって、
主たる再生区間及び従たる再生区間は、プレイリスト情報に定義されており、
プレイリスト情報は同期情報を含み、同期情報は、
主たる再生区間の時間軸のうち、従たる再生区間を同期させるべき、同期時点を示す時間情報を含み、
前記時間情報は、
不定値に設定されることで、メインストリームにおける主たる再生区間の再生時に、メインストリームの再生映像上に現れた何れかのボタン画像を選択するロック操作をユーザが行った時点を同期時点とすることを示し、
サブストリームにはエントリーマップが対応づけられており、
特殊再生を開始すべき再生時点は、主たる再生区間の時間軸において定義されており、
主たる再生区間の時間軸における再生時点を、メインストリームのアドレスに変換する第1変換手段と、
プレイリスト情報における同期情報を用いて、主たる再生区間の時間軸における再生時点を、従たる再生区間の時間軸における再生時点に変換し、サブストリームに対応づけられたエントリーマップを用いて、変換後の再生時点を、サブストリームのアドレスに変換する第2変換手段と、
第1変換手段、第2変換手段により変換されたアドレスから、メインストリーム及びサブストリームを読み出す読出手段と、
読み出されたメインストリーム及びサブストリームを再生する再生手段とを備え、
前記再生装置は、
メインストリームにおける主たる再生区間で指定された部分のみが再生されている状態において、同期区間の開始点を定めるロック操作を受け付けて、かかる開始点を示す時間情報を用いて、同期情報における不定値を上書きする設定手段を備え、
前記メインストリームは、第1の動画像を含むデジタルストリームであり、
前記サブストリームは、第2の動画像を含むデジタルストリームであり、
前記再生手段は、
メインストリームをデコードして第1の動画像を得る第1デコーダと、
サブストリームをデコードして第2の動画像を得る第2デコーダとを備え、
前記再生装置は、さらに、
第1デコーダにより得られた再生映像における前記ロック操作で選択されたボタン画像のある部分に、第2デコーダにより得られた再生映像を合成することで、第1の動画像及び第2の動画像を同一画面に表示する合成手段とを備える
ことを特徴とする再生装置。
【請求項2】
主たる再生区間が定義されたメインストリームと、従たる再生区間が定義されたサブストリームとに対して、特殊再生をコンピュータに実行させるプログラムであって、
主たる再生区間及び従たる再生区間は、プレイリスト情報に定義されており、
プレイリスト情報は同期情報を含み、同期情報は、
主たる再生区間の時間軸のうち、従たる再生区間を同期させるべき、同期時点を示す時間情報を含み、
前記時間情報は、
不定値に設定されることで、メインストリームにおける主たる再生区間の再生時に、メインストリームの再生映像上に現れた何れかのボタン画像を選択するロック操作をユーザが行った時点を同期時点とすることを示し、
サブストリームにはエントリーマップが対応づけられており、
特殊再生を開始すべき再生時点は、主たる再生区間の時間軸において定義されており、
主たる再生区間の時間軸における再生時点を、メインストリームのアドレスに変換する第1変換ステップと、
主たる再生区間の時間軸における再生時点を、従たる再生区間の時間軸における再生時点に変換し、サブストリームに対応づけられたエントリーマップを用いて、変換後の再生時点を、サブストリームのアドレスに変換する第2変換ステップと、
第1変換ステップ、第2変換ステップにより変換されたアドレスから、メインストリーム及びサブストリームを読み出す読出ステップと、
読み出されたメインストリーム及びサブストリームを再生する再生ステップとをコンピュータに実行させ、
前記メインストリームは、第1の動画像を含むデジタルストリームであり、
前記サブストリームは、第2の動画像を含むデジタルストリームであり、
前記再生ステップは、
メインストリームをデコードして第1の動画像を得る第1デコーダと、
サブストリームをデコードして第2の動画像を得る第2デコーダとを用いて再生を行い、
前記プログラムは、さらに、
第1デコーダにより得られた再生映像における前記ロック操作で選択されたボタン画像のある部分に、第2デコーダにより得られた再生映像を合成することで、第1の動画像及び第2の動画像を同一画面に表示するピクチャインピクチャを実現する合成ステップとをコンピュータに実行させる、
ことを特徴とするプログラム。
【請求項3】
主たる再生区間が定義されたメインストリームと、従たる再生区間が定義されたサブストリームとに対して、特殊再生を実行する再生方法であって、
主たる再生区間及び従たる再生区間は、プレイリスト情報に定義されており、
プレイリスト情報は同期情報を含み、同期情報は、
主たる再生区間の時間軸のうち、従たる再生区間を同期させるべき、同期時点を示す時間情報を含み、
前記時間情報は、
不定値に設定されることで、メインストリームにおける主たる再生区間の再生時に、メインストリームの再生映像上に現れた何れかのボタン画像を選択するロック操作をユーザが行った時点を同期時点とすることを示し、
サブストリームにはエントリーマップが対応づけられており、
特殊再生を開始すべき再生時点は、主たる再生区間の時間軸において定義されており、
主たる再生区間の時間軸における再生時点を、メインストリームのアドレスに変換する第1変換ステップと、
主たる再生区間の時間軸における再生時点を、従たる再生区間の時間軸における再生時点に変換し、サブストリームに対応づけられたエントリーマップを用いて、変換後の再生時点を、サブストリームのアドレスに変換する第2変換ステップと、
第1変換ステップ、第2変換ステップにより変換されたアドレスから、メインストリーム及びサブストリームを読み出す読出ステップと、
読み出されたメインストリーム及びサブストリームを再生する再生ステップとをコンピュータに実行させ、
前記メインストリームは、第1の動画像を含むデジタルストリームであり、
前記サブストリームは、第2の動画像を含むデジタルストリームであり、
前記再生ステップは、
メインストリームをデコードして第1の動画像を得る第1デコーダと、
サブストリームをデコードして第2の動画像を得る第2デコーダとを用いて再生を行い、
前記再生方法は、さらに、
第1デコーダにより得られた再生映像における前記ロック操作で選択されたボタン画像のある部分に、第2デコーダにより得られた再生映像を合成することで、第1の動画像及び第2の動画像を同一画面に表示するピクチャインピクチャを実現する合成ステップとを有する、
ことを特徴とする再生方法。
【請求項4】
記録媒体の記録方法であって、
アプリケーションデータを作成するステップと、
作成したデータを記録媒体に記録するステップとを有し、
前記アプリケーションデータは、
プレイリスト情報と、複数のデジタルストリームと、エントリーマップとを含み、
前記プレイリスト情報は、複数デジタルストリームのそれぞれに対し、再生区間を定義する情報であり、メインパス情報、サブパス情報を含み、
前記メインパス情報は、
複数デジタルストリームのうち1つを、メインストリームとして指定して、そのメインストリームに対し、主たる再生区間を定義する情報であり、
前記サブパス情報は、
複数デジタルストリームのうち他の1つを、サブストリームとして指定して、そのサブストリームに対し、前記主たる再生区間と同期すべき、従たる再生区間を定義する情報であり、
前記記録媒体には、
複数のデジタルストリームのうち、サブストリームとして指定されたものが、エントリーマップと対応づけられた形で記録されており、
前記エントリーマップは、
サブストリームの時間軸における複数のエントリー時刻を、サブストリームにおける複数のエントリー位置と対応づけて示し、
前記サブパス情報は、同期情報を含み、
同期情報は、主たる再生区間の時間軸における、同期時点を示す時間情報を有し、
前記時間情報は、
不定値に設定されることで、メインストリームにおける主たる再生区間の再生時に、メインストリームの再生映像上に現れた何れかのボタン画像を選択するロック操作をユーザが行った時点を同期時点とすることを示し、
前記メインストリームは、第1の動画像を構成するものであり、
前記サブストリームは、第2の動画像を構成するものであり、
前記記録媒体が読み込まれた再生装置では、前記プレイリスト情報に従って、前記同期時点において、前記ロック操作で選択されたボタン画像のある部分に第2の動画像の再生映像をはめ込むことで、第1の動画像の再生映像と第2の動画像の再生映像とを同一画面内に再生し、ピクチャインピクチャを実現する
ことを特徴とする記録方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44】
image rotate

【図45】
image rotate

【図46】
image rotate

【図47】
image rotate


【公開番号】特開2009−65681(P2009−65681A)
【公開日】平成21年3月26日(2009.3.26)
【国際特許分類】
【出願番号】特願2008−248525(P2008−248525)
【出願日】平成20年9月26日(2008.9.26)
【分割の表示】特願2006−535848(P2006−535848)の分割
【原出願日】平成17年9月9日(2005.9.9)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】