(57)【特許請求の範囲】
【請求項１】
データ・ストリームをビデオ処理装置において処理する方法であって、
（ａ）前記データ・ストリームを受信する工程であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記工程と、
（ｂ）少なくとも１つの前記ヘッダのパラメータに応じて、第１のセクションの組を前記データ・ストリームからフィルタする工程であって、
前記第１のセクションの組が、アプリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記工程と、
（ｃ）前記第１のセクションの組のうちの前記最初のセクションを記憶する工程と、
（ｄ）前記アプリケーションによって定義された所定数のセクションが記憶されるまで、前記少なくとも１つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタする工程であって、
前記アプリケーションによって定義された所定数のセクションは、前記フィルタされた第１のセクションの組からのセクション部分集合であり、
前記セクション部分集合は、前記アプリケーション自体の一部に対応し、前記フィルタされた第１のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ／デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含む、
前記工程と、
を含み、
前記工程（ｄ）は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第１のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶する工程を含み、
前記第１のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも１つのバッファに記憶される、
方法。
【請求項２】
データ・ストリームをビデオ処理装置において処理する方法であって、
（ａ）前記データ・ストリームを受信する工程であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記工程と、
（ｂ）少なくとも１つの前記ヘッダのパラメータに応じて、第１のセクションの組を前記データ・ストリームからフィルタする工程であって、
前記第１のセクションの組が、アプリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記工程と、
（ｃ）前記第１のセクションの組のうちの前記最初のセクションを記憶する工程と、
（ｄ）前記少なくとも１つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタする工程であって、
前記フィルタされたセクションは、前記最後のセクションの受信まで、前記アプリケーションによって定義された所定数のセクションを含むことが可能な循環バッファに記憶され、
前記フィルタされた第１のセクションの組からのセクション部分集合が前記アプリケーション用のメモリにロードされ、
前記セクション部分集合は、アプリケーション自体の一部に対応し、前記フィルタされた第１のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ／デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含む、
前記工程と、
を含み、
前記工程（ｄ）は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第１のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶する工程を含み、
前記第１のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも１つのバッファに記憶される、
方法。
【請求項３】
送信されたデータ・ストリームの複数のセクションを記憶するビデオ処理装置であって、
前記データ・ストリームを受信する手段であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記手段と、
少なくとも１つの前記ヘッダのパラメータに応じて、第１のセクションの組を前記データ・ストリームからフィルタする手段であって、
前記第１のセクションの組が、アプリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記手段と、
前記第１のセクションの組を記憶する手段と、
を含み、
前記フィルタする手段及び前記記憶する手段は、前記アプリケーションによって定義された所定数のセクションが記憶されるまで、前記少なくとも１つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタするよう構成され、
前記アプリケーションによって定義された所定数のセクションは、前記フィルタされた第１のセクションの組からのセクション部分集合であり、
前記セクション部分集合は、前記アプリケーション自体の一部に対応し、前記フィルタされた第１のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ／デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含み、
前記フィルタする手段及び前記記憶する手段は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第１のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶するようにさらに構成されており、
前記第１のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも１つのバッファに記憶される、
ビデオ処理装置。
【請求項４】
送信されたデータ・ストリームの複数のセクションを記憶するビデオ処理装置であって、
前記データ・ストリームを受信する手段であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記手段と、
少なくとも１つの前記ヘッダのパラメータに応じて、第１のセクションの組を前記データ・ストリームからフィルタする手段であって、
前記第１のセクションの組が、アプリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記手段と、
前記第１のセクションの組を記憶する手段と、を含み、
前記フィルタする手段及び前記記憶する手段は、
前記少なくとも１つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタし、
前記最後のセクションの受信まで、前記アプリケーションによって定義された所定数のセクションを含むことが可能な循環バッファに、前記フィルタされたセクションを記憶する、
ように構成され、
前記フィルタされた第１のセクションの組からのセクション部分集合が前記アプリケーション用の前記循環バッファにロードされ、
前記セクション部分集合は、アプリケーション自体の一部に対応し、前記フィルタされた第１のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ／デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含み、
前記フィルタする手段及び前記記憶する手段は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第１のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶するようにさらに構成されており、
前記第１のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも１つのバッファに記憶される、
ビデオ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データのセクションの他にビデオおよびオーディオ・テレビ・データを含むMPEGビットストリームのような伝送データ・ストリームの一つまたはそれ以上のセクションを記憶する装置および方法に関する。
【背景技術】
【０００２】
テレビ信号を放送することを主として意図されたデジタル送信システム、これに限定するものではないが特に衛星テレビ・システムの出現は、他の目的とするこの種のシステムを使用する可能性を開いた。その一つがエンド・ユーザとの相互活動を提供することである。
【０００３】
これを実行する一つの方法は、テレビ信号が受信されるレシーバ／デコーダ上でアプリケーションを実行することである。アプリケーションのためのコードは、レシーバ／デコーダに永久的に記憶される。しかし、これはかなり限定されることになる。好ましくは、レシーバ／デコーダは必要とされるアプリケーションのためにコードをダウンロードできなければならない。このようにして、より幅広い範囲の方法が提供でき、また、アプリケーションが、必要に応じて、ユーザ側で何の操作も必要としないでアップデートできる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
コンピュータ・システムにおいて、特にコンピュータ・システムがデジタル・テレビのためのレシーバ／デコーダのような特定の大型システムに組み込まれているシステムにおいて、メモリ量がしばしば制限される。これはシステムによって必要とされる種々の機能によるメモリ・スペースの使用が最小にされるようにメモリを編成しなければならないことを意味している。さらに、メモリの少なくともある一定部分にアクセスするのに必要とする時間を最短にすることも必要である。
【課題を解決するための手段】
【０００５】
従って、本発明は特にこれに限定するものではないが、特にアプリケーションによって必要とされるデータのみをレシーバ／デコーダのメモリへダウンロードすることに関する。
【０００６】
第１の態様において、本発明は伝送データ・ストリームの複数のセクションの少なくとも一つを記憶する方法を提供し、前記一つセクションが少なくとも一つのセクション特性を有しており、前記方法が、
データ・ストリームを受信する工程と；
少なくとも前記一つのセクション特性に従って前記データ・ストリームから前記一つのセクションをフィルタする工程と；
前記一つのセクションを記憶する工程と；
からなる。
【０００７】
このフィルタ工程はレシーバ／デコーダのメモリへロードされるべきアプリケーションによって必要とされるセクションのみに実行される。
【０００８】
この好ましい実施態様において、フィルタ工程が、各特性がフィルタ基準とそのフィルタ基準のための値とからなる少なくとも一つのフィルタ特性を特定する工程と；
各セクション特性を各フィルタ特性と比較する工程と；
各セクション特性がそれぞれのフィルタ特性に対応したときに、前記一つのセクションを前記データ・ストリームからフィルタする工程と；
を含んでいる。
【０００９】
本発明の第２の態様は、上述の方法を使用する伝送データ・ストリームの複数のセクションを記憶する方法を提供し、各セクションはそれぞれのメモリ・ロケーションに記憶される。
【００１０】
この方法がさらに、各データ・フィルタ特性がデータ操作基準とそのデータ・フィルタ基準のための値とからなる少なくとも一つのデータ・フィルタ特性を特定する工程と；
各記憶されたセクション中に記憶されたデータをそれぞれのデータ・フィルタ特性と比較する工程と；
その記憶されたセクション中に記憶された前記データがそれぞれのデータ・フィルタ特性に対応していないときは、前記記憶されたセクションを前記メモリに置換できるようにする工程と；
をさらに含んでいることが好ましい。
【００１１】
前記記憶されたセクションに記憶されたデータが各々のデータ・フィルタ特性に対応している時、セクション識別信号をアプリケーションに供給する工程をさらに含んでいることが好ましい。
【００１２】
セクション識別信号は前記一つのセクションの記憶アドレスからなるのが好ましい。
【００１３】
第３の態様において、本発明は上述の方向によるセクションのグループを記憶する方法を提供し、前記セクションが周期的に前記データ・ストリームに伝送され、各グループが第１セクションと最終セクションを含んでおり、前記方法が、
第１セクションを記憶する工程と；
前記第１セクションの直後に連続して伝送されたセクションを後でダウンロードし、前記最終セクションがダウンロードされるか、または所定数のセクションが記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と；
を含んでいる。
【００１４】
第４の態様において、本発明は上述の方法によりセクションのグループを記憶する方法を提供し、前記セクションが周期的に前記データ・ストリームに伝送され、前記グループが第１セクションと最終セクションを含み、前記方法が、
第１セクションをダウンロードする工程と；
前記第１セクションの直後に連続して伝送されたセクションを続いてダウンロードし、前記最終セクションがダウンロードされるか、またはメモリ・ロケーション中に記憶されたセクションが、前記最終セクションがダウンロードされるまで続いてダウンロードされることによって連続して上書きされて所定数のセクションが記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と；
前記最終セクションを前記メモリに記憶する工程と；
を含んでいる。
【００１５】
第５の態様において、本発明はデータ・ストリーム中に周期的に伝送されたセクショングループを記憶する方法を提供し、前記グループは第１セクションと最終セクションを含んでおり、前記方法が、
第１セクションをダウンロードし、これをメモリに記憶する工程と；
前記第１セクションの直後に連続して伝送されたセクションを続いてダウンロードし、前記最終セクションがダウンロードされるか、または所定数のセクションが前記メモリに記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と；
を含んでいる。
【００１６】
第６の態様において、本発明は前記データ・ストリーム中に周期的に伝送されたセクションのグループを記憶する方法を提供し、前記各グループが第１セクションと最終セクションを含んでおり、前記方法が、
データ・ストリームを受信する工程と；
第１セクションをダウンロードする工程と；
前記第１セクションの直後に連続して伝送されたセクションを続いてダウンロードし、前記最終セクションがダウンロードされるか、またはメモリ・ロケーション中に記憶されたセクションが、前記最終セクションがダウンロードされるまで続いてダウンロードされることによって連続して上書きされて所定数のセクションが記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と；
前記最終セクションを前記メモリに記憶する工程と；
を含んでいる。
【００１７】
本発明の上述の第３から第６の態様により、セクションのグループから必要とされるこれらのセクションのみがレシーバ／デコーダのメモリに記憶される。例えば、仮に特定時間に放送するためにスケジュールの組まれた三つのテレビ・プログラムのリストを第３および第５の態様で見たときに、グループの最初の四つのセクションのみがデータ・ストリームからダウンロードされ、エンド・ユーザがリストを迅速にスクロール・ダウンでき、その時刻に示された最終プログラムから開始できる。第４および第６の態様により、グループの最後の四つのセクションのみがデータ・ストリームからダウンロードされ、エンド・ユーザがリストを迅速にスクロール・ダウンでき、その時刻に示された第１プログラムから開始でき、レシーバ／デコーダのメモリを最小にすることができる。
【００１８】
第７の態様において、本発明は伝送データ・ストリームの複数のセクションの少なくとも一つを記憶する装置を提供し、前記一つのセクションが少なくとも一つのセクション特性を有しており、前記装置が、
データ・ストリームを受信する手段と；
少なくとも前記一つのセクション特性に従って前記データ・ストリームから前記一つのセクションをフィルタする手段と；
前記一つのセクションを記憶する手段と；
を含んでいる。
【００１９】
前記フィルタ手段が、各特性がフィルタ基準とそのフィルタ基準のための値とからなる少なくとも一つのフィルタ特性を特定する手段と；
各セクション特性を各フィルタ特性と比較する手段と；
各セクション特性がそれぞれのフィルタ特性に対応したときに、前記一つのセクションを前記データ・ストリームからフィルタする手段と；
を含んでいるのが好ましい。
【００２０】
第８の態様において、本発明はそのような複数のセクションをダウンロードする装置を提供し、前記記憶手段は各セクションを記憶する複数のメモリ・セクションからなる。
【００２１】
本装置はさらに、各データ・フィルタ特性がデータ操作基準とそのデータ・フィルタ基準のための値とからなる少なくとも一つのデータ・フィルタ特性を特定する手段と；
各記憶されたセクション中に記憶されたデータをそれぞれのデータ・フィルタ特性と比較する手段と；
その記憶されたセクション中に記憶された前記データがそれぞれのデータ・フィルタ特性に対応していないときは、前記記憶されたセクションを前記メモリに置換できるようにする手段と；
をさらに含んでいるのが好ましい。
【００２２】
本装置はまた前記記憶されたセクション中に記憶された前記データが前記各フィルタ特性に対応しているとき、セクション識別信号をアプリケーションに供給する手段をさらに含んでいる。
【００２３】
上述の方法および装置は、前記セクションの他にビデオおよびオーディオ・テレビ・データを含むMPEGビットストリームの形態中のこの種のデータ・ストリームを使用することができる。
【発明を実施するための最良の形態】
【００２４】
本発明の好ましい特徴は、添付図面を参照して例としてのみここに説明する。
【実施例】
【００２５】
図１はデジタル・テレビ1000の全体を示している。本発明は、圧縮したデジタル信号を送信するために従来のMPEG-2圧縮システムを利用する、ほぼ従来のデジタル・テレビ・システム2000を備えている。さらに詳細には、ブロードキャストセンター内のMPEG-2圧縮器2002がデジタル信号ストリーム（一般にはビデオ信号のストリーム）を受信する。圧縮器2002は、リンケージ2006によってマルチプレクサ、スクランブラ2004と接続している。マルチプレクサ2004は、複数の入力信号をさらに受信し、１つ以上のトランスポートストリームをアセンブルし、圧縮したデジタル信号を、リンケージ2010を介してブロードキャストセンターのトランスミッタ2008に送信する。もちろん、テレコムリンクを含む幅広い様々な形態をとることができる。トランスミッタ2008は、アップリンク2012を介して、電磁気信号をサテライトトランスポンダ2014へと送信し、ここで、地上レシーバ2018に、通常、エンド・ユーザが所有またはレンタルしている受信アンテナの形態である概念上のダウンリンク2016を介して、電磁気信号が電子的に処理およびブロードキャストされる。レシーバ2018が受信した信号は、エンド・ユーザが所有またはレンタルし、エンド・ユーザのテレビ・セット2022に接続された内蔵レシーバ/デコーダ2020に送信される。レシーバ/デコーダ2020は、圧縮されたMPEG-2信号をテレビ・セット2022のテレビ信号に復号する。
【００２６】
条件付きアクセスシステム3000はマルチプレクサ2004、レシーバ/デコーダ2020と接続しており、一部がブロードキャストセンター内に、別の一部がデコータ内に配置されている。これによりエンド・ユーザは、１つ以上のブロードキャストサプライヤからのデジタル・テレビブロードキャストへアクセスすることが可能である。レシーバ/デコーダ2020内に、コマーシャルオファー（すなわち、そのブロードキャストサプライヤが販売した１つまたは複数のテレビ・プログラム）に関連したメッセージを解読できるスマートカードを挿入することができる。デコーダ2020とスマートカードを使用して、エンド・ユーザは、購読モードまたは有料視聴モードで、コマーシャルオファーを購入できる。
【００２７】
相互作用システム4000もまた、マルチプレクサ2004、レシーバ/デコーダ2020と接続しており、やはり一部がブロードキャストセンター内に、別の一部がデコーダ内に配置されているので、エンド・ユーザは、モデムに繋がれたバックチャネル4002を介して多くのアプリケーションと対話することができる。
【００２８】
図２は、本発明によるデジタル・テレビ・システム1000の相互作用テレビ・システム4000の一般的な構成を示すものである。
【００２９】
例えば、相互作用システム4000によって、エンド・ユーザは、持っているテレビ・セットを介して画面上のカタログからの商品の購入や、必要に応じてローカルニュースや天気予報を観ることや、ゲームで遊ぶことが可能になる。
【００３０】
相互作用システム4000は、全体で以下の４つの主な要素を備えている。
【００３１】
オーサリングツール4004であり、ブロードキャストセンター（または他の場所）にあり、ブロードキャストサプライヤはこれを使用してアプリケーションの作成、開発、デバッグ、テストを行える；
アプリケーションおよびデータ・サーバ4006であって、ブロードキャストセンターにあり、オーサリングツール4004と接続しており、エンド・ユーザに向けて同報通信を行うために、ブロードキャストサプライヤはこれを使用して、アプリケーションとデータをMPEG-2伝送ストリーム（一般にはその専用セクション）に挿入するべくマルチプレクサおよびスクランブラ2004へ伝達するために、準備し、認証し、フォーマットすることができる；
実行時エンジン（RTE）4008を備えたバーチャル・マシンであって、これは、エンド・ユーザが所有またはレンタルしているレシーバ/デコーダ2020内にインストールされた実行可能なコードであり、エンド・ユーザはレシーバ/デコーダ2020の稼動メモリ2024内に実行のためにアプリケーションを受信し、認証し、圧縮を解除し、ロードすることができる。エンジン4008はまた、常駐の、汎用アプリケーションを実行する。エンジン4008はハードウェアおよびオペレーティングシステムから独立している；
レシーバ/デコーダ2020と、アプリケーションおよびデータ・サーバ4006との間においてモデムで繋がれたバックチャネル4002であり、これにより、エンド・ユーザの要求に応じて、信号に、サーバ4006にデータとアプリケーションをMPEG-2伝送ストリームに挿入するように指示することが可能になる。
【００３２】
相互作用テレビ・システムは、システムに内蔵されたレシーバ/デコーダおよび様々な装置の機能を制御する「アプリケーション」を使用して動作する。アプリケーションはエンジン4008内で「リソースファイル」として表されている。「モジュール」は、リソースファイルとデータのセットである。１つのアプリケーションを構成するためには数個のモジュールが必要である。レシーバ/デコーダの「メモリボリューム」とはモジュールのための記憶スペースである。「インターフェイス」は、モジュールをダウンロードするために使用される。モジュールは、MPEG-2伝送ストリームからレシーバ/デコーダ2020内にダウンロードすることもできる。
【００３３】
次に、前述の文章で挙げたこれらの要素についてより詳細に説明する。
【００３４】
本明細書の目的のために、アプリケーションは、好ましくはレシーバ/デコーダ2020の高レベル機能を制御する１つのコンピュータコードであるとする。例えば、エンド・ユーザが、遠隔コントローラの焦点をテレビ・セット2022の画面上のボタンオブジェクト上に配置し、検証キーを押す際に、そのボタンに関連した指示シーケンスが実行される。
【００３５】
相互作用アプリケーションはメニューを提示し、エンド・ユーザの要求に応じてコマンドを実行し、アプリケーションの目的に関連したデータを提供する。アプリケーションは、レシーバ/デコーダ2020のROM（またはFLASH、あるいはその他の非揮発性メモリ）内に記憶されているか、もしくはレシーバ/デコーダ2020のRAMまたはFLASHメモリにブロードキャストおよびダウンロードされた常駐アプリケーションであってよい。
【００３６】
アプリケーションの例を以下に示す。
● 開始アプリケーション。レシーバ／デコーダ２０２０が、モジュールの適応可能なコレクション（この用語については後に詳細に説明する）である常駐開始アプリケーションを備えている。モジュールの適応可能なコレクションは、レシーバ／デコーダ２０２０をＭＰＥＧ−２環境で即時動作可能にする。アプリケーションは、所望であればブロードキャストサプライヤによって変更が可能なコア特性を備えている。また、コア特性は常駐アプリケーションとダウンロードしたアプリケーションの間のインターフェイスを提供する。
● スタートアップアプリケーション。スタートアップアプリケーションは、ダウンロードしたまたは常駐のいずれであってもよいアプリケーションをレシーバ／デコーダ２０２０上で実行する。このアプリケーションは、アプリケーションを開始するために、サービスが到着すると実行されるブートストラップとして働く。スタートアップはＲＡＭ内にダウンロードされるため、アップデートが容易に行える。またスタートアップを、ダウンロードの直後、またはプリロードの後のいずれかに、各チャネルで使用可能な相互作用アプリケーションの選択および実行が可能であるように構成することも可能である。プリロードの場合には、アプリケーションはメモリ２０２４内にロードされ、必要に応じてスタートアップによって起動することが可能である。
● プログラムガイド。プログラムガイドは、プログラミングについての完全な情報を提供する相互作用アプリケーションである。例えば、プログラムガイドは、デジタルＴＶブーケの各チャネルに割当てられた１週間のＴＶプログラムについての情報を提供する。遠隔コントローラ２０２６上のキーを押すと、エンド・ユーザは、テレビ・セット２０２２の画面上にある事象の上にオーバレイされたアッドオン画面にアクセスできる。このアッドオン画面は、デジタル・テレビ・ブーケの各チャネルの現在および次の事象についての情報を提供するブラウザである。遠隔コントローラ２０２６上の別のキーを押すと、エンド・ユーザは、１週間にわたる事象についての情報のリストを表示するアプリケーションにアクセスできる。さらにエンド・ユーザは、単純でカストマイズされた基準で事象の検索およびソートが行える。また、選択したチャネルに直接アクセスすることができる。
● 番組有料視聴制アプリケーション。番組有料視聴制アプリケーションは、条件付きアクセスシステム３０００と速結したデジタル・テレビ・ブーケの各ＰＰＶチャネル上で利用可能な相互作用サービスである。エンド・ユーザは、ＴＶガイドまたはチャネルブラウザを使ってこのアプリケーションにアクセスすることができる。さらに、このアプリケーションはＰＰＶチャネル上でＰＰＶ事象が検出され次第、自動的に開始する。エンド・ユーザは、ドータースマートカード３０２０または通信サーバ３０２２（モデム、電話、ＤＴＭＦコード、ＭＩＮＩＴＥＬ等を使用）を介して現行の事象を購入することができる。アプリケーションは、レシーバ／デコーダ２０２０のＲＯＭ内に常駐するもの、またはデコーダ２０２０のＲＡＭ内にダウンロード可能なもののいずれかであってよい。
● ＰＣダウンロードアプリケーション。要求すれば、エンド・ユーザはＰＣダウンロードアプリケーションを使ってコンピュータソフトウェアをダウンロードすることができる。
● マガジンブラウザアプリケーション。マガジンブラウザアプリケーションは、オンスクリーンボタンを介したエンド・ユーザナビゲーションを備えた画像の巡回ビデオブロードキャストを有する。
● クイズアプリケーション。クイズアプリケーションはブロードキャストクイズプログラムと同期することが好ましい。１例として、テレビ２０２２の画面上に多項式選択の質問が表示されるので、ユーザは遠隔コントローラ２０２６を使って答えを選択できる。クイズアプリケーションは、その答えが正解であるかどうかをユーザに知らせることができ、また、ユーザの点数をカウントすることができる。
● テレショッピングアプリケーション。テレショッピングの１例において、販売される商品のオファーがレシーバ／デコーダ２０２０に転送され、テレビ２０２２上に表示される。遠隔コントローラを使って、ユーザは購入する特定のアイテムを選択できる。そのアイテムの注文が、モデムで繋がれたバックチャネル４００２を介してアプリケーションおよびデータ・サーバ４００６へと送信されるか、あるいは、個別の販売システムへと送信される。この販売システムの電話番号は、レシーバ／デコーダ２０２０のカードリーダ４０３６の１つに挿入されたクレジットカードに勘定を付ける旨の命令と共にレシーバ／デコーダにダウンロードされている。
● テレバンキングアプリケーション。テレバンキングの１例において、ユーザは、レシーバ／デコーダ２０２０のカードリーダ４０３６の１つに銀行カードを挿入する。するとレシーバ／デコーダ２０２０が、銀行カードに、またはレシーバ／デコーダに記憶された電話番号を使ってユーザの銀行を呼出し、アプリケーションが複数の機能を提供するので遠隔コントローラ２０２６を使って選択を行う。この機能には、例えば、電話回線を介した預金口座収支報告のダウンロード、預金口座の間での資金の送金、小切手帳の要求等がある。
● インターネットブラウザアプリケーション。インターネットブラウザアプリケーションの１例において、特定のＵＲＬのウェブページを見たいというようなユーザからの指示が、遠隔コントローラ２０２６を使って入力され、これらの指示が、モデムで繋がったバックチャネル４００２によってアプリケーションおよびデータ・サーバ４００６へ送信される。すると、ブロードキャストセンターからの送信に適切なウェブページが含まれ、この送信がアップリンク２０１２、トランスポンダ２０１４、ダウンリンク２０１６を介してレシーバ／デコーダ２０２０によって受信され、テレビ２０２２上に表示される。
【００３７】
アプリケーションは、受信機／デコーダ２０２０のメモリ位置に記憶され、資源ファイルとして示される。資源ファイルは、グラフィックオブジェクト記述ユニットファイルと、可変ブロックユニットファイルと、命令シーケンスファイルと、アプリケーションファイルと、データ・ファイルとを備えている。
【００３８】
グラフィックオブジェクト記述ユニットファイルは、アプリケーションのスクリーン、すなわちアプリケーションのマンマシンインタフェースを記述する。可変ブロックユニットファイルはアプリケーションによって処理されるデータ構造を記述する。命令シーケンスファイルはアプリケーションの処理動作を記述する。このアプリケーションはアプリケーションに対するエントリポイントを備えている。
【００３９】
このように構成されたアプリケーションは、アイコンライブラリファイル、イメージファイル、文字フォントファイル、カラーテーブルファイルおよびＡＳＣＩＩテキストファイルのようなデータ・ファイルを使用できる。相互作用アプリケーションは、入力および／または出力を行うことによってオンラインデータも得ることができる。
【００４０】
エンジン４００８は、所与の時間で必要とするこれらの資源ファイルをそのメモリにロードするだけである。これらの資源ファイルは、グラフィックオブジェクト記述ユニットファイル、命令シーケンスファイルおよびアプリケーションファイルから読み取られる。可変ブロックユニットファイルは、モジュールをロードする手順に対する呼び出しに続いてメモリに記憶され、モジュールをロード解除する手順に対する特定の呼び出しが行われるまで、そこにロックされたままである。
【００４１】
図３を参照すると、電話ショッピングのようなモジュール４０１０は、下記のことを含む資源ファイルおよびデータのセットである。
【００４２】
単一アプリケーションファイル４０１２
未決定数のグラフィックブロックユニットファイル４０１４
未決定数の可変ブロックユニットファイル４０１６
未決定数の命令シーケンスファイル４０１８、および
必要に応じて、アイコンライブラリファイル、イメージファイル、文字フォントファイル、カラーテーブルファイルおよびＡＳＣＩＩテキストファイルのようなデータ・ファイル４０２０。
【００４３】
MPEGデータ・ストリームにおいて、各モジュールはMPEGテーブルのグループを１つ備えている。各MPEGテーブルは、いくつかのセクションとしてフォーマットされうる。MPEGデータ・ストリームにおいて、各セクションは最大４キロバイトの「サイズ」を有する。シリアルおよびパラレルポートを介したデータの伝送には、例えば、同種のモジュールがテーブルとセクションに分割され、また、セクションのサイズは伝送する媒体によって異なる。
【００４４】
モジュールは、例えば、ビデオデータ・ストリーム、オーディオデータ・ストリーム、テレテキストデータ・ストリームのようなデータ・ストリームの関連するタイプ内において一般に188バイトのパケットの形式で、MPEGデータ・ストリーム内に伝送される。各パケットは13ビットのパケット識別子（PID）を前に付けており、PIDは、MPEGデータ・ストリーム内で伝送されるパケット毎に１つである。プログラムマップテーブル（PMTテーブル）は、異なるデータ・ストリームのリストを備え、各データ・ストリームの内容を関連するPIDに従って定義する。PIDは、データ・ストリーム内にアプリケーションが存在することを装置に知らせることができ、この場合、PIDはPMTテーブルを使って識別されている。
【００４５】
図４を参照して、各セクション4300は典型的に次のフィールドを含んでいる：
テーブルＩＤ（ＴＩＤ）4302、典型的にセクション4300の始めにおいて１バイトのサイズを有している；
セクションの長さ識別子4304、典型的に２バイトのサイズを有している；
テーブル中のそのセクション番号（ＳＮ）4306（eg.1）、ＳＮが典型的に１バイトのサイズを有している；
テーブル中のセクションの総数（ＬＳＮ）4308（eg.3）、ＬＳＮが典型的に１バイトのサイズを有している；
ＴＩＤエクステンション4310、典型的に２バイトのサイズを有している；
プライベイト・データ4312；および、
セクション4300のＣＲＣ4314。ＣＲＣ4314の目的は、セクション4300中のバイトを全てチェックすることであり、CRC4314が先行データの全てと相関関係があれば、セクションはレシーバ／デコーダ2020によって許容される。同様に、プライベイト・データ・フィールド4312は、そのフィールドの末尾にあり、そのフィールド4312の先行内容全てから算出されるＭＤ５サインを含み得る。
【００４６】
直列または並列インターフェイスを介して受信されたデータに関して、セクションのフィールドは変化する。典型的に前述のインターフェイスのいずれかを介して受信されたセクションは、フィールド4302から4310中の、低減された量のデータからなり、ＣＲＣ4314はない。
【００４７】
特定モジュール／テーブルのために、このテーブルを構成するセクションの全ては同じＴＩＤ4302と同じＴＩＤエクステンション4310を有している。特定のアプリケーションのために、そのアプリケーションを形成するテーブル全ては同じＴＩＤを有しているが、異なる別々のＴＩＤエクステンションである。
【００４８】
例えば、MPEGビットストリームからモジュール4010へアクセスするためには、モジュールのためのＰＩＤとモジュール・ディレクトリの両方が必要である。このディレクトリは単にキャリア信号からダウンロードできるモジュール4010をリストするだけである。一旦このディレクトリがダウンロードされると、アプリケーションに対して一つのまたはそれ以上のモジュール4010をダウンロードすることが可能である。
【００４９】
少量のコードをダウンロードするコンセプトと一緒にモジュール4010のコンセプトは、アプリケーションの容易な展開を許容する。これらは、常駐ソフトとしてレシーバ／デコーダ2020の永久FLASHメモリにダウンロードすることができ、エンド・ユーザによって必要とされたときにのみ、デコーダ2020のＲＡＭにダウンロードするために放送（broadcast）することもできる。
【００５０】
メモリ容量はモジュール4010のための記憶スペースである。この種の記憶スペースはレシーバ／デコーダ2020のメモリ2024中に配備されている。図５を参照して、メモリ2024は典型的にＲＡＭ容量4022、FLASH容量4024およびＲＯＭ容量4026に分割される。メモリはモジュールがレシーバ／デコーダ2020に、例えばMPEGビットストリームからダウンロードされるモジュールを記憶するためのMPEG容量およびシリアル・インターフェイスを介して受信されたモジュールを受信するためのシリアル容量のようなレシーバ／デコーダ2020にダウンロードされるモジュールを介して種々のインターフェイスに関連するメモリ容量にさらに分割される。
【００５１】
次に、ＲＡＭ容量4022が、ファームウェアへの専用のゾーン、エンジン4008のためのワーキング・スペースおよびバッファに分割される。FLASHおよび他の不揮発性メモリがデバイス・マネージャを介してアプリケーションまたはエンジン自体のいずれかによってアクセスできる。
【００５２】
各容量はモジュール4010のリストを含み、各モジュール4010はファイル4012、4014、4016、4018、4020のリストを含んでいる。同じ名前のついた二つのファイルをもたせることができ、また、別個のモジュールに配備することもできる。例えば、アプリケーションのバージョンは典型的にＲＯＭ容量4026に記憶され、後者のバージョンはFLASH容量4024にダウンロード可能で、FLASH容量4024に記憶されたバージョンの代わりにＲＯＭ容量に記憶されたバージョンと置換される。ファイルの内容はＬＺＷフォーマットに圧縮されるが、ファイルの解凍は、ある一定時間かかるので、解凍されたフォーマットで受信することができる。
【００５３】
レシーバ／デコーダ2020の物理的インターフェイスは、データをダウンロードするために使用される。図６を参照して、レシーバ／デコーダ2020は、例えば、６個のダウンロードする媒体、すなわち、MPEGフロー・チューナ4028、シリアル・インターフェイス4030、パラレル・インターフェイス4032、モデム4034および二つのカード読取装置4036を含んでいる。
【００５４】
複数のアプリケーションソースとレシーバ／デコーダ2020の複数の製作ソースにより、一つのアプリケーションは全てのレシーバ／デコーダにおいて同じように機能し、各レシーバ／デコーダは同じように正しい方法で全てのアプリケーションを実行しなければならない。図７を参照して、レシーバ／デコーダ2020はマイクロプロセッサの制御と共通のアプリケーション・プログラミング・インターフェイス4054の制御下で実行する実行時間エンジン4008からなる。これらは全てのレシーバ／デコーダ2020に設けられていて、全てのレシーバ／デコーダ2020がアプリケーションの局面から同一である。
【００５５】
図７はアプリケーション4056を実行するためのレシーバ／デコーダ2020のアーキテクチャを示す。バーチャル・マシン4007がアプリケーション4056を実行し、これは例えばMPEGデータ・ストリームからレシーバ／デコーダ2020にダウンロードされたバーチャル・マシンまたはアプリケーション4056”に直接接続されたアプリケーション4056’から構成できる。実行時間エンジン4008はグラフおよびテキストを表示し、サービスのためのデバイスをコールし、「イベント」を受信し、特定計算のためのライブラリ4058の機能を使用する。
【００５６】
図７を参照して、アプリケーションに関して、デコーダ2020の機能はデバイス4060として「見られる」。従って、これらはどのアプリケーションによっても見られないレシーバ／デコーダ2020の機能である。
【００５７】
デバイス4060は、ハードウェア4066の要素4062または物理的インターフェイス4064に対応できる論理デバイス・ユニットからなる。この種のデバイスは、「低いレベルのデバイス」4068と見なされる。この種のデバイス4068の出力は、デバイス4068によって論理信号出力を、例えばハードウェア・インターフェイス4064を実行するのに必要とする信号に変換するための少なくとも一つのデバイス・ドライバ4070に接続することができる。別の方法として、デバイス4068はそれ自体レシーバ／デコーダ2020の要素ないしインターフェイスを駆動してもよい、すなわち、デバイスの出力がハードウェア4066に直接接続されてもよい。
【００５８】
低いレベルのデバイス4068の例を次に説明する。
【００５９】
LCARDデバイスは、プログラムが、一つのスマートカード読取装置4036中に含まれたスマートカードと通信することを可能にし、また、RCARDデバイスは、プログラムが、他のスマートカード読取装置4036中に含まれたスマートカードと通信することを可能にする。例えば、これらのデバイスはプログラムをカードの状態で読み取れるようにし、カード履歴を読み取り、また、入力メッセージをカードに送れるようにすることができる。これらのデバイスは、また、読取装置へカードが挿入された旨、読取装置からカードを取り出された旨、および、カードがリセットされた旨（プログラムによって要求されない場合）をプログラムに通知する。LCARDおよびRCARDデバイスはカードを実行するために使用されるプロトコルに固有である。典型的に、ＩＳＯ7816プロトコルが使用される。
【００６０】
ＳＣＴＶデバイスは、テレビ・セット2022へのスカート（定順位自動送信方式）（SCART）アウトレットの検証及び構成をプログラムが行うことを可能にする。例えば、このデバイスは、プログラムが、スカート・アウトレットのサウンド特性に関する情報をリクエストし、サウンドに「ミュート」を実行し、またＲＧＢレベルをダイナミックにプログラムすることを可能にする。
【００６１】
TUNERデバイスは、プログラムがチューナ4028を使用することを可能にする。例えば、このデバイスは、プログラムが最小周波数か、またはチューナの現周波数のいずれかから走査を実行し、チューナ・パラメータを読み取り、またチューナをプログラムすることを可能にする。
【００６２】
SERIALデバイスは、プログラムがシリアル・リンクを介して装置と通信することを可能にし、またPARALLELデバイスは、プログラムがパラレル・リンクを介して装置と通信することを可能にする。例えば、これらのデバイスは、プログラムが各リンクを介してメッセージを送り、またそのリンクを介してメッセージが受信された旨をプログラムに通知する。
【００６３】
MODEMデバイスは、レシーバ／デコーダが、Ｖ２３を支持する内部半２重モデムを介してデータ・サービスと通信することを可能にする。このMODEMデバイスは番号のダイアリングと、メッセージのデータ・サーバへの送信と、モデムの断続と、メッセージの信号受信と、キャリアの検出または喪失およびエラーの検出をリクエストする。
【００６４】
遠隔位置で実行される遠隔デバイスは、ポートおよびプロトコルが規定されなければならないことを除いて、どのローカル・デバイスともなりうる。
【００６５】
「低レベル・デバイス」に加えて、レシーバ／デコーダ2020は、レシーバ／デコーダ2020の動作を制御する「高レベル・デバイス」を含めることもできる。
【００６６】
MPEGデータ・ストリームからロードされたセクションに関して、「MLOADデバイス」といわれるデバイス4072は、一つのアプリケーションが、MPEGセクション、完全なMPEGテーブルまたはハードウェアおよびソフトウェア・フィルタ基準に対応するMPEGセクションのグループにロードすることを可能にする。
【００６７】
図８を参照して、電磁信号がレシーバ2018によって受信され、MPEGチューナ4028に送信される。チューナは典型的にはある周波数の範囲を走査し、キャリア周波数がその範囲内で検出されたときにのみ停止する。そうして検出された信号は復調器4500に送信され、ここで信号が復調され、この信号がデマルチプレクサ4502に送信される。このデマルチブレクサ4502はMPGEチップ4504に接続される。MPGEチップ4504は同様に、テレビ2022に接続される。デマルチプレクサ4502は、レシーバ／デコーダ2020のＲＡＭ容量4022に接続されている３２個の出力まで典型的に提供されるハードウェア・フィルタ4506にも接続されている。
【００６８】
デマルチプレクサ4502によって受信された電磁信号は、データ・パケットの多数のデータ・ストリームを含み、典型的には放送供給者によって提供されるサービスのためのビデオ・パケットのストリーム、オーディオ・パケットのストリーム、テレテキスト・パケットのストリームおよびサブタイトル・パケットのストリームからなる。これらのデータ・パケットは、テレビ・セット2022のための信号にデコードするためにデマルチプレクサ4502によってデマルチプレックスされ、MPEGチップ4504に伝送される。
【００６９】
アプリケーションに関するデータ・パケットはハードウェア・フィルタ4506に伝送される。図９を参照して、ハードウェア・フィルタないしプリフィルタ4506は、データ・ストリームのセクション4508の典型的には８バイトのうち一つまたはそれ以上、典型的にはオフセット・バイト０（4150）およびオフセット・バイト３から９（4512）を使用して、データ・ストリームからのセクションをフィルタする。これらのバイトはＴＩＤ4302、セクション番号4306、最終セクション番号4308およびMPEGセクション4508のＴＩＤエクステンション4310を含んでいる。
【００７０】
ハードウェア・プリフィルタ特性を規定するために、アプリケーションは、セクション4508のどのビットを考慮するか、また各選択されたビットの予想値を特定付ける。従って、ハードウェア・プリフィルタ4506はフィルタ・マスク・アレイ4514およびフィルタ値アレイ4516それぞれからなり、各例は図１０に示す。図１０において、ビット4518、4520および4522はフィルタ・マスク4514を使用して選択され、またこれらのビットのそれぞれの値（０、１および０）がフィルタ値4516を使用して選択される。これらのフィルタの基準により、MPEGセクション4524はレシーバ／デコーダ2020のRAM4022のバッファへ出力され、ここでMPEGセクション4526はバッファへ出力されない。
【００７１】
ハードウェア・プリフィルタ4506は、メイン・プロセッサ内でのプロセッサ電力の浪費を回避してデマルチプレクサ・チップによって操作される。
【００７２】
マイクロプロセッサは、そのセクションがソフトウェア・フィルタ4526として記憶されているレシーバ／デコーダ2020のＲＡＭ4022を利用できる。ソフトウェア・フィルタ4526により、ＲＡＭ容量4022のバッファ中にロードされたどのセクションがアプリケーションに入ることになるか選択することができる。
【００７３】
ソフトウェア・フィルタの原理は、ハードウェア・フィルタの原理と類似している。ソフトウェア・フィルタ4526は、MPEGセクション4508中のデータの典型的には８個の連続したバイト4528を使用する。図１１に示したように、これらの８個の連続するバイトの第１バイト4530の位置は、セクション4508中の第１バイト4510に基づいたオフセット4532で規定される。
【００７４】
ハードウェア・フィルタを介してロードされた後、MPEGセクション中に記憶されたデータがソフトウェア・フィルタのための基準に対応していない場合、MPEGセクションが記憶されたバッファが、他のMPEGセクションをロードするのに使用できる。
【００７５】
MPEGデータ・ストリームからMPEGセクションをロードするために、MLOADデバイスは典型的に次の情報を受ける。
【００７６】
MPEGセクションが見いだされるデータ・ストリームのＰＩＤ；
ＰＩＤをデスクランブルするための多数のＰＩＤ ＥＣＭからなるデスクランブル・データ・アレイ；
ＰＩＤをデスクランブルするのに使用される特定ＥＣＭを認識するオペレータ基準；
適用されるべきハードウェア・フィルタ値アレイ；
適用されるべきハードウェア・フィルタ・マスク・アレイ；
適用されるべきソフトウェア・オフセット値；
適用されるべきソフトウェア・フィルタ値アレイ；
適用されるべきソフトウェア・フィルタ・マスク・アレイ；
セクションの最大サイズ（4096バイトまで）；および
どれだけ長くデバイスがセクションへ、セクションのグループへまたはテーブルにロードするのに待つか決定するタイムアウト機能。
【００７７】
セクションの最大サイズが５１２バイトを示しているとき、セクションのサイズは５１２バイトを超えることはできない。
【００７８】
セクションは、デバイスによって割り当てられたＲＡＭ容量4022のバッファに一度に全てロードされる。セクションがロードされたときに、また、これがソフトウェア・フィルタ基準に対応していれば、デバイスはデマルチプレキシング・ルートを開放し、実行レポートとセクションを含んでいるバッファのアドレスとを含む「イベント」を介してアプリケーションに通知しなければならない。ロード後、セクションはそれが記憶されたバッファのアドレスによって識別される。
【００７９】
テーブルがロードされたときに、デバイスはＴＩＤ4302も受ける。テーブルの各セクションは、これに割り当てられた各バッファ全てに一度にロードされる。しかし、テーブルはセクションの端から端まで、またセクションの順番に進めることによってロードすることが必須ではない。テーブルの各セクションがロードされるにつれて、デバイスはテーブルのセクションがロードされたことをアプリケーションに通知することになる。別の方法で、または付加的にデバイスは全テーブルがそのために割り当てられたバッファに順次ロードされる事象を介してアプリケーションに通知することができる。
【００８０】
図１２を参照して、テーブルは典型的に次の方法でロードされる（ソフトウェア・フィルタの説明は簡潔さだけの理由で省略する）；
ステップ１：ハードウェア・フィルタ・マスク・アレイ4532およびハードウェア・フィルタ値アレイ4536の特定付け；
ステップ２：ハードウェア（およびソフトウェア）に対応する第１セクション4538をロードする；
ステップ３：セクション4538のＬＳＮ4530の値を読み取り、ロードされるべきセクションの数（＝ＬＳＮ＋１）を決定し、ＬＳＮ４５３０の値に従ってハードウェア・フィルタ・マスク・アレイ4534およびハードウェア・フィルタ値アレイ4536を変更する；
ステップ４から６：ＴＩＤとＬＳＮの値に従って残りのセクション4542、4544および4546をロードし、イベント（事象）をアプリケーションに送信する。
【００８１】
テーブルのローディングは、正しく行われたダウンロードを示すイベントが実行時間エンジン4006のキューに突入したときにのみ完了する。このイベントがエンジン・キューに配置される前に、テーブルのローディングの途中終了を正しく行わなければならない。
【００８２】
テーブルがロードされた後、テーブルのダウンロードがリクエストされたときに、アプリケーションによってそれが割り当てられた名前で識別される。
【００８３】
テーブルがレシーバ／デコーダ2020のメモリに記憶された方法に関する情報は、テーブルの記述子を戻すコールによってアクセスすることができる。この種の記述子の一例を図１７に示す。記述子4700は、テーブル中のセクションの総数（ＬＳＮ＋１）を含むフィールド4702と、「０」のＳＮを有するセクション4544に始まり、「１」のＳＮを有するセクション4546から、ＬＳＮに対応するＳＮを有するセクション4542までのテーブルを形成するセクション4538、4542、4544および4546を包含しているバッファのリスト4704とを含んでいる。
【００８４】
一グループのセクションは、ハードウェアおよびソフトウェアのフィルタ基準に対応するセクションの全てからなる。これらのセクションはMPEGデータ・ストリーム中に巡回的に現れる。
【００８５】
図１３を参照して、グループ（組）4548は、二つのセクション、すなわち、最初のセクション（ＳＤＧ）4550と最後のセクション（ＳＦＧ）4552によって範囲が定められている。各セクションはそれぞれのフィルタ基準に対応し、両者間にグループの他のセクション（ＳＧ）4554がある。
【００８６】
グループ中のセクションのローディングは二つの異なるローディング・モードを用いて行なうことができる。
【００８７】
「後続モード」において、ＳＤＧ4550の直後の所定数のセクション4544がロードされる。各タイプのセクション（ＳＤＧ、ＳＧ、ＳＦＧ）については、アプリケーションはＴＩＤ、ハードウェア・フィルタ、ソフトウェア・フィルタおよび最大セクション長さを識別する。
【００８８】
図１４を参照して、デバイスはまずハードウェアおよびソフトウェア・フィルタ基準を適用してＳＤＧ4550のみのダウンロードおよび記憶を可能にするのが好ましい。これでＳＤＧ4550のロードの前に、レシーバ／デコーダ2020のＲＡＭメモリ容量4022のバッファへの余分なＳＧ4554のローディングを回避する。検出時に、ＳＤＧ4550がメモリのロケーションまたはバッファ4556に記憶される。こうしてデバイスはハードウェアおよびソフトウェアのフィルタ基準を適用して１グループのMPEGデータ・セクションから所望のＳＧとＳＦＧのダウンロードを可能にする。
【００８９】
図１４に示す例において、一つのＳＤＧ、七つのＳＧおよび一つのＳＦＧからなる１グルーブのMPEGセクションから三つのＳＧ4554が、MPEGデータ・ストリームからダウンロードされることになる。バッファ4556へのＳＤＧの記憶に続いて、ＳＤＧ4550の後に伝送される対象のＭＰＥＧセクションのグループからの最初のＳＧ4558がバッファ4560に記憶される。同様にして、ＳＤＧ4550の後に伝送される対象のＭＰＥＧセクションのグループからの第２のＳＧ4562がバッファ4564に記憶され、ＳＤＧ4550の後に伝送される対象のＭＰＥＧセクションのグループからの第３のＳＧ4566がバッファ4568に記憶される。
【００９０】
所要数のセクション4554が記憶されるか、ＳＦＧ4552がダウンロードされるまで、ＳＧの記憶操作が続行される。ダウンロードが実行されれば、ＳＦＧ4552はメモリ・ロケーションに記憶されない。
【００９１】
グループの各セクションがロードされるにつれて、デバイスは、グループのセクションがロードされたイベントを介してアプリケーションに通知することができる。別の方法で、または付加的に、デバイスは、MPEGセクションの記憶の完了かまたはアプリケーションへイベントを送ることによってＳＦＧ4552をダウンロードすることのいずれかのみでアプリケーションへ通知することができる。
【００９２】
「先行モード」において、ＳＦＧの直前の所定数のセクションがメモリ・ロケーションに記憶される。各タイプのセクション（ＳＤＧ、ＳＧ、ＳＦＧ）については、アプリケーションはＰＩＤ、ＴＩＤ、ハードウェア・フィルタ、ソフトウェア・フィルタおよび最大セクション長さを識別する。
【００９３】
このモードでのローディングは、MPEGセクションを記憶するために循環バッファの使用を必要とする。
【００９４】
図１５を参照して、デバイスはまずハードウェアおよびソフトウェアのフィルタ基準を適用してＳＤＧ4570のみをダウンロードし記憶できるのが好ましい。これでＳＤＧ4570のロードの前に、レシーバ／デコーダ2020のＲＡＭメモリ容量4022のへの余分なＳＧ4544のローディングを回避する。検出時に、ＳＤＧ4550は記憶されない。こうしてデバイスはハードウェアおよびソフトウェアのフィルタ基準を適用して１グループのMPEGデータ・セクションから所望のＳＧとＳＦＧのダウンロードを実行することを可能にする。
【００９５】
図１５に示す例において、一つのＳＤＧ、七つのＳＧおよび一つのＳＦＧからなる１グループのMPEGセクションから三つのＳＧ4544が、MPEGデータ・ストリームからダウンロードされることになる。ＳＤＧ4570のダウンロードに続いて、ＳＤＧ4570の後に伝送される対象のMPEGセクションのグループからの最初のＳＧ4572がバッファ4574に記憶される。同様にして、ＳＤＧ4550の後に伝送される対象のMPEGセクションのグループからの第２のＳＧ4576がバッファ4578に記憶され、ＳＤＧ4570の後に伝送される対象のMPEGセクションのグループからの第３のＳＧ4580がバッファ4582に記憶される。
【００９６】
ＳＤＧ4550の後に伝送される対象のMPEGセクションのグループからの第４のＳＧ4584がバッファ4574（すなわち、最初のＳＧ4572が記憶されたバッファ）に記憶される。
同様にして、続いて伝送される各ＳＧ4586、4588および4590がバッファ4578、4582および4574それぞれに記憶される。
【００９７】
この巡回的方法でＳＧを記憶することは、ＳＦＧ4592がデバイスによって検出さるまで継続される。これは、ＳＦＧが検出される前にたとえ所望の数のＳＧがロードされていなくてもあてはまる。検出がなされたときに、ＳＦＧ4592はバッファに記憶され、グループのダウンロードが首尾良く行われたことを示すイベント（事象）がアプリケーションに送られる。
【００９８】
グループがレシーバ／デコーダ2020のＲＡＭ4022に記憶される方法に関する情報は、グループの記述子を戻す特定コールによってアクセスすることができる。
【００９９】
この種の記述子の一例を図１６に示す。記述子4600は、グループ中のセクションの数と、ＳＤＧかまたはＳＦＧのいずれか（ローディング・モードによる）、およびローディングする順序でグループを構成するセクションＳＧを包含しているバッファのリスト4604とからなる。
【０１００】
グループは、ロードされた後、グループのダウンロードがリクエストされたときにアプリケーションによってそれに割り当てられた名前で一意に識別される。
【０１０１】
セクションをグループに付加し、またはグループからセクションを除去したりすることができる。あるセクションは一つを超えるグループに属すことができる。
【０１０２】
アプリケーションが、ある一つのセクションをグループに付加することをリクエストすると、新しいセクションを含むバッファのアドレスが記述子4604の末尾に配置され、フィールド4602がアップデートされる。アプリケーションが、セクションのグループからの除去をリクエストすると、このセクションを含むバッファのアドレスが記述子4600中で非表示とされ、フィールド4602がアップデートされる。セクションがグループ中の最後のセクションでなければ、記述子は、どの空きメモリ・スペースも除去するよう再編成される。従って、全てのセクションを削除することによって「空きグループ」をもたせることもできる。
【０１０３】
デバイスは一意の識別子で識別され、例えば、「LCARD＿DEVICE＿ID」がLCARDデバイスを識別し、また「RCARD＿DEVICE＿ID」がRCARDデバイスを識別する。
【０１０４】
新しいデバイス4062が作成されると、放送センターから適切なアプリケーション4056をダウンロードすることによって既存デコーダ2020中にインストールすることができる。典型的に、一つのマネジャによって扱われるデバイスの最大数は２５６である。
【０１０５】
このダウンロードは、ハードウェアおよびソフトウェア・バージョンをチェックするアプリケーション4056によってレシーバ／デコーダ2020で実行され、もし正しければ、新しいデバイス4062を表わすソフトウェア・モジュールをロードし、また、ツールボックス4058のプロシージャに、ファームウェア（FLASHメモリ中の）内の新しいデバイス・コードをインストールするよう求める。これはソフトウェアの残りの部分に影響を与えることなくデコーダ2020内での新しいインストールに融通性と信頼性を提供することができる。
【０１０６】
本発明は、単に例として述べられ、詳細の変更は本発明の範囲内で行うことができる。
【０１０７】
説明に開示された各特徴、および（妥当である場合）請求の範囲および図面は、別々にあるいは任意の適切な組み合わせで提供されてもよい。
【０１０８】
前述の好ましい実施例では、本発明のある種の特徴はコンピュータソフトウェアを使用して実現された。しかしながら、もちろん、これらの特徴のいずれもハードウェアを使用して実現されてもよいことは当業者に明らかである。さらに、ハードウェア、コンピュータソフトウェア等によって実行された機能は、電気信号等に対して、あるいは電気信号等を使用して実行されることは容易に理解される。
【０１０９】
相互参照は、我々の同時係属出願に対して行われ、全ては、同じ出願日を有し、名称が「信号発生および放送（代理人参照番号ＰＣ／ＡＳＢ／１９７０７）」、「暗号化放送信号の受信機と併用するためのスマートカード、および受信機（代理人参照番号ＰＣ／ＡＳＢ／１９７０８）」、「放送・受信システムおよびそのための条件付アクセスシステム（代理人参照番号ＰＣ／ＡＳＢ／１９７１０）」、「受信機／デコーダを介して送信機からコンピュータにコンピュータファイルのダウンロード（代理人参照番号ＰＣ／ＡＳＢ／１９７１１）」、「テレビジョンプログラムおよび他のデータの送信および受信（代理人参照番号ＰＣ／ＡＳＢ／１９７１２）」、「データのダウンロード（代理人参照番号ＰＣ／ＡＳＢ／１９７１３）」、「コンピュータメモリ構成（代理人参照番号ＰＣ／ＡＳＢ／１９７１４）」、「テレビジョンあるいはラジオ制御システム生成（代理人参照番号ＰＣ／ＡＳＢ／１９７１５）」、「送信データ・ストリームからのデータ・セクションの抽出（代理人参照番号ＰＣ／ＡＳＢ／１９７１６）」、「アクセス制御システム（代理人参照番号ＰＣ／ＡＳＢ／１９７１７）」、「データ処理システム（代理人参照番号ＰＣ／ＡＳＢ／１９７１８）」、および「放送・受信システム、およびそのための受信機／デコーダおよび遠隔コントローラ（代理人参照番号ＰＣ／ＡＳＢ／１９７２０）」である。これらの文書の開示は参照してここに組み込まれている。出願のリストは本出願を含んでいる。
【図面の簡単な説明】
【図１】本発明の好ましい実施例によるデジタル・テレビ・システムの全体構成を示す。
【図２】デジタル・テレビ・システムの相互作用システムの構成を示す。
【図３】相互作用レシーバ／デコーダのメモリにダウンロードされたモジュール内のファイルの配置を示す。
【図４】セクションの配置を示す。
【図５】相互作用レシーバ／デコーダのメモリのメモリ容量の配置を示す。
【図６】レシーバ／デコーダのインターフェイスの概略図である。
【図７】レシーバ／デコーダのソフトエウアの構成を示す。
【図８】MPEGデータ・ストリームからセクションをダウンロードするための受信システムの構成を示す。
【図９】ハードウェア・プリフィルタによって使用されるセクション中のバイトの配置を示す。
【図１０】ハードウェア・フィルタのハードウェア・フィルタ・マスク・アレイおよびハードウェア・フィルタ数アレイの一例を示す。
【図１１】ソフトウェア・プリフィルタによって使用されるセクション中のバイトの配置を示す。
【図１２】テーブルのローディングの一例を示す。
【図１３】セクションのグループ中のセクションの配置の一例を示す。
【図１４】セクションのグルーブの後続モード・ダウンロードの一例を示す。
【図１５】セクションのグループの先行モード・ダウンロードの一例を示す。
【図１６】セクションのグループの記述子中のフィールドの配置を示す。
【図１７】セクションのテーブルの記述子中のフィールドの配置を示す。
【図１】
0004376321.tif 000002
【図２】
0004376321.tif 000003
【図３】
0004376321.tif 000004
【図４】
0004376321.tif 000005
【図５】
0004376321.tif 000006
【図６】
0004376321.tif 000007
【図７】
0004376321.tif 000008
【図８】
0004376321.tif 000009
【図９】
0004376321.tif 000010
【図１０】
0004376321.tif 000011
【図１１】
0004376321.tif 000012
【図１２】
0004376321.tif 000013
【図１３】
0004376321.tif 000014
【図１４】
0004376321.tif 000015
【図１５】
0004376321.tif 000016
【図１６】
0004376321.tif 000017
【図１７】
0004376321.tif 000018