(57)【特許請求の範囲】
【請求項１】
送信されたＡＶコンテンツを受信する受信装置において、
前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出部と、
抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御部と
を含む受信装置。
【請求項２】
前記制御部は、抽出された前記トリガ情報が前記サスペンドコマンドである場合、実行中の前記アプリケーションプログラムを休止させ、前記アプリケーションプログラムを休止させたときの状態を示す情報をメモリに保持させる
請求項１に記載の受信装置。
【請求項３】
前記制御部は、抽出された前記トリガ情報が前記エクスキュートコマンドである場合、起動させる前記アプリケーションプログラムを休止させたときの状態を示す休止状態情報が前記メモリに保持されているときには、前記休止状態情報に基づいて、前記アプリケーションプログラムを休止された状態から再開させる
請求項２に記載の受信装置。
【請求項４】
前記制御部は、抽出された前記トリガ情報が前記プリキャッシュコマンドである場合、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得させる
請求項１に記載の受信装置。
【請求項５】
前記制御部は、抽出された前記トリガ情報がエクスキュートコマンドである場合、起動させる前記アプリケーションプログラムが未取得であるときには、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得させる
請求項１に記載の受信装置。
【請求項６】
前記制御部は、抽出された前記トリガ情報がレジスタコマンドである場合、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得、保持させた後、取得させた前記アプリケーションプログラムに、前記トリガ情報に含まれる保持期限を対応付けて管理する
請求項１に記載の受信装置。
【請求項７】
前記制御部は、抽出された前記トリガ情報がレジスタコマンドである場合、前記トリガ情報に含まれる前記アプリケーションプログラムの所在情報を兼ねた前記アプリケーションプログラムの識別情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得、保持させた後、取得させた前記アプリケーションプログラムに、前記トリガ情報に含まれる保持期限を対応付けて管理する
請求項６に記載の受信装置。
【請求項８】
前記制御部は、登録した前記アプリケーションプログラムの保持期限が経過した場合、前記アプリケーションプログラムを消去させる
請求項７に記載の受信装置。
【請求項９】
前記制御部は、抽出された前記トリガ情報がレジスタコマンドである場合、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得、保持させた後、取得させた前記アプリケーションプログラムに、前記トリガ情報に含まれる優先度も対応付けて管理する
請求項７に記載の受信装置。
【請求項１０】
前記制御部は、前記アプリケーションプログラムを取得、保持させるに際して記録容量が不足する場合、登録済みの前記アプリケーションプログラムのうち、前記優先度が取得する前記アプリケーションプログラムよりも低いものを消去することにより記録容量を確保する
請求項９に記載の受信装置。
【請求項１１】
送信されたＡＶコンテンツを受信する受信装置の受信方法において、
前記受信装置による、
前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出ステップと、
抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御ステップと
を含む受信方法。
【請求項１２】
ＡＶコンテンツを受信する受信装置の制御用のプログラムであって、
前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出ステップと、
抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御ステップと
を含む処理を受信装置のコンピュータに実行させるプログラム。
【請求項１３】
ＡＶコンテンツを送信する送信装置において、
前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信部を含み、
前記トリガ情報が示すコマンドには、前記アプリケーションプログラムの取得を指示するプリキャッシュまたは登録を指示するレジスタ、起動を指示するエクスキュート、実行中の前記アプリケーションプログラムにおけるイベント発火を指示するインジェクトイベント、実行中の前記アプリケーションプログラムの休止を指示するサスペンド、若しくは実行中の前記アプリケーションプログラムの終了を指示するターミネートのうちの少なくとも１つが含まれる
送信装置。
【請求項１４】
ＡＶコンテンツを送信する送信装置の送信方法において、
前記送信装置による、
前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信ステップを含み、
前記トリガ情報が示すコマンドには、前記アプリケーションプログラムの取得を指示するプリキャッシュまたは登録を指示するレジスタ、起動を指示するエクスキュート、実行中の前記アプリケーションプログラムにおけるイベント発火を指示するインジェクトイベント、実行中の前記アプリケーションプログラムの休止を指示するサスペンド、若しくは実行中の前記アプリケーションプログラムの終了を指示するターミネートのうちの少なくとも１つが含まれる
送信方法。
【請求項１５】
ＡＶコンテンツを送信する送信装置の制御用のプログラムであって、
前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信ステップを含み、
前記トリガ情報が示すコマンドには、前記アプリケーションプログラムの取得を指示するプリキャッシュまたは登録を指示するレジスタ、起動を指示するエクスキュート、実行中の前記アプリケーションプログラムにおけるイベント発火を指示するインジェクトイベント、実行中の前記アプリケーションプログラムの休止を指示するサスペンド、若しくは実行中の前記アプリケーションプログラムの終了を指示するターミネートのうちの少なくとも１つが含まれる
処理を送信装置のコンピュータに実行させるプログラム。
【請求項１６】
ＡＶコンテンツを送信する送信装置と、送信された前記ＡＶコンテンツを受信する受信装置とからなる放送システムにおいて、
前記送信装置は、
前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信部を
含み、
前記受信装置は、
前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出部と、
抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御部と
を含む
放送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、受信装置、受信方法、送信装置、送信方法、プログラム、および放送システムに関し、特に、例えばデジタルテレビジョン放送において、番組やＣＭ（コマーシャルメッセージ）の進行に連動してデータ放送のコンテンツを実行させる場合に用いて好適な受信装置、受信方法、送信装置、送信方法、プログラム、および放送システムに関する。
【背景技術】
【０００２】
従来、日本ではテレビジョン放送のデジタル化が推進されており、地上デジタル放送やＢＳデジタル放送などが普及している。また、地上デジタル放送などのデジタルテレビジョン放送では、ニュース、ドラマ、映画などの番組の放送のみならず、いわゆるデータ放送も実現されている。このデータ放送におけるコンテンツによれば、例えば、放送中の番組に関連する情報（出演者、ストーリなど）を表示したり、放送中の番組に関連しない情報（他の番組の告知、ニュース、天気予報、交通情報など）を表示したりすることができる（例えば、特許文献１参照）。
【０００３】
なお、日本におけるデータ放送は、テレビジョン放送のデジタル化に際してデジタルテレビジョン放送の放送帯域内にデータ放送専用の帯域が予め確保されており、この専用帯域を用いてデータ放送用コンテンツが放送されることにより実現されている。
【０００４】
一方、米国におけるデジタルテレビジョン放送では、日本のデジタルテレビジョン放送のようなデータ放送専用の帯域が確保されていない。
【０００５】
すなわち、米国の現状のデジタルテレビジョン放送の放送帯域は、図１Ａに示すように、番組の映像用帯域、音声用帯域、および制御情報用帯域によって占められており、データ放送用コンテンツを放送するための帯域が設けられていない。したがって、デジタルテレビジョン放送の限られた放送帯域に、データ放送用コンテンツを放送するための帯域を確保するには、図１Ｂに示すように、例えば映像用帯域および音声用帯域を狭める必要がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−５０２３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、映像用帯域および音声用帯域を狭めて、データ放送用コンテンツを放送するための帯域を確保することは、番組の画質および音質の劣化につながるので、現実的な対応とは言い難い。
【０００８】
また、映像用帯域および音声用帯域を狭めてデータ放送用コンテンツの帯域を確保したとしても伝送できるデータ量は限られている。したがって、データ放送用コンテンツの情報量が乏しくなってしまったり、情報量を増やそうとすると、受信側で必要なデータを受信するまでに時間がかかってしまったりすることになる。
【０００９】
また、米国においては、CATV（ケーブルＴＶ）網を用いたデジタルテレビジョン番組の再送信システムが普及しているが故に、以下のような問題も生じ得る。
【００１０】
図２は、CATV網を用いたデジタルテレビジョン番組の再送信システムの構成の一例を示している。
【００１１】
この再送信システムは、主に放送装置１、CATV再送信装置２、CATV網３、デジタルテレビジョン受像機４、セットトップボックス(STB)５、およびテレビジョン受像機６から構成される。
【００１２】
放送局などに設けられる放送装置１は、デジタルテレビジョン放送信号を地上波または衛星波を用いて放送する。ケーブルＴＶ局などに設けられるCATV再送信装置２は、放送されたデジタルテレビジョン放送を受信し、不要な情報を除去するとともにCATV独自の情報を追加して、CATV網３を介してデジタルデジタルテレビジョン受像機４、セットトップボックス５などに再送信する。
【００１３】
CATV再送信装置２は、チューナ１１、所定のパケットＩＤのパケットをフィルタリングするPIDフィルタ１２、CATV独自信号発生部１３、多重化部１４、および変調部１５から構成される。
【００１４】
チューナ１１は、各チャンネルのデジタルテレビジョン放送信号を受信して復調し、その結果得られるＴＳ（トランスポートストリーム）をPIDフィルタ１２に出力する。PIDフィルタ１２は、ＴＳから所定のパケットＩＤに対応するパケット（番組としてのＡＶコンテンツに関係がないパケット）を除去して多重化部１４に出力する。CATV独自信号発生部１３は、当該CATV局の独自の情報が格納されたパケットを生成して多重化部１４に出力する。多重化部１４は、PIDフィルタ１２の出力と、CATV独自信号発生部１３の出力とを多重化して変調部１５に出力する。変調部１５は、多重化部１４の出力を、CATV網３に適して変調方式により変調して、CATV網３を介してデジタルテレビジョン受像機４、セットトップボックス５などに再送信する。
【００１５】
CATVに対応したデジタルテレビジョン受像機４は、CATV網３を介して、再送信されたデジタルテレビジョン放送のＴＳを受信してデコードし、その結果得られる映像を表示するとともに音声を出力する。
【００１６】
CATVに対応したセットトップボックス５は、CATV網３を介して、再送信されたデジタルテレビジョン放送のＴＳを受信してデコードし、その結果得られる映像信号および音声信号を、HDMIケーブルなどを介してテレビジョン受像機６に出力する。テレビジョン受像機６は、セットトップボックス５からHDMIケーブルなどを介して入力される映像信号および音声信号に基づき、その映像を表示するとともに音声を出力する。
【００１７】
上述したように、CATV再送信装置２においては、PIDフィルタ１２により、デジタル放送信号のＴＳから、所定のパケットＩＤに対応するパケット（番組としてのＡＶコンテンツに関係がないパケット）が除去される。したがって、仮に図１Ｂに示されたように、放送帯域に、データ放送用コンテンツを放送するための帯域を確保したとしても、このPIDフィルタ１２により、データ放送用コンテンツが格納されているパケットが排除されてしまうことが起こり得る。
【００１８】
本開示はこのような状況に鑑みてなされたものであり、デジタルテレビジョン放送の放送帯域にデータ放送用の帯域を設けることなく、テレビジョン放送の番組やＣＭの進行に連動し得るデータ放送用コンテンツを実現できるようにするものである。
【課題を解決するための手段】
【００１９】
本開示の第１の側面である受信装置は、送信されたＡＶコンテンツを受信する受信装置において、前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出部と、抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御部とを含む。
【００２０】
前記制御部は、抽出された前記トリガ情報が前記サスペンドコマンドである場合、実行中の前記アプリケーションプログラムを休止させ、前記アプリケーションプログラムを休止させたときの状態を示す情報をメモリに保持させることができる。
【００２１】
前記制御部は、抽出された前記トリガ情報が前記エクスキュートコマンドである場合、起動させる前記アプリケーションプログラムを休止させたときの状態を示す休止状態情報が前記メモリに保持されているときには、前記休止状態情報に基づいて、前記アプリケーションプログラムを休止された状態から再開させることができる。
【００２２】
前記制御部は、抽出された前記トリガ情報が前記プリキャッシュコマンドである場合、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得させることができる。
【００２３】
前記制御部は、抽出された前記トリガ情報がエクスキュートコマンドである場合、起動させる前記アプリケーションプログラムが未取得であるときには、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得させることができる。
【００２４】
前記制御部は、抽出された前記トリガ情報がレジスタコマンドである場合、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得、保持させた後、取得させた前記アプリケーションプログラムに、前記トリガ情報に含まれる保持期限を対応付けて管理することができる。
【００２５】
前記制御部は、抽出された前記トリガ情報がレジスタコマンドである場合、前記トリガ情報に含まれる前記アプリケーションプログラムの所在情報を兼ねた前記アプリケーションプログラムの識別情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得、保持させた後、取得させた前記アプリケーションプログラムに、前記トリガ情報に含まれる保持期限を対応付けて管理することができる。
【００２６】
前記制御部は、登録した前記アプリケーションプログラムの保持期限が経過した場合、前記アプリケーションプログラムを消去させることができる。
【００２７】
前記制御部は、抽出された前記トリガ情報がレジスタコマンドである場合、前記トリガ情報に基づき、前記ＡＶコンテンツの放送信号または所定のサーバから前記アプリケーションプログラムを取得、保持させた後、取得させた前記アプリケーションプログラムに、前記トリガ情報に含まれる優先度も対応付けて管理することができる。
【００２８】
前記制御部は、前記アプリケーションプログラムを取得、保持させるに際して記録容量が不足する場合、登録済みの前記アプリケーションプログラムのうち、前記優先度が取得する前記アプリケーションプログラムよりも低いものを消去することにより記録容量を確保することができる。
【００２９】
本開示の第１の側面である受信方法は、送信されたＡＶコンテンツを受信する受信装置の受信方法において、前記受信装置による、前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出ステップと、抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御ステップとを含む。
【００３０】
本開示の第１の側面であるプログラムは、ＡＶコンテンツを受信する受信装置の制御用のプログラムであって、前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出ステップと、抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御ステップとを含む処理を受信装置のコンピュータに実行させる。
【００３１】
本開示の第１の側面においては、ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報が抽出され、抽出されたトリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、アプリケーションプログラムの取得または登録、起動、実行中のアプリケーションプログラムにおけるイベント発火、実行中のアプリケーションプログラムの休止、若しくは実行中のアプリケーションプログラムの終了が制御される。
【００３２】
本開示の第２の側面である送信装置は、ＡＶコンテンツを送信する送信装置において、前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信部を含み、前記トリガ情報が示すコマンドには、前記アプリケーションプログラムの取得を指示するプリキャッシュまたは登録を指示するレジスタ、起動を指示するエクスキュート、実行中の前記アプリケーションプログラムにおけるイベント発火を指示するインジェクトイベント、実行中の前記アプリケーションプログラムの休止を指示するサスペンド、若しくは実行中の前記アプリケーションプログラムの終了を指示するターミネートのうちの少なくとも１つが含まれる。
【００３６】
本開示の第２の側面である送信方法は、ＡＶコンテンツを送信する送信装置の送信方法において、前記送信装置による、前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信ステップを含み、前記トリガ情報が示すコマンドには、前記アプリケーションプログラムの取得を指示するプリキャッシュまたは登録を指示するレジスタ、起動を指示するエクスキュート、実行中の前記アプリケーションプログラムにおけるイベント発火を指示するインジェクトイベント、実行中の前記アプリケーションプログラムの休止を指示するサスペンド、若しくは実行中の前記アプリケーションプログラムの終了を指示するターミネートのうちの少なくとも１つが含まれる。
【００３７】
本開示の第２の側面であるプログラムは、ＡＶコンテンツを送信する送信装置の制御用のプログラムであって、前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信ステップを含み、前記トリガ情報が示すコマンドには、前記アプリケーションプログラムの取得を指示するプリキャッシュまたは登録を指示するレジスタ、起動を指示するエクスキュート、実行中の前記アプリケーションプログラムにおけるイベント発火を指示するインジェクトイベント、実行中の前記アプリケーションプログラムの休止を指示するサスペンド、若しくは実行中の前記アプリケーションプログラムの終了を指示するターミネートのうちの少なくとも１つが含まれる処理を送信装置のコンピュータに実行させる。
【００３８】
本開示の第２の側面においては、ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報がＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信される。このトリガ情報が示すコマンドには、アプリケーションプログラムの取得を指示するプリキャッシュまたは登録を指示するレジスタ、起動を指示するエクスキュート、実行中のアプリケーションプログラムにおけるイベント発火を指示するインジェクトイベント、実行中のアプリケーションプログラムの休止を指示するサスペンド、若しくは実行中のアプリケーションプログラムの終了を指示するターミネートのうちの少なくとも１つが含まれる。
【００３９】
本開示の第３の側面である放送システムは、ＡＶコンテンツを送信する送信装置と、送信された前記ＡＶコンテンツを受信する受信装置とからなる放送システムにおいて、前記送信装置が、前記ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報を前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納した状態で送信する送信部を含み、前記受信装置が、前記ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された態で送信された、前記ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報を抽出する抽出部と、抽出された前記トリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、前記アプリケーションプログラムの取得または登録、起動、実行中の前記アプリケーションプログラムにおけるイベント発火、実行中の前記アプリケーションプログラムの休止、若しくは実行中の前記アプリケーションプログラムの終了を制御する制御部とを含む。
【００４０】
本開示の第３の側面においては、送信装置により、ＡＶコンテンツに連動し、受信装置にて実行させるアプリケーションプログラムの制御に関するトリガ情報がＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信される。また、受信装置により、ＡＶコンテンツのトランスポートストリームに含まれるPCRパケットに格納された状態で送信された、ＡＶコンテンツに連動して実行させるためのアプリケーションプログラムの制御に関するトリガ情報が抽出され、抽出されたトリガ情報が示す、プリキャシュまたはレジスタ、エクスキュート、インジェクトイベント、サスペンド、若しくはターミネートの各コマンドに応じて、アプリケーションプログラムの取得または登録、起動、実行中のアプリケーションプログラムにおけるイベント発火、実行中のアプリケーションプログラムの休止、若しくは実行中のアプリケーションプログラムの終了が制御される。
【発明の効果】
【００４１】
本開示の第１の側面によれば、テレビジョン放送の番組やＣＭなどの進行に連動してデータ放送用コンテンツの取得または登録、起動、イベント発火、休止、再開、若しくは終了を実行することができる。
【００４２】
本開示の第２の側面によれば、デジタルテレビジョン放送の放送帯域にデータ放送用の帯域を設けることなく、テレビジョン放送の番組やＣＭなどの進行に連動してデータ放送用コンテンツの取得または登録、起動、イベント発火、休止、再開、若しくは終了を制御することができる。
【００４３】
本開示の第３の側面によれば、デジタルテレビジョン放送の放送帯域にデータ放送用の帯域を設けることなく、テレビジョン放送の番組やＣＭなどの進行に連動してデータ放送用コンテンツを制御することができる。
【図面の簡単な説明】
【００４４】
【図１】デジタルテレビジョン放送の放送帯域を示す図である。
【図２】既存のCATV再送信システムの構成の一例を示す図である。
【図３】実施の形態である放送システムの構成例を示す図である。
【図４】実施の形態である受信装置の構成例を示すブロック図である。
【図５】トリガ情報をＴＳのPCRパケットに含めて送信する概念を示す図である。
【図６】PCRパケットにおけるトリガ情報の具体的な配置を示す図である。
【図７】トリガ情報を映像信号に埋め込む例を示す図である。
【図８】第１の実施の形態におけるプリキャッシュコマンドのトリガ情報に含まれる項目を示す図である。
【図９】第１の実施の形態におけるエクスキュートコマンドのトリガ情報に含まれる項目を示す図である。
【図１０】第１の実施の形態におけるインジェクトイベントコマンドのトリガ情報に含まれる項目を示す図である。
【図１１】第１の実施の形態におけるサスペンドコマンドのトリガ情報に含まれる項目を示す図である。
【図１２】第１の実施の形態におけるターミネートコマンドのトリガ情報に含まれる項目を示す図である。
【図１３】第１の実施の形態に対応したトリガ情報のシンタックスの一例を示す図である。
【図１４】番組およびＣＭの進行に連動してアプリケーションプログラムを実行した場合の表示例を示す図である。
【図１５】トリガ情報対応処理を説明するフローチャートである。
【図１６】アプリケーションプログラムの運用シナリオの一例を示す図である。
【図１７】受信装置におけるアプリケーションプログラムの第１の状態遷移図である。
【図１８】複数のアプリケーションプログラムを同時に制御する場合のシナリオの一例を示す図である。
【図１９】第２の実施の形態におけるレジスタコマンドのトリガ情報に含まれる項目を示す図である。
【図２０】第２の実施の形態におけるエクスキュートコマンドのトリガ情報に含まれる項目を示す図である。
【図２１】第２の実施の形態におけるインジェクトイベントコマンドのトリガ情報に含まれる項目を示す図である。
【図２２】第２の実施の形態におけるサスペンドコマンドのトリガ情報に含まれる項目を示す図である。
【図２３】第２の実施の形態におけるターミネートコマンドのトリガ情報に含まれる項目を示す図である。
【図２４】第２の実施の形態に対応したトリガ情報のシンタックスの一例を示す図である。
【図２５】アプリケーション登録管理処理を説明するフローチャートである。
【図２６】受信装置におけるアプリケーションプログラムの第２の状態遷移図である。
【図２７】コマンドと状態遷移の関係を示す図である。
【図２８】第２の実施の形態におけるアプリケーションプログラムのライフサイクルを示している。
【図２９】マルチアプリケーションプログラムの関係を示す図である。
【図３０】マルチアプリケーションプログラムの運用例を示す図である。
【図３１】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００４５】
以下、発明を実施するための最良の形態（以下、実施の形態と称する）について、図面を参照しながら詳細に説明する。
【００４６】
＜１．第１の実施の形態＞
［放送システムの構成例］
図３は、実施の形態である放送システムを示している。この放送システム３０は、例えば現状の米国のように、デジタルテレビジョン放送の放送帯域にデータ放送用コンテンツを放送するための帯域が設けられていない状態において、番組やＣＭなどのＡＶコンテンツに連動し得るデータ放送用コンテンツを実現するものである。
【００４７】
なお、データ放送用コンテンツは、受信装置に供給されるアプリケーションプログラムが受信装置にて起動されることによって実現されるので、以下、データ放送用コンテンツを、データ放送用アプリケーションプログラムまたはデータ放送用アプリとも称する。データ放送用アプリは、１つのプログラムデータから構成されていてもよいし、複数のプログラムデータから成るプログラムデータ群であってもよい。
【００４８】
この放送システム３０は、放送局側に設けられる放送装置４１およびサーバ４２、並びに、受信者側に設けられる受信装置６０から構成される。
【００４９】
放送装置４１は、デジタルテレビジョン放送信号を送信するようになされている。また、放送装置４１は、ＡＶコンテンツに連動させるデータ放送用コンテンツの動作に関するコマンドとしてのトリガ情報を、デジタルテレビジョン放送信号に含めて送信する。具体的には、デジタルテレビジョン放送信号のトランスポートストリーム（ＴＳ）内に配置したり、映像信号に埋め込んだりして送信する。
【００５０】
トリガ情報には、コマンドの種類を示す情報の他、データ放送用アプリの取得先を示す情報などを含む。トリガ情報の詳細については後述する。
【００５１】
サーバ４２は、インタネット５０を介してアクセスしてきた受信装置６０からの要求に応じてデータ放送用アプリを供給する。
【００５２】
受信装置６０は、放送装置４１から放送されたデジタル放送信号を受信し、ＡＶコンテンツの映像および音声をモニタ（不図示）に出力する。また、受信装置６０は、インタネット５０を介してサーバ４２にアクセスし、データ放送用コンテンツを取得する。なお、この受信装置６０は、単体として存在してもよいし、例えば、テレビジョン受像機やビデオレコーダなどに内蔵されているようにしてもよい。
【００５３】
［受信装置の構成例］
図４は、受信装置６０の構成例を示している。受信装置６０は、チューナ６１、多重分離部６２、オーディオデコーダ６３、音声出力部６４、ビデオデコーダ６５、トリガ検出部６６、映像出力部６７、制御部６８、メモリ６９、操作部７０、記録部７１、通信I/F７２、キャッシュメモリ７３、アプリエンジン７４、およびアプリ用メモリ７５から構成される。
【００５４】
チューナ６１は、ユーザによって選局されたチャンネルに対応するデジタルテレビジョン放送信号を受信して復調し、その結果得られるＴＳを多重分離部６２に出力する。多重分離部６２は、チューナ６１から入力されるＴＳをオーディオ符号化信号、ビデオ符号化信号、および制御信号に分離し、それぞれをオーディオデコーダ６３、ビデオデコーダ６５、または制御部６８に出力する。
【００５５】
さらに、多重分離部６２は、ＴＳに配置されたトリガ情報を含むPCRパケットを抽出してトリガ検出部６６に出力する。
【００５６】
オーディオデコーダ６３は、入力されたオーディオ符号化信号をデコードし、その結果得られる音声信号を音声出力部６４に出力する。音声出力部６４は、入力された音声信号を後段（例えば、スピーカ）に出力する。
【００５７】
ビデオデコーダ６５は、入力されたビデオ符号化信号をデコードし、その結果得られる映像信号をトリガ検出部６６および映像出力部６７に出力する。
【００５８】
トリガ検出部６６は、入力された映像信号を常に監視し、映像信号に埋め込まれているトリガ情報を検出して制御部６８に出力する（トリガ情報がＴＳのみに配置されている場合、このトリガ検出部６６の動作は不要である）。また、トリガ検出部６６は、多重分離部６２から入力される、トリガ情報を含むPCRパケットからトリガ情報を抽出して制御部６８に出力する。
【００５９】
映像出力部６７は、ビデオデコーダ６５から入力された映像信号を後段（例えば、ディスプレイ）に出力する。また、映像出力部６７は、アプリエンジン７４から入力されるデータ放送用コンテンツの映像と、ビデオデコーダ６５から入力された映像信号を合成して、後段に出力する。
【００６０】
制御部６８は、メモリ６９に記録されている制御用プログラムを実行することにより受信装置６０の全体を制御する。また、制御部６８は、トリガ検出部６６から入力されるトリガ情報に基づき、データ放送用アプリの取得、登録、起動、イベント発火、休止、再開、終了等を制御する。
【００６１】
メモリ６９には、制御部６８によって実行される制御用プログラムが記録されている。この制御用プログラムは、デジタルテレビジョン放送信号、またはインタネット５０を介して供給される更新データに基づいて更新することができる。操作部７０は、ユーザからの各種の操作を受け付けて、それに対応する操作信号を制御部６８に通知する。
【００６２】
記録部７１は、データ放送用アプリがデジタルテレビジョン放送信号を用いて配信される場合において、ダウンロードしたデータ放送用アプリを、内蔵するハードディスクなどの記録媒体に保持する。
【００６３】
通信I/F７２は、アプリエンジン７４からの制御に従い、インタネット５０を介してサーバ４２に接続する。アプリエンジン７４は、制御部６８からの制御に従い、通信I/F７２およびインタネット５０を介してサーバ４２からデータ放送用アプリを取得し、キャッシュメモリ７３に保持させる。
【００６４】
アプリエンジン７４は、制御部６８からの制御に従い、記録部７１またはキャッシュメモリ７３に保持されているデータ放送用アプリを読み出して実行する。
【００６５】
アプリ用メモリ７５は、ワークメモリ７５Ａおよび退避メモリ７５Ｂとから成る。アプリエンジン７４は、実行中のデータ放送用アプリに関するデータ（具体的には、表示されている情報の階層などを含む）をワークメモリ７５Ａに記録する。また、アプリエンジン７４は、実行中のデータ放送用アプリを休止する場合、アプリ用メモリ７５のワークメモリ７５Ａのデータを退避メモリ７５Ｂに移動させる。そして、休止したデータ放送用アプリを再開する場合、退避メモリ７５Ｂのデータをワークメモリ７５Ａに移動させて休止前の状態を復活させる。
【００６６】
なお、アプリ用メモリ７５における同じサイズの２領域のうち、一方をワークメモリ７５Ａ、他方を退避メモリ７５Ｂとして交互に切り替えるようにしてもよい。これにより、ワークメモリ７５Ａと退避メモリ７５Ｂとの間でのデータの移動をなくすことができる。
【００６７】
［トリガ情報の送信方法］
次に、トリガ情報の送信方法について説明する。
【００６８】
図５は、トリガ情報がデジタルテレビジョン放送信号のＴＳのPCR(Program Clock Reference)パケットに配置されて送信される場合の概念を示している。
【００６９】
同図に示すように、トリガ情報は全てのPCRパケットに格納されるわけではなく、ＡＶコンテンツ（番組、ＣＭとなど）に連動させるための適切なタイミングにおいてのみ、PCRパケットに格納される。通常、PCRパケットは、図２に示されたようなCATV再送信装置２のPIDフィルタ１２を通過するので、CATV網を利用する受信装置（図２のデジタルテレビジョン受像機４）に対してもトリガ情報を通知することができる。
【００７０】
なお、トリガ情報は、電波障害や受信装置６０における取りこぼし（受信ミス）を考慮して、同一内容のものが複数回連続的に送信される。
【００７１】
図６は、PCRパケットにおいてトリガ情報が格納される位置を示している。PCRパケットは、ＴＳパケットのadaptation_fieldにPCRが格納されたものであり、トリガ情報(Trigger Info_descriptor)は、PCRの後に続くtransport_private_data_byteに格納される。なお、トリガ情報が格納される場合、PCRの前に設けられているVarious_flagsのtransport_private_data_flagが１とされる。
【００７２】
図５および図６はトリガ情報がＴＳのPCRに格納される例を示したが、トリガ情報の格納位置、伝送方法はこれに限定されるものではない。例えば他に、トリガ情報をＡＶコンテンツの映像信号に埋め込んでもよい。図７は、トリガ情報を映像信号に埋め込む２種類の例を示している。
【００７３】
同図Ａは、トリガ情報を２次元バーコード化して、映像信号の画像の所定の位置（いまの場合、右下隅）に重畳合成する例を示している。同図Ｂは、トリガ情報を映像コード化して、映像信号の画像の下部の数ラインに合成する例を示している。同図Ａおよび同図Ｂにおけるトリガ情報は、受信装置６０のトリガ検出部６６によって検出される。
【００７４】
同図Ａまたは同図Ｂのどちらの例においても、トリガ情報はＡＶコンテンツの映像の上に配置されているので、例えば、CATV網を利用した受信装置（例えば、図２のテレビジョン受像機６）に対しても、トリガ情報を通知することができる。
【００７５】
また、同図Ａまたは同図Ｂのどちらの例においても映像上のトリガ情報（２次元バーコードまたは映像コード）は受信装置６０のユーザによって視認され得るが、これが好ましくない場合、映像上のトリガ情報をその周囲の画素と同じ画素によりマスクしてから表示するようにすればよい。
【００７６】
［トリガ情報の詳細］
次に、トリガ情報の詳細について説明する。トリガ情報は、それに含まれるコマンドの種類に応じて５種類に分類される。
【００７７】
５種類のコマンドは、２つの組み合わせが提案されている。１組目（以下、第１の実施の形態と称する）は、プリキャッシュ(Pre_cache)、エクスキュート(Execute)、インジェクトイベント(Inject_event)、およびターミネート(Terminate)の各コマンドからなる組み合わせである。２組目（以下、第２の実施の形態と称する）は、レジスタ(Register)、エクスキュート(Execute)、インジェクトイベント(Inject_event)、およびターミネート(Terminate)の各コマンドからなる組み合わせである。
【００７８】
まず、第１の実施の形態における５種類のコマンドについて説明する。第２の実施の形態については図１９以降を参照して後述する。
【００７９】
［５種類のコマンドの第１の例］
図８は、プリキャッシュ(Pre_cache)コマンドとしてのトリガ情報に含まれる項目を示している。プリキャッシュコマンドは、受信装置６０に対して、データ放送用アプリの取得を指示するためのコマンドである。
【００８０】
Trigger_idは、当該トリガ情報を識別するための情報である。同一内容のトリガ情報が複数回送信される場合、各トリガ情報のTrigger_idは同一である。Protocol_versionは、当該トリガ情報のプロトコルのバージョンを示している。Command_codeは、当該トリガ情報のコマンドの種類を示す。同図の場合、プリキャッシュコマンドであることを示す情報が記載される。
【００８１】
Trigger_validityは、当該トリガ情報を受信した各受信装置６０が当該トリガ情報に従って処理を実行する確率を示すサーバアクセス分散パラメータ値Ｎである。この値を設けることにより、複数の受信装置６０がサーバ４２からデータ放送用アプリを取得するに際し、そのアクセスが一時期に集中せず分散させることができる。例えば、数多く存在し得る受信装置６０からのサーバ４２に対するアクセスを４回に分散させるためには、同一のトリガ情報を４回送信するようにし、１回目のトリガ情報におけるサーバアクセス分散パラメータＮ＝４とし、２回目のトリガ情報におけるサーバアクセス分散パラメータＮ＝３とし、３回目のトリガ情報におけるサーバアクセス分散パラメータＮ＝２とし、４回目のトリガ情報におけるサーバアクセス分散パラメータＮ＝１とすればよい。
【００８２】
App_idは、当該トリガ情報に対応して取得するデータ放送用アプリの識別情報である。App_typeは、当該トリガ情報に対応するデータ放送用アプリのタイプ（例えば、HTML5，javaなど）を示す情報である。App_urlは、データ放送用アプリの取得先のURLである。
【００８３】
Broadcast_App_flag，Downloaded_App_flag、およびInternet_App_flagは、当該トリガ情報に対応するデータ放送用アプリの所在を示すフラグである。Broadcast_App_flagは、当該トリガ情報に対応するデータ放送用アプリがデジタルテレビジョン放送信号から取得可能である場合に１とされる。Downloaded_App_flagは、当該トリガ情報に対応するデータ放送用アプリが既にダウンロードされていてローカルストレージ（例えば、記録部７１）から取得可能である場合に１とされる。Internet_App_flagは、当該トリガ情報に対応するデータ放送用アプリがインタネット５０を介してサーバ４２から取得可能である場合に１とされる。
【００８４】
図９は、エクスキュート(Execute)コマンドとしてのトリガ情報に含まれる項目を示している。エクスキュートコマンドとは、受信装置６０に対して、データ放送用アプリの起動を指示するためのコマンドである。
【００８５】
Trigger_id，Protocol_version，Command_code，Trigger_validity，App_id，App_type，App_url，Broadcast_App_flag，Downloaded_App_flag、およびInternet_App_flagについては、図８に示されたプリキャッシュコマンドとしてのトリガ情報と同様である。ただし、Command_codeには、エクスキュートコマンドであることを示す情報が記載される。
【００８６】
App_life_scopeは、チャンネルなどの切り替えが生じたときに実行中のデータ放送用アプリを終了することなく、実行状態を継続する範囲を示している。App_expire_dateは、ターミネートコマンドが受信されなくても、実行中のデータ放送用アプリを終了する日時を示している。
【００８７】
図１０は、インジェクトイベント(Inject_event)コマンドとしてのトリガ情報に含まれる項目を示している。インジェクトイベントコマンドは、受信装置６０に対して、実行中のデータ放送用アプリにおいてイベントを引火させるためのコマンドである。
【００８８】
Trigger_id，Protocol_version，Command_code，Trigger_validity，App_id、およびApp_typeについては、図８に示されたプリキャッシュコマンドとしてのトリガ情報と同様である。ただし、Command_codeには、インジェクトイベントコマンドであることを示す情報が記載される。
【００８９】
Event_idは、App_idにて指定されたデータ放送用アプリにおいて発火すべきイベントの識別情報である。Event Embedded Dataは、イベントを発火する際に参照されるデータが記載される。
【００９０】
図１１は、サスペンド(Suspend)コマンドとしてのトリガ情報に含まれる項目を示している。サスペンドコマンドは、受信装置６０に対して、実行中のデータ放送用アプリを休止させるためのコマンドである。
【００９１】
Trigger_id，Protocol_version，Command_code，Trigger_validity，App_id、およびApp_typeについては、図８に示されたプリキャッシュコマンドとしてのトリガ情報と同様である。ただし、Command_codeには、サスペンドコマンドであることを示す情報が記載される。
【００９２】
図１２は、ターミネート(Terminate)コマンドとしてのトリガ情報に含まれる項目を示している。ターミネートコマンドは、受信装置６０に対して、実行中のデータ放送用アプリを終了させるためのコマンドである。
【００９３】
Trigger_id，Protocol_version，Command_code，Trigger_validity，App_id、およびApp_typeについては、図８に示されたプリキャッシュコマンドとしてのトリガ情報と同様である。ただし、Command_codeには、ターミネートコマンドであることを示す情報が記載される。
【００９４】
図１３は、上述した各コマンドとしてのトリガ情報に対応可能なトリガ情報のシンタックスの一例を示している。なお、トリガ情報のシンタックスは任意であって、図１３の例に限定されるものではない。
【００９５】
［受信装置６０の動作概要］
次に、トリガ情報に従う受信装置６０の動作について説明する。
【００９６】
図１４は、ＡＶコンテンツ（番組、ＣＭなど）に対応するデータ放送用アプリを受信装置６０に実行させるときの受信装置６０の表示画面の遷移を示している。
【００９７】
例えば同図Ａに示すように、番組（いまの場合、「７時のニュース」）が放送されており、番組の内容が経済情報に移ると、それにあわせて、番組に対応するデータ放送用アプリに対するエクスキュートコマンドのトリガ情報が送信される。これが受信装置６０に受信されると、データ放送用アプリが起動されて、番組が表示されている画面上には、同図Ｂに示すように、データ放送用アプリの表示が用意されている旨をユーザに通知するためのアイコン（いまの場合、「株」）が表示される。
【００９８】
ユーザがこのアイコンを選択すると、画面上には、同図Ｃに示すように、データ放送用アプリによる表示（いまの場合、株価情報表示）が行われる。このように、画面上に表示されたアイコンがユーザによって選択された場合にのみ、データ放送用アプリによる表示を行うので、データ放送用アプリによる表示を必要としないユーザを煩わせてしまう事態を抑止することができる。
【００９９】
さらに番組の内容が推移すると（いまの場合、スポーツ情報に推移すると）、それにあわせてインジェクイベントコマンドのトリガ情報が送信される。これが受信されると、イベントが発火されて、例えば、画面上のデータ放送用アプリによる表示が、同図Ｄに示すように変更される（いまの場合、試合結果情報表示に変更される）。
【０１００】
その後、ＣＭの放送に先立って、番組に対応する実行中のデータ放送用アプリに対するサスペンドコマンドのトリガ情報が送信され、これが受信されると、番組に対応するデータ放送用アプリが休止される。この後、ＣＭに対応するデータ放送用アプリに対するエクスキュートコマンドのトリガ情報が送信され、これが受信されると、ＣＭ番組のデータ放送用アプリが起動される。これにより、ＣＭが表示されている画面上には、同図Ｅに示すように、ＣＭに対応するデータ放送用アプリの表示をユーザに促すためのアイコン（いまの場合、「懸賞応募」）が表示される。
【０１０１】
ユーザがこのアイコンを選択すると、画面上には、ＣＭに対応するデータ放送用アプリによる表示（いまの場合、懸賞応募のための表示）が行われる。
【０１０２】
ＣＭの終了後、番組再開にあわせて、番組に対応するデータ放送用アプリに対するエクスキュートコマンドのトリガ情報が送信され、これが受信されると、同図Ｆに示すように、CMに対応するデータ放送用アプリの表示が消去されて、番組のデータ放送用アプリの表示も、先ほど休止された状態から再開される。
【０１０３】
そして、番組が終了するとき、それにあわせて、番組に対応するデータ放送用アプリに対するターミネートコマンドのトリガ情報が送信され、これが受信されると、データ放送用アプリが終了され、同図Ｇに示すように、画面上からデータ放送用アプリの表示が消去されて番組の映像のみが表示される。
【０１０４】
なお、データ放送用アプリの表示については、図１４に示されたように、番組の表示を縮小してデータ放送用アプリの表示のための領域を設ける方法だけでなく、例えば、番組の表示に、データ放送用アプリの表示を重畳するようにしてもよい。
【０１０５】
[トリガ情報対応処理について]
次に、受信装置６０がトリガ情報を受信したときのトリガ情報対応処理について、図１５を参照して説明する。
【０１０６】
図１５は、トリガ情報対応処理を説明するフローチャートである。このトリガ情報対応処理は、ユーザがテレビジョン番組を視聴しているとき、すなわち、デジタルテレビジョン放送信号を受信している間、繰り返して実行される。
【０１０７】
ステップＳ１において、トリガ検出部６６は、多重分離部６２からトリガ情報を含むPCRパケットが入力されるか、またはビデオデコーダ６５から出力される映像信号からトリガ情報を検出するまで待機する。そして、トリガ情報を含むPCRパケットが入力されるか、または映像信号からトリガ情報が検出された場合、処理はステップＳ２に進められる。
【０１０８】
ステップＳ２において、トリガ検出部６６は、トリガ情報を制御部６８に出力する。制御部６８は、トリガ情報のTrigger_idを読み出し、当該トリガ情報に対してステップＳ３以降の処理を既に実行済みであるか否かを判定する。既にステップＳ３以降の処理を実行済みであると判定された場合、処理はステップＳ１に戻されて、それ以降が繰り返される。反対に、当該トリガ情報に対してステップＳ３以降の処理を実行していないと判定された場合、処理はステップＳ３に進められる。
【０１０９】
ステップＳ３において、制御部６８は、トリガ情報のCommand_codeを読み出し、当該トリガ情報の示すコマンドが、プリキャッシュ、エクスキュート、インジェクトイベント、サスペンド、またはターミネートのいずれであるかを判別する。
【０１１０】
ステップＳ４において、制御部６８は、ステップＳ３の判別結果がプリキャッシュであるか否かを判断し、プリキャッシュであると判断された場合、処理はステップＳ５に進められる。
【０１１１】
ステップＳ５において、制御部６８は、当該トリガ情報のApp_idにより特定されるデータ放送用アプリを取得させる。具体的には、当該トリガ情報のBroadcast_App_flagが１である場合、App_idにより特定されるデータ放送用アプリがテレビジョン放送信号から取得されて記録部７１に記録される。当該トリガ情報のDownloaded_App_flagが１である場合、App_idにより特定されるデータ放送用アプリが、ローカルストレージである記録部７１から取得される。当該トリガ情報のInternet_App_flagが１である場合、App_idにより特定されるデータ放送用アプリが、インタネット５０を介してサーバ４２から取得されてキャッシュメモリ７３に記録される。なお、Broadcast_App_flag，Downloaded_App_flag、およびInternet_App_flagのうち、２つ以上のflagが１である場合、受信装置６０側の都合に応じて、当該トリガ情報のApp_idにより特定されるデータ放送用アプリを取得することができる。この後、処理はステップＳ１に戻り、それ以降が繰り返される。
【０１１２】
ステップＳ４において、ステップＳ３の判別結果がプリキャッシュではないと判断された場合、処理はステップＳ６に進められる。ステップＳ６において、制御部６８は、ステップＳ３の判別結果がエクスキュートであるか否かを判断し、エクスキュートであると判断された場合、処理はステップＳ７に進められる。
【０１１３】
ステップＳ７において、アプリエンジン７４は、制御部６８からの制御に従い、当該トリガ情報のApp_idにより特定されるデータ放送用アプリが休止中（サスペンド状態）であるか否かを判断する。具体的には、退避メモリ７５Ｂに、App_idにより特定されるデータ放送用アプリに、休止の状態を示すデータが退避されている場合に休止中であると判断する。
【０１１４】
ステップＳ７において、App_idにより特定されるデータ放送用アプリが休止中ではないと判断された場合、処理はステップＳ８に進められる。ステップＳ８において、アプリエンジン７４は、制御部６８からの制御に従い、App_idにより特定されるデータ放送用アプリが未取得（記録部７１またはキャッシュメモリ７３に存在しない）の場合にそれを取得する。
【０１１５】
ステップＳ９において、アプリエンジン７４は、制御部６８からの制御に従い、現在実行中のデータ放送用アプリがあるならば、それを終了させる。
【０１１６】
ステップＳ１０において、アプリエンジン７４は、制御部６８からの制御に従い、App_idにより特定されるデータ放送用アプリを起動する。この後、処理はステップＳ１に戻り、それ以降が繰り返される。
【０１１７】
なお、ステップＳ７において、App_idにより特定されるデータ放送用アプリが休止中（サスペンド状態）であると判断された場合、処理はステップＳ１１に進められる。ステップＳ１１において、アプリエンジン７４は、制御部６８からの制御に従い、退避メモリ７５Ｂのデータをワークメモリ７５Ａに移して、App_idにより特定されるデータ放送用アプリを起動する。これにより、App_idにより特定される、休止中のデータ放送用アプリが休止された状態から再開されることになる。この後、処理はステップＳ１に戻り、それ以降が繰り返される。
【０１１８】
ステップＳ６において、ステップＳ３の判別結果がエクスキュートではないと判断された場合、処理はステップＳ１２に進められる。ステップＳ１２において、制御部６８は、ステップＳ３の判別結果がインジェクトイベントであるか否かを判断し、インジェクトイベントであると判断された場合、処理はステップＳ１３に進められる。
【０１１９】
ステップＳ１３において、制御部６８は、当該トリガ情報のApp_idと、動作中のデータ放送用アプリのApp_idが一致する場合のみ、アプリエンジン７４を制御して、動作中のアプリケーションにおいて、トリガ情報のEvent_idに対応するイベントを発火（実行）させる。この後、処理はステップＳ１に戻り、それ以降が繰り返される。
【０１２０】
ステップＳ１２において、ステップＳ３の判別結果がインジェクトイベントではないと判断された場合、処理はステップＳ１４に進められる。ステップＳ１４において、制御部６８は、ステップＳ３の判別結果がサスペンドであるか否かを判断し、サスペンドであると判断された場合、処理はステップＳ１５に進められる。
【０１２１】
ステップＳ１５において、アプリエンジン７４は、制御部６８からの制御に従い、現在実行中のデータ放送用アプリの状態を示すデータ（すなわち、現在ワークメモリ７５Ａに書き込まれているデータ。表示する情報に階層構造がある場合、表示されている情報の階層を示す情報を含む）を退避メモリ７５Ｂに退避させる。この後、処理はステップＳ１に戻り、それ以降が繰り返される。
【０１２２】
ステップＳ１４において、ステップＳ３の判別結果がサスペンドではないと判断された場合、ステップＳ３の判別結果はターミネートであるので、処理はステップＳ１６に進められる。ステップＳ１６において、アプリエンジン７４は、制御部６８からの制御に従い、App_idにより特定されるデータ放送用アプリが実行中であればそれを終了させる。ステップＳ１７において、アプリエンジン７４は、制御部６８からの制御に従い、App_idにより特定されるデータ放送用アプリに関するデータを、ワークメモリ７５Ａおよび退避メモリ７５Ｂから消去するとともに、データ放送用アプリを記録部７１またはキャッシュメモリ７３から消去させる。この後、処理はステップＳ１に戻り、それ以降が繰り返される。
【０１２３】
以上でトリガ情報対応処理の説明を終了する。上述したトリガ情報対応処理によれば、テレビジョン放送のＡＶコンテンツ（番組、ＣＭなど）に連動してデータ放送用アプリを起動したり、イベントを発火させたり、終了したりすることができる。さらに、データ放送用アプリを実行中の状態を保持したままで休止させて、他のデータ放送用アプリを実行、終了し、その後、休止したデータ放送用アプリを休止状態から再開することができる。
【０１２４】
[動作シナリオ]
上述したトリガ情報対応処理によれば、図１６に示すようなデータ放送用アプリの運用の可能である。
【０１２５】
図１６は、データ放送用アプリの動作シナリオの一例を示している。
【０１２６】
放送装置４１が番組の進行にあわせて、番組に対応するデータ放送用アプリの取得を指示するプリキャッシュコマンドのトリガ情報を送信すると、これを受信した受信装置６０では、データ放送用アプリが取得される。
【０１２７】
次に、放送装置４１が番組の進行にあわせて、番組に対応するデータ放送用アプリのエクスキュートコマンドのトリガ情報を送信すると、これを受信した受信装置６０では、放送用アプリが起動される。この起動により、番組の映像に、データ放送用アプリの表示が用意されていることを示すアイコンが重畳表示される。
【０１２８】
このアイコンをユーザが選択すると、番組の映像に画面上にデータ放送用アプリによる表示が重畳される。
【０１２９】
放送装置４１が番組の進行にあわせて、インジェクトイベントコマンドのトリガ情報を送信すると、これを受信した受信装置６０では、実行中のデータ放送用アプリにおいてイベントが発火される（例えば、表示が変更される）。
【０１３０】
そして、所定のタイミングにおいて、放送装置４１がデータ放送用アプリのサスペンドコマンドのトリガ情報を送信すると、これを受信した受信装置６０では、実行中のデータ放送用アプリが休止される（関連するデータは退避メモリ７５Ｂに保持される）。その後、放送装置４１がデータ放送用アプリのエクスキュートコマンドのトリガ情報を送信すると、これを受信した受信装置６０では、休止されていたデータ放送用アプリが再開される。
【０１３１】
さらに、放送装置４１が番組の終了にあわせて、ターミネートコマンドのトリガ情報を送信すると、これを受信した受信装置６０では、実行中のデータ放送用アプリが終了される。
【０１３２】
[データ放送用アプリの第１の状態遷移]
図１７は、５種類のコマンドの第１の例である、プリキャッシュ、エクスキュート、インジェクトイベント、サスペンド、およびターミネートの各コマンドに応じて受信装置６０にて動作するデータ放送用アプリの状態遷移図である。
【０１３３】
同図に示すように、データ放送用アプリの状態は、終了状態(Stopped)、準備状態(Ready)、実行中状態(Active)、または休止状態(Suspended)の４種類のうちのいずれかに遷移していると定義される。
【０１３４】
終了状態は、データ放送用アプリが受信装置６０に未取得である状態を指す。準備状態は、そのデータ放送用アプリが受信装置６０に取得済みであって起動されていない状態を指す。実行中状態は、データ放送用アプリが起動されて実行中である状態を指す。休止状態は、データ放送用アプリの実行が中断され、その中断したときの状態を示す情報が退避メモリ７５Ｂに保持されている状態を指す。
【０１３５】
データ放送用アプリが終了状態に遷移しているとき（受信装置６０に未取得のとき）、プリキャッシュコマンドのトリガ情報が受信され、プリキャッシュコマンドに従ってそのデータ放送用アプリが取得されると、準備状態に遷移する。
【０１３６】
データ放送用アプリが準備状態であるとき、エクスキュートコマンドのトリガ情報が受信され、エクスキュートコマンドに従ってそのデータ放送用アプリが起動されると、実行中状態に遷移する。
【０１３７】
また、データ放送用アプリが終了状態に遷移しているとき（受信装置６０に未取得のとき）、エクスキュートコマンドのトリガ情報が受信され、エクスキュートコマンドに従ってそのデータ放送用アプリが取得されて起動されると、実行中状態に遷移する。
【０１３８】
データ放送用アプリが実行中状態に遷移しているとき、サスペンドコマンドのトリガ情報が受信され、サスペンドコマンドに従って実行中のデータ放送用アプリが中断されると休止状態に遷移する。
【０１３９】
データ放送用アプリが休止状態に遷移しているとき、エクスキュートコマンドのトリガ情報が受信され、エクスキュートコマンドに従って、中断されていたデータ放送用アプリが再開されると、実行中状態に遷移する。
【０１４０】
データ放送用アプリが準備状態、実行中状態、または休止状態に遷移しているとき、ターミネートコマンドのトリガ情報が受信され、ターミネートコマンドに従って、実行中のデータ放送用アプリが終了されると、終了状態に遷移する。なお、終了状態への遷移は、ターミネートコマンドのトリガ情報に基づくものの他、トリガ情報のApp_expire_dateが経過したとき、他のデータ放送用アプリが実行されたとき、受信チャンネルが切り替えがApp_life_scopeを超えたときにも発生する。
【０１４１】
[複数のデータ放送用アプリの状態遷移について]
次に、受信装置６０にて順次実行され得る複数のデータ放送用アプリの状態遷移について説明する。
【０１４２】
図１８は、複数のデータ放送用アプリを順次実行させるときの運用シナリオの一例を示している。以下、３つのデータ放送用アプリをデータ放送用アプリＡ，Ｂ，Ｃと称する。
【０１４３】
番組が開始されたとき、データ放送用アプリＡ，Ｂ，Ｃは全て終了(Stopped)状態である。そして、データ放送用アプリＡに対するエクスキュートコマンドが受信されると、データ放送用アプリＡが取得、起動され、データ放送用アプリＡは実行中(Active)状態となる。このとき、ワークメモリ７５Ａには、データ放送用アプリＡに関するデータが書き込まれている。
【０１４４】
次に、データ放送用アプリＡに対するサスペンドコマンドが受信されると、ワークメモリ７５Ａに書き込まれていた、データ放送用アプリＡに関するデータが退避メモリ７５Ｂに移されて、データ放送用アプリＡが休止(Suspended)状態となる。この後、データ放送用アプリＢに対するエクスキュートコマンドが受信されると、データ放送用アプリＢが取得、起動され、データ放送用アプリＢが実行中状態となる。このとき、ワークメモリ７５Ａには、データ放送用アプリＢに関するデータが書き込まれる。
【０１４５】
データ放送用アプリＢが実行中状態のとき、データ放送用アプリＣに対するプリキャッシュコマンドが受信されると、データ放送用アプリＣが取得されてデータ放送用アプリＣは準備状態となる。
【０１４６】
次に、データ放送用アプリＡに対するエクスキュートコマンドが受信されると、データ放送用アプリＡは休止状態であるので、データ放送用アプリＡに関するデータが退避メモリ７５Ｂからワークメモリ７５Ａに移されてデータ放送用アプリＡが再開される。一方、データ放送用アプリＢは終了される。
【０１４７】
この後、準備状態のデータ放送用アプリＣに対するエクスキュートコマンドが受信されると、データ放送用アプリＣが読み出されて起動され、データ放送用アプリＣは実行中状態となり、ワークメモリ７５Ａには、データ放送用アプリＣに関するデータが書き込まれる。一方、データ放送用アプリＡは終了される。
【０１４８】
上述したように、受信装置６０においては複数のデータ放送用アプリを順次実行することができ、休止したデータ放送用アプリについても休止した状態から再開することができる。
【０１４９】
＜２．第２の実施の形態＞
［５種類のコマンドの第２の例］
次に、第２の実施の形態について説明する。上述したように、第２の実施の形態における５種類のコマンドは、レジスタ(Register)、エクスキュート(Execute)、インジェクトイベント(Inject_event)、およびターミネート(Terminate)の各コマンドからなる。
【０１５０】
図１９は、第２の実施の形態における、レジスタ(Register)コマンドとしてのトリガ情報に含まれる項目を示している。レジスタコマンドは、受信装置６０に対して、データ放送用アプリの取得と登録を指示するためのコマンドである。
【０１５１】
すなわち、データ放送用アプリの取得を指示する点については、第１の実施の形態におけるプリキャッシュコマンドと同様であるが、その登録も指示する点が異なる。ここで、データ放送用アプリの登録とは、取得したデータ放送用アプリに対応付けて、その優先度(Persistent_priority)と保持期限(Expire_date)を記憶することを意味する。記憶されたデータ放送用アプリは、制御部６８により、優先度と保持期限に従って管理される（詳細後述）。
【０１５２】
Trigger_id，Protocol_version，Command_code，Trigger_validity，App_type，App_life_scopeについては、図８に示されたプリキャッシュコマンドとしてのトリガ情報と同様である。ただし、Command_codeには、レジスタコマンドであることを示す情報が記載される。
【０１５３】
第２の実施の形態におけるApp_idは、当該トリガ情報に対応して取得するデータ放送用アプリの識別情報であるとともにその取得先（いまの場合、サーバ４２）のURLも示している。換言すれば、データ放送用アプリの取得先がその識別情報にも流用されてApp_idとされている。したがって、レジスタコマンドとしてのトリガ情報には、図８に示されたプリキャッシュコマンドとしてのトリガ情報に存在していたApp_urlの項目が省かれている。ただし、App_urlをレジスタコマンドとしてのトリガ情報に含めるようにしても構わない。
【０１５４】
Persistent_priorityは、対応するデータ放送用アプリを取得、保持するときの優先度を示している。いまの場合、Persistent_priorityに対して２ビットが割り当てられているので、４段階の優先度を付与することができる。対応するデータ放送用アプリを取得、保持するときに記録部７１にそれを保持するだけの記録容量が残っていない場合、対応するデータ放送用アプリよりも優先度の低いものを記録部７１から消去して記録容量を確保するようにする。対応するデータ放送用アプリよりも優先度の低いものが記録部７１に保持されていない場合、対応するデータ放送用アプリは取得されない。ただし、可能であれば、取得してキャッシュメモリ７３に一時的に保持するようにしてもよい。
【０１５５】
Expire_dateは、記録部７１に保持した対応するデータ放送用アプリの保持期限を示す。保持期限が経過した場合、対応するデータ放送用アプリは記録部７１から消去される。
【０１５６】
図２０は、第２の実施の形態における、エクスキュート(Execute)コマンドとしてのトリガ情報に含まれる項目を示している。エクスキュートコマンドは、受信装置６０に対して、データ放送用アプリの起動を指示するためのコマンドである。
【０１５７】
エクスキュートコマンドとしてのトリガ情報に含まれる項目は、図１９に示されたレジスタコマンドとしてのトリガ情報に含まれる項目と同様である。ただし、Command_codeには、エクスキュートコマンドであることを示す情報が記載される。
【０１５８】
図２１は、第２の実施の形態における、インジェクトイベント(Inject_event)コマンドとしてのトリガ情報に含まれる項目を示している。インジェクションコマンドは、受信装置６０に対して、実行中のデータ放送用アプリにおいてイベントを発火させるためのコマンドである。
【０１５９】
第２の実施の形態における、インジェクトイベントコマンドとしてのトリガ情報に含まれる項目は、図１０に示された第１の実施の形態におけるそれと同様である。ただし、App_idに割り当てられているビット数が異なる。
【０１６０】
図２２は、第２の実施の形態における、サスペンド(Suspend)コマンドとしてのトリガ情報に含まれる項目を示している。サスペンドコマンドは、受信装置６０に対して、実行中のデータ放送用アプリを休止させるためのコマンドである。
【０１６１】
第２の実施の形態における、サスペンドコマンドとしてのトリガ情報に含まれる項目は、図１１に示された第１の実施の形態におけるそれと同様である。ただし、App_idに割り当てられているビット数と、App_typeが省略されている点が異なる。
【０１６２】
図２３は、第２の実施の形態における、ターミネート(Terminate)コマンドとしてのトリガ情報に含まれる項目を示している。ターミネートコマンドは、受信装置６０に対して、実行中のデータ放送用アプリを終了させるためのコマンドである。
【０１６３】
第２の実施の形態における、ターミネートコマンドとしてのトリガ情報に含まれる項目は、図１２に示された第１の実施の形態におけるそれと同様である。ただし、App_idに割り当てられているビット数と、App_typeが省略されている点が異なる。
【０１６４】
図２４は、上述した各コマンドの第２の実施の形態としてのトリガ情報に対応可能なトリガ情報のシンタックスの一例を示している。なお、トリガ情報のシンタックスは任意であって、図２４の例に限定されるものではない。
【０１６５】
[アプリケーション登録管理処理の説明]
第２の実施の形態における受信装置６０によるトリガ対応処理は、上述した第１の実施の形態におけるトリガ対応処理と略同様である。相違点は、第１の実施の形態におけるトリガ対応処理では、プリキャッシュコマンドとしてのトリガ情報を受信したことに応じてデータ放送用アプリを取得、記憶する（図１５のステップＳ５）が、第２の実施の形態では、レジスタコマンドとしてのトリガ情報を受信したことに応じてアプリケーション登録管理処理を実行する。すなわち、アプリケーション登録管理処理は、図１５のステップＳ５の代わりに実行されるものである。
【０１６６】
図２５は、このアプリケーション登録管理処理を説明するフローチャートである。アプリケーション登録管理処理は、受信したトリガ情報がレジスタコマンドであると判断された場合に開始される。
【０１６７】
ステップＳ３１において、制御部６８は、トリガ情報で指定されているデータ放送用アプリを保持するための記録容量が記録部７１に残っているか否かを判定し、残っていると判定した場合、処理はステップＳ３４に進められる。反対に、残っていないと判定された場合、処理はステップＳ３２に進められる。
【０１６８】
ステップＳ３２において、制御部６８は、記録部７１に保持されている（すなわち、既に登録済みの）データ放送用アプリのうち、その優先度がトリガ情報で指定されているデータ放送用アプリの優先度よりも低いものを記録部７１から消去させる。ステップＳ３３において、制御部６８は、トリガ情報で指定されているデータ放送用アプリを保持するための記録容量が記録部７１に確保できたか否かを判定し、確保できたと判定した場合、処理をステップＳ３４に進める。反対に、確保できなかったと判定された場合、対応するデータ放送用アプリは取得されずにアプリケーション登録管理処理は終了される。
【０１６９】
ステップＳ３４において、制御部６８は、トリガ情報のApp_idが示すデータ放送用アプリの取得先からデータ放送用アプリを取得させて記録部７１に保持させる。ステップＳ３５において、制御部６８は、取得、保持させたデータ放送用アプリを登録する（データ放送用アプリに、その優先度と保持期限を対応付けて管理する）。以上で、アプリケーション登録管理処理は終了される。
【０１７０】
なお、登録されたデータ放送用アプリについては、その保持期限が経過したときに記録部７１から消去される。これにより、当該データ放送用アプリの登録は抹消される。
【０１７１】
[データ放送用アプリの第２の状態遷移について]
図２６は、第２の実施の形態における５種類のコマンドである、レジスタ、エクスキュート、インジェクトイベント、サスペンド、およびターミネートの各コマンドとしてのトリガ情報に応じて受信装置６０にて動作するデータ放送用アプリの状態遷移図である。同図に示すように、データ放送用アプリの状態は、解放状態(Released)、準備状態(Ready)、実行中状態(Active)、または休止状態(Suspended)の４種類のうちのいずれかに遷移していると定義される。
【０１７２】
解放状態は、データ放送用アプリが受信装置６０に未取得である状態を指す。準備状態は、そのデータ放送用アプリが受信装置６０に登録済みであって起動されていない状態を指す。実行中状態は、データ放送用アプリが起動されて実行中である状態を指す。休止状態は、データ放送用アプリの実行が中断され、その中断したときの状態を示す情報が退避メモリ７５Ｂに保持されている状態を指す。
【０１７３】
図２７は、各コマンドと状態遷移の関係を示している。
【０１７４】
データ放送用アプリが解放状態に遷移しているとき（受信装置６０に未取得のとき）、レジスタコマンドのトリガ情報に応じて、そのデータ放送用アプリが取得、保持され、登録されると準備状態に遷移する。
【０１７５】
データ放送用アプリが準備状態であるとき、エクスキュートコマンドのトリガ情報に応じて、そのデータ放送用アプリが起動されると実行中状態に遷移する。
【０１７６】
また、データ放送用アプリが解放状態に遷移しているとき（受信装置６０に未取得のとき）、エクスキュートコマンドのトリガ情報に応じて、そのデータ放送用アプリが取得、登録され、起動されると実行中状態に遷移する。
【０１７７】
データ放送用アプリが実行中状態に遷移しているとき、サスペンドコマンドのトリガ情報に応じて、実行中のデータ放送用アプリが中断されると休止状態に遷移する。
【０１７８】
また、データ放送用アプリが実行中状態に遷移しているとき、ターミネートコマンドのトリガ情報に応じて、実行中のデータ放送用アプリが終了されると準備状態に遷移する。なお、映像の切替がApp_life_scopeを外れた場合、または他のデータ放送用アプリが起動された場合にも準備状態に遷移する。
【０１７９】
データ放送用アプリが休止状態に遷移しているとき、エクスキュートコマンドのトリガ情報に応じて、中断されていたデータ放送用アプリが再開されると、実行中状態に遷移する。
【０１８０】
また、データ放送用アプリが休止状態に遷移しているとき、ターミネートコマンドのトリガ情報に応じて、データ放送用アプリは準備状態に遷移する。
【０１８１】
データ放送用アプリが準備状態、実行中状態、または休止状態に遷移しているとき、当該データ放送用アプリの保持期限が経過すると、当該データ放送用アプリが記録部７１から消去され、登録が抹消されて解放状態に遷移する。
【０１８２】
[データ放送用アプリのライフサイクル]
第１の実施の形態の場合、１度起動されたデータ放送用アプリが終了されると記録部７１から消去されていた。これに対して、第２の実施の形態の場合、登録されたデータ放送用アプリは起動、終了されても、保持期限が経過するまで消去されない。したがって、登録されたデータ放送用アプリは、図２８に示されるような、複数回に亘って起動、終了されるような運用が可能となる。ただし、優先度が低いデータ放送用アプリについては、記録部７１の容量が不足したときに保持期限に関係なく消去されることがある。
【０１８３】
図２８は、第２の実施の形態にて可能なデータ放送用アプリの３種類のライフサイクルを示している。
【０１８４】
同図Ａは、１回だけ起動、終了されるデータ放送用アプリのライフサークルを示している。このデータ放送用アプリは、エクスキュートコマンドに応じて登録、起動され、ターミネートコマンドに応じて終了され、準備状態に遷移する。その後、保持期限が経過すると記録部７１から消去される。
【０１８５】
同図Ｂは、登録され、複数回起動、終了されるデータ放送用アプリのライフサークルを示している。このデータ放送用アプリは、レジスタコマンドに応じて取得、保持されて登録され、エクスキュートコマンドに応じて起動され、ターミネートコマンドに応じて終了され、準備状態に遷移する。この後、再びエクスキュートコマンドに応じて起動され、ターミネートコマンドに応じて終了され、準備状態に遷移する。その後、保持期限が経過すると記録部７１から消去される。
【０１８６】
同図Ｃは、休止状態に遷移されるデータ放送用アプリのライフサークルを示している。このデータ放送用アプリは、レジスタコマンドに応じて取得、保持されて登録され、エクスキュートコマンドに応じて起動され、サスペンドコマンドに応じて休止状態に遷移する。その後、エクスキュートコマンドに応じて再開され、ターミネートコマンドに応じて終了され、準備状態に遷移する。その後、保持期限が経過すると記録部７１から消去される。
【０１８７】
[複数のデータ放送用アプリの運用]
以上においては、データ放送用アプリがエクスキュートコマンドとしてのトリガ情報に応じて起動される場合のみを説明したが、エクスキュートコマンドとしてのトリガ情報を用いることなくデータ放送用アプリを起動させることが可能である。具体的には、図２９に示されるように、エクスキュートコマンドに応じて起動されるデータ放送用アプリApp0の内部に、他のデータ放送用アプリApp1，App2などを起動させるための関数を記述しておけばよい。これにより、データ放送用アプリApp0の進行状況やデータ放送用アプリApp0に対するユーザの操作などに応じて、データ放送用アプリApp1などを起動させることができる。
【０１８８】
図３０は、３つのデータ放送用アプリapp0，app1，app2を連携して起動させる運用の例を示している。
【０１８９】
初めに、データ放送用アプリapp0に対するエクスキュートコマンドとしてのトリガ情報、データ放送用アプリapp1に対するレジスタコマンドとしてのトリガ情報、およびデータ放送用アプリapp2に対するレジスタコマンドとしてのトリガ情報が放送される。これらを受信した受信装置６０では、データ放送用アプリapp0が取得、登録されて起動される。実行されたデータ放送用アプリapp0の画面には、データ放送用アプリapp1，app2にそれぞれ対応するアイコンが表示される。これと同時に、データ放送用アプリapp1，app2が取得、登録される。
【０１９０】
ユーザがデータ放送用アプリapp0の画面に表示されたデータ放送用アプリapp1に対応するアイコンを選択した場合、実行中のデータ放送用アプリapp0が終了されるとともに、データ放送用アプリapp1が起動される。この後は、実行中のデータ放送用アプリapp1に対するインジェクトイベントコマンド、サスペンドコマンド、エクスキュートコマンド、ターミネートコマンドにそれぞれ対応して、データ放送用アプリapp1のイベント発火、休止、再開、終了が行われる。
【０１９１】
ユーザがデータ放送用アプリapp0の画面に表示されたデータ放送用アプリapp2に対応するアイコンを選択した場合、実行中のデータ放送用アプリapp0が終了されるとともに、データ放送用アプリapp2が起動される。この後は、実行中のデータ放送用アプリapp2に対するインジェクトイベントコマンド、ターミネートコマンドにそれぞれ対応して、データ放送用アプリapp2のイベント発火、終了が行われる。
【０１９２】
上記運用によれば、エクスキュートコマンドとしてのトリガ情報を用いることなく複数のデータ放送用アプリを連携させて起動させることが可能である。
【０１９３】
以上に説明したように、第１および第２の実施の形態のいずれにおいても、番組、ＣＭなどのＡＶコンテンツに連動させてデータ放送用アプリに関する処理を実行させることができる。
【０１９４】
さらに、デジタルテレビジョン番組がCATV網や衛星通信網などを介して再送信される場合においても、テレビジョン番組に連動し得るデータ放送用コンテンツのサービスを実現することができる。
【０１９５】
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１９６】
図３１は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１９７】
このコンピュータ１００において、CPU（Central Processing Unit）１０１，ROM（Read Only Memory）１０２，RAM（Random Access Memory）１０３は、バス１０４により相互に接続されている。
【０１９８】
バス１０４には、さらに、入出力インタフェース１０５が接続されている。入出力インタフェース１０５には、キーボード、マウス、マイクロホンなどよりなる入力部１０６、ディスプレイ、スピーカなどよりなる出力部１０７、ハードディスクや不揮発性のメモリなどよりなる記憶部１０８、ネットワークインタフェースなどよりなる通信部１０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１１１を駆動するドライブ１１０が接続されている。
【０１９９】
以上のように構成されるコンピュータでは、CPU１０１が、例えば、記憶部１０８に記憶されているプログラムを、入出力インタフェース１０５及びバス１０４を介して、RAM１０３にロードして実行することにより、上述した一連の処理が行われる。
【０２００】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであってもよいし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【０２０１】
また、プログラムは、１台のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。
【０２０２】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０２０３】
なお、本開示における実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０２０４】
３０  放送システム，  ４１  放送装置，  ４２  サーバ，  ６０  受信装置，  ６１  チューナ，  ６２  多重分離部，  ６３  オーディオデコーダ，  ６４  音声出力部，  ６５  ビデオデコーダ，  ６６  トリガ検出部，  ６７  映像出力部，  ６８  制御部，  ６９  メモリ，  ７０  操作部，  ７１  記録部，  ７２  通信I/F，  ７３  キャッシュメモリ，  ７４  アプリエンジン，  ７５  メモリ，  ７５Ａ  ワークメモリ，  ７５Ｂ  退避メモリ
【図１】
0005765558.tif 000002
【図２】
0005765558.tif 000003
【図３】
0005765558.tif 000004
【図４】
0005765558.tif 000005
【図５】
0005765558.tif 000006
【図６】
0005765558.tif 000007
【図７】
0005765558.tif 000008
【図８】
0005765558.tif 000009
【図９】
0005765558.tif 000010
【図１０】
0005765558.tif 000011
【図１１】
0005765558.tif 000012
【図１２】
0005765558.tif 000013
【図１３】
0005765558.tif 000014
【図１４】
0005765558.tif 000015
【図１５】
0005765558.tif 000016
【図１６】
0005765558.tif 000017
【図１７】
0005765558.tif 000018
【図１８】
0005765558.tif 000019
【図１９】
0005765558.tif 000020
【図２０】
0005765558.tif 000021
【図２１】
0005765558.tif 000022
【図２２】
0005765558.tif 000023
【図２３】
0005765558.tif 000024
【図２４】
0005765558.tif 000025
【図２５】
0005765558.tif 000026
【図２６】
0005765558.tif 000027
【図２７】
0005765558.tif 000028
【図２８】
0005765558.tif 000029
【図２９】
0005765558.tif 000030
【図３０】
0005765558.tif 000031
【図３１】
0005765558.tif 000032