(57)【要約】      （修正有）【課題】ＢＤ−ＲＯＭにおいて、ピクチャインピクチャの開始と終了を制御する。【解決手段】SubPath情報は、不定値に設定されることで主たる再生区間の再生時にユーザが所定の操作を行った時点を同期時点として設定してピクチャインピクチャを開始すべき旨を再生装置に指示する同期情報と、ピクチャインピクチャ再生中に再生時点がどの時点を経過した場合にピクチャインピクチャを止めるべきかを再生装置に指示する終了点情報とを含む。【選択図】図２５
2008259223.tif 000002
【特許請求の範囲】
【請求項１】
プレイリスト情報が記録された記録媒体であって、
前記プレイリスト情報は、複数デジタルストリームのそれぞれに対し、再生区間を定義する情報であり、メインパス情報、サブパス情報を含み、
前記メインパス情報は、
複数デジタルストリームのうち1つを、メインストリームとして指定して、そのメインストリームに対し、主たる再生区間を定義する情報であり、
前記サブパス情報は、
複数デジタルストリームのうち他の1つを、サブストリームとして指定して、そのサブストリームに対し、前記主たる再生区間と同期すべき、従たる再生区間を定義する情報であり、
前記記録媒体には、
複数のデジタルストリームのうち、サブストリームとして指定されたものが、エントリーマップと対応づけられた形で記録されており、
前記エントリーマップは、
サブストリームの時間軸における複数のエントリー時刻を、サブストリームにおける複数のエントリー位置と対応づけて示し、
前記サブパス情報は、同期情報、終了点情報を含み、
前記同期情報は、不定値に設定されることで、主たる再生区間の再生時に、ユーザが所定の操作を行った時点を同期時点として設定して、ピクチャインピクチャを開始すべき旨を、再生装置に指示する値であり、
終了点情報は、ピクチャインピクチャ再生中であって、現在の再生時点がどの時点を経過した場合、ピクチャインピクチャを止めるべきかを再生装置に指示する情報である
ことを特徴とする記録媒体。
【請求項２】
主たる再生区間が定義されたメインストリームと、従たる再生区間が定義されたサブストリームとに対して、特殊再生を実行する再生装置であって、
主たる再生区間及び従たる再生区間は、プレイリスト情報に定義されており、
プレイリスト情報は同期情報、終了点情報を含み、同期情報は、
主たる再生区間の時間軸のうち、従たる再生区間を同期させるべき、同期時点を示す時間情報を含み、
前記時間情報は、不定値に設定されることで、主たる再生区間の再生時に、ユーザが所定の操作を行った時点を同期時点として設定して、ピクチャインピクチャを開始すべき旨を、再生装置に指示する値であり、
サブストリームにはエントリーマップが対応づけられており、
特殊再生を開始すべき再生時点は、主たる再生区間の時間軸において定義されており、
主たる再生区間の時間軸における再生時点を、メインストリームのアドレスに変換する第１変換手段と、
プレイリスト情報における同期情報を用いて、主たる再生区間の時間軸における再生時点を、従たる再生区間の時間軸における再生時点に変換し、サブストリームに対応づけられたエントリーマップを用いて、変換後の再生時点を、サブストリームのアドレスに変換する第２変換手段と、
第１変換手段、第２変換手段により変換されたアドレスから、メインストリーム及びサブストリームを読み出す読出手段と、
読み出されたメインストリーム及びサブストリームを再生する再生手段とを備え、
前記メインストリームは、第１の動画像を含むデジタルストリームであり、
前記サブストリームは、第２の動画像を含むデジタルストリームであり、
前記再生手段は、
メインストリームをデコードして第１の動画像を得る第１デコーダと、
サブストリームをデコードして第２の動画像を得る第２デコーダとを備え、
前記再生装置は、さらに、
第２デコーダにより得られた再生映像を、第１デコーダにより得られた再生映像と合成することで、第１の動画像及び第２の動画像を同一画面に表示する合成手段とを備え、
前記メインストリームの再生において、前記主たる再生区間における再生位置を示す時間情報が、前記従たる再生区間の終了点情報に示される時点を経過したとき、第１の動画像の再生映像と、第２の動画像の再生映像とを同一画面内に再生することを止める
ことを特徴とする再生装置。
【請求項３】
主たる再生区間が定義されたメインストリームと、従たる再生区間が定義されたサブストリームとに対して、特殊再生をコンピュータに実行させるプログラムであって、
主たる再生区間及び従たる再生区間は、プレイリスト情報に定義されており、
プレイリスト情報は同期情報を含み、終了点情報を含み、同期情報は、
主たる再生区間の時間軸のうち、従たる再生区間を同期させるべき、同期時点を示す時間情報を含み、
前記時間情報は、不定値に設定されることで、主たる再生区間の再生時に、ユーザが所定の操作を行った時点を同期時点として設定して、ピクチャインピクチャを開始すべき旨を、再生装置に指示する値であり、
サブストリームにはエントリーマップが対応づけられており、
特殊再生を開始すべき再生時点は、主たる再生区間の時間軸において定義されており、
主たる再生区間の時間軸における再生時点を、メインストリームのアドレスに変換する第１変換ステップと、
プレイリスト情報における同期情報を用いて、主たる再生区間の時間軸における再生時点を、従たる再生区間の時間軸における再生時点に変換し、サブストリームに対応づけられたエントリーマップを用いて、変換後の再生時点を、サブストリームのアドレスに変換する第２変換ステップと、
第１変換ステップ、第２変換ステップにより変換されたアドレスから、メインストリーム及びサブストリームを読み出す読出ステップと、
読み出されたメインストリーム及びサブストリームを再生する再生ステップとをコンピュータに実行させ、
前記メインストリームは、第１の動画像を含むデジタルストリームであり、
前記サブストリームは、第２の動画像を含むデジタルストリームであり、
前記再生ステップは、
メインストリームをデコードして第１の動画像を得る第１デコーダと、
サブストリームをデコードして第２の動画像を得る第２デコーダとを含み、
前記プログラムは、さらに、
第２デコーダにより得られた再生映像を、第１デコーダにより得られた再生映像と合成することで、第１の動画像及び第２の動画像を同一画面に表示する合成ステップとをコンピュータに実行させ、
前記メインストリームの再生において、前記主たる再生区間における再生位置を示す時間情報が、前記従たる再生区間の終了点情報に示される時点を経過したとき、第１の動画像の再生映像と、第２の動画像の再生映像とを同一画面内に再生することを止める
ことを特徴とするプログラム。
【請求項４】
主たる再生区間が定義されたメインストリームと、従たる再生区間が定義されたサブストリームとに対して、特殊再生を実行する再生方法であって、
主たる再生区間及び従たる再生区間は、プレイリスト情報に定義されており、
プレイリスト情報は同期情報を含み、終了点情報を含み、同期情報は、
主たる再生区間の時間軸のうち、従たる再生区間を同期させるべき、同期時点を示す時間情報を含み、
前記時間情報は、不定値に設定されることで、主たる再生区間の再生時に、ユーザが所定の操作を行った時点を同期時点として設定して、ピクチャインピクチャを開始すべき旨を、再生装置に指示する値であり、
サブストリームにはエントリーマップが対応づけられており、
特殊再生を開始すべき再生時点は、主たる再生区間の時間軸において定義されており、
主たる再生区間の時間軸における再生時点を、メインストリームのアドレスに変換する第１変換ステップと、
プレイリスト情報における同期情報を用いて、主たる再生区間の時間軸における再生時点を、従たる再生区間の時間軸における再生時点に変換し、サブストリームに対応づけられたエントリーマップを用いて、変換後の再生時点を、サブストリームのアドレスに変換する第２変換ステップと、
第１変換ステップ、第２変換ステップにより変換されたアドレスから、メインストリーム及びサブストリームを読み出す読出ステップと、
読み出されたメインストリーム及びサブストリームを再生する再生ステップとを有し、
前記メインストリームは、第１の動画像を含むデジタルストリームであり、
前記サブストリームは、第２の動画像を含むデジタルストリームであり、
前記再生ステップは、
メインストリームをデコードして第１の動画像を得る第１デコーダと、
サブストリームをデコードして第２の動画像を得る第２デコーダとを含み、
前記再生方法は、さらに、
第２デコーダにより得られた再生映像を、第１デコーダにより得られた再生映像と合成することで、第１の動画像及び第２の動画像を同一画面に表示する合成ステップとを有し、
前記メインストリームの再生において、前記主たる再生区間における再生位置を示す時間情報が、前記従たる再生区間の終了点情報に示される時点を経過したとき、第１の動画像の再生映像と、第２の動画像の再生映像とを同一画面内に再生することを止める
ことを特徴とする再生方法。
【請求項５】
記録媒体の記録方法であって、
アプリケーションデータを作成するステップと、
作成したデータを記録媒体に記録するステップとを有し、
前記アプリケーションデータは、
プレイリスト情報と、複数のデジタルストリームと、エントリーマップとを含み、
前記プレイリスト情報は、複数デジタルストリームのそれぞれに対し、再生区間を定義する情報であり、メインパス情報、サブパス情報を含み、
前記メインパス情報は、
複数デジタルストリームのうち1つを、メインストリームとして指定して、そのメインストリームに対し、主たる再生区間を定義する情報であり、
前記サブパス情報は、
複数デジタルストリームのうち他の1つを、サブストリームとして指定して、そのサブストリームに対し、前記主たる再生区間と同期すべき、従たる再生区間を定義する情報であり、
前記記録媒体には、
複数のデジタルストリームのうち、サブストリームとして指定されたものが、エントリーマップと対応づけられた形で記録されており、
前記エントリーマップは、
サブストリームの時間軸における複数のエントリー時刻を、サブストリームにおける複数のエントリー位置と対応づけて示し、
前記サブパス情報は、同期情報、終了点情報を含み、
前記同期情報は、不定値に設定されることで、主たる再生区間の再生時に、ユーザが所定の操作を行った時点を同期時点として設定して、ピクチャインピクチャを開始すべき旨を、再生装置に指示する値であり、
終了点情報は、ピクチャインピクチャ再生中であって、現在の再生時点がどの時点を経過した場合、ピクチャインピクチャを止めるべきかを再生装置に指示する情報である
ことを特徴とする記録方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同期型アプリケーション技術の技術分野に属する発明である。
【背景技術】
【０００２】
同期型アプリケーション技術とは、別々の記録媒体に記録されている複数のデジタルストリームを再生して、これらの同期を規定することにより、あたかも、1つの映画作品が再生されているように、ユーザにみせかける技術である。
同期型アプリケーションを構成するデジタルストリームには、メインストリーム、サブストリームといった類型がある。ここでメインストリームとは、高画質な動画像を含むデジタルストリームをいう。一方サブストリームは、高画質な動画像を含まないデジタルストリームいう。メインストリームは、BD-ROMといった大容量光ディスク上に記録してユーザに供給され、サブストリームはインターネット等を通じてユーザに供給される。
【０００３】
映画作品の構成要素となるデジタルストリームを、別々の供給媒体を用いて、ユーザに供給することができるので、映画作品のバリエーション制作の自由度が増し、1つの映画作品から、様々な再生のバリエーションを、産み出すことができる。
尚、同期型アプリケーション技術については、以下の特許文献に記載された先行技術がある。
【特許文献１】特開2002-247526号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで民生用の家電機器が、上述した同期型アプリケーションを再生の対象にする場合、この同期型アプリケーションに対する特殊再生を、どのように実現するかが、問題になる。特殊再生とは、早送り・巻戻し・チャプタサーチ・タイムサーチといった機能であり、デジタルストリームに対する、“ランダムアクセス”を前提にして実現される。ランダムアクセスとは、デジタルストリームがもつ時間軸上の任意の一時点を、デジタルストリーム上の記録位置に変換して、その記録位置にアクセスする技術である。上述したような同期型アプリケーションに対し、特殊再生を実行しようとする場合、メインストリームにおけるランダムアクセスを実行するだけでは足りず、サブストリームに対しても、ランダムアクセスを実行する必要がある。
【０００５】
サブストリームは、音声やグラフィクス、標準画質の動画等の様々なデータ客体が、再生の対象になりうる。一般に、高画質動画像を含むメインストリームは、GOP(Group Of Picture)のように単独デコード可能な単位をもっているが、サブストリームは、このGOPに相当する単位をもっているとは限らない。また、もっていたとしても、表示レートやサンプリング周波数、ビットレートが全く異なることが大多数である。
【０００６】
表示レートやサンプリング周波数、ビットレートや、独立再生可能な単位がそれぞれのサブストリーム毎に違うので、ランダムアクセスを実行するにあたって、メインストリーム並みに、サブストリーム側のランダムアクセスを高速に行える保証はどこにもない。そうすると、サブストリーム側の再生をなかなか開始することができず、サブストリーム側の再生開始が、際立って遅れることも有り得る。
【０００７】
同期型アプリケーションでは、メインストリームとサブストリームとの同期を意図しているので、サブストリームの再生開始が遅れれば、これにつられて、メインストリーム側の再生開始を遅らさざるを得ず、その結果、ユーザが再生を命じてから、再生を開始するにあたってのレスポンスが極端に遅れる。
本発明の目的は、サブストリームのランダムアクセスを、メインストリームのランダムアクセスと同時に実行する場合のレスポンス低下を防止することができる記録媒体、及び、再生装置を提供することである。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明に係る記録媒体は、  プレイリスト情報が記録された記録媒体であって、  前記プレイリスト情報は、複数デジタルストリームのそれぞれに対し、再生区間を定義する情報であり、メインパス情報、サブパス情報を含み、  前記メインパス情報は、  複数デジタルストリームのうち1つを、メインストリームとして指定して、そのメインストリームに対し、主たる再生区間を定義する情報であり、  前記サブパス情報は、  複数デジタルストリームのうち他の1つを、サブストリームとして指定して、そのサブストリームに対し、前記主たる再生区間と同期すべき、従たる再生区間を定義する情報であり、  前記記録媒体には、  複数のデジタルストリームのうち、サブストリームとして指定されたものが、エントリーマップと対応づけられた形で記録されており、  前記エントリーマップは、  サブストリームの時間軸における複数のエントリー時刻を、サブストリームにおける複数のエントリー位置と対応づけて示し、 前記サブパス情報は、同期情報、終了点情報を含み、 前記同期情報は、不定値に設定されることで、主たる再生区間の再生時に、ユーザが所定の操作を行った時点を同期時点として設定して、ピクチャインピクチャを開始すべき旨を、再生装置に指示する値であり、 終了点情報は、ピクチャインピクチャ再生中であって、現在の再生時点がどの時点を経過した場合、ピクチャインピクチャを止めるべきかを再生装置に指示する情報である  ことを特徴とする記録媒体である。
【発明の効果】
【０００９】
サブストリームたるデジタルストリームに、エントリーマップを設けているので、このエントリーマップを用いることにより、サブストリームの任意の位置への高速ランダムアクセスを実行することができる。
高速ランダムアクセスがなされることを前提にして、メインストリームとサブストリームとの同期が、プレイリスト情報に規定されているので、ストリーム同期を前提にしたアプリケーションにおいて、再生装置は、ユーザ操作に即応した頭出し再生や倍速再生を実現することができる。
【００１０】
これにより、メインストリーム、サブストリームを組み合わせたアプリケーションを、多く世に送り出すことができる。
GOPが存在しないようなサブストリームであっても、高速なランダムアクセスが可能になるので、サブストリームと、メインストリームとを組み合わせた映画作品に対し、ランダムアクセスを実行する場合でも、時間軸上の任意の箇所からの再生を高速に行うことができる。メインストリーム＋サブストリームからなる映画作品の扱いが、メインストリームからなる映画作品の扱いと同じになるので、メインストリームにサブストリームを組み合わせた、多彩な再生が可能になる。
【００１１】
さらに、メインストリームで構成される第1の動画像と、サブスリームで構成される第2の動画像との同期再生において、ピクチャインピクチャを実現し、ユーザによる操作により動的に開始されたピクチャインピクチャ再生を特定の条件で終了することを特徴とした記録媒体です。すなわち、再生位置が、ピクチャインピクチャ再生を行うサブストリームの再生区間の終了点を経過すると、ピクチャインピクチャ再生を止める。
【００１２】
こうすることで、ユーザが動的にピクチャインピクチャ再生の開始点であるロック点を決めるロック操作を行い、再生位置がピクチャインピクチャ再生区間の終了点を経過した後に、ピクチャインピクチャを開始しないようにできる。
【発明を実施するための最良の形態】
【００１３】
(第１実施形態)
以降、本発明に係る記録媒体の実施形態について説明する。先ず始めに、本発明に係る記録媒体の実施行為のうち、使用行為についての形態を説明する。図１は、本発明に係る記録媒体の、使用行為についての形態を示す図である。図１において、本発明に係る記録媒体は、ローカルストレージ２００である。このローカルストレージ２００は、再生装置３００に内蔵されているハードディスクである。このローカルストレージ２００は、BD-ROM１００と共に、再生装置３００、リモコン４００、テレビ５００により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。
【００１４】
ローカルストレージ２００は、再生装置に組み込まれ、映画配給者のサーバから配信されたコンテンツの受け皿として、利用されるハードディスクである。
再生装置３００は、ネット対応型のデジタル家電機器であり、BD-ROM１００を再生する機能をもつ。また、映画配給者のサーバから、ネットを通じてダウンロードしたコンテンツを、BD-ROM１００に記録されたコンテンツと組み合わせて、BD-ROM１００の拡張を図る能力をもつ。
【００１５】
リモコン４００は、再生すべきチャプターの指定や、再生を開始すべき時間の指定を受け付ける。
テレビ５００は、再生装置３００の再生映像を表示する。
BD-ROM１００の記録内容に、ローカルストレージ２００の記録内容を組み合わせて、BD-ROM１００に記録されていないデータを、恰も、記録されているように扱う技術を“バーチャルファイルシステム”という。
【００１６】
本発明に係る記録媒体は、このような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)が存在する。
PLAYLISTディレクトリは、拡張子mplsが付与されたファイル(00001.mpls)が存在する。
【００１８】
CLIPINFディレクトリには、拡張子clpiが付与されたファイル(00001.clpi)が存在する。
以降BD-ROMの構成要素にあたる、AVClip、Clip情報、PlayList情報について説明する。
＜BD-ROMの構成その１.AVClip＞
先ず初めに、拡張子.m2tsが付与されたファイルについて説明する。図３は、拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。拡張子.m2tsが付与されたファイル(00001.m2ts,00002.m2ts,00003.m2ts・・・・・)は、AVClipを格納している。AVClipは(第４段目)、複数のビデオフレーム(ピクチャpj1,2,3)からなるビデオストリーム、複数のオーディオフレームからなるオーディオストリームを(第１段目)、PESパケット列に変換し(第２段目)、更にTSパケットに変換して(第３段目)、これらを多重化することで構成される。図３のように、動画を有しているAVClipを特に、“MainClip”とよび、動画を有していないAVClipと区別する。
【００１９】
続いて、MPEG2-TS形式のデジタルストリームであるMainClipが、BD-ROMにどのように書き込まれるかを説明する。図４は、MainClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す。本図の第１段目にMainClipを構成するTSパケットを示す。
MainClipを構成する188バイトのTSパケットは、第２段目に示すように4バイトのTS_extra_header(図中の「EX」)が付されて、192バイト長になる。
【００２０】
第３段目、第４段目は、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パケットを“Aligned Unit”といい、BD-ROMへの書き込みにあたっては、Aligned Unit単位で暗号化がなされる。
【００２１】
第５段目においてセクタは、32個単位で誤り訂正符号が付され、ECCブロックを構成する。再生装置はAligned Unitの単位でBD-ROMをアクセスする限り、32個の完結したEX付きTSパケットを得ることができる。以上がBD-ROMに対するMainClipの書き込みのプロセスである。
＜AVClipの説明その１.ビデオストリーム＞
ビデオストリームの内部構成について説明する。
【００２２】
図５は、映画に用いられるビデオストリームの内部構成を示す図である。図５におけるビデオストリームは、符号化順序に配置された複数のピクチャからなる。
図中の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ピクチャとがある。
【００２３】
図５では、Non-IDR Iピクチャを“I”と記述しており、IDRピクチャを“IDR”と記述している。以降、同様の表記を用いる。以上が映画に用いられる、ビデオストリームである。
続いてIDRピクチャ及びNon-IDR Iピクチャの内部構成について説明する。図６（ａ）は、IDRピクチャの内部構成を示す図である。本図に示すようにIDRピクチャは、複数のIntra形式のスライスデータからなる。図６（ｂ）は、Non-IDR Iピクチャの内部構成を示す。IDRピクチャがIntra形式のスライスデータのみから構成されているのに対し、Non-IDR IピクチャはIntra形式のスライスデータ、P形式のスライスデータ、B形式のスライスデータから構成されている。図６（ｃ）は、Non-IDR Iピクチャにおける依存関係を示す。Non-IDR Iピクチャは、B,Pスライスデータから構成されうるので、他のピクチャとの依存関係をもちうる。
＜AVClipの説明その２.BD-ROMへの記録＞
続いてIDRピクチャ、Non-IDR Iピクチャが、どのようにしてTSパケットに変換され、BD-ROMに記録されるかについて説明する。図７は、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に変換されることになる。
【００２４】
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,スライスデータのそれぞれは、ネットワーク抽象レイヤにおいて、それぞれ独立に取り扱われるという点である。
【００２５】
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の構成その２.Clip情報＞
続いて拡張子.clpiが付与されたファイルについて説明する。拡張子.clpiが付与されたファイル(00001.clpi,00002.clpi,00003.clpi・・・・・)は、Clip情報を格納している。Clip情報は、個々のMainClipについての管理情報である。図８は、Clip情報の内部構成を示す図である。本図の左側に示すようにClip情報は、
i)AVClipファイルの属性情報を格納した『ClipInfo()』、
ii)ATC Sequence,STC Sequenceに関する情報を格納した『Sequence Info()』
iii)Program Sequenceに関する情報を格納した『Program Info()』
iv)『Characteristic Point Info(CPI())』からなる。
＜Clip情報の説明その１.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について説明する。
【００２６】
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情報の説明その２.EP_map＞
以下、具体例を通じて、EP_mapについて説明する。図９は、映画のビデオストリーム(application_type=1)に対するEP_map設定を示す図である。第1段目は、表示順序に配置された複数のピクチャを示し、第2段目は、そのピクチャにおける時間軸を示す。第4段目は、BD-ROM上のTSパケット列を示し、第3段目は、EP_mapの設定を示す。
【００２７】
第2段目の時間軸において、時点t1〜t7に、Access Unit(Non-IDR Iピクチャ、IDRピクチャ)が存在するものとする。そしてこれらのt1〜t7の時間間隔が、1秒程度であるとすると、映画に用いられるビデオストリームにおけるEP_mapは、t1〜t7をエントリー時刻(PTS_EP_start)として設定し、これに対応づけてエントリー位置(SPN_EP_start)を示すよう、設定される。
【００２８】
図１０は、図９におけるEntry Point＃1〜Entry Point＃7のPTS_EP_start、SPN_EP_startを、EP_Low、EP_Highの組みで表現したものである。本図の左側にEP_Lowを示し、右側にEP_Highを示す。
図１０左側の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の下位ビットを示す。
【００２９】
図１０右側は、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情報を格納したファイルだが、同種のものがローカルストレージ２００にも存在するので、このローカルストレージ２００に存在するPlayList情報について説明を行い、BD-ROM上の00001.mplsについては、説明を省略する。
【００３０】
BD-ROMは大容量であるから、図１に示したホームシアターシステムに、動画を供給するという役割を担っていることがわかる。以上がBD-ROMについての説明である。
＜ローカルストレージ２００＞
続いて、本発明に係る記録媒体である、ローカルストレージ２００について説明する。図１１は、ローカルストレージ２００の内部構成を示す図である。本図に示すように、本発明に係る記録媒体は、応用層に対する改良により、生産することができる。
【００３１】
本図の第４段目にローカルストレージ２００を示し、第３段目にローカルストレージ２００上のトラックを示す。本図のトラックは、ローカルストレージ２００の内周から外周にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてローカルストレージ２００の応用層フォーマット(アプリケーションフォーマット)を表現すると、図中の第1段目のようになる。
【００３２】
本図のディレクトリ構造においてROOTディレクトリの配下には、「organization＃1」というサブディレクトリがあり、その配下に、「disc＃1」というサブディレクトリがある。ディレクトリ「organization＃1」とは、映画作品の特定のプロバイダに割り当てられたディレクトリである。「disc＃1」は、そのプロバイダが提供したBD-ROMのそれぞれに割り当てられたディレクトリである。
【００３３】
特定のプロバイダに対応するディレクトリに、各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)が格納されている。  
【００３４】
続いて、ローカルストレージ２００の構成要素となる、PlayList情報、Clip情報、AVClipについての説明する。
＜ローカルストレージ２００の構成その１.AVClip＞
ローカルストレージ２００上の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ストリームフレームワーク”という。
【００３５】
かかるOut-of-MUXストリームには、『Primaryオーディオストリーム』、『Secondaryオーディオストリーム』、『Presentation Graphics(PG)ストリーム』、『Interactive Graphics(IG)ストリーム』といった種別がある。
本実施形態では、図１１に示した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ストリームの説明その１.Primary、Secondaryストリーム＞
『Primaryオーディオストリーム』とは、いわゆる主音声となるオーディオストリームであり、『Secondaryオーディオストリーム』とは、いわゆる副音声となるオーディオストリームである。SubClip再生時において、Secondaryオーディオストリームの音声再生は、Primaryオーディオストリームの再生音声にミキシングされた上で出力に供される。Secondaryオーディオストリームとして扱われる音声には、例えば“コメンタリ音声”がある。Primaryオーディオストリームとなる主音声が、映画作品本編の台詞やBGMであり、Secondaryオーディオストリームとなる副音声が、映画監督のコメンタリ音声である場合、かかる映画作品本編の台詞やBGMは、コメンタリ音声とミキシングされた上で出力されることになる。
【００３６】
Secondaryオーディオストリームは、ローカルストレージ２００にのみ記録され再生に供されるが、BD-ROMには記録されない。Primaryオーディオストリームは、BD-ROMに置かれていても、ローカルストレージ２００に置かれていてもよい。またPrimaryオーディオストリームの符号化コーディックは、Secondaryオーディオストリームの符号化コーディックと異なっていてもよい。
【００３７】
図１２は、Primaryオーディオストリーム及びSecondaryオーディオストリームの内部構成を示す図である。本図の第1段目は、SubClipの再生時に参照される時間軸(SubClip時間軸)を示し、第2段目は、SubClipを構成するTSパケット列を示す。第3段目は、SubClipを構成するPESパケット列を示し、第4段目は、Primaryオーディオストリーム及びSecondaryオーディオストリームを構成するオーディオフレーム列を示す。本図に示すようにSubClipは、Primaryオーディオストリーム、Secondaryオーディオストリームとなるフレーム列をPESパケットに変換し(第3段目)、更にこのPESパケット列をTSパケット列に変換することで生成される(第2段目)。
【００３８】
PESパケットのヘッダに存在するPTSは、PESパケット内のオーディオフレームの開始タイミングを示す。従って、このPTSを参照することにより、SubClip時間軸において、PESパケットに格納されたオーディオフレームが何時再生されるかが判明する。故にPESパケットのヘッダがストリーム解析の対象になる。  
＜Out-of-MUXストリームの説明その２.PGストリーム＞
PGストリームとは、動画の再生進行に伴った字幕表示を実現するエレメンタリストリームである。図１３は、PGストリームの内部構成を示す図である。第4段目は、SubClipを構成するPESパケットを示し、第3段目は、SubClipを構成するTSパケットを示す。第2段目は、SubClip時間軸を示し、第1段目は、SubClipたるPGストリームと、MainClipたるビデオストリームとをデコードし、合成することで表示される合成画像を示す。
【００３９】
第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パケットヘッダを付与することにより作成される。
【００４０】
ODS(Object Definition Segment)は、字幕たるグラフィクスデータを定義する機能セグメントである。
WDS(Window Definition Segment)は、画面におけるグラフィクスデータの描画領域を定義する機能セグメントである。
PDS(Pallet Definition Segment)は、グラフィクスデータの描画にあたっての、発色を規定する機能セグメントである。
【００４１】
PCS(Presentation Control Segment)は、字幕表示におけるページ制御を規定する機能セグメントである。かかるページ制御には、Cut-In/Out、Fade-In/Out、Color Change、Scroll、Wipe-In/Outといったものがあり、PCSによるページ制御を伴うことにより、ある字幕を徐々に消去しつつ、次の字幕を表示させるという表示効果が実現可能になる。
END(END of Display Set Segment)は、字幕表示を表示する機能セグメント集合の終わりを示す機能セグメントである。
【００４２】
PESパケットのヘッダは、PTS、DTSといったタイムスタンプを含み、これらのタイムスタンプは、機能セグメントのデコードを開始するタイミング、機能セグメントに基づきグラフィクスを表示するタイミングを示す。またPCSを先頭とした、ENDまでの機能セグメントの一群を“Display Set”と呼ぶ。第3段目は、これらのPESパケットを変換することで得られるTSパケットを示す。第2段目は、SubClipを再生するにあたって、参照される時間軸(SubClip時間軸)を示す。この時間軸において、PCSのDTSは、PCSがデコードされるタイミングを示し、PCSのPTSは、PCSを先頭としたDisplay Setに基づき、グラフィクスが表示されるタイミングを示す。このPTSに示されるタイミングにおいて、第1段目に示すような合成画像が表示されることになる。
【００４３】
このDisplay Setには、『Epoch Start』、『Acquisition Point』、『Normal Case』、『Epoch Continue』といった種別がある。
『Epoch Start』は、新たなEpochの開始を示す。Epochとは、AVClipの再生時間軸上においてメモリ管理の連続性をもっている一つの期間、及び、この期間に割り当てられたデータ群をいう。そのためEpoch Startは、次の画面合成に必要な全ての機能セグメントを含んでいる。Epoch Startは、映画作品におけるチャプター等、頭出しがなされることが判明している位置に配置される。
【００４４】
『Acquisition Point』は、Epochの開始時点ではないが、次の画面合成に必要な全ての機能セグメントを含んでいるDisplay Setである。Acquisition PointたるDSから頭出しを行えば、グラフィックス表示を確実に実現することができる。つまりAcquisition PointたるDSは、Epochの途中からの画面構成を可能するという役割をもつ。Acquisition PointたるDisplay Setは、頭出し先になり得る位置に組み込まれる。
【００４５】
『Normal Case』は、前のDisplay Setからの差分のみを含む。例えば、あるDSvの字幕は、先行するDSuと同じ内容であるが、画面構成が、この先行するDSuとは異なる場合、PCSと、ENDのみのDSvを設けてこのDSvをNormal CaseのDSにする。こうすれば、重複するODSを設ける必要はなくなるので、BD-ROMにおける容量削減に寄与することができる。一方、Normal CaseのDSは、差分にすぎないので、Normal Case単独では画面構成は行えない。
【００４６】
『Epoch Continue』とは、あるAVClipの再生が、他のAVClipの再生後、連続して行われる場合、Epochを、継続させる旨を示す。以上がPGストリームを構成する機能セグメントについての説明である。
＜Out-of-MUXストリームについての説明その３.IGストリーム＞
IGストリームは、動画の再生進行に伴った字幕表示を実現するエレメンタリストリームである。
【００４７】
図１４は、IGストリームの内部構成を示す図である。第4段目は、SubClipを構成するPESパケットを示し、第3段目は、SubClipを構成するTSパケットを示す。第2段目は、SubClip時間軸を示し、第1段目は、Out-of-MUXストリームたるIGストリームと、MainClipたるビデオストリームとをデコードし、合成することで表示される合成画像を示す。
第4段目におけるSubClipのPESパケット構成について説明する。
【００４８】
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)は、ボタンを描画するにあたっての絵柄のグラフィクスを定義するグラフィクスデータである。
【００４９】
PDS(Palette Difinition Segment)は、グラフィクスデータの描画にあたっての、発色を規定する機能セグメントである。
ICS(Interactive Composition Segment)は、ユーザ操作に応じてボタンの状態を変化させるという対話制御を規定する機能セグメントである。  
END(END of Display Set Segment)は、メニュー表示を表示する機能セグメント集合の終わりを示す機能セグメントである。
【００５０】
PESパケットヘッダは、PTS、DTSといったタイムスタンプを含み、これらのタイムスタンプは、機能セグメントのデコードを開始するタイミング、機能セグメントに基づきグラフィクスを表示するタイミングを示す。またICSを先頭とした、ENDまでの機能セグメントの一群をDisplay Setと呼ぶ。このDisplay SetにはPGストリーム同様、『Epoch Start』、『Acquisition Point』、『Normal Case』、『Epoch Continue』といった種別がある。
【００５１】
図１４の第3段目は、これらのPESパケットを変換することで得られるTSパケットを示す。第2段目は、SubClipを再生するにあたって、参照される時間軸(SubClip時間軸)を示す。この時間軸において、ICSのDTSは、ICSがデコードされるタイミングを示し、ICSのPTSは、ICSを先頭としたDisplay Setに基づき、グラフィクスが表示されるタイミングを示す。このPTSに示されるタイミングにおいて、第1段目に示すような合成画像が表示されることになる。
【００５２】
ICS、PDS、ODS、ENDといった機能セグメントの集まりは、Display Setと呼ばれる。Display Setは、メニューの一個の表示を実現する機能セグメントの集合をいう。
以上がSubClipについての説明である。
＜ローカルストレージ２００の構成その２.Clip情報＞
続いてローカルストレージ２００側のClip情報について説明する。図１５は、ローカルストレージ２００側のClip情報のデータ構造を示す図である。ローカルストレージ２００側のClip情報のデータ構造は、BD-ROM側のClip情報と同じである。但し、これらのデータ構造のうち、application_typeと、EP_mapの構成と、EP_stream_typeは、SubClip特有の内容に設定される。
＜SubClipにおけるClip情報の説明その１.application_type＞
図１５におけるapplication_typeについて説明する。SubClipが先に説明したPrimaryオーディオストリーム、Secondaryオーディオストリーム、PGストリーム、IGストリームの何れかである場合、application_typeは7に設定される。
【００５３】
application_type=7とは、本Clip情報に多重化されているSubClipが、“動画無しの追加コンテンツ”であることを示す。動画を含んでいないので、本SubClipは、ネットワークを通じてローカルストレージ２００に格納され、ローカルストレージ２００から供給されることを前提にしている。BD-ROMから供給されることを前提にしていない。以上がSubClipにおけるapplication_typeの設定である。
【００５４】
＜SubClipにおけるClip情報の詳細その１.Out-of-MUX_EP_map＞
続いてSubClipにおけるEP_mapについて説明する。ローカルストレージ２００上のEP_mapは、SubClipに多重化されている1つ以上のOut-of-MUXストリームそれぞれに対して存在する。そして対応するOut-of-MUXストリームの複数のエントリー位置を、複数のエントリー時刻と対応付けて示す。
【００５５】
Out-of-MUXストリームには、Primaryオーディオストリーム、Secondaryオーディオストリーム、PGストリーム、IGストリームといった種別があり、これらは、ストリーム途中の何処から、再生可能となるかが違う。Primaryオーディオストリーム、Secondaryオーディオストリームは、複数オーディオフレームからなり、基本的にはこのオーディオフレームの先頭からなら何処からでも再生を開始することができる。
【００５６】
これに対しPGストリーム、IGストリームに対してランダムアクセスを実行する場合、完結した機能セグメントからなるDisplay Setをデコーダに供給せねばならない。完結した機能セグメントからなるDisplay Setとは、いわゆる『Normal Case』以外のDisplay Set、つまり、『Epoch Start』、『Acquisition Point』、『Epoch Continue』のDisplay Setであり、これらのDisplay Setの先頭に位置するPCS,ICSを、エントリー位置として扱う必要がある。
【００５７】
上述したようにOut-of-MUXストリームは、ストリームの途中のうち、何処からデコード可能であるかが違うので、EP_mapは、対応するOut-of-MUXストリームの違いにより、異なる構造をもつことになる。Out-of-MUXストリームに対するEP_mapを、“Out-of-MUX_EP_map”という。
＜Out-of-MUX_EP_mapの詳細その２.音声に対するOut-of-MUX_EP_map＞
続いてPrimaryオーディオストリーム、Secondaryオーディオストリームに対応するEP_mapの構成について説明する。Primaryオーディオストリーム、Secondaryオーディオストリームに対するEP_mapが、動画像に対するEP_mapと異なるのは、EP_mapの時間間隔である。つまり動画像に対する時間間隔は、1秒未満であり、緻密な精度で、Entry Pointが設定されているが、Entry Pointの時間間隔は、5秒になっており、時間間隔は広くなっている。
【００５８】
図１６は、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は、これらのエントリー時刻を示している。
【００５９】
第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秒置きのエントリー時刻は、エントリー位置と対応づけられることになる。
【００６０】
Primaryオーディオストリーム、SecondaryオーディオストリームについてのEP_mapにおいて、直前のEntry Pointとの間隔は、256Kバイトというデータ間隔であってもよい。この256Kバイトという時間間隔は、Secondaryオーディオストリームの転送レートに、5秒という時間間隔を乗じたものである。EP_mapの時間間隔が5秒であるので、ストリーム解析が必要になる範囲は、5秒以下になる。以上がPrimaryオーディオストリーム、Secondaryオーディオストリームに対して設定されるEP_mapについて説明である。
＜Out-of-MUX_EP_mapの詳細その３.PGストリームについてのEP_map＞
続いてPGストリームに対して設定されるEP_mapについて説明する。
【００６１】
図１７は、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,ｔ5と対応づけて示すことになる。
【００６２】
このように完結した機能セグメントの先頭が、PCSのPTSに示されるエントリー時刻と対応づけられているので、このEP_mapを手掛かりすれば、ストリーム解析を行うことなく、ストリームの途中からの字幕表示を実現することができる。
＜Out-of-MUX_EP_mapの詳細その４.IGストリームについてのEP_map＞
図１８は、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、ｔ5と対応づけて示すことになる。
【００６３】
このように完結した機能セグメントの先頭が、ICSのPTSに示されるエントリー時刻と対応づけられているので、このEP_mapを手掛かりすれば、ストリーム解析を行うことなく、途中からのメニュー表示を実現することができる。
以上によりEP_map構造は、対応するOut-of-MUXストリームの質的な違いよって変化することがわかる。以上がローカルストレージ２００上のClip情報における、EP_mapについての説明である。続いてローカルストレージ２００上のClip情報における、EP_stream_typeについて説明する。
【００６４】
＜SubClipにおけるClip情報の説明その３.EP_stream_type＞
EP_stream_typeは、図１６〜図１８に示した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オーディオストリーム特有の構造、つまり、図１６に示したように、一定時間置きのエントリー時刻、又は、一定データ間隔置きのエントリー位置を示すように設定されていることを示す。6に設定されている場合、PGストリーム固有の構造、つまりNormal Case以外のDisplay Setの先頭を指すように設定されていることを示す(図１７)。7に設定されている場合、IGストリーム固有の構造、つまりNormal Case以外のDisplay Setの先頭を指すように設定されていることを示す(図１８)。
【００６５】
EP_mapの構造がこのEP_stream_typeに集約されているので、このEP_mapに示されるエントリー位置から、ストリーム解析を行わねばならないか、EP_mapにおけるEntryPoinからデータの読み出しを行い、デコーダに供給すればよいかが判る。
＜SubClipにおけるClip情報の説明その４.EP_stream_typeの意義＞
Out_of_MUX_EP_mapにEP_stream_typeを設けたことの技術的意義について以下にまとめた。
【００６６】
エントリー時刻をアクセス位置として指定した場合は、すぐに再生を開始することができるが、アクセス位置がエントリー時刻でない場合、ストリーム解析が必要になる。もし、エントリー時刻同士の間隔がどの程度であるか、またどのようなデータ位置がエントリー時刻として指定されているかが判らない場合、どの程度、ストリーム解析を行えばよいかが未知数になる。そうすると、ストリーム解析がどれだけ必要になるかという上限が、定まらないので、ユーザ操作に対するレスポンスを、非常に低下させる恐れがある。
【００６７】
そこでOut_of_MUX_EP_mapは、エントリー時刻がどの程度の間隔で存在するか、又は、どのような位置がエントリー位置として指定されているかをEP_stream_typeを用いて明らかにしている。EP_stream_typeが3,4である場合、エントリー位置は、5秒という一定間隔に存在していることを示す。これを参照すれば再生装置は、ストリーム解析が必要であったとしても、せいぜい、ストリーム解析を行うべき範囲は、5秒の範囲であり、ワーストケースであっても、Out-of-MUXストリームにおける5秒の範囲を解析すれば、所望のアクセス点に到達すると理解することができる。
【００６８】
一方EP_stream_typeが6,7である場合、完結した機能セグメントからなるDisplay Setの開始点がエントリー位置として指定されていることを示す。これを参照すれば再生装置は、たとえエントリー位置の間隔が不定長であっても、このエントリー位置になっている位置から機能セグメントの読み出しを行い、再生に供すれば、ストリーム解析を一切行わなくとも、所望の再生時点における字幕表示、メニュー表示を実現することができる。
【００６９】
EP_stream_typeは、5秒を上限としたストリーム解析が必要であるか、ストリーム解析が一切不要であるかの判断を、再生装置に促すので、MainClipに対するランダムアクセスと共に、SubClipに対するランダムアクセスが必要になったとしても、再生装置に対して過剰な負担をかけることはない。かかる負担軽減により、ユーザ操作に対するレスポンスを向上させることができる。
【００７０】
以上がローカルストレージ２００におけるClip情報についての説明である。
＜ローカルストレージ２００の構成その３.PlayList情報＞
続いて、ローカルストレージ２００上のPlayList情報について説明する。拡張子“mpls”が付与されたファイル(00001.mpls)は、PlayList(PL)情報を格納したファイルである。PlayList情報は、MainPath、Subpathと呼ばれる2種類の再生経路を束ねたものをPlaylist(PL)として定義する情報である。図１９は、PlayList情報のデータ構造を示す図であり、本図に示すようにPlayList情報は、MainPathを定義するMainPath情報(MainPath())と、チャプターを定義するPlayListMark情報(PlayListMark())と、Subpathを定義するSubpath情報(Subpath())とからなる。
【００７１】
MainPathとは、主たるAVClip上に定義される再生経路である。一方Subpathは、SubClip上に定義される再生経路である。
＜PlayList情報の説明その１.MainPath情報＞
先ずMainPathについて説明する。MainPathは、主映像たるビデオストリームやオーディオストリームに対して定義される再生経路である。
【００７２】
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』とから構成される。
【００７３】
図２０は、MainClipと、PlayList情報との関係を示す図である。第1段目は、PlayList情報がもつ時間軸を示す。第2段目から第5段目は、EP_mapにて参照されているビデオストリーム(図５に示したものと同じ)を示す。
PlayList情報は、PlayItem情報＃1,＃2という2つのPlayItem情報を含んでおり、これらPlayItem情報＃1,＃2のIn_time,Out_timeにより、2つの再生区間が定義されることになる。これらの再生区間を配列させると、AVClip時間軸とは異なる時間軸が定義されることになる。これが第1段目に示すPlayItem時間軸である。このように、PlayItem情報の定義により、AVClipとは異なる時間軸の定義が可能になる。
【００７４】
＜PlayList情報の説明その２.PlayListMark＞
以上が、本実施形態に係るPlayItem情報についての説明である。続いてPlayListMark情報について説明する。
図２１は、PlayList情報の、PlayListMark情報の内部構成を示す図である。本図の図中の引き出し線pm0に示すように、PlayListMark情報は、複数のPLMark情報(＃1〜＃n)からなる。PLmark情報(PLmark())は、PL時間軸のうち、任意の区間を、チャプター点として指定する情報である。引き出し線pm1に示すようにPLmark情報は、チャプター指定の対象たるPlayItemを示す『ref_to_PlayItem_Id』と、そのPlayItemにおける、チャプター位置を時間表記により示す『mark_time_stamp』とを含む。
【００７５】
図２２は、PlayList情報の、PLMark情報によるチャプター位置の指定を示す図である。本図の第2段目から第5段目は、図２０に示した、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情報の説明その３.Subpath情報＞
MainPathが、主映像たるMainClipに定義される再生経路であるのに対し、Subpathは、MainPathと同期すべきSubClipに対して定義される再生経路である。
【００７６】
図２３は、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』からなる。
【００７７】
『Clip_information_file_name』は、Clip情報のファイル名を記述することにより、SubPlayItemに対応するSubClipを一意に指定する情報である。
『SubPlayItem_In_time』は、SubClipの再生時間軸上における、SubPlayItemの始点を示す情報である。
『SubPlayItem_Out_time』は、SubClipの再生時間軸上における、SubPlayItemの終点を示す情報である。
【００７８】
『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情報の詳細その１.SubPath_type＞
以上がSubPath情報についての説明である。続いてSubPath_typeについて説明する。SubPath_typeは、0から255までの値に設定されることにより、SubPath情報により定義されるSubPathがどのような再生経路であるのかを示す。
【００７９】
この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オーディオである。
【００８０】
SubPath_typeが6に設定された場合、本SubPath情報は、追加・置換のためのPresentation Graphics再生パスを定義していることを示す。何に対する追加・置換であるかというと、PlayItem情報にて再生され得るPGストリームに対して、追加・置換され得るPGストリームである。
SubPath_typeが7に設定された場合、本SubPath情報は、追加・置換のためのIntaractive Graphics再生パスを定義していることを示す。何に対する追加・置換であるかというと、PlayItem情報にて再生され得るPGストリームに対して、追加・置換され得るPGストリームである。
【００８１】
SubPath_typeが8に設定された場合、SubPath情報はSecondaryオーディオ再生パスを定義する旨を示す。このSecondaryオーディオ再生パスは、追加のために定義されている。何に対する追加かというと、PlayItem情報にて再生され得るPrimaryオーディオの再生音声にミキシングされるべきSecondaryオーディオである。
以上がSubPath_typeについての説明である。
＜SubPath情報についての詳細その２.三者の関係＞
ここでの三者とは、ローカルストレージ２００上のSubClip、ローカルストレージ２００上のPlayList情報、BD-ROM上のMainClipの三者をいう。
【００８２】
図２４は、ローカルストレージ２００上のSubClipと、ローカルストレージ２００上のPlayList情報と、BD-ROM上のMainClipとの対応を示す図である。本図において第1段目は、ローカルストレージ２００上に存在するSubClipを示す。この第1段目に示すように、ローカルストレージ２００上のSubClipには、Primaryオーディオストリーム、Secondaryオーディオストリーム、PGストリーム、IGストリームといった種別がある。これらのうち何れかが、SubPathとして同期再生に供されることになる。
【００８３】
第2段目は、PlayList情報により定義される2つの時間軸を示す。第2段目のうち下側の時間軸は、PlayItem情報により定義されるPlayItem時間軸を示し、上側の時間軸はSubPlayItemにより定義されるSubPlayItem時間軸を示す。
本図に示すように、SubPlayItem情報のSubPlayItem_Clip_information_file_nameは、第1段目における4つのSubClipのうち、どれを再生区間指定の対象として選ぶかという、SubClip選択の役割を果たしていることがわかる。
【００８４】
そしてSubPlayItem.IN_time、SubPlayItem.Out_timeは、SubClip上に、再生区間の始点及び終点を定義するという役割を果たしていることがわかる。
矢印Sync_PlayItem_Idは、どのPlayItemとの同期を意図しているかという同期指定の役割を果たし、sync_start_PTS_of_PlayItemは、PlayItem時間軸の原点と、SubPlayItem時間軸の原点との差分を示す役割を果たす。
【００８５】
図２５は、MainClipに対して設定されたEP_map及びPlayItem時間軸と、Primaryオーディオストリーム、SecondaryオーディオストリームとなるSubClipに対して設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
本図の中段、下4段〜下1段は、図２０に示したPlayItem時間軸、ピクチャ列、MainClip時間軸、EP_map、TSパケット列を示す。
【００８６】
また上1段目〜上3段目は、図１６に示したTSパケット列、EP_map、SubClip時間軸を示す。上4段目は、図２４に示したSubPlayItem時間軸を示す。MainClipについては1秒時間間隔、SubClipについては、5秒時間間隔でエントリー時刻が設定されていることがわかる。
図２６は、MainClipに対して設定されたEP_map及びPlayItem時間軸と、PGストリーム、IGストリームとなるSubClipに対し設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
【００８７】
本図の中段、下4段〜下1段は、図２０に示したPlayItem時間軸、ピクチャ列、MainClip時間軸、EP_map、TSパケット列を示す。
また上1段目〜3段目は、図１６に示したTSパケット列、EP_map、SubClip時間軸を示す。上第4段目は、図２４に示したSubPlayItem時間軸を示す。MainClipについては1秒時間間隔、SubClipについては、Normal Case以外のDisplay Setが存在する位置が、エントリー位置として指定されていることがわかる。
【００８８】
＜SubPath情報についての詳細その３.相関関係＞
図２７は、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バイトというデータ間隔をもっていると、再生装置は理解することができる。
【００８９】
SubPath_typeは“6”であり、application_typeが“7”である場合、EP_stream_typeが“6”に設定されていることがわかる。EP_stream_typeが“6”に設定されているので、このEP_stream_typeに対応するEP_mapは、Presentation Graphics再生のためのものであり、完結した機能セグメントからなるDisplay Setをエントリー位置にしていると、再生装置は理解することができる。
【００９０】
SubPath_typeは“7”であり、application_typeが“7”である場合、EP_stream_typeは“7”に設定されていることがわかる。EP_stream_typeが“7”に設定されているので、このEP_stream_typeに対応するEP_mapは、Interactive Graphics再生のためのものであり、完結した機能セグメントからなるDisplay Setをエントリー位置にしていると、再生装置は理解することができる。
【００９１】
SubPath_typeは“8”であり、application_typeが“7”である場合、EP_stream_typeが“4”に設定されていることがわかる。EP_stream_typeが“4”に設定されているので、このEP_stream_typeに対応するEP_mapは、Secondaryオーディオ再生のためのものであり、5秒という時間間隔、又は、256Kバイトというデータ間隔をもっていると、再生装置は理解することができる。
【００９２】
以上がローカルストレージ２００の構成たるPlayList情報についての説である。以上で、ローカルストレージ２００についての説明を終える。
＜バーチャルファイルシステム＞
以降、バーチャルファイルシステムについて説明する。図２８は、再生装置３００により生成されるバーチャルファイルシステムを示す図である。本図の左上は、BD-ROMの記録内容を示し、左下は、ローカルストレージ２００の記録内容を示す。右側は、バーチャルファイルシステムの構成を示す。
【００９３】
再生装置は、BD-ROMに存在するAVClip、Clip情報、PlayList情報に、ローカルストレージ２００に存在する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ディレクトリに追加することでなされる。
【００９４】
こうすることにより、図２８の右側に示すようなバーチャルファイルシステムが構成される。
以上で本発明に係る記録媒体についての説明を終わる。続いて本発明に係る再生装置について説明する。
＜再生装置の内部構成＞
図２９は、本発明に係る再生装置の内部構成を示す図である。本発明に係る再生装置は、本図に示す内部構成に基づき、工業的に生産される。本発明に係る再生装置は、主としてシステムLSIと、ドライブ装置という2つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装することで工業的に生産することができる。システムLSIは、再生装置の機能を果たす様々な処理部を集積した集積回路である。こうして生産される再生装置は、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３１、スイッチ３２、Arrival Time Clock Counter３３、Source De-Packetizer３４、PIDフィルタ３５、スイッチ３６、Transport Buffer３７、Elementary Buffer３８、オーディオデコーダ３９、Transport Buffer４０、バッファ４１、オーディオデコーダ４２、ミキサー４３、シナリオメモリ４４、制御部４５、メイン変換部４６、サブ変換部４７、PL再生制御部４８、PSRセット４９から構成される。本図における内部構成は、MPEGのT-STDモデルをベースとしたデコーダモデルであり、ダウンコンバートを想定した含めたデコーダモデルになっている。
【００９５】
BD-ROMドライブ１は、BD-ROMのローディング／イジェクトを行い、BD-ROMに対するアクセスを実行して、32個の完結したEX付きTSパケットからなるAligned UnitをBD-ROMから読み出す。
Arrival time Clock Counter２は、27MHzの水晶発振器(27MHz X-tal)に基づき、Arrival Time Clockを生成する。Arrival Time Clockとは、TSパケットに付与されたATSの基準となる時間軸を規定するクロック信号である。
【００９６】
Source de-packetetizer３は、BD-ROMから、32個の完結したEX付きTSパケットからなるAligned Unitが読み出されれば、Aligned Unitを構成するそれぞれのTSパケットから、TP_extra_headerを取り外して、TSパケットのみをPIDフィルタ４に出力する。Source
De-Packetizer３によるPIDフィルタ４への出力は、Arrival time Clock Counter２が経時している時刻が、TP_extra_headerに示されるATSになったタイミングになされる。PIDフィルタ４への出力は、ATSに従いなされるので、たとえBD-ROMからの読み出しに1倍速、2倍速といった速度差があっても、PIDフィルタ４へのTSパケット出力は、Arrival Time Clockが経時する現在時間に従いなされることになる。
【００９７】
PID Filter４は、TSパケットに付加されているPIDを参照することにより、TSパケットが、ビデオストリーム、PGストリーム、IGストリーム、Primaryオーディオストリームの何れに帰属するのかを判定して、Transport Buffer５、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）ごとにデコードすることにより複数フレーム画像を得て、Decoded Picture Buffer１０に書き込む。
Decoded Picture Buffer１０は、復号されたピクチャが書き込まれるバッファである。
ビデオプレーン１１は、非圧縮形式のピクチャを格納しておくためのプレーンである。プレーンとは、再生装置において一画面分の画素データを格納しておくためのメモリ領域である。ビデオプレーン１１における解像度は1920×1080であり、このビデオプレーン１１に格納されたピクチャデータは、16ビットのYUV値で表現された画素データにより構成される。
【０１００】
Transport Buffer(TB)１２は、PGストリームに帰属するTSパケットがPIDフィルタ４から出力された際、一旦蓄積されるバッファである。
Coded Data Buffer(CDB)１３は、PGストリームを構成するPESパケットが格納されるバッファである。
Stream Graphics Processor(SGP)１４は、ODSをデコードして、デコードにより得られたインデックスカラーからなる非圧縮状態の非圧縮グラフィクスをグラフィクスオブジェクトとしてObject Buffer１５に書き込む。Stream Graphicsプロセッサ１４によるデコードは瞬時に行われ、デコードによりグラフィクスオブジェクトをStream Graphicsプロセッサ１４は一時的に保持する。Stream Graphicsプロセッサ１４によるデコードは瞬時になされるが、Stream Graphicsプロセッサ１４からObject Buffer１５への書き込みは、瞬時には終わらない。BD-ROM規格のプレーヤモデルでは、Object Buffer１５への書き込みは、128Mbpsという転送レートでなされるからである。Object Buffer１５への書き込み完了時点は、ENDセグメントのPTSに示されているので、このENDセグメントのPTSに示される時点が経過するまで、次のDSに対する処理を待つことになる。各ODSをデコードすることにより得られたグラフィクスオブジェクトの書き込みは、そのODSに関連付けられたDTSの時刻に開始し、ODSに関連付けられたPTSに示されるデコード終了時刻までに終了する。
【０１０１】
Object Buffer１５は、Stream Graphics Processor１４のデコードにより得られたグラフィクスオブジェクトが配置されるバッファである。Object Buffer１５は、グラフィクスプレーン８の2倍／4倍の大きさに設定せねばならない。何故ならScrollingを実現する場合を考えると、グラフィクスプレーン８の2倍、4倍のグラフィクスオブジェクトを格納しておかねばならないからである。
【０１０２】
Composition Buffer１６は、PCS、PDSが配置されるメモリである。処理すべきDisplay Setが2つあり、これらのPCSのアクティブ期間が重複している場合、Compositionバッファ１６には処理すべきPCSが複数格納される。
Graphicsコントローラ１７は、現在の再生時点が新たなDisplay Setに到達する度に、そのDisplay Setに含まれるPCSのComposition_Stateが、Epoch Start、Acquisition Point、Normal Caseのどれであるかを判定する、Epoch Startであれば、Coded Dataバッファ１３上のPCSを、Coded Dataバッファ１３からCompositionバッファ１６に転送する。
【０１０３】
Presentation Graphicsプレーン１８は、一画面分の領域をもったメモリであり、一画面分の非圧縮グラフィクスを格納することができる。本プレーンにおける解像度は1920×1080であり、Presentation Graphicsプレーン１８中の非圧縮グラフィクスの各画素は8ビットのインデックスカラーで表現される。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、Presentation Graphicsプレーン１８に格納された非圧縮グラフィクスは、表示に供される。
【０１０４】
CLUT部１９は、Presentation Graphicsプレーン１８に格納された非圧縮グラフィクスにおけるインデックスカラーを、Y,Cr,Cb値に変換する。
Transport Buffer(TB)２０は、IGストリームに帰属するTSパケットが一旦蓄積されるバッファである。
Coded Data Buffer(CDB)２１は、IGストリームを構成するPESパケットが格納されるバッファである。
【０１０５】
Stream Graphics Processor(SGP)２２は、ODSをデコードして、デコードにより得られた非圧縮グラフィクスをObject Buffer２３に書き込む。
Object Buffer２３は、Stream Graphics Processor２２のデコードにより得られた非圧縮のグラフィクスオブジェクトが多数配置されるバッファである。このObject Buffer２３において各グラフィクスオブジェクトが占める矩形領域は、ODSが有するObject_idにより識別される。従って、Object Buffer２３上にあるグラフィクスオブジェクトが存在している状態で、同じObject_idをもつグラフィクスオブジェクトが供給されれば、Object Buffer２３上においてそのグラフィクスオブジェクトが占める領域は、同じObject_idをもつグラフィクスオブジェクトにより上書きされることになる。
【０１０６】
Compositionバッファ２４は、1つ以上のICSに対応する運搬されるInteractive_compositionを格納しておくためのバッファである。格納されているInteractive_compositionは、Graphicsコントローラ２５による解読に供される。
Graphicsコントローラ２５は、現在の再生時点が新たなDisplay Setに到達する度に、そのDisplay Setに含まれるICSのComposition_Stateが、Epoch Start、Acquisition Point、Normal Caseのどれであるかを判定する、Epoch Startであれば、Coded Dataバッファ２１上の新たなInteractive_compositionを、Coded Dataバッファ２１からCompositionバッファ２４に転送する。
【０１０７】
Graphicsコントローラ２５は、Acquisition PointタイプのDisplay SetにおけるICSがCoded Dataバッファ２１に読み出される度に、そのICSに属する各ページ情報のPage_Version_Numberと、Compositionバッファ２４に格納済みのInteractive_compositionにおける各ページ情報のPage_Version_Numberとを照合する。そしてPage_Version_Numberが大きいページ情報がCoded Dataバッファ２１上に存在していれば、そのページ情報をCoded Dataバッファ２１からCompositionバッファ２４に転送することで、Compositionバッファ２４における所望のページ情報をアップデートする。そしてそうやってアップデートされたページ情報に該当するページが現在表示中であるか否かを判定し、もし表示中であれば、該当するページの再描画を行う。
【０１０８】
Interactive Graphicsプレーン２６は、Stream Graphics Processor(SGP)２２によるデコードで得られた非圧縮グラフィクスが書き込まれる。本プレーンにおける解像度は1920×1080であり、Intaractive Graphicsプレーン２６中の非圧縮グラフィクスの各画素は8ビットのインデックスカラーで表現される。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、Intaractive Graphicsプレーン２６に格納された非圧縮グラフィクスは、表示に供される。
【０１０９】
CLUT部２７は、Interactive Graphicsプレーン２６に格納された非圧縮グラフィクスにおけるインデックスカラーを、Y,Cr,Cb値に変換する。
合成部２８はビデオプレーン１１に格納された非圧縮状態のフレーム画像と、Presentation Graphicsプレーン１８に格納された非圧縮状態のグラフィクスオブジェクトとを合成させる。かかる合成により、動画像上に、字幕が重ね合わされた合成画像を得ることができる。
【０１１０】
合成部２９は、Interactive Graphicsプレーン２６に格納された非圧縮状態のグラフィクスオブジェクトと、合成部２８の出力である合成画像(非圧縮状態のピクチャデータと、Presentation Graphicsプレーン１８の非圧縮グラフィクスオブジェクトとを合成したもの)とを合成する。
スイッチ３０は、BD-ROMから読み出されたTSパケット、ローカルストレージ２００から読み出されたTSパケットの何れか一方を、選択的にTransport Buffer２０に供給する。
【０１１１】
Network Device３１は、再生装置における通信機能を実現するものであり、URLにあたるwebサイトとのTCPコネクション、FTPコネクション等を確立する。Network Device３１により確立されたコネクションを通じてwebサイトからダウンロードされたコンテンツは、このLocal Storage２００に格納される。
スイッチ３２は、BD-ROMから読み出されたTSパケット、ローカルストレージ２００から読み出されたTSパケットの何れか一方を、選択的にTransport Buffer１２に供給する。
【０１１２】
Source de-packetetizer３４は、ローカルストレージ２００から読み出されたAVClipのTSパケットから、TP_extra_headerを取り外して、TSパケットのみをPIDフィルタ３５に出力する。Source de-packetizer３４によるPIDフィルタ３５への出力は、Arrival Time Clock Counter３３が経時している時刻が、TP_extra_headerに示されるATSになったタイミングになされる。
【０１１３】
PIDフィルタ３５は、ローカルストレージ２００から読み出されたTSパケットを、PGストリームのデコーダ側、IGストリームのデコーダ側、オーディオデコーダ３９側、オーディオデコーダ４２側の何れかに切り換える。
スイッチ３６は、BD-ROMから読み出されたTSパケット、ローカルストレージ２００から読み出されたTSパケットのどちらかをオーディオデコーダ３９側に供給する。このTSパケットは、Primaryオーディオストリームを構成するものである。このスイッチ３６を経由することにより、BD-ROM及びローカルストレージ２００のどちらからでも、Primaryオーディオストリームは、オーディオデコーダ３９に供給されることになる。
【０１１４】
Transport Buffer(TB)３７は、Primaryオーディオストリームに帰属するTSパケットを蓄積する。
Elementary Buffer(EB)３８は、Primaryオーディオストリームを構成するPESパケットが格納されるバッファである。
オーディオデコーダ３９は、Elementary Buffer４１から出力されたPESパケット状態のPrimaryオーディオストリームを復号して、非圧縮形式のオーディオデータを出力する。
【０１１５】
Transport Buffer(TB)４０は、Secondaryオーディオストリームに帰属するTSパケットを蓄積する。
Elementary Buffer(EB)４１は、Secondaryオーディオストリームを構成するPESパケットが格納されるバッファである。
オーディオデコーダ４２は、Elementary Buffer３８から出力されたPESパケット状態のSecondaryオーディオストリームを復号して、非圧縮形式のオーディオデータを出力する。
【０１１６】
ミキサー４３は、Primaryオーディオストリームを復号することで得られた非圧縮形式のオーディオデータと、Secondaryオーディオストリームを復号することで得られた非圧縮形式のオーディオデータとをミキシングすることにより、合成音声を出力する。
シナリオメモリ４４は、カレントのPlayList情報やカレントのClip情報を格納しておくためのメモリである。カレントPlayList情報とは、BD-ROMに記録されている複数PlayList情報のうち、現在処理対象になっているものをいう。カレントClip情報とは、BD-ROMに記録されている複数Clip情報のうち、現在処理対象になっているものをいう。
【０１１７】
制御部４５は、命令ROMと、CPUとからなり、命令ROMに格納されているソフトウェアを実行して、再生装置全体の制御を実行する。この制御の内容は、ユーザ操作に応じて発生するユーザイベント、及び、PSRセット４９における各PSRの設定値に応じて動的に変化する。制御部４５は、メイン変換部４６、サブ変換部４７、PL再生制御部４８という機能的な構成要素を含んでいる。
【０１１８】
メイン変換部４６は、PlayItem時間軸における再生時点を、MainClipのアドレスに変換する。ここで通常再生及び特殊再生を開始すべき再生時点は、PlayItemの時間軸において定義されており、メイン変換部４６は、MainClipに対応するClip情報内のEP_mapを用いて、この再生時点を、MainClipにおけるアドレスに変換する。
サブ変換部４７は、PlayItemの時間軸における再生時点を、SubPlayItemの時間軸における再生時点に変換し、変換後のSubPlayItem時間軸上の再生時点を、SubClipのアドレスに変換する。ここで、サブ変換部４７によるPlayItem時間軸上の再生時点から、SubPlayItem時間軸上の再生時点への変換は、SubPlayItem情報におけるSync_PlayItem_Id、Sync_Start_PTS_of_PlayItemを用いてなされる。
【０１１９】
SubPlayItem時間軸上の再生時点から、SubClipアドレスへの変換は、EP_mapに示されてる複数のエントリー位置のうち、ランダムアクセス位置に最も近いエントリー位置を求めるという処理(i)と、そうして求めたエントリー位置を開始点にして、ストリーム解析を行うという処理(ii)の2つからなる。前者の処理は、SubClipに対応づけられたEP_mapを用いてなされる。後者のストリーム解析は、Primaryオーディオストリーム及びSecondaryオーディオストリームのランダムアクセスには必要だが、PGストリーム、IGストリームのランダムアクセスでは省くことができる。ストリーム解析を省略できるか否かの判定は、EP_stream_typeを参照することでなされる。Clip情報にはEP_mapが存在しており、ランダムアクセスが好適になされることを保証しているからである。
【０１２０】
PL再生制御部４８は、PL再生を行うよう再生装置全体の制御を行う。PL再生とは、BD-ROMにおけるMainClipと、ローカルストレージにおけるSubClipとを、PlayList情報内のPlayItem情報、SubPlayItem情報に従って同期再生させるという制御である。MainClip、SubClipにはEP_mapが対応づけられており、各AVClipに対するランダムアクセスの高速化が保証されている。この高速ランダムアクセスを応用することにより、PL再生では、“通常再生”、“特殊再生”を実現する。
【０１２１】
ここでPL再生における通常再生とは、MainClip、SubClipのうち、PlayList情報におけるMainPath情報を構成するPlayItem情報、SubPath情報を構成するSubPlayItem情報で、指定されている部分を、PlayItem時間軸、SubPlayItem時間軸に従って再生してゆくというものである。
PL再生における特殊再生とは、MainClip、SubClipのうち、PlayList情報におけるMainPath情報を構成するPlayItem情報、SubPath情報を構成するSubPlayItem情報で、指定されている部分に対して、早送り・巻戻し・チャプタサーチ・タイムサーチを実行してゆくというものである。
【０１２２】
PSRセット４９は、再生装置に内蔵される不揮発性のレジスタであり、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に設定されることで、再生装置においてチャプター番号が無効であることを示す。
【０１２３】
PSR(6)は、0〜999の値に設定されることで、現在の再生時点が属するPlayList(カレントPlayList)の番号を示す。
PSR(7)は、0〜255の値に設定されることで、現在の再生時点が属するPlay Item(以下カレントPIという)の番号を示す。
PSR(8)は、0〜OxFFFFFFFFの値に設定されることで、45KHzの時間精度を用いて現在の再生時点(カレントPTM)を示す。
【０１２４】
以上が再生装置の内部構成である。
＜ソフトウェアによる実装その１.PL再生制御部４８＞
以降、コンピュータソフトウェアによるPL再生制御部４８の実装について説明する。PL再生制御部４８を、コンピュータソフトウェアとして実現するには、図３０に示す再生手順をコンピュータに実行させるプログラムを作成すればよい。  つまり、PL再生における通常再生、特殊再生は、何れも、PlayItem時間軸上の任意の座標からの再生を開始するという飛込再生を前提にしているので、この飛込再生を実現するような制御を、再生装置に命じればよい。
【０１２５】
図３０は、PlayItem時間軸上の任意の座標からの飛込再生を行う場合の制御手順を示すフローチャートである。PlayItem時間軸における座標を表すOffsetαを算出し(ステップＳ１)、Offsetαを、MainClip時間軸上の座標(In_time+Offsetα)に変換する(ステップＳ２)。こうしてMainClip時間軸上の座標を求めれば、MainClipのEP_mapを用いて、MainClip時間軸上の座標(In_time+Offsetα)を、アドレスαに変換する(ステップＳ３)。
【０１２６】
ステップＳ４は、SubClipのEP_mapにおけるEP_stream_typeが、3,4,6,7であるか否かの判定である。もしそうでなければ、BD-ROMにおけるアドレスαからの読み出しを開始する(ステップＳ９)。SubClipのEP_mapにおけるEP_stream_typeが、3,4,6,7であれば、Offsetαを、SubPlayItem時間軸におけるOffsetβ(＝Offsetα−Sync_Start_Pts_of_PlayItem)に変換し(ステップＳ５)、Offsetβを、SubClip時間軸上の座標(SubPlayItem_In_time+Offsetβ)に変換する(ステップＳ６)。そしてEP_mapを用いて、SubPlayItem_In_time+Offsetβをアドレスβに変換し(ステップＳ７)、BD-ROMにおけるアドレスαからの読み出しと、ローカルストレージ２００におけるアドレスβからの読み出しとを同時に実行する(ステップＳ８)。
【０１２７】
EP_stream_typeが3,4,6,7以外の値であれば(ステップＳ４でNo)、EP_stream_typeがいわば無効であることを意味する。EP_stream_typeが無効であれば、Out-of-MUXストリームにおけるエントリー位置やエントリー時刻がどれだけの間隔で存在するかが未知数になるので、アクセス位置の特定に多大な時間がかかることも予測される。そうするとSubClipに対するランダムアクセスは、非常に時間がかかると考えられ、これをMainClipと同期再生させようとすると、MainClipの再生が著しく遅延することになる。これを避けるべく、SubClip側のランダムアクセスは事前に放棄し、MainClipのみに対して、アドレスαからの読み出しを実行する(ステップＳ９)。このように、ランダムアクセスの対象をMainClipに限定することにより、ランダムアクセス時における、著しい処理遅延を避けることができる。
【０１２８】
図３１は、図２５のように設定されたEP_mapを用いてランダムアクセス位置をどのように特定するかを模式的に示した図である。以降図３１を引用して、図３１に示したランダムアクセス位置を特定する手順について説明する。尚、この図３１は、指定された飛込位置が、MainClip及びSubClipにおいて、たまたまエントリー位置として指定されているケースを想定して作図している。指定された飛込位置が、PlayItem時間軸におけるOffsetαの位置であるとすると、プレイリスト時間軸の原点は、MainClip時間軸のIn_timeに存在するから、MainClipに対する飛込位置は、In_time＋Offsetαになり、この位置をSPNに変換し、SPNをセクタ数に換算すればよい。
【０１２９】
一方、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をアドレスに変換する。
＜ソフトウェアによる実装その２.メイン変換部４６、サブ変換部４７＞
以降、コンピュータソフトウェアによるメイン変換部４６、サブ変換部４７の実装について説明する。メイン変換部４６、サブ変換部４７を、コンピュータソフトウェアとして実現するには、図３２に示す再生手順をコンピュータに実行させるプログラムを作成すればよい。
【０１３０】
図３２は、MainClip、SubClip上の座標TMを、アドレスに変換する処理の処理手順を示すフローチャートである。
EP_HighのPTS_EP_Highに示される時間幅を足し合わせてゆき、何個目のEP_High_idにおいて、時間幅の総和ΣがIn_timeを越えるかを判定する(ステップＳ１１)。ここでPTS_EP_Highに示される時間幅とは、PTS_EP_Highを上位ビットとする時間の単位である。k個目のEP_High_idにおいて、時間幅の総和ΣがIn_timeを越えた場合、このkを記憶しておく(ステップＳ１２)。
【０１３１】
EP_Low_idを求めるため、PTS_EP_High(k-1)までの総和Σに、複数EP_LowのPTS_EP_Lowに示される時間幅を足し合わせて、何個目のEP_Low_idにおいて、時間幅の総和がIn_timeを越えるかを判定する(ステップＳ１３)。ここでh個目のEP_Low_idにおいて、時間幅の総和がIn_timeを越えた場合、このhを記憶しておく(ステップＳ１４)。
このようにして求められたk-1及びh-1の組みにより、In_timeに最も近いEntry Pointを特定する。こうして求めたEntry PointにおけるSPN_EP_High、SPN_EP_Lowの組みから、座標TMにあたる位置のSPNを算出して、SPNを、セクタアドレスに変換する(ステップＳ１５)。
【０１３２】
SPNから、セクタアドレスへの変換は、以下の処理にてなされる。ここでSPNは、TSパケットのシリアル番号であるので、このSPNに基づきTSパケットを読み出すには、SPNを相対セクタ数に変換する必要がある。ここで図４に示したように、TSパケットは32個毎に1つのAligned Unitに変換され、3つのセクタに記録されるので、SPNを32で割ることにより商を得て、その商を、Iピクチャが存在するAligned Unitの番号として解釈する。こうして得られたAligned Unit番号に3を乗ずることにより、SPNに最も近いAligned Unitのセクタアドレスを求めることができる。こうして得られたセクタアドレスは、1つのAVClipファイルの先頭からの相対セクタ数なので、この相対セクタ数をファイルポインタに設定することにより、Entry Pointにあたるセクタを特定することができる。
【０１３３】
ステップＳ１６は、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は、画面合成に必要な全ての機能セグメントを有しているので、ステップＳ１５での変換により得られたアドレスを、アクセス位置たるアドレスβとする(ステップＳ１７)。
【０１３４】
こうして、アドレスβが特定されれば、そこからの再生を実行することにより、字幕表示やメニュー表示を実現することができる。
EP_stream_typeが3(Primaryオーディオストリーム)か、4(Secondaryオーディオストリーム)であるなら、ステップＳ１５での変換により得られたアドレスを開始点として、ストリーム解析を開始する(ステップＳ１８)。このストリーム解析は、PESパケットのヘッダを取り出し、このヘッダからオーディオフレームのサイズやPTSを読み出して、そのサイズに基づき、次のオーディオフレームの記録位置を特定するという処理を行う。そして座標TM以上の値を有するPTSをもつPESパケットに到達するまで、かかる処理を繰り返す(ステップＳ１９)。
【０１３５】
もし、座標TM以上の値を有するPTSをもつPESパケットに到達すれば、かかるPESパケットのアドレスを、アクセス位置たるアドレスβとする(ステップＳ２０)。こうして、アドレスβが特定されれば、そこからの再生を実行して、音声再生を実現する。
以降、このフローチャートでの処理を、図３３、図３４を参照しながら、具体的に説明する。
【０１３６】
図３３は、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を示すものである。
【０１３７】
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パケットに辿りつくことができる。
【０１３８】
図３４は、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を示すものである。
【０１３９】
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を、読み出すことができる。
【０１４０】
以上のように本実施形態によれば、SubClipに対応するEP_mapには、EP_stream_typeが設けられているので、再生装置は、Out-of-MUXストリームのEP_mapが、ある決まった時間間隔をもったものか、又は、独立した再生単位のアドレスを指示したものであるかを知得することができる。Out-of-MUXストリーム側のEP_mapの特性がどういったものであるかを知得することができるので、高速なランダムアクセスが可能か否かを即座に判定することができる。MainClipと、SubClipとの同期を図ったとしても、レスポンス低下を伴うことはないので、MainPath＋SubPathからなるプレイリストに対する飛込再生を、MainPath単体に対する飛込再生と同程度のレスポンス性で実現することができる。
【０１４１】
(第２実施形態)
Picture in Picture(PiP)再生を実現する場合の改良に関する。PiP再生とは、PlayList情報のMainPath情報により、動画像を構成するMainClipが指定されており、PlayList情報のSubPlayItem情報により、別の動画像を構成するSubClipが指定されている場合、前者の動画像(Primary Video)と、後者の動画像(Secondary Video)とを、同じ画面内に表示するこという。
【０１４２】
図３５は、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の映像内容と組み合わせることにより、映画作品本編の再生映像の中身を、監督や出演者が指さして、解説しているような、楽しい画面演出を実現することができる。
【０１４３】
図３６（ａ）は、HD画像と、SD画像とを対比して示す図である。
HD画像は、1920×1080という解像度を有し、フィルム素材同様、3750（もしくは3753か3754）クロックのフレーム間隔を有する。
SD画像は、720×480という解像度を有し、NTSC素材同様、1501クロックの表示間隔、又は、PAL素材同様、1800クロックのフレーム間隔を有する。
【０１４４】
本図に示すように、SD画像の解像度は、HD画像の解像度の約1/4程度なので、HD画像たるPrimary Videoと、SD画像たるSecondary Videoとを同じ画面上に表示すると、Secondary Videoは、Primary Videoに対し、約1/4程度の大きさになる。図３６（ｂ）は、Secondary Videoがどのように拡大・縮小されるかを示す図である。Secondary Videoの拡大・縮小は、Scalling Factorに従ってなされる。このScalling Factorは、縦1/4倍、縦1/2倍、縦1.5倍、縦2倍といった倍率で与えられる。再生装置は、このScalling Factorに従い、Secondary Videoを縦方向に拡大・縮小を行う。また、横方向に対しても、SD画像の元々のアスペクト比を維持するように、拡大・縮小を行う。
【０１４５】
こうした拡大・縮小により、PiP再生を行うにあたっての、Secondary Videoのレイアウトを自由に変化させることができる。
以上のようなPiP再生アプリケーションを構成する場合の、記録媒体、再生装置の構成について説明する。本実施形態において、BD-ROMに記録されたAVClipは、上述したPrimary Videoを構成するものとする。Primary Videoはサイズが大きいので、大容量メディアによる頒布が最適であるという理由による。一方、Secondary Videoを構成するSubClipや、Primary Videoと、Secondary Videoとの同期を規定するようなPlayList情報は、ネットワークを通じて再生装置に伝送され、ローカルストレージに記録される。
【０１４６】
＜ローカルストレージ２００の構成その１.ファイル構成＞
図３７は、第２実施形態に係るローカルストレージの記録内容を示す図である。本図は、図１１と同様の表記で、ローカルストレージの構成を示している。本図が図１１と異なるのは、ローカルストレージに記録されているSubClip(00002.m2ts)が、Secondary Videoストリームであり、Clip情報(00002.clpi)は、このSecondary Videoストリームに対するEP_mapを有している点である。
＜ローカルストレージ２００の構成その２.Clip情報＞  
図３８は、第２実施形態において、ローカルストレージに記録されているClip情報の内部構成を示す図である。このClip情報は、Secondary Videoストリームに対するClip情報である。図中の引き出し線cu2,cu3,cu4,cu5は、このClip情報におけるEP_mapの内部構成をクローズアップしている。
【０１４７】
これらの引き出し線に示すEP_mapは、図８に示したものと同一構成であり、Secondary Videoに対するEP_mapは、Secondary Videoストリームを構成する個々のアクセスユニット(GOP)の先頭をエントリー位置として、エントリー時刻と対応づけて示している。Secondary Videoであるとはいえ、このEP_mapは、動画像を対象としたものだから、エントリー時刻同士の時間間隔は1秒未満であり、EP_stream_typeは、図８同様、“1:Video Type”に設定されている。
【０１４８】
引き出し線ct1,ct2は、Clip Infoの内部構成をクローズアップしている。Clip Infoの内部構成においてApplication Typeは、Clip情報に対応するSubClipが、“映像付きの追加コンテンツ(TS for additional content with video)”であることを示している。図３９は、Secondary Videoストリームに対して設定されたEP_mapを、図９と同様の表記で示した図である。
【０１４９】
以上が第２実施形態に係る、Clip情報についての説明である。
＜ローカルストレージの構成その３.PlayList情報＞  
続いて第２実施形態に係るPlayList情報について説明する。ここでPiP再生には、静的な同期にて構成されるものと、動的な同期にて構成されるものがある。先程述べたような、映画作品本編たるPrimary Videoと、コメンタリ映像たるSecondary VideoとからなるPiP再生アプリケーションは、前者の静的なPiP再生により構成される。
【０１５０】
＜PlayList情報の詳細その１.静的PiPを実現するための構成要素＞
図４０は、静的なPiP再生を定義するPlayList情報を示す図である。静的な同期によるPiP再生を定義するPlayList情報は、その内部に複数のSubPath情報を定義することができ(Multi-SubPath)、また個々のSubPath情報内に、複数のSubPlayItem情報(Multi-SubPlayItem)を定義することができる。
【０１５１】
本図におけるSubPlayItem情報には、PiP_Position、PiP_Sizeという情報要素が新規に追加され、各情報要素は以下のように設定される。
SubPlayItem情報の“Clip_information_file_name”には、Primary VideoたるAVClipのファイル名を記述することができる。
“Sub_PlayItem_In_time”は、Secondary VideoたるSubClipの時間軸のうち、Sub PlayItemの開始時点となる再生時点を示す。
【０１５２】
“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)の再生を開始するかを示す。
【０１５３】
“PiP_Position”は、Primary Video再生のための画面プレーン上のX座標、Y座標を用いて、Secondary Videoの再生映像が配置されるべき位置を示す。
“PiP_Size”は、Secondary Video再生映像の縦サイズ、横サイズを示す。
＜PlayList情報の詳細その２.静的PiPにおける同期＞
図４１は、PlayList情報により、Primary VideoたるMainClipと、Secondary VideoたるSubClipとの同期がどのように定義されるかを、図２５、図２６と同様の表記で示した図である。
【０１５４】
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つ設けることは、先ず不可能である。
【０１５５】
Primary Video側の早送り・巻戻しに伴い、Secondary Videoも同様に早送り・巻戻しするという同期処理の実現が、現実的であるから、SubClipにEP_mapを設け、Primary Videoに対して早送り・巻戻しを行う際、Secondary Videoに対しても、早送り・巻戻しを行うようにしている。
以上が、静的な同期を前提にした、PlayList情報についての説明である。
＜PlayList情報の詳細その３.動的な同期によるPiP再生＞
続いて動的な同期を前提したPlayList情報について説明する。
【０１５６】
動的な同期とは、Secondary Videoストリーム(SubClip)に対応するSubPlayItemの再生を、Primary Videoストリーム(MainClip)に対応するPlayItemの時間軸上のどの時点で開始させるかが、ユーザ操作により動的に変化することをいう。制作者が構想しているアプリケーションイメージは、以下のようなものである。図４２（ａ）〜（ｃ）は、動的な同期を前提にした、アプリケーションを示す図である。
【０１５７】
このアプリケーションのうち、Primary Videoの映像内容は、図４２（ａ）のようなものである。図４２（ａ）に示した個々のボタンは、動画像のサムネールの絵柄をもつボタン(サムネールボタン)であり、ノーマル状態、セレクテッド状態、アクティブ状態という3つの状態をもつ。そして、これらのサムネールボタンのどれかがセレクテッド状態になった際(図４２（ｂ）)、このセレクテッド状態になったサムネールの代わりに、Secondary Videoの再生映像をはめ込んで再生させたい(図４２（ｃ）)との構想を、制作者が抱いているものとする。本例のアプリケーションのように、再生時のユーザによって、Secondary Video再生の開始時点が変化するのが、“動的な同期”である。そして、この図４２（ｂ）の一例において、何れかのサムネールをセレクテッド状態にする操作(この場合、ボタンの選択操作になる)をロック操作という。
【０１５８】
動的な同期において、どのサムネールに対応するSecondary Videoを再生させるかは、再生時までわからず、またPrimary Videoの再生時において、Secondary Videoの同期時点を、動的に定める必要がある。
＜PlayList情報の詳細その４.動的PiPを実現するための構成要素＞
図４３は、動的な同期を前提にしたPiP再生を定義する、PlayList情報の内部構成構成を示す図である。
【０１５９】
動的同期によるPiP再生を定義するPlayList情報は、その内部に複数のSubPath情報を定義することができる(Multi-SubPath)。しかし個々のSubPath情報内には、1つのSubPlayItem情報しか、定義することができない(Single-SubPlayItem)。
本図におけるSubPlayItem情報には、図４０同様、PiP_Position、PiP_Sizeという情報要素を有する。このうち、SubPlayItem情報のClip_information_file_name、SubPalyItem_In_time、SubPalyItem_Out_time、Sync_PlayItem_Id、PiP_Position、PiP_Sizeに対する設定は、図４０と同様である。異なるのは、Sync_Start_Pts_of_PlayItemの設定である。
【０１６０】
“Sync_Start_Pts_of_PlayItem”は、不定値が設定されている。この不定値は、Sync_PlayItem_Idにて指定されたPlayItemの時間軸において、ユーザによりロック操作がなされた時点を、Sync_PlayItem_Idにて指定されたPlayItemとの同期時点に定める旨を示す。
この図４３のPlayList情報を再生装置が参照した際、サムネールボタンが、セレクテッド状態になり、自動的にアクティブ状態になった時点における再生経過時を、ロック操作の時点としてSync_Start_PTS_of_PlayItemに書き込むよう再生装置が動作すれば、サムネールがアクティブ状態になった時点から、Secondary Videoの再生は開始することになる。この手順は、サムネールボタンの選択・自動確定時のみを行うべき手順、つまりサムネールボタンに特化したものなので、サムネールボタン固有の制御を規定する、ナビコマンドを用いて記述するのが望ましい。
【０１６１】
以上が、動的同期によるPiP再生を実現する、PlayList情報の内部構成である。以上で、本実施形態に係る記録媒体の改良についての説明を終える。
続いて本実施形態に係る再生装置の改良について説明する。
＜再生装置の構成その１.全体構成＞
図４４は、第２実施形態に係る再生装置の内部構成を示す図である。本図は、紙面の都合から、オーディオデコーダに係る構成要素を省略している。
【０１６２】
本図は、図２９に示した再生装置の構成図をベースにしており、共通の構成要素については、同じ参照符号を付している。こうした共通の構成要素のうち、Transport Buffer５、Multiplexed Buffer６、Coded Picture Buffer７、ビデオデコーダ８、Decoded Picture Buffer１０、Primary Videoプレーン１１は、第２実施形態において、Primary Videoストリームのデコードを行うという役割を果たす。
【０１６３】
一方、Secondary Videoストリームのデコードを行うべく、図４４に係る再生装置のハードウェア構成には、Transport Buffer５１、Multiplexed Buffer５２、Coded Picture Buffer５３、ビデオデコーダ５４、Decoded Picture Buffer５５、Secondary Videoプレーン５６、スケーラ５７、合成部５８が設けられている。以降、新規に追加された、これらの構成要素を説明する。
＜再生装置３００の構成その２.ハードウェア構成に追加された構成要素＞
Transport Buffer(TB)５１は、Secondary Videoストリーム(SubClip)に帰属するTSパケットがPIDフィルタ３５から出力された際、一旦蓄積されるバッファである。
【０１６４】
Multiplexed Buffer(MB)５２は、Transport Buffer５１からCoded Picture Buffer５３にSecondary Videoストリームを出力するにあたって、一旦PESパケットを蓄積しておくためのバッファである。
Coded Picture Buffer(CPB)５３は、符号化状態にあるピクチャ(Iピクチャ、Bピクチャ、Pピクチャ)が格納されるバッファである。
【０１６５】
ビデオデコーダ５４は、Secondary Videoストリームの個々のフレーム画像を所定の復号時刻（DTS）ごとにデコードすることにより複数フレーム画像を得て、Decoded Picture Buffer５５に書き込む。
Decoded Picture Buffer５５は、復号されたピクチャが書き込まれるバッファである。
Secondary Videoプレーン５６は、Secondary Videoをデコードすることにより得られる再生映像を格納する。
【０１６６】
Scaller５７は、SubPlayItem情報のPiP_Sizeに示される縦・横の大きさに基づき、Secondary Videoプレーン５６上に得られた再生映像を拡大又は縮小する。
合成部５８は、Scaller５７によりされた拡大又は縮小された再生映像と、ビデオデコーダにより得られた再生映像とを合成することでPiP再生を実現する。合成部５８によるPrimary Videoの再生映像と、Secondary Videoの再生映像との合成は、SubPlayItem情報にて規定されている、PiP_Positionに従ってなされる。こうすることにより、Primary Videoの再生映像と、Secondary Videoの再生映像とが合成された合成映像が再生されることになる。この合成部５８による合成では、クロマキー合成、レイヤ合成等が可能であり、Secondary Videoにおける背景を取り除き、人物部分を抜き出した上で、Primary Videoの再生映像に合成することも可能である。
【０１６７】
以上の構成要素が追加されたので、第２実施形態においてPIDフィルタ３５は、Secondary Videoストリームを構成するTSパケットを、Transport Buffer５１〜Secondary Videoプレーン５６に供給する。以上が、再生装置におけるハードウェア構成要素である。
＜再生装置３００の構成その２.制御部４５に追加された構成要素＞
制御部４５には、機能的な構成要素としてSync設定部５０が設定されている。
【０１６８】
Sync設定部５０は、SubPlayItem情報におけるSync_Start_PTS_of_PlayItemが不定値であるか否かを判定して、不定値である場合、MainClipのうち、PlayItem情報で指定された再生区間のみが再生されている状態において、同期区間の開始点を定める操作(ロック操作)を受け付ける。この受け付けは、リモコンを介してなされる。ロック操作を受け付けると、ロック操作の時点を示す時間情報を用いて、SubPlayItem情報のSync_Start_PTS_of_PlayItemにおける不定値を上書きする。ここでロック操作が、MainClipの再生映像上に現れた何れかのボタンを選択する操作で実現される場合、当該ボタンの選択操作がなされた時点をロック操作の時点とする。
【０１６９】
このようにしてSync_Start_PTS_of_PlayItemが設定されれば、Primary Videoに対して設定されたPlayItemと、Secondary Videoに対して設定されたSubPlayItemとを再生するようPL再生制御部４８が再生制御を行うことにより、動的な同期によるPiP再生を実現することができる。
無論、Sync_Start_PTS_of_PlayItemとして、時間情報が静的に設定されている場合、Primary Videoに対して設定されたPlayItemと、Secondary Videoに対して設定されたSubPlayItemとを再生するようPL再生制御部４８が再生制御を行うことにより、静的な同期によるPiP再生を実現することができる。
【０１７０】
＜再生装置の構成その２.ソフトウェア実装＞
以上が第２実施形態にかかる構成要素についての説明である。続いて、ソフトウェア実装における第２実施形態の改良点について説明する。
図４５は、PlayItem時間軸上の任意の座標からの飛込再生を行う場合の制御手順を示すフローチャートである。本フローチャートは、図３０のフローチャートをベースにして作成されている。本図は、ステップＳ４〜ステップＳ８が、ステップＳ３１〜Ｓ３５に置き換えられている点を除き、図３０と同一である。ステップＳ３１においてSubClipのEP_mapにおけるEP_stream_typeがVideo Typeであるか否かを判定する。SubClipのEP_mapにおけるEP_stream_typeが、Video Tyte:1であれば(ステップＳ３１でyes)、PlayItem時間軸におけるOffsetαを、SubPlayItem時間軸におけるOffsetβ(＝Offsetα−Sync_Start_Pts_of_PlayItem)に変換し(ステップＳ３２)、Offsetβを、SubClip時間軸上の座標(SubPlayItem_In_time+Offsetβ)に変換する(ステップＳ３３)。そしてEP_mapを用いて、SubPlayItem_In_time+Offsetβを、Secondary VideoたるSubClipのGOPのアドレスβに変換し(ステップＳ３４)、BD-ROMにおけるアドレスαからの、Primary VideoのGOPの読み出しと、ローカルストレージ２００におけるアドレスβからの、Secondary VideoのGOPの読み出しとを同時に実行する(ステップＳ３５)。
【０１７１】
ステップＳ３１において、SubClipのEP_mapにおけるEP_stream_typeが、Video Tyte:1でないなら、図３０のステップＳ４〜ステップＳ８を実行する。
図４６は、MainClipに対するランダムアクセスと、SubClipに対するランダムアクセスとを、図３１と同様の表記で描いた図である。Secondary VideoたるSubClipには、1秒未満の時間間隔でエントリー位置が指定されており、これを用いて、SubClipに対するランダムアクセスが行われる。SubClipに対するランダムアクセスが、MainClipに対するランダムアクセスと、同程度の処理速度をもって行われるので、MainClipに対して飛び込み再生を行い、それと共に、SubClipに対しても飛び込み再生を行うという、飛び込み再生の同期を実現することができる。
【０１７２】
以上のように本実施形態によれば、HD画像たるPrimary Videoに、SD画像たるSecondary Videoを組み合わせて、再生に供するというPiP再生においても、ランダムアクセスの高速化を実現することができ、この高速化を前提にて、PiP再生を、特殊再生で再生してゆくことが可能になる。
(備考)
以上の説明は、本発明の全ての実施行為の形態を示している訳ではない。下記(A)(B)(C)(D)・・・・・の変更を施した実施行為の形態によっても、本発明の実施は可能となる。本願の請求項に係る各発明は、以上に記載した複数の実施形態及びそれらの変形形態を拡張した記載、ないし、一般化した記載としている。拡張ないし一般化の程度は、本発明の技術分野の、出願当時の技術水準の特性に基づく。  
【０１７３】
(A)各実施形態に示したフローチャートや、機能的な構成要素による情報処理は、ハードウェア資源を用いて具体的に実現されていることから、自然法則を利用した技術的思想の創作といえ、“プログラムの発明”としての成立要件を満たす。
・本発明に係るプログラムの生産形態
本発明に係るプログラムは、以下のようにして作ることができる。先ず初めに、ソフトウェア開発者は、プログラミング言語を用いて、各フローチャートや、機能的な構成要素を実現するようなソースプログラムを記述する。この記述にあたって、ソフトウェア開発者は、プログラミング言語の構文に従い、クラス構造体や変数、配列変数、外部関数のコールを用いて、各フローチャートや、機能的な構成要素を具現するソースプログラムを記述する。
【０１７４】
具体的には、フローチャートにおける繰り返し処理は、上記構文に規定されたfor文等を用いて記述する。判定処理は、上記構文に規定されたif文,swith文等を用いて記述する。デコーダに対する再生制御や、ドライブ装置のアクセス制御等、ハードウェアについての制御は、ハードウェアの製造元から供給される外部関数を呼び出すことにより、記述する。
【０１７５】
記述されたソースプログラムは、ファイルとしてコンパイラに与えられる。コンパイラは、これらのソースプログラムを翻訳してオブジェクトプログラムを生成する。
コンパイラによる翻訳は、構文解析、最適化、資源割付、コード生成といった過程からなる。構文解析では、ソースプログラムの字句解析、構文解析および意味解析を行い、ソースプログラムを中間プログラムに変換する。最適化では、中間プログラムに対して、基本ブロック化、制御フロー解析、データフロー解析という作業を行う。資源割付では、ターゲットとなるプロセッサの命令セットへの適合を図るため、中間プログラム中の変数をターゲットとなるプロセッサのプロセッサが有しているレジスタまたはメモリに割り付ける。コード生成では、中間プログラム内の各中間命令を、プログラムコードに変換し、オブジェクトプログラムを得る。
【０１７６】
ここで生成されたオブジェクトプログラムは、各実施形態に示したフローチャートの各ステップや、機能的構成要素の個々の手順を、コンピュータに実行させるような1つ以上のプログラムコードから構成される。ここでプログラムコードは、プロセッサのネィティブコード、JAVA(登録商標)バイトコードというように、様々な種類がある。プログラムコードによる各ステップの実現には、様々な態様がある。外部関数を利用して、各ステップを実現することができる場合、この外部関数をコールするコール文が、プログラムコードになる。また、1つのステップを実現するようなプログラムコードが、別々のオブジェクトプログラムに帰属することもある。命令種が制限されているRISCプロセッサでは、算術演算命令や論理演算命令、分岐命令等を組合せることで、フローチャートの各ステップを実現してもよい。
【０１７７】
オブジェクトプログラムが生成されるとプログラマはこれらに対してリンカを起動する。リンカはこれらのオブジェクトプログラムや、関連するライブラリプログラムをメモリ空間に割り当て、これらを１つに結合して、ロードモジュールを生成する。こうして生成されるロードモジュールは、コンピュータによる読み取りを前提にしたものであり、各フローチャートに示した処理手順や機能的な構成要素の処理手順を、コンピュータに実行させるものである。以上の処理を経て、本発明に係るプログラムを作ることができる。
(B)本発明に係るプログラムは、以下のようにして使用することができる。
【０１７８】
(i)組込プログラムとしての使用
本発明に係るプログラムを組込プログラムとして使用する場合、プログラムにあたるロードモジュールを、基本入出力プログラム(BIOS)や、様々なミドルウェア(オペレーションシステム)と共に、命令ROMに書き込む。こうした命令ROMを、制御部に組み込み、CPUに実行させることにより、本発明に係るプログラムを、再生装置の制御プログラムとして使用することができる。
【０１７９】
(ii)アプリケーションとしての使用
再生装置が、ハードディスク内蔵モデルである場合は、基本入出力プログラム(BIOS)が命令ROMに組み込まれており、様々なミドルウェア(オペレーションシステム)が、ハードディスクにプレインストールされている。また、ハードディスクから、システムを起動するためのブートROMが、再生装置に設けられている。
【０１８０】
この場合、ロードモジュールのみを、過搬型の記録媒体やネットワークを通じて、再生装置に供給し、1つのアプリケーションとしてハードディスクにインストールする。そうすると、再生装置は、ブートROMによるブートストラップを行い、オペレーションシステムを起動した上で、1つのアプリケーションとして、当該アプリケーションをCPUに実行させ、本発明に係るプログラムを使用する。
【０１８１】
ハードディスクモデルの再生装置では、本発明のプログラムを1つのアプリケーションとして使用しうるので、本発明に係るプログラムを単体で譲渡したり、貸与したり、ネットワークを通じて供給することができる。
(C)本発明に係るシステムLSIの生産・使用行為
システムLSIとは、高密度基板上にベアチップを実装し、パッケージングしたものをいう。複数個のベアチップを高密度基板上に実装し、パッケージングすることにより、あたかも１つのLSIのような外形構造を複数個のベアチップに持たせたものも、システムLSIに含まれる(このようなシステムLSIは、マルチチップモジュールと呼ばれる。)。
【０１８２】
ここでパッケージの種別に着目するとシステムLSIには、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)という種別がある。QFPは、パッケージの四側面にピンが取り付けられたシステムLSIである。PGAは、底面全体に、多くのピンが取り付けられたシステムLSIである。
これらのピンは、ドライブ装置との入出力インターフェイス、リモコン装置との入力インターフェイス、テレビとのインターフェイス、その他、IEEE1394インターフェイスやPCIバスとのインターフェイスとしての役割を担っている。システムLSIにおけるピンには、こうしたインターフェイスの役割が存在するので、システムLSIにおけるこれらのピンに、ドライブ装置等や再生装置の各種回路を接続することにより、システムLSIは、再生装置の中核としての役割を果たす。
【０１８３】
システムLSIにパッケージングされるベアチップとは、各実施形態において内部構成図として示した各構成要素の機能を具現する命令ROMやCPU、デコーダLSI等である。
先に“組込プログラムとしての使用”で述べたように、命令ROMには、プログラムにあたるロードモジュールや、基本入出力プログラム(BIOS)、様々なミドルウェア(オペレーションシステム)が書き込まれる。本実施形態において、特に創作したのは、このプログラムにあたるロードモジュールの部分なので、プログラムにあたるロードモジュールを格納した命令ROMを、ベアチップとしてパッケージングすることにより、本発明に係るシステムLSIは生産することができる。
【０１８４】
生産手順の詳細は以下のものになる。まず各実施形態に示した構成図を基に、システムLSIとすべき部分の回路図を作成し、回路素子やIC,LSIを用いて、構成図における構成要素を具現化する。
そうして、各構成要素を具現化してゆけば、回路素子やIC,LSI間を接続するバスやその周辺回路、外部とのインターフェイス等を規定する。更には、接続線、電源ライン、グランドライン、クロック信号線等も規定してゆく。この規定にあたって、LSIのスペックを考慮して各構成要素の動作タイミングを調整したり、各構成要素に必要なバンド幅を保証する等の調整を加えながら、回路図を完成させてゆく。
【０１８５】
回路図が完成すれば、実装設計を行う。実装設計とは、回路設計によって作成された回路図上の部品(回路素子やIC,LSI)を基板上のどこへ配置するか、あるいは、回路図上の接続線を、基板上にどのように配線するかを決定する基板レイアウトの作成作業である。
ここで実装設計は、自動配置と、自動配線とからなる。
CAD装置を利用する場合、この自動配置は、“重心法”と呼ばれる専用のアルゴリズムを用いて実現することができる。自動配線は、回路図上の部品のピン同士を接続するような接続線を、金属箔やビアを用いて規定する。CAD装置を利用する場合、この配線処理は、“メーズ法”“ラインサーチ法”と呼ばれる専用のアルゴリズムを用いて実現することができる。  
【０１８６】
こうして実装設計が行われ、基板上のレイアウトが確定すれば、実装設計結果をCAMデータに変換して、NC工作機械等の設備に出力する。NC工作機械は、このCAMデータを基に、SoC実装やSiP実装を行う。SoC(System on chip)実装とは、1チップ上に複数の回路を焼き付ける技術である。SiP(System in Package)実装とは、複数チップを樹脂等で1パッケージにする技術である。以上の過程を経て、本発明に係るシステムLSIは、各実施形態に示した再生装置の内部構成図を基に作ることができる。
【０１８７】
尚、上述のようにして生成される集積回路は、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。
さらに、各再生装置の構成要素の一部又は全てを1つのチップとして構成してもよい。集積回路化は、上述したSoC実装,SiP実装に限るものではなく、専用回路又は汎用プロセスで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA（Field Programmable Gate Array）や、LSI内部の回路セルの接続や設定を再構成可能なシリコンフィギュラブル・プロセッサを利用することが考えられる。更には、半導体技術の進歩又は派生する技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積回路化を行っても良い。例えば、バイオ技術の適応などが可能性としてありうる。  
【０１８８】
(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)であってもよい。
【０１８９】
(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方式であってもよい。
【０１９０】
(F)各実施形態ではMPEG４-AVC（H.264やJVTとも呼ばれる）をもとに説明したが、MPEG２ビデオストリームであってもよく、また、その他の形式(VC-1等)の画像の場合でも単独でデコード可能な画像であれば、容易に応用可能である。
(G)Sync設定部５０によりSync_Start_PTS_of_PlayItemが設定された場合、Sync設定部５０は、図４７（ａ）〜（ｃ）のような再生制御を行うことが望ましい。
【０１９１】
図４７（ａ）は、動的同期によるPiP再生を実現する場合の再生制御を示す図である。PlayItem時間軸の任意の一時点を、SubPlayItemの同期時点に定める。従って現在の再生時点が、Sync_Start_PTS_of_PlayItemに規定された時点に到達すれば、Secondary Videoのデコードを開始して、Secondary Videoの再生映像を、Primary Videoの再生映像に合成させる。
【０１９２】
図４７（ｂ）は、通常再生によるロック点の通過→巻戻しによるロック点の通過→通常再生によるロック点の通過がなされて、ロック点の行き来が生じた場合、動的な同期によるPiP再生がどのように行われるかを示す図である。つまり、現在の再生時点がロック点を通過した後、ユーザが巻戻しを行い、ロック点前まで戻って、再びロック点を通過した場合の、動的同期によるPiP再生を示している。
【０１９３】
ロック点の通過により、PiP再生を開始するが、巻戻しがなされた時点で、PiP再生をやめる。以降通常再生がなされ、再びロック点を通過した後も、PiP再生は行わない。
図４７（ｃ）は、Primary Videoの再生区間の末尾より、Secondary Videoの再生区間が後である場合の、PiP再生を示す図である。この場合、Secondary Videoの再生が終わるまで、Primary Videoの最後のピクチャの表示を継続すれば良い。Primary Videoの再生が終わった時点で、Secondary Videoの再生を終えてもよい。
【０１９４】
(H)PiP再生におけるSecondary Videoの再生位置を、細かい時間間隔で変化させない場合、多くの時間情報や位置情報を、PlayList情報に定義しておく必要がある。この場合、PlayList情報に、BD-RE規格に規定されたUser Private情報や複数のPLMark情報を設け、これらの情報に、PiP_Positionや、PiP_Sizeを定義するのが望ましい。そしてScaller５７や合成部５８は、これらUser Private情報や複数のPLMark情報に基づき、拡大・縮小処理や合成処理を行うのが望ましい。
【０１９５】
(I)PlayList情報のMainPath情報により指定されたMainClipたるPrimary Videoと、PlayList情報のSubPlayItem情報により指定されたSubClipたるSecondary Videoとを、一画面ではなく、別々の画面で表示するようにしてもよい。また、Primary VideoをSD画像で構成し、Secondary VideoをHD画像で構成してもよい。
(J)第２実施形態においてPrimary VideoたるMainClipは、BD-ROMにて供給され、Secondary VideoたるSubClipはローカルストレージ２００にて供給されるとしたが、Secondary VideoたるSubClipは、BD-ROMに記録され、Primary VideoたるMainClipと共に、再生装置に供給されるとしてもよい。
【０１９６】
またSecondary Videoストリームと、Primary Videoストリームとは、1つのAVClipに多重化されていてもよい。
【産業上の利用可能性】
【０１９７】
本発明に係る記録媒体及び再生装置は、ホームシアターシステムでの利用のように、個人的な用途で利用されることがありうる。しかし本発明は、上記実施形態に内部構成が開示されており、この内部構成に基づき量産することが明らかであるので、本発明に係る記録媒体及び再生装置は、工業製品の生産分野において生産し、又は、使用することができる。このことから本発明に係る記録媒体及び再生装置は、産業上の利用可能性を有する。  
【図面の簡単な説明】
【０１９８】
【図１】本発明に係る記録媒体が使用される形態を示す図である。
【図２】BD-ROMの内部構成を示す図である。
【図３】拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。
【図４】MainClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す図である。
【図５】映画に用いられるビデオストリームの内部構成を示す図である。
【図６】（ａ）IDRピクチャの内部構成を示す図である。  （ｂ）Non-IDR Iピクチャの内部構成を示す。  （ｃ）Non-IDR Iピクチャにおける依存関係を示す。
【図７】IDRピクチャ、Non-IDR IピクチャがTSパケットに変換される過程を示す図である。
【図８】Clip情報の内部構成を示す図である。
【図９】映画のビデオストリーム(application_type=1)に対するEP_map設定を示す図である。
【図１０】図９におけるEntry Point＃1〜Entry Point＃7のPTS_EP_start、SPN_EP_startを、EP_Low、EP_Highの組みで表現したものである。
【図１１】ローカルストレージの内部構成を示す図である。
【図１２】Primaryオーディオストリーム及びSecondaryオーディオストリームの内部構成を示す図である。
【図１３】PGストリームの内部構成を示す図である。
【図１４】IGストリームの内部構成を示す図である。
【図１５】ローカルストレージ側のClip情報のデータ構造を示す図である。
【図１６】Primaryオーディオストリーム、Secondaryオーディオストリームに対して生成されるEP_mapを示す図である。
【図１７】PGストリーム時間軸に対して設定されたEP_mapを示す図である。
【図１８】IGストリーム時間軸に対して設定されたEP_mapを示す図である。
【図１９】PlayList情報のデータ構造を示す図である。
【図２０】AVClipと、PlayList情報との関係を示す図である。
【図２１】PlayList情報の、PlayListMark情報の内部構成を示す図である。
【図２２】PlayList情報の、PlayListMark情報によるチャプター位置の指定を示す図である。
【図２３】Subpath情報の内部構成をクローズアップして示す図である。
【図２４】ローカルストレージ上のSubClipと、ローカルストレージ上のPlayList情報と、BD-ROM上のMainClipとの対応を示す図である。
【図２５】MainClipに対して設定されたEP_map及びPlayItem時間軸と、Primaryオーディオストリーム、SecondaryオーディオストリームとなるSubClipに対し設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
【図２６】MainClipに対して設定されたEP_map及びPlayItem時間軸と、PGストリーム、IGストリームとなるSubClipに対し設定されたEP_map及びSubPlayItem時間軸とを集約して示す図である。
【図２７】SubPlayItemのSubPath_typeと、application_typeと、EP_stream_typeとの対応関係を表形式に示す図である。
【図２８】再生装置３００により生成されるバーチャルファイルシステムを示す図である。
【図２９】本発明に係る再生装置の内部構成を示す図である。
【図３０】飛込再生の処理手順を示すフローチャートである。
【図３１】図２５のように設定されたEP_mapを用いてランダムアクセス位置をどのように特定するかを模式的に示した図である。
【図３２】MainClip、SubClip上の座標TMを、アドレスに変換する処理の処理手順を示すフローチャートである。
【図３３】SubClipがPrimaryオーディオストリーム、Secondaryオーディオストリームである場合の、変数k,h,ランダムアクセス位置の関係を示す図である。
【図３４】SubClipがPGストリーム、IGストリームである場合の、変数k,h,ランダムアクセス位置の関係を示す図である。
【図３５】PiP再生の一例を示す図である。
【図３６】（ａ）HD画像と、SD画像とを対比して示す図である。  （ｂ）Secondary Videoがどのように拡大・縮小されるかを示す図である。
【図３７】第２実施形態に係るローカルストレージの記録内容を示す図である。
【図３８】第２実施形態において、ローカルストレージに記録されているClip情報の内部構成を示す図である。
【図３９】Secondary Videoストリームに対して設定されたEP_mapを、図９と同様の表記で示した図である。
【図４０】静的なPiP再生を構成する、同期型アプリケーションを定義するPlayList情報を示す図である。
【図４１】PlayList情報により、Primary VideoたるMainClipと、Secondary VideoたるSubClipとの同期がどのように定義されるかを、図２５、図２６と同様の表記で示した図である。
【図４２】（ａ）〜（ｃ）動的な同期を前提にした、アプリケーションを示す図である。
【図４３】動的な同期を前提にしたPiP再生を定義する、PlayList情報の内部構成を示す図である。
【図４４】第２実施形態に係る再生装置の内部構成を示す図である。
【図４５】PL再生を行うにあたっての処理手順を示すフローチャートである。
【図４６】MainClipに対するランダムアクセスと、SubClipに対するランダムアクセスとを、図３１と同様の表記で描いた図である。
【図４７】（ａ）動的同期によるPiP再生を実現する場合の再生制御を示す図である。  （ｂ）通常再生によるロック点の通過→巻戻しによるロック点の通過→通常再生によるロック点の通過がなされて、ロック点の行き来が生じた場合、動的な同期によるPiP再生がどのように行われるかを示す図である。  （ｃ）Primary Videoの再生区間の末尾より、Secondary Videoの再生区間が後である場合の、PiP再生を示す図である。
【符号の説明】
【０１９９】
１  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
３２  スイッチ
３３  Arrival Time Clock Counter
３４  Source De-Packetizer
３５  PIDフィルタ
３６  スイッチ
３７  Transport Buffer
３８  Elementary Buffer
３９  オーディオデコーダ
４０  Transport Buffer
４１  バッファ
４２  オーディオデコーダ
４３  ミキサー
４４  シナリオメモリ
４５  制御部
４６  メイン変換部
４７  サブ変換部
４８  PL再生制御部
４９  PSRセット
【図１】
2008259223.tif 000003
【図２】
2008259223.tif 000004
【図３】
2008259223.tif 000005
【図４】
2008259223.tif 000006
【図５】
2008259223.tif 000007
【図６】
2008259223.tif 000008
【図７】
2008259223.tif 000009
【図８】
2008259223.tif 000010
【図９】
2008259223.tif 000011
【図１０】
2008259223.tif 000012
【図１１】
2008259223.tif 000013
【図１２】
2008259223.tif 000014
【図１３】
2008259223.tif 000015
【図１４】
2008259223.tif 000016
【図１５】
2008259223.tif 000017
【図１６】
2008259223.tif 000018
【図１７】
2008259223.tif 000019
【図１８】
2008259223.tif 000020
【図１９】
2008259223.tif 000021
【図２０】
2008259223.tif 000022
【図２１】
2008259223.tif 000023
【図２２】
2008259223.tif 000024
【図２３】
2008259223.tif 000025
【図２４】
2008259223.tif 000026
【図２５】
2008259223.tif 000027
【図２６】
2008259223.tif 000028
【図２７】
2008259223.tif 000029
【図２８】
2008259223.tif 000030
【図２９】
2008259223.tif 000031
【図３０】
2008259223.tif 000032
【図３１】
2008259223.tif 000033
【図３２】
2008259223.tif 000034
【図３３】
2008259223.tif 000035
【図３４】
2008259223.tif 000036
【図３５】
2008259223.tif 000037
【図３６】
2008259223.tif 000038
【図３７】
2008259223.tif 000039
【図３８】
2008259223.tif 000040
【図３９】
2008259223.tif 000041
【図４０】
2008259223.tif 000042
【図４１】
2008259223.tif 000043
【図４２】
2008259223.tif 000044
【図４３】
2008259223.tif 000045
【図４４】
2008259223.tif 000046
【図４５】
2008259223.tif 000047
【図４６】
2008259223.tif 000048
【図４７】
2008259223.tif 000049