(57)【特許請求の範囲】
【請求項１】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
コマンドを発生する前記のステップは更に、
前記制御信号から放送プログラムの状態を決定するステップと、
放送プログラムの前記状態に応答して、インタラクティブ・アプリケーションの状態を決定するステップと、
インタラクティブ・アプリケーションの状態に適した少なくとも１つのコマンドを発生するステップとを備える方法。
【請求項２】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
前記放送プログラムがテレビジョン・ショーであり、
コマンドを発生する前記のステップは更に、
前記制御信号からコマーシャルが放送中であることを決定するステップと、
コマーシャルが放送中であることを決定することに応答して、前記テレビジョン・ショーと関連したインタラクティブ・アプリケーションの実行を中断するためのコマンドを発生するステップと、
コマーシャルがもはや放送中でないことを決定することに応答して、テレビジョン・プログラムと関連したインタラクティブ・アプリケーションの実行を再開するためのコマンドを発生するステップとを備える方法。
【請求項３】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
前記放送プログラムが第１のテレビジョン・ショーであり、
コマンドを発生する前記のステップは更に、
前記制御信号からコマーシャルが放送中であることを決定するステップと、
前記テレビジョン・ショーを終了するための制御信号を受信するステップと、
コマーシャルが放送中であることを決定することに応答して、第１のテレビジョン・ショーと関連したインタラクティブ・アプリケーションの実行を中断するためのコマンドを発生するステップと、
第１のテレビジョン・ショーがコマーシャルの後で放送中であることを決定することに応答して、第１のテレビジョン・ショーと関連したインタラクティブ・アプリケーションの実行を再開するためのコマンドを発生するステップとを備える方法。
【請求項４】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
前記放送プログラムが第１テレビジョン・ショーであり、
コマンドを発生する前記のステップは更に、
前記制御信号からコマーシャルが放送中であることを決定するステップと、
前記テレビジョン・ショーを終了するための制御信号を受信するステップと、
コマーシャルが放送中であることを決定することに応答して、第１のテレビジョン・ショーと関連した第１のインタラクティブ・アプリケーションの実行を中断するためのコマンドを発生するステップと、
第１のテレビジョン・ショーがコマーシャル休みにおける全てのコマーシャルの後で放送中であることを決定することに応答して、第１のインタラクティブ・アプリケーションの実行を再開するためのコマンドを発生するステップと
第２のテレビジョン・ショーが放送中であることを決定することに応答して、第１のインタラクティブ・アプリケーションを終了するためのコマンド、及び第２のテレビジョン・ショーと関連した第２のインタラクティブ・アプリケーションの実行を始めるためのコマンドを発生するステップとを備える方法。
【請求項５】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
制御信号を受信する前記ステップは、スケジューリング・システムにより制御される放送ソース装置をエミュレートすることにより制御信号を前記スケジューリング・システムから受信するステップを備える方法。
【請求項６】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
各制御信号が、放送プログラムと関連し、
制御信号を受信する前記ステップは、前記制御信号と関連した放送プログラムのためのインタラクティブ・アプリケーションをスケジューリングし、開始し、停止し及び取消するようインタラクティブ・アプリケーション・サーバに選択的に命令するため前記インタラクティブ・アプリケーション・サーバへの１組のコマンドに前記制御信号を翻訳するステップを備える方法。
【請求項７】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
前記制御信号は、スケジューリング・システムにより、プログラム識別子及び放送プログラムを放送すべきときを記述する情報を含む一連の放送プログラムを定義するプレイリストに応答して発生される方法。
【請求項８】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
受信した制御信号に対応する放送プログラムのタイプを決定するステップを更に備え、
インタラクティブ・アプリケーションのためのタイプを放送プログラムのタイプの関数として決定するステップを更に備える方法。
【請求項９】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
制御信号のための放送プログラムのタイプがテレビジョン・ショー、コマーシャル及び不明のもののうちのいずれであるかを決定するステップと、
前記放送プログラムのタイプに適したインタラクティブ・アプリケーションのタイプを決定するステップと
を更に備える方法。
【請求項１０】
前記スケジューリング・システムは、放送ソースを準備、開始及び停止するための各制御信号を与え、
放送プログラムに対する準備信号を受信することに応答して、前記放送プログラムと関連したインタラクティブ・アプリケーションをスケジューリングするためのコマンドを発生し、且つ前記放送プログラムと関連した前記インタラクティブ・アプリケーションを開始するためのコマンドを発生するステップと、
前記放送プログラムと関連したインタラクティブ・アプリケーションを開始するためのコマンドが既に発生された場合前記放送プログラムに対する受信された開始信号を無視するステップと、
前記放送プログラムに対する停止信号を受信することに応答して、前記放送プログラムと関連した前記インタラクティブ・アプリケーションを停止するための停止コマンドを発生するステップとを更に備える、請求項５又は７のいずれかに記載の方法。
【請求項１１】
前記スケジューリング・システムは、前記制御信号内の識別コードの存在又は不在によりテレビジョン・ショーとコマーシャルとを選択的に区別する制御信号を与え、
テレビジョン・ショー中におけるコマーシャルの放送を示す識別コードを含む制御信号を受信することに応答して、前記コマーシャルと関連したインタラクティブ・アプリケーションをスケジューリングするためのコマンドを発生し、前記インタラクティブ・アプリケーションを開始するためのコマンドを発生し、及び前記テレビジョン・ショーのためのインタラクティブ・アプリケーションが実行中であるか否かを決定し且つ前記テレビジョン・ショーのためのインタラクティブ・アプリケーションの実行を停止するためのコマンドを発生するステップと、
コマーシャルに対する識別コードを含まない制御信号を受信することに応答して、前記コマーシャルと関連したインタラクティブ・アプリケーションを取り消すためのコマンドを発生し、及び前記インタラクティブ・アプリケーションを開始するためのコマンドを発生するステップとを更に備える、請求項５又は７のいずれかに記載の方法。
【請求項１２】
前記スケジューリング・システムは、各放送プログラム及びその継続時間を識別するデータを含む制御信号を与え、
前記制御信号からの識別データ及び継続時間データを用いて、前記放送プログラムと関連したインタラクティブ・アプリケーションのスケジューリング、開始、停止及び取消を選択的に行うためのコマンド発生するステップを更に備える、請求項５又は７のいずれかに記載の方法。
【請求項１３】
インタラクティブ・アプリケーションの放送を制御する、コンピュータで実行される方法であって、当該コンピュータが放送送信側に設置されるものである方法において、
放送プログラムの放送を制御する制御信号を受信するステップと、
前記制御信号から放送プログラムのうちの１つと関連したインタラクティブ・アプリケーションが発見できたかを決定するステップと、
発見できた場合、放送プログラムの表示及び放送のうちのいずれかと同期してインタラクティブ・アプリケーションの実行及び終了を維持するためのコマンドを前記制御信号から発生するステップと、
発見できなかった場合、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生するステップと、
を備え、
インタラクティブ・アプリケーションと関連した各放送プログラムに対して、前記制御信号に応答して前記放送プログラムと関連した状態を介して遷移し、且つ前記放送プログラムの状態に対するインタラクティブ・アプリケーションのための所望の挙動と関連した選択された状態でコマンドを発生する第１の状態機械を維持するステップと、
放送プログラムと関連したインタラクティブ・アプリケーションに対して、前記放送プログラムの状態機械からのコマンドに応答して前記インタラクティブ・アプリケーションと関連した状態を介するその遷移を行い、且つ前記放送プログラムとの前記インタラクティブ・アプリケーションの同期実行を維持するためのコマンドを選択的に発生する状態機械を維持するステップと
を更に備える方法。
【請求項１４】
放送プログラムのためのインタラクティブ・アプリケーションの実行を制御するシステムにおいて、
放送ソースの動作を制御する制御信号のソースと通信可能に結合するオートメーション・サーバを備え、
前記放送ソースは放送プログラムを与え、
前記オートメション・サーバは、放送プログラムのための制御信号から放送プログラムの状態、及び前記放送プログラムと関連したインタラクティブ・アプリケーションを決定し、且つ当該放送プログラムの状態に応答してコマンドを発生して、放送受信機上でのインタラクティブ・アプリケーションの実行と、表示装置上への前記放送プログラムの表示と同期して前記表示装置上への前記インタラクティブ・アプリケーションの表示とを制御し、
前記コマンドを前記オートメション・サーバから受信し、且つ前記インタラクティブ・アプリケーションと、前記放送受信機への放送のためのインタラクティブ・アプリケーションの実行を制御するための信号とを与える放送サーバを更に備え、
前記オートメーション・サーバが、前記制御信号から、前記放送プログラムに関連したインタラクティブ・アプリケーションを決定できなかった場合に、前記オートメーション・サーバが、放送プログラムの表示及び放送のうちのいずれかの間、デフォールトのインタラクティブ・アプリケーションの実行及び終了を維持するコマンドを前記制御信号から発生する、
システム。
【発明の詳細な説明】
【技術分野】
【０００１】
［背景］
［Ａ．技術分野］
本発明は一般的に対話型テレビジョン（ｉｎｔｅｒａｃｔｉｖｅ  ｔｅｌｅｖｉｓｉｏｎ）の分野に関し、特にテレビジョン放送プログラムとの同期した対話性（ｉｎｔｅｒａｃｔｉｖｉｔｙ）の自動制御に関する。
【背景技術】
【０００２】
［Ｂ．発明の背景］
ほとんどの対話型テレビジョン・システムは、視聴者選択可能な対話性を有する既存の放送プログラムを増やすことを試みている。たとえば、対話性は、視聴者がセットトップ・ボックスや他の装置を同調させて対話性を受信して表示することができる、特別な対話型チャネル上での放送の場合がある。この対話性は通常、テレビジョン画面全体を占めるユーザ・インタフェースを備えている。このようにして、視聴者は普通のチャネルで従来の放送プログラムを見るか、対話型チャネルで対話性を用いるかを選択する。他の実施においては、対話性は任意のチャネルで作動される場合があるが、依然としてテレビジョン画面全体を占めている。しかし、対話型テレビジョンのこれらの実施は通常、対話性が、放送されているある放送プログラムと同期することを求めないが、これは、対話性が画面全体の上に重なって、放送プログラムの表示を妨げるからである。放送プログラムはテレビジョン・ショー、コマーシャル、プログラム案内などを含む。
【０００３】
別のバージョンの対話型テレビジョンは、テレビジョン画面の一部にのみ表示されて放送プログラムに付随する対話性を提供することを意図したものである。たとえば、放送ゲーム・ショーには、視聴者がショーの間に提示される問題に沿ってプレイして、それに対する回答を入力することを可能にする対話性が付随する場合がある。この対話性はテレビジョン画面の一部にのみ表示されるので、視聴者が放送プログラムを継続して見ることを可能にする。
【０００４】
放送プログラムに付随する対話性については、放送プログラムと同期して対話性を維持することが望ましい。このことは、対話性は、それが付随する放送プログラムが放送されているときはいつでも視聴者が利用可能であるべきことおよび、たとえばコマーシャル中断の間に放送プログラムが一時的に停止されてから再開される場合であっても、視聴者が作成したあらゆる状態情報、たとえばゲームにおける累積合計点が維持されるべきであることを意味する。
【０００５】
さらに、対話性が付随する放送プログラムが放送されていないかそれ以外に中断されているときには、それは表示されるべきではないことを意味する。特に、適切な同期は、ショーの間にコマーシャルが放送されているときには、テレビジョン・ショーについての対話性が表示されないことを必要とする。これは２つの理由による。第１に、コマーシャルは、ユーザがコマーシャルの間に広告される商品に関する商品情報を要求する様式など、それに付随するそれ独自の対話性を有する場合がある。そのため、コマーシャルの対話性は表示されなければならないが、コマーシャル（または一連のコマーシャル）が終わってテレビジョン・ショーが再開されたときに、ショーの対話性は再表示されなければならない。ショーの対話性の再表示は速やかであるべきであり、かつ、前述のように、コマーシャルが始まったときに利用可能であった状態情報を保持すべきである。たとえば、視聴者が対話型ゲームにおいて点数を累積していたのであれば、累積点数はショーの対話性が再開されたときに利用可能になるべきである。
【０００６】
第２に、コマーシャルがそれ独自の対話性を有していなくても、コマーシャルの間にショーの対話性を表示することは不適切である。これは、対話性がテレビジョン画面の一部の上に重なることによって、コマーシャルの部分を覆ってしまうからであるが、これはコマーシャルが放送されることに対して支払いを行った広告主には容認できないことである。また、ショーに関する対話性はコマーシャルとは関連づけられておらず、それが現れることは視聴者を混同させる場合がある。
【０００７】
したがって、様々な放送プログラムの対話性を正確に同期させて、他の放送プログラムによる放送プログラムの中断を調整する、対話型テレビジョン・システム、方法およびソフトウエア製品を提供することが望ましい。
【０００８】
対話型テレビジョン・システムとは別に、従来のテレビジョン放送システムは、放送プログラムが選択されて放送送信のために出力される方法に関する、様々な程度の自動および手動の制御を提供する。従来の放送システムは通常、放送スケジューリング・システム、様々な放送ソース（放送ソース）、データ挿入ユニットおよび送信機を含む。放送ソースは、送信機を介して放送される映像、音声または他のコンテンツを提供する。これらの放送ソースは、様々な種類のビデオ・テープデッキおよびオーディオ・テープデッキ、ビデオ・テープ・ライブラリ、デジタル音声／映像ソース、ライブ映像ソース、サーバ・コンピュータなどの場合がある。
【０００９】
スケジューリング・システムは一般的に、一連のネイティブ制御信号（ｎａｔｉｖｅ  ｃｏｎｔｒｏｌ  ｓｉｇｎａｌｓ）で放送システム内の放送ソースを制御する。これらの制御信号は様々な放送ソースに、それらの放送プログラムを開始、停止、ロードまたはそれ以外に管理することを命令する。一連の制御信号は、主としてどの放送ソースがどの時間に作動または作動停止するかを特定したプレイリスト（ｐｌａｙｌｉｓｔ）および、活動中の放送ソースが向けられるチャネル割当によって決定される。手動制御システムにおいては、人間のオペレータの手動操作に応じて制御信号が生成され、放送ソースの何れかを選択的に作動または作動停止させて、出力を適切なチャネルに割り当てる。
【００１０】
放送ソースからの放送データは送信機に渡される。送信機は選択されたチャネル上で放送信号を任意の数の放送受信機に送信する。選択されたチャネルに同調された、セットトップ・ボックスやコンパチブル・テレビジョンなどの放送受信機は、放送信号を受信して放送プログラムを表示する。
【００１１】
従来のスケジューリング・システムや手動制御は一般的に、それらの出力制御信号を放送ソースまたは類似の装置のみに提供する。これは、これらの制御信号がその放送ソースに特定の形式になっており、他の種類の放送機器を制御するようには設計されていないためである。たとえば、映像ソースを制御するスケジューリング・システムは、映像ソース装置に重要である制御信号を使用する。したがって、スケジューリング・システムからの既存の制御信号を用いて、放送プログラムとの同期対話性の自動制御をさらに容易にするシステムおよび方法を提供することが望ましい。これは、新しい自動制御方式が使用可能になった機器と共に動作させるための、スケジューリング・システムの変更が必要となることを回避するために望ましい。
【００１２】
放送の中には、放送信号に、たとえばテレビジョン・ショーとしてまたはコマーシャルとしての放送プログラムやその種類を識別するコードを挿入するものもある。よく用いられる一連のコードは、Ａｍｅｒｉｃａｎ  Ａｓｓｏｃｉａｔｉｏｎ  ｏｆ  Ａｄｖｅｒｔｉｓｉｎｇ  Ａｇｅｎｃｉｅｓ  Ｉｎｃ．の産業標準コーディング識別システム（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ｃｏｄｉｎｇ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  ｓｙｓｔｅｍ）（「ＩＳＣＩコード」）である。ＩＳＣＩコードは通常、民間放送のスポンサーシップまたは提携を示すために用いられる。しかし、これらのコードは、テレビジョン・ショー、コマーシャルまたは他の放送プログラムと関連づけられる場合がある対話性の実行を制御するためには現在用いられていない。したがって、放送信号に埋め込まれたこれらのコードおよび類似のコードを用いて、様々な放送プログラムの対話性の同期化を制御するシステムおよび方法を提供することが望ましい。
【００１３】
ある方式の対話型テレビジョンは、上記のような従来の放送システムと協働して有用な対話性を提供する。かかるシステムは、インタラクティブ・アプリケーションのデータベースを格納する放送サーバを含む。番組が放送されるときにそれらに付随するように、インタラクティブ・アプリケーションは様々な放送プログラムと選択的に関連づけられる。放送サーバは通常、所与の放送期間にそれ独自のプレイリストを受信して、その中のスケジューリング情報を用いて、現在放送されている特定の放送プログラムを識別する。放送サーバは現在放送中の番組（放送プログラム）と関連づけられたインタラクティブ・アプリケーションを検索して、これらのインタラクティブ・アプリケーションをデータ挿入ユニットに提供する。データ挿入ユニットは、インタラクティブ・アプリケーションからのデータを放送ソースからの放送データと組み合わせて放送信号を生成するが、ここでその中にはそのインタラクティブ・アプリケーションが放送プログラムに付随している。組み合わされた放送信号は選択されたチャネル上で送信機によって送信される。そのチャネルに同調された放送受信機は何れも、放送プログラムおよび付随するインタラクティブ・アプリケーションの両方を含む放送信号を受信する。放送受信機は放送プログラムを表示して、インタラクティブ・アプリケーションを復号して実行し、それをテレビジョン画面に適宜表示する。放送サーバはさらに、コマンドを放送受信機に送信して、プレイリスト中の予め定められた命令に従ってあるインタラクティブ・アプリケーションの実行を選択的に開始、停止、中止または再開することができる。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかし、以前には放送サーバは、既存のスケジューリング・システムと一体化されて、そのスケジューリング・システムからの制御信号に基づいてインタラクティブ・アプリケーションの制御を自動化するようにはなっていなかった。この点に関する困難の１つは均一性の欠如であり、上記のように、様々な種類のスケジューリング・システムを用いてそれらの放送ソースを制御する様々な制御信号は、放送ソースとインターフェースするように設計されている。このシステムは以前にはＩＳＣＩコードなどに応答して対話性を制御するようにもなっていなかった。したがって、スケジューリング・システムと放送サーバとの間の有効なインタフェースを介して、同期的なインタラクティブ・アプリケーションを提供することが望ましい。
【課題を解決するための手段】
【００１５】
［発明の概要］
本発明は、他の放送プログラムおよび／または対話性による放送プログラムおよびその対話性の中断に左右されることなく、個々の放送プログラムとの対話性の同期的表示を維持するために、対話性の自動化された制御を提供する。
【００１６】
本発明の一実施形態によれば、通常は放送ソース（またはサブタイトラ（ｓｕｂｔｉｔｌｅｒ）などの類似の装置）を制御するためのみに用いられる制御信号が受信されて処理されて、放送サーバにコマンドを出力する。これらのコマンドは、放送受信機で対話性の実行を制御するように、放送サーバに選択的に命令する。そして、順に放送サーバは放送受信機にコマンドを送信し、放送受信機はそのコマンドを実行して対話性を制御する。
【００１７】
本発明によって用いられる制御信号は、自動モードまたは手動モードで動作する従来の放送スケジューリング・システムからまたは、ビデオ・テープのように放送プログラムと共に信号を符号化した予め記録されたソースからなど、様々なソースから来る場合がある。
【００１８】
上記のように、制御信号は通常、特定の種類の映像、音声または他の出力装置などの放送ソースを特に制御するようにフォーマットされている。また、制御信号はこれらのソースの放送を制御するだけで、対話性の実行に対する直接的または固有の関係は有していない。したがって、本発明は、制御信号を放送サーバに受容可能なコマンドに翻訳して、対話性の実行を選択的に制御する。
【００１９】
本発明は、放送サーバからの状態情報を用いて、様々な放送受信機における対話性の実行の現在状態を判断してもよい。この状態情報は、スケジューリング・システムから、状況が変われば不透明な（ｏｐａｑｕｅ）制御信号に応答して、異なったコマンドが生成されることを可能にしている。
【００２０】
本発明は、多様な異なった種類の放送スケジューリング・システムのために、対話性の自動化された同期制御を提供する。一般的に、様々な種類のスケジューリング・システムは、それらの制御信号で異なった量と種類の情報を提供する。
【００２１】
特定の基本的スケジューリング・システムは、放送プログラムを開始、停止または準備することを示す制御信号を提供するだけであり、この信号はその放送プログラム用の放送プログラムＩＤを含む場合もある。この種類のスケジューリング・システムについて、放送プログラム（たとえば、テレビジョン・ショーまたはコマーシャル）の識別を用いて、放送プログラム用の付随するインタラクティブ・アプリケーションがあるかどうかを判断し、タイミング情報を用いて、インタラクティブ・アプリケーションを開始、停止、中止または再開すべきかどうかを判断する。適切なコマンドおよびデータを放送サーバに提供して、インタラクティブ・アプリケーションの放送を選択的に制御する。
【００２２】
別の種類のスケジューリング・システムは、テレビジョン・ショーの間に放送されているコマーシャル・プログラムを識別するために用いることができるが、それ以外にはテレビジョン・プログラム（テレビジョン番組）自体を識別しない制御信号を提供する。本発明はこの情報を用いて、コマーシャルと関連づけられた対話性を識別し、それによって、コマーシャルが放映されるテレビジョン・ショーに付随する場合がある対話性を選択的に中止および再開するコマンドと共にコマンドを放送サーバに提供して、識別された対話性の放送を達成する。
【００２３】
さらに別の種類のスケジューリング・システムは、放送プログラムをその継続時間と共に識別する制御信号を提供する。この場合に、本発明は、放送プログラムおよびその間に現れるコマーシャルに適切な対話性を、選択的に中止および再開することができる。
【００２４】
一実施形態において本発明は、既存の従来の放送スケジューリング・システムとインタラクティブ・アプリケーションのサーバ（および他の形態の対話性）との間をインタフェースして、スケジューリング・システムによって出力された制御信号に応答して、放送プログラムに付随する場合がある対話性の実行を選択的に制御する、オートメーション・サーバを提供する。
【００２５】
本発明によれば、オートメーション・サーバは更に、放送サーバとインタフェースして、インタラクティブ・アプリケーションの実行を選択的に開始、取消、中止または再開するコマンドを放送サーバに提供する。スケジューリング・システムからの制御信号を用いて、オートメーション・サーバはどの放送プログラムが放送されているかを判断し、各放送プログラムの状態に関する状態情報を生成して維持する。放送プログラムおよびそれらに関連づけられた対話性（もしあれば）を識別する情報を用いて、オートメーション・サーバは各インタラクティブ・アプリケーションの状態に関する状態情報も維持する。この状態情報とスケジューリング・システムからの制御信号とを用いて、オートメーション・サーバは適切なコマンドを判断して、放送プログラムとインタラクティブ・アプリケーションとの間の同期を維持するために放送サーバに送信する。
【００２６】
この同期的な挙動は、対話性がそれに関連づけられた放送プログラムが表示されるときに表示され、他のときには表示されないことにつながる。たとえば、本発明は、１つまたは複数のコマーシャル中断（そのそれぞれが多数のコマーシャルを含む場合があり、それらのコマーシャルはそれら独自の対話性を有する場合がある）によって区分されたテレビジョン・ショーに関する、インタラクティブ・アプリケーションの適切な同期的表示を提供する。本発明は、スケジューリング・システムの制御信号から、放送またはテレビジョン・ショーの間にコマーシャル中断がいつ発生したかを検出する。そして本発明は、コマーシャル中断が終了した後に同じテレビジョン・ショーのセグメントが他にないと安全に判断できるようなときまで、対話性を取り消すことなく、テレビジョン・プログラムの対話性の実行を中止（停止）する場合がある。コマーシャル中断の間に、コマーシャルに適切な対話性が実行される。テレビジョン・ショーが再開される、すなわちテレビジョン・ショーの別のセグメントが放映されるのであれば、本発明は、前のセグメントと現在のセグメントとが関連していることを検出して、中止された対話性を再開して、コマーシャル中断の前に生成されていた場合があるあらゆる状態情報（たとえば、現在のゲーム点数、様式データなど）を再生する。コマーシャル中断の後にテレビジョン・ショーが再開されず、新しいテレビジョン・ショーが放送されるのであれば、本発明は再度放送プログラムのこの変化を検出して、前のテレビジョン・ショーに関する対話性を終了して、次のテレビジョン・ショーに関する対話性を開始する。
【００２７】
本発明の一実施形態において、オートメーション・サーバは複数のチャネル・インタフェースを含み、そのそれぞれが特定のチャネルに関する制御信号を受信して管理する。各チャネル・インタフェースはトランスレータ・モジュールおよびイベント・マネジャを含む。トランスレータ・モジュールは、チャネル上の放送プログラムに関連したスケジュール・システムからのネイティブ制御信号を、一定な一組のアトミック・コマンドに翻訳する。トランスレータは、各放送プログラムのライフサイクルに関する状態情報も維持する。イベント・マネジャはアトミック・コマンドを受信して、放送プログラムの対話性を制御するためにそれらを処理して放送サーバへのコマンドにする。イベント・マネジャは、チャネル上のインタラクティブ・アプリケーションのライフサイクルに関する状態情報を維持して、この状態情報から、放送サーバへの適切なコマンドを生成する。別個のトランスレータおよびイベント・マネジャの使用は、本発明が同じイベント・マネジャを保持しながら、異なったトランスレータの使用によって異なったスケジューリング・システムと容易にインタフェースすることを可能にする。また、トランスレータ・モジュールとイベント・マネジャとの分離は、オートメーション・サーバが、トランスレータ・モジュールの変更を必要とすることなく、新しい種類のイベント・マネジャを作成することにより異なった種類の放送サーバと潜在的にインターフェースすることを可能にする。この特徴は、オートメーション・サーバが、将来開発される場合がある様々な基準に定められた対話性と協働することを可能にする。
【００２８】
本発明のコンテキストにおいて、対話性は、放送プログラムとして同じ信号に入れて送信され且つ放送受信機において実行によりインタラクティブ・アプリケーション、あるいは、放送信号を受信する他のエンドユーザ装置、又はケーブル・ヘッド・エンドか他の放送ソースで実行されるインタラクティブ・アプリケーション、従来のコンピュータ上で実行されて、放送プログラムと同期してインターネットまたは他のネットワーク上で放送されるインタラクティブ・アプリケーションまたは、放送プログラムから非同期に提供されて必要に応じて実行されるインタラクティブ・アプリケーションなど、あらゆる形式のインタラクティブ・アプリケーションによって提供される場合がある。
【００２９】
本発明のオートメーション・サーバは、ソフトウエア製品としてまたは、専用ハードウエアおよびソフトウエアを含むより大きいシステムまたは装置の一部として実施される場合がある。本発明は、放送プログラムと関連づけられた対話性の実行を制御する様々な方法として実施される場合もある。
【図面の簡単な説明】
【００３０】
【図１】本発明に係るシステムの図である。
【図２】放送受信機の図である。
【図３】インタラクティブ・アプリケーションを受信して実行する全体的プロセスのフローチャートである。
【図４】本発明の実施形態におけるオートメーション・サーバの図である。
【図５】トランスレータ・モジュールおよびイベント・マネジャを含むチャネル・インタフェースの図である。
【図６】インタフェース・マネジャのライフサイクル図である。
【図７】トランスレータ・モジュールおよびイベント・マネジャを含むチャネル・インタフェースのライフサイクル図である。
【図８】理想的トランスレータに関する状態機械図である。
【図９】トランスレータ・モジュールのマッピング・ロジックのフローチャートである。
【図１０】イベント・マネジャのマッピング・ロジックのフローチャートである。
【図１１】イベント・マネジャの状態機械図である。
【図１２】コマーシャルに対する放送プログラムの対話性のセグメント化を示したイベント・トレースである。
【発明を実施するための形態】
【００３１】
［好適な実施形態の詳細な説明］
図１を参照すると、本発明に係るシステムの図が示されている。図１に示したシステムは、依然として本発明の特徴および利益を提供しながら、より大きくより複雑なシステムに組み込まれる場合があることが理解されるであろう。
【００３２】
［Ａ．システム概略］
一般的に、システム１００は、スケジューリング・システム１０６、オートメーション・サーバ１０８，放送サーバ１１０、トラフィック・システム１０４、放送プログラム・ソース１０２、データ挿入ユニット１１６および送信機１１８を備えている。これらの構成要素は通常、ケーブル・ヘッド・エンドでケーブル・オペレータによって使用される実施形態において用いられる。他の設備における本発明の実施は確実に実現可能である。放送受信機（ＢＲ）１２０は、視聴者の家庭や事務所などにおいて遠隔的に分散されている。番組を受信する１人または複数人の者を、「加入者」または「視聴者」と呼ぶ。
【００３３】
システム１００は多数の放送局１１４と協働する。放送局１１４は、放送される番組素材をＢＲ１２０に提供する。本明細書中で用いているように、「放送局」１１４は、放送信号で搬送されるプログラムを提供するあらゆる事業体である。「プログラム」は放送の独立したセグメントである。そのため、本明細書中で定義しているように、プログラムはテレビジョン・ショー、コマーシャル、公共サービスの発表やペイパービュー・イベントなどを含む。放送局はテレビジョン・ネットワークならびに、コマーシャルを制作する広告主やぺイパービュー・プロバイダ、ケーブル・ネットワークなどを含む。
【００３４】
放送局１１４は、必要に応じて音声および他のデータを含む放送映像データを、プログラム素材を含むか生成する、ビデオ・カセット・プレーヤ、ビデオ・レーザディスク・プレーヤ、サブタイトラ、ビデオ・サーバ、文字生成器、オーディオ・カート機、スチル・ストア（ｓｔｉｌｌ  ｓｔｏｒｅｓ）、デジタル・エフェクト・システム(ｄｉｇｉｔａｌ  ｅｆｆｅｃｔｓ  ｓｙｓｔｅｍｓ)、ライブ・スタジオ・フィード（ｌｉｖｅ  ｓｔｕｄｉｏ  ｆｅｅｄｓ）やライブ・リモート・フィールド・フィード（ｌｉｖｅ  ｒｅｍｏｔｅ  ｆｉｅｌｄ  ｆｅｅｄｓ）（たとえば、ライブ・スポーツ・イベントにおけるカメラからの）のバンクなどの、様々な放送プログラム・ソース１０２に提供する。放送映像データは、放送に必要になるまで放送プログラム・ソース１０２に記憶される。適当な放送プログラム・ソースは、Ａｎａｈｅｉｍ，  ＣａｌｉｆｏｒｎｉａのＯｄｅｔｉｃｓ，  Ｉｎｃ．製のＴＣＳ４５  Ａｕｔｏｍａｔｅｄ  Ｖｉｄｅｏ  Ｌｉｂｒａｒｙ、Ｐａｌｏ  Ａｌｔｏ，  ＣａｌｉｆｏｒｎｉａのＨｅｗｌｅｔｔ−Ｐａｃｋａｒｄ製のＭｅｄｉａＳｔｒｅａｍ  Ｓｅｒｖｅｒおよび類似の装置またはシステムを含む。
【００３５】
トラフィック・システム１０４は、放送プログラム・スケジュールを放送局１１４から受信する。放送プログラム・ソースは、放送局１１４によって提供されたどのプログラムがどの時間にどのチャネルで放送されるかを定める。放送局１１４によっては、コマーシャル・プログラムが放送プログラム・ソースに含まれる場合もあり、スケジュールの時間枠が他の放送局１１４によって提供されるコマーシャルの挿入のために提供される場合もある。トラフィック・システム１０４は、多数の異なった放送局からの放送プログラム・ソースを、たとえばケーブル・オペレータによって現場で生成された放送スケジュール情報と共に統合して、プレイリスト１１３を作成する。適当なトラフィック・システム１０４はＣｏｌｕｍｂｉｎｅ  ＪＤＳ  Ｓｙｓｔｅｍｓ，  Ｉｎｃ．製のＣｏｌｕｍｂｉｎｅ  ＪＤＳである。
【００３６】
一実施形態において、このプレイリスト１１３は放送に先だって作成され、特定の時間に放送されるプログラムを識別する。プレイリスト１１３は、各プログラム、その開始および終了の時間、チャネルおよびネットワークの割当を識別するのに十分な情報を含むことが好ましい。また、特定の時間における各プログラムについて、そのプログラムを出力することになる特定の放送プログラム・ソース１０２を識別する情報がある場合もある。
【００３７】
スケジューリング・システム１０６は、手動または自動の制御部品あるいは両方ならびに適当な切替装置を含む場合もある。スケジューリング・システム１０６はさらに、どの放送プログラムがどの時間にどの放送プログラム・ソース１０２を用いて放送されるかを記載したプレイリスト１１３を受信する。その手動および／または自動の部品を介して、スケジューリング・システム１０６は、どのプログラム・ソースが任意の所与の時間にどの放送媒体に出力されるかを制御するために、放送プログラム・ソースを個々の放送媒体に結合する。より特定的には、スケジューリング・システム１０６は、様々な放送プログラム・ソース１０２向けにフォーマットされ、通常はそれらにのみ重要である、ネイティブ制御信号を出力する。自動および手動の部品の種類および複雑さは様々であり、そのためそれらが提供する制御信号の種類も同様である。スケジューリング・システム１０６の手動部品は、必要に応じて放送プログラム・ソース１０２を手動で選択および作動し、同様にオートメーション・サーバ１０８によって受信される対応する制御信号を生成するためにオペレータによって用いられる。
【００３８】
オートメーション・サーバ１０８への制御信号のさらに別のソースは、放送ソース１０２における放送データと共に含まれる、予め記録された制御信号を含む。そのため、特定の放送プログラムに適した制御信号を予め生成して、適切な時間に放送プログラムのビデオ・テープに記憶することができる。このような制御信号の記憶は、放送プログラムを記憶するあらゆる媒体に行うことができる。あるいは、制御信号はそれらの放送プログラムとは別の媒体に予め記録して記憶するが、それらと共に再生されるようにしてもよい。あるいは、制御信号は、たとえばＶＩＴＣタイム・コード生成器またはＮＯＲＰＡＫデータ挿入ユニットを用いて、リアルタイムで放送データに埋め込んでもよい。
【００３９】
また、制御信号を得る方法は、スケジューリング・システム１０６からのプッシュ（ｐｕｓｈ）またはスケジューリング・システム１０６をポーリングすることの何れによっても行うことができる。
【００４０】
放送サーバ１１０は、本明細書中で説明している機能性を提供する、１つまたは複数のソフトウエア・プログラムを実行するコンピュータ・システムであることが好ましい。適当な放送サーバは、Ａｌａｍｅｄａ，  ＣａｌｉｆｏｒｎｉａのＷｉｎｋ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ，  Ｉｎｃ．製のＷｉｎｋ  Ｂｒｏａｄｃａｓｔ  Ｓｅｒｖｅｒである。放送サーバ１１０はインタラクティブ・アプリケーション・データベース１１２を含む。インタラクティブ・アプリケーション・データベース１１２は、様々な遠隔的に分散されたＢＲ１２０に放送される、インタラクティブ・アプリケーションまたは他の形態の対話性を記憶する。インタラクティブ・アプリケーションおよび他の形態の対話型コンテンツは、放送局１１４または他のプログラム供給者によってインタラクティブ・アプリケーション・データベース１１２に付加されてもよく、安全なネットワーク・リンクまたは他の送信媒体によってデータベース１１２に送信されてもよい。データベース１１２内のフィールドは、インタラクティブ・アプリケーションを、たとえば特定の放送局、ネットワーク、チャネル、放送プログラムおよび／または放送時間と関連づける。また、データベース１１２内の各インタラクティブ・アプリケーションは、それを識別できる独特のインタラクティブ・アプリケーション識別コードを有することが好ましい。放送プログラム識別コードとのインタラクティブ・アプリケーション識別コードの関連づけ（放送ソースによって用いられるような）は、放送サーバ１１２がプログラム識別コードを受信したことに応答してインタラクティブ・アプリケーションを選択的に検索することを可能にする。参照を容易にするために、「インタラクティブ・アプリケーション」という用語は、本明細書中で説明しているか開示されたものに均等な放送プログラム用のあらゆる形態の対話性を包含する。
【００４１】
本発明の一実施形態において、データベース１１２に記憶されたインタラクティブ・アプリケーションをコンパクト・コミュニケーション・プロトコルによって説明する。コンパクト・プロトコルは効率的な方法でシステム部品間でコンパクトな一組の情報およびコマンドを放送するように設計されており、それにより、垂直帰線消去期間（「ＶＢＩ」）などの低帯域幅伝達の使用を可能にする。本発明の好適な実施形態は、本明細書中で説明するコンパクト・プロトコルを用いるが、インタラクティブ・アプリケーションは、たとえばハイパーテキスト・マークアップ言語（「ＨＴＭＬ」）、拡張可能なマークアップ言語（「ＸＭＬ」）、ＳＵＮ  ＭＩＣＲＯＳＹＳＴＥＭＳ  ＩＮＣ．のＪＡＶＡ言語またはＨＴＭＬベースの対話型テレビジョン・プロトコルＡＴＶＥＦを含む、他のプロトコルによって記述されてもよい。裏付け定義（ｓｕｐｐｏｒｔｅｄ  ｄｅｆｉｎｉｔｉｏｎｓ）、スクリプトおよびコマンドを含む、インタラクティブ・アプリケーションに適した１つのコンパクト・プロトコルの詳細な説明は、「機密情報をルート付ける方法及び装置（Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｒｏｕｔｉｎｇ  Ｃｏｎｆｉｄｅｎｔｉａｌ  Ｉｎｆｏｒｍａｔｉｏｎ）」という名称の米国特許第５，６８９，７９９号に記載されており、参照することにより本明細書に援用される。以下でさらに説明しているように、インタラクティブ・アプリケーションはそれら自体が、放送受信機１２０の動作を構成および制御する実行可能なコードおよびデータからなるソフトウエア製品である。
【００４２】
複数の放送サーバ１１０がある場合もあり、各放送サーバ１１０は特定の地域、一群の放送局または一群の加入者にサービスを提供する。一実施形態において、各放送サーバ１１０は独特なサーバ識別コードによって識別される。
【００４３】
一般的に、放送サーバ１１０は、どのインタラクティブ・アプリケーションを特定の時間に特定のチャネルで放送すべきかを判断し、その特定のチャネルおよび時間または放送プログラム識別コードに対応するインタラクティブ・アプリケーションをデータベース１１２から検索して、放送用のインタラクティブ・アプリケーションを作成する。
【００４４】
様々な時間やチャネルなどでどのインタラクティブ・アプリケーションが放送されるかを判断するために、放送サーバ１１０はトラフィック・システム１０４から放送される放送プログラムのプレイリスト１１３を受信する。放送サーバ１１０はこの情報を用いて、各放送プログラムに付随する、対応するインタラクティブ・アプリケーション（もしあれば）を識別してデータベース１１２から検索する。放送サーバ１１０はさらにコマンドを出力し、これらはＢＲ１２０に放送されて、ＢＲ１２０に受信されるか既に受信されたそのメモリに常駐する場合があるインタラクティブ・アプリケーションを、開始、停止、取消、中止または再開するようにＢＲ１２０に命令する。
【００４５】
放送サーバ１１０は検索したインタラクティブ・アプリケーションを必要に応じてフォーマットするなどして、放送信号への挿入のために準備する。放送局１１４から受信したプレイリスト１１３を用いて、放送サーバ１１０はインタラクティブ・アプリケーション１１５および／または様々なコマンドをデータ挿入ユニット（「ＤＩＵ」）１１６に渡して、プログラムの放送と同時にインタラクティブ・アプリケーション１１５を放送データ１１７に組み込む。
【００４６】
ＤＩＵ１１６はインタラクティブ・アプリケーション１１５または放送サーバ１１０からのコマンドおよび、インタラクティブ・アプリケーション１１５に対応する放送プログラムを搬送する放送信号すなわちフィード（ｆｅｅｄ）を受信する。放送フィードは放送プログラム・ソースである放送局１１４から直接、あるいは、放送局がフィードを提供しない場合には、ネットワーク、ケーブル・オペレータまたはローカル・テレビジョン局などの第三者から受信する場合がある。ＤＩＵ１１６はインタラクティブ・アプリケーション１１５およびコマンドを、放送データ１１７として、放送局フィードへの挿入およびそれと共に行う送信に適したフォーマットに変換する。ＤＩＵ１１６は多数の放送局からフィードを受信してもよく、別個のインタラクティブ・アプリケーションを各フィードに挿入できる。同様に、ＤＩＵ１１６は、別個のインタラクティブ・アプリケーションを同じまたは異なった放送局１１４からの多数のチャネルに同時に挿入できる。
【００４７】
ＤＩＵ１１６は、インタラクティブ・アプリケーション、コマンドおよび放送プログラムを含む放送データ１１７を放送媒体に挿入する。放送媒体はインタラクティブ・アプリケーション１１５を搬送するために用いられる周波数スペクトルである。一実施形態において、放送媒体は、ナショナル・テレビジョン・スタンダード・コミティー（「ＮＴＳＣ」）基準に準拠した標準アナログテレビ信号であり、ＶＢＩはインタラクティブ・アプリケーションを放送するためにトランスポートとして用いられる。トランスポートはインタラクティブ・アプリケーション１１５を搬送する放送媒体の特定の部分である。別の実施形態において、放送媒体は１つまたは複数のＭＰＥＧ２ビデオ・サービスを含む標準ＭＰＥＧ２デジタル・ビデオ・マルチプレックスであり、このマルチプレックス内のＭＰＥＧ２エレメンタリ・ストリーム（単数または複数）はトランスポートとして用いられる。ＤＩＵ１１６はアナログまたはデジタル映像ソースと共に動作してもよく、その代わりに、放送局１１４または放送ソース１０２を様々な送信機１１８に直接接続する広域ネットワークへのインタフェースとして動作してもよい。
【００４８】
一実施形態において、ＤＩＵ１１６は従来の方法を用いて、インタラクティブ・アプリケーションを定めるデータを放送フィードのＶＢＩに挿入する。ノース・アメリカン・ブロードキャスト・テレテキスト・スタンダード（ＥＩＡ−５０６）は、ＶＢＩの１つまたは複数の線においてデータを送信する方法およびプロトコルを定めている。しかし、テレビジョン・プログラムとは別にインタラクティブ・アプリケーション１１５を放送するものを含め、多種多様な他のトランスポート（移送）機構が利用可能である。かかるトランスポート機構は、テレビジョン周波数スペクトルの未使用部分でインタラクティブ・アプリケーション１１５を送信する帯域外送信機および、テレビジョン周波数スペクトルの外でインタラクティブ・アプリケーション１１５を送信する従来の周波数変調（「ＦＭ」）無線送信機を含む。別の実施形態において、ＤＩＵは従来の方法を用いて、データをＭＰＥＧ２マルチプレックス内のエレメンタリ・ストリームに挿入する。
【００４９】
一実施形態においては、ハミング符号などの誤りチェック符号または誤り訂正符号がデータと共に挿入される。一実施形態においては、ＤＩＵ１１６はデータをハミング符号に変換し、別の実施形態においては、ＤＩＵ１１６によって放送サーバ１１０から受信されたデータは既に符号化されている。
【００５０】
ＤＩＵ１１６は、放送サーバ１１０からの、あらゆる挿入されたインタラクティブ・アプリケーションまたはコマンドを含む放送フィードを送信する送信機１１８に結合されている。一実施形態において、送信機１１８はフィードをローカル・アップリンク受信機に送信する衛星アップリンクであり、ローカル・アップリンク受信機はケーブルを介してフィードをＢＲ１２０に配信する。別の実施形態において、送信機１１８は従来のケーブル・システム・ヘッドエンド増幅器である。さらに別の実施形態において、送信機１１８は従来のテレビジョン放送送信機または高品位テレビジョン・デジタル送信機である。またさらに別の実施形態において、送信機１１８は、ＷＡＮ接続、インターネットまたは他の公的／私的ネットワーク上で放送データを送信することができる。
【００５１】
別の実施形態において、ＤＩＵ１１６はインタラクティブ・アプリケーション１１５を、放送プログラムが放送される前にその放送プログラムに挿入する。たとえば、ＤＩＵ１１６はインタラクティブ・アプリケーションをテレビジョン・コマーシャルのソース・コピーに挿入してもよい。したがって、インタラクティブ・アプリケーションはコマーシャルが放送されるときはいつでも放送される。この実施形態において、放送サーバ１１０は、インタラクティブ・アプリケーションの検索をプレイリストに列挙されたスケジュールと同期させる必要はない。しかし、オートメーション・サーバ１０８は、コマーシャルの放送中のかかる放送されたインタラクティブ・アプリケーションおよび、コマーシャルが放送されるテレビジョン・プログラム中に放送されるあらゆるインタラクティブ・アプリケーションの動作の同期化を制御するために依然として用いられるであろう。
【００５２】
送信方法および挿入時間にかかわらず、インタラクティブ・アプリケーションを含む放送データ１１７は加入者のＢＲ１２０によって受信される。単一のＢＲ１２０のみを図１に示したが、典型的な実施形態においては、本明細書中で説明しているように放送データ１１７を受信して応答する、何百、何千というＢＲ１２０があることが理解される。典型的な実施形態においては、ＢＲ１２０は同軸ケーブルを介してデータ１１７を受信するテレビジョン・セットトップ・ボックスである。また、ＢＲ１２０はテレビジョンに一体化してもよい。さらに、ＮＴＳＣ放送受信機、高品位テレビジョン・デジタル受信機、ビデオ・カセット・レコーダまたはＦＭ無線受信機を含む他の放送受信機を用いることもできる。
【００５３】
上記のアーキテクチャは多数の有用な実施形態を支持し、それらの実施形態においてオートメーション・サーバ１０８は放送サーバ１１０を制御して、放送プログラムとの同期的挙動を達成するために様々なタイプおよびフォーマットのデータを送信する。まず、放送サーバ１１０は、インタラクティブ・アプリケーションとは別に、またはそれらに加えて、他の種類のデータを送ってもよいことに留意されたい。たとえば、放送サーバはコンピュータ・プログラムまたは音声／映像データなどのデータを提供してもよい。放送サーバは、以前に放送受信機に送信されたインタラクティブ・アプリケーションに、データ、様式、コードまたはトリガを提供してもよい。
【００５４】
これらの様々なタイプのデータは、オートメーション・サーバ１０８からのコマンドに応答して、本発明に従って送信してもよい。たとえば、放送サーバは、インタラクティブ・アプリケーションおよびそれに関連づけられた放送プログラムが現れる時間に十分先立って、インタラクティブ・アプリケーションを放送受信機に送出してもよい。そして、オートメーション・サーバ１０８からのコマンドに応答して、放送サーバ１１０は、放送プログラムと同期して実行するように、以前にロードされたインタラクティブ・アプリケーションの実行をトリガするトリガ・コードを送出してもよい。同様に、オートメーション・サーバ１０８に応答して、放送サーバ１１０は様式または他のデータを送信して、既に放送受信機に常駐しているインタラクティブ・アプリケーションの特徴、ユーザ・インタフェースまたは機能性を更新または修正してもよい。これは、オートメーション・サーバ１０８が、スケジューリング・システム１０６からの制御信号に応答して、インタラクティブ・アプリケーションを操作または変更することを可能にする。
【００５５】
放送サーバ１１０は、やはりオートメーション・サーバ１０８からのコマンドに応答して、テキスト、グラフィクス、画像、ユニフォーム・リソース・ロケータ（ＵＲＬ）、ユニフォーム・リソース・アイデンティファイア（ＵＲＩ）、ＨＴＭＬ、ＸＭＬ、ＡＴＶＥＦ、ＪＡＶＡアプレットなどのハイパーメディア・データあるいは他の種類またはフォーマットのデータを送ってもよい。たとえば、テレビジョン・ショーの開始を示す制御信号を提供するスケジューリング・システム１０６に応答して、オートメーション・サーバ１０８は放送サーバ１１０に、ウェブサイトまたはウェブページへのＵＲＬを放送受信機に送信するように命令してもよく、放送受信機は、ウェブサイトのテレビジョン・ショーとの同期的表示のために、ユーザへの表示のためにウェブサイトをロードする。
【００５６】
オートメーション・サーバ１０８からのコマンドに応答して放送サーバ１１０によって送られる場合があるこれらまたは他の種類のデータのいずれについても、インタラクティブ・アプリケーション・データベースまたはその類似物は、放送プログラム用の放送プログラム識別子と関連したデータを記憶する。これは、オートメーション・サーバ１０８が、スケジューリング・システム１０６の制御信号から放送プログラム識別子を与えられると、送られる適切なデータを判断することを可能にする。
【００５７】
［Ｂ．放送受信機］
図２は、本発明の実施形態によるＢＲ１２０の実施形態を示している。一実施形態において、ＢＲ１２０はＧｅｎｅｒａｌ  Ｉｎｓｔｒｕｍｅｎｔ  ＣＦＴ−２２００  ＣＡＴＶセットトップ・デコーダである。ＢＲ１２０は送信機１１８から放送データ１１７を受信するチューナ２０２を備えている。一実施形態において、チューナ２０２は従来のケーブル・テレビジョン・チューナである。他の実施形態においては、チューナはテレビジョン放送チューナ、ＦＭ無線チューナ、デジタル・チューナまたは他の何らかの形態のチューナである。さらに別の実施形態においては、適切なハードウエアおよびソフトウエアを備えたパーソナル・コンピュータが、ケーブル、インターネットおよび衛星を含む様々な種類の送信チャネル上で受信された放送プログラムを表示するように機能してもよい。図２に示した実施形態は、ＢＲ１２０内の、通常はテレビジョンであるディスプレイ２１８を示している。上記のように、ディスプレイ２１８はＢＲ１２０の外部に設けてもよい。
【００５８】
ＢＲ１２０は、放送データ１１７からインタラクティブ・アプリケーションを抽出するために、チューナ２０２に結合されたデータ抽出器２０６も備えている。一実施形態において、データ抽出器２０６は従来のＶＢＩ帯域内データ抽出回路である。別の実施形態においては、データ抽出器２０６は従来のモデムである。データ抽出器２０６は、抽出されたインタラクティブ・アプリケーションを含むシリアル・ビットストリームをバス２０８に提供する。バス２０８は、バス２０８を介して、第２の記憶装置２１４に記憶されたプログラムによって命令されるように、抽出されたインタラクティブ・アプリケーションを第１の記憶装置２１２に記憶するマイクロプロセッサ２１０に結合されている。一実施形態において、マイクロプロセッサ２１０は、抽出されたでデータからの誤り符号情報を用いて、復号されたインタラクティブ・アプリケーション内の誤りをチェックまたは修正する。一実施形態において、第１の記憶装置２１２は従来のランダムアクセス・メモリ（「ＲＡＭ」）であり、一方、第２の記憶装置２１４は従来のリードオンリ・メモリ（「ＲＯＭ」）である。ＲＡＭまたはフラッシュ・メモリであってもよい第３の記憶装置２１３は、リマインダ・データを記憶するためにマイクロプロセッサ２１０に結合されている。フラッシュ・メモリの利点は、ＢＲ１２０に常駐するソフトウエアまたはデータを、受信したインタラクティブ・アプリケーションによって修正できることである。
【００５９】
一実施形態において、ＢＲ１２０は放送データ１１７から時間信号を抽出するためにデータ抽出器２０６も用いる。時間信号は、協定世界時（「ＵＴＣ」）または加入者の地域時間などの標準時間軸を用いて現在時間を示す。別の実施形態においては、ＢＲ１２０は、加入者または受信した時間信号のいずれかによって設定されるリアルタイム・クロックを有する。それにもかかわらず、ＢＲ１２０は上記現在時間にアクセスすることが好ましく、したがって、データ・スタンピングおよび計時の機能を行うことができる。
【００６０】
下記のように、マイクロプロセッサ２１０は、第２の記憶装置２１４に記憶されたプログラムおよび、第１の記憶装置２１２に記憶されたインタラクティブ・アプリケーションを用いて、インタラクティブ・アプリケーションを実行して出力を提供する。第２の記憶装置２１４に記憶されたプログラムは、様々なスクリプト、様式、定義ならびに符号およびグラフィック・リソースによって定められたインタラクティブ・アプリケーションを実行する実行エンジン２１７であることが好ましい。好適な実行エンジンは、Ａｌａｍｅｄａ，  ＣａｌｉｆｏｒｎｉａのＷｉｎｋ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ，  Ｉｎｃ．によって提供されるＷｉｎｋ  Ｅｎｇｉｎｅである。放送局受信機１２０は、実行エンジン２１７または、やはり第２の記憶装置２１４に記憶されたネイティブ（ｎａｔｉｖｅ）・オペレーティング・システム２１９のいずれかの一部として、入力値からカウントダウンするバックグラウンド・プロセスとして実行できるタイマ機能または同等の計時仕様を含む。
【００６１】
インタラクティブ・アプリケーションを実行することによる出力は、たとえば情報またはメニューをテレビジョン視聴者に提示するか視聴者入力を受信する様式であってもよく、あるいは、ＢＲ１２０またはテレビジョン使用データを含むか視聴者の好みを示す、サイレントや、そうでなければ別の応答であってもよい。本発明の目的に対して、様式はあらゆる様々な情報を提示して、あらゆる様々なユーザ反応を得てもよい。そのために、ＢＲ１２０は、バス２０８に結合されており、第１の記憶装置２１２に記憶されたインタラクティブ・アプリケーション１１５および第２の記憶装置２１４に記憶されたプログラムによって駆動される、グラフィック・オーバレイ発生器２１６を含むことが好ましい。グラフィック・オーバレイ発生器２１６は、インタラクティブ・アプリケーション１１５に応答してグラフィック・ディスプレイを発生する。このグラフィック・ディスプレイは、ＢＲ１２０に結合された通常はテレビジョンであるディスプレイ２１８に表示される。もちろん、グラフィック・オーバレイ発生器２１６は通常、インタラクティブ・アプリケーションがサイレントで実行されるときには用いられない。
【００６２】
一実施形態において、グラフィック・オーバレイ発生器２１６は、チューナ２０２からの放送プログラムに対応する放送信号も受信して、たとえば、データを表示された様式に入力するために、放送プログラムとインタラクティブ・アプリケーション１１５のグラフィックな側面（もしあれば）との同時表示を可能にする。一実施形態において、マイクロプロセッサ２１０は、ユーザ入力受信機２２４に結合されたユーザ入力デコーダ２２２にも結合されており、インタラクティブ・アプリケーション１１５に応答するために、ユーザがマイクロプロセッサ２１０と通信することを可能にする。一実施形態において、ユーザ入力デコーダ２２２は従来の赤外線遠隔制御デコーダである。ユーザ入力受信機２２４は、ユーザが従来の携帯遠隔制御装置を用いることができるようになる、従来の赤外線受信機２２４であることが好ましい。ユーザが押下した遠隔制御キーは、ユーザ入力受信機２２４によって受信された符号化された赤外線信号に変換され、ユーザ入力デコーダ２２２によって復号され、マイクロプロセッサ２１０に送られて、ユーザがインタラクティブ・アプリケーション１１５と通信することを可能にする。
【００６３】
一実施形態において、ＢＲ１２０は、広帯域同軸ケーブルを介してケーブル・システムに接続された、ケーブル・テレビジョン・セットトップ・デコーダである。この実施形態において、ライン・ドライバ２３０は、通常はＲＦスペクトルの帯域外部分を用い、同軸ケーブルを介してケーブル・システム・ヘッドエンドに応答を送信できるＲＦモデムであり、通信ポート２３２は標準ＲＦタップである。別の実施形態においては、ＢＲ１２０は、ライン・ドライバ２３０が標準電話モデムであり、通信ポート２３２が標準ＲＪ−１１ジャックである、テレビジョン、ＶＣＲまたはセットトップである。
【００６４】
マイクロプロセッサ２１０は従来の赤外線コマンド・エンコーダ２２６に結合されてもよく、この赤外線コマンド・エンコーダ２２６は、赤外線コマンド入力を受け入れて、従来の赤外線送出器２２８用の信号を符号化し、インタラクティブ・アプリケーション１１５が外部装置を制御することを可能にする。
【００６５】
［Ｃ．インタラクティブ・アプリケーションの実行］
図３は、本発明の好適な実施形態によるコンパクトな情報プロトコルを用いて、インタラクティブ・アプリケーションを受信して実行するステップを示したフローチャートである。ＢＲ１２０は、放送サーバ１１０によって作成され、ＤＩＵ１１６によって挿入され、送信機１１８によって送信されたアプリケーション・ヘッダ記録を受信して復号する（３１０）。アプリケーション・ヘッダ記録は、インタラクティブ・アプリケーション識別コードに従いそれらを含む情報を記載している。
【００６６】
インタラクティブ・アプリケーションのリマインダ機能は、任意の順序で符号化されて放送されるかもしれない定義、スクリプトおよびコマンドによって記載される。定義、スクリプトおよびコマンドはＢＲ１２０によって受信されて復号され（３１２）、リマインダ・インタラクティブ・アプリケーションを実行する（３１４）ときに用いられるリマインダ・パラメータおよび応答パラメータを定義する。
【００６７】
受信されたリマインダ・インタラクティブ・アプリケーションのいくつかまたは全ては、ＢＲ１２０内に記憶される（３１２）場合がある。一実施形態において、インタラクティブ・アプリケーションは繰り返し放送されて、インタラクティブ・アプリケーション全体を受信していないときはいつでも、ＢＲ１２０が放送プログラムに同調することを可能にする。記憶されたインタラクティブ・アプリケーションに対するあらゆる所望の更新を受信して復号してもよい（３１６）。追加のまたは更新された定義、スクリプトまたはコマンドがある場合には、これらはアプリケーションが完了する（３１８）まで送ってもよい。一実施形態においては、インタラクティブ・アプリケーションを停止する（３２０）ために終了コマンドが放送されてもよい。
【００６８】
新しいインタラクティブ・アプリケーションは、元のアプリケーションが実行されているか応答を送信している間を含む、あらゆるときに送信してもよい。たとえば、コマーシャルに対応する新しいインタラクティブ・アプリケーションは、ニュース番組に対応する元のアプリケーションを中断してもよく、本発明は、後者のアプリケーションが前者の終了時に動作を再開することを可能にする。
【００６９】
ＵＲＬなどの対話性の異なった形態を用いた他の実施形態において、放送受信機１２０は、対話性の種類に合うように、適切な復号、構文解析および実行の機能を提供する。そのため、ＵＲＬタイプのデータについては、放送受信機１２０は、ブラウザおよび、ウェブページ、ＪＡＶＡアプレットなどを検索、ロードおよび表示する適切な機構を備えてもよい。
【００７０】
［Ｄ．オートメーション・サーバ］
［１．オートメーション・サーバの挙動に関する概要］
オートメーション・サーバ１０８はスケジューリング・システム１０６とインタフェースして、後者が放送プログラム・ソース１０２に提供する制御信号を受信する。さらに、オートメーション・サーバ１０８は、放送サーバ１１０に通信可能に結合されて、どのインタラクティブ・アプリケーションが放送の準備をされているかまたは、現在どのチャネル上で放送されているかに関する状態情報を受信する。オートメーション・サーバ１０８は、そのプレイリストを含む状態情報および制御信号を用いて、放送サーバ１１０に対する特定のコマンドを生成する。これらのコマンドは、放送サーバ１１０に、放送されるインタラクティブ・アプリケーションの準備、または現在放送されているインタラクティブ・アプリケーションの実行を選択的に制御するように命令する。
【００７１】
特に、オートメーション・サーバ１０８は、制御信号に応答して放送サーバ１１０に対する、インタラクティブ・アプリケーションの実行を予定（スケジュール）、開始、停止または取消するコマンドを生成する。オートメーション・サーバ１０８はこれらのコマンドのシーケンスを生成して、コマーシャルおよびテレビジョン・ショーの両方ならびに他の放送プログラムに関する適切な対話性の、表示および／または終了を含む同期的な実行を達成する。
【００７２】
スケジューリング・システム１０６からの制御信号は、明示的か暗示的かのいずれかで特定のチャネルと関連づけられる。制御信号の性質、そのチャネル割当およびプレイリスト情報から、オートメーション・サーバ１０８は、適切と思われる場合に、放送中の現在の放送プログラムまたは放送される次の放送プログラムの状態および種類を判断する。特に、オートメーション・サーバ１０８は、制御信号が、現在放送されているプログラムがテレビジョン・ショーかコマーシャルかを示しているかどうかを判断する。
【００７３】
コマーシャルが特定のチャネル上で放送を始めたことを示す制御信号（すなわち、コマーシャルに関する放送データを再生する、放送ソースの１つへの制御信号）を受信したことに応答して、オートメーション・サーバ１０８はインタラクティブ・アプリケーションが現在そのチャネル上で実行されているかどうかを判断し、もしそうであれば、放送サーバ１１０に対する、インタラクティブ・アプリケーションの実行を中断（停止）するコマンドを生成する。放送サーバ１１０はこのコマンドを放送受信機１２０に送信する。適切なチャネルに同調された放送受信機は、インタラクティブ・アプリケーションの実行を中断する。しかし、放送受信機１２０はコマーシャルが一旦終了するとインタラクティブ・アプリケーションを再度実行する必要があるので、オートメーション・サーバ１０８はインタラクティブ・アプリケーションを取り消さないことにより、インタラクティブ・アプリケーションは直ちに再度実行可能になるべきであり、コマーシャルが始まったときに有していた状態情報を保持すべきである。
【００７４】
オートメーション・サーバ１０８は、コマーシャルと関連づけられたインタラクティブ・アプリケーションがあるかどうかを判断してもよい。もしあれば、オートメーション・サーバ１０８は放送サーバに、インタラクティブ・アプリケーションを送信してその実行を行わせるように命令する。コマーシャルと特に関連づけられたインタラクティブ・アプリケーションがなければ、オートメーション・サーバ１０８は放送サーバに、デフォールトのインタラクティブ・アプリケーションの実行を始めるように信号で命令してもよい。
【００７５】
ある時点で、オートメーション・サーバ１０８はコマーシャルが終了したことを示す制御信号を受信する。この制御信号に応答して、オートメーション・サーバ１０８は放送サーバ１１０に対する、インタラクティブ・アプリケーションの実行を再開するコマンドを生成し、放送サーバ１１０は放送受信機１２０にコマンドを送信する。適切なチャネルに同調された放送受信機はこのコマンドを受信して、テレビジョン・プログラムに関するインタラクティブ・アプリケーションの実行を再開する。
【００７６】
ここで視聴者によって認められる効果は、元のテレビジョン・ショーに付随したインタラクティブ・アプリケーションはコマーシャルの間にテレビジョン画面から排除されていることである。コマーシャルに対して特定のインタラクティブ・アプリケーション、すなわちデフォールトのアプリケーションは、コマーシャルの間に実行されて表示される。このコマーシャルが終了してテレビジョン・ショーが再開されると、テレビジョン・プログラムのインタラクティブ・アプリケーションが再度現れる。インタラクティブ・アプリケーションが再度現れると、それはコマーシャルの前に有していた状態情報（たとえば現在のスコア）を有しており、それによってインタラクティブ・アプリケーションに関する視聴者の使用を保持する。
【００７７】
テレビジョン・ショーなどの放送プログラムは、コマーシャル期間によって区分されたこのフォーマットの多数のセグメントを有することが典型的である。テレビジョン・プログラムと関連づけられた対話性は、セグメントのそれぞれの全体を通してその状態情報と共に一貫して利用可能であるべきである。オートメーション・サーバ１０８は、多数のセグメントが実際には単一のテレビジョン・ショーまたは他の放送プログラムの部分であり、それによって同じインタラクティブ・アプリケーションと関連づけられているかどうかを判断するために、制御信号から抽出された情報を相関させ、放送される各セグメントを識別することによりこの結果を達成する。他の場合では関連のないセグメントをそのように相関させることで、オートメーション・サーバ１０８は、多数のコマーシャル期間全体にわたってテレビジョン・プログラムの単一のインタラクティブ・アプリケーションを適切に中止して再開することができる。このプロセスは以下で図１２を参照してさらに詳細に説明する。
【００７８】
オートメーション・サーバ１０８は、インテルのチップセットおよびマイクロソフト社のオペレーティング・システムを用いたものなどの、従来のワークステーションやパーソナル・コンピュータ上で実行されるソフトウエア製品として実施されてもよく、あるいは専用ＡＳＩＣまたは他のハードウエアの実施形態において符号化されてもよい。
【００７９】
［２．オートメーション・サーバの機能に関する概要］
ここで図４を参照すると、本発明の一実施形態に係るオートメーション・サーバ１０８の機能アーキテクチャの図が示されている。この実施形態において、オートメーション・サーバ１０８はインタフェース・マネジャ４００を含む。このインタフェース・マネジャ４００は、複数のチャネル・インタフェース４０２を管理しており、そのそれぞれが１つまたは複数のチャネルと関連づけられている。各チャネル・インタフェース４０２は、スケジューリング・システム１０６からその割り当てられたチャネルについての制御信号を受信して、放送サーバ１１０にコマンドを出力する。
【００８０】
ここで図５を参照すると、チャネル・インタフェース４０２の機能構造が示されている。各チャネル・インタフェース・モジュール４０２は、トランスレータ・モジュール５０２およびイベント・マネジャ５０４を含む。トランスレータ・モジュール５０２は、スケジューリング・システム１０６から制御信号を受信して、これらの信号をアトミック・コマンドに変換する。イベント・マネジャ５０４はアトミック・コマンドを受信して、それらを放送サーバ１１０が理解するコマンドに加工する。
【００８１】
［３．インタフェース・マネジャ］
図６を参照すると、インタフェース・マネジャ４００のライフサイクル相互作用図が示されている。インタフェース・マネジャ４００は、異なったスケジューリング・システム１０６について全てのチャネル・インタフェース４０２を作成して維持する。インタフェース・マネジャ４００は３つの主要なフェーズ、すなわち初期化フェーズ、ランニング・フェーズ（実行フェーズ）および遮断フェーズを有する。オートメーション・サーバ１０８は、始動するとインタフェース・マネジャ４００を作成して（６０２）それを初期化する。この初期化フェーズの間に、インタフェース・マネジャ４００は初期化（ｉｎｉ）ファイルを呼んで（６０４）、スケジューリング・システム１０６と協働するために必要な異なったチャネル・インタフェース４０２を作成して（６０６）初期化する（６０８）。
【００８２】
インタフェース・マネジャ４００は、一旦全ての必要なオブジェクトを作成して初期化すると、ランニング・フェーズに移行する。このフェーズの間に、インタフェース・マネジャ４００は各チャネル・インタフェース４０２に動作するように要求する（６１０）。
【００８３】
通常、オートメーション・サーバ１０８およびそのインタフェース・マネジャ４００は、長時間にわたってランニング・フェーズに留まる。しかし、回復不可能な誤りがあるときや、オートメーション・サーバ１０８をアップグレードする必要が場合には、オートメーション・サーバ１０８は遮断される。この遮断フェーズの間に、インタフェース・マネジャは各チャネル・インタフェース４０２に遮断するように要求する（６１２）。
【００８４】
図７を参照すると、各チャネル・インタフェース４０２に関するライフサイクル相互作用図が示されている。図４に示したように、各チャネル・インタフェース４０２はトランスレータ・モジュール５０２およびイベント・マネジャ５０４を含む。チャネル・インタフェース４０２も３つの主要なフェーズ、すなわち初期化フェーズ、ランニング・フェーズおよび遮断フェーズを有する。
【００８５】
初期化フェーズの間に、それはトランスレータ・モジュール５０２およびイベント・マネジャ５０４を作成して（７０２）初期化する（７０４）。イベント・マネジャ５０４の初期化パラメータは次の情報を含む。
【００８６】
・各イベント・タイプごとに放送サーバ・イベントをどのように構成するか。
【００８７】
・インタラクティブ・アプリケーションをどこでみつけるか。
【００８８】
・オートメーション・サーバのタイミングを微同調するためのパラメータ。
【００８９】
・放送サーバにどのように接続するか。
【００９０】
・放送サーバからの突然の切断にどのように応答するか。
【００９１】
・イベントは事前に予定されているか。
【００９２】
トランスレータ・モジュール５０２の初期化パラメータは次の情報を含む。
【００９３】
・スケジューリング・システムにどのように接続するか。
【００９４】
・スケジューリング・システムからの突然の切断にどのように応答するか。
【００９５】
・異なった放送局によって異なった方法で用いられることがあり得る場合に、特定のコマンドをどのように解釈するか等の、スケジューリング・システム特定のパラメータ。
【００９６】
・スケジューリング・システムからのコマンドをどのように呼んで解釈するかに関する微同調。
【００９７】
・コマーシャルをショーと区別するために用いられる通常の表現または他の情報。
【００９８】
ランニング・フェーズの間に、チャネル・インタフェース４０２は無限ループ（イベント・ループ）に入って（７０８）、スケジューリング・システム１０６からのあらゆる制御信号を処理する。チャネル・インタフェース４０２は、別個のオートメーション・サーバ・クライアント（たとえば、遮断の要求）から直接的に要求を受信してもよい。チャネル・インターエース４０２はトランスレータ・モジュール５０２からアトミック・コマンドを要求し（７１０）、それらがイベント関連であれば、イベント・マネジャ５０４に渡す（７１２）。アトミック・コマンドがヌル（Ｎｕｌｌ）コマンドかエラー（Ｅｒｒｏｒ）コマンドであれば、チャネル・インタフェース４０２はそれらのコマンド自体を処理する（７１４）。回復不可能な誤りが発生した場合には、誤りをログしてイベント・ループから出る（７１５）。
【００９９】
遮断フェーズの間に、チャネル・インタフェース４０２は遮断の要求を受信している（７１６）ので、トランスレータ・モジュール５０２およびイベント・マネジャ５０４がはっきりと遮断できるように、その要求をそれらに送出する（７１８）。それらが一旦遮断すると、チャネル・インタフェース４０２はそれ自体をクリーンアップし、イベント・ループから戻ってそれ自体を遮断する。
【０１００】
［４．トランスレータ・モジュールの大要］
各ブロードキャスト・番組は特定の「ライフサイクル」を有するものと理解される場合がある。このライフサイクルは、同様に基本的には各放送プログラムに対して状態機械として動作するスケジューリング・システム１０６によって管理される。しかし、スケジューリング・システム１０６は、放送プログラムに関する限定量の情報を、通常は放送ソースを制御するのに必要とされるだけ提供するに過ぎない。
【０１０１】
そして各放送プログラムについて、トランスレータ・モジュール５０２は、スケジューリング・システム１０６から受信する限定的な情報に関する状態機械挙動を再構築して、放送プログラムのライフサイクルを作成し直す。そしてこれは、放送プログラムに関連し得るインタラクティブ・アプリケーションを管理するために、イベント・マネジャ５０４に適切なアトミック・コマンドを提供することを許容する。そのため、図５に示したように、トランスレータ・モジュール５０２は、スケジューリング・システム１０６からの制御信号で識別する各独特な放送プログラムについて、状態機械５１０を作成して維持する。
【０１０２】
各トランスレータ・モジュール５０２は、それぞれが通信する種類のスケジュール・システム１０６に特定のものであり、スケジューリング・システム１０６から、トランスレータ・モジュール５０２が理解できる一連のイベントへの状態のマッピングを提供する。各種類のスケジューリング・システム１０６はそれぞれの制御信号で異なった種類の情報を提供するので、誤りや欠落情報などの原因を明らかにして、スケジューリング・システム１０６の暗示的な状態機械から、トランスレータ・モジュール５０２によって定義される状態機械へマッピングする必要がある。
【０１０３】
前述のように、様々な種類のスケジューリング・システム１０６があり、そのそれぞれが、異なったレベルの情報を有する、異なった種類の制御信号を出力するため、トランスレータ・モジュール５０２のそれぞれは、特定のタイプのスケジューリング・システム１０６に対応する。しかし、全てのスケジューリング・システム１０６は、最も完全な一連の制御信号を提供する「理想的な」スケジューリング・システム１０６に関して説明できるものと思われる。表１は、理想的なスケジューリング・システム１０６によって提供される制御信号の種類および、これら理想的な信号の種類のそれぞれに含まれるデータを記載している。
【０１０４】
【表１】
0005536738.tif 000002
【０１０５】
これらの信号は、特定されたデータ全てが存在し、トランスレータ・モジュール５０２が放送プログラムの適切な状態を非常に容易に判断できて、イベント・マネジャ５０４への通信に必要とされるデータを形成できるという意味で理想的である。非理想的なスケジューリング・システム１０６においては、トランスレータ・モジュール５０２は付加的な外部のデータ源を用いて、放送サーバ１１０のプレイリストなどのイベント・マネジャ５０４に送信するための適切なデータおよび、インタラクティブ・アプリケーションのインタラクティブ・アプリケーション・データベースに含まれる放送プログラム識別子に対する関係についての情報を判断する。
【０１０６】
プリロード信号は、その後の時間に放送されることを見越して放送ソース１０６に放送プログラムをロードさせるために、通常はスケジューリング・システム１０６によって用いられる制御信号である。この信号は、ロードされる放送プログラムを固有に識別するプログラムＩＤを含むことが理想的である。チャネル識別は放送用のチャネルを特定するが、チャネルは暗示的であっても明示的であってもよい。継続時間は放送プログラムの継続時間を特定する。これは、スケジューリング・システム１０６からの明示的な停止信号がない場合に、インタラクティブ・アプリケーションを終了させるためにオートメーション・サーバ１０８によって用いられる。
【０１０７】
プリロード信号は正確な時間に受信されてもされなくてもよい。すなわち、いくつかのスケジューリング・システムにおいては、正確に受信される（イベントの放送に先立つ何分の１秒の正確さで）。他のスケジューリング・システムにおいては、イベントの放送に先立つ数秒から数時間に受信され得る。プリロールのイベント開始およびイベント停止信号は正確に計時しなければならない。ネイティブ制御信号が、プリロードと他の制御信号のいずれかの両方に用いられている場合には、それを正確に計時しなければならない。
【０１０８】
インタラクティブ・アプリケーションの位置（場所）は、放送プログラムに付随するように指定されたインタラクティブ・アプリケーションの位置を特定する。この位置はインタラクティブ・アプリケーション・データベース１１２内で特定されるか、インタラクティブ・アプリケーションが記憶されるファイル・ディレクトリ内へのパス名であってもよい。イベント・タイプは放送プログラムのタイプを定める。タイプの数はシステム設計に左右され、テレビジョン・ショーとコマーシャルとの間で単に区別をつけるか、番組ガイド、クローズ・キャプションまたは他の種類の放送コンテンツをさらに識別してもよい。イベント・タイプはイベント・マネジャ５０４および表７に関して以下でさらに説明する。
【０１０９】
これらの信号およびそのデータ・コンテンツは理想的なスケジューリング・システム１０６に関するものであるので、実際のスケジューリング・システム１０６はこれらの信号のうちより少数および、特定されたデータのうちいくつかだけまたは両方を用いてもよい。しかし、トランスレータ・モジュール５０２およびイベント・マネジャ５０４は、これらの制御信号からどのデータが失われていても動作して完了することにより、放送サーバ１１０を管理する。
【０１１０】
理想的な制御信号の場合、「理想的な」トランスレータ・モジュール５０２を定めることができる。この理想的なトランスレータ・モジュール５０２は、スケジューリング・システム１０６からの制御信号を、イベント・マネジャ５０４によって用いられる一連のアトミック・コマンドにマッピングする。そのため、この理想的なトランスレータは任意の放送プログラムのライフサイクルと、イベント・マネジャ５０４がどのように放送プログラムのライフサイクルの異なった状態に応答して、その放送プログラムと関連づけられたインタラクティブ・アプリケーションの実行を制御する放送サーバ１１０に対するコマンドを生成することができるかを表す。
【０１１１】
表２は、トランスレータ・モジュール５０２によって生成されたアトミック・コマンドを列挙している。
【０１１２】
【表２】
0005536738.tif 000003
【０１１３】
放送サーバ１１０がインタラクティブ・アプリケーションをスケジューリングするには時間がかかるので、状況によっては、トランスレータ・モジュール５０２はインタラクティブ・アプリケーションが放送されている映像データと同期できるほど十分早くは、スケジュール・アトミック・コマンドを送信できないことがある。この場合に、インタラクティブ・アプリケーションは、何らかの他の手動または自動のプロセスによって放送サーバ１１０で予めスケジューリングすることができ、オートメーション・サーバ１０８は、放送サーバ１１０にスケジューリングするように命令する代わりに、予めスケジューリングされたインタラクティブ・アプリケーションを探すことにより時間を節約できる。このモードにおいて、予めスケジューリングされたイベントは再度放送される場合があるので、オートメーション・サーバ１０８はそれらを取り消さない。その代わりに、それらをスケジューリングしたプロセスが、それらを取り消すことに責任を負う。
【０１１４】
いずれか特定のスケジューリング・システム１０６用の実際のトランスレータ・モジュール５０２は、理想的なトランスレータ・モジュール５０２から得られる。ここで図８を参照すると、理想的なトランスレータ状態機械５１０の状態機械の記載が示されている。各放送プログラムは、制御信号によって定められた多数の状態を通って移行するものと理解されてもよい。
【０１１５】
状態機械は開始状態８００で始動する。
【０１１６】
この状態から、トランスレータ・モジュール５０２はロードされた状態８０２に移行する。ロードされた状態８０２は、３つの異なった理想的な信号８０１、すなわちプリロード信号、プリロール信号または開始信号のいずれかから到達することができる。
【０１１７】
通常、トランスレータ・モジュール５０２によって受信された第１の制御信号８０１は、プリロード信号になるであろう。スケジューリング・システム１０６上では、この信号は放送プログラムがまさに放送されるところであることを示す。プリロード信号が以前に受信されていなければ、開始状態８０２へは、上記のように、プリロール信号でも到達する。プリロール信号も、放送プログラムがまさに放送されるところであることを示す。
【０１１８】
ロードされた状態８０２において、トランスレータ・モジュール５０２は、放送プログラムと関連づけられた適切なインタラクティブ・アプリケーションを判断して、その実行をスケジューリングする。トランスレータ・モジュール５０２は、放送プログラムに関する放送プログラムＩＤ、イベント・タイプおよび関連づけられたインタラクティブ・アプリケーションの場所などの、この状態に関する理想的データにできるだけ近いものを判断する。イベント・タイプは、テレビジョン・ショー、コマーシャルまたは不明など、放送プログラムのタイプを記載している。イベント・タイプを以下でさらに説明する。ある場合には、トランスレータ・モジュール５０２は特定のチャネルと関連づけられているので、チャネル割当は暗示的であり、他の場合には、チャネルは制御信号に明示的に符号化されてもよい。
【０１１９】
より特定的には、トランスレータ・モジュール５０２は、現在時間と受信した信号とをログする。トランスレータ・モジュール５０２は、関連づけられたインタラクティブ・アプリケーションに関する放送プログラムＩＤを、制御信号に含まれる放送プログラムＩＤに設定する。必要であれば、トランスレータ・モジュール５０２は正規表現を用いてイベント・タイプを計算する（下記参照）。そうでなければ、トランスレータ・モジュール５０２はイベント・タイプを不明に設定し、インタラクティブ・アプリケーション自体に含まれるデータからイベント・タイプを判断することをイベント・マネジャ５０４に委ねる。必要であれば、トランスレータ・モジュール５０２は、インタラクティブ・アプリケーションの場所を放送プログラムＩＤになるようにも設定するが、やはりイベント・マネジャ５０４が放送プログラムＩＤと放送プログラムのセグメント番号とに基づいて実際の位置を適当に判断する。
【０１２０】
そして、トランスレータ・モジュール５０２は、作成した理想的データを用いて、スケジュール・コマンドを作成してイベント・マネジャ５０４に出力する。このスケジュール・コマンドは、放送プログラムに関する放送プログラムＩＤと関連づけられたインタラクティブ・アプリケーションがあるかどうかを判断して、もしあれば、識別されたインタラクティブ・アプリケーションを放送する準備を行うよう放送サーバに要求することを、イベント・マネジャ５０４に命令する。
【０１２１】
次の状態は準備された状態８０４である。この状態には、プリロール信号または開始信号の何れかにロードされた状態８０２から到達する。プリロール信号または開始信号が受信された最初の信号８０１であった場合には、準備された状態８０４への自動的な移行もある。すなわち、これらの信号の何れかが最初の信号８０１として受信されたのであれば、トランスレータ・モジュール５０２は、ロードされた状態８０２、準備された状態８０４および放送中の状態８０６を通って自動的に移行する。
【０１２２】
準備された状態８０４は、イベント・マネジャ５０４に送られたアトミック・コマンドのタイミングを制御する。始動される前に、オートメーション・サーバ１０８は、スケジューリング・システムの放送開始のどれくらい前にプリロール信号を受信できるかについて設計される。これは通常、１から１０秒の間であり、通常はミリ秒で計測される。プリロール信号または開始信号を受信すると、理想的なトランスレータ・モジュールは準備された状態８０４に入る。準備された状態８０４はＸ−Ｙマイクロ秒の間一時停止することが好ましく、ここで、Ｘはどれほど早くプリロール信号が来るかであり、Ｙはイベント・マネジャ５０４および放送サーバ１１０が放送プログラムに関するインタラクティブ・アプリケーション（イベント）を開始するのに必要とする時間の長さである。その時間が経過した後に、トランスレータ・モジュール５０２は自動的に放送中の状態８０６に移行して、そこでイベントが開始される。それはまた、他のイベント状態機械によって用いことができる開始信号８０５も生成する（以下の放送停止状態に関する項を参照）。Ｘ−Ｙがゼロ未満であるか制御信号が開始信号であれば、準備された状態８０４には全く待機しないことに留意されたい。その代わりに、すぐに放送中の状態８０６に移行して、放送サーバ・イベントができるだけ早く開始されることを可能にする。
【０１２３】
「放送中」の状態８０６は準備された状態８０４の後に自動的に発生する。この状態において、トランスレータ・モジュール５０２は開始アトミック・コマンドを作成して、イベント・マネジャ５０４に送信する。準備された状態８０４で導入された一時停止と組み合わされたときに、これはインタラクティブ・アプリケーションを開始して放送プログラムと共に実行を始めるという効果を有する。
【０１２４】
放送中の状態８０６の間に、二次トリガ８０９を形成する付加的信号が受信された処理されてもよい（８１０）。これらの二次トリガは、放送されるインタラクティブ・アプリケーションと関連づけられた付加的機能の実行につながり得る。
【０１２５】
イベント停止信号８０７はその放送を終わらせ、結果的に「放送停止」状態８０８になる。この状態はイベントを取り消す。すなわち、トランスレータ・モジュール５０２は現在の放送プログラムＩＤに基づいて取消コマンドを作成し、これをイベント・マネジャ５０４に送って現在のインタラクティブ・アプリケーションを取り消す。この状態は、他のイベントと関連づけられた制御信号によってトリガすることができる。たとえば、スケジューリング・システムのネイティブ制御信号がイベント停止信号を含まないのであれば、次のイベントに関するイベント開始信号が前のイベントを停止させる。
【０１２６】
エラー信号に関しては、トランスレータ・モジュール５０２は現在の放送プログラムＩＤに基づいて取消コマンドを作成し、これをイベント・マネジャ５０４に送って現在のインタラクティブ・アプリケーションを取り消す。
【０１２７】
このように、これらの状態はスケジューリング・システム１０６から見た各放送プログラムのライフサイクルを表している。この情報から、オートメーション・サーバ１０８は、放送プログラムと関連づけられたインタラクティブ・アプリケーションに関する状態を判断して、その状態に関する放送サーバ１１０への適切なコマンドを生成する。
【０１２８】
したがって、トランスレータ・モジュール５０２は、これらの状態に対応する特定のチャネル上で放送プログラムを管理するように設計されている。より特定的には、トランスレータ・モジュール５０２は、それが受信する各放送プログラムＩＤに関する状態機械５１０を維持する。この状態機械は新しい放送プログラムＩＤが受信される度に作成され、スケジューリング・システム１０６が、放送プログラムが終了されたことを示すまで維持される。
【０１２９】
図９を参照すると、トランスレータ・モジュール５０２、特にそのマッピング・ロジック５０６の全体的動作のフローチャートが示されている。トランスレータ・モジュール５０２は、スケジューリング・システム１０６から制御信号を受信する（９００）度に、その管理するイベントにその制御信号が関連するかどうかを判断する（９０２）。イベントは、エラー信号またはスタートアップ、遮断、エラーまたはシステム・メッセージなどの他のデータとは逆の、放送プログラムＩＤまたは放送プログラムを表す他のデータによって示される。
【０１３０】
制御信号がイベントに関するものでなければ、トランスレータ・モジュール５０２はそれがエラー信号であるかどうかを判断する（９０４）。エラー信号は処理のためにイベント・マネジャ・モジュール５０４に渡される（９０６）。
【０１３１】
制御信号がエラー信号でなければ、それは無視される（９１０）。
【０１３２】
信号がイベント信号であれば、トランスレータ・モジュール５０２は、イベントの放送プログラムＩＤを状態機械に対する鍵として用いて、マッピング・ロジック５０６を適用し、識別されたイベントが新しいイベントであるか、既に状態機械５１０が存在するイベントであるかを判断する。イベントが新しいイベントであれば、トランスレータ・モジュール５０２は放送プログラムＩＤおよびイベントに関する新しい状態機械５１０を例示し（９１２）して、状態機械５１０を開始する（９１４）。
【０１３３】
既存の状態機械があれば、イベント制御信号は放送プログラムＩＤと関連づけられた状態機械５１０に渡される（９１６）。そして、状態機械５１０は、理想的な状態機械に関して上記で説明したように、かつ特定のトランスレータ・タイプに関して以下でさらに詳細に述べるように、その状態ロジックによりイベントを処理する。
【０１３４】
［５．トランスレータ・タイプ］
各スケジューリング・システム１０６は、トランスレータ・モジュール５０２によって解釈される、それ自体に特有な一連の制御信号を生成する。以下の項は、理想的なトランスレータ・モジュールの状態図に基づいて、特定のトランスレータ・モジュールがどのように実施されるかを説明している。すなわち、スケジューリング・システム特有の制御信号は、理想的トランスレータにおける一般的制御信号上にマッピングできる。各特定のトランスレータ・モジュール５０２は、理想的なトランスレータ・モジュールに記載されたのと同じ状態を経て進む。しかし、各特定のトランスレータに関する状態動作は、それらが受信する制御信号の相違を説明するため若干異なる。
【０１３５】
各種類のトランスレータについての、理想的なトランスレータ状態機械から特定の状態機械へのマッピングを、以下の表４−６に要約した。これらの表の欄見出しは表３に定義した。
【０１３６】
【表３】
0005536738.tif 000004
【０１３７】
ａ）トランスレータ・タイプ１：基本的スケジューリング・システム
基本的スケジューリング・システム１０６は、通常は放送プログラムＩＤ以外には、その制御信号内の非常にわずかのデータしか符号化しないシステムである。トランスレータの状態機械を介したこの制御信号の解釈には、理想的制御信号について理想的データであったものを再生するための、適切なデータの作成および推論が関係する。基本的スケジューリング・システム１０６の例はＬｏｕｔｈ  ＡＤＣ−１００である。
【０１３８】
一実施形態において、オートメーション・サーバ１０８は、サブタイトラをエミュレートすることにより基本的スケジューリング・システムとインターフェースする。Ｌｏｕｔｈスケジューリング・システムを備えたものなど、一実施形態において、エミュレートされたサブタイトラはＣａｖｅｎａサブタイトラである。通常、基本的スケジューリング・システム１０６は信号をサブタイトラに送信して、サブタイトルを作成し、サブタイトルを開始し、放送プログラムの映像プログラム・データ上で表示されているサブタイトルを停止する。本発明においては、オートメーション・サーバ１０８はこれらの制御信号を用いて、インタラクティブ・アプリケーションを映像と同期させる。
【０１３９】
基本的スケジューリング・システム１０６の中には、プリロール情報を提供する能力を有することが好ましいものもある。この場合に、それは放送プログラムの実際の開始前の適合可能な秒数で準備信号（Ｐｒｅｐａｒｅ  Ｓｉｇｎａｌ）を送信する。オートメーション・サーバ１０８は、放送プログラムが始まったときにちょうどユーザに届けられるように、この情報を用いてインタラクティブ・アプリケーションをより早くプリロードして開始する。したがって、タイプ１トランスレータは、準備信号を受信したときに、ロードされた状態８０２、準備された状態８０４および放送中の状態８０６を通って移行する。このことは自動移行として表４で説明する。
【０１４０】
オートメーション・サーバ１０８が基本的スケジューリング・システム１０６から開始信号８０５を受信すると、それは準備信号を用いてインタラクティブ・アプリケーションが既に始まっていることを知るので、開始信号は無視する。基本的スケジューリング・システムの制御信号にエラーがあれば、オートメーション・サーバ１０８は現在のインタラクティブ・アプリケーションを停止して、エラー状態８１２に移動する。
【０１４１】
表４は基本的スケジューリング・システム１０６に関するネイティブ制御信号と、理想的制御信号と、理想的トランスレータ・モジュール５０２の状態機械に関する状態移行との関係を要約している。
【０１４２】
【表４】
0005536738.tif 000005
【０１４３】
ｂ）トランスレータ・タイプ２：コードベース・スケジューリング・システム
第２のタイプのスケジューリング・システム１０６は、識別コードを用いてテレビジョン・ショーとコマーシャルとを選択的に区別するものである。このタイプのスケジューリング・システム１０６の例は、ＥＳＰＮ  Ｉｎｃ．によってその放送システムに用いられているようなＩＳＣＩコードベース・システムである。このタイプのシステムにおいては、ＩＳＣＩコードはコマーシャルなどの放送プログラムに存在し、テレビジョン・ショーには存在しない。これらのタイプのコードは、スケジューリング・システム１０６によって直接または、放送プログラムと共に媒体（たとえば、ビデオテープ）上に予め記録されて間接的に提供されてもよい。
【０１４４】
他のタイプのコードベース・システムは、個別にインタラクティブ・アプリケーション、ＵＲＬ、ＵＲＩなどを識別するコードを用いるものである。
【０１４５】
オートメーション・サーバ１０８は、ＶＩＴＣタイムコード・リーダまたは類似のタイムコード・リーダを通して、コードベースのスケジューリング・システム１０６とインターフェースする。コードベースのスケジューリング・システムは、ＶＩＴＣタイムコードを通してコマーシャル中にＩＳＣＩ情報を送信し、ショーの間にはＩＳＣＩ情報を送信しない。オートメーション・サーバ１０８は、コマーシャルおよびショーの間に、この情報を用いてインタラクティブ・アプリケーションを選択的に付加する。スケジューリング・システムの制御信号は放送プログラムＩＤによってショーを特定しないので、デフォルトのインタラクティブ・アプリケーションのみがサポートされる。
【０１４６】
一般的に、制御信号がＩＳＣＩまたは類似のコードの存在を含むときには、トランスレータ５０２はコマーシャルが始まったことを知る。したがって、状態機械５１０はロードされた状態、準備された状態および放送中の状態を通って移行して、インタラクティブ・アプリケーションを開始する。これらの移行は自動移行として、表５に記載したように自動的に発生する。ロードされた状態において、ＩＳＣＩコード（またはＵＲＬ、アプリケーション識別子などの他のコード）は、理想的データに関する放送プログラムＩＤとして用いられる（たとえば、コードを放送プログラムＩＤとして保存する）。このことは、イベント・マネジャ５０４が適切なインタラクティブ・アプリケーションを判断することを可能にする。
【０１４７】
ＩＳＣＩコードが変化すると、トランスレータ５０２は新しいコマーシャルが始まったことを知る。したがって、状態機械５１０は放送停止状態を通って移行して対話型コンテンツを停止し、取消アトミック・コマンドを作成してコマーシャルに関する現在のインタラクティブ・アプリケーションを取り消す。トランスレータ５０２は新しいＩＳＣＩコードに関する新しい状態機械５１０を作成し、その状態機械５１０はロードされた状態、準備された状態および放送中の状態を通って移行し、開始アトミック・コマンドが生成されて新しいコマーシャルのインタラクティブ・アプリケーションを開始する。
【０１４８】
制御信号がＩＳＣＩコードを含んでいないときには、トランスレータ５０２はテレビジョン・ショーが始まった（または進行中である）ことを知る。したがって、状態機械５１０は放送停止状態を通って移行して対話型コンテンツを停止し、コマーシャルに関する現在のインタラクティブ・アプリケーションを取り消す取消アトミック・コマンドを作成する。同じ信号（すなわち、ＩＳＣＩコードが全くない）に基づいて、ショーのイベント・タイプを備えた不明な放送プログラムＩＤに関する新しい状態機械５１０が作成される。以下で述べるように、イベント・マネジャは、この放送プログラムＩＤはデフォルトのショーと関連づけられるべきであると判断する。状態機械５１０はロードされた状態、準備された状態および放送中の状態を通って進み、開始アトミック・コマンドを生成してテレビジョン・ショーに関するデフォルトのアプリケーションを開始する。ＩＳＣＩコードが再度検出されると、状態機械５１０は放送停止状態を通って進み、取消アトミック・コマンドが生成される。
【０１４９】
コード・ベースのシステムにはデータのない小さい隙間があることが多いので（特に、コード間の移行の間に）、トランスレータ５０２は、ＩＳＣＩコードがないことを検出する前の修正可能な秒数の間待機する。これにより誤った検出を回避する。
【０１５０】
制御信号にエラーがある場合には、状態機械５１０は現在の対話型コンテンツも取り消して、エラー状態に移動する。
【０１５１】
表５は、コマーシャル・イベントおよびデフォルトのショー・イベントの両方についての、コードベース・スケジューリング・システム１０６に関するネイティブ制御信号と、理想的制御信号と、理想的なトランスレータ・モジュール５０２の状態機械に関する状態移行との関係を要約している。
【０１５２】
【表５】
0005536738.tif 000006
【０１５３】
ｃ）トランスレータ・タイプ３：プレイリスト・ベースのスケジューリング・システム
本発明により支援された第３のタイプのスケジューリング・システム１０６は、プレイリスト・ベースのスケジューリング・システムである。このタイプのシステムにおいては、制御信号は、プレイリストの要素を提供するために、放送されている番組およびその継続時間を識別する。また、場合によっては放送プログラムの番組タイトルが含まれている。このタイプのスケジューリング・システムの例は、ソニー株式会社によって提供される、ＢＺＣＡ−１１０２スポット・リール・オプション・ソフトウエアを動作させるライブラリ・マネジメント・システム（ＬＭＳ）ＢＺＣＡ−１０００マルチカセット・システムである。
【０１５４】
オートメーション・サーバ１０８は、制御端末として機能することによりこのタイプのスケジューリング・システム１０６と連結する。制御端末は、スケジューリングされたイベントの表である送信プレイリストを表示する。ＬＭＳ  ＢＡＣ−１２００制御端末が一例である。プレイリストは、各放送プログラムに関する放送プログラムＩＤ、番組タイトル、継続時間などのイベント情報を含む。
【０１５５】
プレイリスト・ベースのトランスレータ・モジュール５０２は、スケジューリング・システム１０６から受信した全てのイベント情報を取り込んで構文解析（ｐａｒｓｅ）する。イベントは、それらの放送時間に先だって送信プレイリストに現れる。イベント（たとえば、放送プログラム）が送信プレイリストに現れると、トランスレータ５０２がそのイベントに関するインタラクティブ・アプリケーションをプリロードして、ロードされた状態８０２に移行する。スケジューリング・システム１０６は、イベントが放送中になる前の修正可能な秒数に、プレイ制御信号のイベント状態を送信することにより、各イベントに関するプリロール情報を提供する。
【０１５６】
トランスレータ・モジュール５０２は準備された状態８０４および放送中の状態８０６を通って移行し、イベント用のプレイ制御信号を受信したときにインタラクティブ・アプリケーションを開始する。ネットワークの問題または他の何らかの問題により、トランスレータ５０２がイベントに関するプレイ制御信号を逃して、イベントに関する放送中またはオンライン制御信号を受信した場合には、放送中の状態８０６に移行してインタラクティブ・アプリケーションを開始する。この場合に、オートメーション・サーバ１０８はプリロール情報の利益を逃すが、それにもかかわらずインタラクティブ・アプリケーションは開始される。
【０１５７】
トランスレータ・モジュール５０２が放送中またはオンライン信号を受信して、まだ準備された状態８０４にないのであれば、放送中／オンライン信号をプレイ信号として扱い、まず準備された状態８０４に移行してから自動的に放送中の状態８０６に移行する。
【０１５８】
送信プレイリストからイベント・データが消えると、トランスレータ・モジュール５０２は放送停止状態８０８に移行して、現在のインタラクティブ・アプリケーションを取り消すようにイベント・マネジャ５０４に命令する。
【０１５９】
スケジューリング・システムへの接続を失うなどの、他のあらゆる種類のエラーが発生した場合には、オートメーション・サーバ１０８は現在のインタラクティブ・アプリケーションを停止してエラー状態に移動する。
【０１６０】
表６は、理想的なトランスレーション・モジュール５０２の状態機械についての、プレイリストベース・スケジューリング・システム１０６に関するネイティブ制御信号と、理想的な制御信号と状態移行との関係を要約している。
【０１６１】
【表６】
0005536738.tif 000007
【０１６２】
［６．正規表現に基づくトランスレータ・イベント・タイプ計算］
放送プログラムＩＤのイベント・タイプを追跡するスケジューリング・システム１０６は、その情報をオートメーション・サーバ１０８に直接送信できる。多数のスケジューリング・システム１０６がこの特徴を支援しないので、放送局１１４の中には、ショーやコマーシャルのように異なったタイプの放送プログラムを区別する放送プログラムＩＤを用いるものもある。オートメーション・サーバ１０８はそれ自体のためにこの情報を用いる。トランスレータ５０２はその情報を用いて、どのタイプのイベントをスケジューリングするかを判断する。たとえば、コマーシャルの放送プログラムＩＤは「ＶＴ」という接頭辞を有し、テレビジョン・ショーの放送プログラムＩＤは異なった接頭辞を有するか全く接頭辞を有していなくてもよい。オートメーション・サーバ１０８は、放送プログラムＩＤと共に正規表現を用いて、コマーシャルとショーとを区別する。正規表現の分析に基づいて、放送プログラムＩＤがコマーシャルの基準に合致する場合に、イベント・タイプはコマーシャルに設定され、あるいは、放送プログラムＩＤがショーの基準に合致する場合にはショーに設定される。放送局１１４がショーとコマーシャルとを区別するために放送プログラムＩＤの名前を挙げない場合には、イベント・タイプは不明に設定される。かかる場合に、イベント・マネジャ５０４は、コンテンツがコマーシャルに関するものかショーに関するものかを伝えるフラッグがあるかどうか、実際のインタラクティブ・アプリケーション・ファイルを見る。
【０１６３】
［７．イベント・マネジャの大要］
図５を参照すると、イベント・マネジャ５０４はトランスレータ・モジュール状態機械５１０から様々なアトミック・コマンド５１４を受信して、それに応じて、そのインタラクティブ・アプリケーションの制御について放送サーバ１１０に命令する。
【０１６４】
一般的に、オートメーション・サーバ１０８がない従来のシステムにおいては、放送サーバ１１０は、放送サーバ・イベントのリストである予め定めされたプレイリストに従い、インタラクティブ・アプリケーションをデータ挿入ユニット１１６に送信する。
【０１６５】
しかし、オートメーション・サーバ１０８は、スケジューリング・システム１０６によって提供された制御信号を介して、放送サーバのプレイリストの作成を自動化し、放送サーバのプレイリスト上のイベントを動的に付加、削除および修正して、スケジューリング・システムのプレイリストに対するほぼリアルタイムな変更に合わせることができる。放送サーバのプレイリストは全てのチャネルに関するイベントを含んでもよいが、イベント・マネジャ５０４は、それがアトミック・コマンドを受信するチャネルに関するイベントのみを管理する。
【０１６６】
図５は、トランスレータ・モジュール５０２がアトミック・コマンド５１４をどのようにイベント・マネジャ５０４に送信するかを示している。イベント・マネジャ５０４はアトミック・コマンド５１４を解釈して、放送サーバ１１０に対する一連の基本コマンドを生成する。イベント・マネジャ５０４は、アトミック・コマンド５１４を受信すると、そこに含まれた放送プログラムＩＤを、マッピング・ロジック５０８を介して特定の放送サーバ・イベントにマッピングする。特定の放送プログラムＩＤに関して適切な放送サーバ・イベントが存在しないのであれば、イベント・マネジャ５０４は放送サーバ・イベントを作成する。一般的に、イベント・マネジャ５０２は必要に応じて、放送サーバ・イベントを作成、修正または破壊する。
【０１６７】
イベント・マネジャ５０４は、それが管理する各放送サーバ・イベントについて別個の状態機械５１２を維持する。各状態機械はイベントの放送プログラムＩＤによってそのイベントに割り当てられる。すると、トランスレータ・モジュール５０２からのアトミック・コマンドは、それらの放送プログラムＩＤに基づいてこれらの状態機械に送られる。このプロセスを以下のアトミック・コマンド・マッピング・ロジックの項で説明する。イベント状態機械５１２は、正確な放送サーバ基本コマンドを生成する責任を負う。それは、以下のイベント状態機械の項で詳細に説明する。
【０１６８】
トランスレータ・モジュール５０２およびイベント・マネジャ５０４という２つの状態機械を使用することで、比較的単純で効率的なイベント・マネジャ５０４の実施を可能にしながら、様々な異なったタイプのスケジューリング・システム１０６の何れをも容易にオートメーション・サーバ１０８とインターフェースすることが可能になる。これは、イベント・マネジャ５０４の変更を必要とせずに、新しいスケジューリング・システム１０６との協働のために、新たなトランスレータ・モジュール５０２を作成することを可能にする。
【０１６９】
異なったイベント・タイプは、アトミック・コマンド・マッピング・ロジック５０８およびイベント状態機械５１２に異なった挙動を行わせるので、以下の項では、イベント・マネジャ５０４が支持する様々なイベント・タイプを定義する。
【０１７０】
ａ）イベント・タイプ
イベント・タイプは放送サーバ・イベントがどのように挙動すべきかを決定する。イベント挙動を定める３つの異なったカテゴリがある。
【０１７１】
・放送プログラム・タイプ
・セグメンテーション
・対話性
番組タイプにはコマーシャル、ショーまたは不明があり得る。コマーシャルは、普通は短い（３０〜１２０秒）テレビジョン・プログラミングの独立した部分である。ショーは１つまたは複数のセグメントを含むテレビジョン番組である。１つまたは複数のコマーシャルがテレビジョン・ショー・セグメントの間に放映される。オートメーション・サーバ１０８が、スケジューリング・システム１０６によって送信された制御信号から番組タイプを判断できない場合には、そのタイプは不明に設定される。通常、不明なイベントはコマーシャルのように独立のプログラミングとして扱われてもよいし、テレビジョン・ショーのように扱われてもよい。
【０１７２】
番組タイプおよびセグメンテーションは密接に関係する。好適な実施形態においては、テレビジョン・ショーは常に区分されたものとして扱われ、コマーシャルは常に区分されていないものとして扱われる。不明な番組は何らかの番組として扱うことができる。区分されたテレビジョン・ショーの扱いを、図１２を参照して以下でさらに説明する。
【０１７３】
対話性（たとえば、インタラクティブ・アプリケーション）は、通常の対話型イベントまたはデフォルトの対話型イベントの何れかにすることができる。通常のイベントは、特定のインタラクティブ・アプリケーションがそれに関連づけられているイベントである。イベント・マネジャ５０４は、インタラクティブ・アプリケーション・データベース１１２においてイベントと関連づけられた特定のインタラクティブ・アプリケーションを見つけることができない場合には、デフォルトのインタラクティブ・アプリケーションをイベントの継続時間と置き換えてもよい。無イベントもデフォルト・イベントとして特定することができ、このことはイベントの継続時間中はインタラクティブ・アプリケーションが放送されないことを意味する。
【０１７４】
以下の表は６個のイベント・タイプを列挙し、各イベント・タイプの挙動を要約している。
【０１７５】
【表７】
0005536738.tif 000008
【０１７６】
イベント・タイプは放送サーバ・イベント設定を判断するためにも用いられる。
【０１７７】
ｂ）イベント・タイプを判断する
イベント・タイプは最初にトランスレータ・モジュール５０２によって判断されて、アトミック・コマンド５１４でイベント・マネジャ５０４に渡される。場合によっては、トランスレータ・モジュール５０２は実際のイベント・タイプを判断するのに十分な情報を有していない。トランスレータ・モジュール５０２はイベント・タイプに関する最初の判断を行うが、イベント・マネジャ５０４が、より良い情報を有している場合にはそのイベント・タイプを変更してもよい。イベント・マネジャ５０４は、トランスレータ・モジュール５０２が有していない２つの情報を有する。
１．イベント・マネジャ５０４は、インタラクティブ・アプリケーションがイベントの放送プログラムＩＤに関して存在するかどうかを知っている。
２．イベント・マネジャ５０４は、インタラクティブ・アプリケーションからイベント・タイプ情報を得ることができる。
【０１７８】
アプリケーションは、それが中断可能か否かを判断する情報を含む。オートメーション・サーバ１０８は、全てのテレビジョン・ショーが中断可能であり、全てのコマーシャルが中断可能ではないと仮定している。
【０１７９】
イベント・マネジャの情報とトランスレータ・モジュールの情報とを組み合わせると、イベント・マネジャ５０４は、以下の表で要約しているように適切なイベント・タイプを判断することができる。
【０１８０】
【表８】
0005536738.tif 000009
【０１８１】
ｃ）アトミック・コマンド・マッピング・ロジック
イベント・マネジャ５０４は、それが管理するイベント毎に別個の状態機械５１２を維持する。イベント・マネジャ５０４は、トランスレータ・モジュール５０２からアトミック・コマンド５１４を受信すると、アトミック・コマンドの放送プログラムＩＤを適切な放送サーバ・イベントと関連づけて、アトミック・コマンドを適切な状態機械５１２に渡さなければならない。このプロセスが、イベント・マネジャのマッピング・ロジック５０８による処理である。
【０１８２】
マッピング・ロジック５０８は、放送プログラムＩＤを放送サーバ・イベントＩＤと関連づけたイベント関連づけ表を作成して維持する。スケジューリングされたアトミック・コマンドのみが、新しい放送サーバ・イベントを作成させることができる。その結果、それらのみが、放送プログラムＩＤと新しい放送サーバ・イベントのＩＤとを関連づける、イベント関連づけ表に新しい行を加えることができる。イベントがその状態機械５１２を妨害して、その状態機械が破壊されたときに、その関連づけは表から外される。
【０１８３】
図１０はマッピング・ロジック５０８の一実施形態の状態挙動を示している。表９はこの図を説明している。
【０１８４】
【表９】
0005536738.tif 000010
【０１８５】
新しいイベント状態機械を作成するときに、マッピング・ロジック５０８は、上記の表８の規則に従ってイベント・タイプを判断する。
【０１８６】
通常の非セグメント化対話型イベントについては、イベント関連づけ表において、スケジューリング・システム・イベントと放送サーバ・イベントとの間に一対一のマッピングがある。２つの注目すべき例外を次に説明する。
【０１８７】
ｄ）特別な場合のイベント・マッピング
一般的に、スケジューリング・システム・イベントと放送サーバ・イベントとの間には一対一のマッピングがある。２つの注目すべき例外をここで説明する。
【０１８８】
（ｉ）デフォルト・イベント
スタートアップ時に、イベント・マネジャ５０４は３つの放送サーバ・イベント（デフォルト・イベント・タイプ毎に１つ）を作成する。これらは、イベント関連づけ表における最初の３つのイベントである。イベント・タイプに関して上記で説明したように、インタラクティブ・アプリケーションを特定された放送プログラムＩＤについて発見できないときにデフォルト・イベントが選択される。これをサポートするために、イベント関連づけ表は多数の放送プログラムＩＤが同じデフォルト・イベントＩＤにマッピングすることを可能にする。マッピング・ロジック５０８が、それと関連づけられたインタラクティブ・アプリケーションを有していないスケジュール・アトミック・コマンドを受信すると、マッピング・ロジック５０８は、その放送プログラムＩＤを、スケジュール・アトミック・コマンドにおいて特定されたイベント・タイプに対応するデフォルト・イベントと関連づける。デフォルト・イベントは既にスケジューリングされているので、マッピング・ロジック５０８は、スケジュール・アトミック・コマンドを渡さない。
【０１８９】
（ｉｉ）セグメント化されたイベント
前述のように、単一のテレビジョン・ショーは多数の部分にセグメント化することができる。スケジューリング・システム１０６にとっては、ショーはそれぞれが独自の放送プログラムＩＤを備えた一連の多数のイベントである。放送サーバにとっては、テレビジョン・ショーは、セグメント毎に中断されて再開される単一のイベントである。その結果、イベント関連づけ表は、多数の放送プログラムＩＤを単一の放送サーバ・イベントに合わせることによりこの隙間を埋める。
【０１９０】
スケジューリング・システム１０６がその放送プログラムＩＤにおいて、セグメント化に関する情報を提供する場合には、イベント・マッピング・ロジック５０８は、テレビジョン・ショーの最初のセグメントについて新しいイベント状態機械５１２を作成して、他の全てのセグメントを同じイベント状態機械５１２に自動的にマッピングする。
【０１９１】
残念ながら、ほとんどのスケジューリング・システムはこの情報を提供しない。そのため、オートメーション・サーバ１０８は、２つの異なった放送プログラムＩＤがインタラクティブ・アプリケーション・データベース１１２において同じインタラクティブ・アプリケーションにマッピングされているかどうかを判断することにより、これら２つの放送プログラムＩＤが同じテレビジョン・ショーと関連づけられているかどうかを判断する。マッピング・ロジック５０８は、新しい放送プログラムＩＤがイベント関連づけ表に既に列挙されたテレビジョン・ショーの別のセグメントに関するものであると判断すると、
１．イベント関連づけ表において、その新しい放送プログラムＩＤを予め存在する放送サーバ・イベントと関連づけ、
２．ショーは既にスケジューリングされているので、スケジュール・アトミック・コマンドを渡さない。
【０１９２】
このことを、以下のイベント状態機械およびセグメンテーションの項でさらに詳細に説明する。
【０１９３】
ｅ）放送サーバ基本コマンド
イベント・マネジャの状態機械は、４つの放送サーバ基本コマンド、すなわちスケジュール、開始、停止および取消を発行して、放送サーバを制御する。これらは、同じ名称のアトミック・コマンドに類似している。スケジュールは放送に関するインタラクティブ・アプリケーションを作成して、それを放送サーバのプレイリストに追加する。開始は、インタラクティブ・アプリケーションの放送を始めて、停止は、その放送を止める。取消は、インタラクティブ・アプリケーションを停止して（既に停止されていなければ）、メモリからインタラクティブ・アプリケーションを除去して、放送サーバのプレイリストから関連づけられたイベントを削除する。
【０１９４】
代替的な実施形態において、これら特別なコマンドは、無期限に中断する、選択された時間間隔にわたって中断する、直ちに再開する、選択された時間間隔の後に再開するなどの、他のより複雑な挙動を含むように拡張してもよい。
【０１９５】
また、コマンドのコンテンツ、すなわち、コマンドによって管理することができる対話性のタイプは可変であり、やはり、システム設計者によって決定された対話性のタイプに左右される。そのため、コマンドは、以前に放送された対話性、形態または他のデータ、ＵＲＬ、ウェブページ、Ｊａｖａアプレットまたは他のハイパーメディア対話性などについて、トリガをスケジューリングまたは開始してもよい。
【０１９６】
［８．イベント状態機械］
アトミック・コマンドはそれらの寿命を特定のイベント状態機械５１２において終える。各イベント状態機械５１２は放送サーバ・イベントと関連づけられており、そのイベントに関する全ての動作を制御する。アトミック・コマンド・マッピング・ロジック５０８は、どの状態機械５１２が特定のアトミック・コマンドを受信するかを判断する（以下で述べるいくつかの例外がある）。
【０１９７】
図１１は、イベント状態機械５１２の挙動を、コマーシャル、テレビジョン・ショーおよびデフォルト・イベント・タイプに関する詳細と共に示している。イベント状態機械はイベントのライフサイクルを追跡する。図１１において、状態移行はそれらがどのタイプのイベントに適用されるかを示すように、以下のとおり明示されている。
【０１９８】
Ｃ：コマーシャル・イベントに適用される移行
Ｓ：テレビジョン・ショー・イベントに適用される移行
Ｄ：デフォルト・イベントに適用される移行
一般的に、イベントは次の状態を通過する。
【０１９９】
スケジュールされた状態１１０２：トランスレータ・モジュール５０２からのスケジュール・アトミック・コマンドは、放送サーバ上でイベントのスケジューリングを行わせる。状態機械５１２は放送スケジューリング・プリミティブを発行し、これは、放送に関するインタラクティブ・アプリケーションを作成して、それを放送サーバのプレイリストに追加することを放送サーバ１１０に命令する。スケジューリングの後に、イベントは開始アトミック・コマンドによって開始される必要がある。
【０２００】
開始された状態１１０４、停止された状態１１０６：トランスレータ・モジュール５０２からの開始コマンドは、状態機械を開始された状態１１０４に移行する。状態機械は放送開始プリミティブを発行する。開始された後に、イベントは開始および停止アトミック・コマンドによって何回でも開始および停止することができる。状態機械はテレビジョン・ショーおよびデフォルト・イベントについてのみ停止された状態１１０６に移行し、コマーシャル・イベントについては停止された状態１１０６に到達しない。
【０２０１】
放送開始プリミティブに応じて、放送サーバ１１０は、インタラクティブ・アプリケーションが以前に送信されていない場合にはそれを送信することや、アプリケーションが以前に送信されている場合には、インタラクティブ・アプリケーションへトリガを送信して実行を始めることを含む様々な方法で、インタラクティブ・アプリケーションを始めることができる。同様に、放送サーバ１１０は、前述のように、形態やコンテンツなどの他の種類のデータをインタラクティブ・アプリケーションに送信するか、ＵＲＬなどを送信してもよい。
【０２０２】
二次トリガ処理段階１１０８：やはり開始された後に、イベントはゼロ１以上の二次トリガを発生させることができる。二次トリガは、イベントが活動中である（すなわち、放送サーバでスケジューリングされている）間に発生する作用である。一例は、イベントが終了する前のエンドユーザへの５分警告である。これらのトリガはスケジューリング・システム１０６によって作成されて、制御信号としてトランスレータ・モジュールに渡される。
【０２０３】
取り消しされた状態１１１０：最後に、イベントと関連づけられた放送プログラムが一端終了すると、取消アトミック・コマンドがトランスレータ・モジュール５０２から送信される。状態機械は放送サーバ１１０に放送取消プリミティブを発行することにより応答し、放送サーバ１１０はイベントを取り消す。この状態には、異なったイベントについては異なった方法で到達する。コマーシャル・イベントについては、トランスレータ・モジュール５０２から取消アトミック・コマンドが受信されたときにこの状態に到達し、テレビジョン・ショー・イベントについては、次のテレビジョンの状態コマンドが受信されたときにこの状態に到達し、最後にデフォルト・イベントについては、遮断時にこの状態に到達する。
【０２０４】
放送サーバ・イベント（インタラクティブ・アプリケーション）の開始を、それに関連づけられたスケジューリング・システム放送プログラムと正確に同期させるために、スケジューリング・システムの中にはプリロールを支持するものがある。プリロールは、スケジューリング・システム１０６が制御している装置（ＶＴＲのような）が動作（番組を放映し始めるような）を完了するのに必要な時間の長さである。スケジューリング・システム１０６は、同じ種類のプリロール警告をオートメーション・サーバ１０８に与えて、それにインタラクティブ・アプリケーションを開始する時間を与えることができる。スケジューリング・システムの中にはプリロール値を１つだけ支持するものがある。オートメーション・サーバ１０８の応答時間がプリロール値よりも速ければ、オートメーション・サーバ１０８は、放送サーバ・イベントを開始する際に、幾分か付加的な遅延を導入する。この微同調タイミングは、システム設計者によってイベント状態機械で行われる。開始済み、停止済みおよび取り消し済みの状態は全て、実際に放送サーバ・イベントを開始、停止または取り消しする前に遅延の量を導入できる。
【０２０５】
全ての放送サーバ・イベントがこの同じ基本的状態機械を共有するが、イベント状態機械はイベント・タイプ毎に異なる。これらの相違の詳細を以下で説明する。
【０２０６】
二次トリガは全てのイベント・タイプについて同様に処理される。二次トリガは、オートメーション・サーバ１０８を拡張する方法である。スケジューリング・システム１０６の中には、基本的制御信号（プリロード、プリロール、放送中および放送停止）以上のものをサポートするものがある。それらは、たとえば、番組の終了前５分に制御信号を送信して、番組が終わりそうであることを装置に警告することができる。オートメーション・サーバは、この信号を用いて現在のインタラクティブ・アプリケーションを更新し、それが終わりそうであることを視聴者に警告することができる。これは、二次トリガをどのように用いることができるかのほんの一例にすぎない。
【０２０７】
ａ）コマーシャル・イベント・タイプ
これは最も単純なイベント状態機械である。コマーシャル・イベントは停止されることも再開されることもないので、スケジューリングされて、開始され（潜在的にはいくつかの二次トリガで）、最後に取り消されるだけである。以下の表は状態、その状態に入らせるアトミック・コマンドおよびその状態によって行われる作用を要約している。
【０２０８】
【表１０】
0005536738.tif 000011
【０２０９】
ｂ）ショー・イベント・タイプ
ショー・イベント状態機械５１２はコマーシャル・イベント状態機械に非常に類似しているが、やはりセグメント化を明らかにしなければならない（イベント・タイプの項で説明）。
【０２１０】
コマーシャル・イベントとは異なり、ショーは将来あるときに再開する必要があるので、取消コマンドはショー・イベントを停止するだけである。次のショーの開始アトミック・コマンドが受信されたときにだけ、このショーを取り消すことができる。以下の表は、状態、その状態に入らせるアトミック・コマンドおよびその状態によって行われる作用を要約している。
【０２１１】
【表１１】
0005536738.tif 000012
【０２１２】
ｃ）デフォルト・イベント・タイプ
デフォルト・イベントには３つの異なったタイプ、すなわちデフォルト・ショー・イベント、デフォルト・コマーシャル・イベントおよびデフォルト不明イベントがある。デフォルト・イベントは、その放送プログラムＩＤについて関連づけられたインタラクティブ・アプリケーションがないときに用いられる。
【０２１３】
コマーシャル・イベントとは異なり、デフォルト・イベントは将来のあるときに再開する必要があるので、取消コマンドはデフォルト・イベントを停止するだけである。それはオートメーション・サーバ１０８が遮断されたときに取り消されるだけである。通常のイベントとデフォルト・イベントとの間の主たる相違は、２つの連続した放送プログラムＩＤが同じデフォルト・イベントを意味し得る場合があるということである。この場合には、デフォルト・イベントを停止せずに、すぐに再開することが好ましい。その代わりに、デフォルト・イベントは放映を続けることを許容される。これが機能するように、「停止された」状態は、次の開始アトミック・コマンドもこのデフォルト・イベントに関するものでないことが確かになるまで、実際にはそのイベントを停止しない。デフォルト・イベント・タイプに関わらず、以下の表は、状態、その状態に入らせるアトミック・コマンドおよびその状態によって行われる作用を要約している。
【０２１４】
【表１２】
0005536738.tif 000013
【０２１５】
［９．セグメンテーション］
図１２は、安定した経験を視聴者に提供し、同様にあらゆるコマーシャルの間に適切なインタラクティブ・アプリケーションを提供しながら、テレビジョン・ショーの異なったセグメントの間に適切なインタラクティブ・アプリケーションを維持するために、どのようにテレビジョン・ショーのセグメンテーションを処理するかを示している。
【０２１６】
図１２においては、セグメント化されたテレビジョン・ショーを処理するときの、制御信号、アトミック・コマンドおよび放送サーバ・コマンドの、スケジューリング・システム１０６、（理想的）トランスレータ・モジュール５０２およびイベント・マネジャ５０４からの流れのイベント・トレースが示されている。テレビジョン・ショーであるショーＡは、それぞれ独特な放送プログラムＩＤを有する２つのセグメントＡ．１およびＡ．２で放送される。これらのセグメントの間にはコマーシャルＡｄＸがある。セグメントＡ．２の後には、コマーシャルＡｄＹがあり、それに新しいショーであるショーＢが続く。ここで、本発明によって解決される問題は、ＡｄＸおよびＡｄＹに付随する何か特定のまたはデフォルトの対話性を提供しながら、両方のセグメントＡ．１およびＡ．２の間に同じ対話性を維持する（セグメントは独特な放送プログラムＩＤを有しているが）というものである。この結果を達成するために、両セグメントＡ．１およびＡ．２に関する放送プログラムＩＤは、イベント・マネジャ５０４によって、イベント関連づけ表において同じ放送イベント（ショーＡ）にマッピングされなければならない。これは、上記の様々な手順を用いて行われる。そして、制御信号およびアトミック・コマンドのシーケンスは以下のとおりである。
【０２１７】
ショー・セグメントＡ．１
１２００：まず、スケジューリング・システム１０６がプリロードＡ．１信号を発行する。
【０２１８】
１２０２：次にトランスレータ・モジュール５０２はセグメントＡ．１をスケジューリングする。
【０２１９】
１２０４：イベント・マネジャ５０４はこのイベント（ショーＡ）に関する新しい状態機５１２を作成して、イベント関連づけ表にこの放送プログラムＩＤおよび状態機械に関するマッピングを記憶する。ショーＡ状態機械は、ショーＡと共に放送に関する適切なインタラクティブ・アプリケーションをスケジューリングするように放送サーバ１１０に命令する。
【０２２０】
１２０６：そして、スケジューリング・システム１０６は、Ａ．１に関するプリロール信号または開始信号の何れかを発行する。
【０２２１】
１２０８：次に、トランスレータ・モジュール５０２は、潜在的にはプリロールの量と、イベント・マネジャ５０４および放送サーバ１１０が放送サーバ・イベントを開始するのに要する時間の長さとによって決定される幾分かの遅延量の後に、セグメントＡ．１を開始する。
【０２２２】
１２１０：それに応じて、イベント・マネジャ・ショーＡ状態機械は、ショーＡに関するインタラクティブ・アプリケーションを開始するように放送サーバに命令する。
【０２２３】
１２１２：ショーＡのインタラクティブ・アプリケーションは放送受信機１２０によって実行されて、放送受信機１２０に連結されたテレビジョンセットなどの表示装置に現れる。
【０２２４】
スケジューリング・システム１０６が最初にプリロールを発行すれば、ショーＡ．１は既に開始されているので、トランスレータ・モジュール５０２はスケジューリング・システム１０６からのそれに続く開始信号を無視する。
【０２２５】
ＡｄＸ
１２１４：ある時間の後に、スケジューリング・システム１０６はＡｄＸに関するプリロード信号を発行する。
【０２２６】
１２１６：そして、トランスレータ・モジュール５０２はスケジュールＡｄＸアトミック・コマンドを発行する。
【０２２７】
１２１８：イベント・マネジャは放送サーバ１１０にスケジュール・コマンドを発行して、ＡｄＸに関するインタラクティブ・アプリケーション（デフォルトを含む）をスケジューリングする。
【０２２８】
１２２０：そして、スケジューリング・システム１０６はプリロールまたは開始Ａｄ信号を発行する。
【０２２９】
１２２２、１２２４：トランスレータ・モジュール５０２には、ショーＡへの別のセグメントがあることは分からないので、セグメントＡ．１に関する取消コマンドを送信してから、開始ＡｄＸコマンドを送信する。（スケジューリング・システム１０６が停止Ａ．１を送信すれば、それはＡｄＸに関するプリロードおよびプリロールの後に来るので無視される。）
１２２６、１２２８：通常、イベント・マネジャ５０４はセグメントＡ．１を取り消すことにより応答する。しかし、イベント・マネジャ５０４は一時的に取消コマンドを無視して、その代わりに、ショーＡに関するインタラクティブ・アプリケーションを停止する停止Ａ．１コマンド、そして、ＡｄＸのインタラクティブ・アプリケーションの実行を始める開始ＡｄＸコマンドを発行する。
【０２３０】
１２３０、１２３２：これらのコマンドが放送受信機によって受信されると、受信機はショーＡに関するインタラクティブ・アプリケーションの実行を中断するが、終了はせず、ＡｄＸのインタラクティブ・アプリケーション（またはデフォルト・アプリケーション）の実行を始める。インタラクティブ・アプリケーションを中断することは、ゲームの点数、視聴者が視聴していた特定の形態など、それが有する状態情報は何であれ保持する。中断することは、たとえば、視聴者のテレビジョンセット上の表示からショーＡのインタラクティブ・アプリケーションを排除するという別の効果も有するので、ＡｄＸが画面に出たときにショーＡインタラクティブ・アプリケーションは表示されず、ＡｄＸの対話性は適切に進む。
【０２３１】
イベント・マネジャ５０４は、この時点ではわからない、ショーＡには他のセグメントがないということが判断できるまで、トランスレータ・モジュールの取消コマンドを遅延させる。その後、以下に示すように、これはショーＢが開始されたときに発生する。
【０２３２】
ショー・セグメントＡ．２
１２３４：ＡｄＸが終わりそうになると、スケジューリング・システム１０６はプリロードＡ．２信号を発行する。
【０２３３】
１２３６：トランスレータ・モジュール５０２はスケジュールＡ．２コマンドを発行する。
【０２３４】
この時点で、イベント・マネジャ５０４のマッピング・ロジック５０８はこのイベント（セグメントＡ．２）に関する放送プログラムＩＤが、セグメントＡ．１の放送プログラムＩＤとして同じインタラクティブ・アプリケーションに相関していると判断する。したがって、マッピング・ロジック５０８は、セグメントＡ．２に関する全てのコマンドを（それらの放送プログラムＩＤに従って）、ショーＡに関するイベント状態機械に向ける。ショーＡのこのセグメントに関するインタラクティブ・アプリケーションは既に放送受信機でロードされているので、ここで放送サーバにそれをプリロードさせる必要はない。そのため、イベント・マネジャは別のスケジュール・コマンドを発行しない。
【０２３５】
１２３８：そして、スケジューリング・システム１０６は、プリロールＡ．２または開始Ａ．２信号の何れかを発行する。
【０２３６】
１２４０、１２４２：トランスレータ・モジュール５０２は、ＡｄＸに関する取消コマンドおよびセグメントＡ．２に関する開始コマンドを送信する。
【０２３７】
１２４４、１２４６：イベント・マネジャ５０４はまず、ＡｄＸに関する対話性を取り消すように放送サーバに命令して、そして、開始コマンドを、ショーＡと関連づけられたインタラクティブ・アプリケーションを開始するように放送サーバに命令するショーＡ状態機械に向ける。ショーＡに関するインタラクティブ・アプリケーションは以前に中断されただけなので、ＡｄＸ開始前それが有していた状態が何であれその状態で、ここで再度動作を始める（１２４８）。
【０２３８】
そのため、ショーＡがゲームショーおよびゲーム・アプリケーションとしてのそのインタラクティブ・アプリケーションであったならば、ＡｄＸに関するアプリケーションを中断することは、ゲームにおける視聴者の総得点（および他の状態）を保存したであろう。そしてそれは、セグメントＡ．２が放送されてアプリケーションが再開されると回復される。
【０２３９】
ＡｄＹ
１２５０：後のある時点で、スケジューリング・システム１０６はプリロードＡｄＹ信号を発行する。
【０２４０】
１２５２：トランスレータ・モジュール５０２は、スケジュールＹコマンドをイベント・マネジャ５０４に送信する。
【０２４１】
１２５４：イベント・マネジャ５０４は、放送サーバでＡｄＹに関する対話性をスケジューリングする。
【０２４２】
１２５６：そして、スケジューリング・システム１０６は、プリロールＡｄＹまたは開始ＡｄＹ信号を発行する。
【０２４３】
１２５８、１２６０：トランスレータ・モジュール５０２は、セグメントＡ．２に関する取消コマンドおよびＡｄＹに関する開始コマンドを送信する。
【０２４４】
１２６２、１２６４：やはり、イベント・マネジャ５０４は取消コマンドを遅延させて、その代わりに、ショーＡに関する対話性を停止し、ＡｄＹに関する対話性がもしあれば（デフォルトを含めて）、それを開始するように放送サーバに命令する。ショーＡのインタラクティブ・アプリケーションは中断されて（１２６６）、ＡｄＹに関する対話性が実行される（１２６８）。
【０２４５】
やはり、ショーＡに関する状態機械は、ショーＡの別のセグメントがあるかまだ分からないので、セグメントＡ．２のインタラクティブ・アプリケーションの取消を遅らせる。
【０２４６】
ショーＢ
１２７０：ＡｄＹが終わりそうになると、スケジューリング・システム１０６はプリロード・ショーＢ信号を発行する。
【０２４７】
１２７２：トランスレータ・モジュール５０２はショーＢをスケジューリングする。
【０２４８】
１２７４：ここで、イベント・マネジャのマッピング・ロジック５０８は、ショーＢに関するプログラムＩＤはショーＡと異なり、そのためショーＡに関しては他にセグメントはないと判断する。ショーＢに関する新しい状態機械が開始される。そして、イベント・マネジャ５０４は放送サーバにスケジュール・ショーＢを発行して、ショーＢに関する対話性をスケジューリングする。ショーＢはまだ始まっていないので、イベント・マネジャはショーＡの対話性をまだ取り消さない。
【０２４９】
１２７６：そして、スケジューリング・システム１０６は、プリロールまたは開始ショーＢの何れかを発行する。
【０２５０】
１２７８：１２８０：トランスレータ・モジュール５０２は、ＡｄＹを取り消してショーＢを開始するアトミック・コマンドを発行する。
【０２５１】
１２８２、１２８４：イベント・マネジャ５０４はまずＡｄＹを取り消して、そして開始コマンドを新しいショーＢ状態機械に向ける。
【０２５２】
１２８８：開始ショーＢコマンドが現れると、新しいショーが始まっていることは明らかなので、イベント・マネジャ５０４はショーＡ、セグメントＡ．２に関する対話性を安全に取り消すことができる。この取消コマンドはトランスレータ・モジュール５０２から直接には来ないが、ショーＢに関する開始コマンドに基づいてイベント・マネジャのショーＡ状態機械によって合成される。ショーＢがその放送に数時間先だってスケジューリングされることは可能であるので、ショーＡの対話性はショーＢが実際に開始するまで取り消されるべきではない。また、背中合わせのショーの潜在性のためおよび、ショーＢをその開始時間に数時間先だってスケジューリングすることができるため、イベントＢをスケジューリングしているときには取り消しは発生し得ないことに留意されたい。
【０２５３】
場合によっては、２つのテレビジョン・ショー（たとえば、ショーＡおよびショーＢ）の間には介入するコマーシャル（たとえばＡｄＹ）はない。すなわち、２つのショーは背中合わせになり得る（すなわち、ショーＡの直後にショーＢを開始できる）。この場合に、ショーＡ取消１２８８は、ショーＢ開始１２８４の前に発生する。
【０２５４】
代替的な実施形態において、イベント・マネジャ５０４は、別のインタラクティブ・アプリケーションを取り消す前に１つのインタラクティブ・アプリケーションを開始することができる。たとえば、インタラクティブ・アプリケーションを取り消すことが停止するよりも時間がかかるのであれば、これは望ましいことであり、２つのショーが背中合わせでない場合に、ショーＡに関するインタラクティブ・アプリケーションを取り消す前にショーＢに関するインタラクティブ・アプリケーションを開始することが最適化である。一般的に、代替的な実施形態は、以前のインタラクティブ・アプリケーションを停止して、次のインタラクティブ・アプリケーションを開始してから、前のインタラクティブ・アプリケーションを取り消すものである。
【０２５５】
要約すれば、本発明は、放送および、テレビジョン・ショーやコマーシャルなどを含む放送プログラムの表示と同期して、対話型コンテンツの挙動を制御する様々な方法および手段を提供する。ネイティブ制御信号を用いて放送プログラムの同一性および状態を判断してから、その放送プログラムと関連づけられた対話性の状態を管理することを含む、本発明の原理は、多数の変形がある多様な異なった方法で実施することができる。本発明の範囲内にあるこれらの変形のいくつかは次のとおりである。
【０２５６】
オートメーション・サーバ１０８は、トランスレータ・モジュール５０２およびイベント・マネジャ５０４の二重の状態機械を用いるものとして説明する。これは有益ではあるが、本発明の他の実施形態は、たとえば制御信号の各タイプに関するプログラムされたスクリプトあるいは他の手続き的機構を用いて、状態機械なしにオートメーション・サーバ１０８またはその機能を実施してもよいと考えられる。
【０２５７】
トランスレータ・モジュール５０２における一連の理想的な制御信号および状態、イベント・マネジャ５０４に出力されるアトミック・コマンドまたは、放送サーバのような装置を制御するために生成されたコマンドは全て、より多いかより少ない信号およびコマンドをカバーするように変えてもよい。同様に、状態のそれぞれにおける特定の作用を変えてもよい。たとえば、停止または取り消しするコマンドに加えて、特定の再開または遅延コマンドを備えた再開を、さらに複雑な制御に用いてもよい。保存コマンドは、将来の検索のために、対話性において生成されたデータを保存するように放送受信機１２０に命令してもよい。このコマンドは、たとえば、ユーザまたは対話性が作成したデータを保存するために、エラー状態、チャネル変更または他のイベントに応じて生成することができる。送信またはアップロード・コマンドは、作成／記憶されたデータを収集機構に送信し戻して、たとえば対話型購入アプリケーションを介して商品の購入を完了するように放送受信機に命令してもよい。
【０２５８】
オートメーション・サーバ１０８および本発明によって制御できる対話性のタイプは様々であり、既存のインタラクティブ・アプリケーションに限定されない。ウェブページなどの対話性または、ウェブページとインタラクティブ・アプリケーションとの組み合わせは、本発明の原理を用いて制御することができると思われる。
【０２５９】
放送サーバまたは類似の装置へのコマンドのタイミングは、帯域幅、データを送信する接続速度および、どれくらい速くテレビジョン画像を表示できるかに相対的な放送受信機の実行応答時間に応じて変えてもよい。そのため、コマンドは基本的な放送イベントが発生する前、ちょうどそのとき、直後またはほぼ前に送信することができる。コマンドのタイミングは、最も早い利用可能な時間にどの情報が分かっているかを利用して最適化できる。
【０２６０】
制御信号をオートメーション・サーバに提供する手段またはその均等物は変えてもよい。これらは、シリアル・ポート、ＬＡＮまたはスケジューリング・システムへの遠隔通信インタフェース上のバイナリ・データあるいは、アナログまたはデジタル・ビデオ信号に符号化されたバイナリ・データを含む。
【０２６１】
したがって、本発明は特許請求の範囲によって限定され、上記に開示した好適な実施形態の詳細によっては本来限定されないものと理解される。
【図１】
0005536738.tif 000014
【図２】
0005536738.tif 000015
【図３】
0005536738.tif 000016
【図４】
0005536738.tif 000017
【図５】
0005536738.tif 000018
【図６】
0005536738.tif 000019
【図７】
0005536738.tif 000020
【図８】
0005536738.tif 000021
【図９】
0005536738.tif 000022
【図１０】
0005536738.tif 000023
【図１１】
0005536738.tif 000024
【図１２】
0005536738.tif 000025