(57)【要約】【課題】ユーザが過去に閲覧した広告を履歴として表示可能な放送受信装置を提供する。【解決手段】総視聴率時間算出手段１８０２が番組が属する属性値ごとに番組視聴時間の総和を算出することで、第１種の広告選択手段が属性ごとの総視聴時間の総和値に基づいて属性に対応する広告データを選択し、第１種の広告履歴記憶手段が選択された広告データの履歴を記憶することで、第１種の広告表示手段が過去に表示した広告データを表示する。【選択図】図１
2010011115.tif 000002
【特許請求の範囲】
【請求項１】
番組と属性値の対応付けを記憶する番組属性値対応記憶手段と、
番組と総視聴時間計算に用いる重み値の対応付けを記憶する番組重み値記憶手段と、
各属性値に対応する番組の視聴時間とその番組に対して設定された重みの積を総和した値である各属性の総視聴時間を算出する総視聴時間算出手段と、
各属性の総視聴時間が長いほど高い確率で当該属性に対応付けられた第１種の広告をひとつ選択する第１種の広告選択手段と、
第１種の広告選択手段が選択した広告の履歴を記憶する第１種の広告履歴記憶手段と、
第１種の広告履歴記憶手段が記憶する広告を履歴に基づいて表示する第１種の広告表示手段とを備えることを特徴とする放送受信装置。
【請求項２】
第１種の広告履歴記憶手段が記憶する第１種の広告の履歴が一定の条件を満たすかどうか判断する広告履歴条件成立判定手段と、
広告履歴条件成立判定手段が第１種の広告の履歴が一定の条件を満たすと判断した場合に、第１種の広告とは異なる第２種の広告を新たに選択する第２種の広告選択手段と、
第２種の広告選択手段が選択した第２種の広告を表示する第２種の広告表示手段とを備えることを特徴とする請求項１記載の放送受信装置。
【請求項３】
第２種の広告選択手段は、広告履歴条件成立判定手段が第１種の広告の履歴が一定の条件を満たすと判断した場合に、前記一定の条件を満たしている第１種の広告に対応付けられた属性値に対応付けられた第２種の広告の中から新たにひとつの第２種の広告を選択することを特徴とする請求項２記載の放送受信装置。
【請求項４】
前記第１種の広告履歴条件成立判定手段が、前記第１種の広告の履歴が満たすべき一定の条件を、各属性値の過去の総視聴時間の比率によって定めることを特徴とする請求項２または３のいずれかに記載の放送受信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデジタル放送を受信する、ミドルウエアを搭載してアプリケーションを実行可能な放送受信装置に関するものである。具体的には、広告を視聴者に表示するサービスを実現する放送受信装置に関するものである。
【背景技術】
【０００２】
デジタル放送の普及に伴い、放送受信端末上で様々なサービスが実現されている。例えば、放送局から送信される放送波に多種多様なコンテンツを多重し、放送波を受信した放送受信端末でそのコンテンツを表示するサービスがある。コンテンツは、通常の番組で用いられる映像、音声の他に、テキストやビットマップといったデータやアプリケーションプログラムを含む場合がある。放送波を受信した放送受信端末は、放送波からアプリケーションプログラムを取り出し、同端末上でそれを実行する。
【０００３】
アプリケーションプログラムには様々な機能が持たせてあり、例えば、同放送波に多重されたテキストやビットマップを取り出して画面上に表示する。このような機能を持つ放送受信端末は、ミドルウエアと呼ばれるアプリケーション実行環境を内蔵していることが多い。
【０００４】
一例として、国内ではＢＭＬ形式で記述されたアプリケーションプログラムを実行するＢＭＬブラウザがある。
【０００５】
また別の例としては、Ｊａｖａ（登録商標）言語で記述されたアプリケーションプログラムを実行するプレゼンテーションエンジン型のミドルウエアもある。例えば、欧州でＤＶＢ−ＭＨＰ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｂｒｏａｄｃａｓｔｉｎｇ−Ｍｕｌｔｉｍｅｄｉａ  Ｈｏｍｅ  Ｐｌａｔｆｏｒｍ）  ＥＴＳＩ  ＥＳ  ２０１  ８１２  Ｖ１．１．１（２００３−１２）仕様が標準化され運用されている。また米国ではケーブル放送環境で同様の仕組みを提供するＯＣＡＰ（ＯｐｅｎＣａｂｌｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｌａｔｆｏｒｍ）  ＯＣ−ＳＰ−ＯＣＡＰ１．０−Ｉ１４−０５０１１９仕様が策定されており、実際に運用開始予定である。
【０００６】
これらの仕様では、アプリケーションプログラムがＪａｖａ（登録商標）言語で記述され、コンパイルされてバイナリ形式で放送波に多重される。端末は、放送波を受信すると、そこからバイナリ形式のアプリケーションプログラムを取り出して実行する。端末上にはチューニングやグラフィックス表示のための様々なＡＰＩ（アプリケーションプログラミングインタフェース）が用意されており、Ｊａｖａ（登録商標）アプリケーションプログラムはＡＰＩを呼び出すことでそれらの機能を制御できる。
【０００７】
Ｊａｖａ（登録商標）言語は柔軟性の高い言語であり、様々な動作をアプリケーションプログラムとしてプログラミングすることが可能である。そのような動作の一例として、グラフィックス表示機能を利用して画面上に広告を表示する機能が考えられる。例えば、近年、インターネットの情報検索サービスにおいて、情報検索結果に連動した広告を表示するサービスが普及しているが、それに類似したサービスも実現可能となる。
【０００８】
インターネットで広告を表示するサービスとしては、検索エンジンサイトがある。これは、キーワードを入力するとそのキーワードを含むウエブサイトへのリンクの一覧を表示すると言うサービスである。このサービスにおいて、検索のキーワードを入力すると、そのキーワードに関連する広告を表示するのである。視聴者は、自分の興味あるキーワードに関連のある広告を目にするため、広告宣伝効果が高いというメリットがある。
【０００９】
このような検索エンジンサイトの広告表示サービスを変形したものに、例えば、特許文献１がある。これはウエブサイトへのリンクを集めたポータルサイトと呼ばれるサービスへ適用した広告表示サービスである。まず複数のスポンサーの広告バナーがポータルサイトに表示される。ユーザがバナーの一つをクリックすると、ユーザの画面にビンゴ用紙が現れ、仮想的にひとつの数字が読み上げられる。すると、その数字と一致するビンゴのマスが開き、そのマスにユーザがその瞬間にアクセスした参加スポンサーのロゴが表示される。また、ビンゴが成立した一列に同じ参加スポンサーのロゴが並んだ場合、さらによい懸賞を出すことが可能である。
【特許文献１】特開２００２−８３２０３号公報（第３−４頁、段落００２１）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
検索サイトでは、検索結果の表示の際に、検索キーワードに関連する広告を合わせて表示する。しかし表示される広告は、現在の検索キーワードに対するものであり、過去に表示された広告を再び閲覧することはできない。同じキーワードで検索を繰り返して実行しても、過去に表示された広告が次回検索の際に表示される保障はない。そのため、ユーザが過去に表示された広告に興味を持ったとしても、見たいと思ったときに再び見ることが困難であるため、興味を失い、従って広告効果を下げてしまうことになる。
【００１１】
また特許文献１では、参加スポンサーのロゴはその時アクセスしたウエブサイトのスポンサーのものであり、ユーザの一過性の行動に左右されて広告が選択表示されてしまうという課題を有していた。
【００１２】
また、これらのサービスは、いずれもインターネットのウエブサイトを利用したサービスであり、放送受信端末で実現するものではない。
【００１３】
本発明は、前記従来の課題を解決するもので、ユーザが過去に閲覧した広告の履歴を表示することで過去に興味を持った広告の閲覧を容易にし、またユーザの過去の一定期間の視聴履歴に基づいて広告が選択することでユーザの本質的な趣味嗜好が広告の選択表示に反映されるような広告表示サービスが可能となる放送受信装置を得ることを目的とする。
【課題を解決するための手段】
【００１４】
前記従来の課題を解決するために、本発明の放送受信装置は、番組属性値対応記憶手段が番組と属性値の対応付けを記憶し、番組重み値記憶手段が番組と総視聴時間計算に用いる重み値の対応付けを記憶し、総視聴時間算出手段が各属性値に対応する番組の視聴時間とその番組に対して設定された重みの積を総和した値である各属性の総視聴時間を算出し、第１種の広告選択手段が各属性の総視聴時間が長いほど高い確率で当該属性に対応付けられた第１種の広告をひとつ選択し、第１種の広告履歴記憶手段が第１種の広告選択手段が選択した広告の履歴を記憶し、第１種の広告表示手段が第１種の広告履歴記憶手段が記憶する広告を履歴に基づいて表示する。本構成によって、ユーザが長時間視聴した番組に関連する広告を表示する際に、過去に表示した広告が履歴となって再び表示される。
【００１５】
また、広告履歴条件成立判定手段は、第１種の広告履歴記憶手段が記憶する第１種の広告の履歴が一定の条件を満たすかどうか判断し、第２種の広告選択手段は広告履歴条件成立判定手段が第１種の広告の履歴が一定の条件を満たすと判断した場合に、第１種の広告とは異なる第２種の広告を新たに選択し、第２種の広告表示手段は第２種の広告選択手段が選択した第２種の広告を表示する。本構成によって、ユーザが長時間視聴した番組に関連する広告を表示する際に、過去に表示した広告が特定の条件を満たす場合に追加で別の広告が表示される。
【００１６】
また、第２種の広告選択手段は、広告履歴条件成立判定手段が第１種の広告の履歴が一定の条件を満たすと判断した場合に、前記一定の条件を満たしている第１種の広告に対応付けられた属性値に対応付けられた第２種の広告の中から新たにひとつの第２種の広告を選択する。本構成によって、ユーザが長時間視聴した番組に関連する広告を表示する際に、過去に表示した広告が特定の条件を満たす場合に、番組に関連する広告に関連した別の広告が更に表示される。
【００１７】
また、前記第１種の広告履歴条件成立判定手段が、前記第１種の広告の履歴が満たすべき一定の条件を、各属性値の過去の総視聴時間の比率によって定める。本構成によって、広告の履歴が満たすべき一定の条件がユーザが長時間視聴した番組に関連する広告となるために、条件が成立しやすくなり、かつ成立した条件に基づいて表示される別の広告もまたユーザが長時間視聴した番組に関連するものになりやすくできる。
【発明の効果】
【００１８】
本発明の放送受信装置によれば、ユーザの番組視聴時間が長い分野に関する広告を何度も繰り返し表示でき、ユーザの興味に沿った効果的な広告表示をすることができる。
【００１９】
また、ユーザの番組視聴時間が長い分野に関する広告を何度も繰り返し表示した上に、条件を満たした場合は別の広告をさらに追加表示できるため、ユーザの興味に沿った効果的な広告表示をすることができる。
【００２０】
また、ユーザの番組視聴時間が長い分野に関する広告を何度も繰り返し表示した上に、条件を満たした場合はユーザの番組視聴時間が長い分野に関する別の広告をさらに追加表示できるため、ユーザの興味に沿った効果的な広告表示をすることができる。
【００２１】
また、ユーザの番組視聴時間が長い分野に関する広告の履歴が満たすべき条件が、ユーザの番組視聴時間が長い分野に依存するため、ユーザの興味に沿った効果的な広告表示をすることができる。
【発明を実施するための最良の形態】
【００２２】
以下本発明の実施の形態について、図面を参照しながら説明する。
【００２３】
（実施の形態１）
以下に、本発明の第１の実施形態に係る装置および方法を、図面を参照しながら説明する。本発明は、任意の媒体で送受信されるコンテンツの録画および再生を対象としたものであるが、本実施の形態ではケーブルテレビ放送システムでの実施の形態を例にとって説明する。ケーブルテレビ放送システムでは、本発明の放送録画再生装置は一般的に端末装置と呼ばれる。
【００２４】
図１６は、放送システムを構成する装置の関係を表したブロック図であり、放送局側システム１６０１および三個の端末装置Ａ１６１１、端末装置Ｂ１６１２、端末装置Ｃ１６１３で構成される。放送局側システムと各端末装置間の結合１６２１は、ケーブルシステムでは同軸ケーブルや光ファイバでの有線結合である。図１６では、１つの放送局側システムに対して三つの端末装置が結合されているが、端末装置の数は任意である。
【００２５】
放送局側システム１６０１は、複数の端末装置に対して映像・音声・データ放送用データ等の情報を放送信号に含めて送信する。放送信号は放送システムの運用既定や、放送システムが運用される国・地域の法律により定められた周波数帯域内の周波数を利用して伝送される。
【００２６】
本実施の形態のケーブルシステムでは、放送信号伝送に利用する周波数帯域は、そのデータの内容と伝送方向（上り、下り）ごとに分割して割り当てる。
【００２７】
図２は、周波数帯域の分割の一例を示す表である。周波数帯域は、Ｏｕｔ  Ｏｆ  Ｂａｎｄ（略称ＯＯＢ）とＩｎ−Ｂａｎｄの２種類に大別される。５〜１３０ＭＨｚがＯＯＢに割り当てられ、主に放送局側システム１６０１と端末装置Ａ１６１１、端末装置Ｂ１６１２、端末装置Ｃ１６１３間の上下双方向データのやり取りに使用される。１３０ＭＨｚ〜８６４ＭＨｚはＩｎ−Ｂａｎｄに割り当てられ、主として、映像・音声を含む下りのみの放送チャンネルに使用される。ＯＯＢではＱＰＳＫ変調方式が、Ｉｎ−ＢａｎｄはＱＡＭ６４またはＱＡＭ２５６変調方式が使用される。変調方式技術については、本発明に関与が薄い公知技術であるので、詳細な説明は省略する。
【００２８】
図３は、ＯＯＢ周波数帯域のさらに詳細な使用の一例である。７０ＭＨｚ〜７４ＭＨｚは放送局側システム１６０１からの下りデータ送信に使用され、すべての端末装置Ａ１６１１、端末装置Ｂ１６１２、端末装置Ｃ１６１３が、放送局側システム１６０１から等しいデータを受け取ることになる。一方、１０。０ＭＨｚ〜１０。１ＭＨｚは端末装置Ａ１６１１から放送局側システム１６０１への上りデータ送信に使用され、１０。１ＭＨｚ〜１０。２ＭＨｚは端末装置Ｂ１６１２から放送局側システム１６０１への上りデータ送信に使用され、１０。２ＭＨｚ〜１０。３ＭＨｚは端末装置Ｃ１６１３から放送局側システム１６０１への上りデータ送信に使用される。これにより、各端末装置固有のデータを各端末装置Ａ１６１１、端末装置Ｂ１６１２、端末装置Ｃ１６１３から放送局側システム１６０１に独立して送信することができる。
【００２９】
図４は、Ｉｎ−Ｂａｎｄの周波数帯に対する使用の一例である。１５０〜１５６ＭＨｚと１５６〜１６２ＭＨｚはそれぞれテレビチャンネル１とテレビチャンネル２に割り当てられ、以降、６ＭＨｚ間隔でテレビチャンネルが割り当てられている。３１０ＭＨｚ以降は、１ＭＨｚ単位でラジオチャンネルに割り当てられている。これらの各チャンネルはアナログ放送として使用してもデジタル放送として使用してもよい。デジタル放送の場合は、ＭＰＥＧ２仕様にもとづいたＴＳパケット形式で伝送され、音声や映像に加え、各種データ放送用データやＥＰＧを構成するための番組編成情報も送信することができる。
【００３０】
放送局側システム１６０１は、以上に説明した周波数帯域を利用して端末装置に適切な放送信号を送信するため、ＱＰＳＫ変調部やＱＡＭ変調部等をもつ。また、端末装置からのデータを受信するため、ＱＰＳＫ復調器をもつ。また、放送局側システム１６０１は、これら変調部および復調部に関連する様々な機器をもつと考えられる。しかし、本発明は主として端末装置に関わるので、詳細な説明は省略する。
【００３１】
一方、端末装置Ａ１６１１、端末装置Ｂ１６１２、端末装置Ｃ１６１３は、放送局側システム１６０１からの放送信号を受信し再生するために、ＱＡＭ復調部やＱＰＳＫ復調部を持つ。また、放送局側システム１６０１に対して、各端末装置固有のデータを送信するためにＱＰＳＫ変調部を持つ。本発明では、端末装置は放送録画再生装置であり、その詳細な構成は後述する。
【００３２】
放送局側システム１６０１は、ＭＰＥＧ２トランスポートストリームを変調して放送信号に含めて伝送する。端末装置は放送信号を受信し、復調してＭＰＥＧ２トランスポートストリームを再現し、その中から必要な情報を抽出して用いる。端末装置に存在するデバイスの機能と接続の構成を説明するため、まずＭＰＥＧ２トランスポートストリームの構成を簡単に述べる。
【００３３】
図５はＴＳパケットの構成を表す図である。ＴＳパケット５００は１８８バイトの長さを持ち、ヘッダ５０１、アダプテーションフィールド５０２、ペイロード５０３からなる。ヘッダ５０１はＴＳパケットの制御情報を保持する。４バイトの長さを持ち、５０４で表される構成をとる。この中に“Ｐａｃｋｅｔ  ＩＤ（以下ＰＩＤ）”と記述されるフィールドを持ち、このＰＩＤの値によって、ＴＳパケットの識別を行う。アダプテーションフィールド５０２は時刻情報等の付加的な情報を保持する。アダプテーションフィールド５０２の存在は必須ではなく、存在しない場合もある。ペイロード５０３は映像・音声やデータ放送用データ等、ＴＳパケットが伝送する情報を保持する。
【００３４】
図６はＭＰＥＧ２トランスポートストリームの模式図である。ＴＳパケットはそのペイロードに映像や音声、データ放送用のデータ等様々な情報を保持する。ＴＳパケット６０１およびＴＳパケット６０３はヘッダにＰＩＤ１００を保持し、ペイロードに映像１に関する情報を保持する。ＴＳパケット６０２およびＴＳパケット６０５はヘッダにＰＩＤ２００を保持し、ペイロードにデータ１に関する情報を保持する。ＴＳパケット６０４はヘッダにＰＩＤ３００を保持し、ペイロードに音声１に関する情報を保持する。このように様々な種類のデータをペイロードに保持したＴＳパケットを混合して一連のシーケンスとして送出することを多重と呼ぶ。ＭＰＥＧ２トランスポートストリーム６００はＴＳパケット６０１〜６０５を多重した構成の一例である。
【００３５】
同一ＰＩＤをもつＴＳパケットは同一種類の情報を保持する。そのため、端末装置は多重されたＴＳパケットを受信して、各ＴＳパケットが保持する情報をＰＩＤごとに抽出することで、映像・音声を再現したり、番組編成情報等のデータを再現したりできる。図６においては、ＴＳパケット６０１およびＴＳパケット６０３は共に映像１に関する情報を伝送し、またＴＳパケット６０２およびＴＳパケット６０５は共にデータ１に関する情報を伝送する。
【００３６】
ここで、ペイロードに内包される各種データの形式について説明する。
【００３７】
映像および音声は、ＰＥＳ（Ｐａｃｋｅｔｉｚｅｄ  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）パケットと呼ばれる形式で表現される。ＰＥＳパケットはある時間帯の映像情報または音声情報を含み、放送録画再生装置は、ＰＥＳパケットを受信することで、そのＰＥＳパケットが内包する映像・音声情報を画面・スピーカに出力することができる。放送局がＰＥＳパケットを途切れなく伝送することで、放送録画再生装置は、映像・音声を途切れなく再生し続けることが可能となる。ＰＥＳパケットは、実際に伝送される際、一つのＴＳパケットのペイロードよりも大きいサイズをもつ場合は分割されて複数のＴＳパケットのペイロードに格納される。
【００３８】
図７はＰＥＳパケットを伝送する際の分割例を表す。ＰＥＳパケット７０１は一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、ＰＥＳパケット分割Ａ７０２ａ、ＰＥＳパケット分割Ｂ７０２ｂ、ＰＥＳパケット分割Ｃ７０２ｃに分割され、同一ＰＩＤをもつ三つのＴＳパケット７０３〜７０５によって伝送される。実際には、映像や音声は、複数のＰＥＳパケットのペイロードに含まれるデータを結合して得られるエレメンタリストリーム（ＥＳ）として得られる。このエレメンタリストリームは、ＭＰＥＧ２ Ｖｉｄｅｏ規格やＭＰＥＧ１、２ Ａｕｄｉｏ規格で定義されるデジタル化映像、音声の形式になっている。
【００３９】
一方、番組編成情報やデータ放送用のデータ等の情報はＭＰＥＧ２セクションと呼ばれる形式を用いて表現される。ＭＰＥＧ２セクションは実際に伝送される際、一つのＴＳパケットのペイロードよりも大きいサイズをもつ場合は分割されて複数のＴＳパケットのペイロードに格納される。
【００４０】
図８はＭＰＥＧ２セクションを伝送する際の分割例を表す。ＭＰＥＧ２セクション８０１は一つのＴＳパケット内のペイロードに格納して伝送するには大きいため、セクション分割Ａ８０２ａ、セクション分割Ｂ８０２ｂ、セクション分割Ｃ８０２ｃに分割され、同一ＰＩＤをもつ三つのＴＳパケット８０３〜８０５によって伝送される。
【００４１】
図９はＭＰＥＧ２セクションの構造を表現する。ＭＰＥＧ２セクション９００はヘッダ９０１およびペイロード９０２から構成される。ヘッダ９０１はＭＰＥＧ２セクションの制御情報を保持する。その構成はヘッダ構成９０３によって表現される。ペイロード９０２はＭＰＥＧ２セクション９００が伝送するデータを保持する。ヘッダ構成９０３に存在するｔａｂｌｅ＿ｉｄはＭＰＥＧ２セクションの種類を表現し、さらにｔａｂｌｅ＿ｉｄ＿ｅｘｔｅｎｓｉｏｎはｔａｂｌｅ＿ｉｄが等しいＭＰＥＧ２セクション同士を区別する際に用いられる拡張識別子である。
【００４２】
ＭＰＥＧ２セクションの使用例として、図１０に番組編成情報を伝送する場合を挙げる。この例では、行１００４に記載されるように、放送信号の復調に必要な情報はヘッダ構成９０３内のｔａｂｌｅ＿ｉｄが６４であるＭＰＥＧ２セクションに記載され、さらにそのＭＰＥＧ２セクションはＰＩＤに１６が付与されたＴＳパケットによって伝送される。
【００４３】
ＭＰＥＧ２セクションの場合、ＰＥＳ形式は存在しない。そのため、ＭＰＥＧ２トランスポートストリームの中の同一ＰＩＤによって識別されるＴＳパケットのペイロードを結合したものをエレメンタリストリーム（ＥＳ）とする。例えば、図８において、ＭＰＥＧ２セクション８０１を分割して伝送しているＴＳパケット８０３〜８０５はすべてＰＩＤが２００で識別される。これはＭＰＥＧ２セクション８０１を伝送するＥＳである、と言うことができる。
【００４４】
ＭＰＥＧ２トランスポートストリーム内にはさらにプログラムという概念が存在する。プログラムはＥＳの集合として表現され、複数のＥＳをまとめて扱いたい場合に利用される。プログラムを利用すると、映像・音声や、それに付随するデータ放送用データ等を一まとめに扱うことが可能となる。例えば、同時に再生したい映像・音声をまとめて扱う場合、映像ＥＳと、音声ＥＳをプログラムとしてまとめることで、放送録画再生装置はこれら二つのＥＳを１つの番組として同時に再生すべきであることがわかる。
【００４５】
プログラムを表現するために、ＭＰＥＧ２ではＰＭＴ（Ｐｒｏｇｒａｍ  Ｍａｐ  Ｔａｂｌｅ）およびＰＡＴ（Ｐｒｏｇｒａｍ  Ａｓｓｏｃｉａｔｉｏｎ  Ｔａｂｌｅ）と呼ばれる二つのテーブルが利用される。詳細な説明はＩＳＯ／ＩＥＣ１３８１８−１、“ＭＰＥＧ２  Ｓｙｓｔｅｍｓ”仕様を参照されたい。以下ではＰＭＴおよびＰＡＴに関して簡単に説明する。
【００４６】
ＰＭＴはＭＰＥＧ２トランスポートストリーム中に、プログラムの数だけ含まれるテーブルである。ＰＭＴはＭＰＥＧ２セクションとして構成され、ｔａｂｌｅ＿ｉｄは２である。ＰＭＴにはプログラムの識別に用いられるプログラムナンバーとプログラムの付加情報、さらにプログラムに属するＥＳに関する情報を保持する。
【００４７】
ＰＭＴの例を図１１に挙げる。１１００はプログラムナンバーである。プログラムナンバーは同一トランスポートストリーム内でプログラムに一意に割り当てられ、ＰＭＴの識別に用いられる。行１１１１〜１１１５は個々のＥＳに関する情報を表現する。列１１０１はＥＳのタイプであり、“映像”、“音声”、“データ”等が指定される。列１１０２はＥＳを構成するＴＳパケットのＰＩＤである。列１１０３はＥＳに関する付加情報である。例えば、行１１１１に表されるＥＳは、音声ＥＳであり、ＰＩＤが５０１１であるＴＳパケットによって伝送される。
【００４８】
ＰＡＴはＭＰＥＧ２トランスポートストリームに一つだけ存在するテーブルである。ＰＡＴはＭＰＥＧ２セクションとして構成され、ｔａｂｌｅ＿ｉｄは０であり、ＰＩＤが０であるＴＳパケットによって伝送される。ＰＡＴには、ＭＰＥＧ２トランスポートストリームの識別に用いられるｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄと、ＭＰＥＧ２トランスポートストリーム内に存在するプログラムを表現するすべてのＰＭＴに関する情報を保持する。
【００４９】
ＰＡＴの例を図１２に挙げる。１２００はｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄである。ｔｒａｎｓｐｏｒｔ＿ｓｔｒｅａｍ＿ｉｄはＭＰＥＧ２トランスポートストリームの識別に用いられる。行１２１１〜１２１３はプログラムに関する情報を表現する。列１２０１はプログラムナンバーである。列１２０２はプログラムに対応するＰＭＴを伝送するＴＳパケットのＰＩＤである。例えば、行１２１１に表されるプログラムのＰＭＴは、プログラムナンバーが１０１であり、対応するＰＭＴはＰＩＤが５０１であるＴＳパケットによって伝送される。
【００５０】
端末装置があるプログラムを再生する場合は、ＰＡＴおよびＰＭＴを用いてプログラムを構成する映像・音声を特定し、それらを再生する。例えば、図１２のＰＡＴおよび図１１のＰＭＴを伝送するＭＰＥＧ２トランスポートストリームに関して、プログラムナンバーが１０１であるプログラムに属する映像・音声の再生を行う場合は以下のような手順をとる。まずＰＩＤが“０”であるＴＳパケットより、ｔａｂｌｅ＿ｉｄが“０”のＭＰＥＧ２セクションとして伝送されるＰＡＴを取得する。ＰＡＴよりプログラムナンバーが“１０１”であるプログラムを探索し、行１２１１を得る。行１２１１より、プログラムナンバーが“１０１”であるプログラムのＰＭＴを伝送するＴＳパケットのＰＩＤ“５０１”を得る。次いでＰＩＤが“５０１”であるＴＳパケットより、ｔａｂｌｅ＿ｉｄが“２”のＭＰＥＧ２セクションとして伝送されるＰＭＴを取得する。ＰＭＴより、音声のＥＳ情報である行１１１１および映像のＥＳ情報である行１１１２を得る。行１１１１より、音声ＥＳを伝送するＴＳパケットのＰＩＤ“５０１１”を得る。また行１１１２より、映像ＥＳを伝送するＴＳパケットのＰＩＤ“５０１２”を得る。次いでＰＩＤ“５０１１”のＴＳパケットより音声用ＰＥＳパケットを、ＰＩＤ“５０１２”のＴＳパケットより映像用ＰＥＳパケットを取得する。これにより、再生対象となる映像・音声のＥＳパケットを取得することが可能となり、プログラムナンバー１０１を構成する映像と音声を再生することができる。
【００５１】
なお、ＭＰＥＧ２トランスポートストリームは暗号化されている場合がある。これは限定視聴とも呼ばれる仕組みである。例えば、ある映像・音声情報を伝送するＰＥＳパケットに対して暗号化処理を行うことで、その暗号を解読できる特定視聴者のみが視聴できるようになる。暗号を解読して映像や音声を視聴するために、視聴者はデスクランブラと呼ばれるデバイスを用いて暗号解除を行う。例えば、ＯＣＡＰ対応の端末装置は、デスクランブラを内蔵したカード型のアダプタを利用する。ケーブルテレビのオペレータは、視聴者ごとに特定のプログラムを解読できるように設定したアダプタを配布し、視聴者はそのアダプタを端末装置に挿入する。すると、アダプタは、暗号解除鍵等の暗号解除情報や各契約者の契約情報を元に、特定のプログラムに関して暗号を解除する。暗号解除の方式や、暗号解除鍵の入手方法はアダプタ依存であり、本発明の実現には影響しない。
【００５２】
ここまでＭＰＥＧ２仕様に関する簡単な説明を行ったが、ここで、単語の詳細な定義を行う。本発明に関して、「プログラム」という単語が二種類存在する。一つはＭＰＥＧ２仕様に登場する「プログラム」であり、もう一つはＣＰＵが実行するコードの集合という意味での「プログラム」である。前者に関しては、運用規定で用いられる「サービス」という単語と同義であるため、混乱を避けるため、以降、前者を「サービス」と呼び、後者を単に「プログラム」とよぶ。さらに後者に関して、特にＪａｖａ（登録商標）言語で記述された「プログラム」を「Ｊａｖａ（登録商標）プログラム」とよぶ。
【００５３】
以上、本発明に関わる、ＭＰＥＧ２仕様にて決定されるいくつかの一般的な情報に関して説明を行った。以降、本実施の形態で用いる放送受信装置に関して詳細に説明する。
【００５４】
図１３は、本実施の形態の放送受信装置の一般的なハードウェア構成を表すブロック図であり、すなわち図１６における端末装置１６１１、１６１２、１６１３の具体的な内部構成である。１３００は放送受信装置であり、チューナ１３０１、ＴＳデコーダ（ＴＳ  Ｄｅｍｕｌｔｉｐｌｅｘｅｒ）１３０２、ＡＶデコーダ１３０３、スピーカ１３０４、ディスプレイ１３０５、ＣＰＵ１３０６、２次記憶部１３０７、１次記憶部１３０８、ＲＯＭ１３０９、入力部１３１０、アダプタ１３１１で構成される。なお本実施の形態は、ＯＣＡＰ仕様で実現される放送受信端末を拡張して得られるものであり、基本的なハードウェア構成はＯＣＡＰ仕様で要求されるものとほぼ同じである。
【００５５】
チューナ１３０１は、ＣＰＵ１３０６が指定する周波数などのチューニング情報に従って、放送局側システム１６０１から伝送される変調された放送信号を復調するデバイスである。チューナ１３０１は、内部にＩｎ−ｂａｎｄ信号を復調するＱＡＭ復調器１３０１a、Ｏｕｔ−ｏｆ−ｂａｎｄ信号を復調するＱＰＳＫ復調器１３０１ｂ及び変調するＱＰＳＫ変調器１３０１ｃを持つ。チューナ１３０１のＱＡＭ復調器１３０１aがＩｎ−ｂａｎｄ信号を復調した結果得られるＭＰＥＧ２トランスポートストリームは、暗号解除機能をもつアダプタ１３１１を経て、ＴＳデコーダ１３０２に転送される。
【００５６】
ＴＳデコーダ１３０２は、ＣＰＵ１３０６が指定するＰＩＤ、セクションフィルタ条件等の指定にもとづいてＭＰＥＧ２トランスポートストリームから指定条件に合致するＰＥＳパケットやＭＰＥＧ２セクションを選別する機能をもつデバイスである。この選別機能をパケットフィルタリングと呼ぶ。ＴＳデコーダ内にはＰＩＤフィルタとセクションフィルタの二種類のフィルタデバイスが内蔵されている。フィルタリングの詳細については後述する。ＴＳデコーダへのＭＰＥＧ２トランスポートストリームの入力は、アダプタ１３１１が出力するＭＰＥＧ２トランスポートストリームである。
【００５７】
ＴＳデコーダ１３０２が選別した映像および音声のＰＥＳパケットは、ＡＶデコーダ１３０３に出力される。また、ＴＳデコーダ１３０２が選別したＭＰＥＧ２セクションは、１次記憶部１３０８にＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送され、ＣＰＵ１３０６が実行するプログラムなどによって利用される。
【００５８】
ＡＶデコーダ１３０３はエンコードされた映像ＥＳおよび音声ＥＳをデコードする機能をもつデバイスである。ＡＶデコーダはＴＳデコーダから転送される音声および映像情報を伝送するＰＥＳパケットからＥＳを取り出してデコードする。ＡＶデコーダ１３０３がデコードして得られたａｕｄｉｏ信号およびｖｉｄｅｏ信号は、サービスの再生のためにスピーカ１３０４、ディスプレイ１３０５に出力される。
【００５９】
スピーカ１３０４は、ＡＶデコーダ１３０３から出力された音声を再生する。
【００６０】
ディスプレイ１３０５は、ＡＶデコーダ１３０３から出力された映像を再生する。
【００６１】
ＣＰＵ１３０６は放送録画再生装置上で動作するプログラムを実行する。ＣＰＵ１３０６は、ＲＯＭ１３０９に内蔵されるプログラムを実行する。あるいは、放送信号やネットワークよりダウンロードされ１次記憶部１３０８に保持されているプログラムも実行する。あるいは、放送信号やネットワークよりダウンロードされ２次記憶部１３０７に保存されているプログラムも実行する。そして実行するプログラムの指示に従い、チューナ１３０１、ＴＳデコーダ１３０２、ＡＶデコーダ１３０３、スピーカ１３０４、ディスプレイ１３０５、２次記憶部１３０７、１次記憶部１３０８、ＲＯＭ１３０９、入力部１３１０、アダプタ１３１１を制御する。また、ＣＰＵ１３０６は端末装置１３００内に存在するデバイスだけでなく、アダプタ１３１１内のデバイスと通信し、アダプタ１３１１を制御することが可能である。
【００６２】
２次記憶部１３０７は機器の電源が遮断されても記憶が消去されない記憶装置である。例えばＦＬＡＳＨ−ＲＯＭ等の不揮発性メモリ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＣＤ−ＲやＤＶＤ−Ｒ等の書き換え可能のメディア等、端末装置１３００の電源断の際にも情報が消去されない機器によって構成され、ＣＰＵ１３０６の指示により情報の保存を行う。
【００６３】
１次記憶部１３０８は、ＣＰＵ１３０６やＤＭＡ転送可能なデバイスの指示に従って情報を一時的に保存する機能をもつデバイスであり、ＲＡＭ等によって構成される。
【００６４】
ＲＯＭ１３０９は、書き換え不可能なメモリーデバイスであり、具体的にはＲＯＭやＣＤ−ＲＯＭ、ＤＶＤ等で構成される。ＲＯＭ１３０９には、ＣＰＵ１３０６が実行するプログラムが格納されている。
【００６５】
入力部１３１０は、具体的には、フロントパネルやリモコン受信機で構成され、ユーザからの入力を受け付ける。図１４は、フロントパネルで入力部１３１０を構成した場合の一例である。フロントパネル１４００は七つのボタン、上カーソルボタン１４０１、下カーソルボタン１４０２、左カーソルボタン１４０３、右カーソルボタン１４０４、ＯＫボタン１４０５、取消ボタン１４０６、ＥＰＧボタン１４０７、モード切換ボタン１４０８を備えている。ユーザがボタンを押下すると、押下されたボタンの識別子が、ＣＰＵ１３０６に通知される。
【００６６】
アダプタ１３１１は、Ｉｎ−ｂａｎｄ周波数帯で伝送されるＭＰＥＧ２トランスポートストリームにかけられた暗号を解除する装置で、1つ以上のデスクランブラを搭載する。アダプタ１３１１にはチューナ１３０１ａが出力するＭＰＥＧ２トランスポートストリームが入力され、ＣＰＵ１３０６が指定したＰＩＤをもつＴＳパケットに対して暗号解除を行う。アダプタ１３１１は、暗号を解除したＭＰＥＧ２トランスポートストリームをＴＳデコーダ１３０２に出力する。
【００６７】
さらに、アダプタ１３１１は、ＯＯＢ周波数帯で伝送されるデータの形式変換も行う。ＯＯＢで伝送される情報はＱＰＳＫ変調方式で変調される。下り方向の伝送に関しては、ＱＰＳＫ復調器１３０１ｂは放送局側システム１０１から送信されてくる下りの信号を復調し、生成されたビットストリームをアダプタ１３１１に入力する。アダプタ１３１１はビットストリームが含む様々な情報の中から、ＣＰＵ１３０６が指定する情報を抽出して、ＣＰＵ１３０６上で動作するプログラムが解釈可能な形式に変換して、ＣＰＵ１３０６に提供する。一方、上り方向の伝送に関しては、ＣＰＵ１３０６が、放送局側システム１０１に対して送信したい情報を、アダプタ１３１１に入力する。アダプタ１３１１は、ＣＰＵ１３０６から入力された情報を放送局側システム１０１が解釈可能な形式に変換し、ＱＰＳＫ変調器１３０１ｃに入力する。ＱＰＳＫ変調器１３０１ｃはアダプタ１３１１から入力された情報をＱＰＳＫ変調し、放送局側システム１０１に送信する。
【００６８】
アダプタ１３１１の具体例としては、米国ケーブルシステムで利用されるＣａｂｌｅＣＡＲＤ、旧名ＰＯＤ（Ｐｏｉｎｔ  Ｏｆ  Ｄｅｐｌｏｙｍｅｎｔ）が挙げられる。
【００６９】
以上説明した放送受信装置が、放送波を受信して、その放送波に含まれるサービスを再生する動作について、以下に詳細に説明する。
【００７０】
図１５に、各デバイスの物理的な接続順序と処理内容、入出力のデータ形式を表現する概念図を示す。１５００は端末装置であり、チューナ１３０１、アダプタ１３１１、デスクランブラ１５０１、ＴＳデコーダ１３０２、ＰＩＤフィルタ１５０２、セクションフィルタ１５０３、ＡＶデコーダ１３０３、１次記憶部１３０８をもつ。図１５の構成要素のうち、図１３の構成要素と同一符号を持つものは、それらと同等の機能をもつため、説明を省略する。
【００７１】
まずＣＰＵ１３０６が指定したチューニング指示に従って、チューナ１３０１が放送波をチューニングする。チューナ１３０１は、放送波を復調し、アダプタ１３１１にＭＰＥＧ２トランスポートストリームを入力する。
【００７２】
アダプタ１３１１内にあるデスクランブラ１５０１は、視聴者ごとの限定解除情報に基づいて、ＭＰＥＧ２トランスポートストリームの暗号解除を行う。暗号解除されたＭＰＥＧ２トランスポートストリームは、ＴＳデコーダに入力される。
【００７３】
ＴＳデコーダ１３０２内にはＭＰＥＧ２トランスポートストリームに対して処理を行う２種類のデバイス、ＰＩＤフィルタ１５０２、セクションフィルタ１５０３が存在する。
【００７４】
ＰＩＤフィルタ１５０２は、入力されたＭＰＥＧ２トランスポートストリームから、ＣＰＵ１３０６が指定したＰＩＤをもつＴＳパケットを抽出し、さらにそのペイロードに存在するＰＥＳパケットやＭＰＥＧ２セクションを抽出する。例えば、ＣＰＵ１３０６がＰＩＤ＝１００のＴＳパケットを抽出するＰＩＤフィルタリングを指示した場合に図６のＭＰＥＧ２トランスポートストリームが入力されたとすると、パケット６０１および６０３が抽出されて更に連結され、映像１のＰＥＳパケットが再構成される。あるいは、ＣＰＵ１３０６がＰＩＤ＝２００のＴＳパケットを抽出するＰＩＤフィルタリングを指示した場合に図６のＭＰＥＧ２トランスポートストリームが入力されたとすると、パケット６０２および６０５が抽出されて更に連結され、データ１のＭＰＥＧ２セクションが再構成される。
【００７５】
セクションフィルタ１５０３は、入力されたＭＰＥＧ２セクションの中から、ＣＰＵ１３０６が指定するセクションフィルタ条件に合致するＭＰＥＧ２セクションを抽出し、１次記憶部１３０８にＤＭＡ転送する。セクションフィルタ条件としては、ＰＩＤ値と補助条件としてｔａｂｌｅ＿ｉｄ値が指定できる。例えば、ＣＰＵ１３０６はＰＩＤ＝２００のＴＳパケットを抽出するＰＩＤフィルタリングとｔａｂｌｅ＿ｉｄが６４であるセクションを抽出するセクションフィルタリングをセクションフィルタ１５０３に対して指定したとする。先に述べたように、データ１のＭＰＥＧ２セクションが再構成された後、セクションフィルタ１５０３はそのＭＰＥＧ２セクションの中からｔａｂｌｅ＿ｉｄが６４であるセクションのみを抽出し、バッファである１次記憶部１３０８にＤＭＡ転送する。
【００７６】
１次記憶部１３０８に入力されたＭＰＥＧ２セクションは、CPU１３０６によって実行されるソフトウエアによって解釈され、解釈結果に応じて様々な動作が行われる。具体的な動作は、ソフトウエアに依存するため、ソフトウエアの構成の説明にて述べる。
【００７７】
ＴＳデコーダ１３０２によって抽出されたｖｉｄｅｏ（映像）ＰＥＳパケットとａｕｄｉｏ（音声）ＰＥＳパケットは、ＡＶデコーダ１３０３に入力される。
【００７８】
ＡＶデコーダは、映像ＰＥＳパケットをデコードしてｖｉｄｅｏ（映像）信号に変換し、ディスプレイ１３０５に入力する。これにより、ディスプレイにて映像が再生される。また音声ＰＥＳパケットをデコードしてａｕｄｉｏ（音声）信号に変換し、スピーカ１３０４に入力する。これによりスピーカにて音声が再生される。
【００７９】
ここまでは、本発明に関するハードウェアの構成例に関して述べたが、以降、本発明の主要機能である、Ｊａｖａ（登録商標）プログラムによる広告表示サービスの実現方法に関して説明する。
【００８０】
図１７は、サービスの再生に必要とされるプログラムの構成図であり、ＲＯＭ１３０９に記憶されているソフトウエアである。
【００８１】
プログラム１７００は、サブプログラムであるＯＳ１７０１、ＥＰＧ１７０２、Ｊａｖａ（登録商標）ＶＭ１７０３、Ｊａｖａ（登録商標）ライブラリ１７０４で構成される。
【００８２】
ＯＳ１７０１は、オペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）であり、Ｌｉｎｕｘ、Ｗｉｎｄｏｗｓ（登録商標）等が一例である。ＯＳ１７０１は、他のサブプログラム、例えばＥＰＧ１７０２とＪａｖａ（登録商標）ＶＭ１７０３を実行するためのカーネル１７０１ａと、サブプログラムが端末装置１３００の構成要素を制御するために利用するライブラリ１７０１ｂで構成される。カーネル１７０１ａは公知技術であり、詳細な説明は省略する。
【００８３】
ライブラリ１７０１ｂは、例えばチューナを制御するチューニング機能を提供する。ライブラリ１７０１ｂは、他のサブプログラムから周波数を含むチューニング情報を受け取り、それをチューナ１３０１に引き渡す。チューナ１３０１は与えられたチューニング情報にもとづき復調処理を行い、復調したＭＰＥＧ２トランスポートストリームをＴＳデコーダ１３０２に引き渡すことができる。この結果、他のサブプログラムはライブラリ１７０１ｂを通してチューナ１３０１を制御することができる。
【００８４】
また、ライブラリ１７０１ｂは、チャンネルを一意に識別するためのチャンネル情報を提供する。チャンネル情報の一例を図２０に示す。チャンネル情報はＯＯＢあるいはＩｎ−ｂａｎｄ周波数帯を利用して送信され、アダプタ１３１１で表形式に変換され、ライブラリがアクセス可能な一時記憶部に格納される。列２００１は、チャンネル識別子で、例えば、ＳＣＴＥ  ６５  Ｓｅｒｖｉｃｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｄｅｌｉｖｅｒｅｄ  Ｏｕｔ−Ｏｆ−Ｂａｎｄ  Ｆｏｒ Ｄｉｇｉｔａｌ Ｃａｂｌｅ Ｔｅｌｅｖｉｓｉｏｎで定義されるｓｏｕｒｃｅ＿ＩＤが相当する。列２００２は、チャンネル名であり、同ＳＣＴＥ  ６５規格ではｓｏｕｒｃｅ＿ｎａｍeなどに相当する。列２００３はチューニング情報であり、周波数や転送レート、変調方式といったチューナ１３０１に与える情報である。列２００４はＰＭＴを指定するためのプログラムナンバーである。例えば、行２０１１はチャンネル識別子が「１」、チャンネル名が「チャンネル１」、チューニング情報に周波数「１５０ＭＨｚ、．．．．」、プログラムナンバーが「１０１」であるサービス情報の組となっている。
【００８５】
この他にも、ライブラリ１７０１ｂは図１３に示したハードウェア構成要素に対して制御用のパラメータを設定することができる。個々の機能については、後述する。
【００８６】
Ｊａｖａ（登録商標）ＶＭ１７０３は、Ｊａｖａ（登録商標）言語で記述されたプログラムを逐次解析し実行するＪａｖａ（登録商標）バーチャルマシンである。Ｊａｖａ（登録商標）言語で記述されたプログラムはバイトコードと呼ばれる、ハードウェアに依存しない中間コードにコンパイルされる。Ｊａｖａ（登録商標）バーチャルマシンは、このバイトコードを実行するインタープリタである。Ｊａｖａ（登録商標）ＶＭ１７０３は、Ｊａｖａ（登録商標）言語で記述されたＪａｖａ（登録商標）ライブラリ１７０４を実行する。Ｊａｖａ（登録商標）言語やＪａｖａ（登録商標）ＶＭの詳細は、書籍「Ｊａｖａ（登録商標）  Ｌａｎｇｕａｇｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＩＳＢＮ  ０−２０１−６３４５１−１）」や「Ｊａｖａ（登録商標）  Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ（ＩＳＢＮ  ０−２０１−６３４５１―Ｘ）」等を参照のこと。また、ＪＮＩ（Ｊａｖａ（登録商標）  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ）を通して、Ｊａｖａ（登録商標）言語で記述されていない他のサブプログラムを呼び出したり、または、呼び出されたりすることが可能である。ＪＮＩに関しては、書籍「Ｊａｖａ（登録商標）  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ」等を参照のこと。
【００８７】
Ｊａｖａ（登録商標）ライブラリ１７０４は、Ｊａｖａ（登録商標）プログラムが放送録画再生装置の機能を制御するために呼び出すＪａｖａ（登録商標）言語で記述されたライブラリである。ただし、必要に応じて、ＯＳ１７０１のライブラリ１７０１ｂなど非Ｊａｖａ（登録商標）言語で記述されたサブプログラムを利用することもある。Ｊａｖａ（登録商標）プログラムは、Ｊａｖａ（登録商標）ライブラリ１７０４が持つＪａｖａ（登録商標）  ＡＰＩ（アプリケーションプログラミングインタフェース）を呼び出すことで、Ｊａｖａ（登録商標）ライブラリ１７０４が提供する機能を利用できる。
【００８８】
Ｔｕｎｅｒ１７０４ｃは、放送録画再生端末のＩｎ−ｂａｎｄ受信用チューナ１３０１ａを制御するためのＪａｖａ（登録商標）ライブラリである。Ｊａｖａ（登録商標）プログラムがＴｕｎｅｒ１７０４ｃに周波数などを含むチューニング情報を渡すと、Ｔｕｎｅｒ１７０４ｃはそれを用いてライブラリ１７０１ｂのチューナ機能を呼び出し、結果、放送録画再生端末のＩｎ−ｂａｎｄ受信用チューナ１３０１ａの動作を制御できる。
【００８９】
ＳＦ１７０４ｅは、放送録画再生端末のＰＩＤフィルタ１５０２およびセクションフィルタ１５０３機能を制御するためのＪａｖａ（登録商標）ライブラリである。Ｊａｖａ（登録商標）プログラムがＳＦ１７０４ｅにＰＩＤやｔａｂｌｅ＿ｉｄなどのフィルタ条件を渡すと、ＳＦ１７０４ｅはその条件を元にライブラリ１７０１ｂの機能などを用いてＰＩＤフィルタ１５０２およびセクションフィルタ１５０３にフィルタリング条件を設定して制御し、所望のフィルタ条件に叶うＭＰＥＧ２セクションを取得して、フィルタ条件を設定したＪａｖａ（登録商標）プログラムに渡す。
【００９０】
ＤＳＭ−ＣＣ１７０４ｄは、ＤＳＭ−ＣＣオブジェクトカルーセルのファイルシステムにアクセスするためのＪａｖａ（登録商標）ライブラリである。ＤＳＭ−ＣＣオブジェクトカルーセルは、ＳＦ１７０４ｅによって取得されるＭＰＥＧ２セクションが内包している。ＤＳＭ−ＣＣは、ＩＳＯ／ＩＥＣ１３８１８−６規格で定義されており、ＭＰＥＧ２セクションを利用して任意のファイルを伝送するための仕組みである。これを利用することで、放送局から端末にファイルを伝送することができる。ＤＳＭ−ＣＣ１７０４ｄは、Ｊａｖａ（登録商標）プログラム等から指定されたＤＳＭＣＣ識別子とファイル識別子等を元に、ＳＦ１７０４ｅを利用してＭＰＥＧ２セクションを取得し、ＩＳＯ／ＩＥＣ１３８１８−６規格に基づいてファイルを取り出して１次記憶部１３０８や２次記憶部１３０７に出力する。ＤＳＭ−ＣＣの詳細な実現方法は本発明とは関係ないため、説明を省略する。
【００９１】
ＡＭ１７０４ｂは、サービスに含まれるＪａｖａ（登録商標）プログラムの実行や終了を管理する機能を提供するアプリケーションマネージャ（Ａｐｐｌｉｃａｔｉｏｎ  Ｍａｎａｇｅｒ）である。ＡＭ１７０４ｂは指定されたＭＰＥＧ２トランスポートストリームの指定されたチャンネルに多重されたＪａｖａ（登録商標）プログラムを抽出し、その抽出したＪａｖａ（登録商標）プログラムを別途多重された同期情報に従って実行したり、あるいは終了させたりする。Ｊａｖａ（登録商標）プログラムのＪａｖａ（登録商標）クラスファイルは、前述のＤＳＭ―ＣＣ方式でＭＰＥＧ２トランスポートストリームに多重されている。また、Ｊａｖａ（登録商標）プログラムの同期情報はＡＩＴと呼ばれる形式で、ＭＰＥＧ２トランスポートストリームに多重されている。ＡＩＴは、ＤＶＢ−ＭＨＰ規格（ＥＴＳＩ  ＴＳ  １０１  ８１２  ＤＶＢ−ＭＨＰ仕様Ｖ１．０．２）の１０章に定義されている、Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅの略であり、ｔａｂｌｅ＿ｉｄが「０ｘ７４」であるＭＰＥＧ２セクションである。本実施の形態の説明では、ＤＶＢ−ＭＨＰ規格で定義されるＡＩＴに改変を加えて使用する。
【００９２】
ＡＭ１７０４ｂの内部構成を図２４に示す。ＡＭ１７０４ｂは、ＡＩＴ監視部２４０２と、アプリケーション状態管理部２４０１で構成される。
【００９３】
ＡＩＴ監視部２４０２は、サービスの再生時にＴＳデコーダ１３０２から出力されて１次記憶部１３０８に記憶されるＭＰＥＧ２トランスポートストリーム中のプライベートセクションと、チャンネル識別子を入力として、ＡＩＴの更新状況を監視する。まず、ＡＩＴ監視部２４０２は、指定されたチャンネル識別子をキーとしてライブラリ１７０１ｂのチャンネル情報を検索し、当該サービスのプログラムナンバーを得る。次にＳＦ１７０４ｅなどを利用して、ＭＰＥＧ２トランスポートストリームからＰＡＴを取得する。さらにＰＭＴの情報から、先ほど得られたプログラムナンバーに対応するＰＭＴのＰＩＤが得られる。再度ＳＦ１７０４ｅを利用して、実際のＰＭＴを取得する。取得されたＰＭＴは図１１の形式をしており、ストリーム種別が「データ」で補足情報として「ＡＩＴ」をもつエレメンタリ−ストリームのＰＩＤが書かれている。更にＳＦ１７０４ｅに、フィルタリング条件として今得られたＡＩＴのＰＩＤとｔａｂｌｅ＿ｉｄ「０ｘ７４」を与えると、ＡＩＴの実体が得られる。
【００９４】
図２２は、ＡＩＴの情報の一例を模式的に表した表である。ＡＩＴバージョン番号２２００は、そのＡＩＴのバージョンを表現する。ＡＩＴバージョンが大きいほど、そのＡＩＴはより新しいＡＩＴである。等しいＡＩＴバージョンをもつＡＩＴは繰り返し受信されるが、ＡＩＴ監視部２４０２はすでに取得したＡＩＴと等しいＡＩＴバージョンをもつＡＩＴは取得せずに無視し、すでに取得したＡＩＴよりも新しいＡＩＴのみを取得する。ＡＩＴ監視部２４０２は、取得した新しいＡＩＴを、アプリケーション状態管理部２４０１に出力する。列２２０１はＪａｖａ（登録商標）プログラムの識別子である。ＭＨＰ規格によれば、この識別子はＡｐｐｌｉｃａｔｉｏｎ  ＩＤとして定義される。列２２０２はＪａｖａ（登録商標）プログラムの制御情報である。制御情報には「ａｕｔｏｓｔａｒｔ」「ｐｒｅｓｅｎｔ」「ｋｉｌｌ」等があり、「ａｕｔｏｓｔａｒｔ」は即時に端末装置１３００がこのＪａｖａ（登録商標）プログラムを自動的に実行することを意味し、「ｐｒｅｓｅｎｔ」は自動実行しないことを意味し、「ｋｉｌｌ」はＪａｖａ（登録商標）プログラムを停止することを意味する。列２２０３は、ＤＳＭ―ＣＣ方式でＪａｖａ（登録商標）プログラムを含んでいるＰＩＤを抽出するためのＤＳＭ―ＣＣ識別子である。列２２０４はＪａｖａ（登録商標）プログラムのプログラム名である。列２２０５は、ｓｅｒｖｉｃｅ＿ｂｏｕｎｄ＿ｆｌａｇで、１の場合は別のサービスを選択した際に当該Ｊａｖａ（登録商標）プログラムは必ず終了されることを意味する。０の場合は、別のサービスを選択した際に、そのサービスのＡＩＴにも当該Ｊａｖａ（登録商標）プログラムが記述されている場合には当該Ｊａｖａ（登録商標）プログラムは終了せずに継続して実行されることを意味する。行２２１１、行２２１２、行２２１３、行２２１４は、Ｊａｖａ（登録商標）プログラムの情報の組である。行２２１１で定義されるＪａｖａ（登録商標）プログラムは、Ｊａｖａ（登録商標）プログラムの識別子「０ｘ３２２１」、制御情報「ａｕｔｏｓｔａｒｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ａ／ＴｏｐＸｌｅｔ」の組である。同様に、行２２１２で定義されるＪａｖａ（登録商標）プログラムは、Ｊａｖａ（登録商標）プログラムの識別子「０ｘ３２２２」、制御情報「ｐｒｅｓｅｎｔ」、ＤＳＭＣＣ識別子「１」、プログラム名「ｂ／ＧａｍｅＸｌｅｔ」の組である。ここで、行２２１１、行２２１２、行２２１４で定義される３つのＪａｖａ（登録商標）プログラムは同一のＤＳＭＣＣ識別子をもつが、これは１つのＤＳＭＣＣ方式でエンコードされたファイルシステム内に３つのＪａｖａ（登録商標）プログラムが含まれていることを表す。ここでは、Ｊａｖａ（登録商標）プログラムに対して４つの情報しか規定しないが、実際にはより多くの情報が定義される。詳細はＤＶＢ−ＭＨＰ規格を参照されたい。
【００９５】
アプリケーション状態管理部２４０１は、ＡＩＴ監視部２４０２から出力される更新されたＡＩＴの内容を解析し、ＡＩＴの内容に基づいてＪａｖａ（登録商標）プログラムの実行状態を管理する。
【００９６】
まずアプリケーション状態管理部２４０１は、ＡＩＴの中から制御情報が「ａｕｔｏｓｔａｒｔ」であるＪａｖａ（登録商標）プログラムを見つけ出し、対応するＤＳＭＣＣ識別子およびＪａｖａ（登録商標）プログラム名を抽出する。図２２を参照して、ＡＭ１７０４ｂは行２２１１のＪａｖａ（登録商標）プログラムを抽出し、ＤＳＭＣＣ識別子「１」およびＪａｖａ（登録商標）プログラム名「ａ／ＴｏｐＸｌｅｔ」を取得する。次いでアプリケーション状態管理部２４０１は、ＡＩＴから取得したＤＳＭＣＣ識別子を用いてＤＳＭＣＣ１７０４ｄにアクセスし、ＤＳＭＣＣファイルシステムに格納されたＪａｖａ（登録商標）プログラムのファイルを取り出せるようにする。ファイルは１次記憶部１３０８や２次記憶部１３０７に記録される。ＭＰＥＧ２トランスポートストリーム中のＴＳパケットからファイルシステム等のデータを取り出し１次記憶部１３０８、２次記憶部１３０７等の記憶手段に保存することを以降、ダウンロードとよぶ。
【００９７】
図２３は、ダウンロードしたファイルシステムの一例である。図中、丸はディレクトリを四角はファイルを表し、２３０１はルートディレクトリ、２３０２はディレクトリ「ａ」、２３０３はディレクトリ「ｂ」、２３０４はファイル「ＴｏｐＸｌｅｔ．ｃｌａｓｓ」、２３０５はファイル「ＧａｍｅＸｌｅｔ．ｃｌａｓｓ」、２３０６はディレクトリ「ｚ」、２３０７はファイル「ＭｕｓｉｃＸｌｅｔ．ｃｌａｓｓ」、２３０８はファイル「ＳｔｕｄｙＸｌｅｔ。ｃｌａｓｓ」である。
【００９８】
次いでアプリケーション状態管理部２４０１は、１次記憶部１３０８にダウンロードされたファイルシステム中から実行するＪａｖａ（登録商標）プログラムをＪａｖａ（登録商標）ＶＭ１７０３に引き渡す。ここで、実行するＪａｖａ（登録商標）プログラム名が「ａ／ＴｏｐＸｌｅｔ」とすると、Ｊａｖａ（登録商標）プログラム名の最後に「．ｃｌａｓｓ」を付加したファイル「ａ／ＴｏｐＸｌｅｔ．ｃｌａｓｓ」が実行すべきファイルとなる。「／」はディレクトリやファイル名の区切りであり、図２３を参照して、ファイル２３０４が実行すべきＪａｖａ（登録商標）プログラムである。ファイルはＪａｖａ（登録商標）プログラムとしてＪａｖａ（登録商標） ＶＭ上で実行される。
【００９９】
アプリケーション状態管理部２４０１は、新しいＡＩＴバージョンを持つＡＩＴがＡＩＴ監視部２４０２から出力される度にそのＡＩＴを解析して新しいＪａｖａ（登録商標）プログラムの実行状態を変更させる。
【０１００】
ＪＭＦ１７０４ａは、サービスに含まれる映像と音声の再生制御を担う。具体的には、サービスの再生時に、ＴＳデコーダから出力されるＭＰＥＧ２トランスポートストリームから特定の映像ＥＳと音声ＥＳをＡＶデコーダに入力させる。
【０１０１】
ＪＭＦ１７０４ａは再生対象のチャンネル識別子を入力とする。まず、ＪＭＦ１７０４ａは、指定されたチャンネル識別子をキーとしてライブラリ１７０１ｂのチャンネル情報を検索し、プログラムナンバーを得る。次にＳＦ１７０４ｅなどを利用して、ＭＰＥＧ２トランスポートストリームからＰＡＴを取得する。さらにＰＭＴの情報から、先ほど得られたプログラムナンバーに対応するＰＭＴのＰＩＤが得られる。再度ＳＦ１７０４ｅを利用して、実際のＰＭＴを取得する。取得されたＰＭＴは図１１の形式をしており、ストリーム種別が「映像」および「音声」であるエレメンタリストリームのＰＩＤが書かれている。ＪＭＦ１７０４ａが、それらのＰＩＤをライブラリ１７０１ｂを通してＴＳデコーダ１３２１２のＰＩＤフィルタ１５０２に設定すると、図１５あるいは図１６に示されたごとく、該当ＰＩＤで多重されている映像ＥＳと音声ＥＳがＡＶデコーダ１３０３でデコードされる。デコードされた音声及び映像は、スピーカ１３０４、ディスプレイ１３０５経由で再生される。
【０１０２】
サービスマネージャ１７０４ｆは、アダプタ１３１１から入力されるＭＰＥＧ２トランスポートストリーム中のサービスの再生、すなわち放送波の再生を管理する。以下に、アダプタ１３１１から入力されるＭＰＥＧ２トランスポートストリーム中のサービスの再生を管理する方法を説明する。
【０１０３】
サービスマネージャ１７０４ｆは、再生対象サービスのチャンネル識別子を入力とする。サービスマネージャ１７０４ｆは、図１３のアダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームをＴＳデコーダ１３０２に出力するように、ライブラリ１７０１ｂを通して指示する。またライブラリ１７０１ｂを通して各ハードウェア構成要素の出力先を図１５に示す経路で流れるように設定する。その後、ＪＭＦ１７０４ａにアダプタ１３１１から入力されるＭＰＥＧ２トランスポートストリームの中の再生すべきチャンネル識別子を与える。すると、ＪＭＦ１７０４ａは、既に述べた動作によって、アダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームに多重された映像と音声の再生を開始する。更に、サービスマネージャ１７０４ｆは、ＡＭ１７０４ｂのＡＩＴ監視部２４０２に、アダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームの中の再生すべきチャンネル識別子を与える。すると、ＡＭ１７０４ｂはアダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームに多重されたＡＩＴに従って、アダプタ１３１１から出力されるＭＰＥＧ２トランスポートストリームに多重されたＪａｖａ（登録商標）プログラムの実行および終了を開始する。その後、サービスマネージャ１７０４ｆからサービス再生の中止が指示されるまで、上述のサービスの再生を継続する。
【０１０４】
ＥＰＧ１７０２は、電子番組表（Ｅｌｅｃｔｒｉｃ  Ｐｒｏｇｒａｍ  Ｇｕｉｄｅの略）であり、録画や再生の対象とする番組をユーザに選択させる機能である。ＥＰＧ１７０２は、放送番組一覧を表示してユーザに希望の番組を選択させる。図１９は、録画対象とする番組を選択させるための画面表示の一例である。時刻１９０１とチャンネル１（１９０２）とチャンネル２（１９０３）が格子状に表示され、各時刻で再生可能な各チャンネルの番組を一覧できる。ユーザは端末装置１３００の入力部１３１０に備わっている上下左右カーソルボタン１４０１〜１４０４を用いて画面上のフォーカス１９１１を移動させることができる。更にＯＫボタン１４０５を押下すると、現在フォーカスが当たっている番組が再生対象として選択される。ＥＰＧ１７０２は当該番組のチャンネル識別子をライブラリから取得して知っており、ユーザによって再生対象番組が選択されると、当該番組のチャンネル識別子サービスマネージャ１７０４ｆに通知する。さらに、本実施の形態のＥＰＧ１７０２は、ユーザによって再生対象番組が選択される度に、当該チャンネル識別子を後述するＪａｖａ（登録商標）アプリケーションに通知する。そのために、ＥＰＧ１７０２は、Ｊａｖａ（登録商標）アプリケーションが持つリスナークラスを登録するためのＪａｖａ（登録商標）メソッドとして、ｒｅｇｉｓｔｅｒ（ＷａｔｃｈＣｈａｎｎｅｌ  ｗｃ）メソッドを備えている。パラメータｗｃにリスナークラスＷａｔｃｈＣｈａｎｎｅｌのインスタンスを指定して本メソッドを呼び出すと、以降、ＥＰＧ１７０２は、ユーザが再生対象番組を選択する度に、選択されたチャンネル識別子をリスナークラスのインスタンスに通知する。ＷａｔｃｈＣｈａｎｎｅｌは、ｎｏｔｉｆｙ（ＣｈａｎｎｅｌＮｕｍ  ｃｎ）というメソッドを持っている。ユーザが再生対象番組を選択する度に、ＥＰＧ１７０２は当該チャンネル識別子をパラメータｃｎに設定してｎｏｔｉｆｙメソッドを呼び出す。
【０１０５】
以上述べたＲＯＭ１３０９に内蔵されたソフトウエアの構成により、放送波にＭＰＥＧ２トランスポートストリームに多重されたＡＩＴを取り出し、そこに記述された情報に基づいて多重されたＤＳＭＣＣファイルシステムに格納されＪａｖａ（登録商標）プログラムを取り出し、そのＪａｖａ（登録商標）プログラムをＪａｖａ（登録商標）ＶＭ１７０３上で実行することができる。
【０１０６】
次に本実施の形態の特徴的なＪａｖａ（登録商標）アプリケーションの一例を以下に示す。
【０１０７】
図１に、本実施の形態のＪａｖａ（登録商標）アプリケーションの内部構成を示す。本実施の形態のＪａｖａ（登録商標）アプリケーションは、番組選択通知手段１８０１、総視聴時間算出手段１８０２、番組属性値対応表１８０３、第１種の広告表示手段１８０４、第１種の広告履歴記憶手段１８０５、第１種の広告選択手段１８０６、第１種の広告記憶手段１８０７、第１種の広告取得手段１８０８、広告履歴条件成立判定手段１８０９、第２種の広告選択手段１８１０、第２種の広告記憶手段１８１１、第２種の広告取得手段１８１２、第２種の広告表示手段１８１３で構成される。
【０１０８】
番組選択通知手段１８０１は、ＥＰＧ１７０２から通知されるユーザが再生対象として選択したチャンネル識別子を受け取る。番組選択通知手段１８０１は、具体的には、先述したＪａｖａ（登録商標）のリスナークラスであるＷａｔｃｈＣｈａｎｎｅｌクラスの実体である。ユーザが再生対象番組を選択する度に、ＥＰＧ１７０２は当該チャンネル識別子をパラメータｃｎに設定して、ＷａｔｃｈＣｈａｎｎｅｌが持つｎｏｔｉｆｙメソッドを呼び出す。すると、番組選択通知手段１８０１は、そのチャンネル識別子を総視聴時間算出手段１８０２に通知する。
【０１０９】
総視聴時間算出手段１８０２は、チャンネル識別子の通知を受けると、その通知を受けた時刻をチャンネル識別子と組み合わせて一時的に記憶する。次に、番組属性値対応表１８０３を参照して、チャンネル識別子と時刻を元に、現在再生中の番組の属性と重みを調べる。
【０１１０】
図２１は、番組属性値対応表１８のデータフォーマットの概念図である。２１００は番組属性値対応表である。２１０１はチャンネル識別子である。２１０２は時刻であり、番組の開始時刻と終了時刻が記される。２１０３は番組名であり、チャンネル識別子２１０１で特定されるチャンネルの時刻２１０２に記された当該開始時刻から当該終了時刻までの間に放送されている番組の名称である。属性２１０４は、当該番組が属するカテゴリを示す。例えば、映画やドラマであれば「映画ドラマ」という属性が、音楽関連の番組であれば「音楽」という属性が、ニュース番組であれば「ニュース」という属性が、アニメ番組であれば「アニメ」という属性が、料理番組であれば「食」という属性が付される。重み２１０５は、各番組の総視聴時間の計算に用いる重み付けの値である。
【０１１１】
図２５は、番組属性値対応表１８の具体的な一例である。２５００は番組属性値対応表のフォーマット２１００の具体的な一例である。２５０１及び２５０３はチャンネル識別子２１０１の具体的な例であり、チャンネル識別子＝１の場合が２５０１、チャンネル識別子＝２の場合が２５０３である。時刻２５０２欄には、番組属性値対応表のフォーマット２１００の時刻２１０２の具体的な表現として、開始時刻と終了時刻が記されている。２５０４は番組名２１０３の具体例であり、例えば「映画１２」などが記される。２５０５は属性２１０４の具体例であり、例えば「映画１２」の属性値は「映画ドラマ」と記される。２５０６は、重み２１０５の具体例であり、例えば「映画１２」の重みは「２」である。
【０１１２】
例えば、総視聴時間算出手段１８０２に対して、チャンネル識別子＝２が時刻１２：００に通知されると、現在再生中の番組名は「映画１２」、その属性値は「映画ドラマ」、その重みは「２」となる。そして、次にチャンネル識別子＝１が時刻１５：００に通知されると、そこまでの時間はずっとチャンネル識別子＝２の番組が再生されていたことになる。よって、この場合に、そこまでの時間に再生されていた番組は、図２５を参照して、１２：００−１４：００に「映画１２」（重み＝２）、１４：００−１５：００に「音楽１４」（重み＝１）となる。そして、１５：００以降は、「チャンネル識別子＝１が再生されているのだから、番組は「ドラマ１６」（重み＝１）が再生されていることになる。再生された番組は、ユーザが視聴していた番組と考えられる。
【０１１３】
このようにして、現在再生中の番組の属性と重みを調べた後、総視聴時間算出手段１８０２は各属性値に、対応する番組の視聴時間と重みの積を総和した値を算出する。この値を、各属性値の総視聴時間と呼ぶことにする。式で記述すると、以下のようになる。
【０１１４】
総視聴時間＝Σ(属性に属する番組を再生した時間)×(当該番組に付された重み)
（各属性に属する全ての番組に関して総和を取る）
例えば、総視聴時間算出手段１８０２に、チャンネル識別子＝２が時刻１２：００に通知され、チャンネル識別子＝１が時刻１４：００に通知され、チャンネル識別子＝２が時刻１７：００に通知されたとする。すると、時刻１２：００から１７：００の間に再生された、すなわちユーザが視聴した番組は、「映画１２」（属性＝映画ドラマ、重み＝２、再生時間＝２時間）、「ニュース１４」（属性＝情報、重み＝１、再生時間＝１時間）、「ドラマ１５」（属性＝映画ドラマ、重み＝１、再生時間＝１時間）、「ドラマ１６」（属性＝映画ドラマ、重み＝１、再生時間＝１時間）となる。
【０１１５】
この場合、各属性の総視聴時間は、映画ドラマ属性に関して、総視聴時間＝２時間×２＋１時間×１＋１時間×１＝６である。また情報属性に関して、総視聴時間＝１時間×１＝１である。また音楽属性や食属性やアニメ属性に関しては番組が再生されていないため、総視聴時間＝０となる。
【０１１６】
総視聴時間算出手段１８０２は、過去に再生されたチャンネル識別子とそれが通知された時刻をすべて記憶する。そしてチャンネル識別子の通知がある度に、上述のようにして算出した、各属性の総視聴時間を、第１種の広告選択手段１８０６に出力する。
【０１１７】
第１種の広告取得手段１８０８は、表示すべき広告データを取得する。広告データは、グラフィックスやテキスト、映像、音声等、任意のものでよい。広告データは例えば、ＭＰＥＧ２トランスポートストリームに多重されたＤＳＭＣＣファイルシステムを使ってファイルとして転送してもよい。この場合、広告取得手段１８０８は、Ｊａｖａ（登録商標）ライブラリ１７０４のＤＳＭＣＣ１７０４ｄを利用して広告データのファイルを読み出す。あるいは、インターネットで接続された情報サーバに広告データを保存しておき必要に応じてネットワークインタフェースを利用して取得しても良い。この場合は、Ｊａｖａ（登録商標）ライブラリ１７０４が別途提供するネットワーク接続機能等で、ｈｔｔｐプロトコル等を使用してインターネット経由で情報サーバから広告データを取得できる。ネットワーク接続機能はＪａｖａ（登録商標）の基本ライブラリとして提供される機能であり、一般に知られた機能である。第１種の広告取得手段１８０８は、取得した広告データを第１種の広告記憶手段１８０７に出力する。
【０１１８】
広告データは、番組と同様に、それぞれ属性値が割り当てられている。例えば、映画の広告には、映画ドラマ属性が割り当てられる。また、本や新聞等の広告には、情報属性が割り当てられる。また別の例では、音楽ＣＤの広告には、音楽属性が割り当てられる。
【０１１９】
第１種の広告記憶手段１８０７は、第１種の広告取得手段から出力される広告データを受け取り、１次記憶部１３０８や２次記憶部１３０７を使って一時的あるいは永久的に記憶する。広告データには属性が割り当てられているため、記憶フォーマットとしては図２６に示すようなものになる。２６００は記憶するための表であり、属性２６０１と広告データ２６０２が組み合わせて記憶される。図２７は記憶されている広告データの一例である。例えば、属性値が映画ドラマの広告データとして、映画Ａビットマップや映画Ｂビットマップ等が記憶される。
【０１２０】
第１種の広告選択手段１８０６は、総視聴時間算出手段１８０２から各属性の総視聴時間が出力される度に、第１種の広告記憶手段１８０７から新規に広告データを一つ取り出す。広告データの選択は、総視聴時間算出手段１８０２から得られた、各属性の総視聴時間の比率に応じて、各属性に割り当てられた広告データが選ばれるようにする。
【０１２１】
例えば、前述の例では、映画ドラマ属性に関して、総視聴時間＝６である。また情報属性に関して、総視聴時間＝１である。また音楽属性や食属性やアニメ属性に関しては番組が再生されていないため、総視聴時間＝０であった。これにより、映画ドラマ属性の広告：情報属性の広告：音楽属性の広告：食属性の広告：アニメ属性の広告＝６：１：０：０：０の比率で広告が選択されるようにする。すなわち、広告選択手段１８０６は、１から７までの整数乱数を発生させ、乱数値が１から６であれば映画ドラマ属性の広告から一つ選び、あるいは乱数値が７であれば情報属性の広告から一つ選ぶ。例えば、欄数値が３であれば、映画ドラマ属性の広告から一つ、一例として「映画Ｂビットマップ」が選ばれる。
【０１２２】
第１種の広告選択手段１８０６が選択した広告データは、それが選択される度に、第１種の広告履歴記憶手段と広告履歴条件成立判定手段１８０９に渡される。
【０１２３】
第１種の広告履歴記憶手段１８０５は、第１種の広告選択手段１８０６から渡された広告データを全て記憶していく。これにより、過去に選択された広告を全て時系列に沿って広告データ履歴として記憶できる。同時に、第１種の広告履歴記憶手段は、広告データ履歴を第１種の広告表示手段１８０４に出力する。このとき、広告データ履歴は選択された順に時系列に並べて渡す。
【０１２４】
第１種の広告表示手段１８０４は、第１種の広告履歴記憶手段１８０５から受け取った広告データ履歴を利用して、過去に選択された広告データを一覧表示する。一覧表示する方法は任意である。単純に広告データをディスプレイ１３０５上に時系列順に並べて表示してもよいが、本実施の形態では、ビンゴゲームカードのように５×５のマス目に広告データを一つずつ表示するようにする。ビンゴゲームカード形式で表示する場合、第１種の広告表示手段１８０４は、予め第１種の広告記憶手段１８０７から２５種類の広告データを選択して取り出して、５×５のマス目に選択した２５種類の広告データを一つずつ表示するよう表示位置を定めておき、後に第１種の広告履歴記憶手段１８０５から受け取った広告をこの予め定めた表示位置に表示する。このような手法をとるメリットは、広告の重要度に応じて表示位置を決定できる点である。例えば、第１種の広告表示手段１８０４が総視聴時間算出手段１８０２から各属性ごとの総視聴時間を得られるようにしておき、総視聴時間値が大きいものを重要な属性と考え、それらの属性が割り当てられた広告データを目立つ位置に配置するなどの手法が取れる。ここで決定した表示予定位置情報は、第１種の広告履歴記憶手段１８０５から受け取った広告データ履歴と共に、広告履歴条件成立判定手段１８０９に通知する。
【０１２５】
第１種の広告表示手段１８０４が広告データ履歴を画面に表示するタイミングは、第１種の広告履歴記憶手段１８０５から広告データ履歴を受け取った瞬間、及びユーザがリモコンキーによって広告履歴の表示を指示した任意の瞬間とする。これにより、ユーザは再生対象チャンネルを切り替えた場合だけでなく、任意のタイミングで広告データを閲覧できる。
【０１２６】
第１種の広告表示手段１８０４を上述のように構成することで、第１種の広告履歴記憶手段１８０５から第１種の広告データ履歴を受け取る度に、新しく選ばれた広告データを表示すると共に、過去に選ばれた広告データも合わせて表示することが可能となる。
【０１２７】
例えば、第１種の広告表示手段１８０６は、適当な時点での総視聴時間データの映画ドラマ属性の広告：情報属性の広告：音楽属性の広告：食属性の広告：アニメ属性の広告＝１０：１０：３：１：１という比率に基づき、第一の広告記憶手段１８０７から２５個の広告データを選択して取得し、図２８に示すようなビンゴカード２８００を見立てた表示予定位置を定める。
【０１２８】
第１種の広告選択手段１８０６が最初に「映画Ｂビットマップ」を選択すると、第１種の広告履歴記憶手段１８０５は「映画Ｂビットマップ」を記憶し、第１種の広告表示手段１８０６は、映画Ｂ予定位置の位置に「映画Ｂビットマップ」を表示する。この様子が図２９に示すビンゴカード２９００である。
【０１２９】
次に、第１種の広告選択手段１８０６が「本Ａビットマップ」を選択すると、第１種の広告履歴記憶手段１８０５は「本Ａビットマップ」を時系列順に追加して記憶し、第１種の広告表示手段１８０６は、本Ａ予定位置の位置に「本Ａビットマップ」を表示し、さらに過去に選択された「映画Ｂビットマップ」を映画Ｂ予定位置の位置に表示する。この様子が図３０に示すビンゴカード３０００である。このとき、新しく選択された「本Ａビットマップ」は強調表示するようにしておけば、ユーザに対して新しい広告を明示することができる。
【０１３０】
広告履歴条件成立判定手段１８０９は、第１種の広告表示手段１８０４から広告データの表示予定位置情報と広告データ履歴を受け取り、広告データ履歴が特定の条件を満たしているかどうか判断する。例えば、広告データ履歴に含まれている広告データが、予め設定されている特定の広告データの組み合わせに一致すること等が条件となる。上述したビンゴカードの例であれば、縦、横、対角線のいずれかの方向に並んだ５つの広告表示予定位置に対応する広告データが５つとも全て選択されることが条件となる。例えば、ユーザがチャンネル選択を繰り返すうちに、第１種の広告選択手段１８０６が「映画Ｂビットマップ」「本Ａビットマップ」「映画Ｄビットマップ」「本Ｂビットマップ」「映画Ａビットマップ」「映画Ｃビットマップ」「映画Ｅビットマップ」の順に選択したとする。この時、第１種の広告表示手段１８０４の表示は図１８のビンゴカード１８００に示すものとなり、縦方向に「映画Ａビットマップ」「映画Ｂビットマップ」「本Ａビットマップ」「映画Ｄビットマップ」「映画Ｅビットマップ」までの５種類の広告データが並ぶ。よって広告履歴条件成立判定手段１８０９は特定の条件を満たしたと判断する。特定の条件が満たされると、広告履歴条件成立判定手段１８０９はその条件を満たした広告データの組み合わせに対応する属性値を第２種の広告選択手段に通知する。
【０１３１】
第２種の広告取得手段１８１２は、第１種の広告取得手段１８０８と同等の機能を有するため、再度の説明を省略する。違う点は、第１種の広告取得手段１８０８と独立して異なる種類の広告を異なる位置から取得できる点である。
【０１３２】
第２種の広告記憶手段１８１１は、第１種の広告記憶手段１８０７と同等の機能を有するため、再度の説明を省略する。違う点は、第１種の広告取得手段１８０８と独立して異なる種類の広告を記憶できる点である。
【０１３３】
第２種の広告選択手段１８１０は、広告履歴条件成立判定手段１８０９から受け取った属性値に属する広告データを第２種の広告記憶手段１８１１に記憶されている広告データの中からひとつ選択して取得する。広告データの選択は任意の方法でよいが、ここでは、５つの属性値の種類ごとの比率に応じて選択する。例えば、広告履歴条件成立判定手段１８０９が、「映画Ａビットマップ」「映画Ｂビットマップ」「本Ａビットマップ」「映画Ｄビットマップ」「映画Ｅビットマップ」の５種類の広告データによって特定の条件を満たしたとした場合は、映画ドラマ属性４つと情報属性１つという情報が、第２種の広告選択手段に通知される。この場合、映画ドラマ属性：情報属性＝４：１の比率で選ばれるようにする。具体的には、１〜５の整数乱数を発生させ、乱数値が１〜４であれば映画ドラマ属性の広告を、乱数値が５であれば情報属性の広告を、第２種の広告選択手段１８１０が記憶する広告データの中から選択して取得する。第２種の広告選択手段１８１０が選択した広告データは第２種の広告表示手段１８１３に渡される。
【０１３４】
第２種の広告表示手段１８１３は、受け取った広告データをディスプレイ１３０５上に表示する。表示の方法は任意である。当該広告データを単独で表示してもよいし、第１種の広告表示手段１８０４が表示する第１種の広告と同時に同一画面上に表示してもよい。
【０１３５】
なお、本実施の形態１では、放送受信装置として構成したが、これに限ることなく、コンテンツを再生する装置であれば任意の再生装置として本発明は構成可能である。例えば、インターネット経由でコンテンツを取り込んで再生する装置への適用も可能である。
【０１３６】
本実施の形態１では、Ｊａｖａ（登録商標）プログラムをダウンロードして実行する形で広告表示サービスを実現したが、これに限ることなく、任意の構成要素をＲＯＭに記録された形式で実現可能である。例えば、総視聴時間算出手段や番組属性値対応表を予め端末のＲＯＭやＲＡＭに内蔵する形態で実現することも可能である。また、Ｊａｖａ（登録商標）プログラムを全て端末のＲＯＭやＲＡＭに内蔵する形態で実現することも可能である。
【０１３７】
また、本実施の形態１では、プログラムの記述言語としてＪａｖａ（登録商標）言語を例にとったが、これに限ることなく、任意の言語を用いてよい。
【産業上の利用可能性】
【０１３８】
本発明にかかる放送受信装置は、過去に表示した広告を履歴的に表示する機能を有し、インタラクティブな放送受信端末等として有用である。また、放送の受信以外にも、インターネット経由でのコンテンツの再生等の用途にも有効である。
【図面の簡単な説明】
【０１３９】
【図１】本実施の形態におけるＪａｖａ（登録商標）プログラムの構成の一例を示す図
【図２】本実施の形態におけるケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例を示す図
【図３】本実施の形態におけるケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例を示す図
【図４】本実施の形態におけるケーブルテレビシステムにおいて放送局側システムと端末装置間の通信に使用される周波数帯域の使い方の一例を示す図
【図５】本実施の形態におけるＭＰＥＧ２仕様で既定されるＴＳパケットの構成の一例を示す図
【図６】本実施の形態におけるＭＰＥＧ２トランスポートストリームの一例を示す図
【図７】本実施の形態におけるＭＰＥＧ２仕様で既定されるＰＥＳパケットがＴＳパケットを用いて伝送される際の分割の一例を示す図
【図８】本実施の形態におけるＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションがＴＳパケットを用いて伝送される際の分割の一例を示す図
【図９】本実施の形態におけるＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションの構成の一例を示す図
【図１０】本実施の形態におけるＭＰＥＧ２仕様で既定されるＭＰＥＧ２セクションの利用の一例を示す図
【図１１】本実施の形態におけるＭＰＥＧ２仕様で規定されるＰＭＴの利用の一例を示す図
【図１２】本実施の形態におけるＭＰＥＧ２仕様で規定されるＰＡＴの利用の一例を示す図
【図１３】本実施の形態における本発明に係る放送録画再生装置のハードウェア構成の一例を示す図
【図１４】本実施の形態における本発明に係る端末装置１２００のハードウェア構成における入力部１３１０のフロントパネルの一例を示す図
【図１５】本実施の形態における本発明に係る録画再生装置の録画時におけるデバイス接続の一例を示す図
【図１６】本実施の形態における本発明に係る録画再生装置の再生時におけるデバイス接続の一例を示す図
【図１７】本実施の形態における本発明に係る端末装置が保存するプログラム構成の一例を示す図
【図１８】本実施の形態における広告データ履歴表示の一例を示す図
【図１９】本実施の形態における本発明に係る端末装置が実行するＥＰＧの一例を示す図
【図２０】本実施の形態における放送受信のための情報の一例を示す図
【図２１】本実施の形態における番組属性値対応表のフォーマットの一例を示す図
【図２２】本実施の形態における本発明に係るＤＶＢ−ＭＨＰ規格が規定するＡＩＴの内容の一例を示す図
【図２３】本実施の形態における本発明に係るＤＳＭＣＣ方式で送信されるファイルシステムの一例を示す図
【図２４】本実施の形態における本発明に係る端末装置が保存するプログラム構成の一例を示す図
【図２５】本実施の形態における番組属性値対応表の一例を示す図
【図２６】本実施の形態における広告データの記憶フォーマットの一例を示す図
【図２７】本実施の形態における広告データの記憶の一例を示す図
【図２８】本実施の形態における広告データ履歴表示の一例を示す図
【図２９】本実施の形態における広告データ履歴表示の一例を示す図
【図３０】本実施の形態における広告データ履歴表示の一例を示す図
【符号の説明】
【０１４０】
１８０１    番組選択通知手段
１８０２    総視聴時間算出手段
１８０３    番組属性値対応表
１８０４    第１種の広告表示手段
１８０５    第１種の広告履歴記憶手段
１８０６    第１種の広告選択手段
１８０７    第１種の広告記憶手段
１８０８    第１種の広告取得手段
１８０９    広告履歴条件成立判定手段
１８１０    第２種の広告選択手段
１８１１    第２種の広告記憶手段
１８１２    第２種の広告取得手段
１８１３    第２種の広告表示手段
【図１】
2010011115.tif 000003
【図２】
2010011115.tif 000004
【図３】
2010011115.tif 000005
【図４】
2010011115.tif 000006
【図５】
2010011115.tif 000007
【図６】
2010011115.tif 000008
【図７】
2010011115.tif 000009
【図８】
2010011115.tif 000010
【図９】
2010011115.tif 000011
【図１０】
2010011115.tif 000012
【図１１】
2010011115.tif 000013
【図１２】
2010011115.tif 000014
【図１３】
2010011115.tif 000015
【図１４】
2010011115.tif 000016
【図１５】
2010011115.tif 000017
【図１６】
2010011115.tif 000018
【図１７】
2010011115.tif 000019
【図１８】
2010011115.tif 000020
【図１９】
2010011115.tif 000021
【図２０】
2010011115.tif 000022
【図２１】
2010011115.tif 000023
【図２２】
2010011115.tif 000024
【図２３】
2010011115.tif 000025
【図２４】
2010011115.tif 000026
【図２５】
2010011115.tif 000027
【図２６】
2010011115.tif 000028
【図２７】
2010011115.tif 000029
【図２８】
2010011115.tif 000030
【図２９】
2010011115.tif 000031
【図３０】
2010011115.tif 000032