(57)【要約】ビデオストリームを形成する方法は、ビデオデータを受信し、補助データを受信し、定義された方式に従って補助データを変換し、それぞれのフレームがエンコードされた変換された補助データを実質的に構成する１以上のビデオフレームとして、変換された補助データをエンコードし、ビデオデータとエンコードされたビデオフレームとを結合してビットストリームを形成する。ビットストリームの形成を実行する装置は、ビットストリームを受信する対応する処理方法及び装置と共に開示される。
2010505318.tif 000002
【特許請求の範囲】
【請求項１】
ビデオストリームを形成する方法であって、
ビデオデータを受信するステップと、
補助データを受信するステップと、
定義された方式に従って前記補助データを変換するステップと、
それぞれのフレームがエンコードされた変換された補助データを実質的に構成する１以上のビデオフレームとして、変換された補助データをエンコードするステップと、
前記ビデオデータとエンコードされたビデオフレームとを結合して前記ビットストリームを形成するステップと、
を含む方法。
【請求項２】
前記定義された方式に従って前記補助データを変換するステップは、前記補助データを、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルに変換するステップを含む、
請求項１記載の方法。
【請求項３】
前記予め定義されたレベルのリストは、数１〜１５及び−１〜−１５である３０のレベルから構成される、
請求項２記載の方法。
【請求項４】
前記定義された方式に従って前記補助データを変換するステップは、前記複数のレベルを、ＤＣＴブロックに含まれるＤＣＴの位置の予め決定された数に変換するステップを更に含む、
請求項２又は３記載の方法。
【請求項５】
前記予め決定された数は、ＤＣ係数に対応するＤＣＴの位置を含む、
請求項４記載の方法。
【請求項６】
前記定義された方式に従って前記補助データの変換するステップは、前記ブロックからフレームを形成するステップを更に含む、
請求項４又は５記載の方法。
【請求項７】
予め定義されたビデオ部分を、前記エンコードされた変換された補助データを実質的に構成する１以上のフレームに挿入するステップを更に含む、
請求項１乃至６の何れか記載の方法。
【請求項８】
フィンガープリントフレームを受信するステップと、
前記ビデオデータと前記エンコードされたビデオフレームを結合してビットストリームを形成するとき、前記エンコードされたビデオフレームの直前に前記フィンガープリントのフレームを含めるステップとを更に含む、
請求項１乃至７の何れか記載の方法。
【請求項９】
１以上のビデオフレームとして前記変換された補助データをエンコードするとき、前記補助データの開始を示す部分をそれぞれのフレームに含めるステップを更に含む、
請求項１乃至８の何れか記載の方法。
【請求項１０】
前記変換された補助データをエンコードするとき、前記補助データを含む１以上のビデオフレームをユーザがスキップするのを不可能にする情報を含めるステップを更に含む、
請求項１乃至９の何れか記載の方法。
【請求項１１】
前記補助データは、少なくとも１つのイントラ符号化されたＤＣＴブロックでエンコードされる、
請求項１乃至１０の何れか記載の方法。
【請求項１２】
ビットストリームを形成する装置であって、
ビデオデータを受信するビデオバッファと、
補助データを受信するストレージ装置と、
定義されたスキームに従って前記補助データを変換し、それぞれのフレームがエンコードされた変換された補助データから実質的に構成される１以上のビデオフレームとして、変換された補助データをエンコードするプロセッサと、
前記ビデオデータと前記エンコードされたビデオフレームを結合して前記ビットストリームを形成する送信器と、
を有する装置。
【請求項１３】
前記プロセッサは、前記定義された方式に従って前記補助データを変換するとき、前記補助データを、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルに変換する、
請求項１２記載の装置。
【請求項１４】
前記プロセッサは、前記定義された方式に従って前記補助データを変換するとき、前記複数のレベルを、ＤＣＴブロックに含まれるＤＣＴの位置の予め決定された数に変換する、
請求項１３記載の装置。
【請求項１５】
前記プロセッサは、前記定義された方式に従って前記補助データの変換するとき、前記ブロックからフレームを形成する、
請求項１４記載の装置。
【請求項１６】
前記プロセッサは、予め定義されたビデオ部分を、前記エンコードされた変換された補助データを実質的に構成する１以上のフレームに挿入する、
請求項１２乃至１５の何れか記載の装置。
【請求項１７】
前記プロセッサは、
フィンガープリントフレームを受信し、
前記ビデオデータと前記エンコードされたビデオフレームを結合して前記ビットストリームを形成するとき、前記エンコードされたビデオフレームの直前に前記フィンガープリントのフレームを含める、
請求項１２乃至１６の何れか記載の装置。
【請求項１８】
前記プロセッサは、１以上のビデオフレームとして前記変換された補助データをエンコードするとき、前記補助データの開始を示す部分をそれぞれのフレームに含める、
請求項１２乃至１７の何れか記載の装置。
【請求項１９】
ビットストリームを処理する方法であって、
複数のエンコードされたビデオフレームを含むビットストリームを受信するステップと、
それぞれのフレームがエンコードされた変換された補助データから実質的に構成されるビデオフレームに抽出プロセスを実行するステップとを含み、
前記抽出プロセスは、前記ビデオフレームからの前記補助データをデコードするステップを含む、方法。
【請求項２０】
前記補助データのデコードは、修正された量子化マトリクスにより実行される、
請求項１９記載の方法。
【請求項２１】
前記ビデオフレームをデコードするステップと、
前記ビデオフレームを表示するステップとを更に含む、
請求項１９記載の方法。
【請求項２２】
前記ビデオフレームに前記抽出プロセスを実行するステップは、前記ビデオフレームを一連のＤＣＴブロックに変換するステップを含む、
請求項１９、２０又は２１記載の方法。
【請求項２３】
前記ビデオフレームに前記抽出プロセスを実行するステップは、前記一連のＤＣＴブロックを、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルに変換するステップを更に含む、
請求項２２記載の方法。
【請求項２４】
前記ビデオフレームに前記抽出プロセスを実行するステップは、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルを前記補助データに変換するステップを更に含む、
請求項２３記載の方法。
【請求項２５】
フィンガープリントのフレームを受信するステップと、
前記ビデオフレームでの前記抽出プロセスの実行をトリガするステップとを更に含む、
請求項１９乃至２４の何れか記載の方法。
【請求項２６】
前記ビデオフレームに前記抽出プロセスを実行するとき、前記補助データの開始を示す部分をそれぞれのフレームで識別するステップを更に含む、
請求項１９乃至２５の何れか記載の方法。
【請求項２７】
複数のエンコードされたビデオフレームを含むビットストリームを処理するシステムであって、
前記ビットストリームを受信する受信機と、
前記ビデオフレームをデコードするビデオデコーダと、
前記ビデオフレームを表示する表示装置と、
前記ビデオフレームに抽出プロセスを実行するプロセッサとを有し、
それぞれのフレームは、エンコードされた変換された補助データから実質的に構成され、
前記抽出プロセスは、前記ビデオフレームから前記補助データをデコードするステップを含む、
ことを特徴とするシステム。
【請求項２８】
前記プロセッサは、前記ビデオフレームに前記抽出プロセスを実行するとき、前記ビデオフレームを一連のＤＣＴブロックに変換する、
請求項２７記載のシステム。
【請求項２９】
前記プロセッサは、前記ビデオフレームに前記抽出プロセスを実行するとき、前記一連のＤＣＴブロックを、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルに変換する、
請求項２８記載のシステム。
【請求項３０】
前記プロセッサは、前記ビデオフレームに前記抽出プロセスを実行するとき、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する前記複数のレベルを前記補助データに変換する、
請求項２９記載のシステム。
【請求項３１】
前記受信機と前記ビデオデコーダとを含む第一の装置と、前記プロセッサを含む第二の装置とを有し、
前記第一の装置は、アナログ信号を前記第二の装置に送出する、
請求項２７乃至３０の何れか記載のシステム。
【請求項３２】
前記プロセッサは、フィンガープリントのフレームの受信に続いて、前記ビデオフレームへの前記抽出プロセスの実行をトリガする、
請求項２７乃至３１の何れか記載のシステム。
【請求項３３】
前記プロセッサは、前記ビデオフレームに前記抽出プロセスを実行するとき、前記補助データの開始を示す部分をそれぞれのフレームで識別する、
請求項２７乃至３２の何れか記載のシステム。
【請求項３４】
予め定義された標準に従ってエンコードされた複数のビデオフレームを含むビットストリームであって、
前記複数のビデオフレームのうちの第一のセットは、前記予め定義された標準に従ってデコードされたとき、ビデオデータを含み、
前記複数のビデオフレームのうちの第二のセットは、前記予め定義された標準に従ってデコードされたとき、エンコードされた変換された補助データから実質的に構成される、
ことを特徴とするビットストリーム。
【請求項３５】
予め定義された標準に従ってエンコードされた複数のビデオフレームを含むビットストリームを記憶する記録媒体であって、
前記複数のビデオフレームのうちの第一のセットは、前記予め定義された標準に従ってデコードされたとき、ビデオデータを含み、
前記複数のビデオフレームのうちの第二のセットは、前記予め定義された標準に従ってデコードされたとき、エンコードされた変換された補助データから実質的に構成される、
ことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットストリームを形成する方法及び装置に関し、ビットストリームを処理する方法及びシステム、ビットストリーム自身、及びビットストリームを記憶する（ＤＶＤのような）記録キャリアに関する。
【０００２】
本発明は、復号化ステップ及びアナログデータパスを受けるＭＰＥＧビデオフレームにユーザデータを埋め込む埋め込み方法を提供するものである。
【背景技術】
【０００３】
ビデオデータがレンダリングのために、たとえばテレビジョンシステムに伝達されたとき、ビデオデータ（通常はオーディオデータをもつ）を含む信号が伝達される。多くの環境では、幾つかの形式の更なるデータも信号に含まれる。たとえば、デジタルテレビジョンシステムでは、信号にとって、電子番組ガイド及びインタラクティブアプリケーションのようなものを含むデータ部分を含むことが一般であり、この電子番組ガイド及びインタラクティブアプリケーションをエンドユーザは受信し、該信号のビデオコンポーネントを見るのと同時にアクセスすることができる。
【０００４】
ビデオ信号にデータを直接的に含むことも知られている。ビデオ信号をマークする公知の方法は、国際特許出願WO93/00769及び欧州特許出願公開EP0518616に開示されている。公知の方法は、ピクチャにおける所定の乱れが再生に応じて導入されるように、ビデオ信号を修正する。また、データを信号に加えることでビデオ信号をマークすることも知られている。１つの方法は、（たとえばテレテキストにより使用されるように）垂直ブランキング間隔にデータを含めることである。別の方法は、矩形のピクチャ部分をブランクし、前記ピクチャ部分をホワイトとブラックのスポットの系列で置き換えることである。
【０００５】
米国特許US5940134は、ビデオ又はオーディオ信号をマークして、たとえば信号が本物であってコピーされないことを識別するといった、前記信号に分類を割り当てる方法及び装置を開示する。信号は、予め決定された標準（MPEG,  PAL,  NTSC）に従って少なくとも２つのコンポーネント（Y,  UV）を含む。この文献の開示によれば、組み合わせて通常生じることができない値がコンポーネントに割り当てられる。たとえば、Ｙ，Ｕ及びＶが全てゼロであるブラックのピクチャの部分では、Ｕ及び／又はＶは、ウォーターマークを構成するために故意に非ゼロにされる。テレビジョン受像機は、ブラックの部分をなお表示する。信号が再びエンコードされ、レコーダブルディスクにコピーされるとき、ウォーターマークが失われる。
【０００６】
この従来技術の特許は、ブラックのビデオ部分におけるユーザデータを符号化する可能性を記載する。この従来技術の特許は、消費者が暗号化に注目することなしに、ビデオフレームの色情報（クロミナンス）におけるこのユーザデータを暗号化する一方で、このフレームにおける画素のそれぞれの強度（ルミナンス）がゼロにセットされる可能性を記載する。このように、ブラックの部分がユーザに示される。
【０００７】
ホームシネマ向けａｍＢＸ（www.amBX.comを参照）のようなビデオプレイバックを拡張する新たなシステムの導入により、たとえばオーディオ／ビデオ（ＡＶ）コンテンツのプレイバックと連結して、（更なる点灯のような）余分の作用をレンダリングして、消費者にとってテレビジョンの視聴の経験を増大させることが可能となる。これらの作用を形成することができるため、このＡＶコンテンツの拡張で使用されるべきスクリプトが利用可能となることが必要とされる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】WO93/00769
【特許文献２】EP0518616
【特許文献３】US5940134
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ＡＶコンテンツの再生と並行してこれら拡張作用（augmenting  effect）を表示することに関する重要な問題は、特定のＡＶコンテンツの拡張スクリプトがレンダリングの位置で利用可能となる必要があることである。たとえば、ユーザが従来のＤＶＤプレーヤでＤＶＤを視聴する場合、拡張スクリプトへのアクセス及び実行が調整される必要がある。特に、インターネットへのコネクションが存在しないケースでは、拡張スクリプトの分散を支援する幾つかの方法が必要とされる。
【００１０】
その上、他の分散媒体を介してユーザデータを分散することも可能であるが、この媒体の可用性を必要とする。別のオプションは、ディスクに特定のユーザデータファイルを包含することである。しかし、これは、ディスクフォーマットの適合、ディスクプレーヤ装置、及びおそらくディスクプレーヤ装置の外部インタフェースをも必要とする。
【００１１】
先に認識されたように、データはビデオストリームに直接的に含むことができるが、全ての公知のシステムは、（拡張スクリプトのような）データがアクセスされて、信号から検索され、及び／又は、最終的な信号により実行される形式にビデオデータを符号化するオリジナルの装置に対して幾つかの変更が必要とされ、及び／又は、比較的少量のデータのみが画像に含まれるように、受信装置に幾つかの変更を要求する。
【００１２】
したがって、本発明の目的は、公知の技術を改善することにある。
【課題を解決するための手段】
【００１３】
本発明の第一の態様によれば、ビットストリームを形成する方法が提供され、ビデオデータを受信し、補助データを受信し、定義されたスキームに従って前記補助データを変換し、１以上のビデオフレームとして変換された補助データをエンコードし、それぞれのフレームはエンコードされた変換された補助データから実質的に構成され、ビデオデータとエンコードされたビデオフレームを結合してビットストリームにすることを含む。
【００１４】
本発明の第二の態様によれば、ビットストリームを形成する装置が提供され、ビデオデータを受信するビデオバッファ、補助データを受信するストレージ装置、定義されたスキームに従って前記補助データを変換し、１以上のビデオフレームとして変換された補助データをエンコードするプロセッサ、それぞれのフレームはエンコードされた変換された補助データから実質的に構成され、及び、ビデオデータとエンコードされたビデオフレームを結合してビットストリームにする送信機を含む。
【００１５】
本発明の第三の態様によれば、ビットストリームを処理する方法が提供され、複数のエンコードされたビデオフレームを含むビットストリームを受信し、ビデオフレームで抽出プロセスを実行し、それぞれのフレームはエンコードされた変換された補助データから実質的に構成され、抽出プロセスは、ビデオフレームから補助データをデコードすることを含む。
【００１６】
本発明の第四の態様によれば、ビットストリームを処理するシステムが提供され、複数のエンコードされたビデオフレームを含むビットストリームを受信する受信機、ビデオフレームをデコードするビデオデコーダ、ビデオフレームを表示する表示装置、及びビデオフレームで抽出プロセスを実行するプロセッサ、それぞれのフレームはエンコードされた変換された補助データから実質的に構成され、抽出プロセスは、ビデオフレームから補助データをデコードすることを含む。
【００１７】
本発明の第五の態様によれば、予め定義された標準に従ってエンコードされた複数のビデオフレームを含むビットストリームが提供され、前記複数のビデオフレームの第一のセットは、予め定義された標準に従ってデコードされたとき、ビデオデータを含み、前記複数のビデオフレームの第二のセットは、予め定義された標準に従ってデコードされたとき、エンコードされた変換された補助データから実質的に構成される。
【００１８】
本発明の第六の態様によれば、ビットストリームを記憶する記録キャリアが提供され、前記ビットストリームは、予め定義された標準に従ってデコードされたとき、予め定義された標準に従ってエンコードされた複数のビデオフレーム、前記複数のビデオフレームの第一のセットを含み、予め定義された標準に従ってデコードされたとき、ビデオデータ、及び前記複数のビデオフレームの第二のセットを含み、エンコードされた変換された補助データを実質的に構成する。
【００１９】
本発明によれば、その装置の機能に影響を及ぼすことなく、簡単且つ効果的なやり方で完全に回復可能なデータにより、標準的なＤＶＤプレーヤのような旧式の装置により受信されるビデオストリームに直接に比較的大量の補助データを含む方法を提供することができる。通常のビデオフレームに加えて、エンコードされた変換された補助データから実質的に構成され、エンドユーザの表示装置で示されるノイズとしてエンドユーザに見える挿入された余分のフレームが存在する。
【００２０】
本発明は、拡張スクリプトのような補助データが、どのようにＡＶストリームから直接に取り出され、たとえばＤＶＤに記憶されるかに関する解法を提供する。本発明は、ディスクに基づいたＡＶコンテンツのデリバリ（たとえばＤＶＤ、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）について使用することができ、この場合、このコンテンツは、幾つかのアナログデータパスを介して後に転送される。本発明は、データをビデオフレームに埋め込む実施の形態を提供する。
【００２１】
本発明の１実施の形態は、ＭＰＥＧに基づいたＡＶマテリアルにユーザデータを埋め込むこと、後に、可能なやり方で効率的に、ＭＰＥＧに基づいたＡＶマテリアルから、エラーなしに、このユーザデータを再び取得することである。これは、標準化されたＭＰＥＧストリームの制約及びフォーマット、機能的な仕様、能力、デコーダ側（ディスクプレーヤ装置）でのシステムコンポーネントの制限、並びに、デコーダ装置での捕捉及び再構成の能力を考慮する間に達成される。ＭＰＥＧ標準又はディスクプレーヤ装置を変更することなしに、埋め込まれたユーザデータは、ディスクプレーヤ装置のアナログ出力から回復可能である。また、本発明は、ＭＰＥＧストリームに記憶されたとき、補助データがフレームをデコードする必要なしにエンコードされたＭＰＥＧフレームから直接的に回復されるのを可能にする。これは、受信エンドでのシステムがデジタルＭＰＥＧストリームへのダイレクトアクセスを有する場合に可能である。
【００２２】
有利なことに、定義されたスキームに従って補助データを変換することは、補助データを複数のレベルに変換することを含み、それぞれのレベルは、予め定義されたレベルのリストのうちの１つに対応し、予め定義されたレベルのリストは、番号１〜１５及び−１〜−１５である３０のレベルから構成される。
【００２３】
定義されたスキームに従う補助データの変換は、複数のレベルをブロック当たりｍのレベルをもつ矩形のブロックに変換することを含み、ここでｍはブロックサイズの２５％以下である。好適な実施の形態では、ｍは１０に等しいか、１０よりも小さく、ブロックサイズは８×８に等しい。定義されたスキームに従う補助データの変換は、前記ブロックからフレームを形成することを更に含む。
【００２４】
本発明の主要な利点は、ユーザデータ（この状況では、ユーザの経験を拡張するために使用されるａｍＢＸスクリプト）を消費者に伝達するために個別の分散チャネルが必要とされないことである。さらに、（現在の）家庭用ディスクプレーヤ装置は、任意の変形／変更により、この発明をサポートできることを必要としない。実際の変形は、ビデオフレームを受信し、旧式のＤＶＤプレーヤからのアナログ出力を受信することができるプロセッサに構築される必要がある。本発明は、非常に時間を消費するプロセスである標準的な作業を必要としない。
【００２５】
好ましくは、エンコーダは、エンコードされた変換された補助データから実質的に構成される１以上のフレームに予め定義されたビデオ部分を挿入する。完全なランダムなフレームの系列をユーザに提示する代わりに、これらのフレームのコンテンツに関してユーザに通知する幾つかの情報（たとえば適切なロゴにより）をそれぞれのフレームに含むことも可能である。
【００２６】
受信エンドでのプロセッサは、おそらく埋め込まれたユーザデータを継続的にチェックする必要がないように適合される。これを行うことができるため、幾つかのアナウンスメント系列が必要とされる。埋め込まれたユーザデータの終わりをプロセッサに通知するため、類似のタイプの系列が選択される。最も論理的なアナウンスメント系列は、コンテンツにおいて通常は起こらない典型的なフレーム系列であって、プロセッサにおいて既に利用可能な機能により容易に認識することができるフレーム系列である。
【００２７】
符号化方法は、さらに、フィンガープリントフレームを受信し、ビデオデータとエンコードされたビデオフレームをビットストリームに結合したとき、前記エンコードされたビデオフレームの直前に前記フィンガープリントフレームを含める。
【００２８】
たとえば、埋め込まれたユーザデータ系列の開始に先行する短いフレームの系列が使用され、プロセッサのフィンガープリントユニットにより認識される。係るフィンガープリントユニットが連続的にアクティブであるため、余分のシステムの負荷又は新たな機能の包含とならない。フレームで使用される典型的な短い系列は、交互するホワイトとブラックのブロックによるフレームで後に引き継がれる（それぞれがフィンガープリントの計算のために使用されるブロックのうちの１つと同様に大きい）交互するブラックとホワイトのブロックを含む。必要であれば、これは、２〜３回繰り返される。これにより、ビットのそれぞれの高い確率により、フィンガープリントについて交互するパターンとなる。この情報の総和は、ユーザデータ系列の開始位置を固有に識別するために十分な情報となる。オーディオトリガは、受信エンドでの補助データの捕捉を開始するやり方として使用することもできる。
【００２９】
データがＤＣＴ８×８ブロックにおけるレベルで符号化される実施の形態では、ＤＣＴブロックがフレームの正確な左上のコーナで開始しないことが可能である（ＤＣＴブロックの位置における水平方向のシフト及び／又は垂直方向のシフトが存在する）。したがって、多数の特別のＤＣＴブロックの幾つかの開始系列（ヘッダ）は、続いて起こるＤＣＴブロックの正確な位置を発見し、正しいアライメントが得られることが必要である。符号化方法は、変換された補助データを１以上のビデオフレームとしてエンコードしたとき、それぞれのフレームに、前記補助データの開始を示す部分を含むことを更に含む。
【００３０】
本発明は、ＭＰＥＧに基づいてビデオストリームへのユーザデータ（たとえばスクリプト、及び同期テーブル）の埋め込みのために使用することができる。係るストリームは、ディスクに記憶され、家庭用ディスクプレーヤ装置により再生される。これを行なうことにより、プロセッサを含む個別のデコーダは、ストリームからユーザデータを検索することができ、このデータを使用して、ビデオコンテンツに属する作用をユーザに提供することができる。
【図面の簡単な説明】
【００３１】
本発明の実施の形態は、添付図面を参照して例示を通して記載される。
【図１】ＭＰＥＧシステムの符号化を例示するビデオフレームの系列の概念図である。
【図２】図２ａ及び図２ｂは、量子化マトリクスのペアを示す図である。
【図３】マトリクスを通した順番に並べる経路を示すマトリクスの図である。
【図４】図４ａは、８×８ブロックを表すマトリクスの図であり、図４ｂは、ＤＣＴ変換後の図４ａのマトリクスの図である。
【図５】量子化後の図４ｂのマトリクスの図である。
【図６】ビットストリームを形成する装置（エンコーダ）の概念図である。
【図７】図６のエンコーダの一部の概念図である。
【図８】通信チェインの概念図である。
【図９】ＤＶＤプレーヤ及び個別のデコーダを更に詳細に示す、図８のチェインの一部の概念図である。
【図１０】図９のデコーダの一部の概念図である。
【図１１】ビデオフレームのスクリーンショットを示す図である。
【発明を実施するための形態】
【００３２】
本発明の好適な実施の形態は、補助データを利用して、そのデータを１以上のＭＰＥＧビデオフレームとしてエンコードする。次いで、これらは、従来のＭＰＥＧフレームの系列と結合され、従来のＭＰＥＧ信号と同じ信号が形成される。この信号は、エンコード側又は受信エンドの何れかで、適合が必要とされることなしに通信チェインで全ての装置により処理され、この場合、信号を受信する装置は、標準的なエンコードされたビデオフレームの系列として信号を単に処理する。
【００３３】
本発明の全体的な理解のため、幾つかのＭＰＥＧの基本が説明され、このＭＰＥＧの基本は、以下に続くアルゴリズムの説明を簡単にする。（ＭＰＥＧヘッダのような）オーバヘッドに加えて、ＭＰＥＧ信号は、フレーム系列から構成される。これらのフレームは、２つのタイプにカテゴリ化される。フレーム内符号化されたフレーム（Ｉフレーム）は、ストリームにおいて他のフレームとは独立に符号化され、ピクチャにおける空間的な冗長度のみを利用する。第二のタイプである、フレーム間符号化されたフレーム（Ｐフレーム又はＢフレーム）は、連続するフレーム間の時間的な冗長度を利用し、動き補償を使用して予測誤差を最小化する。予測誤差及び動きベクトルのような幾つかのオーバヘッドのみがエンコードされる。Ｐフレームは、過去において１つのフレーム（Ｉフレーム又はＰフレーム）から予測され、Ｂフレームは、一方が過去において、他方が将来において、２つのフレーム（Ｉフレーム又はＰフレーム）から予測される。Ｂフレームが将来におけるフレームを示すので、送信順序は、表示順序と異なり、Ｂフレームは、Ｂフレームが予測されるフレームの後に続く。
【００３４】
Ｉ，Ｐ及びＢフレームを含む系列の例は、図１に示される。この図は、異なるフレームタイプが送信／デコード順序において、及びカメラ／表示順序においてどのように生じるかを示す。フレームの（画素データを記憶又は伝送のための符号化形式に変換する）符号化手順は、以下の通りである。
【００３５】
１）フレーム（Ｉフレームについてこれは画像自身であり、Ｐ又はＢフレームについてこれは予測誤差である）は、それぞれのコンポーネント（輝度ｙサンプル及び色度Ｃb及びＣrサンプル）について画素の８×８ブロックに分割される。いわゆるマクロブロックは、輝度値の４つの（２×２）ブロック、色度のフォーマットに依存して、4:4:4，4:2:2及び4:2:0の色度のフォーマットについてそれぞれ色度サンプルの８，４又は２ブロックから構成される。4:2:2色度フォーマットのケースにおいて、色度値は、水平方向にダウンサンプルされ、4:2:0色度フォーマットのケースにおいて、色度値は、水平方向及び垂直方向にダウンサンプルされる。Ｐ及びＢフレームにおける動き補償は、これらマクロブロックに基づいて実行される。
【００３６】
２）２次元ＤＣＴ（離散コサイン変換）は、８×８ブロックに実行され、ＤＣＴ係数の８×８ブロックが得られる。ＤＣＴ係数は、入力ブロックの水平方向及び垂直方向の空間周波数に関する情報を含む。ゼロの水平周波数及びゼロの垂直周波数に対応する係数は、ＤＣ係数と呼ばれる。自然画像について典型的に、これらの係数の配置は一様ではなく、変換は、エネルギーを低周波係数（８×８ＤＣＴ変換ブロックの左上コーナ）に集中する傾向にある。
【００３７】
３）ＡＣ  ＤＣＴ係数ｃ（ｍ，ｎ）（ＤＣ係数は異なって処理される）は、イントラ符号化ブロックにおいて量子化ステップｑ.Ｑintra(m,n)/16を適用することで量子化され、インター符号化ブロックにおいて量子化ステップｑ.Ｑnon-intra(m,n)/16を適用することで量子化される。図２ａは、デフォルトのイントラ量子化器のマトリクスＱintraを示し、図２ｂは、デフォルトのノンイントラ量子化器のマトリクスＱnon-intra(m,n)/16を示す。量子化ファクタｑ（ＭＰＥＧ標準では、この量子化ステップはquantizer_scale変数により与えられる）は、マクロブロックからマクロブロックに設定することができ、１と１１２との間の範囲に及ぶ。
【００３８】
４）ＤＣＴ係数のシリアライゼーション。このステップの目的は、２次元の８×８ブロックのＤＣＴ係数を１次元のアレイの６４の係数にマッピングすることである。量子化されたＤＣＴ係数のシリアライゼーションは、起こり得るエネルギーのクラスタリングを、先にステップ２で生じた低周波の係数に利用する。図３は、ＭＰＥＧスキームで使用されるＤＣＴ係数のシリアライゼーションの順序を示し（この図では、ジグザグスキャンが使用されるが、インタレースビデオについて良好な圧縮を与える代替的なスキャンも存在する）、ここで最初と最後のエントリは、最低空間周波数と最高空間周波数をそれぞれ表す。
【００３９】
５）ＤＣＴ係数の符号化。ステップ４で生成された値のリストは、可変長符号（ＶＬＣ）を使用してエントロピー符号化される。このステップでは、実際の圧縮が行なわれる。以下の表１では、テーブルの一部が表にされ、イントラＡＣ係数のために使用される。それぞれのＶＬＣコードワードは、特定のレベルの非ゼロの係数により後続されるゼロのランを示す（すなわちＤＣＴ係数に先行するゼロ値の係数の数）。ＶＬＣ符号化は、短いゼロのランは、長いランよりも可能性が高く、小さな係数は、大きな係数よりも可能性が高いことを認識する。ＶＬＣ符号化は、生じる様々なＶＬＣコードについて異なる長さのコードワードを割り当てる。
【００４０】
【表１】
2010505318.tif 000003
より詳細に可変長符号化プロセスを説明するため、図４及び図５のマトリクスにおいて実際の例が示され、これらの図は、あるブロックの可変長符号化を説明する例を示す。図４ａは、空間領域における８×８ブロックの画素の輝度値を示し、図４ｂは、ＤＣＴ変換に従う図４ａのマトリクスを示す。図５は、図４ｂに示されるブロックのＤＣＴ係数の量子化後に得られるレベルを示す。
【００４１】
第一のステップにおいて、空間領域における画素の輝度値（図４ａ）を含む８×８ブロックは、ＤＣＴ領域（図４ｂ）に変換される。その後、このブロックはイントラ符号化され、量子化ステップｑ＝１６であることを想定することで、これらのＤＣＴ係数は、（先のステップ（３）で説明されたように）対応する量子化ステップＱnon-intra(m,n)でそれぞれの係数を除算することで量子化される。この動作により、図５に示されるマトリクスが得られる。ステップ（４）のジグザグスキャンにより、以下のレベルの系列が得られる。
【００４２】
［外１］
2010505318.tif 000004
簡単のため、ＤＣ係数は異なるやり方で扱われ、補助データを埋め込むアルゴリズムにより使用されないので、ＤＣ係数の符号化がスキップされる。ＶＬＣ符号化アプローチに続いて、このレベルの系列は、以下のラン／レベルのペアにマッピングされる。
【００４３】
［外２］
2010505318.tif 000005
この表記では、あるペアの第一の数は、第二の数の値に先行するゼロの数を示す。最後のゼロのランは、エンドオブブロック（ＥＯＢ）のマーカで置き換えられる。最終的に、これらラン／レベルのペアは、表１におけるＶＬＣを使用することでビットストリームに変換される。
【００４４】
［外３］
2010505318.tif 000006
２つの方法で補助データを埋め込むことが可能であり、第一は空間領域においてであり、続いてＭＰＥＧ符号化又は直接的にＭＰＥＧ領域においてである。好適な実施の形態は、ＭＰＥＧ領域で直接にデータを埋め込むことである。これは、ＭＰＥＧストリーム及びビットレートに対して最も高い制御を与えるためである。
【００４５】
埋め込まれるのは（実際の画像に対応しないという意味で）ランダムなデータであるので、連続するビデオフレームは相関せず、すなわちフレーム間には時間的な冗長度が存在しない。直接的な結果として、一般に、フレームは、過去のフレーム又は将来のフレームから予測することができず、したがって、Ｉフレーム及び／又はイントラ符号化ブロックを使用することが可能である。さらに、生成されたビデオフレームは自然画像ではないので、イントラ符号化ブロックについてデフォルトの量子化マトリクスの代わりに、修正された量子化マトリクスを使用することが好ましい。実際に、このデータストリームのイントラ符号化ブロックについて、図２ｂで示されたように、インター符号化ブロックのために使用される量子化マトリクスを使用することが好ましい。これは、ＭＰＥＧストリームの“sequence  header”又は“quant  matrix  extension”において、ＭＰＥＧストリームにおけるこの修正された量子化マトリクスを挿入することで実現することができる（ＭＰＥＧは、選択された量子化マトリクスの送信をサポートする）。ＭＰＥＧデコーダは、デフォルトのマトリクスの代わりに、この修正された量子化マトリクスを使用する。しかし、別の量子化マトリクスも可能である。
【００４６】
本発明の主要な実施の形態は、ＤＣＴブロックのレベルにデータを埋め込むことである。これは、たとえばデータを埋め込むために使用される１６の異なるレベルが存在する場合、ＤＣＴの位置当たりｌｏｇ2１６＝４ビットを埋め込むことができる。最も効率的なやり方でデータを埋め込むため、データビット（ＤＣＴレベルを意味する）は、ＤＣＴの位置当たり最小の量のＭＰＥＧストリームのビットにより表される必要がある。表１における最も短いＶＬＣは、小さなランと小さなレベルをもつラン−レベルのペアのＶＬＣである。特に、０に等しいランをもつラン−レベルのペアは、平均で、レベルのむしろ大きなレンジについて最も短いＶＬＣを有する。
【００４７】
表２では、９以下の長さをもつ対応するＶＬＣによるラン−レベルのペアについてＶＬＣが表にされる。補助データを埋め込むために０に等しいランをもつラン−レベルのペアのみが使用されるとき、ＤＣＴの位置当たり最高のビットレートが得られることが分かる。以下に見られるように、システムのロバスト性のため、ＤＣＴブロックにおけるゼロのＤＣＴ係数を挿入可能であることが望ましい。したがって、ゼロレベルは、データを埋め込むために使用されない。このように、データに影響を及ぼすことなしに、非ゼロのランをもつラン−レベルのペアを使用することで、ゼロを容易に挿入することが可能である。表２で見られるように、データを埋め込むために有効に使用することができる０に等しいランをもつ３０の異なるレベル（−１５〜−１及び１〜１５）が存在する。結果として、ＤＣＴ位置当たりｌｏｇ2（２×１５）≒４．９ビットを埋め込むことができる。しかし、ゼロを挿入することが必要である場合、このビットレートは減少する。
【００４８】
【表２】
2010505318.tif 000007
原理的に、本方法は、このように、以下の条件で、ＤＣＴブロック当たり６３×４．９＝３０９ビットを埋め込むために使用される（ＤＣの位置は、データを埋め込むために使用されないが、以下に説明されるようにデコード後に空間領域でのクリッピングを防止するために使用される）。構築されたＭＰＥＧストリームの全体のビットレートは、最大の許容されるビットレートよりも低い（ＤＶＤコンテンツ向けに使用される、メインレベルでのＭＰＥＧメインプロファイルについて、この最大のビットレートは１０Ｍビット／秒に等しい）。データを含む構築されるＤＣＴブロックは、デコード後に空間領域でクリッピングを生じない。
【００４９】
データはランダムであるので、全てのラン−レベルのペア（すなわち０に等しいラン及び−１５〜＋１５の範囲に及ぶレベルをもつラン−レベルのペア）は、データを表すために使用されるために全て同じ確率を有することが想定され、すなわち一様な分布が想定される。結果として、ＤＣＴの位置当たりの平均のＶＬＣの長さは、コードブロックにおけるＶＬＣの数により除算されるＶＬＣの長さの合計に等しい。このケースでは、平均の長さは、７．２ビットに等しい。なお、７．２−４．９＝２．３ビットのオーバヘッドが存在する。ＰＡＬビデオコンテンツでは、１つのフレームは、７２０×５７６／６４＝６４８０輝度（８×８画素）ＤＣＴブロック、６４８０／４＝１６２０色度ＤＣＴブロックから構成され、毎秒２５フレームが存在する。したがって、全体的に、全てのＤＣＴの位置が使用される場合に、データを表すために必要とされる（６４８０＋１６２０）×６３×７．２×２５＝９１８５４０００ビット／秒が存在し、およそファクタ９である。この問題に対する直接的なソリューションは、ＤＣＴブロック当たり６３／９＝７の位置のみを使用することであり、これは幾つかの他の利点を有し、この他の利点は簡単に説明される。ＤＣＴブロック当たり６つの位置（７は余りに大きい）が使用される場合、約（６４８０＋１６２０）×６×２５×４．９＝５９５３５００ビット／秒又はＰＡＬコンテンツでは０．７１Ｍビット／秒を埋め込むことができる。オーバヘッドを排他する対応するＭＰＥＧストリームは、約（６４８０＋１６２０）×６×２５×７．２＝８７４８０００ビット／秒又は８．３Ｍビット／秒のビットレートを有する。これは、ＭＰＥＧオーバヘッドについて約１．７Ｍビット／秒を残す。
【００５０】
この埋め込みプロセスで解決されるべき別の問題は、空間領域におけるクリッピングである。ＭＰＥＧデコーダは、以下で定義される逆ＤＣＴ変換により画素値を計算する。
【００５１】
【数１】
2010505318.tif 000008
Ｆ（ｕ,ｖ）は６４のＤＣＴ係数であり、ｐ（ｎ,ｍ）はマクロブロックにおける画素値であり、ｎ＝０〜７及びｍ＝０〜７である。これらの画素値は、０≦ｐ（ｎ,ｍ）≦２５５であるようにクリップされる。したがって、クリッピング（非線形動作）がデータのデコードを更に複雑にするので、デコードが行なわれるとき、クリッピングが行なわれないように、ＤＣＴ係数Ｆ（ｕ,ｖ）が選択されることを確かめることが必要である。補助データは、アナログパスを切り抜ける必要があり、したがって、画素値ｐ（ｎ,ｍ）は、勧告ＩＴＵ−Ｒ  ＢＴ.６０１−４で記載されるように更に厳しい条件３２≦ｐ（ｎ,ｍ）≦２３５に適合する必要がある。画素値ｐ（ｎ,ｍ）の上限は、以下に等しい。
【００５２】
【数２】
2010505318.tif 000009
ここでＦ（０,０）は画素の８×８ブロックにおける平均の画素値（ＤＣ値）に直接に関連される。１つの可能な選択は、８×８ブロックの平均の画素値が（２３５＋３２）／２＝１３４＝１０７２／８に等しいように、Ｆ（０,０）＝１０７２である。補助データを埋め込むために６つのＡＣのＤＣＴ係数が使用される場合、この選択は、これら６つの係数の絶対値の平均が１０１×４／６＝６７よりも小さいとき、クリッピングが平均において生じないことを保証する（１０１＝２３５−１３４≒１３４−３２）。
【００５３】
埋め込まれたデータはＤＶＤプレーヤから外部のデコーダへのアナログ経路を切り抜けるべきであるので、データはノイズに対してロバストであるべきである。これを達成するための１つのやり方は、ＤＣＴ係数の大きな量子化ステップを使用することである。これらの量子化ステップは、量子化マトリクス及びquantizer_scaleｑの変数により制御することができる。イントラ符号化されたＤＣＴ係数ｃ（ｍ,ｎ）は、以下のようにデコードされる。
【００５４】
【数３】
2010505318.tif 000010
上記式は、全てのｍ及びｎについて、Ｑintra(m,n)＝16である場合、以下のように簡略化される。
【００５５】
【数４】
2010505318.tif 000011
このように、量子化スケールｑが大きくなると、データはノイズに対して更にロバストになる。ランダムデータについて、あるレベルは、平均で８の絶対値［２×（１＋２＋・・・＋１５）／３０＝８）を有する。先に示されたように、クリッピングを防止するため、平均のＤＣＴ係数は、６７以下となるべきである。直接的な結果として、平均して、ｑは６７／８＝８に以下に選択される。ここで、ＤＣＴブロックで６つのＤＣＴ係数を使用する第二の利点が示される。より多くの係数は、低いｑにつながり、ノイズに対してロバスト性の低いシステムとなる。代替として、又はシステムを更にロバストにするため、誤り訂正を適用することができる。
【００５６】
幾つかのＤＣＴブロックについて、ＤＣＴ係数の絶対値の平均が６７よりも大きいことが生じる可能性がある。この場合、逆ＤＣＴ変換を施すことでクリッピングが生じているかをチェックし、クリッピングが生じている場合、この特定のブロックにおけるＤＣＴ係数の数を低減する。ラン−レベルのペアを賢明に使用することで、賢明に選択された位置でゼロを形成することで幾つかのビットを節約することができる。デコーダは、これを認識する。最終的に、システムを更にセキュアにするため、データを暗号化することによる暗号化を使用する。
【００５７】
図６は、ビットストリームを形成する装置である、エンコーダ１０を示す。エンコーダ１０は、ビデオバッファ１４を有し、このビデオバッファは、幾つかのビデオ系列を構成するフレームである従来のビデオデータを受信する。ビデオデータ１６は、ＭＰＥＧストリームにエンコードされる必要がある画素データの形式であるか、又は、ひとたびエンコードされた補助データ１８と結合されるべきＭＰＥＧデータである場合がある。
【００５８】
また、装置１０は、補助データ１８を受信及び記憶する。本発明の１実施の形態では、補助データ１８は、（映画のような）娯楽の経験の拡張における使用のためのスクリプトを定義する１以上のＸＭＬファイルの形式をとり、同期テーブルにより１以上のファイルの形式をとる。データ１８は、装置１０により、イントラ符号化されたブロックのみによるＭＰＥＧのＩフレーム或いはＰ又はＢフレームにエンコードされる。
【００５９】
エンコーダ１０におけるプロセッサ２２は、（図７を参照して以下で更に詳細に説明される）定義されたスキームに従って補助データ１８を変換し、変換された補助データを１以上のビデオフレーム２４としてエンコードする。それぞれのフレーム２４は、エンコードされた変換された補助データ１８から実質的に構成される。プロセッサ２２は、補助データ１８をその記憶された形式（ＸＭＬファイルを表すビットストリーム）からフレーム２４としてＭＰＥＧレベルのセットに変える。これらのフレーム２４は、そのＩフレームが適切な表示装置により表示された場合に単なるノイズであるが、たとえば従来のＭＰＥＧデコーダにより処理されたとき、正確に、有効なＭＰＥＧストリームに見える。
【００６０】
フレーム２４及びビデオデータ１６は、送信機２６に送出され、この送信機は、ビデオデータ１６とエンコードされたビデオフレーム２４を結合してビットストリーム１２にする。エンコーダ１０は、ビットストリーム１２を（従来のＤＶＤのような）記録キャリア２８に出力し、この記録キャリアは、ビットストリーム１２を記憶する。ビットストリーム１２は、予め定義された標準に従ってエンコードされた複数のビデオフレームを含み、第一のビデオフレームのセットは、予め定義された標準に従ってデコードされたとき、ビデオデータ（オリジナルデータ）１６を含み、及び、第二のビデオフレームのセットは、予め定義された標準に従ってデコードされたとき、エンコードされた変換された補助データ（データ１８）から実質的に構成される。
【００６１】
図７は、補助データ１８を受信するエンコーダ１０におけるプロセッサ２２の機能を更に詳細に示す。プロセッサ２２は、定義されたスキームに従って補助データ１８を変換するとき、補助データ１８を複数のレベルに変換する。それぞれのレベルは、１〜１５及び−１〜−１５である予め定義されたレベルのリストのうちの１つに対応する。これは、機能ブロック３０で行なわれ、ここで、ビットストリームは、一連のレベルに変換される。次のブロック３２は、ブロック当たり６つのレベルによる、複数のレベルの８×８のブロックへの変換である。
【００６２】
次いで、プロセッサ２２は、ブロック３４で、ブロック３６で行なわれるＤＣＴブロックのＶＬＣコードワードへの変換の前に、クリップの防止を実行する。次いで、プロセッサ２２は、マルチプレクサ３８で、一連のフレームを標準的なＭＰＥＧヘッダとアセンブルし、結果的に、ＭＰＥＧストリームである出力が得られ、この出力は、ビデオデータ１６との結合のため、ビットストリーム１２の最終的な形成のため、エンコーダ１０における送信機２６に通過される。
【００６３】
プロセッサ１８により補助データ１８の変換及びエンコードの間、データ１８は、ＤＣＴブロックにおいて連続して入力される３０のレベルにマッピングされる。これらのレベルは、量子化マトリクスＱintra(m,n)及び量子化スケールｑを使用することでＤＣＴ係数に変換される。逆ＤＣＴ変換を適用した後にクリッピングが生じた場合、ビットレートをできるだけ低く保持するため、ＶＬＣ生成モジュール３６と通信することで、レベルが除かれ、ゼロが賢明なやり方で挿入される。除かれたレベルは、次のブロックに移動される。この手順のため、ＶＬＣ生成モジュール３６は、正しいＶＬＣを生成するためにどのスキャン方法（交互のスキャン又はジグザグスキャン）が使用されるかを知ることが必要である。最終的に、生成されたストリームは、ＭＰＥＧヘッダと多重化され、有効なＭＰＥＧストリームが構成される。
【００６４】
図８は、エンコーダ１０がＤＶＤ２８に記憶されるその出力（ビットストリーム１２）を有する通信チェインの例を示し、この出力は、標準的なＤＶＤプレーヤ４０により受信される。そのＤＶＤプレーヤ４０のアナログ出力は、デコーダ４２により使用され、このデコーダは、ビデオフレームに含まれている補助データ１８にアクセスすることができる。
【００６５】
デコーダ４２は、アナログビデオフレームを取り出し、ＤＣＴ変換をそれぞれ８×８ブロックに適用して、それぞれのブロックのＤＣＴ係数を取得する。デコーダは、量子化マトリクスＱintra(m,n)の値及び量子化スケールｑの値を認識しているので、除算により対応するレベルを計算することができる。これらのレベルから、ルックアップテーブルによりビットを取り出すことができる。また、デコーダ４２は、どの順序でＤＣＴ係数がＤＣＴブロックに書き込まれるかを知る。ゼロのＤＣＴレベルはデータを与えず、スキップすることができる。したがって、クリップ防止のためにゼロが形成される場合、デコーダ４２は、これを認識する。
【００６６】
図９は、消費者のリビングルームのような受信エンドでのビットストリーム１２を処理するシステムを示し、受信エンドでは、消費者は、ＤＶＤ２８の映画を視聴し、補助データ１８を使用することができる拡張システムを有する。このシステムは、１実施の形態では、ＤＶＤプレーヤ４０及びデコーダ４２を有する。
【００６７】
プレーヤ４０は、キャリア２８からビットストリーム１２を受信する受信機４４を有しており、このビットストリーム１２は、複数のエンコードされたビデオフレームを含む。さらに、ＤＶＤプレーヤは、従来のビデオデコーダ４６を含み、このビデオデコーダは、表示装置４８に送出されるビデオフレームをデコードし、この表示装置は、ビデオフレーム２４及び１６を表示する。
【００６８】
また、ビデオフレームは、デコーダ４２にＤＶＤプレーヤ４０により送出される。このコネクションは、標準的なアナログ出力とすることができる。これは、ＤＶＤプレーヤがデジタルストリーム（ＭＰＥＧ）を受信し、これを、従来のテレビジョン４８のようなアナログ装置による表示のためにアナログストリームに変換するためである。デコーダ４２は、デコードされたビデオフレーム２４で抽出プロセスを実行するプロセッサ５０を含み、それぞれのフレーム２４は、エンコードされた変換された補助データ１８から実質的に構成され、抽出プロセスは、ビデオフレーム２４から補助データ１８をデコードすることを含む。デコーダ４２は、図１０で更に詳細に示される内部プロセッサ５０を有する。プロセッサ５０は、８×８ＤＣＴ変換を適用することでＤＣＴ領域にフレームの画素を変換する機能モジュール５２を含む。量子化マトリクスＱintra(m,n)及び量子化スケールｑを使用することで、機能ブロック５４で係数がレベルに変換され、これらレベルから、オリジナルの補助データが回復される。
【００６９】
それぞれのビデオフレーム２４は、エンコードされた補助データ１８を含み、そのビデオフレーム２４が従来の表示装置４８により表示されるとき、意味のある画像を形成しない一連のグレイスケールの画素として見える。ノイズから構成されるこれらのフレームは、ＤＶＤ２８で含まれ、フィルムの開始前の数秒の間に実行される。ユーザは、ＤＶＤの文献における挿入を介してフレームの存在について警告されるか、又は、ロゴ又は類似のメッセージがユーザを警告するためにスクリーンの非常に小さな部分に適用される。このロゴは、エンコーダエンドでフレームがオリジナルにエンコードされたときに組み込まれ、実際のビデオデータとして、補助データを含む特定のフレームの一部を形成する。また、ユーザが補助フレームをスキップするか、ユーザがこれらのフレームの再生の間のトリックプレイを実行する可能性をディスエーブルにする情報をＤＶＤに加えることもできる。
【００７０】
主要な実施の形態で先に記載されたように、（ビットから形成される）補助データ１８は、ＭＰＥＧレベルに変換される必要がある。全体として、データビットを表すために３０のレベル（−１〜−１５及び１〜１５）が存在する。３０は２のべき乗ではないので、ビットのレベルへの変換は簡単ではない。１つのソリューションは、０〜１５の１６の数に対応する４ビットのみをこれら３０のレベルにマッピングし、次いで、利用可能なレベルの部分１６／３０≒０．５３が使用され、すなわち、４ビットのみが理論的に可能な４．９ビットの代わりに埋め込まれる。結果として、ＤＣＴブロック当たりのビット数が減少され、データレートが低減され、データ１８をエンコードするために必要とされるフレーム数が増加される。
【００７１】
したがって、ＤＣＴの位置毎に埋め込むことができるビット数ｂが最大であるように、ＮのＤＣＴ位置により表される（すなわち３０Ｎのレベルにより表される）ビット数ｂが決定されるべきである。
【００７２】
【数５】
2010505318.tif 000012
ここで
［外４］
2010505318.tif 000013
は∞に向かう最も近い整数への丸めｑを示し、
［外５］
2010505318.tif 000014
は基底の３０の数のシステム、すなわち
【００７３】
【数６】
2010505318.tif 000015
においてｉビットで記述することができる数ｘを表すために必要とされるＤＣＴの位置の数である。ここで、ｃｌはビットであり、ａkε{0,...,29}は基底の３０の係数である。しかし、効果的に処理されるコンピュータより使用されるワード長が制限されているので、ビット数ｂは、余りの大きくとることができない。現在のコンピュータ／マイクロプロセッサは、８，１６，３２及び６４ビットのワード長を使用する。以下の表では、異なるワード長について、基底の３０の数のシステムにおいてある数により効果的に表されるビット数を示す。
【００７４】
【表３】
2010505318.tif 000016
この表では、それぞれのワード長について、先の式（１）から従う、使用されるべき最適なビット数、ビットを表現するために必要とされるＤＣＴの位置の対応する数、ＤＣＴ位置当たりのビット数、及びビットを表現するために使用される３０レベルの部分が表示される。この表では、ワード長が長くなると、使用されるＤＣＴレベルの部分が高くなる。言い換えれば、ワード長が長くなると、表現が更に効率的になる。
【００７５】
先の表から、マイクロプロセッサが以下のやり方でたとえば３２ビットのワード長を使用するとき、ビットストリームとしての補助データ１８は、ＭＰＥＧレベルに変換される。
【００７６】
１．補助データを２９ビットのセクションに分割する。
【００７７】
２．この２９ビットの数を３０の数のシステムで表現される数に変換する。
【００７８】
３．基底の３０の係数をＭＰＥＧレベルにマッピングする。
【００７９】
最後のステップは、必須である。それは、ＭＰＥＧのレベルが−１５〜−１及び１〜１５の値をとる間、３０の数のシステムにおける番号の係数が０〜２９の値をとるためである。好適な実施の形態では、以下の表で示されるマッピングが使用されるが、（たとえばデータを暗号化するために）他のマッピングも可能である。基底の３０の係数からＭＰＥＧレベルにマッピングする１つの簡単なスキームは、以下に示される。
【００８０】
【表４】
2010505318.tif 000017
ここで、０〜２９の上段のナンバリングは、基底３０に対する番号を表し、下段は、ＭＰＥＧレベルを表す。たとえば、基底３０の系列における番号２２は、８×８ブロックに挿入されるべきＭＰＥＧレベルとしてＤＣＴ係数８にマッピングされる。全体の変換及び符号化プロセスの例として、３２ビットのワード長のケースについて、以下の２９ビットの数ｘは、６のＭＰＥＧレベルに変換される。
【００８１】
【数７】
2010505318.tif 000018
この２進数（１０進数で339404371）は、補助データ１８である、この補助データは、拡張システムでの使用のために２進数で表現される１以上の命令であると考えられる。
【００８２】
【数８】
2010505318.tif 000019
における係数ａkを計算するため、以下のアルゴリズムが使用される。または、以下に示される。
【００８３】
１．ａkは、３０により除算されるｘの余りとなる。
【００８４】
２．新たなｘは、ｘを３０で除算し、結果を最も近い整数に丸めることで計算される。
【００８５】
３．これらの２つのステップを、全ての６つの係数ａkが計算されるまで繰り返す。
【００８６】
このアルゴリズムが先の数ｘ（339404371）に適用される場合、以下の６つのステップが実行される。
【００８７】
１．X=339404371，ａ0＝1、新たなｘは11313479となる。
【００８８】
２．X=11313479，ａ1＝29、新たなｘは377115となる。
【００８９】
３．X=377115，ａ2＝15、新たなｘは12570となる。
【００９０】
４．X=12570，ａ3＝0、新たなｘは419となる。
【００９１】
５．X=419，ａ4＝29、新たなｘは13となる。
【００９２】
６．X=13，ａ5＝13、新たなｘは0となる。
【００９３】
したがって、ｘは、以下のように記載される。
【００９４】
X=339404371=1・300＋29・301＋15・302＋0・303+29・304＋13・305
先の表から、係数は、以下のＭＰＥＧレベル−１４，１５，１，−１５，１５及び−２に変換される。これらは、次いで、８×８ブロックに挿入され、−１４はブロックにおける位置１に対応し、１５はブロックにおける位置２に対応する。これが受信エンドで受信されたとき、デコーダは、基底の３０の係数を発見するために逆のマッピングを使用し、この逆のマッピングから、オリジナルのビットを容易に抽出して補助データを再形成することができる。
【００９５】
先の実施の形態では、デコーダ４２は、あるフレームのアナログ画像を受信する。しかし、ＭＰＥＧストリーム自身がデコーダ４２にとって利用可能である場合、補助のデータ抽出が非常にシンプルになる。これは、たとえば、受信エンドでの特注の装置で生じる可能性があり、これは、表示のためにビデオフレームをデコードするのに加えて、フレームを構成するデジタルデータへのアクセスを有する。補助データは、ＤＣＴレベルに埋め込まれ、これらＤＣＴレベルは、ＭＰＥＧデコーダで直接に利用可能である。
【００９６】
さらに、量子化ステップｑ及び量子化マトリクスＱintraは、これらがＤＣＴ係数からのレベルを計算するために必要とされるため、補助データを抽出するために必要とされない。この場合、デコーダは、ＭＰＥＧストリームが利用可能である場合、ＭＰＥＧパーサを使用してＭＰＥＧストリームからのレベルを抽出する。マッピングは、たとえば基底の係数０〜２９を様々なＭＰＥＧレベルにマッピングする先のテーブルの逆を使用することで、これらのレベルを補助データにマッピングする。
【００９７】
エンコーダ／デコーダスキームの他の更なる実施の形態が可能であり、たとえば、情報は、ＤＣＴ係数の位置に記憶される。ＤＣＴブロックは、６３のＡＣ係数と１つのＤＣ係数を含む。データを埋め込むため、ＤＣＴブロックにおける１つの非ゼロのＡＣレベルの位置が使用される。非ゼロのＡＣレベルを配置するために６３の位置が存在し、したがって、ＤＣＴブロック当たりｌｏｇ2６３≒６ビットを埋め込むことが可能である。さらに、データをレベルに埋め込むことも可能である。レベル−１５〜−１及び１〜１５が使用される場合、ＤＣＴブロック当たりｌｏｇ2（６３．３０）≒１０．９ビットを埋め込むことができる。
【００９８】
ＤＣＴブロックに埋め込むことができるビット数を更に増加するため、許容されるレベル−１５〜−１及び１〜１５は、たとえば（−１５，−１４），（−１３，−１２）．．．（−１，１）．．．（１４，１５）といったペアに分割され、１の代わりに１５のＡＣレベルを使用する。第一のＡＣレベルは、選択するための６３の位置及び２つのレベル、第二のＡＣレベルは、６２の位置及び２つのレベルを有する等である。このように、ブロック当たり、
【００９９】
【数９】
2010505318.tif 000020
を埋め込むことが可能である。デコーダは、ＤＣＴブロックにおけるどの位多くの位置から、ペアを選択して正しいビットを抽出するかを知るため、どの順序でペアがＤＣＴブロックに埋め込まれるかを知る必要がある。なお、固有のセットに分割されるレベルのセット、これはデコーダサイドで異なるＡＣレベルを区別するために必要とされる。また、レベルは、たとえば２つのセットといった、より大きなセットに分割される。この場合、２つのＡＣレベルは、データを埋め込むために使用される。第一のＡＣレベルは、６３の位置及び１５のレベルから選択され、第二のＡＣレベルは、６２の位置及び１５のレベルから選択され、したがって、ＤＣＴブロック当たりｌｏｇ2（63・15）＋ｌｏｇ2（62・15）≒19.7ビットを埋め込むことが可能である。
【０１００】
実際に、ＤＶＤプレーヤ及びアナログパスによる歪みのためにロバストであるため、６３の位置及び／又は１５のレベルを使用することは賢明ではない。少ない位置及び／又はレベルを使用することは、ＤＣＴ当たり低いビットレートとなる。
【０１０１】
更にロバストとなるため、ＤＶＤプレーヤ及びアナログパスにより導入される歪みに関して、代替は、８×８ブロックの平均の輝度又は色度の値を意味するＤＣレベルに情報を埋め込むことである。あるブロックの平均値は、０と２５５との間の値を有するか、又は、勧告ＩＴＵ−Ｒ  ＢＴ．６０１−４に記載されるように、更に厳しい条件では３２と２３５との間の値を有する。
【０１０２】
このように、ブロック当たり、最大でｌｏｇ2（２３５−３２）≒７．６ビットを埋め込むことが可能である。実際に、更にロバストとなるため、可能な平均値の数を低くすることが必要である。全ての２３５−３２＝２０３レベルを使用する代わりに、量子化が適用され、これら２０３のレベルのサブセットのみが使用される。たとえば、８の量子化ステップが使用され、データを埋め込むために２６のレベル３２，４０，４８，．．．２２４及び２３２が使用され、ブロック当たり４．７ビットとなる。ブロックの平均値が歪みのために変化する場合、デコーダは、この歪んだ平均値に最も近いサブセットにおける平均値が埋め込まれたことを想定する。
【０１０３】
実際に、ＤＶＤプレーヤは、フレームとして受信された全体の画像の明るさを増加又は減少する場合があり、結果として、８×８ブロックの平均値も増加又は減少される。たとえば３２といった明るさが著しく変化した場合、デコーダは、ビットを正しく抽出することができない。この問題に取り組むため、データは、２つの隣接する８×８ブロックの平均値における差で埋め込まれる。全体のブロックにおける変化は、２つのブロック間の差に影響を及ぼさない。たとえば、３２の平均値の３２，３８．．．２１８（６の量子化ステップ）のみが使用されることが想定される場合、５ビットを埋め込むことが可能である。
【０１０４】
エンコーダが以下のデータ1,15,15,14,3,0,0,31を埋め込むことを望む場合、以下の方法が使用される。デコーダは、１２８の任意に選択された平均値で開始する（なお、許容される平均値のうちの別の平均値を開始するために選択することができるが、デコーダは、この開始値を知る必要がある）。
【０１０５】
データ１を埋め込むため、エンコーダは、１２８＋（１×６）＝１３４を埋め込み、すなわち、画像の左上のコーナにおける最初の８×８のブロックの平均値は１３４になる。
【０１０６】
次いで、１５×６＝９０を前の平均値１３４に加えることで１５が埋め込まれ、すなわち、第二のブロックは、１３４＋９０＝２２４の平均値を取得する。しかし、２２４は余りに大きく（２１８は最も大きな許容される平均値である）、したがって、この値は、モジュロ演算子により操作され、すなわち、値［224−32］32×6＋32＝［192］192＋32＝32を取得し、ここで［p］qは、整数ｐモジュロｑを意味する。モジュロ演算子のため、最小の許容される平均値３２がゼロにマッピングされることを確かめるため、値３２は減算される。次いで、モジュロ演算子を適用した後、この値３２は再び加算される。
【０１０７】
次いで、次の値１５は、１５×６＝９０を前の値３２に加えることで埋め込まれ、したがって、次のブロックは値１２２を取得する。
【０１０８】
１４は８４を値１２２に加えることで埋め込まれ、したがって、次のブロックの平均値は２０６となる。
【０１０９】
次のブロックは、平均206+3×6＝224を取得する。この値は、［224−32］192＋32＝32に丸められる。
【０１１０】
以下の２つのブロックは、２つのゼロが埋め込まれるので平均値３２を取得する。
【０１１１】
最終的に、最後のブロックは、平均値32＋32×6＝218を取得する。
【０１１２】
したがって、画像の左上のコーナにおける８つの隣接するブロックは、平均値134,32,122,206,32,32,32,218を取得する。デコーダは、左から右に画像をスキャニングすることでブロックの平均値を計算し、これらの値を含む１次元のベクトルｍを構築するデコーダは、以下のやり方でｉ＝０〜７でデータｄ(i)を抽出する。
【０１１３】
【数１０】
2010505318.tif 000021
ここでこの値ｍがエンコーダにおける開始値として選択されるため、ｍ(-1)＝１２８である。このルールを適用することで、以下のデータが得られる。
【０１１４】
【数１１】
2010505318.tif 000022
このアプローチの利点は、減算のためにオフセットが相殺されるため、埋め込まれるデータが全体の画像の明るさの変化により破壊されないことである。
【０１１５】
ＤＣ埋め込みアプローチの利点は、ＤＣＴ変換を計算するために必要ではなく、８×８ブロックの平均値のみを計算する必要があるので、デコーダを非常にシンプルにすることができることである。図１１では、８×８のブロックの平均値にデータが埋め込まれた画像の例が示されており、データがＤＣ値に埋め込まれた場合に、補助データで埋め込まれた画像がどのように見えるかに関する例をプロットしている。
【図１】
2010505318.tif 000023
【図２ａ】
2010505318.tif 000024
【図２ｂ】
2010505318.tif 000025
【図３】
2010505318.tif 000026
【図４ａ】
2010505318.tif 000027
【図４ｂ】
2010505318.tif 000028
【図５】
2010505318.tif 000029
【図６】
2010505318.tif 000030
【図７】
2010505318.tif 000031
【図８】
2010505318.tif 000032
【図９】
2010505318.tif 000033
【図１０】
2010505318.tif 000034
【図１１】
2010505318.tif 000035
【手続補正書】
【提出日】平成21年3月27日(2009.3.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオストリームを形成する方法であって、
ビデオデータを受信するステップと、
補助データを受信するステップと、
定義された方式に従って前記補助データを変換するステップと、
それぞれのフレームがエンコードされた変換された補助データを実質的に構成する１以上のビデオフレームとして、変換された補助データをエンコードするステップと、
前記ビデオデータとエンコードされたビデオフレームとを結合して前記ビットストリームを形成するステップと、
を含む方法。
【請求項２】
前記定義された方式に従って前記補助データを変換するステップは、前記補助データを、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルに変換するステップを含む、
請求項１記載の方法。
【請求項３】
前記定義された方式に従って前記補助データを変換するステップは、前記複数のレベルを、ＤＣＴブロックに含まれるＤＣＴの位置の予め決定された数に変換するステップを更に含む、
請求項２記載の方法。
【請求項４】
フィンガープリントフレームを受信するステップと、
前記ビデオデータと前記エンコードされたビデオフレームを結合してビットストリームを形成するとき、前記フィンガープリントのフレームを前記エンコードされたビデオフレームの直前に含めるステップとを更に含む、
請求項１乃至３の何れか記載の方法。
【請求項５】
前記変換された補助データを１以上のビデオフレームとしてエンコードするとき、前記補助データの開始を示す部分をそれぞれのフレームに含めるステップを更に含む、
請求項１乃至４の何れか記載の方法。
【請求項６】
前記変換された補助データをエンコードするとき、前記補助データを含む１以上のビデオフレームをユーザがスキップするのを不可能にする情報を含めるステップを更に含む、
請求項１乃至５の何れか記載の方法。
【請求項７】
ビットストリームを形成する装置であって、
ビデオデータを受信するビデオバッファと、
補助データを受信するストレージ装置と、
定義されたスキームに従って前記補助データを変換し、それぞれのフレームがエンコードされた変換された補助データから実質的に構成される１以上のビデオフレームとして、変換された補助データをエンコードするプロセッサと、
前記ビデオデータと前記エンコードされたビデオフレームを結合して前記ビットストリームを形成する送信器と、
を有する装置。
【請求項８】
ビットストリームを処理する方法であって、
複数のエンコードされたビデオフレームを含むビットストリームを受信するステップと、
それぞれのフレームがエンコードされた変換された補助データから実質的に構成されるビデオフレームに抽出プロセスを実行するステップとを含み、
前記抽出プロセスは、前記ビデオフレームからの前記補助データをデコードするステップを含む、方法。
【請求項９】
前記ビデオフレームに前記抽出プロセスを実行するステップは、前記ビデオフレームを一連のＤＣＴブロックに変換するステップを含む、
請求項８記載の方法。
【請求項１０】
前記ビデオフレームに前記抽出プロセスを実行するステップは、前記一連のＤＣＴブロックを、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルに変換するステップを更に含む、
請求項９記載の方法。
【請求項１１】
前記ビデオフレームに前記抽出プロセスを実行するステップは、それぞれのレベルが予め定義されたレベルのリストのうちの１つに対応する複数のレベルを前記補助データに変換するステップを更に含む、
請求項１０記載の方法。
【請求項１２】
フィンガープリントのフレームを受信するステップと、
前記ビデオフレームでの前記抽出プロセスの実行をトリガするステップとを更に含む、
請求項８乃至１１の何れか記載の方法。
【請求項１３】
前記ビデオフレームに前記抽出プロセスを実行するとき、前記補助データの開始を示す部分をそれぞれのフレームで識別するステップを更に含む、
請求項８乃至１２の何れか記載の方法。
【請求項１４】
複数のエンコードされたビデオフレームを含むビットストリームを処理するシステムであって、
前記ビットストリームを受信する受信機と、
前記ビデオフレームをデコードするビデオデコーダと、
前記ビデオフレームを表示する表示装置と、
前記ビデオフレームに抽出プロセスを実行するプロセッサとを有し、
それぞれのフレームは、エンコードされた変換された補助データから実質的に構成され、
前記抽出プロセスは、前記ビデオフレームから前記補助データをデコードするステップを含む、
ことを特徴とするシステム。
【請求項１５】
予め定義された標準に従ってエンコードされた複数のビデオフレームを含むビットストリームを記憶する記録媒体であって、
前記複数のビデオフレームのうちの第一のセットは、予め定義された標準に従ってデコードされたとき、ビデオデータを含み、前記複数のビデオフレームのうちの第二のセットは、前記予め定義された標準に従ってデコードされたとき、エンコードされた変換された補助データから実質的に構成される、
ことを特徴とする記録媒体。
【国際調査報告】
2010505318.tif 000036
2010505318.tif 000037
2010505318.tif 000038