JP2008022053A - デコード装置、情報再生装置及び電子機器 - Google Patents

デコード装置、情報再生装置及び電子機器 Download PDF

Info

Publication number
JP2008022053A
JP2008022053A JP2006189502A JP2006189502A JP2008022053A JP 2008022053 A JP2008022053 A JP 2008022053A JP 2006189502 A JP2006189502 A JP 2006189502A JP 2006189502 A JP2006189502 A JP 2006189502A JP 2008022053 A JP2008022053 A JP 2008022053A
Authority
JP
Japan
Prior art keywords
packet
error
data
decoder
audio
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.)
Pending
Application number
JP2006189502A
Other languages
English (en)
Inventor
Kohei Takeda
幸平 竹田
Kazuhito Kajiwara
和仁 梶原
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2006189502A priority Critical patent/JP2008022053A/ja
Publication of JP2008022053A publication Critical patent/JP2008022053A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】 低消費電力で、且つ効率的なエラー対策を行うことができるデコード装置、情報再生装置及び電子機器を提供する。
【解決手段】 デコード装置10は、チューナからのパケットデータが所与の期間入力されないタイムアウトの発生を監視するパケット監視部20と、前記パケットデータに対してデコード処理を行うデコーダ30とを含む。パケット監視部20が、前記タイムアウトの発生を検出したことをデコーダ30に通知し、デコーダ30が、前記タイムアウトの発生が検出されたことを通知されたとき、チューナを停止させる指示を行う。
【選択図】 図1

Description

本発明は、デコード装置、情報再生装置及び電子機器に関する。
地上アナログ放送に替わって登場する地上デジタル放送では、画像及び音声の高品質化に加えて種々の新サービスの提供に期待が寄せられている。地上デジタル放送の導入によって新たに提供されるサービスの1つに、携帯端末向けサービスとして、いわゆる「1セグメント放送」がある。「1セグメント放送」では、QPSK(Quadrature Phase Shift Keying)変調方式で変調されたデジタル変調波をOFDM(Orthogonal Frequency Division Multiplexing)変調方式で多重化することで、携帯端末の移動時でも安定した放送受信が可能となる。
このような携帯端末の一例として、携帯電話機がある。携帯電話機に「1セグメント放送」の受信機能を付加する場合、圧縮処理後の映像データ及び音声データが多重化されたトランスポートストリームの分離処理や分離処理後のデータのデコード処理を行う。このとき、映像データのデコード処理を行う処理部と音声データのデコード処理を行う処理部との間で通信を行って、デコード処理後の映像データ及び音声データを、同期をとりながら再生する。
このデジタル放送を再生する技術として、例えば特許文献1には、受信不能をユーザに通知するために、トランスポートストリームからパケットを分離するトランスポートストリームDMUXの前段に誤り訂正部を設け、該誤り訂正部において検出されたエラーの頻度から受信レベルの変化を求める技術が開示されている。これにより、降雨等により受信レベルが悪化したことを認識しやすくなる。
また特許文献2には、ログ生成回路によりパケットの先頭と終了の位置にログ情報を付加し、パケットを処理する際にCPU(Central Processing Unit)が各パケットの前後のログ情報を読み出したパケットのステータス情報を取得できるようにしたシステムが開示されている。
特開2000−115654号公報 特開2000−156705号公報
ところで、「1セグメント放送」をはじめとする「地上デジタル放送」では、放送信号が電波信号として送信されるため、常に正常な受信信号が得られるとは限らない。しかしながら、一般的に、チューナ側からその後段側にチューナのステータスを通知する手段がない。そのため、チューナの不具合が発生した状況であっても、後段側では再生のためにデコード処理を進めなければならない。従って、電波の受信環境が劣悪であったりチューナ自体が故障したりした場合であっても、チューナの後段側で誤り訂正等の対策を行いながらデコード処理等を行っているのが現状である。この場合、例えばチューナの故障等でデコード処理が明らかに不可能な場合であっても、デコード処理等を繰り返し、無駄な電力を消費してしまうことになる。
また、デコード処理対象となるデータはTS(Transport Stream)パケットが連続したトランスポートストリームとして受信され、PES(Packet Elementary Stream)パケットに組み立てられた後に、該PESパケットの中からES(Elementary Stream)データが取り出されて同期再生処理に供される。そのため、TSパケットからESデータを分離してしまうと、両者の関連性が全くなくなり、TSパケットでエラーを検出した場合、デコード処理対象のESデータにおいてエラーの発生した箇所を特定することが困難となり、後段側ではデコード処理を直ぐに停止させざるを得なくなる。この場合、正しいデータであるにもかかわらず、デコード処理を停止させてしまうこともある。更にまた、デコーダ側にエラー検出の有無のみを通知するだけでは、正しくデコードできる可能性があるにもかかわらずデコード処理を停止させてしまう場合もある。
以上のように、「1セグ放送」等に代表される「デジタル放送」においては、エラー発生時に再送が不可能なデータの取りこぼしがないように、無駄な処理を行うことなく低消費電力で、且つできるだけ多くの正常なデータを再生するという効率的なエラー対策が望まれる。
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、低消費電力で、且つ効率的なエラー対策を行うことができるデコード装置、情報再生装置及び電子機器を提供することにある。
上記課題を解決するために本発明は、
受信したパケットデータに対してデコード処理を行うためのデコード装置であって、
チューナからのパケットデータが所与の期間入力されないタイムアウトの発生を監視するパケット監視部と、
前記パケットデータに対してデコード処理を行うデコーダとを含み、
前記パケット監視部が、
前記タイムアウトの発生を検出したことを前記デコーダに通知し、
前記デコーダが、
前記タイムアウトの発生が検出されたことを通知されたとき、前記チューナを停止させる指示を行うデコード装置に関係する。
本発明によれば、チューナからのパケットデータが所与の期間入力されないタイムアウトの発生を検出し、該タイムアウトが発生したときにデコーダ側に通知させることで、チューナを停止させるようにしたので、チューナ側で電波の受信環境が劣悪なことに起因する受信劣化と、チューナ自体の故障に起因する受信劣化とを区別できるようになり、無駄な電力を消費することなくデコード処理を行うことができるようになる。
また本発明に係るデコード装置では、
前記パケット監視部が、
前記デコーダにより設定されたインターバル値に対応した期間をカウントするカウンタを含み、
前記チューナからのパケットデータが入力されるごとに前記カウンタのカウント値が初期化され、
前記期間をカウントしたときに前記デコーダに対して割り込みを発生することができる。
本発明によれば、簡素な構成でタイムアウトの発生を検出することができるようになる。
また本発明は、
受信したパケットデータに対してデコード処理を行うためのデコード装置であって、
パケットデータが格納されるバッファと、
入力されたパケットデータのエラーを検出してエラー情報を生成し、該エラー情報を前記パケットデータに関連付けて前記パケットデータと共に前記バッファに格納するエラー検出部と、
前記バッファに格納されたパケットデータのエラー情報に基づいて、第1又は第2のエラーが発生したか否かを判別するエラー解析部と、
前記エラー解析部によって判別された前記第1又は第2のエラーに応じて当該パケットデータに対してデコード処理を行うデコーダとを含むデコード装置に関係する。
本発明によれば、「エラーなし」、「軽微なエラー発生」、「致命的なエラー発生」のいずれかを判別し、判別した区分に応じたデコード処理を行うようにしたので、例えばTSパケットからESデータを分離して両者の関連性が全くなくなりにもかかわらずTSパケットでエラーを検出した場合においても、デコーダではデコード処理を直ぐに停止させることなく、正しいデータに対するデコード処理を継続させることができる。
また本発明に係るデコード装置では、
前記エラー解析部が、
パケット毎に前記エラー情報をカウントしたカウント結果に基づいて第1又は第2のエラーの発生を判別することができる。
本発明によれば、簡素な制御で、第1又は第2のエラーを判別する処理を行うことができる。
また本発明に係るデコード装置では、
前記エラー解析部が、
パケット毎に前記エラー情報を監視し、所与の閾値を超えたパケット数分連続してエラーが発生したとき第1のエラーの発生を検出し、前記閾値以下のパケット数分連続してエラーが発生したとき第2のエラーの発生を検出することができる。
本発明によれば、第1のエラーの発生条件を定常的な要因に起因するものとした場合において、容易に第1のエラーの発生の有無を判別できるようになる。
また本発明に係るデコード装置では、
前記パケットデータが、TS(Transport Stream)パケットであり、
前記第1のエラーの発生を検出したとき、画像シーケンスの先頭のピクチャを検索する処理を行い、
第2のエラーの発生を検出したとき、当該スライスをスキップする処理を行うことができる。
本発明によれば、第1のエラーの発生を検出したときに次の画像シーケンスのデコード処理を行わせ、且つ第2のエラーの発生を検出したときには当該スライスをスキップさせるようにしたので、無駄なデコード処理を行うことなく低消費電力を実現しつつ、効率的なエラー処理を行うことができる。
また本発明に係るデコード装置では、
前記エラー情報が、
RS(Read Solomon)符号エラーが発生したか否かを示す情報であってもよい。
また本発明は、
映像データ及び音声データの少なくとも1つを再生するための情報再生装置であって、
映像データを生成するための第1のTS(Transport Stream)パケット、音声データを生成するための第2のTSパケット、前記第1及び第2のTSパケット以外の第3のTSパケットを、トランスポートストリームから抽出する分離処理部と、
前記第1のTSパケットが格納される第1の記憶領域と、前記第2のTSパケットが格納される第2の記憶領域と、前記第3のTSパケットが格納される第3の記憶領域とを有するメモリと、
前記第1の記憶領域から読み出された前記第1のTSパケットに基づいて前記映像データを生成する映像デコード処理を行う映像デコーダと、
前記第2の記憶領域から読み出された前記第2のTSパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
前記分離処理部が、
チューナから前記第1〜第3のTSパケットが所与の期間入力されないタイムアウトの発生を監視し、前記タイムアウトの発生を検出したことを前記映像デコーダ又は前記音声デコーダに通知し、
前記映像デコーダ又は前記音声デコーダが、
前記タイムアウトの発生が検出されたことを通知されたとき、前記チューナを停止させる指示を行う情報再生装置に関係する。
本発明によれば、チューナからのパケットデータが所与の期間入力されないタイムアウトの発生を検出し、該タイムアウトが発生したときにデコーダ側に通知させることで、チューナを停止させるようにしたので、チューナ側で電波の受信環境が劣悪なことに起因する受信劣化と、チューナ自体の故障に起因する受信劣化とを区別できるようになり、無駄な電力を消費することなくデコード処理を行う情報再生装置を提供できるようになる。
また本発明は、
映像データ及び音声データの少なくとも1つを再生するための情報再生装置であって、
映像データを生成するための第1のTS(Transport Stream)パケット、音声データを生成するための第2のTSパケット、前記第1及び第2のTSパケット以外の第3のTSパケットを、トランスポートストリームから抽出する分離処理部と、
前記第1のTSパケットが格納される第1の記憶領域と、前記第2のTSパケットが格納される第2の記憶領域と、前記第3のTSパケットが格納される第3の記憶領域とを有するメモリと、
前記第1の記憶領域から読み出された前記第1のTSパケットに基づいて前記映像データを生成する映像デコード処理を行う映像デコーダと、
前記第2の記憶領域から読み出された前記第2のTSパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
前記分離処理部が、
前記第1〜第3のTSパケットの各TSパケットのエラーを検出してエラー情報を生成し、該エラー情報を前記パケットに関連付けて前記TSパケットと共に前記メモリに格納し、
前記映像デコーダ又は前記音声デコーダが、
前記メモリに格納されたパケットのエラー情報に基づいて、第1又は第2のエラーが発生したか否かを判別し、前記第1又は第2のエラーに応じて当該パケットに対してデコード処理を行う情報再生装置に関係する。
本発明によれば、「エラーなし」、「軽微なエラー発生」、「致命的なエラー発生」のいずれかを判別し、判別した区分に応じたデコード処理を行うようにしたので、例えばTSパケットからESデータを分離して両者の関連性が全くなくなりにもかかわらずTSパケットでエラーを検出した場合においても、デコーダではデコード処理を直ぐに停止させることなく、正しいデータに対するデコード処理を継続させる情報再生装置を提供できる。
また本発明に係る情報再生装置では、
前記映像デコーダが、
パケット毎に前記エラー情報を監視し、所与の閾値を超えたパケット数分連続してエラーが発生したとき第1のエラーの発生を検出し、前記閾値以下のパケット数分連続してエラーが発生したとき第2のエラーの発生を検出することができる。
本発明によれば、第1のエラーの発生条件を頻度が高く定常的な要因に起因するものとした場合において、容易に第1のエラーの発生の有無を判別できるようになる。
また本発明に係る情報再生装置では、
前記第1のエラーの発生を検出したとき、画像シーケンスの先頭のピクチャを検索する処理を行い、
第2のエラーの発生を検出したとき、当該スライスをスキップする処理を行うことができる。
本発明によれば、第1のエラーの発生を検出したときに次の画像シーケンスのデコード処理を行わせ、且つ第2のエラーの発生を検出したときには当該スライスをスキップさせるようにしたので、無駄なデコード処理を行うことなく低消費電力を実現しつつ、効率的なエラー処理を行うことができる。
また本発明に係る情報再生装置では、
前記映像デコーダが、前記第1の記憶領域から前記第1のTSパケットを、前記音声デコーダとは独立して読み出し、該第1のTSパケットに基づいて前記映像デコード処理を行うと共に、
前記音声デコーダが、前記第2の記憶領域から前記第2のTSパケットを、前記映像デコーダとは独立して読み出し、該第2のTSパケットに基づいて前記音声デコード処理を行うことができる。
本発明によれば、上記の効果に加えて、処理能力の低い処理回路を用いて低消費電力で、処理負荷の重いデコード処理を実現する情報再生装置を提供できる。
また本発明に係る情報再生装置では、
前記映像データ及び音声データのうち前記映像データのみを再生するときは、前記音声デコーダの動作を停止させ、
前記映像データ及び音声データのうち前記音声データのみを再生するときは、前記デコード装置の動作を停止させることができる。
本発明によれば、情報再生装置のより一層の低消費電力化を実現できる。
また本発明は、
上記のいずれか記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含む電子機器に関係する。
また本発明は、
チューナと、
前記チューナからのトランスポートストリームが供給される上記のいずれか記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含む電子機器に関係する。
上記のいずれかの発明によれば、処理負荷の重い1セグメント放送の再生処理を低消費電力で、効率的なエラー処理を実現できる電子機器を提供できる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
1. デコード装置
図1に、本実施形態におけるデコード装置の構成例のブロック図を示す。なおデコード装置は、図1の構成に限定されず、その構成要素の一部を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
本実施形態におけるデコード装置10には、デジタルチューナ(広義にはチューナ)60からのトランスポートストリーム(Transport Stream:以下、TS)が入力される。このTSは、TSパケット(広義にはパケットデータ)が多重化されたストリームデータであり、例えばMPEG−2システム(ISO/IEC 13818-1)で規定されている。そして、デコード装置10は、このTSに対してデコード処理を行う。より具体的には、デコード装置10は、TSから抽出されるTSパケットに対してデコード処理を行う。デコード装置10は出力部(例えば表示部、スピーカ)70に接続される。そして、デコード処理後のデータは、例えば表示部(広義には出力部)に転送されて画像として表示されたり、或いはスピーカ(広義には出力部)に出力されて音声として出力されたりする。
1.1 タイムアウト
ところで、一般的には、デジタルチューナ側からその後段側にチューナのステータス(特に故障の発生状況を示すステータス)を通知する手段がない。そのため、デジタルチューナの不具合が発生した状況であっても、後段側では再生のためにデコード処理を進めなければならない。従って、電波の受信環境が劣悪であったりデジタルチューナ自体が故障したりした場合であっても、デジタルチューナの後段側で誤り訂正等の対策を行いながらデコード処理等を行っているのが現状である。この場合、例えばデジタルチューナの故障等でデコード処理が明らかに不可能な場合であっても、デコード処理等を繰り返し、無駄な電力を消費してしまうことになる。
そこで本実施形態では、以下のような構成を備えることで、デジタルチューナ側で電波の受信環境が劣悪なことに起因する受信劣化と、デジタルチューナ自体の故障に起因する受信劣化とを区別できるようになり、無駄な電力を消費することなくデコード処理を行うことができるようになる。
このようなデコード装置10は、パケット監視部20と、デコーダ30とを含む。パケット監視部20は、デジタルチューナ60からのTSパケットが所与の期間(タイムアウト時間)入力されないタイムアウトの発生を監視する。デコーダ30は、デジタルチューナ60から受信したTSパケットに対してデコード処理(例えばH.264/AVCに準拠したデコード処理)を行い、デコード処理後のデータを出力部70に出力する。そして、パケット監視部20が、タイムアウトの発生を検出したことをデコーダ30に通知し、デコーダ30が、パケット監視部20からタイムアウトの発生が検出されたことを通知されたとき、デジタルチューナ60を停止させる制御(指示)を行う。より具体的には、デジタルチューナ60は、ホスト80によりイネーブル制御が行われ、このホスト80に対して、デコーダ30がデジタルチューナ60を停止させるコマンドを発行する。
ここで、パケット監視部20が、デコーダ30により設定されたインターバル値に対応した期間をカウントするカウンタ22を含むことができる。カウンタ22は、所与の基準クロックに同期してカウント値をカウントアップし、インターバル値に対応した期間が経過したときにデコーダ30に対して割り込みを発生させる。カウンタ22のカウント値は、デジタルチューナ60からのTSパケットが入力されるごとに初期化される。こうすることで、カウンタ22は、インターバル値に対応した期間だけTSパケットの入力がないときに、デコーダ30に対して割り込みを発生させることができるようになる。
図2に、パケット監視部20の動作例のフロー図を示す。
まず、パケット監視部20は、デコーダ30からタイムアウト時間に対応したインターバル値に対応した時刻設定があるか否かを監視する(ステップS10)。デコーダ30は、例えば直前に設定された時刻を基準にタイムアウト時間が経過した後の時刻を設定することができる。その後、カウンタ22のカウント値が初期化され(ステップS11)、カウントが開始される(ステップS12)。これにより、パケット監視部20では、基準クロックに同期して計時が開始される。
そして、ステップS10で設定された時刻が経過したか否かが判別され、経過したときはタイムアウト時間に達したと判断される(ステップS13)。タイムアウト時間に達せず(ステップS13:N)、且つデジタルチューナ60からのTSパケットの入力がないとき(ステップS14:N)、ステップS13に戻る。一方、タイムアウト時間に達せず(ステップS13:N)、且つデジタルチューナ60からのTSパケットの入力があるとき(ステップS14:Y)、ステップS11に戻る。これにより、インターバル値に対応した期間だけデジタルチューナ60からのTSパケットの入力がないことを条件に割り込みを発生させることができる。
ステップS13において、タイムアウト時間に達したとき(ステップS13:Y)、パケット監視部20の例えばエラー検出部24が、タイムアウトの発生を示すエラー情報を生成し(ステップS15)、デコーダ30に対して割り込みを発生させて(ステップS16)、一連の処理を終了する(エンド)。
なお、ステップS15で生成されたエラー情報は、他のエラー要因の発生の有無も示す情報として、例えば当該TSパケットに関連付けられてバッファリングされた後にデコーダ30によって読み出されるようになっている。
図3に、図1においてデジタルチューナ60からのTSパケットのタイムアウトを検出するシーケンスの一例を示す。
まず、ホスト80がデジタルチューナ60のイネーブル制御を行い(T10)、例えばデジタルチューナ60の電源をオンさせる(T11)。
その後、デジタルチューナ60からTSパケットがデコード装置10に対して入力される(T12)。デジタルチューナ60からのTSパケットを受信するのに先立って、デコード装置10は、パケット監視部20においてパケットの監視処理を開始している(T13)。そして、パケット監視部20には、デコーダ30からタイムアウト時間に対応するインターバル値が設定され(T14)、パケット監視部20のカウンタ22が、所与の基準クロックに同期してカウント値をカウントアップし、カウント値とインターバル値とが一致したときにデコーダ30に対して割り込みを発生させる。このとき、デコード装置10にデジタルチューナ60からTSパケットが入力されたときに、カウンタ22のカウント値が初期化される。
従って、デジタルチューナ60からTSパケットが入力されるときには、該TSパケットがバッファ40に格納され(T15)、デコーダ30がバッファ40から適宜TSパケットを読み出して、TSヘッダを解析してPESパケットを生成し、該PESパケットのPESヘッダを解析して、PESヘッダを削除後のES(Elementary Stream)データを生成する(T16)。
そして、上述のようにタイムアウト時間だけデジタルチューナ60からTSパケットの入力がないことが検出されたとき、タイムアウト検出(T17)結果としてデコーダ30に対する割り込みを発生させる(T18)。これを受けたデコーダ30は、ホスト80に対してコマンドを発行し(T19)、ホスト80がデジタルチューナ60のディセーブル制御を行って(T20)、例えばデジタルチューナ60の電源をオフさせ(T21)、チューナの動作を停止させる(T21)。
1.2 致命的エラーと軽微なエラー
更に、本実施形態では、デコーダ30がTSパケットをPES(Packet Elementary Stream)パケットに組み立て直した後に、該PESパケットの中からES(Elementary Stream)データが取り出されて同期再生処理に供される。この場合、TSパケットからESデータを分離してしまうと、両者の関連性が全くなくなり、TSパケットでエラーを検出した場合、ESデータにおいてエラーの発生箇所を特定することが困難なため、後段側ではデコード処理を直ぐに停止させざるを得なくなる。従って、正しいデータであるにもかかわらず、デコード処理を停止させてしまうこともある。
このため、本実施形態では、上述のようにエラー検出及びエラー解析を行い、解析されたエラーの種類に応じて、「エラーなし」、「軽微なエラー発生」、「致命的なエラー発生」のいずれかを判別し、判別した区分に応じたデコード処理を行う。こうすることで、エラーを検出した場合に、後段側ではデコード処理を直ぐに停止させることなく、正しいデータに対するデコード処理を継続させることができる。
そこで、図1のデコード装置10は、更に、バッファ40と、エラー検出部24と、エラー解析部50とを含むことができる。バッファ40には、TSパケットが格納される。エラー検出部24は、入力されたTSパケットのエラーを検出してエラー情報を生成し、該エラー情報を該TSパケットに関連付けてTSパケットと共にバッファ40に格納する。パケット監視部20は、このエラー検出部24を含むことができる。エラー解析部50は、バッファ40に格納されたTSパケットのエラー情報に基づいて、第1又は第2のエラーが発生したか否かを判別する。ここで、第1のエラーは致命的エラーとし、第2のエラーは軽微なエラーとすることができる。
そして、デコーダ30は、エラー解析部50によって判別された第1又は第2のエラーに応じて当該TSパケットに対してデコード処理を行う。例えばデコーダ30は、第1のエラーの発生が検出された場合にはデコード処理を中止してIDR(Instantaneous Decoding Refresh)ピクチャの検索を行い、第2のエラーの発生が検出された場合には、当該スライスをスキップする処理を行い次のスライスのデータに対してデコード処理を行う。ここで、スライスは符号化の基本単位であり、例えばピクチャ内にIスライス、Pスライス、Bスライスを混在させることができる。
エラー検出部24は、固定長のTSパケット(広義にはパケットデータ)のエラーを検出し、該TSパケットのエラーの有無を示すエラー情報をTSパケットに付加し、エラー情報を付加したパケットを、バッファ40に格納する。即ち、バッファ40には、デジタルチューナ60からのTSパケットのみがバッファリングされるのではなく、TSパケットと該TSパケットのエラー情報とがバッファリングされる。
そして、デコーダ30が、バッファ40からエラー情報及びTSパケットを読み出すと共に、該エラー情報に基づいてデコード処理を行うことができる。このとき、上述のようにエラー解析部50の解析結果に対応したデコード処理を行うことができる。
パケット監視部20は、TSから複数種類のTSパケットを分離し、分離したTSパケットを、バッファ40に予めTSパケットの種類毎に割り当てられた記憶領域に格納することができる。バッファ40には、番組情報としてのPMT(Program Map Table)を設定するためのTSパケット、ネットワーク情報としてのNIT(Network Information Table)を設定するためのTSパケット、文字/字幕情報を表示するためのTSパケット、BML(Broadcast Markup Language)を表示するためのTSパケット、PSI/SI(Program Specific Information/Service Information)を設定するためのTSパケット、画像を表示するための映像用TSパケット、音声を出力するための音声用TSパケットが、各記憶領域に格納される。
ホスト80は、バッファ40から読み出したTSパケットに基づいて、PMT、NIT、文字/字幕情報、BML、PSI/SIを解析する。例えばホスト80は、PMTを解析して、映像用TSパケットや音声用TSパケットのパケット識別子(Packet Identifier:PID)を解析し、ホスト80はパケット監視部20にPIDを通知する。これを受けたパケット監視部20の図示しないパケット分離手段は、ホスト80によって設定されたPIDを参照して、デジタルチューナ60からのTSから、上述のように各TSパケットを分離する処理を行う。このとき、ホスト80は、バッファ40の各記憶領域に格納されたTSパケットに付加されたエラー情報を参照することで、所定のエラー処理を行うことができる。
デコーダ30は、バッファ40に格納された映像用TSパケット及び音声用TSパケットの少なくとも1つを読み出して、TSヘッダを解析してPES(Packet Elementary Stream)パケットを生成し、該PESパケットのPESヘッダを解析して、PESヘッダを削除後のES(Elementary Stream)データを生成することができる。このESデータは、バッファ40に書き戻されるようにしてもよい。このとき、デコーダ30は、バッファ40から読み出した映像用TSパケット又は音声用TSパケットに付加されたエラー情報を参照することで、所定のエラー処理を行うことができる。
デコーダ30は、バッファ40からESデータを読み出し、該ESデータに対してデコード処理を行う。
なお、図1において、デコード装置10の外部にホスト80及びデジタルチューナ60が設けられているが、ホスト80及びデジタルチューナ60の少なくとも1つをデコード装置10の内部に設けてもよい。或いは、図1において、パケット監視部20、デコーダ30及びバッファ40の少なくとも1つを、デコード装置10の外部に設けてもよい。
図4に、本実施形態においてTSパケットに付加されるエラー情報の説明図を示す。
パケット監視部20は、上述のようにTSパケットの入力の有無を監視するタイムアウト検出処理を行うと共に、デジタルチューナ60からのTSが入力されたときには該TSからTSパケットを分離することができる。パケット監視部20によって分離されるTSパケットは、188バイト長を有する固定長パケットである。エラー検出部24は、予め決められた種類のエラーの検出処理をTSパケットに対して行い、その検出処理結果を4バイト長のエラー情報として生成する。パケット監視部20は、4バイトのエラー情報をエラーの検出処理対象の188バイトのTSパケットに付加した192バイト長のパケットデータを、バッファ40に格納する処理を行う。
図5に、図4のエラー情報の詳細な説明図を示す。
本実施形態におけるエラー情報は、4バイト(=32ビット)のうち予め決められたビットに、エラー検出処理結果としてエラーの有無を示すエラーステータスが設定される。図5においては、第29ビット〜第24ビット、第19ビット〜第16ビットにエラーステータスが設定される。
図6に、図5のエラーステータスの内容の一例の説明図を示す。
エラー情報の第16ビットには、PMTのtable_idエラーの有無を示すエラーステータスが設定される。より具体的には、第16ビットには、TSパケットがPMTパケットの場合に、PMTパケットのデータ構造で規定されるtable_idが0x02(「0x」は16進数を示す)でないときに、table_idエラーが発生したと判断されて「1」が設定される。
エラー情報の第17ビットには、PMTのsection_syntax_indicatorエラーの有無を示すエラーステータスが設定される。より具体的には、第17ビットには、TSパケットがPMTパケットの場合に、PMTパケットのデータ構造で規定されるsection_syntax_indicatorが0x01でないときに、section_syntax_indicatorエラーが発生したと判断されて「1」が設定される。
エラー情報の第18ビットには、PMTのcurrent_next_indicatorエラーの有無を示すエラーステータスが設定される。より具体的には、第18ビットには、TSパケットがPMTパケットの場合に、PMTパケットのデータ構造で規定されるcurrent_next_indicatorが0x01でないときに、current_next_indicatorエラーが発生したと判断されて「1」が設定される。
エラー情報の第19ビットには、PMTのsection_numberエラーの有無を示すエラーステータスが設定される。より具体的には、第19ビットには、TSパケットがPMTパケットの場合に、PMTパケットのデータ構造で規定されるsection_numberが0x00でないときに、section_numberエラーが発生したと判断されて「1」が設定される。
エラー情報の第24ビットには、チューナエラーの有無を示すエラーステータスが設定される。より具体的には、第24ビットには、デジタルチューナ60からのRS(Read Solomon)符号エラーのときに、チューナエラーが発生したと判断されて「1」が設定される。RS符号エラーは、例えばRS符号による誤り訂正が不可能なときに発生する。
エラー情報の第25ビットには、同期バイト不一致エラーの有無を示すエラーステータスが設定される。より具体的には、第25ビットには、TSパケットの同期バイトが、予め決められた同期バイトと異なるときに、同期バイト不一致エラーが発生したと判断されて「1」が設定される。
エラー情報の第26ビットには、巡回冗長検査(Cyclic Redundancy Check:以下、CRC)エラーの有無を示すエラーステータスが設定される。より具体的には、第26ビットには、TSパケットがPMTパケットの場合に、CRCエラーが検出されたときに、CRCエラーが発生したと判断されて「1」が設定される。
エラー情報の第27ビットには、TSパケットサイズ不足の有無を示すエラーステータスが設定される。より具体的には、第27ビットには、TSパケットのサイズが188バイト未満のときに、TSパケットサイズ不足が発生したと判断されて「1」が設定される。
エラー情報の第28ビットには、TSパケットサイズオーバーの有無を示すエラーステータスが設定される。より具体的には、第28ビットには、TSパケットのサイズが189バイト以上のときに、TSパケットサイズオーバーが発生したと判断されて「1」が設定される。
エラー情報の第29ビットには、パケット監視部20のバッファ40への書き込み要求中に、バッファ40に別の書き込み要求が発生したか否かを示すエラーステータスが設定される。即ち、パケット監視部20が、パケットデータをバッファ40に書き込むための書き込み要求中に該バッファ40への別の書き込み要求が発生したことを示すエラー情報をパケットデータに付加するということができる。パケット監視部20がTSパケット及びエラー情報をバッファ40に書き込みを行っている最中に、例えばデコーダ30がバッファ40に対して書き込み要求を行ったときに、「1」が設定される。これは、次々到来するTSを処理する場合に、各部の処理が追いつかずに、2つの書き込み要求を受けたバッファ40への書き込みデータが完全なものであることを保証できないことを示し、TSパケットのデコード処理を継続するか否かの判断は後段に任せるためにエラーステータスが「1」に設定される。
例えば第16ビット、第17ビット、第18ビット、及び第19ビットのうち少なくとも1つが「1」の場合、当該エラーステータスを含むエラー情報が付加されたTSパケットを廃棄することが望ましい。これは、PMTを解析するホスト80によって、パケット監視部20で分離されるTSパケットが決定されるため、PMTの内容が不完全な場合にまで敢えてPMTを解析する必要はなく、TSパケットを廃棄して次に到来するPMTを待つ方が、正常なTSパケットで再生できる可能性が高くなり、制御の簡素化を図ることができるからである。
なお、図6に示すすべてのエラーステータスを検出する必要はなく、PMTのデータ構造におけるtable_id、section_syntax_indicator、current_next_indicator、section_numberのうち少なくとも1つのエラーを検出し、エラーの有無を示すエラー情報を該パケットデータに付加してもよい。
ところで、パケット監視部20において生成されるエラー情報は、該エラー情報が付加されるパケットデータに先立って読み出されるようにバッファ40の記憶領域に格納されることが望ましい。
図7に、本実施形態におけるエラー情報及びTSパケットのバッファ40の格納状況の説明図を示す。
バッファ40にアドレス値が割り振られており、該アドレス値によってTSパケットが格納される各記憶領域が特定されるようになっている。ここで、例えばデコーダ30が、アドレス値の小さい記憶領域からアドレス値の大きい記憶領域まで順番にTSパケット及びエラー情報を読み出すものとする。
このとき本実施形態におけるエラー情報をアドレス値の小さい0番地の記憶領域に格納し、該エラー情報を付加するTSパケットをアドレス値の大きい1番地〜47番地の記憶領域に格納することが望ましい。このように、TSパケット毎に、該TSパケットの記憶領域よりもアドレス値の記憶領域にエラー情報を格納することで、例えばデコーダ30又はホスト80は、まずエラー情報を読み出してエラーの判別をすればよい。例えばTSパケットを廃棄することを決定した場合、その後のアドレス値の大きい記憶領域に格納されるTSパケットを読み出すことなく、次のTSパケットのエラー情報を読み出す処理を行えばよい。
図8に、本実施形態におけるエラー情報の付加のタイミングの一例を示す。
デジタルチューナ60からは204バイトの伝送TSP(Transport Stream Packet)がデコード装置10に入力される。伝送TSPは、188バイト長のTSパケットと16バイト長のRS符号のパリティビットとが多重化されたストリームデータである。
例えば時刻TG1に、デコード装置10に伝送TSPが入力されたとき、パケット監視部20のエラー検出部24が、エラー検出処理を開始する。また、パケット監視部20は、ホスト80によって設定されたPIDに対応したTSパケットを分離する処理を開始し、時刻TG2以降、分離したTSパケットをバッファ40に格納する処理を行う。
そして、次の伝送TSが時刻TG10に入力されたとき、時刻TG1に開始したエラー検出処理結果であるエラー情報を、図7に示したように、TSパケットより読み出し順序が先になるようにバッファ40に格納する。即ち、時刻TG10で開始される分離処理の結果得られたパケットデータをバッファ40に書き込むのに先立って、直前のパケットデータに付加されるエラー情報をバッファ40に書き込む。こうすることで、図6に示すTSパケットサイズ不足を容易に検出し、且つ処理の遅延なく、次々と到来する伝送TSPに対するエラー情報の付加処理を継続できる。
これ以降、同様にTSパケット及びエラー情報の格納処理が行われる。このとき、バッファ40には、PMTを設定するためのTSパケット、NITを設定するためのTSパケット、文字/字幕情報を表示するためのTSパケット、BMLを表示するためのTSパケット、PSI/SIを設定するためのTSパケット、映像用TSパケット、音声用TSパケットが、各記憶領域に格納される。
次に、このように検出されたエラー情報に基づいて、致命的なエラー又は軽微なエラーに対応する第1又は第2のエラーを判別するエラー解析部50の処理例について説明する。
図9に、エラー解析部50の処理例のフロー図を示す。
エラー解析部50は、図示しないCPUを含み、図示しないメモリに格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図9に示す処理を行うことができるようになっている。
まず、エラー解析部50は、バッファ40に格納されたエラー情報から図5に示すエラーステータスを取得する(ステップS20)。そして、エラー解析部50は、取得したエラーステータスを解析する。
即ち、ステップS20において取得されたエラーステータスの第27ビットのデータに基づいて、TSパケットサイズ不足か否かを判別する(ステップS21)。ステップS21において、TSパケットサイズ不足であると判別されたとき(ステップS21:Y)、エラー解析部50は、当該TSパケットに致命的エラーが発生したことを示すエラー発生情報を生成する(ステップS22)。
ステップS21において、TSパケットサイズ不足ではないと判別されたとき(ステップS21:N)、エラー解析部50は、エラーステータスの第28ビットのデータに基づいて、TSパケットサイズオーバーか否かを判別する(ステップS23)。ステップS23において、TSパケットサイズオーバーであると判別されたとき(ステップS23:Y)、エラー解析部50は、当該TSパケットに致命的エラーが発生したことを示すエラー発生情報を生成する(ステップS22)。
ステップS23において、TSパケットサイズオーバーではないと判別されたとき(ステップS23:N)、エラー解析部50は、エラーステータスの第29ビットのデータに基づいて、バッファ40への書き込み要求中に書き込みが発生したか否かを判別する(ステップS24)。ステップS24において、バッファ40への書き込み要求中に書き込みが発生したと判別されたとき(ステップS24:Y)、エラー解析部50は、当該TSパケットに致命的エラーが発生したことを示すエラー発生情報を生成する(ステップS22)。
ステップS24において、バッファ40への書き込み要求中に書き込みが発生していないと判別されたとき(ステップS24:N)、エラー解析部50は、エラーステータスの第24ビットのデータに基づいて、チューナーエラーとしてのRS符号エラーであるか否かを判別する(ステップS25)。ステップS25において、RS符号エラーであると判別されたとき(ステップS25:Y)、エラー解析部50は、RS符号エラーが発生した連続パケット数を示すエラーカウントが予め決められた閾値を超えたか否かを判別する(ステップS26)。
ステップS26において、エラーカウントが閾値を超えたと判別されたとき(ステップS26:Y)、当該TSパケットに致命的エラーが発生したことを示すエラー発生情報を生成する(ステップS22)。一方、ステップS26において、エラーカウントが閾値を超えていないと判別されたとき(ステップS26:N)、エラーカウントをインクリメントし(ステップS27)、当該TSパケットに軽微なエラーが発生したことを示すエラー発生情報を生成する(ステップS28)。
図10(A)〜図10(C)に、RS符号エラーに基づくエラー発生情報の説明図を示す。ここでは、ステップS26における閾値が3であるものとする。
図10(A)は、TSパケットに付加されるエラー情報内のRS符号エラーの発生の有無を示すエラーステータスを示す。エラー解析部50は、図10(A)のエラーステータスを監視する。そしてエラー解析部50は、エラーステータスの所定のビットをカウントすることで、パケット毎にエラー情報をカウントしたカウント結果としてエラーカウントを得ることができる。より具体的には、エラー解析部50は、RS符号エラーが連続して発生したパケット数を示すエラーカウントを得る。このエラーカウントは、RS符号エラーが発生していないTSパケットが入力されたときに初期化される。
このようなエラーカウントが閾値「3」を超えているときに、致命的なエラーの発生と判別し、閾値「3」を超えていないときに軽微なエラーの発生と判別する。
即ち、エラー解析部50は、パケット毎にエラー情報をカウントしたカウント結果に基づいて致命的なエラー又は軽微なエラーの発生を判別することができる。そして、パケット毎にエラー情報を監視し、所与の閾値を超えたパケット数分連続してエラーが発生したとき致命的なエラーの発生を検出し、閾値以下のパケット数分連続してエラーが発生したとき軽微なエラーの発生を検出することができる。
例えば図10(A)では、6パケット連続してRS符号エラーが発生しているため、エラー解析部50は、致命的なエラーの発生と判断しエラー発生情報を生成する。また例えば図10(B)では、2パケット連続してRS符号エラーが発生しているため、エラー解析部50は、軽微なエラーの発生と判断しエラー発生情報を生成する。このようなエラー発生情報は、例えばパケット単位で生成される。
図9に戻って説明を続ける。
ステップS25において、RS符号エラーが発生していないと判別されたとき(ステップS25:N)、エラー解析部50は、エラーステータスの第25ビットのデータに基づいて、同期バイトの不一致が発生したか否かを判別する(ステップS29)。ステップS29において、同期バイトの不一致が発生したと判別されたとき(ステップS29:Y)、他にエラー要因があれば(ステップS30:N)、エラー解析部50は、当該TSパケットに致命的エラーが発生したことを示すエラー発生情報を生成する(ステップS22)。
ステップS29において同期バイトの不一致が発生していないと判別されたとき(ステップS29:N)、或いはステップS30において他にエラー要因が無いとき(ステップS30:Y)、例えばパケット監視部20がPESヘッダを削除する処理を行い、次のパケットがあるとき(ステップS31:Y)、ステップS20に戻る。ステップS31において、次のパケットがないとき(ステップS31:N)、一連の処理を終了する(エンド)。
ステップS22、ステップS28に続く処理も同様に、次のパケットがあるとき(ステップS31:Y)、ステップS20に戻る。ステップS31において、次のパケットがないとき(ステップS31:N)、一連の処理を終了する(エンド)。
以上のようにエラー解析部50によってエラーステータスが解析されて生成されたエラー発生情報は、デコーダ30により参照される。
図11に、デコーダ30の処理例のフロー図を示す。
デコーダ30は、図示しないCPUを含み、図示しないメモリに格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図11に示す処理を行うことができるようになっている。
まず、デコーダ30は、エラー解析部50によって生成されたエラー発生情報を取得する(ステップS40)。そして、エラー発生情報に基づいて致命的なエラーが発生していることが検出されたとき(ステップS41:Y)、パケット監視部20のカウンタ22に対するタイムアウト時間の設定制御を停止する(ステップS42)。その後、デコーダ30は、カウンタ22の初期化処理(ステップS42)、IDRピクチャの検索処理(ステップS44)を行い、一連の処理を終了する(エンド)。
一方、ステップS41において、エラー発生情報に基づいて致命的なエラーの発生が検出されなかったとき(ステップS41:N)、デコーダ30は、エラー発生情報に基づいて軽微なエラーが発生したか否かを判別する(ステップS45)。そして、エラー発生情報に基づいて軽微なエラーが発生したことが検出されたとき(ステップS45:Y)、次のNAL(Network Abstraction Layer)ユニットにスキップする処理を行い(ステップS46)、一連の処理を終了する(エンド)。
ステップS45において、エラー発生情報に基づいて軽微なエラーが発生しなかったことが検出されたとき(ステップS45:N)、一連の処理を終了する(エンド)。
以上のように、デコーダ30は、エラー解析部50によって判別された致命的なエラーか軽微なエラーかに応じて当該TSパケットに対応したデコード処理を行うことができる。従って、正しいデータであるにもかかわらず、デコード処理を停止させてしまうこともなくなり、正しくデコードできる可能性があるにもかかわらずデコード処理を停止させてしまうケースをなくすことができるようになる。
2. 情報再生装置
次に、本実施形態における上述のデコード装置が適用される情報再生装置について説明する。本実施形態における情報再生装置は、地上デジタル放送の再生を行うことができる。
2.1 1セグメント放送の概要
地上アナログ放送に代わって登場する地上デジタル放送では、画像及び音声の高品質化に加えて種々の新サービスの提供に期待が寄せられている。
図12に、地上デジタル放送のセグメントの概念の説明図を示す。
地上デジタル放送では、予め割り当てられた周波数帯域を14個のセグメントに分割し、そのうちの13個のセグメントSEG1〜SEG13を使って放送が行われる。残り1個のセグメントは、ガードバンドとして用いられる。そして、放送を行うための13個のセグメントのうちの1個のセグメントSEGmが、携帯端末向けの放送の周波数帯域に割り当てられる。
1セグメント放送では、それぞれが符号化(圧縮処理)された映像データ、音声データ、その他のデータ(制御データ)が多重化されたトランスポートストリーム(Transport Stream:TS)が伝送される。より具体的には、TSの各パケットにリードソロモン符号の誤り訂正用符号が付加された後、階層分割され、各階層において畳み込み符号化やキャリア変調が施される。そして、階層合成後に、周波数インターリーブ、時間インターリーブが行われ、受信側に必要なパイロット信号を付加してOFDMセグメントフレームが形成される。このOFDMセグメントフレームに対し、逆フーリエ変換演算が施されてOFDM信号として伝送される。
図13に、TSの説明図を示す。
TSは、図13に示すように複数のTSパケット列で構成されている。各TSパケットの長さは、188バイトに固定されている。各TSパケットは、4バイトのTSヘッダ(TS Header:TSH)と呼ばれるヘッダ情報が付加されており、TSパケットの識別子となるPID(Packet Identifier)を含む。1セグメント放送の番組は、PIDにより特定される。
TSパケットは、アダプテーションフィールドを含み、映像データ、音声データ等の同期再生の基準となる時刻情報であるPCR(Program Clock Reference)やダミーデータが埋め込まれる。ペイロードは、PES(Packetized Elementary Stream)パケットやセクションを生成するためのデータを含む。
図14に、PESパケット及びセクションの説明図を示す。
PESパケット及びセクションのそれぞれは、1又は複数のTSパケットの各TSパケットのペイロードにより構成される。PESパケットは、PESヘッダとペイロードとを含み、該ペイロードには、映像データ、音声データ又は字幕データがES(Elementary Stream)データとして設定される。セクションには、PESパケットに設定される映像データ等の番組情報等が設定される。
従って、TSを受信すると、まずセクションに含まれる番組情報を解析し、放送される番組に対応するPIDを特定する必要がある。そして、該PIDに対応する映像データ、音声データをTSから抽出し、抽出後の映像データ、音声データを再生することになる。
2.2 携帯端末
1セグメント放送の受信機能を有する携帯端末では、上記のようなパケットの解析等の処理が必要となる。即ち、このような携帯端末では、高い処理能力が要求される。そのため、携帯端末(広義には電子機器)としての従来の携帯電話機に、1セグメント放送の受信機能を付加する場合には、高い処理能力を有するプロセッサ等を更に追加する必要がある。
図15に、本実施形態の比較例におけるマルチメディア処理CPUを含む携帯電話機の構成例のブロック図を示す。
この携帯電話機900では、アンテナ910を介して受信された受信信号を復調して電話用CPU920が着呼処理を行い、電話用CPU920が発呼処理を行った信号が変調されてアンテナ910を介して送信される。電話用CPU920は、メモリ922に格納されたプログラムを読み込んで着呼処理及び発呼処理を行うことができる。
またアンテナ930を介して受信された受信信号から、チューナ940を介して希望信号が取り出されると、該希望信号をOFDM信号として上記と逆の手順でTSが生成される。マルチメディア処理CPU950は、生成されたTSからTSパケットを解析してPESパケット及びセクションを判別し、所望の番組のTSパケットから映像データ、音声データのデコード処理を行う。マルチメディア処理CPU950は、メモリ952に格納されたプログラムを読み込んで上記のパケットの解析処理やデコード処理を行うことができる。表示パネル960は、デコード処理後の映像データに基づいて表示出力を行い、スピーカ970は、デコード処理後の音声データに基づいて音声出力を行う。
このようにマルチメディア処理CPU950として、非常に高い処理能力が必要となる。高い処理能力を有するプロセッサは、一般的に、動作周波数が高くなったり、回路規模が大きくなったりしてしまう。
ところで、1セグメント放送のビットレートを考慮すると、その帯域のほとんどが映像データや音声データの帯域となり、データ放送自体の帯域が狭くなると考えられる。従って、マルチメディア処理CPUで実現できる処理のうち、映像データや音声データの再生処理のみで済む場合もあるにもかかわらず、マルチメディア処理CPUを常に動作させる必要があり、消費電力の増大を招く。
そこで、本実施形態では、映像データのデコード処理を行う映像デコーダと音声データのデコード処理を行う音声デコーダとを独立して設け、それぞれ独立にデコード処理を行わせることで、それぞれの処理能力として低いものを採用できる。更に、映像デコーダ及び音声データの一方の動作を適宜停止させて柔軟に低消費電力化を図ることができる。
更には、映像デコーダ及び音声デコーダを並列動作させることができるため、各デコーダの処理能力を低くて済み、より低消費電力化及び低コスト化を実現できる。
図16に、本実施形態における情報再生装置を含む携帯電話機の構成例のブロック図を示す。なお図16において、図15と同一部分には同一符号を付し、適宜説明を省略する。
携帯電話機100は、ホストCPU(広義にはホスト)110、RAM(Random Access Memory)120、ROM(Read Only Memory)130、表示ドライバ140、DAC(Digital-to-Analog Converter)150、画像処理IC(Integrated Circuit)(広義には情報再生装置)200を含むことができる。更に携帯電話機100は、アンテナ910、930、チューナ940、表示パネル960、スピーカ970を含む。
ホストCPU110は、図15の電話用CPU920の機能を有すると共に、画像処理IC200を制御する機能を有する。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、図15の電話用CPU920の処理、画像処理IC200を制御する処理を行う。この際、ホストCPU110は、RAM120をワークエリアとして用いることができる。
画像処理IC200は、チューナ940からのTSから、映像データを生成するための映像用TSパケット(第1のTSパケット)、音声データを生成するための音声用TSパケット(第2のTSパケット)を抽出し、図示しない共有メモリにバッファリングする。そして画像処理IC200は、互いに独立して動作停止制御が可能な映像デコーダ及び音声デコーダ(図示せず)を含み、映像デコーダ及び音声デコーダが、それぞれ映像用TSパケット及び音声用TSパケットをデコードして映像データ及び音声データを生成する。映像データ及び音声データは、同期しながら、それぞれ表示ドライバ140及びDAC150に供給される。ホストCPU110は、このような画像処理IC200に対し、映像デコード処理及び音声デコード処理の処理開始を指示することができる。なおホストCPU110は、画像処理IC200に対し、映像デコード処理及び音声デコード処理の少なくとも1つの処理開始を指示するようにしてもよい。
表示ドライバ(広義には駆動回路)140は、映像データに基づいて表示パネル(広義には電気光学装置)960を駆動する。より具体的には、表示パネル960は、複数の走査線、複数のデータ線、各画素が各走査線及び各データ線により特定される複数の画素を有し、表示パネル960として液晶表示(Liquid Crystal Display)パネルを採用できる。表示ドライバ140は、複数の走査線を走査する走査ドライバの機能と、該映像データに基づいて複数のデータ線を駆動するデータドライバの機能とを有する。
DAC150は、デジタル信号である音声データをアナログ信号に変換し、スピーカ970に供給する。スピーカ970は、DAC150からのアナログ信号に対応した音声出力を行う。
2.3 情報再生装置
図17に、本実施形態の情報再生装置としての図16の画像処理IC200の構成例のブロック図を示す。
画像処理IC200は、TS分離部(分離処理部)210と、メモリ(共有メモリ)220と、映像デコーダ230と、音声デコーダ240とを含む。また画像処理IC200は、更に、表示制御部250と、チューナI/F(Interface)260と、ホストI/F270と、ドライバI/F280と、オーディオI/F290とを含む。メモリ220は、図1のバッファ40の機能を有する。
TS分離部210は、映像データを生成するための映像用TSパケット(第1のTSパケット)、音声データを生成するための音声用TSパケット(第2のTSパケット)、映像用TSパケット及び音声用TSパケット以外のパケット(第3のTSパケット)を、TSから抽出する。TS分離部210は、TSから一旦抽出された第3のTSパケットを解析するホストCPU110の解析結果に基づいて、第1及び第2のTSパケットを抽出することができる。このTS分離部210は、図1のパケット監視部20の機能を有する。即ち、TS分離部210が、第1〜第3のTSパケットの各TSパケットのエラーを検出し、エラーの有無を示すエラー情報を各TSパケットに付加することができる。
映像デコーダ230は、メモリ220の記憶領域のうち映像用TSパケット専用に設けられた記憶領域から映像用TSパケットを読み出し、該映像用TSパケットに基づいて映像データを生成する映像デコード処理を行うと共に、映像データと音声データを同期して再生するための基準タイミングを生成する。
音声デコーダ240は、メモリ220の記憶領域のうち音声用TSパケット専用に設けられた記憶領域から音声用TSパケットを読み出し、該音声用TSパケットに基づいて音声データを生成する音声デコード処理を行う。
映像デコーダ230及び音声デコーダ240の少なくとも一方は、図1のデコーダ30及びエラー解析部50の機能を有する。
表示制御部250は、メモリ220から読み出された映像データにより表される画像の向きを回転させる回転処理や該画像のサイズを縮小又は拡大させるリサイズ処理を行う。回転処理後のデータやリサイズ処理後のデータは、ドライバI/F280に供給される。表示制御部250は、表示タイミングに合わせて、処理後のデータをドライバI/F280に転送する制御を行う。
チューナI/F260は、チューナ940とのインタフェース処理を行う。より具体的には、チューナI/F260は、チューナ940からのTSを受信する制御を行う。チューナI/F260は、TS分離部210に接続される。チューナI/F260に接続されるチューナ940が、図1のデジタルチューナ60に相当する。
ホストI/F270は、ホストCPU110とのインタフェース処理を行う。より具体的には、ホストI/F270は、ホストCPU110との間のデータの送受信の制御を行う。ホストI/F270は、TS分離部210、メモリ220、表示制御部250、オーディオI/F290に接続される。ホストI/F270に接続されるホストCPU110が、図1のホスト80の機能を実現する。
ドライバI/F280は、表示制御部250を介してメモリ220から所定の周期で映像データを読み出し、該映像データを表示ドライバ140に対して供給する。ドライバI/F280は、表示ドライバ140に対して映像データを送信するためのインタフェース処理を行う。
オーディオI/F290は、メモリ220から所定の周期で音声データを読み出し、該音声データをDAC150に対して供給する。オーディオI/F290は、DAC150に対して音声データを送信するためのインタフェース処理を行う。
図17における表示ドライバやDACは、図1の出力部70に含まれる。
このような画像処理IC200では、TS分離部210により、チューナ940からのTSからTSパケットが抽出される。TSパケットは、共有メモリとしてのメモリ220の予め割り当てられた記憶領域に格納される。そして、映像デコーダ230及び音声デコーダ240が、それぞれメモリ220に割り当てられた専用の記憶領域からTSパケットを読み出して、映像データ及び音声データを生成し、互いに同期した映像データ及び音声データを表示ドライバ140及びDAC150に対して供給することができる。
図18に、図17の画像処理IC200の動作説明図を示す。
図18において、図17と同一部分には同一符号を付し、適宜説明を省略する。
メモリ220は、第1〜第8の記憶領域AR1〜AR8を有し、各記憶領域が予め割り当てられている。TS分離部210によって分離されたTSパケットと、該TSパケットについてTS分離部210で行われたエラー検出処理結果としてのエラー情報とが、各記憶領域に格納される。
第1の記憶領域AR1には、映像用TSパケット専用の記憶領域として、TS分離部210によって抽出された映像用TSパケット(第1のTSパケット)が格納される。第2の記憶領域AR2には、音声用TSパケット専用の記憶領域として、TS分離部210によって抽出された音声用TSパケット(第2のTSパケット)が格納される。第3の記憶領域AR3には、TS分離部210によって抽出されたTSパケットのうち映像用TSパケット及び音声用TSパケットを除くTSパケット(第3のTSパケット)が格納される。
第4の記憶領域AR4には、映像用ESデータ専用の記憶領域として、映像デコーダ230によって生成された映像用ESデータが格納される。第5の記憶領域AR5には、音声用ESデータ専用の記憶領域として、音声デコーダ240によって生成された音声用ESデータが格納される。
第6の記憶領域AR6には、ホストCPU110によって生成されるTSが、TSRAWデータとして格納される。TSRAWデータは、チューナ940からのTSに替わってホストCPU110により設定される。そして、TS分離部210は、TSRAWデータとして設定されたTSから、映像用TSパケット、音声用TSパケット、その他のTSパケットが抽出されるようになっている。
第7の記憶領域AR7には、映像デコーダ230によるデコード処理後の映像データが格納される。第7の記憶領域AR7に格納された映像データは、表示制御部250によって読み出され、表示パネル960による映像出力に供される。第8の記憶領域AR8には、音声デコーダ240によるデコード処理後の音声データが格納される。第8の記憶領域AR8に格納された音声データは、スピーカ970による音声出力に供される。
映像デコーダ230は、ヘッダ削除処理部232と、映像デコード処理部234とを含む。ヘッダ削除処理部232は、第1の記憶領域AR1から映像用TSパケットを読み出し、該映像用TSパケットのTSヘッダを解析してPESパケット(第1のPESパケット)を生成した後、そのPESヘッダを削除する処理を行ってそのペイロード部を映像用ESデータとしてメモリ220の第4の記憶領域AR4に格納する。そして、ヘッダ削除処理部232を含む映像デコーダ230が、表示タイミングに合わせて、表示制御部250に対して画像データの転送指示を行う。
映像デコード処理部234は、第4の記憶領域AR4から映像用ESデータを読み出し、H.264/AVC(Advanced Video Coding)の規格に従ったデコード処理(広義には映像デコード処理)を行って生成される映像データを第7の記憶領域AR7に書き込む。
音声デコーダ240は、ヘッダ削除処理部242と、音声デコード処理部244とを含む。ヘッダ削除処理部242は、第2の記憶領域AR2から音声用TSパケットを読み出し、該音声用TSパケットのTSヘッダを解析してPESパケット(第2のPESパケット)を生成した後、そのPESヘッダを削除する処理を行ってそのペイロード部を音声用ESデータとしてメモリ220の第5の記憶領域AR5に格納する。音声デコード処理部244は、第5の記憶領域AR5から音声用ESデータを読み出し、MPEG−2AAC(Advanced Audio Coding)の規格に従ったデコード処理(広義には音声デコード処理)を行って生成される音声データを第8の記憶領域AR8に書き込む。
そして、映像デコーダ230が、第1の記憶領域AR1から映像用TSパケット(第1のTSパケット)を、音声デコーダ240とは独立して読み出し、該映像用TSパケットに基づいて上記の映像デコード処理を行う。また音声デコーダ240が、第2の記憶領域AR2から音声用TSパケット(第2のTSパケット)を、映像デコーダ230とは独立して読み出し、該音声用TSパケットに基づいて上記の音声デコード処理を行う。こうすることで、映像と音声とを同期させて出力させる場合には映像デコーダ230及び音声デコーダ240を動作させることができる一方、映像のみを出力させる場合には映像デコーダ230のみを動作させて音声デコーダ240の動作を停止させることができる。また音声のみを出力させる場合には音声デコーダ240のみを動作させて映像デコーダ230の動作を停止させることができる。
ホストCPU110は、第3の記憶領域AR3に格納されたその他のTSパケット(第3のTSパケット)を読み出し、該TSパケットからセクションを生成する。そして該セクションに含まれる各種テーブル情報を解析する。ホストCPU110は、その解析結果をメモリ220の所定の記憶領域に設定すると共にTS分離部210に対し制御情報として指定する。それ以降、TS分離部210は、チューナ940からのTSを該制御情報に従ってTSパケットを抽出する。一方、ホストCPU110は、映像デコーダ230及び音声デコーダ240に対して、それぞれ別個に起動コマンドを発行することができる。映像デコーダ230及び音声デコーダ240は、それぞれ独立してメモリ220にアクセスしてホストCPU110の解析結果を読み出し、該解析結果に対応したデコード処理を行う。
2.3.1 再生動作
次に、本実施形態における情報再生装置としての画像処理IC200において、TSに多重化された映像データ又は音声データを再生する場合の動作について説明する。
図19に、ホストCPU110による再生処理の動作例のフロー図を示す。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図19に示す処理を行うことができるようになっている。
まずホストCPU110は、放送受信開始処理を行う(ステップS100)。これによって、TSとして受信された複数の番組のうち所望の番組の映像データ又は音声データをTSから抽出することができる。そして、ホストCPU110は、画像処理IC200の映像デコーダ230及び音声デコーダ240の少なくとも1つを起動させる。
その後、ホストCPU110は、映像及び音声の再生を行う場合には映像デコーダ230及び音声デコーダ240によりデコード処理を行わせる。或いはホストCPU110は、映像のみの再生を行う場合には音声デコーダ240の動作を停止させて映像デコーダ230によりデコード処理を行わせる。或いはまた、ホストCPU110は、音声のみの再生を行う場合には映像デコーダ230の動作を停止させて音声デコーダ240によりデコード処理を行わせる(ステップS101)。
次に、ホストCPU110は、放送受信終了処理を行い(ステップS102)、一連の処理を終了する(エンド)。これによって、ホストCPU110は、画像処理IC200の各部の動作を停止させる。
2.3.2 放送受信開始処理
続いて、図19に示す放送受信開始処理の処理例について説明する。ここでは、映像及び音声の再生を行う場合について説明する。
図20に、図19の放送受信開始処理の動作例のフロー図を示す。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図20に示す処理を行うことができるようになっている。
まずホストCPU110は、画像処理IC200の映像デコーダ230、音声デコーダ240を起動する(ステップS110)。その後、ホストCPU110は、チューナ940を初期化すると共に所与の動作情報を設定する(ステップS111)。そしてホストCPU110は、DAC150に対しても初期化を行って所与の動作情報を設定する(ステップS112)。
その後ホストCPU110は、TSの受信を監視する(ステップS113:N)。TSの受信が開始されると、画像処理IC200では、TS分離部210が、上述のようにTSから映像用TSパケット、音声用TSパケット及びそれ以外のTSパケットに分離し、分離されたTSパケットは、専用に設けられたメモリ220の記憶領域に格納される。例えば画像処理IC200のメモリ220における第3の記憶領域AR3にTSパケットが格納されたことを条件に発生する割り込み信号により、ホストCPU110はTSの受信を検出できる。或いはホストCPU110が、周期的にメモリ220の第3の記憶領域AR3をアクセスすることで、TSパケットの書き込みが行われた否かを判断して、TSの受信を判別できる。
このようにしてTSの受信が検出されたとき(ステップS113:Y)、ホストCPU110は、第3の記憶領域AR3に記憶されたTSパケットを読み出してセクションを生成する。そして、セクションに含まれるPSI(Program Specific Information:番組特定情報)/SI(Service Information:番組配列情報)を解析する(ステップS114)。このPSI/SIは、MPEG−2システム(ISO/IEC 13818-1)にて規定されている。
PSI/SIは、NIT(Network Information Table:ネットワーク情報テーブル)やPMT(Program Map Table:番組対応テーブル)を含む。NITは、例えばどの放送局からのTSかを特定するためのネットワーク識別子、PMTを特定するためのサービス識別子、放送の種類を示すサービスタイプ識別子等を含む。PMTには、例えばTSにおいて多重化される映像用TSパケットのPIDと音声用TSパケットのPIDが設定される。
従って、ホストCPU110は、PSI/SIからPMTを特定するためのサービス識別子を抽出し、該サービス識別子に基づき、受信したTSの映像用TSパケット及び音声用TSパケットのPIDを特定できる(ステップS115)。そして、携帯端末のユーザに選択させた番組に対応するPID、若しくは予め決められた番組に対応するPIDを、ホストCPU110が、映像デコーダ230及び音声デコーダ240に参照できるようにメモリ220の所定の記憶領域(例えば第3の記憶領域AR3)に設定し(ステップS116)、一連の処理を終了する(エンド)。
こうすることで、映像デコーダ230及び音声デコーダ240は、メモリ220に設定されたPIDを参照しながら、映像用TSパケット及び音声用TSパケットに対してデコード処理を行うことができる。
なおホストCPU110は、例えばPMTを特定するためのサービス識別子に対応する情報を、画像処理IC200のTS分離部210に設定する。こうすることで、TS分離部210は、所定の時間間隔を置いて周期的に受信されるセクションを判別し、上記のサービス識別子に対応したPMTを解析し、該PMTにより特定される映像用TSパケット及び音声用TSパケットとそれ以外のTSパケットを抽出してメモリ220に格納していく。
図21に、図17及び図18の画像処理IC200の放送受信開始処理における動作説明図を示す。図21において、図17又は図18と同一部分には同一符号を付し、適宜説明を省略する。
なお図21において、第7の記憶領域AR7を第4の記憶領域AR4と共用化し、第8の記憶領域AR8を第5の記憶領域AR5と共用化している。また、PSI/SI、NIT、PMTは、第3の記憶領域AR3内の所定の記憶領域に格納されるものとする。
まずチューナ940からTSが入力される(SQ1)とTS分離部210は、PSI/SIが含まれるTSパケットをメモリ220に格納する(SQ2)。なお、TS分離部210は、エラー検出処理を行い、その結果をエラー情報として付加してTSパケットをメモリ220に格納する。このとき、TS分離部210は、該TSパケットのPSI/SI自体を抽出してメモリ220に格納することができる。更にTS分離部210は、PSI/SIからNITを抽出してメモリ220に格納することができる。
ホストCPU110は、PSI/SI、NIT、PMTを読み出して(SQ3)、これらを解析し、デコード処理対象の番組に対応するPIDを特定する。そしてホストCPU110は、サービス識別子に対応する情報又はデコード処理対象の番組に対応するPIDを、TS分離部210に設定する(SQ4)。なおホストCPU110は、PIDを、メモリ220の所定の記憶領域にも設定し、映像デコーダ230及び音声デコーダ240のデコード処理の際に参照させる。ここで、ホストCPU110は、エラー情報に基づいてTSパケットの廃棄を行うことができる。
TS分離部210は、設定されたPIDに基づいてTSから映像用TSパケット及び音声用TSパケットを抽出し、それぞれ第1及び第2の記憶領域AR1、AR2に書き込む(SQ5)。
その後、ホストCPU110によって起動された映像デコーダ230及び音声デコーダ240は、第1及び第2の記憶領域AR1、AR2から映像用TSパケット及び音声用TSパケットを順次読み出して(SQ6)、映像デコード処理及び音声デコード処理を行う。
このとき、次のシーケンスで、ホストCPU110、映像デコーダ230及び音声デコーダ240がコマンドデータを介した通信を行う。
2.3.3 放送受信終了処理
次に、図19に示す放送受信終了処理の動作例について説明する。ここでは、映像及び音声の再生を行う場合について説明する。
図22に、図19の放送受信終了処理の処理例のフロー図を示す。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図22に示す処理を行うことができるようになっている。
まずホストCPU110は、画像処理IC200の映像デコーダ230、音声デコーダ240を停止させる(ステップS120)。これは、ホストCPU110から画像処理IC200に対しコマンドを発行し、画像処理IC200が該制御コマンドのデコード結果を用いて映像デコーダ230、音声デコーダ240を停止させる。
その後、ホストCPU110は、同様にTS分離部210を停止させる(ステップS121)。そして、ホストCPU110は、チューナ940を停止させる(ステップS122)。
図23に、図17及び図18の画像処理IC200の放送受信終了処理における動作説明図を示す。図23において、図21と同一部分には同一符号を付し、適宜説明を省略する。
まずホストCPU110が、表示制御部250の動作を停止させる制御を行い、表示ドライバ140への映像データの供給を停止させる(SQ10)。次に、ホストCPU110が、映像デコーダ230及び音声デコーダ240の動作を停止させ(SQ11)、その後TS分離部210、チューナ940の順に動作を停止させていく(SQ12、SQ13)。
2.3.4 再生処理
2.3.4.1 映像データの再生処理
次に、映像データの再生処理を行う映像デコーダ230の動作例について説明する。
図24に、映像デコード処理時に行われる映像デコーダ230のメモリのアクセス動作例のフロー図を示す。
まず、映像デコーダ230は、映像用TSバッファとして設けられた第1の記憶領域AR1がエンプティ状態か否かを判別する(ステップS140)。第1の記憶領域AR1から読み出されるべき映像用TSパケットがない場合、エンプティ状態となる。
ステップS140において映像用TSバッファである第1の記憶領域AR1がエンプティ状態でないと判別されたとき(ステップS140:N)、映像デコーダ230は、更に映像用ESバッファとして設けられた第4の記憶領域AR4がフル状態か否かを判別する(ステップS141)。これ以上映像用ESデータを第4の記憶領域AR4に格納できない場合、フル状態となる。
ステップS141において映像用ESバッファである第4の記憶領域AR4がフル状態でないと判別されたとき(ステップS141:N)、映像デコーダ230は、第1の記憶領域AR1から映像用TSパケットを読み出し、図20のステップS116においてホストCPU110により特定されたPID(指定PID)か否かを検出する(ステップS142)。
ステップS142において、映像用TSパケットのPIDが指定PIDであると検出されたとき(ステップS142:Y)、映像デコーダ230は、TSヘッダ、PESヘッダの解析を行い(ステップS143)、映像用ESデータを映像用ESバッファとして設けられた第4の記憶領域AR4に格納する(ステップS144)。
その後、映像デコーダ230は、映像用TSバッファである第1の記憶領域AR1の読み出しアドレスを特定するための読み出しポインタを更新し(ステップS145)、ステップS140に戻る(リターン)。
なお、ステップS142において映像用TSパケットのPIDが指定PIDではないと検出されたとき(ステップS142:N)、ステップS145に進む。また、ステップS140において映像用TSバッファである第1の記憶領域AR1がエンプティ状態であると判別されたとき(ステップS140:Y)、又はステップS141において映像用ESバッファである第4の記憶領域AR4がフル状態であると判別されたとき(ステップS141:Y)、ステップS140に戻る(リターン)。
こうして第4の記憶領域AR4に格納された映像用ESデータは、映像デコーダ230により、H.264/AVCの規格に従ったデコード処理が行われて、映像データとして第7の記憶領域AR7に書き込まれる。
図25に、図17及び図18の画像処理IC200の映像デコーダの動作説明図を示す。図25において、図21と同一部分には同一符号を付し、適宜説明を省略する。
なお図25において、第7の記憶領域AR7を第4の記憶領域AR4と共用化し、第8の記憶領域AR8を第5の記憶領域AR5と共用化している。また、PSI/SI、NIT、PMTは、第3の記憶領域AR3内の所定の記憶領域に格納されるものとする。
まず図20に示すようにホストCPU110によりデコード処理対象の番組に対応するPIDがTS分離部210に設定される(SQ20)。チューナ940からTSが入力されたとき(SQ21)、TS分離部210は、チューナ940からのTSから映像用TSパケット、音声用TSパケット及びそれ以外のTSパケットをそれぞれ分離する(SQ22)。TS分離部210によって分離された映像用TSパケットは、TS分離部210で生成されたエラー情報と共に第1の記憶領域AR1に格納される。TS分離部210によって分離された音声用TSパケットは、TS分離部210で生成されたエラー情報と共に第2の記憶領域AR2に格納される。TS分離部210によって分離された映像用TSパケット及び音声用TSパケット以外のTSパケットは、TS分離部210で生成されたエラー情報と共にPSI/SIとして第3の記憶領域AR3に格納される。この際、TS分離部210は、PSI/SIの中のNIT、PMTを抽出して第3の記憶領域AR3に格納する。
次にホストCPU110によって起動された映像デコーダ230は、第1の記憶領域AR1から映像用TSパケットを読み出す(SQ23)。このとき、映像デコーダ230は、上述のエラー情報を参照して、映像デコード処理を行うか、映像用TSパケットの廃棄を行うかを決定する。映像デコード処理を行うと決定したとき、映像デコーダ230は、映像用ESデータを生成し、該映像用ESデータを第4の記憶領域AR4に格納する(SQ24)。
その後、映像デコーダ230は、第4の記憶領域AR4から映像用ESデータを読み出して(SQ25)、H.264/AVCの規格に従ったデコード処理を行う。図25では、デコード処理後の映像データが表示制御部250に直接供給されている(SQ26)が、例えばデコード処理後の映像データを、一旦、メモリ220の所定の記憶領域に書き戻し、その後、音声データの出力タイミングと同期を取りながら表示制御部250に供給することが望ましい。
こうして表示制御部250に供給された映像データに基づいて、表示ドライバ140が表示パネルを駆動する(SQ27)。
2.3.4.2 音声データの再生処理
続いて、音声データの再生処理を行う音声デコーダ240の動作例について説明する。
図26に、音声デコード処理時に行われる音声デコーダ240のメモリのアクセス動作例のフロー図を示す。
まず、音声デコーダ240は、ホストCPU110によって起動されると、例えばメモリ220の所定の記憶領域に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図26に示す処理を行うことができるようになっている。即ち、音声デコーダ240はCPU(中央演算処理装置)を含み、画像処理IC200(情報再生装置)の初期化処理後に、画像処理IC200の外部から、CPUに音声デコード処理を実現するためのプログラムが読み込まれ、該CPUが音声デコード処理を実現することができる。
まず、音声デコーダ240は、音声用TSバッファとして設けられた第2の記憶領域AR2がエンプティ状態か否かを判別する(ステップS150)。第2の記憶領域AR2から読み出されるべき音声用TSパケットがない場合、エンプティ状態となる。
ステップS150において音声用TSバッファである第2の記憶領域AR2がエンプティ状態でないと判別されたとき(ステップS150:N)、音声デコーダ240は、更に音声用ESバッファとして設けられた第5の記憶領域AR5がフル状態か否かを判別する(ステップS151)。これ以上音声用ESデータを第5の記憶領域AR5に格納できない場合、フル状態となる。
ステップS151において音声用ESバッファである第5の記憶領域AR5がフル状態でないと判別されたとき(ステップS151:N)、音声デコーダ240は、第2の記憶領域AR2から音声用TSパケットを読み出し、図20のステップS116においてホストCPU110により特定されたPID(指定PID)か否かを検出する(ステップS152)。
ステップS152において、音声用TSパケットのPIDが指定PIDであると検出されたとき(ステップS152:Y)、音声デコーダ240は、TSヘッダ、PESヘッダの解析を行い(ステップS153)、音声用ESデータを音声用ESバッファとして設けられた第5の記憶領域AR5に格納する(ステップS154)。
その後、音声デコーダ240は、音声用TSバッファである第2の記憶領域AR2の読み出しアドレスを特定するための読み出しポインタを更新し(ステップS155)、ステップS150に戻る(リターン)。
なお、ステップS152において、音声用TSパケットのPIDが指定PIDではないと検出されたとき(ステップS152:N)、ステップS155に進む。また、ステップS150において音声用TSバッファである第2の記憶領域AR2がエンプティ状態であると判別されたとき(ステップS150:Y)、又はステップS151において音声用ESバッファである第5の記憶領域AR5がフル状態であると判別されたとき(ステップS151:Y)、ステップS150に戻る(リターン)。
こうして第5の記憶領域AR5に格納された音声用ESデータは、音声デコーダ240により、MPEG−2AACの規格に従ったデコード処理が行われて、音声データとして第8の記憶領域AR8に書き込まれる。
図27に、図17及び図18の画像処理IC200の音声デコーダの動作説明図を示す。図27において、図21と同一部分には同一符号を付し、適宜説明を省略する。
なお図27において、第7の記憶領域AR7を第4の記憶領域AR4と共用化し、第8の記憶領域AR8を第5の記憶領域AR5と共用化している。また、PSI/SI、NIT、PMTは、第3の記憶領域AR3内の所定の記憶領域に格納されるものとする。
まず図20に示すようにホストCPU110によりデコード処理対象の番組に対応するPIDがTS分離部210に設定される(SQ30)。チューナ940からTSが入力されたとき(SQ31)、TS分離部210は、チューナ940からのTSから映像用TSパケット、音声用TSパケット及びそれ以外のTSパケットをそれぞれ分離する(SQ32)。TS分離部210によって分離された映像用TSパケットは、TS分離部210で生成されたエラー情報と共に第1の記憶領域AR1に格納される。TS分離部210によって分離された音声用TSパケットは、TS分離部210で生成されたエラー情報と共に第2の記憶領域AR2に格納される。TS分離部210によって分離された映像用TSパケット及び音声用TSパケット以外のTSパケットは、TS分離部210で生成されたエラー情報と共にPSI/SIとして第3の記憶領域AR3に格納される。更にTS分離部210は、PSI/SIの中のNIT、PMTを抽出して第3の記憶領域AR3の所定の記憶領域に書き込むことができる。
次にホストCPU110によって起動された音声デコーダ240は、第2の記憶領域AR2から音声用TSパケットを読み出す(SQ33)。このとき、音声デコーダ240は、上述のエラー情報を参照して、音声デコード処理を行うか、音声用TSパケットの廃棄を行うかを決定する。音声デコード処理を行うと決定したとき、音声デコーダ240は、音声用ESデータを生成し、該音声用ESデータを第5の記憶領域AR5に格納する(SQ34)。
その後、音声デコーダ240は、第5の記憶領域AR5から音声用ESデータを読み出して(SQ35)、MPEG−2AACの規格に従ったデコード処理を行う。図27では、デコード処理後の音声データがDAC150に直接供給されている(SQ36)が、例えばデコード処理後の音声データを、一旦、メモリ220の所定の記憶領域に書き戻し、その後、映像データの出力タイミングと同期を取りながらDAC150に供給することが望ましい。
以上のような音声デコーダ240の動作は、映像デコーダ230の動作とは独立して行われる。
2.3.5 IDRピクチャ検索処理
本実施形態では、図2〜図3で説明したように、チューナ940からのタイムアウトを検出することができる。また、本実施形態では、図9〜図11で説明したように致命的なエラー又は軽微なエラーを判別することで、その判別結果に応じたデコード処理を行うことができる。致命的なエラーを検出したときには、IDRピクチャの検索処理を行う。軽微なエラーを検出したときには、当該スライスをスキップする処理を行う。
致命的なエラー又は軽微なエラーを判別する処理は、図9で示す処理と同様である。そして、致命的なエラー又は軽微なエラーに応じて切り替える処理は、図11で示す処理と同様である。以下では、映像デコーダ230により行われるIDRピクチャの検索処理の詳細について説明する。
図28に、映像デコーダ230により行われるIDRピクチャの検索処理の詳細な処理例のフロー図を示す。図28に示す処理は、例えば図11のステップS44において行われる。
映像デコーダ230は、IDRピクチャを検索する処理を行う前に、映像デコード処理を中断する(ステップS160)。続いて、映像デコーダ230は、メモリ220の第1の記憶領域AR1に正常な映像用TSパケットがあるとき(ステップS161:Y、ステップS162:Y)、ヘッダ削除処理部232により、第1の記憶領域AR1から読み出した映像用TSパケットのTSヘッダを解析してPESパケットを生成した後、そのPESヘッダを削除する処理を行ってそのペイロード部を映像用ESデータとしてメモリ220の第4の記憶領域AR4に格納する(ステップS163)。
一方、第1の記憶領域AR1にデータがないとき(ステップS161:N)、第1の記憶領域AR1にデータがあるが正常なデータではないとき(ステップS161:Y、ステップS162:N)、映像デコーダ230は、ステップS161に戻り、第1の記憶領域AR1に正常な映像用TSパケットが格納されるまで待つ。
ステップS163の後、メモリ220がエンプティ状態となって利用可の場合には(ステップS164:Y)、ステップS161に戻る。これにより、TSパケットからTSヘッダの削除等を行う分離処理が継続して行われる。
ステップS164において、メモリ220がフル状態となって利用不可の場合には(ステップS164:N)、映像デコーダ230は、IDRピクチャの検索処理を行う(ステップS165)。そして、IDRピクチャが検索されたとき(ステップS166:Y)、映像デコード処理部234が、映像デコード処理を行って(ステップS167)、一連の処理を終了する(エンド)。
なお、ステップS166において、IDRピクチャが検索されないとき(ステップS166:N)、ステップS163に戻って、TSパケットからTSヘッダの削除等を行う分離処理を行う。
なお映像デコーダ230は、メモリ220に既に蓄積されているTSパケット等に対してデコード処理を行った後に、画像処理IC200又は映像デコーダ230の動作が停止させることが望ましい。
なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。なお上記の実施形態又はその変形例では、地上デジタル放送に適用可能な例について説明したが、本発明は地上デジタル放送に適用可能なものに限定されるものではない。
なお、本実施形態では、主にH.264/AVCに準拠したデコード処理に適用した場合について説明したが、これに限定されるものではなく、他の規格や、H.264/AVC規格を発展させた規格に準拠したデコード処理に適用できることは言うまでもない。
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
本実施形態におけるデコード装置の構成例のブロック図。 パケット監視部の動作例のフロー図。 デジタルチューナからのTSパケットのタイムアウトを検出するシーケンスの一例を示す図。 本実施形態においてTSパケットに付加されるエラー情報の説明図。 図4のエラー情報の詳細な説明図。 図5のエラーステータスの内容の一例の説明図。 本実施形態におけるエラー情報及びTSパケットのバッファの格納状況の説明図。 本実施形態におけるエラー情報の付加のタイミングの一例を示す図。 エラー解析部の処理例のフロー図。 図10(A)〜図10(C)はRS符号エラーに基づくエラー発生情報の説明図。 デコーダの処理例のフロー図。 地上デジタル放送のセグメントの概念の説明図。 TSの説明図。 PESパケット及びセクションの説明図。 本実施形態の比較例におけるマルチメディア処理CPUを含む携帯電話機の構成例のブロック図。 本実施形態における情報再生装置を含む携帯電話機の構成例のブロック。 図16の画像処理ICの構成例のブロック図。 図17の画像処理ICの動作説明図。 ホストCPUによる再生処理の動作例のフロー図。 図19の放送受信開始処理の動作例のフロー図。 図17及び図18の画像処理ICの放送受信開始処理における動作説明図。 図19の放送受信終了処理の処理例のフロー図。 図17及び図18の画像処理ICの放送受信終了処理における動作説明図。 映像デコーダのメモリのアクセス動作例のフロー図。 図17及び図18の画像処理ICの映像デコーダの動作説明図。 音声デコーダのメモリのアクセス動作例のフロー図。 図17及び図18の画像処理ICの音声デコーダの動作説明図。 IDRピクチャの検索処理の詳細な処理例のフロー図。
符号の説明
10 デコード装置、 20 パケット監視部、 22 カウンタ、
24 エラー検出部、 30 デコーダ、 40 バッファ、 50 エラー解析部、
60 デジタルチューナ、 70 出力部、 80 ホスト、 100 携帯電話機、
110 ホストCPU、 120 RAM、 130 ROM、
140 表示ドライバ、 150 DAC、 200 画像処理IC、
210 TS分離部、 230 映像デコーダ、 240 音声デコーダ、
250 表示制御部、 260 チューナI/F、 270 ホストI/F、
280 ドライバI/F、 290 オーディオI/F、 910、930 アンテナ、940 チューナ、 960 表示パネル、 970 スピーカ

Claims (15)

  1. 受信したパケットデータに対してデコード処理を行うためのデコード装置であって、
    チューナからのパケットデータが所与の期間入力されないタイムアウトの発生を監視するパケット監視部と、
    前記パケットデータに対してデコード処理を行うデコーダとを含み、
    前記パケット監視部が、
    前記タイムアウトの発生を検出したことを前記デコーダに通知し、
    前記デコーダが、
    前記タイムアウトの発生が検出されたことを通知されたとき、前記チューナを停止させる指示を行うことを特徴とするデコード装置。
  2. 請求項1において、
    前記パケット監視部が、
    前記デコーダにより設定されたインターバル値に対応した期間をカウントするカウンタを含み、
    前記チューナからのパケットデータが入力されるごとに前記カウンタのカウント値が初期化され、
    前記期間をカウントしたときに前記デコーダに対して割り込みを発生することを特徴とするデコード装置。
  3. 受信したパケットデータに対してデコード処理を行うためのデコード装置であって、
    パケットデータが格納されるバッファと、
    入力されたパケットデータのエラーを検出してエラー情報を生成し、該エラー情報を前記パケットデータに関連付けて前記パケットデータと共に前記バッファに格納するエラー検出部と、
    前記バッファに格納されたパケットデータのエラー情報に基づいて、第1又は第2のエラーが発生したか否かを判別するエラー解析部と、
    前記エラー解析部によって判別された前記第1又は第2のエラーに応じて当該パケットデータに対してデコード処理を行うデコーダとを含むことを特徴とするデコード装置。
  4. 請求項3において、
    前記エラー解析部が、
    パケット毎に前記エラー情報をカウントしたカウント結果に基づいて第1又は第2のエラーの発生を判別することを特徴とするデコード装置。
  5. 請求項3又は4において、
    前記エラー解析部が、
    パケット毎に前記エラー情報を監視し、所与の閾値を超えたパケット数分連続してエラーが発生したとき第1のエラーの発生を検出し、前記閾値以下のパケット数分連続してエラーが発生したとき第2のエラーの発生を検出することを特徴とするデコード装置。
  6. 請求項3乃至5のいずれかにおいて、
    前記パケットデータが、TS(Transport Stream)パケットであり、
    前記第1のエラーの発生を検出したとき、画像シーケンスの先頭のピクチャを検索する処理を行い、
    第2のエラーの発生を検出したとき、当該スライスをスキップする処理を行うことを特徴とするデコード装置。
  7. 請求項3乃至6のいずれかにおいて、
    前記エラー情報が、
    RS(Read Solomon)符号エラーが発生したか否かを示す情報であることを特徴とするデコード装置。
  8. 映像データ及び音声データの少なくとも1つを再生するための情報再生装置であって、
    映像データを生成するための第1のTS(Transport Stream)パケット、音声データを生成するための第2のTSパケット、前記第1及び第2のTSパケット以外の第3のTSパケットを、トランスポートストリームから抽出する分離処理部と、
    前記第1のTSパケットが格納される第1の記憶領域と、前記第2のTSパケットが格納される第2の記憶領域と、前記第3のTSパケットが格納される第3の記憶領域とを有するメモリと、
    前記第1の記憶領域から読み出された前記第1のTSパケットに基づいて前記映像データを生成する映像デコード処理を行う映像デコーダと、
    前記第2の記憶領域から読み出された前記第2のTSパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
    前記分離処理部が、
    チューナから前記第1〜第3のTSパケットが所与の期間入力されないタイムアウトの発生を監視し、前記タイムアウトの発生を検出したことを前記映像デコーダ又は前記音声デコーダに通知し、
    前記映像デコーダ又は前記音声デコーダが、
    前記タイムアウトの発生が検出されたことを通知されたとき、前記チューナを停止させる指示を行うことを特徴とする情報再生装置。
  9. 映像データ及び音声データの少なくとも1つを再生するための情報再生装置であって、
    映像データを生成するための第1のTS(Transport Stream)パケット、音声データを生成するための第2のTSパケット、前記第1及び第2のTSパケット以外の第3のTSパケットを、トランスポートストリームから抽出する分離処理部と、
    前記第1のTSパケットが格納される第1の記憶領域と、前記第2のTSパケットが格納される第2の記憶領域と、前記第3のTSパケットが格納される第3の記憶領域とを有するメモリと、
    前記第1の記憶領域から読み出された前記第1のTSパケットに基づいて前記映像データを生成する映像デコード処理を行う映像デコーダと、
    前記第2の記憶領域から読み出された前記第2のTSパケットに基づいて前記音声データを生成する音声デコード処理を行う音声デコーダとを含み、
    前記分離処理部が、
    前記第1〜第3のTSパケットの各TSパケットのエラーを検出してエラー情報を生成し、該エラー情報を前記パケットに関連付けて前記TSパケットと共に前記メモリに格納し、
    前記映像デコーダ又は前記音声デコーダが、
    前記メモリに格納されたパケットのエラー情報に基づいて、第1又は第2のエラーが発生したか否かを判別し、前記第1又は第2のエラーに応じて当該パケットに対してデコード処理を行うことを特徴とする情報再生装置。
  10. 請求項9において、
    前記映像デコーダが、
    パケット毎に前記エラー情報を監視し、所与の閾値を超えたパケット数分連続してエラーが発生したとき第1のエラーの発生を検出し、前記閾値以下のパケット数分連続してエラーが発生したとき第2のエラーの発生を検出することを特徴とする情報再生装置。
  11. 請求項9又は10において、
    前記第1のエラーの発生を検出したとき、画像シーケンスの先頭のピクチャを検索する処理を行い、
    第2のエラーの発生を検出したとき、当該スライスをスキップする処理を行うことを特徴とする情報再生装置。
  12. 請求項8乃至11のいずれかにおいて、
    前記映像デコーダが、前記第1の記憶領域から前記第1のTSパケットを、前記音声デコーダとは独立して読み出し、該第1のTSパケットに基づいて前記映像デコード処理を行うと共に、
    前記音声デコーダが、前記第2の記憶領域から前記第2のTSパケットを、前記映像デコーダとは独立して読み出し、該第2のTSパケットに基づいて前記音声デコード処理を行うことを特徴とする情報再生装置。
  13. 請求項8乃至12のいずれかにおいて、
    前記映像データ及び音声データのうち前記映像データのみを再生するときは、前記音声デコーダの動作を停止させ、
    前記映像データ及び音声データのうち前記音声データのみを再生するときは、前記デコード装置の動作を停止させることを特徴とする情報再生装置。
  14. 請求項8乃至13のいずれか記載の情報再生装置と、
    前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含むことを特徴とする電子機器。
  15. チューナと、
    前記チューナからのトランスポートストリームが供給される請求項8乃至13のいずれか記載の情報再生装置と、
    前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含むことを特徴とする電子機器。
JP2006189502A 2006-07-10 2006-07-10 デコード装置、情報再生装置及び電子機器 Pending JP2008022053A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006189502A JP2008022053A (ja) 2006-07-10 2006-07-10 デコード装置、情報再生装置及び電子機器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006189502A JP2008022053A (ja) 2006-07-10 2006-07-10 デコード装置、情報再生装置及び電子機器

Publications (1)

Publication Number Publication Date
JP2008022053A true JP2008022053A (ja) 2008-01-31

Family

ID=39077723

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006189502A Pending JP2008022053A (ja) 2006-07-10 2006-07-10 デコード装置、情報再生装置及び電子機器

Country Status (1)

Country Link
JP (1) JP2008022053A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115297332A (zh) * 2022-10-09 2022-11-04 中诚华隆计算机技术有限公司 一种云端流媒体硬解码方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115297332A (zh) * 2022-10-09 2022-11-04 中诚华隆计算机技术有限公司 一种云端流媒体硬解码方法和装置
CN115297332B (zh) * 2022-10-09 2022-12-06 中诚华隆计算机技术有限公司 一种云端流媒体硬解码方法和装置

Similar Documents

Publication Publication Date Title
EP2520091B1 (en) Transport stream packet header compression
US7675876B2 (en) Transport demultiplexor with bit maskable filter
EP2329654B1 (en) Devices of digital video reception and output having error detection and concealment circuitry and techniques
JP4419023B2 (ja) 移動体通信端末、および、プログラム
US20050021813A1 (en) Method and system for receiving and framing packetized data
EP2961162A1 (en) Information processing apparatus, data management method, and program
JP2008502186A (ja) 無線移動装置
JP2008011404A (ja) コンテンツ処理装置及びコンテンツ処理方法
JP2003324354A (ja) 転送セルに圧縮されたビデオデータをフォーマットする方法
US20200186845A1 (en) Time Division Multiplexing Method for Decoding Hardware
JP2008042497A (ja) デコード装置、情報再生装置及び電子機器
US7526427B2 (en) System and method for reception, processing and transmission of digital audio stream
JP2008022330A (ja) 情報再生装置及び電子機器
KR20070026556A (ko) 무선 이동 디바이스
JP2007282001A (ja) デコード装置、デコード方法、情報再生装置及び電子機器
JP5032179B2 (ja) ストリーム再生装置及びメディアデータ復号方法
US6885680B1 (en) Method for synchronizing to a data stream
JP2008022053A (ja) デコード装置、情報再生装置及び電子機器
JP2007251543A (ja) 表示制御装置、その制御方法、情報再生装置及び電子機器
JP2007166598A (ja) 情報記録装置及び電子機器
JP2007166597A (ja) 情報再生装置及び電子機器
JP2009141615A (ja) 受信装置および受信方法
JP2007288566A (ja) 情報記録再生装置及び電子機器
JP2007304832A (ja) メモリアクセス制御装置、メモリアクセスシステム、情報再生装置及び電子機器
JP2008022054A (ja) 情報再生装置及び電子機器