(57)【特許請求の範囲】
【請求項１】
放送信号を受信して放送データを得る受信手段と、
放送データを記憶する内部メモリと、
前記受信手段で受信した放送データを前記内部メモリに記録する記録手段と、
外部メモリに対して、データの記録と読み出しを行うインタフェース手段と、
前記内部メモリが記憶する放送データを前記インタフェース手段を通じて前記外部メモリに一時的に記録し、その後、前記外部メモリに記録した放送データを読み出して再生を行う第１再生手段と、
前記外部メモリに記録される未再生のデータ量を検出する外部メモリ検出手段と、
この外部メモリ検出手段が検出したデータ量に基づき、未再生の放送データが無くなった場合に、前記第１再生手段による再生を停止して前記インタフェース手段を通じた外部メモリへの記録を停止し、前記内部メモリに記憶されるデータを読み出して再生を行う第２再生手段とを具備することを特徴とする受信装置。
【請求項２】
さらに、前記内部メモリが記憶する未再生のデータ量を検出する内部メモリ検出手段と、
前記内部メモリが記憶するデータ量に基づき、未再生の放送データが無くなった場合に、前記記録手段による記録と前記第２再生手段による再生を停止し、前記受信手段で受信した放送データを再生する第３再生手段とを備えることを特徴とする請求項１に記載の受信装置。
【請求項３】
前記内部メモリは、放送データを記憶する蓄積用エリアと、前記インタフェース手段を通じて前記外部メモリから読み出した放送データを記憶する再生用エリアとを備え、
前記記録手段は、前記受信手段で受信した放送データを前記蓄積用エリアに記録し、
前記第１再生手段は、前記蓄積用エリアに記録された放送データを前記インタフェース手段を通じて前記外部メモリに一時的に記録し、その後、前記外部メモリに記録した放送データを読み出して前記再生用エリアに一時的に記録して、このエリアに記録した放送データを読み出して再生を行うことを特徴とする請求項１に記載の受信装置。
【請求項４】
前記第１再生手段は、前記外部メモリに記録した放送データを読み出して再生した場合に、この再生した放送データを前記外部メモリから消去することを特徴とする請求項１に記載の受信装置。
【請求項５】
放送信号を受信して放送データを得る受信工程と、
前記受信工程で受信した放送データを内部メモリに記録する記録工程と、
前記内部メモリが記憶する放送データを、インタフェース手段を通じて外部メモリに一時的に記録し、その後、前記外部メモリに記録した放送データを前記インタフェース手段を通じて読み出して再生を行う第１再生工程と、
前記外部メモリに記録される未再生のデータ量を検出する外部メモリ検出工程と、
この外部メモリ検出工程で検出したデータ量がに基づき、未再生の放送データが無くなった場合に、前記第１再生工程による再生を停止して前記インタフェース手段を通じた外部メモリへの記録を停止し、前記内部メモリに記憶されるデータを読み出して再生を行う第２再生工程とを具備することを特徴とする受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば地上波デジタル放送などの受信に用いられる受信装置に関する。
【背景技術】
【０００２】
周知のように、第３世代と称される移動通信システムを基本とする携帯電話機は、地上波デジタル放送（ワンセグ）を受信する機能を備える（例えば、非特許文献１参照）。地上波デジタル放送では、画像データがH.264/AVCで符号化され、音声データはMPEG-2 AACで符号化される。これらの符号化された映像データおよび音声データは、エレメンタリ・ストリーム（以下、ESと略称する）と呼ばれ、パケット化エレメンタリ・ストリーム（Packetized Elementary Stream）パケット（以下、PESパケットと略称する）としてMPEG-2 SYSTEMS中のトランスポート・ストリームに多重化されて伝送されている。
【０００３】
トランスポート・ストリームには、トランスポート・ストリーム・パケット（以下、TSパケットと称する）が配列されている。TSパケット中には、ビデオ情報およびオーディオ情報を構成するビット・ストリームの種類（属性）を示す属性情報、ビット・ストリームおよびメディア間の同期をとるためのプログラム時刻基準参照値（以下、PCRと略称する）と称される基準クロック情報などを格納させることができる。TSパケットは無線または有線を介して送信側から受信側に伝送される。
【０００４】
受信側では、受信したTSパケットを一時的に保存し、PCRを有するTSパケットを受信すると、送信側との間でクロック同期を取るためにシステム・タイム・クロック（以下、STCと略称する）をカウントするSTCカウンタの制御に上記PCRを用いる。具体的には、送信側のPCRを27MHzでサンプリングした値を抽出し、受信側のSTC値と比較することによりSTCを調整する、いわゆるクロック・リカバリを実施する。
【０００５】
また受信側では、STCカウンタによってカウントされたSTC値がPESパケットに含まれる表示時刻タイム・スタンプ（PTS）以上になると、PESパケット中のESをSTC値に同期させて再生する。また、ストリーム再生の方法として、放送波から受信したTSパケット中の映像データおよび音声データを順次デコードおよび再生する通常再生モードに加えて、タイムシフト再生モードがある。
【０００６】
上記タイムシフト再生モードは、ユーザが視聴できない間に、受信したTSパケットをバッファに蓄積（タイムシフト蓄積）しておき、ユーザが視聴できるようになると受信したTSパケットを次々に蓄積しながら蓄積済みのTSパケット中の映像および音声を順次デコードおよび再生するものである。
【０００７】
タイムシフト再生モードでは、バッファに既に蓄積されているTSパケットが再生対象となるため、等倍速に限らず、より高速な再生を行ってもよい。タイムシフト再生中に高速な再生を行い、放送波からの入力を蓄積する速度よりも蓄積したデータを再生する速度が大きい状態が続くと、バッファに蓄積されたTSパケットが減少し、やがてバッファが空になると、放送波から分離したTSパケットを上記バッファに蓄積せずに再生する通常再生モードに移行する。
【０００８】
したがって、タイムシフト再生モードでは、放送波から分離したTSパケットをバッファに蓄積する処理と、このバッファに蓄積されたTSパケットを再生する処理とを並行して行う必要がある。
【０００９】
また上記バッファには、例えばNAND型のフラッシュメモリが用いられることがある。その場合、相対的に小さな単位のTSパケットでバッファにデータ転送を行った方がデータの処理順序を制御しやすく、高速再生等を行って通常再生モードにスムーズに復帰させやすいが、その反面、相対的に小さな単位で処理を行うためデータ転送のオーバーヘッドが大きい。
【００１０】
一方、相対的に大きな単位のTSパケットでバッファにデータ転送を行った場合、上述したオーバーヘッドは縮小できるが、タイムシフト再生モードから通常再生モードへの切替は、適切なタイミングで切り替えないと、絵や音が途切れてしまい、再生品質が低下してしまうという問題があった。
【非特許文献１】亀山渉、花村剛監修、「改訂版  デジタル放送教科書  上」、インプレス、２００４年１０月、ｐ８５−８７）
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従来では、タイムシフト再生モードで用いるバッファに転送するTSパケットのサイズにより、転送するデータのオーバーヘッドの大きさが問題になったり、あるいはタイムシフト再生モードから通常再生モードに切り替える過程で、再生品質が低下するという問題があった。
【００１２】
この発明は上記の問題を解決すべくなされたもので、タイムシフト再生モードで用いるバッファに転送するデータのオーバーヘッドを縮小し、かつタイムシフト再生モードから通常再生モードに切り替える過程で、再生品質が低下することのない受信装置および受信方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記の目的を達成するために、この発明は、放送信号を受信して放送データを得る受信手段と、放送データを記憶する内部メモリと、受信手段で受信した放送データを内部メモリに記録する記録手段と、外部メモリに対して、データの記録と読み出しを行うインタフェース手段と、内部メモリが記憶する放送データをインタフェース手段を通じて外部メモリに一時的に記録し、その後、外部メモリに記録した読み出して再生を行う第１再生手段と、外部メモリに記録される未再生のデータ量を検出する外部メモリ検出手段と、この外部メモリ検出手段が検出したデータ量に基づき、未再生の放送データが無くなった場合に、第１再生手段による再生を停止してインタフェース手段を通じた外部メモリへの記録を停止し、内部メモリに記憶されるデータを読み出して再生を行う第２再生手段とを具備して構成するようにした。
【発明の効果】
【００１４】
この発明によれば、タイムシフト再生モードで用いるバッファに転送するデータのオーバーヘッドを縮小し、かつタイムシフト再生モードから通常再生モードに切り替える過程で、再生品質が低下することにない受信装置を提供できる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して、この発明の一実施形態について説明する。  
図１は、この発明の一実施形態に係わる受信装置の構成を示すものである。この受信装置は、地上波デジタル放送を受信するものであって、例えば携帯電話機に搭載される。すなわち、移動通信網に収容される基地局と無線通信して、音声通信やテレビ電話通信、パケットデータ通信などが可能な移動無線端末装置に搭載される。
【００１６】
なお、このような移動無線端末装置ではなく、カーナビゲーションシステムの車載装置や、フラッシュメモリに記憶された音楽データを再生する携帯型音楽再生装置に搭載してもよく、あるいは単独の受信装置として運用するようにしてもよい。また以下の説明では、ワンセグ放送を受信する場合を例に説明する。
【００１７】
アンテナ１０１は、放送局から送信される放送波を受信し、チューナ１０２へと転送する。  
チューナ１０２は、アンテナ１０１が受信した放送波のうち、図示しないユーザインタフェースを通じてユーザから指定された視聴対象となるチャンネルの信号を受信して、ベースバンド信号を得る。  
復調部１０３は、チューナ１０２で得られたベースバンド信号を復調してトランスポート・ストリームを得る。このトランスポート・ストリームは、TS-I/F部１０４内の放送波用バッファ（図示しない）に一時的に格納される。
【００１８】
TS-I/F部１０４は、後述するSTC制御部１２２から通知されるSTCに同期して動作し、上記放送波用バッファに、予め設定した指定数（例えば、１）のTSパケットデータ（以下、TSパケットと略称する）が格納されていることを検出すると、この格納されているTSパケットをシンタックス解析部１０７に転送するために、入力制御部１０６に対して割込信号を出力する。ここで、上記指定数は、１とするが、実装次第で異なる値としてもよい。
【００１９】
分離モード制御部１０５は、上記ユーザインタフェースを通じてユーザからの指定や、図示しない通信制御部から通知される音声着信などのイベント発生、後述するタイムシフトデータ管理部１２６から通知される情報（蓄積用バッファ１２３、外部メモリ１２４および再生用バッファ１２５のデータ残量など）に応じて、再生モードおよび分離モードを決定し、各部を制御する。この決定した再生モードは、入力制御部１０６およびタイムシフトデータ管理部１２６などに通知する。また分離モードは、PIDフィルタ１０８およびPTS補正部１１０，１１５に通知する。
【００２０】
再生モードとして、通常再生モード、タイムシフト蓄積モードおよびタイムシフト再生モードの３種類を少なくとも備える。通常再生モードは、受信したTSパケット中の映像データおよび音声データを順次デコードし再生するモードである。タイムシフト蓄積モードは、受信したTSパケットを外部メモリ１２４に蓄積し続けるモードである。タイムシフト再生モードは、上記タイムシフト蓄積モードに引き続いて実行され、受信したTSパケットを外部メモリ１２４に蓄積しつつ、外部メモリ１２４に蓄積されているTSパケット中の映像データおよび音声データを順次デコードし再生するモードである。
【００２１】
例えば、通常再生モードでストリーム再生を行っている際に、ユーザが視聴を行えなくなるなどして、上記ユーザインタフェースを通じてユーザが再生モードをタイムシフト蓄積モードに変更する変更指示を行うと、これを検出した分離モード制御部１０５は、入力制御部１０６に対して、上記タイムシフト蓄積モードを通知する。またその後、ユーザが再び視聴を行うために、上記ユーザインタフェースを通じてタイムシフト再生モードまたは通常再生モードに変更する要求を行うと、これを検出した分離モード制御部１０５は、入力制御部１０６に対して、検出したモードを通知する。
【００２２】
一方、分離モード制御部１０５による分離モードの設定は、例えば、着信によりタイムシフト蓄積を開始する場合には、TSパケットを蓄積用バッファ１２３に転送させる分離モードをPIDフィルタ１０８に設定し、また、ユーザが上記ユーザインタフェースを通じてタイムシフト再生を行うことを選択した場合には、タイムシフトデータ管理部１２６からの通知に基づいて、外部メモリ１２４にデータが存在するか否かをチェックし、データが存在した場合にはタイムシフト再生を開始する分離モードをPIDフィルタ１０８に設定する。
【００２３】
入力制御部１０６は、分離モード制御部１０５から通知される再生モードに応じて動作させる割込タイマを備えている。この割込タイマは、再生モードとビットレートに応じた時間間隔で割込信号を発生し、これをスイッチ２０１およびPIDフィルタ１０８に出力する。そして、入力制御部１０６は、TSパケットのビットレートと、割込タイマが割込信号を発生したタイミングと、TS-IF部１０４から割込信号が与えられるタイミングとに応じたタイミングで、スイッチ２０１に対して切替指示を与える。
【００２４】
スイッチ２０１は、TS-I/F部１０４の放送波用バッファに格納されたTSパケットと、後述する再生用バッファ１２５に格納されたTSパケットのうち、いずれか一方を入力制御部１０６からの切替指示にしたがって読み出してシンタックス解析部１０７に転送する。ここで読み出すTSパケットの数は、予め設定された指定数である。
【００２５】
なお、TSパケットの転送は、様々な手法が考えられる。例えば、スイッチ２０１に上記指定数のTSパケットを格納できるバッファを備え、スイッチ２０１がTS-I/F部１０４の放送波用バッファ、あるいは再生用バッファ１２５を参照して、上記バッファにTSパケットをコピーし、このコピーしたTSパケットをシンタックス解析部１０７が参照するようにしてもよい。あるいは、シンタックス解析部１０７が上記スイッチ２０１として機能し、TS-I/F部１０４の放送波用バッファや再生用バッファ１２５に直接アクセスして、TSパケットを参照するようにしてもよい。
【００２６】
シンタックス解析部１０７は、スイッチ２０１を介して転送されたTSパケットのシンタックスを解析して、TSパケット中のTSヘッダ内のPIDを検出し、PIDと当該TSパケットをPIDフィルタ１０８に転送する。ここで、シンタックス解析部１０７は、TSパケット中のTSヘッダおよび適合フィールド（adaptation field）である。以下、図２を参照して、TSパケットの構造について説明する。
【００２７】
図２に示すように、TSパケットは、４バイトのTSヘッダを先頭とし、任意に設けることができるフィールドであるAdaptation Fieldとペイロードとからなる合計１８８バイトの固定長のパケットである。
【００２８】
まず図３（ａ）を参照して、図２に示したTSヘッダについて説明する。TSヘッダは、同期バイト（sync byte）と、トランスポート・エラー・インジケータ（taransport_error_indicator）と、ペイロード・ユニット・スタート・インジケータ（payload start unit indicator）と、パケット優先度（transport priority）と、パケット識別子（PID）と、トランスポート・スクランブル制御（transport scrambling control）と、アダプテーション・フィールド制御（adaptation_field_control）と、巡回カウンタ（continuity counter）とを備えている。
【００２９】
同期バイト（sync byte）は、８ビットで構成され、後述するデコーダ（１１３，１１８）にTSパケットの先頭を示す。トランスポート・エラー・インジケータ（taransport_error_indicator）は、１ビットで構成され、TSパケット中に混入したエラーの有無を示す。
【００３０】
ペイロード・ユニット・スタート・インジケータ（payload start unit indicator）は、１ビットで構成され、新たなPESパケットが当該TSパケット中のペイロードから始まることを示す。パケット優先度（transport priority）は、１ビットで構成され、当該TSパケットの重要度を示す。
【００３１】
パケット識別子（PID）は、１３ビットで構成され、当該TSパケットが映像データや音声データのいずれを伝送しているか示す。なお、同一の映像データや同一の音声データは、それぞれ同じPIDを持つ。このため、PIDを用いてパケット化される前のESを復元できる。トランスポート・スクランブル制御（transport scrambling control）は、２ビットで構成され、当該TSパケット中のペイロードのスクランブルの有無を示す。
【００３２】
アダプテーション・フィールド制御（adaptation_field_control）は、２ビットで構成され、Adaptation Fieldやペイロードの有無を示す。例えば、「１１」で「Adaptation field有り、ペイロード有り」を、「１０」で「Adaptation field有り、ペイロード無し」を、「０１」で「Adaptation field無し、ペイロード有り」を、「００」で「予約（RFU:Reserved for Future Use）を示すものとしてそれぞれ規定されている。  
巡回カウンタ（continuity counter）は、４ビットで構成され、当該TSパケットと同じPIDを持つTSパケットが途中で一部棄却されたかどうかを検出するために用いられる。
【００３３】
次に、図３（ｂ）を参照して、図２に示したAdaptation fieldについて説明する。Adaptation fieldは、８ビットのアダプテーション・フィールド長（adaptation field length）と、タイムベースの切り替えの有無を示す１ビットの不連続表示（discontinuity_indicator）と、１ビットのランダム・アクセス表示（random access indicator）と、１ビットのストリーム優先表示（elementary stream priority indicator）と、５ビットの５フラグ（５flags）と、可変長のオプショナルフィールド（optional field）と、可変長のスタッフィング・バイト（stuffing bytes）を備えている。
【００３４】
また５フラグ（５flags）は、当該adaptation field中のPCRの有無を示す１ビットのPCRフラグ（PCR_flag）を含んでいる。また、可変長のオプショナルフィールド（optional field）は、４２ビット長のPCRを含む。
【００３５】
次に、図２に示したペイロードについて説明する。ペイロードには、ESにPESヘッダと呼ばれるヘッダを付加してパケット化したPES（Packetized Elementary Stream）パケットが分割して格納されている。そして、図３（ｃ）に示すように、PESヘッダは、２４ビットのパケット開始コード（packet start code prefix）と、８ビットのストリームＩＤ（stream id）と、１６ビットのPESパケット長（PES packet length）と、２ビットの「１０」と、２ビットのPESスクランブル制御（PES scrambling control）と、１ビットのPES優先度（PES priority）と、１ビットのデータ整列表示（data alignment indicator）と、１ビットのコピー・ライト（copy right）と、１ビットのオリジナル／コピー（original or copy）と、８ビットの７フラグ（７flags）と、８ビットのPESヘッダ長（PES header data length）と、可変長のオプショナルフィールド（optional fields）と、可変長のスタッフィング・バイト（stuffing bytes）とを備える。なお、オプショナルフィールド（optional fields）は、３３ビットのPTSが記載される。
【００３６】
PIDフィルタ１０８は、シンタックス解析部１０７から得たTSパケットのペイロードに、セクションデータが含まれているか否かを判定し、セクションデータが含まれていると、このセクションデータをPSI/SIセクション処理部１０９に転送する。セクションデータには、例えば番組特定情報（PSI）やサービス情報（SI）が含まれる。
【００３７】
その後、PIDフィルタ１０８は、PSI/SIセクション処理部１０９から各番組が持つ番組対応テーブル（例えば、PMT:Program Map Table）と呼ばれるテーブル情報が設定されると、このテーブル情報と、シンタックス解析部１０７から得たPIDと、分離モード制御部１０５から通知される分離モードと、入力制御部１０６から通知される割込信号とに基づいて、TSパケットを振り分けて出力する。
【００３８】
なお、PIDフィルタ１０８は、入力制御部１０６からの割込信号に基づいて、シンタックス解析部１０７から与えられるTSパケットが、TS-I/F１０４の放送波用バッファから読み出されたTSパケットか、あるいは再生用バッファ１２５から読み出されたTSパケットであるかを判定する。
【００３９】
PSI/SIセクション処理部１０９は、PIDフィルタ１０８から与えられたセクションデータに基づいて、番組対応テーブル（PMT）を構築し、この番組対応テーブル（PMT）をPIDフィルタ１０８に設定する。PSI/SIセクション処理部１０９は、PIDフィルタ１０８からセクションデータが与えられると、PIDフィルタ１０８に対して番組対応テーブルの再設定を行う。なお、同じ番組のために、PMTのversion_numberに変更がなければ、上記再設定は行わない。また、ユーザ要求等により視聴する番組が変更された場合には、PSI/SIセクション処理部１０９は、新たなPMTを構築してPIDフィルタ１０８に再設定する。
【００４０】
PMTは、PSIの１つである。PMTには、PIDの値とTSパケットの種別とが対応付けられており、PID値に応じてTSパケットが映像データ（Video ES）、音声データ（Audio ES）、セクションデータ、データコンテンツまたはPCR等のいずれであるかが判別できる。なお、PCRは、前述したようにTSパケット中のアダプテーション・フィールドに格納されており、映像や音声などを備えたペイロードと共に伝送される場合もあれば、ペイロードを伴わずに単独で伝送される場合もある。したがって、１つのPID値がPCRのみを示すこともあれば、PCRおよび映像等の両方を示すこともある。
【００４１】
PIDフィルタ１０８によるTSパケットの振り分け先は、分離モード制御部１０５から通知される再生モードによって異なる。通常再生モードの場合には、PIDフィルタ１０８は、TSパケットがVideo ESを格納していれば、PTS補正部１１０に当該TSパケットを出力し、TSパケットがAudio ESを格納していれば、PTS補正部１１５に当該TSパケットを出力する。なお、PIDフィルタ１０８は、当該TSパケットのPIDが、PSI/SIセクション処理部１０９から与えられたPMTより検索できない場合には、当該TSパケットを破棄する。
【００４２】
またタイムシフト再生モードの場合は、PIDフィルタ１０８は、TS-I/F１０４の放送波用バッファから読み出されたTSパケットであれば、蓄積用バッファ１２３に対して転送を受け入れる要求を行い、蓄積用バッファ１２３に出力する。一方、再生用バッファ１２５から読み出されたTSパケットであれば、通常再生モードの場合と同様に、映像データのTSパケットは、PTS補正部１１０に出力し、音声データのTSパケットは、PTS補正部１１５に出力する。いずれの場合においても、PIDフィルタ１０８は、当該TSパケットのPIDが、PSI/SIセクション処理部１０９から与えられたPMTより検索できない場合には、当該TSパケットを破棄する。
【００４３】
タイムシフト蓄積モードの場合は、PIDフィルタ１０８は、TSパケットを蓄積用バッファ１２３へと転送する。なお、この場合、PIDフィルタ１０８は、当該TSパケットのPIDが、PSI/SIセクション処理部１０９から与えられたPMTより検索できない場合には、当該TSパケットを破棄するようにしてもよい。
【００４４】
またPIDフィルタ１０８は、いずれの再生モードの場合においても、シンタックス解析部１０７から与えられるTSパケットが、TS-I/F１０４の放送波用バッファから読み出されたTSパケットであって、当該TSパケットがPCRを含む場合に、当該PCRをSTC制御部１２２に出力する。一方、再生用バッファ１２５から読み出されたTSパケットの場合には、例えPCRを含んでいても、当該TSパケットをSTC制御部１２２に出力しない。
【００４５】
蓄積用バッファ１２３は、タイムシフト再生のためにPIDフィルタ１０８から出力されたTSパケットを、外部メモリ１２４に転送するためにバッファする。  
スイッチ２０２は、タイムシフトデータ管理部１２６によって切換制御され、蓄積用バッファ１２３にバッファされたTSパケットを、外部IF部２０４を介して外部メモリ１２４に出力するか、あるいはスイッチ２０３を介して再生用バッファ１２５に出力する。
【００４６】
外部メモリ１２４は、NAND型メモリなどを用いたフラッシュメモリであって、当該移動無線端末装置に外部IF部２０４を介して接続される着脱式のメモリである。また外部メモリ１２４は、タイムシフト再生用にデータを蓄積するためのバッファとして用いられる。
【００４７】
外部IF部２０４は、タイムシフトデータ管理部１２６からの指示にしたがって、スイッチ２０２を介して、蓄積用バッファ１２３からTSパケットを読み出し、この読み出したTSパケットを外部メモリ１２４に記録する。また、外部IF部２０４は、タイムシフトデータ管理部１２６からの指示にしたがって、外部メモリ１２４が記憶するTSパケットのデータ量を検出し、タイムシフトデータ管理部１２６に通知する。そして、外部IF部２０４は、タイムシフトデータ管理部１２６からの指示にしたがって、外部メモリ１２４が記憶するTSパケットを読み出し、スイッチ２０３を介して再生用バッファ１２５に記録する。
【００４８】
再生用バッファ１２５は、タイムシフト再生を行うために外部メモリ１２４から読み出されたTSパケットを、スイッチ２０１を介してシンタックス解析部１０７に転送するためにバッファする。
【００４９】
なお、蓄積用バッファ１２３、外部メモリ１２４および再生用バッファ１２５は、蓄積しているデータが他に転送されると、転送されたデータは消去される。すなわち、他に転送する場合、転送されるデータは、他にコピーされるのではなく、消去される。
【００５０】
また、蓄積用バッファ１２３と再生用バッファ１２５は、それぞれ２つの記憶エリアを備えており、１つの記憶エリアは、１ブロックに相当するデータを記憶できる。ここで、１ブロックとは、TSパケット数個分に相当する。そして、一方の記憶エリアからデータが読み出されているときに、他方の記憶エリアは、書き込みが行われるか待機状態となる。そして、一方の記憶エリアからの読み出しが完了した後、他方の記憶エリアに１ブロック分のデータが記録されると、このデータが読み出される。また外部メモリ１２４は、上記記憶エリアを多数備え、１つのエリア毎、すなわち１ブロックごとにデータの読み書きが行われる。
【００５１】
そしてまた、蓄積用バッファ１２３と再生用バッファ１２５は、外部メモリ１２４のように外部IF部２０４を介さないため、外部メモリ１２４に比べて高速な読み書きが可能である。
【００５２】
タイムシフトデータ管理部１２６は、分離モード制御部１０５からの指示にしたがって、タイムシフト再生を行うために、蓄積用バッファ１２３、外部メモリ１２４、再生用バッファ１２５がそれぞれ記憶するTSパケットを管理するものであって、これらに記憶されるデータ量を監視するとともに、これらのデータ量と再生モードの変更に応じて、スイッチ２０２，２０３の切換制御を行う。すなわち、タイムシフトデータ管理部１２６によって、蓄積用バッファ１２３、外部メモリ１２４および再生用バッファ１２５の間でのデータ転送が制御される。
【００５３】
PTS補正部１１０は、PIDフィルタ１０８からVideo ESが格納されたTSパケットが与えられる。そして、PTS補正部１１０は、上記TSパケットがPTSを含む場合に、このPTSを、必要に応じてタイムシフトなどにより遅延した時間を加算して補正する。この遅延時間は、タイムシフトを実施している際に、STC制御部１２２がSTCクロックでカウントして計時される。必要に応じてPTSが補正されたTSパケットは、ES抽出部１１１に出力される。
【００５４】
ただし、PTS補正部１１０に与えられたTSパケットが、TS-I/F１０４の放送波用バッファから読み出されたTSパケットの場合には、タイムシフトによる遅延はないため、例えPTSを含んでいてもPTS値の補正は行わない。なお、与えられたTSパケットが、TS-I/F１０４の放送波用バッファから読み出されたTSパケットか、あるいは再生用バッファ１２５から読み出されたTSパケットかは、入力制御部１０６からの割込信号によって判定する。
【００５５】
ES抽出部１１１は、PTS補正部１１０にて必要に応じてPTSが補正されたTSパケットから、Video ESを抽出し、これをバッファ１１２へ出力する。バッファ１１２は、ES抽出部１１１が抽出したVideo ESをバッファする。
【００５６】
Videoデコーダ１１３は、バッファ１１２に格納されているVideo ESを読み出し、これをデコードして映像データを得る。そして、Videoデコーダ１１３は、STC制御部１２２が出力するSTC値がVideo ESが格納するＰTSに達すると、上記映像データを映像信号に変換して、ディスプレイ１１４に出力する。これにより、ディスプレイ１１４は、Video ESに基づく映像を表示する。
【００５７】
PTS補正部１１５は、PIDフィルタ１０８からAudio ESが格納されたTSパケットが与えられる。そして、PTS補正部１１０と同様に、PTS補正部１１５は、上記TSパケットがPTSを含む場合に、このPTSを、必要に応じてタイムシフトなどにより遅延した時間を加算して補正する。
【００５８】
ただし、PTS補正部１１５に与えられたTSパケットが、TS-I/F１０４の放送波用バッファから読み出されたTSパケットの場合には、タイムシフトによる遅延はないため、例えPTSを含んでいてもPTS値の補正は行わない。なお、与えられたTSパケットが、TS-I/F１０４の放送波用バッファから読み出されたTSパケットか、あるいは再生用バッファ１２５から読み出されたTSパケットかは、入力制御部１０６からの割込信号によって判定する。
【００５９】
ES抽出部１１６は、PTS補正部１１５にて必要に応じてPTSが補正されたTSパケットから、Audio ESを抽出し、これをバッファ１１７へ出力する。バッファ１１７は、ES抽出部１１６が抽出したAudio ESをバッファする。
【００６０】
Audioデコーダ１１８は、バッファ１１７に格納されているAudio ESを読み出し、これをデコードして音声データを得る。そして、Audioデコーダ１１８は、STC制御部１２２が出力するSTC値がAudio ESが格納するＰTSに達すると、上記音声データをDAC１１９に出力して音声信号に変換し、スピーカ１２０に出力する。これにより、スピーカ１２０は、Audio ESに基づく音声を拡声出力する。
【００６１】
データコンテンツ処理部１２１は、PIDフィルタ１０８から与えられたデータコンテンツを処理する。例えば、データコンテンツに字幕データが含まれる場合には、データコンテンツ処理部１１９は、データコンテンツから字幕データを復元して再生し、これを字幕または文字スーパーとして、映像に重ねてディスプレイ１１４に表示する。
【００６２】
なお、ここでは図示しないが、Videoデコーダ１１３とディスプレイ１１４との間には、ディスプレイコントローラが存在する。このディスプレイコントローラは、Videoデコーダ１１３が出力する映像と、データコンテンツ処理部１２１が出力するデータコンテンツを合わせてディスプレイ１１４に表示するよう制御することも可能である。
【００６３】
STC制御部１２２は、STCを生成するものであって、生成したSTCを、TS-I/F１０４、ＰTS補正部１１０、ＰTS補正部１１５、Videoデコーダ１１３およびAudioデコーダ１１８などに供給する。また、STC制御部１２２は、PIDフィルタ１０８からPCRが与えられると、このPCRに基づいてクロック・リカバリを実行し、補正したタイミングでSTCを生成する。具体的には、STCのカウント値とPCRとの差分が小さくなるように、STCの動作周波数を制御する。
【００６４】
次に、上記構成の受信装置の動作について説明する。以下の説明では特に、通常再生モードからタイムシフト再生モードに移行し、その後再び、通常再生モードに移行する場合の動作について説明する。この動作は、例えばユーザが通常モードにより地上波デジタル放送を視聴している際に、ユーザが視聴を一時的に中断したり、あるいは着信などのイベントが発生してタイムシフト再生モードを視聴を行い、その後、早送り再生やＣＭスキップなどにより、バッファしておいたTSパケットが枯渇し、再び通常再生モードを行うようになる状況などを想定している。
【００６５】
まず、分離モード制御部１０５の動作について説明する。図４に、分離モード制御部１０５の制御フローを示す。この制御フローは、ユーザインタフェースを通じてユーザから地上波デジタル放送を受信するように指示があった場合に開始される。なお、この指示により、地上波デジタル放送の受信に関わる構成（チューナ１０２など）が起動される。
【００６６】
ステップ４ａにおいて分離モード制御部１０５は、通常再生モードで動作するように各部（入力制御部１０６およびタイムシフトデータ管理部１２６など）に通知し、ステップ４ｂに移行する。これにより、入力制御部１０６は、シンタックス解析部１０７がTS-I/F部１０４の放送波用バッファからTSパケットが転送できるようにするために、スイッチ２０１をTS-I/F部１０４側に切り替える。このスイッチ２０１の状態は、通常再生モードの間、固定される。
【００６７】
またPIDフィルタ１０８には、入力制御部１０６によるスイッチ２０１の設定を認識するので、シンタックス解析部１０７が出力するPIDとTSパケットを、蓄積用バッファ１２３に転送することなくそのまま再生するように、後段の対応する各部に出力する。これにより通常の再生が開始される。
【００６８】
ステップ４ｂにおいて分離モード制御部１０５は、ユーザインタフェースを通じてユーザからタイムシフト再生モードの要求が与えられたか否かを判定する。ここで、タイムシフト再生モードの要求を検出した場合には、ステップ４ｄに移行し、一方、タイムシフト再生モードの要求を検出できなかった場合には、ステップ４ｃに移行する。
【００６９】
ステップ４ｃにおいて分離モード制御部１０５は、音声着信などのイベント発生が通信制御部から通知されたか否かを判定する。ここで、イベント発生を検出した場合には、ステップ４ｄに移行し、一方、イベント発生を検出できなかった場合には、ステップ４ｂに移行する。
【００７０】
ステップ４ｄにおいて分離モード制御部１０５は、タイムシフト再生モードで動作するように各部（入力制御部１０６およびタイムシフトデータ管理部１２６など）に通知し、ステップ４ｅに移行する。これにより、入力制御部１０６は、シンタックス解析部１０７がTS-I/F部１０４の放送波用バッファと、再生用バッファ１２５とを選択的に切り替えて、これらのバッファからTSパケットが転送できるようにするために、スイッチ２０１を周期的に切り替える制御を開始する。
【００７１】
またこの切替制御は、PIDフィルタ１０８に認識され、TS-I/F部１０４の放送波用バッファから転送されたTSパケットは、いったん蓄積用バッファ１２３を経由するように転送され、蓄積用バッファ１２３を経由し再生用バッファ１２５から転送されたTSパケットを再生するように、後段の対応する各部に出力する。これによりタイムシフト再生が開始される。
【００７２】
ステップ４ｅにおいて分離モード制御部１０５は、タイムシフトデータ管理部１２６からタイムシフトのためにバッファしているデータが枯渇した旨を示す通知を受けたか否かを判定する。ここで、データ枯渇の通知を受けた場合には、ステップ４ｆに移行し、一方、データ枯渇の通知を受けていない場合には、ステップ４ｇに移行する。
【００７３】
ステップ４ｆにおいて分離モード制御部１０５は、PIDフィルタ１０８、PTS補正部１１０およびPTS補正部１１５に、分離モードの変更を通知する。すなわち、タイムシフト再生モードから通常再生モードに移行するために、PIDフィルタ１０８に対しては、蓄積用バッファ１２３へのTSパケット転送が不要になることを認識させ、そして、PTS補正部１１０およびPTS補正部１１５に対しては、通常再生モードにもどるための復帰条件を判断するよう通知する。これにより、PTS補正部１１０およびPTS補正部１１５は、所定の復帰条件を満たす監視を開始し、その後、この復帰条件を満たしたことを検知すると、分離モード制御部１０５に対して通知を行う。
【００７４】
これにより、PIDフィルタ１０８は、すぐさま蓄積用バッファ１２３へのTSパケット転送を停止し、一方、PTS補正部１１０およびPTS補正部１１５は、一定の時間が経過して、タイムシフト再生用のバッファ（蓄積用バッファ１２３、外部メモリ１２４および再生用バッファ１２５）内のデータが完全に枯渇し、さらにその後、所定の条件を満たした後に、PTS補正を停止する。
【００７５】
ステップ４ｇにおいて分離モード制御部１０５は、ユーザインタフェースを通じてユーザから通常再生モードの要求が与えられたか否かを判定する。ここで、通常再生モードの要求を検出した場合には、ステップ４ｈに移行し、一方、タイムシフト再生モードの要求を検出できなかった場合には、ステップ４ｅに移行する。
【００７６】
ステップ４ｈにおいて分離モード制御部１０５は、タイムシフトデータ管理部１２６に対して、通常再生モードに切り替える通知を行い、ステップ４ｉに移行する。  
ステップ４ｉにおいて分離モード制御部１０５は、蓄積用バッファ１２３、外部メモリ１２４および再生用バッファ１２５がそれぞれ蓄積するデータを破棄するように対応する各部を制御し、ステップ４ａに移行して、通常再生モードを開始する。特に、タイムシフトデータ管理部１２６には、ユーザ要求により通常再生モードの要求があった旨を通知する。これにより、蓄積用バッファ１２３および再生用バッファ１２５は、それぞれ蓄積するデータを破棄する。また外部メモリ１２４は、後述する処理（ステップ５ｆ）によって、蓄積しているデータを破棄する。
【００７７】
次に、タイムシフトデータ管理部１２６の動作について説明する。図５乃至図９に、タイムシフトデータ管理部１２６の制御フローを示す。この制御フローは、分離モード制御部１０５からタイムシフト再生モードを開始する指示があった場合（ステップ４ｄ）に開始される。
【００７８】
まず図５のステップ５ａにおいてタイムシフトデータ管理部１２６は、スイッチ２０２およびスイッチ２０３を初期状態に設定するとともに、外部IF部２０４を通じて外部メモリに蓄積されるTSパケットのデータ量の監視を開始し、ステップ５ｂに移行する。なお、スイッチ２０２およびスイッチ２０３の初期状態とは、蓄積用バッファ１２３に蓄積されるデータが外部IF部２０４を通じて外部メモリ１２４に転送できるようにスイッチ２０２を切り替えるとともに、外部メモリ１２４に蓄積されるデータが外部IF部２０４を通じて再生用バッファ１２５に転送できるようにスイッチ２０３を切り替える。
【００７９】
ステップ５ｂにおいてタイムシフトデータ管理部１２６は、図６に示すような蓄積用バッファ１２３のデータ蓄積に関する制御Ａと、図７に示すような外部メモリ１２４のデータ蓄積に関する制御Ｂと、図８に示すような再生用バッファ１２５のデータ蓄積に関する制御Ｃ１をそれぞれ開始し、ステップ５ｃに移行する。
【００８０】
これらの制御により、後に詳述するようにして、PIDフィルタ１０８から転送されたTSパケットが蓄積用バッファ１２３に一時的に蓄積された後、スイッチ２０２および外部IF部２０４を介して外部メモリ１２４に蓄積される。そして、外部メモリ１２４に蓄積されたTSパケットは、外部IF部２０４およびスイッチ２０３を介して再生用バッファ１２５に蓄積されたのち、スイッチ２０１およびシンタックス解析部１０７を経由し、PIDフィルタ１０８などを介して後段の対応する各部に出力される。これによりタイムシフト再生が実現する。
【００８１】
ステップ５ｃにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４に蓄積されるデータ量が予め設定した第１閾値に達した後、第２閾値（＜第１閾値）以下になったか否かを判定する。ここで、第２閾値以下になったことを検出した場合には、ステップ５ｅに移行し、一方、第２閾値以下になったことを検出しない場合には、ステップ５ｇに移行する。
【００８２】
ステップ５ｄにおいてタイムシフトデータ管理部１２６は、分離モード制御部１０５から通常再生モードに切り替える通知を検出されたか否かを判定する。ここで通常再生モードに切り替える通知を検出した場合（ステップ４ｇに対応）には、ステップ５ｅに移行し、一方、上記通知を検出しない場合には、ステップ５ｃに移行する。
【００８３】
ステップ５ｅにおいてタイムシフトデータ管理部１２６は、ステップ５ｄで検出した通知がユーザ要求に基づくものであるか否かを判定する。ここで、ユーザ要求に基づくものである場合には、ステップ５ｆに移行し、一方、ユーザ要求に基づくものでない場合には、ステップ５ｇに移行する。
【００８４】
ステップ５ｆにおいてタイムシフトデータ管理部１２６は、外部IF部２０４を通じて、外部メモリ１２４内に蓄積したタイムシフト再生のためのデータを消去し、当該処理を終了する。
【００８５】
ステップ５ｇにおいてタイムシフトデータ管理部１２６は、ステップ５ｂで開始した制御Ａについては継続して実行し、制御Ｂについては停止する。また、再生用バッファ１２５のデータ蓄積に関する制御として、制御Ｃ１に代わって図９に示すような制御Ｃ２を開始し、当該処理を終了する。
【００８６】
これらの制御により、後に詳述するようにして、蓄積用バッファ１２３から外部メモリ１２４へのTSパケット転送を停止し、その後、外部メモリ１２４および蓄積用バッファ１２３に蓄積されたTSパケットが枯渇したのに応じて、通常再生モードに移行する。
【００８７】
次に、図６に示した制御Ａについて説明する。この制御Ａは、蓄積用バッファ１２３へのデータ蓄積および読み出し用の記憶エリアの切り替えに関する制御であって、タイムシフトデータ管理部１２６によってなされ、制御Ｂや制御Ｃ１、Ｃ２と並行して実行することが可能であって、図５に示した制御では、ステップ５ｂにより、制御Ｂや制御Ｃ１と並行して実行され、またステップ５ｅにより、制御Ｃ２と並行して実行される。図６に示すフローチャートは、繰り返し実行される。
【００８８】
まず、ステップ６ａにおいてタイムシフトデータ管理部１２６は、蓄積用バッファ１２３が蓄積するデータの状態を検出し、ステップ６ｂに移行する。具体的には、蓄積用バッファ１２３が備える２つの記憶エリアが、それぞれ１ブロック分のTSパケットを記憶しているか否かを検出する。
【００８９】
ステップ６ｂにおいてタイムシフトデータ管理部１２６は、PIDフィルタ１０８からTSパケットの受け入れ要求があったか否かを判定する。ここで、PIDフィルタ１０８からTSパケットの受け入れ要求があった場合には、ステップ６ｆに移行し、一方、上記要求がない場合には、ステップ６ｃに移行する。
【００９０】
ステップ６ｃにおいてタイムシフトデータ管理部１２６は、ステップ６ａの検出結果に基づいて、蓄積用バッファ１２３が有する２つの記憶エリアのうち、外部メモリ１２４にデータを転送している方の記憶エリアに蓄積されるデータ量が予め設定した第３閾値以下になったか否かを判定する。ここで、第３閾値以下になったことを検出した場合には、ステップ６ｄに移行し、一方、第３閾値以下になったことを検出しない場合には、ステップ６ａに移行する。
【００９１】
ステップ６ｄにおいてタイムシフトデータ管理部１２６は、蓄積用バッファ１２３が有する２つの記憶エリアのうち、外部メモリ１２４にデータを転送していない方の記憶エリアが１ブロック分のデータを蓄積しているか否かを判定する。ここで、１ブロック分のデータを蓄積している場合には、ステップ６ｅに移行し、一方、１ブロック分のデータを蓄積していない場合には、ステップ６ａに移行する。
【００９２】
ステップ６ｅにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４にデータを転送している方の記憶エリアが空になることを確認した後、外部メモリ１２４にデータを転送する記憶エリアとして、１ブロック分のTSパケットで満たされた他方の記憶エリアを設定し、ステップ６ａに移行する。これにより、以後、外部メモリ１２４へのデータ転送は、この記憶エリア内のデータが無くなるまで、この記憶エリアから行われる。
【００９３】
ステップ６ｆにおいてタイムシフトデータ管理部１２６は、ステップ６ａの検出結果に基づいて、蓄積用バッファ１２３の２つの記憶エリアのうち、外部メモリ１２４にデータを転送していない方の記憶エリアに１ブロック分のデータが蓄積されているか否かを判定する。ここで、１ブロック分のデータを蓄積している場合には、ステップ６ｈに移行し、一方、１ブロック分のデータを蓄積していない場合には、ステップ６ｇに移行する。
【００９４】
ステップ６ｇにおいてタイムシフトデータ管理部１２６は、蓄積用バッファ１２３の空いている記憶エリアに、PIDフィルタ１０８から転送されたTSパケットを記録し、ステップ６ａに移行する。  
ステップ６ｈにおいてタイムシフトデータ管理部１２６は、１ブロック分のTSパケットで満たされている記憶エリアが記憶するデータを破棄し、代わりにPIDフィルタ１０８から転送されたTSパケットを記録して、ステップ６ａに移行する。
【００９５】
このような制御Ａにより、PIDフィルタ１０８から転送要求が与えられると、蓄積用バッファ１２３が有する２つの記憶エリアのうち、外部メモリ１２４にデータを転送する設定が為されていない方の記憶エリアにPIDフィルタ１０８から転送されるTSパケットを記録する。ここで、すでに１ブロック分のデータが蓄積されている場合には、上書き保存される。また外部メモリ１２４にデータが転送されて一方の記憶エリアが第３閾値以下になると、残りのデータが転送されたことを確認した後、他方の記憶エリアが新たに外部メモリ１２４にデータを転送する記憶エリアとして設定される。
【００９６】
次に、図７に示した制御Ｂについて説明する。この制御Ｂは、外部メモリ１２４へのデータ蓄積に関する制御であって、タイムシフトデータ管理部１２６によってなされ、制御Ａや制御Ｃ１、Ｃ２と並行して実行することが可能であって、図５に示した制御では、ステップ５ｂにより、制御Ａと制御Ｃ１と並行して実行される。図７に示すフローチャートは、開始されると、ステップ５ｅに至るまで繰り返し実行される。
【００９７】
まず、ステップ７ａにおいてタイムシフトデータ管理部１２６は、蓄積用バッファ１２３に、１ブロック分のTSパケットを蓄積した記憶エリアが存在するか否かを判定する。ここで、１ブロック分のTSパケットを蓄積した記憶エリアが存在する場合には、ステップ７ｂに移行し、一方、存在しない場合には、再びステップ７ａにて同じ判定を行い、蓄積用バッファ１２３の記憶エリアが、１ブロック分のTSパケットを蓄積するまで待機する。
【００９８】
ステップ７ｂにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４が蓄積するデータの状態を検出し、ステップ７ｃに移行する。  
ステップ７ｃにおいてタイムシフトデータ管理部１２６は、ステップ７ｂの検出結果に基づいて、外部メモリ１２４に、空いている記憶エリア、すなわち１ブロック分のTSパケットで満たされていない記憶エリアがあるか否かを判定する。ここで、空いている記憶エリアがある場合には、ステップ７ｄに移行し、一方、空いている記憶エリアがない場合には、ステップ７ｅに移行する。
【００９９】
ステップ７ｄにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４の空いている記憶エリアに、１ブロック分のTSパケットで満たされた蓄積用バッファ１２３の記憶エリアからTSパケットを読み出して記録するように、外部IF部２０４を制御し、当該処理を終了する。
【０１００】
ステップ７ｅにおいてタイムシフトデータ管理部１２６は、１ブロック分のTSパケットで満たされている外部メモリ１２４の１つの記憶エリアからデータを破棄し、１ブロック分のTSパケットで満たされた蓄積用バッファ１２３の記憶エリアからTSパケットを読み出して記録するように、外部IF部２０４を制御し、当該処理を終了する。
【０１０１】
このような制御Ｂにより、蓄積用バッファ１２３が有する２つの記憶エリアのうち、外部メモリ１２４にデータを転送する方の記憶エリアに、１ブロック分のTSパケットで満たされていることを検出すると、このデータを読み出して外部メモリ１２４の空いているエリアに記録する。ここで、空いている記憶エリアがない場合には、古いデータに上書き保存される。
【０１０２】
次に、図８に示した制御Ｃ１について説明する。この制御Ｃ１は、再生用バッファ１２５へのデータ蓄積と、読み出される記憶エリアの切り替えに関する制御であって、タイムシフトデータ管理部１２６によってなされ、制御Ａや制御Ｂと並行して実行することが可能であって、図５に示した制御では、ステップ５ｂにより、制御Ａおよび制御Ｂと並行して実行される。図８に示すフローチャートは、開始されると、ステップ５ｅに至るまで繰り返し実行される。
【０１０３】
まず、ステップ８ａにおいてタイムシフトデータ管理部１２６は、再生用バッファ１２５および外部メモリ１２４がそれぞれ蓄積するデータの状態を検出し、ステップ８ｂに移行する。
【０１０４】
ステップ８ｂにおいてタイムシフトデータ管理部１２６は、ステップ８ａの検出結果に基づいて、再生用バッファ１２５が有する２つの記憶エリアのうち、シンタックス解析部１０７にデータを転送している方の記憶エリアに蓄積されるデータ量が予め設定した第４閾値（例えば、「０」）以下になったか否かを判定する。ここで、第４閾値以下になったことを検出した場合には、ステップ８ｆに移行し、一方、第４閾値以下になったことを検出しない場合には、ステップ８ｃに移行する。
【０１０５】
ステップ８ｃにおいてタイムシフトデータ管理部１２６は、再生用バッファ１２５が有する２つの記憶エリアのうち、シンタックス解析部１０７にデータを転送していない方の記憶エリアが１ブロック分のデータを蓄積しているか否かを判定する。ここで、１ブロック分のデータを蓄積している場合には、ステップ８ａに移行し、一方、１ブロック分のデータを蓄積していない場合には、ステップ８ｄに移行する。
【０１０６】
ステップ８ｄにおいてタイムシフトデータ管理部１２６は、外部IF部２０４を制御して外部メモリ１２４からデータを読み出し、このデータを、シンタックス解析部１０７にデータを転送していない方の記憶エリアにデータを書き込んで、１ブロック分のTSパケットで満たし、ステップ８ａに移行する。
【０１０７】
ステップ８ｅにおいてタイムシフトデータ管理部１２６は、再生用バッファ１２５が有する２つの記憶エリアのうち、シンタックス解析部１０７にデータを転送していない方の記憶エリアが１ブロック分のデータを蓄積しているか否かを判定する。ここで、１ブロック分のデータを蓄積している場合には、ステップ８ｇに移行し、一方、１ブロック分のデータを蓄積していない場合には、ステップ８ｆに移行する。
【０１０８】
ステップ８ｆにおいてタイムシフトデータ管理部１２６は、外部IF部２０４を制御して外部メモリ１２４からデータを読み出し、このデータを、シンタックス解析部１０７にデータを転送していない方の記憶エリアにデータを書き込んで、１ブロック分のTSパケットで満たし、ステップ８ｇに移行する。
【０１０９】
ステップ８ｇにおいてタイムシフトデータ管理部１２６は、シンタックス解析部１０７にデータを転送している方の記憶エリアが空になることを確認した後、新たにシンタックス解析部１０７にデータを転送する記憶エリアとして、１ブロック分のTSパケットで満たされた他方の記憶エリアを設定し、ステップ８ａに移行する。これにより、以後、シンタックス解析部１０７へのデータ転送は、この記憶エリア内のデータが無くなるまで、この記憶エリアから行われる。
【０１１０】
このような制御Ｃ１により、再生用バッファ１２５が有する２つの記憶エリアのうち、一方の記憶エリアがシンタックス解析部１０７にデータを転送する記憶エリアとして用いられ、その間に、他方の記憶エリアに、外部メモリ１２４から読み出された１ブロック分のデータが蓄積されていることになる。そして、シンタックス解析部１０７にデータが転送されて一方の記憶エリアが第４閾値以下になると、残りのデータが転送されたことを確認した後、他方の記憶エリアが新たにシンタックス解析部１０７にデータを転送する記憶エリアとして設定される。
【０１１１】
次に、図９に示した制御Ｃ２について説明する。この制御Ｃ２は、再生用バッファ１２５へのデータ蓄積と、読み出される記憶エリアの切り替えに関する制御であって、タイムシフトデータ管理部１２６によってなされ、制御Ａや制御Ｂと並行して実行することが可能であって、図５に示した制御では、ステップ５ｅにより、制御Ａと並行して実行される。図９に示すフローチャートは、開始されると、タイムシフト再生モードが終了するまで繰り返し実行される。
【０１１２】
まず、ステップ９ａにおいてタイムシフトデータ管理部１２６は、スイッチ２０２を切替制御し、蓄積用バッファ１２３から読み出されたデータが、スイッチ２０３に転送されるようにし、ステップ９ｂに移行する。  
ステップ９ｂにおいてタイムシフトデータ管理部１２６は、再生用バッファ１２５および外部メモリ１２４がそれぞれ蓄積するデータの状態を検出し、ステップ９ｃに移行する。
【０１１３】
ステップ９ｃにおいてタイムシフトデータ管理部１２６は、ステップ９ｂの検出結果に基づいて、再生用バッファ１２５が有する２つの記憶エリアのうち、シンタックス解析部１０７にデータを転送している方の記憶エリアに蓄積されるデータ量が予め設定した第４閾値以下になったか否かを判定する。ここで、第４閾値以下になったことを検出した場合には、ステップ９ｊに移行し、一方、第４閾値以下になったことを検出しない場合には、ステップ９ｄに移行する。
【０１１４】
ステップ９ｄにおいてタイムシフトデータ管理部１２６は、再生用バッファ１２５が有する２つの記憶エリアのうち、シンタックス解析部１０７にデータを転送していない方の記憶エリアが１ブロック分のデータを蓄積しているか否かを判定する。ここで、１ブロック分のデータを蓄積している場合には、ステップ９ｂに移行し、一方、１ブロック分のデータを蓄積していない場合には、ステップ９ｅに移行する。
【０１１５】
ステップ９ｅにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４にデータが残っているか否かを判定する。ここで、外部メモリ１２４にデータが残っている場合には、ステップ９ｆに移行し、一方、外部メモリ１２４にデータが残っていない場合には、ステップ９ｇに移行する。
【０１１６】
ステップ９ｆにおいてタイムシフトデータ管理部１２６は、外部IF部２０４を制御して外部メモリ１２４からデータを読み出し、このデータを、シンタックス解析部１０７にデータを転送していない方の記憶エリアにデータを書き込んで、１ブロック分のデータで満たし、ステップ９ｂに移行する。
【０１１７】
ステップ９ｇにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４にデータが残されていないことより、スイッチ２０３を切替制御し、蓄積用バッファ１２３から読み出されたデータが、再生用バッファ１２５に転送されるようにし、ステップ９ｂに移行する。
【０１１８】
ステップ９ｈにおいてタイムシフトデータ管理部１２６は、蓄積用バッファ１２３にデータが残っているか否かを判定する。ここで、蓄積用バッファ１２３にデータが残っている場合には、ステップ９ｉに移行し、一方、蓄積用バッファ１２３にデータが残っていない場合には、ステップ９ｂに移行する。
【０１１９】
ステップ９ｉにおいてタイムシフトデータ管理部１２６は、外部IF部２０４を制御して蓄積用バッファ１２３からデータを読み出し、このデータを、シンタックス解析部１０７にデータを転送していない方の記憶エリアにデータを書き込んで、ステップ９ｂに移行する。
【０１２０】
ステップ９ｊにおいてタイムシフトデータ管理部１２６は、再生用バッファ１２５が有する２つの記憶エリアのうち、シンタックス解析部１０７にデータを転送していない方の記憶エリアが１ブロック分のデータを蓄積しているか否かを判定する。ここで、１ブロック分のデータを蓄積している場合には、ステップ９ｍに移行し、一方、１ブロック分のデータを蓄積していない場合には、ステップ９ｋに移行する。
【０１２１】
ステップ９ｋにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４にデータが残っているか否かを判定する。ここで、外部メモリ１２４にデータが残っている場合には、ステップ９ｌに移行し、一方、外部メモリ１２４にデータが残っていない場合には、ステップ９ｎに移行する。
【０１２２】
ステップ９ｌにおいてタイムシフトデータ管理部１２６は、外部IF部２０４を制御して外部メモリ１２４からデータを読み出し、このデータを、シンタックス解析部１０７にデータを転送していない方の記憶エリアにデータを書き込んで１ブロック分のデータで満たし、ステップ９ｇに移行する。
【０１２３】
ステップ９ｍにおいてタイムシフトデータ管理部１２６は、シンタックス解析部１０７にデータを転送している方の記憶エリアが空になることを確認した後、新たにシンタックス解析部１０７にデータを転送する記憶エリアとして、１ブロック分のTSパケットで満たされた他方の記憶エリアを設定し、ステップ９ｂに移行する。これにより、以後、シンタックス解析部１０７へのデータ転送は、この記憶エリア内のデータが無くなるまで、この記憶エリアから行われる。
【０１２４】
ステップ９ｎにおいてタイムシフトデータ管理部１２６は、外部メモリ１２４にデータが残されていないことより、スイッチ２０３を切替制御し、蓄積用バッファ１２３から読み出されたデータが、再生用バッファ１２５に転送されるようにし、ステップ９ｏに移行する。
【０１２５】
ステップ９ｏにおいてタイムシフトデータ管理部１２６は、蓄積用バッファ１２３にデータが残っている（あるいは残っているデータ量が第５の閾値以上）か否かを判定する。ここで、蓄積用バッファ１２３にデータが残っている場合には、ステップ９ｐに移行し、一方、蓄積用バッファ１２３にデータが残っていない場合には、ステップ９ｑに移行する。
【０１２６】
ステップ９ｐにおいてタイムシフトデータ管理部１２６は、蓄積用バッファ１２３からデータを読み出し、このデータを、再生用バッファ１２５の記憶エリアのうち、シンタックス解析部１０７にデータを転送していない方の記憶エリアにデータを書き込んで、ステップ９ｂに移行する。
【０１２７】
ステップ９ｑにおいてタイムシフトデータ管理部１２６は、分離モード制御部１０５に対して、タイムシフト再生用のバッファ（蓄積用バッファ１２３、外部メモリ１２４および再生用バッファ１２５）（中村コメント；ステップ９oの条件がＮＯで９qに進んだ場合、外部メモリ及び蓄積用バッファは空になっていることは自明ですが、再生用バッファ）に蓄積されるデータが枯渇した旨を通知し、当該処理を終了する。これにより分離モード制御部１０５は、まもなく上記タイムシフト再生用のバッファに蓄積されるデータが枯渇することを認識する（ステップ４ｅ）。
【０１２８】
このような制御Ｃ２により、再生用バッファ１２５が有する２つの記憶エリアのうち、一方の記憶エリアがシンタックス解析部１０７にデータを転送する記憶エリアとして用いられ、その間に、他方の記憶エリアに、外部メモリ１２４から読み出された１ブロック分のデータが蓄積されていることになる。
【０１２９】
そして、シンタックス解析部１０７にデータが転送されて一方の記憶エリアが第４閾値以下になると、残りのデータが転送されたことを確認した後、他方の記憶エリアが新たにシンタックス解析部１０７にデータを転送する記憶エリアとして設定される。
【０１３０】
また外部メモリ１２４に蓄積されるデータが無くなることより、TSパケットの転送経路を外部メモリ１２４を介さずに、内部メモリ（蓄積用バッファ１２３および再生用バッファ１２５）のみを介した経路に切り替え、やがて内部メモリにも蓄積されるデータが無くなると（第４閾値以下）、この旨を分離モード制御部１０５に通知するようにしている。
【０１３１】
なお、上記の説明では、１ブロック分のデータが溜まっているか否かに応じて動作するものとして説明したが、タイムシフト再生モードから通常再生モードに移行する過程においては、蓄積用バッファ１２３や再生用バッファ１２５に蓄積されたデータを全て再生してから通常再生モードに移行するために、蓄積されるデータが１ブロック分に満たない場合でも、その蓄積されたデータを積極的にシンタックス解析部１０７に転送するように動作する。
【０１３２】
以上のように、上記構成の受信装置では、タイムシフト再生時にTSパケットを外部IF部２０４を介して接続される外部メモリ１２４に蓄積するために、外部メモリ１２４の前段に蓄積用バッファ１２３を備えるとともに、外部メモリ１２４の後段には再生用バッファ１２５を備えるようにし、タイムシフト再生が進行するうちに、外部メモリ１２４でのデータ蓄積がなくなると、外部メモリ１２４を介さずに、外部メモリ１２４よりも高速な読み書きが可能な蓄積用バッファ１２３と再生用バッファ１２５で一時的なタイムシフトを行った後、通常再生モードに移行するようにしている。
【０１３３】
すなわち、外部IF部２０４を介した外部メモリ１２４にTSパケットを蓄積してタイムシフト再生を行い、外部メモリ１２４に蓄積されるデータ量が閾値よりも少なくなると、データを外部メモリ１２４よりも高速に読み書きが可能な内部メモリ（蓄積用バッファ１２３および再生用バッファ１２５）を用いてタイムシフト再生を行うようにしている。
【０１３４】
したがって、上記構成の受信装置によれば、タイムシフト再生のために、バッファに比較的大きなブロックサイズでデータ転送を行うようにしても、外部メモリと内部メモリの切り替えにより、タイムシフト再生モードから通常再生モードに切り替える過程で再生品質が低下することを防止できる。また比較的大きなブロックサイズでデータ転送を行うため、バッファに転送するデータのオーバーヘッドを縮小することもできる。
【０１３５】
なお、この発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また上記実施形態に開示されている複数の構成要素を適宜組み合わせることによって種々の発明を形成できる。また例えば、実施形態に示される全構成要素からいくつかの構成要素を削除した構成も考えられる。さらに、異なる実施形態に記載した構成要素を適宜組み合わせてもよい。
【０１３６】
その一例として例えば、上記実施の形態では、蓄積用バッファ１２３と再生用バッファ１２５を別のメモリバッファとして設けるようにしたが、これに代わって例えば、１つのメモリバッファ内に、蓄積用バッファ１２３として用いる２つの記憶エリアと、再生用バッファ１２５として用いる２つの記憶エリアを備えて実現するようにしてもよい。  
また、上記実施の形態では、蓄積用バッファ１２３と再生用バッファ１２５に、それぞれ２つの記憶エリアを設けるようにしたが、それぞれ３つ以上の記憶エリアを設けるようにしても酔い。
【０１３７】
そしてまた、上記実施の形態では、ワンセグを例に挙げて説明したが、これに限定されるものではなく、１２セグメントを利用した放送に適用することもできる。また地上波デジタル放送に限らず、衛星放送や有線放送であっても、デジタル放送であれば適用することができる。  
その他、この発明の要旨を逸脱しない範囲で種々の変形を施しても同様に実施可能であることはいうまでもない。
【図面の簡単な説明】
【０１３８】
【図１】この発明に係わる受信装置の一実施の形態の構成を示す回路ブロック図。
【図２】図１に示した受信装置で受信するTSパケットのデータフォーマットを説明するための図。
【図３】図１に示した受信装置で受信するTSパケットのデータフォーマットを説明するための図。
【図４】図１に示した受信装置の分離モード制御部の動作を説明するためのフローチャート。
【図５】図１に示した受信装置のタイムシフトデータ管理部の動作を説明するためのフローチャート。
【図６】図１に示した受信装置のタイムシフトデータ管理部の動作を説明するためのフローチャート。
【図７】図１に示した受信装置のタイムシフトデータ管理部の動作を説明するためのフローチャート。
【図８】図１に示した受信装置のタイムシフトデータ管理部の動作を説明するためのフローチャート。
【図９】図１に示した受信装置のタイムシフトデータ管理部の動作を説明するためのフローチャート。
【符号の説明】
【０１３９】
１０１…アンテナ、１０２…チューナ、１０３…復調部、１０４…TS-I/F部、１０５…分離モード制御部、１０６…入力制御部、１０７…シンタックス解析部、１０８…PIDフィルタ、１０９…PSI/SIセクション処理部、１１０，１１５…PTS補正部、１１１…ES抽出部、１１２…バッファ、１１３…Videoデコーダ、１１４…ディスプレイ、１１５…PTS補正部、１１６…ES抽出部、１１７…バッファ、１１８…デコーダ、１１９…データコンテンツ処理部、１２０…スピーカ、１２１…データコンテンツ処理部、１２２…STC制御部、１２３…蓄積用バッファ、１２４…外部メモリ、１２５…再生用バッファ、１２６…タイムシフトデータ管理部、２０１，２０２，２０３…スイッチ、２０４…外部IF部。
【図１】
0004477056.tif 000002
【図２】
0004477056.tif 000003
【図３】
0004477056.tif 000004
【図４】
0004477056.tif 000005
【図５】
0004477056.tif 000006
【図６】
0004477056.tif 000007
【図７】
0004477056.tif 000008
【図８】
0004477056.tif 000009
【図９】
0004477056.tif 000010