(58)【調査した分野】(Int.Cl.,DB名)
前記能力エレメントは、前記能力コード属性により表される前記特定能力のための支援が必須であるか否かを示す必須の指示子属性をさらに含む、請求項9に記載の方法。
【発明を実施するための形態】
【0024】
発明のより容易な理解を助け、発明の実施例を示す添付の図面が、下記の記載と共に本発明の原理を説明するために提供される。
添付の図面は上記の通りである。
以下、上記の目的を具体的に実現することができる本発明の好適な実施例を添付の図面を参照して説明する。このとき、図面に図示され、またこれによって説明される本発明の構成と作用は、少なくとも1つの実施例として説明されるものであり、これによって本発明の技術的思想とその核心構成及び作用が制限されるものではない。
【0025】
本発明で使用される用語は、本発明における機能を考慮した上、できるだけ現在広く使用されている一般的な用語を選択したが、これは、当該分野に従事する技術者の意図、慣例又は新しい技術の出現などによって変更されてもよい。また、特定の場合、出願人が任意に選定した用語もあり、その場合には、該当する発明の説明の部分で詳細にその意味を記載する。したがって、本発明で使用される用語は、単純な用語の名称ではなく、その用語が持つ意味と本発明の全般にわたる内容に基づいて定義されなければならないということは明らかである。
【0026】
本発明で使用する用語のうちのreal time(RT) serviceは、その言葉通りにリアルタイムサービスを意味する。すなわち、時間に拘束されるサービスである。一方、non−real time(NRT) serviceは、RTサービス以外の非リアルタイムサービスを意味する。すなわち、非リアルタイムサービスは、時間に拘束されないサービスである。そして、NRTサービスのためのデータをNRTサービスデータと呼ぶことにする。
【0027】
本発明に係る放送受信機は、地上波、ケーブル、インターネットなどのような媒体を介して非リアルタイム(NRT)サービスを受信することができる。NRTサービスは、放送受信機の格納媒体に格納された後、既設定の時間やユーザの要求によってディスプレイ装置に表示される。NRTサービスは、ファイルの形態で受信され、格納媒体に格納されることを一実施例とする。格納媒体は、放送受信機の内部に装着された内蔵HDDであることを一実施例とする。他の例として、格納媒体は、放送受信システムの外部に接続されたUSB(Universal Serial Bus)メモリ、外装HDDなどであってもよい。NRTサービスを構成するファイルを受信して格納媒体に格納し、ユーザにサービスするためには、シグナリング情報が必要である。本発明は、これをNRTサービスシグナリング情報又はNRTサービスシグナリングデータと呼ぶことにする。本発明に係るNRTサービスは、IPデータグラムを得る方式に応じてFixed NRTサービスとMobile NRTサービスとに区分することができる。特に、Fixed NRTサービスは固定型放送受信機に提供され、Mobile NRTサービスは移動型放送受信機に提供される。本発明は、Fixed NRTサービスを一実施例として説明する。しかし、本発明がMobile NRTサービスにも適用できることはいうまでもない。
【0028】
本発明で使用する用語のうち、対話型付加サービス(Interactive Adjunct Service)または対話型放送サービス(Interactive Broadcast Service)は、視聴経験(viewing experience)の向上のために、視聴者に対話型経験を提供するデータサービスまたは放送サービスである。対話型放送サービスは、TDO(Triggered Declarative Object),DO(Declarative Object)、またはNDO(Non−real−time Declarative Object)を含む。
【0029】
本発明で使用する用語のうち、トリガー(Trigger)は、シグナリングを識別し、対話型サービスまたは対話型イベントの提供時点を設定するシグナリングエレメント(signaling element)である。トリガーは、タイムベーストリガー(time base trigger)及び/又はアクティベーショントリガー(activation trigger)としての役割を担うことができる。タイムベーストリガー(time base trigger)は、イベントの再生時刻の基準を提示するタイムベースを設定するために用いられる。アクティベーショントリガーは、イベントの動作時刻を設定するために用いられる。後述するタイムベースメッセージ(time base messages)がタイムベーストリガーとして用いられてもよく、またはタイムベーストリガーがタイムベースメッセージとして用いられてもよい。後述するアクティベーションメッセージ(activation messages)がアクティベーショントリガーとして用いられてもよく、またはアクティベーショントリガーがアクティベーションメッセージとして用いられてもよい。
【0030】
タイムベーストリガーは、タイムクロック(time clock)でサンプリングされたタイムスタンプ(timestamp)を伝送するトリガーである。詳細は後述する。
【0031】
アクティベーショントリガーは、トリガー動作またはイベントの動作時間を示す情報を伝送するトリガーである。詳細は後述する。
【0032】
メディアタイム(Media Time)は、コンテンツの再生時に、特定の時点を参照するためのパラメータ(parameter)である。
【0033】
DO(Declarative Object)は、放送コンテンツと関連する付加情報を表出するアプリケーションまたはディスプレイ自体を示すことができる。DO(Declarative Object)は、放送コンテンツと関連する対話型サービスまたは対話型イベントを表出するアプリケーションまたはディスプレイ自体を示すことができる。1つのDOには1つ以上の対話型イベントが含まれてもよい。
【0034】
TDO(Triggered Declarative Object)は、放送コンテンツ内の付加情報を示すものである。TDOは、付加情報を放送コンテンツ内でタイミングに合わせてトリガー(trigger)する概念である。トリガーによってDOが実行される場合、このDOをTDOと定義することができる。例えば、オーディションプログラムが放送される場合、視聴者が好むオーディション参加者の現在の順位などを当該放送コンテンツと共に表示することができ、このとき、オーディション参加者の現在の順位などに関する付加情報がTDOとなり得る。このようなTDOは、視聴者と対話型疎通を通じて変更されるか、または視聴者の意図を反映して提供されてもよい。
【0035】
NDO(Non−real−time Declarative Object)は、NRTサービスの一部として提供されるDOと定義することができる。
【0036】
図1は、本発明の一実施例に係るリアルタイム(Real Time;RT)サービス及び非リアルタイム(Non−Real Time;NRT)サービスを提供する概念を示す図である。
【0037】
放送局は、既存の方式に従って、すなわち、現在の地上波放送(又はモバイル放送)のようにリアルタイムサービスを送信する。このとき、放送局は、リアルタイムサービスを送信し、その過程で残る帯域幅を利用したり、または専用帯域幅を利用したりして非リアルタイムサービスを提供することができる。すなわち、リアルタイムサービス及び非リアルタイムサービスは、同じチャネルまたは異なるチャネルを介して伝送される。したがって、放送受信機でリアルタイムサービスと非リアルタイムサービスとを区分し、区分された非リアルタイムサービスを格納した後、必要時にユーザに提供するために、非リアルタイムサービスシグナリング情報(又はNRTサービスシグナリングデータ)が要求される。非リアルタイムサービスシグナリング情報(又はNRTサービスシグナリングデータ)は以降に詳細に説明する。例えば、放送局では、放送サービスデータをリアルタイムで送信し、ニュースクリップ、天気情報、広告、Push VODなどを非リアルタイムで送信することができる。また、非リアルタイムサービスは、ニュースクリップ、天気情報、広告、Push VODだけでなく、リアルタイム放送ストリームのうち特定の場面、特定のプログラムの詳細情報、プレビューなどであってもよい。
【0038】
従来の放送受信機(即ち、legacy device)は、リアルタイムサービスを受信して処理することはできるが、非リアルタイムサービスを受信して処理することはできない。すなわち、従来の放送受信機(即ち、legacy device)は、リアルタイムサービスを伝送するチャネルに含まれた非リアルタイムストリームによってその動作が影響を受けないことが原則である。言い換えると、従来の放送受信機は、非リアルタイムサービスを受信しても、適切に処理できる手段が備えられていないため、受信された非リアルタイムサービスを処理することができない。
【0039】
一方、本発明に係る放送受信機(即ち、NRT device)は、リアルタイムサービスと結合された非リアルタイムサービスを受信して適切に処理できるので、視聴者に従来の放送受信機に比べて多様な機能を提供することができる。
【0040】
本発明に係る1つの非リアルタイムサービスは、1つ以上のコンテンツアイテム(又はコンテンツ又はNRTコンテンツという)を含み、1つのコンテンツアイテムは、1つ以上のファイルを含むことを一実施例とする。本発明においてファイルとオブジェクトは同じ意味として使用される。コンテンツアイテムは、独立して再生が可能な最小単位である。例えば、非リアルタイムで提供されるニュースがあり、ニュースには経済ニュース、政治ニュース、生活ニュースが含まれるとするとき、ニュースは非リアルタイムサービスと言うことができ、経済ニュース、政治ニュース、生活ニュースのそれぞれはコンテンツアイテムと言える。そして、経済ニュース、政治ニュース、生活ニュースのそれぞれは、1つ以上のファイルで構成される。
【0041】
このとき、非リアルタイムサービスは、リアルタイムサービスと同じ放送チャネルまたは専用放送チャネルを介してMPEG−2トランスポートストリーム(TS)パケットの形態で伝送されてもよい。この場合、非リアルタイムサービスを識別するために、ユニークなPIDがNRTサービスデータのTSパケットに割り当てられて伝送される。本発明は、IPベースのNRTサービスデータがMPEG−2 TSパケット化されて伝送されることを一実施例とする。
【0042】
このとき、NRTサービスデータを受信するのに必要なNRTサービスシグナリングデータは、NRTサービスシグナリングチャネルを介して伝送される。NRTサービスシグナリングチャネルは、IP層上で特定のIPストリームを介して伝送され、このとき、IPストリームもMPEG−2 TSパケット化されて伝送される。NRTサービスシグナリングチャネルで伝送されるNRTサービスシグナリングデータは、NRTサービスマップテーブル(NRT Service Map Table; SMT)及び/又はNRT情報テーブル(NRT Information Table; NRT−IT)を含む。SMTは、IP層で駆動する少なくとも1つの非リアルタイムサービス、非リアルタイムサービスを構成するコンテンツアイテム/ファイルなどの接続情報を提供することを一実施例とする。NRT−ITは、非リアルタイムサービスを構成するコンテンツアイテム/ファイルなどの詳細情報を提供することを一実施例とする。本発明は、SMT及びNRT−ITをシグナリング情報テーブルと呼ぶことにする。
【0043】
本発明の一実施例によれば、放送コンテンツの他にTDOも非リアルタイムサービスまたはリアルタイムサービスとして伝送されてもよい。また、TDOは、放送網ではなくインターネット網を介して伝送されてもよい。
【0044】
図2は、本発明の一実施例に係るNRTサービスをシグナリングする構造を示す図である。
【0045】
本発明の一実施例に係るSMTとNRT−ITは、サービスシグナリングチャネル(Service Signaling Channel: SSC)という特定のIPアドレスとport番号を有するチャネルを介して伝送されてもよい。
【0046】
本発明の一実施例に係るSMTは、多数のNRTサービスのためのシグナリング情報を含むことができ、それぞれのNRTサービスに対して、service name情報、IP及びport情報、FLUTE session情報、service ID情報、service category情報、content length情報、storage reservation情報、ISO−639 Language情報、Genre情報、及び/又はicon content linkage情報を含むことができる。
【0047】
service name情報は、NRTサービスに名を示す情報であって、ユーザとの相互作用のために使用することができる。すなわち、ユーザは、NRTサービス名で当該サービスを認識し、このサービスを要求することができる。
【0048】
IP及びport情報は、NRTサービスを提供するIPアドレス及びport番号を示す。
【0049】
FLUTE session情報は、NRTサービスと関連するファイルを伝送するFLUTE(File Delivery over Unidirectional Transport)セッションを示す。
【0050】
service ID情報は、NRTサービスを識別する識別子である。Service ID情報は、NRT−ITへのリンケージ(linkage)として使用することができる。
【0051】
service category情報は、サービスのカテゴリーを示す。例えば、サービスがRTサービス、IPサービス、EPGサービス、またはNRTサービスのいずれに属するかを示すことができる。
【0052】
content length情報は、NRTサービスに含まれたcontentの長さを示す情報である。
【0053】
storage reservation情報は、NRTサービスの提供を受けるために予約が必要な格納装置の容量を示す情報である。
【0054】
ISO−639 Language情報は、NRTサービスにおいて使用される言語に関する情報である。
【0055】
Genre情報は、NRTサービスのジャンルを示す情報である。
【0056】
icon content linkage情報は、NRTサービスを説明するアイコンに対する連結情報である。icon content linkage情報は、FLUTE FDT(File Delivery Table)のcontent−linkage情報とマッチングされる場合、受信機が、当該content−linkageと関連するcontent−location情報が示すアドレスからアイコンを受信できるようにするために使用される。
【0057】
本発明の一実施例に係るNRT−ITは、多数のNRTコンテンツに関する情報を含むことができ、それぞれのコンテンツに対してservice ID情報、content name情報、content linkage情報、distribution start/end time情報、playback length情報、content length情報、media type情報、icon content−linkage情報、ISO−639 language情報、caption service情報、content advisory情報、genre情報、及び/又はinternet location情報を含むことができる。
【0058】
content linkage情報は、FLUTE FDTのcontent−linkage情報とマッチングされる場合、受信機が、当該content−linkageと関連するcontent−location情報が示すアドレスから、NRTコンテンツを構成するファイルを受信できるようにするのに使用される。content linkage情報は、NRT−ITとTFT(Text Fragment Table;TFT)を連結するリンケージ(linkage)として使用することができる。TFTは、NRTサービスまたはNRTコンテンツに対する説明を提供するのに使用されるテキストフラグメントを含む。すなわち、TFTは、多数の言語を支援するデータ構造を伝送し、当該データ構造は、多数の他の言語でNRTサービスまたはNRTコンテンツに対する説明を提供するためのデータを含む。
【0059】
icon content−linkage情報は、NRTコンテンツを説明するアイコンに対する連結情報である。icon content−linkage情報は、FLUTE FDTのcontent−linkage情報とマッチングされる場合、受信機が、当該content−linkageと関連するcontent−location情報が示すアドレスから、NRTコンテンツのアイコンを受信できるようにするのに使用される。
【0060】
図3は、本発明の一実施例に係るTDOパラメータテーブル(TDO Parameter Table:TPT)の一部分を示す図である。
【0061】
図4は、本発明の一実施例に係るTDOパラメータテーブル(TDO Parameter Table:TPT)の他の一部分を示す図である。
【0062】
本発明の一実施例に係るTDOパラメータテーブルは、セグメントに含まれるTDO及び/又はTDOに含まれるイベントに関するメタデータを含んでいる。
【0063】
TDOパラメータテーブルは、TPTエレメント、MajorProtocolVersionエレメント、MinorProtocolVersionエレメント、idエレメント、tptVersionエレメント、expireDateエレメント、serviceIDエレメント、baseURLエレメント、Capabilitiesエレメント、LiveTriggerエレメント、URLエレメント、pollPeriodエレメント、TDOエレメント、appIDエレメント、appTypeエレメント、appNameエレメント、globalIDエレメント、appVersionエレメント、cookieSpaceエレメント、frequencyOfUseエレメント、expireDateエレメント、testTDOエレメント、availInternetエレメント、availBroadcastエレメント、URLエレメント、Capabilitiesエレメント、ContentItemエレメント、URLエレメント、updatesAvailエレメント、pollPeriodエレメント、Sizeエレメント、availInternetエレメント、availBroadcastエレメント、Eventエレメント、eventIDエレメント、actionエレメント、destinationエレメント、diffusionエレメント、及び/又はDataエレメントを含む。
【0064】
TPTエレメントはTPTのルートエレメントである。
【0065】
MajorProtocolVersionエレメントは、テーブルの定義のメジャーバージョン番号を示す。受信機は、自身が支援できないメジャーバージョン番号を有するTPTは廃棄することができる。
【0066】
MinorProtocolVersionエレメントは、テーブルの定義のマイナーバージョン番号を示す。受信機は、自身が支援できないマイナーバージョン番号を有するTPTは廃棄しない。この場合、受信機は、自身が支援しない情報又はエレメントは無視することでTPTを処理する。
【0067】
idエレメントは、URI形態を有することができ、このTPTと関連する対話型プログラミングセグメント(又は、対話型サービスセグメント)を識別する。このidエレメントは、相応するトリガーの‘locator_part’となり得る。
【0068】
tptVersionエレメントは、idエレメントによって識別されるTPTのバージョン情報を示す。
【0069】
expireDateエレメントは、TPTインスタンスに含まれた情報の満了日及び時間を示す。受信機がTPTを格納している場合、expireDateエレメントによる日付及び時間までは当該TPTを再使用することができる。
【0070】
serviceIDエレメントは、TPTインスタンスで説明される対話型サービスと関連するNRTサービスの識別子を示す。
【0071】
baseURLエレメントは、TPTに現れる関連URLの前端に結合されて使用できるベースURLを示す。baseURLエレメントは、ファイルの絶対URLを示す。
【0072】
Capabilitiesエレメントは、TPTと関連する対話型サービスを表出するために必須である能力を示す。Capabilitiesと関連する情報は、
図5で後述する。
【0073】
LiveTriggerエレメントは、アクティベーショントリガー(Activation Trigger)がインターネットを介して提供される場合に使用される情報を含む。LiveTriggerエレメントは、受信機がアクティベーショントリガーを得るために必要な情報を提供する。
【0074】
URLエレメントは、インターネットでアクティベーショントリガーを伝送するサーバーのURLを示す。アクティベーショントリガーは、HTTP short polling、HTTP long pollingまたはHTTP streamingを使用するインターネットを介して伝送されてもよい。
【0075】
pollPeriodエレメントが存在すれば、アクティベーショントリガーを伝送するためにshort pollingが使用されることを示す。pollPeriodエレメントはpolling周期を示す。
【0076】
TDOエレメントは、TPTインスタンスによって説明されるセグメントの間の対話型サービスの一部を提供するアプリケーション(例えば、TDO)に関する情報を含む。
【0077】
appIDエレメントは、TPTの範囲内でアプリケーション(例えば、TDO)を識別する。アクティベーショントリガーは、appIDエレメントを用いて、トリガーを適用するためのターゲットアプリケーションを識別する。
【0078】
appTypeエレメントは、アプリケーションのフォーマットタイプを識別する。例えば、appTypeエレメントの値が‘1’にセットされる場合、アプリケーションがTDOであることを示すことができる。
【0079】
appNameエレメントは、視聴者のためにディスプレイされる、人間が読めるアプリケーションの名を示す。
【0080】
globalIDエレメントは、アプリケーションのグローバル識別子を示す。globalIDエレメントが存在する場合、受信機は、アプリケーションコードを格納し、同一または異なる放送局の未来のセグメント内の同じアプリケーションの以降の表出のために当該アプリケーションコードを再使用することができる。
【0081】
appVersionエレメントは、アプリケーション(TDO)のバージョン番号を示す。
【0082】
cookieSpaceエレメントは、アプリケーション呼び出し(invocations)間において持続的にアプリケーションが必要とするデータを格納するために必要な空間の大きさを示す。
【0083】
frequencyOfUseエレメントは、放送においてどれぐらい頻繁にアプリケーションが使用されるかに対する概略的な頻度を示す。例えば、frequencyOfUseエレメントは、アプリケーションが時間単位、日単位、週単位、月単位で反復的に使用されるか、またはただ一度だけ使用されるということを示すことができる。
【0084】
expireDateエレメントは、受信機がアプリケーション及び/又は関連リソースを安全に削除することができる時間及び日付を示す。
【0085】
testTDOエレメントは、アプリケーションがテストの目的で使用されるかどうかを示す。アプリケーションがテストの目的で使用される場合、一般的な受信機は、このアプリケーションを無視することができる。
【0086】
availInternetエレメントは、アプリケーションをインターネットを介してダウンロードできるか否かを示す。
【0087】
availBroadcastエレメントは、アプリケーションを放送信号から抽出できるか否かを示す。
【0088】
URLエレメントは、このエレメントのそれぞれのインスタンスはアプリケーションの一部であるファイルを識別する。1つ以上のインスタンスが存在する場合、最初のインスタンスは、エントリポイント(entry point)であるファイルを指定する。エントリポイントであるファイルは、アプリケーションを実行するために実行されなければならないファイルであり得る。
【0089】
Capabilitiesエレメントは、アプリケーションの意味のある表出のために必須である受信機の能力を示す。Capabilitiesと関連する情報は、
図5で後述する。
【0090】
ContentItemエレメントは、アプリケーションが必要とする1つ以上のファイルで構成されたコンテンツアイテムに関する情報を含む。URLエレメントは、コンテンツアイテムの一部であるファイルを識別する。URLエレメントは、コンテンツアイテムが提供されるURL情報を識別することができる。1つ以上のインスタンスが存在する場合、最初のインスタンスは、エントリポイントであるファイルを指定する。
【0091】
updatesAvailエレメントは、コンテンツアイテムがたまにアップデートされるか否かを示す。updatesAvailエレメントは、コンテンツアイテムが固定された(static)ファイルで構成されるか否か、リアルタイムデータフィード(feed)であるか否かを示すことができる。
【0092】
pollPeriodエレメントが存在すれば、アクティベーショントリガーを伝送するためにshort pollingが使用されることを示す。pollPeriodエレメントは、受信機がpolling周期として使用する時間を示す。
【0093】
Sizeエレメントは、コンテンツアイテムの大きさを示す。
【0094】
availInternetエレメントは、コンテンツアイテムがインターネットを介してダウンロード可能であるか否かを示す。
【0095】
availBroadcastエレメントは、コンテンツアイテムが放送信号から抽出可能であるか否を示す。
【0096】
Eventエレメントは、TDOのためのイベントに関する情報を含む。
【0097】
eventIDエレメントは、TDOの範囲内でイベントを識別する役割を担う。アクティベーショントリガーは、トリガーが適用されるターゲットアプリケーション及び/又はイベントをappIDエレメントとeventIDエレメントとの組み合わせで識別する。
【0098】
actionエレメントは、イベントが動作するときに適用されなければならないTDOアクションの種類を示す。
図11のアクション値は、次のような意味を含むことができる。
【0099】
“register”は、可能な場合、アプリケーションのリソースを獲得し、事前格納(pre−cache)することを意味する。
【0100】
“suspend−execute”は、現在実行されている他のアプリケーションを猶予(又は、中断)させ、現在のアプリケーションを実行することを意味する。ターゲットアプリケーションが猶予された場合、受信機は以前の状態で当該アプリケーションを再開する。
【0101】
“terminate−execute”は、現在実行されている他のアプリケーションを終了させ、現在のアプリケーションを実行することを意味する。ターゲットアプリケーションが猶予された場合、受信機は以前の状態で当該アプリケーションを再開する。
【0102】
“terminate”は、アプリケーションを終了することを意味する。
【0103】
“suspend”は、アプリケーションの実行を中断することを意味する。UI及び/又はアプリケーションエンジン状態は、再び実行される前まで保存されることが要求される。
【0104】
“stream−event”は、アプリケーションによって定義される特定の行動を適切に行うようにすることを意味する。destinationエレメントは、イベントのためのターゲットデバイスタイプを示す。例えば、destinationエレメントの値に応じて、メインスクリーン或いはセカンダリスクリーンで当該イベントが実行されなければならないことを示したり、または、メインスクリーン及び/又はセカンダリスクリーンで当該イベントが実行されなければならないことを示すことができる。destinationエレメントは、位置ホルダー(place holder)として使用することができる。
【0105】
diffusionエレメントは、サーバーローディングのピークをスムージングするためのパラメータを示す。diffusionエレメントは、周期Tを秒単位で示すことができ、受信機は、0秒からT秒までの範囲でランダムタイムを計算し、TPTのURLによって参照されるコンテンツを得るためにインターネットサーバーにアクセスする前に計算された時間の分だけディレイさせることができる。
【0106】
Dataエレメントは、イベントと関連するデータに関する情報を含む。イベントが動作する場合、ターゲットアプリケーションは、このデータを読み、所望の動作を行うために当該データを使用することができる。
【0107】
図5は、本発明の一実施例に係るcapabilities_descriptorを示す図である。
【0108】
本発明の一実施例に係るcapabilities_descriptorは、descriptor_tag情報、descriptor_length情報、capability_code_count情報、essential_indicator情報、capability_code情報、format_identifier情報、capability_string_count情報、essential_indicator情報、capability_category_code情報、capability_string_length情報、capability_string()情報、capability_or_set_count情報、essential_indicator情報、capability_codes_in_set_count情報、capability_code情報、format_identifier情報、capability_strings_in_set_count情報、capability_category_code情報、capability_string_length情報及び/又はcapability_string()情報を含む。
【0109】
descriptor_tag情報は、このデスクリプタがcapabilities_descriptorであることを示す情報である。
【0110】
descriptor_length情報は、この情報の後に、このデスクリプタに含まれるデータの長さを示す。
【0111】
capability_code_count情報は、capability_code情報の数を示す。
【0112】
essential_indicator情報は、対話型サービスまたはコンテンツアイテムの意味のある表出のために、capability_code情報によって識別される能力(capability)の支援が必須であるか否かを示す。
【0113】
capability_code情報は、特定の能力を識別する情報である。例えば、capability_code情報は、その値に応じて、ダウンロードプロトコル、FECアルゴリズム、Wrapper/Archiveフォーマット、圧縮アルゴリズム、メディアタイプに関する能力を識別するのに使用することができる。例えば、capability_code情報は、ダウンロードプロトコルはFLUTEプロトコルが使用されることを示すことができる、例えば、capability_code情報は、FECアルゴリズムはFEC schemeが使用されないか、またはRaptorアルゴリズムが使用されることを示すことができる。例えば、capability_code情報は、圧縮アルゴリズムはDEFLATEアルゴリズムが使用されることを示すことができる。例えば、capability_code情報は、メディアタイプがAVC標準画質ビデオ、AVC高画質ビデオ、AC−3オーディオ、E−AC−3オーディオ、MP3オーディオ、AVCモバイルビデオ、HE AAC v2モバイルオーディオ、HE AAC v2 lever4オーディオ、DTS−HDオーディオ、CFF−TT、CEA−708キャプション及び/又はMPEG surroundが適用されたHE AAC v2であることを示すことができる。
【0114】
format_identifier情報は、ISO/IEC 13818−1のセクション2.6.9においてregistration_descriptor()のために定義された内容と同一である。
【0115】
capability_string_count情報は、capability_string()情報の数を示す。
【0116】
essential_indicator情報は、対話型サービス又はコンテンツアイテムの意味のある表出のために、この情報に後続するcapability stringに関する情報による能力(capability)の支援が必須であるか否かを示す。
【0117】
capability_category_code情報は、この情報に後続するストリング(string)値のための能力カテゴリー(capability category)を示す。例えば、capability_category_code情報は、ダウンロードプロトコル、FECアルゴリズム、wrapper/archiveフォーマット、圧縮アルゴリズムまたはメディアタイプに関する能力カテゴリーに対するものであることを示すことができる。
【0118】
capability_string_length情報は、capability_string()情報の長さを示す。
【0119】
capability_string()情報は、能力(capability)に関する情報を含む。capability_string()情報は、capability_category_code情報によって識別されたカテゴリーの能力に関する情報を含む。
【0120】
capability_or_set_count情報は、能力‘OR set’の数を示す。
【0121】
essential_indicator情報は、対話型サービス又はコンテンツアイテムの意味のある表出のために、この情報に後続する能力‘OR set’による能力(capability)の支援が必須であるか否かを示す。
【0122】
capability_codes_in_set_count情報は、能力セット内のcapability_code情報の数を示す。
【0123】
capability_code情報は、特定の能力を識別する情報である。例えば、capability_code情報は、その値に応じて、ダウンロードプロトコル、FECアルゴリズム、Wrapper/Archiveフォーマット、圧縮アルゴリズム、メディアタイプに関する能力を識別するのに使用することができる。例えば、capability_code情報は、ダウンロードプロトコルはFLUTEプロトコルが使用されることを示すことができる、例えば、capability_code情報は、FECアルゴリズムはFEC schemeが使用されないか、またはRaptorアルゴリズムが使用されることを示すことができる。例えば、capability_code情報は、圧縮アルゴリズムはDEFLATEアルゴリズムが使用されることを示すことができる。例えば、capability_code情報は、メディアタイプがAVC標準画質ビデオ、AVC高画質ビデオ、AC−3オーディオ、E−AC−3オーディオ、MP3オーディオ、AVCモバイルビデオ、HE AAC v2モバイルオーディオ、HE AAC v2 lever4オーディオ、DTS−HDオーディオ、CFF−TT、CEA−708キャプション及び/又はMPEG surroundが適用されたHE AAC v2であることを示すことができる。
【0124】
format_identifier情報は、ISO/IEC 13818−1のセクション2.6.9においてregistration_descriptor()のために定義された内容と同一である。
【0125】
capability_strings_in_set_count情報は、能力セット内のcapability_string情報の数を示す。
【0126】
capability_category_code情報は、この情報に後続するストリング(string)値のための能力カテゴリー(capability category)を示す。例えば、capability_category_code情報は、ダウンロードプロトコル、FECアルゴリズム、wrapper/archiveフォーマット、圧縮アルゴリズムまたはメディアタイプに関する能力カテゴリーに対するものであることを示すことができる。
【0127】
capability_string_length情報は、この情報に後続するcapability_string()情報の長さを示す。
【0128】
capability_string()情報は、能力(capability)に関する情報を含む。capability_string()情報は、capability_category_code情報によって識別されたカテゴリーの能力に関する情報を含む。
【0129】
capabilities_descriptorは、前述したTPTのエレメント又はデスクリプタが含まれ得る領域を介して伝送されてもよい。
【0130】
図6は、本発明の一実施例に係るアクティベーションメッセージテーブル(Activation Message Table;AMT)を示す図である。
【0131】
アクティベーションメッセージテーブルは、majorProtocolVersionエレメント、minorProtocolVersionエレメント、segmentedエレメント、beginMTエレメント、Activationエレメント、targetTDOエレメント、targetEventエレメント、startTimeエレメント、及び/又はendTimeエレメントを含むことができる。
【0132】
majorProtocolVersionエレメントは、AMT定義のメジャーバージョン番号を示す。受信機は、支援しないメジャーバージョン番号を示すAMTのインスタンスは廃棄することができる。
【0133】
minorProtocolVersionエレメントは、AMT定義のマイナーバージョン番号を示す。受信機は、支援しないマイナーバージョン番号を示すAMTのインスタンスを廃棄しなくてもよい。この場合、受信機は、AMTに含まれた支援しない個々のエレメントまたは成分を無視することができる。
【0134】
segmentedエレメントは、TDO及び/又はAMTのアクティベーションが適用されるイベントを含むTPTの識別子とマッチングされ得、AMTの識別子として使用することができる。
【0135】
beginMTエレメントは、AMTインスタンスが提供するアクティベーションタイムが適用されるセグメントの開始メディアタイム(beginning media time)を示す。
【0136】
Activationエレメントは、特定の時間に特定のイベントの動作のためのコマンドを示す。
【0137】
targetTDOエレメントは、アクティベーションコマンドが適用されるイベントのためのターゲットTDOを識別する。
【0138】
targetEventエレメントは、ターゲットTDOの範囲内で、アクティベーションコマンドが適用されるターゲットイベントを識別する。
【0139】
startTimeエレメントは、メディアタイムと関連するイベントのための有効なタイム期間の開始を示す。受信機は、メディアタイムがstartTimeエレメントの値に到達する場合、コマンドを実行することができる。
【0140】
endTimeエレメントは、メディアタイムと関連するイベントのための有効なタイム期間の終わりを示す。受信機は、メディアタイムがendTimeエレメントの値に到達する場合、コマンドを実行しなくてもよい。
【0141】
図7は、本発明の一実施例に係るトリガーフォーマットを示す図である。
【0142】
アクティベーションメッセージ(又は、アクティベーショントリガー)とタイムベースメッセージ(又は、タイムベーストリガー)は、特定の伝送環境で一般的なトリガーフォーマットに従うことができる。
【0143】
図7の(a)は、一般的なトリガーのフォーマットを示す図である。
【0144】
<domain name part>は、登録されたドメインネームを示すことができる。<directory path>は、URIで表現できる経路(path)を示す。<domain name part>及び<directory part>のいずれか1つ、または<domain name part>及び<directory part>の組み合わせは、現在のセグメントのためのTPTを獲得できるインターネット上のアドレスまたは位置のURLとして使用することができる。<parameters>は、“event_time”、“media_time”、または“spread”の要素のうちの1つ以上を含むことができる。
【0145】
図7の(b)は、“event_time”、“media_time”、“spread”の要素を示す形式の一例である。
【0146】
“event_time”要素は、アクティベーションメッセージ内で、ターゲットイベント(“e=”の形式使用)を識別したり、または当該イベントが動作しなければならない時間(“t=”の形式使用)を識別することができる。“t=”の形式が存在しない場合、当該イベントは、アクティベーションメッセージが到着する時間に動作しなければならないことを示すことができる。
【0147】
“media_time”要素は、タイムベースメッセージ内で、タイムベースメッセージによって表現されるタイムベース(time base)と関連している現在の時間を識別することができる。
【0148】
“spread”要素は、タイムベースメッセージによって行われた動作(例えば、サーバーからTPTを受信すること)を識別したり、またはアクティベーションメッセージによって行われた動作(例えば、TDOがサーバーに接続するようにすること)が、サーバーのワークロード(workload)を分散させるために、ランダム(random)な時間の間に遅延されなければならないことを示すことができる。
【0149】
トリガーは、放送ストリームで伝達され得る。
【0150】
トリガーは、放送ストリームで伝達されると、CEA−708.2 DTVクローズドキャプション対話型TV拡張子(CEA−708.2 DTV Closed Captioning: Interactive Television Extensions)に明示されたように、URLString命令語でDTVクローズドキャプションチャネルで伝達され得る。トリガーの長さが26文字以下であれば、当該トリガーは分割されずに伝送され得る(Type=11)。トリガーの長さが27〜52であれば、当該トリガーは2つのセグメントで伝送され得る(1番目のセグメントは、Type=00セグメントであり、2番目のセグメントは、Type=10セグメントである)。
【0151】
TDOモデルを利用する対話型サービスに対して、URI_data()構造でのURI_typeフィールドは0に設定することができる(TDOモデルに対する対話型TVトリガー)。直接実行(direct execution)モデルを利用する対話型サービスに対して、URI_typeフィールドは2に設定することができる(直接実行モデルに対する対話型TVトリガー)。
【0152】
この伝達メカニズムは、タイムベーストリガーとアクティベーションベーストリガーの両方を含む。
【0153】
アクティベーションメッセージは、放送ストリームで伝送されてもよい。この場合、トリガーのフォーマットは、“e=”の形式を含むが、“t=”の形式は含んでも含まなくてもよい。このとき、当該トリガーは、クローズドキャプション(closed caption)サービス領域を介して伝送されてもよい。すなわち、放送ストリーム内でクローズドキャプションサービスを伝送するチャネルを介してトリガーが伝送されてもよい。“t=”の形式が存在する場合、アクティベーションタイムは、タイムベースと関連しているタイムスタンプ(timestamp)である。“t=”の形式が存在しない場合、アクティベーションタイムは、メッセージが到着する時間である。
【0154】
タイムベースメッセージは、放送ストリームで伝送されてもよい。この場合、トリガーのフォーマットは、“m=”の形式を含んでも含まなくてもよい。“m=”の形式は、メディアタイムを示す形式である。このとき、タイムベースメッセージは、クローズドキャプション(closed caption)サービス領域を介して伝送されてもよい。すなわち、放送ストリーム内でクローズドキャプションサービスを伝送するチャネルを介してタイムベースメッセージが伝送されてもよい。“m=”の形式がタイムベースメッセージに含まれていない場合、タイムベースメッセージは、シグナリングサーバーのURLを伝送する用途に使用することができる。“m=”の形式がタイムベースメッセージに含まれていない場合、“t=”の形式がアクティベーションメッセージに含まれなくてもよい。
【0155】
アクティベーションメッセージは、インターネットを介して伝達されてもよい。アクティベーションメッセージは、インターネットを介して伝達される場合、次のメカニズムのいずれか一方または両方を用いて伝達されてもよい。第一に、個別アクティベーショントリガーが伝達され得る。個別アクティベーショントリガーは、インターネットを介して伝達される場合、HTTP short polling、HTTP long pollingまたはHTTP streamingを用いて伝達されてもよい。アクティベーショントリガーのフォーマットは、アクティベーショントリガーが放送ストリームを通じて伝達される場合と同一である。第二に、バルク(bulk)アクティベーショントリガーが伝達され得る。アクティベーショントリガーがインターネットを介して大量に伝達されると、1つのセグメントに対するアクティベーショントリガーは、1番目のパートがTPTであり、2番目のパートがAMTであるマルチパートMIMEメッセージの形態で、当該セグメントに対してTPTと共にHTTPを介して伝達され得る。
【0156】
アクティベーショントリガーのインターネット伝達が可能であれば、TPTにおいてLiveTriggerエレメントのURL属性は、アクティベーショントリガーを伝達できるアクティベーショントリガーサーバーを示す。TPTにLiveTriggerエレメントのpollPeriod属性が存在すれば、これは、HTTP short pollingが使用中であることを示し、またそれは、受信機が使用しなければならないpolling周期を示す。TPTにLiveTriggerエレメントのpollPeriod属性が存在しなければ、これは、HTTP long pollingまたはHTTP streamingが使用中であることを示す。
【0157】
どのプロトコルが使用されるかに関係なく、受信機は、クエリ用語“?mt=<media_time>”(<media_time>は、視聴するコンテンツの現在のメディアタイム)でアクティベーショントリガーサーバーにHTTP要求を発行すると予想される。
【0158】
short pollingが使用中であれば、アクティベーショントリガーサーバーからの応答は、<media_time>に終了するpollPeriodの長さの時間間隔内で発行された全てのトリガーを含むことができる。1つより多いアクティベーショントリガーがリターンされる場合、それらは1つ以上のホワイトスペース文字によって分離できる。アクティベーショントリガーがリターンされない場合、応答は空いていてもよい。
【0159】
TTP long pollingまたはHTTP streamingが使用中であれば、アクティベーショントリガーサーバーは、アクティベーショントリガーが放送ストリームで伝達されるメディアタイムまで、応答をリターンすることを待機することができる。このとき、それはアクティベーショントリガーをリターンすることができる。
【0160】
HTTP long pollingが使用中であれば、アクティベーショントリガーサーバーは、アクティベーショントリガーをリターンした後、セッションを終えることができる。受信機は、アップデートされたメディアタイムでまた他の要求を直ちに発行すると予想される。
【0161】
HTTP streamingが使用中であれば、アクティベーショントリガーサーバーは、各アクティベーショントリガーをリターンした後、セッションをオープン状態に維持することができ、伝達される時間に到達すると、当該セッションにわたって追加でアクティベーショントリガーを伝達することができる。
【0162】
いずれの場合においても、HTTP応答は、伝達モードをシグナリングするために、次の形態のいずれか1つのHTTP応答ヘッダーフィールドを含むことができる:
【0163】
ATSC-Delivery-Mode:ShortPolling[<poll-period>]
【0164】
ATSC-Delivery-Mode:LongPolling
【0165】
ATSC-Delivery-Mode:Streaming
【0166】
<poll−period>パラメータは、次のポール(poll)においてポール間の推奨間隔を示すことができる。
【0167】
ACR(Automatic Content Recognition)の放送受信機に適用される場合、アクティベーションメッセージはインターネットを介して伝送されてもよい。この場合、トリガーのフォーマットは、“e=”の形式を含むことができ、“t=”の形式は含んでも含まなくてもよい。トリガーフォーマットは、HTTP short polling、long pollingまたはstreamingを用いて伝送されてもよい。または、トリガーフォーマットは、ファイルの形態でHTTPを介して伝送されてもよい。
【0168】
タイムベースメッセージはインターネットを介して伝送されてもよい。ACR環境において、放送受信機は、放送ストリームに含まれたクローズドキャプションサービスに接近できない。この状況では、受信機がビデオフレームを認識し、ビデオフレームとタイムベースの同期(synchronization)を取る必要がある。したがって、ACR環境でタイムベースメッセージがインターネットを介して伝送され得る。この場合、タイムベースメッセージは、ACRサーバーから応答の形態で伝送されてもよい。または、タイムベースメッセージは、ウォーターマーク(透かし)(watermarks)から獲得されてもよい。
【0169】
セグメントのためのサービス生成のプロセスを通じて、TDO及び他のコンテンツアイテムを含むフォルダー、XMLフォーマットのTPTファイル、及び/又はXMLフォーマットのアクティベーションメッセージファイル(Activation Message File:AMF、あるいはアクティベーションメッセージテーブル(AMT)と呼ぶことができる)が生成されてもよい。
【0170】
タイムベースメッセージ及びアクティベーションメッセージがクローズドキャプションサービスを介して伝送される場合、放送局がタイムベースメッセージ及びアクティベーションメッセージを処理できる方法には、明確なタイムベースがないセグメントモード、明確なタイムベースがあるセグメントモード、または明確なタイムベースがあるサービスモードが存在し得る。このようなモードは、放送内でセグメント単位で混在して存在し得る。
【0171】
明確なタイムベースがないセグメントモードにおいて、アクティベーションメッセージは、各メッセージのアクティベーションタイムがメッセージの伝達時間となるようにタイムスタンプを含まず、タイムベースメッセージも唯一の目的がTPTファイルを伝達し得るシグナリングサーバーのURLを提供するものとなるようにタイムスタンプを含まない。このモードでは、シグナリングサーバーのURLを提供するように、アクティベーションメッセージでのURLに依存しながらタイムベースメッセージが完全に省略されてもよい。しかし、そのような場合、受信機は、最初のアクティベーションメッセージが登場した後まで、TPTの検索及びTDOのダウンロードの開始を実行することができないため、最初のアクティベーションメッセージに対する応答が非常に遅延する。
【0172】
この場合、CCサービスに登場するタイムベースメッセージは、“Trigger”フォーマットの“locator_part”を含み、“spread”項は含んでもよいが、“media_time”項は含まず、CCサービス#6に登場するアクティベーションメッセージは、“Trigger”フォーマットの“locator_part”及び“event_time”項を含み、“spread”項は含んでもよいが、“event_time”項において“t=”パートは含まない。タイムベースメッセージ及びアクティベーションメッセージの“locator_part”は現在のsegmentIdである。このURLは、インターネットを介して当該セグメントに対するTPTを検索するために使用されてもよい。
【0173】
明確なタイムベースがあるセグメントモードにおいて、タイムベースメッセージは、タイムベースを定義するためにタイムスタンプを含み、アクティベーションメッセージは、タイムベースに比例するアクティベーションタイムを定義するためにタイムスタンプを含むことができる。または、それらは、アクティベーションタイムがメッセージの到着時間であることを示すタイムスタンプを含まなくてもよい。
【0174】
この場合、CCサービスに登場するタイムベースメッセージは、“Trigger”フォーマットの“locator_part”及び“media_time”項を含み、“spread”項は含んでもよく、CCサービスに登場するアクティベーションメッセージは、“Trigger”フォーマットの“locator_part”及び“event_time”項を含み、“spread”項は含んでもよく、“event_time”項において“t=”パートは含んでも含まなくてもよい。タイムベースメッセージ及びアクティベーションメッセージの“locator_part”は現在のsegmentIdであり、タイムベースはセグメントに限定される。このURLは、インターネットを介して当該セグメントに対するTPTを検索するために使用されてもよい。
【0175】
明確なタイムベースがあるサービスモードにおいて、タイムベースメッセージは、タイムベースを定義するためにタイムスタンプを含み、アクティベーションメッセージは、タイムスタンプを含んでも含まなくてもよい。タイムベースは、単一のセグメントに限定されるよりは、多数のセグメントにわたって拡張される。タイムベースメッセージの“locator_part”は、タイムベースの識別子であり、インターネットを介してサービスに対するTPTを検索するために使用できるURLでもある。
【0176】
いずれの場合においても、トリガーをCCサービスに挿入するトリガー挿入サーバーは、AMFから動作して、アクティベーションメッセージをAMFにあるXMLフォーマットからCCサービスにおいて伝達に対して指定したトリガーフォーマットに変換しなければならない。endTime属性を有しないアクティベーションエレメントの場合、1つのトリガーがstartTime属性と同じアクティベーションタイムをもって挿入されなければならない。startTimeエレメント及びendTimeエレメントの両方を有するアクティベーションエレメントの場合、トリガーのシーケンスが同一のtargetId値をもって挿入されなければならない。シーケンスにおいて最初のトリガーは、startTime属性と同じアクティベーションタイムを有しなければならず、シーケンスにおいて最後のトリガーは、endTime属性と同じアクティベーションタイムを有しなければならず、シーケンスにおいてトリガーのアクティベーションタイム間には一定の時間間隔が存在しなければならない(シーケンスでは、最後から2番目のトリガーと最後のトリガーとの間の間隔はさらに短くてもよい)。この一定の時間間隔の長さは設定可能でなければならない。
【0177】
タイムベースメッセージ及びアクティベーションメッセージがセグメントモードにあれば、タイムベースはセグメントに限定的である。それは、セグメントの開始時に“beginMT”値を持って始まり、セグメントを通じて行われる。個別アクティベーションの“startTime”値及び“endTime”値は“beginMT”値に比例する。タイムベースメッセージ及びアクティベーションメッセージがサービスモードにあれば、タイムベースはセグメントにわたっており、各セグメントに対する“beginMT”値は、サービスタイムベース及び放送スケジュールを勘案するために調整される。
【0178】
タイムベースメッセージ及び/又はアクティベーションメッセージはインターネットを介して伝達されてもよい。
【0179】
インターネットを介してタイムベースメッセージ及びアクティベーションメッセージを伝達する必要がある唯一の時は、受信機がCCサービスに接続していない状況、例えば、ACR状況である。この場合、タイムベースメッセージはACRサーバーから伝達されてくる。アクティベーションメッセージは、short polling、long pollingまたはstreamingを通じて伝達されてもよいが、これらはいずれも受信機及びサーバーに多くのオーバーヘッドを加える。アクティベーションメッセージは、AMFの形態で伝達されてもよいが、これは、セグメントの長さに対する多量の情報を提供し、広告キラーを容易にする。他の代案があり得る。
【0180】
TPTは放送を介して伝達されてもよい。
【0181】
放送を介した伝達のために、TPTは、XMLフォーマットから同等のバイナリフォーマットに変換された後、テーブルインスタンス当たり1つずつ放送を介した伝達のためのNRT形式のテーブルインスタントに圧縮される。現在のセグメントに対するTPTは常に存在する。1つ以上の未来のセグメントに対するTPTも存在し得る。
【0182】
TPTはインターネットを介して伝達されてもよい。
【0183】
TPTは、インターネットを介して伝達される場合、個別ファイル又はマルチパートMIMEメッセージの部分として伝達される。要求に対する応答は、常に現在のセグメントに対するTPTを含む。それは、1つ以上の未来のセグメントに対するTPTも含むことができる。
【0184】
TDO及びコンテンツアイテムのロケータ(locator)は移動されてもよい。
【0185】
ネットワーク及びステーションは、TDO及びTDOによって使用されるコンテンツアイテム(ファイル)を伝達するための自身のHTTPサーバーを提供する必要が頻繁にあり得る。これが実行されると、TPTにあるbaseURLはサーバーの位置を反映するために調節されてもよい。
【0186】
多数のセグメントが1つのセグメントに結合することができる。
【0187】
セグメント間の境界を徹底的に曖昧にするために、多数のセグメントに対するTPT及びAMFは1つのTPT及びAMFに結合することができる。これを実行するために要求される段階は、次の通りである。
【0188】
1.結合するセグメントの集合を確認する。
【0189】
2.新しいsegmentIdを有する新しいTPTを生成する。
【0190】
3.結合するセグメントのいずれか1つでもライブアクティベーションを有していれば、それらの全てに対する接近を提供するリレーサーバーを提供し、このサーバーに対するパラメータを“LiveTrigger”エレメントに置く。
【0191】
4.フル(full)TDO及びContentItem URLを得るために、必要時に各セグメントに対するbaseURLを適用する。(結合する全てのセグメントに共通するより短いbaseURLを確認し、それを結合セグメントに対するbaseURLとして保有することができる。)
【0192】
5.衝突を除去するために、必要時にappId値を変更する。
【0193】
6.結合した全てのセグメントに対して全ての変更されたTDOエレメントを新しいTPTに挿入する。
【0194】
7.結合したTPTの新しいsegmentIdと同じsegmentIdで新しいAMFを生成する。
【0195】
8.新しいAMFに対して適切な新しい“beginMT”値を選択する。
【0196】
9.appId値の全ての変化を反映するために結合したセグメントに対するAMFにある全てのアクティベーションエレメントのtargetId値を調節する。
【0197】
10.結合したセグメントに対する放送スケジュール及び新しい“beginMT”値を反映するために結合したセグメントに対するAMFにある全てのアクティベーションエレメントのstartTime値及びendTime値を調節する。
【0198】
11.変更された全てのアクティベーションエレメントを新しいAMFに挿入する。
【0199】
図8は、本発明の一実施例に係るTPT要求に対する応答の一つの部分であるURL情報を提供するXML schemeを示す図である。
【0200】
TPTは、放送ストリームを介して伝送されてもよい。TPTが放送ストリームを介して伝送される場合、バイナリフォーマット(binary format)に変更されて伝送されてもよい。TPTが放送ストリームを介して伝送される場合、NRT伝送方式に従って伝送され得る。TPTがNRT形式で伝送される場合、TPTは、テーブルセクション当たり1つのTPTが含まれるNRT形式のプライベートセクションに圧縮することができる。この場合、NRTプライベートセクション内のsubnet_idフィールドは、サービスシグナリングチャネル(Service Signaling Channel;SSC)内の他のテーブルインスタンスを区分するためのシーケンス(sequence)番号として使用することができる。
【0201】
TPTは、インターネットを介して伝送されてもよい。TPTがインターネットを介して伝送される場合、TPTはHTTPを介して伝送され得る。現在のセグメントのためのTPTのURLは、タイムベースメッセージ内の<domain name part>及び/又は<directory path>で識別することができる。受信機は、TPTを提供するサーバーに、TPTの伝送を要求することができる。TPTの伝送要求に対する応答は、TPTのみで構成されてもよく、または2−part MIMEメッセージを含む形態で伝送されてもよい。2−part MIMEメッセージの1番目のパートは要求したTPTが含まれてもよく、2−part MIMEメッセージの2番目のパートはURLのリストを含むことができる。このようなURLのリストを、
図8に示したようなXMLドキュメントの形態で伝送することができる。
【0202】
XML形態のURLのリストは、UrlListエレメント、TptUrlエレメント、及び/又はNrtSignalingUrlエレメントを含むことができる。
【0203】
UrlListエレメントは、受信機で使用可能なURLのリストを含む。
【0204】
TptUrlエレメントは、未来のセグメントのためのTPTを提供するURLを含む。複数のTptUrlエレメントが含まれた場合、放送内のセグメントの順序に従って当該TptUrlエレメントが割り当てられてもよい。
【0205】
NrtSignalingUrlエレメントは、受信機が現在の放送ストリーム内の仮想チャネルのためのNRTシグナリングテーブルを獲得することができるサーバーのURLを含む。
【0206】
図9は、本発明の他の実施例に係るTPT要求に対する応答の一つの部分であるURL情報を提供するXML schemeを示す図である。
【0207】
放送局は、現在、各受信機が視聴又は消耗している放送コンテンツの種類及び好むデータ放送などの情報を活用して、放送を通じたビジネスに活用することができる。この場合、受信機は、各受信機で消耗される放送コンテンツのようなユーザの選好度と関連する情報を特定のサーバーに伝送する必要がある。したがって、受信機に提供されるURL情報内のURL Listエレメントに、Usage ReportingのためのServerのURLを知らせるエレメントが追加されなければならない。
【0208】
URLリストは、対話型サービスを示す受信機に潜在的に使用される特定のURLを含む。URLリストは、1つ以上の未来のセグメントに対するTPTの少なくとも1つのURL、放送ストリームでの独立型NRTサービスに関する情報が検索され得るNRTシグナリングサーバーのURL、使用報告が受信される使用報告サーバーのURLを含むことができる。
【0209】
URLリストは、XMLスキーマにおいてスキーマ定義に従う“UrlList”エレメントを含むXML文書であってもよい。
【0210】
URLリストエレメントのXMLスキーマは、UrlListエレメント、TptUrlエレメント、及び/又はNrtSignalingUrlエレメントを含む。
【0211】
UrlListエレメントは、受信機に有用なURLのリストを含む。
【0212】
UrlListエレメントのTptUrlエレメントは、未来のセグメントに対するTPTのURLを含むことができる。多数のTptUrlエレメントが含まれる場合、それらは、放送でのセグメントの出現順に配列されてもよい。
【0213】
UrlListエレメントのNrtSignalingUrlエレメントは、受信機が現在の放送ストリームでの全ての仮想チャネルに対するNRTシグナリングテーブルを獲得し得るサーバーのURLを含むことができる。
【0214】
UrlListエレメントのUrsUrlエレメントは、受信機が当該アプリケーションに記述された特定のプロトコルを用いて使用(例えば、視聴率調査)報告を送信し得るサーバーのURLを含むことができる。
【0215】
本発明の一実施例として、UsrUrlエレメントに含まれる情報はUsage Reporting ServerのURLを含むことができる。この場合、受信機は、予め定められたプロトコル(例、data structure、XML fileなど)によって、この情報によるUsage Reporting Serverに受信機のUsage Reportingを行うことができる。
【0216】
本発明の他の実施例として、UsrUrlエレメントに含まれる情報は、受信機のウェブブラウザーで実行されるTDOを識別することもできる。この場合、UsrUrlエレメントは、Usage Reporting TDOの位置を知らせ、TDOが直接、受信機のウェブブラウザーのAPI(例えば、File APIs、Usage Reporting APIs)を用いて受信機に格納された又は現在消耗している放送コンテンツの情報を収集して報告することができる。すなわち、TDOを通じてUsage Reportingが行われてもよい。一実施例として、TDOは、独自にXMLHttpRequestというJavascript APIを活用して、収集されたデータを特定のサーバーに伝送することができる。
【0217】
図10は、本発明の一実施例に係るトリガーのシンタックスを示す図である。
【0218】
放送局は、ユーザに、対話型付加データサービス(又は、対話型放送サービス/コンテンツ)を2つのモデルの形態で提供することができる。それらのうちの一方がTDO(Triggered Declarative Object)モデルであり、他方がDirect Execution modelである。
【0219】
TDOモデルにおいて、TDOを開始したり、TDOを終了したり、TDOによるタスクを促したりするなどのTDOイベントを始めるために、信号が放送ストリーム又はインターネットを介して伝達される。このようなイベントは、特定の時間に始まり、一般に、オーディオ−ビデオプログラムに同期化される。TDOが開始されると、提供するようにプログラミングされた対話型特徴を提供する。
【0220】
直接実行モデルでは、仮想チャネルが選択されると直ちにDO(Declarative Object)が自動で開始される。それは、バックエンド(backend)サーバーと“Synchronized Content Protocol”を介してインターネットで通信する。当該サーバーは、スクリーン上の特定の位置にディスプレイを生成し、ポールを実行し、他の専門的なTOを開始するなどの対話型特徴を提供するための詳細命令語を提供し、これは全てオーディオ−ビデオプログラムに同期化される。(近い将来に“Synchronized Content Protocol”は特定の放送局に所有権があるが、これから標準化され得る。)
【0221】
当該セクションのほとんどは、TDOモデルに対するシグナリングを扱っているが、直接実行モデルに対するDOを開始するために必要なシグナリングも含むことができる。
【0222】
TDOモデルの基本概念は、TDOを構成するファイル及びアクションを取るためにTDOによって使用されるデータファイルはいずれも、その大きさを考慮したとき、受信機に伝達されるにはある程度の時間が要求されるということである。対話型エレメントのユーザ経験がコンテンツの放送前に作られ得る一方、特定の行為はプログラム自体のイベント、例えば、商業広告セグメントの発生と同時に起こるように注意深く調節しなければならない。
【0223】
TDOモデルは、DO及び関連しているデータ、スクリプト、テキスト、グラフィックの伝達を、対話型イベントの再生の特定タイミングのシグナリングから分離する。
【0224】
図9を参照して、トリガーに対する構文(syntax)を説明する。前述したように、アクティベーションメッセージ及びタイムベースメッセージは両方とも、特定の伝達状況で一般的な“Trigger”フォーマットを有することができる。バーティカルバー記号“|”が他の代案を指定するために使用される点以外は、ここでの構文定義は、ABNF(Augmented Backus−Naur Form)文法を用いて記述される。規則は、等号“=”によって定義及び分離され、1つより多いラインを通じて規則の定義を続けるために字下げ(indentation)が用いられ、リテラル(literal)は“”で引用され、括弧“(“ 及び ”)”は、エレメントをグループ化するために用いられ、選択的なエレメントは、括弧“[“ 及び ”]”の中に入れ、次のエレメントのn以上の反復を指定するために<n>*がエレメントに先行することができる(nは、0にデフォルトされる)。また、次のエレメントのn以上の反復及びm以下の反復を指定するために、<n>*<m>がエレメントに先行することができる。当該トリガー構文は、<scheme>及び“://”部分を除外した絶対的URIに基づく。
【0225】
トリガーは、locator_part及びtermsを含むことができる。termsは省略されてもよい。termsが存在すれば、locator_part及びtermsは‘?’により連結することができる。
【0226】
locator_partは、hostname部分及びpath_segments部分を含むことができ、これらは‘/’により連結することができる。
【0227】
hostnameは、domainlabel及びtoplabelを含むことができ、domainlabelは‘.’と共に0回以上繰り返すことができる。すなわち、hostnameは、toplabelが連結された反復されたdomainlabelを含むこともでき、toplabelのみを含むこともできる。
【0228】
domainlabelは、1つのalphanumを含むか、または、alphanumとalphanumとの間に0回以上反復的に挿入されたalphanum又は“−”を含むことができる。
【0229】
ここで、alphanumは、alphaまたはdigitを意味することができる。
【0230】
ここで、alphaは、lowalphaまたはupalphaであってもよい。
【0231】
ここで、lowalphaは、a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,zのいずれか1つであってもよい。
【0232】
ここで、upalphaは、A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Zのいずれか1つであってもよい。
【0233】
ここで、digitは、0,1,2,3,4,5,6,7,8,9のいずれか1つであってもよい。
【0234】
toplabelは、1つのalphaを含むか、または、alphaとalphanumとの間に0回以上反復的に挿入されたalphanum又は“−”を含む。
【0235】
path_segmentsは、1つのセグメントを含み、ここには0回以上反復されるセグメントが後続する。このとき、セグメントは‘/’で連結することができる。
【0236】
ここで、セグメントは、1回以上反復されるalphanumを含む。
【0237】
termsは、event_time又はmedia_timeを含むことができ、ここにはspread又はothersが後続することができる。spread及びothersは省略可能である。spread及びothersが存在すれば、‘&’がspread及びothersの前に置かれてもよく、spread及びothersは、event_time又はmedia_timeの後に置かれてもよい。
【0238】
ここで、spreadは、‘s=’の後に1回以上反復されるdigitを含むことができる。
【0239】
event_timeは、‘e=’の後に1回以上反復されるdigitを含むか、または‘&t=’の後に1回以上又は7回以下反復されるhexdigitを含むことができる。‘&t=’及びその後ろのパートは省略可能である。
【0240】
ここで、hexdigitは、0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,fのいずれか1つであってもよい。
【0241】
media_timeは、‘m=’の後に1回以上又は7回未満反復されるhexdigitを含むことができる。
【0242】
othersは、1つの“other”、または、‘&’及び“other”が続く“other”を含むことができる。
【0243】
ここで、othersは、1回以上反復され、‘=’により連結されるalphanum及びresv_cmdを含むことができる。
【0244】
ここで、resv_cmdは、‘c’,‘e’,‘E’,‘m’,‘M’,‘s’,‘S’,‘t’,‘T’を除外したalphanumであってもよい。
【0245】
トリガーの長さは、52バイトを超えなくてもよい。また、トリガーのhostname部分は、登録されたインターネットドメインネームであってもよい。
【0246】
トリガーは、3つの部分で構成されていると見なすことができる。
【0247】
<domain name part>/<directory path>[ ? <parameters>]
【0248】
<domain name part>は登録されたドメインネームであってもよく、<directory path>はURIにおいて現れる経路であってもよい。
【0249】
<domain name part>は、登録されたインターネットドメインネームを示す。<directory path>は、確認されたドメインネームに対する権限を有する主体の制御及び管理下でディレクトリ経路を識別する任意の文字列である。
【0250】
TDOモデルにおいて、<domain name part>と<directory path>の組み合わせは、関連しているコンテンツに対話型性を付加するために受信機によって処理され得るTPTを唯一に識別することができる。
【0251】
直接実行モデルにおいて、<domain name part>と<directory path>の組み合わせは、開始されるDOを唯一に識別することができる。
【0252】
<domain name part>と<directory path>の組み合わせは、現在のセグメントに対するTPTが得られるインターネット位置のURLであってもよい。
【0253】
すなわち、トリガーは、<domain name part>及び<directory path>を用いてTPTを識別することができる。<domain name part>及び<directory path>を通じて、トリガーが適用されるTPTを確認することができる。トリガーをTPTに適用することによって実行される役割は<parameters>に依存する。
【0254】
以下、<parameters>について説明する。
【0255】
<parameters>は、“event_time”、“media_time”、“spread”のうち1つ以上で構成することができる。
【0256】
次に、
図4に示した構文の“event_time”、“media_time”、“spread”について説明する。
【0257】
event_time =“e=”1*digit[“&t=”1*7hexdigit]
【0258】
media_time =“m=”1*7hexdigit
【0259】
spread =“s=”1*digit
【0260】
“event_time”項は、ターゲットイベント(“e=”項)及びイベントが活性化されるべき時間(“t=”項)を識別するためにアクティベーショントリガーにおいて使用され得る。“t=”項が存在しなければ、これは、トリガーが到着する時にイベントが活性化されなければならないことを意味する。
【0261】
すなわち、対話型イベントID項である“e=”は、イベントがターゲットとするTDOの関連TPTでのappID、特定イベントのeventID、当該イベント活性化に使用されるdataエレメントのdataIDを示すことができる。
【0262】
選択的タイミング値項である“t=”は、指定されたイベントに対する新しいメディアタイミングを示すことができる。“t=”パートが存在しなければ、これは、指定されたイベントに対するタイミングがトリガーの到達時間であることを意味する。
【0263】
“media_time”項(“m=”項)は、タイムベーストリガーによって示されるタイムベースに比例する現在時間を識別するためにタイムベーストリガーにおいて使用することができる。現在表示されるコンテンツを識別するコンテンツ識別子情報(“c=”項)は、media_timeにさらに含まれてもよい。“c=”項について、直接実行モデルを以下に説明する。
【0264】
すなわち、media timestamp項であって、16進数を示す長さが1〜8文字である文字列が続く“m=”は、現在のメディアタイムを示すことができる。
【0265】
“spread”項は、タイムベーストリガー(サーバーからTPTを検索するなど)又はアクティベーショントリガー(TDOがサーバーに接続するようにするなど)に対して取る全てのアクションが、サーバーに加わる負荷を分散するために任意の時間の間に遅延されなければならないことを示すために使用することができる。
【0266】
“s=”項は、全ての受信機がトリガーで識別されるインターネットサーバーに接続を試みるべき秒単位の時間を示すことができる。各個別受信機は、指定された区間内に任意の時間を誘導し、接続要求を該当する量だけ遅延させることによって、そうしないと受信機でトリガーの初出現時に発生し得る需要の多いピークを適時に分散すると予想することができる。
【0267】
<media time>パラメータを含むトリガーは、イベントタイムに対してタイムベースを設定するために用いられることから、タイムベーストリガーと呼ぶことができる。
【0268】
<event time>パラメータを含むトリガーは、イベントに対するアクティベーションタイムを設定することから、アクティベーショントリガーと呼ぶことができる。
【0269】
図11は、本発明の一実施例に係るバイナリフォーマット(binary format)のTPTの一部を示す図である。
【0270】
図12は、本発明の一実施例に係るバイナリフォーマットのTPTの他の一部を示す図である。
【0271】
図13は、本発明の一実施例に係るバイナリフォーマットのTPTの更に他の一部を示す図である。
【0272】
図14は、本発明の一実施例に係るバイナリフォーマットのTPTの更に他の一部を示す図である。
【0273】
図15は、本発明の一実施例に係るバイナリフォーマットのTPTの更に他の一部を示す図である。
【0274】
すなわち、
図11乃至
図15は、本発明の一実施例に係るバイナリフォーマットのTPTの全体の構造を示す。
【0275】
TPTは、放送ストリームで伝達される場合、バイナリNRT形式のシグナリングテーブルフォーマットに変換され、テーブルインスタンス当たり1つのTPTずつNRT形式のプライベートセクションに圧縮される。NRTプライベートセクション構文のsubnet_idフィールドは、サービスシグナリングチャネルにおいて互いに異なるテーブルインスタントを区別するためにシーケンス番号として使用される。
【0276】
図3及び
図4に既に記述されたTPT内のエレメントあるいは情報のうち、一部のエレメントあるいは情報はバイナリフォーマットのTPTから省略されてもよい。この場合、省略されるエレメントあるいは情報は、放送ストリーム内でバイナリフォーマットのTPTの伝送のためのヘッダーで圧縮されて伝送されてもよい。例えば、major/minor protocolVersionエレメント、servicedエレメント、及び/又はtptVersionエレメントは、バイナリフォーマットのTPTでは省略可能な情報に該当する。
【0277】
バイナリフォーマットのTPTは、expire_date_includedフィールド、segment_id_lengthフィールド、segment_idフィールド、base_URL_lengthフィールド、base_URLフィールド、expire_dateフィールド、trigger_server_URL_lengthフィールド、trigger_server_URLフィールド、trigger_delivery_typeフィールド、poll_periodフィールド、num_apps_in_tableフィールド、app_idフィールド、app_type_includedフィールド、app_name_includedフィールド、global_id_includedフィールド、app_version_includedフィールド、cookie_space_includedフィールド、frequency_of_use_includedフィールド、expire_date_includedフィールド、app_typeフィールド、app_name_lengthフィールド、app_nameフィールド、global_id_lengthフィールド、global_idフィールド、app_versionフィールド、cookie_spaceフィールド、frequency_of_useフィールド、expire_dateフィールド、test_appフィールド、available_on_internetフィールド、available_in_broadcastフィールド、number_URLsフィールド、URL_lengthフィールド、URLフィールド、number_content_itemsフィールド、updates_availフィールド、avail_internetフィールド、avail_broadcastフィールド、content_size_includedフィールド、number_URLsフィールド、URL_lengthフィールド、URLフィールド、content_sizeフィールド、num_content_descriptorsフィールド、content_descriptor()フィールド、number_eventsフィールド、event_idフィールド、actionフィールド、destination_includedフィールド、diffusion_includedフィールド、data_includedフィールド、destinationフィールド、diffusionフィールド、data_sizeフィールド、data_bytesフィールド、num_app_descriptorsフィールド、app_descriptor()フィールド、num_TPT_descriptorsフィールド、及び/又はTPT_descriptor()フィールドを含む。
【0278】
expire_date_includedフィールドは、expire_dateフィールドが含まれるか否かを示すことができる。‘1’の値は含まれたことを示し、‘0’の値は含まれていないことを示す。
【0279】
segment_id_lengthフィールドは、segment_idフィールドのバイト単位の長さを示すことができる。
【0280】
segment_idフィールドは、TPT XMLフォーマットの“id”属性と同じセマンティックス(semantic)を有することができるsegment idのバイトを含むことができる。
【0281】
base_URL_lengthフィールドは、base_URLフィールドのバイト長を示すことができる。
【0282】
base_URLフィールドは、TPT XMLフォーマットのbaseURL属性と同じセマンティックスを有することができるbase URLのバイトを含むことができる。
【0283】
expire_dateフィールドは、存在する場合、TPTに含まれた情報の満了日及び時間を示すことができる。受信機がTPTをキャッシュに格納すると、それはexpireDateまで再使用することができる。符号なし整数は、ATSC PSIP標準(PSIP)に定義されたように、1980年1月6日00:00:00 UTC以後のGPS秒単位時間マイナスGPS−UTC_offsetと解釈することができる。
【0284】
trigger_server_URL_lengthフィールドは、trigger_server_URLフィールドのバイト長を示すことができる。当該フィールドの値が0であれば、これは、個別アクティベーショントリガーのインターネット伝達が不可能であることを示すことができる。
【0285】
trigger_server_URLフィールドは、trigger_server_URL_lengthフィールドの値が0でない場合、TPT XMLフォーマットのLiveTriggerエレメントのURL属性と同じセマンティックスを有することができるトリガーサーバーURLのバイトを含むことができる。
【0286】
trigger_delivery_typeフィールドは、インターネット上の個別アクティベーショントリガーの伝達モードを示すことができる。‘0’の値は、HTTP short pollingが使用中であることを示すことができる。‘1’の値は、HTTP long polling又はHTTP streamingが使用中であることを示すことができる。
【0287】
poll_periodフィールドは、HTTP short pollingが使用中の場合、ポール間の推奨される秒数を示すことができる。
【0288】
num_apps_in_tableフィールドは、TPTインスタントに記述されたアプリケーション(TDO)の数を示すことができる。
【0289】
app_idフィールドは、当該アプリケーション(num_apps_in_tableループの反復で記述されたアプリケーション)に対する識別子を含むことができる。それは、TPTインスタント内で唯一であってもよい。
【0290】
app_type_includedフィールドは、app_typeフィールドが当該アプリケーションに対して含まれるか否かを示すことができる。‘1’の値は含まれたことを意味する。‘0’の値は含まれていないことを意味する。
【0291】
app_name_includedフィールドは、app_nameフィールドが当該アプリケーションに対して含まれるか否かを示すことができる。‘1’の値は含まれたことを意味する。‘0’の値は含まれていないことを意味する。
【0292】
global_id_includedフィールドは、global_idフィールドが当該アプリケーションに対して含まれるか否かを示すことができる。‘1’の値は含まれたことを意味する。‘0’の値は含まれていないことを意味する。
【0293】
app_version_includedフィールドは、app_versionフィールドが当該アプリケーションに対して含まれるか否かを示すことができる。‘1’の値は含まれたことを意味する。‘0’の値は含まれていないことを意味する。
【0294】
cookie_space_includedフィールドは、cookie_spaceフィールドが当該アプリケーションに対して含まれるか否かを示すことができる。‘1’の値は含まれたことを意味する。‘0’の値は含まれていないことを意味する。
【0295】
frequency_of_use_includedフィールドは、frequency_of_useフィールドが当該アプリケーションに対して含まれるか否かを示すことができる。‘1’の値は含まれたことを意味する。‘0’の値は含まれていないことを意味する。
【0296】
expire_date_includedフィールドは、expire_dateフィールドが当該アプリケーションに対して含まれるか否かを示すことができる。‘1’の値は含まれたことを意味する。‘0’の値は含まれていないことを意味する。
【0297】
app_typeフィールドは、存在する場合、当該アプリケーションのフォーマットタイプを示すことができる。“0”の値は、アプリケーションが当該標準の当該バージョンでの仕様に従うTDOということを示すことができる。当該フィールドが存在しない場合、値が0にデフォルトされ得る。他のフォーマットを示す他の値は、当該標準の将来のバージョンで定義することができる。
【0298】
app_name_lengthフィールドは、存在する場合、その直後にくるapp_nameフィールドのバイト長を示すことができる。当該フィールドに対する0の値は、当該アプリケーションに対してapp_nameフィールドが存在しないことを示す。
【0299】
app_nameフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのappName属性と同じセマンティックスを有することができる。
【0300】
global_id_lengthフィールドは、存在する場合、その直後にくるglobal_idフィールドのバイト長を示すことができる。当該フィールドに対する0の値は、当該アプリケーションに対してglobal_idフィールドが存在しないことを示す。
【0301】
global_idフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのglobalId属性と同じセマンティックスを有することができる。
【0302】
app_versionフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのappVersion属性と同じセマンティックスを有することができる。
【0303】
cookie_spaceフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのcookieSpace属性と同じセマンティックスを有することができる。
【0304】
frequency_of_useフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのfrequencyOfUse属性と同じセマンティックスを有することができる。
【0305】
expire_dateフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのexpireDate属性と同じセマンティックスを有することができる。
【0306】
test_appフィールドは、当該アプリケーションが普通の受信機によって無視されるように意図されたテストアプリケーションであるか否かを示す。‘1’の値は、それがテストアプリケーションであることを意味する。‘0’の値は、それがテストアプリケーションでないことを意味する。
【0307】
available_on_internetフィールドは、当該アプリケーションがインターネットを介して利用可能であるか否かを示す。‘1’の値は、それがインターネットを介して利用可能であることを示し、‘0’の値は、それがインターネットを介して利用不可能であることを示す。
【0308】
available_in_broadcastフィールドは、当該アプリケーションが放送を介して利用可能であるか否かを示す。‘1’の値は、それが放送を介して利用可能であることを示し、‘0’の値は、それが放送を介して利用不可能であることを示す。
【0309】
number_URLsフィールドは、当該アプリケーションを含むファイルの数を示すことができる。
【0310】
URL_lengthフィールドは、それに後続するURLフィールドの長さを示すことができる。
【0311】
URLフィールドは、TPT XMLフォーマットでのTDOエレメントのURL属性と同じセマンティックスを有することができる。
【0312】
number_content_itemsフィールドは、当該アプリケーションによる使用のためにダウンロードされるコンテンツアイテムの数を示すことができる。
【0313】
updates_availフィールドは、当該コンテンツアイテムがたまにアップデートされるか否か、すなわち、それが固定されたファイルの集合であるか、それとも、リアルタイムデータフィードであるか否かを示すことができる。‘1’の値は、それがアップデートされることを示すことができる。‘0’の値は、それがアップデートされないことを示すことができる。
【0314】
avail_internetフィールドは、当該コンテンツアイテムを含むファイルをインターネットを介してダウンロードできるか否かを示す。‘1’の値は、それをインターネットを介してダウンロードできることを意味することができる。‘0’の値は、ダウンロードできないことを意味することができる。
【0315】
avail_broadcastフィールドは、当該コンテンツアイテムを含むファイルを放送を介してダウンロードできるか否かを示す。‘1’の値は、それを放送を介してダウンロードできることを意味することができる。‘0’の値は、ダウンロードできないことを意味することができる。
【0316】
content_size_includedフィールドは、当該アプリケーションに対してcontent_sizeフィールドが含まれるか否かを示す。‘1’の値は含まれることを意味し、‘0’の値は含まれないことを意味する。
【0317】
number_URLsフィールドは、当該コンテンツアイテムを含むファイルの数を示すことができる。
【0318】
URL_lengthフィールドは、それに後続するURLフィールドの長さを示すことができる。
【0319】
URLフィールドは、TPT XMLフォーマットでのTDOエレメントのContentItem下位エレメントのURL属性と同じセマンティックスを有することができる。
【0320】
content_sizeフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのContentItem下位エレメントのcontentSize属性と同じセマンティックスを有することができる。
【0321】
num_content_descriptorsフィールドは、その直後にくる記述語(descriptor)ループでのコンテンツ記述語の数を示すことができる。
【0322】
content_descriptor()フィールドは、MPEG−2システム標準[13818−1]に明示されたように、MPEG−2記述語フォーマット(タグ、長さ、データ)に従う記述語であってもよい。それは、当該コンテンツアイテムに関する付加情報を提供することができる。当該記述語ループに含まれ得る記述語のうちのCapabilities記述語は、当該コンテンツアイテムの意味のある表出に必要な受信機能力を示す。
【0323】
number_eventsフィールドは、当該TDOに対して定義されたイベントの数を示すことができる。
【0324】
event_idフィールドは、当該イベント(number_eventsループの反復で記述されたイベント)に対する識別子を含むことができる。それは、当該アプリケーションの範囲内で唯一である。当該イベントは、app_idとevent_idの組み合わせによってアクティベーショントリガー内で参照される。
【0325】
actionフィールドはTPT XMLフォーマットでのTDOエレメントのEvent下位エレメントのaction属性と同じセマンティックスを有することができる。
【0326】
destination_includedフィールドは、destinationフィールドが当該イベントに対して含まれるか否かを示すことができる。‘1’の値は含まれることを示すことができる。‘0’の値は含まれないことを示すことができる。
【0327】
diffusion_includedフィールドは、diffusionフィールドが当該イベントに対して含まれるか否かを示すことができる。‘1’の値は含まれることを示すことができる。‘0’の値は含まれないことを示すことができる。
【0328】
data_includedフィールドは、data_sizeフィールド及びdata_bytesフィールドが当該イベントに対して含まれるか否かを示すことができる。‘1’の値は含まれることを示すことができる。‘0’の値は含まれないことを示すことができる。
【0329】
destinationフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのEvent下位エレメントのdestination属性と同じセマンティックスを有することができる。
【0330】
diffusionフィールドは、存在する場合、TPT XMLフォーマットでのTDOエレメントのEvent下位エレメントのdiffusion属性と同じセマンティックスを有することができる。
【0331】
data_sizeフィールドは、存在する場合、その直後にくるdata_bytesフィールドの大きさを示すことができる。
【0332】
存在する場合、data_bytesフィールドは、当該イベントに関連するデータを提供することができる。イベントが活性化される度に、ターゲットアプリケーションはデータを読み取り、所望のアクションを実行するのに助けとなるように使用することができる。当該フィールドが未処理バイナリ値を含み、TPT XMLフォーマットでのDataエレメントがバイナリ値のbase64エンコーディングを含むことを除いて、当該フィールドのコンテンツは、TPT XMLフォーマットでの当該TDOエレメントの当該Event下位エレメントの当該Data下位エレメントのコンテンツと同一であってもよい。
【0333】
num_app_descriptorsフィールドは、その直後にくる記述語ループでの記述語の数を示すことができる。
【0334】
app_descriptor()フィールドは、MPEG−2システム標準[13818−1]に明示されたように、MPEG−2記述語フォーマット(タグ、長さ、データ)に従う記述語であってもよい。それは、当該アプリケーション(TDO)に関する付加情報を提供することができる。当該記述語ループに含まれ得る記述語のうちのATSC NRT標準[NRT]のセクション8.3に定義されたCapabilities記述語は、当該アプリケーションの意味のある表出に必要な受信機能力を示す。
【0335】
num_TPT_descriptorsフィールドは、その直後にくる記述語ループで記述語の数を示すことができる。
【0336】
TPT_descriptor()フィールドは、MPEG−2システム標準[13818−1]に明示されたように、MPEG−2記述語フォーマット(タグ、長さ、データ)に従う記述語であってもよい。それは、当該TPTに関する付加情報を提供することができる。当該記述語ループに含まれ得る記述語のうちのATSC NRT標準[NRT]のセクション8.3に定義されたCapabilities記述語は、当該TPTによって示される対話型サービスの意味のある表出に必要な受信機能力を示す。
【0337】
図16は、本発明の一実施例に係るTPTセクションの構造を示す。
【0338】
TPTが放送ストリームで伝達されると、バイナリフォーマットのTPTが各TPTインスタントに使用され得る(TPTインスタントは、そのsegment_idフィールドの値によって定義される)。各TPTをブロックに分離し、ブロックを共通値table_idを有するセクションのtpt_bytes()フィールド、protocol_version TPT_data_version及びsequence_numberフィールドに挿入することによって、各TPTは、以下に定義されたような構造を有するNRT形式のプライベートセクションに圧縮することができる。ブロックは、section_numberフィールド値の昇順でセクションに挿入することができる。“サービスシグナリングチャネル”及び“IPサブネット”という用語がATSC NRT標準[NRT]に定義されたように、プライベートセクションは、TPTが属する仮想チャネルのIPサブネットのサービスシグナリングチャネルで伝達することができる。セクションにあるsequence_numberフィールドは、同一のサービスシグナリングチャネルで伝達される互いに異なるTPTインスタントを区別するために用いられる。
【0339】
section_syntax_indicatorフィールド、private_indicatorフィールド、section_lengthフィールドのセマンティックスは、ATSC NRT標準[NRT]に定義されたNRT_information_table_section()での同じ名称のフィールドのセマンティックスと同一であってもよい。
【0340】
TPTセクションは、able_idフィールド、protocol_versionフィールド、sequence_numberフィールド、TPT_data_versionフィールド、current_next_indicatorフィールド、section_numberフィールド、last_section_numberフィールド、service_idフィールド、及び/又はtpt_bytes()フィールドを含む。
【0341】
table_idフィールドは、当該テーブルセッションがTDOパラメータテーブルインスタントに属することを確認することができる。
【0342】
protocol_versionフィールドは、当該テーブル及びそれに含まれて伝達されるTPTインスタントの定義のメジャーバージョン番号を示すことができ、下位4ビットは、マイナーバージョン番号を示すことができる。当該標準の当該バージョンに対するメジャーバージョン番号は1に設定することができる。受信機は、自身が支援できないメジャーバージョン値を示すAMTのインスタントを廃棄すると予想される。当該標準の当該バージョンに対するマイナーバージョン番号は0に設定することができる。受信機は、自身が支援できないマイナーバージョン値を示すAMTのインスタントは廃棄しない。この場合、それらは認識できない全ての記述語及び支援しない全てのフィールドを無視すると予想される。
【0343】
sequence_numberフィールドは、当該TPTインスタントの他の全てのセクションのsequence_numberと同一であり、当該サービスシグナリングチャネルでの他の全てのTPTインスタントの全てのセクションのsequence_numberと異なる。他のTPTインスタントのsequence_numberフィールドの値は、セグメントが放送ストリームに出現する順序を反映しなければならない。
【0344】
TPT_data_versionフィールドは、segment_idによって定義されるTPTインスタントのバージョン番号を示す。バージョン番号は、TPTインスタントでのあるフィールドが変化すると、1モジュロ(modulo)32ずつ増加することができる。
【0345】
current_next_indicatorフィールドは、TPTセクションに対して常に‘1’に設定されて、送信されたTPTが、常にsegment_idによって識別されたセグメントに対する現在のTPTであることを示すことができる。
【0346】
section_numberフィールドは、segment_idによって識別されるTPTインスタントのセクション番号を提供することができる。TPTインスタントでの最初のセクションのsection_numberは0x00であってもよい。section_numberは、TPTインスタントで追加されるセクション毎に1ずつ増加することができる。
【0347】
last_section_numberフィールドは、TPTインスタントの最後のセクション(即ち、最高のsection_numberを有するセクション)の番号を提供することができ、当該セクションは、TPTインスタントの一部である。
【0348】
service_idフィールドは、当該テーブルインスタントに記述されたコンテンツアイテムを提供する対話型サービスと関連するservice_idを特定することができる。
【0349】
tpt_bytes()フィールドは、当該セクションによって部分的に伝達されるTPTインスタントのブロックで構成される。当該テーブルインスタントの全てのセクションのtpt_bytes()フィールドがsection_numberフィールドの順に連結されると(concatenated)、完全なTPTインスタントを得ることができる。
【0350】
図17は、本発明の一実施例に係る受信機の構造を示す図である。
【0351】
本発明の一実施例において、受信機は、アンテナ17010、チューナー17020、VSB(Vestigial Side Band)又はDVB復調器17030、MPEG−2 TSシステムデコーダ17040、キャプションモジュール17050、トリガーモジュール17060、ウェブブラウザー17070、ネットワークプロトコルスタック17080、ネットワークインターフェース17090、UIモジュール17100、オーディオデコーダ17110、ビデオデコーダ17120、スピーカー17130、ディスプレイモジュール17140、グラフィックプロセッサ17150、リモコン受信機17160及び/又はリモコン17170を含むことができる。
【0352】
アンテナ17010は、放送ストリームによる放送信号を受信することができる。
【0353】
チューナー17020は、受信機のチャネルを探索したり、チャネルにチューニングすることができ、高周波増幅器、局部発振器、周波数変換及び入力回路、探索器などを含むことができる。
【0354】
VSB又はDVB復調器17030は、VSB信号又はDVB信号を復調することができる。VSB又はDVB復調器17030は、変調されたVSB又はDVB信号(例えば、OFDM変調信号)を元の信号に復元することができる。
【0355】
MPEG−2 TSシステムデコーダ17040は、復調された信号の伝送ストリームをデコーディングする。MPEG−2 TSシステムデコーダ17040は、伝送ストリームからキャプションストリームを獲得してキャプションモジュール17050に伝達することができる。MPEG−2 TSシステムデコーダ17040は、デコーディングされたオーディオ及びビデオ信号をオーディオデコーダ17110及び/又はビデオデコーダ17120に送ることができる。
【0356】
キャプションモジュール17050は、キャプションストリームを受信することができる。キャプションモジュール17050は、サービス#6又は他のサービスをモニタリングし、トリガーを伝送するためのサービス#6又は他のサービスが選択されてトリガーモジュール17060に送られたか否か、またはキャプションテキストが処理されてスクリーン上に表示されたか否かを判断することができる。トリガーデータはトリガーモジュール17060に伝達することができる。他のキャプションサービスは、キャプションテキスト処理されてグラフィックプロセッサ17150に送られてもよい。
【0357】
トリガーモジュール17060は、トリガー、TPT及び/又はAMT情報をパーシングし、パーシングされたデータを処理することができる。トリガーモジュール17060は、トリガーのURI情報値を用いて、ネットワークプロトコルスタック17080を介してネットワークに接続することができる。URI情報値は、HTTPサーバーのアドレスであってもよい。トリガーモジュール17060は、TDO URLを獲得するためにTPTファイルコンテンツを分析することができる。また、トリガーモジュール17060は、AMTをパーシングしてデータを処理することができる。他の情報がパーシングを介して獲得されてもよい。AMTメッセージが受信された後、ウェブブラウザーに対応するTDO URLが所定時間によって伝達され、動作又は現在動作中のTDOが所定時間に中止されてもよい。これは、TDOアクションに該当し、トリガーモジュール17060は、ウェブブラウザーに命令を送って動作するようにすることができる。トリガーモジュールは、トリガーでの位置情報に基づいて、TPTパラメータテーブルから分離された複数のTPTパラメータブロックをそれぞれ含む複数のTPTパラメータテーブルセクションを収集し、複数のパラメータブロックを用いて、アプリケーション及び当該アプリケーションをターゲットとする対話型放送イベントに関するメタデータを含むTPTパラメータテーブルを形成するように構成される。
【0358】
ウェブブラウザー17070は、トリガーモジュール17060から命令語を受信し、UIモジュール17100からブラウザーキーコードを受信し、リモコン受信機17160からブラウザーキーコードを受信することができ、ネットワークプロトコルスタック17080と通信することができる。
【0359】
ネットワークプロトコルスタック17080は、トリガーモジュール17060及びウェブブラウザーと通信し、ネットワークインターフェース17090を介してサーバーに接続することができる。
【0360】
ネットワークインターフェース17090は、他の様々な装置の共通接続又はネットワークコンピュータ及び外部ネットワークの接続を実行する。ネットワークインターフェースは、サーバーに接続して、TDO、TPT、AMTなどをダウンロードすることができる。
【0361】
UIモジュール17100は、リモコン受信機17160を介して、リモコン17170を用いて視聴者によって入力された情報を受信することができる。受信された情報が、ネットワークを使用するサービスに関連すれば、ブラウザーキーコードがウェブブラウザーに伝達されてもよい。受信された情報が現在表示されるビデオに関連すれば、信号がグラフィックプロセッサ17150を介してディスプレイモジュール17140に伝達されてもよい。
【0362】
オーディオデコーダ17110は、MPEG−2 TSシステムデコーダ17040から受信されたオーディオ信号をデコーディングすることができる。その後、デコーディングされたオーディオ信号がスピーカーに送られて視聴者に出力されてもよい。
【0363】
ビデオデコーダ17120は、MPEG−2 TSシステムデコーダ17040から受信されたビデオ信号をデコーディングすることができる。その後、デコーディングされたビデオ信号がディスプレイモジュール17140に送られて視聴者に出力されてもよい。
【0364】
スピーカー17130は、オーディオ信号を視聴者に出力することができる。
【0365】
ディスプレイモジュール17140は、ビデオ信号を視聴者に出力することができる。
【0366】
グラフィックプロセッサ17150は、キャプションモジュール17050から受信されたキャプションテキスト及びUIモジュール17100から受信された視聴者入力情報に対してグラフィック処理を実行することができる。処理された情報はディスプレイモジュール17140に伝達されてもよい。
【0367】
リモコン受信機17160は、リモコン17170から情報を受信することができる。このとき、キーコードがUIモジュール17100に伝達されてもよく、ブラウザーキーコードがウェブブラウザーに伝達されてもよい。
【0368】
リモコン17170は、視聴者によって入力された信号をリモコン受信機17160に伝達する。リモコン17170は、仮想チャネルを変更するための視聴者の入力を受信することができる。また、リモコンは、アプリケーションに対して視聴者によって選択された情報を受信することができる。リモコン17170は、受信された情報をリモコン受信機17160に伝達することができる。このとき、当該情報は、所定の範囲を超えた距離で赤外線を用いて遠隔で伝達されてもよい。
【0369】
図18は、本発明の他の実施例に係る受信機の構造を示す図である。この場合、セットトップボックスは、放送信号を受信し、処理された放送信号をHDMI(high definition multimedia interface)または外部インターフェースを介して放送受信機に伝送することができる。
【0370】
受信機は、アンテナ18010、チューナー18020、セットトップボックス18030,VSB又はDVB復調器18040、HDMI18050、MPEG−2 TSシステムデコーダ18060、キャプションモジュール18070、トリガーモジュール18080、ウェブブラウザー18090、ネットワークプロトコルスタック18100、ネットワークインターフェース18110,UIモジュール18120、ACRモジュール18130、オーディオデコーダ18140、ビデオデコーダ18150、スピーカー18160、ディスプレイモジュール18170、グラフィックプロセッサ18180、リモコン受信機18190、リモコン18200を含むことができる。
【0371】
この場合、放送ストリームのビデオ及びオーディオは未処理データであり、キャプションストリームに含まれたトリガーは受信できなくてもよい。以下で本発明について詳細に説明する。
【0372】
ここで、セットトップボックス18030、HDMI18050、ACRモジュール18130を除外したモジュールは、役割の面で、
図17の実施例で記述したモジュールとほぼ同一である。
【0373】
セットトップボックス18030は、デジタルネットワークを介してビデオサーバーから受信した圧縮された信号を元のビデオ及びオーディオ信号に復元することができる。TVは、インターネットユーザインターフェースであってもよい。
【0374】
HDMI18050は、非圧縮デジタルビデオ/オーディオインターフェース標準であるHDMIであってもよい。HDMI18050は、セットトップボックス18030とAV装置(即ち、オーディオデコーダ18140及びビデオデコーダ18150)との間のインターフェースを提供することができる。
【0375】
ACRモジュール18130は、オーディオデコーダ18140及びビデオデコーダ18150からの放送コンテンツを自動で認識することができる。現在認識されたコンテンツに基づいて、クエリがトリガーモジュール18080及びネットワークインターフェース18110を介してACRサーバーに送られて、トリガーに対するTPT/AMTを受信することができる。
【0376】
明確性のために、本発明をそれぞれの添付図面を参照して説明したが、添付図面に示した実施例を併合することによって新しい実施例を設計することができる。また、前述した実施例を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体が当業者の必要によって設計されれば、これは、添付した請求項及びその同等の範囲に属し得る。
【0377】
本発明に係る装置及び方法は、前述した実施例の構成及び方法によって制限されない。また、前述した実施例は、全体的又は部分的に互いに選択的に結合可能な方式で構成されて、様々な変形を可能にすることができる。
【0378】
一方、本発明に係る方法をネットワークデバイスに備えられた、プロセッサが読み取り可能な記録媒体に、プロセッサが読み取り可能なコードとして具現することが可能である。プロセッサが読み取り可能な記録媒体は、プロセッサが読み取り可能なデータが格納されるいかなる種類の記録装置をも含む。プロセッサが読み取り可能な記録媒体の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光データ格納装置などがあり、また、インターネットを介した伝送などのようなキャリアウェーブの形態で具現されるものも含む。また、プロセッサが読み取り可能な記録媒体は、ネットワークで接続されたコンピュータシステムに分散されて、分散方式でプロセッサが読み取り可能なコードが格納され、実行されてもよい。
【0379】
本発明では、本発明の思想及び範囲から逸脱することなく様々な変更及び変形が可能であることは当業者に理解される。したがって、本発明は、添付した請求項及びその同等の範囲内で提供された本発明の変更及び変形を含むように意図される。
【0380】
そして、当明細書では、物の発明及び方法の発明が全て説明されており、両発明の説明は補充的に適用されてもよい。
【0381】
明確性のために、本発明をそれぞれの添付図面を参照して説明したが、添付図面に示した実施例を併合することによって新しい実施例を設計することができる。また、前述した実施例を実行するためのプログラムが記録されたコンピュータ読み取り可能な記録媒体が当業者の必要によって設計されれば、これは、添付した請求項及びその同等の範囲に属し得る。
【0382】
本発明に係る装置及び方法は、前述した実施例の構成及び方法によって制限されない。また、前述した実施例は、全体的又は部分的に互いに選択的に結合可能な方式で構成されて、様々な変形を可能にすることができる。
【0383】
一方、本発明に係る方法をネットワークデバイスに備えられた、プロセッサが読み取り可能な記録媒体に、プロセッサが読み取り可能なコードとして具現することが可能である。プロセッサが読み取り可能な記録媒体は、プロセッサが読み取り可能なデータが格納されるいかなる種類の記録装置をも含む。プロセッサが読み取り可能な記録媒体の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光データ格納装置などがあり、また、インターネットを介した伝送などのようなキャリアウェーブの形態で具現されるものも含む。また、プロセッサが読み取り可能な記録媒体は、ネットワークで接続されたコンピュータシステムに分散されて、分散方式でプロセッサが読み取り可能なコードが格納され、実行されてもよい。
【0384】
本発明では、本発明の思想及び範囲から逸脱することなく様々な変更及び変形が可能であることは当業者に理解される。したがって、本発明は、添付した請求項及びその同等の範囲内で提供された本発明の変更及び変形を含むように意図される。
【0385】
そして、当明細書では、物の発明及び方法の発明が全て説明されており、両発明の説明は補充的に適用されてもよい。
〔発明を実施するための形態〕
【0386】
発明を実施するための形態は、前述したように、発明を実施するための最良の形態で詳述された。