(57)【要約】【課題】ＴＳパケットの欠落が生じてもタイムベース切り替えを正しく検出可能なストリーム再生装置を提供する。【解決手段】符号化された映像又は音声データが格納されているＥＳ及びＰＣＲを備えたパケットを受信する受信部１０４と；パケット中のＰＣＲと、パケットよりも前に受信された他のパケット中の前ＰＣＲとの差分が予め定める第１時間閾値以上であればタイムベース切り替えを検出する検出部１１６と；パケットの受信時刻から第１時間閾値より短い第２時間閾値経過後に現在時刻を通知するタイマ１１８と；通知を受けると、ＰＣＲに基づいて算出した値をＰＣＲとするパケットを生成して受信部に渡す生成部１１９と；ＥＳから映像又は音声データを復号するデコーダ１０９及び１１３と；映像または音声データを再生する再生部１１０及び１１５と；を具備する【選択図】      図１
2008271253.tif 000002
【特許請求の範囲】
【請求項１】
符号化された映像又は音声データが格納されているエレメンタリ・ストリーム及びプログラム時刻参照値を備えたパケットを受信する受信部と、
前記パケット中のプログラム時刻参照値と、当該パケットよりも前に受信された他のパケット中の前プログラム時刻参照値との差分が予め定める第１時間閾値以上であればタイムベース切り替えを検出する検出部と、
前記パケットの受信時刻から前記第１時間閾値より短い第２時間閾値経過後に現在時刻を通知するタイマと、
前記通知を受けると、前記プログラム時刻参照値に基づいて算出した値をプログラム時刻参照値とするパケットを生成して前記受信部に渡す生成部と、
前記エレメンタリ・ストリームから前記映像又は音声データを復号するデコーダと、
前記映像または音声データを再生する再生部と
を具備することを特徴とするストリーム再生装置。
【請求項２】
前記生成部は、前記通知を受けると、前記プログラム時刻参照値に前記第２閾値を加算した値をプログラム時刻参照値とするパケットを生成して前記受信部に渡すことを特徴とする請求項１記載のストリーム再生装置。
【請求項３】
前記生成部は、前記通知を受けると、前記プログラム時刻参照値に前記受信時刻から前記現在時刻までの増分を加算した値をプログラム時刻参照値とするパケットを生成して前記受信部に渡すことを特徴とする請求項１記載のストリーム再生装置。
【請求項４】
前記第２時間閾値は、前記パケットが送信される最大周期に相当することを特徴とする請求項１記載のストリーム再生装置。
【請求項５】
前記検出部は、前記前プログラム時刻参照値が存在しなければ前記検出を省略することを特徴とする請求項１記載のストリーム再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トランスポート・ストリームによって伝送される映像又は音声データを再生する装置に関する。
【背景技術】
【０００２】
第３世代を基本とする携帯電話で受信する地上波デジタル放送（ワンセグ）では、映像データはＨ．２６４／ＡＶＣで符号化され、音声データはＭＰＥＧ−２  ＡＡＣで符号化される。これら符号化された映像データ及び音声データは、エレメンタリ・ストリーム（以下、単にＥＳと称する）と呼ばれ、パケット化エレメンタリ・ストリームパケット（以下、単にＰＥＳパケットと称する）としてＭＰＥＧ−２  ｓｙｓｔｅｍｓ中のトランスポート・ストリームに多重化されて伝送されている。トランスポート・ストリームには、トランスポート・ストリームパケット（以下、単にＴＳパケットと称する）が配列されている。ＴＳパケット中には、映像データ及び音声データを構成するビットストリームの種類（属性）を示す属性情報、ビットストリーム、及びメディア間の同期をとるためのプログラム時刻参照値（以下、単にＰＣＲと称する）と称される基準クロック情報などを格納させることができ、無線または有線を介して伝送される。
【０００３】
ＰＣＲは、送信側に対してクロック同期を取るためのシステム・タイム・クロック（以下、単にＳＴＣと称する）の制御に用いられる。具体的には、例えば非特許文献１で開示されているように、送信側のＰＣＲを２７ＭＨｚでサンプリングした値を抽出し、受信側のＳＴＣのカウント値と比較することによりＳＴＣを調整している（クロック・リカバリ）。受信側では、ＳＴＣカウンタによってカウントされたＳＴＣがＴＳパケットに含まれる表示時刻タイム・スタンプ（以下、単にＰＴＳと称する）以上になると、ＥＳが同期再生される。また、ＰＣＲによるクロックの調整は行わず、受信したＰＣＲをＳＴＣカウンタにロードすることにより、簡易な構成で送信側と同期を取る手法も知られている。
【０００４】
また、トランスポート・ストリームの途中でタイムベースが切り替わることがある。タイムベース切り替えが検出されると、ＰＣＲやＰＴＳの初期値設定を含むリセット処理が実行される必要がある。タイムベース切り替えを検出するための方法の１つとして、特許文献１に開示されているように、ＴＳパケット中のアダプテーション・フィールド（Ａｄａｐｔａｔｉｏｎ  ｆｉｅｌｄ）に含まれる不連続表示（ｄｉｓｃｏｎｔｉｎｕｉｔｙ  ｉｎｄｉｃａｔｏｒ）を参照することが挙げられる。タイムベースが切り替わると、送信側では不連続表示を「１」としてＴＳパケットを送信するため、受信側の受信環境が良好であればタイムベース切り替えを正しく検出できる。
【０００５】
また、受信したＴＳパケットに含まれるＰＣＲと当該ＴＳパケット受信時のＳＴＣとの差分を予め定める閾値と比較することにより、タイムベース切り替えを検出する手法がある。一方、ＰＣＲを含むＴＳパケットを受信する毎に、前回受信したＰＣＲとの差分を算出し、この差分を予め定める閾値と比較することによりタイムベース切り替えを検出する手法もある。
【特許文献１】特開２０００−２８７１７２号公報
【非特許文献１】亀山渉、花村剛監修、「改訂版  デジタル放送教科書  上」、インプレス、２００４年１０月、ｐ８５−８７
【発明の開示】
【発明が解決しようとする課題】
【０００６】
不連続表示を用いてタイムベース切り替えを検出する場合、タイムベース切り替えを見落とすおそれがある。即ち、不連続表示が「１」のＴＳパケットをエラーなどにより受信できないと、タイムベース切り替えを検出できない。従って、例えば弱電界環境では受信エラーが起こりやすくタイムベース切り替えの正確な検出を期待できない。
【０００７】
また、前回受信したＰＣＲとの差分を用いてタイムベース切り替えを検出する場合、タイムベース切り替えが誤検出されるおそれがある。即ち、受信エラーなどによりＰＣＲの欠落が生じた間におけるＰＣＲの増分が上記閾値以上となると、ＰＣＲを再び受信した際にタイムベース切り替えが誤検出されてしまう。
【０００８】
また、ＳＴＣとＰＣＲの差分を用いてタイムベース切り替えを検出する場合、タイムベース切り替えの検出精度が送受間の同期の精度に依存する問題がある。即ち、前述したクロック・リカバリを行わない構成では送受間にクロック誤差が生じることがあるため、受信エラーなどにより受信側のＳＴＣカウンタにＰＣＲを長期間ロードできないと、当該クロック誤差が蓄積され、タイムベース切り替えが誤検出されてしまう。
【０００９】
従って、本発明は、ＴＳパケットの欠落が生じてもタイムベース切り替えを正しく検出可能なストリーム再生装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一態様に係るストリーム再生装置は、符号化された映像又は音声データが格納されているエレメンタリ・ストリーム及びプログラム時刻参照値を備えたパケットを受信する受信部と；前記パケット中のプログラム時刻参照値と、当該パケットよりも前に受信された他のパケット中の前プログラム時刻参照値との差分が予め定める第１時間閾値以上であればタイムベース切り替えを検出する検出部と；前記パケットの受信時刻から前記第１時間閾値より短い第２時間閾値経過後に現在時刻を通知するタイマと；前記通知を受けると、前記プログラム時刻参照値に基づいて算出した値をプログラム時刻参照値とするパケットを生成して前記受信部に渡す生成部と；前記エレメンタリ・ストリームから前記映像又は音声データを復号するデコーダと；前記映像または音声データを再生する再生部と；を具備する。
【発明の効果】
【００１１】
本発明によれば、ＴＳパケットの欠落が生じてもタイムベース切り替えを正しく検出可能なストリーム再生装置を提供できる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明の一実施形態について説明する。  
図１に示すように、本発明の一実施形態に係るストリーム再生装置は、アンテナ１０１、チューナ１０２、復調部１０３、パケット受信部１０４、シンタックス解析部１０５、ＰＩＤフィルタ１０６、ＥＳ抽出部１０７、バッファ１０８、デコーダ１０９、ディスプレイ１１０、ＥＳ抽出部１１１、バッファ１１２、デコーダ１１３、ＤＡＣ１１４、スピーカ１１５、タイムベース不連続検出部１１６、ＳＴＣ制御１１７、タイマ１１８及びＰＣＲパケット生成部１１９を有する。
【００１３】
アンテナ１０１は、放送局から送信される放送波を受信し、チューナ１０２へと転送する。チューナ１０２は、アンテナ１０１が受信した放送波から再生対象のチャンネルを選局する。復調部１０３は、チューナ１０２が選局したチャンネルにおいて伝送される信号からトランスポート・ストリームを復調する。
【００１４】
パケット受信部１０４は、復調部１０３によって復調されたトランスポート・ストリームをＴＳパケット単位で受信し、シンタックス解析部１０５へと転送する。図２に示すように、ＴＳパケットは４バイトのＴＳヘッダを先頭とし、任意に設けることができるフィールドである適合フィールド、即ちアダプテーション・フィールド（Ａｄａｐｔａｔｉｏｎ  ｆｉｅｌｄ）及びペイロードからなる１８８バイトの固定長のパケットとして構成される。また、トランスポート・ストリームには図２中段に示すように、ＴＳパケットが配列されている。尚、図２中段では便宜上ＴＳヘッダとアダプテーション・フィールドを併せてヘッダと表現している。
【００１５】
図３（ａ）に示すようにＴＳヘッダには、１３ビット長のパケット識別子（ＰＩＤ）が格納されており、これによって例えばＴＳパケットが映像データ及び音声データのいずれを伝送しているかを判別できる。即ち、同一の映像データ及び同一の音声データは夫々同じＰＩＤを持つため、ＰＩＤを用いてパケット化される前のＥＳを復元できる。
【００１６】
また、ＴＳヘッダにはＴＳパケット中に混入したエラーの有無を示す１ビットのトランスポート・エラー・インジケータ（ｔａｒａｎｓｐｏｒｔ＿ｅｒｒｏｒ＿ｉｎｄｉｃａｔｏｒ）及びアダプテーション・フィールドやペイロードの有無を示す２ビット長のアダプテーション・フィールド制御（ａｄａｐｔａｔｉｏｎ＿ｆｉｅｌｄ＿ｃｏｎｔｒｏｌ）なども含まれる。ここで、アダプテーション・フィールド制御として「１１」は「アダプテーション・フィールド有り、ペイロード有り」、「１０」は「アダプテーション・フィールド有り、ペイロード無し」、「０１」は「アダプテーション・フィールド無し、ペイロード有り」、「００」は「予約（ＲＦＵ：Ｒｅｓｅｒｖｅｄ  ｆｏｒ  Ｆｕｔｕｒｅ  Ｕｓｅ）と夫々規定されている。
【００１７】
尚、ＴＳヘッダは更に、デコーダにＴＳパケットの先頭を示す同期バイト（ｓｙｎｃ  ｂｙｔｅ）及び新たなＰＥＳパケットが当該ＴＳパケット中のペイロードから始まることを示すペイロード・ユニット・スタート・インジケータ（ｐａｙｌｏａｄ  ｕｎｉｔ  ｓｔａｒｔ  ｉｎｄｉｃａｔｏｒ）を備えている。また、ＴＳヘッダは更に、当該ＴＳパケットの重要度を示すパケット優先度（ｔｒａｎｓｐｏｒｔ  ｐｒｉｏｒｉｔｙ）及び当該ＴＳパケット中のペイロードのスクランブルの有無を示す２ビット長のトランスポート・スクランブル制御（ｔｒａｎｓｐｏｒｔ  ｓｃｒａｍｂｌｉｎｇ  ｃｏｎｔｒｏｌ）を備えている。また、ＴＳヘッダは更に、当該ＴＳパケットと同じＰＩＤを持つＴＳパケットが途中で一部棄却されたかどうかを検出するための４ビット長の巡回カウンタ（ｃｏｎｔｉｎｕｉｔｙ  ｃｏｕｎｔｅｒ）を備えている。
【００１８】
図３（ｂ）に示すようにアダプテーション・フィールドは、可変長のオプショナルフィールド（ｏｐｔｉｏｎａｌ  ｆｉｅｌｄ）を有し、４２ビット長のＰＣＲはこのオプショナルフィールドに含まれる。尚、アダプテーション・フィールドは更に、８ビット長のアダプテーション・フィールド長（ａｄａｐｔａｔｉｏｎ  ｆｉｅｌｄ  ｌｅｎｇｔｈ）、タイムベースの切り替えの有無を示す１ビットの不連続表示（ｄｉｓｃｏｎｔｉｎｕｉｔｙ＿ｉｎｄｉｃａｔｏｒ）、ランダム・アクセス表示（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｉｎｄｉｃａｔｏｒ）、ストリーム優先表示（ｅｌｅｍｅｎｔａｒｙ  ｓｔｒｅａｍ  ｐｒｉｏｒｉｔｙ  ｉｎｄｉｃａｔｏｒ）、アダプテーション・フィールド中のＰＣＲの有無を示す１ビットのＰＣＲフラグ（ＰＣＲ＿ｆｌａｇ）を含む５フラグ（５ｆｌａｇｓ）、及び可変長のスタッフィング・バイト（ｓｔｕｆｆｉｎｇ  ｂｙｔｅｓ）を備えている。
【００１９】
図２に示すようにペイロードには、ＥＳにＰＥＳヘッダと呼ばれるヘッダを付加してパケット化したＰＥＳパケットが分割して格納されている。  
図３（ｃ）に示すようにＰＥＳヘッダにはＰＥＳパケット中の先頭フレームのＰＴＳが３３ビット長のフィールドに格納される。ここで、ＰＥＳヘッダは２４ビット長のパケット開始コード（ｐａｃｋｅｔ  ｓｔａｒｔ  ｐｒｅｆｉｘ）、８ビット長のストリームＩＤ（ｓｔｒｅａｍ  ｉｄ）、１６ビット長のＰＥＳパケット長（ＰＥＳ  ｐａｃｋｅｔ  ｌｅｎｇｔｈ）、「１０」、２ビット長のＰＥＳスクランブル制御（ＰＥＳ  ｓｃｒａｍｂｌｉｎｇ  ｃｏｎｔｒｏｌ）、ＰＥＳ優先度（ＰＥＳ  ｐｒｉｏｒｉｔｙ）、データ整列表示（ｄａｔａ  ａｌｉｇｎｍｅｎｔ  ｉｎｄｉｃａｔｏｒ）、コピー・ライト（ｃｏｐｙ  ｒｉｇｈｔ）、オリジナル／コピー（ｏｒｉｇｉｎａｌ  ｏｒ  ｃｏｐｙ）、７フラグ（７ｆｌａｇｓ）、８ビット長のＰＥＳヘッダ長（ＰＥＳ  ｈｅａｄｅｒ  ｄａｔａ  ｌｅｎｇｔｈ）、ＰＴＳが記載される可変長のオプショナルフィールド（ｏｐｔｉｏｎａｌ  ｆｉｅｌｄ）、及び可変長のスタッフィング・バイト（ｓｔｕｆｆｉｎｇ  ｂｙｔｅｓ）で構成される。
【００２０】
また、パケット受信部１０４は後述するように、タイマ１１８から時刻通知を受けるとＰＣＲパケット生成部１１９を起動し、通知された時刻を転送する。パケット受信部１０４はＰＣＲパケット生成部１１９によって生成されたパケットを受け取り、シンタックス解析部１０５へと転送する。
【００２１】
シンタックス解析部１０５は、パケット受信部１０４から転送されたパケット中のＴＳヘッダ及びアダプテーション・フィールド中の上記各シンタックスを解析する。また、シンタックス解析部１０５は、アダプテーション・フィールド中のＰＣＲフラグの解析により、ＴＳパケットにＰＣＲが含まれていることを検出すると、タイマ１１８を設定すると共に現在の時刻（ｐｒｅｖＰＣＲｔｉｍｅ）を取得する。シンタックス解析部１０５は、処理対象のＰＣＲ（ｐｒｅｖＰＣＲ）、タイマ１１８より得た現在の時刻（ｐｒｅｖＰＣＲｔｉｍｅ）及びＰＣＲを示すＰＩＤを後述するＰＣＲパケット生成部１１９へと転送する。
【００２２】
ＰＩＤフィルタ１０６は、シンタックス解析部１０５によって解析されたＰＩＤに基づいて当該ＴＳパケットを振り分ける。具体的には、ＰＩＤフィルタ１０６には各番組が持つ番組対応テーブル（ＰＭＴ：Ｐｒｏｇｒａｍ  Ｍａｐ  Ｔａｂｌｅ）と呼ばれるテーブル情報に基づいてＰＩＤの値と対応するＴＳパケットの種別とが設定される。
【００２３】
ＰＭＴには、ＰＩＤの値とＴＳパケットの種別とが対応付けられており、特定のＰＩＤ値を持つＴＳパケットが映像、音声、キャプションまたはＰＣＲ等のいずれであるかが判別可能となる。尚、ＰＣＲは前述したようにＴＳパケット中のアダプテーション・フィールドに格納されており、映像や音声などを含むペイロードと共に伝送される場合もあれば、ペイロードを伴わずに単独で伝送される場合もある。従って、特定のＰＩＤ値がＰＣＲのみを示すこともあれば、ＰＣＲ及び映像等の両方を示すこともある。また、ユーザの操作等により視聴する番組が変更された場合には、ＰＭＴに基づいてＰＩＤフィルタ１０６が再設定される。
【００２４】
ＰＩＤフィルタ１０６は、ＴＳパケットが映像データを示す場合には、当該ＴＳパケットをＥＳ抽出部１０７へと転送する。また、ＰＩＤフィルタ１０６は、ＴＳパケットが音声データを示す場合には、当該ＴＳパケットをＥＳ抽出部１１１へと転送する。また、ＰＩＤフィルタ１０６は、ＴＳパケットがＰＣＲを含む場合には当該ＰＣＲをタイムベース不連続検出部１１６に入力する。また、ＰＩＤフィルタ１０６は、ＴＳパケットがキャプション等である場合には、図示しない処理部へと夫々転送する。その他、ＰＩＤフィルタ１０６は、ＴＳパケットのＰＩＤが設定されていない場合には、当該ＴＳパケットを破棄する。
【００２５】
ＥＳ抽出部１０７は、ＰＩＤフィルタ１０６から振り分けられた映像用のＥＳを有するＴＳパケットから当該ＥＳを抽出し、バッファ１０８にバッファリングする。デコーダ１０９はバッファ１０８に格納されているＥＳを取得し、デコードして映像データを得る。ＳＴＣ部１１７からのＳＴＣ値がＥＳのＰＴＳ以上になると、デコードされた映像データがディスプレイ１１０より再生される。
【００２６】
ＥＳ抽出部１１１は、ＰＩＤフィルタ１０６から振り分けられた音声用のＥＳを有するＴＳパケットから当該ＥＳを抽出し、バッファ１１２にバッファリングする。デコーダ１１３はバッファ１１２に格納されているＥＳを取得し、デコードして音声データを得る。ＳＴＣ部１１７からのＳＴＣ値がＥＳのＰＴＳ以上になると、デコードされた音声データはデジタル−アナログ変換器（ＤＡＣ）１２０にてデジタル−アナログ変換され、スピーカ１１５より再生される。
【００２７】
タイムベース不連続検出部１１６は、ＰＩＤフィルタ１０６からＰＣＲ（ｃｕｒＰＣＲ）が振り分けられると、前回振り分けられたＰＣＲ（ｐｒｅｖＰＣＲ）との差分ΔＰＣＲを算出し、予め定める閾値ＴＨtbdと比較する。差分ΔＰＣＲが閾値ＴＨtbd以上であれば、タイムベース不連続検出部はタイムベース切り替えを検出する。また、タイムベース不連続検出部１１６は、次にＰＩＤフィルタ１０６から振り分けられるＰＣＲを処理するためにｃｕｒＰＣＲを新たにｐｒｅｖＰＣＲとして記憶する。
【００２８】
ここで、閾値ＴＨtbdについて説明する。通常、送信側からＰＣＲを含むＴＳパケットが送信される最大周期が定められており、送信側は少なくともこの最大周期以下の間隔でＰＣＲを含むＴＳパケットを送信している。例えば携帯電話向け地上波デジタル放送（ワンセグ）では、送信側からＰＣＲを含むＴＳパケットが最大２５７．０４ｍＳｅｃ周期で送信されることが規定されている。即ち、受信側にてＰＣＲを含むＴＳパケットを正常に受信できれば、連続するＰＣＲの差分ΔＰＣＲは上記最大周期以下に収まるはずであり、ΔＰＣＲが当該最大周期よりも大きければタイムベース切り替えが発生したと判断できる。従って、閾値ＴＨtbdとして例えば上記最大周期を用いてΔＰＣＲと比較することによりタイムベース切り替えを検出することができる。
【００２９】
尚、タイムベース不連続検出部１１６はｐｒｅｖＰＣＲが存在しない場合、即ちｃｕｒＰＣＲが最初にＰＩＤフィルタ１０６より振り分けられたＰＣＲである場合には、タイムベース切り替えの検出を行わず、当該ｃｕｒＰＣＲをｐｒｅｖＰＣＲとして記憶する。また、タイムベース不連続検出部１１６はＰＩＤフィルタ１０６より振り分けられたＰＣＲが最初のＰＣＲで否かを示すフラグｆｉｒｓｔＰＣＲを備えている。フラグｆｉｒｓｔＰＣＲはストリーム再生動作の開始時には、真（ＴＲＵＥ）に設定されており、タイムベース不連続検出部１１６が最初のＰＣＲを受け取ると偽（ＦＡＬＳＥ）に設定される。従って、タイムベース不連続検出部１１６はＰＣＲが転送されると、最初にフラグｆｉｒｓｔＰＣＲを参照して、当該ＰＣＲに対する処理を決定している。
【００３０】
ＳＴＣ部１１７は、一定周波数のＳＴＣをカウントしたＳＴＣ値をデコーダ１０９及びデコーダ１１３に時刻情報として通知する。ＳＴＣ部１１７はタイムベース不連続検出部１１６から転送されたＰＣＲをロードし、ＳＴＣ値を更新することで送信側とのクロック誤差の蓄積を抑えている。
【００３１】
タイマ１１８は、シンタックス解析部１０５によって動作が設定されると、現在時刻（ｐｒｅｖＰＣＲｔｉｍｅ）を返すと共に、時刻ｐｒｅｖＰＣＲｔｉｍｅから予め定める閾値ＴＨtimeの経過を待って、パケット受信部１０４に現在時刻（ｃｕｒＰＣＲｔｉｍｅ）を通知する。ここで、閾値ＴＨtimeは上記閾値ＴＨtbdより短い。尚、タイマ１１８は、閾値ＴＨtime経過前にシンタックス解析部１０５によって動作を再度設定されると、時刻ｐｒｅｖＰＣＲｔｉｍｅを現在時刻で更新し、閾値ＴＨtimeの経過を改めて待つ。
【００３２】
ＰＣＲパケット生成部１１９は、パケット受信部１０４によって起動されると擬似的なＰＣＲを算出して、ＴＳパケットを生成し、パケット受信部１０４に転送する。即ち、ＰＣＲパケット生成部１１９は、パケット受信部１０４から得た時刻ｃｕｒＰＣＲｔｉｍｅ、シンタックス解析部１０５から得たｐｒｅｖＰＣＲ及び時刻ｐｒｅｖＰＣＲｔｉｍｅを基に算出した擬似的なＰＣＲを持つＴＳパケットを生成する。具体的には、ＰＣＲパケット生成部１１９は時刻ｃｕｒＰＣＲｔｉｍｅと時刻ｐｒｅｖＰＣＲｔｉｍｅとの差分をｐｒｅｖＰＣＲに加算して擬似的なＰＣＲを算出する。ＰＣＲパケット生成部１１９は、シンタックス解析部１０５から得ているＰＣＲを示すＰＩＤを上記ＰＣＲに付加してＴＳパケットを生成し、パケット受信部１０４に転送する。尚、ＰＣＲパケット生成部１１９は、ＰＩＤ及びＰＣＲ以外の部分は例えばスタッフィングバイトで構成することにより、ＴＳパケットを生成する。ＰＣＲパケット生成部１１９が生成したＴＳパケットは、放送波から受信した通常のＴＳパケットと同様に、パケット受信部１０４にて受信され、シンタックス解析部１０５にて解析され、ＰＩＤフィルタ１０６にてＰＣＲとしてタイムベース不連続検出部１１６へと振り分けられる。
【００３３】
ここで、ＰＣＲパケット生成部１１９がＴＳパケットを生成する技術的意義について説明する。図４に示すように、ＰＣＲ１、ＰＣＲ２を含むＴＳパケットを受信後、受信誤り区間を挟んで、ＰＣＲ３、ＰＣＲ４を含むＴＳパケットを受信したとする。ここで、ＰＣＲ１乃至ＰＣＲ４のタイムベースは全て同一であり、受信誤り区間は上記閾値ＴＨtbdに比べて長いものとする。前述したように、タイムベース不連続検出部１１６は、ＰＣＲ１乃至ＰＣＲ４に対してタイムベース切り替え検出動作を行う。まず、ＰＣＲ１は最初のＰＣＲであるため、前述したようにタイムベース不連続検出部１１６はタイムベース切り替え検出処理を行わずにＰＣＲ１をｐｒｅｖＰＣＲとして記録する。次に、タイムベース不連続検出部１１６はＰＣＲ２をｃｕｒＰＣＲとしてΔＰＣＲを算出する。ΔＰＣＲ（＝ＰＣＲ２−ＰＣＲ１）は、閾値ＴＨtbd未満であるからタイムベース切り替えは検出されず、タイムベース不連続検出部１１６はＰＣＲ２をｐｒｅｖＰＣＲとして記録する。次に、受信誤り区間を経て、タイムベース不連続検出部１１６はＰＣＲ３をｃｕｒＰＣＲとしてΔＰＣＲを算出する。ＰＣＲ２及びＰＣＲ３の間において本来受信されるはずのＰＣＲが受信されていないため、ΔＰＣＲ（＝ＰＣＲ３−ＰＣＲ２）は閾値ＴＨtbd以上となり、タイムベース切り替えが誤検出される。
【００３４】
一方、図５に示すように図４の受信誤り区間においてＰＣＲパケット生成部１１９がＰＣＲ’１及びＰＣＲ’２を含むＴＳパケットを生成した場合の各部の動作ついて説明する。まず、シンタックス解析部１０５はＰＣＲ１を解析すると、タイマ１１８の設定動作を行う。タイマ１１８より現在時刻（ｐｒｅｖＰＣＲｔｉｍｅ）が返されると、シンタックス解析部１０５はＰＣＲ１（ｐｒｅｖＰＣＲ）及びＰＣＲを示すＰＩＤと共にＰＣＲパケット生成部１１９に転送する。ＰＣＲ１は、ＰＩＤフィルタ１０６によってタイムベース不連続検出部１１６に振り分けられるが、前述したようにＰＣＲ１は最初のＰＣＲであるため、タイムベース不連続検出部１１６はタイムベース切り替え検出処理を行わずにＰＣＲ１をｐｒｅｖＰＣＲとして記録する。次に、シンタックス解析部１０５はＰＣＲ２を解析し、タイマ１１８の設定動作を行う。タイマ１１８より現在時刻（ｐｒｅｖＰＣＲｔｉｍｅ）が返されると、シンタックス解析部１０５はＰＣＲ２（ｐｒｅｖＰＣＲ）及びＰＣＲを示すＰＩＤと共にＰＣＲパケット生成部１１９に転送する。ＰＣＲ２はＰＩＤフィルタ１０６によってタイムベース不連続検出部１１６に振り分けられ、前述したタイムベース切り替え処理が行われる。タイムベース不連続検出部１１６はＰＣＲ２をｃｕｒＰＣＲとしてΔＰＣＲを算出する。ΔＰＣＲ（＝ＰＣＲ２−ＰＣＲ１）は、閾値ＴＨtbd未満であるからタイムベース切り替えは検出されず、タイムベース不連続検出部１１６はＰＣＲ２をｐｒｅｖＰＣＲとして記録する。
【００３５】
次に、ＰＣＲを含むＴＳパケットが受信される前にｐｒｅｖＰＣＲｔｉｍｅ（ＰＣＲ２を含むＴＳパケットの受信時刻）より閾値ＴＨtimeが経過する。すると、タイマ１１８は現在時刻（ｃｕｒＰＣＲｔｉｍｅ）をパケット受信部１０４に通知する。タイマ１１８から時刻ｃｕｒＰＣＲｔｉｍｅを取得したパケット受信部１０４は、ＰＣＲパケット生成部１１９を起動して、時刻ｃｕｒＰＣＲｔｉｍｅを通知する。ＰＣＲパケット記録部１１９は、通知されたｃｕｒＰＣＲｔｉｍｅと、既にシンタックス解析部１０５から転送されているｐｒｅｖＰＣＲ（ＰＣＲ２）及びｐｒｅｖＰＣＲｔｉｍｅ（ＰＣＲ２を含むＴＳパケットの受信時刻）とを用いて擬似的なＰＣＲとしてＰＣＲ’１を算出する。具体的には、擬似的なＰＣＲをｃｕｒＰＣＲとすると、ｃｕｒＰＣＲ＝ｐｒｅｖＰＣＲ＋（ｃｕｒＰＣＲｔｉｍｅ−ｐｒｅｖＰＣＲｔｉｍｅ）として算出する。尚、ｃｕｒＰＣＲｔｉｍｅ−ｐｒｅｖＰＣＲｔｉｍｅは処理遅延を考慮しなければ閾値ＴＨtimeに等しくなるため、ｐｒｅｖＰＣＲに閾値ＴＨtimeを加算してｃｕｒＰＣＲをより簡易に求めてもよい。ＰＣＲパケット生成部１１９は、このように擬似的に算出したＰＣＲ’１にシンタックス解析部１０５より予め取得しているＰＣＲを示すＰＩＤを付加してＴＳパケットを生成し、パケット受信部１０４に渡す。パケット受信部１０４は通常の放送波からのＴＳパケットと同様に、当該ＴＳパケットをシンタックス解析部１０５に転送する。
【００３６】
次に、シンタックス解析部１０５はＰＣＲ’１を解析し、タイマ１１８の設定を行う。タイマ１１８より現在時刻（ｐｒｅｖＰＣＲｔｉｍｅ）が返されると、シンタックス解析部１０５はＰＣＲ’１（ｐｒｅｖＰＣＲ）及びＰＣＲを示すＰＩＤと共にＰＣＲパケット生成部１１９に転送する。ＰＣＲ’１はＰＩＤフィルタ１０６によってタイムベース不連続検出部１１６に振り分けられ、前述したタイムベース切り替え処理が行われる。タイムベース不連続検出部１１６はＰＣＲ’１をｃｕｒＰＣＲとしてΔＰＣＲを算出する。ΔＰＣＲ（＝ＰＣＲ’１−ＰＣＲ２≒閾値ＴＨtime）は、閾値ＴＨtbd未満であるからタイムベース切り替えは検出されず、タイムベース不連続検出部１１６はＰＣＲ’１をｐｒｅｖＰＣＲとして記録する。
【００３７】
続いて、先ほどと同様にＰＣＲを含むＴＳパケットが受信される前にｐｒｅｖＰＣＲｔｉｍｅ（ＰＣＲ’１を含むＴＳパケットの受信時刻）より閾値ＴＨtimeが経過する。すると、タイマ１１８は現在時刻（ｃｕｒＰＣＲｔｉｍｅ）をパケット受信部１０４に通知する。タイマ１１８から時刻ｃｕｒＰＣＲｔｉｍｅを取得したパケット受信部１０４は、ＰＣＲパケット生成部１１９を起動して、時刻ｃｕｒＰＣＲｔｉｍｅを通知する。ＰＣＲパケット記録部１１９は、通知されたｃｕｒＰＣＲｔｉｍｅと、既にシンタックス解析部１０５から転送されているｐｒｅｖＰＣＲ（ＰＣＲ’１）及びｐｒｅｖＰＣＲｔｉｍｅ（ＰＣＲ’１を含むＴＳパケットの受信時刻）とを用いて、ＰＣＲ’１と同様にＰＣＲ’２を擬似的なＰＣＲとして算出する。ＰＣＲパケット生成部１１９は、算出したＰＣＲ’２にシンタックス解析部１０５より取得したＰＣＲを示すＰＩＤを付加してＴＳパケットを生成し、パケット受信部１０４に渡す。パケット受信部１０４は通常の放送波からのＴＳパケットと同様に、当該ＴＳパケットをシンタックス解析部１０５に転送する。
【００３８】
次に、シンタックス解析部１０５はＰＣＲ’２を解析し、タイマ１１８の設定を行う。タイマ１１８より現在時刻（ｐｒｅｖＰＣＲｔｉｍｅ）が返されると、シンタックス解析部１０５はＰＣＲ’２（ｐｒｅｖＰＣＲ）及びＰＣＲを示すＰＩＤと共にＰＣＲパケット生成部１１９に転送する。ＰＣＲ’２はＰＩＤフィルタ１０６によってタイムベース不連続検出部１１６に振り分けられ、前述したタイムベース切り替え処理が行われる。タイムベース不連続検出部１１６はＰＣＲ’２をｃｕｒＰＣＲとしてΔＰＣＲを算出する。ΔＰＣＲ（＝ＰＣＲ’２−ＰＣＲ’１≒閾値ＴＨtime）は、閾値ＴＨtbd未満であるからタイムベース切り替えは検出されず、タイムベース不連続検出部１１６はＰＣＲ’２をｐｒｅｖＰＣＲとして記録する。
【００３９】
次に、ようやくＰＣＲ３を含むＴＳパケットが受信される。すると、シンタックス解析部１０５はＰＣＲ３を解析し、タイマ１１８の設定動作を行う。タイマ１１８より現在時刻（ｐｒｅｖＰＣＲｔｉｍｅ）が返されると、シンタックス解析部１０５はＰＣＲ３（ｐｒｅｖＰＣＲ）及びＰＣＲを示すＰＩＤと共にＰＣＲパケット生成部１１９に転送する。ＰＣＲ３はＰＩＤフィルタ１０６によってタイムベース不連続検出部１１６に振り分けられ、前述したタイムベース切り替え処理が行われる。タイムベース不連続検出部１１６はＰＣＲ３をｃｕｒＰＣＲとしてΔＰＣＲを算出する。ΔＰＣＲ（＝ＰＣＲ３−ＰＣＲ’２＜閾値ＴＨtime）は、閾値ＴＨtbd未満であるからタイムベース切り替えは検出されず、タイムベース不連続検出部１１６はＰＣＲ３をｐｒｅｖＰＣＲとして記録する。
【００４０】
以上説明したように、ＰＣＲパケット生成部１１９ではＰＣＲを含むＴＳパケットを一定時間（閾値ＴＨtime）受信できない場合に、擬似的に算出したＰＣＲを含むＴＳパケットを生成している。従って、ΔＰＣＲが一定値（≒閾値ＴＨtime＜閾値ＴＨtbd）以上に増大しなくなり、タイムベース切り替えの誤検出を防ぐことができる。
【００４１】
次に、図６に示すフローチャートを用いて図１に示すストリーム再生装置の動作について説明する。  
まず、パケット受信部１０４は放送波が終了しているか否かを確認する（ステップＳ２０１）。放送波が終了している場合、ストリーム再生処理を終了する。一方、放送波が終了していない場合、パケット受信部１０４は復調部１０３またはＰＣＲパケット生成部１１９からＴＳパケットを受信して、シンタックス解析部１０５へと転送する（ステップＳ２０２）。次に、シンタックス解析部１０５はステップＳ２０２において受信したＴＳパケット中の各シンタックスを解析する（ステップＳ２０３）。
【００４２】
次に、シンタックス解析部１０５は例えばアダプテーション・フィールド中のＰＣＲフラグを参照して、処理対象のＴＳパケットにＰＣＲが含まれるか否かを判断する（ステップＳ２０４）。処理対象のＴＳパケットにＰＣＲが含まれている場合、シンタックス解析部１０５はタイマ１１８に閾値ＴＨtime経過後にパケット受信部１０４に対して時刻通知を行うように設定し、現在時刻（ｐｒｅｖＰＣＲｔｉｍｅ）を受け取る（ステップＳ２０５）。シンタックス解析部１０５は、タイマ１１８からｐｒｅｖＰＣＲｔｉｍｅを受け取ると、処理対象のＴＳパケットに含まれるＰＣＲ及びＰＣＲを示すＰＩＤをＰＣＲパケット生成部１１９に通知する。また、処理対象のＴＳパケットはシンタックス解析部１０５からＰＩＤフィルタ１０６へと転送され、当該ＴＳパケット中のＰＣＲが分離されてタイムベース不連続検出部１１６に振り分けられる。
【００４３】
次に、タイムベース不連続検出部１１６は、フラグｆｉｒｓｔＰＣＲが真（ＴＲＵＥ）であるか否かを判断する（ステップＳ２０６）。フラグｆｉｒｓｔＰＣＲが真（ＴＲＵＥ）である場合、タイムベース不連続検出部１１６はフラグｆｉｒｓｔＰＣＲを偽（ＦＡＬＳＥ）に設定し、ステップＳ２０８へと進む（ステップＳ２０７）。
【００４４】
ステップＳ２０８では、タイムベース不連続検出部１１６は処理対象のＰＣＲをｐｒｅｖＰＣＲとして保持し、次のＴＳパケットを処理すべくステップＳ２０１へと戻る。
【００４５】
一方、処理対象のＴＳパケット中にＰＣＲが含まれていない場合（ステップＳ２０４）、当該ＴＳパケットはＰＩＤに応じてＰＩＤフィルタ１０６から各部に振り分けられる。即ち、映像であればＥＳ抽出部１０７、音声であればＥＳ抽出部１１１へと振り分けられ、予め定められた再生処理が行われる（ステップＳ２１２）。ステップＳ２１２の終了後、次のＴＳパケットを処理すべくステップＳ２０１へと戻る。
【００４６】
また、フラグｆｉｒｓｔＰＣＲが偽（ＦＡＬＳＥ）である場合（ステップＳ２０６）、タイムベース不連続検出部１１６はタイムベース切り替えの検出を行うべく、処理対象のＰＣＲ（ｃｕｒＰＣＲ）からｐｒｅｖＰＣＲを減算してΔＰＣＲを算出する（ステップＳ２０９）。次に、タイムベース不連続検出部１１６はステップＳ２０９において算出したΔＰＣＲが閾値ＴＨtbd未満か否かを判断し、ΔＰＣＲが閾値ＴＨtbd未満であればステップＳ２０８へと進む。（ステップＳ２１０）。一方、ΔＰＣＲが閾値ＴＨtbd以上であれば、タイムベース不連続検出部１１６はタイムベース切り替えを検出し、予め定められたリセット処理を実行し、ステップＳ２０８へと進む（ステップＳ２１１）。
【００４７】
次に、図７に示すフローチャートを用いて図１に示すＰＣＲパケット生成部１１９の動作について説明する。  
まず、タイマ１１８から現在時刻の通知を受けたパケット受信部１０４がＰＣＲパケット生成部１１９を起動する。ＰＣＲパケット生成部１１９は起動時にパケット受信部１０４より通知された現在時刻を時刻ｃｕｒＰＣＲｔｉｍｅとして設定する（ステップＳ３０１）。
【００４８】
次に、ＰＣＲパケット生成部１１９はＰＣＲとしてｃｕｒＰＣＲを擬似的に算出する（ステップＳ３０２）。ＰＣＲパケット生成部１１９は、前述したようにシンタックス解析部１０５から既に転送されているｐｒｅｖＰＣＲ及び時刻ｐｒｅｖＰＣＲｔｉｍｅと、ステップＳ３０１にて設定した時刻ｃｕｒＰＣＲｔｉｍｅとを用いてｃｕｒＰＣＲを算出する。具体的には、ＰＣＲパケット生成部１１９は、前述したようにｐｒｅｖＰＣＲに時刻ｃｕｒＰＣＲｔｉｍｅと時刻ｐｒｅｖＰＣＲｔｉｍｅとの差分を加算してｃｕｒＰＣＲを算出する。
【００４９】
次に、ＰＣＲパケット生成部１１９は、ステップＳ３０２において算出したｃｕｒＰＣＲをＰＣＲとして持つＴＳパケットを生成する（ステップＳ３０３）。具体的には、ＰＣＲパケット生成部１１９は、既にシンタックス解析部１０５より通知されているＰＣＲを示すＰＩＤをＰＩＤとして持ち、ステップＳ３０２において算出したｃｕｒＰＣＲをＰＣＲとして持つＴＳパケットを生成する。次に、ＰＣＲパケット生成部１１９は、ステップＳ３０３において生成したＴＳパケットをパケット受信部１０４に転送する（ステップＳ３０４）。ステップＳ３０４にて転送されたＴＳパケットは、前述したステップＳ２０２においてパケット受信部１０４によって受信され、ステップＳ２０３以降の処理が実行される。
【００５０】
以上説明したように、本実施形態では受信誤りによりＰＣＲを含むＴＳパケットを一定時間受信できない場合に、擬似的に算出したＰＣＲを含むＴＳパケットを生成している。従って、本実施形態によればタイムベース切り替えが無い限り、連続するＰＣＲの差分が上記一定時間を超えて拡大しなくなくなるため、受信誤りによるタイムベース切り替えの誤検出を防ぐことができる。
【００５１】
なお、この発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また上記実施形態に開示されている複数の構成要素を適宜組み合わせることによって種々の発明を形成できる。また例えば、実施形態に示される全構成要素からいくつかの構成要素を削除した構成も考えられる。
【図面の簡単な説明】
【００５２】
【図１】本発明の一実施形態に係るストリーム再生装置を示すブロック図。
【図２】図１に示すパケット受信部で受信されるＴＳパケットの構造、当該ＴＳパケットで構成されるトランスポート・ストリームの構造及び当該ＴＳパケット中のペイロードに格納されるＰＥＳパケットの構造を示す図。
【図３】（ａ）図２に示すＴＳパケット中のＴＳヘッダの構造を示す図。（ｂ）図２に示すＴＳパケット中のＡｄａｐｔａｔｉｏｎ  Ｆｉｅｌｄの構造を示す図。（ｃ）図２に示すＰＥＳヘッダの構造を示す図。
【図４】図１に示すタイムベース不連続検出部がタイムベース切り替えを誤検出する場合の一例を示すグラフ図。
【図５】図４に示すグラフ中の誤り区間において、図１に示すＰＣＲパケット生成部によって生成したパケットを挿入した場合の一例を示すグラフ図。
【図６】図１に示すストリーム再生装置におけるＴＳパケットの処理を示すフローチャート。
【図７】図１に示すＰＣＲパケット生成部の動作を示すフローチャート。
【符号の説明】
【００５３】
１０１・・・アンテナ
１０２・・・チューナ
１０３・・・復調部
１０４・・・パケット受信部
１０５・・・シンタックス解析部
１０６・・・ＰＩＤフィルタ
１０７・・・ＥＳ抽出部
１０８・・・バッファ
１０９・・・デコーダ
１１０・・・ディスプレイ
１１１・・・ＥＳ抽出部
１１２・・・バッファ
１１３・・・デコーダ
１１４・・・ＤＡＣ
１１５・・・スピーカ
１１６・・・タイムベース不連続検出部
１１７・・・ＳＴＣ制御部
１１８・・・タイマ
１１９・・・ＰＣＲパケット生成部
【図１】
2008271253.tif 000003
【図２】
2008271253.tif 000004
【図３】
2008271253.tif 000005
【図４】
2008271253.tif 000006
【図５】
2008271253.tif 000007
【図６】
2008271253.tif 000008
【図７】
2008271253.tif 000009