(57)【要約】【課題】符号化ストリームの複数の区間を連続再生する際に、音声と映像とを同期して再生する技術を提供する。【解決手段】  本発明による再生装置は、音声および映像の符号化ストリームの各々を取得し、区間の境界近傍の位置を音声符号化ストリームと映像符号化ストリームについての境界位置として検出する手段と、区間境界と境界位置との差分を算出する手段と、差分情報に基づいて境界位置と区間境界の間に出力するべきデータ量を算出する手段と、音声・映像の符号化ストリームについて、区間境界または区間境界とデータ量を含む位置とを検出し、識別可能な特定の符号を挿入する手段と、挿入された符号を検出し、区間境界の連続再生に必要なストリームを入力バッファに格納する手段と、バッファされたストリームを復号し、出力する手段と、算出したデータ量に基づいて、区間境界と出力データの同期を制御する手段とを有する。【選択図】図１
2006157822.tif 000002
【特許請求の範囲】
【請求項１】
音声符号化ストリームおよび映像符号化ストリームが多重化された多重化ストリームから、映像および音声を出力する再生装置であって、
少なくとも１つの多重化ストリームの複数の区間を連続して再生する場合において、
前記少なくとも１つの多重化ストリームから、音声符号化ストリームと映像符号化ストリームを抽出し、区間境界近傍の位置を、前記音声符号化ストリームと前記映像符号化ストリームについての境界位置として検出する境界検出手段と、
前記区間境界と前記境界位置との差分を算出する差分算出手段と、
前記差分算出手段で算出した差分情報に基づいて、前記境界位置と前記区間境界の間に出力するべきデータ量を算出するデータ量算出手段と、
前記音声符号化ストリームと前記映像符号化ストリームについて、前記区間境界、または、前記区間境界と前記データ量を含む位置とを検出し、識別可能な特定の符号を挿入する特定符号挿入手段と、
前記特定符号挿入手段により挿入された符号を検出し、前記区間境界を連続して再生するために必要なストリームを入力バッファに格納するストリーム解析手段と、
前記入力バッファに格納されたストリームを復号する復号手段と、
前記復号されたデータを出力する出力手段と、
前記データ量算出手段で算出したデータ量に基づいて、前記区間境界と出力データの同期を制御する同期制御手段を備えた再生装置。
【請求項２】
前記声符号化ストリームおよび前記映像符号化ストリームの各々に関し、
前記境界検出手段は、前記区間境界が再生区間の終了位置であるとき、または、前記区間境界が再生区間の開始位置であるときには、前記終了位置または前記開始位置のデータの再生時刻を超えない時刻であって、かつ、前記再生時刻に最も近い時刻として前記声符号化ストリームおよび前記映像符号化ストリームから特定可能な時刻のデータ位置を検出する、請求項１に記載の再生装置。
【請求項３】
前記ストリーム解析手段は、前記特定符号挿入手段により挿入された特定符号を解析し、
前記終了位置を特定するための前記特定符号を検出したときには、前記特定符号以前のストリームを継続して入力バッファに格納して、前記特定符号以降のストリームを破棄し、
前記開始位置を特定するための前記特定符号を検出したときには、前記特定符号以前のストリームを破棄して、前記特定符号以降のストリームを入力バッファに格納する、請求項１に記載の再生装置。
【請求項４】
前記ストリーム解析手段によって前記終了位置を特定するための前記特定符号が検出されたときには、
前記同期制御手段は、前記境界位置まで、および、前記境界位置から前記データ量算出手段により算出したデータ量が得られるまで、前記復号手段に復号処理の実行を指示して、復号された前記終了位置までのデータを出力バッファに格納させ、前記終了位置以降のデータの復号処理の停止を指示する、請求項１に記載の再生装置。
【請求項５】
前記ストリーム解析手段によって前記終了位置を特定するための前記特定符号が検出されたときには、
前記同期制御手段は、前記境界位置まで、および、前記境界位置から前記データ量算出手段により算出したデータ量を含むデータ量が得られるまで、前記復号手段に復号処理の実行を指示して、復号された前記終了位置を含む範囲のデータを出力バッファに格納させ、前記出力手段に前記終了位置までのデータを出力するよう指示する、請求項１に記載の再生装置。
【請求項６】
前記ストリーム解析手段によって前記開始位置を特定するための前記特定符号が検出されたときには、
前記同期制御手段は、前記境界位置から前記データ量算出手段により算出したデータ量に達した時点から復号処理の実行を指示して、復号されたデータを出力バッファに格納させる、請求項１に記載の再生装置。
【請求項７】
前記ストリーム解析手段によって前記開始位置を特定するための前記特定符号が検出されたときには、
前記同期制御手段は、前記出力手段に対し、前記開始位置までのデータの出力の停止を指示し、前記開始位置からのデータの出力を指示する、請求項１に記載の再生装置。
【請求項８】
前記復号処理手段が復号処理を行う復号単位が予め定められており、
前記データ量算出手段は、前記復号単位の数に基づいて前記データ量を算出する、請求項１に記載の再生装置。
【請求項９】
前記複数の区間は、単一の多重化ストリーム内に規定される、請求項１に記載の再生装置。
【請求項１０】
前記少なくとも１つの多重化ストリームは複数存在しており、
前記複数の区間は、各多重化ストリームの一部の区間または全部の区間の集合として規定される、請求項１に記載の再生装置。
【請求項１１】
音声符号化ストリームおよび映像符号化ストリームが多重化された多重化ストリームから、映像および音声を出力する再生方法であって、
少なくとも１つの多重化ストリームの複数の区間を連続して再生する場合において、
前記少なくとも１つの多重化ストリームから、音声符号化ストリームと映像符号化ストリームを抽出し、区間境界近傍の位置を、前記音声符号化ストリームと前記映像符号化ストリームについての境界位置として検出するステップと、
前記区間境界と前記境界位置との差分を算出するステップと、
算出した差分情報に基づいて、前記境界位置と前記区間境界の間に出力するべきデータ量を算出するステップと、
前記音声符号化ストリームと前記映像符号化ストリームについて、前記区間境界、または、前記区間境界と前記データ量を含む位置とを検出し、識別可能な特定の符号を挿入するステップと、
挿入された符号を検出し、前記区間境界を連続して再生するために必要なストリームを入力バッファに格納するステップと、
前記入力バッファに格納されたストリームを復号するステップと、
前記復号されたデータを出力するステップと、
算出されたデータ量に基づいて、前記区間境界と出力データの同期を制御するステップと
を包含する再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声および映像の符号化ストリームを復号し再生する再生装置であって、特に、複数の符号化ストリームを連続して再生する場合に、音声と映像を時間的に同期して再生することを特長とする再生装置および再生方法に関する。
【背景技術】
【０００２】
近年、音声および映像の符号化ストリームを復号する再生装置や、プログラムとして実装された再生方法が普及している。符号化ストリームの多くは、ＭＰＥＧ規格（例えば、ＩＳＯ１１１７２、または、ＩＳＯ１３８１８）のように、音声はオーディオ符号化ストリームとして、また、映像はビデオ符号化ストリームとしてそれぞれ圧縮符号化され、その後多重化されて、一つの多重化ストリームとして生成される。このような処理をシステムエンコードという。システムエンコードされた多重化ストリームはシステムストリームとも呼ばれる。
【０００３】
いま、システムストリームの第１再生区間と第２再生区間を続けて再生する処理を考える。第１再生区間と第２再生区間は同一のシステムストリーム上にあっても良いし、異なるシステムストリーム上にあっても良い。再生装置には、まず、第１再生区間のシステムストリームが入力され、第１再生区間のオーディオ符号化ストリームとビデオ符号化ストリームがそれぞれ復号され、続いて第２再生区間のシステムストリームが入力され、第２再生区間のオーディオ符号化ストリームとビデオ符号化ストリームがそれぞれ復号される。
【０００４】
ここで、第１再生区間の終点をＯＵＴ点、第２再生区間の始点をＩＮ点と呼び、ＯＵＴ点とＩＮ点の間の区間を境界と呼ぶことにする。ＯＵＴ点、ＩＮ点はシステムストリーム上の任意の点である。
【０００５】
一般的に、システムストリームは、それを構成するオーディオ符号化ストリームとビデオ符号化ストリームがそれぞれパケット化され、時間的に切り替えられながら接続されている。そこで、ＯＵＴ点やＩＮ点を任意に指定して、システムストリームからオーディオ符号化ストリームとビデオ符号化ストリームを抽出してそれぞれ並べると、オーディオ符号化ストリームとビデオ符号化ストリームの終点、あるいは、始点は一致することなくずれる。より具体的には、同時刻に再生されるべき音声および映像がシステムストリームにおいて直列に配置されているため、システムストリームを任意の点で切断すると、同時刻に再生すべき音声および映像の一方しか存在しない場合がある。このようなシステムストリームを復号すると、ＯＵＴ点近傍において、ビデオ信号は全て再生されたにもかかわらずオーディオ信号は再生されていない部分が残る。また、ＩＮ点においてビデオ信号があるにもかかわらず、オーディオ信号が欠落することもある。これらの逆のケースも同様に生じうる。
【０００６】
ビデオ信号およびオーディオ信号の各再生終了時刻が一致しないことにより、音声と映像の各復号処理に関し、第１再生区間から第２再生区間へ境界をまたぐタイミングがずれて、本来同時に再生されるべきではない音声と映像が同時に再生されてしまうという不具合がおこることがあった。つまり、第１再生区間の音声と第２再生区間の映像が同時に再生されることや、第１再生区間の映像と第２再生区間の音声が同時に再生されることがあった。
【０００７】
以下に図２および３を参照しながらより詳しく説明する。図２は、従来の再生装置の構成を示す。
【０００８】
音声および映像が多重化されたシステムストリームは、ストリーム読み出し手段２０１によって読み出される。ストリーム読み出し手段２０１は、まず、第１再生区間のシステムストリームを読み出し、その後、第２再生区間のシステムストリームを読み出す。これらは順に特定符号挿入手段２０２に送られる。第１再生区間のストリームの終点と、第２再生区間のシステムストリームの始点の間を境界と呼ぶ。特定符号挿入手段２０２は、前記境界に、特定の符号を挿入する。図３上段は、特定の符号が挿入されたシステムストリームを示す。第１再生区間のシステムストリーム３０２と、特定の符号３０４と、第２再生区間のシステムストリーム３０３は、連続してストリーム分離手段２０３に送られる。
【０００９】
ストリーム分離手段２０３は、まず、第１再生区間のシステムストリーム３０２が入力されると、それに含まれるオーディオ符号化パケット１Ａおよびビデオ符号化パケット１ａ、１ｂ、１ｃを分離し、それぞれ第１のオーディオ入力バッファ２０５および第１のビデオ入力バッファ２１２に格納する。次に、ストリーム分離手段２０３は、特定の符号３０４を検出すると第１のスイッチ２０４を切り替えて、ストリーム分離手段２０３と第２のオーディオ入力バッファ２０６を接続し、また第２のスイッチ２１１を切り替えて、ストリーム分離手段２０３と第２のビデオ入力バッファ２１３を接続する。次に、第２再生区間のシステムストリーム３０３は、第1再生区間と同様に、分離されて、第２のオーディオ入力バッファ２０６および第２のビデオ入力バッファ２１３にそれぞれ格納される。
【００１０】
次に、オーディオ復号手段２０８は、第３のスイッチ２０６を介して第１のオーディオ入力バッファ２０５からオーディオ符号化パケット１Ａなどで構成されるオーディオ符号化ストリーム３０５を読み出して復号し、復号されたオーディオ信号をオーディオ出力バッファ２０９に送る。オーディオ出力手段２１０は、オーディオ出力バッファ２０９からオーディオ信号を読み出し、出力する。一方、ビデオ復号手段２１５は、第４のスイッチ２１４を介して第１のビデオ入力バッファ２１２からビデオ符号化パケット１ａ、１ｂ、１ｃなどで構成されるビデオ符号化ストリーム３０６を読み出して復号し、復号されたビデオ信号をビデオ出力バッファ２１６に送る。ビデオ出力手段２１７は、ビデオ出力バッファ２１６からビデオ信号を読み出し、出力する。
【００１１】
オーディオ復号手段２０８およびビデオ復号手段２１５は、ＡＶ同期制御手段２１８により、復号の開始や停止を制御される。また、オーディオ出力手段２１０およびビデオ出力手段２１７も、ＡＶ同期制御手段により、出力の開始や停止を制御される。
【００１２】
また、第３のスイッチ２０６は、第１再生区間のオーディオ符号化ストリーム３０５を構成するオーディオパケットのうち復号が必要なパケットの処理が完了すると、第２のオーディオ入力バッファ２０６とオーディオ復号手段２０８が接続されるように切り替わり、オーディオ復号手段２０８は、境界後のオーディオ符号化ストリーム３０７を復号する。同様に、第４のスイッチ２１４は、第１再生区間のビデオ符号化ストリーム３０６を構成するビデオパケットのうち復号が必要なパケットの処理が完了すると、第２のビデオ入力バッファ２１３とビデオ復号手段２１５が接続されるように切り替わり、ビデオ復号手段２１５は、境界後のビデオ符号化ストリーム３０８を復号する。
【００１３】
ここで図３を参照しながら、システムストリーム３０１をさらに詳しく説明する。図３下段に示すように、ストリーム３０１は、第１再生区間のシステムストリーム３０２から抽出されたオーディオ符号化ストリーム３０５とビデオ符号化ストリーム３０６、第２再生区間のシステムストリーム３０３から抽出されたオーディオ符号化ストリーム３０７とビデオ符号化ストリーム３０８を含む。横軸は時刻を表している。ＭＰＥＧ規格においては、システムストリーム３０１を構成するオーディオ符号化ストリーム３０５、３０７およびビデオ符号化ストリーム３０６、３０８にそれぞれ再生指定時刻が逐次格納されている。
【００１４】
時刻３Ａは第1再生区間のシステムストリーム３０２に含まれるオーディオ符号化ストリーム３０５の再生終了時刻であり、また、時刻３Ｂは、ビデオ符号化ストリーム３０６の再生終了時刻である。また、時刻３Ｃは第２再生区間のシステムストリーム３０３に含まれるオーディオ符号化ストリーム３０７の再生開始時刻であり、時刻３Ｄは第２の区間のビデオ符号化ストリーム３０８の再生開始時刻である。システムストリーム３０１が、例えば、ＭＰＥＧ規格で定義されているトランスポートストリーム（以下、ＴＳ）である場合、前述したように、一般的に、オーディオ符号化ストリームとビデオ符号化ストリームの境界のそれぞれの再生指定時刻は一致しない。つまり時刻３Ａから時刻３Ｂまでの区間は、復号後、ビデオ信号と同時に再生すべきオーディオ信号の元となるオーディオ符号化パケットが欠落している。一方、時刻３Ｃから時刻３Ｄまでの区間は、復号後、オーディオ信号と同時に再生すべきビデオ信号の元となるビデオ符号化パケットが欠落している。
【００１５】
以下、映像が連続的に再生されるように図３に示すシステムストリーム３０１を処理するとして説明する。
【００１６】
まず、境界前すなわち第１再生区間において、オーディオ符号化ストリーム３０５およびビデオ符号化ストリーム３０６は、第１のオーディオ入力バッファ２０５および第１のビデオ入力バッファ２１２にそれぞれ格納される。また、境界後の第２再生区間において、オーディオ符号化ストリーム３０７およびビデオ符号化ストリーム３０８は、第２のオーディオ入力バッファ２０６および第２のビデオ入力バッファ２１３にそれぞれ格納される。
【００１７】
ここで、再生装置は、第１のＴＳを解析しながら復号および出力をしており、境界を復号する前にシステムストリーム３０１における第１再生区間の再生終了時刻があらかじめ分かっているとする。再生装置は、境界近傍で、ストリーム読み出し手段２０１によるシステムストリーム３０１を読み出す処理、および、ストリーム分離手段２０３によってオーディオ符号化ストリーム３０５とビデオ符号化ストリーム３０６を抽出して第１のオーディオ入力バッファ２０５および第１のビデオ入力バッファ２１２にそれぞれ格納する処理を、境界近傍以外を処理している場合に比べて高速に行う。境界近傍というのは、例えば、第１再生区間の再生終了時刻の１秒前である。次に、前述したように第１のスイッチ２０４および第２のスイッチ２１２を適宜切り替え、境界後のオーディオ符号化ストリーム３０７およびビデオ符号化ストリーム３０８を、第２のオーディオ入力バッファ２０６および第２のビデオ入力バッファ２１３にそれぞれ格納する。この境界近傍の第２再生区間のシステムストリーム３０３の処理も、高速に行う。
【００１８】
図３のように、境界前の時刻３Ａから３Ｂの区間では、オーディオ符号化ストリーム３０５が欠落しているので、オーディオ復号手段２０８は第１の区間のオーディオ信号を復号完了後、一旦復号を停止する。次に、オーディオ復号手段２０８には第２のオーディオ入力バッファ２０６から第２の区間のオーディオ符号化ストリーム３０７が入力されてくる。第２の区間の時刻３Ｃから３Ｄの間では、ビデオ符号化ストリーム３０８が欠落している。
【００１９】
そこで、まず、境界前後にわたるビデオ信号を連続的に再生する場合、ビデオ信号が欠落している区間のオーディオ信号を再生すべき時間はないので、時刻３Ｃから時刻３Ｄの間のオーディオ符号化ストリームを復号せずに破棄する。破棄の処理は、実際には例えば、オーディオ復号手段２０８が第２の入力バッファ２０６上の読み出しアドレスを時刻３Ｃから時刻３Ｄに相当するアドレスに移動することによって行われる。この破棄の処理は、オーディオ符号化ストリームを復号する処理に比べて、非常に短い時間で完了するので、オーディオ復号手段２０８は、時刻３Ｄ以降のオーディオ符号化ストリームを復号開始する指示がＡＶ同期制御手段２１８から来るのを待つ。一方、オーディオ復号手段２０８がＤ点以降の復号開始指示の待機状態に入るまでの間、ビデオ復号手段２１５は、まず、第１再生区間の時刻３Ｂまでの復号およびビデオ信号の出力を行う。
【００２０】
境界近傍においては、境界近傍以外の区間よりも高速に第１および第２のビデオ入力バッファにビデオ符号化ストリームが格納されるので、時刻３Ｂまでのビデオ符号化ストリームの復号処理が完了した時点で、第２のビデオ入力バッファには、既に境界後の時刻３Ｄ以降のビデオ符号化ストリームが格納されている。よって、ビデオ復号手段２１５は、時刻３Ｂまでのビデオ符号化ストリームの復号に続けて時刻３Ｄ以降の復号を行い、時刻３Ｂのビデオ信号と時刻３Ｄのビデオ信号は連続して出力される。ここで、時刻３Ｄのビデオ信号の復号を開始する際に、ＡＶ同期制御手段２１８は、待機させていたオーディオ復号手段２０８を起動し、時刻Ｄ以降のオーディオ符号化ストリーム３０７の復号を開始する。
【００２１】
これにより、境界においてビデオ信号を連続的に再生し、かつ、オーディオ信号とビデオ信号を同期させて出力することが可能となる。
【００２２】
しかし、このとき、ビデオ信号は連続的に再生可能であるが、オーディオ信号はビデオ信号に同期させただけで、オーディオ符号化ストリームは欠落しているため、連続的に再生できない。つまり、３Ａから３Ｂまでの区間は確実に無音区間となる課題が残る。
【００２３】
特許文献１に記載されている装置では、前記の無音区間を若干短縮することが可能である。図４は、分離手段に入力されるストリーム、およびバッファに格納される符号化ストリームを示す。特許文献１の再生装置は、オーディオ符号化ストリーム４０５、４０７に付随する再生指定時刻とビデオ符号化ストリーム４０６、４０８の終点と始点の再生指定時刻とを比較しながら第１、第２の入力バッファを切り替えてストリームを格納する。
【００２４】
よって、時刻４Ａから時刻４ＡＡまでの区間はビデオ符号化ストリーム４０６の再生指定時刻を超えない最大の再生時刻までのオーディオ符号化ストリームが第１のオーディオ入力バッファに格納さる。また、時刻４Ｃから４ＣＣまでの区間のオーディオ符号化ストリームを第２のオーディオ入力バッファに格納せずに破棄する。例えば、ＭＰＥＧ２システム規格では、通常、オーディオ符号化ストリーム４０５、４０７を構成するオーディオフレーム、および、ビデオ符号化ストリーム４０６、４０８を構成するビデオフレームそれぞれを再生すべき再生指定時刻が、それぞれオーディオおよびビデオ符号化ストリームに書き込まれている。ここで、オーディオフレームおよびビデオフレームとは、オーディオおよびビデオ符号化ストリームを構成するものであり、これらフレームを伝送するためにパケット単位に分解したのが、図４で示すオーディオパケットおよびビデオパケットである。これにより、ビデオ信号を連続的に再生し、かつ、オーディオ信号を同期させて再生する場合において、境界前後で発生する無音区間を低減することが可能となる。
【特許文献１】特開２００２−２８１４５８号公報
【特許文献２】特開平１０−２６２２１１号公報
【発明の開示】
【発明が解決しようとする課題】
【００２５】
しかし、従来の再生装置では以下のような課題が依然として残される。
【００２６】
すなわち、多重化された符号化ストリームの複数の区間を再生する場合、再生区間の終点、始点を現すＯＵＴ点、ＩＮ点は、システムストリームに付随する再生指定時刻で示される。ＭＰＥＧ２システム規格では、ビデオフレームの再生指定時刻を表す値としてＶＰＴＳ、オーディオフレームの再生指定時刻を表す値としてＡＰＴＳがある。通常、ＰＴＳはフレーム毎に同期して付加されているが、オーディオフレームをＴＳパケットから復元した場合に、同じＡＰＴＳを参照してしまう場合がある。つまり、本来の再生時刻より１フレーム早い、1フレーム前のＡＰＴＳを参照する場合がある。このとき、従来の、ＰＴＳの値でストリームの分離や、バッファへの格納、また、復号や出力を制御する装置では、本来は出力されるべきであった信号を含むストリームが破棄されるため、境界近傍で生じる無音区間を拡大してしまう。
【００２７】
図５の（ａ）は、第２オーディオ入力バッファに格納されたオーディオ符号化ストリームと、第２ビデオ入力バッファに格納されたビデオ符号化ストリームとを示す。これらは、フレームに同期してＰＴＳが付加されているストリームを、従来の再生装置のストリーム分離手段によって分離した結果得られる。ＡＰＴＳ、ＶＰＴＳの大小関係は、ＡＰＴＳ１＜ＶＰＴＳ１＜ＡＰＴＳ２である。ＶＰＴＳ１がＩＮ点として指定されているものとする。図５の（ａ）の場合、ＡＰＴＳ１とＶＰＴＳ１との大小関係をストリーム分離手段が識別することが可能であり、ＶＰＴＳ１の再生時間を含むオーディオ信号を復号し、出力することが可能である。このとき、オーディオ信号はビデオ信号に無音区間を生じない状態で同期している。
【００２８】
一方、図５の（ｂ）もまた、第２オーディオ入力バッファに格納されたオーディオ符号化ストリーム、および、第２ビデオ入力バッファに格納されたビデオ符号化ストリームを示している。これらは、ＡＰＴＳ４＝ＡＰＴＳ５であるストリームを従来の再生装置のストリーム分離手段によって分離した結果得られる。ＡＰＴＳとＶＰＴＳの大小関係は、ＡＰＴＳ４＝ＡＰＴＳ５＜ＶＰＴＳ１＜ＡＰＴＳ６である。ＶＰＴＳ１がＩＮ点として指定されているものとする。従来の再生装置は（ＶＰＴＳ１−１オーディオフレーム分の再生時間）を用いてＡＰＴＳの大小関係を比較し、ストリームを分離する。図５の（ｂ）の例では、ＡＰＴＳ４＝ＡＰＴＳ５、すなわち、ＡＰＴＳ５は（ＶＰＴＳ１−１オーディオフレーム分の再生時間）よりも小さい値なので、ＡＰＴＳ５を参照するオーディオフレームは破棄される。よって、第２オーディオ入力バッファには、時刻５ＦＦからのオーディオ符号化ストリームのみ格納され、時刻５Ｄから時刻５ＦＦまでは無音区間となってしまう。
【００２９】
本発明の目的は、複数の符号化ストリームまたは１つの符号化ストリームの複数の区間を連続的に再生する際に、音声と映像とを同期して再生することである。音声と映像を同期して再生する際に音声の無音区間が生じる際には、その無音区間を最小にすることである。
【課題を解決するための手段】
【００３０】
本発明による再生装置は、音声符号化ストリームおよび映像符号化ストリームが多重化された多重化ストリームから、映像および音声を出力する。少なくとも１つの多重化ストリームの複数の区間を連続して再生する場合において、前記再生装置は、前記少なくとも１つの多重化ストリームから、音声符号化ストリームと映像符号化ストリームを抽出し、区間境界近傍の位置を、前記音声符号化ストリームと前記映像符号化ストリームについての境界位置として検出する境界検出手段と、前記区間境界と前記境界位置との差分を算出する差分算出手段と、前記差分算出手段で算出した差分情報に基づいて、前記境界位置と前記区間境界の間に出力するべきデータ量を算出するデータ量算出手段と、前記音声符号化ストリームと前記映像符号化ストリームについて、前記区間境界、または、前記区間境界と前記データ量を含む位置とを検出し、識別可能な特定の符号を挿入する特定符号挿入手段と、前記特定符号挿入手段により挿入された符号を検出し、前記区間境界を連続して再生するために必要なストリームを入力バッファに格納するストリーム解析手段と、前記入力バッファに格納されたストリームを復号する復号手段と、前記復号されたデータを出力する出力手段と、前記データ量算出手段で算出したデータ量に基づいて、前記区間境界と出力データの同期を制御する同期制御手段を備えている。
【００３１】
前記声符号化ストリームおよび前記映像符号化ストリームの各々に関し、前記境界検出手段は、前記区間境界が再生区間の終了位置であるとき、または、前記区間境界が再生区間の開始位置であるときには、前記終了位置または前記開始位置のデータの再生時刻を超えない時刻であって、かつ、前記再生時刻に最も近い時刻として前記声符号化ストリームおよび前記映像符号化ストリームから特定可能な時刻のデータ位置を検出してもよい。
【００３２】
前記ストリーム解析手段は、前記特定符号挿入手段により挿入された特定符号を解析し、前記終了位置を特定するための前記特定符号を検出したときには、前記特定符号以前のストリームを継続して入力バッファに格納して、前記特定符号以降のストリームを破棄し、前記開始位置を特定するための前記特定符号を検出したときには、前記特定符号以前のストリームを破棄して、前記特定符号以降のストリームを入力バッファに格納してもよい。
【００３３】
前記ストリーム解析手段によって前記終了位置を特定するための前記特定符号が検出されたときには、前記同期制御手段は、前記境界位置まで、および、前記境界位置から前記データ量算出手段により算出したデータ量が得られるまで、前記復号手段に復号処理の実行を指示して、復号された前記終了位置までのデータを出力バッファに格納させ、前記終了位置以降のデータの復号処理の停止を指示してもよい。
【００３４】
前記ストリーム解析手段によって前記終了位置を特定するための前記特定符号が検出されたときには、前記同期制御手段は、前記境界位置まで、および、前記境界位置から前記データ量算出手段により算出したデータ量を含むデータ量が得られるまで、前記復号手段に復号処理の実行を指示して、復号された前記終了位置を含む範囲のデータを出力バッファに格納させ、前記出力手段に前記終了位置までのデータを出力するよう指示してもよい。
【００３５】
前記ストリーム解析手段によって前記開始位置を特定するための前記特定符号が検出されたときには、前記同期制御手段は、前記境界位置から前記データ量算出手段により算出したデータ量に達した時点から復号処理の実行を指示して、復号されたデータを出力バッファに格納させてもよい。
【００３６】
前記ストリーム解析手段によって前記開始位置を特定するための前記特定符号が検出されたときには、前記同期制御手段は、前記出力手段に対し、前記開始位置までのデータの出力の停止を指示し、前記開始位置からのデータの出力を指示してもよい。
【００３７】
前記復号処理手段が復号処理を行う復号単位が予め定められており、前記データ量算出手段は、前記復号単位の数に基づいて前記データ量を算出してもよい。
【００３８】
前記複数の区間は、単一の多重化ストリーム内に規定されてもよい。
【００３９】
前記少なくとも１つの多重化ストリームは複数存在しており、前記複数の区間は、各多重化ストリームの一部の区間または全部の区間の集合として規定されてもよい。
【００４０】
本発明による再生方法は、音声符号化ストリームおよび映像符号化ストリームが多重化された多重化ストリームから、映像および音声を出力する。少なくとも１つの多重化ストリームの複数の区間を連続して再生する場合において、前記再生方法は、前記少なくとも１つの多重化ストリームから、音声符号化ストリームと映像符号化ストリームを抽出し、区間境界近傍の位置を、前記音声符号化ストリームと前記映像符号化ストリームについての境界位置として検出するステップと、前記区間境界と前記境界位置との差分を算出するステップと、算出した差分情報に基づいて、前記境界位置と前記区間境界の間に出力するべきデータ量を算出するステップと、前記音声符号化ストリームと前記映像符号化ストリームについて、前記区間境界、または、前記区間境界と前記データ量を含む位置とを検出し、識別可能な特定の符号を挿入するステップと、挿入された符号を検出し、前記区間境界を連続して再生するために必要なストリームを入力バッファに格納するステップと、前記入力バッファに格納されたストリームを復号するステップと、前記復号されたデータを出力するステップと、算出されたデータ量に基づいて、前記区間境界と出力データの同期を制御するステップとを包含する。
【発明の効果】
【００４１】
本発明によれば、再生装置は、複数の符号化ストリームを連続的に再生する場合に、音声と映像をずれることなく同期して再生することが可能となる。また、音声と映像を同期して再生する場合に生じる音声の無音区間を最小にすることが可能である。
【発明を実施するための最良の形態】
【００４２】
以下、添付の図面を参照して、本発明による再生装置の実施形態を説明する。
【００４３】
（実施形態１）
図１は、本実施形態による再生装置１００の構成を示すブロック図である。また図６は、再生装置１００に入力されるストリームを示す。主としてこれらの図を参照しながら、本実施形態による再生装置１００の構成及び再生方法を説明する。
【００４４】
以下では説明を簡単にするために、映像を連続して（すなわち途切れることなく）再生するようにシステムストリーム６０１から映像および音声を再生する処理を説明する。特に、１以上のシステムストリームの複数の区間を連続して再生する際において、区間の切り替わりを表す境界はビデオ信号の再生指定時刻で指定されるとする。ＭＰＥＧ−２規格では、再生指定時刻はＰＴＳによって表される。ＰＴＳ（Presentation Time Stamp）とは、９０ｋＨｚの精度で表された各フレームの表示タイミングを示す数値である。以下、オーディオ信号の再生指定時刻をＡＰＴＳ、ビデオ信号の再生指定時刻をＶＰＴＳと記述する。
【００４５】
音声および映像が多重化されたシステムストリームは、ストリーム読み出し手段１０１によって読み出される。ストリーム読み出し手段１０１は、まず、第１再生区間のシステムストリーム６０２および第１再生区間後のストリーム６０９を読み出し、その後、第２再生区間前のシステムストリーム６１０および第２再生区間のストリーム６０３を読み出す。これらは順に境界情報検出手段１１９に送られる。
【００４６】
なお図６は、１つのシステムストリーム６０１の異なる２区間を連続して再生するケースを想定している。しかし、この２区間は、互いに異なるシステムストリームの全区間または一部の区間であってもよい。例えば、映像および音声のコンテンツが複数存在する光ディスクから、あるコンテンツのシステムストリームを読み出し、続けて別のコンテンツのシステムストリームを読み出すときに、先のシステムストリームの全部または一部を第１区間として読み出し、次のシステムストリームの全部または一部を第２区間として読み出すことに対応する。このときも以下の説明を全く同様に適用することができる。
【００４７】
境界情報検出手段１１９は、境界検出手段１２０、差分算出手段１２１、データ量算出手段１２２からなる。第１再生区間のストリーム６０２および第１再生区間後のストリーム６０９において、オーディオ符号化ストリームの終点をＡＯＵＴ点、ビデオ符号化ストリームの終点をＶＯＵＴ点、第２再生区間前のシステムストリーム６１０および第２再生区間のストリーム６０３において、オーディオ符号化ストリームの始点をＡＩＮ点、ビデオ符号化ストリームの始点をＶＩＮ点とし、ＡＯＵＴ点とＡＩＮ点の間をオーディオ境界、ＶＯＵＴ点とＶＩＮ点の間をビデオ境界と呼ぶ。
【００４８】
境界検出手段１２０は指定されたＶＰＴＳを超えない最大のＡＰＴＳ値（最大ＡＰＴＳ値）と、ＶＰＴＳを超える最小のＡＰＴＳ値（最小ＡＰＴＳ値）を検出する。差分算出手段１２１は最大ＡＰＴＳ値とＶＰＴＳ値の差分を算出する。データ量算出手段１２２は、前記時間差分とストリーム情報から、時間差分の間に出力される出力データ量と、出力データ量を復号して得るために必要な符号化データ量を算出する。特定符号挿入手段１０２は、第１再生区間のオーディオ符号化ストリームについて、最小ＡＰＴＳ値が検出されたオーディオパケットの先頭の位置をＡＯＵＴ点とし、オーディオ特定符号６１４を挿入する。またビデオ符号化ストリームについては、指定されたＶＰＴＳ値が検出されたビデオパケットの先頭の位置をＶＯＵＴ点として、ビデオ特定符号６０４を挿入する。第２再生区間の始点については、ビデオ符号化ストリームについては、指定されたＶＰＴＳ値に基づいてＶＩＮ点が決定され、ビデオ特定符号６１３が挿入される。同様に最大ＡＰＴＳ値に基づいてＡＩＮ点が決定され、オーディオ特定符号６１５が挿入される。なお、第２再生区間のＶＰＴＳ値およびＡＰＴＳ値は、一般には第１再生区間のＶＰＴＳ値およびＡＰＴＳ値と不連続である。よって第２再生区間に対する「指定されたＶＰＴＳ値」は、第１再生区間の終了を示すＶＰＴＳ値とは別に与えられる。
【００４９】
なお、オーディオ特定符号６１４は、前記最大ＡＰＴＳ値から起算して符号化データ量相当だけ後の位置に挿入してもよい。また、第２再生区間に関しては、オーディオ符号化ストリームについて、最大ＡＰＴＳ値から起算して符号化データ量相当だけ後の位置をＡＩＮ点となるように、オーディオ特定符号６１５を挿入しても良い。
【００５０】
第１再生区間のシステムストリーム３０２と、ビデオ特定符号と、オーディオ特定符号３０４と、第２再生区間のシステムストリーム３０３は、連続してストリーム分離手段２０３に送られる。
【００５１】
ストリーム分離手段１０３は、第１再生区間のシステムストリーム６０２が入力されると、それに含まれるオーディオ符号化パケット１Ａおよびビデオ符号化パケット１ａ、１ｂ、１ｃを分離し、それぞれ第１のオーディオ入力バッファ１０５および第１のビデオ入力バッファ１１２に格納する。そしてビデオ特定符号６０４を検出すると、ストリーム分離手段１０３は第２のスイッチ１１１を切り替え、ストリーム分離手段１０３と第２のビデオ入力バッファ１１３を接続する。
【００５２】
第１再生区間後のストリーム６０９が入力されると、ストリーム分離手段１０３はオーディオ特定符号６１４が到達するまでに含まれるオーディオ符号化パケット１Ｂおよびビデオ符号化パケット１ｄを分離し、オーディオ符号化パケット１Ｂは第１のオーディオ入力バッファ１０５に格納し、ビデオ符号化パケットは破棄する。そしてオーディオ特定符号６１４を検出すると、ストリーム分離手段１０３は、第１のスイッチ１０４を切り替え、ストリーム分離手段１０３と第２のオーディオ入力バッファ１０６を接続する。次に、ストリーム分離手段１０３は、ＩＮ点を表すオーディオ特定符号６１５、あるいは、ビデオ特定符号６１３を検出するまでオーディオ符号化パケットおよびビデオ符号化パケットを破棄する。
【００５３】
第２再生区間前のストリーム６１０が入力されると、ストリーム分離手段１０３は、オーディオ特定符号６１５を検出する。次にストリーム分離手段１０３は、ビデオ特定符号６１３を検出するまで、ストリームに含まれるオーディオ符号化パケット２Ｘおよびビデオ符号化パケット２ｘを分離し、オーディオパケット２Ｘは第２のオーディオ入力バッファ１０６に格納し、ビデオ符号化パケット２ｘは破棄する。
【００５４】
ストリーム分離手段１０３がビデオ特定符号６１３を検出した後、第２再生区間のシステムストリーム６０３が入力されると、それに含まれるオーディオ符号化パケット２Ａ、２Ｂおよびビデオ符号化パケット２ａ、２ｂを分離し、それぞれ第２のオーディオ入力バッファ１０６および第２のビデオ入力バッファ１１３に格納する。
【００５５】
ＡＶ同期制御手段１１８は、ストリーム分離手段１０３より、最大ＡＰＴＳ値、出力データ量などの情報を受け、それらの情報を基に、オーディオ復号手段１０８およびビデオ復号手段１１５の復号の開始や停止の制御を行う。また、ＡＶ同期制御手段１１８は、オーディオ出力手段１１０およびビデオ出力手段１１７も、最大ＡＰＴＳ値、出力データ量などの情報を基に、出力の開始や停止の制御を行う。なおＡＶ同期制御手段１１８は、例えば図１に示す再生装置１００のＣＰＵ（図示せず）によって制御される。または、再生装置１００のＣＰＵがＡＶ同期制御手段１１８として機能する。ＡＶ同期制御手段１１８は、再生装置１００内の各手段および各バッファの動作を制御している。
【００５６】
ＡＶ同期制御手段１１８の制御に基づいて行われる各構成要素の動作は以下のとおりである。オーディオ復号手段１０８は、第３のスイッチ１０６を介して第１のオーディオ入力バッファ１０５からオーディオ符号化パケット１Ａ、１Ｂなどで構成されるオーディオ符号化ストリーム６０５を読み出して復号し、復号されたオーディオ信号をオーディオ出力バッファ１０９に送る。オーディオ出力手段１１０は、オーディオ出力バッファ１０９からオーディオ信号を読み出し、出力する。一方、ビデオ復号手段１１５は、第４のスイッチ１１４を介して第１のビデオ入力バッファ１１２からビデオ符号化パケット１ａ、１ｂ、１ｃなどで構成されるビデオ符号化ストリーム６０６を読み出して復号し、復号されたビデオ信号をビデオ出力バッファ１１６に送る。ビデオ出力手段１１７は、ビデオ出力バッファ１１６からビデオ信号を読み出し、出力する。
【００５７】
第３のスイッチ１０６は、第１再生区間のオーディオ符号化ストリーム６０５を構成するオーディオパケットのうち復号が必要なパケットの処理が完了すると、第２のオーディオ入力バッファ１０６とオーディオ復号手段１０８が接続されるように切り替わる。オーディオ復号手段１０８は、境界後のオーディオ符号化ストリーム６０７を復号する。同様に、第４のスイッチ１１４は、第１再生区間のビデオ符号化ストリーム６０６を構成するビデオパケットのうち、復号が必要なパケットの処理が完了すると、第２のビデオ入力バッファ１１３とビデオ復号手段１１５が接続されるように切り替わる。ビデオ復号手段１１５は、境界後のビデオ符号化ストリーム６０８を復号する。
【００５８】
次に、図６を参照しながら、システムストリーム６０１についてさらに詳しく説明する。図６は、ストリーム分離手段１０３に入力されるストリーム６０１、第１再生区間のシステムストリーム６０２および第１再生区間後のシステムストリーム６０９から抽出されたオーディオ符号化ストリーム６０５とビデオ符号化ストリーム６０６、第２再生区間前のシステムストリーム６１０および第２再生区間のシステムストリーム６０３から抽出されたオーディオ符号化ストリーム６０７とビデオ符号化ストリーム６０８を表している。図６の横軸は時刻を表し、ＭＰＥＧ規格においては、システムストリーム６０１を構成するオーディオ符号化ストリーム６０５、６０７およびビデオ符号化ストリーム６０６、６０８にそれぞれ再生指定時刻に対応するＰＴＳ値が逐次格納されている。
【００５９】
時刻６Ａは第１再生区間のシステムストリーム６０２に含まれるビデオ符号化ストリームの再生終了時刻である。つまりＯＵＴ点のＶＰＴＳ値を超えない最大のＡＰＴＳ値に対応する時刻である。
【００６０】
時刻６ＢはＯＵＴ点のＶＰＴＳ値に対応する時刻であり、同時に、最大ＡＰＴＳ値の時刻からＯＵＴ点のＶＰＴＳまでのオーディオ信号の出力データの再生終了時刻、つまりオーディオ符号化ストリームの再生終了時刻を示す。
【００６１】
時刻６Ｃは、第１再生区間のシステムストリーム６０２におけるオーディオ特定情報が挿入される時刻である。つまり、ＯＵＴ点における最小ＡＰＴＳ値に対応する時刻である。
【００６２】
時刻６Ｄは第２再生区間のシステムストリーム６０３におけるオーディオ特定情報の挿入位置であり、同時に、第２再生区間のシステムストリーム６０３に含まれるビデオ符号化ストリームの再生終了時刻、つまりＩＮ点のＶＰＴＳ値を超えない最大のＡＰＴＳ値の位置である。
【００６３】
時刻６Ｅは、ＩＮ点のＶＰＴＳ値に対応する時刻であり、同時に、最大ＡＰＴＳ値の時刻からＩＮ点のＶＰＴＳ値までのオーディオ信号の出力データ量の再生終了時刻、つまり第２再生区間のオーディオ符号化ストリームの再生開始時刻である。
【００６４】
時刻６Ｆは、ＩＮ点における最小ＡＰＴＳ値に対応する時刻である。
【００６５】
システムストリーム６０１が、例えば、ＭＰＥＧ規格で定義されているトランスポートストリーム（以下、「ＴＳ」と記述する）であるときは、一般に、オーディオ符号化ストリームとビデオ符号化ストリームの境界における各再生指定時刻は一致しない。つまり、ＯＵＴ点のＶＰＴＳ値と最大ＡＰＴＳ値は一致せず、また、ＩＮ点のＶＰＴＳ値と最小ＡＰＴＳ値は一致しない。
【００６６】
時刻６Ａから時刻６Ｂまでの区間は、データ算出手段１２２で算出したデータ量に相当するオーディオ符号化ストリームである。時刻６Ｂから時刻６Ｃまでの区間は、復号あるいは出力しないオーディオ符号化ストリームである。時刻６Ｄから時刻６Ｅまでの区間は、データ算出手段１２２で算出したデータ量に相当するオーディオ符号化ストリームである。つまり、この区間は復号あるいは出力しないオーディオ符号化ストリームである。
【００６７】
ビデオ信号が連続的に再生されるよう処理するためには、境界を表すＯＵＴ点のＶＰＴＳ値に対して、第１のオーディオ入力バッファ１０５に格納されるオーディオ符号化ストリームの終点をより後ろまでずらす必要がある。そこで本実施形態においては、ＶＰＴＳ値を超える最小のＡＰＴＳ値のオーディオデータまでを格納する。よって、最大ＡＰＴＳとＶＰＴＳとの時間差から出力するデータ量分を復号、あるいは出力することにより、ＯＵＴ点の映像信号に同期してオーディオ信号を出力することが可能となる。すなわち、ＯＵＴ点において無音区間を生じない。
【００６８】
同様に、境界を表すＩＮ点のＶＰＴＳ値に対して、第２のオーディオ入力バッファ１０６に格納されるオーディオ符号化ストリームの始点は、より前から開始すればよい。本実施形態においては、ＶＰＴＳ値を超えない最大のＡＰＴＳ値のオーディオデータ位置から格納する。よって、最大ＡＰＴＳ値とＶＰＴＳ値との時間差から出力しないデータ量分を復号、あるいは出力せず、ＶＰＴＳ値のデータから復号、あるいは出力することにより、ＩＮ点の映像信号に同期してオーディオ信号を出力することが可能となる。すなわち、ＩＮ点において無音区間を生じない。
【００６９】
ここで、再生装置１００は、第１のＴＳを解析しながら復号および出力をしており、境界を復号する前にシステムストリーム６０１における第１再生区間の再生終了時刻があらかじめ分かっているとする。再生装置１００は、境界近傍で、ストリーム読み出し手段１０１によるシステムストリーム６０１を読み出す処理、および、ストリーム分離手段１０３によってオーディオ符号化ストリーム６０５とビデオ符号化ストリーム６０６を抽出して第１のオーディオ入力バッファ１０５および第１のビデオ入力バッファ１１２にそれぞれ格納する処理を、境界近傍以外を処理している場合に比べて高速に行う。境界近傍というのは、例えば、第１再生区間の再生終了時刻、つまりＯＵＴ点のＶＰＴＳ値の時刻を基準として１秒前後である。
【００７０】
また、前述したように第１のスイッチ１０４および第２のスイッチ１１２を適宜切り替え、境界後のオーディオ符号化ストリーム６０７およびビデオ符号化ストリーム６０８を、第２のオーディオ入力バッファ１０６および第２のビデオ入力バッファ１１３にそれぞれ格納する。この境界近傍の第２再生区間のシステムストリーム６０３の処理も、高速に行う。
【００７１】
また、時刻６Ｂから時刻６Ｃおよび、時刻６Ｄから時刻６Ｅまでの復号処理は実際に出力しないデータを復号するものであり、時間軸上においては冗長な処理である。よって、オーディオ復号手段１０８も、境界近傍の復号処理を、境界近傍以外を処理している場合に比べて高速に行う。
【００７２】
境界近傍においては、境界近傍以外の区間よりも高速に、第１および第２のビデオ入力バッファにビデオ符号化ストリームが格納されているので、時刻６Ｂまでのビデオ符号化ストリームの復号処理が完了した時点で、第２のビデオ入力バッファには、既に境界後の時刻６Ｄ以降のビデオ符号化ストリームが格納されている。よって、ビデオ復号手段１１５は、時刻６Ｂまでのビデオ符号化ストリームの復号に続けて時刻６Ｄ以降の復号を行い、時刻６Ｂのビデオ信号と時刻６Ｄのビデオ信号は連続して出力される。
【００７３】
なお、ビットレート、フレームサイズ、サンプリング周波数より、データ量算出手段で符号化データ量を算出し、符号化データ量を満たすオーディオ符号化パケットの位置に特定符号を挿入する場合は、時刻Ｂから時刻Ｃまでの符号化データをストリーム分離手段によって破棄することが可能となり、第１のオーディオ入力バッファを節約することが可能である。
【００７４】
なお、オーディオ復号手段１０８は、オーディオフレームを処理の最小単位として復号するのが一般的である。しかし、オーディオ符号化方式によっては、オーディオフレームを任意の出力データ量を処理の最小単位として復号可能であるので、オーディオ復号手段の復号処理単位に必要なオーディオ符号化ストリームをオーディオ入力バッファに格納すればよい。また、オーディオ復号手段は、可能な最小処理単位で復号することにより、オーディオ出力バッファに格納する冗長な出力データ量を低減することが可能である。例えば、２５６サンプル単位で復号する場合は、２５６サンプルを復号するために必要な符号化ストリームをオーディオ入力バッファに格納するため、最大２５５サンプル分の冗長な符号化ストリームの入力バッファサイズが必要であり、また、最大２５５サンプル分の冗長な出力データをオーディオ出力バッファに格納する。しかし、1サンプル単位で復号可能な場合は、１サンプルを復号するために必要な符号化ストリームをオーディオ入力バッファに格納すればよく、また、冗長な出力データをオーディオ出力バッファに格納しなくてよい。つまり、オーディオ入力バッファとオーディオ出力バッファを節約することが可能である。
【００７５】
図７から図１１は、２つの再生区間のビデオを連続して再生するための処理の手順を示す。これらの図を参照しながら再生方法を説明する。なお、図７から図１１によって示すフローチャートは、コンピュータプログラムとして記述することができる。このようなコンピュータプログラムは、例えば再生装置１００のＣＰＵ（図示せず）やＡＶ同期制御手段１１８によって実行され、再生装置１００の各構成要素をその機能を発揮させるように動作させる。これにより、再生装置１００は以下に説明する手順にしたがって動作する。
【００７６】
図７は、ストリーム読み出し手段１０１および再生情報検出手段１１９における処理を示す。まずストリーム読み出し手段１０１が、第１再生区間のシステムストリームを1パケット読み込むと、再生情報検出手段１１９は、オーディオ符号化ストリーム、およびビデオ符号化ストリームそれぞれについてＯＵＴ点を検出する。
【００７７】
再生情報検出手段１１９は、読み込んだパケットの種別を判定する（Ｓ７０１）。オーディオ符号化パケットの場合、さらに第１再生区間かを判定する（Ｓ７０２）。第１再生区間であれば、第１再生区間の終点を示すＶＰＴＳ値とＡＰＴＳ値とを比較する（Ｓ７０３）。
【００７８】
ＡＰＴＳ値がＶＰＴＳ値よりも小さく（Ｓ７０３）、かつ、現在の最大ＡＰＴＳ値よりも大きいとき（Ｓ７０４）は、最大ＡＰＴＳ値を更新する（Ｓ７０５）。ＡＰＴＳ値がＶＰＴＳ値以上のとき（Ｓ７０３）は、最初のＡＰＴＳ値を最小ＡＰＴＳ値とする（Ｓ７０６）。最小ＡＰＴＳ値が確定した場合、ＶＰＴＳ値と最大ＡＰＴＳ値の時間差分を算出する（Ｓ７０７）。その時間差分とオーディオ符号化ストリームの情報より、時間差分内における出力データ量を算出する（Ｓ７０８）。
【００７９】
例えば、オーディオ符号化ストリームのサンプリング周波数に基づいて時間差分内におけるサンプル数を算出する場合は、
サンプリング周波数×時間差分＝出力サンプル数
により算出することができる。
【００８０】
次に、出力データ量を復号するのに必要な符号化データ量を算出する（Ｓ７０８）。例えば、オーディオ符号化ストリームの1フレームのデータ長とサンプル数より、上記出力サンプル数を復号するのに必要な復号フレーム数とその符号化データ量を算出する場合、
（小数点以下切上げ）｛出力サンプル数／フレームのサンプル数｝＝復号フレーム数
フレームのデータ長×復号フレーム数＝符号化データ量
によって算出することができる。
【００８１】
算出したデータに基づいて、ＯＵＴ点を示すオーディオ特定符号を作成し（Ｓ１００１〜Ｓ１００３）、最小ＡＰＴＳ値の直前に挿入する（Ｓ１００４）。
【００８２】
図８もまた、ストリーム読み出し手段１０１および再生情報検出手段１１９における処理を示す。読み込んだパケットがビデオ符号化パケットの場合（Ｓ８０１）、第１再生区間であれば（Ｓ８０２）、第１再生区間の終点を示すＶＰＴＳ値、すなわち、ビデオ符号化ストリームのＯＵＴ点と読み込んだパケットに対応するＶＰＴＳ値とを比較し（Ｓ８０３）、ＶＰＴＳ値がＯＵＴ点以上になった位置において（Ｓ８０４）、ＯＵＴ点を示すビデオ特定符号を作成し（Ｓ１００６）、挿入する（Ｓ１００７）。
【００８３】
ストリーム分離手段は、送られてきたパケットのヘッダ情報から特定符号かどうかを判定（Ｓ１１０１）する。特定符号の場合、特定符号のデータを解析（Ｓ１１０２）する。境界値、境界近傍値、時間差分、出力データ量、符号化データ量は同期に必要な情報として同期手段に送信する。特定符号がＯＵＴ点に関するものである場合（Ｓ１１０３）、オーディオ特定符号であれば（Ｓ１１０４）、オーディオ入力バッファを切り替え（Ｓ１１０７）、ビデオ特定符号であれば（Ｓ１１０６）、ビデオ入力バッファを切り替える（Ｓ１１０５）。このとき、ＯＵＴ点の特定符号からＩＮ点の特定符号までの符号化パケットは入力バッファに格納しないように、有効パケット情報に破棄指定情報を設定する。
【００８４】
破棄指定情報とは、システムストリームにおいてオーディオ符号化ストリームおよびビデオ符号化ストリームの識別情報として、付加されることのない値であり、例えば０ｘ２ＦＦＦである。
【００８５】
送られてきた符号化パケットがビデオパケットの場合（Ｓ１１０８）、有効パケットであれば（Ｓ１１０９）、設定されている入力バッファに格納し（Ｓ１１１０）、有効パケットでないときは破棄する（Ｓ１１１１）。
【００８６】
送られてきた符号化パケットがオーディオパケットの場合（Ｓ１１１２）も同様に、有効パケットであれば（Ｓ１１１３）、設定されている入力バッファに格納し（Ｓ１１１４）、有効パケットでないときは破棄する（Ｓ１１１１）。
【００８７】
ここで、有効パケット情報の初期値はシステムストリーム情報、あるいは第１再生区間情報として境界を示すＶＰＴＳ値と共に与えられるものとする。初期値として与えられない場合は、特定符号を検出し、有効パケット情報に破棄指定情報が設定されるまでは、符号化パケットを入力バッファに格納する。
【００８８】
また、破棄するとは、例えば、入力バッファに格納する際に、上書きすることで実現可能である。
【００８９】
次に、第２再生区間のシステムストリームを1パケット読み込む。
【００９０】
オーディオ符号化ストリーム、およびビデオ符号化ストリームそれぞれについて、ＩＮ点を検出する。
【００９１】
読み込んだパケットがオーディオ符号化パケットの場合（Ｓ９０１）、第２再生区間の始点を示すＶＰＴＳ値とＡＰＴＳ値とを比較し（Ｓ９０２）、ＡＰＴＳ値がＶＰＴＳ値よりも小さい時で現在の最大ＡＰＴＳ値よりも大きいとき（Ｓ９０３）は、最大ＡＰＴＳ値を更新する（Ｓ９０４）。ＡＰＴＳ値がＶＰＴＳ値以上であった時、最初のＡＰＴＳ値を最小ＡＰＴＳ値とする（Ｓ９０５）。最小ＡＰＴＳ値が確定した場合、ＶＰＴＳ値と最大ＡＰＴＳ値の時間差分を算出する（Ｓ９０６）。その時間差分とオーディオ符号化ストリームの情報より、時間差分内における出力データ量を算出する（Ｓ９０７）。例えば、オーディオ符号化ストリームのサンプリング周波数より、時間差分内におけるサンプル数を算出する場合、
サンプリング周波数×時間差分＝出力サンプル数
で算出することができる。
【００９２】
次に、出力データ量を復号するのに必要な符号化データ量を算出する（Ｓ９０７）。例えば、オーディオ符号化ストリームの1フレームのデータ長とサンプル数より、上記出力サンプル数を復号するのに必要な復号フレーム数とその符号化データ量を算出する場合、
（小数点以下切上げ）｛出力サンプル数／フレームのサンプル数｝＝復号フレーム数
フレームのデータ長×復号フレーム数＝符号化データ量
で算出することができる。
【００９３】
算出したデータを基に、ＩＮ点を示すオーディオ特定符号を作成し（Ｓ１００２）、ＯＵＴ点でなければ（Ｓ１００３）、最大ＡＰＴＳ値の直前に挿入する（Ｓ１００５）。
【００９４】
読み込んだパケットがビデオ符号化パケットの場合、第２再生区間の始点を示すＶＰＴＳ値、すなわち、ビデオ符号化ストリームのＩＮ点と読み込んだパケットに対応するＶＰＴＳ値とを比較し（Ｓ９０８）、ＶＰＴＳ値がＩＮ点以上になった位置に、ＩＮ点を示すビデオ特定符号を作成し（Ｓ１００６）、挿入する（Ｓ１００７）。
【００９５】
ストリーム分離手段は、送られてきたパケットのヘッダ情報から特定符号かどうかを判定する（Ｓ１１０１）。特定符号の場合、特定符号のデータを解析する（Ｓ１１０２）。境界値、境界近傍値、時間差分、出力データ量、符号化データ量は同期に必要な情報として同期手段に送信する。特定符号がＩＮ点に関するものである場合（Ｓ１１０４、Ｓ１１０６）、有効パケット情報は破棄指定情報から特定符号に指定された有効パケット情報に変更される。
【００９６】
送られてきた符号化パケットがビデオパケットの場合（Ｓ１１０８）、有効パケットであれば（Ｓ１１０９）、設定されている入力バッファに格納し（Ｓ１１１０）、有効パケットでないときは破棄する（Ｓ１１１１）。
【００９７】
送られてきた符号化パケットがオーディオパケットの場合（Ｓ１１１２）も同様に、有効パケットであれば（Ｓ１１１３）、設定されている入力バッファに格納し（Ｓ１１１４）、有効パケットでないときは破棄する（Ｓ１１１１）。
【００９８】
ここで、図１２を参照しながら特定符号を説明する。図１２は、本実施形態による特定符号のデータ構造の例を示す。再生するストリームがシステムストリームの場合、特定符号はＴＳパケットと同様のパケット構造である。
【００９９】
パケット識別情報は、特定符号をＴＳパケットとして認識するための同期信号である。識別情報は、特定符号を表すＴＳパケットであることを示す。例えば、Ｒｅｓｅｒｖｅｄである０ｘ０００３〜０ｘ０００Ｆまでを用いて、オーディオ特定符号、あるいはビデオ特定符号を識別するための識別情報を割り当てる。
【０１００】
データはＴＳパケットのデータ領域（最大１８４ｂｙｔｅ）に以下の7項目の情報を少なくとも含むものである。境界識別情報は、特定符号がＯＵＴ点に挿入されるものか、あるいはＩＮ点に挿入されるものかを表す識別情報である。有効パケット情報は、再生区間におけるオーディオ識別情報、あるいはビデオ識別情報を示す。ＯＵＴ点に挿入される特定符号のときは、ＯＵＴ点までに再生すべき符号化パケットの識別情報を示す。有効パケット情報は通常、ストリーム情報として与えられものである。境界値は、再生区間の境界を示すＰＴＳ値を示す。特定符号がＯＵＴ点に挿入されるものである時、ＯＵＴ点のＰＴＳ値を示し、ＩＮ点に挿入されるものである時、ＩＮ点のＰＴＳ値を示す。境界近傍値は、境界値の前後のＰＴＳ値、すなわち、最大ＡＰＴＳ値と最小ＡＰＴＳ値を示す。差分時間は、境界近傍値と境界値の差分情報を示す。つまり、ＶＰＴＳ値−最大ＡＰＴＳ値で算出される値を示す。出力データ量は、差分時間内における出力データ量を示す。出力データ量は、符号化ストリーム情報と差分時間から算出する。符号化データ量は、出力データ量を復号するために必要な符号化データ量を示す。符号化データ量はストリーム情報と時間差分、あるいは出力データ量を用いて算出する。
【０１０１】
次に、ビデオ信号を連続的に再生する場合において、オーディオ復号、出力処理を含めて、同期処理について説明する。
【０１０２】
ＯＵＴ点について：
境界値、境界近傍値、時間差分、出力データ量、符号化データ量を用いて、以下のように復号および出力を制御する。
【０１０３】
オーディオ復号手段１０８は最大ＡＰＴＳ値を与えるオーディデータ位置までは復号を行い、出力データをオーディオ出力バッファに格納する。オーディオ復号手段１０８は、最大ＡＰＴＳ値のデータ位置以降は、復号単位で復号処理を行うごとに、最大ＡＰＴＳ値のデータ位置からの復号した総出力データ量と出力データ量を比較する。総出力データ量が出力データ量を超えない場合は出力バッファに格納する。超えた場合は、総出力データ量が出力データ量に達するまで、データを出力バッファに格納する。第１入力バッファに残っているデータは復号する必要はないので、読み捨ててデータがなくなるとスイッチを切り替える。または、単にスイッチを切り替えて第２入力バッファに接続する。
【０１０４】
ＩＮ点について：
境界値、境界近傍値、時間差分、出力データ量、符号化データ量を用いて、以下のように復号および出力を制御する。
【０１０５】
オーディオ復号手段１０８は、最大ＡＰＴＳ値のデータ位置から復号単位で復号処理を行うごとに、最大ＡＰＴＳ値のデータ位置からの復号した総出力データ量と出力データ量を比較する。総出力データ量が出力データ量を超えない場合は出力バッファに格納せず破棄する。超えた場合は、総出力データ量が出力データ量に達するまでデータを破棄し、残りのデータを出力バッファに格納する。以後、第２入力バッファに格納されているデータを復号し、出力バッファに格納する。
【０１０６】
なお、復号処理を実際に行わずに、復号単位で復号した際の出力データ量が把握できるときは、出力データ量に達するまでは、入力バッファからデータを読み捨て、総出力データを更新するだけでよい。
【０１０７】
以上のように復号制御を行うと、出力バッファに格納されたオーディオ信号を出力する際に、ビデオ信号の出力する時刻までオーディオ出力手段を待たせる必要がなくなる。
【０１０８】
だたし、オーディオの境界では信号が不連続になってしまい、視聴時に違和感を与えてしまう可能性がある場合は、ＯＵＴ点までの任意の出力データに対してフェードアウト処理し、ＩＮ点からの任意の出力データに対してフェードイン処理を行うなどの付加処理を行う。
【０１０９】
（実施形態２）
図１３は、ＡＶ同期制御手段１３１８と関連して設けられたデータ量算出手段１３２２を備えた再生装置２００の構成を示すブロック図である。実施形態１においては、再生情報検出手段１１９（図１）内にデータ量算出手段１２２が設けられていた。本実施形態においては、再生情報検出手段１１９（図１）に対応するオーディオ再生情報検出手段１３１９内にはデータ量算出手段を設けず、データ量算出手段１３２２をＡＶ同期制御手段１３１８とデータの授受を行うように構成している。これにより以下の利点がある。すなわち、データ量を算出するためにはストリーム情報を検出する必要がある。ストリーム情報の解析はオーディオ復号手段１３０８およびビデオ復号手段１３１５においても行う。よって、データ量算出手段１３２２を、復号手段を制御するＡＶ同期制御手段１３１８と組み合わせると実装が容易になる。また、再生情報検出手段１３１９の処理量を削減する効果もある。なお、図１３では、データ量算出手段１３２２はＡＶ同期制御手段１３１８と別個の構成要素として記載されているが、ＡＶ同期制御手段１３１８の機能の一部として有していてもよい。
【０１１０】
本実施形態による処理は、実施形態１に関する図７のステップＳ７０８を省略し、図９のステップＳ９０７を省略している。これに伴い、実施形態１における特定符号のデータ構造（図１２）を変更している。図１４は、本実施形態による特定符号のデータ構造の例を示す。以下、実施形態１に説明した手順と異なる処理を説明する。
【０１１１】
特定符号挿入手段１３０２は、出力データ量および符号化データ量が未定の状態で特定符号を挿入する。ストリーム分離手段１３０３が特定符号を検出し、解析した結果、境界値、境界近傍値、時間差分のみがＡＶ同期制御手段１３１８に送られる。ＡＶ同期制御手段１３１８は、オーディオ復号手段１３０８からストリーム情報を取得し、前記の算出式を用いて出力データ量を算出し、前記と同様に、復号手段、出力手段を制御する。符号化データ量は必要に応じて算出すればよい。
【０１１２】
複数の再生区間をビデオ信号について連続的に再生する際に、再生区間の境界と符号化ストリームの再生指定時刻との差分を算出し、差分内に出力される出力データ量を算出し、出力データ量を基に、復号および出力を制御することにより、境界の前後におけるオーディオ信号の無音区間を低減することが可能となる。例えば、通常再生よりも遅い速度で再生をしながら、複数の区間を連続で再生する場合、境界での無音区間がより顕著に感じてしまう。しかし、本発明を用いれば無音区間を感じることなく視聴することが可能となる。
【０１１３】
なお、実施の形態２では、データ量算出手段１３２２をＡＶ同期制御手段１３１８と組み合わせたが、オーディオ復号手段１３０８、またはビデオ復号手段１３１５と組み合わせても実施可能である。
【０１１４】
図１および図１３に示すように、上述の実施形態１および２においては、ストリーム読み出し手段の例としてスイッチを例示している。しかし、ストリーム読み出し手段は、光ディスクなどの記憶媒体に記録されたシステムストリームの任意の区間を指定して読み出せるものであればよく、特に電気的あるいは機械的なスイッチに限られない。同様に、各種のバッファへ至るデータ経路、または、各種のバッファから出力されるデータ経路を切り替える手段としてスイッチを例示したが（例えば図１ではスイッチ１０４〜１０７、スイッチ１１１〜１１４）、これらもまた、特に電気的あるいは機械的なスイッチに限られない。
【産業上の利用可能性】
【０１１５】
本発明の再生装置および再生方法によれば、複数の符号化ストリームを連続的に再生する場合に、音声と映像をずれることなく同期して再生することができる。またこの再生装置および再生方法によれば、音声と映像を同期して再生する場合に生じる音声の無音区間を最小にすることができる。
【図面の簡単な説明】
【０１１６】
【図１】実施形態１による再生装置１００の構成を示すブロック図である。
【図２】従来の再生装置の構成を示す図である。
【図３】特定の符号が挿入されたシステムストリームおよびそのビデオ／オーディオ符号化ストリームの再生タイミングを示す図である。
【図４】分離手段に入力されるストリーム、およびバッファに格納される符号化ストリームを示す図である。
【図５】（ａ）および（ｂ）は、従来の再生装置によって分離された、第２オーディオ入力バッファに格納されたオーディオ符号化ストリーム、および、第２ビデオ入力バッファに格納されたビデオ符号化ストリームを示す図である。
【図６】実施形態１による再生装置１００に入力されるストリームを示す図である。
【図７】２つの再生区間のビデオを連続して再生するための実施形態１による再生処理の手順を示すフローチャートである。
【図８】２つの再生区間のビデオを連続して再生するための実施形態１による再生処理の手順を示すフローチャートである。
【図９】２つの再生区間のビデオを連続して再生するための実施形態１による再生処理の手順を示すフローチャートである。
【図１０】２つの再生区間のビデオを連続して再生するための実施形態１による再生処理の手順を示すフローチャートである。
【図１１】２つの再生区間のビデオを連続して再生するための実施形態１による再生処理の手順を示すフローチャートである。
【図１２】実施形態１による特定符号のデータ構造の例を示す図である。
【図１３】ＡＶ同期制御手段１３１８と関連して設けられたデータ量算出手段１３２２を備えた再生装置２００の構成を示すブロック図である。
【図１４】実施形態２による特定符号のデータ構造の例を示す図である。
【符号の説明】
【０１１７】
１０１，２０１，１３０１  ストリーム読み出し手段
１０２，２０２，１３０２  特定符号挿入手段
１０３，１３０３  ストリーム解析手段
１０４，２０４，１３０４  第１のスイッチ
１０５，２０５，１３０５  第１オーディオ入力バッファ
１０６，２０６，１３０６  第２オーディオ入力バッファ
１０７，２０７，１３０７  第３のスイッチ
１０８，２０８，１３０８  オーディオ復号手段
１０９，２０９，１３０９  オーディオ出力バッファ
１１０，２１０，１３１０  オーディオ出力手段
１１１，２１１，１３１１  第２のスイッチ
１１２，２１２，１３１２  第１ビデオ入力バッファ
１１３，２１３，１３１３  第２ビデオ入力バッファ
１１４，２１４，１３１４  第４のスイッチ
１１５，２１５，１３１５  ビデオ復号手段
１１６，２１６，１３１６  ビデオ出力バッファ
１１７，２１７，１３１７  ビデオ出力手段
１１８，１３１８  ＡＶ同期制御手段
１１９，１３１９  再生情報検出手段
１２０，１３２０  境界検出手段
１２１，１３２１  差分算出手段
１２２，１３２２  データ量算出手段
２０１  ストリーム読み出し手段
２０２  特定符号挿入手段
２０３  ストリーム分離手段
３０１，４０１  分離手段に入力されるストリーム
３０２，４０２，６０２  第１再生区間のストリーム
３０３，４０３，６０３  第２再生区間のストリーム
３０４  特定符号
３０５，４０５，６０５  第１再生区間終端近傍のオーディオ符号化ストリーム
３０６，４０６，６０６  第１再生区間終端近傍のビデオ符号化ストリーム
３０７，４０７，６０７  第２再生区間先頭近傍のオーディオ符号化ストリーム
３０８，４０８，６０８  第２再生区間先頭近傍のビデオ符号化ストリーム
４０４  特定符号挿入位置
４０９，６０９  第１再生区間後のストリーム
４１０，６１０  第２再生区間前のストリーム
４１１  破棄されたオーディオ符号化ストリーム
６０１  システムストリーム
６０４，６１３  ビデオ特定符号
６１１，６１２  出力されないオーディオ符号化ストリーム
６１４，６１５  オーディオ特定符号
【図１】
2006157822.tif 000003
【図２】
2006157822.tif 000004
【図３】
2006157822.tif 000005
【図４】
2006157822.tif 000006
【図５】
2006157822.tif 000007
【図６】
2006157822.tif 000008
【図７】
2006157822.tif 000009
【図８】
2006157822.tif 000010
【図９】
2006157822.tif 000011
【図１０】
2006157822.tif 000012
【図１１】
2006157822.tif 000013
【図１２】
2006157822.tif 000014
【図１３】
2006157822.tif 000015
【図１４】
2006157822.tif 000016