JP4445675B2 - 情報フィルタリングシステムおよび方法 - Google Patents

情報フィルタリングシステムおよび方法 Download PDF

Info

Publication number
JP4445675B2
JP4445675B2 JP2000581812A JP2000581812A JP4445675B2 JP 4445675 B2 JP4445675 B2 JP 4445675B2 JP 2000581812 A JP2000581812 A JP 2000581812A JP 2000581812 A JP2000581812 A JP 2000581812A JP 4445675 B2 JP4445675 B2 JP 4445675B2
Authority
JP
Japan
Prior art keywords
section
level
node
field
map
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2000581812A
Other languages
English (en)
Other versions
JP2002530019A (ja
Inventor
フレイマン フェリックス
Original Assignee
オープン ティーヴィー インコーポレイテッド
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 オープン ティーヴィー インコーポレイテッド filed Critical オープン ティーヴィー インコーポレイテッド
Publication of JP2002530019A publication Critical patent/JP2002530019A/ja
Application granted granted Critical
Publication of JP4445675B2 publication Critical patent/JP4445675B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4435Memory management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • H04N21/4586Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof

Description

【0001】
(発明の分野)
本発明は、情報を電子的に受信することに関する。具体的には、本発明は、セットトップボックスによって受信された情報をフィルタリングするソフトウェアに関する。
【0002】
(発明の背景)
ITV(interactive television)システムのようなデータ受信システムでは、SI(service information)のような情報は、ヘッドエンドから、種々のデータブロック(セクションということもある)にして、種々の移送媒体を介して送信できる。例えばデータセクションは、ヘッドエンドからケーブルまたは衛星を介して、TV(television)セットに結合されたセットトップボックスに送信できる。このようなデータセクションのコンテンツの例としては、現イベントまたは後続イベントに関する情報と、セットトップボックスのユーザがアクセスできるサービスに関する情報と、現在の時刻および日付に関する情報とが含まれている。イベントの例としては、TV番組またはコマーシャルが含まれ、他方、サービスの例としては、視聴者によりサブスクライブ(subscribe)されるチャンネルのセットがある。
【0003】
特定のセットトップボックスは、当該特定のセットトップボックスが必要とするセクションか、新しいセクションか、または、変更があったセクションのみを確保する必要がある。例えば、視聴者が基本チャンネルセットのみをサブスクライブした場合、当該基本チャンネルセットには含まれない特別のスポーツチャンネルまたは映画チャンネルに固有のセクションは、当該セットトップボックスにとって必要でなくなる。したがって、特定のセットトップボックス基準を満たさないセクションは、すべて無視される。幾つかのセレクト(select)セクションを受け入れたり、他の全てのセクションを拒否したりすることは、ハードウェアおよびソフトウェアのフィルタリングメカニズムの組合せによって行われる。
【0004】
ハードウェアのフィルタリングメカニズムは、典型的には、フィルタリングの第1ラウンドをパフォームし、フィルタリングメカニズムに受け入れられたセクションをソフトウェアに渡す。このソフトウェアフィルタリングメカニズムは、典型的には、当該セクションのヘッダ(通常、セクションの最初の8byteから12byte)を解析する。新しいセクションのスタートが検出されると、典型的には、当該セクションヘッダがトランスポートストリームから獲得される。ついで、このセクションヘッダはソフトウェアフィルタプロセスに渡され、このプロセスにおいて、典型的には、セクションの残りを獲得すべきか否かが判定される。そして、セクションが必要であると判定された場合は、セクションの残りが獲得され、典型的には、さらに処理するため、フォワードされる。したがって、典型的には、ソフトウェアフィルタプロセスをパスしたセクションのみが、さらに処理するため、フォワードされる。
【0005】
セクションは、当該セクションのヘッダ中の多くの個別のフィールドによって一意に識別することができる。例えば、セクションタイプによって、最大4つの個別のフィールドを使用して、セクションを識別することができる。特定のセクションが必要になると、当該ソフトウェアフィルタプロセスは、セクションヘッダの個別のデータフィールドの予測値をストアすることができる。セクションヘッダがソフトウェアフィルタにパスされると、これら予測値は当該セクションヘッダからの実際の値と比較される。比較した結果、一致しない場合は、一致するまでか、あるいは、比較すべき予測値がなくなるまで、予測値の次のセットが比較される。ソフトウェアフィルタは実質的に莫大な数の予測セクションヘッダ値をサーチするので、高能率比較アルゴリズムを有するのが望ましい。当該ソフトウェアフィルタが現セクションの評価を終える前に、新しいセクションが到着した場合には問題を生じる可能性があるので、高能率比較アルゴリズムが特に望ましい。このような状況に起因してオーバフローが生じるか、新しいセクションが失われる可能性がある。さらに、セットトップボックスは任意の時点で種々の異なるセクションをサーチするため、益々、効率に対するニーズが高くなる。
【0006】
この効率に対するニーズに加えて、別の共通の要因はメモリに対するニーズである。セットトップボックスで普通に用いられる非常に限られたメモリ容量において、莫大な数の予測値が占める割合は、実質的に大きいのが典型的である。
【0007】
メモリ空間効率データ構造(memory space efficient data structure)を使用する時間効率マッチングアルゴリズム(time efficient matching algorithm)を有するのであれば望ましい。本発明はこのようなニーズに焦点を絞っている。
【0008】
(発明の概要)
本発明の実施形態では、情報を受信するシステム、例えば、TVセットとともに用いられるセットトップボックスにおいて、情報のフィルタリングを行なうため、高速マッチングアルゴリズムはメモリ空間効率データ構造を使用する。このメモリ空間効率データ構造は、本発明の実施形態では、特定レベルのマッチング識別が見つからないときに使用される別のノードに対する関係付けられたインデックスを含んだデータフィールドの予測値の複数レベルのノードを含むことが可能である。さらに、本発明の実施形態によると、このデータ構造中のノードはそのノードで有効なレベルを識別するレベルフィールドを含むことができる。
【0009】
さらに、本発明の実施形態によると、一連のセクションマップを利用するセクションマップを使用することができ、各セクションマップは32bitのような所定のビット数を含む。各セクションマップは、最初の15bitに何がストアされているかを示す単一ビットを含むことができる。例えば、セクションマップの最後の16bitは、最初の16セクションが受信されているかを示す。もう1つのビットは、最初の15bitに何がストアされているのかを示すのに使用することができる。例えば、最初の15bitは、次の15セクションが受信されているかを示すことができるか、次のセクションマップを指し示すインデックスを示すことができる。
【0010】
本発明の実施形態によるITV環境で情報をフィルタリングする方法を呈示する。この方法はデータ構造の供給を含み、そのデータ構造は複数のレベルを含み、この方法は情報を第1基準と比較することを含み、第1基準は複数レベルの第1レベルに関連する。この方法は情報を第2基準とも比較し、第2基準は複数レベルの第2レベルと関連するが、この比較は情報が第1基準に一致する場合に行われる。
【0011】
本発明の実施形態によるITV環境で情報をフィルタリングするシステムも呈示される。このシステムはデータ構造を供給するように構成されたメモリを備え、そのデータ構造は複数のレベルを含む。システムはメモリに結合されたプロセッサも含み、このプロセッサは情報を第1基準と比較するように構成され、第1基準は複数レベルの第1レベルに関連する。プロセッサは情報を第2基準とも比較するように構成され、第2基準は複数レベルの第2レベルと関連するが、この比較は情報が第1基準に一致する場合に行われる。
【0012】
本発明の実施形態による、情報の受信を記録する方法も呈示される。この方法はセクション番号を提供すること、第1セクションマップを供給することを含み、第1セクションマップは幾つかのビットに関係付けられる。本方法は、セクション番号がビット数未満かどうかも判定し、セクション番号がビット数未満でない場合は、第2セクションマップを指し示す。
【0013】
本発明の実施形態による情報の受信を記録するシステムも呈示される。本システムは第1セクションマップを供給するように構成されたメモリを備え、第1セクションマップは幾つかのビットと関係付けられ、本システムはメモリに結合されたプロセッサを備える。このプロセッサはセクション番号を供給するように構成され、そのセクション番号がビット数未満かどうかを判定し、セクション番号がビット数未満でない場合は、第2セクションマップを指し示す。
【0014】
(好ましい実施の形態の詳細な説明)
以下、当業者が本発明を作成および使用可能なように説明するとともに、特許出願およびその要件のコンテクストで説明する。この好ましい実施の形態に対する種々の変更例は、当業者に明らかにし、一般的原理は他の実施形態に応用することができる。したがって、本発明は、本実施の形態に制限されるものではなく、ここに説明する原理および特徴と矛盾しない最大範囲のものである。
【0015】
図1は本発明の実施形態をインプリメントするのに適した情報受信システムのブロック図である。図1のシステムはヘッドエンド102を含んでおり、ヘッドエンド102は関係付けをした音声を有する特定のビデオをヘッドエンド102に供給するビデオオーディオ装置100と結合可能である。ビデオ情報はヘッドエンド102でデジタル化され、トランスミッタ104を介して受信システムに送信することができる。ヘッドエンド102によって送信された情報は、種々の方法で、この受信システムに送信される。例えば、送信された情報は衛星106を介してこの受信システムに送信することができる。あるいはまた、ケーブルを使用して、情報をヘッドエンド102から受信システムに送信することができる。受信システムの例には、セットトップボックス110と結合したTV112が含まれる。セットトップボックス110を受信アンテナ108と結合して、情報を衛星106から受信してもよい。
【0016】
一度、受信アンテナ108を介して情報が受信されると、この情報をセットトップボックス110によって処理し、TVセット112に表示することができる。このようにして、音声と、ビデオと、対話型データを受信し、セットトップボックス110で処理することができる。
【0017】
図2は例えば図1に示すようなセットトップボックス110であって、本発明の実施の形態をインプリメントするのに適したセットトップボックスのブロック図である。図2のセットトップボックス110は、受信アンテナ108およびTV112と結合してある。受信アンテナ108によって受信された信号は、フロントエンド200に送信され、フロントエンド200では受信アンテナ108により受信された変調信号を復調デジタル信号に変換する。ついで、この復調デジタル信号はフロントエンド200からマイクロコントローラ202に送信される。マイクロコントローラ202はハードウェアフィルタ、例えば、PES(private elementary stream)と、SI(service information)フィルタ204を含むことができる。図2には単一のPESフィルタ204を図示したが、実際には、複数のPESフィルタのセットを使用することができる。PESフィルタ204は受信信号のパケットストリームからパケットを選択することができる。一度、これらパケットがPESフィルタ204によって選択されると、マイクロコントローラ202のソフトウェアフィルタによって処理するため、これら選択されたパケットを送信することができる。ついで、このソフトウェアフィルタは、PESフィルタ204から受信したパケットセットから、パケットをさらに選択する。ついで、デジタルビデオ信号およびデジタルオーディオ信号が、デジタルアナログコンバータ210に送信される。デジタルビデオ信号をデジタルアナログ変換することができるとともに、デジタルオーディオ信号をデジタルアナログ変換することができる。
【0018】
マイクロコントローラ202はFLASHメモリ206とシステムRAM(random access memory)208にも結合してある。マイクロコントローラ202によってラン(run)されるプログラムは、FLASHメモリ206に置くことができ、他方、データベースのような他の情報はシステムRAM208に置くことができる。
【0019】
デジタルアナログコンバータ210は圧縮信号を圧縮解除するのに利用可能な圧縮解除のためのメモリ214にも結合してある。デジタルアナログコンバータ210は、オーディオ信号とビデオ信号をTV112に表示するための適正なフォーマットに再変調できる再変調装置212にも結合してある。
【0020】
セットトップボックス110によって受信されたデータは、フォーマットして種々のテーブルにするようにできる。一連のパケットが受信されると、受信されたパケットはフォーマットされ、テーブル、例えば、NIT(nerwork information table)と、BAT(bouquet association table)、SDT(service descriptor table)と、EIT(event information table)にされる。これらのテーブルはDVB(Digital Video Broadcasting)標準に記載されている。DVB標準に関する情報については、URLがhttp://www.atsc.orgであるインターネットサイトを参照されたい。
【0021】
当該データストリームが受信されると、図2のPESフィルタ204のようなPESフィルタは、当該パケットストリームの初期フィルタ機能をパフォームする。その後、このPESフィルタによって選択されたパケットは、ソフトウェアフィルタにより処理される。マイクロコントローラ202は、システムに高速度で入来するパケットを処理するため、複数のPESフィルタ、例えば、16個ないし32個のハードウェアPESフィルタを含むことができる。入来するパケットストリームは毎秒18Mbitないし50Mbitで送信することができる。
【0022】
受信システムは、NITと、BATと、SDTと、EITを含む全てのタイプのテーブルを受信することができる。TVネットワークは莫大なサービスを有することができる。NITはこれらサービスがどこで見つかるかを示し、BATはこれらサービスをカテゴリ、例えば、映画またはスポーツに分類することができ、SDTはこれらサービスについてより詳細な情報を示し、EITは、普通、タイトルおよび言語のようなサービスに関する追加情報を示す。
【0023】
種々のタイプのテーブルは、ソフトウェアフィルタによる処理中に、異なるレベルのフィルタリング基準を有することができる。例えば、NITテーブルはテーブルIDを識別するレベル1フィルタリング基準と、ネットワークIDのレベル2フィルタリング基準を有することができる。当該テーブルIDは、セクションがフォーマットされたときにその一部となるテーブル、例えば、NITおよびBAT等を識別した。ネットワークIDはネットワークを識別した。この例では、BATテーブルは、テーブルIDのレベル1基準と、bouquetIDのレベル2基準を有することができる。bouquetはサービスの予め定めた組み合せ、例えば、サブスクライバがサブスクライブするスポーツ番組と映画番組とを組み合せたものである。bouquetIDは特定タイプのbouquetを識別する。この例では、SDTはテーブルIDのレベル1基準と、トランスポートストリームIDのレベル2基準と、オリジナルネットワークIDのレベル3基準とを有することもできる。トランスポートストリームIDは衛星による信号送信にどの周波数を使用しているかを識別する。オリジナルネットワークIDは特定のサービスを最初にブロードキャストするネットワークを識別する。EITはテーブルIDのレベル1基準と、サービスIDのレベル2基準と、トランスポートストリームIDのレベル3基準と、オリジナルネットワークIDのレベル4基準とを有することができる。サービスIDは特定のトランスポートストリームIDからサービスを識別する。
【0024】
セクションは多くのパケットを含む送信ユニットである。セクションに含まれるパケットの総数はテーブルごとに異なる。例えば、NITの最大セクションは約1024byteである。NITのようなテーブルは複数のセクション、例えば、256個のセクションに分割することができる。セクションはヘッダを含むことができる。セクションヘッダに含まれるbyte数の例は、最初の8byteから12byteである。新しいセクションのスタートが検出されると、セクションヘッダがトランスポートスクリーンから獲得され、ソフトウェアフィルタプロセスに渡され、セクションの残りを獲得すべきかどうかを判定する。NITと、BATと、SDTセクションは、最大1024byteの長さを有することができる。ただし、EITセクションは最大4096bytの長さを有することができる。
【0025】
データパケットがハードウェアPESフィルタからソフトウェアフィルタに渡されると、このソフトウェアフィルタはさらにパケットストリームをフィルタリングする。慣用のフィルタリングプロセスの一例を図3に示す。図3はノード300A〜300Pと、リーフ302A〜302Fとを含む2進木を示す。図3に示すソフトウェアフィルタリングで2進木を使用する例では、ハードウェアPESフィルタによってソフトウェアフィルタに渡されたパケットストリームのセクションは、ルートノード300Aに対してチェックし、このセクションが受け入れられるセクションであるかどうかを判定する。
【0026】
解析されたセクションがレベル1ノード300Aに記録されている基準に一致しない場合は、この解析されたセクションはレベル1ノード300Bにストアされている基準と比較される。解析されたセクションがレベル1ノード300A〜300Dのいずれかにストアされているどの基準にも一致しない場合は、このセクションは拒否される。しかし、解析されたセクションが、レベル1ノード300A〜300Dのうちの1つと関係付けられた基準の1つと一致する場合は、この解析されたセクションは、解析されたセクションと一致したレベル1基準と関係付けされたレベル2の基準セットと比較される。例えば、解析されたセクションがレベル1ノード300Aと関係付けされた基準と一致しなかったが、レベル1ノード300Bと関係付けされた基準と一致した場合は、この解析されたセクションは、一致するレベル1ノード300Bと関係付けされたレベル2ノード300F〜300Hのセットと比較される。
【0027】
解析されたセクションが、一致するレベル1ノード300Bと関係付けされたレベル2ノード300F〜300Hのいずれとも一致しない場合は、この解析されたセクションは拒否される。しかし、解析されたセクションが、ノード300Hのようなレベル2ノードと関係付けされた基準に一致する場合は、解析されたセクションはレベル3ノード300K〜300Nのセットと関係付けされた基準と比較される。
【0028】
上述した例のNITおよびBATのような特定のテーブルと関係付けされた基準のレベルが2つしかない場合は、解析されたセクションはノード300Hのレベル2基準と一致すれば受け入れられる。
【0029】
この処理は、解析されたセクションが特定レベルのノードと関係付けされたどの基準とも一致せずに拒否されるか、あるいは、解析されたセクションが全てのレベルで示される全ての基準と一致した後に受け入れられるまで続行される。リーフ302A〜302Fは2進木の特定ブランチの最終エレメントであり、解析されたセクションは、この解析されたセクションがリーフ302A〜302Fに到達した場合に受け入れられる。例えば、解析されたセクションは、ブランチ300A〜300Bと、300F〜300Hと、300K〜300M〜300Lを通って、最終リーフ302Eまで進行することができる。
【0030】
予め定めた数のノードとリーフは、ソフトウェアフィルタリングプロセスに適応させるため、メモリに事前割り振りされる。ノードとリーフを事前割り振りしたメモリは、例えば、所定数のノード(例えば930ノード)と、所定数のリーフ(例えば250リーフ)に対して、約27Kbyteにすることができる。セットトップボックスのメモリ容量は典型的には例えば約1/2Mbyteないし1Mbyteのように小さいので、この事前割り振りされたメモリ容量はITVシステムのセットトップボックスにおいては相当量になるのが典型的である。
【0031】
一度、データセットがソフトウェアフィルタによって受け入れられると、特定のシステム情報テーブルと関係付けされたどのセクションが適正に受信されているかを判定するのが典型的に望ましい。図4は所定のシステム情報テーブルと関係付けされた特定のセクションが受信されているかどうかを把握するための慣用の方法を示す。典型的には、32bitの配列が、特定のシステム情報テーブルのセクションが受信されているか否かを把握するために確保されている。普通、この32bit配列はセクションマップと呼ばれる。システム情報テーブルは例えば256セクションのような多数のセクションを含むことができる。セクションマップの32byte中の各ビットは、特定のセクション番号が受信されているかどうかを示すことができる。図4に示す例では、第1のバイトはセクション番号0〜7が受信されているかどうかを示すビット1ないしビット8を含み、第2のバイトもセクション番号8ないし15が受信されているかどうかを含む8bitを含み、以下同様であり、第32のバイトがセクション248ないし255が受信されているかどうかを示す。
【0032】
テーブルは256セクションを含むことができる。したがって、典型的には、十分なメモリ空間が確保されて256セクションの受信を示すことができる。しかし、典型的には、システム情報テーブルには2つまたは3つのセクションしか含まれず、セクションマップのために確保されたメモリ空間の大半は未使用であるのが典型的である。
【0033】
この処理はソフトウェアフィルタリングのメカニズムとして効果的であるが、ソフトウェアフィルタ処理速度を落とすことなく、ソフトウェアフィルタリング処理のメモリ要件を減らすことが望ましい。さらに、必要とするメモリがより少ないビットマップシステムを得ることも望ましい。本発明はこうしたニーズを対処するものである。
【0034】
図5は本発明の実施の形態に係るデータ構造である。図5のデータ構造400は図5に行406〜412と列402〜404で示す複数のフィールドを含む。この例では、受信されたテーブルデータに一致するかどうかをソフトウェアフィルタがサーチできる最大4つの基準レベル有することができるものとする。列402では、各レベル406〜412と関係付けされたフィールドに、要求された基準がリストアップしてある。列404では、要求され関係付けされた基準402と一致した場合に使用される次に適正なノードへのインデックスがリストアップしてある。要求される基準の列402とインデックスの列404では、フィールドごとに、2byteのような所定のバイト数が確保される。
【0035】
サブテーブルノード400はレベルフィールド414も含んでいる。レベルフィールド414のために確保されるメモリ空間の例は1byteである。レベルフィールドは、この例では、レベル1〜4を示す値を含み、この値はどのレベルが有効なフィールドであるかを示す。例えば、レベルフィールド414がレベル1を示した場合、所定のセクションについて一致があるか否かについては、レベル1(行406)のみを照合すればよい。別の例では、レベルフィールドが3を示す場合、レベル1(行406)と、レベル2(行408)と、レベル3(行410)が有効であり、レベル4(行412)は受信したセクションとの一致があるかについては照合する必要がない。
【0036】
エリア416は追加情報のために確保することができる。例えば、エリア416は幾つかのフィールド、例えば、7フィールドにすることができ、情報、例えば、システム情報テーブルバージョン番号と、サブテーブルノード400がまだ有効であるかどうかを示すフラッグと、処理のために待機しているセクションがいくつあるかをカウントするカウンタと、クライアントインデックスと、サブテーブルフィルタインデックスと、タグと、セクションマップとをストアするのに使用されている。セクションマップの詳細については、後程、図9A〜図11とともに説明する。クライアントインデックスは、このサブテーブルノード400に関係付けされたルートサブテーブルノード(解析すべき最初のサブテーブルノード)を指し示すデータベース構造とすることができる。サブテーブルフィルタインデックスは、ソフトウェアフィルタ中の他の構造へのインデックスであるが、このサブテーブルノード2進木に関係付けされていないインデックスとすることができる。このタグはクライアントによるタグであり、クライアントにより決定される種々の目的のために使用されている。
【0037】
図6は本発明の実施の形態に係るサブテーブルノード400A〜400Dのセットの例を示す。セクションは、本発明の実施の形態によるソフトウェアフィルタにより、ハードウェアPESフィルタから受信される。このセクションは最初にルートサブテーブルノード400Aにより解析される。ルートサブテーブルノード400Aは、受信されたセクションと比較される最初のサブテーブルノードである。レベル1(行406)の基準402であって、解析されたセクションに一致する基準を有する2つの適正なサブテーブルノードがある場合には、レベルフィールド414での最高数を有するサブテーブルノードが、レベルフィールド414でそれより低い数のサブテーブルノードより先に評価される。したがって、セクションに一致するレベル1の基準を持つサブテーブルノードは、最高のレベルフィールド414によって最低のレベルフィールド414まで順次評価される。
【0038】
本発明の実施の形態では、サブテーブルノード400のフィールドが有効である場合、同一のサブテーブルノード400中で前のフィールドも有効であるものとする。前のフィールドは、有効なフィールドよりも低いレベル406〜412にある列402中のフィールドである。例えば、レベルフィールド414がレベル3(行410)を識別する場合は、レベル1(行406)とレベル2(行408)も有効であるものとする。
【0039】
図6に示す例では、セクションがルートノード400Aの列402Aの第1レベル406Aで評価される。当該セクションと、ルートノード400Aの第1レベル406Aと関係付けされた基準とが一致する場合、ルートノード400Aの列402Aの第2レベル408Aが一致するかどうかチェックされ、列402Aの第2レベル408Aで一致した場合、列402Aの第3レベル410Aがチェックされ、以下同様に、ルートノード400Aで一致するかどうか、列402Aの全てのレベル406A〜412Aがチェックされる。ルートノード400Aのレベル406A〜412Aで一致しない場合は、次にどのサブテーブルノードをチェックするかを判定するため、ルートノード400Aの列404Aの同レベルに位置する関係付けされたインデックスがチェックされる。例えば、ルートノード400Aの列402Aのレベル1の406Aで一致しない場合は、ルートノード400Aのレベル2の408Aをチェックせずに、行406A、列404Aのフィールド中に位置するインデックスをチェックして、チェックすべき次のサブテーブルノードを決定する。この例では、サブテーブルノード400Bが、ルートノード400Aのレベル1の一致する基準と関係付けされたインデックスに示されるテーブルである。テーブル400Bでは、ルートノード400Aで一致しなかった同じレベルが一致するかどうかがチェックされる。我々の例では、ルートノード400Aのレベル1で一致しなかったと判定したので、次のサブテーブルノード400Bのレベル1の406Bがチェックされる。ルートノード400Aの第1レベル406Aがセクションと一致する場合は、一致するかどうかをチェックするため、ルートノード400Aの列402Aの第2レベル408Aを用いて、そのセクションがチェックされる。
【0040】
次のテーブル400Bにおいて、チェックすべき第1のレベル(前のサブテーブルノードでセクションと一致しなかったレベルに対応するレベルである)も一致しない場合は、一致しなかったレベルに対応するインデックス404Bがチェックされ、解析すべき次のサブテーブルノードが決定される。この例では、一致しなかったルートノード400Aの対応するレベルもレベル1の406Aにあったので、サブテーブルノード400Bで解析すべき最初のレベルは、列402Bのレベル1の406Bである。
【0041】
サブテーブルノード400Bの列402Bのレベル1の406Bで一致した場合、サブテーブルノード400Bの次のレベル408Bが一致するかどうかチェックされる。しかし、サブテーブルノード400Bの列402Bの第1レベル406Bで一致しない場合は、行406B、列404Bのフィールドに位置する関係付けされたインデックスがチェックされ、次のサブテーブルノード400Dをチェックすることを決定する。サブテーブル400Bの列402Bのレベル1の406Bで一致した場合、次のレベルであるサブテーブルノード400Bのレベル2の408Bが一致するかどうかチェックされる。そのレベルで一致がない場合、行408B、列404Bのフィールドに位置する関係付けされたインデックスがチェックされ、次のサブテーブルノード400Cをチェックすることを決定する。
【0042】
サブテーブルノード400Bのレベル2の408Bで一致が見つからなかったと仮定する。列404B中の関係付けされたインデックスは、次の比較がサブテーブルノード400Cのレベル2の408Cに対して行われるように指図する。
【0043】
図7および図8は本発明の実施の形態によるパケットストリームからセクションをフィルタリングする方法の流れ図である。レベルは1にセットされ、SN(subtable node)はルートに等しくセットされる(ステップ500)。レベル(レベルID)に対応するセクション中のフィールドは、解析すべきセクションから取り出される(ステップ502)。レベルのIDの例には、基準、例えば、テーブルIDと、ネットワークIDと、bouquetIDと、オリジナルネットワークIDと、トランスポートストリームIDと、サービスIDが含まれる。レベルのIDはセクションヘッダに見つけることができる。
【0044】
図12A〜図12Dは種々のセクションヘッダを例を示す。図12Aはフィールド902a〜902dを含むNITヘッダ900aの例を示す。この例では、フィールド902aはテーブルIDであり、フィールド902bはネットワークIDであり、フィールド902cはバージョン番号である。フィールド902dは現在のセクション番号および最後のセクション番号を含む。図12Bはフィールド902a′〜902d′を含むBATヘッダ900bの例を示す。この例では、フィールド902a′はテーブルIDであり、フィールド902b′はbouquetIDであり、フィールド902c′はバージョン番号である。フィールド902d′は現在のセクション番号および最後のセクション番号を含む。図12Cはフィールド902a″〜902eを含むSTDヘッダ900cの例を示す。この例では、フィールド902aはテーブルIDであり、フィールド902bはトランスポートストリームIDであり、フィールド902c″はバージョン番号である。フィールド902d″は現在のセクション番号および最後のセクション番号を含む。フィールド902eはオリジナルネットワークIDである。図12Dはフィールド902a′′′〜902fを含むEITヘッダ900dの例を示す。この例では、フィールド902a′′′はテーブルIDであり、フィールド902b′′′はサービスIDであり、フィールド902c′′′はバージョン番号である。フィールド902d′′′は現在のセクション番号および最後のセクション番号を含む。フィールド902e′はトランスポートストリームIDであり、フィールド902fはオリジナルネットワークIDである。
【0045】
図12A〜図12Dに示す例では、フィールド902a〜902a′′′はレベル1のIDであり、フィールド902b〜902b′′′はレベル2のIDであり、フィールド902e〜902e′はレベル3のIDであり、フィールド902fはレベル4のIDである。例えば、これらのフィールドは図7のステップ502で取り出すことのできるレベルIDを含む。有効なレベルフィールドの数がセクションタイプ(NIT、BAT、SDTのような)によって異なることに注意されたい。図のフィールド902a、902a′、902a″、902a′′′は、テーブルIDを含む。これらのフィールド902a〜902a′′′のコンテンツは、残りのレベルID902b、902b′、902b″、902e、902b′′′、902e′、902gのコンテンツを決定することができる。
【0046】
レベルIDに加え、ヘッダ900には他の種々の情報、例えば、バージョン番号と、現在のセクション番号と、最後のセクション番号が含まれる。セクションヘッダに含むことができるフィールドの詳細は、DVB(Digital Video Broadcasting)標準EN300468で得られる。
【0047】
ついで、セクションから取り出されたレベルID(セクションのフィールドの取り出された値)が同レベルのサブテーブルノードの基準と一致するかどうかが判定される(図7のステップ504)。例えば、レベルが1にセットされ、サブテーブルノードがルートノード、例えば、図6のルートノード400Aにセットされ、しかも、サブテーブルノードがルートノード、例えば、図6のルートノード400Aにセットされ、しかも、図6のルートノード400Aの列402Aのレベル1の406Aのフィールドと関係付けされた基準が特定のテーブルIDである場合に、解析されているセクションのセクションヘッダに見い出されるレベル1のIDが、ルートノード400Aのレベル1で識別されるテーブルIDと比較され、それらが一致するかどうかを調べる。
【0048】
当該セクションから取り出されたレベルIDが現在のレベルのサブテーブルノードで識別される基準と同じでない場合は、次のサブテーブルノードが決定される(ステップ506)。次のサブテーブルノードは図6に示すように、サブテーブルノードの現在レベルの行の列404中のインデックスによって決定することができる。
【0049】
ついで、このサブテーブルノードが有効であるかどうかが判定される(ステップ508)。図5に示すように、サブテーブルノードが有効であるかどうかを示すフラッグは、ノード400のエリア416にストアすることができる。当該サブテーブルノードが有効でない場合、現在のセクションは拒否される(ステップ510)。しかし、現在のサブテーブルノードが有効である場合は、再度、セクションのレベルIDが同レベルの現在のサブテーブルノード中の基準と同じであるかどうかが判定される(ステップ504)。
【0050】
当該セクションのレベルIDが、同レベルのサブテーブルノードの基準と同じである(ステップ504)場合は、そのレベルが現在のサブテーブルノードのレベルフィールド、例えば、図5のレベルフィールド414よりも大きいか、あるいは等しいかを判定する(ステップ512)。このレベルがサブテーブルノードのレベルフィールド未満である場合は、次のレベルが検討される(ステップ514)(level=level+1をセットする)。ついで、この次のレベルに対応するセクション中のフィールド(次のレベルID)が取り出される(ステップ502)。
【0051】
当該レベルがサブテーブルノードのレベルフィールド、例えば、図5のレベルフィールド414より大きいか、あるいは等しい場合は(ステップ512)、現在のサブテーブルノードのバージョンがセクション中のバージョンと等しいかどうかが判定される(図8のステップ550)。このバージョン番号は、図5に示すサブテーブルノード400の追加フィールド416に位置させることができる。サブテーブルノードにストアされているこのバージョン番号は、セクションヘッダ、例えば、図12のヘッダ900のフィールド902eのセクションヘッダにストアされているバージョン番号と比較することができる。サブテーブルノード中のバージョン番号がセクションヘッダのバージョン番号と等しくない場合は、サブテーブルノードのバージョンが更新され、セクションマップがクリアされ、新しいセクションマップが作成される(ステップ552)。新しいバージョンを有するセクションが受信されると、全ての変更が受信されていることを保障するため、その新バージョンと関係付けされた全てのセクションを再度獲得すべきである。したがって、旧バージョンの受信をトラッキング(tracking)してきたセクションマップをクリアし、新しいセクションマップを作成して、新バージョンでのセクションの受信をトラッキングすることができる。セクションマップの操作の詳細については、後程、図9A〜図11と関連させて説明する。その後、当該セクションマップが獲得されると、新しいバージョンのセクションにより更新される(ステップ554)。ついで、このセクションが受け入れられる(ステップ556)。
【0052】
当該サブテーブルノードにあるバージョンが当該セクションのバージョンと等しい場合は(ステップ550)、そのセクションが以前に受信されているかどうかを判定する(ステップ558)。あるテーブルのバージョンのポーションが紛失セクションとともに受信される可能性がある。したがって、チェックを行って、このセクションがその紛失セクションの1つであるかどうかを判定する。この判定についての詳細は、後程、図10と関連して説明する。このセクションが以前に受信されている場合は、そのセクションは拒否される(ステップ560)。しかし、このセクションが以前に受信されていない場合は、このセクションが受け入れられることを示すために、このセクションマップが更新され(ステップ554)、このセクションが受け入れられる(ステップ556)。
【0053】
図9A〜図9Bは本発明の実施の形態によるセクションマップを示す。セクションマップは図5に示すサブテーブルノードのエリア416に位置させることができる。このセクションマップは、複数ビットのフィールド、例えば、最後の16ビット(602)が最初の16セクションが受信されているかどうかを示す32ビットのフィールドを含んでいる。16ビットエリア602の各ビットは、それに対応するセクションが受信されているかどうかを示すことができる。もう1つのビット(604)は最初の15ビット(606)の機能を指定するのに使用することができる。例えば、インディケータビット604が1にセットされると、最初のビットセット606は次の15セクションが受信されているかどうかの受信ステータスを示すことができる。しかし、インディケータビット604がゼロである場合、このインディケータビットは、最初のセクション606が次のセクションマップフィールドを指し示すインデックスとすることができることを示す。
【0054】
図9Bはインディケータビットの例を示す。このインディケータビットは、インディケータビットがゼロにセットされたときのインデックスを示し、インディケータビットが1にセットされたときの次の15セクションのステータスを示す。この例では、最初の32ビットフィールド600Aが最初の16セクションのステータスを第2ポーション602Aに集めている。この例では、第2ポーション602Aは16ビットを含み、各ビットはセクションが受信されているかどうかを示す。このインディケータビットは第1ポーション602Aと第2ポーション606Aの間に置かれている。この例では、インディケータビット604Aはゼロにセットされており1ビットである。インディケータビット604Aがゼロであることは、第1ポーション606Aが次のセクションマップ600Bを指し示すインデックスであることを示す。次のセクションマップ600Bも32ビットのフィールドであって、第1ポーション606Bと、第2ポーション602Bとを有するとともに、第1ポーション606Bと第2ポーション602Bとの間に位置するインディケータビットを有する32ビットのフィールドとすることができる。第2ポーション602Bは16セクションの第2セットのステータスを記録するためのものである。この例では、インディケータビット604Bもゼロにセットされており、したがって、第2のセクションマップ600Bの第1ポーション606Bも第3のセクションマップ600Cを指し示すインデックスであることを示している。第3のセクションマップ600Cも、16セクションのステータスを示す第3のビットセットをストアする。しかし、インディケータビット604Cは1にセットされており、このセクションマップ600Cが最後のセクションマップであり、また第1ポーション606Cが次のセクション、この例では次の15セクションのセットのステータスを示すことを示している。
【0055】
図10は本発明の一実施の形態に係る方法を示す流れ図である。これは、図8のステップ558の判定のようなセクションが既に受信されているかどうかを判定する方法の例である。セクション番号がセクションから取り出される(ステップ700)。図9Bのセクションマップ600Aのような第1のセクションマップを解析する(ステップ702)。ついで、セクション番号が、セクションマップフィールドに事前割り振りされたビット数未満かどうかを判定する(ステップ704)。この例では、セクション番号が31未満であるかどうかを判定する(この例では、セクションは0から255まで計数されることに留意されたい)。
【0056】
セクション番号が、セクションマップフィールドに事前割り振りされたビット数未満でない場合は、そのセクション番号を、セクションマップフィールドの第2ポーションに事前割り振りされたビット数だけデクリメントする(ステップ706)。この例では、セクション番号は16だけデクリメントされる。現在のセクションマップの第1ポーションは、次のセクションマップ(次の32ビットのセクションマップフィールド)を指し示すために使用される(ステップ708)。その後、このセクション番号がセクションマップフィールドのビット数より小さいかどうかを再度判定する(ステップ704)。
【0057】
このセクション番号がこのセクションマップフィールドのビット数未満である場合(ステップ704)は、そのセクション番号が第2ポーションのビット数未満かどうかを判定する(ステップ716)。この例では、第2ポーションのビット数は15である。セクション番号が第2ポーションのビット数未満でない場合は、現在のセクションマップが別のセクションマップを指し示しているかどうかを判定する(ステップ718)。この判定例は、インディケータビットが別のセクションマップを指し示すことを示すように、セットするための例である。このセクションマップが別のセクションマップを指し示している場合は、そのセクション番号を第2ポーションのビット数だけデクリメントする(ステップ706)。しかし、このセクションマップが別のセクションマップを指し示していない場合(ステップ718)か、セクション番号が第2ポーションのビット数未満である場合(ステップ716)は、現在のセクションと関係付けされたビットが、セクションが受信されていることを示すかどうかが判定される(ステップ710)。例えば、そのセクションが受信されていることを示すため、現在のセクションと関係付けされたビットに1を使用することができる(ステップ714)。この関係付けされたビットが、指し示されたセクションマップにセットされていない場合(ステップ710)は、そのセクションはまだ受信されていない(ステップ712)。
【0058】
図11は本発明の一実施の形態に係る方法を示す流れ図である。これは、図8のステップ552で行われるような新しいセクションマップを作成する例である。最後のセクション番号が現在のセクションから取り出される(ステップ800)。各セクションはそれ自体のセクション番号と最後のセクション番号を識別し、あといくつセクションが来るかを受信システムが知るようにする。第1のセクションマップ、例えば、図9Bのセクションマップ600Aが使用される(ステップ802)。ついで、最後のセクション番号がセクションマップフィールドのビット数未満であるかどうかを判定する(ステップ804)。この例では、最後のセクション番号が31未満であるかどうかを判定する。最後のセクション番号がセクションマップフィールドのビット数未満である場合(ステップ804)、インディケータビットは1にセットされ、それ以上のセクションマップがないことを示す(ステップ806)。この例では、インディケータビットはビット15である。したがって、新しいセクションマップの作成は完了する。
【0059】
最後のセクション番号がセクションマップフィールドのビット数未満でない場合(ステップ804)は、最後のセクション番号がセクションマップフィールドの第2ポーションのビット数だけデクリメントされる(ステップ808)。セクションマップフィールドの最後のセクションのビット数の例は、図9Aの第2ポーション602に位置する16ビットである。
【0060】
そして、インディケータビットはゼロにセットされ、セクションマップがさらにあることを示す(ステップ810)。ついで、新しいセクションマップがシステム、例えば、RAM(random access memory)から取り出され、現在のセクションマップにリンクされる(ステップ812)。ついで、新しいセクションマップは前のセクションマップの第1ポーション、例えば、図9Aの第1ポーション606によって指し示されている(ステップ814)。ついで、最後のセクション番号がセクションマップフィールドのビット数未満かどうかが再度判定され(ステップ804)、以下同様に、処理が完了するまで、引き続き判定される。
【0061】
以上、情報フィルタリングの方法およびシステムを開示した。本発明に従って書かれたソフトウェアを、メモリまたはCD−ROMのような何らかのコンピュータ可読媒体にストアするか、あるいは、ネットワークを介して伝送し、プロセッサによって実行することができる。
【0062】
本発明の実施の形態を説明したが、このような実施の形態は変形可能であり、その変形例は本発明の精神および範囲を逸脱しないものであることは、当業者にとって当然のことである。したがって、特許請求の範囲の精神および範囲を逸脱せずに、多くの変形は当業者により行うことができる。
【図面の簡単な説明】
【図1】 本発明の実施の形態をインプリメントするのに適したシステムを示すブロック図である。
【図2】 本発明の実施の形態をインプリメントするのに適したセットトップボックスの例を示すブロック図である。
【図3】 ソフトウェアフィルタに使用することのできる解析木を示す図である。
【図4】 同じくソフトウェアフィルタで使用することのできるセクションマッピングを示す図である。
【図5】 本発明の実施の形態によるソフトウェアフィルタで使用するサブテーブルノードデータ構造を示す図である。
【図6】 本発明の実施の形態によるサブテーブルノード間の関係を示す図である。
【図7】 本発明の実施の形態による情報セクションをフィルタリングする方法を示す流れ図である。
【図8】 本発明の実施の形態による情報セクションをフィルタリングする方法を示す流れ図である。
【図9A】 本発明の実施の形態によるセクションマップを示す図である。
【図9B】 本発明の実施の形態によるセクションマップを示す図である。
【図10】 本発明の実施の形態による、セクションが既に受信されているかどうかを判定する流れ図である。
【図11】 本発明の実施の形態による新しいセクションマップを作成する流れ図である。
【図12A】 本発明の実施の形態で使用するのに適したセクションヘッダの例を示す図である。
【図12B】 本発明の実施の形態で使用するのに適したセクションヘッダの例を示す図である。
【図12C】 本発明の実施の形態で使用するのに適したセクションヘッダの例を示す図である。
【図12D】 本発明の実施の形態で使用するのに適したセクションヘッダの例を示す図である。

Claims (14)

  1. ITV環境でセクションをフィルタリングする方法であって、
    前記方法は、
    複数レベルを含み、かつ前記複数レベルのうちいずれが有効であるかを示すフィールドを含むデータ構造を供給することと
    複数レベルの第1レベルと関連する第1基準とセクションヘッダとを比較することと
    前記セクションヘッダが前記第1基準と一致した場合に、前記複数レベルの第2レベルと関連する第2基準と前記セクションヘッダとを比較することと
    を備えることを特徴とする方法。
  2. 請求項1において、前記セクションヘッダが前記第1基準と一致しない場合に、第2のデータ構造に関連する第3基準と前記セクションヘッダとを比較することをさらに備えることを特徴とする方法。
  3. 請求項2において、前記第3基準は、前記複数レベルの第1レベルに関連する第3レベルに関連することを特徴とする方法。
  4. 請求項1において、前記セクションを受信することをさらに備えることを特徴とする方法。
  5. 請求項1において、前記データ構造は、特定のセクションが受信されているか否かを示すセクションマップも含むことを特徴とする方法。
  6. 請求項1において、前記データ構造は、第2データ構造へのインデックスも含むことを特徴とする方法。
  7. 請求項において、前記セクションヘッダが前記第1基準に一致しない場合に、前記インデックスが使用されることを特徴とする方法。
  8. ITV環境でセクションをフィルタリングするシステムであって、
    前記システムは、
    複数レベルを含み、かつ前記複数レベルのうちいずれが有効であるかを示すフィールドを含むデータ構造を供給する手段と、
    複数レベルの第1レベルと関連する第1基準とセクションヘッダとを比較する手段と、
    前記セクションヘッダが前記第1基準と一致した場合に、前記複数レベルの第2レベルと関連する第2基準と前記セクションヘッダとを比較する手段と
    を備えたことを特徴とするシステム。
  9. 請求項において、前記セクションヘッダが前記第1基準に一致しない場合に、第2データ構造に関連する第3基準と前記セクションヘッダとを比較することを特徴とするシステム。
  10. 請求項において、前記第3基準は、前記複数レベル第1レベルに関連する第3レベルに関連することを特徴とするシステム。
  11. 請求項において、前記セクションを受信する手段をさらに備えたことを特徴とするシステム。
  12. 請求項において、前記データ構造は、特定のセクションが受信されているか否かを示すセクションマップも含むことを特徴とするシステム。
  13. 請求項において、前記データ構造は、第2データ構造へのインデックスも含むことを特徴とするシステム。
  14. 請求項13において、前記セクションヘッダが前記第1基準に一致しない場合に、前記インデックスが使用されることを特徴とするシステム。
JP2000581812A 1998-11-10 1999-11-01 情報フィルタリングシステムおよび方法 Expired - Lifetime JP4445675B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/189,733 1998-11-10
US09/189,733 US6604243B1 (en) 1998-11-10 1998-11-10 System and method for information filtering
PCT/US1999/025730 WO2000028739A1 (en) 1998-11-10 1999-11-01 System and method for information filtering

Publications (2)

Publication Number Publication Date
JP2002530019A JP2002530019A (ja) 2002-09-10
JP4445675B2 true JP4445675B2 (ja) 2010-04-07

Family

ID=22698554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000581812A Expired - Lifetime JP4445675B2 (ja) 1998-11-10 1999-11-01 情報フィルタリングシステムおよび方法

Country Status (9)

Country Link
US (1) US6604243B1 (ja)
EP (1) EP1166554B8 (ja)
JP (1) JP4445675B2 (ja)
AT (1) ATE424092T1 (ja)
AU (1) AU766340B2 (ja)
CA (1) CA2348031A1 (ja)
DE (1) DE69940481D1 (ja)
ES (1) ES2325104T3 (ja)
WO (1) WO2000028739A1 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
BRPI9812104B1 (pt) 1997-07-21 2016-12-27 Guide E Inc método para navegar por um guia de programa interativo
JP4114234B2 (ja) * 1998-06-09 2008-07-09 ソニー株式会社 信号処理装置および受信装置と信号処理方法
CN1867068A (zh) 1998-07-14 2006-11-22 联合视频制品公司 交互式电视节目导视系统及其方法
ES2342593T3 (es) 1998-07-17 2010-07-09 United Video Properties, Inc. Sistema de guia interactivo de programas de television que tienen multiples dispositivos dentro de una casa.
AR020608A1 (es) 1998-07-17 2002-05-22 United Video Properties Inc Un metodo y una disposicion para suministrar a un usuario acceso remoto a una guia de programacion interactiva por un enlace de acceso remoto
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
US6961955B1 (en) * 1999-10-13 2005-11-01 Bellsouth Intellectual Property Corporation System and method for providing video services
KR100379419B1 (ko) * 2000-01-17 2003-04-10 엘지전자 주식회사 프로그램 가이드의 데이터 처리 장치
KR20010075755A (ko) * 2000-01-17 2001-08-11 구자홍 디지털 티브이용 epg의 ett 식별구조
JP2001202371A (ja) * 2000-01-19 2001-07-27 Sony Corp データ通信システムならびにそれに用いる受信装置
JP4154825B2 (ja) * 2000-02-01 2008-09-24 三菱電機株式会社 ディジタル放送受信システム
JP4944338B2 (ja) 2000-03-31 2012-05-30 ユナイテッド ビデオ プロパティーズ インク 番組を記録する際のカットオフを減らすためのシステムおよび方法
EP1199826A3 (de) * 2000-09-26 2005-11-09 Siemens Aktiengesellschaft Verfahren zur Bereitstellung von Informationen an Teilnehmer eines Fernmeldenetzes und Fernmeldenetz für die Anwendung des Verfahrens
DE60135567D1 (de) 2000-10-11 2008-10-09 United Video Properties Inc Systeme und verfahren zur bereitstellung von datenspeichern in servern in einem medien-auf-anfrage liefersystem
KR20070016051A (ko) 2005-08-02 2007-02-07 엘지전자 주식회사 디지털 텔레비젼 수신기에 있어서 방송 신호 및 psip테이블 디코딩 방법 및 장치
US7743397B2 (en) * 2001-01-17 2010-06-22 Lg Electronics Inc. Digital television signal, digital television receiver, and method of processing digital television signal
US8966540B2 (en) 2001-01-17 2015-02-24 Lg Electronics Inc. Digital television signal, digital television receiver, and method of processing digital television signal
KR100896725B1 (ko) 2001-02-21 2009-05-11 유나이티드 비디오 프로퍼티즈, 인크. 복수의 프로그램 가이드 제공 방법, 프로그램 버퍼링 방법 및 시스템
CA2676374C (en) 2001-03-22 2015-09-29 United Video Properties, Inc. Personal video recorder systems and methods
FR2823926B1 (fr) * 2001-04-19 2004-06-04 Scm Schneider Microsysteme Dev Procede et dispositif de traitement des donnees d'un flux multiplexe
US20030196206A1 (en) 2002-04-15 2003-10-16 Shusman Chad W. Method and apparatus for internet-based interactive programming
US20040210947A1 (en) 2003-04-15 2004-10-21 Shusman Chad W. Method and apparatus for interactive video on demand
US7493646B2 (en) 2003-01-30 2009-02-17 United Video Properties, Inc. Interactive television systems with digital video recording and adjustable reminders
US20060051059A1 (en) 2004-09-08 2006-03-09 Krakirian Haig H Video recorder having user extended and automatically extended time slots
US20060098739A1 (en) * 2004-11-09 2006-05-11 Lsi Logic Corporation Video frame encoder driven by repeat decisions
US7420616B2 (en) * 2004-12-07 2008-09-02 Lsi Corporation Video encoder with repeat field to repeat frame conversion
US9015736B2 (en) 2005-12-29 2015-04-21 Rovi Guides, Inc. Systems and methods for episode tracking in an interactive media environment
US7657526B2 (en) 2006-03-06 2010-02-02 Veveo, Inc. Methods and systems for selecting and presenting content based on activity level spikes associated with the content
US8316394B2 (en) 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
US7801888B2 (en) 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US8418206B2 (en) 2007-03-22 2013-04-09 United Video Properties, Inc. User defined rules for assigning destinations of content
US8989561B1 (en) 2008-05-29 2015-03-24 Rovi Guides, Inc. Systems and methods for alerting users of the postponed recording of programs
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
US20110004900A1 (en) * 2008-12-30 2011-01-06 Jinlong Li Channel navigation methods and apparatus for navigating a plurality of audio/video broadcasting channels
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US9014546B2 (en) 2009-09-23 2015-04-21 Rovi Guides, Inc. Systems and methods for automatically detecting users within detection regions of media devices
US9204193B2 (en) 2010-05-14 2015-12-01 Rovi Guides, Inc. Systems and methods for media detection and filtering using a parental control logging application
WO2012094564A1 (en) 2011-01-06 2012-07-12 Veveo, Inc. Methods of and systems for content search based on environment sampling
US8805418B2 (en) 2011-12-23 2014-08-12 United Video Properties, Inc. Methods and systems for performing actions based on location-based rules
US9264656B2 (en) 2014-02-26 2016-02-16 Rovi Guides, Inc. Systems and methods for managing storage space
CN105812897B (zh) 2016-03-22 2019-03-08 华为技术有限公司 一种节目播放控制方法及数字电视设备

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418782A (en) * 1992-10-30 1995-05-23 Scientific-Atlanta, Inc. Methods and apparatus for providing virtual service selection in a multi-service communications system
US5410344A (en) * 1993-09-22 1995-04-25 Arrowsmith Technologies, Inc. Apparatus and method of selecting video programs based on viewers' preferences
DE69631393T2 (de) * 1995-03-29 2004-10-21 Hitachi Ltd Dekoder für komprimierte und multiplexierte Bild- und Audiodaten
US5600378A (en) 1995-05-22 1997-02-04 Scientific-Atlanta, Inc. Logical and composite channel mapping in an MPEG network
US5760821A (en) * 1995-06-07 1998-06-02 News America Publications, Inc. Electronic program guide schedule localization system and method
US5864358A (en) 1995-06-26 1999-01-26 Matsushita Electric Industrial Co., Ltd. Method for switching programs in digital broadcasting and digital broadcast receiving apparatus
AU701138B2 (en) * 1995-07-13 1999-01-21 General Instrument Corporation Transmission of high rate isochronous data in MPEG-2 data streams
US6002394A (en) * 1995-10-02 1999-12-14 Starsight Telecast, Inc. Systems and methods for linking television viewers with advertisers and broadcasters
US6216264B1 (en) * 1995-11-17 2001-04-10 Thomson Licensing S.A. Scheduler apparatus employing a gopher agent
US6172988B1 (en) * 1996-01-31 2001-01-09 Tiernan Communications, Inc. Method for universal messaging and multiplexing of video, audio, and data streams
US5909257A (en) 1996-02-27 1999-06-01 Victor Company Of Japan, Ltd. Apparatus and method of receiving broadcasted digital signal
US6005631A (en) * 1996-03-28 1999-12-21 Scientific-Atlanta, Inc. Methods and apparatus for organizing and searching an electronic programming guide
US6025837A (en) * 1996-03-29 2000-02-15 Micrsoft Corporation Electronic program guide with hyperlinks to target resources
CA2243700C (en) 1996-11-21 2005-04-19 Philips Electronics N.V. Transmission and reception of television programs and an additional data service
US5943605A (en) 1997-04-16 1999-08-24 Lucent Technologies Inc. Arrangement for controlling extraction of data from a broadband digital stream employing a symbol table for translating symbolic program names to program and channel numbers
US6134554A (en) * 1998-11-10 2000-10-17 Opentv, Inc. System and method for recording receipt of information

Also Published As

Publication number Publication date
AU1242100A (en) 2000-05-29
EP1166554A1 (en) 2002-01-02
JP2002530019A (ja) 2002-09-10
EP1166554B8 (en) 2009-04-22
ATE424092T1 (de) 2009-03-15
EP1166554A4 (en) 2005-02-09
US6604243B1 (en) 2003-08-05
AU766340B2 (en) 2003-10-16
WO2000028739A1 (en) 2000-05-18
CA2348031A1 (en) 2000-05-18
ES2325104T3 (es) 2009-08-25
EP1166554B1 (en) 2009-02-25
DE69940481D1 (ja) 2009-04-09

Similar Documents

Publication Publication Date Title
JP4445675B2 (ja) 情報フィルタリングシステムおよび方法
US7865508B2 (en) Data structures and methods adapted for heterogeneous clients in an information distribution system
US8776150B2 (en) Implementation method and system for a media-on-demand frame-spanning playing mode in a peer-to-peer network
EP1889477B1 (en) Program guide optimization system
KR101643637B1 (ko) 비실시간 서비스 처리 방법 및 방송 수신기
US7627881B1 (en) Transmitting apparatus and receiving apparatus
US20030135857A1 (en) Content discovery in a digital broadcast data service
US20070199037A1 (en) Broadcast program content retrieving and distributing system
JP4445674B2 (ja) 情報の受信を記録するシステムおよび方法
JP2002518895A (ja) 伝送システム
US7788277B2 (en) Methods and apparatus for rapid capture of program identifier data in a broadband transcoder multiplexer
KR101221473B1 (ko) 메타 데이터 정보 제공 서버, 클라이언트 장치, 메타데이터 정보 제공 방법 및 콘텐츠 제공 방법
US20090075583A1 (en) Contents distribution system, and contents distribution method
JP2002518894A (ja) 伝送システム
JP4605479B2 (ja) 送信装置および送信方法、受信装置および受信方法、並びに送受信システムおよび送受信方法
CN1593060A (zh) 图文电视页面选择方法,图文电视接收机和电视机
WO2001031913A1 (en) Method and system for providing personalized broadcast television highlights service
CN1874491A (zh) 数字电视的视频点播方法
JP2003204275A (ja) メタデータ受信方法
JP2003143585A (ja) メタデータ受信装置
US20100049771A1 (en) Method for providing contents referencing information for personal data broadcasting service and receiving apparatus and processing method
JP2003203034A (ja) メタデータ受信プログラム及びメタデータ受信プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2003143573A (ja) メタデータ伝送方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061031

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20061031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091126

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091222

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100118

R150 Certificate of patent or registration of utility model

Ref document number: 4445675

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140122

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term