JP4397123B2 - 動画像等の前もって記録された所有権主張材料の非認可コピーの出所を追跡する装置及び方法 - Google Patents
動画像等の前もって記録された所有権主張材料の非認可コピーの出所を追跡する装置及び方法 Download PDFInfo
- Publication number
- JP4397123B2 JP4397123B2 JP2000554137A JP2000554137A JP4397123B2 JP 4397123 B2 JP4397123 B2 JP 4397123B2 JP 2000554137 A JP2000554137 A JP 2000554137A JP 2000554137 A JP2000554137 A JP 2000554137A JP 4397123 B2 JP4397123 B2 JP 4397123B2
- Authority
- JP
- Japan
- Prior art keywords
- digital signal
- signal stream
- message
- video
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 83
- 239000000463 material Substances 0.000 title description 10
- 238000012545 processing Methods 0.000 claims description 27
- 230000008859 change Effects 0.000 claims description 21
- 238000012937 correction Methods 0.000 claims description 18
- 238000012986 modification Methods 0.000 claims description 12
- 230000004048 modification Effects 0.000 claims description 12
- 239000000872 buffer Substances 0.000 claims description 10
- 238000012546 transfer Methods 0.000 claims 3
- 238000012216 screening Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 52
- 238000004422 calculation algorithm Methods 0.000 description 50
- 238000010586 diagram Methods 0.000 description 23
- 238000013459 approach Methods 0.000 description 19
- 239000000969 carrier Substances 0.000 description 17
- 230000006870 function Effects 0.000 description 16
- 238000013139 quantization Methods 0.000 description 13
- 238000003860 storage Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 10
- 230000002829 reductive effect Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 238000003780 insertion Methods 0.000 description 8
- 230000037431 insertion Effects 0.000 description 8
- 101100021996 Arabidopsis thaliana CYP97C1 gene Proteins 0.000 description 7
- 230000008901 benefit Effects 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 7
- 230000036961 partial effect Effects 0.000 description 7
- 238000000605 extraction Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 101100510695 Arabidopsis thaliana LUT2 gene Proteins 0.000 description 5
- 238000013478 data encryption standard Methods 0.000 description 5
- 230000008707 rearrangement Effects 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 4
- 230000003278 mimic effect Effects 0.000 description 4
- 230000002411 adverse Effects 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/913—Television signal processing therefor for scrambling ; for copy protection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/913—Television signal processing therefor for scrambling ; for copy protection
- H04N2005/91307—Television signal processing therefor for scrambling ; for copy protection by adding a copy protection signal to the video signal
- H04N2005/91335—Television signal processing therefor for scrambling ; for copy protection by adding a copy protection signal to the video signal the copy protection signal being a watermark
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
- H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
- H04N9/8227—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal the additional signal being at least another television signal
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Television Signal Processing For Recording (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
技術分野
本発明は一般に、情報―関連媒体(例えばDVD)等のソースから得たデータのためのコピー保護に関し、さらに詳しくは、無許可でコピーする者が確認できるようにするためのデータ修正に関する。
【0002】
背景技術
映画、ソフトウェア等の記録されたプログラム資料の録画、及び再生のための消費者用装置は広く入手可能である。そのような資料に関する媒体は、磁気テープ、VCRを使用した録画/再生を含み、また最近では、CD、CD−ROMやDVDといった光学媒体もある。DVDは、新しい光学ディスク技術であり、各層で一般に133分の映画のための十分な情報を保持できる。DVDは、ビデオ資料を効率よく記憶し、目に見えるような劣化なく再生できる、いわゆるMPEG−2データ圧縮基準をしばしば使用している。ソフトウェアで実施しているビデオや多種の情報のための他の基準も利用できる。
【0003】
娯楽映画等のプログラム資料の製造コストはかなりのものであるが、コピーする者のコストは比較的安い。したがって、映画の著作権侵害が映画産業の収入源の重大な損失となっている。実際、コピーする者、主に不法ビデオカセットによって年間20億ドル以上を損失している。DVDプレーヤからのオーディオ、ビデオプログラムには高度な忠実性があり、VHSからのものよりもかなり多くのコンテンツを保持できるので、DVDはこのような状況をよりひどくしている。
【0004】
著作権侵害を妨害する2つの試みが映画の合法製作者と商業価値のある他の業種によって開発されており、そのソフトウェアとは:(1)再生時にある方法で資料をひずませる信号を保護された媒体に注入するもの、及び(2)可視、又は不可視の静止符号、又は元の資料のソースを確認するマークを注入して隙間を入れるものである。
【0005】
隙間は、一般に保護された資料を書く時点で媒体に入れるものである。例えば、情報―関連媒体が製作される郵便局や他の施設である。しかし、一度記録すると、透かしは固定されてしまう。隙間は資料を書くソースを確認できるが、無許可でコピーする者の確認に関する情報はない。コピーする者の確認は再生、コピーする時点で収集された情報から得られなくてはならない。これは、コピーするものが使用する装置と、コピーする時間の確認としての情報を含む。しかし、再生ユニットでこの情報を提供する電気回路は、ユニットのコストを吊り上げてしまい、競合産業において深刻な欠点となる。本発明の目的は、使用する時点で、保護資料のコピーするものによって変化し、保護資料にとって唯一の追跡信号を生成することである。本発明の他の目的は、再生ユニットのコストをさほど上げることなくそうすることである。本発明のさらなる目的は、媒体のドメインによって、デジタル又はアナログスペースでこの機能を果たすことである。
【0006】
予測可能性が信号をソースの偽造指定をするようフィルターで取り除く、又は変えることができるようにしてしまうことになるため、保護信号はさらに予測できなければならない。さらに、信号ストリームに注入されるコピーメッセージのソースを重い送信ノイズや、意図しない又は意図的なひずみのある環境で復元しなければならないため、保護システムは頑丈でなければならない。さらに、送信メッセージは、検出、改変、除去しにくくなくてはならない。メッセージのコンテンツは、送信ビット認識ソースがあっても、保護され、復号しにくくなくてはならない。最後に、出力ストリームは、適切なドメインで正当に復号でるよう合法でなければならない。本発明のさらなる目的は、保護された媒体の信号ストリームに注入した、コピーする者が検出又は変更しにくい使用信号のポイントを生成することにある。さらに使用信号のポイントは、ビデオに加えてオーディオやソフトウェアを含む保護するあらゆる種類のコンテンツに注入できるようにする。
【0007】
発明の開示
本発明によれば、情報―関連圧縮デジタル信号ストリームを処理する方法は、“コピーのソースメッセージ”をビデオフレームのピクセルブロック又はマクロブロックに配分された“ランニングマーク”の形式で加えることによりストリームれを改変し、無許可コピーのソースを追跡できるようにするものである。正常使用における改変信号ストリームは、使用者が見るためのテレビ表示装置又はモニタに送出される。ランニングマークは薄く、普通は目に見えない。しかし、信号ストリームを無許可で録画するために使用する場合は、記録にはコピーのソースメッセージと共に元の圧縮デジタルストリームが与えられる。したがって、元のデジタル信号ストリームと改変信号ストリームを比較すれば、メッセージが抽出でき、コピーした者を追跡できる。
【0008】
好ましい実施例では、例えば、圧縮デジタル信号ストリームは、MPEG基準で符号化されたオーディオ/ビデオデータストリームである。ピクセルブロック、又はマクロブロックは、コピーメッセージのソースを運ぶための“メッセージホール”という候補領域としてフレームベースで選択される。メッセージホールは、ビット調整で変更可能な画像フレームのブロック又はマクロブロックに関するMPEGビットストリームの選択されたセグメントに対応している。
【0009】
コピーのソースメッセージは、予め記録された資料(映画等)の再生時に置換ビットとして信号ストリームに与えられる。メッセージホールとなるよう選択されたマクロブロックは様々な方法でビット調整される。好ましい実施例では、例えば、調整は、好ましくは(DCT)ディスクリートコサイントランスフォームドメイン(あるいはビデオドメイン)で規定量のノイズを選択されたマクロブロックに加算、又は選択されたマクロブロックから減算して行う。これにはマクロブロック内に歪を広げ、ピクセル歪を見えにくくするという利点がある。
【0010】
メッセージホールは、フレーム内にランダムに位置しているが、使用者には見えない又は殆ど見えない改質を調節する、画像境界等の画像の織目部分に存在するよう選択されることが好ましい。候補メッセージホールの位置は、オペレータの入力又は機械操作で、例えばフレームごと(又は一度にマルチプルフレーム)に選択してもよい。選択された位置は再分布されて、フレーム内でより均一なメッセージホールの分布となる。再分布はメッセージホールの数をフレームごとのメッセージホールの目標数に近づけるよう保持することに基づき、1フレーム又は少数の隣接するフレーム内で密集しないようにする。
【0011】
行内の選択されたマクロブロックに含まれるビット数を相対的に一定に保つために、ランニングマークを付加した後に、ビット数をMPEG基準に一致させ、バッファの底流又は流出を防ぐためにMPEG再符号化をして補間してもよい。これは、例えば、マクロブロックビットの元の数とランニングマークで符号化した後のビット数が略同じになるまで、マクロブロックピクセルの量子化スケール要素を変更すればできる。
【0012】
メッセージホール候補の選択に続いて、再符号化処理中に、交互メセージホールが規定の基準を満たしているか、コピーメッセージビットのソースを挿入するために使用すべきかを決定するために、候補メセージホールをテストし、両方を受け入れ、放棄し、再分布する。不適切な、又はおそらく不適切であろうメッセージホールとしては、例えば:DVD区分境界にある行のメッセージホール、ビット補間で再符号化できない行のメッセージホール、確実に復号できないメッセージビットを含むメッセージホール、及び再符号化に続いてスキップされるメッセージホールがある。
【0013】
コピーのソースメッセージは、以下の1つ以上に対応している:無許可でコピーをする元の許可再生ユニットの連続番号、コピーする媒体の連続番号、及びコピーの時間。この情報は、再生ユニットと記録媒体を提供する機関によって保持される記録を使用して、無許可でコピーする者を確認する助けとなる。
【0014】
無許可でコピーする者がその情報をフィルターで除去、又は改変する目的でコピーのソースメッセージを復号するのを防ぐ助けをするために、メッセージは記号化し、混乱させるのが好ましい。コピーする者の追跡を困難にする多数の再生ユニットで生成したコピーのソースメッセージビットを相関関係検出できるコード分割マルチプルアクセス符号化(CDMA)を使用してメッセージを符号化すると便利である。
【0015】
メッセージホールのランニングマークコンテンツを抽出し、復号化するためには、各メッセージブロックの位置をメモリに記憶させる。関連媒体は、メッセージホールの位置と共に元のプログラム資料に付けて生成する。コピーのソースを確認するためには、テストで媒体と同期して関連媒体を再生する。対応する位置でテストで媒体から読まれ、関連媒体からも読まれたピクセルブロックをお互いに比較し、コピーのソースメッセージビットで改変された元の画像かどうか判断する。例えば、逆でもよいが、メッセージホールでの画像改変は、“1”、改変がないものは“0”と指定する。2進法フォーマット以外を含む他の情報フォーマットは選択的に実施してもよい。
【0016】
本発明の特異な目的、利点、新規の特徴は、以下に続く説明の部分で述べ、ある部分では、当業者が以下を検査すれば明らかとなり、本発明の実施によってわかるであろう。本発明の目的及び利点は、添付のクレームで特に指摘した手段、及び組合せによって達成できることがわかる。
【0017】
図面の簡単な説明
図面について説明するが、明細書中、同様の符号を付した構成要素は同様の構成要素を表し:
図1は、本発明によるMPEGランニングマーク位置の作成を示す高レベル機能ブロック図である。
【0018】
図2は、コピーのソースメッセージを行う3つのメッセージホールのある画像を示す。
【0019】
図3は、ビデオストリームで実施したメッセージホールを示す線図である。
【0020】
図4(a)、及び4(b)は、本発明によるランニングマークシステム符号器及び復号器を示すブロック線図である。
【0021】
図5は、データ記号基準を使用したメッセージビットの記号化を示す線図である。
【0022】
図6(a)、及び6(b)は、鎖状誤差訂正符号化及び複合化の線図である。
【0023】
図7は、本発明の実施例で実行する包旋状誤差訂正コーダを示す。
【0024】
図8は、本発明の実施例で実行するCDMA符号化処理を示す線図である。
【0025】
図9(a)−(e)は、ビデオストリームで実施したコピーのソースメッセージのセキュリティを向上させるためのマルチプル可変長配行を示す。
【0026】
図10(a)−(d)は、本発明によるビット符号化の変形例を示す
図11は、本発明に一形態でのDCTキャリア係数へのノイズ組成を加えることによる元の信号波形の広がりを示す。
【0027】
図12は、本発明におけるRMカメラ生成のためのDCTの試みを示す擬似コードである。
【0028】
図13は、DCTの試みを使用した輝度ブロックのためのピクセルドメインにおけるノイズパターンを示す。
【0029】
図14(a)−(d)は、ランニングマークデータストリームのレイアウトと構成の線図である。
【0030】
図15は、本発明によるDVD信号ストリームで行われるビット抽出を示す線図である。
【0031】
図16は、本発明によるランニングマーク生成の動作を示すアルゴリズムである。
【0032】
図17、及び18は、本発明の一形態によるDivxマーク挿入前、挿入後のビデオグループのレイアウトを示す。
【0033】
図19は、gMH行を定義するアルゴリズムである。
【0034】
図20は、本発明に一形態によるマクロブロックの分類のための擬似コードである。
【0035】
図21は、分類機能によって要求される初期化()のための擬似コードである。
【0036】
図22は、マクロブロック分類の他の実施例のための擬似コードである。
【0037】
図23は、処理する典型的なフレーム区分の線図である。
【0038】
図24は、再分配手順の擬似コードである。
【0039】
図25は、再分配機能によって要求される初期化()のための擬似コードである。
【0040】
図26は、メッセージホールの予備ビットの補間するための流れ行におけるマクロブロックのためのMquantの増加数値を示す。
【0041】
図27は、本発明によるMPEG再符号化の第一形態を示すアルゴリズムである。
【0042】
図28は、第2形態を示すアルゴリズムである。
【0043】
図29は、k回(k=(d+2))繰り返すためのjの位置決めのアルゴリズムである。
【0044】
図30は、MPEG再符号化の第3形態を示すアルゴリズムである。
【0045】
図31は、本発明によって行われる機能をまとめた高レベル線図である。
【0046】
図32は、GenRMプログラムを示すアルゴリズムである。
【0047】
図33は、見る角度を変えたビデオ表示を示す。
【0048】
表の簡単な説明
表1は、n=8の場合のアダマール−ウォルシュ波形を示す。
【0049】
表2は、列と行の配列後のアダマール−ウォルシュ波形を示す。
【0050】
表3は、別に規定したアプリケーションのプロバイダ決定ストリームのためのDivxStreamldを示す。
【0051】
表4は、RMGヘッダのデータ構造を示す。
【0052】
表5は、RMGデータのデータ構造を示す。
【0053】
表6は、bclncrモードからbclncr値を得るためのルックアップ表である。
【0054】
表7は、再符号化の繰り返し状態を示す。
【0055】
表8は、他のメッセージホール処理モードを示す。
【0056】
発明の詳細な説明
1.概要
この発明は、仮想的に不可視なマークの圧縮されたデータストリームへの付加を提供する。このマークはDVDなどの情報記録媒体の公認されていないコピーのソースの追跡を可能にする「ソースオブコピーイングメッセージ」を構成する。本発明の最良な形態はMPEGの分野で生成されるビデオストリームの内容の下に述べられるが、本発明はこれに限定されるものではない。例えば、ソースオブコピーイングメッセージは、同様の原理を用いるオーディオ信号やソフトウェアにも組み合わせることができる。これらのマークは、ビューアでは見ることができず、オーソライズされた機関によって維持されるハードウェアによって検出され、デコードされる。より詳しくは、メッセージは特定の再生装置およびDVDのような特定の原本記録媒体、および再生時刻のシリアルナンバーを特定する。明らかなように、このメッセージは再生装置によって媒体が再生されるごとに一意的に生成される。媒体(公認されたコピーから海賊版が作られたものであるとしても)を再生し、ビデオストリームに付加されたマークに埋めこまれたメッセージをデコードすることによって、機関は複製者の追跡を開始することができる。これらのマークの内容は再生されるたびに変化するので、このマークは「ランニングマーク」またはRMと称され、著作の時点で一旦作成されたら変化しないすかしとは異なる。
【0057】
図1を参照して概要で述べられるのは本発明のランニングマークシステムが実施される環境である。記録スタジオでは、ムービーなどのプログラム素材を運ぶマスターディジタルリニアテープDLTが、ユニット124によって、DLTの内容をMPEGビデオストリームに変換する処理がなされる。次に、プログラム素材は、DVDマルチプレクサユニット126によってDVD記録に適したフォーマットに配置される。エンコーダ124およびマルチプレクサ126は、この業界で標準的な装置を含んでいる。DVDマルチプレクサ126は、MPEGビデオストリームに、データエントリのためにビットストリームに空領域を予約するサブピクチャ箇所保持部を付加する。
【0058】
マルチプレクサユニット126の出力においてビデオストリームによって表されるイメージは、ディスクフォーマッティングユニット128によって、ビデオストリームのフレームの中でランニングマークの位置の候補を特定するために処理され、ビデオを保持するDVDは、ユニット130でスタンプされ、シリアライズされる。ディスクフォーマッティングユニット128は、マークが見えないかまたはじゃまにならない画像のロケーションにランニングマークを埋めこむために、各ビデオフレームから候補ブロックまたはマクロブロックを探す。MPEGビデオストリームのこれらのロケーションで「メッセージホール」(メッセージホールは、本発明では、それぞれビットモジュレーションに変換され得るピクチャフレームのブロックまたはマクロブロックに対応するMPEGセグメントである。)を表すデータビットには、フレーム中のロケーションを特定するためのアドレスオフセットが与えられる。置換されたブロックは、ディスクフォーマッティングユニット128によって、プレースホルダに保存される。
【0059】
ユニット128は、ランニングマーク保持ユニット132(好ましくはテープまたはDVD)に、オリジナルのMPEGストリームだけでなく、再生装置、ディスク、および再生時刻のためのビデオストリーム情報を運ぶメッセージホールロケーションを送る。保持ユニット132は、複製者が追跡されるのを可能にするのを助けるために、テストの下の記録媒体からランニングマークを抽出しデコードするのに用いられるために、公認された機関に参照媒体として保持される。
【0060】
ユーザは、機関から発行されたシリアルナンバーによって特定されるプレイバックユニット134が提供される。プレイバックユニットが支給されたユーザは、機関に登録される。また、登録ユーザによって閲覧されるためにムービーを運ぶ事前に記録された媒体も、機関によって支給されシリアライズされる。プレイバックユニットおよび事前に記録された媒体の登録ナンバーは、不可視であるがプレイバックユニット134によって読み取り可能に保存される。例えば、プレイバックユニットのシリアルナンバーは、ユニット内のリードオンリーメモリに保存され、媒体のシリアルナンバーは、好ましくは媒体に記録されているものの中にエンコードされる。プレイバックユニット134は、都合よくは媒体が再生される時刻を特定するリアルタイムクロックを含む。これらの情報コンポーネントは、媒体が再生されるごとに、プレイバックユニット134によって、シリアライズされ、生成されるランニングマーク中にエンコードされる。
【0061】
登録されたプレイバックユニット134は、事前に記録された媒体の内容を再生し、通常は、ビデオストリームがテレビ画面やモニタ135に再現される。一例は、事前に記録されたムービーを見る目的でDVDを借り受けまたは購入するカスタマである。ビデオストリームに埋めこまれたランニングマークは、モニタ135上では見ることはできず、ビューアは、ランニングマークを関知したり影響を受けたりしない。しかし、もし媒体がリプロダクションユニット136を用いてコピーされた場合には、そのようにして作成された公認されていないコピー138は、オリジナルのビデオストリーム(ムービー)だけでなく、プレイバックユニット134、機関から発行されたオリジナルディスク、および再生時刻を特定するランニングマークをも含む。公認されていないコピーは、マーク抽出システム122によって再生され、複製者を追跡するために好ましくは機関によって保持される。マーク抽出システム122は、マーク保持システム132から得られたブロックロケーションでのランニングマークの内容を読み取る。ランニングマークの内容の適切なデコーディングは、公認されていない複製の出所の追跡に用いられる。
【0062】
ランニングマークは、好ましくは選択されたフレーム内のビデオストリーム中に戦略的に分配されたピクセルのブロックを含むが、ランニングマークは、ビューアによる関知を阻止するために、連続するフレームないの同じロケーションには現れない。フレーム中のランニングマークの位置は、プレースホルダセクタによって定義されたメッセージホールロケーションに対応する。マーク自信は、
メッセージホールロケーションのピクセルがオリジナル画像の内容から変更されるか否かによらず、“1”または“0”の論理で表されてもよい。この基準は、反転され、または他の異なるフォーマット、例えばバイナリデータではなく4値などにエンコードされ得る。一例としては、もし、メッセージホールが、ブロックのオリジナルの画像内容から変更されたピクセルのブロックを含む場合には、そのメッセージホールは論理“1”としてデコードされ、もしメッセージホールロケーションに対応するピクセルブロックが、そのロケーションのオリジナル画像と比較して変更されていない場合にはメッセージのないようは論理“0”としてデコードされてもよい。これらの論理1および0は、フレーム内で、そして、フレームごとに、コピーのソースに対応する完全なメッセージを組み立てるために、連続して読み込まれる。
【0063】
図2は、オペレータによる手動で、または既に述べた画像属性の基準に従った装置によって自動的に、ビューアに対しては不可視にフレーム中に配置されたメッセージホールロケーションa、b、およびcを含むあるビデオフレームに対応する画像を表す。例えば示された画像の境界などの変わり目、または加工された領域は、選択に好ましい。もし、ブロックaの内容がオリジナルの画像から変更されると、それは値が“1”のランニングマークとして、さもなくば、もしフレーム中のマークaがオリジナル画像と同一である場合には値が“0”の値のランニングマークとしてデコードされる。ここで重要なことは、メッセージホールのロケーションは保存され、ランニングマークを表すそれらのロケーションのピクセルブロックの内容は、評価のために、ランニングマークが変更された画像を表すか否かを決定するために同じロケーションのオリジナル画像と比較される。しかしながら、他のエンコード基準、例えば、バイナリまたは他のタイプのデータを指定するための2またはそれ以上の異なって変化したランニングマークを使うことも、ランニングマークの値を決定するのに用い得ることは理解されるべきである。
【0064】
図3は、MPEGビットストリーム中のメッセージホールを表す。いくつかの参照ロケーションに関しての各メッセージホール、ビットサイズ、およびロケーションオフセットは、記録媒体のサブピクチャチャネルに保存される。複製のソースに対応するMPEGビットは、プリエンコードされ、サブピクチャチャネル内に保存される。プレイバックユニット134でのランニングマーク(RM)データのエンコーディング過程では、プレイバックユニットおよび媒体のシリアルナンバー、ならびに再生時刻が読み出され、入力されるMPEGビットストリームのメッセージホール中のビットが、この複製情報のソースに対応するMPEGビットに置き換えられる。いかなる数のビットも、機関によって発行されたプレイバックユニットおよび媒体の数に適応して適切に定義された範囲で、各メッセージエレメントに対して指定されることができる。これらのエレメントに対応したビットは、媒体が再生されるごとに再生ソースを特定するビットストリームを形成するためにシリアライズされる。
【0065】
2.ランニングマークシステム
上記概要のように、ランニングマークを用いてビデオストリームに埋めこまれたメッセージは、好ましくは1またはそれ以上の次のフィールド(1)プレイバックユニットのシリアルナンバー、(2)記録媒体(例えばDVD)のシリアルナンバー、および(3)ソースの複製を示す再生時刻を含む。各ランニングマークメッセージは規定された数、例えば、連結され、複製のソースオブコピーイング特定フィールドを含む場合には、128のビットから成り立っている。
【0066】
特定のためのソースオブアイデンティフィケーションメッセージがエンコードされ、MPEGビデオストリームに挿入される方法を図4aに示す。記録媒体が、閲覧されるため(または公認されていない複製のため)に再生される際に、プレイバックユニット134(図1)でリアルタイムに生成されるメッセージ、図4aにおいてはMsglnと称される、は、メッセージエンコーダ302で適用される。このエンコーダ302は、メッセージの全てのフィールドを各フィールド(プレイバックユニットシリアルナンバー、ディスクシリアルナンバー、再生時刻)に割り当てられたビットの数にしたがってビットストリームBaに変換する。プレイバックユニットのシリアルナンバーは変更されないので、好ましくはプレイバックユニット内のリードオンリーメモリ(ROM)から読み出される。ディスクのシリアルナンバーは、再生中に直接ディスクから読み込まれる。再生時刻は、プレイバックユニット内のシステムクロックから得られる。全てのビットは、ビットストリームBaを形成するために連結される。
【0067】
好ましくは複製のソースオブコピーイングメッセージは、DVDまたは他の媒体のビデオストリームに複数回連続して挿入されてもよい。これは、DVDの中でメッセージデータに利用可能なフレームの数が、コピーソースを特定するために必要なデータの記憶要求よりもはるかに大きいために可能となる。メッセージの安全性を高めるのを助けるためには、フォーマットまたは各挿入の内容を異ならせてもよい。例えば、連続するいくつかの各エントリのコーディングや、同じ特定を表す全ての情報は、機関のデコーダによって理解される異なるフォーマットで格納されてもよい。
【0068】
最良の形態では、唯一のデータのビットが各メッセージホールに埋めこまれる。しかし、発明の範囲内で種々の変形が可能である。例えば、メッセージの2またはそれ以上のビットが、何らかの適切な方法でエンコードされて一つのメッセージホールにもたらされてもよい。また、1つのメッセージビットが2またはそれ以上のメッセージホールに分配されてもよい。
【0069】
さらに他の変形例としては、ランニングマークは、MPEGビットストリーム中よりもビデオストリーム中に直接埋めこまれてもよい。すなわち、フレームの各ピクセルまたは選択されたいくつかのピクセルが、直接、メッセージビットとともにエンコードされてもよい。これは、例えば、オリジナルに関してピクセルの輝度を変化させて、所定の論理値を示すようにしてもよい。この技術の現実的な実施は、論理値1または0をそれぞれ表すために、各輝度が増加または減少されるピクセルによって示されるデータのPNシーケンスによって提供される。
【0070】
2.1 メッセージの暗号化
ビットストリームBaが暗号化ユニット304に供給される。暗号化ユニット304では、再生源となるメッセージを保護するため、また、偽造されたものであるけれども適法なメッセージを攻撃者が作成してシステムの信用を落とすのを阻むために強固な暗号化が行われる。メッセージのビットストリームBaの暗号化には、図5に示すような5重の暗号化が適用されることが好ましい。図5に示す5重の暗号化ではDES(Data Encryption Standard)アルゴリズムを使用している。5重のDESアルゴリズムの前と後には128ビットの置換が行われる。まず、128ビット置換器Ps0 320によってビットストリームBaがスクランブルされ、スクランブルされた結果が左半分の部分Balと右半分の部分Barとに分割される。
【0071】
左半分・右半分の各部分は64ビットで構成される。左半分・右半分の各部分はそれぞれ、DESによって鍵K0−K4を用いて5回暗号化される。鍵K0−K4の各々は64ビットの長さを有する。その後、置換器Ps1 322によって、左半分の部分と右半分の部分とが結合され、結合された結果がスクランブルされ、128ビットのビットストリームBbが生成され、これが出力される。
【0072】
DESに代わる暗号化の手段としては、公開鍵暗号系がある。公開鍵暗合系は、整数論、有限体構造および代数的な符号理論に基づいている。公開鍵暗合系の例としては、RSA、McElice、ElGamal、楕円曲線アルゴリズムなどがある。IDEA(International Data Encryption Algorithm)と呼ばれる新しい暗号アルゴリズムも暗号化手段のよい候補である。IDEAは、1992年にXuejua LaiとJames Masseyとによって提案された暗号化アルゴリズムである。
【0073】
2.2 誤り訂正
暗号化ユニット304から出力された128ビットのビットストリームBbは、テープまたはディスク再生技術において不可避なひずみを訂正するために誤り訂正符号化器306に供給される。ひずみは、デジタル−アナログ変換処理、ソースレコーディング、ディスクの製造、テープまたはディスクの複製などの過程で生じる。模倣者は、ビデオソース(video source)を故意にひずませることによって本発明のランニングマークシステム(the running mark system)を攻撃するかもしれない。埋め込まれたランニングマーク(running mark)を確実に回復することができるようにするために、強固な誤り訂正符号化(ECC)が行われることが好ましい。さまざまなECCアルゴリズムおよびそれらの組合せを使用することができる。高い誤り訂正能力を達成しかつ少ない計算量で符号化するためには、図6aおよび図6bに示すような連接ECCシステムを適用することが望ましい。このECCシステムでは、8ビットシンボルの(32,16)縮小リード・ソロモン符号化器によって128ビットの入力ビットストリームBbが符号化されて256ビットのビットストリングBc1が得られる。得られたビットストリームは、図6aに示すように符号化率1/2、拘束長K=7の畳み込み符号化器によって符号化されて528ビットの出力ビットストリームBcが生成される。この符号化処理では32シンボルのうち1つの符号語だけしか存在しないため、速度が速く、符号化器の間でビットインタリーブが必要とされない。
【0074】
リード・ソロモン(RS)符号は一般化BCH符号のある特別のサブクラスである。ガロア体GF(2m)において定義された通常の(n,k)RS符号は、長さn(=2m−1)の符号語のシンボルを有する。ここで、mは正の整数である。各シンボルはmビットで構成される。この符号の最小距離は(n−k+1)であり、この符号は、最大限t=〔(n−k)/2〕個の誤りまで訂正できる。ただし、〔x〕は、x以下の最大整数を示す。パリティ検査シンボルの数は(n−k)である。この符号の生成多項式g(x)は以下の示すとおりである。
【0075】
g(x)=(x−α)(x−α2)(x−α3)・・・(x−α21)
αはGF(2m)の原始元である。m=(m0,m1,・・・,mk-1)は、一致多項式m(x)を伴うkシンボルのメッセージブロックであるとする。ここで、m(x)=m0+m1x+mk-1xk-1である。また、c(x)=(C0,C1,・・・Cn-1)は、一致多項式c(x)を伴うnシンボルのRS符号である。そして、ある(組織)RS符号化アルゴリズムは以下の2つのステップからなる。
【0076】
ステップ1:m(x)とxn-kとの積をg(x)で割る。d(x)=d0+d1X+dn-k-1xn-k-1を別途記憶しておく。
ステップ2:C(x)=xn-km(x)−d(x)をセットする。ここで、c=(−d0,−d1,・・・,−dn-k-1,m0,m1,・・・,mk-1)である。
【0077】
上述の多項式の計算はGF(2m)内で行われる。シフトレジスタを用いることによって効果的に行うことができる。CDやDVDプレーヤの多くのアプリケーションにECCが含まれている。許容される符号長は、通常の長さであるn(=2m−1)シンボルよりも短いため、縮小RS符号を用いることができる。Sは、(n,k)RS符号の符号語のサブセットであるものとする。(n,k)RS符号の符号語中もっとも右のj座標は値0を有する。そうすると、S内のすべての語からもっとも右のj座標を削除することによって(n−j,k−j)縮小RS符号が形成される。元のRS符号を生成する同様のシフトレジスタ符号化器を、短縮RS符号を生成するために使用することができる。もし削除された座標を消去された位置として取り扱ったならば、オリジナルのシフトレジスタ符号化器と同じものを消去したものの復号化とともに復号のために使用することができる。(消去したものとは、受信したシンボルの値が疑わしいことを示すシンボルである。)これに代えて、この発明では、削除された座標をゼロで置き換える手法を使用する。
【0078】
この発明のRMシステムでは、128ビットのメッセージを符号化するためにGF(28)における短縮RS(32,16)符号が使用される。各シンボルは8ビットの長さを有する。この符号では最大t=8のシンボルの誤りまで訂正することができる。原始元αは、原始多項式P(x)の根である。ここで、P(x)=1+x2+x3+x4+x8 である。RS符号を効果的に復号するために、Berlekamp−Masseyシフトレジスタアルゴリズムを使用することができる。
【0079】
畳み込み符号化器は入力ビットストリームを多数のインパルス応答とともに畳み込んでECCビットを生成する。図7は、符号化率1/2、拘束長Kの畳み込み符号化器を示す図である。ここで、x=(x0,x1,x2,・・・)は入力ビットストリーム、(g(0),g(1))は符号化器に対する2つのインパルス応答であるとする。そうすると、符号化されたビットストリームy=(y0 (0),y0 (1),y1 (0),y1 (1),y2 (0),y2 (1),・・・)が以下に示す離散的な畳み込みによって得られる。
【0080】
K−1
yi(j)=Σxi-lgl (j)
l=0
ここで、j=0、1である。畳み込み符合を復号するために、ビタビ復号化器を使用することができる。連接誤り訂正システムのために、畳み込み符号化器は拘束長K=7および符号化率1/2を有する。インパルス応答は、g(0)=(1011011)およびg(1)=(1111001)である。
【0081】
2.3 スペクトル拡散符号化/CDMA
多数の再生ユニットからのビデオ出力を結合することによってこの発明のランニングマーク(running mark)システムを攻撃することを模倣者は試みるかもしれない。この方法では、埋め込まれたランニングマーク(running mark)は削除され、コピー元のメッセージを回復させることが困難になるかもしれない。このため、この発明の1つの局面によると、符号分割多元接続(CDMA)符号化ユニット308を設けて、再生ユニットによって生成されたランニングマーク(running mark)の復号化の分離をたとえノイズが存在しているときであっても可能にしている。CDMAは、指定された周波数内で多数の伝送チャンネルを供給するために特別の符号を使用する変調の一種である。Hewlett−Packard Journal,December 1993のページ90−97「North American Cellular CDMA」というタイトルの記事にCDMAの標準について述べられている。以下の説明はこれを参考にしている。ランニングマーク(running mark)を符号化するためにCDMAを使用することの利点は、特性に基づいている。種々の再生ユニットは種々の相関が低い波形を用いてビットを符号化してMPEGビデオストリームに加えるという特性に基づいている。復号の間、受信信号と関連波形との内積をとることによって再生ユニットの送出ビットは回復される。これらの波形の間の相関は低いため、たとえ種々の再生ユニットからの出力波形の結合として受信波形が生成されていても内積をとることによって送出ビットを直接取り出すことができる。
【0082】
この発明の1つの局面に従うと、CDMA符号化においては擬似ランダム雑音(PN)系列が使用されることが望ましい。これらPN系列はスペクトル拡散多重アクセス用アプリケーションに使用されるものであり、時間領域においてランダム雑音のように振る舞う。また、周波数領域において信号を隠したり干渉を除去したりする特性が良好である。使用することができる別の種類の波形としては、バイナリーの直交波形の集合がある。直交波形が有効なのは、それらの相関が最も低いすなわち0であり、よりよくビットを取り出せるからである。この目的のためのバイナリー直交波形の望ましいタイプはHadmard−Walsh(HW)波形である。これはHWマトリクスの行を周知の方法で選択することによって得られる。
【0083】
しかし、非常に多数の再生ユニットには独自の波形が割り当てられる必要があるであろう。もし、各再生ユニットが異なった波形を使用したならば、要求されるHW波形の長さは非実用的なものとなりる。また、未知の波形でビットを取り出すのは不可能という問題がある。もし多数の再生ユニットが共通の波形を共有したならば、模倣者はこれらの再生ユニットを使用してランニングマーク(running mark)を回復できないようなビデオソースを生成するかもしれない。この問題を解決するためにこの発明では、ランタイムの間、各ディスクプレーヤーに対して1つの波形を波形の集合からランダムに選択する。これは有効である。なぜなら、模倣者のすべてのディスクプレーヤーがランタイムの間同じ波形を選ぶ確率は低いからである。また、映像内のランニングマーク(running mark)の各コピーについて波形はランダムに選ばれる。そして各時間の間、同じまたは異なった映像が再生される。少数の異なる波形だけがあるため、ビットの取り出しプロセスではそれらのすべてを試して内積の最も高いものを選択することによって送出ビットを決めることができる。高速HW変換をこの目的のために利用することができる。
【0084】
もしどの波形を使用するかが決まっていれば、CDMAシステムに対する模倣者の攻撃を避けるために、CDMA波形は置換を使用してスクランブルされ、ビットストリームを送出するために1つの波形よりも多くの波形が使用される。直交特性を保存するために、波形はまず異なる列の間で置換され次いで異なる行の間で置換される。表1は、長さ8のHandmard−Walsh波形を示す。表2は、列および行の置換後のHandmard−Walsh波形を示す。
【0085】
【表1】
【0086】
【表2】
【0087】
スクランブルされたHW波形は、あらかじめ符号化されたディスクから読み出されまたはあらかじめROMに記憶されている。すなわち、ランタイム中に計算する必要がない。多数の波形を使用するためには、それらはビットストリームの同じビット位置について異なった再生ユニットに対する波形は異なっているように適切に選択されるべきである。
【0088】
図8を参照してCDMA符号化処理をより分かりやすく示す。まず、0から511の間の数がランダムに生成される。そして、列と行の置換を伴った264の連続的なHW波形が選択される。これらの波形とビットストリームBcの最初の半分の部分および2番目の半分の部分との排他的論理和のビット演算が行われ、528×512の長さの出力ビットストリームBdが生成される。バーストノイズをさけるために、ビットストリームBdのビットは列の順に形成される。
【0089】
2.4 スクランブル
より高い安全性をビットの送出に持たせるために、MVLP(multiple variable length permutation)置換が使用されてCDMAビットストリームがスクランブルされる。図9aを参照して、置換器310において、種々の長さを有する多数の置換器を使用してCDMAビットストリームBdのビットが置換されて同じ長さのビットストリームBaが形成される。図9bに示すように、最大長256の8個の置換器を使用することができる。長さ7の置換器P0およびその逆置換器の例を図9cに示す。最終の置換を行うために、残っているビットの数は置換器の数よりも少ない。ギャップを満たすために”Don’t care”の語が詰め込まれる。置換の後、正常なビットは結果からスキャンされて送出される。逆置換処理の間、ユニット406のデコーダ400において、送出ビットが正しい位置に挿入された後、逆置換が実行される。図9dおよび図9eは、図9cに示した置換器を用いたこれらの処理の例を示す。上記置換は、上述したCDMA符号化処理と結合することができる。ビットストリームBeを送出する前に必要となる一時的な記憶スペースは、528×512ビットの代わりに256ビットである。置換されたビットストリームBeはビットモジューラ312に供給される。ビットモジューラ312は、入力されるMPEGビットストリームを修正することによって1またはそれ以上の送られてきたビットを最終ビデオ出力に埋め込む。デコーダ(図4b)内のビット復調器404において受信ビデオを加工することによってこれらのビットは回復される。
【0090】
2.5 ビット変調及び復調
図4aに示すように、ビット変調器312は、入力MPEGビットストリームのメッセージホールのビットストリームを変更することによってビットストリームBeの1個以上の送信されたビットを修正MPEGビットストリームBfに埋め込む。このビットストリームBfはビデオ信号を含む走行マークを出力するMPEG復調器314に付与される。各メッセージホールについて、そのサイズとある基準位置に対してオフセットされた位置とがDVDディスクの部分画像チャネルに格納される。RMキャリアは送信用RMビットからなる(MBの画素値にも対応する)MH内のMPEGビットとして定義される。これらキャリアのMPEGビットは予め符号化され、部分画像チャネル内に格納される。RM符号化時、MH情報とこれらキャリアとが読み出され、入力MPEGビットストリームのメッセージホール内のビットが送信用ビットに応じて上記キャリアに置換される。これらキャリアを格納する必要なデータ空間を削減するために、キャリアの一つがMPEGビットストリームのMHに予め格納される。MHは、その内部に2のn乗個の異なるRMキャリアが存在する場合に、nビットを発信することができる。最良の形態では、各MHにつき2個のキャリアが存在し、1個のキャリアのみが部分画像チャネルに格納される。
【0091】
図4bのビット復調器404は受け取ったビデオ信号を処理することでビットストリームBeを復元する。受け取られるビデオ信号はDVD再生装置などの他のソースや、VHSテープ再生装置やインターネットから得ることができる。走行マークを復号化する前に、ビデオディジタイザ装置402でNTSC復調などの適正な復調とフォーマット変換が実行される。ビデオディジタイザ402は高品質のA/D変換器を使用して入力ビデオ信号をディジタル化する。チャネル補償器は、ディジタル化されたビデオ信号を元のビデオ信号に合わせ、従来のフレーム位置合わせ技術とチャネル等化技術とを使用してチャネルの誤りを補償する。
【0092】
さらに図4bに示すように、ビット復調器404は、ビデオフレーム内に配分されたメッセージホールの元のビデオ信号とそのブロック位置またはマクロブロック位置とともに、ディジタル化されたビデオビットストリームBbを受け取る。ビット復調器404は、ディジタル化されたビデオストリームVbと元のビデオ(基準となるビデオと検査対象ビデオ)が同時に再生されている際にこれら二つのビデオを比較し、基準ビデオに記録された各メッセージホール位置により定義された検査対象ビデオのブロックまたはマクロブロックの内容を比較する。メッセージの位置に関して、元のビデオ(基準ビデオ)のブロックまたはマクロブロックと検査対象ビデオ内のブロックまたはマクロブロックが画像の変化を示していれば、ビット復調器は論理値1を生成し、元のビデオのブロックまたはマクロブロックと検査対象ビデオ内のメッセージホール位置のブロックまたはマクロブロックが同じであれば、ビット復調器404はビットストリームBeとして論理値0を生成する。このビットストリームBeは、復号器414でコピー源メッセージに変換される前に、ユニット406でデペルミュレート化(スクランブル解除)され、ユニット408で復号化され、ユニット410で誤り訂正され、ユニット412で暗号解除される。ユニット406,408,410及び412はそれぞれ図8の対応部310,308,306及び304の逆の機能を実行する。
【0093】
3.RMキャリアの生成
RMキャリアは、ふつうの人は見ることがほとんどできないように、検出されたり取り除かれたりしないように、また、送信メッセージを再生することが十分に確実にできるように、慎重に設計する必要がある。RMキャリア及びMH情報を格納するために使用することができるスペースは限られている。このことは、利用できる送信ビットの総数及びRMメッセージの再生性能に影響する。この他に、RMキャリアを含めたMPEGのビットの総数は、いくつかのレベルにおいてムービーポストハウス(movie post house)からの元のDVDビットストリームのビット数の総数に等しくなければならないという制約がある。そうでなければ、MPEG復号化におけるバッファオーバーフローやアンダーフローの問題が生じる可能性があり、ナビゲーション(navigation)及び元のDVDディスクの他のDVD情報を変更しないでおくために、DVDの様々なセクタのビットストリームを編集することが必要となる。
【0094】
ビットの総数を変更しないでおくレベルはいろいろあり、これがキャリアの設計に影響を与える。最も簡単なレベルでは、1つ又は少数のビットを変更する。例えば、動きベクトルやDCT係数の符号ビットを変更したり、量子化スケールファクターを変更する。他のレベルでは、MBのビット総数を変更しないようにする。例えば、DCT係数を同じビット数のもので置き換えたり、ビット総数を変えずに複数のDCT係数を変更する。これらの2つの方法の主な有利な点は、一般にキャリアのサイズは小さいという点と、キャリアのための格納スペースが余分に必要ではない場合があるという点である。しかし、これらの方法には、大きくて制御することが難しい映像歪みがあり、メッセージ再生の可能性が低く、MHに適したMBの数が少ないという傾向がある。キャリアのビット数は、元のMBのビット数よりも大きい(又は小さい)ことが望ましい。キャリアの大きさが元のものより小さい場合と同様に、MHの全てのキャリアのサイズを同じにするために、ビット埋め込みが行われる。MPEGビットストリームの変更を確実に合法的にするため、MHのMBの後に新たなスライスヘッダが挿入される。
同じ行のビット総数が変わらないように、その行の全てのMBを再符号化することによって、増加したビットの総数が補償される。再符号化の方法については、後により詳細に説明する。
【0095】
MBの周りの画素の強さを変えることによって、マクロブロックのエッジにおける変化を目に見えないように滑らかにする。例えば、図10のように、画素p(n)の周りの画素p(m)には、遷移領域を作るために、歪みが少し与えられる。
【0096】
本発明においては、RMキャリアを生成する基本的な方法は、映像源の強さを加えたり変えることである。この方法は、
(1)映像にノイズを与える
(2)エッジに沿って強度を変える
(3)テクスチャ領域の画像の特性を変える
というステップを含む。また、所定のメッセージホール(message hole)におけるビットの状態が変化したことが1つのバイナリ値を示すようにし、ビットの状態が変化しなかったことが他のバイナリ値を示すようにしてもよい。動きベクトルの精度を1画素精度と半画素精度との間で切り換えてもよい。1つ以上の輝度ブロック又は色差ブロックのDCT係数を変更してもよい。更に、
(4)所定の論理値のメッセージビットに応じて、MBの画像のエッジのプロファイルを修正する(図10bは、第1及び第2の論理値を示し、増加又は現象するエッジのプロファイルを図示している)。
(5)図10cのように、画像のテクスチャを1画素、又は1画素以上若しくは1画素以下だけシフトし、所定の論理値のデータを示す。
(6)マクロブロックのテクスチャを伸長又は圧縮して示す(図10d)。
【0097】
このような方法や他の方法によってMBの変更し、メッセージのビットを定義することは、目に見えないように画像のテクスチャ部分において行うと有利である。同様に他の方法を採用することも可能である。重要な点は、変化して論理値を表すパラメータは、確実に検出されなければならない(ロバスト性がある)が、画像と混ざっていなければならないということである。
【0098】
ランニングマーク(running mark)の変調をするために映像にノイズを付加することは、歪みが小さく、コピーをする人に検出されにくいという点で有利である。図11に示すように、ノイズのようなキャリアは、同程度の歪みに対して、MB内で歪みを拡散する。このため、各画素の歪みは小さくなり、事実上目で見ることはできなくなる。カメラやフィルムからのノイズのように、ノイズは映像ソースに元から生じているので、ノイズのようなキャリアは、フレーム差分を求めても検出することは難しい。
【0099】
本発明では、MHの各DCTブロックの第1のnDCT AC係数を変更するDCTによる方法がRMキャリアを生成するために用いられており、これは図12に示されている。配列MHBlock[0][block]が、MH(RMを除く)の元のDCTブロックを全て格納するために用いられる。配列MHBlock[1][block]及びMHBlock[2][block]は、リプレースメント(replacement)1及び2を作るためにノイズを加えた後のブロックを格納するために用いられる。キャリア0及び1は、元のブロック及び2つのリプレースメントから選択することができる。まず、nDCTの要素の配列がランダムに生成される。これらの要素は、0,1,及び2のいずれかの値を持つ。その割合は、例えば0が50%、1及び2はともに25%である。リプレースメント1を生成するために、要素が1及び2であれば、対応するDCT係数は固定値sigmaをそれぞれ加算及び減算する。リプレースメント1を生成する場合は、加算と減算とが逆になる。要素が0であれば、キャリアはともに元のDCTの値を用いる。nDCT及びsigmaの値は、輝度ブロックと色差ブロックとで異なるものとなりうる。図13は、この方法の例を示している。これは、nDCT=40,sigma=5、0,1,2の比が2:1:1である場合の輝度ブロックの画素領域における典型的なノイズパターンである。
【0100】
4.DVDプレーヤー環境におけるビット変調の実行
4.1 概要
DVDプレーヤー環境における図4aのビット変調器312の実行について、以下に詳細に説明する。
図4aにおけるBeは、総計Numbitビットであるとする。これらのビットは、ポインタBitsPtrで示される配列Bits[]に格納される。Bits[]の最後の配列要素が届くと、次に送るビットとして最初の要素が用いられる。映画には、RMビットの1つ以上のコピーが埋め込まれている点に注意する必要がある。コピーの数は、DVDディスク内の利用できるRMスペースによって異なる。
【0101】
MHの映像ストリーム、MHのサイズと位置、処理パラメータを置き換えるためのデータは、DVDのVOBU内のRMG_PCKと呼ばれるセクタに格納される。RMG_PCKのデータレイアウトとデータ構造は、図14、表3〜5に示されている。
【0102】
【表3】
【0103】
【表4】
【0104】
【表5】
【0105】
図14aにおいて、RMG_PCKは、このRMG_PCKによって修正されるメッセージホールを含むV_PCKのどれよりも物理的に前に格納される。これらのV_PCKは、RMG_PCKが生じるVOBUの中にある必要はない。図14bにおいて、RMG_PCKは、DVD private_stream_1 パックであって、そのパケットは供給者が定義したストリームによってエンコードされている。パケットのstream_id及びsub_stream_idは、それぞれ"1011 1101b"及び"1111 1111b"である。これは、DVDビデオ仕様書(DVD video specification)1.0のVi5-6ページの表5.1.1-1及び表5.1.1-2に記載されている。パックとパケットのヘッダは、DVDビデオ仕様書1.0のsection 5.2,Vi5-9に定義されている。DivxStreamldは様々なDivxアプリケーションを示し、表3に定義されている。DivxStreamldが"0000 0001b"である場合は、ランタイムモジュールは、本明細書に記載のアルゴリズム及びデータ構造に従って、ナビゲーションパックを除いた全てのDVDパックのメッセージホールのビットストリームを置き換える。RMG_PCKのその他の部分は、RMGヘッダ、予約されたB,SizeHole及びRMGデータを有している。RMG_PCKの全てのデータは1つのセクタの中になければならない。すなわち、どのデータもセクタ境界を越えることはできない点に注意が必要である。
【0106】
図14c及び14dは、それぞれRMヘッダ及びRMデータの様々な変数を示している。これらの変数の目的は、表4及び5にまとめられている。RMヘッダはRMG_PCK内の全てのランニングマークによって用いられるRMアルゴリズム及びパラメータについてのグローバルな情報を提供する。NumRMGは、RMG_PCK内のランニングマークの総数である。各ランニングマークは、1つのRMGデータを用いる。変数ReplaceModeはメッセージホールのビットストリームの置き換えに使われる適切なパラメータとともに、アルゴリズムを決定する。
【0107】
例えば、図15のように、bcは、RMGビット配列Bit[]の中でRMG_PCKに最初に送られるビットを示している。RMが終了すると、bcの値は次のRMのために次の式(他の状況においては、他の関係が適用される)、
bc = bc+bclncrValue …(4.1)
に従って更新される。
【0108】
【表6】
【0109】
表6は、各RMのbclncrModeから前記bclncrValueを決定するためのルックアップテーブルである。新たなRMG_PCKのために、送信されるビットを再同期させるためにbcの値が用いられる。RMGビットはデータ型u16のBits[]に格納されているので、bcによって示され、送信されたビットを得るためには、適切なビット抽出が必要である。ここで、ランニングマークのために送られるべきビットの数をn0とする。これは、次の条件、
2n0≧(NumBS+1) …(4.2)
を満たす最小の整数として定義される。
【0110】
NumBSはメッセージホールを置き換えるために用いられるRMデータ中のビットストリームb[]の総数の増加分を示す。RMデータには少なくとも1つのビットストリームデータが加わっている必要があり、(NumBS+1)の値は2の累乗でなければならない。すなわち、NumBS > 0、かつ、n0 > 0でなければならない。bclncrValueとn0とは値が異なっていてもよい。V_PCKのメッセージホールの位置は、論理セクタ番号SectorNumとRMデータのu12オフセットによって決定される。実行時のパフォーマンスをよくするために、RMG_PCK内のセクタ番号は全て減少しないように並んでいるものと仮定する。オフセットは、メッセージホールとSectorNumによって示された物理セクタ(物理セクタ、パック、パケットヘッダを含む)の開始点との間のバイト数を示している。
RMG_PCK内のRMデータの追加ビットストリームの数は、RMデータのオーバーヘッドを減らすため、変更しない。メッセージホールのサイズはSizeHoleによって決定される。RMG_PCK内の全てのメッセージホールのサイズが変わらないと場合は、RMGヘッダのFSizeHoleフラグは0にセットされ、RMGヘッダの後には1つのReserved B及び1つのSizeHoleのみが送られる。その他の場合は、各RMデータはReserved B及びSizeHoleを含む。この例では、1つのRMには1つのメッセージホールのみが処理される。
【0111】
実行時において、計算をすることなく、RMデータの予約領域をスキップしてRMG_PCK内の次のRMデータへ直接跳ぶために、NextRMGが使われる。予約領域は将来の発展のために使われる。NextRMGは、RMG_PCKの始めからRMデータの始めまでのオフセットのバイト数である。最後のRMデータについては、NextRMGには0がセットされる。RMヘッダのフラグFNextRMGが1にセットされると、各RMデータはNextRMGを有し、これらのNextRMGの値は、次のRMGデータへ行くために使われる。フラグFNextRMGが0にセットされると、各RMGデータには予約領域はなく、NextRMGが計算される。
【0112】
図16のアルゴリズムは、実行時におけるランニングマークの処理を概念的に示したものである。実際の実施形態は種々の再生ユニットの制約によって異なる。図16の3行目のRunTimeModule()プロセスは、DVDデータストリームの最後に達するまで(又は、他の割込みが発生するまで)、実行中はVOBUのデータパックを読み続ける。8行目のreadSector()ルーチンは、VOBUから次のデータパックを返し、9行目のreadFromSectorルーチンは、このデータパックの特定の変数の値を返す。データパックのストリームタイプは、変数Streamldによって決定される。データパックがビデオストリーム又はオーディオストリームのいずれか(すなわち、V_PCK、A_PCK又は他のオーディオパック)であれば、復号化され、その結果は表示のためにビデオ又はオーディオポートに送られる。他の型のパックについては、対応する処理が進められる。ランニングマークプロセスは、RMG_PCKが読み込まれ、すなわち、このデータパックは供給者が定義した(private stream 1の)ストリームであり、そのDivxStreamldは"0000 0001b"に等しい。その後、RMGヘッダが26行目のように読み込まれる。メッセージホールのサイズが変わっていなければ、すなわち、FSizeHole=0であれば、28行目のようにSizeHoleが読み込まれる。このRMG_PCKの全てのランニングマークは、12行目のRunningMarking()ルーチンを各ビデオセクタ毎に呼び出すことによって行われる。これらの処理においてエラーが生じた場合には、適切なエラー処理動作が開始される。
【0113】
48行目のRunningMarking()ルーチンは、現在のビデオパックを参照するRMデータを適用することによってランニングマークを行う。次のRMデータの位置のNextRMGは、RMG−PCKから読み出され、又は計算によって求められる。これは、フラグFNextRMGの値による。FSizeHoleが1にセットされている場合は、SizeHoleフィールドが読み出される。その後、セクタ番号、ビットカウントインクリメントモード(bit count increment mode)、メッセージホールのオフセット、及び付加されたビットストリームb[]が読み出される。セクタ番号が現在のビデオセクタの番号に一致するときは、66行目のReplaceMessageHoleData()が呼び出され、ReplaceModeに従ってMHビットを置き換える。次のRMG_DATA構造に移る前に、bcはbclncrModeを使って更新される。
【0114】
74行目のReplaceMessageHoleData()は、変数のモードに従って種々の方法でMHビットの置き換えを行う。Mode=0の場合は、MHビットはb[0]で置き換えられる。Modeが1又は2の場合は、図15のように、bcによって示されたBits[]からn0ビットを抽出することによって、sendBitが作られる。Mode=1の場合、MHビットはb[sendbit-1]で置き換えられる。version=2の場合は、sendbitの下位n0ビットが反転される。すなわち、n0=3の場合、"0000 0101"が"0000 0010"になる。その後、MHビットはb[sendbit-1]に置き換えられる。
【0115】
ランタイムモジュールのファームウェアのクラッシュを防ぎ、RMG_PCKのエラーに起因する映像の歪みを最小限にするため、実施の際には適切なチェックが必要である。誤りがあると、MHビットの置き換えが行われず、処理は次のランニングマークに移ってしまう。
【0116】
4.2 ランニングマーク位置ホルダーとランニングマークパック
ランニングマークパック(ここでは"Divx Packと称する)は、パケットが、供給者が定義したストリームとして符号化された、DVD private_stream_1パックである。パケットのstream_id及びsub_stream_idは、それぞれ"1011 1101b","1111 1111b"に等しく、これらはDVDビデオ仕様書1.0のVI5-6ページの表5.1.1-1及び表5.1.1-2に記載されている。sub_stream_idの直後のサブピクチャデータ領域には、"0x 4449 5658 312e 3023"(16進数)に等しい64ビットがある。これらのビットは、文字列"DIVX1.0#"を表している。パケットの残りのビットは0にセットされている。
【0117】
Divxパックは、Divxパック周波数において、DVDビットストリームに一様に分布している。これは次の式、
Ndivx = truncate((MovieLength/(15*factor))+0.5)
に従って決定される。
但し、NdivxはDinxパック間にはさまれるMPEG符号化ビデオフレームの数である。MovieLengthは、タイトル作成者によって特定された分単位での再生長さである。NTSCの係数は1.0、PALの係数は1.2である。Ndivxの計算値が2未満の場合、Ndivxは2に設定する。Divxパックは物理的に(一時的にではなく)ビデオパックに対して位置している。Ndivx符号化ビデオフレームの収集はDivxビデオグループとして引用する。Divxパックは、Divxビデオグループの第1バイトを含む付随のビデオパックの前に物理的に起こる。その結果、DivxパックはDVDの第1ビデオパックの前に現れる。Divxパックの表示は一時的に付随ビデオパックと無関係となる。Divxパックの表示時間は、付随Divxビデオグループ前、又は後に一時的に起こる。
【0118】
Ndivxの計算を示すため、85分間のNTSC映画を仮定する。公式から、Ndivxは6である。したがって、Divxパックが6符号化ビデオフレームごとにDVDビットストリームに挿入され、Divxビデオグループが6つのビデオフレームを含むことになる。各符号化ビデオフレームが1.2のビデオパックを取り、Divxビデオグループが7.2のビデオパックからなると仮定する。Divxパックのないビデオグループのレイアウトを図17に示す。Divxビデオグループ1からの最後のビデオフレームの部分が、ビデオグループ2からの第1ビデオフレームと同じパックに存在している。Divxパック挿入後のビデオグループとDivxパックのレイアウトを図18に示す。グループ2のDivxパックは、同一パックのグループ1のビデオが存在していても、グループ2の符号化ビデオの第1バイトを含むパックに先行している。
【0119】
Divxパックで創られたDVDディスク画像はMEI照合を通る必要がある。Divxパックは有効個人_ストリーム_1パックである。これは、パックが有効SCRを含み、DivxパケットがDVDビデオ仕様書のVl5−29、及び30において定められた必要な値を含んでいることを意味する。PES_Scramble_Controlフィールドは“スクランブルなし”に設定する。Original_Or_Copyフィールドは、“オリジナル”に設定する。各Divxパックは有効PTSを含む必要がある。このPTS値はビデオのPTS値と関係している必要はない。仕様書のVl5−30頁のNote2で必要なVOBの第1パックを除いては、PTSデータが続くPES個人データはない。
【0120】
DIvxパックがその付随ビデオパックに物理的に隣接している必要はない。ナビゲーション、オーディオ、又は他のサブ画像パックはDivxパックとその付随ビデオパックの間で起こる。DivxビデオグループがBlock、PGC、VOB、セル、またはVOBUを完全に含んでいる必要はない。DIvxビデオグループは、各境界に広がることができる。Divxビデオグループは新たなBOVの始まりで再スタートすることができる。
【0121】
タイトル作成者は、Divxパックの作成を可能、不可能の間で選択できる。この作成はデフォルトで不可能となる。Divxパックの作成が可能な場合、タイトル作成者は、Ndivx計算のために映画の分単位で時間を特定できる。タイトル作成者が書き入れた映画の時間が15分未満、又は240分以上の場合、確認メッセージが現れ、タイトル作成者は書き入れた値を受け入れたり、拒絶したりできる。タイトル作成者は、書き入れた映画時間から決定する計算したNdivxを上書きすることができる。MovieLengthの値はNdivxの新しい値では更新されない。Ndivxの値は2未満、又は2030−1以上としては特定できない。Ndivxの上書き値が有効でなく、変更が失敗の場合、エラーメッセージが現れる。Divxパックの作成ができる場合は、タイトル作成者は映画時間、又はNdivxのいずれかを特定しなければならない。
【0122】
5. メッセージホールの生成及び再配置
RMシステムにおいて、ビデオを構成するMBのいくつかがMHとされる。MHとなるMBの選択方法が必要である。この選択はRMシステムにとって決定的ではない。情報(メッセージ)は、MHとしてのMBのコンフィギュレーションを仮想的に用いることで表現されかつ再生され得る。したがって、MHの選択のための可能性のある多数の技術を採用し得る。
【0123】
好ましい実施形態において、MHの選択は2つのフェーズからなる。すなわち、1)MH候補の初期選択(メッセージホールの生成)に続き、2)これらの候補からの最終選択(メッセージホールの再配置)である。この2フェーズ手法は、いくつかの理由のうち、各Bフレームに程良い数のMHを有することが望ましいとの理由から採用される。メッセージホール生成(第1フェーズ)では、本来必要な数より多くの候補が選択される。再配置(第2フェーズ)では、1つのBフレームあたりの最終的なMHの数が相当に程良い数になるように、Bフレーム中の過剰ないくつかの候補が捨てられる。以下の節に述べるように、その他の種々の理由から候補を捨ててもよい。
【0124】
RMシステムの本形態では、ムービー中に配置できるMHの総数は、サブピクチャチャネル中の空き領域と、MHの大きさと、DVDが再生される際のビデオにリアルタイムにRMを挿入するためのDVDプレーヤの計算上の容量とにより制限されている。1つのBフレームあたりのMHの平均数は、一般に12より少ない。MHの配置にあたって考慮すべき点は、(1)MHの位置が予測不能であること、(2)MHが複数フレームに渡ってできるだけ均一に配置されること、(3)RMがMHの中に挿入された際にMHが視認されにくいことである。MHの位置が予測不能であるべきなのは、例えばMHの位置が既知であり又は予測されると、ムービー海賊版製作者が伝達情報(メッセージ)をたやすく改竄することができるからである。MHが複数フレームに渡ってできるだけ均一に配置されるべきであるのは、リアルタイムにMH中にRMを挿入するのに必要な計算上の容量が一定でないからである。加えて、単一フレーム又は少数のフレームに多数のMHが配置されると、これらのフレームを削除することにより、かなりの量の情報が消失又は除去されてしまうからである。RM挿入の後にビデオ視聴者にとってMHが見えにくい(又は少なくともあまり気付かれない)ことは、ビデオの品質がRMシステムによってあまり悪影響を受けないことに通じる。また、MHが見えやすいと、改竄が容易になってしまう。
【0125】
1つのアプローチは、人手で又は半自動で各フレーム中の所要数のMHを選択することである。例えば、ムービーを構成する各Bフレームをコンピュータプログラムが表示し、熟練したオペレータがプログラムを使ってMHとして使われるべきMBを選択するのである。このアプローチは、MHの選択に人間の目と人間の洞察力を用いる点で優れている。例えば、気付かれにくいようにMHが配置されるからである。このようなアプローチは、処理すべきフレームが多数にのぼるので、出費がかさみ、時間がかかり、かつ退屈である。例えば、110分のムービーには158400フレームがあるのである。したがって、自動MH生成が重要になってくる。本発明に係るアプローチによれば、乱数ジェネレータを用いることでHMがランダムに生成される。MHの視認性を低減するための他のアプローチもある。最初に1フレームの全てのMBを平滑と非平滑(テクスチャあり)とに分類し、それから「テクスチャあり」の集合の中からMHとしてMBをランダムに選択するのである。これら2つのアプローチは、5.1節及び5.2節においてそれぞれ述べる。
【0126】
5.1 MHのランダム生成
MH生成に要求されるのは、その位置が予測可能なパターンに従わないようにすることである。この要求は、MHをランダムに配置することによって満たされる。例えば、疑似乱数ジェネレータを用いてMH配置を取り上げるのである。この方法によれば、1フレームを構成するMBの各ロウに固定数の候補MHがランダムに配置される。例えば、仮に1ロウあたりの候補MHの所要数が3であるものとすると、アルゴリズムにより各MBロウに3個のMHが配置されるが、MHの水平位置は、均一分布を持つ疑似乱数ジェネレータを用いてランダムに割り当てられる。各MBロウについては、既に候補MHとして選択されたMBのリストをアルゴリズムが持つことで、同じMBが重ねて選択されず、かつ全てのロウが候補MHの目標数(例えば3)を持つようになされる。例えば、疑似乱数ジェネレータがたまたま同じMBを2度目に選択したなら、このMBが候補MHのリストの中にあることが見い出され、リスト中に存在しないMBが見つかるまで疑似ランダム選択のプロセスが繰り返される。一旦1フレーム中の全てのMHが選択されると、これらがMBアドレス(MBA)の昇順にソートされる。昇順ソートの理由は、RMシステム中の他のアルゴリズムがMHをこの順に処理することになっているからである。
【0127】
このアルゴリズムの疑似コード表現が、図19に示されている。このアルゴリズムのパラメータは、Width、Height、nFrames、numMHrow及びseedである。Width及びHeightの値は、フレームサイズをピクセル単位で指定する。1セットのフレーム中の各MBロウのために生成された候補MHの数がnumMHrowである。nFramesパラメータは、処理されるべきフレームの数を指定する。候補MHのMBアドレスリスト、すなわちMHAlistが本アルゴリズムの出力である。
【0128】
図19のgMHrowのアルゴリズムによれば、Width、Height、nFrames、numMHrow及びseedの値が得られる。そして、MBロウ中のMBの数、すなわちMB_Widthが計算され、numMHrowが0からMB_Widthまでの範囲に制限される。ここに、MB_Widthは1MBロウ中のMBの数である。疑似乱数ジェネレータはseedパラメータにより指定された「種」の値によって初期化される。疑似乱数ジェネレータを用いて各フレームの各ロウにMHが生成され、lowMBAとhighMBAとの間の乱整数に戻る。本アルゴリズムによれば、1フレーム内でMHの繰り返しがないことが保証される。そして、MHAlistの中の全てのMBAが昇順にソートされて出力される。
【0129】
5.2 領域分類を伴うメッセージホール生成
更に洗練された他のMH選択のやり方は、人がビデオの歪を許容し得るビデオ中の領域を画定し、これらの領域の中にMHを配置することである。このやり方は、空間的、時間的、輝度及び/又は色の特性に従って、ピクチャフレームを異なる領域に分割するものである。ここでは、MBが平滑と非平滑(テクスチャあり)とに分類される。「テクスチャあり」と分類されたMBが候補MHとしてランダムに選択される。これら2つのプロセスについては、次の段落において説明する。人間の目は非平滑領域中に比べて平滑領域中の歪みに対して敏感なので、平滑領域へはMHを配置しない。
【0130】
Chun et al.,"An Adaptive Perceptual Quantization Algorithm for Video coding", IEEE Transactions Consumer Electronics, 39(3): 555-8, Aug. 1993と同様のアプローチにより、MBのルミナンスブロックのDCT係数を用いて、2ステップで分類が実行される。この分類アルゴリズムによれば、ピクチャフレーム中のMBがランダムに選択される。取り上げられたMBが次の段落で説明するいくつかの基準を満たすならば、当該MBが平滑又は非平滑(テクスチャあり)に分類される。MBが「テクスチャあり」に分類されると、当該MBが候補MHとみなされる。このプロセスは、所要数のMBが選択されるまで、又はフレーム中に「テクスチャあり」のブロックが残らなくなる(すなわち、全ての「テクスチャあり」のMBが候補MHとして受け入れられる)まで繰り返される。
【0131】
分類の前にMBが満たさねばならない基準の1つは、それがフレームの境界に位置しないことである。ここで境界とは、MBの最初のロウから最後のロウまで、及びMBの最初のカラムから最後のカラムまでからなる、MBの外側の矩形のことである。これらのMBを外して考える理由は2つある。第1の理由は、家庭用VCRのような安価なアナログ記録装置では、これらのMBがしばしば特に低い忠実度で再生されるからである。したがって、それらの装置で記録された場合には、これらの領域からRM情報を引き出すことは困難である。第2の理由は、多くのテレビジョン受像機ではこれらの領域が表示されず、ピクチャフレームの表示領域から外にはみ出してしまうからである。これらのMBは、例えば黒領域に置き換えられる。この置き換えにより、ビデオの目視性に悪影響を及ぼさずに、これらの領域中のRM情報を効率的に除去することができる。
【0132】
MBが満たさねばならない他の基準は、大多数の画素ルミナンス(グレースケール)の値が、受け入れ得る範囲の値であるということである。MBをデコード(伸張)すれば256(16×16)個の画素値が得られる。例えば、25%より少なければ画素ルミナンス値は25から230までの範囲外であってよいと定めることができる。この場合には、画素値のうちの64個以上が25より小さいか又は230より大きいならば、当該MBは分類の対象とならず、したがって候補MBとはなり得ない。画素値のパーセンテージと、受け入れ得る画素ルミナンス値の範囲とは、アルゴリズムのパラメータである。ただし、必要に応じて調整されるものであり、例示の値(25%、25、230)に限定されない。本例で採用した特定の値は、実験及び技術者の判断により決定されたものである。この基準のきっかけは、明るすぎたり暗すぎたりする画素が、しばしばMPEG再エンコーディング(後述)により、又は例えば家庭用VCRによるアナログ記録によりクリップ(それぞれ増加又は減少)されることにある。ただし、画素値の範囲が減縮されるので、このクリッピング効果がRM情報の再生又は抽出の能力に悪影響を及ぼすことがある。
【0133】
MBが満たさねばならない更に他の基準は、前フレーム中の同じ位置のMBがMHとなるように選択されていないことである。この基準により、MHは隣接フレーム中の同じ位置に配置されない。同じ位置に出現するRMは、視認されやすい(気付かれやすい)。
【0134】
平滑か非平滑(テクスチャあり)かというMBの分類は、まずMBを構成する4個のルミナンスブロックを分類することから始まる。これら4個の分類結果は、MBの分類を決定付けるように、評価されかつ結合される。ここで、あるDCTブロックの水平、垂直及び対角線方向のエネルギをそれぞれEh、Ev及びEdで表すこととする。Ehの値は、次のテンプレート中の「h」で示されたDCT係数の2乗和により計算される。
【0135】
.dhhhh..
ddhhhh..
vvdd....
vvdd....
vv......
........
........
........
同様に、Ev及びEdの値は、それぞれ「v」及び「d」のマークが付けられた要素の2乗和により計算される。このテンプレートの各位置は、ルミナンスブロックを構成するDCT係数の8×8行列の要素を表している。このテンプレート中の左上のDCT係数は、DC項である。本ブロックの水平、垂直及び対角線方向のエネルギの平均をEaとする。これは、Eh、Ed及びEvの平均である。そのうえで、ブロックが次の規則に従って分類される。
【0136】
もし(Ea<T1)ならば、
当該ブロックは平滑ブロックである:
さもなければ、
当該ブロックは「テクスチャあり」のブロックである。
【0137】
Eaは、ブロックが平滑か非平滑かの分類に用いられる。しきい値T1は、一連の実験により、及び技術者の判断により決定し得る。その値は固定である。しかしながら、このしきい値(T1)は、ビデオ又はその一部の特性に基づいて自動的に決定することも可能である。そして、その値は時間の経過とともに変動してもよい。例えば、1フレーム毎に異なるT1の値を用いる。
【0138】
MBを構成する4個のルミナンスブロックの分類から、次の規則に従って当該MBが分類される。
【0139】
もし(当該MB中の3又は4ブロックが「テクスチャあり」)ならば、
当該MBは「テクスチャあり」のMBである:
さもなければ、
当該MBは平滑MBである。
【0140】
上記分類ルーチンの疑似コードを図20に示す。この分類ルーチンによってコールされる初期化関数の疑似コードを図21に示す。はじめに、全てのMBが分類に利用し得るものと仮定する。そして、前Bフレームで選択されたMHの位置が、現フレームでは利用不能としてマークされる。これにより、隣接Bフレームの同じ位置にMHが出現することを防止できる。MH選択の他の制約は、MHがフレームの境界にあってはならないということである。これらのMBも利用不能としてマークされる。分類ルーチンは、フレーム中の予め特定された部分のみを処理する。つまり、調べられるMBの数は最大限が規定されている。サーチされるべきBフレームのパーセンテージを制限することにより、候補MHとして取り上げられるMHのパーセンテージが低減される。したがって、隣接フレームの同じ位置に2個のMHが出現する確率が低減される。なぜなら、サーチされる領域はランダムに決定され、かつフレーム毎に異なるという傾向があるからである。所要数のMHを見い出せなかった場合には、アルゴリズムが終了する。
【0141】
初期化ルーチンがコールされた後、与えられたBフレーム中のMHのサーチが開始する。アルゴリズムは、フレーム中のMHがなくなるか、又は所要数のMHが見い出された場合に終了する。MBのロウ及びカラムは、ランダムに選択されたMBAから計算される。MBは、たいていのルミナンス画素値が規定範囲内でないなら、選択されることはない。そして、MBが分類される。MB分類関数(Classify_MacroBlock)の疑似コードを次に示す。MBが「テクスチャあり」に分類された場合には、当該MBが取り上げられるようにマークされる。ロウ上のMHの数が1ロウあたりの最大許容数に等しいならば、当該ロウからはもはやMHを取り上げない。この制約は、再エンコーディングにとって必要である。MBが平滑であると分類された場合には、これが用いられるこてはない。
【0142】
図22にはMB分類の疑似コードが示されている。8×8ブロックのDCTが計算された後、DCT行列中の高エネルギ成分が水平、垂直及び対角線方向のエネルギEv、Eh及びEdとして計算される。これら3値の平均、すなわちEaが計算される。「テクスチャあり」との分類の8×8ブロックの数が数えられる。もし3個又は4個のブロックが「テクスチャあり」ならば当該MBは「テクスチャあり」に分類され、さもなければ分類は平滑となる。
【0143】
5.3 メッセージホールの再配置
MH選択の第2の(かつ最終の)フェーズは、再配置である。再配置の目的は、フレーム間でMHをできるだけ均一に配置することにある。いくつかのフレームの中にMHの塊ができることがないように、各フレーム中に程良い数のMHを配置することが好ましい。この配置は、DVDプレーヤによるリアルタイムRM挿入の間のほぼ一定の計算上の負担となる。また、いくつかのフレーム中に多数のMHが配置されると、これらのフレームの削除によって、かなりの量の情報が除去される結果となる。再配置では、過剰の候補を有するBフレームからいくつかの候補MHを捨てることにより、1つのBフレームあたりのMHの数がほぼ一定に保たれる。
【0144】
再配置アルゴリズムは、ビデオを隣接グループ又は隣接セグメントの単位で処理する。これをセクションと呼んでいる。ビデオのグルーピングに対応したセクションは、そのままDVDの中に格納される。セクションは、ビデオのほとんど任意のポイントで開始及び終了することができる。この状況が図23に示されている。この例では、セクションがあるフレーム中のある特定のMB(左側の小さい黒正方形)から始まっている。そして、当該フレームの残りに続き、いくつかのフレーム全部と、他のフレームの一部(グレー表示)とを経て、最終フレーム中のあるMB(右側の小さい黒正方形)で終わっている。セクションは、任意のタイプのフレーム(I、P又はB)で開始したり終了したりすることができる。
【0145】
本例では、DVD上の制限された容量の補助記憶が、RMシステムに割り当てられている。この制限は、1セクションあたり2Kバイトである。この制限のために、最小の補助記憶容量を占めるMHの方が、大きい補助記憶容量を占めるMHより好ましい。この意味から、MHのサイズは、MHに関連する補助記憶のサイズ(ビット単位)であると考えられる。再配置は、大きいサイズのMHより前に小さいサイズのMHを処理する傾向がある。
【0146】
再配置の基本コンセプトは複雑なものではない。セクション中の各Bフレームに対して、そのフレームについては最終の(捨てられない)MHとなるように、1組の候補MHの中から最小のMHを選択する。候補MHからこれら最終MHを、再び選択されることがないように除去する。補助記憶の容量(例えば2Kバイト)がなくなるまで、又は候補MHがなくなるまで、この処理を続ける。補助記憶がなくなってしまった場合には、残りの候補MHは捨てられる(用いられない)。この処理は、少なくともあるセクションにおいて、1つのBフレームあたりの程良い数の最終MHを与える傾向がある。もちろん、あるBフレームについて候補MHが少ししかない場合には、例えば当該フレームが基本的に平滑MBからなる場合がそうであって、Bフレームが候補MHを全く持たないこともあり得るので、このようなケースでは最終MHを少ししか又は全く持たない。
【0147】
実用上は、上記基本コンセプトにいくつかの改良が必要である。1つの改良は、補助記憶がなくなった場合のMHの配置に関するものである。ここで、セクションに5つのBフレーム(「a」から「e」まで)があるものとし、第3番目のBフレーム(「c」)の後に補助記憶がなくなったものとする。各Bフレーム中のMHの数は、
Bフレーム a b c d e
MHの数 7 7 7 6 6
のようになる。
【0148】
最初の3個のBフレームの中には7個のMHがあるが、最後の2個のBフレームの中には6個のMHしかない。好ましい配置は、
Bフレーム a b c d e
MHの数 7 6 7 6 7
である。
【0149】
(「c」の後に)補助記憶がなくなったとき、Bフレーム「a」が最後に処理された状態までアルゴリズムが戻る。この時点では、各Bフレームに6個のMHが割り当てられる。候補MHは、好ましい配置が得られるように、フレーム「a」、「c」及び「e」の各々から選択される。あるフレームが利用可能な候補MHをもはや持たないならば、利用可能なMHが発見されるまで両方向に動くこととなる。
【0150】
基本コンセプトに対するもう一つの改良は、セクションの始まりと終わりに発生し得る部分フレームに関するものである(図23参照)。セクションの最初もしくは最後のフレームがBフレームの場合、部分Bフレームを生成する必要があるかも知れない。この場合、部分Bフレーム用に選択されるMH数はセクション内に存在するBフレームの比率に従って割り当てられる。例えば、Bフレーム領域の40%がセクション内にある場合、部分フレーム用に選択されるMH数は全フレーム用に選択される数の40%とすべきである。
【0151】
アルゴリズムの擬似コードを図24に示す。全ての変数をinitialize()ファンクションで初期化する。initialize()ファンクションを図25に示す。セクションの始まりがIフレームもしくはPフレームにある場合、IフレームまたはPフレームに続く最初のBフレームを最初のフレームとして選択し、そのフレームの最初のMBをセクションの開始MBとして採用する。同様に、セクションがIフレームまたはPフレームで終わっていれば、そのセクションの最後のBフレームがセクションの最後のフレームになる。
【0152】
セクションがBフレームの中央にある場合、フレームの一部を前のセクションの前の呼出しで処理する。次のセクションのために、この情報を格納して前のセクションで選択されたMHが再度選択されないようにする必要がある。DVD境界線に沿うMHは、再配置に使用されない。
【0153】
初期化の後に(図24参照)、再配置が始まる。最初のwhileループは、利用可能なMHがなくなるか、又は選択されたMHのサイズが1セクションあたりの最大サイズ(例えば2Kバイト)を超えた場合に終了する。各フレームから探し当てられた最小サイズのMHは、最終MHとして選択される。
【0154】
最初の再配置がなされた後、最後の繰り返し中で選択されたMHが再度の再配置にかけられる。最後の繰り返し中で選択されたMHは除去される。更に均一な配置の中から他のMHが選択される。全てのMHが選択された後、これらがアルゴリズムから出力される。
【0155】
6.MPEG再符号化
MPEG再符号化は、RMの挿入後、一以上のMHを備えた一列内のMBのビット総数を、RM挿入前の総数と等しく維持することを目的とする。MHの余分なビット数は、より少数のビットとすることで、その列内のMBに充填される。原符号化と再符号化のビット数をそれぞれその列用にOrigNumBItsとRowBitCntと定義し、その差を次のようなBitsDiffと定義する。
【0156】
BitsDiff=OrigNumBits-RowBitCnt (6.1)
本発明に対応する符号化のためにより少ないビット数を用いるMBを作成するアプローチは、要素mquantを尺度化しながら量子化を減少することである。一般に、MBのMquantをより高くすればするほど、ビット数の利用はより減少するが、より大きな歪みが生じる。このため、一般には、MBのMquant値の変化が正確にOrigNumBits以下かそれと同等の(つまりBitsDiff<=0)Rowbitsを作成する。ビットの詰め込みは両者をその後等しくするために利用される。計算の複雑さは増すが、MBの幾つかのDCT係数の歪みをより調整することにより、ビットを詰め込むためのわずかなビットが得られる。
【0157】
各MBのMquantの増加量は分からないので、反復捜索は再符号化が必要となる。この反復捜索は、BitsDiffがゼロ以下の状態ならば、終了する。そして繰り返し数はiterMaxと定義された許可数に到達するか、もとのmquant値の増加は最大許容歪み値MquantIncMaxを越える。後者の二つのケースでは、その列内の全てのMHは除かれ、RMメッセージビットを送信するために、その列内のRBは全く使われない。MB内で歪みを統一的に拡散するために、MBのmquant値は同等の量だけ増加される。再復号化の過程をスピードアップするために、全ての必要な符号化情報は、一以上のMHを含む列群のためのMPEGビット列を復号することで抽出される。この情報は動きベクトル、符号化ブロックパターン、原mquant値、動きとDCTタイプ、MBが飛ばされているかいないかの決定を含む。もし列内にMHが全く存在しないなら、その列の再符号化過程は飛ばされ、原MPEGビット列が使われる。
【0158】
【表7】
【0159】
各繰り返しが読み込まれている間、再符号化状態の決定を助けるために、そのプログラムは、表7で定義された多様なiterStatusを使用し最新化する。iterStatusであるInc delt RowとInc_Mquant_Rowは、各選択されたデルタか1により列内の全てのMBのmquant値を増加させるために、そのプログラムを指示するよう使われる。同様にして、iterStatusであるDec_delt_RowとDec_Mquant_Rowは、各選択されたデルタか1により列内の全てのMBのmquant値を減少させるためにそのプログラムを指示するよう使われる。
【0160】
6.1 MPEG再符号化技術
本発明における第1の実施形態の再符号化によると、一のMBが選択され、そのmquant値は一つだけ増加し、全体の列は再符号化される。もし上記した最終条件が満たされるなら、繰り返し過程は止まる。さもないと、もう一つのMBが選択され繰り返し過程は継続する。mquant値は各繰り返しに対して維持され、前の繰り返しに残ることはないであろうことに注意しなさい。MPEG符号化にとり、前のMBのmquant値と異なるだけの場合、一のMBのそれは符号化され送信されので、ある列の選ばれたMBは連続して使われる。その列の最後のMBが届いた時、最初のMBは次の選択のために再び選ばれるだろう。図26はこの繰り返し過程の典型的な結果を示す。最初の(j+1)のMBのmquant値が(d+1)の値だけ増加され、MBの最後のその値がdの値だけ増加され、そこでは、MB_widthはある列内のMBの総数となる。
【0161】
このアプローチのアルゴリズムが図27に表わしてある。6行目のであるように、現フレームの各MH列にとり、(一回で一つの)列内で選択されたMBのmquant値は引き続き1だけ増加される。各再符号化が行なわれた後、BitsDiffの条件がゼロ以下を満足してないなら、その列の次のMBが21行目であるように選択される。このアプローチの利点は、実行は容易だが、多数の繰り返しが必要となる。
【0162】
第2に実施形態では、表7における多様なiterStatusはInc_Mquant_Rowとなるように最初にセットされる。各繰り返しのために、その列内の全てのMBのMquant値はデルタにより増加され、全ての列は再符号化される。デルタが1であると仮定しよう。このプロセスはBitsDiffがゼロ以下になるまで続く。そして、iterStatusはInc_Mquant_MBにセットされ、そのmquant値は、そのデルタを減じることにより前の繰り返しのInc_Mquant_MBに再セットされる。次に、その列の最初のMBから始め、第1のアプローチはBitsDiffがゼロ以下になるまで使われる。iterStatusは、その後、Final_iterationと等しくセットされ、最後の繰り返しは、映像とMBのビット列を送信するための繰り返しループを通して行なわれる。
【0163】
本発明の側面である第2の実施形態を説明するアルゴリズムが図28に与えられている。多様なiterStatusは、3行目にあるようにInc_Mquant_Rowと等しく最初にセットされる。各読み込みに対して、列内の全てのMBのmquant値は、その列を符号化するのに必要なビット数が標的となるビットレート以下になるまで、7行目にあるようにステップサイズのデルタだけその後増加される。しかしながら、再符号化された列のサイズを可能な限り元の列のサイズに近づけるために、その列内のMBの全ての本mquant値は、25行目にあるようにデルタにより減少され、そして、iterStatusは26行目にあるようにInc_Mquant_MBと等しくセットされる。次に、27行目にあるようにその列内の最初のMBから始め、各MBのmquant値は、その列を符号化するのに必要なビット数が標的となるビットレート以下となるまで、最初の実施形態でのように一度につき一つ変化される。この点で、iterStatusは、Final_Iterationと等しくセットされ、最後の読み込みが映像とMBのビット列データを送信するための繰り返しループを通して行なわれる。
【0164】
第2の実施形態はより多くのプロセスが必要となるが、第1のアプローチと比べた繰り返しの節約はかなりである。Numlter(i)をi番目のアプローチのための繰り返し数と定義する。第1の実施形態では、次の式で表わされる。
【0165】
Numlter(1)=1+d×MB_width+(j+1)+1
(6.2)
Numlter(2)=1+(d+1)+(j+1)+1
(6.3)
両実施形態においては、最初の繰り返しは、MBの原mquant値を用いた最初の読み込みのためであり、最後の繰り返しは、映像とMBのビット列データを送信するための最後の読み込みのためである。このため、第1のアプローチを越える第2のアプローチを用いた繰り返しの節約は、次の式
Numlter(1)-Numlter(2)=d×(MB_width-1)-1 (6.4)
で与えられる。
【0166】
720×480画素のフレームにとり、一列に45MBが必要となる。典型的なMPEGビデオでは、d=4である。この場合、175回の繰り返しを節約できる。
【0167】
本発明によるMPEG再符号化のための第3の実施形態は、第2の実施形態を越え洗練されたものであり、そこでは図26におけるj値が繰り返しの前後の間で列内の全てのMBのビット数の相違を比較することで計算される。その後、列内の最初のMBから始める代わりに(図26のように)列内のMBのmquant値を用いることにより、その再符号化は第1の実施形態と切り替わる。j値の概算が一般に現実の値と非常に近いので、BisDiffの状態をゼロ以下に到達させるために繰り返し数を増やす数は、一回か二回と非常に少ない。二番目のアプローチを越える三番目のアプローチの繰り返し数の節約はj値に基づくことになる。jは0と(MB_width-1)の間のいかなる値をも取りうるので、平均的な節約数は、MB_width/2となる。再び720×480画素のフレームにとっては、一列内に45MBが存在する。それは、約22の繰り返しが節約されることを意味する。
Biをk番目の繰り返しのi番目の符号化のビット数と定義する。全てのMB上のBi(k)の合計はk番目の繰り返しのRowBitCntと等しい。図26におけるmquantの値を増加するために、(d+2)の繰り返しの後、BisDiffがゼロ以下の状態になることを、その図は示している。PrevBitCntを前のRowBitCntと定義する、つまり、(d+1)の繰り返しのRowBitと定義する。その後、jは図29のように決定される。
【0168】
第3の実施形態を説明するアルゴリズムが図30に表わしてある。このアルゴリズムは第2番目のアルゴリズムと似ており、主要な相違は26〜28行目にあるとうりで、j値前述の記載で計算される。第2の実施形態でのように最初のMBの代わりにj番目のMBからのデルタにより、MBのmquant値は軽減される。その後、j番目のMBは、mquant値を増加させるために、次のMBに選ばれる。
【0169】
6.2 再符号化時における不適当なメーセージホールの検出と除去
本発明の他の態様では、再符号化処理の際に、メッセージビットの挿入のために用いるべきでない“不適切な”MHも、決定され、およびまたは、除去される。MHは、以下の4つの理由のために、検出され、およびまたは、除去される。
【0170】
DVDセクタ境界:
もし、ある列のメッセージホールが再符号化後にDVDセクタ境界に存在するとすると、そのMHは検出され、この情報は第2の処理GenRmgPckに報告される。元のMHは、2つに分かれたMHとして扱われるが、フラグは、その2つのMHが同一のメッセージビットに対応することを示すものとして用いられる。これは、DVDディスクでは、MPEGビデオは、各2KバイトのDVDセクタに分割されるからである。このため、DVDセクタ境界に存在するMHは、2つの異なるDVDセクタに分かれて配置されるので、RM挿入のためのハードウェアのインプリメーションが、さらに複雑になり、コストが高くなる。
【0171】
再符号化エラー:
もし、ある列の再符号化の際に、妥当な回数の試行の後に、MHの付加ビットをその列内の他のMBから補償できないことが分かったら、その列にはMHは挿入されない。さもなければ、再符号化の前に存在した問題、例えばMPEG符号化におけるバッファのアンダーフローやオーバーフローが生じるかもしれない。
【0172】
弱いRMキャリア:
もし、あるMHについての、再符号化後におけるRMキャリアの0と1のビデオデータ間の差が極めて小さいときは、このMHは用いられない。この条件の目的は、RMメッセージビットを回復するための、RMキャリアからの妥当な“信号”強度があることを保証することにある。
【0173】
スキップされたMH:
再符号化の後、もしあるMHがスキップされたMHとして決定されたときは、そのMHは除去される。これは、スキップされたMHからは、RMキャリアに付加されたメッセージ情報は回復できないからである。
【0174】
6.3 要約:MH候補、RMキャリアおよび再符号化
図31はすでに述べたような、メッセージホール候補とランニングマーキングキャリアを生成するとともに再符号化を行う処理を要約した図である。これらの処理を行う他の方法を選択するために、表8に、4種類の異なる処理モードが定義されている。
【0175】
【表8】
【0176】
上述したように、入力MPEGビットストリームMpegInがMPEG復号器によって復号され、再符号化に必要な全ての符号化情報が得られる。あるフレームについてMHを生成するために、RMキャリアを生成するために用いられるMBAや他のパラメータが、入力ファイルMHinから読み込まれるか、または上述したようなクラス化によって生成される。このファイルは、MHをランダムに一列一列生成した出力ファイル、再符号化後のMHファイル、またはユーザによって編集されたファイルなどである。もし、MHをクラス化によって生成する手法がとられたときは、MHを生成するのに必要なフレーム全体が再構築され、そのフレームについてクラス化が実行される。いくつかのMBに対してRMキャリアを生成するために、DCT係数の代わりにビデオデータを直接変更する手法がとられたときは、これらのMBのビデオデータは再構築される。生成されたMHは、オペレータによって、あるいは再符号化処理を実行することによって、除去される。MHのサイズ、位置および付加ビットストリームは、復号化されるMHのビデオデータとともに、再符号化処理の際に生成され、出力FIFOを用いる再配分プログラムに送られる。MHの再配分処理は、MHの平均個数を、要求されるMHレートに可能な限り近づけるために、行われる。キャリア0とRMGパックを含む最終的なMPEGビットストリームは、第2のプロセスGenRmgPckによって生成される。RMGパックは、MHのサイズ、位置オフセットおよびキャリア1ビットストリームを格納する。
【0177】
図32はMH生成に用いられるGenRmプログラムのアルゴリズムを示している。このプログラムは、まず、ライン1に示すように、入力パラメータファイルからMH再符号化モードを読み出す。このプログラムによって、再符号化モードの値に応じて選択される各MH処理モードが、表8に示されている。それから、ライン4に示すように、画像入力ファイルからの各フレームは復号化され、この復号化情報は記憶される。ライン7に示すように、最初の実行時、MH情報を記憶するためにメモリーが割り付けられる。プログラムは、毎回、シーケンスの最後に達したか否かをチェックする。もしそうであれば、ライン10に示すように、プログラムは再配分処理を呼び出して、残りの処理されたフレームMHを均等に配分する。もし、現フレームがBフレームであり、MHをクラス化けによって生成する手法がとられたときは、ライン16に示すように、プログラムはクラス化プログラムを呼び出して、フレームにMHを生成する。次に、ライン17に示すように、再符号化機能が呼び出されて、MHを含むそのフレーム内の列を再符号化する。再符号化機能は、そのフレームのMHのビデオおよびMPEG情報を出力FIFOに書き込む。セッション内の全てのフレームが処理されたとき、ライン20に示すように、GenRmプログラムは再配分処理を呼び出して、このセッションで処理された全てのフレームにおいてMHを再配分する。
【0178】
再符号化機能は、上述したMPEG再符号化の第3の実施形態を利用する。再符号化処理の反復回数を削減するために、再符号化プログラムは、また、再符号化の際の反復処理で定義された反復状態Inc_delta_Row を選択することによって、より大きなデルタ(1よりも大きい)の利用を選択することも可能である。再符号化機能は、その列の全てのMBのmquant値を増加させるために、反復状態Inc_delta_Row またはInc_Mquant_Rowを、選択値デルタか1かによって、それぞれ選択することができる。また、再符号化処理をスピードアップするために、前の列のmquantインクリメントdを、次の列などののmquantインクリメントの初期見積もりとして、用いる。この場合、前の値dが大きすぎるときは、再符号化プログラムは、反復処理で定義された反復状態Dec_delta_Row を選択することができる。反復状態Dec_delta_Row およびDec_Mquant_Rowは、その列の全てのMBのmquant値を減らすために、選択値デルタか1かによって、それぞれ選択することができる。
【0179】
再符号化プログラムはまた、再符号化される現フレームについて、その前のイントラまたはノンイントラ量子化マトリックスが変えられるか否かを検出する。この情報は、その後、現フレームの全MHについてMHキャリアを生成する間に、対応するDCT係数に付加されるシグマ値(ノイズ)を、スケールするために用いられる。プログラムはチェックし、MHを含まない列の再符号化をスキップする。再符号化される列の反復状態は、最初は、Inc_delta_Row に初期化される。その列のMBの元のmquant値は、最初は、前に再符号化された列のmquantインクリメントdによってインクリメントされる。反復ループの各繰り返しの際に、プログラムは、その列のMBのmquant値を調整することによって、MHの補償を試行する。MBのmquant値の変更に用いられる正確な手法は、反復ループの各繰り返しの際の反復状態の値に依存する。
【0180】
もし、予め設定した最大回数の繰り返し処理の後にも、目標ビットレートが達成できない場合は、その列の全MHは除去され、元の列は置換されない。また、もし、ある列に必要なmquantインクリメントdが、予め設定した許容最大歪み値よりも大きくなったときは、その列の全てのMHが除去される。MHに対応するMBに対して、プログラムは、再符号化ループの最初の繰り返しの際に一度だけ、MHブロックをRMとともに、RMなしで生成し記憶する。MHに対応するMBは、それから、特定のメッセージホール置換数(例えば3:オリジナル、キャリア0およびキャリア1)と等しい回数だけ、再符号化される。このそれぞれ再符号化において、対応する符号化ビットストリームは、異なる列バッファに、MH置換子のバイト列とともに記憶される。
【0181】
各MHのキャリア0および1についてのMPEGビットストリームデータは、プログラムにおいて、入力パラメータファイルからの各キャリアのそれぞれの値を読むことによって、選択(制御)される。これらの値は、キャリア0および1についてのMH置換指標値である。このMH置換指標値によって、キャリアのビットストリームデータは、この値に一致する列バッファから選択される。もし、MHのキャリア1と0のビデオデータ間の差が零であるときは、プログラムはこのMHを無効としてマークする。キャリア0として選択された(列バッファの1つから)ビットストリームデータは、常に、各MHに対応するMB内に挿入される。このように、GenRmプログラムによって生成された出力VOBは、各MHについてキャリア0ビットストリームデータを含む。
【0182】
再符号化処理をスピードアップするために、その列のMPEGビットストリームは、最後の繰り返しの際にのみ、ローバッファ(Row Buffer)に書き込まれる。それ以外は、プログラムは、各繰り返しにおいて、その列を再符号化するために必要なビット数を計数するのみである。また、その列のMBは、最後の繰り返しの際に再び量子化されない、というのはmquant値は変わらないから。その列のMPEGにおいて、元のサイズ、オフセット、MPEGビットストリームおよびビデオデータは、各MHのキャリア0および1とともに、最後の繰り返しの際にのみ、出力FIFOに書き込まれる。各MHのキャリア1のビットストリームデータは、MHProcMode[2]の値が“1”のときにのみ、第2の処理GenRmgPckによってファイルMHBitOutに書き込まれる。このファイルは、この後に、メッセージビット変調に用いられる。もし、MHProcMode[3]の値が“1”のときは、第2の処理GenRmgPckがまた、その元の値を、各MHのキャリア0および1の両方のビデオデータとともにMHVideoOutに書きこむ。MHVideoOutからの情報は、その後に、元のビデオの各MHに挿入された各メッセージビットを回復するために用いられる。プログラムは、その終わりに、ビットスタッフィングを実行し、その列の元のサイズと同一サイズを確保する。最後に、プログラムは、再分配を行う現フレームの全ての更新されたMHについて、MH情報(seed、MHAなど)を記憶する。
【0183】
本発明の他の態様によると、再符号化処理をさらに高速化するために、ランニングマークのMPEG2再符号化を、他のCPUおよびまたは他の装置によって、並行して実行してもかまわない。生成された全てのRMを集めて、再生ユニットの動作をシミュレートするための後処理が必要となる。このように、本発明によると、プログラムGenRmpPckが、ランニングマークを生成する2段階処理の第2の処理として用いられる。RMが再符号化MPEG2データの形式で生成された後は、プログラムGenRmpPckは、そのRMをDVD仕様のVOBに挿入し、ランニングマークVOBを生成する。ランニングマークのキャリア0はビデオに挿入され、キャリア1はRMG_PCK セクタに挿入される。この第2の処理は、また、再生ユニットのスループットがリアルタイムでRMを挿入するのに十分であることをチェックする。また、RMを含む新たなVOBが生成されたとき、プログラムGenRmgPckによって、挿入されたRMの個数を映画の長さに比して評価するチェックがなされる。メッセージのコピーが、プレーヤから送られたメッセージが確実に回復できるように、いくつか補完されるかもしれない。
【0184】
プログラムGenRmgPckは、実行時にアクティブとなる2個の入力モジュールを有する。第1のモジュールは、入力VOBから、セクタのストリームを抽出し特定する。第2のモジュールは、GenRmによって生成されたデータパケットを様々なファイルに読み出して、RMがMPEGでどのように符号化されるかを理解する。メインモジュールは、ランニングマークキャリア0および1を、ビデオパケットとRMパケット(RMG_PCK )に、それぞれ挿入する。その出力は、GenRmから受けたデータかれ生成された回復ファイルとVOBからなり、RMデータをサポートするために調整された後、一度に1セクタずつ書き込まれる。MPEG2ランニングマークを準備するためにGenRmの複数のコピーを用いるとき、プログラムGenRmgPckは、VOBを完全に処理するために、全てのセグメントを集めてまとめる。もし、ただ1つの処理がRMを生成したとすると、mhdataと名付けられた単一ファイルに全てのデータが格納され、GenRmgPckは必要となる全ての情報をこのファイルから得る。もし、1個よりも多いmhdataファイルが生成されたとすると、GenRmgPckはRMを、ファイルmhdata.000、mhdata.001、mhdata.002など最終ファイル(常にmhdata.999と名付けられる)までからロードする。プログラムはmhdataファイルを読み、最初のRMデータを探す。そして、一致するセクタか空きRMG_PCKを見つけるまで、セクタを出力にコピーする。セクタ一致があると、MPEG2データは置換され、キャリアがRMG_PCKに付加され(RMG_DATAエントリが付加され)、新たなRMがmhdataファイルから読み出される。RMG_PCKがあると、メモリに保持されRMG_DATAフィールドに順次詰められた前のRMG_PCKは、出力ファイルにおいてシーク(Seek())を実行することによって更新され、現RMG_PCKは次のセクションのためにクリアされる。
【0185】
2つの異なるセクタを覆う1個のRMが見つかったとき、GenRmgPckはこのRMを2個のRMに分け、2個のRMG_DATAフィールドを生成する。そのRMの2つの部分は両方とも、RMG_DATAのbcincrモードフィールドを用いることによって同一のメッセージビットを示している。セクタが読まれるたびに、タイミングチェックがなされ、再生ユニットのCPUによるシミュレーションが、データオーバーフローを避けるためにセクタレベルで実行される。各セクタは、そのタイプ(RMG_PCK、ビデオ、その他)やその状態に基づいて、所定の最小処理時間を必要とする。空きRMG_PCKが必要とする時間は、満たされたRMG_PCKよりも少なく、セクタに挿入された各RAMは、実行時間中にデータ置換のためにより多くのCPU時間を必要とする。もし、RMの挿入がプロセッサのオーバーフローを引き起こしたときは、そのRMは除去される。本発明によると、GenRmはまた、元のビデオMBをRMキャリア0および1とともに送る。RMが落ちたとき、元のビデオMBはMPEG2ビデオエレメンタリストリームに挿入され、キャリア0および1は無視される。各RMはメッセージビットと関連しているので、この場合、メッセージビットカウンタは増加しない。
【0186】
さらに、本発明によると、マルチプロセッサコンピュータの処理を高速化するために、MPEG2ビデオストリームを複数の部分に分割するのが好ましい。この場合、特別な配慮が必要になる。というのは、MPEG2符号化は参照フレーム符号化に基づくものだからである。このため、ビデオを適切に符号化するために、少なくとも2つの参照フレームがロードされなければならない。プログラムGenRmおよびGenRmgPckは、DVD VOB内では、ナビゲーションセクタ(NV_PCK)がイントラ符号化フレーム(I)の直前にあるという事実を利用している。図34に示すように、原ストリームは複数のセグメントに分けられる。IはIフレームの前のナビゲーションパックを表し、PおよびBは予測フレーム(第2の種類の参照フレーム)および双方向予測フレームを表している。ハッチの入ったセルは、各セグメントの、GenRmおよびGenRmgPckがRMを挿入している部分を表している。
【0187】
図34から分かるように、第1のセグメント以外の全てのセグメントでは、第2のIフレームの前のフレームは、RMを挿入することなく復号化される。なぜなら、これらのフレームはその前のセグメントですでに挿入されているからである。しかしながら、RMが挿入されるとき2つの参照フレームが確実にロードされるように、これらのフレームは復号化されなければならない。
【0188】
6.4 多重視野角
本発明の他の態様によると、プログラムGenRmおよびGenRmgPckは多重視野角をサポートすることができる。多重角を用いると、再生時に、その映画の部分(セグメント)について、複数の利用可能な角度セグメントから、いずれか1つの視野角(ビデオ)セグメントが再生可能となる。しかしながら、多重視野角をサポートするために、それぞれの角度セグメントのRMの個数は、一定に保たなければならない。これは、各角度セグメントには同一のメッセージビットが挿入されなければならないからである。また、RM(各角度セグメント)は必ずしも同一の位置にある必要はないが、総数は、メッセージ回復が可能なように、同一でなければならない。RMの個数が最小の角度セグメントは、他の角度セグメントのために用いるサイズを与える。RMの個数がより多い角度セグメントについては、メッセージ回復能力を増すために、RMのいずれかを落とすか、重複させる(bcincrモードを用いて)。
【0189】
図33は3種類の可能な角度セグメントを示している。ここでは、元のビデオストリームは、処理のために、セグメントN1,N2およびN3に分割されている。各RMG_PCKが適用される範囲は、RMがセグメント境界と交叉しないように、調整される。このため、様々な角度セグメントに先行する最終パック(RMG_PCK)について、全てのRMは角度セグメントの前にある(セグメントN2の先頭)。同様に、各角度セグメントの最終RMG_PCKは、セグメントN2の最後までにのみMHを含む。このため、図に示すように、N2の各角度セグメントでは、RMは最初は存在し得ない。というのは、最初の空きRMG_PCKが見つかるまでは、RMを記憶する場所がないからである。同様に、セグメントN3の先頭のビデオには、セグメントN3に最初のRMG_PCKが見つかるまでは、RMは存在し得ない。最後に、プログラムGenRmgPckは全てのビデオセグメントを集めてまとめ、上述したように、VOBを完全に処理する。
【0190】
6.5 ルックアップテーブルを用いた高速量子化
再符号化の一部として、MBの列の各MBのDCT係数を量子化する。量子化の効果的な処理手法として、MBのDCT係数の全てのあり得る値について量子化を計算し、その結果をルックアップテーブル(LUT)に格納するというものがある。MBの量子化に必要な計算処理は、計算コストがこれよりもはるかに少ないテーブルルックアップ処理に置き換えられる。
【0191】
MBを量子化するために、以下の式が用いられる。
【0192】
y=((32・x+d/2)/d)/(2・mquant)
ここで、xは8×8ブロックの各画素のDCT係数値、dは画素の量子化行列係数、そしてmquantは、8×8ブロックをどの程度粗くまたは精密に量子化するかを定める量子化スケール係数である。この式は、MBの各8×8ブロックについて、輝度成分および色差成分の両方について計算される。ただし、量子化行列は、輝度値と色差値とで異なる。8×8ブロックの64個のx値のそれぞれについて、y値が計算される。再符号化でこの式が演算される回数は多いので、この式の演算を減らすことによって、実質的な計算量を削減することができる。
【0193】
上式のy値は、幅広い値をとり得る3個の整数値変数(x,dおよびmquant)から求められるため、この式を3次元(3インデックス)LUTにそのままインプリすると、非現実的なほど大容量の記憶媒体が必要になる。このような記憶容量の要求を軽減するために、上式を2つの部分に分けて、2個のLUTにインプリすることができる。その2つの式は、次のようになる。
【0194】
y1=(32・x+d/2)/d
y2=y1/(2・mquant)
ここで、y2は上述のyと同一である。2次元(2インデックス)LUTが、この2つの式をそれぞれインプリメントするために用いられる。最初の式に係るLUTすなわちLUT1は、xおよびdをインデックスとする2次元(行列)テーブルである。第2の式に係るLUTすなわちLUT2は、LUT1から検索した値と、mquantをインデックスとして用いる。LUT2はy2(そしてy)のとり得る値の全てを格納する。
【0195】
LUT1について考える。xの値は−2048から2047までである。もし、例えばdが1のときは、y1の値は32×(−2048)から32×2047まで(−65536から65504まで)の範囲となる。y1の範囲が大きく、−65536と65504の間の中間値の多くは生じ得ないので、y1の値をLUT2のインデックスとして直接利用することは(記憶容量の点で)効率的でない。この理由から、y1の値をLUT1に格納する代わりに、他の種類の整数値すなわちyindex1が格納される。このyindex1は、0からある最大値までの連続した整数値となる。y1の各値について、唯一のyindex1が存在する。言い換えると、yindex1とy1とは、1対1の対応関係がある。yindex1値は、LUT2に適切な(効率的な)インデックスを与える。
【0196】
要約すると、量子化式を1組の2次元LUTにインプリメンテーションすることは、次のように表される。
【0197】
yindex1=LUT1[x,d]
y2=LUT2[yindex,mquant]
ここで、LUT1[x,d]は、xおよびdをインデックスとして用いてLUT1から検索した値を表す。
【0198】
結論
述べられたのは、圧縮されたディジタル信号ストリーム、例えばMPEG標準でエンコードされたビデオストリームの、好ましくは目立たないようにするために画像の加工された部分に配置され、また、フレームごとに位置を変えるピクセルブロックまたはマクロブロックの形式の中にマークを含むための変換のための方法論である。マークのロケーションは、オリジナルのビデオ(または他の情報)とともに参照媒体に保存される“メッセージホール”によって定義される。マークは、DVDやテスト媒体などのテスト下の媒体中のメッセージホールに対応する内容を比較することによりデコードされる。マークは、テスト下の媒体が複製されたソースを示す情報、オリジナル媒体や、複製が行われたプレイバックユニットのシリアルナンバー、および複製の時刻などを表す。この情報は、複製者による検出や改変を防ぐために暗号化され、スクランブルされ、好ましくは、多数のソースの識別能を高め、ノイズがあっても復調を可能にするために展開される。
【0199】
ここでは本発明のベストモードが述べられたが、本発明は異なるようにも実践され得る。例えば、本発明は事前に記録された媒体の保護の環境について説明されたが、本発明は同様にインターネットや他のコミュニケーション媒体から得られるデータに対しても適用できる。他の変形としては、本発明は、述べられたようなムービーの複製のソースを特定するだけでなく、ディスクや他のタイプの媒体、またはネットワークから複製されたソフトウェアにも適用できる。さらに、開示は保護されたデータの複製者の追跡の例を用いてなされたが、本発明は複製を防ぐためのメッセージデータを用いるためにも適用できる。例えば、本発明は、保護された素材の判読可能な複製がなされ、または有用なプレイバックが行われるのを防ぐためにランニングマークメッセージが適用されるウォーターマークコピー防止のコンテキストに適用され得る。さらに、ランニングマークメッセージは、望まれるなら、機関によって発行されて、顧客にディスクまたは他の形式のメディアまたはネットワーク空のデータの正当な複製を認可する認可コードと比較され得る。この認可は、例えばDVDセクタをプログラムしたりまたは、顧客がDVDを1回限りまたは複数回再生し、または所定の数の複製を作製するのを可能にするための他の保護の実現をなすために適用され得る。セクタは、別の方法として、顧客がDVDを種々の目的に用いたり、無制限の使用を可能にしたりするのを防ぐためにプログラムされ得る。
【図面の簡単な説明】
【図1】 本発明によるMPEGランニングマーク位置の作成を示す高レベル機能ブロック図である。
【図2】 コピーのソースメッセージを行う3つのメッセージホールのある画像を示す。
【図3】 ビデオストリームで実施したメッセージホールを示す線図である。
【図4】 (a)および(b)は、本発明によるランニングマークシステム符号器及び復号器を示すブロック線図である。
【図5】 データ記号基準を使用したメッセージビットの記号化を示す線図である。
【図6】 (a)および(b)は、鎖状誤差訂正符号化及び複合化の線図である。
【図7】 本発明の実施例で実行する包旋状誤差訂正コーダを示す。
【図8】 本発明の実施例で実行するCDMA符号化処理を示す線図である。
【図9】 (a)−(e)は、ビデオストリームで実施したコピーのソースメッセージのセキュリティを向上させるためのマルチプル可変長配行を示す。
【図10】 (a)−(d)は、本発明によるビット符号化の変形例を示す
【図11】 本発明に一形態でのDCTキャリア係数へのノイズ組成を加えることによる元の信号波形の広がりを示す。
【図12】 本発明におけるRMカメラ生成のためのDCTの試みを示す擬似コードである。
【図13】 DCTの試みを使用した輝度ブロックのためのピクセルドメインにおけるノイズパターンを示す。
【図14】 (a)−(d)は、ランニングマークデータストリームのレイアウトと構成の線図である。
【図15】 本発明によるDVD信号ストリームで行われるビット抽出を示す線図である。
【図16A】 本発明によるランニングマーク生成の動作を示すアルゴリズムである。
【図16B】 本発明によるランニングマーク生成の動作を示すアルゴリズムである。
【図17】 本発明の一形態によるDivxマーク挿入前、挿入後のビデオグループのレイアウトを示す。
【図18】 本発明の一形態によるDivxマーク挿入前、挿入後のビデオグループのレイアウトを示す。
【図19】 gMH行を定義するアルゴリズムである。
【図20】 本発明に一形態によるマクロブロックの分類のための擬似コードである。
【図21】 分類機能によって要求される初期化()のための擬似コードである。
【図22】 マクロブロック分類の他の実施例のための擬似コードである。
【図23】 処理する典型的なフレーム区分の線図である。
【図24】 再分配手順の擬似コードである。
【図25】 再分配機能によって要求される初期化()のための擬似コードである。
【図26】 メッセージホールの予備ビットの補間するための流れ行におけるマクロブロックのためのMquantの増加数値を示す。
【図27】 本発明によるMPEG再符号化の第一形態を示すアルゴリズムである。
【図28】 第2形態を示すアルゴリズムである。
【図29】 k回(k=(d+2))繰り返すためのjの位置決めのアルゴリズムである。
【図30】 MPEG再符号化の第3形態を示すアルゴリズムである。
【図31】 本発明によって行われる機能をまとめた高レベル線図である。
【図32】 GenRMプログラムを示すアルゴリズムである。
【図33】 見る角度を変えたビデオ表示を示す。
【図34】 複数のセグメントを示す。
Claims (12)
- 映像信号を含む圧縮されたデジタル信号ストリームを、当該デジタル信号ストリームを格納する第1の媒体からの再生の間、受信するステップと、
前記デジタル信号ストリームに対する処理動作のソースの身元に関する、メッセージを取得するステップと、
前記デジタル信号ストリームを、前記メッセージを含むように修正するステップとを備えており、
修正された前記デジタル信号ストリームは、記録され、
前記第1の媒体は、ユーザ再生ユニットに近接して読み出し可能なディスク、ネットワークにおいて前記デジタル信号ストリームを前記ユーザ再生ユニットに送るサーバ、転送のために前記デジタル信号ストリームの部分を蓄積するバッファ、のうち少なくとも1つを含み、
前記処理動作は、前記デジタル信号ストリームの再生、記録、コピー、修正のうちの1つ以上を含み、
前記デジタル信号ストリームに含まれた前記メッセージは、前記処理動作のソースの身元に関する追跡を可能にする
ことを特徴とする方法。 - 前記修正ステップは、前記デジタル信号ストリームに係る画像の特徴を修正するステップを含む
ことを特徴とする請求項1記載の方法。 - 前記画像特徴修正ステップは、
修正用に、ビデオフレームの少なくとも1つの領域を選択するステップと、
選択したビデオフレーム領域に対応する前記デジタル信号ストリームに、変更を加えるステップとを備えている
ことを特徴とする請求項2記載の方法。 - 前記変更は、前記受信ステップで受信された複数のフレームにわたって、加えられる
ことを特徴とする請求項3記載の方法。 - 映像信号を含む圧縮されたデジタル信号ストリームを、当該デジタル信号ストリームを格納する第1の媒体からの再生の間、受信する受信部と、
前記受信部とともに機能し、前記デジタル信号ストリームに係るメタデータを取得する審査部と、
前記デジタル信号ストリームに対する処理動作のソースの身元に関する、メッセージを取得する取得部と、
前記デジタル信号ストリームを、当該デジタル信号ストリームに係る前記メタデータを用いて、前記メッセージを含むように修正する修正部とを備えており、
修正された前記デジタル信号ストリームは、記録され、
前記第1の媒体は、ユーザ再生ユニットに近接して読み出し可能なディスク、ネットワークにおいて前記デジタル信号ストリームを前記ユーザ再生ユニットに送るサーバ、転送のために前記デジタル信号ストリームの部分を蓄積するバッファ、のうち少なくとも1つを含み、
前記処理動作は、前記デジタル信号ストリームの再生、記録、コピー、修正のうちの1つ以上を含み、
前記デジタル信号ストリームに含まれた前記メッセージは、前記処理動作のソースの身元に関する追跡を可能にする
ことを特徴とするシステム。 - 前記修正部は、前記デジタル信号ストリームに係る画像の特徴を修正するものである
ことを特徴とする請求項5記載のシステム。 - 前記修正部は、画像特徴の修正において、
修正用に、ビデオフレームの少なくとも1つの領域を選択し、
選択したビデオフレーム領域に対応する前記デジタル信号ストリームに、変更を加えるものである
ことを特徴とする請求項6記載のシステム。 - 前記変更は、前記受信部で受信された複数のフレームにわたって、加えられる
ことを特徴とする請求項7記載のシステム。 - 映像信号を含む圧縮されたデジタル信号ストリームを、当該デジタル信号ストリームを格納する第1の媒体からの再生の間、受信する手段と、
前記デジタル信号ストリームに対する処理動作のソースの身元に関する、メッセージを取得する手段と、
前記デジタル信号ストリームを、前記メッセージを含むように修正する手段とを備えており、
修正された前記デジタル信号ストリームは、記録され、
前記第1の媒体は、ユーザ再生ユニットに近接して読み出し可能なディスク、ネットワークにおいて前記デジタル信号ストリームを前記ユーザ再生ユニットに送るサーバ、転送のために前記デジタル信号ストリームの部分を蓄積するバッファ、のうち少なくとも1つを含み、
前記処理動作は、前記デジタル信号ストリームの再生、記録、コピー、修正のうちの1つ以上を含み、
前記デジタル信号ストリームに含まれた前記メッセージは、前記処理動作のソースの身元に関する追跡を可能にする
ことを特徴とするシステム。 - 前記修正手段は、前記デジタル信号ストリームに係る画像の特徴を修正する機能を有する
ことを特徴とする請求項9記載のシステム。 - 前記修正手段は、画像特徴修正のために、
修正用に、ビデオフレームの少なくとも1つの領域を選択する手段と、
選択したビデオフレーム領域に対応する前記デジタル信号ストリームに、変更を加える手段とを備えている
ことを特徴とする請求項10記載のシステム。 - 前記変更は、前記受信手段で受信された複数のフレームにわたって、加えられる
ことを特徴とする請求項11記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/092,898 US6285774B1 (en) | 1998-06-08 | 1998-06-08 | System and methodology for tracing to a source of unauthorized copying of prerecorded proprietary material, such as movies |
US09/092,898 | 1998-06-08 | ||
PCT/US1999/011797 WO1999065241A1 (en) | 1998-06-08 | 1999-06-07 | System and methodology for tracing to a source of unauthorized copying of prerecorded proprietary material, such as movies |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002518899A JP2002518899A (ja) | 2002-06-25 |
JP4397123B2 true JP4397123B2 (ja) | 2010-01-13 |
Family
ID=22235701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000554137A Expired - Lifetime JP4397123B2 (ja) | 1998-06-08 | 1999-06-07 | 動画像等の前もって記録された所有権主張材料の非認可コピーの出所を追跡する装置及び方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6285774B1 (ja) |
EP (1) | EP1086585A1 (ja) |
JP (1) | JP4397123B2 (ja) |
AU (1) | AU4317999A (ja) |
WO (1) | WO1999065241A1 (ja) |
Families Citing this family (193)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8505108B2 (en) | 1993-11-18 | 2013-08-06 | Digimarc Corporation | Authentication using a digital watermark |
US6614914B1 (en) | 1995-05-08 | 2003-09-02 | Digimarc Corporation | Watermark embedder and reader |
US5748763A (en) | 1993-11-18 | 1998-05-05 | Digimarc Corporation | Image steganography system featuring perceptually adaptive and globally scalable signal embedding |
US6882738B2 (en) * | 1994-03-17 | 2005-04-19 | Digimarc Corporation | Methods and tangible objects employing textured machine readable data |
US7724919B2 (en) | 1994-10-21 | 2010-05-25 | Digimarc Corporation | Methods and systems for steganographic processing |
US7555139B2 (en) * | 1995-05-08 | 2009-06-30 | Digimarc Corporation | Secure documents with hidden signals, and related methods and systems |
US6590996B1 (en) | 2000-02-14 | 2003-07-08 | Digimarc Corporation | Color adaptive watermarking |
US6738495B2 (en) | 1995-05-08 | 2004-05-18 | Digimarc Corporation | Watermarking enhanced to withstand anticipated corruptions |
US7562392B1 (en) * | 1999-05-19 | 2009-07-14 | Digimarc Corporation | Methods of interacting with audio and ambient music |
US7006661B2 (en) * | 1995-07-27 | 2006-02-28 | Digimarc Corp | Digital watermarking systems and methods |
US20030056103A1 (en) | 2000-12-18 | 2003-03-20 | Levy Kenneth L. | Audio/video commerce application architectural framework |
US6307949B1 (en) * | 1996-05-07 | 2001-10-23 | Digimarc Corporation | Methods for optimizing watermark detection |
US20020159614A1 (en) * | 2000-12-18 | 2002-10-31 | Bradley Brett Alan | Message coding for digital watermark applications |
US7412072B2 (en) * | 1996-05-16 | 2008-08-12 | Digimarc Corporation | Variable message coding protocols for encoding auxiliary data in media signals |
US7366908B2 (en) | 1996-08-30 | 2008-04-29 | Digimarc Corporation | Digital watermarking with content dependent keys and autocorrelation properties for synchronization |
JPH1173725A (ja) * | 1997-08-29 | 1999-03-16 | Sony Corp | 情報信号記録再生システム、情報記録装置、情報信号再生装置および情報信号記録再生方法 |
US6330672B1 (en) * | 1997-12-03 | 2001-12-11 | At&T Corp. | Method and apparatus for watermarking digital bitstreams |
JP2001527326A (ja) * | 1997-12-19 | 2001-12-25 | ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー | データ通信 |
US7602940B2 (en) | 1998-04-16 | 2009-10-13 | Digimarc Corporation | Steganographic data hiding using a device clock |
US6912315B1 (en) * | 1998-05-28 | 2005-06-28 | Verance Corporation | Pre-processed information embedding system |
US7644282B2 (en) | 1998-05-28 | 2010-01-05 | Verance Corporation | Pre-processed information embedding system |
WO2000000348A1 (en) * | 1998-06-29 | 2000-01-06 | Recording Industry Association Of America | Security marking system and method for minimizing pirating of data on data media |
JP4083302B2 (ja) * | 1998-08-12 | 2008-04-30 | 株式会社東芝 | 動画像スクランブル/デスクランブル装置 |
US7457415B2 (en) * | 1998-08-20 | 2008-11-25 | Akikaze Technologies, Llc | Secure information distribution system utilizing information segment scrambling |
US7373513B2 (en) * | 1998-09-25 | 2008-05-13 | Digimarc Corporation | Transmarking of multimedia signals |
US7532740B2 (en) | 1998-09-25 | 2009-05-12 | Digimarc Corporation | Method and apparatus for embedding auxiliary information within original data |
US7197156B1 (en) | 1998-09-25 | 2007-03-27 | Digimarc Corporation | Method and apparatus for embedding auxiliary information within original data |
US8290202B2 (en) | 1998-11-03 | 2012-10-16 | Digimarc Corporation | Methods utilizing steganography |
US6442283B1 (en) * | 1999-01-11 | 2002-08-27 | Digimarc Corporation | Multimedia data embedding |
US6456725B1 (en) * | 1999-06-24 | 2002-09-24 | Signafy, Inc. | Method for increasing the functionality of a media player/recorder device or an application program |
US6510234B1 (en) * | 1999-05-12 | 2003-01-21 | Signafy, Inc. | Method for increasing the functionality of a media player/recorder device |
JP3706766B2 (ja) * | 1999-06-01 | 2005-10-19 | 株式会社日立製作所 | 電子透かし情報の埋め込み方法および抽出方法 |
EP1081958B1 (en) * | 1999-08-31 | 2006-02-01 | Lucent Technologies Inc. | Method and apparatus for macroblock DC and AC coefficient prediction for video coding |
US6768980B1 (en) * | 1999-09-03 | 2004-07-27 | Thomas W. Meyer | Method of and apparatus for high-bandwidth steganographic embedding of data in a series of digital signals or measurements such as taken from analog data streams or subsampled and/or transformed digital data |
US6748362B1 (en) * | 1999-09-03 | 2004-06-08 | Thomas W. Meyer | Process, system, and apparatus for embedding data in compressed audio, image video and other media files and the like |
US6766102B1 (en) * | 1999-09-20 | 2004-07-20 | Digimarc Corporation | Methods for reading watermarks in unknown data types, and DVD drives with such functionality |
US6937741B1 (en) * | 1999-11-29 | 2005-08-30 | Canon Kabushiki Kaisha | Image processing apparatus and method, and storage medium therefor |
US6915481B1 (en) | 2000-01-11 | 2005-07-05 | Cognicity, Inc. | Transactional watermarking |
US6986048B1 (en) * | 2000-01-24 | 2006-01-10 | Koninklijke Philips Electronics N.V. | Protecting content from illicit reproduction by proof of existence of a complete data set using security identifiers |
US8355525B2 (en) | 2000-02-14 | 2013-01-15 | Digimarc Corporation | Parallel processing of digital watermarking operations |
US6737957B1 (en) | 2000-02-16 | 2004-05-18 | Verance Corporation | Remote control signaling using audio watermarks |
EP1137250A1 (en) * | 2000-03-22 | 2001-09-26 | Hewlett-Packard Company, A Delaware Corporation | Improvements relating to digital watermarks |
US8819723B1 (en) * | 2000-04-27 | 2014-08-26 | The Directv Group, Inc. | System and method for brokering auxiliary data broadcasting services |
US7111168B2 (en) * | 2000-05-01 | 2006-09-19 | Digimarc Corporation | Digital watermarking systems |
US6633654B2 (en) * | 2000-06-19 | 2003-10-14 | Digimarc Corporation | Perceptual modeling of media signals based on local contrast and directional edges |
US20070143863A1 (en) * | 2000-08-16 | 2007-06-21 | Matsushita Electric Industrial Co., Ltd. | Copy-resistant read-only digital optical disc and adaptable player |
US6952485B1 (en) | 2000-09-11 | 2005-10-04 | Digimarc Corporation | Watermark encoding and decoding in imaging devices and imaging device interfaces |
US7165268B1 (en) * | 2000-10-17 | 2007-01-16 | Moore Keith E | Digital signatures for tangible medium delivery |
US8055899B2 (en) | 2000-12-18 | 2011-11-08 | Digimarc Corporation | Systems and methods using digital watermarking and identifier extraction to provide promotional opportunities |
US7266704B2 (en) | 2000-12-18 | 2007-09-04 | Digimarc Corporation | User-friendly rights management systems and methods |
US7505593B2 (en) * | 2002-12-09 | 2009-03-17 | International Business Machines Corporation | Method for tracing traitors and preventing piracy of digital content in a broadcast encryption system |
US9520993B2 (en) * | 2001-01-26 | 2016-12-13 | International Business Machines Corporation | Renewable traitor tracing |
JP2002271756A (ja) * | 2001-03-08 | 2002-09-20 | Sony Corp | データ処理装置、およびデータ処理方法、並びにプログラム |
US20030187798A1 (en) * | 2001-04-16 | 2003-10-02 | Mckinley Tyler J. | Digital watermarking methods, programs and apparatus |
US7158185B2 (en) * | 2001-05-01 | 2007-01-02 | Scientific-Atlanta, Inc. | Method and apparatus for tagging media presentations with subscriber identification information |
US7113613B2 (en) | 2001-06-08 | 2006-09-26 | Hitachi, Ltd. | Watermark information detection method |
US7124442B2 (en) * | 2001-07-25 | 2006-10-17 | 440 Pammel, Inc. | System and method for insertion and retrieval of microthreads in transmitted data |
GB2378602A (en) * | 2001-08-11 | 2003-02-12 | Central Research Lab Ltd | Applying two-part codes to stationary images |
US7392392B2 (en) | 2001-12-13 | 2008-06-24 | Digimarc Corporation | Forensic digital watermarking with variable orientation and protocols |
US7392394B2 (en) * | 2001-12-13 | 2008-06-24 | Digimarc Corporation | Digital watermarking with variable orientation and protocols |
US10277656B2 (en) * | 2002-01-29 | 2019-04-30 | FiveOpenBooks, LLC | Method and system for delivering media data |
US9350782B2 (en) * | 2002-01-29 | 2016-05-24 | Antonio Ortega | Method and system for delivering media data |
JP4107851B2 (ja) * | 2002-02-13 | 2008-06-25 | 三洋電機株式会社 | 電子透かし埋め込み方法およびその方法を利用可能な符号化装置と復号装置 |
US7167574B2 (en) * | 2002-03-14 | 2007-01-23 | Seiko Epson Corporation | Method and apparatus for content-based image copy detection |
US6782116B1 (en) * | 2002-11-04 | 2004-08-24 | Mediasec Technologies, Gmbh | Apparatus and methods for improving detection of watermarks in content that has undergone a lossy transformation |
MXPA04011277A (es) * | 2002-05-14 | 2006-02-22 | Mediasec Technologies Gmbh | Patrones de autenticacion visibles para documento impreso. |
US8601504B2 (en) * | 2002-06-20 | 2013-12-03 | Verance Corporation | Secure tracking system and method for video program content |
US20040125125A1 (en) * | 2002-06-29 | 2004-07-01 | Levy Kenneth L. | Embedded data windows in audio sequences and video frames |
US7979712B2 (en) * | 2002-07-01 | 2011-07-12 | International Business Machines Corporation | Network system, server and information terminal for list matching |
US7111171B2 (en) * | 2002-07-09 | 2006-09-19 | Kaleidescope, Inc. | Parallel distribution and fingerprinting of digital content |
WO2004006579A1 (en) * | 2002-07-09 | 2004-01-15 | Kaleidescape, Inc. | Content and key distribution system for digital content representing media streams |
EP2782337A3 (en) | 2002-10-15 | 2014-11-26 | Verance Corporation | Media monitoring, management and information system |
JP3960959B2 (ja) * | 2002-11-08 | 2007-08-15 | 三洋電機株式会社 | 電子透かし埋め込み装置と方法ならびに電子透かし抽出装置と方法 |
DE10260602B3 (de) * | 2002-12-23 | 2004-08-12 | Infineon Technologies Ag | Erfassungsverstärkervorrichtung für niedrige Spannungen |
FR2849563B1 (fr) * | 2002-12-31 | 2005-02-11 | Medialive | Marquage personnalise pour la protection de flux audiovisuels numeriques |
KR100584552B1 (ko) | 2003-01-14 | 2006-05-30 | 삼성전자주식회사 | 동영상 부호화 및 복호화 방법과 그 장치 |
FR2851110B1 (fr) | 2003-02-07 | 2005-04-01 | Medialive | Procede et dispositif pour la protection et la visualisation de flux video |
US7366361B2 (en) * | 2003-03-05 | 2008-04-29 | Sarnoff Corporation | Video registration based on local prediction errors |
KR101123234B1 (ko) * | 2003-04-25 | 2012-03-22 | 톰슨 라이센싱 | 불법복제된 매체를 추적하기 위한 마킹 기술 |
US7532804B2 (en) * | 2003-06-23 | 2009-05-12 | Seiko Epson Corporation | Method and apparatus for video copy detection |
GB2404296A (en) * | 2003-07-23 | 2005-01-26 | Sony Uk Ltd | Data content identification using watermarks as distinct codes |
JP4556395B2 (ja) * | 2003-08-28 | 2010-10-06 | ソニー株式会社 | コンテンツ識別方法及びコンテンツ識別システム |
GB2407227B (en) * | 2003-09-08 | 2006-11-08 | Deluxe Lab Inc | Program encoding and counterfeit tracking system and method |
US7623661B2 (en) * | 2003-09-08 | 2009-11-24 | Deluxe Laboratories Inc. | Motion picture encoding and counterfeit tracking system and method |
US7818257B2 (en) * | 2004-07-16 | 2010-10-19 | Deluxe Laboratories, Inc. | Program encoding and counterfeit tracking system and method |
US7369677B2 (en) | 2005-04-26 | 2008-05-06 | Verance Corporation | System reactions to the detection of embedded watermarks in a digital host content |
US9055239B2 (en) | 2003-10-08 | 2015-06-09 | Verance Corporation | Signal continuity assessment using embedded watermarks |
US7616776B2 (en) | 2005-04-26 | 2009-11-10 | Verance Corproation | Methods and apparatus for enhancing the robustness of watermark extraction from digital host content |
US20060239501A1 (en) | 2005-04-26 | 2006-10-26 | Verance Corporation | Security enhancements of digital watermarks for multi-media content |
US7406174B2 (en) * | 2003-10-21 | 2008-07-29 | Widevine Technologies, Inc. | System and method for n-dimensional encryption |
US20050089190A1 (en) * | 2003-10-23 | 2005-04-28 | Eyal Shavit | Recording content distribution information into an adjunct to content |
US20050125845A1 (en) * | 2003-12-08 | 2005-06-09 | Hardt Charles R. | Set-top software mechanism for insertion of a unique non-intrusive digital signature into video program content |
US20050147379A1 (en) * | 2003-12-24 | 2005-07-07 | Home Box Office, A Delaware Corporation | Personalization of mass-duplicated media |
US20050235357A1 (en) * | 2004-04-19 | 2005-10-20 | Securemedia International | Preventing cloning of high value software using embedded hardware and software functionality |
US7936898B2 (en) * | 2004-04-27 | 2011-05-03 | Thomson Licensing | Watermarking of motion picture prints |
US7471598B2 (en) | 2004-05-26 | 2008-12-30 | Nero Ag | Apparatus and method for copying data |
US7730313B2 (en) * | 2004-07-30 | 2010-06-01 | Dolby Laboratories Licensing Corporation | Tracing content usage |
US20060041510A1 (en) * | 2004-08-19 | 2006-02-23 | Securemedia International | Method for a secure system of content distribution for DVD applications |
US10477151B2 (en) | 2004-10-18 | 2019-11-12 | Inside Secure | Method and apparatus for supporting multiple broadcasters independently using a single conditional access system |
US8243925B2 (en) * | 2004-10-18 | 2012-08-14 | Syphermedia International, Inc. | Method and apparatus for supporting multiple broadcasters independently using a single conditional access system |
GB2421132A (en) * | 2004-12-09 | 2006-06-14 | Sony Uk Ltd | Registering a water marked image with an original image by calculating distortion vector estimates |
US7486827B2 (en) * | 2005-01-21 | 2009-02-03 | Seiko Epson Corporation | Efficient and robust algorithm for video sequence matching |
US7669769B2 (en) * | 2005-03-28 | 2010-03-02 | Konica Minolta Systems Laboratory, Inc. | Systems and methods for preserving and maintaining document integrity |
US20060222073A1 (en) * | 2005-03-29 | 2006-10-05 | Guillaume Mercier | Authoring running marks in compressed data |
US8094814B2 (en) * | 2005-04-05 | 2012-01-10 | Broadcom Corporation | Method and apparatus for using counter-mode encryption to protect image data in frame buffer of a video compression system |
US8020004B2 (en) * | 2005-07-01 | 2011-09-13 | Verance Corporation | Forensic marking using a common customization function |
US8781967B2 (en) * | 2005-07-07 | 2014-07-15 | Verance Corporation | Watermarking in an encrypted domain |
US20070011456A1 (en) * | 2005-07-08 | 2007-01-11 | International Business Machines Corporation | Method and system for identifying original copying source of audiovisual content |
EP2276027A3 (en) | 2005-07-19 | 2012-03-14 | Samsung Electronics Co., Ltd. | Method and apparatus for a scrambled part of content |
KR100762957B1 (ko) * | 2005-07-19 | 2007-10-04 | 삼성전자주식회사 | AV(Audio Visual) 스트림을 디스크램블하는방법 및 장치 |
US7974435B2 (en) * | 2005-09-16 | 2011-07-05 | Koplar Interactive Systems International Llc | Pattern-based encoding and detection |
US7630497B2 (en) * | 2005-09-19 | 2009-12-08 | International Business Machines Corporation | System and method for assigning sequence keys to a media player to enable hybrid traitor tracing |
US7711114B2 (en) * | 2005-09-19 | 2010-05-04 | International Business Machines Corporation | System and method for assigning sequence keys to a media player to enable flexible traitor tracing |
US8566857B2 (en) * | 2005-09-20 | 2013-10-22 | Forefront Assets Limited Liability Company | Method, system and program product for broadcast advertising and other broadcast content performance verification utilizing digital artifacts |
US8566858B2 (en) * | 2005-09-20 | 2013-10-22 | Forefront Assets Limited Liability Company | Method, system and program product for broadcast error protection of content elements utilizing digital artifacts |
US7668205B2 (en) * | 2005-09-20 | 2010-02-23 | Celo Data, Inc. | Method, system and program product for the insertion and retrieval of identifying artifacts in transmitted lossy and lossless data |
US8966517B2 (en) * | 2005-09-20 | 2015-02-24 | Forefront Assets Limited Liability Company | Method, system and program product for broadcast operations utilizing internet protocol and digital artifacts |
US7593543B1 (en) * | 2005-12-15 | 2009-09-22 | Nvidia Corporation | Apparatus, system, and method for tracing distribution of video content with video watermarks |
US20070291939A1 (en) * | 2006-02-15 | 2007-12-20 | Samsung Electronics Co., Ltd. | Method and system for transmission of uncompressed video over wireless channels |
US8683601B2 (en) * | 2006-04-14 | 2014-03-25 | Google Inc. | Audio/video identification watermarking |
US8601590B2 (en) * | 2006-04-27 | 2013-12-03 | Panasonic Corporation | Content distribution system |
US8972300B2 (en) * | 2006-04-27 | 2015-03-03 | Panasonic Corporation | Content distribution system |
US8711925B2 (en) | 2006-05-05 | 2014-04-29 | Microsoft Corporation | Flexible quantization |
US7970138B2 (en) * | 2006-05-26 | 2011-06-28 | Syphermedia International | Method and apparatus for supporting broadcast efficiency and security enhancements |
CN101467436B (zh) * | 2006-06-17 | 2011-07-20 | 汤姆逊许可证公司 | 用于分析和标记电影的系统和方法 |
TW200802079A (en) * | 2006-06-30 | 2008-01-01 | Primax Electronics Ltd | Random number generator and random number generating method |
US20080008321A1 (en) * | 2006-07-10 | 2008-01-10 | Syphermedia International, Inc. | Conditional access enhancements using an always-on satellite backchannel link |
US9203438B2 (en) * | 2006-07-12 | 2015-12-01 | Ternarylogic Llc | Error correction by symbol reconstruction in binary and multi-valued cyclic codes |
US20080080711A1 (en) * | 2006-09-28 | 2008-04-03 | Syphermedia International, Inc. | Dual conditional access module architecture and method and apparatus for controlling same |
US9277259B2 (en) | 2006-10-13 | 2016-03-01 | Syphermedia International, Inc. | Method and apparatus for providing secure internet protocol media services |
US8761393B2 (en) * | 2006-10-13 | 2014-06-24 | Syphermedia International, Inc. | Method and apparatus for providing secure internet protocol media services |
US8601555B2 (en) * | 2006-12-04 | 2013-12-03 | Samsung Electronics Co., Ltd. | System and method of providing domain management for content protection and security |
US20080133414A1 (en) * | 2006-12-04 | 2008-06-05 | Samsung Electronics Co., Ltd. | System and method for providing extended domain management when a primary device is unavailable |
WO2008073455A1 (en) * | 2006-12-11 | 2008-06-19 | Koplar Interactive Systems International, L.L.C. | Spatial data encoding and decoding |
US7602817B2 (en) * | 2007-02-22 | 2009-10-13 | Cisco Technology, Inc. | Low deviation field modulation for transfer of information |
WO2008118362A2 (en) * | 2007-03-23 | 2008-10-02 | Tapioca Mobile, Inc. | Delivery of video content |
US8319766B2 (en) * | 2007-06-15 | 2012-11-27 | Ricoh Co., Ltd. | Spatially masked update for electronic paper displays |
US8203547B2 (en) * | 2007-06-15 | 2012-06-19 | Ricoh Co. Ltd | Video playback on electronic paper displays |
US8416197B2 (en) * | 2007-06-15 | 2013-04-09 | Ricoh Co., Ltd | Pen tracking and low latency display updates on electronic paper displays |
US8279232B2 (en) | 2007-06-15 | 2012-10-02 | Ricoh Co., Ltd. | Full framebuffer for electronic paper displays |
US8913000B2 (en) * | 2007-06-15 | 2014-12-16 | Ricoh Co., Ltd. | Video playback on electronic paper displays |
JP5605810B2 (ja) | 2007-10-05 | 2014-10-15 | ディジマーク コーポレイション | マスタコピーの透かし特性を変化させることを含めてコンテンツの特性を変化させることによるコンテンツのシリアル化 |
FR2923126B1 (fr) | 2007-10-30 | 2009-12-11 | Medialive | Procede et systeme de distribution securisee de donnees audiovisuelles par marquage transactionnel |
US20090111584A1 (en) * | 2007-10-31 | 2009-04-30 | Koplar Interactive Systems International, L.L.C. | Method and system for encoded information processing |
US8104091B2 (en) * | 2008-03-07 | 2012-01-24 | Samsung Electronics Co., Ltd. | System and method for wireless communication network having proximity control based on authorization token |
US8897359B2 (en) | 2008-06-03 | 2014-11-25 | Microsoft Corporation | Adaptive quantization for enhancement layer video coding |
US8122501B2 (en) * | 2008-06-20 | 2012-02-21 | International Business Machines Corporation | Traitor detection for multilevel assignment |
US8108928B2 (en) * | 2008-06-20 | 2012-01-31 | International Business Machines Corporation | Adaptive traitor tracing |
US8259938B2 (en) | 2008-06-24 | 2012-09-04 | Verance Corporation | Efficient and secure forensic marking in compressed |
WO2010003152A1 (en) * | 2008-07-03 | 2010-01-07 | Verimatrix, Inc. | Efficient watermarking approaches of compressed media |
US8422684B2 (en) * | 2008-08-15 | 2013-04-16 | International Business Machines Corporation | Security classes in a media key block |
US20100064305A1 (en) * | 2008-09-10 | 2010-03-11 | Dolby Laboratories Licensing Corporation | System and method of detecting unauthorized content usage |
US20100064139A1 (en) * | 2008-09-10 | 2010-03-11 | Dolby Laboratories Licensing Corporation | System and method of extending marking information in content distribution |
US8995706B2 (en) * | 2008-09-26 | 2015-03-31 | Thomson Licensing | Method for protecting digital content against minority collusion attacks |
US10269086B2 (en) * | 2008-10-09 | 2019-04-23 | Nagra France Sas | Method and system for secure sharing of recorded copies of a multicast audiovisual program using scrambling and watermarking techniques |
US8571209B2 (en) | 2009-01-19 | 2013-10-29 | International Business Machines | Recording keys in a broadcast-encryption-based system |
EP2398240A1 (en) * | 2010-06-16 | 2011-12-21 | Canon Kabushiki Kaisha | A method and device for encoding and decoding a video signal |
US8838977B2 (en) | 2010-09-16 | 2014-09-16 | Verance Corporation | Watermark extraction and content screening in a networked environment |
EP2442563A1 (en) * | 2010-10-15 | 2012-04-18 | Thomson Licensing | Method for guaranteing watermark embedding by using bit stream corruption |
US8707448B2 (en) * | 2010-11-09 | 2014-04-22 | International Business Machines Corporation | Secure distribution of media data |
US8543623B2 (en) * | 2010-11-09 | 2013-09-24 | International Business Machines Corporation | Secure distribution of media data |
EP2458890B1 (en) | 2010-11-29 | 2019-01-23 | Nagravision S.A. | Method to trace video content processed by a decoder |
US8886945B2 (en) | 2010-12-17 | 2014-11-11 | Motorola Mobility Llc | System and method for conveying session information for use in forensic watermarking |
EP2490446A1 (en) * | 2011-02-15 | 2012-08-22 | Eldon Technology Limited | Copy protection |
JP2014512755A (ja) * | 2011-03-25 | 2014-05-22 | トムソン ライセンシング | データをビデオストリーム内に隠し、復元するための方法 |
US8913851B1 (en) | 2011-04-29 | 2014-12-16 | Google Inc. | Fingerprinting image using points of interest for robust image identification |
EP2544446A1 (en) * | 2011-07-05 | 2013-01-09 | DCS Copy Protection Limited | Copy protection system |
US8923548B2 (en) | 2011-11-03 | 2014-12-30 | Verance Corporation | Extraction of embedded watermarks from a host content using a plurality of tentative watermarks |
US8533481B2 (en) | 2011-11-03 | 2013-09-10 | Verance Corporation | Extraction of embedded watermarks from a host content based on extrapolation techniques |
US8615104B2 (en) | 2011-11-03 | 2013-12-24 | Verance Corporation | Watermark extraction based on tentative watermarks |
US8682026B2 (en) | 2011-11-03 | 2014-03-25 | Verance Corporation | Efficient extraction of embedded watermarks in the presence of host content distortions |
US8745403B2 (en) | 2011-11-23 | 2014-06-03 | Verance Corporation | Enhanced content management based on watermark extraction records |
US9323902B2 (en) | 2011-12-13 | 2016-04-26 | Verance Corporation | Conditional access using embedded watermarks |
US9547753B2 (en) | 2011-12-13 | 2017-01-17 | Verance Corporation | Coordinated watermarking |
US9154832B2 (en) | 2012-03-29 | 2015-10-06 | Dish Network L.L.C. | Testing frame color counting technique |
US9571606B2 (en) | 2012-08-31 | 2017-02-14 | Verance Corporation | Social media viewing system |
US9106964B2 (en) | 2012-09-13 | 2015-08-11 | Verance Corporation | Enhanced content distribution using advertisements |
US8726304B2 (en) | 2012-09-13 | 2014-05-13 | Verance Corporation | Time varying evaluation of multimedia content |
US8869222B2 (en) | 2012-09-13 | 2014-10-21 | Verance Corporation | Second screen content |
US8570379B1 (en) | 2012-10-04 | 2013-10-29 | Dish Network L.L.C. | Frame block comparison |
US9262794B2 (en) | 2013-03-14 | 2016-02-16 | Verance Corporation | Transactional video marking system |
EP2797334A1 (en) | 2013-04-26 | 2014-10-29 | Nagravision S.A. | Method and device to embed watermark in uncompressed video data |
EP2797335A1 (en) | 2013-04-26 | 2014-10-29 | Nagravision S.A. | Method to watermark a compressed content encrypted by at least one content key |
US9251549B2 (en) | 2013-07-23 | 2016-02-02 | Verance Corporation | Watermark extractor enhancements based on payload ranking |
US9208334B2 (en) | 2013-10-25 | 2015-12-08 | Verance Corporation | Content management using multiple abstraction layers |
PL2905970T3 (pl) | 2014-02-05 | 2017-02-28 | Nagravision S.A. | Sposób i urządzenie odbiorcze skonfigurowane do oznaczania treści medialnych |
CN106170988A (zh) | 2014-03-13 | 2016-11-30 | 凡瑞斯公司 | 使用嵌入式代码的交互式内容获取 |
BR102014007666B1 (pt) * | 2014-03-28 | 2023-01-10 | Samsung Eletrônica Da Amazônia Ltda | Método para autenticação de transações móveis usando criptografia de vídeo e método para criptografia de vídeo |
SG11201609457UA (en) | 2014-08-07 | 2016-12-29 | Sonic Ip Inc | Systems and methods for protecting elementary bitstreams incorporating independently encoded tiles |
US11611808B2 (en) | 2017-05-09 | 2023-03-21 | Verimatrix, Inc. | Systems and methods of preparing multiple video streams for assembly with digital watermarking |
US11550951B2 (en) * | 2018-09-18 | 2023-01-10 | Inspired Patents, Llc | Interoperable digital social recorder of multi-threaded smart routed media |
CN112488904B (zh) * | 2021-01-18 | 2023-09-29 | 鲁东大学 | 基于矩阵奇异值分解的四元数彩色数字图像盲水印方法 |
US11599605B1 (en) * | 2021-11-09 | 2023-03-07 | Hidden Pixels, LLC | System and method for dynamic data injection |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU547877B2 (en) | 1980-09-26 | 1985-11-07 | B. Lofberg | Method for processing an information signal and means for carrying out the method |
US4571642A (en) | 1981-08-24 | 1986-02-18 | Hofstein Steven R | Method of and apparatus for modifying a video signal to prevent the unauthorized recording and reproduction thereof |
FR2534433B1 (fr) | 1982-10-08 | 1986-04-11 | Thomson Csf | Procede de protection d'une sequence d'images video contre une utilisation frauduleuse et dispositifs pour la mise en oeuvre de ce procede |
CA1214268A (en) | 1982-11-11 | 1986-11-18 | Akihisa Osawa | Video cassette designed for video theater use |
DE3850530T2 (de) | 1987-06-30 | 1994-10-27 | Toshiba Kawasaki Kk | System und Verfahren zur Aufnahme/Wiedergabe mit Aufnahmebeschränkungsfunktion. |
ES2091747T3 (es) | 1987-07-29 | 1996-11-16 | Scitec Corp | Procedimiento de proteccion contra copia de una cinta de video pregrabada. |
US4916736A (en) | 1988-06-07 | 1990-04-10 | Macrovision Corporation | Method and apparatus for encrypting and decrypting time domain signals |
US4956806A (en) | 1988-07-12 | 1990-09-11 | International Business Machines Corporation | Method and apparatus for editing source files of differing data formats using an edit tracking file |
US5134496A (en) | 1989-05-26 | 1992-07-28 | Technicolor Videocassette Of Michigan Inc. | Bilateral anti-copying device for video systems |
US5561815A (en) | 1990-10-02 | 1996-10-01 | Hitachi, Ltd. | System and method for control of coexisting code and image data in memory |
JPH04245063A (ja) | 1991-01-31 | 1992-09-01 | Sony Corp | 複製防止用の信号合成回路並びに検出回路 |
JP3084796B2 (ja) | 1991-06-14 | 2000-09-04 | ソニー株式会社 | 映像信号処理装置 |
US5251041A (en) | 1991-06-21 | 1993-10-05 | Young Philip L | Method and apparatus for modifying a video signal to inhibit unauthorized videotape recording and subsequent reproduction thereof |
US5359725A (en) | 1991-10-15 | 1994-10-25 | Time Warner Interactive Group, Inc. | Method of creating CD-ROM image of files of different format with proper directories to be read by respective operating systems |
AU658014B2 (en) | 1991-11-19 | 1995-03-30 | Macrovision Corporation | Method and apparatus for scrambling and descrambling of video signals with edge fill |
US5294974A (en) * | 1992-07-24 | 1994-03-15 | Matsushita Electric Corporation Of America | High-definition video encoding system having color-sensitive quantization |
US5416915A (en) | 1992-12-11 | 1995-05-16 | International Business Machines Corporation | Method and system for minimizing seek affinity and enhancing write sensitivity in a DASD array |
US5659791A (en) | 1993-04-26 | 1997-08-19 | Microsoft Corporation | Encapsulation of extracted portions of documents into objects |
US5471252A (en) * | 1993-11-03 | 1995-11-28 | Matsushita Electric Industrial Corporation Of America | Method and apparatus for estimating motion vector fields by rejecting local outliers |
US5636292C1 (en) | 1995-05-08 | 2002-06-18 | Digimarc Corp | Steganography methods employing embedded calibration data |
EP0959621B1 (en) * | 1993-11-18 | 2001-02-28 | Digimarc Corporation | Video copy control with plural embedded signals |
US5537588A (en) | 1994-05-11 | 1996-07-16 | International Business Machines Corporation | Partitioned log-structured file system and methods for operating the same |
US5739864A (en) | 1994-08-24 | 1998-04-14 | Macrovision Corporation | Apparatus for inserting blanked formatted fingerprint data (source ID, time/date) in to a video signal |
US5530751A (en) | 1994-06-30 | 1996-06-25 | Hewlett-Packard Company | Embedded hidden identification codes in digital objects |
US5548759A (en) | 1994-07-05 | 1996-08-20 | Microsoft Corporation | System for storing executable code within a resource data section of an executable file |
US5574787A (en) | 1994-07-25 | 1996-11-12 | Ryan; John O. | Apparatus and method for comprehensive copy protection for video platforms and unprotected source material |
US5504892A (en) | 1994-09-08 | 1996-04-02 | Taligent, Inc. | Extensible object-oriented file system |
US5586327A (en) | 1994-09-27 | 1996-12-17 | International Business Machines Corporation | Extended initialization for personal data processing systems |
US5651065A (en) | 1995-03-09 | 1997-07-22 | General Instrument Corporation Of Delaware | Insertion of supplemental burst into video signals to thwart piracy and/or carry data |
WO1997013248A1 (en) | 1995-10-04 | 1997-04-10 | Philips Electronics N.V. | Marking a digitally encoded video and/or audio signal |
JP3982836B2 (ja) | 1996-07-16 | 2007-09-26 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 情報信号に埋め込まれた透かし情報の検出方法 |
US5809139A (en) * | 1996-09-13 | 1998-09-15 | Vivo Software, Inc. | Watermarking method and apparatus for compressed digital video |
US5960081A (en) * | 1997-06-05 | 1999-09-28 | Cray Research, Inc. | Embedding a digital signature in a video sequence |
-
1998
- 1998-06-08 US US09/092,898 patent/US6285774B1/en not_active Expired - Lifetime
-
1999
- 1999-04-07 AU AU43179/99A patent/AU4317999A/en not_active Abandoned
- 1999-06-07 WO PCT/US1999/011797 patent/WO1999065241A1/en active Application Filing
- 1999-06-07 JP JP2000554137A patent/JP4397123B2/ja not_active Expired - Lifetime
- 1999-06-07 EP EP99942642A patent/EP1086585A1/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
EP1086585A1 (en) | 2001-03-28 |
AU4317999A (en) | 1999-12-30 |
US6285774B1 (en) | 2001-09-04 |
WO1999065241A1 (en) | 1999-12-16 |
JP2002518899A (ja) | 2002-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4397123B2 (ja) | 動画像等の前もって記録された所有権主張材料の非認可コピーの出所を追跡する装置及び方法 | |
US6996717B2 (en) | Semi-fragile watermarking system for MPEG video authentication | |
KR100441474B1 (ko) | 불법복제를방지하기위한데이터기록장치및방법 | |
US7409556B2 (en) | Hybrid digital watermarking for video authentication | |
Langelaar et al. | Real-time labeling of MPEG-2 compressed video | |
US6671376B1 (en) | Video scramble/descramble apparatus | |
JP3768705B2 (ja) | 電子透かし埋め込み装置、出力制御装置及びコンピュータ読み取り可能な記憶媒体 | |
JP3137022B2 (ja) | 動画像エンコード装置 | |
KR101168500B1 (ko) | 멀티미디어 컨텐츠에 워터마크 정보를 동적으로 임베딩하는 방법, 장치 및 시스템 | |
US6381367B1 (en) | Method and apparatus for compression compatible video fingerprinting | |
JP4263516B2 (ja) | 符号化装置、符号化方法、復号装置、復号方法、コンピュータソフトウェア及び記憶媒体 | |
US20020188570A1 (en) | Partial protection of content | |
JP2002523809A (ja) | スクランブルをかけた情報セグメントを利用した安全な情報分配システム | |
US20060107056A1 (en) | Techniques to manage digital media | |
US20070003102A1 (en) | Electronic watermark-containing moving picture transmission system, electronic watermark-containing moving picture transmission method, information processing device, communication control device, electronic watermark-containing moving picture processing program, and storage medium containing electronic watermark-containing | |
CN101389009A (zh) | 一种水印信息的嵌入、检测方法及装置 | |
US9124771B2 (en) | Valid replacement data in encoded video | |
US20090135905A1 (en) | Protecting commercials within encoded video content | |
Chang et al. | Blind robust video watermarking based on adaptive region selection and channel reference | |
JP2005341525A (ja) | ビデオウォーターマーキング方法及び装置と、ビデオウォーターマーキングを用いたビデオコンテンツの保護方法及び装置 | |
JP3762655B2 (ja) | 情報埋め込み装置、検出装置、データ処理方法、プログラム及び記憶媒体 | |
Linnartz et al. | MPEG PTY-marks: Cheap detection of embedded copyright data in DVD-video | |
JPH10289522A (ja) | ディジタルビデオ装置 | |
Su et al. | Partial frame content scrambling in H. 264/AVC by information hiding | |
CN1189018C (zh) | 磁带录制/再现装置、编码装置、磁带录制/再现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060602 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090303 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090603 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090610 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090630 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090707 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090730 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090806 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090828 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090929 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091020 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121030 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4397123 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121030 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131030 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131030 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131030 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |