説明

受信機

【課題】受信機側の状況に応じて、受信機毎に個別に、受信機上で稼動するアプリケーションの制御を行うことのできる受信機を提供する。
【解決手段】通知設定部は、コンテンツデータの再生時に、コンテンツに関連する通知データを受信するか否かを設定する。通知受信部は、通知設定部による設定に基づき、通信により外部からアプリケーション情報テーブルを含む通知データを受信する。アプリケーション制御部は、通知受信部が受信した通知データに含まれるアプリケーション情報テーブルを参照し、制御コードに基づいてアプリケーションのライフサイクル制御を行う。アプリケーション実行部は、アプリケーション制御部によるライフサイクル制御に基づき、アプリケーションを実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、受信機に関する。
【背景技術】
【0002】
放送等のコンテンツの表現の幅を広げるなどのために、放送番組に連動して、受信機側でアプリケーションプログラムの起動状態を制御する技術が有効である。非特許文献1の「10.16 アプリケーション情報符号化方式」には、アプリケーション情報テーブル(AIT,Application Information Table)を用いることにより、放送局側から、アプリケーションに対して起動状態を変更する技術が記載されて居る。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】「デジタル放送におけるアプリケーション実行環境 技術標準 ARIB STD-B23 1.2版」、社団法人電波産業会、平成21年7月29日
【発明の概要】
【発明が解決しようとする課題】
【0004】
アプリケーションに対して起動状態を制御する上で、その制御のタイミングが重要である。しかしながら、上記の従来技術では、放送信号を用いてアプリケーション情報テーブルを伝送するため、すべての受信機を一律のタイミングで制御することしかできないという問題があった。
【0005】
本発明は、上記の課題認識に基づいて行なわれたものであり、受信機側の状況に応じて、受信機毎に個別に、受信機上で稼動するアプリケーションの制御を行うことのできる、受信機、通知サーバー、およびシステムを提供しようとするものである。特に、本発明は、受信機毎に個別のタイミングで、受信機上で稼動するアプリケーションの制御を行うことのできる、受信機、通知サーバー、およびシステムを提供しようとするものである。
【課題を解決するための手段】
【0006】
[1]上記の課題を解決するため、本発明の一態様による受信機は、コンテンツデータの再生時に、前記コンテンツに関連する通知データを受信するか否かを設定する通知設定部と、前記通知設定部による設定に基づき、通信により外部からアプリケーション情報テーブルを含む通知データを受信する通知受信部と、前記通知受信部が受信した前記通知データに含まれる前記アプリケーション情報テーブルを参照し、前記アプリケーション情報テーブル内の制御コードに基づいてアプリケーションのライフサイクル制御を行うアプリケーション制御部と、前記アプリケーション制御部によるライフサイクル制御に基づき、アプリケーションを実行するアプリケーション実行部とを具備することを特徴とする。
【0007】
この構成によれば、通知受信部は、通知データを通信により受信する。そして、アプリケーション制御部は、その通知データに含まれるアプリケーション情報テーブルの制御コードにより、アプリケーションのライフサイクルを制御する。つまり、受信機は、コンテンツデータの再生状況に応じてアプリケーションを起動したり終了させたりといった制御を行える。また、受信機は、通知データを、放送ではなく通信によって(インターネット等を経由して)受信するため、当該受信機に特有のタイミングで贈られる通知を受信することができる。
【0008】
[2]また、本発明の一態様は、上記の受信機において、前記アプリケーション制御部は、自動起動を示す制御コードに基づき指定されたアプリケーションを自動起動し、スタンバイを示す制御コードに基づき指定されたアプリケーションをスタンバイさせ、終了または強制終了を示す制御コードに基づき指定されたアプリケーションを終了させ、全アプリケーションの強制終了を示す制御コードに基づき実行中の全アプリケーションを終了させる制御を行う、ことを特徴とする。
【0009】
また、本発明の一態様は、上記の受信機において、前記通知設定部は、前記コンテンツデータの再生のタイミングに関連して通知データを受信するよう設定する、
【0010】
これにより、通知設定部は、コンテンツデータの再生のタイミングに関する情報(コンテンツ再生の開始時刻や、コンテンツ再生の開始位置(コンテンツ開始時を基準とする相対時刻))を含んだ登録要求を外部に送信するよう制御する。外部の通知サーバーは、このタイミングに基づいて受信機に対する通知データを送信する。つまり、受信機は、コンテンツデータの再生のタイミングに基づいてアプリケーションのライフサイクルの制御を行うことができる。
【発明の効果】
【0011】
本発明によれば、放送信号を用いてアプリケーション情報テーブルを伝送する場合のような一律のタイミングに限らず、受信機毎に個別のタイミングでアプリケーション情報テーブルによるシグナリングを行い、そのタイミングに基づいて受信機側でのアプリケーション制御を行うことができる。
また、本発明によれば、放送信号の帯域を用いずに、受信機への通知を行うことができる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態によるシステムの主要構成を示した概略図である。
【図2】本実施形態が適用される放送通信連携システムを利用する者とその関係を示す図である。
【図3】放送通信連携システムの全体構成を示す図である。
【図4】放送通信連携システムの端末連携モデルを示す図である。
【図5】放送通信連携システムのサービス種別の概念図を示す。
【図6】放送通信連携システムに使用するAITのテキスト表現の例を示す図である。
【図7】放送通信連携システムにおけるアプリケーションのライフサイクルを示す図である。
【図8】放送通信連携システムにおける事業者間のデータの流れを示す図である。
【図9】放送通信連携システム全体におけるデータの流れを示す図である。
【図10】放送通信連携システムにおけるレコメンドサービスのシーケンスを示す図である。
【図11】放送通信連携システムにおける転送プロトコルスタックを示す図である。
【図12】放送通信連携システムにおけるアプリケーション管理モデルを示す図である。
【図13】放送通信連携システムにおけるセキュアマネージャーの機能モデルを示す。
【図14】放送通信連携システムにおける画面提示制御方式の概念を示す図である。
【図15】放送通信連携システムにおける画面提示制御の基本動作モデルを示す図である。
【図16】放送通信連携システムにおけるポリシーレベルに応じた画面提示制御の例を示す。
【図17】放送通信連携システムにおける緊急地震速報受信時の提示制御の例を示す。
【図18】本発明の一実施形態による放送通信連携システムの全体構成図である。
【図19】同実施形態による受信機の内部構成を示す機能ブロック図である。
【図20】同実施形態によるアプリケーション実行制御部の詳細な構成を示すブロック図である。
【図21】同実施形態による提示制御部の詳細な構成を示すブロック図である。
【図22】同実施形態による通知サーバーの機能構成を示すブロック図である。
【図23】同実施形態による通知サーバーにおける通知管理テーブル記憶部が記憶するテーブルの構成を示す概略図である。
【図24】同実施形態による受信機管理テーブル記憶部が記憶するテーブルの構成を示す概略図である。
【図25】同実施形態による受信機の機能構成を示すブロック図である。
【図26】同実施形態による通知サーバーと受信機の処理、および両者間の相互作用の手順を示すラダーチャートである。
【発明を実施するための形態】
【0013】
次に、本発明の実施形態について説明する。
図1は、本実施形態によるシステムの主要構成を示す概略図である。図示するように、本システムは、放送送出装置11と、コンテンツ管理サーバー13と、通知サーバー801と、VOD(ビデオオンデマンド)サーバー802と、受信機4と、通信網9を含んで構成されている。受信機4は、各家庭あるいは各オフィスなどに設置されており、多数存在する。また、放送送出装置11やコンテンツ管理サーバー13や通知サーバー801やVODサーバー802はそれぞれ1台ずつ図示しているが、これらの装置がそれぞれ複数台設置されていても良い。
【0014】
受信機4は、電波として、あるいはケーブル経由で、放送送出装置11から送出される放送信号を受信する。また、通信網9を介して、IP(インターネットプロトコル)等を用いて、通知サーバー801やVODサーバー802等と相互に通信する。
通信網9は、受信機4や通知サーバー801やVODサーバー802などを相互に接続し、データを伝送する。通信網9は、例えばインターネットである。
放送送出装置11は、コンテンツ管理サーバー13から供給されるコンテンツデータを含む放送信号を送出する。
【0015】
コンテンツ管理サーバー13は、放送用のコンテンツデータを管理する。コンテンツデータには、放送番組の映像や音声のデータと、アプリケーション情報テーブル等の制御データの両方が含まれる。
通知サーバー801は、所定のスケジューリングにより、通信網9を経由して、受信機4に対してプッシュ型通知データを送信する。
VODサーバー802は、受信機4やその他の通信端末からの要求に応じて、通信網9を経由して、映像と音声を含んだコンテンツをストリームデータとして送出する機能を備えたコンピューターである。VODサーバー802は、所定の時間の番組として、コンテンツを送出する。
【0016】
なお、図1に示した各装置の機能詳細および処理手順については、図22以後を参照しながら後で説明する。
【0017】
[本実施形態を適用した放送通信連携システムの説明]
ここで、本実施形態が適用される放送通信連携システムについて説明する。本発明が適用される放送通信連携システム(放送通信融合システム、放送通信システム、送受信システム)は、例えば、Hybridcast(登録商標)(ハイブリッドキャスト)システムであり、放送通信連携サービス(Hybridcast(登録商標)サービス、放送通信融合サービス、放送通信サービス)を提供する。本発明が適用される放送通信連携システムが実現する放送通信連携サービスは、デジタル放送サービスと、インターネットなどによる通信サービスとを連携する。例えば、放送通信連携サービスでは、デジタルテレビやパーソナルコンピュータ、携帯端末などの受信機は、放送により伝送された放送番組(以下、「番組」とも記載する。)の表示画面(以下、番組の表示画面の「放送画面」とも記載する。)に、この受信機に実装されているアプリケーションが通信により取得したサービスやコンテンツの表示画面(以下、「アプリケーション画面」、「アプリケーションの表示画面」とも記載する。)を合わせて同時に表示する。
【0018】
[1. システムモデル]
[1.1 放送通信連携システムの利用者]
図2は、放送通信連携システムを利用する者とその関係を示す図である。
編成を伴う番組を送出する放送局は、放送電波あるいは通信網により番組を視聴者に配信する。放送局は、放送通信連携サービスを充実するために、番組に関連するメタデータをサービス事業者に提供する。
【0019】
放送通信連携サービスを提供するサービス事業者は、視聴者に放送通信連携サービスを提供するためのコンテンツとアプリケーション(以下、「アプリ」とも記載する。)を制作し、配信する。以下では、単に「アプリケーション」と記載した場合、放送通信連携サービスを提供するためのアプリケーション(放送通信連携サービスのアプリケーション)を指す。コンテンツまたはアプリケーションの制作者と配信者が同一のサービス事業者である必要はない。放送局がサービス事業者を兼ねてもよい。サービス事業者は、他のサービス事業者へのリンク情報を提供することも可能である。サービス事業者は、提供するアプリケーションが公式であることを示すために、システム管理者にアプリケーションの登録を申請し、承認を得ることができる。承認されたアプリケーションは、受信機上での動作に制限を受けない。一方、承認されないアプリケーションが表示させる画面は、番組の表示画面および音声にオーバーラップすることはできないが、アプリケーションの表示画面を縮小して放送番組の画面の外に表示することができる。承認されたアプリケーションをA(Authorized)アプリケーション、承認されないアプリケーションを一般アプリケーションという。なお、Aアプリケーションを、公式アプリケーション、登録アプリケーション、認証済アプリケーション、認定アプリケーション、公認アプリケーション、オーソライズドアプリケーション、A(Authorized)タイプアプリケーションとも呼ぶ。また、一般アプリケーションを、非公式アプリケーション、非認証アプリケーション、非認定アプリケーション、非公認アプリケーション、U(Unauthorized)タイプアプリケーション、Uアプリケーションとも呼ぶ。
【0020】
システム管理者は、視聴者に提供するアプリケーション(受信機アプリ)がAアプリケーション(公式)であることを認定する機関である。申請されたアプリケーションを承認するか否かのシステム管理者の判断は、放送局からの委託による。
【0021】
各種設定等を行なうためのアプリケーションを受信機にインストールさせておいてもよい。この際、受信機におけるアプリケーションの表示画面が番組の表示画面(映像)にオーバーラップしてもよい。
【0022】
放送局により放送された番組を視聴する視聴者は、放送通信連携サービスを享受する。
視聴者は、自身の意思により、アプリケーションをダウンロードしたり、起動したりすることができる。また、視聴者は、自身の意思により、アプリケーションの表示画面を番組の表示画面(映像)にオーバーラップさせることができる。
【0023】
[1.2 放送通信連携システムのシステム構成]
図3は、放送通信連携システムの全体構成を示す図である。放送通信連携システムは、電波を利用した現行の放送局設備に、機能的に「放送局サーバ群」、「サービス事業者サーバ群」、「受信機」を加えて構成される。
【0024】
放送局は、放送局設備を保有する。さらに放送局は、放送局サーバ群あるいはサービス事業者サーバ群の両方を構成し、管理運営する。また、サービス事業者は、サービス事業者サーバ群を構成し、管理運営する。システム管理者は、リポジトリサーバを管理運営する。受信機メーカは、受信機を製造販売する。視聴者は受信機を保有し、放送通信連携サービスを享受する。
【0025】
受信機(Hybridcast(登録商標)受信機、放送受信通信装置)は、標準化された共通のAPI(アプリケーションプログラムインタフェース:Application Program Interface)を搭載する。また、受信機は、地上デジタル放送、BS(broadcasting satellite)デジタル放送等の現行方式の放送を受信する。
放送局設備は、放送通信連携サービスを起動するための信号を放送波に多重化する。多重化の方式については後述する。
【0026】
[1.3 放送局サーバ群の構成例]
放送局サーバ群は、放送局が持っているコンテンツやメタデータを管理し、配信する。
例えば、放送局サーバ群は、各種サーバ、データ蓄積部(DB(データベース))及びAPIを含んで構成され、放送局サーバ群のサーバは、コンテンツ管理サーバ、視聴者管理サーバ、コンテンツ配信サーバ、放送局サービスサーバを含んで構成される。
【0027】
コンテンツを管理するコンテンツ管理サーバは、放送コンテンツである番組とメタデータを管理する。コンテンツ管理サーバには、放送された番組または放送される番組を管理する番組管理サーバや、番組に関連するメタデータを管理するメタデータ管理サーバが含まれる。メタデータは、例えば、番組タイトル、番組ID、番組概要、出演者、スタッフ、放送日時、台本、字幕、解説などを示す。
【0028】
視聴者管理サーバは、視聴者(ユーザ)を管理し、コンテンツ配信サーバは、通信によりコンテンツデータを配信する。放送局サービスサーバは、放送局がサービス事業者に対してサービスを提供するためのサーバである。放送局サービスサーバが提供するサービスには、例えば、放送局が運営するソーシャルネットワークサービスや、放送番組毎のウェブログ(ブログ)などがある。
【0029】
放送局サーバ群のデータ蓄積部は、放送局が持っているコンテンツ、メタデータを格納する部分とデータベースから構成される。蓄積されたデータには、管理しているサービス事業者のみがアクセス可能であり、他者からはアクセスできないように制限している。
【0030】
放送局サーバ群のAPIは、サービス事業者サーバ群からの要求に応じてデータを提供するためのAPIである。APIは、アプリケーションがサービスを受けるために呼び出すプログラムおよびその実行部である。
【0031】
[1.4 サービス事業者サーバ群の構成例]
サービス事業者が管理運営するサービスサーバ群は、アプリケーションとコンテンツを管理し、提供する。サービスサーバ群は、受信機アプリサーバ、サービスサーバ、コンテンツ配信サーバ、データ蓄積部(DB(データベース))及びAPIを含んで構成される。
【0032】
受信機アプリサーバは、放送通信連携サービスのアプリケーションを管理するサーバである。サービス事業者は、受信機で動作するアプリケーションを保存、管理、配信する。
サービス事業者は、団体または個人で構成される。受信機アプリサーバは、受信機からの要求により、アプリケーションファイル(アプリケーションファイルについては後述する。)の保存場所を受信機に知らせるとともに、アプリケーションファイルを配信する。
【0033】
サービスサーバは、受信機で動作しているアプリケーションからの要求によりサービスを提供するサーバである。サービスサーバには、例えば、多言語字幕サーバ、話速変換音声サーバ、ソーシャルTVサーバ、レコメンドサーバ、番組レビューサーバ、ブックマークサーバなどがある。
【0034】
コンテンツ配信サーバは、受信機で動作しているアプリケーションからの要求によりコンテンツを提供するサーバである。コンテンツ配信サーバには、例えば、VOD(VideoOn Demand)配信サーバ、字幕配信サーバ、マルチビュー配信サーバなどがある。
【0035】
サービス事業者サーバ群のデータ蓄積部は、コンテンツデータ、メタデータ、サービス事業者が作成したデータ、視聴者データ、アプリケーションファイルを保存する場所である。データ蓄積部に保存されたデータには、管理しているサービス事業者のみがアクセスでき、他者からはアクセスできない。
【0036】
サービスサーバ群のAPIは、受信機で動作しているアプリケーションからの要求により、アプリケーションファイル、コンテンツ、サービスを提供するためのAPIである。
【0037】
[1.5 受信機]
受信機は、現行方式の放送を受信し表示するとともに、放送通信連携サービスを実行する。現行方式の放送とは、地上デジタル放送、BSデジタル放送等の衛星放送、データ放送である。また、受信機は、インターネットに接続される。
【0038】
受信機は、受信する放送波に多重された情報をもとにして、サービス事業者サーバにアプリケーションのダウンロード要求を行う。受信機が、ダウンロードしたアプリケーションファイルに含まれるアプリケーションプログラムを実行することによって、受信機上でアプリケーションが動作する。受信機上で動作しているアプリケーションは、サービス事業者サーバにアクセスしてコンテンツを取得する。
また、受信機は、同期機能、アプリ制御機能など放送通信連携サービスを実行するために必要な機能である放送通信連携機能を持つ。放送通信連携機能に対するAPIは共通化されているため、アプリケーションの制作が容易であるとともに、アプリケーションは受信機に依存しない。
放送通信連携サービスでは、パーソナルコンピュータや携帯端末などのデバイスとの連携のための機能も取り入れている。
【0039】
放送通信連携機能には、放送通信連携基本機能と、必要に応じて実装するオプション機能とがある。受信機メーカは、放送通信連携基本機能を全ての受信機に実装する。アプリケーションは、APIを通して放送通信連携機能を利用する。放送通信連携機能は、後述するAPIに基づき動作する。
【0040】
受信機が実装するAPIは、受信機に依存することなく、アプリケーションの動作が同じになるようにするために規定される。全てのアプリケーションは、APIを通して受信機の処理を行なうため、APIを介さずにアプリケーションが受信機固有の機能にアクセスすることはできない。
【0041】
[1.6 端末連携モデル]
図4は、放送通信連携システムの端末連携モデルを示す図である。
受信機は、携帯端末などの端末と連携してサービスを提供することができる。連携する端末には、例えば、パーソナルコンピュータ、携帯電話、タブレット、スマートフォン、PDA(Personal Digital Assistant)などがある。受信機は、受信機機能として他の端末が利用可能な機能をAPIとして提供する。この他の端末が利用可能な機能を提供するAPIを端末連携APIという。例えば、携帯端末上で動作するアプリケーションは、端末連携APIを利用することで、番組情報の取得などの放送リソースにアクセスしたり、再生制御等の受信機機能を呼び出したりすることができる。
【0042】
[1.6.1 端末連携API]
端末連携APIは、他の端末やその端末上で動作するアプリケーションが受信機の機能を利用するためのAPIである。連携する端末は、ホームネットワーク(LAN)上の端末及びインターネットを通してアクセスする端末を対象とする。各種動作を提供するAPIの規定は後述する。
【0043】
[1.6.2 端末連携API提供プロセス]
受信機上で動作する端末連携API提供プロセスは、端末連携APIを動作させる。端末連携API提供プロセスは、常駐して動作する一種のデーモンプロセスのように動作する。
【0044】
[1.6.3 APIを呼び出すプロトコル]
端末連携APIを呼び出すプロトコルには、例えば、RESTful(REST:Representational State Transfer)、UPnP(Universal Plug and Play)、XMPP(eXtensible Messaging and Presence Protocol)などが用いられる。
【0045】
[1.6.4 プッシュ通知(Notification)機能]
受信機は、インターネット上のサーバ等が受信機に対してプッシュで情報を通知するNotification(通知)機能にも対応する。受信機はサーバ等からのプッシュにより通知された情報を受信する。Notification機能によって、なんらかの受信機動作を制御する場合があり、Notification機能も端末連携API仕様の一部として規定される。
【0046】
[2. 放送通信連携アプリケーション]
[2.1 サービスとアプリケーションモデル]
放送通信連携システムのアプリケーションモデルは、DVB−GEM1.2のアプリケーションモデルの考え方をベースに追加、変更したモデルである。
【0047】
[2.1.1 放送通信連携アプリケーション]
放送通信連携サービスのアプリケーションの動作は、AV(Audio Visual)コンテンツに連動した動作(連動)と、アプリケーション単独での動作(非連動)の2つのパターンに分類される。AVコンテンツとは、放送コンテンツ(番組)または通信コンテンツ(VoD等)である。
【0048】
連動の場合、起動などのアプリケーションのライフサイクル制御は、放送または通信コンテンツに連動して行われる。アプリケーションは、AVコンテンツと一緒に配信されるAIT(Application Information Table)(アプリケーション情報テーブル、アプリケーション起動情報)をもとに起動される。この場合、視聴者による起動や終了の操作に加え、放送事業者などのAVコンテンツの提供者がアプリケーションの自動起動や、終了などのライフサイクルを制御することも可能である。
一方、非連動の場合、放送や通信コンテンツに連動せずに、アプリケーション単独で起動、終了される。この場合、アプリケーションの開始や終了などのアプリケーションのライフサイクルは、視聴者によってのみ制御される。
【0049】
[2.1.2 サービス]
従来、サービスとは、放送事業者が編成し、スケジュールの一環として放送可能な番組の連続のことをいうが、放送通信連携システムにおいてはこの考え方を拡張し、ストリーム従属型サービスと独立型サービスの2つのサービス種別を定義する。
【0050】
図5は、サービス種別の概念図を示す。
受信機において、ストリーム従属型サービス及び独立型サービスを擬似的に選局することで、関連するアプリケーションが起動することになる。
ストリーム従属型サービスは、従来の意味でのサービスの考え方を拡張したものであり、放送や通信で伝送するAVストリームに、それに連動して動作するアプリケーション(複数可)を加えて構成される。AVストリームの選択・再生(放送の場合は選局)によって連動してアプリケーションを起動することができる。
一方、独立型サービスは、映像・音声のストリームは含まず、アプリケーション(複数可)のみで構成される。視聴者が独立型サービスを選択することで、アプリケーションが起動される。
【0051】
[2.1.3 オンザフライで取得するアプリ起動とインストールしたアプリの起動]
アプリケーションの起動には、オンザフライでアプリケーションファイルを取得して起動する方法と、予め受信機に蓄積(インストール)しておいたアプリケーションファイルを起動する方法の2つがある。オンザフライとは、アプリケーションの実行時に通信によってアプリケーションファイルを取得する方法であり、非インストール型、直接実行型ともいう。
【0052】
なお、受信機は、後述するAITによるアプリケーションの周知をもとに、ローカルのファイルシステムにあるアプリケーションファイルのアプリケーションプログラムを起動する。受信機は、通信によりアプリケーションファイルを取得してインストールする際、関連するAITに設定されているロケーション階層内の情報(2.5.1節参照)をローカルのファイルシステム上のロケーションに書き換え、必要に応じて独立型サービスを識別する値(独立型サービスのAIT単位で必要)を生成する動作などが必要となる。
【0053】
[2.2 アプリケーションの周知法(シグナリング)]
[2.2.1 アプリケーション起動情報(AIT)]
サービスに含まれるアプリケーションの周知は、サービス選択時に通知されるアプリケーション起動情報によって行う。アプリケーション起動情報としてARIB STD−B23(以下、ARIB−Jと記載)で定義されているAITを用いる。ストリーム従属型サービス、独立型サービスそれぞれで、そのサービス用のAITが周知される。各サービスにおけるAITの送り方の詳細を以下に示す。
【0054】
図6は、放送通信連携システムに使用するAITのテキスト表現の例を示す図である。
放送通信連携システムにおいて使用するAITは、ARIB−Jで規定されるAITをベースとする。AITには、SI(Service Information)のテーブルで伝送するためのバイナリ表現と、XML(extensible markup language)形式によるテキスト表現(AIT File)とが存在し、同図では、テキスト表現の例を示している。AITには、アプリケーションを特定するアプリケーションID(applicationIdentifier)、アプリケーション状態を制御する制御コード(controlCode)、アプリケーションファイルの格納位置(格納場所)を示すロケーション情報(location)などが記述される。
【0055】
[2.2.2 AVコンテンツに連動するアプリケーションの周知]
AVコンテンツに連動するアプリケーションの周知は、MPEG(Moving Picture Experts Group)−2 TS(トランスポートストリーム:Transport Stream)で伝送するAVコンテンツにAITを多重する場合と、別途AITの情報を送る場合がある。AVコンテンツと連動させてAITを伝送することにより、受信機において、放送番組に連動するアプリケーションの起動や、番組の進行に連動したダイナミックなアプリケーションの起動などのライフサイクル制御が可能となる。
周知方法には、例えば、(1)AIT用のES(エレメンタリーストリーム:Elementary Stream)追加、(2)EIT(イベント情報テーブル:EventInformationTable)への記述子追加、(3)カルーセルでの伝送、(4)通信でのAITファイルの取得、(5)通信でのダイナミックなAITファイルの伝送、などがある。
【0056】
(1)AIT用のES追加の場合、ARIB−Jにおける規定と同様にAITのESを放送TSに多重する。
【0057】
(2)EITへの記述子追加の場合、後述する提示制御と同様に、EIT(p/f)への記述子を追加し、AITで伝送される情報と同じ情報を伝送する。
【0058】
(3)カルーセルでの伝送の場合、DSM−CC(Digital Storage Media Command and Control)データカルーセルでAITを伝送する。例えば、特定のモジュールでAITファイルを伝送する。カルーセルで伝送することで、取得時間のオーバーヘッドが想定されるが、現行の放送信号を変更する必要がない。
カルーセルでの運用例として、放送通信連携起動ファイル伝送用カルーセルのコンポーネントタグ、モジュールを固定する。例えば、コンポーネントタグに「AA」を、モジュールIDに「0000」を設定し、モジュールのType記述子にAITであることを示すタイプを設定する。受信機は、モジュールの更新を監視し、更新を検出するとAITを読み直し、AITにより指定された制御(アプリケーションのライフサイクル制御)を実行する。
【0059】
(4)通信でのAITファイルの取得の場合、AVコンテンツの選択と同時に、別に用意されたAITファイルを取得する。例えば、再生するAVコンテンツの情報(コンテンツID)とアプリケーション起動情報(AIT)が記述された情報を起点に両者を取得する。サーバ型放送(ARIB TR−B27)の利用単位コンテンツやエントリーコンポーネントの考え方を利用することができる。
【0060】
(5)通信でのダイナミックなAITの伝送の場合、AVコンテンツを再生中に、新たなアプリケーションを起動したり、起動中のアプリケーションを終了させたりする制御を通信で伝送するAITにより行う。なお、予め想定されていないタイミングでの制御を行なう場合、通信を経由したプッシュによる通知を行なう。
【0061】
[2.2.3 独立して動作するアプリケーションの周知]
受信機は、独立して動作するアプリケーションの起動情報を含むAITを通信により取得する。独立アプリケーションは、既知のアプリケーションリポジトリから取得する。個々の独立アプリケーションの起動情報を取得するまでの手順を以下に示す。
【0062】
(1)受信機にアプリケーションリポジトリのロケーションをセットする。出荷時に予め設定してもよく、複数のリポジトリを後から何らかの方法で追加してもよい。
(2)アプリケーションメニューを開くと、受信機はアプリケーションリポジトリからアプリケーションのリスト(各アプリのAITのロケーション記述を含む)を取得し、メニューにアプリを表示する。
(3)視聴者が選択したアプリケーションのAITを通信から取得する。
【0063】
上記の手順は、リポジトリが提供するWEB(ウェブ) APIを利用して実行される。また、独立して動作するアプリケーションは、AVコンテンツと連動して動作するものではないため、予め指定したタイミングでの動的なライフサイクルコントロールは行わない。予め指定されていないタイミングでの制御(終了など)は、通信経由でのプッシュでの通知(Notification)により行なう。
【0064】
[2.3 アプリケーションの起動と終了]
[2.3.1 アプリケーションのライフサイクル]
[2.3.1.1 ライフサイクル]
図7は、アプリケーションのライフサイクルを示す図である。
アプリケーションの状態は、ARIB−Jにおけるアプリケーションの状態に準じ、「Not Loaded(ロード前)」、「Loaded(ロード後)」、「Paused(休止)」、「Started(開始)」、「Destroyed(破壊)」の5つの状態を持つ。これら5つの状態において、アプリケーションがロード、実行されて終了するまでの一連の過程をアプリケーションのライフサイクルと呼び、各状態間の遷移の制御をライフサイクルコントロールと呼ぶ。
【0065】
[2.3.1.2 AVコンテンツに連動するアプリケーションの基本的ライフサイクル制御]
AVコンテンツに連動するアプリケーションのライフサイクルの制御は、ストリーム従属型サービスの選択を通して行われることを基本とする。
ストリーム従属型サービスの選択は視聴者によって行われる。サービスは、AVコンテンツやアプリケーションを含む一連のコンテンツのセットであり、アプリケーションと一緒に送られるAITに含まれる制御コードよって起動や終了などのライフサイクルが制御される。一つのサービスに複数のアプリケーションが含まれ、それらが同時に動作する場合もある。
【0066】
アプリケーション起動のトリガとなるサービスの選択は、受信機APIを通してアプリケーションから制御する場合や、受信機のレジデントアプリケーションとしてのナビゲータから制御する場合、放送サービスの場合はリモコンボタンを制御する場合、などがある。サービス切り替え時に、切り替え前後のサービスに含まれるコンテンツ(AVコンテンツやアプリケーション)の提示が切り替えられる。切り替え前後のサービスに含まれるアプリケーションが異なる場合は、切り替え前に起動していたアプリケーションはサービス切り替えによって終了し、切り替え後には異なるアプリケーションが起動可能となる。これらの動作の詳細は、2.4節に後述する。
【0067】
[2.3.2 アプリケーションの起動]
[2.3.2.1 AITによる起動]
受信機においてサービス(ストリーム従属型サービス、独立型サービス)が選択されたとき、サービスと共に提供されるAITに含まれる制御コードで「auto-start」が指定されたアプリケーションは、視聴者からの明示的なアクションなしでサービス選択とともに自動的に起動する。サービス選択中は、そのサービスに対するアプリケーションシグナリングによってライフサイクルが制御される。例えば、放送サービスの場合は、放送と共に伝送されるAITを受信機が常に監視し、その変化に対応する。このように、AITの伝送などのアプリケーションシグナリングによって、受信機において新たなアプリケーションを途中で自動起動(auto-start)するよう制御できる。
【0068】
AITによるアプリケーション起動情報において「auto-start」が指定されていないアプリケーションは、自動的には起動されず、視聴者による明示的な起動が必要となる。この明示的な起動は、受信機のレジデントアプリケーションのアプリケーションローンチャーによって行われる。例えば、放送サービス選択時に、リモコンの放送通信連携サービスボタンを押すことで、受信機においてアプリケーション起動用のメニューが開き、現在の放送(通信)サービスに連動するアプリケーション一覧が表示される。ここで視聴者は、受信機に対して、起動したいアプリケーションを選択・起動する操作を行う。
【0069】
[2.3.2.2 放送通信連携アプリケーションからの起動]
サービス内で複数のアプリケーションを起動できるため、起動済のアプリケーションから同じサービスに含まれる他のアプリケーションを起動することもある。ARIB−Jアプリケーション実行環境では、アプリケーションIDを指定することにより他のアプリケーションを起動するAPIが規定されている。その他の実行環境の場合も、同様の機能をもったAPIを規定する。
【0070】
[2.3.2.3 BML(Broadcast Markup Language)からの起動]
受信機は、放送通信連携アプリケーション実行環境に加えて、現行のBMLデータ放送の実行環境を備えることから、BMLのAPIとして放送通信連携アプリケーションの起動を制御するAPIを追加する。なお、BMLは、ARIB STD B24に規定されるマルチメディア符号化方式であり、現行の日本の地上・BS・CSデジタル放送におけるデータ放送方式として採用されている。
【0071】
[2.3.2.4 独立して動作するアプリケーションの起動]
独立型サービスは、アプリケーションのみを含む仮想的なサービスであり、独立アプリケーションを選択することで、2.3.2.1節のAITによる起動と同じメカニズムによりAITを取得してアプリケーションが起動される。ただし、独立型サービスでは、少なくとも1つのauto-startアプリケーションが起動される。独立型サービスの選択は、例えば、アプリケーションローンチャーから行う。
【0072】
[2.3.3 アプリケーションの終了]
[2.3.3.1 AITによる終了]
起動されたアプリケーションは、そのサービスに対するアプリケーションシグナリングによってライフサイクルが制御される。例えば、放送の場合は、放送と共に伝送されるAITを受信機が常に監視し、起動中のアプリケーションに対して制御コードdestroyを指定することで、アプリケーションを終了する。通信で伝送するストリーム従属型サービスにAITが多重されている場合も、連動するアプリケーションの終了制御が可能である。
【0073】
[2.3.3.2 アプリケーション自身による終了]
アプリケーション自身が、終了用のAPIを用いて自ら終了する。
【0074】
[2.3.3.3 他のアプリケーションによる終了]
アプリケーションが実行するアプリケーション終了用のAPIを用いて、起動中の他のアプリケーションを終了させる。この場合、他のアプリケーションを終了させる適切なセキュリティポリシーが必要である。
【0075】
[2.3.3.4 別のサービスへの切替え時の終了]
受信機における別のサービスへの切り替え時、ストリーム従属型サービスに含まれるアプリケーションのうち、切り替え前のサービスに含まれるアプリケーションは終了し、新しいサービスでシグナリングされたアプリケーションが起動される。切り替え前後のサービスに同じアプリケーションが含まれる場合は、動作を継続することも可能とする。これは、AIT中のフラグで制御する。ストリーム従属型サービスに含まれるアプリケーションであるサービスバウンドアプリケーションの詳細は、4.2節に後述する。
【0076】
[2.3.3.5 受信機による終了]
受信機は、指定したアプリケーションを受信機機能により終了する。例えば、受信機が起動中のアプリケーション一覧を表示し、視聴者の選択によって指定のアプリケーションを終了させる。
【0077】
[2.3.3.6 動的なアプリケーション終了]
アプリケーションの終了を動的に制御するため、アプリケーションの終了を指示するAITのファイルを受信機に送信する。この場合、AITをプッシュ通知(Notification)する。
【0078】
[2.3.4 複数アプリケーションの起動]
[2.3.4.1 同一サービス内でシグナリングされたアプリケーション]
受信機は、同一のサービスにおいてAITにリストされたアプリケーションを同時実行させることができる。
【0079】
[2.3.4.2 AVコンテンツに連動するアプリケーションと独立して動作するアプリケーションの同時起動]
AVコンテンツに連動するアプリケーションは、ストリーム従属型サービス内でしか起動されない。一方、独立して動作するアプリケーションは、任意のタイミングでAVコンテンツに連動するアプリケーションや独立して動作する他のアプリケーションと同時に起動可能とする。
【0080】
[2.3.4.3 複数アプリケーション起動時のリソース管理]
複数のアプリケーションが起動する場合、それらが同じ受信機のリソース(例えばディスプレイ)を必要とする場合がある。受信機は、リソースマネージャなどの仕組みを備えて、適切にリソースを割り振ったり、リソースが使用出来ない場合はアプリケーションの実行をやめたりするなどの動作を行う。
【0081】
[2.4 アプリケーションのバウンダリ]
[2.4.1 バウンド/アンバウンドの基本的な扱い]
アプリケーションは編成サービスに紐付いた(対応付けられた)バウンドアプリケーションと紐付かない(対応付けられていない)アンバウンドアプリケーションの2種類がある。バウンドアプリケーションがどの編成サービスと紐付いているかは、当該アプリケーションの起動情報を含んでいるAITがどの編成サービスから得られたかで判定する。
【0082】
バウンドアプリケーションは、紐付いている編成サービスを受信しているときに実行可能な状態になる。つまり、当該編成サービスからAITによって起動され、当該編成サービスの受信が終了したとき(受信している編成チャンネルが変更されたとき)には実行が終了する。バウンドアプリケーションから起動された別のアプリケーションもバウンドアプリケーションとして扱う。関連する一連のバウンドアプリケーション群の大本である最初に起動されたアプリケーションが終了したときには、それによって起動された他のアプリケーションも終了する。
【0083】
アンバウンドアプリケーションは編成サービスに紐付いていないので、受信している編成サービスを変更してもアプリケーションの実行は継続される。編成サービスからはアプリケーションを起動するためのAITが得られないので、他の手段(例えば、アプリケーションと紐付いているAIT File(ファイル)を、アプリケーションローンチャー等を用いて入手するなど)によって起動情報が受信機に与えられ、起動される。アンバウンドアプリケーションから起動された別のアプリケーションもアンバウンドアプリケーションとして扱う。アプリケーションは、視聴者の操作によって明示的に終了することが基本であるが、受信している編成サービスから全てのアプリケーションを終了させる指示(KILLALL)がAITによって与えられた場合にも終了する。
【0084】
[2.4.2 アンバウンドアプリケーション固有の扱い]
アンバウンドアプリケーションは編成サービスと紐付かないが、2.3.2.4節で示すように、仮想的な編成サービス(受信機の起動時に受信機内に生成される)に紐付けることにより、バウンドアプリケーションと同じ起動処理メカニズムが適用できる。
【0085】
仮想的な編成サービスの生成方法は受信機の実装依存であり、その編成サービスにどのような識別値を与えるかは受信機実装によって異なる。しかし、アプリケーションファイルを受信機内に蓄積しておいて任意のタイミングでアプリケーションローンチャーから起動できるようにしておく場合、仮想的な編成サービスを識別するIDやアプリケーションファイルの取得先(サービス事業者サーバないしはリポジトリから取得したAITには当該サーバが取得先として記述されているので、受信機内の蓄積領域から取得するように変更する必要がある)などが受信機実装に合うようにAITの内容を受信機が更新する必要がある。
【0086】
[2.5 アプリケーションの取得方法]
[2.5.1 AITをもとにした取得]
上記の記述のとおり、全てのアプリケーションの起動情報はAITにより与えられる。
アプリケーションファイルの取得は、AITに含まれるアプリケーションのロケーション情報により指示される。例えば、図3の例ではロケーション情報は、「/ApplicationList/Application/applicationSpecificDescriptor/dvbjDescriptor/location」の階層に記述される(XMLとしてはlocation要素の内容として記述される)。ロケーション情報の記述は、例えば、「http://192.168.11.37/demo.jar」となる。
上記は、HTTP(Hypertext Transfer Protocol)プロトコルを用いて、demo.jar(Java(登録商標)のアプリケーションアーカイブ)を取得する例である。使用するトランスポートプロトコルや、アプリケーションのパッケージフォーマットについては、後述する。
【0087】
[2.5.2 アプリケーションのパッケージフォーマット]
アプリケーションのパッケージフォーマットは、アプリケーションフォーマット(Java(登録商標)やHTML5)などに依存する。受信機は、何らかのひとかたまりになったファイル、もしくはエントリーファイルを取得することによって、アプリケーション起動に必要な一連のファイル(プログラム本体や画像ファイルなど)を取得する。この一連のファイルがアプリケーションファイルである。例えば、アプリケーションファイルには、一連のファイルを圧縮したもの(zipファイル等)、Jarファイル(Java(登録商標)実行環境)、エントリーのHTMLファイル(HTML5実行環境の場合)、独自に規定したエントリーファイルなどのフォーマットが使用される。
【0088】
[2.5.3 アプリケーションの伝送方法]
アプリケーションファイルをネットワーク経由で取得する際の伝送方法には、HTTPプロトコルによる取得と、FILEプロトコルによる取得とがある。
HTTPプロトコルによる取得の場合、GETメソッドにより取得する。AITのロケーションの指定は、「http://〜」とする。
一方、FILEプロトコルによる取得の場合、受信機のローカルに保存された(インストールされた)アプリケーションファイル(アプリケーションプログラム)を指定するときには、AITのロケーションの指定を「file:///〜」とする。
【0089】
[3. インタフェース条件]
[3.1 放送波の放送通信連携サービス制御信号]
放送波には、2.2.2節で前述したアプリケーション起動情報を送出するメカニズムが必要である。さらに、緊急警報放送時などを想定して、全てのアプリケーションを強制終了させるために、ARIB STD−B23第二部 10.16.3.2節で規定するAITのアプリケーション制御コード(application_control_code)に「KILLALL」を追加する。表1は、追加する制御コード「KILLALL」の意味を示す。
【0090】
【表1】

【0091】
また、アプリケーションとAVコンテンツの関係からアプリケーションの提示制御を行うために、EIT、AITに記述子を追加する。詳細は4.3節に後述する。
【0092】
[3.2 放送局サーバ群API]
図8は、放送通信連携システムにおける事業者間のデータの流れを示す図であり、図9は、放送通信連携システム全体におけるデータの流れを示す図である。
ここでは、図8に示す、放送局サーバ群とサービス事業者サーバ群のサービス毎のサーバとの間、放送局サーバ群と放送通信連携基盤サーバとの間、及び、放送通信連携基盤サーバとサービス事業者サーバ群のサービス毎のサーバとの間のAPIの規定、図9に示す、受信機制御と放送通信連携基盤サーバとの間、メタデータとサービス毎のサーバとの間のAPIについて述べる。
【0093】
[3.2.1 API]
放送局サーバ群を構成する各サーバである放送局サーバと、サービス事業者サーバ群を構成する各サーバであるサービス事業者サーバとの間の通信はREST形式とする。また、放送局サーバとサービス事業者サーバとの間は、提供するサービスに応じてサーバのディレクトリー構成が異なることが予想されるため、APIは双方間で取り決める。放送局サーバ及びサービス事業者サーバのURLの例を以下に示す。
【0094】
http://hybridcast.org/{放送局名}/{サーバ名}/{コンテントID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/?{パラメータ}={値}/
【0095】
[3.2.2 レコメンドサービス]
図10は、レコメンドサービスのシーケンスを示す図である。サービス事業者サーバ群と、放送局サーバのインタフェース部との間で使用されるメソッドは、「GET」、「POST」、「PUT」、「DELETE」である。コマンドフォーマットの例を以下に示す。
【0096】
(1)http://hybridcast.or.jp/{放送局名}/(サーバ名)/{コンテントID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/
(2)http://hybridcast.or.jp/{放送局名}/(サーバ名)/{視聴者ID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/
(3)http://hybridcast.or.jp/{放送局名}/(サーバ名)/{レビューID}/{管理するデータ}/{ソート方法}/{先頭アイテム},{個数}/
【0097】
また、パラメータには、{放送局名}、{サーバ名}、{コンテントID}、{視聴者ID}、{レビューID}、{管理するデータ}、{ソート方法}、{先頭アイテム}、{個数}等々がある。
【0098】
[3.2.3 管理対象のデータ]
管理対象のデータには、コンテンツ情報、ユーザ情報、ユーザ・ジェネレイテッド・コンテンツ情報、デバイス情報、認証情報がある。
コンテンツ情報は、タイトル、概要、ジャンル、放送日時、放送時間(尺)、映像モード、音声モード、字幕データ、台本、出演者、音楽、制作者、製作会社、著作、推薦番組、動画URI、再生回数、CM、タイムスタンプ情報、等を示すデータを含む。ユーザ情報は、ユーザ(視聴者)の名前、年齢、性別、地域、レビュー書込み数、コメント書込み数、お気に入り、フレンドリスト、再生場所(時刻)、再生終了場所(時刻)、番組視聴履歴等を示すデータを含む。ユーザ・ジェネレイテッド・コンテンツ情報は、コンテンツID、ユーザID、レビュー内容、レビュー書込み時刻、レビュー評価、等を示すデータを含む。デバイス情報は、デバイスIDを含む。認証情報は、認証IDを含む。
【0099】
[3. トランスポートフォーマット]
[3.3.1 通信で扱う映像/音声について]
通信で扱う映像や音声は、デジタルテレビネットワーク機能仕様 ストリーミング機能仕様書 プロトコル編V1.1(デジタルテレビ情報化研究会)に準拠する。
【0100】
[3.3.1.1 映像・音声のモノメディアフォーマットとの関連]
MPEG−2 VideoあるいはH.264/MPEG−4 AVC(Advanced Video Coding)で符号化された映像と、MPEG−1 Audio Layer II、MPEG−2 Audio AACで符号化された音声、および字幕等の多重化には、TTS(Timestamped Transport Stream)形式を使用する。ただし、MPEG2−TS、MMT(MPEG Media Transport)、MP4等も使用可能である。
【0101】
[3.3.1.2 転送プロトコル関係]
図11は、転送プロトコルスタックを示す図である。
ストリーム伝送は、RTP(Real-Time Transport Protocol)/UDP(User Datagram protocol)およびHTTP/TCP(Transmission Control Protocol)を用いる。なお、RTP/UDPを用いる場合、オプションとして、誤り訂正の情報を伝送してもよい。また、HTTP/TCPを用いる場合、HTTPのコネクション、メソッド、ヘッダを利用してストリーム制御を行う。伝送がRTP(Real-time Transport Protocol)で行われる場合、ストリーム制御情報はRTSP(Real Time Streaming Protocol)を用いる。
【0102】
[3.3.2 字幕関連]
多言語字幕は、Timed Text Markup Language(W3C(World Wide Web Consortium))に準拠する。なお、同期については別途アプリケーションレベルで実施する。また、各対応フォントはサーバから必要に応じてダウンロードする。例えば、HTTPのペイロードにフォントファイルを載せる。この場合、WebのDynamic Fonts、PFR(PortableFont Resource)を利用する。
フォントの容量は約5−35MB(メガバイト)程度が望ましい。
【0103】
[3.4 モノメディアフォーマット]
放送通信連携サービスにおけるモノメディア符号化は下記に定義されたものを用いる。
【0104】
[3.4.1 動画]
動画には、ARIB STD−B32 2.4版第1部3.1節で規定されるMPEG−2 Video方式および同3.2節で規定されるMPEG4−AVC方式が用いられ、同5.1節で規定されるテレビジョンサービスの符号化パラメータの制約条件が適用される。
【0105】
[3.4.2 音声]
音声には、MPEG−2 Audioや、PCM(Pulse Code Modulation)(AIFF−C(Audio Interchange File Format Compression))を用いる。
MPEG−2 Audioの場合、ARIB STD−B32 2.4版第2部3.1節で規定されるMPEG−2 AAC方式が用いられ、同第5章で規定される符号化パラメータの制約条件が適用される。
PCMの場合、ARIB STD−B24 5.4版第一編第2部6.2節で規定される方式が用いられる。
付加音には、ARIB STD−B24 5.4版第一編第2部6.4節で規定される方式が用いられる。
【0106】
[3.4.3 静止画]
JPEG(Joint Photographic Experts Group)の場合、ARIB STD−B24
5.4版第一編第2部5.2節で規定される符号化方式が用いられる。
PNG(Portable Network Graphics:ポータブル・ネットワーク・グラフィックス)の場合、ISO/IEC 15948:2003にて規定される方式が用いられる。これは、W3C Recommendation Portable Network Graphics (PNG) Specification (Second Edition)と同内容である
【0107】
[3.4.4 文字]
文字符号化には、ARIB STD−B24 5.4版第一編第2部7.2節で規定される国際符号化文字集合が用いられる。
文字符号集合には、同7.2.1.1.3節で規定されるBMP(Basic Multilingual Plane)セットが用られ、表7−20が適用される。また、ISO/IEC10646:2003追補5および同追補6が適用される。
外字には、ARIB STD−B24 5.4版第一編第2部7.2.1.2節で規定される方式またはARIB STD−B23第一部5.2.1.2節で規定される方式などが適用される。
制御符号には、ARIB STD−B24 5.4版第一編第2部7.2.2.1節で規定されるC0制御符号のうち、APR(CR)、APD(LF)のみが用いられる。その他のC0制御符号およびC1制御符号は用いられない。
文字符号の変換は、ARIB STD−B24 5.4版第一編第2部付録規定Eに従う。
【0108】
上記に規定する文字符号化方式以外の方式で情報が符号化されている場合、送出ないしは受信機内の適切なプロセスにおいて上記の文字符号化方式に変換し、処理を行う。すなわち、他の符号化方式による文字符号をアプリケーションからは直接扱わない。
【0109】
[3.5 アプリケーションフォーマット]
受信機上で実行可能なアプリケーションの記述方法を示す。この記述方法により作成されたアプリケーションを実行するための実行環境と、セキュアマネージャとの結合については4章に示す。
【0110】
[3.5.1 受信機で実行可能なアプリケーションフォーマット]
受信機で実行可能なアプリケーションの記述方式として、BML(ARIB STD−B24)、ARIB−J(ARIB STD−B23)、HTML5(W3C HTML5
Working draft − 2011/Jan/13)を規定する。
【0111】
[3.5.2 BML]
受信機は、地上デジタル放送運用規定(ARIB TR−B14)またはBSデジタル放送運用規定(ARIB TR−B15)に準ずるBML文書を提示する機能を有する。
受信機は、地上デジタル放送またはBSデジタル放送で提供されるデータ放送サービスを既存の規格どおりに提示できなくてはならない。ただし、受信機は、放送でデータカルーセル方式によって配信されるBMLコンテンツの提示のみを必須とし、通信でHTTPプロトコルによって提供されるBMLコンテンツ(TR−B14 第三編第2部5.14節、TR−B15 第一部第三編8.14節)の提示は必須としない。
【0112】
また、データ放送コンテンツ(BML)を起点として、以下に規定される通信アプリケーションの起動を行うための放送用拡張APIとして、browser.startHybridcastApp()、getAITInfo()を規定する。
【0113】
表2は、browser.startHybridcastApp()の規定を示す。browser.startHybridcastApp()は、放送通信連携アプリケーションを起動するAPIである。
【0114】
【表2】

【0115】
表3は、getAITInfo()の規定を示す。getAITInfo()は、受信中のサービスに含まれる最新のAIT情報を取得するAPIである。
【0116】
【表3】

【0117】
[3.5.3 HTML5]
[3.5.3.1 記述方式]
受信機は、通信から提供されるプレゼンテーションエンジン型アプリケーションの記述方式としてHTML5をサポートする。JavaScript APIとして、下記のものをサポートする。なお、下記のAPIのうち、W3Cで検討が行われているものにはWorking Draft(WD)またはEditor’s Draft(ED)が含まれる。ただし、放送波で伝送されるデータカルーセルに関連するAPIは必須としない。
【0118】
(1)System Information API(W3C Working Draft 02 Feb. 2010)(2)WebSocket API(W3C Editor’s Draft 28 Feb. 2011)(3)File API(W3C Working Draft 26 Oct. 2010)(4)Permission for File API, System Information API(Permissions for Device API Access, W3C Working Draft 05 Oct. 2010)(5)Device Description Repository Simple API(W3C Recommendation 05 Dec. 2008)(6)API for Media Resource 1.0(W3C Working Draft 08 June 2010)(7)Web Storage(W3C Working Draft 08 Feb. 2011)(8)Server-Sent Events(W3C Editor’s Draft 28 Feb. 2011)(9)Indexed Database API(W3C Working Draft 19 Aug. 2010)(10)SIアクセスAPI
(11)選局API
(12)印刷
(13)予約
【0119】
[3.5.3.2 ブラウザ]
受信機のHTML5ブラウザは、JavaScript処理系、Web Workers(W3C Working Draft 08 Feb. 2011)、Widget Interface(W3C Working Draft 3 Feb. 2011)、HTML Canvas2D Context(W3C Editor’s Draft 28 Feb. 2011)の機能を実装する。Web Workersは、マルチタスクをサポートするため、Widget Interfaceは、独立アプリケーションをサポートするため、HTML Canvas 2D Contextは、2次元ベクトルグラフィックスをサポートするために必要である。
【0120】
[3.5.4 ARIB−J]
受信機は、通信から提供されるアプリケーション実行エンジン型アプリケーションの記述方式としてARIB−Jをサポートする。また、複数ストリーム間の同期APIとしてDVB Bluebook A153(GEM Media Synchronization API)を用いる。
【0121】
[3.6 受信機API]
以下に、HTML5およびARIB−Jで使用可能な受信機APIについて説明する。
【0122】
[3.6.1 名前空間]
名前空間とは、サーバ上や受信機内に存在する、映像音声コンテンツ、アプリケーション、モノメディアファイルなど、放送通信連携システムで扱う様々なリソースの位置を特定するための文字列の記述規則である。3.5.2節以降で使用する各種リソースを参照するための名前空間の記法は分類毎に規定する。リソースには、インターネットサーバー上のリソース、アプリケーションキャッシュ上のリソース、放送のリソースがある。インターネットサーバー上のリソースには、VODコンテンツなどのストリームリソースや、アプリケーション、アプリケーションから参照されるその他のリソースなどのファイルリソースがある。放送のリソースには、放送中の番組、過去・未来の番組などのストリームリソースや、モジュール、イベントメッセージなどのカルーセルリソースがある。
【0123】
[3.6.2 放送通信連携インタフェース]
放送通信連携インタフェースには、以下のインタフェースがある。
【0124】
(1)getRunningApplications():実行中のアプリケーションの情報を取得する。getRunningApplicationsの戻り値は、apps[]と、アプリケーション毎のapplication_id及びrunning_levelとを含む。apps[]には、実行中アプリケーションのリストが設定される。application_idには、アプリケーションIDが設定され、アプリケーションが一般アプリケーション(非公式アプリケーション)の場合はnullである。running_levelには、実行レベル(認証結果および視聴者設定の状態)が設定される。
なお、セキュリティ上の観点から、他アプリケーションに関して取得できる情報は制限すべきである。
【0125】
(2)queryApplicationInfo():指定したアプリケーションの情報を取得する。
(3)getProgramInfo():受信中の放送の情報を取得する。戻り値は、tuner_state、network_id、ts_id、orig_ts_id、service_id、event_id、content_idである。tuner_stateには、受信状態を表す値が設定される。
(4)getEPGInfo():受信中の放送のEIT(+SDT)中の各種情報を取得する。
(5)saveApplicationToCache():サーバ上のアプリケーションファイルをキャッシュに保存する。
【0126】
(6)queryApplicationInCache():キャッシュ中のアプリケーションファイル(アプリケーションプログラム)を検索する。queryApplicationInCache()の引数は、application_id、getDSMCCModule()、addBroadcastSignalListener()、getListFromHybridcastMenu()である。application_idには、認証機関から発行されたアプリケーションIDが設定される。getDSMCCModule()は、放送波から指定のモジュールを取得する。addBroadcastSignalListener()は、SI、緊急情報、カルーセルおよびイベントメッセージの更新を監視するリスナを登録する。getListFromHybridcastMenu()は、トップメニューアプリケーションのリストを取得する。queryApplicationInCache()の戻り値は、user_apps[]、broadcaster_apps[]、vendor_apps[]である。
【0127】
(7)addApplicationToHybridcastMenu():トップメニューにアプリケーションを追加する。
(8)getKeyFromBroadcast():放送から限定サーバーアクセスのための鍵情報を取得する。
(9)querySupportedFunction():アプリケーションブラウザの機能を問い合わせる。これは、機能/APIが利用可能かチェックすることを目的として使用される。
【0128】
[3.6.3 BroadacastSignalListenerインタフェース]
BroadacastSignalListenerインタフェースは、放送から取得するSI、緊急情報、カルーセル、イベントメッセージを監視するためのリスナーインタフェースである。バウンドアプリケーション実行中に、紐付いている編成サービスが変更された場合にもこのインタフェースのイベントが発生する。
【0129】
[3.6.4 LocalDatabaseインタフェース]
LocalDatabaseインタフェースは、視聴者情報を受信機内で保持・管理するためのインタフェースである。視聴者情報は、個人情報などサーバ側に出すべきでない情報であり、視聴者ID、受信機IDなど最低限の情報である。
【0130】
[3.6.5 同期関連API]
SynchronizationManagerインタフェースとして、DVB Bluebook A153(GEM Stream Synchronization API)と同様のAPIを導入する。さらに、以下のインタフェースをAPIとして追加する。
【0131】
(1)getCurrentSTC():現在のSTC(System Time Clock)値を取得する。なお、MPEG 2 Systems規格では、送信側のシステムクロック(STC)をMPEG2トランスポートストリーム中のPCR(Program Clock Reference)信号として多重し配信することで、受信機内部のシステムクロック(STC)が送信側のSTCと同期されるように規定している。
(2)getCurrentPositionInProgram():番組開始からの経過時間を取得する。
(3)delayStreamPresentation():提示中の放送ストリームの遅延提示を開始する。
(4)getCurrentDelay():提示中の放送ストリームの(本来の提示時刻からの)遅延時間量を取得する。
【0132】
[3.6.6 SecurityExceptionインタフェース]
アプリケーションが、現在の実行レベルにおいて禁止されている関数呼び出しおよびプロパティ操作をした場合に発生する例外のインタフェースである。ecurityExceptionインタフェースは、上記各APIの呼び出し、あるいは、放送を参照するオブジェクト(HTML5なら<video>、ARIB−Jなら○○Controller)に対する各種操作によって発生する。
【0133】
[3.7 受信機機能]
放送通信連携システムの受信機は、受信機機能として、アプリケーションローンチャーを備える。アプリケーションローンチャーは、受信機内に蓄積されたアプリケーションの起動、既知のリポジトリから独立アプリケーションの選択、AITによって起動指示が記述されたアプリケーションのうち、コントロールコードが「PRESENT」のアプリケーションの選択に用いる。
【0134】
[4. セキュリティ]
[4.1 放送通信連携アプリケーションの管理]
放送事業者の要件を満たしつつ放送通信連携サービスを普及・活性化させるために、放送事業者およびその関係者だけではなく、幅広いサービス事業者や個人が参入できる枠組みが必要となる。本放送通信連携システムでは、セキュリティの観点からアプリケーションを「Aアプリケーション」と「一般アプリケーション」に分類し、受信機において双方のアプリケーションを実行可能とする。
【0135】
図12は、放送通信連携システムにおけるアプリケーション管理モデルを示す。「Aアプリケーション」は、登録管理者(第三者機関)への事前登録を行うことにより放送通信連携システムの仕様で期待する動作が保証される。「Aアプリケーション」は、登録時にIDと署名が付与され、受信機において2.2節で定義するセキュアマネージャーにより署名が検証され、すべてのAPIへのアクセスが可能となり、放送リソースを利用した番組連動サービスが行えるようになる。また、放送事業者から送出されるAITにより、放送事業者の要件に沿ったきめ細かい提示制御が可能となる。
一方、「一般アプリケーション」は、事前の登録は不要であるが、放送通信連携システムの仕様で期待する動作は保証されず、アプリケーションから放送関連のAPIを扱うことはできない。「一般アプリケーション」はIDと署名が付与されないため、個々のアプリケーションの指定は困難であるが、放送事業者の要件に基づいた提示制限を加えた上で実行させることは可能である。
【0136】
[4.2 セキュアマネージャーの機能モデル]
図13は、セキュアマネージャーの機能モデルを示す。セキュアマネージャーは、受信機においてセキュリティを総合的に管理する機能である。
【0137】
[4.2.1 アプリケーション監視・制御機能]
受信機において動作するアプリケーションは、アプリケーションファイルの配布の形態により、上述したように、「Aアプリケーション」と「一般アプリケーション」の2種類に大別される。「Aアプリケーション」と「一般アプリケーション」は、4.1節に示すようにIDと署名の有無によって区別され、受信機におけるAPIのアクセス範囲や放送事業者からの制御範囲が異なるなど、アプリケーション実行時の動作内容が異なる。アプリケーション監視・制御機能は、Aアプリケーションまたは一般アプリケーションの種別の違いを識別し、確実にアプリケーション実行時の動作を制御することを目的とする。
【0138】
(1)アプリケーション認証:受信機は、実行するすべてのアプリケーションについて、Aアプリケーションまたは一般アプリケーションのいずれか、さらにAアプリケーションであればIDを識別する。Aアプリケーションまたは一般アプリケーションの区別は、アプリケーションファイル(アプリケーションプログラム)に付与された署名の有無を確認しこれを検証することによって行う。Aアプリケーションであれば、受信機はさらに、署名に記述されたアプリケーションIDを取得する。アプリケーションの識別は、アプリケーションの取得時、または、起動時に行うものとする。
(2)画面提示制御:4.3節に後述する。
(3)リソースアクセス制御:受信機は、実行中のアプリケーションの放送リソース等のAPIへのアクセス制御を行う。アプリケーションがAPIにアクセスしようとする時に、当該アプリケーションが一般アプリケーションであれば、APIの種別によってアクセスを制限する。
また、アプリケーションがディスプレイへの画面表示APIにアクセスする際には、Aアプリケーションまたは一般アプリケーションの種別と、選局中の放送事業者の提示ポリシーに基づき、画面提示制御を実行する。詳細は4.3節に後述する。
(4)リボケーション:アプリケーションのリボケーション機能を備える。
【0139】
[4.2.2 受信機保護]
受信機は、視聴者情報保護およびウィルス対策等の保護機能を備える。
【0140】
[4.3 アプリケーションの画面提示制御]
[4.3.1 画面提示制御の概要]
放送通信連携サービスでは、放送番組と同時に関連する通信アプリケーションを提示させることにより、放送サービスの利便性を拡張することができる。一方、通信サービスの利用により、受信機の画面上で放送番組と通信アプリケーションが混在して提示されることが想定される。提示方法によっては、放送番組に通信アプリケーションの画面が重なり、放送番組の一意性や作品性が損なわれるだけでなく、緊急地震速報などの緊急性の高い情報が正確に視聴者に伝えられなくなる恐れがある。画面提示制御により、放送通信連携サービスにおいて、放送事業者の意図に基づいたアプリケーションの提示制御を行う。
【0141】
図14は、画面提示制御方式の概念を示す図である。画面提示制御方式は、個々の放送番組に対して通信アプリケーションをどのように画面上に提示させるかという放送事業者の提示ポリシーを受信機に反映させることを意図したもので、これをコンテンツの提示制御と呼ぶこととする。コンテンツの提示制御では、編成に応じた番組単位の提示制御、緊急地震速報などの番組中に発生するイベントに対する提示制御、アプリケーション単位の提示制御を実現する。
【0142】
[4.3.2 画面提示制御の基本動作]
図15は、画面提示制御の基本動作モデルを示す図である。放送事業者の提示ポリシーを受信機に反映させるために、予め放送事業者が想定した、放送番組に対する通信コンテンツの提示方法を、提示ルールとして受信機で管理する。具体的には、通信コンテンツの提示方法として、重ね合わせの順序や並べ方の違いなどに応じてレベル分けを行い、提示レベル(ポリシーレベル)と提示方法のテーブルを提示ルールとして受信機内に保持する。放送事業者は指定する提示レベルを放送波に多重して伝送し、受信機はその提示レベルと提示ルールを照合し、提示方法を決定する。これにより、放送事業者の提示ポリシーに基づいた提示制御を実現することができる。
【0143】
[4.3.3 制御情報の伝送・多重方式]
放送事業者の提示ポリシーを伝送する制御情報のフォーマットに関して、デジタル放送で使用されている番組配列情報を用いる方式として3つの具体例を挙げる。番組単位での画面提示制御として、既存のEIT(イベント情報テーブル:Event Information Table)を用いる方式と、EITを拡張して用いる方式(EIT+)がある。また、サービス(チャンネル)単位での画面提示制御として、放送信号のAITを拡張して用いる方式がある。さらに、番組中にリアルタイムに発生する事象単位での画面提示制御として、番組配列情報以外の放送局から送出される情報を用いる方式がある。以下に、4つの方式の詳細を記載する。
【0144】
(1)EITの番組ジャンル(EIT):既存のEITのコンテント記述子に記述される番組ジャンルからポリシーレベルを判断する。受信機はそのために、番組ジャンルとポリシーレベルの対応表を管理する。ARIB規格との関連は、ARIB STD−B10
第2部 6.2.4、付録Hである。
【0145】
表4は、番組ジャンルとポリシーレベルの関係の具体例を示す表である。番組ジャンル(program_genre)は、大分類を表す「content_nibble_level1」(0x0〜0xF)と、中分類を表す「content_nibble_level2」(0x0〜0xF)の2段階で構成される。受信機で管理するテーブルは中分類のジャンルまで対象とし、それぞれポリシーレベルの値を定義する。
【0146】
【表4】

【0147】
(2)EITに新記述子追加(EIT+):EITのイベント情報セクションに新しい記述子を追加し、ポリシー情報を記述する。受信機は、この記述子を解釈し所望の処理を実行することで、番組単位でのポリシーレベルに応じた制御を実現する。ARIB規格との関連は、ARIB TR−B14(第二分冊) 第3部 31.3、ARIB STD−B10 第2編 5.2.7である。
【0148】
表5は、イベントセキュリティ記述子の構造を示す表である。EIT+の場合、同図に示すイベントセキュリティ記述子を新規に定義し、EIT内の記述子領域にこのイベントセキュリティ記述子を格納して伝送する。イベントセキュリティ記述子には、ポリシーレベル(policy_level)、アプリケーションID(application_identifier)、制御コード(application_control_code)、優先度(application_priority)、プロトコル識別(protocol_id)、番組関連フラグ(associated_application_flag)を設定する。
【0149】
【表5】

【0150】
policy_levelは、番組単位でのポリシーレベルを表す。ポリシーレベルは、1〜4の値とする。
application_identifier()は、アプリケーションを識別するための識別子である。表6は、application_identifier()の構造を示す。
【0151】
【表6】

【0152】
organization_idは、アプリケーションを作成した組織を表し、0x00000063以降の値をとる。application_idは、アプリケーションを識別する番号を表す。application_idは、組織識別内で一意に付与される。
【0153】
application_control_codeは、アプリケーション状態を制御する制御コードを規定する。表7は、制御コードの規定を示す。
【0154】
【表7】

【0155】
application_priorityは、アプリケーション毎のポリシーレベルを示す。アプリケーション毎のポリシーレベルは、サービス内で告知されているアプリケーション間の相対的な優先度を示す。優先度は、1〜4の値とする。
【0156】
protocol_idは、アプリケーションファイルを伝送するプロトコルを示す。表8は、protocol_idの規定を示す。
【0157】
【表8】

【0158】
associated_application_flagは、番組に連動するアプリケーションであるか否かを示す。表9は、protocol_idの規定を示す。
【0159】
【表9】

【0160】
(3)AITのテーブル定義および新記述子の追加(AIT+):AITを拡張してポリシー情報を伝送する。受信機は、このテーブルを解釈し所望の処理を実行することで、随時発生するイベントに対してポリシーレベルに応じた制御を実現する。ARIB規格との関連は、ARIB STD−B23 第2部 10.16である。
【0161】
表10に、AITのデータ構造を示す。表10に示すAITは、ARIB STD−B23で規定されているAITのデータ構造を拡張したものである。AITには、ポリシーレベル、アプリケーションID、制御コードを記述する。なお、AITはセクション形式で送信され、イベント継続中は常時送信されるものとする。アプリケーションIDは、application_identifier()に記述し、制御コードはapplication_control_codeに記述する。
なお、これらの詳細は、(2)EITの拡張で記載したものと同様である。
さらに、ポリシーレベルを記述するために、新たにセキュリティポリシー記述子を定義し、AITの共通記述子ループに格納して伝送する。
【0162】
【表10】

【0163】
表11は、新たに定義するセキュリティポリシー記述子の構造を示す。
【0164】
【表11】

【0165】
(4)緊急警報放送および緊急地震速報(EWS/EEW):放送局から送出される緊急情報を用いてポリシーレベルを判断する。受信機においては予め緊急情報とポリシーレベルとの対応はなされているものとし、緊急警報放送であれば、TMCCの緊急警報放送用起動フラグを、緊急地震速報では文字スーパー管理パケットを監視することで、緊急情報の発生と終了が検知され、その際のポリシーレベルを判断することが可能になる。ARIB規格との関連は、ARIB STD−B31 3.15およびARIB STD−B24 第一編 第3部 第9章である。
【0166】
なお、上記の(1)〜(4)のそれぞれの方式は並行して同時に送出することが可能である。したがって、どの方式で送られたものを優先させてポリシーレベルを決定するかを決めておく必要がある。優先順位は以下の通りである。
【0167】
EWS/EEW> AIT+ > EIT+ > EIT
【0168】
受信機はこの優先順位に基づき、ポリシーレベルを判断することで、放送事業者の意図に基づいた、緊急時の事象を優先させた画面提示制御が可能となる。
【0169】
[4.3.4 画面提示制御の例]
図16は、ポリシーレベルに応じた画面提示制御の例を示す。
番組のポリシーレベルが「1」の場合、Aアプリケーションのアプリケーション画面のアプリケーション画面および一般アプリケーションのアプリケーション画面の双方とも、放送画面上への重ね合わせが許可される。
番組のポリシーレベルが「2」の場合、Aアプリケーションのみが放送画面上への重ね合わせが許可され、一般アプリケーションのアプリケーション画面については、放送画面上への重ね合わせは禁止され、放送画面の外側への表示のみが許可される。
番組のポリシーレベルが「3」の場合、Aアプリケーションのアプリケーション画面、及び、一般アプリケーションのアプリケーション画面とも表示が許可されるが、全てのアプリケーション画面について、放送画面上への重ね合わせは禁止され、放送画面の外側への表示のみが許可される。
ポリシーレベルが「4」の場合、放送画面の全画面表示のみが許可される。
【0170】
図17は、緊急地震速報受信時の提示制御の例を示す。番組Aの番組ポリシーレベルが「1」である場合、番組Aの放送時間帯においては、Aアプリケーションのアプリケーション画面、一般アプリケーションのアプリケーション画面とも放送画面上に重ね合わせて表示される。しかし、受信機は、番組Aの放送時間帯の中でも緊急地震速報が発生している時間帯におけるポリシーレベルは、緊急地震速報のポリシーレベル「4」であると判断する。そのため、受信機は、番組Aの放送時間帯であっても、緊急地震速報が発生している時間帯では、Aアプリケーションのアプリケーション画面、及び、一般アプリケーションのアプリケーション画面とも、放送画面上への重ね合わせを禁止する。
【0171】
[上述した放送通信連携システムを適用した本発明の実施形態の説明]
次に、図1に示す本発明の一実施形態を説明する。
図18は、本発明の一実施形態による放送通信連携システムの全体構成図である。同図に示すように、本実施形態の放送通信連携システムは、放送局が保有する放送事業者装置1、サービス事業者が保有するサービス事業者サーバ群2、システム管理者が保有するリポジトリサーバ3、及び、視聴者が保有する受信機4を備えて構成される。同図においては、受信機4を1台のみ示しているが、現実には複数台の受信機4が設けられる。
【0172】
放送事業者装置1は、放送送出装置11及び放送局サーバ群12を備える。
放送送出装置11は、図3に示す放送局設備に相当し、番組編成設備、番組送出設備、送信設備等から構成されるデジタル放送用の放送設備である。
【0173】
放送送出装置11は、放送関連データ管理部111、信号設定部112及び放送送出部113を備えて構成される。
放送関連データ管理部111は、各番組の番組セキュリティポリシーデータ、Aアプリケーションのアプリケーションセキュリティーポリシーデータ、その他のポリシーデータなどを管理する。
番組セキュリティポリシーデータは、番組のポリシーレベルを示すポリシーレベルデータ、番組にバウンドされたアプリケーションのアプリケーションID、番組にバウンドされたアプリケーションに対する制御コードなどを含む。
アプリケーションセキュリティポリシーデータは、アプリケーションがバウンドされている番組を特定する情報や、アプリケーションのプロトコル識別、ロケーション情報などを含む。ロケーション情報は、アプリケーションの格納位置(格納場所)を示し、例えば、アプリケーションをダウンロード可能な受信機アプリサーバ21やリポジトリサーバ3のURLである。プロトコル識別は、アプリケーションが放送により伝送されたか、通信により伝送されたかを示す。
なお、Aアプリケーションのみが番組にバウンドされる。
【0174】
ポリシーデータは、提示ルールデータとポリシーレベルテーブルを含む。
提示ルールデータは、ポリシーレベル毎の提示方法を記述したデータである。提示方法は、画面表示方法と音声出力方法を含む。画面表示方法には、例えば、放送画面(番組の映像)のみ表示する、Aアプリケーション及び一般アプリケーションともアプリケーション画面(アプリケーションの映像)を放送画面に重ねてあるいは放送画面の外に表示する、Aアプリケーションのアプリケーション画面のみ放送画面に重ねて表示し、一般アプリケーションのアプリケーション画面は放送画面の外に表示する、などの方法がある。音声出力方法には、例えば、放送番組の音声のみを出力する、放送番組の音声とAアプリケーションまたは一般アプリケーションの音声を独立にあるいは混合して出力する、などの方法がある。
ポリシーレベルテーブルは、番組のジャンルに対応したポリシーレベルや、各イベントのポリシーレベルを記述したデータである。イベントとは、例えば、緊急警報信号や緊急地震速報など、番組とは必ずしも連動して発生しない放送の内容である。
【0175】
信号設定部112は、放送送出部113が伝送する放送信号に各種データを設定する。
信号設定部112は、放送関連データ管理部111が管理している番組セキュリティポリシーデータやアプリケーションセキュリティーポリシーデータに基づいて、放送信号にAIT、番組のポリシーレベルデータを設定する。信号設定部112は、番組にバウンドされたアプリケーションのAITを独立したESとして放送信号(放送TS)に多重するか、データカルーセルに設定する。あるいは、信号設定部112は、番組にバウンドされたアプリケーションのAITと同等の情報をEITに設定する。また、信号設定部112は、番組のポリシーレベルデータをEIT(表5)、または、AIT(表11)に設定する。なお、番組のジャンルに対応するポリシーレベルを用いる場合には、ポリシーレベルデータを放送信号に設定しなくともよい。また、信号設定部112は、アプリケーションファイルをデータカルーセル等に設定する。また、信号設定部112は、放送関連データ管理部111が管理しているポリシーデータをセクション形式により放送信号に設定するか、エンジニアリングサービスあるいはデータカルーセルに設定する。
放送送出部113は、デジタル放送の放送信号を伝送する。放送信号は、信号設定部112により設定された情報を含む。
【0176】
放送局サーバ群12は、図3に示す放送局サーバ群に相当し、コンテンツ管理サーバ13、コンテンツ配信サーバ16、放送局サービスサーバ17及び通知サーバ18を備えて構成される。
コンテンツ管理サーバ13は、番組管理サーバ14及びメタデータ管理サーバ15を備えて構成される。番組管理サーバ14は、すでに放送された番組や放送される番組を管理する。メタデータ管理サーバ15は、各番組に関するメタデータを管理する。メタデータは、例えば、番組タイトル、番組ID、番組概要、出演者、放送日時、台本、字幕、解説のデータを含む。
【0177】
コンテンツ配信サーバ16は、インターネットなどの通信網9を介して受信機4と接続され、受信機4から要求されたコンテンツのコンテンツデータを配信する。
放送局サービスサーバ17は、サービス事業者サーバ群2に放送局のサービスのコンテンツデータを送信する。放送局のサービスには、例えば、ソーシャルネットサービス、ブログサービス等がある。
【0178】
通知サーバ18は、通信網9を介して受信機4と接続され、放送送出装置11の放送関連データ管理部111から取得した番組セキュリティポリシーデータとアプリケーションセキュリティーポリシーデータとに基づいて、番組にバウンドされたアプリケーションのAIT(図6)及び番組のポリシーレベルデータを受信機4に配信する。また、通知サーバ18は、放送送出装置11の放送関連データ管理部111から取得したポリシーデータを受信機4に配信する。なお、これらの情報の全てまたは一部は、通知サーバ18からの配信を行なわず、放送送出装置11の放送送出部113が放送信号のみで伝送する場合もある。
【0179】
サービス事業者サーバ群2は、図3に示すサービス事業者サーバ群に相当し、受信機アプリサーバ21、サービスサーバ22、コンテンツ配信サーバ23及び通知サーバ24を備えて構成される。受信機アプリサーバ21、サービスサーバ22、コンテンツ配信サーバ23及び通知サーバ24は、通信網9を介して受信機4と接続される。
【0180】
受信機アプリサーバ21は、各アプリケーションを管理し、受信機4へアプリケーションファイルを配信する。
サービスサーバ22は、例えば、多言語字幕サーバ、話速変換音声サーバ、ソーシャルTVサーバ、レコメンドサーバ、ブックマークサーバなどであり、受信機4から要求されたサービスのコンテンツデータを配信する。
コンテンツ配信サーバ23は、例えば、VOD配信サーバ、字幕配信サーバ、マルチビュー配信サーバであり、受信機4から要求されたコンテンツのコンテンツデータを配信する。
通知サーバ24は、アプリケーションのAIT(図6)を受信機4に送信する。なお、Aアプリケーションの場合、通知サーバ24は、放送送出装置11の放送関連データ管理部111から取得した番組セキュリティポリシーデータやアプリケーションセキュリティーポリシーデータに基づいたAIT(図6)を送信してもよい。
【0181】
リポジトリサーバ3は、図3に示すリポジトリに相当し、通信網9を介して受信機4と接続される。リポジトリサーバ3は、サービス事業者が生成したアプリケーションファイル(アプリケーションプログラム)に電子署名を行なうとともに、アプリケーションファイル(アプリケーションプログラム)の電子署名の認証に必要なデータを受信機4に送信する。また、リポジトリサーバ3は、Aアプリケーションの一覧を示すデータや、そのAアプリケーションのロケーション情報を受信機4に送信する。なお、リポジトリサーバ3が電子署名されたAアプリケーションのアプリケーションファイルを受信機4へ送信してもよく、受信機アプリサーバ21がリポジトリサーバ3から電子署名されたAアプリケーションのアプリケーションファイルを受信し、受信機4へ送信してもよい。また、リポジトリサーバ3は、AアプリケーションのAITを受信機4に送信してもよい。
また、リポジトリサーバ3は、放送送出装置11の放送関連データ管理部111から受信した番組セキュリティポリシーデータやアプリケーションセキュリティーポリシーデータに基づいて、番組にバウンドされたAアプリケーションのAIT(図6)を受信機4に送信してもよい。
【0182】
受信機4は、図3に示す受信機に相当し、例えば、テレビ受像機、セットトップボックス、パーソナルコンピュータ、携帯端末等のデバイスである。
【0183】
図19は、受信機4の内部構成を示す機能ブロック図である。同図に示すように、受信機4は、放送受信部401、分離部402、時計403、第1同期用バッファ404−1、第2同期用バッファ404−2、第1デコーダ405−1、第2デコーダ405−2、データ放送実行部406、映像制御部407、映像表示部408、音声制御部409、音声出力部410、通信入出力部411、アプリケーション実行制御部412、提示制御部413、操作入力部414、選局部415、ローカル情報記憶部416及び外部I/F部417を備えて構成される。
【0184】
放送受信部401は、放送信号を受信するチューナである。放送信号は、無線放送信号及び有線放送信号またはいずれか一方である。無線放送信号は、放送局側の送信アンテナが送信した放送電波(地上波)や、衛星が中継する衛星波を、受信アンテナで受信することにより得られる信号である。有線放送信号は、光ケーブルや同軸ケーブル等を介して放送局側から伝送される信号である。放送受信部401は、放送信号を受信して復調し、放送ストリーム(TS)を出力する。
分離部402は、デマルチプレクサであり、放送受信部401から供給された放送ストリームを、PCR(Program Clock Reference)、映像データ、音声データ、字幕データ、データ放送、PSI(Program Specific Information)/SI(Service Information)、独立エレメンタリストリーム(ES)で送信されたAITなどの各種データに分離する。なお、AITはデータ放送に含まれる場合や、AITと同様の内容がSIを構成するEITに設定される場合もある。また、分離部402は、放送信号からアプリケーションファイルを分離して出力する場合もある。
【0185】
通信入出力部411は、通信網9を介した通信によるデータの入出力を行う。通信入出力部411は、通信網9を経由して送信されたAITやアプリケーションファイルをアプリケーション実行制御部412に出力する。また、通信入出力部411は、通信網9を経由して送信された番組のポリシーレベルデータやポリシーデータを提示制御部413へ出力する。また、通信入出力部411は、アプリケーション実行制御部412により実行されるアプリケーションの指示に従って、コンテンツ配信サーバ16やコンテンツ配信サーバ23から配信されるコンテンツデータ、サービスサーバ22から配信されるコンテンツデータを通信網9を経由して受信し、第2同期用バッファ404−2に出力する。
【0186】
操作入力部414は、視聴者による操作を受け付けるインタフェースであり、例えば、リモートコントローラ、携帯電話、タブレット端末等から視聴者が入力した情報を受信する受信装置や、キーボード、マウスなどである。操作入力部414は、視聴者が入力したメディア(地上/BS)やチャンネルの選択指示を選局部415に出力する。また、操作入力部414は、放送通信連携サービスの開始や終了の指示、アプリケーションに対する指示をアプリケーション実行制御部412に出力する。
選局部415は、操作入力部414に入力された操作に従って、放送受信部401において受信するメディアやチャンネルを制御する。
【0187】
データ放送実行部406は、デジタル放送信号により送信されたデータ放送アプリケーションを実行し、データ放送の画像(グラフィック)データを映像制御部407へ出力する。データ放送実行部406は、放送通信連携サービスのアプリケーションを起動するためのAPIを備える。データ放送実行部406がデータ放送アプリケーションを実行して、放送通信連携サービスのアプリケーションを起動するAPIが呼び出された場合、データ放送実行部406は、アプリケーションの起動をアプリケーション実行制御部412に指示する。また、データ放送実行部406は、データカルーセルによって送信されたAITやアプリケーションファイルをデータ放送から取得してアプリケーション実行制御部412に出力する。また、データ放送実行部406は、データカルーセルによって送信されたポリシーデータをデータ放送から取得して提示制御部413に出力する。
【0188】
アプリケーション実行制御部412は、放送通信連携サービスのアプリケーションを実行する。アプリケーション実行制御部412は、実行しているアプリケーションに従って、コンテンツ配信サーバ16、コンテンツ配信サーバ23、あるいは、サービスサーバ22から受信したコンテンツデータをデコードするように第2デコーダ405−2に指示する。コンテンツデータは、映像データ、音声データの一方または両方を含む。映像データは、例えば、動画、静止画、テキストデータなどである。また、アプリケーション実行制御部412は、実行しているアプリケーションに従って、映像制御部407にグラフィック(映像)データや映像制御指示を出力し、音声制御部409に音声データや音声制御指示を出力する。
【0189】
時計403は、タイマーカウンタ値を出力する。時計403は、PCRが示すタイマーカウンタ値により発振器の周波数を調整し、放送送信側と時刻を同期させる。
第1同期用バッファ404−1は、分離部402から出力される映像データ、音声データ、字幕データを記憶する。映像データ、音声データ、字幕データのエレメンタリーストリーム(ES)から生成されたPES(Packetized Elementary Stream)は、放送ストリーム(TS)を構成するトランスポートパケット(Transport Packet)に分割されて設定される。PESのヘッダには、PTS(提示時刻情報:Presentation Time Stamp)が含まれる。第1同期用バッファ404−1は、分離部402から出力された映像データ、音声データ、字幕データを、第1デコーダ405−1の指示によりPESパケット単位で出力する。
第2同期用バッファ404−2は、通信入出力部411が受信したコンテンツやサービスのコンテンツデータを記憶する。あるいは、第2同期用バッファ404−2は、操作入力部414により入力された視聴者の指示に従って、分離部402から出力される映像データ、音声データ、字幕データを記憶する。第2同期用バッファ404−2は、記憶しているコンテンツデータあるいは番組の映像データ、音声データ、字幕データを第2デコーダ405−2の指示によりPESパケット単位で出力する。
【0190】
第1デコーダ405−1は、時計403から出力された時刻に対応したPTSが設定されている第1同期用バッファ404−1内のPESパケットを特定し、特定したPESパケットからエンコードされた映像データ、音声データ、字幕データを読み出し、読み出したデータをデコードして出力する。
第2デコーダ405−2は、時計403から出力された時刻に対応するPTSが設定されている第2同期用バッファ404−2内のコンテンツデータあるいは番組のPESパケットを特定し、特定したPESパケットからエンコードされた映像データ、音声データ、字幕データを読み出し、読み出したデータをデコードして出力する。
【0191】
提示制御部413は、選局されている番組のポリシーレベルあるいは発生中のイベントのポリシーレベルと、提示ルールデータとに従って提示方法(画面表示方法及び音声出力方法)を決定する。提示制御部413は、決定した画面表示方法により、放送画面、Aアプリケーションのアプリケーション画面、及び、一般アプリケーションのアプリケーション画面を表示するよう映像制御部407に指示する。さらに、提示制御部413は、決定した音声出力方法により、放送の音声データによる音声、Aアプリケーションの音声データによる音声、及び、一般アプリケーションの音声データによる音声を出力するよう音声制御部409に指示する。
【0192】
映像制御部407は、第1デコーダ405−1から出力された番組の映像データ及び字幕データに基づく放送画面と、第2デコーダ405−2から出力されたコンテンツデータの映像データに基づくAアプリケーション、一般アプリケーションのアプリケーション画面とを、提示制御部413またはアプリケーション実行制御部412から指示された画面表示方法に従って映像表示部408に表示させる。また、アプリケーション実行制御部412からアプリケーションの実行によりグラフィック(映像)データが出力される場合、映像制御部407は、提示制御部413またはアプリケーション実行制御部412から指示された画面表示方法に従って、その映像データに基づく表示画面を併せて映像表示部408に表示させる。なお、第2デコーダ405−2からは、他の番組の映像データ及び字幕データが出力される場合もある。
【0193】
映像表示部408は、一般的なディスプレイであり、放送およびアプリケーションの画面を表示する。例えば、映像表示部408は、番組の放送画面に、通信網9から受信したコンテンツデータの動画、静止画、テキストや、アプリケーションの実行によってアプリケーション実行制御部412から出力されたグラフィックなどのアプリケーション画面、または、他の番組の放送画面を合成した映像を表示する。
【0194】
音声制御部409は、第1デコーダ405−1から出力された番組の音声データに基づく音声と、第2デコーダ405−2から出力されたコンテンツデータの音声データに基づくAアプリケーションや一般アプリケーションの音声と、アプリケーションの実行によってアプリケーション実行制御部412から出力された音声データに基づく音声とを、提示制御部413またはアプリケーション実行制御部412より指示された音声出力方法に従って音声出力部410から出力させる。なお、第2デコーダ405−2からは、他の番組の音声データが出力される場合もある。音声出力部410は、一般的なスピーカーあり、放送およびアプリケーションの音声を出力する。
【0195】
ローカル情報記憶部416は、ユーザ情報などの各種データを記憶する。
外部インタフェース部(以下、「外部I/F部」と記載する。)417は、LAN(Local Area Network)などのホームネットワークなどに接続される機器8との間でデータを送受信する。機器8は、受信機4と連携動作する端末であり、例えば、パーソナルコンピュータ、携帯電話、タブレット、スマートフォン、PDAである。
【0196】
なお、受信機4がセットトップボックスなどの場合、映像表示部408及び音声出力部410は、受信機4と接続される外部装置とする。
【0197】
図20は、アプリケーション実行制御部412の詳細な構成を示すブロック図である。
同図に示すように、アプリケーション実行制御部412は、アプリケーション記憶部431、アプリケーション認証部432、アプリケーション管理部433、アプリケーション制御部434、アプリケーション実行部435、リソースアクセス制御部438及びリソース制御部439を備える。
【0198】
アプリケーション記憶部431は、通信入出力部411が通信網9を介して受信したアプリケーションファイル、あるいは、データ放送実行部406がデータ放送から取得したアプリケーションファイル、または、分離部402が放送信号から分離したアプリケーションファイルを記憶する。アプリケーションファイルは出荷時などに予めアプリケーション記憶部431に記憶されていてもよい。アプリケーション記憶部431は、主記憶装置及びディスク等の補助記憶装置からなり、例えば、アプリケーションファイルはディスクに記憶され、実行時に主記憶装置に読み出される。この場合、オンザフライで実行されるアプリケーションのアプリケーションファイルは、ディスクには記憶されずに主記憶装置のみに記憶され、実行が終了した場合は主記憶装置から削除される。
【0199】
アプリケーション認証部432は、リポジトリサーバ3から電子署名の認証に必要なデータを受信し、受信したデータを用いてアプリケーションファイル(アプリケーションプログラム)に付加された電子署名の検証を行う。例えば、アプリケーション認証部432は、リポジトリサーバ3から受信した公開鍵を用いて、電子署名されたアプリケーションファイルを復号する。その結果、所定のデータ列が得られた場合、アプリケーション認証部432は、電子署名の検証が成功したと判断する。アプリケーション認証部432は、電子署名の検証が成功した場合、Aアプリケーションであると判断し、電子署名の検証が不成功である場合、あるいは、電子署名が付加されていない場合、一般アプリケーションであると判断する。
【0200】
アプリケーション管理部433は、アプリケーション実行部435によるアプリケーションの起動または停止の状態、起動しているアプリケーションの出力状況を管理する。出力状況とは、動作中のアプリケーションから画像や音声が出力されているか否かの情報である。アプリケーション管理部433は、提示制御部413からの問い合わせを受け、起動されているアプリケーションの出力状況や、起動されているアプリケーションがAアプリケーションであるか一般アプリケーションであるかの応答を返送する。
【0201】
アプリケーション制御部434は、番組にバウンドされているアプリケーションに対する制御コードや、操作入力部414により入力されたアプリケーションに対する指示に従って、アプリケーション実行部435におけるアプリケーションの起動や停止などを制御する。また、アプリケーション制御部434は、データ放送実行部406から起動が指示されたアプリケーションの起動をアプリケーション実行部435に指示する。アプリケーション制御部434は、操作入力部414からの入力に従ってチャンネルが変更される場合、変更前のチャンネルの番組にバウンドされているアプリケーションの終了と、変更後のチャンネルの番組にバウンドされているアプリケーションの起動をアプリケーション実行部435に指示する。なお、アプリケーション制御部434は、番組にバウンドされているアプリケーションや、バウンドされているアプリケーションに対する制御コードを、放送信号の独立ESもしくはデータ放送に含まれるAIT、放送信号のEITから得られるAITと同等の情報、または、通信入出力部411を介して通知サーバ18もしくは通知サーバ24から受信したAITから取得する。また、アプリケーション制御部434は、AITに設定されているロケーション情報を宛先としてアプリケーションファイルのダウンロード要求を送信する。受信機4からダウンロード要求を受信したリポジトリサーバ3、または、受信機アプリサーバ21は、アプリケーションファイルを受信機4に配信する。
【0202】
アプリケーション実行部435は、受信機API部436及び端末連携API部437を備える。アプリケーション実行部435は、アプリケーション制御部434からの指示に従って、起動が指示されたアプリケーションのアプリケーションプログラムをアプリケーション記憶部431から読み出して実行する。アプリケーション実行部435がアプリケーションプログラムを実行することにより、受信機4上でアプリケーションが動作し、アプリケーション実行部435は通信網9を経由してコンテンツをコンテンツ配信サーバ16やコンテンツ配信サーバ23に要求したり、サービスをサービスサーバ22に要求したりする。また、アプリケーションプログラムを実行することにより、アプリケーション実行部435は、映像制御部407へグラフィックデータや映像制御指示を出力したり、音声制御部409に音声データや音声制御指示を出力したりする。
【0203】
受信機API部436は、アプリケーション実行部435がアプリケーションを実行するにあたって受信機4内の各リソースを利用するためのAPIである受信機APIを実行する。受信機API部436が受信機APIを実行することにより、アプリケーション実行部435が実行しているアプリケーションプログラムから受信機4内のリソースが利用可能となる。
端末連携API部437は、外部I/F部417により通信可能なホームネットワーク上の機器8や、通信網9を介して接続される機器が受信機4の機能を利用するためのAPIである端末連携APIを実行する。端末連携API部437が端末連携APIを実行することにより、ホームネットワークを介して接続される機器8や通信網9を介して接続される機器から受信機4内のリソースが利用可能となる。
【0204】
リソース制御部439は、受信機API部436や端末連携API部437から受信機4内のリソースである各機能部へのアクセスを制御する。
リソースアクセス制御部438は、受信機API部436や端末連携API部437から受信機4内の各機能部へのアクセスを許可するか否かを制御する。リソースアクセス制御部438は、この制御を、受信機API部436や端末連携API部437が実行する各APIの呼び出し元であるアプリケーションがAアプリケーションであるか一般アプリケーションであるかに従って行なう。
【0205】
図21は、提示制御部413の詳細な構成を示すブロック図である。同図に示すように、提示制御部413は、ポリシーデータ管理部451、ポリシーデータ記憶部452、イベント解釈部453、ポリシーレベル照合部454、イベント制御部455、番組ポリシー記憶部456、ポリシー調停部457及びポリシーレベル記憶部458を備える。
【0206】
ポリシーデータ記憶部452は、提示ルールデータ及びポリシーレベルテーブルを含むポリシーデータを記憶する。ポリシーデータ管理部451は、ポリシーデータ記憶部452に記憶されるポリシーデータを管理する。ポリシーデータ管理部451は、ポリシーデータ記憶部452から読み出したポリシーレベルテーブルをポリシーレベル照合部454に出力し、ポリシーデータ記憶部452から読み出した提示ルールデータをポリシー調停部457に出力する。また、ポリシーデータ管理部451は、放送により送信されたポリシーデータを分離部402あるいはデータ放送実行部406から受信し、通信により送信されたポリシーデータを通信入出力部411から受信する。ポリシーデータ管理部451は、ポリシーデータ記憶部452に記憶されているポリシーデータを、放送または通信により送信されたポリシーデータにより更新する。
【0207】
イベント解釈部453は、放送受信部401が受信した放送信号や、分離部402が分離したデータ放送や字幕データを解析し、イベントの発生または終了を検出する。イベント解釈部453は、イベントの発生または終了を検出(解釈)すると、その検出したイベントのイベント番号と、発生または終了を示すステータスデータとをポリシーレベル照合部454に出力する。
【0208】
ポリシーレベル照合部454は、ポリシーレベルテーブルを参照して、EITにより示される各番組のジャンルに対応したポリシーレベルと、イベント番号により特定されるイベントに対応したポリシーレベルを決定(照合)する。ポリシーレベル照合部454は、分離部402から入力されたSIより取得した番組の放送開始時刻及び放送終了時刻のデータと、当該番組のポリシーレベル(以下、「番組ポリシーレベル」と記載する。)をイベント制御部455に出力する。なお、番組ポリシーレベルがEITに設定されている場合、ポリシーレベル照合部454は、番組の放送開始時刻及び放送終了時刻のデータと、EITから取得した当該番組の番組ポリシーレベルをイベント制御部455に出力する。
また、ポリシーレベル照合部454は、AITから番組ポリシーレベルを取得した場合、取得した番組ポリシーレベルをポリシー調停部457に出力する。また、ポリシーレベル照合部454は、イベント番号に対応して決定したポリシーレベル(以下、「トリガーポリシーレベル」と記載する。)をポリシー調停部457に出力する。
【0209】
番組ポリシー記憶部456は、番組開始時刻及び番組終了時刻と、番組ポリシーレベルを対応付けて記憶する。イベント制御部455は、ポリシーレベル照合部454から入力された番組開始時刻及び番組終了時刻のデータと、番組ポリシーレベルとを対応付けて番組ポリシー記憶部456に書き込み、番組ポリシー記憶部456に記憶されているこれらの情報を基に、表示制御を実行する時刻を管理する。イベント制御部455は、番組ポリシー記憶部456に記憶されている番組開始時刻のデータを参照し、実行時刻を通知すべき時刻となったことを検出した場合、実行時刻と、その実行時刻に対応した番組ポリシーレベルをポリシー調停部457に出力する。
【0210】
ポリシーレベル記憶部458は、ポリシー調停部457に入力された実行時刻及び番組ポリシーレベルと、トリガーポリシーレベル及びステータスデータを記憶する。ポリシー調停部457は、イベント制御部455から入力された実行時刻及び番組ポリシーレベルと、ポリシーレベル照合部454から入力されたトリガーポリシーレベルとからポリシーレベルを決定する。例えば、トリガーポリシーレベルをポリシーレベルとして決定してもよく、番組ポリシーレベルとトリガーポリシーレベルのうちより高いほうをポリシーレベルとして決定してもよい。
【0211】
なお、ポリシーレベル照合部454からAITにより取得した番組ポリシーレベルが入力された場合、ポリシー調停部457は、イベント制御部455から入力された番組ポリシーレベルよりも、ポリシーレベル照合部454から入力された番組ポリシーレベルを優先する。つまり、ポリシー調停部457は、AITより得られた番組ポリシーレベルと、トリガーポリシーレベルとからポリシーレベルを決定する。ポリシー調停部457は、提示ルールデータを参照し、決定したポリシーレベルと、アプリケーション管理部433から取得した動作中のアプリケーションがAアプリケーションであるか否かの情報や出力状況から、画面表示方法及び音声出力方法(提示方法)を決定する。ポリシー調停部457は、決定した画面表示方法を映像制御部407に出力し、決定した音声出力方法を音声制御部409に出力する。
【0212】
図22は、通知サーバーの機能構成を示すブロック図である。図示するように、通知サーバー801は、通知送信部901と、スケジューリング部902と、通知管理テーブル記憶部903と、受信機管理テーブル記憶部904と、登録要求受信部905と、解除要求受信部906とを含んで構成される。
【0213】
通知送信部901は、スケジューリング部902によるスケジューリングに基づき、受信機4に対するプッシュ型通知を送信する。このとき、通知送信部901は、例えば、XMPP(Extensible Messaging and Presence Protocol)を用いる。
スケジューリング部902は、通知管理テーブル記憶部903と受信機管理テーブル記憶部904とを参照することにより、受信機4に対する通知データの送信をスケジュールする。
【0214】
通知管理テーブル記憶部903は、コンテンツIDごとに、通知データを送信するタイミング(相対時刻)を管理する通知管理テーブルを記憶する。
受信機管理テーブル記憶部904は、通知データを待ち受けている受信機と、その受信機に関するコンテンツID等の情報を管理する受信機管理テーブルを記憶する。
登録要求受信部905は、通知データに関する登録要求を受信機4から受信する。
解除要求受信部906は、通知データに関する解除要求を受信機4から受信する。
【0215】
図23は、通知管理テーブル記憶部903が記憶するテーブルの構成を示す概略図である。図示するように、通知管理テーブルは、表形式のテーブルであり、コンテンツIDと、通知位置と、通知内容の各項目を有する。このテーブルの各行が、コンテンツにおける通知送信のタイミングと、その通知内容を表す。コンテンツIDは、放送信号によって放送送出装置11から送出されるコンテンツ、または通信網9経由でVODサーバー802から受信機4に対して配信されるコンテンツ、をユニークに識別するデータである。通知位置は、当該コンテンツにおいて通知サーバー801側から受信機4に対して通知を送信すべきタイミングを示すデータである。通知位置は、当該コンテンツの開始位置からの相対時刻で表され、例えば「HH:MM:SS.hh」(時分秒および百分の一秒単位の値)の形式を有する。通知内容は、上記タイミングで送信される通知の内容を表す。通知内容の欄には、例えば、アプリケーション情報テーブルそのものを格納する。あるいは代わりに、アプリケーション情報テーブルに含まれる一部のデータのみ(例えば、アプリケーションID(appID)と、アプリケーションロケーション(location)と、アプリケーション制御コード(controlCode))を格納するようにしてもよい。
【0216】
図24は、受信機管理テーブル記憶部904が記憶するテーブルの構成を示す概略図である。図示するように、受信機管理テーブルは、表形式のテーブルであり、受信機IDと、アドレスと、コンテンツIDと、視聴開始時刻と、視聴開始位置(相対時刻)の各項目を有する。受信機IDは、特定の受信機4を識別するために付与されたデータである。受信機IDとしては、例えば、受信機の製造シリアル番号や、CAS(コンディショナル・アクセス・システムズ)番号などを用いる。アドレスは、当該受信機のIPアドレスである。コンテンツIDは、コンテンツを識別するデータであり、通知管理テーブルにおけるコンテンツIDと同種のデータである。視聴開始時刻は、当該受信機が当該コンテンツの視聴(再生)を開始した時刻であり、例えば「YYYY/MM/DD HH:MM:SS.hh」(年月日、時分秒および百分の一秒単位の値)の形式で表される。視聴開始位置は、当該コンテンツの視聴(再生)を開始したポイントを表すデータであり、具体的にはコンテンツの開始位置からの相対時刻(「HH:MM:SS.hh」の形式)である。つまり、受信機管理テーブルに記憶されている各行のデータは、受信機からの登録要求に対応しており、その受信機におけるコンテンツの再生状況を表している。
【0217】
図25は、受信機の機能構成を示すブロック図である。図示するように、受信機4は、放送受信部401と、分離部402と、通信入出力部411と、アプリケーション実行制御部412とを含んで構成される。
放送受信部401は、外部から放送信号を受信する。なお、放送信号は、電波で、あるいはケーブル経由の電気信号として、到来する。
分離部402は、放送受信部401が受信した放送信号から、コンテンツや関連する各種データを分離して抽出する。分離部402が抽出するデータの中には、放送信号に含めて伝送される通知データ(アプリケーション情報テーブルなど)も含まれる。
通信入出力部411は、通信網9を経由して通知サーバー801やVODサーバー802などとの間で通信し、通信データの入出力を行う。
【0218】
アプリケーション実行制御部412は、受信機4内においてアプリケーションプログラムを実行する環境である。アプリケーション実行制御部412は、アプリケーション制御部434と、アプリケーション実行部435と、通知設定部931と、登録要求送信部932と、解除要求送信部933と、サービス制御部941とを含んで構成される。
また、アプリケーション制御部434は通知受信部921を含む。また、アプリケーション実行部435は、受信機API部436を含む。
【0219】
アプリケーション制御部434は、アプリケーションの実行を制御する。特に、アプリケーション制御部434は、アプリケーションのライフサイクル(起動、終了、強制終了等)を制御する。具体的には、アプリケーション制御部434は、通知受信部921が受信した通知データに含まれる前記アプリケーション情報テーブルを参照し、このアプリケーション情報テーブル内の制御コードに基づいてアプリケーションのライフサイクル制御を行う。
アプリケーション実行部435は、アプリケーション制御部434による制御に基づき、アプリケーションを実行する。
【0220】
サービス制御部941は、分離部402が分離した放送サービスによるコンテンツデータのデコードと表示(再生)、および通信入出力部411が受信した通信によるVOD等のコンテンツデータの再生を制御する。サービス制御部941は、例えばリモコン装置(不図示)等からの操作信号に基づき、コンテンツデータの再生を開始(play)したり、一時停止(pause)したり、再開(play/resume)したり、停止(stop)したりする。また、サービス制御部941は、コンテンツデータの再生の開始時に、コンテンツIDや視聴(再生)開始時刻や視聴(再生)開始位置などを一時的にメモリに記録しておく。これらの、受信機4がコンテンツを再生しているか否かを表す情報や、コンテンツIDや、視聴(再生)開始時刻や、視聴(再生)開始位置を、コンテンツの再生状況と呼ぶ。また、サービス制御部941は、これらの再生状況を示す信号を、通知設定部931に渡す。
【0221】
通知設定部931は、コンテンツデータの再生時に(コンテンツデータの再生状況に応じて)、コンテンツに関連する通知データを受信するか否かを設定する。通知設定部931は、例えば、再生開始時と再生再開時にはサーバーからの通知を受けるように設定するとともに、登録要求送信部932が登録要求を送信するよう制御する。また、一時停止時と停止時にはサーバーからの通知待受けを止めるように設定するとともに、解除要求送信部933が解除要求を送信するよう制御する。なお、ユーザーの事前の設定や、コンテンツ視聴時のユーザーの選択に基づき、サーバーからの通知を受けるか否かを通知設定部931が決定するようにしても良い。
【0222】
登録要求送信部932は、通知設定部931の指示に基づき、通信入出力部411を介して、通知データに関する登録要求を通知サーバー801に対して送信する。
解除要求送信部933は、通知設定部931の指示に基づき、通信入出力部411を介して、通知データに関する解除要求を通知サーバー801に対して送信する。
【0223】
通知受信部921は、通知設定部931による設定に基づき、外部からアプリケーション情報テーブルを含む通知データを待ち受け、受信する。通知受信部921は、通信入出力部411経由で通信により通知データを受信する場合と、放送信号に含まれていた通知データを分離部402から取得する場合とがある。なお、通知受信部921は、通知設定部931からの指示により、通知データの待受けを開始したり停止したりする。また、通知受信部921は、アプリケーションからのメソッド呼び出しによる、受信機API部436経由の指示により、通知データの待受けを開始したり停止したりしてもよい。
受信機API部436は、受信機4が有する機能を呼び出すための、アプリケーションに対するインタフェースとして機能する。
【0224】
次に、本システムにおける、処理のフローを説明する。
図26は、通知サーバー801と受信機4の処理および相互作用の手順を示すラダーチャートである。以下、同図の流れに沿って説明する。
まずステップS1では、受信機4は、コンテンツの再生を開始する。ここで再生するコンテンツは、受信機4が、放送信号で受信するコンテンツ、あるいは通信経由でVODサーバー802から受信するコンテンツである。
【0225】
そして、ステップS11では、受信機4の通知設定部931が、通知の登録の設定を行う。
これにより、ステップS12において、登録要求送信部932が、通信入出力部411を介して、登録要求を送信する。このとき、登録要求送信部932は、登録要求のデータのパラメータとして、受信機IDとコンテンツIDとコンテンツの視聴開始時刻とコンテンツの視聴開始位置を付加する。通知サーバー801の登録要求受信部905は、この登録要求を受信する。
【0226】
そして、ステップS13において、通知サーバー801の登録要求受信部905は、受信した登録要求に基づき、受信機管理テーブル記憶部904への書き込みを行う。具体的には、登録要求受信部905は、受信した登録要求に含まれていた受信機IDとコンテンツIDの組合せに該当する行が受信機管理テーブルに既にある場合には、その行のデータを更新する。その受信機IDとコンテンツIDの組合せに該当する行が受信機管理テーブルにない場合には、登録要求受信部905は、新たな行のデータを挿入する。
テーブルに登録された後は、この登録要求のデータは、スケジューリング部902による監視の対象となる。
【0227】
そして、ステップS21においては、スケジューリング部902が通知管理テーブル記憶部903と受信機管理テーブル904とに基づいてスケジューリングを行った結果として、所定のタイミングで、通知送信部901が受信機4に対してプッシュ型の通知データを送信する。このとき、通知送信部901は、通知管理テーブルから読み出された通知内容に基づくアプリケーション情報テーブルを、通知データに含めて送信する。
ステップS22で、通知データは、通信網9を介して伝送される。
そして、ステップS23において、受信機4の通知受信部921は、通信入出力部411を経由して、この通知データを受信する。
【0228】
そして、ステップS24において、アプリケーション制御部434は、通知受信部921が受信した通知データに含まれていたアプリケーション情報テーブルを取得し、その内容に基づいてアプリケーションのライフサイクルを制御する。
例えば、制御コード(controlCode)が「AUTOSTART」(自動起動)を表す場合には、同アプリケーション情報テーブル中で対応するアプリケーションID(orgIDおよびappID)およびアプリケーションコードのロケーション(location)で示されるアプリケーションを自動起動させる。その結果、アプリケーション実行部435は、そのアプリケーションの実行を開始する。
また例えば、制御コードが「PRESENT」(スタンバイ)を表す場合には、アプリケーションIDで示されるアプリケーションをスタンバイさせる。
また例えば、制御コードが「DESTROY」(終了)を表す場合には、アプリケーションIDで示される実行中のアプリケーションを終了させる。
また例えば、制御コードが「KILL」(強制終了)を表す場合には、アプリケーションIDで示される実行中のアプリケーションを強制終了させる。
また例えば、制御コードが「KILL ALL」(全アプリケーションの強制終了)を表す場合には、受信機4で実行中のすべてのアプリケーションを強制終了させる。
【0229】
なお、受信機4は、一度の登録要求に対して、複数回の通知を受信することがある。その場合、通知を受信する都度、アプリケーション制御部434は、通知データに含まれていたアプリケーション情報テーブルに従って、受信機4側でのアプリケーションのライフサイクルの制御を行う。
【0230】
そして、ステップS31において、受信機4の通知設定部931が、通知の解除の設定を行う。
これにより、ステップS32において、解除要求送信部933が、通信入出力部411を介して、解除要求を送信する。このとき、解除要求送信部933は、解除要求のデータのパラメータとして、受信機IDとコンテンツIDを付加する。通知サーバー801の解除要求受信部906は、この解除要求を受信する。
【0231】
そして、ステップS33において、通知サーバー801の解除要求受信部906は、受信した解除要求に基づき、受信機管理テーブル記憶部904を更新する。具体的には、解除要求受信部906は、受信した解除要求に含まれていた受信機IDとコンテンツIDの組合せに該当する行を、受信機管理テーブルから削除する。
このようにデータを削除したことにより、当該受信機IDとコンテンツIDの組合せは、スケジューリング部902による監視の対象から外れることとなる。
【0232】
上記のように、受信機側から、コンテンツの再生タイミングに関する情報を通知サーバー側に送ることにより、その受信機特有の再生タイミングに応じて、通知サーバー側からプッシュ型の通知を行い、受信機上でのアプリケーションのライフサイクル制御を行うことができる。
【0233】
なお、上述した実施形態における受信機の機能の一部をコンピューターで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0234】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【産業上の利用可能性】
【0235】
本発明は、放送と通信を連携させてサービスを提供する、放送通信連携システムなどに適用できる。
【符号の説明】
【0236】
4 受信機
9 通信網
11 放送送出装置
13 コンテンツ管理サーバー
401 放送受信部
402 分離部
411 通信入出力部
412 アプリケーション実行制御部
434 アプリケーション制御部
435 アプリケーション実行部
436 受信機API部
801 通知サーバー
802 VODサーバー
901 通知送信部
902 スケジューリング部
903 通知管理テーブル記憶部
904 受信機管理テーブル記憶部
905 登録要求受信部
906 解除要求受信部
921 通知受信部
931 通知設定部
932 登録要求送信部
933 解除要求送信部

【特許請求の範囲】
【請求項1】
コンテンツデータの再生時に、前記コンテンツに関連する通知データを受信するか否かを設定する通知設定部と、
前記通知設定部による設定に基づき、通信により外部からアプリケーション情報テーブルを含む通知データを受信する通知受信部と、
前記通知受信部が受信した前記通知データに含まれる前記アプリケーション情報テーブルを参照し、前記アプリケーション情報テーブル内の制御コードに基づいてアプリケーションのライフサイクル制御を行うアプリケーション制御部と、
前記アプリケーション制御部によるライフサイクル制御に基づき、アプリケーションを実行するアプリケーション実行部と、
を具備することを特徴とする受信機。
【請求項2】
前記アプリケーション制御部は、自動起動を示す制御コードに基づき指定されたアプリケーションを自動起動し、スタンバイを示す制御コードに基づき指定されたアプリケーションをスタンバイさせ、終了または強制終了を示す制御コードに基づき指定されたアプリケーションを終了させ、全アプリケーションの強制終了を示す制御コードに基づき実行中の全アプリケーションを終了させる制御を行う、
ことを特徴とする請求項1に記載の受信機。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2013−9339(P2013−9339A)
【公開日】平成25年1月10日(2013.1.10)
【国際特許分類】
【出願番号】特願2012−113948(P2012−113948)
【出願日】平成24年5月18日(2012.5.18)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVASCRIPT
【出願人】(000004352)日本放送協会 (2,206)
【Fターム(参考)】