[go: up one dir, main page]

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

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

Info

Publication number
JP2007282001A
JP2007282001A JP2006107294A JP2006107294A JP2007282001A JP 2007282001 A JP2007282001 A JP 2007282001A JP 2006107294 A JP2006107294 A JP 2006107294A JP 2006107294 A JP2006107294 A JP 2006107294A JP 2007282001 A JP2007282001 A JP 2007282001A
Authority
JP
Japan
Prior art keywords
packet
error
data
audio
decoding
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
JP2006107294A
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 JP2006107294A priority Critical patent/JP2007282001A/ja
Publication of JP2007282001A publication Critical patent/JP2007282001A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】 パケット単位でエラーを検出することで、エラー検出処理のための制御及び構成の簡素化を図るデコード装置、デコード方法、情報再生装置及び電子機器を提供する。
【解決手段】 パケットデータが多重化されたストリームデータに対してデコード処理を行うためのデコード装置10は、ストリームデータから分離された固定長のパケットデータのエラーを検出し、エラーの有無を示すエラー情報を該パケットデータに付加するエラー処理部22と、パケットデータのデコード処理を行うためのデコーダ30とを含む。デコード装置10は、パケットデータを可変長のセクションや可変長のパケットに変換することなく、エラー情報に基づいて、デコード処理又はパケットデータの廃棄を行う。
【選択図】 図1

Description

本発明は、デコード装置、デコード方法、情報再生装置及び電子機器に関する。
地上アナログ放送に替わって登場する地上デジタル放送では、画像及び音声の高品質化に加えて種々の新サービスの提供に期待が寄せられている。地上デジタル放送の導入によって新たに提供されるサービスの1つに、携帯端末向けサービスとして、いわゆる「1セグメント放送」がある。「1セグメント放送」では、QPSK(Quadrature Phase Shift Keying)変調方式で変調されたデジタル変調波をOFDM(Orthogonal Frequency Division Multiplexing)変調方式で多重化することで、携帯端末の移動時でも安定した放送受信が可能となる。
このような携帯端末の一例として、携帯電話機がある。携帯電話機に「1セグメント放送」の受信機能を付加する場合、圧縮処理後の映像データ及び音声データが多重化されたトランスポートストリームの分離処理や分離処理後のデータのデコード処理を行う。このとき、映像データのデコード処理を行う処理部と音声データのデコード処理を行う処理部との間で通信を行って、デコード処理後の映像データ及び音声データを、同期をとりながら再生する。
このようなデジタル放送を再生する技術として、例えば特許文献1には、受信不能をユーザに通知するために、トランスポートストリームからパケットを分離するトランスポートストリームDMUXの前段に誤り訂正部を設け、該誤り訂正部において検出されたエラーの頻度から受信レベルの変化を求める技術が開示されている。これにより、降雨等により受信レベルが悪化したことを認識しやすくなる。
また特許文献2には、パケット識別子毎にフィルタリングを行うデジタル放送受信装置が開示されている。より具体的には、通過させるパケットのパケット識別子又は通過させないパケットのパケット識別子をレジスタに格納するようにすることでフィルタリングの際に参照するレジスタ数を削減するフィルタリング回路を含むデジタル放送受信装置が開示されている。
特開2000−115654号公報 特開2002−320154号公報
ところで、「1セグメント放送」をはじめとする「地上デジタル放送」では、放送信号が電波信号として送信されるため、常に正常な受信信号が得られるとは限らない。そこで、データの再生装置の低コスト化や処理負荷の軽減を考慮する際に、受信信号から生成されるストリームデータのエラー検出処理をどのように扱うかが重要になっている。この際、ストリームデータのエラーが検出されたとしても、エラーが発生したパケットを特定できれば、該パケットに応じた最適なエラー処理を行うことができる。
しかしながら、特許文献1に開示された技術では、トランスポートストリームDMUXの前段でエラー検出が行われるため、トランスポートストリームを分離したパケット単位でエラーを検出することができない。そのため、ストリームデータのエラーが検出されたとしても、エラーが発生したパケットを特定できないという問題がある。
また特許文献2に開示された技術では、パケット識別子単位でフィルタリングを行うため、どのパケットでエラーが発生したかを特定することができないという問題がある。
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、パケット単位でエラーを検出することで、エラー検出処理のための制御及び構成の簡素化を図るデコード装置、デコード方法、情報再生装置及び電子機器を提供することにある。
上記課題を解決するために本発明は、
パケットデータが多重化されたストリームデータに対してデコード処理を行うためのデコード装置であって、
前記ストリームデータから分離された固定長のパケットデータのエラーを検出し、エラーの有無を示すエラー情報を該パケットデータに付加するエラー処理部と、
前記パケットデータのデコード処理を行うためのデコーダとを含み、
前記パケットデータを可変長のセクションや可変長のパケットに変換することなく、前記エラー情報に基づいて、前記デコード処理又は前記パケットデータの廃棄を行うデコード装置に関係する。
本発明によれば、ストリームデータから分離された固定長のパケットデータのエラー情報を該パケットデータに付加するようにして、パケットデータ単位でエラーの有無を判別できるようにしたので、エラーの発生したパケットデータを容易に特定することができるようになる。その結果、パケットデータを無駄に廃棄することがなくなる。更に、可変長のセクションやパケットに変換する必要がなくなるので、エラー処理の処理負荷を大幅に削減でき、エラー検出処理のための制御及び構成を簡素化できる。
また本発明に係るデコード装置では、
前記エラー情報と前記パケットデータとが格納されるバッファを含み、
前記デコーダが、前記バッファから前記エラー情報及び前記パケットデータを読み出すと共に、該エラー情報に基づいてデコード処理又はパケットデータの廃棄を行うか決定することができる。
本発明によれば、バッファから読み出したパケットデータと該パケットデータに付加されるエラー情報を参照するだけで良いので、次々に到来するストリームデータのエラー検出処理の負荷を軽減して、処理の遅延を最小限に抑えることができるようになる。
また本発明に係るデコード装置では、
パケットデータを前記バッファに書き込むのに先立って、直前のパケットデータに付加されるエラー情報を前記バッファに書き込むことができる。
本実施形態によれば、固定長のパケットデータのサイズ不足を容易に検出できるようになり、処理の遅延なく、次々と到来するストリームデータに対するエラー情報の付加処理を継続できる。
また本発明に係るデコード装置では、
前記エラー処理部が、
前記パケットデータを前記バッファに書き込むための書き込み要求中に該バッファへの別の書き込み要求が発生したことを示すエラー情報を前記パケットデータに付加することができる。
本発明によれば、パケットデータをバッファに書き込むための書き込み要求中に該バッファへの別の書き込み要求が発生したパケットデータか否かを示すことができる。これにより、バッファに格納されるパケットデータの内容が不完全な場合にまで敢えてパケットデータを解析する必要はなく、次に到来するパケットデータを待つ方が、正常なデコード処理を行うことができる可能性が高くなり、制御の簡素を図ることができる。
また本発明に係るデコード装置では、
前記エラー情報は、
該エラー情報が付加されるパケットデータに先立って読み出されるように前記バッファの記憶領域に格納されてもよい。
本発明によれば、エラー情報を読み出してエラーの有無を判別してからパケットデータをバッファから読み出すことができるようになるので、バッファに格納されたパケットデータのエラー検出処理を簡素化できる。
また本発明に係るデコード装置では、
前記パケットデータが、TS(Transport Stream)パケットであり、
前記TSパケットを可変長のセクションやPES(Packetized Elementary Stream)パケットに変換することなく、前記エラー情報に基づいて、前記デコード処理又は前記TSパケットの廃棄を行うことができる。
また本発明に係るデコード装置では、
前記エラー処理部が、
PMT(Program Map Table)のデータ構造におけるtable_id、section_syntax_indicator、current_next_indicator、section_numberのうち少なくとも1つのエラーを検出し、エラーの有無を示すエラー情報を該パケットデータに付加することができる。
本発明によれば、可変長のセクションやパケットに変換することなく、PMTのエラー検出処理を行うことができ、処理負荷を大幅に削減でき、エラー検出処理のための制御及び構成を簡素化できる。
また本発明に係るデコード装置では、
前記エラー処理部が、
PAT(Program Association Table)又はNIT(Network Information Table)のエラーを検出し、エラーの有無を示すエラー情報を前記パケットデータに付加することができる。
また本発明に係るデコード装置では、
前記エラー情報に基づいて、PMT、PAT又はNITのエラーが検出されたパケットデータは廃棄されてもよい。
上記のいずれかの発明によれば、可変長のセクションやパケットに変換することなく、PMT、PAT又はNITのエラー検出処理を行うことができ、処理負荷を大幅に削減でき、エラー検出処理のための制御及び構成を簡素化できる。
また本発明は、
パケットデータが多重化されたストリームデータに対してデコード処理を行うためのデコード方法であって、
前記ストリームデータから分離された固定長のパケットデータのエラーを検出し、
エラーの有無を示すエラー情報を該パケットデータに付加し、
前記パケットデータを可変長のセクションや可変長のパケットに変換することなく、前記エラー情報に基づいて、前記パケットデータのデコード処理を行うか、前記パケットデータの廃棄を行うかを決定し、
前記エラー情報に基づいて前記パケットデータのデコード処理を行うことが決定されたとき、該デコード処理を行うデコード方法に関係する。
また本発明は、
映像データ及び音声データの少なくとも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パケットに付加し、
各TSパケットを可変長のセクションやPES(Packetized Elementary Stream)パケットに変換することなく、前記エラー情報に基づいて、前記映像デコード処理、前記音声デコード処理又はTSパケットの廃棄を行う情報再生装置に関係する。
本発明によれば、TSから分離された固定長のTSパケットのエラー情報を該TSパケットに付加するようにして、パケット単位でエラーの有無を判別できるようにしたので、エラーの発生したTSパケットを容易に特定することができるようになる。その結果、TSパケットを無駄に廃棄することがなくなる。更に、可変長のセクションやパケットに変換する必要がなくなるので、エラー処理の処理負荷を大幅に削減でき、エラー検出処理のための制御及び構成を簡素化できる。
また本発明に係る情報再生装置では、
前記映像デコーダが、前記第1の記憶領域から前記第1のTSパケットを、前記音声デコーダとは独立して読み出し、該第1のTSパケットに基づいて前記映像デコード処理を行うと共に、
前記音声デコーダが、前記第2の記憶領域から前記第2のTSパケットを、前記映像デコーダとは独立して読み出し、該第2のTSパケットに基づいて前記音声デコード処理を行うことができる。
本発明によれば、上記の効果に加えて、処理能力の低い処理回路を用いて低消費電力で、処理負荷の重いデコード処理を実現する情報再生装置を提供できる。
また本発明に係る情報再生装置では、
前記映像データ及び音声データのうち前記映像データのみを再生するときは、前記音声デコーダの動作を停止させ、
前記映像データ及び音声データのうち前記音声データのみを再生するときは、前記デコード装置の動作を停止させることができる。
本発明によれば、情報再生装置のより一層の低消費電力化を実現できる。
また本発明は、
上記のいずれか記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含む電子機器に関係する。
また本発明は、
チューナと、
前記チューナからのトランスポートストリームが供給される上記のいずれか記載の情報再生装置と、
前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含む電子機器に関係する。
上記のいずれかの発明によれば、処理負荷の重い1セグメント放送の再生処理を低消費電力で実現できる電子機器を提供できる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
1. デコード装置
図1に、本実施形態におけるデコード装置の構成例のブロック図を示す。
本実施形態におけるデコード装置10には、デジタルチューナ(広義にはチューナ)50からのトランスポートストリーム(Transport Stream:以下、TS)が入力される。このTSは、TSパケット(広義にはパケットデータ)が多重化されたストリームデータであり、例えばMPEG−2システム(ISO/IEC 13818-1)で規定されている。そして、デコード装置10は、このTSに対してデコード処理を行う。より具体的には、デコード装置10は、TSから抽出されるTSパケットに対してデコード処理を行う。デコード処理後のデータは、例えば図示しない表示部に転送されて画像として表示されたり、或いは図示しないスピーカに出力されて音声として出力されたりする。
デコード装置10は、分離処理部20と、デコーダ30と含むことができる。分離処理部20は、TSからTSパケットを分離する処理を行う。より具体的には、分離処理部20は、ホスト60の設定内容に基づき、TSからTSパケットを分離する処理を行う。デコーダ30は、分離処理部20によって分離されたTSパケットに対してデコード処理を行う。
このような分離処理部20は、エラー処理部22と、パケット分離部24とを含む。エラー処理部22は、TSから分離された固定長のTSパケット(広義にはパケットデータ)のエラーを検出し、該TSパケットのエラーの有無を示すエラー情報をTSパケットに付加する処理を行う。パケット分離部24は、TSからTSパケットを分離し、エラー処理部22からのエラー情報を付加したパケットを、デコード装置10が内蔵するバッファ40に格納する。即ち、バッファ40には、分離処理部20によってTSから分離されたTSパケットのみがバッファリングされるのではなく、TSパケットと該TSパケットのエラー情報とがバッファリングされる。なお、エラー情報をTSパケットに付加する処理は、エラー処理部22が行ってもよいし、パケット分離部24が行ってもよい。
そして、デコーダ30が、バッファ40からエラー情報及びTSパケットを読み出すと共に、該エラー情報に基づいてデコード処理又はTSパケットの廃棄を行うか決定することができる。例えばデコーダ30は、パケットの廃棄を決定したとき、その廃棄処理をホスト60に任せることができる。
パケット分離部24は、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パケットが、各記憶領域に格納される。
デコード装置10の外部に設けられたホスト60は、バッファ40から読み出したTSパケットに基づいて、PMT、NIT、文字/字幕情報、BML、PSI/SIを解析する。例えばホスト60は、PMTを解析して、映像用TSパケットや音声用TSパケットのパケット識別子(Packet Identifier:PID)を解析し、ホスト60は分離処理部20にPIDを通知する。これを受けた分離処理部20のパケット分離部24は、ホスト60によって設定されたPIDを参照して、デジタルチューナ50からのTSから、上述のように各TSパケットを分離する処理を行う。このとき、ホスト60は、バッファ40の各記憶領域に格納されたTSパケットに付加されたエラー情報を参照することで、所定のエラー処理を行うことができる。エラー処理としては、例えばTSパケットを廃棄したり、所与のエラーコンシールメント(Error Concealment)により、エラーの発生したTSパケットを修復し、修復後のTSパケットを用いてデコード処理を継続したりする。
デコーダ30は、バッファ40に格納された映像用TSパケット及び音声用TSパケットの少なくとも1つを読み出して、TSヘッダを解析してPES(Packet Elementary Stream)パケットを生成し、該PESパケットのPESヘッダを解析して、PESヘッダを削除後のES(Elementary Stream)データをバッファ40に書き戻す。このとき、デコーダ30は、バッファ40から読み出した映像用TSパケット又は音声用TSパケットに付加されたエラー情報を参照することで、所定のエラー処理を行うことができる。ここでもエラー処理としては、例えばTSパケットを廃棄したり、所与のエラーコンシールメント(Error Concealment)により、エラーの発生したTSパケットを修復し、修復後のTSパケットを用いてデコード処理を継続したりする。
デコーダ30は、バッファ40からESデータを読み出し、該ESデータに対してデコード処理を行う。
なお、図1において、デコード装置10の外部にホスト60及びデジタルチューナ50が設けられているが、ホスト60及びデジタルチューナ50の少なくとも1つをデコード装置10の内部に設けてもよい。或いは、図1において、分離処理部20、デコーダ30及びバッファ40の少なくとも1つを、デコード装置10の外部に設けてもよい。
以上のような構成を有する本実施形態によれば、TSパケット毎にエラーの発生を検出することができるので、可変長のセクションや可変長のパケットに変換することなくデコード処理を行うことができる。これにより、エラーの発生したTSパケットを特定することができ、エラー処理の結果、無駄にパケットを廃棄する事態を回避できるようになる。しかも、可変長のパケットに変換する必要がなくなるので、エラー処理の負荷を大幅に軽減でき、エラー処理の制御も簡素化できるようになる。
図2に、本実施形態においてTSパケットに付加されるエラー情報の説明図を示す。
分離処理部20のパケット分離部24は、デジタルチューナ50からのTSからTSパケットを分離する。パケット分離部24によって分離されるTSパケットは、188バイト長を有する固定長パケットである。エラー処理部22は、予め決められた種類のエラーの検出処理をTSパケットに対して行い、その検出処理結果を4バイト長のエラー情報として生成する。該エラー情報を受けたパケット分離部24は、4バイトのエラー情報をエラーの検出処理対象の188バイトのTSパケットに付加した192バイト長のパケットデータを、バッファ40に格納する処理を行う。
図3に、図2のエラー情報の詳細な説明図を示す。
本実施形態におけるエラー情報は、4バイト(=32ビット)のうち予め決められたビットに、エラー検出処理結果としてエラーの有無を示すエラーステータスが設定される。図3においては、第29ビット〜第24ビット、第19ビット〜第16ビットにエラーステータスが設定される。
図4に、図3のエラーステータスの内容の一例の説明図を示す。
エラー情報の第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ビットには、デジタルチューナ50からの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(パケット分離部24)のバッファ40への書き込み要求中に、バッファ40に別の書き込み要求が発生したか否かを示すエラーステータスが設定される。即ち、エラー処理部22が、パケットデータをバッファ40に書き込むための書き込み要求中に該バッファ40への別の書き込み要求が発生したことを示すエラー情報をパケットデータに付加するということができる。分離処理部20(パケット分離部24)がTSパケット及びエラー情報をバッファ40に書き込みを行っている最中に、例えばデコーダ30がバッファ40に対して書き込み要求を行ったときに、「1」が設定される。これは、次々到来するTSを処理する場合に、各部の処理が追いつかずに、2つの書き込み要求を受けたバッファ40への書き込みデータが完全なものであることを保証できないことを示し、TSパケットのデコード処理を継続するか否かの判断は後段に任せるためにエラーステータスが「1」に設定される。
例えば第16ビット、第17ビット、第18ビット、及び第19ビットのうち少なくとも1つが「1」の場合、当該エラーステータスを含むエラー情報が付加されたTSパケットを廃棄することが望ましい。これは、PMTを解析するホスト60によって、分離処理部20で分離されるTSパケットが決定されるため、PMTの内容が不完全な場合にまで敢えてPMTを解析する必要はなく、TSパケットを廃棄して次に到来するPMTを待つ方が、正常なTSパケットで再生できる可能性が高くなり、制御の簡素を図ることができるからである。
なお、図4に示すすべてのエラーステータスを検出する必要はなく、PMTのデータ構造におけるtable_id、section_syntax_indicator、current_next_indicator、section_numberのうち少なくとも1つのエラーを検出し、エラーの有無を示すエラー情報を該パケットデータに付加してもよい。
ところで、エラー処理部22において生成されるエラー情報は、該エラー情報が付加されるパケットデータに先立って読み出されるようにバッファ40の記憶領域に格納されることが望ましい。
図5に、本実施形態におけるエラー情報及びTSパケットのバッファ40の格納状況の説明図を示す。
バッファ40にアドレス値が割り振られており、該アドレス値によってTSパケットが格納される各記憶領域が特定されるようになっている。ここで、例えばデコーダ30が、アドレス値の小さい記憶領域からアドレス値の大きい記憶領域まで順番にTSパケット及びエラー情報を読み出すものとする。
このとき本実施形態におけるエラー情報をアドレス値の小さい0番地の記憶領域に格納し、該エラー情報を付加するTSパケットをアドレス値の大きい1番地〜47番地の記憶領域に格納することが望ましい。このように、TSパケット毎に、該TSパケットの記憶領域よりもアドレス値の記憶領域にエラー情報を格納することで、例えばデコーダ30又はホスト60は、まずエラー情報を読み出してエラーの判別をすればよい。例えばTSパケットを廃棄することを決定した場合、その後のアドレス値の大きい記憶領域に格納されるTSパケットを読み出すことなく、次のTSパケットのエラー情報を読み出す処理を行えばよい。
図6に、本実施形態におけるエラー情報の付加のタイミングの一例を示す。
デジタルチューナ50からは204バイトの伝送TSP(Transport Stream Packet)がデコード装置10に入力される。伝送TSPは、188バイト長のTSパケットと16バイト長のRS符号のパリティビットとが多重化されたストリームデータである。
例えば時刻TG1に、デコード装置10に伝送TSPが入力されたとき、エラー処理部22は、エラー検出処理を開始する。また、パケット分離部24も、ホスト60によって設定されたPIDに対応したTSパケットを分離する処理を開始し、時刻TG2以降、分離したTSパケットをバッファ40に格納する処理を行う。
そして、次の伝送TSが時刻TG10に入力されたとき、時刻TG1に開始したエラー検出処理結果であるエラー情報を、図5に示したように、TSパケットより読み出し順序が先になるようにバッファ40に格納する。即ち、時刻TG10で開始される分離処理の結果得られたパケットデータをバッファ40に書き込むのに先立って、直前のパケットデータに付加されるエラー情報をバッファ40に書き込む。こうすることで、図4に示すTSパケットサイズ不足を容易に検出し、且つ処理の遅延なく、次々と到来する伝送TSPに対するエラー情報の付加処理を継続できる。
これ以降、同様にTSパケット及びエラー情報の格納処理が行われる。このとき、図1に示すように、バッファ40には、PMTを設定するためのTSパケット、NITを設定するためのTSパケット、文字/字幕情報を表示するためのTSパケット、BMLを表示するためのTSパケット、PSI/SIを設定するためのTSパケット、映像用TSパケット、音声用TSパケットが、各記憶領域に格納される。
次に、このように検出されたエラー情報を参照するホスト60及びデコーダ30の処理例について説明する。
図7に、本実施形態におけるホスト60のエラー処理の一例のフロー図を示す。
ホスト60は、図示しないメモリに格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図7に示す処理を行うことができるようになっている。
まず、ホスト60は、バッファ40からPMTを設定するためのTSパケットを1パケット分読み出して、取得する(ステップS10)。このとき、ホスト60は、エラー情報及びTSパケットを読み出す。そして、図3及び図4に示すように、第16ビット〜第19ビット(或いは第26ビットも含めて)のいずれかのエラーステータスが「1」であるか否かを判別する(ステップS11)。
ステップS11において、上述のいずれのエラーステータスも「0」であることが判別されたとき(ステップS11:Y)、TSパケットのヘッダであるTSヘッダのパケットユニット開始表示(Packet Unit Start Indicator:以下、PUSI)が「1」であるか否かを判別する(ステップS12)。複数のペイロードを連結することでセクションが生成される場合に、PUSIが「1」のパケットのペイロードがそのセクションの先頭のパケットであることを示す。
ステップS12において、PUSIが「1」であることが検出されたとき(ステップS12:Y)、ホスト60はTSヘッダを削除する処理を行い(ステップS13)、ヘッダ削除後のデータを、図示しないメモリのセクションメモリエリア内に保存する(ステップS14)。
そして、1つのセクションを取得したと判別されたとき(ステップS15:Y)、一連の処理を終了する(エンド)。
ステップS11において上述のいずれかのエラーステータスが「1」であることが検出されたとき(ステップS11:N)、ステップS12においてPUSIが「0」であることが検出されたとき(ステップS12:N)、或いはステップS15において1つのセクションを取得していないと判別されたとき(ステップS15:N)、バッファ40のリードポインタを更新する処理を行い(ステップS16)、ステップS10に戻る。
なお、図7では、ホスト60が、エラー情報及びTSパケットを同時に読み出すものとして説明したが、エラー情報を読み出してエラーが検出されなかったことを条件に、該エラー情報が付加されるTSパケットを読み出してもよい。ただ、図7のようにエラー情報及びTSパケットを同時に読み出した場合であっても、図5のようにエラー情報が格納されているため、リードポインタの更新処理が簡素化されるという効果が得られる。
以上のように、ホスト60は、セクションを取得すると、該セクションを解析した結果として、映像用TSパケットや音声用TSパケットのPIDを抽出し、該PIDを分離処理部20に設定する処理を行う。また、ホスト60は、図3及び図4に示すように、第16ビット〜第19ビット(或いは第26ビットも含めて)のいずれかのエラーステータスが「1」であることが検出されたとき、バッファ40のリードポインタを更新する。即ち、バッファ40に格納された当該TSパケットを廃棄する処理を行う。
図8に、本実施形態におけるデコーダ30のエラー処理の一例のフロー図を示す。
デコーダ30は、図示しないメモリに格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図8に示す処理を行うことができるようになっている。
デコーダ30は、エラー情報に基づいてエラーの発生が検出された回数を示すエラーカウントを保持するようになっており、該エラーカウントを初期化する処理を行う(ステップS20)。次に、デコーダ30は、バッファ40からTSパケットを読み出す(ステップS21)。このとき、デコーダ30は、エラー情報及びTSパケットを読み出す。
そして、図4のエラーステータスのうち、第24ビット、第25ビット、第27ビット、第28ビット、第29ビットのいずれもが「0」であるか否かを判別する(ステップS22)。そして、エラーステータスのいずれもが「0」であることが検出されたとき(ステップS22:Y)、所与の映像デコード処理又は音声デコード処理を行い(ステップS23)、一連の処理を終了する(エンド)。
ステップS22において、上述のエラーステータスのいずれかが「1」であることが検出されたとき(ステップS22:N)、エラーカウントをインクリメントする(ステップS24)。インクリメント後のエラーカウントが所与の閾値以上であるか否かを判別し(ステップS25)、該エラーカウントが閾値以上であることが検出されたとき(ステップS26:Y)、デコーダ30はホスト60にエラーの発生をコマンドで通知し(ステップS26)、ステップS20に戻る。例えばエラーステータスの種類毎にエラーカウントをインクリメントすることで、コマンドを受けたホスト60は、発生したエラーに応じたエラー処理を行うことができる。例えばチューナエラーが頻発する場合は、その旨を表示したり、チューナを初期化したり、TSパケットを廃棄したりできる。
ステップS25において、インクリメント後のエラーカウントが所与の閾値以上ではないことが検出されたとき(ステップS25:N)、ステップS21に戻る。
なお、図8では、デコーダ30が、エラー情報及びTSパケットを同時に読み出すものとして説明したが、エラー情報を読み出してエラーが検出されなかったことを条件に、該エラー情報が付加されるTSパケットを読み出してもよい。
以上のように、デコーダ30は、エラーが検出されたときデコード処理を行わず、エラーカウントが閾値以上になったときホスト60にエラー処理を任せることができる。従って、TSパケットを可変長のセクションや可変長のPES(Packetized Elementary Stream)パケットに変換することなく、エラーの発生を検出でき、デコード処理又はTSパケットの廃棄を行わせることが可能となる。
1.1 変形例
なお、本実施形態では、PMTのエラーを検出するものとして説明したが、これに限定されるものではなく、図9に示すようなパケットについてエラーを検出し、そのエラー情報をTSパケットに付加することができる。
ここでは、図9のパケットのうち、NITパケットのエラーを検出する場合について説明する。
図10に、本実施形態におけるエラーステータスの他の例を示す。
例えばエラー情報の所定のビットには、NITのtable_idエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがNITパケットの場合に、NITパケットのデータ構造で規定されるtable_idが0x40でないときに、table_idエラーが発生したと判断されて「1」が設定される。
また、エラー情報の所定のビットには、NITのsection_syntax_indicatorエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがNITパケットの場合に、NITパケットのデータ構造で規定されるsection_syntax_indicatorが0x01でないときに、section_syntax_indicatorエラーが発生したと判断されて「1」が設定される。
或いはエラー情報の所定のビットには、NITのnetwork_idエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがNITパケットの場合に、NITパケットのデータ構造で規定されるnetwork_idがPATから得られたTS_idと同一値でないときに、network_idエラーが発生したと判断されて「1」が設定される。
或いはまた、エラー情報の所定のビットには、NITのcurrent_next_indicatorエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがNITパケットの場合に、NITパケットのデータ構造で規定されるcurrent_next_indicatorが0x01でないときに、current_next_indicatorエラーが発生したと判断されて「1」が設定される。
更には、エラー情報の所定のビットには、NITのsection_numberエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがNITパケットの場合に、NITパケットのデータ構造で規定されるsection_numberが、NITにおけるlast_section_number以下のときに、section_numberエラーが発生したと判断されて「1」が設定される。
図11に、本実施形態の変形例におけるホスト60のエラー処理の一例のフロー図を示す。
図11では、NITのエラー情報に基づくエラー処理の例を示している。
ホスト60は、図示しないメモリに格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図11に示す処理を行うことができるようになっている。
まず、ホスト60は、バッファ40からNITを設定するためのTSパケットを1パケット分読み出して、取得する(ステップS30)。このとき、ホスト60は、エラー情報及びTSパケットを読み出す。そして、図10に示すいずれかのエラーステータスが「1」であるか否かを判別する(ステップS31)。
ステップS31において、上述のいずれのエラーステータスも「0」であることが判別されたとき(ステップS31:Y)、TSパケットのヘッダであるTSヘッダのPUSIが「1」であるか否かを判別する(ステップS32)。
ステップS32において、PUSIが「1」であることが検出されたとき(ステップS32:Y)、ホスト60はTSヘッダを削除する処理を行い(ステップS33)、ヘッダ削除後のデータを、図示しないメモリのセクションメモリエリア内に保存する(ステップS34)。
そして、1つのセクションを取得したと判別されたとき(ステップS35:Y)、一連の処理を終了する(エンド)。
ステップS31において上述のいずれかのエラーステータスが「1」であることが検出されたとき(ステップS31:N)、ステップS32においてPUSIが「0」であることが検出されたとき(ステップS32:N)、或いはステップS35において1つのセクションを取得していないと判別されたとき(ステップS35:N)、バッファ40のリードポインタを更新する処理を行い(ステップS36)、ステップS30に戻る。
なお、図11では、ホスト60が、エラー情報及びTSパケットを同時に読み出すものとして説明したが、エラー情報を読み出してエラーが検出されなかったことを条件に、該エラー情報が付加されるTSパケットを読み出してもよい。ただ、図11のようにエラー情報及びTSパケットを同時に読み出した場合であっても、図5のようにエラー情報が格納されているため、リードポインタの更新処理が簡素化される効果が得られる。
以上のように、ホスト60は、セクションを取得すると、該セクションを解析した結果として、映像用TSパケットや音声用TSパケットのPIDを抽出し、該PIDを分離処理部20に設定する処理を行う。また、ホスト60は、図10に示すいずれかのエラーステータスが「1」であることが検出されたとき、バッファ40のリードポインタを更新する。即ち、バッファ40に格納された当該TSパケットを廃棄する処理を行う。
本変形例において、デコーダ30のエラー処理は本実施形態と同様であるため、説明を省略する。
なお、本変形例におけるNITのエラー情報の付加を、本実施形態におけるPMTのエラー情報の付加に代えて、或いは加えてもよい。
図12に、本実施形態の他の変形例におけるエラーステータスの例を示す。
例えばエラー情報の所定のビットには、PATのtable_idエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがPATパケットの場合に、PATパケットのデータ構造で規定されるtable_idが0x00でないときに、table_idエラーが発生したと判断されて「1」が設定される。
また、エラー情報の所定のビットには、PATのsection_syntax_indicatorエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがPATパケットの場合に、PATパケットのデータ構造で規定されるsection_syntax_indicatorが0x01でないときに、section_syntax_indicatorエラーが発生したと判断されて「1」が設定される。
或いは、エラー情報の所定のビットには、PATのcurrent_next_indicatorエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがPATパケットの場合に、PATパケットのデータ構造で規定されるcurrent_next_indicatorが0x01でないときに、current_next_indicatorエラーが発生したと判断されて「1」が設定される。
更には、エラー情報の所定のビットには、PATのsection_numberエラーの有無を示すエラーステータスが設定される。より具体的には、TSパケットがPATパケットの場合に、PATパケットのデータ構造で規定されるsection_numberが0x00ではないときに、section_numberエラーが発生したと判断されて「1」が設定される。
ホスト60のエラー処理は、PATの場合もNITの場合も同様であるため、詳細な説明を省略する。また、デコーダ30のエラー処理もまた、図8と同様であるため、詳細な説明を省略する。
以上のように、本変形例によれば、PAT又はNITのエラーを検出し、エラーの有無を示すエラー情報をパケットデータに付加することができる。なお、本変形例におけるNIT及びPATのエラー情報の付加を、本実施形態におけるPMTのエラー情報の付加に代えて、或いは加えて行ってもよい。そして、エラー情報に基づいて、PMT、PAT又はNITのエラーが検出されたパケットデータは廃棄されることが望ましい。
以上説明したように、本実施形態又はその変形例におけるデコード装置によれば、パケット単位にエラーを検出してバッファリングされるので、エラーの発生したパケットを特定でき、無駄なTSパケットの廃棄を行うことなくエラー検出処理のための制御及び構成の簡素化できる。
2. 情報再生装置
次に、本実施形態又はその変形例における上述のデコード装置が適用される情報再生装置について説明する。本実施形態における情報再生装置は、地上デジタル放送の再生を行うことができる。
2.1 1セグメント放送の概要
地上アナログ放送に代わって登場する地上デジタル放送では、画像及び音声の高品質化に加えて種々の新サービスの提供に期待が寄せられている。
図13に、地上デジタル放送のセグメントの概念の説明図を示す。
地上デジタル放送では、予め割り当てられた周波数帯域を14個のセグメントに分割し、そのうちの13個のセグメントSEG1〜SEG13を使って放送が行われる。残り1個のセグメントは、ガードバンドとして用いられる。そして、放送を行うための13個のセグメントのうちの1個のセグメントSEGmが、携帯端末向けの放送の周波数帯域に割り当てられる。
1セグメント放送では、それぞれが符号化(圧縮処理)された映像データ、音声データ、その他のデータ(制御データ)が多重化されたトランスポートストリーム(Transport Stream:TS)が伝送される。より具体的には、TSの各パケットにリードソロモン符号の誤り訂正用符号が付加された後、階層分割され、各階層において畳み込み符号化やキャリア変調が施される。そして、階層合成後に、周波数インターリーブ、時間インターリーブが行われ、受信側に必要なパイロット信号を付加してOFDMセグメントフレームが形成される。このOFDMセグメントフレームに対し、逆フーリエ変換演算が施されてOFDM信号として伝送される。
図14に、TSの説明図を示す。
TSは、図14に示すように複数のTSパケット列で構成されている。各TSパケットの長さは、188バイトに固定されている。各TSパケットは、4バイトのTSヘッダ(TS Header:TSH)と呼ばれるヘッダ情報が付加されており、TSパケットの識別子となるPID(Packet Identifier)を含む。1セグメント放送の番組は、PIDにより特定される。
TSパケットは、アダプテーションフィールドを含み、映像データ、音声データ等の同期再生の基準となる時刻情報であるPCR(Program Clock Reference)やダミーデータが埋め込まれる。ペイロードは、PES(Packetized Elementary Stream)パケットやセクションを生成するためのデータを含む。
図15に、PESパケット及びセクションの説明図を示す。
PESパケット及びセクションのそれぞれは、1又は複数のTSパケットの各TSパケットのペイロードにより構成される。PESパケットは、PESヘッダとペイロードとを含み、該ペイロードには、映像データ、音声データ又は字幕データがES(Elementary Stream)データとして設定される。セクションには、PESパケットに設定される映像データ等の番組情報等が設定される。
従って、TSを受信すると、まずセクションに含まれる番組情報を解析し、放送される番組に対応するPIDを特定する必要がある。そして、該PIDに対応する映像データ、音声データをTSから抽出し、抽出後の映像データ、音声データを再生することになる。
2.2 携帯端末
1セグメント放送の受信機能を有する携帯端末では、上記のようなパケットの解析等の処理が必要となる。即ち、このような携帯端末では、高い処理能力が要求される。そのため、携帯端末(広義には電子機器)としての従来の携帯電話機に、1セグメント放送の受信機能を付加する場合には、高い処理能力を有するプロセッサ等を更に追加する必要がある。
図16に、本実施形態の比較例におけるマルチメディア処理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を常に動作させる必要があり、消費電力の増大を招く。
そこで、本実施形態では、映像データのデコード処理を行う映像デコーダと音声データのデコード処理を行う音声デコーダとを独立して設け、それぞれ独立にデコード処理を行わせることで、それぞれの処理能力として低いものを採用できる。更に、映像デコーダ及び音声データの一方の動作を適宜停止させて柔軟に低消費電力化を図ることができる。
更には、映像デコーダ及び音声デコーダを並列動作させることができるため、各デコーダの処理能力を低くて済み、より低消費電力化及び低コスト化を実現できる。
図17に、本実施形態における情報再生装置を含む携帯電話機の構成例のブロック図を示す。なお図17において、図16と同一部分には同一符号を付し、適宜説明を省略する。
携帯電話機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は、図16の電話用CPU920の機能を有すると共に、画像処理IC200を制御する機能を有する。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、図16の電話用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 情報再生装置
図18に、本実施形態の情報再生装置としての図17の画像処理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パケットに付加し、各TSパケットを可変長のセクションやPES(Packetized Elementary Stream)パケットに変換することなく、エラー情報に基づいて、映像デコード処理、音声デコード処理又はTSパケットの廃棄を行うことができる。このTSパケットの廃棄は、画像処理IC200からホストCPU110に通知して行ってもよい。
映像デコーダ230は、メモリ220の記憶領域のうち映像用TSパケット専用に設けられた記憶領域から映像用TSパケットを読み出し、該映像用TSパケットに基づいて映像データを生成する映像デコード処理を行うと共に、映像データと音声データを同期して再生するための基準タイミングを生成する。
音声デコーダ240は、メモリ220の記憶領域のうち音声用TSパケット専用に設けられた記憶領域から音声用TSパケットを読み出し、該音声用TSパケットに基づいて音声データを生成する音声デコード処理を行う。
映像デコーダ230及び音声デコーダ240の少なくとも一方は、デコーダ30の機能を有する。
表示制御部250は、メモリ220から読み出された映像データにより表される画像の向きを回転させる回転処理や該画像のサイズを縮小又は拡大させるリサイズ処理を行う。回転処理後のデータやリサイズ処理後のデータは、ドライバI/F280に供給される。表示制御部250は、表示タイミングに合わせて、処理後のデータをドライバI/F280に転送する制御を行う。
チューナI/F260は、チューナ940とのインタフェース処理を行う。より具体的には、チューナI/F260は、チューナ940からのTSを受信する制御を行う。チューナI/F260は、TS分離部210に接続される。チューナI/F260に接続されるチューナ940が、図1のデジタルチューナ50に相当する。
ホストI/F270は、ホストCPU110とのインタフェース処理を行う。より具体的には、ホストI/F270は、ホストCPU110との間のデータの送受信の制御を行う。ホストI/F270は、TS分離部210、メモリ220、表示制御部250、オーディオI/F290に接続される。ホストI/F270に接続されるホストCPU110が、図1のホスト60の機能を実現する。
ドライバI/F280は、表示制御部250を介してメモリ220から所定の周期で映像データを読み出し、該映像データを表示ドライバ140に対して供給する。ドライバI/F280は、表示ドライバ140に対して映像データを送信するためのインタフェース処理を行う。
オーディオI/F290は、メモリ220から所定の周期で音声データを読み出し、該音声データをDAC150に対して供給する。オーディオI/F290は、DAC150に対して音声データを送信するためのインタフェース処理を行う。
このような画像処理IC200では、TS分離部210により、チューナ940からのTSからTSパケットが抽出される。TSパケットは、共有メモリとしてのメモリ220の予め割り当てられた記憶領域に格納される。そして、映像デコーダ230及び音声デコーダ240が、それぞれメモリ220に割り当てられた専用の記憶領域からTSパケットを読み出して、映像データ及び音声データを生成し、互いに同期した映像データ及び音声データを表示ドライバ140及びDAC150に対して供給することができる。
図19に、図18の画像処理IC200の動作説明図を示す。
図19において、図18と同一部分には同一符号を付し、適宜説明を省略する。
メモリ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に多重化された映像データ又は音声データを再生する場合の動作について説明する。
図20に、ホストCPU110による再生処理の動作例のフロー図を示す。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図20に示す処理を行うことができるようになっている。
まずホスト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 放送受信開始処理
続いて、図20に示す放送受信開始処理の処理例について説明する。ここでは、映像及び音声の再生を行う場合について説明する。
図21に、図20の放送受信開始処理の動作例のフロー図を示す。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図21に示す処理を行うことができるようになっている。
まずホスト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に格納していく。
図22に、図18及び図19の画像処理IC200の放送受信開始処理における動作説明図を示す。図22において、図18又は図19と同一部分には同一符号を付し、適宜説明を省略する。
なお図22において、第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は、図7又は図11に示す処理を行って、エラー情報に基づいて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 放送受信終了処理
次に、図20に示す放送受信終了処理の動作例について説明する。ここでは、映像及び音声の再生を行う場合について説明する。
図23に、図20の放送受信終了処理の処理例のフロー図を示す。ホストCPU110は、RAM120又はROM130に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図23に示す処理を行うことができるようになっている。
まずホストCPU110は、画像処理IC200の映像デコーダ230、音声デコーダ240を停止させる(ステップS120)。これは、ホストCPU110から画像処理IC200に対しコマンドを発行し、画像処理IC200が該制御コマンドのデコード結果を用いて映像デコーダ230、音声デコーダ240を停止させる。
その後、ホストCPU110は、同様にTS分離部210を停止させる(ステップS121)。そして、ホストCPU110は、チューナ940を停止させる(ステップS122)。
図24に、図18及び図19の画像処理IC200の放送受信終了処理における動作説明図を示す。図24において、図22と同一部分には同一符号を付し、適宜説明を省略する。
まずホストCPU110が、表示制御部250の動作を停止させる制御を行い、表示ドライバ140への映像データの供給を停止させる(SQ10)。次に、ホストCPU110が、映像デコーダ230及び音声デコーダ240の動作を停止させ(SQ11)、その後TS分離部210、チューナ940の順に動作を停止させていく(SQ12、SQ13)。
2.3.4 再生処理
2.3.4.1 映像データの再生処理
次に、映像データの再生処理を行う映像デコーダ230の動作例について説明する。
図25に、映像デコード処理時に行われる映像デコーダ230のメモリのアクセス動作例のフロー図を示す。この処理は、例えば図8のステップS23のデコード処理において行われる。
まず、映像デコーダ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パケットを読み出し、図21のステップ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に書き込まれる。
図26に、図18及び図19の画像処理IC200の映像デコーダの動作説明図を示す。図26において、図22と同一部分には同一符号を付し、適宜説明を省略する。
なお図26において、第7の記憶領域AR7を第4の記憶領域AR4と共用化し、第8の記憶領域AR8を第5の記憶領域AR5と共用化している。また、PSI/SI、NIT、PMTは、第3の記憶領域AR3内の所定の記憶領域に格納されるものとする。
まず図21に示すようにホスト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の規格に従ったデコード処理を行う。図26では、デコード処理後の映像データが表示制御部250に直接供給されている(SQ26)が、例えばデコード処理後の映像データを、一旦、メモリ220の所定の記憶領域に書き戻し、その後、音声データの出力タイミングと同期を取りながら表示制御部250に供給することが望ましい。
こうして表示制御部250に供給された映像データに基づいて、表示ドライバ140が表示パネルを駆動する(SQ27)。
2.3.4.2 音声データの再生処理
続いて、音声データの再生処理を行う音声デコーダ240の動作例について説明する。
図27に、音声デコード処理時に行われる音声デコーダ240のメモリのアクセス動作例のフロー図を示す。この処理は、例えば図8のステップS23のデコード処理において行われる。
まず、音声デコーダ240は、ホストCPU110によって起動されると、例えばメモリ220の所定の記憶領域に格納されたプログラムを読み出し、該プログラムに対応した処理を実行することで図27に示す処理を行うことができるようになっている。即ち、音声デコーダ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パケットを読み出し、図21のステップ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に書き込まれる。
図28に、図18及び図19の画像処理IC200の音声デコーダの動作説明図を示す。図28において、図22と同一部分には同一符号を付し、適宜説明を省略する。
なお図28において、第7の記憶領域AR7を第4の記憶領域AR4と共用化し、第8の記憶領域AR8を第5の記憶領域AR5と共用化している。また、PSI/SI、NIT、PMTは、第3の記憶領域AR3内の所定の記憶領域に格納されるものとする。
まず図21に示すようにホスト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の規格に従ったデコード処理を行う。図28では、デコード処理後の音声データがDAC150に直接供給されている(SQ36)が、例えばデコード処理後の音声データを、一旦、メモリ220の所定の記憶領域に書き戻し、その後、映像データの出力タイミングと同期を取りながらDAC150に供給することが望ましい。
以上のような音声デコーダ240の動作は、映像デコーダ230の動作とは独立して行われる。
なお、本発明は上述した実施の形態に限定されるものではなく、本発明の要旨の範囲内で種々の変形実施が可能である。なお上記の実施形態又はその変形例では、地上デジタル放送に適用可能な例について説明したが、本発明は地上デジタル放送に適用可能なものに限定されるものではない。
なお、本実施形態では、主にH.264/AVCに準拠したデコード処理に適用した場合について説明したが、これに限定されるものではなく、他の規格や、H.264/AVC規格を発展させた規格に準拠したデコード処理に適用できることは言うまでもない。
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
本実施形態におけるデコード装置の構成例のブロック図。 本実施形態においてTSパケットに付加されるエラー情報の説明図。 図2のエラー情報の詳細な説明図。 図3のエラーステータスの内容の一例の説明図。 本実施形態におけるエラー情報及びTSパケットのバッファの格納状況の説明図。 本実施形態におけるエラー情報の付加のタイミングの一例を示す図。 本実施形態におけるホストのエラー処理の一例のフロー図。 本実施形態におけるデコーダのエラー処理の一例のフロー図。 本実施形態において適用可能なパケットの種類を示す図。 本実施形態におけるエラーステータスの他の例を示す図。 本実施形態の変形例におけるホストのエラー処理の一例のフロー図。 本実施形態の他の変形例におけるエラーステータスの例を示す。 地上デジタル放送のセグメントの概念の説明図。 TSの説明図。 PESパケット及びセクションの説明図。 本実施形態の比較例におけるマルチメディア処理CPUを含む携帯電話機の構成例のブロック図。 本実施形態における情報再生装置を含む携帯電話機の構成例のブロック。 図17の画像処理ICの構成例のブロック図。 図18の画像処理ICの動作説明図。 ホストCPUによる再生処理の動作例のフロー図。 図20の放送受信開始処理の動作例のフロー図。 図18及び図19の画像処理ICの放送受信開始処理における動作説明図。 図20の放送受信終了処理の処理例のフロー図。 図18及び図19の画像処理ICの放送受信終了処理における動作説明図。 映像デコーダのメモリのアクセス動作例のフロー図。 図18及び図19の画像処理ICの映像デコーダの動作説明図。 音声デコーダのメモリのアクセス動作例のフロー図。 図18及び図19の画像処理ICの音声デコーダの動作説明図。
符号の説明
10 デコード装置、 20 分離処理部、 22 エラー処理部、
24 パケット分離部、 30 デコーダ、 40 バッファ、
50 デジタルチューナ、 60 ホスト、 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. 請求項2において、
    パケットデータを前記バッファに書き込むのに先立って、直前のパケットデータに付加されるエラー情報を前記バッファに書き込むことを特徴とするデコード装置。
  4. 請求項2又は3において、
    前記エラー処理部が、
    前記パケットデータを前記バッファに書き込むための書き込み要求中に該バッファへの別の書き込み要求が発生したことを示すエラー情報を前記パケットデータに付加することを特徴とするデコード装置。
  5. 請求項2乃至4のいずれかにおいて、
    前記エラー情報は、
    該エラー情報が付加されるパケットデータに先立って読み出されるように前記バッファの記憶領域に格納されることを特徴とするデコード装置。
  6. 請求項1乃至5のいずれかにおいて、
    前記パケットデータが、TS(Transport Stream)パケットであり、
    前記TSパケットを可変長のセクションやPES(Packetized Elementary Stream)パケットに変換することなく、前記エラー情報に基づいて、前記デコード処理又は前記TSパケットの廃棄を行うことを特徴とするデコード装置。
  7. 請求項6において、
    前記エラー処理部が、
    PMT(Program Map Table)のデータ構造におけるtable_id、section_syntax_indicator、current_next_indicator、section_numberのうち少なくとも1つのエラーを検出し、エラーの有無を示すエラー情報を該パケットデータに付加することを特徴とするデコード装置。
  8. 請求項6において、
    前記エラー処理部が、
    PAT(Program Association Table)又はNIT(Network Information Table)のエラーを検出し、エラーの有無を示すエラー情報を前記パケットデータに付加することを特徴とするデコード装置。
  9. 請求項7又は8において、
    前記エラー情報に基づいて、PMT、PAT又はNITのエラーが検出されたパケットデータは廃棄されることを特徴とするデコード装置。
  10. パケットデータが多重化されたストリームデータに対してデコード処理を行うためのデコード方法であって、
    前記ストリームデータから分離された固定長のパケットデータのエラーを検出し、
    エラーの有無を示すエラー情報を該パケットデータに付加し、
    前記パケットデータを可変長のセクションや可変長のパケットに変換することなく、前記エラー情報に基づいて、前記パケットデータのデコード処理を行うか、前記パケットデータの廃棄を行うかを決定し、
    前記エラー情報に基づいて前記パケットデータのデコード処理を行うことが決定されたとき、該デコード処理を行うことを特徴とするデコード方法。
  11. 映像データ及び音声データの少なくとも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パケットに付加し、
    各TSパケットを可変長のセクションやPES(Packetized Elementary Stream)パケットに変換することなく、前記エラー情報に基づいて、前記映像デコード処理、前記音声デコード処理又はTSパケットの廃棄を行うことを特徴とする情報再生装置。
  12. 請求項11において、
    前記映像デコーダが、前記第1の記憶領域から前記第1のTSパケットを、前記音声デコーダとは独立して読み出し、該第1のTSパケットに基づいて前記映像デコード処理を行うと共に、
    前記音声デコーダが、前記第2の記憶領域から前記第2のTSパケットを、前記映像デコーダとは独立して読み出し、該第2のTSパケットに基づいて前記音声デコード処理を行うことを特徴とする情報再生装置。
  13. 請求項11又は12において、
    前記映像データ及び音声データのうち前記映像データのみを再生するときは、前記音声デコーダの動作を停止させ、
    前記映像データ及び音声データのうち前記音声データのみを再生するときは、前記デコード装置の動作を停止させることを特徴とする情報再生装置。
  14. 請求項11乃至13のいずれか記載の情報再生装置と、
    前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含むことを特徴とする電子機器。
  15. チューナと、
    前記チューナからのトランスポートストリームが供給される請求項11乃至13のいずれか記載の情報再生装置と、
    前記情報再生装置に対し、前記映像デコード処理及び前記音声デコード処理の少なくとも1つの処理開始を指示するホストとを含むことを特徴とする電子機器。
JP2006107294A 2006-04-10 2006-04-10 デコード装置、デコード方法、情報再生装置及び電子機器 Pending JP2007282001A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006107294A JP2007282001A (ja) 2006-04-10 2006-04-10 デコード装置、デコード方法、情報再生装置及び電子機器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006107294A JP2007282001A (ja) 2006-04-10 2006-04-10 デコード装置、デコード方法、情報再生装置及び電子機器

Publications (1)

Publication Number Publication Date
JP2007282001A true JP2007282001A (ja) 2007-10-25

Family

ID=38682984

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006107294A Pending JP2007282001A (ja) 2006-04-10 2006-04-10 デコード装置、デコード方法、情報再生装置及び電子機器

Country Status (1)

Country Link
JP (1) JP2007282001A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010037966A1 (fr) * 2008-10-02 2010-04-08 Sagem Communications Sas Procede de gestion de la reception d'une commande de changement de services dans un decodeur de television numerique
JP2011236761A (ja) * 2010-05-07 2011-11-24 Hitachi Automotive Systems Ltd 内燃機関の制御装置
WO2017061280A1 (ja) * 2015-10-08 2017-04-13 ソニー株式会社 受信装置および方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010037966A1 (fr) * 2008-10-02 2010-04-08 Sagem Communications Sas Procede de gestion de la reception d'une commande de changement de services dans un decodeur de television numerique
FR2936923A1 (fr) * 2008-10-02 2010-04-09 Sagem Comm Procede de gestion de la reception d'une commande de changement de services dans un decodeur de television numerique
CN102210161A (zh) * 2008-10-02 2011-10-05 萨基姆通讯宽带公司 在数字电视解码器中对用以改变服务的命令的接收进行管理的方法
US9124844B2 (en) 2008-10-02 2015-09-01 Sagemcom Broadband Sas Method of managing the receipt of a command to change services in a digital television decoder
JP2011236761A (ja) * 2010-05-07 2011-11-24 Hitachi Automotive Systems Ltd 内燃機関の制御装置
WO2017061280A1 (ja) * 2015-10-08 2017-04-13 ソニー株式会社 受信装置および方法
US10594437B2 (en) 2015-10-08 2020-03-17 Sony Corporation Receiving apparatus and method therefor

Similar Documents

Publication Publication Date Title
JP6523249B2 (ja) パケットヘッダを圧縮する方法及び装置
JP2008011404A (ja) コンテンツ処理装置及びコンテンツ処理方法
CN101027897B (zh) 无线移动设备以及对其接收数据的纠错方法、集成电路
WO2010116588A1 (ja) デジタルテレビ放送再生装置およびその再生方法
JP2005210729A (ja) Mpeg−2のデコーディングシステム及びデコーディング方法
JP2008042497A (ja) デコード装置、情報再生装置及び電子機器
KR20060113522A (ko) 디지털 방송수신기의 비디오복호기 초기화장치 및 방법
JP2007282001A (ja) デコード装置、デコード方法、情報再生装置及び電子機器
CN102118342B (zh) 接收设备和方法、程序和接收系统
JP2007251543A (ja) 表示制御装置、その制御方法、情報再生装置及び電子機器
WO2024251250A1 (zh) 基于信道捆绑的数据传输方法和设备、存储介质
JP2008022330A (ja) 情報再生装置及び電子機器
JP5032179B2 (ja) ストリーム再生装置及びメディアデータ復号方法
JP2007166598A (ja) 情報記録装置及び電子機器
JP2007166597A (ja) 情報再生装置及び電子機器
CN1989720B (zh) 无线移动设备和纠错方法
JP2007288566A (ja) 情報記録再生装置及び電子機器
JP2007304832A (ja) メモリアクセス制御装置、メモリアクセスシステム、情報再生装置及び電子機器
JP2002325230A (ja) データ記録装置及び方法、データ再生装置及び方法
JP3848805B2 (ja) 受信装置
JP2008022053A (ja) デコード装置、情報再生装置及び電子機器
KR20080111374A (ko) 이동 통신용 방송 서비스 전송 방법과 그 장치 및 이동통신용 방송 서비스 수신 방법과 그 장치
JP2008022054A (ja) 情報再生装置及び電子機器
JP2008022331A (ja) 表示制御装置、情報再生装置及び電子機器
JP2007243763A (ja) デコード装置、その制御方法、情報再生装置及び電子機器