JP4589355B2 - ストリーム再生装置 - Google Patents

ストリーム再生装置 Download PDF

Info

Publication number
JP4589355B2
JP4589355B2 JP2007095342A JP2007095342A JP4589355B2 JP 4589355 B2 JP4589355 B2 JP 4589355B2 JP 2007095342 A JP2007095342 A JP 2007095342A JP 2007095342 A JP2007095342 A JP 2007095342A JP 4589355 B2 JP4589355 B2 JP 4589355B2
Authority
JP
Japan
Prior art keywords
packet
pts
time
buffer
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007095342A
Other languages
English (en)
Other versions
JP2008258665A (ja
Inventor
勇太 中村
裕和 川勝
龍則 斉藤
弘史 森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2007095342A priority Critical patent/JP4589355B2/ja
Publication of JP2008258665A publication Critical patent/JP2008258665A/ja
Application granted granted Critical
Publication of JP4589355B2 publication Critical patent/JP4589355B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、トランスポート・ストリームによって伝送される映像又は音声データを再生する装置に関する。
第3世代を基本とする携帯電話で受信する地上波デジタル放送(ワンセグ)では、画像データはH.264/AVCで符号化され、音声データはMPEG−2 AACで符号化される。これら符号化された映像データ及び音声データは、エレメンタリ・ストリーム(以下単にESと称する。)と呼ばれ、パケット化エレメンタリ・ストリーム(PES;packetized elementary stream)パケット(以下単にPESパケットと称する。)としてMPEG−2 SYSTEMS中のトランスポート・ストリームに多重化されて伝送されている。
トランスポート・ストリームには、トランスポート・ストリーム・パケット(以下単にTSパケットと称する)が配列されている。TSパケット中には、ビデオ情報及びオーディオ情報を構成するビット・ストリームの種類(属性)を示す属性情報、ビット・ストリーム、及びメディア間の同期をとるためのプログラム時刻基準参照値(以下単にPCRと称する)と称される基準クロック情報などを格納させることができる。TSパケットは無線または有線を介して伝送される。
受信側ではTSパケットが記録されると共に、PCRを有するTSパケットを受信すると、送信側に対して受信側でのクロック同期を取るためにシステム・タイム・クロック(以下単にSTCと称する)をカウントするSTCカウンタの制御にPCRが用いられる。具体的には、送信側のPCRを27MHzでサンプリングした値を抽出し、受信側のSTC値と比較することによりSTCを調整している(クロック・リカバリ)。
受信側では、STCカウンタによってカウントされたSTC値が表示時刻タイム・スタンプ(PTS)以上になると、ESが同期再生される。また、ストリーム再生の方法として、放送波から受信したTSパケット中の映像及び音声を順次デコード及び再生する通常再生モードに加えて、ユーザが視聴できない間は受信したTSパケットをバッファに蓄積(タイムシフト蓄積)しておき、ユーザが視聴できるようになると受信したTSパケットを次々に蓄積しながら蓄積済みのTSパケット中の映像及び音声を順次デコード及び再生するタイムシフト再生モードがある。
特許文献1では、送信側のSTCと同期を取りながら蓄積データを再生する手法について提案されている。具体的には、受信したTSパケットを蓄積する際に当該TSパケットの受信時刻を時刻情報としてTSパケットに付加し、蓄積データの再生時に当該時刻情報を参照することで送信側のSTCに同期させている。
特開2002−15527号公報
タイムシフト再生では、バッファに既に蓄積されているTSパケットが再生対象となるため等倍速に限らず、より高速な再生を行ってもよい。高速再生時には、PTSを補正して再生時刻を調整する必要がある。高速再生を続けていると、バッファから読み込まれたTSパケットが再生されるスピードが、放送波から読み込まれたTSパケットが蓄積されるスピードを上回り続けるため、いずれバッファ内のデータが尽きてしまう。通常、タイムシフト再生時にはバッファ及び放送波からの2入力が存在するが、バッファ内のデータが尽きると放送波からのTSパケットのみが処理対象となる。この時点ではまだ再生時刻の調整を終了していないため、ユーザには高速再生しているように見えてしまう。従って、放送波に追いついたと判定して表示時刻の調整処理を終了し,通常再生モードに戻るタイミングを検出する必要があり、この調整処理の終了タイミングを適切に検出できなければ通常再生モードへのシームレスな移行ができない。
本発明は、タイムシフト再生中に再生対象が放送波に追いついた場合にシームレスに通常再生に移行可能なストリーム再生装置を提供することを目的とする。
本発明の一態様に係るストリーム再生装置は、符号化された映像又は音声データが格納されているエレメンタリ・ストリーム及び表示時刻タイム・スタンプを備えたパケットを受信する受信部と;タイムシフト再生モード及び前記タイムシフト再生モードに先行して前記パケットを予め蓄積するためのタイムシフト蓄積モードにおいて、前記パケットを次々に格納する第1のバッファと;システム・タイム・クロックを計数したシステム・タイム・クロック値を出力するカウンタと;前記タイムシフト再生モードにおいて、前記第1のバッファに格納されているパケットに含まれる表示時刻タイム・スタンプを現在の再生速度の倍率に基づいて補正した補正値に置き換える補正部と;前記表示時刻タイム・スタンプと前記補正値の差分が予め定める閾値以下であれば前記補正部の動作を停止し、現在の再生モードを通常再生モードに変更する制御部と;前記タイムシフト再生モードにおいて、前記第1のバッファに格納されているパケット中のエレメンタリ・ストリーム及び表示時刻タイム・スタンプを一時的に格納する第2のバッファと;前記第2のバッファに格納されている表示時刻タイム・スタンプ及び前記システム・タイム・クロック値に基づいて決まるタイミングで、前記エレメンタリ・ストリームから前記映像又は音声データを復号するデコーダと;前記映像又は音声データを再生する再生部と;を具備する。
本発明によればタイムシフト再生中に再生対象が放送波に追いついた場合にシームレスに通常再生に移行可能なストリーム再生装置を提供することができる。
以下、図面を参照して本発明の実施形態について説明する。
図1に示すように、本発明の一実施形態に係るストリーム再生装置は、アンテナ101、チューナ102、TS I/F(トランスポート・ストリーム インタフェース)103、再生モード制御部104、入力制御部105、分離部106、バッファ107、STC(システム・タイム・クロック)制御部108、STC109、STCカウンタ110、PTS(表示時刻タイム・スタンプ)補正部111、PES(パケット化エレメンタリ・ストリーム)抽出部112、バッファ113、デコーダ114、ディスプレイ115、PTS補正部116、PES抽出部117、バッファ118、デコーダ119、DAC(デジタル−アナログ変換器)120、スピーカ121及びスイッチ122を有する。
アンテナ101は放送局から送信される放送波を受信し、チューナ102へと転送する。チューナ102はアンテナ101が受信した放送波から再生対象のチャンネルを選局する。チューナ102が選局したチャンネルにおいて伝送されるトランスポート・ストリーム中のTSパケットは図示しないバッファ(以下、単に放送波用バッファと称する)に一時的に格納される。
TS I/F103は前述した放送波用バッファに指定数のTSパケットが記録されると、当該TSパケットを分離部106に入力するために入力制御部105への割り込み信号を生成する。ここで、指定数は例えば1であるが、ストリーム再生装置の実装次第で異なる値としてもよい。割り込み信号によって、入力制御部105がスイッチ122をTS I/F103側へ切り替えるとTS I/F103は当該スイッチ122を介して、分離部106に上記指定数のTSパケットを転送する。この指定数のTSパケットの転送方法については特に限定しないが、例えば指定数のTSパケット分のバッファを更に用意しておき、当該バッファにTSパケットをコピーさせ、分離部106が当該コピーされたTSパケットを参照するようにしてもよい。また、分離部106が上記放送波用バッファにアクセスして直接TSパケットを参照してもよい。
再生モード制御部104は現在の再生モードを入力制御部105、分離部106、PTS補正部111及びPTS補正部116に通知する。ここで、本実施形態に係るストリーム再生装置の再生モードとして、通常再生モード、タイムシフト蓄積モード及びタイムシフト再生モードの3種類を少なくとも設ける。
通常再生モードにおいて、ストリーム再生装置は受信したTSパケット中の映像及び音声データを順次デコード及び再生する。また、タイムシフト蓄積モードにおいて、ストリーム再生装置は受信したTSパケットをバッファ107に蓄積し続ける。タイムシフト再生モードにおいて、ストリーム再生装置は先行するタイムシフト蓄積モードに引き続き受信したTSパケットを蓄積しつつ、バッファ107に蓄積されているTSパケット中の映像及び音声データを順次デコード及び再生する。
また、タイムシフト再生モードでは再生速度を選択できるものとし、再生制御部104は現在の再生速度の倍率をPTS補正部111及びPTS補正部116に通知する。この再生速度の倍率は少なくとも等倍(1倍)及び早送り再生などで用いる高速の倍率(例えば4/3倍)を含む複数の倍率から選べることとする。
再生モードの切り替えはユーザからのキー操作などの指示によって、またはストリーム再生装置が携帯無線端末であれば音声着信などのイベントによって起こる。具体的にはストリーム再生装置が通常再生モードでストリーム再生中に、ユーザが映像及び音声を視聴できなくなると再生モードをタイムシフト蓄積モードに変更するためのキー操作などにより再生モードの変更指示を再生モード制御部104に入力する。そして、ユーザが再び視聴を開始できるようになると再生モードをタイムシフト蓄積モードからタイムシフト再生モードまたは通常再生モードに変更するためのキー操作などにより再生モードの変更指示を再生モード制御部104に入力する。
また、ストリーム再生装置がタイムシフト再生モードでストリーム再生中にユーザが例えば早送りなどの高速再生の操作を行い、後述するPTS補正部111又は116による補正前後のPTSの間隔が予め定める閾値以下になった場合には、当該PTS補正部111又は116によって処理対象が放送波に追いついたと判断される。このとき、PTS補正部111又は116は再生モード制御部104に処理対象が放送波に追いついた旨を通知し、当該通知を受けた再生モード制御部104は、現在の再生モードを通常再生モードに変更する。その他、ストリーム再生装置が携帯無線端末であれば音声着信があるとユーザは映像及び音声の視聴ができないため、自動的にタイムシフト蓄積モードに移行するように構成してもよい。
入力制御部105はTS I/F103からの割り込み及び再生モード制御部104からの再生モードの通知に基づいてスイッチ122を切り替える。即ち、入力制御部105はストリーム再生装置が通常再生モードまたはタイムシフト蓄積モードであるとの通知を再生モード制御部104より受けている場合には、TS I/F103から転送されるTSパケットが分離部106に入力されるようにスイッチ122を切り替える。また、入力制御部105は当該ストリーム再生装置がタイムシフト再生モードであるとの通知を再生モード制御部104より受けている場合には、バッファ107に蓄積されているTSパケットが分離部106に入力されるようにスイッチ122を切り替えるが、TS I/F103より割り込みがあると一旦スイッチ122を切り替えてTS I/F103から転送されるTSパケットを分離部106に入力させ、再びスイッチ122をバッファ107側に切り替える。
分離部106は、スイッチ122を介して転送されたTSパケットから各シンタックスを解析し、TSパケットを振り分ける。ここで、シンタックスとはTSパケット中のTSヘッダ及び適合フィールド(adaptation field)を指す。
図2に示すように、TSパケットは4バイトのTSヘッダを先頭とし、任意に設けることができるフィールドであるadaptation field及びペイロードからなる188バイトの固定長のパケットとして構成される。
図3(a)に示すようにTSヘッダには、TSパケットが映像データ及び音声データのいずれを伝送しているか示すための13ビット長のパケット識別子(PID)が格納される。同一の映像データ及び同一の音声データは夫々同じPIDを持つため、PIDを用いてパケット化される前のESを復元できる。
また、TSヘッダにはTSパケット中に混入したエラーの有無を示す1ビットのトランスポート・エラー・インジケータ(taransport_error_indicator)及びadaptation fieldやペイロードの有無を示す2ビット長のアダプテーション・フィールド制御(adaptation_field_control)なども含まれる。ここで、adaptation_field_controlとして「11」は「adaptation field有り、ペイロード有り」、「10」は「adaptation field有り、ペイロード無し」、「01」は「adaptation field無し、ペイロード有り」、「00」は「予約(RFU:Reserved for Future Use)と夫々規定されている。
尚、TSヘッダは更に、デコーダにTSパケットの先頭を示す同期バイト(sync byte)及び新たなPESパケットが当該TSパケット中のペイロードから始まることを示すペイロード・ユニット・スタート・インジケータ(payload unit start indicator)を備えている。また、TSヘッダは更に、当該TSパケットの重要度を示すパケット優先度(transport priority)及び当該TSパケット中のペイロードのスクランブルの有無を示す2ビット長のトランスポート・スクランブル制御(transport scrambling control)を備えている。また、TSヘッダは更に、当該TSパケットと同じPIDを持つTSパケットが途中で一部棄却されたかどうかを検出するための4ビット長の巡回カウンタ(continuity counter)を備えている。
図3(b)に示すようにadaptation fieldには、可変長のオプショナルフィールド(optional field)を有し、42ビット長のPCRはこのオプショナルフィールドに含まれる。尚、adaptation fieldは更に、8ビット長のアダプテーション・フィールド長(adaptation field length)、タイムベースの切り替えの有無を示す1ビットの不連続表示(discontinuity_indicator)、ランダム・アクセス表示(random access indicator)、ストリーム優先表示(elementary stream priority indicator)、adaptation field中のPCRの有無を示す1ビットのPCRフラグ(PCR_flag)を含む5フラグ(5flags)、及び可変長のスタッフィング・バイト(stuffing bytes)を備えている。
図2に示すようにペイロードには、ESにPESヘッダと呼ばれるヘッダを付加してパケット化したPES(Packetized Elementary Stream)パケットが分割して格納されている。
図3(c)に示すようにPESヘッダにはPESパケット中の先頭フレームのPTSが33ビット長のフィールドに格納される。ここで、PESヘッダは24ビット長のパケット開始コード(packet start prefix)、8ビット長のストリームID(stream id)、16ビット長のPESパケット長(PES packet length)、「10」、2ビット長のPESスクランブル制御(PES scrambling control)、PES優先度(PES priority)、データ整列表示(data alignment indicator)、コピー・ライト(copy right)、オリジナル/コピー(original or copy)、7フラグ(7flags)、8ビット長のPESヘッダ長(PES header data length)、PTSが記載される可変長のオプショナルフィールド(optional field)、及び可変長のスタッフィング・バイト(stuffing bytes)で構成される。
分離部106はPIDフィルタを有しており、転送されたTSパケット中のTSヘッダ内のPIDに応じて当該TSパケットを振り分ける。具体的には、PIDフィルタは各番組が持つ番組対応テーブル(PMT:Program Map Table)と呼ばれるテーブル情報に基づいてPIDの値と対応するTSパケットの種別とが設定される。
PMTには、PIDの値とTSパケットの種別とが対応付けられて記録されており、特定のPID値を持つTSパケットが映像、音声、キャプションまたはPCR等のいずれであるかが判別可能となる。尚、PCRは前述したようにTSパケット中のAdaptation Fieldに格納されており、映像や音声などを含むペイロードと共に伝送される場合もあれば、ペイロードを伴わずに単独で伝送される場合もある。従って、特定のPID値がPCRのみを示すこともあれば、PCR及び映像等の両方を示すこともある。また、ユーザの操作等により視聴する番組が変更された場合には、PMTに基づいて分離部106中のPIDフィルタが再設定される。
分離部106は、PIDフィルタの設定に基づいてPIDを解析し、TSパケットの種別に応じて当該TSパケットを振り分ける。尚、分離部106が行うTSパケットの振り分け処理は再生モード制御部104によって通知される再生モードによって異なる。
ストリーム再生装置が通常再生モードの場合には、分離部106はTSパケットが映像であればPES抽出部112に当該TSパケットを入力し、音声であればPES抽出部117に当該TSパケットを入力する。また、分離部106はTSパケットがPCRを含む場合には当該PCRをSTC制御部108に入力する。その他、分離部106は当該TSパケットのPIDがPIDフィルタに設定されていない場合には、当該TSパケットを破棄する。
ストリーム再生装置がタイムシフト蓄積モードの場合には、分離部106はTSパケットをバッファ107へと転送する。この際、分離部106はTSパケットのPIDがPIDフィルタに設定されていない場合には、当該TSパケットを予め破棄しておいてもよい。また、分離部106はTSパケットがPCRを含む場合には当該PCRをSTC制御部108に入力する。
ストリーム再生装置がタイムシフト再生モードの場合には、分離部106はTSパケットがTS I/F103から転送されたTSパケットであれば当該TSパケットをバッファ107へと転送する。この際、分離部106は当該TSパケットがPCRを含む場合には当該PCRをSTC制御部108に入力する。また、分離部106はTSパケットがバッファ107から転送されたTSパケットである場合には、当該TSパケットが映像であればPES抽出部112に当該TSパケットを入力し、音声であればPES抽出部117に当該TSパケットを入力する。その他、分離部106は当該TSパケットのPIDがPIDフィルタに設定されていない場合には、当該TSパケットを破棄する。
バッファ107はストリーム再生装置がタイムシフト蓄積モードまたはタイムシフト再生モードである場合に、放送波から受信したTSパケットを蓄積するためのバッファである。バッファ107は例えばリング・バッファとし、蓄積データの先頭アドレスを示す先頭ポインタと、蓄積データの終端アドレスを示す終端ポインタを持つものとする。即ち、バッファ107は先頭から順にTSパケットを蓄積してゆき、蓄積データがバッファ107の容量を超えた場合は終端ポインタが指すアドレスをバッファ107の先頭アドレスに書き換え、蓄積タイミングの古いデータから順次上書きしていくものとする。
STC制御部108は入力されたPCRとSTCカウンタ110からのSTC値を比較する。PCRに比べてSTC値が小さければ周波数を上げるようにSTC109を制御し、PCRに比べてSTC値が大きければ周波数を下げるようにSTC109を制御する。
STC109はSTC制御部108によって決定される周波数に基づいてSTCを生成し、STCカウンタ110に入力する。
STCカウンタ110はSTC109をカウントしたSTC値をPTS補正部111、デコーダ114、PTS補正部116及びデコーダ119に入力する。また、STC値はクロック・リカバリのためにSTC制御部108にも入力される。
PTS補正部111は、PES抽出部112から転送されたPTSを、現在の再生速度の倍率に基づいて補正した補正値に置き換える。尚、PTSの補正はタイムシフト再生モードにおいてのみ行うものとする。PTS補正部111は、タイムシフト再生モードが開始すると、先行するタイムシフト蓄積モードにおけるSTC値の増分ΔSTCを検出する。即ち、タイムシフト蓄積モード終了時(タイムシフト再生モード開始時)のSTC値からタイムシフト蓄積モード開始時のSTC値を減じた値がΔSTCとなる。タイムシフト再生モードにおいて等倍再生を行う場合、PTS補正部111は、図4に示すようにΔSTCを入力されたPTSに加算した値を当該PTSの補正値とする。以下、図4を用いて等倍再生時のPTSの補正の一例について詳しく説明する。
図4に示すように、ストリーム再生装置は時刻T1まで通常再生し、時刻T1から時刻T2までタイムシフト蓄積し、時刻T2からタイムシフト再生しているものとする。なお、全ての区間を通じてSTC制御部108は受信したPCR1〜4を用いてクロック・リカバリを行い、送信側との同期を取っている。タイムシフト蓄積モードにおいて蓄積したPTS1〜3は、PTS補正部111によって次のような補正がなされる。時刻T2においてタイムシフト再生モードが開始すると、PTS補正部111は時刻T1から時刻T2までのSTCカウンタ110のカウント値の増分ΔSTCを検出し、PTS1〜3を持つTSパケットが入力されるとΔSTCを加算したPTS’1〜3を補正値として夫々置き換え、バッファ113へと転送する。
また、タイムシフト再生モードにおいて倍率rで再生を行う場合にPTS補正部111によるPTSの補正について図5を用いて詳しく説明する。尚、図5において倍率rは4/3とする。
図5に示すように、ストリーム再生装置は時刻T3まで等倍速でタイムシフト再生し、時刻T3から時刻T4まで4/3倍速でタイムシフト再生し、時刻T4で再生対象が放送波に追いつき、通常再生に移行している。PTS補正部111は、時刻T3まで前述したように入力されたTSパケット中のPTSにΔSTCを加算することにより補正する。時刻T3にて再生速度の倍率がr(4/3)に切り替わると、PTS補正部111は補正後のPTS間隔が補正前のPTS間隔に対してrの逆数(3/4)倍になるようにPTSを補正する。尚、ここでPTS間隔と呼んでいるのはPTS補正部111が現在補正対象としているPTSと過去に補正対象としたPTS(以降、基準PTSと称する)との間隔である。尚、基準PTSは補正時の再生速度の倍率が同じであればいずれのPTSを用いても構わない。
ここで、PTS4の補正について説明する。再生速度の倍率がrになってからPTS補正部111が補正したPTSはPTS3だけであるから、PTS3を基準PTSとしてPTS間隔を求めてPTS4を補正する。補正前のPTS間隔は(PTS4−PTS3)である。従って、補正後のPTS間隔が3(PTS4−PTS3)/4になるようにすればよいから、PTS3の補正値PTS’3=PTS3+ΔSTCにこの補正後のPTS間隔を加算した値がPTS4の補正値PTS’4=ΔSTC+(3PTS4+PTS3)/4となる。
次に、PTS5の補正について説明する。PTS5を補正するにあたって用いることのできる基準PTSはPTS3またはPTS4である。PTS3を基準PTSにする場合には、補正前の間隔は(PTS5−PTS3)であるから、補正後のPTS間隔が3(PTS5−PTS3)/4になるように、PTS3の補正値PTS’3=PTS3+ΔSTCに当該補正後のPTS間隔を加算すると、PTS5の補正値PTS’5=ΔSTC+(3PTS5+PTS3)/4が導出される。一方、PTS4を基準PTSにする場合には、補正前の間隔は(PTS5−PTS4)であるから、補正後のPTS間隔が3(PTS5−PTS4)/4になるように、PTS4の補正値PTS’4=ΔSTC+(3PTS4+PTS3)/4に当該補正後のPTS間隔を加算すると、PTS5の補正結果PTS’5=ΔSTC+(3PTS5+PTS3)/4が導出される。従って、補正時の再生速度が同じであれば基準PTSとしてはどのPTSを用いても同じ補正値を得ることができる。
以降、同様にPTSの補正値を求めていくが、PTS補正部111は補正対象のPTSとその補正値の差分を常に検査しており、PTSの補正前後の差分が予め定める閾値、例えば1フレーム間隔以下になると、その旨を再生モード制御部104に通知する。再生モード制御部はこの通知によって、タイムシフト再生モードの終了タイミングを判断して通常再生モードにシームレスに移行する。図5の例であればPTSiと補正値PTS’iの差分が1フレーム間隔以下になっており、このPTSiの補正時刻T4をタイムシフト再生の終了タイミングとして、通常再生モードにシームレスに移行している。
PES抽出部112は分離部106から振り分けられた映像用のESを有するTSパケットからES及びPTSを抽出し、PTS補正部111へと転送する。バッファ113にはESとPTS補正部111にて補正されたPTSが一時的に格納される。
デコーダ114はバッファ113に格納されているESを取得し、デコードして映像データを得る。STCカウンタ110からのSTC値がバッファ113に格納されているPTS以上になると、デコードされた映像データがディスプレイ115より再生される。尚、デコーダ114は映像フレームを固定フレーム間隔とみなし、この間隔が再生速度の倍率rの逆数倍となるようにしている。
PTS補正部116は、PES抽出部117から転送されたPTSに対してPTS補正部111と同様の処理を行い、当該補正後のPTSをESと共にバッファ118へと転送する。PES抽出部117は分離部106から振り分けられた音声用のESを有するTSパケットからES及びPTSを抽出し、PTS補正部116へと転送する。バッファ118はPTS補正部116にて補正されたPTS及びESを一時的に格納する。
デコーダ119はバッファ118からESを取得し、デコードして音声データを得る。STCカウンタ110からのSTC値がバッファ118に格納されているPTS以上になるとデコードされた音声データはDAC120にてデジタル−アナログ変換され、スピーカ121より再生される。
尚、高速再生時には等倍再生時に比べて再生可能な音声フレーム数が少なくなるため、デコーダ119は音声フレームのフレーム間隔をストリームから予め取得したサンプリング周波数から算出し、サンプル数が倍率rの逆数倍となるように間引き処理を行うことにより、再生時刻を調整する。
スイッチ122は入力制御部105からの制御信号に基づいて、分離部106の入力を切り替える。即ちバッファ107に蓄積されているTSパケットまたはTS I/F103より転送されるTSパケットのいずれか一方が分離部106に入力されるようにする。
以下、図6に示すフローチャートを用いて本発明の一実施形態に係るストリーム再生装置のタイムシフト動作におけるTSパケットの分離処理について説明する。
タイムシフト再生が開始すると、まずステップS201へと進む。ステップS201ではタイムシフト再生の終了を判断する。即ち、ユーザが通常再生モードまたはタイムシフト蓄積モードへの切り替えを再生モード制御部104に入力するなどした場合にはタイムシフト再生モードを終了し、再生モード制御部104は現在の再生モードを入力制御部105、分離部106、PTS補正部111及びPTS補正部116に通知する
一方、タイムシフト再生を継続する場合には、分離部106は放送波用バッファまたはバッファ107から処理対象のTSパケットを読み込む(ステップS202)。次に、分離部106は読み込んだTSパケット中のTSヘッダ及びAdaptation Fieldの各シンタックスを解析する(ステップS203)。次に、分離部106は、処理対象のTSパケットが放送波用バッファから入力されたか否かを判断する(ステップS204)。
処理対象のTSパケットが放送波用バッファから入力されている場合、分離部106はPIDフィルタを参照してPIDが設定されているか否かを判断する(ステップS205)。PIDがPIDフィルタに設定されている場合、分離部106は処理対象のTSパケットがPCRを持っているか否かを判断する(ステップS206)。処理対象のTSパケットがPCRを持っていれば、分離部106はPCRをSTC制御部108に通知し、STC制御部108は通知されたPCRとSTCカウンタ110からのSTC値を用いてSTC109のクロック・リカバリを行い、処理はステップS208へと進む(ステップS207)。一方、処理対象のTSパケットがPCRを持たない場合(ステップS206)、ステップS207を省略してステップS208へと進む。ステップS208では、処理対象のTSパケットがバッファ107に再生対象データの終端として蓄積され、次のTSパケットの処理に移るべくステップS201へと戻る。一方、PIDがPIDフィルタに設定されていない場合(ステップS205)、分離部106は処理対象のTSパケットを破棄し、次のTSパケットの処理に移るべくステップS201へと戻る。
一方、処理対象のTSパケットがバッファ107から入力されている場合(ステップS204)、分離部106はPIDフィルタを参照してPIDが設定されているか否かを判断する(ステップS209)。PIDがPIDフィルタに設定されている場合、分離部106はPIDの検索結果から、処理対象のTSパケットが音声、映像またはキャプション(字幕)のいずれかであるか否かを判断する(ステップS210)。処理対象のTSパケットが音声、映像またはキャプションのいずれかである場合、分離部106はPES抽出部112、PES抽出部117または図示しないキャプション用のPES抽出部に夫々TSパケットを振り分ける。次に、PTS補正部は現在の再生速度が高速か否かを判断する(ステップS211)。現在の再生速度が高速であれば、PTS補正部は入力された処理対象のTSパケット中にフレームの先頭があるか否かを判断する(ステップS212)。処理対象のTSパケット中にフレームの先頭がある場合、PTS補正部は処理対象のTSパケット中のPTSを補正する(ステップS213)。具体的には、倍率r(>1)で再生しているとすると、現在補正対象としているPTSと前述した基準PTSとの間隔の1/r倍を基準PTSの補正値に加算することにより、現在補正対象としているPTSの補正値を求める。
次に、PTS補正部は処理対象のTSパケットが音声か否かを判断する(ステップS214)。処理対象のTSパケットが音声である場合、PTS補正部116はステップS213での補正前後におけるPTSの差分が1フレーム間隔以下か否かを判断する(ステップS215)。補正前後におけるPTSの差分が1フレーム間隔以下であれば、PTS補正部116は処理対象のTSパケットからペイロードを分離し、バッファ118に蓄積する(ステップS216)。次に、PTS補正部116は通常再生モードに移行するように再生モード制御部104に指示し、タイムシフト再生が終了する。尚、この例ではステップS215におけるタイムシフト再生モードの終了判断を行う対象を音声に限っている(ステップS214)が、これは、映像と比べて音声の方が1フレーム当たりの時間間隔が短く、通常再生モードへのシームレスな移行が実現できない場合に品質の劣化が目立ちやすいことによるものである。従って、映像についてステップS215の判断を行うことを否定するわけではなく、ステップS214における判断を処理対象のTSパケットが映像または音声であるか否かを判断するように読み替えても構わない。また、タイムシフト再生モードの終了判断において、補正前後のPTSの差分に関する閾値として1フレーム間隔を用いているが、これは当該閾値の一例に過ぎない。
一方、補正前後におけるPTSの差分が1フレーム間隔より大である場合(ステップS215)、PTS補正部116は、処理対象のTSパケットからペイロードを分離し、バッファ118に蓄積し(ステップS221)、次のTSパケットの処理に移るべくステップS201へと戻る。また、処理対象のTSパケットが映像またはキャプションである場合(ステップS214)、処理対象のTSパケットからペイロードを分離し、バッファに蓄積し(ステップS221)、次のTSパケットの処理に移るべくステップS201へと戻る。また、処理対象のTSパケット中にフレームの先頭が無い場合(ステップS212)、処理対象のTSパケットからペイロードを分離し、バッファに蓄積し(ステップS221)、次のTSパケットの処理に移るべくステップS201へと戻る。
一方、PIDがPIDフィルタに設定されていない場合(ステップS209)、分離部106は処理対象のTSパケットを破棄し、次のTSパケットの処理に移るべくステップS201へと戻る。また、処理対象のTSパケットが音声、映像またはキャプション以外の例えばセクションまたはPCRである場合(ステップS210)、当該TSパケットの種類に応じた分離処理を行い(ステップS217)、次のTSパケットの処理に移るべくステップS201へと戻る。
一方、現在の再生速度が等倍である場合(ステップS211)、PTS補正部は入力された処理対象のTSパケットにPESの先頭が含まれているか否かを判断する(ステップS218)。具体的には、前述したTSパケット中のペイロード・ユニット・スタート・インジケータを参照し、「1」であれば処理対象のTSパケットにPESの先頭が含まれていると判断し、「0」であれば処理対象のTSパケットにPESの先頭は含まれていないと判断する。処理対象のTSパケットにPESの先頭が含まれている場合、PTS補正部は当該TSパケットがPTSを持つか否かを判断する(ステップS219)。処理対象のTSパケットがPTSを持つ場合、PTS補正部は当該PTSを補正する(ステップS220)。具体的には前述したように、PTSにΔSTCを加算した補正値に処理対象のPTSを置き換える。 次に、PTS補正部は処理対象のTSパケットからペイロードを分離し、バッファに蓄積し(ステップS221)、次のTSパケットの処理に移るべくステップS201へと戻る。一方、処理対象のTSパケットにPESの先頭が含まれていない場合も(ステップS218)、PTS補正部は当該TSパケットからペイロードを分離し、バッファに蓄積し(ステップS221)、次のTSパケットの処理に移るべくステップS201へと戻る。また、処理対象のTSパケットがPTSを持たない場合(ステップS219)も、PTS補正部は当該TSパケットからペイロードを分離し、バッファに蓄積し(ステップS221)、次のTSパケットの処理に移るべくステップS201へと戻る。
以上説明したように、本実施形態ではタイムシフト再生を行う際にPTSを補正しており、高速再生によって補正前後におけるPTSの差分が1フレーム間隔以下になると補正を停止している。従って、本実施形態によればタイムシフト再生において再生対象が放送波に追いついたタイミングを検出することにより、シームレスに通常再生に移行可能なストリーム再生装置を提供することができる。
なお、本実施形態では、PTS補正部111及び116でPTSの補正を行ったが、再生モード制御部104が現在の再生速度の倍率をデコーダ114及び119に通知するように構成し、PTSの補正処理をデコーダ114及び119にて行ってもよい。また、PTSを持つフレームのみPTS補正部111及び116でPTSの補正を行い、それ以外の処理はデコーダ114及び119で行うなど処理を分担してもよい。
また、本実施形態では、PTS補正部111及び116で映像及び音声のシンタックス解析を行わないため、映像が可変フレームレートである場合にはそのフレーム間隔を知り得ない(音声については、サンプリング周波数が決まれば一意にフレーム間隔が定まる)。従って、映像は固定フレームレートであるとみなしてPTS間隔を補正している。しかしながら、デコーダは映像及び音声のシンタックス解析を行うため、映像が可変フレームレートであっても本来のPTS間隔を正確に再現し、高速再生時であっても本来のフレーム間隔に沿って再生できる。しかしながら、実際にはこのように正確なPTS間隔を再現せずに固定フレーム間隔として扱っても、ユーザにはほとんど差異が感じられないと考えられる。
なお、この発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また上記実施形態に開示されている複数の構成要素を適宜組み合わせることによって種々の発明を形成できる。また例えば、実施形態に示される全構成要素からいくつかの構成要素を削除した構成も考えられる。さらに、異なる実施形態に記載した構成要素を適宜組み合わせてもよい。
例えば上記実施形態において、映像及び音声の両方を再生の対象であるかのように記載したが、いずれか片方のみを再生の対象としても良い。即ち、映像のみを再生の対象とする場合であればPTS補正部116、PES抽出部117、バッファ118、デコーダ119、DAC120及びスピーカ121を図1に示すストリーム再生装置から除けばよいし、音声のみを再生の対象とする場合であればPTS補正部111、PES抽出部112、バッファ113、デコーダ114及びディスプレイ115を図1に示すストリーム再生装置から除けばよい。
その他、この発明の要旨を逸脱しない範囲で種々の変形を施しても同様に実施可能であることはいうまでもない。
本発明の一実施形態に係るストリーム再生装置を示すブロック図。 図1に示すストリーム再生装置で処理されるTSパケットの構造、当該TSパケットで構成されるトランスポート・ストリームの構造及び当該TSパケット中のペイロードに格納されるPESパケットの構造を示す図。 (a)図2に示すTSパケット中のTSヘッダの構造を示す図。(b)図2に示すTSパケット中のAdaptation Fieldの構造を示す図。(c)図2に示すPESヘッダの構造を示す図。 図1に示すストリーム再生装置が等倍速でタイムシフト再生をする場合のPTS補正部によるPTSの補正を説明するためのグラフ図。 図1に示すストリーム再生装置が4/3倍速でタイムシフト再生をする場合のPTS補正部によるPTSの補正を説明するためのグラフ図。 図1に示すストリーム再生装置のタイムシフト再生動作を示すフローチャート。
符号の説明
101・・・アンテナ
102・・・チューナ
103・・・TS I/F
104・・・再生モード制御部
105・・・入力制御部
106・・・分離部
107・・・バッファ
108・・・STC制御部
109・・・STC
110・・・STCカウンタ
111・・・PTS補正部
112・・・PES抽出部
113・・・バッファ
114・・・デコーダ
115・・・ディスプレイ
116・・・PTS補正部
117・・・PES抽出部
118・・・バッファ
119・・・デコーダ
120・・・DAC
121・・・スピーカ
122・・・スイッチ

Claims (5)

  1. 符号化された映像及び音声データが格納されているエレメンタリ・ストリーム及び表示時刻タイム・スタンプを備えたパケットを受信する受信部と、
    タイムシフト再生モード及び前記タイムシフト再生モードに先行して前記パケットを予め蓄積するためのタイムシフト蓄積モードにおいて、前記パケットを次々に格納する第1のバッファと、
    システム・タイム・クロックを計数したシステム・タイム・クロック値を出力するカウンタと、
    前記タイムシフト再生モードにおいて、前記第1のバッファに格納されているパケットに含まれる表示時刻タイム・スタンプを現在の再生速度の倍率に基づいて補正した補正値に置き換える補正部と、
    前記表示時刻タイム・スタンプと前記補正値の差分が前記音声データの1フレーム間隔に相当する閾値以下であれば前記補正部の動作を停止し、現在の再生モードを通常再生モードに変更する制御部と、
    前記タイムシフト再生モードにおいて、前記第1のバッファに格納されているパケット中のエレメンタリ・ストリーム及び表示時刻タイム・スタンプを一時的に格納する第2のバッファと、
    前記第2のバッファに格納されている表示時刻タイム・スタンプ及び前記システム・タイム・クロック値に基づいて決まるタイミングで、前記エレメンタリ・ストリームから前記映像及び音声データを復号するデコーダと、
    前記映像及び音声データを再生する再生部と
    を具備することを特徴とするストリーム再生装置。
  2. 前記補正値は、前記補正部が過去に補正対象とした基準表示時刻タイム・スタンプから現在対象としている表示時刻タイム・スタンプまでの増分に前記倍率の逆数を乗じた値を、前記基準表示時刻タイム・スタンプの補正値に加算した値であることを特徴とする請求項1記載のストリーム再生装置。
  3. 前記基準表示時刻タイム・スタンプは、前記現在の再生速度において前記補正部が最初に補正対象とした表示時刻タイム・スタンプであることを特徴とする請求項2記載のストリーム再生装置。
  4. 前記基準表示時刻タイム・スタンプは、前記現在補正対象としている表示時刻タイム・スタンプの直前に前記補正部が補正対象とした表示時刻タイム・スタンプであることを特徴とする請求項2記載のストリーム再生装置。
  5. 前記通常再生モードにおいて、前記第2のバッファは、前記受信部によって受信されたパケットを一時的に格納することを特徴とする請求項1記載のストリーム再生装置。
JP2007095342A 2007-03-30 2007-03-30 ストリーム再生装置 Expired - Fee Related JP4589355B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007095342A JP4589355B2 (ja) 2007-03-30 2007-03-30 ストリーム再生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007095342A JP4589355B2 (ja) 2007-03-30 2007-03-30 ストリーム再生装置

Publications (2)

Publication Number Publication Date
JP2008258665A JP2008258665A (ja) 2008-10-23
JP4589355B2 true JP4589355B2 (ja) 2010-12-01

Family

ID=39981841

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007095342A Expired - Fee Related JP4589355B2 (ja) 2007-03-30 2007-03-30 ストリーム再生装置

Country Status (1)

Country Link
JP (1) JP4589355B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102067595B (zh) * 2009-03-16 2013-07-24 松下电器产业株式会社 图像声音通信装置以及其通信方法
CN106101752B (zh) * 2016-07-08 2019-01-01 青岛海信宽带多媒体技术有限公司 一种时移时间获取方法及机顶盒

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002171526A (ja) * 2000-11-30 2002-06-14 Canon Inc データ処理装置、データ処理システム、データ処理方法、及び記憶媒体
JP2005198203A (ja) * 2004-01-09 2005-07-21 Matsushita Electric Ind Co Ltd 映像信号記録再生装置および方法
JP2005531245A (ja) * 2002-06-27 2005-10-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ パーソナルビデオレコーディングの応用におけるmpegデコーダでの音声画像同期を達成する安定した方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002171526A (ja) * 2000-11-30 2002-06-14 Canon Inc データ処理装置、データ処理システム、データ処理方法、及び記憶媒体
JP2005531245A (ja) * 2002-06-27 2005-10-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ パーソナルビデオレコーディングの応用におけるmpegデコーダでの音声画像同期を達成する安定した方法
JP2005198203A (ja) * 2004-01-09 2005-07-21 Matsushita Electric Ind Co Ltd 映像信号記録再生装置および方法

Also Published As

Publication number Publication date
JP2008258665A (ja) 2008-10-23

Similar Documents

Publication Publication Date Title
US20090116814A1 (en) Reproducer, portable telephone, and reproducing method
JP2008011404A (ja) コンテンツ処理装置及びコンテンツ処理方法
US20080259962A1 (en) Contents reproducing apparatus
JP2008283472A (ja) ストリーム再生装置
US7656947B2 (en) Synchronization device and synchronization method in digital broadcast receiver
US8488944B2 (en) Broadcast program recording apparatus and control method for the same
US10194196B2 (en) Decoding device, reception device, transmission device, transmission/reception system, decoding method, and storage medium having decoding program stored therein
CA2792106A1 (en) Method and system for inhibiting audio-video synchronization delay
JP4636460B2 (ja) ストリーム再生装置
JP2009171024A (ja) デジタル放送受信装置、および、デジタル放送受信方法
JP4282722B2 (ja) ストリーム記録装置
JP2006254298A (ja) 動画再生装置及び動画再生方法
US7688726B2 (en) Broadcast reception apparatus, TS packet reproduction apparatus, broadcast reception method and program
JP5283914B2 (ja) 表示制御装置及び表示制御方法
JP4589355B2 (ja) ストリーム再生装置
JP4477056B2 (ja) 受信装置および受信方法
JP2016058967A (ja) 放送装置、放送方法、及びプログラム
JP5032179B2 (ja) ストリーム再生装置及びメディアデータ復号方法
JP4866135B2 (ja) 画像処理装置及び画像処理方法
US20070147785A1 (en) Method of detecting information break position of multiplexed stream, sound digital broadcast recording apparatus, and recording control method
JP2006330541A (ja) 音声受信再生装置
JP5394248B2 (ja) デジタル放送受信装置
JP2011091752A (ja) デジタル放送受信装置及びプログラム
EP2667600A1 (en) Digital receiving device
JP3671969B2 (ja) データ多重方法及び多重データ復号方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100622

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100818

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100907

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100909

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130917

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130917

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130917

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130917

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

LAPS Cancellation because of no payment of annual fees