(57)【特許請求の範囲】
【請求項１】
圧縮符号化された動画像データと圧縮符号化されたグラフィクスデータとを含むデータストリームを再生する情報処理装置において、
ブリッジデバイスを介して主メモリに接続されたＣＰＵであって、前記データストリームを前記圧縮符号化された動画像データと前記圧縮符号化されたグラフィクスデータとに分離する処理と、前記分離された前記圧縮符号化された動画像データを、前記ブリッジデバイスにバスを介して接続された表示コントローラに、前記ブリッジデバイスおよび前記バスを介して転送する処理と、前記分離された圧縮符号化されたグラフィクスデータをデコードし、前記デコードされたグラフィクスデータに基づいてグラフィクス画像を前記主メモリに描画する描画処理と、前記グラフィクス画像の更新イベントが発生した場合、新たなグラフィクス画像を描画すべき前記主メモリ上のグラフィクス画像内の領域を特定し、特定した領域に新たなグラフィクス画像を描画すると共に、前記特定した領域を含む矩形領域を示す座標情報を算出する処理とを実行するＣＰＵと、
前記グラフィクス画像が更新された時に前記座標情報によって指定される矩形領域に属するグラフィクス画像を前記主メモリから前記表示コントローラのビデオメモリに前記ブリッジデバイスおよび前記バスを介して転送する転送手段とを具備し、
前記表示コントローラは、前記ＣＰＵから転送される前記圧縮符号化された動画像データをデコードする処理と、前記デコードされた動画像データと前記ビデオメモリに格納されている前記グラフィクス画像とをフレーム毎に合成して表示装置に出力すべき表示信号を生成する合成処理とを実行する表示コントローラとを具備することを特徴とする情報処理装置。
【請求項２】
前記表示コントローラに転送されるグラフィクス画像は各ピクセルの透明度を示す係数であるアルファデータを含んでおり、前記表示コントローラは前記デコードされた動画像データと前記ビデオメモリに格納されている前記グラフィクス画像とをアルファブレンディングによって合成することを特徴とする請求項１記載の情報処理装置。
【請求項３】
放送番組データを受信する受信装置をさらに具備し、
前記データストリームは、前記受信装置によって受信された放送番組データであることを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記データストリームは、前記グラフィクスデータを呈示するための手続きを記述したスクリプト情報を含み、
前記ＣＰＵは、前記スクリプト情報を解析し、その解析結果に従って前記描画処理を実行することを特徴とする請求項１記載の情報処理装置。
【請求項５】
前記転送手段は、前記矩形領域に属するグラフィクス画像を前記主メモリから前記ビデオメモリに転送するためのブロック転送を実行する手段を含むことを特徴とする請求項１記載の情報処理装置。
【請求項６】
前記転送手段は、前記表示コントローラに設けられた直接メモリアクセスコントローラを含み、
前記直接メモリアクセスコントローラは、前記座標情報を含む、前記ＣＰＵからの転送要求に応じて、前記矩形領域に属するグラフィクス画像を前記主メモリから前記ビデオメモリに転送することを特徴とする請求項１記載の情報処理装置。
【請求項７】
圧縮符号化された動画像データと圧縮符号化されたグラフィクスデータとを含む放送番組データであって、前記圧縮符号化されたグラフィクスデータには、前記グラフィクスデータを呈示するための手続きを記述したスクリプト情報が付加されている放送番組データを受信する受信装置と、
ブリッジデバイスを介して主メモリに接続されたＣＰＵであって、前記受信装置によって受信された放送番組データを前記圧縮符号化された動画像データと前記圧縮符号化されたグラフィクスデータとに分離する処理と、前記分離された前記圧縮符号化された動画像データを、前記ブリッジデバイスにバスを介して接続された表示コントローラに、前記ブリッジデバイスおよび前記バスを介して転送する処理と、前記分離された圧縮符号化されたグラフィクスデータをデコードする処理と、前記スクリプト情報を解析し、前記スクリプト情報の解析結果と前記デコードされたグラフィクスデータとに基づいてグラフィクス画像を前記主メモリに描画する描画処理と、前記グラフィクス画像の更新イベントが発生した場合、新たなグラフィクス画像を描画すべき前記主メモリ上のグラフィクス画像内の領域を特定し、特定した領域に新たなグラフィクス画像を描画すると共に、前記特定した領域を含む矩形領域を示す座標情報を算出する処理とを実行するＣＰＵと、
前記グラフィクス画像が更新された時に前記座標情報によって指定される矩形領域に属するグラフィクス画像を前記主メモリから前記表示コントローラのビデオメモリに前記ブリッジデバイスおよび前記バスを介して転送する転送手段とを具備し、
前記表示コントローラは、前記ＣＰＵから所定のフレームレートで転送される前記圧縮符号化された動画像データをデコードするデコーダと、前記ビデオメモリに格納されている前記グラフィクス画像とをフレーム毎に合成して表示装置に出力すべき表示信号を生成する合成部とを含むことを特徴とする情報処理装置。
【請求項８】
前記表示コントローラに転送されるグラフィクス画像は各ピクセルの透明度を示す係数であるアルファデータを含んでおり、前記合成部は前記デコードされた動画像データと前記ビデオメモリに格納されている前記グラフィクス画像とをアルファブレンディングによって合成することを特徴とする請求項７記載の情報処理装置。
【請求項９】
前記転送手段は、前記矩形領域に属するグラフィクス画像を前記主メモリから前記ビデオメモリに転送するためのブロック転送を実行する手段を含むことを特徴とする請求項７記載の情報処理装置。
【請求項１０】
前記転送手段は、前記表示コントローラに設けられた直接メモリアクセスコントローラを含み、
前記直接メモリアクセスコントローラは、前記座標情報を含む、前記ＣＰＵからの転送要求に応じて、前記矩形領域に属するグラフィクス画像を前記主メモリから前記ビデオメモリに転送することを特徴とする請求項７記載の情報処理装置。
【請求項１１】
ブリッジデバイスと、ブリッジデバイスを介して主メモリに接続されたＣＰＵと、前記ブリッジデバイスにバスを介して接続された表示コントローラとを含む情報処理装置によって、圧縮符号化された動画像データとグラフィクスデータとを含むデータストリームを再生する再生方法であって、
前記データストリームを前記圧縮符号化された動画像データと前記グラフィクスデータとに分離する処理を前記ＣＰＵによって実行するステップと、
前記分離された前記圧縮符号化された動画像データを、前記表示コントローラに、前記ブリッジデバイスおよび前記バスを介して転送する処理を前記ＣＰＵによって実行するステップと、
前記分離された圧縮符号化されたグラフィクスデータをデコードし、前記デコードされたグラフィクスデータに基づいてグラフィクス画像を前記主メモリに描画する描画処理を前記ＣＰＵによって実行するステップと、
前記グラフィクス画像の更新イベントが発生した場合、新たなグラフィクス画像を描画すべき前記主メモリ上のグラフィクス画像内の領域を特定し、特定した領域に新たなグラフィクス画像を描画すると共に、前記特定した領域を含む矩形領域を示す座標情報を算出する処理を前記ＣＰＵによって実行するステップと、
前記グラフィクス画像が更新された時に前記座標情報によって指定される矩形領域に属するグラフィクス画像を前記主メモリから前記表示コントローラのビデオメモリに前記ブリッジデバイスおよび前記バスを介して転送するステップと、
前記ＣＰＵから転送される前記圧縮符号化された動画像データをデコードする処理を前記表示コントローラによって実行するステップと、
前記デコードされた動画像データと前記ビデオメモリに格納されている前記グラフィクス画像とをフレーム毎に合成して表示装置に出力すべき表示信号を生成する合成処理を前記表示コントローラによって実行するステップとを具備することを特徴とする再生方法。
【請求項１２】
前記表示コントローラに転送されるグラフィクス画像は各ピクセルの透明度を示す係数であるアルファデータを含んでおり、前記表示コントローラは前記デコードされた動画像データと前記ビデオメモリに格納されている前記グラフィクス画像とをアルファブレンディングによって合成することを特徴とする請求項１１記載の再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパーソナルコンピュータのような情報処理装置に関し、特に放送番組データのようなデータストリームを再生する機能を有する情報処理装置および同装置で用いられる再生方法に関する。
【背景技術】
【０００２】
近年、ＤＶＤ（Digital Versatile Disc）プレーヤ、ＴＶ装置のようなオーディオ・ビデオ（ＡＶ）機器と同様のＡＶ機能を備えたパーソナルコンピュータが開発されている。この種のパーソナルコンピュータの多くは、放送番組データを受信する機能を有している。
【０００３】
最近では、デジタル放送を受信する機能を有するパーソナルコンピュータも開発され始めている。デジタル放送番組は、動画像データのみならず、文字、図形、静止画等のグラフィクスデータも含んでいる。デジタル放送番組を再生するためには、動画像データをデコードする処理と、デコードされた動画像データとグラフィクスデータとをフレーム毎に合成して表示画面を生成する処理とを実行することが必要となる。
【０００４】
パーソナルコンピュータにおいては、そのコストアップを抑えるために、デジタル放送番組を再生するための処理を専用のハードウェアではなく、ＣＰＵのような汎用プロセッサによって実行することが要求される。
【０００５】
しかし、デジタル放送番組の動画像データをデコードするだけでも多くの演算量が必要とされるので、デジタル放送番組を再生するための全ての処理をＣＰＵのようなプロセッサによって実行することは困難である。そこで、デジタル放送番組を再生するための処理をプロセッサと表示コントローラとに効率よく分散させるための新たな仕組みを実現することが必要である。
【０００６】
特許文献１には、ビデオデータとグラフィクスデータとを合成する機能を有する表示コントローラが開示されている。
【特許文献１】特開２００５−７７５０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ビデオデータとグラフィクスデータとを合成する処理を表示コントローラ側で実行することにより、プロセッサの負荷を低減することが可能となる。
【０００８】
しかし、デジタル放送番組を再生するためには、ビデオデータ（動画像データ）とグラフィクスデータとの合成をフレーム毎に実行しなければならない。このため、プロセッサから表示コントローラに動画像データとグラフィクスデータの双方を所定のフレームレートで転送することが必要となる。この場合、必要なデータ転送量は数Ｇバイト／ｓｅｃにもおよぶことになる。ＨＤ(High Definition)規格の高解像度の動画像データを再生する場合には、必要なデータ転送量はさらに増加する。したがって、必要なデータ転送量がプロセッサと表示コントローラとの間のデータ転送能力を超えてしまい、動画像データとグラフィクスデータとをフレーム毎に合成する処理をリアルタイムに実行することができなくなる可能性がある。
【０００９】
本発明は上述の事情を考慮してなされたものであり、動画像データとグラフィクスデータとをフレーム毎に合成する処理をリアルタイムに実行することが可能な情報処理装置および再生方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述の課題を解決するため、本発明は、圧縮符号化された動画像データと圧縮符号化されたグラフィクスデータとを含むデータストリームを再生する情報処理装置において、ブリッジデバイスを介して主メモリに接続されたＣＰＵであって、前記データストリームを前記圧縮符号化された動画像データと前記圧縮符号化されたグラフィクスデータとに分離する処理と、前記分離された前記圧縮符号化された動画像データを、前記ブリッジデバイスにバスを介して接続された表示コントローラに、前記ブリッジデバイスおよび前記バスを介して転送する処理と、前記分離された圧縮符号化されたグラフィクスデータをデコードし、前記デコードされたグラフィクスデータに基づいてグラフィクス画像を前記主メモリに描画する描画処理と、前記グラフィクス画像の更新イベントが発生した場合、新たなグラフィクス画像を描画すべき前記主メモリ上のグラフィクス画像内の領域を特定し、特定した領域に新たなグラフィクス画像を描画すると共に、前記特定した領域を含む矩形領域を示す座標情報を算出する処理とを実行するＣＰＵと、前記グラフィクス画像が更新された時に前記座標情報によって指定される矩形領域に属するグラフィクス画像を前記主メモリから前記表示コントローラのビデオメモリに前記ブリッジデバイスおよび前記バスを介して転送する転送手段とを具備し、前記表示コントローラは、前記ＣＰＵから転送される前記圧縮符号化された動画像データをデコードする処理と、前記デコードされた動画像データと前記ビデオメモリに格納されている前記グラフィクス画像とをフレーム毎に合成して表示装置に出力すべき表示信号を生成する合成処理とを実行する表示コントローラとを具備することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、動画像データとグラフィクスデータとをフレーム毎に合成する処理をリアルタイムに実行することが可能となる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して、本発明の実施形態を説明する。  
まず、図１および図２を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。この情報処理装置は、例えば、ノートブック型パーソナルコンピュータ１０として実現されている。
【００１３】
図１はノートブック型パーソナルコンピュータ１０のディスプレイユニットを開いた状態における斜視図である。本コンピュータ１０は、コンピュータ本体１１と、ディスプレイユニット１２とから構成されている。ディスプレイユニット１２には、ＴＦＴ−ＬＣＤ（Thin Film Transistor Liquid Crystal Display）１７から構成される表示装置が組み込まれており、そのＬＣＤ１７の表示画面はディスプレイユニット１２のほぼ中央に位置されている。
【００１４】
ディスプレイユニット１２は、コンピュータ本体１１に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体１１は薄い箱形の筐体を有しており、その上面にはキーボード１３、本コンピュータ１０をパワーオン／パワーオフするためのパワーボタン１４、入力操作パネル１５、タッチパッド１６、およびスピーカ１８Ａ，１８Ｂなどが配置されている。
【００１５】
入力操作パネル１５は、押されたボタンに対応するイベントを入力する入力装置であり、複数の機能をそれぞれ起動するための複数のボタンを備えている。これらボタン群には、本コンピュータ１０のＴＶ機能を制御するための操作ボタンも含まれている。
【００１６】
また、コンピュータ本体１１の正面には、本コンピュータ１０のＴＶ機能を制御するリモコンユニットとの通信を実行するためのリモコンユニットインタフェース部２０が設けられている。リモコンユニットインタフェース部２０は、赤外線信号受信部などから構成されている。
【００１７】
本コンピュータ１０は、地上波デジタルＴＶ放送のようなデジタル放送番組データを受信、再生することができる。コンピュータ本体１１の右側面には、地上波デジタルＴＶ放送用のアンテナ端子１９が設けられている。
【００１８】
次に、図２を参照して、本コンピュータ１０のシステム構成について説明する。
【００１９】
本コンピュータ１０は、図２に示されているように、ＣＰＵ１０１、ノースブリッジ１０２、主メモリ１０３、サウスブリッジ１０４、グラフィクスプロセッシングユニット（ＧＰＵ）１０５、ビデオメモリ（ＶＲＡＭ）１０５Ａ、サウンドコントローラ１０６、ＢＩＯＳ−ＲＯＭ１０９、ＬＡＮコントローラ１１０、ハードディスクドライブ（ＨＤＤ）１１１、ＤＶＤドライブ１１２、カードコントローラ１１３、無線ＬＡＮコントローラ１１４、IEEE 1394コントローラ１１５、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１１６、およびデジタルＴＶチューナ１１７等を備えている。
【００２０】
ＣＰＵ１０１は本コンピュータ１０の動作を制御するプロセッサであり、ハードディスクドライブ（ＨＤＤ）１１１から主メモリ１０３にロードされる、オペレーティングシステム、および各種アプリケーションプログラムを実行する。また、ＣＰＵ１０１は、ＢＩＯＳ−ＲＯＭ１０９に格納されたＢＩＯＳ（Basic Input Output System）も実行する。ＢＩＯＳはハードウェア制御のためのプログラムである。
【００２１】
ノースブリッジ１１２はＣＰＵ１０１のローカルバスとサウスブリッジ１０４との間を接続するブリッジデバイスである。ノースブリッジ１０２には、主メモリ１０３をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ１０２は、ＰＣＩ  ＥＸＰＲＥＳＳ規格のシリアルバスなどを介してＧＰＵ１０５との通信を実行する機能も有している。
【００２２】
ＧＰＵ１０５は本コンピュータ１０のディスプレイモニタとして使用されるＬＣＤ１７を制御する表示コントローラである。このＧＰＵ１０５によって生成される表示信号はＬＣＤ１７に送られる。また、表示信号は、コンピュータ本体１１に設けられたインタフェース３、４をそれぞれ介して外部のＴＶ１、外部のＨＤＭＩモニタに送出することもできる。
【００２３】
サウスブリッジ１０４は、ＬＰＣ（Low Pin Count）バス上の各デバイス、およびＰＣＩ（Peripheral Component Interconnect）バス上の各デバイスを制御する。また、サウスブリッジ１０４は、ＨＤＤ１１１、ＤＶＤドライブ１１２を制御するためのＩＤＥ（Integrated Drive Electronics）コントローラを内蔵している。さらに、サウスブリッジ１０４は、サウンドコントローラ１０６との通信を実行する機能も有している。
【００２４】
サウンドコントローラ１０６は音源デバイスであり、再生対象のオーディオデータをスピーカ１８Ａ，１８Ｂに出力する。
【００２５】
カードコントローラ１１３は、ＰＣカード、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）カードのようなカードを制御する。無線ＬＡＮコントローラ１１４は、たとえばIEEE 802.11規格の無線通信を実行する無線通信デバイスである。IEEE 1394コントローラ１１５は、IEEE 1394規格のシリアルバスを介して外部機器との通信を実行する。エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１１６は、電力管理のためのエンベデッドコントローラと、キーボード（ＫＢ）１３およびタッチパッド１６を制御するためのキーボードコントローラとが集積された１チップマイクロコンピュータである。このエンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１１６は、ユーザによるパワーボタン１４の操作に応じて本コンピュータ１０をパワーオン／パワーオフする機能を有している。さらに、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１１６は、リモコンユニットインタフェース２０との通信を実行する機能を有している。
【００２６】
デジタルＴＶチューナ１１７は地上波デジタルＴＶ放送のようなデジタル放送番組を受信する受信装置であり、アンテナ端子１９に接続されている。このデジタルＴＶチューナ１１７は、チューナ回路２０１、およびＯＦＤＭ（Orthogonal Frequency Division Multiplexing）復調器２０２を備えている。チューナ回路２０１はアンテナ端子１９から入力されるＴＶ放送信号の中から特定チャネルの放送信号を受信する。ＯＦＤＭ（Orthogonal Frequency Division Multiplexing）復調器２０２はチューナ回路２０１によって受信された特定チャネルの放送信号を復調して、特定チャネルの放送信号からトランスポートストリーム（ＴＳ）を取り出す。トランスポートストリームは、圧縮符号化された放送番組データを多重化したデータストリームである。地上波デジタルＴＶ放送においては、各チャネルの放送番組データに対応するトランスポートストリーム（ＴＳ）は、圧縮符号化された動画像データと、圧縮符号化されたオーディオデータと、グラフィクスデータとを含む。グラフィクスデータも圧縮符号化されている。グラフィクスデータは、字幕データ、静止画、文字・図形データを含む。静止画および文字・図形データは、各チャネルの放送番組データにデータ放送として含まれている。データ放送は、天気予報、ニュース等を提供する。
【００２７】
地上波デジタルＴＶ放送においては、字幕はＣａｐｔｉｏｎデータと称され、静止画はＰｉｃｔｕｒｅと称され、文字・図形データはＦｉｇｕｒｅと称される。グラフィクスデータには、そのグラフィクスデータを提示するための手続きを記述したスクリプト情報が付加されている。このスクリプト情報はＢＭＬ（Broadcast Markup Language）と称されるスクリプト言語によって記述されている。スクリプト情報は、グラフィクスデータを構成する各部品要素をいつ、どこに表示するかを指定する。
【００２８】
次に、図３を参照して、放送番組データを再生するためのデータの流れについて説明する。
【００２９】
デジタルＴＶチューナ１１７によって受信された放送番組データを構成するデータストリーム（ＴＳデータ）は、ＰＣＩバス、サウスブリッジ１０４、およびノースブリッジ１０２を介して、主メモリ１０３に転送される。ＣＰＵ１０１は、主メモリ１０３からＴＳデータをリードし、ＴＳデータに対して各種データ処理を実行する。
【００３０】
すなわち、ＣＰＵ１０１は、まず、ＴＳデータを、圧縮符号化された動画像データと、圧縮符号化されたオーディオデータと、圧縮符号化されたグラフィクスデータとに分離する処理を実行する。次いで、ＣＰＵ１０１は、分離された圧縮符号化された動画像データを所定のフレームレート（例えば、３０ｆｐｓ）でＧＰＵ１０５に転送する処理を実行する。圧縮符号化された動画像データは、ノースブリッジ１０２、ＰＣＩ  Ｅｘｐｒｅｓｓバス、およびＧＰＵ１０５を介して、主メモリ１０３からＶＲＡＭ１０５に転送される。この場合、ＧＰＵ１０５は、主メモリ１０３から転送される動画像データをデコードし、そのデコードされた動画像データをＶＲＡＭ１０５に書き込む。
【００３１】
また、ＣＰＵ１０１は、分離されたグラフィクスデータをデコードし、そのデコードされたグラフィクスデータに基づいてグラフィクス画像を主メモリ１０３に描画する処理を実行する。主メモリ１０３に描画されたグラフィクス画像は、ＣＰＵ１０１の制御の下、ノースブリッジ１０２、ＰＣＩ  Ｅｘｐｒｅｓｓバス、およびＧＰＵ１０５を介して、ＶＲＡＭ１０５に転送される。この場合、ＣＰＵ１０１は、主メモリ１０３に格納されているグラフィクス画像内の更新領域を特定する処理を実行する。そして、特定された更新領域に属するグラフィクス画像データのみが、ノースブリッジ１０２、ＰＣＩ  Ｅｘｐｒｅｓｓバス、およびＧＰＵ１０５を介して、ＶＲＡＭ１０５に転送される。
【００３２】
ＧＰＵ１０５は、デコードされた動画像データとＶＲＡＭ１０５に格納されているグラフィクス画像データとをフレーム毎に合成して表示装置に出力すべき表示信号を生成する合成処理を実行する。
【００３３】
図４には、ＧＰＵ１０５によって実行される合成処理の例が示されている。
【００３４】
地上波デジタル放送番組データの表示画面には、動画像（ビデオ）８０１および字幕８０２に加え、静止画８０３と、文字図形データ（天気図８０４、メニュー８０４，８０５、ボタン８０７、ニュースヘッドライン８０８など）とが表示される。静止画８０３と、文字図形データ（天気図８０４、メニュー８０４，８０５、ボタン８０７、ニュースヘッドライン８０８など）は、データ放送によって提供されるグラフィクスデータである。
【００３５】
この表示画面は、ＣＰＵ１０１からそれぞれ転送されるビデオデータ、静止画（Ｐｉｃｔｕｒｅ）、文字・図形（Ｆｉｇｕｒｅ）、字幕（Ｃａｐｔｉｏｎ）をＧＰＵ１０５によって合成することによって生成される。
【００３６】
ＨＤ規格に対応するビデオデータの解像度は、例えば１９２０×１０８０画素である。ビデオデータは、ＭＰＥＧ２またはＨ．２６４規格で圧縮符号化された状態でＣＰＵ１０１からＧＰＵ１０５に転送される。
【００３７】
静止画（Ｐｉｃｔｕｒｅ）データは、文字・図形（Ｆｉｇｕｒｅ）データの背景画像として使用されるグラフィクスデータである。静止画（Ｐｉｃｔｕｒｅ）データの解像度は、例えば１９２０×１０８０画素である。ＣＰＵ１０１からＧＰＵ１０５に転送される静止画（Ｐｉｃｔｕｒｅ）データはビットマップデータである。このビットマップデータは、ＲＧＢデータとアルファデータＡとを含むＡＲＧＢデータである。アルファデータＡは、静止画（Ｐｉｃｔｕｒｅ）データの各ピクセルの透明度を示す係数である。
【００３８】
文字・図形（Ｆｉｇｕｒｅ）データは上述の天気図８０４、メニュー８０４，８０５、ボタン８０７、ニュースヘッドライン８０８などを表示するためのグラフィクスデータである。文字・図形（Ｆｉｇｕｒｅ）データの解像度は、例えば９６０×５４０画素である。ＣＰＵ１０１からＧＰＵ１０５に転送される文字・図形（Ｆｉｇｕｒｅ）データはビットマップデータである。このビットマップデータは、ＲＧＢデータとアルファデータＡとを含むＡＲＧＢデータである。アルファデータＡは、文字・図形（Ｆｉｇｕｒｅ）データの各ピクセルの透明度を示す係数である。
【００３９】
字幕（Ｃａｐｔｉｏｎ）データの解像度は、例えば９６０×５４０画素である。ＣＰＵ１０１からＧＰＵ１０５に転送される字幕（Ｃａｐｔｉｏｎ）データはビットマップデータである。このビットマップデータは、ＲＧＢデータとアルファデータＡとを含むＡＲＧＢデータである。アルファデータＡは、字幕（Ｃａｐｔｉｏｎ）データの各ピクセルの透明度を示す係数である。
【００４０】
ＧＰＵ１０５は、ビデオデータをデコードし、そのデコードしたビデオデータと、静止画（Ｐｉｃｔｕｒｅ）データと、文字・図形（Ｆｉｇｕｒｅ）データと、字幕（Ｃａｐｔｉｏｎ）データとの４つのプレーンをアルファブレンディング処理によって合成（ミキシング）することにより、表示画面を生成する。
【００４１】
次に、図５を参照して、デジタル放送番組データを再生する処理について説明する。
【００４２】
ＣＰＵ１０１は、デマルチプレクス部（ＤＥＭＵＸ）３０１、提示部３０２、およびレンダラー３０３として機能する。これらデマルチプレクス部（ＤＥＭＵＸ）３０１、提示部３０２、およびレンダラー３０３は、ＣＰＵ１０１によって実行されるデジタル放送受信ソフトウェアによって実現することができる。
【００４３】
デジタルＴＶチューナ１１７によって受信された放送番組データはデマルチプレクス部（ＤＥＭＵＸ）３０１に送られる。デマルチプレクス部（ＤＥＭＵＸ）３０１は、放送番組データを圧縮符号化されたビデオデータと圧縮符号化されたグラフィクスデータ（圧縮符号化された静止画（Ｐｉｃｔｕｒｅ）データ、圧縮符号化された文字・図形（Ｆｉｇｕｒｅ）データ、圧縮符号化された字幕（Ｃａｐｔｉｏｎ）データ）とに分離する。
【００４４】
圧縮符号化されたビデオデータは、レンダラー３０３およびディスプレイドライバ３０４を介してＧＰＵ１０５に送られる。
【００４５】
圧縮符号化された静止画（Ｐｉｃｔｕｒｅ）データ、圧縮符号化された文字・図形（Ｆｉｇｕｒｅ）データ、および圧縮符号化された字幕（Ｃａｐｔｉｏｎ）データはそれぞれ提示部３０２に送られる。提示部３０２は、圧縮符号化された静止画（Ｐｉｃｔｕｒｅ）データ、圧縮符号化された文字・図形（Ｆｉｇｕｒｅ）データ、および圧縮符号化された字幕（Ｃａｐｔｉｏｎ）データをそれぞれデコードする。そして、提示部３０２は、それらデコードされた静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、および字幕（Ｃａｐｔｉｏｎ）データに基づいて、ビットマップデータからそれぞれ構成される静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、および字幕（Ｃａｐｔｉｏｎ）データを主メモリ１０３に描画する。ビットマップデータからそれぞれ構成される静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、および字幕（Ｃａｐｔｉｏｎ）データは、レンダラー３０３およびディスプレイドライバ３０４を介してＧＰＵ１０５に送られる。
【００４６】
ＧＰＵ１０５内に設けられた合成部４０１は、４つのプレーン（デコードしたビデオデータ、静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、字幕（Ｃａｐｔｉｏｎ）データ）をアルファブレンディング処理によって合成する。
【００４７】
次に、図６を参照して、ＣＰＵ１０１からＧＰＵ１０５へのグラフィクスデータの転送について説明する。
【００４８】
ビデオデータはフレーム毎に更新される。これに比べ、グラフィクスデータは静止画ベースの画像データであるので、グラフィクスデータの更新頻度は非常に低い。グラフィクスデータの更新は、例えば、そのグラフィクスデータに付加されたスクリプト情報によって規定される更新イベントが発生した時のみ実行される。更新イベントとしては、例えば、図４で説明したボタン８０７またはメニュー８０５，８０６がユーザによるリモコンユニット等の操作によって選択されたことなどである。この場合、例えば、図４のニュースヘッドライン８０８の内容の一部または全部が更新される。また、定期的に更新イベントが自動的に発生する場合もある。例えば、図４の天気図８０４上に雨降りのアニメーションを表示する場合などである。
【００４９】
したがって、本実施形態においては、グラフィクスデータ（静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、字幕（Ｃａｐｔｉｏｎ）データ）をフレーム毎（例えば３３ｍｓｅｃに一回の頻度）にＧＰＵ１０５に転送するのではなく、グラフィクスデータの更新が発生した時にその更新された領域内に属する部分画像データのみをＧＰＵ１０５に転送する。これにより、グラフィクスデータに関するデータ転送量を大幅に低減することができる。
【００５０】
すなわち、ＣＰＵ１０１は、スクリプト情報を解析し、その解析結果とデコードしたグラフィクスデータとに基づいてグラフィクス画像を主メモリ１０３に描画する。これにより、グラフィクス画像のオリジナルは主メモリ１０３上に保持される。すなわち、主メモリ１０３には、静止画（Ｐｉｃｔｕｒｅ）、文字・図形（Ｆｉｇｕｒｅ）、および字幕（Ｃａｐｔｉｏｎ）それぞれに対応するテクスチャバッファＢ＃１、Ｂ＃２、Ｂ＃３が配置されている。
【００５１】
ＣＰＵ１０１は、スクリプト情報の解析結果とデコードした静止画（Ｐｉｃｔｕｒｅ）データとに基づいて静止画（Ｐｉｃｔｕｒｅ）の描画処理を実行する。この描画処理においては、ＣＰＵ１０１は、静止画（Ｐｉｃｔｕｒｅ）のビットマップデータ（ＡＲＧＢ）を生成し、その生成した静止画（Ｐｉｃｔｕｒｅ）のビットマップデータをテクスチャバッファＢ＃１に書き込む。また、ＣＰＵ１０１は、スクリプト情報の解析結果とデコードした文字・図形（Ｆｉｇｕｒｅ）データとに基づいて描文字・図形（Ｆｉｇｕｒｅ）の描画処理を実行する。この描画処理においては、ＣＰＵ１０１は、描文字・図形（Ｆｉｇｕｒｅ）画像のビットマップデータ（ＡＲＧＢ）を生成し、その生成した描文字・図形（Ｆｉｇｕｒｅ）画像のビットマップデータをテクスチャバッファＢ＃２に書き込む。さらに、ＣＰＵ１０１は、デコードした字幕（Ｃａｐｔｉｏｎ）に基づいて字幕（Ｃａｐｔｉｏｎ）の描画処理を実行する。この描画処理においては、ＣＰＵ１０１は、字幕（Ｃａｐｔｉｏｎ）画像のビットマップデータ（ＡＲＧＢ）を生成し、その生成した字幕（Ｃａｐｔｉｏｎ）画像のビットマップデータをテクスチャバッファＢ＃３に書き込む。
【００５２】
ＶＲＡＭ１０５ＡはＧＰＵ１０５のローカルメモリであり、ＧＰＵ１０５によって管理されている。このＶＲＡＭ１０５Ａには、主メモリ１０３に格納されているグラフィクスデータの複製が格納される。ＧＰＵ１０５の合成部４０１は、デコードされたビデオデータとＶＲＡＭ１０５Ａに格納されているグラフィクスデータの複製とを合成する合成処理をフレーム毎に実行して、表示装置に出力すべき表示信号を生成する。ビデオデータは３３ｍｓｅｃ間隔で更新されるので、合成処理も、３３ｍｓｅｃ間隔で順次実行することが必要となる。
【００５３】
ＶＲＡＭ１０５Ａには、グラフィクスデータの複製を保持するために、３つのテクスチャバッファＢ＃１１、Ｂ＃１２、Ｂ＃１３が配置されている。
【００５４】
テクスチャバッファＢ＃１１は、主メモリ１０３のテクスチャバッファＢ＃１に格納されている静止画（Ｐｉｃｔｕｒｅ）の複製を格納するためのバッファである。テクスチャバッファＢ＃１に格納されている静止画（Ｐｉｃｔｕｒｅ）の更新が発生した時のみ、その更新領域に属する静止画（Ｐｉｃｔｕｒｅ）のビットマップデータのみがテクスチャバッファＢ＃１１に転送される。
【００５５】
テクスチャバッファＢ＃１２は、主メモリ１０３のテクスチャバッファＢ＃２に格納されている文字・図形（Ｆｉｇｕｒｅ）画像の複製を格納するためのバッファである。テクスチャバッファＢ＃２に格納されている文字・図形（Ｆｉｇｕｒｅ）画像の更新が発生した時のみ、その更新領域に属する文字・図形（Ｆｉｇｕｒｅ）画像のビットマップデータのみがテクスチャバッファＢ＃１２に転送される。
【００５６】
テクスチャバッファＢ＃１３は、主メモリ１０３のテクスチャバッファＢ＃３に格納されている字幕（Ｃａｐｔｉｏｎ）画像の複製を格納するためのバッファである。テクスチャバッファＢ＃３に格納されている字幕（Ｃａｐｔｉｏｎ）画像の更新が発生した時のみ、その更新領域に属する字幕（Ｃａｐｔｉｏｎ）のビットマップデータのみがテクスチャバッファＢ＃１３に転送される。
【００５７】
次に、図７を参照して、ＣＰＵ１０１によって実行される処理とＧＰＵ１０５によって実行される処理との関係を説明する。
【００５８】
ＣＰＵ１０１は、上述の提示部３０２として、ＯＳＤ（On Screen Display）提示部５０１、データ放送提示部５０２、およびＣａｐｔｉｏｎ提示部５０３を備えている。これらＯＳＤ（On Screen Display）提示部５０１、データ放送提示部５０２、およびＣａｐｔｉｏｎ提示部５０３は、ＣＰＵ１０１によって実行されるデジタル放送受信ソフトウェアによって実現されている。
【００５９】
ＯＳＤ（On Screen Display）提示部５０１は、現在受信中の放送番組データのチャネル番号および現在受信中の放送番組データに関する番組情報（例えば、解像度、アスペクト比、音声多重の有無、等）を示すグラフィクス画像（ＯＳＤデータ）を主メモリ１０３のＯＳＤバッファ５１１に描画する。番組情報は、放送番組データ内に含まれている。デマルチプレクス部（ＤＥＭＵＸ）３０１は放送番組データから番組情報を取り出し、その取り出した番組情報をＯＳＤ（On Screen Display）提示部５０１に送信する。
【００６０】
また、デマルチプレクス部（ＤＥＭＵＸ）３０１は、放送番組データからデータ放送に関するグラフィクスデータ（圧縮符号化された静止画（Ｐｉｃｔｕｒｅ）データ、圧縮符号化された文字・図形（Ｆｉｇｕｒｅ）データ）を取り出し、その取り出したデータをデータ放送提示部５０２に送信する。放送局は、データ放送に関するグラフィクスデータをカルーセル方式によって例えば３分に１回の頻度で定期的に送信する。このデータ放送に関するグラフィクスデータには、上述のスクリプト情報も付加されている。
【００６１】
データ放送提示部５０２は、圧縮符号化された文字・図形（Ｆｉｇｕｒｅ）データおよび静止画（Ｐｉｃｔｕｒｅ）データをデコードする処理と、スクリプト情報を解析し、その解析結果に基づいて、文字・図形（Ｆｉｇｕｒｅ）データに対応するビットマップデータおよび静止画（Ｐｉｃｔｕｒｅ）データに対応するビットマップデータを主メモリ１０３上のＦｉｇｕｒｅバッファ５１２およびＰｉｃｔｕｒｅバッファ５１３にそれぞれ描画する。Ｆｉｇｕｒｅバッファ５１２は図６のテクスチャバッファ＃Ｂ２に相当し、Ｐｉｃｔｕｒｅバッファ５１３は図６のテクスチャバッファ＃Ｂ１に相当している。
【００６２】
また、デマルチプレクス部（ＤＥＭＵＸ）３０１は、放送番組データから圧縮符号化された字幕（Ｃａｐｔｉｏｎ）データを取り出し、その字幕（Ｃａｐｔｉｏｎ）データをＣａｐｔｉｏｎ提示部５０３に送信する。
【００６３】
Ｃａｐｔｉｏｎ提示部５０３は、圧縮符号化された字幕（Ｃａｐｔｉｏｎ）データをデコードし、字幕（Ｃａｐｔｉｏｎ）データに対応するビットマップデータを主メモリ１０３上のＣａｐｔｉｏｎバッファ５１４に描画する。Ｃａｐｔｉｏｎバッファ５１４は、図６のテクスチャバッファ＃Ｂ３に相当する。
【００６４】
さらに、デマルチプレクス部（ＤＥＭＵＸ）３０１は、放送番組データから圧縮符号化されたビデオデータを取り出し、そのビデオデータをＧＰＵ１０５に送信する。ビデオデータは、所定のフレームレート（例えば３０ｆｐｓ）でＧＰＵ１０５に送信される。
【００６５】
ＧＰＵ１０５はビデオデコーダ６０１を備えている。ビデオデコーダ６０１は、ＣＰＵ１０１から転送される圧縮符号化されたビデオデータをデコードし、そのデコードされたビデオデータ（ＲＧＢデータ）をＶＲＡＭ１０５Ａ上のビデオバッファ６１２に格納する。
【００６６】
ＶＲＡＭ１０５Ａには、さらに、ＯＳＤバッファ６１１、Ｆｉｇｕｒｅバッファ６１３、Ｐｉｃｔｕｒｅバッファ６１４、およびＣａｐｔｉｏｎバッファ６１５が配置されている。ＯＳＤバッファ６１１は、主メモリ１０３上のＯＳＤバッファ５１１に格納されているＯＳＤデータの複製を格納するためのバッファである。ＯＳＤバッファ５１１に格納されているＯＳＤデータが更新された時、その更新領域内に属するＯＳＤデータのみがＯＳＤバッファ５１１からＯＳＤバッファ６１１に転送される。
【００６７】
Ｆｉｇｕｒｅバッファ６１３、Ｐｉｃｔｕｒｅバッファ６１４、およびＣａｐｔｉｏｎバッファ６１５は、それぞれ図６のテクスチャバッファＢ＃１２、Ｂ＃１１、Ｂ＃１３に相当する。
【００６８】
合成部４０１は、ＯＳＤバッファ６１１、ビデオバッファ６１２、Ｆｉｇｕｒｅバッファ６１３、Ｐｉｃｔｕｒｅバッファ６１４、およびＣａｐｔｉｏｎバッファ６１５にそれぞれ格納されているＯＳＤデータ、ビデオデータ、文字・図形データ、静止画データ、字幕データをピクセル単位で合成する処理をフレーム毎に実行する。
【００６９】
次に、図８を参照して、グラフィクスデータの更新領域のみを主メモリ１０３からＶＲＡＭ１０５Ａに転送する処理について説明する。
【００７０】
上述したように、主メモリ１０３上には、静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、字幕（Ｃａｐｔｉｏｎ）データ、およびＯＳＤデータが存在する。ＣＰＵ１０１は、これら静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、字幕（Ｃａｐｔｉｏｎ）データ、およびＯＳＤデータの各々の一部または全部が更新された時に、その更新された領域を特定する。そして、ＣＰＵ１０１は、その更新された領域に含まれる画像のみをＧＰＵ１０５を介してＶＲＡＭ１０５Ａに転送するための処理を実行する。
【００７１】
実際には、グラフィクス画像（静止画（Ｐｉｃｔｕｒｅ）データ、文字・図形（Ｆｉｇｕｒｅ）データ、字幕（Ｃａｐｔｉｏｎ）データ、およびＯＳＤデータ）の更新はＣＰＵ１０１によって実行されるので、ＣＰＵ１０１は、まず、グラフィクス画像内の更新すべき領域を特定する。そして、ＣＰＵ１０１は、特定した更新すべき領域に新たな画像を描画すると共に、特定した更新領域に属する画像データをグラフィクス画像から抽出して、その抽出した画像データのみをＧＰＵ１０５を介してＶＲＡＭ１０５Ａに転送するための処理を実行する。この場合、実際のデータ転送は、ＧＰＵ１０５内に設けられたＤＭＡコントローラを用いて実行することができる。
【００７２】
例えば、主メモリ１０３上に格納されている静止画（Ｐｉｃｔｕｒｅ）データの一部を更新する場合、ＣＰＵ１０１は、その更新すべき領域を囲む矩形領域の座標（左上隅の座標（Left, Top）、および右下隅の座標（Right, Bottom））を算出する。そして、ＣＰＵ１０１は、更新すべき領域に静止画（Ｐｉｃｔｕｒｅ）を描画した後に、矩形領域に属する画像データを主メモリ１０３から抽出し、その抽出した画像データをＧＰＵ１０５を介してＶＲＡＭ１０５Ａに転送するための処理を実行する。この場合、矩形領域に属する画像データの転送は、ＧＰＵ１０５内に設けられたＤＭＡコントローラによるブロック転送（bit blt）を用いて実行することができる。ＤＭＡコントローラは、特定された矩形領域を指定する座標情報（左上隅の座標（Left, Top）、および右下隅の座標（Right, Bottom））を含む、ＣＰＵ１０１からの転送要求に応じて、ブロック転送（bit blt）を実行する。もちろん、ＣＰＵ１０１が、ブロック転送を実行しても良い。
【００７３】
主メモリ１０３からＶＲＡＭ１０５Ａへの更新領域の転送にはある所定の時間が必要となる。このため、更新領域の転送に要する時間が、ビデオデータのフレーム間隔（33msec）を超える可能性もある。しかし、ＶＲＡＭ１０５Ａ上には更新前のグラフィクス画像の複製が存在しているので、ＧＰＵ１０５は、ＶＲＡＭ１０５Ａ上のグラフィクス画像を用いて、ビデオとグラフィクス画像とをフレーム単位で合成する処理を正常に実行することができる。
【００７４】
次に、図９を参照して、ＣＰＵ１０１によって実行されるデジタル放送受信ソフトウェアの機能構成の具体例を説明する。ここでは、データ放送に関するグラフィクスデータを主メモリ１０３からＶＲＡＭ１０５Ａに転送するためのデジタル放送受信ソフトウェアの機能構成を説明する。
【００７５】
データ放送呈示部５０２は、パーサ７０１および描画部７０２を備えている。また、レンダラー３０３は、デコード制御部７０３、同期制御部７０４、変更矩形領域抽出部７０５、メモリ管理部７０６を備えている。
【００７６】
パーサ７０１は、データ放送のグラフィクスデータに対応するスクリプト情報を解析し、グラフィクスデータを構成する各部品要素（文字、図形等）毎に、その部品要素を何時、どの位置に描画するかを決定する。ある部品要素（文字、図形等）を描画するタイミングになった時、パーサ７０１は、部品要素を描画すべき座標情報を変更矩形領域抽出部７０５に送ると共に、描画すべき部品要素（圧縮符号化された画像データ）を描画部７０２に送る。描画部７０２は、描画すべき部品要素（圧縮符号化された画像データ）をデコードして、当該部品要素に対応する画像データ（ビットマップデータ）を生成する。そして、描画部７０２は、生成した画像データ（ビットマップデータ）を、メモリ管理部７０６によって主メモリ１０３上に設定された領域に描画する。
【００７７】
変更矩形領域抽出部７０５は、パーサ７０１から送信される部品要素に対応する座標情報を含む書き込み指示をメモリ管理部７０６に通知し、これによって、当該部品要素に対応する画像データを書き込むべき領域を主メモリ１０３（Ｆｉｇｕｒｅバッファ５１２、Ｐｉｃｔｕｒｅバッファ５１３、またはＣａｐｔｉｏｎバッファ５１４）上に設定する処理をメモリ管理部７０６に実行させる。
【００７８】
また、変更矩形領域抽出部７０５は、パーサ７０１から送信される描画対象の各部品要素に対応する座標情報に基づいて、更新領域を特定する処理を実行する。例えば、図１０に示すように、静止画像上に新たな３つの部品要素１，２，３を描画する場合、変更矩形領域抽出部７０５は、３つの部品要素１，２，３を囲む矩形領域を更新領域として特定する。図１０の例においては、左上隅の座標（Ｌｅｆｔ，ｔｏｐ）＝（Ｌ１，Ｔ３）、右下隅の座標（Ｒｉｇｈｔ，Ｂｏｔｔｏｍ）＝（Ｒ３，Ｂ３）によって規定される矩形領域が、更新領域として特定される。
【００７９】
変更矩形領域抽出部７０５は、矩形領域の座標情報（（Ｌ１，Ｔ３），（Ｒ３，Ｂ３））をＧＰＵ１０５に通知する。また、メモリ管理部７０６は、更新領域転送要求をＧＰＵ１０５に送信する。更新領域転送要求には、矩形領域が書き込まれるべきＶＲＡＭ１０５Ａ上の位置を示す座標情報が含まれている。矩形領域の座標情報および更新領域転送要求は、合成部４０１を介してＤＭＡコントローラ（ＤＭＡＣ）７００に、またはＤＭＡコントローラ（ＤＭＡＣ）７００に直接的に送られる。ＤＭＡコントローラ（ＤＭＡＣ）７００は、矩形領域の座標情報と更新領域転送要求に含まれる座標情報とに従って、矩形領域内に属する画像データを主メモリ１０３からＶＲＡＭ１０５Ａに転送するためのブロック転送を実行する。
【００８０】
なお、ＤＭＡコントローラ（ＤＭＡＣ）７００は必ずしもＧＰＵ１０５内に設ける必要はなく、例えば、ノースブリッジ１０２等に設けてもよい。
【００８１】
一方、ビデオデータは、デコード制御部７０３を介してＧＰＵ１０５内のビデオデコーダ６０１に送られる。同期制御部７０４は、デコード制御部７０３によって指示されたフレームレートに従い、一定間隔で合成タイミングをＧＰＵ１０５内の合成部４０１に通知する。その合成タイミングに従って、合成部４０１は、ビデオバッファ６１２、グラフィクスバッファ（Ｆｉｇｕｒｅバッファ６１３、Ｐｉｃｔｕｒｅバッファ６１４、およびＣａｐｔｉｏｎバッファ６１５）からビデオデータおよびグラフィクスデータをそれぞれ取り出し、合成処理を行う。
【００８２】
次に、図１１を参照して、グラフィクスデータの更新領域を転送するための処理の流れについて説明する。
【００８３】
描画イベントが発生すると、提示部３０２は、スクリプト情報に従って、グラフィクスデータを描画すべき更新領域（描画矩形領域）を算出し、描画矩形領域の設定をレンダラー３０３に依頼する。この後、提示部３０２は、描画すべき各部品要素をデコードしてビットマップデータを作成し、そのビットマップデータをレンダラー３０３を介して主メモリ１０３に書き込む。
【００８４】
レンダラー３０３は更新領域を囲む矩形領域（更新矩形領域）を算出し、更新矩形領域に対応するＶＲＡＭ１０５Ａ上の描画領域のロックをディスプレイドライバ３０４を通じてＧＰＵ１０５に指示する。ＶＲＡＭ１０５Ａ上の描画領域がロックされると、主メモリ１０３上の更新矩形領域からＶＲＡＭ１０５Ａ上の描画領域への画像データの転送が実行される。この転送処理は、基本的には、あるフレームの合成および表示処理と次のフレームの合成および表示処理との間に実行される。
【００８５】
次に、図１２のフローチャートを参照して、放送番組データを再生するための一連の処理の手順について説明する。
【００８６】
ＣＰＵ１０１は、デジタルＴＶチューナ１１７によって受信された放送番組データを構成するデータストリームを入力し（ステップＳ１１）、そのデータストリームを圧縮符号化された動画像データと圧縮符号化されたグラフィクスデータとに分離するためのデマルチプレクス処理を実行する（ステップＳ１２）。次いで、ＣＰＵ１０１は、圧縮符号化された動画像データをＧＰＵ１０５に例えば３０ｆｐｓのフレームレートで転送するための転送処理を開始する（ステップＳ１３）。この転送処理は、ＧＰＵ１０５のＤＭＡコントローラ７００を用いて実行してもよい。
【００８７】
分離された圧縮符号化されたグラフィクスデータには上述のスクリプト情報が付加されている。ＣＰＵ１０１は、スクリプト情報を解析し、その解析結果に従って、グラフィクスデータをデコードする処理、およびデコードされたグラフィクスデータに基づいてグラフィクス画像を主メモリ１０３に書き込む描画処理を実行する（ステップＳ１４，Ｓ１５）。そして、ＣＰＵ１０１は、主メモリ１０３に格納されているグラフィクス画像内の更新領域を特定し、そしてその特定した更新領域内に属する画像データを主メモリ１０３からＶＲＡＭ１０５Ａに転送する処理を実行する（ステップＳ１６）。この転送処理は、ＧＰＵ１０５のＤＭＡコントローラ７００を用いて実行することができる。最初のグラフィクスデータの描画時には、主メモリ１０３に格納されているグラフィクス画像全体が更新領域として特定される。このため、主メモリ１０３に格納されているグラフィクス画像全体がＶＲＡＭ１０５Ａに転送される。
【００８８】
主メモリ１０３にグラフィクス画像が一旦描画された後は、通常は、グラフィクス画像の更新頻度は少なく、しかも更新される領域はグラフィクス画像の一部分である。更新イベントが発生すると、ＣＰＵ１０１は、主メモリ１０３に格納されているグラフィクス画像を更新するために、スクリプト情報の解析結果に従って、グラフィクスデータをデコードする処理、およびデコードされたグラフィクスデータに基づいてグラフィクス画像を主メモリ１０３に書き込む描画処理を実行する（ステップＳ１８）。そして、ＣＰＵ１０１は、主メモリ１０３に格納されているグラフィクス画像内の更新領域を特定し（ステップ１９）、そしてその特定した更新領域内に属する画像データを主メモリ１０３からＶＲＡＭ１０５Ａに転送する処理を実行する（ステップＳ２０）。
【００８９】
以上のように、本実施形態においては、圧縮符号化された動画像データは所定のフレームレートでＧＰＵ１０５に転送されるが、グラフィクスデータは主メモリ１０３上に描画され、そのグラフィクスデータの更新時にのみ更新部分だけがＧＰＵ１０５のＶＲＡＭ１０５に転送される。したがって、ＣＰＵ１０１からＧＰＵ１０５へのデータ転送量を大幅に低減することが可能となり、動画像データとグラフィクス画像とをフレーム毎に合成して表示装置に出力すべき表示信号を生成する合成処理をリアルタイムに実行することが可能となる。よって、放送番組データを再生するための専用のハードウェアを設けることなく、ＣＰＵ１０１、ＧＰＵ１０５等のハードウェアを用いるだけで、放送番組データを再生する処理をソフトウェアによって容易に実行することができる。
【００９０】
なお、本コンピュータ１０は、受信された放送番組データをハードディスクドライブ（ＨＤＤ）１１１に格納する録画処理を実行することも可能である。ハードディスクドライブ（ＨＤＤ）１１１に格納されている放送番組データの再生も、上述の再生処理と同じ手順で実行することができる。
【００９１】
また、ＤＶＤタイトルのようなビデオコンテンツも圧縮符号化された動画像データと、スクリプト情報が付加された圧縮符号化されたグラフィクスデータとを含むので、ＤＶＤタイトルのようなビデオコンテンツの再生も上述の再生処理と同じ手順で実行することができる。
【００９２】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００９３】
【図１】本発明の一実施形態に係るコンピュータの概観を示す斜視図。
【図２】図１のコンピュータのシステム構成の例を示すブロック図。
【図３】図１のコンピュータによって放送番組データを再生する場合におけるデータの流れの例を説明するための図。
【図４】図１のコンピュータに設けられた表示コントローラ（ＧＰＵ）によって実行される合成処理の例を説明するための図。
【図５】図１のコンピュータによって実行されるデジタル放送番組データの再生処理の例を示す図。
【図６】図１のコンピュータにおいて実行される、ＣＰＵからＧＰＵへのグラフィクスデータの転送処理の例を説明するための図。
【図７】図１のコンピュータにおいてＣＰＵによって実行される処理とＧＰＵによって実行される処理との関係の例を示す図。
【図８】図１のコンピュータにおいてグラフィクスデータの更新領域のみを主メモリからビデオメモリに転送する処理の例を示す図。
【図９】図１のコンピュータによって実行されるデジタル放送受信ソフトウェアの機能構成の例を示す図。
【図１０】図１のコンピュータによって実行される矩形領域算出処理の例を示す図。
【図１１】図１のコンピュータによって実行される、グラフィクスデータの更新領域を転送する処理の流れを示す図。
【図１２】図１のコンピュータによって実行されるデジタル放送番組再生処理の手順の例を示すフローチャート。
【符号の説明】
【００９４】
１０…コンピュータ、１０１…ＣＰＵ、１０３…主メモリ、１０５…表示コントローラ（ＧＰＵ）、１０５Ａ…ビデオメモリ（ＶＲＡＭ）、１１７…デジタルＴＶチューナ、３０１…デマルチプレクサ、３０２…呈示部、３０３…レンダラー、４０１…合成部、６０１…ビデオデコーダ。
【図１】
0004469788.tif 000002
【図２】
0004469788.tif 000003
【図３】
0004469788.tif 000004
【図４】
0004469788.tif 000005
【図５】
0004469788.tif 000006
【図６】
0004469788.tif 000007
【図７】
0004469788.tif 000008
【図８】
0004469788.tif 000009
【図９】
0004469788.tif 000010
【図１０】
0004469788.tif 000011
【図１１】
0004469788.tif 000012
【図１２】
0004469788.tif 000013