(57)【特許請求の範囲】
【請求項１】
メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類されている再生管理情報であって、前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは前記所定の種類に対して許可されたタイプの再生パスである、という第１の条件を少なくとも満たしている前記再生管理情報を取得する取得手段と、
前記取得手段により取得された前記再生管理情報に基づいて、再生するストリームの選択を、前記メインストリーム群と前記第１のサブストリーム群との第１の組み合わせ、または、前記メインストリーム群と前記第２のサブストリーム群との第２の組み合わせとして受け付ける受付手段と、
前記受付手段により前記第１の組み合わせが受け付けられた場合、前記メインストリーム群を前記主の再生パスを参照して読み出すとともに、前記第１のサブストリーム群を前記第１の副の再生パスを参照して読み出し、前記受付手段により前記第２の組み合わせが受け付けられた場合、前記メインストリーム群を前記主の再生パスを参照して読み出すとともに、前記第２のサブストリーム群を前記第２の副の再生パスを参照して読み出す読み出し手段と、
前記読み出し手段により読み出された前記メインストリーム群とともに、前記第１のサブストリーム群と前記第２のサブストリーム群とのうちの前記読み出し手段により読み出された方を再生する再生手段と
を備え、
前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、
前記読み出し手段が一度に読み出すことが可能な前記ファイルの読み出し個数が予め決められており、
前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、
前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、
前記再生管理情報は、前記第１の条件に加えてさらに、一度に読み出される前記ファイルの総数が前記読み出し個数以下となるように、１以上の前記副の再生パスを決定する、という第２の条件を満たしており、
１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、
前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしており、
前記読み出し手段は、前記取得手段により取得された前記再生管理情報で特定される１以上のストリームのそれぞれを、前記主の再生パスにより参照される前記第１のファイル、および、１以上の前記副の再生パスのそれぞれにより参照される前記第２のファイルのうちの、それぞれ対応するファイルからそれぞれ読み出す
再生装置。
【請求項２】
少なくとも１つのストリームを含むファイルの再生を管理する再生管理情報を含むデータが記録された記録媒体であって、
前記再生管理情報は、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、
前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは、前記所定の種類に対して許可されたタイプの再生パスであるという第１の条件を少なくとも満たしており、
前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスを決定する、という第２の条件を満たしており、
前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、
前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、
１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、
前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしている
データが記録された記録媒体。
【請求項３】
再生装置において再生可能なデータを記録媒体に記録する記録方法であって、
ファイルの再生を管理する再生管理情報が、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、
前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは、前記所定の種類に対して許可されたタイプの再生パスであるという第１の条件を少なくとも満たしており、
前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスを決定する、という第２の条件を満たしており、
前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、
前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、
１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、
前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの１以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしている
データ構造を有するデータを生成し、記録媒体に記録する
ステップを含む記録方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再生装置、記録媒体、及び記録方法に関し、特に、ストリームを再生する場合に用いて好適な、再生装置、記録媒体、及び記録方法に関する。
【背景技術】
【０００２】
DVD（Digital Versatile Disc）ビデオの規格においては、記録媒体に記録されている映画などのＡＶ（Audio Visual）コンテンツを再生する場合、ユーザに、音声切り替えや字幕切り替えというインタラクティブな操作を提供している（例えば、非特許文献１参照）。具体的には、図１の表示装置１に表示されているＡＶコンテンツに対して、ユーザは、リモートコントローラ２の音声切り替えボタン１１や字幕切り替えボタン１２を操作することで、音声の切り替えや字幕を切り替える。例えば、音声１が初期状態として設定されており、ユーザによりリモートコントローラ２の音声切り替えボタン１１が操作された場合、図２に示されるように、音声１が音声２に切り替えられる。
【０００３】
DVDビデオ上のＡＶコンテンツは、MPEG（Moving Picture Experts Group）２プログラムストリームの形式で記録されている。このMPEG２プログラムストリームには、図３に示されるように、ビデオストリーム（図３のビデオ）、複数のオーディオストリーム（図３のオーディオ１，２，３）、および複数のサブピクチャストリーム（図３のサブピクチャ１，２，３）が、ビデオストリームにＡＶ同期して再生されるように多重化されている。サブピクチャストリーム（サブピクチャ１，２，３）は、ビットマップ画像がランレングス符号化されたストリームであり、主に字幕用途に用いられる。
【０００４】
一般に、複数のオーディオストリームは、異なる言語の音声を記録するために用いられ、複数のサブピクチャストリームは、異なる言語の字幕を記録するために用いられる。ユーザは、ビデオが再生されている場合、インタラクティブに所望の言語の音声や字幕を、リモートコントローラ２を用いて選択することができる。
【０００５】
また、DVDビデオは、プログラムストリームの中の複数のオーディオストリーム（オーディオ１，２，３）と複数のサブピクチャストリーム（サブピクチャ１，２，３）に対して、ユーザに提供する音声番号と字幕番号の関係を表すテーブル構造を定義している。
【０００６】
図４は、ユーザに提供する音声信号と字幕信号の関係を表すストリームナンバーテーブルを説明する図である。ここでは、音声番号をＡ＿ＳＮ（Audio Stream Number）と称し、字幕番号をＳ＿ＳＮ（SubPicture Stream Number）と称する。図４においては、MPEG２プログラムストリームの複数のオーディオストリームのそれぞれにＡ＿ＳＮが与えられているとともに、MPEG２プログラムストリームの複数のサブピクチャストリームのそれぞれに、Ｓ＿ＳＮが与えられている。Ａ＿ＳＮ＝１：オーディオ２であり、Ａ＿ＳＮ＝２：オーディオ１であり、Ａ＿ＳＮ＝３：オーディオ３である。また、Ｓ＿ＳＮ＝１：サブピクチャ３であり、Ｓ＿ＳＮ＝２：サブピクチャ１であり、Ｓ＿ＳＮ＝３：サブピクチャ２である。ここでは、Ａ＿ＳＮやＳ＿ＳＮの番号が小さい程、ユーザに提供される音声信号として優先度が高い。すなわち、Ａ＿ＳＮ＝１はデフォルトで再生されるオーディオストリームであり、Ｓ＿ＳＮ＝１はデフォルトで再生されるサブピクチャストリームである。
【０００７】
具体的には、図１の初期状態で再生される音声１は、Ａ＿ＳＮ＝１であるオーディオ２（図４）に対応しており、音声が切り替えられた後、図２で再生される音声２は、Ａ＿ＳＮ＝２であるオーディオ１（図４）に対応している。
【非特許文献１】DVD Specifications for Read-Only Disc Part 3;Version1.1
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、DVDビデオでは、プログラムストリームのビデオを再生している場合に、ユーザによる音声切り替えや字幕切り替えという操作は、再生しているプログラムストリームに多重化されているオーディオストリームとサブピクチャストリームの中からしか、選ぶことができなかった。すなわち、図３に示されるようなMPEG２プログラムストリームを再生している場合に、音声の切り替えを行う場合、選択肢はオーディオ１乃至３のいずれか１つとなる。
【０００９】
そのため、再生しているプログラムストリームとは別の他のストリームでオーディオストリームと字幕を用意した場合、ユーザは、音声の切り替えの操作が、他のストリームから選択することができないため、拡張性がないという問題があった。
【００１０】
さらに、将来的には、切り替え対象のコンテンツとして、音声のみならず映像等、様々な種類のコンテンツが対象となることが想定されている。従って、将来的には、これらの様々な種類のコンテンツの切り替えの操作が、他のストリームから選択することができないため、拡張性がないという問題にまで発展してしまうことになる。
【００１１】
本発明は、このような状況に鑑みてなされたものであり、メインのＡＶストリームとともに再生するために、メインのＡＶストリームとは異なる他のストリームやデータファイルに含まれる音声や映像等を選択することができるようなコンテンツのデータ構成が複雑なものとならないようにし、また、そのようなコンテンツを再生することができるようにするものである。
【課題を解決するための手段】
【００１２】
本発明の第１の側面の再生装置は、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類されている再生管理情報であって、前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは前記所定の種類に対して許可されたタイプの再生パスである、という第１の条件を少なくとも満たしている前記再生管理情報を取得する取得手段と、前記取得手段により取得された前記再生管理情報に基づいて、再生するストリームの選択を、前記メインストリーム群と前記第１のサブストリーム群との第１の組み合わせ、または、前記メインストリーム群と前記第２のサブストリーム群との第２の組み合わせとして受け付ける受付手段と、前記受付手段により前記第１の組み合わせが受け付けられた場合、前記メインストリーム群を前記主の再生パスを参照して読み出すとともに、前記第１のサブストリーム群を前記第１の副の再生パスを参照して読み出し、前記受付手段により前記第２の組み合わせが受け付けられた場合、前記メインストリーム群を前記主の再生パスを参照して読み出すとともに、前記第２のサブストリーム群を前記第２の副の再生パスを参照して読み出す読み出し手段と、前記読み出し手段により読み出された前記メインストリーム群とともに、前記第１のサブストリーム群と前記第２のサブストリーム群とのうちの前記読み出し手段により読み出された方を再生する再生手段とを備え、前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、前記読み出し手段が一度に読み出すことが可能な前記ファイルの読み出し個数が予め決められており、前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、前記再生管理情報は、前記第１の条件に加えてさらに、一度に読み出される前記ファイルの総数が前記読み出し個数以下となるように、１以上の前記副の再生パスを決定する、という第２の条件を満たしており、１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしており、前記読み出し手段は、前記取得手段により取得された前記再生管理情報で特定される１以上のストリームのそれぞれを、前記主の再生パスにより参照��れる前記第１のファイル、および、１以上の前記副の再生パスのそれぞれにより参照される前記第２のファイルのうちの、それぞれ対応するファイルからそれぞれ読み出す。
【００１８】
本発明の第１の側面の再生装置は、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類されている再生管理情報であって、第１の副の再生パスと第２の副の再生パスのそれぞれは所定の種類に対して許可されたタイプの再生パスである、という第１の条件を少なくとも満たしている再生管理情報が取得され、取得された再生管理情報に基づいて、再生するストリームの選択が、メインストリーム群と第１のサブストリーム群との第１の組み合わせ、または、メインストリーム群と第２のサブストリーム群との第２の組み合わせとして受け付けられ、第１の組み合わせが受け付けられた場合、メインストリーム群が、主の再生パスを参照して読み出されるとともに、第１のサブストリーム群が、第１の副の再生パスを参照して読み出され、第２の組み合わせが受け付けられた場合、メインストリーム群が、主の再生パスを参照して読み出されるとともに、第２のサブストリーム群が、第２の副の再生パスを参照して読み出され、読み出されたメインストリーム群とともに、第１のサブストリーム群と第２のサブストリーム群とのうちの読み出された方が再生され、メインストリーム群、第１のサブストリーム群、および、第２のサブストリーム群は、いずれかのファイルに含まれており、一度に読み出すことが可能なファイルの読み出し個数が予め決められており、主の再生パスは、第１のファイルに含まれるメインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、副の再生パスは、１以上の第２のファイルに含まれる第１のサブストリーム群または第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、再生管理情報は、第１の条件に加えてさらに、一度に読み出されるファイルの総数が読み出し個数以下となるように、１以上の副の再生パスを決定する、という第２の条件を満たしており、１以上の副の再生パスのそれぞれのタイプの中に、参照される第２のファイルが第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、第１の条件と第２の条件とに加えてさらに、別読み出しタイプの1以上の副の再生パスのそれぞれで参照される第２のファイルは、第２の条件における総数をカウントする対象に含めない、という第３の条件を満たしており、取得された再生管理情報で特定される１以上のストリームのそれぞれが、主の再生パスにより参照される第１のファイル、および、１以上の副の再生パスのそれぞれにより参照される第２のファイルのうちの、それぞれ対応するファイルからそれぞれ読み出される。
【００２６】
本発明の第２の側面の記録媒体は、少なくとも１つのストリームを含むファイルの再生を管理する再生管理情報を含むデータが記録された記録媒体であって、前記再生管理情報は、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは前記所定の種類に対して許可されたタイプの再生パスであるという第１の条件を少なくとも満たしており、前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスを決定する、という第２の条件を満たしており、前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしている。
【００２７】
本発明の第２の側面の記録媒体においては、再生管理情報が、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、第１の副の再生パスと第２の副の再生パスのそれぞれは所定の種類に対して許可されたタイプの再生パスであるという第１の条件を少なくとも満たしており、前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスが決定される、という第２の条件を満たしており、前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしているデータが記録される。
【００２８】
本発明の第３の側面の記録方法は、再生装置において再生可能なデータを記録媒体に記録する記録方法であって、ファイルの再生を管理する再生管理情報が、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは前記所定の種類に対して許可されたタイプの再生パスであるという第１の条件を少なくとも満たしており、前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスを決定する、という第２の条件を満たしており、前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしているデータ構造を有するデータを生成し、記録媒体に記録する。
【００２９】
本発明の第３の側面の記録方法においては、ファイルの再生を管理する再生管理情報が、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、第１の副の再生パスと第２の副の再生パスのそれぞれは所定の種類に対して許可されたタイプの再生パスであるという第１の条件を少なくとも満たしており、前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイルに含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスを決定する、という第２の条件を満たしており、前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリームの時間軸上の位置を示し、前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリームのそれぞれの時間軸上の位置を示し、１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプが１以上含まれる場合、前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしているデータ構造を有するデータが生成され、記録媒体に記録される。
【発明の効果】
【００３０】
本発明によれば、メインのＡＶストリームとは異なる他のストリームやデータファイルで音声や映像等を用意することができるようになる。特に、その場合に、コンテンツのデータ構造が複雑にならないようにすることができ、また、そのようなコンテンツを再生することができるようになる。
【００３１】
また、他の本発明によれば、メインのＡＶストリームとは異なる他のストリームやデータファイルで音声や映像等の各種類を用意した場合に、コンテンツのデータ構造が複雑にならないようにすることができる。
【図面の簡単な説明】
【００３２】
【図１】従来の音声切り替えを説明する図である。
【図２】従来の音声切り替えを説明する図である。
【図３】MPEG２プログラムストリームの構成を説明する図である。
【図４】ユーザに提供する音声信号と字幕信号の関係を表すストリームナンバーテーブルを説明する図である。
【図５】本発明を適用した再生装置に装着される記録媒体上のアプリケーションフォーマットの例を示す図である。
【図６】メインパスとサブパスの構造を説明する図である。
【図７】メインパスとサブパスの例を説明する図である。
【図８】メインパスとサブパスの別の例を説明する図である。
【図９】PlayList()のシンタクスを示す図である。
【図１０】SubPath()のシンタクスを示す図である。
【図１１】SubPath_typeを説明する図である。
【図１２】SubPlayItem(i)のシンタクスを示す図である。
【図１３】PlayItem()のシンタクスを示す図である。
【図１４】STN_table()のシンタクスを示す図である。
【図１５】stream_entry()のシンタクスを示す図である。
【図１６】stream_attribute()のシンタクスを示す図である。
【図１７】stream_cording_typeを説明する図である。
【図１８】video_formatを説明する図である。
【図１９】frame_rateを説明する図である。
【図２０】aspect_ratioを説明する図である。
【図２１】audio_presentation_typeを説明する図である。
【図２２】sampling_frequencyを説明する図である。
【図２３】Character codeを説明する図である。
【図２４】ユーザに提供する音声信号と字幕信号の関係を表すストリームナンバーテーブルの例を説明する図である。
【図２５】本発明を適用した再生装置の構成例を示すブロック図である。
【図２６】図２５の再生装置における再生処理を説明するフローチャートである。
【図２７】図２５の再生装置における再生処理を説明するフローチャートである。
【図２８】図２５の再生装置における再生処理を説明するフローチャートである。
【図２９】ユーザによりオーディオストリーム＃１に対する音声の切り替えが指示される場合の処理を説明するフローチャートである。
【図３０】ユーザによりオーディオストリーム＃２に対する音声の切り替えが指示される場合の処理を説明するフローチャートである。
【図３１】図２９のステップＳ６０の詳細な処理の例を説明するフローチャートである。
【図３２】２つのオーディオをミキシング再生する例を説明する図である。
【図３３】オーディオストリーム＃１とオーディオストリーム＃２の組み合わせを定義するSTN_table()のシンタクスの例を示す図である。
【図３４】Combination_of_Primary_and_Secondaryのビットマップシンタクスの例を示す図である。
【図３５】ユーザに提供する音声信号と字幕信号の関係を表すストリームナンバーテーブルの他の例を説明する図である。
【図３６】２つのオーディオをミキシング再生する他の例を説明する図である。
【図３７】オーディオストリーム＃１とオーディオストリーム＃２の組み合わせを定義するSTN_table()のシンタクスの他の例を示す図である。
【図３８】オーディオストリーム＃１とオーディオストリーム＃２の組み合わせを定義するSTN_table()のシンタクスのさらに他の例を示す図である。
【図３９】ピクチャインピクチャ手法を説明する図である。
【図４０】プライマリビデオストリームと組み合わせて同時再生される、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせを定義する場合のSTN_table()のシンタクスの例を示す図である。
【図４１】プライマリビデオストリームと組み合わせて同時再生される、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせを定義する場合のSTN_table()のシンタクスの例を示す図である。
【図４２】ユーザに提供する音声信号、セカンダリビデオストリームとしての映像信号、および、字幕信号の組み合わせ可能な関係を表すストリームナンバーテーブルの例を示す図である。
【図４３】プライマリビデオストリームと組み合わせて同時再生される、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせを選択するためのユーザの選択操作を説明する図である。
【図４４】ピクチャインピクチャ手法を実現させる場合に、図１１の例のSubPath_typeを利用して生成されたPlayListの例を示している。
【図４５】SubPath_typeの図１１とは異なる例を説明する図である。
【図４６】stream_entry()のシンタクスの第２の例を示す図である。
【図４７】ピクチャインピクチャ手法を実現させる場合に、図４５の例のSubPath_typeを利用して生成されたPlayListの例を示している。
【図４８】ピクチャインピクチャ手法を実現させる場合に、図４５の例のSubPath_typeを利用して生成されたPlayListの他の例を示している。
【図４９】本発明を適用した再生装置の構成例であって、図２５とは異なる例を示すブロック図である。
【図５０】図４９の再生装置におけるセカンダリビデオ切り替え処理を説明するフローチャートである。
【図５１】図４９の再生装置におけるセカンダリビデオ切り替え処理を説明するフローチャートである。
【図５２】application_typeの種類の例を説明する図である。
【図５３】サブパス制限手法を説明するための図であって、PlayListの種類に対する、そのPlayListが持ち得るSubPathの組み合わせの関係を示す図である。
【図５４】サブパス制限手法を説明するための図であって、PlayList内にあるPlayItemとSubPathの数の組み合わせの関係を示す図である。
【図５５】図５３乃至図５５により説明されるサブパス制限手法によって、作成されたPlayListの具体例を示す図である。
【図５６】図５３乃至図５５により説明されるサブパス制限手法によって、作成されたPlayListの具体例を示す図である。
【図５７】図５３乃至図５５により説明されるサブパス制限手法によって、作成されたPlayListの具体例を示す図である。
【図５８】図５３乃至図５５により説明されるサブパス制限手法によって、作成されたPlayListの具体例を示す図である。
【図５９】図４９の再生装置におけるapplication_type=3のPlayList再生処理を説明するフローチャートである。
【図６０】図４９の再生装置におけるapplication_type=3のPlayList再生処理を説明するフローチャートである。
【図６１】図４９の再生装置におけるapplication_type=1or2のPlayList再生処理を説明するフローチャートである。
【図６２】図４９の再生装置におけるapplication_type=1or2のPlayList再生処理を説明するフローチャートである。
【図６３】図４９の再生装置におけるapplication_type=1or2のPlayList再生処理を説明するフローチャートである。
【図６４】図４９の再生装置におけるapplication_type=1or2のPlayList再生処理を説明するフローチャートである。
【図６５】再生装置で再生可能なデータを記録した記録媒体の製造について説明するための図である。
【図６６】再生装置で再生可能なデータを記録した記録媒体の製造について説明するための図である。
【図６７】パーソナルコンピュータの構成を示す図である。
【発明を実施するための形態】
【００３３】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が、本明細書に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００３４】
更に、この記載は、本明細書に記載されている発明の全てを意味するものでもない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
【００３５】
本発明の第１の側面の再生装置（図４９の再生装置４０１）は、
メインストリーム群（例えば図５８のClip- AV Stream 0のVideoやAudio等）の時間軸上の位置を示す主の再生パス（例えば、図５８のMain path:メインパス）、前記第１のサブストリーム群（例えば、2ndVideoや2ndAudio等）の時間軸上の位置を示す第１の副の再生パス（例えば、図５８のSub path-1:サブパス-1）、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群（例えばAudio等）の時間軸上の位置を示す第２の副の再生パス（例えば、図５８のClip AV Stream -1を参照するSub path-2:サブパス-2や、Clip AV Stream -2を参照するSub path-3:サブパス-3）を含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類（例えば図５３のapplication_type (of Main TS）の項目で分けられている種類のうちの、Movie Type/Time-based Slideshowと記述された種類。即ち、後述する同期型の種類）に分類されている再生管理情報（例えば図５８のPlayList）であって、前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは前記所定の種類に対して許可されたタイプ（例えば図５３の例の場合、SubPath_type=5,6,7のうちのいずれかである。ただし、ここでいうSubPath_typeは図４５の例に従っている）の再生パスである、という第１の条件を少なくとも満たしている前記再生管理情報を取得する取得手段（例えば図６１乃至図６４のapplication_type=1or2のPlayListの再生処理を実行するために、図２６のステップＳ１１等の処理を実行する図４９のコントローラ３４）と、
前記取得手段により取得された前記再生管理情報に基づいて、再生するストリームの選択を、前記メインストリーム群と前記第１のサブストリーム群との第１の組み合わせ、または、前記メインストリーム群と前記第２のサブストリーム群との第２の組み合わせとして受け付ける受付手段（例えば、図６４のステップＳ１６３ＹＥＳ，Ｓ１６４乃至Ｓ１６９等の処理を実行する図４９のコントローラ３４）と、
前記受付手段により前記第１の組み合わせが受け付けられた場合、前記メインストリーム群を前記主の再生パスを参照して読み出すとともに、前記第１のサブストリーム群を前記第１の副の再生パスを参照して読み出し、前記受付手段により前記第２の組み合わせが受け付けられた場合、前記メインストリーム群を前記主の再生パスを参照して読み出すとともに、前記第２のサブストリーム群を前記第２の副の再生パスを参照して読み出す読み出し手段（例えば、図５８の例のPlayListの再生の場合には、図６２のステップＳ１５１、図６３のステップＳ１５５、図６４のステップＳ１６１とＳ１６２等の処理を実行する前に、図５１のステップＳ１０８等と等価の処理を実行する図４９のコントローラ３４）と、
前記読み出し手段により読み出された前記メインストリーム群とともに、前記第１のサブストリーム群と前記第２のサブストリーム群とのうちの前記読み出し手段により読み出された方を再生する（例えば、図５８の例のPlayListの再生の場合には、図６２のステップＳ１５１、図６３のステップＳ１５５、図６４のステップＳ１６１とＳ１６２等の処理を実行する図４９のAVデコーダ部３３）と
を備え、
前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイル（いずれかのClip）に含まれており、
前記読み出し手段が一度に読み出すことが可能なファイルの読み出し個数が予め決められており、
前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリーム（例えば、図５５乃至図５８の例ではClip AV Stream-0）の時間軸上の位置を示し、
前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリーム（例えば、図５５乃至図５８の例ではClip AV Stream -1，2，3）のそれぞれの時間軸上の位置を示し、
前記第１の条件に加えてさらに、一度に読み出される前記ファイルの総数が前記読み出し個数以下となるように、１以上の前記副の再生パスを決定する、という第２の条件（例えば図５３のnumber of SubPathsの項目と、図５４の表とで示される条件）を前記再生管理情報は満たしており、
１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプ（例えば図４５のSubpath_type3、即ち、IGをプリロードしておくタイプ）が１以上含まれる場合、
前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしており、
前記読み出し手段は、前記取得手段により取得された前記再生管理情報で特定される１以上のストリームのそれぞれを、前記主の再生パスにより参照される前記第１のファイル、および、１以上の前記副の再生パスのそれぞれにより参照される前記第２のファイルのうちの、それぞれ対応するファイルからそれぞれ読み出す。
【００４６】
本発明の第２の側面の記録媒体は、再生管理情報が、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは前記所定の種類に対して許可されたタイプ（例えば図５３の例の場合、SubPath_type=5,6,7のうちのいずれかである。ただし、ここでいうSubPath_typeは図４５の例に従っている）の再生パスであるという第１の条件を少なくとも満たしており、前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイル（いずれかのClip）に含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスを決定する、という第２の条件を満たしており、前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリーム（例えば、図５５乃至図５８の例ではClip AV Stream-0）の時間軸上の位置を示し、前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリーム（例えば、図５５乃至図５８の例ではClip AV Stream -1，2，3）のそれぞれの時間軸上の位置を示し、１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプ（例えば図４５のSubpath_type3、即ち、IGをプリロードしておくタイプ）が１以上含まれる場合、前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしている。
【００４７】
本発明の第３の側面の記録方法は、ファイルの再生を管理する再生管理情報が、メインストリーム群の時間軸上の位置を示す主の再生パス、第１のサブストリーム群の時間軸上の位置を示す第１の副の再生パス、および、前記第１のサブストリーム群とは異なる第２のサブストリーム群の時間軸上の位置を示す第２の副の再生パスを含み、前記メインストリーム群の種類に応じて予め定義されている複数の種類のうちの所定の種類に分類され、前記第１の副の再生パスと前記第２の副の再生パスのそれぞれは前記所定の種類に対して許可されたタイプ（例えば図５３の例の場合、SubPath_type=5,6,7のうちのいずれかである。ただし、ここでいうSubPath_typeは図４５の例に従っている）の再生パスであるという第１の条件を少なくとも満たしており、前記メインストリーム群、前記第１のサブストリーム群、および、前記第２のサブストリーム群は、いずれかのファイル（いずれかのClip）に含まれており、一度に読み出される前記ファイルの総数が、再生装置において予め決められた、一度に読み出すことが可能な読み出し個数以下となるように、前記第１の副の再生パスおよび前記第２の副の再生パスを決定する、という第２の条件を満たしており、前記主の再生パスは、第１のファイルに含まれる前記メインストリーム群のうちの少なくとも１つのストリーム（例えば、図５５乃至図５８の例ではClip AV Stream-0）の時間軸上の位置を示し、前記副の再生パスは、１以上の第２のファイルに含まれる前記第１のサブストリーム群または前記第２のサブストリーム群のうちの少なくとも１つのストリーム（例えば、図５５乃至図５８の例ではClip AV Stream -1，2，3）のそれぞれの時間軸上の位置を示し、１以上の前記副の再生パスのそれぞれのタイプの中に、参照される前記第２のファイルが前記第１のファイルの読み出しタイミングとは別のタイミングで読み出されることが規定されている、という別読み出しタイプ（例えば図４５のSubpath_type3、即ち、IGをプリロードしておくタイプ）が１以上含まれる場合、前記第１の条件と前記第２の条件とに加えてさらに、前記別読み出しタイプの1以上の前記副の再生パスのそれぞれで参照される前記第２のファイルは、前記第２の条件における前記総数をカウントする対象に含めない、という第３の条件を満たしているデータ構造を有するデータを生成し、記録媒体に記録するステップを含む。
【００４８】
以下、図を参照して、本発明の実施の形態について説明する。
【００４９】
図５は、本発明を適用した再生装置、例えば図２５を参照して後述する再生装置２０や図４９を参照して後述する再生装置４０１等に装着される記録媒体上のアプリケーションフォーマットの例を示す図である。記録媒体は、後述する光ディスクの他、磁気ディスクや半導体メモリであってもよい。
【００５０】
アプリケーションフォーマットは、ＡＶ（Audio Visual）ストリームの管理のために、PlayListとClipの２つのレイヤを有している。ここでは、１つのＡＶストリームとそれに付随する情報であるClipインフォメーションのペアを１つのオブジェクトと考え、それらをまとめてClipと称する。以下、ＡＶストリームをＡＶストリームファイルとも称する。なお、AVストリームファイルには、音声データや映像データ以外にも、これらのデータとともに再生される各種のストリームファイルが含まれていてもよい。また、ClipインフォメーションをClipインフォメーションファイルとも称する。
【００５１】
一般的に、コンピュータ等で用いられるファイルはバイト列として扱われるが、ＡＶストリームファイルのコンテンツは時間軸上に展開され、Clipのアクセスポイントは、主に、タイムスタンプでPlayListにより指定される。すなわち、PlayListとClipは、ＡＶストリームの管理のためのレイヤである。
【００５２】
Clip中のアクセスポイントがタイムスタンプでPlayListにより示されている場合、Clip Informationファイルは、タイムスタンプから、ＡＶストリームファイル中のデコードを開始すべきアドレス情報を見つけるために使用される。
【００５３】
PlayListは、ＡＶストリームの再生区間の集まりである。あるＡＶストリーム中の１つの再生区間はPlayItemと呼ばれ、それは、時間軸上の再生区間のＩＮ点（再生開始点）とOUT点（再生終了点）のペアで表される。従って、PlayListは、図５に示されるように１つ、または複数のPlayItemにより構成される。
【００５４】
図５において、左から１番目のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側のClipに含まれるＡＶストリームの前半部分と後半部分がそれぞれ参照されている。また、左から２番目のPlayListは１つのPlayItemから構成され、それにより、右側のClipに含まれるＡＶストリーム全体が参照されている。さらに、左から３番目のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側のClipに含まれるＡＶストリームのある部分と、右側のClipに含まれるＡＶストリームのある部分がそれぞれ参照されている。
【００５５】
例えば、図５のディスクナビゲーションプログラムにより、そのときの再生位置を表す情報として、左から１番目のPlayListに含まれる左側のPlayItemが指定された場合、そのPlayItemが参照する、左側のClipに含まれるＡＶストリームの前半部分の再生が行われる。このように、PlayListは、ＡＶストリームファイルの再生を管理するための再生管理情報として用いられる。
【００５６】
ディスクナビゲーションプログラムは、PlayListの再生の順序や、PlayListのインタラクティブな再生をコントロールする機能を有する。また、ディスクナビゲーションプログラムは、各種の再生の実行をユーザが指示するためのメニュー画面を表示する機能なども有する。このディスクナビゲーションプログラムは、例えば、Java（登録商標）などのプログラミング言語で記述され、記録媒体上に用意される。
【００５７】
本実施の形態では、PlayListの中で、１つ以上のPlayItemの並びによって（連続するPlayItemにより）作られる再生パスをメインパス(Main Path)と称し、PlayListの中で、Main Pathに並行（並列）して、１つ以上のSub Pathの並びによって（非連続でもよいし、連続してもよいSubPlayItemにより）作られる再生パスをサブパス（Sub Path）と称する。すなわち、再生装置２０（図２５を参照して後述する）や再生装置４０１（図４９を参照して後述する）に装着される記録媒体上のアプリケーションフォーマットは、メインパスに関連付けられて（合わせて）再生されるサブパス(Sub Path)をPlayListの中に持つ。
【００５８】
図６は、メインパスとサブパスの構造を説明する図である。PlayListは、１つのメインパスと１つ以上のサブパスを持つことができる。１つのメインパスは、１つ以上のPlayItemの並びによって作られ、１つのサブパスは、１つ以上のSubPlayItemの並びによって作られる。
【００５９】
図６の例の場合、PlayListは、３つのPlayItemの並びにより作られる１つのメインパスと、３つのサブパスを有している。メインパスを構成するPlayItemには、先頭から順番にそれぞれＩＤ（Identification）が付されている。具体的には、メインパスは、PlayItem_id＝０、PlayItem_id＝１、およびPlayItem_id＝２のPlayItemからなる。また、サブパスにも先頭から順番にSubpath_id＝０、Subpath_id＝１、およびSubpath_id＝２、とそれぞれＩＤが付されている。Subpath_id＝０のサブパスには、１つのSubPlayItemが含まれ、Subpath_id＝１のサブパスには、２つのSubPlayItemが含まれ、Subpath_id＝２のサブパスには、１つのSubPlayItemが含まれる。
【００６０】
Subpath_id＝０のサブパスに含まれるSubPlayItemが参照するストリームは、例えば、映画の日本語吹き替えの音声と想定され、Mainpathにより参照されるＡＶストリームファイルのオーディオストリームに替えて再生される場合が考えられる。また、Subpath_id＝１のサブパスに含まれるSubPlayItemが参照するストリームは、例えば、映画のディレクターズカットと想定され、Main Pathにより参照されるＡＶストリームファイルの所定の部分にのみ、映画監督などのコメントが入っている場合が考えられる。
【００６１】
１つのPlayItemが参照するClip ＡＶストリームファイルには、少なくともビデオストリームデータ（メイン画像データ）が含まれる。また、Clip ＡＶストリームファイルには、Clip ＡＶストリームファイルに含まれるビデオストリーム（メイン画像データ）と同じタイミングで（同期して）再生されるオーディオストリームが１つ以上含まれてもよいし、含まれなくてもよい。さらに、Clip ＡＶストリームファイルには、Clip ＡＶストリームファイルに含まれるビデオストリームと同じタイミングで再生されるビットマップ字幕ストリームが１つ以上含まれてもよいし、含まれなくてもよい。また、Clip ＡＶストリームファイルには、Clip ＡＶストリームファイルに含まれるビデオストリームと同じタイミングで再生されるインタラクティブグラフィックスストリームが１つ以上含まれてもよいし、含まれなくてもよい。そして、Clip ＡＶストリームファイルに含まれるビデオストリームと、ビデオストリームと同じタイミングで再生されるオーディオストリーム、ビットマップ字幕ストリームファイル、またはインタラクティブグラフィックスストリームとは多重化されている。すなわち、１つのPlayItemが参照するClip ＡＶストリームファイルには、ビデオストリームデータと、そのビデオストリームに合わせて再生される０個以上のオーディオストリーム、０個以上のビットマップ字幕ストリームデータ、および０個以上のインタラクティブグラフィックスストリームデータとが多重化されている。
【００６２】
すなわち、１つのPlayItemが参照するClip ＡＶストリームファイルには、ビデオストリーム、オーディオストリーム、ビットマップ字幕ストリームファイル、または、インタラクティブグラフィックスストリームなどの、複数の種類のストリームが含まれている。
【００６３】
また、１つのSubPlayItemは、PlayItemが参照するClip ＡＶストリームファイルとは異なるストリーム（別ストリーム）のオーディオストリームデータや字幕データを参照する。
【００６４】
メインパスのみを有するPlayListを再生する場合、ユーザによる音声切り替えや字幕切り替えという操作は、そのメインパスが参照するClipに多重化されているオーディオストリームとサブピクチャストリームの中からしか音声や字幕を選択することができない。これに対し、メインパスとサブパスを持つPlayListを再生する場合、そのメインパスが参照するClip ＡＶストリームファイルに多重化されているオーディオストリームとサブピクチャストリームに加えて、SubPlayItemが参照するClipのオーディオストリームやサブピクチャストリームを参照することができる。
【００６５】
このように、１つのPlayListの中にSubPathを複数含め、それぞれのSubPathがそれぞれSubPlayItemを参照する構成としたので、拡張性の高い、また、自由度の高いＡＶストリームを実現することができる。すなわち、MainPathで参照されるClip ＡＶストリームに加えて、後で、SubPlayItemを追加できる構成とすることができる。
【００６６】
図７は、メインパスとサブパスの例を説明する図である。図７においては、メインパスと同じタイミングで（ＡＶ同期して）再生されるオーディオの再生パスを、サブパスを使用して表している。
【００６７】
図７のPlayListには、メインパスとして、PlayItem_id＝０である１つのPlayItemと、サブパスとして１つのSubPlayItemが含まれている。メインパスのPlayItem_id＝０である１つのPlayItem()は、図７のメインＡＶストリームを参照している。SubPlayItem()には、以下に示すデータが含まれる。まず、SubPlayItem ()には、PlayListの中のSub Path（サブパス）が参照するClipを指定するためのClip_Information_file_nameが含まれる。図７の例の場合、SubPlayItemによって、SubClip_entry_id＝０のAuxiliary audio stream（オーディオストリーム）が参照されている。また、SubPlayItem ()には、指定されたClipに含まれるストリーム（ここでは、Auxiliary audio stream）中のSub Pathの再生区間を指定するためのSubPlayItem_IN_timeとSubPlayItem_OUT_timeとが含まれる。さらに、SubPlayItem()には、Main pathの時間軸上でSub Pathが再生開始する時刻を指定するためのsync_PlayItem_idとsync_start_PTS_of_PlayItemとが含まれる。図７の例の場合、sync_PlayItem_id＝０とされ、sync_start_PTS_of_PlayItem＝ｔ１とされている。これにより、メインパスのPlayItem_id＝０の時間軸上でSub Pathが再生を開始する時刻ｔ１を指定することができる。すなわち、図７の例の場合では、メインパスの再生開始時刻ｔ１とサブパスの開始時刻ｔ１が同時刻であることを示している。
【００６８】
ここで、Sub Pathに参照されるオーディオのClip AVストリームは、STC不連続点（システムタイムベースの不連続点）を含んではならない。サブパスに使われるClipのオーディオサンプルのクロックは、メインパスのオーディオサンプルのクロックにロックされている。
【００６９】
換言すると、SubPlayItem（）には、Sub Pathが参照するClipを指定する情報、Sub Pathの再生区間を指定する情報、およびMain pathの時間軸上でSub Pathが再生を開始する時刻を指定する情報が含まれている。Sub Pathに使われるClip AVストリームがSTCを含まないため、SubPlayItem（）に含まれる情報（Sub Pathが参照するClipを指定する情報、Sub Pathの再生区間を指定する情報、およびMain pathの時間軸上でSub Pathが再生を開始する時刻を指定する情報）に基づいて、メインパスが参照するClip ＡＶストリーム（メインＡＶストリーム）とは異なるClip ＡＶストリームのオーディオストリームを参照して、再生することができる。
【００７０】
このように、PlayItemとSubPlayItemは、Clip ＡＶストリームファイルをそれぞれ管理するものであり、ここでは、PlayItemが管理するClip ＡＶストリームファイル（メインＡＶストリーム）とSubPlayItemが管理するClip ＡＶストリームファイルは異なるファイルとなる。
【００７１】
なお、図７の例と同様にして、メインパスと同じタイミングで再生される字幕ストリーム再生パスを、サブパスを使用して表すこともできる。
【００７２】
図８は、メインパスとサブパスの別の例を説明する図である。図８においては、メインパスと同じタイミングで（ＡＶ同期して）再生されるオーディオの再生パスを、サブパスを使用して表している。ここで、メインパスのPlayItemが参照するメインＡＶストリームファイルは、図７と同様であるので省略している。
【００７３】
例えば、メインパスにより参照されるClipＡＶストリームを１つの映画のコンテンツ（ＡＶコンテンツ）とし、サブパスのオーディオパスにより参照されるAuxiliary audio streamをその映画に対する監督のコメントとし、メインパスで参照されるClipＡＶストリームのオーディオストリームにサブパスのオーディオパスで参照されるAuxiliary audio streamをミキシング（重ねて）再生するような場合に、このような構成が利用される。すなわち、ユーザが、映画を見ながら、その映画に対する監督のコメントを合わせて聞く指令を再生装置（プレーヤ）へ入力した場合、例えば、メインパスで参照されるClipＡＶストリームの音声と、サブパスのオーディオパスで参照されるAuxiliary audio streamとを、ミキシングして再生させる場合に利用される。
【００７４】
図８においては、メインパスに３つのPlayItemがPlayItem_id＝０，１，２と配置され、サブパス（Subpath_id＝０）に２つのSubPlayItemが配置されている。そして、Subpath_id＝０のSubPath（図１０にて後述する）で呼び出すSubPlayItem（図１２にて後述する）は、Auxiliary audio stream（SubClip_entry_id＝０の英語のAuxiliary audio streamのクリップ及びSubClip_entry_id＝１の日本語のAuxiliary audio streamのクリップ）のSubpathの再生区間を指定するための、SubPlayItem_IN_timeと、SubPlayItem_out_timeを含む。
【００７５】
図８と図７とを比較するに、図８においては、SubPlayItemによって、SubClip_entry_id＝０，１のAuxiliary audio stream（英語または日本語のオーディオストリーム）を参照することができる。すなわち、SubPlayItemを用いて、複数のオーディオストリームファイルを参照する構造を有し、このSubPlayItemを再生する場合には、複数のオーディオストームファイルから１つのオーディオストリームファイルが選ばれて再生される。図８の例の場合、英語のオーディオストリームファイルと日本語のオーディオストリームファイルのうち、１つのオーディオストリームファイルが選ばれて再生される。具体的には、subClip_entry_id＝０，１の中から（例えば、ユーザの指令に基づいて）１つが選択され、そのＩＤが参照するAuxiliary audio streamが再生される。また、これに加えて、さらにメインパスにより参照されるオーディオストリームとのミキシングによる再生が選択された場合（再生するオーディオストリームとして２つのオーディオストリームが選択された場合）、例えば、メインパスで参照されるオーディオストリームファイルと、サブパスのオーディオパスで参照されるオーディオストリームファイルとが、ミキシングされて再生される。
【００７６】
次に、図６乃至図８を用いて説明したメインパスとサブパスの構造を具体的に実現するためのデータ構造（シンタクス）を説明する。
【００７７】
図９は、PlayList()のシンタクスを示す図である。
【００７８】
lengthは、このlengthフィールドの直後からPlayList()の最後までのバイト数を示す３２ビットの符号なし整数である。すなわち、reserved_for_future_useからPlaylistの最後までのバイト数を示すフィールドである。このlengthの後には、１６ビットのreserved_for_future_useが用意される。number_of_PlayItemsは、PlayListの中にあるPlayItemの数を示す１６ビットのフィールドである。例えば、図６の例の場合PlayItemの数は３個である。PlayItem_idの値は、PlayListの中でPlayItem()が現れる順番に０から割り振られる。例えば、図６および図８に示されるように、PlayItem_id＝０，１，２が割り振られる。
【００７９】
number_of_SubPathsは、PlayListの中にあるSubPathの数（エントリー数）を示す１６ビットのフィールドである。例えば、図６の例の場合、Sub Pathの数は３個である。SubPath_idの値は、PlayListの中でSubPath()が現れる順番に０から割り振られる。例えば、図６に示されるように、Subpath_id＝０，１，２が割り振られる。その後のfor文では、PlayItemの数だけPlayItemが参照され、Sub Pathの数だけ、Sub Pathが参照される。
【００８０】
図１０は、SubPath()のシンタクスを示す図である。
【００８１】
lengthは、このlengthフィールドの直後からSub Path ()の最後までのバイト数を示す３２ビットの符号なし整数である。すなわち、reserved_for_future_useからPlaylistの最後までのバイト数を示すフィールドである。このlengthの後には、１６ビットのreserved_for_future_useが用意される。SubPath_typeは、SubPathのアプリケーション種類を示す８ビットのフィールドである。SubPath_typeは、例えば、Sub Pathがオーディオであるか、ビットマップ字幕であるか、テキスト字幕であるかなどの種類を示す場合に利用される。このSubPath_typeについては、図１１を参照して後述する。SubPath_typeの後には、１５ビットのreserved_for_future_useが用意される。is_repeat_SubPathは、SubPathの再生方法を指定する１ビットのフィールドであり、メインパスの再生の間にSubPathの再生を繰り返し行うか、またはSubPathの再生を１回だけ行うかを示すものである。例えば、メインＡＶストリームとサブパスが指定するClipの再生タイミングが異なる場合（メインパスを静止画のスライドショーとし、サブパスのオーディオパスをメインパスのBGM(バックグラウンドミュージック)として使う場合など）に利用される。Is_repeat_SubPathの後には、８ビットのreserved_for_future_useが用意される。number_of_SubPlayItemsは、１つのSubPathの中にあるSubPlayItemの数（エントリー数）を示す８ビットのフィールドである。例えば、number_of_SubPlayItemsは、図６のSubPath_id＝０のSubPlayItemは１個であり、SubPath_id＝１のSubPlayItemは２個である。その後のfor文では、SubPlayItemの数だけ、SubPlayItemが参照される。
【００８２】
ところで、SubPath_type（サブパスタイプ）については、例えば特開２００２−１５８９６５号公報や特開２００２−１５８９７２号公報のそれぞれの図４２に開示されている。しかしながら、これらの公報では、SubPath_typeの種類は１つのみしか定義されておらず、その定義をそのまま利用しても、上述したまたは後述する各種処理や各種手法を実現することはできない。そこで、本実施の形態では、対象となる各種処理または各種手法に応じて、例えば図１１、または図４５で示されるSubPath_typeの種類を採用するようにしている。
【００８３】
そこで、以下、はじめに、図１１の例のSubPath_typeの種類について説明する。なお、図４５の例のSubPath_typeについては後述する。
【００８４】
即ち、図１１は、SubPath_typeの種類の例を説明する図である。すなわち、図１１の例では、SubPathの種類は次のように定義することができる。
【００８５】
図１１において、SubPath_type＝０，１は、reservedとされている。SubPath_type＝２は、Audio presentation path of the Browsable slideshow（プラウザブルスライドショーのオーディオプレゼンテーションパス）とされている。例えば、SubPath_type＝２は、プレイリストの中において、サブパスで参照されるオーディオプレゼンテーションパスと、プレイアイテムで参照されるメインパスとが非同期であることを示している。
【００８６】
SubPath_type＝３は、Interactive graphics presentation menu（インタラクティブグラフィックスのプレゼンテーションメニュー）とされている。例えば、SubPath_type＝３は、プレイリストの中において、サブパスで参照されるインタラクティブグラフィックスのメニューと、プレイアイテムで参照されるメインパスとが非同期であることを示している。
【００８７】
SubPath_type＝４は、Text subtitle presentation path（テキスト字幕のプレゼンテーションパス）とされている。例えば、SubPath_type＝４は、プレイリストの中において、サブパスで参照されるテキスト字幕のプレゼンテーションパスと、プレイアイテムで参照されるメインパスとが同期していることを示している。
【００８８】
SubPath_type＝５は、2nd Audio Presentation path（２番目のオーディオプレゼンテーションパス）（２ndオーディオストリームを参照するためのパス）とされている。具体的には、SubPath_type＝５は、プレイリストの中において、サブパスで参照される２番目のオーディオプレゼンテーションパスと、プレイアイテムで参照されるメインパスとが同期していることを示している。例えば、このサブパスで参照される（２番目の）オーディオストリームは、映画に対する監督のコメント（音声）である。図８においてSubpath_id=０で示されるSubPathの場合、図１０のSubPath_typeは、このSubPath_type＝５となる。
【００８９】
SubPath_type＝６は、2nd Video Presentation path（２番目のビデオプレゼンテーションパス）（２ndビデオストリームを参照するためのパス）とされている。具体的には、SubPath_type＝６は、プレイリストの中において、サブパスで参照される２番目のビデオプレゼンテーションパスと、プレイアイテムで参照されるメインパスとが同期していることを示している。例えば、このサブパスで参照される（２番目の）ビデオストリームは、映画に対する監督のコメント（動画像）である。
【００９０】
SubPath_type＝７乃至２５５は、reservedとされている。
【００９１】
図１２は、SubPlayItem(i)のシンタクスを示す図である。
【００９２】
lengthは、このlengthフィールドの直後からSub playItem ()の最後までのバイト数を示す１６ビットの符号なし整数である。
【００９３】
図１２においては、SubPlayItemが１つのClip を参照する場合と、複数のClip を参照する場合に分けられている。
【００９４】
最初に、SubPlayItemが１つのClipを参照する場合について説明する。
【００９５】
SubPlayItemには、Clipを指定するためのClip_Information_file_ name[0]が含まれる。また、Clipのコーデック方式を指定するClip_codec_identifier［0］、reserved_for_future_use、マルチクリップの登録の有無を示すフラグであるis_multi_Clip_entries、STC不連続点（システムタイムベースの不連続点）に関する情報であるref_to_STC_id［0］を含む。is_multi_Clip_entriesのフラグが立っている場合、SubPlayItemが複数のClipを参照する場合のシンタクスが参照される。また、Clipの中にあるSub Pathの再生区間を指定するためのSubPlayItem_IN_timeとSubPlayItem_OUT_timeを含む。さらに、main pathの時間軸上でSub Pathが再生開始する時刻を指定するためsync_PlayItem_id とsync_start_PTS_of_PlayItemを含む。このsync_PlayItem_id とsync_start_PTS_of_PlayItemは、上述したように、図７と図８の場合（メインＡＶストリームとサブパスにより示されるファイルの再生タイミングが同じである場合）に使用され、メインＡＶストリームとサブパスにより示されるファイルの再生タイミングが異なる場合（例えば、静止画により構成されるスライドショーのBGMのように、メインパスにより参照される静止画像とサブパスにより参照されるオーディオとが同期しない場合）には使用されない。また、SubPlayItem_IN_time、SubPlayItem_OUT_time、sync_PlayItem_id、sync_start_PTS_of_PlayItemは、SubPlayItemが参照するClipにおいて共通に使用される。
【００９６】
次に、SubPlayItemが複数のClipを参照する場合（if（is_multi_Clip_entries＝＝１ｂ）である場合、すなわちマルチクリップの登録が行われている場合）について説明する。具体的には、図８に示されるように、SubPlayItemが複数のClip を参照する場合を示す。
【００９７】
num_of_Clip_entriesは、Clipの数を示しており、Clip_Information_file_name[SubClip_entry_id]の数が、Clip_Information_file_ name[0]を除く、Clipsを指定する。すなわち、Clip_Information_file_ name[0]を除く、Clip_Information_file_ name[１]、Clip_Information_file_ name[２]などのClipを指定する。また、SubPlayItemは、Clipのコーデック方式を指定するClip_codec_identifier[SubClip_entry_id]、STC不連続点（システムタイムベースの不連続点）に関する情報であるref_to_STC_id[SubClip_entry_id]、およびreserved_for_future_useを含む。
【００９８】
なお、複数のClipの間で、SubPlayItem_IN_time, SubPlayItem_OUT_time、sync_PlayItem_id、およびsync_start_PTS_of_PlayItemは共通して使われる。図８の例の場合、SubPlayItem_IN_time, SubPlayItem_OUT_time、sync_PlayItem_id、およびsync_start_PTS_of_PlayItemは、SubClip_entry_id＝０とSubClip_entry_id＝１との間で共通して使用されるものであり、選択されたSubClip_entry_idに対するText based subtitleがこのSubPlayItem_IN_time, SubPlayItem_OUT_time、sync_PlayItem_id、およびsync_start_PTS_of_PlayItemに基づいて再生される。
【００９９】
ここで、SubClip_entry_idの値は、SubPlayItemの中にあるClip_Information_file_name[SubClip_entry_id]が現れる順番に１から割り振られる。また、Clip_Information_file_ name[0]のSubClip_entry_idは０である。
【０１００】
図１３は、PlayItem()のシンタクスを示す図である。
【０１０１】
lengthは、このlengthフィールドの直後からPlayItem()の最後までのバイト数を示す１６ビットの符号なし整数である。Clip_Information_file_ name[0]は、PlayItemが参照するClipを指定するためのフィールドである。図７の例の場合、Clip_Information_file_ name[0]により、メインＡＶストリームが参照される。また、PlayItem()には、Clipのコーデック方式を指定するClip_codec_identifier［0］、reserved_for_future_use、is_multi_angle、connection_condition、STC不連続点（システムタイムベースの不連続点）に関する情報であるref_to_STC_id［0］が含まれている。さらに、PlayItem()には、Clipの中のPlayItemの再生区間を指定するためのIN_time とOUT_timeが含まれている。図７の例の場合、IN_time とOUT_timeにより、メインClipＡＶストリームファイルの再生範囲が表される。また、PlayItem()には、UO_mask_table()、PlayItem_random_access_mode、still_modeが含まれている。なお、is_multi_angleが複数ある場合については、本発明と直接的には関係ないのでその説明を省略する。
【０１０２】
PlayItem()の中のSTN_table()は、対象のPlayItemとそれに関連付けられて再生される１つ以上のSubPathが用意されている場合に、ユーザによる音声切り替えや字幕切り替えという操作が、そのPlayItemが参照するClipとこれらの１つ以上のSubPathが参照するClipsの中から選ぶことができる仕組みを提供するものである。また、STN_table()は、２つのオーディオストリームのミキシング再生を選ぶことができる仕組みを提供するものである。
【０１０３】
図１４は、STN_table()のシンタクスの第１の例（第１のSTN_table()）を示す図である。STN_table()は、PlayItemの属性として設定されている。
【０１０４】
lengthは、このlengthフィールドの直後からSTN_table()の最後までのバイト数を示す１６ビットの符号なし整数である。lengthの後には、１６ビットのreserved_for_future_useが用意される。number_of_video_stream_entriesは、STN_table()の中でエントリーされる（登録される）video_stream_idが与えられるストリーム数を示す。video_stream_idは、ビデオストリームを識別するための情報であり、video_stream_numberは、ビデオ切り替えに使われる、ユーザから見えるビデオストリーム番号である。
【０１０５】
number_of_audio_stream_entriesは、STN_table()の中でエントリーされるaudio_stream_idが与えられる１番目のオーディオストリームのストリーム数を示す。audio_stream_idは、オーディオストリームを識別するための情報である。audio_stream_numberは、ユーザから見えるオーディオストリーム番号であり、音声切り替えに用いられる。number_of_audio_stream2_entriesは、STN_table()の中でエントリーされるaudio_stream_id2が与えられる２番目のオーディオストリームのストリーム数を示す。audio_stream_id2は、オーディオストリームを識別するための情報である。audio_stream_numberは、ユーザから見えるオーディオストリーム番号であり、音声切り替えに用いられる。具体的には、STN_table()でエントリーされるnumber_of_audio_stream_entriesのオーディオストリームは、後述する図２５の再生装置２０または図４９の再生装置４０１の１stオーディオデコーダ７５−１でデコードされるオーディオストリームであり、STN_table()でエントリーされるnumber_of_audio_stream2_entriesのオーディオストリームは、後述する図２５の再生装置２０または図４９の再生装置４０１の２ndオーディオデコーダ７５−２でデコードされるオーディオストリームである。このように、図１４のSTN_table()では、２つのオーディオデコーダのそれぞれにデコードさせるオーディオストリームをエントリーすることができる。
【０１０６】
なお、以下において、図２５の再生装置２０または図４９の再生装置４０１の１stオーディオデコーダ７５−１でデコードされるnumber_of_audio_stream_entriesのオーディオストリームをオーディオストリーム＃１と称し（さらに、オーディオストリーム＃１は、後述するように、プライマリオーディオストリームと称される場合もある）、図２５の再生装置２０または図４９の再生装置４０１の２ndオーディオデコーダ７５−２でデコードされるnumber_of_audio_stream2_entriesのオーディオストリームをオーディオストリーム＃２と称する（さらに、オーディオストリーム＃２は、後述するように、セカンダリオーディオストリームと称される場合もある）。また、オーディオストリーム＃１は、オーディオストリーム＃２よりも優先されるオーディオストリームであるものとする。
【０１０７】
number_of_PG_txtST_stream_entriesは、STN_table()の中でエントリーされるPG_txtST_stream_idが与えられるストリーム数を示す。この中では、DVDのサブピクチャのようなビットマップ字幕をランレングス符号化したストリーム（PG, Presentation Graphics stream）とテキスト字幕ファイル(txtST)がエントリーされる。PG_txtST_stream_idは、字幕ストリームを識別するための情報であり、PG_txtST_stream_numberは、字幕切り替えに使われるユーザから見える字幕ストリーム番号（テキストサブタイトルストリームの番号）である。
【０１０８】
number_of_IG_stream_entriesは、STN_table()の中でエントリーされるIG_stream_idが与えられるストリーム数を示す。この中では、インタラクティブグラフィックスストリームがエントリーされる。IG_stream_idは、インタラクティブグラフィックスストリームを識別するための情報であり、IG_stream_numberは、グラフィックス切り替えに使われるユーザから見えるグラフィックスストリーム番号である。
【０１０９】
ここで、stream_entry()のシンタクスについて図１５を参照して説明する。
【０１１０】
lengthは、このlengthフィールドの直後からstream_entry ()の最後までのバイト数を示す８ビットの符号なし整数である。typeは、上述したストリーム番号が与えられるストリームを一意に特定するために必要な情報の種類を示す８ビットのフィールドである。
【０１１１】
type＝１では、PlayItemによって参照されるClip(Main Clip)の中に多重化されている複数のエレメンタリストリームの中から１つのエレメンタリストリームを特定するために、１６ビットのパケットID(PID)が指定される。ref_to_stream_PID_of_mainClipが、このPIDを示している。すなわち、type＝１では、メインClipＡＶストリームファイルの中のPIDを指定するだけでストリームが決定される。
【０１１２】
type＝２では、SubPathが一度に複数個のClipを参照し、それぞれのClipが複数のエレメンタリストリームを多重化する場合に、SubPathによって参照される１つのClip(SubClip)の複数のエレメンタリストリームの中から１つのエレメンタリストリームを特定するために、そのSubPathのSubPath_id、Clip id、およびパケットID(PID)が指定される。ref_to_SubPath_idがこのSubPath_idを示し、ref_to_SubClip_entry_idがこのClip idを示し、ref_to_stream_PID_of_SubClipがこのPIDを示している。SubPlayItemの中で複数のClipが参照され、さらにこのClipに複数のエレメンタリストリームが参照されている場合に用いられる。
【０１１３】
このように、type（type＝１とtype＝２の２つのtype）を使うことで、PlayItemとそれに関連付けられて再生される１つ以上のSubPathが用意されている場合に、このPlayItemが参照するClipと１つ以上のSubPathが参照するClipの中から１つのエレメンタリストリームを特定することができる。なお、type＝１はMain Pathが参照するClip（メインClip）を示しており、type＝２はSub Pathが参照するClip（サブClip）を示している。
【０１１４】
図１４の第１のSTN_table()の説明に戻って、ビデオストリームＩＤ (video_stream_id)のforループの中で、順番にstream_entry()ごとに特定される１つのビデオエレメンタリストリームに、０からvideo_stream_idが与えられる。なお、ビデオストリームＩＤ（video_stream_id）の代わりに、ビデオストリーム番号（video_stream_number）を用いるようにしてもよい。この場合、video_stream_numberは、０ではなく１から与えられる。すなわち、video_stream_idの値に１を加算したものがvideo_stream_numberである。ビデオストリーム番号は、ビデオ切り替えに使われる、ユーザから見えるビデオストリーム番号であるので、１から定義される。
【０１１５】
同様に、オーディオストリームＩＤ (audio_stream_id)のforループの中で、順番にstream_entry()ごとに特定される１つのオーディオエレメンタリストリームに、０からaudio_stream_idが与えられる。なお、ビデオストリームの場合と同様に、オーディオストリームＩＤ（audio_stream_id）の代わりに、オーディオストリーム番号（audio_stream_number）を用いるようにしてもよい。この場合、audio_stream_numberは、０ではなく１から与えられる。すなわち、audio_stream_idの値に１を加算したものがaudio_stream_numberである。オーディオストリーム番号は、音声切り替えに使われる、ユーザから見えるオーディオストリーム番号であるので、１から定義される。
【０１１６】
同様に、オーディオストリームＩＤ２ (audio_stream_id2)のforループの中で、順番にstream_entry()ごとに特定される１つのオーディオエレメンタリストリームに、０からaudio_stream_id2が与えられる。なお、ビデオストリームの場合と同様に、オーディオストリームＩＤ２（audio_stream_id2）の代わりに、オーディオストリーム番号２（audio_stream_number2）を用いるようにしてもよい。この場合、audio_stream_number2は、０ではなく１から与えられる。すなわち、audio_stream_id2の値に１を加算したものがaudio_stream_number2である。オーディオストリーム番号２は、音声切り替えに使われる、ユーザから見えるオーディオストリーム番号２であるので、１から定義される。
【０１１７】
すなわち、図１４の第１のSTN_table()においては、number_of_audio_stream_entries（オーディオストリーム＃１）のオーディオストリームと、number_of_audio_stream2_entries（オーディオストリーム＃２）のオーディオストリームとが定義される。換言すれば、STN_table()を用いて、オーディオストリーム＃１とオーディオストリーム＃２とをエントリーすることができるので、ユーザは、同期して再生するオーディオストリームを２本選択することができる。
【０１１８】
同様に、字幕ストリームＩＤ (PG_txtST_stream_id)のforループの中で、順番にstream_entry()ごとに特定される１つのビットマップ字幕エレメンタリストリームまたはテキスト字幕に、０からPG_txtST_stream_idが与えられる。なお、ビデオストリームの場合と同様に、字幕ストリームＩＤ（PG_txtST_stream_id）の代わりに、字幕ストリーム番号（PG_txtST_stream_number）を用いるようにしてもよい。この場合、PG_txtST_stream_numberは、０ではなく１から与えられる。すなわち、PG_txtST_stream_idの値に１を加算したものがPG_txtST_stream_numberである。字幕ストリーム番号は、字幕切り替えに使われるユーザから見える字幕ストリーム番号（テキストサブタイトルストリームの番号）であるので、１から定義される。
【０１１９】
同様に、グラフィックスストリームＩＤ (IG_stream_id)のforループの中で、順番にstream_entry()ごとに特定される１つのインタラクティブグラフィックスエレメンタリストリームに、０からIG_stream_idが与えられる。なお、ビデオストリームの場合と同様に、グラフィックスストリームＩＤ（IG_stream_id）の代わりに、グラフィックスストリーム番号（IG_stream_number）を用いるようにしてもよい。この場合、IG_stream_numberは、０ではなく１から与えられる。すなわち、IG_stream_idの値に１を加算したものがIG_stream_numberである。グラフィックスストリーム番号は、グラフィックス切り替えに使われるユーザから見えるグラフィックスストリーム番号であるので、１から定義される。
【０１２０】
次に、図１４の第１のSTN_table()のstream_attribute()について説明する。
【０１２１】
reserved_for_future_useの後のfor文では、video streamの分だけvideo streamが参照され、ディスク製造者が、オーディオストリームに対してMain PathおよびSub Pathを設定した分だけaudio streamが参照され、PG textST streamの分だけPG textST streamが参照され、IG streamの分だけIG streamが参照される。
【０１２２】
ビデオストリームＩＤ (video_stream_id)のforループの中のstream_attribute()は、stream_entry()ごとに特定される１つのビデオエレメンタリストリームのストリーム属性情報を与える。すなわち、このstream_attribute()には、stream_entry()ごとに特定される１つのビデオエレメンタリストリームのストリーム属性情報が記述されている。
【０１２３】
同様に、オーディオストリームＩＤ(audio_stream_id)のforループの中のstream_attribute()は、stream_entry()ごとに特定される１つのオーディオエレメンタリストリームのストリーム属性情報を与える。すなわち、このstream_attribute()には、stream_entry()ごとに特定される１つのオーディオエレメンタリストリームのストリーム属性情報が記述されている。例えば、図１５のstream_entry()のtype＝１またはtype＝２で特定されるオーディオエレメンタリストリームは１つであるので、stream_attribute()は、その１つのオーディオエレメンタリストリームのストリーム属性情報を与える。
【０１２４】
同様に、オーディオストリームＩＤ２(audio_stream_id2)のforループの中のstream_attribute()は、stream_entry()ごとに特定される１つのオーディオエレメンタリストリームのストリーム属性情報を与える。すなわち、このstream_attribute()には、stream_entry()ごとに特定される１つのオーディオエレメンタリストリームのストリーム属性情報が記述されている。例えば、図１５のstream_entry()のtype＝１またはtype＝２で特定されるオーディオエレメンタリストリームは１つであるので、stream_attribute()は、その１つのオーディオエレメンタリストリームのストリーム属性情報を与える。
【０１２５】
同様に、字幕ストリームＩＤ(PG_txtST_stream_id)のforループの中のstream_attribute()は、stream_entry()ごとに特定される１つのビットマップ字幕エレメンタリストリームまたはテキスト字幕エレメンタリストリームのストリーム属性情報を与える。すなわち、このstream_attribute()には、stream_entry()ごとに特定される１つのビットマップ字幕エレメンタリストリームのストリーム属性情報が記述されている。
【０１２６】
同様に、グラフィックスストリームＩＤ(IG_stream_id)のforループの中のstream_attribute()は、stream_entry()ごとに特定される１つのインタラクティブグラフィックスエレメンタリストリームのストリーム属性情報を与える。すなわち、このstream_attribute()には、stream_entry()ごとに特定される１つのインタラクティブグラフィックスエレメンタリストリームのストリーム属性情報が記述されている。
【０１２７】
ここで、stream_attribute()のシンタクスについて図１６を参照して説明する。
【０１２８】
lengthは、このlengthフィールドの直後からstream_attribute()の最後までのバイト数を示す１６ビットの符号なし整数である。
【０１２９】
stream_coding_typeは、図１７に示されるようにエレメンタリストリームの符号化タイプを示す。エレメンタリストリームの符号化タイプとしては、MPEG-2 video stream等のビデオのコーデックのフォーマット、HDMV LPCM audio、Dolby AC-3 audio、dts audio等のオーディオコーデックのフォーマット、Presentation graphics stream、Interactive graphics stream、およびText subtitle streamが記述される。
【０１３０】
video_formatは、図１８に示されるようにビデオエレメンタリストリームのビデオフォーマットを示す。ビデオエレメンタリストリームのビデオフォーマットとしては、４８０ｉ、５７６ｉ、４８０ｐ、１０８０ｉ、７２０ｐ、および１０８０ｐが記述される。
【０１３１】
frame_rateは、図１９に示されるように、ビデオエレメンタリストリームのフレームレートを示す。ビデオエレメンタリストリームのフレームレートとしては、２４０００／１００１、２４、２５、３００００／１００１、５０、および６００００／１００１が記述される。
【０１３２】
aspect_ratioは、図２０に示されるようにビデオエレメンタリストリームのアスペクト比情報を示す。ビデオエレメンタリストリームのアスペクト比情報としては、４：３ display aspect ratio、および１６：９ display aspect ratioが記述される。
【０１３３】
audio_presentation_typeは、図２１に示されるようにオーディオエレメンタリストリームのプレゼンテーションタイプ情報を示す。オーディオエレメンタリストリームのプレゼンテーションタイプ情報としては、single mono channel、dual mono channel、stereo(2-channel)、およびmulti-channelが記述される。
【０１３４】
sampling_frequencyは、図２２に示されるようにオーディオエレメンタリストリームのサンプリング周波数を示す。オーディオエレメンタリストリームのサンプリング周波数としては、４８ｋHz、および９６ｋHzが記述される。
【０１３５】
audio_language_codeは、オーディオエレメンタリストリームの言語コード(日本語、韓国語、中国語など)を示す。
【０１３６】
PG_language_codeは、ビットマップ字幕エレメンタリストリームの言語コード(日本語、韓国語、中国語など)を示す。
【０１３７】
IG_language_code、インタラクティブグラフィックスエレメンタリストリームの言語コード(日本語、韓国語、中国語など)を示す。
【０１３８】
textST_language_codeは、テキスト字幕エレメンタリストリームの言語コード(日本語、韓国語、中国語など)を示す。
【０１３９】
character_codeは、図２３に示されるようにテキスト字幕エレメンタリストリームのキャラクタコードを示す。テキスト字幕エレメンタリストリームのキャラクタコードとしては、Unicode V1.1(ISO 10646-1)、Shift  JIS（Japanese）、KSC 5601-1987 including KSC 5653 for Roman character(Korean)、GB 18030-2000(Chinese)、GB2312(Chinese)、およびBIG５(Chinese)が記述される。
【０１４０】
以下に、図１６のstream_attribute()のシンタクスについて、図１６と、図１７乃至図２３を用いて具体的に説明する。
【０１４１】
エレメンタリストリームの符号化タイプ（図１６のstream_coding_type）がMPEG-2 video stream（図１７）である場合、stream_attribute()には、そのエレメンタリストリームのビデオフォーマット（図１８）、フレームレート（図１９）、およびアスペクト比情報（図２０）が含まれる。
【０１４２】
エレメンタリストリームの符号化タイプ（図１６のstream_coding_type）がHDMV LPCM audio、Dolby AC-3 audio、またはdts audio（図１７）である場合、stream_attribute()には、そのオーディオエレメンタリストリームのプレゼンテーションタイプ情報（図２１）、サンプリング周波数（図２２）、および言語コードが含まれる。
【０１４３】
エレメンタリストリームの符号化タイプ（図１６のstream_coding_type）がPresentation graphics stream（図１７）である場合、stream_attribute()には、そのビットマップ字幕エレメンタリストリームの言語コードが含まれる。
【０１４４】
エレメンタリストリームの符号化タイプ（図１６のstream_coding_type）がInteractive graphics stream（図１７）である場合、stream_attribute()には、そのインタラクティブグラフィックスエレメンタリストリームの言語コードが含まれる。
【０１４５】
エレメンタリストリームの符号化タイプ（図１６のstream_coding_type）がText subtitle stream（図１７）である場合、stream_attribute()には、そのテキスト字幕エレメンタリストリームのキャラクタコード（図２３）、言語コードが含まれる。
【０１４６】
なお、これらの属性情報はこれに限定されない。
【０１４７】
このように、PlayItemとそれに関連付けられて再生される１つ以上のSubPathが用意されている場合に、このPlayItemが参照するClipと１つ以上のSubPathが参照するClipの中から、stream_entry()によって特定された１つのエレメンタリストリームの属性情報をstream_attribute()によって知ることができる。
【０１４８】
再生装置は、この属性情報（stream_attribute()）を調べることによって、そのエレメンタリストリームを自分自身が再生する機能を持っているか否かを調べることができる。また、再生装置は、この属性情報を調べることによって、再生装置の言語設定の初期情報に対応したエレメンタリストリームの選択することができる。
【０１４９】
例えば、再生装置が、ビットマップ字幕エレメンタリストリームの再生機能だけを有し、テキスト字幕エレメンタリストリームの再生機能を有していない場合を想定する。この再生装置に対して、ユーザが言語切り替えを指示した場合、再生装置は、字幕ストリームＩＤ (PG_txtST_stream_id)のforループの中から、ビットマップ字幕エレメンタリストリームだけを順次選択して、再生する。
【０１５０】
また、例えば、再生装置の言語設定の初期情報が日本語である場合を想定する。この再生装置に対して、ユーザがユーザが副音声（すなわちSecondary audio）への切り替えまたは主音声と副音声のミキシング再生を指示した場合、再生装置は、副音声として用意されているオーディオストリームＩＤ (Audio stream id)のforループの中から、言語コードが日本語であるオーディオエレメンタリストリームだけを順次選択して、再生する。
【０１５１】
さらに、例えば、メインパスにより参照される、ビデオストリームとオーディオストリームからなるＡＶストリーム（映画）を再生する場合、再生装置に対して、ユーザが音声の切り替えを指令し、オーディオストリーム＃１（通常の映画で出力される音声）と、オーディオストリーム＃２（監督や出演者によるコメント）とを、再生する音声として指定（選択）した場合、再生装置は、オーディオストリーム＃１とオーディオストリーム＃２とをミキシング（重畳）して、ビデオストリームとともに再生する。
【０１５２】
なお、オーディオストリーム＃１とオーディオストリーム＃２とは、図１４および図１５のSTN_table()を参照しても分かるように、両方ともメインパスにより参照されるClipに含まれるオーディオストリームとしてもよい。また、オーディオストリーム＃１とオーディオストリーム＃２のうちの、一方をメインパスにより参照されるClipに含まれるオーディオストリームとし、他方をサブパスにより参照されるClipに含まれるオーディオストリームとしてもよい。このように、メインパスにより参照されるメインＡＶストリームに重畳された複数のオーディオストリームを２つ選択して、ミキシングして再生することも可能である。
【０１５３】
このようにして、PlayItem()の中にSTN_table()を設けることにより、PlayItemとそれに関連付けられて再生される１つ以上のSubPathが用意されている場合に、ユーザによる音声切り替えや字幕切り替えという操作を受けて、このPlayItemが参照するClipと１つ以上のSubPathが参照するClipの中から再生されるストリームを選ぶことができる。これにより、メインＡＶストリームが記録されている、再生するＡＶストリームとは異なるストリームやデータファイルに対しても、インタラクティブな操作を行うことができる。
【０１５４】
また、１つのPlayListの中にSubPathを複数使用し、それぞれのSubPathがそれぞれSubPlayItemを参照する構成としたので、拡張性の高い、また、自由度の高いＡＶストリームを実現することができる。すなわち、このPlaylistにより再生されるコンテンツにおいて、後で、SubPlayItemを追加できる構成とすることができる。例えば、Main Pathが参照するClipＡＶストリームファイルとこれに対応付けられるPlayListがあり、このPlayListが新たなSub Pathを追加したPlayListに書き換えられた場合、新たなPlayListに基づいて、Main Pathが参照するClipＡＶストリームファイルとともに、Main Pathが参照するClipＡＶストリームファイルとは異なるClipＡＶストリームファイルを参照して、再生を行うことができる。このように、拡張性を有する構成とすることができる。
【０１５５】
さらに、PlayItem()の中にSTN_table()を設けることにより、後述する図２５の再生装置２０または図４９の再生装置４０１の１stオーディオデコーダ７５−１でデコードされるオーディオストリーム＃１と、２ndオーディオデコーダ７５−２でデコードされるオーディオストリーム＃２とをミキシングして再生することができる。例えば、PlayItem()とそれに関連付けられて再生される１つ以上のSubPathが用意されている場合に、PlayItemが参照するClipのオーディオストリームをオーディオストリーム＃１とし、SubPathが参照するClipのオーディオストリームをオーディオストリーム＃２とし、これらををミキシングして再生することができる仕組みを提供するようにした。また、例えば、PlayItemが参照するClip（メインClip）に含まれる２つのオーディオストリームを、それぞれオーディオストリーム＃１とオーディオストリーム＃２とし、これらをミキシングして再生することができる仕組みを提供するようにした。これにより、メインＡＶストリームが記録されている、再生するメインのオーディオストリームとは異なるオーディオストリーム（例えば、監督のコメントのストリーム）の重畳再生を行うことができる。また、メインＡＶストリームに重畳されている２つのオーディオストリーム＃１とオーディオストリーム＃２とを重畳（ミキシング）して再生することができる。
【０１５６】
具体的な例を、図２４を参照して説明する。図２４は、ユーザに提供する音声信号と字幕信号の関係を表すストリームナンバーテーブルの例を示す図である。
【０１５７】
図２４においては、音声番号をＡ＿ＳＮ（Audio Stream Number）、Ａ＿ＳＮ２と称し、字幕番号をＳ＿ＳＮ（SubPicture Stream Number）と称する。図２４においては、PlayListのMain Pathを構成するPlayItemのSTN_table()でエントリーされるオーディオストリーム＃１（audio_stream_idでエントリーされるオーディオストリーム）のそれぞれにＡ＿ＳＮが与えられ、PlayListのMain Pathを構成するPlayItemのSTN_table()でエントリーされるオーディオストリーム＃２（audio_stream_id2でエントリーされるオーディオストリーム）のそれぞれにＡ＿ＳＮ２が与えられる。
【０１５８】
具体的には、Ａ＿ＳＮ＝１にオーディオ２が与えられ、Ａ＿ＳＮ＝２にオーディオ１が与えられ、Ａ＿ＳＮ＝３にオーディオ３が与えられている。また、Ａ＿ＳＮ２＝１にオーディオ４が与えられ、Ａ＿ＳＮ２＝２にオーディオ５が与えられている。ユーザは、Ａ＿ＳＮが与えられているオーディオストリームの中から、再生するオーディオストリーム＃１を選択し、選択したオーディオストリーム＃１とミキシングするオーディオストリーム＃２を、Ａ＿ＳＮ２が与えられているオーディオストリームの中から選択する。例えば、ユーザは、Ａ＿ＳＮ＝２のオーディオ１と、Ａ＿ＳＮ２＝２のオーディオ５とを再生するオーディオストリームとして選択する。
【０１５９】
具体的な例としては、Ａ＿ＳＮ＝１のオーディオ２が選択されている場合に、ユーザが、オーディオの切り替えを指令した場合、オーディオはＡ＿ＳＮ＝２のオーディオ１に切り替えられ、ユーザが、さらにオーディオの切り替えを指令した場合、オーディオは、Ａ＿ＳＮ＝３のオーディオ３に切り替えられる。また、ユーザが、さらにオーディオの切り替えを指令した場合、オーディオは、Ａ＿ＳＮ＝１のオーディオ２に切り替えられる。また、例えば、Ａ＿ＳＮ２＝１のオーディオ４が選択されている場合に、ユーザが、オーディオの切り替えを指令した場合、オーディオはＡ＿ＳＮ２＝２のオーディオ５に切り替えられ、ユーザが、さらにオーディオの切り替えを指令した場合、オーディオはＡ＿ＳＮ２＝１のオーディオ４に切り替えられる。このように、オーディオストリーム＃１を選択するためのＡ＿ＳＮと、オーディオストリーム＃２を選択するためのＡ＿ＳＮ２とは、音声の切り替えを独立させている。すなわち、ユーザは、Ａ＿ＳＮ＝１乃至Ａ＿ＳＮ＝３から１つオーディオストリームを選択し、Ａ＿ＳＮ２＝１およびＡ＿ＳＮ２＝２から１つオーディオストリームを選択することになる。
【０１６０】
また、PlayListのMain Pathで参照されるメインＡＶストリームの複数のサブピクチャストリームのそれぞれに、Ｓ＿ＳＮが与えられている。すなわち、Ｓ＿ＳＮ＝１にサブピクチャ３が与えられ、Ｓ＿ＳＮ＝２にサブピクチャ１が与えられ、Ｓ＿ＳＮ＝３にサブピクチャ２が与えられる。
【０１６１】
なお、ここでは、Ａ＿ＳＮ、Ａ＿ＳＮ２、Ｓ＿ＳＮの番号が小さい程、ユーザに提供される音声信号やサブピクチャの優先度が高い。また、Ａ＿ＳＮで与えられるストリームの方が、Ａ＿ＳＮ２で与えられるストリームより優先度が高い。すなわち、Ａ＿ＳＮ＝１はデフォルトで再生されるオーディオストリームであり、Ｓ＿ＳＮ＝１はデフォルトで再生されるサブピクチャストリームである。
【０１６２】
具体的には、再生装置の言語設定の初期情報に基づいて再生される音声は、Ａ＿ＳＮ＝１であるオーディオ２（図２４）に対応しており、音声が切り替えられた後、再生される音声は、Ａ＿ＳＮ＝２であるオーディオ１（図２４）に対応している。
【０１６３】
このようなストリームナンバーテーブルを提供するために、PlayList（）で参照されるPlayItem()の中のSTN table()（図１４）において、最初に、オーディオストリーム＃１にエントリーするためのaudio_stream_id＝０（Ａ＿ＳＮ＝１）でオーディオ２を与え、audio_stream_id＝１（Ａ＿ＳＮ＝２）でオーディオ１を与え、audio_stream_id＝２（Ａ＿ＳＮ＝３）でオーディオ３を与える。次に、STN table()（図１４）において、オーディオストリーム＃２にエントリーするためのaudio_stream_id2＝０（Ａ＿ＳＮ２＝１）でオーディオ４を与え、audio_stream_id2＝１（Ａ＿ＳＮ２＝２）でオーディオ５を与える。
【０１６４】
すなわち、再生する２つのオーディオストリーム（オーディオストリーム＃１とオーディオストリーム＃２）とを別々に定義することで、ユーザは、再生する２つのオーディオストリームを、定義されたものの中から任意に選択することができる。換言すれば、ユーザは、再生する２つのオーディオストリームの選択を自由に（オーディオストリーム＃１とオーディオストリーム＃２で定義されているものの中から自由に）行うことができるので、組み合わせの自由度の高い選択を行うことができる。例えば、ユーザは、オーディオ２＋オーディオ４の組み合わせ（Ａ＿ＳＮ＝１とＡ＿ＳＮ２＝１の組み合わせ）や、オーディオ２＋オーディオ５の組み合わせ（Ａ＿ＳＮ＝１とＡ＿ＳＮ２＝２の組み合わせ）を選択することができる。
【０１６５】
このように、PlayItem()の中のSTN table()（図１４）のstream_entry（）（図１５）で、２本のオーディオストリームをエントリーすることが可能な構成としたので、２つのオーディオストリームをミキシングして再生することができる。すなわち、複数の種類からなるストリームから、同じ種類（この例の場合、オーディオストリーム）の２本のストリームをミキシング（重畳、または合成）して、同時に再生することができる。また、ユーザは、所望する２本の同じ種類のストリームのミキシング再生を指令することができる。
【０１６６】
次に、本発明を適用した再生装置について説明する。図２５は、本発明を適用した再生装置２０の構成例を示すブロック図である。この再生装置２０は、上述したメインパスとサブパスを有するPlayListを再生する再生装置２０である。
【０１６７】
再生装置２０には、ストレージドライブ３１、スイッチ３２、ＡＶデコーダ部３３、およびコントローラ３４が設けられている。
【０１６８】
図２５の例の場合、最初に、コントローラ３４がストレージドライブ３１を介してPlayListファイルを読み出し、PlayListファイルの情報に基づいて、ストレージドライブ３１を介してHDD、Blu-Ray Disc(商標)、またはDVDなどの記録媒体からＡＶストリームやＡＶデータを読み出す。ユーザは、ユーザインターフェースを用いて、コントローラ３４に対し、音声や字幕などの切り替えの指令を行うことができる。また、コントローラ３４には、再生装置２０の言語設定の初期情報が図示せぬ記憶部などから供給される。
【０１６９】
PlayListファイルには、Main Path、Sub Pathの情報の他、STN_table()が含まれている。コントローラ３４は、PlayListファイルに含まれるPlayItemが参照するメインClip AVストリームファイル、SubPlayItemが参照するサブClip AVストリームファイル、およびSubPlayItemが参照するテキストサブタイトルデータ等を、ストレージドライブ３１を介して記録媒体などから読み出す。ここで、PlayItemが参照するメインClip AV StreamとSubPlayItemが参照するサブClip AV Streamとが、異なる記録媒体に記録されていてもよい。例えば、メインClip AV Streamが記録媒体に記録されており、対応するサブClip AV Streamは図示せぬネットワークを介して供給され、HDDに記憶されたものであってもよい。また、コントローラ３４は、自分自身（再生装置２０）の再生機能に対応するエレメンタリストリームを選択し、再生するよう制御したり、再生装置２０の言語設定の初期情報に対応するエレメンタリストリームを選択し、再生するよう制御する。なお、一般的にはPlayItemが参照するストリームには、ビデオストリームが含まれているので、PlayItem（メインパス）が参照するストリームを含むClipを、メインClipと称する。また、このメインClip以外のストリームをサブClipと称する。すなわち、サブClipは、サブパスで参照されるストリームであって、PlayItemで参照するビデオストリームを置き換えるビデオストリーム、PlayItemで参照するビデオストリームと合成するビデオストリーム、又は、ビデオストリームを含まずオーディオストリーム、ＩＧ，ＰＧストリーム等のうちの、少なくとも一つのストリームを含むClipをサブＣｌｉｐと称するものである。
【０１７０】
ＡＶデコーダ部３３には、バッファ５１乃至５４、PIDフィルタ５５、PIDフィルタ５６、スイッチ５７乃至５９、バックグラウンドデコーダ７１、ビデオデコーダ７２、プレゼンテーショングラフィックスデコーダ７３、インタラクティブグラフィックスデコーダ７４、１stオーディオデコーダ７５−１、２ndオーディオデコーダ７５−２、Text-STコンポジション７６、スイッチ７７、バックグラウンドプレーン生成部９１、ビデオプレーン生成部９２、プレゼンテーショングラフィックスプレーン生成部９３、インタラクティブグラフィックスプレーン生成部９４、バッファ９５、ビデオデータ処理部９６、ミキシング処理部９７、およびミキシング処理部９８が設けられている。１stオーディオデコーダ７５−１は、オーディオストリーム＃１をデコードするためのものであり、２ndオーディオデコーダ７５−２は、オーディオストリーム＃２をデコードするためのものである。具体的には、図１４のSTN_table()において、audio_stream_idで与えられるオーディオストリームをデコードするためのものが１stオーディオデコーダ７５−１であり、audio_stream_id2で与えられるオーディオストリームをデコードするためのものが２ndオーディオデコーダ７５−２である。
【０１７１】
このように、再生装置２０は、２つのオーディオストリームをデコードするために、２つのオーディオデコーダ（１stオーディオデコーダ７５−１、２ndオーディオデコーダ７５−２）を有している。なお、以下において、１stオーディオデコーダ７５−１と２ndオーディオデコーダ７５−２とを個々に区別しない場合、オーディオデコーダ７５と称する。
【０１７２】
コントローラ３４により読み出されたファイルデータは、図示せぬ復調、ＥＣＣ復号部により、復調され、復調された多重化ストリームに誤り訂正が施される。スイッチ３２は、復調され、誤り訂正が施されたデータを、コントローラ３４からの制御に基づいて、ストリームの種類ごとに選択し、対応するバッファ５１乃至５４に供給する。具体的には、スイッチ３２は、コントローラ３４からの制御に基づいて、バックグラウンドイメージデータをバッファ５１に供給し、メインClip AV Streamのデータをバッファ５２に供給し、サブClip AV Streamのデータをバッファ５３に供給し、Text-STのデータをバッファ５４に供給するようスイッチ３２を切り替える。バッファ５１は、バックグラウンドイメージデータをバッファリングし、バッファ５２は、メインClip AV Streamのデータをバッファリングし、バッファ５３は、サブClip AV Streamのデータをバッファリングし、バッファ５４は、Text-STデータをバッファリングする。
【０１７３】
メインClip AV Streamは、ビデオとオーディオとビットマップ字幕(Presentation Graphics stream)とインタラクティブグラフィックスのうち、ビデオに加えて１つ以上のストリームを多重化したストリーム（例えばトランスポートストリーム）である。サブClip AV Streamは、オーディオとビットマップ字幕(Presentation Graphics stream)とインタラクティブグラフィックスとオーディオのうち、１つ以上のストリームを多重化したストリームである。なお、テキストサブタイトルデータファイル（Text-ST）のデータは、トランスポートストリームのような多重化ストリームの形式であっても、そうでなくてもよい。
【０１７４】
また、メインClip AV StreamとサブClip AV Streamおよびテキストサブタイトルデータを、ストレージドライブ３１（記録媒体）から読み出すときに、それぞれのファイルを時分割に交互に読み出しても良いし、または、サブClip AV StreamやテキストサブタイトルデータをメインClip AV Streamから読み出す前に、すべてバッファ(バッファ５３またはバッファ５４)へプリロードしてもよい。
【０１７５】
再生装置２０は、これらのファイルのデータを、ストレージドライブ３１を介して記録媒体から読み出し、ビデオ、ビットマップ字幕、インタラクティブグラフィックス、およびオーディオを再生する。
【０１７６】
具体的には、メインClip AV Stream用リードバッファであるバッファ５２から読み出されたストリームデータは、所定のタイミングで、後段のPID（パケットＩＤ）フィルタ５５へ出力される。このPIDフィルタ５５は、入力されたメインClip AV StreamをPID（パケットＩＤ）に応じて、後段の各エレメンタリストリームのデコーダへ振り分けて出力する。すなわち、PIDフィルタ５５は、ビデオストリームをビデオデコーダ７２に供給し、プレゼンテーショングラフィックスストリームをプレゼンテーショングラフィックスデコーダ７３への供給元となるスイッチ５７に供給し、インタラクティブグラフィックスストリームをインタラクティブグラフィックスデコーダ７４への供給元となるスイッチ５８に供給し、オーディオストリームを１stオーディオデコーダ７５−１と２ndオーディオデコーダ７５−２への供給元となるスイッチ５９に供給する。
【０１７７】
プレゼンテーショングラフィックスストリームは、例えば、ビットマップの字幕データであり、テキストサブタイトルデータは、例えば、テキスト字幕データである。
【０１７８】
サブClip AV Stream用リードバッファであるバッファ５３から読み出されたストリームデータは、所定のタイミングで、後段のPID（パケットＩＤ）フィルタ５６へ出力される。このPIDフィルタ５６は、入力されたサブClipをPID（パケットＩＤ）に応じて、後段の各エレメンタリストリームのデコーダへ振り分けて出力する。すなわち、PIDフィルタ５６は、プレゼンテーショングラフィックスストリームをプレゼンテーショングラフィックスデコーダ７３への供給元となるスイッチ５７に供給し、インタラクティブグラフィックスストリームをインタラクティブグラフィックスデコーダ７４への供給元となるスイッチ５８に供給し、オーディオストリームを１stオーディオデコーダ７５−１と２ndオーディオデコーダ７５−２への供給元となるスイッチ５９に供給する。
【０１７９】
バックグラウンドイメージデータをバッファリングするバッファ５１から読み出されたデータは、所定のタイミングでバックグラウンドデコーダ７１に供給される。バックグラウンドデコーダ７１は、バックグラウンドイメージデータをデコードし、デコードしたバックグラウンドイメージデータをバックグラウンドプレーン生成部９１に供給する。
【０１８０】
PIDフィルタ５５により振り分けられたビデオストリームは、後段のビデオデコーダ７２に供給される。ビデオデコーダ７２は、ビデオストリームをデコードし、デコードしたビデオデータをビデオプレーン生成部９２へ出力する。
【０１８１】
スイッチ５７は、PIDフィルタ５５から供給されたメインClip AV Streamに含まれるプレゼンテーショングラフィックスストリームと、サブClip AV Streamに含まれるプレゼンテーショングラフィックスストリームのうちのいずれか１つを選択し、選択したプレゼンテーショングラフィックスストリームを、後段のプレゼンテーショングラフィックスデコーダ７３に供給する。プレゼンテーショングラフィックスデコーダ７３は、プレゼンテーショングラフィックスストリームをデコードし、デコードしたプレゼンテーショングラフィックスストリームのデータをプレゼンテーショングラフィックスプレーン生成部９３への供給元となるスイッチ７７に供給する。
【０１８２】
また、スイッチ５８は、PIDフィルタ５５から供給されたメインClip AV Streamに含まれるインタラクティブグラフィックスストリームと、サブClip AV Streamに含まれるインタラクティブグラフィックスストリームのうちのいずれか１つを選択し、選択したインタラクティブグラフィックスストリームを、後段のインタラクティブグラフィックスストリームデコーダ７４に供給する。すなわち、インタラクティブグラフィックスデコーダ７４へ同時に入力されるインタラクティブグラフィックスストリームは、メインClip AV StreamまたはサブClip AV Streamのどちらかから分離されたストリームである。インタラクティブグラフィックスデコーダ７４は、インタラクティブグラフィックスストリームをデコードし、デコードしたインタラクティブグラフィックスストリームのデータを、インタラクティブグラフィックスプレーン生成部９４に供給する。
【０１８３】
さらに、スイッチ５９は、PIDフィルタ５５から供給されたメインClip AV Streamに含まれるオーディオストリームと、サブClip AV Streamに含まれるオーディオストリームのうちのいずれか１つを選択し、選択したオーディオストリームを、後段の１stオーディオデコーダ７５−１または、２ndオーディオデコーダ７５−２に供給する。ここで、１stオーディオデコーダ７５−１へ同時に入力されるオーディオストリームは、メインClipまたはサブClipのどちらかから分離されたストリームである。また、同様に、２ndオーディオデコーダ７５−２へ同時に入力されるオーディオストリームも、メインClipまたはサブClipのどちらかから分離されたストリームである。例えば、メインClipにオーディオストリーム＃１とオーディオストリーム＃２とが含まれていた場合、PIDフィルタ５５は、オーディオストリームのPIDに基づいて、オーディオストリーム＃１とオーディオストリーム＃２とをフィルタリングし、スイッチ５９に供給する。
【０１８４】
スイッチ５９は、例えば、PIDフィルタ５５から供給されたオーディオストリーム＃１を、１stオーディオデコーダ７５−１に供給するようスイッチを選択し、PIDフィルタ５５から供給されたオーディオストリーム＃２を、２ndオーディオデコーダ７５−２に供給するようスイッチを選択する。
【０１８５】
１stオーディオデコーダ７５−１は、オーディオストリームをデコードし、デコードしたオーディオストリームのデータをミキシング処理部１０１に供給する。また、２ndオーディオデコーダ７５−２は、オーディオストリームをデコードし、デコードしたオーディオストリームのデータをミキシング処理部１０１に供給する。
【０１８６】
ここで、オーディオストリーム＃１とオーディオストリーム＃２とを重畳して再生するような場合（ユーザにより再生するオーディオストリームとして、２つのオーディオストリームが選択された場合）、１stオーディオデコーダ７５−１によりデコードされたオーディオストリーム＃１と、２ndオーディオデコーダ７５−２によりデコードされたオーディオストリーム＃２とが、ミキシング処理部１０１に供給される。
【０１８７】
ミキシング処理部１０１は、１stオーディオデコーダ７５−１からのオーディオデータと、２ndオーディオデコーダ７５−２からのオーディオデータとをミキシング（重畳）し、後段のミキシング処理部９７に出力する。なお、本実施の形態においては、１stオーディオデコーダ７５−１から出力されるオーディオデータと２ndオーディオデコーダ７５−２から出力されるオーディオデータとをミキシング（重畳）することを、合成するとも称する。すなわち、合成とは、２つのオーディオデータを、ミキシングすることも示すものとする。
【０１８８】
また、スイッチ３２により選択されたサウンドデータは、バッファ９５に供給され、バッファリングされる。バッファ９５は、所定のタイミングでサウンドデータをミキシング処理部９７に供給する。サウンドデータは、例えば、メニュー選択などによる効果音のデータなどである。ミキシング処理部９７は、ミキシング処理部１０１によりミキシングされたオーディオデータ（１stオーディオデコーダ７５−１から出力されたオーディオデータと２ndオーディオデコーダ７５−２から出力されたオーディオデータとがミキシングされたオーディオデータ）と、バッファ９５から供給されてきたサウンドデータをミキシング（重畳、または合成）し、音声信号として出力する。
【０１８９】
テキストサブタイトル用リードバッファであるバッファ５４から読み出されたデータは、所定のタイミングで、後段のテキストサブタイトルコンポジション（デコーダ）７６へ出力される。テキストサブタイトルコンポジション７６は、Text-STデータをデコードし、スイッチ７７に供給する。
【０１９０】
スイッチ７７は、プレゼンテーショングラフィックスデコーダ７３によりデコードされたプレゼンテーショングラフィックスストリームと、Text-ST（テキストサブタイトルデータ）のうち、いずれかを選択し、選択したデータをプレゼンテーショングラフィックスプレーン生成部９３に供給する。すなわち、プレゼンテーショングラフィックスプレーン生成部９３へ同時に供給される字幕画像は、プレゼンテーショングラフィックスデコーダ７３またはテキストサブタイトル（Text-ST）コンポジション７６のうちのいずれかの出力である。また、プレゼンテーショングラフィックスデコーダ７３へ同時に入力されるプレゼンテーショングラフィックスストリームは、メインClip AV StreamまたはサブClip AV Streamのいずれかから分離されたストリームである（スイッチ５７により選択される）。したがって、プレゼンテーショングラフィックスプレーン生成部９３へ同時に出力される字幕画像は、メインClip AV Streamからのプレゼンテーショングラフィックスストリーム、またはサブClip AV Streamからのからのプレゼンテーショングラフィックスストリーム、またはテキストサブタイトルデータのデコード出力である。
【０１９１】
バックグラウンドプレーン生成部９１は、バックグラウンドデコーダ７１から供給されたバックグラウンドイメージデータに基づいて、例えば、ビデオ画像を縮小表示した場合に壁紙画像となるバックグラウンドプレーンを生成し、これを、ビデオデータ処理部９６に供給する。ビデオプレーン生成部９２は、ビデオデコーダ７２から供給されたビデオデータに基づいて、ビデオプレーンを生成し、これをビデオデータ処理部９６に供給する。プレゼンテーショングラフィックスプレーン生成部９３は、スイッチ７７により選択され、供給されたデータ（プレゼンテーショングラフィックスストリームまたはテキストサブタイトルデータ）に基づいて、例えば、レンダリング画像であるプレゼンテーショングラフィックスプレーンを生成し、これをビデオデータ処理部９６に供給する。インタラクティブグラフィックスプレーン生成部９４は、インタラクティブグラフィックスデコーダ７４から供給されたインタラクティブグラフィックスストリームのデータに基づいて、インタラクティブグラフィックスプレーンを生成し、これをビデオデータ処理部９６に供給する。
【０１９２】
ビデオデータ処理部９６は、バックグラウンドプレーン生成部９１からのバックグラウンドプレーン、ビデオプレーン生成部９２からのビデオプレーン、プレゼンテーショングラフィックスプレーン生成部９３からのプレゼンテーショングラフィックスプレーン、およびインタラクティブグラフィックスプレーン生成部９４からのインタラクティブグラフィックスプレーンを合成し、ビデオ信号として出力する。また、ミキシング処理部９７はミキシング処理部１０１からのオーディオデータ（１stオーディオデコーダ７５−１によりデコードされたオーディオデータと２ndオーディオデコーダ７５−２によりデコードされたオーディオデータとがミキシングされたオーディオデータ）と、バッファ９５からのサウンドデータをミキシング（合成または重畳）し、音声信号として出力する。
【０１９３】
これらのスイッチ５７乃至５９、並びにスイッチ７７は、ユーザインターフェースを介するユーザからの選択、または、対象となるデータが含まれるファイル側に基づいて、スイッチを切り替える。例えば、サブClip ＡＶストリームファイルのみにしか、オーディオストリームが含まれていない場合、スイッチ５９はサブ側にスイッチを切り替える。
【０１９４】
次に、図２５の再生装置２０における再生処理を、図２６乃至図２８のフローチャートを参照して説明する。なお、この処理は、ユーザによりユーザインターフェースを介して、所定のＡＶストリームの再生が指令されたとき開始される。
【０１９５】
ステップＳ１１において、コントローラ３４は、ストレージドライブ３１を介して、記録媒体や図示せぬHDD(Hard Disk Drive)に記録されているPlayListファイルを読み出す。例えば、図９を用いて説明したPlayListのファイルが読み出される。
【０１９６】
ステップＳ１２において、コントローラ３４は、メインClip AV Stream、サブClip AV Stream、およびテキストサブタイトルデータ（Text-STデータ）を読み出す。具体的には、コントローラ３４は、図９を用いて説明したPlayListに含まれるPlayItemに基づいて、メインClip AV Streamを読み出す。また、コントローラ３４は、PlayListに含まれるSubPathで参照される、図１０乃至図１２を用いて説明したSubPlayItemに基づいて、サブClip AV Streamと、テキストサブタイトルデータを読み出す。
【０１９７】
ステップＳ１３において、コントローラ３４は、読み出したデータ（メインClip AV Stream、サブClip AV Stream、およびテキストサブタイトルデータ）を対応するバッファ５１乃至５４に供給するようスイッチ３２を制御する。具体的には、コントローラ３４は、バックグラウンドイメージデータをバッファ５１に供給し、メインClip AV Streamのデータをバッファ５２に供給し、サブClipのデータをバッファ５３に供給し、Text-STのデータをバッファ５４に供給するようスイッチ３２を切り替える。
【０１９８】
ステップＳ１４において、スイッチ３２はコントローラ３４からの制御に基づいて、スイッチ３２を切り替える。これにより、バックグラウンドイメージデータはバッファ５１に供給され、メインClip AV Streamのデータはバッファ５２に供給され、サブClip AV Streamのデータはバッファ５３に供給され、テキストサブタイトルデータはバッファ５４に供給される。
【０１９９】
ステップＳ１５において、各バッファ５１乃至５４は、供給されたデータをそれぞれバッファリングする。具体的には、バッファ５１は、バックグラウンドイメージデータをバッファリングし、バッファ５２は、メインClip AV Streamのデータをバッファリングし、バッファ５３は、サブClip AV Streamのデータをバッファリングし、バッファ５４は、Text-STデータをバッファリングする。
【０２００】
ステップＳ１６において、バッファ５１は、バックグラウンドイメージデータをバックグラウンドデコーダ７１に出力する。
【０２０１】
ステップＳ１７において、バッファ５２はメインClip AV StreamのストリームデータをPIDフィルタ５５に出力する。
【０２０２】
ステップＳ１８において、PIDフィルタ５５は、メインClip ＡＶストリームファイルを構成するＴＳ（Transport Stream）パケットに付されているPIDに基づいて、各エレメンタリストリームのデコーダへ振り分ける。具体的には、PIDフィルタ５５は、ビデオストリームをビデオデコーダ７２に供給し、プレゼンテーショングラフィックスストリームをプレゼンテーショングラフィックスデコーダ７３への供給元となるスイッチ５７に供給し、インタラクティブグラフィックスストリームをインタラクティブグラフィックスデコーダ７４への供給元となるスイッチ５８に供給し、オーディオストリームを１stオーディオデコーダ７５−１への供給元となるスイッチ５９に供給する。すなわち、ビデオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム、およびオーディオストリームには、それぞれ異なるPIDが付されている。
【０２０３】
ステップＳ１９において、バッファ５３は、サブClip AV StreamのストリームデータをPIDフィルタ５６に出力する。
【０２０４】
ステップＳ２０において、PIDフィルタ５６は、PIDに基づいて、各エレメンタリストリームを、それぞれのエレメンタリストリームに対応するデコーダへ振り分ける。具体的には、PIDフィルタ５６は、プレゼンテーショングラフィックスストリームをプレゼンテーショングラフィックスデコーダ７３への供給元となるスイッチ５７に供給し、インタラクティブグラフィックスストリームをインタラクティブグラフィックスデコーダ７４への供給元となるスイッチ５８に供給し、オーディオストリームを１stオーディオデコーダ７５−１と２ndオーディオデコーダ７５−２への供給元となるスイッチ５９に供給する。
【０２０５】
ステップＳ２１において、PIDフィルタ５５およびPIDフィルタ５６の後段のスイッチ５７乃至５９は、ユーザインターフェースを介するコントローラ３４からの制御に基づいて、メインClip AV Stream とサブClip AV Streamのいずれかを選択する。具体的には、スイッチ５７は、PIDフィルタ５５から供給されたメインClip AV StreamまたはサブClip AV Streamのプレゼンテーショングラフィックスストリームを選択し、後段のプレゼンテーショングラフィックスデコーダ７３に供給する。また、スイッチ５８は、PIDフィルタ５５から供給されたメインClip AV StreamまたはサブClip AV Streamのインタラクティブグラフィックスストリームを選択し、後段のインタラクティブグラフィックスストリームデコーダ７４に供給する。さらに、スイッチ５９は、PIDフィルタ５５から供給されたメインClip AV Stream、または、PIDフィルタ５６から供給されたサブClip AV Streamのオーディオストリーム（ここでは、音声が切り替えられる前であるので、オーディオストリーム＃１）を選択し、後段の１stオーディオデコーダ７５−１に供給する。なお、音声を切り替えるような指令がユーザにより行われた場合には、スイッチ５９は、メインClip AV Streamのオーディオストリームを２ndオーディオデコーダ７５−２に供給したり、サブClip AV Streamのオーディオストリームを１stオーディオデコーダ７５−１や２ndオーディオデコーダ７５−２に供給したりもするが、ここでは、音声が切り替えられる前の再生処理について説明しているので、その説明は省略している。
【０２０６】
ステップＳ２２において、バッファ５４は、テキストサブタイトルデータをテキストサブタイトルコンポジション７６に出力する。
【０２０７】
ステップＳ２３において、バックグラウンドデコーダ７１は、バックグラウンドイメージデータをデコードし、これをバックグラウンドプレーン生成部９１に出力する。
【０２０８】
ステップＳ２４において、ビデオデコーダ７２は、ビデオストリームをデコードし、これをビデオプレーン生成部９２に出力する。
【０２０９】
ステップＳ２５において、プレゼンテーショングラフィックスデコーダ７３は、スイッチ５７により選択され、供給されたプレゼンテーショングラフィックスストリームをデコードし、これを後段のスイッチ７７に出力する。
【０２１０】
ステップＳ２６において、インタラクティブグラフィックスデコーダ７４は、スイッチ５８により選択され、供給されたインタラクティブグラフィックスストリームをデコードし、これを後段のインタラクティブグラフィックスプレーン生成部９４に出力する。
【０２１１】
ステップＳ２７において、１stオーディオデコーダ７５−１は、スイッチ５９により選択され、供給されたオーティオストリーム（オーディオストリーム＃１）をデコードし、これを後段のミキシング処理部１０１に出力する。音声の切り替えがユーザにより指示されていない状態における再生処理（図２６乃至図２８の再生処理）では、２ndオーディオデコーダ７５−２からオーディオデータが出力されることはないので、ミキシング処理部１０１は、１stオーディオデコーダ７５−１から出力されたオーディオデータを、そのまま後段のミキシング処理部９７に供給する。
【０２１２】
ステップＳ２８において、Text-STコンポジション７６は、テキストサブタイトルデータをデコードし、これを後段のスイッチ７７に出力する。
【０２１３】
ステップＳ２９において、スイッチ７７は、プレゼンテーショングラフィックスデコーダ７３またはText-STコンポジション７６からのデータのいずれかを選択する。具体的には、スイッチ７７は、プレゼンテーショングラフィックスデコーダ７３によりデコードされたプレゼンテーショングラフィックスストリームと、Text-ST（テキストサブタイトルデータ）のうち、いずれか１つを選択し、選択したデータをプレゼンテーショングラフィックスプレーン生成部９３に供給する。
【０２１４】
ステップＳ３０において、バックグラウンドプレーン生成部９１は、バックグラウンドデコーダ７１から供給されたバックグラウンドイメージデータに基づいて、バックグラウンドプレーンを生成する。
【０２１５】
ステップＳ３１において、ビデオプレーン生成部９２は、ビデオデコーダ７２から供給されたビデオデータに基づいて、ビデオプレーンを生成する。
【０２１６】
ステップＳ３２において、プレゼンテーショングラフィックスプレーン生成部９３は、ステップＳ２９の処理でスイッチ７７により選択され、供給されたプレゼンテーショングラフィックスデコーダ７３からのデータまたはText-STコンポジション７６からのデータに基づいて、プレゼンテーショングラフィックスプレーンを生成する。
【０２１７】
ステップＳ３３において、インタラクティブグラフィックスプレーン生成部９４は、インタラクティブグラフィックスデコーダ７４から供給されたインタラクティブグラフィックスストリームのデータに基づいて、インタラクティブグラフィックスプレーンを生成する。
【０２１８】
ステップＳ３４において、バッファ９５は、ステップＳ１４の処理で選択され、供給されたサウンドデータをバッファリングし、所定のタイミングでミキシング処理部９７に供給する。
【０２１９】
ステップＳ３５において、ビデオデータ処理部９６は、各プレーンのデータを合成し、出力する。具体的には、バックグラウンドプレーン生成部９１、ビデオプレーン生成部９２、プレゼンテーショングラフィックスプレーン生成部９３、およびインタラクティブグラフィックスプレーン生成部９４からのデータを合成し、ビデオデータとして出力する。
【０２２０】
ステップＳ３６において、ミキシング処理部９７は、オーディオデータ（ミキシング処理部１０１から出力されたオーディオデータ）とサウンドデータをミキシング（合成）し、出力する。
【０２２１】
図２６乃至図２８の処理により、PlayListに含まれるメインパスとサブパスに関連付けられているメインClip AV Stream、サブClip AV Stream、およびテキストサブタイトルデータが参照され、再生される。PlayListにメインパスとサブパスを設けるようにし、サブパスで、メインパスで指定するClip AV Streamファイルとは異なるClip AV Streamファイルを指定可能な構成としたので、メインパスのPlayItemが指すメインClip AV Streamを含むClipとは異なるClipであるサブClipのデータとメインClipのデータを一緒に（同じタイミングで）再生することができる。
【０２２２】
なお、図２６乃至図２８において、ステップＳ１６，ステップＳ１７の処理は、その順番が逆であってもよいし、並行して実行されてもよい。また、ステップＳ１８、ステップＳ２０の処理も、その順番が逆であってもよいし、並行して実行されてもよい。さらに、ステップＳ２３乃至ステップＳ２８の処理も、その順番が逆であってもよいし、並行して実行されてもよい。また、ステップＳ３０乃至ステップＳ３３の処理も、その順番が逆であってもよいし、並行して実行されてもよい。さらに、ステップＳ３５，ステップＳ３６の処理も、その順番が逆であってもよいし、並行して実行されてもよい。すなわち、図２５において、縦に同じ階層のバッファ５１乃至５４の処理、スイッチ５７乃至５９の処理、デコーダ７１乃至７６の処理、プレーン生成部９１乃至９４の処理、ビデオデータ処理部９６およびミキシング処理部９７の処理は、それぞれ、並行して実行されてもよいし、その順番は問わない。
【０２２３】
次に、音声の切り替えが指示された場合の再生装置２０における処理を、図２９と図３０のフローチャートを参照して説明する。最初に、図２９のフローチャートを参照して、ユーザによりオーディオストリーム＃１に対する音声の切り替えが指示される場合の処理を説明する。オーディオストリーム＃２に対する音声の切り替えの処理については、図３０を参照して後述する。なお、図２９と図３０の処理は、例えば、図２６乃至図２８の再生処理の実行中に実行される処理である。
【０２２４】
ステップＳ５１において、コントローラ３４は、オーディオストリーム番号（ＩＤでもよい）の順番リストを取得する。具体的には、コントローラ３４は、図１３を用いて説明したPlayItemのSTN_table()を参照し、さらに図１４を用いて説明したSTN_table()にエントリーされているオーディオストリーム番号（ＩＤ）の順番のリストを取得する。この処理は、図２６乃至図２８の再生処理が開始されたときに実行される処理である。
【０２２５】
ユーザにより、ユーザインターフェースを介して、音声切り替えの指令が行われた場合、ステップＳ５２において、コントローラ３４は、ユーザからのオーディオストリーム＃１に対する音声切り替えの指令を受け付ける。このとき、コントローラ３４は、図示せぬ表示部を制御して、図２４に示されるようなストリームナンバーテーブルを表示部に表示させるように制御するようにしてもよい。図２９の処理は、オーディオストリーム＃１に対する音声の切り替えが指令される場合の処理であるので、ユーザは、例えば、図２４に示されるようなストリームナンバーテーブルにおける、Ａ＿ＳＮ＝１、Ａ＿ＳＮ＝２、Ａ＿ＳＮ＝３のオーディオの切り替えを指令する。具体的には、ユーザは、Ａ＿ＳＮ＝１のオーディオ２からＡ＿ＳＮ＝２のオーディオ１へのオーディオの切り替えを指令する。コントローラ３４は、この、ユーザからのオーディオストリーム＃１に対する音声の切り替えを受け付ける。図２９において、ステップＳ５１の処理はあらかじめ実行されている処理であり、ユーザによりオーディオストリーム＃１に対する音声切り替えの指令が行われた場合に、ステップＳ５２以降の処理が行われる。
【０２２６】
ステップＳ５３において、コントローラ３４は、再生しているオーディオストリーム番号の次のオーディオストリーム番号を取得する。例えば、ステップＳ５２の処理で、図２４のＡ＿ＳＮ＝１のオーディオ２に対応するオーディオストリームファイルが再生されていた場合、次は、Ａ＿ＳＮ＝２のオーディオ１であるので、コントローラ３４は、オーディオ１に対応するオーディオストリームの番号を取得する。
【０２２７】
ステップＳ５４において、コントローラ３４は、取得した番号に対応するオーディオストリーム（オーディオストリーム＃１）を再生する機能を有するか否かを判定する。具体的には、コントローラ３４は、stream_attribute()（図１６）に記述されている内容に基づいて、取得した番号に対応するオーディオストリーム（オーディオストリーム＃１）を自分自身（再生装置２０）が再生する機能を有するか否かを判定する。例えば、図１５のStream_entry()において、type＝１である場合、コントローラ３４は、取得した番号に対応するメインClip AV Streamのオーディオストリームを、再生装置２０が再生する機能を有するか否かを判定する。取得した番号に対応するオーディオストリームは、オーディオデコーダ７５−１でデコードされるオーディオストリーム＃１であるので、この処理は、このオーディオストリーム＃１を、オーディオデコーダ７５−１がデコードできるか否かを判定しているとも換言することができる。
【０２２８】
ステップＳ５４において、取得した番号に対応するオーディオストリームを再生する機能を有しないと判定された場合、処理はステップＳ５５に進み、コントローラ３４は、現在のストリーム番号の次のストリーム番号を取得する。すなわち、現在のストリーム番号のオーディオストリームを再生する機能を有さない場合には、そのストリーム番号は飛ばされ（再生対象とならず）、次のストリーム番号が取得される。そして、ステップＳ５５の処理の後、処理はステップＳ５４に戻り、それ以降の処理が繰り返される。すなわち、コントローラ３４により、自分自身が再生する機能を有するオーディオストリーム（オーディオストリーム＃１）の番号が取得されるまで、処理が繰り返される。
【０２２９】
ステップＳ５４において、取得した番号に対応するオーディオストリームを再生する機能を有すると判定された場合、処理はステップＳ５６において、コントローラ３４は、取得した番号に対応するオーディオストリームを含むClipを調べる。例えば、コントローラ３４は、図１５のtypeに基づいて、取得した番号に対応するオーディオストリームがメインClipにあるのか（type＝１）、サブClipにあるのか（type＝２）を調べる。また、例えば、図１５のStream_entry()において、type＝１である場合、コントローラ３４は、取得した番号に対応するオーディオストリームが、メインClipにあることを確認する。さらに、例えば、type＝２である場合、コントローラ３４は、取得した番号に対応するオーディオストリームがサブClipにあることを確認する。
【０２３０】
ステップＳ５７において、コントローラ３４は、所望のオーディオストリームを特定する。具体的には、取得した番号に対応するストリームの属するメインClipまたはサブClipの中の所望のオーディオストリームを特定する。例えば、ステップＳ５４の処理で、取得した番号に対応するオーディオストリームが、メインClipに含まれることが確認された場合、コントローラ３４は、図１５のtype＝１でエントリーされている情報（ref_to_stream_PID_of_mainClip）に基づいて、メインClipの中の所定のオーディオストリームを特定する。また、例えば、ステップＳ５４の処理で、取得した番号に対応するオーディオストリームがサブClipに含まれることが確認された場合、コントローラ３４は、図１５のtype＝２でエントリーされている情報（ref_to_SubPath_id、ref_to_SubClip_entry_id、ref_to_stream_PID_of_SubClip）に基づいて、サブClipの中の所定のオーディオストリームを特定する。この特定されたオーディオストリームが、オーディオデコーダ７５−１でデコードされるオーディオストリーム＃１となる。
【０２３１】
ステップＳ５８において、コントローラ３４は、所望のオーディオストリームが多重化されているClipに対応するClip AV Stream（メインClip AV StreamまたはサブClip AV Stream）を読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるClip AV Streamを読み出す。具体的には、コントローラ３４は、ステップＳ５７の処理で特定したClip AV Streamを読み出すようストレージドライブ３１に指示する。
【０２３２】
ステップＳ５９において、コントローラ３４は、読み出されたClip AV Streamからオーディオストリームを再生するようＡＶデコーダ部３３に指示する。具体的には、コントローラ３４は、読み出されたClip AV Streamに含まれる所望のオーディオストリーム（すなわち、オーディオストリーム＃１）をＡＶデコーダ部３３のオーディオデコーダ７５−１にデコードさせるよう指示する。
【０２３３】
ステップＳ６０において、ＡＶデコーダ部３３は、オーディオストリーム（オーディオストリーム＃１）をデコードし、オーディオ出力する。具体的には、ＡＶデコーダ部３３のオーディオデコーダ７５−１は、オーディオストリーム＃１（ステップＳ５８の処理で読み出しが指令されたオーディオストリーム）をデコードし、ミキシング処理部１０１に出力する。ここで、後述する図３０の処理で、オーディオストリーム＃２がオーディオデコーダ７５−２によってデコードされている場合には、ミキシング処理部１０１は、デコードされたオーディオストリーム＃１とオーディオストリーム＃２とをミキシングし、後段のミキシング処理部９７に供給する。一方、後述する図３０の処理で、オーディオストリーム＃２がオーディオデコーダ７５−２によってデコードされていない場合には、ミキシング処理部１０１は、デコードされたオーディオストリーム＃１をそのまま、後段のミキシング処理部９７に供給する。ミキシング処理部９７は、ミキシング処理部１０１から供給されたオーディオデータ（オーディオストリーム＃１のみがデコードされたオーディオデータ、または、オーディオストリーム＃１とオーディオストリーム＃２とがそれぞれデコードされ、ミキシングされたオーディオデータ）と、バッファ９５から出力されるサウンドデータとを、ミキシング処理し、オーディオ信号として出力する。なお、この図２９のステップＳ６０の処理の詳細な例は、図３１のフローチャートを参照して後述する。
【０２３４】
次に、図３０のフローチャートを参照して、ユーザによりオーディオストリーム＃２に対する音声の切り替えが指示される場合の処理を説明する。なお、この処理は、例えば、図２６乃至図２８の再生処理の実行中に実行される処理である。また、一般的には、オーディオストリーム＃２を再生する場合、オーディオストリーム＃１もまた再生されているので、この図３０の処理は、例えば、図２９の処理と並行して実行される処理とされる（オーディオストリーム＃２がユーザにより選択されない場合には、図３０の処理が実行されず、図２９の処理のみが実行されることになる）。
【０２３５】
ステップＳ７１において、コントローラ３４は、オーディオストリーム番号（ＩＤでもよい）の順番リストを取得する。具体的には、コントローラ３４は、図１３を用いて説明したPlayItemのSTN_table()を参照し、さらに図１４を用いて説明したSTN_table()にエントリーされているオーディオストリーム番号（ＩＤ）の順番のリストを取得する。この処理は、図２６乃至図２８の再生処理が開始されたときに実行される処理である。
【０２３６】
ユーザにより、ユーザインターフェースを介して、音声切り替えの指令が行われた場合、ステップＳ７２において、コントローラ３４は、ユーザからのオーディオストリーム＃２に対する音声切り替えの指令を受け付ける。このとき、コントローラ３４は、図示せぬ表示部を制御して、図２４に示されるようなストリームナンバーテーブルを表示部に表示させるように制御するようにしてもよい。図３０の処理は、オーディオストリーム＃２に対する音声の切り替えが指令される場合の処理であるので、ユーザは、例えば、図２４に示されるようなストリームナンバーテーブルにおける、Ａ＿ＳＮ２＝１とＡ＿ＳＮ２＝２とに対応するオーディオの切り替えを指令する。具体的には、ユーザは、Ａ＿ＳＮ２＝１のオーディオ４からＡ＿ＳＮ２＝２のオーディオ５へのオーディオの切り替えを指令する。コントローラ３４は、この、ユーザからのオーディオストリーム＃２に対する音声の切り替えを受け付ける。図３０において、ステップＳ７１の処理はあらかじめ実行されている処理であり、ユーザによりオーディオストリーム＃２に対する音声切り替えの指令が行われた場合に、ステップＳ７２以降の処理が行われる。
【０２３７】
ステップＳ７３において、コントローラ３４は、再生しているオーディオストリーム番号の次のオーディオストリーム番号を取得する。例えば、図８のSubClip_entry_id＝０のオーディオストリーム（Auxiliary audio stream）が再生されていた場合、次のSubClip_entry_id＝１に対応するオーディオストリームファイルの番号が取得される。例えば、ステップＳ７２の処理で、図２４のＡ＿ＳＮ２＝１のオーディオ４に対応するオーディオストリームファイルが再生されていた場合、次は、Ａ＿ＳＮ２＝２のオーディオ５であるので、コントローラ３４は、オーディオ５に対応するオーディオストリームの番号を取得する。
【０２３８】
ステップＳ７４において、コントローラ３４は、取得した番号に対応するオーディオストリーム（オーディオストリーム＃２）を再生する機能を有するか否かを判定する。具体的には、コントローラ３４は、stream_attribute()（図１６）に記述されている内容に基づいて、取得した番号に対応するオーディオストリーム（オーディオストリーム＃２）を自分自身（再生装置２０）が再生する機能を有するか否かを判定する。例えば、図１５のStream_entry()において、type＝１である場合、コントローラ３４は、取得した番号に対応するメインClipのオーディオストリームを、再生装置２０が再生する機能を有するか否かを判定する。取得した番号に対応するオーディオストリームは、オーディオデコーダ７５−２でデコードされるオーディオストリーム＃２であるので、この処理は、このオーディオストリーム＃２を、オーディオデコーダ７５−２がデコードできるか否かを判定しているとも換言することができる。
【０２３９】
なお、１stオーディオデコーダ７５−１でデコードされるオーディオストリーム＃１の方が、２ndオーディオデコーダ７５−２でデコードされるオーディオストリーム＃２より拡張性が高くマルチストリームであることが仮定される場合、例えば、１stオーディオデコーダ７５−１の方が２ndオーディオデコーダ７５−２よりも高い性能を有する場合（オーディオストリーム＃１が通常の映画の音声であり、オーディオストリーム＃２が映画に対する監督のコメントなどの場合）、このステップＳ７４とステップＳ７５の処理を省略するようにしてもよい。
【０２４０】
このことは、上述したように仮定した場合、２ndオーディオデコーダ７５−２でデコードされるオーディオストリーム＃２は、ある程度の制約が設けられている可能性が高く、オーディオデコーダ７５−２がデコードできないようなストリームは、オーディオストリーム＃２として設定されない可能性が高いと仮定している為である。
【０２４１】
ステップＳ７４において、取得した番号に対応するオーディオストリームを再生する機能を有しないと判定された場合、処理はステップＳ７５に進み、コントローラ３４は、現在のストリーム番号の次のストリーム番号を取得する。すなわち、現在のストリーム番号のオーディオストリームを再生する機能を有さない場合には、そのストリーム番号は飛ばされ（再生対象とならず）、次のストリーム番号が取得される。そして、ステップＳ７５の処理の後、処理はステップＳ７４に戻り、それ以降の処理が繰り返される。すなわち、自分自身が再生する機能を有するオーディオストリーム（オーディオストリーム＃２）の番号が取得されるまで、処理が繰り返される。
【０２４２】
ステップＳ７４において、取得した番号に対応するオーディオストリームを再生する機能を有すると判定された場合、処理はステップＳ７６において、コントローラ３４は、取得した番号に対応するオーディオストリームを含むClipを調べる。例えば、コントローラ３４は、図１５のtypeに基づいて、取得した番号に対応するオーディオストリームがメインClipにあるのか（type＝１）、サブClipにあるのか（type＝２）を調べる。図１５のStream_entry()において、type＝１である場合、コントローラ３４は、取得した番号に対応するオーディオストリームが、メインClipにあることを確認する。また、図１５のStream_entry()において、type＝２である場合、コントローラ３４は、取得した番号に対応するオーディオストリームがサブClipにあることを確認する。
【０２４３】
ステップＳ７７において、コントローラ３４は、所望のオーディオストリームを特定する。具体的には、取得した番号に対応するストリームの属するメインClipまたはサブClipの中の所望のオーディオストリームを特定する。例えば、ステップＳ７４の処理で、取得した番号に対応するオーディオストリームが、メインClipに含まれることが確認された場合、コントローラ３４は、図１５のtype＝１でエントリーされている情報（ref_to_stream_PID_of_mainClip）に基づいて、メインClipの中の所定のオーディオストリームを特定する。また、例えば、ステップＳ７４の処理で、取得した番号に対応するオーディオストリームがサブClipに含まれることが確認された場合、コントローラ３４は、図１５のtype＝２でエントリーされている情報（ref_to_SubPath_id、ref_to_SubClip_entry_id、ref_to_stream_PID_of_SubClip）に基づいて、サブClipの中の所定のオーディオストリームを特定する。この特定されたオーディオストリームが、オーディオデコーダ７５−１でデコードされるオーディオストリーム＃２となる。
【０２４４】
ステップＳ７８において、コントローラ３４は、所望のオーディオストリームが多重化されているClipに対応するClip AV Stream（メインClip AV StreamまたはサブClip AV Stream）を読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるClip AV Streamを読み出す。具体的には、コントローラ３４は、ステップＳ７７の処理で特定したClip AV Streamを読み出すようストレージドライブ３１に指示する。
【０２４５】
ステップＳ７９において、コントローラ３４は、読み出されたClip AV Streamからオーディオストリームを再生するようＡＶデコーダ部３３に指示する。具体的には、コントローラ３４は、読み出されたClip AV Streamに含まれる所望のオーディオストリーム（すなわち、オーディオストリーム＃２）をＡＶデコーダ部３３のオーディオデコーダ７５−２にデコードさせるよう指示する。
【０２４６】
ステップＳ８０において、ＡＶデコーダ部３３は、オーディオストリーム（オーディオストリーム＃２）をデコードし、オーディオ出力する。具体的には、ＡＶデコーダ部３３のオーディオデコーダ７５−２は、オーディオストリーム＃２（ステップＳ７８の処理で読み出しが指令されたオーディオストリーム）をデコードし、ミキシング処理部１０１に出力する。この図３０の処理で、オーディオストリーム＃２がオーディオデコーダ７５−２によってデコードされているということは、図２９の処理でオーディオストリーム＃１がオーディオデコーダ７５−１によってもデコードされ、デコードされたオーディオストリーム＃１がミキシング処理部１０１に出力されているので、ミキシング処理部１０１は、デコードされたオーディオストリーム＃１とオーディオストリーム＃２とをミキシングし、後段のミキシング処理部９７に供給する。ミキシング処理部９７は、ミキシング処理部１０１から供給されたオーディオデータ（オーディオストリーム＃１とオーディオストリーム＃２とがそれぞれデコードされ、ミキシングされたオーディオデータ）と、バッファ９５から出力されるサウンドデータとを、ミキシング処理し、オーディオ信号として出力する。なお、この図３０のステップＳ８０の処理（および図２０のステップＳ６０）の詳細な例を、図３１のフローチャートを参照して説明する。
【０２４７】
図３１は、ＡＶデコーダ部３３におけるオーディオストリームを出力する処理の例を説明するフローチャートである。すなわち、図３１は、図２９のステップＳ６０の処理と図３０のステップＳ８０の処理の詳細な例を説明するフローチャートである。
【０２４８】
ステップＳ８１において、ＡＶデコーダ部３３は、コントローラ３４からの制御に基づいて、再生するオーディオストリームが１つであるか否かを判定する。具体的には、ＡＶデコーダ部３３は、コントローラ３４からの制御に基づいて、ユーザによりオーディオストリーム＃１とオーディオストリーム＃２とが選択されたか否かを判定する。例えば、図２９のステップＳ５２の処理と図３０のステップＳ７２の処理により、ユーザによりオーディオストリーム＃１とオーディオストリーム＃２の切り替えが指令された場合や、ユーザによりオーディオストリーム＃１とオーディオストリーム＃２の再生が指令された場合には、ＡＶデコーダ部３３は、再生するオーディオストリームが１つでない、すなわち２つであると判定する。また、例えば、ユーザにより、オーディオストリーム＃１の再生が指令されたり、図２９のステップＳ５２の処理で、ユーザによりオーディオストリーム＃１の切り替えが指令された場合であって、ユーザによりオーディオストリーム＃２の再生が指令されていない場合には、ＡＶデコーダ部３３は、再生するオーディオストリームが１つであると判定する。
【０２４９】
ステップＳ８１において、再生するオーディオストリームが１つであると判定された場合、ステップＳ８２において、１stオーディオデコーダ７５−１は、その再生する１つのオーディオストリーム、すなわちオーディオストリーム＃１をデコードする。例えば、再生するオーディオストリームがメインClip AV Streamのオーディオストリームである場合、PIDフィルタ５５により選択されて供給されてきたメインClip AV Streamのオーディオストリームが、スイッチ５９により選択され、１stオーディオデコーダ７５−１に供給されるので、１stオーディオデコーダ７５−１は、メインClip AV Streamのオーディオストリーム（ここでは、オーディオストリーム＃１）をデコードする。１stオーディオデコーダ７５−１は、デコードしたオーディオストリーム＃１を、後段のミキシング処理部１０１に供給する。ミキシング処理部１０１は、供給されてきたオーディオデータをそのまま後段のミキシング処理部９７に出力する。
【０２５０】
ステップＳ８１において、再生するオーディオストリームが１つでないと判定された場合、すなわち、再生するオーディオストリームが２つであると判定された場合、２つのオーディオストリームのうち、オーディオストリーム＃１が１stオーディオデコーダ７５−１に供給され、オーディオストリーム＃２が２ndオーディオデコーダ７５−２に供給される。すなわち、スイッチ５９は、PIDフィルタ５５またはPIDフィルタ５６を介して供給されてきたオーディオストリーム＃１をオーディオデコーダ７５−１に供給するようスイッチを選択し、PIDフィルタ５５またはPIDフィルタ５６を介して供給されてきたオーディオストリーム＃２をオーディオデコーダ７５−２に供給するようスイッチを選択する。
【０２５１】
そこで、ステップＳ８３において、１stオーディオデコーダ７５−１は、オーディオストリーム＃１をデコードする。例えば、再生するオーディオストリーム＃１がメインClip AV Streamのオーディオストリームである場合、PIDフィルタ５５により選択されて供給されてきたメインClip AV Streamのオーディオストリームが、スイッチ５９により選択され、１stオーディオデコーダ７５−１に供給されるので、１stオーディオデコーダ７５−１は、メインClipのオーディオストリーム（オーディオストリーム＃１）をデコードする。１stオーディオデコーダ７５−１は、デコードしたオーディオストリーム＃１を、後段のミキシング処理部１０１に供給する。
【０２５２】
また、ステップＳ８４において、２ndオーディオデコーダ７５−２は、オーディオストリーム＃２をデコードする。例えば、再生するオーディオストリーム＃２がサブClip AV Streamのオーディオストリームである場合、PIDフィルタ５６により選択されて供給されてきたサブClip AV Streamのオーディオストリームが、スイッチ５９により選択され、２ndオーディオデコーダ７５−２に供給されるので、２ndオーディオデコーダ７５−２は、このサブClip AV Streamのオーディオストリーム（オーディオストリーム＃２）をデコードする。２ndオーディオデコーダ７５−２は、デコードしたオーディオストリーム＃２を、後段のミキシング処理部１０１に供給する。なお、ステップＳ８３とステップＳ８４の処理は、並行して実行されてもよいし、順番を逆にして実行されてもよい。
【０２５３】
ステップＳ８５において、ミキシング処理部１０１は、１stオーディオデコーダ７５−１によりデコードされたオーディオストリーム＃１と、２ndオーディオデコーダ７５−２によりデコードされたオーディオストリーム＃２とをミキシングする。すなわち、ミキシング処理部１０１は、１stオーディオデコーダ７５−１から供給されてきたオーディオデータと２ndオーディオデコーダ７５−２から供給されてきたオーディオデータとを、ミキシング（合成、重畳）し、１つのオーディオデータとする。ミキシング処理部１０１は、ミキシングした結果得られたオーディオデータを、後段のミキシング処理部９７に供給する。
【０２５４】
ステップＳ８２の処理の後、またはステップＳ８５の処理の後、処理はステップＳ８６に進み、ミキシング処理部９７は、供給されてきたオーディオデータと、バッファ９５から供給されてきたサウンドデータとをミキシングし、出力する。例えば、このステップＳ８６の処理が、ステップＳ８２の処理の後の場合、ミキシング処理部９７は、オーディオストリーム＃１がデコードされたオーディオデータと、サウンドデータとをミキシングする。また、例えば、このステップＳ８６の処理が、ステップＳ８５の処理の後の場合、ミキシング処理部９７は、オーディオストリーム＃１がデコードされたオーディオデータとオーディオストリーム＃２がデコードされたオーディオデータとがミキシングされたオーディオデータに、サウンドデータをミキシングする。その後、処理を終了する。
【０２５５】
図３１の処理によれば、２つのオーディオストリームをミキシングして再生することができる。
【０２５６】
図３１の処理により、図２７のステップＳ２１における図２５のスイッチ５９の選択が決定される。すなわち、図３１において再生するオーディオストリームが１つである場合、スイッチ５９は、PIDフィルタ５５またはPIDフィルタ５６からから供給されたオーディオストリームを１stオーディオデコーダ７５−１に供給するよう選択し（図３１のステップＳ８１でYES）、再生するオーディオストリームが２つである場合、スイッチ５９は、PIDフィルタ５５またはPIDフィルタ５６から供給されたオーディオストリームを２ndオーディオデコーダ７５−２に供給するよう選択（図３１のステップＳ８１でYES）する。
【０２５７】
このように、コントローラ３４は、PlayItemのSTN_table()に基づいて、音声（オーディオ）の切り替えを制御することができる。また、コントローラ３４は、STN_table()のstream_attributeを参照することで、自分自身が再生機能を有するストリームだけを選んで、再生切り替えの制御をすることができる。さらに、コントローラ３４は、STN_table()に基づいて、２つのオーディオストリームを重畳して再生するよう制御することができる。また、コントローラ３４は、１つのメインとなるオーディオストリーム＃１と、オーディオストリーム＃１と同期して再生される同じ種類のストリーム（オーディオストリーム）であるオーディオストリーム＃２とを、ミキシングして再生するよう制御することができる。
【０２５８】
なお、図２９の処理では、オーディオストリーム番号に基づいて、オーディオを切り替えるようにしたが、オーディオストリームＩＤ（audio_stream_id）に基づいて、オーディオを切り替えるようにしてもよい。この場合、オーディオストリーム番号から１を減算したものが、オーディオストリームＩＤとなる。
【０２５９】
また、以上の例では、２つのオーディオストリームをミキシング（合成）して再生する場合の例を説明したが、オーディオストリームに限らず、ストリームの種類が同じであれば、各種のストリームファイルについて同様に適用することができる。例えば、ビデオストリーム（ストリームの種類がビデオストリームであるストリーム）を２つ合成して再生するピクチャインピクチャ表示をする場合にも、この構成は適用することができる。このように、本発明によれば、２つの同じ種類のストリームファイルを合成して再生することができる。
【０２６０】
例えば、メインパスで参照されるＡＶストリームのビデオストリーム（ビデオストリーム＃１）を主画面として表示させ、主画面の中に、サブパス（やメインパス）のビデオパスで参照されるビデオストリーム（ビデオストリーム＃２）を子画面として合成して表示させる、いわゆるPinP（ピクチャインピクチャ）表示などについても利用することができる。
【０２６１】
以上により、メインのＡＶストリームとは別のストリームやデータファイルでオーディオや字幕などを用意する場合に、PlayListの中にメインパスとサブパスを有する構成としたので、ユーザによる音声切り替えや字幕切り替えという操作が、メインＡＶストリームとは異なる別ストリームや別データファイルの中から選ぶことができる。
【０２６２】
また、メインパスのPlayItemの中に、ＡＶストリームファイルに多重化されているデータと、Sub Pathにより参照されるデータのtypeを定義するStream Number Definition Tableを設けるようにしたので、より、拡張性の高いストリームを実現することができる。
【０２６３】
さらに、再生装置２０は、STN_table()のstream_attributeを参照することで、自分自身が有する機能に対応するストリームだけを順次選択して再生することができる。
【０２６４】
以上の処理をまとめると、以下のようになる。
【０２６５】
再生装置２０は、少なくとも１つのストリームを含むメインClip ＡＶストリームファイルの位置を示す主の再生パスであるメインパスと、メインClipＡＶストリームファイルのタイミングに合わせて再生されるサブClip ＡＶストリームファイルのそれぞれの位置を示す複数のサブパスにより構成される再生管理情報としてのPlayListを取得する。そして、再生装置２０は、PlayListに含まれる再生するストリームを選択するためのSTN_table()に基づいて、再生するストリームの選択を受け付ける。STN_table()は、メインClip ＡＶストリームファイルの所定の種類のストリーム（例えば、オーディオストリーム＃１）と、そのストリームの再生のタイミングに合わせて再生される、同じ種類のストリームファイル（例えば、オーディオストリーム＃２）とを選択するための情報であるので、このSTN_table()（PlayItemで示されるSTN_table()）に基づいて、再生するストリームの選択を受け付ける。
【０２６６】
ここで、２つの同じ種類のストリーム（オーディオストリーム）が再生するストリームとして選択された場合、再生装置２０は、選択された２つのストリームファイルを読み出し、再生装置２０のミキシング処理部１０１は、この２つのオーディオストリーム（デコードされたオーディオストリーム）を合成し、ミキシング処理部９７（ＡＶデコーダ部３３）は、合成されたストリームを再生（出力）する。
【０２６７】
これにより、図３２に示されるように、Ａ＿ＳＮ＝２のオーディオ１とＡ＿ＳＮ２＝２のオーディオ５の２つが再生するストリームとしてユーザに選択された場合（切り替えられて選択された場合）、オーディオ１とオーディオ５とをミキシング（合成）して再生することができる。
【０２６８】
また、PlayListにMain PathとSub Pathを含め、Main PathとSub Pathが異なるClipを参照する構成としたので、ストリームに拡張性を持たせることができる。また、１つのSub Pathで複数のファイルを参照可能な構成としたので（例えば、図８）、複数の異なるストリームの中からユーザが選択することができる。
【０２６９】
さらに、Main PathのPlayItemの中に、Main Pathにより参照されるＡＶストリームファイルに多重化されている（含まれる）付属データ（例えば、Main Pathにより参照されるＡＶストリームファイルに含まれるオーディオストリーム）と、Sub Pathにより参照される付属データとを定義するテーブルとして、図１４のSTN_table()を設けるようにしたので、より、拡張性の高いストリームを実現することができる。また、STN_table()にエントリーすれば、Sub Pathを容易に拡張することができる。
【０２７０】
また、STN_table()にストリームの属性情報である図１６のstream_attribute()を設けるようにしたので、再生装置２０側で、選択されたストリームを再生可能か否かを判定することができる。さらに、stream_attribute()を参照することで、再生機能を有するストリームだけを選択して再生することができる。
【０２７１】
さらに、STN_table()（図１４）において、２つの同じ種類のストリームファイル（ここでは、オーディオストリームファイル）を定義するようにし、さらに、図２０の再生装置２０に２つのオーディオデコーダ（１stオーディオデコーダ７５−１と２ndオーディオデコーダ７５−２）を設けるとともに、２つのオーディオデコーダによりデコードされたオーディオデータを合成（ミキシング）するミキシング処理部１０１を設けるようにしたので、２つの同じ種類のストリームを組み合わせて同時に再生することができる。
【０２７２】
また、Sub Pathには、図１１に示されるように、Sub Pathのタイプ（オーディオやテキスト字幕といったタイプ）を示すSubPath_type、Sub Pathが参照するサブClipの名を示す図１２のClip_Information_file_name、およびSub Pathが参照するClipのイン点を示す図１２のSubPlayItem_IN_timeとアウト点を示す図１２のSubPlayItem_OUT_timeを含むようにしたので、Sub Pathが参照するデータを的確に特定することができる。
【０２７３】
さらに、Sub Pathには、Sub PathがMain Pathとを同じタイミングで再生するためのMain Path上のＡＶストリームファイルを指定する指定情報である図１２のsync_PlayItem_id（例えば、図７と図８のsync_PlayItem_id）と、Sub Pathが参照するデータのイン点がMain Pathの時間軸上で同期してスタートするMain Path上の時刻であるsync_start_PTS_of_PlayItem（例えば、図７と図８のsync_start_PTS_of_PlayItem）とをさらに含むため、図７や図８に示されるように、Main Pathが参照するメインClipＡＶストリームファイルに同期してSub Pathが参照するデータ（ファイル）を再生することができる。
【０２７４】
なお、図２５のストレージドライブ３１が読み出すデータは、DVD（Digital Versatile Disc）などの記録媒体に記録されているデータであってもよいし、ハードディスクに記録されているデータであってもよいし、図示せぬネットワークを介してダウンロードしたデータであってもよいし、これらが組み合わされたデータでもよい。例えば、ダウンロードされ、ハードディスクに記録されたPlayListおよびサブClip AV Streamを含むClipと、DVDに記録されたメインClip AV Streamを含むClipに基づいて、再生されてもよい。また、例えば、DVDに記録されたClipをサブClip AV Streamを含むClipとして認識とするようなPlayListと、メインClip AV Streamを含むClipとがハードディスクに記録されている場合に、ハードディスクに記録されているPlayListに基づいて、メインClip AV StreamとサブClip AV Streamがそれぞれ、ハードディスクとDVDから読み出され再生されてもよい。
【０２７５】
また、２つのオーディオストリームをミキシングして再生する場合、再生装置２０の１stオーディオデコーダ７５−１はオーディオストリーム＃１をデコードし、２ndオーディオデコーダ７５−２はオーディオストリーム＃２をデコードするのであるが、コーデック（エンコード）方式が同一（例えば、図１７のDolby AC-3 audio）であるか否かを、図２９のステップＳ５４と図３０のステップＳ７４の処理でさらに判定するようにしてもよい。このことは、１stオーディオデコーダ７５−１と２ndオーディオデコーダ７５−２がオーディオストリームをデコードしている途中であっても、コーデック方式が同一であれば、デコード途中のデータ方式も同様であるので、ミキシング処理部１０１によりミキシング可能となるからである。
【０２７６】
なお、以上の例では、図２５の再生装置２０の１stオーディオデコーダ７５−１でデコードされるオーディオストリーム＃１と、２ndオーディオデコーダ７５−２でデコードされるオーディオストリーム＃２とを、ユーザが別々に選択可能な構成としたが、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義し、ミキシング再生する場合には、この組み合わせの中からユーザに選択させる構成としてもよい。すなわち、オーディオストリーム＃１とミキシング再生可能なオーディオストリーム＃２の組み合わせを定義しておくようにしてもよい。この場合の例を、図３３乃至図３７を参照して２つ説明する。
【０２７７】
最初に、１番目の例を説明する。図３３は、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義する場合のSTN_table()のシンタクスのの第２の例（第２のSTN_table()）を示す図である。なお、図中、図１４と同一の部分については、繰り返しになるのでその説明は省略する。
【０２７８】
図３３において、オーディオストリームＩＤ２ (audio_stream_id2)のforループの中で、順番にstream_entry()ごとに特定される１つのオーディオエレメンタリストリームに、０からaudio_stream_id2が与えられる。このとき、audio_stream_id2に対し、stream_entry()とstream_attribute()との他に、新たにCombination_of_Primary_and_Secondaryが定義される。Combination_of_Primary_and_Secondaryは、オーディオストリーム＃１（Primary）とオーディオストリーム＃２（Secondary）との組み合わせを定義する情報である。すなわち、オーディオストリームＩＤ２(audio_stream_id2)で特定されるオーディオストリーム＃２に対して、どのオーディオストリーム＃１が組み合わせ可能であるかを示す情報が、オーディオストリームＩＤ２のforループの中で定義される。換言すれば、Combination_of_Primary_and_Secondaryにより、オーディオストリーム＃１に対して組み合わせ可能なオーディオストリーム＃２が定義される。このように、オーディオストリームＩＤ１のfor ループ内で組み合わせるオーディオストリームＩＤ２を定義するのではなく、オーディオストリームＩＤ１とオーディオストリームＩＤ２を個別に定義し、オーディオストリームＩＤ２のforループの中で組み合わせを定義することにより、オーディオストリームＩＤ１の登録可能数が決まっている場合にでも、組み合わせの登録を１つとカウントさせないことにより、その登録可能数を有効に使うことができる。
【０２７９】
なお、図１４を参照して説明したように、オーディオストリームＩＤ２（audio_stream_id2）の代わりに、オーディオストリーム番号２（audio_stream_number2）を用いるようにしてもよい。この場合、audio_stream_number2は、０ではなく１から与えられる。すなわち、audio_stream_id2の値に１を加算したものがaudio_stream_number2である。オーディオストリーム番号２は、音声切り替えに使われる、ユーザから見えるオーディオストリーム番号２であるので、１から定義される。
【０２８０】
ここで、図３３のCombination_of_Primary_and_Secondaryのビットマップシンタクスの例を、図３４を参照して説明する。
【０２８１】
Combination_of_Primary_and_Secondaryのビットマップシンタクスは、図３４の例の場合、３２ｂitとされる。図３４において、audio_stream_idは、図３３の第２のSTN_table()で定義されるaudio_stream_id（オーディオストリームＩＤ）を示しており、indicatorの値は、対応するaudio_stream_id2（オーディオストリームＩＤ２）のオーディオストリーム＃２と組み合わせ可能なオーディオストリーム＃１を特定するaudio_stream_idを示すフラグである。すなわち、audio_stream_idとindicatorとにより、audio_stream_id2で与えられるオーディオストリーム＃２と組み合わせ可能なオーディオストリーム＃１のaudio_stream_idを特定することができる。
【０２８２】
すなわち、図３７においてaudio_stream_id2のforループの中にCombination_of_Primary_and_Secondaryが規定されるように、それぞれのaudio_stream_id2に対して、Combination_of_Primary_and_Secondaryが存在し、ある特定のaudio_stream_id2により特定されるオーディオストリーム＃２に対して組み合わせが可能なオーディオストリーム＃１が、indicatorにより示されるaudio_stream_idにより特定される。
【０２８３】
具体的には、Indicatorの値が０の場合、そのaudio_stream_id2は、audio_stream_idで特定されるオーディオストリーム＃１に対応していないことを示し、indicatorの値が１の場合、そのaudio_stream_id2は、audio_stream_idで特定されるオーディオストリーム＃１に対応していることを示す。
【０２８４】
すなわち、図３４の例の場合、audio_stream_id2（オーディオストリームＩＤ２）で特定されるオーディオストリーム＃２には、audio_stream_id＝０と、audio_stream_id＝１で特定される２つのオーディオストリーム（オーディオストリーム＃１）が組み合わせ可能であることが示されている。
【０２８５】
なお、図３４においては、組み合わせ可能なオーディオストリーム＃１を、audio_stream_idで特定するようにしたが、audio_stream_idの代わりに、オーディオストリーム番号を用いるようにしてもよい。この場合、audio_stream_idは、０ではなく１から与えられる。
【０２８６】
図３４のように、Combination_of_Primary_and_Secondaryを３２bitのビットマップシンタクスで定義するようにしたので、３２本のオーディオストリーム＃１に対して、組み合わせ可能なオーディオストリーム＃２をそれぞれ定義することができる。
【０２８７】
図３３と図３４によれば、audio_stream_idおよびaudio_stream_id2、並びに、Combination_of_Primary_and_Secondaryを用いて、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義することができる。すなわち、矛盾するようなオーディオストリームの組み合わせを定義せずに済むので、ユーザは、常に再生可能なオーディオストリームの組み合わせの再生を選択することができる。
【０２８８】
具体的な例を、図３５を参照して説明する。図３５は、ユーザに提供する音声信号と字幕信号の関係を表すストリームナンバーテーブルの例を示す図である。なお、図中、字幕信号（サブピクチャ）の記載については、図２４と同様であるので、その説明は省略する。
【０２８９】
図３５においては、PlayListのMain Pathを構成するPlayItemのSTN_table()でエントリーされるオーディオストリーム＃１（audio_stream_idでエントリーされるオーディオストリーム）のそれぞれにＡ＿ＳＮが与えられる。
【０２９０】
具体的には、Ａ＿ＳＮ＝１にオーディオ２が与えられ、Ａ＿ＳＮ＝２にオーディオ１が与えられ、Ａ＿ＳＮ＝３にオーディオ３が与えられている。
【０２９１】
このとき、Ａ＿ＳＮ＝１のオーディオ２に対しては、オーディオ４（audio_stream_id2＝０、すなわち、オーディオストリーム番号２が１であるオーディオ４）が組み合わせ可能とされている。また、Ａ＿ＳＮ＝２のオーディオ１に対しては、オーディオ４（audio_stream_id2＝０、すなわち、オーディオストリーム番号２が１であるオーディオ４）とオーディオ５（audio_stream_id2＝１、すなわち、オーディオストリーム番号２が２であるオーディオ５）とが組み合わせ可能とされている。
【０２９２】
具体的には、オーディオ４（audio_stream_id2＝０のオーディオ４）の場合、図３４のCombination_of_Primary_and_Secondaryのビットマップシンタクスは、audio_stream_id＝０とaudio_stream_id＝１に対するindicatorの値がともに１とされ、audio_stream_id＝２からaudio_stream_id＝３１までのindicatorの値は、すべて０とされる。また、オーディオ５（audio_stream_id2＝１のオーディオ５）の場合、図３４のCombination_of_Primary_and_Secondaryのビットマップシンタクスは、audio_stream_id＝１に対するindicatorの値のみが１とされ、audio_stream_id＝０と、audio_stream_id＝２からaudio_stream_id＝３１までのindicatorの値は、すべて０とされる。
【０２９３】
ユーザは、Ａ＿ＳＮが与えられているオーディオストリームの中から、再生するオーディオストリーム＃１を選択し、選択したオーディオストリーム＃１とミキシングするオーディオストリーム＃２を、Ａ＿ＳＮが与えられているオーディオストリームの図中右側に表示されているものの中から選択する。図３５の例の場合、オーディオストリーム＃１として、オーディオ２（Ａ＿ＳＮ＝１）を選択する場合、ミキシング可能なオーディオストリーム＃２は、オーディオ２の図中右側に表示されているオーディオ４のみであるので、これを、ミキシング再生するか否かを選択する。図３５においては、Ａ＿ＳＮ＝１のオーディオ２に対応するオーディオ４は、「×」、すなわち、ミキシング再生を選択しない状態とされている。ユーザは、この「×」を切り替えて「○」とすることで、オーディオ２とオーディオ４とのミキシング再生が選択された状態とすることができる。
【０２９４】
また、例えば、図３５の例の場合、オーディオストリーム＃１として、オーディオ１（Ａ＿ＳＮ＝２）を選択する場合、ミキシング可能なオーディオストリーム＃２は、オーディオ２の図中右側に表示されているオーディオ４とオーディオ５の中から選択することができる。そのため、ユーザは、オーディオストリーム＃１をどのオーディオストリーム＃２と再生するか否かを選択する。図３５においては、Ａ＿ＳＮ＝２のオーディオ１に対応するオーディオ４とオーディオ５は、「×」、すなわち、ミキシング再生を選択しない状態とされている。ユーザは、この「×」を切り替えて「○」とすることで、オーディオ２とオーディオ４、またはオーディオ２とオーディオ５のミキシング再生を選択する状態とすることができる。
【０２９５】
この再生の選択の具体的な例としては、Ａ＿ＳＮ＝１のオーディオ２が選択されている場合に、ユーザが、オーディオの切り替えを指令した場合、Ａ＿ＳＮ＝１のオーディオ２とオーディオ４との組み合わせの再生（図３５のオーディオ２に対応するオーディオ４が「○」となる）に切り替えられ、ユーザが、さらにオーディオの切り替えを指令した場合、オーディオは、Ａ＿ＳＮ＝２のオーディオ１の再生（図３５のオーディオ２に対応するオーディオ４が「×」となる）に切り替えられ、ユーザが、さらにオーディオの切り替えを指令した場合、オーディオは、Ａ＿ＳＮ＝２のオーディオ１とオーディオ４との組み合わせの再生（図３５のオーディオ１に対応するオーディオ４が「○」となる）に切り替えらる。また、ユーザが、さらにオーディオの切り替えを指令した場合、オーディオは、Ａ＿ＳＮ＝２のオーディオ１とオーディオ５との組み合わせの再生（図３５のオーディオ１に対応するオーディオ４が「×」となり、オーディオ５が「○」となる）に切り替えられる。
【０２９６】
ユーザは、このようにして再生されるオーディオストリームの選択を切り替えて、例えば、図３６に示されるように、Ａ＿ＳＮ２のオーディオ１とオーディオ５との組み合わせの再生を選択することができる。これにより、オーディオ１（オーディオストリーム＃１）とオーディオ５（オーディオストリーム＃２）とをミキシング再生することができる。
【０２９７】
このように、audio_stream_idおよびaudio_stream_id2、並びに、Combination_of_Primary_and_Secondaryを用いて、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義するようにすることで、矛盾するような組み合わせを定義せずに済み、ユーザは、常に再生可能なオーディオストリームの組み合わせを選択することができる。すなわち、図３５の例においては、矛盾するオーディオストリームの組み合わせであるオーディオ２＋オーディオ５を定義しないようにすることで、ユーザに、選択可能なもののみを提供することができる。
【０２９８】
換言すれば、PlayItem()の中の第２のSTN table()（図３３）で、図２５の１stオーディオデコーダ７５−１でデコードするオーディオストリーム＃１と、２ndオーディオデコーダ７５−２でデコードするオーディオストリーム＃２との組み合わせを、Combination_of_Primary_and_Secondaryを用いて定義するようにしたので、２つのオーディオストリームをミキシングして再生することができる。すなわち、複数の種類からなるストリームから、同じ種類（この例の場合、オーディオストリーム）のストリームをミキシング（重畳、または合成）して、同時に再生することができる。
【０２９９】
また、このような構成とすることにより、ユーザは、ミキシングする２つのオーディオストリームを個々に選ぶ必要がなく、２つのオーディオストリームが組み合わせられたものの中から、再生するオーディオストリームを選択することができる。
【０３００】
次に、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義し、ミキシング再生する場合、すなわち、オーディオストリーム＃１とオーディオストリーム＃２の組み合わせの中からユーザに再生の選択をさせる構成とする場合の２番目の例を、図３７を参照して説明する。換言すれば、図３７は、オーディオストリーム＃１とミキシング再生可能なオーディオストリームを、オーディオストリーム＃２として定義する場合の２番目の例である。
【０３０１】
図３７は、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義する場合のSTN_table()のシンタクスの第３の例（第３のSTN_table()）を示す図である。なお、図中、図１４と同一の部分については、繰り返しになるのでその説明は省略する。
【０３０２】
図３７において、オーディオストリームＩＤ２ (audio_stream_id2)のforループの中で、順番にstream_entry()ごとに特定される１つのオーディオエレメンタリストリームに、０からaudio_stream_id2が与えられる。このとき、audio_stream_id2に対して、number_of_combinationsが与えられ、number_of_combinationsの後のfor文では、number_of_combinationsの数だけ、audio_stream_idが与えられる。number_of_combinationsと、number_of_combinationsの後のfor文は、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義する情報であり、audio_stream_id2で特定されるオーディオストリーム＃２と組み合わせ可能なオーディオストリーム＃１の数が、number_of_combinationsとされる。そして、audio_stream_id2で特定されるオーディオストリーム＃２と組み合わせ可能なオーディオストリーム＃１を特定するaudio_stream_idが、number_of_combinationsの後のfor文で定義される。
【０３０３】
すなわち、図３３とは異なり、図３７の第３のSTN_table()のオーディオストリームＩＤ２ (audio_stream_id2)のfor文の中では、そのオーディオストリームＩＤ２で特定されるオーディオストリーム＃２に対して、オーディオストリーム＃１との組み合わせ可能な数がnumber_of_combinationsで定義され、number_of_combinationsの後のfor文で、対象となるオーディオストリーム＃１を特定するaudio_stream_idを直接定義している。
【０３０４】
このように、第３のSTN_table()においては、オーディオストリームＩＤ２(audio_stream_id2)で特定されるオーディオストリーム＃２に対して、どのオーディオストリーム＃１が組み合わせ可能であるかを示す情報が、オーディオストリームＩＤ２のnumber_of_combinationsの後のfor文で定義される。すなわち、オーディオストリームＩＤ２のnumber_of_combinationsの後のfor文により、オーディオストリーム＃１に対して組み合わせ可能なオーディオストリーム＃２が定義される。
【０３０５】
なお、図１４を参照して説明したように、オーディオストリームＩＤ２（audio_stream_id2）の代わりに、オーディオストリーム番号２（audio_stream_number2）を用いるようにしてもよい。また、オーディオストリームＩＤ（audio_stream_id）の代わりに、オーディオストリーム番号（audio_stream_number）を用いるようにしてもよい。すなわち、number_of_combinationsの後のfor文で定義されるaudio_stream_idも、オーディオストリーム番号としてもよい。
【０３０６】
図３７によれば、number_of_combinationsと、その後のfor文を用いて、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義することができる。すなわち、矛盾するようなオーディオストリームの組み合わせを定義せずに済むので、ユーザは、常に再生可能なオーディオストリームの組み合わせの再生を選択することができる。
【０３０７】
この場合のストリームナンバーテーブルの具体的な例は、図３５および図３６を用いて説明した場合と同様である。
【０３０８】
すなわち、図３５が図３７の第３のSTN_table()に対応する場合、オーディオ４（audio_stream_id2＝０、すなわち、オーディオストリーム番号２が１であるオーディオ４）に対して、組み合わせ可能なオーディオストリーム＃１として、Ａ＿ＳＮ＝１のオーディオ２（audio_stream_id＝０）と、Ａ＿ＳＮ＝２のオーディオ１（audio_stream_id＝１）とが定義されていることになる。この場合、図３７のaudio_stream_id2＝０に対応するnumber_of_combinationsの数は２つであり、定義されるaudio_stream_idは、audio_stream_id＝０とaudio_stream_id＝１である。また、オーディオ５（audio_stream_id2＝１、すなわち、オーディオストリーム番号２が２であるオーディオ５）に対して、組み合わせ可能なオーディオストリーム＃１として、Ａ＿ＳＮ＝２のオーディオ１（audio_stream_id＝１）が定義されていることになる。この場合、図３７のaudio_stream_id2＝１に対応するnumber_of_combinationsの数は１つであり、定義されるaudio_stream_idは、audio_stream_id＝１である。
【０３０９】
ユーザは、図３５に示されるオーディオの再生の選択を切り替えて、例えば、図３６に示されるように、Ａ＿ＳＮ＝２のオーディオ１とオーディオ５との組み合わせの再生を選択する。これにより、オーディオ１（オーディオストリーム＃１）とオーディオ５（オーディオストリーム＃２）とをミキシング再生することができる。
【０３１０】
このように、図３７のnumber_of_combinationsと、その後のfor文を用いて、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義するようにすることで、矛盾するような組み合わせを定義せずに済み、ユーザは、常に再生可能なオーディオストリームの組み合わせを選択することができる。すなわち、図３５の例においては、矛盾するオーディオストリームの組み合わせであるオーディオ２＋オーディオ５を定義しないようにすることで、ユーザに、選択可能なもののみを提供することができる。
【０３１１】
換言すれば、PlayItem()の中のSTN table()（図３７）で、図２５の１stオーディオデコーダ７５−１でデコードするオーディオストリーム＃１と、２ndオーディオデコーダ７５−２でデコードするオーディオストリーム＃２との組み合わせを、number_of_combinationsと、その後のfor文とを用いて定義するようにしたので、２つの組み合わせ可能なオーディオストリームをミキシングして再生することができる。すなわち、複数の種類からなるストリームから、同じ種類（この例の場合、オーディオストリーム）のストリームをミキシング（重畳、または合成）して、同時に再生することができる。
【０３１２】
また、第３のSTN_table()を用いることにより、ユーザは、ミキシングする２つのオーディオストリームを個々に選ぶ必要がなく、２つのオーディオストリームが組み合わせられたものの中から、再生するオーディオストリームを選択することができる。
【０３１３】
次に、図３８は、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義する場合のSTN_table()のシンタクスのの第４の例（第４のSTN_table()）を示す図である。なお、図中、図１４や図３７と同一の部分については、繰り返しになるのでその説明は省略する。
【０３１４】
図３８の例のオーディオストリームＩＤ (audio_stream_id)のforループの中で、順番にstream_entry()ごとに特定される１つのオーディオストリーム＃１に、０からaudio_stream_idが与えられることと、その後に配置されるstream_attribute()とについては、図１４の例と同様とされている。
【０３１５】
ただし、図３８の例のオーディオストリームＩＤ (audio_stream_id)のforループの中には、さらに、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義する次のような情報が含まれる。即ち、number_of_audio_stream2_entriesが０でない場合（if(number_of_audio_stream2_entries!=0)）、number_of_audio_stream2_ref_entriesが与えられる。number_of_audio_stream2_ref_entriesは、audio_stream_idで特定されるオーディオストリーム＃１と組み合わせ可能なオーディオストリーム＃２の数を示す。そして、audio_stream_idで特定されるオーディオストリーム＃１と組み合わせ可能なオーディオストリーム＃２を特定するaudio_stream2_id_refが、number_of_audio_stream2_ref_entriesの後のfor文で定義される。
【０３１６】
なお、他の例と同様に、オーディオストリームＩＤ２ref（audio_stream_id2_ref）の代わりに、オーディオストリーム番号２ref（audio_stream_number2_ref）を用いるようにしてもよい。また、オーディオストリームＩＤ（audio_stream_id）の代わりに、オーディオストリーム番号（audio_stream_number）を用いるようにしてもよい。
【０３１７】
このように、図３８を用いて説明した第４の例のSTN_table（）を利用しても、オーディオストリーム＃１とオーディオストリーム＃２との組み合わせを定義することができる。すなわち、矛盾するようなオーディオストリームの組み合わせを定義せずに済むので、ユーザは、常に再生可能なオーディオストリームの組み合わせの再生を選択することができる。
【０３１８】
ところで、上述したように、本発明の再生装置に装着される記録媒体上のアプリケーションフォーマットは、PlayListとClipの２つのレイヤを有している。そして、PlayListは、１つ以上のPlayItemの並びによって（連続するPlayItemにより）作られるメインパス(Main Path)と、そのMain Pathに並行（並列）して、１つ以上のSubPlayItemの並びによって（非連続でもよいし、連続してもよいSubPlayItemにより）作られるサブパス（Sub Path）を1以上含むことができる。
【０３１９】
従って、例えば図３９に示されるように、１画面のうちの、全画面３０１に、メインパスで参照されるＡＶストリーム（図３９中、Primary Videoと記述されているビデオストリーム３１１、および、Primary Audioと記述されているオーディオストリーム３１２）に対応する映画本編等のコンテンツを再生させるとともに、全画面３０１に配置される子画面３０２に、サブパスで参照されるＡＶストリーム（図３９中、Secondary Videoと記述されているビデオストリーム３１３、および、Secondary Audioと記述されているオーディオストリーム３１４）に対応する映画の監督のコメンタリー等、メインパスで参照されるAVストリームとは別のコンテンツを再生させる、といった手法を適用することが可能になる。
【０３２０】
即ち、全画面（親画面）３０１と子画面３０２のそれぞれに別々のコンテンツを同時再生させる、といった手法を適用することが可能になる。
【０３２１】
このような手法は、ピクチャインピクチャ(Picture in Picture)手法と称される。
【０３２２】
なお、Primary Audioと記述されているオーディオストリーム３１２に対応する音声と、Secondary Audioと記述されているオーディオストリーム３１４に対応する音声との再生とは、上述したように、それら２つのオーディオストリームに対してミキシング処理が施された結果得られる音声の出力のことをいう。
【０３２３】
また、実際の再生対象は、上述したように、各ストリームに対応する音声や画像であるが、以下の説明においては、説明の簡略上、各ストリームとする場合もある。即ち、所定のストリームを再生する、といった表現を使用する場合もある。
【０３２４】
ピクチャインピクチャ手法を適用するアプリケーションを実現するためには、例えば、次のようなシンタクス（Syntax）が必要になる。即ち、例えば、図４０および図４１の例のSTN_ definition Tableにおけるvideo_stream_idで指定されるビデオストリーム（以下、プライマリビデオストリームと称する。例えば、図３９の例では、Primary Videoと記述されているビデオストリーム３１１を、プライマリビデオストリーム３１１と称する）の数は、１つとされている。そこで、このことを考慮して、プライマリビデオストリームと同時に再生され得るストリームの組み合わせを定義するSyntaxがあれば、ピクチャインピクチャ手法の実現、即ち、ピクチャインピクチャを適用するアプリケーションの実現が可能になる。
【０３２５】
ここで、ピクチャインピクチャ手法により、プライマリビデオストリームと同時に再生され得るストリームとして、例えば本実施の形態では、次の第１乃至第４の種類のストリームが用意されている。
【０３２６】
第１の種類のストリームとは、図４０および図４１の例のSTN_ definition Tableにおけるaudio_stream_idで指定されるオーディオストリーム、即ち、上述したオーディオストリーム＃１（以下、プライマリオーディオストリームと称する。例えば、図３９の例では、Primary Audioと記述されているオーディオストリーム３１２を、プライマリオーディオストリーム３１２と称する）のことをいう。
【０３２７】
第２の種類のストリームとは図４０および図４１の例のSTN_ definition Tableにおけるvideo_stream_id2で指定されるビデオストリーム（以下、セカンダリビデオストリームと称する。例えば、図３９の例では、Secondary Videoと記述されているビデオストリーム３１３を、セカンダリビデオストリーム３１３と称する）のことをいう。
【０３２８】
第３の種類のストリームとは図４０および図４１の例のSTN_ definition Tableにおけるaudio_stream_id2で指定されるオーディオストリーム、即ち、上述したオーディオストリーム＃２（以下、セカンダリオーディオストリームと称する。例えば、図３９の例では、Secondary Audioと記述されているオーディオストリーム３１４を、セカンダリオーディオストリーム３１４と称する）のことをいう。
【０３２９】
第４の種類のストリームとは、サブパスで参照されるテキスト字幕ストリーム(txtST)や、DVDのサブピクチャのようなビットマップ字幕をランレングス符号化したストリーム（PG, Presentation Graphics stream）等のことをいう。例えば図３９の例では、Subtitleと記述されているストリーム３１５が、第４の種類のストリームの一例である。なお、以下、第４の種類のストリームを、即ち、txtSTやPG等をまとめて、サブタイトルストリームと称する。なお、サブタイトルストリームの再生位置（字幕等の表示位置）は、特に子画面内である必要は無く、全画面のうちの何れの位置でもよい。このため、図３９の例では、サブタイトルストリーム３１５は、子画面３０２からはみ出すように描画されている。
【０３３０】
以上説明したように、ピクチャインピクチャ手法を適用するアプリケーションを実現するためには、例えば、プライマリビデオストリームと組み合わせて同時再生され得るストリームの組み合わせの定義、即ち、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせの定義が必要となる。
【０３３１】
さらに、複数の組み合わせを定義することで、全画面３０１に再生されるプライマリビデオストリームやプライマリオーディオスオストリームの切り替えのみならず、子画面３０２に再生されるセカンダリビデオストリームの切り替えや、サブタイトルストリームの切り替えも容易に行えるようになる。ただし、その切り替え操作の例については、図４２と図４３を参照して後述する。
【０３３２】
このような、プライマリビデオストリームと組み合わせて同時再生され得るストリームの組み合わせの定義は、例えば、図４０と図４１に示されるようにSTN_tableにて行うことが可能である。即ち、図４０と図４１とは、プライマリビデオストリームと組み合わせて同時再生され得る、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせを定義する場合のSTN_table()のシンタクスの第５の例（第５のSTN_table()）を示す図である。なお、図中、上述した図３７と同一の部分については、繰り返しになるのでその説明は省略する。
【０３３３】
図４０と図４１の例では、プライマリビデオストリームと組み合わせて同時再生され得る、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせは、次のように定義される。即ち、最初に、プライマリビデオストリームと組み合わせて同時再生され得るセカンダリビデオストリームが１以上定義される。そして、１以上のセカンダリビデオストリームのそれぞれに対して、同時に再生され得るオーディオストリーム（プライマリオーディオストリームとセカンダリオーディオストリーム）とサブタイトルストリームとが定義される。
【０３３４】
具体的には、図４０において、number_of_video_stream2_entriesは、STN_table()の中でエントリーされる（登録される）video_stream_id2が与えられるストリーム数を示す。video_stream_id2は、セカンダリビデオストリームを識別するための情報であり、video_stream_number2は、ビデオ切り替えに使われる、ユーザから見えるセカンダリビデオストリーム番号である。
【０３３５】
図４１において、ビデオストリームＩＤ２ (video_stream_id2)のforループの中で、順番にstream_entry()ごとに特定される１つのビデオエレメンタリストリーム(セカンダリビデオストリームとなるビデオエレメンタリストリーム)に、０からvideo_stream_id2が与えられる。
【０３３６】
このとき、video_stream_id2に対して、number_of_Audio_combinations_for_video2が与えられ、その後のfor文では、number_of_Audio_combinations_for_video2の数だけ、audio_stream_idとaudio_stream_id2が与えられる。number_of_Audio_combinations_for_video 2とその後のfor文とは、セカンダリビデオストリームと同時再生されるオーディオストリームの組み合わせ、即ち、audio_stream_idで特定されるプライマリオーディオストリームと、audio_stream_id2で特定されるセカンダリオーディオストリームとの組み合わせを定義する情報である。video_stream_id2で特定されるセカンダリビデオストリームと組み合わせ可能なオーディオストリームの組（プライマリオーディオストリームとセカンダリオーディオストリームとの組）の数が、number_of_Audio_combinations_for_video2とされる。そして、video_stream_id2で特定されるセカンダリビデオストリームと組み合わせ可能なオーディオストリームの組として、プライマリオーディオストリームを特定するaudio_stream_idと、セカンダリオーディオストリームを特定するaudio_stream_id2とが、number_of_Audio_combinations_for_video2の後のfor文でそれぞれ定義される。
【０３３７】
また、同じvideo_stream_id2に対して、number_of_Subtitle_combinations_for_video2が与えられ、その後のfor文では、number_of_Subtitle_combinations_for_video2の数だけ、PG_textST_stream_idが与えられる。number_of_Subtitle_combinations_for_video2とその後のfor文とは、セカンダリビデオストリームと同時再生されるサブタイトルストリームの組み合わせ、即ち、PG_textST_stream_idで特定されるサブタイトルストリームの組み合わせを定義する情報である。video_stream_id2で特定されるセカンダリビデオストリームと組み合わせ可能なサブタイトルストリームの数が、number_of_Subtitle_combinations_for_video2とされる。そして、video_stream_id2で特定されるセカンダリビデオストリームと組み合わせ可能なサブタイトルストリームを特定するPG_textST_stream_idが、number_of_Subtitle_combinations_for_video2の後のfor文で定義される。
【０３３８】
なお、図１４や図３７を参照して説明したように、各ＩＤの代わりに各番号、例えば、audio_stream_idの代わりに、オーディオストリーム番号（audio_stream_number）を用いたり、audio_stream_id2の代わりに、オーディオストリーム番号２（audio_stream_number2）を用いるようにしてもよい。ビデオストリームやサブタイトルストリームについても同様である。
【０３３９】
図４０と図４１を用いて説明した第５のSTN_table()によれば、video_stream_id2を用いて、プライマリビデオストリームと同時再生されるセカンダリビデオストリームを定義することができ、さらに、そのvideo_stream_id2、および、audio_stream_id、audio_stream_id2、並びに、PG_textST_stream_idを用いて、そのセカンダリビデオストリームと同時再生され得る、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせを定義することができる。即ち、プライマリビデオストリームと同時再生され得る、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせを定義することができる。
【０３４０】
従って、プライマリビデオストリームと同時再生され得る、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせとして、矛盾するような組み合わせを定義せずに済むので、ユーザは、プライマリビデオストリームと同時再生可能なストリームの組み合わせの再生を容易に選択することができる。
【０３４１】
具体的な例を、図４２と図４３を参照して説明する。図４２は、図４０と図４１を用いて説明した第５のSTN_table()が用いられた場合の、ユーザに提供するプライマリオーディオストリームまたはセカンダリオーディオストリームに対応する音声信号、セカンダリビデオストリームに対応する映像信号、および、サブタイトルストリームに対応する字幕信号の組み合わせの関係を表すストリームナンバーテーブルの例を示す図である。なお、図中、音声信号（オーディオ）と字幕信号（サブピクチャ）との記載については、図２４または図３５と同様であるので、その説明は省略する。
【０３４２】
図４２においては、PlayListのMain Pathを構成するPlayItemのSTN_table()でエントリーされるセカンダリビデオストリーム（video_stream_id2でエントリーされるセカンダリビデオストリーム）のそれぞれにＶ２＿ＳＮ（Video2 Stream Number:セカンダリビデオストリーム番号とも称する）が与えられる。
【０３４３】
具体的には、Ｖ２＿ＳＮ＝１にビデオ２が与えられ、Ｖ２＿ＳＮ＝２にビデオ１が与えられている。
【０３４４】
このとき、Ｖ２＿ＳＮ＝１のビデオ２に対しては、プライマリオーディオストリームとしてオーディオ２（図４１のvideo_stream_id2がビデオ２を特定するIDである場合のfor文中において、audio_stream_idでエントリーされるプライマリオーディオストリーム）が、セカンダリオーディオストリームとしてオーディオ４（図４１のvideo_stream_id2がビデオ２を特定するIDである場合のfor文中において、audio_stream_id2でエントリーされるセカンダリオーディオストリーム）が、サブタイトルストリームとしてサブピクチャ３（図４１のvideo_stream_id2がビデオ２を特定するIDである場合のfor文中において、PG_textST_stream_idでエントリーされるサブタイトルストリーム）が、それぞれ組み合わせ可能とされている。
【０３４５】
また、Ｖ２＿ＳＮ＝２のビデオ１に対しては、プライマリオーディオストリームとしてオーディオ１（図４１のvideo_stream_id2がビデオ１を特定するIDである場合のfor文中において、audio_stream_idでエントリーされるプライマリオーディオストリーム）が、セカンダリオーディオストリームとしてオーディオ４若しくはオーディオ５（図４１のvideo_stream_id2がビデオ１を特定するIDである場合のfor文中において、２つのaudio_stream_id2のそれぞれでエントリーされる２つのセカンダリオーディオストリームのそれぞれ）が、サブタイトルストリームとしてサブピクチャ１（図４１のvideo_stream_id2がビデオ１を特定するIDである場合のfor文中において、PG_textST_stream_idでエントリーされるサブタイトルストリーム）が、それぞれ組み合わせ可能とされている。
【０３４６】
即ち、図４１のvideo_stream_id2がビデオ１を特定するIDである場合のfor文中において、Ｖ２＿ＳＮ＝２のビデオ１と同時再生可能なオーディオストリームの組として、次の第１の組と第２の組とがそれぞれ定義されている。第1の組とは、プライマリオーディオストリームがオーディオ１であり、セカンダリオーディオストリームがオーディオ４である組のことをいう。第2の組とは、プライマリオーディオストリームがオーディオ１であり、セカンダリオーディオストリームがオーディオ５である第２の組のことをいう。
【０３４７】
かかる図４２のストリームナンバーテーブルがユーザに呈示された場合（ここでは、呈示形態は特に問わない）、ユーザは、はじめに、映画本編等と同時再生させる監督のコメンタリー等の映像に対応するセカンダリビデオストリームとして、即ち、子画面（図３９の例では子画面３０２）に表示させる映像に対応するセカンダリビデオストリームとして、ビデオ２（ＶＳ＿ＳＮ＝１）とビデオ１（ＶＳ＿ＳＮ２）とのうちの何れか一方を選択することができる（そのような選択操作ができる）。
【０３４８】
例えば、セカンダリビデオストリームとしてビデオ２（ＶＳ＿ＳＮ＝１）が選択された場合には、図４２に示されるように、そのビデオ２（ＶＳ＿ＳＮ＝１）と同時再生可能な組み合わせは、オーディオ２、オーディオ４、およびサブピクチャ３の組み合わせのみである。従って、セカンダリビデオストリームとしてビデオ２（ＶＳ＿ＳＮ＝１）が選択された時点で、ユーザの選択操作は終了となる。
【０３４９】
一方、図４３に示されるように、セカンダリビデオストリームとしてビデオ１（ＶＳ＿ＳＮ＝２）が選択された場合には、そのビデオ１（ＶＳ＿ＳＮ＝２）と同時再生可能な組み合わせとしては、オーディオ１、オーディオ４、およびサブピクチャ１の第１の組み合わせと、オーディオ１、オーディオ５、およびサブピクチャ１の第２の組み合わせ、といった２通りの組み合わせが存在する。従って、セカンダリビデオストリームとしてビデオ１（ＶＳ＿ＳＮ＝２）を選択した場合、ユーザは、さらに、かかる第１の組み合わせと第２の組み合わせとのうちの何れか一方を選択することができる（そのような選択操作ができる）。
【０３５０】
具体的には、例えばここでは、図３５で説明した選択操作と同様に、ユーザは、ビデオ１（ＶＳ＿ＳＮ＝２）と同時再生させるストリームに対して（ストリームナンバーテーブル上の対応する表示の右方に対して）、再生を選択するときには、「×」から「○」に切り換える一方、再生を選択しないときには、「×」のまま保持する、といった選択操作を実行することができる。なお、図３５を用いて説明した場合と同様に、「○」は再生を選択する状態を示すシンボルとされている一方、「×」は再生を選択していない状態を示すシンボルとされている。
【０３５１】
図４３の例では、かかる選択操作により、オーディオ１、オーディオ４、およびサブピクチャ１の第１の組み合わせが選択された結果が示されている。即ち、図４３に示されるように、Ｖ２＿ＳＮ＝２のビデオ１と同時再生されるプライマリオーディオストリームとしてオーディオ１が選択されるので、その選択状態は、「×」から「○」に切り換えられる。また、Ｖ２＿ＳＮ＝２のビデオ１と同時再生されるセカンダリオーディオストリームとしてオーディオ４が選択されるので（オーディオ５が選択されないので）、オーディオ４の選択状態は、「×」から「○」に切り換えられる一方、オーディオ５の選択状態は「×」のまま保持される。また、Ｖ２＿ＳＮ＝２のビデオ１と同時再生されるサブタイトルストリームとしてサブピクチャ１が選択されるので、その選択状態は、「×」から「○」に切り換えられる。
【０３５２】
即ち、以上の一連の選択操作により、ビデオ１、オーディオ１、オーディオ４、および、サブピクチャ１を、メインビデオ（プライマリビデオストリームのことである）とともに再生可能な状態（そのような再生を選択する状態）とすることができる。
【０３５３】
なお、上述した例では、プライマリビデオストリームと同時再生させるストリームの選択操作として、セカンダリビデオストリームを軸とする操作、即ち、先にセカンダリビデオストリームを選択した後、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームを選択する操作について説明した。
【０３５４】
しかしながら、かかる選択操作として、上述した例のみならず、例えば、図３５等を用いて上述した操作と同様にして、先にプライマリオーディオストリームを選択した後、セカンダリビデオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームを選択する操作を採用してもよい。即ち、図４３のストリームナンバーテーブルのうちの、Ａ＿ＳＮ＝１であるオーディオ２、Ａ＿ＳＮ＝２であるオーディオ１、および、Ａ＿ＳＮ＝３であるオーディオ３のうちの何れか１つを、プライマリオーディオストリームとして先に選択した後、図３５等を用いて上述した操作と同様の操作により、セカンダリビデオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームを選択する、といった選択操作を採用することもできる。
【０３５５】
また、例えば、先にサブタイトルストリームを選択した後、プライマリオーディオストリーム、セカンダリビデオストリーム、および、セカンダリオーディオストリームを選択する操作を採用することもできる。即ち、図４３のストリームナンバーテーブルのうちの、Ｓ＿ＳＮ＝１であるサブピクチャ３、Ｓ＿ＳＮ＝２でサブピクチャ１、および、Ｓ＿ＳＮ＝３であるサブピクチャ２のうちの何れか１つを、サブタイトルストリームとして先に選択した後、図４３中図示はされていないが、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリームを選択する、といった選択操作を採用することもできる。
【０３５６】
なお、本実施の形態では、セカンダリオーディオストリームのユーザの切り換え操作は禁止されている。このため、図４３の例では、セカンダリオーディオストリームに対するＡ＿ＳＮは与えられていない。即ち、図４３の例では、オーディオ１乃至３がプライマリオーディオストリームとして利用され、オーディオ４，５がセカンダリオーディオストリームとして利用されている。
【０３５７】
ところで、以上説明した図４０と図４１の第５のSTN_table()を利用するシンタクスにより、ピクチャインピクチャ手法（図３９参照）を実現させる場合、Subpath_typeの種類として上述した図１１を用いて説明した第１の例の種類を利用すると、例えば図４４に示されるPlayListが生成される。
【０３５８】
図４４の例では、メインパス(Main path)を構成するプレイアイテム１（PlayItem1）により参照されるclip AV Stream -0（メインClip AV Stream）に含まれるVideo（ビデオストリーム）とAudio（オーディオストリーム）とのそれぞれが、プライマリビデオストリームとプライマリオーディオストリームのそれぞれとなる。即ち、図３９の例に対応させると、clip AV Stream -0に含まれるVideoとAudioとのそれぞれが、プライマリビデオストリーム３１１とプライマリオーディオストリーム３１２のそれぞれとして、全画面３０１に再生表示されるとともに、音声出力される。
【０３５９】
一方、サブパス１(Sub path-1)に含まれるサブプレイアイテム（SubPlayItem:SPI）により参照されるClip AV Stream -１に含まれる2ndVideo（ビデオストリーム）が、セカンダリビデオストリームとなり、また、サブパス2(Sub path-2)がに含まれるサブプレイアイテム（SPI）としてのClip AV Stream -１に含まれる2ndAudio（オーディオストリーム）が、セカンダリオーディオストリームとなる。即ち、図３９の例に対応させると、Clip AV Stream -1に含まれる2ndVideoと2ndAudioとのそれぞれが、セカンダリビデオストリーム３１３とセカンダリオーディオストリーム３１４のそれぞれとして、子画面３０２に再生表示されるとともに、音声出力される。
【０３６０】
ただし、Clip AV Stream -0に含まれるAudioをプライマリオーディオストリームとして全画面３０１に対応つけて再生（音声出力）させ、かつ、Clip AV Stream -１に含まれる2ndAudioをセカンダリオーディオストリームとして子画面３０２に対応つけて再生（音声出力）させるとは、上述したように、それら２つのオーディオストリームに対してミキシング処理が施された結果得られる音声が再生出力されることを指す。
【０３６１】
このように、図４４の例では、SubPath_typeの種類として図１１の例の種類が利用されて、その結果、メインパス、サブパス１、および、サブパス２により、ピクチャインピクチャ手法が実現されている。
【０３６２】
しかしながら、図４４の例では、プライマリビデオストリームであるClip AV Stream -0のVideoと同時に再生されるセカンダリビデオストリームとセカンダリオーディオストリームとのそれぞれは、同一のClip AV Stream -1内に含まれる2ndVideoと2ndAudioとのそれぞれであるにも関わらず、別々のサブパス１とサブパス２とのそれぞれで定義されている。なぜならば、図１１の例では、参照されるＥＳ（エレメンタリストリーム）の本数は１本のみである、というSubPath_typeの種類しか用意されていないためである。即ち、図１１の例では、Audio，IG，Text，Videoといった各種類のＥＳが、同一のClipに含まれるClip AV Streamファイルに含まれているか否かによらず、ＥＳ１本ずつに対して、SubPath_typeが１つずつ常に割り当てられる、というSubPath_typeの種類しか用意されていないためである。
【０３６３】
即ち、図４４の例によらず、図１１の例のSubPath_typeの種類が利用される場合、メインパスで参照されるＥＳと別に、再生対象のＥＳが２本以上存在するときには、それらの２本以上のＥＳは別々のサブパスにそれぞれ分けられて、即ち、２つの別のＳＰＩのそれぞれとして定義されることになる。
【０３６４】
この場合、それらの２本以上のＥＳが同一のClipに含まれるClip AV Streamファイルに含まれているならば、上述したSubPlayItem_IN_time,SubPlayItem_OUT_time等は同一となるにも関わらず、それぞれ個別に持つ（その結果何重にも持つ）必要が生じてしまい、SubPlayItem_IN_time、および、SubPlayItem_OUT_timeの情報が冗長となる、という第１の問題点が発生する。
【０３６５】
また、この場合、再生対象のESごとにサブパスを定義しなければならないので、PlayListの構造が必要以上に複雑になる、という第２の問題点も発生する。
【０３６６】
さらに、かかる第２の問題点から、次のような第３の問題点も発生する。
【０３６７】
即ち、例えば、本実施の形態では、再生装置（例えば上述した図２５の再生装置２０や後述する図４９の再生装置４０１）には、同時に２本のTS（２つのClip）までしか読めないという制限（縛り）が課せられている。かかる制限が課せられた再生装置では、このような複雑な構造のPlayListを再生しようとすると、そのPlayList内に定義されているメインパスと、何れのサブパスを組み合わせて再生すればよいのかを直ちに決められない、即ち、そのような組み合わせを決定するために複雑な処理の実行が必要になる、という第３の問題点が発生する。
【０３６８】
そこで、本発明人は、かかる第１乃至第３の問題点を解決すべく、SubPath_typeの種類として、複数のＥＳを取り扱える種類、即ち、複数のＥＳを同時に参照可能とする種類を追加する、という手法をさらに発明した。かかる手法が適用されたSubPath_typeの種類の第２の例が図４５に示されている。
【０３６９】
即ち、図４５は、SubPath_type（サブパスのタイプ）の種類の第２の例であって、図１１とは異なる例、即ち、図１１の例にも存在する種類に対して、かかる第１乃至第３の問題点を解決可能な種類を追加した例を説明する図である。すなわち、かかる第１乃至第３の問題点を解決するためには、例えば図４５に示される第２のSubPath_typeを採用すればよい。
【０３７０】
図４５において、SubPath_type＝０乃至４は、図１１の対応するタイプと同一とされているので、ここではその説明については省略する。
【０３７１】
ただし、SubPath_type＝２乃至４の「Meaning」において、図４５の例では「Out-of-mux」という記述がなされているが、図１１の例ではその記述は省略されている。そこで、その記述について説明する。即ち、この「Out-of-mux」という記述は、サブパスで参照されるＥＳが含まれるＴＳと、メインパスで参照されるＥＳが含まれるＴＳとが異なっている場合のサブパスのタイプ（種類）、即ち、サブパスで参照されるＥＳが、メインパスで参照されるプレイアイテムが含まれるＴＳに多重化されていないサブパスのタイプ（種類）であることを示している。以下、かかる種類を、メインパスＴＳ非多重型のパスと称する。
【０３７２】
また、SubPath_type＝２，３のように、メインパスで参照されるＥＳとサブパスで参照されるＥＳとが非同期である場合、そのサブパスのタイプ（種類）を、以下、非同期型のパスと称する。一方、SubPath_type＝４，５のように、メインパスで参照されるＥＳとサブパスで参照されるＥＳとが同期する場合、そのサブパスのタイプ（種類）を、以下、同期型のパスと称する。
【０３７３】
SubPath_type＝５は、Out-of-mux and AV Synchronized type of one or more elementary streams path(Primary audio/PG/IG/Secondary audio path).Out of mux and AV synchronized type of Picture-in-Picture presentation path which contains one or more elementary streams pathsとされている。即ち、SubPath_type＝５は、メインパスＴＳ非多重型、かつ、同期型のパスであって、１本以上のＥＳ(Primary audio/PG/IG/Secondary audio)のパスや、ピクチャインピクチャプレゼンテーションパスとされている。
【０３７４】
すなわち、SubPath_type＝５は、図１１を用いて説明した例におけるSubPath_type＝５，６のそれぞれで示される種類も含まれ、2nd Audio Presentation path（２番目のオーディオプレゼンテーションパス）（２ndオーディオストリームを参照するためのパス）や、2nd Video Presentation path（２番目のビデオプレゼンテーションパス）（２ndビデオストリームを参照するためのパス）を含むものである。
【０３７５】
ここで、ピクチャインピクチャプレゼンテーションパスとは、上述したピクチャインピクチャ手法（図３９参照）において、所定のプライマリビデオストリームについての、プライマリオーディオストリームストリーム、セカンダリビデオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームのうちの１以上のパス（そのようなサブパスのタイプ）であることをいう。
【０３７６】
SubPath_type＝６は、Out-of-mux and AV non-Synchronized type of Picture-in-Picture presentation path which contains one or more elementary streams pathsとされている。即ち、SubPath_type＝８は、メインパスＴＳ非多重型、かつ、非同期型のパスであって、ピクチャインピクチャプレゼンテーションパス（１以上のＥＳのパス）とされている。
【０３７７】
SubPath_type＝７は、In-mux type and AV Synchronized type of Picture-in-Picture presentation path which contains one or more elementary streams pathsとされている。
【０３７８】
ここで、「In-mux」という記述は、サブパスで参照されるＥＳが含まれるＴＳと、メインパスで参照される１以上のＥＳが含まれるＴＳとが同一の場合のサブパスのタイプ（種類）、即ち、サブパスで参照されるＥＳが、メインパスで参照されるESを含むＴＳに多重化されているサブパスのタイプ（種類）であることを示している。換言すれば、メインクリップに含まれるメインTSに、メインのClip AVストリームと、サブのClip AVストリームとが含まれている状態である。以下、かかる種類を、メインパスＴＳ多重型のパスと称する。
【０３７９】
即ち、SubPath_type＝７は、メインパスＴＳ多重型、かつ、同期型のパスであって、ピクチャインピクチャプレゼンテーションパス（１以上のＥＳのパス）とされている。
【０３８０】
そして、SubPath_type=8乃至255は予備(reserved)とされている。
【０３８１】
図４５の例のSubpath_typeの種類を利用することにより、新たに追加されたSubPath_type=５，６，７を利用することが可能となる。ここで、SubPath_type=７においては、PlayItemにより参照されるMainTS、すなわち、メインClip AVストリームには、SubPathにより参照されるSubSTも含まれる。そのため、図１７を用いて説明したStream_entry()に代わって、ｔｙｐｅ＝３が定義された、図４６に示される第２のStream_entry()が用いられる。
【０３８２】
すなわち、第２のStream_entry()において定義されているｔｙｐｅ＝３は、対応するPlayItemにおいてSubPath_type=７の場合に、MainClipに含まれ、SubPathによって参照されるエレメンタリストリームを識別するためのものである。
【０３８３】
なお、図４６において、図１５と同一の部分については、その説明を適宜省略する。
【０３８４】
すなわち、type＝３では、SubPathがMainPathと同じClipを参照し、換言すれば、MainClipに複数のエレメンタリストリームが多重化され、MainPathとSubPathとのいずれも、MainClipに多重化されているエレメンタリストリームのうちのいずれかを参照している場合に、SubPath_type=７において、MainClipの複数のエレメンタリストリームの中から、SubPathによって参照される１つのエレメンタリストリームを再生時に特定するために、ref_to_stream_PID_of_MainClipにより、MainClipのパケットID(PID)が指定される。また、ref_to_SubPath_idによりSubPath_idが示され、このSubPath_idにより図９のPlayList()で定義されたSubPathが特定され、このSubpathから対応するSubPlayItemが呼び出されることにより（図１０）、エレメンタリストリームの再生時間（In_time, Out_time）等を把握することができる（図１２）ようになされている。
【０３８５】
このように、type（type１乃至type３の３つのtype）を使うことで、PlayItemとそれに関連付けられて再生される１つ以上のSubPathが用意されている場合に、このPlayItemが参照するClipが、さらに、SubPathから参照されている場合であっても、Clipの中から１つのエレメンタリストリームを特定することができる。
【０３８６】
以上説明したような図４５の例のSubpath_typeの種類を利用することで、即ち、図１１の例にも存在したSubPath_type＝1乃至4とともに、新たに追加されたSubPath_type=5,6,7を利用することで、ピクチャインピクチャ手法（図３９参照）を実現させる場合のPlayListとして、図４４の例のような複雑な構造のPlayListの代わりに、例えば図４７に示されるような簡単な構造のPlayListの作成/利用が可能になる。
【０３８７】
即ち、図４７の例でも、メインパス(Main path)に含まれるプレイアイテム１（PlayItem1）が参照するClip AV Stream -0に含まれるVideo（ビデオストリーム）とAudio（オーディオストリーム）とのそれぞれが、プライマリビデオストリームとプライマリオーディオストリームのそれぞれとなる。即ち、図３９の例に対応させると、clip AV Stream -0に含まれるVideoとAudioとのそれぞれが、プライマリビデオストリーム３１１とプライマリオーディオストリーム３１２のそれぞれとして、全画面３０１に再生されるとともに、音声出力される。
【０３８８】
また、図４７の例でも、プライマリビデオストリームであるClip AV Stream -0のVideoと同時に再生されるセカンダリビデオストリームとセカンダリオーディオストリームとのそれぞれは、同一のClip AV Stream -1内に含まれる2ndVideoと2ndAudioとのそれぞれとされている。
【０３８９】
そこで、図４７の例では、サブパスA(Sub path-A)のタイプとして、上述したSubPath_type＝７、即ち、メインパスＴＳ非多重型、かつ、同期型のパスであって、ピクチャインピクチャプレゼンテーションパスが採用されている。これにより、サブパスA(Sub path-A)が参照するサブプレイアイテム（SPI）として、Clip AV Stream -１に含まれる2ndVideoと2ndAudioとの２つのＥＳを同時に参照できるようになる。その結果、図３９の例に対応させると、１つのサブパスA(Sub path-A)のみで参照されるClip AV Stream -1に含まれる2ndVideoと2ndAudioとのそれぞれが、セカンダリビデオストリーム３１３とセカンダリオーディオストリーム３１４のそれぞれとして、子画面３０２に再生されるとともに、音声出力される。
【０３９０】
その際、サブパスA(Sub path-A)のタイプとして、上述したSubPath_type＝5が採用されている場合、セカンダリビデオストリーム３１３とセカンダリオーディオストリーム３１４とは、プライマリビデオストリーム３１１と同期して再生されることになる。
【０３９１】
換言すると、セカンダリビデオストリーム３１３とセカンダリオーディオストリーム３１４とを、プライマリビデオストリーム３１１と非同期で再生したい場合には（或いは非同期で再生する必要がある場合には）、サブパスA(Sub path-A)のタイプとして、上述したSubPath_type＝８、即ち、メインパスＴＳ非多重型、かつ、非同期型のパスであって、ピクチャインピクチャプレゼンテーションパス（１以上のＥＳのパス）を採用すればよい。
【０３９２】
このように、図４７の例では、図４５の例のSubpath_typeの種類が採用された結果、メインパスの他１つのサブパスのみで、ピクチャインピクチャ手法が実現されている。
【０３９３】
即ち、同一のClip AV Stream -1に含まれる2ndvideoと2ndAudioとのそれぞれをセカンダリビデオストリーム３１３とセカンダリオーディオストリーム３１４として利用する、といったピクチャインピクチャ手法を実現する場合、図１１の例のSubpath_typeの種類を利用して生成された図４４の例のPlayListでは、同一のClip AV Stream -1に含まれる2ndvideoと2ndAudioとのそれぞれは２つの別々のサブパスで参照されていた。これに対して、図４５の例のSubpath_typeを利用して生成された図４７の例のPlayListでは、同一のClip AV Stream -1に含まれる2ndvideoと2ndAudioとのそれぞれは１つのサブパスのみで参照できるようになっている。
【０３９４】
その結果、2ndvideoと2ndAudioとのそれぞれについての、SubPlayItem_IN_time,SubPlayItem_OUT_time等は１つ持てばよいため、上述した第１の問題点を解決することが可能になる。
【０３９５】
また、図４４の例と図４７の例のPlayListを比較すれば明らかなように、その構造を簡素化できるので、第２の問題点と第３の問題点を解決することが可能になる。
【０３９６】
さらに、図４５の例のSubpath_typeの種類のうちのSubPath_type＝７、即ち、メインパスＴＳ多重型、かつ、同期型のパスであって、ピクチャインピクチャプレゼンテーションパス（１以上のＥＳのパス）を利用することで、例えば図４８に示されるようなPlayListを作成することが可能になる。その結果、図４８の例のPlayListを利用したピクチャインピクチャ手法の実現も容易に可能になる。
【０３９７】
図４８の例では、メインパス(Main path)が参照するプレイアイテム１（PlayItem1）により参照されるMain TSには、Clip AV Stream -0（ただし、図４７のClip AV Stream -0とは異なるClip AV Stream）が含まれており、Clip AV Stream -0には、PlayItem1によって参照されるMain TSと、SubPlayItemによって参照されるSub TSが含まれている。そして、Main TSに含まれるVideo（ビデオストリーム）とAudio（オーディオストリーム）とのそれぞれが、プライマリビデオストリームとプライマリオーディオストリームのそれぞれとなる。即ち、図３９の例に対応させると、Clip AV Stream -0に含まれるVideoとAudioとのそれぞれが、プライマリビデオストリーム３１１とプライマリオーディオストリーム３１２のそれぞれとして、全画面３０１に再生されるとともに音声出力される。
【０３９８】
また、図４８の例では、プライマリビデオストリームであるMain TSのVideoと同時に再生されるセカンダリビデオストリームとセカンダリオーディオストリームとのそれぞれは、同じMain TSに含まれるClip AV Stream -0に含まれる2ndVideoと2ndAudioとのそれぞれとなる。
【０３９９】
この場合、図４８の例のPlayListを作成するためには、サブパスA(Sub path-A)のタイプとして、SubPath_type＝７を採用すればよい。これにより、サブパスA(Sub path-A)に含まれるサブプレイアイテム（SPI）が参照するESとして、メインパスでも参照しているMain TSのClip AV Stream -0に含まれるSubSTの2ndVideoと2ndAudioとの２つのＥＳを参照できるようになる。その結果、図３９の例に対応させると、サブパスA(Sub path-A)で参照されるClip AV Stream -0に含まれる2ndVideoと2ndAudioとのそれぞれを、セカンダリビデオストリーム３１３とセカンダリオーディオストリーム３１４のそれぞれとして、子画面３０２に再生するとともに、音声出力することができるようになる。すなわち一つのファイルがメインパス、サブパスを含むように構成することにより、更に別のファイルに含まれるストリームを同時に再生させることも可能となる。
【０４００】
その他、図４８に示されるように、PlayItem-1に対するサブパスとして、サブパスAに加えて、Clip AV Stream -0が含まれているMainTSとは異なるTSに含まれているClip AV Stream -1（ただし、図４４のClip AV Stream -1とは異なるClip AV Stream）を参照するサブパスB(Subpath-B)が定義されている場合には、上述したように、本実施の形態の再生装置は、２つのＴＳ（Clip）を同時に読み出すことが可能であるので、MainTSに含まれるVideo，Audio，2ndVideo，2ndAudioとともに、SubTSに含まれるPG等も読み出すことが可能になる。
【０４０１】
以上、ピクチャインピクチャ手法（図３９参照）を適用するために必要なSyntaxの例、即ち、図４０と図４１の例のSTN_table（）や、図４５の例のSubPath_typeの種類について説明した。
【０４０２】
かかるピクチャインピクチャ手法を実現するためには、プライマリビデオストリームとセカンダリビデオストリームとを同時再生できる機能を有する再生装置、例えば図４９に示されるような再生装置の適用が必要である。
【０４０３】
即ち、図４９は、本発明を適用した再生装置の構成例であって、図２５の例とは異なる構成例を示すブロック図である。
【０４０４】
図４９の例の再生装置４０１は、上述したメインパスとサブパスを有するPlayListであって、ピクチャインピクチャ手法を実現するためのPlayList（例えば図４７や図４８の例のPlayList）に従った再生を行うことができる。
【０４０５】
なお、図４９において、図２５と対応する部分（ブロック）には対応する符号が付してあり、それらの説明については適宜省略する。
【０４０６】
図４９の例の再生装置４０１には、図２５の例の再生装置２０と同様の機能と構成を有する、ストレージドライブ３１、スイッチ３２、およびコントローラ３４が設けられている。ただし、コントローラ３４の機能は追加されている。追加された機能の詳細については後述する。さらに、図４９の例の再生装置４０１には、図２５の例の再生装置２０のAVデコーダ部３３とは機能と構成が若干異なるAVデコーダ部４０３が設けられている。
【０４０７】
即ち、図４９の例のAVデコーダ部４０３には、図２５の例のAVデコーダ部３３とほぼ同様の機能と構成を有するバッファ５１乃至ミキシング処理部１０１が設けられている他、さらに、図２５の例のAVデコーダ部３３には設けられていないPIDフィルタ４１１乃至プリロード用バッファ４１４が設けられている。
【０４０８】
なお、「図２５の例のAVデコーダ部３３とほぼ同様の機能と構成を有する」といったように「ほぼ」と記述したのは、ビデオデコーダ７２やビデオプレーン生成部９２の呼称が、1stビデオデコーダ７２や1stビデオプレーン生成部９２と変更されていたり、PIDフィルタ５６の出力が１つ増加していたり等、若干異なるところがあるからである。
【０４０９】
以下、図４９の例のAVデコーダ部４０３のうちの、図２５の例のAVデコーダ部３３とは異なる箇所について説明する。
【０４１０】
AVデコータ部４０３は、ピクチャインピクチャ手法を実現するために、プライマリビデオストリームとセカンダリビデオストリームとをデコードする必要がある。このため、図２５の例のAVデコーダ部３３に設けられていたビデオデコーダ７２とビデオプレーン生成部９２とのそれぞれは、図４９の例のAVデコーダ部４０３においては、プライマリビデオストリーム用の1stビデオデコーダ７２と1stビデオプレーン生成部９２とのそれぞれとして設けられている。さらに、図４９の例のAVデコーダ部４０３には、1stビデオデコーダ７２と1stビデオプレーン生成部９２とのそれぞれと同様の機能と構成を有する、セカンダリビデオストリーム用の2ndビデオデコーダ４１２と2ndビデオプレーン生成部４１３とのそれぞれが設けられている。
【０４１１】
また、PIDフィルタ４１１には、メインClipAV Streamのビデオストリーム、または、サブClip AV Streamのビデオストリームが、PIDフィルタ５５またはPIDフィルタ５６を介して入力されてくる。そこで、PIDフィルタ４１１は、入力されたビデオストリームを、そのPID（パケットID)に応じて、後段の1stビデオデコーダ７２または2ndビデオデコーダ４１２に振り分けて出力する。即ち、PIDフィルタ４１１は、プライマリビデオストリームが入力された場合には、そのプライマリビデオストリームを1stビデオデコーダ７２に供給する。これに対して、PIDフィルタ４１１は、セカンダリビデオストリームが入力された場合には、そのセカンダリビデオストリームを2ndビデオデコーダ４１２に供給する。
【０４１２】
なお、本実施の形態では、プライマリビデオストリームとして、メインClipAV Streamのビデオストリームのみが利用され、サブClip AV Streamのビデオストリームは利用されないとされている。ただし、将来、サブClip AV Streamのビデオストリームもプライマリビデオストリームとして利用され得ることも考慮して、PIDフィルタ５６から供給されたサブClip AV Streamのビデオストリームも１stビデオデコーダ７２に供給され得るように、PIDフィルタ４１１が構成されている。
【０４１３】
プリロード用バッファ４１４は、インタラクティブグラフィックスデコーダ７４から供給されたインタラクティブグラフィックスストリームを一時記憶する。即ち、上述したように、本実施の形態では、再生装置４０１には、一度に２つのＴＳ（Clip）しか読み出せないという制限が課せられている。そこで、再生装置４０１は、インタラクティブグラフィックスストリームを予め取得しておくことで（プリロードしておくことで）、ビデオストリームやオーディオストリームを再生するときに、プリロードしておいたインタラクティブグラフィックスストリームも同時再生することができる、といった機能を有している。かかる機能を実現するために、即ち、プリロードされたインタラクティブグラフィックスストリームを、ビデオストリームやオーディオストリームが再生されるタイミングまで保存しておくために、プリロード用バッファ４１４が図４９の例のAVデコード部４０３に設けられているのである。
【０４１４】
次に、かかる図４９の例の再生装置４０１が実行するピクチャインピクチャ手法による処理の一例であって、プライマリビデオストリーム等の再生中等に、再生対象のセカンダリビデオストリーム等を切り替えるために必要な一連の処理(以下、セカンダリビデオ切り換え処理と称する)の一例について、図５０と図５１のフローチャートを参照して説明する。
【０４１５】
図５０のステップＳ１０１において、コントローラ３４は、セカンダリビデオストリーム番号（ＩＤでもよい）の順番リストと、セカンダリビデオストリームに組み合わされているプライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームのリストを、図４０と図４１とを用いて説明した第５のSTN_table()から取得する。
【０４１６】
ここでは、このステップＳ１０１の処理後、取得されたリストに基づいて、例えば上述した図４２のようなストリームナンバーテーブルが生成され、そのストリームナンバーテーブル自身またはそれに基づいて生成された所定のＧＵＩ（Graphical User Interface）画像がユーザに呈示されるとする。そして、これにより、処理はステップＳ１０２に進むとする。
【０４１７】
ステップＳ１０２において、コントローラ３４は、ユーザからのセカンダリビデオストリームに対する切り替えの指令を受け付ける。
【０４１８】
即ち、上述した図４２と図４３を用いて説明したユーザの切り替え操作の内容が、ステップＳ１０２において、ユーザからのセカンダリビデオストリームに対する切り替えの指令としてコントローラ３４に受け付けられることになる。
【０４１９】
ステップＳ１０３において、コントローラ３４は、再生しているセカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルの組み合わせの次の組み合わせの番号を取得する。
【０４２０】
具体的には、例えば、図４２の例のストリームナンバーテーブルがユーザに呈示されたとすると、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルの組み合わせとして、次の第１の組み合わせ乃至第３の組み合わせが存在することになる。即ち、第１の組み合わせとは、ビデオ２、オーディオ２、オーディオ４、サブピクチャ３の組み合わせをいう。第２の組み合わせとは、ビデオ１、オーディオ１、オーディオ４、サブピクチャ１の組み合わせをいう。第３の組み合わせとは、ビデオ１、オーディオ１、オーディオ５、サブピクチャ１の組み合わせをいう。そこで、例えばここでは、第１の組み合わせ、第２の組み合わせ、および、第３の組み合わせのそれぞれの組み合わせの番号として、１、２−１、２−２のそれぞれが与えられているとする。そして、例えばここでは、ステップＳ１０２の処理で、図４３の例の選択操作結果、即ち、第２の組み合わせの選択指令がコントローラ３４に受け付けられたとする。この場合、ステップＳ１０３の処理では、次の組み合わせの番号として２−１が取得される。
【０４２１】
ステップＳ１０４において、コントローラ３４は、stream_attribute()を参照して、取得した番号（初回のステップＳ１０４の処理では、直前のステップＳ１０３の処理で取得した番号）に対応する複数のストリームの再生する機能を有するか否かを判定する。
【０４２２】
具体的には、例えば、オーディオストリームの再生機能に着目すると、図４３の例の選択操作結果、即ち、第２の組み合わせの選択指令がコントローラ３４に受け付けられた場合には、オーディオ１とオーディオ４とのそれぞれの再生機能を有するか否かの判定がステップＳ１０４の処理として実行される。
【０４２３】
なお、オーディオストリームの再生機能の有無の判定手法の具体例については、上述した図３０のステップＳ７４の処理の説明の際に併せて説明しているので、ここでは省略する。
【０４２４】
また、その他、ビデオストリーム等他のストリームの再生機能の有無の判定もステップＳ１０４の処理として併せて実行することも可能である。
【０４２５】
ステップＳ１０４において、取得した番号に対応する複数のストリームの再生する機能を有していないと判定した場合、コントローラ３４は、ステップＳ１０５において、現在の組み合わせの番号の次の組み合わせの番号を取得する。即ち、現在の組み合わせ番号で特定されるオーディオストリーム等を再生する機能を有しない場合には、その組み合わせ番号は飛ばされ（再生対象とならず）、次の組み合わせ番号が取得される。その後、処理はステップＳ１０４に戻され、それ以降の処理が繰り返される。即ち、再生装置４０１自身が再生する機能を有するオーディオストリーム等を特定する組み合わせ番号が取得されるまで、ステップＳ１０４とＳ１０５のループ処理が繰り返される。
【０４２６】
ステップＳ１０４において、取得した番号（１回目の処理の場合は上述したように直前のステップＳ１０３の処理で取得された番号であり、２回目以降の処理の場合は直前のステップＳ１０５の処理で取得された番号である）に対応する複数のストリームの再生する機能を有すると判定された場合、処理は図５１のステップＳ１０６に進む。
【０４２７】
ステップＳ１０６において、コントローラ３４は、stream_entry()びtype情報に基づいて、取得した番号に対応するセカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、およびサブタイトルストリーム各々を含むClipを調べる。即ち、取得した番号に対応するセカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、およびサブタイトルストリームは各々、メインClipにあるのか、それとも、サブClipにあるのかが確認される。なお、各ストリームの確認手法の具体例については、上述した図３０のステップＳ７６の処理の説明の際に併せて説明しているので、ここでは省略する。
【０４２８】
ステップＳ１０７において、コントローラ３４は、所望のセカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、およびサブタイトルストリーム各々を特定する。即ち、ステップＳ１０７の処理で、メインClipまたはサブClipの中の中から、取得した番号に対応する所望の各ストリームが特定される。なお、各ストリームの特定手法の具体例については、上述した図３０のステップＳ７７の処理の説明の際に併せて説明しているので、ここでは省略する。
【０４２９】
ステップＳ１０８において、コントローラ３４は、特定されたそれぞれの所望のストリームが多重化されているClip（メインClipまたはサブClip）から、所望のセカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、およびサブタイトルストリーム各々を読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるClipから所望のストリームを読み出す。具体的には、コントローラ３４は、ステップＳ１０６の処理で特定したClipから、ステップＳ７の処理で特定したストリームを読み出すようストレージドライブ３１に指示する。
【０４３０】
ステップＳ１０９において、コントローラ３４は、読み出された各々のストリーム、すなわち、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、およびサブタイトルストリームなどを再生するようAVデコーダ部４０３に指示する。具体的には、コントローラ３４は、読み出された所望のセカンダリビデオストリームを２ndビデオデコーダ４１２にデコードさせるよう、読み出された所望のプライマリオーディオストリームを1stオーディオデコーダ７５−１にデコードさせるよう、読み出された所望のセカンダリオーディオストリームを2ndオーディオデコーダ７５−２にデコードさせるよう、読み出された所望のサブタイトルストリームをプレゼンテーショングラフィックスデコーダ７３等にデコードさせるよう、それぞれ指示する。
【０４３１】
ステップＳ１１０において、AVデコーダ部４０３は、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、およびサブタイトルストリームをデコードし出力し、処理が終了される。
【０４３２】
その際、プライマリオーディオストリームとセカンダリオーディオストリームとについては、上述した図３０のステップＳ８０の処理の説明の際に併せて説明したように、ミキシングされた結果得られるオーディオ信号が出力されることになる。
【０４３３】
このようなセカンダリビデオ切り替え処理の結果、図３９を用いて説明したピクチャインピクチャ手法が実現される。即ち、図３９の例では、プライマリビデオストリーム３１１に対応する映像が全画面３１１に表示（再生）されている最中に、ステップＳ１１０の処理で出力されたセカンダリビデオストリーム３１３に対応する映像が子画面３０２に表示（再生）され、ステップＳ１１０の処理で出力されたサブタイトルストリーム３１５に対応する字幕等が全画面３１１の所定の位置に表示（再生）され、ステップＳ１１０の処理で出力されたプライマリオーディオストリーム３１１とセカンダリオーディオストリーム４０２とがミキシングされた結果得られる音声が、図３９には図示せぬスピーカから出力（再生）される。
【０４３４】
以上説明したように、図４０と図４１の例のSTN_tableを採用することで、ピクチャインピクチャ手法を実現することが可能になる。
【０４３５】
このようなピクチャインピクチャ手法を実現する場合、図１１の例のSubPath_typeの種類を利用して生成されるPlaylist（例えば図４４参照）を利用することも可能であるが、上述したように、同一のClip AV Streamに含まれているセカンダリビデオストリームやセカンダリオーディオストリーム等は、それぞれ別々のサブパスに分けられること、即ち、２つの別のSPIとして定義されることになってしまう。その結果、上述した各種問題点、例えばPlayListの構造が必要以上に複雑になるという問題点が発生する。
【０４３６】
そこで、これらの各種問題点を解決する場合には、同一Clip AV Stream内の２以上のＥＳ（セカンダリビデオストリームやセカンダリオーディオストリーム等）を１つのサブパスで参照できるように、即ち、同一Clip AV Stream内の２以上のＥＳを１つのSPIとして定義できるようなSubPath_typeの種類、即ち例えば図４５を用いて説明したSubPath_typeの種類を採用すればよい。
【０４３７】
ただし、PlayListの作成者側の観点に立つと、図４５の例のSubPath_typeの種類を採用することで簡単な構造のPlayListを作成できるようになったとは言え、即ち、作成された結果のPlayListの構造が簡単になったとは言え、そのような簡単な構造のPlayListを作成するまでには、次のような困難な作業が必要になる。即ち、PlayListの作成者は、ピクチャインピクチャ手法を実現するために、どのような種類のストリームの組み合わせが可能であり、どのような種類のストリームの組み合わせが不可能であるのかを自分自身で判断した上で、即ち、どのような種類のサブパスを含めるのかを自分自身で判断した上で、PlayListを作成しなければいけない、といった困難な作業が必要になる。従って、PlayListの作成者側から、PlayListを簡単に作成したいという要望が挙げられるようになることは想像に難くない。
【０４３８】
従って、かかる要望に予め応えるべく、本発明人は、さらに、PlayListの種類に応じて、作成可能（そのPlayListに含めることが可能なサブパス）を、図４５を用いて説明したSubPath_typeにより制限する、といった手法を発明した。なお、以下、かかる手法を、サブパス制限手法と称する。
【０４３９】
サブパス制限手法を適用することで、１つのPlayListに含め得るサブパスが限定されるため、作成者にとっては、PlayListにどのようなサブパスを含めるのかを判断した上でサブパスを作成することが容易になり、ひいては、PlayListの作成自体も容易になる、という効果を奏することが可能になる。
【０４４０】
以下、サブパス制限手法について、詳しく説明していく。
【０４４１】
ただし、サブパス制限手法では、再生装置が一度に読み出すことが可能なＴＳの数によって、その制限内容が変化する。本実施の形態では、上述したように、再生装置が一度に読み出すことが可能なＴＳは２つとされている。そこで、以下、再生装置が一度に読み出すことが可能なＴＳは２つである場合のサブパス制限手法について説明していく。
【０４４２】
本実施の形態では、PlayListは、Browsable Slideshow（非同期型）と、Movie Type/Time-based Slideshow（同期型）といった２種類に大別される。PlayListの種類が非同期型であるのか或いは同期型であるのかといった区別は、そのPlayListにより参照されるClipのClip_Information_fileに含まれるapplication_type（アプリケーションタイプ）に従って行うことが可能である。
【０４４３】
application_typeは、あるClipについてのClip Informationファイル中のClipInfo()に記述されている。ただし、ここでは、説明の簡略上、ClipInfo()のシンタクスの説明については省略し、以下、そのClipinfo()に記述され得るapplication_typeの種類についてのみ、図５２を参照して説明する。
【０４４４】
即ち、図５２は、application_typeの種類の例を説明する図である。
【０４４５】
図５２に示されるように、application_type=0は、予備（reserved）とされている。application_type=１は、映画のアプリケーション用のMainTSとされている。ここで「MainTS」とは、Playlistにおいてメインパスにより参照されるPlayItemとしてのTS、即ち、Main TSを指している。application_type=2は、Time-based Slideshow用のMainTS、即ち、静止画のスライドショー用のMainTSとされている。application_type=3は、Browsable Slideshow用のTS、即ち、ビデオのスライドショー用のMainTSとされている。application_type=4は、SubPath用のBrowsable SlideshowのTSとされている。これは、例えば、上述したapplication_type=3と非同期で再生されるBGM（サウンド）データを保持するClip AVストリームに対してのClip Info()に付与される。application_type=5は、SubPathのインタラクティブグラフィックス用のTSとされている。application_type=6は、SubPathのテキストサブタイトル（テキスト字幕データ）用のTSとされている。application_type=7は、1つ以上のES(エレメンタリストリーム)を含むSubPath用のTSとされている。application_type=8乃至255は、予備（reserved）とされている。
【０４４６】
そこで、本実施の形態では、PlayListにより示されるMain TSについてのClipInfo()に記述されているapplication_typeが、application_type=3の場合、そのPlayListはBrowsable Slideshow（非同期型）に分類され、application_type=1or2の場合、そのPlayListはMovie Type/Time-based Slideshow（同期型）に分類されるとする。
【０４４７】
この場合、PlayListの種類（非同期型または同期型）に対する、そのPlayListが持ち得るSubPath（サブパス）の組み合わせは、図５３に示される組み合わせのみ許可する、という制限がサブパス制限手法により課されることになる。
【０４４８】
図５３において、「number of SubPaths」の項目には、PlayListにより示されるMain TSが持ち得る、左方の「SubPath_type」の項目に示される種類のSubPathの個数が記述されている。
【０４４９】
また、図５３における「SubPath_type」の項目の各記述値（SubPath_typeの種類）は、上述した図１１を用いて説明した種類ではなく、図４５を用いて説明した種類に対応している。
【０４５０】
図５３に示されるように、PlayListの種類が非同期型の場合、即ち、application_type(of Main TS)=3であるBrowsable slideshowの場合、（１）０本以上のSubPath_type=2のSubPath、（２）０本以上のSubPath_type=3のSubPathのみが許可される。換言すると、（１）と（２）以外のSubPathの組み合わせは禁止される。
【０４５１】
また、（２）の組み合わせであっても、application_type=3のMain TSにIGが含まれる場合には、SubPath_type=3のSubPathは禁止される（図５３中＊２参照）。これは、次の制約によるものである。
【０４５２】
即ち、IGの観点に立つと、IGを含むPlayListは、次の第１の種類と第２の種類に大別される。第１の種類とは、参照されるMain TSにIGが多重化されていて、そのMain TSのAudio/VideoとIGが同期再生される、という種類をいう。第２の種類とは、SubPath_type=3のSubPatを含み、IGはプリロードされる（このIGはポップアップメニューに使われる）、という種類をいう。なお、この第２の種類のPlayListを再生可能とするために、上述したように、図４９の再生装置４０１にはプリロード用バッファ４１４が設けられているのである。
【０４５３】
また、本実施の形態の再生装置はIGデコーダを1つしか有しないため、具体的には例えば図４９の再生装置４０１はインタラクティブグラフィックスデコーダ７４を1つしか有しないため、次の制限が課せられている。即ち、上述した第１の種類のPlayListでは、IGデコーダがMain TSのIGをデコード中に、別のIGをプリロードできない、という制限が課せられている。一方、上述した第２のPlayListでは、IGデコーダ中にプリロードされた第１のIGが入力されている状態のとき、別のMain TSからの第２のIGをIGデコーダへ入力できない、という制限が課せられている。
【０４５４】
以上のことから、Main TSに多重化されているIGを参照するSTN_table()を含むPlayListは、SubPath_type=3のSubPathを持てないという制約が課せられることになる。かかる制約のため、application_type=3のMainTsにIGが含まれる場合には、SubPath_type=3のSubPathは禁止される、としたのである（図５３中＊２参照）。
【０４５５】
一方、PlayListの種類が同期型の場合、即ち、application_type(of Main TS)=1 or 2であるMovie Type/Time-based Slideshowの場合、(３)０本以上のSubPath_type=3のSubPath、（４）０本以上のSubPath_type=4のSubPath、（５）０本以上のSubPath_type=5のSubPath、（６）０本以上のSubPath_type=6のSubPath、（７）０本または1本のSubPath_type=７のSubPathのみが許可される。換言すると、SubPath_type=2のSubPathの組み合わせは禁止される。
【０４５６】
また、（３）の組み合わせであっても、application_type=3のMainTSにIGが含まれる場合、または、SubPath_type=5のSubPathが参照するTSにIGが含まれる場合には、SubPath_type=3のSubPathは禁止される（図５３中＊１参照）。これも、上述した制約によるものである。
【０４５７】
さらに、本実施の形態では、上述したように、PlayListが一度に参照することができるClipの数、すなわち、再生装置が一度に読み出すことが可能なＴＳ(Clip)は２つとされている。そこで、同一のPlayListにより参照されるESが多くても２つのClipに含まれていること、すなわち、同時に再生されるESは、多くても２つのClip AVストリームファイルから同時に参照されることを保証するために、次に示される条件を満たすという制限がサブパス制限手法により課せられている。
【０４５８】
即ち、サブパス制限手法により課せられている、STN_table（）によって参照される、primary_video_stream、primary_audio_stream、PG_textST_stream（Text subtitle streamを除く）、IG_stream、,secondary_video_stream（IG for Pop-up menuを除く）、および、secondary_audio_streamのそれぞれを組み合わせる時の条件とは、次の通りである。
【０４５９】
ある値のprimary_video_stream_numberで特定されるES、ある値のprimary_audio_stream_number で特定されるES、ある値のPG_textST_stream_numberで特定されるES、ある値のIG_stream_number valueで特定されるES、ある値の secondary_video_stream_number で特定されるES、ある値のsecondary_audio_stream_number で特定されるESにおいて、同時に再生可能である組み合わせは、多くても２つのClip AVストリームファイルに格納されている必要がある。なお、除いたText subtitle streamや、IG for Pop-up menuは、プリロード型のストリームであるため、同時に再生（表示）するものであっても、同時には光ディスク、ハードディスク等から読み出さないため、上記のように２つのClip ＡＶストリームファイルとは別のClip ＡＶストリームファイルに格納されていても良い。
【０４６０】
なお、STN_table（）によって参照されるESは、3本以上のClip AVストリームファイルに格納されていてもよいが、同時に再生可能であるESは、そのうちの多くても２つのClip AVストリームファイルに格納されるようになされている。
【０４６１】
また、PlayList内にあるPlayItem（MainPath）とSubPathの数の組み合わせは、図５４に示されるように、次の（ａ）乃至（ｃ）のうちのいずれかの組み合わせである必要がある、という制限もサブパス制限手法により課せられている。即ち、（ａ）の組み合わせとは、1つのPlayItemのみの組み合わせ（図５４中、一番上の行の組み合わせ）をいう。（ｂ）の組み合わせとは、1つのPlayItemと1つのSubPathとの組み合わせ（図５４中、中央の行の組み合わせ）をいう。（ｃ）の組み合わせとは、1つのPlayItemと1つSubPathと1つのSubPath_type=7のSubPathとの組み合わせ、即ち、1つのPlayItemと２つSubPath（ただし、そのうちの１つのSubPath_type=7であること）との組み合わせ（図５４中、一番下の行の組み合わせ）をいう。
【０４６２】
以上説明した各種制限による結果として、所定の種類のPlayListについて作成可能なSubPath_typeを制限する、といった手法が、サブパス制限手法の一例である。
【０４６３】
換言すると、サブパス制限手法とは、PlayListの種類（上述した例では、Main TSのapplication_typeで区別される種類）、再生装置が一度に読み出すことが可能なＴＳの数（上述した例では２つ）、および、PlayListのサブパス(SubPath)で参照されるＥＳにプリロードされるIGが含まれているか否か（上述した例ではSubPath_type=3等のSubPathであるか否か）といった条件（制限）が存在し、これらの条件を満たすように、そのPlayListに含めるSubPathを決定する、ひいては、そのようにして決定したSubPathを含むPlayListを作成する、といった手法であるともいえる。
【０４６４】
以下、図５５乃至図５８を参照して、かかるサブパス制限手法により作成されたPlayListの具体例について説明する。
【０４６５】
図５５は、Browsable Slideshow（非同期型）のPlayListであって、SubPath_type=3のSubPathが存在しない場合のPlayList、即ち、SubPath_type=2のSub_Path-1乃至Sub_Path-3のみが存在する場合のPlayListの一例を示している。なお、SubPath_type=3のSubPathが存在しない理由は、PlayListのPlayItem-1/PlayItem-2が参照しているClip AV Stream -0（すなわち、Main TS）にIGが含まれているためである。なお、この例は、複数の静止画をユーザ操作によって連続して表示していくBrowsable Slideshowを表しているため、Clip AVストリームファイル-０に含まれる、「video」のストリームは、静止画データを保持している。
【０４６６】
図５５の例のPlayListを作成するために利用された制限（条件）の内容は次の通りである。即ち、図５３を用いて上述した、「（１）０本以上のSubPath_type=2のSubPath、（２）０本以上のSubPath_type=3のSubPathのみを許可する」という制限と、「（１）と（２）以外のSubPathの組み合わせは禁止する」という制限と、「（２）の組み合わせであっても、application_type=3のMainTSにIGが含まれる場合には、SubPath_type=3のSubPathは禁止される（図５３中＊２参照）」という制限とが利用されて、図５５の例のPlayListが作成されている。
【０４６７】
このような図５５の例に対して、図５６は、Browsable Slideshow（非同期型）のPlayListであって、SubPath_type=3のSubPathが存在する場合のPlayList、即ち、SubPath_type=2のSub_Path-1，2に加えてさらに、SubPath_type=3のSub_Path-3が存在する場合のPlayListの一例を示している。なお、SubPath_type=3のSubPathが存在する理由は、PlayListのPlayItem-1/PlayItem-2が参照しているClip AV Stream -0にIGが含まれていない、即ち、SubPath_type=3のSubPathにより、Clip AV Stream -0とは異なるClip AV Stream -3のIGを参照するためである。
【０４６８】
図５６の例のPlayListを作成するために利用された制限（条件）の内容は、図５５の例の上述した制限内容と同一である。
【０４６９】
換言すると、図５３中＊２で示される制限、即ち、「（２）の組み合わせであっても、application_type=3のMainTSにIGが含まれる場合には、SubPath_type=3のSubPathは禁止される」という制限を課す必要がある場合のPlayListの例が、図５５の例であり、そのような制限を課す必要がない場合のPlayListの例が、図５６の例である。
【０４７０】
このように、図５５と図５６は、Browsable Slideshow（非同期型）のPlayListの例を示している。これに対して、図５７と図５８は、Movie Type Slideshow（同期型）のPlayListの例を示している。
【０４７１】
即ち、図５７は、同期型のPlayListのうちの、セカンダリビデオストリーム（2ndVideo）とセカンダリオーディオストリーム（2ndAudio）とがMain TS(すなわち、Clip AV Stream -0)に多重化されていない場合のPlayListであって、SubPath_type=6のSub_Path-1,2が存在する場合のPlayListの一例を示している。
【０４７２】
図５７の例のPlayListを作成するために利用された制限（条件）の内容は次の通りである。即ち、図５３を用いて上述した、「（６）０本以上のSubPath_type=6のSubPathを許可する」という制限が利用されて、図５７の例のPlayListが作成されている。
【０４７３】
このような図５７の例に対して、図５８は、同期型のPlayListにより参照されるMainTS、すなわちClip AVストリームファイル-０が、MainSTとSubSTとを含み、セカンダリビデオストリーム（2ndVideo）とセカンダリオーディオストリーム（2ndAudio）がMain TS(Clip-0)に多重化されている場合のPlayListであって、それゆえ、SubPath_type=7のSub_Path-1が存在し、さらに、SubPath_type=5のSub_Path-2,3が存在する場合のPlayListの一例を示している。
【０４７４】
図５８の例のPlayListを作成するために利用された制限（条件）の内容は次の通りである。即ち、図５３を用いて上述した、「（５）０本以上のSubPath_type=5のSubPathを許可する」という制限と、「（７）０本のSubPathとSubPath_type=７のSubPathを許可する」という制限とが利用されて、図５８の例のPlayListが作成されている。
【０４７５】
また、以上説明したようなサブパス制限手法により作成されたPlayListは、例えば図４９の再生装置４０１により再生可能とされている。
【０４７６】
例えば、非同期型のPlayListの場合、即ち、application_type=3であるBrowsable slideshowのPlayListの場合、再生装置４０１は、そのPlayListを次のようにして再生することができる。即ち、再生装置４０１は、PlayListが1本以上のSubPath_type=3(Interactive graphics presentation menu、)のSubPathsを参照している場合、SubPath_type=3用のClip AVストリーム、即ち、インタラクティブグラフィックスストリームをPlayListの再生前にプリロードして、プリロード用バッファ４１４に蓄積させる。また、再生装置４０１は、PlayListが1本以上のSubPath_type=2のSubPathを参照している場合、1つずつしかSubPathを参照できないので（一度に読み出すことが可能なTSは２つであり、そのうちの１つはMainPathにより参照されるMainTSであるので）、SubPath_type=2の1以上のSubPathのうちの所定の１つを参照して再生する。
【０４７７】
なお、Interactive graphics presentation menuには、ユーザによるON/OFFの操作入力を基に、表示させたり、表示を取り消したりすることが可能な“Pop-up menu”と、常時表示される“Always-on”の２種類の表示方法が用意されており、application_type=3のPlayListの再生処理の詳細例については、図５９，図６０を参照して後述する。
【０４７８】
また、例えば同期型のPlayListの場合、即ち、application_type=1または2であるMovie Type/Time-based SlideshowのPlayListの場合、再生装置４０１は、そのPlayListを次のようにして再生することができる。即ち、再生装置４０１は、PlayListが1本以上のSubPath_type=3またはSubPath_type=4のSubPathを参照している場合、SubPath_type=3またはSubPath_type-4用のClip AVストリーム、即ち、インタラクティブグラフィックスストリームまたはテキストサブタイトルストリームをPlayListの再生前にプリロードして、プリロード用バッファ４１４またはバッファ５４に蓄積させる。また、再生装置４０１は、PlayListが1本以上SubPath_type=5or6のSubPathを参照している場合、Playerは1つずつしかSubPathを参照できないので（一度に読み出すことが可能なTSは２つであり、そのうちの１つはMainPathにより参照されるMainTSであるので）、SubPath_type=5または6の1以上のSubPathのうちの所定の１つを参照して再生する。ただし、SubPath_type=7のSubPathが1以上含まれている場合には、そのSubPathはMain TSに含まれるESを参照しているので、再生装置４０１は、SubPath_type=5または6の1以上のSubPathのうちの所定の１つを参照して再生している最中に、さらに、SubPath_type=7の1つのSubPathを参照して再生することができる。
【０４７９】
なお、application_type=1or２のPlayListの再生処理の詳細例については、図６１乃至図６４を参照して後述する。
【０４８０】
次に、図５９，図６０のフローチャートを参照して、application_type=3のPlayListの再生処理の一例について説明する。
【０４８１】
例えば、図４９のコントローラ３４は、再生対象のPlayListのMainPathで参照されるMain TSのapplication_typeを調査し、その調査によりapplication_type=3であることを認識した場合、application_type=3のPlayListの再生処理を開始させる。
【０４８２】
図５９のステップＳ１２１において、コントローラ３４は、Main TSはIG（インタラクティブグラフィックスストリーム）を含むか否かを判定する。
【０４８３】
ステップＳ１２１において、Main TSはIGを含まないと判定された場合、処理は図６０のステップＳ１２６に進む。ただし、ステップＳ１２６以降の処理については後述する。
【０４８４】
これに対して、ステップＳ１２１において、Main TSはIGを含むと判定された場合、処理はステップＳ１２２に進む。
【０４８５】
ステップＳ１２２において、コントローラ３４は、SubPath_type=3のSub Pathは存在するか否かを判定する。
【０４８６】
ステップＳ１２２において、SubPath_type=3のSub Pathは存在しないと判定された場合、処理は図６０のステップＳ１２６に進む。ただし、ステップＳ１２６以降の処理については後述する。
【０４８７】
これに対して、ステップＳ１２２において、SubPath_type=3のSub Pathは存在すると判定された場合、処理はステップＳ１２３に進む。ステップＳ１２３において、コントローラ３４は、選択されたSub Path（SubPath_type=3のSub Path）が参照するClipを調べる。
【０４８８】
そして、コントローラ３４は、そのClipから、Sub Pathにより特定されるストリーム、すなわち、IGを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるIGを読み出す。そして、コントローラ３４は、読み出されたIGを、インタラクティブグラフィックスデコーダ７４にデコードさせるように指示する。これにより処理はステップＳ１２４に進む。
【０４８９】
ステップＳ１２４において、インタラクティブグラフィックスデコーダ７４は、読み出されたClip内のIGをデコードする。そして、ステップＳ１２５において、インタラクティブグラフィックスデコーダ７４は、デコードされたIGをプリロード用バッファ４１４に格納する。
【０４９０】
このようにしてステップＳ１２５の処理が終了したとき、または、上述したようにステップＳ１２１若しくはＳ１２２の処理でＮＯであると判定されたとき、処理は図６０のステップＳ１２６に進む。
【０４９１】
ステップＳ１２６において、コントローラ３４は、SubPath_type=2のSub Pathは存在するか否かを判定する。
【０４９２】
ステップＳ１２６において、SubPath_type=2のSub Pathは存在しないと判定された場合、処理はステップＳ１２９に進む。ただし、ステップＳ１２９以降の処理については後述する。
【０４９３】
これに対して、ステップＳ１２６において、SubPath_type=2のSub Pathは存在すると判定された場合、処理はステップＳ１２７に進む。ステップＳ１２７において、コントローラ３４は、選択されたSubPath（SubPath_type=2のSub Path）が参照するClipを調べる。
【０４９４】
そして、コントローラ３４は、そのClipからSubPathにより特定されるストリーム、すなわち、オーディオストリームを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるオーディオストリームを読み出す。そして、コントローラ３４は、読み出されたオーディオストリームを、例えば2ndオーディオデコーダ７５−２にデコードさせるように指示する。これにより処理はステップＳ１２８に進む。
【０４９５】
ステップＳ１２８において、2ndオーディオデコーダ７５−２は、読み出されたClip内のオーディオストリームをデコードする。
【０４９６】
このようにして、ステップＳ１２８の処理が終了したとき、または、ステップＳ１２６の処理でＮＯであると判定されたとき、処理はステップＳ１２９に進む。
【０４９７】
ステップＳ１２９において、AVデコーダ部４０３は、メインClip AV Streamをデコードする。ここで、メインClip AV Streamとは、再生対象のPlaylistのMainPathにより参照されるMain TSに含まれているビデオストリームやオーディオストリーム等のこと、例えばピクチャインピクチャ手法ではプライマリビデオストリームやプライマリオーディオストリーム等のことをいう。即ち、AVデコーダ部４０３のうちの、1stビデオデコーダ７２や1stオーディオデコーダ７５−１等が、このステップＳ１２９の処理を実行する。
【０４９８】
ステップＳ１３０において、AVデコーダ部４０３は、デコードされたメインClip AV Streamと、デコードされたSubPathストリームを合成し、出力する。ここで、デコードされたSubPathストリームとは、図５９のステップＳ１２４の処理でデコードされてステップＳ１２５の処理でプリロード用バッファ４１４に格納されたIGや、図６０のステップＳ１２８の処理でデコードされたオーディオストリームのことをいう。
【０４９９】
ステップＳ１３１において、コントローラ３４は、ステップＳ１３０の処理で合成されたストリームを出力中に、SubPath_type=2のSubPathの切り替え指示（ユーザの切り替え操作）があったか否かを判定する。
【０５００】
ステップＳ１３１において、合成されたストリームを出力中に、SubPath_type=2のSubPathの切り替え指示があったと判定された場合、処理はステップＳ１２７に戻され、それ以降の処理が繰り返される。即ち、メインClip AV Streamと合成されるオーディオストリームが切り替えられる。
【０５０１】
これに対して、ステップＳ１３１において、合成されたストリームを出力中に、SubPath_type=2のSubPathの切り替え指示がなかったと判定された場合、application_type=3のPlayListの再生処理が終了となる。
【０５０２】
次に、図６１乃至図６４のフローチャートを参照して、application_type=1or2のPlayListの再生処理の一例について説明する。
【０５０３】
例えば、図４９のコントローラ３４は、再生対象のPlayListのMainPathで参照されるMain TSのapplication_typeを調査し、その調査の結果、application_type=1or2であることを認識した場合、application_type=1or2のPlayListの再生処理を開始させる。
【０５０４】
図６１のステップＳ１４１において、コントローラ３４は、Main TSはIG（インタラクティブグラフィックスストリーム）を含むか否かを判定する。
【０５０５】
ステップＳ１４１において、Main TSはIGを含まないと判定された場合、処理はステップＳ１４６に進む。ただし、ステップＳ１４６以降の処理については後述する。
【０５０６】
これに対して、ステップＳ１４１において、Main TSはIGを含むと判定された場合、処理はステップＳ１４２に進む。
【０５０７】
ステップＳ１４２において、コントローラ３４は、SubPath_type=3のSub Pathは存在するか否かを判定する。
【０５０８】
ステップＳ１４２において、SubPath_type=3のSub Pathは存在しないと判定された場合、処理はステップＳ１４６に進む。ただし、ステップＳ１４６以降の処理については後述する。
【０５０９】
これに対して、ステップＳ１４２において、SubPath_type=3のSub Pathは存在すると判定された場合、処理はステップＳ１４３に進む。ステップＳ１４３において、コントローラ３４は、選択されたSubPath（SubPath_type=3のSub Path）が参照するClipを調べる。
【０５１０】
そして、コントローラ３４は、そのClipから、SubPathにより特定されるストリーム、すなわち、IGを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるIGを読み出す。そして、コントローラ３４は、読み出されたIGを、インタラクティブグラフィックスデコーダ７４にデコードさせるように指示する。これにより処理はステップＳ１４４に進む。
【０５１１】
ステップＳ１４４において、インタラクティブグラフィックスデコーダ７４は、読み出されたClip内のIGをデコードする。そして、ステップＳ１４５において、インタラクティブグラフィックスデコーダ７４は、デコードされたIGをプリロード用バッファ４１４に格納する。
【０５１２】
このようにしてステップＳ１４５の処理が終了したとき、または、上述したようにステップＳ１４１若しくはＳ１４２の処理でＮＯであると判定されたとき、処理はステップＳ１４６に進む。
【０５１３】
ステップＳ１４６において、コントローラ３４は、SubPath_type=4のSub Pathは存在するか否かを判定する。
【０５１４】
ステップＳ１４６において、SubPath_type=4のSub Pathは存在しないと判定された場合、処理は図６２のステップＳ１４９に進む。ただし、ステップＳ１４９以降の処理については後述する。
【０５１５】
これに対して、ステップＳ１４６において、SubPath_type=4のSub Pathは存在すると判定された場合、処理はステップＳ１４７に進む。ステップＳ１４７において、コントローラ３４は、選択されたSubPath（SubPath_type=4のSub Path ）が参照するClipを調べる。
【０５１６】
そして、コントローラ３４は、そのClipから、SubPathにより特定されるストリーム、すなわち、テキストサブタイトルストリームを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるテキストサブタイトルストリームを読み出す。そして、コントローラ３４は、読み出されたテキストサブタイトルを、Text-STコンポジション７６にデコードさせるように指示する。これにより処理はステップＳ１４８に進む。
【０５１７】
ステップＳ１４８において、Text-STコンポジション７６は、読み出されたClip内のテキストサブタイトルをデコードする。
【０５１８】
このようにしてステップＳ１４８の処理が終了したとき、または、上述したステップＳ１４６の処理でＮＯであると判定されたとき、処理は図６２のステップＳ１４９に進む。
【０５１９】
ステップＳ１４９において、コントローラ３４は、SubPath_type=7のSub Pathは存在するか否かを判定する。
【０５２０】
ステップＳ１４９において、SubPath_type=7のSub Pathは存在しないと判定された場合、処理は図６３のステップＳ１５２に進む。ただし、ステップＳ１５２以降の処理については後述する。
【０５２１】
これに対して、ステップＳ１４９において、SubPath_type=7のSub Pathは存在すると判定された場合、処理はステップＳ１５０に進む。ステップＳ１５０において、コントローラ３４は、選択されたSubPath（SubPath_type=7のSub Path ）が参照するClipを調べる。
【０５２２】
そして、コントローラ３４は、そのClipから、SubPathにより特定されるストリーム、すなわち、ビデオ／オーディオストリームを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるビデオ／オーディオストリームを読み出す。そして、コントローラ３４は、読み出されビデオ/オーディオストリームを、例えば2ndビデオデコーダ４１２／2ndオーディオデコーダ７５−２にデコードさせるように指示する。これにより処理はステップＳ１５１に進む。
【０５２３】
ステップＳ１５１において、2ndビデオデコーダ４１２／2ndオーディオデコーダ７５−２は、読み出されたClip内のビデオ/オーディオストリームをデコードする。
【０５２４】
このようにしてステップＳ１５１の処理が終了したとき、または、上述したステップＳ１４９の処理でＮＯであると判定されたとき、処理は図６３のステップＳ１５２に進む。
【０５２５】
ステップＳ１５２において、コントローラ３４は、SubPath_type=5のSub Pathは存在するか否かを判定する。
【０５２６】
ステップＳ１５２において、SubPath_type=5のSub Pathは存在しないと判定された場合、処理はステップＳ１５６に進む。ただし、ステップＳ１５６以降の処理については後述する。
【０５２７】
これに対して、ステップＳ１５２において、SubPath_type=5のSub Pathは存在すると判定された場合、処理はステップＳ１５３に進む。ステップＳ１５３において、コントローラ３４は、選択されたSubPath（SubPath_type=5のSub Path）が参照するClipを調べる。
【０５２８】
ステップＳ１５４において、コントローラ３４は、stream_attribute()に記述されている内容に基づいて、そのClip内にあるオーディオストリームを再生する機能はあるか否かを判定する。なお、オーディオストリームの再生機能の有無の判定方法の具体例については、上述した図３０のステップＳ７４の処理の説明の際に併せて説明しているので、ここでは省略する。
【０５２９】
ステップＳ１５４において、Clip内にあるオーディオストリームを再生する機能は無いと判定された場合、処理はステップＳ１５６に進む。ただし、ステップＳ１５６以降の処理については後述する。
【０５３０】
これに対して、ステップＳ１５４において、Clip内にあるオーディオストリームを再生する機能はあると判定した場合、コントローラ３４は、そのClipから、SubPathによって特定されるストリーム、すなわち、オーディオストリームを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるオーディオストリームを読み出す。そして、コントローラ３４は、読み出されたオーディオストリームを、例えば2ndオーディオデコーダ７５−２にデコードさせるように指示する。これにより処理はステップＳ１５５に進む。
【０５３１】
ステップＳ１５５において、2ndオーディオデコーダ７５−２は、読み出されたClip内のオーディオストリームをデコードする。
【０５３２】
このようにしてステップＳ１５５の処理が終了したとき、または、上述したステップＳ１５２若しくはＳ１５４の処理でＮＯであると判定されたとき、処理はステップＳ１５６に進む。
【０５３３】
ステップＳ１５６において、コントローラ３４は、SubPath_type=6のSub Pathは存在するか否かを判定する。
【０５３４】
ステップＳ１５６において、SubPath_type=6のSub Pathは存在しないと判定された場合、処理は図６４のステップＳ１６１に進む。ただし、ステップＳ１６１以降の処理については後述する。
【０５３５】
これに対して、ステップＳ１５６において、SubPath_type=6のSub Pathは存在すると判定された場合、処理はステップＳ１５７に進む。ステップＳ１５７において、コントローラ３４は、選択されたSubPath（SubPath_type=6のSub Path）が参照するClipを調べる。
【０５３６】
ステップＳ１５８において、コントローラ３４は、stream_attribute()に記述されている内容に基づいて、そのClip内にあるオーディオストリームを再生する機能はあるか否かを判定する。なお、オーディオストリームの再生機能の有無の判定方法の具体例については、上述した図３０のステップＳ７４の処理の説明の際に併せて説明しているので、ここでは省略する。
【０５３７】
ステップＳ１５８において、Clip内にあるオーディオストリームを再生する機能は無いと判定された場合、コントローラ３４は、そのClipから、SubPathによって特定されるストリーム、すなわち、ビデオストリームを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるビデオストリームを読み出す。ただし、この場合、コントローラ３４は、読み出されたClipに含まれるオーディオストリームのデコードの禁止を指示し、かつ、読み出されたビデオストリームを、例えば2ndビデオデコーダ４１２にデコードさせるように指示する。これにより処理はステップＳ１６０に進む。ただし、ステップＳ１６０以降の処理については後述する。
【０５３８】
これに対して、ステップＳ１５８において、Clip内にあるオーディオストリームを再生する機能はあると判定された場合、コントローラ３４は、そのClipから、SubPathによって特定されるストリーム、すなわち、ビデオストリームおよびオーディオストリームを読み出すようストレージドライブ３１に指示する。ストレージドライブ３１は、この指示に基づいて、対象となるビデオストリームおよびオーディオストリームを読み出す。そして、コントローラ３４は、読み出されたオーディオストリームを、例えば2ndオーディオデコーダ７５−２にデコードさせるように指示し、かつ、読み出されたビデオストリームを、例えば2ndビデオデコーダ４１２にデコードさせるように指示する。これにより処理はステップＳ１５９に進む。
【０５３９】
ステップＳ１５９において、2ndオーディオデコーダ７５−２は、読み出されたClip内のオーディオストリームをデコードする。
【０５４０】
このようにしてステップＳ１５９の処理が終了したとき、または、上述したステップＳ１５８の処理でＮＯであると判定されたとき、処理はステップＳ１６０に進む。
【０５４１】
ステップＳ１６０において、2ndビデオデコーダ４１２は、読み出されたClip内のビデオストリームをデコードする。
【０５４２】
このようにしてステップＳ１６０の処理が終了したとき、または、上述したステップＳ１５６の処理でＮＯであると判定されたとき、処理は図６４のステップＳ１６１に進む。
【０５４３】
ステップＳ１６１において、AVデコーダ部４０３は、メインClip AV Streamをデコードする。ここで、メインClip AV Streamとは、再生対象のPlaylistのMainPathにより参照されるMain TSに含まれているビデオストリームやオーディオストリーム等のことであり、Main TSに含まれている。メインClip AV Streamとは、例えば、ピクチャインピクチャ手法ではプライマリビデオストリームやプライマリオーディオストリーム等のことをいう。即ち、AVデコーダ部４０３のうちの、1stビデオデコーダ７２や1stオーディオデコーダ７５−１等が、このステップＳ１６１の処理を実行する。
【０５４４】
ステップＳ１６２において、AVデコーダ部４０３は、デコードされたメインClip AV Streamと、デコードされたSubPathストリームを合成し、出力する。ここで、デコードされたSubPathストリームとは、図６１のステップＳ１４４の処理でデコードされてステップＳ１４５の処理でプリロード用バッファ４１４に格納されたIG、図６１のステップＳ１４８の処理でデコードされたテキストサブタイトル、図６２のステップＳ１５１の処理でデコードされたオーディオストリーム、図６３のステップＳ１５５の処理でデコードされたオーディオストリーム、図６２のステップＳ１５９の処理でデコードされたオーディオストリーム、および、図６２のステップＳ１６０の処理でデコードされたビデオストリームのうちの０以上のことをいう。
【０５４５】
ステップＳ１６３において、コントローラ３４は、ステップＳ１６２の処理で合成されたストリームを出力中にSubPathの切り替え指示（ユーザの切り替え操作）があったか否かを判定する。
【０５４６】
ステップＳ１６３において、合成されたストリームを出力中にSubPathの切り替え指示が無かったと判定された場合、application_type=1or2のPlayListの再生処理が終了となる。
【０５４７】
これに対して、ステップＳ１６３において、合成されたストリームを出力中にSubPathの切り替え指示が有ったと判定された場合、処理はステップＳ１６４に進む。
【０５４８】
ステップＳ１６４において、コントローラ３４は、その切り替え指示により選択されたSubPathのSubPath_typeを調べる。
【０５４９】
ステップＳ１６５において、コントローラ３４は、ステップＳ１６４の調査結果がSubPath_type=3であるか否かを判定する。
【０５５０】
ステップＳ１６５において、SubPath_type=3であると判定された場合、処理は図６１のステップＳ１４３に戻され、処理が繰り返される。即ち、メインClip AV Streamと合成されるIGが切り替えられる。
【０５５１】
これに対して、ステップＳ１６５において、SubPath_type=3ではないと判定された場合、処理はステップＳ１６６に進む。
【０５５２】
ステップＳ１６６において、コントローラ３４は、ステップＳ１６４の調査結果がSubPath_type=4であるか否かを判定する。
【０５５３】
ステップＳ１６６において、SubPath_type=4であると判定された場合、処理は図６１のステップＳ１４７に戻され、処理が繰り返される。即ち、メインClip AV Streamと合成されるテキストサブタイトルが切り替えられる。
【０５５４】
これに対して、ステップＳ１６６において、SubPath_type=4ではないと判定された場合、処理はステップＳ１６７に進む。
【０５５５】
ステップＳ１６７において、コントローラ３４は、ステップＳ１６４の調査結果がSubPath_type=7であるか否かを判定する。
【０５５６】
ステップＳ１６７において、SubPath_type=7であると判定された場合、処理は図６２のステップＳ１５０に戻され、処理が繰り返される。即ち、メインClip AV Streamと合成されるビデオ／オーディオストリームが切り替えられる。
【０５５７】
これに対して、ステップＳ１６７において、SubPath_type=7ではないと判定された場合、処理はステップＳ１６８に進む。
【０５５８】
ステップＳ１６８において、コントローラ３４は、ステップＳ１６４の調査結果がSubPath_type=5であるか否かを判定する。
【０５５９】
ステップＳ１６８において、SubPath_type=5であると判定された場合、処理は図６３のステップＳ１５３に戻され、処理が繰り返される。即ち、メインClip AV Streamと合成されるオーディオストリームが切り替えられる。
【０５６０】
これに対して、ステップＳ１６８において、SubPath_type=5ではないと判定された場合、処理はステップＳ１６９に進む。
【０５６１】
ステップＳ１６９において、コントローラ３４は、ステップＳ１６４の調査結果がSubPath_type=6であるか否かを判定する。
【０５６２】
ステップＳ１６９において、SubPath_type=6であると判定された場合、処理は図６３のステップＳ１５７に戻され、処理が繰り返される。即ち、メインClip AV Streamと合成されるオーディオストリームやビデオストリームが切り替えられる。
【０５６３】
これに対して、ステップＳ１６９において、SubPath_type=6ではないと判定された場合、application_type=1or2のPlayListの再生処理が終了となる。
【０５６４】
以上説明したように、ピクチャインピクチャ手法を適用するアプリケーションを実現するためには、例えば、プライマリビデオストリームと組み合わせて同時再生され得るストリームの組み合わせの定義、即ち、セカンダリビデオストリーム、プライマリオーディオストリーム、セカンダリオーディオストリーム、および、サブタイトルストリームの組み合わせの定義が必要となる。
【０５６５】
さらに、複数の組み合わせを定義することで、全画面３０１に再生されるプライマリビデオストリームやプライマリオーディオスオストリームの切り替えのみならず、子画面３０２に再生されるセカンダリビデオストリームの切り替えや、サブタイトルストリームの切り替えも容易に行えるようになる。
【０５６６】
次に、図６５および図６６を参照して、再生装置２０において再生可能なデータが記録された記録媒体２１の製造方法について、記録媒体２１がディスク状の記録媒体だった場合を例として説明する。
【０５６７】
即ち、図６５に示すように、例えばガラスなどよりなる原盤が用意され、その上に、例えばフォトレジストなどよりなる記録材料が塗布される。これにより、記録用原盤が製作される。
【０５６８】
そして、図６６に示すように、ソフト製作処理部において、符号化装置（ビデオエンコーダ）で符号化された、再生装置２０や再生装置４０１において再生可能な形式のビデオデータが、一時バッファに記憶され、オーディオエンコーダで符号化されたオーディオデータが、一時バッファに記憶されるとともに、更に、データエンコーダで符号化された、ストリーム以外のデータ（例えば、Indexes、Playlist、PlayItemなど）が一時バッファに記憶される。それぞれのバッファに記憶されたビデオデータ、オーディオデータ、および、ストリーム以外のデータは、多重化器（ＭＰＸ）で同期信号と共に多重化され、誤り訂正符号回路（ＥＣＣ）でエラー訂正用のコードが付加される。そして、変調回路（ＭＯＤ）で所定の変調がかけられ、所定のフォーマットにしたがって、例えば磁気テープなどに一旦記録され、再生装置２０や再生装置４０１において再生可能な記録媒体２１に記録されるソフトウェアが製作される。
【０５６９】
このソフトウェアを必要に応じて編集（プリマスタリング）し、光ディスクに記録すべきフォーマットの信号が生成される。そして、この記録信号に対応して、レーザビームが変調されて、このレーザビームが原盤上のフォトレジスト上に照射される。これにより、原盤上のフォトレジストが記録信号に対応して露光される。
【０５７０】
その後、この原盤を現像し、原盤上にピットを出現させる。このようにして用意された原盤に、例えば電鋳等の処理を施し、ガラス原盤上のピットを転写した金属原盤を製作する。この金属原盤から、さらに金属スタンパを製作し、これを成形用金型とする。
【０５７１】
この成形用金型に、例えばインジェクションなどによりＰＭＭＡ（アクリル）またはＰＣ（ポリカーボネート）などの材料を注入し、固定化させる。あるいは、金属スタンパ上に２Ｐ（紫外線硬化樹脂）などを塗布した後、紫外線を照射して硬化させる。これにより、金属スタンパ上のピットを、樹脂よりなるレプリカ上に転写することができる。
【０５７２】
このようにして生成されたレプリカ上に、反射膜が、蒸着あるいはスパッタリングなどにより形成される。あるいはまた、生成されたレプリカ上に、反射膜が、スピンコートにより形成される。
【０５７３】
その後、このディスクに対して内外径の加工が施され、２枚のディスクを張り合わせるなどの必要な処置が施される。さらに、ラベルを貼り付けたり、ハブが取り付けられて、カートリッジに挿入される。このようにして再生装置２０や再生装置４０１によって再生可能なデータが記録された記録媒体２１が完成する。
【０５７４】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、上述した処理は、図６７に示されるようなパーソナルコンピュータ５００により実行される。
【０５７５】
図６７において、CPU（Central Processing Unit）５０１は、ROM(Read Only Memory)５０２に記憶されているプログラム、または、記憶部５０８からRAM(Random Access Memory)５０３にロードされたプログラムに従って各種の処理を実行する。RAM５０３にはまた、CPU５０１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【０５７６】
CPU５０１、ROM５０２、およびRAM５０３は、内部バス５０４を介して相互に接続されている。この内部バス５０４にはまた、入出力インターフェース５０５も接続されている。
【０５７７】
入出力インターフェース５０５には、キーボード、マウスなどよりなる入力部５０６、CRT，LCDなどよりなるディスプレイ、スピーカなどよりなる出力部５０７、ハードディスクなどより構成される記憶部５０８、並びに、モデム、ターミナルアダプタなどより構成される通信部５０９が接続されている。通信部５０９は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行う。
【０５７８】
入出力インターフェース５０５にはまた、必要に応じてドライブ５１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどによりなるリムーバブルメディア５２１が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部５０８にインストールされる。
【０５７９】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
【０５８０】
この記録媒体は、図６７に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されているリムーバブルメディア５２１よりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM５０２や記憶部５０８が含まれるハードディスクなどで構成される。
【０５８１】
なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０５８２】
また、ドライブ５１０は、装着されたリムーバブルメディア５２１に記録されたデータを読み出すことができるのみならず、装着されたリムーバブルメディア５２１にデータを記録することができる。そして、パーソナルコンピュータ５００が、図６６を用いて説明したソフト製作処理部と同様の機能を有する（例えば、ＣＰＵ５０１を用いて、ソフト製作処理部と同様の機能を実現するためのプログラムを実行する）ことが可能であるのは言うまでもない。
【０５８３】
すなわち、パーソナルコンピュータ５００は、図６６を用いて説明したソフト制作処理部により生成されたデータと同様のデータを、ＣＰＵ５０１の処理により生成するか、または、外部の装置で生成された図６６を用いて説明したソフト制作処理部により生成されたデータと同様のデータを、通信部５０９またはドライブ５１０に装着されたリムーバブルメディア５２１を介して取得することができる。そして、パーソナルコンピュータ５００は、生成または取得された図６６を用いて説明したソフト制作処理部により生成されたデータと同様のデータを、ドライブ５１０に装着されたリムーバブルメディア５２１に記録する記録装置としての機能を実現することができる。
【０５８４】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０５８５】
２０  再生装置，  ３１  ストレージドライブ，  ３２  スイッチ，  ３３  ＡＶデコーダ部，  ３４  コントローラ，  ５１乃至５４  バッファ，  ５５，５６  PIDフィルタ，  ５７乃至５９  スイッチ，  ７１  バックグラウンドデコーダ，  ７２  ビデオデコーダ/1stビデオデコーダ，  ７３  プレゼンテーショングラフィックスデコーダ，  ７４  インタラクティブグラフィックスデコーダ，  ７５  オーディオデコーダ，  ７６  Text-STコンポジション，  ７７  スイッチ，  ９１  バックグラウンドプレーン生成部，  ９２  ビデオプレーン生成部/1stビデオプレーン生成部，  ９３  プレゼンテーショングラフィックスプレーン生成部，  ９４  インタラクティブグラフィックスプレーン生成部，  ９５  バッファ  ９６  ビデオデータ処理部，  ９７  ミキシング処理部，  １０１  ミキシング処理部，  ４０１  再生装置，  ４０３  AVデコーダ部，  ４１１  PIDフィルタ，  ４１２  2ndビデオデコーダ，  ４１３  2ndビデオプレーン生成部，  ４１４プリロード用バッファ
【図１】
0005472229.tif 000002
【図２】
0005472229.tif 000003
【図３】
0005472229.tif 000004
【図４】
0005472229.tif 000005
【図５】
0005472229.tif 000006
【図６】
0005472229.tif 000007
【図７】
0005472229.tif 000008
【図８】
0005472229.tif 000009
【図９】
0005472229.tif 000010
【図１０】
0005472229.tif 000011
【図１１】
0005472229.tif 000012
【図１２】
0005472229.tif 000013
【図１３】
0005472229.tif 000014
【図１４】
0005472229.tif 000015
【図１５】
0005472229.tif 000016
【図１６】
0005472229.tif 000017
【図１７】
0005472229.tif 000018
【図１８】
0005472229.tif 000019
【図１９】
0005472229.tif 000020
【図２０】
0005472229.tif 000021
【図２１】
0005472229.tif 000022
【図２２】
0005472229.tif 000023
【図２３】
0005472229.tif 000024
【図２４】
0005472229.tif 000025
【図２５】
0005472229.tif 000026
【図２６】
0005472229.tif 000027
【図２７】
0005472229.tif 000028
【図２８】
0005472229.tif 000029
【図２９】
0005472229.tif 000030
【図３０】
0005472229.tif 000031
【図３１】
0005472229.tif 000032
【図３２】
0005472229.tif 000033
【図３３】
0005472229.tif 000034
【図３４】
0005472229.tif 000035
【図３５】
0005472229.tif 000036
【図３６】
0005472229.tif 000037
【図３７】
0005472229.tif 000038
【図３８】
0005472229.tif 000039
【図３９】
0005472229.tif 000040
【図４０】
0005472229.tif 000041
【図４１】
0005472229.tif 000042
【図４２】
0005472229.tif 000043
【図４３】
0005472229.tif 000044
【図４４】
0005472229.tif 000045
【図４５】
0005472229.tif 000046
【図４６】
0005472229.tif 000047
【図４７】
0005472229.tif 000048
【図４８】
0005472229.tif 000049
【図４９】
0005472229.tif 000050
【図５０】
0005472229.tif 000051
【図５１】
0005472229.tif 000052
【図５２】
0005472229.tif 000053
【図５３】
0005472229.tif 000054
【図５４】
0005472229.tif 000055
【図５５】
0005472229.tif 000056
【図５６】
0005472229.tif 000057
【図５７】
0005472229.tif 000058
【図５８】
0005472229.tif 000059
【図５９】
0005472229.tif 000060
【図６０】
0005472229.tif 000061
【図６１】
0005472229.tif 000062
【図６２】
0005472229.tif 000063
【図６３】
0005472229.tif 000064
【図６４】
0005472229.tif 000065
【図６５】
0005472229.tif 000066
【図６６】
0005472229.tif 000067
【図６７】
0005472229.tif 000068