(57)【要約】  ＳＴＣを再生するＳＴＣ再生部２と、ＳＴＣを補正して補正ＳＴＣを生成するＳＴＣ補正部３と、再生対象のＭＰＥＧ−ＴＳ信号データを逐次蓄積し、補正ＳＴＣとＭＰＥＧ−ＴＳ信号データのＰＴＳが同期したタイミングでＭＰＥＧ−ＴＳ信号データを再生する映像デコーダ部４及び音声デコーダ部５とを備え、ＳＴＣ補正部３が、連続メディアデータの蓄積状況と、デコーダ部４，５に蓄積されているＭＰＥＧ−ＴＳ信号データのＰＴＳに応じてＳＴＣを補正する。
2009090728.tif 000002
【特許請求の範囲】
【請求項１】
再生対象の連続メディアデータの提示時刻の同期の基準となる基準時刻を再生する基準時刻再生部と、
前記基準時刻を補正して補正基準時刻を生成する補正部と、
前記連続メディアデータを逐次蓄積し、前記補正基準時刻と前記連続メディアデータの提示時刻が同期したタイミングで前記連続メディアデータを再生するメディア再生部とを備え、
前記補正部は、前記メディア再生部での連続メディアデータの蓄積状況と、前記メディア再生部に蓄積されている前記連続メディアデータの提示時刻に応じて前記基準時刻を補正するメディア再生装置。
【請求項２】
補正部は、
連続メディアデータの蓄積量とメディア再生部の蓄積可能容量に応じた所定の閾値との比較結果に基づいて前記連続メディアデータの蓄積状況を判定し、
提示時刻の値と基準時刻の値の比較結果に基づいて前記提示時刻のずれ状態を判定し、
前記判定結果の連続メディアデータの蓄積状況及び前記提示時刻のずれ状態に基づいて前記基準時刻に加算すべきオフセット値を算出し、この算出結果のオフセットを加算した基準時刻を補正基準時刻として前記メディア再生部に出力することを特徴とする請求項１記載のメディア再生装置。
【請求項３】
連続メディアデータは、ＭＰＥＧ方式で符号化されたデータであり、
補正部は、前記連続メディアデータの蓄積量と蓄積されている前記連続メディアデータの先頭フレームに付加されたＰＴＳ（Presentation Timp Stamp）を提示時刻として、基準時刻を示すＳＴＣ（System Time Clock）の値を補正することを特徴とする請求項２記載のメディア再生装置。
【請求項４】
補正部は、
連続メディアデータの蓄積量とメディア再生部の蓄積可能容量に応じた所定の閾値との比較結果に基づいて、前記連続メディアデータのニアアンダーフロー状態、ニアオーバーフロー状態及び蓄積正常状態を、前記連続メディアデータの蓄積状況として判定し、
提示時刻の値と基準時刻の値の大小関係から、前記基準時刻が前記提示時刻よりも進んでいる状態、前記基準時刻が前記提示時刻よりも遅れている状態、及び前記基準時刻と前記提示時刻とが一致している状態を判定し、
前記連続メディアデータがニアアンダーフロー状態で、前記基準時刻と前記提示時刻とが一致している状態若しくは前記基準時刻が前記提示時刻よりも進んでいる状態であるとの判定結果が得られると、前記連続メディアデータの再生開始が遅れるようにオフセットの値を算出し、
前記連続メディアデータがニアオーバーフロー状態で、前記基準時刻が前記提示時刻よりも遅れている状態であるとの判定結果が得られると、前記連続メディアデータの再生開始が現時刻となるようにオフセットの値を算出することを特徴とする請求項２記載のメディア再生装置。
【請求項５】
連続メディアデータは、ＭＰＥＧ方式で符号化されたデータであり、
補正部は、前記連続メディアデータの蓄積量と蓄積されている前記連続メディアデータの先頭フレームに付加されたＰＴＳ（Presentation Timp Stamp）を提示時刻として、基準時刻を示すＳＴＣ（System Time Clock）の値を補正することを特徴とする請求項４記載のメディア再生装置。
【請求項６】
補正部は、
連続メディアデータの蓄積量とメディア再生部の蓄積可能容量に応じた所定の閾値との比較結果に基づいて、前記連続メディアデータのニアアンダーフロー状態、ニアオーバーフロー状態及び蓄積正常状態を、前記連続メディアデータの蓄積状況として判定し、
提示時刻の値と基準時刻の値の大小関係から、前記基準時刻が前記提示時刻よりも進んでいる状態、前記基準時刻が前記提示時刻よりも遅れている状態、及び前記基準時刻と前記提示時刻とが一致している状態を判定し、
前記連続メディアデータがニアアンダーフロー状態で、前記基準時刻と前記提示時刻とが一致している状態若しくは前記基準時刻が前記提示時刻よりも進んでいる状態であるとの判定結果が得られると、前記連続メディアデータの再生開始が遅れるようにオフセットの値を算出し、
前記連続メディアデータがニアオーバーフロー状態で、前記基準時刻が前記提示時刻よりも遅れている状態であるとの判定結果が得られると、前記連続メディアデータの再生開始が現時刻となるようにオフセットの値を算出する第１の動作状態と、
前記連続メディアデータの蓄積量と前記メディア再生部の蓄積可能容量に応じた所定の閾値との比較結果に基づいて、前記連続メディアデータの蓄積状況としてアンダーフロー状態及びオーバーフロー状態を判定し、
前記連続メディアデータがオーバーフロー状態であるとの判定結果が得られると、前記メディア再生部による前記連続メディアデータの再生がスキップするようにオフセットの値を大きくする第２の動作状態とを有し、
前記第１の動作状態において、前記連続メディアデータがニアアンダーフロー状態と前記連続メディアデータがニアオーバーフロー状態のいずれでもなく、前記基準時刻と前記提示時刻とが一致している状態になると、前記第２の動作状態に移行し、
前記第２の動作状態において、前記連続メディアデータがアンダーフロー状態であるとの判定結果が得られると、前記第１の動作状態に移行することを特徴とする請求項２記載のメディア再生装置。
【請求項７】
連続メディアデータは、ＭＰＥＧ方式で符号化されたデータであり、
補正部は、前記連続メディアデータの蓄積量と蓄積されている前記連続メディアデータの先頭フレームに付加されたＰＴＳ（Presentation Timp Stamp）を提示時刻として、基準時刻を示すＳＴＣ（System Time Clock）の値を補正することを特徴とする請求項６記載のメディア再生装置。
【請求項８】
メディア再生部を複数備え、
補正部は、
複数の前記メディア再生部のうちの少なくとも一つが、連続メディアデータのニアアンダーフロー状態で、かつ基準時刻と提示時刻とが一致している状態若しくは前記基準時刻が前記提示時刻よりも進んでいる状態であるとの判定結果が得られると、前記複数の連続メディアデータのうち最も大きな提示時刻の値を有する連続メディアデータの再生開始が遅れるようにオフセットの値を算出し、
複数の前記メディア再生部のうちの少なくとも一つが、連続メディアデータのニアオーバーフロー状態で、かつ前記基準時刻が前記提示時刻よりも遅れている状態であるとの判定結果が得られると、前記複数の連続メディアデータのうち最も小さな提示時刻の値を有する連続メディアデータの再生開始が進むようにオフセットの値を算出することを特徴とする請求項４記載のメディア再生装置。
【請求項９】
連続メディアデータは、ＭＰＥＧ方式で符号化されたデータであり、
補正部は、前記連続メディアデータの蓄積量と蓄積されている前記連続メディアデータの先頭フレームに付加されたＰＴＳ（Presentation Timp Stamp）を提示時刻として、基準時刻を示すＳＴＣ（System Time Clock）の値を補正することを特徴とする請求項８記載のメディア再生装置。
【請求項１０】
メディア再生部で再生されたメディアデータの提示速度を指示に応じた値に変換する速度変換部を備え、
補正部は、前記メディア再生部での連続メディアデータの蓄積状況に応じて調節した提示速度の値を前記速度変換部に指示することを特徴とする請求項１記載のメディア再生装置。
【請求項１１】
連続メディアデータは、ＭＰＥＧ方式で符号化されたデータであり、
補正部は、前記連続メディアデータの蓄積量と蓄積されている前記連続メディアデータの先頭フレームに付加されたＰＴＳ（Presentation Timp Stamp）を提示時刻として、基準時刻を示すＳＴＣ（System Time Clock）の値を補正することを特徴とする請求項１０記載のメディア再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＭＰＥＧ（Moving Picture Coding Experts Group）デコーダ等のメディア再生装置に関するものである。
【背景技術】
【０００２】
例えば、特許文献１に開示される従来のＭＰＥＧデコーダ等のメディア再生装置では、ＭＰＥＧ−ＴＳ（Transport Stream）信号のヘッダからＰＴＳ（Presentation Timp Stamp）を取り出し、このＰＴＳの値からＳＴＣ（System Time Clock）の値を引いた差分を求める。この後、上記従来のＭＰＥＧデコーダは、ＰＴＳの値からＳＴＣの値を引いた差分の絶対値と所定の閾値とを比較する。【０００３】
ここで、ＰＴＳの値からＳＴＣの値を引いた差の絶対値が所定の閾値より大きい場合、上記従来のメディア再生装置は、ＰＴＳの値がＳＴＣの値より大きければ、同一フレームを所定の回数を上限として繰り返して再生し、ＰＴＳの値がＳＴＣの値より小さければ、同一フレームを所定の回数を上限としてスキップして再生する。このようにして、上記従来のメディア再生装置は、ＰＴＳの値からＳＴＣの値を引いた差の絶対値が上記所定の閾値以内になるように再生処理を実行する。これにより、ＰＴＳの値とＳＴＣの値との同期の確立と、正常な画音のデコードを実現することができる（例えば、特許文献１参照）。【０００４】
【特許文献１】特開２００２−２０４４０４号公報
【０００５】
従来のメディア再生装置では、前記所定の回数内のスキップ若しくはリピートで閾値内に収まらない場合には、非同期での再生に切り替えている。このため、ＰＴＳの値とＳＴＣの値が定常的に大きく離れている場合、メディア（映像、音声等）間でＰＴＳの相対関係が正常であっても、メディア間の同期を保ったままデコードすることができないという課題があった。【０００６】
例えば、ＰＴＳの値とＳＴＣの値が大きく離れて、各メディアのＰＴＳに対してＳＴＣの値が定常的にオフセットを持っている場合、通常の再生では、再生対象のメディア信号を格納するバッファにおいて、メディア信号がオーバーフローやアンダーフローを起こす可能性がある。【０００７】
この発明は、上記のような課題を解決するためになされたもので、メディアデータの提示時刻を示す時刻情報（例えば、ＰＴＳ）の値と上記メディアデータの提示時刻の同期の基準となる時刻情報（例えば、ＳＴＣ）の値が定常的に大きく離れている場合であっても、メディア間の同期を保って再生することができるメディア再生装置を得ることを目的とする。
【発明の開示】
【０００８】
この発明に係るメディア再生装置は、再生対象の連続メディアデータの提示時刻の同期の基準となる基準時刻を再生する基準時刻再生部と、基準時刻を補正して補正基準時刻を生成する補正部と、連続メディアデータを逐次蓄積し、補正基準時刻と連続メディアデータの提示時刻が同期したタイミングで連続メディアデータを再生するメディア再生部とを備え、補正部が、メディア再生部での連続メディアデータの蓄積状況と、メディア再生部に蓄積されている連続メディアデータの提示時刻に応じて基準時刻を補正するものである。
【０００９】
この構成を有することによって、メディアデータの提示時刻を示す時刻情報の値と上記メディアデータの提示時刻の同期の基準となる時刻情報の値が定常的に大きく離れている場合であっても、メディア間の同期を保って再生することができるという効果がある。
【図面の簡単な説明】
【００１０】
【図１】この発明の実施の形態１によるメディア再生装置の構成を示すブロック図である。
【図２】図１中のＳＴＣ補正部によるＳＴＣ補正処理の流れを示すフローチャートである。
【図３】この発明の実施の形態２によるメディア再生装置の構成を示すブロック図である。
【図４】図３中のＳＴＣ補正部によるＳＴＣ補正処理の流れを示すフローチャートである。
【発明を実施するための最良の形態】
【００１１】
以下、この発明をより詳細に説明するために、この発明を実施するための最良の形態について、添付の図面に従って説明する。
実施の形態１．
図１は、この発明の実施の形態１によるメディア再生装置の構成を示すブロック図であり、ＭＰＥＧ−２規格に準拠したＭＰＥＧデコーダを例として示している。図１において、実施の形態１によるＭＰＥＧデコーダは、Ｄｅｍｕｘ部１、ＳＴＣ再生部２、ＳＴＣ補正部３、映像デコーダ部４及び音声デコーダ部５を備える。Ｄｅｍｕｘ部１は、外部からＭＰＥＧ−ＴＳ信号ａを入力するための入力用信号線と、ＳＴＣ再生部２、音声デコーダ部４及び映像デコーダ部５に接続している。ＭＰＥＧ−ＴＳ信号ａは、各メディア（映像、音声）のストリームデータが多重化された連続メディアデータである。【００１２】
また、Ｄｅｍｕｘ部１は、外部から入力したＭＰＥＧ−ＴＳ信号ａから、ＰＣＲ（Program Clock Reference）信号ｂ、映像ＰＥＳ（Packetized Elementarty Stream）信号ｃ、音声ＰＥＳ信号ｄを分離する。ＰＣＲ信号ｂは、ＭＰＥＧ−ＴＳ信号ａの符号化時の基準時刻を示す信号であり、Ｄｅｍｕｘ部１からＳＴＣ再生部２へ送られる。映像ＰＥＳ信号ｃは、再生対象の映像符号化データ信号であり、Ｄｅｍｕｘ部１から映像デコーダ部４へ送られる。音声ＰＥＳ信号ｄは、再生対象の音声符号化データ信号であり、Ｄｅｍｕｘ部１から音声デコーダ部５へ送られる。【００１３】
ＳＴＣ再生部（基準時刻再生部）２は、Ｄｅｍｕｘ部１とＳＴＣ補正部３に接続している。また、ＳＴＣ再生部２は、Ｄｅｍｕｘ部１から入力したＰＣＲ信号ｂの値を用いてＳＴＣ信号ｅを再生する。例えば、ＳＴＣ再生部２としてＰＬＬ（Phase Locked Loop）回路を構築し、このＰＬＬ回路でＰＣＲ信号ｂからＳＴＣ信号ｅを再生する。このＳＴＣ信号ｅは、メディア再生開始時刻の同期の基準時刻を示す信号である。【００１４】
ＳＴＣ補正部（補正部）３は、ＳＴＣ再生部２、映像デコーダ部４及び音声デコーダ部５にそれぞれ接続している。ＳＴＣ補正部３は、ＳＴＣ再生部２からＳＴＣ信号ｅを入力する。また、ＳＴＣ補正部３は、映像デコーダ部４及び音声デコーダ部５に補正ＳＴＣ信号ｆを出力する一方、映像デコーダ部４から映像蓄積状況ｇを入力し、音声デコーダ部５から音声蓄積状況ｈを入力する。【００１５】
ＳＴＣ補正部３は、映像蓄積状況ｇ、音声蓄積状況ｈ及びＳＴＣ信号ｅを用いた判定処理でオフセット（Ｏｆｆｓｅｔ）を算出する。この判定処理については図２で後述する。ＳＴＣ補正部３は、下記式（１）に従って、上記オフセットの値をＳＴＣ信号ｅ（ＳＴＣ）の値に加算することにより、補正ＳＴＣ信号ｆ（補正ＳＴＣ）を求める。この補正ＳＴＣ信号ｆの値が、映像デコーダ部４及び音声デコーダ部５において使用されるメディア再生開始時刻の同期の基準となる基準時刻となる。
補正ＳＴＣ＝ＳＴＣ＋Ｏｆｆｓｅｔ      ・・・（１）【００１６】
映像デコーダ部（メディア再生部）４は、Ｄｅｍｕｘ部１及びＳＴＣ補正部３接続するとともに、映像信号ｉを出力するための映像出力信号線に接続している。また、映像デコーダ部４は、Ｄｅｍｕｘ部１から入力した映像ＰＥＳ信号ｃを逐次蓄積するバッファを備える。映像デコーダ部４は、映像ＰＥＳ信号ｃ中の各映像フレームをデコードして、上記各映像フレームに付されたＰＴＳの値が補正ＳＴＣ信号ｆの値より小さい間、上記バッファに映像ＰＥＳ信号ｃを蓄積する。一方、映像デコーダ部４は、上記各映像フレームに付されたＰＴＳの値と補正ＳＴＣ信号ｆの値が一致するタイミングで、上記デコード結果を映像信号ｉとして出力する。なお、各メディア（映像、音声）ストリームのＰＴＳ値は、上記各メディアストリームの再生開始時刻である。【００１７】
また、映像デコーダ部４では、上記バッファに蓄積した映像ＰＥＳ信号ｃの蓄積量と、映像ＰＥＳ信号ｃの先頭フレームから抽出したＰＴＳ値とからなる映像蓄積状況ｇを生成する。この映像蓄積状況ｇは、ＳＴＣ補正部３によるＳＴＣ補正処理に用いられる情報であり、映像デコーダ部４からＳＴＣ補正部３にフィードバックされる。【００１８】
音声デコーダ部（メディア再生部）５は、Ｄｅｍｕｘ部１及びＳＴＣ補正部３接続するとともに、音声信号ｊを出力するための音声出力信号線に接続している。また、音声デコーダ部５は、Ｄｅｍｕｘ部１から入力した音声ＰＥＳ信号ｄを逐次蓄積するバッファを備える。音声デコーダ部５は、音声ＰＥＳ信号ｄ中の各音声フレームをデコードして、上記各音声フレームに付されたＰＴＳの値が補正ＳＴＣ信号ｆの値より小さい間、上記バッファに音声ＰＥＳ信号ｄを蓄積する。一方、音声デコーダ部５は、上記各音声フレームに付されたＰＴＳの値と補正ＳＴＣ信号ｆの値が一致するタイミングで、上記デコード結果を音声信号ｊとして出力する。【００１９】
また、音声デコーダ部５では、上記バッファに蓄積した音声ＰＥＳ信号ｄの蓄積量と、音声ＰＥＳ信号ｄの先頭フレームから抽出したＰＴＳ値とからなる音声蓄積状況ｈを生成する。この音声蓄積状況ｈは、ＳＴＣ補正部３によるＳＴＣ補正処理に用いられる情報であり、音声デコーダ部５からＳＴＣ補正部３にフィードバックされる。【００２０】
次に動作について説明する。
図２は、図１中のＳＴＣ補正部によるＳＴＣ補正処理の流れを示すフローチャートであり、この図に沿ってＳＴＣ信号ｅの補正処理について詳細に説明する。
先ず、ＳＴＣ補正部３は、上記式（１）に従うＳＴＣ補正処理に使用するオフセット（Ｏｆｆｓｅｔ）の値を初期化する（ステップＳＴ１）。ここでは、Ｏｆｆｓｅｔ＝０に設定する。【００２１】
続いて、ＳＴＣ補正部３は、外部からの再生終了要求の有無を判定し、要求があればＳＴＣ補正処理を終了する（ステップＳＴ１−１）。要求がなければ、ＳＴＣ補正部３は、映像蓄積状況ｇとして映像デコーダ部４から入力した映像ＰＥＳ信号ｃの蓄積量が所定の閾値Ａ１以下であるか否かを判定し、音声蓄積状況ｈとして音声デコーダ部５から入力した音声ＰＥＳ信号ｄの蓄積量が所定の閾値Ａ２以下であるか否かを判定する。ＳＴＣ補正部３は、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがニアオーバーフロー状態であるか否かを判定する（ステップＳＴ２）。【００２２】
なお、閾値Ａ１，Ａ２は、例えば下記式（２）及び下記式（３）から求める。但し、映像ＰＥＳの蓄積可能容量とは、映像デコーダ部４における上記バッファの映像ＰＥＳ信号ｃの蓄積可能容量である。また、音声ＰＥＳの蓄積可能容量とは、音声デコーダ部５における上記バッファの音声ＰＥＳ信号ｄの蓄積可能容量である。
Ａ１＝映像ＰＥＳの蓄積可能容量×０．１      ・・・（２）
Ａ２＝音声ＰＥＳの蓄積可能容量×０．１      ・・・（３）【００２３】
ステップＳＴ２において、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図２中、ＮＯで示す）であると、ＳＴＣ補正部３は、ステップＳＴ３の処理に移行する。ここで、上記論理和が偽となるのは、映像ＰＥＳ信号ｃの蓄積量が閾値Ａ１を越えており、かつ音声ＰＥＳ信号ｄの蓄積量が閾値Ａ２を越えている場合である。このとき、デコーダ部４，５の双方のバッファは、ニアオーバーフロー状態ではないと判定される。【００２４】
また、ステップＳＴ２において、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図２中、ＹＥＳで示す）である場合、ＳＴＣ補正部３は、ステップＳＴ６の処理に移行する。ここで、上記論理和が真となるのは、映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄのいずれか一方の蓄積量が上記閾値以下であるか、若しくは、映像ＰＥＳ信号ｃの蓄積量が閾値Ａ１以下であり、かつ音声ＰＥＳ信号ｄの蓄積量が閾値Ａ２以下の場合である。このとき、デコーダ部４，５の少なくとも一方のバッファは、ニアオーバーフロー状態であると判定される。【００２５】
ステップＳＴ３において、ＳＴＣ補正部３は、映像蓄積状況ｇとして映像デコーダ部４から入力したＰＴＳ値（映像ＰＥＳ信号ｃの先頭フレームから抽出したＰＴＳ値）が補正ＳＴＣ信号ｆの値以下であるか否かを判定する。また、ＳＴＣ補正部３は、音声蓄積状況ｈとして音声デコーダ部５から入力したＰＴＳ値（音声ＰＥＳ信号ｄの先頭フレームから抽出したＰＴＳ値）が補正ＳＴＣ信号ｆの値以下であるか否かを判定する。ＳＴＣ補正部３は、これら判定結果の論理和の値に応じて再生開始条件を満たしているか否かを判定する。なお、再生開始条件とは、映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄについてのＰＴＳ値が補正ＳＴＣ信号ｆの値に一致する場合をいう。【００２６】
ここで、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図２中、ＮＯで示す）であると、ＳＴＣ補正部３は、ステップＳＴ２の処理に戻る。なお、上記論理和が偽となるのは、映像ＰＥＳ信号ｃについてのＰＴＳ値が補正ＳＴＣ信号ｆの値を越えており、かつ音声ＰＥＳ信号ｄについてのＰＴＳ値が補正ＳＴＣ信号ｆの値を越えている場合である。このとき、映像ＰＥＳ信号ｃと音声ＰＥＳ信号ｄの双方においてＰＴＳ値で示される時刻よりも補正ＳＴＣ信号ｆの値で示される時刻の方が進んでいる状態（ＳＴＣ進み状態）であると判定される。【００２７】
一方、ＳＴＣ補正部３は、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図２中、ＹＥＳで示す）であると、ステップＳＴ４の処理に移行する。ここで、上記論理和が真となるのは、映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄのいずれか一方のＰＴＳ値が補正ＳＴＣ信号ｆの値以下であるか、若しくは、映像ＰＥＳ信号ｃについてのＰＴＳ値が補正ＳＴＣ信号ｆの値以下であり、かつ音声ＰＥＳ信号ｄについてのＰＴＳ値が補正ＳＴＣ信号ｆの値以下の場合である。このとき、映像ＰＥＳ信号ｃと音声ＰＥＳ信号ｄの少なくとも一方は、ＰＴＳ値で示される時刻より補正ＳＴＣ信号ｆの値で示される時刻の方が遅れている状態（ＳＴＣ遅れ状態）であると判定される。【００２８】
このＳＴＣ補正処理で得られた補正ＳＴＣ信号ｆは、ＳＴＣ補正部３から映像デコーダ部４及び音声デコーダ部５に出力される。【００２９】
ＳＴＣ補正部３は、ステップＳＴ３で映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄの上記判定結果の論理和が真である場合、映像蓄積状況ｇにおける映像ＰＥＳ信号ｃの蓄積量が所定の閾値Ｂ１以上であるか否かを判定し、音声蓄積状況ｈにおける音声ＰＥＳ信号ｄの蓄積量が所定の閾値Ｂ２以上であるか否かを判定する。ＳＴＣ補正部３は、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがニアアンダーフロー状態であるか否かを判定する（ステップＳＴ４）。【００３０】
なお、閾値Ｂ１，Ｂ２は、例えば下記式（４）及び下記式（５）から求める。
Ｂ１＝映像ＰＥＳの蓄積可能容量×０．９      ・・・（４）
Ｂ２＝音声ＰＥＳの蓄積可能容量×０．９      ・・・（５）【００３１】
ステップＳＴ４において、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図２中、ＮＯで示す）であると、ＳＴＣ補正部３は、ステップＳＴ６−１の処理に移行する。ここで、上記論理和が偽となるのは、映像ＰＥＳ信号ｃの蓄積量が閾値Ｂ１未満であり、かつ音声ＰＥＳ信号ｄの蓄積量が閾値Ｂ２未満の場合である。このとき、デコーダ部４，５の双方のバッファは、ニアアンダーフロー状態ではないと判定される。【００３２】
また、ステップＳＴ４において、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図２中、ＹＥＳで示す）である場合、ＳＴＣ補正部３は、ステップＳＴ５の処理に移行する。ここで、上記論理和が真となるのは、映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄのいずれか一方の蓄積量が上記閾値以上であるか、若しくは、映像ＰＥＳ信号ｃの蓄積量が閾値Ｂ１以上であり、かつ音声ＰＥＳ信号ｄの蓄積量が閾値Ｂ２以上の場合である。このとき、デコーダ部４，５の少なくとも一方のバッファは、ニアアンダーフロー状態であると判定される。【００３３】
ステップＳＴ５において、ＳＴＣ補正部３は、バッファのニアアンダーフロー状態におけるオフセット計算処理を行う。具体的には、ＳＴＣ補正部３が、映像蓄積状況ｇにおけるＰＴＳ値と音声蓄積状況ｈにおけるＰＴＳ値のうち、最も小さいＰＴＳ値に対して、下記式（６）及び下記式（７）に従う演算を施すことにより、オフセット（Ｏｆｆｓｅｔ）を算出する。このオフセットをＳＴＣ信号ｅの値に加算することで、デコーダ部４，５での再生開始を遅らせる条件とすることができる。ＳＴＣ補正部３は、バッファのニアアンダーフロー状態でのオフセットを求めると、このオフセット値でステップＳＴ２からの処理を実行する。なお、想定映像ＰＥＳ入力レートとは、映像デコーダ部４へ入力される想定上の映像ＰＥＳ信号ｃの入力レートであり、映像ＰＥＳ信号ｃの仕様上の伝送レート等から想定される。また、想定音声ＰＥＳ入力レートは、音声デコーダ部５へ入力される想定上の音声ＰＥＳ信号ｄの入力レートであり、音声ＰＥＳ信号ｄの仕様上の伝送レート等から想定される。
Ｏｆｆｓｅｔ＝ＰＴＳ−ＳＴＣ−α      ・・・（６）
α＝（Ａ１／想定映像ＰＥＳ入力レート＋Ａ２／想定音声ＰＥＳ入力レート）／２
・・・（７）【００３４】
また、上述のオフセット計算は、各メディア（映像、音声）の入力レートを測定する入力レート測定部（不図示）を図１の構成に設けることにより、下記式（８）でαを求めるようにしてもよい。なお、測定映像ＰＥＳ入力レートとは、上記入力レート測定部で測定されたＤｅｍｕｘ部１から映像デコーダ部４への映像ＰＥＳ信号ｃの入力レートである。また、測定音声ＰＥＳ入力レートとは、上記入力レート測定部で測定されたＤｅｍｕｘ部１から音声デコーダ部５への音声ＰＥＳ信号ｄの入力レートである。
α＝（Ａ１／測定映像ＰＥＳ入力レート＋Ａ２／測定音声ＰＥＳ入力レート）／２
・・・（８）【００３５】
ステップＳＴ６において、ＳＴＣ補正部３は、バッファのニアオーバーフロー状態におけるオフセット計算処理を行う。具体的には、ＳＴＣ補正部３が、映像蓄積状況ｇにおけるＰＴＳ値と音声蓄積状況ｈにおけるＰＴＳ値のうち、最も大きいＰＴＳ値に対して下記式（９）に従う演算を施すことにより、オフセット（Ｏｆｆｓｅｔ）を算出する。このオフセットをＳＴＣ信号ｅの値に加算することで、デコーダ部４，５での再生開始を進める条件（直ちに再生開始させる条件）とすることができる。ＳＴＣ補正部３は、バッファのニアオーバーフロー状態におけるオフセットを求めると、ステップＳＴ６−１の処理に移行する。
Ｏｆｆｓｅｔ＝ＰＴＳ−ＳＴＣ      ・・・（９）【００３６】
ステップＳＴ６−１において、ＳＴＣ補正部３は、外部からの再生終了要求の有無を判定し、要求があればＳＴＣ補正処理を終了する。要求がなければ、ＳＴＣ補正部３は、ステップＳＴ７に移行して、映像蓄積状況ｇにおける映像ＰＥＳ信号ｃの蓄積量が映像デコーダ部４のバッファの蓄積可能容量であるか否かを判定し、音声蓄積状況ｈにおける音声ＰＥＳ信号ｄの蓄積量が音声デコーダ部５のバッファの蓄積可能容量であるか否かを判定する。ＳＴＣ補正部３は、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがオーバーフロー状態であるか否かを判定する。【００３７】
ここで、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図２中、ＮＯで示す）であると、ＳＴＣ補正部３は、ステップＳＴ８の処理に移行する。ここで、上記論理和が偽となるのは、映像ＰＥＳ信号ｃの蓄積量が上記蓄積可能容量に達しておらず、かつ音声ＰＥＳ信号ｄの蓄積量が上記蓄積可能容量に達していない場合である。このとき、デコーダ部４，５の双方のバッファは、オーバーフロー状態ではないと判定される。【００３８】
また、ＳＴＣ補正部３は、ステップＳＴ７において、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図２中、ＹＥＳで示す）である場合、ステップＳＴ９の処理に移行する。ここで、上記論理和が真となるのは、映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄのいずれか一方の蓄積量が上記蓄積可能容量であるか、若しくは、映像ＰＥＳ信号ｃの蓄積量が上記蓄積可能容量であり、かつ音声ＰＥＳ信号ｄの蓄積量が上記蓄積可能容量の場合である。このとき、デコーダ部４，５の少なくとも一方のバッファは、オーバーフロー状態であると判定される。【００３９】
ＳＴＣ補正部３は、デコーダ部４，５の双方のバッファがオーバーフロー状態でないと判定すると、デコーダ部４，５の双方のバッファがアンダーフロー状態であるか否かを判定する（ステップＳＴ８）。具体的には、ＳＴＣ補正部３が、映像蓄積状況ｇにおける映像ＰＥＳ信号ｃの蓄積量が０であるか否かを判定し、音声蓄積状況ｈにおける音声ＰＥＳ信号ｄの蓄積量が０であるか否かを判定し、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがアンダーフロー状態であるか否かを判定する。【００４０】
ここで、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図２中、ＮＯで示す）であると、ＳＴＣ補正部３は、ステップＳＴ６−１の処理に戻る。ここで、上記論理和が偽となるのは、映像ＰＥＳ信号ｃの蓄積量が０ではなく、かつ音声ＰＥＳ信号ｄの蓄積量が０でない場合である。このとき、デコーダ部４，５の双方のバッファは、アンダーフロー状態ではないと判定される。【００４１】
また、ステップＳＴ８において、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図２中、ＹＥＳで示す）である場合、ＳＴＣ補正部３は、ステップＳＴ２の処理に戻る。ここで、上記論理和が真となるのは、映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄのいずれか一方の蓄積量が０であるか、若しくは、映像ＰＥＳ信号ｃの蓄積量が０であり、かつ音声ＰＥＳ信号ｄの蓄積量が０の場合である。このとき、デコーダ部４，５の少なくとも一方のバッファは、アンダーフロー状態であると判定される。【００４２】
一方、ＳＴＣ補正部３は、ステップＳＴ７においてバッファがオーバーフロー状態であると判定すると、オーバーフロー状態におけるオフセット計算処理を行う（ステップＳＴ９）。具体的には、ＳＴＣ補正部３が、映像蓄積状況ｇにおけるＰＴＳ値と音声蓄積状況ｈにおけるＰＴＳ値のうち、最も大きいＰＴＳ値に対して、下記式（１０）及び下記式（１１）に従う演算を施すことにより、オフセット（Ｏｆｆｓｅｔ）を算出する。このオフセットをＳＴＣ信号ｅの値に加算することで、デコーダ部４，５でメディアストリーム中のいくつかフレームをスキップする条件とすることができる。ＳＴＣ補正部３は、バッファのオーバーフロー状態におけるオフセットを求めると、このオフセット値でステップＳＴ７からの処理を実行する。
Ｏｆｆｓｅｔ＝ＰＴＳ−ＳＴＣ＋β      ・・・（１０）
β＝（Ｂ１／想定映像ＰＥＳ入力レート＋Ｂ２／想定音声ＰＥＳ入力レート）／２
・・・（１１）【００４３】
また、上述のオフセット計算は、各メディア（映像、音声）の入力レートを測定する入力レート測定部（不図示）を図１の構成に設けることにより、下記式（１２）でβを求めるようにしてもよい。
α＝（Ｂ１／測定映像ＰＥＳ入力レート＋Ｂ２／測定音声ＰＥＳ入力レート）／２
・・・（１２）【００４４】
ＳＴＣ補正部３は、再生開始条件が満たされるまで、ステップＳＴ２からステップＳＴ９までの処理を繰り返す。このようにして求められた補正ＳＴＣ信号ｆは、ＳＴＣ補正部３から映像デコーダ部４及び音声デコーダ部５に出力される。映像デコーダ部４及び音声デコーダ部５では、補正ＳＴＣ信号ｆの値を用いて再生処理を実行し、映像信号ｉ及び音声信号ｊを出力する。【００４５】
以上のように、この実施の形態１によれば、再生対象のＭＰＥＧ−ＴＳ信号データのＰＴＳの同期の基準となるＳＴＣ信号ｅを再生するＳＴＣ再生部２と、ＳＴＣ信号ｅを補正して補正ＳＴＣ信号ｆを生成するＳＴＣ補正部３と、ＭＰＥＧ−ＴＳ信号データを逐次蓄積し、補正ＳＴＣ信号ｆの値とＭＰＥＧ−ＴＳ信号データのＰＴＳの値が同期したタイミングでＭＰＥＧ−ＴＳ信号データを再生する映像デコーダ部４及び音声デコーダ部５とを備え、ＳＴＣ補正部３が、映像デコーダ部４及び音声デコーダ部５での連続メディアデータの蓄積状況と、映像デコーダ部４及び音声デコーダ部５に蓄積されているＭＰＥＧ−ＴＳ信号データのＰＴＳの値に応じてＳＴＣ信号ｅを補正する。
このようにすることにより、ＰＴＳの値とＳＴＣの値が大きく離れて各メディアのＰＴＳに対してＳＴＣの値が定常的にオフセットを持っているような場合であっても、メディア間で同期を保ちつつ、ＭＰＥＧ−ＴＳ信号データの再生を行うことができる。また、ＭＰＥＧ−ＴＳ信号データの蓄積状況を考慮してデコーダ部４，５のバッファがバッファオーバー状態やバッファアンダー状態にならないようにＳＴＣ信号を補正することから、デコーダ部４，５のバッファにおけるバッファオーバーフローやバッファアンダーフローの発生を抑制することができる。【００４６】
実施の形態２．
図３は、この発明の実施の形態２によるメディア再生装置の構成を示すブロック図であり、ＭＰＥＧ−２規格に準拠したＭＰＥＧデコーダを例として示している。図３において、実施の形態２によるＭＰＥＧデコーダは、Ｄｅｍｕｘ部１、ＳＴＣ再生部２、ＳＴＣ補正部３ａ、映像デコーダ部４、音声デコーダ部５及び速度変換部６を備える。Ｄｅｍｕｘ部１、ＳＴＣ再生部２、映像デコーダ部４及び音声デコーダ部５は、上記実施の形態１で示した図１の構成と同様である。【００４７】
ＳＴＣ補正部（補正部）３ａは、ＳＴＣ再生部２、映像デコーダ部４、音声デコーダ部５及び速度変換部６にそれぞれ接続している。ＳＴＣ補正部３ａは、ＳＴＣ再生部２からＳＴＣ信号ｅを入力する。また、ＳＴＣ補正部３ａは、映像デコーダ部４及び音声デコーダ部５に補正ＳＴＣ信号ｆを出力する一方、映像デコーダ部４から映像蓄積状況ｇを入力し、音声デコーダ部５から音声蓄積状況ｈを入力する。さらに、ＳＴＣ補正部３ａは、速度変換部６に速度指示信号ｋを出力する。【００４８】
ＳＴＣ補正部３ａは、映像蓄積状況ｇ、音声蓄積状況ｈ及びＳＴＣ信号ｅを用いた判定処理でオフセット（Ｏｆｆｓｅｔ）を算出する。この判定処理については図４で後述する。ＳＴＣ補正部３ａは、上記式（１）に従って、上記オフセットの値をＳＴＣ信号ｅ（ＳＴＣ）の値に加算することにより、補正ＳＴＣ信号ｆ（補正ＳＴＣ）を求める。【００４９】
上述したオフセット算出処理において、ＳＴＣ補正部３ａは、オフセットを所定の閾値内で増加させる必要がある場合、速度変換部６へ映像信号ｉや音声信号ｊの提示速度を大きくする速度指示信号ｋを出力するとともに、オフセットの値を徐々に増加させる。一方、オフセットを上記閾値内で減少させる必要がある場合、ＳＴＣ補正部３ａは、速度変換部６へ映像信号ｉや音声信号ｊの提示速度を小さくする速度指示信号ｋを出力するとともに、オフセットの値を徐々に減少させる。【００５０】
速度変換部６は、速度指示信号ｋを入力するための信号線を介してＳＴＣ補正部３ａに接続するとともに、映像信号ｉを出力するための映像出力信号線を介して映像デコーダ部４と接続しており、音声信号ｊを出力するための音声出力信号線を介して音声デコーダ部５と接続している。また、速度変換部６は、速度変換映像信号ｌを出力するための出力用信号線に接続し、速度変換音声信号ｍを出力するための出力用信号線に接続している。【００５１】
また、速度変換部６は、映像信号ｉの提示速度を速度指示信号ｋで指示された値に変換した速度変換映像信号ｌを算出し、音声信号ｊの提示速度を速度指示信号ｋで指示された値に変換した速度変換音声信号ｍを算出する。映像信号ｉの提示速度変換は、例えば映像フレームをリピート又はスキップする方法や、映像フレームの中間画像を生成して出力する方法が考えられる。音声信号ｊの提示速度変換については、例えば音声信号ｊのサンプリング周波数を変換する方法や、音声信号ｊの周期を検出した上で周期単位で挿入や削除を行う方法がある。【００５２】
次に動作について説明する。
図４は、図３中のＳＴＣ補正部によるＳＴＣ補正処理の流れを示すフローチャートであり、この図に沿ってＳＴＣ信号ｅの補正処理について詳細に説明する。
先ず、ＳＴＣ補正部３ａは、上記式（１）に従うＳＴＣ補正処理に使用するオフセット（Ｏｆｆｓｅｔ）の値と速度指示信号ｋで指示する提示速度Ｖの値を初期化する（ステップＳＴ１ａ）。ここでは、Ｏｆｆｓｅｔ＝０、提示速度Ｖ＝０に設定する。【００５３】
続いて、ＳＴＣ補正部３ａは、外部からの再生終了要求の有無を判定し、要求があればＳＴＣ補正処理を終了する（ステップＳＴ１ａ−１）。要求がなければ、ＳＴＣ補正部３ａは、映像蓄積状況ｇとして映像デコーダ部４から入力した映像ＰＥＳ信号ｃの蓄積量が所定の閾値Ａ１以下であるか否かを判定し、音声蓄積状況ｈとして音声デコーダ部５から入力した音声ＰＥＳ信号ｄの蓄積量が所定の閾値Ａ２以下であるか否かを判定する。ＳＴＣ補正部３ａは、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがニアオーバーフロー状態であるか否かを判定する（ステップＳＴ２ａ）。なお、閾値Ａ１，Ａ２は、上記式（２）及び上記式（３）から求める。【００５４】
ステップＳＴ２ａにおいて、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図４中、ＮＯで示す）であると、ＳＴＣ補正部３ａは、ステップＳＴ３ａの処理に移行する。また、ＳＴＣ補正部３ａは、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図４中、ＹＥＳで示す）である場合、ステップＳＴ６ａの処理に移行する。【００５５】
ステップＳＴ３ａにおいて、ＳＴＣ補正部３ａは、映像蓄積状況ｇとして映像デコーダ部４から入力したＰＴＳ値（映像ＰＥＳ信号ｃの先頭フレームから抽出したＰＴＳ値）が補正ＳＴＣ信号ｆの値以下であるか否かを判定する。また、ＳＴＣ補正部３ａは、音声蓄積状況ｈとして音声デコーダ部５から入力したＰＴＳ値（音声ＰＥＳ信号ｄの先頭フレームから抽出したＰＴＳ値）が補正ＳＴＣ信号ｆの値以下であるか否かを判定する。ＳＴＣ補正部３ａは、これら判定結果の論理和の値に応じて再生開始条件を満たしているか否かを判定する。なお、再生開始条件とは、映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄについてのＰＴＳ値が補正ＳＴＣ信号ｆの値に一致する場合をいう。【００５６】
ここで、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図４中、ＮＯで示す）であると、ＳＴＣ補正部３ａは、ステップＳＴ２ａの処理に戻る。このとき、映像ＰＥＳ信号ｃと音声ＰＥＳ信号ｄの双方においてＰＴＳ値で示される時刻よりも補正ＳＴＣ信号ｆの値で示される時刻の方が進んでいる状態（ＳＴＣ進み状態）であると判定される。【００５７】
一方、ＳＴＣ補正部３ａは、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図４中、ＹＥＳで示す）であると、ステップＳＴ４ａの処理に移行する。このとき、映像ＰＥＳ信号ｃと音声ＰＥＳ信号ｄの少なくとも一方は、ＰＴＳ値で示される時刻より補正ＳＴＣ信号ｆの値で示される時刻の方が遅れている状態（ＳＴＣ遅れ状態）であると判定される。【００５８】
このＳＴＣ補正処理で得られた補正ＳＴＣ信号ｆは、ＳＴＣ補正部３ａから映像デコーダ部４及び音声デコーダ部５に出力される。【００５９】
ＳＴＣ補正部３ａは、ステップＳＴ３ａで映像ＰＥＳ信号ｃ及び音声ＰＥＳ信号ｄの上記判定結果の論理和が真である場合、映像蓄積状況ｇにおける映像ＰＥＳ信号ｃの蓄積量が所定の閾値Ｂ１以上であるか否かを判定し、音声蓄積状況ｈにおける音声ＰＥＳ信号ｄの蓄積量が所定の閾値Ｂ２以上であるか否かを判定する。ＳＴＣ補正部３ａは、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがニアアンダーフロー状態であるか否かを判定する（ステップＳＴ４ａ）。なお、閾値Ｂ１，Ｂ２は、上記式（４）及び上記式（５）から求める。【００６０】
ステップＳＴ４ａにおいて、ＳＴＣ補正部３ａは、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図４中、ＮＯで示す）であると、ステップＳＴ６ａ−１の処理に移行する。このとき、デコーダ部４，５の双方のバッファは、ニアアンダーフロー状態ではないと判定される。【００６１】
また、ステップＳＴ４ａにおいて、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図４中、ＹＥＳで示す）である場合、ＳＴＣ補正部３ａは、ステップＳＴ５ａの処理に移行する。このとき、デコーダ部４，５の少なくとも一方のバッファは、ニアアンダーフロー状態であると判定される。【００６２】
ステップＳＴ５ａにおいて、ＳＴＣ補正部３ａは、バッファのニアアンダーフロー状態におけるオフセット計算処理を行う。具体的には、ＳＴＣ補正部３ａが、映像蓄積状況ｇにおけるＰＴＳ値と音声蓄積状況ｈにおけるＰＴＳ値のうち、最も小さいＰＴＳ値に対して上記式（６）及び上記式（７）（若しくは、上記式（８））に従う演算を施すことにより、オフセット（Ｏｆｆｓｅｔ）を算出する。ＳＴＣ補正部３ａは、バッファのニアアンダーフロー状態におけるオフセットを求めると、このオフセット値でステップＳＴ２ａからの処理を実行する。【００６３】
ステップＳＴ６ａにおいて、ＳＴＣ補正部３ａは、バッファのニアオーバーフロー状態におけるオフセット計算処理を行う。具体的には、ＳＴＣ補正部３ａが、映像蓄積状況ｇにおけるＰＴＳ値と音声蓄積状況ｈにおけるＰＴＳ値のうち、最も大きいＰＴＳ値に対して上記式（９）に従う演算を施すことにより、オフセット（Ｏｆｆｓｅｔ）を算出する。ＳＴＣ補正部３ａは、バッファのニアオーバーフロー状態におけるオフセットを求めると、ステップＳＴ７ａの処理に移行する。【００６４】
ステップＳＴ６ａ−１において、ＳＴＣ補正部３ａは、外部からの再生終了要求の有無を判定し、要求があればＳＴＣ補正処理を終了する。要求がなければ、ＳＴＣ補正部３ａは、ステップＳＴ７ａに移行して、前回処理からの経過時刻Δｔに対して、提示速度Ｖと経過時刻Δｔとの積をオフセットに加える処理を行う。この後、ＳＴＣ補正部３ａは、映像蓄積状況ｇにおける映像ＰＥＳ信号ｃの蓄積量が映像デコーダ部４のバッファの蓄積可能容量であるか否かを判定し、音声蓄積状況ｈにおける音声ＰＥＳ信号ｄの蓄積量が音声デコーダ部５のバッファの蓄積可能容量であるか否かを判定する。ＳＴＣ補正部３ａは、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがバッファオーバーフロー状態であるか否かを判定する（ステップＳＴ８ａ）。【００６５】
ここで、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図４中、ＮＯで示す）であると、ＳＴＣ補正部３ａは、ステップＳＴ９ａの処理に移行する。このとき、デコーダ部４，５の双方のバッファは、オーバーフロー状態ではないと判定される。一方、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図４中、ＹＥＳで示す）であると、ＳＴＣ補正部３ａは、ステップＳＴ１６ａの処理に移行する。このとき、デコーダ部４，５の少なくとも一方のバッファは、オーバーフロー状態であると判定される。【００６６】
ＳＴＣ補正部３ａは、デコーダ部４，５の双方のバッファがバッファオーバーフロー状態でないと判定すると、デコーダ部４，５の双方のバッファがバッファアンダー状態であるか否かを判定する（ステップＳＴ９ａ）。具体的には、ＳＴＣ補正部３ａが、映像蓄積状況ｇにおける映像ＰＥＳ信号ｃの蓄積量が０であるか否かを判定し、音声蓄積状況ｈにおける音声ＰＥＳ信号ｄの蓄積量が０であるか否かを判定して、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがアンダーフロー状態であるか否かを判定する。【００６７】
ここで、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図４中、ＮＯで示す）であると、ＳＴＣ補正部３ａは、ステップＳＴ１１ａの処理に移行する。このとき、デコーダ部４，５の双方のバッファは、アンダーフロー状態ではないと判定される。【００６８】
また、ステップＳＴ９ａにおいて、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図４中、ＹＥＳで示す）である場合、ＳＴＣ補正部３ａは、ステップＳＴ１０ａの処理に移行する。このとき、デコーダ部４，５の少なくとも一方のバッファは、アンダーフロー状態であると判定される。【００６９】
ステップＳＴ１０ａにおいて、ＳＴＣ補正部３ａは、速度指示信号ｋで指示する提示速度Ｖの値を初期化する。ここでは、提示速度Ｖ＝０に設定する。この後、ＳＴＣ補正部３ａは、ステップＳＴ２ａに戻り、ステップＳＴ２ａからの上記処理を繰り返す。【００７０】
ステップＳＴ１１ａにおいて、ＳＴＣ補正部３ａは、映像蓄積状況ｇとして映像デコーダ部４から入力した映像ＰＥＳ信号ｃの蓄積量が所定の閾値Ａ１以下であるか否かを判定し、音声蓄積状況ｈとして音声デコーダ部５から入力した音声ＰＥＳ信号ｄの蓄積量が所定の閾値Ａ２以下であるか否かを判定する。ＳＴＣ補正部３ａは、これら判定結果の論理和の値に応じてデコーダ部４，５の各バッファがニアオーバーフロー状態であるか否かを判定する。【００７１】
ここで、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図４中、ＮＯで示す）であると、ＳＴＣ補正部３ａは、ステップＳＴ１２ａの処理に移行する。また、ＳＴＣ補正部３ａは、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図４中、ＹＥＳで示す）である場合、ステップＳＴ１４ａの処理に移行する。【００７２】
ステップＳＴ１２ａにおいて、ＳＴＣ補正部３ａは、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が偽（図４中、ＮＯで示す）であると、ステップＳＴ１３ａの処理に移行する。このとき、デコーダ部４，５の双方のバッファは、ニアアンダー状態ではないと判定される。一方、映像ＰＥＳ信号ｃについての上記判定結果と音声ＰＥＳ信号ｄについての上記判定結果との論理和が真（図４中、ＹＥＳで示す）である場合、ＳＴＣ補正部３ａは、ステップＳＴ１５ａの処理に移行する。このとき、デコーダ部４，５の少なくとも一方のバッファは、ニアアンダーフロー状態であると判定される。【００７３】
ＳＴＣ補正部３ａは、ステップＳＴ１３ａにおいて提示速度を０に近づける処理を実行する。具体的には、ＳＴＣ補正部３ａが、提示速度Ｖが正の値ならば、提示速度Ｖから所定値γを減算してゆき、提示速度Ｖが０を下回ると０に戻す。一方、提示速度Ｖが負の値ならば、提示速度Ｖに上記所定値γを加算してゆき、提示速度Ｖが０を上回ると０に戻す処理を行う。なお、所定値γは、正の値（γ＞０）であればよい。また、所定値γには、このステップＳＴ１３ａ、後述するステップＳＴ１４ａ、ステップＳＴ１５ａの各処理においてそれぞれ異なる値を設定してもよい。このようにして、速度指示信号ｋで指示する提示速度の値を０に近付けた後、ＳＴＣ補正部３ａは、ステップＳＴ７ａの処理に戻る。【００７４】
ステップＳＴ１１ａにおいてデコーダ部４，５のバッファがニアオーバーフロー状態であると判定すると、ＳＴＣ補正部３ａは、速度指示信号ｋで指示する提示速度の値に上記所定値γを加算する（ステップＳＴ１４ａ）。この後、ＳＴＣ補正部３ａは、ステップＳＴ７ａに戻って、ステップＳＴ７ａからの上記処理を繰り返す。【００７５】
また、ステップＳＴ１２ａにおいて、デコーダ部４，５のバッファがニアアンダーフロー状態であると判定すると、ＳＴＣ補正部３ａは、速度指示信号ｋで指示する提示速度の値から上記所定値γを減算する（ステップＳＴ１５ａ）。この後、ＳＴＣ補正部３ａは、ステップＳＴ７ａに戻って、ステップＳＴ７ａからの上記処理を繰り返す。【００７６】
一方、ステップＳＴ１６ａにおいて、ＳＴＣ補正部３ａは、映像蓄積状況ｇにおけるＰＴＳ値と音声蓄積状況ｈにおけるＰＴＳ値のうち、最も大きいＰＴＳ値に対して、上記式（１０）及び上記式（１１）に従う演算を施すことにより、オフセット（Ｏｆｆｓｅｔ）を算出する。また、ＳＴＣ補正部３ａは、速度指示信号ｋで指示する提示速度Ｖの値を初期化する。ここでは、提示速度Ｖ＝０に設定する。この後、ＳＴＣ補正部３ａは、ステップＳＴ７ａに戻り、ステップＳＴ７ａからの上記処理を繰り返す。【００７７】
ＳＴＣ補正部３ａは、再生開始条件が満たされるまで、ステップＳＴ２ａからステップＳＴ１６ａまでの処理を繰り返す。このようにして求められた補正ＳＴＣ信号ｆは、ＳＴＣ補正部３ａから映像デコーダ部４及び音声デコーダ部５に出力される。映像デコーダ部４及び音声デコーダ部５では、補正ＳＴＣ信号ｆの値を用いて再生処理を実行し、映像信号ｉ及び音声信号ｊを出力する。【００７８】
また、ＳＴＣ補正部３ａは、映像デコーダ部４及び音声デコーダ部５によるメディア再生中にそのバッファがニアオーバーフロー状態若しくはニアアンダーフロー状態となった場合、上述のようにして速度指示信号ｋで指示する提示速度を調節し、この提示速度に応じてオフセットの値を逐次修正する。これにより、速度指示信号ｋを入力した速度変換部６が、速度指示信号ｋで指示された提示速度に映像信号ｉ及び音声信号ｊを変換する。【００７９】
以上のように、この実施の形態２によれば、映像デコーダ部４及び音声デコーダ部５で再生されたメディアデータの提示速度を指示に応じた値に変換する速度変換部６を備え、ＳＴＣ補正部３ａが、映像デコーダ部４及び音声デコーダ部５でのＭＰＥＧ−ＴＳ信号データの蓄積状況に応じて調節した提示速度の値を速度変換部６に指示するので、オフセット調整時の画音の途切れを防ぎつつ、バッファのオーバーフローやアンダーフローの発生を抑えることができる。【００８０】
なお、上記実施の形態１，２では、ＭＰＥＧデコーダを例として説明したが、ＭＰＥＧ方式の符号化データに限定されるものではない。例えば、ＡＶＩデータを再生対象として扱う装置にも適用可能である。
【産業上の利用可能性】
【００８１】
以上のように、この発明に係るメディア再生装置は、メディア間での同期を保ったメディア再生を安定して行うことができることから、デジタルテレビ受像機等のＭＰＥＧデコーダに用いるのに適している。
【図１】
2009090728.tif 000003
【図２】
2009090728.tif 000004
【図３】
2009090728.tif 000005
【図４】
2009090728.tif 000006
【国際調査報告】
2009090728.tif 000007
2009090728.tif 000008
2009090728.tif 000009
2009090728.tif 000010
2009090728.tif 000011