(57)【要約】本発明のデータ処理装置は、再生のタイミングを示す時刻情報が付加された映像データおよび音声データを含むデータストリームから映像及び音声を再生する。この装置は、第１および第２データストリームを連続して取得するストリーム取得部と、データストリーム間に境界を示すダミーデータを挿入する挿入部と、ダミーデータを検出して各データストリームの映像データおよび音声データに識別情報を関連付ける解析部と、同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、映像データと音声データの出力タイミングを制御する制御部、出力部とを備えている。
2005002221.tif 000002
【特許請求の範囲】
【請求項１】
映像データおよび音声データを含むデータストリームから映像および音声を再生するデータ処理装置であって、前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されており、
第１データストリームおよび第２データストリームを連続して取得するストリーム取得部と、
前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入する挿入部と、
前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付ける解析部と、
同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御する制御部と、
前記出力タイミングで、前記映像および前記音声を出力する出力部と
を備えたデータ処理装置。
【請求項２】
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定し、前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止する、請求項１に記載のデータ処理装置。
【請求項３】
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定し、前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止する、請求項１に記載のデータ処理装置。
【請求項４】
前記制御部は、映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させ、前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御する、請求項１に記載のデータ処理装置。
【請求項５】
前記ストリーム取得部は、３以上のデータストリームを連続して取得することが可能であり、
前記挿入部は、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入する、請求項１に記載のデータ処理装置。
【請求項６】
前記制御部は、前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止し、現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力する、請求項５に記載のデータ処理装置。
【請求項７】
前記制御部は、前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止し、その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力する、請求項１に記載のデータ処理装置。
【請求項８】
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、
前記挿入部は、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入する、請求項１に記載のデータ処理装置。
【請求項９】
映像データおよび音声データを含むデータストリームから映像および音声を再生するデータ処理方法であって、前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されており、
第１データストリームおよび第２データストリームを連続して取得するステップと、
前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入するステップと、
前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付けるステップと、
同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップと、
前記出力タイミングで、前記映像および前記音声を出力するステップと
を包含するデータ処理方法。
【請求項１０】
前記制御するステップは、
前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定するステップと、
前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止するステップとを包含する、請求項９に記載のデータ処理方法。
【請求項１１】
前記制御するステップは、
前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定するステップと、
前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止するステップとを包含する、請求項９に記載のデータ処理方法。
【請求項１２】
前記制御するステップは、
映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させるステップと、
前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップと
を包含する、請求項９に記載のデータ処理方法。
【請求項１３】
前記ストリームを取得するステップは、３以上のデータストリームを連続して取得し、
前記挿入するステップは、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入する、請求項９に記載のデータ処理方法。
【請求項１４】
前記制御するステップは、
前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止するステップと、
現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力するステップとを包含する、請求項１３に記載のデータ処理方法。
【請求項１５】
前記制御するステップは、
前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止するステップと、
その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力するステップと
を包含する、請求項９に記載のデータ処理方法。
【請求項１６】
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、
前記挿入するステップは、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入する、請求項９に記載のデータ処理方法。
【発明の詳細な説明】
【技術分野】  本発明は、音声および映像の符号化データを復号し再生する技術に関し、特に、複数のデータストリームから音声および映像を連続して再生する際に、同じデータストリームの対応する音声および映像を同期して再生する技術に関する。
【背景技術】  近年、デジタル技術の発達により、動画、静止画等の映像や、音声等に関するコンテンツのデータは符号化され、符号化データストリームとして光ディスクやハードディスク等の記録媒体に記録されるようになってきた。例えばＭＰＥＧ規格（ＩＳＯ１１１７２またはＩＳＯ１３８１８）によれば、音声はオーディオ符号化ストリームとして、また映像はビデオ符号化ストリームとしてそれぞれ符号化される。その後、各符号化データを格納したデータパケットが時系列に並べられ、１つに多重化されて符号化データストリームが構築される。このような符号化ストリームの多重化処理は、システムエンコードと呼ばれている。システムエンコードされた多重化データストリーム（システムストリーム）は、データパケット単位で一つの伝送路上を伝送され、再生装置によって処理される。その結果、映像および音声が再生される。
図１（ａ）〜（ｄ）は、データストリーム１０のデータ構造を示している。再生装置は、図１（ａ）に示すデータストリーム１０から順に、（ｂ）および（ｃ）に示すデータ構造を構築し、（ｄ）に示す形態によって映像および音声を出力する。
図１（ａ）は、データストリーム１０のデータ構造を示す。例えば、データストリーム１０はＭＰＥＧ２トランスポートストリームである。
データストリーム１０は、多重化されたビデオパケット“Ｖｎ”（ｎ＝１，２，・・・）およびオーディオパケット“Ａｎ”（ｎ＝１，２，・・・）から構成されている。各パケットは、パケットヘッダと、パケットヘッダに続くペイロードから構成されている。ビデオパケットのペイロードには映像に関するデータが格納され、オーディオパケットのペイロードには映像に関するデータが格納されている。
図１（ｂ）は、パケット化エレメンタリストリーム（ＰＥＳ）１１のデータ構造を示す。ＰＥＳ１１は、データストリーム１０を構成する各パケットのペイロードのデータに基づいて構築される。ＰＥＳ１１は、複数のＰＥＳパケットから構成されており、各ＰＥＳパケットはＰＥＳヘッダおよびＰＥＳペイロードから構成されている。
図１（ｃ）は、ビデオ／オーディオのエレメンタリストリーム（ＥＳ）の構成を示す。ビデオＥＳ１２ｖは、ピクチャヘッダ、ピクチャデータ、およびピクチャの表示タイミングを規定する再生時刻情報（ＶＰＴＳ）等からなるデータ単位を複数含んでいる。各ピクチャデータは、そのデータのみによって、または、そのデータとその前および／または後に復号化されるピクチャデータとによって構築可能な１枚分のピクチャのデータである。オーディオＥＳ１２ａも同様に、ヘッダ、オーディオフレームデータおよびオーディオフレームの出力タイミングを規定する再生時刻情報（ＡＰＴＳ）等からなるデータ単位を複数含んでいる。なお再生時刻情報（ＡＰＴＳ、ＶＰＴＳ）は、ＭＰＥＧ２規格では３３ビットで表されるデータであり、ＰＥＳパケットのヘッダ（図１（ｂ）の“ＰＥＳ−Ｈ”）の領域（Ｐｒｅｓｅｎｔａｔｉｏｎ＿Ｔｉｍｅ＿Ｓｔａｍｐ）に格納されている。
図１（ｄ）は、出力されるビデオピクチャおよびオーディオフレームを示す。ビデオピクチャ１３−１および１３−２等は１枚の画像（ピクチャ）であり、各々はビデオＥＳ１２ｖ内のピクチャデータに基づいて表示される。ピクチャの表示のタイミングはビデオＥＳ１２ｖ内の再生時刻情報（ＶＰＴＳ）によって指定され、その情報にしたがって各ピクチャの表示を切り替えることによって動画像が映像機器の画面上に表示される。オーディオフレームの出力のタイミングはオーディオＥＳ１２ａ内の再生時刻情報（ＡＰＴＳ）によって指定され、その情報にしたがって各オーディオフレームを出力することによって音声がスピーカから出力される。
図２は、図１（ａ）に示すデータストリーム１０を再生することが可能な従来の再生装置１２０の機能ブロックの構成を示す。再生装置１２０は、データストリーム１０の各パケットを取得し、取得したパケットに基づいてビデオおよびオーディオの各エレメンタリストリームまでデコードし、その後、復元されたビデオピクチャおよびオーディオフレームを出力する。
いま、再生装置１２０が２つのデータストリーム１および２を続けて読み出し、それぞれのビデオピクチャおよびオーディオフレームを再生する処理を考える。各データストリームは図１（ａ）のデータ構造を有する。ストリーム読み出し部１２０１が各データストリームを連続して読み出すと、再生装置１２０内部には１本のデータストリームが送出される。そこで以下では、この１本のデータストリームのデータ部分のうち、データストリーム１に対応するデータ部分を「第１区間」と称し、データストリーム２に対応するデータ部分を「第２区間」と称する。また、再生するストリームが切り替わる点を境界と呼ぶことにする。境界は第１区間の終点であり、第２区間の始点でもある。
データストリームでは、音声および映像の各パケットが多重化されている。同時刻に再生されるべき音声および映像のパケットがデータストリームにおいて直列に配置されて伝送されるので、データストリームの読み出しを中断すると同時刻に再生すべき音声および映像の一方しか存在しない場合がある。よって、相対的に音声あるいは映像の一方の再生時間が短く、もう一方が長くなることがある。これは上述した境界の第１区間の終点近傍で生じる。このようなデータストリームを復号すると、第１区間の終点近傍（例えば第１区間の再生終了時刻の１秒前）では映像は全て再生されたが音声が途切れたり、または音声は全て再生されたが映像が途切れたりすることがある。また、第２区間の始点においても途中から読み出しを開始するため、映像の再生当初の音声が存在しなかったり、音声の再生当初の映像が存在しなかったりすることがある。
特に第１区間および第２区間の映像および音声を連続して再生するときは、本来同時に再生されるべきではない、境界前後の異なる区間の音声と映像が同時に再生されてしまうことがある。そこで再生装置１２０は、読み出しの対象を切り替えた時にダミーパケットを挿入している。図３（ａ）は、第１区間と第２区間との間に挿入されたダミーパケット１３０４を示す。ダミーパケット挿入部１２０２がデータストリーム１３０２の終端にダミーパケット１３０４を挿入し、その後データストリーム１３０３を結合することにより、ダミーパケット１３０４によって第１区間と第２区間とに区分できるデータストリーム１３０１が得られる。
第１区間のデータストリーム１３０２、ダミーパケット１３０４および第２区間のデータストリーム１３０３は、連続してストリーム分離部１２０３に送られる。ストリーム分離部１２０３は第１区間のデータストリーム１３０２を受け取ると、それに含まれるオーディオパケット（Ａ１１等）と、ビデオパケット（Ｖ１１、Ｖ１２、Ｖ１３等）とを分離し、さらに、それぞれをオーディオＥＳおよびビデオＥＳにまで復元（システムデコード）しながら、それぞれを順次第１オーディオ入力バッファ１２０５および第１ビデオ入力バッファ１２１２に格納する。
そしてストリーム分離部１２０３がダミーパケット１３０４を検出すると、第１スイッチ１２０４を切り替えて、ストリーム分離部１２０３と第２のオーディオ入力バッファ１２０６を接続する。同時に第２のスイッチ１２１１を切り替え、ストリーム分離部１２０３と第２のビデオ入力バッファ１２１３を接続する。
その後、ストリーム分離部１２０３は、第２区間のデータストリーム１３０３のオーディオパケット（Ａ２１等）と、ビデオパケット（Ｖ２１、Ｖ２２、Ｖ２３等）とを分離して、それぞれをシステムデコードしながら、オーディオＥＳおよびビデオＥＳを第２オーディオ入力バッファ１２０６および第２ビデオ入力バッファ１２１３に格納する。
オーディオ復号部１２０８は、第３スイッチ１２０７を介して第１オーディオ入力バッファ１２０５からオーディオＥＳを読み出して復号化（エレメンタリデコード）する。そして、得られたオーディオのフレームデータをオーディオ出力バッファ１２０９に送る。オーディオ出力部１２１０は、オーディオ出力バッファ１２０９から復号化されたオーディオフレームデータを読み出し、出力する。
一方、ビデオ復号部１２１５は、第４スイッチ１２１４を介して第１ビデオ入力バッファ１２１２からビデオストリームを読み出してエレメンタリデコードする。そして、得られたビデオのピクチャデータをビデオ出力バッファ１２１６に送る。ビデオ出力部１２１７は、ビデオ出力バッファ１２１６から復号化されたビデオピクチャデータを読み出し、出力する。
オーディオ復号部１２０８およびビデオ復号部１２１５は、ＡＶ同期制御部１２１８により、復号の開始や停止の制御がされる。また、オーディオ出力部１２１０およびビデオ出力部１２１７も、ＡＶ同期制御部１２１８によって出力の開始や停止の制御がされる。
第３スイッチ１２０７および第４スイッチ１２１４は、第１区間の各ビデオ／オーディオパケットを読み出した後はそれぞれ切り替わり、第２オーディオ入力バッファ１２０６とオーディオ復号部１２０８とを接続し、第２ビデオ入力バッファ１２１３とビデオ復号部１２１５とを接続する。その後行われる復号処理および出力処理は先の処理と同様である。
図３（ｂ）は、第１区間のオーディオおよびビデオストリーム１３０５および１３０６、第２区間のオーディオおよびビデオストリーム１３０７および１３０８の各再生時刻の関係を示す。各ストリームは、図１（ｃ）に記載されているエレメンタリストリーム（ＥＳ）であるとする。各ストリームを構成するオーディオフレーム／ビデオピクチャの再生時刻は、図１（ｃ）に示すように再生時刻情報（ＡＰＴＳおよびＶＰＴＳ）によって規定されている。
図３（ｂ）によれば、第１区間のオーディオストリーム１３０５の再生終了時刻Ｔａとビデオストリーム１３０６の再生終了時刻Ｔｂとが一致していないことが理解される。また、第２区間のオーディオストリーム１３０７の再生開始時刻Ｔｃとビデオストリーム１３０８の再生開始時刻Ｔｄとが一致していないことも理解される。
例えば、日本国特開２０００−３６９４１号公報には、スキップ点の前後において動画を連続再生可能な、第１の例による再生装置が開示されている。そこで、そのような再生装置を用いて、図３（ｂ）に示すビデオストリーム１３０６および１３０８を連続再生する処理を説明する。
図３（ｂ）に示すように、境界前の時刻ＴａからＴｂの区間では、オーディオストリーム１３０５が欠落している。そこで、オーディオ復号部１２０８は第１区間のオーディオストリームの復号完了後、一旦復号を停止する。次に、オーディオ復号部１２０８には第２オーディオ入力バッファ１２０６から第２区間のオーディオストリーム１３０７が入力される。
第２区間の時刻ＴｃからＴｄの間は、ビデオストリーム１３０８が欠落しているため、時刻Ｔｃから時刻Ｔｄの間のオーディオストリームを復号せずに破棄する。破棄の処理は、例えば、オーディオ復号部１２０８が第２入力バッファ１２０６上の読み出しアドレスを時刻Ｔｃから時刻Ｔｄに相当するデータが格納されたアドレスに移動することによって行われる。この破棄の処理は、オーディオストリームを復号する処理に比べて非常に短い時間で完了するので、オーディオ復号部１２０８は、時刻Ｔｄ以降のオーディオストリームを復号開始の指示がＡＶ同期制御部１２１８から来るのを待つ。一方、オーディオ復号部１２０８が時刻Ｔｄ以降の復号開始指示の待機状態に入るまでの間、ビデオ復号部１２１５は、第１区間の時刻Ｔｂまでビデオストリームの復号および出力を行う。
時刻Ｔｂまでのビデオストリームの復号処理が完了した時点で、第２ビデオ入力バッファ１２１３には境界後の時刻Ｔｄ以降のビデオストリームが格納されているとする。ビデオ復号部１２１５は、時刻Ｔｂまでのビデオストリームの復号に続けて時刻Ｔｄ以降の復号を行う。これにより、時刻Ｔｂまでの映像と時刻Ｔｄからの映像は連続して再生される。時刻Ｔｄのビデオストリームの復号を開始する際には、ＡＶ同期制御部１２１８は、待機させていたオーディオ復号部１２０８を起動し、時刻Ｔｄ以降、オーディオストリーム１３０７の復号を開始する。これにより、境界においてビデオストリームを連続的に再生し、かつ、音声と映像とを同期させて出力することが可能となる。
なお、日本国特開２００２−２８１４５８号公報や日本国特開平１０−１６４５１２号公報に記載されている技術によっても、境界前後において映像を連続して再生することができる。例えば、日本国特開２００２−２８１４５８号公報によれば、オーディオストリーム１３０５、１３０７に付随する再生時刻情報を用いて、図３（ｂ）に示す時刻ＴｃからＴｄまでの区間のオーディオストリームを破棄し、境界前後での連続再生を実現できる。なお、再生時刻情報を用いると、オーディオストリームに対してビデオストリームが欠落している場合にはオーディストリームを破棄できるため、オーディストリームの不要な処理負荷をなくすとともに、第２区間のストリームをすぐに読み込むことができる。よって、境界前後における映像の連続再生も可能となる。
しかしながら、従来の技術では境界前後において映像を連続して再生することは可能であるが、映像と音声との同期がずれてしまうことがあった。以下、図４（ａ）および（ｂ）を参照しながら具体的に説明する。
図４（ａ）は、２つの境界によって３つの区間が規定されたデータストリーム１４０１を示す。データストリーム１４０１には２つのダミーパケット１および２が含まれている。第１区間に対応するデータストリーム１４０２のオーディオパケットＡ１１の後にダミーパケット１が挿入される。その後、第２区間に対応するデータストリーム１４０３が読み出される。続いて、データストリーム１４０３の最後のビデオパケットＶ２２の後にダミーパケット２が挿入される。そしてその後、第３区間に対応するデータストリーム１４０４が読み出される。
ここで、第２区間には、ビデオパケットＶ２１およびＶ２２のみが存在し、オーディオパケットは存在していないことに留意されたい。これは、映像のたかだか数フレーム分に相当する短い区間が第２区間として規定され、その区間のデータストリーム１４０３内にはデコード可能なオーディオフレームに足るだけのオーディオパケットが存在しないことを意味している。例えば、ＭＰＥＧ２規格で録画されたデータストリームを、時間的に非常に短い区間を指定して編集した場合に、このような区間が生成される。
図４（ｂ）は、第１区間のオーディオおよびビデオストリーム１４０５および１４０６、第２区間のビデオストリーム１４０７、および、第３区間のオーディオおよびビデオストリーム１４０８および１４０９の各再生時刻の関係を示す。図４（ｂ）でも、各ストリームは、図１（ｃ）に記載されているエレメンタリストリーム（ＥＳ）レベルにまで構築されたストリームであるとする。
まず、映像の再生処理を説明すると、境界１の前後では、第１区間のビデオパケットＶ１１までのピクチャデータが第１ビデオ入力バッファ１２１２に格納され、第２区間のビデオパケットＶ２１およびＶ２２のピクチャデータが第２ビデオ入力バッファ１２１３に格納される。いずれのデータもその後順次復号され、映像が連続的に再生される。そして、境界２の後は、第３区間のビデオストリームの格納先が、第１ビデオ入力バッファ１２１２に再び切り替えられ、境界１と同様の制御で復号され、映像が連続的に出力される。
一方、音声の再生処理を説明すると、まず時刻Ｔａにおいて、オーディオ復号部１２０８による復号が一旦停止され、オーディオストリームの格納先が、第１オーディオ入力バッファ１２０５から第２オーディオ入力バッファ１２０６に切り替えられる。次に、第３区間のデータストリームが記録媒体１２１から読み出され、第３区間のオーディオストリームが、第２オーディオ入力バッファ１２０６に格納される。
従来の再生装置は、オーディオストリームを復号し音声を再生する際に、再生時刻情報を利用している。第２区間のビデオストリーム１４０７に付加された再生時刻情報および第３区間のビデオストリーム１４０９に付加された再生時刻情報が単純に増加しているとき（特に、時刻Ｔｃから時刻Ｔｆまでの区間の再生時刻情報の値が単調増加しているとき）は、特に問題なく処理を進めることが可能である。オーディオ復号部１２０８およびオーディオ出力部１２１０は、ビデオ復号部１２１５およびビデオ出力部１２１７が時刻Ｔｆの処理をするまで待機し、時刻Ｔｆより処理を開始し、映像に同期して音声を出力すればよい。
しかしながら、各区間のデータストリームに付加された再生時刻情報はストリーム相互間では調整されていないため、各区間の再生時刻情報の値の大小を予め定めたり、予測することはできない。よって再生時刻情報に基づいて再生を制御すると、破棄してはならないデータを破棄してしまう等の不具合が生じ、連続再生に支障を来たす。例えば、時刻Ｔｆに出力すべきオーディオフレームの再生時刻情報の値（ＡＰＴＳ＿ｆ）が時刻Ｔｃに出力すべきビデオピクチャの再生時刻情報の値（ＶＰＴＳ＿ｃ）よりも小さいとすると、従来の再生装置では、第２区間の映像が再生される前あるいは再生中に第３区間のオーディオストリームが破棄されてしまう。特に、ＡＰＴＳ＿ｆがＶＰＴＳ＿ｃよりも非常に小さい場合には、第３区間のオーディオストリームのデータが大量に破棄され、第３区間の映像が再生され始めても音声が全く出力されないという不具合が発生する。
また、時刻Ｔｆの再生時刻情報（ＡＰＴＳ＿ｆ）の値が、第２区間の先頭ビデオピクチャの再生時刻情報（ＶＰＴＳ＿ｃ）の値以上で、かつ最終ビデオピクチャの再生時刻情報（ＶＰＴＳ＿ｄ）の値以下の時には、第２区間の映像再生中に、時刻Ｔｆから再生が開始されるべき第３区間の音声の再生が開始されるという不具合が発生する。
本発明の目的は、複数のデータストリームを連続的に再生する際に、音声と映像とをずれることなく同期して再生することである。
【発明の開示】
本発明によるデータ処理装置は、映像データおよび音声データを含むデータストリームから映像および音声を再生する。前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されている。前記データ処理装置は、第１データストリームおよび第２データストリームを連続して取得するストリーム取得部と、前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入する挿入部と、前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付ける解析部と、同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御する制御部と、前記出力タイミングで、前記映像および前記音声を出力する出力部とを備えている。
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定し、前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止してもよい。
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定し、前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止してもよい。
前記制御部は、映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させ、前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御してもよい。
前記ストリーム取得部は、３以上のデータストリームを連続して取得することが可能であり、前記挿入部は、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入してもよい。
前記制御部は、前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止し、現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力してもよい。
前記制御部は、前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止し、その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力してもよい。
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、前記挿入部は、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入してもよい。
本発明によるデータ処理方法は、映像データおよび音声データを含むデータストリームから映像および音声を再生する。前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されている。前記データ処理方法は、第１データストリームおよび第２データストリームを連続して取得するステップと、前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入するステップと、前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付けるステップと、同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップと、前記出力タイミングで、前記映像および前記音声を出力するステップとを包含する。
前記制御するステップは、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定するステップと、前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止するステップとを包含してもよい。
前記制御するステップは、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定するステップと、前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止するステップとを包含してもよい。
前記制御するステップは、映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させるステップと、前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップとを包含してもよい。
前記ストリームを取得するステップは、３以上のデータストリームを連続して取得し、前記挿入するステップは、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入してもよい。
前記制御するステップは、前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止するステップと、現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力するステップとを包含してもよい。
前記制御するステップは、前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止するステップと、その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力するステップとを包含してもよい。
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、前記挿入するステップは、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入してもよい。
【図面の簡単な説明】  図１（ａ）〜（ｄ）は、データストリーム１０のデータ構造を示す図である。
図２は、図１（ａ）に示すデータストリーム１０を再生することが可能な従来の再生装置１２０の機能ブロックの構成を示す図である。
図３（ａ）は、第１区間と第２区間との間に挿入されたダミーパケット１３０４を示す図であり、図３（ｂ）は、第１区間のオーディオおよびビデオストリーム１３０５および１３０６、第２区間のオーディオおよびビデオストリーム１３０７および１３０８の各再生時刻の関係を示す図である。
図４（ａ）は、２つの境界によって３つの区間が規定されたデータストリーム１４０１を示す図であり、図４（ｂ）は、第１区間のオーディオおよびビデオストリーム１４０５および１４０６、第２区間のビデオストリーム１４０７、および、第３区間のオーディオおよびビデオストリーム１４０８および１４０９の各再生時刻の関係を示す図である。
図５は、トランスポートストリーム２０のデータ構造を示す図である。
図６（ａ）はビデオＴＳパケット３０のデータ構造を示す図であり、図６（ｂ）は、オーディオＴＳパケット３１のデータ構造を示す図である。
図７は、本実施形態による再生装置１００の機能ブロックの構成を示す図である。
図８（ａ）〜（ｃ）は、それぞれ読み出されたＴＳ１〜ＴＳ３を示す図であり、図８（ｄ）は、ダミーパケットが挿入されたＴＳ７０を示す図である。
図９（ａ）は、ダミーパケット７１のデータ構造を示す図であり、図９（ｂ）は、ダミーパケット７１の具体的なデータ構造を示す図である。
図１０は、第１の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す図である。
図１１は、第２の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す図である。
図１２は、第３の例による、オーディオストリームおよびビデオストリームの再生時刻の関係を示す図である。
図１３は、複数のＴＳを連続して読み出す際の処理の手順を示す図である。
図１４は、ストリーム解析部１０３の処理の手順を示す図である。
図１５（ａ）は、ストリーム解析部１０３に入力されたＴＳ７０を示す図であり、図１５（ｂ）はＰＥＳ８０のデータ構造を示す図であり、図１５（ｃ）は、ビデオＥＳ８２のデータ構造を示す図である。
図１６は、フレームデータと識別情報とを関連付けしたオーディオ管理テーブルを示す図である。
図１７は、音声および映像を出力するための、ＡＶ同期制御部１１８における前処理の手順を示す図である。
図１８は、音声および映像を出力するための、ＡＶ同期制御部１１８における主要な処理の手順を示す図である。
図１９は、音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す図である。
図２０は、音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す図である。
【発明を実施するための最良の形態】  以下、添付の図面を参照しながら本発明のデータ処理装置を説明する。まず処理の対象であるデータストリームのデータ構造を説明し、その後、データ処理装置の実施形態である再生装置を説明する。
本実施形態では、データストリームを、ＭＰＥＧ２規格ＩＳＯ−１３８１８−１で定義されているトランスポートストリーム（以下、「ＴＳ」または「トランスポートストリーム」と記述する）であるとして説明する。ＴＳは、オーディオストリームおよびビデオストリームを多重化したシステムストリームの一つの形態として知られている。
図５は、トランスポートストリーム２０のデータ構造を示す。トランスポートストリーム２０は、複数のＴＳオブジェクトユニット（ＴＳ  ＯＢｊｅｃｔ  Ｕｎｉｔ；ＴＯＢＵ）２１を含み、そのＴＯＢＵ２１は１以上のトランスポートパケット（ＴＳパケット）から構成されている。ＴＳパケットは、例えば、圧縮符号化されたビデオデータが格納されたビデオＴＳパケット（Ｖ＿ＴＳＰ）３０、（圧縮）符号化されたオーディオデータが格納されたオーディオＴＳパケット（Ａ＿ＴＳＰ）３１の他、番組表（プログラム・アソシエーション・テーブル；ＰＡＴ）が格納されたパケット（ＰＡＴ＿ＴＳＰ）、番組対応表（プログラム・マップ・テーブル；ＰＭＴ）が格納されたパケット（ＰＭＴ＿ＴＳＰ）およびプログラム・クロック・リファレンス（ＰＣＲ）が格納されたパケット（ＰＣＲ＿ＴＳＰ）等を含む。各パケットのデータ量は１８８バイトである。
以下、本発明の処理に関連するビデオＴＳパケットおよびオーディオＴＳパケットを説明する。他の種類のパケットのデータ構造およびそのデータに基づく機能は本発明の処理とは直接に関連しないため、それらの説明は省略する。
図６（ａ）はビデオＴＳパケット３０のデータ構造を示す。ビデオＴＳパケット３０は、４バイトのトランスポートパケットヘッダ３０ａ、および、１８４バイトのＴＳペイロード３０ｂを有する。ＴＳペイロード３０ｂには上述のビデオデータが格納されている。一方、図６（ｂ）は、オーディオＴＳパケット３１のデータ構造を示す。オーディオＴＳパケット３１も同様に、４バイトのトランスポートパケットヘッダ３１ａ、および、１８４バイトのＴＳペイロード３１ｂを有する。ＴＳペイロード３１ｂには上述のオーディオデータが格納されている。ＴＳペイロード３０ｂに格納されているビデオデータおよびＴＳペイロード３１ｂに格納されているオーディオデータは、概ね、図１（ａ）〜（ｄ）に示す関係に基づいて処理され、映像および音声として再生される。
上述の例から理解されるように、一般にＴＳパケットは４バイトのトランスポートパケットヘッダと、１８４バイトのデータ領域とから構成されている。パケットヘッダには、そのパケットの種類を特定するパケット識別子（Ｐａｃｋｅｔ  ＩＤ；ＰＩＤ）が記述されている。例えば、ビデオＴＳパケットのＰＩＤは“０ｘ００２０”であり、オーディオＴＳパケットのＰＩＤは“０ｘ００２１”である。データ領域は、ビデオデータ、オーディオデータ等のコンテンツのデータや、再生を制御するための制御データ等を格納する。どのようなデータが格納されているかは、パケットの種類に応じて異なる。なお、パケットヘッダとＴＳペイロードとの間に「アダプテーションフィールド」と呼ばれる領域が挿入され、制御データの伝送、ペイロードのデータサイズの調整等に用いられる場合がある。しかし、本実施形態による処理の主要な特徴は、ＴＳパケットのペイロードを利用した処理にあるため、アダプテーションフィールドが存在しない場合を例として説明する。
なお、図５、図６（ａ）および図６（ｂ）はトランスポートストリームに関するデータ構造の例であるが、このデータ構造は、プログラムストリームにおける「パック」にも同様に適用できる。パックでは、パケットヘッダに続けてデータが配置されているからである。パケットヘッダの前にはパックヘッダが付加され、パックのデータ量は２０４８キロバイトである等の点においてパケットと相違している。なお、「パック」はパケットの１つの例示的な形態として知られている。なお、プログラムストリームの他、上述のパケット構造と同様のパケット構造を有するデータストリームであれば、以下に説明する処理は適用可能である。
図７は、本実施形態による再生装置１００の機能ブロックの構成を示す。再生装置１００には、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ等の光ディスク１２０が装填されており、光ディスク１２０に記録されたトランスポートストリーム（ＴＳ）を読み出す。そして、ＴＳを構成するビデオパケットおよびオーディオパケットからビデオデータおよびオーディオデータを抽出し、映像および音声を再生する。
本実施形態では、光ディスク１２０には複数のＴＳ（例えば、ＴＳ１およびＴＳ２）が記録されているとする。ＴＳには複数のコンテンツのデータが重畳され得るが、説明の便宜上、１つのＴＳには１つのコンテンツが含まれているとする。なお、「コンテンツを再生する」とは、そのコンテンツに含まれる映像および音声の各々を同期させながら再生することをいうとする。
再生処理の制御機能に関して、再生装置１００は、ストリーム読み出し部１０１と、ダミーパケット挿入部１０２と、ストリーム解析部１０３と、ＡＶ同期制御部１１８と、識別情報格納部１１９とを有する。
またオーディオの再生処理機能に関して、再生装置１００は、第１スイッチ１０４と、第１オーディオ入力バッファ１０５と、第２オーディオ入力バッファ１０６と、第３スイッチ１０７と、オーディオ復号部１０８と、オーディオ出力バッファ１０９と、オーディオ出力部１１０とを有する。
さらに、ビデオの再生処理機能に関して、再生装置１００は、第２スイッチ１１１と、第１ビデオ入力バッファ１１２と、第２ビデオ入力バッファ１１３と、第４スイッチ１１４と、ビデオ復号部１１５と、ビデオ出力バッファ１１６と、ビデオ出力部１１７とを有する。
以下、個々の構成要素の機能（動作）を説明する前に、再生装置１００による再生処理の概要を説明する。ストリーム読み出し部１０１は、光ディスク１２０から複数のＴＳを連続的に読み出し、ダミーパケット挿入部１０２に送る。図８（ａ）は読み出されたＴＳ１を示し、図８（ｂ）はＴＳ１の後に読み出されたＴＳ２を示し、図８（ｃ）はＴＳ２の後に読み出されたＴＳ３を示す。このような連続的な読み出しは、例えばユーザが、プレイリスト等によって複数のＴＳの各一部を再生区間として指定し、再生するときを想定している。または、ユーザが、複数のＴＳの各一部をつなぎ合わせる編集作業を行うためにその各一部を再生区間として指定し、再生するときを想定している。
ダミーパケット挿入部１０２は、ＴＳ１の最終パケットの後で、かつＴＳ２の先頭パケットの前にダミーパケットを挿入する。その後、またダミーパケット挿入部１０２は、ＴＳ２の最終パケットの後で、かつＴＳ３の先頭パケットの前にもダミーパケットを挿入する。図８（ｄ）は、ダミーパケットが挿入されたＴＳ７０を示す。ＴＳ１とＴＳ２とが切り替わる位置にはダミーパケット７１−１が挿入され、ＴＳ２とＴＳ３とが切り替わる位置にはダミーパケット７１−２が挿入される。
本明細書では、ストリームが切り替わる位置をストリームの境界と呼ぶ。例えば図８（ｄ）では、ダミーパケット７１−１および７１−２を境界としてＴＳ１およびＴＳ２、ＴＳ２およびＴＳ３が結合され、一つのトランスポートストリーム７０が構成されている。このＴＳ７０のうち、ＴＳ１に相当する部分を「第１区間」、ＴＳ２に相当する部分を「第２区間」、ＴＳ３に相当する部分を「第３区間」と呼ぶ。
図９（ａ）は、ダミーパケット７１のデータ構造を示す。ダミーパケット７１は、４バイトのトランスポートパケットヘッダ７１ａ、および、１８４バイトのＴＳペイロード７１ｂを有する。図９（ｂ）は、ダミーパケット７１の具体的なデータ構造を示す。トランスポートパケットヘッダ７１ａには、図５に示す各種のＴＳパケットとは異なるパケットＩＤ（例えば０ｘ１ＦＦＦ）９１が割り当てられている。また、このトランスポートパケットヘッダ７１ａには、本実施形態による再生処理に利用される識別情報９２が記述されている。識別情報９２を利用した具体的な処理は後述する。一方、ＴＳペイロード７１ｂには、本実施形態によるダミーパケットであることを示す固有の情報（図９（ｂ）では例えば“Ｄｕｍｍｙ判別情報”）が記述されている。ダミーパケットのパケットＩＤおよびこの固有の情報によって、他のパケットからは容易に識別される。
再び図７を参照する。ストリーム解析部１０３は、結合されたＴＳ７０のうち、はじめに受け取るＴＳ１のオーディオＴＳパケットとビデオＴＳパケットとをそれぞれ分離する。さらにストリーム解析部１０３は、分離したオーディオＴＳパケットをシステムデコードしてオーディオエレメンタリストリーム（以下「オーディオストリーム」）を生成し、分離したビデオＴＳパケットをシステムデコードしてビデオエレメンタリストリーム（以下「ビデオストリーム」）を生成する。このときストリーム解析部１０３は、最初に読み出されたＴＳ１にデフォルトの識別情報を割り当てている。識別情報として、ＴＳ１を特定するための一意の値が割り当てられる。そして、その識別情報を、システムデコードしたオーディオストリームとビデオストリームとに関連付ける。
ここで「関連付ける」とは、オーディオストリームに関しては、オーディオストリームのフレーム先頭アドレス値、そのフレームの再生時刻情報（ＡＰＴＳ）および識別情報を対応させたテーブルを生成することをいう（例えば後述の図１６）。ビデオストリームに関しては、ビデオストリーム内のピクチャヘッダの後（ピクチャデータの前）に、識別情報を記述することをいう（例えば後述の図１５（ｃ））。
ストリーム解析部１０３は、上述の処理をしたオーディオストリームおよびビデオストリームを、それぞれ第１スイッチ１０４および第２スイッチ１１１を介して第１オーディオ入力バッファ１０５および第１ビデオ入力バッファ１１２に送る。
ＴＳが順次読み出されると、ストリーム解析部１０３は、結合されたＴＳ７０内のダミーパケットを検出し、ダミーパケットに記述された識別情報を取得する。ダミーパケット中の識別情報の値はそのデフォルトの識別情報の値とは異なっており、その識別情報が示す値をＴＳ２の識別情報として割り当てる。そして、ＴＳ１のオーディオパケットおよびビデオパケットに対して行った処理と同様の処理を、ＴＳ２のオーディオパケットおよびビデオパケットに対して行う。ＴＳ２のオーディオパケットおよびビデオパケットから構築されたオーディオストリームおよびビデオストリームは、それぞれ第２オーディオ入力バッファ１０６および第３スイッチ１０７に送られる。
オーディオおよびビデオの各バッファ１０５、１０６、１１２および１１３へのストリームの蓄積と並行して、オーディオ復号部１０８およびビデオ復号部１１５は、オーディオストリームおよびビデオストリームを復号（エレメンタリデコード）し、再生出力可能なピクチャデータおよびオーディオフレームを生成する。
ＡＶ同期制御部１１８は、復号後に得られたピクチャデータおよびオーディオフレームと、復号前のオーディオストリームおよびビデオストリームに関連付けられていた識別情報との対応関係を管理している。そしてＡＶ同期制御部１１８は、その対応関係に基づいて、音声および映像を出力するタイミングを制御する。具体的にはＡＶ同期制御部１１８は、同じ識別情報と関連付けされているピクチャデータとオーディオフレームとを再生出力の対象とする。同じＴＳから得られた音声および映像の各データには同じ識別情報が付加されているため、各バッファ１０５、１０６、１１２および１１３から異なる区間を構成するＴＳ１〜３のどのパケットが読み出されていても、再生の対象とするＴＳの音声および映像のみを確実に特定できる。さらに、再生時刻情報に基づいてその音声および映像の出力のタイミングを制御するため、ＴＳ生成時に想定されていたとおりの音声および映像の同期再生が実現される。
ここで、図１０から図１３を参照しながら、再生装置１００において行われる音声および映像の同期再生の種々の態様を説明する。本実施形態では、再生装置１００は境界の前後の映像が連続的に表示されるように再生を制御する。
図１０は、第１の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す。オーディオストリームおよびビデオストリームはそれぞれエレメンタリストリーム（例えば図１（ｃ））であるとし、各ピクチャデータ等に対応して設けられた再生時刻情報ＰＴＳによって指定された時刻が再生時刻として記載されている。これは、後述の図１１および１２でも同じである。
第１区間では、ビデオストリーム５０２の映像の再生終了時刻Ｔａは、オーディオストリーム５０１の音声の再生終了時刻Ｔｂよりも早い。再生終了時刻Ｔａに至るまでは、再生装置１００は再生時刻情報ＰＴＳに基づいて、音声および映像を同期して再生する。一方、時刻Ｔａ以降、音声の再生を継続すると、ビデオストリームがもはや存在しないので映像が途切れることになる。よって、第２区間の映像に連続的に接続するためには、音声の再生は不要であると判断する。そこで再生装置１００は、時刻Ｔａ以降、時刻Ｔｂまでのオーディオストリーム５０１を破棄する。
なお本実施形態では、第１区間の映像の再生が終了した時刻Ｔａ以降は、第１区間の音声と第２区間の映像とが同時に再生され出力されることはない。その理由は、再生装置１００は異なる識別情報が付加された音声および映像の同時再生を禁止しているからである。これは、上述のように各区間を規定するＴＳに異なる識別情報を割り当てているためである。これにより、異なる区間のＴＳに由来する映像と音声とが同時に再生されることがなくなる。
一方、第２区間の再生を説明すると、ビデオストリーム５０４の映像の再生開始時刻Ｔｃはオーディオストリーム５０３の音声の再生開始時刻Ｔｄよりも早い。このとき再生装置１００は、時刻Ｔｃから時刻Ｔｄまで間は、映像を再生して出力し、音声の再生を停止する。時刻Ｔｄ以降は音声および映像を同期して再生する。なお、第１区間の映像と第２区間の映像は途切れることなく再生される。
なお、境界を基準としたとき、オーディオストリーム５０１およびビデオストリーム５０２の再生はそれぞれ時刻ΔＴｘおよびΔＴｙだけ早く終了する。これは、１オーディオフレームや１ピクチャのデータが複数のパケットに分割して格納されていることに起因する。例えば、１ピクチャのデータを格納した全てのパケットが揃う前にＴＳが切り替えられた場合には、その直前まで完成したピクチャデータしか処理できない。よって、境界の直前まで再生可能なデータが存在しない場合がある。
図１１は、第２の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す。第１区間では、オーディオストリーム６０１の音声の再生終了時刻Ｔａは、ビデオストリーム６０２の映像の再生終了時刻Ｔｂよりも早い。このとき、再生装置１００は音声の再生が終了した時刻Ｔａ以降も再生終了時刻Ｔｂまで映像を再生する。一方、第２区間では、音声の再生開始時刻Ｔｃは映像の再生開始時刻Ｔｄよりも早い。このとき再生装置１００は、オーディオストリーム６０３の時刻Ｔｃ以降、時刻Ｔｄまでのデータを破棄する。時刻Ｔｄ以降は再生装置１００の音声および映像を同期して再生する。なお図１１に示す例でも、識別情報を利用して第１区間の映像と第２区間の音声とが同時に再生されることはない。一方、第１区間の映像と第２区間の映像は途切れることなく再生される。
図１２は、第３の例による、オーディオストリームおよびビデオストリームの再生時刻の関係を示す。この例は、図８（ａ）〜（ｃ）に示すＴＳ１〜ＴＳ３が連続して読み出されたときに対応する。第２区間には、音声として再生可能なオーディオデータが存在しないとする。図１２には、第２区間にはオーディオストリームが存在していないことが理解される。
図１２の第１区間の各ストリームに関しては、図１１の第１区間の処理と同じ処理によって時刻Ｔｂまで映像が再生される。次に、第２区間のビデオストリーム７０３の映像が再生される。このとき再生装置１００のオーディオ入力バッファにはすでに第３区間のオーディオストリーム７０４が存在している場合がある。しかし、第２区間のＴＳ２および第３区間のＴＳ３には異なる識別情報が割り当てられているため、この識別情報を利用すると第２区間の映像の再生中に第３区間のオーディオストリーム７０４の音声が再生されることはない。具体的には、再生装置１００は第２区間の映像再生中には異なる識別情報が割り当てられたオーディオストリーム７０４の再生を待機させる。その後、第２区間の再生が終了すると、図１０の第２区間と同じ処理により、映像の再生のみが時刻ＴｅからＴｆまで行われる。時刻Ｔｆ以後、再生装置１００は、第３区間の音声の待機を解除して音声および映像を同期再生する。
上述のように、再生装置１００は、各区間のＴＳから得られた映像および音声の再生タイミングを、識別情報を利用して制御している。識別情報を利用することにより、あるＴＳの音声の再生時刻情報（ＡＰＴＳ）と他のＴＳの映像の再生時刻情報（ＶＰＴＳ）とが一致していても同時に再生されることはない。すなわち、ストリームの再生時刻情報（ＰＴＳ）の影響を受けることなく、同じＴＳから得られたオーディオストリームおよびビデオストリームのみを同期再生することができる。
次に、上述の再生処理を実現するための、再生装置１００の各構成要素の具体的な処理を説明する。
図１３は、複数のＴＳを連続して読み出す際の処理の手順を示す。この処理は、ストリーム読み出し部１０１およびダミーパケット挿入部１０２によって行われる。
まず、ストリーム読み出し部１０１は、ステップＳ２０１において光ディスク１２０からのＴＳの読み出しを開始するよう指示されると、ステップＳ２０２において、ストリームの境界を判別するための識別情報ｎを初期化してデフォルト値（例えば０）を設定する。本実施形態では、識別情報ｎは初期値０から単調に増加する整数であるとして説明するが、識別情報のデフォルト値（初期値）を一定値（例えば１００）に設定し、単調に減少する整数としてもよい。次に、ステップＳ２０３において、ストリーム読み出し部１０１は第１区間に対応するシステムストリーム（ＴＳ１）をＴＳパケット単位で読み出し、ダミーパケット挿入部１０２へ送り、ステップＳ２０４に進む。
ステップＳ２０４において、ダミーパケット挿入部１０２は、ＴＳが切り替えられて、新たな区間であるか否かを判定する。このとき、ＴＳ１のＴＳパケットの受信時はステップＳ２０７に進み、その後、読み出しの対象がＴＳ１からＴＳ２に切り替えられたときにはステップＳ２０５に進む。読み出し対象のＴＳが切り替えられたという情報は、例えばＣＰＵ（図示せず）によって発せられる。ＣＰＵは、再生開始時点で予め特定されている再生経路に基づいてどのタイミングでＴＳを切り替えればよいか認識している。
ステップＳ２０５では識別情報ｎの値に１が加算される。ステップＳ２０６では、ダミーパケット挿入部１０２は識別情報ｎを含むダミーパケットを生成し、ＴＳ１の最終パケットに付加する。ステップＳ２０７では、ダミーパケット挿入部１０２はＴＳパケットをストリーム解析部１０３に送出する。そして、ストリーム読み出し部１０１およびダミーパケット挿入部１０２は、対象となる全てのＴＳのＴＳパケットの送出が終了するまで、ステップＳ２０３からの処理を繰り返す。
ここで、再び図９（ｂ）を参照しながら、ダミーパケット７１のデータ構造を詳細に説明する。図９（ｂ）に示すダミーパケット７１は、ＭＰＥＧ規格として規定されているＴＳのＮｕｌｌパケットの構造を利用して構成されている。このダミーパケット７１は、本実施形態において定義される符号列であって、各ＴＳには存在し得ない符号列である。
ダミーパケット挿入部１０２は、以下のようにしてダミーパケット７１を生成する。すなわちダミーパケット挿入部１０２は、まずＭＰＥＧ規格におけるＮｕｌｌパケットと同様に、ダミーパケット７１のＰＩＤを“０ｘ１ＦＦＦ“に設定する。さらにダミーパケット挿入部１０２は、ダミーパケット７１内に本実施形態による固有の情報を設定する。具体的には、ダミーパケット挿入部１０２は、“ｃｏｎｔｉｎｕｉｔｙ＿ｃｏｕｎｔｅｒ“フィールド９２に識別情報ｎ（０ｘ０〜０ｘＦ）の値を記述する。ＴＳ１の先頭にはダミーパケット７１が付加されていないため、ＴＳ１とＴＳ２との境界に挿入される最初のダミーパケット７１には、識別情報ｎとして”１“が設定される。なお、識別情報は、”Ｓｔｕｆｆｉｎｇ＿ｄａｔａ“フィールドや”Ｒｅｓｅｒｖｅｄ“フィールドに記述されてもよい。
また、ダミーパケット挿入部１０２は、“Ｐａｙｌｏａｄ＿ｕｎｉｔ＿ｓｔａｒｔ＿ｉｎｄｉｃａｔｏｒ”フィールドに、例えば“１”を設定する。このフィールドは、ＭＰＥＧ規格に準拠したＮｕｌｌパケットでは“０”とされている。またダミーパケット挿入部１０２は、新たに“Ｄｕｍｍｙ判別情報”フィールドを設け、例えば文字列“ＤＵＭ”を格納する。また、新たに“Ｄｕｍｍｙ＿ＩＤ”フィールドを設けて、例えば、“０ｘＦ”としてＴＳの境界を表すことにしておく。これは、他の目的で別のＴＳパケットを将来定義するための手当てである。以上の設定により、ダミーパケット７１を検出して解析することにより、後述のストリーム解析部１０３は、このダミーパケット７１において、ＴＳの境界であると判定できる。
なお本実施形態では、ダミーパケット７１には、後続のＴＳのオーディオ再生先頭時刻情報（ａｕｄｉｏ＿ｓｔａｒｔ＿ＰＴＳ）、ビデオ再生先頭時刻情報（ｖｉｄｅｏ＿ｓｔａｒｔ＿ＰＴＳ）、オーディオ再生終端時刻情報（ａｕｄｉｏ＿ｅｎｄ＿ＰＴＳ）、および、ビデオ再生終端時刻情報（ｖｉｄｅｏ＿ｅｎｄ＿ＰＴＳ）が格納される。これらは、再生の対象となる各ＴＳが特定された時点で取得することができるため、予めそれらの情報を読み出しておけばよい。各時刻情報は各区間の先頭または終端近傍において、音声のフェードインおよびフェードアウトの制御をする際に利用できる。フェードインおよびフェードアウトの制御処理は後述する。
図１４は、ストリーム解析部１０３の処理の手順を示す。ストリーム解析部１０３は、ステップＳ２０９においてダミーパケット挿入部１０２からＴＳパケットを受け取って各パケットを解析し、ステップＳ２１０に進む。Ｓ２１０では、ストリーム解析部１０３は、入力されたＴＳパケットがダミーパケット７１であるか否かを判定する。ダミーパケットであればステップＳ２１１に進み、そうでなければステップＳ２１３に進む。
ステップＳ２１１では、ストリーム解析部１０３はダミーパケット７１から識別情報の値ｎを抽出し、ステップＳ２１２において、次のダミーパケット７１が入力されるまで一時的に記憶しておく。なお、最初のダミーパケット７１が検出されるまでは、デフォルト値“０”が識別情報の値として記憶されている。ダミーパケットを検出すると、第１スイッチ１０４および第２スイッチ１１１が一方から他方に切り替えられる。
ステップＳ２１３では、ストリーム解析部１０３は入力されたＴＳパケットがビデオパケットか否かを判定する。ビデオパケットであればステップＳ２１４に進み、そうでなければステップＳ２１６に進む。ステップＳ２１４では、ストリーム解析部１０３はビデオパケットをシステムデコードし、ビデオストリームを出力する。このとき、ビデオストリーム内のピクチャデータに識別情報を関連付ける。その後ストリーム解析部１０３は、ステップＳ２１５において、ビデオストリームを第１ビデオ入力バッファ１１２または第２ビデオ入力バッファ１１３に出力される。
次に、図１５（ａ）〜（ｃ）を参照しながら、識別情報の関連付けに関する処理を具体的に説明する。図１５（ａ）は、ストリーム解析部１０３に入力されたＴＳ７０を示す。ここでは、ビデオパケット７０ａ〜７０ｅおよびダミーパケット７１を示している。
ストリーム解析部１０３は、例えば図１５（ａ）に示すＴＳパケット７０ａからＴＳパケットヘッダ７０ａ−１を除去してＴＳペイロード７０ａ−２を取得し、パケット化エレメンタリストリーム（ＰＥＳ）８０を生成する。図１５（ｂ）はＰＥＳ８０のデータ構造を示す。ＰＥＳ８０は、複数のＰＥＳパケット８１ａ、８１ｂ等から構成されている。ＰＥＳパケット８１ａはＰＥＳヘッダ８１ａ−１およびＰＥＳペイロード８１ａ−２から構成されている。
ストリーム解析部１０３はＰＥＳ８０のＰＥＳヘッダ８１ａを解析して、ＰＥＳペイロード８１ａ−２内のピクチャデータの再生時刻情報（ＰＴＳ）を含むか否かを判定する。例えば、ＰＥＳヘッダ８１ａには、ＰＴＳが記述されているか否かを示すフラグのフィールドが設けられており、そのフラグの値に基づいてＰＴＳを含むか否かを判定できる。ＰＴＳを含む場合には、そのＰＴＳはＰＥＳヘッダ内に格納されている。本明細書ではＰＴＳを含むとして説明する。
ＰＥＳペイロード８１ａ−２等には各ピクチャのエレメンタリレベルのビデオストリーム（ＥＳ）８２を構成するデータが格納されている。ストリーム解析部１０３は、ＰＥＳペイロード８１ａ−２等に基づいて、ＥＳ８２を生成する。図１５（ｃ）は、ビデオＥＳ８２のデータ構造を示す。ストリーム解析部１０３はビデオＥＳ８２の生成するに際し、ピクチャヘッダ８２ａおよびピクチャデータ８２ｂとの間に、ＶＰＴＳ８２ｃおよびそのＴＳに割り当てられた識別情報８２ｄを記述する。これにより、ピクチャデータと識別情報とが関連付けられる。なお、図１５（ａ）に示すビデオＴＳパケット７０ｅは、ダミーパケット７１後に存在するため、ビデオＴＳパケット７０ａ〜７０ｄとは異なるＴＳを構成している。よって、図１５（ｃ）に示すように、ビデオＴＳパケット７０ｅから得られる識別情報８２ｊの値（ｎ＋１）は、ダミーパケット前の各ＴＳパケットから得られる識別情報８２ｄ、８２ｈの値（ｎ）よりも１つインクリメントされて関連付けられている。
図１５（ａ）および（ｂ）では、ＴＳパケットと、ＰＥＳパケット８１ｂのＰＥＳペイロード部分のデータとの対応を示していないが、これは記載の便宜のためである。実際には、そのデータは、ビデオＴＳパケット７０ｄとダミーパケット７１との間に存在するビデオＴＳパケット（図示せず）のＴＳペイロードに基づいて構築される。また、ビデオＴＳパケット７０ｅは、そのＴＳにおいてダミーパケット７１以降で最初のＰＥＳヘッダを含むＴＳパケットであるとしている。したがって、ダミーパケット７１とビデオＴＳパケット７０ｅとの間にはＰＥＳヘッダを含まないＴＳパケットが存在し得る。
次に、図１４のステップＳ２１６以降の処理を説明する。ステップＳ２１６では、ストリーム解析部１０３は入力されたＴＳパケットがオーディオパケットか否かを判定する。オーディオパケットであればステップＳ２１７に進み、そうでなければステップＳ２１０に戻る。
ステップＳ２１７では、ストリーム解析部１０３はオーディオパケットをシステムデコードし、オーディオストリームを出力する。このとき、オーディオストリーム内のフレームデータと識別情報とを関連付ける。その後ストリーム解析部１０３は、ステップＳ２１８において、オーディオストリームを第１オーディオ入力バッファ１０５または第２オーディオ入力バッファ１０６に出力する。
図１６は、フレームデータと識別情報とを関連付けしたオーディオ管理テーブルを示す。オーディオ管理テーブルには、識別情報と、再生対象のオーディオフレームの再生時刻（ＡＰＴＳ）と、オーディオフレームのデータを格納したオーディオ入力バッファ１０５または１０６のアドレスとが対応付けられて記述されている。ストリーム解析部１０３は、生成したテーブルを識別情報格納部１１９に送る。識別情報格納部１１９はそのテーブルを保持する。なお、図１６の例では、第１区間が２フレーム、第２区間が３フレームのみで構成されているが、これは識別情報ｎが変化するということを説明するための例であり、一般にフレーム数はより多い場合が多い。
オーディオ復号部１０８は、オーディオ入力バッファ１０５および１０６に格納されたオーディオストリームを読み出す。例えば、オーディオ復号部１０８は、識別情報格納部１１９に格納されたテーブル（図１６）を参照して、そのテーブルのエントリ単位でオーディオストリームを読み出す。その後、オーディオ復号部１０８はそのオーディオストリームに対してエレメンタリデコードを行う。その結果、圧縮符号化が解除されたオーディオフレームデータが得られる。オーディオ復号部１０８はそのオーディオフレームデータをオーディオ出力バッファ１０９に格納する。格納先のアドレスはＡＶ同期制御部１１８によって指定される。
ビデオ復号部１１５は、ビデオ入力バッファ１１２および１１３に格納されたビデオストリームを読み出して、エレメンタリデコードを行う。その結果得られたピクチャデータもまた、圧縮符号化が解除されている。ビデオ復号部１１５はそのビデオピクチャデータをビデオ出力バッファ１１６に格納する。格納先のアドレスはＡＶ同期制御部１１８によって指定される。
ＡＶ同期制御部１１８は、ビデオ出力バッファ１１６のどの位置（アドレス）にビデオピクチャデータを格納するかをビデオ復号部１１５に指示する。そして、格納したビデオピクチャデータを再生するための情報を収集してビデオ管理テーブルを生成する。ビデオ管理テーブルは、識別情報とＶＰＴＳと格納アドレスとを対応付けて構成されており、図１６に示すオーディオ管理テーブルにおいて“ＡＰＴＳ”を“ＶＰＴＳ”に読み替えればよい。ただし、ビデオ出力バッファ１１６のバッファ容量は、例えば３〜４フレームデータを格納する程度であるため、図１６に示すような、識別情報とＶＰＴＳと格納アドレスとの組からなるエントリを７以上も設ける必要はない。ＡＶ同期制御部１１８は、ビデオ管理テーブルを識別情報格納部１１９に格納してもよいし、自身の内部バッファ（図示せず）に保持してもよい。
次に、図１７および図１８を参照しながら、ＡＶ同期制御部１１８の音声および映像の出力制御処理を説明する。以下の説明では、オーディオストリームに関連付けられた識別情報（図１６）を“ｎａ”と記述し、ビデオストリームに関連付けられた識別情報（図１５（ｃ））を“ｎｖ”と記述する。識別情報ｎａはオーディオ管理テーブル（図１６）から取得される。識別情報ｎｖはＡＶ同期制御部１１８によって生成されたビデオ管理テーブルから取得される。なお、識別情報ｎａおよびｎｖは、対応する各再生時刻情報ＡＰＴＳおよびＶＰＴＳよりも充分早く検出され、指定された再生時刻までにＡＶ同期の処理や、復号した信号を破棄するか出力するかの判定を実行できるとする。また、識別情報ｎａおよびｎｖは、ストリーム解析部１０３によって、各区間に含まれるオーディオフレームおよびビデオフレームのそれぞれの先頭フレームに必ず付与され、識別情報格納部１１９に格納されているとする。
図１７は、音声および映像を出力するための、ＡＶ同期制御部１１８における前処理の手順を示す。ＡＶ同期制御部１１８は、ステップＳ３０６において、次に出力しようとするオーディオストリームの識別情報ｎａを取得し、ステップＳ３０７において、次に出力しようとするビデオストリームの識別情報ｎｖを取得する。その後の処理は図１８に示すボックス「Ａ」に進む。一方、ステップＳ３０６およびＳ３０７へ至るボックス「Ｂ」および「Ｃ」は図１８に示すボックス「Ｂ」および「Ｃ」から継続される手順である。
図１８は、音声および映像を出力するための、ＡＶ同期制御部１１８における主要な処理の手順を示す。ステップＳ４０１において、ＡＶ同期制御部１１８は、これから出力しようとしているオーディオフレームが、第１区間と第２区間の境界直後であるかどうか、すなわち、第２区間の先頭のオーディオフレームであるかどうかを判定する。この判定は、オーディオストリームの識別情報ｎａと、１制御単位前のオーディオストリームの識別情報が一致するか否かを比較することによって行われる。ここで、１制御単位とは、オーディオ復号部１０８がオーディオストリームを復号する際のオーディオフレーム単位、またはＡＶ同期制御部１１８が、ＡＶ同期を行う時間間隔の単位のことであり、例えば、ビデオのフレーム単位あるいはフィールド単位と同期しているとする。
これから出力しようとしているオーディオフレームが境界後の先頭フレームではない場合には、処理はステップＳ４０２に進み、境界後の先頭フレームである場合には処理はステップＳ４０６に進む。ステップＳ４０２では、ＡＶ同期制御部１１８は、これから出力しようとしているオーディオフレームの再生終了時刻が、その第１区間のビデオピクチャの再生終了時刻よりも遅い時刻まで再生するように指定されているか否かを判定する。指定されていない場合にはステップＳ４０３に進み、指定されている場合にはステップＳ４０５に進む。図１１に示す例では、オーディオフレームの再生時刻はビデオピクチャの第１区間の終了時刻よりも早いため、このようなときには処理はステップＳ４０３に進む。一方、図１０に示す例では、オーディオフレームの再生時刻はビデオピクチャの第１区間の終了時刻よりも遅いため、処理はステップＳ４０５に進む。
なお、ステップＳ４０２の判定は、オーディオストリーム内に記述された再生時刻情報ＡＰＴＳの値と、ビデオストリーム内に記述された再生時刻情報ＶＰＴＳの値とを比較することによって行われる。ＡＰＴＳの値がＶＰＴＳの値よりも大きい場合には、そのＡＰＴＳの値に対応するオーディオフレームはそのＶＰＴＳの値に対応するビデオピクチャよりも遅い時刻に（すなわち後に）再生され、逆に小さい場合には、そのオーディオフレームはそのビデオピクチャよりも早い時刻に（すなわち先に）再生される。この判定手法は、以下の再生時間の比較でも同様に利用される。
なおトランスポートストリームでは、システムクロックのいわゆるラップアラウンドが許可されている。ラップアラウンドとは、システムクロックがある一定値に達するとその後は０からカウントが開始されることをいう。本明細書では、上述の再生時刻情報の値の比較に際してはラップアラウンドがないとして説明する。ラップアラウンドが行われた場合には、システムクロック値は一旦０ｘ０００００００００になる。その値をはさむときは、再生時刻情報の値が大きい方が早い時刻に再生され、小さいほうが後の時刻に再生されることを意味する。
ステップＳ４０３では、ＡＶ同期制御部１１８はＡＶ同期処理を行う。ＡＶ同期処理とは、第１区間の音声の再生時刻情報ＡＰＴＳと映像の再生時刻情報ＶＰＴＳとをそれぞれ再生装置の基準時計と比較し、基準時計に対して再生すべき音声および／または映像が進んでいれば、ＡＶ同期制御部１１８がオーディオ出力部１１０および／またはビデオ出力部１１７に指示を出して出力を遅延させる。逆に、遅れていればスキップ処理を指示し、出力される映像および音声の出力時刻を調整する。なお、基準時計は、ＴＳに含まれる基準時計の情報、または、ＡＰＴＳやＶＰＴＳ自身のいずれか一つを基準として計時を行ってもよい。ステップＳ４０４では、オーディオ出力部１１０は、ＡＶ同期制御部１１８の指示を受けてオーディオ出力バッファ１０９に格納されているオーディオフレームデータを出力し、また、ビデオ出力部１１７はＡＶ同期処理部１１８の指示を受けて、ビデオ出力バッファ１１６に格納されているビデオピクチャデータを出力する。これによりユーザは再生された映像および音声を視聴できる。
ステップＳ４０５では、ＡＶ同期制御部１１８はオーディオフレームのデータの一部を破棄する。対象は、ビデオピクチャの第１区間の終了時刻以降の第１区間のオーディオストリームのデータである。ここで、オーディオフレームを破棄するとは、出力バッファ１０９内に格納されている第１区間のオーディオフレームを消去し、または無視することによって実現される。オーディオフレームを破棄した後は、処理はステップＳ３０６（図１７）に戻る。この期間中は映像はビデオ出力部１１７から出力される。そして、ＡＶ同期制御部１１８は、第２区間の映像および音声に関する識別情報（境界後の先頭の識別情報）に基づいて処理を改めて実行する。第２区間の再生制御は後述する。
なお、上述のステップＳ４０２の判定およびその判定結果に基づく処理は、オーディオ出力バッファ１０９中のオーディオデータに対して行うとして説明したが、入力バッファ１０５および１０６に格納されているオーディオストリームに対して行ってもよい。特に、ストリームを破棄する場合には入力バッファに格納されているオーディオストリームを読み出すポインタを識別情報格納部１１９に格納されている第２区間の先頭アドレスまで移動するだけでよいので、処理が簡単になる。
ステップＳ４０６では、オーディオ出力部１１０はオーディオフレームデータの出力を一旦停止する。ステップＳ４０１からステップＳ４０６への分岐は、出力しようとしているオーディオフレームデータがＴＳ７０における新たな区間（ここでは第２区間）の先頭のフレームデータであることを意味する。
ステップＳ４０７では、ＡＶ同期制御部１１８は、オーディオストリームの識別情報ｎａとビデオストリームの識別情報ｎｖとが一致するか否かを比較する。一致する場合は、現在処理しているビデオストリームおよびオーディオストリームが同じＴＳに格納されていたことを意味している。一致する場合には処理はステップＳ４０８に進み、一致しない場合には処理はステップＳ４１０に進む。
ステップＳ４０８では、ＡＶ同期制御部１１８は、これから出力しようとしているオーディオフレームの再生開始時刻がビデオピクチャの再生開始時刻よりも遅いか否かを判定する。遅い場合（ＶＰＴＳの値＜ＡＰＴＳの値の場合）にはステップＳ４０３に進み、早い場合（ＶＰＴＳの値＞ＡＰＴＳの値の場合）にはステップＳ４０９に進む。図１１に示す例では、第２区間においてオーディオフレームの再生開始時刻はビデオピクチャの再生開始時刻よりも早いため、このようなときには処理はステップＳ４０９に進む。
ステップＳ４０９では、１フレーム分のオーディオデータが破棄される。破棄する理由は、第１区間の映像と第２区間の映像とを連続して（途切れることなく）再生するため、第２区間のビデオピクチャ再生開始前のオーディオフレームは不要だからである。ステップＳ４０９において１フレーム分のデータが破棄されると、再びステップＳ４０８に戻って判定が行われる。これにより、図１１の第２区間において、時刻Ｔｃから時刻Ｔｄまでに再生されるオーディオフレームデータが破棄される。その後、不要なオーディオデータが破棄されると、処理はステップＳ４０３に進み、ＡＶ同期処理（ステップＳ４０３）が行われた後、ビデオピクチャおよびオーディオフレームが同期して出力される（ステップＳ４０４）。
次に、ステップＳ４１０では、オーディオ識別情報ｎａの値がビデオ識別情報ｎｖの値よりも大きいか否かが判定される。前提として、ステップＳ４１０の前に行われたステップＳ４０７ではオーディオ識別情報の値がビデオ識別情報の値と異なっていると判定されている。オーディオ識別情報の値がビデオ識別情報の値よりも大きい場合にはステップＳ４１１に進み、小さい場合にはステップＳ４１２に進む。
例えば図１２に示すように、第２区間のビデオストリームに対応するオーディオストリームが欠落しているとき、オーディオ識別情報の値がビデオ識別情報の値よりも大きくなり得る。また、その逆に、第２区間においてビデオストリームが欠落し、オーディオストリームのみが存在するときには、ビデオ識別情報の値がオーディオ識別情報の値よりも大きくなり得る。
ステップＳ４１０の判定の結果に応じて処理がステップＳ４１１に進むと、ＡＶ同期制御部１１８はオーディオフレームデータの出力を待機させ、ビデオピクチャデータのみを出力して、映像のみが再生されるように制御する。そして、ビデオ信号を１フレーム出力した後は、処理はステップＳ３０７（図１７）に戻る。
なお、仮にステップＳ４１０の判定を行わないとすると、図１２に示すようなケースでは、ビデオ出力部１１７が第２区間のビデオストリーム７０３に対応するビデオピクチャを出力している期間に、オーディオ出力部は第３区間のオーディオストリーム７０４の復号およびオーディオフレームデータの出力を行ってしまう。一方、識別情報の値を利用するとこのような誤った再生を防いでいる。
ステップＳ４１２では、ＡＶ同期制御部１１８は、その区間の終端までのオーディオフレームデータを破棄する。映像を連続的に再生するには、第２区間の音声を出力する必要はないからである。第２区間のオーディオフレームデータを破棄した後は、処理はステップＳ３０６（図１７）に戻る。
なお、図１２の例において第２区間のビデオストリームの映像が再生されているときのその後の処理を説明すると、まず、ステップＳ４１２から戻ったステップＳ３０６では、オーディオ識別情報ｎａは第３区間のＴＳに対して割り当てられたオーディオ識別情報になる。よって、その後の処理は、ステップＳ４０１、ステップＳ４０２およびステップＳ４０５へと進む。ただし、ステップＳ４０５では、第２区間には破棄すべきオーディオデータが存在しないため、そのまま処理が行われたとして再びステップＳ３０６（図１７）に戻る。これを繰り返し、ステップＳ４０２の判定の結果、ステップＳ４０３およびステップＳ４０４に進むことにより、ステップＳ４０４において、第３区間のオーディオフレームデータおよびビデオピクチャデータが同期して出力される。
なお、一般的に、図１２における第２区間と第３区間のオーディオ信号およびビデオ信号の再生時刻は独立している。すなわち、一般的には境界前後の再生時刻情報の絶対値の間には、全く相関はない。よって、再生時刻情報の絶対値の値が近似しているために第２区間の始点と第３区間の先頭の再生指定時刻が、偶然にも非常に近いとき、ステップＳ４０７およびＳ４１０の判定が存在しなければ、ＡＶ同期制御部１１８が第２区間のビデオデータと第３区間のオーディオデータを同期させて出力するよう制御するという不具合が発生する可能性がある。よって、ステップＳ４０７およびＳ４１０の判定が重要である。
さらに、取得したオーディオストリームに関連付けられた識別情報が、すでに出力されてしまった映像のビデオストリームに関連付けられた識別情報と一致するときは、ＡＶ同期制御部１１８はそのオーディオストリームに基づく音声の再生を停止させてもよい。そして、現在出力の対象としているビデオストリームに関連付けられた識別情報と同じ識別情報を有するオーディオストリームに基づいて音声を出力してもよい。
上記の説明では、ＡＶ同期制御部１１８が、オーディオ出力部１１０およびビデオ出力部１１７を制御するとして説明した。しかし、ＡＶ同期制御部１１８がオーディオ復号部１０８およびビデオ復号部１１５を制御するとしてもよい。そのとき、オーディオフレームデータの破棄に代えて、オーディオストリームを破棄することになる。その結果、復号を行う必要がなくなるので、再生装置の演算処理量を削減できる。ただし、出力されるオーディオフレームデータおよびビデオピクチャデータを正確に同期させるためには、オーディオ出力部１１０およびビデオ出力部１１７に対する出力前のＡＶ同期処理は必要である。なお、データの破棄は、再生時刻情報に基づいてストリーム解析部１０３が行ってもよい。
また、本実施形態では、ダミーパケット挿入部１０２が識別情報を更新するとして説明した。しかし、識別情報の更新は、ストリーム解析部１０３が行ってもよい。ストリーム解析部１０３が識別情報を更新するとして再生装置１００を構成すると、ダミーパケット挿入部１０２は、“ｃｏｎｔｉｎｕｉｔｙ＿ｃｏｕｎｔｅｒ“フィールド９２に固定値を記述したダミーパケットを挿入すれば十分になる。そしてストリーム解析部１０３がダミーパケットを検出する都度、内部的に識別情報の値を更新し、オーディオおよびビデオストリームの各区間のアドレスと識別情報を関連付ければよい。
また、これまでは第１区間と第２区間の間にダミーパケットを挿入するとして説明したが、ダミーパケットを第１区間の前に挿入してもよい。これにより、第１区間のオーディオストリームまたはビデオストリームが欠落している場合に、識別情報が異なるオーディオフレームとビデオピクチャが同時に再生されるという不具合を回避できる。
ここで、図１９および図２０を参照しながら、ダミーパケットを第１区間の前に挿入することによって実現できる新たな処理を説明する。この処理は、第１区間終端のオーディオフレームの再生指定時刻を利用して、境界手前から境界に至るまでの音声を適切なタイミングでフェードアウトするための処理である。また、第２区間先頭の音声をフェードインすることも可能である。
図１９は、音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す第１の例である。
第１区間の音声が最後に再生される時刻Ｔｃが、第１区間の映像が最後に再生される時刻Ｔｄよりも早いとき、音声の再生が先に終了する。したがって、映像の再生時刻（Ｔｄ）との関係に基づいて時刻Ｔｂから音声のフェードアウトを開始すると、音声のフェードアウトが完了しないまま時刻Ｔｃにおいて音声の再生が終了してしまう。その結果、異音が発生することがある。よって、波形Ｓｂのオーディオゲインは適切ではない。
そこで、第１区間の音声が最後に再生される時刻Ｔｃが、第１区間の映像が最後に再生される時刻Ｔｄよりも早いときは、音声が最後に再生される時刻Ｔｃとの関係で時刻Ｔｂよりも早い時刻Ｔａからフェードアウトを開始する。そのときのオーディオゲインは、波形Ｓａに示すように、音声の再生が終了する時刻Ｔｃにその出力ゲインも０になる。換言すれば、音声の再生が終了する時刻Ｔｃに出力ゲインを０にできる時刻（Ｔａ）から、フェードアウトを開始すればよい。時刻Ｔａを決定する際の他のパラメータは、再生時のオーディオゲインの値およびフェードさせる時間である。
上述の処理を実現するために、図９（ｂ）に示すように、第１区間の前に挿入する特定の符号に、オーディオ再生終端時刻の値を格納する領域（ａｕｄｉｏ＿ｅｎｄ＿ＰＴＳ）を定義し、音声の再生終了時刻Ｔｃを再生時刻情報ＰＴＳによって記述しておく。
ＡＶ同期制御部１１８は、ビデオ再生終端時刻Ｔｄよりもオーディオ再生終端時刻Ｔｃが早いか否かを判定し、早いときは、時刻Ｔｃからフェード時間だけ手前の時刻Ｔａからオーディオ出力部１１０に指示してフェードアウトを開始する。その結果、オーディオゲインの波形Ｓａは図１９に示すように減少して時刻Ｔｃにおいて０になる。これにより、第１区間の終端のフェードアウト処理による異音発生を防ぐことができる。
また、境界後にオーディオ信号の再生をする際には、先に説明したように、第２区間の音声の再生開始時刻Ｔｅが映像の再生開始時刻１０ｆよりも早いときには時刻Ｔｅから時刻Ｔｆまでのオーディオストリームが破棄される。この場合、第１区間の映像と第２区間の映像とを途切れなく再生するためには、ＡＶ同期制御部１１８は映像の再生開始時刻Ｔｆから音声のフェードインを開始すればよい。
図２０は、音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す第２の例である。音声の再生終端時刻Ｔｄが映像の再生終端時刻Ｔｃよりも遅い場合には、上述のとおり、映像の再生終端時刻Ｔｃ後、時刻Ｔｄまでの音声は再生されない。したがって、第１区間の音声のフェードアウトを音声の再生終端時刻（Ｔｄ）との関係に基づいて開始すると、映像の再生終端時刻Ｔｃまでにフェードアウトが完了せず、境界で異音が発生する場合がある。よって、波形Ｓｂのオーディオゲインは適切ではない。
そこで、図９（ｂ）に示すように、ダミーパケットにビデオ／オーディオ再生終端時刻を格納する領域をそれぞれ設ける。ＡＶ同期制御部１１８は、それらの領域からビデオ再生先頭時刻Ｔｃとオーディオ再生終端時刻Ｔｄの情報を読み出し、オーディオ再生終端時刻Ｔｄの方が遅い場合には、映像の再生終端時刻Ｔｃを基準としてフェード時間だけ早い時刻Ｔａからフェードアウトを開始する。これにより、境界前において映像の再生終了とともにフェードアウトが完了し、異音を発生することなく第２区間に映像および音声を切り替えることができる。
また、境界後の第２区間の音声の再生を開始する場合、区間の先頭で音声をフェードインすると、一般にはユーザは聴きやすくなる。ここで、境界後のオーディオの再生開始時刻Ｔｆがビデオの再生開始時刻Ｔｅよりも遅いときには、波形Ｓｃのオーディオゲインで音声が出力されるよりも前からゲインを上げてフェードイン処理を開始すると、実際に音声の再生先頭時刻Ｔｆにおいて突然振幅の大きい信号が出力されることになる。すると、出力機器であるスピーカを破損する危険がある。このような事例は、例えば、ＡＶ同期制御部１１８がオーディオ復号部１０８によるオーディオストリームの復号を時刻Ｔｆまで待機させ、かつ、オーディオゲインの調整をオーディオ出力部１１０で行うように構成された再生装置１００で起こる可能性がある。
そこで、図９（ｂ）に示すように、ダミーパケットにビデオ／オーディオ再生先頭時刻を格納する領域をそれぞれ設ける。ＡＶ同期制御部１１８は、それらの領域からオーディオ再生先頭時刻Ｔｆとビデオ再生先頭時刻Ｔｅの情報を読み出し、オーディオ再生先頭時刻Ｔｆが大きい場合にはオーディオ信号のフェードインを時刻Ｔｆから開始するようにすればよい。
以上のように、システムストリームの先頭に挿入するダミーパケットに、オーディオおよびビデオの再生先端時刻および再生終端時刻をそれぞれ格納することにより、境界近傍における異音を発生することなく、フェードインおよびフェードアウトを行うことが可能となる。
以上、本発明のデータ処理装置の実施形態である、再生装置１００の構成および動作を説明した。なお、図７において、ストリーム読み出し部１０１はスイッチとして表わされているが、これは機械的あるいは電気的なスイッチに限るものではない。ストリーム読み出し部１０１は、記録媒体の任意のアドレスを指定してＴＳを読み出すことができればよい。
なお、再生装置１００の各入力バッファ１０５、１０６、１１２および１１３の構成は従来例と同様の構成で示しているが、第１のオーディオ入力バッファ１０５と第２のオーディオ入力バッファ１０６とは一つのバッファであってもよい。同様に、第１および第２のビデオ入力バッファ１１２、１１３も一つのバッファであってもよい。その場合、第１区間のＴＳから抽出されたオーディオストリームに続けて第２区間のＴＳから抽出されたオーディオストリームを格納し、上で説明したように、例えば図１６に示すようなテーブルによって、各区間のオーディオストリームを格納したアドレスとストリーム解析部１０３によって各区間のオーディオストリームに割り当てられた識別情報ｎと再生指定時刻とを読み出すことができればよい。
なお、上記の説明では、ダミーパケット７１はＴＳパケットのひとつとして説明したが、これに限るものではない。ストリーム解析部１０３がオーディオデータおよびビデオデータと識別可能なデータであればよい。また光ディスク１２０に代えて、ハードディスク（図示せず）を利用することもできる。光ディスク１２０には必ず複数のＴＳが記録されていなくてもよく、例えば１つのＴＳの異なる区間を、それぞれ別個のＴＳとして捉え、上述の処理を適用することもできる。
【産業上の利用可能性】  本発明によれば、複数のデータストリームを連続的に再生する際に、音声と映像とをずれることなく同期して再生することができるデータ処理装置が提供される。
【図１】
2005002221.tif 000003
【図２】
2005002221.tif 000004
【図３】
2005002221.tif 000005
【図４】
2005002221.tif 000006
【図５】
2005002221.tif 000007
【図６】
2005002221.tif 000008
【図７】
2005002221.tif 000009
【図８】
2005002221.tif 000010
【図９】
2005002221.tif 000011
【図１０】
2005002221.tif 000012
【図１１】
2005002221.tif 000013
【図１２】
2005002221.tif 000014
【図１３】
2005002221.tif 000015
【図１４】
2005002221.tif 000016
【図１５】
2005002221.tif 000017
【図１６】
2005002221.tif 000018
【図１７】
2005002221.tif 000019
【図１８】
2005002221.tif 000020
【図１９】
2005002221.tif 000021
【図２０】
2005002221.tif 000022
【手続補正書】
【提出日】平成17年2月14日(2005.2.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
映像データおよび音声データを含むデータストリームから映像および音声を再生するデータ処理装置であって、前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されており、
第１データストリームおよび第２データストリームを連続して取得するストリーム取得部と、
前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入する挿入部と、
前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付ける解析部と、
同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御する制御部と、
前記出力タイミングで、前記映像および前記音声を出力する出力部と
を備えたデータ処理装置。
【請求項２】
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定し、前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止する、請求項１に記載のデータ処理装置。
【請求項３】
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定し、前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止する、請求項１に記載のデータ処理装置。
【請求項４】
前記制御部は、映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させ、前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御する、請求項１に記載のデータ処理装置。
【請求項５】
前記ストリーム取得部は、３以上のデータストリームを連続して取得することが可能であり、
前記挿入部は、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入する、請求項１に記載のデータ処理装置。
【請求項６】
前記制御部は、前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止し、現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力する、請求項５に記載のデータ処理装置。
【請求項７】
前記制御部は、前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止し、その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力する、請求項１に記載のデータ処理装置。
【請求項８】
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、
前記挿入部は、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入する、請求項１に記載のデータ処理装置。
【請求項９】
映像データおよび音声データを含むデータストリームから映像および音声を再生するデータ処理方法であって、前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されており、
第１データストリームおよび第２データストリームを連続して取得するステップと、
前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入するステップと、
前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付けるステップと、
同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップと、
前記出力タイミングで、前記映像および前記音声を出力するステップと
を包含するデータ処理方法。
【請求項１０】
前記制御するステップは、
前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定するステップと、
前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止するステップとを包含する、請求項９に記載のデータ処理方法。
【請求項１１】
前記制御するステップは、
前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定するステップと、
前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止するステップとを包含する、請求項９に記載のデータ処理方法。
【請求項１２】
前記制御するステップは、
映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させるステップと、
前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップと
を包含する、請求項９に記載のデータ処理方法。
【請求項１３】
前記ストリームを取得するステップは、３以上のデータストリームを連続して取得し、
前記挿入するステップは、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入する、請求項９に記載のデータ処理方法。
【請求項１４】
前記制御するステップは、
前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止するステップと、
現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力するステップとを包含する、請求項１３に記載のデータ処理方法。
【請求項１５】
前記制御するステップは、
前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止するステップと、
その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力するステップと
を包含する、請求項９に記載のデータ処理方法。
【請求項１６】
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、
前記挿入するステップは、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入する、請求項９に記載のデータ処理方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声および映像の符号化データを復号し再生する技術に関し、特に、複数のデータストリームから音声および映像を連続して再生する際に、同じデータストリームの対応する音声および映像を同期して再生する技術に関する。
【背景技術】
【０００２】
近年、デジタル技術の発達により、動画、静止画等の映像や、音声等に関するコンテンツのデータは符号化され、符号化データストリームとして光ディスクやハードディスク等の記録媒体に記録されるようになってきた。例えばＭＰＥＧ規格（ＩＳＯ１１１７２またはＩＳＯ１３８１８）によれば、音声はオーディオ符号化ストリームとして、また映像はビデオ符号化ストリームとしてそれぞれ符号化される。その後、各符号化データを格納したデータパケットが時系列に並べられ、１つに多重化されて符号化データストリームが構築される。このような符号化ストリームの多重化処理は、システムエンコードと呼ばれている。システムエンコードされた多重化データストリーム（システムストリーム）は、データパケット単位で一つの伝送路上を伝送され、再生装置によって処理される。その結果、映像および音声が再生される。
【０００３】
図１（ａ）〜（ｄ）は、データストリーム１０のデータ構造を示している。再生装置は、図１（ａ）に示すデータストリーム１０から順に、（ｂ）および（ｃ）に示すデータ構造を構築し、（ｄ）に示す形態によって映像および音声を出力する。
【０００４】
図１（ａ）は、データストリーム１０のデータ構造を示す。例えば、データストリーム１０はＭＰＥＧ２トランスポートストリームである。
【０００５】
データストリーム１０は、多重化されたビデオパケット“Ｖｎ”（ｎ＝１，２，・・・）およびオーディオパケット“Ａｎ”（ｎ＝１，２，・・・）から構成されている。各パケットは、パケットヘッダと、パケットヘッダに続くペイロードから構成されている。ビデオパケットのペイロードには映像に関するデータが格納され、オーディオパケットのペイロードには映像に関するデータが格納されている。
【０００６】
図１（ｂ）は、パケット化エレメンタリストリーム（ＰＥＳ）１１のデータ構造を示す。ＰＥＳ１１は、データストリーム１０を構成する各パケットのペイロードのデータに基づいて構築される。ＰＥＳ１１は、複数のＰＥＳパケットから構成されており、各ＰＥＳパケットはＰＥＳヘッダおよびＰＥＳペイロードから構成されている。
【０００７】
図１（ｃ）は、ビデオ／オーディオのエレメンタリストリーム（ＥＳ）の構成を示す。ビデオＥＳ１２ｖは、ピクチャヘッダ、ピクチャデータ、およびピクチャの表示タイミングを規定する再生時刻情報（ＶＰＴＳ）等からなるデータ単位を複数含んでいる。各ピクチャデータは、そのデータのみによって、または、そのデータとその前および／または後に復号化されるピクチャデータとによって構築可能な１枚分のピクチャのデータである。オーディオＥＳ１２ａも同様に、ヘッダ、オーディオフレームデータおよびオーディオフレームの出力タイミングを規定する再生時刻情報（ＡＰＴＳ）等からなるデータ単位を複数含んでいる。なお再生時刻情報（ＡＰＴＳ、ＶＰＴＳ）は、ＭＰＥＧ２規格では３３ビットで表されるデータであり、ＰＥＳパケットのヘッダ（図１（ｂ）の“ＰＥＳ−Ｈ”）の領域（Ｐｒｅｓｅｎｔａｔｉｏｎ＿Ｔｉｍｅ＿Ｓｔａｍｐ）に格納されている。
【０００８】
図１（ｄ）は、出力されるビデオピクチャおよびオーディオフレームを示す。ビデオピクチャ１３−１および１３−２等は１枚の画像（ピクチャ）であり、各々はビデオＥＳ１２ｖ内のピクチャデータに基づいて表示される。ピクチャの表示のタイミングはビデオＥＳ１２ｖ内の再生時刻情報（ＶＰＴＳ）によって指定され、その情報にしたがって各ピクチャの表示を切り替えることによって動画像が映像機器の画面上に表示される。オーディオフレームの出力のタイミングはオーディオＥＳ１２ａ内の再生時刻情報（ＡＰＴＳ）によって指定され、その情報にしたがって各オーディオフレームを出力することによって音声がスピーカから出力される。
【０００９】
図２は、図１（ａ）に示すデータストリーム１０を再生することが可能な従来の再生装置１２０の機能ブロックの構成を示す。再生装置１２０は、データストリーム１０の各パケットを取得し、取得したパケットに基づいてビデオおよびオーディオの各エレメンタリストリームまでデコードし、その後、復元されたビデオピクチャおよびオーディオフレームを出力する。
【００１０】
いま、再生装置１２０が２つのデータストリーム１および２を続けて読み出し、それぞれのビデオピクチャおよびオーディオフレームを再生する処理を考える。各データストリームは図１（ａ）のデータ構造を有する。ストリーム読み出し部１２０１が各データストリームを連続して読み出すと、再生装置１２０内部には１本のデータストリームが送出される。そこで以下では、この１本のデータストリームのデータ部分のうち、データストリーム１に対応するデータ部分を「第１区間」と称し、データストリーム２に対応するデータ部分を「第２区間」と称する。また、再生するストリームが切り替わる点を境界と呼ぶことにする。境界は第１区間の終点であり、第２区間の始点でもある。
【００１１】
データストリームでは、音声および映像の各パケットが多重化されている。同時刻に再生されるべき音声および映像のパケットがデータストリームにおいて直列に配置されて伝送されるので、データストリームの読み出しを中断すると同時刻に再生すべき音声および映像の一方しか存在しない場合がある。よって、相対的に音声あるいは映像の一方の再生時間が短く、もう一方が長くなることがある。これは上述した境界の第１区間の終点近傍で生じる。このようなデータストリームを復号すると、第１区間の終点近傍（例えば第１区間の再生終了時刻の１秒前）では映像は全て再生されたが音声が途切れたり、または音声は全て再生されたが映像が途切れたりすることがある。また、第２区間の始点においても途中から読み出しを開始するため、映像の再生当初の音声が存在しなかったり、音声の再生当初の映像が存在しなかったりすることがある。
【００１２】
特に第１区間および第２区間の映像および音声を連続して再生するときは、本来同時に再生されるべきではない、境界前後の異なる区間の音声と映像が同時に再生されてしまうことがある。そこで再生装置１２０は、読み出しの対象を切り替えた時にダミーパケットを挿入している。図３（ａ）は、第１区間と第２区間との間に挿入されたダミーパケット１３０４を示す。ダミーパケット挿入部１２０２がデータストリーム１３０２の終端にダミーパケット１３０４を挿入し、その後データストリーム１３０３を結合することにより、ダミーパケット１３０４によって第１区間と第２区間とに区分できるデータストリーム１３０１が得られる。
【００１３】
第１区間のデータストリーム１３０２、ダミーパケット１３０４および第２区間のデータストリーム１３０３は、連続してストリーム分離部１２０３に送られる。ストリーム分離部１２０３は第１区間のデータストリーム１３０２を受け取ると、それに含まれるオーディオパケット（Ａ１１等）と、ビデオパケット（Ｖ１１、Ｖ１２、Ｖ１３等）とを分離し、さらに、それぞれをオーディオＥＳおよびビデオＥＳにまで復元（システムデコード）しながら、それぞれを順次第１オーディオ入力バッファ１２０５および第１ビデオ入力バッファ１２１２に格納する。
【００１４】
そしてストリーム分離部１２０３がダミーパケット１３０４を検出すると、第１スイッチ１２０４を切り替えて、ストリーム分離部１２０３と第２のオーディオ入力バッファ１２０６を接続する。同時に第２のスイッチ１２１１を切り替え、ストリーム分離部１２０３と第２のビデオ入力バッファ１２１３を接続する。
【００１５】
その後、ストリーム分離部１２０３は、第２区間のデータストリーム１３０３のオーディオパケット（Ａ２１等）と、ビデオパケット（Ｖ２１、Ｖ２２、Ｖ２３等）とを分離して、それぞれをシステムデコードしながら、オーディオＥＳおよびビデオＥＳを第２オーディオ入力バッファ１２０６および第２ビデオ入力バッファ１２１３に格納する。
【００１６】
オーディオ復号部１２０８は、第３スイッチ１２０７を介して第１オーディオ入力バッファ１２０５からオーディオＥＳを読み出して復号化（エレメンタリデコード）する。そして、得られたオーディオのフレームデータをオーディオ出力バッファ１２０９に送る。オーディオ出力部１２１０は、オーディオ出力バッファ１２０９から復号化されたオーディオフレームデータを読み出し、出力する。
【００１７】
一方、ビデオ復号部１２１５は、第４スイッチ１２１４を介して第１ビデオ入力バッファ１２１２からビデオストリームを読み出してエレメンタリデコードする。そして、得られたビデオのピクチャデータをビデオ出力バッファ１２１６に送る。ビデオ出力部１２１７は、ビデオ出力バッファ１２１６から復号化されたビデオピクチャデータを読み出し、出力する。
【００１８】
オーディオ復号部１２０８およびビデオ復号部１２１５は、ＡＶ同期制御部１２１８により、復号の開始や停止の制御がされる。また、オーディオ出力部１２１０およびビデオ出力部１２１７も、ＡＶ同期制御部１２１８によって出力の開始や停止の制御がされる。
【００１９】
第３スイッチ１２０７および第４スイッチ１２１４は、第１区間の各ビデオ／オーディオパケットを読み出した後はそれぞれ切り替わり、第２オーディオ入力バッファ１２０６とオーディオ復号部１２０８とを接続し、第２ビデオ入力バッファ１２１３とビデオ復号部１２１５とを接続する。その後行われる復号処理および出力処理は先の処理と同様である。
【００２０】
図３（ｂ）は、第１区間のオーディオおよびビデオストリーム１３０５および１３０６、第２区間のオーディオおよびビデオストリーム１３０７および１３０８の各再生時刻の関係を示す。各ストリームは、図１（ｃ）に記載されているエレメンタリストリーム（ＥＳ）であるとする。各ストリームを構成するオーディオフレーム／ビデオピクチャの再生時刻は、図１（ｃ）に示すように再生時刻情報（ＡＰＴＳおよびＶＰＴＳ）によって規定されている。
【００２１】
図３（ｂ）によれば、第１区間のオーディオストリーム１３０５の再生終了時刻Ｔａとビデオストリーム１３０６の再生終了時刻Ｔｂとが一致していないことが理解される。また、第２区間のオーディオストリーム１３０７の再生開始時刻Ｔｃとビデオストリーム１３０８の再生開始時刻Ｔｄとが一致していないことも理解される。
【００２２】
例えば、特許文献１には、スキップ点の前後において動画を連続再生可能な、第１の例による再生装置が開示されている。そこで、そのような再生装置を用いて、図３（ｂ）に示すビデオストリーム１３０６および１３０８を連続再生する処理を説明する。
【００２３】
図３（ｂ）に示すように、境界前の時刻ＴａからＴｂの区間では、オーディオストリーム１３０５が欠落している。そこで、オーディオ復号部１２０８は第１区間のオーディオストリームの復号完了後、一旦復号を停止する。次に、オーディオ復号部１２０８には第２オーディオ入力バッファ１２０６から第２区間のオーディオストリーム１３０７が入力される。
【００２４】
第２区間の時刻ＴｃからＴｄの間は、ビデオストリーム１３０８が欠落しているため、時刻Ｔｃから時刻Ｔｄの間のオーディオストリームを復号せずに破棄する。破棄の処理は、例えば、オーディオ復号部１２０８が第２入力バッファ１２０６上の読み出しアドレスを時刻Ｔｃから時刻Ｔｄに相当するデータが格納されたアドレスに移動することによって行われる。この破棄の処理は、オーディオストリームを復号する処理に比べて非常に短い時間で完了するので、オーディオ復号部１２０８は、時刻Ｔｄ以降のオーディオストリームを復号開始の指示がＡＶ同期制御部１２１８から来るのを待つ。一方、オーディオ復号部１２０８が時刻Ｔｄ以降の復号開始指示の待機状態に入るまでの間、ビデオ復号部１２１５は、第１区間の時刻Ｔｂまでビデオストリームの復号および出力を行う。
【００２５】
時刻Ｔｂまでのビデオストリームの復号処理が完了した時点で、第２ビデオ入力バッファ１２１３には境界後の時刻Ｔｄ以降のビデオストリームが格納されているとする。ビデオ復号部１２１５は、時刻Ｔｂまでのビデオストリームの復号に続けて時刻Ｔｄ以降の復号を行う。これにより、時刻Ｔｂまでの映像と時刻Ｔｄからの映像は連続して再生される。時刻Ｔｄのビデオストリームの復号を開始する際には、ＡＶ同期制御部１２１８は、待機させていたオーディオ復号部１２０８を起動し、時刻Ｔｄ以降、オーディオストリーム１３０７の復号を開始する。これにより、境界においてビデオストリームを連続的に再生し、かつ、音声と映像とを同期させて出力することが可能となる。
【００２６】
なお、特許文献２や特許文献３に記載されている技術によっても、境界前後において映像を連続して再生することができる。例えば、特許文献２によれば、オーディオストリーム１３０５、１３０７に付随する再生時刻情報を用いて、図３（ｂ）に示す時刻ＴｃからＴｄまでの区間のオーディオストリームを破棄し、境界前後での連続再生を実現できる。なお、再生時刻情報を用いると、オーディオストリームに対してビデオストリームが欠落している場合にはオーディストリームを破棄できるため、オーディストリームの不要な処理負荷をなくすとともに、第２区間のストリームをすぐに読み込むことができる。よって、境界前後における映像の連続再生も可能となる。
【００２７】
しかしながら、従来の技術では境界前後において映像を連続して再生することは可能であるが、映像と音声との同期がずれてしまうことがあった。以下、図４（ａ）および（ｂ）を参照しながら具体的に説明する。
【００２８】
図４（ａ）は、２つの境界によって３つの区間が規定されたデータストリーム１４０１を示す。データストリーム１４０１には２つのダミーパケット１および２が含まれている。第１区間に対応するデータストリーム１４０２のオーディオパケットＡ１１の後にダミーパケット１が挿入される。その後、第２区間に対応するデータストリーム１４０３が読み出される。続いて、データストリーム１４０３の最後のビデオパケットＶ２２の後にダミーパケット２が挿入される。そしてその後、第３区間に対応するデータストリーム１４０４が読み出される。
【００２９】
ここで、第２区間には、ビデオパケットＶ２１およびＶ２２のみが存在し、オーディオパケットは存在していないことに留意されたい。これは、映像のたかだか数フレーム分に相当する短い区間が第２区間として規定され、その区間のデータストリーム１４０３内にはデコード可能なオーディオフレームに足るだけのオーディオパケットが存在しないことを意味している。例えば、ＭＰＥＧ２規格で録画されたデータストリームを、時間的に非常に短い区間を指定して編集した場合に、このような区間が生成される。
【００３０】
図４（ｂ）は、第１区間のオーディオおよびビデオストリーム１４０５および１４０６、第２区間のビデオストリーム１４０７、および、第３区間のオーディオおよびビデオストリーム１４０８および１４０９の各再生時刻の関係を示す。図４（ｂ）でも、各ストリームは、図１（ｃ）に記載されているエレメンタリストリーム（ＥＳ）レベルにまで構築されたストリームであるとする。
【００３１】
まず、映像の再生処理を説明すると、境界１の前後では、第１区間のビデオパケットＶ１１までのピクチャデータが第１ビデオ入力バッファ１２１２に格納され、第２区間のビデオパケットＶ２１およびＶ２２のピクチャデータが第２ビデオ入力バッファ１２１３に格納される。いずれのデータもその後順次復号され、映像が連続的に再生される。そして、境界２の後は、第３区間のビデオストリームの格納先が、第１ビデオ入力バッファ１２１２に再び切り替えられ、境界１と同様の制御で復号され、映像が連続的に出力される。
【００３２】
一方、音声の再生処理を説明すると、まず時刻Ｔａにおいて、オーディオ復号部１２０８による復号が一旦停止され、オーディオストリームの格納先が、第１オーディオ入力バッファ１２０５から第２オーディオ入力バッファ１２０６に切り替えられる。次に、第３区間のデータストリームが記録媒体１２１から読み出され、第３区間のオーディオストリームが、第２オーディオ入力バッファ１２０６に格納される。
【００３３】
従来の再生装置は、オーディオストリームを復号し音声を再生する際に、再生時刻情報を利用している。第２区間のビデオストリーム１４０７に付加された再生時刻情報および第３区間のビデオストリーム１４０９に付加された再生時刻情報が単純に増加しているとき（特に、時刻Ｔｃから時刻Ｔｆまでの区間の再生時刻情報の値が単調増加しているとき）は、特に問題なく処理を進めることが可能である。オーディオ復号部１２０８およびオーディオ出力部１２１０は、ビデオ復号部１２１５およびビデオ出力部１２１７が時刻Ｔｆの処理をするまで待機し、時刻Ｔｆより処理を開始し、映像に同期して音声を出力すればよい。
【特許文献１】特開２０００−３６９４１号公報
【特許文献２】特開２００２−２８１４５８号公報
【特許文献３】特開平１０−１６４５１２号公報
【発明の開示】
【発明が解決しようとする課題】
【００３４】
しかしながら、各区間のデータストリームに付加された再生時刻情報はストリーム相互間では調整されていないため、各区間の再生時刻情報の値の大小を予め定めたり、予測することはできない。よって再生時刻情報に基づいて再生を制御すると、破棄してはならないデータを破棄してしまう等の不具合が生じ、連続再生に支障を来たす。例えば、時刻Ｔｆに出力すべきオーディオフレームの再生時刻情報の値（ＡＰＴＳ＿ｆ）が時刻Ｔｃに出力すべきビデオピクチャの再生時刻情報の値（ＶＰＴＳ＿ｃ）よりも小さいとすると、従来の再生装置では、第２区間の映像が再生される前あるいは再生中に第３区間のオーディオストリームが破棄されてしまう。特に、ＡＰＴＳ＿ｆがＶＰＴＳ＿ｃよりも非常に小さい場合には、第３区間のオーディオストリームのデータが大量に破棄され、第３区間の映像が再生され始めても音声が全く出力されないという不具合が発生する。
【００３５】
また、時刻Ｔｆの再生時刻情報（ＡＰＴＳ＿ｆ）の値が、第２区間の先頭ビデオピクチャの再生時刻情報（ＶＰＴＳ＿ｃ）の値以上で、かつ最終ビデオピクチャの再生時刻情報（ＶＰＴＳ＿ｄ）の値以下の時には、第２区間の映像再生中に、時刻Ｔｆから再生が開始されるべき第３区間の音声の再生が開始されるという不具合が発生する。
【００３６】
本発明の目的は、複数のデータストリームを連続的に再生する際に、音声と映像とをずれることなく同期して再生することである。
【課題を解決するための手段】
【００３７】
本発明によるデータ処理装置は、映像データおよび音声データを含むデータストリームから映像および音声を再生する。前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されている。前記データ処理装置は、第１データストリームおよび第２データストリームを連続して取得するストリーム取得部と、前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入する挿入部と、前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付ける解析部と、同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御する制御部と、前記出力タイミングで、前記映像および前記音声を出力する出力部とを備えている。
【００３８】
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定し、前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止してもよい。
【００３９】
前記制御部は、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定し、前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止してもよい。
【００４０】
前記制御部は、映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させ、前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御してもよい。
【００４１】
前記ストリーム取得部は、３以上のデータストリームを連続して取得することが可能であり、前記挿入部は、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入してもよい。
【００４２】
前記制御部は、前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止し、現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力してもよい。
【００４３】
前記制御部は、前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止し、その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力してもよい。
【００４４】
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、前記挿入部は、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入してもよい。
【００４５】
本発明によるデータ処理方法は、映像データおよび音声データを含むデータストリームから映像および音声を再生する。前記映像データおよび前記音声データの各々には再生のタイミングを示す時刻情報が付加されている。前記データ処理方法は、第１データストリームおよび第２データストリームを連続して取得するステップと、前記第１データストリームと前記第２データストリームとが切り替わるデータ位置に、境界を示すダミーデータを挿入するステップと、前記ダミーデータを検出して、前記第１データストリームおよび前記第２データストリームに異なる識別情報を割り当て、各データストリームの前記映像データおよび前記音声データに前記識別情報を関連付けるステップと、同じ識別情報が関連付けられた映像データおよび音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップと、前記出力タイミングで、前記映像および前記音声を出力するステップとを包含する。
【００４６】
前記制御するステップは、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第１データストリームに関する前記映像および前記音声の各再生終了時刻を特定するステップと、前記音声の再生終了時刻が前記映像の再生終了時刻よりも遅い時刻であるときは、前記映像の再生終了時刻から前記音声の再生終了時刻までの前記音声の出力を停止するステップとを包含してもよい。
【００４７】
前記制御するステップは、前記映像データに付加された時刻情報および前記音声データに付加された時刻情報に基づいて、前記第２データストリームに関する前記映像および前記音声の各再生開始時刻を特定するステップと、前記音声の再生開始時刻が前記映像の再生開始時刻よりも早い時刻であるときは、前記音声の再生開始時刻から前記映像の再生開始時刻までの前記音声の出力を停止するステップとを包含してもよい。
【００４８】
前記制御するステップは、映像データおよび音声データに関連付けられた識別情報が異なるとき、前記映像データに基づく映像のみを先に出力させるステップと、前記映像の再生終了後に得られた映像データに関連付けられた識別情報が前記音声データに関連付けられた識別情報と一致したとき、同じ識別情報が関連付けられた前記映像データおよび前記音声データの各時刻情報に基づいて、前記映像データに基づく映像および前記音声データに基づく音声の出力タイミングを制御するステップとを包含してもよい。
【００４９】
前記ストリームを取得するステップは、３以上のデータストリームを連続して取得し、前記挿入するステップは、連続して取得される２つのデータストリームが切り替わるデータ位置ごとに、識別情報に対応する、単調増加または単調減少させた値を有するダミーデータを挿入してもよい。
【００５０】
前記制御するステップは、前記音声データに関連付けられた識別情報が、過去に出力された映像の映像データに関連付けられた識別情報と一致するときは、前記音声データに基づく音声の出力を停止するステップと、現在出力の対象としている映像の映像データに関連付けられた識別情報と同じ識別情報を有する音声データに基づいて音声を出力するステップとを包含してもよい。
【００５１】
前記制御するステップは、前記音声データに関連付けられた識別情報がまだ出力されていない映像の映像データに関連付けられた識別情報と一致するときは前記音声データに基づく音声の出力を停止するステップと、その後取得した映像データに関連付けられた識別情報と一致したときにおいて、前記音声データに基づいて音声を出力するステップとを包含してもよい。
【００５２】
前記データストリームは、映像データを格納したパケットおよび音声データを格納したパケットを含むパケット構造で構成されており、前記挿入するステップは、前記第１データストリームの最終パケットと、前記第２データストリームの先頭パケットとの間の位置に、境界を示すダミーパケットを挿入してもよい。
【発明の効果】
【００５３】
本発明によれば、複数のデータストリームを連続的に再生する際に、音声と映像とをずれることなく同期して再生することができるデータ処理装置が提供される。
【発明を実施するための最良の形態】
【００５４】
以下、添付の図面を参照しながら本発明のデータ処理装置を説明する。まず処理の対象であるデータストリームのデータ構造を説明し、その後、データ処理装置の実施形態である再生装置を説明する。
【００５５】
本実施形態では、データストリームを、ＭＰＥＧ２規格ＩＳＯ−１３８１８−１で定義されているトランスポートストリーム（以下、「ＴＳ」または「トランスポートストリーム」と記述する）であるとして説明する。ＴＳは、オーディオストリームおよびビデオストリームを多重化したシステムストリームの一つの形態として知られている。
【００５６】
図５は、トランスポートストリーム２０のデータ構造を示す。トランスポートストリーム２０は、複数のＴＳオブジェクトユニット(TS OBject Unit;ＴＯＢＵ)２１を含み、そのＴＯＢＵ２１は１以上のトランスポートパケット（ＴＳパケット）から構成されている。ＴＳパケットは、例えば、圧縮符号化されたビデオデータが格納されたビデオＴＳパケット（Ｖ＿ＴＳＰ）３０、（圧縮）符号化されたオーディオデータが格納されたオーディオＴＳパケット（Ａ＿ＴＳＰ）３１の他、番組表（プログラム・アソシエーション・テーブル；ＰＡＴ）が格納されたパケット（ＰＡＴ＿ＴＳＰ）、番組対応表（プログラム・マップ・テーブル；ＰＭＴ）が格納されたパケット（ＰＭＴ＿ＴＳＰ）およびプログラム・クロック・リファレンス（ＰＣＲ）が格納されたパケット（ＰＣＲ＿ＴＳＰ）等を含む。各パケットのデータ量は１８８バイトである。
【００５７】
以下、本発明の処理に関連するビデオＴＳパケットおよびオーディオＴＳパケットを説明する。他の種類のパケットのデータ構造およびそのデータに基づく機能は本発明の処理とは直接に関連しないため、それらの説明は省略する。
【００５８】
図６（ａ）はビデオＴＳパケット３０のデータ構造を示す。ビデオＴＳパケット３０は、４バイトのトランスポートパケットヘッダ３０ａ、および、１８４バイトのＴＳペイロード３０ｂを有する。ＴＳペイロード３０ｂには上述のビデオデータが格納されている。一方、図６（ｂ）は、オーディオＴＳパケット３１のデータ構造を示す。オーディオＴＳパケット３１も同様に、４バイトのトランスポートパケットヘッダ３１ａ、および、１８４バイトのＴＳペイロード３１ｂを有する。ＴＳペイロード３１ｂには上述のオーディオデータが格納されている。ＴＳペイロード３０ｂに格納されているビデオデータおよびＴＳペイロード３１ｂに格納されているオーディオデータは、概ね、図１（ａ）〜（ｄ）に示す関係に基づいて処理され、映像および音声として再生される。
【００５９】
上述の例から理解されるように、一般にＴＳパケットは４バイトのトランスポートパケットヘッダと、１８４バイトのデータ領域とから構成されている。パケットヘッダには、そのパケットの種類を特定するパケット識別子（Packet ID；ＰＩＤ）が記述されている。例えば、ビデオＴＳパケットのＰＩＤは“０ｘ００２０”であり、オーディオＴＳパケットのＰＩＤは“０ｘ００２１”である。データ領域は、ビデオデータ、オーディオデータ等のコンテンツのデータや、再生を制御するための制御データ等を格納する。どのようなデータが格納されているかは、パケットの種類に応じて異なる。なお、パケットヘッダとＴＳペイロードとの間に「アダプテーションフィールド」と呼ばれる領域が挿入され、制御データの伝送、ペイロードのデータサイズの調整等に用いられる場合がある。しかし、本実施形態による処理の主要な特徴は、ＴＳパケットのペイロードを利用した処理にあるため、アダプテーションフィールドが存在しない場合を例として説明する。
【００６０】
なお、図５、図６（ａ）および図６（ｂ）はトランスポートストリームに関するデータ構造の例であるが、このデータ構造は、プログラムストリームにおける「パック」にも同様に適用できる。パックでは、パケットヘッダに続けてデータが配置されているからである。パケットヘッダの前にはパックヘッダが付加され、パックのデータ量は２０４８キロバイトである等の点においてパケットと相違している。なお、「パック」はパケットの１つの例示的な形態として知られている。なお、プログラムストリームの他、上述のパケット構造と同様のパケット構造を有するデータストリームであれば、以下に説明する処理は適用可能である。
【００６１】
図７は、本実施形態による再生装置１００の機能ブロックの構成を示す。再生装置１００には、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ等の光ディスク１２０が装填されており、光ディスク１２０に記録されたトランスポートストリーム（ＴＳ）を読み出す。そして、ＴＳを構成するビデオパケットおよびオーディオパケットからビデオデータおよびオーディオデータを抽出し、映像および音声を再生する。
【００６２】
本実施形態では、光ディスク１２０には複数のＴＳ（例えば、ＴＳ１およびＴＳ２）が記録されているとする。ＴＳには複数のコンテンツのデータが重畳され得るが、説明の便宜上、１つのＴＳには１つのコンテンツが含まれているとする。なお、「コンテンツを再生する」とは、そのコンテンツに含まれる映像および音声の各々を同期させながら再生することをいうとする。
【００６３】
再生処理の制御機能に関して、再生装置１００は、ストリーム読み出し部１０１と、ダミーパケット挿入部１０２と、ストリーム解析部１０３と、ＡＶ同期制御部１１８と、識別情報格納部１１９とを有する。
【００６４】
またオーディオの再生処理機能に関して、再生装置１００は、第１スイッチ１０４と、第１オーディオ入力バッファ１０５と、第２オーディオ入力バッファ１０６と、第３スイッチ１０７と、オーディオ復号部１０８と、オーディオ出力バッファ１０９と、オーディオ出力部１１０とを有する。
【００６５】
さらに、ビデオの再生処理機能に関して、再生装置１００は、第２スイッチ１１１と、第１ビデオ入力バッファ１１２と、第２ビデオ入力バッファ１１３と、第４スイッチ１１４と、ビデオ復号部１１５と、ビデオ出力バッファ１１６と、ビデオ出力部１１７とを有する。
【００６６】
以下、個々の構成要素の機能（動作）を説明する前に、再生装置１００による再生処理の概要を説明する。ストリーム読み出し部１０１は、光ディスク１２０から複数のＴＳを連続的に読み出し、ダミーパケット挿入部１０２に送る。図８（ａ）は読み出されたＴＳ１を示し、図８（ｂ）はＴＳ１の後に読み出されたＴＳ２を示し、図８（ｃ）はＴＳ２の後に読み出されたＴＳ３を示す。このような連続的な読み出しは、例えばユーザが、プレイリスト等によって複数のＴＳの各一部を再生区間として指定し、再生するときを想定している。または、ユーザが、複数のＴＳの各一部をつなぎ合わせる編集作業を行うためにその各一部を再生区間として指定し、再生するときを想定している。
【００６７】
ダミーパケット挿入部１０２は、ＴＳ１の最終パケットの後で、かつＴＳ２の先頭パケットの前にダミーパケットを挿入する。その後、またダミーパケット挿入部１０２は、ＴＳ２の最終パケットの後で、かつＴＳ３の先頭パケットの前にもダミーパケットを挿入する。図８（ｄ）は、ダミーパケットが挿入されたＴＳ７０を示す。ＴＳ１とＴＳ２とが切り替わる位置にはダミーパケット７１−１が挿入され、ＴＳ２とＴＳ３とが切り替わる位置にはダミーパケット７１−２が挿入される。
【００６８】
本明細書では、ストリームが切り替わる位置をストリームの境界と呼ぶ。例えば図８（ｄ）では、ダミーパケット７１−１および７１−２を境界としてＴＳ１およびＴＳ２、ＴＳ２およびＴＳ３が結合され、一つのトランスポートストリーム７０が構成されている。このＴＳ７０のうち、ＴＳ１に相当する部分を「第１区間」、ＴＳ２に相当する部分を「第２区間」、ＴＳ３に相当する部分を「第３区間」と呼ぶ。
【００６９】
図９（ａ）は、ダミーパケット７１のデータ構造を示す。ダミーパケット７１は、４バイトのトランスポートパケットヘッダ７１ａ、および、１８４バイトのＴＳペイロード７１ｂを有する。図９（ｂ）は、ダミーパケット７１の具体的なデータ構造を示す。トランスポートパケットヘッダ７１ａには、図５に示す各種のＴＳパケットとは異なるパケットＩＤ（例えば０ｘ１ＦＦＦ）９１が割り当てられている。また、このトランスポートパケットヘッダ７１ａには、本実施形態による再生処理に利用される識別情報９２が記述されている。識別情報９２を利用した具体的な処理は後述する。一方、ＴＳペイロード７１ｂには、本実施形態によるダミーパケットであることを示す固有の情報（図９（ｂ）では例えば“Ｄｕｍｍｙ判別情報”）が記述されている。ダミーパケットのパケットＩＤおよびこの固有の情報によって、他のパケットからは容易に識別される。
【００７０】
再び図７を参照する。ストリーム解析部１０３は、結合されたＴＳ７０のうち、はじめに受け取るＴＳ１のオーディオＴＳパケットとビデオＴＳパケットとをそれぞれ分離する。さらにストリーム解析部１０３は、分離したオーディオＴＳパケットをシステムデコードしてオーディオエレメンタリストリーム（以下「オーディオストリーム」）を生成し、分離したビデオＴＳパケットをシステムデコードしてビデオエレメンタリストリーム（以下「ビデオストリーム」）を生成する。このときストリーム解析部１０３は、最初に読み出されたＴＳ１にデフォルトの識別情報を割り当てている。識別情報として、ＴＳ１を特定するための一意の値が割り当てられる。そして、その識別情報を、システムデコードしたオーディオストリームとビデオストリームとに関連付ける。
【００７１】
ここで「関連付ける」とは、オーディオストリームに関しては、オーディオストリームのフレーム先頭アドレス値、そのフレームの再生時刻情報（ＡＰＴＳ）および識別情報を対応させたテーブルを生成することをいう（例えば後述の図１６）。ビデオストリームに関しては、ビデオストリーム内のピクチャヘッダの後（ピクチャデータの前）に、識別情報を記述することをいう（例えば後述の図１５（ｃ））。
【００７２】
ストリーム解析部１０３は、上述の処理をしたオーディオストリームおよびビデオストリームを、それぞれ第１スイッチ１０４および第２スイッチ１１１を介して第１オーディオ入力バッファ１０５および第１ビデオ入力バッファ１１２に送る。
【００７３】
ＴＳが順次読み出されると、ストリーム解析部１０３は、結合されたＴＳ７０内のダミーパケットを検出し、ダミーパケットに記述された識別情報を取得する。ダミーパケット中の識別情報の値はそのデフォルトの識別情報の値とは異なっており、その識別情報が示す値をＴＳ２の識別情報として割り当てる。そして、ＴＳ１のオーディオパケットおよびビデオパケットに対して行った処理と同様の処理を、ＴＳ２のオーディオパケットおよびビデオパケットに対して行う。ＴＳ２のオーディオパケットおよびビデオパケットから構築されたオーディオストリームおよびビデオストリームは、それぞれ第２オーディオ入力バッファ１０６および第３スイッチ１０７に送られる。
【００７４】
オーディオおよびビデオの各バッファ１０５、１０６、１１２および１１３へのストリームの蓄積と並行して、オーディオ復号部１０８およびビデオ復号部１１５は、オーディオストリームおよびビデオストリームを復号（エレメンタリデコード）し、再生出力可能なピクチャデータおよびオーディオフレームを生成する。
【００７５】
ＡＶ同期制御部１１８は、復号後に得られたピクチャデータおよびオーディオフレームと、復号前のオーディオストリームおよびビデオストリームに関連付けられていた識別情報との対応関係を管理している。そしてＡＶ同期制御部１１８は、その対応関係に基づいて、音声および映像を出力するタイミングを制御する。具体的にはＡＶ同期制御部１１８は、同じ識別情報と関連付けされているピクチャデータとオーディオフレームとを再生出力の対象とする。同じＴＳから得られた音声および映像の各データには同じ識別情報が付加されているため、各バッファ１０５、１０６、１１２および１１３から異なる区間を構成するＴＳ１〜３のどのパケットが読み出されていても、再生の対象とするＴＳの音声および映像のみを確実に特定できる。さらに、再生時刻情報に基づいてその音声および映像の出力のタイミングを制御するため、ＴＳ生成時に想定されていたとおりの音声および映像の同期再生が実現される。
【００７６】
ここで、図１０から図１３を参照しながら、再生装置１００において行われる音声および映像の同期再生の種々の態様を説明する。本実施形態では、再生装置１００は境界の前後の映像が連続的に表示されるように再生を制御する。
【００７７】
図１０は、第１の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す。オーディオストリームおよびビデオストリームはそれぞれエレメンタリストリーム（例えば図１（ｃ））であるとし、各ピクチャデータ等に対応して設けられた再生時刻情報ＰＴＳによって指定された時刻が再生時刻として記載されている。これは、後述の図１１および１２でも同じである。
【００７８】
第１区間では、ビデオストリーム５０２の映像の再生終了時刻Ｔａは、オーディオストリーム５０１の音声の再生終了時刻Ｔｂよりも早い。再生終了時刻Ｔａに至るまでは、再生装置１００は再生時刻情報ＰＴＳに基づいて、音声および映像を同期して再生する。一方、時刻Ｔａ以降、音声の再生を継続すると、ビデオストリームがもはや存在しないので映像が途切れることになる。よって、第２区間の映像に連続的に接続するためには、音声の再生は不要であると判断する。そこで再生装置１００は、時刻Ｔａ以降、時刻Ｔｂまでのオーディオストリーム５０１を破棄する。
【００７９】
なお本実施形態では、第１区間の映像の再生が終了した時刻Ｔａ以降は、第１区間の音声と第２区間の映像とが同時に再生され出力されることはない。その理由は、再生装置１００は異なる識別情報が付加された音声および映像の同時再生を禁止しているからである。これは、上述のように各区間を規定するＴＳに異なる識別情報を割り当てているためである。これにより、異なる区間のＴＳに由来する映像と音声とが同時に再生されることがなくなる。
【００８０】
一方、第２区間の再生を説明すると、ビデオストリーム５０４の映像の再生開始時刻Ｔｃはオーディオストリーム５０３の音声の再生開始時刻Ｔｄよりも早い。このとき再生装置１００は、時刻Ｔｃから時刻Ｔｄまで間は、映像を再生して出力し、音声の再生を停止する。時刻Ｔｄ以降は音声および映像を同期して再生する。なお、第１区間の映像と第２区間の映像は途切れることなく再生される。
【００８１】
なお、境界を基準としたとき、オーディオストリーム５０１およびビデオストリーム５０２の再生はそれぞれ時刻ΔＴｘおよびΔＴｙだけ早く終了する。これは、１オーディオフレームや１ピクチャのデータが複数のパケットに分割して格納されていることに起因する。例えば、１ピクチャのデータを格納した全てのパケットが揃う前にＴＳが切り替えられた場合には、その直前まで完成したピクチャデータしか処理できない。よって、境界の直前まで再生可能なデータが存在しない場合がある。
【００８２】
図１１は、第２の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す。第１区間では、オーディオストリーム６０１の音声の再生終了時刻Ｔａは、ビデオストリーム６０２の映像の再生終了時刻Ｔｂよりも早い。このとき、再生装置１００は音声の再生が終了した時刻Ｔａ以降も再生終了時刻Ｔｂまで映像を再生する。一方、第２区間では、音声の再生開始時刻Ｔｃは映像の再生開始時刻Ｔｄよりも早い。このとき再生装置１００は、オーディオストリーム６０３の時刻Ｔｃ以降、時刻Ｔｄまでのデータを破棄する。時刻Ｔｄ以降は再生装置１００の音声および映像を同期して再生する。なお図１１に示す例でも、識別情報を利用して第１区間の映像と第２区間の音声とが同時に再生されることはない。一方、第１区間の映像と第２区間の映像は途切れることなく再生される。
【００８３】
図１２は、第３の例による、オーディオストリームおよびビデオストリームの再生時刻の関係を示す。この例は、図８（ａ）〜（ｃ）に示すＴＳ１〜ＴＳ３が連続して読み出されたときに対応する。第２区間には、音声として再生可能なオーディオデータが存在しないとする。図１２には、第２区間にはオーディオストリームが存在していないことが理解される。
【００８４】
図１２の第１区間の各ストリームに関しては、図１１の第１区間の処理と同じ処理によって時刻Ｔｂまで映像が再生される。次に、第２区間のビデオストリーム７０３の映像が再生される。このとき再生装置１００のオーディオ入力バッファにはすでに第３区間のオーディオストリーム７０４が存在している場合がある。しかし、第２区間のＴＳ２および第３区間のＴＳ３には異なる識別情報が割り当てられているため、この識別情報を利用すると第２区間の映像の再生中に第３区間のオーディオストリーム７０４の音声が再生されることはない。具体的には、再生装置１００は第２区間の映像再生中には異なる識別情報が割り当てられたオーディオストリーム７０４の再生を待機させる。その後、第２区間の再生が終了すると、図１０の第２区間と同じ処理により、映像の再生のみが時刻ＴｅからＴｆまで行われる。時刻Ｔｆ以後、再生装置１００は、第３区間の音声の待機を解除して音声および映像を同期再生する。
【００８５】
上述のように、再生装置１００は、各区間のＴＳから得られた映像および音声の再生タイミングを、識別情報を利用して制御している。識別情報を利用することにより、あるＴＳの音声の再生時刻情報（ＡＰＴＳ）と他のＴＳの映像の再生時刻情報（ＶＰＴＳ）とが一致していても同時に再生されることはない。すなわち、ストリームの再生時刻情報（ＰＴＳ）の影響を受けることなく、同じＴＳから得られたオーディオストリームおよびビデオストリームのみを同期再生することができる。
【００８６】
次に、上述の再生処理を実現するための、再生装置１００の各構成要素の具体的な処理を説明する。
【００８７】
図１３は、複数のＴＳを連続して読み出す際の処理の手順を示す。この処理は、ストリーム読み出し部１０１およびダミーパケット挿入部１０２によって行われる。
【００８８】
まず、ストリーム読み出し部１０１は、ステップＳ２０１において光ディスク１２０からのＴＳの読み出しを開始するよう指示されると、ステップＳ２０２において、ストリームの境界を判別するための識別情報ｎを初期化してデフォルト値（例えば０）を設定する。本実施形態では、識別情報ｎは初期値０から単調に増加する整数であるとして説明するが、識別情報のデフォルト値（初期値）を一定値（例えば１００）に設定し、単調に減少する整数としてもよい。次に、ステップＳ２０３において、ストリーム読み出し部１０１は第１区間に対応するシステムストリーム（ＴＳ１）をＴＳパケット単位で読み出し、ダミーパケット挿入部１０２へ送り、ステップＳ２０４に進む。
【００８９】
ステップＳ２０４において、ダミーパケット挿入部１０２は、ＴＳが切り替えられて、新たな区間であるか否かを判定する。このとき、ＴＳ１のＴＳパケットの受信時はステップＳ２０７に進み、その後、読み出しの対象がＴＳ１からＴＳ２に切り替えられたときにはステップＳ２０５に進む。読み出し対象のＴＳが切り替えられたという情報は、例えばＣＰＵ（図示せず）によって発せられる。ＣＰＵは、再生開始時点で予め特定されている再生経路に基づいてどのタイミングでＴＳを切り替えればよいか認識している。
【００９０】
ステップＳ２０５では識別情報ｎの値に１が加算される。ステップＳ２０６では、ダミーパケット挿入部１０２は識別情報ｎを含むダミーパケットを生成し、ＴＳ１の最終パケットに付加する。ステップＳ２０７では、ダミーパケット挿入部１０２はＴＳパケットをストリーム解析部１０３に送出する。そして、ストリーム読み出し部１０１およびダミーパケット挿入部１０２は、対象となる全てのＴＳのＴＳパケットの送出が終了するまで、ステップＳ２０３からの処理を繰り返す。
【００９１】
ここで、再び図９（ｂ）を参照しながら、ダミーパケット７１のデータ構造を詳細に説明する。図９（ｂ）に示すダミーパケット７１は、ＭＰＥＧ規格として規定されているＴＳのＮｕｌｌパケットの構造を利用して構成されている。このダミーパケット７１は、本実施形態において定義される符号列であって、各ＴＳには存在し得ない符号列である。
【００９２】
ダミーパケット挿入部１０２は、以下のようにしてダミーパケット７１を生成する。すなわちダミーパケット挿入部１０２は、まずＭＰＥＧ規格におけるＮｕｌｌパケットと同様に、ダミーパケット７１のＰＩＤを“０ｘ１ＦＦＦ“に設定する。さらにダミーパケット挿入部１０２は、ダミーパケット７１内に本実施形態による固有の情報を設定する。具体的には、ダミーパケット挿入部１０２は、“ｃｏｎｔｉｎｕｉｔｙ＿ｃｏｕｎｔｅｒ“フィールド９２に識別情報ｎ（０ｘ０〜０ｘＦ）の値を記述する。ＴＳ１の先頭にはダミーパケット７１が付加されていないため、ＴＳ１とＴＳ２との境界に挿入される最初のダミーパケット７１には、識別情報ｎとして”１“が設定される。なお、識別情報は、”Ｓｔｕｆｆｉｎｇ＿ｄａｔａ“フィールドや”Ｒｅｓｅｒｖｅｄ“フィールドに記述されてもよい。
【００９３】
また、ダミーパケット挿入部１０２は、“Ｐａｙｌｏａｄ＿ｕｎｉｔ＿ｓｔａｒｔ＿ｉｎｄｉｃａｔｏｒ”フィールドに、例えば“１”を設定する。このフィールドは、ＭＰＥＧ規格に準拠したＮｕｌｌパケットでは“０”とされている。またダミーパケット挿入部１０２は、新たに“Ｄｕｍｍｙ判別情報”フィールドを設け、例えば文字列“ＤＵＭ”を格納する。また、新たに“Ｄｕｍｍｙ＿ＩＤ”フィールドを設けて、例えば、“０ｘＦ”としてＴＳの境界を表すことにしておく。これは、他の目的で別のＴＳパケットを将来定義するための手当てである。以上の設定により、ダミーパケット７１を検出して解析することにより、後述のストリーム解析部１０３は、このダミーパケット７１において、ＴＳの境界であると判定できる。
【００９４】
なお本実施形態では、ダミーパケット７１には、後続のＴＳのオーディオ再生先頭時刻情報（ａｕｄｉｏ＿ｓｔａｒｔ＿ＰＴＳ）、ビデオ再生先頭時刻情報（ｖｉｄｅｏ＿ｓｔａｒｔ＿ＰＴＳ）、オーディオ再生終端時刻情報（ａｕｄｉｏ＿ｅｎｄ＿ＰＴＳ）、および、ビデオ再生終端時刻情報（ｖｉｄｅｏ＿ｅｎｄ＿ＰＴＳ）が格納される。これらは、再生の対象となる各ＴＳが特定された時点で取得することができるため、予めそれらの情報を読み出しておけばよい。各時刻情報は各区間の先頭または終端近傍において、音声のフェードインおよびフェードアウトの制御をする際に利用できる。フェードインおよびフェードアウトの制御処理は後述する。
【００９５】
図１４は、ストリーム解析部１０３の処理の手順を示す。ストリーム解析部１０３は、ステップＳ２０９においてダミーパケット挿入部１０２からＴＳパケットを受け取って各パケットを解析し、ステップＳ２１０に進む。Ｓ２１０では、ストリーム解析部１０３は、入力されたＴＳパケットがダミーパケット７１であるか否かを判定する。ダミーパケットであればステップＳ２１１に進み、そうでなければステップＳ２１３に進む。
【００９６】
ステップＳ２１１では、ストリーム解析部１０３はダミーパケット７１から識別情報の値ｎを抽出し、ステップＳ２１２において、次のダミーパケット７１が入力されるまで一時的に記憶しておく。なお、最初のダミーパケット７１が検出されるまでは、デフォルト値“０”が識別情報の値として記憶されている。ダミーパケットを検出すると、第１スイッチ１０４および第２スイッチ１１１が一方から他方に切り替えられる。
【００９７】
ステップＳ２１３では、ストリーム解析部１０３は入力されたＴＳパケットがビデオパケットか否かを判定する。ビデオパケットであればステップＳ２１４に進み、そうでなければステップＳ２１６に進む。ステップＳ２１４では、ストリーム解析部１０３はビデオパケットをシステムデコードし、ビデオストリームを出力する。このとき、ビデオストリーム内のピクチャデータに識別情報を関連付ける。その後ストリーム解析部１０３は、ステップＳ２１５において、ビデオストリームを第１ビデオ入力バッファ１１２または第２ビデオ入力バッファ１１３に出力される。
【００９８】
次に、図１５（ａ）〜（ｃ）を参照しながら、識別情報の関連付けに関する処理を具体的に説明する。図１５（ａ）は、ストリーム解析部１０３に入力されたＴＳ７０を示す。ここでは、ビデオパケット７０ａ〜７０ｅおよびダミーパケット７１を示している。
【００９９】
ストリーム解析部１０３は、例えば図１５（ａ）に示すＴＳパケット７０ａからＴＳパケットヘッダ７０ａ−１を除去してＴＳペイロード７０ａ−２を取得し、パケット化エレメンタリストリーム（ＰＥＳ）８０を生成する。図１５（ｂ）はＰＥＳ８０のデータ構造を示す。ＰＥＳ８０は、複数のＰＥＳパケット８１ａ、８１ｂ等から構成されている。ＰＥＳパケット８１ａはＰＥＳヘッダ８１ａ−１およびＰＥＳペイロード８１ａ−２から構成されている。
【０１００】
ストリーム解析部１０３はＰＥＳ８０のＰＥＳヘッダ８１ａを解析して、ＰＥＳペイロード８１ａ−２内のピクチャデータの再生時刻情報（ＰＴＳ）を含むか否かを判定する。例えば、ＰＥＳヘッダ８１ａには、ＰＴＳが記述されているか否かを示すフラグのフィールドが設けられており、そのフラグの値に基づいてＰＴＳを含むか否かを判定できる。ＰＴＳを含む場合には、そのＰＴＳはＰＥＳヘッダ内に格納されている。本明細書ではＰＴＳを含むとして説明する。
【０１０１】
ＰＥＳペイロード８１ａ−２等には各ピクチャのエレメンタリレベルのビデオストリーム（ＥＳ）８２を構成するデータが格納されている。ストリーム解析部１０３は、ＰＥＳペイロード８１ａ−２等に基づいて、ＥＳ８２を生成する。図１５（ｃ）は、ビデオＥＳ８２のデータ構造を示す。ストリーム解析部１０３はビデオＥＳ８２の生成するに際し、ピクチャヘッダ８２ａおよびピクチャデータ８２ｂとの間に、ＶＰＴＳ８２ｃおよびそのＴＳに割り当てられた識別情報８２ｄを記述する。これにより、ピクチャデータと識別情報とが関連付けられる。なお、図１５（ａ）に示すビデオＴＳパケット７０ｅは、ダミーパケット７１後に存在するため、ビデオＴＳパケット７０ａ〜７０ｄとは異なるＴＳを構成している。よって、図１５（ｃ）に示すように、ビデオＴＳパケット７０ｅから得られる識別情報８２ｊの値（ｎ＋１）は、ダミーパケット前の各ＴＳパケットから得られる識別情報８２ｄ、８２ｈの値（ｎ）よりも１つインクリメントされて関連付けられている。
【０１０２】
図１５（ａ）および（ｂ）では、ＴＳパケットと、ＰＥＳパケット８１ｂのＰＥＳペイロード部分のデータとの対応を示していないが、これは記載の便宜のためである。実際には、そのデータは、ビデオＴＳパケット７０ｄとダミーパケット７１との間に存在するビデオＴＳパケット（図示せず）のＴＳペイロードに基づいて構築される。また、ビデオＴＳパケット７０ｅは、そのＴＳにおいてダミーパケット７１以降で最初のＰＥＳヘッダを含むＴＳパケットであるとしている。したがって、ダミーパケット７１とビデオＴＳパケット７０ｅとの間にはＰＥＳヘッダを含まないＴＳパケットが存在し得る。
【０１０３】
次に、図１４のステップＳ２１６以降の処理を説明する。ステップＳ２１６では、ストリーム解析部１０３は入力されたＴＳパケットがオーディオパケットか否かを判定する。オーディオパケットであればステップＳ２１７に進み、そうでなければステップＳ２１０に戻る。
【０１０４】
ステップＳ２１７では、ストリーム解析部１０３はオーディオパケットをシステムデコードし、オーディオストリームを出力する。このとき、オーディオストリーム内のフレームデータと識別情報とを関連付ける。その後ストリーム解析部１０３は、ステップＳ２１８において、オーディオストリームを第１オーディオ入力バッファ１０５または第２オーディオ入力バッファ１０６に出力する。
【０１０５】
図１６は、フレームデータと識別情報とを関連付けしたオーディオ管理テーブルを示す。オーディオ管理テーブルには、識別情報と、再生対象のオーディオフレームの再生時刻（ＡＰＴＳ）と、オーディオフレームのデータを格納したオーディオ入力バッファ１０５または１０６のアドレスとが対応付けられて記述されている。ストリーム解析部１０３は、生成したテーブルを識別情報格納部１１９に送る。識別情報格納部１１９はそのテーブルを保持する。なお、図１６の例では、第１区間が２フレーム、第２区間が３フレームのみで構成されているが、これは識別情報ｎが変化するということを説明するための例であり、一般にフレーム数はより多い場合が多い。
【０１０６】
オーディオ復号部１０８は、オーディオ入力バッファ１０５および１０６に格納されたオーディオストリームを読み出す。例えば、オーディオ復号部１０８は、識別情報格納部１１９に格納されたテーブル（図１６）を参照して、そのテーブルのエントリ単位でオーディオストリームを読み出す。その後、オーディオ復号部１０８はそのオーディオストリームに対してエレメンタリデコードを行う。その結果、圧縮符号化が解除されたオーディオフレームデータが得られる。オーディオ復号部１０８はそのオーディオフレームデータをオーディオ出力バッファ１０９に格納する。格納先のアドレスはＡＶ同期制御部１１８によって指定される。
【０１０７】
ビデオ復号部１１５は、ビデオ入力バッファ１１２および１１３に格納されたビデオストリームを読み出して、エレメンタリデコードを行う。その結果得られたピクチャデータもまた、圧縮符号化が解除されている。ビデオ復号部１１５はそのビデオピクチャデータをビデオ出力バッファ１１６に格納する。格納先のアドレスはＡＶ同期制御部１１８によって指定される。
【０１０８】
ＡＶ同期制御部１１８は、ビデオ出力バッファ１１６のどの位置（アドレス）にビデオピクチャデータを格納するかをビデオ復号部１１５に指示する。そして、格納したビデオピクチャデータを再生するための情報を収集してビデオ管理テーブルを生成する。ビデオ管理テーブルは、識別情報とＶＰＴＳと格納アドレスとを対応付けて構成されており、図１６に示すオーディオ管理テーブルにおいて“ＡＰＴＳ”を“ＶＰＴＳ”に読み替えればよい。ただし、ビデオ出力バッファ１１６のバッファ容量は、例えば３〜４フレームデータを格納する程度であるため、図１６に示すような、識別情報とＶＰＴＳと格納アドレスとの組からなるエントリを７以上も設ける必要はない。ＡＶ同期制御部１１８は、ビデオ管理テーブルを識別情報格納部１１９に格納してもよいし、自身の内部バッファ（図示せず）に保持してもよい。
【０１０９】
次に、図１７および図１８を参照しながら、ＡＶ同期制御部１１８の音声および映像の出力制御処理を説明する。以下の説明では、オーディオストリームに関連付けられた識別情報（図１６）を“ｎａ”と記述し、ビデオストリームに関連付けられた識別情報（図１５（ｃ））を“ｎｖ”と記述する。識別情報ｎａはオーディオ管理テーブル（図１６）から取得される。識別情報ｎｖはＡＶ同期制御部１１８によって生成されたビデオ管理テーブルから取得される。なお、識別情報ｎａおよびｎｖは、対応する各再生時刻情報ＡＰＴＳおよびＶＰＴＳよりも充分早く検出され、指定された再生時刻までにＡＶ同期の処理や、復号した信号を破棄するか出力するかの判定を実行できるとする。また、識別情報ｎａおよびｎｖは、ストリーム解析部１０３によって、各区間に含まれるオーディオフレームおよびビデオフレームのそれぞれの先頭フレームに必ず付与され、識別情報格納部１１９に格納されているとする。
【０１１０】
図１７は、音声および映像を出力するための、ＡＶ同期制御部１１８における前処理の手順を示す。ＡＶ同期制御部１１８は、ステップＳ３０６において、次に出力しようとするオーディオストリームの識別情報ｎａを取得し、ステップＳ３０７において、次に出力しようとするビデオストリームの識別情報ｎｖを取得する。その後の処理は図１８に示すボックス「Ａ」に進む。一方、ステップＳ３０６およびＳ３０７へ至るボックス「Ｂ」および「Ｃ」は図１８に示すボックス「Ｂ」および「Ｃ」から継続される手順である。
【０１１１】
図１８は、音声および映像を出力するための、ＡＶ同期制御部１１８における主要な処理の手順を示す。ステップＳ４０１において、ＡＶ同期制御部１１８は、これから出力しようとしているオーディオフレームが、第１区間と第２区間の境界直後であるかどうか、すなわち、第２区間の先頭のオーディオフレームであるかどうかを判定する。この判定は、オーディオストリームの識別情報ｎａと、１制御単位前のオーディオストリームの識別情報が一致するか否かを比較することによって行われる。ここで、１制御単位とは、オーディオ復号部１０８がオーディオストリームを復号する際のオーディオフレーム単位、またはＡＶ同期制御部１１８が、ＡＶ同期を行う時間間隔の単位のことであり、例えば、ビデオのフレーム単位あるいはフィールド単位と同期しているとする。
【０１１２】
これから出力しようとしているオーディオフレームが境界後の先頭フレームではない場合には、処理はステップＳ４０２に進み、境界後の先頭フレームである場合には処理はステップＳ４０６に進む。ステップＳ４０２では、ＡＶ同期制御部１１８は、これから出力しようとしているオーディオフレームの再生終了時刻が、その第１区間のビデオピクチャの再生終了時刻よりも遅い時刻まで再生するように指定されているか否かを判定する。指定されていない場合にはステップＳ４０３に進み、指定されている場合にはステップＳ４０５に進む。図１１に示す例では、オーディオフレームの再生時刻はビデオピクチャの第１区間の終了時刻よりも早いため、このようなときには処理はステップＳ４０３に進む。一方、図１０に示す例では、オーディオフレームの再生時刻はビデオピクチャの第１区間の終了時刻よりも遅いため、処理はステップＳ４０５に進む。
【０１１３】
なお、ステップＳ４０２の判定は、オーディオストリーム内に記述された再生時刻情報ＡＰＴＳの値と、ビデオストリーム内に記述された再生時刻情報ＶＰＴＳの値とを比較することによって行われる。ＡＰＴＳの値がＶＰＴＳの値よりも大きい場合には、そのＡＰＴＳの値に対応するオーディオフレームはそのＶＰＴＳの値に対応するビデオピクチャよりも遅い時刻に（すなわち後に）再生され、逆に小さい場合には、そのオーディオフレームはそのビデオピクチャよりも早い時刻に（すなわち先に）再生される。この判定手法は、以下の再生時間の比較でも同様に利用される。
【０１１４】
なおトランスポートストリームでは、システムクロックのいわゆるラップアラウンドが許可されている。ラップアラウンドとは、システムクロックがある一定値に達するとその後は０からカウントが開始されることをいう。本明細書では、上述の再生時刻情報の値の比較に際してはラップアラウンドがないとして説明する。ラップアラウンドが行われた場合には、システムクロック値は一旦０ｘ０００００００００になる。その値をはさむときは、再生時刻情報の値が大きい方が早い時刻に再生され、小さいほうが後の時刻に再生されることを意味する。
【０１１５】
ステップＳ４０３では、ＡＶ同期制御部１１８はＡＶ同期処理を行う。ＡＶ同期処理とは、第１区間の音声の再生時刻情報ＡＰＴＳと映像の再生時刻情報ＶＰＴＳとをそれぞれ再生装置の基準時計と比較し、基準時計に対して再生すべき音声および／または映像が進んでいれば、ＡＶ同期制御部１１８がオーディオ出力部１１０および／またはビデオ出力部１１７に指示を出して出力を遅延させる。逆に、遅れていればスキップ処理を指示し、出力される映像および音声の出力時刻を調整する。なお、基準時計は、ＴＳに含まれる基準時計の情報、または、ＡＰＴＳやＶＰＴＳ自身のいずれか一つを基準として計時を行ってもよい。ステップＳ４０４では、オーディオ出力部１１０は、ＡＶ同期制御部１１８の指示を受けてオーディオ出力バッファ１０９に格納されているオーディオフレームデータを出力し、また、ビデオ出力部１１７はＡＶ同期処理部１１８の指示を受けて、ビデオ出力バッファ１１６に格納されているビデオピクチャデータを出力する。これによりユーザは再生された映像および音声を視聴できる。
【０１１６】
ステップＳ４０５では、ＡＶ同期制御部１１８はオーディオフレームのデータの一部を破棄する。対象は、ビデオピクチャの第１区間の終了時刻以降の第１区間のオーディオストリームのデータである。ここで、オーディオフレームを破棄するとは、出力バッファ１０９内に格納されている第１区間のオーディオフレームを消去し、または無視することによって実現される。オーディオフレームを破棄した後は、処理はステップＳ３０６（図１７）に戻る。この期間中は映像はビデオ出力部１１７から出力される。そして、ＡＶ同期制御部１１８は、第２区間の映像および音声に関する識別情報（境界後の先頭の識別情報）に基づいて処理を改めて実行する。第２区間の再生制御は後述する。
【０１１７】
なお、上述のステップＳ４０２の判定およびその判定結果に基づく処理は、オーディオ出力バッファ１０９中のオーディオデータに対して行うとして説明したが、入力バッファ１０５および１０６に格納されているオーディオストリームに対して行ってもよい。特に、ストリームを破棄する場合には入力バッファに格納されているオーディオストリームを読み出すポインタを識別情報格納部１１９に格納されている第２区間の先頭アドレスまで移動するだけでよいので、処理が簡単になる。
【０１１８】
ステップＳ４０６では、オーディオ出力部１１０はオーディオフレームデータの出力を一旦停止する。ステップＳ４０１からステップＳ４０６への分岐は、出力しようとしているオーディオフレームデータがＴＳ７０における新たな区間（ここでは第２区間）の先頭のフレームデータであることを意味する。
【０１１９】
ステップＳ４０７では、ＡＶ同期制御部１１８は、オーディオストリームの識別情報ｎａとビデオストリームの識別情報ｎｖとが一致するか否かを比較する。一致する場合は、現在処理しているビデオストリームおよびオーディオストリームが同じＴＳに格納されていたことを意味している。一致する場合には処理はステップＳ４０８に進み、一致しない場合には処理はステップＳ４１０に進む。
【０１２０】
ステップＳ４０８では、ＡＶ同期制御部１１８は、これから出力しようとしているオーディオフレームの再生開始時刻がビデオピクチャの再生開始時刻よりも遅いか否かを判定する。遅い場合（ＶＰＴＳの値＜ＡＰＴＳの値の場合）にはステップＳ４０３に進み、早い場合（ＶＰＴＳの値＞ＡＰＴＳの値の場合）にはステップＳ４０９に進む。図１１に示す例では、第２区間においてオーディオフレームの再生開始時刻はビデオピクチャの再生開始時刻よりも早いため、このようなときには処理はステップＳ４０９に進む。
【０１２１】
ステップＳ４０９では、１フレーム分のオーディオデータが破棄される。破棄する理由は、第１区間の映像と第２区間の映像とを連続して（途切れることなく）再生するため、第２区間のビデオピクチャ再生開始前のオーディオフレームは不要だからである。ステップＳ４０９において１フレーム分のデータが破棄されると、再びステップＳ４０８に戻って判定が行われる。これにより、図１１の第２区間において、時刻Ｔｃから時刻Ｔｄまでに再生されるオーディオフレームデータが破棄される。その後、不要なオーディオデータが破棄されると、処理はステップＳ４０３に進み、ＡＶ同期処理（ステップＳ４０３）が行われた後、ビデオピクチャおよびオーディオフレームが同期して出力される（ステップＳ４０４）。
【０１２２】
次に、ステップＳ４１０では、オーディオ識別情報ｎａの値がビデオ識別情報ｎｖの値よりも大きいか否かが判定される。前提として、ステップＳ４１０の前に行われたステップＳ４０７ではオーディオ識別情報の値がビデオ識別情報の値と異なっていると判定されている。オーディオ識別情報の値がビデオ識別情報の値よりも大きい場合にはステップＳ４１１に進み、小さい場合にはステップＳ４１２に進む。
【０１２３】
例えば図１２に示すように、第２区間のビデオストリームに対応するオーディオストリームが欠落しているとき、オーディオ識別情報の値がビデオ識別情報の値よりも大きくなり得る。また、その逆に、第２区間においてビデオストリームが欠落し、オーディオストリームのみが存在するときには、ビデオ識別情報の値がオーディオ識別情報の値よりも大きくなり得る。
【０１２４】
ステップＳ４１０の判定の結果に応じて処理がステップＳ４１１に進むと、ＡＶ同期制御部１１８はオーディオフレームデータの出力を待機させ、ビデオピクチャデータのみを出力して、映像のみが再生されるように制御する。そして、ビデオ信号を１フレーム出力した後は、処理はステップＳ３０７（図１７）に戻る。
【０１２５】
なお、仮にステップＳ４１０の判定を行わないとすると、図１２に示すようなケースでは、ビデオ出力部１１７が第２区間のビデオストリーム７０３に対応するビデオピクチャを出力している期間に、オーディオ出力部は第３区間のオーディオストリーム７０４の復号およびオーディオフレームデータの出力を行ってしまう。一方、識別情報の値を利用するとこのような誤った再生を防いでいる。
【０１２６】
ステップＳ４１２では、ＡＶ同期制御部１１８は、その区間の終端までのオーディオフレームデータを破棄する。映像を連続的に再生するには、第２区間の音声を出力する必要はないからである。第２区間のオーディオフレームデータを破棄した後は、処理はステップＳ３０６（図１７）に戻る。
【０１２７】
なお、図１２の例において第２区間のビデオストリームの映像が再生されているときのその後の処理を説明すると、まず、ステップＳ４１２から戻ったステップＳ３０６では、オーディオ識別情報ｎａは第３区間のＴＳに対して割り当てられたオーディオ識別情報になる。よって、その後の処理は、ステップＳ４０１、ステップＳ４０２およびステップＳ４０５へと進む。ただし、ステップＳ４０５では、第２区間には破棄すべきオーディオデータが存在しないため、そのまま処理が行われたとして再びステップＳ３０６（図１７）に戻る。これを繰り返し、ステップＳ４０２の判定の結果、ステップＳ４０３およびステップＳ４０４に進むことにより、ステップＳ４０４において、第３区間のオーディオフレームデータおよびビデオピクチャデータが同期して出力される。
【０１２８】
なお、一般的に、図１２における第２区間と第３区間のオーディオ信号およびビデオ信号の再生時刻は独立している。すなわち、一般的には境界前後の再生時刻情報の絶対値の間には、全く相関はない。よって、再生時刻情報の絶対値の値が近似しているために第２区間の始点と第３区間の先頭の再生指定時刻が、偶然にも非常に近いとき、ステップＳ４０７およびＳ４１０の判定が存在しなければ、ＡＶ同期制御部１１８が第２区間のビデオデータと第３区間のオーディオデータを同期させて出力するよう制御するという不具合が発生する可能性がある。よって、ステップＳ４０７およびＳ４１０の判定が重要である。
【０１２９】
さらに、取得したオーディオストリームに関連付けられた識別情報が、すでに出力されてしまった映像のビデオストリームに関連付けられた識別情報と一致するときは、ＡＶ同期制御部１１８はそのオーディオストリームに基づく音声の再生を停止させてもよい。そして、現在出力の対象としているビデオストリームに関連付けられた識別情報と同じ識別情報を有するオーディオストリームに基づいて音声を出力してもよい。
【０１３０】
上記の説明では、ＡＶ同期制御部１１８が、オーディオ出力部１１０およびビデオ出力部１１７を制御するとして説明した。しかし、ＡＶ同期制御部１１８がオーディオ復号部１０８およびビデオ復号部１１５を制御するとしてもよい。そのとき、オーディオフレームデータの破棄に代えて、オーディオストリームを破棄することになる。その結果、復号を行う必要がなくなるので、再生装置の演算処理量を削減できる。ただし、出力されるオーディオフレームデータおよびビデオピクチャデータを正確に同期させるためには、オーディオ出力部１１０およびビデオ出力部１１７に対する出力前のＡＶ同期処理は必要である。なお、データの破棄は、再生時刻情報に基づいてストリーム解析部１０３が行ってもよい。
【０１３１】
また、本実施形態では、ダミーパケット挿入部１０２が識別情報を更新するとして説明した。しかし、識別情報の更新は、ストリーム解析部１０３が行ってもよい。ストリーム解析部１０３が識別情報を更新するとして再生装置１００を構成すると、ダミーパケット挿入部１０２は、“ｃｏｎｔｉｎｕｉｔｙ＿ｃｏｕｎｔｅｒ“フィールド９２に固定値を記述したダミーパケットを挿入すれば十分になる。そしてストリーム解析部１０３がダミーパケットを検出する都度、内部的に識別情報の値を更新し、オーディオおよびビデオストリームの各区間のアドレスと識別情報を関連付ければよい。
【０１３２】
また、これまでは第１区間と第２区間の間にダミーパケットを挿入するとして説明したが、ダミーパケットを第１区間の前に挿入してもよい。これにより、第１区間のオーディオストリームまたはビデオストリームが欠落している場合に、識別情報が異なるオーディオフレームとビデオピクチャが同時に再生されるという不具合を回避できる。
【０１３３】
ここで、図１９および図２０を参照しながら、ダミーパケットを第１区間の前に挿入することによって実現できる新たな処理を説明する。この処理は、第１区間終端のオーディオフレームの再生指定時刻を利用して、境界手前から境界に至るまでの音声を適切なタイミングでフェードアウトするための処理である。また、第２区間先頭の音声をフェードインすることも可能である。
【０１３４】
図１９は、音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す第１の例である。
【０１３５】
第１区間の音声が最後に再生される時刻Ｔｃが、第１区間の映像が最後に再生される時刻Ｔｄよりも早いとき、音声の再生が先に終了する。したがって、映像の再生時刻（Ｔｄ）との関係に基づいて時刻Ｔｂから音声のフェードアウトを開始すると、音声のフェードアウトが完了しないまま時刻Ｔｃにおいて音声の再生が終了してしまう。その結果、異音が発生することがある。よって、波形Ｓｂのオーディオゲインは適切ではない。
【０１３６】
そこで、第１区間の音声が最後に再生される時刻Ｔｃが、第１区間の映像が最後に再生される時刻Ｔｄよりも早いときは、音声が最後に再生される時刻Ｔｃとの関係で時刻Ｔｂよりも早い時刻Ｔａからフェードアウトを開始する。そのときのオーディオゲインは、波形Ｓａに示すように、音声の再生が終了する時刻Ｔｃにその出力ゲインも０になる。換言すれば、音声の再生が終了する時刻Ｔｃに出力ゲインを０にできる時刻（Ｔａ）から、フェードアウトを開始すればよい。時刻Ｔａを決定する際の他のパラメータは、再生時のオーディオゲインの値およびフェードさせる時間である。
【０１３７】
上述の処理を実現するために、図９（ｂ）に示すように、第１区間の前に挿入する特定の符号に、オーディオ再生終端時刻の値を格納する領域（ａｕｄｉｏ＿ｅｎｄ＿ＰＴＳ）を定義し、音声の再生終了時刻Ｔｃを再生時刻情報ＰＴＳによって記述しておく。
【０１３８】
ＡＶ同期制御部１１８は、ビデオ再生終端時刻Ｔｄよりもオーディオ再生終端時刻Ｔｃが早いか否かを判定し、早いときは、時刻Ｔｃからフェード時間だけ手前の時刻Ｔａからオーディオ出力部１１０に指示してフェードアウトを開始する。その結果、オーディオゲインの波形Ｓａは図１９に示すように減少して時刻Ｔｃにおいて０になる。これにより、第１区間の終端のフェードアウト処理による異音発生を防ぐことができる。
【０１３９】
また、境界後にオーディオ信号の再生をする際には、先に説明したように、第２区間の音声の再生開始時刻Ｔｅが映像の再生開始時刻１０ｆよりも早いときには時刻Ｔｅから時刻Ｔｆまでのオーディオストリームが破棄される。この場合、第１区間の映像と第２区間の映像とを途切れなく再生するためには、ＡＶ同期制御部１１８は映像の再生開始時刻Ｔｆから音声のフェードインを開始すればよい。
【０１４０】
図２０は、音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す第２の例である。音声の再生終端時刻Ｔｄが映像の再生終端時刻Ｔｃよりも遅い場合には、上述のとおり、映像の再生終端時刻Ｔｃ後、時刻Ｔｄまでの音声は再生されない。したがって、第１区間の音声のフェードアウトを音声の再生終端時刻（Ｔｄ）との関係に基づいて開始すると、映像の再生終端時刻Ｔｃまでにフェードアウトが完了せず、境界で異音が発生する場合がある。よって、波形Ｓｂのオーディオゲインは適切ではない。
【０１４１】
そこで、図９（ｂ）に示すように、ダミーパケットにビデオ／オーディオ再生終端時刻を格納する領域をそれぞれ設ける。ＡＶ同期制御部１１８は、それらの領域からビデオ再生先頭時刻Ｔｃとオーディオ再生終端時刻Ｔｄの情報を読み出し、オーディオ再生終端時刻Ｔｄの方が遅い場合には、映像の再生終端時刻Ｔｃを基準としてフェード時間だけ早い時刻Ｔａからフェードアウトを開始する。これにより、境界前において映像の再生終了とともにフェードアウトが完了し、異音を発生することなく第２区間に映像および音声を切り替えることができる。
【０１４２】
また、境界後の第２区間の音声の再生を開始する場合、区間の先頭で音声をフェードインすると、一般にはユーザは聴きやすくなる。ここで、境界後のオーディオの再生開始時刻Ｔｆがビデオの再生開始時刻Ｔｅよりも遅いときには、波形Ｓｃのオーディオゲインで音声が出力されるよりも前からゲインを上げてフェードイン処理を開始すると、実際に音声の再生先頭時刻Ｔｆにおいて突然振幅の大きい信号が出力されることになる。すると、出力機器であるスピーカを破損する危険がある。このような事例は、例えば、ＡＶ同期制御部１１８がオーディオ復号部１０８によるオーディオストリームの復号を時刻Ｔｆまで待機させ、かつ、オーディオゲインの調整をオーディオ出力部１１０で行うように構成された再生装置１００で起こる可能性がある。
【０１４３】
そこで、図９（ｂ）に示すように、ダミーパケットにビデオ／オーディオ再生先頭時刻を格納する領域をそれぞれ設ける。ＡＶ同期制御部１１８は、それらの領域からオーディオ再生先頭時刻Ｔｆとビデオ再生先頭時刻Ｔｅの情報を読み出し、オーディオ再生先頭時刻Ｔｆが大きい場合にはオーディオ信号のフェードインを時刻Ｔｆから開始するようにすればよい。
【０１４４】
以上のように、システムストリームの先頭に挿入するダミーパケットに、オーディオおよびビデオの再生先端時刻および再生終端時刻をそれぞれ格納することにより、境界近傍における異音を発生することなく、フェードインおよびフェードアウトを行うことが可能となる。
【０１４５】
以上、本発明のデータ処理装置の実施形態である、再生装置１００の構成および動作を説明した。なお、図７において、ストリーム読み出し部１０１はスイッチとして表わされているが、これは機械的あるいは電気的なスイッチに限るものではない。ストリーム読み出し部１０１は、記録媒体の任意のアドレスを指定してＴＳを読み出すことができればよい。
【０１４６】
なお、再生装置１００の各入力バッファ１０５、１０６、１１２および１１３の構成は従来例と同様の構成で示しているが、第１のオーディオ入力バッファ１０５と第２のオーディオ入力バッファ１０６とは一つのバッファであってもよい。同様に、第１および第２のビデオ入力バッファ１１２、１１３も一つのバッファであってもよい。その場合、第１区間のＴＳから抽出されたオーディオストリームに続けて第２区間のＴＳから抽出されたオーディオストリームを格納し、上で説明したように、例えば図１６に示すようなテーブルによって、各区間のオーディオストリームを格納したアドレスとストリーム解析部１０３によって各区間のオーディオストリームに割り当てられた識別情報ｎと再生指定時刻とを読み出すことができればよい。
【０１４７】
なお、上記の説明では、ダミーパケット７１はＴＳパケットのひとつとして説明したが、これに限るものではない。ストリーム解析部１０３がオーディオデータおよびビデオデータと識別可能なデータであればよい。また光ディスク１２０に代えて、ハードディスク（図示せず）を利用することもできる。光ディスク１２０には必ず複数のＴＳが記録されていなくてもよく、例えば１つのＴＳの異なる区間を、それぞれ別個のＴＳとして捉え、上述の処理を適用することもできる。
【産業上の利用可能性】
【０１４８】
本発明によれば、複数のデータストリームを連続的に再生する際に、音声と映像とをずれることなく同期して再生することができるデータ処理装置が提供される。
【図面の簡単な説明】
【０１４９】
【図１】（ａ）〜（ｄ）は、データストリーム１０のデータ構造を示す図である。
【図２】図１（ａ）に示すデータストリーム１０を再生することが可能な従来の再生装置１２０の機能ブロックの構成を示す図である。
【図３】（ａ）は、第１区間と第２区間との間に挿入されたダミーパケット１３０４を示す図であり、（ｂ）は、第１区間のオーディオおよびビデオストリーム１３０５および１３０６、第２区間のオーディオおよびビデオストリーム１３０７および１３０８の各再生時刻の関係を示す図である。
【図４】（ａ）は、２つの境界によって３つの区間が規定されたデータストリーム１４０１を示す図であり、（ｂ）は、第１区間のオーディオおよびビデオストリーム１４０５および１４０６、第２区間のビデオストリーム１４０７、および、第３区間のオーディオおよびビデオストリーム１４０８および１４０９の各再生時刻の関係を示す図である。
【図５】トランスポートストリーム２０のデータ構造を示す図である。
【図６】（ａ）はビデオＴＳパケット３０のデータ構造を示す図であり、（ｂ）は、オーディオＴＳパケット３１のデータ構造を示す図である。
【図７】本実施形態による再生装置１００の機能ブロックの構成を示す図である。
【図８】（ａ）〜（ｃ）は、それぞれ読み出されたＴＳ１〜ＴＳ３を示す図であり、（ｄ）は、ダミーパケットが挿入されたＴＳ７０を示す図である。
【図９】（ａ）は、ダミーパケット７１のデータ構造を示す図であり、（ｂ）は、ダミーパケット７１の具体的なデータ構造を示す図である。
【図１０】第１の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す図である。
【図１１】第２の例による、境界近傍におけるオーディオストリームおよびビデオストリームの再生時刻の関係を示す図である。
【図１２】第３の例による、オーディオストリームおよびビデオストリームの再生時刻の関係を示す図である。
【図１３】複数のＴＳを連続して読み出す際の処理の手順を示す図である。
【図１４】ストリーム解析部１０３の処理の手順を示す図である。
【図１５】（ａ）は、ストリーム解析部１０３に入力されたＴＳ７０を示す図であり、（ｂ）はＰＥＳ８０のデータ構造を示す図であり、（ｃ）は、ビデオＥＳ８２のデータ構造を示す図である。
【図１６】フレームデータと識別情報とを関連付けしたオーディオ管理テーブルを示す図である。
【図１７】音声および映像を出力するための、ＡＶ同期制御部１１８における前処理の手順を示す図である。
【図１８】音声および映像を出力するための、ＡＶ同期制御部１１８における主要な処理の手順を示す図である。
【図１９】音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す図である。
【図２０】音声を区間終端においてフェードアウト再生し、区間始端においてフェードイン再生するための、ゲインとオーディオストリームとの関係を示す図である。
【国際調査報告】
2005002221.tif 000023
2005002221.tif 000024
2005002221.tif 000025
2005002221.tif 000026
2005002221.tif 000027