(57)【特許請求の範囲】
【請求項１】
ビデオイメージを、決定可能な表示持続時間を持つ１つ以上のビデオパケットのシーケンスへと符号化するビデオエンコーダと、
実行可能コードを、前記表示持続時間と所定の最大持続時間との少なくとも１つに基づくコンテクスト持続時間パラメータを包含する１つ以上のデータパケットのシーケンスへと符号化するデータエンコーダと、を有し、
前記コンテクスト持続時間パラメータは、前記実行可能コードの実行の開始から当該実行可能コードの実行の終結までの期間を表す、伝送ストリームエンコーダ。
【請求項２】
前記１つ以上のビデオパケットのシーケンスが、決定可能な表示開始時間をさらに有し、前記１つ以上のデータパケットのシーケンスが、該表示開始時間に基づくコンテクスト開始時間をさらに含む請求項１の伝送ストリームエンコーダ。
【請求項３】
前記ビデオエンコーダ及び前記データエンコーダに動作的に結合されたマルチプレクサであって、このマルチプレクサが前記１つ以上のビデオパケットのシーケンスと前記１つ以上のデータパケットのシーケンスとを伝送ストリームへと合成し、この伝送ストリームの受信機への送信を容易化する請求項１に記載された伝送ストリームエンコーダ。
【請求項４】
前記伝送ストリームがＭＰＥＧに適合する伝送ストリームである請求項３に記載された伝送ストリームエンコーダ。
【請求項５】
伝送ストリームデコーダにおける前記伝送ストリームの受信を容易化する前記伝送ストリームを送信する送信機をさらに含む請求項３に記載された伝送ストリームエンコーダ。
【請求項６】
伝送ストリームを受け取り、そこから１つ以上のビデオパケットのシーケンスと、１つ以上のデータパケットのシーケンスとを創出するデマルチプレクサと、前記１つ以上のデータパケットのシーケンスを処理し、実行可能コードを創出するアプリケーションプロセッサと、前記実行可能コードを記憶する前記アプリケーションプロセッサと動作的に結合されたメモリと、前記アプリケーションプロセッサからの進行コマンドに呼応して前記実行可能コードを実行し、前記アプリケーションプロセッサからの終結コマンドに呼応して前記実行可能コードを終結させる、前記アプリケーションプロセッサ及び前記メモリに動作的に結合された実行プロセッサと、を有する伝送ストリームデコーダにおいて、
前記１つ以上のデータパケットのシーケンスがコンテクスト持続時間パラメータを包含し、前記コンテクスト持続時間パラメータは、前記実行可能コードの実行の開始から当該実行可能コードの実行の終結までの期間を表し、前記アプリケーションプロセッサが前記コンテクスト持続時間パラメータに依存して前記実行プロセッサへ前記終結コマンドを通信する伝送ストリームデコーダ。
【請求項７】
前記実行プロセッサが、前記実行可能コードの実行に呼応してアプリケーションイメージを創出し、前記伝送ストリームデコーダが、前記１つ以上のビデオパケットのシーケンスをビデオイメージへと処理するビデオプロセッサと、前記ビデオプロセッサ、及び前記実行プロセッサに動作的に結合され、前記ビデオイメージと前記アプリケーションイメージとを表示するビデオ表示装置とをさらに含む請求項６に記載の伝送ストリームデコーダ。
【請求項８】
前記１つ以上のビデオパケットのシーケンスが、前記コンテクスト持続時間パラメータと略相関がある表示持続時間を持つ、請求項７に記載の伝送ストリームデコーダ。
【請求項９】
前記１つ以上のビデオパケットのシーケンスが決定可能な表示開始時間を持ち、前記アプリケーションプロセッサが、前記実行プロセッサに前記進行コマンドを通信し、前記表示開始時間と略等しい進行時間で前記実行可能コードの実行を行う請求項８に記載の伝送ストリームデコーダ。
【請求項１０】
前記１つ以上のビデオパケットのシーケンスが表示開始時間を包含し、前記１つ以上のデータパケットのシーケンスが、コンテクスト開始時間を包含し、前記ビデオ表示装置が前記表示開始時間で前記ビデオイメージを表示し、前記アプリケーションプロセッサが、前記コンテクスト開始時間で前記実行可能コードの実行を行うように前記実行プロセッサに前記進行コマンドを通信する請求項８に記載の伝送ストリームデコーダ。
【請求項１１】
前記伝送ストリームはＭＰＥＧに適合する伝送ストリームである請求項６に記載の伝送ストリームデコーダ。
【請求項１２】
伝送ストリームエンコーダから前記伝送ストリームを受け取るように受信機をさらに含む請求項６に記載の伝送ストリームデコーダ。
【請求項１３】
ビデオイメージを１つ以上のビデオパケットのシーケンスへと符号化するステップと、前記１つ以上のビデオパケットのシーケンスに関連付けられた表示持続時間を決定するステップと、実行可能コードを、前記表示持続時間と所定の最大持続時間との少なくとも１つに基づくコンテクスト持続時間パラメータの符号化を含み、１つ以上のデータパケットのシーケンスに符号化するステップと、前記１つ以上のビデオパケットのシーケンスと、前記１つ以上のデータパケットのシーケンスとを多重化し伝送ストリームを形成するステップと、を有し、
前記コンテクスト持続時間パラメータは、前記実行可能コードの実行の開始から当該実行可能コードの実行の終結までの期間を表す、伝送ストリームをエンコーディングする方法。
【請求項１４】
表示開始時間を前記１つ以上のビデオパケットに符号化するステップと、前記表示開始時間に基づくコンテクスト開始時間を前記１つ以上のデータパケットのシーケンスに符号化するステップと、をさらに含む請求項１３に記載の方法。
【請求項１５】
伝送ストリームデコーダで前記伝送ストリームを受け取るように前記伝送ストリームを送信するステップをさらに含む請求項１３に記載の方法。
【請求項１６】
伝送ストリームを逆多重化し、そこから１つ以上のビデオパケットのシーケンスと、１つ以上のデータパケットのシーケンスとを創出するステップと、前記１つ以上のデータパケットのシーケンスを処理し、そこから実行可能コードとコンテクスト持続時間パラメータとを創出するステップと、前記コンテクスト持続時間パラメータに基づく期間にわたり前記実行可能コードを実行するステップとを有し、
前記コンテクスト持続時間パラメータは、前記実行可能コードの実行の開始から当該実行可能コードの実行の終結までの期間を表す、伝送ストリームを復号化する方法。
【請求項１７】
前記実行可能コードを実行するステップがアプリケーションイメージを創出し、当該方法が、ビデオイメージを創出するために前記１つ以上のビデオパケットのシーケンスを処理するステップと、前記ビデオイメージと前記アプリケーションイメージとを表示装置に表示するステップとをさらに含む請求項１６に記載の方法。
【請求項１８】
伝送ストリームエンコーダから前記伝送ストリームを受け取るように前記伝送ストリームを受け取るステップをさらに含む請求項１６に記載の方法。
【発明の詳細な説明】
【０００１】
【発明の技術分野】
本発明は通信の分野に関し、とりわけ、埋設されたインタラクティブな（双方向の）アプリケーションを持つデジタルＴＶ放送の分野に関する。
【０００２】
【従来の技術】
デジタルフォーマットのＴＶ信号放送は、従来からのビデオパケットやオーディオパケットばかりでなく、データパケットの通信をも提供する。データパケットはビデオパケットやオーディオパケットに関連した補助的情報を含むこともできる。データパケットはさらに、セットトップボックス、ＴＶ受信機に埋設されたコンピュータ、又は通常のパーソナルコンピュータのような、コンピュータ上で実行可能なコード（実行可能コード（executable  code））を含むこともできる。この実行可能コードを送信することにより、ユーザは送信されたビデオやオーディオの情報のコンテクストにおいてコンピュータと双方向に対話ができる。すなわち、例えばある製品が宣伝されているときに、当該実施可能コードは、ユーザに当該製品の注文を許可するように構成されうる。
【０００３】
通常、デジタルＴＶ信号は、伝送ストリームを形成する一連のパケットとして送信される。ＭＰＥＧ−２規格は、デジタル情報の各パケットをビデオ、オーディオ、又はインタラクション（双方向）情報を含むものと識別する手段を含む。インタラクティブな能力を持つ通常のデジタルＴＶでは、パケットは、伝送ストリームから、別々にビデオ、オーディオ、及びデータストリームへと逆多重化される。ビデオストリーム及びオーディオストリームはそれぞれ、ビデオデコーダ及びオーディオデコーダにより処理され、データストリームは、アプリケーションプロセッサによりメモリに記憶され、次の実行へと進行処理される。データストリームは典型的には、コードの各実行可能要素を形成する複数のパケットからなる。さらに典型的には、進行処理された実行可能要素は、引き続くユーザの選択のための一つ以上のボタンを持つ表示を生じさせる。例えば、製品が宣伝されている間、この宣伝に関連した実行可能要素は、「さらなる情報のためにここを押して下さい。」と読めるボタンを表示したり、「この製品を購入するために、あなたリモートコントロール上の１を押して下さい。」と読める注意書きを表示する。ユーザが適切なボタンを作動させるときに、実行可能な要素はさらなる情報を表示させることを続行する。当該さらなる情報は、該実行可能な要素内に含まれるか、又は独立したデータ要素に含まれるか若しくは他の実行可能要素により創出されうる。
【０００４】
複数の実行可能要素が、ビデオストリーム又はオーディオストリームの１つ以上のセグメントに関連付けされることも可能である。例えば、ショッピング用チャンネル上で製品が順次表示され、且つ、様々な製品が同時にＴＶ画面に表示されうる。この例における製品に関連した各実行可能要素は、例えば、「自転車を注文するためにここを押して下さい。」や「ダイアモンドリングを購入するためにここを押して下さい。」等の明瞭なメッセージを表示するように構成されるであろう。当該実行可能要素は別個独立であってもよいし、又は大きなアプリケーションの要素であってもよい。例えば、汎用アプリケーションがクレジットカード情報等の安全を保証するための共通に使用されるコードを含む特別に販売するためのプログラムに関連付けられてもよい。そして、製品に関連された各実行可能要素は一般のアプリケーションプログラムの一部であるように設計されうる。
【０００５】
各実行可能要素の実行と同期するために、キューマーカー（queue  marker）がビデオストリームに配されている。第１のキューマーカーは、いつ特別に実行可能な要素を始動させるかをアプリケーションプロセッサに通知するように使用され、他のキューマーカーは、いつアプリケーションプロセッサが実行可能要素を終了させ、メモリからその要素を取り除くことが可能であるかを識別する。しかし、この同期プロセスには問題がある。ビデオストリームのキューマーカーの検出にはこれらのマーカーのためにストリームを絶えず監視する必要がある。このことはビデオプロセッサの複雑性を増加させ、当該インタラクティブＴＶシステムの全体的な性能やコストに影響を与えかねない。
【０００６】
ほとんどのビデオストリームは、各ビデオフレームの内容を動的に調整することにより帯域幅の混雑化を補うＭＰＥＧのようなプロトコルに適合している。このようなプロトコルでは、ビデオフレームにおける情報は、全体的に当該フレームを伝送するための帯域幅が不十分である場合はいつでも破棄される。その結果、ビデオストリームのオリジナルの符号化における１つ以上のキューマーカーは、通常のディジタルＴＶ放送に関連した符号化−伝送−復号化プロセス（encoding−transmission−decoding  process）を通じて、破棄されるか失われることがありうる。初期のキーマーカーが失われる場合は、実行可能要素は進行されない。例えば、終了のキーマーカーが失われる場合には、実行可能要素はビデオストリームのコンテクストの外部でアクティブのままで残存する。同じような困難性が、例えばＴＶ受信機のチャンネルを変更することで、ユーザが伝送ストリーム源を変更した場合に生じるであろう。対応する宣伝広告側の前でユーザがチャンネルを変えたために、終了のキーマーカーが失われた場合に、実行可能要素はビデオストリームのコンテクストの外部でアクティブのままで残存する。この場合ユーザは例えば、購入しようとするアイテムに対応するビデオ（映像）の参照（リファレンス）なしでアイテムを購入するオプションを与えられることになる。
【０００７】
【解決しょうとする課題】
本発明の目的は、ビデオストリームのオリジナルコンテンツを継続的に、又は完全に受信することに依存することなく、ビデオストリームの対応するセグメントにデジタルＴＶ放送の実行可能要素を同期させることにある。
【０００８】
この目的やその他の目的は、各実行可能要素に「寿命」（life  time）を割り当てる（与える）ことにより達成される。寿命は実行可能要素に対応するビデオセグメントのコンテクストの内部に存在するように決定される。好適実施例では、対応するビデオセグメントが伝送ストリームへと符号化するために準備されつつある場合に、当該実行可能要素のためのコンテクスト寿命持続時間が決定される。続いて、コンテクスト持続時間は伝送ストリームにおける実行可能要素の符号化に含まれる。実行可能要素が伝送ストリームから復号化される場合に、コンテクスト持続時間は、このコンテクスト持続時間が経過した後で実行可能要素を終結（terminate）するために使用される。この態様では、各進行済みの実行可能要素が伝送ストリームの後続のコンテンツとは無関係に、所定時間内で終結される。
【０００９】
【発明の実施の形態】
図１は、伝送ストリームコーダ１００及び伝送ストリームデコーダ２００の実施例のブロック概念図を示す。ビデオイメージ１１２及び実行可能コード１１４が、伝送ストリーム１４１にそれぞれ含まれるように、パケット１２１及びパケット１３１へ符号化される。伝送ストリーム１４１はオーディオや他のパケットのような他の要素を包含することができるが、ここでは理解し易いようにビデオイメージ１１２及び実行可能コード１１４のみが示されている。図１の実施例では、コンテクストエディタ（context  editor）が、実行可能コード１１４をビデオイメージ１１２のある特別なセグメントに関連付けするために使用される。本発明の好適実施例では、コンテクストエディタが、ビデオイメージ１１２のセグメントがどれ位長くビデオ表示装置２１０上で表示されるかを決定する。このセグメントが表示されている時間の間に、関連付けられた実行可能コード１１４が、表示されているビデオイメージ１１２に対して、“コンテクスト状態（in  context）”になる。当該関連付けされたイメージ１１２が表示される前後で、実行可能コード１１４が、“コンテクスト状態外（out  of  context）”になる。すなわち、該自転車のイメージ画像が表示装置上に現れる幾らか前、及び自転車のイメージ画像が表示装置上に現れた幾らか後では、「この自転車を購入する場合にはここを押圧しなさい。」というボタンを表示する実行可能コード１１４はコンテクスト状態外であり、実行的にその意義をなくす。関連付けられたイメージ１１２の表示の持続時間に基づいて、前記コンテクストエディタが、実行可能コード１１４がビデオイメージ１１２に対してコンテクスト状態中となることを期待される時間の長さを画定する適切なコンテクスト持続時間パラメータを、決定する。好適実施形態では、このコンテクスト持続時間パラメータは、秒でコンテクスト持続時間を表すための整数である。他の例では、このコンテクスト持続時間パラメータは、例えばビデオフレームの数百の個数やあらかじめ画定されたデコーダクロックサイクル周期数のような、現実のコンテクスト持続時間が、そこから決定されうる符号化である。前記コンテクスト持続時間パラメータにより画定された期間が終わった後で、実行可能コード１１４が実効的にその意義をなくし、終結される。
【００１０】
ビデオイメージ１１２が、ビデオコーダ１２０によりビデオパケット１２１へと符号化され、実行可能コードが、データコーダ１３０により、データパケット１３１へと符号化される。当業者にはよく知られているようにビデオイメージ１１２のセグメントが、いつビデオイメージ１１２の各セグメントが表示されることになるかを識別する表示開始時間を用いて符号化される。例えば、ＭＰＥＧに適合する符号化では、各ビデオフレームがリアルタイムクロックＰＣＲに参照される１つ以上の時間パラメータを持つ。本発明の好適実施形態では、前記表示開始時間に基づいたコンテクスト開始時間が、実行可能コード１１４の符号化に含まれる。この態様では、実行可能コード１１４をビデオイメージ１１２に同期させることが、伝送ストリーム１４１におけるビデオパケット１２１及びデータパケット１３１のシーケンスとは実質的に独立して実行されうる。本発明の他の実施形態では、伝送ストリームにおけるビデオパケット１２１の内にデータパケット１３１を配することで、データパケット１３１に包含される実行可能コードがいつ実行されるかを決定する。この他の実施形態では、コンテクスト持続時間がこれに対応する表示持続時間よりもいくらか長くなるように画定され、実行可能コードが実行される時間と、伝送ストリームにおける該実行可能コードを取り囲むビデオパケットのセグメントが表示される時間との間の不正確さ（曖昧さ）が許容される。コンテクスト開始時間及びコンテクスト持続時間はまた、実行可能コード１１４の効果に依存されうる。実行可能コード１１４が、ビデオイメージのセグメントに対応するアプリケーションイメージを創出するある特別なセットアップ時間を要求する場合は、（もし準備できるのであれば）コンテクスト開始時間、及びコンテクスト持続時間が適宜調整され、このセットアップ時間を許容する。すなわち、本発明の好適実施形態では、コンテクスト持続時間が、ビデオイメージの表示開始と、対応するアプリケーションイメージの表示開始と、が一致する度合いに依存する手頃なバッファファクタを加えた表示持続時間と等しく画定される。
【００１１】
ビデオパケット１２１及びデータパケット１３１はマルチプレクサ１４０により多重化され、通信信号１５１として、送信機１５０を介して受信機２５０に送信される伝送ストリーム１４１を形成する。用語パケットは、ここでは識別かつ区別可能な情報の主体を定義するために使用され、用語マルチプレクサはパケットが後に逆多重化され、オリジナルの前記識別可能かつ識別可能な情報主体を再生することができるようにパケットを合成する技術を定義している。同様にして、送信機１５０及び通信信号１５１は、伝送ストリーム１４１を任意の受信機に通信する手段を象徴的に識別する。尚、このようなことは当業者には自明であろう。
【００１２】
伝送ストリームデコーダ２００は、受信機２５０を介して送信された通信信号１５１を受信し、再生される伝送ストリーム２４１を創出する。理想的には、伝送ストリーム２４１は伝送ストリーム１４１と同一である。再生された伝送ストリーム２４１は逆多重化され、そこから、ビデオパケット１２１及びデータパケット１３１にそれぞれ実質的に対応するビデオパケット２２１及びデータパケット２３１を創出する。ビデオパケット２２１は、ビデオプロセッサ２２０により処理されてビデオイメージ２１２を創出し、データパケット２３１はアプリケーションプロセッサ２３０により処理されて実行可能コード１１４を再生する。通常の符号化技術と何ら矛盾することなく、ビデオパケット１２１へのビデオイメージ１１２の符号化は必ずしも無損失である必要はない。帯域幅の制約によれば、ビデオパケット１２１はビデオイメージ１１２よりも、より小さい解像度及びより少ない細部を包含する可能性がある。同様にして、送信機１５０はメディアが混雑していることより、いくつかのパケットの送信を無視したり、送信機１５０と受信機２５０との間の通信メディアがいくつかのパケットに悪影響を与えかねない。
【００１３】
ビデオイメージ２１２が、ビデオイメージ１１２の不正確な再生かもしれないが、実行可能コード１１４をアプリケーションプロセッサ２３０から正確にかつ精緻に再生するために必要とされるような技術が適用される。すなわち、例えば、各データパケット１３１は連続するパケット番号が割り当てられて、誤り検出コードを含む場合がある。受信されたデータパケット２３１が、シーケンス若しくはパケット番号に空きを示すか、又は誤りコードがパケット内で誤りを検出する場合には、伝送ストリームデコーダ２００は伝送ストリームエンコーダ１００からのある特別なパケットの再送信を要求する。伝送ストリームエンコーダ１００からの放送の送信の実施例では、このためには伝送ストリームデコーダ２００からのフィードバックは実行不能であるが、伝送ストリームエンコーダ１００は、各データパケット１３１の冗長的写し（copy）を送信する。この実施例では、アプリケーションプロセッサ２３０は、誤りのないパケットが復号化された後で、該冗長パケットを無視する。さらに、この実施例のデータパケット１３１は検出された誤りを訂正することを許可する誤り訂正コードを包含する。ある特別なパケットの連続番号に対応する冗長パケットが全く、誤り無しとして復号化されない場合には、実行可能コード１１４は、このデータパケットのシーケンスのためにはアプリケーションプロセッサ２３０により創出されない。信頼できるデータ通信のためのこれらの及び他の技術は通常の当業者にはよく知られている。
【００１４】
アプリケーションプロセッサ２３０は、実行プロセッサ２７０による実行のためのメモリ２６０で実行可能コード１１４を記憶する。当業者には自明であろうが、ビデオプロセッサ２２０、アプリケーションプロセッサ２３０、及び実行プロセッサ２７０が、１つの物理的エンティティ（entity）で動作する独立の又は従属のプロセスとして存在しうるが、ここでは、理解を明確にかつ容易にするためにディスクリートプロセッサとして表されている。アプリケーションプロセッサ２３０は、リンク２３２を介して実行プロセッサ２７０へのへの進行コマンドを通信することにより実行可能コード１１４を進行する。アプリケーションプロセッサ２３０はコンテクスト時間のパラメータを符号化するのに使用される方法に基づき、いつ実行可能コード１１４を進行させるかを決定する。特定のコンテクスト開始時間がデータパケット１３１のシーケンスで符号化されている場合は、アプリケーションプロセッサ２３０は実行プロセッサ（２７０）へ進行命令を発して上記特定の開始時間において実行を開始させる。特定のコンテクスト開始時間が符号化されていない場合は、アプリケーションプロセッサ２３０は、実行可能コード１１４をメモリ２６０にロードした後すぐに、進行コマンドを発する。実行可能コード１１４の実行が、典型的には、ビデオ表示装置２１０に表示する１以上のアプリケーションイメージ（画像）２７１を創出する。アプリケーションイメージ２７１は、実行可能コード１１４に関連付けられたビデオパケット２２１のセグメントに対応するビデオイメージ２１２と共に表示される。実行可能コード１１４はさらに、表示されたアプリケーションイメージ２７１に呼応したアプリケーションレスポンス２８１を入力することをユーザ（不図示）に許容する。アプリケーションレスポンス２８１が、例えば、マウスポインタが表示装置２１０上の「ここをクリックして下さい。」というボタンの上方に配されている場合にマウス上のスイッチを閉じることであるかもしれない。
【００１５】
アプリケーションプロセッサ２３０はさらに、受け取られたデータパケット２３１からのコンテクスト持続時間を決定する。上述のように、コンテクスト持続時間のパラメータは、実行可能コード１１４がビデオ表示装置２１０に表示されているビデオイメージ２１２に対しどの位長くコンテクスト状態であることが期待されうるかを画定する。アプリケーションプロセッサ２３０は実行プロセッサ２７０に実行可能コード１１４の終結を実行する終結コマンドを通信する。好適実施例では、アプリケーションプロセッサ２３０は、実行コマンドを通信すると同時に、該終結コマンドを実行プロセッサ２７０に通信する。この実施例では、終結コマンドはコンテクスト持続時間パラメータを包含し、実行プロセッサ２７０が前記コンテクスト持続時間パラメータに基づいてカウント−ダウン処理を実行し、このコンテクスト持続時間の最後に実行可能コード１１４を終結する。またこれと替わる実施例においては、アプリケーションプロセッサは前記コンテクスト持続時間のパラメータに基づき該カウント−ダウン処理を実行し、コンテクスト時間の持続の最後に終結コマンドを発する。この終結コマンドと呼応して、実行プロセッサ２７０が実行可能コード１１４の実行を終了する。他の実施例では、アプリケーションレスポンス２８１が実行可能コードに呼応して受信される場合に、実行プロセッサ２７０が、ユーザが取り引きを完了するまで実行可能コード１１４の終結を遅延する。この態様では、例えば、「購入する際には、ここをクリックして下さい。」というユーザの選択が、関連したビデオセグメントのコンテクスト時間を超えて実行可能コード１１４の持続時間を延長し、手頃なクレジットカードやメール情報をエンターする十分な時間をユーザに許容する。この実施例では、実行プロセッサ２７０は、いつ実行可能コード１１４が終結されるかをアプリケーションプロセッサ２３０に通知する。実行可能コード１１４が終結される後に、アプリケーションプロセッサが、終結された実行可能コード１１４のセグメントを包含していたメモリ２６０のエリアに引き続く実行可能コード１１４を配することが可能である。
【００１６】
以上のように１つの実行可能コード１１４を実行するシステムを今までのところ提示したが、本発明のエンコーダ１００及びデコーダ２００は、それぞれがビデオイメージの特定のセグメントと関連付けられた、複数の実行可能コードセグメント１１４の同時実行を許容する。実行可能コードセグメント１１４に対応するデータパケット１３１の各シーケンスは一意的に識別される。アプリケーションプロセッサからの各進行及び終結コマンドは、進行又は終結されることになるある特定の実行可能コードセグメント１１４を識別する識別子（identifier）を包含している。端的な構成では、例えば各アクティブ実行可能なコードセグメント１１４がメモリ２６０のその開始用アドレスにより識別され、当該進行及び終結コマンドはそれぞれ、実行可能なコードセグメントの開始アドレスを包含する。
【００１７】
図２は、伝送ストリームの実施例を示している。パケットＶ１，１、Ｖ１，２、及びＶ１，３は、ビデオイメージ１１２のセグメントに対応するビデオパケット１２１のシーケンスを表す。パケットＤ１，１、Ｄ２，１は実行可能コード１１４のセグメントに対応するデータパケット１３１のシーケンスを表す。パケットＶ２，１はビデオイメージ１１２の第２のセグメントに対応したビデオパケット１２１のシーケンスの始まりを表す。パケットＤ２，１は、実行可能コード１１４の第２のセグメントに対応したデータパケット１３１のシーケンスの始まりを表す。本発明によれば、データパケット１３１のシーケンスのそれぞれが、図２に示されているようなコンテクスト持続時間パラメータを含んでおり、これらのコンテクスト持続時間のパラメータ３３０ａ、３３０ｂは、各実行可能コードセグメントに対応するデータパケットのシーケンスの第１のデータパケットＤ１，１、Ｄ２，１に包含されている。通常は、ビデオパケット１２１のシーケンスのそれぞれは、該シーケンスのそれぞれがいつ表示されることになるかを識別する表示開始時間３１０ａ、３１０ｂを包含している。上記で議論されたように、データパケット１３１のシーケンスはまた、表示開始時間３１０ａ、３１０ｂに基づくコンテクスト開始時間３２０ａ、３２０ｂを包含しうる。表示開始時間３１０ａ、３１０ｂが、典型的にはビデオパケットが現実にデコーダ２００で受け取る時間とは大いに異なることはないので、実行可能コード１１４が受け取られた後直ぐに、受け取られたビデオパケットに関連付けられた実行可能コードの実行が開始されるならば、コンテクスト開始時間３２０ａ、３２０ｂは省略されうる。
【００１８】
図３は、図２の伝送ストリームの実施例の表示に対応するタイミング図を示す。この例では、Ｖ１，１、Ｖ１，２等のそれぞれがビデオ情報のフレームに対応し、該フレームが等しいフレーム周期３５０で表示される。ビデオパケットＶ１，１、Ｖ２，１の各シーケンスの第１のフレームは、特定の表示開始時間３１０ａ及び３１０ｂのそれぞれで開始する。引き続くビデオパケットＶ１，２、Ｖ１，３等のそれぞれは、引き続くフレーム周期３５０で発生する。実行可能コード１１４の各セグメントの実行は、コンテクスト開始時間３２０ａ及び３２０ｂで起動する。そして、これら各開始時間は、データパケット１３１のシーケンスで明示的に符号化され、又は上記で議論されたようにビデオイメージの関連付けられたセグメントのビデオパケットのシーケンスの内で、伝送ストリームにおいてデータパケットが発生することにより暗示される。図３に示されているように、コンテクスト開始時間３２０ａ、３２０ｂは、対応する表示開始時間３１０ａ、３１０ｂと相関があるが、表示開始時間３１０ａ、３１０ｂの前、後、又はちょうど一致した時に発生しうる。コンテクスト持続時間３３０ａ、３３０ｂは、実行可能コード１１４の各セグメントが、ビデオイメージ１１２の対応するセグメントの表示に対してどの位長くコンテクスト状態に留まるかを画定する。コンテキスト開始時間と同様に、コンテキスト持続時間３３０ａ、３３０ｂは、ビデオイメージ１１２の対応するセグメントの表示の持続時間３４０ａ、３４０ｂと相関があるが、表示持続時間３４０ａ、３４０ｂよりも短いか、長いか、又は等しくてもよい。図３に示されているように、期間３６０の間では、ビデオイメージセグメントが時間的に重ならない場合でさえ、第１及び第２の両実行可能コードセグメントが、それらに対応するビデオイメージセグメントに対してコンテクスト状態であるように画定される。このタイミング図と対応して、アプリケーションプロセッサ２３０は、第１の実行可能コードセグメントをメモリへロードし、コンテクスト開始時間３２０ａで「実行可能コードセグメント１を進行させなさい。」という内容を実行プロセッサ２７０へ通信し、それから第２の実行可能コードセグメントをメモリにロードし、そしてコンテクスト開始時間３２０ｂで「実行可能コードセグメント２を進行させなさい。」という内容を通信する。コンテクスト開始時間３２０ａ後のコンテクスト持続時間３３０ａに等しい時点３３５ａで、アプリケーションプロセッサ２３０は、「実行可能コードセグメント１を終結させなさい。」という内容を実行プロセッサ２７０に通信する。コンテクスト開始時間３２０ｂ後のコンテクスト持続時間３３０ｂに等しい時点３３５で、アプリケーションプロセッサ２３０は、「実行可能コードセグメント２を終結させなさい。」という内容を実行プロセッサ２７０に通信する。
【００１９】
図４は、本発明による関連付けられたビデオイメージセグメントを持つ実行可能コードセグメントの符号化のための実施例のフローチャートである。ステップ４１０では、ビデオイメージセグメントの表示の開始と持続期間とが決定される。ステップ４２０では、ビデオセグメントの表示を開始する時間ばかりでなくビデオセグメントが符号化される。ステップ４３０では、コンテクスト時間パラメータ、開始、及び持続時間が、表示開始及び持続時間に基づいて決定される。ステップ４４０では、存在するならば実行可能コードセグメントがコンテクスト時間パラメータと同様に符号化される。上記で注釈したように、実行可能コードの適切な開始時間が、例えば伝送ストリームにおける対応するビデオセグメントの中のデータパケットが発生することにより、暗示的に決定されうるならば、コンテクスト開始時間の明示的な符号化は付加的である。符号化されたビデオセグメント及び実行可能コードセグメントは、ステップ４５０で伝送ストリームのために多重化され、ステップ４６０で伝送ストリームは受信システムに送信される。このプロセス４１０乃至４６０は継続的に繰り返される。
【００２０】
図５は、本発明による関連付けられたビデオイメージセグメントを持つ実行可能コードセグメントの復号化及び実行のための実施例のフロチャートである。伝送ストリームはステップ５１０で受け取られ、ステップ５２０で、ビデオセグメント及び、もし存在するならば関連付けられた実行可能コードセグメントに逆多重化される。ビデオセグメントの表示の開始時間はステップ５３０で決定され、ステップ５４０では、この開始時間でビデオセグメントの表示が開始する。関連付けられた実行可能コードセグメントが現存する場合は、コンテクスト時間パラメータはステップ５５０で、データセグメントの受け取られたシーケンスから決定される。実行可能コードの実行は、ステップ５６０で、明示の又は暗示のコンテクスト開始時間で開始し、カウント−ダウンタイマーは、ステップ５７０で、コンテクスト持続時間パラメータに対応する、待機のための期間をもたらすように開始される。コンテクスト持続時間パラメータに対応する期間の後で、実行可能コードの実行は、ステップ５８０で終結する。上記の議論のように、好適実施態様では、ユーザが現在実行している実行可能コードセグメントに依存する取り引きの最中の場合には、ステップ５８０で実行可能コードの終結が延期される。
【００２１】
ステップ５８０での実行可能コードの終結は、ステップ５４０でのビデオイメージの対応するセグメントの表示とは独立していることに留意されたい。この態様では、ビデオイメージのセグメントに対応するビデオパケットのシーケンスが遮断される場合は、ビデオイメージのこのような不完全なセグメントに対応する実行可能コードが、実行可能コードの開始の後の限られた期間内で終結される。
【００２２】
上記の記載は本発明の原理を単に例示している。すなわち、当業者であれば、ここでは明示的に記載されるか又は示されていないが、本発明の原理を具現化し、かつ、その精神と範囲内にあるような、本発明についての様々な構成を考え出すことができることが理解される。例えば、デフォルトの最大のコンテクスト持続時間パラメータが定義されうる。そして符号化されたコンテクスト持続時間パラメータがこのデフォルトの最大時間となりうる。この態様では、例えば、ある特別な販売用プログラムが、各実行可能コードセグメントのための一定の最大持続時間を定義しうる。これは各製品が同じ量の時間で表示されるからである。前記デフォルトの最大持続時間パラメータを使用することにより、データパケットのシーケンスの符号化が単純化されうる。これは各製品のコンテクスト時間が一定であることが知られているからである。伝送ストリームエンコーダ１００及び伝送ストリームデコーダ２００もまた、ハードウエア、ソフトウエア、又はこれらの組み合わせで実現されうることは当業者のいずれかにより理解される。例えば、ビデオエンコーダ１２０は合目的的に作成されたハードウエア装置であってもよく、データエンコーダ１３０及びマルチプレクサ１４０は、埋設されたマイクロプロセッサで実行されるファームウエアコードであってもよい。同様に、エンコーダ１００及びデコーダ２００での機能を分離することを、エンコード１００及びデコーダ２００での装置を分離することに対応させる必要はない。例えば、マルチプレクサ１４０及び送信機１５０は一つの送信装置であってよく、受信機２５０及びデマルチプレクサ２４０は１つの受信装置であってもよい。同様に、実行可能なコードセグメント１１４は複数の独立の又は従属の個々の実行可能コードセグメントからなってもよい。これらの及び他の最適化及び分離方法のオプションは当業者のいずれかにより明瞭であり、本発明の精神と範囲に逸脱することはない。
【図面の簡単な説明】
【図１】  本発明による伝送ストリームエンコーダ及び伝送ストリームデコーダのブロック図の一例である。
【図２】  本発明による伝送ストリームの一例である。
【図３】  本発明によるビデオセグメント、及び対応するコンテクスト時間のタイムチャートの一例である。
【図４】  本発明によるビデオセグメント、及び対応する実行可能要素の符号化のためのフローチャートの一例である。
【図５】  本発明によるビデオセグメント、及び対応する実行可能要素の処理のためのフローチャートの一例である。
【符号の説明】
１００  伝送ストリームコーダ
１２０  ビデオエンコーダ
１３０  データエンコーダ
１４０  マルチプレクサ
１５０  送信機
２００  伝送ストリームデコーダ
２１０  ビデオ表示装置
２２０  ビデオプロセッサ
２３０  アプリケーションプロセッサ
２４０  デマルチプレクサ
２５０  受信機
２６０  メモリ
２７０  実行プロセッサ
【図１】
0004717212.tif 000002
【図２】
0004717212.tif 000003
【図３】
0004717212.tif 000004
【図４】
0004717212.tif 000005
【図５】
0004717212.tif 000006