(57)【要約】      （修正有）【課題】多くの言語での字幕表示を楽しみたいというユーザの願望と、テキスト字幕の表示時においても品質保証を維持したいというメーカーの現実的な要望との調和を図ることができる再生装置を提供する。【解決手段】PSR48〜61は、複数のDecode Capabilityフラグを記憶しており、各フラグの設定値にて、言語毎のテキスト字幕のデコード能力の有無を表している。Procedure実行部２０は、PSR48〜61における各フラグの設定値を参照して、複数のテキスト字幕ストリームのそれぞれを表示することができるか否かを判定する。ストリーム選択部１７は、表示できると判定されたテキスト字幕ストリームを選択する。PSR30のb16〜b23は、許可フラグを含み、許可フラグは、レンダリング能力はあるが、サポート能力がない言語であるアンサポート言語の選択を、ストリーム選択部１７に許可するか否かを示す。【選択図】図２０
2008251151.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体に記録されたプレイリスト情報にて指定されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する再生装置であって、
複数の条件のうち第１の条件は、字幕を表す文字コードをデコードして、ビットマップに展開する能力が再生装置に存在すること、
第２の条件は、各言語特有の表示方法に対応するテキスト字幕の処理能力を再生装置が有していること、
第３の条件は、テキスト字幕ストリームの言語コードと、再生装置の言語設定とが一致していることであり、
前記プレイリスト情報は、1つ以上の再生区間情報を含み、
再生区間情報は、AVストリームの再生開始点、及び、再生終了点を示す情報、当該AVストリームと同期して再生することができる、1つ以上のテキスト字幕ストリームを示すストリーム番号テーブルを含み、
フラグセット、及び、許可フラグを格納する状態レジスタと、
再生区間情報に示される1つ以上のテキスト字幕ストリームの中に、第１の条件、第２の条件、第３の条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択手段とを備え、
前記フラグセットは、各言語特有の表示方法に対応するテキスト字幕の処理能力が再生装置に存在するかどうかを、各言語毎に示し、
前記許可フラグは、表示方法に対応する処理能力を有していない言語に対しても、対象となるテキスト字幕ストリームを選択することが、再生装置において許可されているか否かを示し、
前記選択手段は、状態レジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件及び第３の条件を満たすものを選択の対象とする
ことを特徴とする再生装置。
【請求項２】
記録媒体に記録されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する処理をコンピュータに実行させるプログラムであって、
複数の条件のうち第１の条件は、字幕を表す文字コードをデコードして、ビットマップに展開する能力がコンピュータに存在すること、
第２の条件は、各言語特有の表示方法に対応するテキスト字幕の処理能力をコンピュータが有していること、
第３の条件は、テキスト字幕ストリームの言語コードと、コンピュータの言語設定とが一致していることであり、
フラグセット、及び、許可フラグを格納する状態レジスタをコンピュータに設けておき、
再生区間情報に示される1つ以上のテキスト字幕ストリームの中に、第１の条件、第２の条件、第３の条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択ステップをコンピュータに実行させ、
前記フラグセットは、各言語特有の表示方法に対応するテキスト字幕の処理能力が再生装置に存在するかどうかを、各言語毎に示し、
前記許可フラグは、表示方法に対応する処理能力を有していない言語に対しても、対象となるテキスト字幕ストリームを選択することが、再生装置において許可されているか否かを示し、
前記選択ステップは、状態レジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件、第３の条件を満たすものを選択の対象とする
ことを特徴とするプログラム。
【請求項３】
記録媒体に記録されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する処理をコンピュータ上で実行する再生方法であって、
複数の条件のうち第１の条件は、字幕を表す文字コードをデコードして、ビットマップに展開する能力がコンピュータに存在すること、
第２の条件は、各言語特有の表示方法に対応するテキスト字幕の処理能力をコンピュータが有していること、
第３の条件は、テキスト字幕ストリームの言語コードと、コンピュータの言語設定とが一致していることであり、
フラグセット、及び、許可フラグを格納する状態レジスタをコンピュータに設けておき、
再生区間情報に示される1つ以上のテキスト字幕ストリームの中に、第１の条件、第２の条件、第３の条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択ステップを有し、
前記フラグセットは、各言語特有の表示方法に対応するテキスト字幕の処理能力が再生装置に存在するかどうかを、各言語毎に示し、
前記許可フラグは、表示方法に対応する処理能力を有していない言語に対しても、対象となるテキスト字幕ストリームを選択することが、再生装置において許可されているか否かを示し、
前記選択ステップは、状態レジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件、第３の条件を満たすものを選択の対象とする  
ことを特徴とする再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキスト字幕表示技術の技術分野に属する発明である。
【背景技術】
【０００２】
テキスト字幕表示とは、テキストコードで表現された字幕を、映画における個々のピクチャと同期して表示させる技術であり、BD-ROM(Blu-rayDisc Read Only Memory)再生装置の特有の技術の1つである。BD-ROM再生装置は、フォントを用いて、字幕を構成するコードを、ビットマップに展開し、このビットマップを、ビデオストリームにおける個々のピクチャと同期して表示するよう制御を行う。
【０００３】
コード列にて、字幕を作成しておくことができるので、字幕作成が容易になり、従来、映画字幕が作成されることがなかった少数派の言語での字幕作成が可能になる。これにより映画における字幕表現の幅が広がるので、1つの映画作品の付加価値を高めることができる。
【特許文献１】特開２０００-２２８６５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで母国語でも、英語でもない言語での字幕表示を、再生装置に行わせ、その品質保証を行うというのは、再生装置を製造するメーカーにとって、大きな負担を伴うものである。従って、品質保証が厳しいメーカーは、字幕表示の品質保証が困難であるとの観点から、字幕表示が可能な言語種を抑制したいとの要望を抱くことがある。
【０００５】
ところが、WWWサイトの閲覧ソフトのように、本来あらゆる言語での字幕を、表示しうるという潜在性を有しているのにも拘らず、品質保証の都合から、字幕表示可能な言語種を制限するというのは、BD-ROM再生装置の魅力を減殺しているに等しく、BD-ROM再生装置の世界的な普及を目指す規格策定者にとって、望ましいことではない。従って、BD-ROMの規格策定者は、多くの言語での字幕表示を楽しみたいというユーザの願望と、テキスト字幕の表示時においても品質保証を維持したいというメーカーの現実的な要望との狭間に立たされ、板挟みに苦しむことになる。
【０００６】
本発明は、多くの言語での字幕表示を楽しみたいというユーザの願望と、テキスト字幕の表示時においても品質保証を維持したいというメーカーの現実的な要望との調和を図ることができる再生装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明に係る再生装置は、記録媒体に記録されたプレイリスト情報にて指定されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する再生装置であって、複数の条件のうち第１の条件は、字幕を表す文字コードをデコードして、ビットマップに展開する能力が再生装置に存在すること、第２の条件は、各言語特有の表示方法に対応するテキスト字幕の処理能力を再生装置が有していること、第３の条件は、テキスト字幕ストリームの言語コードと、再生装置の言語設定とが一致していることであり、前記プレイリスト情報は、1つ以上の再生区間情報を含み、再生区間情報は、AVストリームの再生開始点、及び、再生終了点を示す情報、当該AVストリームと同期して再生することができる、1つ以上のテキスト字幕ストリームを示すストリーム番号テーブルを含み、フラグセット、及び、許可フラグを格納する状態レジスタと、再生区間情報に示される1つ以上のテキスト字幕ストリームの中に、第１の条件、第２の条件、第３の条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択手段とを備え、前記フラグセットは、各言語特有の表示方法に対応するテキスト字幕の処理能力が再生装置に存在するかどうかを、各言語毎に示し、前記許可フラグは、表示方法に対応する処理能力を有していない言語に対しても、対象となるテキスト字幕ストリームを選択することが、再生装置において許可されているか否かを示し、前記選択手段は、状態レジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件及び第３の条件を満たすものを選択の対象とすることを特徴としている。
【発明の効果】
【０００８】
メーカーは、対応するフラグのオン／オフを設定することで、アンサポート言語を選択手段に選択させるか否かを切り換えることができる。フラグの設定1つで、アンサポート言語選択の可否を決定することができるので、再生装置を製造するメーカーが、品質保証を厳しくするために、アンサポート言語の選択を禁じたり、またユーザの自己責任にて、アンサポート言語の選択を許可したりするという、セッティング変更を容易に実行することができる。
【０００９】
これによりユーザは、字幕表示に不都合が生じることを承知した上で、不都合が生じるような言語のテキスト字幕を表示させることができる。ユーザによる自己責任により、アンサポート言語の字幕を、表示するので、ユーザとメーカーとの調和を図ることができる。
【発明を実施するための最良の形態】
【００１０】
(第１実施形態)
以降、本発明に係る記録媒体の実施形態について説明する。先ず始めに、本発明に係る再生装置の実施行為のうち、使用行為についての形態を説明する。図１は、本発明に係る再生装置の、使用行為についての形態を示す図である。図１において、本発明に係る再生装置は、再生装置２００である。この再生装置２００は、リモコン３００、テレビ４００により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。
【００１１】
以上が本発明に係る再生装置の使用形態についての説明である。続いて本発明に係る再生装置が再生の対象としている、記録媒体について説明する。本発明に係る再生装置により、再生されるのは、BD-ROMである。図２は、BD-ROMの内部構成を示す図である。
【００１２】
本図の第４段目にBD-ROMを示し、第３段目にBD-ROM上のトラックを示す。本図のトラックは、BD-ROMの内周から外周にかけて螺旋状に形成されているトラックを、横方向に引き伸ばして描画している。このトラックは、リードイン領域と、ボリューム領域と、リードアウト領域とからなる。本図のボリューム領域は、物理層、ファイルシステム層、応用層というレイヤモデルをもつ。ディレクトリ構造を用いてBD-ROMの応用層フォーマット(アプリケーションフォーマット)を表現すると、図中の第１段目のようになる。この第1段目においてBD-ROMには、Rootディレクトリの下に、BDMVディレクトリがある。
【００１３】
BDMVディレクトリの配下には、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリ、BDJAディレクトリと呼ばれる4つのサブディレクトリが存在する。
STREAMディレクトリには、いわばデジタルストリーム本体となるファイルを格納しているディレクトリであり、拡張子m2tsが付与されたファイル(00001〜00003.m2ts)が存在する。
【００１４】
PLAYLISTディレクトリには、拡張子mplsが付与されたファイル(00001〜00003.mpls)が存在する。
CLIPINFディレクトリには、拡張子clpiが付与されたファイル(00001〜00003.clpi)が存在する。以下、これらのファイルについて説明する。
【００１５】
＜AVClip＞
先ず初めに、拡張子.m2tsが付与されたファイルについて説明する。図３は、拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。拡張子.m2tsが付与されたファイル(00001.m2ts,00002.m2ts,00003.m2ts・・・・・)は、AVClipを格納している。AVClipは(中段)、複数のビデオフレーム(ピクチャpj1,2,3)からなるビデオストリーム、複数のオーディオフレームからなるオーディオストリームを(上１段目)、PESパケット列に変換し(上２段目)、更にTSパケットに変換し(上３段目)、同じく字幕系のプレゼンテーショングラフィクスストリーム(下1段目のPGストリーム)及び対話系のインタラクティブグラフィクスストリーム(下2段目のIGストリーム)をTSパケットに変換して(下３段目)、これらを多重化することで構成される。
【００１６】
プレゼンテーショングラフィクスストリームは、言語毎の字幕を構成するグラフィクスストリームである。
IGストリームは、対話制御を実現するグラフィクスストリームであり、メニュー、ボタン等のGUI部品を構成するグラフィクスデータ、ボタンの押下時において、再生装置に実行させるべきコマンド(ボタンコマンド)などを含む。
【００１７】
AVClipは、図３に示したように多重化がなされているストリームはMainClipと呼ばれる。この他に、多重化がなされていないものものある。かかるAVClipは、SubClipと呼ばれ、オーディオストリーム、PGストリーム、テキスト字幕ストリーム(TextSTStream)等を構成するAVClipが存在する。
【００１８】
＜Clip情報＞
拡張子"clpi"が付与されたファイル(00001.clpi)は、AVClipのそれぞれに1対1に対応するClip情報である。管理情報故に、Clip情報は、AVClipにおけるストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、対応するストリームにおける複数のエントリー位置を示すEP_mapをもっている。＜PlayList情報＞
拡張子"mpls"が付与されたファイル(00001.mpls)は、PlayList(PL)情報を格納したファイルである。PlayList情報は、MainPath、Subpathと呼ばれる2種類の再生経路を束ねたものをPlaylist(PL)として定義する情報である。図４は、プレイリスト情報のデータ構造を示す図であり、本図に示すようにプレイリスト情報は、MainPathを定義するMainPath情報(MainPath())と、Subpathを定義するSubpath情報(Subpath())とからなる。
【００１９】
MainPathとは、主たるAVClip上に定義される再生経路である。一方Subpathは、SubClip上に定義される再生経路である。
PlayList情報の詳細その１
＜MainPath＞
先ずMainPathについて説明する。MainPathは、主映像たるビデオストリームやオーディオストリームに対して定義される再生経路である。
【００２０】
MainPathは、矢印mp1で示すように複数のPlayItem情報(・・・PlayItem()・・・)から定義される。PlayItem情報は、MainPathを構成する1つ以上の論理的な再生区間を定義する。PlayItem情報の構成は、引き出しmp2によりクローズアップされている。この引き出し線に示すようにPlayItem情報は、再生区間のIN点及びOut点が属するAVClipの再生区間情報のファイル名を示す『Clip_Information_file_name』と、再生区間の始点を示す時間情報『IN_time』と、再生区間の終点を示す時間情報『OUT_time』と、AVClipやSubClipに多重化されているエレメンタリストリームのうち、再生可能なものを示す『STN_table』とから構成される。
【００２１】
図５は、AVClipと、PlayList情報との関係を示す図である。第1段目はAVClipがもつ時間軸を示し、第2段目は、PlayList情報がもつ時間軸を示す。PlayList情報は、PlayItem＃1,＃2,＃3という3つのPlayItem情報を含んでおり、これらPlayItem＃1,＃2,＃3のIn_time,Out_timeにより、3つの再生区間が定義されることになる。これらの再生区間を配列させると、AVClip時間軸とは異なる時間軸が定義されることになる。これが第2段目に示すPL時間軸である。このように、PlayItem情報の定義により、AVClipとは異なる時間軸の定義が可能になる。
【００２２】
PlayList情報の詳細その２
＜Subpath＞
MainPathが、主映像たるビデオストリームやオーディオストリーム上に定義される再生経路であるのに対し、Subpathは、MainPathと同期すべきテキスト字幕ストリームやオーディオストリームに対して定義される再生経路である。
【００２３】
MainPathにおいて、主映像たるビデオストリームは、関連するオーディオストリームなどとともに多重化されて１本のストリームになっている。BDコンテンツを作成する際には、あらかじめ必要なストリームが判明しているため、同期再生すべき全てのストリームを１本のストリームとして多重化しておけばよい。それに対して、Subpathは、ダウンロードされたテキスト字幕ストリーム等、多重化はされないが、同期再生が必要なストリームである。たとえば、ある映画作品を、世界の様々な地域に頒布しようとした場合、オーサリング担当者は、欧米向けに出荷されるBD-ROMでは英語字幕しか入っていなかったけれど、日本向けに出荷されるBD-ROMには、日本語の字幕を、追加したいと考えることがある。しかし、日本語字幕を構成するストリームを作成し、これをビデオストリームに多重するという手間を払っていたのではコストがかかってしまう。
【００２４】
BD-ROMでは、SubPath情報を用いることにより、日本語字幕を構成する字幕ストリームだけをSubpathとして、MainPathに追加することができる。これにより日本語版作成を可能にさせるというのがSubpathの利点である。
【００２５】
図６は、Subpath情報の内部構成をクローズアップして示す。この矢印sh1に示すように各Subpathは、1つ以上のSubPlayItem情報(・・・SubPlayItem()・・・)からなる。また各SubPlayItem情報は、図中の矢印sh2に示すように『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で指定されたPlayItemの再生時間軸上に存在する。
【００２８】
『sync_start_PTS_of_PlayItem』は、sync_PlayItem_idで指定されたPlay Itemの再生時間軸上において、SubPlayItem_In_timeで指定されたSubPlayItemの始点が、どこに存在するかを示す。SubPlayItemの再生時において、現在の再生時点が、このsync_start_PTS_of_PlayItemで指示される時点に到来した場合、SubPlayItemによる再生が開始される。SubpathをMainPathと同期させるには、Subpath上の再生開始時刻をMainPath上のどの時刻に合わせるかを、sync_start_PTS_of_PlayItemで指定すればよい。たとえば、MainPath上の再生開始から300秒経った位置から、Subpathで指定されるストリームの再生を開始するよう、sync_start_PTS_of_PlayItemで指定すればよい。再生装置側では、Clock  Counterが適切なタイミングで、MainPathを構成するストリームおよびSubpathを構成するストリームを多重分離部に転送している。ClockCounterは、Clock Generatorの時刻を元に、同じ時間精度で現在時刻を計時しているので、上述したようなsync_start_PTS_of_PlayItemの指定により、MainPath、SubPath情報の再生を高い精度で同期させることができる。
【００２９】
図７は、SubPlayItem時間軸上の再生区間定義と、同期指定とを示す図である。本図において第1段目は、PL時間軸を示し、第2段目はSubPlayItem時間軸を示す。図中のSubPlayItem.IN_timeは再生区間の始点を、SubPlayItem.Out_timeは再生区間の終点をそれぞれ示す。これによりSubPlayItem時間軸上にも再生区間が定義されていることがわかる。矢印Sn1においてSync_PlayItem_Idは、PlayItemに対する同期指定を示し、矢印Sn2においてsync_start_PTS_of_PlayItemは、PL時間軸におけるPlayItem上の一時点の指定を示す。
【００３０】
Play Itemの再生時間軸上において、現在の再生時点がsync_start_PTS_of_PlayItemで指示される時点に到達した際、Clip_information_file_nameで指定されたSubClip(テキスト字幕ストリーム)のうち、SubPlayItem_In_timeからSubPlayItem_Out_timeまでの部分が再生されることになる。かかる再生により、テキスト字幕ストリームのうち、SubPlayItem_In_time、SubPlayItem_Out_timeで指定された部分がAVClipと同期再生されることになる。以上がSubpathについての説明である。  
【００３１】
上述したPlay Item情報の構成においてSTN_tableは、本発明の実施になくてはならない必要不可欠な要素である。以降STN_tableについてより詳細に説明する。
PlayList情報の詳細その３
＜STN_table＞
STN_tableは、Play ItemのClip_Information_file_nameで指定されているAVClipに多重化された複数エレメンタリストリームやSubPlayItemのClip_Information_file_nameで指定されているSubClip内のエレメンタリストリームのうち、再生可能なものを示すテーブルである。具体的にいうと、複数エレメンタリストリームのそれぞれについてのentryを、attributeと対応付けることで構成される。ここで"再生可能なエレメンタリストリーム"とは、PlayItemにより指定されているAVClipに多重されているエレメンタリストリームを主として意味する。しかしこれだけではなく、AVClipとは別個に記録されながら、このエレメンタリストリームと共に再生されるエレメンタリストリーム(テキスト字幕ストリーム)も含む。
【００３２】
図８（ａ）は、STN_tableの内部構成を示す図である。本図に示すようにSTN_tableは、STN_tableにおけるentryと、attributeとの組み(entry-attribute)を複数含み、これらentry−attributeの組みの個数(number_of_video_stream_entries,number_of_audio_stream_entries,number_of_PG_textST_stream_entries,number_of_IG_stream_entries)を示すデータ構造になっている。
【００３３】
entry-attributeの組みは、図中の括弧記号"｛"に示すように、Play Itemにおいて再生可能なビデオストリーム、オーディオストリーム、PGストリーム、テキスト字幕ストリーム、IGストリームのそれぞれに対応している。
【００３４】
entry−attributeの詳細について説明する。図８（ｂ）〜（ｃ）は、entry−attributeの詳細を示す図である。
図８（ｂ）は、PGストリームに対応したentry−attributeの組みを示す図である。
【００３５】
PGストリームにおけるentryは、AVClipを多重分離するにあたって、当該PGストリームの抽出に用いられるPIDを示す『ref_to_stream_PID_of_mainClip』を含む。
PGストリームにおけるattributeは、0x90に設定されることによりPGストリームのコーディックを示す『stream_coding_type』と、対応するPGストリームの言語属性を示す『PG_languagecode』とからなる。『PG_language code』とは、対応するPGストリームの言語属性を、IS0639-2/Tの言語コード(languagecode)により表したものである。
【００３６】
図８（ｃ）は、テキスト字幕ストリーム(textSTstreamと表記することがある。)に対応したentry−attributeの組みを示す図である。
テキスト字幕ストリームにおけるentryは、テキスト字幕ストリームを格納したAVClipのentry識別子を示す『ref_to_subClip_entry_ID』と、同期情報のIDを示す『ref_to_subPath_ID』と、テキスト字幕ストリームに付加されたPIDを示す『ref_to_stream_PID_of_subClip』とからなる。
【００３７】
テキスト字幕ストリームにおけるattributeは、0x92に設定されることによりテキスト字幕ストリームのコーディックを示す『stream_coding_type』と、対応するテキスト字幕ストリームのキャラクタコードを示す『charactercode』と、対応するテキスト字幕ストリームの言語属性を示す『textST_language_code』とからなる。『textST_language_code』とは、対応するテキスト字幕ストリームの言語属性を、IS0639-2/Tの言語コード(languagecode)により表したものである。
【００３８】
以上がSTN_Tableの内部構成である。
PlayList情報の詳細その４
＜PlayList情報の具体例＞
以降、各実施形態で引用するPlayList情報の具体例について説明する。図９は、第１実施形態で取り上げるAVClipの一例を示す図であり、図１０は、第１実施形態で取り上げる、PlayList情報の一例を示す図である。本実施形態で引用するPlayList情報は、3つのPlayItem情報(PlayItem情報＃1〜PlayItem情報＃3)と、4つのSubPath情報(SubPath情報＃1〜SubPath情報＃4)とからなる。このうち4つのSubPath情報のClip_information_file_nameは4つの異なるClip情報を示している。
【００３９】
これら4つのClip情報のうち、SubPath情報＃1に対応するAVClipが、日本語のテキスト字幕ストリーム、SubPath情報＃2に対応するAVClipが、フランス語のテキスト字幕ストリーム、SubPath情報＃3に対応するAVClipが中国語のテキスト字幕ストリーム、SubPath情報＃4に対応するAVClipがアラビア語のテキスト字幕ストリームであるなら、これらのテキスト字幕ストリームが、SubPath情報として、MainPathと共に再生されることになる。一方、これらのMainPathにおける3つのPlayItem情報は、図５に示したものと同じであり、1つのPlayList時間軸を構成する。これらのPlayItem情報のClip_information_file_nameに記述されているのが、Clip情報のファイルであり、このClip情報には、ビデオストリームと、PGストリームとを多重したAVClipが対応しているものとする。
【００４０】
また図中の引き出し線cs1,cs2,cs3はPlayItem情報＃1〜PlayItem情報＃3のSTN_Tableの構成をクローズアップしている。この引き出し線に示すように、STN_Tableには、AVClipに多重されているPGストリームと、SubPath情報にて指定されているテキスト字幕ストリームのPIDが記述されているものとする。その結果、1:英語、2:日本語、3:フランス語、4:中国語、5:アラビア語という5つの言語のテキスト字幕ストリームが、再生可能になっている。
【００４１】
以上の図１０におけるPlayList情報の記述により、図１１に示すような、デジタルストリームの束が規定されることになる。図１１は、図１０に示したPlayList情報により規定されるデジタルストリームの束を示す図である。PlayItem情報＃1〜PlayItem情報＃3は、図５に示した時間軸を構成するため、時間軸においてPlayItem情報＃1、PlayItem情報＃2、PlayItem情報＃3が再生されている期間に、ビデオストリームが再生され、また英語のPGストリーム、日本語〜アラビア語のテキスト字幕ストリームの再生が可能になる。つまりPlayList時間軸の再生進行に伴い、英語のPGストリーム、日本語〜アラビア語のテキスト字幕ストリームの再生が可能になり、これらのうち、英語のPGストリーム、日本語〜アラビア語のテキスト字幕ストリームの何れかを、ビデオストリームと同期して再生させることができる。
【００４２】
以上が記録媒体についての説明である。続いて本発明に係る再生装置について説明する。
図１２は、本発明に係る再生装置の内部構成を示す図である。本発明に係る再生装置は、本図に示す内部に基づき、工業的に生産される。本発明に係る再生装置は、主としてシステムLSIと、ドライブ装置という2つのパーツからなり、これらのパーツを装置のキャビネット及び基板に実装することで工業的に生産することができる。システムLSIは、再生装置の機能を果たす様々な処理部を集積した集積回路である。こうして生産される再生装置は、BD-ROMドライブ１、LocalStorage２、操作受付部３、多重分離部４、ビデオデコーダ５、ビデオプレーン６、PGデコーダ７、PGプレーン８、合成部９、テキストコードバッファ１０、フォントバッファ１１、TextSTデコーダ１２、ローダ１３、シナリオメモリ１４、制御部１５、PSRセット１６から構成される。本図において一点鎖線で囲んだ部位は、システムLSIとして、ワンチップ化されている部位を示す。
【００４３】
BD-ROMドライブ１は、BD-ROMのローディング／イジェクトを行い、BD-ROMに対するアクセスを実行する。
ローカルストレージ２は、ネットワーク等を介してダウンロードされたAVClip、Clip情報、PlayList情報が格納される内蔵媒体である。ローカルストレージ２上のPlayList情報は、BD-ROM及びローカルストレージ２のどちらに存在するClip情報であっても、指定できる点でBD-ROM上のPlayList情報と異なる。この指定にあたって、ローカルストレージ２上のPlayList情報は、BD-ROM上のファイルをフルパスで指定する必要はない。本ローカルストレージ２は、BD-ROMと一体になって、仮想的な1つのドライブ(仮想ドライブ部)として、再生装置２００により認識されるからである。故に、PlayItem情報におけるClip_Information_file_name及びSubPlayItem情報のClip_Information_file_nameは、Clip情報の格納したファイルのファイルボデイにあたる5桁の数値を指定することにより、ローカルストレージ２、BD-ROM上のAVClipを指定することができる。このローカルストレージ２の記録内容を読み出し、BD-ROMの記録内容と動的に組み合わせることにより、様々な再生のバリエーションを産み出すことができる。
【００４４】
図１３は、ローカルストレージに格納されたPlayList情報により、どのようなPlayList再生時間軸が定義されるかを示す図である。第1段目は、BD-ROMに記録されたAVClipにおける再生時間軸を示し、第2段目は、ローカルストレージに格納されたPlayList情報により定義されるPlayList再生時間軸を示す。この第1段目、第2段目に示すように、ローカルストレージに格納されたPlayList情報は、BD-ROM上のAVClipに対して独自の再生時間軸を定義することができる。第3段目は、ローカルストレージに格納されたSubPlayItemにおけるSubPlayItem再生時間軸を示す。図中のSubPlayItem.IN_timeは再生区間の始点を、SubPlayItem.Out_timeは再生区間の終点をそれぞれ示す。これによりSubPlayItem時間軸上にも再生区間が定義されていることがわかる。矢印Sn1においてSync_PlayItem_Idは、PlayItemに対する同期指定を示し、矢印Sn2においてsync_start_PTS_of_PlayItemは、PL時間軸におけるPlayItem上の一時点の指定を示す。
【００４５】
このため、SubPLayItem情報にて、SubPlayItem再生時間軸上に定義される再生区間は、ローカルストレージ上のPlayItem情報により定義されるPlayList再生時間軸と同期をとることになる。
【００４６】
ローカルストレージ上のPlayList情報は、BD-ROM上のAVClipに対し、PlayList再生時間軸を指定することができ、ローカルストレージ上のSubPLayItem情報は、この再生時間軸に対し、ローカルストレージ上のSubPlayItemとの同期を指定することができるので、ローカルストレージ上のSubPlayItemで指定されるAVClipがテキスト字幕ストリームである場合、このテキスト字幕ストリームをBD-ROM上のAVClipと同期させて再生することができる。
【００４７】
以上がLocal Storage２についての説明である。
操作受付部３は、ストリーム等を選択する操作が、リモコンや再生装置のフロントパネルに対してなされれば、その操作を示すUser Operation情報をストリーム選択部１７に出力する。
【００４８】
多重分離部４は、Clock Counter、Clock Generatorを備え、Local Storage２からTSパケットを取り出して、このTSパケットを構成するTSパケットをPESパケットに変換し、ビデオストリーム及びIGストリームを得て、それぞれビデオデコーダ５、PGデコーダ７に出力する。
【００４９】
ビデオデコーダ５は、多重分離部４から出力された複数PESパケットを復号して非圧縮形式のピクチャを得てビデオプレーン６に書き込む。
ビデオプレーン６は、非圧縮形式のピクチャを格納しておくためのプレーンである。プレーンとは、再生装置において一画面分の画素データを格納しておくためのメモリ領域である。ビデオプレーン６における解像度は1920×1080であり、このビデオプレーン６に格納されたピクチャデータは、16ビットのYUV値で表現された画素データにより構成される。
【００５０】
P-Graphics(PG)デコーダ７は、BD-ROMから読み出されたプレゼンテーショングラフィクスストリームをデコードして、非圧縮グラフィクスをPresentationGraphicsプレーン８に書き込む。グラフィクスストリームのデコードにより、字幕が画面上に現れることになる。
【００５１】
Presentation Graphics(PG)プレーン８は、一画面分の領域をもったメモリであり、一画面分の非圧縮グラフィクスを格納することができる。本プレーンにおける解像度は1920×1080であり、PresentationGraphicsプレーン８中の非圧縮グラフィクスの各画素は8ビットのインデックスカラーで表現される。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、PresentationGraphicsプレーン８に格納された非圧縮グラフィクスは、表示に供される。
【００５２】
合成部９は、ビデオプレーン６に格納された非圧縮状態のピクチャデータを、Presentation Graphicsプレーン８の格納内容と合成する。
テキストコードバッファ１０は、BD-ROM及びLocal Storage２から読み出されたテキスト字幕ストリームが格納されるバッファである。テキスト字幕ストリームの場合、２時間の映画作品用の字幕でも500Kバイト程度であるので、500Kバイト程度の規模がテキストコードバッファ１０にあれば、1つのテキスト字幕ストリームを読み込むことができる。
【００５３】
フォントバッファ１１は、テキスト字幕ストリームを構成するコード列をビットマップに展開する際、用いられるフォントデータが格納される。本フォントバッファ１１は、1Mバイトほどのメモリ規模があれば、CJKフォント（中国語、日本語、韓国語）フォントを格納しておくことができる。このCJKフォントが格納されていれば、中国語、日本語、韓国語のテキスト字幕をビットマップに展開することができる。
【００５４】
TextSTデコーダ１２は、フォントバッファ１１に格納されているフォントデータを用いて、テキストコードバッファ１０上のテキスト字幕ストリームに含まれるテキストコードをビットマップに展開してPresentationGraphicsプレーン８に書き込む。
【００５５】
ローダ１３は、テキスト字幕ストリーム及びフォントデータをテキストコードバッファ１０及びフォントバッファ１１にロードする。ローダ１３によるロードの対象は、テキスト字幕ストリーム及びこれの展開に必要なフォントデータであり、比較的データ量が小さいので、ローダ１３は、STN_Tableに記述されている全てのテキスト字幕ストリームをテキストコードバッファ１０に読み込み、それと共に、フォントデータをフォントバッファ１１に読み込んでおくことができる。そうした読み込み後、現在の再生時点に応じてTextSTデコーダ１２に必要なデータを供給する。こうしたMainPathの再生に先立ち、テキストコードバッファ１０、フォントバッファ１１にデータを読み込んでおくことを"プリロード"という。
【００５６】
ローダ１３がプリロードを行うのは以下の理由による。MainPath情報とSubPath情報とで指定される２つのストリームがBD-ROM、ハードディスクとに別々に記録されていれば、２つのメディアからそれぞれ同時に読み取っていけばよい。しかしBD-ROMのような光ディスクは、比較的アクセス速度が遅いので、MainPath情報とにより指定されるストリームと、SubPath情報により指定されるストリームとが同じBD-ROMに記録されている場合、シークを行いながら２つのストリームにアクセスすることは非常に難しい。そこでローダ１３は、MainPathの再生開始を行う前に、SubPath情報が指定するデータ、つまり、テキスト字幕ストリームと、これの展開に用いられるフォントデータとをバッファに読み込んでおくのである。
【００５７】
全てのデータをテキストコードバッファ１０、フォントバッファ１１に読み込んだ場合、MainPath側のストリームを再生させながら、SubPath側のストリームを再生させることもできる。ここで、SubPath情報側のストリームを選択せず、専らMainPath側のストリームを再生させたとしても、テキストコードバッファ１０、フォントバッファ１１が上書きされなければ、MainPath側のストリームから、SubPath側のストリームへの切り替えが可能になる。
【００５８】
シナリオメモリ１４は、カレントのPlayList情報やカレントのClip情報を格納しておくためのメモリである。カレントPlayList情報とは、BD-ROMに記録されている複数PlayList情報のうち、現在処理対象になっているものをいう。カレントClip情報とは、BD-ROMに記録されている複数Clip情報のうち、現在処理対象になっているものをいう。
【００５９】
制御部１５は、シナリオメモリ１４に読み出されたカレントPlayList情報、カレントClip情報に従い、BD-ROMに記録されたAVClipを読み出し、再生する制御を行う。
PSRセット１６は、再生装置に内蔵されるレジスタであり、64個のPlayer Status/Setting Register(PSR)と、4096個のGeneralPurpose Register（GPR)とからなる。Player Status/Setting Registerの設定値(PSR)がどのような意味をもつかは、後で詳細に説明する。
【００６０】
ストリーム選択部１７は、STN_tableに記述されているentry−attributeが記述されているPGストリーム又はテキスト字幕ストリームから1つを選択して、再生させる。ストリーム選択部１７による選択とは、STN_Tableに記載された複数のentry-attributeの組みのうち、PSRに格納されたストリーム番号に対応するものから、PIDを取り出し、取り出されたPIDに対応するPGストリーム又はテキスト字幕ストリームを、動画像に合成させることをいう。ここで取り出されたPIDが、PGストリームを特定するものなら、そのPGストリームを多重分離するよう、多重分離部４を設定する。一方、取り出されたPIDがテキスト字幕ストリームを特定するものなら、そのテキスト字幕ストリームを、テキストコードバッファ１０、フォントバッファ１１からTextSTデコーダ１２に供給する。
【００６１】
図１４は、ビデオエンコーダのデコードによるデコード結果と、ストリーム選択部１７による選択結果とを、図１２の内部構成に書き加えた図である。ここでビデオエンコーダによるデコード結果とは、ピクチャ列であり、ストリーム選択部１７による選択結果とは、「本当は」「ウソだった」「ごめん」「あれから」「3年たった」という字幕である。ストリーム選択部１７は、PGストリームのデコード結果、テキスト字幕ストリームのデコードを選択的に、ピクチャ列に合成させることにより、再生装置は、PGストリームのデコード結果、テキスト字幕ストリームのデコード結果のどちらかを、字幕としてピクチャに合成した上で再生させることができる。
【００６２】
＜PSRについての説明＞
以上が本発明に係る再生装置の構成である。続いてPSRセットにおける個々のPSRについて説明する。PSRセットのうちPSR1、PSR2、PSR15、PSR17、PSR30、PSR48〜61は、再生装置における音声・字幕の選択や、これらをデコードする能力の有無、言語設定を示すものである。図１５は、PSR2、PSR17、PSR30の詳細設定を示すである。  
【００６３】
PSRの詳細その１.PSR2,17,30
PSR2は、現在選択されているPGストリーム又はテキスト字幕ストリームのストリーム番号を格納する。ここでストリーム番号とは、STN_Tableにおいて、PGストリーム及びテキスト字幕ストリームに対応するentry-attributeが何番目に記載されているかという、記載順位を示す番号であり、個々のSTN_Tableに依存した番号である。
【００６４】
またPSR2はdisp_flagを含む。disp_flagは、"0"に設定されることにより、PGストリーム及びテキスト字幕ストリームの表示が不可能であることを示し、"1"に設定されることによりPGストリーム及びテキスト字幕ストリームの表示が可能であることを示す。
【００６５】
PSR17は、本再生装置における字幕言語の設定を、IS0639-2/Tの言語コード(language code)により表す。ここで言語設定とは、再生装置に対し430言語という言語のうち、ユーザが再生を希望しているものを記憶しておくことをいう。このPSR17に記憶されている言語は、あくまでも、ユーザの希望であり、この言語に対応するPGストリーム、テキスト字幕ストリームがBD-ROMに存在するとは限らない。またPSR17に存在するDecodeCapabilityが、再生装置に存在するとも限らない。とにかく、ユーザの希望が、字幕言語の設定として、PSR17に記憶されているのである。
【００６６】
PSR30は、最上位ビットが"0"に設定されることによりテキスト字幕を表示する能力が再生装置に存在しない旨を示し、最上位ビットが"1"に設定されることによりテキスト字幕を表示する能力が再生装置に存在する旨を示す。
【００６７】
再生装置にテキスト字幕ストリームをデコードする能力があったとしても、どの言語に対応するテキスト字幕ストリームのデコードが可能であり、どの言語に対応するテキスト字幕ストリームのデコードが不可能であるかは、言語によって違う。
【００６８】
PSRの詳細その２.PSR48〜61
テキスト字幕ストリームは、文字コードを用いて字幕を表現している。しかし日本・中国・韓国などの東南アジアにおいて顕著にみられるように、様々な言語ごとに、違う文字コードが存在することもある。そこで、言語ごとにフラグを用意して、対象となる言語が適切に表示できるか否かを、判定できるようにしている。PSRセットのPSR48〜61は、IS0639-2/Tの言語コード(language code)にて定義された個々の言語のテキスト字幕ストリームに対する、デコード能力の有無を示す。
【００６９】
図１６は、PSR48〜61の内部構成を示す図である。本図における四角枠は、1つの言語におけるDecode Capabilityを示すDecodeCapabilityフラグである。
これらPSR48〜61は、言語数分のフラグを格納している。フラグは各言語ごとに表示可能か否かを示すことができれば足りるので、1言語=1ビットに設定されている。利用人数の比較的少ないローカルな言語であっても、DecodeCapabilityの有無を示すことにしているから、本図におけるビット構成は、430言語×1ビットにより、430ビット以上のレジスタ領域を必要としている。
【００７０】
かかるDecode Capabilityフラグは、430言語のそれぞれに対応しているから、これらのDecode Capabilityフラグのうち、STN_Tableに記述されたtextST_language_codeに対応するものを参照することにより、そのtextST_language_codeに対応する言語のテキスト字幕のデコード能力の有無を判定することができる。
【００７１】
図１７は、PSR48〜61におけるDecode Capabilityフラグと、textST_language_codeとの対応を示す図である。PSR48〜61における個々のDecodeCapabilityフラグが、PSR番号p及びビット位置qにより識別される。またテキスト字幕ストリームの言語属性は、textST_language_codeにて表現される。このtextST_language_codeを、PSR48〜61におけるPSR番号p及びビット位置qに変換することにより、テキスト字幕ストリームに対するDecodeCapabilityが存在するか否かを判定することができる。
【００７２】
図１８は、PSR48〜61のうち、PSR53の内容を示す図である。PSR53は、計32個のDecode Capabilityフラグを含む。"jpn","jav","ita"といった3バイトのコードは、textST_language_codeである。これらtextST_language_codeに示されるDecodeCapabilityフラグが、計32個、PSR53に存在していることがわかる。図１９は、textST_language_codeの意味内容を示す図である。この図における意味内容を照合すると、"ita"という3バイトのコードはイタリア語を示し、"jpn"という3バイトのコードは日本語を示す。"jav"という3バイトのコードはジャワ語を示していることがわかる。残りのPSRも、1ビットの値により、DecodeCapabilityフラグの有無を示しているから、計430言語のDecode Capabilityフラグが、PSR48〜61に示される。以上が本実施形態におけるPSRセットの特徴部分である。続いてストリーム選択部１７における特徴部分について説明する。
【００７３】
＜ストリーム選択部１７についての説明＞
図２０は、第１実施形態におけるストリーム選択部１７の特徴部分を示す図である。ストリーム選択部１７において特徴的であるのは、ビット割当テーブル１９、Procedure実行部２０がストリーム選択部１７に存在している点である。
【００７４】
特徴その１.ビット割当テーブル１９
割当テーブル１９は、textST_language_codeを示す3バイトのコード列と、PSR48〜61におけるPSR番号、ビット位置との割り当てを示す。図２１は、PSR48〜61におけるPSR番号及びビット位置と、textST_language_codeとの対応関係を示す図である。本図によると、textST_language_codeにおける"jpn"という3バイトのコードは、PSR番号"53"と、ビット番号"b8"に対応していることがわかる。"jav"という3バイトのコードは、PSR番号"53"と、ビット番号"b7"に対応していることがわかる。"ita"という3バイトのコードは、PSR番号"53"と、ビット番号"b9"に対応していることがわかる。
【００７５】
こうした対応付けを記憶しているので、STN_Tableに記述されたtextST_language_codeから、PSR48〜61におけるPSR番号、ビット位置を導くことができ、そして、そのPSR番号、ビット位置に示される1ビット値の設定値を参照することにより、そのtextST_language_codeに示される言語のDecodeCapabilityの有無を判定することができる。以上が割当テーブルの詳細である。
【００７６】
特徴その２.Procedure実行部２０
Procedure実行部２０は、あるPlayItem情報から別のPlayItem情報への切り換わりが生じた場合、又はストリーム番号を切り換える旨の操作がユーザによりなされた場合、所定の手順を実行して、PSR2に新たなストリーム番号を書き込む。ストリーム選択部１７は、PSR2に書き込まれたストリーム番号に応じて、PGストリーム又はテキスト字幕ストリームを選択するので、かかるPSR2の設定を通じて、PGストリーム、テキスト字幕ストリームのどちらかが再生されることになる。ここで、PlayItem情報の切り換わり時において、PSR2設定のために実行される手順を『Procedurewhen playback condition is changed』といい、ユーザ操作時において、PSR2設定のために実行される手順を『Procedurewhen change
is requested』という。
【００７７】
PlayItem情報の切り換わり時に、手順を実行するのは、STN_TableはPlayItem情報毎に存在するので、あるPlayItem情報においては再生可能であったテキスト字幕ストリームが、別のPlayItem情報において再生不可能になることが往々に有り得るからである。
【００７８】
また、ユーザ操作の際、手順を実行するのは、ユーザ操作にてPSR2に格納されるストリーム番号が、常に正しいとは限らず、不正なストリーム番号が書き込まれようとした際のリカバリーが必要になるからである。
【００７９】
『Procedure when playback condition is changed』及び『Procedure when change isrequestedは、PGストリーム、テキスト字幕ストリームのそれぞれが、(a)(b)の条件を満たすか否かを判定して、満たした条件の数の多さにより、PGストリーム及びテキスト字幕ストリームに優先順位を付与する。そして、その優先順位が高いもののストリーム番号をPSR2に書き込むというものである。
【００８０】
.Procedure実行部２０の詳細その１
＜Procedure when playback condition is changed＞
Procedure when playback condition is changedの処理手順は、図２２のようになる。本処理手順は、ステップＳ１、ステップＳ２という2つの判定ステップの組合せで、PSR2の設定を行うものである。
【００８１】
ステップＳ１は、STN_tableにおけるentry数が0であるか否かの判定であり、もし0であればステップＳ３においてPSR2の値を維持する。
ステップＳ２は、STN_tableにおけるentry数は0ではない場合に、PSR2よりSTN_tableのentry数が多く、尚且つ、条件(A)が真であるかを判定するものである。条件(A)とは、PSR2で特定されるテキスト字幕ストリームをデコードする能力が再生装置に存在することである。もしステップＳ２がYesであればPSR2を維持する(ステップＳ４)。もしPSR2の値がentry数より大きいか、或は条件(A)を満たさない場合は、ステップＳ５において何等かの有効な値をPSR2に再設定する。
【００８２】
.Procedure実行部２０の詳細その２
＜Procedure when change is requested＞
続いてProcedure when change is requestedについて説明する。図２３は、ストリーム変化時における設定手順を示すフローチャートである。本フローチャートと、図２２との違いは、図２２におけるPSR2の表記がXに置き換えられている点である。このXは、操作受付部３から出力されたUserOperation情報やIGストリーム内のボタンコマンドに基づく値である。
【００８３】
本フローチャートにおけるステップＳ１９は、XよりSTN_tableのentry数が多く、尚且つ、条件(A)が真であるかを判定するものである。条件(A)とは、PSR2で特定されるPGストリーム、テキスト字幕ストリームをデコードする能力が再生装置に存在することである。もしXがこの条件を満たすなら、PSR2にXを設定する(ステップＳ２１)。
【００８４】
もしXがentry数より大きいか、或は条件(A)を満たさない場合は、Xが、Invalidな値(0xFFFF)であるか否かを判定する(ステップＳ２２)。もしOxFFFFであれば、ユーザが選択を意図するPGストリーム、テキスト字幕ストリームの番号は無効であると考えられるので、ユーザ操作に基づく値Xを無視し、PSR2の設定値を維持する(ステップＳ２４)。
【００８５】
もし値Xが0xFFFFでないなら、値XをPSR2に設定する(ステップＳ２３)。
.Procedure実行部２０の詳細その３
＜何等かの有効な値をPSR2に設定するための設定手順＞
上述したフローチャートにおいて、ステップＳ５及びステップＳ２３の処理の詳細は、図２４に示した通りになる。図２４は、PSR2の設定手順を示すフローチャートである。
【００８６】
本フローチャートのステップＳ３１、ステップＳ３２は、STN_tableに記述されているPG_textST_streamのそれぞれについて、ステップＳ３３〜ステップＳ３５の処理を繰り返すループ処理になっている。本ループ処理において処理対象となるPG_textST_streamをPG_textST_streamiとする。ステップＳ３３は、PG_textST_streamiのstream_coding_typeが0x91であるか、0x92であるかの判定であり、もし0x91であるならステップＳ３４に移行する。
【００８７】
ステップＳ３４は、PG_streamiが、以下の(a)(b)を満たすか否かの判定である。
(a)PGストリームiをデコードする能力が再生装置に存在すること
(b)PGストリームiの言語属性が再生装置の言語設定と一致すること
この(b)の条件は、STN_tableにおけるPG_language_codeがPSR17と一致するか否かの判定でなされる。
【００８８】
一方ステップＳ３５は、textST_streamiが(a)(b)を満たすかを否かの判定である。
(a)テキスト字幕ストリームiをデコードする能力が再生装置に存在すること
(b)テキスト字幕ストリームiの言語属性が再生装置の言語設定と一致すること
(a)の条件を具備しているかの判定は、PSR48〜61における対応するビットが"デコード能力有"を示すかどうかでなされる。(b)の条件を具備しているかの判定は、STN_tableのtextST_language_codeがPSR17の設定値と一致しているかどうかでなされる。
【００８９】
以上のステップＳ３３〜ステップＳ３５の処理が全てのPG_textST_streamについて繰り返されれば、ステップＳ３６〜ステップＳ４１の処理が実行される。
ステップＳ３６は、(a)を満たすPGstreamが存在しないかどうかの判定であり、もし存在しないのなら、Invalidな値(0xFFFF)をPSR2に設定する(ステップＳ３８)。
【００９０】
ステップＳ３７は、(a)(b)の双方を満たすPG_textST_streamが存在するかどうかの判定であり、もし存在するのなら(a)(b)を満たすPG_textST_streamのうち、STN_tableにおけるエントリー順位が最も高いものをPSR2に設定する(ステップＳ３９)。
【００９１】
ステップＳ４１は、(a)のみを満たすPGstream、(a)のみを満たすtextST_streamのうち、STN_tableにおけるエントリー順位が最も高いものをPSR2に設定する。以降具体例を交えながら、本フローチャートの処理について説明する。
【００９２】
各テキスト字幕ストリームのDecode Capabilityの有無については、図２５のフローチャートに基づき判定される。図２５は、テキスト字幕ストリームのDecodeCapabilityの有無を判定するにあたっての判定手順を示すフローチャートである。本フローチャートは、対象となるテキスト字幕ストリームのtextST_language_codeをSTN_Tableから取得して(ステップＳ１１)、割当テーブルを参照することにより、テキスト字幕ストリームのtextST_language_codeにあたるPSR番号p及びビット位置qとを特定する(ステップＳ１２)。そして、PSRpのqビット目が"1"であるか、"0"であるかを判定して(ステップＳ１３)、PSRpのqビット目が"1"であれば、対象となるテキスト字幕ストリームが、条件(a)を満たすとする(ステップＳ１４)。一方、PSRpのqビット目が"0"であれば、対象となるテキスト字幕ストリームが、条件(a)を満たさないとする(ステップＳ１５)。
【００９３】
.Procedure実行部２０の詳細その３
＜PSR2設定の具体例＞
この具体例で想定している再生装置は、図２６（ａ）に示すように日本語、中国語のテキスト字幕ストリームをデコードする能力はもっているが、フランス語、イタリア語をデコードする能力はもっていない再生装置である。そして中国語を示すよう、PSR17における言語設定がなされているものとする。
【００９４】
かかる再生装置に対し、図２６（ｂ）に示すようなSTN_tableがロードされたとする。このSTN_tableには、日本語、フランス語、中国語、アラビア語のテキスト字幕ストリームのentry(textST_stream1,2,3,4)が記述されている。
【００９５】
かかる記述内容のSTN_tableが処理対象であると、ステップＳ３４、ステップＳ３５において各PG_textST_streamが、条件(a)、条件(b)を具備しているかどうかのチェックが図２６（ｃ）に示すようになされる。ここで日本語のテキスト字幕ストリームは、2つの条件のうち、条件(a)しか満たさない。中国語のテキスト字幕ストリームは、条件(a)、条件(b)を満たす。
【００９６】
各ストリームについての条件具備が明らかになったので、条件(a)〜条件(b)の全てを満たす中国語のテキスト字幕ストリームに最高順位を付与する。その結果、中国語のテキスト字幕ストリームが選択されることになる。
【００９７】
.Procedure実行部２０の詳細その４
＜PSR2設定の具体例＞
以降、図２７を参照しながら、STN_tableにおけるentryの順序によるテキスト字幕ストリーム選択について説明する。ここで想定する再生装置は、図２６（ａ）同様、日本語，中国語のデコード能力をもっている再生装置である。そして韓国語を示すよう、PSR17における言語設定がなされているものとする。
【００９８】
かかる再生装置に対し、図２７（ｂ）に示すようなSTN_tableがロードされたとする。このSTN_tableには、日本語〜アラビア語のテキスト字幕ストリームのentry(textST_stream1,2,3,4)が記述されている。
【００９９】
かかる記述内容のSTN_tableが処理対象であると、ステップＳ３４、ステップＳ３５において各PG_textST_streamが、条件(a)、条件(b)を具備しているかどうかのチェックが図２７（ｃ）に示すようになされる。ここで日本語のテキスト字幕ストリームは、2つの条件のうち、条件(a)しか満たさない。中国語のテキスト字幕ストリームも、条件(a)しか満たさない。
【０１００】
ここで、条件(a)のみを満たしているテキスト字幕ストリームが複数ある場合、STN_tableにおけるentryの順位に応じて、各ストリームにおける順位を定める。ここで、STN_Tableにおいては、日本語の順位が最高になっているので、日本語のテキスト字幕ストリームが選択されることになる。以上がProcedure実行部２０についての説明である。続いて制御部１５による処理手順についての説明を行う。
【０１０１】
特徴その３.制御部１５による処理手順
図２８は、制御部１５による再生手順を示すフローチャートである。本フローチャートは、PlayList情報における先頭のPlayItem情報をPlayItem情報iとして、ステップＳ１３３〜ステップＳ１４２のループ処理を実行するものである。ステップＳ１３３〜ステップＳ１４２のループ処理における制御変数は、変数iであり、ステップＳ１３３〜ステップＳ１４０の処理を実行して、その後、制御変数iをインクリメントするという処理を、変数iが、PlayItem数(NumberOf PlayItem)を越えるまで実行するものである(ステップＳ１４１)。
【０１０２】
このステップＳ１３３〜ステップＳ１４０の処理について説明する。これらの処理は、PlayItem情報iのClip_information_file_nameに記述されているAVClipを、AVClipjとし(ステップＳ１３３)、再生の対象とする。ステップＳ１３４は、Procedurewhen Playback Control is changedの実行であり、その後、PlayItem.In_timeからPlayItem.Out_timeまでの部分を再生するよう、ドライブ装置及びデコーダに指示する(ステップＳ１３５)。
【０１０３】
ステップＳ１３６は、PlayItem情報iをSync_PlayItem_idに指定しているSubPlayItemkが存在するか否かの判定である。もし存在しなけば、そのままステップＳ１４１に移行する。
【０１０４】
もし存在すれば、SubPlayItemkのClip_information_file_nameに記述されているAVClipをAVCliphにし(ステップＳ１３８)、そのAVCliphのうち、Sync_Start_PTS_of_PlayItemから、Out_timeまでを再生するよう、ドライブ装置及びデコーダに指示してステップＳ１４１に移行する(ステップＳ１４０)。
【０１０５】
以上の処理を、PlayList情報を構成する全てのPlayItem情報について繰り返すことにより、PlayList情報にて規定されるAVClipの再生がなされる。このループ処理において、1つのPlayItem情報の再生がなされる度に、Procedurewhen Playback Control is changedがProcedure実行部２０により実行され、このProcedure実行部２０の実行により、PGストリーム、テキスト字幕ストリームのうち、1つが選択されることになる。そしてこうして選択されたストリームがテキスト字幕ストリームであり、SubPath情報で指定されているものなら、ステップＳ１３６〜ステップＳ１４０の手順により、このテキスト字幕ストリームが再生されることになる。
【０１０６】
以上のように本実施形態によれば、PSR48〜61には、テキスト字幕を表示することができる能力の有無が、言語毎に示されているので、ユーザがある言語でのテキスト字幕表示を希望した場合、その言語でのテキスト字幕表示の可能性の有無を、レジスタセットにおける各ビットの設定値を参照することにより、即座に判定することができる。
【０１０７】
各ビットの設定値を参照するだけで、何れかの言語でのテキスト字幕の表示可能性の有無を判定することができるので、たとえ、テキスト字幕の言語種が何百言語に及んだとしても、所望の言語での、字幕表示の可能性を即座に判定することができる。
【０１０８】
(第２実施形態)
第２実施形態では、テキスト字幕ストリーム及びTextSTデコーダ１２の内部構成をより詳細に説明する。図２９は、テキスト字幕ストリームの内部構成を示す図である。本図の第1段目は、SubPlayItem情報の時間軸を示し、第2段目はEP_mapを示す。第3段目は、テキスト字幕ストリームを示す。この第3段目におけるテキスト字幕ストリームの内部構成について説明する。
【０１０９】
テキスト字幕ストリームは、先頭に唯1つ存在する『スタイル情報』と、複数の『表示情報』とからなる。このスタイル情報は、スタイル情報は、テキスト字幕ストリームの先頭に１つのみ存在している。スタイル情報は、自身の識別子である『スタイルID』と、ビットマップへの展開に用いるフォントデータを示す『フォントID』、ビットマップへの展開時における『フォントサイズ』、PGプレーン８における表示領域の水平位置、垂直位置を示す『表示位置』とからなり、テキスト字幕ストリームは、これらの情報をまとめて"スタイル"として管理している。またスタイル情報内に複数のスタイルが定義されることがある(図２９では2つ)。
【０１１０】
スタイル情報に、フォントサイズを記載しているのは、最低限のフォントバッファのサイズを宣言するためである。つまりフォントセットはプリロードが必要であるため、必ず読み込まなければならないフォントデータを、ストリーム再生前に明示的に指定しておくようにしている。
【０１１１】
表示情報は、 字幕の『表示開始時刻』と、字幕の『表示終了時刻』、字幕を表すコード列である『テキストコード列』、この字幕を表示すべき表示位置を一意に特定する『スタイルIDの参照値』からなる。テキスト字幕に対応するEP_mapは、テキスト字幕を構成する個々の表示情報をエントリー位置として指定している。そのため、図２８に示したように、テキスト字幕ストリームをその内部から再生させるにあたって、TextSTデコーダ１２は、これら複数の表示情報のうち、SubPlayItem情報のSubPlayItem_In_time,SubPlayItem_Out_timeに対応するものを再生してゆく。以上がスタイル情報、表示情報について説明である。
【０１１２】
図３０（ａ）は、スタイル情報,表示情報の設定例を示す図である。この設定例においてスタイル情報＃1は、Presentation Graphicsプレーン８における座標(x1,y1)を示すよう設定されているものとする。
【０１１３】
そして図３０（ａ）における3つの表示情報は、スタイル情報において定義された字幕の表示領域を指定している。各表示情報における表示開始時刻は、それぞれt1,t2,t3に設定されており、各表示情報におけるテキスト文字列は「本当は」「ウソだった」「ごめん」に設定されている。こうした設定により、表示情報における字幕は、動画の再生時刻の進行に伴い、順々に切り換わってゆくことになる。
【０１１４】
図３０（ａ）の表示情報を含むテキスト字幕ストリームと、BD-ROM上のAVClipとの同期がLocal Storage３２上のPlayList情報に規定されているものとする。そうすると、表示情報の表示位置、表示開始時刻に基づきテキスト文字列をPresentationGraphicsプレーン８上に配置することにより、図３０（ｂ）のような合成画像が再生されることになる。
【０１１５】
以上が本実施形態におけるテキスト字幕ストリームの内部構成である。
続いてEP_mapについて説明する。図２９の第2段目におけるEP_mapは、テキスト字幕ストリームにおける表示情報のエントリー位置を、SubPlayItem情報時間軸におけるエントリー時刻と対応づけて示す。かかる対応付けを示すことにより、SubPlayItem情報時間軸における任意の位置から、テキスト字幕における表示情報のアドレスを導くことができる。
【０１１６】
以上がテキスト字幕ストリームについての説明である。
続いて、SubPlayItem情報を用いたテキスト字幕ストリームの再生について説明する。図２９に示したように、EP_mapにより、エントリー時刻とエントリー位置との対応付けがなされているので、SubPlayItem情報のIn_time、Out_timeを、テキスト字幕ストリームのエントリー位置に変換することにより、In_timeに対応する表示情報のアドレスを、得ることができる。
【０１１７】
図３１は、図２８のステップＳ１４０の詳細フローチャートであり、テキスト字幕ストリームの再生処理を示すフローチャートである。
ステップＳ１４８では、カレントClip情報のEP_mapを用いて、SubPlayItem＃yのIn_timeを、テキスト字幕ストリームにおける表示情報の相対アドレスαに変換する。一方ステップＳ１４９では、SubPlayItem＃yのOut_timeを,カレントClip情報のEP_mapを用いて、テキスト字幕ストリームにおける表示情報の相対アドレスβに変換する。これらの変換で得られたアドレスβの次のアドレスを求めて、そのアドレスの1つ手前をアドレスγに設定し(ステップＳ１５１)、そうして算出されたアドレスγを用いて、テキスト字幕ストリームにおけるアドレスαからアドレスγまでの部分をTSデコーダに投入する(ステップＳ１５２)。このフローチャートにより、SubPlayItem情報におけるIn_timeを、テキスト字幕ストリームにおけるエントリー位置に変換することにより、SubPlayItem情報に基づき、テキスト字幕ストリームを再生させることができる
かかる処理により、MainPathの再生、SubPathの再生の双方が再生されるので、動画と字幕とからなる合成画像が表示されることになる。
【０１１８】
続いて本実施形態におけるTextSTデコーダ１２の内部構成について説明する。
図３２は、TextSTデコーダ１２の内部構成を示す図である。本図に示すようにTextSTデコーダ１２は、フォントレンダリング部２１と、展開バッファ２２と、コントローラ２３とからなる。
【０１１９】
フォントレンダリング部２１は、テキストコードバッファ１０に格納されている表示情報のコード列を、ビットマップに展開する。この展開にあたっては、その表示情報におけるスタイルIDを取り出して、そのスタイルIDに対応するフォントデータをバッファから取り出し、このフォントデータを用いることにより行う。
【０１２０】
展開バッファ２２は、フォントレンダリング部２１により展開されたビットマップが格納される。
テキスト字幕ストリームを構成するコード列と、このコード列の展開に必要なフォントデータとをバッファに読み込む処理を"プリロード"という。テキストコードバッファ１０、フォントバッファ１１に複数のストリームを読み込むことができる場合、読み込まれる優先順位は、第１実施形態で述べた、STN_tableにおける順位などによって決められる。優先順位の高いストリームからテキストコードバッファ１０、フォントバッファ１１に読み込めるだけ読み込んでおけば、再生中にシークを発生させずに切り替えられるストリームの種類が増す。
【０１２１】
コントローラ２３は、展開バッファ２２に格納されたビットマップを、表示情報における表示時刻及び表示位置に従い、PGプレーン８に書き込む。
フォントレンダリング部２１によるビットマップへの展開にあたっては、テキスト字幕ストリームに対応する言語の言語特性をサポートするような制御を行う。言語特性のサポートには、横書き、縦書き、カーニング、行末禁則、右から左への描画、合字・抱き字といったものがある。
【０１２２】
ここでカーニングとは、文字の形状により字間を詰めて見た目をよくする機能をいう。行末禁則とは、行末の「。」がフォントの配置により行頭にくることを禁止する機能をいう。
【０１２３】
以上がTextSTデコーダ１２の内部構成を示す図である。字幕をグラフィクスで表現する場合には、発生しなかったが、コード列で表現する場合に新たに発生する技術的課題について説明する。
【０１２４】
＜コード列表現による技術的課題＞
グラフィクスで表現された字幕の場合、どの再生装置でも同じ見た目を保つことは簡単になる。字幕が文字コードで表現されている場合は、図３２の内部構成に示したような、FontGeneraterあるいはRendererと呼ばれるような、文字コードをビットマップに変換して画面上に表示するためのモジュール(フォントレンダリング部２１)が必要になる。そしてFontGeneraterは機器によって、文字の見せ方、サポートする言語が違ってくる可能性がある。
【０１２５】
これは、グラフィクスで表現された字幕の場合、見た目はオーサリング時に決められるのに対して、字幕が文字コードで表現されている場合、字幕の見た目は、再生装置のFontGeneratorの性能に依存してしまうためである。
【０１２６】
多少の文字の形の違いは、現在のWebページを閲覧するようなHTMLブラウザでも存在し、それほど大きな問題ではないが、以下に述べるような言語特性による違いは非常に大きい。
【０１２７】
図３３（ａ）は、日本語の言語特性によるレイアウトの違いについて説明した図である。図３３（ａ）における"括弧の形"は、括弧記号が横書きと、縦書きとで９０度傾きが異なることを示す。"文字の位置"は、「ゃ」のような小さな文字を、横書きと縦書きとで、配置位置を微妙に調整しておく必要があることを示す。"長音の形"は、横書きと縦書きとで、文字の形自体を変えておくことを示す。図３３（ｂ）は、アラビア語の言語特性におけるレイアウトを示す。この図３３（ｂ）に示すように、アラビア語では、文字は右側から左側に流れていくことがわかる。
【０１２８】
このような特殊な文字・言語をFont Generaterが生成しなければならないが、これは対応するフォント情報を与えればよいというものではなく、フォントレンダリング部２１がビットマップを描画するにあたっての、描画機能としてこれらをサポートする必要がある。これらのサポートが必要なので、品質保証を考えれば、サポートが全て満たされた限り、デコード能力を有りとするのが望ましい。
【０１２９】
また、欧米で発売されるようなBD-ROM再生装置においては滅多に日本語やアラビア語の字幕を表示する必要はないため、必ずしもこれらの文字を適切に表示するためのFontGeneraterは必要ではない。各々の再生装置が全ての言語をサポートする必要はなく、またサポートするためには余分なコストがかかってしまうので望ましくない。あるいは、全ての再生装置は全言語の適切は表示をサポートしなければならないとした場合、製造する国によっては対象となる全言語に対する知識がなく、どのようにFontGeneraterを製造して良いか分からないため、再生装置を製造できなくなってしまうのも望ましくない。その一方、商品の付加価値を高めるためには、表示可能な言語種が多いほどよい。
【０１３０】
そこで、テキスト字幕ストリーム制御のためのアプリケーションに、どの言語を適切に表示できるかを伝えるべく、本実施形態では、図３４に示すように、PSR48〜61に対する設定を行う。
【０１３１】
図３４は、日本語、英語、アラビア語という3つの言語のDecode Capabilityを設定するにあたっての、判断基準を示す図である。
上の表は、英語、日本語、アラビア語の文字フォントをレンダリングする能力の有無を示し、下の表は、英語、日本語、アラビア語の言語特性をサポートする能力の有無を示す。
【０１３２】
この下側の表を参照すると、英語の字幕表示は、PGプレーン８にビットマップを書き込むにあたって、"横書き","カーニング","合字・抱き字"という機能がサポートされて初めて、言語特性がサポートされていると判断することができる(言語特性のサポート→1)。
【０１３３】
日本語の字幕表示は、PGプレーン８にビットマップを書き込むにあたって、"横書き","縦書き","行末禁則","ルビ"という機能がサポートされて初めて、言語特性がサポートされていると判断することができる(言語特性のサポート→1)。
【０１３４】
アラビア語の字幕表示は、PGプレーン８にビットマップを書き込むにあたって、"右から左の描画"、"合字・抱き字"という機能がサポートされて初めて、言語特性がサポートされていると判断することができる(言語特性のサポート→1)。
【０１３５】
これらの機能は、コード列をビットマップに展開する機能(レンタリング)が前提になるから、本実施形態では、レンダリング能力と、言語特性のサポート能力とが満たされて初めて、PSR48〜61における、日本語、英語、アラビア語に対応するDecodeCapabilityフラグをオン"1"に設定するよう規定しておく。
【０１３６】
再生装置を商品化するにあたって、メーカーの技術者は、TextSTデコーダ１２が、図３４に示した複数の項目のうち、どれを具備しており、どれを具備していないかをチェックする。そしてレンダリング能力、サポート能力の具備を条件にして、PSR48〜61を設定する。こうしてことにより、Procedure実行部２０がテキスト字幕ストリームをデコードできるか否かの判定が適切なものになり、各言語でのテキスト字幕表示の適切化を期することができる。
【０１３７】
尚、PSR48〜61は、言語のDecode Capabilityの有無を示したが、言語ごとではなく、サポートすべき機能(横書き、縦書き、カーニング、行末禁則、合字・抱き字等)ごとに、言語特性をサポートしているか否かを示してもよい。この仕組みを用いると、言語ごとに、どの機能が必要かをあらかじめ決めておけば、言語数分のレジスタ領域を使わずにすむ。この場合、各機能をサポートしている場合は、フラグをONに、サポートしていなければフラグをOFFにしておけばよい。この場合、図３４に示したような対応表が再生装置内に必要となるが、この対応表は、レジスタとしてではなく、プログラムとして組み込むことができるため、言語が増えてもアップデートできる可能性もある。
【０１３８】
テキスト字幕ストリームの属性情報として、これまでに説明したように言語属性、つまり日本語や英語であるといった情報ではなく、表示するためにどの機能が必要であるかを、Clip情報に示しておいてもよい。
【０１３９】
(第３実施形態)
第１実施形態では、PSR48〜61に示されるDecode Capabilityフラグの設定値のみを参照して、各言語のデコード能力の有無を判定したが、本実施形態は、字幕表示を可とする言語種を拡大する実施形態である。
【０１４０】
対象となる言語が再生装置でサポートされていない場合、フォントデータはディスクあるいはダウンロードによって供給されるため、配置などがおかしなことはあるが、読めないことはないかもしれない。そのため、再生装置の状態やユーザーの設定により、サポートしていない言語も表示することを許してもよいし、サポートされていない言語が不適切に表示されて困る場合には表示は避けたい。
【０１４１】
ここで言語特性のサポートがない言語(アンサポート言語)における字幕表示の可能性について説明する。図３５（ａ）（ｂ）は、縦書き項目が完全にサポートされている日本語字幕と、縦書き項目のサポートが不完全な日本語字幕とを示す図である。再生装置を製造するメーカーは、アンサポート言語が表示されることによって、文字が読めないなどという商品苦情があっては困る。こうした事情から、このような表示を禁止したいかもしれない。
【０１４２】
ところが、日本語の適切な表示をサポートしていなくても、図３５（ｂ）に示すように、何とか読める可能性があり、音声として日本語が入っておらず、他の言語の音声や字幕を理解することができなければ、多少読みにくくてもユーザーは表示を望む可能性がある。再生装置の製造者は基本的には禁止しているが、ユーザーが望むのならば、表示を許可するような設定を再生装置で実現できれば、字幕表示可能な言語種別が格段に増え、ユーザに対する利便性が向上する。尚、ここでいう"ユーザ"とは、いわゆるエンドユーザ(最終消費者)をさすが、メーカの技術者であってもよく、いわゆる"操作者全般"の意味である。
【０１４３】
以上のように、品質保証に細心の注意を払っているようなメーカーは、図３５（ｂ）のような字幕表示は禁じたいところであるが、ユーザによっては、図３５（ｂ）のような表示でも、字幕表示が存在することにはかわりないので、このような状態での字幕表示を希望することがある。
【０１４４】
こうしたメーカー側の要望と、ユーザ側の要望との調和を図るべく、本実施形態では以下に示すような改良がなされている。アンサポート言語の選択を実現するため、本実施形態における再生装置は、図３６に示すような内部構成を有する。本図における改良点は以下の通りである。
【０１４５】
i)PSR30のb23〜b16に、アンサポート言語の選択を許可するか否かを示す許可フラグが存在していること。
ii)PSRの予約領域に、特定の言語圏に属する個々の言語がアンサポート言語であるか否かが示されていること。
【０１４６】
iii)Procedure実行部２０が、PSR30のb23〜b16に従ってアンサポート言語の選択を実行すること。
iv)セルフテスト部３１、セットアップ部３２が制御部１５内に存在すること
である。
【０１４７】
改良点その１.PSR30のb23〜b16
図３７は、第３実施形態におけるPSR30のb23〜b16のビットアサインを示す図である。本図においてPSR30のb23〜b16に、サポートされていない言語のユーザー選択を許可するか否かがが示さている。
【０１４８】
つまりPSR30のb23〜b16が"00000000(=OFF)"の場合は、サポートされていない言語はユーザーが選択しても表示されない。そもそも選択さえできなくしてもよい。このPSR30のb23〜b16が"10000000(=ON)"の場合は、適切な表示ではないかもしれないが、ユーザーが選択して画面上にテキスト字幕ストリームを表示することが可能となることを示す。以上がPSR30のb23〜b16に対する改良である。
【０１４９】
続いて予約領域における改良について説明する。
改良点その２.予約領域
図３８は、PSRの予約領域におけるビット構成を示す図である。この予約領域は、漢字圏等、特定の言語圏に属する個々の言語が、アンサポート言語であるか否かを示す。この予約領域における各ビットは、特定の言語圏に属する各言語に対応しており、このビットが"1"であるなら、その言語がアンサポート言語であることを示し、"0"であるなら、その言語は、対応するレンダリング能力が再生装置側にない言語(アンレンダリング言語)であることを示す。かかるビット設定により、特定の言語圏に属する言語については、アンサポート言語であるかどうかが判明することになる。尚、予約領域における各ビットが、どの言語に対応するかという割り当ては、図２１に示したような割当テーブルを用いてなされる。以上がPSRに対する改良である。続いてセルフテスト部３１に対する改良について説明する。
【０１５０】
改良点その３.セルフテスト部３１
セルフテスト部３１は、工場出荷時において、レンダリング能力、言語特性のサポートの具備のテストをメーカーの技術者に行わせ、テスト結果に応じて、PSR48〜61の何れかを設定する。ここでセットアップ部３２は、様々のテストパターンを保持しており、それらをTextSTデコーダ１２に与えて、字幕表示における言語特性のサポートのテスト表示を実行させ、テスト結果を、ディスプレイに表示させる。レンダリング能力はあるが、サポート能力がないなら、メーカーの技術者からの操作に従い、その言語をアンサポート言語として登録する。レンダリング能力もサポート能力もないなら、メーカーの技術者からの操作に従い、その言語をアンレンダリング言語として登録する。
【０１５１】
改良点その４.セットアップ部３２
セットアップ部３２は、ユーザによるリモコン３００に対する操作に応じてセットアップメニューを表示して、PSR30のb23〜b16の設定値を書き換える。図３９（ａ）は、セットアップメニューを示す図である。本図に示すようにセットアップメニューにより受け付けられる設定項目には、『国・地域』、『メニュー言語』、『音声言語』、『字幕言語』、『表示できる言語の拡張』という5つの項目がある。本セットアップ部３２による特徴は、表示できる言語の拡張を行うかどうかの指定をユーザから受け付ける点である。
【０１５２】
図３９（ｂ）は、言語種の拡張をユーザが意図した際、表示されるメニューを示す図である。本図におけるメニューは、アンサポート言語の一覧表示(図中のイタリア語、スペイン語、ロシア語・・・・・)と、このアンサポート言語のテキスト字幕ストリームを表示させる際の警告文Wn1と、言語種の拡張を実行するか否かの選択を受け付けるボタンbn1,bn2とを含む。
【０１５３】
この警告文Wn1は、アンサポート言語の字幕を表示する際、字幕表示の一部がおかしくなることをユーザに警告するものである。そして上述のボタンbn1,bn2は、かかる警告にも拘らず、言語種の拡張を実行するか、しないかを受け付ける。以上が本実施形態における各構成要素の改良点である。続いて、Procedure実行部２０、セルフテスト部３１、セットアップ部３２による処理手順を、図４０のフローチャートを参照しながら説明する。
【０１５４】
図４０は、第３実施形態におけるテキスト字幕ストリームの判定手順を示すフローチャートである。本フローチャートは、図２５のフローチャートに対し、ステップＳ１６、ステップＳ１７を加えた構成になっている。
【０１５５】
このステップＳ１６は、対象となるテキスト字幕ストリームが、アンサポート言語であるか否かを判定するものである。ステップＳ１７は、PSR30のb23〜b16が10000000bであるかを判定するものである。ここでステップＳ１６がYes、ステップＳ１７がYesと判定された場合、このテキスト字幕ストリームはアンサポート言語であったとしても条件(a)を満たすとされる。一方、ステップＳ１６、ステップＳ１７のどちらかがNoであれば、条件(a)を満たさないと判定される。
【０１５６】
図４１は、セルフテスト部３１の処理手順を示すフローチャートである。本フローチャートは、textST_language_codeにて表現される、430言語のそれぞれについて、ステップＳ４２〜ステップＳ４８の処理を繰り返すループ処理になっている。ループ処理において対象となる言語を言語uとすると、ステップＳ４２は、言語のtextST_language_codeのPSR番号、ビット位置に変換するものである。
【０１５７】
ステップＳ４３は、言語のフォントをレンタリングする能力が有るかどうかの判定であり、もしレンタリングする能力が、ないとと判定されれば、PSRpのqビット目は、0に設定されることになる(ステップＳ４８)。
【０１５８】
ステップＳ４４は、言語特性のサポートする能力があるかどうかの判定である。もし有ると判定されれば、PSRpのqビット目は、1に設定されることになる(ステップＳ４５)。もしないと判定されれば、言語uをアンサポート言語として登録した上で(ステップＳ４７)、PSRpのqビット目は、0に設定する(ステップＳ４８)。
【０１５９】
以上の処理を全ての言語について実行すれば、ステップＳ４９、ステップＳ５０の処理を行う。ステップＳ４９は、アンサポート言語の字幕表示を実行するかどうかをユーザに問い合わせるステップである。アンサポート言語の字幕表示を実行させたいならステップＳ５０を実行する。ステップＳ５０は、PSR30のb23〜b16を10000000に設定する処理である。もしアンサポート言語の字幕表示を実行させたくないなら、ステップＳ５０をスキップする。以上がセルフテスト部３１の処理手順である。
【０１６０】
図４２は、セットアップ部３２の処理手順を示すフローチャートである。セットアップ部３２は、セットアップメニューを表示してから(ステップＳ５１)、アンサポート言語が存在するか否かの判定を行う(ステップＳ５２)。存在しないならステップＳ５４に移行するが、存在すれば、"表示できる言語の拡張"を受け付けるための設定項目を、セットアップメニューに追加して(ステップＳ５３)、セットアップメニューの設定項目における選択待ちを行う(ステップＳ５４)。
【０１６１】
設定項目が選択されれば、その選択項目が言語種の拡張であるかの判定を行う(ステップＳ５５)。もし異なれば、国・地域、メニュー言語、音声言語、字幕言語の設定を行うよう、該当する処理手順を実行する(これらの処理手順は本発明の主眼ではないので説明は省略する)。
【０１６２】
言語種の拡張であれば、図３９のメニューを表示して(ステップＳ５６)、ユーザからの操作待ちとなる(ステップＳ５７、５８)。移動キーが押下されれば(ステップＳ５７でYes)、セットアップメニュー上のフォーカスを行う(ステップＳ５９)。終了操作がなされれば(ステップＳ５８でYes)、フォーカスが、拡張を意図するボタン上に存在するか否かを判定し(ステップＳ６０)、存在しなければ、そのまま処理を終了する。存在すれば、PSR30のb23〜b16を10000000に設定して(ステップＳ６１)、本フローチャートの処理を終了する。
【０１６３】
以上のように本実施形態によれば、サポートしていない言語でも選択を許可するためのフラグ(PSR30のb23〜b16)を、メーカが設定することで、アンサポート言語をストリーム選択部１７に選択させるか否かを切り換えることができる。フラグの設定1つで、アンサポート言語選択の可否を決定することができるので、再生装置を製造するメーカーが、品質保証を厳しくするために、アンサポート言語の選択を禁じたり、またユーザの自己責任にて、アンサポート言語の選択を許可したりするという、セッティング変更を容易に実行することができる。
【０１６４】
これによりユーザは、字幕表示に不都合が生じることを承知した上で、不都合が生じるような言語のテキスト字幕を表示させることができる。ユーザによる自己責任により、アンサポート言語の字幕を、表示するので、ユーザとメーカーとの調和を図ることができる。
【０１６５】
尚、サポートしていない言語でも選択を許可するためのフラグ(PSR30のb23〜b16)は、テキスト字幕ストリームとともにClip情報中に記録されていてもよい。また、再生装置とディスク上の両方に記録されていた場合、論理和をとってもよいし論理積をとって処理してもよい
(第４実施形態)
第３実施形態では、アンサポート言語の字幕表示をユーザが希望している場合、アンサポート言語を、Decode Capability有として判定するよう、処理を行ったが、本実施形態は、アンサポート言語の字幕表示をユーザが希望している場合、PSR48〜61における、そのアンサポート言語に対応するDecodeCapabilityを、全て"Decode Capability有り"に設定するよう更新を行う実施形態である。
【０１６６】
図４３（ａ）（ｂ）は、アンサポート言語の表示をユーザが希望していない場合と、希望した場合とで、Decode Capabilityの設定を対比して示す図である。図４３（ａ）では、レンダリング能力＝"1"であり、尚且つサポート能力＝"0"である言語については、DecodeCapabilityは"0"になっていることがわかる。
【０１６７】
しかし図４３（ｂ）において、ユーザが、アンサポート言語の字幕表示をユーザが希望した際、レンダリング能力＝"1"であり、尚且つサポート能力＝"0"である言語についてのDecodeCapabilityは"1"に変化していることがわかる。このように、レンダリング能力＝"1"であり、尚且つサポート能力＝"0"である言語についてのDecodeCapabilityを"1"に変化させるよう、本実施形態では、更新処理を行う。
【０１６８】
この更新処理を実現するための改良は、セットアップ部３２に存在する。
図４４は、第４実施形態に係るセットアップ部３２の処理手順を示すフローチャートである。本フローチャートは、図４２のフローチャートをベースにして作成されている。この図４２のフローチャートとの違いは、ステップＳ６１の代わりにステップＳ６３が存在する点である。このステップＳ６３は、言語種の拡張を意図するボタンに、フォーカスが存在すると判定された場合に(ステップＳ６０でYes)、実行されるステップであり、アンサポート言語に対応する全ての言語のDecodeCapabilityを示すDecode Capabilityフラグを、"1"に設定するものである。このステップＳ６３の実行により、ユーザが言語種の拡張を希望した場合は、一律に、それらの言語に対応するDecodeCapabilityフラグが、"1"に設定されることになる。
【０１６９】
以上のように本実施形態によれば、ユーザの希望時において、PSR48〜61におけるアンサポート言語に対応するDecode Capabilityフラグを"1"に設定するので、PSR2を設定する際の設定手順が簡単になる。
【０１７０】
(第５実施形態)
第５実施形態は、再生の途切れに関する実施形態である。ここで再生の途切れとは、AVClipを再生する際、プリロードされていないテキスト字幕ストリームをBD-ROMからバッファに読み込もうとすることにより、生じる再生の途切れである。かかる途切れは、STN_Tableに記述されていながら、プリロードすることができなかったテキスト字幕ストリームをユーザが選択しようとしたことから生じる。
【０１７１】
ここで、SubPath情報で指定されるストリームが複数存在する場合、テキストコードバッファ１０、フォントバッファ１１の容量により、そのうちいくつかのストリームしかバッファに読み込むことができないこともある。プリロードされていないストリームに切り替えようとすると、BD-ROMに対するディスクシークを実行してデータを読み込む必要があるため、AVClipの再生が途切れる。
【０１７２】
図４５はテキストコードバッファ１０、フォントバッファ１１の容量が、3言語分しかなかった場合に、テキスト字幕ストリームの切替の様子を示している。
本図では、3つの言語にあたる日本語、フランス語、中国語のテキスト字幕ストリームをプリロードした後、MainPathの再生を開始している。図１０に示されるSTN_Tableに基づき、ローダ１３がプリロードを実行する際、ローダ１３は、図４５のようなプリロードを行う。図４５は、ローダ１３によるバッファへのプリロードを示す図である。つまりテキスト字幕ストリームのうち、STN_Tableの記述順序が高いものを順次バッファにロードしてゆき、そしてバッファが充填された段階でプリロードを終える。STN_Tableにおける順位が最も低いテキスト字幕ストリーム(本図ではアラビア語のテキスト字幕ストリーム)は、バッファにプリロードされなくなる。
【０１７３】
バッファにプリロードされていないにも拘らず、STN_Tableには、アラビア語のテキスト字幕ストリームが記述されているので、ストリーム選択部１７は、その非プリロードのテキスト字幕ストリームを、図４６に示すように、再生対象に選ぶことがありうる。
【０１７４】
ストリーム選択部１７により選択されたテキスト字幕ストリームがバッファにない場合、これをメモリにロードするとの処理を行うので、AVClipの再生中に、テキスト字幕ストリームをバッファに読み込もうとする。この場合、ストリーム選択部１７は、AVストリームの再生を一時中断し、アラビア語のテキスト字幕ストリームをテキストコードバッファ１０、フォントバッファ１１に読み込んでから、再生を中断した地点から再生を再開(Resume)するとの手順をとる。
【０１７５】
図４７は、AVClipの再生中において、非プリロードのテキスト字幕ストリームをユーザが選択した場合に、ローダ１３が実行するロード処理を模式的に示す図である。
AVClipの再生中、光ピックアップは、AVClipをアクセスしているにも拘らず、非プリロードのテキスト字幕ストリームを読み出そうとすると、この読み出しには、図４８（ａ）に示すようなAVClipの記録領域から、テキスト字幕ストリームの記録領域へのシーク、テキスト字幕ストリーム記録記録から、AVClip記録領域へのシークを伴うので、シークがなされている間、図４８（ｂ）に示すように、デコーダへのAVClip供給は途絶えることになり、AVClipの再生途切れが生じる。  一部の言語のテキスト字幕ストリームについては、再生の途切れを生じさせない配慮を講じているのに、プリロードできなかった一部の言語について、かかる再生の途切れが生じるのは、不合理である。しかしユーザによっては、AVClipの再生途切れよりも、切り換え可能な言語種を広げたいという要望があり、再生途切れの解消を優先するか、言語種の拡大を重視するかという、要望にメーカは迷うことになる。
【０１７６】
AVClipの連続再生、つまり、途切れることなくAVClipを再生させることの要求と、AVClipの再生が途切れてもストリームの切替を優先したい要求とは、様々な要因に応じて変動する。そこでどちらを優先するかの規範が、再生装置側に必要となる。本実施形態は、かかる規範を、再生装置側に設けるものである。
【０１７７】
図４９は、本実施形態に係る再生装置の内部構成を示す図である。以降、本図を参照しながら、本実施形態における再生装置の改良点について説明する。本実施形態における改良点は、以下の4つi)〜iv)である。
【０１７８】
i)本図におけるローダ１３に対する改良点は、プリロード管理テーブル３３が追加されている点である。
ii)PSRセットに対する改良点は、許可フラグがPSRの予約領域に追加されている点である。
【０１７９】
iii)ストリーム選択部１７における改良点は、各PGストリーム、テキスト字幕ストリームを選択するかどうかの判定にあたって、上述した(a)(b)の判定基準に加え、許可フラグがオンになっているか、テキスト字幕ストリームがプリロードされているかという判断基準が加えられている点である。
【０１８０】
iv)セットアップ部３２における改良点は、許可フラグのオン／オフをユーザからの操作に従い、設定する点である。
以降本実施形態における再生装置の個々の改良点について詳しく説明する。
【０１８１】
改良点その１.プリロード管理テーブル３３
プリロード管理テーブル３３は、STN_Tableに記述されたテキスト字幕ストリームのうち、どれがプリロードされているか、どれがプリロードされていないかを示すテーブルである。ローダ１３は、テキストコードバッファ１０、フォントバッファ１１へのプリロードを行うにあたって、STN_Tableに基づきこのプリロード管理テーブルを作成し、個々のテキスト字幕ストリームのプリロードが完了すれば、そのテキスト字幕ストリームに対応する本テーブル上の項目をONにしてゆく。そうして、テキストコードバッファ１０、フォントバッファ１１が充填するまで、各テキスト字幕ストリームのプリロードを繰り返す。こうした処理により、プリロード管理テーブルには、プリロードが完了したテキスト字幕ストリーム、プリロードされなかったテキスト字幕ストリームが示されることになる。
【０１８２】
改良点その２.シームレスフラグ
図５０は、PSRの予約領域に設けられたシームレスフラグの一例を示す図である。図中の引き出し線は、シームレスフラグの意味内容を示す図である。本図におけるシームレスフラグは、PSRの予約領域に設けられており、"1"に設定されることにより、シームレス再生を優先する旨を示す。つまりAVClipの再生途切れが生じるようなテキスト字幕ストリームの選択を許可しない旨を示す。シームレスフラグが有効"1(=ON)"であれば、AVClipの途切れない再生（シームレス再生）を優先するため、プリロードされていないストリームへの切替は禁止される。シームレスフラグが無効"0(=OFF)"の場合は、AVClipのシームレス再生はそれほど重要ではないため、STN_Tableに登録されている全てのストリームに対して切替が可能となる。プリロードされていないストリームに切り替える場合は、AVClipの再生を中断して、ストリームを切り替える。以上がシームレスフラグについての説明である。
【０１８３】
改良点その３.ストリーム選択部１７
本実施形態にかかるストリーム選択部１７は、シームレスフラグにおける設定値に基づき、AVClipの再生途切れを招くようなテキスト字幕切り換えをユーザが意図しているか否かを判定し、その判定に基づき、バッファにないテキスト字幕ストリームを、選択対象にするかどうかの選択手続きを実行する。
【０１８４】
図５１（ａ）に示すように、AVClipに多重されているPGストリーム、プリロードされているテキスト字幕ストリーム、プリロードされていないテキスト字幕ストリームが、STN_Tableに記述されているものとする。そして、シームレス再生を優先するよう、シームレスフラグが設定されている場合、状態遷移は図５１（ｂ）のようになる。図中の丸は、MainPath側のPGストリーム、プリロードされたSubPath側のテキスト字幕ストリーム、プリロードされていないSubPath側のテキスト字幕ストリームをそれぞれ模式的に示す。矢印は、各ストリーム間の切り換えを示す。シームレスフラグがオンなら、PGストリームからプリロードされたテキスト字幕ストリームへの切り換えや、プリロードされたテキスト字幕ストリームからPGストリームへの切り換えは可能になる。しかしシームレスフラグがオフなら、図５１（ｃ）に示すように、PGストリームから非プリロードテキスト字幕ストリームへの切り換えや、非プリロードテキスト字幕ストリームからPGストリームへの切り換えは不可能になる。以上がストリーム選択部１７における改良点についての説明である。
【０１８５】
改良点その４.セットアップ部３２
セットアップ部３２は、第３実施形態同様、ユーザによるリモコン３００に対する操作に応じてセットアップメニューを表示して、PSRの予約領域におけるシームレスフラグの更新を行う。図５２（ａ）は、本実施形態においてセルフテスト部３１により表示されるセットアップメニューを示す図である。
【０１８６】
本実施形態においてセットアップメニューにより受け付けられる設定項目には、『国・地域』、『メニュー言語』、『音声言語』、『字幕言語』、『表示できる言語の拡張』という5つの項目がある。本セットアップ部３２による特徴は、表示できる言語を拡張するかどうかの指定をユーザから受け付ける点である。ここでの"言語の拡張"は、第１実施形態〜第３実施形態に示したものとは異なり、シームレス再生を実現するため、選択が禁止されている言語のテキスト字幕を、選択の対象に加えることを意味する。
【０１８７】
図５２（ｂ）は、言語種の拡張をユーザが意図した際、表示されるメニューを示す図である。本図におけるメニューは、言語種の拡張が、映像の再生を中断させ得ることを示す警告文Wn2と、シームレス再生を保障する操作を受け付けるためのボタンbn3、シームレス再生よりも字幕切替を優先する操作を受け付けるボタンbn4とを示す。
【０１８８】
警告文Wn2は、言語種の拡張が、映像の再生を中断させ得ることを示しており、そして上述のボタンbn3,4は、かかる警告にも拘らず、言語種の拡張を実行するか、しないかを受け付ける。かかる表示により、自己責任により、字幕表示を実行するか否かをユーザは選択することができる。これにより途切れることなくAVClipを再生させたいとの要望と、AVClipの再生が途切れてもストリームの切替を優先したいとの要望との調和を図ることができる。
【０１８９】
以上が本実施形態における各構成要素の改良点である。続いて、本実施形態に係るストリーム選択部１７による選択手順について説明する。
図５３は、第５実施形態に係る、ストリーム選択部１７による選択手順を示すフローチャートであり、本フローチャートは、図２４を改良したものになっている。本フローチャートのステップＳ３１、ステップＳ３２は、図２４同様、STN_tableに記述されているPGストリーム、テキスト字幕ストリームのそれぞれについて、ステップＳ３３〜ステップＳ３４、ステップＳ６１の処理を繰り返すループ処理になっている。ステップＳ３３、ステップＳ３４の処理は、図２４と同じであるが、ステップＳ６１の処理は、図２４と異なる。
【０１９０】
具体的にいうと、ステップＳ６１では、textST_streamiが以下の(a)(b)(c)(d)を満たすかを否かを判定している。
(a)テキスト字幕ストリームiをデコードする能力が再生装置に存在すること
(b)テキスト字幕ストリームiの言語属性が再生装置の言語設定と一致すること
(c)テキスト字幕ストリームiの表示に必要なデータがプリロードされているか(d)シームレス再生が要求されているか
(c)の条件を具備しているかの判定は、プリロード管理テーブルを参照することでなされる。(d)の条件を具備しているかの判定は、PSRの予約領域における許可フラグを参照することでなされる。
【０１９１】
以上のステップＳ３３〜ステップＳ３５の処理が全てのPG_textST_streamについて繰り返されれば、ステップＳ６２〜ステップＳ６３、ステップＳ６５〜ステップＳ６８の処理が実行される。
【０１９２】
ステップＳ６２は、シームレスフラグによりシームレス再生が要求されているか否かの判定であり、ステップＳ６３は、条件(c)を満たすPGストリーム、テキスト字幕ストリームに表示可能なものが存在するか否かの判定である。
【０１９３】
シームレスフラグによりシームレス再生が要求されていない場合、ステップＳ６２がNoになり、図２４と同様の処理を行う。つまり表示可能なPGストリーム、テキスト字幕ストリームが存在するか否かを判定して(ステップＳ６５)、もし存在すれば、条件(a)、条件(b)を満たすPGストリーム、テキスト字幕ストリームのうち、STN_Tableでの順位が最も高いもをPSR2に設定する(ステップＳ６７)。存在しなければ、Invalidな値をPSR2に設定する(ステップＳ６８)。
【０１９４】
シームレスフラグによりシームレス再生が要求されており(ステップＳ６２でYes)、尚且つ条件(c)を満たすテキスト字幕ストリームが存在する場合(ステップＳ６３でYes)、条件(a)、条件(b)、条件(c)を満たすPGストリーム、テキスト字幕ストリームのうち、最もエントリー順位が高いものを、PSR2に設定する(ステップＳ６６)。
【０１９５】
シームレスフラグによりシームレス再生が要求されているが(ステップＳ６２でYes)、条件(c)を満たすテキスト字幕ストリームが存在しない場合(ステップＳ６３でNo)、Invalidな値をPSR2に設定する(ステップＳ６８)。以上が図５３のフローチャートである。
【０１９６】
図５４は、図５３のステップＳ６６の処理を詳細に示したフローチャートである。
ステップＳ９１は、条件(a)、条件(b)、条件(c)の全てを満たすPGストリーム、テキスト字幕ストリームが存在するか否かの判定である。もし存在すれば、条件(a)、条件(b)、条件(c)の全てを満たすPGストリーム、テキスト字幕ストリームのうち、STN_Tableにおける順位が最も高いものをPSR2に設定する(ステップＳ９３)。
【０１９７】
条件(a)、条件(b)、条件(c)の全てを満たすPGストリーム、テキスト字幕ストリームが存在しない場合、ステップＳ９２が実行されることになる。ステップＳ９２は、条件(a)、条件(c)を満たすPGストリーム、テキスト字幕ストリームが存在するか否かの判定である。もし存在すれば、条件(a)、条件(c)の全てを満たすPGストリーム、テキスト字幕ストリームのうち、STN_Tableにおける順位が最も高いものをPSR2に設定する(ステップＳ９４)。
【０１９８】
以上が本実施形態におけるProcedure実行部２０の処理手順である。続いてセットアップ部３２によるシームレスフラグの設定について説明する。図５５は、セットアップ部３２によるシームレスフラグの設定手順を示すフローチャートである。
【０１９９】
図５５は、セットアップ部３２の処理手順を示すフローチャートである。セットアップ部３２は、セットアップメニューを表示してから(ステップＳ７１)、ステップＳ７２、ステップＳ７３の判定を実行する。ステップＳ７２は、シームレスフラグがONに設定されているか否かの判定であり、ステップＳ７３は、STN_Tableに記述されていながら、プリロードされていないテキスト字幕ストリームが存在するか否かの判定である。
【０２００】
ステップＳ７２、ステップＳ７３の双方がYesなら、言語種を拡張する操作を受け付けるための選択項目をセットアップメニューに追加する。ステップＳ７２、ステップＳ７３のどちらかがNoなら、このステップＳ７４をスキップする。
【０２０１】
続いてセットアップメニューの設定項目における選択待ちを行う(ステップＳ７５)。設定項目が選択されれば、その選択項目が言語種の拡張であるかの判定を行う(ステップＳ７６)。もし異なれば、国・地域、メニュー言語、音声言語、字幕言語の設定を行うよう、該当する処理手順を実行する(これらの処理手順は本発明の主眼ではないので説明は省略する)。
【０２０２】
言語種の拡張をユーザが選択すれば、図５２（ｂ）のメニューを表示してユーザからの操作待ちとなる(ステップＳ７８〜７９)。移動キーが押下されれば(ステップＳ７８でYes)、セットアップメニュー上のフォーカス移動を行う(ステップＳ８０)。終了操作がなされれば(ステップＳ７９でYes)、フォーカスが、“字幕切り替えを優先”を意図するボタン上に存在するか否かを判定し(ステップＳ８１)、存在しなければそのまま処理を終了する。字幕切り換え優先を意図するボタンにフォーカスが存在すれば、予約領域におけるシームレスフラグを“0”に更新して(ステップＳ８２)、本フローチャートの処理を終了する。
【０２０３】
以上のように本実施形態によれば、AVClipの連続再生、つまり、途切れることなくAVClipを再生させることの要求と、AVClipの再生が途切れてもストリームの切替を優先したい要求とが要求される場合において、どちらを優先するかが、シームレスフラグに示されるので、それらの要求の調和を図ることができる。
【０２０４】
尚、本実施形態ではMainPath側のAVClipもSubPath側のテキスト字幕ストリーム及びフォントデータもともにBD-ROM上に記録されている場合を説明している。  SubPath側のストリームがMainPathのデータとは違う記録媒体上、たとえばハードディスクのように比較的アクセスが早い記録媒体に、テキスト字幕ストリームが記録されており、AVClipのデコーダバッファのアンダーフローが起きないのであれば、たとえシームレスフラグが有効であり、AVClipのシームレス再生を優先させる場合においても、プリロードされていないストリームへの切替を許可してもよい。
【０２０５】
また、SubPath側のストリームが光ディスク上にあったとしても、光ディスクのアクセススピードが十分速いため、AVClipのデコーダバッファのアンダーフローが起きないのであれば、たとえプリロードされていないストリームであっても切替を許可してもよい。
【０２０６】
更に、MainPath再生中のシークは、MainPathと同じBD-ROM上にSubPath情報を構成するテキスト字幕ストリームが記録されているため発生するから、SubPath側のストリームをハードディスクなどのアクセスが早い記録媒体上にコピーした上で、MainPathの再生を開始しても良い。こうすることにより、再生中によけいなシークが発生することを抑制できる。
【０２０７】
(第６実施形態)
第５実施形態では、AVClipのシームレス再生を優先するか、テキスト字幕ストリームの切り換えを優先するかを、PSRに示しておいたが、本実施形態は、STN_Tableに設ける実施形態である。本図におけるSTN_Tableは、Attribute−PIDの組みのうち、Attributeに、シームレスフラグが設けられている。図５６（ａ）は、第６実施形態におけるSTN_Tableの内部構成を示す図である。本図に示すように、本実施形態におけるSTN_Tableには、テキスト字幕ストリームに対応するentryと、attributeとの組みのうち、attributeにシームレスフラグが存在する。
【０２０８】
図５６（ｂ）は、STN_Tableに設けられたシームレスフラグの内容を示す。本図におけるシームレスフラグの意味内容は、図５０と同じである。AVClipのシームレス再生を優先するか、字幕切り換え可能な言語種の多さを優先するかの指定がSTN_Table内のシームレスフラグにより規定されるので、どちらを優先すべきかをオーサリング担当者が予め規定しておくことができる。この場合、シームレスフラグを付与すべき単位は、ディスク全体の属性であってもよいし、再生単位であるプレイリストの属性であってもよいし、ストリームの属性であってもよい。
【０２０９】
以上のように本実施形態によれば、通常の映画作品の場合、オーサーリング担当者はAVストリームの再生が途切れることを望んではいないため、STN_Tableに対する設定を通じて、その意向を、再生装置に伝えることができる。
【０２１０】
(第７実施形態)
テキスト字幕ストリームの場合は、テキスト字幕ストリーム自身のプリロードと、フォントデータのプリロードの２種類のプリロードが必要になる。
【０２１１】
プリロードされるデータとして２つのデータがそろわなければ、テキスト字幕ストリームは表示できない。そのため、STN_Tableにテキスト字幕ストリームが登録されていて、テキスト字幕ストリームがテキストコードバッファ１０に読み込まれていたとしても、フォントデータがフォントバッファ１１に読み込まれていなければ、表示することができないので、そのようなストリーム選択は禁止すべきである。
【０２１２】
ところが、フォントバッファのサイズがフォントセット1個分の容量である場合、ID=1のフォントデータのフォントデータしか読み込んでおくことができず、途中からID=2のフォントデータのフォントデータに切り替える必要がある場合には、フォントバッファにデータを読み込まなければいけない。この時、これまで述べたように、AVストリームが途切れずに再生することが要求されているならば、フォントデータの再読込は制限されるべきである。
【０２１３】
テキスト字幕ストリームの字幕表示には、フォントデータが必要であるが、このフォントデータのロードがAVClipの再生途上に発生した場合、ビデオストリームの再生が途切れることがある。
【０２１４】
図５７は、１本のテキスト字幕ストリームの途中において、使用するフォントが切り替わる例である。本図において時点までは、ID=1のフォントデータを用いて字幕を表示しているが、t1以降は、ID=2のフォントデータを用いて字幕を実現したとする。このID=2のフォントデータがバッファになければ、ローダ１３がAVClipの再生中に、フォントデータをロードする。このフォントデータをロードするためのディスクシークが発生するため、ビデオストリームの再生の途切れが生じる。
【０２１５】
ところで第２実施形態に示したように、テキスト字幕ストリーム内のスタイル情報には、フォントのIDあるいは名称と、どの時点でそのフォントが必要になるかが記録されている。しかしスタイル情報への記述のみでは、テキスト字幕ストリーム自体を解析しないとこれらフォントのIDを知ることができない。
【０２１６】
そこで本実施形態では、Clip情報に、必要なフォントデータのIDを記述しておく。必要なフォントのIDがClip情報に列挙されているので、テキスト字幕ストリームが格納されているファイルを解析せずに必要なフォントのIDを調べることができる。
【０２１７】
具体的にいうとBD-ROMを図５８のように構成している。図５８は、本実施形態における記録媒体の内部構成を示す図である。本図において0002〜0005.m2tsのファイルは、それぞれテキスト字幕ストリームを構成している。
【０２１８】
また本図のディレクトリにおいて、ファイル0002〜0005.clpiは、AVClip＃2〜＃5のそれぞれに対応する、Clip情報である。この各AVClip(テキスト字幕ストリーム)に対応するClip情報は、そのテキスト字幕ストリームの再生に必要となるフォントデータの識別子を記述している。例えば、Clip情報＃2のID=2のフォントデータ、ID=3のフォントデータは、このClip情報に対応するAVClipを再生するにあたってには、ID=2のフォントデータ、ID=3のフォントデータのフォントデータのプリロードが必要であることを示す。
【０２１９】
Clip情報＃3のID=1のフォントデータは、このClip情報に対応するAVClipを再生するにあたってには、ID=1のフォントデータのフォントデータのプリロードが必要であることを示す。
【０２２０】
このように再生に必要となる全てのフォントデータの識別子が、Clip情報に記述されているので、ローダ１３は、テキスト字幕ストリームをプリロードする際、Clip情報を参照することにより、そのテキスト字幕ストリームの再生に必要なフォントデータを、漏れなくバッファに読み込んでおくことができる。
【０２２１】
図５９は、実施形態におけるローダ１３によるロード処理を示す図である。ここで、BD-ROMにおけるFontディレクトリに複数のフォントデータが記録されており、各テキスト字幕ストリームに対応するClip情報に、ID=2のフォントデータ、ID=3のフォントデータ、ID=1のフォントデータの識別子が記述されているとすると、ローダ１３は、このディレクトリから、Clip情報に記述されている識別子に基づき、フォントデータをフォントバッファ１１にプリロードする。日本語のテキスト字幕ストリームの再生時において、再生の途中でフォントが切り換わる場合でも、その両方のフォントデータの識別子をClip情報に記述しておけば、これらを漏れなく、フォントバッファ１１にロードしておくことができる。
【０２２２】
ここで図５９のように、再生の途中でID=2のフォントデータのフォントデータが必要になる場合でも、Clip情報に、ID=2のフォントデータを記述しておけば、ローダ１３が、このID=2のフォントデータに対応するテキスト字幕ストリームをバッファにプリロードするので、AVClip再生の途上における途切れを防止することができる。
【０２２３】
尚、全てのフォントデータを再生装置組み込みのデータとして格納していてもよい。この場合、コード列さえあればいつでも文字を表示可能であるが、様々な言語の全てのフォントデータを再生装置組み込みとして実現するのは難しい。また、コンテンツ作成側にとっては、映画のイメージにあった独自のフォントで字幕などを表示したいため、フォントをあらかじめ組み込んでおくのはあまり効果的ではない。従って、フォントデータを再生装置に組み込むという考えは、フォントデータがなかった場合の例外対策程度のものとなる。
【０２２４】
(第８実施形態)
先の実施形態では、必要なフォントデータを、Clip情報に記述していたが、本実施形態では、ファイル管理情報を設け、これにフォントデータの識別子を記述しておくことにする。
【０２２５】
図６０（ａ）は、本実施形態における記録媒体のディレクトリ構造を示す。FONTディレクトリには、4つのフォントデータが存在しており、このFONTディレクトリには、ファイル管理情報と、フォントデータID=1〜ID=3とが存在する。図６０（ｂ）は、ファイル管理情報の内部構成を示す。ファイル管理情報は、フォントデータID=1〜ID=3のそれぞれのプリロードが、必須であるか、任意的であるかを示す。必須のフォントとはテキスト字幕ストリームを表示する際に必ず必要になるフォントであり、任意のフォントとはユーザーが表示やフォントを切り替える際に必要になるかもしれないフォントである。必須のフォントは必ずAVストリームの再生前にフォントバッファ１１に読み込んでおく必要がある。
【０２２６】
図６１は、ファイル管理情報に基づく、プリロードを示す図である。ファイル管理情報においてID=1のフォントデータ、ID=2のフォントデータのフォントデータのプリロードが必須と記述されているので、ローダ１３は、図６１に示すように、必須と記述されているフォントデータをバッファにロードしてゆく。そして、必須とされたフォントデータがバッファにロードされれば、バッファ上の残りの領域に、任意的と記述されたフォントデータをロードしてゆく。
【０２２７】
以上のように本実施形態によれば、プリロードが必須であるか、任意的であるかが、ファイル管理情報に記述されているので、このファイル管理情報を参照してプリロードを行えば、AVClip再生を途切れさせるような、フォントデータのロードが発生する確率を減少させることができる。
【０２２８】
尚、テキスト字幕ストリームを解析した結果、必要となるフォントデータが見つからない、あるいはプリロードされておらずシームレス再生が要求されているため読み込むことができない場合は、すでにテキストコードバッファ１０、フォントバッファ１１に読み込まれているフォントや再生装置組み込みのフォントで代用してもよい。
【０２２９】
(第９実施形態)
本実施形態は、ストリームあるいは管理情報を工夫することにより、プリロードされていないストリームを読みに行かなければならなくなるような状況を排除する方法について述べる。
【０２３０】
テキスト字幕ストリームには、字幕が存在しない空白期間が存在することがある。そしてPlayItem情報のうち、かかる空白期間を、IN点、Out_timeに指定するものは、対象となるテキスト字幕ストリームの一部が存在しないので、オーサリング担当者は、そのPlayItem情報のSTN_Tableにおけるテキスト字幕ストリームのPID登録を省くことがある。
【０２３１】
しかし、たとえ空白期間であるとはいえ、PlayItem情報におけるSTN_Tableの記載を省略すると、以下のような不都合が生じる。
図６２に示すように複数のPlayItemが連続して再生される状況を考える。PlayItem情報＃1とPlayItem情報＃2の境界ではシームレス再生が要求されているとする。Subpathに含まれていてプリロードされるべき日本語のテキスト字幕ストリームは、PlayItem情報＃1では空白期間になっているので、STN_Tableには登録されていない。しかしPlayItem情報＃2およびPlayItem情報＃3のSTN_tableでは登録されており、これらの区間では再生されるものとする。
【０２３２】
ローダ１３は、STN_Tableに基づき、プリロードを行う。ここでテキスト字幕ストリームのプリロードであるが、ローダ１３がプリロードを行うのは、PlayList情報のうち、先頭のPlayItem情報(PlayItem情報＃1)のSTN_Tableに記載されているテキスト字幕ストリームである。たとえ再生の途中に必要であっても、先頭のPlayItem情報のSTN_Tableに記述がないテキスト字幕ストリームについては、プリロードはなされない。図６３は、STN_Tableに基づくプリロードを示す図である。本図において日本語は、PlayItem情報＃2、PlayItem情報＃3のSTN_Tableに記述されているものの、PlayItem情報＃1には記述されていない。そのため、ローダ１３は、日本語のテキスト字幕ストリームをプリロードしないことも有り得る。
【０２３３】
PlayItem情報＃2の再生が開始される際に、PlayItem情報＃2のSTN_Tableには日本語のテキスト字幕ストリームが必要なことが判定できるが、PlayItem情報＃1とPlayItem情報＃2はシームレス再生が要求されているため、AVストリームの再生を中断することができず、データをテキストコードバッファ１０、フォントバッファ１１に読み込むことができない。そのため、本来表示されることが期待されている日本語のテキスト字幕ストリームが表示されなくなってしまう。  
【０２３４】
そこで、連続して再生されるPlayItemにおいては、全てのSTN_Tableでプリロードされているべきストリームを登録しておく。PlayItem情報＃1においては実際に日本語のテキスト字幕ストリームが表示されることはないが、STN_Tableに登録されているため、対象となる日本語のテキスト字幕ストリームはプリロードされる。PlayItem情報＃2において必要になったときにはすでにプリロードされている日本語のテキスト字幕ストリームを表示すればよい。図６４は、あるPlayItem情報のIn_time、Out_timeにより指定されるテキスト字幕ストリームの一部が空白期間であっても、そのPlayItem情報のSTN_Tableに、テキスト字幕ストリームのPIDを記述しておく例である。つまり空白期間にあたるPlayItem情報のSTN_Tableは、ダミーの値に設定しておくのである。こうすることにより、日本語がプリロードされ、AVClipの再生の途上で日本語を選択したとしても、AVClipの再生を途切れさせることなく、日本語への切り換えを実行することができる。
【０２３５】
(第１０実施形態)
本実施形態では、先の実施形態と同様、空白期間に関する。先の実施形態では、空白期間が先頭のPlayItem情報に存在するとしたが、途中に空白期間が存在する場合を本実施形態では想定している。PlayItem情報のIn_time、Out_timeで指定されている部分が空白期間であると、そのPlayItem情報のSTN_Tableに、PIDを記述しないことがある。
【０２３６】
図６５は、PlayItem情報＃1,＃3のSTN_TableにはPGストリームのPIDが記述されているが、PlayItem情報＃2において、PGストリームは空白期間になっていて、PlayItem情報＃2のSTN_Tableには、PGストリームのPIDが登録されていないケースを示す図である。
【０２３７】
この場合、PlayItem情報＃2のSTN_Tableに登録されているストリームはプリロードされるテキスト字幕ストリームのみになってしまい、図６６に示すように、必ずプリロードされるストリームが選ばれてしまう。
【０２３８】
ここでPlayItem情報＃1の再生時において、多重化されたPGストリームが選択されたため、PlayItem情報＃1再生中にテキストコードバッファ１０、フォントバッファ１１の内容が破壊されたとする。このような場合、すでにテキストコードバッファ１０、フォントバッファ１１から削除されているにもかかわらず、ローダ１３は、再び読み込みを行おうとする。
【０２３９】
更に、PlayItem情報＃1とPlayItem情報＃2の境界でシームレス再生が要求されていると、そのような読み込みを実行することができず、選択しているのに表示することができなくなる。
【０２４０】
このような状況を防ぐために、たとえPlayItem情報＃2において多重化されたストリームが存在しないとしても、図６７に示すように、ダミーとしてPGストリームのPIDをSTN_Tableに登録しておく。ダミーのPIDをSTN_Tableに登録しておくことで、空白期間においても、PGストリームが選択されることがあるが、たとえ選択されたとしても何も表示されないだけであって、ストリーム選択に問題はない(図６８)。また、必然的にプリロードされるストリームが選ばれるのを防ぐことができるため、シークが発生せず、再生が中断することをオーサリング段階で防ぐことが可能となる。
【０２４１】
(備考)
以上の説明は、本発明の全ての実施行為の形態を示している訳ではない。下記(A)(B)(C)(D)・・・・・の変更を施した実施行為の形態によっても、本発明の実施は可能となる。本願の請求項に係る各発明は、以上に記載した複数の実施形態及びそれらの変形形態を拡張した記載、ないし、一般化した記載としている。拡張ないし一般化の程度は、本発明の技術分野の、出願当時の技術水準の特性に基づく。
【０２４２】
(A)全ての実施形態では、再生の対象となる記録媒体をBD-ROMとして実施したが、本発明の記録媒体は、記録されるグラフィクスストリームに特徴があり、この特徴は、BD-ROMの物理的性質に依存するものではない。グラフィクスストリームを記録しうる記録媒体なら、どのような記録媒体であってもよい。例えば、DVD-ROM,DVD-RAM,DVD-RW,DVD-R,DVD+RW,DVD+R,CD-R,CD-RW等の光ディスク、PD,MO等の光磁気ディスクであってもよい。また、コンパクトフラッシュ（登録商標）カード、スマートメディア、メモリスティック、マルチメディアカード、PCM-CIAカード等の半導体メモリカードであってもよい。フレシキブルディスク、SuperDisk,Zip,Clik!等の磁気記録ディスク(i)、ORB,Jaz,SparQ,SyJet,EZFley,マイクロドライブ等のリムーバルハードディスクドライブ(ii)であってもよい。更に、機器内蔵型のハードディスクであってもよい。
【０２４３】
(B)全ての実施形態における再生装置は、BD-ROMに記録されたAVClipをデコードした上でTVに出力していたが、再生装置をBD-ROMドライブのみとし、これ以外の構成要素をTVに具備させてもい、この場合、再生装置と、TVとをIEEE1394で接続されたホームネットワークに組み入れることができる。また、実施形態における再生装置は、テレビと接続して利用されるタイプであったが、ディスプレィと一体型となった再生装置であってもよい。更に、各実施形態の再生装置において、処理の本質的部分をなすシステムLSI(集積回路)のみを、実施としてもよい。これらの再生装置及び集積回路は、何れも本願明細書に記載された発明であるから、これらの何れの態様であろうとも、第１実施形態に示した再生装置の内部構成を元に、再生装置を製造する行為は、本願の明細書に記載された発明の実施行為になる。第１実施形態に示した再生装置の有償・無償による譲渡(有償の場合は販売、無償の場合は贈与になる)、貸与、輸入する行為も、本発明の実施行為である。店頭展示、カタログ勧誘、パンフレット配布により、これらの譲渡や貸渡を、一般ユーザに申し出る行為も本再生装置の実施行為である。
【０２４４】
(C)各フローチャートに示したプログラムによる情報処理は、ハードウェア資源を用いて具体的に実現されていることから、上記フローチャートに処理手順を示したプログラムは、単体で発明として成立する。全ての実施形態は、再生装置に組み込まれた態様で、本発明に係るプログラムの実施行為についての実施形態を示したが、再生装置から分離して、第１実施形態に示したプログラム単体を実施してもよい。プログラム単体の実施行為には、これらのプログラムを生産する行為(1)や、有償・無償によりプログラムを譲渡する行為(2)、貸与する行為(3)、輸入する行為(4)、双方向の電子通信回線を介して公衆に提供する行為(5)、店頭、カタログ勧誘、パンフレット配布により、プログラムの譲渡や貸渡を、一般ユーザに申し出る行為(6)がある。(D)各フロ−チャ−トにおいて時系列に実行される各ステップの「時」の要素を、発明を特定するための必須の事項と考える。そうすると、これらのフロ−チャ−トによる処理手順は、再生方法の使用形態を開示していることがわかる。各ステップの処理を、時系列に行うことで、本発明の本来の目的を達成し、作用及び効果を奏するよう、これらのフロ−チャ−トの処理を行うのであれば、本発明に係る記録方法の実施行為に該当することはいうまでもない。
【０２４５】
(E)BD-ROMに記録するにあたって、AVClipを構成する各TSパケットには、拡張ヘッダを付与しておくことが望ましい。拡張ヘッダは、TP_extra_headerと呼ばれ、『Arribval_Time_Stamp』と、『copy_permission_indicator』とを含み4バイトのデータ長を有する。TP_extra_header付きTSパケット(以下EX付きTSパケットと略す)は、32個毎にグループ化されて、3つのセクタに書き込まれる。32個のEX付きTSパケットからなるグループは、6144バイト(=32×192)であり、これは3個のセクタサイズ6144バイト(=2048×3)と一致する。3個のセクタに収められた32個のEX付きTSパケットを"AlignedUnit"という。
【０２４６】
IEEE1394を介して接続されたホームネットワークでの利用時において、再生装置は、以下のような送信処理にてAligned Unitの送信を行う。つまり送り手側の機器は、AlignedUnitに含まれる32個のEX付きTSパケットのそれぞれからTP_extra_headerを取り外し、TSパケット本体をDTCP規格に基づき暗号化して出力する。TSパケットの出力にあたっては、TSパケット間の随所に、isochronousパケットを挿入する。この挿入箇所は、TP_extra_headerのArribval_Time_Stampに示される時刻に基づいた位置である。TSパケットの出力に伴い、再生装置はDTCP_Descriptorを出力する。DTCP_Descriptorは、TP_extra_headerにおけるコピー許否設定を示す。ここで「コピー禁止」を示すようDTCP_Descriptorを記述しておけば、IEEE1394を介して接続されたホームネットワークでの利用時においてTSパケットは、他の機器に記録されることはない。
【０２４７】
(F)各実施形態におけるデジタルストリームは、BD-ROM規格のAVClipであったが、DVD-Video規格、DVD-Video Recording規格のVOB(VideoObject)であってもよい。VOBは、ビデオストリーム、オーディオストリームを多重化することにより得られたISO/IEC13818-1規格準拠のプログラムストリームである。またAVClipにおけるビデオストリームは、MPEG4やWMV方式であってもよい。更にオーディオストリームは、Linear-PCM方式、MP3方式、MPEG-AAC方式であってもよい。
【０２４８】
(G)各実施形態における映画作品は、アナログ放送で放送されたアナログ映像信号をエンコードすることにより得られたものでもよい。デジタル放送で放送されたトランスポートストリームから構成されるストリームデータであってもよい。
【０２４９】
またビデオテープに記録されているアナログ／デジタルの映像信号をエンコードしてコンテンツを得ても良い。更にビデオカメラから直接取り込んだアナログ／デジタルの映像信号をエンコードしてコンテンツを得ても良い。他にも、配信サーバにより配信されるデジタル著作物でもよい。
【０２５０】
(H)ストリーム選択部１７は、操作受付部３から出力されたUser Operation情報、IGストリームにおけるボタンコマンドに基づき、PSRに設定すべき値(値X)を決定し、この値Xに基づき、PSRを更新する処理を行ってもよい。ここで操作受付部３から出力されたUserOperation情報が、音声切換キー、副映像切換キーの押下を示すものであるなら、PSRの数値に1を加えた値を値Xとして決定する。また操作受付部３から出力されたUserOperation情報が数値キーの押下を示すものなら、その押下された値を値Xとして決定する。一方、操作受付部３から出力されたボタンコマンドがPSRの設定を再生装置に命じるものなら、そのボタンコマンドの引数で指定された値を値Xとして決定する。このようにして値Xが決定されれば、値Xが有効な値(Valid)であるか、不定値であるかは、無効な値(Invalid)であるかを判定し、判定結果に応じたPSR更新処理を行う。ここで値Xが有効であるなら、値Xを用いてPSRを上書きする。値Xが不定値であるなら、最適な値を選んでPSRに設定する。値Xが無効な値であるなら、PSRの数値を維持する。
【０２５１】
(I)セットアップメニューを表示して、字幕の言語設定を受け付けるにあたって、設定のためのメニューに"おまかせボタン"なるボタンを設けてもよい。かかるボタンに対応するボタン情報は、PSR2に不定値を設定するボタンコマンドを有している。おまかせボタンの確定で、かかるボタンコマンドが実行されれば、PSR1、PSR2に不定値が設定され、Procedurewhen playback condition is changedが起動されて最適なオーディオストリーム、PG_textST_streamが選択されることになる。
【０２５２】
(J)第１実施形態において、満たすべき条件は(a)〜(b)の2つであったが、3つ以上であってもよい。
【産業上の利用可能性】
【０２５３】
本発明に係る再生装置は、上記実施形態に内部構成が開示されており、この内部構成に基づき量産することが可能なので、資質において工業上利用することができる。このことから本発明に係る再生装置は、産業上利用可能性を有する。
【図面の簡単な説明】
【０２５４】
【図１】本発明に係る再生装置の、使用行為についての形態を示す図である。
【図２】BD-ROMの内部構成を示す図である。
【図３】拡張子.m2tsが付与されたファイルがどのように構成されているかを模式的に示す図である。
【図４】プレイリスト情報のデータ構造を示す図である。
【図５】AVClipと、PLとの関係を示す図である。
【図６】Subpath情報の内部構成をクローズアップして示す図である。
【図７】SubPlayItem時間軸上の再生区間定義と、同期指定を示す図である。
【図８】（ａ）STN_tableの内部構成を示す図である。  （ｂ）PGストリームに対応したentry−attributeの組みを示す図である。  （ｃ）テキスト字幕ストリームに対応したentry−attributeの組みを示す図である。
【図９】第１実施形態で取り上げるAVClipの一例を示す図である。
【図１０】第１実施形態で取り上げる、PlayList情報の一例を示す図である。
【図１１】図１０に示したPlayList情報により規定されるデジタルストリームの束を示す図である。
【図１２】は、第１実施形態に係る再生装置の内部構成を示す図である。
【図１３】ローカルストレージに格納されたPlayList情報により、どのようなPlayList再生時間軸が定義されるかを示す図である。
【図１４】ビデオエンコーダのデコードによるデコード結果と、ストリーム選択部１７による選択結果とを、図１２の内部構成に書き加えた図である。
【図１５】PSR2、PSR17、PSR30、ＰＳＲ４８〜６１の詳細設定を示すである。
【図１６】PSR48〜61の内部構成を示す図である。
【図１７】PSR48〜61におけるDecode Capabilityフラグと、textST_language_codeとの対応を示す図である。
【図１８】PSR48〜61のうち、PSR53の内容を示す図である。
【図１９】textST_language_codeの意味内容を示す図である。
【図２０】第１実施形態におけるストリーム選択部１７の特徴部分を示す図である。
【図２１】PSR48〜61におけるPSR番号及びビット位置と、textST_language_codeとの対応関係を示す図である。
【図２２】Procedure when playback condition is changedの処理手順を示すフローチャートである。
【図２３】ストリーム変化時における設定手順を示すフローチャートである。
【図２４】PSR2の設定手順を示すフローチャートである。
【図２５】テキスト字幕ストリームのDecode Capabilityの有無を判定するにあたっての判定手順を示すフローチャートである。
【図２６】（ａ）〜（ｃ）テキスト字幕ストリーム選択の具体例を示す図である。
【図２７】（ａ）〜（ｃ）テキスト字幕ストリーム選択の具体例を示す図である。
【図２８】制御部による再生手順を示すフローチャートである。
【図２９】テキスト字幕ストリームの内部構成を示す図である。
【図３０】（ａ）スタイル情報,表示情報の設定例を示す図である。  （ｂ）（ａ）のテキスト字幕ストリームから表示される合成画像を示す図である。
【図３１】SubPlayItem＃yに基づく再生処理を示すフローチャートである。
【図３２】TextSTデコーダ１２の内部構成を示す図である。
【図３３】（ａ）日本語の言語特性によるレイアウトの違いについて説明した図である。  （ｂ）アラビア語の言語特性におけるレイアウトを示す。
【図３４】日本語、英語、アラビア語という3つの言語のDecode Capabilityを設定するにあたっての、判断基準を示す図である。
【図３５】（ａ）（ｂ）縦書き項目が完全にサポートされている日本語字幕と、縦書き項目のサポートが不完全な日本語字幕とを示す図である。
【図３６】第３実施形態に係る、再生装置の内部構成を示す図である。
【図３７】第３実施形態におけるPSR30のb23〜b16のビットアサインを示す図である。
【図３８】PSRの予約領域におけるビット構成を示す図である。
【図３９】（ａ）（ｂ）言語種の拡張をユーザが意図した際、表示されるメニューを示す図である。
【図４０】第３実施形態におけるテキスト字幕ストリームの判定手順を示すフローチャートである。
【図４１】各言語毎のDecode Capabilityの判定手順を示すフローチャートである。
【図４２】セットアップ部３２の処理手順を示すフローチャートである。
【図４３】（ａ）（ｂ）アンサポート言語の表示をユーザが希望していない場合と、希望した場合とで、Decode Capabilityの設定を対比して示す図である。
【図４４】第４実施形態に係るセットアップ部３２の処理手順を示すフローチャートである。
【図４５】ローダ１３によるバッファへのプリロードを示す図である。
【図４６】ストリーム選択部１７による非プリロードのテキスト字幕ストリームの選択を示す図である。
【図４７】AVClipの再生中において、非プリロードのテキスト字幕ストリームをユーザが選択した場合に、ローダ１３が実行するロード処理を模式的に示す図である。
【図４８】（ａ）AVClipの記録領域から、テキスト字幕ストリームの記録領域へのシーク、テキスト字幕ストリーム記録記録から、AVClip記録領域へのシークを示す図である。  （ｂ）デコーダへのAVClip供給が途絶えることによる、AVClipの再生の途切れを示す図である。
【図４９】第５実施形態に係る再生装置の内部構成を示す図である。
【図５０】PSRの予約領域に設けられたシームレスフラグの一例を示す図である。
【図５１】（ａ）AVClipに多重されているPGストリーム、プリロードされているテキスト字幕ストリーム、プリロードされていないテキスト字幕ストリームが、記述されたSTN_Tableを示す図である。  （ｂ）シームレスフラグがオンに設定されている場合の状態遷移を示す図である。  （ｃ）シームレスフラグがオンに設定されている場合の状態遷移を示す図である。
【図５２】（ａ）本実施形態において表示されるセットアップメニューを示す図である。  （ｂ）言語種の拡張をユーザが意図した際、表示されるメニューを示す図である。
【図５３】第５実施形態に係る、選択手順を示すフローチャートである。
【図５４】図５３のステップＳ６６の処理を詳細に示したフローチャートである。
【図５５】セットアップ部３２の処理手順を示すフローチャートである。
【図５６】（ａ）第６実施形態におけるSTN_Tableの内部構成を示す図である。  （ｂ）STN_Tableに設けられたシームレスフラグの内容を示す。
【図５７】フォントデータロードによる映像再生の途切れを示す図である。
【図５８】本実施形態における記録媒体の内部構成を示す図である。
【図５９】第６実施形態におけるローダ１３によるロード処理を示す図である。
【図６０】（ａ）第７実施形態における記録媒体のディレクトリ構造を示す。  （ｂ）ファイル管理情報の内部構成を示す。
【図６１】必須と記述されているフォントデータがバッファにロードされてゆく様子を示す図である。
【図６２】複数のPlayItemが連続して再生される状況を示す図である。
【図６３】STN_Tableに基づくプリロードを示す図である。
【図６４】第９実施形態に係るSTN_Tableの記述を示す図である。
【図６５】PlayItem情報＃1のSTN_TableにはPGストリームのPIDが記述されているが、PlayItem情報＃2において、PGストリームは空白期間になっていて、PlayItem情報＃2のSTN_TableにPGストリームのPIDが登録されていないケースを示す図である。
【図６６】STN_Tableに登録されているストリームはプリロードされるテキスト字幕ストリームのみになってしまい、プリロードされるテキスト字幕ストリームが選ばれてしまう状況を示す図である。
【図６７】PlayItem情報＃2のSTN_Tableに多重化されたPGストリームが登録されていないため、プリロードされるストリームが選ばれてしまう状況を示す図である。
【図６８】ダミーとしてPIDがSTN_Tableに登録されたデジタルストリームを選択した図である。
【符号の説明】
【０２５５】
１   BD-ROMドライブ
２    Local Storage
３     操作受付部
４    多重分離部
５    ビデオデコーダ
６    ビデオプレーン
７    PGデコーダ
８    PGプレーン
９    合成部
１０    テキストコードバッファ
１１    フォントバッファ
１２    TextSTデコーダ
１３    ローダ
１４    シナリオメモリ
１５    制御部
１６    PSRセット
１７    ストリーム選択部
１９    ビット割当テーブル
２０    Procedure実行部
２１    フォントレンダリング部
２２    展開バッファ
２３    コントローラ
３１    セルフテスト部
３２    セットアップ部
３３    プリロード管理テーブル
２００    再生装置
３００    リモコン
４００    テレビ
【図１】
2008251151.tif 000003
【図２】
2008251151.tif 000004
【図３】
2008251151.tif 000005
【図４】
2008251151.tif 000006
【図５】
2008251151.tif 000007
【図６】
2008251151.tif 000008
【図７】
2008251151.tif 000009
【図８】
2008251151.tif 000010
【図９】
2008251151.tif 000011
【図１０】
2008251151.tif 000012
【図１１】
2008251151.tif 000013
【図１２】
2008251151.tif 000014
【図１３】
2008251151.tif 000015
【図１４】
2008251151.tif 000016
【図１５】
2008251151.tif 000017
【図１６】
2008251151.tif 000018
【図１７】
2008251151.tif 000019
【図１８】
2008251151.tif 000020
【図１９】
2008251151.tif 000021
【図２０】
2008251151.tif 000022
【図２１】
2008251151.tif 000023
【図２２】
2008251151.tif 000024
【図２３】
2008251151.tif 000025
【図２４】
2008251151.tif 000026
【図２５】
2008251151.tif 000027
【図２６】
2008251151.tif 000028
【図２７】
2008251151.tif 000029
【図２８】
2008251151.tif 000030
【図２９】
2008251151.tif 000031
【図３０】
2008251151.tif 000032
【図３１】
2008251151.tif 000033
【図３２】
2008251151.tif 000034
【図３３】
2008251151.tif 000035
【図３４】
2008251151.tif 000036
【図３５】
2008251151.tif 000037
【図３６】
2008251151.tif 000038
【図３７】
2008251151.tif 000039
【図３８】
2008251151.tif 000040
【図３９】
2008251151.tif 000041
【図４０】
2008251151.tif 000042
【図４１】
2008251151.tif 000043
【図４２】
2008251151.tif 000044
【図４３】
2008251151.tif 000045
【図４４】
2008251151.tif 000046
【図４５】
2008251151.tif 000047
【図４６】
2008251151.tif 000048
【図４７】
2008251151.tif 000049
【図４８】
2008251151.tif 000050
【図４９】
2008251151.tif 000051
【図５０】
2008251151.tif 000052
【図５１】
2008251151.tif 000053
【図５２】
2008251151.tif 000054
【図５３】
2008251151.tif 000055
【図５４】
2008251151.tif 000056
【図５５】
2008251151.tif 000057
【図５６】
2008251151.tif 000058
【図５７】
2008251151.tif 000059
【図５８】
2008251151.tif 000060
【図５９】
2008251151.tif 000061
【図６０】
2008251151.tif 000062
【図６１】
2008251151.tif 000063
【図６２】
2008251151.tif 000064
【図６３】
2008251151.tif 000065
【図６４】
2008251151.tif 000066
【図６５】
2008251151.tif 000067
【図６６】
2008251151.tif 000068
【図６７】
2008251151.tif 000069
【図６８】
2008251151.tif 000070
【手続補正書】
【提出日】平成20年6月27日(2008.6.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
記録媒体に記録されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する再生装置であって、
フラグセットと、許可フラグとを格納するセッティングレジスタと、
記録媒体に記録されているテキスト字幕ストリームの中に、第１から第３までの全ての条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択手段とを備え、
前記複数の条件のうち第１の条件は、選択の対象となるテキスト字幕ストリームを構成するキャラクタコードをデコードして、キャラクタのビットマップに展開する能力が再生装置に存在することであり、
第２の条件は、選択の対象となるテキスト字幕ストリームの言語コードに対応する言語において、独特となる表示方法を実現できることであり、
第３の条件は、選択の対象となるテキスト字幕ストリームの言語コードと、再生装置の言語設定とが一致していることであり、
前記フラグセットは、複数の言語コードのそれぞれに対応するセッティングフラグから構成され、各セッティングフラグは、各言語コードに対応する言語のケーパビリティを再生装置が具備しているか否かという言語コード毎のセッティングを示し、
前記言語コード毎のケーパビリティは、キャラクタビットマップの配置、キャラクタビットマップの形状、キャラクタビットマップの間隔の何れかを変更することにより、各言語コードに対応する言語において独特となる表示方法を実現する能力を含み、
前記第２の条件を満たすかどうかの判断は、フラグセットにおける複数セッティングフラグのうち、選択の対象となるテキスト字幕ストリームの言語コードに対応するものがケーパビリティ具備を示しているか否かをチェックすることでなされ、
前記許可フラグは、第２の条件を満たさないテキスト字幕ストリームを選択することが許可されているか否かを示し、
前記選択手段は、セッティングレジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件及び第３の条件のみを満たすものを選択の対象とし、
前記記録媒体にはプレイリスト情報が記録されており、前記プレイリスト情報は、主たる再生区間情報と、従たる再生区間情報とを含み、
前記主たる再生区間情報は、テキスト字幕ストリームと同期再生すべきAVストリームの再生開始点、及び、再生終了点を示す情報であり、
従たる再生区間情報は、テキスト字幕ストリームの再生開始点、及び、テキスト字幕ストリームの再生終了点を示す情報と、AVストリームとの同期時点を示す同期情報とを含み、前記再生装置は、選択手段によって選択されたテキスト字幕ストリームのうち、従たる再生区間情報の再生開始点から再生終了点までを再生する
ことを特徴とする再生装置。
【請求項２】
記録媒体に記録されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する処理をコンピュータに実行させるプログラムであって、
コンピュータに、フラグセットと、許可フラグとを格納するセッティングレジスタを設けておき、
記録媒体に記録されているテキスト字幕ストリームの中に、第１から第３までの全ての条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択ステップをコンピュータに実行させ、
前記複数の条件のうち第１の条件は、選択の対象となるテキスト字幕ストリームを構成するキャラクタコードをデコードして、キャラクタのビットマップに展開する能力が再生装置に存在することであり、
第２の条件は、選択の対象となるテキスト字幕ストリームの言語コードに対応する言語において、独特となる表示方法を実現できることであり、
第３の条件は、選択の対象となるテキスト字幕ストリームの言語コードと、再生装置の言語設定とが一致していることであり、
前記フラグセットは、複数の言語コードのそれぞれに対応するセッティングフラグから構成され、各セッティングフラグは、各言語コードに対応する言語のケーパビリティをコンピュータが具備しているか否かという言語コード毎のセッティングを示し、
前記言語コード毎のケーパビリティは、キャラクタビットマップの配置、キャラクタビットマップの形状、キャラクタビットマップの間隔の何れかを変更することにより、各言語コードに対応する言語において独特となる表示方法を実現する能力を含み、
前記第２の条件を満たすかどうかの判断は、フラグセットにおける複数セッティングフラグのうち、選択の対象となるテキスト字幕ストリームの言語コードに対応するものがケーパビリティ具備を示しているか否かをチェックすることでなされ、
前記許可フラグは、第２の条件を満たさないテキスト字幕ストリームを選択することが許可されているか否かを示し、
前記選択ステップは、セッティングレジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件及び第３の条件のみを満たすものを選択の対象とし、
前記記録媒体にはプレイリスト情報が記録されており、前記プレイリスト情報は、主たる再生区間情報と、従たる再生区間情報とを含み、
前記主たる再生区間情報は、テキスト字幕ストリームと同期再生すべきAVストリームの再生開始点、及び、再生終了点を示す情報であり、
従たる再生区間情報は、テキスト字幕ストリームの再生開始点、及び、テキスト字幕ストリームの再生終了点を示す情報と、AVストリームとの同期時点を示す同期情報とを含み、選択ステップによって選択されたテキスト字幕ストリームのうち、従たる再生区間情報の再生開始点から再生終了点までをコンピュータに再生させる
ことを特徴とするプログラム。
【請求項３】
記録媒体に記録されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する処理をコンピュータ上で実行する再生方法であって、
コンピュータに、フラグセットと、許可フラグとを格納するセッティングレジスタを設けておき、
記録媒体に記録されているテキスト字幕ストリームの中に、第１から第３までの全ての条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択ステップをコンピュータに実行させ、
前記複数の条件のうち第１の条件は、選択の対象となるテキスト字幕ストリームを構成するキャラクタコードをデコードして、キャラクタのビットマップに展開する能力が再生装置に存在することであり、
第２の条件は、選択の対象となるテキスト字幕ストリームの言語コードに対応する言語において、独特となる表示方法を実現できることであり、
第３の条件は、選択の対象となるテキスト字幕ストリームの言語コードと、再生装置の言語設定とが一致していることであり、
前記フラグセットは、複数の言語コードのそれぞれに対応するセッティングフラグから構成され、各セッティングフラグは、各言語コードに対応する言語のケーパビリティをコンピュータが具備しているか否かという言語コード毎のセッティングを示し、
前記言語コード毎のケーパビリティは、キャラクタビットマップの配置、キャラクタビットマップの形状、キャラクタビットマップの間隔の何れかを変更することにより、各言語コードに対応する言語において独特となる表示方法を実現する能力を含み、
前記第２の条件を満たすかどうかの判断は、フラグセットにおける複数セッティングフラグのうち、選択の対象となるテキスト字幕ストリームの言語コードに対応するものがケーパビリティ具備を示しているか否かをチェックすることでなされ、
前記許可フラグは、第２の条件を満たさないテキスト字幕ストリームを選択することが許可されているか否かを示し、
前記選択ステップは、セッティングレジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件及び第３の条件のみを満たすものを選択の対象とし、
前記記録媒体にはプレイリスト情報が記録されており、前記プレイリスト情報は、主たる再生区間情報と、従たる再生区間情報とを含み、
前記主たる再生区間情報は、テキスト字幕ストリームと同期再生すべきAVストリームの再生開始点、及び、再生終了点を示す情報であり、
従たる再生区間情報は、テキスト字幕ストリームの再生開始点、及び、テキスト字幕ストリームの再生終了点を示す情報と、AVストリームとの同期時点を示す同期情報とを含み、選択ステップによって選択されたテキスト字幕ストリームのうち、従たる再生区間情報の再生開始点から再生終了点までを再生する
ことを特徴とする再生方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
上記目的を達成するため、本発明に係る再生装置は、記録媒体に記録されている複数テキスト字幕ストリームのそれぞれが、複数の条件のうち、どれを満たすかを判定して、満たすと判定された条件の組合せに応じてテキスト字幕ストリームを選択し再生する再生装置であって、フラグセットと、許可フラグとを格納するセッティングレジスタと、記録媒体に記録されているテキスト字幕ストリームの中に、第１から第３までの全ての条件を満たすものが存在するか否かを判定して、満たすと判定されたテキスト字幕ストリームのうち1つを選択する選択手段とを備え、前記複数の条件のうち第１の条件は、選択の対象となるテキスト字幕ストリームを構成するキャラクタコードをデコードして、キャラクタのビットマップに展開する能力が再生装置に存在することであり、第２の条件は、選択の対象となるテキスト字幕ストリームの言語コードに対応する言語において、独特となる表示方法を実現できることであり、第３の条件は、選択の対象となるテキスト字幕ストリームの言語コードと、再生装置の言語設定とが一致していることであり、前記フラグセットは、複数の言語コードのそれぞれに対応するセッティングフラグから構成され、各セッティングフラグは、各言語コードに対応する言語のケーパビリティを再生装置が具備しているか否かという言語コード毎のセッティングを示し、前記言語コード毎のケーパビリティは、キャラクタビットマップの配置、キャラクタビットマップの形状、キャラクタビットマップの間隔の何れかを変更することにより、各言語コードに対応する言語において独特となる表示方法を実現する能力を含み、
前記第２の条件を満たすかどうかの判断は、フラグセットにおける複数セッティングフラグのうち、選択の対象となるテキスト字幕ストリームの言語コードに対応するものがケーパビリティ具備を示しているか否かをチェックすることでなされ、
前記許可フラグは、第２の条件を満たさないテキスト字幕ストリームを選択することが許可されているか否かを示し、前記選択手段は、セッティングレジスタにおける許可フラグが許可を示している場合、記録媒体に記録されているテキスト字幕ストリームのうち、第１の条件及び第３の条件のみを満たすものを選択の対象とし、前記記録媒体にはプレイリスト情報が記録されており、前記プレイリスト情報は、主たる再生区間情報と、従たる再生区間情報とを含み、前記主たる再生区間情報は、テキスト字幕ストリームと同期再生すべきAVストリームの再生開始点、及び、再生終了点を示す情報であり、従たる再生区間情報は、テキスト字幕ストリームの再生開始点、及び、テキスト字幕ストリームの再生終了点を示す情報と、AVストリームとの同期時点を示す同期情報とを含み、前記再生装置は、選択手段によって選択されたテキスト字幕ストリームのうち、従たる再生区間情報の再生開始点から再生終了点までを再生することを特徴としている。